@vc-shell/framework 2.6.3-rc.0-pr387.24dd1f8 → 2.7.0
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 +2 -2
- package/dist/chunks/{VcAiAgentPanel.vue_vue_type_script_setup_true_lang-DCA-Ffyd.js → VcAiAgentPanel.vue_vue_type_script_setup_true_lang-c2L9ZMv-.js} +355 -349
- package/dist/chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-c2L9ZMv-.js.map +1 -0
- package/dist/chunks/{VcScheduler.vue_vue_type_script_setup_true_lang-qXf9_bH2.js → VcScheduler.vue_vue_type_script_setup_true_lang-0d1Dle1T.js} +5810 -5806
- package/dist/chunks/VcScheduler.vue_vue_type_script_setup_true_lang-0d1Dle1T.js.map +1 -0
- package/dist/chunks/{VcScheduler.vue_vue_type_style_index_0_lang-Dr98EAcc.js → VcScheduler.vue_vue_type_style_index_0_lang-CSqtsFQm.js} +67 -67
- package/dist/chunks/VcScheduler.vue_vue_type_style_index_0_lang-CSqtsFQm.js.map +1 -0
- package/dist/chunks/{dashboard-feed-row.vue_vue_type_script_setup_true_lang-D4pPtjsM.js → dashboard-feed-row.vue_vue_type_script_setup_true_lang-DuuZ_8d4.js} +1 -1
- package/dist/chunks/{dashboard-feed-row.vue_vue_type_script_setup_true_lang-D4pPtjsM.js.map → dashboard-feed-row.vue_vue_type_script_setup_true_lang-DuuZ_8d4.js.map} +1 -1
- package/dist/chunks/{index-DSdo2M5t.js → index-DUQy_82B.js} +1 -1
- package/dist/chunks/{index-DSdo2M5t.js.map → index-DUQy_82B.js.map} +1 -1
- package/dist/core/blade-navigation/utils/urlSync.d.ts.map +1 -1
- package/dist/core/composables/index.d.ts +1 -0
- package/dist/core/composables/index.d.ts.map +1 -1
- package/dist/core/composables/useBladeForm/index.d.ts.map +1 -1
- package/dist/core/interceptors/index.d.ts.map +1 -1
- package/dist/core/utilities/authGuard.d.ts.map +1 -1
- package/dist/core/utilities/redirectAfterLogin.d.ts +12 -0
- package/dist/core/utilities/redirectAfterLogin.d.ts.map +1 -0
- package/dist/dashboard/index.js +1 -1
- package/dist/framework.js +1115 -1103
- package/dist/framework.js.map +1 -1
- package/dist/shell/auth/LoginPage/components/login/Login.vue.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui/components/molecules/vc-date-picker/vc-date-picker.vue.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-dropdown/vc-dropdown.vue.d.ts +2 -0
- package/dist/ui/components/molecules/vc-dropdown/vc-dropdown.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/toolbar/ToolbarDesktop.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-data-table/components/index.d.ts.map +1 -1
- package/dist/ui/composables/useAdaptiveItems.d.ts.map +1 -1
- package/dist/ui/index.js +2 -2
- package/package.json +4 -4
- package/dist/chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-DCA-Ffyd.js.map +0 -1
- package/dist/chunks/VcScheduler.vue_vue_type_script_setup_true_lang-qXf9_bH2.js.map +0 -1
- package/dist/chunks/VcScheduler.vue_vue_type_style_index_0_lang-Dr98EAcc.js.map +0 -1
- package/dist/ui/components/organisms/vc-data-table/components/TableResizeHandle.vue.d.ts +0 -18
- package/dist/ui/components/organisms/vc-data-table/components/TableResizeHandle.vue.d.ts.map +0 -1
package/dist/framework.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { b as
|
|
2
|
-
import { N as
|
|
3
|
-
import { B as
|
|
4
|
-
import { getCurrentScope as
|
|
5
|
-
import { aS as
|
|
6
|
-
import { bh as
|
|
7
|
-
import { _ as
|
|
8
|
-
import { c as k, d as
|
|
9
|
-
import { A as
|
|
10
|
-
import { H as
|
|
11
|
-
import { a as
|
|
12
|
-
import { u as
|
|
13
|
-
import { a as
|
|
14
|
-
import { A as
|
|
1
|
+
import { b as Va, c as Ua } from "./chunks/vendor-vueuse-core-BwXFv1rx.js";
|
|
2
|
+
import { N as ot, O as se, P as j, Q as x, l as $, R as Pe, S as Fa, T as Mt, p as rt, q as K, n as Ae, C as Ha, U as Wa, W as Ga, X as xa, V as fe, Y as $a, Z as Ka, $ as za, a0 as Ya, a1 as qa, a2 as Za, a3 as ja, a4 as Xa, a5 as Ja } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-CSqtsFQm.js";
|
|
3
|
+
import { B as au, a6 as nu, a as su, _ as ou, b as ru, c as iu, d as lu, e as uu, f as cu, g as du, h as Eu, i as fu, j as mu, k as gu, a7 as Su, a8 as Au, a9 as pu, aa as Tu, ab as hu, ac as Ou, ad as Lu, m as Ru, o as _u, r as Iu, s as vu, t as wu, u as Cu, v as Pu, w as bu, x as Nu, y as Du, z as yu, ae as Mu, af as Bu, ag as ku, ah as Vu, ai as Uu, aj as Fu, ak as Hu, al as Wu, am as Gu, an as xu, ao as $u, ap as Ku, aq as zu, ar as Yu, as as qu, at as Zu, au as ju, av as Xu, A as Ju, aw as Qu, ax as ec, ay as tc, D as ac, az as nc, aA as sc, aB as oc, aC as rc, E as ic, aD as lc, aE as uc, aF as cc, aG as dc, aH as Ec, aI as fc, aJ as mc, aK as gc, aL as Sc, F as Ac, G as pc, H as Tc, L as hc, aM as Oc, I as Lc, aN as Rc, J as _c, aO as Ic, aP as vc, aQ as wc } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-CSqtsFQm.js";
|
|
4
|
+
import { getCurrentScope as it, onScopeDispose as lt, computed as v, inject as Q, watch as ae, defineComponent as W, openBlock as P, createBlock as D, createSlots as Oe, withCtx as T, renderSlot as q, createElementVNode as U, normalizeClass as Qa, createElementBlock as H, Fragment as ne, createVNode as R, unref as i, createTextVNode as B, toDisplayString as y, shallowReactive as en, ref as b, readonly as ke, onMounted as Le, onBeforeMount as tn, onBeforeUnmount as an, shallowRef as nn, onUnmounted as sn, provide as Bt, toValue as kt, isRef as Vt, normalizeStyle as Ut, createCommentVNode as Y, withDirectives as on, withModifiers as Ge, reactive as ie, createApp as rn, nextTick as be, renderList as He, withKeys as ut, mergeProps as re, getCurrentInstance as ln, warn as un, h as ee, toRaw as cn } from "vue";
|
|
5
|
+
import { aS as me, aT as dn, aU as En, aV as Ft, 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 We, b5 as Te, b6 as F, b7 as he, b8 as On, b9 as Ln, ba as gt, bb as Ht, F as Wt, M as Rn, Y as ge, W as Ke, am as _n, N as In, ai as vn, B as _e, J as wn, a3 as Gt, E as Cn, bc as Pn, bd as bn, be as Nn, an as St, bf as Dn, bg as yn } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-0d1Dle1T.js";
|
|
6
|
+
import { bh as Pc, bi as bc, C as Nc, bj as Dc, bk as yc, bl as Mc, _ as Bc, bm as kc, bn as Vc, S as Uc, bo as Fc, bp as Hc, a as Wc, b as Gc, c as xc, d as $c, e as Kc, f as zc, T as Yc, g as qc, h as Zc, i as jc, j as Xc, k as Jc, l as Qc, m as ed, bq as td, br as ad, V as nd, n as sd, o as od, p as rd, q as id, r as ld, s as ud, t as cd, u as dd, v as Ed, w as fd, x as md, y as gd, z as Sd, A as Ad, D as pd, bs as Td, bs as hd, bt as Od, G as Ld, H as Rd, I as _d, K as Id, L as vd, O as wd, P as Cd, Q as Pd, R as bd, U as Nd, X as Dd, Z as yd, $ as Md, a0 as Bd, a1 as kd, a2 as Vd, a4 as Ud, a5 as Fd, a6 as Hd, a7 as Wd, a8 as Gd, a9 as xd, aa as $d, ac as Kd, ad as zd, ae as Yd, af as qd, ag as Zd, ah as jd, aj as Xd, ak as Jd, al as Qd, ao as eE, ap as tE, bu as aE, aq as nE, bv as sE, bw as oE, bx as rE, by as iE, bz as lE, bA as uE, bB as cE, bC as dE, bD as EE, bE as fE, bF as mE, bG as gE, ar as SE, as as AE, at as pE, bH as TE, au as hE, av as OE, bI as LE, aw as RE, ax as _E, ay as IE, az as vE, bJ as wE, aA as CE, aB as PE, aC as bE, bK as NE, aD as DE, aE as yE, aF as ME, aG as BE, bL as kE, aH as VE, aI as UE, aJ as FE, aK as HE, aL as WE, aM as GE, aN as xE, aO as $E, aP as KE, aQ as zE, aR as YE, aq as qE } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-0d1Dle1T.js";
|
|
7
|
+
import { _ as Mn } from "./chunks/vendor-cypress-signalr-mock-itnm2wpA.js";
|
|
8
|
+
import { c as k, d as Bn, e as kn, i as Ne, S as Vn, W as xt, B as $t, j as Un, k as Kt, l as Fn, n as Hn, o as Wn, p as Gn, q as zt, r as xn, _ as $n, L as Kn, I as zn, s as Yn, t as qn, v as Zn, w as jn, x as Xn, T as Jn, y as Qn, z as es, C as ts, D as as } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-TiaFg1wQ.js";
|
|
9
|
+
import { A as jE, F as XE, G as JE, H as QE, J as ef, K as tf, O as af, P as nf, Q as sf, f as of, g as rf, R as lf, U as uf, V as cf, X as df, Y as Ef, Z as ff, $ as mf, a0 as gf, a1 as Sf, a2 as Af, a3 as pf, E as Tf, a4 as hf, a5 as Of, a6 as Lf, a7 as Rf, a8 as _f, a9 as If, aa as vf, ab as wf, M as Cf, N as Pf, ac as bf, ad as Nf, ae as Df, af as yf, ag as Mf, ah as Bf, ai as kf, a as Vf, aj as Uf, ak as Ff, al as Hf, am as Wf, an as Gf, ao as xf, m as $f, u as Kf, b as zf, ap as Yf, h as qf } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-TiaFg1wQ.js";
|
|
10
|
+
import { H as ns, L as ss } from "./chunks/vendor-microsoft-signalr-Bgpbb4fW.js";
|
|
11
|
+
import { a as os } from "./chunks/index-DUQy_82B.js";
|
|
12
|
+
import { u as jf } from "./chunks/index-DUQy_82B.js";
|
|
13
|
+
import { a as rs, s as is, b as ls, d as us, e as cs, f as ct, g as ds, h as Es, i as fs, j as ms } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-c2L9ZMv-.js";
|
|
14
|
+
import { A as Jf, D as Qf, E as em, H as tm, _ as am, c as nm, k as sm, l as om, m as rm, n as im, o as lm, p as um, u as cm, q as dm, r as Em, t as fm } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-c2L9ZMv-.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";
|
|
@@ -91,43 +91,43 @@ import "./assets/72de3a63bc0b70dd.svg";
|
|
|
91
91
|
import "./chunks/vendor-iso-639-1-BEjYyfKo.js";
|
|
92
92
|
import "./chunks/vendor-truncate-html-ChA1T5zy.js";
|
|
93
93
|
import "./chunks/vendor-sortablejs-Bsvu-FKn.js";
|
|
94
|
-
import { v as
|
|
94
|
+
import { v as gs } from "./chunks/vendor-vue3-touch-events-DqysuuWh.js";
|
|
95
95
|
import "./chunks/vendor-gridstack-Beau2jQ7.js";
|
|
96
|
-
import { _ as
|
|
97
|
-
import { _ as
|
|
98
|
-
import { A as
|
|
99
|
-
import { o as
|
|
100
|
-
import { T as
|
|
101
|
-
import { _ as
|
|
102
|
-
import { E as
|
|
103
|
-
function
|
|
96
|
+
import { _ as gm, a as Sm, b as Am, c as pm, d as Tm, L as hm, e as Om, f as Lm, l as Rm, m as _m, s as Im, t as vm, u as wm } from "./chunks/dashboard-feed-row.vue_vue_type_script_setup_true_lang-DuuZ_8d4.js";
|
|
97
|
+
import { _ as Pm, a as bm, b as Nm, c as Dm, d as ym, e as Mm } from "./chunks/DashboardDonutChart.vue_vue_type_script_setup_true_lang-hTcM33bM.js";
|
|
98
|
+
import { A as Ss, u as As } from "./chunks/vendor-vue3-application-insights-CAgbt8pk.js";
|
|
99
|
+
import { o as ps, c as J, d as Ts, i as hs } from "./chunks/vendor-lodash-es-D2n90GJy.js";
|
|
100
|
+
import { T as Os, x as Ls, b as Rs, S as _s, $ as Is } from "./chunks/vendor-web-vitals-ByFgAM-8.js";
|
|
101
|
+
import { _ as vs } from "./chunks/index-BuTo_Lx8.js";
|
|
102
|
+
import { E as km, d as Vm, u as Um } from "./chunks/index-BuTo_Lx8.js";
|
|
103
|
+
function Ll(e) {
|
|
104
104
|
return e.replace(/[\w]([A-Z])/g, function(t) {
|
|
105
105
|
return t[0] + "_" + t[1];
|
|
106
106
|
}).toLowerCase();
|
|
107
107
|
}
|
|
108
|
-
const
|
|
109
|
-
function
|
|
110
|
-
const t =
|
|
108
|
+
const ws = (e) => e.replace(/-./g, (t) => t[1].toUpperCase());
|
|
109
|
+
function Rl(e) {
|
|
110
|
+
const t = ws(e);
|
|
111
111
|
return t[0].toUpperCase() + t.substring(1);
|
|
112
112
|
}
|
|
113
|
-
function
|
|
113
|
+
function _l(e) {
|
|
114
114
|
return e.replace(/\W+(.)/g, function(t, a) {
|
|
115
115
|
return a.toUpperCase();
|
|
116
116
|
});
|
|
117
117
|
}
|
|
118
|
-
const
|
|
119
|
-
function
|
|
118
|
+
const Cs = /* @__PURE__ */ new Set(["png", "jpg", "jpeg", "svg", "gif"]);
|
|
119
|
+
function Et(e) {
|
|
120
120
|
return e.split(".").pop()?.toLowerCase();
|
|
121
121
|
}
|
|
122
|
-
function
|
|
123
|
-
return e ?
|
|
122
|
+
function Yt(e) {
|
|
123
|
+
return e ? Cs.has(Et(e) ?? "") : !1;
|
|
124
124
|
}
|
|
125
|
-
function
|
|
125
|
+
function qt(e, t = 2) {
|
|
126
126
|
if (!e) return "0 Bytes";
|
|
127
127
|
const a = 1024, n = t < 0 ? 0 : t, s = ["Bytes", "KB", "MB", "GB"], o = Math.floor(Math.log(e) / Math.log(a));
|
|
128
128
|
return `${parseFloat((e / Math.pow(a, o)).toFixed(n))} ${s[o]}`;
|
|
129
129
|
}
|
|
130
|
-
const
|
|
130
|
+
const Ps = {
|
|
131
131
|
pdf: "#e74c3c",
|
|
132
132
|
doc: "#2b579a",
|
|
133
133
|
docx: "#2b579a",
|
|
@@ -142,27 +142,27 @@ const ws = {
|
|
|
142
142
|
mp4: "#8e44ad",
|
|
143
143
|
avi: "#8e44ad"
|
|
144
144
|
};
|
|
145
|
-
function
|
|
145
|
+
function Zt(e) {
|
|
146
146
|
if (!e) return "var(--neutrals-400)";
|
|
147
|
-
const t =
|
|
148
|
-
return
|
|
147
|
+
const t = Et(e) ?? "";
|
|
148
|
+
return Ps[t] ?? "var(--neutrals-400)";
|
|
149
149
|
}
|
|
150
|
-
function
|
|
151
|
-
return e ? (
|
|
150
|
+
function jt(e) {
|
|
151
|
+
return e ? (Et(e) ?? "FILE").toUpperCase() : "FILE";
|
|
152
152
|
}
|
|
153
|
-
const
|
|
153
|
+
const bs = {
|
|
154
154
|
install(e) {
|
|
155
|
-
const { hasAccess: t } =
|
|
155
|
+
const { hasAccess: t } = ot();
|
|
156
156
|
e.config.globalProperties.$hasAccess = t;
|
|
157
157
|
}
|
|
158
158
|
};
|
|
159
|
-
function
|
|
160
|
-
const t =
|
|
159
|
+
function Il(e) {
|
|
160
|
+
const t = me(), a = t.subscribe({
|
|
161
161
|
types: e.types,
|
|
162
162
|
filter: e.filter,
|
|
163
163
|
handler: e.onMessage
|
|
164
164
|
});
|
|
165
|
-
|
|
165
|
+
it() && lt(a);
|
|
166
166
|
const n = v(
|
|
167
167
|
() => t.realtime.value.filter((r) => !(!r.notifyType || !e.types.includes(r.notifyType) || !r.isNew || e.filter && !e.filter(r)))
|
|
168
168
|
), s = v(() => n.value.length);
|
|
@@ -175,25 +175,25 @@ function Ll(e) {
|
|
|
175
175
|
markAsRead: o
|
|
176
176
|
};
|
|
177
177
|
}
|
|
178
|
-
function
|
|
179
|
-
const e = Q(
|
|
178
|
+
function vl() {
|
|
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
|
|
185
|
-
const e =
|
|
184
|
+
function wl() {
|
|
185
|
+
const e = me();
|
|
186
186
|
return {
|
|
187
187
|
setBroadcastFilter: e.setBroadcastFilter,
|
|
188
188
|
clearBroadcastFilter: e.clearBroadcastFilter
|
|
189
189
|
};
|
|
190
190
|
}
|
|
191
|
-
const
|
|
191
|
+
const Xt = Symbol("NotificationContainerState"), ze = k("signalR"), Ns = {
|
|
192
192
|
install(e) {
|
|
193
|
-
const t =
|
|
193
|
+
const t = me(), { isAuthenticated: a } = se();
|
|
194
194
|
let n = !1;
|
|
195
|
-
const s =
|
|
196
|
-
let l = 0,
|
|
195
|
+
const s = Mn("pushNotificationHub", { enableForVitest: !0 }) ?? new ns().withUrl("/pushNotificationHub").withAutomaticReconnect().configureLogging(ss.Information).build(), o = 5e3, r = 6e4;
|
|
196
|
+
let l = 0, c;
|
|
197
197
|
function u(E) {
|
|
198
198
|
return E instanceof Error && /\b401\b/.test(E.message);
|
|
199
199
|
}
|
|
@@ -205,12 +205,12 @@ const jt = Symbol("NotificationContainerState"), ze = k("signalR"), Ps = {
|
|
|
205
205
|
ze.warn("Not authenticated — stopping reconnect attempts until sign-in.");
|
|
206
206
|
return;
|
|
207
207
|
}
|
|
208
|
-
const
|
|
209
|
-
l++,
|
|
208
|
+
const d = Math.min(o * 2 ** l, r);
|
|
209
|
+
l++, c = setTimeout(() => f(), d);
|
|
210
210
|
});
|
|
211
211
|
};
|
|
212
212
|
async function m() {
|
|
213
|
-
clearTimeout(
|
|
213
|
+
clearTimeout(c), c = void 0, await s.stop();
|
|
214
214
|
}
|
|
215
215
|
s.onclose(() => {
|
|
216
216
|
n && f();
|
|
@@ -227,25 +227,25 @@ const jt = Symbol("NotificationContainerState"), ze = k("signalR"), Ps = {
|
|
|
227
227
|
);
|
|
228
228
|
}
|
|
229
229
|
};
|
|
230
|
-
function
|
|
231
|
-
const t = Q(
|
|
230
|
+
function Cl(e) {
|
|
231
|
+
const t = Q(En, void 0);
|
|
232
232
|
return {
|
|
233
233
|
read: () => t ? t.read(e) : {}
|
|
234
234
|
};
|
|
235
235
|
}
|
|
236
|
-
const
|
|
237
|
-
function
|
|
236
|
+
const Ds = k("modularity");
|
|
237
|
+
function ft(e) {
|
|
238
238
|
const { blades: t, locales: a, notificationTemplates: n, notifications: s } = e;
|
|
239
239
|
return {
|
|
240
240
|
install(o) {
|
|
241
|
-
const r =
|
|
241
|
+
const r = me();
|
|
242
242
|
if (t && Object.keys(t).length > 0) {
|
|
243
|
-
const l = o.runWithContext(() => Q(
|
|
243
|
+
const l = o.runWithContext(() => Q(Ft));
|
|
244
244
|
if (!l?._registerBladeFn)
|
|
245
|
-
|
|
245
|
+
Ds.error("defineAppModule: BladeRegistry not found. Blade registration will be skipped.");
|
|
246
246
|
else
|
|
247
|
-
for (const [
|
|
248
|
-
const f = u.name ||
|
|
247
|
+
for (const [c, u] of Object.entries(t)) {
|
|
248
|
+
const f = u.name || c;
|
|
249
249
|
o.runWithContext(() => {
|
|
250
250
|
l._registerBladeFn(f, {
|
|
251
251
|
component: u,
|
|
@@ -258,12 +258,12 @@ function Et(e) {
|
|
|
258
258
|
}
|
|
259
259
|
}
|
|
260
260
|
if (s)
|
|
261
|
-
for (const [l,
|
|
262
|
-
r.registerType(l,
|
|
261
|
+
for (const [l, c] of Object.entries(s))
|
|
262
|
+
r.registerType(l, c);
|
|
263
263
|
if (!s && n)
|
|
264
264
|
for (const l of Object.values(n)) {
|
|
265
|
-
const
|
|
266
|
-
|
|
265
|
+
const c = l.notifyType;
|
|
266
|
+
c && r.registerType(c, {
|
|
267
267
|
template: l,
|
|
268
268
|
toast: { mode: "auto" }
|
|
269
269
|
});
|
|
@@ -271,9 +271,9 @@ function Et(e) {
|
|
|
271
271
|
if (t) {
|
|
272
272
|
for (const l of Object.values(t))
|
|
273
273
|
if (l.notifyType) {
|
|
274
|
-
const
|
|
275
|
-
|
|
276
|
-
types:
|
|
274
|
+
const c = Array.isArray(l.notifyType) ? l.notifyType : [l.notifyType];
|
|
275
|
+
c.filter((f) => !r.registry.has(f)).length > 0 && r.subscribe({
|
|
276
|
+
types: c,
|
|
277
277
|
handler: (f) => {
|
|
278
278
|
f.title && j(f.title, {
|
|
279
279
|
onClose() {
|
|
@@ -285,19 +285,19 @@ function Et(e) {
|
|
|
285
285
|
}
|
|
286
286
|
}
|
|
287
287
|
if (a)
|
|
288
|
-
for (const [l,
|
|
289
|
-
x.global.mergeLocaleMessage(l,
|
|
288
|
+
for (const [l, c] of Object.entries(a))
|
|
289
|
+
x.global.mergeLocaleMessage(l, c);
|
|
290
290
|
}
|
|
291
291
|
};
|
|
292
292
|
}
|
|
293
|
-
function
|
|
294
|
-
return
|
|
293
|
+
function Pl(e, t, a, n) {
|
|
294
|
+
return ft({
|
|
295
295
|
blades: e,
|
|
296
296
|
locales: t,
|
|
297
297
|
notificationTemplates: a
|
|
298
298
|
});
|
|
299
299
|
}
|
|
300
|
-
async function
|
|
300
|
+
async function ys(e, t, a, n, s, o) {
|
|
301
301
|
if (!a.workspaceUrl) return !1;
|
|
302
302
|
const r = t.getBladeByRoute(a.workspaceUrl);
|
|
303
303
|
if (!r)
|
|
@@ -309,14 +309,14 @@ async function Ns(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(x.global.t("PERMISSION_MESSAGES.ACCESS_RESTRICTED"), { timeout: 3e3 }), s && xe(s, o), !1;
|
|
311
311
|
if (e.workspace.value?.name !== r.name && await e.openWorkspace({ name: r.name }), a.bladeUrl) {
|
|
312
|
-
const
|
|
313
|
-
if (
|
|
314
|
-
if (e.blades.value.find((f) => f.name ===
|
|
312
|
+
const c = t.getBladeByRoute(a.bladeUrl);
|
|
313
|
+
if (c) {
|
|
314
|
+
if (e.blades.value.find((f) => f.name === c.name && f.param === a.param))
|
|
315
315
|
return !1;
|
|
316
|
-
if (
|
|
316
|
+
if (c.data.routable === !1)
|
|
317
317
|
return !0;
|
|
318
318
|
await e.openBlade({
|
|
319
|
-
name:
|
|
319
|
+
name: c.name,
|
|
320
320
|
param: a.param
|
|
321
321
|
// options not available from URL — blade must handle gracefully
|
|
322
322
|
});
|
|
@@ -325,7 +325,7 @@ async function Ns(e, t, a, n, s, o) {
|
|
|
325
325
|
}
|
|
326
326
|
return !1;
|
|
327
327
|
}
|
|
328
|
-
async function
|
|
328
|
+
async function At(e) {
|
|
329
329
|
for (; e.blades.value.length > 1; ) {
|
|
330
330
|
const t = e.blades.value, a = t[t.length - 1];
|
|
331
331
|
if (await e.closeBlade(a.id) || e.blades.value.length >= t.length)
|
|
@@ -333,28 +333,28 @@ async function St(e) {
|
|
|
333
333
|
}
|
|
334
334
|
return e.blades.value.length > 0 && e._restoreStack([]), !0;
|
|
335
335
|
}
|
|
336
|
-
async function
|
|
336
|
+
async function Ms(e, t, a, n, s) {
|
|
337
337
|
if (!e.matched.some((f) => f.meta?.root)) return;
|
|
338
338
|
if (!e.matched.some((f) => f.meta?.bladeCatchAll))
|
|
339
|
-
return t.blades.value.length > 0 && !await
|
|
340
|
-
const r = Object.values(e.params)?.[0] || "", l =
|
|
339
|
+
return t.blades.value.length > 0 && !await At(t) ? !1 : void 0;
|
|
340
|
+
const r = Object.values(e.params)?.[0] || "", l = fn(e.path, r);
|
|
341
341
|
if (!l.workspaceUrl)
|
|
342
|
-
return t.blades.value.length > 0 && !await
|
|
343
|
-
const
|
|
344
|
-
if (await
|
|
345
|
-
const { path: f, query: m } =
|
|
342
|
+
return t.blades.value.length > 0 && !await At(t) ? !1 : void 0;
|
|
343
|
+
const c = Object.fromEntries(Object.entries(e.params).filter(([, f]) => typeof f == "string"));
|
|
344
|
+
if (await ys(t, a, l, n, s, c)) {
|
|
345
|
+
const { path: f, query: m } = mn(r, t.blades.value);
|
|
346
346
|
return { path: f, query: m, replace: !0 };
|
|
347
347
|
}
|
|
348
348
|
}
|
|
349
|
-
const
|
|
349
|
+
const Bs = {
|
|
350
350
|
install(e, t) {
|
|
351
351
|
const { router: a } = t, n = {
|
|
352
352
|
router: t.router
|
|
353
353
|
};
|
|
354
|
-
|
|
354
|
+
us(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,20 +366,20 @@ const ys = {
|
|
|
366
366
|
console.error("[BladeNavigationPlugin] BladeRegistry is required but not found.");
|
|
367
367
|
return;
|
|
368
368
|
}
|
|
369
|
-
const { hasAccess: o } = e.runWithContext(() =>
|
|
370
|
-
r.current =
|
|
371
|
-
const u =
|
|
372
|
-
e.provide(
|
|
369
|
+
const { hasAccess: o } = e.runWithContext(() => ot()), r = {}, l = An(a, () => r.current), c = rs(s, o, l);
|
|
370
|
+
r.current = c, e.provide(Bn, c), is(c);
|
|
371
|
+
const u = Sn(c);
|
|
372
|
+
e.provide(kn, u), ls(u), cs(s);
|
|
373
373
|
const f = a.getRoutes().find((m) => m.meta?.root);
|
|
374
374
|
f && a.addRoute(f.name, {
|
|
375
375
|
path: ":pathMatch(.*)*",
|
|
376
376
|
component: { render: () => null },
|
|
377
377
|
meta: { bladeCatchAll: !0 }
|
|
378
378
|
}), a.beforeEach(
|
|
379
|
-
(m) => l.suppressWhile(() =>
|
|
379
|
+
(m) => l.suppressWhile(() => Ms(m, c, s, o, a))
|
|
380
380
|
);
|
|
381
381
|
}
|
|
382
|
-
},
|
|
382
|
+
}, ks = {
|
|
383
383
|
input: {
|
|
384
384
|
maxlength: 1024,
|
|
385
385
|
debounce: 0,
|
|
@@ -429,10 +429,10 @@ const ys = {
|
|
|
429
429
|
gap: 20
|
|
430
430
|
}
|
|
431
431
|
};
|
|
432
|
-
function
|
|
433
|
-
return
|
|
432
|
+
function bl(e) {
|
|
433
|
+
return ks[e];
|
|
434
434
|
}
|
|
435
|
-
const
|
|
435
|
+
const mt = /* @__PURE__ */ W({
|
|
436
436
|
__name: "vc-popup-base",
|
|
437
437
|
props: {
|
|
438
438
|
title: {},
|
|
@@ -452,7 +452,7 @@ const ft = /* @__PURE__ */ W({
|
|
|
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__ */ W({
|
|
|
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__ */ W({
|
|
|
477
477
|
R(i($), {
|
|
478
478
|
text: e.confirmAsText,
|
|
479
479
|
class: "vc-popup-base__confirm",
|
|
480
|
-
onClick: (
|
|
480
|
+
onClick: (c) => s(l)
|
|
481
481
|
}, {
|
|
482
482
|
default: T(() => [
|
|
483
483
|
B(y(e.confirmLabel), 1)
|
|
@@ -514,14 +514,14 @@ const ft = /* @__PURE__ */ W({
|
|
|
514
514
|
} : void 0
|
|
515
515
|
]), 1032, ["variant", "is-mobile-fullscreen", "title", "closable"]));
|
|
516
516
|
}
|
|
517
|
-
}),
|
|
517
|
+
}), Vs = /* @__PURE__ */ W({
|
|
518
518
|
__name: "vc-popup-warning",
|
|
519
519
|
props: {
|
|
520
520
|
title: {}
|
|
521
521
|
},
|
|
522
522
|
emits: ["close", "confirm"],
|
|
523
523
|
setup(e) {
|
|
524
|
-
return (t, a) => (P(), D(
|
|
524
|
+
return (t, a) => (P(), D(mt, {
|
|
525
525
|
variant: "warning",
|
|
526
526
|
mode: "confirm",
|
|
527
527
|
"confirm-label": t.$t("COMPONENTS.ORGANISMS.VC_POPUP.CONFIRM"),
|
|
@@ -545,14 +545,14 @@ const ft = /* @__PURE__ */ W({
|
|
|
545
545
|
} : void 0
|
|
546
546
|
]), 1032, ["confirm-label", "cancel-label", "title"]));
|
|
547
547
|
}
|
|
548
|
-
}),
|
|
548
|
+
}), Us = /* @__PURE__ */ W({
|
|
549
549
|
__name: "vc-popup-error",
|
|
550
550
|
props: {
|
|
551
551
|
title: {}
|
|
552
552
|
},
|
|
553
553
|
emits: ["close"],
|
|
554
554
|
setup(e) {
|
|
555
|
-
return (t, a) => (P(), D(
|
|
555
|
+
return (t, a) => (P(), D(mt, {
|
|
556
556
|
variant: "error",
|
|
557
557
|
mode: "acknowledge",
|
|
558
558
|
"action-label": t.$t("COMPONENTS.ORGANISMS.VC_POPUP.OK"),
|
|
@@ -573,14 +573,14 @@ const ft = /* @__PURE__ */ W({
|
|
|
573
573
|
} : void 0
|
|
574
574
|
]), 1032, ["action-label", "title"]));
|
|
575
575
|
}
|
|
576
|
-
}),
|
|
576
|
+
}), Fs = /* @__PURE__ */ W({
|
|
577
577
|
__name: "vc-popup-info",
|
|
578
578
|
props: {
|
|
579
579
|
title: {}
|
|
580
580
|
},
|
|
581
581
|
emits: ["close"],
|
|
582
582
|
setup(e) {
|
|
583
|
-
return (t, a) => (P(), D(
|
|
583
|
+
return (t, a) => (P(), D(mt, {
|
|
584
584
|
variant: "info",
|
|
585
585
|
mode: "acknowledge",
|
|
586
586
|
"action-label": t.$t("COMPONENTS.ORGANISMS.VC_POPUP.OK"),
|
|
@@ -602,18 +602,18 @@ const ft = /* @__PURE__ */ W({
|
|
|
602
602
|
]), 1032, ["action-label", "title"]));
|
|
603
603
|
}
|
|
604
604
|
});
|
|
605
|
-
function
|
|
606
|
-
$e("warning",
|
|
605
|
+
function Hs() {
|
|
606
|
+
$e("warning", Vs), $e("error", Us), $e("info", Fs);
|
|
607
607
|
}
|
|
608
|
-
const
|
|
608
|
+
const Ws = {
|
|
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), Hs();
|
|
614
614
|
}
|
|
615
615
|
};
|
|
616
|
-
function
|
|
616
|
+
function Gs(e, t) {
|
|
617
617
|
let a = null;
|
|
618
618
|
return function(...n) {
|
|
619
619
|
a && clearTimeout(a), a = window.setTimeout(() => {
|
|
@@ -621,11 +621,11 @@ function Hs(e, t) {
|
|
|
621
621
|
}, t);
|
|
622
622
|
};
|
|
623
623
|
}
|
|
624
|
-
function
|
|
624
|
+
function xs(e, t = 0) {
|
|
625
625
|
setTimeout(e, t);
|
|
626
626
|
}
|
|
627
627
|
const Ye = /* @__PURE__ */ new WeakMap();
|
|
628
|
-
function
|
|
628
|
+
function $s(e) {
|
|
629
629
|
return function(...t) {
|
|
630
630
|
if (!Ye.has(e)) {
|
|
631
631
|
const a = e(...t);
|
|
@@ -634,7 +634,7 @@ function Gs(e) {
|
|
|
634
634
|
return Ye.get(e);
|
|
635
635
|
};
|
|
636
636
|
}
|
|
637
|
-
function
|
|
637
|
+
function Ks(e, t) {
|
|
638
638
|
let a = !1;
|
|
639
639
|
return function(...n) {
|
|
640
640
|
a || (e(...n), a = !0, setTimeout(() => {
|
|
@@ -642,26 +642,26 @@ function xs(e, t) {
|
|
|
642
642
|
}, t));
|
|
643
643
|
};
|
|
644
644
|
}
|
|
645
|
-
function
|
|
645
|
+
function Nl() {
|
|
646
646
|
return {
|
|
647
|
-
debounce:
|
|
648
|
-
delay:
|
|
649
|
-
once:
|
|
650
|
-
throttle:
|
|
647
|
+
debounce: Gs,
|
|
648
|
+
delay: xs,
|
|
649
|
+
once: $s,
|
|
650
|
+
throttle: Ks
|
|
651
651
|
};
|
|
652
652
|
}
|
|
653
|
-
function
|
|
654
|
-
const t =
|
|
653
|
+
function Dl(e) {
|
|
654
|
+
const t = me(), a = e ? Array.isArray(e) ? e : [e] : [];
|
|
655
655
|
let n, s;
|
|
656
656
|
a.length && (s = t.subscribe({
|
|
657
657
|
types: a,
|
|
658
658
|
handler: (r) => n?.(r)
|
|
659
|
-
}),
|
|
659
|
+
}), it() && lt(() => s?.()));
|
|
660
660
|
const o = v(() => a.length ? t.realtime.value.filter(
|
|
661
661
|
(r) => r.isNew && r.notifyType != null && a.includes(r.notifyType)
|
|
662
662
|
) : []);
|
|
663
663
|
return {
|
|
664
|
-
notifications: v(() =>
|
|
664
|
+
notifications: v(() => ps(t.history.value, ["created"], ["desc"])),
|
|
665
665
|
moduleNotifications: o,
|
|
666
666
|
loadFromHistory: t.loadHistory,
|
|
667
667
|
addNotification: t.ingest,
|
|
@@ -673,23 +673,23 @@ function Pl(e) {
|
|
|
673
673
|
};
|
|
674
674
|
}
|
|
675
675
|
let qe;
|
|
676
|
-
const
|
|
677
|
-
function
|
|
676
|
+
const zs = k("use-async");
|
|
677
|
+
function Jt(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, ...c) {
|
|
680
680
|
a.value = !0, n.value = null;
|
|
681
681
|
try {
|
|
682
|
-
return await e(l, ...
|
|
682
|
+
return await e(l, ...c);
|
|
683
683
|
} catch (u) {
|
|
684
684
|
const f = Pe(u);
|
|
685
|
-
if (n.value = f,
|
|
685
|
+
if (n.value = f, zs.error("Async action failed:", u), s && !Ne() && u && typeof u == "object") {
|
|
686
686
|
const m = `async-error-${f.message.slice(0, 80)}`, E = setTimeout(async () => {
|
|
687
|
-
qe || (qe = (await import("./chunks/VcScheduler.vue_vue_type_style_index_0_lang-
|
|
687
|
+
qe || (qe = (await import("./chunks/VcScheduler.vue_vue_type_style_index_0_lang-CSqtsFQm.js").then((S) => S.b1)).notification), qe.error(f.message, {
|
|
688
688
|
timeout: o,
|
|
689
689
|
notificationId: m
|
|
690
690
|
});
|
|
691
691
|
}, 0);
|
|
692
|
-
|
|
692
|
+
Fa(u, E, m);
|
|
693
693
|
}
|
|
694
694
|
throw u;
|
|
695
695
|
} finally {
|
|
@@ -702,7 +702,7 @@ function Xt(e, t) {
|
|
|
702
702
|
action: r
|
|
703
703
|
};
|
|
704
704
|
}
|
|
705
|
-
function
|
|
705
|
+
function Ys(e) {
|
|
706
706
|
async function t() {
|
|
707
707
|
return new e();
|
|
708
708
|
}
|
|
@@ -710,20 +710,20 @@ function Ks(e) {
|
|
|
710
710
|
getApiClient: t
|
|
711
711
|
};
|
|
712
712
|
}
|
|
713
|
-
function
|
|
713
|
+
function Qt(...e) {
|
|
714
714
|
return v(() => e.some((t) => t.value));
|
|
715
715
|
}
|
|
716
|
-
const
|
|
716
|
+
const qs = k("use-settings");
|
|
717
717
|
function we() {
|
|
718
|
-
const e = b(), t = b(!1), { getApiClient: a } =
|
|
718
|
+
const e = b(), t = b(!1), { getApiClient: a } = Ys(Vn), { loading: n, action: s } = Jt(async () => {
|
|
719
719
|
if (t.value) return;
|
|
720
720
|
const r = await (await a()).getUICustomizationSetting();
|
|
721
721
|
let l = null;
|
|
722
722
|
if (r.defaultValue)
|
|
723
723
|
try {
|
|
724
724
|
l = JSON.parse(r.defaultValue);
|
|
725
|
-
} catch (
|
|
726
|
-
|
|
725
|
+
} catch (c) {
|
|
726
|
+
qs.warn("Failed to parse UI customization settings JSON; ignoring.", c);
|
|
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: v(() => e.value ?? {}),
|
|
747
747
|
applySettings: o,
|
|
748
|
-
loading:
|
|
748
|
+
loading: Qt(n)
|
|
749
749
|
};
|
|
750
750
|
}
|
|
751
|
-
function
|
|
751
|
+
function yl() {
|
|
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 c = !1;
|
|
757
757
|
return a || (e.value = !0), {
|
|
758
758
|
isCurrent: () => !a && l === t,
|
|
759
759
|
complete: () => {
|
|
760
|
-
|
|
760
|
+
c || (c = !0, !a && l === t && (e.value = !1));
|
|
761
761
|
}
|
|
762
762
|
};
|
|
763
763
|
}
|
|
764
764
|
async function s(l) {
|
|
765
|
-
const
|
|
765
|
+
const c = n();
|
|
766
766
|
try {
|
|
767
767
|
const u = await l;
|
|
768
|
-
return
|
|
768
|
+
return c.isCurrent() ? u : void 0;
|
|
769
769
|
} finally {
|
|
770
|
-
|
|
770
|
+
c.complete();
|
|
771
771
|
}
|
|
772
772
|
}
|
|
773
773
|
function o() {
|
|
@@ -776,7 +776,7 @@ function bl() {
|
|
|
776
776
|
function r() {
|
|
777
777
|
a = !0, o();
|
|
778
778
|
}
|
|
779
|
-
return
|
|
779
|
+
return it() && lt(r), {
|
|
780
780
|
latest: s,
|
|
781
781
|
begin: n,
|
|
782
782
|
invalidate: o,
|
|
@@ -784,8 +784,8 @@ function bl() {
|
|
|
784
784
|
pending: ke(e)
|
|
785
785
|
};
|
|
786
786
|
}
|
|
787
|
-
const
|
|
788
|
-
async function
|
|
787
|
+
const ea = 4;
|
|
788
|
+
async function Zs(e, t, a, n) {
|
|
789
789
|
const s = new FormData();
|
|
790
790
|
s.append("file", e);
|
|
791
791
|
const o = t.startsWith("/") ? t.slice(1) : t, l = await (await fetch(`/api/assets?folderUrl=/${o}`, {
|
|
@@ -793,27 +793,27 @@ async function Ys(e, t, a, n) {
|
|
|
793
793
|
body: s
|
|
794
794
|
})).json();
|
|
795
795
|
if (!l?.length) return null;
|
|
796
|
-
const
|
|
797
|
-
return
|
|
796
|
+
const c = l[0];
|
|
797
|
+
return c.createdDate = /* @__PURE__ */ new Date(), c.sortOrder = n !== void 0 && n >= 0 ? n + a + 1 : 0, c.url = c.url ? decodeURI(c.url) : "", "size" in c && (c.size = e.size), c;
|
|
798
798
|
}
|
|
799
|
-
async function
|
|
799
|
+
async function ta(e, { uploadPath: t, startingSortOrder: a, concurrency: n = ea }) {
|
|
800
800
|
const s = Array.from(e), o = [];
|
|
801
801
|
for (let r = 0; r < s.length; r += n) {
|
|
802
|
-
const l = s.slice(r, r + n),
|
|
803
|
-
l.map((u, f) =>
|
|
802
|
+
const l = s.slice(r, r + n), c = await Promise.all(
|
|
803
|
+
l.map((u, f) => Zs(u, t, r + f, a))
|
|
804
804
|
);
|
|
805
|
-
o.push(...
|
|
805
|
+
o.push(...c);
|
|
806
806
|
}
|
|
807
807
|
return o.filter((r) => r !== null);
|
|
808
808
|
}
|
|
809
|
-
const
|
|
810
|
-
function
|
|
809
|
+
const pt = k("use-assets");
|
|
810
|
+
function Ml() {
|
|
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 ta(s, { uploadPath: o, startingSortOrder: r });
|
|
815
815
|
} catch (l) {
|
|
816
|
-
throw
|
|
816
|
+
throw pt.error("Upload failed:", l), l;
|
|
817
817
|
} finally {
|
|
818
818
|
e.value = !1;
|
|
819
819
|
}
|
|
@@ -822,9 +822,9 @@ function Nl() {
|
|
|
822
822
|
try {
|
|
823
823
|
e.value = !0;
|
|
824
824
|
let l = J(o) || [];
|
|
825
|
-
return l && l.length && s.length > 0 && (l =
|
|
825
|
+
return l && l.length && s.length > 0 && (l = Ts(l, s, (c, u) => c[r] === u[r])), l;
|
|
826
826
|
} catch (l) {
|
|
827
|
-
throw
|
|
827
|
+
throw pt.error("Remove failed:", l), l;
|
|
828
828
|
} finally {
|
|
829
829
|
e.value = !1;
|
|
830
830
|
}
|
|
@@ -834,8 +834,8 @@ function Nl() {
|
|
|
834
834
|
return s.map((l) => ({ ...l }));
|
|
835
835
|
const r = J(o) || [];
|
|
836
836
|
return r && r.length && s.forEach((l) => {
|
|
837
|
-
const
|
|
838
|
-
|
|
837
|
+
const c = r.findIndex((u) => u.url === l.url);
|
|
838
|
+
c !== -1 && (r[c] = { ...r[c], ...l });
|
|
839
839
|
}), r;
|
|
840
840
|
}
|
|
841
841
|
return {
|
|
@@ -845,33 +845,33 @@ function Nl() {
|
|
|
845
845
|
loading: v(() => e.value)
|
|
846
846
|
};
|
|
847
847
|
}
|
|
848
|
-
const
|
|
849
|
-
function
|
|
848
|
+
const js = k("use-assets-manager");
|
|
849
|
+
function Tt(e) {
|
|
850
850
|
return e.map((t, a) => ({ item: t, index: a })).sort((t, a) => {
|
|
851
851
|
const n = t.item.sortOrder ?? Number.MAX_SAFE_INTEGER, s = a.item.sortOrder ?? Number.MAX_SAFE_INTEGER;
|
|
852
852
|
return n === s ? t.index - a.index : n - s;
|
|
853
853
|
}).map(({ item: t }, a) => ({ ...t, sortOrder: a }));
|
|
854
854
|
}
|
|
855
|
-
function
|
|
856
|
-
const a = b(!1), n = b(
|
|
855
|
+
function Bl(e, t) {
|
|
856
|
+
const a = b(!1), n = b(Tt(e.value ?? []));
|
|
857
857
|
ae(
|
|
858
858
|
() => e.value,
|
|
859
859
|
(S) => {
|
|
860
|
-
n.value =
|
|
860
|
+
n.value = Tt(S ?? []);
|
|
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 = v(() => a.value), l = t.concurrency ??
|
|
867
|
+
const o = n, r = v(() => a.value), l = t.concurrency ?? ea, c = t.assetKey ?? "url";
|
|
868
868
|
async function u(S, h) {
|
|
869
869
|
try {
|
|
870
870
|
a.value = !0;
|
|
871
|
-
const O = t.uploadPath(), _ = await
|
|
871
|
+
const O = t.uploadPath(), _ = await ta(S, { uploadPath: O, startingSortOrder: h, concurrency: l });
|
|
872
872
|
n.value = [...n.value, ..._], s();
|
|
873
873
|
} catch (O) {
|
|
874
|
-
throw
|
|
874
|
+
throw js.error("Upload failed:", O), O;
|
|
875
875
|
} finally {
|
|
876
876
|
a.value = !1;
|
|
877
877
|
}
|
|
@@ -882,14 +882,14 @@ function Dl(e, t) {
|
|
|
882
882
|
async function m(S) {
|
|
883
883
|
if (t.confirmRemove && !await t.confirmRemove())
|
|
884
884
|
return;
|
|
885
|
-
const h = new Set(S.map((O) => O[
|
|
886
|
-
n.value = n.value.filter((O) => !h.has(O[
|
|
885
|
+
const h = new Set(S.map((O) => O[c]));
|
|
886
|
+
n.value = n.value.filter((O) => !h.has(O[c])), s();
|
|
887
887
|
}
|
|
888
888
|
function E(S) {
|
|
889
889
|
n.value = S.map((h) => ({ ...h })), s();
|
|
890
890
|
}
|
|
891
|
-
function
|
|
892
|
-
const h = n.value.findIndex((O) => O[
|
|
891
|
+
function d(S) {
|
|
892
|
+
const h = n.value.findIndex((O) => O[c] === S[c]);
|
|
893
893
|
if (h !== -1) {
|
|
894
894
|
const O = [...n.value];
|
|
895
895
|
O[h] = { ...n.value[h], ...S }, n.value = O, s();
|
|
@@ -901,14 +901,14 @@ function Dl(e, t) {
|
|
|
901
901
|
remove: f,
|
|
902
902
|
removeMany: m,
|
|
903
903
|
reorder: E,
|
|
904
|
-
updateItem:
|
|
904
|
+
updateItem: d,
|
|
905
905
|
loading: r
|
|
906
906
|
};
|
|
907
907
|
}
|
|
908
|
-
const
|
|
909
|
-
|
|
908
|
+
const Xs = (e) => {
|
|
909
|
+
tn(() => {
|
|
910
910
|
window.addEventListener("beforeunload", t);
|
|
911
|
-
}),
|
|
911
|
+
}), an(() => {
|
|
912
912
|
window.removeEventListener("beforeunload", t);
|
|
913
913
|
});
|
|
914
914
|
function t(a) {
|
|
@@ -917,9 +917,9 @@ const Zs = (e) => {
|
|
|
917
917
|
return {
|
|
918
918
|
modified: e
|
|
919
919
|
};
|
|
920
|
-
},
|
|
921
|
-
function
|
|
922
|
-
const e =
|
|
920
|
+
}, Js = k("use-breadcrumbs");
|
|
921
|
+
function kl() {
|
|
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 yl() {
|
|
|
930
930
|
clickHandler: s.clickHandler ? async (l) => {
|
|
931
931
|
try {
|
|
932
932
|
await s.clickHandler(l) !== !1 && t(l);
|
|
933
|
-
} catch (
|
|
934
|
-
|
|
933
|
+
} catch (c) {
|
|
934
|
+
Js.error("Breadcrumb click handler failed:", c);
|
|
935
935
|
}
|
|
936
936
|
} : void 0
|
|
937
937
|
}, r = e.value.findIndex((l) => l.id === o.id);
|
|
@@ -950,7 +950,7 @@ function yl() {
|
|
|
950
950
|
remove: n
|
|
951
951
|
};
|
|
952
952
|
}
|
|
953
|
-
const
|
|
953
|
+
const Qs = {
|
|
954
954
|
get(e, t) {
|
|
955
955
|
return Te(e) ? he(e) ? e.values?.filter((n) => n.languageCode === t) ?? [] : (e.values?.find((n) => n.languageCode === t) ?? e.values?.find((n) => !n.languageCode))?.value ?? "" : he(e) ? e.values ?? [] : e.values?.[0]?.value ?? "";
|
|
956
956
|
},
|
|
@@ -977,14 +977,14 @@ const Xs = {
|
|
|
977
977
|
}
|
|
978
978
|
e.values?.[0] ? Object.assign(e.values[0], { value: t }) : e.values = [F({ value: t })];
|
|
979
979
|
}
|
|
980
|
-
},
|
|
980
|
+
}, eo = {
|
|
981
981
|
get(e, t) {
|
|
982
982
|
return Te(e) ? (e.values?.find((n) => n.languageCode === t) ?? e.values?.find((n) => !n.languageCode))?.value ?? !1 : e.values?.[0]?.value ?? !1;
|
|
983
983
|
},
|
|
984
984
|
set(e, t, a) {
|
|
985
985
|
e.values?.[0] ? Object.assign(e.values[0], { value: t }) : e.values = [F({ value: t })];
|
|
986
986
|
}
|
|
987
|
-
},
|
|
987
|
+
}, to = {
|
|
988
988
|
get(e, t) {
|
|
989
989
|
return Te(e) ? he(e) ? e.values?.filter((n) => n.languageCode === t) ?? [] : (e.values?.find((n) => n.languageCode === t) ?? e.values?.find((n) => !n.languageCode))?.valueId ?? "" : he(e) ? e.values ?? [] : e.values?.[0]?.valueId ?? "";
|
|
990
990
|
},
|
|
@@ -994,17 +994,17 @@ const Xs = {
|
|
|
994
994
|
We(e, s);
|
|
995
995
|
return;
|
|
996
996
|
}
|
|
997
|
-
n?.length && (Te(e) ?
|
|
997
|
+
n?.length && (Te(e) ? ao(e, t, n, s) : oo(e, t, n));
|
|
998
998
|
}
|
|
999
999
|
};
|
|
1000
|
-
function
|
|
1001
|
-
Array.isArray(t) ?
|
|
1000
|
+
function ao(e, t, a, n) {
|
|
1001
|
+
Array.isArray(t) ? no(
|
|
1002
1002
|
e,
|
|
1003
1003
|
t,
|
|
1004
1004
|
a
|
|
1005
|
-
) :
|
|
1005
|
+
) : so(e, t, a, n);
|
|
1006
1006
|
}
|
|
1007
|
-
function
|
|
1007
|
+
function no(e, t, a) {
|
|
1008
1008
|
e.values = t.flatMap((n) => {
|
|
1009
1009
|
const s = a.find(
|
|
1010
1010
|
(o) => o.id === n.valueId || o.id === n.id
|
|
@@ -1021,7 +1021,7 @@ function to(e, t, a) {
|
|
|
1021
1021
|
) : F(n);
|
|
1022
1022
|
});
|
|
1023
1023
|
}
|
|
1024
|
-
function
|
|
1024
|
+
function so(e, t, a, n) {
|
|
1025
1025
|
const s = a.find((o) => o.id === t);
|
|
1026
1026
|
if (!s) {
|
|
1027
1027
|
e.values = [];
|
|
@@ -1052,7 +1052,7 @@ function ao(e, t, a, n) {
|
|
|
1052
1052
|
);
|
|
1053
1053
|
}
|
|
1054
1054
|
}
|
|
1055
|
-
function
|
|
1055
|
+
function oo(e, t, a) {
|
|
1056
1056
|
if (Array.isArray(t))
|
|
1057
1057
|
e.values = t.flatMap((n) => {
|
|
1058
1058
|
const s = a.find(
|
|
@@ -1083,7 +1083,7 @@ function no(e, t, a) {
|
|
|
1083
1083
|
];
|
|
1084
1084
|
}
|
|
1085
1085
|
}
|
|
1086
|
-
const
|
|
1086
|
+
const ro = {
|
|
1087
1087
|
get(e, t) {
|
|
1088
1088
|
return e.values?.[0]?.value ?? "";
|
|
1089
1089
|
},
|
|
@@ -1094,7 +1094,7 @@ const so = {
|
|
|
1094
1094
|
}
|
|
1095
1095
|
e.values = [F({ value: t, unitOfMeasureId: a.unitOfMeasureId })];
|
|
1096
1096
|
}
|
|
1097
|
-
},
|
|
1097
|
+
}, io = {
|
|
1098
1098
|
get(e, t) {
|
|
1099
1099
|
return he(e) ? e.values ?? [] : e.values?.[0]?.value ?? "";
|
|
1100
1100
|
},
|
|
@@ -1108,11 +1108,11 @@ const so = {
|
|
|
1108
1108
|
) : e.values = [F({ value: t, colorCode: a.colorCode })];
|
|
1109
1109
|
}
|
|
1110
1110
|
};
|
|
1111
|
-
function
|
|
1112
|
-
return
|
|
1111
|
+
function ht(e) {
|
|
1112
|
+
return On(e) ? ro : Ln(e) && !gt(e) ? io : e.valueType === "Boolean" ? eo : gt(e) ? to : Qs;
|
|
1113
1113
|
}
|
|
1114
|
-
function
|
|
1115
|
-
const { searchDictionary: t, searchMeasurements: a } = e, { loading: n, action: s } =
|
|
1114
|
+
function Vl(e) {
|
|
1115
|
+
const { searchDictionary: t, searchMeasurements: a } = e, { loading: n, action: s } = Jt(async (u) => {
|
|
1116
1116
|
if (u)
|
|
1117
1117
|
return await t(u);
|
|
1118
1118
|
});
|
|
@@ -1123,9 +1123,9 @@ function Ml(e) {
|
|
|
1123
1123
|
keyword: f,
|
|
1124
1124
|
skip: 0
|
|
1125
1125
|
});
|
|
1126
|
-
return !m || !E ? E : E.map((
|
|
1127
|
-
const S =
|
|
1128
|
-
return { ...
|
|
1126
|
+
return !m || !E ? E : E.map((d) => {
|
|
1127
|
+
const S = d.localizedValues?.find((h) => h.languageCode === m)?.value;
|
|
1128
|
+
return { ...d, value: S ?? d.alias };
|
|
1129
1129
|
});
|
|
1130
1130
|
}
|
|
1131
1131
|
async function r(u, f, m) {
|
|
@@ -1133,21 +1133,21 @@ function Ml(e) {
|
|
|
1133
1133
|
return await a(u, m);
|
|
1134
1134
|
}
|
|
1135
1135
|
function l(u, f) {
|
|
1136
|
-
return
|
|
1136
|
+
return ht(u).get(u, f);
|
|
1137
1137
|
}
|
|
1138
|
-
function
|
|
1138
|
+
function c(u) {
|
|
1139
1139
|
const { property: f, value: m, ...E } = u;
|
|
1140
|
-
|
|
1140
|
+
ht(f).set(f, m, E);
|
|
1141
1141
|
}
|
|
1142
1142
|
return {
|
|
1143
1143
|
getPropertyValue: l,
|
|
1144
|
-
setPropertyValue:
|
|
1144
|
+
setPropertyValue: c,
|
|
1145
1145
|
loadDictionaries: o,
|
|
1146
1146
|
loadMeasurements: r,
|
|
1147
|
-
loading:
|
|
1147
|
+
loading: Qt(n)
|
|
1148
1148
|
};
|
|
1149
1149
|
}
|
|
1150
|
-
function
|
|
1150
|
+
function Ul(e) {
|
|
1151
1151
|
const t = (n) => {
|
|
1152
1152
|
}, a = (n) => {
|
|
1153
1153
|
(e ?? t)({
|
|
@@ -1156,14 +1156,14 @@ function Bl(e) {
|
|
|
1156
1156
|
rating: n.rating
|
|
1157
1157
|
});
|
|
1158
1158
|
};
|
|
1159
|
-
|
|
1159
|
+
Os(a), Ls(a), Rs(a), _s(a), Is(a);
|
|
1160
1160
|
}
|
|
1161
|
-
const
|
|
1162
|
-
function
|
|
1163
|
-
const t = Q(
|
|
1161
|
+
const aa = k("use-blade-widgets");
|
|
1162
|
+
function Fl(e) {
|
|
1163
|
+
const t = Q(xt);
|
|
1164
1164
|
if (!t)
|
|
1165
|
-
throw new
|
|
1166
|
-
const a = t, n = Q(
|
|
1165
|
+
throw new Mt("WidgetService");
|
|
1166
|
+
const a = t, n = Q($t, 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."
|
|
@@ -1171,31 +1171,31 @@ function kl(e) {
|
|
|
1171
1171
|
const s = n.value.id;
|
|
1172
1172
|
Le(() => {
|
|
1173
1173
|
for (const l of e)
|
|
1174
|
-
a.registerWidget(
|
|
1175
|
-
}),
|
|
1174
|
+
a.registerWidget(lo(l), s);
|
|
1175
|
+
}), sn(() => {
|
|
1176
1176
|
for (const l of e)
|
|
1177
1177
|
a.unregisterWidget(l.id, s);
|
|
1178
1178
|
});
|
|
1179
1179
|
function o(l) {
|
|
1180
1180
|
const u = a.getWidgets(s).find((f) => f.id === l);
|
|
1181
|
-
u?.trigger?.onRefresh ? u.trigger.onRefresh() :
|
|
1181
|
+
u?.trigger?.onRefresh ? u.trigger.onRefresh() : aa.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 c of l)
|
|
1186
|
+
c.trigger?.onRefresh && c.trigger.onRefresh();
|
|
1187
1187
|
}
|
|
1188
1188
|
return { refresh: o, refreshAll: r };
|
|
1189
1189
|
}
|
|
1190
|
-
function
|
|
1191
|
-
const t = Q(
|
|
1190
|
+
function Hl(e) {
|
|
1191
|
+
const t = Q(Un);
|
|
1192
1192
|
if (!t) {
|
|
1193
|
-
|
|
1193
|
+
aa.warn("useWidgetTrigger() called outside WidgetContainer scope — trigger will not be registered.");
|
|
1194
1194
|
return;
|
|
1195
1195
|
}
|
|
1196
1196
|
t.setTrigger(e);
|
|
1197
1197
|
}
|
|
1198
|
-
function
|
|
1198
|
+
function lo(e) {
|
|
1199
1199
|
const t = {
|
|
1200
1200
|
icon: e.icon,
|
|
1201
1201
|
badge: e.badge,
|
|
@@ -1212,40 +1212,40 @@ function ro(e) {
|
|
|
1212
1212
|
trigger: e.onRefresh ? { onRefresh: e.onRefresh } : void 0
|
|
1213
1213
|
};
|
|
1214
1214
|
}
|
|
1215
|
-
function
|
|
1215
|
+
function uo(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] = Vt(n) ? n.value : n;
|
|
1220
1220
|
}
|
|
1221
1221
|
return t;
|
|
1222
1222
|
}
|
|
1223
|
-
function
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
v(() =>
|
|
1223
|
+
function Wl(e) {
|
|
1224
|
+
Bt(
|
|
1225
|
+
Kt,
|
|
1226
|
+
v(() => uo(kt(e)))
|
|
1227
1227
|
);
|
|
1228
1228
|
}
|
|
1229
|
-
function
|
|
1230
|
-
const e = Q(
|
|
1229
|
+
function Gl() {
|
|
1230
|
+
const e = Q(Kt);
|
|
1231
1231
|
if (!e)
|
|
1232
|
-
throw new
|
|
1232
|
+
throw new Mt("BladeContext");
|
|
1233
1233
|
return e;
|
|
1234
1234
|
}
|
|
1235
|
-
function
|
|
1235
|
+
function Ot(e) {
|
|
1236
1236
|
return e == null || e === "";
|
|
1237
1237
|
}
|
|
1238
|
-
function
|
|
1239
|
-
return
|
|
1240
|
-
if (
|
|
1238
|
+
function Lt(e, t) {
|
|
1239
|
+
return hs(e, t, (a, n) => {
|
|
1240
|
+
if (Ot(a) && Ot(n)) return !0;
|
|
1241
1241
|
});
|
|
1242
1242
|
}
|
|
1243
|
-
function
|
|
1243
|
+
function xl(e) {
|
|
1244
1244
|
const t = (r) => J(i(r)), a = b(t(e)), n = b(t(e)), s = b(!1);
|
|
1245
|
-
|
|
1245
|
+
Vt(e) && ae(
|
|
1246
1246
|
e,
|
|
1247
1247
|
(r) => {
|
|
1248
|
-
const l = !
|
|
1248
|
+
const l = !Lt(n.value, a.value);
|
|
1249
1249
|
a.value = J(r), l || (n.value = J(r));
|
|
1250
1250
|
},
|
|
1251
1251
|
{ deep: !0 }
|
|
@@ -1254,7 +1254,7 @@ function Hl(e) {
|
|
|
1254
1254
|
[n, a],
|
|
1255
1255
|
// Track changes in currentValue or pristineValue
|
|
1256
1256
|
([r, l]) => {
|
|
1257
|
-
s.value = !
|
|
1257
|
+
s.value = !Lt(r, l);
|
|
1258
1258
|
},
|
|
1259
1259
|
{ deep: !0 }
|
|
1260
1260
|
);
|
|
@@ -1273,28 +1273,28 @@ function Hl(e) {
|
|
|
1273
1273
|
resetModificationState: o
|
|
1274
1274
|
};
|
|
1275
1275
|
}
|
|
1276
|
-
const
|
|
1276
|
+
const co = { class: "tw-flex tw-grow-1 tw-border-t tw-border-solid tw-border-t-[--assets-details-border]" }, Eo = { class: "assets-details__content tw-grow tw-basis-0 tw-w-full tw-overflow-hidden" }, fo = { class: "tw-p-4" }, mo = { class: "assets-details__header" }, go = {
|
|
1277
1277
|
key: 1,
|
|
1278
1278
|
class: "assets-details__file-preview tw-shrink-0"
|
|
1279
|
-
},
|
|
1280
|
-
|
|
1281
|
-
const
|
|
1279
|
+
}, So = { class: "assets-details__meta" };
|
|
1280
|
+
Ht("AssetsDetails", {});
|
|
1281
|
+
const Ao = /* @__PURE__ */ W({
|
|
1282
1282
|
name: "AssetsDetails",
|
|
1283
1283
|
__name: "assets-details",
|
|
1284
1284
|
setup(e) {
|
|
1285
|
-
const { options: t, closeSelf: a } =
|
|
1285
|
+
const { options: t, closeSelf: a } = ct();
|
|
1286
1286
|
ue({ validateOnMount: !1 });
|
|
1287
|
-
const n = Ie(), s = dt(), { t: o } = le({ useScope: "global" }), r = b({ ...t.value?.asset }), l = v(() => t.value?.disabled),
|
|
1287
|
+
const n = Ie(), s = dt(), { t: o } = le({ useScope: "global" }), r = b({ ...t.value?.asset }), l = v(() => t.value?.disabled), c = v({
|
|
1288
1288
|
get() {
|
|
1289
1289
|
const E = r.value.name;
|
|
1290
1290
|
if (!E) return "";
|
|
1291
|
-
const
|
|
1292
|
-
return
|
|
1291
|
+
const d = E.lastIndexOf(".");
|
|
1292
|
+
return d > 0 ? E.slice(0, d) : E;
|
|
1293
1293
|
},
|
|
1294
1294
|
set(E) {
|
|
1295
|
-
const
|
|
1296
|
-
if (!
|
|
1297
|
-
const S =
|
|
1295
|
+
const d = r.value.name;
|
|
1296
|
+
if (!d) return;
|
|
1297
|
+
const S = d.lastIndexOf("."), h = S > 0 ? d.slice(S) : "";
|
|
1298
1298
|
r.value.name = E ? E + h : "";
|
|
1299
1299
|
}
|
|
1300
1300
|
}), u = v(() => !s.value || !n.value), f = b([
|
|
@@ -1317,36 +1317,36 @@ const go = /* @__PURE__ */ W({
|
|
|
1317
1317
|
disabled: v(() => l.value)
|
|
1318
1318
|
}
|
|
1319
1319
|
]), m = v(() => r.value?.typeId);
|
|
1320
|
-
return (E,
|
|
1320
|
+
return (E, d) => (P(), D(i(Wt), {
|
|
1321
1321
|
title: i(t)?.asset?.name,
|
|
1322
1322
|
subtitle: i(o)("ASSETS.PAGES.DETAILS.SUBTITLE"),
|
|
1323
1323
|
"toolbar-items": f.value
|
|
1324
1324
|
}, {
|
|
1325
1325
|
default: T(() => [
|
|
1326
|
-
U("div",
|
|
1327
|
-
U("div",
|
|
1328
|
-
R(i(
|
|
1326
|
+
U("div", co, [
|
|
1327
|
+
U("div", Eo, [
|
|
1328
|
+
R(i(Rn), { "no-padding": !0 }, {
|
|
1329
1329
|
default: T(() => [
|
|
1330
|
-
U("div",
|
|
1331
|
-
R(i(
|
|
1330
|
+
U("div", fo, [
|
|
1331
|
+
R(i(ge), null, {
|
|
1332
1332
|
default: T(() => [
|
|
1333
|
-
U("div",
|
|
1334
|
-
i(
|
|
1333
|
+
U("div", mo, [
|
|
1334
|
+
i(Yt)(r.value.name) ? (P(), D(i(rt), {
|
|
1335
1335
|
key: 0,
|
|
1336
1336
|
src: r.value.url,
|
|
1337
1337
|
size: "xl",
|
|
1338
1338
|
bordered: !0,
|
|
1339
1339
|
class: "tw-shrink-0"
|
|
1340
|
-
}, null, 8, ["src"])) : (P(), H("div",
|
|
1340
|
+
}, null, 8, ["src"])) : (P(), H("div", go, [
|
|
1341
1341
|
U("div", {
|
|
1342
1342
|
class: "assets-details__file-badge",
|
|
1343
|
-
style:
|
|
1344
|
-
}, y(i(
|
|
1343
|
+
style: Ut({ backgroundColor: i(Zt)(r.value.name) })
|
|
1344
|
+
}, y(i(jt)(r.value.name)), 5)
|
|
1345
1345
|
])),
|
|
1346
|
-
U("div",
|
|
1346
|
+
U("div", So, [
|
|
1347
1347
|
R(i(Ke), {
|
|
1348
1348
|
label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.SIZE"),
|
|
1349
|
-
"model-value": i(
|
|
1349
|
+
"model-value": i(qt)(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"),
|
|
@@ -1371,9 +1371,9 @@ const go = /* @__PURE__ */ W({
|
|
|
1371
1371
|
}, {
|
|
1372
1372
|
default: T(({ errorMessage: S, handleChange: h, errors: O }) => [
|
|
1373
1373
|
R(i(K), {
|
|
1374
|
-
modelValue:
|
|
1374
|
+
modelValue: c.value,
|
|
1375
1375
|
"onUpdate:modelValue": [
|
|
1376
|
-
|
|
1376
|
+
d[0] || (d[0] = (_) => c.value = _),
|
|
1377
1377
|
h
|
|
1378
1378
|
],
|
|
1379
1379
|
class: "tw-mb-4",
|
|
@@ -1391,7 +1391,7 @@ const go = /* @__PURE__ */ W({
|
|
|
1391
1391
|
m.value === "Image" && !i(t)?.hiddenFields?.includes("altText") ? (P(), D(i(K), {
|
|
1392
1392
|
key: 1,
|
|
1393
1393
|
modelValue: r.value.altText,
|
|
1394
|
-
"onUpdate:modelValue":
|
|
1394
|
+
"onUpdate:modelValue": d[1] || (d[1] = (S) => r.value.altText = S),
|
|
1395
1395
|
class: "tw-mb-4",
|
|
1396
1396
|
label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.ALT.TITLE"),
|
|
1397
1397
|
clearable: "",
|
|
@@ -1399,10 +1399,10 @@ const go = /* @__PURE__ */ W({
|
|
|
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"])) : Y("", !0),
|
|
1402
|
-
i(t)?.hiddenFields?.includes("description") ? Y("", !0) : (P(), D(i(
|
|
1402
|
+
i(t)?.hiddenFields?.includes("description") ? Y("", !0) : (P(), D(i(_n), {
|
|
1403
1403
|
key: 2,
|
|
1404
1404
|
modelValue: r.value.description,
|
|
1405
|
-
"onUpdate:modelValue":
|
|
1405
|
+
"onUpdate:modelValue": d[2] || (d[2] = (S) => r.value.description = S),
|
|
1406
1406
|
class: "tw-mb-4",
|
|
1407
1407
|
label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.DESCRIPTION.TITLE"),
|
|
1408
1408
|
placeholder: i(o)("ASSETS.PAGES.DETAILS.FIELDS.DESCRIPTION.PLACEHOLDER"),
|
|
@@ -1421,16 +1421,16 @@ const go = /* @__PURE__ */ W({
|
|
|
1421
1421
|
_: 1
|
|
1422
1422
|
}, 8, ["title", "subtitle", "toolbar-items"]));
|
|
1423
1423
|
}
|
|
1424
|
-
}),
|
|
1424
|
+
}), po = Ao, To = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1425
1425
|
__proto__: null,
|
|
1426
|
-
AssetsDetails:
|
|
1427
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1428
|
-
|
|
1429
|
-
const
|
|
1426
|
+
AssetsDetails: po
|
|
1427
|
+
}, Symbol.toStringTag, { value: "Module" })), ho = ft({ blades: To }), Oo = { class: "tw-flex tw-items-center tw-justify-center" };
|
|
1428
|
+
Ht("AssetsManager", {});
|
|
1429
|
+
const Lo = /* @__PURE__ */ W({
|
|
1430
1430
|
name: "AssetsManager",
|
|
1431
1431
|
__name: "assets-manager",
|
|
1432
1432
|
setup(e) {
|
|
1433
|
-
const t = k("assets-manager"), { options: a, openBlade: n } =
|
|
1433
|
+
const t = k("assets-manager"), { options: a, openBlade: n } = ct(), { t: s } = le({ useScope: "global" }), o = v(() => a.value.manager), r = v(() => o.value.items.value ?? []), l = v(() => o.value.loading.value), c = v(() => a.value?.title || s("ASSETS_MANAGER.TITLE")), u = b(!1), f = b(), m = b([]), E = v(() => a.value?.disabled), d = b([
|
|
1434
1434
|
{
|
|
1435
1435
|
id: "add",
|
|
1436
1436
|
title: v(() => s("ASSETS_MANAGER.TOOLBAR.ADD")),
|
|
@@ -1485,10 +1485,10 @@ const ho = /* @__PURE__ */ W({
|
|
|
1485
1485
|
for (const M of Array.from(p)) {
|
|
1486
1486
|
let V = M.name;
|
|
1487
1487
|
if (I.has(V)) {
|
|
1488
|
-
const z = V.includes(".") ? `.${V.split(".").pop()}` : "",
|
|
1489
|
-
let
|
|
1488
|
+
const z = V.includes(".") ? `.${V.split(".").pop()}` : "", ce = V.slice(0, V.length - z.length);
|
|
1489
|
+
let Se = 1;
|
|
1490
1490
|
for (; I.has(V); )
|
|
1491
|
-
V = `${
|
|
1491
|
+
V = `${ce}_${Se}${z}`, Se++;
|
|
1492
1492
|
}
|
|
1493
1493
|
I.add(V), N.items.add(new File([M], V, { type: M.type }));
|
|
1494
1494
|
}
|
|
@@ -1536,20 +1536,20 @@ const ho = /* @__PURE__ */ W({
|
|
|
1536
1536
|
}
|
|
1537
1537
|
}
|
|
1538
1538
|
];
|
|
1539
|
-
return (p, I) => (P(), D(i(
|
|
1539
|
+
return (p, I) => (P(), D(i(Wt), {
|
|
1540
1540
|
"data-test-id": "assets-manager-blade",
|
|
1541
|
-
title:
|
|
1542
|
-
"toolbar-items":
|
|
1541
|
+
title: c.value,
|
|
1542
|
+
"toolbar-items": d.value,
|
|
1543
1543
|
width: "70%"
|
|
1544
1544
|
}, {
|
|
1545
1545
|
default: T(() => [
|
|
1546
|
-
|
|
1546
|
+
on((P(), H("div", {
|
|
1547
1547
|
class: "tw-relative tw-h-full tw-flex-1",
|
|
1548
1548
|
onDragover: Ge(h, ["prevent", "stop"]),
|
|
1549
1549
|
onDragleave: Ge(O, ["prevent"]),
|
|
1550
1550
|
onDrop: Ge(_, ["prevent", "stop"])
|
|
1551
1551
|
}, [
|
|
1552
|
-
R(i(
|
|
1552
|
+
R(i(In), {
|
|
1553
1553
|
selection: m.value,
|
|
1554
1554
|
"onUpdate:selection": I[0] || (I[0] = (N) => m.value = N),
|
|
1555
1555
|
items: r.value,
|
|
@@ -1568,7 +1568,7 @@ const ho = /* @__PURE__ */ W({
|
|
|
1568
1568
|
onRowReorder: S
|
|
1569
1569
|
}, {
|
|
1570
1570
|
default: T(() => [
|
|
1571
|
-
R(i(
|
|
1571
|
+
R(i(Ae), {
|
|
1572
1572
|
id: "url",
|
|
1573
1573
|
title: i(s)("ASSETS_MANAGER.TABLE.HEADER.IMAGE"),
|
|
1574
1574
|
width: "10%",
|
|
@@ -1576,8 +1576,8 @@ const ho = /* @__PURE__ */ W({
|
|
|
1576
1576
|
type: "image"
|
|
1577
1577
|
}, {
|
|
1578
1578
|
body: T(({ data: N }) => [
|
|
1579
|
-
U("div",
|
|
1580
|
-
i(
|
|
1579
|
+
U("div", Oo, [
|
|
1580
|
+
i(Yt)(N.name ?? "") ? (P(), D(i(rt), {
|
|
1581
1581
|
key: 0,
|
|
1582
1582
|
bordered: !0,
|
|
1583
1583
|
size: "s",
|
|
@@ -1587,30 +1587,30 @@ const ho = /* @__PURE__ */ W({
|
|
|
1587
1587
|
}, null, 8, ["src"])) : (P(), H("div", {
|
|
1588
1588
|
key: 1,
|
|
1589
1589
|
class: "assets-manager__file-badge",
|
|
1590
|
-
style:
|
|
1591
|
-
}, y(i(
|
|
1590
|
+
style: Ut({ backgroundColor: i(Zt)(N.name ?? "") })
|
|
1591
|
+
}, y(i(jt)(N.name ?? "")), 5))
|
|
1592
1592
|
])
|
|
1593
1593
|
]),
|
|
1594
1594
|
_: 1
|
|
1595
1595
|
}, 8, ["title"]),
|
|
1596
|
-
R(i(
|
|
1596
|
+
R(i(Ae), {
|
|
1597
1597
|
id: "name",
|
|
1598
1598
|
title: i(s)("ASSETS_MANAGER.TABLE.HEADER.NAME"),
|
|
1599
1599
|
width: "20%",
|
|
1600
1600
|
"always-visible": ""
|
|
1601
1601
|
}, null, 8, ["title"]),
|
|
1602
|
-
R(i(
|
|
1602
|
+
R(i(Ae), {
|
|
1603
1603
|
id: "size",
|
|
1604
1604
|
title: i(s)("ASSETS_MANAGER.TABLE.HEADER.SIZE"),
|
|
1605
1605
|
width: "20%",
|
|
1606
1606
|
"always-visible": ""
|
|
1607
1607
|
}, {
|
|
1608
1608
|
body: T(({ data: N }) => [
|
|
1609
|
-
U("div", null, y(i(
|
|
1609
|
+
U("div", null, y(i(qt)(N.size ?? 0)), 1)
|
|
1610
1610
|
]),
|
|
1611
1611
|
_: 1
|
|
1612
1612
|
}, 8, ["title"]),
|
|
1613
|
-
R(i(
|
|
1613
|
+
R(i(Ae), {
|
|
1614
1614
|
id: "sortOrder",
|
|
1615
1615
|
title: i(s)("ASSETS_MANAGER.TABLE.HEADER.SORT_ORDER"),
|
|
1616
1616
|
width: "25%",
|
|
@@ -1621,7 +1621,7 @@ const ho = /* @__PURE__ */ W({
|
|
|
1621
1621
|
]),
|
|
1622
1622
|
_: 1
|
|
1623
1623
|
}, 8, ["title"]),
|
|
1624
|
-
R(i(
|
|
1624
|
+
R(i(Ae), {
|
|
1625
1625
|
id: "createdDate",
|
|
1626
1626
|
title: i(s)("ASSETS_MANAGER.TABLE.HEADER.CREATED_DATE"),
|
|
1627
1627
|
width: "25%",
|
|
@@ -1632,7 +1632,7 @@ const ho = /* @__PURE__ */ W({
|
|
|
1632
1632
|
_: 1
|
|
1633
1633
|
}, 8, ["selection", "items", "reorderable-rows", "selection-mode", "row-actions", "empty-state"])
|
|
1634
1634
|
], 32)), [
|
|
1635
|
-
[i(
|
|
1635
|
+
[i(Ha), l.value]
|
|
1636
1636
|
]),
|
|
1637
1637
|
U("input", {
|
|
1638
1638
|
ref_key: "uploader",
|
|
@@ -1647,19 +1647,27 @@ const ho = /* @__PURE__ */ W({
|
|
|
1647
1647
|
_: 1
|
|
1648
1648
|
}, 8, ["title", "toolbar-items"]));
|
|
1649
1649
|
}
|
|
1650
|
-
}),
|
|
1650
|
+
}), Ro = Lo, _o = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1651
1651
|
__proto__: null,
|
|
1652
|
-
AssetsManager:
|
|
1653
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1654
|
-
function
|
|
1655
|
-
|
|
1656
|
-
|
|
1657
|
-
|
|
1652
|
+
AssetsManager: Ro
|
|
1653
|
+
}, Symbol.toStringTag, { value: "Module" })), Io = ft({ blades: _o }), tt = "redirectAfterLogin";
|
|
1654
|
+
function na(e) {
|
|
1655
|
+
sessionStorage.setItem(tt, e);
|
|
1656
|
+
}
|
|
1657
|
+
function vo() {
|
|
1658
|
+
const e = sessionStorage.getItem(tt);
|
|
1659
|
+
return sessionStorage.removeItem(tt), e;
|
|
1660
|
+
}
|
|
1661
|
+
const Rt = k("connection-status"), _t = "vc-framework-offline-status", It = b(!1), vt = b(!0);
|
|
1662
|
+
function sa() {
|
|
1663
|
+
if (!It.value && typeof window < "u") {
|
|
1664
|
+
It.value = !0;
|
|
1665
|
+
const { isOnline: e } = Va();
|
|
1658
1666
|
ae(
|
|
1659
1667
|
e,
|
|
1660
1668
|
(t) => {
|
|
1661
|
-
|
|
1662
|
-
notificationId:
|
|
1669
|
+
vt.value = t, t ? (Rt.info("Network connection restored"), j.remove(_t), document.documentElement.classList.remove("vc-offline")) : (Rt.warn("Network connection lost"), j.warning("You are currently offline. Some features may be unavailable.", {
|
|
1670
|
+
notificationId: _t,
|
|
1663
1671
|
timeout: !1
|
|
1664
1672
|
}), document.documentElement.classList.add("vc-offline"));
|
|
1665
1673
|
},
|
|
@@ -1667,90 +1675,91 @@ function aa() {
|
|
|
1667
1675
|
);
|
|
1668
1676
|
}
|
|
1669
1677
|
return {
|
|
1670
|
-
isOnline: ke(
|
|
1678
|
+
isOnline: ke(vt)
|
|
1671
1679
|
};
|
|
1672
1680
|
}
|
|
1673
|
-
const Ze = k("slow-network"),
|
|
1681
|
+
const Ze = k("slow-network"), wo = 1e4, Co = ["slow-2g", "2g"];
|
|
1674
1682
|
let je = null;
|
|
1675
|
-
const
|
|
1683
|
+
const oa = "vc-slow-network", Po = 3e3;
|
|
1676
1684
|
let te = null;
|
|
1677
|
-
function vt() {
|
|
1678
|
-
document.documentElement.classList.add(na);
|
|
1679
|
-
}
|
|
1680
1685
|
function wt() {
|
|
1681
|
-
document.documentElement.classList.
|
|
1686
|
+
document.documentElement.classList.add(oa);
|
|
1687
|
+
}
|
|
1688
|
+
function Ct() {
|
|
1689
|
+
document.documentElement.classList.remove(oa);
|
|
1682
1690
|
}
|
|
1683
|
-
const
|
|
1684
|
-
function
|
|
1691
|
+
const Pt = b(!1), Ve = b(0), at = b(!1), Ue = /* @__PURE__ */ new Map(), nt = /* @__PURE__ */ new Set(), Xe = v(() => Ve.value > 0 || at.value);
|
|
1692
|
+
function bo(e) {
|
|
1685
1693
|
const t = setTimeout(() => {
|
|
1686
|
-
Ve.value++, Ue.delete(e),
|
|
1687
|
-
},
|
|
1694
|
+
Ve.value++, Ue.delete(e), nt.add(e);
|
|
1695
|
+
}, wo);
|
|
1688
1696
|
Ue.set(e, t);
|
|
1689
1697
|
}
|
|
1690
|
-
function
|
|
1698
|
+
function No(e) {
|
|
1691
1699
|
const t = Ue.get(e);
|
|
1692
|
-
t != null ? (clearTimeout(t), Ue.delete(e)) :
|
|
1700
|
+
t != null ? (clearTimeout(t), Ue.delete(e)) : nt.has(e) && (Ve.value = Math.max(0, Ve.value - 1), nt.delete(e));
|
|
1693
1701
|
}
|
|
1694
|
-
function
|
|
1695
|
-
if (!
|
|
1696
|
-
|
|
1702
|
+
function ra() {
|
|
1703
|
+
if (!Pt.value && typeof window < "u") {
|
|
1704
|
+
Pt.value = !0;
|
|
1697
1705
|
const e = navigator.connection;
|
|
1698
1706
|
e && (je = () => {
|
|
1699
|
-
const a =
|
|
1700
|
-
a !==
|
|
1707
|
+
const a = Co.includes(e.effectiveType);
|
|
1708
|
+
a !== at.value && Ze.info(`Connection type: ${e.effectiveType} → ${a ? "slow" : "normal"}`), at.value = a;
|
|
1701
1709
|
}, e.addEventListener("change", je), je());
|
|
1702
|
-
const { isOnline: t } =
|
|
1710
|
+
const { isOnline: t } = sa();
|
|
1703
1711
|
ae(Xe, (a) => {
|
|
1704
|
-
a ? (te != null && (clearTimeout(te), te = null), t.value && (Ze.info("Slow network detected"),
|
|
1705
|
-
Ze.info("Network recovered"),
|
|
1706
|
-
},
|
|
1712
|
+
a ? (te != null && (clearTimeout(te), te = null), t.value && (Ze.info("Slow network detected"), wt())) : te = setTimeout(() => {
|
|
1713
|
+
Ze.info("Network recovered"), Ct(), te = null;
|
|
1714
|
+
}, Po);
|
|
1707
1715
|
}), ae(t, (a) => {
|
|
1708
|
-
a ? Xe.value &&
|
|
1716
|
+
a ? Xe.value && wt() : (te != null && (clearTimeout(te), te = null), Ct());
|
|
1709
1717
|
});
|
|
1710
1718
|
}
|
|
1711
1719
|
return {
|
|
1712
1720
|
isSlowNetwork: Xe,
|
|
1713
|
-
trackRequest:
|
|
1714
|
-
untrackRequest:
|
|
1721
|
+
trackRequest: bo,
|
|
1722
|
+
untrackRequest: No
|
|
1715
1723
|
};
|
|
1716
1724
|
}
|
|
1717
|
-
const
|
|
1718
|
-
function
|
|
1725
|
+
const de = k("interceptors"), Do = /(^|\/)(login|signin|sign-in|account\/login|connect\/authorize)(\/|$)/i, yo = /* @__PURE__ */ new Set(["GET", "HEAD"]);
|
|
1726
|
+
function Mo(e, t) {
|
|
1719
1727
|
return (t?.method ?? (e instanceof Request ? e.method : void 0) ?? "GET").toUpperCase();
|
|
1720
1728
|
}
|
|
1721
|
-
function
|
|
1729
|
+
function Bo(e) {
|
|
1722
1730
|
let t;
|
|
1723
1731
|
try {
|
|
1724
1732
|
t = new URL(e.url, window.location.origin).pathname;
|
|
1725
1733
|
} catch {
|
|
1726
1734
|
return !1;
|
|
1727
1735
|
}
|
|
1728
|
-
if (
|
|
1736
|
+
if (Do.test(t))
|
|
1729
1737
|
return !0;
|
|
1730
1738
|
const a = e.headers?.get?.("content-type") ?? "";
|
|
1731
1739
|
return e.redirected === !0 && a.includes("text/html");
|
|
1732
1740
|
}
|
|
1733
|
-
function
|
|
1741
|
+
function ko(e) {
|
|
1734
1742
|
if (window.fetch.__vcInterceptorsInstalled__)
|
|
1735
|
-
return
|
|
1736
|
-
const { fetch: a } = window, { signOut: n, isAuthenticated: s } = se(), { trackRequest: o, untrackRequest: r } =
|
|
1743
|
+
return de.warn("registerInterceptors called twice — ignoring second install"), window.fetch;
|
|
1744
|
+
const { fetch: a } = window, { signOut: n, isAuthenticated: s } = se(), { trackRequest: o, untrackRequest: r } = ra();
|
|
1737
1745
|
let l = 0;
|
|
1738
|
-
const
|
|
1746
|
+
const c = new Fn(void 0, { fetch: (E, d) => a(E, d) });
|
|
1739
1747
|
let u = null;
|
|
1740
1748
|
function f() {
|
|
1741
|
-
return u ??=
|
|
1742
|
-
|
|
1749
|
+
return u ??= c.getCurrentUser().then(
|
|
1750
|
+
// The VirtoCommerce platform answers a caller without a session with 200 and an empty user, not a 401.
|
|
1751
|
+
(E) => E?.userName ? !0 : (de.warn("Session check: currentuser returned no user, treating the session as expired"), !1),
|
|
1743
1752
|
// Only a 401 answers the question. Anything else — an unreachable platform, a 5xx — says
|
|
1744
1753
|
// nothing about the session, and signing out on it would be a guess.
|
|
1745
|
-
(E) => !(
|
|
1754
|
+
(E) => !(Wn.isApiException(E) && E.status === 401)
|
|
1746
1755
|
).finally(() => {
|
|
1747
1756
|
u = null;
|
|
1748
1757
|
}), u;
|
|
1749
1758
|
}
|
|
1750
1759
|
const m = (async (...E) => {
|
|
1751
1760
|
if (window.__DEMO_MODE__)
|
|
1752
|
-
return
|
|
1753
|
-
E[0] === "/api/platform/security/login" ?
|
|
1761
|
+
return de.warn("CANCELLED FETCH WHILE IN __DEMO_MODE__: ", ...E), de.warn("Please logout and add APP_PLATFORM_URL into .env file of your application to enable API calls"), new Promise((d) => {
|
|
1762
|
+
E[0] === "/api/platform/security/login" ? d({
|
|
1754
1763
|
status: 200,
|
|
1755
1764
|
text: async () => JSON.stringify({ succeeded: !0 })
|
|
1756
1765
|
}) : E[0] === "/api/platform/security/currentuser" ? (j.warning(
|
|
@@ -1759,16 +1768,16 @@ function yo(e) {
|
|
|
1759
1768
|
{
|
|
1760
1769
|
timeout: 1e4
|
|
1761
1770
|
}
|
|
1762
|
-
),
|
|
1771
|
+
), d({
|
|
1763
1772
|
status: 200,
|
|
1764
1773
|
text: async () => JSON.stringify({ id: "demo_user_id", userName: "DEMO_USER" })
|
|
1765
|
-
})) :
|
|
1774
|
+
})) : d({
|
|
1766
1775
|
status: 200,
|
|
1767
1776
|
text: async () => JSON.stringify({})
|
|
1768
1777
|
});
|
|
1769
1778
|
});
|
|
1770
1779
|
{
|
|
1771
|
-
let
|
|
1780
|
+
let d = function(A) {
|
|
1772
1781
|
const g = typeof A == "string" ? A : A instanceof Request ? A.url : A.toString();
|
|
1773
1782
|
try {
|
|
1774
1783
|
const L = new URL(g, window.location.origin);
|
|
@@ -1786,26 +1795,26 @@ function yo(e) {
|
|
|
1786
1795
|
};
|
|
1787
1796
|
const [h, O] = E;
|
|
1788
1797
|
async function _(A, g = !1) {
|
|
1789
|
-
!A && !g || Ne() || !s.value || !g && await f() || Ne() || (
|
|
1790
|
-
|
|
1798
|
+
!A && !g || Ne() || !s.value || !g && await f() || Ne() || (Gn(), n().catch((L) => {
|
|
1799
|
+
de.error("signOut failed after session expiry:", L);
|
|
1791
1800
|
}).finally(() => {
|
|
1792
|
-
|
|
1801
|
+
Vo(e), j.error(x.global.t("CORE.ERRORS.SESSION_EXPIRED"));
|
|
1793
1802
|
}));
|
|
1794
1803
|
}
|
|
1795
|
-
if (!
|
|
1804
|
+
if (!d(h)) {
|
|
1796
1805
|
if (!S(h))
|
|
1797
1806
|
return a(...E);
|
|
1798
1807
|
const A = await a(...E);
|
|
1799
1808
|
return await _(A.status === 401), A;
|
|
1800
1809
|
}
|
|
1801
1810
|
if (!navigator.onLine)
|
|
1802
|
-
return
|
|
1803
|
-
const w = String(++l), C =
|
|
1811
|
+
return de.warn("Request blocked: browser is offline", h), Promise.reject(new Error(x.global.t("CORE.ERRORS.NETWORK_UNAVAILABLE")));
|
|
1812
|
+
const w = String(++l), C = yo.has(Mo(h, O));
|
|
1804
1813
|
C && o(w);
|
|
1805
1814
|
try {
|
|
1806
|
-
const A = await a(...E), g = A.ok &&
|
|
1815
|
+
const A = await a(...E), g = A.ok && Bo(A);
|
|
1807
1816
|
if (await _(A.status === 401, g), g && Ne())
|
|
1808
|
-
throw new
|
|
1817
|
+
throw new Hn();
|
|
1809
1818
|
return A;
|
|
1810
1819
|
} finally {
|
|
1811
1820
|
C && r(w);
|
|
@@ -1814,109 +1823,109 @@ function yo(e) {
|
|
|
1814
1823
|
});
|
|
1815
1824
|
return m.__vcInterceptorsInstalled__ = !0, window.fetch = m, m;
|
|
1816
1825
|
}
|
|
1817
|
-
function
|
|
1818
|
-
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 + "/";
|
|
1826
|
+
function Vo(e) {
|
|
1827
|
+
e && e.getRoutes().some((t) => t.path === "/login" || t.name === "Login") ? e.currentRoute.value.path !== "/login" && (na(e.currentRoute.value.fullPath), e.push("/login")) : window.location.href = window.location.origin + "/";
|
|
1819
1828
|
}
|
|
1820
|
-
async function
|
|
1829
|
+
async function Uo(e, t) {
|
|
1821
1830
|
if (e.meta.root === !0) {
|
|
1822
1831
|
if (t.authState.value === "unknown" && await t.loadUser(), t.authState.value === "unknown") {
|
|
1823
1832
|
t.onSessionCheckFailed();
|
|
1824
1833
|
return;
|
|
1825
1834
|
}
|
|
1826
1835
|
if (t.authState.value === "anonymous")
|
|
1827
|
-
return
|
|
1828
|
-
}
|
|
1829
|
-
}
|
|
1830
|
-
const
|
|
1831
|
-
Please log in again or contact the administrator for assistance.`, NETWORK_UNAVAILABLE: "Network unavailable. Please check your connection.", SESSION_CHECK_FAILED: "Could not verify your session. Please try again." }, THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_ALL: "Clear all" } }, ra = { NAVIGATION_ARIA_LABEL: "Primary navigation", SIDEBAR: { SEARCH_PLACEHOLDER: "Search keyword" }, USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Settings", CHANGE_PASSWORD: "Change password", PROFILE: "Profile", LOGOUT: "Log Out" } }, ia = { CONTROLS: { CLEAR: "Clear", CLEAR_ALL: "Clear all", CLOSE: "Close", TOGGLE_DROPDOWN: "Toggle dropdown", SEARCH_OPTIONS: "Search options", SELECT_OPTION: "Select option", CLEAR_SELECTION: "Clear selection", COPY_TO_CLIPBOARD: "Copy to clipboard", DELETE_ITEM: "Delete item", SHOW_PASSWORD: "Show password", HIDE_PASSWORD: "Hide password" }, ATOMS: { VC_IMAGE: { LABEL: "Image" }, VC_BANNER: { SHOW_MORE: "Show more", SHOW_LESS: "Show less" }, VC_SCROLLABLE_CONTAINER: { LABEL: "Scrollable content" }, VC_VIDEO: { NO_SOURCE: "No video source" } }, MOLECULES: { VC_SELECT: { CLICK_TO_SELECT: "Click to select...", LOADING: "Loading...", LOADING_MORE: "Loading more...", NO_OPTIONS: "No options" }, VC_FILE_UPLOAD: { DRAG_HERE: "Drag and drop file here or", BROWSE: "browse your files", TAP_TO_UPLOAD: "Tap to select files", UPLOADING: "Uploading..." }, VC_INPUT: { DATE_PLACEHOLDER: "Select date", DATE_TIME_PLACEHOLDER: "Select date and time" }, VC_PAGINATION: { JUMP: "Jump to page:", LABEL: "Pagination", FIRST: "First page", PREVIOUS: "Previous page", NEXT: "Next page", LAST: "Last page", PAGE: "Page {page}" }, VC_MULTIVALUE: { ADD: "Add" }, VC_BREADCRUMBS: { BACK: "Back", LABEL: "Breadcrumb", SHOW_MORE: "Show more breadcrumbs" }, VC_COLOR_INPUT: { CLEAR: "Clear color" }, VC_DATE_PICKER: { CLEAR: "Clear date", ARIA: { TOGGLE_OVERLAY: "Show or hide the picker", MENU: "Date picker menu", INPUT: "Date input", OPEN_TIME_PICKER: "Open time picker", CLOSE_TIME_PICKER: "Close time picker", INCREMENT: "Increase {unit}", DECREMENT: "Decrease {unit}", OPEN_TIME_OVERLAY: "Choose {unit}", AM_PM: "Switch AM/PM", OPEN_YEARS: "Choose a year", OPEN_MONTHS: "Choose a month", NEXT_MONTH: "Next month", PREV_MONTH: "Previous month", NEXT_YEAR: "Next year", PREV_YEAR: "Previous year", CALENDAR_ICON: "Open calendar", TIME_PICKER: "Time picker", MONTH_PICKER: "Month picker", MONTH_PICKER_OVERLAY: "Month list", YEAR_PICKER: "Year picker", YEAR_PICKER_OVERLAY: "Year list", TIME_OVERLAY: "{unit} picker", UNITS: { hours: "hours", minutes: "minutes", seconds: "seconds" } } }, VC_SLIDER: { PREVIOUS: "Previous slide", NEXT: "Next slide" }, VC_TOAST: { DISMISS: "Dismiss notification" }, VC_EDITOR: { TOOLBAR: { LABEL: "Text formatting", BOLD: "Bold", ITALIC: "Italic", UNDERLINE: "Underline", STRIKETHROUGH: "Strikethrough", HEADING_1: "Heading 1", HEADING_2: "Heading 2", HEADING_3: "Heading 3", BULLET_LIST: "Bullet list", NUMBERED_LIST: "Numbered list", BLOCKQUOTE: "Blockquote", INSERT_LINK: "Insert link", INSERT_IMAGE: "Insert image", INSERT_TABLE: "Insert table", DELETE_TABLE: "Delete table", ADD_COLUMN_BEFORE: "Add column before", ADD_COLUMN_AFTER: "Add column after", ADD_ROW_BEFORE: "Add row before", ADD_ROW_AFTER: "Add row after", DELETE_COLUMN: "Delete column", DELETE_ROW: "Delete row" }, FONT_SIZE: "Font size", VIEW: { PREVIEW: "Preview", SPLIT: "Side-by-side view", SOURCE: "Source code" } } }, ORGANISMS: { VC_DYNAMIC_PROPERTY: { ADD: "Add value", VALUE_TYPE: { COLOR: { PLACEHOLDER: "Color code", NAME: "Color name" } } }, VC_GALLERY: { INTERNAL: { VC_GALLERY_ITEM: { FULLSCREEN: "Fullscreen", EDIT: "Edit", DELETE: "Delete" }, VC_GALLERY_PREVIEW: { COPY_IMAGE_LINK: "copy image link" }, VC_GALLERY_FILMSTRIP: { PREVIOUS: "Previous images", NEXT: "Next images" } }, GALLERY_IS_EMPTY: "Gallery is empty", DROP_TO_UPLOAD: "Drop to upload", DRAG_IMAGES_HERE: "Drag images here or", BROWSE_IMAGES: "browse your files", UPLOAD: "Upload", OR_DROP_HERE: "or drop here", SHOW_ALL: "Expand ({count})", COLLAPSE: "Collapse" }, VC_APP: { NOTIFICATIONS: "Notifications", OPEN_MENU: "Open menu", CLOSE_MENU: "Close menu", INTERNAL: { VC_APP_BAR: { BACK: "Back" }, MOBILE_LAYOUT: { TAB_MENU: "Menu", TAB_HUB: "Hub" }, APP_HUB: { SEARCH_PLACEHOLDER: "Search applications and widgets", APPLICATIONS: "Applications", WIDGETS: "Widgets", NO_APPLICATIONS: "No applications found", NO_WIDGETS: "No widgets found", LIST_VIEW: "List view", TILE_VIEW: "Tile view" } } }, BLADE_NAVIGATION: { ARIA_LABEL: "Blade navigation" }, VC_BLADE: { SEE_DETAILS: "See details", UNSAVED_CHANGES: "Has unsaved changes", ERROR_POPUP: { TITLE: "Error details", COPY_ERROR: "copy content", CLOSE: "dismiss" }, MORE: "More", TOOLBAR: "Toolbar actions", CLOSE_MENU: "Close menu", PANEL: "Panel" }, VC_BLADE_HEADER: { UNSAVED_CHANGES: "Has unsaved changes", NO_CHANGES: "No unsaved changes", CLOSE: "Close", MAXIMIZE: "Maximize", RESTORE: "Restore" }, VC_TABLE: { SELECT_ROW: "Select row", SELECT_ALL_ROWS: "Select all rows", EXPAND_ROW: "Toggle row details", CURRENT_PAGE_SELECTED: "All items in this page are selected.", SELECT_ALL: "Select all items", ALL_SELECTED: "All items are selected.", ALL_SELECTED_COUNT: "All {count} items selected", SELECT_ALL_COUNT: "Select all {count} items", CANCEL: "Clear selection", ALL_ACTIONS: "All actions", MORE: "More", ALL_FILTERS: "Filters", SEARCH: "Search...", EMPTY: "List is empty.", EMPTY_TITLE: "No data", EMPTY_DESCRIPTION: "No items to display", NOT_FOUND: "Nothing found.", NOT_FOUND_TITLE: "No results found", NOT_FOUND_DESCRIPTION: "Try adjusting your search or filters", TOTALS: "Totals:", ACTIONS: "Actions", NOT_SET: "Not set", SELECTED: "Selected", SELECT_ALL_TRUNCATED: "Select all", PULL_TO_REFRESH: "Pull to refresh", RELEASE_TO_REFRESH: "Release to refresh", REFRESHING: "Refreshing...", ADD_ROW: "Add row", LOADING: "Loading...", PAGE_INFO: "Page {current} of {total}", COLUMN_FILTER: { APPLY: "Apply", CLEAR: "Clear", FROM: "From", TO: "To", TITLE: "Filter column" }, GLOBAL_FILTERS: { BUTTON: "Filters", TITLE: "Filters" }, COLUMN_SWITCHER: { BUTTON: "Columns", TITLE: "Show/Hide Columns", SHOW_ALL: "Show All", RESET: "Reset" }, OF: "of", PAGE: "Page" }, VC_POPUP: { OK: "OK", CONFIRM: "Confirm", CANCEL: "Cancel", CLOSE: "Close", TITLE: { CONFIRMATION: "Confirmation", ERROR: "Error", INFO: "Info" } } }, THEME_SELECTOR: { THEME_CHANGED: " theme", THEME_SELECTOR: "Theme" }, CHANGE_PASSWORD: { TITLE: "Change password", TITLE_FORCED: "Password expired", SUBTITLE_FORCED: "Please set a new password", FORCED: { LABEL: "Your password has expired. You must change the password to continue using the manager." }, CURRENT_PASSWORD: { LABEL: "Current password", PLACEHOLDER: "Enter password" }, NEW_PASSWORD: { LABEL: "New password", PLACEHOLDER: "Enter password" }, CONFIRM_PASSWORD: { LABEL: "Confirm password", PLACEHOLDER: "Confirm password" }, CANCEL: "Cancel", SAVE: "Update", ERRORS: { "Repeat-password": "Passwords are not same", "Equal-passwords": "The new password must not match the old one", "Invalid-token": "Token is invalid or expired", "Password-too-weak": "New password does not comply one or more password security policies:", PasswordTooShort: "Passwords too short", PasswordRequiresUniqueChars: "Passwords must use different characters", PasswordRequiresLower: "Passwords must have at least one lowercase ('a'-'z')", PasswordRequiresUpper: "Passwords must have at least one uppercase ('A'-'Z')", PasswordRequiresDigit: "Passwords must have at least one digit ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwords must have at least one non alphanumeric character", "Incorrect password.": "You entered an incorrect password", "You have used this password in the past. Choose another one.": "You have used this password in the past. Choose another one." } }, APP_HUB: { TITLE: "Applications" }, NOTIFICATION_DROPDOWN: { TITLE: "Notifications", EMPTY: "No notifications yet" }, LANGUAGE_SELECTOR: { TITLE: "Language" }, FILTERS: { APPLY: "Apply filters", RESET: "Reset" } }, la = { TITLE: "You're invited!", SUBTITLE: "Set a password for your account", FIELDS: { EMAIL: { LABEL: "Email" }, PASSWORD: { LABEL: "New password", PLACEHOLDER: "Enter password" }, CONFIRM_PASSWORD: { LABEL: "Confirm password", PLACEHOLDER: "Confirm password" } }, ACCEPT_INVITATION: "Activate", ERRORS: { "Repeat-password": "Passwords are not same", "Invalid-token": "Token is invalid or expired", "Password-too-weak": "New password does not comply one or more password security policies:", PasswordTooShort: "Passwords too short", PasswordRequiresUniqueChars: "Passwords must use different characters", PasswordRequiresLower: "Passwords must have at least one lowercase ('a'-'z')", PasswordRequiresUpper: "Passwords must have at least one uppercase ('A'-'Z')", PasswordRequiresDigit: "Passwords must have at least one digit ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwords must have at least one non alphanumeric character", recentPasswordUsed: "You have used this password in the past. Choose another one." } }, ua = { TITLE: "Welcome back", SUBTITLE: "Sign in to your account to continue", FIELDS: { LOGIN: { LABEL: "Email", PLACEHOLDER: "Enter your email" }, PASSWORD: { LABEL: "Password", PLACEHOLDER: "Enter your password" }, REMEMBER_ME: { LABEL: "Remember me" }, FORGOT_PASSWORD: { TITLE: "Forgot password", LABEL: "Email", PLACEHOLDER: "Please enter your email" } }, FORGOT_PASSWORD_BUTTON: "Forgot password?", BUTTON: "Sign in", OR: "or", FORGOT_BUTTON: "Submit", BACK_BUTTON: "Back", BUTTON_OK: "Ok", RESET_EMAIL_TEXT: "We will send you an email with instructions on how to reset your password.", RESET_EMAIL_SENT: "Email with instructions has been sent to you.", SSO_NO_PROVIDERS_ERROR: "SSO authentication is not configured. Please contact your administrator.", ERRORS: { INVALID_CREDENTIALS: "The login or password is incorrect.", AUTH_WITH_CODE: "Authentication error (code: {code}).", AUTH_GENERIC: "Authentication error: {detail}" } }, da = { TITLE: "Reset your password", SUBTITLE: "Enter your email and we'll send you a reset link", FIELDS: { EMAIL: { LABEL: "Email", PLACEHOLDER: "Enter your email address" } }, SEND_BUTTON: "Send reset link", BACK_TO_LOGIN: "Back to sign in", SUCCESS_TITLE: "Check your email", SUCCESS_TEXT: "We sent a reset link to {email}" }, ca = { TITLE: "Set new password", SUBTITLE: "Enter your new password below", FIELDS: { PASSWORD: { LABEL: "New password", PLACEHOLDER: "Enter password" }, CONFIRM_PASSWORD: { LABEL: "Confirm password", PLACEHOLDER: "Confirm password" } }, SAVE_PASSWORD: "Save", ERRORS: { "Repeat-password": "Passwords are not same", "Invalid-token": "Token is invalid or expired", "Password-too-weak": "New password does not comply one or more password security policies:", PasswordTooShort: "Passwords too short", PasswordRequiresUniqueChars: "Passwords must use different characters", PasswordRequiresLower: "Passwords must have at least one lowercase ('a'-'z')", PasswordRequiresUpper: "Passwords must have at least one uppercase ('A'-'Z')", PasswordRequiresDigit: "Passwords must have at least one digit ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwords must have at least one non alphanumeric character", recentPasswordUsed: "You have used this password in the past. Choose another one." } }, Ea = { TITLE: "Assets", TOOLBAR: { SAVE: "Save", REFRESH: "Refresh", ADD: "Add", DELETE: "Delete selected" }, EMPTY: { NO_ASSETS: "No assets", UPLOAD_ASSETS: "Drag & drop assets here or click 'Upload' button", UPLOAD: "Upload" }, TABLE: { HEADER: { IMAGE: "Img", NAME: "Name", SIZE: "Size", SORT_ORDER: "Sort order", CREATED_DATE: "Created date" }, ACTIONS: { DELETE: "Delete", EDIT: "Edit" } } }, fa = { PAGES: { DETAILS: { SUBTITLE: "Asset edit", TOOLBAR: { SAVE: "Save", DELETE: "Delete" }, FIELDS: { SIZE: "Size", CREATED_DATE: "Created date", URL: "Url", COPY: "Copy link", NAME: { TITLE: "Asset name", PLACEHOLDER: "Enter asset name" }, ALT: { TITLE: "Image alternative text", PLACEHOLDER: "Enter image alt text", TOOLTIP: "This text will be displayed in case of disabled/unloaded image on the page" }, DESCRIPTION: { TITLE: "Meta description", PLACEHOLDER: "Enter meta description" } } } } }, ma = { _default: "The {field} is not valid", alpha: "The {field} field may only contain alphabetic characters", alpha_num: "The {field} field may only contain alpha-numeric characters", alpha_dash: "The {field} field may contain alpha-numeric characters as well as dashes and underscores", alpha_spaces: "The {field} field may only contain alphabetic characters as well as spaces", between: "The {field} field must be between 0:{min} and 1:{max}", confirmed: "The {field} field confirmation does not match", digits: "The {field} field must be numeric and exactly contain 0:{length} digits", dimensions: "The {field} field must be 0:{width} pixels by 1:{height} pixels", email: "The {field} field must be a valid email", not_one_of: "The {field} field is not a valid value", ext: "The {field} field is not a valid file", image: "The {field} field must be an image", integer: "The {field} field must be an integer", length: "The {field} field must be 0:{length} long", max_value: "The {field} field must be 0:{max} or less", max: "The {field} field may not be greater than 0:{length} characters", mimes: "The {field} field must have a valid file type", min_value: "The {field} field must be 0:{min} or more", min: "The {field} field must be at least 0:{length} characters", numeric: "The {field} field may only contain numeric characters", one_of: "The {field} field is not a valid value", regex: "The {field} field format is invalid", required_if: "The {field} field is required", required: "The {field} field is required", size: "The {field} field size must be less than 0:{size}KB", url: "The {field} field is not a valid URL", min_dimensions: { error: "Image dimensions must be greater than {height}*{width}", not_image_error: "Not image file" }, file_weight: "File size must be maximum {size} kb", before: "End date must be earlier than start date", after: "End date must be later than start date", bigint: "Unsupported number" }, ga = { ACCESS_RESTRICTED: "Access restricted" }, Sa = { LOADING: "Loading Virto OZ..." }, Aa = { AGENDA: "Agenda", ALL_DAY: "All day", CANCEL: "Cancel", CLOSE: "Close", COLOR: "Color", COLOR_DEFAULT: "Default color", COLOR_CUSTOM: "Custom color", COLOR_BLUE: "Blue", COLOR_GREEN: "Green", COLOR_AMBER: "Amber", COLOR_RED: "Red", COLOR_PURPLE: "Purple", COLOR_PINK: "Pink", COLOR_TEAL: "Teal", COLOR_SLATE: "Slate", DAY: "Day", DAY_N_OF_M: "Day {n} of {total}", DELETE: "Delete", DELETE_CONFIRM_BODY: `Delete "{title}"? This can't be undone.`, DELETE_CONFIRM_TITLE: "Delete event", EDIT: "Edit", EDIT_EVENT: "Edit event", EMPTY: "No events in this range", EMPTY_HINT: "No events yet. Click a day to add one.", END: "End", LOADING: "Loading events…", MORE: "+{count} more", MORE_EVENTS: "More events", MONTH: "Month", MORE_OPTIONS: "More options", NEW_EVENT: "New event", NEXT: "Next", PREVIOUS: "Previous", RECUR_SCOPE_ALL: "All events", RECUR_SCOPE_BODY_DELETE: "This event is part of a recurring series. Do you want to delete only this event or all events in the series?", RECUR_SCOPE_BODY_EDIT: "This event is part of a recurring series. Do you want to edit only this event or all events in the series?", RECUR_SCOPE_THIS: "This event", RECUR_SCOPE_TITLE: "Recurring event", REPEAT: "Repeat", REPEAT_DAILY: "Daily", REPEAT_END: "Ends", REPEAT_END_COUNT: "After", REPEAT_END_NEVER: "Never", REPEAT_END_UNTIL: "On date", REPEAT_EVERY: "Repeat every", REPEAT_UNIT_DAYS: "day(s)", REPEAT_UNIT_WEEKS: "week(s)", REPEAT_UNIT_MONTHS: "month(s)", REPEAT_UNIT_YEARS: "year(s)", REPEAT_MONTHLY: "Monthly", REPEAT_NONE: "Does not repeat", REPEAT_OCCURRENCES: "occurrence(s)", REPEAT_ON: "Repeat on", REPEAT_WEEKLY: "Weekly", REPEAT_YEARLY: "Yearly", SAVE: "Save", START: "Start", TIMELINE: "Timeline", TIMELINE_DAY: "Timeline Day", TIMELINE_WEEK: "Timeline Week", TITLE: "Title", TODAY: "Today", WEEK: "Week", WORK_WEEK: "Work week", ZOOM_IN: "Zoom in", ZOOM_OUT: "Zoom out", EVENT_DETAILS: "Event details" }, pa = { no_options: "No options" }, ko = {
|
|
1832
|
-
CORE:
|
|
1833
|
-
SHELL:
|
|
1834
|
-
COMPONENTS:
|
|
1835
|
-
INVITATION:
|
|
1836
|
-
LOGIN:
|
|
1837
|
-
FORGOT_PASSWORD:
|
|
1838
|
-
PASSWORDRESET:
|
|
1839
|
-
ASSETS_MANAGER:
|
|
1840
|
-
ASSETS:
|
|
1841
|
-
messages:
|
|
1842
|
-
PERMISSION_MESSAGES:
|
|
1843
|
-
AI_AGENT:
|
|
1844
|
-
VC_SCHEDULER:
|
|
1845
|
-
common:
|
|
1846
|
-
},
|
|
1836
|
+
return na(e.fullPath), { name: "Login" };
|
|
1837
|
+
}
|
|
1838
|
+
}
|
|
1839
|
+
const ia = { ERRORS: { SESSION_EXPIRED: `Access Denied: Your session has expired or you do not have the necessary permissions.
|
|
1840
|
+
Please log in again or contact the administrator for assistance.`, NETWORK_UNAVAILABLE: "Network unavailable. Please check your connection.", SESSION_CHECK_FAILED: "Could not verify your session. Please try again." }, THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_ALL: "Clear all" } }, 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", ARIA: { TOGGLE_OVERLAY: "Show or hide the picker", MENU: "Date picker menu", INPUT: "Date input", OPEN_TIME_PICKER: "Open time picker", CLOSE_TIME_PICKER: "Close time picker", INCREMENT: "Increase {unit}", DECREMENT: "Decrease {unit}", OPEN_TIME_OVERLAY: "Choose {unit}", AM_PM: "Switch AM/PM", OPEN_YEARS: "Choose a year", OPEN_MONTHS: "Choose a month", NEXT_MONTH: "Next month", PREV_MONTH: "Previous month", NEXT_YEAR: "Next year", PREV_YEAR: "Previous year", CALENDAR_ICON: "Open calendar", TIME_PICKER: "Time picker", MONTH_PICKER: "Month picker", MONTH_PICKER_OVERLAY: "Month list", YEAR_PICKER: "Year picker", YEAR_PICKER_OVERLAY: "Year list", TIME_OVERLAY: "{unit} picker", UNITS: { hours: "hours", minutes: "minutes", seconds: "seconds" } } }, 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" }, REMEMBER_ME: { LABEL: "Remember me" }, FORGOT_PASSWORD: { TITLE: "Forgot password", LABEL: "Email", PLACEHOLDER: "Please enter your email" } }, FORGOT_PASSWORD_BUTTON: "Forgot password?", BUTTON: "Sign in", OR: "or", FORGOT_BUTTON: "Submit", BACK_BUTTON: "Back", BUTTON_OK: "Ok", RESET_EMAIL_TEXT: "We will send you an email with instructions on how to reset your password.", RESET_EMAIL_SENT: "Email with instructions has been sent to you.", SSO_NO_PROVIDERS_ERROR: "SSO authentication is not configured. Please contact your administrator.", ERRORS: { INVALID_CREDENTIALS: "The login or password is incorrect.", AUTH_WITH_CODE: "Authentication error (code: {code}).", AUTH_GENERIC: "Authentication error: {detail}" } }, 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" }, Fo = {
|
|
1841
|
+
CORE: ia,
|
|
1842
|
+
SHELL: la,
|
|
1843
|
+
COMPONENTS: ua,
|
|
1844
|
+
INVITATION: ca,
|
|
1845
|
+
LOGIN: da,
|
|
1846
|
+
FORGOT_PASSWORD: Ea,
|
|
1847
|
+
PASSWORDRESET: fa,
|
|
1848
|
+
ASSETS_MANAGER: ma,
|
|
1849
|
+
ASSETS: ga,
|
|
1850
|
+
messages: Sa,
|
|
1851
|
+
PERMISSION_MESSAGES: Aa,
|
|
1852
|
+
AI_AGENT: pa,
|
|
1853
|
+
VC_SCHEDULER: Ta,
|
|
1854
|
+
common: ha
|
|
1855
|
+
}, Ho = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1847
1856
|
__proto__: null,
|
|
1848
|
-
AI_AGENT:
|
|
1849
|
-
ASSETS:
|
|
1850
|
-
ASSETS_MANAGER:
|
|
1851
|
-
COMPONENTS:
|
|
1852
|
-
CORE:
|
|
1853
|
-
FORGOT_PASSWORD:
|
|
1854
|
-
INVITATION:
|
|
1855
|
-
LOGIN:
|
|
1856
|
-
PASSWORDRESET:
|
|
1857
|
-
PERMISSION_MESSAGES:
|
|
1858
|
-
SHELL:
|
|
1859
|
-
VC_SCHEDULER:
|
|
1860
|
-
common:
|
|
1861
|
-
default:
|
|
1862
|
-
messages:
|
|
1863
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1864
|
-
Bitte melden Sie sich erneut an oder wenden Sie sich an den Administrator.`, NETWORK_UNAVAILABLE: "Keine Netzwerkverbindung. Bitte prüfen Sie Ihre Verbindung.", SESSION_CHECK_FAILED: "Ihre Sitzung konnte nicht überprüft werden. Bitte versuchen Sie es erneut." }, THEMES: { LIGHT: "Hell", DARK: "Dunkel" }, NOTIFICATIONS: { CLEAR_ALL: "Alle löschen" } }, ha = { NAVIGATION_ARIA_LABEL: "Hauptnavigation", SIDEBAR: { SEARCH_PLACEHOLDER: "Suchbegriff" }, USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Einstellungen", CHANGE_PASSWORD: "Passwort ändern", PROFILE: "Profil", LOGOUT: "Abmelden" } }, Oa = { 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", ARIA: { TOGGLE_OVERLAY: "Auswahl ein- oder ausblenden", MENU: "Menü der Datumsauswahl", INPUT: "Datumseingabe", OPEN_TIME_PICKER: "Zeitauswahl öffnen", CLOSE_TIME_PICKER: "Zeitauswahl schließen", INCREMENT: "{unit} erhöhen", DECREMENT: "{unit} verringern", OPEN_TIME_OVERLAY: "{unit} wählen", AM_PM: "AM/PM umschalten", OPEN_YEARS: "Jahr wählen", OPEN_MONTHS: "Monat wählen", NEXT_MONTH: "Nächster Monat", PREV_MONTH: "Vorheriger Monat", NEXT_YEAR: "Nächstes Jahr", PREV_YEAR: "Vorheriges Jahr", CALENDAR_ICON: "Kalender öffnen", TIME_PICKER: "Zeitauswahl", MONTH_PICKER: "Monatsauswahl", MONTH_PICKER_OVERLAY: "Monatsliste", YEAR_PICKER: "Jahresauswahl", YEAR_PICKER_OVERLAY: "Jahresliste", TIME_OVERLAY: "Auswahl: {unit}", UNITS: { hours: "Stunden", minutes: "Minuten", seconds: "Sekunden" } } }, 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" } }, La = { TITLE: "Sie sind eingeladen!", SUBTITLE: "Legen Sie ein Passwort für Ihr Konto fest", FIELDS: { EMAIL: { LABEL: "E-Mail" }, PASSWORD: { LABEL: "Neues Passwort", PLACEHOLDER: "Passwort eingeben" }, CONFIRM_PASSWORD: { LABEL: "Passwort bestätigen", PLACEHOLDER: "Passwort bestätigen" } }, ACCEPT_INVITATION: "Aktivieren", ERRORS: { "Repeat-password": "Passwörter stimmen nicht überein", "Invalid-token": "Token ist ungültig oder abgelaufen", "Password-too-weak": "Neues Passwort erfüllt eine oder mehrere Passwort-Sicherheitsrichtlinien nicht:", PasswordTooShort: "Passwort zu kurz", PasswordRequiresUniqueChars: "Passwörter müssen unterschiedliche Zeichen verwenden", PasswordRequiresLower: "Passwörter müssen mindestens einen Kleinbuchstaben enthalten ('a'-'z')", PasswordRequiresUpper: "Passwörter müssen mindestens einen Großbuchstaben enthalten ('A'-'Z')", PasswordRequiresDigit: "Passwörter müssen mindestens eine Ziffer enthalten ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwörter müssen mindestens ein nicht-alphanumerisches Zeichen enthalten", recentPasswordUsed: "Sie haben dieses Passwort in der Vergangenheit verwendet. Wählen Sie ein anderes." } }, Ra = { TITLE: "Willkommen zurück", SUBTITLE: "Melden Sie sich bei Ihrem Konto an, um fortzufahren", FIELDS: { LOGIN: { LABEL: "E-Mail", PLACEHOLDER: "Geben Sie Ihre E-Mail-Adresse ein" }, PASSWORD: { LABEL: "Passwort", PLACEHOLDER: "Geben Sie Ihr Passwort ein" }, REMEMBER_ME: { LABEL: "Angemeldet bleiben" }, FORGOT_PASSWORD: { TITLE: "Passwort vergessen", LABEL: "E-Mail", PLACEHOLDER: "Bitte geben Sie Ihre E-Mail-Adresse ein" } }, FORGOT_PASSWORD_BUTTON: "Passwort vergessen?", BUTTON: "Anmelden", OR: "oder", FORGOT_BUTTON: "Absenden", BACK_BUTTON: "Zurück", BUTTON_OK: "Ok", RESET_EMAIL_TEXT: "Wir senden Ihnen eine E-Mail mit Anweisungen zum Zurücksetzen Ihres Passworts.", RESET_EMAIL_SENT: "Eine E-Mail mit Anweisungen wurde an Sie gesendet.", SSO_NO_PROVIDERS_ERROR: "SSO-Authentifizierung ist nicht konfiguriert. Bitte wenden Sie sich an Ihren Administrator.", ERRORS: { INVALID_CREDENTIALS: "Anmeldename oder Passwort ist falsch.", AUTH_WITH_CODE: "Authentifizierungsfehler (Code: {code}).", AUTH_GENERIC: "Authentifizierungsfehler: {detail}" } }, _a = { TITLE: "Passwort zurücksetzen", SUBTITLE: "Geben Sie Ihre E-Mail-Adresse ein und wir senden Ihnen einen Link zum Zurücksetzen", FIELDS: { EMAIL: { LABEL: "E-Mail", PLACEHOLDER: "Geben Sie Ihre E-Mail-Adresse ein" } }, SEND_BUTTON: "Link zum Zurücksetzen senden", BACK_TO_LOGIN: "Zurück zur Anmeldung", SUCCESS_TITLE: "Überprüfen Sie Ihre E-Mail", SUCCESS_TEXT: "Wir haben einen Link zum Zurücksetzen an {email} gesendet" }, Ia = { TITLE: "Neues Passwort festlegen", SUBTITLE: "Geben Sie unten Ihr neues Passwort ein", FIELDS: { PASSWORD: { LABEL: "Neues Passwort", PLACEHOLDER: "Passwort eingeben" }, CONFIRM_PASSWORD: { LABEL: "Passwort bestätigen", PLACEHOLDER: "Passwort bestätigen" } }, SAVE_PASSWORD: "Speichern", ERRORS: { "Repeat-password": "Passwörter stimmen nicht überein", "Invalid-token": "Token ist ungültig oder abgelaufen", "Password-too-weak": "Neues Passwort erfüllt eine oder mehrere Passwort-Sicherheitsrichtlinien nicht:", PasswordTooShort: "Passwort zu kurz", PasswordRequiresUniqueChars: "Passwörter müssen unterschiedliche Zeichen verwenden", PasswordRequiresLower: "Passwörter müssen mindestens einen Kleinbuchstaben enthalten ('a'-'z')", PasswordRequiresUpper: "Passwörter müssen mindestens einen Großbuchstaben enthalten ('A'-'Z')", PasswordRequiresDigit: "Passwörter müssen mindestens eine Ziffer enthalten ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwörter müssen mindestens ein nicht-alphanumerisches Zeichen enthalten", recentPasswordUsed: "Sie haben dieses Passwort in der Vergangenheit verwendet. Wählen Sie ein anderes." } }, va = { TITLE: "Assets", TOOLBAR: { SAVE: "Speichern", REFRESH: "Aktualisieren", ADD: "Hinzufügen", DELETE: "Ausgewählte löschen" }, EMPTY: { NO_ASSETS: "Keine Assets", UPLOAD_ASSETS: "Assets hier ablegen oder auf 'Hochladen' klicken", UPLOAD: "Hochladen" }, TABLE: { HEADER: { IMAGE: "Bild", NAME: "Name", SIZE: "Größe", SORT_ORDER: "Sortierreihenfolge", CREATED_DATE: "Erstellungsdatum" }, ACTIONS: { DELETE: "Löschen", EDIT: "Bearbeiten" } } }, wa = { PAGES: { DETAILS: { SUBTITLE: "Asset bearbeiten", TOOLBAR: { SAVE: "Speichern", DELETE: "Löschen" }, FIELDS: { SIZE: "Größe", CREATED_DATE: "Erstellungsdatum", URL: "URL", COPY: "Link kopieren", NAME: { TITLE: "Asset-Name", PLACEHOLDER: "Asset-Namen eingeben" }, ALT: { TITLE: "Alternativer Bildtext", PLACEHOLDER: "Alternativen Bildtext eingeben", TOOLTIP: "Dieser Text wird angezeigt, wenn das Bild auf der Seite deaktiviert oder nicht geladen ist" }, DESCRIPTION: { TITLE: "Meta-Beschreibung", PLACEHOLDER: "Meta-Beschreibung eingeben" } } } } }, Ca = { _default: "Das Feld {field} ist ungültig", alpha: "Das Feld {field} darf nur alphabetische Zeichen enthalten", alpha_num: "Das Feld {field} darf nur alphanumerische Zeichen enthalten", alpha_dash: "Das Feld {field} darf alphanumerische Zeichen sowie Bindestriche und Unterstriche enthalten", alpha_spaces: "Das Feld {field} darf nur alphabetische Zeichen und Leerzeichen enthalten", between: "Das Feld {field} muss zwischen 0:{min} und 1:{max} liegen", confirmed: "Die Bestätigung des Feldes {field} stimmt nicht überein", digits: "Das Feld {field} muss numerisch sein und genau 0:{length} Ziffern enthalten", dimensions: "Das Feld {field} muss 0:{width} Pixel breit und 1:{height} Pixel hoch sein", email: "Das Feld {field} muss eine gültige E-Mail-Adresse sein", not_one_of: "Das Feld {field} hat keinen gültigen Wert", ext: "Das Feld {field} ist keine gültige Datei", image: "Das Feld {field} muss ein Bild sein", integer: "Das Feld {field} muss eine ganze Zahl sein", length: "Das Feld {field} muss 0:{length} lang sein", max_value: "Das Feld {field} muss 0:{max} oder weniger sein", max: "Das Feld {field} darf nicht länger als 0:{length} Zeichen sein", mimes: "Das Feld {field} muss einen gültigen Dateityp haben", min_value: "Das Feld {field} muss 0:{min} oder mehr sein", min: "Das Feld {field} muss mindestens 0:{length} Zeichen lang sein", numeric: "Das Feld {field} darf nur numerische Zeichen enthalten", one_of: "Das Feld {field} hat keinen gültigen Wert", regex: "Das Format des Feldes {field} ist ungültig", required_if: "Das Feld {field} ist erforderlich", required: "Das Feld {field} ist erforderlich", size: "Die Größe des Feldes {field} muss kleiner als 0:{size}KB sein", url: "Das Feld {field} ist keine gültige URL", min_dimensions: { error: "Die Bildabmessungen müssen größer als {height}*{width} sein", not_image_error: "Keine Bilddatei" }, file_weight: "Die Dateigröße darf maximal {size} kb betragen", before: "Das Enddatum muss früher als das Startdatum sein", after: "Das Enddatum muss später als das Startdatum sein", bigint: "Nicht unterstützte Zahl" }, 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" }, Uo = {
|
|
1865
|
-
CORE:
|
|
1866
|
-
SHELL:
|
|
1867
|
-
COMPONENTS:
|
|
1868
|
-
INVITATION:
|
|
1869
|
-
LOGIN:
|
|
1870
|
-
FORGOT_PASSWORD:
|
|
1871
|
-
PASSWORDRESET:
|
|
1872
|
-
ASSETS_MANAGER:
|
|
1873
|
-
ASSETS:
|
|
1874
|
-
messages:
|
|
1875
|
-
PERMISSION_MESSAGES:
|
|
1876
|
-
AI_AGENT:
|
|
1877
|
-
VC_SCHEDULER:
|
|
1878
|
-
common:
|
|
1879
|
-
},
|
|
1857
|
+
AI_AGENT: pa,
|
|
1858
|
+
ASSETS: ga,
|
|
1859
|
+
ASSETS_MANAGER: ma,
|
|
1860
|
+
COMPONENTS: ua,
|
|
1861
|
+
CORE: ia,
|
|
1862
|
+
FORGOT_PASSWORD: Ea,
|
|
1863
|
+
INVITATION: ca,
|
|
1864
|
+
LOGIN: da,
|
|
1865
|
+
PASSWORDRESET: fa,
|
|
1866
|
+
PERMISSION_MESSAGES: Aa,
|
|
1867
|
+
SHELL: la,
|
|
1868
|
+
VC_SCHEDULER: Ta,
|
|
1869
|
+
common: ha,
|
|
1870
|
+
default: Fo,
|
|
1871
|
+
messages: Sa
|
|
1872
|
+
}, Symbol.toStringTag, { value: "Module" })), Oa = { ERRORS: { SESSION_EXPIRED: `Zugriff verweigert: Ihre Sitzung ist abgelaufen oder Sie verfügen nicht über die erforderlichen Berechtigungen.
|
|
1873
|
+
Bitte melden Sie sich erneut an oder wenden Sie sich an den Administrator.`, NETWORK_UNAVAILABLE: "Keine Netzwerkverbindung. Bitte prüfen Sie Ihre Verbindung.", SESSION_CHECK_FAILED: "Ihre Sitzung konnte nicht überprüft werden. Bitte versuchen Sie es erneut." }, THEMES: { LIGHT: "Hell", DARK: "Dunkel" }, NOTIFICATIONS: { CLEAR_ALL: "Alle löschen" } }, La = { 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", ARIA: { TOGGLE_OVERLAY: "Auswahl ein- oder ausblenden", MENU: "Menü der Datumsauswahl", INPUT: "Datumseingabe", OPEN_TIME_PICKER: "Zeitauswahl öffnen", CLOSE_TIME_PICKER: "Zeitauswahl schließen", INCREMENT: "{unit} erhöhen", DECREMENT: "{unit} verringern", OPEN_TIME_OVERLAY: "{unit} wählen", AM_PM: "AM/PM umschalten", OPEN_YEARS: "Jahr wählen", OPEN_MONTHS: "Monat wählen", NEXT_MONTH: "Nächster Monat", PREV_MONTH: "Vorheriger Monat", NEXT_YEAR: "Nächstes Jahr", PREV_YEAR: "Vorheriges Jahr", CALENDAR_ICON: "Kalender öffnen", TIME_PICKER: "Zeitauswahl", MONTH_PICKER: "Monatsauswahl", MONTH_PICKER_OVERLAY: "Monatsliste", YEAR_PICKER: "Jahresauswahl", YEAR_PICKER_OVERLAY: "Jahresliste", TIME_OVERLAY: "Auswahl: {unit}", UNITS: { hours: "Stunden", minutes: "Minuten", seconds: "Sekunden" } } }, 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" }, REMEMBER_ME: { LABEL: "Angemeldet bleiben" }, FORGOT_PASSWORD: { TITLE: "Passwort vergessen", LABEL: "E-Mail", PLACEHOLDER: "Bitte geben Sie Ihre E-Mail-Adresse ein" } }, FORGOT_PASSWORD_BUTTON: "Passwort vergessen?", BUTTON: "Anmelden", OR: "oder", FORGOT_BUTTON: "Absenden", BACK_BUTTON: "Zurück", BUTTON_OK: "Ok", RESET_EMAIL_TEXT: "Wir senden Ihnen eine E-Mail mit Anweisungen zum Zurücksetzen Ihres Passworts.", RESET_EMAIL_SENT: "Eine E-Mail mit Anweisungen wurde an Sie gesendet.", SSO_NO_PROVIDERS_ERROR: "SSO-Authentifizierung ist nicht konfiguriert. Bitte wenden Sie sich an Ihren Administrator.", ERRORS: { INVALID_CREDENTIALS: "Anmeldename oder Passwort ist falsch.", AUTH_WITH_CODE: "Authentifizierungsfehler (Code: {code}).", AUTH_GENERIC: "Authentifizierungsfehler: {detail}" } }, 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" }, Ma = { no_options: "Keine Optionen" }, Wo = {
|
|
1874
|
+
CORE: Oa,
|
|
1875
|
+
SHELL: La,
|
|
1876
|
+
COMPONENTS: Ra,
|
|
1877
|
+
INVITATION: _a,
|
|
1878
|
+
LOGIN: Ia,
|
|
1879
|
+
FORGOT_PASSWORD: va,
|
|
1880
|
+
PASSWORDRESET: wa,
|
|
1881
|
+
ASSETS_MANAGER: Ca,
|
|
1882
|
+
ASSETS: Pa,
|
|
1883
|
+
messages: ba,
|
|
1884
|
+
PERMISSION_MESSAGES: Na,
|
|
1885
|
+
AI_AGENT: Da,
|
|
1886
|
+
VC_SCHEDULER: ya,
|
|
1887
|
+
common: Ma
|
|
1888
|
+
}, Go = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1880
1889
|
__proto__: null,
|
|
1881
|
-
AI_AGENT:
|
|
1882
|
-
ASSETS:
|
|
1883
|
-
ASSETS_MANAGER:
|
|
1884
|
-
COMPONENTS:
|
|
1885
|
-
CORE:
|
|
1886
|
-
FORGOT_PASSWORD:
|
|
1887
|
-
INVITATION:
|
|
1888
|
-
LOGIN:
|
|
1889
|
-
PASSWORDRESET:
|
|
1890
|
-
PERMISSION_MESSAGES:
|
|
1891
|
-
SHELL:
|
|
1892
|
-
VC_SCHEDULER:
|
|
1893
|
-
common:
|
|
1894
|
-
default:
|
|
1895
|
-
messages:
|
|
1896
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1890
|
+
AI_AGENT: Da,
|
|
1891
|
+
ASSETS: Pa,
|
|
1892
|
+
ASSETS_MANAGER: Ca,
|
|
1893
|
+
COMPONENTS: Ra,
|
|
1894
|
+
CORE: Oa,
|
|
1895
|
+
FORGOT_PASSWORD: va,
|
|
1896
|
+
INVITATION: _a,
|
|
1897
|
+
LOGIN: Ia,
|
|
1898
|
+
PASSWORDRESET: wa,
|
|
1899
|
+
PERMISSION_MESSAGES: Na,
|
|
1900
|
+
SHELL: La,
|
|
1901
|
+
VC_SCHEDULER: ya,
|
|
1902
|
+
common: Ma,
|
|
1903
|
+
default: Wo,
|
|
1904
|
+
messages: ba
|
|
1905
|
+
}, Symbol.toStringTag, { value: "Module" })), xo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1897
1906
|
__proto__: null,
|
|
1898
|
-
de:
|
|
1899
|
-
en:
|
|
1907
|
+
de: Go,
|
|
1908
|
+
en: Ho
|
|
1900
1909
|
}, Symbol.toStringTag, { value: "Module" })), Je = k("global-error-handler");
|
|
1901
1910
|
function De(e) {
|
|
1902
1911
|
return e instanceof Error ? `${e.name}:${e.message}` : String(e);
|
|
1903
1912
|
}
|
|
1904
|
-
const pe = /* @__PURE__ */ new Map(),
|
|
1913
|
+
const pe = /* @__PURE__ */ new Map(), bt = 3e3;
|
|
1905
1914
|
function Qe(e) {
|
|
1906
1915
|
const t = De(e), a = Date.now(), n = pe.get(t);
|
|
1907
|
-
if (n && a - n <
|
|
1916
|
+
if (n && a - n < bt) return !0;
|
|
1908
1917
|
if (pe.set(t, a), pe.size > 50)
|
|
1909
1918
|
for (const [s, o] of pe)
|
|
1910
|
-
a - o >
|
|
1919
|
+
a - o > bt && pe.delete(s);
|
|
1911
1920
|
return !1;
|
|
1912
1921
|
}
|
|
1913
|
-
function
|
|
1922
|
+
function $o(e) {
|
|
1914
1923
|
const t = e.config.errorHandler;
|
|
1915
1924
|
if (e.config.errorHandler = (o, r, l) => {
|
|
1916
1925
|
if (Je.error("Unhandled Vue error:", o, `
|
|
1917
1926
|
Info:`, l), !Qe(o)) {
|
|
1918
|
-
const
|
|
1919
|
-
j.error(
|
|
1927
|
+
const c = Pe(o);
|
|
1928
|
+
j.error(c.message, {
|
|
1920
1929
|
timeout: 8e3,
|
|
1921
1930
|
notificationId: `global-vue-${De(o)}`
|
|
1922
1931
|
});
|
|
@@ -1947,7 +1956,7 @@ Info:`, l), !Qe(o)) {
|
|
|
1947
1956
|
};
|
|
1948
1957
|
window.addEventListener("error", s);
|
|
1949
1958
|
}
|
|
1950
|
-
const
|
|
1959
|
+
const Ko = k("notification-instance"), Z = {
|
|
1951
1960
|
"top-center": void 0,
|
|
1952
1961
|
"top-right": void 0,
|
|
1953
1962
|
"top-left": void 0,
|
|
@@ -1955,7 +1964,7 @@ const Go = k("notification-instance"), Z = {
|
|
|
1955
1964
|
"bottom-right": void 0,
|
|
1956
1965
|
"bottom-left": void 0
|
|
1957
1966
|
};
|
|
1958
|
-
function
|
|
1967
|
+
function zo() {
|
|
1959
1968
|
function e(s, o, r) {
|
|
1960
1969
|
document.getElementById(o) && (Z[r] = s);
|
|
1961
1970
|
}
|
|
@@ -1966,7 +1975,7 @@ function xo() {
|
|
|
1966
1975
|
Z[l]?.unmount(), document.getElementById(`notification-${l}`)?.remove(), Z[l] = void 0;
|
|
1967
1976
|
}), Object.values(Z).some((r) => r !== void 0) || document.querySelector(".notification")?.remove());
|
|
1968
1977
|
} catch (o) {
|
|
1969
|
-
|
|
1978
|
+
Ko.error("Failed to unmount notification component:", o);
|
|
1970
1979
|
}
|
|
1971
1980
|
}
|
|
1972
1981
|
function a() {
|
|
@@ -1984,15 +1993,15 @@ function xo() {
|
|
|
1984
1993
|
getInstanceByPosition: n
|
|
1985
1994
|
};
|
|
1986
1995
|
}
|
|
1987
|
-
const
|
|
1996
|
+
const Ee = k("notification-container"), G = {
|
|
1988
1997
|
"top-center": b([]),
|
|
1989
1998
|
"top-right": b([]),
|
|
1990
1999
|
"top-left": b([]),
|
|
1991
2000
|
"bottom-center": b([]),
|
|
1992
2001
|
"bottom-right": b([]),
|
|
1993
2002
|
"bottom-left": b([])
|
|
1994
|
-
}, { clearContainer:
|
|
1995
|
-
function
|
|
2003
|
+
}, { clearContainer: Yo, unmountComponent: qo, saveInstance: Zo, getInstanceByPosition: Nt } = zo();
|
|
2004
|
+
function jo() {
|
|
1996
2005
|
const e = ie({
|
|
1997
2006
|
timeout: 3e3,
|
|
1998
2007
|
pauseOnHover: !0,
|
|
@@ -2009,49 +2018,49 @@ function Yo() {
|
|
|
2009
2018
|
}
|
|
2010
2019
|
function s(u) {
|
|
2011
2020
|
const f = document.querySelector(".notification"), m = f || document.createElement("div"), E = `.notification__container[data-position="${u}"]`;
|
|
2012
|
-
let
|
|
2013
|
-
return
|
|
2021
|
+
let d = document.querySelector(E);
|
|
2022
|
+
return d || (d = document.createElement("div"), d.className = "notification__container", d.id = `notification-${u}`, d.setAttribute("data-position", u), f || (m.className = "notification", document.body.appendChild(m)), m.appendChild(d)), d;
|
|
2014
2023
|
}
|
|
2015
2024
|
const o = /* @__PURE__ */ new Map();
|
|
2016
2025
|
async function r(u) {
|
|
2017
2026
|
const f = u.position || e.position, m = o.get(f);
|
|
2018
|
-
if (m && await m, !
|
|
2027
|
+
if (m && await m, !Nt(f)) {
|
|
2019
2028
|
const E = (async () => {
|
|
2020
|
-
const
|
|
2029
|
+
const d = s(f), { default: S } = await Promise.resolve().then(() => wr), h = rn(S, {
|
|
2021
2030
|
...u,
|
|
2022
2031
|
position: f
|
|
2023
2032
|
});
|
|
2024
|
-
h.use(x), h.provide(
|
|
2033
|
+
h.use(x), h.provide(Xt, { notificationContainers: G, actions: c }), h.mount(d), Zo(h, d.id, f);
|
|
2025
2034
|
})();
|
|
2026
2035
|
o.set(f, E), await E, o.delete(f);
|
|
2027
2036
|
}
|
|
2028
2037
|
be(() => {
|
|
2029
|
-
u.updateId ?
|
|
2038
|
+
u.updateId ? c.update(u) : c.add(u);
|
|
2030
2039
|
});
|
|
2031
2040
|
}
|
|
2032
2041
|
function l(u) {
|
|
2033
2042
|
return t().some((f) => f.notificationId === u);
|
|
2034
2043
|
}
|
|
2035
|
-
const
|
|
2044
|
+
const c = {
|
|
2036
2045
|
add(u) {
|
|
2037
2046
|
const f = u.position || e.position, m = G[f];
|
|
2038
|
-
m.value.find((
|
|
2047
|
+
m.value.find((d) => d.notificationId === u.notificationId) || be(() => {
|
|
2039
2048
|
m.value.push(u), u.onOpen && typeof u?.onOpen == "function" && u.onOpen(u.payload);
|
|
2040
2049
|
});
|
|
2041
2050
|
},
|
|
2042
2051
|
remove(u) {
|
|
2043
2052
|
if (u) {
|
|
2044
2053
|
let f, m;
|
|
2045
|
-
Object.entries(G).forEach(([E,
|
|
2046
|
-
const S =
|
|
2054
|
+
Object.entries(G).forEach(([E, d]) => {
|
|
2055
|
+
const S = d.value.find((h) => h.notificationId === u);
|
|
2047
2056
|
S && (f = S, m = E);
|
|
2048
|
-
}), m && (G[m].value = G[m].value.filter((E) => E.notificationId !== u), G[m].value.length === 0 &&
|
|
2057
|
+
}), m && (G[m].value = G[m].value.filter((E) => E.notificationId !== u), G[m].value.length === 0 && qo(m), be(() => {
|
|
2049
2058
|
f?.onClose && typeof f?.onClose == "function" && f.onClose(f.payload);
|
|
2050
2059
|
}));
|
|
2051
2060
|
}
|
|
2052
2061
|
},
|
|
2053
2062
|
clear() {
|
|
2054
|
-
|
|
2063
|
+
Yo(), Object.values(G).forEach((u) => {
|
|
2055
2064
|
u.value = [];
|
|
2056
2065
|
});
|
|
2057
2066
|
},
|
|
@@ -2062,34 +2071,34 @@ function Yo() {
|
|
|
2062
2071
|
m.value.forEach((E) => {
|
|
2063
2072
|
E.notificationId === u && (E.dismissing = !0, f = !0);
|
|
2064
2073
|
});
|
|
2065
|
-
}), f ||
|
|
2074
|
+
}), f || Ee.debug(`dismiss: notification ${u} not found`);
|
|
2066
2075
|
},
|
|
2067
2076
|
update(u) {
|
|
2068
2077
|
if (u.updateId) {
|
|
2069
2078
|
let f, m, E;
|
|
2070
|
-
if (Object.entries(G).forEach(([
|
|
2079
|
+
if (Object.entries(G).forEach(([d, S]) => {
|
|
2071
2080
|
const h = S.value.find((O) => O.notificationId === u.notificationId);
|
|
2072
|
-
h && (f = h, m = S, E =
|
|
2081
|
+
h && (f = h, m = S, E = d);
|
|
2073
2082
|
}), f && m) {
|
|
2074
|
-
if (
|
|
2083
|
+
if (Ee.debug(`Updating notification ${u.notificationId} in position ${E}`), u.position && u.position !== E) {
|
|
2075
2084
|
m.value = m.value.filter(
|
|
2076
2085
|
(h) => h.notificationId !== u.notificationId
|
|
2077
2086
|
);
|
|
2078
|
-
const
|
|
2087
|
+
const d = {
|
|
2079
2088
|
...f,
|
|
2080
2089
|
...u
|
|
2081
2090
|
}, S = u.position;
|
|
2082
|
-
|
|
2091
|
+
Nt(S) ? (Ee.debug(`Adding to existing container for position ${S}`), G[S].value.push(d)) : (Ee.debug(`Creating new container for position ${S}`), r(d));
|
|
2083
2092
|
} else
|
|
2084
|
-
|
|
2085
|
-
if (
|
|
2086
|
-
const S =
|
|
2093
|
+
Ee.debug("Standard update of notification properties"), Object.keys(u).forEach((d) => {
|
|
2094
|
+
if (d !== "updateId" && d !== "notificationId") {
|
|
2095
|
+
const S = d, h = u[S];
|
|
2087
2096
|
f && h !== void 0 && (f[S] = h);
|
|
2088
2097
|
}
|
|
2089
2098
|
});
|
|
2090
2099
|
return !0;
|
|
2091
2100
|
} else
|
|
2092
|
-
return
|
|
2101
|
+
return Ee.warn(`Notification with ID ${u.notificationId} not found for update`), !1;
|
|
2093
2102
|
}
|
|
2094
2103
|
return !1;
|
|
2095
2104
|
},
|
|
@@ -2100,18 +2109,18 @@ function Yo() {
|
|
|
2100
2109
|
return {
|
|
2101
2110
|
defaultOptions: e,
|
|
2102
2111
|
notificationContainers: G,
|
|
2103
|
-
actions:
|
|
2112
|
+
actions: c,
|
|
2104
2113
|
getAllNotifications: t,
|
|
2105
2114
|
getNotificationsByPosition: a,
|
|
2106
2115
|
appendInstance: r,
|
|
2107
2116
|
getNotification: n,
|
|
2108
|
-
generateNotificationId:
|
|
2117
|
+
generateNotificationId: Wa,
|
|
2109
2118
|
hasNotification: l
|
|
2110
2119
|
};
|
|
2111
2120
|
}
|
|
2112
|
-
function
|
|
2113
|
-
const e =
|
|
2114
|
-
|
|
2121
|
+
function Xo() {
|
|
2122
|
+
const e = jo();
|
|
2123
|
+
Ga({
|
|
2115
2124
|
defaultOptions: e.defaultOptions,
|
|
2116
2125
|
actions: e.actions,
|
|
2117
2126
|
getAllNotifications: e.getAllNotifications,
|
|
@@ -2120,22 +2129,22 @@ function qo() {
|
|
|
2120
2129
|
hasNotification: (t) => e.hasNotification(t)
|
|
2121
2130
|
});
|
|
2122
2131
|
}
|
|
2123
|
-
const
|
|
2124
|
-
function
|
|
2132
|
+
const Jo = "2.7.0";
|
|
2133
|
+
function Qo() {
|
|
2125
2134
|
return {
|
|
2126
|
-
version:
|
|
2127
|
-
buildDate: "2026-10-
|
|
2128
|
-
gitHash: "
|
|
2135
|
+
version: Jo,
|
|
2136
|
+
buildDate: "2026-10-26T12:24:47.235Z",
|
|
2137
|
+
gitHash: "0c25dd4eb"
|
|
2129
2138
|
};
|
|
2130
2139
|
}
|
|
2131
|
-
function
|
|
2140
|
+
function er(e = Qo()) {
|
|
2132
2141
|
console.warn(
|
|
2133
2142
|
`%c@vc-shell/framework%c v${e.version} · ${e.buildDate} · ${e.gitHash}`,
|
|
2134
2143
|
"font-weight:bold;color:#319ED4",
|
|
2135
2144
|
"color:inherit"
|
|
2136
2145
|
);
|
|
2137
2146
|
}
|
|
2138
|
-
const
|
|
2147
|
+
const tr = /* @__PURE__ */ W({
|
|
2139
2148
|
__name: "sidebar",
|
|
2140
2149
|
props: {
|
|
2141
2150
|
position: { default: "right" },
|
|
@@ -2146,18 +2155,18 @@ const Jo = /* @__PURE__ */ W({
|
|
|
2146
2155
|
},
|
|
2147
2156
|
emits: ["close"],
|
|
2148
2157
|
setup(e, { emit: t }) {
|
|
2149
|
-
const a = e, n = t, { isMobile: s, isDesktop: o } =
|
|
2150
|
-
function
|
|
2158
|
+
const a = e, n = t, { isMobile: s, isDesktop: o } = xa(), r = v(() => a.render === "always" ? !0 : a.render === "mobile" ? s.value : o.value), l = v(() => a.isExpanded && r.value);
|
|
2159
|
+
function c(u) {
|
|
2151
2160
|
u || n("close");
|
|
2152
2161
|
}
|
|
2153
|
-
return (u, f) => l.value ? (P(), D(i(
|
|
2162
|
+
return (u, f) => l.value ? (P(), D(i(vn), {
|
|
2154
2163
|
key: 0,
|
|
2155
2164
|
"model-value": !0,
|
|
2156
2165
|
position: e.position,
|
|
2157
2166
|
title: e.title,
|
|
2158
2167
|
"close-button": e.closeCross,
|
|
2159
2168
|
teleport: !i(o),
|
|
2160
|
-
"onUpdate:modelValue":
|
|
2169
|
+
"onUpdate:modelValue": c
|
|
2161
2170
|
}, Oe({
|
|
2162
2171
|
default: T(() => [
|
|
2163
2172
|
q(u.$slots, "content")
|
|
@@ -2173,7 +2182,7 @@ const Jo = /* @__PURE__ */ W({
|
|
|
2173
2182
|
} : void 0
|
|
2174
2183
|
]), 1032, ["position", "title", "close-button", "teleport"])) : q(u.$slots, "content", { key: 1 });
|
|
2175
2184
|
}
|
|
2176
|
-
}),
|
|
2185
|
+
}), $l = tr, ar = { class: "tw-flex tw-flex-row tw-items-center tw-gap-2" }, nr = /* @__PURE__ */ W({
|
|
2177
2186
|
__name: "external-provider",
|
|
2178
2187
|
props: {
|
|
2179
2188
|
logo: {},
|
|
@@ -2189,8 +2198,8 @@ const Jo = /* @__PURE__ */ W({
|
|
|
2189
2198
|
onClick: s[0] || (s[0] = (o) => n.$emit("signIn"))
|
|
2190
2199
|
}, {
|
|
2191
2200
|
default: T(() => [
|
|
2192
|
-
U("div",
|
|
2193
|
-
R(i(
|
|
2201
|
+
U("div", ar, [
|
|
2202
|
+
R(i(rt), {
|
|
2194
2203
|
src: a.value,
|
|
2195
2204
|
class: "vc-external-provider__icon",
|
|
2196
2205
|
size: "xxs"
|
|
@@ -2201,15 +2210,15 @@ const Jo = /* @__PURE__ */ W({
|
|
|
2201
2210
|
_: 1
|
|
2202
2211
|
}));
|
|
2203
2212
|
}
|
|
2204
|
-
}),
|
|
2213
|
+
}), sr = { class: "tw-flex tw-justify-center tw-flex-col tw-gap-4" }, or = /* @__PURE__ */ W({
|
|
2205
2214
|
__name: "external-providers",
|
|
2206
2215
|
props: {
|
|
2207
2216
|
providers: {}
|
|
2208
2217
|
},
|
|
2209
2218
|
setup(e) {
|
|
2210
|
-
const { signIn: t } =
|
|
2211
|
-
return (a, n) => (P(), H("div",
|
|
2212
|
-
(P(!0), H(ne, null, He(e.providers, (s) => (P(), D(
|
|
2219
|
+
const { signIn: t } = zt();
|
|
2220
|
+
return (a, n) => (P(), H("div", sr, [
|
|
2221
|
+
(P(!0), H(ne, null, He(e.providers, (s) => (P(), D(nr, {
|
|
2213
2222
|
key: s.authenticationType,
|
|
2214
2223
|
logo: s.logoUrl,
|
|
2215
2224
|
"display-name": s.displayName,
|
|
@@ -2219,25 +2228,25 @@ const Jo = /* @__PURE__ */ W({
|
|
|
2219
2228
|
]));
|
|
2220
2229
|
}
|
|
2221
2230
|
});
|
|
2222
|
-
function
|
|
2231
|
+
function rr(e) {
|
|
2223
2232
|
if (!e) return "/";
|
|
2224
2233
|
const t = e.trim();
|
|
2225
2234
|
return !t.startsWith("/") || t.startsWith("//") ? "/" : t;
|
|
2226
2235
|
}
|
|
2227
|
-
function
|
|
2236
|
+
function ir(e, t) {
|
|
2228
2237
|
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");
|
|
2229
2238
|
}
|
|
2230
|
-
function
|
|
2239
|
+
function lr(e) {
|
|
2231
2240
|
const t = [];
|
|
2232
2241
|
return e.confirmPassword !== e.password && t.push({ code: "Repeat-password" }), e.password === e.currentPassword && e.confirmPassword === e.currentPassword && t.push({ code: "Equal-passwords" }), t;
|
|
2233
2242
|
}
|
|
2234
|
-
const
|
|
2243
|
+
const ur = {
|
|
2235
2244
|
key: 0,
|
|
2236
2245
|
class: "vc-login-page__providers"
|
|
2237
|
-
},
|
|
2246
|
+
}, cr = {
|
|
2238
2247
|
key: 0,
|
|
2239
2248
|
class: "vc-login-page__separator-line"
|
|
2240
|
-
},
|
|
2249
|
+
}, dr = /* @__PURE__ */ W({
|
|
2241
2250
|
__name: "Login",
|
|
2242
2251
|
props: {
|
|
2243
2252
|
logo: {},
|
|
@@ -2247,7 +2256,7 @@ const rr = {
|
|
|
2247
2256
|
ssoOnly: { type: Boolean }
|
|
2248
2257
|
},
|
|
2249
2258
|
setup(e) {
|
|
2250
|
-
const t = k("login-page"), a = e, { t: n } = le({ useScope: "global" }), s = ve(), { validateField: o } = ue({ validateOnMount: !1 }), { uiSettings: r, loading: l } = we(),
|
|
2259
|
+
const t = k("login-page"), a = e, { t: n } = le({ useScope: "global" }), s = ve(), { validateField: o } = ue({ validateOnMount: !1 }), { uiSettings: r, loading: l } = we(), c = b({ succeeded: !0 }), { signIn: u, loading: f, user: m } = se(), { getProviders: E } = zt(), d = Ie(), S = b(), h = b(!1);
|
|
2251
2260
|
Le(async () => {
|
|
2252
2261
|
S.value = await E(), h.value = !0;
|
|
2253
2262
|
});
|
|
@@ -2259,17 +2268,17 @@ const rr = {
|
|
|
2259
2268
|
// Off by default, as in the platform admin UI: a session cookie unless the user asks to be remembered.
|
|
2260
2269
|
rememberMe: !1
|
|
2261
2270
|
}), w = async () => {
|
|
2262
|
-
if (
|
|
2263
|
-
if (
|
|
2271
|
+
if (d.value) {
|
|
2272
|
+
if (c.value.error = "", c.value = await u(_.username, _.password, _.rememberMe), c.value.succeeded && m.value?.passwordExpired) {
|
|
2264
2273
|
await s.push({ name: "ChangePassword" });
|
|
2265
2274
|
return;
|
|
2266
2275
|
}
|
|
2267
|
-
if (
|
|
2268
|
-
const A =
|
|
2269
|
-
|
|
2276
|
+
if (c.value.succeeded) {
|
|
2277
|
+
const A = rr(vo());
|
|
2278
|
+
await s.push(A);
|
|
2270
2279
|
return;
|
|
2271
2280
|
}
|
|
2272
|
-
|
|
2281
|
+
c.value.error = ir(c.value, n), _.password = "", o("password");
|
|
2273
2282
|
}
|
|
2274
2283
|
}, C = () => {
|
|
2275
2284
|
s.push({ name: "ForgotPassword" });
|
|
@@ -2282,11 +2291,11 @@ const rr = {
|
|
|
2282
2291
|
class: "vc-login-page"
|
|
2283
2292
|
}, {
|
|
2284
2293
|
default: T(() => [
|
|
2285
|
-
S.value && S.value.length ? (P(), H("div",
|
|
2286
|
-
R(
|
|
2287
|
-
e.ssoOnly ? Y("", !0) : (P(), H("div",
|
|
2294
|
+
S.value && S.value.length ? (P(), H("div", ur, [
|
|
2295
|
+
R(or, { providers: S.value }, null, 8, ["providers"]),
|
|
2296
|
+
e.ssoOnly ? Y("", !0) : (P(), H("div", cr, y(A.$t("LOGIN.OR")), 1))
|
|
2288
2297
|
])) : Y("", !0),
|
|
2289
|
-
e.ssoOnly && h.value && !S.value?.length ? (P(), D(i(
|
|
2298
|
+
e.ssoOnly && h.value && !S.value?.length ? (P(), D(i(fe), {
|
|
2290
2299
|
key: 1,
|
|
2291
2300
|
class: "tw-mt-4 tw-text-danger-500"
|
|
2292
2301
|
}, {
|
|
@@ -2296,7 +2305,7 @@ const rr = {
|
|
|
2296
2305
|
_: 1
|
|
2297
2306
|
})) : Y("", !0),
|
|
2298
2307
|
e.ssoOnly ? Y("", !0) : (P(), H(ne, { key: 2 }, [
|
|
2299
|
-
R(i(
|
|
2308
|
+
R(i(ge), {
|
|
2300
2309
|
class: "tw-gap-5",
|
|
2301
2310
|
onSubmit: w
|
|
2302
2311
|
}, {
|
|
@@ -2346,12 +2355,12 @@ const rr = {
|
|
|
2346
2355
|
required: "",
|
|
2347
2356
|
error: !!I.length,
|
|
2348
2357
|
"error-message": L,
|
|
2349
|
-
onKeyup:
|
|
2358
|
+
onKeyup: ut(w, ["enter"])
|
|
2350
2359
|
}, null, 8, ["modelValue", "label", "placeholder", "error", "error-message", "onUpdate:modelValue"])
|
|
2351
2360
|
]),
|
|
2352
2361
|
_: 1
|
|
2353
2362
|
}, 8, ["label", "model-value"]),
|
|
2354
|
-
R(i(
|
|
2363
|
+
R(i(wn), {
|
|
2355
2364
|
modelValue: _.rememberMe,
|
|
2356
2365
|
"onUpdate:modelValue": g[2] || (g[2] = (L) => _.rememberMe = L),
|
|
2357
2366
|
name: "rememberMe",
|
|
@@ -2366,7 +2375,7 @@ const rr = {
|
|
|
2366
2375
|
variant: "primary",
|
|
2367
2376
|
class: "tw-w-full",
|
|
2368
2377
|
icon: "lucide-log-in",
|
|
2369
|
-
disabled: !i(
|
|
2378
|
+
disabled: !i(d),
|
|
2370
2379
|
loading: i(f),
|
|
2371
2380
|
onClick: w
|
|
2372
2381
|
}, {
|
|
@@ -2389,18 +2398,18 @@ const rr = {
|
|
|
2389
2398
|
]),
|
|
2390
2399
|
_: 1
|
|
2391
2400
|
}),
|
|
2392
|
-
R(i(
|
|
2401
|
+
R(i(vs), {
|
|
2393
2402
|
name: "auth:after-form",
|
|
2394
2403
|
separator: "",
|
|
2395
2404
|
"separator-class": "tw-border-t tw-border-[color:var(--login-separator)] tw-border-solid tw-pb-5",
|
|
2396
2405
|
"wrapper-class": "vc-login-page__separator"
|
|
2397
2406
|
}),
|
|
2398
|
-
|
|
2407
|
+
c.value.succeeded ? Y("", !0) : (P(), D(i(fe), {
|
|
2399
2408
|
key: 0,
|
|
2400
2409
|
class: "tw-mt-4 tw-text-danger-500"
|
|
2401
2410
|
}, {
|
|
2402
2411
|
default: T(() => [
|
|
2403
|
-
B(y(
|
|
2412
|
+
B(y(c.value.error), 1)
|
|
2404
2413
|
]),
|
|
2405
2414
|
_: 1
|
|
2406
2415
|
}))
|
|
@@ -2409,7 +2418,7 @@ const rr = {
|
|
|
2409
2418
|
_: 1
|
|
2410
2419
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2411
2420
|
}
|
|
2412
|
-
}),
|
|
2421
|
+
}), Kl = dr, Er = { class: "tw-text-center" }, fr = { class: "tw-text-center tw-mb-6" }, mr = { class: "tw-text-sm tw-text-neutrals-600" }, gr = /* @__PURE__ */ W({
|
|
2413
2422
|
__name: "ForgotPassword",
|
|
2414
2423
|
props: {
|
|
2415
2424
|
logo: {},
|
|
@@ -2419,7 +2428,7 @@ const rr = {
|
|
|
2419
2428
|
setup(e) {
|
|
2420
2429
|
const t = e, a = ve(), { t: n } = le({ useScope: "global" });
|
|
2421
2430
|
ue({ validateOnMount: !1 });
|
|
2422
|
-
const s = Ie(), { uiSettings: o, loading: r } = we(), l = b(!1),
|
|
2431
|
+
const s = Ie(), { uiSettings: o, loading: r } = we(), l = b(!1), c = b(""), u = b(!1), f = ie({
|
|
2423
2432
|
loginOrEmail: ""
|
|
2424
2433
|
});
|
|
2425
2434
|
let m;
|
|
@@ -2433,15 +2442,15 @@ const rr = {
|
|
|
2433
2442
|
}
|
|
2434
2443
|
const E = v(() => ({
|
|
2435
2444
|
logo: r.value ? "" : o.value?.logo || t.logo
|
|
2436
|
-
})),
|
|
2445
|
+
})), d = v(() => {
|
|
2437
2446
|
const O = f.loginOrEmail, [_, w] = O.split("@");
|
|
2438
2447
|
return !_ || !w ? O : `${_.length > 2 ? _[0] + "***" + _[_.length - 1] : _[0] + "***"}@${w}`;
|
|
2439
2448
|
}), S = async () => {
|
|
2440
2449
|
if (!(!s.value || !m))
|
|
2441
2450
|
try {
|
|
2442
|
-
l.value = !0,
|
|
2451
|
+
l.value = !0, c.value = "", await m({ loginOrEmail: f.loginOrEmail }), u.value = !0;
|
|
2443
2452
|
} catch (O) {
|
|
2444
|
-
|
|
2453
|
+
c.value = O instanceof Error ? O.message : String(O);
|
|
2445
2454
|
} finally {
|
|
2446
2455
|
l.value = !1;
|
|
2447
2456
|
}
|
|
@@ -2456,8 +2465,8 @@ const rr = {
|
|
|
2456
2465
|
}, {
|
|
2457
2466
|
default: T(() => [
|
|
2458
2467
|
u.value ? (P(), H(ne, { key: 1 }, [
|
|
2459
|
-
U("div",
|
|
2460
|
-
U("p",
|
|
2468
|
+
U("div", fr, [
|
|
2469
|
+
U("p", mr, y(i(n)("FORGOT_PASSWORD.SUCCESS_TEXT", { email: d.value })), 1)
|
|
2461
2470
|
]),
|
|
2462
2471
|
R(i($), {
|
|
2463
2472
|
variant: "primary",
|
|
@@ -2470,7 +2479,7 @@ const rr = {
|
|
|
2470
2479
|
_: 1
|
|
2471
2480
|
})
|
|
2472
2481
|
], 64)) : (P(), H(ne, { key: 0 }, [
|
|
2473
|
-
R(i(
|
|
2482
|
+
R(i(ge), { onSubmit: S }, {
|
|
2474
2483
|
default: T(() => [
|
|
2475
2484
|
R(i(X), {
|
|
2476
2485
|
label: i(n)("FORGOT_PASSWORD.FIELDS.EMAIL.LABEL"),
|
|
@@ -2508,7 +2517,7 @@ const rr = {
|
|
|
2508
2517
|
]),
|
|
2509
2518
|
_: 1
|
|
2510
2519
|
}, 8, ["disabled", "loading"]),
|
|
2511
|
-
U("div",
|
|
2520
|
+
U("div", Er, [
|
|
2512
2521
|
R(i($), {
|
|
2513
2522
|
variant: "link",
|
|
2514
2523
|
icon: "lucide-arrow-left",
|
|
@@ -2525,12 +2534,12 @@ const rr = {
|
|
|
2525
2534
|
]),
|
|
2526
2535
|
_: 1
|
|
2527
2536
|
}),
|
|
2528
|
-
|
|
2537
|
+
c.value ? (P(), D(i(fe), {
|
|
2529
2538
|
key: 0,
|
|
2530
2539
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2531
2540
|
}, {
|
|
2532
2541
|
default: T(() => [
|
|
2533
|
-
B(y(
|
|
2542
|
+
B(y(c.value), 1)
|
|
2534
2543
|
]),
|
|
2535
2544
|
_: 1
|
|
2536
2545
|
})) : Y("", !0)
|
|
@@ -2539,7 +2548,7 @@ const rr = {
|
|
|
2539
2548
|
_: 1
|
|
2540
2549
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2541
2550
|
}
|
|
2542
|
-
}),
|
|
2551
|
+
}), zl = gr, Sr = /* @__PURE__ */ W({
|
|
2543
2552
|
__name: "ResetPassword",
|
|
2544
2553
|
props: {
|
|
2545
2554
|
userId: {},
|
|
@@ -2549,7 +2558,7 @@ const rr = {
|
|
|
2549
2558
|
background: { default: "/assets/background.jpg" }
|
|
2550
2559
|
},
|
|
2551
2560
|
setup(e) {
|
|
2552
|
-
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t:
|
|
2561
|
+
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t: c } = le({ useScope: "global" }), { validate: u } = ue({ validateOnMount: !1 }), { uiSettings: f, loading: m } = we(), E = ie({
|
|
2553
2562
|
isValid: !1,
|
|
2554
2563
|
tokenIsValid: !1,
|
|
2555
2564
|
errors: [],
|
|
@@ -2559,7 +2568,7 @@ const rr = {
|
|
|
2559
2568
|
Le(async () => {
|
|
2560
2569
|
E.tokenIsValid = await a(t.userId, t.token), E.tokenIsValid || E.errors.push("Invalid-token");
|
|
2561
2570
|
});
|
|
2562
|
-
const
|
|
2571
|
+
const d = v(() => r.value || !E.password || !E.confirmPassword || !E.isValid && E.tokenIsValid), S = async () => {
|
|
2563
2572
|
if (E.tokenIsValid) {
|
|
2564
2573
|
const _ = (await n(E.password)).errors;
|
|
2565
2574
|
E.errors = _?.map((w) => w.code), E.confirmPassword !== E.password && E.errors.push("Repeat-password"), E.isValid = E.errors.length == 0;
|
|
@@ -2580,18 +2589,18 @@ const rr = {
|
|
|
2580
2589
|
return (_, w) => (P(), D(i(_e), {
|
|
2581
2590
|
logo: O.value.logo,
|
|
2582
2591
|
background: e.background,
|
|
2583
|
-
title: i(
|
|
2584
|
-
subtitle: i(
|
|
2592
|
+
title: i(c)("PASSWORDRESET.TITLE"),
|
|
2593
|
+
subtitle: i(c)("PASSWORDRESET.SUBTITLE")
|
|
2585
2594
|
}, {
|
|
2586
2595
|
default: T(() => [
|
|
2587
|
-
i(r) ? (P(), D(i(
|
|
2596
|
+
i(r) ? (P(), D(i(Gt), {
|
|
2588
2597
|
key: 0,
|
|
2589
2598
|
active: ""
|
|
2590
2599
|
})) : Y("", !0),
|
|
2591
|
-
R(i(
|
|
2600
|
+
R(i(ge), null, {
|
|
2592
2601
|
default: T(() => [
|
|
2593
2602
|
R(i(X), {
|
|
2594
|
-
label: i(
|
|
2603
|
+
label: i(c)("PASSWORDRESET.FIELDS.PASSWORD.LABEL"),
|
|
2595
2604
|
name: "password",
|
|
2596
2605
|
"model-value": E.password,
|
|
2597
2606
|
rules: "required"
|
|
@@ -2607,8 +2616,8 @@ const rr = {
|
|
|
2607
2616
|
}
|
|
2608
2617
|
],
|
|
2609
2618
|
class: "tw-mb-4",
|
|
2610
|
-
label: i(
|
|
2611
|
-
placeholder: i(
|
|
2619
|
+
label: i(c)("PASSWORDRESET.FIELDS.PASSWORD.LABEL"),
|
|
2620
|
+
placeholder: i(c)("PASSWORDRESET.FIELDS.PASSWORD.PLACEHOLDER"),
|
|
2612
2621
|
type: "password",
|
|
2613
2622
|
autocomplete: "new-password",
|
|
2614
2623
|
disabled: !E.tokenIsValid,
|
|
@@ -2620,7 +2629,7 @@ const rr = {
|
|
|
2620
2629
|
_: 1
|
|
2621
2630
|
}, 8, ["label", "model-value"]),
|
|
2622
2631
|
R(i(X), {
|
|
2623
|
-
label: i(
|
|
2632
|
+
label: i(c)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2624
2633
|
name: "confirm_password",
|
|
2625
2634
|
"model-value": E.confirmPassword,
|
|
2626
2635
|
rules: "required"
|
|
@@ -2636,15 +2645,15 @@ const rr = {
|
|
|
2636
2645
|
}
|
|
2637
2646
|
],
|
|
2638
2647
|
class: "tw-mb-6",
|
|
2639
|
-
label: i(
|
|
2640
|
-
placeholder: i(
|
|
2648
|
+
label: i(c)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2649
|
+
placeholder: i(c)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.PLACEHOLDER"),
|
|
2641
2650
|
disabled: !E.tokenIsValid,
|
|
2642
2651
|
type: "password",
|
|
2643
2652
|
autocomplete: "new-password",
|
|
2644
2653
|
required: "",
|
|
2645
2654
|
error: !!L.length,
|
|
2646
2655
|
"error-message": A,
|
|
2647
|
-
onKeyup:
|
|
2656
|
+
onKeyup: ut(h, ["enter"])
|
|
2648
2657
|
}), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
|
|
2649
2658
|
]),
|
|
2650
2659
|
_: 1
|
|
@@ -2652,21 +2661,21 @@ const rr = {
|
|
|
2652
2661
|
R(i($), {
|
|
2653
2662
|
variant: "primary",
|
|
2654
2663
|
class: "tw-w-full",
|
|
2655
|
-
disabled:
|
|
2664
|
+
disabled: d.value,
|
|
2656
2665
|
loading: i(r),
|
|
2657
2666
|
onClick: h
|
|
2658
2667
|
}, {
|
|
2659
2668
|
default: T(() => [
|
|
2660
|
-
B(y(i(
|
|
2669
|
+
B(y(i(c)("PASSWORDRESET.SAVE_PASSWORD")), 1)
|
|
2661
2670
|
]),
|
|
2662
2671
|
_: 1
|
|
2663
2672
|
}, 8, ["disabled", "loading"]),
|
|
2664
|
-
(P(!0), H(ne, null, He(E.errors, (C) => (P(), D(i(
|
|
2673
|
+
(P(!0), H(ne, null, He(E.errors, (C) => (P(), D(i(fe), {
|
|
2665
2674
|
key: C,
|
|
2666
2675
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2667
2676
|
}, {
|
|
2668
2677
|
default: T(() => [
|
|
2669
|
-
B(y(i(
|
|
2678
|
+
B(y(i(c)(`PASSWORDRESET.ERRORS.${C}`)), 1)
|
|
2670
2679
|
]),
|
|
2671
2680
|
_: 2
|
|
2672
2681
|
}, 1024))), 128))
|
|
@@ -2677,7 +2686,7 @@ const rr = {
|
|
|
2677
2686
|
_: 1
|
|
2678
2687
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2679
2688
|
}
|
|
2680
|
-
}),
|
|
2689
|
+
}), Yl = Sr, Ar = /* @__PURE__ */ W({
|
|
2681
2690
|
__name: "Invite",
|
|
2682
2691
|
props: {
|
|
2683
2692
|
userId: {},
|
|
@@ -2688,7 +2697,7 @@ const rr = {
|
|
|
2688
2697
|
},
|
|
2689
2698
|
setup(e) {
|
|
2690
2699
|
ue({ validateOnMount: !1 });
|
|
2691
|
-
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t:
|
|
2700
|
+
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t: c } = le({ useScope: "global" }), u = Ie(), f = dt(), { uiSettings: m, loading: E } = we(), d = ie({
|
|
2692
2701
|
isValid: !1,
|
|
2693
2702
|
tokenIsValid: !1,
|
|
2694
2703
|
errors: [],
|
|
@@ -2696,62 +2705,62 @@ const rr = {
|
|
|
2696
2705
|
confirmPassword: ""
|
|
2697
2706
|
}), S = v(() => !f.value || !u.value);
|
|
2698
2707
|
Le(async () => {
|
|
2699
|
-
|
|
2708
|
+
d.tokenIsValid = await a(t.userId, t.token), d.tokenIsValid || d.errors.push("Invalid-token");
|
|
2700
2709
|
});
|
|
2701
2710
|
const h = async () => {
|
|
2702
|
-
if (
|
|
2703
|
-
const w = (await n(
|
|
2704
|
-
|
|
2711
|
+
if (d.tokenIsValid) {
|
|
2712
|
+
const w = (await n(d.password)).errors;
|
|
2713
|
+
d.errors = w?.map((C) => C.code), d.confirmPassword && d.confirmPassword !== d.password && d.errors.push("Repeat-password"), d.isValid = d.errors.length == 0 && !S.value;
|
|
2705
2714
|
}
|
|
2706
2715
|
}, O = async () => {
|
|
2707
|
-
const w = await s(t.userId,
|
|
2708
|
-
w.succeeded ? (await o(t.userName,
|
|
2716
|
+
const w = await s(t.userId, d.password, t.token);
|
|
2717
|
+
w.succeeded ? (await o(t.userName, d.password)).succeeded && l.push("/") : d.errors = w.errors;
|
|
2709
2718
|
}, _ = v(() => ({
|
|
2710
2719
|
logo: E.value ? "" : m.value?.logo || t.logo
|
|
2711
2720
|
}));
|
|
2712
2721
|
return (w, C) => (P(), D(i(_e), {
|
|
2713
2722
|
logo: _.value.logo,
|
|
2714
2723
|
background: e.background,
|
|
2715
|
-
title: i(
|
|
2716
|
-
subtitle: i(
|
|
2724
|
+
title: i(c)("INVITATION.TITLE"),
|
|
2725
|
+
subtitle: i(c)("INVITATION.SUBTITLE")
|
|
2717
2726
|
}, {
|
|
2718
2727
|
default: T(() => [
|
|
2719
|
-
i(r) ? (P(), D(i(
|
|
2728
|
+
i(r) ? (P(), D(i(Gt), {
|
|
2720
2729
|
key: 0,
|
|
2721
2730
|
active: ""
|
|
2722
2731
|
})) : Y("", !0),
|
|
2723
|
-
R(i(
|
|
2732
|
+
R(i(ge), null, {
|
|
2724
2733
|
default: T(() => [
|
|
2725
2734
|
R(i(K), {
|
|
2726
2735
|
class: "tw-mb-4",
|
|
2727
|
-
label: i(
|
|
2736
|
+
label: i(c)("INVITATION.FIELDS.EMAIL.LABEL"),
|
|
2728
2737
|
"model-value": e.userName,
|
|
2729
2738
|
name: "username",
|
|
2730
2739
|
autocomplete: "username",
|
|
2731
2740
|
disabled: ""
|
|
2732
2741
|
}, null, 8, ["label", "model-value"]),
|
|
2733
2742
|
R(i(X), {
|
|
2734
|
-
label: i(
|
|
2735
|
-
"model-value":
|
|
2743
|
+
label: i(c)("INVITATION.FIELDS.PASSWORD.LABEL"),
|
|
2744
|
+
"model-value": d.password,
|
|
2736
2745
|
rules: "required",
|
|
2737
2746
|
name: "password"
|
|
2738
2747
|
}, {
|
|
2739
2748
|
default: T(({ field: A, errorMessage: g, handleChange: L, errors: p }) => [
|
|
2740
2749
|
R(i(K), re(A, {
|
|
2741
2750
|
ref: "passwordField",
|
|
2742
|
-
modelValue:
|
|
2751
|
+
modelValue: d.password,
|
|
2743
2752
|
"onUpdate:modelValue": [
|
|
2744
|
-
C[0] || (C[0] = (I) =>
|
|
2753
|
+
C[0] || (C[0] = (I) => d.password = I),
|
|
2745
2754
|
(I) => {
|
|
2746
2755
|
L(I), h();
|
|
2747
2756
|
}
|
|
2748
2757
|
],
|
|
2749
2758
|
class: "tw-mb-4",
|
|
2750
|
-
label: i(
|
|
2751
|
-
placeholder: i(
|
|
2759
|
+
label: i(c)("INVITATION.FIELDS.PASSWORD.LABEL"),
|
|
2760
|
+
placeholder: i(c)("INVITATION.FIELDS.PASSWORD.PLACEHOLDER"),
|
|
2752
2761
|
type: "password",
|
|
2753
2762
|
autocomplete: "new-password",
|
|
2754
|
-
disabled: !
|
|
2763
|
+
disabled: !d.tokenIsValid,
|
|
2755
2764
|
error: !!p.length,
|
|
2756
2765
|
"error-message": g,
|
|
2757
2766
|
required: ""
|
|
@@ -2760,31 +2769,31 @@ const rr = {
|
|
|
2760
2769
|
_: 1
|
|
2761
2770
|
}, 8, ["label", "model-value"]),
|
|
2762
2771
|
R(i(X), {
|
|
2763
|
-
label: i(
|
|
2764
|
-
"model-value":
|
|
2772
|
+
label: i(c)("INVITATION.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2773
|
+
"model-value": d.confirmPassword,
|
|
2765
2774
|
rules: "required",
|
|
2766
2775
|
name: "confirm_password"
|
|
2767
2776
|
}, {
|
|
2768
2777
|
default: T(({ field: A, errorMessage: g, handleChange: L, errors: p }) => [
|
|
2769
2778
|
R(i(K), re(A, {
|
|
2770
2779
|
ref: "confirmPasswordField",
|
|
2771
|
-
modelValue:
|
|
2780
|
+
modelValue: d.confirmPassword,
|
|
2772
2781
|
"onUpdate:modelValue": [
|
|
2773
|
-
C[1] || (C[1] = (I) =>
|
|
2782
|
+
C[1] || (C[1] = (I) => d.confirmPassword = I),
|
|
2774
2783
|
(I) => {
|
|
2775
2784
|
L(I), h();
|
|
2776
2785
|
}
|
|
2777
2786
|
],
|
|
2778
2787
|
class: "tw-mb-6",
|
|
2779
|
-
label: i(
|
|
2780
|
-
placeholder: i(
|
|
2781
|
-
disabled: !
|
|
2788
|
+
label: i(c)("INVITATION.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2789
|
+
placeholder: i(c)("INVITATION.FIELDS.CONFIRM_PASSWORD.PLACEHOLDER"),
|
|
2790
|
+
disabled: !d.tokenIsValid,
|
|
2782
2791
|
type: "password",
|
|
2783
2792
|
autocomplete: "new-password",
|
|
2784
2793
|
error: !!p.length,
|
|
2785
2794
|
"error-message": g,
|
|
2786
2795
|
required: "",
|
|
2787
|
-
onKeyup:
|
|
2796
|
+
onKeyup: ut(O, ["enter"])
|
|
2788
2797
|
}), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
|
|
2789
2798
|
]),
|
|
2790
2799
|
_: 1
|
|
@@ -2792,21 +2801,21 @@ const rr = {
|
|
|
2792
2801
|
R(i($), {
|
|
2793
2802
|
variant: "primary",
|
|
2794
2803
|
class: "tw-w-full",
|
|
2795
|
-
disabled: i(r) || !
|
|
2804
|
+
disabled: i(r) || !d.isValid || !d.tokenIsValid,
|
|
2796
2805
|
loading: i(r),
|
|
2797
2806
|
onClick: O
|
|
2798
2807
|
}, {
|
|
2799
2808
|
default: T(() => [
|
|
2800
|
-
B(y(i(
|
|
2809
|
+
B(y(i(c)("INVITATION.ACCEPT_INVITATION")), 1)
|
|
2801
2810
|
]),
|
|
2802
2811
|
_: 1
|
|
2803
2812
|
}, 8, ["disabled", "loading"]),
|
|
2804
|
-
(P(!0), H(ne, null, He(
|
|
2813
|
+
(P(!0), H(ne, null, He(d.errors, (A) => (P(), D(i(fe), {
|
|
2805
2814
|
key: A,
|
|
2806
2815
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2807
2816
|
}, {
|
|
2808
2817
|
default: T(() => [
|
|
2809
|
-
B(y(i(
|
|
2818
|
+
B(y(i(c)(`INVITATION.ERRORS.${A}`)), 1)
|
|
2810
2819
|
]),
|
|
2811
2820
|
_: 2
|
|
2812
2821
|
}, 1024))), 128))
|
|
@@ -2817,10 +2826,10 @@ const rr = {
|
|
|
2817
2826
|
_: 1
|
|
2818
2827
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2819
2828
|
}
|
|
2820
|
-
}),
|
|
2829
|
+
}), ql = Ar, pr = {
|
|
2821
2830
|
key: 0,
|
|
2822
2831
|
class: "tw-mb-4"
|
|
2823
|
-
},
|
|
2832
|
+
}, Tr = { class: "tw-flex tw-gap-3" }, hr = /* @__PURE__ */ W({
|
|
2824
2833
|
__name: "ChangePassword",
|
|
2825
2834
|
props: {
|
|
2826
2835
|
forced: { type: Boolean },
|
|
@@ -2828,11 +2837,11 @@ const rr = {
|
|
|
2828
2837
|
background: {}
|
|
2829
2838
|
},
|
|
2830
2839
|
setup(e) {
|
|
2831
|
-
const t = e, { t: a } = le({ useScope: "global" }), { changeUserPassword: n, loading: s, validatePassword: o, signOut: r } = se(), { uiSettings: l, loading:
|
|
2832
|
-
logo:
|
|
2840
|
+
const t = e, { t: a } = le({ useScope: "global" }), { changeUserPassword: n, loading: s, validatePassword: o, signOut: r } = se(), { uiSettings: l, loading: c } = we(), u = v(() => ({
|
|
2841
|
+
logo: c.value ? "" : l.value?.logo || t.logo
|
|
2833
2842
|
}));
|
|
2834
2843
|
ue({ validateOnMount: !1 });
|
|
2835
|
-
const f = Ie(), m = dt(), E = ve(),
|
|
2844
|
+
const f = Ie(), m = dt(), E = ve(), d = ie({
|
|
2836
2845
|
isValid: !1,
|
|
2837
2846
|
errors: [],
|
|
2838
2847
|
currentPassword: "",
|
|
@@ -2843,18 +2852,18 @@ const rr = {
|
|
|
2843
2852
|
await r(), await E.push("/login");
|
|
2844
2853
|
}
|
|
2845
2854
|
async function O() {
|
|
2846
|
-
const w = await n(
|
|
2847
|
-
w?.succeeded ? await E.push("/") : w?.errors && (
|
|
2855
|
+
const w = await n(d.currentPassword, d.password);
|
|
2856
|
+
w?.succeeded ? await E.push("/") : w?.errors && (d.errors = w?.errors, d.isValid = d.errors.length == 0);
|
|
2848
2857
|
}
|
|
2849
2858
|
function _() {
|
|
2850
2859
|
be(async () => {
|
|
2851
|
-
if (
|
|
2852
|
-
const w = (await o(
|
|
2853
|
-
password:
|
|
2854
|
-
confirmPassword:
|
|
2855
|
-
currentPassword:
|
|
2860
|
+
if (d.password || d.confirmPassword) {
|
|
2861
|
+
const w = (await o(d.password)).errors ?? [], C = lr({
|
|
2862
|
+
password: d.password,
|
|
2863
|
+
confirmPassword: d.confirmPassword,
|
|
2864
|
+
currentPassword: d.currentPassword
|
|
2856
2865
|
});
|
|
2857
|
-
|
|
2866
|
+
d.errors = [...w, ...C], d.isValid = d.errors.length == 0;
|
|
2858
2867
|
}
|
|
2859
2868
|
});
|
|
2860
2869
|
}
|
|
@@ -2865,8 +2874,8 @@ const rr = {
|
|
|
2865
2874
|
subtitle: e.forced ? i(a)("COMPONENTS.CHANGE_PASSWORD.SUBTITLE_FORCED") : void 0
|
|
2866
2875
|
}, {
|
|
2867
2876
|
default: T(() => [
|
|
2868
|
-
e.forced ? (P(), H("div",
|
|
2869
|
-
R(i(
|
|
2877
|
+
e.forced ? (P(), H("div", pr, [
|
|
2878
|
+
R(i(Cn), {
|
|
2870
2879
|
variant: "info",
|
|
2871
2880
|
icon: "lucide-lightbulb",
|
|
2872
2881
|
"icon-size": "l"
|
|
@@ -2877,20 +2886,20 @@ const rr = {
|
|
|
2877
2886
|
_: 1
|
|
2878
2887
|
})
|
|
2879
2888
|
])) : Y("", !0),
|
|
2880
|
-
R(i(
|
|
2889
|
+
R(i(ge), null, {
|
|
2881
2890
|
default: T(() => [
|
|
2882
2891
|
R(i(X), {
|
|
2883
2892
|
label: i(a)("COMPONENTS.CHANGE_PASSWORD.CURRENT_PASSWORD.LABEL"),
|
|
2884
2893
|
name: "current",
|
|
2885
2894
|
rules: "required|min:6",
|
|
2886
|
-
"model-value":
|
|
2895
|
+
"model-value": d.currentPassword
|
|
2887
2896
|
}, {
|
|
2888
2897
|
default: T(({ field: A, errorMessage: g, errors: L }) => [
|
|
2889
2898
|
R(i(K), re(A, {
|
|
2890
2899
|
ref: "passwordField",
|
|
2891
|
-
modelValue:
|
|
2900
|
+
modelValue: d.currentPassword,
|
|
2892
2901
|
"onUpdate:modelValue": [
|
|
2893
|
-
C[0] || (C[0] = (p) =>
|
|
2902
|
+
C[0] || (C[0] = (p) => d.currentPassword = p),
|
|
2894
2903
|
_
|
|
2895
2904
|
],
|
|
2896
2905
|
class: "tw-mb-4",
|
|
@@ -2909,14 +2918,14 @@ const rr = {
|
|
|
2909
2918
|
label: i(a)("COMPONENTS.CHANGE_PASSWORD.NEW_PASSWORD.LABEL"),
|
|
2910
2919
|
name: "new_pass",
|
|
2911
2920
|
rules: "required|min:6",
|
|
2912
|
-
"model-value":
|
|
2921
|
+
"model-value": d.password
|
|
2913
2922
|
}, {
|
|
2914
2923
|
default: T(({ field: A, errorMessage: g, errors: L }) => [
|
|
2915
2924
|
R(i(K), re(A, {
|
|
2916
2925
|
ref: "newPasswordField",
|
|
2917
|
-
modelValue:
|
|
2926
|
+
modelValue: d.password,
|
|
2918
2927
|
"onUpdate:modelValue": [
|
|
2919
|
-
C[1] || (C[1] = (p) =>
|
|
2928
|
+
C[1] || (C[1] = (p) => d.password = p),
|
|
2920
2929
|
_
|
|
2921
2930
|
],
|
|
2922
2931
|
class: "tw-mb-4",
|
|
@@ -2935,14 +2944,14 @@ const rr = {
|
|
|
2935
2944
|
label: i(a)("COMPONENTS.CHANGE_PASSWORD.CONFIRM_PASSWORD.LABEL"),
|
|
2936
2945
|
name: "confirm_pass",
|
|
2937
2946
|
rules: "required|min:6",
|
|
2938
|
-
"model-value":
|
|
2947
|
+
"model-value": d.confirmPassword
|
|
2939
2948
|
}, {
|
|
2940
2949
|
default: T(({ field: A, errorMessage: g, errors: L }) => [
|
|
2941
2950
|
R(i(K), re(A, {
|
|
2942
2951
|
ref: "confirmPasswordField",
|
|
2943
|
-
modelValue:
|
|
2952
|
+
modelValue: d.confirmPassword,
|
|
2944
2953
|
"onUpdate:modelValue": [
|
|
2945
|
-
C[2] || (C[2] = (p) =>
|
|
2954
|
+
C[2] || (C[2] = (p) => d.confirmPassword = p),
|
|
2946
2955
|
_
|
|
2947
2956
|
],
|
|
2948
2957
|
class: "tw-mb-6",
|
|
@@ -2957,7 +2966,7 @@ const rr = {
|
|
|
2957
2966
|
]),
|
|
2958
2967
|
_: 1
|
|
2959
2968
|
}, 8, ["label", "model-value"]),
|
|
2960
|
-
U("div",
|
|
2969
|
+
U("div", Tr, [
|
|
2961
2970
|
R(i($), {
|
|
2962
2971
|
variant: "secondary",
|
|
2963
2972
|
class: "tw-flex-1",
|
|
@@ -2971,7 +2980,7 @@ const rr = {
|
|
|
2971
2980
|
R(i($), {
|
|
2972
2981
|
variant: "primary",
|
|
2973
2982
|
class: "tw-flex-1",
|
|
2974
|
-
disabled: i(s) || !
|
|
2983
|
+
disabled: i(s) || !d.isValid || S.value,
|
|
2975
2984
|
loading: i(s),
|
|
2976
2985
|
onClick: O
|
|
2977
2986
|
}, {
|
|
@@ -2981,7 +2990,7 @@ const rr = {
|
|
|
2981
2990
|
_: 1
|
|
2982
2991
|
}, 8, ["disabled", "loading"])
|
|
2983
2992
|
]),
|
|
2984
|
-
(P(!0), H(ne, null, He(
|
|
2993
|
+
(P(!0), H(ne, null, He(d.errors, (A, g) => (P(), D(i(fe), {
|
|
2985
2994
|
key: g,
|
|
2986
2995
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2987
2996
|
}, {
|
|
@@ -2997,14 +3006,14 @@ const rr = {
|
|
|
2997
3006
|
_: 1
|
|
2998
3007
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2999
3008
|
}
|
|
3000
|
-
}),
|
|
3009
|
+
}), Zl = hr, et = k("use-blade-navigation-adapter"), st = /* @__PURE__ */ new Set();
|
|
3001
3010
|
function oe(e, t) {
|
|
3002
|
-
if (
|
|
3003
|
-
|
|
3011
|
+
if (st.has(e)) return;
|
|
3012
|
+
st.add(e);
|
|
3004
3013
|
const a = `[useBladeNavigation] "${e}" is deprecated.`;
|
|
3005
3014
|
console.warn(t ? `${a} Use ${t} instead.` : a);
|
|
3006
3015
|
}
|
|
3007
|
-
function
|
|
3016
|
+
function Dt(e, t, a) {
|
|
3008
3017
|
return {
|
|
3009
3018
|
props: {
|
|
3010
3019
|
navigation: {
|
|
@@ -3022,25 +3031,25 @@ function Nt(e, t, a) {
|
|
|
3022
3031
|
};
|
|
3023
3032
|
}
|
|
3024
3033
|
let ye, Me;
|
|
3025
|
-
function
|
|
3026
|
-
ye = void 0, Me = void 0,
|
|
3034
|
+
function jl() {
|
|
3035
|
+
ye = void 0, Me = void 0, st.clear();
|
|
3027
3036
|
}
|
|
3028
|
-
function
|
|
3029
|
-
const e =
|
|
3037
|
+
function Or() {
|
|
3038
|
+
const e = Es, t = ms, a = fs;
|
|
3030
3039
|
if (!e || !t)
|
|
3031
3040
|
throw new Error(
|
|
3032
3041
|
"[useBladeNavigation adapter] BladeStack or BladeMessaging not available. Ensure plugin-v2 is installed before calling useBladeNavigation()."
|
|
3033
3042
|
);
|
|
3034
|
-
const n =
|
|
3043
|
+
const n = ds?.router;
|
|
3035
3044
|
if (!n)
|
|
3036
3045
|
throw new Error("[@vc-shell/framework#useBladeNavigation] Vue Router instance is not available.");
|
|
3037
3046
|
return ye || (ye = v(() => {
|
|
3038
3047
|
const s = e.activeBlade.value?.id;
|
|
3039
|
-
return e.blades.value.map((o, r) =>
|
|
3048
|
+
return e.blades.value.map((o, r) => Dt(o, r, s));
|
|
3040
3049
|
})), Me || (Me = v(() => {
|
|
3041
3050
|
const s = e.workspace.value;
|
|
3042
3051
|
if (s)
|
|
3043
|
-
return
|
|
3052
|
+
return Dt(s, 0, e.activeBlade.value?.id);
|
|
3044
3053
|
})), {
|
|
3045
3054
|
bladeStack: e,
|
|
3046
3055
|
messaging: t,
|
|
@@ -3050,7 +3059,7 @@ function pr() {
|
|
|
3050
3059
|
activeWorkspace: Me
|
|
3051
3060
|
};
|
|
3052
3061
|
}
|
|
3053
|
-
function
|
|
3062
|
+
function Lr(e) {
|
|
3054
3063
|
if (!e)
|
|
3055
3064
|
throw new Error("Blade cannot be null or undefined.");
|
|
3056
3065
|
if (typeof e == "object" && "name" in e && typeof e.name == "string")
|
|
@@ -3058,27 +3067,27 @@ function Tr(e) {
|
|
|
3058
3067
|
const t = e;
|
|
3059
3068
|
return t.name || t.__name || "UnknownBlade";
|
|
3060
3069
|
}
|
|
3061
|
-
function
|
|
3070
|
+
function yt(e) {
|
|
3062
3071
|
const [t, a = ""] = e.replace(/^#/, "").split("?");
|
|
3063
3072
|
return [t, a];
|
|
3064
3073
|
}
|
|
3065
|
-
function
|
|
3074
|
+
function Rr(e) {
|
|
3066
3075
|
const t = Number(e);
|
|
3067
3076
|
return !isNaN(t) && String(t) === e ? t : e;
|
|
3068
3077
|
}
|
|
3069
|
-
function
|
|
3070
|
-
const { bladeStack: e, messaging: t, bladeRegistry: a, router: n, blades: s, activeWorkspace: o } =
|
|
3078
|
+
function Xl() {
|
|
3079
|
+
const { bladeStack: e, messaging: t, bladeRegistry: a, router: n, blades: s, activeWorkspace: o } = Or(), r = ln() ? Q($t, void 0) : void 0;
|
|
3071
3080
|
function l() {
|
|
3072
3081
|
return r ? r.value.id : e.activeBlade.value?.id;
|
|
3073
3082
|
}
|
|
3074
|
-
function
|
|
3083
|
+
function c(g) {
|
|
3075
3084
|
const L = e.blades.value;
|
|
3076
3085
|
if (g >= 0 && g < L.length)
|
|
3077
3086
|
return L[g].id;
|
|
3078
3087
|
}
|
|
3079
3088
|
async function u(g, L) {
|
|
3080
3089
|
const I = {
|
|
3081
|
-
name:
|
|
3090
|
+
name: Lr(g.blade),
|
|
3082
3091
|
param: g.param,
|
|
3083
3092
|
options: g.options,
|
|
3084
3093
|
onOpen: g.onOpen,
|
|
@@ -3096,24 +3105,24 @@ function ql() {
|
|
|
3096
3105
|
}
|
|
3097
3106
|
async function f(g) {
|
|
3098
3107
|
oe("closeBlade(index)", "useBlade().closeSelf()");
|
|
3099
|
-
const L =
|
|
3108
|
+
const L = c(g);
|
|
3100
3109
|
return L ? e.closeBlade(L) : (et.error(`closeBlade: No blade found at index ${g}.`), !1);
|
|
3101
3110
|
}
|
|
3102
3111
|
function m() {
|
|
3103
3112
|
oe("goToRoot()");
|
|
3104
|
-
const g =
|
|
3113
|
+
const g = Pn(n);
|
|
3105
3114
|
if (g?.name)
|
|
3106
3115
|
return {
|
|
3107
3116
|
name: g.name,
|
|
3108
3117
|
params: n.currentRoute.value.params
|
|
3109
3118
|
};
|
|
3110
|
-
const L =
|
|
3119
|
+
const L = bn(n);
|
|
3111
3120
|
return { path: L ? `/${L}` : "/" };
|
|
3112
3121
|
}
|
|
3113
3122
|
async function E(g, L) {
|
|
3114
3123
|
oe("onParentCall(args, index)", "useBlade().callParent(method, args)");
|
|
3115
3124
|
let p;
|
|
3116
|
-
if (L !== void 0 ? p =
|
|
3125
|
+
if (L !== void 0 ? p = c(L) : p = l(), !p) {
|
|
3117
3126
|
et.error("onParentCall: Could not determine caller blade.");
|
|
3118
3127
|
return;
|
|
3119
3128
|
}
|
|
@@ -3124,11 +3133,11 @@ function ql() {
|
|
|
3124
3133
|
et.error(`onParentCall: Failed to call parent method "${g.method}":`, I);
|
|
3125
3134
|
}
|
|
3126
3135
|
}
|
|
3127
|
-
function
|
|
3136
|
+
function d(g) {
|
|
3128
3137
|
oe("onBeforeClose(cb)", "useBlade().onBeforeClose(guard)");
|
|
3129
3138
|
const L = l();
|
|
3130
3139
|
if (!L) {
|
|
3131
|
-
|
|
3140
|
+
un("onBeforeClose: Could not determine current blade.");
|
|
3132
3141
|
return;
|
|
3133
3142
|
}
|
|
3134
3143
|
e.registerBeforeClose(L, async () => await g() === !1);
|
|
@@ -3143,11 +3152,11 @@ function ql() {
|
|
|
3143
3152
|
oe("setNavigationQuery");
|
|
3144
3153
|
const L = e.workspace.value;
|
|
3145
3154
|
if (!L) return;
|
|
3146
|
-
const p = L.name.toLowerCase(), [I, N] =
|
|
3155
|
+
const p = L.name.toLowerCase(), [I, N] = yt(window.location.hash), M = new URLSearchParams(N);
|
|
3147
3156
|
for (const z of [...M.keys()])
|
|
3148
3157
|
z.startsWith(`${p}_`) && M.delete(z);
|
|
3149
|
-
for (const [z,
|
|
3150
|
-
|
|
3158
|
+
for (const [z, ce] of Object.entries(g))
|
|
3159
|
+
ce != null && M.set(`${p}_${z}`, String(ce));
|
|
3151
3160
|
const V = M.toString();
|
|
3152
3161
|
n.options.history.replace(V ? `${I}?${V}` : I);
|
|
3153
3162
|
}
|
|
@@ -3155,17 +3164,17 @@ function ql() {
|
|
|
3155
3164
|
oe("getNavigationQuery");
|
|
3156
3165
|
const g = e.workspace.value;
|
|
3157
3166
|
if (!g) return;
|
|
3158
|
-
const L = g.name.toLowerCase(), p = new URLSearchParams(
|
|
3167
|
+
const L = g.name.toLowerCase(), p = new URLSearchParams(yt(window.location.hash)[1]), I = {};
|
|
3159
3168
|
for (const [N, M] of p.entries())
|
|
3160
|
-
N.startsWith(`${L}_`) && (I[N.replace(`${L}_`, "")] =
|
|
3169
|
+
N.startsWith(`${L}_`) && (I[N.replace(`${L}_`, "")] = Rr(M));
|
|
3161
3170
|
return Object.keys(I).length > 0 ? I : void 0;
|
|
3162
3171
|
}
|
|
3163
3172
|
function w(g, L) {
|
|
3164
|
-
const p =
|
|
3173
|
+
const p = c(g);
|
|
3165
3174
|
p && e.setBladeError(p, L);
|
|
3166
3175
|
}
|
|
3167
3176
|
function C(g) {
|
|
3168
|
-
const L =
|
|
3177
|
+
const L = c(g);
|
|
3169
3178
|
L && e.clearBladeError(L);
|
|
3170
3179
|
}
|
|
3171
3180
|
const A = v(() => {
|
|
@@ -3185,7 +3194,7 @@ function ql() {
|
|
|
3185
3194
|
closeBlade: f,
|
|
3186
3195
|
goToRoot: m,
|
|
3187
3196
|
onParentCall: E,
|
|
3188
|
-
onBeforeClose:
|
|
3197
|
+
onBeforeClose: d,
|
|
3189
3198
|
resolveBladeByName: S,
|
|
3190
3199
|
routeResolver: h,
|
|
3191
3200
|
setNavigationQuery: O,
|
|
@@ -3201,6 +3210,8 @@ function Ce(e) {
|
|
|
3201
3210
|
function Fe(e, t) {
|
|
3202
3211
|
if (Ce(e) && Ce(t) || Ce(e) && Array.isArray(t) && t.length === 0 || Array.isArray(e) && e.length === 0 && Ce(t) || e === t) return !0;
|
|
3203
3212
|
if (typeof e != typeof t || typeof e != "object" || e === null || t === null) return !1;
|
|
3213
|
+
if (e instanceof Date || t instanceof Date)
|
|
3214
|
+
return e instanceof Date && t instanceof Date && Object.is(e.getTime(), t.getTime());
|
|
3204
3215
|
if (Array.isArray(e) || Array.isArray(t))
|
|
3205
3216
|
return !Array.isArray(e) || !Array.isArray(t) || e.length !== t.length ? !1 : e.every((o, r) => Fe(o, t[r]));
|
|
3206
3217
|
const a = e, n = t, s = /* @__PURE__ */ new Set([...Object.keys(a), ...Object.keys(n)]);
|
|
@@ -3208,7 +3219,7 @@ function Fe(e, t) {
|
|
|
3208
3219
|
if (!Fe(a[o], n[o])) return !1;
|
|
3209
3220
|
return !0;
|
|
3210
3221
|
}
|
|
3211
|
-
function
|
|
3222
|
+
function Jl(e) {
|
|
3212
3223
|
const {
|
|
3213
3224
|
data: t,
|
|
3214
3225
|
canSaveOverride: a,
|
|
@@ -3216,7 +3227,7 @@ function Zl(e) {
|
|
|
3216
3227
|
autoBeforeUnload: s = !0,
|
|
3217
3228
|
closeConfirmMessage: o,
|
|
3218
3229
|
onRevert: r
|
|
3219
|
-
} = e, { meta: l, setFieldError:
|
|
3230
|
+
} = e, { meta: l, setFieldError: c, errorBag: u } = ue({ validateOnMount: !1 }), f = b(J(t.value)), m = b(!1);
|
|
3220
3231
|
ae(
|
|
3221
3232
|
t,
|
|
3222
3233
|
(w) => {
|
|
@@ -3224,7 +3235,7 @@ function Zl(e) {
|
|
|
3224
3235
|
},
|
|
3225
3236
|
{ deep: !0 }
|
|
3226
3237
|
);
|
|
3227
|
-
const E = b(!1),
|
|
3238
|
+
const E = b(!1), d = v(() => E.value && m.value), S = v(() => !(!E.value || !l.value.valid || !m.value || a && !a.value));
|
|
3228
3239
|
function h() {
|
|
3229
3240
|
f.value = J(t.value), m.value = !1, E.value = !0;
|
|
3230
3241
|
}
|
|
@@ -3236,57 +3247,57 @@ function Zl(e) {
|
|
|
3236
3247
|
return r();
|
|
3237
3248
|
t.value = J(f.value);
|
|
3238
3249
|
}
|
|
3239
|
-
if (s &&
|
|
3240
|
-
const { onBeforeClose: w } =
|
|
3250
|
+
if (s && Xs(d), n !== !1) {
|
|
3251
|
+
const { onBeforeClose: w } = ct(), { showConfirmation: C } = Nn();
|
|
3241
3252
|
w(async () => {
|
|
3242
3253
|
let A;
|
|
3243
|
-
if (typeof n == "object" ? A = n.value &&
|
|
3244
|
-
const g = o ?
|
|
3254
|
+
if (typeof n == "object" ? A = n.value && d.value : A = d.value, A) {
|
|
3255
|
+
const g = o ? kt(o) : "You have unsaved changes. Are you sure you want to leave?";
|
|
3245
3256
|
return !await C(g);
|
|
3246
3257
|
}
|
|
3247
3258
|
return !1;
|
|
3248
3259
|
});
|
|
3249
3260
|
}
|
|
3250
|
-
return
|
|
3261
|
+
return Bt(xn, { isModified: d, canSave: S }), {
|
|
3251
3262
|
setBaseline: h,
|
|
3252
3263
|
markReady: O,
|
|
3253
3264
|
revert: _,
|
|
3254
3265
|
canSave: S,
|
|
3255
|
-
isModified:
|
|
3266
|
+
isModified: d,
|
|
3256
3267
|
isReady: v(() => E.value),
|
|
3257
3268
|
formMeta: l,
|
|
3258
|
-
setFieldError:
|
|
3269
|
+
setFieldError: c,
|
|
3259
3270
|
errorBag: u
|
|
3260
3271
|
};
|
|
3261
3272
|
}
|
|
3262
|
-
const Be = 14,
|
|
3263
|
-
function
|
|
3273
|
+
const Be = 14, Ba = 3;
|
|
3274
|
+
function _r(e, t, a) {
|
|
3264
3275
|
const n = e.length, s = (u) => u !== void 0 && t.get(u) || 0, o = n > 0 ? e[n - 1] : void 0, r = s(o), l = e.map((u, f) => {
|
|
3265
3276
|
const m = n - 1 - f;
|
|
3266
3277
|
let E = 0;
|
|
3267
3278
|
for (let S = f + 1; S < n; S++)
|
|
3268
3279
|
E += s(e[S]);
|
|
3269
|
-
const
|
|
3280
|
+
const d = m * Be + E;
|
|
3270
3281
|
return {
|
|
3271
3282
|
sonnerIndex: m,
|
|
3272
3283
|
zIndex: n - m,
|
|
3273
|
-
offset:
|
|
3284
|
+
offset: d,
|
|
3274
3285
|
initialHeight: s(u)
|
|
3275
3286
|
};
|
|
3276
3287
|
});
|
|
3277
|
-
let
|
|
3288
|
+
let c;
|
|
3278
3289
|
if (a && n > 1) {
|
|
3279
3290
|
const u = n - 1;
|
|
3280
3291
|
let f = 0;
|
|
3281
|
-
for (let
|
|
3282
|
-
f += s(e[
|
|
3292
|
+
for (let d = 1; d < n; d++)
|
|
3293
|
+
f += s(e[d]);
|
|
3283
3294
|
const m = u * Be + f, E = s(e[0]);
|
|
3284
|
-
|
|
3295
|
+
c = m + E;
|
|
3285
3296
|
} else
|
|
3286
|
-
|
|
3287
|
-
return { toasts: l, frontHeight: r, groupHeight:
|
|
3297
|
+
c = r + Math.min(n - 1, Ba - 1) * Be;
|
|
3298
|
+
return { toasts: l, frontHeight: r, groupHeight: c };
|
|
3288
3299
|
}
|
|
3289
|
-
function
|
|
3300
|
+
function Ir() {
|
|
3290
3301
|
const e = b(!1), t = b(!1);
|
|
3291
3302
|
let a = null;
|
|
3292
3303
|
function n() {
|
|
@@ -3305,7 +3316,7 @@ function Lr() {
|
|
|
3305
3316
|
function l(f) {
|
|
3306
3317
|
o.delete(f);
|
|
3307
3318
|
}
|
|
3308
|
-
function
|
|
3319
|
+
function c() {
|
|
3309
3320
|
o.clear();
|
|
3310
3321
|
}
|
|
3311
3322
|
function u(f) {
|
|
@@ -3319,11 +3330,11 @@ function Lr() {
|
|
|
3319
3330
|
collapseStack: s,
|
|
3320
3331
|
reportHeight: r,
|
|
3321
3332
|
forgetHeight: l,
|
|
3322
|
-
clearHeights:
|
|
3333
|
+
clearHeights: c,
|
|
3323
3334
|
setInteracting: u
|
|
3324
3335
|
};
|
|
3325
3336
|
}
|
|
3326
|
-
const
|
|
3337
|
+
const vr = W({
|
|
3327
3338
|
name: "NotificationContainer",
|
|
3328
3339
|
inheritAttrs: !1,
|
|
3329
3340
|
props: {
|
|
@@ -3379,20 +3390,20 @@ const Rr = W({
|
|
|
3379
3390
|
}
|
|
3380
3391
|
},
|
|
3381
3392
|
setup(e) {
|
|
3382
|
-
const { notificationContainers: t, actions: a } = Q(
|
|
3393
|
+
const { notificationContainers: t, actions: a } = Q(Xt), n = v(() => t[e.position].value || []), {
|
|
3383
3394
|
expanded: s,
|
|
3384
3395
|
heightsMap: o,
|
|
3385
3396
|
expandStack: r,
|
|
3386
3397
|
collapseStack: l,
|
|
3387
|
-
reportHeight:
|
|
3398
|
+
reportHeight: c,
|
|
3388
3399
|
forgetHeight: u,
|
|
3389
3400
|
clearHeights: f,
|
|
3390
3401
|
setInteracting: m
|
|
3391
|
-
} =
|
|
3402
|
+
} = Ir();
|
|
3392
3403
|
function E(O) {
|
|
3393
3404
|
return typeof O == "object" && (!!O?.render || !!O?.setup);
|
|
3394
3405
|
}
|
|
3395
|
-
function
|
|
3406
|
+
function d(O) {
|
|
3396
3407
|
O && (u(O), a.remove(O));
|
|
3397
3408
|
}
|
|
3398
3409
|
function S() {
|
|
@@ -3400,27 +3411,27 @@ const Rr = W({
|
|
|
3400
3411
|
}
|
|
3401
3412
|
const h = v(() => (e.position || "top-center").startsWith("top"));
|
|
3402
3413
|
return () => {
|
|
3403
|
-
const O = n.value, _ = O.length, w = s.value || _ <= 1, C = _ > 1, A =
|
|
3414
|
+
const O = n.value, _ = O.length, w = s.value || _ <= 1, C = _ > 1, A = _r(
|
|
3404
3415
|
O.map((p) => p.notificationId),
|
|
3405
3416
|
o,
|
|
3406
3417
|
w
|
|
3407
3418
|
), g = O.map((p, I) => {
|
|
3408
|
-
const { sonnerIndex: N, zIndex: M, offset: V, initialHeight: z } = A.toasts[I],
|
|
3419
|
+
const { sonnerIndex: N, zIndex: M, offset: V, initialHeight: z } = A.toasts[I], ce = {
|
|
3409
3420
|
"--toasts-before": N,
|
|
3410
3421
|
"--z-index": M,
|
|
3411
3422
|
"--offset": `${V}px`,
|
|
3412
3423
|
"--initial-height": z ? `${z}px` : "auto"
|
|
3413
|
-
},
|
|
3424
|
+
}, Se = {
|
|
3414
3425
|
...p,
|
|
3415
|
-
onClose:
|
|
3416
|
-
onReportHeight:
|
|
3426
|
+
onClose: d,
|
|
3427
|
+
onReportHeight: c,
|
|
3417
3428
|
toastIndex: N,
|
|
3418
3429
|
toastsCount: _,
|
|
3419
3430
|
expanded: w,
|
|
3420
|
-
visibleToasts:
|
|
3421
|
-
style:
|
|
3422
|
-
},
|
|
3423
|
-
return ee("li", { key: p.notificationId, style: { display: "contents" } }, [
|
|
3431
|
+
visibleToasts: Ba,
|
|
3432
|
+
style: ce
|
|
3433
|
+
}, ka = p.content && E(p.content) ? ee(St, { ...Se, content: ee(cn(p.content)) }) : ee(St, Se);
|
|
3434
|
+
return ee("li", { key: p.notificationId, style: { display: "contents" } }, [ka]);
|
|
3424
3435
|
});
|
|
3425
3436
|
let L = null;
|
|
3426
3437
|
return C && (L = ee(
|
|
@@ -3446,7 +3457,7 @@ const Rr = W({
|
|
|
3446
3457
|
onClick: S
|
|
3447
3458
|
},
|
|
3448
3459
|
[
|
|
3449
|
-
ee(
|
|
3460
|
+
ee($n, { icon: "lucide-x", size: "xs", "aria-hidden": "true" }),
|
|
3450
3461
|
x.global.t("CORE.NOTIFICATIONS.CLEAR_ALL")
|
|
3451
3462
|
]
|
|
3452
3463
|
)
|
|
@@ -3477,40 +3488,40 @@ const Rr = W({
|
|
|
3477
3488
|
);
|
|
3478
3489
|
};
|
|
3479
3490
|
}
|
|
3480
|
-
}),
|
|
3491
|
+
}), wr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
3481
3492
|
__proto__: null,
|
|
3482
|
-
default:
|
|
3493
|
+
default: vr
|
|
3483
3494
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
3484
|
-
function
|
|
3495
|
+
function Cr(e, t) {
|
|
3485
3496
|
t.i18n?.locale && (x.global.locale.value = t.i18n.locale), t.i18n?.fallbackLocale && (x.global.fallbackLocale.value = t.i18n.fallbackLocale), e.use(x);
|
|
3486
|
-
const a =
|
|
3487
|
-
e.provide(
|
|
3497
|
+
const a = Dn();
|
|
3498
|
+
e.provide(Kn, a);
|
|
3488
3499
|
const { resolveCamelCaseLocale: n } = a;
|
|
3489
3500
|
e.config.globalProperties.$mergeLocaleMessage = (s, o) => {
|
|
3490
3501
|
x.global.mergeLocaleMessage(n(s), o);
|
|
3491
|
-
}, Object.entries(
|
|
3502
|
+
}, Object.entries(xo).forEach(([s, o]) => {
|
|
3492
3503
|
x.global.mergeLocaleMessage(n(s), o);
|
|
3493
3504
|
});
|
|
3494
3505
|
}
|
|
3495
|
-
function
|
|
3496
|
-
const t =
|
|
3506
|
+
function Pr(e) {
|
|
3507
|
+
const t = Ua({
|
|
3497
3508
|
phone: 480,
|
|
3498
3509
|
desktop: 1024
|
|
3499
3510
|
});
|
|
3500
|
-
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(
|
|
3511
|
+
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(zn, e.config.globalProperties.$isPhone), e.provide(Yn, e.config.globalProperties.$isTablet), e.provide(qn, e.config.globalProperties.$isMobile), e.provide(Zn, e.config.globalProperties.$isDesktop), e.provide(jn, e.config.globalProperties.$isTouch);
|
|
3501
3512
|
}
|
|
3502
|
-
function
|
|
3503
|
-
e.config.globalProperties.pages = [], e.config.globalProperties.bladeRoutes = [], e.provide(
|
|
3513
|
+
function br(e) {
|
|
3514
|
+
e.config.globalProperties.pages = [], e.config.globalProperties.bladeRoutes = [], e.provide(Xn, e.config.globalProperties.bladeRoutes);
|
|
3504
3515
|
}
|
|
3505
|
-
function
|
|
3506
|
-
e.provide(
|
|
3507
|
-
const t =
|
|
3508
|
-
e.provide(
|
|
3516
|
+
function Nr(e) {
|
|
3517
|
+
e.provide(xt, Ka()), e.provide(Jn, za()), e.provide(Qn, Ya()), e.provide(es, qa()), e.provide(ts, Za()), e.provide(as, me());
|
|
3518
|
+
const t = yn(e);
|
|
3519
|
+
e.provide(Ft, t);
|
|
3509
3520
|
}
|
|
3510
|
-
function
|
|
3511
|
-
|
|
3521
|
+
function Dr(e, t) {
|
|
3522
|
+
Xo(), e.use(Bs, { router: t.router }), e.use(Ws), e.use(ho), e.use(Io), e.use(Ns), e.use(bs), e.use(gs), e.use(os, t.aiAgent);
|
|
3512
3523
|
}
|
|
3513
|
-
function
|
|
3524
|
+
function yr(e, t) {
|
|
3514
3525
|
if (!t.applicationInsights?.instrumentationKey) return;
|
|
3515
3526
|
const a = {
|
|
3516
3527
|
appInsightsConfig: {
|
|
@@ -3523,9 +3534,9 @@ function br(e, t) {
|
|
|
3523
3534
|
cloudRole: t.applicationInsights?.cloudRole,
|
|
3524
3535
|
cloudRoleInstance: t.applicationInsights?.cloudRoleInstance
|
|
3525
3536
|
};
|
|
3526
|
-
e.provide(
|
|
3537
|
+
e.provide(ja, a);
|
|
3527
3538
|
}
|
|
3528
|
-
function
|
|
3539
|
+
function Mr(e, t) {
|
|
3529
3540
|
if (!t.applicationInsights?.instrumentationKey) return;
|
|
3530
3541
|
const a = {
|
|
3531
3542
|
appInsightsConfig: {
|
|
@@ -3538,10 +3549,10 @@ function Nr(e, t) {
|
|
|
3538
3549
|
cloudRole: t.applicationInsights?.cloudRole,
|
|
3539
3550
|
cloudRoleInstance: t.applicationInsights?.cloudRoleInstance
|
|
3540
3551
|
};
|
|
3541
|
-
e.use(
|
|
3542
|
-
const n = e.runWithContext(() =>
|
|
3543
|
-
e.provide(
|
|
3544
|
-
const { setupPageTracking: s } =
|
|
3552
|
+
e.use(Ss, a);
|
|
3553
|
+
const n = e.runWithContext(() => As());
|
|
3554
|
+
e.provide(Xa, n), e.runWithContext(() => {
|
|
3555
|
+
const { setupPageTracking: s } = Ja();
|
|
3545
3556
|
t.router.beforeEach((o) => {
|
|
3546
3557
|
s.beforeEach({ name: o.name });
|
|
3547
3558
|
}), t.router.afterEach((o) => {
|
|
@@ -3549,20 +3560,20 @@ function Nr(e, t) {
|
|
|
3549
3560
|
});
|
|
3550
3561
|
});
|
|
3551
3562
|
}
|
|
3552
|
-
function
|
|
3563
|
+
function Br(e) {
|
|
3553
3564
|
const t = (a) => {
|
|
3554
3565
|
let n = {};
|
|
3555
3566
|
return Object.keys(a.params).length > 0 && (n = Object.fromEntries(Object.entries(a.params).filter(([s]) => s !== "pathMatch"))), n;
|
|
3556
3567
|
};
|
|
3557
3568
|
e.beforeEach((a) => {
|
|
3558
3569
|
const { authState: n, loadUser: s } = se();
|
|
3559
|
-
return
|
|
3570
|
+
return Uo(a, {
|
|
3560
3571
|
authState: n,
|
|
3561
3572
|
loadUser: s,
|
|
3562
3573
|
onSessionCheckFailed: () => j.error(x.global.t("CORE.ERRORS.SESSION_CHECK_FAILED"), { timeout: 5e3 })
|
|
3563
3574
|
});
|
|
3564
3575
|
}), e.beforeEach((a, n) => {
|
|
3565
|
-
const { hasAccess: s } =
|
|
3576
|
+
const { hasAccess: s } = ot();
|
|
3566
3577
|
if (a.meta.permissions) {
|
|
3567
3578
|
if (s(a.meta.permissions)) return !0;
|
|
3568
3579
|
{
|
|
@@ -3575,427 +3586,428 @@ function Dr(e) {
|
|
|
3575
3586
|
} else return !0;
|
|
3576
3587
|
});
|
|
3577
3588
|
}
|
|
3578
|
-
const
|
|
3589
|
+
const Ql = {
|
|
3579
3590
|
install(e, t) {
|
|
3580
|
-
|
|
3581
|
-
performance.mark("vc:deferred-plugins-start"),
|
|
3591
|
+
er(), $a().register([{ key: "light", localizationKey: "core.themes.light" }]), window.fetch = ko(t.router), Cr(e, t), Pr(e), br(e), Nr(e), Dr(e, t), yr(e, t), $o(e), typeof window < "u" && (e.runWithContext(() => sa()), e.runWithContext(() => ra())), Br(t.router), setTimeout(() => {
|
|
3592
|
+
performance.mark("vc:deferred-plugins-start"), Mr(e, t), performance.mark("vc:deferred-plugins-done");
|
|
3582
3593
|
}, 0);
|
|
3583
3594
|
}
|
|
3584
3595
|
};
|
|
3585
3596
|
export {
|
|
3586
|
-
|
|
3587
|
-
|
|
3588
|
-
|
|
3589
|
-
|
|
3590
|
-
|
|
3591
|
-
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
|
|
3595
|
-
|
|
3596
|
-
|
|
3597
|
-
|
|
3598
|
-
|
|
3599
|
-
|
|
3600
|
-
|
|
3601
|
-
|
|
3602
|
-
|
|
3603
|
-
|
|
3604
|
-
|
|
3605
|
-
|
|
3606
|
-
|
|
3607
|
-
|
|
3608
|
-
|
|
3609
|
-
|
|
3610
|
-
|
|
3611
|
-
|
|
3612
|
-
|
|
3613
|
-
|
|
3614
|
-
|
|
3615
|
-
|
|
3616
|
-
|
|
3617
|
-
|
|
3618
|
-
|
|
3619
|
-
|
|
3620
|
-
|
|
3621
|
-
|
|
3622
|
-
|
|
3623
|
-
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
|
-
|
|
3627
|
-
|
|
3628
|
-
|
|
3629
|
-
|
|
3630
|
-
|
|
3631
|
-
|
|
3632
|
-
|
|
3633
|
-
|
|
3634
|
-
|
|
3635
|
-
|
|
3636
|
-
|
|
3637
|
-
|
|
3638
|
-
|
|
3639
|
-
|
|
3640
|
-
|
|
3641
|
-
|
|
3642
|
-
|
|
3643
|
-
|
|
3644
|
-
|
|
3645
|
-
|
|
3646
|
-
|
|
3647
|
-
|
|
3648
|
-
|
|
3649
|
-
|
|
3650
|
-
|
|
3651
|
-
|
|
3652
|
-
|
|
3653
|
-
|
|
3654
|
-
|
|
3655
|
-
|
|
3656
|
-
|
|
3657
|
-
|
|
3658
|
-
|
|
3659
|
-
|
|
3660
|
-
|
|
3661
|
-
|
|
3662
|
-
|
|
3663
|
-
|
|
3664
|
-
|
|
3665
|
-
|
|
3666
|
-
|
|
3667
|
-
|
|
3668
|
-
|
|
3669
|
-
|
|
3670
|
-
|
|
3671
|
-
|
|
3672
|
-
|
|
3673
|
-
|
|
3674
|
-
|
|
3675
|
-
|
|
3676
|
-
|
|
3677
|
-
|
|
3678
|
-
|
|
3679
|
-
|
|
3680
|
-
|
|
3681
|
-
|
|
3682
|
-
|
|
3683
|
-
|
|
3684
|
-
|
|
3685
|
-
|
|
3686
|
-
|
|
3687
|
-
|
|
3688
|
-
|
|
3689
|
-
|
|
3690
|
-
|
|
3691
|
-
|
|
3692
|
-
|
|
3693
|
-
|
|
3694
|
-
|
|
3695
|
-
|
|
3696
|
-
|
|
3697
|
-
|
|
3698
|
-
|
|
3699
|
-
|
|
3700
|
-
|
|
3701
|
-
|
|
3702
|
-
|
|
3703
|
-
|
|
3704
|
-
|
|
3705
|
-
|
|
3706
|
-
|
|
3707
|
-
|
|
3708
|
-
|
|
3709
|
-
|
|
3710
|
-
|
|
3711
|
-
|
|
3712
|
-
|
|
3713
|
-
|
|
3714
|
-
|
|
3715
|
-
|
|
3716
|
-
|
|
3717
|
-
|
|
3718
|
-
|
|
3719
|
-
|
|
3720
|
-
|
|
3721
|
-
|
|
3722
|
-
|
|
3723
|
-
|
|
3724
|
-
|
|
3725
|
-
|
|
3726
|
-
|
|
3727
|
-
|
|
3728
|
-
|
|
3729
|
-
|
|
3730
|
-
|
|
3731
|
-
|
|
3732
|
-
|
|
3733
|
-
|
|
3734
|
-
|
|
3735
|
-
|
|
3736
|
-
|
|
3737
|
-
|
|
3738
|
-
|
|
3739
|
-
|
|
3740
|
-
|
|
3741
|
-
|
|
3742
|
-
|
|
3743
|
-
|
|
3744
|
-
|
|
3597
|
+
Jf as AI_AGENT_URL_ENV_KEY,
|
|
3598
|
+
jE as AiAgentServiceKey,
|
|
3599
|
+
Wn as ApiException,
|
|
3600
|
+
XE as AppBarMobileButtonsServiceKey,
|
|
3601
|
+
Qn as AppBarWidgetServiceKey,
|
|
3602
|
+
Xa as AppInsightsInstanceKey,
|
|
3603
|
+
ja as AppInsightsOptionsKey,
|
|
3604
|
+
JE as AppManifestClient,
|
|
3605
|
+
QE as AppPlacement,
|
|
3606
|
+
ef as AppRootElementKey,
|
|
3607
|
+
tf as AppsClient,
|
|
3608
|
+
ho as AssetsDetailsModule,
|
|
3609
|
+
Ro as AssetsManager,
|
|
3610
|
+
Io as AssetsManagerModule,
|
|
3611
|
+
af as AuthApiBase,
|
|
3612
|
+
nf as AuthorizationClient,
|
|
3613
|
+
au as BUILTIN_CELL_TYPES,
|
|
3614
|
+
sf as BladeBackButtonKey,
|
|
3615
|
+
of as BladeBannersKey,
|
|
3616
|
+
Kt as BladeContextKey,
|
|
3617
|
+
rf as BladeDataKey,
|
|
3618
|
+
$t as BladeDescriptorKey,
|
|
3619
|
+
nu as BladeError,
|
|
3620
|
+
xn as BladeFormKey,
|
|
3621
|
+
lf as BladeLoadingKey,
|
|
3622
|
+
uf as BladeMaximizedKey,
|
|
3623
|
+
kn as BladeMessagingKey,
|
|
3624
|
+
cf as BladeRenderingStateKey,
|
|
3625
|
+
Xn as BladeRoutesKey,
|
|
3626
|
+
Bn as BladeStackKey,
|
|
3627
|
+
su as ButtonGroupKey,
|
|
3628
|
+
ks as COMPONENT_DEFAULTS,
|
|
3629
|
+
ou as CellDate,
|
|
3630
|
+
ru as CellDateAgo,
|
|
3631
|
+
iu as CellDefault,
|
|
3632
|
+
lu as CellEditableWrapper,
|
|
3633
|
+
uu as CellHtml,
|
|
3634
|
+
cu as CellImage,
|
|
3635
|
+
du as CellLink,
|
|
3636
|
+
Eu as CellMoney,
|
|
3637
|
+
fu as CellNumber,
|
|
3638
|
+
mu as CellStatus,
|
|
3639
|
+
gu as CellStatusIcon,
|
|
3640
|
+
df as ChangeLogClient,
|
|
3641
|
+
Pc as ChangePassword,
|
|
3642
|
+
bc as ChangePasswordButton,
|
|
3643
|
+
Zl as ChangePasswordPage,
|
|
3644
|
+
Pm as ChartContainer,
|
|
3645
|
+
bm as ChartLegend,
|
|
3646
|
+
Nm as ChartTooltip,
|
|
3647
|
+
Ef as CloseSettingsMenuKey,
|
|
3648
|
+
Nc as ColumnCollector,
|
|
3649
|
+
Qf as DEFAULT_AI_AGENT_CONFIG,
|
|
3650
|
+
Dm as DashboardBarChart,
|
|
3651
|
+
ym as DashboardDonutChart,
|
|
3652
|
+
gm as DashboardFeedList,
|
|
3653
|
+
Sm as DashboardFeedRow,
|
|
3654
|
+
Mm as DashboardLineChart,
|
|
3655
|
+
ff as DashboardServiceKey,
|
|
3656
|
+
Am as DashboardStatItem,
|
|
3657
|
+
pm as DashboardWidgetCard,
|
|
3658
|
+
mf as DeveloperToolsClient,
|
|
3659
|
+
gf as DiagnosticsClient,
|
|
3660
|
+
Su as DisplayableError,
|
|
3661
|
+
Tm as DraggableDashboard,
|
|
3662
|
+
Sf as DynamicModulesKey,
|
|
3663
|
+
Af as DynamicPropertiesClient,
|
|
3664
|
+
pf as DynamicPropertyValueType,
|
|
3665
|
+
em as EMBEDDED_TO_HOST_MESSAGE_TYPES,
|
|
3666
|
+
Tf as EmbeddedModeKey,
|
|
3667
|
+
hf as EntryState,
|
|
3668
|
+
Dc as ErrorInterceptor,
|
|
3669
|
+
vs as ExtensionPoint,
|
|
3670
|
+
km as ExtensionPoints,
|
|
3671
|
+
or as ExternalProviders,
|
|
3672
|
+
Of as ExternalSignInClient,
|
|
3673
|
+
Au as FALLBACK_BLADE_ID,
|
|
3674
|
+
zl as ForgotPassword,
|
|
3675
|
+
pu as FrameworkError,
|
|
3676
|
+
tm as HOST_TO_EMBEDDED_MESSAGE_TYPES,
|
|
3677
|
+
Mt as InjectionError,
|
|
3678
|
+
Lf as InternalRoutesKey,
|
|
3679
|
+
ql as Invite,
|
|
3680
|
+
Zn as IsDesktopKey,
|
|
3681
|
+
qn as IsMobileKey,
|
|
3682
|
+
zn as IsPhoneKey,
|
|
3683
|
+
Yn as IsTabletKey,
|
|
3684
|
+
jn as IsTouchKey,
|
|
3685
|
+
Rf as JobsClient,
|
|
3686
|
+
_f as JsonValueKind,
|
|
3687
|
+
hm as LAYOUT_STORAGE_KEY,
|
|
3688
|
+
yc as LanguageSelector,
|
|
3689
|
+
Kn as LanguageServiceKey,
|
|
3690
|
+
If as LocalizableSettingsClient,
|
|
3691
|
+
Kl as Login,
|
|
3692
|
+
Mc as LogoutButton,
|
|
3693
|
+
Bc as MenuBurgerIcon,
|
|
3694
|
+
es as MenuServiceKey,
|
|
3695
|
+
Tu as ModuleLoadError,
|
|
3696
|
+
vf as ModulesClient,
|
|
3697
|
+
wf as ModulesLoadErrorKey,
|
|
3698
|
+
Cf as ModulesReadyKey,
|
|
3699
|
+
Pf as NOOP_URL_SINK,
|
|
3700
|
+
vr as NotificationContainer,
|
|
3701
|
+
dn as NotificationContextKey,
|
|
3702
|
+
kc as NotificationDropdown,
|
|
3703
|
+
as as NotificationStoreKey,
|
|
3704
|
+
Vc as NotificationTemplate,
|
|
3705
|
+
bf as OAuthAppsClient,
|
|
3706
|
+
Nf as ProgressMessageLevel,
|
|
3707
|
+
Df as PushNotificationClient,
|
|
3708
|
+
hu as RegistrationError,
|
|
3709
|
+
Yl as ResetPassword,
|
|
3710
|
+
Uc as SCHEDULER_ZOOM_LEVELS,
|
|
3711
|
+
Fn as SecurityClient,
|
|
3712
|
+
Ou as ServiceError,
|
|
3713
|
+
Vn as SettingClient,
|
|
3714
|
+
yf as SettingValueType,
|
|
3715
|
+
Fc as SettingsMenu,
|
|
3716
|
+
Hc as SettingsMenuItem,
|
|
3717
|
+
ts as SettingsMenuServiceKey,
|
|
3718
|
+
Mf as SettingsV2Client,
|
|
3719
|
+
Bf as ShellIndicatorsKey,
|
|
3720
|
+
$l as Sidebar,
|
|
3721
|
+
kf as SortDirection,
|
|
3722
|
+
Wc as Table,
|
|
3723
|
+
Gc as TableBody,
|
|
3724
|
+
xc as TableCell,
|
|
3725
|
+
$c as TableCheckbox,
|
|
3726
|
+
Kc as TableColumnSwitcher,
|
|
3727
|
+
zc as TableEmpty,
|
|
3728
|
+
Yc as TableFooter,
|
|
3729
|
+
qc as TableGroupRow,
|
|
3730
|
+
Zc as TableHead,
|
|
3731
|
+
jc as TableHeader,
|
|
3732
|
+
Xc as TableRow,
|
|
3733
|
+
Jc as TableRowActions,
|
|
3734
|
+
Qc as TableSearchHeader,
|
|
3735
|
+
ed as TableSelectAllBar,
|
|
3736
|
+
td as ThemeSelector,
|
|
3737
|
+
Jn as ToolbarServiceKey,
|
|
3738
|
+
ad as UserDropdownButton,
|
|
3739
|
+
Lu as ValidationError,
|
|
3740
|
+
nd as VcAccordion,
|
|
3741
|
+
sd as VcAccordionItem,
|
|
3742
|
+
am as VcAiAgentPanel,
|
|
3743
|
+
od as VcApp,
|
|
3744
|
+
rd as VcAppBarMobileActions,
|
|
3745
|
+
id as VcAppBarOverlay,
|
|
3746
|
+
ld as VcAppBarWidgetContent,
|
|
3747
|
+
ud as VcAppBarWidgetItem,
|
|
3748
|
+
cd as VcAppBarWidgetsMenu,
|
|
3749
|
+
dd as VcAppDesktopLayout,
|
|
3750
|
+
Ed as VcAppMenu,
|
|
3751
|
+
fd as VcAppMenuSidebar,
|
|
3752
|
+
md as VcAppMobileLayout,
|
|
3753
|
+
gd as VcAppSidebarCollapseButton,
|
|
3754
|
+
Sd as VcAppSidebarContent,
|
|
3755
|
+
Ad as VcAppSidebarHeader,
|
|
3745
3756
|
_e as VcAuthLayout,
|
|
3746
|
-
|
|
3747
|
-
|
|
3748
|
-
|
|
3749
|
-
|
|
3750
|
-
|
|
3751
|
-
|
|
3752
|
-
|
|
3753
|
-
|
|
3757
|
+
pd as VcBadge,
|
|
3758
|
+
Cn as VcBanner,
|
|
3759
|
+
Wt as VcBlade,
|
|
3760
|
+
Td as VcBladeNavigation,
|
|
3761
|
+
Bs as VcBladeNavigationComponent,
|
|
3762
|
+
hd as VcBladeNavigationV2,
|
|
3763
|
+
Od as VcBladeSlot,
|
|
3764
|
+
Ld as VcBreadcrumbs,
|
|
3754
3765
|
$ as VcButton,
|
|
3755
|
-
|
|
3756
|
-
|
|
3757
|
-
|
|
3758
|
-
|
|
3759
|
-
|
|
3760
|
-
|
|
3761
|
-
|
|
3762
|
-
|
|
3763
|
-
|
|
3764
|
-
|
|
3765
|
-
|
|
3766
|
-
|
|
3767
|
-
|
|
3768
|
-
|
|
3769
|
-
|
|
3766
|
+
Rd as VcButtonGroup,
|
|
3767
|
+
_d as VcCard,
|
|
3768
|
+
wn as VcCheckbox,
|
|
3769
|
+
Id as VcCheckboxGroup,
|
|
3770
|
+
vd as VcCol,
|
|
3771
|
+
Ru as VcColorInput,
|
|
3772
|
+
Ae as VcColumn,
|
|
3773
|
+
Rn as VcContainer,
|
|
3774
|
+
In as VcDataTable,
|
|
3775
|
+
_u as VcDatePicker,
|
|
3776
|
+
wd as VcDropdown,
|
|
3777
|
+
Cd as VcDropdownItem,
|
|
3778
|
+
Pd as VcDynamicProperty,
|
|
3779
|
+
bd as VcEditor,
|
|
3780
|
+
Nd as VcEnvironmentBanner,
|
|
3770
3781
|
Ke as VcField,
|
|
3771
|
-
|
|
3772
|
-
|
|
3773
|
-
|
|
3774
|
-
|
|
3775
|
-
|
|
3776
|
-
|
|
3777
|
-
|
|
3778
|
-
|
|
3782
|
+
Dd as VcFileUpload,
|
|
3783
|
+
ge as VcForm,
|
|
3784
|
+
yd as VcGallery,
|
|
3785
|
+
fe as VcHint,
|
|
3786
|
+
$n as VcIcon,
|
|
3787
|
+
rt as VcImage,
|
|
3788
|
+
Md as VcImageTile,
|
|
3789
|
+
Bd as VcImageUpload,
|
|
3779
3790
|
K as VcInput,
|
|
3780
|
-
|
|
3781
|
-
|
|
3782
|
-
|
|
3783
|
-
|
|
3784
|
-
|
|
3785
|
-
|
|
3786
|
-
|
|
3787
|
-
|
|
3788
|
-
|
|
3789
|
-
|
|
3790
|
-
|
|
3791
|
-
|
|
3792
|
-
|
|
3793
|
-
|
|
3794
|
-
|
|
3795
|
-
|
|
3796
|
-
|
|
3797
|
-
|
|
3798
|
-
|
|
3799
|
-
|
|
3800
|
-
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3804
|
-
|
|
3805
|
-
|
|
3806
|
-
|
|
3807
|
-
|
|
3808
|
-
|
|
3809
|
-
|
|
3810
|
-
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
|
|
3815
|
-
|
|
3816
|
-
|
|
3817
|
-
|
|
3818
|
-
|
|
3819
|
-
|
|
3820
|
-
|
|
3821
|
-
|
|
3822
|
-
|
|
3823
|
-
|
|
3824
|
-
|
|
3825
|
-
|
|
3826
|
-
|
|
3827
|
-
|
|
3828
|
-
|
|
3829
|
-
|
|
3830
|
-
|
|
3831
|
-
|
|
3832
|
-
|
|
3833
|
-
|
|
3834
|
-
|
|
3835
|
-
|
|
3836
|
-
|
|
3837
|
-
|
|
3838
|
-
|
|
3791
|
+
Iu as VcInputCurrency,
|
|
3792
|
+
vu as VcInputDropdown,
|
|
3793
|
+
kd as VcInputGroup,
|
|
3794
|
+
wu as VcLabel,
|
|
3795
|
+
Vd as VcLanguageSelector,
|
|
3796
|
+
Cu as VcLink,
|
|
3797
|
+
Gt as VcLoading,
|
|
3798
|
+
Ud as VcMenu,
|
|
3799
|
+
Fd as VcMenuExpandedKey,
|
|
3800
|
+
Hd as VcMenuGroup,
|
|
3801
|
+
Wd as VcMenuItem,
|
|
3802
|
+
Gd as VcMultivalue,
|
|
3803
|
+
xd as VcPagination,
|
|
3804
|
+
$d as VcPopover,
|
|
3805
|
+
pn as VcPopup,
|
|
3806
|
+
Kd as VcProgress,
|
|
3807
|
+
zd as VcRadioButton,
|
|
3808
|
+
Yd as VcRadioGroup,
|
|
3809
|
+
qd as VcRating,
|
|
3810
|
+
Zd as VcRow,
|
|
3811
|
+
jd as VcScheduler,
|
|
3812
|
+
Pu as VcScrollableContainer,
|
|
3813
|
+
bu as VcSelect,
|
|
3814
|
+
vn as VcSidebar,
|
|
3815
|
+
Nu as VcSkeleton,
|
|
3816
|
+
Xd as VcSlider,
|
|
3817
|
+
Du as VcStatus,
|
|
3818
|
+
yu as VcStatusIcon,
|
|
3819
|
+
Jd as VcSwitch,
|
|
3820
|
+
Qd as VcTable,
|
|
3821
|
+
_n as VcTextarea,
|
|
3822
|
+
St as VcToast,
|
|
3823
|
+
Vf as VcTooltip,
|
|
3824
|
+
eE as VcVideo,
|
|
3825
|
+
tE as VcWidget,
|
|
3826
|
+
Un as WidgetScopeKey,
|
|
3827
|
+
xt as WidgetServiceKey,
|
|
3828
|
+
Ht as __registerBladeConfig,
|
|
3829
|
+
aE as _createEnvironmentNameLogic,
|
|
3830
|
+
Uf as _createInternalUserLogic,
|
|
3831
|
+
jl as _resetAdapterState,
|
|
3832
|
+
Ff as _sharedInternalUserLogic,
|
|
3833
|
+
Mu as addAppBarWidget,
|
|
3834
|
+
Bu as addMenuItem,
|
|
3835
|
+
ku as addSettingsMenuItem,
|
|
3836
|
+
Vu as after,
|
|
3837
|
+
os as aiAgentPlugin,
|
|
3838
|
+
nE as autofocus,
|
|
3839
|
+
Uu as before,
|
|
3840
|
+
Fu as bigInt,
|
|
3841
|
+
Ll as camelToSnake,
|
|
3842
|
+
_l as camelize,
|
|
3843
|
+
Om as clearLayoutStorage,
|
|
3844
|
+
Hu as convertColorNameToHex,
|
|
3845
|
+
Wu as convertMomentFormat,
|
|
3846
|
+
nm as createAiAgentToolbarButton,
|
|
3847
|
+
Pl as createAppModule,
|
|
3848
|
+
Gu as createBackendRegistry,
|
|
3849
|
+
xu as createKeyedBackendRegistry,
|
|
3839
3850
|
k as createLogger,
|
|
3840
|
-
|
|
3841
|
-
|
|
3842
|
-
|
|
3843
|
-
|
|
3844
|
-
|
|
3845
|
-
|
|
3846
|
-
|
|
3847
|
-
|
|
3848
|
-
|
|
3849
|
-
|
|
3850
|
-
|
|
3851
|
-
|
|
3852
|
-
|
|
3853
|
-
|
|
3854
|
-
|
|
3855
|
-
|
|
3856
|
-
|
|
3857
|
-
|
|
3858
|
-
|
|
3859
|
-
|
|
3860
|
-
|
|
3861
|
-
|
|
3862
|
-
|
|
3863
|
-
|
|
3864
|
-
|
|
3865
|
-
|
|
3851
|
+
Ql as default,
|
|
3852
|
+
ft as defineAppModule,
|
|
3853
|
+
Wl as defineBladeContext,
|
|
3854
|
+
Vm as defineExtensionPoint,
|
|
3855
|
+
sE as detectThemePreset,
|
|
3856
|
+
sm as expectedCode,
|
|
3857
|
+
om as expectedEventKey,
|
|
3858
|
+
$u as fileWeight,
|
|
3859
|
+
oE as focusFallbackTarget,
|
|
3860
|
+
rE as focusIfLoose,
|
|
3861
|
+
iE as formatBadgeCount,
|
|
3862
|
+
Ku as formatDateRelative,
|
|
3863
|
+
zu as formatDateWithPattern,
|
|
3864
|
+
rm as formatShortcut,
|
|
3865
|
+
Lm as fromGridstackNode,
|
|
3866
|
+
Wa as generateId,
|
|
3867
|
+
lE as getAllBladeConfigs,
|
|
3868
|
+
Yu as getBestThumbnailSize,
|
|
3869
|
+
uE as getBladeConfig,
|
|
3870
|
+
bl as getComponentDefaults,
|
|
3871
|
+
Zt as getExtensionColor,
|
|
3872
|
+
jt as getExtensionLabel,
|
|
3873
|
+
qu as getMenuBadge,
|
|
3874
|
+
Zu as getMenuBadges,
|
|
3875
|
+
ju as getThumbnailUrl,
|
|
3876
|
+
im as hotkey,
|
|
3866
3877
|
x as i18n,
|
|
3867
|
-
|
|
3868
|
-
|
|
3869
|
-
|
|
3870
|
-
|
|
3871
|
-
|
|
3872
|
-
|
|
3873
|
-
|
|
3874
|
-
|
|
3875
|
-
|
|
3876
|
-
|
|
3877
|
-
|
|
3878
|
-
|
|
3879
|
-
|
|
3880
|
-
|
|
3881
|
-
|
|
3882
|
-
|
|
3883
|
-
|
|
3884
|
-
|
|
3885
|
-
|
|
3886
|
-
|
|
3878
|
+
Gl as injectBladeContext,
|
|
3879
|
+
Hf as isAuthenticationFailure,
|
|
3880
|
+
Xu as isFrameworkError,
|
|
3881
|
+
Yt as isImage,
|
|
3882
|
+
Wf as isRtlElement,
|
|
3883
|
+
Ju as isScrolledToEnd,
|
|
3884
|
+
lm as isTextInputFocused,
|
|
3885
|
+
Qu as isValidHexColor,
|
|
3886
|
+
ws as kebabToCamel,
|
|
3887
|
+
Rl as kebabToPascal,
|
|
3888
|
+
cE as languageToCountryMap,
|
|
3889
|
+
Rm as loadLayoutFromStorage,
|
|
3890
|
+
Ha as loading,
|
|
3891
|
+
Gf as logger,
|
|
3892
|
+
xf as loggers,
|
|
3893
|
+
um as matchesEvent,
|
|
3894
|
+
_m as mergeLayoutWithWidgets,
|
|
3895
|
+
ec as mindimensions,
|
|
3896
|
+
$f as mirrorPlacement,
|
|
3897
|
+
tc as normalizeHexColor,
|
|
3887
3898
|
j as notification,
|
|
3888
3899
|
Pe as parseError,
|
|
3889
|
-
|
|
3890
|
-
|
|
3891
|
-
|
|
3892
|
-
|
|
3893
|
-
|
|
3894
|
-
|
|
3895
|
-
|
|
3896
|
-
|
|
3897
|
-
|
|
3898
|
-
|
|
3899
|
-
|
|
3900
|
-
|
|
3901
|
-
|
|
3902
|
-
|
|
3903
|
-
|
|
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
|
-
|
|
3941
|
-
|
|
3942
|
-
|
|
3943
|
-
|
|
3944
|
-
|
|
3945
|
-
|
|
3946
|
-
|
|
3947
|
-
|
|
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
|
-
|
|
3900
|
+
bs as permissions,
|
|
3901
|
+
ac as provideAppBarState,
|
|
3902
|
+
dE as provideAppBarWidget,
|
|
3903
|
+
nc as provideDashboardService,
|
|
3904
|
+
EE as provideLanguages,
|
|
3905
|
+
sc as provideMenuService,
|
|
3906
|
+
oc as provideSettingsMenu,
|
|
3907
|
+
fE as provideSidebarState,
|
|
3908
|
+
rc as provideToolbarService,
|
|
3909
|
+
qt as readableSize,
|
|
3910
|
+
ic as registerBuiltinCells,
|
|
3911
|
+
lc as registerDashboardWidget,
|
|
3912
|
+
uc as registerExternalWidget,
|
|
3913
|
+
cc as registerToolbarItem,
|
|
3914
|
+
dc as registerWidget,
|
|
3915
|
+
Ec as removeMenuBadge,
|
|
3916
|
+
fc as removeRegisteredMenuItem,
|
|
3917
|
+
mE as resolveEnvironment,
|
|
3918
|
+
mc as resolveLocale,
|
|
3919
|
+
gc as resolveLocaleSync,
|
|
3920
|
+
Im as saveLayoutToStorage,
|
|
3921
|
+
Sc as setMenuBadge,
|
|
3922
|
+
gE as sidebarStorageKey,
|
|
3923
|
+
Ns as signalR,
|
|
3924
|
+
SE as stripTenantPrefix,
|
|
3925
|
+
vm as toGridstackWidget,
|
|
3926
|
+
AE as useAdaptiveItems,
|
|
3927
|
+
cm as useAiAgent,
|
|
3928
|
+
jf as useAiAgentContext,
|
|
3929
|
+
Ys as useApiClient,
|
|
3930
|
+
pE as useAppBarMobileActions,
|
|
3931
|
+
Ac as useAppBarState,
|
|
3932
|
+
TE as useAppBarWidget,
|
|
3933
|
+
hE as useAppBarWidgets,
|
|
3934
|
+
Ja as useAppInsights,
|
|
3935
|
+
Ml as useAssets,
|
|
3936
|
+
Bl as useAssetsManager,
|
|
3937
|
+
Jt as useAsync,
|
|
3938
|
+
OE as useBadge,
|
|
3939
|
+
Xs as useBeforeUnload,
|
|
3940
|
+
ct as useBlade,
|
|
3941
|
+
Jl as useBladeForm,
|
|
3942
|
+
pc as useBladeLoading,
|
|
3943
|
+
LE as useBladeMessaging,
|
|
3944
|
+
Xl as useBladeNavigation,
|
|
3945
|
+
Il as useBladeNotifications,
|
|
3946
|
+
dm as useBladeStack,
|
|
3947
|
+
Fl as useBladeWidgets,
|
|
3948
|
+
kl as useBreadcrumbs,
|
|
3949
|
+
wl as useBroadcastFilter,
|
|
3950
|
+
Tc as useCellRegistry,
|
|
3951
|
+
RE as useCollapsible,
|
|
3952
|
+
_E as useColumnFilter,
|
|
3953
|
+
jo as useContainer,
|
|
3954
|
+
hc as useDashboard,
|
|
3955
|
+
IE as useDataTablePagination,
|
|
3956
|
+
vE as useDataTableSort,
|
|
3957
|
+
Vl as useDynamicProperties,
|
|
3958
|
+
wE as useEnvironmentName,
|
|
3959
|
+
Oc as useErrorHandler,
|
|
3960
|
+
Um as useExtensionPoint,
|
|
3961
|
+
CE as useFilterState,
|
|
3962
|
+
Kf as useFloatingPosition,
|
|
3963
|
+
Lc as useFormField,
|
|
3964
|
+
Nl as useFunctions,
|
|
3965
|
+
PE as useGalleryPreview,
|
|
3966
|
+
wm as useGridstack,
|
|
3967
|
+
bE as useImageLoad,
|
|
3968
|
+
zo as useInstance,
|
|
3969
|
+
Em as useIsMac,
|
|
3970
|
+
fm as useKeyboardShortcuts,
|
|
3971
|
+
NE as useLanguages,
|
|
3972
|
+
yl as useLatestRequest,
|
|
3973
|
+
Qt as useLoading,
|
|
3974
|
+
DE as useMenuActiveState,
|
|
3975
|
+
Rc as useMenuService,
|
|
3976
|
+
xl as useModificationTracker,
|
|
3977
|
+
vl as useNotificationContext,
|
|
3978
|
+
me as useNotificationStore,
|
|
3979
|
+
Dl as useNotifications,
|
|
3980
|
+
ot as usePermissions,
|
|
3981
|
+
Nn as usePopup,
|
|
3982
|
+
xa as useResponsive,
|
|
3983
|
+
_c as useScrollArrows,
|
|
3973
3984
|
we as useSettings,
|
|
3974
|
-
|
|
3975
|
-
|
|
3976
|
-
|
|
3977
|
-
|
|
3978
|
-
|
|
3979
|
-
|
|
3980
|
-
|
|
3981
|
-
|
|
3982
|
-
|
|
3983
|
-
|
|
3984
|
-
|
|
3985
|
-
|
|
3986
|
-
|
|
3987
|
-
|
|
3988
|
-
|
|
3989
|
-
|
|
3990
|
-
|
|
3991
|
-
|
|
3992
|
-
|
|
3993
|
-
|
|
3994
|
-
|
|
3995
|
-
|
|
3996
|
-
|
|
3997
|
-
|
|
3998
|
-
|
|
3999
|
-
|
|
4000
|
-
|
|
3985
|
+
Ic as useSettingsMenu,
|
|
3986
|
+
yE as useShellBootstrap,
|
|
3987
|
+
ME as useShellLifecycle,
|
|
3988
|
+
BE as useShellNavigation,
|
|
3989
|
+
kE as useSidebarState,
|
|
3990
|
+
VE as useTableColumnsReorder,
|
|
3991
|
+
UE as useTableColumnsResize,
|
|
3992
|
+
FE as useTableContext,
|
|
3993
|
+
HE as useTableInlineEdit,
|
|
3994
|
+
Cl as useTableQueryState,
|
|
3995
|
+
WE as useTableRowGrouping,
|
|
3996
|
+
GE as useTableRowReorder,
|
|
3997
|
+
xE as useTableSearch,
|
|
3998
|
+
$E as useTableSelection,
|
|
3999
|
+
KE as useTableSort,
|
|
4000
|
+
zf as useTeleportTarget,
|
|
4001
|
+
Yf as useTextDirection,
|
|
4002
|
+
$a as useTheme,
|
|
4003
|
+
zE as useToggleableContent,
|
|
4004
|
+
vc as useToolbar,
|
|
4005
|
+
qf as useUser,
|
|
4006
|
+
se as useUserManagement,
|
|
4007
|
+
YE as useVirtualScroll,
|
|
4008
|
+
Ul as useWebVitals,
|
|
4009
|
+
Hl as useWidgetTrigger,
|
|
4010
|
+
qE as vAutofocus,
|
|
4011
|
+
Ha as vLoading,
|
|
4012
|
+
wc as wrapError
|
|
4001
4013
|
};
|