@vc-shell/framework 2.6.2-pr376.ffc8d03 → 2.6.2-pr377.e84ea79

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