@vc-shell/framework 2.5.0-pr333.50c07fa → 2.5.0-pr334.23413b7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/framework.js CHANGED
@@ -1,21 +1,21 @@
1
- import { b as ya, c as Ba } from "./chunks/vendor-vueuse-core-_wFDcFkI.js";
2
- import { N as st, O as se, P as q, Q as X, l as x, R as Pe, S as Ma, T as yt, p as ot, q as $, n as Ae, A as ka, U as Va, W as Ua, X as Fa, V as Ee, Y as Wa, Z as Ha, $ as Ga, a0 as xa, a1 as $a, a2 as Ka, a3 as za, a4 as qa, a5 as Ya } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-BQ09AUgy.js";
3
- import { B as Zl, a6 as Xl, a as Jl, _ as Ql, b as eu, c as tu, d as au, e as nu, f as su, g as ou, h as ru, i as iu, j as lu, k as uu, a7 as cu, a8 as du, a9 as Eu, aa as fu, ab as mu, ac as gu, ad as Su, m as pu, o as Au, r as Tu, s as hu, t as Lu, u as Ou, v as Ru, w as _u, x as Iu, y as vu, z as wu, ae as Cu, af as Pu, ag as bu, ah as Nu, ai as Du, aj as yu, ak as Bu, al as Mu, am as ku, an as Vu, ao as Uu, ap as Fu, aq as Wu, ar as Hu, as as Gu, at as xu, au as $u, av as Ku, aw as zu, ax as qu, ay as Yu, C as ju, az as Zu, aA as Xu, aB as Ju, aC as Qu, D as ec, aD as tc, aE as ac, aF as nc, aG as sc, aH as oc, aI as rc, aJ as ic, aK as lc, aL as uc, E as cc, F as dc, G as Ec, L as fc, aM as mc, H as gc, I as Sc, aN as pc, J as Ac, aO as Tc, aP as hc, aQ as Lc } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-BQ09AUgy.js";
4
- import { getCurrentScope as rt, onScopeDispose as it, computed as I, inject as Q, watch as ae, defineComponent as H, openBlock as b, createBlock as D, createSlots as Oe, withCtx as h, renderSlot as Y, createElementVNode as U, normalizeClass as ja, createElementBlock as W, Fragment as ne, createVNode as _, unref as i, createTextVNode as M, toDisplayString as y, shallowReactive as Za, ref as N, readonly as Me, onMounted as Re, onBeforeMount as Xa, onBeforeUnmount as Ja, shallowRef as Qa, onUnmounted as en, provide as Bt, toValue as Mt, isRef as kt, normalizeStyle as Vt, createCommentVNode as z, withDirectives as tn, withModifiers as He, reactive as ie, createApp as an, nextTick as be, renderList as Fe, withKeys as lt, mergeProps as re, getCurrentInstance as nn, warn as sn, h as ee, toRaw as on } from "vue";
5
- import { aS as me, aT as rn, aU as ln, aV as Ut, aW as Ge, aX as un, aY as cn, aZ as dn, a_ as En, a$ as fn, ab as mn, b0 as xe, b1 as gn, b2 as Sn, b3 as Ft, F as Wt, M as pn, Y as ge, W as $e, am as An, N as Tn, ai as hn, B as _e, a3 as Ht, E as Ln, b4 as On, b5 as Rn, an as mt, b6 as _n, b7 as In } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-RHeDlcVB.js";
6
- import { b8 as Rc, b9 as _c, C as Ic, ba as vc, bb as wc, bc as Cc, _ as Pc, bd as bc, be as Nc, S as Dc, bf as yc, bg as Bc, a as Mc, b as kc, c as Vc, d as Uc, e as Fc, f as Wc, T as Hc, g as Gc, h as xc, i as $c, j as Kc, k as zc, l as qc, m as Yc, bh as jc, bi as Zc, V as Xc, n as Jc, o as Qc, p as ed, q as td, r as ad, s as nd, t as sd, u as od, v as rd, w as id, x as ld, y as ud, z as cd, A as dd, D as Ed, bj as fd, bj as md, bk as gd, G as Sd, H as pd, I as Ad, J as Td, K as hd, L as Ld, O as Od, P as Rd, Q as _d, R as Id, U as vd, X as wd, Z as Cd, $ as Pd, a0 as bd, a1 as Nd, a2 as Dd, a4 as yd, a5 as Bd, a6 as Md, a7 as kd, a8 as Vd, a9 as Ud, aa as Fd, ac as Wd, ad as Hd, ae as Gd, af as xd, ag as $d, ah as Kd, aj as zd, ak as qd, al as Yd, ao as jd, ap as Zd, bl as Xd, aq as Jd, bm as Qd, bn as eE, bo as tE, bp as aE, bq as nE, br as sE, bs as oE, bt as rE, bu as iE, bv as lE, bw as uE, ar as cE, as as dE, at as EE, bx as fE, au as mE, av as gE, by as SE, aw as pE, ax as AE, ay as TE, az as hE, bz as LE, aA as OE, aB as RE, aC as _E, bA as IE, aD as vE, aE as wE, aF as CE, aG as PE, bB as bE, aH as NE, aI as DE, aJ as yE, aK as BE, aL as ME, aM as kE, aN as VE, aO as UE, aP as FE, aQ as WE, aR as HE, aq as GE } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-RHeDlcVB.js";
7
- import { _ as vn } from "./chunks/vendor-cypress-signalr-mock-itnm2wpA.js";
8
- import { c as k, b as wn, d as Cn, i as et, S as Pn, W as Gt, B as xt, h as bn, j as $t, k as Nn, m as Dn, l as Kt, n as yn, _ as Bn, L as Mn, I as kn, o as Vn, p as Un, q as Fn, r as Wn, s as Hn, T as Gn, t as xn, v as $n, w as Kn, x as zn } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-JB7OKRk6.js";
9
- import { A as $E, y as KE, z as zE, C as qE, D as YE, F as jE, G as ZE, H as XE, J as JE, K as QE, e as ef, f as tf, O as af, P as nf, Q as sf, R as of, U as rf, V as lf, X as uf, Y as cf, Z as df, $ as Ef, a0 as ff, E as mf, a1 as gf, a2 as Sf, a3 as pf, a4 as Af, a5 as Tf, a6 as hf, a7 as Lf, a8 as Of, M as Rf, N as _f, a9 as If, aa as vf, ab as wf, ac as Cf, ad as Pf, ae as bf, af as Nf, ag as Df, a as yf, ah as Bf, ai as Mf, aj as kf, ak as Vf, u as Uf, g as Ff } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-JB7OKRk6.js";
10
- import { H as qn, L as Yn } from "./chunks/vendor-microsoft-signalr-Bgpbb4fW.js";
11
- import { a as jn } from "./chunks/index-DLsURdJp.js";
12
- import { u as Hf } from "./chunks/index-DLsURdJp.js";
13
- import { a as Zn, s as Xn, b as Jn, d as Qn, e as es, f as ut, g as ts, h as as, i as ns, j as ss } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-y-eKcMMU.js";
14
- import { A as xf, D as $f, E as Kf, H as zf, _ as qf, c as Yf, k as jf, l as Zf, m as Xf, n as Jf, o as Qf, p as em, u as tm, q as am, r as nm, t as sm } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-y-eKcMMU.js";
1
+ import { b as Ba, c as Ma } from "./chunks/vendor-vueuse-core-_wFDcFkI.js";
2
+ import { N as st, O as se, P as Y, Q as x, l as $, R as Pe, S as ka, T as yt, p as ot, q as K, n as pe, A as Va, U as Ua, W as Fa, X as Wa, V as Ee, Y as Ha, Z as Ga, $ as xa, a0 as $a, a1 as Ka, a2 as za, a3 as qa, a4 as Ya, a5 as ja } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-BQ09AUgy.js";
3
+ import { B as Jl, 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 cu, j as du, k as Eu, a7 as fu, a8 as gu, a9 as mu, 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 Bu, ai as Mu, aj as ku, ak as Vu, al as Uu, am as Fu, an as Wu, ao as Hu, ap as Gu, aq as xu, ar as $u, as as Ku, at as zu, au as qu, av as Yu, aw as ju, ax as Zu, ay as Xu, C as Qu, az as Ju, aA as ec, aB as tc, aC as ac, D as nc, aD as sc, aE as oc, aF as rc, aG as ic, aH as lc, aI as uc, aJ as cc, aK as dc, aL as Ec, E as fc, F as gc, G as mc, L as Sc, aM as Ac, H as pc, I as Tc, aN as hc, J as Oc, aO as Lc, aP as Rc, aQ as _c } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-BQ09AUgy.js";
4
+ import { getCurrentScope as rt, onScopeDispose as it, computed as I, inject as J, watch as ae, defineComponent as H, openBlock as b, createBlock as D, createSlots as Le, withCtx as h, renderSlot as j, createElementVNode as U, normalizeClass as Za, createElementBlock as W, Fragment as ne, createVNode as _, unref as i, createTextVNode as M, toDisplayString as y, shallowReactive as Xa, ref as N, readonly as Me, onMounted as Re, onBeforeMount as Qa, onBeforeUnmount as Ja, shallowRef as en, onUnmounted as tn, provide as Bt, toValue as Mt, isRef as kt, normalizeStyle as Vt, createCommentVNode as q, withDirectives as an, withModifiers as He, reactive as ie, createApp as nn, nextTick as be, renderList as Fe, withKeys as lt, mergeProps as re, getCurrentInstance as sn, warn as on, h as ee, toRaw as rn } from "vue";
5
+ import { aS as ge, aT as ln, aU as un, aV as Ut, aW as Ge, aX as cn, aY as dn, aZ as En, a_ as fn, a$ as gn, ab as mn, b0 as xe, b1 as Sn, b2 as An, b3 as Ft, F as Wt, M as pn, Y as me, W as $e, am as Tn, N as hn, ai as On, B as _e, a3 as Ht, E as Ln, b4 as Rn, b5 as _n, an as gt, b6 as In, b7 as vn } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-RHeDlcVB.js";
6
+ import { b8 as vc, b9 as wc, C as Cc, ba as Pc, bb as bc, bc as Nc, _ as Dc, bd as yc, be as Bc, S as Mc, bf as kc, bg as Vc, a as Uc, b as Fc, c as Wc, d as Hc, e as Gc, f as xc, T as $c, g as Kc, h as zc, i as qc, j as Yc, k as jc, l as Zc, m as Xc, bh as Qc, bi as Jc, V as ed, n as td, o as ad, p as nd, q as sd, r as od, s as rd, t as id, u as ld, v as ud, w as cd, x as dd, y as Ed, z as fd, A as gd, D as md, bj as Sd, bj as Ad, bk as pd, G as Td, H as hd, I as Od, J as Ld, K as Rd, L as _d, O as Id, P as vd, Q as wd, R as Cd, U as Pd, X as bd, Z as Nd, $ as Dd, a0 as yd, a1 as Bd, a2 as Md, a4 as kd, a5 as Vd, a6 as Ud, a7 as Fd, a8 as Wd, a9 as Hd, aa as Gd, ac as xd, ad as $d, ae as Kd, af as zd, ag as qd, ah as Yd, aj as jd, ak as Zd, al as Xd, ao as Qd, ap as Jd, bl as eE, aq as tE, bm as aE, bn as nE, bo as sE, bp as oE, bq as rE, br as iE, bs as lE, bt as uE, bu as cE, bv as dE, bw as EE, ar as fE, as as gE, at as mE, bx as SE, au as AE, av as pE, by as TE, aw as hE, ax as OE, ay as LE, az as RE, bz as _E, aA as IE, aB as vE, aC as wE, bA as CE, aD as PE, aE as bE, aF as NE, aG as DE, bB as yE, aH as BE, aI as ME, aJ as kE, aK as VE, aL as UE, aM as FE, aN as WE, aO as HE, aP as GE, aQ as xE, aR as $E, aq as KE } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-RHeDlcVB.js";
7
+ import { _ as wn } from "./chunks/vendor-cypress-signalr-mock-itnm2wpA.js";
8
+ import { c as k, b as Cn, d as Pn, i as et, S as bn, W as Gt, B as xt, h as Nn, j as $t, k as Dn, m as yn, l as Kt, n as Bn, _ as Mn, L as kn, I as Vn, o as Un, p as Fn, q as Wn, r as Hn, s as Gn, T as xn, t as $n, v as Kn, w as zn, x as qn } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-JB7OKRk6.js";
9
+ import { A as qE, y as YE, z as jE, C as ZE, D as XE, F as QE, G as JE, H as ef, J as tf, K as af, e as nf, f as sf, O as of, P as rf, Q as lf, R as uf, U as cf, V as df, X as Ef, Y as ff, Z as gf, $ as mf, a0 as Sf, E as Af, a1 as pf, a2 as Tf, a3 as hf, a4 as Of, a5 as Lf, a6 as Rf, a7 as _f, a8 as If, M as vf, N as wf, a9 as Cf, aa as Pf, ab as bf, ac as Nf, ad as Df, ae as yf, af as Bf, ag as Mf, a as kf, ah as Vf, ai as Uf, aj as Ff, ak as Wf, u as Hf, g as Gf } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-JB7OKRk6.js";
10
+ import { H as Yn, L as jn } from "./chunks/vendor-microsoft-signalr-Bgpbb4fW.js";
11
+ import { a as Zn } from "./chunks/index-DLsURdJp.js";
12
+ import { u as $f } from "./chunks/index-DLsURdJp.js";
13
+ import { a as Xn, s as Qn, b as Jn, d as es, e as ts, f as ut, g as as, h as ns, i as ss, j as os } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-y-eKcMMU.js";
14
+ import { A as zf, D as qf, E as Yf, H as jf, _ as Zf, c as Xf, k as Qf, l as Jf, m as eg, n as tg, o as ag, p as ng, u as sg, q as og, r as rg, t as ig } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-y-eKcMMU.js";
15
15
  import "./chunks/ExtensionPoint.vue_vue_type_style_index_0_lang-B1R06zHa.js";
16
16
  import "./chunks/vendor-dompurify-DpIUMBYC.js";
17
17
  import { u as le } from "./chunks/vendor-vue-i18n-LO-EJStU.js";
18
- import { useForm as ue, useIsFormValid as Ie, useIsFormDirty as ct, Field as Z } from "vee-validate";
18
+ import { useForm as ue, useIsFormValid as Ie, useIsFormDirty as ct, Field as X } from "vee-validate";
19
19
  import { useRouter as ve } from "vue-router";
20
20
  import "./chunks/vendor-tiptap-starter-kit-ny-AoaO_.js";
21
21
  import "./chunks/vendor-tiptap-extension-underline-Bo1pXXDN.js";
@@ -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 os } from "./chunks/vendor-vue3-touch-events-DqysuuWh.js";
94
+ import { v as rs } from "./chunks/vendor-vue3-touch-events-DqysuuWh.js";
95
95
  import "./chunks/vendor-gridstack-Beau2jQ7.js";
