@vc-shell/framework 2.7.0-pr393.9e04612 → 2.7.0-pr394.9142e37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-TiaFg1wQ.js.map +1 -1
- package/dist/chunks/VcScheduler.vue_vue_type_script_setup_true_lang-BK3ha4gA.js +21413 -0
- package/dist/chunks/VcScheduler.vue_vue_type_script_setup_true_lang-BK3ha4gA.js.map +1 -0
- package/dist/chunks/{VcScheduler.vue_vue_type_style_index_0_lang-CSqtsFQm.js → VcScheduler.vue_vue_type_style_index_0_lang-BhXTPWKg.js} +58 -58
- package/dist/chunks/VcScheduler.vue_vue_type_style_index_0_lang-BhXTPWKg.js.map +1 -0
- package/dist/chunks/{dashboard-feed-row.vue_vue_type_script_setup_true_lang-DuuZ_8d4.js → dashboard-feed-row.vue_vue_type_script_setup_true_lang-aICyTuY8.js} +1 -1
- package/dist/chunks/{dashboard-feed-row.vue_vue_type_script_setup_true_lang-DuuZ_8d4.js.map → dashboard-feed-row.vue_vue_type_script_setup_true_lang-aICyTuY8.js.map} +1 -1
- package/dist/core/composables/useBladeWidgets/index.d.ts +5 -2
- package/dist/core/composables/useBladeWidgets/index.d.ts.map +1 -1
- package/dist/core/notifications/types.d.ts +2 -1
- package/dist/core/notifications/types.d.ts.map +1 -1
- package/dist/core/services/widget-service.d.ts +30 -0
- package/dist/core/services/widget-service.d.ts.map +1 -1
- package/dist/core/types/severity.d.ts +3 -0
- package/dist/core/types/severity.d.ts.map +1 -0
- package/dist/dashboard/index.js +1 -1
- package/dist/framework.js +516 -514
- package/dist/framework.js.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/locales/de.js +19 -1
- package/dist/locales/en.js +19 -1
- package/dist/locales/en.json +19 -1
- package/dist/locales/types.d.ts +18 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui/components/atoms/vc-widget/vc-widget.vue.d.ts.map +1 -1
- package/dist/ui/components/atoms/vc-widget/widget-render-state.d.ts +15 -0
- package/dist/ui/components/atoms/vc-widget/widget-render-state.d.ts.map +1 -0
- 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/BladeToolbar.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/WidgetAlertsPopover.vue.d.ts +29 -0
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/WidgetAlertsPopover.vue.d.ts.map +1 -0
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/WidgetContainer.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/WidgetContainerDesktop.vue.d.ts +5 -2
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/WidgetContainerDesktop.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/WidgetContainerMobile.vue.d.ts +5 -2
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/WidgetContainerMobile.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/WidgetItem.vue.d.ts +14 -0
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/WidgetItem.vue.d.ts.map +1 -0
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/WidgetScope.vue.d.ts +2 -0
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/WidgetScope.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/useWidgetEditReorder.d.ts +25 -0
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/useWidgetEditReorder.d.ts.map +1 -0
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/useWidgetLayout.d.ts +24 -0
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/useWidgetLayout.d.ts.map +1 -0
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/useWidgetSortable.d.ts +24 -0
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/useWidgetSortable.d.ts.map +1 -0
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/widget-alerts.d.ts +9 -0
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/widget-alerts.d.ts.map +1 -0
- package/dist/ui/components/organisms/vc-data-table/components/VcColumn.vue.d.ts +1 -1
- package/dist/ui/components/organisms/vc-sidebar/vc-sidebar.vue.d.ts +4 -1
- package/dist/ui/components/organisms/vc-sidebar/vc-sidebar.vue.d.ts.map +1 -1
- package/dist/ui/composables/useAdaptiveItems.d.ts +3 -1
- package/dist/ui/composables/useAdaptiveItems.d.ts.map +1 -1
- package/dist/ui/composables/useFloatingPosition.d.ts +1 -1
- package/dist/ui/composables/useFloatingPosition.d.ts.map +1 -1
- package/dist/ui/index.js +2 -2
- package/package.json +4 -4
- package/dist/chunks/VcScheduler.vue_vue_type_script_setup_true_lang-remnmGhG.js +0 -20689
- package/dist/chunks/VcScheduler.vue_vue_type_script_setup_true_lang-remnmGhG.js.map +0 -1
- package/dist/chunks/VcScheduler.vue_vue_type_style_index_0_lang-CSqtsFQm.js.map +0 -1
package/dist/framework.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
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
|
|
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
|
|
4
|
-
import { getCurrentScope as it, onScopeDispose as lt, computed as v, inject as Q, watch as ae, defineComponent as
|
|
5
|
-
import { aS as me, aT as
|
|
6
|
-
import { bh as
|
|
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 Wa, U as Ha, 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-BhXTPWKg.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 du, g as cu, 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 Nu, x as bu, 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 Wu, al as Hu, 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 ed, ay as td, D as ad, az as nd, aA as sd, aB as od, aC as rd, E as id, aD as ld, aE as ud, aF as dd, aG as cd, aH as Ed, aI as fd, aJ as md, aK as gd, aL as Sd, F as Ad, G as pd, H as Td, L as hd, aM as Od, I as Ld, aN as Rd, J as _d, aO as Id, aP as vd, aQ as wd } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-BhXTPWKg.js";
|
|
4
|
+
import { getCurrentScope as it, onScopeDispose as lt, computed as v, inject as Q, watch as ae, defineComponent as H, openBlock as P, createBlock as D, createSlots as Oe, withCtx as T, renderSlot as q, createElementVNode as U, normalizeClass as Qa, createElementBlock as W, Fragment as ne, createVNode as R, unref as i, createTextVNode as B, toDisplayString as y, shallowReactive as en, ref as N, 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 Ne, renderList as We, withKeys as ut, mergeProps as re, getCurrentInstance as ln, warn as un, h as ee, toRaw as dn } from "vue";
|
|
5
|
+
import { aS as me, aT as cn, 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 He, b5 as Te, b6 as F, b7 as he, b8 as On, b9 as Ln, ba as gt, bb as Wt, F as Ht, 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 Nn, be as bn, an as St, bf as Dn, bg as yn } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-BK3ha4gA.js";
|
|
6
|
+
import { bh as Pd, bi as Nd, C as bd, bj as Dd, bk as yd, bl as Md, _ as Bd, bm as kd, bn as Vd, S as Ud, bo as Fd, bp as Wd, a as Hd, b as Gd, c as xd, d as $d, e as Kd, f as zd, T as Yd, g as qd, h as Zd, i as jd, j as Xd, k as Jd, l as Qd, m as ec, bq as tc, br as ac, V as nc, n as sc, o as oc, p as rc, q as ic, r as lc, s as uc, t as dc, u as cc, v as Ec, w as fc, x as mc, y as gc, z as Sc, A as Ac, D as pc, bs as Tc, bs as hc, bt as Oc, G as Lc, H as Rc, I as _c, K as Ic, L as vc, O as wc, P as Cc, Q as Pc, R as Nc, U as bc, X as Dc, Z as yc, $ as Mc, a0 as Bc, a1 as kc, a2 as Vc, a4 as Uc, a5 as Fc, a6 as Wc, a7 as Hc, a8 as Gc, a9 as xc, aa as $c, ac as Kc, ad as zc, ae as Yc, af as qc, ag as Zc, ah as jc, aj as Xc, ak as Jc, al as Qc, 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 dE, bC as cE, 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 NE, bK as bE, 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 WE, aL as HE, 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-BK3ha4gA.js";
|
|
7
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
|
|
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
|
|
8
|
+
import { c as k, d as Bn, e as kn, i as be, S as Vn, W as xt, B as $t, j as Un, k as Kt, l as Fn, n as Wn, o as Hn, 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 df, X as cf, 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 Nf, ad as bf, 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 Wf, am as Hf, 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
10
|
import { H as ns, L as ss } from "./chunks/vendor-microsoft-signalr-Bgpbb4fW.js";
|
|
11
11
|
import { a as os } from "./chunks/index-DUQy_82B.js";
|
|
12
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
|
|
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
|
|
13
|
+
import { a as rs, s as is, b as ls, d as us, e as ds, f as dt, g as cs, 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 dm, q as cm, 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";
|
|
18
|
-
import { useForm as ue, useIsFormValid as Ie, useIsFormDirty as
|
|
18
|
+
import { useForm as ue, useIsFormValid as Ie, useIsFormDirty as ct, Field as X } from "vee-validate";
|
|
19
19
|
import { useRouter as ve } from "vue-router";
|
|
20
20
|
import "./chunks/vendor-tiptap-starter-kit-ny-AoaO_.js";
|
|
21
21
|
import "./chunks/vendor-tiptap-extension-underline-Bo1pXXDN.js";
|
|
@@ -93,8 +93,8 @@ import "./chunks/vendor-truncate-html-ChA1T5zy.js";
|
|
|
93
93
|
import "./chunks/vendor-sortablejs-Bsvu-FKn.js";
|
|
94
94
|
import { v as gs } from "./chunks/vendor-vue3-touch-events-DqysuuWh.js";
|
|
95
95
|
import "./chunks/vendor-gridstack-Beau2jQ7.js";
|
|
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-
|
|
97
|
-
import { _ as Pm, a as
|
|
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-aICyTuY8.js";
|
|
97
|
+
import { _ as Pm, a as Nm, b as bm, c as Dm, d as ym, e as Mm } from "./chunks/DashboardDonutChart.vue_vue_type_script_setup_true_lang-hTcM33bM.js";
|
|
98
98
|
import { A as Ss, u as As } from "./chunks/vendor-vue3-application-insights-CAgbt8pk.js";
|
|
99
99
|
import { o as ps, c as J, d as Ts, i as hs } from "./chunks/vendor-lodash-es-D2n90GJy.js";
|
|
100
100
|
import { T as Os, x as Ls, b as Rs, S as _s, $ as Is } from "./chunks/vendor-web-vitals-ByFgAM-8.js";
|
|
@@ -150,7 +150,7 @@ function Zt(e) {
|
|
|
150
150
|
function jt(e) {
|
|
151
151
|
return e ? (Et(e) ?? "FILE").toUpperCase() : "FILE";
|
|
152
152
|
}
|
|
153
|
-
const
|
|
153
|
+
const Ns = {
|
|
154
154
|
install(e) {
|
|
155
155
|
const { hasAccess: t } = ot();
|
|
156
156
|
e.config.globalProperties.$hasAccess = t;
|
|
@@ -176,7 +176,7 @@ function Il(e) {
|
|
|
176
176
|
};
|
|
177
177
|
}
|
|
178
178
|
function vl() {
|
|
179
|
-
const e = Q(
|
|
179
|
+
const e = Q(cn);
|
|
180
180
|
if (!e)
|
|
181
181
|
throw new Error("useNotificationContext() must be used inside a notification template");
|
|
182
182
|
return e;
|
|
@@ -188,12 +188,12 @@ function wl() {
|
|
|
188
188
|
clearBroadcastFilter: e.clearBroadcastFilter
|
|
189
189
|
};
|
|
190
190
|
}
|
|
191
|
-
const Xt = Symbol("NotificationContainerState"), ze = k("signalR"),
|
|
191
|
+
const Xt = Symbol("NotificationContainerState"), ze = k("signalR"), bs = {
|
|
192
192
|
install(e) {
|
|
193
193
|
const t = me(), { isAuthenticated: a } = se();
|
|
194
194
|
let n = !1;
|
|
195
195
|
const s = Mn("pushNotificationHub", { enableForVitest: !0 }) ?? new ns().withUrl("/pushNotificationHub").withAutomaticReconnect().configureLogging(ss.Information).build(), o = 5e3, r = 6e4;
|
|
196
|
-
let l = 0,
|
|
196
|
+
let l = 0, d;
|
|
197
197
|
function u(E) {
|
|
198
198
|
return E instanceof Error && /\b401\b/.test(E.message);
|
|
199
199
|
}
|
|
@@ -205,12 +205,12 @@ const Xt = Symbol("NotificationContainerState"), ze = k("signalR"), Ns = {
|
|
|
205
205
|
ze.warn("Not authenticated — stopping reconnect attempts until sign-in.");
|
|
206
206
|
return;
|
|
207
207
|
}
|
|
208
|
-
const
|
|
209
|
-
l++,
|
|
208
|
+
const c = Math.min(o * 2 ** l, r);
|
|
209
|
+
l++, d = setTimeout(() => f(), c);
|
|
210
210
|
});
|
|
211
211
|
};
|
|
212
212
|
async function m() {
|
|
213
|
-
clearTimeout(
|
|
213
|
+
clearTimeout(d), d = void 0, await s.stop();
|
|
214
214
|
}
|
|
215
215
|
s.onclose(() => {
|
|
216
216
|
n && f();
|
|
@@ -244,8 +244,8 @@ function ft(e) {
|
|
|
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 [d, u] of Object.entries(t)) {
|
|
248
|
+
const f = u.name || d;
|
|
249
249
|
o.runWithContext(() => {
|
|
250
250
|
l._registerBladeFn(f, {
|
|
251
251
|
component: u,
|
|
@@ -258,12 +258,12 @@ function ft(e) {
|
|
|
258
258
|
}
|
|
259
259
|
}
|
|
260
260
|
if (s)
|
|
261
|
-
for (const [l,
|
|
262
|
-
r.registerType(l,
|
|
261
|
+
for (const [l, d] of Object.entries(s))
|
|
262
|
+
r.registerType(l, d);
|
|
263
263
|
if (!s && n)
|
|
264
264
|
for (const l of Object.values(n)) {
|
|
265
|
-
const
|
|
266
|
-
|
|
265
|
+
const d = l.notifyType;
|
|
266
|
+
d && r.registerType(d, {
|
|
267
267
|
template: l,
|
|
268
268
|
toast: { mode: "auto" }
|
|
269
269
|
});
|
|
@@ -271,9 +271,9 @@ function ft(e) {
|
|
|
271
271
|
if (t) {
|
|
272
272
|
for (const l of Object.values(t))
|
|
273
273
|
if (l.notifyType) {
|
|
274
|
-
const
|
|
275
|
-
|
|
276
|
-
types:
|
|
274
|
+
const d = Array.isArray(l.notifyType) ? l.notifyType : [l.notifyType];
|
|
275
|
+
d.filter((f) => !r.registry.has(f)).length > 0 && r.subscribe({
|
|
276
|
+
types: d,
|
|
277
277
|
handler: (f) => {
|
|
278
278
|
f.title && j(f.title, {
|
|
279
279
|
onClose() {
|
|
@@ -285,8 +285,8 @@ function ft(e) {
|
|
|
285
285
|
}
|
|
286
286
|
}
|
|
287
287
|
if (a)
|
|
288
|
-
for (const [l,
|
|
289
|
-
x.global.mergeLocaleMessage(l,
|
|
288
|
+
for (const [l, d] of Object.entries(a))
|
|
289
|
+
x.global.mergeLocaleMessage(l, d);
|
|
290
290
|
}
|
|
291
291
|
};
|
|
292
292
|
}
|
|
@@ -309,14 +309,14 @@ async function ys(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 d = t.getBladeByRoute(a.bladeUrl);
|
|
313
|
+
if (d) {
|
|
314
|
+
if (e.blades.value.find((f) => f.name === d.name && f.param === a.param))
|
|
315
315
|
return !1;
|
|
316
|
-
if (
|
|
316
|
+
if (d.data.routable === !1)
|
|
317
317
|
return !0;
|
|
318
318
|
await e.openBlade({
|
|
319
|
-
name:
|
|
319
|
+
name: d.name,
|
|
320
320
|
param: a.param
|
|
321
321
|
// options not available from URL — blade must handle gracefully
|
|
322
322
|
});
|
|
@@ -340,8 +340,8 @@ async function Ms(e, t, a, n, s) {
|
|
|
340
340
|
const r = Object.values(e.params)?.[0] || "", l = fn(e.path, r);
|
|
341
341
|
if (!l.workspaceUrl)
|
|
342
342
|
return t.blades.value.length > 0 && !await At(t) ? !1 : void 0;
|
|
343
|
-
const
|
|
344
|
-
if (await ys(t, a, l, n, s,
|
|
343
|
+
const d = Object.fromEntries(Object.entries(e.params).filter(([, f]) => typeof f == "string"));
|
|
344
|
+
if (await ys(t, a, l, n, s, d)) {
|
|
345
345
|
const { path: f, query: m } = mn(r, t.blades.value);
|
|
346
346
|
return { path: f, query: m, replace: !0 };
|
|
347
347
|
}
|
|
@@ -366,17 +366,17 @@ const Bs = {
|
|
|
366
366
|
console.error("[BladeNavigationPlugin] BladeRegistry is required but not found.");
|
|
367
367
|
return;
|
|
368
368
|
}
|
|
369
|
-
const { hasAccess: o } = e.runWithContext(() => ot()), r = {}, l = An(a, () => r.current),
|
|
370
|
-
r.current =
|
|
371
|
-
const u = Sn(
|
|
372
|
-
e.provide(kn, u), ls(u),
|
|
369
|
+
const { hasAccess: o } = e.runWithContext(() => ot()), r = {}, l = An(a, () => r.current), d = rs(s, o, l);
|
|
370
|
+
r.current = d, e.provide(Bn, d), is(d);
|
|
371
|
+
const u = Sn(d);
|
|
372
|
+
e.provide(kn, u), ls(u), ds(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(() => Ms(m,
|
|
379
|
+
(m) => l.suppressWhile(() => Ms(m, d, s, o, a))
|
|
380
380
|
);
|
|
381
381
|
}
|
|
382
382
|
}, ks = {
|
|
@@ -429,10 +429,10 @@ const Bs = {
|
|
|
429
429
|
gap: 20
|
|
430
430
|
}
|
|
431
431
|
};
|
|
432
|
-
function
|
|
432
|
+
function Nl(e) {
|
|
433
433
|
return ks[e];
|
|
434
434
|
}
|
|
435
|
-
const mt = /* @__PURE__ */
|
|
435
|
+
const mt = /* @__PURE__ */ H({
|
|
436
436
|
__name: "vc-popup-base",
|
|
437
437
|
props: {
|
|
438
438
|
title: {},
|
|
@@ -473,11 +473,11 @@ const mt = /* @__PURE__ */ W({
|
|
|
473
473
|
"vc-popup-base__actions--single": e.mode === "acknowledge"
|
|
474
474
|
}])
|
|
475
475
|
}, [
|
|
476
|
-
e.mode === "confirm" ? (P(),
|
|
476
|
+
e.mode === "confirm" ? (P(), W(ne, { key: 0 }, [
|
|
477
477
|
R(i($), {
|
|
478
478
|
text: e.confirmAsText,
|
|
479
479
|
class: "vc-popup-base__confirm",
|
|
480
|
-
onClick: (
|
|
480
|
+
onClick: (d) => s(l)
|
|
481
481
|
}, {
|
|
482
482
|
default: T(() => [
|
|
483
483
|
B(y(e.confirmLabel), 1)
|
|
@@ -514,7 +514,7 @@ const mt = /* @__PURE__ */ W({
|
|
|
514
514
|
} : void 0
|
|
515
515
|
]), 1032, ["variant", "is-mobile-fullscreen", "title", "closable"]));
|
|
516
516
|
}
|
|
517
|
-
}), Vs = /* @__PURE__ */
|
|
517
|
+
}), Vs = /* @__PURE__ */ H({
|
|
518
518
|
__name: "vc-popup-warning",
|
|
519
519
|
props: {
|
|
520
520
|
title: {}
|
|
@@ -545,7 +545,7 @@ const mt = /* @__PURE__ */ W({
|
|
|
545
545
|
} : void 0
|
|
546
546
|
]), 1032, ["confirm-label", "cancel-label", "title"]));
|
|
547
547
|
}
|
|
548
|
-
}), Us = /* @__PURE__ */
|
|
548
|
+
}), Us = /* @__PURE__ */ H({
|
|
549
549
|
__name: "vc-popup-error",
|
|
550
550
|
props: {
|
|
551
551
|
title: {}
|
|
@@ -573,7 +573,7 @@ const mt = /* @__PURE__ */ W({
|
|
|
573
573
|
} : void 0
|
|
574
574
|
]), 1032, ["action-label", "title"]));
|
|
575
575
|
}
|
|
576
|
-
}), Fs = /* @__PURE__ */
|
|
576
|
+
}), Fs = /* @__PURE__ */ H({
|
|
577
577
|
__name: "vc-popup-info",
|
|
578
578
|
props: {
|
|
579
579
|
title: {}
|
|
@@ -602,15 +602,15 @@ const mt = /* @__PURE__ */ W({
|
|
|
602
602
|
]), 1032, ["action-label", "title"]));
|
|
603
603
|
}
|
|
604
604
|
});
|
|
605
|
-
function
|
|
605
|
+
function Ws() {
|
|
606
606
|
$e("warning", Vs), $e("error", Us), $e("info", Fs);
|
|
607
607
|
}
|
|
608
|
-
const
|
|
608
|
+
const Hs = {
|
|
609
609
|
install(e) {
|
|
610
610
|
const a = {
|
|
611
611
|
popups: en([])
|
|
612
612
|
};
|
|
613
|
-
e.config.globalProperties.$popupPlugin = a, e.provide(Tn, a), hn(a),
|
|
613
|
+
e.config.globalProperties.$popupPlugin = a, e.provide(Tn, a), hn(a), Ws();
|
|
614
614
|
}
|
|
615
615
|
};
|
|
616
616
|
function Gs(e, t) {
|
|
@@ -642,7 +642,7 @@ function Ks(e, t) {
|
|
|
642
642
|
}, t));
|
|
643
643
|
};
|
|
644
644
|
}
|
|
645
|
-
function
|
|
645
|
+
function bl() {
|
|
646
646
|
return {
|
|
647
647
|
debounce: Gs,
|
|
648
648
|
delay: xs,
|
|
@@ -675,16 +675,16 @@ function Dl(e) {
|
|
|
675
675
|
let qe;
|
|
676
676
|
const zs = k("use-async");
|
|
677
677
|
function Jt(e, t) {
|
|
678
|
-
const a =
|
|
679
|
-
async function r(l, ...
|
|
678
|
+
const a = N(!1), n = N(null), s = t?.notify !== !1, o = t?.notifyTimeout ?? 8e3;
|
|
679
|
+
async function r(l, ...d) {
|
|
680
680
|
a.value = !0, n.value = null;
|
|
681
681
|
try {
|
|
682
|
-
return await e(l, ...
|
|
682
|
+
return await e(l, ...d);
|
|
683
683
|
} catch (u) {
|
|
684
684
|
const f = Pe(u);
|
|
685
|
-
if (n.value = f, zs.error("Async action failed:", u), s && !
|
|
685
|
+
if (n.value = f, zs.error("Async action failed:", u), s && !be() && 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-BhXTPWKg.js").then((S) => S.b1)).notification), qe.error(f.message, {
|
|
688
688
|
timeout: o,
|
|
689
689
|
notificationId: m
|
|
690
690
|
});
|
|
@@ -715,15 +715,15 @@ function Qt(...e) {
|
|
|
715
715
|
}
|
|
716
716
|
const qs = k("use-settings");
|
|
717
717
|
function we() {
|
|
718
|
-
const e =
|
|
718
|
+
const e = N(), t = N(!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
|
-
qs.warn("Failed to parse UI customization settings JSON; ignoring.",
|
|
725
|
+
} catch (d) {
|
|
726
|
+
qs.warn("Failed to parse UI customization settings JSON; ignoring.", d);
|
|
727
727
|
}
|
|
728
728
|
l && !e.value && (e.value = {
|
|
729
729
|
contrast_logo: l.contrast_logo,
|
|
@@ -749,25 +749,25 @@ function we() {
|
|
|
749
749
|
};
|
|
750
750
|
}
|
|
751
751
|
function yl() {
|
|
752
|
-
const e =
|
|
752
|
+
const e = N(!1);
|
|
753
753
|
let t = 0, a = !1;
|
|
754
754
|
function n() {
|
|
755
755
|
const l = ++t;
|
|
756
|
-
let
|
|
756
|
+
let d = !1;
|
|
757
757
|
return a || (e.value = !0), {
|
|
758
758
|
isCurrent: () => !a && l === t,
|
|
759
759
|
complete: () => {
|
|
760
|
-
|
|
760
|
+
d || (d = !0, !a && l === t && (e.value = !1));
|
|
761
761
|
}
|
|
762
762
|
};
|
|
763
763
|
}
|
|
764
764
|
async function s(l) {
|
|
765
|
-
const
|
|
765
|
+
const d = n();
|
|
766
766
|
try {
|
|
767
767
|
const u = await l;
|
|
768
|
-
return
|
|
768
|
+
return d.isCurrent() ? u : void 0;
|
|
769
769
|
} finally {
|
|
770
|
-
|
|
770
|
+
d.complete();
|
|
771
771
|
}
|
|
772
772
|
}
|
|
773
773
|
function o() {
|
|
@@ -793,22 +793,22 @@ async function Zs(e, t, a, n) {
|
|
|
793
793
|
body: s
|
|
794
794
|
})).json();
|
|
795
795
|
if (!l?.length) return null;
|
|
796
|
-
const
|
|
797
|
-
return
|
|
796
|
+
const d = l[0];
|
|
797
|
+
return d.createdDate = /* @__PURE__ */ new Date(), d.sortOrder = n !== void 0 && n >= 0 ? n + a + 1 : 0, d.url = d.url ? decodeURI(d.url) : "", "size" in d && (d.size = e.size), d;
|
|
798
798
|
}
|
|
799
799
|
async function 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),
|
|
802
|
+
const l = s.slice(r, r + n), d = await Promise.all(
|
|
803
803
|
l.map((u, f) => Zs(u, t, r + f, a))
|
|
804
804
|
);
|
|
805
|
-
o.push(...
|
|
805
|
+
o.push(...d);
|
|
806
806
|
}
|
|
807
807
|
return o.filter((r) => r !== null);
|
|
808
808
|
}
|
|
809
809
|
const pt = k("use-assets");
|
|
810
810
|
function Ml() {
|
|
811
|
-
const e =
|
|
811
|
+
const e = N(!1);
|
|
812
812
|
async function t(s, o, r) {
|
|
813
813
|
try {
|
|
814
814
|
return e.value = !0, await ta(s, { uploadPath: o, startingSortOrder: r });
|
|
@@ -822,7 +822,7 @@ function Ml() {
|
|
|
822
822
|
try {
|
|
823
823
|
e.value = !0;
|
|
824
824
|
let l = J(o) || [];
|
|
825
|
-
return l && l.length && s.length > 0 && (l = Ts(l, s, (
|
|
825
|
+
return l && l.length && s.length > 0 && (l = Ts(l, s, (d, u) => d[r] === u[r])), l;
|
|
826
826
|
} catch (l) {
|
|
827
827
|
throw pt.error("Remove failed:", l), l;
|
|
828
828
|
} finally {
|
|
@@ -834,8 +834,8 @@ function Ml() {
|
|
|
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 d = r.findIndex((u) => u.url === l.url);
|
|
838
|
+
d !== -1 && (r[d] = { ...r[d], ...l });
|
|
839
839
|
}), r;
|
|
840
840
|
}
|
|
841
841
|
return {
|
|
@@ -853,7 +853,7 @@ function Tt(e) {
|
|
|
853
853
|
}).map(({ item: t }, a) => ({ ...t, sortOrder: a }));
|
|
854
854
|
}
|
|
855
855
|
function Bl(e, t) {
|
|
856
|
-
const a =
|
|
856
|
+
const a = N(!1), n = N(Tt(e.value ?? []));
|
|
857
857
|
ae(
|
|
858
858
|
() => e.value,
|
|
859
859
|
(S) => {
|
|
@@ -864,7 +864,7 @@ function Bl(e, t) {
|
|
|
864
864
|
function s() {
|
|
865
865
|
e.value = n.value;
|
|
866
866
|
}
|
|
867
|
-
const o = n, r = v(() => a.value), l = t.concurrency ?? ea,
|
|
867
|
+
const o = n, r = v(() => a.value), l = t.concurrency ?? ea, d = t.assetKey ?? "url";
|
|
868
868
|
async function u(S, h) {
|
|
869
869
|
try {
|
|
870
870
|
a.value = !0;
|
|
@@ -882,14 +882,14 @@ function Bl(e, t) {
|
|
|
882
882
|
async function m(S) {
|
|
883
883
|
if (t.confirmRemove && !await t.confirmRemove())
|
|
884
884
|
return;
|
|
885
|
-
const h = new Set(S.map((O) => O[
|
|
886
|
-
n.value = n.value.filter((O) => !h.has(O[
|
|
885
|
+
const h = new Set(S.map((O) => O[d]));
|
|
886
|
+
n.value = n.value.filter((O) => !h.has(O[d])), s();
|
|
887
887
|
}
|
|
888
888
|
function E(S) {
|
|
889
889
|
n.value = S.map((h) => ({ ...h })), s();
|
|
890
890
|
}
|
|
891
|
-
function
|
|
892
|
-
const h = n.value.findIndex((O) => O[
|
|
891
|
+
function c(S) {
|
|
892
|
+
const h = n.value.findIndex((O) => O[d] === S[d]);
|
|
893
893
|
if (h !== -1) {
|
|
894
894
|
const O = [...n.value];
|
|
895
895
|
O[h] = { ...n.value[h], ...S }, n.value = O, s();
|
|
@@ -901,7 +901,7 @@ function Bl(e, t) {
|
|
|
901
901
|
remove: f,
|
|
902
902
|
removeMany: m,
|
|
903
903
|
reorder: E,
|
|
904
|
-
updateItem:
|
|
904
|
+
updateItem: c,
|
|
905
905
|
loading: r
|
|
906
906
|
};
|
|
907
907
|
}
|
|
@@ -930,8 +930,8 @@ function kl() {
|
|
|
930
930
|
clickHandler: s.clickHandler ? async (l) => {
|
|
931
931
|
try {
|
|
932
932
|
await s.clickHandler(l) !== !1 && t(l);
|
|
933
|
-
} catch (
|
|
934
|
-
Js.error("Breadcrumb click handler failed:",
|
|
933
|
+
} catch (d) {
|
|
934
|
+
Js.error("Breadcrumb click handler failed:", d);
|
|
935
935
|
}
|
|
936
936
|
} : void 0
|
|
937
937
|
}, r = e.value.findIndex((l) => l.id === o.id);
|
|
@@ -956,7 +956,7 @@ const Qs = {
|
|
|
956
956
|
},
|
|
957
957
|
set(e, t, a) {
|
|
958
958
|
if (!Array.isArray(t) && Re(t)) {
|
|
959
|
-
|
|
959
|
+
He(e, a.locale);
|
|
960
960
|
return;
|
|
961
961
|
}
|
|
962
962
|
if (Te(e)) {
|
|
@@ -991,7 +991,7 @@ const Qs = {
|
|
|
991
991
|
set(e, t, a) {
|
|
992
992
|
const { dictionary: n, locale: s } = a;
|
|
993
993
|
if (!Array.isArray(t) && Re(t)) {
|
|
994
|
-
|
|
994
|
+
He(e, s);
|
|
995
995
|
return;
|
|
996
996
|
}
|
|
997
997
|
n?.length && (Te(e) ? ao(e, t, n, s) : oo(e, t, n));
|
|
@@ -1089,7 +1089,7 @@ const ro = {
|
|
|
1089
1089
|
},
|
|
1090
1090
|
set(e, t, a) {
|
|
1091
1091
|
if (Re(t)) {
|
|
1092
|
-
|
|
1092
|
+
He(e);
|
|
1093
1093
|
return;
|
|
1094
1094
|
}
|
|
1095
1095
|
e.values = [F({ value: t, unitOfMeasureId: a.unitOfMeasureId })];
|
|
@@ -1100,7 +1100,7 @@ const ro = {
|
|
|
1100
1100
|
},
|
|
1101
1101
|
set(e, t, a) {
|
|
1102
1102
|
if (!Array.isArray(t) && Re(t)) {
|
|
1103
|
-
|
|
1103
|
+
He(e);
|
|
1104
1104
|
return;
|
|
1105
1105
|
}
|
|
1106
1106
|
Array.isArray(t) ? e.values = t.map(
|
|
@@ -1123,9 +1123,9 @@ function Vl(e) {
|
|
|
1123
1123
|
keyword: f,
|
|
1124
1124
|
skip: 0
|
|
1125
1125
|
});
|
|
1126
|
-
return !m || !E ? E : E.map((
|
|
1127
|
-
const S =
|
|
1128
|
-
return { ...
|
|
1126
|
+
return !m || !E ? E : E.map((c) => {
|
|
1127
|
+
const S = c.localizedValues?.find((h) => h.languageCode === m)?.value;
|
|
1128
|
+
return { ...c, value: S ?? c.alias };
|
|
1129
1129
|
});
|
|
1130
1130
|
}
|
|
1131
1131
|
async function r(u, f, m) {
|
|
@@ -1135,13 +1135,13 @@ function Vl(e) {
|
|
|
1135
1135
|
function l(u, f) {
|
|
1136
1136
|
return ht(u).get(u, f);
|
|
1137
1137
|
}
|
|
1138
|
-
function
|
|
1138
|
+
function d(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: d,
|
|
1145
1145
|
loadDictionaries: o,
|
|
1146
1146
|
loadMeasurements: r,
|
|
1147
1147
|
loading: Qt(n)
|
|
@@ -1182,12 +1182,12 @@ function Fl(e) {
|
|
|
1182
1182
|
}
|
|
1183
1183
|
function r() {
|
|
1184
1184
|
const l = a.getWidgets(s);
|
|
1185
|
-
for (const
|
|
1186
|
-
|
|
1185
|
+
for (const d of l)
|
|
1186
|
+
d.trigger?.onRefresh && d.trigger.onRefresh();
|
|
1187
1187
|
}
|
|
1188
1188
|
return { refresh: o, refreshAll: r };
|
|
1189
1189
|
}
|
|
1190
|
-
function
|
|
1190
|
+
function Wl(e) {
|
|
1191
1191
|
const t = Q(Un);
|
|
1192
1192
|
if (!t) {
|
|
1193
1193
|
aa.warn("useWidgetTrigger() called outside WidgetContainer scope — trigger will not be registered.");
|
|
@@ -1202,7 +1202,9 @@ function lo(e) {
|
|
|
1202
1202
|
loading: e.loading,
|
|
1203
1203
|
disabled: e.disabled,
|
|
1204
1204
|
onClick: e.onClick,
|
|
1205
|
-
onRefresh: e.onRefresh
|
|
1205
|
+
onRefresh: e.onRefresh,
|
|
1206
|
+
alerts: e.alerts,
|
|
1207
|
+
alertsComponent: e.alertsComponent
|
|
1206
1208
|
};
|
|
1207
1209
|
return {
|
|
1208
1210
|
id: e.id,
|
|
@@ -1220,7 +1222,7 @@ function uo(e) {
|
|
|
1220
1222
|
}
|
|
1221
1223
|
return t;
|
|
1222
1224
|
}
|
|
1223
|
-
function
|
|
1225
|
+
function Hl(e) {
|
|
1224
1226
|
Bt(
|
|
1225
1227
|
Kt,
|
|
1226
1228
|
v(() => uo(kt(e)))
|
|
@@ -1241,7 +1243,7 @@ function Lt(e, t) {
|
|
|
1241
1243
|
});
|
|
1242
1244
|
}
|
|
1243
1245
|
function xl(e) {
|
|
1244
|
-
const t = (r) => J(i(r)), a =
|
|
1246
|
+
const t = (r) => J(i(r)), a = N(t(e)), n = N(t(e)), s = N(!1);
|
|
1245
1247
|
Vt(e) && ae(
|
|
1246
1248
|
e,
|
|
1247
1249
|
(r) => {
|
|
@@ -1277,27 +1279,27 @@ const co = { class: "tw-flex tw-grow-1 tw-border-t tw-border-solid tw-border-t-[
|
|
|
1277
1279
|
key: 1,
|
|
1278
1280
|
class: "assets-details__file-preview tw-shrink-0"
|
|
1279
1281
|
}, So = { class: "assets-details__meta" };
|
|
1280
|
-
|
|
1281
|
-
const Ao = /* @__PURE__ */
|
|
1282
|
+
Wt("AssetsDetails", {});
|
|
1283
|
+
const Ao = /* @__PURE__ */ H({
|
|
1282
1284
|
name: "AssetsDetails",
|
|
1283
1285
|
__name: "assets-details",
|
|
1284
1286
|
setup(e) {
|
|
1285
|
-
const { options: t, closeSelf: a } =
|
|
1287
|
+
const { options: t, closeSelf: a } = dt();
|
|
1286
1288
|
ue({ validateOnMount: !1 });
|
|
1287
|
-
const n = Ie(), s =
|
|
1289
|
+
const n = Ie(), s = ct(), { t: o } = le({ useScope: "global" }), r = N({ ...t.value?.asset }), l = v(() => t.value?.disabled), d = v({
|
|
1288
1290
|
get() {
|
|
1289
1291
|
const E = r.value.name;
|
|
1290
1292
|
if (!E) return "";
|
|
1291
|
-
const
|
|
1292
|
-
return
|
|
1293
|
+
const c = E.lastIndexOf(".");
|
|
1294
|
+
return c > 0 ? E.slice(0, c) : E;
|
|
1293
1295
|
},
|
|
1294
1296
|
set(E) {
|
|
1295
|
-
const
|
|
1296
|
-
if (!
|
|
1297
|
-
const S =
|
|
1297
|
+
const c = r.value.name;
|
|
1298
|
+
if (!c) return;
|
|
1299
|
+
const S = c.lastIndexOf("."), h = S > 0 ? c.slice(S) : "";
|
|
1298
1300
|
r.value.name = E ? E + h : "";
|
|
1299
1301
|
}
|
|
1300
|
-
}), u = v(() => !s.value || !n.value), f =
|
|
1302
|
+
}), u = v(() => !s.value || !n.value), f = N([
|
|
1301
1303
|
{
|
|
1302
1304
|
id: "save",
|
|
1303
1305
|
title: o("ASSETS.PAGES.DETAILS.TOOLBAR.SAVE"),
|
|
@@ -1317,7 +1319,7 @@ const Ao = /* @__PURE__ */ W({
|
|
|
1317
1319
|
disabled: v(() => l.value)
|
|
1318
1320
|
}
|
|
1319
1321
|
]), m = v(() => r.value?.typeId);
|
|
1320
|
-
return (E,
|
|
1322
|
+
return (E, c) => (P(), D(i(Ht), {
|
|
1321
1323
|
title: i(t)?.asset?.name,
|
|
1322
1324
|
subtitle: i(o)("ASSETS.PAGES.DETAILS.SUBTITLE"),
|
|
1323
1325
|
"toolbar-items": f.value
|
|
@@ -1337,7 +1339,7 @@ const Ao = /* @__PURE__ */ W({
|
|
|
1337
1339
|
size: "xl",
|
|
1338
1340
|
bordered: !0,
|
|
1339
1341
|
class: "tw-shrink-0"
|
|
1340
|
-
}, null, 8, ["src"])) : (P(),
|
|
1342
|
+
}, null, 8, ["src"])) : (P(), W("div", go, [
|
|
1341
1343
|
U("div", {
|
|
1342
1344
|
class: "assets-details__file-badge",
|
|
1343
1345
|
style: Ut({ backgroundColor: i(Zt)(r.value.name) })
|
|
@@ -1371,9 +1373,9 @@ const Ao = /* @__PURE__ */ W({
|
|
|
1371
1373
|
}, {
|
|
1372
1374
|
default: T(({ errorMessage: S, handleChange: h, errors: O }) => [
|
|
1373
1375
|
R(i(K), {
|
|
1374
|
-
modelValue:
|
|
1376
|
+
modelValue: d.value,
|
|
1375
1377
|
"onUpdate:modelValue": [
|
|
1376
|
-
|
|
1378
|
+
c[0] || (c[0] = (_) => d.value = _),
|
|
1377
1379
|
h
|
|
1378
1380
|
],
|
|
1379
1381
|
class: "tw-mb-4",
|
|
@@ -1391,7 +1393,7 @@ const Ao = /* @__PURE__ */ W({
|
|
|
1391
1393
|
m.value === "Image" && !i(t)?.hiddenFields?.includes("altText") ? (P(), D(i(K), {
|
|
1392
1394
|
key: 1,
|
|
1393
1395
|
modelValue: r.value.altText,
|
|
1394
|
-
"onUpdate:modelValue":
|
|
1396
|
+
"onUpdate:modelValue": c[1] || (c[1] = (S) => r.value.altText = S),
|
|
1395
1397
|
class: "tw-mb-4",
|
|
1396
1398
|
label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.ALT.TITLE"),
|
|
1397
1399
|
clearable: "",
|
|
@@ -1402,7 +1404,7 @@ const Ao = /* @__PURE__ */ W({
|
|
|
1402
1404
|
i(t)?.hiddenFields?.includes("description") ? Y("", !0) : (P(), D(i(_n), {
|
|
1403
1405
|
key: 2,
|
|
1404
1406
|
modelValue: r.value.description,
|
|
1405
|
-
"onUpdate:modelValue":
|
|
1407
|
+
"onUpdate:modelValue": c[2] || (c[2] = (S) => r.value.description = S),
|
|
1406
1408
|
class: "tw-mb-4",
|
|
1407
1409
|
label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.DESCRIPTION.TITLE"),
|
|
1408
1410
|
placeholder: i(o)("ASSETS.PAGES.DETAILS.FIELDS.DESCRIPTION.PLACEHOLDER"),
|
|
@@ -1425,12 +1427,12 @@ const Ao = /* @__PURE__ */ W({
|
|
|
1425
1427
|
__proto__: null,
|
|
1426
1428
|
AssetsDetails: po
|
|
1427
1429
|
}, Symbol.toStringTag, { value: "Module" })), ho = ft({ blades: To }), Oo = { class: "tw-flex tw-items-center tw-justify-center" };
|
|
1428
|
-
|
|
1429
|
-
const Lo = /* @__PURE__ */
|
|
1430
|
+
Wt("AssetsManager", {});
|
|
1431
|
+
const Lo = /* @__PURE__ */ H({
|
|
1430
1432
|
name: "AssetsManager",
|
|
1431
1433
|
__name: "assets-manager",
|
|
1432
1434
|
setup(e) {
|
|
1433
|
-
const t = k("assets-manager"), { options: a, openBlade: n } =
|
|
1435
|
+
const t = k("assets-manager"), { options: a, openBlade: n } = dt(), { t: s } = le({ useScope: "global" }), o = v(() => a.value.manager), r = v(() => o.value.items.value ?? []), l = v(() => o.value.loading.value), d = v(() => a.value?.title || s("ASSETS_MANAGER.TITLE")), u = N(!1), f = N(), m = N([]), E = v(() => a.value?.disabled), c = N([
|
|
1434
1436
|
{
|
|
1435
1437
|
id: "add",
|
|
1436
1438
|
title: v(() => s("ASSETS_MANAGER.TOOLBAR.ADD")),
|
|
@@ -1454,7 +1456,7 @@ const Lo = /* @__PURE__ */ W({
|
|
|
1454
1456
|
]);
|
|
1455
1457
|
async function S(p) {
|
|
1456
1458
|
if (p.dragIndex !== p.dropIndex) {
|
|
1457
|
-
const I = p.value.map((
|
|
1459
|
+
const I = p.value.map((b, M) => (b.sortOrder = M, b));
|
|
1458
1460
|
o.value.reorder(I);
|
|
1459
1461
|
}
|
|
1460
1462
|
}
|
|
@@ -1470,8 +1472,8 @@ const Lo = /* @__PURE__ */ W({
|
|
|
1470
1472
|
if (I && I.length)
|
|
1471
1473
|
try {
|
|
1472
1474
|
await C(I);
|
|
1473
|
-
} catch (
|
|
1474
|
-
throw t.error("Failed to upload dropped files:",
|
|
1475
|
+
} catch (b) {
|
|
1476
|
+
throw t.error("Failed to upload dropped files:", b), b;
|
|
1475
1477
|
}
|
|
1476
1478
|
u.value = !1;
|
|
1477
1479
|
}
|
|
@@ -1481,29 +1483,29 @@ const Lo = /* @__PURE__ */ W({
|
|
|
1481
1483
|
}
|
|
1482
1484
|
async function C(p) {
|
|
1483
1485
|
if (!p || p.length === 0) return;
|
|
1484
|
-
const I = new Set((r.value ?? []).map((M) => M.name).filter(Boolean)),
|
|
1486
|
+
const I = new Set((r.value ?? []).map((M) => M.name).filter(Boolean)), b = new DataTransfer();
|
|
1485
1487
|
for (const M of Array.from(p)) {
|
|
1486
1488
|
let V = M.name;
|
|
1487
1489
|
if (I.has(V)) {
|
|
1488
|
-
const z = V.includes(".") ? `.${V.split(".").pop()}` : "",
|
|
1490
|
+
const z = V.includes(".") ? `.${V.split(".").pop()}` : "", de = V.slice(0, V.length - z.length);
|
|
1489
1491
|
let Se = 1;
|
|
1490
1492
|
for (; I.has(V); )
|
|
1491
|
-
V = `${
|
|
1493
|
+
V = `${de}_${Se}${z}`, Se++;
|
|
1492
1494
|
}
|
|
1493
|
-
I.add(V),
|
|
1495
|
+
I.add(V), b.items.add(new File([M], V, { type: M.type }));
|
|
1494
1496
|
}
|
|
1495
1497
|
try {
|
|
1496
1498
|
const M = r.value.reduce((V, z) => Math.max(V, z.sortOrder ?? 0), -1);
|
|
1497
|
-
await o.value.upload(
|
|
1499
|
+
await o.value.upload(b.files, M);
|
|
1498
1500
|
} catch (M) {
|
|
1499
1501
|
throw t.error("Failed to upload assets:", M), M;
|
|
1500
1502
|
}
|
|
1501
1503
|
}
|
|
1502
1504
|
async function A(p) {
|
|
1503
|
-
const
|
|
1504
|
-
if (
|
|
1505
|
+
const b = p.target.files;
|
|
1506
|
+
if (b && b.length)
|
|
1505
1507
|
try {
|
|
1506
|
-
await C(
|
|
1508
|
+
await C(b);
|
|
1507
1509
|
} catch (M) {
|
|
1508
1510
|
throw t.error("Failed to upload files:", M), M;
|
|
1509
1511
|
}
|
|
@@ -1536,14 +1538,14 @@ const Lo = /* @__PURE__ */ W({
|
|
|
1536
1538
|
}
|
|
1537
1539
|
}
|
|
1538
1540
|
];
|
|
1539
|
-
return (p, I) => (P(), D(i(
|
|
1541
|
+
return (p, I) => (P(), D(i(Ht), {
|
|
1540
1542
|
"data-test-id": "assets-manager-blade",
|
|
1541
|
-
title:
|
|
1542
|
-
"toolbar-items":
|
|
1543
|
+
title: d.value,
|
|
1544
|
+
"toolbar-items": c.value,
|
|
1543
1545
|
width: "70%"
|
|
1544
1546
|
}, {
|
|
1545
1547
|
default: T(() => [
|
|
1546
|
-
on((P(),
|
|
1548
|
+
on((P(), W("div", {
|
|
1547
1549
|
class: "tw-relative tw-h-full tw-flex-1",
|
|
1548
1550
|
onDragover: Ge(h, ["prevent", "stop"]),
|
|
1549
1551
|
onDragleave: Ge(O, ["prevent"]),
|
|
@@ -1551,7 +1553,7 @@ const Lo = /* @__PURE__ */ W({
|
|
|
1551
1553
|
}, [
|
|
1552
1554
|
R(i(In), {
|
|
1553
1555
|
selection: m.value,
|
|
1554
|
-
"onUpdate:selection": I[0] || (I[0] = (
|
|
1556
|
+
"onUpdate:selection": I[0] || (I[0] = (b) => m.value = b),
|
|
1555
1557
|
items: r.value,
|
|
1556
1558
|
"state-key": "assets_manager",
|
|
1557
1559
|
"reorderable-rows": !E.value,
|
|
@@ -1564,7 +1566,7 @@ const Lo = /* @__PURE__ */ W({
|
|
|
1564
1566
|
actionHandler: w
|
|
1565
1567
|
},
|
|
1566
1568
|
class: "tw-h-full tw-w-full",
|
|
1567
|
-
onRowClick: I[1] || (I[1] = ({ data:
|
|
1569
|
+
onRowClick: I[1] || (I[1] = ({ data: b }) => g(b)),
|
|
1568
1570
|
onRowReorder: S
|
|
1569
1571
|
}, {
|
|
1570
1572
|
default: T(() => [
|
|
@@ -1575,20 +1577,20 @@ const Lo = /* @__PURE__ */ W({
|
|
|
1575
1577
|
"always-visible": "",
|
|
1576
1578
|
type: "image"
|
|
1577
1579
|
}, {
|
|
1578
|
-
body: T(({ data:
|
|
1580
|
+
body: T(({ data: b }) => [
|
|
1579
1581
|
U("div", Oo, [
|
|
1580
|
-
i(Yt)(
|
|
1582
|
+
i(Yt)(b.name ?? "") ? (P(), D(i(rt), {
|
|
1581
1583
|
key: 0,
|
|
1582
1584
|
bordered: !0,
|
|
1583
1585
|
size: "s",
|
|
1584
1586
|
aspect: "1x1",
|
|
1585
|
-
src:
|
|
1587
|
+
src: b.url,
|
|
1586
1588
|
background: "contain"
|
|
1587
|
-
}, null, 8, ["src"])) : (P(),
|
|
1589
|
+
}, null, 8, ["src"])) : (P(), W("div", {
|
|
1588
1590
|
key: 1,
|
|
1589
1591
|
class: "assets-manager__file-badge",
|
|
1590
|
-
style: Ut({ backgroundColor: i(Zt)(
|
|
1591
|
-
}, y(i(jt)(
|
|
1592
|
+
style: Ut({ backgroundColor: i(Zt)(b.name ?? "") })
|
|
1593
|
+
}, y(i(jt)(b.name ?? "")), 5))
|
|
1592
1594
|
])
|
|
1593
1595
|
]),
|
|
1594
1596
|
_: 1
|
|
@@ -1605,8 +1607,8 @@ const Lo = /* @__PURE__ */ W({
|
|
|
1605
1607
|
width: "20%",
|
|
1606
1608
|
"always-visible": ""
|
|
1607
1609
|
}, {
|
|
1608
|
-
body: T(({ data:
|
|
1609
|
-
U("div", null, y(i(qt)(
|
|
1610
|
+
body: T(({ data: b }) => [
|
|
1611
|
+
U("div", null, y(i(qt)(b.size ?? 0)), 1)
|
|
1610
1612
|
]),
|
|
1611
1613
|
_: 1
|
|
1612
1614
|
}, 8, ["title"]),
|
|
@@ -1616,8 +1618,8 @@ const Lo = /* @__PURE__ */ W({
|
|
|
1616
1618
|
width: "25%",
|
|
1617
1619
|
"always-visible": ""
|
|
1618
1620
|
}, {
|
|
1619
|
-
body: T(({ data:
|
|
1620
|
-
U("div", null, y(
|
|
1621
|
+
body: T(({ data: b }) => [
|
|
1622
|
+
U("div", null, y(b.sortOrder), 1)
|
|
1621
1623
|
]),
|
|
1622
1624
|
_: 1
|
|
1623
1625
|
}, 8, ["title"]),
|
|
@@ -1632,7 +1634,7 @@ const Lo = /* @__PURE__ */ W({
|
|
|
1632
1634
|
_: 1
|
|
1633
1635
|
}, 8, ["selection", "items", "reorderable-rows", "selection-mode", "row-actions", "empty-state"])
|
|
1634
1636
|
], 32)), [
|
|
1635
|
-
[i(
|
|
1637
|
+
[i(Wa), l.value]
|
|
1636
1638
|
]),
|
|
1637
1639
|
U("input", {
|
|
1638
1640
|
ref_key: "uploader",
|
|
@@ -1658,7 +1660,7 @@ function vo() {
|
|
|
1658
1660
|
const e = sessionStorage.getItem(tt);
|
|
1659
1661
|
return sessionStorage.removeItem(tt), e;
|
|
1660
1662
|
}
|
|
1661
|
-
const Rt = k("connection-status"), _t = "vc-framework-offline-status", It =
|
|
1663
|
+
const Rt = k("connection-status"), _t = "vc-framework-offline-status", It = N(!1), vt = N(!0);
|
|
1662
1664
|
function sa() {
|
|
1663
1665
|
if (!It.value && typeof window < "u") {
|
|
1664
1666
|
It.value = !0;
|
|
@@ -1688,14 +1690,14 @@ function wt() {
|
|
|
1688
1690
|
function Ct() {
|
|
1689
1691
|
document.documentElement.classList.remove(oa);
|
|
1690
1692
|
}
|
|
1691
|
-
const Pt =
|
|
1692
|
-
function
|
|
1693
|
+
const Pt = N(!1), Ve = N(0), at = N(!1), Ue = /* @__PURE__ */ new Map(), nt = /* @__PURE__ */ new Set(), Xe = v(() => Ve.value > 0 || at.value);
|
|
1694
|
+
function No(e) {
|
|
1693
1695
|
const t = setTimeout(() => {
|
|
1694
1696
|
Ve.value++, Ue.delete(e), nt.add(e);
|
|
1695
1697
|
}, wo);
|
|
1696
1698
|
Ue.set(e, t);
|
|
1697
1699
|
}
|
|
1698
|
-
function
|
|
1700
|
+
function bo(e) {
|
|
1699
1701
|
const t = Ue.get(e);
|
|
1700
1702
|
t != null ? (clearTimeout(t), Ue.delete(e)) : nt.has(e) && (Ve.value = Math.max(0, Ve.value - 1), nt.delete(e));
|
|
1701
1703
|
}
|
|
@@ -1718,11 +1720,11 @@ function ra() {
|
|
|
1718
1720
|
}
|
|
1719
1721
|
return {
|
|
1720
1722
|
isSlowNetwork: Xe,
|
|
1721
|
-
trackRequest:
|
|
1722
|
-
untrackRequest:
|
|
1723
|
+
trackRequest: No,
|
|
1724
|
+
untrackRequest: bo
|
|
1723
1725
|
};
|
|
1724
1726
|
}
|
|
1725
|
-
const
|
|
1727
|
+
const ce = k("interceptors"), Do = /(^|\/)(login|signin|sign-in|account\/login|connect\/authorize)(\/|$)/i, yo = /* @__PURE__ */ new Set(["GET", "HEAD"]);
|
|
1726
1728
|
function Mo(e, t) {
|
|
1727
1729
|
return (t?.method ?? (e instanceof Request ? e.method : void 0) ?? "GET").toUpperCase();
|
|
1728
1730
|
}
|
|
@@ -1740,26 +1742,26 @@ function Bo(e) {
|
|
|
1740
1742
|
}
|
|
1741
1743
|
function ko(e) {
|
|
1742
1744
|
if (window.fetch.__vcInterceptorsInstalled__)
|
|
1743
|
-
return
|
|
1745
|
+
return ce.warn("registerInterceptors called twice — ignoring second install"), window.fetch;
|
|
1744
1746
|
const { fetch: a } = window, { signOut: n, isAuthenticated: s } = se(), { trackRequest: o, untrackRequest: r } = ra();
|
|
1745
1747
|
let l = 0;
|
|
1746
|
-
const
|
|
1748
|
+
const d = new Fn(void 0, { fetch: (E, c) => a(E, c) });
|
|
1747
1749
|
let u = null;
|
|
1748
1750
|
function f() {
|
|
1749
|
-
return u ??=
|
|
1751
|
+
return u ??= d.getCurrentUser().then(
|
|
1750
1752
|
// The VirtoCommerce platform answers a caller without a session with 200 and an empty user, not a 401.
|
|
1751
|
-
(E) => E?.userName ? !0 : (
|
|
1753
|
+
(E) => E?.userName ? !0 : (ce.warn("Session check: currentuser returned no user, treating the session as expired"), !1),
|
|
1752
1754
|
// Only a 401 answers the question. Anything else — an unreachable platform, a 5xx — says
|
|
1753
1755
|
// nothing about the session, and signing out on it would be a guess.
|
|
1754
|
-
(E) => !(
|
|
1756
|
+
(E) => !(Hn.isApiException(E) && E.status === 401)
|
|
1755
1757
|
).finally(() => {
|
|
1756
1758
|
u = null;
|
|
1757
1759
|
}), u;
|
|
1758
1760
|
}
|
|
1759
1761
|
const m = (async (...E) => {
|
|
1760
1762
|
if (window.__DEMO_MODE__)
|
|
1761
|
-
return
|
|
1762
|
-
E[0] === "/api/platform/security/login" ?
|
|
1763
|
+
return ce.warn("CANCELLED FETCH WHILE IN __DEMO_MODE__: ", ...E), ce.warn("Please logout and add APP_PLATFORM_URL into .env file of your application to enable API calls"), new Promise((c) => {
|
|
1764
|
+
E[0] === "/api/platform/security/login" ? c({
|
|
1763
1765
|
status: 200,
|
|
1764
1766
|
text: async () => JSON.stringify({ succeeded: !0 })
|
|
1765
1767
|
}) : E[0] === "/api/platform/security/currentuser" ? (j.warning(
|
|
@@ -1768,16 +1770,16 @@ function ko(e) {
|
|
|
1768
1770
|
{
|
|
1769
1771
|
timeout: 1e4
|
|
1770
1772
|
}
|
|
1771
|
-
),
|
|
1773
|
+
), c({
|
|
1772
1774
|
status: 200,
|
|
1773
1775
|
text: async () => JSON.stringify({ id: "demo_user_id", userName: "DEMO_USER" })
|
|
1774
|
-
})) :
|
|
1776
|
+
})) : c({
|
|
1775
1777
|
status: 200,
|
|
1776
1778
|
text: async () => JSON.stringify({})
|
|
1777
1779
|
});
|
|
1778
1780
|
});
|
|
1779
1781
|
{
|
|
1780
|
-
let
|
|
1782
|
+
let c = function(A) {
|
|
1781
1783
|
const g = typeof A == "string" ? A : A instanceof Request ? A.url : A.toString();
|
|
1782
1784
|
try {
|
|
1783
1785
|
const L = new URL(g, window.location.origin);
|
|
@@ -1795,26 +1797,26 @@ function ko(e) {
|
|
|
1795
1797
|
};
|
|
1796
1798
|
const [h, O] = E;
|
|
1797
1799
|
async function _(A, g = !1) {
|
|
1798
|
-
!A && !g ||
|
|
1799
|
-
|
|
1800
|
+
!A && !g || be() || !s.value || !g && await f() || be() || (Gn(), n().catch((L) => {
|
|
1801
|
+
ce.error("signOut failed after session expiry:", L);
|
|
1800
1802
|
}).finally(() => {
|
|
1801
1803
|
Vo(e), j.error(x.global.t("CORE.ERRORS.SESSION_EXPIRED"));
|
|
1802
1804
|
}));
|
|
1803
1805
|
}
|
|
1804
|
-
if (!
|
|
1806
|
+
if (!c(h)) {
|
|
1805
1807
|
if (!S(h))
|
|
1806
1808
|
return a(...E);
|
|
1807
1809
|
const A = await a(...E);
|
|
1808
1810
|
return await _(A.status === 401), A;
|
|
1809
1811
|
}
|
|
1810
1812
|
if (!navigator.onLine)
|
|
1811
|
-
return
|
|
1813
|
+
return ce.warn("Request blocked: browser is offline", h), Promise.reject(new Error(x.global.t("CORE.ERRORS.NETWORK_UNAVAILABLE")));
|
|
1812
1814
|
const w = String(++l), C = yo.has(Mo(h, O));
|
|
1813
1815
|
C && o(w);
|
|
1814
1816
|
try {
|
|
1815
1817
|
const A = await a(...E), g = A.ok && Bo(A);
|
|
1816
|
-
if (await _(A.status === 401, g), g &&
|
|
1817
|
-
throw new
|
|
1818
|
+
if (await _(A.status === 401, g), g && be())
|
|
1819
|
+
throw new Wn();
|
|
1818
1820
|
return A;
|
|
1819
1821
|
} finally {
|
|
1820
1822
|
C && r(w);
|
|
@@ -1837,12 +1839,12 @@ async function Uo(e, t) {
|
|
|
1837
1839
|
}
|
|
1838
1840
|
}
|
|
1839
1841
|
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 = {
|
|
1842
|
+
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", WIDGETS: { ALERTS_TITLE: "{title}: needs attention", OPEN: "Open", ALERTS_COUNT: "Alerts needing attention: {count}", MORE_WIDGETS: "More widgets", MORE_WIDGETS_ALERTS: "More widgets, alerts needing attention: {count}", CUSTOMIZE: "Customize", DONE: "Done", RESET: "Reset", NOT_ON_BLADE: "Hidden widgets", ON_BLADE: "On blade · up to {max}", ALL_ON_BLADE: "Drag a widget here to hide it", STRIP_EMPTY: "Drag a widget here to show it", STRIP_FULL: "Up to {max} widgets on the blade. Remove one to add.", REMOVE: "Remove {title} from the blade", ADD: "Add {title} to the blade", REORDER: "Reorder {title}" } }, 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" } }, da = { 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." } }, ca = { 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
1843
|
CORE: ia,
|
|
1842
1844
|
SHELL: la,
|
|
1843
1845
|
COMPONENTS: ua,
|
|
1844
|
-
INVITATION:
|
|
1845
|
-
LOGIN:
|
|
1846
|
+
INVITATION: da,
|
|
1847
|
+
LOGIN: ca,
|
|
1846
1848
|
FORGOT_PASSWORD: Ea,
|
|
1847
1849
|
PASSWORDRESET: fa,
|
|
1848
1850
|
ASSETS_MANAGER: ma,
|
|
@@ -1852,7 +1854,7 @@ Please log in again or contact the administrator for assistance.`, NETWORK_UNAVA
|
|
|
1852
1854
|
AI_AGENT: pa,
|
|
1853
1855
|
VC_SCHEDULER: Ta,
|
|
1854
1856
|
common: ha
|
|
1855
|
-
},
|
|
1857
|
+
}, Wo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1856
1858
|
__proto__: null,
|
|
1857
1859
|
AI_AGENT: pa,
|
|
1858
1860
|
ASSETS: ga,
|
|
@@ -1860,8 +1862,8 @@ Please log in again or contact the administrator for assistance.`, NETWORK_UNAVA
|
|
|
1860
1862
|
COMPONENTS: ua,
|
|
1861
1863
|
CORE: ia,
|
|
1862
1864
|
FORGOT_PASSWORD: Ea,
|
|
1863
|
-
INVITATION:
|
|
1864
|
-
LOGIN:
|
|
1865
|
+
INVITATION: da,
|
|
1866
|
+
LOGIN: ca,
|
|
1865
1867
|
PASSWORDRESET: fa,
|
|
1866
1868
|
PERMISSION_MESSAGES: Aa,
|
|
1867
1869
|
SHELL: la,
|
|
@@ -1870,7 +1872,7 @@ Please log in again or contact the administrator for assistance.`, NETWORK_UNAVA
|
|
|
1870
1872
|
default: Fo,
|
|
1871
1873
|
messages: Sa
|
|
1872
1874
|
}, 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 = {
|
|
1875
|
+
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", WIDGETS: { ALERTS_TITLE: "{title}: erfordert Aufmerksamkeit", OPEN: "Öffnen", ALERTS_COUNT: "Hinweise, die Aufmerksamkeit erfordern: {count}", MORE_WIDGETS: "Weitere Widgets", MORE_WIDGETS_ALERTS: "Weitere Widgets, Hinweise, die Aufmerksamkeit erfordern: {count}", CUSTOMIZE: "Anpassen", DONE: "Fertig", RESET: "Zurücksetzen", NOT_ON_BLADE: "Ausgeblendete Widgets", ON_BLADE: "Im Blade · bis zu {max}", ALL_ON_BLADE: "Widget hierher ziehen, um es auszublenden", STRIP_EMPTY: "Widget hierher ziehen, um es anzuzeigen", STRIP_FULL: "Bis zu {max} Widgets im Blade. Entfernen Sie eines, um hinzuzufügen.", REMOVE: "{title} aus dem Blade entfernen", ADD: "{title} zum Blade hinzufügen", REORDER: "{title} verschieben" } }, 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" } } } } }, Na = { _default: "Das Feld {field} ist ungültig", alpha: "Das Feld {field} darf nur alphabetische Zeichen enthalten", alpha_num: "Das Feld {field} darf nur alphanumerische Zeichen enthalten", alpha_dash: "Das Feld {field} darf alphanumerische Zeichen sowie Bindestriche und Unterstriche enthalten", alpha_spaces: "Das Feld {field} darf nur alphabetische Zeichen und Leerzeichen enthalten", between: "Das Feld {field} muss zwischen 0:{min} und 1:{max} liegen", confirmed: "Die Bestätigung des Feldes {field} stimmt nicht überein", digits: "Das Feld {field} muss numerisch sein und genau 0:{length} Ziffern enthalten", dimensions: "Das Feld {field} muss 0:{width} Pixel breit und 1:{height} Pixel hoch sein", email: "Das Feld {field} muss eine gültige E-Mail-Adresse sein", not_one_of: "Das Feld {field} hat keinen gültigen Wert", ext: "Das Feld {field} ist keine gültige Datei", image: "Das Feld {field} muss ein Bild sein", integer: "Das Feld {field} muss eine ganze Zahl sein", length: "Das Feld {field} muss 0:{length} lang sein", max_value: "Das Feld {field} muss 0:{max} oder weniger sein", max: "Das Feld {field} darf nicht länger als 0:{length} Zeichen sein", mimes: "Das Feld {field} muss einen gültigen Dateityp haben", min_value: "Das Feld {field} muss 0:{min} oder mehr sein", min: "Das Feld {field} muss mindestens 0:{length} Zeichen lang sein", numeric: "Das Feld {field} darf nur numerische Zeichen enthalten", one_of: "Das Feld {field} hat keinen gültigen Wert", regex: "Das Format des Feldes {field} ist ungültig", required_if: "Das Feld {field} ist erforderlich", required: "Das Feld {field} ist erforderlich", size: "Die Größe des Feldes {field} muss kleiner als 0:{size}KB sein", url: "Das Feld {field} ist keine gültige URL", min_dimensions: { error: "Die Bildabmessungen müssen größer als {height}*{width} sein", not_image_error: "Keine Bilddatei" }, file_weight: "Die Dateigröße darf maximal {size} kb betragen", before: "Das Enddatum muss früher als das Startdatum sein", after: "Das Enddatum muss später als das Startdatum sein", bigint: "Nicht unterstützte Zahl" }, ba = { ACCESS_RESTRICTED: "Zugriff eingeschränkt" }, 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" }, Ho = {
|
|
1874
1876
|
CORE: Oa,
|
|
1875
1877
|
SHELL: La,
|
|
1876
1878
|
COMPONENTS: Ra,
|
|
@@ -1880,8 +1882,8 @@ Bitte melden Sie sich erneut an oder wenden Sie sich an den Administrator.`, NET
|
|
|
1880
1882
|
PASSWORDRESET: wa,
|
|
1881
1883
|
ASSETS_MANAGER: Ca,
|
|
1882
1884
|
ASSETS: Pa,
|
|
1883
|
-
messages:
|
|
1884
|
-
PERMISSION_MESSAGES:
|
|
1885
|
+
messages: Na,
|
|
1886
|
+
PERMISSION_MESSAGES: ba,
|
|
1885
1887
|
AI_AGENT: Da,
|
|
1886
1888
|
VC_SCHEDULER: ya,
|
|
1887
1889
|
common: Ma
|
|
@@ -1896,27 +1898,27 @@ Bitte melden Sie sich erneut an oder wenden Sie sich an den Administrator.`, NET
|
|
|
1896
1898
|
INVITATION: _a,
|
|
1897
1899
|
LOGIN: Ia,
|
|
1898
1900
|
PASSWORDRESET: wa,
|
|
1899
|
-
PERMISSION_MESSAGES:
|
|
1901
|
+
PERMISSION_MESSAGES: ba,
|
|
1900
1902
|
SHELL: La,
|
|
1901
1903
|
VC_SCHEDULER: ya,
|
|
1902
1904
|
common: Ma,
|
|
1903
|
-
default:
|
|
1904
|
-
messages:
|
|
1905
|
+
default: Ho,
|
|
1906
|
+
messages: Na
|
|
1905
1907
|
}, Symbol.toStringTag, { value: "Module" })), xo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1906
1908
|
__proto__: null,
|
|
1907
1909
|
de: Go,
|
|
1908
|
-
en:
|
|
1910
|
+
en: Wo
|
|
1909
1911
|
}, Symbol.toStringTag, { value: "Module" })), Je = k("global-error-handler");
|
|
1910
1912
|
function De(e) {
|
|
1911
1913
|
return e instanceof Error ? `${e.name}:${e.message}` : String(e);
|
|
1912
1914
|
}
|
|
1913
|
-
const pe = /* @__PURE__ */ new Map(),
|
|
1915
|
+
const pe = /* @__PURE__ */ new Map(), Nt = 3e3;
|
|
1914
1916
|
function Qe(e) {
|
|
1915
1917
|
const t = De(e), a = Date.now(), n = pe.get(t);
|
|
1916
|
-
if (n && a - n <
|
|
1918
|
+
if (n && a - n < Nt) return !0;
|
|
1917
1919
|
if (pe.set(t, a), pe.size > 50)
|
|
1918
1920
|
for (const [s, o] of pe)
|
|
1919
|
-
a - o >
|
|
1921
|
+
a - o > Nt && pe.delete(s);
|
|
1920
1922
|
return !1;
|
|
1921
1923
|
}
|
|
1922
1924
|
function $o(e) {
|
|
@@ -1924,8 +1926,8 @@ function $o(e) {
|
|
|
1924
1926
|
if (e.config.errorHandler = (o, r, l) => {
|
|
1925
1927
|
if (Je.error("Unhandled Vue error:", o, `
|
|
1926
1928
|
Info:`, l), !Qe(o)) {
|
|
1927
|
-
const
|
|
1928
|
-
j.error(
|
|
1929
|
+
const d = Pe(o);
|
|
1930
|
+
j.error(d.message, {
|
|
1929
1931
|
timeout: 8e3,
|
|
1930
1932
|
notificationId: `global-vue-${De(o)}`
|
|
1931
1933
|
});
|
|
@@ -1994,13 +1996,13 @@ function zo() {
|
|
|
1994
1996
|
};
|
|
1995
1997
|
}
|
|
1996
1998
|
const Ee = k("notification-container"), G = {
|
|
1997
|
-
"top-center":
|
|
1998
|
-
"top-right":
|
|
1999
|
-
"top-left":
|
|
2000
|
-
"bottom-center":
|
|
2001
|
-
"bottom-right":
|
|
2002
|
-
"bottom-left":
|
|
2003
|
-
}, { clearContainer: Yo, unmountComponent: qo, saveInstance: Zo, getInstanceByPosition:
|
|
1999
|
+
"top-center": N([]),
|
|
2000
|
+
"top-right": N([]),
|
|
2001
|
+
"top-left": N([]),
|
|
2002
|
+
"bottom-center": N([]),
|
|
2003
|
+
"bottom-right": N([]),
|
|
2004
|
+
"bottom-left": N([])
|
|
2005
|
+
}, { clearContainer: Yo, unmountComponent: qo, saveInstance: Zo, getInstanceByPosition: bt } = zo();
|
|
2004
2006
|
function jo() {
|
|
2005
2007
|
const e = ie({
|
|
2006
2008
|
timeout: 3e3,
|
|
@@ -2018,43 +2020,43 @@ function jo() {
|
|
|
2018
2020
|
}
|
|
2019
2021
|
function s(u) {
|
|
2020
2022
|
const f = document.querySelector(".notification"), m = f || document.createElement("div"), E = `.notification__container[data-position="${u}"]`;
|
|
2021
|
-
let
|
|
2022
|
-
return
|
|
2023
|
+
let c = document.querySelector(E);
|
|
2024
|
+
return c || (c = document.createElement("div"), c.className = "notification__container", c.id = `notification-${u}`, c.setAttribute("data-position", u), f || (m.className = "notification", document.body.appendChild(m)), m.appendChild(c)), c;
|
|
2023
2025
|
}
|
|
2024
2026
|
const o = /* @__PURE__ */ new Map();
|
|
2025
2027
|
async function r(u) {
|
|
2026
2028
|
const f = u.position || e.position, m = o.get(f);
|
|
2027
|
-
if (m && await m, !
|
|
2029
|
+
if (m && await m, !bt(f)) {
|
|
2028
2030
|
const E = (async () => {
|
|
2029
|
-
const
|
|
2031
|
+
const c = s(f), { default: S } = await Promise.resolve().then(() => wr), h = rn(S, {
|
|
2030
2032
|
...u,
|
|
2031
2033
|
position: f
|
|
2032
2034
|
});
|
|
2033
|
-
h.use(x), h.provide(Xt, { notificationContainers: G, actions:
|
|
2035
|
+
h.use(x), h.provide(Xt, { notificationContainers: G, actions: d }), h.mount(c), Zo(h, c.id, f);
|
|
2034
2036
|
})();
|
|
2035
2037
|
o.set(f, E), await E, o.delete(f);
|
|
2036
2038
|
}
|
|
2037
|
-
|
|
2038
|
-
u.updateId ?
|
|
2039
|
+
Ne(() => {
|
|
2040
|
+
u.updateId ? d.update(u) : d.add(u);
|
|
2039
2041
|
});
|
|
2040
2042
|
}
|
|
2041
2043
|
function l(u) {
|
|
2042
2044
|
return t().some((f) => f.notificationId === u);
|
|
2043
2045
|
}
|
|
2044
|
-
const
|
|
2046
|
+
const d = {
|
|
2045
2047
|
add(u) {
|
|
2046
2048
|
const f = u.position || e.position, m = G[f];
|
|
2047
|
-
m.value.find((
|
|
2049
|
+
m.value.find((c) => c.notificationId === u.notificationId) || Ne(() => {
|
|
2048
2050
|
m.value.push(u), u.onOpen && typeof u?.onOpen == "function" && u.onOpen(u.payload);
|
|
2049
2051
|
});
|
|
2050
2052
|
},
|
|
2051
2053
|
remove(u) {
|
|
2052
2054
|
if (u) {
|
|
2053
2055
|
let f, m;
|
|
2054
|
-
Object.entries(G).forEach(([E,
|
|
2055
|
-
const S =
|
|
2056
|
+
Object.entries(G).forEach(([E, c]) => {
|
|
2057
|
+
const S = c.value.find((h) => h.notificationId === u);
|
|
2056
2058
|
S && (f = S, m = E);
|
|
2057
|
-
}), m && (G[m].value = G[m].value.filter((E) => E.notificationId !== u), G[m].value.length === 0 && qo(m),
|
|
2059
|
+
}), m && (G[m].value = G[m].value.filter((E) => E.notificationId !== u), G[m].value.length === 0 && qo(m), Ne(() => {
|
|
2058
2060
|
f?.onClose && typeof f?.onClose == "function" && f.onClose(f.payload);
|
|
2059
2061
|
}));
|
|
2060
2062
|
}
|
|
@@ -2076,23 +2078,23 @@ function jo() {
|
|
|
2076
2078
|
update(u) {
|
|
2077
2079
|
if (u.updateId) {
|
|
2078
2080
|
let f, m, E;
|
|
2079
|
-
if (Object.entries(G).forEach(([
|
|
2081
|
+
if (Object.entries(G).forEach(([c, S]) => {
|
|
2080
2082
|
const h = S.value.find((O) => O.notificationId === u.notificationId);
|
|
2081
|
-
h && (f = h, m = S, E =
|
|
2083
|
+
h && (f = h, m = S, E = c);
|
|
2082
2084
|
}), f && m) {
|
|
2083
2085
|
if (Ee.debug(`Updating notification ${u.notificationId} in position ${E}`), u.position && u.position !== E) {
|
|
2084
2086
|
m.value = m.value.filter(
|
|
2085
2087
|
(h) => h.notificationId !== u.notificationId
|
|
2086
2088
|
);
|
|
2087
|
-
const
|
|
2089
|
+
const c = {
|
|
2088
2090
|
...f,
|
|
2089
2091
|
...u
|
|
2090
2092
|
}, S = u.position;
|
|
2091
|
-
|
|
2093
|
+
bt(S) ? (Ee.debug(`Adding to existing container for position ${S}`), G[S].value.push(c)) : (Ee.debug(`Creating new container for position ${S}`), r(c));
|
|
2092
2094
|
} else
|
|
2093
|
-
Ee.debug("Standard update of notification properties"), Object.keys(u).forEach((
|
|
2094
|
-
if (
|
|
2095
|
-
const S =
|
|
2095
|
+
Ee.debug("Standard update of notification properties"), Object.keys(u).forEach((c) => {
|
|
2096
|
+
if (c !== "updateId" && c !== "notificationId") {
|
|
2097
|
+
const S = c, h = u[S];
|
|
2096
2098
|
f && h !== void 0 && (f[S] = h);
|
|
2097
2099
|
}
|
|
2098
2100
|
});
|
|
@@ -2109,12 +2111,12 @@ function jo() {
|
|
|
2109
2111
|
return {
|
|
2110
2112
|
defaultOptions: e,
|
|
2111
2113
|
notificationContainers: G,
|
|
2112
|
-
actions:
|
|
2114
|
+
actions: d,
|
|
2113
2115
|
getAllNotifications: t,
|
|
2114
2116
|
getNotificationsByPosition: a,
|
|
2115
2117
|
appendInstance: r,
|
|
2116
2118
|
getNotification: n,
|
|
2117
|
-
generateNotificationId:
|
|
2119
|
+
generateNotificationId: Ha,
|
|
2118
2120
|
hasNotification: l
|
|
2119
2121
|
};
|
|
2120
2122
|
}
|
|
@@ -2129,12 +2131,12 @@ function Xo() {
|
|
|
2129
2131
|
hasNotification: (t) => e.hasNotification(t)
|
|
2130
2132
|
});
|
|
2131
2133
|
}
|
|
2132
|
-
const Jo = "2.7.0-
|
|
2134
|
+
const Jo = "2.7.0-pr394.9142e37";
|
|
2133
2135
|
function Qo() {
|
|
2134
2136
|
return {
|
|
2135
2137
|
version: Jo,
|
|
2136
|
-
buildDate: "2026-10-
|
|
2137
|
-
gitHash: "
|
|
2138
|
+
buildDate: "2026-10-30T11:31:12.565Z",
|
|
2139
|
+
gitHash: "9142e3785"
|
|
2138
2140
|
};
|
|
2139
2141
|
}
|
|
2140
2142
|
function er(e = Qo()) {
|
|
@@ -2144,7 +2146,7 @@ function er(e = Qo()) {
|
|
|
2144
2146
|
"color:inherit"
|
|
2145
2147
|
);
|
|
2146
2148
|
}
|
|
2147
|
-
const tr = /* @__PURE__ */
|
|
2149
|
+
const tr = /* @__PURE__ */ H({
|
|
2148
2150
|
__name: "sidebar",
|
|
2149
2151
|
props: {
|
|
2150
2152
|
position: { default: "right" },
|
|
@@ -2156,7 +2158,7 @@ const tr = /* @__PURE__ */ W({
|
|
|
2156
2158
|
emits: ["close"],
|
|
2157
2159
|
setup(e, { emit: t }) {
|
|
2158
2160
|
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
|
|
2161
|
+
function d(u) {
|
|
2160
2162
|
u || n("close");
|
|
2161
2163
|
}
|
|
2162
2164
|
return (u, f) => l.value ? (P(), D(i(vn), {
|
|
@@ -2166,7 +2168,7 @@ const tr = /* @__PURE__ */ W({
|
|
|
2166
2168
|
title: e.title,
|
|
2167
2169
|
"close-button": e.closeCross,
|
|
2168
2170
|
teleport: !i(o),
|
|
2169
|
-
"onUpdate:modelValue":
|
|
2171
|
+
"onUpdate:modelValue": d
|
|
2170
2172
|
}, Oe({
|
|
2171
2173
|
default: T(() => [
|
|
2172
2174
|
q(u.$slots, "content")
|
|
@@ -2182,7 +2184,7 @@ const tr = /* @__PURE__ */ W({
|
|
|
2182
2184
|
} : void 0
|
|
2183
2185
|
]), 1032, ["position", "title", "close-button", "teleport"])) : q(u.$slots, "content", { key: 1 });
|
|
2184
2186
|
}
|
|
2185
|
-
}), $l = tr, ar = { class: "tw-flex tw-flex-row tw-items-center tw-gap-2" }, nr = /* @__PURE__ */
|
|
2187
|
+
}), $l = tr, ar = { class: "tw-flex tw-flex-row tw-items-center tw-gap-2" }, nr = /* @__PURE__ */ H({
|
|
2186
2188
|
__name: "external-provider",
|
|
2187
2189
|
props: {
|
|
2188
2190
|
logo: {},
|
|
@@ -2210,15 +2212,15 @@ const tr = /* @__PURE__ */ W({
|
|
|
2210
2212
|
_: 1
|
|
2211
2213
|
}));
|
|
2212
2214
|
}
|
|
2213
|
-
}), sr = { class: "tw-flex tw-justify-center tw-flex-col tw-gap-4" }, or = /* @__PURE__ */
|
|
2215
|
+
}), sr = { class: "tw-flex tw-justify-center tw-flex-col tw-gap-4" }, or = /* @__PURE__ */ H({
|
|
2214
2216
|
__name: "external-providers",
|
|
2215
2217
|
props: {
|
|
2216
2218
|
providers: {}
|
|
2217
2219
|
},
|
|
2218
2220
|
setup(e) {
|
|
2219
2221
|
const { signIn: t } = zt();
|
|
2220
|
-
return (a, n) => (P(),
|
|
2221
|
-
(P(!0),
|
|
2222
|
+
return (a, n) => (P(), W("div", sr, [
|
|
2223
|
+
(P(!0), W(ne, null, We(e.providers, (s) => (P(), D(nr, {
|
|
2222
2224
|
key: s.authenticationType,
|
|
2223
2225
|
logo: s.logoUrl,
|
|
2224
2226
|
"display-name": s.displayName,
|
|
@@ -2243,10 +2245,10 @@ function lr(e) {
|
|
|
2243
2245
|
const ur = {
|
|
2244
2246
|
key: 0,
|
|
2245
2247
|
class: "vc-login-page__providers"
|
|
2246
|
-
},
|
|
2248
|
+
}, dr = {
|
|
2247
2249
|
key: 0,
|
|
2248
2250
|
class: "vc-login-page__separator-line"
|
|
2249
|
-
},
|
|
2251
|
+
}, cr = /* @__PURE__ */ H({
|
|
2250
2252
|
__name: "Login",
|
|
2251
2253
|
props: {
|
|
2252
2254
|
logo: {},
|
|
@@ -2256,7 +2258,7 @@ const ur = {
|
|
|
2256
2258
|
ssoOnly: { type: Boolean }
|
|
2257
2259
|
},
|
|
2258
2260
|
setup(e) {
|
|
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(),
|
|
2261
|
+
const t = k("login-page"), a = e, { t: n } = le({ useScope: "global" }), s = ve(), { validateField: o } = ue({ validateOnMount: !1 }), { uiSettings: r, loading: l } = we(), d = N({ succeeded: !0 }), { signIn: u, loading: f, user: m } = se(), { getProviders: E } = zt(), c = Ie(), S = N(), h = N(!1);
|
|
2260
2262
|
Le(async () => {
|
|
2261
2263
|
S.value = await E(), h.value = !0;
|
|
2262
2264
|
});
|
|
@@ -2268,17 +2270,17 @@ const ur = {
|
|
|
2268
2270
|
// Off by default, as in the platform admin UI: a session cookie unless the user asks to be remembered.
|
|
2269
2271
|
rememberMe: !1
|
|
2270
2272
|
}), w = async () => {
|
|
2271
|
-
if (
|
|
2272
|
-
if (
|
|
2273
|
+
if (c.value) {
|
|
2274
|
+
if (d.value.error = "", d.value = await u(_.username, _.password, _.rememberMe), d.value.succeeded && m.value?.passwordExpired) {
|
|
2273
2275
|
await s.push({ name: "ChangePassword" });
|
|
2274
2276
|
return;
|
|
2275
2277
|
}
|
|
2276
|
-
if (
|
|
2278
|
+
if (d.value.succeeded) {
|
|
2277
2279
|
const A = rr(vo());
|
|
2278
2280
|
await s.push(A);
|
|
2279
2281
|
return;
|
|
2280
2282
|
}
|
|
2281
|
-
|
|
2283
|
+
d.value.error = ir(d.value, n), _.password = "", o("password");
|
|
2282
2284
|
}
|
|
2283
2285
|
}, C = () => {
|
|
2284
2286
|
s.push({ name: "ForgotPassword" });
|
|
@@ -2291,9 +2293,9 @@ const ur = {
|
|
|
2291
2293
|
class: "vc-login-page"
|
|
2292
2294
|
}, {
|
|
2293
2295
|
default: T(() => [
|
|
2294
|
-
S.value && S.value.length ? (P(),
|
|
2296
|
+
S.value && S.value.length ? (P(), W("div", ur, [
|
|
2295
2297
|
R(or, { providers: S.value }, null, 8, ["providers"]),
|
|
2296
|
-
e.ssoOnly ? Y("", !0) : (P(),
|
|
2298
|
+
e.ssoOnly ? Y("", !0) : (P(), W("div", dr, y(A.$t("LOGIN.OR")), 1))
|
|
2297
2299
|
])) : Y("", !0),
|
|
2298
2300
|
e.ssoOnly && h.value && !S.value?.length ? (P(), D(i(fe), {
|
|
2299
2301
|
key: 1,
|
|
@@ -2304,7 +2306,7 @@ const ur = {
|
|
|
2304
2306
|
]),
|
|
2305
2307
|
_: 1
|
|
2306
2308
|
})) : Y("", !0),
|
|
2307
|
-
e.ssoOnly ? Y("", !0) : (P(),
|
|
2309
|
+
e.ssoOnly ? Y("", !0) : (P(), W(ne, { key: 2 }, [
|
|
2308
2310
|
R(i(ge), {
|
|
2309
2311
|
class: "tw-gap-5",
|
|
2310
2312
|
onSubmit: w
|
|
@@ -2321,7 +2323,7 @@ const ur = {
|
|
|
2321
2323
|
ref: "loginField",
|
|
2322
2324
|
modelValue: _.username,
|
|
2323
2325
|
"onUpdate:modelValue": [
|
|
2324
|
-
g[0] || (g[0] = (
|
|
2326
|
+
g[0] || (g[0] = (b) => _.username = b),
|
|
2325
2327
|
p
|
|
2326
2328
|
],
|
|
2327
2329
|
label: A.$t("LOGIN.FIELDS.LOGIN.LABEL"),
|
|
@@ -2345,7 +2347,7 @@ const ur = {
|
|
|
2345
2347
|
ref: "passwordField",
|
|
2346
2348
|
modelValue: _.password,
|
|
2347
2349
|
"onUpdate:modelValue": [
|
|
2348
|
-
g[1] || (g[1] = (
|
|
2350
|
+
g[1] || (g[1] = (b) => _.password = b),
|
|
2349
2351
|
p
|
|
2350
2352
|
],
|
|
2351
2353
|
label: A.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
|
|
@@ -2375,7 +2377,7 @@ const ur = {
|
|
|
2375
2377
|
variant: "primary",
|
|
2376
2378
|
class: "tw-w-full",
|
|
2377
2379
|
icon: "lucide-log-in",
|
|
2378
|
-
disabled: !i(
|
|
2380
|
+
disabled: !i(c),
|
|
2379
2381
|
loading: i(f),
|
|
2380
2382
|
onClick: w
|
|
2381
2383
|
}, {
|
|
@@ -2404,12 +2406,12 @@ const ur = {
|
|
|
2404
2406
|
"separator-class": "tw-border-t tw-border-[color:var(--login-separator)] tw-border-solid tw-pb-5",
|
|
2405
2407
|
"wrapper-class": "vc-login-page__separator"
|
|
2406
2408
|
}),
|
|
2407
|
-
|
|
2409
|
+
d.value.succeeded ? Y("", !0) : (P(), D(i(fe), {
|
|
2408
2410
|
key: 0,
|
|
2409
2411
|
class: "tw-mt-4 tw-text-danger-500"
|
|
2410
2412
|
}, {
|
|
2411
2413
|
default: T(() => [
|
|
2412
|
-
B(y(
|
|
2414
|
+
B(y(d.value.error), 1)
|
|
2413
2415
|
]),
|
|
2414
2416
|
_: 1
|
|
2415
2417
|
}))
|
|
@@ -2418,7 +2420,7 @@ const ur = {
|
|
|
2418
2420
|
_: 1
|
|
2419
2421
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2420
2422
|
}
|
|
2421
|
-
}), Kl =
|
|
2423
|
+
}), Kl = cr, Er = { class: "tw-text-center" }, fr = { class: "tw-text-center tw-mb-6" }, mr = { class: "tw-text-sm tw-text-neutrals-600" }, gr = /* @__PURE__ */ H({
|
|
2422
2424
|
__name: "ForgotPassword",
|
|
2423
2425
|
props: {
|
|
2424
2426
|
logo: {},
|
|
@@ -2428,7 +2430,7 @@ const ur = {
|
|
|
2428
2430
|
setup(e) {
|
|
2429
2431
|
const t = e, a = ve(), { t: n } = le({ useScope: "global" });
|
|
2430
2432
|
ue({ validateOnMount: !1 });
|
|
2431
|
-
const s = Ie(), { uiSettings: o, loading: r } = we(), l =
|
|
2433
|
+
const s = Ie(), { uiSettings: o, loading: r } = we(), l = N(!1), d = N(""), u = N(!1), f = ie({
|
|
2432
2434
|
loginOrEmail: ""
|
|
2433
2435
|
});
|
|
2434
2436
|
let m;
|
|
@@ -2442,15 +2444,15 @@ const ur = {
|
|
|
2442
2444
|
}
|
|
2443
2445
|
const E = v(() => ({
|
|
2444
2446
|
logo: r.value ? "" : o.value?.logo || t.logo
|
|
2445
|
-
})),
|
|
2447
|
+
})), c = v(() => {
|
|
2446
2448
|
const O = f.loginOrEmail, [_, w] = O.split("@");
|
|
2447
2449
|
return !_ || !w ? O : `${_.length > 2 ? _[0] + "***" + _[_.length - 1] : _[0] + "***"}@${w}`;
|
|
2448
2450
|
}), S = async () => {
|
|
2449
2451
|
if (!(!s.value || !m))
|
|
2450
2452
|
try {
|
|
2451
|
-
l.value = !0,
|
|
2453
|
+
l.value = !0, d.value = "", await m({ loginOrEmail: f.loginOrEmail }), u.value = !0;
|
|
2452
2454
|
} catch (O) {
|
|
2453
|
-
|
|
2455
|
+
d.value = O instanceof Error ? O.message : String(O);
|
|
2454
2456
|
} finally {
|
|
2455
2457
|
l.value = !1;
|
|
2456
2458
|
}
|
|
@@ -2464,9 +2466,9 @@ const ur = {
|
|
|
2464
2466
|
subtitle: u.value ? void 0 : i(n)("FORGOT_PASSWORD.SUBTITLE")
|
|
2465
2467
|
}, {
|
|
2466
2468
|
default: T(() => [
|
|
2467
|
-
u.value ? (P(),
|
|
2469
|
+
u.value ? (P(), W(ne, { key: 1 }, [
|
|
2468
2470
|
U("div", fr, [
|
|
2469
|
-
U("p", mr, y(i(n)("FORGOT_PASSWORD.SUCCESS_TEXT", { email:
|
|
2471
|
+
U("p", mr, y(i(n)("FORGOT_PASSWORD.SUCCESS_TEXT", { email: c.value })), 1)
|
|
2470
2472
|
]),
|
|
2471
2473
|
R(i($), {
|
|
2472
2474
|
variant: "primary",
|
|
@@ -2478,7 +2480,7 @@ const ur = {
|
|
|
2478
2480
|
]),
|
|
2479
2481
|
_: 1
|
|
2480
2482
|
})
|
|
2481
|
-
], 64)) : (P(),
|
|
2483
|
+
], 64)) : (P(), W(ne, { key: 0 }, [
|
|
2482
2484
|
R(i(ge), { onSubmit: S }, {
|
|
2483
2485
|
default: T(() => [
|
|
2484
2486
|
R(i(X), {
|
|
@@ -2534,12 +2536,12 @@ const ur = {
|
|
|
2534
2536
|
]),
|
|
2535
2537
|
_: 1
|
|
2536
2538
|
}),
|
|
2537
|
-
|
|
2539
|
+
d.value ? (P(), D(i(fe), {
|
|
2538
2540
|
key: 0,
|
|
2539
2541
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2540
2542
|
}, {
|
|
2541
2543
|
default: T(() => [
|
|
2542
|
-
B(y(
|
|
2544
|
+
B(y(d.value), 1)
|
|
2543
2545
|
]),
|
|
2544
2546
|
_: 1
|
|
2545
2547
|
})) : Y("", !0)
|
|
@@ -2548,7 +2550,7 @@ const ur = {
|
|
|
2548
2550
|
_: 1
|
|
2549
2551
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2550
2552
|
}
|
|
2551
|
-
}), zl = gr, Sr = /* @__PURE__ */
|
|
2553
|
+
}), zl = gr, Sr = /* @__PURE__ */ H({
|
|
2552
2554
|
__name: "ResetPassword",
|
|
2553
2555
|
props: {
|
|
2554
2556
|
userId: {},
|
|
@@ -2558,7 +2560,7 @@ const ur = {
|
|
|
2558
2560
|
background: { default: "/assets/background.jpg" }
|
|
2559
2561
|
},
|
|
2560
2562
|
setup(e) {
|
|
2561
|
-
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t:
|
|
2563
|
+
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t: d } = le({ useScope: "global" }), { validate: u } = ue({ validateOnMount: !1 }), { uiSettings: f, loading: m } = we(), E = ie({
|
|
2562
2564
|
isValid: !1,
|
|
2563
2565
|
tokenIsValid: !1,
|
|
2564
2566
|
errors: [],
|
|
@@ -2568,7 +2570,7 @@ const ur = {
|
|
|
2568
2570
|
Le(async () => {
|
|
2569
2571
|
E.tokenIsValid = await a(t.userId, t.token), E.tokenIsValid || E.errors.push("Invalid-token");
|
|
2570
2572
|
});
|
|
2571
|
-
const
|
|
2573
|
+
const c = v(() => r.value || !E.password || !E.confirmPassword || !E.isValid && E.tokenIsValid), S = async () => {
|
|
2572
2574
|
if (E.tokenIsValid) {
|
|
2573
2575
|
const _ = (await n(E.password)).errors;
|
|
2574
2576
|
E.errors = _?.map((w) => w.code), E.confirmPassword !== E.password && E.errors.push("Repeat-password"), E.isValid = E.errors.length == 0;
|
|
@@ -2589,8 +2591,8 @@ const ur = {
|
|
|
2589
2591
|
return (_, w) => (P(), D(i(_e), {
|
|
2590
2592
|
logo: O.value.logo,
|
|
2591
2593
|
background: e.background,
|
|
2592
|
-
title: i(
|
|
2593
|
-
subtitle: i(
|
|
2594
|
+
title: i(d)("PASSWORDRESET.TITLE"),
|
|
2595
|
+
subtitle: i(d)("PASSWORDRESET.SUBTITLE")
|
|
2594
2596
|
}, {
|
|
2595
2597
|
default: T(() => [
|
|
2596
2598
|
i(r) ? (P(), D(i(Gt), {
|
|
@@ -2600,7 +2602,7 @@ const ur = {
|
|
|
2600
2602
|
R(i(ge), null, {
|
|
2601
2603
|
default: T(() => [
|
|
2602
2604
|
R(i(X), {
|
|
2603
|
-
label: i(
|
|
2605
|
+
label: i(d)("PASSWORDRESET.FIELDS.PASSWORD.LABEL"),
|
|
2604
2606
|
name: "password",
|
|
2605
2607
|
"model-value": E.password,
|
|
2606
2608
|
rules: "required"
|
|
@@ -2616,8 +2618,8 @@ const ur = {
|
|
|
2616
2618
|
}
|
|
2617
2619
|
],
|
|
2618
2620
|
class: "tw-mb-4",
|
|
2619
|
-
label: i(
|
|
2620
|
-
placeholder: i(
|
|
2621
|
+
label: i(d)("PASSWORDRESET.FIELDS.PASSWORD.LABEL"),
|
|
2622
|
+
placeholder: i(d)("PASSWORDRESET.FIELDS.PASSWORD.PLACEHOLDER"),
|
|
2621
2623
|
type: "password",
|
|
2622
2624
|
autocomplete: "new-password",
|
|
2623
2625
|
disabled: !E.tokenIsValid,
|
|
@@ -2629,7 +2631,7 @@ const ur = {
|
|
|
2629
2631
|
_: 1
|
|
2630
2632
|
}, 8, ["label", "model-value"]),
|
|
2631
2633
|
R(i(X), {
|
|
2632
|
-
label: i(
|
|
2634
|
+
label: i(d)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2633
2635
|
name: "confirm_password",
|
|
2634
2636
|
"model-value": E.confirmPassword,
|
|
2635
2637
|
rules: "required"
|
|
@@ -2645,8 +2647,8 @@ const ur = {
|
|
|
2645
2647
|
}
|
|
2646
2648
|
],
|
|
2647
2649
|
class: "tw-mb-6",
|
|
2648
|
-
label: i(
|
|
2649
|
-
placeholder: i(
|
|
2650
|
+
label: i(d)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2651
|
+
placeholder: i(d)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.PLACEHOLDER"),
|
|
2650
2652
|
disabled: !E.tokenIsValid,
|
|
2651
2653
|
type: "password",
|
|
2652
2654
|
autocomplete: "new-password",
|
|
@@ -2661,21 +2663,21 @@ const ur = {
|
|
|
2661
2663
|
R(i($), {
|
|
2662
2664
|
variant: "primary",
|
|
2663
2665
|
class: "tw-w-full",
|
|
2664
|
-
disabled:
|
|
2666
|
+
disabled: c.value,
|
|
2665
2667
|
loading: i(r),
|
|
2666
2668
|
onClick: h
|
|
2667
2669
|
}, {
|
|
2668
2670
|
default: T(() => [
|
|
2669
|
-
B(y(i(
|
|
2671
|
+
B(y(i(d)("PASSWORDRESET.SAVE_PASSWORD")), 1)
|
|
2670
2672
|
]),
|
|
2671
2673
|
_: 1
|
|
2672
2674
|
}, 8, ["disabled", "loading"]),
|
|
2673
|
-
(P(!0),
|
|
2675
|
+
(P(!0), W(ne, null, We(E.errors, (C) => (P(), D(i(fe), {
|
|
2674
2676
|
key: C,
|
|
2675
2677
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2676
2678
|
}, {
|
|
2677
2679
|
default: T(() => [
|
|
2678
|
-
B(y(i(
|
|
2680
|
+
B(y(i(d)(`PASSWORDRESET.ERRORS.${C}`)), 1)
|
|
2679
2681
|
]),
|
|
2680
2682
|
_: 2
|
|
2681
2683
|
}, 1024))), 128))
|
|
@@ -2686,7 +2688,7 @@ const ur = {
|
|
|
2686
2688
|
_: 1
|
|
2687
2689
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2688
2690
|
}
|
|
2689
|
-
}), Yl = Sr, Ar = /* @__PURE__ */
|
|
2691
|
+
}), Yl = Sr, Ar = /* @__PURE__ */ H({
|
|
2690
2692
|
__name: "Invite",
|
|
2691
2693
|
props: {
|
|
2692
2694
|
userId: {},
|
|
@@ -2697,7 +2699,7 @@ const ur = {
|
|
|
2697
2699
|
},
|
|
2698
2700
|
setup(e) {
|
|
2699
2701
|
ue({ validateOnMount: !1 });
|
|
2700
|
-
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t:
|
|
2702
|
+
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t: d } = le({ useScope: "global" }), u = Ie(), f = ct(), { uiSettings: m, loading: E } = we(), c = ie({
|
|
2701
2703
|
isValid: !1,
|
|
2702
2704
|
tokenIsValid: !1,
|
|
2703
2705
|
errors: [],
|
|
@@ -2705,24 +2707,24 @@ const ur = {
|
|
|
2705
2707
|
confirmPassword: ""
|
|
2706
2708
|
}), S = v(() => !f.value || !u.value);
|
|
2707
2709
|
Le(async () => {
|
|
2708
|
-
|
|
2710
|
+
c.tokenIsValid = await a(t.userId, t.token), c.tokenIsValid || c.errors.push("Invalid-token");
|
|
2709
2711
|
});
|
|
2710
2712
|
const h = async () => {
|
|
2711
|
-
if (
|
|
2712
|
-
const w = (await n(
|
|
2713
|
-
|
|
2713
|
+
if (c.tokenIsValid) {
|
|
2714
|
+
const w = (await n(c.password)).errors;
|
|
2715
|
+
c.errors = w?.map((C) => C.code), c.confirmPassword && c.confirmPassword !== c.password && c.errors.push("Repeat-password"), c.isValid = c.errors.length == 0 && !S.value;
|
|
2714
2716
|
}
|
|
2715
2717
|
}, O = async () => {
|
|
2716
|
-
const w = await s(t.userId,
|
|
2717
|
-
w.succeeded ? (await o(t.userName,
|
|
2718
|
+
const w = await s(t.userId, c.password, t.token);
|
|
2719
|
+
w.succeeded ? (await o(t.userName, c.password)).succeeded && l.push("/") : c.errors = w.errors;
|
|
2718
2720
|
}, _ = v(() => ({
|
|
2719
2721
|
logo: E.value ? "" : m.value?.logo || t.logo
|
|
2720
2722
|
}));
|
|
2721
2723
|
return (w, C) => (P(), D(i(_e), {
|
|
2722
2724
|
logo: _.value.logo,
|
|
2723
2725
|
background: e.background,
|
|
2724
|
-
title: i(
|
|
2725
|
-
subtitle: i(
|
|
2726
|
+
title: i(d)("INVITATION.TITLE"),
|
|
2727
|
+
subtitle: i(d)("INVITATION.SUBTITLE")
|
|
2726
2728
|
}, {
|
|
2727
2729
|
default: T(() => [
|
|
2728
2730
|
i(r) ? (P(), D(i(Gt), {
|
|
@@ -2733,34 +2735,34 @@ const ur = {
|
|
|
2733
2735
|
default: T(() => [
|
|
2734
2736
|
R(i(K), {
|
|
2735
2737
|
class: "tw-mb-4",
|
|
2736
|
-
label: i(
|
|
2738
|
+
label: i(d)("INVITATION.FIELDS.EMAIL.LABEL"),
|
|
2737
2739
|
"model-value": e.userName,
|
|
2738
2740
|
name: "username",
|
|
2739
2741
|
autocomplete: "username",
|
|
2740
2742
|
disabled: ""
|
|
2741
2743
|
}, null, 8, ["label", "model-value"]),
|
|
2742
2744
|
R(i(X), {
|
|
2743
|
-
label: i(
|
|
2744
|
-
"model-value":
|
|
2745
|
+
label: i(d)("INVITATION.FIELDS.PASSWORD.LABEL"),
|
|
2746
|
+
"model-value": c.password,
|
|
2745
2747
|
rules: "required",
|
|
2746
2748
|
name: "password"
|
|
2747
2749
|
}, {
|
|
2748
2750
|
default: T(({ field: A, errorMessage: g, handleChange: L, errors: p }) => [
|
|
2749
2751
|
R(i(K), re(A, {
|
|
2750
2752
|
ref: "passwordField",
|
|
2751
|
-
modelValue:
|
|
2753
|
+
modelValue: c.password,
|
|
2752
2754
|
"onUpdate:modelValue": [
|
|
2753
|
-
C[0] || (C[0] = (I) =>
|
|
2755
|
+
C[0] || (C[0] = (I) => c.password = I),
|
|
2754
2756
|
(I) => {
|
|
2755
2757
|
L(I), h();
|
|
2756
2758
|
}
|
|
2757
2759
|
],
|
|
2758
2760
|
class: "tw-mb-4",
|
|
2759
|
-
label: i(
|
|
2760
|
-
placeholder: i(
|
|
2761
|
+
label: i(d)("INVITATION.FIELDS.PASSWORD.LABEL"),
|
|
2762
|
+
placeholder: i(d)("INVITATION.FIELDS.PASSWORD.PLACEHOLDER"),
|
|
2761
2763
|
type: "password",
|
|
2762
2764
|
autocomplete: "new-password",
|
|
2763
|
-
disabled: !
|
|
2765
|
+
disabled: !c.tokenIsValid,
|
|
2764
2766
|
error: !!p.length,
|
|
2765
2767
|
"error-message": g,
|
|
2766
2768
|
required: ""
|
|
@@ -2769,25 +2771,25 @@ const ur = {
|
|
|
2769
2771
|
_: 1
|
|
2770
2772
|
}, 8, ["label", "model-value"]),
|
|
2771
2773
|
R(i(X), {
|
|
2772
|
-
label: i(
|
|
2773
|
-
"model-value":
|
|
2774
|
+
label: i(d)("INVITATION.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2775
|
+
"model-value": c.confirmPassword,
|
|
2774
2776
|
rules: "required",
|
|
2775
2777
|
name: "confirm_password"
|
|
2776
2778
|
}, {
|
|
2777
2779
|
default: T(({ field: A, errorMessage: g, handleChange: L, errors: p }) => [
|
|
2778
2780
|
R(i(K), re(A, {
|
|
2779
2781
|
ref: "confirmPasswordField",
|
|
2780
|
-
modelValue:
|
|
2782
|
+
modelValue: c.confirmPassword,
|
|
2781
2783
|
"onUpdate:modelValue": [
|
|
2782
|
-
C[1] || (C[1] = (I) =>
|
|
2784
|
+
C[1] || (C[1] = (I) => c.confirmPassword = I),
|
|
2783
2785
|
(I) => {
|
|
2784
2786
|
L(I), h();
|
|
2785
2787
|
}
|
|
2786
2788
|
],
|
|
2787
2789
|
class: "tw-mb-6",
|
|
2788
|
-
label: i(
|
|
2789
|
-
placeholder: i(
|
|
2790
|
-
disabled: !
|
|
2790
|
+
label: i(d)("INVITATION.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2791
|
+
placeholder: i(d)("INVITATION.FIELDS.CONFIRM_PASSWORD.PLACEHOLDER"),
|
|
2792
|
+
disabled: !c.tokenIsValid,
|
|
2791
2793
|
type: "password",
|
|
2792
2794
|
autocomplete: "new-password",
|
|
2793
2795
|
error: !!p.length,
|
|
@@ -2801,21 +2803,21 @@ const ur = {
|
|
|
2801
2803
|
R(i($), {
|
|
2802
2804
|
variant: "primary",
|
|
2803
2805
|
class: "tw-w-full",
|
|
2804
|
-
disabled: i(r) || !
|
|
2806
|
+
disabled: i(r) || !c.isValid || !c.tokenIsValid,
|
|
2805
2807
|
loading: i(r),
|
|
2806
2808
|
onClick: O
|
|
2807
2809
|
}, {
|
|
2808
2810
|
default: T(() => [
|
|
2809
|
-
B(y(i(
|
|
2811
|
+
B(y(i(d)("INVITATION.ACCEPT_INVITATION")), 1)
|
|
2810
2812
|
]),
|
|
2811
2813
|
_: 1
|
|
2812
2814
|
}, 8, ["disabled", "loading"]),
|
|
2813
|
-
(P(!0),
|
|
2815
|
+
(P(!0), W(ne, null, We(c.errors, (A) => (P(), D(i(fe), {
|
|
2814
2816
|
key: A,
|
|
2815
2817
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2816
2818
|
}, {
|
|
2817
2819
|
default: T(() => [
|
|
2818
|
-
B(y(i(
|
|
2820
|
+
B(y(i(d)(`INVITATION.ERRORS.${A}`)), 1)
|
|
2819
2821
|
]),
|
|
2820
2822
|
_: 2
|
|
2821
2823
|
}, 1024))), 128))
|
|
@@ -2829,7 +2831,7 @@ const ur = {
|
|
|
2829
2831
|
}), ql = Ar, pr = {
|
|
2830
2832
|
key: 0,
|
|
2831
2833
|
class: "tw-mb-4"
|
|
2832
|
-
}, Tr = { class: "tw-flex tw-gap-3" }, hr = /* @__PURE__ */
|
|
2834
|
+
}, Tr = { class: "tw-flex tw-gap-3" }, hr = /* @__PURE__ */ H({
|
|
2833
2835
|
__name: "ChangePassword",
|
|
2834
2836
|
props: {
|
|
2835
2837
|
forced: { type: Boolean },
|
|
@@ -2837,11 +2839,11 @@ const ur = {
|
|
|
2837
2839
|
background: {}
|
|
2838
2840
|
},
|
|
2839
2841
|
setup(e) {
|
|
2840
|
-
const t = e, { t: a } = le({ useScope: "global" }), { changeUserPassword: n, loading: s, validatePassword: o, signOut: r } = se(), { uiSettings: l, loading:
|
|
2841
|
-
logo:
|
|
2842
|
+
const t = e, { t: a } = le({ useScope: "global" }), { changeUserPassword: n, loading: s, validatePassword: o, signOut: r } = se(), { uiSettings: l, loading: d } = we(), u = v(() => ({
|
|
2843
|
+
logo: d.value ? "" : l.value?.logo || t.logo
|
|
2842
2844
|
}));
|
|
2843
2845
|
ue({ validateOnMount: !1 });
|
|
2844
|
-
const f = Ie(), m =
|
|
2846
|
+
const f = Ie(), m = ct(), E = ve(), c = ie({
|
|
2845
2847
|
isValid: !1,
|
|
2846
2848
|
errors: [],
|
|
2847
2849
|
currentPassword: "",
|
|
@@ -2852,18 +2854,18 @@ const ur = {
|
|
|
2852
2854
|
await r(), await E.push("/login");
|
|
2853
2855
|
}
|
|
2854
2856
|
async function O() {
|
|
2855
|
-
const w = await n(
|
|
2856
|
-
w?.succeeded ? await E.push("/") : w?.errors && (
|
|
2857
|
+
const w = await n(c.currentPassword, c.password);
|
|
2858
|
+
w?.succeeded ? await E.push("/") : w?.errors && (c.errors = w?.errors, c.isValid = c.errors.length == 0);
|
|
2857
2859
|
}
|
|
2858
2860
|
function _() {
|
|
2859
|
-
|
|
2860
|
-
if (
|
|
2861
|
-
const w = (await o(
|
|
2862
|
-
password:
|
|
2863
|
-
confirmPassword:
|
|
2864
|
-
currentPassword:
|
|
2861
|
+
Ne(async () => {
|
|
2862
|
+
if (c.password || c.confirmPassword) {
|
|
2863
|
+
const w = (await o(c.password)).errors ?? [], C = lr({
|
|
2864
|
+
password: c.password,
|
|
2865
|
+
confirmPassword: c.confirmPassword,
|
|
2866
|
+
currentPassword: c.currentPassword
|
|
2865
2867
|
});
|
|
2866
|
-
|
|
2868
|
+
c.errors = [...w, ...C], c.isValid = c.errors.length == 0;
|
|
2867
2869
|
}
|
|
2868
2870
|
});
|
|
2869
2871
|
}
|
|
@@ -2874,7 +2876,7 @@ const ur = {
|
|
|
2874
2876
|
subtitle: e.forced ? i(a)("COMPONENTS.CHANGE_PASSWORD.SUBTITLE_FORCED") : void 0
|
|
2875
2877
|
}, {
|
|
2876
2878
|
default: T(() => [
|
|
2877
|
-
e.forced ? (P(),
|
|
2879
|
+
e.forced ? (P(), W("div", pr, [
|
|
2878
2880
|
R(i(Cn), {
|
|
2879
2881
|
variant: "info",
|
|
2880
2882
|
icon: "lucide-lightbulb",
|
|
@@ -2892,14 +2894,14 @@ const ur = {
|
|
|
2892
2894
|
label: i(a)("COMPONENTS.CHANGE_PASSWORD.CURRENT_PASSWORD.LABEL"),
|
|
2893
2895
|
name: "current",
|
|
2894
2896
|
rules: "required",
|
|
2895
|
-
"model-value":
|
|
2897
|
+
"model-value": c.currentPassword
|
|
2896
2898
|
}, {
|
|
2897
2899
|
default: T(({ field: A, errorMessage: g, errors: L }) => [
|
|
2898
2900
|
R(i(K), re(A, {
|
|
2899
2901
|
ref: "passwordField",
|
|
2900
|
-
modelValue:
|
|
2902
|
+
modelValue: c.currentPassword,
|
|
2901
2903
|
"onUpdate:modelValue": [
|
|
2902
|
-
C[0] || (C[0] = (p) =>
|
|
2904
|
+
C[0] || (C[0] = (p) => c.currentPassword = p),
|
|
2903
2905
|
_
|
|
2904
2906
|
],
|
|
2905
2907
|
class: "tw-mb-4",
|
|
@@ -2918,14 +2920,14 @@ const ur = {
|
|
|
2918
2920
|
label: i(a)("COMPONENTS.CHANGE_PASSWORD.NEW_PASSWORD.LABEL"),
|
|
2919
2921
|
name: "new_pass",
|
|
2920
2922
|
rules: "required|min:6",
|
|
2921
|
-
"model-value":
|
|
2923
|
+
"model-value": c.password
|
|
2922
2924
|
}, {
|
|
2923
2925
|
default: T(({ field: A, errorMessage: g, errors: L }) => [
|
|
2924
2926
|
R(i(K), re(A, {
|
|
2925
2927
|
ref: "newPasswordField",
|
|
2926
|
-
modelValue:
|
|
2928
|
+
modelValue: c.password,
|
|
2927
2929
|
"onUpdate:modelValue": [
|
|
2928
|
-
C[1] || (C[1] = (p) =>
|
|
2930
|
+
C[1] || (C[1] = (p) => c.password = p),
|
|
2929
2931
|
_
|
|
2930
2932
|
],
|
|
2931
2933
|
class: "tw-mb-4",
|
|
@@ -2944,14 +2946,14 @@ const ur = {
|
|
|
2944
2946
|
label: i(a)("COMPONENTS.CHANGE_PASSWORD.CONFIRM_PASSWORD.LABEL"),
|
|
2945
2947
|
name: "confirm_pass",
|
|
2946
2948
|
rules: "required|min:6",
|
|
2947
|
-
"model-value":
|
|
2949
|
+
"model-value": c.confirmPassword
|
|
2948
2950
|
}, {
|
|
2949
2951
|
default: T(({ field: A, errorMessage: g, errors: L }) => [
|
|
2950
2952
|
R(i(K), re(A, {
|
|
2951
2953
|
ref: "confirmPasswordField",
|
|
2952
|
-
modelValue:
|
|
2954
|
+
modelValue: c.confirmPassword,
|
|
2953
2955
|
"onUpdate:modelValue": [
|
|
2954
|
-
C[2] || (C[2] = (p) =>
|
|
2956
|
+
C[2] || (C[2] = (p) => c.confirmPassword = p),
|
|
2955
2957
|
_
|
|
2956
2958
|
],
|
|
2957
2959
|
class: "tw-mb-6",
|
|
@@ -2980,7 +2982,7 @@ const ur = {
|
|
|
2980
2982
|
R(i($), {
|
|
2981
2983
|
variant: "primary",
|
|
2982
2984
|
class: "tw-flex-1",
|
|
2983
|
-
disabled: i(s) || !
|
|
2985
|
+
disabled: i(s) || !c.isValid || S.value,
|
|
2984
2986
|
loading: i(s),
|
|
2985
2987
|
onClick: O
|
|
2986
2988
|
}, {
|
|
@@ -2990,7 +2992,7 @@ const ur = {
|
|
|
2990
2992
|
_: 1
|
|
2991
2993
|
}, 8, ["disabled", "loading"])
|
|
2992
2994
|
]),
|
|
2993
|
-
(P(!0),
|
|
2995
|
+
(P(!0), W(ne, null, We(c.errors, (A, g) => (P(), D(i(fe), {
|
|
2994
2996
|
key: g,
|
|
2995
2997
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2996
2998
|
}, {
|
|
@@ -3020,7 +3022,7 @@ function Dt(e, t, a) {
|
|
|
3020
3022
|
idx: t,
|
|
3021
3023
|
instance: e.title != null ? { title: e.title } : void 0,
|
|
3022
3024
|
isVisible: e.visible,
|
|
3023
|
-
error:
|
|
3025
|
+
error: N(e.error ? new Error(String(e.error)) : null)
|
|
3024
3026
|
},
|
|
3025
3027
|
param: e.param,
|
|
3026
3028
|
options: e.options,
|
|
@@ -3040,7 +3042,7 @@ function Or() {
|
|
|
3040
3042
|
throw new Error(
|
|
3041
3043
|
"[useBladeNavigation adapter] BladeStack or BladeMessaging not available. Ensure plugin-v2 is installed before calling useBladeNavigation()."
|
|
3042
3044
|
);
|
|
3043
|
-
const n =
|
|
3045
|
+
const n = cs?.router;
|
|
3044
3046
|
if (!n)
|
|
3045
3047
|
throw new Error("[@vc-shell/framework#useBladeNavigation] Vue Router instance is not available.");
|
|
3046
3048
|
return ye || (ye = v(() => {
|
|
@@ -3080,7 +3082,7 @@ function Xl() {
|
|
|
3080
3082
|
function l() {
|
|
3081
3083
|
return r ? r.value.id : e.activeBlade.value?.id;
|
|
3082
3084
|
}
|
|
3083
|
-
function
|
|
3085
|
+
function d(g) {
|
|
3084
3086
|
const L = e.blades.value;
|
|
3085
3087
|
if (g >= 0 && g < L.length)
|
|
3086
3088
|
return L[g].id;
|
|
@@ -3099,13 +3101,13 @@ function Xl() {
|
|
|
3099
3101
|
else if (g.replaceCurrentBlade)
|
|
3100
3102
|
await e.coverCurrentBlade(I);
|
|
3101
3103
|
else {
|
|
3102
|
-
const
|
|
3103
|
-
await e.openBlade({ ...I, parentId:
|
|
3104
|
+
const b = l();
|
|
3105
|
+
await e.openBlade({ ...I, parentId: b });
|
|
3104
3106
|
}
|
|
3105
3107
|
}
|
|
3106
3108
|
async function f(g) {
|
|
3107
3109
|
oe("closeBlade(index)", "useBlade().closeSelf()");
|
|
3108
|
-
const L =
|
|
3110
|
+
const L = d(g);
|
|
3109
3111
|
return L ? e.closeBlade(L) : (et.error(`closeBlade: No blade found at index ${g}.`), !1);
|
|
3110
3112
|
}
|
|
3111
3113
|
function m() {
|
|
@@ -3116,13 +3118,13 @@ function Xl() {
|
|
|
3116
3118
|
name: g.name,
|
|
3117
3119
|
params: n.currentRoute.value.params
|
|
3118
3120
|
};
|
|
3119
|
-
const L =
|
|
3121
|
+
const L = Nn(n);
|
|
3120
3122
|
return { path: L ? `/${L}` : "/" };
|
|
3121
3123
|
}
|
|
3122
3124
|
async function E(g, L) {
|
|
3123
3125
|
oe("onParentCall(args, index)", "useBlade().callParent(method, args)");
|
|
3124
3126
|
let p;
|
|
3125
|
-
if (L !== void 0 ? p =
|
|
3127
|
+
if (L !== void 0 ? p = d(L) : p = l(), !p) {
|
|
3126
3128
|
et.error("onParentCall: Could not determine caller blade.");
|
|
3127
3129
|
return;
|
|
3128
3130
|
}
|
|
@@ -3133,7 +3135,7 @@ function Xl() {
|
|
|
3133
3135
|
et.error(`onParentCall: Failed to call parent method "${g.method}":`, I);
|
|
3134
3136
|
}
|
|
3135
3137
|
}
|
|
3136
|
-
function
|
|
3138
|
+
function c(g) {
|
|
3137
3139
|
oe("onBeforeClose(cb)", "useBlade().onBeforeClose(guard)");
|
|
3138
3140
|
const L = l();
|
|
3139
3141
|
if (!L) {
|
|
@@ -3152,11 +3154,11 @@ function Xl() {
|
|
|
3152
3154
|
oe("setNavigationQuery");
|
|
3153
3155
|
const L = e.workspace.value;
|
|
3154
3156
|
if (!L) return;
|
|
3155
|
-
const p = L.name.toLowerCase(), [I,
|
|
3157
|
+
const p = L.name.toLowerCase(), [I, b] = yt(window.location.hash), M = new URLSearchParams(b);
|
|
3156
3158
|
for (const z of [...M.keys()])
|
|
3157
3159
|
z.startsWith(`${p}_`) && M.delete(z);
|
|
3158
|
-
for (const [z,
|
|
3159
|
-
|
|
3160
|
+
for (const [z, de] of Object.entries(g))
|
|
3161
|
+
de != null && M.set(`${p}_${z}`, String(de));
|
|
3160
3162
|
const V = M.toString();
|
|
3161
3163
|
n.options.history.replace(V ? `${I}?${V}` : I);
|
|
3162
3164
|
}
|
|
@@ -3165,16 +3167,16 @@ function Xl() {
|
|
|
3165
3167
|
const g = e.workspace.value;
|
|
3166
3168
|
if (!g) return;
|
|
3167
3169
|
const L = g.name.toLowerCase(), p = new URLSearchParams(yt(window.location.hash)[1]), I = {};
|
|
3168
|
-
for (const [
|
|
3169
|
-
|
|
3170
|
+
for (const [b, M] of p.entries())
|
|
3171
|
+
b.startsWith(`${L}_`) && (I[b.replace(`${L}_`, "")] = Rr(M));
|
|
3170
3172
|
return Object.keys(I).length > 0 ? I : void 0;
|
|
3171
3173
|
}
|
|
3172
3174
|
function w(g, L) {
|
|
3173
|
-
const p =
|
|
3175
|
+
const p = d(g);
|
|
3174
3176
|
p && e.setBladeError(p, L);
|
|
3175
3177
|
}
|
|
3176
3178
|
function C(g) {
|
|
3177
|
-
const L =
|
|
3179
|
+
const L = d(g);
|
|
3178
3180
|
L && e.clearBladeError(L);
|
|
3179
3181
|
}
|
|
3180
3182
|
const A = v(() => {
|
|
@@ -3184,7 +3186,7 @@ function Xl() {
|
|
|
3184
3186
|
idx: e.blades.value.findIndex((I) => I.id === g.id),
|
|
3185
3187
|
instance: g.title != null ? { title: g.title } : void 0,
|
|
3186
3188
|
isVisible: g.visible,
|
|
3187
|
-
error:
|
|
3189
|
+
error: N(g.error ? new Error(String(g.error)) : null)
|
|
3188
3190
|
};
|
|
3189
3191
|
});
|
|
3190
3192
|
return {
|
|
@@ -3194,7 +3196,7 @@ function Xl() {
|
|
|
3194
3196
|
closeBlade: f,
|
|
3195
3197
|
goToRoot: m,
|
|
3196
3198
|
onParentCall: E,
|
|
3197
|
-
onBeforeClose:
|
|
3199
|
+
onBeforeClose: c,
|
|
3198
3200
|
resolveBladeByName: S,
|
|
3199
3201
|
routeResolver: h,
|
|
3200
3202
|
setNavigationQuery: O,
|
|
@@ -3227,7 +3229,7 @@ function Jl(e) {
|
|
|
3227
3229
|
autoBeforeUnload: s = !0,
|
|
3228
3230
|
closeConfirmMessage: o,
|
|
3229
3231
|
onRevert: r
|
|
3230
|
-
} = e, { meta: l, setFieldError:
|
|
3232
|
+
} = e, { meta: l, setFieldError: d, errorBag: u } = ue({ validateOnMount: !1 }), f = N(J(t.value)), m = N(!1);
|
|
3231
3233
|
ae(
|
|
3232
3234
|
t,
|
|
3233
3235
|
(w) => {
|
|
@@ -3235,7 +3237,7 @@ function Jl(e) {
|
|
|
3235
3237
|
},
|
|
3236
3238
|
{ deep: !0 }
|
|
3237
3239
|
);
|
|
3238
|
-
const E =
|
|
3240
|
+
const E = N(!1), c = v(() => E.value && m.value), S = v(() => !(!E.value || !l.value.valid || !m.value || a && !a.value));
|
|
3239
3241
|
function h() {
|
|
3240
3242
|
f.value = J(t.value), m.value = !1, E.value = !0;
|
|
3241
3243
|
}
|
|
@@ -3247,26 +3249,26 @@ function Jl(e) {
|
|
|
3247
3249
|
return r();
|
|
3248
3250
|
t.value = J(f.value);
|
|
3249
3251
|
}
|
|
3250
|
-
if (s && Xs(
|
|
3251
|
-
const { onBeforeClose: w } =
|
|
3252
|
+
if (s && Xs(c), n !== !1) {
|
|
3253
|
+
const { onBeforeClose: w } = dt(), { showConfirmation: C } = bn();
|
|
3252
3254
|
w(async () => {
|
|
3253
3255
|
let A;
|
|
3254
|
-
if (typeof n == "object" ? A = n.value &&
|
|
3256
|
+
if (typeof n == "object" ? A = n.value && c.value : A = c.value, A) {
|
|
3255
3257
|
const g = o ? kt(o) : "You have unsaved changes. Are you sure you want to leave?";
|
|
3256
3258
|
return !await C(g);
|
|
3257
3259
|
}
|
|
3258
3260
|
return !1;
|
|
3259
3261
|
});
|
|
3260
3262
|
}
|
|
3261
|
-
return Bt(xn, { isModified:
|
|
3263
|
+
return Bt(xn, { isModified: c, canSave: S }), {
|
|
3262
3264
|
setBaseline: h,
|
|
3263
3265
|
markReady: O,
|
|
3264
3266
|
revert: _,
|
|
3265
3267
|
canSave: S,
|
|
3266
|
-
isModified:
|
|
3268
|
+
isModified: c,
|
|
3267
3269
|
isReady: v(() => E.value),
|
|
3268
3270
|
formMeta: l,
|
|
3269
|
-
setFieldError:
|
|
3271
|
+
setFieldError: d,
|
|
3270
3272
|
errorBag: u
|
|
3271
3273
|
};
|
|
3272
3274
|
}
|
|
@@ -3277,28 +3279,28 @@ function _r(e, t, a) {
|
|
|
3277
3279
|
let E = 0;
|
|
3278
3280
|
for (let S = f + 1; S < n; S++)
|
|
3279
3281
|
E += s(e[S]);
|
|
3280
|
-
const
|
|
3282
|
+
const c = m * Be + E;
|
|
3281
3283
|
return {
|
|
3282
3284
|
sonnerIndex: m,
|
|
3283
3285
|
zIndex: n - m,
|
|
3284
|
-
offset:
|
|
3286
|
+
offset: c,
|
|
3285
3287
|
initialHeight: s(u)
|
|
3286
3288
|
};
|
|
3287
3289
|
});
|
|
3288
|
-
let
|
|
3290
|
+
let d;
|
|
3289
3291
|
if (a && n > 1) {
|
|
3290
3292
|
const u = n - 1;
|
|
3291
3293
|
let f = 0;
|
|
3292
|
-
for (let
|
|
3293
|
-
f += s(e[
|
|
3294
|
+
for (let c = 1; c < n; c++)
|
|
3295
|
+
f += s(e[c]);
|
|
3294
3296
|
const m = u * Be + f, E = s(e[0]);
|
|
3295
|
-
|
|
3297
|
+
d = m + E;
|
|
3296
3298
|
} else
|
|
3297
|
-
|
|
3298
|
-
return { toasts: l, frontHeight: r, groupHeight:
|
|
3299
|
+
d = r + Math.min(n - 1, Ba - 1) * Be;
|
|
3300
|
+
return { toasts: l, frontHeight: r, groupHeight: d };
|
|
3299
3301
|
}
|
|
3300
3302
|
function Ir() {
|
|
3301
|
-
const e =
|
|
3303
|
+
const e = N(!1), t = N(!1);
|
|
3302
3304
|
let a = null;
|
|
3303
3305
|
function n() {
|
|
3304
3306
|
a && (clearTimeout(a), a = null), e.value = !0;
|
|
@@ -3316,7 +3318,7 @@ function Ir() {
|
|
|
3316
3318
|
function l(f) {
|
|
3317
3319
|
o.delete(f);
|
|
3318
3320
|
}
|
|
3319
|
-
function
|
|
3321
|
+
function d() {
|
|
3320
3322
|
o.clear();
|
|
3321
3323
|
}
|
|
3322
3324
|
function u(f) {
|
|
@@ -3330,11 +3332,11 @@ function Ir() {
|
|
|
3330
3332
|
collapseStack: s,
|
|
3331
3333
|
reportHeight: r,
|
|
3332
3334
|
forgetHeight: l,
|
|
3333
|
-
clearHeights:
|
|
3335
|
+
clearHeights: d,
|
|
3334
3336
|
setInteracting: u
|
|
3335
3337
|
};
|
|
3336
3338
|
}
|
|
3337
|
-
const vr =
|
|
3339
|
+
const vr = H({
|
|
3338
3340
|
name: "NotificationContainer",
|
|
3339
3341
|
inheritAttrs: !1,
|
|
3340
3342
|
props: {
|
|
@@ -3395,7 +3397,7 @@ const vr = W({
|
|
|
3395
3397
|
heightsMap: o,
|
|
3396
3398
|
expandStack: r,
|
|
3397
3399
|
collapseStack: l,
|
|
3398
|
-
reportHeight:
|
|
3400
|
+
reportHeight: d,
|
|
3399
3401
|
forgetHeight: u,
|
|
3400
3402
|
clearHeights: f,
|
|
3401
3403
|
setInteracting: m
|
|
@@ -3403,7 +3405,7 @@ const vr = W({
|
|
|
3403
3405
|
function E(O) {
|
|
3404
3406
|
return typeof O == "object" && (!!O?.render || !!O?.setup);
|
|
3405
3407
|
}
|
|
3406
|
-
function
|
|
3408
|
+
function c(O) {
|
|
3407
3409
|
O && (u(O), a.remove(O));
|
|
3408
3410
|
}
|
|
3409
3411
|
function S() {
|
|
@@ -3416,21 +3418,21 @@ const vr = W({
|
|
|
3416
3418
|
o,
|
|
3417
3419
|
w
|
|
3418
3420
|
), g = O.map((p, I) => {
|
|
3419
|
-
const { sonnerIndex:
|
|
3420
|
-
"--toasts-before":
|
|
3421
|
+
const { sonnerIndex: b, zIndex: M, offset: V, initialHeight: z } = A.toasts[I], de = {
|
|
3422
|
+
"--toasts-before": b,
|
|
3421
3423
|
"--z-index": M,
|
|
3422
3424
|
"--offset": `${V}px`,
|
|
3423
3425
|
"--initial-height": z ? `${z}px` : "auto"
|
|
3424
3426
|
}, Se = {
|
|
3425
3427
|
...p,
|
|
3426
|
-
onClose:
|
|
3427
|
-
onReportHeight:
|
|
3428
|
-
toastIndex:
|
|
3428
|
+
onClose: c,
|
|
3429
|
+
onReportHeight: d,
|
|
3430
|
+
toastIndex: b,
|
|
3429
3431
|
toastsCount: _,
|
|
3430
3432
|
expanded: w,
|
|
3431
3433
|
visibleToasts: Ba,
|
|
3432
|
-
style:
|
|
3433
|
-
}, ka = p.content && E(p.content) ? ee(St, { ...Se, content: ee(
|
|
3434
|
+
style: de
|
|
3435
|
+
}, ka = p.content && E(p.content) ? ee(St, { ...Se, content: ee(dn(p.content)) }) : ee(St, Se);
|
|
3434
3436
|
return ee("li", { key: p.notificationId, style: { display: "contents" } }, [ka]);
|
|
3435
3437
|
});
|
|
3436
3438
|
let L = null;
|
|
@@ -3510,16 +3512,16 @@ function Pr(e) {
|
|
|
3510
3512
|
});
|
|
3511
3513
|
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);
|
|
3512
3514
|
}
|
|
3513
|
-
function
|
|
3515
|
+
function Nr(e) {
|
|
3514
3516
|
e.config.globalProperties.pages = [], e.config.globalProperties.bladeRoutes = [], e.provide(Xn, e.config.globalProperties.bladeRoutes);
|
|
3515
3517
|
}
|
|
3516
|
-
function
|
|
3518
|
+
function br(e) {
|
|
3517
3519
|
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
3520
|
const t = yn(e);
|
|
3519
3521
|
e.provide(Ft, t);
|
|
3520
3522
|
}
|
|
3521
3523
|
function Dr(e, t) {
|
|
3522
|
-
Xo(), e.use(Bs, { router: t.router }), e.use(
|
|
3524
|
+
Xo(), e.use(Bs, { router: t.router }), e.use(Hs), e.use(ho), e.use(Io), e.use(bs), e.use(Ns), e.use(gs), e.use(os, t.aiAgent);
|
|
3523
3525
|
}
|
|
3524
3526
|
function yr(e, t) {
|
|
3525
3527
|
if (!t.applicationInsights?.instrumentationKey) return;
|
|
@@ -3588,7 +3590,7 @@ function Br(e) {
|
|
|
3588
3590
|
}
|
|
3589
3591
|
const Ql = {
|
|
3590
3592
|
install(e, t) {
|
|
3591
|
-
er(), $a().register([{ key: "light", localizationKey: "core.themes.light" }]), window.fetch = ko(t.router), Cr(e, t), Pr(e),
|
|
3593
|
+
er(), $a().register([{ key: "light", localizationKey: "core.themes.light" }]), window.fetch = ko(t.router), Cr(e, t), Pr(e), Nr(e), br(e), Dr(e, t), yr(e, t), $o(e), typeof window < "u" && (e.runWithContext(() => sa()), e.runWithContext(() => ra())), Br(t.router), setTimeout(() => {
|
|
3592
3594
|
performance.mark("vc:deferred-plugins-start"), Mr(e, t), performance.mark("vc:deferred-plugins-done");
|
|
3593
3595
|
}, 0);
|
|
3594
3596
|
}
|
|
@@ -3596,7 +3598,7 @@ const Ql = {
|
|
|
3596
3598
|
export {
|
|
3597
3599
|
Jf as AI_AGENT_URL_ENV_KEY,
|
|
3598
3600
|
jE as AiAgentServiceKey,
|
|
3599
|
-
|
|
3601
|
+
Hn as ApiException,
|
|
3600
3602
|
XE as AppBarMobileButtonsServiceKey,
|
|
3601
3603
|
Qn as AppBarWidgetServiceKey,
|
|
3602
3604
|
Xa as AppInsightsInstanceKey,
|
|
@@ -3621,7 +3623,7 @@ export {
|
|
|
3621
3623
|
lf as BladeLoadingKey,
|
|
3622
3624
|
uf as BladeMaximizedKey,
|
|
3623
3625
|
kn as BladeMessagingKey,
|
|
3624
|
-
|
|
3626
|
+
df as BladeRenderingStateKey,
|
|
3625
3627
|
Xn as BladeRoutesKey,
|
|
3626
3628
|
Bn as BladeStackKey,
|
|
3627
3629
|
su as ButtonGroupKey,
|
|
@@ -3631,21 +3633,21 @@ export {
|
|
|
3631
3633
|
iu as CellDefault,
|
|
3632
3634
|
lu as CellEditableWrapper,
|
|
3633
3635
|
uu as CellHtml,
|
|
3634
|
-
|
|
3635
|
-
|
|
3636
|
+
du as CellImage,
|
|
3637
|
+
cu as CellLink,
|
|
3636
3638
|
Eu as CellMoney,
|
|
3637
3639
|
fu as CellNumber,
|
|
3638
3640
|
mu as CellStatus,
|
|
3639
3641
|
gu as CellStatusIcon,
|
|
3640
|
-
|
|
3641
|
-
|
|
3642
|
-
|
|
3642
|
+
cf as ChangeLogClient,
|
|
3643
|
+
Pd as ChangePassword,
|
|
3644
|
+
Nd as ChangePasswordButton,
|
|
3643
3645
|
Zl as ChangePasswordPage,
|
|
3644
3646
|
Pm as ChartContainer,
|
|
3645
|
-
|
|
3646
|
-
|
|
3647
|
+
Nm as ChartLegend,
|
|
3648
|
+
bm as ChartTooltip,
|
|
3647
3649
|
Ef as CloseSettingsMenuKey,
|
|
3648
|
-
|
|
3650
|
+
bd as ColumnCollector,
|
|
3649
3651
|
Qf as DEFAULT_AI_AGENT_CONFIG,
|
|
3650
3652
|
Dm as DashboardBarChart,
|
|
3651
3653
|
ym as DashboardDonutChart,
|
|
@@ -3665,7 +3667,7 @@ export {
|
|
|
3665
3667
|
em as EMBEDDED_TO_HOST_MESSAGE_TYPES,
|
|
3666
3668
|
Tf as EmbeddedModeKey,
|
|
3667
3669
|
hf as EntryState,
|
|
3668
|
-
|
|
3670
|
+
Dd as ErrorInterceptor,
|
|
3669
3671
|
vs as ExtensionPoint,
|
|
3670
3672
|
km as ExtensionPoints,
|
|
3671
3673
|
or as ExternalProviders,
|
|
@@ -3685,12 +3687,12 @@ export {
|
|
|
3685
3687
|
Rf as JobsClient,
|
|
3686
3688
|
_f as JsonValueKind,
|
|
3687
3689
|
hm as LAYOUT_STORAGE_KEY,
|
|
3688
|
-
|
|
3690
|
+
yd as LanguageSelector,
|
|
3689
3691
|
Kn as LanguageServiceKey,
|
|
3690
3692
|
If as LocalizableSettingsClient,
|
|
3691
3693
|
Kl as Login,
|
|
3692
|
-
|
|
3693
|
-
|
|
3694
|
+
Md as LogoutButton,
|
|
3695
|
+
Bd as MenuBurgerIcon,
|
|
3694
3696
|
es as MenuServiceKey,
|
|
3695
3697
|
Tu as ModuleLoadError,
|
|
3696
3698
|
vf as ModulesClient,
|
|
@@ -3698,126 +3700,126 @@ export {
|
|
|
3698
3700
|
Cf as ModulesReadyKey,
|
|
3699
3701
|
Pf as NOOP_URL_SINK,
|
|
3700
3702
|
vr as NotificationContainer,
|
|
3701
|
-
|
|
3702
|
-
|
|
3703
|
+
cn as NotificationContextKey,
|
|
3704
|
+
kd as NotificationDropdown,
|
|
3703
3705
|
as as NotificationStoreKey,
|
|
3704
|
-
|
|
3705
|
-
|
|
3706
|
-
|
|
3706
|
+
Vd as NotificationTemplate,
|
|
3707
|
+
Nf as OAuthAppsClient,
|
|
3708
|
+
bf as ProgressMessageLevel,
|
|
3707
3709
|
Df as PushNotificationClient,
|
|
3708
3710
|
hu as RegistrationError,
|
|
3709
3711
|
Yl as ResetPassword,
|
|
3710
|
-
|
|
3712
|
+
Ud as SCHEDULER_ZOOM_LEVELS,
|
|
3711
3713
|
Fn as SecurityClient,
|
|
3712
3714
|
Ou as ServiceError,
|
|
3713
3715
|
Vn as SettingClient,
|
|
3714
3716
|
yf as SettingValueType,
|
|
3715
|
-
|
|
3716
|
-
|
|
3717
|
+
Fd as SettingsMenu,
|
|
3718
|
+
Wd as SettingsMenuItem,
|
|
3717
3719
|
ts as SettingsMenuServiceKey,
|
|
3718
3720
|
Mf as SettingsV2Client,
|
|
3719
3721
|
Bf as ShellIndicatorsKey,
|
|
3720
3722
|
$l as Sidebar,
|
|
3721
3723
|
kf as SortDirection,
|
|
3722
|
-
|
|
3723
|
-
|
|
3724
|
-
|
|
3725
|
-
$
|
|
3726
|
-
|
|
3727
|
-
|
|
3728
|
-
|
|
3729
|
-
|
|
3730
|
-
|
|
3731
|
-
|
|
3732
|
-
|
|
3733
|
-
|
|
3734
|
-
|
|
3735
|
-
|
|
3736
|
-
|
|
3724
|
+
Hd as Table,
|
|
3725
|
+
Gd as TableBody,
|
|
3726
|
+
xd as TableCell,
|
|
3727
|
+
$d as TableCheckbox,
|
|
3728
|
+
Kd as TableColumnSwitcher,
|
|
3729
|
+
zd as TableEmpty,
|
|
3730
|
+
Yd as TableFooter,
|
|
3731
|
+
qd as TableGroupRow,
|
|
3732
|
+
Zd as TableHead,
|
|
3733
|
+
jd as TableHeader,
|
|
3734
|
+
Xd as TableRow,
|
|
3735
|
+
Jd as TableRowActions,
|
|
3736
|
+
Qd as TableSearchHeader,
|
|
3737
|
+
ec as TableSelectAllBar,
|
|
3738
|
+
tc as ThemeSelector,
|
|
3737
3739
|
Jn as ToolbarServiceKey,
|
|
3738
|
-
|
|
3740
|
+
ac as UserDropdownButton,
|
|
3739
3741
|
Lu as ValidationError,
|
|
3740
|
-
|
|
3741
|
-
|
|
3742
|
+
nc as VcAccordion,
|
|
3743
|
+
sc as VcAccordionItem,
|
|
3742
3744
|
am as VcAiAgentPanel,
|
|
3743
|
-
|
|
3744
|
-
|
|
3745
|
-
|
|
3746
|
-
|
|
3747
|
-
|
|
3748
|
-
|
|
3749
|
-
|
|
3750
|
-
|
|
3751
|
-
|
|
3752
|
-
|
|
3753
|
-
|
|
3754
|
-
|
|
3755
|
-
|
|
3745
|
+
oc as VcApp,
|
|
3746
|
+
rc as VcAppBarMobileActions,
|
|
3747
|
+
ic as VcAppBarOverlay,
|
|
3748
|
+
lc as VcAppBarWidgetContent,
|
|
3749
|
+
uc as VcAppBarWidgetItem,
|
|
3750
|
+
dc as VcAppBarWidgetsMenu,
|
|
3751
|
+
cc as VcAppDesktopLayout,
|
|
3752
|
+
Ec as VcAppMenu,
|
|
3753
|
+
fc as VcAppMenuSidebar,
|
|
3754
|
+
mc as VcAppMobileLayout,
|
|
3755
|
+
gc as VcAppSidebarCollapseButton,
|
|
3756
|
+
Sc as VcAppSidebarContent,
|
|
3757
|
+
Ac as VcAppSidebarHeader,
|
|
3756
3758
|
_e as VcAuthLayout,
|
|
3757
|
-
|
|
3759
|
+
pc as VcBadge,
|
|
3758
3760
|
Cn as VcBanner,
|
|
3759
|
-
|
|
3760
|
-
|
|
3761
|
+
Ht as VcBlade,
|
|
3762
|
+
Tc as VcBladeNavigation,
|
|
3761
3763
|
Bs as VcBladeNavigationComponent,
|
|
3762
|
-
|
|
3763
|
-
|
|
3764
|
-
|
|
3764
|
+
hc as VcBladeNavigationV2,
|
|
3765
|
+
Oc as VcBladeSlot,
|
|
3766
|
+
Lc as VcBreadcrumbs,
|
|
3765
3767
|
$ as VcButton,
|
|
3766
|
-
|
|
3767
|
-
|
|
3768
|
+
Rc as VcButtonGroup,
|
|
3769
|
+
_c as VcCard,
|
|
3768
3770
|
wn as VcCheckbox,
|
|
3769
|
-
|
|
3770
|
-
|
|
3771
|
+
Ic as VcCheckboxGroup,
|
|
3772
|
+
vc as VcCol,
|
|
3771
3773
|
Ru as VcColorInput,
|
|
3772
3774
|
Ae as VcColumn,
|
|
3773
3775
|
Rn as VcContainer,
|
|
3774
3776
|
In as VcDataTable,
|
|
3775
3777
|
_u as VcDatePicker,
|
|
3776
|
-
|
|
3777
|
-
|
|
3778
|
-
|
|
3779
|
-
|
|
3780
|
-
|
|
3778
|
+
wc as VcDropdown,
|
|
3779
|
+
Cc as VcDropdownItem,
|
|
3780
|
+
Pc as VcDynamicProperty,
|
|
3781
|
+
Nc as VcEditor,
|
|
3782
|
+
bc as VcEnvironmentBanner,
|
|
3781
3783
|
Ke as VcField,
|
|
3782
|
-
|
|
3784
|
+
Dc as VcFileUpload,
|
|
3783
3785
|
ge as VcForm,
|
|
3784
|
-
|
|
3786
|
+
yc as VcGallery,
|
|
3785
3787
|
fe as VcHint,
|
|
3786
3788
|
$n as VcIcon,
|
|
3787
3789
|
rt as VcImage,
|
|
3788
|
-
|
|
3789
|
-
|
|
3790
|
+
Mc as VcImageTile,
|
|
3791
|
+
Bc as VcImageUpload,
|
|
3790
3792
|
K as VcInput,
|
|
3791
3793
|
Iu as VcInputCurrency,
|
|
3792
3794
|
vu as VcInputDropdown,
|
|
3793
|
-
|
|
3795
|
+
kc as VcInputGroup,
|
|
3794
3796
|
wu as VcLabel,
|
|
3795
|
-
|
|
3797
|
+
Vc as VcLanguageSelector,
|
|
3796
3798
|
Cu as VcLink,
|
|
3797
3799
|
Gt as VcLoading,
|
|
3798
|
-
|
|
3799
|
-
|
|
3800
|
-
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3804
|
-
$
|
|
3800
|
+
Uc as VcMenu,
|
|
3801
|
+
Fc as VcMenuExpandedKey,
|
|
3802
|
+
Wc as VcMenuGroup,
|
|
3803
|
+
Hc as VcMenuItem,
|
|
3804
|
+
Gc as VcMultivalue,
|
|
3805
|
+
xc as VcPagination,
|
|
3806
|
+
$c as VcPopover,
|
|
3805
3807
|
pn as VcPopup,
|
|
3806
|
-
|
|
3807
|
-
|
|
3808
|
-
|
|
3809
|
-
|
|
3810
|
-
|
|
3811
|
-
|
|
3808
|
+
Kc as VcProgress,
|
|
3809
|
+
zc as VcRadioButton,
|
|
3810
|
+
Yc as VcRadioGroup,
|
|
3811
|
+
qc as VcRating,
|
|
3812
|
+
Zc as VcRow,
|
|
3813
|
+
jc as VcScheduler,
|
|
3812
3814
|
Pu as VcScrollableContainer,
|
|
3813
|
-
|
|
3815
|
+
Nu as VcSelect,
|
|
3814
3816
|
vn as VcSidebar,
|
|
3815
|
-
|
|
3816
|
-
|
|
3817
|
+
bu as VcSkeleton,
|
|
3818
|
+
Xc as VcSlider,
|
|
3817
3819
|
Du as VcStatus,
|
|
3818
3820
|
yu as VcStatusIcon,
|
|
3819
|
-
|
|
3820
|
-
|
|
3821
|
+
Jc as VcSwitch,
|
|
3822
|
+
Qc as VcTable,
|
|
3821
3823
|
_n as VcTextarea,
|
|
3822
3824
|
St as VcToast,
|
|
3823
3825
|
Vf as VcTooltip,
|
|
@@ -3825,7 +3827,7 @@ export {
|
|
|
3825
3827
|
tE as VcWidget,
|
|
3826
3828
|
Un as WidgetScopeKey,
|
|
3827
3829
|
xt as WidgetServiceKey,
|
|
3828
|
-
|
|
3830
|
+
Wt as __registerBladeConfig,
|
|
3829
3831
|
aE as _createEnvironmentNameLogic,
|
|
3830
3832
|
Uf as _createInternalUserLogic,
|
|
3831
3833
|
jl as _resetAdapterState,
|
|
@@ -3841,8 +3843,8 @@ export {
|
|
|
3841
3843
|
Ll as camelToSnake,
|
|
3842
3844
|
_l as camelize,
|
|
3843
3845
|
Om as clearLayoutStorage,
|
|
3844
|
-
|
|
3845
|
-
|
|
3846
|
+
Wu as convertColorNameToHex,
|
|
3847
|
+
Hu as convertMomentFormat,
|
|
3846
3848
|
nm as createAiAgentToolbarButton,
|
|
3847
3849
|
Pl as createAppModule,
|
|
3848
3850
|
Gu as createBackendRegistry,
|
|
@@ -3850,7 +3852,7 @@ export {
|
|
|
3850
3852
|
k as createLogger,
|
|
3851
3853
|
Ql as default,
|
|
3852
3854
|
ft as defineAppModule,
|
|
3853
|
-
|
|
3855
|
+
Hl as defineBladeContext,
|
|
3854
3856
|
Vm as defineExtensionPoint,
|
|
3855
3857
|
sE as detectThemePreset,
|
|
3856
3858
|
sm as expectedCode,
|
|
@@ -3863,11 +3865,11 @@ export {
|
|
|
3863
3865
|
zu as formatDateWithPattern,
|
|
3864
3866
|
rm as formatShortcut,
|
|
3865
3867
|
Lm as fromGridstackNode,
|
|
3866
|
-
|
|
3868
|
+
Ha as generateId,
|
|
3867
3869
|
lE as getAllBladeConfigs,
|
|
3868
3870
|
Yu as getBestThumbnailSize,
|
|
3869
3871
|
uE as getBladeConfig,
|
|
3870
|
-
|
|
3872
|
+
Nl as getComponentDefaults,
|
|
3871
3873
|
Zt as getExtensionColor,
|
|
3872
3874
|
jt as getExtensionLabel,
|
|
3873
3875
|
qu as getMenuBadge,
|
|
@@ -3876,59 +3878,59 @@ export {
|
|
|
3876
3878
|
im as hotkey,
|
|
3877
3879
|
x as i18n,
|
|
3878
3880
|
Gl as injectBladeContext,
|
|
3879
|
-
|
|
3881
|
+
Wf as isAuthenticationFailure,
|
|
3880
3882
|
Xu as isFrameworkError,
|
|
3881
3883
|
Yt as isImage,
|
|
3882
|
-
|
|
3884
|
+
Hf as isRtlElement,
|
|
3883
3885
|
Ju as isScrolledToEnd,
|
|
3884
3886
|
lm as isTextInputFocused,
|
|
3885
3887
|
Qu as isValidHexColor,
|
|
3886
3888
|
ws as kebabToCamel,
|
|
3887
3889
|
Rl as kebabToPascal,
|
|
3888
|
-
|
|
3890
|
+
dE as languageToCountryMap,
|
|
3889
3891
|
Rm as loadLayoutFromStorage,
|
|
3890
|
-
|
|
3892
|
+
Wa as loading,
|
|
3891
3893
|
Gf as logger,
|
|
3892
3894
|
xf as loggers,
|
|
3893
3895
|
um as matchesEvent,
|
|
3894
3896
|
_m as mergeLayoutWithWidgets,
|
|
3895
|
-
|
|
3897
|
+
ed as mindimensions,
|
|
3896
3898
|
$f as mirrorPlacement,
|
|
3897
|
-
|
|
3899
|
+
td as normalizeHexColor,
|
|
3898
3900
|
j as notification,
|
|
3899
3901
|
Pe as parseError,
|
|
3900
|
-
|
|
3901
|
-
|
|
3902
|
-
|
|
3903
|
-
|
|
3902
|
+
Ns as permissions,
|
|
3903
|
+
ad as provideAppBarState,
|
|
3904
|
+
cE as provideAppBarWidget,
|
|
3905
|
+
nd as provideDashboardService,
|
|
3904
3906
|
EE as provideLanguages,
|
|
3905
|
-
|
|
3906
|
-
|
|
3907
|
+
sd as provideMenuService,
|
|
3908
|
+
od as provideSettingsMenu,
|
|
3907
3909
|
fE as provideSidebarState,
|
|
3908
|
-
|
|
3910
|
+
rd as provideToolbarService,
|
|
3909
3911
|
qt as readableSize,
|
|
3910
|
-
|
|
3911
|
-
|
|
3912
|
-
|
|
3913
|
-
|
|
3914
|
-
|
|
3915
|
-
|
|
3916
|
-
|
|
3912
|
+
id as registerBuiltinCells,
|
|
3913
|
+
ld as registerDashboardWidget,
|
|
3914
|
+
ud as registerExternalWidget,
|
|
3915
|
+
dd as registerToolbarItem,
|
|
3916
|
+
cd as registerWidget,
|
|
3917
|
+
Ed as removeMenuBadge,
|
|
3918
|
+
fd as removeRegisteredMenuItem,
|
|
3917
3919
|
mE as resolveEnvironment,
|
|
3918
|
-
|
|
3919
|
-
|
|
3920
|
+
md as resolveLocale,
|
|
3921
|
+
gd as resolveLocaleSync,
|
|
3920
3922
|
Im as saveLayoutToStorage,
|
|
3921
|
-
|
|
3923
|
+
Sd as setMenuBadge,
|
|
3922
3924
|
gE as sidebarStorageKey,
|
|
3923
|
-
|
|
3925
|
+
bs as signalR,
|
|
3924
3926
|
SE as stripTenantPrefix,
|
|
3925
3927
|
vm as toGridstackWidget,
|
|
3926
3928
|
AE as useAdaptiveItems,
|
|
3927
|
-
|
|
3929
|
+
dm as useAiAgent,
|
|
3928
3930
|
jf as useAiAgentContext,
|
|
3929
3931
|
Ys as useApiClient,
|
|
3930
3932
|
pE as useAppBarMobileActions,
|
|
3931
|
-
|
|
3933
|
+
Ad as useAppBarState,
|
|
3932
3934
|
TE as useAppBarWidget,
|
|
3933
3935
|
hE as useAppBarWidgets,
|
|
3934
3936
|
Ja as useAppInsights,
|
|
@@ -3937,52 +3939,52 @@ export {
|
|
|
3937
3939
|
Jt as useAsync,
|
|
3938
3940
|
OE as useBadge,
|
|
3939
3941
|
Xs as useBeforeUnload,
|
|
3940
|
-
|
|
3942
|
+
dt as useBlade,
|
|
3941
3943
|
Jl as useBladeForm,
|
|
3942
|
-
|
|
3944
|
+
pd as useBladeLoading,
|
|
3943
3945
|
LE as useBladeMessaging,
|
|
3944
3946
|
Xl as useBladeNavigation,
|
|
3945
3947
|
Il as useBladeNotifications,
|
|
3946
|
-
|
|
3948
|
+
cm as useBladeStack,
|
|
3947
3949
|
Fl as useBladeWidgets,
|
|
3948
3950
|
kl as useBreadcrumbs,
|
|
3949
3951
|
wl as useBroadcastFilter,
|
|
3950
|
-
|
|
3952
|
+
Td as useCellRegistry,
|
|
3951
3953
|
RE as useCollapsible,
|
|
3952
3954
|
_E as useColumnFilter,
|
|
3953
3955
|
jo as useContainer,
|
|
3954
|
-
|
|
3956
|
+
hd as useDashboard,
|
|
3955
3957
|
IE as useDataTablePagination,
|
|
3956
3958
|
vE as useDataTableSort,
|
|
3957
3959
|
Vl as useDynamicProperties,
|
|
3958
3960
|
wE as useEnvironmentName,
|
|
3959
|
-
|
|
3961
|
+
Od as useErrorHandler,
|
|
3960
3962
|
Um as useExtensionPoint,
|
|
3961
3963
|
CE as useFilterState,
|
|
3962
3964
|
Kf as useFloatingPosition,
|
|
3963
|
-
|
|
3964
|
-
|
|
3965
|
+
Ld as useFormField,
|
|
3966
|
+
bl as useFunctions,
|
|
3965
3967
|
PE as useGalleryPreview,
|
|
3966
3968
|
wm as useGridstack,
|
|
3967
|
-
|
|
3969
|
+
NE as useImageLoad,
|
|
3968
3970
|
zo as useInstance,
|
|
3969
3971
|
Em as useIsMac,
|
|
3970
3972
|
fm as useKeyboardShortcuts,
|
|
3971
|
-
|
|
3973
|
+
bE as useLanguages,
|
|
3972
3974
|
yl as useLatestRequest,
|
|
3973
3975
|
Qt as useLoading,
|
|
3974
3976
|
DE as useMenuActiveState,
|
|
3975
|
-
|
|
3977
|
+
Rd as useMenuService,
|
|
3976
3978
|
xl as useModificationTracker,
|
|
3977
3979
|
vl as useNotificationContext,
|
|
3978
3980
|
me as useNotificationStore,
|
|
3979
3981
|
Dl as useNotifications,
|
|
3980
3982
|
ot as usePermissions,
|
|
3981
|
-
|
|
3983
|
+
bn as usePopup,
|
|
3982
3984
|
xa as useResponsive,
|
|
3983
|
-
|
|
3985
|
+
_d as useScrollArrows,
|
|
3984
3986
|
we as useSettings,
|
|
3985
|
-
|
|
3987
|
+
Id as useSettingsMenu,
|
|
3986
3988
|
yE as useShellBootstrap,
|
|
3987
3989
|
ME as useShellLifecycle,
|
|
3988
3990
|
BE as useShellNavigation,
|
|
@@ -3990,9 +3992,9 @@ export {
|
|
|
3990
3992
|
VE as useTableColumnsReorder,
|
|
3991
3993
|
UE as useTableColumnsResize,
|
|
3992
3994
|
FE as useTableContext,
|
|
3993
|
-
|
|
3995
|
+
WE as useTableInlineEdit,
|
|
3994
3996
|
Cl as useTableQueryState,
|
|
3995
|
-
|
|
3997
|
+
HE as useTableRowGrouping,
|
|
3996
3998
|
GE as useTableRowReorder,
|
|
3997
3999
|
xE as useTableSearch,
|
|
3998
4000
|
$E as useTableSelection,
|
|
@@ -4001,13 +4003,13 @@ export {
|
|
|
4001
4003
|
Yf as useTextDirection,
|
|
4002
4004
|
$a as useTheme,
|
|
4003
4005
|
zE as useToggleableContent,
|
|
4004
|
-
|
|
4006
|
+
vd as useToolbar,
|
|
4005
4007
|
qf as useUser,
|
|
4006
4008
|
se as useUserManagement,
|
|
4007
4009
|
YE as useVirtualScroll,
|
|
4008
4010
|
Ul as useWebVitals,
|
|
4009
|
-
|
|
4011
|
+
Wl as useWidgetTrigger,
|
|
4010
4012
|
qE as vAutofocus,
|
|
4011
|
-
|
|
4012
|
-
|
|
4013
|
+
Wa as vLoading,
|
|
4014
|
+
wd as wrapError
|
|
4013
4015
|
};
|