@vc-shell/framework 2.6.3-rc.0-pr389.87def60 → 2.7.0

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