96
- import { _ as rm, a as im, b as lm, c as um, d as cm, L as dm, e as Em, f as fm, l as mm, m as gm, s as Sm, t as pm, u as Am } from "./chunks/dashboard-feed-row.vue_vue_type_script_setup_true_lang-C0IjvNtI.js";
97
- import { _ as hm, a as Lm, b as Om, c as Rm, d as _m, e as Im } from "./chunks/DashboardDonutChart.vue_vue_type_script_setup_true_lang-hTcM33bM.js";
98
- import { A as rs, u as is } from "./chunks/vendor-vue3-application-insights-CAgbt8pk.js";
99
- import { o as ls, c as J, d as us, i as cs } from "./chunks/vendor-lodash-es-D2n90GJy.js";
100
- import { T as ds, x as Es, b as fs, S as ms, $ as gs } from "./chunks/vendor-web-vitals-ByFgAM-8.js";
101
- import { _ as Ss } from "./chunks/index-BuTo_Lx8.js";
102
- import { E as wm, d as Cm, u as Pm } from "./chunks/index-BuTo_Lx8.js";
103
- function Sl(e) {
96
+ import { _ as ug, a as cg, b as dg, c as Eg, d as fg, L as gg, e as mg, f as Sg, l as Ag, m as pg, s as Tg, t as hg, u as Og } from "./chunks/dashboard-feed-row.vue_vue_type_script_setup_true_lang-C0IjvNtI.js";
97
+ import { _ as Rg, a as _g, b as Ig, c as vg, d as wg, e as Cg } from "./chunks/DashboardDonutChart.vue_vue_type_script_setup_true_lang-hTcM33bM.js";
98
+ import { A as is, u as ls } from "./chunks/vendor-vue3-application-insights-CAgbt8pk.js";
99
+ import { o as us, c as Q, d as cs, i as ds } from "./chunks/vendor-lodash-es-D2n90GJy.js";
100
+ import { T as Es, x as fs, b as gs, S as ms, $ as Ss } from "./chunks/vendor-web-vitals-ByFgAM-8.js";
101
+ import { _ as As } from "./chunks/index-BuTo_Lx8.js";
102
+ import { E as bg, d as Ng, u as Dg } from "./chunks/index-BuTo_Lx8.js";
103
+ function Tl(e) {
104
104
  return e.replace(/[\w]([A-Z])/g, function(t) {
105
105
  return t[0] + "_" + t[1];
106
106
  }).toLowerCase();
107
107
  }
108
108
  const ps = (e) => e.replace(/-./g, (t) => t[1].toUpperCase());
109
- function pl(e) {
109
+ function hl(e) {
110
110
  const t = ps(e);
111
111
  return t[0].toUpperCase() + t.substring(1);
112
112
  }
113
- function Al(e) {
113
+ function Ol(e) {
114
114
  return e.replace(/\W+(.)/g, function(t, a) {
115
115
  return a.toUpperCase();
116
116
  });
117
117
  }
118
- const As = /* @__PURE__ */ new Set(["png", "jpg", "jpeg", "svg", "gif"]);
118
+ const Ts = /* @__PURE__ */ new Set(["png", "jpg", "jpeg", "svg", "gif"]);
119
119
  function dt(e) {
120
120
  return e.split(".").pop()?.toLowerCase();
121
121
  }
122
122
  function zt(e) {
123
- return e ? As.has(dt(e) ?? "") : !1;
123
+ return e ? Ts.has(dt(e) ?? "") : !1;
124
124
  }
125
125
  function qt(e, t = 2) {
126
126
  if (!e) return "0 Bytes";
127
127
  const a = 1024, n = t < 0 ? 0 : t, s = ["Bytes", "KB", "MB", "GB"], o = Math.floor(Math.log(e) / Math.log(a));
128
128
  return `${parseFloat((e / Math.pow(a, o)).toFixed(n))} ${s[o]}`;
129
129
  }
130
- const Ts = {
130
+ const hs = {
131
131
  pdf: "#e74c3c",
132
132
  doc: "#2b579a",
133
133
  docx: "#2b579a",
@@ -145,19 +145,19 @@ const Ts = {
145
145
  function Yt(e) {
146
146
  if (!e) return "var(--neutrals-400)";
147
147
  const t = dt(e) ?? "";
148
- return Ts[t] ?? "var(--neutrals-400)";
148
+ return hs[t] ?? "var(--neutrals-400)";
149
149
  }
150
150
  function jt(e) {
151
151
  return e ? (dt(e) ?? "FILE").toUpperCase() : "FILE";
152
152
  }
153
- const hs = {
153
+ const Os = {
154
154
  install(e) {
155
155
  const { hasAccess: t } = st();
156
156
  e.config.globalProperties.$hasAccess = t;
157
157
  }
158
158
  };
159
- function Tl(e) {
160
- const t = me(), a = t.subscribe({
159
+ function Ll(e) {
160
+ const t = ge(), a = t.subscribe({
161
161
  types: e.types,
162
162
  filter: e.filter,
163
163
  handler: e.onMessage
@@ -175,14 +175,14 @@ function Tl(e) {
175
175
  markAsRead: o
176
176
  };
177
177
  }
178
- function hl() {
179
- const e = Q(rn);
178
+ function Rl() {
179
+ const e = J(ln);
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 Ll() {
185
- const e = me();
184
+ function _l() {
185
+ const e = ge();
186
186
  return {
187
187
  setBroadcastFilter: e.setBroadcastFilter,
188
188
  clearBroadcastFilter: e.clearBroadcastFilter
@@ -190,9 +190,9 @@ function Ll() {
190
190
  }
191
191
  const Zt = Symbol("NotificationContainerState"), Ke = k("signalR"), Ls = {
192
192
  install(e) {
193
- const t = me(), { isAuthenticated: a } = se();
193
+ const t = ge(), { isAuthenticated: a } = se();
194
194
  let n = !1;
195
- const s = vn("pushNotificationHub", { enableForVitest: !0 }) ?? new qn().withUrl("/pushNotificationHub").withAutomaticReconnect().configureLogging(Yn.Information).build(), o = 5e3, r = 6e4;
195
+ const s = wn("pushNotificationHub", { enableForVitest: !0 }) ?? new Yn().withUrl("/pushNotificationHub").withAutomaticReconnect().configureLogging(jn.Information).build(), o = 5e3, r = 6e4;
196
196
  let l = 0, c;
197
197
  function u(f) {
198
198
  return f instanceof Error && /\b401\b/.test(f.message);
@@ -209,7 +209,7 @@ const Zt = Symbol("NotificationContainerState"), Ke = k("signalR"), Ls = {
209
209
  l++, c = setTimeout(() => E(), d);
210
210
  });
211
211
  };
212
- async function g() {
212
+ async function m() {
213
213
  clearTimeout(c), c = void 0, await s.stop();
214
214
  }
215
215
  s.onclose(() => {
@@ -221,28 +221,28 @@ const Zt = Symbol("NotificationContainerState"), Ke = k("signalR"), Ls = {
221
221
  }), ae(
222
222
  a,
223
223
  async (f) => {
224
- f ? (n = !0, l = 0, E()) : (n = !1, await g());
224
+ f ? (n = !0, l = 0, E()) : (n = !1, await m());
225
225
  },
226
226
  { immediate: !0 }
227
227
  );
228
228
  }
229
229
  };
230
- function Ol(e) {
231
- const t = Q(ln, void 0);
230
+ function Il(e) {
231
+ const t = J(un, void 0);
232
232
  return {
233
233
  read: () => t ? t.read(e) : {}
234
234
  };
235
235
  }
236
- const Os = k("modularity");
236
+ const Rs = k("modularity");
237
237
  function Et(e) {
238
238
  const { blades: t, locales: a, notificationTemplates: n, notifications: s } = e;
239
239
  return {
240
240
  install(o) {
241
- const r = me();
241
+ const r = ge();
242
242
  if (t && Object.keys(t).length > 0) {
243
- const l = o.runWithContext(() => Q(Ut));
243
+ const l = o.runWithContext(() => J(Ut));
244
244
  if (!l?._registerBladeFn)
245
- Os.error("defineAppModule: BladeRegistry not found. Blade registration will be skipped.");
245
+ Rs.error("defineAppModule: BladeRegistry not found. Blade registration will be skipped.");
246
246
  else
247
247
  for (const [c, u] of Object.entries(t)) {
248
248
  const E = u.name || c;
@@ -275,7 +275,7 @@ function Et(e) {
275
275
  c.filter((E) => !r.registry.has(E)).length > 0 && r.subscribe({
276
276
  types: c,
277
277
  handler: (E) => {
278
- E.title && q(E.title, {
278
+ E.title && Y(E.title, {
279
279
  onClose() {
280
280
  r.markAsRead(E);
281
281
  }
@@ -286,18 +286,18 @@ function Et(e) {
286
286
  }
287
287
  if (a)
288
288
  for (const [l, c] of Object.entries(a))
289
- X.global.mergeLocaleMessage(l, c);
289
+ x.global.mergeLocaleMessage(l, c);
290
290
  }
291
291
  };
292
292
  }
293
- function Rl(e, t, a, n) {
293
+ function vl(e, t, a, n) {
294
294
  return Et({
295
295
  blades: e,
296
296
  locales: t,
297
297
  notificationTemplates: a
298
298
  });
299
299
  }
300
- async function Rs(e, t, a, n, s, o) {
300
+ async function _s(e, t, a, n, s, o) {
301
301
  if (!a.workspaceUrl) return !1;
302
302
  const r = t.getBladeByRoute(a.workspaceUrl);
303
303
  if (!r)
@@ -307,7 +307,7 @@ async function Rs(e, t, a, n, s, o) {
307
307
  `[restoreFromUrl] Blade '${r.name}' matched URL '${a.workspaceUrl}' but is not a workspace`
308
308
  ), s && Ge(s, o), !1;
309
309
  if (n && r.data.permissions && !n(r.data.permissions))
310
- return console.warn(`[restoreFromUrl] Access denied to workspace '${r.name}'`), q.error(X.global.t("PERMISSION_MESSAGES.ACCESS_RESTRICTED"), { timeout: 3e3 }), s && Ge(s, o), !1;
310
+ return console.warn(`[restoreFromUrl] Access denied to workspace '${r.name}'`), Y.error(x.global.t("PERMISSION_MESSAGES.ACCESS_RESTRICTED"), { timeout: 3e3 }), s && Ge(s, o), !1;
311
311
  if (e.workspace.value?.name !== r.name && await e.openWorkspace({ name: r.name }), a.bladeUrl) {
312
312
  const c = t.getBladeByRoute(a.bladeUrl);
313
313
  if (c) {
@@ -325,7 +325,7 @@ async function Rs(e, t, a, n, s, o) {
325
325
  }
326
326
  return !1;
327
327
  }
328
- async function gt(e) {
328
+ async function mt(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 gt(e) {
333
333
  }
334
334
  return e.blades.value.length > 0 && e._restoreStack([]), !0;
335
335
  }
336
- async function _s(e, t, a, n, s) {
336
+ async function Is(e, t, a, n, s) {
337
337
  if (!e.matched.some((E) => E.meta?.root)) return;
338
338
  if (!e.matched.some((E) => E.meta?.bladeCatchAll))
339
- return t.blades.value.length > 0 && !await gt(t) ? !1 : void 0;
340
- const r = Object.values(e.params)?.[0] || "", l = un(e.path, r);
339
+ return t.blades.value.length > 0 && !await mt(t) ? !1 : void 0;
340
+ const r = Object.values(e.params)?.[0] || "", l = cn(e.path, r);
341
341
  if (!l.workspaceUrl)
342
- return t.blades.value.length > 0 && !await gt(t) ? !1 : void 0;
342
+ return t.blades.value.length > 0 && !await mt(t) ? !1 : void 0;
343
343
  const c = Object.fromEntries(Object.entries(e.params).filter(([, E]) => typeof E == "string"));
344
- if (await Rs(t, a, l, n, s, c)) {
345
- const { path: E, query: g } = cn(r, t.blades.value);
346
- return { path: E, query: g, replace: !0 };
344
+ if (await _s(t, a, l, n, s, c)) {
345
+ const { path: E, query: m } = dn(r, t.blades.value);
346
+ return { path: E, query: m, replace: !0 };
347
347
  }
348
348
  }
349
- const Is = {
349
+ const vs = {
350
350
  install(e, t) {
351
351
  const { router: a } = t, n = {
352
352
  router: t.router
353
353
  };
354
- Qn(n);
354
+ es(n);
355
355
  const s = e.runWithContext(() => {
356
356
  try {
357
- return dn();
357
+ return En();
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 Is = {
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 = fn(a, () => r.current), c = Zn(s, o, l);
370
- r.current = c, e.provide(wn, c), Xn(c);
371
- const u = En(c);
372
- e.provide(Cn, u), Jn(u), es(s);
373
- const E = a.getRoutes().find((g) => g.meta?.root);
369
+ const { hasAccess: o } = e.runWithContext(() => st()), r = {}, l = gn(a, () => r.current), c = Xn(s, o, l);
370
+ r.current = c, e.provide(Cn, c), Qn(c);
371
+ const u = fn(c);
372
+ e.provide(Pn, u), Jn(u), ts(s);
373
+ const E = a.getRoutes().find((m) => m.meta?.root);
374
374
  E && a.addRoute(E.name, {
375
375
  path: ":pathMatch(.*)*",
376
376
  component: { render: () => null },
377
377
  meta: { bladeCatchAll: !0 }
378
378
  }), a.beforeEach(
379
- (g) => l.suppressWhile(() => _s(g, c, s, o, a))
379
+ (m) => l.suppressWhile(() => Is(m, c, s, o, a))
380
380
  );
381
381
  }
382
- }, vs = {
382
+ }, ws = {
383
383
  input: {
384
384
  maxlength: 1024,
385
385
  debounce: 0,
@@ -429,8 +429,8 @@ const Is = {
429
429
  gap: 20
430
430
  }
431
431
  };
432
- function _l(e) {
433
- return vs[e];
432
+ function wl(e) {
433
+ return ws[e];
434
434
  }
435
435
  const ft = /* @__PURE__ */ H({
436
436
  __name: "vc-popup-base",
@@ -458,23 +458,23 @@ const ft = /* @__PURE__ */ H({
458
458
  title: e.title,
459
459
  closable: e.closable,
460
460
  onClose: r[0] || (r[0] = (l) => o.$emit("close"))
461
- }, Oe({
461
+ }, Le({
462
462
  content: h(() => [
463
- Y(o.$slots, "default")
463
+ j(o.$slots, "default")
464
464
  ]),
465
465
  footer: h(({ close: l }) => [
466
- Y(o.$slots, "footer", {
466
+ j(o.$slots, "footer", {
467
467
  close: l,
468
468
  confirm: () => s(l)
469
469
  }, () => [
470
470
  U("div", {
471
- class: ja(["vc-popup-base__actions", {
471
+ class: Za(["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
  }])
475
475
  }, [
476
476
  e.mode === "confirm" ? (b(), W(ne, { key: 0 }, [
477
- _(i(x), {
477
+ _(i($), {
478
478
  text: e.confirmAsText,
479
479
  class: "vc-popup-base__confirm",
480
480
  onClick: (c) => s(l)
@@ -484,13 +484,13 @@ const ft = /* @__PURE__ */ H({
484
484
  ]),
485
485
  _: 1
486
486
  }, 8, ["text", "onClick"]),
487
- _(i(x), { onClick: l }, {
487
+ _(i($), { onClick: l }, {
488
488
  default: h(() => [
489
489
  M(y(e.cancelLabel), 1)
490
490
  ]),
491
491
  _: 1
492
492
  }, 8, ["onClick"])
493
- ], 64)) : (b(), D(i(x), {
493
+ ], 64)) : (b(), D(i($), {
494
494
  key: 1,
495
495
  class: "vc-popup-base__single",
496
496
  onClick: l
@@ -508,13 +508,13 @@ const ft = /* @__PURE__ */ H({
508
508
  o.$slots.header ? {
509
509
  name: "header",
510
510
  fn: h(() => [
511
- Y(o.$slots, "header")
511
+ j(o.$slots, "header")
512
512
  ]),
513
513
  key: "0"
514
514
  } : void 0
515
515
  ]), 1032, ["variant", "is-mobile-fullscreen", "title", "closable"]));
516
516
  }
517
- }), ws = /* @__PURE__ */ H({
517
+ }), Cs = /* @__PURE__ */ H({
518
518
  __name: "vc-popup-warning",
519
519
  props: {
520
520
  title: {}
@@ -530,22 +530,22 @@ const ft = /* @__PURE__ */ H({
530
530
  title: e.title,
531
531
  onClose: a[0] || (a[0] = (n) => t.$emit("close")),
532
532
  onConfirm: a[1] || (a[1] = (n) => t.$emit("confirm"))
533
- }, Oe({
533
+ }, Le({
534
534
  default: h(() => [
535
- Y(t.$slots, "default")
535
+ j(t.$slots, "default")
536
536
  ]),
537
537
  _: 2
538
538
  }, [
539
539
  t.$slots.header ? {
540
540
  name: "header",
541
541
  fn: h(() => [
542
- Y(t.$slots, "header")
542
+ j(t.$slots, "header")
543
543
  ]),
544
544
  key: "0"
545
545
  } : void 0
546
546
  ]), 1032, ["confirm-label", "cancel-label", "title"]));
547
547
  }
548
- }), Cs = /* @__PURE__ */ H({
548
+ }), Ps = /* @__PURE__ */ H({
549
549
  __name: "vc-popup-error",
550
550
  props: {
551
551
  title: {}
@@ -558,22 +558,22 @@ const ft = /* @__PURE__ */ H({
558
558
  "action-label": t.$t("COMPONENTS.ORGANISMS.VC_POPUP.OK"),
559
559
  title: e.title,
560
560
  onClose: a[0] || (a[0] = (n) => t.$emit("close"))
561
- }, Oe({
561
+ }, Le({
562
562
  default: h(() => [
563
- Y(t.$slots, "default")
563
+ j(t.$slots, "default")
564
564
  ]),
565
565
  _: 2
566
566
  }, [
567
567
  t.$slots.header ? {
568
568
  name: "header",
569
569
  fn: h(() => [
570
- Y(t.$slots, "header")
570
+ j(t.$slots, "header")
571
571
  ]),
572
572
  key: "0"
573
573
  } : void 0
574
574
  ]), 1032, ["action-label", "title"]));
575
575
  }
576
- }), Ps = /* @__PURE__ */ H({
576
+ }), bs = /* @__PURE__ */ H({
577
577
  __name: "vc-popup-info",
578
578
  props: {
579
579
  title: {}
@@ -586,34 +586,34 @@ const ft = /* @__PURE__ */ H({
586
586
  "action-label": t.$t("COMPONENTS.ORGANISMS.VC_POPUP.OK"),
587
587
  title: e.title,
588
588
  onClose: a[0] || (a[0] = (n) => t.$emit("close"))
589
- }, Oe({
589
+ }, Le({
590
590
  default: h(() => [
591
- Y(t.$slots, "default")
591
+ j(t.$slots, "default")
592
592
  ]),
593
593
  _: 2
594
594
  }, [
595
595
  t.$slots.header ? {
596
596
  name: "header",
597
597
  fn: h(() => [
598
- Y(t.$slots, "header")
598
+ j(t.$slots, "header")
599
599
  ]),
600
600
  key: "0"
601
601
  } : void 0
602
602
  ]), 1032, ["action-label", "title"]));
603
603
  }
604
604
  });
605
- function bs() {
606
- xe("warning", ws), xe("error", Cs), xe("info", Ps);
605
+ function Ns() {
606
+ xe("warning", Cs), xe("error", Ps), xe("info", bs);
607
607
  }
608
- const Ns = {
608
+ const Ds = {
609
609
  install(e) {
610
610
  const a = {
611
- popups: Za([])
611
+ popups: Xa([])
612
612
  };
613
- e.config.globalProperties.$popupPlugin = a, e.provide(gn, a), Sn(a), bs();
613
+ e.config.globalProperties.$popupPlugin = a, e.provide(Sn, a), An(a), Ns();
614
614
  }
615
615
  };
616
- function Ds(e, t) {
616
+ function ys(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 Ds(e, t) {
621
621
  }, t);
622
622
  };
623
623
  }
624
- function ys(e, t = 0) {
624
+ function Bs(e, t = 0) {
625
625
  setTimeout(e, t);
626
626
  }
627
627
  const ze = /* @__PURE__ */ new WeakMap();
628
- function Bs(e) {
628
+ function Ms(e) {
629
629
  return function(...t) {
630
630
  if (!ze.has(e)) {
631
631
  const a = e(...t);
@@ -634,7 +634,7 @@ function Bs(e) {
634
634
  return ze.get(e);
635
635
  };
636
636
  }
637
- function Ms(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,16 +642,16 @@ function Ms(e, t) {
642
642
  }, t));
643
643
  };
644
644
  }
645
- function Il() {
645
+ function Cl() {
646
646
  return {
647
- debounce: Ds,
648
- delay: ys,
649
- once: Bs,
650
- throttle: Ms
647
+ debounce: ys,
648
+ delay: Bs,
649
+ once: Ms,
650
+ throttle: ks
651
651
  };
652
652
  }
653
- function vl(e) {
654
- const t = me(), a = e ? Array.isArray(e) ? e : [e] : [];
653
+ function Pl(e) {
654
+ const t = ge(), a = e ? Array.isArray(e) ? e : [e] : [];
655
655
  let n, s;
656
656
  a.length && (s = t.subscribe({
657
657
  types: a,
@@ -661,7 +661,7 @@ function vl(e) {
661
661
  (r) => r.isNew && r.notifyType != null && a.includes(r.notifyType)
662
662
  ) : []);
663
663
  return {
664
- notifications: I(() => ls(t.history.value, ["created"], ["desc"])),
664
+ notifications: I(() => us(t.history.value, ["created"], ["desc"])),
665
665
  moduleNotifications: o,
666
666
  loadFromHistory: t.loadHistory,
667
667
  addNotification: t.ingest,
@@ -673,7 +673,7 @@ function vl(e) {
673
673
  };
674
674
  }
675
675
  let qe;
676
- const ks = k("use-async");
676
+ const Vs = k("use-async");
677
677
  function Xt(e, t) {
678
678
  const a = N(!1), n = N(null), s = t?.notify !== !1, o = t?.notifyTimeout ?? 8e3;
679
679
  async function r(l, ...c) {
@@ -682,14 +682,14 @@ function Xt(e, t) {
682
682
  return await e(l, ...c);
683
683
  } catch (u) {
684
684
  const E = Pe(u);
685
- if (n.value = E, ks.error("Async action failed:", u), s && !et() && u && typeof u == "object") {
686
- const g = `async-error-${E.message.slice(0, 80)}`, f = setTimeout(async () => {
685
+ if (n.value = E, Vs.error("Async action failed:", u), s && !et() && u && typeof u == "object") {
686
+ const m = `async-error-${E.message.slice(0, 80)}`, f = setTimeout(async () => {
687
687
  qe || (qe = (await import("./chunks/VcScheduler.vue_vue_type_style_index_0_lang-BQ09AUgy.js").then((S) => S.b0)).notification), qe.error(E.message, {
688
688
  timeout: o,
689
- notificationId: g
689
+ notificationId: m
690
690
  });
691
691
  }, 0);
692
- Ma(u, f, g);
692
+ ka(u, f, m);
693
693
  }
694
694
  throw u;
695
695
  } finally {
@@ -702,20 +702,36 @@ function Xt(e, t) {
702
702
  action: r
703
703
  };
704
704
  }
705
- function Vs(e) {
706
- async function t() {
707
- return new e();
705
+ let Qt;
706
+ function Us(e) {
707
+ Qt = e;
708
+ }
709
+ function Fs(e, { signal: t }) {
710
+ return t ? new e(void 0, {
711
+ // `window.fetch` is read per call, never captured: installing the framework
712
+ // replaces it with the interceptor, and tests swap it too. A captured
713
+ // reference would silently bypass both.
714
+ //
715
+ // A signal the client set itself would be overwritten here. None of the
716
+ // generated clients set one (`useAbortSignal` is off in the codegen config),
717
+ // and the caller asking for cancellation is the more specific intent.
718
+ fetch: (a, n) => window.fetch(a, { ...n, signal: t })
719
+ }) : new e();
720
+ }
721
+ function Ws(e, t = {}) {
722
+ async function a() {
723
+ return (Qt ?? Fs)(e, t);
708
724
  }
709
725
  return {
710
- getApiClient: t
726
+ getApiClient: a
711
727
  };
712
728
  }
713
729
  function Jt(...e) {
714
730
  return I(() => e.some((t) => t.value));
715
731
  }
716
- const Us = k("use-settings");
732
+ const Hs = k("use-settings");
717
733
  function we() {
718
- const e = N(), t = N(!1), { getApiClient: a } = Vs(Pn), { loading: n, action: s } = Xt(async () => {
734
+ const e = N(), t = N(!1), { getApiClient: a } = Ws(bn), { loading: n, action: s } = Xt(async () => {
719
735
  if (t.value) return;
720
736
  const r = await (await a()).getUICustomizationSetting();
721
737
  let l = null;
@@ -723,7 +739,7 @@ function we() {
723
739
  try {
724
740
  l = JSON.parse(r.defaultValue);
725
741
  } catch (c) {
726
- Us.warn("Failed to parse UI customization settings JSON; ignoring.", c);
742
+ Hs.warn("Failed to parse UI customization settings JSON; ignoring.", c);
727
743
  }
728
744
  l && !e.value && (e.value = {
729
745
  contrast_logo: l.contrast_logo,
@@ -748,7 +764,7 @@ function we() {
748
764
  loading: Jt(n)
749
765
  };
750
766
  }
751
- function wl() {
767
+ function bl() {
752
768
  const e = N(!1);
753
769
  let t = 0, a = !1;
754
770
  function n() {
@@ -774,8 +790,8 @@ function wl() {
774
790
  pending: Me(e)
775
791
  };
776
792
  }
777
- const St = k("use-assets"), Fs = 4;
778
- async function Ws(e, t, a, n) {
793
+ const St = k("use-assets"), Gs = 4;
794
+ async function xs(e, t, a, n) {
779
795
  const s = new FormData();
780
796
  s.append("file", e);
781
797
  const r = await (await fetch(`/api/assets?folderUrl=/${t}`, {
@@ -788,7 +804,7 @@ async function Ws(e, t, a, n) {
788
804
  }
789
805
  return null;
790
806
  }
791
- async function Hs(e, t, a) {
807
+ async function $s(e, t, a) {
792
808
  const n = [];
793
809
  for (let s = 0; s < e.length; s += a) {
794
810
  const o = e.slice(s, s + a), r = await Promise.all(o.map((l, c) => t(l, s + c)));
@@ -796,16 +812,16 @@ async function Hs(e, t, a) {
796
812
  }
797
813
  return n;
798
814
  }
799
- function Cl() {
815
+ function Nl() {
800
816
  const e = N(!1);
801
817
  async function t(s, o, r) {
802
818
  try {
803
819
  e.value = !0;
804
820
  const l = Array.from(s);
805
- return (await Hs(
821
+ return (await $s(
806
822
  l,
807
- (u, E) => Ws(u, o, E, r),
808
- Fs
823
+ (u, E) => xs(u, o, E, r),
824
+ Gs
809
825
  )).filter((u) => u !== null);
810
826
  } catch (l) {
811
827
  throw St.error("Upload failed:", l), l;
@@ -816,8 +832,8 @@ function Cl() {
816
832
  function a(s, o, r = "url") {
817
833
  try {
818
834
  e.value = !0;
819
- let l = J(o) || [];
820
- return l && l.length && s.length > 0 && (l = us(l, s, (c, u) => c[r] === u[r])), l;
835
+ let l = Q(o) || [];
836
+ return l && l.length && s.length > 0 && (l = cs(l, s, (c, u) => c[r] === u[r])), l;
821
837
  } catch (l) {
822
838
  throw St.error("Remove failed:", l), l;
823
839
  } finally {
@@ -827,7 +843,7 @@ function Cl() {
827
843
  function n(s, o) {
828
844
  if (s.length === o.length)
829
845
  return s.map((l) => ({ ...l }));
830
- const r = J(o) || [];
846
+ const r = Q(o) || [];
831
847
  return r && r.length && s.forEach((l) => {
832
848
  const c = r.findIndex((u) => u.url === l.url);
833
849
  c !== -1 && (r[c] = { ...r[c], ...l });
@@ -840,8 +856,8 @@ function Cl() {
840
856
  loading: I(() => e.value)
841
857
  };
842
858
  }
843
- const Gs = k("use-assets-manager"), xs = 4;
844
- async function $s(e, t, a, n) {
859
+ const Ks = k("use-assets-manager"), zs = 4;
860
+ async function qs(e, t, a, n) {
845
861
  const s = new FormData();
846
862
  s.append("file", e);
847
863
  const o = t.startsWith("/") ? t.slice(1) : t, l = await (await fetch(`/api/assets?folderUrl=/${o}`, {
@@ -854,7 +870,7 @@ async function $s(e, t, a, n) {
854
870
  }
855
871
  return null;
856
872
  }
857
- async function Ks(e, t, a) {
873
+ async function Ys(e, t, a) {
858
874
  const n = [];
859
875
  for (let s = 0; s < e.length; s += a) {
860
876
  const o = e.slice(s, s + a), r = await Promise.all(o.map((l, c) => t(l, s + c)));
@@ -862,71 +878,71 @@ async function Ks(e, t, a) {
862
878
  }
863
879
  return n;
864
880
  }
865
- function pt(e) {
881
+ function At(e) {
866
882
  return e.map((t, a) => ({ item: t, index: a })).sort((t, a) => {
867
883
  const n = t.item.sortOrder ?? Number.MAX_SAFE_INTEGER, s = a.item.sortOrder ?? Number.MAX_SAFE_INTEGER;
868
884
  return n === s ? t.index - a.index : n - s;
869
885
  }).map(({ item: t }, a) => ({ ...t, sortOrder: a }));
870
886
  }
871
- function Pl(e, t) {
872
- const a = N(!1), n = N(pt(e.value ?? []));
887
+ function Dl(e, t) {
888
+ const a = N(!1), n = N(At(e.value ?? []));
873
889
  ae(
874
890
  () => e.value,
875
891
  (S) => {
876
- n.value = pt(S ?? []);
892
+ n.value = At(S ?? []);
877
893
  },
878
894
  { deep: !0, immediate: !0 }
879
895
  );
880
896
  function s() {
881
897
  e.value = n.value;
882
898
  }
883
- const o = n, r = I(() => a.value), l = t.concurrency ?? xs, c = t.assetKey ?? "url";
884
- async function u(S, O) {
899
+ const o = n, r = I(() => a.value), l = t.concurrency ?? zs, c = t.assetKey ?? "url";
900
+ async function u(S, L) {
885
901
  try {
886
902
  a.value = !0;
887
- const T = Array.from(S), v = t.uploadPath(), C = (await Ks(
903
+ const T = Array.from(S), v = t.uploadPath(), C = (await Ys(
888
904
  T,
889
- (L, m) => $s(L, v, m, O),
905
+ (O, g) => qs(O, v, g, L),
890
906
  l
891
- )).filter((L) => L !== null);
907
+ )).filter((O) => O !== null);
892
908
  n.value = [...n.value, ...C], s();
893
909
  } catch (T) {
894
- throw Gs.error("Upload failed:", T), T;
910
+ throw Ks.error("Upload failed:", T), T;
895
911
  } finally {
896
912
  a.value = !1;
897
913
  }
898
914
  }
899
915
  async function E(S) {
900
- await g([S]);
916
+ await m([S]);
901
917
  }
902
- async function g(S) {
918
+ async function m(S) {
903
919
  if (t.confirmRemove && !await t.confirmRemove())
904
920
  return;
905
- const O = new Set(S.map((T) => T[c]));
906
- n.value = n.value.filter((T) => !O.has(T[c])), s();
921
+ const L = new Set(S.map((T) => T[c]));
922
+ n.value = n.value.filter((T) => !L.has(T[c])), s();
907
923
  }
908
924
  function f(S) {
909
- n.value = S.map((O) => ({ ...O })), s();
925
+ n.value = S.map((L) => ({ ...L })), s();
910
926
  }
911
927
  function d(S) {
912
- const O = n.value.findIndex((T) => T[c] === S[c]);
913
- if (O !== -1) {
928
+ const L = n.value.findIndex((T) => T[c] === S[c]);
929
+ if (L !== -1) {
914
930
  const T = [...n.value];
915
- T[O] = { ...n.value[O], ...S }, n.value = T, s();
931
+ T[L] = { ...n.value[L], ...S }, n.value = T, s();
916
932
  }
917
933
  }
918
934
  return {
919
935
  items: o,
920
936
  upload: u,
921
937
  remove: E,
922
- removeMany: g,
938
+ removeMany: m,
923
939
  reorder: f,
924
940
  updateItem: d,
925
941
  loading: r
926
942
  };
927
943
  }
928
- const zs = (e) => {
929
- Xa(() => {
944
+ const js = (e) => {
945
+ Qa(() => {
930
946
  window.addEventListener("beforeunload", t);
931
947
  }), Ja(() => {
932
948
  window.removeEventListener("beforeunload", t);
@@ -937,9 +953,9 @@ const zs = (e) => {
937
953
  return {
938
954
  modified: e
939
955
  };
940
- }, qs = k("use-breadcrumbs");
941
- function bl() {
942
- const e = Qa([]);
956
+ }, Zs = k("use-breadcrumbs");
957
+ function yl() {
958
+ const e = en([]);
943
959
  function t(s) {
944
960
  const o = e.value.findIndex((r) => r.id === s);
945
961
  o !== -1 && (e.value = e.value.slice(0, o + 1));
@@ -951,7 +967,7 @@ function bl() {
951
967
  try {
952
968
  await s.clickHandler(l) !== !1 && t(l);
953
969
  } catch (c) {
954
- qs.error("Breadcrumb click handler failed:", c);
970
+ Zs.error("Breadcrumb click handler failed:", c);
955
971
  }
956
972
  } : void 0
957
973
  }, r = e.value.findIndex((l) => l.id === o.id);
@@ -976,16 +992,16 @@ function Se(e) {
976
992
  function fe(e) {
977
993
  return !!e.multilanguage;
978
994
  }
979
- function Le(e) {
995
+ function Oe(e) {
980
996
  return !!e.multivalue;
981
997
  }
982
- function At(e) {
998
+ function pt(e) {
983
999
  return !!e.dictionary;
984
1000
  }
985
- function Ys(e) {
1001
+ function Xs(e) {
986
1002
  return e.valueType === "Measure";
987
1003
  }
988
- function js(e) {
1004
+ function Qs(e) {
989
1005
  return e.valueType === "Color";
990
1006
  }
991
1007
  function F(e) {
@@ -994,9 +1010,9 @@ function F(e) {
994
1010
  function We(e, t) {
995
1011
  e.values && (fe(e) && t ? e.values = e.values.filter((a) => a.languageCode !== t) : e.values = [], e.values.length > 0 && e.values.every((a) => Se(a.value)) && (e.values = []));
996
1012
  }
997
- const Zs = {
1013
+ const Js = {
998
1014
  get(e, t) {
999
- return fe(e) ? Le(e) ? e.values?.filter((n) => n.languageCode === t) ?? [] : (e.values?.find((n) => n.languageCode === t) ?? e.values?.find((n) => !n.languageCode))?.value ?? "" : Le(e) ? e.values ?? [] : e.values?.[0]?.value ?? "";
1015
+ return fe(e) ? Oe(e) ? e.values?.filter((n) => n.languageCode === t) ?? [] : (e.values?.find((n) => n.languageCode === t) ?? e.values?.find((n) => !n.languageCode))?.value ?? "" : Oe(e) ? e.values ?? [] : e.values?.[0]?.value ?? "";
1000
1016
  },
1001
1017
  set(e, t, a) {
1002
1018
  if (!Array.isArray(t) && Se(t)) {
@@ -1021,16 +1037,16 @@ const Zs = {
1021
1037
  }
1022
1038
  e.values?.[0] ? Object.assign(e.values[0], { value: t }) : e.values = [F({ value: t })];
1023
1039
  }
1024
- }, Xs = {
1040
+ }, eo = {
1025
1041
  get(e, t) {
1026
1042
  return fe(e) ? (e.values?.find((n) => n.languageCode === t) ?? e.values?.find((n) => !n.languageCode))?.value ?? !1 : e.values?.[0]?.value ?? !1;
1027
1043
  },
1028
1044
  set(e, t, a) {
1029
1045
  e.values?.[0] ? Object.assign(e.values[0], { value: t }) : e.values = [F({ value: t })];
1030
1046
  }
1031
- }, Js = {
1047
+ }, to = {
1032
1048
  get(e, t) {
1033
- return fe(e) ? Le(e) ? e.values?.filter((n) => n.languageCode === t) ?? [] : (e.values?.find((n) => n.languageCode === t) ?? e.values?.find((n) => !n.languageCode))?.valueId ?? "" : Le(e) ? e.values ?? [] : e.values?.[0]?.valueId ?? "";
1049
+ return fe(e) ? Oe(e) ? e.values?.filter((n) => n.languageCode === t) ?? [] : (e.values?.find((n) => n.languageCode === t) ?? e.values?.find((n) => !n.languageCode))?.valueId ?? "" : Oe(e) ? e.values ?? [] : e.values?.[0]?.valueId ?? "";
1034
1050
  },
1035
1051
  set(e, t, a) {
1036
1052
  const { dictionary: n, locale: s } = a;
@@ -1038,17 +1054,17 @@ const Zs = {
1038
1054
  We(e, s);
1039
1055
  return;
1040
1056
  }
1041
- n?.length && (fe(e) ? Qs(e, t, n, s) : ao(e, t, n));
1057
+ n?.length && (fe(e) ? ao(e, t, n, s) : oo(e, t, n));
1042
1058
  }
1043
1059
  };
1044
- function Qs(e, t, a, n) {
1045
- Array.isArray(t) ? eo(
1060
+ function ao(e, t, a, n) {
1061
+ Array.isArray(t) ? no(
1046
1062
  e,
1047
1063
  t,
1048
1064
  a
1049
- ) : to(e, t, a, n);
1065
+ ) : so(e, t, a, n);
1050
1066
  }
1051
- function eo(e, t, a) {
1067
+ function no(e, t, a) {
1052
1068
  e.values = t.flatMap((n) => {
1053
1069
  const s = a.find(
1054
1070
  (o) => o.id === n.valueId || o.id === n.id
@@ -1065,7 +1081,7 @@ function eo(e, t, a) {
1065
1081
  ) : F(n);
1066
1082
  });
1067
1083
  }
1068
- function to(e, t, a, n) {
1084
+ function so(e, t, a, n) {
1069
1085
  const s = a.find((o) => o.id === t);
1070
1086
  if (!s) {
1071
1087
  e.values = [];
@@ -1096,7 +1112,7 @@ function to(e, t, a, n) {
1096
1112
  );
1097
1113
  }
1098
1114
  }
1099
- function ao(e, t, a) {
1115
+ function oo(e, t, a) {
1100
1116
  if (Array.isArray(t))
1101
1117
  e.values = t.flatMap((n) => {
1102
1118
  const s = a.find(
@@ -1127,7 +1143,7 @@ function ao(e, t, a) {
1127
1143
  ];
1128
1144
  }
1129
1145
  }
1130
- const no = {
1146
+ const ro = {
1131
1147
  get(e, t) {
1132
1148
  return e.values?.[0]?.value ?? "";
1133
1149
  },
@@ -1138,9 +1154,9 @@ const no = {
1138
1154
  }
1139
1155
  e.values = [F({ value: t, unitOfMeasureId: a.unitOfMeasureId })];
1140
1156
  }
1141
- }, so = {
1157
+ }, io = {
1142
1158
  get(e, t) {
1143
- return Le(e) ? e.values ?? [] : e.values?.[0]?.value ?? "";
1159
+ return Oe(e) ? e.values ?? [] : e.values?.[0]?.value ?? "";
1144
1160
  },
1145
1161
  set(e, t, a) {
1146
1162
  if (!Array.isArray(t) && Se(t)) {
@@ -1153,35 +1169,35 @@ const no = {
1153
1169
  }
1154
1170
  };
1155
1171
  function Tt(e) {
1156
- return Ys(e) ? no : js(e) && !At(e) ? so : e.valueType === "Boolean" ? Xs : At(e) ? Js : Zs;
1172
+ return Xs(e) ? ro : Qs(e) && !pt(e) ? io : e.valueType === "Boolean" ? eo : pt(e) ? to : Js;
1157
1173
  }
1158
- function Nl(e) {
1174
+ function Bl(e) {
1159
1175
  const { searchDictionary: t, searchMeasurements: a } = e, { loading: n, action: s } = Xt(async (u) => {
1160
1176
  if (u)
1161
1177
  return await t(u);
1162
1178
  });
1163
- async function o(u, E, g) {
1179
+ async function o(u, E, m) {
1164
1180
  if (!u) return;
1165
1181
  const f = await s({
1166
1182
  propertyIds: [u],
1167
1183
  keyword: E,
1168
1184
  skip: 0
1169
1185
  });
1170
- return !g || !f ? f : f.map((d) => {
1171
- const S = d.localizedValues?.find((O) => O.languageCode === g)?.value;
1186
+ return !m || !f ? f : f.map((d) => {
1187
+ const S = d.localizedValues?.find((L) => L.languageCode === m)?.value;
1172
1188
  return { ...d, value: S ?? d.alias };
1173
1189
  });
1174
1190
  }
1175
- async function r(u, E, g) {
1191
+ async function r(u, E, m) {
1176
1192
  if (!(!u || !a))
1177
- return await a(u, g);
1193
+ return await a(u, m);
1178
1194
  }
1179
1195
  function l(u, E) {
1180
1196
  return Tt(u).get(u, E);
1181
1197
  }
1182
1198
  function c(u) {
1183
- const { property: E, value: g, ...f } = u;
1184
- Tt(E).set(E, g, f);
1199
+ const { property: E, value: m, ...f } = u;
1200
+ Tt(E).set(E, m, f);
1185
1201
  }
1186
1202
  return {
1187
1203
  getPropertyValue: l,
@@ -1191,7 +1207,7 @@ function Nl(e) {
1191
1207
  loading: Jt(n)
1192
1208
  };
1193
1209
  }
1194
- function Dl(e) {
1210
+ function Ml(e) {
1195
1211
  const t = (n) => {
1196
1212
  }, a = (n) => {
1197
1213
  (e ?? t)({
@@ -1200,14 +1216,14 @@ function Dl(e) {
1200
1216
  rating: n.rating
1201
1217
  });
1202
1218
  };
1203
- ds(a), Es(a), fs(a), ms(a), gs(a);
1219
+ Es(a), fs(a), gs(a), ms(a), Ss(a);
1204
1220
  }
1205
- const Qt = k("use-blade-widgets");
1206
- function yl(e) {
1207
- const t = Q(Gt);
1221
+ const ea = k("use-blade-widgets");
1222
+ function kl(e) {
1223
+ const t = J(Gt);
1208
1224
  if (!t)
1209
1225
  throw new yt("WidgetService");
1210
- const a = t, n = Q(xt, void 0);
1226
+ const a = t, n = J(xt, void 0);
1211
1227
  if (!n)
1212
1228
  throw new Error(
1213
1229
  "[vc-shell] useBladeWidgets() requires blade context (BladeDescriptorKey). It must be called inside a blade component rendered by VcBladeSlot."
@@ -1215,14 +1231,14 @@ function yl(e) {
1215
1231
  const s = n.value.id;
1216
1232
  Re(() => {
1217
1233
  for (const l of e)
1218
- a.registerWidget(oo(l), s);
1219
- }), en(() => {
1234
+ a.registerWidget(lo(l), s);
1235
+ }), tn(() => {
1220
1236
  for (const l of e)
1221
1237
  a.unregisterWidget(l.id, s);
1222
1238
  });
1223
1239
  function o(l) {
1224
1240
  const u = a.getWidgets(s).find((E) => E.id === l);
1225
- u?.trigger?.onRefresh ? u.trigger.onRefresh() : Qt.warn(`Widget '${l}' has no trigger.onRefresh registered.`);
1241
+ u?.trigger?.onRefresh ? u.trigger.onRefresh() : ea.warn(`Widget '${l}' has no trigger.onRefresh registered.`);
1226
1242
  }
1227
1243
  function r() {
1228
1244
  const l = a.getWidgets(s);
@@ -1231,15 +1247,15 @@ function yl(e) {
1231
1247
  }
1232
1248
  return { refresh: o, refreshAll: r };
1233
1249
  }
1234
- function Bl(e) {
1235
- const t = Q(bn);
1250
+ function Vl(e) {
1251
+ const t = J(Nn);
1236
1252
  if (!t) {
1237
- Qt.warn("useWidgetTrigger() called outside WidgetContainer scope — trigger will not be registered.");
1253
+ ea.warn("useWidgetTrigger() called outside WidgetContainer scope — trigger will not be registered.");
1238
1254
  return;
1239
1255
  }
1240
1256
  t.setTrigger(e);
1241
1257
  }
1242
- function oo(e) {
1258
+ function lo(e) {
1243
1259
  const t = {
1244
1260
  icon: e.icon,
1245
1261
  badge: e.badge,
@@ -1256,7 +1272,7 @@ function oo(e) {
1256
1272
  trigger: e.onRefresh ? { onRefresh: e.onRefresh } : void 0
1257
1273
  };
1258
1274
  }
1259
- function ro(e) {
1275
+ function uo(e) {
1260
1276
  const t = {};
1261
1277
  for (const a of Object.keys(e)) {
1262
1278
  const n = e[a];
@@ -1264,14 +1280,14 @@ function ro(e) {
1264
1280
  }
1265
1281
  return t;
1266
1282
  }
1267
- function Ml(e) {
1283
+ function Ul(e) {
1268
1284
  Bt(
1269
1285
  $t,
1270
- I(() => ro(Mt(e)))
1286
+ I(() => uo(Mt(e)))
1271
1287
  );
1272
1288
  }
1273
- function kl() {
1274
- const e = Q($t);
1289
+ function Fl() {
1290
+ const e = J($t);
1275
1291
  if (!e)
1276
1292
  throw new yt("BladeContext");
1277
1293
  return e;
@@ -1279,18 +1295,18 @@ function kl() {
1279
1295
  function ht(e) {
1280
1296
  return e == null || e === "";
1281
1297
  }
1282
- function Lt(e, t) {
1283
- return cs(e, t, (a, n) => {
1298
+ function Ot(e, t) {
1299
+ return ds(e, t, (a, n) => {
1284
1300
  if (ht(a) && ht(n)) return !0;
1285
1301
  });
1286
1302
  }
1287
- function Vl(e) {
1288
- const t = (r) => J(i(r)), a = N(t(e)), n = N(t(e)), s = N(!1);
1303
+ function Wl(e) {
1304
+ const t = (r) => Q(i(r)), a = N(t(e)), n = N(t(e)), s = N(!1);
1289
1305
  kt(e) && ae(
1290
1306
  e,
1291
1307
  (r) => {
1292
- const l = !Lt(n.value, a.value);
1293
- a.value = J(r), l || (n.value = J(r));
1308
+ const l = !Ot(n.value, a.value);
1309
+ a.value = Q(r), l || (n.value = Q(r));
1294
1310
  },
1295
1311
  { deep: !0 }
1296
1312
  // Deep tracking, if initialValueProp is a Ref to an object/array
@@ -1298,16 +1314,16 @@ function Vl(e) {
1298
1314
  [n, a],
1299
1315
  // Track changes in currentValue or pristineValue
1300
1316
  ([r, l]) => {
1301
- s.value = !Lt(r, l);
1317
+ s.value = !Ot(r, l);
1302
1318
  },
1303
1319
  { deep: !0 }
1304
1320
  );
1305
1321
  const o = (r) => {
1306
1322
  if (r !== void 0) {
1307
1323
  const l = t(r);
1308
- a.value = l, n.value = J(l);
1324
+ a.value = l, n.value = Q(l);
1309
1325
  } else
1310
- a.value = J(n.value);
1326
+ a.value = Q(n.value);
1311
1327
  s.value = !1;
1312
1328
  };
1313
1329
  return {
@@ -1317,12 +1333,12 @@ function Vl(e) {
1317
1333
  resetModificationState: o
1318
1334
  };
1319
1335
  }
1320
- const io = { class: "tw-flex tw-grow-1 tw-border-t tw-border-solid tw-border-t-[--assets-details-border]" }, lo = { class: "assets-details__content tw-grow tw-basis-0 tw-w-full tw-overflow-hidden" }, uo = { class: "tw-p-4" }, co = { class: "assets-details__header" }, Eo = {
1336
+ 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" }, go = { class: "assets-details__header" }, mo = {
1321
1337
  key: 1,
1322
1338
  class: "assets-details__file-preview tw-shrink-0"
1323
- }, fo = { class: "assets-details__meta" };
1339
+ }, So = { class: "assets-details__meta" };
1324
1340
  Ft("AssetsDetails", {});
1325
- const mo = /* @__PURE__ */ H({
1341
+ const Ao = /* @__PURE__ */ H({
1326
1342
  name: "AssetsDetails",
1327
1343
  __name: "assets-details",
1328
1344
  setup(e) {
@@ -1338,8 +1354,8 @@ const mo = /* @__PURE__ */ H({
1338
1354
  set(f) {
1339
1355
  const d = r.value.name;
1340
1356
  if (!d) return;
1341
- const S = d.lastIndexOf("."), O = S > 0 ? d.slice(S) : "";
1342
- r.value.name = f ? f + O : "";
1357
+ const S = d.lastIndexOf("."), L = S > 0 ? d.slice(S) : "";
1358
+ r.value.name = f ? f + L : "";
1343
1359
  }
1344
1360
  }), u = I(() => !s.value || !n.value), E = N([
1345
1361
  {
@@ -1360,34 +1376,34 @@ const mo = /* @__PURE__ */ H({
1360
1376
  },
1361
1377
  disabled: I(() => l.value)
1362
1378
  }
1363
- ]), g = I(() => r.value?.typeId);
1379
+ ]), m = I(() => r.value?.typeId);
1364
1380
  return (f, d) => (b(), D(i(Wt), {
1365
1381
  title: i(t)?.asset?.name,
1366
1382
  subtitle: i(o)("ASSETS.PAGES.DETAILS.SUBTITLE"),
1367
1383
  "toolbar-items": E.value
1368
1384
  }, {
1369
1385
  default: h(() => [
1370
- U("div", io, [
1371
- U("div", lo, [
1386
+ U("div", co, [
1387
+ U("div", Eo, [
1372
1388
  _(i(pn), { "no-padding": !0 }, {
1373
1389
  default: h(() => [
1374
- U("div", uo, [
1375
- _(i(ge), null, {
1390
+ U("div", fo, [
1391
+ _(i(me), null, {
1376
1392
  default: h(() => [
1377
- U("div", co, [
1393
+ U("div", go, [
1378
1394
  i(zt)(r.value.name) ? (b(), D(i(ot), {
1379
1395
  key: 0,
1380
1396
  src: r.value.url,
1381
1397
  size: "xl",
1382
1398
  bordered: !0,
1383
1399
  class: "tw-shrink-0"
1384
- }, null, 8, ["src"])) : (b(), W("div", Eo, [
1400
+ }, null, 8, ["src"])) : (b(), W("div", mo, [
1385
1401
  U("div", {
1386
1402
  class: "assets-details__file-badge",
1387
1403
  style: Vt({ backgroundColor: i(Yt)(r.value.name) })
1388
1404
  }, y(i(jt)(r.value.name)), 5)
1389
1405
  ])),
1390
- U("div", fo, [
1406
+ U("div", So, [
1391
1407
  _(i($e), {
1392
1408
  label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.SIZE"),
1393
1409
  "model-value": i(qt)(r.value.size)
@@ -1406,19 +1422,19 @@ const mo = /* @__PURE__ */ H({
1406
1422
  }, null, 8, ["label", "model-value", "display-value"])
1407
1423
  ])
1408
1424
  ]),
1409
- i(t)?.hiddenFields?.includes("name") ? z("", !0) : (b(), D(i(Z), {
1425
+ i(t)?.hiddenFields?.includes("name") ? q("", !0) : (b(), D(i(X), {
1410
1426
  key: 0,
1411
1427
  label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.NAME.TITLE"),
1412
1428
  name: "asset_name",
1413
1429
  rules: "required",
1414
1430
  "model-value": r.value.name
1415
1431
  }, {
1416
- default: h(({ errorMessage: S, handleChange: O, errors: T }) => [
1417
- _(i($), {
1432
+ default: h(({ errorMessage: S, handleChange: L, errors: T }) => [
1433
+ _(i(K), {
1418
1434
  modelValue: c.value,
1419
1435
  "onUpdate:modelValue": [
1420
1436
  d[0] || (d[0] = (v) => c.value = v),
1421
- O
1437
+ L
1422
1438
  ],
1423
1439
  class: "tw-mb-4",
1424
1440
  label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.NAME.TITLE"),
@@ -1432,7 +1448,7 @@ const mo = /* @__PURE__ */ H({
1432
1448
  ]),
1433
1449
  _: 1
1434
1450
  }, 8, ["label", "model-value"])),
1435
- g.value === "Image" && !i(t)?.hiddenFields?.includes("altText") ? (b(), D(i($), {
1451
+ m.value === "Image" && !i(t)?.hiddenFields?.includes("altText") ? (b(), D(i(K), {
1436
1452
  key: 1,
1437
1453
  modelValue: r.value.altText,
1438
1454
  "onUpdate:modelValue": d[1] || (d[1] = (S) => r.value.altText = S),
@@ -1442,8 +1458,8 @@ const mo = /* @__PURE__ */ H({
1442
1458
  placeholder: i(o)("ASSETS.PAGES.DETAILS.FIELDS.ALT.PLACEHOLDER"),
1443
1459
  tooltip: i(o)("ASSETS.PAGES.DETAILS.FIELDS.ALT.TOOLTIP"),
1444
1460
  disabled: l.value
1445
- }, null, 8, ["modelValue", "label", "placeholder", "tooltip", "disabled"])) : z("", !0),
1446
- i(t)?.hiddenFields?.includes("description") ? z("", !0) : (b(), D(i(An), {
1461
+ }, null, 8, ["modelValue", "label", "placeholder", "tooltip", "disabled"])) : q("", !0),
1462
+ i(t)?.hiddenFields?.includes("description") ? q("", !0) : (b(), D(i(Tn), {
1447
1463
  key: 2,
1448
1464
  modelValue: r.value.description,
1449
1465
  "onUpdate:modelValue": d[2] || (d[2] = (S) => r.value.description = S),
@@ -1465,16 +1481,16 @@ const mo = /* @__PURE__ */ H({
1465
1481
  _: 1
1466
1482
  }, 8, ["title", "subtitle", "toolbar-items"]));
1467
1483
  }
1468
- }), go = mo, So = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1484
+ }), po = Ao, To = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1469
1485
  __proto__: null,
1470
- AssetsDetails: go
1471
- }, Symbol.toStringTag, { value: "Module" })), po = Et({ blades: So }), Ao = { class: "tw-flex tw-items-center tw-justify-center" };
1486
+ AssetsDetails: po
1487
+ }, Symbol.toStringTag, { value: "Module" })), ho = Et({ blades: To }), Oo = { class: "tw-flex tw-items-center tw-justify-center" };
1472
1488
  Ft("AssetsManager", {});
1473
- const To = /* @__PURE__ */ H({
1489
+ const Lo = /* @__PURE__ */ H({
1474
1490
  name: "AssetsManager",
1475
1491
  __name: "assets-manager",
1476
1492
  setup(e) {
1477
- const t = k("assets-manager"), { options: a, openBlade: n } = ut(), { t: s } = le({ useScope: "global" }), o = I(() => a.value.manager), r = I(() => o.value.items.value ?? []), l = I(() => o.value.loading.value), c = I(() => a.value?.title || s("ASSETS_MANAGER.TITLE")), u = N(!1), E = N(), g = N([]), f = I(() => a.value?.disabled), d = N([
1493
+ const t = k("assets-manager"), { options: a, openBlade: n } = ut(), { t: s } = le({ useScope: "global" }), o = I(() => a.value.manager), r = I(() => o.value.items.value ?? []), l = I(() => o.value.loading.value), c = I(() => a.value?.title || s("ASSETS_MANAGER.TITLE")), u = N(!1), E = N(), m = N([]), f = I(() => a.value?.disabled), d = N([
1478
1494
  {
1479
1495
  id: "add",
1480
1496
  title: I(() => s("ASSETS_MANAGER.TOOLBAR.ADD")),
@@ -1490,27 +1506,27 @@ const To = /* @__PURE__ */ H({
1490
1506
  title: I(() => s("ASSETS_MANAGER.TOOLBAR.DELETE")),
1491
1507
  icon: "lucide-trash-2",
1492
1508
  async clickHandler() {
1493
- await o.value.removeMany(g.value);
1509
+ await o.value.removeMany(m.value);
1494
1510
  },
1495
- disabled: I(() => !g.value.length || f.value),
1511
+ disabled: I(() => !m.value.length || f.value),
1496
1512
  isVisible: I(() => !f.value)
1497
1513
  }
1498
1514
  ]);
1499
- async function S(p) {
1500
- if (p.dragIndex !== p.dropIndex) {
1501
- const R = p.value.map((P, B) => (P.sortOrder = B, P));
1515
+ async function S(A) {
1516
+ if (A.dragIndex !== A.dropIndex) {
1517
+ const R = A.value.map((P, B) => (P.sortOrder = B, P));
1502
1518
  o.value.reorder(R);
1503
1519
  }
1504
1520
  }
1505
- function O() {
1521
+ function L() {
1506
1522
  f.value || (u.value = !0);
1507
1523
  }
1508
1524
  function T() {
1509
1525
  f.value || (u.value = !1);
1510
1526
  }
1511
- async function v(p) {
1527
+ async function v(A) {
1512
1528
  if (!f.value) {
1513
- const R = p.dataTransfer?.files;
1529
+ const R = A.dataTransfer?.files;
1514
1530
  if (R && R.length)
1515
1531
  try {
1516
1532
  await C(R);
@@ -1523,28 +1539,28 @@ const To = /* @__PURE__ */ H({
1523
1539
  function w() {
1524
1540
  E.value.value = "", E.value.click();
1525
1541
  }
1526
- async function C(p) {
1527
- if (!p || p.length === 0) return;
1542
+ async function C(A) {
1543
+ if (!A || A.length === 0) return;
1528
1544
  const R = new Set((r.value ?? []).map((B) => B.name).filter(Boolean)), P = new DataTransfer();
1529
- for (const B of Array.from(p)) {
1545
+ for (const B of Array.from(A)) {
1530
1546
  let V = B.name;
1531
1547
  if (R.has(V)) {
1532
- const K = V.includes(".") ? `.${V.split(".").pop()}` : "", ce = V.slice(0, V.length - K.length);
1533
- let pe = 1;
1548
+ const z = V.includes(".") ? `.${V.split(".").pop()}` : "", ce = V.slice(0, V.length - z.length);
1549
+ let Ae = 1;
1534
1550
  for (; R.has(V); )
1535
- V = `${ce}_${pe}${K}`, pe++;
1551
+ V = `${ce}_${Ae}${z}`, Ae++;
1536
1552
  }
1537
1553
  R.add(V), P.items.add(new File([B], V, { type: B.type }));
1538
1554
  }
1539
1555
  try {
1540
- const B = r.value.reduce((V, K) => Math.max(V, K.sortOrder ?? 0), -1);
1556
+ const B = r.value.reduce((V, z) => Math.max(V, z.sortOrder ?? 0), -1);
1541
1557
  await o.value.upload(P.files, B);
1542
1558
  } catch (B) {
1543
1559
  throw t.error("Failed to upload assets:", B), B;
1544
1560
  }
1545
1561
  }
1546
- async function L(p) {
1547
- const P = p.target.files;
1562
+ async function O(A) {
1563
+ const P = A.target.files;
1548
1564
  if (P && P.length)
1549
1565
  try {
1550
1566
  await C(P);
@@ -1552,11 +1568,11 @@ const To = /* @__PURE__ */ H({
1552
1568
  throw t.error("Failed to upload files:", B), B;
1553
1569
  }
1554
1570
  }
1555
- function m(p) {
1571
+ function g(A) {
1556
1572
  n({
1557
1573
  name: "AssetsDetails",
1558
1574
  options: {
1559
- asset: i(p),
1575
+ asset: i(A),
1560
1576
  disabled: f.value,
1561
1577
  hiddenFields: a.value?.hiddenFields,
1562
1578
  assetEditHandler: (R) => {
@@ -1570,48 +1586,48 @@ const To = /* @__PURE__ */ H({
1570
1586
  t.error("Failed to open AssetsDetails blade:", R);
1571
1587
  });
1572
1588
  }
1573
- const A = () => [
1589
+ const p = () => [
1574
1590
  {
1575
1591
  icon: "lucide-trash-2",
1576
1592
  title: I(() => s("ASSETS_MANAGER.TABLE.ACTIONS.DELETE")),
1577
1593
  type: "danger",
1578
- async clickHandler(p) {
1579
- await o.value.remove(p), g.value = [];
1594
+ async clickHandler(A) {
1595
+ await o.value.remove(A), m.value = [];
1580
1596
  }
1581
1597
  }
1582
1598
  ];
1583
- return (p, R) => (b(), D(i(Wt), {
1599
+ return (A, R) => (b(), D(i(Wt), {
1584
1600
  title: c.value,
1585
1601
  "toolbar-items": d.value,
1586
1602
  width: "70%"
1587
1603
  }, {
1588
1604
  default: h(() => [
1589
- tn((b(), W("div", {
1605
+ an((b(), W("div", {
1590
1606
  class: "tw-relative tw-h-full tw-flex-1",
1591
- onDragover: He(O, ["prevent", "stop"]),
1607
+ onDragover: He(L, ["prevent", "stop"]),
1592
1608
  onDragleave: He(T, ["prevent"]),
1593
1609
  onDrop: He(v, ["prevent", "stop"])
1594
1610
  }, [
1595
- _(i(Tn), {
1596
- selection: g.value,
1597
- "onUpdate:selection": R[0] || (R[0] = (P) => g.value = P),
1611
+ _(i(hn), {
1612
+ selection: m.value,
1613
+ "onUpdate:selection": R[0] || (R[0] = (P) => m.value = P),
1598
1614
  items: r.value,
1599
1615
  "state-key": "assets_manager",
1600
1616
  "reorderable-rows": !f.value,
1601
1617
  "selection-mode": f.value ? void 0 : "multiple",
1602
- "row-actions": f.value ? void 0 : A,
1618
+ "row-actions": f.value ? void 0 : p,
1603
1619
  "empty-state": {
1604
1620
  icon: "lucide-cloud-upload",
1605
- title: p.$t("ASSETS_MANAGER.EMPTY.UPLOAD_ASSETS"),
1606
- actionLabel: p.$t("ASSETS_MANAGER.EMPTY.UPLOAD"),
1621
+ title: A.$t("ASSETS_MANAGER.EMPTY.UPLOAD_ASSETS"),
1622
+ actionLabel: A.$t("ASSETS_MANAGER.EMPTY.UPLOAD"),
1607
1623
  actionHandler: w
1608
1624
  },
1609
1625
  class: "tw-h-full tw-w-full",
1610
- onRowClick: R[1] || (R[1] = ({ data: P }) => m(P)),
1626
+ onRowClick: R[1] || (R[1] = ({ data: P }) => g(P)),
1611
1627
  onRowReorder: S
1612
1628
  }, {
1613
1629
  default: h(() => [
1614
- _(i(Ae), {
1630
+ _(i(pe), {
1615
1631
  id: "url",
1616
1632
  title: i(s)("ASSETS_MANAGER.TABLE.HEADER.IMAGE"),
1617
1633
  width: "10%",
@@ -1619,7 +1635,7 @@ const To = /* @__PURE__ */ H({
1619
1635
  type: "image"
1620
1636
  }, {
1621
1637
  body: h(({ data: P }) => [
1622
- U("div", Ao, [
1638
+ U("div", Oo, [
1623
1639
  i(zt)(P.name ?? "") ? (b(), D(i(ot), {
1624
1640
  key: 0,
1625
1641
  bordered: !0,
@@ -1636,13 +1652,13 @@ const To = /* @__PURE__ */ H({
1636
1652
  ]),
1637
1653
  _: 1
1638
1654
  }, 8, ["title"]),
1639
- _(i(Ae), {
1655
+ _(i(pe), {
1640
1656
  id: "name",
1641
1657
  title: i(s)("ASSETS_MANAGER.TABLE.HEADER.NAME"),
1642
1658
  width: "20%",
1643
1659
  "always-visible": ""
1644
1660
  }, null, 8, ["title"]),
1645
- _(i(Ae), {
1661
+ _(i(pe), {
1646
1662
  id: "size",
1647
1663
  title: i(s)("ASSETS_MANAGER.TABLE.HEADER.SIZE"),
1648
1664
  width: "20%",
@@ -1653,7 +1669,7 @@ const To = /* @__PURE__ */ H({
1653
1669
  ]),
1654
1670
  _: 1
1655
1671
  }, 8, ["title"]),
1656
- _(i(Ae), {
1672
+ _(i(pe), {
1657
1673
  id: "sortOrder",
1658
1674
  title: i(s)("ASSETS_MANAGER.TABLE.HEADER.SORT_ORDER"),
1659
1675
  width: "25%",
@@ -1664,7 +1680,7 @@ const To = /* @__PURE__ */ H({
1664
1680
  ]),
1665
1681
  _: 1
1666
1682
  }, 8, ["title"]),
1667
- _(i(Ae), {
1683
+ _(i(pe), {
1668
1684
  id: "createdDate",
1669
1685
  title: i(s)("ASSETS_MANAGER.TABLE.HEADER.CREATED_DATE"),
1670
1686
  width: "25%",
@@ -1675,7 +1691,7 @@ const To = /* @__PURE__ */ H({
1675
1691
  _: 1
1676
1692
  }, 8, ["selection", "items", "reorderable-rows", "selection-mode", "row-actions", "empty-state"])
1677
1693
  ], 32)), [
1678
- [i(ka), l.value]
1694
+ [i(Va), l.value]
1679
1695
  ]),
1680
1696
  U("input", {
1681
1697
  ref_key: "uploader",
@@ -1684,24 +1700,24 @@ const To = /* @__PURE__ */ H({
1684
1700
  hidden: "",
1685
1701
  multiple: "",
1686
1702
  name: "assets_manager",
1687
- onChange: L
1703
+ onChange: O
1688
1704
  }, null, 544)
1689
1705
  ]),
1690
1706
  _: 1
1691
1707
  }, 8, ["title", "toolbar-items"]));
1692
1708
  }
1693
- }), ho = To, Lo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1709
+ }), Ro = Lo, _o = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1694
1710
  __proto__: null,
1695
- AssetsManager: ho
1696
- }, Symbol.toStringTag, { value: "Module" })), Oo = Et({ blades: Lo }), Ot = k("connection-status"), Rt = "vc-framework-offline-status", _t = N(!1), It = N(!0);
1697
- function ea() {
1711
+ AssetsManager: Ro
1712
+ }, Symbol.toStringTag, { value: "Module" })), Io = Et({ blades: _o }), Lt = k("connection-status"), Rt = "vc-framework-offline-status", _t = N(!1), It = N(!0);
1713
+ function ta() {
1698
1714
  if (!_t.value && typeof window < "u") {
1699
1715
  _t.value = !0;
1700
- const { isOnline: e } = ya();
1716
+ const { isOnline: e } = Ba();
1701
1717
  ae(
1702
1718
  e,
1703
1719
  (t) => {
1704
- It.value = t, t ? (Ot.info("Network connection restored"), q.remove(Rt), document.documentElement.classList.remove("vc-offline")) : (Ot.warn("Network connection lost"), q.warning("You are currently offline. Some features may be unavailable.", {
1720
+ It.value = t, t ? (Lt.info("Network connection restored"), Y.remove(Rt), document.documentElement.classList.remove("vc-offline")) : (Lt.warn("Network connection lost"), Y.warning("You are currently offline. Some features may be unavailable.", {
1705
1721
  notificationId: Rt,
1706
1722
  timeout: !1
1707
1723
  }), document.documentElement.classList.add("vc-offline"));
@@ -1713,70 +1729,70 @@ function ea() {
1713
1729
  isOnline: Me(It)
1714
1730
  };
1715
1731
  }
1716
- const Ye = k("slow-network"), Ro = 1e4, _o = ["slow-2g", "2g"];
1732
+ const Ye = k("slow-network"), vo = 1e4, wo = ["slow-2g", "2g"];
1717
1733
  let je = null;
1718
- const ta = "vc-framework-slow-network", Io = 3e3, vo = "Your network is slow or the server is taking longer than usual. Please be patient.";
1734
+ const aa = "vc-framework-slow-network", Co = 3e3, Po = "Your network is slow or the server is taking longer than usual. Please be patient.";
1719
1735
  let te = null;
1720
1736
  function vt() {
1721
- q.warning(vo, {
1722
- notificationId: ta,
1737
+ Y.warning(Po, {
1738
+ notificationId: aa,
1723
1739
  timeout: !1
1724
1740
  });
1725
1741
  }
1726
1742
  function wt() {
1727
- q.remove(ta);
1743
+ Y.remove(aa);
1728
1744
  }
1729
1745
  const Ct = N(!1), ke = N(0), tt = N(!1), Ve = /* @__PURE__ */ new Map(), at = /* @__PURE__ */ new Set(), Ze = I(() => ke.value > 0 || tt.value);
1730
- function wo(e) {
1746
+ function bo(e) {
1731
1747
  const t = setTimeout(() => {
1732
1748
  ke.value++, Ve.delete(e), at.add(e);
1733
- }, Ro);
1749
+ }, vo);
1734
1750
  Ve.set(e, t);
1735
1751
  }
1736
- function Co(e) {
1752
+ function No(e) {
1737
1753
  const t = Ve.get(e);
1738
1754
  t != null ? (clearTimeout(t), Ve.delete(e)) : at.has(e) && (ke.value = Math.max(0, ke.value - 1), at.delete(e));
1739
1755
  }
1740
- function aa() {
1756
+ function na() {
1741
1757
  if (!Ct.value && typeof window < "u") {
1742
1758
  Ct.value = !0;
1743
1759
  const e = navigator.connection;
1744
1760
  e && (je = () => {
1745
- const a = _o.includes(e.effectiveType);
1761
+ const a = wo.includes(e.effectiveType);
1746
1762
  a !== tt.value && Ye.info(`Connection type: ${e.effectiveType} → ${a ? "slow" : "normal"}`), tt.value = a;
1747
1763
  }, e.addEventListener("change", je), je());
1748
- const { isOnline: t } = ea();
1764
+ const { isOnline: t } = ta();
1749
1765
  ae(Ze, (a) => {
1750
1766
  a ? (te != null && (clearTimeout(te), te = null), t.value && (Ye.info("Slow network detected — showing notification"), vt())) : te = setTimeout(() => {
1751
1767
  Ye.info("Network recovered — hiding notification"), wt(), te = null;
1752
- }, Io);
1768
+ }, Co);
1753
1769
  }), ae(t, (a) => {
1754
1770
  a ? Ze.value && vt() : (te != null && (clearTimeout(te), te = null), wt());
1755
1771
  });
1756
1772
  }
1757
1773
  return {
1758
1774
  isSlowNetwork: Ze,
1759
- trackRequest: wo,
1760
- untrackRequest: Co
1775
+ trackRequest: bo,
1776
+ untrackRequest: No
1761
1777
  };
1762
1778
  }
1763
- const Te = k("interceptors"), Po = /(^|\/)(login|signin|sign-in|account\/login|connect\/authorize)(\/|$)/i;
1764
- function bo(e) {
1779
+ const Te = k("interceptors"), Do = /(^|\/)(login|signin|sign-in|account\/login|connect\/authorize)(\/|$)/i;
1780
+ function yo(e) {
1765
1781
  let t;
1766
1782
  try {
1767
1783
  t = new URL(e.url, window.location.origin).pathname;
1768
1784
  } catch {
1769
1785
  return !1;
1770
1786
  }
1771
- if (Po.test(t))
1787
+ if (Do.test(t))
1772
1788
  return !0;
1773
1789
  const a = e.headers?.get?.("content-type") ?? "";
1774
1790
  return e.redirected === !0 && a.includes("text/html");
1775
1791
  }
1776
- function No(e) {
1792
+ function Bo(e) {
1777
1793
  if (window.fetch.__vcInterceptorsInstalled__)
1778
1794
  return Te.warn("registerInterceptors called twice — ignoring second install"), window.fetch;
1779
- const { fetch: a } = window, { signOut: n, isAuthenticated: s } = se(), { trackRequest: o, untrackRequest: r } = aa();
1795
+ const { fetch: a } = window, { signOut: n, isAuthenticated: s } = se(), { trackRequest: o, untrackRequest: r } = na();
1780
1796
  let l = 0;
1781
1797
  const c = (async (...u) => {
1782
1798
  if (window.__DEMO_MODE__)
@@ -1784,7 +1800,7 @@ function No(e) {
1784
1800
  u[0] === "/api/platform/security/login" ? E({
1785
1801
  status: 200,
1786
1802
  text: async () => JSON.stringify({ succeeded: !0 })
1787
- }) : u[0] === "/api/platform/security/currentuser" ? (q.warning(
1803
+ }) : u[0] === "/api/platform/security/currentuser" ? (Y.warning(
1788
1804
  `You are currently in DEMO mode until the first page refresh.
1789
1805
  All API calls are disabled. Please add APP_PLATFORM_URL to your application's .env file to enable API calls.`,
1790
1806
  {
@@ -1799,142 +1815,141 @@ function No(e) {
1799
1815
  });
1800
1816
  });
1801
1817
  {
1802
- let E = function(m) {
1803
- const A = typeof m == "string" ? m : m instanceof Request ? m.url : m.toString();
1818
+ let E = function(g) {
1819
+ const p = typeof g == "string" ? g : g instanceof Request ? g.url : g.toString();
1804
1820
  try {
1805
- const p = new URL(A, window.location.origin);
1806
- return p.origin === window.location.origin && p.pathname.startsWith("/api/");
1821
+ const A = new URL(p, window.location.origin);
1822
+ return A.origin === window.location.origin && A.pathname.startsWith("/api/");
1807
1823
  } catch {
1808
1824
  return !1;
1809
1825
  }
1810
- }, g = function(m) {
1811
- const A = typeof m == "string" ? m : m instanceof Request ? m.url : m.toString();
1826
+ }, m = function(g) {
1827
+ const p = typeof g == "string" ? g : g instanceof Request ? g.url : g.toString();
1812
1828
  try {
1813
- return new URL(A, window.location.origin).origin === window.location.origin;
1829
+ return new URL(p, window.location.origin).origin === window.location.origin;
1814
1830
  } catch {
1815
1831
  return !1;
1816
1832
  }
1817
- }, f = function(m) {
1818
- !m || et() || !s.value || (Dn(), n().catch((A) => {
1819
- Te.error("signOut failed after session expiry:", A);
1833
+ }, f = function(g) {
1834
+ !g || et() || !s.value || (yn(), n().catch((p) => {
1835
+ Te.error("signOut failed after session expiry:", p);
1820
1836
  }).finally(() => {
1821
- Do(e), q.error(
1822
- `Access Denied: Your session has expired or you do not have the necessary permissions.
1823
- Please log in again or contact the administrator for assistance.`
1824
- );
1837
+ Mo(e), Y.error(x.global.t("CORE.ERRORS.SESSION_EXPIRED"));
1825
1838
  }));
1826
1839
  };
1827
1840
  const [d, S] = u;
1828
1841
  if (!E(d)) {
1829
- if (!g(d))
1842
+ if (!m(d))
1830
1843
  return a(...u);
1831
- const m = await a(...u);
1832
- return f(m.status === 401), m;
1844
+ const g = await a(...u);
1845
+ return f(g.status === 401), g;
1833
1846
  }
1834
1847
  if (!navigator.onLine)
1835
- return Te.warn("Request blocked: browser is offline", d), Promise.reject(new Error("Network unavailable. Please check your connection."));
1836
- const O = String(++l);
1837
- o(O);
1848
+ return Te.warn("Request blocked: browser is offline", d), Promise.reject(new Error(x.global.t("CORE.ERRORS.NETWORK_UNAVAILABLE")));
1849
+ const L = String(++l);
1850
+ o(L);
1838
1851
  const T = new AbortController();
1839
1852
  let v = !1;
1840
1853
  const w = setTimeout(() => {
1841
1854
  v = !0, T.abort();
1842
- }, 3e4), C = S?.signal, L = () => T.abort();
1843
- C?.aborted ? L() : C && C.addEventListener("abort", L, { once: !0 });
1855
+ }, 3e4), C = S?.signal, O = () => T.abort();
1856
+ C?.aborted ? O() : C && C.addEventListener("abort", O, { once: !0 });
1844
1857
  try {
1845
- const m = await a(d, {
1858
+ const g = await a(d, {
1846
1859
  ...S || {},
1847
1860
  signal: T.signal
1848
- }), A = m.ok && bo(m);
1849
- if (f(m.status === 401 || A), A && et())
1850
- throw new Nn();
1851
- return m;
1852
- } catch (m) {
1853
- throw v ? new Error("Request timed out. Please try again.") : m;
1861
+ }), p = g.ok && yo(g);
1862
+ if (f(g.status === 401 || p), p && et())
1863
+ throw new Dn();
1864
+ return g;
1865
+ } catch (g) {
1866
+ throw v ? new Error(x.global.t("CORE.ERRORS.REQUEST_TIMED_OUT")) : g;
1854
1867
  } finally {
1855
- r(O), clearTimeout(w), C && C.removeEventListener("abort", L);
1868
+ r(L), clearTimeout(w), C && C.removeEventListener("abort", O);
1856
1869
  }
1857
1870
  }
1858
1871
  });
1859
1872
  return c.__vcInterceptorsInstalled__ = !0, window.fetch = c, c;
1860
1873
  }
1861
- function Do(e) {
1874
+ function Mo(e) {
1862
1875
  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 + "/";
1863
1876
  }
1864
- const na = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_ALL: "Clear all" } }, sa = { 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" } }, oa = { CONTROLS: { CLEAR: "Clear", CLEAR_ALL: "Clear all", CLOSE: "Close", TOGGLE_DROPDOWN: "Toggle dropdown", SEARCH_OPTIONS: "Search options", SELECT_OPTION: "Select option", CLEAR_SELECTION: "Clear selection", COPY_TO_CLIPBOARD: "Copy to clipboard", DELETE_ITEM: "Delete item", SHOW_PASSWORD: "Show password", HIDE_PASSWORD: "Hide password" }, ATOMS: { VC_IMAGE: { LABEL: "Image" }, VC_BANNER: { SHOW_MORE: "Show more", SHOW_LESS: "Show less" }, VC_SCROLLABLE_CONTAINER: { LABEL: "Scrollable content" }, VC_VIDEO: { NO_SOURCE: "No video source" } }, MOLECULES: { VC_SELECT: { CLICK_TO_SELECT: "Click to select...", LOADING: "Loading...", LOADING_MORE: "Loading more...", NO_OPTIONS: "No options" }, VC_FILE_UPLOAD: { DRAG_HERE: "Drag and drop file here or", BROWSE: "browse your files", TAP_TO_UPLOAD: "Tap to select files", UPLOADING: "Uploading..." }, VC_INPUT: { DATE_PLACEHOLDER: "Select date", DATE_TIME_PLACEHOLDER: "Select date and time" }, VC_PAGINATION: { JUMP: "Jump to page:", LABEL: "Pagination", FIRST: "First page", PREVIOUS: "Previous page", NEXT: "Next page", LAST: "Last page", PAGE: "Page {page}" }, VC_MULTIVALUE: { ADD: "Add" }, VC_BREADCRUMBS: { BACK: "Back", LABEL: "Breadcrumb", SHOW_MORE: "Show more breadcrumbs" }, VC_COLOR_INPUT: { CLEAR: "Clear color" }, VC_DATE_PICKER: { CLEAR: "Clear date" }, VC_SLIDER: { PREVIOUS: "Previous slide", NEXT: "Next slide" }, VC_TOAST: { DISMISS: "Dismiss notification" }, VC_EDITOR: { TOOLBAR: { LABEL: "Text formatting", BOLD: "Bold", ITALIC: "Italic", UNDERLINE: "Underline", STRIKETHROUGH: "Strikethrough", HEADING_1: "Heading 1", HEADING_2: "Heading 2", HEADING_3: "Heading 3", BULLET_LIST: "Bullet list", NUMBERED_LIST: "Numbered list", BLOCKQUOTE: "Blockquote", INSERT_LINK: "Insert link", INSERT_IMAGE: "Insert image", INSERT_TABLE: "Insert table", DELETE_TABLE: "Delete table", ADD_COLUMN_BEFORE: "Add column before", ADD_COLUMN_AFTER: "Add column after", ADD_ROW_BEFORE: "Add row before", ADD_ROW_AFTER: "Add row after", DELETE_COLUMN: "Delete column", DELETE_ROW: "Delete row" }, FONT_SIZE: "Font size", VIEW: { PREVIEW: "Preview", SPLIT: "Side-by-side view", SOURCE: "Source code" } } }, ORGANISMS: { VC_DYNAMIC_PROPERTY: { ADD: "Add value", VALUE_TYPE: { COLOR: { PLACEHOLDER: "Color code", NAME: "Color name" } } }, VC_GALLERY: { INTERNAL: { VC_GALLERY_ITEM: { FULLSCREEN: "Fullscreen", EDIT: "Edit", DELETE: "Delete" }, VC_GALLERY_PREVIEW: { COPY_IMAGE_LINK: "copy image link" }, VC_GALLERY_FILMSTRIP: { PREVIOUS: "Previous images", NEXT: "Next images" } }, GALLERY_IS_EMPTY: "Gallery is empty", DROP_TO_UPLOAD: "Drop to upload", DRAG_IMAGES_HERE: "Drag images here or", BROWSE_IMAGES: "browse your files", UPLOAD: "Upload", OR_DROP_HERE: "or drop here", SHOW_ALL: "Expand ({count})", COLLAPSE: "Collapse" }, VC_APP: { NOTIFICATIONS: "Notifications", OPEN_MENU: "Open menu", CLOSE_MENU: "Close menu", INTERNAL: { VC_APP_BAR: { BACK: "Back" }, MOBILE_LAYOUT: { TAB_MENU: "Menu", TAB_HUB: "Hub" }, APP_HUB: { SEARCH_PLACEHOLDER: "Search applications and widgets", APPLICATIONS: "Applications", WIDGETS: "Widgets", NO_APPLICATIONS: "No applications found", NO_WIDGETS: "No widgets found", LIST_VIEW: "List view", TILE_VIEW: "Tile view" } } }, BLADE_NAVIGATION: { ARIA_LABEL: "Blade navigation" }, VC_BLADE: { SEE_DETAILS: "See details", UNSAVED_CHANGES: "Has unsaved changes", ERROR_POPUP: { TITLE: "Error details", COPY_ERROR: "copy content", CLOSE: "dismiss" }, MORE: "More", TOOLBAR: "Toolbar actions", CLOSE_MENU: "Close menu", PANEL: "Panel" }, VC_BLADE_HEADER: { UNSAVED_CHANGES: "Has unsaved changes", NO_CHANGES: "No unsaved changes", CLOSE: "Close", MAXIMIZE: "Maximize", RESTORE: "Restore" }, VC_TABLE: { SELECT_ROW: "Select row", SELECT_ALL_ROWS: "Select all rows", EXPAND_ROW: "Toggle row details", CURRENT_PAGE_SELECTED: "All items in this page are selected.", SELECT_ALL: "Select all items", ALL_SELECTED: "All items are selected.", ALL_SELECTED_COUNT: "All {count} items selected", SELECT_ALL_COUNT: "Select all {count} items", CANCEL: "Clear selection", ALL_ACTIONS: "All actions", MORE: "More", ALL_FILTERS: "Filters", SEARCH: "Search...", EMPTY: "List is empty.", EMPTY_TITLE: "No data", EMPTY_DESCRIPTION: "No items to display", NOT_FOUND: "Nothing found.", NOT_FOUND_TITLE: "No results found", NOT_FOUND_DESCRIPTION: "Try adjusting your search or filters", TOTALS: "Totals:", ACTIONS: "Actions", NOT_SET: "Not set", SELECTED: "Selected", SELECT_ALL_TRUNCATED: "Select all", PULL_TO_REFRESH: "Pull to refresh", RELEASE_TO_REFRESH: "Release to refresh", REFRESHING: "Refreshing...", ADD_ROW: "Add row", LOADING: "Loading...", PAGE_INFO: "Page {current} of {total}", COLUMN_FILTER: { APPLY: "Apply", CLEAR: "Clear", FROM: "From", TO: "To", TITLE: "Filter column" }, GLOBAL_FILTERS: { BUTTON: "Filters", TITLE: "Filters" }, COLUMN_SWITCHER: { BUTTON: "Columns", TITLE: "Show/Hide Columns", SHOW_ALL: "Show All", RESET: "Reset" }, OF: "of", PAGE: "Page" }, VC_POPUP: { OK: "OK", CONFIRM: "Confirm", CANCEL: "Cancel", CLOSE: "Close", TITLE: { CONFIRMATION: "Confirmation", ERROR: "Error", INFO: "Info" } } }, THEME_SELECTOR: { THEME_CHANGED: " theme", THEME_SELECTOR: "Theme" }, CHANGE_PASSWORD: { TITLE: "Change password", TITLE_FORCED: "Password expired", SUBTITLE_FORCED: "Please set a new password", FORCED: { LABEL: "Your password has expired. You must change the password to continue using the manager." }, CURRENT_PASSWORD: { LABEL: "Current password", PLACEHOLDER: "Enter password" }, NEW_PASSWORD: { LABEL: "New password", PLACEHOLDER: "Enter password" }, CONFIRM_PASSWORD: { LABEL: "Confirm password", PLACEHOLDER: "Confirm password" }, CANCEL: "Cancel", SAVE: "Update", ERRORS: { "Repeat-password": "Passwords are not same", "Equal-passwords": "The new password must not match the old one", "Invalid-token": "Token is invalid or expired", "Password-too-weak": "New password does not comply one or more password security policies:", PasswordTooShort: "Passwords too short", PasswordRequiresUniqueChars: "Passwords must use different characters", PasswordRequiresLower: "Passwords must have at least one lowercase ('a'-'z')", PasswordRequiresUpper: "Passwords must have at least one uppercase ('A'-'Z')", PasswordRequiresDigit: "Passwords must have at least one digit ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwords must have at least one non alphanumeric character", "Incorrect password.": "You entered an incorrect password", "You have used this password in the past. Choose another one.": "You have used this password in the past. Choose another one." } }, APP_HUB: { TITLE: "Applications" }, NOTIFICATION_DROPDOWN: { TITLE: "Notifications", EMPTY: "No notifications yet" }, LANGUAGE_SELECTOR: { TITLE: "Language" }, FILTERS: { APPLY: "Apply filters", RESET: "Reset" } }, ra = { 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." } }, ia = { TITLE: "Welcome back", SUBTITLE: "Sign in to your account to continue", FIELDS: { LOGIN: { LABEL: "Email", PLACEHOLDER: "Enter your email" }, PASSWORD: { LABEL: "Password", PLACEHOLDER: "Enter your password" }, FORGOT_PASSWORD: { TITLE: "Forgot password", LABEL: "Email", PLACEHOLDER: "Please enter your email" } }, FORGOT_PASSWORD_BUTTON: "Forgot password?", BUTTON: "Sign in", OR: "or", FORGOT_BUTTON: "Submit", BACK_BUTTON: "Back", BUTTON_OK: "Ok", RESET_EMAIL_TEXT: "We will send you an email with instructions on how to reset your password.", RESET_EMAIL_SENT: "Email with instructions has been sent to you.", SSO_NO_PROVIDERS_ERROR: "SSO authentication is not configured. Please contact your administrator.", ERRORS: { INVALID_CREDENTIALS: "The login or password is incorrect.", AUTH_WITH_CODE: "Authentication error (code: {code}).", AUTH_GENERIC: "Authentication error: {detail}" } }, la = { 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}" }, ua = { 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." } }, ca = { 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" } } }, da = { 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" } } } } }, Ea = { _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" }, fa = { ACCESS_RESTRICTED: "Access restricted" }, ma = { LOADING: "Loading Virto OZ..." }, ga = { 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" }, Sa = { no_options: "No options" }, yo = {
1865
- CORE: na,
1866
- SHELL: sa,
1867
- COMPONENTS: oa,
1868
- INVITATION: ra,
1869
- LOGIN: ia,
1870
- FORGOT_PASSWORD: la,
1871
- PASSWORDRESET: ua,
1872
- ASSETS_MANAGER: ca,
1873
- ASSETS: da,
1874
- messages: Ea,
1875
- PERMISSION_MESSAGES: fa,
1877
+ const sa = { ERRORS: { SESSION_EXPIRED: `Access Denied: Your session has expired or you do not have the necessary permissions.
1878
+ Please log in again or contact the administrator for assistance.`, NETWORK_UNAVAILABLE: "Network unavailable. Please check your connection.", REQUEST_TIMED_OUT: "Request timed out. Please try again." }, THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_ALL: "Clear all" } }, oa = { 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" } }, ra = { CONTROLS: { CLEAR: "Clear", CLEAR_ALL: "Clear all", CLOSE: "Close", TOGGLE_DROPDOWN: "Toggle dropdown", SEARCH_OPTIONS: "Search options", SELECT_OPTION: "Select option", CLEAR_SELECTION: "Clear selection", COPY_TO_CLIPBOARD: "Copy to clipboard", DELETE_ITEM: "Delete item", SHOW_PASSWORD: "Show password", HIDE_PASSWORD: "Hide password" }, ATOMS: { VC_IMAGE: { LABEL: "Image" }, VC_BANNER: { SHOW_MORE: "Show more", SHOW_LESS: "Show less" }, VC_SCROLLABLE_CONTAINER: { LABEL: "Scrollable content" }, VC_VIDEO: { NO_SOURCE: "No video source" } }, MOLECULES: { VC_SELECT: { CLICK_TO_SELECT: "Click to select...", LOADING: "Loading...", LOADING_MORE: "Loading more...", NO_OPTIONS: "No options" }, VC_FILE_UPLOAD: { DRAG_HERE: "Drag and drop file here or", BROWSE: "browse your files", TAP_TO_UPLOAD: "Tap to select files", UPLOADING: "Uploading..." }, VC_INPUT: { DATE_PLACEHOLDER: "Select date", DATE_TIME_PLACEHOLDER: "Select date and time" }, VC_PAGINATION: { JUMP: "Jump to page:", LABEL: "Pagination", FIRST: "First page", PREVIOUS: "Previous page", NEXT: "Next page", LAST: "Last page", PAGE: "Page {page}" }, VC_MULTIVALUE: { ADD: "Add" }, VC_BREADCRUMBS: { BACK: "Back", LABEL: "Breadcrumb", SHOW_MORE: "Show more breadcrumbs" }, VC_COLOR_INPUT: { CLEAR: "Clear color" }, VC_DATE_PICKER: { CLEAR: "Clear date" }, VC_SLIDER: { PREVIOUS: "Previous slide", NEXT: "Next slide" }, VC_TOAST: { DISMISS: "Dismiss notification" }, VC_EDITOR: { TOOLBAR: { LABEL: "Text formatting", BOLD: "Bold", ITALIC: "Italic", UNDERLINE: "Underline", STRIKETHROUGH: "Strikethrough", HEADING_1: "Heading 1", HEADING_2: "Heading 2", HEADING_3: "Heading 3", BULLET_LIST: "Bullet list", NUMBERED_LIST: "Numbered list", BLOCKQUOTE: "Blockquote", INSERT_LINK: "Insert link", INSERT_IMAGE: "Insert image", INSERT_TABLE: "Insert table", DELETE_TABLE: "Delete table", ADD_COLUMN_BEFORE: "Add column before", ADD_COLUMN_AFTER: "Add column after", ADD_ROW_BEFORE: "Add row before", ADD_ROW_AFTER: "Add row after", DELETE_COLUMN: "Delete column", DELETE_ROW: "Delete row" }, FONT_SIZE: "Font size", VIEW: { PREVIEW: "Preview", SPLIT: "Side-by-side view", SOURCE: "Source code" } } }, ORGANISMS: { VC_DYNAMIC_PROPERTY: { ADD: "Add value", VALUE_TYPE: { COLOR: { PLACEHOLDER: "Color code", NAME: "Color name" } } }, VC_GALLERY: { INTERNAL: { VC_GALLERY_ITEM: { FULLSCREEN: "Fullscreen", EDIT: "Edit", DELETE: "Delete" }, VC_GALLERY_PREVIEW: { COPY_IMAGE_LINK: "copy image link" }, VC_GALLERY_FILMSTRIP: { PREVIOUS: "Previous images", NEXT: "Next images" } }, GALLERY_IS_EMPTY: "Gallery is empty", DROP_TO_UPLOAD: "Drop to upload", DRAG_IMAGES_HERE: "Drag images here or", BROWSE_IMAGES: "browse your files", UPLOAD: "Upload", OR_DROP_HERE: "or drop here", SHOW_ALL: "Expand ({count})", COLLAPSE: "Collapse" }, VC_APP: { NOTIFICATIONS: "Notifications", OPEN_MENU: "Open menu", CLOSE_MENU: "Close menu", INTERNAL: { VC_APP_BAR: { BACK: "Back" }, MOBILE_LAYOUT: { TAB_MENU: "Menu", TAB_HUB: "Hub" }, APP_HUB: { SEARCH_PLACEHOLDER: "Search applications and widgets", APPLICATIONS: "Applications", WIDGETS: "Widgets", NO_APPLICATIONS: "No applications found", NO_WIDGETS: "No widgets found", LIST_VIEW: "List view", TILE_VIEW: "Tile view" } } }, BLADE_NAVIGATION: { ARIA_LABEL: "Blade navigation" }, VC_BLADE: { SEE_DETAILS: "See details", UNSAVED_CHANGES: "Has unsaved changes", ERROR_POPUP: { TITLE: "Error details", COPY_ERROR: "copy content", CLOSE: "dismiss" }, MORE: "More", TOOLBAR: "Toolbar actions", CLOSE_MENU: "Close menu", PANEL: "Panel" }, VC_BLADE_HEADER: { UNSAVED_CHANGES: "Has unsaved changes", NO_CHANGES: "No unsaved changes", CLOSE: "Close", MAXIMIZE: "Maximize", RESTORE: "Restore" }, VC_TABLE: { SELECT_ROW: "Select row", SELECT_ALL_ROWS: "Select all rows", EXPAND_ROW: "Toggle row details", CURRENT_PAGE_SELECTED: "All items in this page are selected.", SELECT_ALL: "Select all items", ALL_SELECTED: "All items are selected.", ALL_SELECTED_COUNT: "All {count} items selected", SELECT_ALL_COUNT: "Select all {count} items", CANCEL: "Clear selection", ALL_ACTIONS: "All actions", MORE: "More", ALL_FILTERS: "Filters", SEARCH: "Search...", EMPTY: "List is empty.", EMPTY_TITLE: "No data", EMPTY_DESCRIPTION: "No items to display", NOT_FOUND: "Nothing found.", NOT_FOUND_TITLE: "No results found", NOT_FOUND_DESCRIPTION: "Try adjusting your search or filters", TOTALS: "Totals:", ACTIONS: "Actions", NOT_SET: "Not set", SELECTED: "Selected", SELECT_ALL_TRUNCATED: "Select all", PULL_TO_REFRESH: "Pull to refresh", RELEASE_TO_REFRESH: "Release to refresh", REFRESHING: "Refreshing...", ADD_ROW: "Add row", LOADING: "Loading...", PAGE_INFO: "Page {current} of {total}", COLUMN_FILTER: { APPLY: "Apply", CLEAR: "Clear", FROM: "From", TO: "To", TITLE: "Filter column" }, GLOBAL_FILTERS: { BUTTON: "Filters", TITLE: "Filters" }, COLUMN_SWITCHER: { BUTTON: "Columns", TITLE: "Show/Hide Columns", SHOW_ALL: "Show All", RESET: "Reset" }, OF: "of", PAGE: "Page" }, VC_POPUP: { OK: "OK", CONFIRM: "Confirm", CANCEL: "Cancel", CLOSE: "Close", TITLE: { CONFIRMATION: "Confirmation", ERROR: "Error", INFO: "Info" } } }, THEME_SELECTOR: { THEME_CHANGED: " theme", THEME_SELECTOR: "Theme" }, CHANGE_PASSWORD: { TITLE: "Change password", TITLE_FORCED: "Password expired", SUBTITLE_FORCED: "Please set a new password", FORCED: { LABEL: "Your password has expired. You must change the password to continue using the manager." }, CURRENT_PASSWORD: { LABEL: "Current password", PLACEHOLDER: "Enter password" }, NEW_PASSWORD: { LABEL: "New password", PLACEHOLDER: "Enter password" }, CONFIRM_PASSWORD: { LABEL: "Confirm password", PLACEHOLDER: "Confirm password" }, CANCEL: "Cancel", SAVE: "Update", ERRORS: { "Repeat-password": "Passwords are not same", "Equal-passwords": "The new password must not match the old one", "Invalid-token": "Token is invalid or expired", "Password-too-weak": "New password does not comply one or more password security policies:", PasswordTooShort: "Passwords too short", PasswordRequiresUniqueChars: "Passwords must use different characters", PasswordRequiresLower: "Passwords must have at least one lowercase ('a'-'z')", PasswordRequiresUpper: "Passwords must have at least one uppercase ('A'-'Z')", PasswordRequiresDigit: "Passwords must have at least one digit ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwords must have at least one non alphanumeric character", "Incorrect password.": "You entered an incorrect password", "You have used this password in the past. Choose another one.": "You have used this password in the past. Choose another one." } }, APP_HUB: { TITLE: "Applications" }, NOTIFICATION_DROPDOWN: { TITLE: "Notifications", EMPTY: "No notifications yet" }, LANGUAGE_SELECTOR: { TITLE: "Language" }, FILTERS: { APPLY: "Apply filters", RESET: "Reset" } }, ia = { 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." } }, la = { TITLE: "Welcome back", SUBTITLE: "Sign in to your account to continue", FIELDS: { LOGIN: { LABEL: "Email", PLACEHOLDER: "Enter your email" }, PASSWORD: { LABEL: "Password", PLACEHOLDER: "Enter your password" }, FORGOT_PASSWORD: { TITLE: "Forgot password", LABEL: "Email", PLACEHOLDER: "Please enter your email" } }, FORGOT_PASSWORD_BUTTON: "Forgot password?", BUTTON: "Sign in", OR: "or", FORGOT_BUTTON: "Submit", BACK_BUTTON: "Back", BUTTON_OK: "Ok", RESET_EMAIL_TEXT: "We will send you an email with instructions on how to reset your password.", RESET_EMAIL_SENT: "Email with instructions has been sent to you.", SSO_NO_PROVIDERS_ERROR: "SSO authentication is not configured. Please contact your administrator.", ERRORS: { INVALID_CREDENTIALS: "The login or password is incorrect.", AUTH_WITH_CODE: "Authentication error (code: {code}).", AUTH_GENERIC: "Authentication error: {detail}" } }, ua = { 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." } }, da = { 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" } } }, Ea = { 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" } } } } }, fa = { _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" }, ma = { LOADING: "Loading Virto OZ..." }, Sa = { 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" }, Aa = { no_options: "No options" }, ko = {
1879
+ CORE: sa,
1880
+ SHELL: oa,
1881
+ COMPONENTS: ra,
1882
+ INVITATION: ia,
1883
+ LOGIN: la,
1884
+ FORGOT_PASSWORD: ua,
1885
+ PASSWORDRESET: ca,
1886
+ ASSETS_MANAGER: da,
1887
+ ASSETS: Ea,
1888
+ messages: fa,
1889
+ PERMISSION_MESSAGES: ga,
1876
1890
  AI_AGENT: ma,
1877
- VC_SCHEDULER: ga,
1878
- common: Sa
1879
- }, Bo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1891
+ VC_SCHEDULER: Sa,
1892
+ common: Aa
1893
+ }, Vo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1880
1894
  __proto__: null,
1881
1895
  AI_AGENT: ma,
1882
- ASSETS: da,
1883
- ASSETS_MANAGER: ca,
1884
- COMPONENTS: oa,
1885
- CORE: na,
1886
- FORGOT_PASSWORD: la,
1887
- INVITATION: ra,
1888
- LOGIN: ia,
1889
- PASSWORDRESET: ua,
1890
- PERMISSION_MESSAGES: fa,
1891
- SHELL: sa,
1892
- VC_SCHEDULER: ga,
1893
- common: Sa,
1894
- default: yo,
1895
- messages: Ea
1896
- }, Symbol.toStringTag, { value: "Module" })), pa = { THEMES: { LIGHT: "Hell", DARK: "Dunkel" }, NOTIFICATIONS: { CLEAR_ALL: "Alle löschen" } }, Aa = { NAVIGATION_ARIA_LABEL: "Hauptnavigation", SIDEBAR: { SEARCH_PLACEHOLDER: "Suchbegriff" }, USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Einstellungen", CHANGE_PASSWORD: "Passwort ändern", PROFILE: "Profil", LOGOUT: "Abmelden" } }, Ta = { CONTROLS: { CLEAR: "Löschen", CLEAR_ALL: "Alle löschen", CLOSE: "Schließen", TOGGLE_DROPDOWN: "Dropdown umschalten", SEARCH_OPTIONS: "Optionen suchen", SELECT_OPTION: "Option auswählen", CLEAR_SELECTION: "Auswahl aufheben", COPY_TO_CLIPBOARD: "In die Zwischenablage kopieren", DELETE_ITEM: "Element löschen", SHOW_PASSWORD: "Passwort anzeigen", HIDE_PASSWORD: "Passwort verbergen" }, ATOMS: { VC_IMAGE: { LABEL: "Bild" }, VC_BANNER: { SHOW_MORE: "Mehr anzeigen", SHOW_LESS: "Weniger anzeigen" }, VC_SCROLLABLE_CONTAINER: { LABEL: "Scrollbarer Inhalt" }, VC_VIDEO: { NO_SOURCE: "Keine Videoquelle" } }, MOLECULES: { VC_SELECT: { CLICK_TO_SELECT: "Zum Auswählen klicken...", LOADING: "Wird geladen...", LOADING_MORE: "Mehr laden...", NO_OPTIONS: "Keine Optionen" }, VC_FILE_UPLOAD: { DRAG_HERE: "Datei hier ablegen oder", BROWSE: "Dateien durchsuchen", TAP_TO_UPLOAD: "Tippen, um Dateien auszuwählen", UPLOADING: "Wird hochgeladen..." }, VC_INPUT: { DATE_PLACEHOLDER: "Datum auswählen", DATE_TIME_PLACEHOLDER: "Datum und Uhrzeit auswählen" }, VC_PAGINATION: { JUMP: "Zur Seite springen:", LABEL: "Seitennummerierung", FIRST: "Erste Seite", PREVIOUS: "Vorherige Seite", NEXT: "Nächste Seite", LAST: "Letzte Seite", PAGE: "Seite {page}" }, VC_MULTIVALUE: { ADD: "Hinzufügen" }, VC_BREADCRUMBS: { BACK: "Zurück", LABEL: "Brotkrümelnavigation", SHOW_MORE: "Weitere Brotkrümel anzeigen" }, VC_COLOR_INPUT: { CLEAR: "Farbe löschen" }, VC_DATE_PICKER: { CLEAR: "Datum löschen" }, VC_SLIDER: { PREVIOUS: "Vorherige Folie", NEXT: "Nächste Folie" }, VC_TOAST: { DISMISS: "Benachrichtigung schließen" }, VC_EDITOR: { TOOLBAR: { LABEL: "Textformatierung", BOLD: "Fett", ITALIC: "Kursiv", UNDERLINE: "Unterstrichen", STRIKETHROUGH: "Durchgestrichen", HEADING_1: "Überschrift 1", HEADING_2: "Überschrift 2", HEADING_3: "Überschrift 3", BULLET_LIST: "Aufzählungsliste", NUMBERED_LIST: "Nummerierte Liste", BLOCKQUOTE: "Blockzitat", INSERT_LINK: "Link einfügen", INSERT_IMAGE: "Bild einfügen", INSERT_TABLE: "Tabelle einfügen", DELETE_TABLE: "Tabelle löschen", ADD_COLUMN_BEFORE: "Spalte davor einfügen", ADD_COLUMN_AFTER: "Spalte danach einfügen", ADD_ROW_BEFORE: "Zeile davor einfügen", ADD_ROW_AFTER: "Zeile danach einfügen", DELETE_COLUMN: "Spalte löschen", DELETE_ROW: "Zeile löschen" }, FONT_SIZE: "Schriftgröße", VIEW: { PREVIEW: "Vorschau", SPLIT: "Nebeneinander-Ansicht", SOURCE: "Quellcode" } } }, ORGANISMS: { VC_DYNAMIC_PROPERTY: { ADD: "Wert hinzufügen", VALUE_TYPE: { COLOR: { PLACEHOLDER: "Farbcode", NAME: "Farbname" } } }, VC_GALLERY: { INTERNAL: { VC_GALLERY_ITEM: { FULLSCREEN: "Vollbild", EDIT: "Bearbeiten", DELETE: "Löschen" }, VC_GALLERY_PREVIEW: { COPY_IMAGE_LINK: "Bildlink kopieren" }, VC_GALLERY_FILMSTRIP: { PREVIOUS: "Vorherige Bilder", NEXT: "Nächste Bilder" } }, GALLERY_IS_EMPTY: "Galerie ist leer", DROP_TO_UPLOAD: "Zum Hochladen ablegen", DRAG_IMAGES_HERE: "Bilder hierher ziehen oder", BROWSE_IMAGES: "Dateien durchsuchen", UPLOAD: "Hochladen", OR_DROP_HERE: "oder hierher ziehen", SHOW_ALL: "Erweitern ({count})", COLLAPSE: "Einklappen" }, VC_APP: { NOTIFICATIONS: "Benachrichtigungen", OPEN_MENU: "Menü öffnen", CLOSE_MENU: "Menü schließen", INTERNAL: { VC_APP_BAR: { BACK: "Zurück" }, MOBILE_LAYOUT: { TAB_MENU: "Menü", TAB_HUB: "Hub" }, APP_HUB: { SEARCH_PLACEHOLDER: "Anwendungen und Widgets suchen", APPLICATIONS: "Anwendungen", WIDGETS: "Widgets", NO_APPLICATIONS: "Keine Anwendungen gefunden", NO_WIDGETS: "Keine Widgets gefunden", LIST_VIEW: "Listenansicht", TILE_VIEW: "Kachelansicht" } } }, BLADE_NAVIGATION: { ARIA_LABEL: "Blade-Navigation" }, VC_BLADE: { SEE_DETAILS: "Details anzeigen", UNSAVED_CHANGES: "Hat ungespeicherte Änderungen", ERROR_POPUP: { TITLE: "Fehlerdetails", COPY_ERROR: "Inhalt kopieren", CLOSE: "schließen" }, MORE: "Mehr", TOOLBAR: "Toolbar-Aktionen", CLOSE_MENU: "Menü schließen", PANEL: "Panel" }, VC_BLADE_HEADER: { UNSAVED_CHANGES: "Hat ungespeicherte Änderungen", NO_CHANGES: "Keine ungespeicherten Änderungen", CLOSE: "Schließen", MAXIMIZE: "Maximieren", RESTORE: "Wiederherstellen" }, VC_TABLE: { SELECT_ROW: "Zeile auswählen", SELECT_ALL_ROWS: "Alle Zeilen auswählen", EXPAND_ROW: "Zeilendetails umschalten", CURRENT_PAGE_SELECTED: "Alle Elemente auf dieser Seite sind ausgewählt.", SELECT_ALL: "Alle Elemente auswählen", ALL_SELECTED: "Alle Elemente sind ausgewählt.", ALL_SELECTED_COUNT: "Alle {count} Elemente ausgewählt", SELECT_ALL_COUNT: "Alle {count} Elemente auswählen", CANCEL: "Auswahl aufheben", ALL_ACTIONS: "Alle Aktionen", MORE: "Mehr", ALL_FILTERS: "Filter", SEARCH: "Suchen...", EMPTY: "Liste ist leer.", EMPTY_TITLE: "Keine Daten", EMPTY_DESCRIPTION: "Keine Elemente zum Anzeigen", NOT_FOUND: "Nichts gefunden.", NOT_FOUND_TITLE: "Keine Ergebnisse gefunden", NOT_FOUND_DESCRIPTION: "Passen Sie Ihre Suche oder Filter an", TOTALS: "Gesamt:", ACTIONS: "Aktionen", NOT_SET: "Nicht festgelegt", SELECTED: "Ausgewählt", SELECT_ALL_TRUNCATED: "Alle auswählen", PULL_TO_REFRESH: "Zum Aktualisieren ziehen", RELEASE_TO_REFRESH: "Zum Aktualisieren loslassen", REFRESHING: "Wird aktualisiert...", ADD_ROW: "Zeile hinzufügen", LOADING: "Wird geladen...", PAGE_INFO: "Seite {current} von {total}", COLUMN_FILTER: { APPLY: "Anwenden", CLEAR: "Löschen", FROM: "Von", TO: "Bis", TITLE: "Spalte filtern" }, GLOBAL_FILTERS: { BUTTON: "Filter", TITLE: "Filter" }, COLUMN_SWITCHER: { BUTTON: "Spalten", TITLE: "Spalten ein-/ausblenden", SHOW_ALL: "Alle anzeigen", RESET: "Zurücksetzen" }, OF: "von", PAGE: "Seite" }, VC_POPUP: { OK: "OK", CONFIRM: "Bestätigen", CANCEL: "Abbrechen", CLOSE: "Schließen", TITLE: { CONFIRMATION: "Bestätigung", ERROR: "Fehler", INFO: "Info" } } }, THEME_SELECTOR: { THEME_CHANGED: " Thema", THEME_SELECTOR: "Themen" }, CHANGE_PASSWORD: { TITLE: "Passwort ändern", TITLE_FORCED: "Passwort abgelaufen", SUBTITLE_FORCED: "Bitte legen Sie ein neues Passwort fest", FORCED: { LABEL: "Ihr Passwort ist abgelaufen. Sie müssen das Passwort ändern, um den Manager weiter zu nutzen." }, CURRENT_PASSWORD: { LABEL: "Aktuelles Passwort", PLACEHOLDER: "Passwort eingeben" }, NEW_PASSWORD: { LABEL: "Neues Passwort", PLACEHOLDER: "Passwort eingeben" }, CONFIRM_PASSWORD: { LABEL: "Passwort bestätigen", PLACEHOLDER: "Passwort bestätigen" }, CANCEL: "Abbrechen", SAVE: "Aktualisieren", ERRORS: { "Repeat-password": "Passwörter stimmen nicht überein", "Equal-passwords": "Das neue Passwort darf nicht mit dem alten übereinstimmen", "Invalid-token": "Token ist ungültig oder abgelaufen", "Password-too-weak": "Neues Passwort erfüllt eine oder mehrere Passwort-Sicherheitsrichtlinien nicht:", PasswordTooShort: "Passwort zu kurz", PasswordRequiresUniqueChars: "Passwörter müssen unterschiedliche Zeichen verwenden", PasswordRequiresLower: "Passwörter müssen mindestens einen Kleinbuchstaben enthalten ('a'-'z')", PasswordRequiresUpper: "Passwörter müssen mindestens einen Großbuchstaben enthalten ('A'-'Z')", PasswordRequiresDigit: "Passwörter müssen mindestens eine Ziffer enthalten ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwörter müssen mindestens ein nicht-alphanumerisches Zeichen enthalten", "Incorrect password.": "Sie haben ein falsches Passwort eingegeben", "You have used this password in the past. Choose another one.": "Sie haben dieses Passwort in der Vergangenheit verwendet. Wählen Sie ein anderes." } }, APP_HUB: { TITLE: "Anwendungen" }, NOTIFICATION_DROPDOWN: { TITLE: "Benachrichtigungen", EMPTY: "Noch keine Benachrichtigungen" }, LANGUAGE_SELECTOR: { TITLE: "Sprache" }, FILTERS: { APPLY: "Filter anwenden", RESET: "Zurücksetzen" } }, ha = { 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." } }, La = { TITLE: "Willkommen zurück", SUBTITLE: "Melden Sie sich bei Ihrem Konto an, um fortzufahren", FIELDS: { LOGIN: { LABEL: "E-Mail", PLACEHOLDER: "Geben Sie Ihre E-Mail-Adresse ein" }, PASSWORD: { LABEL: "Passwort", PLACEHOLDER: "Geben Sie Ihr Passwort ein" }, FORGOT_PASSWORD: { TITLE: "Passwort vergessen", LABEL: "E-Mail", PLACEHOLDER: "Bitte geben Sie Ihre E-Mail-Adresse ein" } }, FORGOT_PASSWORD_BUTTON: "Passwort vergessen?", BUTTON: "Anmelden", OR: "oder", FORGOT_BUTTON: "Absenden", BACK_BUTTON: "Zurück", BUTTON_OK: "Ok", RESET_EMAIL_TEXT: "Wir senden Ihnen eine E-Mail mit Anweisungen zum Zurücksetzen Ihres Passworts.", RESET_EMAIL_SENT: "Eine E-Mail mit Anweisungen wurde an Sie gesendet.", SSO_NO_PROVIDERS_ERROR: "SSO-Authentifizierung ist nicht konfiguriert. Bitte wenden Sie sich an Ihren Administrator.", ERRORS: { INVALID_CREDENTIALS: "Anmeldename oder Passwort ist falsch.", AUTH_WITH_CODE: "Authentifizierungsfehler (Code: {code}).", AUTH_GENERIC: "Authentifizierungsfehler: {detail}" } }, Oa = { 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" }, Ra = { 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." } }, _a = { 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" } } }, Ia = { 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" } } } } }, va = { _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" }, wa = { ACCESS_RESTRICTED: "Zugriff eingeschränkt" }, Ca = { LOADING: "Virto OZ wird geladen..." }, Pa = { 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" }, ba = { no_options: "Keine Optionen" }, Mo = {
1896
+ ASSETS: Ea,
1897
+ ASSETS_MANAGER: da,
1898
+ COMPONENTS: ra,
1899
+ CORE: sa,
1900
+ FORGOT_PASSWORD: ua,
1901
+ INVITATION: ia,
1902
+ LOGIN: la,
1903
+ PASSWORDRESET: ca,
1904
+ PERMISSION_MESSAGES: ga,
1905
+ SHELL: oa,
1906
+ VC_SCHEDULER: Sa,
1907
+ common: Aa,
1908
+ default: ko,
1909
+ messages: fa
1910
+ }, Symbol.toStringTag, { value: "Module" })), pa = { ERRORS: { SESSION_EXPIRED: `Zugriff verweigert: Ihre Sitzung ist abgelaufen oder Sie verfügen nicht über die erforderlichen Berechtigungen.
1911
+ Bitte melden Sie sich erneut an oder wenden Sie sich an den Administrator.`, NETWORK_UNAVAILABLE: "Keine Netzwerkverbindung. Bitte prüfen Sie Ihre Verbindung.", REQUEST_TIMED_OUT: "Zeitüberschreitung der Anfrage. Bitte versuchen Sie es erneut." }, THEMES: { LIGHT: "Hell", DARK: "Dunkel" }, NOTIFICATIONS: { CLEAR_ALL: "Alle löschen" } }, Ta = { NAVIGATION_ARIA_LABEL: "Hauptnavigation", SIDEBAR: { SEARCH_PLACEHOLDER: "Suchbegriff" }, USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Einstellungen", CHANGE_PASSWORD: "Passwort ändern", PROFILE: "Profil", LOGOUT: "Abmelden" } }, ha = { CONTROLS: { CLEAR: "Löschen", CLEAR_ALL: "Alle löschen", CLOSE: "Schließen", TOGGLE_DROPDOWN: "Dropdown umschalten", SEARCH_OPTIONS: "Optionen suchen", SELECT_OPTION: "Option auswählen", CLEAR_SELECTION: "Auswahl aufheben", COPY_TO_CLIPBOARD: "In die Zwischenablage kopieren", DELETE_ITEM: "Element löschen", SHOW_PASSWORD: "Passwort anzeigen", HIDE_PASSWORD: "Passwort verbergen" }, ATOMS: { VC_IMAGE: { LABEL: "Bild" }, VC_BANNER: { SHOW_MORE: "Mehr anzeigen", SHOW_LESS: "Weniger anzeigen" }, VC_SCROLLABLE_CONTAINER: { LABEL: "Scrollbarer Inhalt" }, VC_VIDEO: { NO_SOURCE: "Keine Videoquelle" } }, MOLECULES: { VC_SELECT: { CLICK_TO_SELECT: "Zum Auswählen klicken...", LOADING: "Wird geladen...", LOADING_MORE: "Mehr laden...", NO_OPTIONS: "Keine Optionen" }, VC_FILE_UPLOAD: { DRAG_HERE: "Datei hier ablegen oder", BROWSE: "Dateien durchsuchen", TAP_TO_UPLOAD: "Tippen, um Dateien auszuwählen", UPLOADING: "Wird hochgeladen..." }, VC_INPUT: { DATE_PLACEHOLDER: "Datum auswählen", DATE_TIME_PLACEHOLDER: "Datum und Uhrzeit auswählen" }, VC_PAGINATION: { JUMP: "Zur Seite springen:", LABEL: "Seitennummerierung", FIRST: "Erste Seite", PREVIOUS: "Vorherige Seite", NEXT: "Nächste Seite", LAST: "Letzte Seite", PAGE: "Seite {page}" }, VC_MULTIVALUE: { ADD: "Hinzufügen" }, VC_BREADCRUMBS: { BACK: "Zurück", LABEL: "Brotkrümelnavigation", SHOW_MORE: "Weitere Brotkrümel anzeigen" }, VC_COLOR_INPUT: { CLEAR: "Farbe löschen" }, VC_DATE_PICKER: { CLEAR: "Datum löschen" }, VC_SLIDER: { PREVIOUS: "Vorherige Folie", NEXT: "Nächste Folie" }, VC_TOAST: { DISMISS: "Benachrichtigung schließen" }, VC_EDITOR: { TOOLBAR: { LABEL: "Textformatierung", BOLD: "Fett", ITALIC: "Kursiv", UNDERLINE: "Unterstrichen", STRIKETHROUGH: "Durchgestrichen", HEADING_1: "Überschrift 1", HEADING_2: "Überschrift 2", HEADING_3: "Überschrift 3", BULLET_LIST: "Aufzählungsliste", NUMBERED_LIST: "Nummerierte Liste", BLOCKQUOTE: "Blockzitat", INSERT_LINK: "Link einfügen", INSERT_IMAGE: "Bild einfügen", INSERT_TABLE: "Tabelle einfügen", DELETE_TABLE: "Tabelle löschen", ADD_COLUMN_BEFORE: "Spalte davor einfügen", ADD_COLUMN_AFTER: "Spalte danach einfügen", ADD_ROW_BEFORE: "Zeile davor einfügen", ADD_ROW_AFTER: "Zeile danach einfügen", DELETE_COLUMN: "Spalte löschen", DELETE_ROW: "Zeile löschen" }, FONT_SIZE: "Schriftgröße", VIEW: { PREVIEW: "Vorschau", SPLIT: "Nebeneinander-Ansicht", SOURCE: "Quellcode" } } }, ORGANISMS: { VC_DYNAMIC_PROPERTY: { ADD: "Wert hinzufügen", VALUE_TYPE: { COLOR: { PLACEHOLDER: "Farbcode", NAME: "Farbname" } } }, VC_GALLERY: { INTERNAL: { VC_GALLERY_ITEM: { FULLSCREEN: "Vollbild", EDIT: "Bearbeiten", DELETE: "Löschen" }, VC_GALLERY_PREVIEW: { COPY_IMAGE_LINK: "Bildlink kopieren" }, VC_GALLERY_FILMSTRIP: { PREVIOUS: "Vorherige Bilder", NEXT: "Nächste Bilder" } }, GALLERY_IS_EMPTY: "Galerie ist leer", DROP_TO_UPLOAD: "Zum Hochladen ablegen", DRAG_IMAGES_HERE: "Bilder hierher ziehen oder", BROWSE_IMAGES: "Dateien durchsuchen", UPLOAD: "Hochladen", OR_DROP_HERE: "oder hierher ziehen", SHOW_ALL: "Erweitern ({count})", COLLAPSE: "Einklappen" }, VC_APP: { NOTIFICATIONS: "Benachrichtigungen", OPEN_MENU: "Menü öffnen", CLOSE_MENU: "Menü schließen", INTERNAL: { VC_APP_BAR: { BACK: "Zurück" }, MOBILE_LAYOUT: { TAB_MENU: "Menü", TAB_HUB: "Hub" }, APP_HUB: { SEARCH_PLACEHOLDER: "Anwendungen und Widgets suchen", APPLICATIONS: "Anwendungen", WIDGETS: "Widgets", NO_APPLICATIONS: "Keine Anwendungen gefunden", NO_WIDGETS: "Keine Widgets gefunden", LIST_VIEW: "Listenansicht", TILE_VIEW: "Kachelansicht" } } }, BLADE_NAVIGATION: { ARIA_LABEL: "Blade-Navigation" }, VC_BLADE: { SEE_DETAILS: "Details anzeigen", UNSAVED_CHANGES: "Hat ungespeicherte Änderungen", ERROR_POPUP: { TITLE: "Fehlerdetails", COPY_ERROR: "Inhalt kopieren", CLOSE: "schließen" }, MORE: "Mehr", TOOLBAR: "Toolbar-Aktionen", CLOSE_MENU: "Menü schließen", PANEL: "Panel" }, VC_BLADE_HEADER: { UNSAVED_CHANGES: "Hat ungespeicherte Änderungen", NO_CHANGES: "Keine ungespeicherten Änderungen", CLOSE: "Schließen", MAXIMIZE: "Maximieren", RESTORE: "Wiederherstellen" }, VC_TABLE: { SELECT_ROW: "Zeile auswählen", SELECT_ALL_ROWS: "Alle Zeilen auswählen", EXPAND_ROW: "Zeilendetails umschalten", CURRENT_PAGE_SELECTED: "Alle Elemente auf dieser Seite sind ausgewählt.", SELECT_ALL: "Alle Elemente auswählen", ALL_SELECTED: "Alle Elemente sind ausgewählt.", ALL_SELECTED_COUNT: "Alle {count} Elemente ausgewählt", SELECT_ALL_COUNT: "Alle {count} Elemente auswählen", CANCEL: "Auswahl aufheben", ALL_ACTIONS: "Alle Aktionen", MORE: "Mehr", ALL_FILTERS: "Filter", SEARCH: "Suchen...", EMPTY: "Liste ist leer.", EMPTY_TITLE: "Keine Daten", EMPTY_DESCRIPTION: "Keine Elemente zum Anzeigen", NOT_FOUND: "Nichts gefunden.", NOT_FOUND_TITLE: "Keine Ergebnisse gefunden", NOT_FOUND_DESCRIPTION: "Passen Sie Ihre Suche oder Filter an", TOTALS: "Gesamt:", ACTIONS: "Aktionen", NOT_SET: "Nicht festgelegt", SELECTED: "Ausgewählt", SELECT_ALL_TRUNCATED: "Alle auswählen", PULL_TO_REFRESH: "Zum Aktualisieren ziehen", RELEASE_TO_REFRESH: "Zum Aktualisieren loslassen", REFRESHING: "Wird aktualisiert...", ADD_ROW: "Zeile hinzufügen", LOADING: "Wird geladen...", PAGE_INFO: "Seite {current} von {total}", COLUMN_FILTER: { APPLY: "Anwenden", CLEAR: "Löschen", FROM: "Von", TO: "Bis", TITLE: "Spalte filtern" }, GLOBAL_FILTERS: { BUTTON: "Filter", TITLE: "Filter" }, COLUMN_SWITCHER: { BUTTON: "Spalten", TITLE: "Spalten ein-/ausblenden", SHOW_ALL: "Alle anzeigen", RESET: "Zurücksetzen" }, OF: "von", PAGE: "Seite" }, VC_POPUP: { OK: "OK", CONFIRM: "Bestätigen", CANCEL: "Abbrechen", CLOSE: "Schließen", TITLE: { CONFIRMATION: "Bestätigung", ERROR: "Fehler", INFO: "Info" } } }, THEME_SELECTOR: { THEME_CHANGED: " Thema", THEME_SELECTOR: "Themen" }, CHANGE_PASSWORD: { TITLE: "Passwort ändern", TITLE_FORCED: "Passwort abgelaufen", SUBTITLE_FORCED: "Bitte legen Sie ein neues Passwort fest", FORCED: { LABEL: "Ihr Passwort ist abgelaufen. Sie müssen das Passwort ändern, um den Manager weiter zu nutzen." }, CURRENT_PASSWORD: { LABEL: "Aktuelles Passwort", PLACEHOLDER: "Passwort eingeben" }, NEW_PASSWORD: { LABEL: "Neues Passwort", PLACEHOLDER: "Passwort eingeben" }, CONFIRM_PASSWORD: { LABEL: "Passwort bestätigen", PLACEHOLDER: "Passwort bestätigen" }, CANCEL: "Abbrechen", SAVE: "Aktualisieren", ERRORS: { "Repeat-password": "Passwörter stimmen nicht überein", "Equal-passwords": "Das neue Passwort darf nicht mit dem alten übereinstimmen", "Invalid-token": "Token ist ungültig oder abgelaufen", "Password-too-weak": "Neues Passwort erfüllt eine oder mehrere Passwort-Sicherheitsrichtlinien nicht:", PasswordTooShort: "Passwort zu kurz", PasswordRequiresUniqueChars: "Passwörter müssen unterschiedliche Zeichen verwenden", PasswordRequiresLower: "Passwörter müssen mindestens einen Kleinbuchstaben enthalten ('a'-'z')", PasswordRequiresUpper: "Passwörter müssen mindestens einen Großbuchstaben enthalten ('A'-'Z')", PasswordRequiresDigit: "Passwörter müssen mindestens eine Ziffer enthalten ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwörter müssen mindestens ein nicht-alphanumerisches Zeichen enthalten", "Incorrect password.": "Sie haben ein falsches Passwort eingegeben", "You have used this password in the past. Choose another one.": "Sie haben dieses Passwort in der Vergangenheit verwendet. Wählen Sie ein anderes." } }, APP_HUB: { TITLE: "Anwendungen" }, NOTIFICATION_DROPDOWN: { TITLE: "Benachrichtigungen", EMPTY: "Noch keine Benachrichtigungen" }, LANGUAGE_SELECTOR: { TITLE: "Sprache" }, FILTERS: { APPLY: "Filter anwenden", RESET: "Zurücksetzen" } }, Oa = { TITLE: "Sie sind eingeladen!", SUBTITLE: "Legen Sie ein Passwort für Ihr Konto fest", FIELDS: { EMAIL: { LABEL: "E-Mail" }, PASSWORD: { LABEL: "Neues Passwort", PLACEHOLDER: "Passwort eingeben" }, CONFIRM_PASSWORD: { LABEL: "Passwort bestätigen", PLACEHOLDER: "Passwort bestätigen" } }, ACCEPT_INVITATION: "Aktivieren", ERRORS: { "Repeat-password": "Passwörter stimmen nicht überein", "Invalid-token": "Token ist ungültig oder abgelaufen", "Password-too-weak": "Neues Passwort erfüllt eine oder mehrere Passwort-Sicherheitsrichtlinien nicht:", PasswordTooShort: "Passwort zu kurz", PasswordRequiresUniqueChars: "Passwörter müssen unterschiedliche Zeichen verwenden", PasswordRequiresLower: "Passwörter müssen mindestens einen Kleinbuchstaben enthalten ('a'-'z')", PasswordRequiresUpper: "Passwörter müssen mindestens einen Großbuchstaben enthalten ('A'-'Z')", PasswordRequiresDigit: "Passwörter müssen mindestens eine Ziffer enthalten ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwörter müssen mindestens ein nicht-alphanumerisches Zeichen enthalten", recentPasswordUsed: "Sie haben dieses Passwort in der Vergangenheit verwendet. Wählen Sie ein anderes." } }, La = { TITLE: "Willkommen zurück", SUBTITLE: "Melden Sie sich bei Ihrem Konto an, um fortzufahren", FIELDS: { LOGIN: { LABEL: "E-Mail", PLACEHOLDER: "Geben Sie Ihre E-Mail-Adresse ein" }, PASSWORD: { LABEL: "Passwort", PLACEHOLDER: "Geben Sie Ihr Passwort ein" }, FORGOT_PASSWORD: { TITLE: "Passwort vergessen", LABEL: "E-Mail", PLACEHOLDER: "Bitte geben Sie Ihre E-Mail-Adresse ein" } }, FORGOT_PASSWORD_BUTTON: "Passwort vergessen?", BUTTON: "Anmelden", OR: "oder", FORGOT_BUTTON: "Absenden", BACK_BUTTON: "Zurück", BUTTON_OK: "Ok", RESET_EMAIL_TEXT: "Wir senden Ihnen eine E-Mail mit Anweisungen zum Zurücksetzen Ihres Passworts.", RESET_EMAIL_SENT: "Eine E-Mail mit Anweisungen wurde an Sie gesendet.", SSO_NO_PROVIDERS_ERROR: "SSO-Authentifizierung ist nicht konfiguriert. Bitte wenden Sie sich an Ihren Administrator.", ERRORS: { INVALID_CREDENTIALS: "Anmeldename oder Passwort ist falsch.", AUTH_WITH_CODE: "Authentifizierungsfehler (Code: {code}).", AUTH_GENERIC: "Authentifizierungsfehler: {detail}" } }, Ra = { 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" }, _a = { 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." } }, Ia = { 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" } } }, va = { 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" } } } } }, wa = { _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" }, Ca = { ACCESS_RESTRICTED: "Zugriff eingeschränkt" }, Pa = { LOADING: "Virto OZ wird geladen..." }, ba = { 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" }, Na = { no_options: "Keine Optionen" }, Uo = {
1897
1912
  CORE: pa,
1898
- SHELL: Aa,
1899
- COMPONENTS: Ta,
1900
- INVITATION: ha,
1913
+ SHELL: Ta,
1914
+ COMPONENTS: ha,
1915
+ INVITATION: Oa,
1901
1916
  LOGIN: La,
1902
- FORGOT_PASSWORD: Oa,
1903
- PASSWORDRESET: Ra,
1904
- ASSETS_MANAGER: _a,
1905
- ASSETS: Ia,
1906
- messages: va,
1907
- PERMISSION_MESSAGES: wa,
1908
- AI_AGENT: Ca,
1909
- VC_SCHEDULER: Pa,
1910
- common: ba
1911
- }, ko = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1917
+ FORGOT_PASSWORD: Ra,
1918
+ PASSWORDRESET: _a,
1919
+ ASSETS_MANAGER: Ia,
1920
+ ASSETS: va,
1921
+ messages: wa,
1922
+ PERMISSION_MESSAGES: Ca,
1923
+ AI_AGENT: Pa,
1924
+ VC_SCHEDULER: ba,
1925
+ common: Na
1926
+ }, Fo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1912
1927
  __proto__: null,
1913
- AI_AGENT: Ca,
1914
- ASSETS: Ia,
1915
- ASSETS_MANAGER: _a,
1916
- COMPONENTS: Ta,
1928
+ AI_AGENT: Pa,
1929
+ ASSETS: va,
1930
+ ASSETS_MANAGER: Ia,
1931
+ COMPONENTS: ha,
1917
1932
  CORE: pa,
1918
- FORGOT_PASSWORD: Oa,
1919
- INVITATION: ha,
1933
+ FORGOT_PASSWORD: Ra,
1934
+ INVITATION: Oa,
1920
1935
  LOGIN: La,
1921
- PASSWORDRESET: Ra,
1922
- PERMISSION_MESSAGES: wa,
1923
- SHELL: Aa,
1924
- VC_SCHEDULER: Pa,
1925
- common: ba,
1926
- default: Mo,
1927
- messages: va
1928
- }, Symbol.toStringTag, { value: "Module" })), Vo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1936
+ PASSWORDRESET: _a,
1937
+ PERMISSION_MESSAGES: Ca,
1938
+ SHELL: Ta,
1939
+ VC_SCHEDULER: ba,
1940
+ common: Na,
1941
+ default: Uo,
1942
+ messages: wa
1943
+ }, Symbol.toStringTag, { value: "Module" })), Wo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1929
1944
  __proto__: null,
1930
- de: ko,
1931
- en: Bo
1945
+ de: Fo,
1946
+ en: Vo
1932
1947
  }, Symbol.toStringTag, { value: "Module" })), Xe = k("global-error-handler");
1933
1948
  function Ne(e) {
1934
1949
  return e instanceof Error ? `${e.name}:${e.message}` : String(e);
1935
1950
  }
1936
1951
  const he = /* @__PURE__ */ new Map(), Pt = 3e3;
1937
- function Je(e) {
1952
+ function Qe(e) {
1938
1953
  const t = Ne(e), a = Date.now(), n = he.get(t);
1939
1954
  if (n && a - n < Pt) return !0;
1940
1955
  if (he.set(t, a), he.size > 50)
@@ -1942,13 +1957,13 @@ function Je(e) {
1942
1957
  a - o > Pt && he.delete(s);
1943
1958
  return !1;
1944
1959
  }
1945
- function Uo(e) {
1960
+ function Ho(e) {
1946
1961
  const t = e.config.errorHandler;
1947
1962
  if (e.config.errorHandler = (o, r, l) => {
1948
1963
  if (Xe.error("Unhandled Vue error:", o, `
1949
- Info:`, l), !Je(o)) {
1964
+ Info:`, l), !Qe(o)) {
1950
1965
  const c = Pe(o);
1951
- q.error(c.message, {
1966
+ Y.error(c.message, {
1952
1967
  timeout: 8e3,
1953
1968
  notificationId: `global-vue-${Ne(o)}`
1954
1969
  });
@@ -1959,9 +1974,9 @@ Info:`, l), !Je(o)) {
1959
1974
  if (a.__VC_GLOBAL_ERROR_HANDLERS_INSTALLED__) return;
1960
1975
  a.__VC_GLOBAL_ERROR_HANDLERS_INSTALLED__ = !0;
1961
1976
  const n = (o) => {
1962
- if (Xe.error("Unhandled rejection:", o.reason), !Je(o.reason)) {
1977
+ if (Xe.error("Unhandled rejection:", o.reason), !Qe(o.reason)) {
1963
1978
  const r = Pe(o.reason);
1964
- q.error(r.message, {
1979
+ Y.error(r.message, {
1965
1980
  timeout: 8e3,
1966
1981
  notificationId: `global-rejection-${Ne(o.reason)}`
1967
1982
  });
@@ -1969,9 +1984,9 @@ Info:`, l), !Je(o)) {
1969
1984
  };
1970
1985
  window.addEventListener("unhandledrejection", n);
1971
1986
  const s = (o) => {
1972
- if (o.error && (Xe.error("Uncaught error:", o.error), !Je(o.error))) {
1987
+ if (o.error && (Xe.error("Uncaught error:", o.error), !Qe(o.error))) {
1973
1988
  const r = Pe(o.error);
1974
- q.error(r.message, {
1989
+ Y.error(r.message, {
1975
1990
  timeout: 8e3,
1976
1991
  notificationId: `global-error-${Ne(o.error)}`
1977
1992
  });
@@ -1979,7 +1994,7 @@ Info:`, l), !Je(o)) {
1979
1994
  };
1980
1995
  window.addEventListener("error", s);
1981
1996
  }
1982
- const Fo = k("notification-instance"), j = {
1997
+ const Go = k("notification-instance"), Z = {
1983
1998
  "top-center": void 0,
1984
1999
  "top-right": void 0,
1985
2000
  "top-left": void 0,
@@ -1987,27 +2002,27 @@ const Fo = k("notification-instance"), j = {
1987
2002
  "bottom-right": void 0,
1988
2003
  "bottom-left": void 0
1989
2004
  };
1990
- function Wo() {
2005
+ function xo() {
1991
2006
  function e(s, o, r) {
1992
- document.getElementById(o) && (j[r] = s);
2007
+ document.getElementById(o) && (Z[r] = s);
1993
2008
  }
1994
2009
  function t(s) {
1995
2010
  try {
1996
- s ? j[s] && (j[s]?.unmount(), document.getElementById(`notification-${s}`)?.remove(), j[s] = void 0) : (Object.keys(j).forEach((r) => {
2011
+ s ? Z[s] && (Z[s]?.unmount(), document.getElementById(`notification-${s}`)?.remove(), Z[s] = void 0) : (Object.keys(Z).forEach((r) => {
1997
2012
  const l = r;
1998
- j[l]?.unmount(), document.getElementById(`notification-${l}`)?.remove(), j[l] = void 0;
1999
- }), Object.values(j).some((r) => r !== void 0) || document.querySelector(".notification")?.remove());
2013
+ Z[l]?.unmount(), document.getElementById(`notification-${l}`)?.remove(), Z[l] = void 0;
2014
+ }), Object.values(Z).some((r) => r !== void 0) || document.querySelector(".notification")?.remove());
2000
2015
  } catch (o) {
2001
- Fo.error("Failed to unmount notification component:", o);
2016
+ Go.error("Failed to unmount notification component:", o);
2002
2017
  }
2003
2018
  }
2004
2019
  function a() {
2005
- Object.keys(j).forEach((s) => {
2006
- j[s] && t(s);
2020
+ Object.keys(Z).forEach((s) => {
2021
+ Z[s] && t(s);
2007
2022
  });
2008
2023
  }
2009
2024
  function n(s) {
2010
- return j[s];
2025
+ return Z[s];
2011
2026
  }
2012
2027
  return {
2013
2028
  saveInstance: e,
@@ -2023,8 +2038,8 @@ const de = k("notification-container"), G = {
2023
2038
  "bottom-center": N([]),
2024
2039
  "bottom-right": N([]),
2025
2040
  "bottom-left": N([])
2026
- }, { clearContainer: Ho, unmountComponent: Go, saveInstance: xo, getInstanceByPosition: bt } = Wo();
2027
- function $o() {
2041
+ }, { clearContainer: $o, unmountComponent: Ko, saveInstance: zo, getInstanceByPosition: bt } = xo();
2042
+ function qo() {
2028
2043
  const e = ie({
2029
2044
  timeout: 3e3,
2030
2045
  pauseOnHover: !0,
@@ -2040,20 +2055,20 @@ function $o() {
2040
2055
  return t().find((E) => E.notificationId === u);
2041
2056
  }
2042
2057
  function s(u) {
2043
- const E = document.querySelector(".notification"), g = E || document.createElement("div"), f = `.notification__container[data-position="${u}"]`;
2058
+ const E = document.querySelector(".notification"), m = E || document.createElement("div"), f = `.notification__container[data-position="${u}"]`;
2044
2059
  let d = document.querySelector(f);
2045
- return d || (d = document.createElement("div"), d.className = "notification__container", d.id = `notification-${u}`, d.setAttribute("data-position", u), E || (g.className = "notification", document.body.appendChild(g)), g.appendChild(d)), d;
2060
+ return d || (d = document.createElement("div"), d.className = "notification__container", d.id = `notification-${u}`, d.setAttribute("data-position", u), E || (m.className = "notification", document.body.appendChild(m)), m.appendChild(d)), d;
2046
2061
  }
2047
2062
  const o = /* @__PURE__ */ new Map();
2048
2063
  async function r(u) {
2049
- const E = u.position || e.position, g = o.get(E);
2050
- if (g && await g, !bt(E)) {
2064
+ const E = u.position || e.position, m = o.get(E);
2065
+ if (m && await m, !bt(E)) {
2051
2066
  const f = (async () => {
2052
- const d = s(E), { default: S } = await Promise.resolve().then(() => Lr), O = an(S, {
2067
+ const d = s(E), { default: S } = await Promise.resolve().then(() => _r), L = nn(S, {
2053
2068
  ...u,
2054
2069
  position: E
2055
2070
  });
2056
- O.use(X), O.provide(Zt, { notificationContainers: G, actions: c }), O.mount(d), xo(O, d.id, E);
2071
+ L.use(x), L.provide(Zt, { notificationContainers: G, actions: c }), L.mount(d), zo(L, d.id, E);
2057
2072
  })();
2058
2073
  o.set(E, f), await f, o.delete(E);
2059
2074
  }
@@ -2066,46 +2081,46 @@ function $o() {
2066
2081
  }
2067
2082
  const c = {
2068
2083
  add(u) {
2069
- const E = u.position || e.position, g = G[E];
2070
- g.value.find((d) => d.notificationId === u.notificationId) || be(() => {
2071
- g.value.push(u), u.onOpen && typeof u?.onOpen == "function" && u.onOpen(u.payload);
2084
+ const E = u.position || e.position, m = G[E];
2085
+ m.value.find((d) => d.notificationId === u.notificationId) || be(() => {
2086
+ m.value.push(u), u.onOpen && typeof u?.onOpen == "function" && u.onOpen(u.payload);
2072
2087
  });
2073
2088
  },
2074
2089
  remove(u) {
2075
2090
  if (u) {
2076
- let E, g;
2091
+ let E, m;
2077
2092
  Object.entries(G).forEach(([f, d]) => {
2078
- const S = d.value.find((O) => O.notificationId === u);
2079
- S && (E = S, g = f);
2080
- }), g && (G[g].value = G[g].value.filter((f) => f.notificationId !== u), G[g].value.length === 0 && Go(g), be(() => {
2093
+ const S = d.value.find((L) => L.notificationId === u);
2094
+ S && (E = S, m = f);
2095
+ }), m && (G[m].value = G[m].value.filter((f) => f.notificationId !== u), G[m].value.length === 0 && Ko(m), be(() => {
2081
2096
  E?.onClose && typeof E?.onClose == "function" && E.onClose(E.payload);
2082
2097
  }));
2083
2098
  }
2084
2099
  },
2085
2100
  clear() {
2086
- Ho(), Object.values(G).forEach((u) => {
2101
+ $o(), Object.values(G).forEach((u) => {
2087
2102
  u.value = [];
2088
2103
  });
2089
2104
  },
2090
2105
  dismiss(u) {
2091
2106
  if (!u) return;
2092
2107
  let E = !1;
2093
- Object.values(G).forEach((g) => {
2094
- g.value.forEach((f) => {
2108
+ Object.values(G).forEach((m) => {
2109
+ m.value.forEach((f) => {
2095
2110
  f.notificationId === u && (f.dismissing = !0, E = !0);
2096
2111
  });
2097
2112
  }), E || de.debug(`dismiss: notification ${u} not found`);
2098
2113
  },
2099
2114
  update(u) {
2100
2115
  if (u.updateId) {
2101
- let E, g, f;
2116
+ let E, m, f;
2102
2117
  if (Object.entries(G).forEach(([d, S]) => {
2103
- const O = S.value.find((T) => T.notificationId === u.notificationId);
2104
- O && (E = O, g = S, f = d);
2105
- }), E && g) {
2118
+ const L = S.value.find((T) => T.notificationId === u.notificationId);
2119
+ L && (E = L, m = S, f = d);
2120
+ }), E && m) {
2106
2121
  if (de.debug(`Updating notification ${u.notificationId} in position ${f}`), u.position && u.position !== f) {
2107
- g.value = g.value.filter(
2108
- (O) => O.notificationId !== u.notificationId
2122
+ m.value = m.value.filter(
2123
+ (L) => L.notificationId !== u.notificationId
2109
2124
  );
2110
2125
  const d = {
2111
2126
  ...E,
@@ -2115,8 +2130,8 @@ function $o() {
2115
2130
  } else
2116
2131
  de.debug("Standard update of notification properties"), Object.keys(u).forEach((d) => {
2117
2132
  if (d !== "updateId" && d !== "notificationId") {
2118
- const S = d, O = u[S];
2119
- E && O !== void 0 && (E[S] = O);
2133
+ const S = d, L = u[S];
2134
+ E && L !== void 0 && (E[S] = L);
2120
2135
  }
2121
2136
  });
2122
2137
  return !0;
@@ -2137,13 +2152,13 @@ function $o() {
2137
2152
  getNotificationsByPosition: a,
2138
2153
  appendInstance: r,
2139
2154
  getNotification: n,
2140
- generateNotificationId: Va,
2155
+ generateNotificationId: Ua,
2141
2156
  hasNotification: l
2142
2157
  };
2143
2158
  }
2144
- function Ko() {
2145
- const e = $o();
2146
- Ua({
2159
+ function Yo() {
2160
+ const e = qo();
2161
+ Fa({
2147
2162
  defaultOptions: e.defaultOptions,
2148
2163
  actions: e.actions,
2149
2164
  getAllNotifications: e.getAllNotifications,
@@ -2152,22 +2167,22 @@ function Ko() {
2152
2167
  hasNotification: (t) => e.hasNotification(t)
2153
2168
  });
2154
2169
  }
2155
- const zo = "2.5.0-pr333.50c07fa";
2156
- function qo() {
2170
+ const jo = "2.5.0-pr334.23413b7";
2171
+ function Zo() {
2157
2172
  return {
2158
- version: zo,
2159
- buildDate: "2026-08-31T12:35:52.720Z",
2160
- gitHash: "50c07fa41"
2173
+ version: jo,
2174
+ buildDate: "2026-08-31T14:03:03.882Z",
2175
+ gitHash: "23413b72b"
2161
2176
  };
2162
2177
  }
2163
- function Yo(e = qo()) {
2178
+ function Xo(e = Zo()) {
2164
2179
  console.warn(
2165
2180
  `%c@vc-shell/framework%c v${e.version} · ${e.buildDate} · ${e.gitHash}`,
2166
2181
  "font-weight:bold;color:#319ED4",
2167
2182
  "color:inherit"
2168
2183
  );
2169
2184
  }
2170
- const jo = /* @__PURE__ */ H({
2185
+ const Qo = /* @__PURE__ */ H({
2171
2186
  __name: "sidebar",
2172
2187
  props: {
2173
2188
  position: { default: "right" },
@@ -2178,11 +2193,11 @@ const jo = /* @__PURE__ */ H({
2178
2193
  },
2179
2194
  emits: ["close"],
2180
2195
  setup(e, { emit: t }) {
2181
- const a = e, n = t, { isMobile: s, isDesktop: o } = Fa(), r = I(() => a.render === "always" ? !0 : a.render === "mobile" ? s.value : o.value), l = I(() => a.isExpanded && r.value);
2196
+ const a = e, n = t, { isMobile: s, isDesktop: o } = Wa(), r = I(() => a.render === "always" ? !0 : a.render === "mobile" ? s.value : o.value), l = I(() => a.isExpanded && r.value);
2182
2197
  function c(u) {
2183
2198
  u || n("close");
2184
2199
  }
2185
- return (u, E) => l.value ? (b(), D(i(hn), {
2200
+ return (u, E) => l.value ? (b(), D(i(On), {
2186
2201
  key: 0,
2187
2202
  "model-value": !0,
2188
2203
  position: e.position,
@@ -2190,22 +2205,22 @@ const jo = /* @__PURE__ */ H({
2190
2205
  "close-button": e.closeCross,
2191
2206
  teleport: !i(o),
2192
2207
  "onUpdate:modelValue": c
2193
- }, Oe({
2208
+ }, Le({
2194
2209
  default: h(() => [
2195
- Y(u.$slots, "content")
2210
+ j(u.$slots, "content")
2196
2211
  ]),
2197
2212
  _: 2
2198
2213
  }, [
2199
2214
  u.$slots.header ? {
2200
2215
  name: "header",
2201
- fn: h(({ close: g }) => [
2202
- Y(u.$slots, "header", { close: g })
2216
+ fn: h(({ close: m }) => [
2217
+ j(u.$slots, "header", { close: m })
2203
2218
  ]),
2204
2219
  key: "0"
2205
2220
  } : void 0
2206
- ]), 1032, ["position", "title", "close-button", "teleport"])) : Y(u.$slots, "content", { key: 1 });
2221
+ ]), 1032, ["position", "title", "close-button", "teleport"])) : j(u.$slots, "content", { key: 1 });
2207
2222
  }
2208
- }), Ul = jo, Zo = { class: "tw-flex tw-flex-row tw-items-center tw-gap-2" }, Xo = /* @__PURE__ */ H({
2223
+ }), Hl = Qo, Jo = { class: "tw-flex tw-flex-row tw-items-center tw-gap-2" }, er = /* @__PURE__ */ H({
2209
2224
  __name: "external-provider",
2210
2225
  props: {
2211
2226
  logo: {},
@@ -2215,13 +2230,13 @@ const jo = /* @__PURE__ */ H({
2215
2230
  emits: ["signIn"],
2216
2231
  setup(e) {
2217
2232
  const t = e, a = I(() => t.logo && !t.logo.startsWith("data:image") && !t.logo.startsWith("http") ? new URL(t.logo, window.location.origin).toString() : t.logo);
2218
- return (n, s) => (b(), D(i(x), {
2233
+ return (n, s) => (b(), D(i($), {
2219
2234
  variant: "secondary",
2220
2235
  class: "vc-external-provider",
2221
2236
  onClick: s[0] || (s[0] = (o) => n.$emit("signIn"))
2222
2237
  }, {
2223
2238
  default: h(() => [
2224
- U("div", Zo, [
2239
+ U("div", Jo, [
2225
2240
  _(i(ot), {
2226
2241
  src: a.value,
2227
2242
  class: "vc-external-provider__icon",
@@ -2233,15 +2248,15 @@ const jo = /* @__PURE__ */ H({
2233
2248
  _: 1
2234
2249
  }));
2235
2250
  }
2236
- }), Jo = { class: "tw-flex tw-justify-center tw-flex-col tw-gap-4" }, Qo = /* @__PURE__ */ H({
2251
+ }), tr = { class: "tw-flex tw-justify-center tw-flex-col tw-gap-4" }, ar = /* @__PURE__ */ H({
2237
2252
  __name: "external-providers",
2238
2253
  props: {
2239
2254
  providers: {}
2240
2255
  },
2241
2256
  setup(e) {
2242
2257
  const { signIn: t } = Kt();
2243
- return (a, n) => (b(), W("div", Jo, [
2244
- (b(!0), W(ne, null, Fe(e.providers, (s) => (b(), D(Xo, {
2258
+ return (a, n) => (b(), W("div", tr, [
2259
+ (b(!0), W(ne, null, Fe(e.providers, (s) => (b(), D(er, {
2245
2260
  key: s.authenticationType,
2246
2261
  logo: s.logoUrl,
2247
2262
  "display-name": s.displayName,
@@ -2251,25 +2266,25 @@ const jo = /* @__PURE__ */ H({
2251
2266
  ]));
2252
2267
  }
2253
2268
  });
2254
- function er(e) {
2269
+ function nr(e) {
2255
2270
  if (!e) return "/";
2256
2271
  const t = e.trim();
2257
2272
  return !t.startsWith("/") || t.startsWith("//") ? "/" : t;
2258
2273
  }
2259
- function tr(e, t) {
2274
+ function sr(e, t) {
2260
2275
  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");
2261
2276
  }
2262
- function ar(e) {
2277
+ function or(e) {
2263
2278
  const t = [];
2264
2279
  return e.confirmPassword !== e.password && t.push({ code: "Repeat-password" }), e.password === e.currentPassword && e.confirmPassword === e.currentPassword && t.push({ code: "Equal-passwords" }), t;
2265
2280
  }
2266
- const nr = {
2281
+ const rr = {
2267
2282
  key: 0,
2268
2283
  class: "vc-login-page__providers"
2269
- }, sr = {
2284
+ }, ir = {
2270
2285
  key: 0,
2271
2286
  class: "vc-login-page__separator-line"
2272
- }, or = /* @__PURE__ */ H({
2287
+ }, lr = /* @__PURE__ */ H({
2273
2288
  __name: "Login",
2274
2289
  props: {
2275
2290
  logo: {},
@@ -2279,9 +2294,9 @@ const nr = {
2279
2294
  ssoOnly: { type: Boolean }
2280
2295
  },
2281
2296
  setup(e) {
2282
- 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 = N({ succeeded: !0 }), { signIn: u, loading: E, user: g } = se(), { getProviders: f } = Kt(), d = Ie(), S = N(), O = N(!1);
2297
+ 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 = N({ succeeded: !0 }), { signIn: u, loading: E, user: m } = se(), { getProviders: f } = Kt(), d = Ie(), S = N(), L = N(!1);
2283
2298
  Re(async () => {
2284
- S.value = await f(), O.value = !0;
2299
+ S.value = await f(), L.value = !0;
2285
2300
  });
2286
2301
  const T = I(() => ({
2287
2302
  logo: l.value ? "" : r.value?.logo || a.logo
@@ -2290,98 +2305,98 @@ const nr = {
2290
2305
  password: ""
2291
2306
  }), w = async () => {
2292
2307
  if (d.value) {
2293
- if (c.value.error = "", c.value = await u(v.username, v.password), c.value.succeeded && g.value?.passwordExpired) {
2308
+ if (c.value.error = "", c.value = await u(v.username, v.password), c.value.succeeded && m.value?.passwordExpired) {
2294
2309
  await s.push({ name: "ChangePassword" });
2295
2310
  return;
2296
2311
  }
2297
2312
  if (c.value.succeeded) {
2298
- const L = er(localStorage.getItem("redirectAfterLogin"));
2299
- localStorage.removeItem("redirectAfterLogin"), await s.push(L);
2313
+ const O = nr(localStorage.getItem("redirectAfterLogin"));
2314
+ localStorage.removeItem("redirectAfterLogin"), await s.push(O);
2300
2315
  return;
2301
2316
  }
2302
- c.value.error = tr(c.value, n), v.password = "", o("password");
2317
+ c.value.error = sr(c.value, n), v.password = "", o("password");
2303
2318
  }
2304
2319
  }, C = () => {
2305
2320
  s.push({ name: "ForgotPassword" });
2306
2321
  };
2307
- return t.debug("Init login-page"), (L, m) => (b(), D(i(_e), {
2322
+ return t.debug("Init login-page"), (O, g) => (b(), D(i(_e), {
2308
2323
  logo: T.value.logo,
2309
2324
  background: e.background,
2310
- title: e.title || L.$t("LOGIN.TITLE"),
2311
- subtitle: e.subtitle || L.$t("LOGIN.SUBTITLE"),
2325
+ title: e.title || O.$t("LOGIN.TITLE"),
2326
+ subtitle: e.subtitle || O.$t("LOGIN.SUBTITLE"),
2312
2327
  class: "vc-login-page"
2313
2328
  }, {
2314
2329
  default: h(() => [
2315
- S.value && S.value.length ? (b(), W("div", nr, [
2316
- _(Qo, { providers: S.value }, null, 8, ["providers"]),
2317
- e.ssoOnly ? z("", !0) : (b(), W("div", sr, y(L.$t("LOGIN.OR")), 1))
2318
- ])) : z("", !0),
2319
- e.ssoOnly && O.value && !S.value?.length ? (b(), D(i(Ee), {
2330
+ S.value && S.value.length ? (b(), W("div", rr, [
2331
+ _(ar, { providers: S.value }, null, 8, ["providers"]),
2332
+ e.ssoOnly ? q("", !0) : (b(), W("div", ir, y(O.$t("LOGIN.OR")), 1))
2333
+ ])) : q("", !0),
2334
+ e.ssoOnly && L.value && !S.value?.length ? (b(), D(i(Ee), {
2320
2335
  key: 1,
2321
2336
  class: "tw-mt-4 tw-text-danger-500"
2322
2337
  }, {
2323
2338
  default: h(() => [
2324
- M(y(L.$t("LOGIN.SSO_NO_PROVIDERS_ERROR")), 1)
2339
+ M(y(O.$t("LOGIN.SSO_NO_PROVIDERS_ERROR")), 1)
2325
2340
  ]),
2326
2341
  _: 1
2327
- })) : z("", !0),
2328
- e.ssoOnly ? z("", !0) : (b(), W(ne, { key: 2 }, [
2329
- _(i(ge), {
2342
+ })) : q("", !0),
2343
+ e.ssoOnly ? q("", !0) : (b(), W(ne, { key: 2 }, [
2344
+ _(i(me), {
2330
2345
  class: "tw-gap-5",
2331
2346
  onSubmit: w
2332
2347
  }, {
2333
2348
  default: h(() => [
2334
- _(i(Z), {
2335
- label: L.$t("LOGIN.FIELDS.LOGIN.LABEL"),
2349
+ _(i(X), {
2350
+ label: O.$t("LOGIN.FIELDS.LOGIN.LABEL"),
2336
2351
  name: "username",
2337
2352
  "model-value": v.username,
2338
2353
  rules: "required"
2339
2354
  }, {
2340
- default: h(({ errorMessage: A, handleChange: p, errors: R }) => [
2341
- _(i($), {
2355
+ default: h(({ errorMessage: p, handleChange: A, errors: R }) => [
2356
+ _(i(K), {
2342
2357
  ref: "loginField",
2343
2358
  modelValue: v.username,
2344
2359
  "onUpdate:modelValue": [
2345
- m[0] || (m[0] = (P) => v.username = P),
2346
- p
2360
+ g[0] || (g[0] = (P) => v.username = P),
2361
+ A
2347
2362
  ],
2348
- label: L.$t("LOGIN.FIELDS.LOGIN.LABEL"),
2349
- placeholder: L.$t("LOGIN.FIELDS.LOGIN.PLACEHOLDER"),
2363
+ label: O.$t("LOGIN.FIELDS.LOGIN.LABEL"),
2364
+ placeholder: O.$t("LOGIN.FIELDS.LOGIN.PLACEHOLDER"),
2350
2365
  autocomplete: "username",
2351
2366
  required: "",
2352
2367
  error: !!R.length,
2353
- "error-message": A
2368
+ "error-message": p
2354
2369
  }, null, 8, ["modelValue", "label", "placeholder", "error", "error-message", "onUpdate:modelValue"])
2355
2370
  ]),
2356
2371
  _: 1
2357
2372
  }, 8, ["label", "model-value"]),
2358
- _(i(Z), {
2359
- label: L.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
2373
+ _(i(X), {
2374
+ label: O.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
2360
2375
  name: "password",
2361
2376
  "model-value": v.password,
2362
2377
  rules: "required"
2363
2378
  }, {
2364
- default: h(({ errorMessage: A, handleChange: p, errors: R }) => [
2365
- _(i($), {
2379
+ default: h(({ errorMessage: p, handleChange: A, errors: R }) => [
2380
+ _(i(K), {
2366
2381
  ref: "passwordField",
2367
2382
  modelValue: v.password,
2368
2383
  "onUpdate:modelValue": [
2369
- m[1] || (m[1] = (P) => v.password = P),
2370
- p
2384
+ g[1] || (g[1] = (P) => v.password = P),
2385
+ A
2371
2386
  ],
2372
- label: L.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
2373
- placeholder: L.$t("LOGIN.FIELDS.PASSWORD.PLACEHOLDER"),
2387
+ label: O.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
2388
+ placeholder: O.$t("LOGIN.FIELDS.PASSWORD.PLACEHOLDER"),
2374
2389
  type: "password",
2375
2390
  autocomplete: "current-password",
2376
2391
  required: "",
2377
2392
  error: !!R.length,
2378
- "error-message": A,
2393
+ "error-message": p,
2379
2394
  onKeyup: lt(w, ["enter"])
2380
2395
  }, null, 8, ["modelValue", "label", "placeholder", "error", "error-message", "onUpdate:modelValue"])
2381
2396
  ]),
2382
2397
  _: 1
2383
2398
  }, 8, ["label", "model-value"]),
2384
- _(i(x), {
2399
+ _(i($), {
2385
2400
  variant: "primary",
2386
2401
  class: "tw-w-full",
2387
2402
  icon: "lucide-log-in",
@@ -2390,31 +2405,31 @@ const nr = {
2390
2405
  onClick: w
2391
2406
  }, {
2392
2407
  default: h(() => [
2393
- M(y(L.$t("LOGIN.BUTTON")), 1)
2408
+ M(y(O.$t("LOGIN.BUTTON")), 1)
2394
2409
  ]),
2395
2410
  _: 1
2396
2411
  }, 8, ["disabled", "loading"]),
2397
- _(i(x), {
2412
+ _(i($), {
2398
2413
  variant: "link",
2399
2414
  class: "tw-w-full tw-justify-center",
2400
2415
  type: "button",
2401
2416
  onClick: C
2402
2417
  }, {
2403
2418
  default: h(() => [
2404
- M(y(L.$t("LOGIN.FORGOT_PASSWORD_BUTTON")), 1)
2419
+ M(y(O.$t("LOGIN.FORGOT_PASSWORD_BUTTON")), 1)
2405
2420
  ]),
2406
2421
  _: 1
2407
2422
  })
2408
2423
  ]),
2409
2424
  _: 1
2410
2425
  }),
2411
- _(i(Ss), {
2426
+ _(i(As), {
2412
2427
  name: "auth:after-form",
2413
2428
  separator: "",
2414
2429
  "separator-class": "tw-border-t tw-border-[color:var(--login-separator)] tw-border-solid tw-pb-5",
2415
2430
  "wrapper-class": "vc-login-page__separator"
2416
2431
  }),
2417
- c.value.succeeded ? z("", !0) : (b(), D(i(Ee), {
2432
+ c.value.succeeded ? q("", !0) : (b(), D(i(Ee), {
2418
2433
  key: 0,
2419
2434
  class: "tw-mt-4 tw-text-danger-500"
2420
2435
  }, {
@@ -2428,7 +2443,7 @@ const nr = {
2428
2443
  _: 1
2429
2444
  }, 8, ["logo", "background", "title", "subtitle"]));
2430
2445
  }
2431
- }), Fl = or, rr = { class: "tw-text-center" }, ir = { class: "tw-text-center tw-mb-6" }, lr = { class: "tw-text-sm tw-text-neutrals-600" }, ur = /* @__PURE__ */ H({
2446
+ }), Gl = lr, ur = { class: "tw-text-center" }, cr = { class: "tw-text-center tw-mb-6" }, dr = { class: "tw-text-sm tw-text-neutrals-600" }, Er = /* @__PURE__ */ H({
2432
2447
  __name: "ForgotPassword",
2433
2448
  props: {
2434
2449
  logo: {},
@@ -2441,12 +2456,12 @@ const nr = {
2441
2456
  const s = Ie(), { uiSettings: o, loading: r } = we(), l = N(!1), c = N(""), u = N(!1), E = ie({
2442
2457
  loginOrEmail: ""
2443
2458
  });
2444
- let g;
2459
+ let m;
2445
2460
  if (t.composable && typeof t.composable == "function")
2446
- g = t.composable().forgotPassword;
2461
+ m = t.composable().forgotPassword;
2447
2462
  else {
2448
2463
  const { requestPasswordReset: T } = se();
2449
- g = async (v) => {
2464
+ m = async (v) => {
2450
2465
  await T(v.loginOrEmail);
2451
2466
  };
2452
2467
  }
@@ -2456,15 +2471,15 @@ const nr = {
2456
2471
  const T = E.loginOrEmail, [v, w] = T.split("@");
2457
2472
  return !v || !w ? T : `${v.length > 2 ? v[0] + "***" + v[v.length - 1] : v[0] + "***"}@${w}`;
2458
2473
  }), S = async () => {
2459
- if (!(!s.value || !g))
2474
+ if (!(!s.value || !m))
2460
2475
  try {
2461
- l.value = !0, c.value = "", await g({ loginOrEmail: E.loginOrEmail }), u.value = !0;
2476
+ l.value = !0, c.value = "", await m({ loginOrEmail: E.loginOrEmail }), u.value = !0;
2462
2477
  } catch (T) {
2463
2478
  c.value = T instanceof Error ? T.message : String(T);
2464
2479
  } finally {
2465
2480
  l.value = !1;
2466
2481
  }
2467
- }, O = () => {
2482
+ }, L = () => {
2468
2483
  a.push({ name: "Login" });
2469
2484
  };
2470
2485
  return (T, v) => (b(), D(i(_e), {
@@ -2475,13 +2490,13 @@ const nr = {
2475
2490
  }, {
2476
2491
  default: h(() => [
2477
2492
  u.value ? (b(), W(ne, { key: 1 }, [
2478
- U("div", ir, [
2479
- U("p", lr, y(i(n)("FORGOT_PASSWORD.SUCCESS_TEXT", { email: d.value })), 1)
2493
+ U("div", cr, [
2494
+ U("p", dr, y(i(n)("FORGOT_PASSWORD.SUCCESS_TEXT", { email: d.value })), 1)
2480
2495
  ]),
2481
- _(i(x), {
2496
+ _(i($), {
2482
2497
  variant: "primary",
2483
2498
  class: "tw-w-full",
2484
- onClick: O
2499
+ onClick: L
2485
2500
  }, {
2486
2501
  default: h(() => [
2487
2502
  M(y(i(n)("FORGOT_PASSWORD.BACK_TO_LOGIN")), 1)
@@ -2489,33 +2504,33 @@ const nr = {
2489
2504
  _: 1
2490
2505
  })
2491
2506
  ], 64)) : (b(), W(ne, { key: 0 }, [
2492
- _(i(ge), { onSubmit: S }, {
2507
+ _(i(me), { onSubmit: S }, {
2493
2508
  default: h(() => [
2494
- _(i(Z), {
2509
+ _(i(X), {
2495
2510
  label: i(n)("FORGOT_PASSWORD.FIELDS.EMAIL.LABEL"),
2496
2511
  name: "loginOrEmail",
2497
2512
  "model-value": E.loginOrEmail,
2498
2513
  rules: "required|email"
2499
2514
  }, {
2500
- default: h(({ errorMessage: w, handleChange: C, errors: L }) => [
2501
- _(i($), {
2515
+ default: h(({ errorMessage: w, handleChange: C, errors: O }) => [
2516
+ _(i(K), {
2502
2517
  ref: "emailField",
2503
2518
  modelValue: E.loginOrEmail,
2504
2519
  "onUpdate:modelValue": [
2505
- v[0] || (v[0] = (m) => E.loginOrEmail = m),
2520
+ v[0] || (v[0] = (g) => E.loginOrEmail = g),
2506
2521
  C
2507
2522
  ],
2508
2523
  class: "tw-mb-6",
2509
2524
  label: i(n)("FORGOT_PASSWORD.FIELDS.EMAIL.LABEL"),
2510
2525
  placeholder: i(n)("FORGOT_PASSWORD.FIELDS.EMAIL.PLACEHOLDER"),
2511
2526
  required: "",
2512
- error: !!L.length,
2527
+ error: !!O.length,
2513
2528
  "error-message": w
2514
2529
  }, null, 8, ["modelValue", "label", "placeholder", "error", "error-message", "onUpdate:modelValue"])
2515
2530
  ]),
2516
2531
  _: 1
2517
2532
  }, 8, ["label", "model-value"]),
2518
- _(i(x), {
2533
+ _(i($), {
2519
2534
  variant: "primary",
2520
2535
  class: "tw-w-full tw-mb-4",
2521
2536
  disabled: !i(s) || l.value,
@@ -2527,13 +2542,13 @@ const nr = {
2527
2542
  ]),
2528
2543
  _: 1
2529
2544
  }, 8, ["disabled", "loading"]),
2530
- U("div", rr, [
2531
- _(i(x), {
2545
+ U("div", ur, [
2546
+ _(i($), {
2532
2547
  variant: "link",
2533
2548
  icon: "lucide-arrow-left",
2534
2549
  "icon-size": "xs",
2535
2550
  type: "button",
2536
- onClick: O
2551
+ onClick: L
2537
2552
  }, {
2538
2553
  default: h(() => [
2539
2554
  M(y(i(n)("FORGOT_PASSWORD.BACK_TO_LOGIN")), 1)
@@ -2552,13 +2567,13 @@ const nr = {
2552
2567
  M(y(c.value), 1)
2553
2568
  ]),
2554
2569
  _: 1
2555
- })) : z("", !0)
2570
+ })) : q("", !0)
2556
2571
  ], 64))
2557
2572
  ]),
2558
2573
  _: 1
2559
2574
  }, 8, ["logo", "background", "title", "subtitle"]));
2560
2575
  }
2561
- }), Wl = ur, cr = /* @__PURE__ */ H({
2576
+ }), xl = Er, fr = /* @__PURE__ */ H({
2562
2577
  __name: "ResetPassword",
2563
2578
  props: {
2564
2579
  userId: {},
@@ -2568,7 +2583,7 @@ const nr = {
2568
2583
  background: { default: "/assets/background.jpg" }
2569
2584
  },
2570
2585
  setup(e) {
2571
- 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: E, loading: g } = we(), f = ie({
2586
+ 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: E, loading: m } = we(), f = ie({
2572
2587
  isValid: !1,
2573
2588
  tokenIsValid: !1,
2574
2589
  errors: [],
@@ -2583,7 +2598,7 @@ const nr = {
2583
2598
  const v = (await n(f.password)).errors;
2584
2599
  f.errors = v?.map((w) => w.code), f.confirmPassword !== f.password && f.errors.push("Repeat-password"), f.isValid = f.errors.length == 0;
2585
2600
  }
2586
- }, O = async () => {
2601
+ }, L = async () => {
2587
2602
  const { valid: v } = await u();
2588
2603
  if (v) {
2589
2604
  const w = await s(t.userId, f.password, t.token);
@@ -2594,7 +2609,7 @@ const nr = {
2594
2609
  f.errors = w.errors;
2595
2610
  }
2596
2611
  }, T = I(() => ({
2597
- logo: g.value ? "" : E.value?.logo || t.logo
2612
+ logo: m.value ? "" : E.value?.logo || t.logo
2598
2613
  }));
2599
2614
  return (v, w) => (b(), D(i(_e), {
2600
2615
  logo: T.value.logo,
@@ -2606,23 +2621,23 @@ const nr = {
2606
2621
  i(r) ? (b(), D(i(Ht), {
2607
2622
  key: 0,
2608
2623
  active: ""
2609
- })) : z("", !0),
2610
- _(i(ge), null, {
2624
+ })) : q("", !0),
2625
+ _(i(me), null, {
2611
2626
  default: h(() => [
2612
- _(i(Z), {
2627
+ _(i(X), {
2613
2628
  label: i(c)("PASSWORDRESET.FIELDS.PASSWORD.LABEL"),
2614
2629
  name: "password",
2615
2630
  "model-value": f.password,
2616
2631
  rules: "required"
2617
2632
  }, {
2618
- default: h(({ field: C, errorMessage: L, handleChange: m, errors: A }) => [
2619
- _(i($), re(C, {
2633
+ default: h(({ field: C, errorMessage: O, handleChange: g, errors: p }) => [
2634
+ _(i(K), re(C, {
2620
2635
  ref: "passwordField",
2621
2636
  modelValue: f.password,
2622
2637
  "onUpdate:modelValue": [
2623
- w[0] || (w[0] = (p) => f.password = p),
2624
- (p) => {
2625
- m(p), S();
2638
+ w[0] || (w[0] = (A) => f.password = A),
2639
+ (A) => {
2640
+ g(A), S();
2626
2641
  }
2627
2642
  ],
2628
2643
  class: "tw-mb-4",
@@ -2632,26 +2647,26 @@ const nr = {
2632
2647
  autocomplete: "new-password",
2633
2648
  disabled: !f.tokenIsValid,
2634
2649
  required: "",
2635
- error: !!A.length,
2636
- "error-message": L
2650
+ error: !!p.length,
2651
+ "error-message": O
2637
2652
  }), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
2638
2653
  ]),
2639
2654
  _: 1
2640
2655
  }, 8, ["label", "model-value"]),
2641
- _(i(Z), {
2656
+ _(i(X), {
2642
2657
  label: i(c)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.LABEL"),
2643
2658
  name: "confirm_password",
2644
2659
  "model-value": f.confirmPassword,
2645
2660
  rules: "required"
2646
2661
  }, {
2647
- default: h(({ field: C, errorMessage: L, handleChange: m, errors: A }) => [
2648
- _(i($), re(C, {
2662
+ default: h(({ field: C, errorMessage: O, handleChange: g, errors: p }) => [
2663
+ _(i(K), re(C, {
2649
2664
  ref: "confirmPasswordField",
2650
2665
  modelValue: f.confirmPassword,
2651
2666
  "onUpdate:modelValue": [
2652
- w[1] || (w[1] = (p) => f.confirmPassword = p),
2653
- (p) => {
2654
- m(p), S();
2667
+ w[1] || (w[1] = (A) => f.confirmPassword = A),
2668
+ (A) => {
2669
+ g(A), S();
2655
2670
  }
2656
2671
  ],
2657
2672
  class: "tw-mb-6",
@@ -2661,19 +2676,19 @@ const nr = {
2661
2676
  type: "password",
2662
2677
  autocomplete: "new-password",
2663
2678
  required: "",
2664
- error: !!A.length,
2665
- "error-message": L,
2666
- onKeyup: lt(O, ["enter"])
2679
+ error: !!p.length,
2680
+ "error-message": O,
2681
+ onKeyup: lt(L, ["enter"])
2667
2682
  }), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
2668
2683
  ]),
2669
2684
  _: 1
2670
2685
  }, 8, ["label", "model-value"]),
2671
- _(i(x), {
2686
+ _(i($), {
2672
2687
  variant: "primary",
2673
2688
  class: "tw-w-full",
2674
2689
  disabled: d.value,
2675
2690
  loading: i(r),
2676
- onClick: O
2691
+ onClick: L
2677
2692
  }, {
2678
2693
  default: h(() => [
2679
2694
  M(y(i(c)("PASSWORDRESET.SAVE_PASSWORD")), 1)
@@ -2696,7 +2711,7 @@ const nr = {
2696
2711
  _: 1
2697
2712
  }, 8, ["logo", "background", "title", "subtitle"]));
2698
2713
  }
2699
- }), Hl = cr, dr = /* @__PURE__ */ H({
2714
+ }), $l = fr, gr = /* @__PURE__ */ H({
2700
2715
  __name: "Invite",
2701
2716
  props: {
2702
2717
  userId: {},
@@ -2707,7 +2722,7 @@ const nr = {
2707
2722
  },
2708
2723
  setup(e) {
2709
2724
  ue({ validateOnMount: !1 });
2710
- const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t: c } = le({ useScope: "global" }), u = Ie(), E = ct(), { uiSettings: g, loading: f } = we(), d = ie({
2725
+ const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t: c } = le({ useScope: "global" }), u = Ie(), E = ct(), { uiSettings: m, loading: f } = we(), d = ie({
2711
2726
  isValid: !1,
2712
2727
  tokenIsValid: !1,
2713
2728
  errors: [],
@@ -2717,7 +2732,7 @@ const nr = {
2717
2732
  Re(async () => {
2718
2733
  d.tokenIsValid = await a(t.userId, t.token), d.tokenIsValid || d.errors.push("Invalid-token");
2719
2734
  });
2720
- const O = async () => {
2735
+ const L = async () => {
2721
2736
  if (d.tokenIsValid) {
2722
2737
  const w = (await n(d.password)).errors;
2723
2738
  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;
@@ -2726,7 +2741,7 @@ const nr = {
2726
2741
  const w = await s(t.userId, d.password, t.token);
2727
2742
  w.succeeded ? (await o(t.userName, d.password)).succeeded && l.push("/") : d.errors = w.errors;
2728
2743
  }, v = I(() => ({
2729
- logo: f.value ? "" : g.value?.logo || t.logo
2744
+ logo: f.value ? "" : m.value?.logo || t.logo
2730
2745
  }));
2731
2746
  return (w, C) => (b(), D(i(_e), {
2732
2747
  logo: v.value.logo,
@@ -2738,10 +2753,10 @@ const nr = {
2738
2753
  i(r) ? (b(), D(i(Ht), {
2739
2754
  key: 0,
2740
2755
  active: ""
2741
- })) : z("", !0),
2742
- _(i(ge), null, {
2756
+ })) : q("", !0),
2757
+ _(i(me), null, {
2743
2758
  default: h(() => [
2744
- _(i($), {
2759
+ _(i(K), {
2745
2760
  class: "tw-mb-4",
2746
2761
  label: i(c)("INVITATION.FIELDS.EMAIL.LABEL"),
2747
2762
  "model-value": e.userName,
@@ -2749,20 +2764,20 @@ const nr = {
2749
2764
  autocomplete: "username",
2750
2765
  disabled: ""
2751
2766
  }, null, 8, ["label", "model-value"]),
2752
- _(i(Z), {
2767
+ _(i(X), {
2753
2768
  label: i(c)("INVITATION.FIELDS.PASSWORD.LABEL"),
2754
2769
  "model-value": d.password,
2755
2770
  rules: "required",
2756
2771
  name: "password"
2757
2772
  }, {
2758
- default: h(({ field: L, errorMessage: m, handleChange: A, errors: p }) => [
2759
- _(i($), re(L, {
2773
+ default: h(({ field: O, errorMessage: g, handleChange: p, errors: A }) => [
2774
+ _(i(K), re(O, {
2760
2775
  ref: "passwordField",
2761
2776
  modelValue: d.password,
2762
2777
  "onUpdate:modelValue": [
2763
2778
  C[0] || (C[0] = (R) => d.password = R),
2764
2779
  (R) => {
2765
- A(R), O();
2780
+ p(R), L();
2766
2781
  }
2767
2782
  ],
2768
2783
  class: "tw-mb-4",
@@ -2771,27 +2786,27 @@ const nr = {
2771
2786
  type: "password",
2772
2787
  autocomplete: "new-password",
2773
2788
  disabled: !d.tokenIsValid,
2774
- error: !!p.length,
2775
- "error-message": m,
2789
+ error: !!A.length,
2790
+ "error-message": g,
2776
2791
  required: ""
2777
2792
  }), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
2778
2793
  ]),
2779
2794
  _: 1
2780
2795
  }, 8, ["label", "model-value"]),
2781
- _(i(Z), {
2796
+ _(i(X), {
2782
2797
  label: i(c)("INVITATION.FIELDS.CONFIRM_PASSWORD.LABEL"),
2783
2798
  "model-value": d.confirmPassword,
2784
2799
  rules: "required",
2785
2800
  name: "confirm_password"
2786
2801
  }, {
2787
- default: h(({ field: L, errorMessage: m, handleChange: A, errors: p }) => [
2788
- _(i($), re(L, {
2802
+ default: h(({ field: O, errorMessage: g, handleChange: p, errors: A }) => [
2803
+ _(i(K), re(O, {
2789
2804
  ref: "confirmPasswordField",
2790
2805
  modelValue: d.confirmPassword,
2791
2806
  "onUpdate:modelValue": [
2792
2807
  C[1] || (C[1] = (R) => d.confirmPassword = R),
2793
2808
  (R) => {
2794
- A(R), O();
2809
+ p(R), L();
2795
2810
  }
2796
2811
  ],
2797
2812
  class: "tw-mb-6",
@@ -2800,15 +2815,15 @@ const nr = {
2800
2815
  disabled: !d.tokenIsValid,
2801
2816
  type: "password",
2802
2817
  autocomplete: "new-password",
2803
- error: !!p.length,
2804
- "error-message": m,
2818
+ error: !!A.length,
2819
+ "error-message": g,
2805
2820
  required: "",
2806
2821
  onKeyup: lt(T, ["enter"])
2807
2822
  }), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
2808
2823
  ]),
2809
2824
  _: 1
2810
2825
  }, 8, ["label", "model-value"]),
2811
- _(i(x), {
2826
+ _(i($), {
2812
2827
  variant: "primary",
2813
2828
  class: "tw-w-full",
2814
2829
  disabled: i(r) || !d.isValid || !d.tokenIsValid,
@@ -2820,12 +2835,12 @@ const nr = {
2820
2835
  ]),
2821
2836
  _: 1
2822
2837
  }, 8, ["disabled", "loading"]),
2823
- (b(!0), W(ne, null, Fe(d.errors, (L) => (b(), D(i(Ee), {
2824
- key: L,
2838
+ (b(!0), W(ne, null, Fe(d.errors, (O) => (b(), D(i(Ee), {
2839
+ key: O,
2825
2840
  class: "tw-mt-3 tw-text-danger-500"
2826
2841
  }, {
2827
2842
  default: h(() => [
2828
- M(y(i(c)(`INVITATION.ERRORS.${L}`)), 1)
2843
+ M(y(i(c)(`INVITATION.ERRORS.${O}`)), 1)
2829
2844
  ]),
2830
2845
  _: 2
2831
2846
  }, 1024))), 128))
@@ -2836,10 +2851,10 @@ const nr = {
2836
2851
  _: 1
2837
2852
  }, 8, ["logo", "background", "title", "subtitle"]));
2838
2853
  }
2839
- }), Gl = dr, Er = {
2854
+ }), Kl = gr, mr = {
2840
2855
  key: 0,
2841
2856
  class: "tw-mb-4"
2842
- }, fr = { class: "tw-flex tw-gap-3" }, mr = /* @__PURE__ */ H({
2857
+ }, Sr = { class: "tw-flex tw-gap-3" }, Ar = /* @__PURE__ */ H({
2843
2858
  __name: "ChangePassword",
2844
2859
  props: {
2845
2860
  forced: { type: Boolean },
@@ -2851,14 +2866,14 @@ const nr = {
2851
2866
  logo: c.value ? "" : l.value?.logo || t.logo
2852
2867
  }));
2853
2868
  ue({ validateOnMount: !1 });
2854
- const E = Ie(), g = ct(), f = ve(), d = ie({
2869
+ const E = Ie(), m = ct(), f = ve(), d = ie({
2855
2870
  isValid: !1,
2856
2871
  errors: [],
2857
2872
  currentPassword: "",
2858
2873
  password: "",
2859
2874
  confirmPassword: ""
2860
- }), S = I(() => !g.value || !E.value);
2861
- async function O() {
2875
+ }), S = I(() => !m.value || !E.value);
2876
+ async function L() {
2862
2877
  await r(), await f.push("/login");
2863
2878
  }
2864
2879
  async function T() {
@@ -2868,7 +2883,7 @@ const nr = {
2868
2883
  function v() {
2869
2884
  be(async () => {
2870
2885
  if (d.password || d.confirmPassword) {
2871
- const w = (await o(d.password)).errors ?? [], C = ar({
2886
+ const w = (await o(d.password)).errors ?? [], C = or({
2872
2887
  password: d.password,
2873
2888
  confirmPassword: d.confirmPassword,
2874
2889
  currentPassword: d.currentPassword
@@ -2884,7 +2899,7 @@ const nr = {
2884
2899
  subtitle: e.forced ? i(a)("COMPONENTS.CHANGE_PASSWORD.SUBTITLE_FORCED") : void 0
2885
2900
  }, {
2886
2901
  default: h(() => [
2887
- e.forced ? (b(), W("div", Er, [
2902
+ e.forced ? (b(), W("div", mr, [
2888
2903
  _(i(Ln), {
2889
2904
  variant: "info",
2890
2905
  icon: "lucide-lightbulb",
@@ -2895,21 +2910,21 @@ const nr = {
2895
2910
  ]),
2896
2911
  _: 1
2897
2912
  })
2898
- ])) : z("", !0),
2899
- _(i(ge), null, {
2913
+ ])) : q("", !0),
2914
+ _(i(me), null, {
2900
2915
  default: h(() => [
2901
- _(i(Z), {
2916
+ _(i(X), {
2902
2917
  label: i(a)("COMPONENTS.CHANGE_PASSWORD.CURRENT_PASSWORD.LABEL"),
2903
2918
  name: "current",
2904
2919
  rules: "required|min:6",
2905
2920
  "model-value": d.currentPassword
2906
2921
  }, {
2907
- default: h(({ field: L, errorMessage: m, errors: A }) => [
2908
- _(i($), re(L, {
2922
+ default: h(({ field: O, errorMessage: g, errors: p }) => [
2923
+ _(i(K), re(O, {
2909
2924
  ref: "passwordField",
2910
2925
  modelValue: d.currentPassword,
2911
2926
  "onUpdate:modelValue": [
2912
- C[0] || (C[0] = (p) => d.currentPassword = p),
2927
+ C[0] || (C[0] = (A) => d.currentPassword = A),
2913
2928
  v
2914
2929
  ],
2915
2930
  class: "tw-mb-4",
@@ -2918,24 +2933,24 @@ const nr = {
2918
2933
  type: "password",
2919
2934
  autocomplete: "current-password",
2920
2935
  required: "",
2921
- error: !!A.length,
2922
- "error-message": m
2936
+ error: !!p.length,
2937
+ "error-message": g
2923
2938
  }), null, 16, ["modelValue", "label", "placeholder", "error", "error-message"])
2924
2939
  ]),
2925
2940
  _: 1
2926
2941
  }, 8, ["label", "model-value"]),
2927
- _(i(Z), {
2942
+ _(i(X), {
2928
2943
  label: i(a)("COMPONENTS.CHANGE_PASSWORD.NEW_PASSWORD.LABEL"),
2929
2944
  name: "new_pass",
2930
2945
  rules: "required|min:6",
2931
2946
  "model-value": d.password
2932
2947
  }, {
2933
- default: h(({ field: L, errorMessage: m, errors: A }) => [
2934
- _(i($), re(L, {
2948
+ default: h(({ field: O, errorMessage: g, errors: p }) => [
2949
+ _(i(K), re(O, {
2935
2950
  ref: "newPasswordField",
2936
2951
  modelValue: d.password,
2937
2952
  "onUpdate:modelValue": [
2938
- C[1] || (C[1] = (p) => d.password = p),
2953
+ C[1] || (C[1] = (A) => d.password = A),
2939
2954
  v
2940
2955
  ],
2941
2956
  class: "tw-mb-4",
@@ -2944,24 +2959,24 @@ const nr = {
2944
2959
  type: "password",
2945
2960
  autocomplete: "new-password",
2946
2961
  required: "",
2947
- error: !!A.length,
2948
- "error-message": m
2962
+ error: !!p.length,
2963
+ "error-message": g
2949
2964
  }), null, 16, ["modelValue", "label", "placeholder", "error", "error-message"])
2950
2965
  ]),
2951
2966
  _: 1
2952
2967
  }, 8, ["label", "model-value"]),
2953
- _(i(Z), {
2968
+ _(i(X), {
2954
2969
  label: i(a)("COMPONENTS.CHANGE_PASSWORD.CONFIRM_PASSWORD.LABEL"),
2955
2970
  name: "confirm_pass",
2956
2971
  rules: "required|min:6",
2957
2972
  "model-value": d.confirmPassword
2958
2973
  }, {
2959
- default: h(({ field: L, errorMessage: m, errors: A }) => [
2960
- _(i($), re(L, {
2974
+ default: h(({ field: O, errorMessage: g, errors: p }) => [
2975
+ _(i(K), re(O, {
2961
2976
  ref: "confirmPasswordField",
2962
2977
  modelValue: d.confirmPassword,
2963
2978
  "onUpdate:modelValue": [
2964
- C[2] || (C[2] = (p) => d.confirmPassword = p),
2979
+ C[2] || (C[2] = (A) => d.confirmPassword = A),
2965
2980
  v
2966
2981
  ],
2967
2982
  class: "tw-mb-6",
@@ -2970,24 +2985,24 @@ const nr = {
2970
2985
  type: "password",
2971
2986
  autocomplete: "new-password",
2972
2987
  required: "",
2973
- error: !!A.length,
2974
- "error-message": m
2988
+ error: !!p.length,
2989
+ "error-message": g
2975
2990
  }), null, 16, ["modelValue", "label", "placeholder", "error", "error-message"])
2976
2991
  ]),
2977
2992
  _: 1
2978
2993
  }, 8, ["label", "model-value"]),
2979
- U("div", fr, [
2980
- _(i(x), {
2994
+ U("div", Sr, [
2995
+ _(i($), {
2981
2996
  variant: "secondary",
2982
2997
  class: "tw-flex-1",
2983
- onClick: O
2998
+ onClick: L
2984
2999
  }, {
2985
3000
  default: h(() => [
2986
3001
  M(y(i(a)("COMPONENTS.CHANGE_PASSWORD.CANCEL")), 1)
2987
3002
  ]),
2988
3003
  _: 1
2989
3004
  }),
2990
- _(i(x), {
3005
+ _(i($), {
2991
3006
  variant: "primary",
2992
3007
  class: "tw-flex-1",
2993
3008
  disabled: i(s) || !d.isValid || S.value,
@@ -3000,12 +3015,12 @@ const nr = {
3000
3015
  _: 1
3001
3016
  }, 8, ["disabled", "loading"])
3002
3017
  ]),
3003
- (b(!0), W(ne, null, Fe(d.errors, (L, m) => (b(), D(i(Ee), {
3004
- key: m,
3018
+ (b(!0), W(ne, null, Fe(d.errors, (O, g) => (b(), D(i(Ee), {
3019
+ key: g,
3005
3020
  class: "tw-mt-3 tw-text-danger-500"
3006
3021
  }, {
3007
3022
  default: h(() => [
3008
- M(y(L.code ? i(a)(`COMPONENTS.CHANGE_PASSWORD.ERRORS.${L.code}`) : L), 1)
3023
+ M(y(O.code ? i(a)(`COMPONENTS.CHANGE_PASSWORD.ERRORS.${O.code}`) : O), 1)
3009
3024
  ]),
3010
3025
  _: 2
3011
3026
  }, 1024))), 128))
@@ -3016,7 +3031,7 @@ const nr = {
3016
3031
  _: 1
3017
3032
  }, 8, ["logo", "background", "title", "subtitle"]));
3018
3033
  }
3019
- }), xl = mr, Qe = k("use-blade-navigation-adapter"), nt = /* @__PURE__ */ new Set();
3034
+ }), zl = Ar, Je = k("use-blade-navigation-adapter"), nt = /* @__PURE__ */ new Set();
3020
3035
  function oe(e, t) {
3021
3036
  if (nt.has(e)) return;
3022
3037
  nt.add(e);
@@ -3041,16 +3056,16 @@ function Nt(e, t, a) {
3041
3056
  };
3042
3057
  }
3043
3058
  let De, ye;
3044
- function $l() {
3059
+ function ql() {
3045
3060
  De = void 0, ye = void 0, nt.clear();
3046
3061
  }
3047
- function gr() {
3048
- const e = as, t = ss, a = ns;
3062
+ function pr() {
3063
+ const e = ns, t = os, a = ss;
3049
3064
  if (!e || !t)
3050
3065
  throw new Error(
3051
3066
  "[useBladeNavigation adapter] BladeStack or BladeMessaging not available. Ensure plugin-v2 is installed before calling useBladeNavigation()."
3052
3067
  );
3053
- const n = ts?.router;
3068
+ const n = as?.router;
3054
3069
  if (!n)
3055
3070
  throw new Error("[@vc-shell/framework#useBladeNavigation] Vue Router instance is not available.");
3056
3071
  return De || (De = I(() => {
@@ -3069,7 +3084,7 @@ function gr() {
3069
3084
  activeWorkspace: ye
3070
3085
  };
3071
3086
  }
3072
- function Sr(e) {
3087
+ function Tr(e) {
3073
3088
  if (!e)
3074
3089
  throw new Error("Blade cannot be null or undefined.");
3075
3090
  if (typeof e == "object" && "name" in e && typeof e.name == "string")
@@ -3081,120 +3096,120 @@ function Dt(e) {
3081
3096
  const [t, a = ""] = e.replace(/^#/, "").split("?");
3082
3097
  return [t, a];
3083
3098
  }
3084
- function pr(e) {
3099
+ function hr(e) {
3085
3100
  const t = Number(e);
3086
3101
  return !isNaN(t) && String(t) === e ? t : e;
3087
3102
  }
3088
- function Kl() {
3089
- const { bladeStack: e, messaging: t, bladeRegistry: a, router: n, blades: s, activeWorkspace: o } = gr(), r = nn() ? Q(xt, void 0) : void 0;
3103
+ function Yl() {
3104
+ const { bladeStack: e, messaging: t, bladeRegistry: a, router: n, blades: s, activeWorkspace: o } = pr(), r = sn() ? J(xt, void 0) : void 0;
3090
3105
  function l() {
3091
3106
  return r ? r.value.id : e.activeBlade.value?.id;
3092
3107
  }
3093
- function c(m) {
3094
- const A = e.blades.value;
3095
- if (m >= 0 && m < A.length)
3096
- return A[m].id;
3108
+ function c(g) {
3109
+ const p = e.blades.value;
3110
+ if (g >= 0 && g < p.length)
3111
+ return p[g].id;
3097
3112
  }
3098
- async function u(m, A) {
3113
+ async function u(g, p) {
3099
3114
  const R = {
3100
- name: Sr(m.blade),
3101
- param: m.param,
3102
- options: m.options,
3103
- onOpen: m.onOpen,
3104
- onClose: m.onClose,
3105
- replaceCurrentBlade: m.replaceCurrentBlade
3115
+ name: Tr(g.blade),
3116
+ param: g.param,
3117
+ options: g.options,
3118
+ onOpen: g.onOpen,
3119
+ onClose: g.onClose,
3120
+ replaceCurrentBlade: g.replaceCurrentBlade
3106
3121
  };
3107
- if (A)
3122
+ if (p)
3108
3123
  await e.openWorkspace(R);
3109
- else if (m.replaceCurrentBlade)
3124
+ else if (g.replaceCurrentBlade)
3110
3125
  await e.coverCurrentBlade(R);
3111
3126
  else {
3112
3127
  const P = l();
3113
3128
  await e.openBlade({ ...R, parentId: P });
3114
3129
  }
3115
3130
  }
3116
- async function E(m) {
3131
+ async function E(g) {
3117
3132
  oe("closeBlade(index)", "useBlade().closeSelf()");
3118
- const A = c(m);
3119
- return A ? e.closeBlade(A) : (Qe.error(`closeBlade: No blade found at index ${m}.`), !1);
3133
+ const p = c(g);
3134
+ return p ? e.closeBlade(p) : (Je.error(`closeBlade: No blade found at index ${g}.`), !1);
3120
3135
  }
3121
- function g() {
3136
+ function m() {
3122
3137
  oe("goToRoot()");
3123
- const m = n.getRoutes(), A = m.find((P) => P.meta?.root), p = A ? m.find((P) => P.aliasOf?.path === A.path) ?? A : void 0;
3124
- if (p?.name)
3138
+ const g = n.getRoutes(), p = g.find((P) => P.meta?.root), A = p ? g.find((P) => P.aliasOf?.path === p.path) ?? p : void 0;
3139
+ if (A?.name)
3125
3140
  return {
3126
- name: p.name,
3141
+ name: A.name,
3127
3142
  params: n.currentRoute.value.params
3128
3143
  };
3129
- const R = On(n);
3144
+ const R = Rn(n);
3130
3145
  return { path: R ? `/${R}` : "/" };
3131
3146
  }
3132
- async function f(m, A) {
3147
+ async function f(g, p) {
3133
3148
  oe("onParentCall(args, index)", "useBlade().callParent(method, args)");
3134
- let p;
3135
- if (A !== void 0 ? p = c(A) : p = l(), !p) {
3136
- Qe.error("onParentCall: Could not determine caller blade.");
3149
+ let A;
3150
+ if (p !== void 0 ? A = c(p) : A = l(), !A) {
3151
+ Je.error("onParentCall: Could not determine caller blade.");
3137
3152
  return;
3138
3153
  }
3139
3154
  try {
3140
- const R = await t.callParent(p, m.method, m.args);
3141
- typeof m.callback == "function" && m.callback(R);
3155
+ const R = await t.callParent(A, g.method, g.args);
3156
+ typeof g.callback == "function" && g.callback(R);
3142
3157
  } catch (R) {
3143
- Qe.error(`onParentCall: Failed to call parent method "${m.method}":`, R);
3158
+ Je.error(`onParentCall: Failed to call parent method "${g.method}":`, R);
3144
3159
  }
3145
3160
  }
3146
- function d(m) {
3161
+ function d(g) {
3147
3162
  oe("onBeforeClose(cb)", "useBlade().onBeforeClose(guard)");
3148
- const A = l();
3149
- if (!A) {
3150
- sn("onBeforeClose: Could not determine current blade.");
3163
+ const p = l();
3164
+ if (!p) {
3165
+ on("onBeforeClose: Could not determine current blade.");
3151
3166
  return;
3152
3167
  }
3153
- e.registerBeforeClose(A, async () => await m() === !1);
3168
+ e.registerBeforeClose(p, async () => await g() === !1);
3154
3169
  }
3155
- function S(m) {
3156
- return a.getBladeComponent(m);
3170
+ function S(g) {
3171
+ return a.getBladeComponent(g);
3157
3172
  }
3158
- function O(m) {
3173
+ function L(g) {
3159
3174
  oe("routeResolver", "plugin-v2 handles URL resolution automatically");
3160
3175
  }
3161
- function T(m) {
3176
+ function T(g) {
3162
3177
  oe("setNavigationQuery");
3163
- const A = e.workspace.value;
3164
- if (!A) return;
3165
- const p = A.name.toLowerCase(), [R, P] = Dt(window.location.hash), B = new URLSearchParams(P);
3166
- for (const K of [...B.keys()])
3167
- K.startsWith(`${p}_`) && B.delete(K);
3168
- for (const [K, ce] of Object.entries(m))
3169
- ce != null && B.set(`${p}_${K}`, String(ce));
3178
+ const p = e.workspace.value;
3179
+ if (!p) return;
3180
+ const A = p.name.toLowerCase(), [R, P] = Dt(window.location.hash), B = new URLSearchParams(P);
3181
+ for (const z of [...B.keys()])
3182
+ z.startsWith(`${A}_`) && B.delete(z);
3183
+ for (const [z, ce] of Object.entries(g))
3184
+ ce != null && B.set(`${A}_${z}`, String(ce));
3170
3185
  const V = B.toString();
3171
3186
  n.options.history.replace(V ? `${R}?${V}` : R);
3172
3187
  }
3173
3188
  function v() {
3174
3189
  oe("getNavigationQuery");
3175
- const m = e.workspace.value;
3176
- if (!m) return;
3177
- const A = m.name.toLowerCase(), p = new URLSearchParams(Dt(window.location.hash)[1]), R = {};
3178
- for (const [P, B] of p.entries())
3179
- P.startsWith(`${A}_`) && (R[P.replace(`${A}_`, "")] = pr(B));
3190
+ const g = e.workspace.value;
3191
+ if (!g) return;
3192
+ const p = g.name.toLowerCase(), A = new URLSearchParams(Dt(window.location.hash)[1]), R = {};
3193
+ for (const [P, B] of A.entries())
3194
+ P.startsWith(`${p}_`) && (R[P.replace(`${p}_`, "")] = hr(B));
3180
3195
  return Object.keys(R).length > 0 ? R : void 0;
3181
3196
  }
3182
- function w(m, A) {
3183
- const p = c(m);
3184
- p && e.setBladeError(p, A);
3197
+ function w(g, p) {
3198
+ const A = c(g);
3199
+ A && e.setBladeError(A, p);
3185
3200
  }
3186
- function C(m) {
3187
- const A = c(m);
3188
- A && e.clearBladeError(A);
3201
+ function C(g) {
3202
+ const p = c(g);
3203
+ p && e.clearBladeError(p);
3189
3204
  }
3190
- const L = I(() => {
3205
+ const O = I(() => {
3191
3206
  if (!r) return;
3192
- const m = r.value;
3207
+ const g = r.value;
3193
3208
  return {
3194
- idx: e.blades.value.findIndex((R) => R.id === m.id),
3195
- instance: m.title != null ? { title: m.title } : void 0,
3196
- isVisible: m.visible,
3197
- error: N(m.error ? new Error(String(m.error)) : null)
3209
+ idx: e.blades.value.findIndex((R) => R.id === g.id),
3210
+ instance: g.title != null ? { title: g.title } : void 0,
3211
+ isVisible: g.visible,
3212
+ error: N(g.error ? new Error(String(g.error)) : null)
3198
3213
  };
3199
3214
  });
3200
3215
  return {
@@ -3202,16 +3217,16 @@ function Kl() {
3202
3217
  activeWorkspace: o,
3203
3218
  openBlade: u,
3204
3219
  closeBlade: E,
3205
- goToRoot: g,
3220
+ goToRoot: m,
3206
3221
  onParentCall: f,
3207
3222
  onBeforeClose: d,
3208
3223
  resolveBladeByName: S,
3209
- routeResolver: O,
3224
+ routeResolver: L,
3210
3225
  setNavigationQuery: T,
3211
3226
  getNavigationQuery: v,
3212
3227
  setBladeError: w,
3213
3228
  clearBladeError: C,
3214
- currentBladeNavigationData: L
3229
+ currentBladeNavigationData: O
3215
3230
  };
3216
3231
  }
3217
3232
  function Ce(e) {
@@ -3227,7 +3242,7 @@ function Ue(e, t) {
3227
3242
  if (!Ue(a[o], n[o])) return !1;
3228
3243
  return !0;
3229
3244
  }
3230
- function zl(e) {
3245
+ function jl(e) {
3231
3246
  const {
3232
3247
  data: t,
3233
3248
  canSaveOverride: a,
@@ -3235,39 +3250,39 @@ function zl(e) {
3235
3250
  autoBeforeUnload: s = !0,
3236
3251
  closeConfirmMessage: o,
3237
3252
  onRevert: r
3238
- } = e, { meta: l, setFieldError: c, errorBag: u } = ue({ validateOnMount: !1 }), E = N(J(t.value)), g = N(!1);
3253
+ } = e, { meta: l, setFieldError: c, errorBag: u } = ue({ validateOnMount: !1 }), E = N(Q(t.value)), m = N(!1);
3239
3254
  ae(
3240
3255
  t,
3241
3256
  (w) => {
3242
- f.value && (g.value = !Ue(w, E.value));
3257
+ f.value && (m.value = !Ue(w, E.value));
3243
3258
  },
3244
3259
  { deep: !0 }
3245
3260
  );
3246
- const f = N(!1), d = I(() => f.value && g.value), S = I(() => !(!f.value || !l.value.valid || !g.value || a && !a.value));
3247
- function O() {
3248
- E.value = J(t.value), g.value = !1, f.value = !0;
3261
+ const f = N(!1), d = I(() => f.value && m.value), S = I(() => !(!f.value || !l.value.valid || !m.value || a && !a.value));
3262
+ function L() {
3263
+ E.value = Q(t.value), m.value = !1, f.value = !0;
3249
3264
  }
3250
3265
  function T() {
3251
- f.value = !0, g.value = !Ue(t.value, E.value);
3266
+ f.value = !0, m.value = !Ue(t.value, E.value);
3252
3267
  }
3253
3268
  function v() {
3254
3269
  if (r)
3255
3270
  return r();
3256
- t.value = J(E.value);
3271
+ t.value = Q(E.value);
3257
3272
  }
3258
- if (s && zs(d), n !== !1) {
3259
- const { onBeforeClose: w } = ut(), { showConfirmation: C } = Rn();
3273
+ if (s && js(d), n !== !1) {
3274
+ const { onBeforeClose: w } = ut(), { showConfirmation: C } = _n();
3260
3275
  w(async () => {
3261
- let L;
3262
- if (typeof n == "object" ? L = n.value && d.value : L = d.value, L) {
3263
- const m = o ? Mt(o) : "You have unsaved changes. Are you sure you want to leave?";
3264
- return !await C(m);
3276
+ let O;
3277
+ if (typeof n == "object" ? O = n.value && d.value : O = d.value, O) {
3278
+ const g = o ? Mt(o) : "You have unsaved changes. Are you sure you want to leave?";
3279
+ return !await C(g);
3265
3280
  }
3266
3281
  return !1;
3267
3282
  });
3268
3283
  }
3269
- return Bt(yn, { isModified: d, canSave: S }), {
3270
- setBaseline: O,
3284
+ return Bt(Bn, { isModified: d, canSave: S }), {
3285
+ setBaseline: L,
3271
3286
  markReady: T,
3272
3287
  revert: v,
3273
3288
  canSave: S,
@@ -3278,17 +3293,17 @@ function zl(e) {
3278
3293
  errorBag: u
3279
3294
  };
3280
3295
  }
3281
- const Be = 14, Na = 3;
3282
- function Ar(e, t, a) {
3296
+ const Be = 14, Da = 3;
3297
+ function Or(e, t, a) {
3283
3298
  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, E) => {
3284
- const g = n - 1 - E;
3299
+ const m = n - 1 - E;
3285
3300
  let f = 0;
3286
3301
  for (let S = E + 1; S < n; S++)
3287
3302
  f += s(e[S]);
3288
- const d = g * Be + f;
3303
+ const d = m * Be + f;
3289
3304
  return {
3290
- sonnerIndex: g,
3291
- zIndex: n - g,
3305
+ sonnerIndex: m,
3306
+ zIndex: n - m,
3292
3307
  offset: d,
3293
3308
  initialHeight: s(u)
3294
3309
  };
@@ -3299,13 +3314,13 @@ function Ar(e, t, a) {
3299
3314
  let E = 0;
3300
3315
  for (let d = 1; d < n; d++)
3301
3316
  E += s(e[d]);
3302
- const g = u * Be + E, f = s(e[0]);
3303
- c = g + f;
3317
+ const m = u * Be + E, f = s(e[0]);
3318
+ c = m + f;
3304
3319
  } else
3305
- c = r + Math.min(n - 1, Na - 1) * Be;
3320
+ c = r + Math.min(n - 1, Da - 1) * Be;
3306
3321
  return { toasts: l, frontHeight: r, groupHeight: c };
3307
3322
  }
3308
- function Tr() {
3323
+ function Lr() {
3309
3324
  const e = N(!1), t = N(!1);
3310
3325
  let a = null;
3311
3326
  function n() {
@@ -3317,8 +3332,8 @@ function Tr() {
3317
3332
  }, 200));
3318
3333
  }
3319
3334
  const o = ie(/* @__PURE__ */ new Map());
3320
- function r(E, g) {
3321
- const f = Math.round(g);
3335
+ function r(E, m) {
3336
+ const f = Math.round(m);
3322
3337
  o.get(E) !== f && o.set(E, f);
3323
3338
  }
3324
3339
  function l(E) {
@@ -3342,7 +3357,7 @@ function Tr() {
3342
3357
  setInteracting: u
3343
3358
  };
3344
3359
  }
3345
- const hr = H({
3360
+ const Rr = H({
3346
3361
  name: "NotificationContainer",
3347
3362
  inheritAttrs: !1,
3348
3363
  props: {
@@ -3398,7 +3413,7 @@ const hr = H({
3398
3413
  }
3399
3414
  },
3400
3415
  setup(e) {
3401
- const { notificationContainers: t, actions: a } = Q(Zt), n = I(() => t[e.position].value || []), {
3416
+ const { notificationContainers: t, actions: a } = J(Zt), n = I(() => t[e.position].value || []), {
3402
3417
  expanded: s,
3403
3418
  heightsMap: o,
3404
3419
  expandStack: r,
@@ -3406,8 +3421,8 @@ const hr = H({
3406
3421
  reportHeight: c,
3407
3422
  forgetHeight: u,
3408
3423
  clearHeights: E,
3409
- setInteracting: g
3410
- } = Tr();
3424
+ setInteracting: m
3425
+ } = Lr();
3411
3426
  function f(T) {
3412
3427
  return typeof T == "object" && (!!T?.render || !!T?.setup);
3413
3428
  }
@@ -3417,38 +3432,38 @@ const hr = H({
3417
3432
  function S() {
3418
3433
  a.clear(), E();
3419
3434
  }
3420
- const O = I(() => (e.position || "top-center").startsWith("top"));
3435
+ const L = I(() => (e.position || "top-center").startsWith("top"));
3421
3436
  return () => {
3422
- const T = n.value, v = T.length, w = s.value || v <= 1, C = v > 1, L = Ar(
3423
- T.map((p) => p.notificationId),
3437
+ const T = n.value, v = T.length, w = s.value || v <= 1, C = v > 1, O = Or(
3438
+ T.map((A) => A.notificationId),
3424
3439
  o,
3425
3440
  w
3426
- ), m = T.map((p, R) => {
3427
- const { sonnerIndex: P, zIndex: B, offset: V, initialHeight: K } = L.toasts[R], ce = {
3441
+ ), g = T.map((A, R) => {
3442
+ const { sonnerIndex: P, zIndex: B, offset: V, initialHeight: z } = O.toasts[R], ce = {
3428
3443
  "--toasts-before": P,
3429
3444
  "--z-index": B,
3430
3445
  "--offset": `${V}px`,
3431
- "--initial-height": K ? `${K}px` : "auto"
3432
- }, pe = {
3433
- ...p,
3446
+ "--initial-height": z ? `${z}px` : "auto"
3447
+ }, Ae = {
3448
+ ...A,
3434
3449
  onClose: d,
3435
3450
  onReportHeight: c,
3436
3451
  toastIndex: P,
3437
3452
  toastsCount: v,
3438
3453
  expanded: w,
3439
- visibleToasts: Na,
3454
+ visibleToasts: Da,
3440
3455
  style: ce
3441
- }, Da = p.content && f(p.content) ? ee(mt, { ...pe, content: ee(on(p.content)) }) : ee(mt, pe);
3442
- return ee("li", { key: p.notificationId, style: { display: "contents" } }, [Da]);
3456
+ }, ya = A.content && f(A.content) ? ee(gt, { ...Ae, content: ee(rn(A.content)) }) : ee(gt, Ae);
3457
+ return ee("li", { key: A.notificationId, style: { display: "contents" } }, [ya]);
3443
3458
  });
3444
- let A = null;
3445
- return C && (A = ee(
3459
+ let p = null;
3460
+ return C && (p = ee(
3446
3461
  "li",
3447
3462
  {
3448
3463
  class: "notification__clear-all",
3449
3464
  style: {
3450
3465
  position: "absolute",
3451
- [O.value ? "top" : "bottom"]: "0",
3466
+ [L.value ? "top" : "bottom"]: "0",
3452
3467
  left: "var(--width, 356px)",
3453
3468
  "margin-left": "8px",
3454
3469
  "list-style": "none",
@@ -3465,8 +3480,8 @@ const hr = H({
3465
3480
  onClick: S
3466
3481
  },
3467
3482
  [
3468
- ee(Bn, { icon: "lucide-x", size: "xs", "aria-hidden": "true" }),
3469
- X.global.t("CORE.NOTIFICATIONS.CLEAR_ALL")
3483
+ ee(Mn, { icon: "lucide-x", size: "xs", "aria-hidden": "true" }),
3484
+ x.global.t("CORE.NOTIFICATIONS.CLEAR_ALL")
3470
3485
  ]
3471
3486
  )
3472
3487
  ]
@@ -3476,60 +3491,60 @@ const hr = H({
3476
3491
  class: "notification__toast-group",
3477
3492
  "data-expanded": String(w),
3478
3493
  "data-position": e.position || "top-center",
3479
- "data-y-position": O.value ? "top" : "bottom",
3494
+ "data-y-position": L.value ? "top" : "bottom",
3480
3495
  style: {
3481
- "--front-toast-height": `${L.frontHeight}px`,
3496
+ "--front-toast-height": `${O.frontHeight}px`,
3482
3497
  "--gap": `${Be}px`,
3483
3498
  width: "var(--width, 356px)",
3484
- height: `${L.groupHeight}px`
3499
+ height: `${O.groupHeight}px`
3485
3500
  },
3486
3501
  onMouseenter: r,
3487
3502
  onMouseleave: l,
3488
3503
  onPointerdown: () => {
3489
- g(!0);
3504
+ m(!0);
3490
3505
  },
3491
3506
  onPointerup: () => {
3492
- g(!1);
3507
+ m(!1);
3493
3508
  }
3494
3509
  },
3495
- [...m, A]
3510
+ [...g, p]
3496
3511
  );
3497
3512
  };
3498
3513
  }
3499
- }), Lr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3514
+ }), _r = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3500
3515
  __proto__: null,
3501
- default: hr
3516
+ default: Rr
3502
3517
  }, Symbol.toStringTag, { value: "Module" }));
3503
- function Or(e, t) {
3504
- t.i18n?.locale && (X.global.locale.value = t.i18n.locale), t.i18n?.fallbackLocale && (X.global.fallbackLocale.value = t.i18n.fallbackLocale), e.use(X);
3505
- const a = _n();
3506
- e.provide(Mn, a);
3518
+ function Ir(e, t) {
3519
+ t.i18n?.locale && (x.global.locale.value = t.i18n.locale), t.i18n?.fallbackLocale && (x.global.fallbackLocale.value = t.i18n.fallbackLocale), e.use(x);
3520
+ const a = In();
3521
+ e.provide(kn, a);
3507
3522
  const { resolveCamelCaseLocale: n } = a;
3508
3523
  e.config.globalProperties.$mergeLocaleMessage = (s, o) => {
3509
- X.global.mergeLocaleMessage(n(s), o);
3510
- }, Object.entries(Vo).forEach(([s, o]) => {
3511
- X.global.mergeLocaleMessage(n(s), o);
3524
+ x.global.mergeLocaleMessage(n(s), o);
3525
+ }, Object.entries(Wo).forEach(([s, o]) => {
3526
+ x.global.mergeLocaleMessage(n(s), o);
3512
3527
  });
3513
3528
  }
3514
- function Rr(e) {
3515
- const t = Ba({
3529
+ function vr(e) {
3530
+ const t = Ma({
3516
3531
  phone: 480,
3517
3532
  desktop: 1024
3518
3533
  });
3519
- 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.greater("desktop"), e.config.globalProperties.$isTouch = "ontouchstart" in window || navigator.maxTouchPoints > 0, e.provide(kn, e.config.globalProperties.$isPhone), e.provide(Vn, e.config.globalProperties.$isTablet), e.provide(Un, e.config.globalProperties.$isMobile), e.provide(Fn, e.config.globalProperties.$isDesktop), e.provide(Wn, e.config.globalProperties.$isTouch);
3534
+ 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.greater("desktop"), e.config.globalProperties.$isTouch = "ontouchstart" in window || navigator.maxTouchPoints > 0, e.provide(Vn, e.config.globalProperties.$isPhone), e.provide(Un, e.config.globalProperties.$isTablet), e.provide(Fn, e.config.globalProperties.$isMobile), e.provide(Wn, e.config.globalProperties.$isDesktop), e.provide(Hn, e.config.globalProperties.$isTouch);
3520
3535
  }
3521
- function _r(e) {
3522
- e.config.globalProperties.pages = [], e.config.globalProperties.bladeRoutes = [], e.provide(Hn, e.config.globalProperties.bladeRoutes);
3536
+ function wr(e) {
3537
+ e.config.globalProperties.pages = [], e.config.globalProperties.bladeRoutes = [], e.provide(Gn, e.config.globalProperties.bladeRoutes);
3523
3538
  }
3524
- function Ir(e) {
3525
- e.provide(Gt, Ha()), e.provide(Gn, Ga()), e.provide(xn, xa()), e.provide($n, $a()), e.provide(Kn, Ka()), e.provide(zn, me());
3526
- const t = In(e);
3539
+ function Cr(e) {
3540
+ e.provide(Gt, Ga()), e.provide(xn, xa()), e.provide($n, $a()), e.provide(Kn, Ka()), e.provide(zn, za()), e.provide(qn, ge());
3541
+ const t = vn(e);
3527
3542
  e.provide(Ut, t);
3528
3543
  }
3529
- function vr(e, t) {
3530
- Ko(), e.use(Is, { router: t.router }), e.use(Ns), e.use(po), e.use(Oo), e.use(Ls), e.use(hs), e.use(os), e.use(jn, t.aiAgent);
3544
+ function Pr(e, t) {
3545
+ Yo(), e.use(vs, { router: t.router }), e.use(Ds), e.use(ho), e.use(Io), e.use(Ls), e.use(Os), e.use(rs), e.use(Zn, t.aiAgent);
3531
3546
  }
3532
- function wr(e, t) {
3547
+ function br(e, t) {
3533
3548
  if (!t.applicationInsights?.instrumentationKey) return;
3534
3549
  const a = {
3535
3550
  appInsightsConfig: {
@@ -3542,9 +3557,9 @@ function wr(e, t) {
3542
3557
  cloudRole: t.applicationInsights?.cloudRole,
3543
3558
  cloudRoleInstance: t.applicationInsights?.cloudRoleInstance
3544
3559
  };
3545
- e.provide(za, a);
3560
+ e.provide(qa, a);
3546
3561
  }
3547
- function Cr(e, t) {
3562
+ function Nr(e, t) {
3548
3563
  if (!t.applicationInsights?.instrumentationKey) return;
3549
3564
  const a = {
3550
3565
  appInsightsConfig: {
@@ -3557,10 +3572,10 @@ function Cr(e, t) {
3557
3572
  cloudRole: t.applicationInsights?.cloudRole,
3558
3573
  cloudRoleInstance: t.applicationInsights?.cloudRoleInstance
3559
3574
  };
3560
- e.use(rs, a);
3561
- const n = e.runWithContext(() => is());
3562
- e.provide(qa, n), e.runWithContext(() => {
3563
- const { setupPageTracking: s } = Ya();
3575
+ e.use(is, a);
3576
+ const n = e.runWithContext(() => ls());
3577
+ e.provide(Ya, n), e.runWithContext(() => {
3578
+ const { setupPageTracking: s } = ja();
3564
3579
  t.router.beforeEach((o) => {
3565
3580
  s.beforeEach({ name: o.name });
3566
3581
  }), t.router.afterEach((o) => {
@@ -3568,7 +3583,7 @@ function Cr(e, t) {
3568
3583
  });
3569
3584
  });
3570
3585
  }
3571
- function Pr(e) {
3586
+ function Dr(e) {
3572
3587
  const t = (a) => {
3573
3588
  let n = {};
3574
3589
  return Object.keys(a.params).length > 0 && (n = Object.fromEntries(Object.entries(a.params).filter(([s]) => s !== "pathMatch"))), n;
@@ -3587,7 +3602,7 @@ function Pr(e) {
3587
3602
  if (a.meta.permissions) {
3588
3603
  if (s(a.meta.permissions)) return !0;
3589
3604
  {
3590
- q.error(X.global.t("PERMISSION_MESSAGES.ACCESS_RESTRICTED"), {
3605
+ Y.error(x.global.t("PERMISSION_MESSAGES.ACCESS_RESTRICTED"), {
3591
3606
  timeout: 3e3
3592
3607
  });
3593
3608
  const o = t(a);
@@ -3596,421 +3611,422 @@ function Pr(e) {
3596
3611
  } else return !0;
3597
3612
  });
3598
3613
  }
3599
- const ql = {
3614
+ const Zl = {
3600
3615
  install(e, t) {
3601
- Yo(), Wa().register([{ key: "light", localizationKey: "core.themes.light" }]), window.fetch = No(t.router), Or(e, t), Rr(e), _r(e), Ir(e), vr(e, t), wr(e, t), Uo(e), typeof window < "u" && (e.runWithContext(() => ea()), e.runWithContext(() => aa())), Pr(t.router), setTimeout(() => {
3602
- performance.mark("vc:deferred-plugins-start"), Cr(e, t), performance.mark("vc:deferred-plugins-done");
3616
+ Xo(), Ha().register([{ key: "light", localizationKey: "core.themes.light" }]), window.fetch = Bo(t.router), Us(t.apiClientFactory), Ir(e, t), vr(e), wr(e), Cr(e), Pr(e, t), br(e, t), Ho(e), typeof window < "u" && (e.runWithContext(() => ta()), e.runWithContext(() => na())), Dr(t.router), setTimeout(() => {
3617
+ performance.mark("vc:deferred-plugins-start"), Nr(e, t), performance.mark("vc:deferred-plugins-done");
3603
3618
  }, 0);
3604
3619
  }
3605
3620
  };
3606
3621
  export {
3607
- xf as AI_AGENT_URL_ENV_KEY,
3608
- $E as AiAgentServiceKey,
3609
- KE as ApiException,
3610
- zE as AppBarMobileButtonsServiceKey,
3611
- xn as AppBarWidgetServiceKey,
3612
- qa as AppInsightsInstanceKey,
3613
- za as AppInsightsOptionsKey,
3614
- qE as AppManifestClient,
3615
- YE as AppPlacement,
3616
- jE as AppRootElementKey,
3617
- ZE as AppsClient,
3618
- po as AssetsDetailsModule,
3619
- ho as AssetsManager,
3620
- Oo as AssetsManagerModule,
3621
- XE as AuthApiBase,
3622
- JE as AuthorizationClient,
3623
- Zl as BUILTIN_CELL_TYPES,
3624
- QE as BladeBackButtonKey,
3625
- ef as BladeBannersKey,
3622
+ zf as AI_AGENT_URL_ENV_KEY,
3623
+ qE as AiAgentServiceKey,
3624
+ YE as ApiException,
3625
+ jE as AppBarMobileButtonsServiceKey,
3626
+ $n as AppBarWidgetServiceKey,
3627
+ Ya as AppInsightsInstanceKey,
3628
+ qa as AppInsightsOptionsKey,
3629
+ ZE as AppManifestClient,
3630
+ XE as AppPlacement,
3631
+ QE as AppRootElementKey,
3632
+ JE as AppsClient,
3633
+ ho as AssetsDetailsModule,
3634
+ Ro as AssetsManager,
3635
+ Io as AssetsManagerModule,
3636
+ ef as AuthApiBase,
3637
+ tf as AuthorizationClient,
3638
+ Jl as BUILTIN_CELL_TYPES,
3639
+ af as BladeBackButtonKey,
3640
+ nf as BladeBannersKey,
3626
3641
  $t as BladeContextKey,
3627
- tf as BladeDataKey,
3642
+ sf as BladeDataKey,
3628
3643
  xt as BladeDescriptorKey,
3629
- Xl as BladeError,
3630
- yn as BladeFormKey,
3631
- af as BladeLoadingKey,
3632
- nf as BladeMaximizedKey,
3633
- Cn as BladeMessagingKey,
3634
- sf as BladeRenderingStateKey,
3635
- Hn as BladeRoutesKey,
3636
- wn as BladeStackKey,
3637
- Jl as ButtonGroupKey,
3638
- vs as COMPONENT_DEFAULTS,
3639
- Ql as CellDate,
3640
- eu as CellDateAgo,
3641
- tu as CellDefault,
3642
- au as CellEditableWrapper,
3643
- nu as CellHtml,
3644
- su as CellImage,
3645
- ou as CellLink,
3646
- ru as CellMoney,
3647
- iu as CellNumber,
3648
- lu as CellStatus,
3649
- uu as CellStatusIcon,
3650
- of as ChangeLogClient,
3651
- Rc as ChangePassword,
3652
- _c as ChangePasswordButton,
3653
- xl as ChangePasswordPage,
3654
- hm as ChartContainer,
3655
- Lm as ChartLegend,
3656
- Om as ChartTooltip,
3657
- rf as CloseSettingsMenuKey,
3658
- Ic as ColumnCollector,
3659
- $f as DEFAULT_AI_AGENT_CONFIG,
3660
- Rm as DashboardBarChart,
3661
- _m as DashboardDonutChart,
3662
- rm as DashboardFeedList,
3663
- im as DashboardFeedRow,
3664
- Im as DashboardLineChart,
3665
- lf as DashboardServiceKey,
3666
- lm as DashboardStatItem,
3667
- um as DashboardWidgetCard,
3668
- uf as DeveloperToolsClient,
3669
- cf as DiagnosticsClient,
3670
- cu as DisplayableError,
3671
- cm as DraggableDashboard,
3672
- df as DynamicModulesKey,
3673
- Ef as DynamicPropertiesClient,
3674
- ff as DynamicPropertyValueType,
3675
- Kf as EMBEDDED_TO_HOST_MESSAGE_TYPES,
3676
- mf as EmbeddedModeKey,
3677
- gf as EntryState,
3678
- vc as ErrorInterceptor,
3679
- Ss as ExtensionPoint,
3680
- wm as ExtensionPoints,
3681
- Qo as ExternalProviders,
3682
- Sf as ExternalSignInClient,
3683
- du as FALLBACK_BLADE_ID,
3684
- Wl as ForgotPassword,
3685
- Eu as FrameworkError,
3686
- zf as HOST_TO_EMBEDDED_MESSAGE_TYPES,
3644
+ eu as BladeError,
3645
+ Bn as BladeFormKey,
3646
+ of as BladeLoadingKey,
3647
+ rf as BladeMaximizedKey,
3648
+ Pn as BladeMessagingKey,
3649
+ lf as BladeRenderingStateKey,
3650
+ Gn as BladeRoutesKey,
3651
+ Cn as BladeStackKey,
3652
+ tu as ButtonGroupKey,
3653
+ ws as COMPONENT_DEFAULTS,
3654
+ au as CellDate,
3655
+ nu as CellDateAgo,
3656
+ su as CellDefault,
3657
+ ou as CellEditableWrapper,
3658
+ ru as CellHtml,
3659
+ iu as CellImage,
3660
+ lu as CellLink,
3661
+ uu as CellMoney,
3662
+ cu as CellNumber,
3663
+ du as CellStatus,
3664
+ Eu as CellStatusIcon,
3665
+ uf as ChangeLogClient,
3666
+ vc as ChangePassword,
3667
+ wc as ChangePasswordButton,
3668
+ zl as ChangePasswordPage,
3669
+ Rg as ChartContainer,
3670
+ _g as ChartLegend,
3671
+ Ig as ChartTooltip,
3672
+ cf as CloseSettingsMenuKey,
3673
+ Cc as ColumnCollector,
3674
+ qf as DEFAULT_AI_AGENT_CONFIG,
3675
+ vg as DashboardBarChart,
3676
+ wg as DashboardDonutChart,
3677
+ ug as DashboardFeedList,
3678
+ cg as DashboardFeedRow,
3679
+ Cg as DashboardLineChart,
3680
+ df as DashboardServiceKey,
3681
+ dg as DashboardStatItem,
3682
+ Eg as DashboardWidgetCard,
3683
+ Ef as DeveloperToolsClient,
3684
+ ff as DiagnosticsClient,
3685
+ fu as DisplayableError,
3686
+ fg as DraggableDashboard,
3687
+ gf as DynamicModulesKey,
3688
+ mf as DynamicPropertiesClient,
3689
+ Sf as DynamicPropertyValueType,
3690
+ Yf as EMBEDDED_TO_HOST_MESSAGE_TYPES,
3691
+ Af as EmbeddedModeKey,
3692
+ pf as EntryState,
3693
+ Pc as ErrorInterceptor,
3694
+ As as ExtensionPoint,
3695
+ bg as ExtensionPoints,
3696
+ ar as ExternalProviders,
3697
+ Tf as ExternalSignInClient,
3698
+ gu as FALLBACK_BLADE_ID,
3699
+ xl as ForgotPassword,
3700
+ mu as FrameworkError,
3701
+ jf as HOST_TO_EMBEDDED_MESSAGE_TYPES,
3687
3702
  yt as InjectionError,
3688
- pf as InternalRoutesKey,
3689
- Gl as Invite,
3690
- Fn as IsDesktopKey,
3691
- Un as IsMobileKey,
3692
- kn as IsPhoneKey,
3693
- Vn as IsTabletKey,
3694
- Wn as IsTouchKey,
3695
- Af as JobsClient,
3696
- Tf as JsonValueKind,
3697
- dm as LAYOUT_STORAGE_KEY,
3698
- wc as LanguageSelector,
3699
- Mn as LanguageServiceKey,
3700
- hf as LocalizableSettingsClient,
3701
- Fl as Login,
3702
- Cc as LogoutButton,
3703
- Pc as MenuBurgerIcon,
3704
- $n as MenuServiceKey,
3705
- fu as ModuleLoadError,
3706
- Lf as ModulesClient,
3707
- Of as ModulesLoadErrorKey,
3708
- Rf as ModulesReadyKey,
3709
- _f as NOOP_URL_SINK,
3710
- hr as NotificationContainer,
3711
- rn as NotificationContextKey,
3712
- bc as NotificationDropdown,
3713
- zn as NotificationStoreKey,
3714
- Nc as NotificationTemplate,
3715
- If as OAuthAppsClient,
3716
- vf as ProgressMessageLevel,
3717
- wf as PushNotificationClient,
3718
- mu as RegistrationError,
3719
- Hl as ResetPassword,
3720
- Dc as SCHEDULER_ZOOM_LEVELS,
3721
- Cf as SecurityClient,
3722
- gu as ServiceError,
3723
- Pn as SettingClient,
3724
- Pf as SettingValueType,
3725
- yc as SettingsMenu,
3726
- Bc as SettingsMenuItem,
3727
- Kn as SettingsMenuServiceKey,
3728
- bf as SettingsV2Client,
3729
- Nf as ShellIndicatorsKey,
3730
- Ul as Sidebar,
3731
- Df as SortDirection,
3732
- Mc as Table,
3733
- kc as TableBody,
3734
- Vc as TableCell,
3735
- Uc as TableCheckbox,
3736
- Fc as TableColumnSwitcher,
3737
- Wc as TableEmpty,
3738
- Hc as TableFooter,
3739
- Gc as TableGroupRow,
3740
- xc as TableHead,
3741
- $c as TableHeader,
3742
- Kc as TableRow,
3743
- zc as TableRowActions,
3744
- qc as TableSearchHeader,
3745
- Yc as TableSelectAllBar,
3746
- jc as ThemeSelector,
3747
- Gn as ToolbarServiceKey,
3748
- Zc as UserDropdownButton,
3749
- Su as ValidationError,
3750
- Xc as VcAccordion,
3751
- Jc as VcAccordionItem,
3752
- qf as VcAiAgentPanel,
3753
- Qc as VcApp,
3754
- ed as VcAppBarMobileActions,
3755
- td as VcAppBarOverlay,
3756
- ad as VcAppBarWidgetContent,
3757
- nd as VcAppBarWidgetItem,
3758
- sd as VcAppBarWidgetsMenu,
3759
- od as VcAppDesktopLayout,
3760
- rd as VcAppMenu,
3761
- id as VcAppMenuSidebar,
3762
- ld as VcAppMobileLayout,
3763
- ud as VcAppSidebarCollapseButton,
3764
- cd as VcAppSidebarContent,
3765
- dd as VcAppSidebarHeader,
3703
+ hf as InternalRoutesKey,
3704
+ Kl as Invite,
3705
+ Wn as IsDesktopKey,
3706
+ Fn as IsMobileKey,
3707
+ Vn as IsPhoneKey,
3708
+ Un as IsTabletKey,
3709
+ Hn as IsTouchKey,
3710
+ Of as JobsClient,
3711
+ Lf as JsonValueKind,
3712
+ gg as LAYOUT_STORAGE_KEY,
3713
+ bc as LanguageSelector,
3714
+ kn as LanguageServiceKey,
3715
+ Rf as LocalizableSettingsClient,
3716
+ Gl as Login,
3717
+ Nc as LogoutButton,
3718
+ Dc as MenuBurgerIcon,
3719
+ Kn as MenuServiceKey,
3720
+ Su as ModuleLoadError,
3721
+ _f as ModulesClient,
3722
+ If as ModulesLoadErrorKey,
3723
+ vf as ModulesReadyKey,
3724
+ wf as NOOP_URL_SINK,
3725
+ Rr as NotificationContainer,
3726
+ ln as NotificationContextKey,
3727
+ yc as NotificationDropdown,
3728
+ qn as NotificationStoreKey,
3729
+ Bc as NotificationTemplate,
3730
+ Cf as OAuthAppsClient,
3731
+ Pf as ProgressMessageLevel,
3732
+ bf as PushNotificationClient,
3733
+ Au as RegistrationError,
3734
+ $l as ResetPassword,
3735
+ Mc as SCHEDULER_ZOOM_LEVELS,
3736
+ Nf as SecurityClient,
3737
+ pu as ServiceError,
3738
+ bn as SettingClient,
3739
+ Df as SettingValueType,
3740
+ kc as SettingsMenu,
3741
+ Vc as SettingsMenuItem,
3742
+ zn as SettingsMenuServiceKey,
3743
+ yf as SettingsV2Client,
3744
+ Bf as ShellIndicatorsKey,
3745
+ Hl as Sidebar,
3746
+ Mf as SortDirection,
3747
+ Uc as Table,
3748
+ Fc as TableBody,
3749
+ Wc as TableCell,
3750
+ Hc as TableCheckbox,
3751
+ Gc as TableColumnSwitcher,
3752
+ xc as TableEmpty,
3753
+ $c as TableFooter,
3754
+ Kc as TableGroupRow,
3755
+ zc as TableHead,
3756
+ qc as TableHeader,
3757
+ Yc as TableRow,
3758
+ jc as TableRowActions,
3759
+ Zc as TableSearchHeader,
3760
+ Xc as TableSelectAllBar,
3761
+ Qc as ThemeSelector,
3762
+ xn as ToolbarServiceKey,
3763
+ Jc as UserDropdownButton,
3764
+ Tu as ValidationError,
3765
+ ed as VcAccordion,
3766
+ td as VcAccordionItem,
3767
+ Zf as VcAiAgentPanel,
3768
+ ad as VcApp,
3769
+ nd as VcAppBarMobileActions,
3770
+ sd as VcAppBarOverlay,
3771
+ od as VcAppBarWidgetContent,
3772
+ rd as VcAppBarWidgetItem,
3773
+ id as VcAppBarWidgetsMenu,
3774
+ ld as VcAppDesktopLayout,
3775
+ ud as VcAppMenu,
3776
+ cd as VcAppMenuSidebar,
3777
+ dd as VcAppMobileLayout,
3778
+ Ed as VcAppSidebarCollapseButton,
3779
+ fd as VcAppSidebarContent,
3780
+ gd as VcAppSidebarHeader,
3766
3781
  _e as VcAuthLayout,
3767
- Ed as VcBadge,
3782
+ md as VcBadge,
3768
3783
  Ln as VcBanner,
3769
3784
  Wt as VcBlade,
3770
- fd as VcBladeNavigation,
3771
- Is as VcBladeNavigationComponent,
3772
- md as VcBladeNavigationV2,
3773
- gd as VcBladeSlot,
3774
- Sd as VcBreadcrumbs,
3775
- x as VcButton,
3776
- pd as VcButtonGroup,
3777
- Ad as VcCard,
3778
- Td as VcCheckbox,
3779
- hd as VcCheckboxGroup,
3780
- Ld as VcCol,
3781
- pu as VcColorInput,
3782
- Ae as VcColumn,
3785
+ Sd as VcBladeNavigation,
3786
+ vs as VcBladeNavigationComponent,
3787
+ Ad as VcBladeNavigationV2,
3788
+ pd as VcBladeSlot,
3789
+ Td as VcBreadcrumbs,
3790
+ $ as VcButton,
3791
+ hd as VcButtonGroup,
3792
+ Od as VcCard,
3793
+ Ld as VcCheckbox,
3794
+ Rd as VcCheckboxGroup,
3795
+ _d as VcCol,
3796
+ hu as VcColorInput,
3797
+ pe as VcColumn,
3783
3798
  pn as VcContainer,
3784
- Tn as VcDataTable,
3785
- Au as VcDatePicker,
3786
- Od as VcDropdown,
3787
- Rd as VcDropdownItem,
3788
- _d as VcDynamicProperty,
3789
- Id as VcEditor,
3790
- vd as VcEnvironmentBanner,
3799
+ hn as VcDataTable,
3800
+ Ou as VcDatePicker,
3801
+ Id as VcDropdown,
3802
+ vd as VcDropdownItem,
3803
+ wd as VcDynamicProperty,
3804
+ Cd as VcEditor,
3805
+ Pd as VcEnvironmentBanner,
3791
3806
  $e as VcField,
3792
- wd as VcFileUpload,
3793
- ge as VcForm,
3794
- Cd as VcGallery,
3807
+ bd as VcFileUpload,
3808
+ me as VcForm,
3809
+ Nd as VcGallery,
3795
3810
  Ee as VcHint,
3796
- Bn as VcIcon,
3811
+ Mn as VcIcon,
3797
3812
  ot as VcImage,
3798
- Pd as VcImageTile,
3799
- bd as VcImageUpload,
3800
- $ as VcInput,
3801
- Tu as VcInputCurrency,
3802
- hu as VcInputDropdown,
3803
- Nd as VcInputGroup,
3804
- Lu as VcLabel,
3805
- Dd as VcLanguageSelector,
3806
- Ou as VcLink,
3813
+ Dd as VcImageTile,
3814
+ yd as VcImageUpload,
3815
+ K as VcInput,
3816
+ Lu as VcInputCurrency,
3817
+ Ru as VcInputDropdown,
3818
+ Bd as VcInputGroup,
3819
+ _u as VcLabel,
3820
+ Md as VcLanguageSelector,
3821
+ Iu as VcLink,
3807
3822
  Ht as VcLoading,
3808
- yd as VcMenu,
3809
- Bd as VcMenuExpandedKey,
3810
- Md as VcMenuGroup,
3811
- kd as VcMenuItem,
3812
- Vd as VcMultivalue,
3813
- Ud as VcPagination,
3814
- Fd as VcPopover,
3823
+ kd as VcMenu,
3824
+ Vd as VcMenuExpandedKey,
3825
+ Ud as VcMenuGroup,
3826
+ Fd as VcMenuItem,
3827
+ Wd as VcMultivalue,
3828
+ Hd as VcPagination,
3829
+ Gd as VcPopover,
3815
3830
  mn as VcPopup,
3816
- Wd as VcProgress,
3817
- Hd as VcRadioButton,
3818
- Gd as VcRadioGroup,
3819
- xd as VcRating,
3820
- $d as VcRow,
3821
- Kd as VcScheduler,
3822
- Ru as VcScrollableContainer,
3823
- _u as VcSelect,
3824
- hn as VcSidebar,
3825
- Iu as VcSkeleton,
3826
- zd as VcSlider,
3827
- vu as VcStatus,
3828
- wu as VcStatusIcon,
3829
- qd as VcSwitch,
3830
- Yd as VcTable,
3831
- An as VcTextarea,
3832
- mt as VcToast,
3833
- yf as VcTooltip,
3834
- jd as VcVideo,
3835
- Zd as VcWidget,
3836
- bn as WidgetScopeKey,
3831
+ xd as VcProgress,
3832
+ $d as VcRadioButton,
3833
+ Kd as VcRadioGroup,
3834
+ zd as VcRating,
3835
+ qd as VcRow,
3836
+ Yd as VcScheduler,
3837
+ vu as VcScrollableContainer,
3838
+ wu as VcSelect,
3839
+ On as VcSidebar,
3840
+ Cu as VcSkeleton,
3841
+ jd as VcSlider,
3842
+ Pu as VcStatus,
3843
+ bu as VcStatusIcon,
3844
+ Zd as VcSwitch,
3845
+ Xd as VcTable,
3846
+ Tn as VcTextarea,
3847
+ gt as VcToast,
3848
+ kf as VcTooltip,
3849
+ Qd as VcVideo,
3850
+ Jd as VcWidget,
3851
+ Nn as WidgetScopeKey,
3837
3852
  Gt as WidgetServiceKey,
3838
3853
  Ft as __registerBladeConfig,
3839
- Xd as _createEnvironmentNameLogic,
3840
- Bf as _createInternalUserLogic,
3841
- $l as _resetAdapterState,
3842
- Mf as _sharedInternalUserLogic,
3843
- Cu as addAppBarWidget,
3844
- Pu as addMenuItem,
3845
- bu as addSettingsMenuItem,
3846
- Nu as after,
3847
- jn as aiAgentPlugin,
3848
- Jd as autofocus,
3849
- Du as before,
3850
- yu as bigInt,
3851
- Sl as camelToSnake,
3852
- Al as camelize,
3853
- Em as clearLayoutStorage,
3854
- Bu as convertColorNameToHex,
3855
- Mu as convertMomentFormat,
3856
- Yf as createAiAgentToolbarButton,
3857
- Rl as createAppModule,
3858
- ku as createBackendRegistry,
3859
- Vu as createKeyedBackendRegistry,
3854
+ eE as _createEnvironmentNameLogic,
3855
+ Vf as _createInternalUserLogic,
3856
+ ql as _resetAdapterState,
3857
+ Uf as _sharedInternalUserLogic,
3858
+ Nu as addAppBarWidget,
3859
+ Du as addMenuItem,
3860
+ yu as addSettingsMenuItem,
3861
+ Bu as after,
3862
+ Zn as aiAgentPlugin,
3863
+ tE as autofocus,
3864
+ Mu as before,
3865
+ ku as bigInt,
3866
+ Tl as camelToSnake,
3867
+ Ol as camelize,
3868
+ mg as clearLayoutStorage,
3869
+ Vu as convertColorNameToHex,
3870
+ Uu as convertMomentFormat,
3871
+ Xf as createAiAgentToolbarButton,
3872
+ vl as createAppModule,
3873
+ Fu as createBackendRegistry,
3874
+ Wu as createKeyedBackendRegistry,
3860
3875
  k as createLogger,
3861
- ql as default,
3876
+ Zl as default,
3862
3877
  Et as defineAppModule,
3863
- Ml as defineBladeContext,
3864
- Cm as defineExtensionPoint,
3865
- Qd as detectThemePreset,
3866
- jf as expectedCode,
3867
- Zf as expectedEventKey,
3868
- Uu as fileWeight,
3869
- eE as focusIfLoose,
3870
- tE as formatBadgeCount,
3871
- Fu as formatDateRelative,
3872
- Wu as formatDateWithPattern,
3873
- Xf as formatShortcut,
3874
- fm as fromGridstackNode,
3875
- Va as generateId,
3876
- aE as getAllBladeConfigs,
3877
- Hu as getBestThumbnailSize,
3878
- nE as getBladeConfig,
3879
- _l as getComponentDefaults,
3878
+ Ul as defineBladeContext,
3879
+ Ng as defineExtensionPoint,
3880
+ aE as detectThemePreset,
3881
+ Qf as expectedCode,
3882
+ Jf as expectedEventKey,
3883
+ Hu as fileWeight,
3884
+ nE as focusIfLoose,
3885
+ sE as formatBadgeCount,
3886
+ Gu as formatDateRelative,
3887
+ xu as formatDateWithPattern,
3888
+ eg as formatShortcut,
3889
+ Sg as fromGridstackNode,
3890
+ Ua as generateId,
3891
+ oE as getAllBladeConfigs,
3892
+ $u as getBestThumbnailSize,
3893
+ rE as getBladeConfig,
3894
+ wl as getComponentDefaults,
3880
3895
  Yt as getExtensionColor,
3881
3896
  jt as getExtensionLabel,
3882
- Gu as getMenuBadge,
3883
- xu as getMenuBadges,
3884
- $u as getThumbnailUrl,
3885
- Jf as hotkey,
3886
- X as i18n,
3887
- kl as injectBladeContext,
3888
- Ku as isFrameworkError,
3897
+ Ku as getMenuBadge,
3898
+ zu as getMenuBadges,
3899
+ qu as getThumbnailUrl,
3900
+ tg as hotkey,
3901
+ x as i18n,
3902
+ Fl as injectBladeContext,
3903
+ Yu as isFrameworkError,
3889
3904
  zt as isImage,
3890
- Qf as isTextInputFocused,
3891
- zu as isValidHexColor,
3905
+ ag as isTextInputFocused,
3906
+ ju as isValidHexColor,
3892
3907
  ps as kebabToCamel,
3893
- pl as kebabToPascal,
3894
- sE as languageToCountryMap,
3895
- mm as loadLayoutFromStorage,
3896
- ka as loading,
3897
- kf as logger,
3898
- Vf as loggers,
3899
- em as matchesEvent,
3900
- gm as mergeLayoutWithWidgets,
3901
- qu as mindimensions,
3902
- Yu as normalizeHexColor,
3903
- q as notification,
3908
+ hl as kebabToPascal,
3909
+ iE as languageToCountryMap,
3910
+ Ag as loadLayoutFromStorage,
3911
+ Va as loading,
3912
+ Ff as logger,
3913
+ Wf as loggers,
3914
+ ng as matchesEvent,
3915
+ pg as mergeLayoutWithWidgets,
3916
+ Zu as mindimensions,
3917
+ Xu as normalizeHexColor,
3918
+ Y as notification,
3904
3919
  Pe as parseError,
3905
- hs as permissions,
3906
- ju as provideAppBarState,
3907
- oE as provideAppBarWidget,
3908
- Zu as provideDashboardService,
3909
- rE as provideLanguages,
3910
- Xu as provideMenuService,
3911
- Ju as provideSettingsMenu,
3912
- iE as provideSidebarState,
3913
- Qu as provideToolbarService,
3920
+ Os as permissions,
3921
+ Qu as provideAppBarState,
3922
+ lE as provideAppBarWidget,
3923
+ Ju as provideDashboardService,
3924
+ uE as provideLanguages,
3925
+ ec as provideMenuService,
3926
+ tc as provideSettingsMenu,
3927
+ cE as provideSidebarState,
3928
+ ac as provideToolbarService,
3914
3929
  qt as readableSize,
3915
- ec as registerBuiltinCells,
3916
- tc as registerDashboardWidget,
3917
- ac as registerExternalWidget,
3918
- nc as registerToolbarItem,
3919
- sc as registerWidget,
3920
- oc as removeMenuBadge,
3921
- rc as removeRegisteredMenuItem,
3922
- lE as resolveEnvironment,
3923
- ic as resolveLocale,
3924
- lc as resolveLocaleSync,
3925
- Sm as saveLayoutToStorage,
3926
- uc as setMenuBadge,
3927
- uE as sidebarStorageKey,
3930
+ nc as registerBuiltinCells,
3931
+ sc as registerDashboardWidget,
3932
+ oc as registerExternalWidget,
3933
+ rc as registerToolbarItem,
3934
+ ic as registerWidget,
3935
+ lc as removeMenuBadge,
3936
+ uc as removeRegisteredMenuItem,
3937
+ dE as resolveEnvironment,
3938
+ cc as resolveLocale,
3939
+ dc as resolveLocaleSync,
3940
+ Tg as saveLayoutToStorage,
3941
+ Us as setApiClientFactory,
3942
+ Ec as setMenuBadge,
3943
+ EE as sidebarStorageKey,
3928
3944
  Ls as signalR,
3929
- cE as stripTenantPrefix,
3930
- pm as toGridstackWidget,
3931
- dE as useAdaptiveItems,
3932
- tm as useAiAgent,
3933
- Hf as useAiAgentContext,
3934
- Vs as useApiClient,
3935
- EE as useAppBarMobileActions,
3936
- cc as useAppBarState,
3937
- fE as useAppBarWidget,
3938
- mE as useAppBarWidgets,
3939
- Ya as useAppInsights,
3940
- Cl as useAssets,
3941
- Pl as useAssetsManager,
3945
+ fE as stripTenantPrefix,
3946
+ hg as toGridstackWidget,
3947
+ gE as useAdaptiveItems,
3948
+ sg as useAiAgent,
3949
+ $f as useAiAgentContext,
3950
+ Ws as useApiClient,
3951
+ mE as useAppBarMobileActions,
3952
+ fc as useAppBarState,
3953
+ SE as useAppBarWidget,
3954
+ AE as useAppBarWidgets,
3955
+ ja as useAppInsights,
3956
+ Nl as useAssets,
3957
+ Dl as useAssetsManager,
3942
3958
  Xt as useAsync,
3943
- gE as useBadge,
3944
- zs as useBeforeUnload,
3959
+ pE as useBadge,
3960
+ js as useBeforeUnload,
3945
3961
  ut as useBlade,
3946
- zl as useBladeForm,
3947
- dc as useBladeLoading,
3948
- SE as useBladeMessaging,
3949
- Kl as useBladeNavigation,
3950
- Tl as useBladeNotifications,
3951
- am as useBladeStack,
3952
- yl as useBladeWidgets,
3953
- bl as useBreadcrumbs,
3954
- Ll as useBroadcastFilter,
3955
- Ec as useCellRegistry,
3956
- pE as useCollapsible,
3957
- AE as useColumnFilter,
3958
- $o as useContainer,
3959
- fc as useDashboard,
3960
- TE as useDataTablePagination,
3961
- hE as useDataTableSort,
3962
- Nl as useDynamicProperties,
3963
- LE as useEnvironmentName,
3964
- mc as useErrorHandler,
3965
- Pm as useExtensionPoint,
3966
- OE as useFilterState,
3967
- gc as useFloatingPosition,
3968
- Sc as useFormField,
3969
- Il as useFunctions,
3970
- RE as useGalleryPreview,
3971
- Am as useGridstack,
3972
- _E as useImageLoad,
3973
- Wo as useInstance,
3974
- nm as useIsMac,
3975
- sm as useKeyboardShortcuts,
3976
- IE as useLanguages,
3977
- wl as useLatestRequest,
3962
+ jl as useBladeForm,
3963
+ gc as useBladeLoading,
3964
+ TE as useBladeMessaging,
3965
+ Yl as useBladeNavigation,
3966
+ Ll as useBladeNotifications,
3967
+ og as useBladeStack,
3968
+ kl as useBladeWidgets,
3969
+ yl as useBreadcrumbs,
3970
+ _l as useBroadcastFilter,
3971
+ mc as useCellRegistry,
3972
+ hE as useCollapsible,
3973
+ OE as useColumnFilter,
3974
+ qo as useContainer,
3975
+ Sc as useDashboard,
3976
+ LE as useDataTablePagination,
3977
+ RE as useDataTableSort,
3978
+ Bl as useDynamicProperties,
3979
+ _E as useEnvironmentName,
3980
+ Ac as useErrorHandler,
3981
+ Dg as useExtensionPoint,
3982
+ IE as useFilterState,
3983
+ pc as useFloatingPosition,
3984
+ Tc as useFormField,
3985
+ Cl as useFunctions,
3986
+ vE as useGalleryPreview,
3987
+ Og as useGridstack,
3988
+ wE as useImageLoad,
3989
+ xo as useInstance,
3990
+ rg as useIsMac,
3991
+ ig as useKeyboardShortcuts,
3992
+ CE as useLanguages,
3993
+ bl as useLatestRequest,
3978
3994
  Jt as useLoading,
3979
- vE as useMenuActiveState,
3980
- pc as useMenuService,
3981
- Vl as useModificationTracker,
3982
- hl as useNotificationContext,
3983
- me as useNotificationStore,
3984
- vl as useNotifications,
3995
+ PE as useMenuActiveState,
3996
+ hc as useMenuService,
3997
+ Wl as useModificationTracker,
3998
+ Rl as useNotificationContext,
3999
+ ge as useNotificationStore,
4000
+ Pl as useNotifications,
3985
4001
  st as usePermissions,
3986
- Rn as usePopup,
3987
- Fa as useResponsive,
3988
- Ac as useScrollArrows,
4002
+ _n as usePopup,
4003
+ Wa as useResponsive,
4004
+ Oc as useScrollArrows,
3989
4005
  we as useSettings,
3990
- Tc as useSettingsMenu,
3991
- wE as useShellBootstrap,
3992
- CE as useShellLifecycle,
3993
- PE as useShellNavigation,
3994
- bE as useSidebarState,
3995
- NE as useTableColumnsReorder,
3996
- DE as useTableColumnsResize,
3997
- yE as useTableContext,
3998
- BE as useTableInlineEdit,
3999
- Ol as useTableQueryState,
4000
- ME as useTableRowGrouping,
4001
- kE as useTableRowReorder,
4002
- VE as useTableSearch,
4003
- UE as useTableSelection,
4004
- FE as useTableSort,
4005
- Uf as useTeleportTarget,
4006
- Wa as useTheme,
4007
- WE as useToggleableContent,
4008
- hc as useToolbar,
4009
- Ff as useUser,
4010
- HE as useVirtualScroll,
4011
- Dl as useWebVitals,
4012
- Bl as useWidgetTrigger,
4013
- GE as vAutofocus,
4014
- ka as vLoading,
4015
- Lc as wrapError
4006
+ Lc as useSettingsMenu,
4007
+ bE as useShellBootstrap,
4008
+ NE as useShellLifecycle,
4009
+ DE as useShellNavigation,
4010
+ yE as useSidebarState,
4011
+ BE as useTableColumnsReorder,
4012
+ ME as useTableColumnsResize,
4013
+ kE as useTableContext,
4014
+ VE as useTableInlineEdit,
4015
+ Il as useTableQueryState,
4016
+ UE as useTableRowGrouping,
4017
+ FE as useTableRowReorder,
4018
+ WE as useTableSearch,
4019
+ HE as useTableSelection,
4020
+ GE as useTableSort,
4021
+ Hf as useTeleportTarget,
4022
+ Ha as useTheme,
4023
+ xE as useToggleableContent,
4024
+ Rc as useToolbar,
4025
+ Gf as useUser,
4026
+ $E as useVirtualScroll,
4027
+ Ml as useWebVitals,
4028
+ Vl as useWidgetTrigger,
4029
+ KE as vAutofocus,
4030
+ Va as vLoading,
4031
+ _c as wrapError
4016
4032
  };