@vc-shell/framework 2.3.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/dist/chunks/{VcScheduler.vue_vue_type_script_setup_true_lang-BHufGxno.js → VcScheduler.vue_vue_type_script_setup_true_lang-B-xA79lJ.js} +6713 -6612
  2. package/dist/chunks/VcScheduler.vue_vue_type_script_setup_true_lang-B-xA79lJ.js.map +1 -0
  3. package/dist/chunks/{VcScheduler.vue_vue_type_style_index_0_lang-Iu3FiU-0.js → VcScheduler.vue_vue_type_style_index_0_lang-BSvjI-39.js} +116 -114
  4. package/dist/chunks/VcScheduler.vue_vue_type_style_index_0_lang-BSvjI-39.js.map +1 -0
  5. package/dist/chunks/dashboard-feed-row.vue_vue_type_script_setup_true_lang-BXDneKBz.js +679 -0
  6. package/dist/chunks/dashboard-feed-row.vue_vue_type_script_setup_true_lang-BXDneKBz.js.map +1 -0
  7. package/dist/core/interceptors/index.d.ts.map +1 -1
  8. package/dist/core/services/language-service.d.ts.map +1 -1
  9. package/dist/dashboard/index.js +1 -1
  10. package/dist/framework.js +662 -648
  11. package/dist/framework.js.map +1 -1
  12. package/dist/index.css +1 -1
  13. package/dist/locales/de.js +23 -16
  14. package/dist/locales/en.js +8 -1
  15. package/dist/locales/en.json +8 -1
  16. package/dist/locales/types.d.ts +7 -0
  17. package/dist/shell/auth/LoginPage/components/login/Login.vue.d.ts.map +1 -1
  18. package/dist/shell/auth/_test-utils/shared-dependency-mocks.d.ts +3 -3
  19. package/dist/shell/auth/_test-utils/shared-dependency-mocks.d.ts.map +1 -1
  20. package/dist/shell/components/settings-menu-item/settings-menu-item.vue.d.ts +1 -1
  21. package/dist/shell/components/settings-menu-item/settings-menu-item.vue.d.ts.map +1 -1
  22. package/dist/shell/dashboard/draggable-dashboard/GridstackDashboard.vue.d.ts.map +1 -1
  23. package/dist/shell/dashboard/draggable-dashboard/composables/useGridstack.d.ts +4 -0
  24. package/dist/shell/dashboard/draggable-dashboard/composables/useGridstack.d.ts.map +1 -1
  25. package/dist/tsconfig.tsbuildinfo +1 -1
  26. package/dist/ui/components/atoms/vc-button/vc-button.vue.d.ts.map +1 -1
  27. package/dist/ui/components/atoms/vc-video/vc-video.vue.d.ts +6 -4
  28. package/dist/ui/components/atoms/vc-video/vc-video.vue.d.ts.map +1 -1
  29. package/dist/ui/components/molecules/vc-breadcrumbs/_internal/vc-breadcrumbs-item/vc-breadcrumbs-item.vue.d.ts.map +1 -1
  30. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue.d.ts +1 -1
  31. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue.d.ts.map +1 -1
  32. package/dist/ui/components/molecules/vc-color-input/vc-color-input.vue.d.ts.map +1 -1
  33. package/dist/ui/components/molecules/vc-input/vc-input.vue.d.ts +11 -0
  34. package/dist/ui/components/molecules/vc-input/vc-input.vue.d.ts.map +1 -1
  35. package/dist/ui/components/molecules/vc-menu/vc-menu-group.vue.d.ts.map +1 -1
  36. package/dist/ui/components/molecules/vc-menu/vc-menu-item.vue.d.ts.map +1 -1
  37. package/dist/ui/components/molecules/vc-multivalue/vc-multivalue.vue.d.ts.map +1 -1
  38. package/dist/ui/components/molecules/vc-radio-button/vc-radio-button.vue.d.ts.map +1 -1
  39. package/dist/ui/components/molecules/vc-rating/vc-rating.vue.d.ts +1 -1
  40. package/dist/ui/components/molecules/vc-rating/vc-rating.vue.d.ts.map +1 -1
  41. package/dist/ui/components/organisms/vc-app/_internal/sidebar/SidebarHeader.vue.d.ts.map +1 -1
  42. package/dist/ui/components/organisms/vc-blade/_internal/BladeHeader.vue.d.ts.map +1 -1
  43. package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts.map +1 -1
  44. package/dist/ui/components/organisms/vc-data-table/VcDataTable.vue.d.ts.map +1 -1
  45. package/dist/ui/components/organisms/vc-data-table/components/mobile/DataTableMobileCard.vue.d.ts +13 -2
  46. package/dist/ui/components/organisms/vc-data-table/components/mobile/DataTableMobileCard.vue.d.ts.map +1 -1
  47. package/dist/ui/components/organisms/vc-data-table/components/mobile/DataTableMobileView.vue.d.ts +15 -1
  48. package/dist/ui/components/organisms/vc-data-table/components/mobile/DataTableMobileView.vue.d.ts.map +1 -1
  49. package/dist/ui/components/organisms/vc-data-table/components/mobile/PullToRefresh.vue.d.ts.map +1 -1
  50. package/dist/ui/components/organisms/vc-data-table/composables/useDataTableOrchestrator.d.ts.map +1 -1
  51. package/dist/ui/components/organisms/vc-data-table/composables/useDataTableState.d.ts +6 -0
  52. package/dist/ui/components/organisms/vc-data-table/composables/useDataTableState.d.ts.map +1 -1
  53. package/dist/ui/components/organisms/vc-data-table/composables/useTableColumns.d.ts +7 -1
  54. package/dist/ui/components/organisms/vc-data-table/composables/useTableColumns.d.ts.map +1 -1
  55. package/dist/ui/components/organisms/vc-data-table/composables/useTableColumnsResize.d.ts +2 -0
  56. package/dist/ui/components/organisms/vc-data-table/composables/useTableColumnsResize.d.ts.map +1 -1
  57. package/dist/ui/components/organisms/vc-data-table/types.d.ts +7 -0
  58. package/dist/ui/components/organisms/vc-data-table/types.d.ts.map +1 -1
  59. package/dist/ui/components/organisms/vc-scheduler/_internal/views/SchedulerMonthView.vue.d.ts.map +1 -1
  60. package/dist/ui/index.js +2 -2
  61. package/package.json +5 -5
  62. package/dist/chunks/VcScheduler.vue_vue_type_script_setup_true_lang-BHufGxno.js.map +0 -1
  63. package/dist/chunks/VcScheduler.vue_vue_type_style_index_0_lang-Iu3FiU-0.js.map +0 -1
  64. package/dist/chunks/dashboard-feed-row.vue_vue_type_script_setup_true_lang-DlE4KIvq.js +0 -641
  65. package/dist/chunks/dashboard-feed-row.vue_vue_type_script_setup_true_lang-DlE4KIvq.js.map +0 -1
package/dist/framework.js CHANGED
@@ -1,17 +1,17 @@
1
1
  import { b as Da, c as ya } from "./chunks/vendor-vueuse-core-BFa9je5E.js";
2
- import { t as at, v as oe, w as q, x as X, _ as $, y as be, z as Ba, I as bt, d as K, b as pe, l as Ma, A as ka, C as Va, D as Ua, V as Ee, E as Fa, F as Wa, G as Ga, H as Ha, J as xa, K as $a, L as Ka, M as za, N as qa } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-Iu3FiU-0.js";
3
- import { O as Gl, B as Hl, P as xl, Q as $l, R as Kl, S as zl, T as ql, U as Yl, W as jl, a as Zl, c as Xl, e as Jl, f as Ql, g as eu, h as tu, i as au, j as nu, X as su, Y as ou, Z as ru, $ as iu, a0 as lu, a1 as uu, a2 as du, a3 as cu, a4 as Eu, a5 as fu, a6 as mu, a7 as gu, a8 as Su, a9 as Au, aa as pu, ab as Tu, p as hu, ac as Lu, ad as Ou, ae as Ru, af as _u, ag as Iu, ah as vu, ai as wu, aj as Cu, ak as bu, al as Pu, am as Nu, u as Du, k as yu, r as Bu, an as Mu, m as ku, n as Vu, ao as Uu, o as Fu, ap as Wu, aq as Gu, ar as Hu } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-Iu3FiU-0.js";
4
- import { getCurrentScope as Pt, onScopeDispose as Nt, computed as w, inject as Q, watch as ne, defineComponent as H, openBlock as C, createBlock as D, createSlots as Oe, withCtx as p, renderSlot as Y, createElementVNode as V, normalizeClass as Ya, createElementBlock as G, Fragment as se, createVNode as _, unref as r, createTextVNode as k, toDisplayString as y, shallowReactive as ja, ref as b, readonly as Je, onMounted as Re, onBeforeMount as Za, onBeforeUnmount as Xa, onUnmounted as Ja, provide as Dt, toValue as yt, isRef as Bt, normalizeStyle as Mt, createCommentVNode as z, withDirectives as Qa, withModifiers as We, reactive as le, createApp as en, nextTick as Pe, renderList as Ue, withKeys as nt, mergeProps as ie, getCurrentInstance as tn, warn as an, h as te, toRaw as nn } from "vue";
5
- import { b5 as me, b6 as sn, b7 as on, b8 as kt, b9 as Ge, ba as rn, bb as ln, ao as un, bc as He, bd as dn, be as cn, bf as Vt, Q as Ut, $ as En, a8 as ge, aa as st, a6 as xe, aB as fn, a0 as mn, av as gn, N as _e, ag as Ft, P as Sn, bg as An, aC as dt, bh as pn, bi as Tn } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-BHufGxno.js";
6
- import { _ as $u, a as Ku, b as zu, c as qu, d as Yu, e as ju, f as Zu, g as Xu, h as Ju, i as Qu, j as ed, bj as td, bk as ad, C as nd, bl as sd, bm as od, bn as rd, k as id, bo as ld, bp as ud, S as dd, bq as cd, br as Ed, l as fd, m as md, n as gd, o as Sd, p as Ad, q as pd, T as Td, r as hd, s as Ld, t as Od, u as Rd, v as _d, w as Id, x as vd, bs as wd, bt as Cd, V as bd, y as Pd, z as Nd, A as Dd, B as yd, D as Bd, E as Md, F as kd, G as Vd, H as Ud, I as Fd, J as Wd, K as Gd, L as Hd, M as xd, O as $d, bu as Kd, bu as zd, bv as qd, R as Yd, U as jd, W as Zd, X as Xd, Y as Jd, Z as Qd, a1 as ec, a2 as tc, a3 as ac, a4 as nc, a5 as sc, a7 as oc, a9 as rc, ab as ic, ac as lc, ad as uc, ae as dc, af as cc, ah as Ec, ai as fc, aj as mc, ak as gc, al as Sc, am as Ac, an as pc, ap as Tc, aq as hc, ar as Lc, as as Oc, at as Rc, au as _c, aw as Ic, ax as vc, ay as wc, az as Cc, aA as bc, aD as Pc, aE as Nc, bw as Dc, aF as yc, bx as Bc, by as Mc, bz as kc, bA as Vc, bB as Uc, bC as Fc, bD as Wc, bE as Gc, bF as Hc, bG as xc, bH as $c, bI as Kc, bJ as zc, bK as qc, bL as Yc, bM as jc, aG as Zc, aH as Xc, aI as Jc, bN as Qc, aJ as eE, aK as tE, bO as aE, bP as nE, aL as sE, aM as oE, aN as rE, aO as iE, bQ as lE, aP as uE, aQ as dE, aR as cE, bR as EE, aS as fE, bS as mE, aT as gE, aU as SE, aV as AE, bT as pE, aW as TE, aX as hE, aY as LE, aZ as OE, a_ as RE, a$ as _E, b0 as IE, b1 as vE, b2 as wE, b3 as CE, b4 as bE, aF as PE } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-BHufGxno.js";
2
+ import { t as at, v as oe, w as q, x as X, _ as $, y as be, z as Ba, I as bt, d as K, b as pe, l as Ma, A as ka, C as Va, D as Ua, V as Ee, E as Fa, F as Wa, G as Ha, H as Ga, J as xa, K as $a, L as Ka, M as za, N as qa } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-BSvjI-39.js";
3
+ import { O as xl, B as $l, P as Kl, Q as zl, R as ql, S as Yl, T as jl, U as Zl, W as Xl, a as Jl, c as Ql, e as eu, f as tu, g as au, h as nu, i as su, j as ou, X as ru, Y as iu, Z as lu, $ as uu, a0 as du, a1 as cu, a2 as Eu, a3 as fu, a4 as mu, a5 as gu, a6 as Su, a7 as Au, a8 as pu, a9 as Tu, aa as hu, ab as Lu, p as Ou, ac as Ru, ad as _u, ae as Iu, af as vu, ag as wu, ah as Cu, ai as bu, aj as Pu, ak as Nu, al as Du, am as yu, u as Bu, k as Mu, r as ku, an as Vu, m as Uu, n as Fu, ao as Wu, o as Hu, ap as Gu, aq as xu, ar as $u } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-BSvjI-39.js";
4
+ import { getCurrentScope as Pt, onScopeDispose as Nt, computed as w, inject as Q, watch as ne, defineComponent as G, openBlock as C, createBlock as D, createSlots as Oe, withCtx as p, renderSlot as Y, createElementVNode as V, normalizeClass as Ya, createElementBlock as H, Fragment as se, createVNode as _, unref as r, createTextVNode as k, toDisplayString as y, shallowReactive as ja, ref as b, readonly as Je, onMounted as Re, onBeforeMount as Za, onBeforeUnmount as Xa, onUnmounted as Ja, provide as Dt, toValue as yt, isRef as Bt, normalizeStyle as Mt, createCommentVNode as z, withDirectives as Qa, withModifiers as We, reactive as le, createApp as en, nextTick as Pe, renderList as Ue, withKeys as nt, mergeProps as ie, getCurrentInstance as tn, warn as an, h as te, toRaw as nn } from "vue";
5
+ import { b5 as me, b6 as sn, b7 as on, b8 as kt, b9 as He, ba as rn, bb as ln, ao as un, bc as Ge, bd as dn, be as cn, bf as Vt, Q as Ut, $ as En, a8 as ge, aa as st, a6 as xe, aB as fn, a0 as mn, av as gn, N as _e, ag as Ft, P as Sn, bg as An, aC as dt, bh as pn, bi as Tn } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-B-xA79lJ.js";
6
+ import { _ as zu, a as qu, b as Yu, c as ju, d as Zu, e as Xu, f as Ju, g as Qu, h as ed, i as td, j as ad, bj as nd, bk as sd, C as od, bl as rd, bm as id, bn as ld, k as ud, bo as dd, bp as cd, S as Ed, bq as fd, br as md, l as gd, m as Sd, n as Ad, o as pd, p as Td, q as hd, T as Ld, r as Od, s as Rd, t as _d, u as Id, v as vd, w as wd, x as Cd, bs as bd, bt as Pd, V as Nd, y as Dd, z as yd, A as Bd, B as Md, D as kd, E as Vd, F as Ud, G as Fd, H as Wd, I as Hd, J as Gd, K as xd, L as $d, M as Kd, O as zd, bu as qd, bu as Yd, bv as jd, R as Zd, U as Xd, W as Jd, X as Qd, Y as ec, Z as tc, a1 as ac, a2 as nc, a3 as sc, a4 as oc, a5 as rc, a7 as ic, a9 as lc, ab as uc, ac as dc, ad as cc, ae as Ec, af as fc, ah as mc, ai as gc, aj as Sc, ak as Ac, al as pc, am as Tc, an as hc, ap as Lc, aq as Oc, ar as Rc, as as _c, at as Ic, au as vc, aw as wc, ax as Cc, ay as bc, az as Pc, aA as Nc, aD as Dc, aE as yc, bw as Bc, aF as Mc, bx as kc, by as Vc, bz as Uc, bA as Fc, bB as Wc, bC as Hc, bD as Gc, bE as xc, bF as $c, bG as Kc, bH as zc, bI as qc, bJ as Yc, bK as jc, bL as Zc, bM as Xc, aG as Jc, aH as Qc, aI as eE, bN as tE, aJ as aE, aK as nE, bO as sE, bP as oE, aL as rE, aM as iE, aN as lE, aO as uE, bQ as dE, aP as cE, aQ as EE, aR as fE, bR as mE, aS as gE, bS as SE, aT as AE, aU as pE, aV as TE, bT as hE, aW as LE, aX as OE, aY as RE, aZ as _E, a_ as IE, a$ as vE, b0 as wE, b1 as CE, b2 as bE, b3 as PE, b4 as NE, aF as DE } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-B-xA79lJ.js";
7
7
  import { _ as hn } from "./chunks/vendor-cypress-signalr-mock-itnm2wpA.js";
8
- import { c as U, b as Ln, d as On, i as Wt, S as Rn, W as Gt, B as Ht, h as _n, j as xt, m as In, k as $t, l as vn, _ as wn, L as Cn, I as bn, n as Pn, o as Nn, p as Dn, q as yn, r as Bn, T as Mn, s as kn, t as Vn, v as Un, N as Fn } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-DrGobYkj.js";
9
- import { A as DE, w as yE, x as BE, y as ME, z as kE, C as VE, D as UE, F as FE, G as WE, H as GE, e as HE, f as xE, J as $E, K as KE, O as zE, P as qE, Q as YE, R as jE, U as ZE, V as XE, X as JE, Y as QE, Z as ef, E as tf, $ as af, a0 as nf, a1 as sf, a2 as of, a3 as rf, a4 as lf, a5 as uf, a6 as df, M as cf, a7 as Ef, a8 as ff, a9 as mf, aa as gf, ab as Sf, ac as Af, ad as pf, ae as Tf, a as hf, af as Lf, ag as Of, ah as Rf, ai as _f, u as If, g as vf } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-DrGobYkj.js";
10
- import { H as Wn, L as Gn } from "./chunks/vendor-microsoft-signalr-Bgpbb4fW.js";
11
- import { a as Hn } from "./chunks/index-C-SEYj46.js";
12
- import { u as Cf } from "./chunks/index-C-SEYj46.js";
8
+ import { c as U, b as Ln, d as On, i as Wt, S as Rn, W as Ht, B as Gt, h as _n, j as xt, m as In, k as $t, l as vn, _ as wn, L as Cn, I as bn, n as Pn, o as Nn, p as Dn, q as yn, r as Bn, T as Mn, s as kn, t as Vn, v as Un, N as Fn } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-DrGobYkj.js";
9
+ import { A as BE, w as ME, x as kE, y as VE, z as UE, C as FE, D as WE, F as HE, G as GE, H as xE, e as $E, f as KE, J as zE, K as qE, O as YE, P as jE, Q as ZE, R as XE, U as JE, V as QE, X as ef, Y as tf, Z as af, E as nf, $ as sf, a0 as of, a1 as rf, a2 as lf, a3 as uf, a4 as df, a5 as cf, a6 as Ef, M as ff, a7 as mf, a8 as gf, a9 as Sf, aa as Af, ab as pf, ac as Tf, ad as hf, ae as Lf, a as Of, af as Rf, ag as _f, ah as If, ai as vf, u as wf, g as Cf } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-DrGobYkj.js";
10
+ import { H as Wn, L as Hn } from "./chunks/vendor-microsoft-signalr-Bgpbb4fW.js";
11
+ import { a as Gn } from "./chunks/index-C-SEYj46.js";
12
+ import { u as Pf } from "./chunks/index-C-SEYj46.js";
13
13
  import { p as xn, b as $n, a as Kn, s as zn, d as qn, e as Yn, f as jn, g as ot, h as Zn, i as Xn, j as Jn, k as Qn, l as es, m as ts } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-Cm_izaFs.js";
14
- import { A as Pf, D as Nf, E as Df, H as yf, _ as Bf, c as Mf, n as kf, o as Vf, q as Uf, r as Ff, t as Wf, v as Gf, u as Hf, w as xf, x as $f, y as Kf } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-Cm_izaFs.js";
14
+ import { A as Df, D as yf, E as Bf, H as Mf, _ as kf, c as Vf, n as Uf, o as Ff, q as Wf, r as Hf, t as Gf, v as xf, u as $f, w as Kf, x as zf, y as qf } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-Cm_izaFs.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 ue } from "./chunks/vendor-vue-i18n-LO-EJStU.js";
@@ -93,24 +93,24 @@ import "./chunks/vendor-truncate-html-ChA1T5zy.js";
93
93
  import "./chunks/vendor-sortablejs-Bsvu-FKn.js";
94
94
  import { v as as } from "./chunks/vendor-vue3-touch-events-DqysuuWh.js";
95
95
  import "./chunks/vendor-gridstack-Beau2jQ7.js";
96
- import { _ as qf, a as Yf, b as jf, c as Zf, d as Xf, L as Jf, e as Qf, f as em, l as tm, m as am, s as nm, t as sm, u as om } from "./chunks/dashboard-feed-row.vue_vue_type_script_setup_true_lang-DlE4KIvq.js";
97
- import { _ as im, a as lm, b as um, c as dm, d as cm, e as Em } from "./chunks/DashboardDonutChart.vue_vue_type_script_setup_true_lang-hTcM33bM.js";
96
+ import { _ as jf, a as Zf, b as Xf, c as Jf, d as Qf, L as em, e as tm, f as am, l as nm, m as sm, s as om, t as rm, u as im } from "./chunks/dashboard-feed-row.vue_vue_type_script_setup_true_lang-BXDneKBz.js";
97
+ import { _ as um, a as dm, b as cm, c as Em, d as fm, e as mm } from "./chunks/DashboardDonutChart.vue_vue_type_script_setup_true_lang-hTcM33bM.js";
98
98
  import { A as ns, u as ss } from "./chunks/vendor-vue3-application-insights-CAgbt8pk.js";
99
99
  import { o as os, c as J, d as rs, i as is } from "./chunks/vendor-lodash-es-D2n90GJy.js";
100
100
  import { T as ls, x as us, b as ds, S as cs, $ as Es } from "./chunks/vendor-web-vitals-ByFgAM-8.js";
101
101
  import { _ as fs } from "./chunks/index-BuTo_Lx8.js";
102
- import { E as mm, d as gm, u as Sm } from "./chunks/index-BuTo_Lx8.js";
103
- function ul(e) {
102
+ import { E as Sm, d as Am, u as pm } from "./chunks/index-BuTo_Lx8.js";
103
+ function cl(e) {
104
104
  return e.replace(/[\w]([A-Z])/g, function(t) {
105
105
  return t[0] + "_" + t[1];
106
106
  }).toLowerCase();
107
107
  }
108
108
  const ms = (e) => e.replace(/-./g, (t) => t[1].toUpperCase());
109
- function dl(e) {
109
+ function El(e) {
110
110
  const t = ms(e);
111
111
  return t[0].toUpperCase() + t.substring(1);
112
112
  }
113
- function cl(e) {
113
+ function fl(e) {
114
114
  return e.replace(/\W+(.)/g, function(t, a) {
115
115
  return a.toUpperCase();
116
116
  });
@@ -156,7 +156,7 @@ const As = {
156
156
  e.config.globalProperties.$hasAccess = t;
157
157
  }
158
158
  };
159
- function El(e) {
159
+ function ml(e) {
160
160
  const t = me(), a = t.subscribe({
161
161
  types: e.types,
162
162
  filter: e.filter,
@@ -175,13 +175,13 @@ function El(e) {
175
175
  markAsRead: o
176
176
  };
177
177
  }
178
- function fl() {
178
+ function gl() {
179
179
  const e = Q(sn);
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 ml() {
184
+ function Sl() {
185
185
  const e = me();
186
186
  return {
187
187
  setBroadcastFilter: e.setBroadcastFilter,
@@ -192,7 +192,7 @@ const jt = Symbol("NotificationContainerState"), ct = U("signalR"), ps = {
192
192
  install(e) {
193
193
  const t = me(), { isAuthenticated: a } = oe();
194
194
  let n = !1;
195
- const s = hn("pushNotificationHub", { enableForVitest: !0 }) ?? new Wn().withUrl("/pushNotificationHub").withAutomaticReconnect().configureLogging(Gn.Information).build(), o = () => {
195
+ const s = hn("pushNotificationHub", { enableForVitest: !0 }) ?? new Wn().withUrl("/pushNotificationHub").withAutomaticReconnect().configureLogging(Hn.Information).build(), o = () => {
196
196
  s.start().then(() => {
197
197
  ct.info("Connected.");
198
198
  }).catch((l) => {
@@ -217,7 +217,7 @@ const jt = Symbol("NotificationContainerState"), ct = U("signalR"), ps = {
217
217
  );
218
218
  }
219
219
  };
220
- function gl(e) {
220
+ function Al(e) {
221
221
  const t = Q(on, void 0);
222
222
  return {
223
223
  read: () => t ? t.read(e) : {}
@@ -280,7 +280,7 @@ function lt(e) {
280
280
  }
281
281
  };
282
282
  }
283
- function Sl(e, t, a, n) {
283
+ function pl(e, t, a, n) {
284
284
  return lt({
285
285
  blades: e,
286
286
  locales: t,
@@ -291,13 +291,13 @@ async function hs(e, t, a, n, s, o) {
291
291
  if (!a.workspaceUrl) return !1;
292
292
  const i = t.getBladeByRoute(a.workspaceUrl);
293
293
  if (!i)
294
- return console.warn(`[restoreFromUrl] No workspace blade found for URL segment '${a.workspaceUrl}'`), s && Ge(s, o), !1;
294
+ return console.warn(`[restoreFromUrl] No workspace blade found for URL segment '${a.workspaceUrl}'`), s && He(s, o), !1;
295
295
  if (!i.data.isWorkspace)
296
296
  return console.warn(
297
297
  `[restoreFromUrl] Blade '${i.name}' matched URL '${a.workspaceUrl}' but is not a workspace`
298
- ), s && Ge(s, o), !1;
298
+ ), s && He(s, o), !1;
299
299
  if (n && i.data.permissions && !n(i.data.permissions))
300
- return console.warn(`[restoreFromUrl] Access denied to workspace '${i.name}'`), q.error(X.global.t("PERMISSION_MESSAGES.ACCESS_RESTRICTED"), { timeout: 3e3 }), s && Ge(s, o), !1;
300
+ return console.warn(`[restoreFromUrl] Access denied to workspace '${i.name}'`), q.error(X.global.t("PERMISSION_MESSAGES.ACCESS_RESTRICTED"), { timeout: 3e3 }), s && He(s, o), !1;
301
301
  if (e.workspace.value?.name !== i.name && await e.openWorkspace({ name: i.name }), a.bladeUrl) {
302
302
  const d = t.getBladeByRoute(a.bladeUrl);
303
303
  if (d) {
@@ -417,10 +417,10 @@ const Os = {
417
417
  gap: 20
418
418
  }
419
419
  };
420
- function Al(e) {
420
+ function Tl(e) {
421
421
  return Rs[e];
422
422
  }
423
- const ut = /* @__PURE__ */ H({
423
+ const ut = /* @__PURE__ */ G({
424
424
  __name: "vc-popup-base",
425
425
  props: {
426
426
  title: {},
@@ -461,7 +461,7 @@ const ut = /* @__PURE__ */ H({
461
461
  "vc-popup-base__actions--single": e.mode === "acknowledge"
462
462
  }])
463
463
  }, [
464
- e.mode === "confirm" ? (C(), G(se, { key: 0 }, [
464
+ e.mode === "confirm" ? (C(), H(se, { key: 0 }, [
465
465
  _(r($), {
466
466
  text: e.confirmAsText,
467
467
  class: "vc-popup-base__confirm",
@@ -502,7 +502,7 @@ const ut = /* @__PURE__ */ H({
502
502
  } : void 0
503
503
  ]), 1032, ["variant", "is-mobile-fullscreen", "title", "closable"]));
504
504
  }
505
- }), _s = /* @__PURE__ */ H({
505
+ }), _s = /* @__PURE__ */ G({
506
506
  __name: "vc-popup-warning",
507
507
  props: {
508
508
  title: {}
@@ -533,7 +533,7 @@ const ut = /* @__PURE__ */ H({
533
533
  } : void 0
534
534
  ]), 1032, ["confirm-label", "cancel-label", "title"]));
535
535
  }
536
- }), Is = /* @__PURE__ */ H({
536
+ }), Is = /* @__PURE__ */ G({
537
537
  __name: "vc-popup-error",
538
538
  props: {
539
539
  title: {}
@@ -561,7 +561,7 @@ const ut = /* @__PURE__ */ H({
561
561
  } : void 0
562
562
  ]), 1032, ["action-label", "title"]));
563
563
  }
564
- }), vs = /* @__PURE__ */ H({
564
+ }), vs = /* @__PURE__ */ G({
565
565
  __name: "vc-popup-info",
566
566
  props: {
567
567
  title: {}
@@ -591,7 +591,7 @@ const ut = /* @__PURE__ */ H({
591
591
  }
592
592
  });
593
593
  function ws() {
594
- He("warning", _s), He("error", Is), He("info", vs);
594
+ Ge("warning", _s), Ge("error", Is), Ge("info", vs);
595
595
  }
596
596
  const Cs = {
597
597
  install(e) {
@@ -630,7 +630,7 @@ function Ds(e, t) {
630
630
  }, t));
631
631
  };
632
632
  }
633
- function pl() {
633
+ function hl() {
634
634
  return {
635
635
  debounce: bs,
636
636
  delay: Ps,
@@ -638,7 +638,7 @@ function pl() {
638
638
  throttle: Ds
639
639
  };
640
640
  }
641
- function Tl(e) {
641
+ function Ll(e) {
642
642
  const t = me(), a = e ? Array.isArray(e) ? e : [e] : [];
643
643
  let n, s;
644
644
  a.length && (s = t.subscribe({
@@ -672,7 +672,7 @@ function Zt(e, t) {
672
672
  const E = be(u);
673
673
  if (n.value = E, ys.error("Async action failed:", u), s && !Wt() && u && typeof u == "object") {
674
674
  const g = `async-error-${E.message.slice(0, 80)}`, f = setTimeout(async () => {
675
- Ke || (Ke = (await import("./chunks/VcScheduler.vue_vue_type_style_index_0_lang-Iu3FiU-0.js").then((S) => S.aE)).notification), Ke.error(E.message, {
675
+ Ke || (Ke = (await import("./chunks/VcScheduler.vue_vue_type_style_index_0_lang-BSvjI-39.js").then((S) => S.aE)).notification), Ke.error(E.message, {
676
676
  timeout: o,
677
677
  notificationId: g
678
678
  });
@@ -758,7 +758,7 @@ async function Us(e, t, a) {
758
758
  }
759
759
  return n;
760
760
  }
761
- function hl() {
761
+ function Ol() {
762
762
  const e = b(!1);
763
763
  async function t(s, o, i) {
764
764
  try {
@@ -803,7 +803,7 @@ function hl() {
803
803
  };
804
804
  }
805
805
  const Fs = U("use-assets-manager"), Ws = 4;
806
- async function Gs(e, t, a, n) {
806
+ async function Hs(e, t, a, n) {
807
807
  const s = new FormData();
808
808
  s.append("file", e);
809
809
  const o = t.startsWith("/") ? t.slice(1) : t, l = await (await fetch(`/api/assets?folderUrl=/${o}`, {
@@ -816,7 +816,7 @@ async function Gs(e, t, a, n) {
816
816
  }
817
817
  return null;
818
818
  }
819
- async function Hs(e, t, a) {
819
+ async function Gs(e, t, a) {
820
820
  const n = [];
821
821
  for (let s = 0; s < e.length; s += a) {
822
822
  const o = e.slice(s, s + a), i = await Promise.all(o.map((l, d) => t(l, s + d)));
@@ -830,7 +830,7 @@ function mt(e) {
830
830
  return n === s ? t.index - a.index : n - s;
831
831
  }).map(({ item: t }, a) => ({ ...t, sortOrder: a }));
832
832
  }
833
- function Ll(e, t) {
833
+ function Rl(e, t) {
834
834
  const a = b(!1), n = b(mt(e.value ?? []));
835
835
  ne(
836
836
  () => e.value,
@@ -843,15 +843,15 @@ function Ll(e, t) {
843
843
  e.value = n.value;
844
844
  }
845
845
  const o = n, i = w(() => a.value), l = t.concurrency ?? Ws, d = t.assetKey ?? "url";
846
- async function u(S, L) {
846
+ async function u(S, h) {
847
847
  try {
848
848
  a.value = !0;
849
- const T = Array.from(S), I = t.uploadPath(), O = (await Hs(
849
+ const T = Array.from(S), I = t.uploadPath(), L = (await Gs(
850
850
  T,
851
- (h, N) => Gs(h, I, N, L),
851
+ (O, P) => Hs(O, I, P, h),
852
852
  l
853
- )).filter((h) => h !== null);
854
- n.value = [...n.value, ...O], s();
853
+ )).filter((O) => O !== null);
854
+ n.value = [...n.value, ...L], s();
855
855
  } catch (T) {
856
856
  throw Fs.error("Upload failed:", T), T;
857
857
  } finally {
@@ -864,17 +864,17 @@ function Ll(e, t) {
864
864
  async function g(S) {
865
865
  if (t.confirmRemove && !await t.confirmRemove())
866
866
  return;
867
- const L = new Set(S.map((T) => T[d]));
868
- n.value = n.value.filter((T) => !L.has(T[d])), s();
867
+ const h = new Set(S.map((T) => T[d]));
868
+ n.value = n.value.filter((T) => !h.has(T[d])), s();
869
869
  }
870
870
  function f(S) {
871
- n.value = S.map((L) => ({ ...L })), s();
871
+ n.value = S.map((h) => ({ ...h })), s();
872
872
  }
873
873
  function c(S) {
874
- const L = n.value.findIndex((T) => T[d] === S[d]);
875
- if (L !== -1) {
874
+ const h = n.value.findIndex((T) => T[d] === S[d]);
875
+ if (h !== -1) {
876
876
  const T = [...n.value];
877
- T[L] = { ...n.value[L], ...S }, n.value = T, s();
877
+ T[h] = { ...n.value[h], ...S }, n.value = T, s();
878
878
  }
879
879
  }
880
880
  return {
@@ -1085,7 +1085,7 @@ const Qs = {
1085
1085
  function St(e) {
1086
1086
  return $s(e) ? Qs : Ks(e) && !gt(e) ? eo : e.valueType === "Boolean" ? qs : gt(e) ? Ys : zs;
1087
1087
  }
1088
- function Ol(e) {
1088
+ function _l(e) {
1089
1089
  const { searchDictionary: t, searchMeasurements: a } = e, { loading: n, action: s } = Zt(async (u) => {
1090
1090
  if (u)
1091
1091
  return await t(u);
@@ -1098,7 +1098,7 @@ function Ol(e) {
1098
1098
  skip: 0
1099
1099
  });
1100
1100
  return !g || !f ? f : f.map((c) => {
1101
- const S = c.localizedValues?.find((L) => L.languageCode === g)?.value;
1101
+ const S = c.localizedValues?.find((h) => h.languageCode === g)?.value;
1102
1102
  return { ...c, value: S ?? c.alias };
1103
1103
  });
1104
1104
  }
@@ -1121,7 +1121,7 @@ function Ol(e) {
1121
1121
  loading: Xt(n)
1122
1122
  };
1123
1123
  }
1124
- function Rl(e) {
1124
+ function Il(e) {
1125
1125
  const t = (n) => {
1126
1126
  }, a = (n) => {
1127
1127
  (e ?? t)({
@@ -1133,11 +1133,11 @@ function Rl(e) {
1133
1133
  ls(a), us(a), ds(a), cs(a), Es(a);
1134
1134
  }
1135
1135
  const Jt = U("use-blade-widgets");
1136
- function _l(e) {
1137
- const t = Q(Gt);
1136
+ function vl(e) {
1137
+ const t = Q(Ht);
1138
1138
  if (!t)
1139
1139
  throw new bt("WidgetService");
1140
- const a = t, n = Q(Ht, void 0);
1140
+ const a = t, n = Q(Gt, void 0);
1141
1141
  if (!n)
1142
1142
  throw new Error(
1143
1143
  "[vc-shell] useBladeWidgets() requires blade context (BladeDescriptorKey). It must be called inside a blade component rendered by VcBladeSlot."
@@ -1161,7 +1161,7 @@ function _l(e) {
1161
1161
  }
1162
1162
  return { refresh: o, refreshAll: i };
1163
1163
  }
1164
- function Il(e) {
1164
+ function wl(e) {
1165
1165
  const t = Q(_n);
1166
1166
  if (!t) {
1167
1167
  Jt.warn("useWidgetTrigger() called outside WidgetContainer scope — trigger will not be registered.");
@@ -1194,13 +1194,13 @@ function ao(e) {
1194
1194
  }
1195
1195
  return t;
1196
1196
  }
1197
- function vl(e) {
1197
+ function Cl(e) {
1198
1198
  Dt(
1199
1199
  xt,
1200
1200
  w(() => ao(yt(e)))
1201
1201
  );
1202
1202
  }
1203
- function wl() {
1203
+ function bl() {
1204
1204
  const e = Q(xt);
1205
1205
  if (!e)
1206
1206
  throw new bt("BladeContext");
@@ -1214,7 +1214,7 @@ function pt(e, t) {
1214
1214
  if (At(a) && At(n)) return !0;
1215
1215
  });
1216
1216
  }
1217
- function Cl(e) {
1217
+ function Pl(e) {
1218
1218
  const t = (i) => J(r(i)), a = b(t(e)), n = b(t(e)), s = b(!1);
1219
1219
  Bt(e) && ne(
1220
1220
  e,
@@ -1252,7 +1252,7 @@ const no = { class: "tw-flex tw-grow-1 tw-border-t tw-border-solid tw-border-t-[
1252
1252
  class: "assets-details__file-preview tw-shrink-0"
1253
1253
  }, lo = { class: "assets-details__meta" };
1254
1254
  Vt("AssetsDetails", {});
1255
- const uo = /* @__PURE__ */ H({
1255
+ const uo = /* @__PURE__ */ G({
1256
1256
  name: "AssetsDetails",
1257
1257
  __name: "assets-details",
1258
1258
  setup(e) {
@@ -1268,8 +1268,8 @@ const uo = /* @__PURE__ */ H({
1268
1268
  set(f) {
1269
1269
  const c = i.value.name;
1270
1270
  if (!c) return;
1271
- const S = c.lastIndexOf("."), L = S > 0 ? c.slice(S) : "";
1272
- i.value.name = f ? f + L : "";
1271
+ const S = c.lastIndexOf("."), h = S > 0 ? c.slice(S) : "";
1272
+ i.value.name = f ? f + h : "";
1273
1273
  }
1274
1274
  }), u = w(() => !s.value || !n.value), E = b([
1275
1275
  {
@@ -1311,7 +1311,7 @@ const uo = /* @__PURE__ */ H({
1311
1311
  size: "xl",
1312
1312
  bordered: !0,
1313
1313
  class: "tw-shrink-0"
1314
- }, null, 8, ["src"])) : (C(), G("div", io, [
1314
+ }, null, 8, ["src"])) : (C(), H("div", io, [
1315
1315
  V("div", {
1316
1316
  class: "assets-details__file-badge",
1317
1317
  style: Mt({ backgroundColor: r(qt)(i.value.name) })
@@ -1343,12 +1343,12 @@ const uo = /* @__PURE__ */ H({
1343
1343
  rules: "required",
1344
1344
  "model-value": i.value.name
1345
1345
  }, {
1346
- default: p(({ errorMessage: S, handleChange: L, errors: T }) => [
1346
+ default: p(({ errorMessage: S, handleChange: h, errors: T }) => [
1347
1347
  _(r(K), {
1348
1348
  modelValue: d.value,
1349
1349
  "onUpdate:modelValue": [
1350
1350
  c[0] || (c[0] = (I) => d.value = I),
1351
- L
1351
+ h
1352
1352
  ],
1353
1353
  class: "tw-mb-4",
1354
1354
  label: r(o)("ASSETS.PAGES.DETAILS.FIELDS.NAME.TITLE"),
@@ -1400,7 +1400,7 @@ const uo = /* @__PURE__ */ H({
1400
1400
  AssetsDetails: co
1401
1401
  }, Symbol.toStringTag, { value: "Module" })), fo = lt({ blades: Eo }), mo = { class: "tw-flex tw-items-center tw-justify-center" };
1402
1402
  Vt("AssetsManager", {});
1403
- const go = /* @__PURE__ */ H({
1403
+ const go = /* @__PURE__ */ G({
1404
1404
  name: "AssetsManager",
1405
1405
  __name: "assets-manager",
1406
1406
  setup(e) {
@@ -1428,11 +1428,11 @@ const go = /* @__PURE__ */ H({
1428
1428
  ]);
1429
1429
  async function S(m) {
1430
1430
  if (m.dragIndex !== m.dropIndex) {
1431
- const A = m.value.map((R, P) => (R.sortOrder = P, R));
1431
+ const A = m.value.map((R, N) => (R.sortOrder = N, R));
1432
1432
  o.value.reorder(A);
1433
1433
  }
1434
1434
  }
1435
- function L() {
1435
+ function h() {
1436
1436
  f.value || (u.value = !0);
1437
1437
  }
1438
1438
  function T() {
@@ -1443,7 +1443,7 @@ const go = /* @__PURE__ */ H({
1443
1443
  const A = m.dataTransfer?.files;
1444
1444
  if (A && A.length)
1445
1445
  try {
1446
- await O(A);
1446
+ await L(A);
1447
1447
  } catch (R) {
1448
1448
  throw t.error("Failed to upload dropped files:", R), R;
1449
1449
  }
@@ -1453,36 +1453,36 @@ const go = /* @__PURE__ */ H({
1453
1453
  function v() {
1454
1454
  E.value.value = "", E.value.click();
1455
1455
  }
1456
- async function O(m) {
1456
+ async function L(m) {
1457
1457
  if (!m || m.length === 0) return;
1458
- const A = new Set((i.value ?? []).map((P) => P.name).filter(Boolean)), R = new DataTransfer();
1459
- for (const P of Array.from(m)) {
1460
- let M = P.name;
1458
+ const A = new Set((i.value ?? []).map((N) => N.name).filter(Boolean)), R = new DataTransfer();
1459
+ for (const N of Array.from(m)) {
1460
+ let M = N.name;
1461
1461
  if (A.has(M)) {
1462
1462
  const F = M.includes(".") ? `.${M.split(".").pop()}` : "", Ae = M.slice(0, M.length - F.length);
1463
1463
  let ee = 1;
1464
1464
  for (; A.has(M); )
1465
1465
  M = `${Ae}_${ee}${F}`, ee++;
1466
1466
  }
1467
- A.add(M), R.items.add(new File([P], M, { type: P.type }));
1467
+ A.add(M), R.items.add(new File([N], M, { type: N.type }));
1468
1468
  }
1469
1469
  try {
1470
- const P = i.value.reduce((M, F) => Math.max(M, F.sortOrder ?? 0), -1);
1471
- await o.value.upload(R.files, P);
1472
- } catch (P) {
1473
- throw t.error("Failed to upload assets:", P), P;
1470
+ const N = i.value.reduce((M, F) => Math.max(M, F.sortOrder ?? 0), -1);
1471
+ await o.value.upload(R.files, N);
1472
+ } catch (N) {
1473
+ throw t.error("Failed to upload assets:", N), N;
1474
1474
  }
1475
1475
  }
1476
- async function h(m) {
1476
+ async function O(m) {
1477
1477
  const R = m.target.files;
1478
1478
  if (R && R.length)
1479
1479
  try {
1480
- await O(R);
1481
- } catch (P) {
1482
- throw t.error("Failed to upload files:", P), P;
1480
+ await L(R);
1481
+ } catch (N) {
1482
+ throw t.error("Failed to upload files:", N), N;
1483
1483
  }
1484
1484
  }
1485
- function N(m) {
1485
+ function P(m) {
1486
1486
  n({
1487
1487
  name: "AssetsDetails",
1488
1488
  options: {
@@ -1516,9 +1516,9 @@ const go = /* @__PURE__ */ H({
1516
1516
  width: "70%"
1517
1517
  }, {
1518
1518
  default: p(() => [
1519
- Qa((C(), G("div", {
1519
+ Qa((C(), H("div", {
1520
1520
  class: "tw-relative tw-h-full tw-flex-1",
1521
- onDragover: We(L, ["prevent", "stop"]),
1521
+ onDragover: We(h, ["prevent", "stop"]),
1522
1522
  onDragleave: We(T, ["prevent"]),
1523
1523
  onDrop: We(I, ["prevent", "stop"])
1524
1524
  }, [
@@ -1537,7 +1537,7 @@ const go = /* @__PURE__ */ H({
1537
1537
  actionHandler: v
1538
1538
  },
1539
1539
  class: "tw-h-full tw-w-full",
1540
- onRowClick: A[1] || (A[1] = ({ data: R }) => N(R)),
1540
+ onRowClick: A[1] || (A[1] = ({ data: R }) => P(R)),
1541
1541
  onRowReorder: S
1542
1542
  }, {
1543
1543
  default: p(() => [
@@ -1557,7 +1557,7 @@ const go = /* @__PURE__ */ H({
1557
1557
  aspect: "1x1",
1558
1558
  src: R.url,
1559
1559
  background: "contain"
1560
- }, null, 8, ["src"])) : (C(), G("div", {
1560
+ }, null, 8, ["src"])) : (C(), H("div", {
1561
1561
  key: 1,
1562
1562
  class: "assets-manager__file-badge",
1563
1563
  style: Mt({ backgroundColor: r(qt)(R.name ?? "") })
@@ -1614,7 +1614,7 @@ const go = /* @__PURE__ */ H({
1614
1614
  hidden: "",
1615
1615
  multiple: "",
1616
1616
  name: "assets_manager",
1617
- onChange: h
1617
+ onChange: O
1618
1618
  }, null, 544)
1619
1619
  ]),
1620
1620
  _: 1
@@ -1690,8 +1690,20 @@ function ta() {
1690
1690
  untrackRequest: _o
1691
1691
  };
1692
1692
  }
1693
- const Te = U("interceptors");
1694
- function Io(e) {
1693
+ const Te = U("interceptors"), Io = /(^|\/)(login|signin|sign-in|account\/login|connect\/authorize)(\/|$)/i;
1694
+ function vo(e) {
1695
+ let t;
1696
+ try {
1697
+ t = new URL(e.url, window.location.origin).pathname;
1698
+ } catch {
1699
+ return !1;
1700
+ }
1701
+ if (Io.test(t))
1702
+ return !0;
1703
+ const a = e.headers?.get?.("content-type") ?? "";
1704
+ return e.redirected === !0 && a.includes("text/html");
1705
+ }
1706
+ function wo(e) {
1695
1707
  if (window.fetch.__vcInterceptorsInstalled__)
1696
1708
  return Te.warn("registerInterceptors called twice — ignoring second install"), window.fetch;
1697
1709
  const { fetch: a } = window, { signOut: n, isAuthenticated: s } = oe(), { trackRequest: o, untrackRequest: i } = ta();
@@ -1717,11 +1729,11 @@ function Io(e) {
1717
1729
  });
1718
1730
  });
1719
1731
  {
1720
- let E = function(O) {
1721
- const h = typeof O == "string" ? O : O instanceof Request ? O.url : O.toString();
1732
+ let E = function(L) {
1733
+ const O = typeof L == "string" ? L : L instanceof Request ? L.url : L.toString();
1722
1734
  try {
1723
- const N = new URL(h, window.location.origin);
1724
- return N.origin === window.location.origin && N.pathname.startsWith("/api/");
1735
+ const P = new URL(O, window.location.origin);
1736
+ return P.origin === window.location.origin && P.pathname.startsWith("/api/");
1725
1737
  } catch {
1726
1738
  return !1;
1727
1739
  }
@@ -1734,26 +1746,26 @@ function Io(e) {
1734
1746
  const c = String(++l);
1735
1747
  o(c);
1736
1748
  const S = new AbortController();
1737
- let L = !1;
1749
+ let h = !1;
1738
1750
  const T = setTimeout(() => {
1739
- L = !0, S.abort();
1751
+ h = !0, S.abort();
1740
1752
  }, 3e4), I = f?.signal, v = () => S.abort();
1741
1753
  I?.aborted ? v() : I && I.addEventListener("abort", v, { once: !0 });
1742
1754
  try {
1743
- const O = await a(g, {
1755
+ const L = await a(g, {
1744
1756
  ...f || {},
1745
1757
  signal: S.signal
1746
1758
  });
1747
- return O.status === 401 && !Wt() && s.value && (In(), n().catch((h) => {
1748
- Te.error("signOut failed after 401:", h);
1759
+ return (L.status === 401 || L.ok && vo(L)) && !Wt() && s.value && (In(), n().catch((P) => {
1760
+ Te.error("signOut failed after session expiry:", P);
1749
1761
  }).finally(() => {
1750
- vo(e), q.error(
1762
+ Co(e), q.error(
1751
1763
  `Access Denied: Your session has expired or you do not have the necessary permissions.
1752
1764
  Please log in again or contact the administrator for assistance.`
1753
1765
  );
1754
- })), O;
1755
- } catch (O) {
1756
- throw L ? new Error("Request timed out. Please try again.") : O;
1766
+ })), L;
1767
+ } catch (L) {
1768
+ throw h ? new Error("Request timed out. Please try again.") : L;
1757
1769
  } finally {
1758
1770
  i(c), clearTimeout(T), I && I.removeEventListener("abort", v);
1759
1771
  }
@@ -1761,10 +1773,10 @@ Please log in again or contact the administrator for assistance.`
1761
1773
  });
1762
1774
  return d.__vcInterceptorsInstalled__ = !0, window.fetch = d, d;
1763
1775
  }
1764
- function vo(e) {
1776
+ function Co(e) {
1765
1777
  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 + "/";
1766
1778
  }
1767
- const aa = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_ALL: "Clear all" } }, na = { 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" } }, sa = { 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" }, ATOMS: { 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: { 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", 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", 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" } }, oa = { 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." } }, ra = { 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}" } }, ia = { 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}" }, la = { 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." } }, ua = { TITLE: "Assets", TOOLBAR: { SAVE: "Save", REFRESH: "Refresh", ADD: "Add", DELETE: "Delete selected" }, EMPTY: { NO_ASSETS: "No assets", UPLOAD_ASSETS: "Drag & drop assets here or click 'Upload' button", UPLOAD: "Upload" }, TABLE: { HEADER: { IMAGE: "Img", NAME: "Name", SIZE: "Size", SORT_ORDER: "Sort order", CREATED_DATE: "Created date" }, ACTIONS: { DELETE: "Delete", EDIT: "Edit" } } }, da = { PAGES: { DETAILS: { SUBTITLE: "Asset edit", TOOLBAR: { SAVE: "Save", DELETE: "Delete" }, FIELDS: { SIZE: "Size", CREATED_DATE: "Created date", URL: "Url", COPY: "Copy link", NAME: { TITLE: "Asset name", PLACEHOLDER: "Enter asset name" }, ALT: { TITLE: "Image alternative text", PLACEHOLDER: "Enter image alt text", TOOLTIP: "This text will be displayed in case of disabled/unloaded image on the page" }, DESCRIPTION: { TITLE: "Meta description", PLACEHOLDER: "Enter meta description" } } } } }, ca = { _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" }, Ea = { ACCESS_RESTRICTED: "Access restricted" }, fa = { LOADING: "Loading Virto OZ..." }, ma = { 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", 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" }, ga = { no_options: "No options" }, wo = {
1779
+ const aa = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_ALL: "Clear all" } }, na = { 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" } }, sa = { 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", 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" } }, oa = { 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." } }, ra = { 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}" } }, ia = { 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}" }, la = { 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." } }, ua = { TITLE: "Assets", TOOLBAR: { SAVE: "Save", REFRESH: "Refresh", ADD: "Add", DELETE: "Delete selected" }, EMPTY: { NO_ASSETS: "No assets", UPLOAD_ASSETS: "Drag & drop assets here or click 'Upload' button", UPLOAD: "Upload" }, TABLE: { HEADER: { IMAGE: "Img", NAME: "Name", SIZE: "Size", SORT_ORDER: "Sort order", CREATED_DATE: "Created date" }, ACTIONS: { DELETE: "Delete", EDIT: "Edit" } } }, da = { PAGES: { DETAILS: { SUBTITLE: "Asset edit", TOOLBAR: { SAVE: "Save", DELETE: "Delete" }, FIELDS: { SIZE: "Size", CREATED_DATE: "Created date", URL: "Url", COPY: "Copy link", NAME: { TITLE: "Asset name", PLACEHOLDER: "Enter asset name" }, ALT: { TITLE: "Image alternative text", PLACEHOLDER: "Enter image alt text", TOOLTIP: "This text will be displayed in case of disabled/unloaded image on the page" }, DESCRIPTION: { TITLE: "Meta description", PLACEHOLDER: "Enter meta description" } } } } }, ca = { _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" }, Ea = { ACCESS_RESTRICTED: "Access restricted" }, fa = { LOADING: "Loading Virto OZ..." }, ma = { 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", 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" }, ga = { no_options: "No options" }, bo = {
1768
1780
  CORE: aa,
1769
1781
  SHELL: na,
1770
1782
  COMPONENTS: sa,
@@ -1779,7 +1791,7 @@ const aa = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_AL
1779
1791
  AI_AGENT: fa,
1780
1792
  VC_SCHEDULER: ma,
1781
1793
  common: ga
1782
- }, Co = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1794
+ }, Po = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1783
1795
  __proto__: null,
1784
1796
  AI_AGENT: fa,
1785
1797
  ASSETS: da,
@@ -1794,9 +1806,9 @@ const aa = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_AL
1794
1806
  SHELL: na,
1795
1807
  VC_SCHEDULER: ma,
1796
1808
  common: ga,
1797
- default: wo,
1809
+ default: bo,
1798
1810
  messages: ca
1799
- }, Symbol.toStringTag, { value: "Module" })), Sa = { THEMES: { LIGHT: "Hell", DARK: "Dunkel" }, NOTIFICATIONS: { CLEAR_ALL: "Alle löschen" } }, Aa = { NAVIGATION_ARIA_LABEL: "Hauptnavigation", SIDEBAR: { SEARCH_PLACEHOLDER: "Suchbegriff" }, USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Einstellungen", CHANGE_PASSWORD: "Passwort ändern", PROFILE: "Profil", LOGOUT: "Abmelden" } }, pa = { 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" }, ATOMS: { 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: { 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", 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", 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" } }, Ta = { 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." } }, ha = { 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}" } }, La = { 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" }, Oa = { 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." } }, Ra = { 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" } } }, _a = { 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" } } } } }, Ia = { _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" }, va = { ACCESS_RESTRICTED: "Zugriff eingeschränkt" }, wa = { LOADING: "Virto OZ wird geladen..." }, Ca = { AGENDA: "Agenda", 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: "Pink", COLOR_TEAL: "Türkis", COLOR_SLATE: "Grau", DAY: "Day", 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: "No events in this range", EMPTY_HINT: "Noch keine Ereignisse. Klicke auf einen Tag, um eins hinzuzufügen.", END: "Ende", LOADING: "Ereignisse werden geladen…", MORE: "+{count} more", MONTH: "Month", MORE_OPTIONS: "Weitere Optionen", NEW_EVENT: "Neues Ereignis", NEXT: "Next", PREVIOUS: "Previous", 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: "Start", TIMELINE: "Timeline", TIMELINE_DAY: "Zeitachse Tag", TIMELINE_WEEK: "Zeitachse Woche", TITLE: "Titel", TODAY: "Today", WEEK: "Week", WORK_WEEK: "Work week", ZOOM_IN: "Zoom in", ZOOM_OUT: "Zoom out" }, ba = { no_options: "Keine Optionen" }, bo = {
1811
+ }, Symbol.toStringTag, { value: "Module" })), Sa = { THEMES: { LIGHT: "Hell", DARK: "Dunkel" }, NOTIFICATIONS: { CLEAR_ALL: "Alle löschen" } }, Aa = { NAVIGATION_ARIA_LABEL: "Hauptnavigation", SIDEBAR: { SEARCH_PLACEHOLDER: "Suchbegriff" }, USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Einstellungen", CHANGE_PASSWORD: "Passwort ändern", PROFILE: "Profil", LOGOUT: "Abmelden" } }, pa = { 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", 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" } }, Ta = { 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." } }, ha = { 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}" } }, La = { 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" }, Oa = { 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." } }, Ra = { 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" } } }, _a = { 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" } } } } }, Ia = { _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" }, va = { ACCESS_RESTRICTED: "Zugriff eingeschränkt" }, wa = { LOADING: "Virto OZ wird geladen..." }, Ca = { 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", MONTH: "Monat", MORE_OPTIONS: "Weitere Optionen", NEW_EVENT: "Neues Ereignis", NEXT: "Nächster Zeitraum", PREVIOUS: "Vorheriger Zeitraum", RECUR_SCOPE_ALL: "Alle Ereignisse", RECUR_SCOPE_BODY_DELETE: "Dieses Ereignis ist Teil einer wiederkehrenden Serie. Möchten Sie nur dieses Ereignis oder alle Ereignisse der Serie löschen?", RECUR_SCOPE_BODY_EDIT: "Dieses Ereignis ist Teil einer wiederkehrenden Serie. Möchten Sie nur dieses Ereignis oder alle Ereignisse der Serie bearbeiten?", RECUR_SCOPE_THIS: "Dieses Ereignis", RECUR_SCOPE_TITLE: "Wiederkehrendes Ereignis", REPEAT: "Wiederholen", REPEAT_DAILY: "Täglich", REPEAT_END: "Endet", REPEAT_END_COUNT: "Nach", REPEAT_END_NEVER: "Nie", REPEAT_END_UNTIL: "Am Datum", REPEAT_EVERY: "Wiederholen alle", REPEAT_UNIT_DAYS: "Tag(e)", REPEAT_UNIT_WEEKS: "Woche(n)", REPEAT_UNIT_MONTHS: "Monat(e)", REPEAT_UNIT_YEARS: "Jahr(e)", REPEAT_MONTHLY: "Monatlich", REPEAT_NONE: "Keine Wiederholung", REPEAT_OCCURRENCES: "Vorkommen", REPEAT_ON: "Wiederholen am", REPEAT_WEEKLY: "Wöchentlich", REPEAT_YEARLY: "Jährlich", SAVE: "Speichern", START: "Beginn", TIMELINE: "Zeitachse", TIMELINE_DAY: "Zeitachse Tag", TIMELINE_WEEK: "Zeitachse Woche", TITLE: "Titel", TODAY: "Heute", WEEK: "Woche", WORK_WEEK: "Arbeitswoche", ZOOM_IN: "Vergrößern", ZOOM_OUT: "Verkleinern" }, ba = { no_options: "Keine Optionen" }, No = {
1800
1812
  CORE: Sa,
1801
1813
  SHELL: Aa,
1802
1814
  COMPONENTS: pa,
@@ -1811,7 +1823,7 @@ const aa = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_AL
1811
1823
  AI_AGENT: wa,
1812
1824
  VC_SCHEDULER: Ca,
1813
1825
  common: ba
1814
- }, Po = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1826
+ }, Do = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1815
1827
  __proto__: null,
1816
1828
  AI_AGENT: wa,
1817
1829
  ASSETS: _a,
@@ -1826,12 +1838,12 @@ const aa = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_AL
1826
1838
  SHELL: Aa,
1827
1839
  VC_SCHEDULER: Ca,
1828
1840
  common: ba,
1829
- default: bo,
1841
+ default: No,
1830
1842
  messages: Ia
1831
- }, Symbol.toStringTag, { value: "Module" })), No = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1843
+ }, Symbol.toStringTag, { value: "Module" })), yo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1832
1844
  __proto__: null,
1833
- de: Po,
1834
- en: Co
1845
+ de: Do,
1846
+ en: Po
1835
1847
  }, Symbol.toStringTag, { value: "Module" })), je = U("global-error-handler");
1836
1848
  function Ne(e) {
1837
1849
  return e instanceof Error ? `${e.name}:${e.message}` : String(e);
@@ -1845,7 +1857,7 @@ function Ze(e) {
1845
1857
  a - o > vt && he.delete(s);
1846
1858
  return !1;
1847
1859
  }
1848
- function Do(e) {
1860
+ function Bo(e) {
1849
1861
  const t = e.config.errorHandler;
1850
1862
  if (e.config.errorHandler = (o, i, l) => {
1851
1863
  if (je.error("Unhandled Vue error:", o, `
@@ -1882,7 +1894,7 @@ Info:`, l), !Ze(o)) {
1882
1894
  };
1883
1895
  window.addEventListener("error", s);
1884
1896
  }
1885
- const yo = U("notification-instance"), j = {
1897
+ const Mo = U("notification-instance"), j = {
1886
1898
  "top-center": void 0,
1887
1899
  "top-right": void 0,
1888
1900
  "top-left": void 0,
@@ -1890,7 +1902,7 @@ const yo = U("notification-instance"), j = {
1890
1902
  "bottom-right": void 0,
1891
1903
  "bottom-left": void 0
1892
1904
  };
1893
- function Bo() {
1905
+ function ko() {
1894
1906
  function e(s, o, i) {
1895
1907
  document.getElementById(o) && (j[i] = s);
1896
1908
  }
@@ -1901,7 +1913,7 @@ function Bo() {
1901
1913
  j[l]?.unmount(), document.getElementById(`notification-${l}`)?.remove(), j[l] = void 0;
1902
1914
  }), Object.values(j).some((i) => i !== void 0) || document.querySelector(".notification")?.remove());
1903
1915
  } catch (o) {
1904
- yo.error("Failed to unmount notification component:", o);
1916
+ Mo.error("Failed to unmount notification component:", o);
1905
1917
  }
1906
1918
  }
1907
1919
  function a() {
@@ -1926,8 +1938,8 @@ const ce = U("notification-container"), x = {
1926
1938
  "bottom-center": b([]),
1927
1939
  "bottom-right": b([]),
1928
1940
  "bottom-left": b([])
1929
- }, { clearContainer: Mo, unmountComponent: ko, saveInstance: Vo, getInstanceByPosition: wt } = Bo();
1930
- function Uo() {
1941
+ }, { clearContainer: Vo, unmountComponent: Uo, saveInstance: Fo, getInstanceByPosition: wt } = ko();
1942
+ function Wo() {
1931
1943
  const e = le({
1932
1944
  timeout: 3e3,
1933
1945
  pauseOnHover: !0,
@@ -1952,11 +1964,11 @@ function Uo() {
1952
1964
  const E = u.position || e.position, g = o.get(E);
1953
1965
  if (g && await g, !wt(E)) {
1954
1966
  const f = (async () => {
1955
- const c = s(E), { default: S } = await Promise.resolve().then(() => mr), L = en(S, {
1967
+ const c = s(E), { default: S } = await Promise.resolve().then(() => Sr), h = en(S, {
1956
1968
  ...u,
1957
1969
  position: E
1958
1970
  });
1959
- L.use(X), L.provide(jt, { notificationContainers: x, actions: d }), L.mount(c), Vo(L, c.id, E);
1971
+ h.use(X), h.provide(jt, { notificationContainers: x, actions: d }), h.mount(c), Fo(h, c.id, E);
1960
1972
  })();
1961
1973
  o.set(E, f), await f, o.delete(E);
1962
1974
  }
@@ -1978,15 +1990,15 @@ function Uo() {
1978
1990
  if (u) {
1979
1991
  let E, g;
1980
1992
  Object.entries(x).forEach(([f, c]) => {
1981
- const S = c.value.find((L) => L.notificationId === u);
1993
+ const S = c.value.find((h) => h.notificationId === u);
1982
1994
  S && (E = S, g = f);
1983
- }), g && (x[g].value = x[g].value.filter((f) => f.notificationId !== u), x[g].value.length === 0 && ko(g), Pe(() => {
1995
+ }), g && (x[g].value = x[g].value.filter((f) => f.notificationId !== u), x[g].value.length === 0 && Uo(g), Pe(() => {
1984
1996
  E?.onClose && typeof E?.onClose == "function" && E.onClose(E.payload);
1985
1997
  }));
1986
1998
  }
1987
1999
  },
1988
2000
  clear() {
1989
- Mo(), Object.values(x).forEach((u) => {
2001
+ Vo(), Object.values(x).forEach((u) => {
1990
2002
  u.value = [];
1991
2003
  });
1992
2004
  },
@@ -2003,12 +2015,12 @@ function Uo() {
2003
2015
  if (u.updateId) {
2004
2016
  let E, g, f;
2005
2017
  if (Object.entries(x).forEach(([c, S]) => {
2006
- const L = S.value.find((T) => T.notificationId === u.notificationId);
2007
- L && (E = L, g = S, f = c);
2018
+ const h = S.value.find((T) => T.notificationId === u.notificationId);
2019
+ h && (E = h, g = S, f = c);
2008
2020
  }), E && g) {
2009
2021
  if (ce.debug(`Updating notification ${u.notificationId} in position ${f}`), u.position && u.position !== f) {
2010
2022
  g.value = g.value.filter(
2011
- (L) => L.notificationId !== u.notificationId
2023
+ (h) => h.notificationId !== u.notificationId
2012
2024
  );
2013
2025
  const c = {
2014
2026
  ...E,
@@ -2018,8 +2030,8 @@ function Uo() {
2018
2030
  } else
2019
2031
  ce.debug("Standard update of notification properties"), Object.keys(u).forEach((c) => {
2020
2032
  if (c !== "updateId" && c !== "notificationId") {
2021
- const S = c, L = u[S];
2022
- E && L !== void 0 && (E[S] = L);
2033
+ const S = c, h = u[S];
2034
+ E && h !== void 0 && (E[S] = h);
2023
2035
  }
2024
2036
  });
2025
2037
  return !0;
@@ -2044,8 +2056,8 @@ function Uo() {
2044
2056
  hasNotification: l
2045
2057
  };
2046
2058
  }
2047
- function Fo() {
2048
- const e = Uo();
2059
+ function Ho() {
2060
+ const e = Wo();
2049
2061
  Va({
2050
2062
  defaultOptions: e.defaultOptions,
2051
2063
  actions: e.actions,
@@ -2055,22 +2067,22 @@ function Fo() {
2055
2067
  hasNotification: (t) => e.hasNotification(t)
2056
2068
  });
2057
2069
  }
2058
- const Wo = "2.3.0";
2059
- function Go() {
2070
+ const Go = "2.4.0";
2071
+ function xo() {
2060
2072
  return {
2061
- version: Wo,
2062
- buildDate: "2026-07-28T09:06:51.192Z",
2063
- gitHash: "eb3675e7a"
2073
+ version: Go,
2074
+ buildDate: "2026-08-04T07:37:04.571Z",
2075
+ gitHash: "d4d56d4fa"
2064
2076
  };
2065
2077
  }
2066
- function Ho(e = Go()) {
2078
+ function $o(e = xo()) {
2067
2079
  console.warn(
2068
2080
  `%c@vc-shell/framework%c v${e.version} · ${e.buildDate} · ${e.gitHash}`,
2069
2081
  "font-weight:bold;color:#319ED4",
2070
2082
  "color:inherit"
2071
2083
  );
2072
2084
  }
2073
- const xo = /* @__PURE__ */ H({
2085
+ const Ko = /* @__PURE__ */ G({
2074
2086
  __name: "sidebar",
2075
2087
  props: {
2076
2088
  position: { default: "right" },
@@ -2108,7 +2120,7 @@ const xo = /* @__PURE__ */ H({
2108
2120
  } : void 0
2109
2121
  ]), 1032, ["position", "title", "close-button", "teleport"])) : Y(u.$slots, "content", { key: 1 });
2110
2122
  }
2111
- }), bl = xo, $o = { class: "tw-flex tw-flex-row tw-items-center tw-gap-2" }, Ko = /* @__PURE__ */ H({
2123
+ }), Nl = Ko, zo = { class: "tw-flex tw-flex-row tw-items-center tw-gap-2" }, qo = /* @__PURE__ */ G({
2112
2124
  __name: "external-provider",
2113
2125
  props: {
2114
2126
  logo: {},
@@ -2124,7 +2136,7 @@ const xo = /* @__PURE__ */ H({
2124
2136
  onClick: s[0] || (s[0] = (o) => n.$emit("signIn"))
2125
2137
  }, {
2126
2138
  default: p(() => [
2127
- V("div", $o, [
2139
+ V("div", zo, [
2128
2140
  _(r(st), {
2129
2141
  src: a.value,
2130
2142
  class: "vc-external-provider__icon",
@@ -2136,15 +2148,15 @@ const xo = /* @__PURE__ */ H({
2136
2148
  _: 1
2137
2149
  }));
2138
2150
  }
2139
- }), zo = { class: "tw-flex tw-justify-center tw-flex-col tw-gap-4" }, qo = /* @__PURE__ */ H({
2151
+ }), Yo = { class: "tw-flex tw-justify-center tw-flex-col tw-gap-4" }, jo = /* @__PURE__ */ G({
2140
2152
  __name: "external-providers",
2141
2153
  props: {
2142
2154
  providers: {}
2143
2155
  },
2144
2156
  setup(e) {
2145
2157
  const { signIn: t } = $t();
2146
- return (a, n) => (C(), G("div", zo, [
2147
- (C(!0), G(se, null, Ue(e.providers, (s) => (C(), D(Ko, {
2158
+ return (a, n) => (C(), H("div", Yo, [
2159
+ (C(!0), H(se, null, Ue(e.providers, (s) => (C(), D(qo, {
2148
2160
  key: s.authenticationType,
2149
2161
  logo: s.logoUrl,
2150
2162
  "display-name": s.displayName,
@@ -2154,25 +2166,25 @@ const xo = /* @__PURE__ */ H({
2154
2166
  ]));
2155
2167
  }
2156
2168
  });
2157
- function Yo(e) {
2169
+ function Zo(e) {
2158
2170
  if (!e) return "/";
2159
2171
  const t = e.trim();
2160
2172
  return !t.startsWith("/") || t.startsWith("//") ? "/" : t;
2161
2173
  }
2162
- function jo(e, t) {
2174
+ function Xo(e, t) {
2163
2175
  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");
2164
2176
  }
2165
- function Zo(e) {
2177
+ function Jo(e) {
2166
2178
  const t = [];
2167
2179
  return e.confirmPassword !== e.password && t.push({ code: "Repeat-password" }), e.password === e.currentPassword && e.confirmPassword === e.currentPassword && t.push({ code: "Equal-passwords" }), t;
2168
2180
  }
2169
- const Xo = {
2181
+ const Qo = {
2170
2182
  key: 0,
2171
2183
  class: "vc-login-page__providers"
2172
- }, Jo = {
2184
+ }, er = {
2173
2185
  key: 0,
2174
2186
  class: "vc-login-page__separator-line"
2175
- }, Qo = /* @__PURE__ */ H({
2187
+ }, tr = /* @__PURE__ */ G({
2176
2188
  __name: "Login",
2177
2189
  props: {
2178
2190
  logo: {},
@@ -2182,9 +2194,9 @@ const Xo = {
2182
2194
  ssoOnly: { type: Boolean }
2183
2195
  },
2184
2196
  setup(e) {
2185
- const t = U("login-page"), a = e, { t: n } = ue({ useScope: "global" }), s = ve(), { validateField: o } = de({ validateOnMount: !1 }), { uiSettings: i, loading: l } = we(), d = b({ succeeded: !0 }), { signIn: u, loading: E, user: g } = oe(), { getProviders: f } = $t(), c = Ie(), S = b(), L = b(!1);
2197
+ const t = U("login-page"), a = e, { t: n } = ue({ useScope: "global" }), s = ve(), { validateField: o } = de({ validateOnMount: !1 }), { uiSettings: i, loading: l } = we(), d = b({ succeeded: !0 }), { signIn: u, loading: E, user: g } = oe(), { getProviders: f } = $t(), c = Ie(), S = b(), h = b(!1);
2186
2198
  Re(async () => {
2187
- S.value = await f(), L.value = !0;
2199
+ S.value = await f(), h.value = !0;
2188
2200
  });
2189
2201
  const T = w(() => ({
2190
2202
  logo: l.value ? "" : i.value?.logo || a.logo
@@ -2198,44 +2210,44 @@ const Xo = {
2198
2210
  return;
2199
2211
  }
2200
2212
  if (d.value.succeeded) {
2201
- const h = Yo(localStorage.getItem("redirectAfterLogin"));
2202
- localStorage.removeItem("redirectAfterLogin"), await s.push(h);
2213
+ const O = Zo(localStorage.getItem("redirectAfterLogin"));
2214
+ localStorage.removeItem("redirectAfterLogin"), await s.push(O);
2203
2215
  return;
2204
2216
  }
2205
- d.value.error = jo(d.value, n), I.password = "", o("password");
2217
+ d.value.error = Xo(d.value, n), I.password = "", o("password");
2206
2218
  }
2207
- }, O = () => {
2219
+ }, L = () => {
2208
2220
  s.push({ name: "ForgotPassword" });
2209
2221
  };
2210
- return t.debug("Init login-page"), (h, N) => (C(), D(r(_e), {
2222
+ return t.debug("Init login-page"), (O, P) => (C(), D(r(_e), {
2211
2223
  logo: T.value.logo,
2212
2224
  background: e.background,
2213
- title: e.title || h.$t("LOGIN.TITLE"),
2214
- subtitle: e.subtitle || h.$t("LOGIN.SUBTITLE"),
2225
+ title: e.title || O.$t("LOGIN.TITLE"),
2226
+ subtitle: e.subtitle || O.$t("LOGIN.SUBTITLE"),
2215
2227
  class: "vc-login-page"
2216
2228
  }, {
2217
2229
  default: p(() => [
2218
- S.value && S.value.length ? (C(), G("div", Xo, [
2219
- _(qo, { providers: S.value }, null, 8, ["providers"]),
2220
- e.ssoOnly ? z("", !0) : (C(), G("div", Jo, y(h.$t("LOGIN.OR")), 1))
2230
+ S.value && S.value.length ? (C(), H("div", Qo, [
2231
+ _(jo, { providers: S.value }, null, 8, ["providers"]),
2232
+ e.ssoOnly ? z("", !0) : (C(), H("div", er, y(O.$t("LOGIN.OR")), 1))
2221
2233
  ])) : z("", !0),
2222
- e.ssoOnly && L.value && !S.value?.length ? (C(), D(r(Ee), {
2234
+ e.ssoOnly && h.value && !S.value?.length ? (C(), D(r(Ee), {
2223
2235
  key: 1,
2224
2236
  class: "tw-mt-4 tw-text-danger-500"
2225
2237
  }, {
2226
2238
  default: p(() => [
2227
- k(y(h.$t("LOGIN.SSO_NO_PROVIDERS_ERROR")), 1)
2239
+ k(y(O.$t("LOGIN.SSO_NO_PROVIDERS_ERROR")), 1)
2228
2240
  ]),
2229
2241
  _: 1
2230
2242
  })) : z("", !0),
2231
- e.ssoOnly ? z("", !0) : (C(), G(se, { key: 2 }, [
2243
+ e.ssoOnly ? z("", !0) : (C(), H(se, { key: 2 }, [
2232
2244
  _(r(ge), {
2233
2245
  class: "tw-gap-5",
2234
2246
  onSubmit: v
2235
2247
  }, {
2236
2248
  default: p(() => [
2237
2249
  _(r(Z), {
2238
- label: h.$t("LOGIN.FIELDS.LOGIN.LABEL"),
2250
+ label: O.$t("LOGIN.FIELDS.LOGIN.LABEL"),
2239
2251
  name: "username",
2240
2252
  "model-value": I.username,
2241
2253
  rules: "required"
@@ -2245,11 +2257,12 @@ const Xo = {
2245
2257
  ref: "loginField",
2246
2258
  modelValue: I.username,
2247
2259
  "onUpdate:modelValue": [
2248
- N[0] || (N[0] = (R) => I.username = R),
2260
+ P[0] || (P[0] = (R) => I.username = R),
2249
2261
  m
2250
2262
  ],
2251
- label: h.$t("LOGIN.FIELDS.LOGIN.LABEL"),
2252
- placeholder: h.$t("LOGIN.FIELDS.LOGIN.PLACEHOLDER"),
2263
+ label: O.$t("LOGIN.FIELDS.LOGIN.LABEL"),
2264
+ placeholder: O.$t("LOGIN.FIELDS.LOGIN.PLACEHOLDER"),
2265
+ autocomplete: "username",
2253
2266
  required: "",
2254
2267
  error: !!A.length,
2255
2268
  "error-message": B
@@ -2258,7 +2271,7 @@ const Xo = {
2258
2271
  _: 1
2259
2272
  }, 8, ["label", "model-value"]),
2260
2273
  _(r(Z), {
2261
- label: h.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
2274
+ label: O.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
2262
2275
  name: "password",
2263
2276
  "model-value": I.password,
2264
2277
  rules: "required"
@@ -2268,12 +2281,13 @@ const Xo = {
2268
2281
  ref: "passwordField",
2269
2282
  modelValue: I.password,
2270
2283
  "onUpdate:modelValue": [
2271
- N[1] || (N[1] = (R) => I.password = R),
2284
+ P[1] || (P[1] = (R) => I.password = R),
2272
2285
  m
2273
2286
  ],
2274
- label: h.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
2275
- placeholder: h.$t("LOGIN.FIELDS.PASSWORD.PLACEHOLDER"),
2287
+ label: O.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
2288
+ placeholder: O.$t("LOGIN.FIELDS.PASSWORD.PLACEHOLDER"),
2276
2289
  type: "password",
2290
+ autocomplete: "current-password",
2277
2291
  required: "",
2278
2292
  error: !!A.length,
2279
2293
  "error-message": B,
@@ -2291,7 +2305,7 @@ const Xo = {
2291
2305
  onClick: v
2292
2306
  }, {
2293
2307
  default: p(() => [
2294
- k(y(h.$t("LOGIN.BUTTON")), 1)
2308
+ k(y(O.$t("LOGIN.BUTTON")), 1)
2295
2309
  ]),
2296
2310
  _: 1
2297
2311
  }, 8, ["disabled", "loading"]),
@@ -2299,10 +2313,10 @@ const Xo = {
2299
2313
  variant: "link",
2300
2314
  class: "tw-w-full tw-justify-center",
2301
2315
  type: "button",
2302
- onClick: O
2316
+ onClick: L
2303
2317
  }, {
2304
2318
  default: p(() => [
2305
- k(y(h.$t("LOGIN.FORGOT_PASSWORD_BUTTON")), 1)
2319
+ k(y(O.$t("LOGIN.FORGOT_PASSWORD_BUTTON")), 1)
2306
2320
  ]),
2307
2321
  _: 1
2308
2322
  })
@@ -2329,7 +2343,7 @@ const Xo = {
2329
2343
  _: 1
2330
2344
  }, 8, ["logo", "background", "title", "subtitle"]));
2331
2345
  }
2332
- }), Pl = Qo, er = { class: "tw-text-center" }, tr = { class: "tw-text-center tw-mb-6" }, ar = { class: "tw-text-sm tw-text-neutrals-600" }, nr = /* @__PURE__ */ H({
2346
+ }), Dl = tr, ar = { class: "tw-text-center" }, nr = { class: "tw-text-center tw-mb-6" }, sr = { class: "tw-text-sm tw-text-neutrals-600" }, or = /* @__PURE__ */ G({
2333
2347
  __name: "ForgotPassword",
2334
2348
  props: {
2335
2349
  logo: {},
@@ -2365,7 +2379,7 @@ const Xo = {
2365
2379
  } finally {
2366
2380
  l.value = !1;
2367
2381
  }
2368
- }, L = () => {
2382
+ }, h = () => {
2369
2383
  a.push({ name: "Login" });
2370
2384
  };
2371
2385
  return (T, I) => (C(), D(r(_e), {
@@ -2375,21 +2389,21 @@ const Xo = {
2375
2389
  subtitle: u.value ? void 0 : r(n)("FORGOT_PASSWORD.SUBTITLE")
2376
2390
  }, {
2377
2391
  default: p(() => [
2378
- u.value ? (C(), G(se, { key: 1 }, [
2379
- V("div", tr, [
2380
- V("p", ar, y(r(n)("FORGOT_PASSWORD.SUCCESS_TEXT", { email: c.value })), 1)
2392
+ u.value ? (C(), H(se, { key: 1 }, [
2393
+ V("div", nr, [
2394
+ V("p", sr, y(r(n)("FORGOT_PASSWORD.SUCCESS_TEXT", { email: c.value })), 1)
2381
2395
  ]),
2382
2396
  _(r($), {
2383
2397
  variant: "primary",
2384
2398
  class: "tw-w-full",
2385
- onClick: L
2399
+ onClick: h
2386
2400
  }, {
2387
2401
  default: p(() => [
2388
2402
  k(y(r(n)("FORGOT_PASSWORD.BACK_TO_LOGIN")), 1)
2389
2403
  ]),
2390
2404
  _: 1
2391
2405
  })
2392
- ], 64)) : (C(), G(se, { key: 0 }, [
2406
+ ], 64)) : (C(), H(se, { key: 0 }, [
2393
2407
  _(r(ge), { onSubmit: S }, {
2394
2408
  default: p(() => [
2395
2409
  _(r(Z), {
@@ -2398,19 +2412,19 @@ const Xo = {
2398
2412
  "model-value": E.loginOrEmail,
2399
2413
  rules: "required|email"
2400
2414
  }, {
2401
- default: p(({ errorMessage: v, handleChange: O, errors: h }) => [
2415
+ default: p(({ errorMessage: v, handleChange: L, errors: O }) => [
2402
2416
  _(r(K), {
2403
2417
  ref: "emailField",
2404
2418
  modelValue: E.loginOrEmail,
2405
2419
  "onUpdate:modelValue": [
2406
- I[0] || (I[0] = (N) => E.loginOrEmail = N),
2407
- O
2420
+ I[0] || (I[0] = (P) => E.loginOrEmail = P),
2421
+ L
2408
2422
  ],
2409
2423
  class: "tw-mb-6",
2410
2424
  label: r(n)("FORGOT_PASSWORD.FIELDS.EMAIL.LABEL"),
2411
2425
  placeholder: r(n)("FORGOT_PASSWORD.FIELDS.EMAIL.PLACEHOLDER"),
2412
2426
  required: "",
2413
- error: !!h.length,
2427
+ error: !!O.length,
2414
2428
  "error-message": v
2415
2429
  }, null, 8, ["modelValue", "label", "placeholder", "error", "error-message", "onUpdate:modelValue"])
2416
2430
  ]),
@@ -2428,13 +2442,13 @@ const Xo = {
2428
2442
  ]),
2429
2443
  _: 1
2430
2444
  }, 8, ["disabled", "loading"]),
2431
- V("div", er, [
2445
+ V("div", ar, [
2432
2446
  _(r($), {
2433
2447
  variant: "link",
2434
2448
  icon: "lucide-arrow-left",
2435
2449
  "icon-size": "xs",
2436
2450
  type: "button",
2437
- onClick: L
2451
+ onClick: h
2438
2452
  }, {
2439
2453
  default: p(() => [
2440
2454
  k(y(r(n)("FORGOT_PASSWORD.BACK_TO_LOGIN")), 1)
@@ -2459,7 +2473,7 @@ const Xo = {
2459
2473
  _: 1
2460
2474
  }, 8, ["logo", "background", "title", "subtitle"]));
2461
2475
  }
2462
- }), Nl = nr, sr = /* @__PURE__ */ H({
2476
+ }), yl = or, rr = /* @__PURE__ */ G({
2463
2477
  __name: "ResetPassword",
2464
2478
  props: {
2465
2479
  userId: {},
@@ -2484,13 +2498,13 @@ const Xo = {
2484
2498
  const I = (await n(f.password)).errors;
2485
2499
  f.errors = I?.map((v) => v.code), f.confirmPassword !== f.password && f.errors.push("Repeat-password"), f.isValid = f.errors.length == 0;
2486
2500
  }
2487
- }, L = async () => {
2501
+ }, h = async () => {
2488
2502
  const { valid: I } = await u();
2489
2503
  if (I) {
2490
2504
  const v = await s(t.userId, f.password, t.token);
2491
2505
  if (v.succeeded) {
2492
- const O = await o(t.userName, f.password);
2493
- O.succeeded ? l.push("/") : f.errors = "error" in O && [O.error] || [];
2506
+ const L = await o(t.userName, f.password);
2507
+ L.succeeded ? l.push("/") : f.errors = "error" in L && [L.error] || [];
2494
2508
  } else
2495
2509
  f.errors = v.errors;
2496
2510
  }
@@ -2516,14 +2530,14 @@ const Xo = {
2516
2530
  "model-value": f.password,
2517
2531
  rules: "required"
2518
2532
  }, {
2519
- default: p(({ field: O, errorMessage: h, handleChange: N, errors: B }) => [
2520
- _(r(K), ie(O, {
2533
+ default: p(({ field: L, errorMessage: O, handleChange: P, errors: B }) => [
2534
+ _(r(K), ie(L, {
2521
2535
  ref: "passwordField",
2522
2536
  modelValue: f.password,
2523
2537
  "onUpdate:modelValue": [
2524
2538
  v[0] || (v[0] = (m) => f.password = m),
2525
2539
  (m) => {
2526
- N(m), S();
2540
+ P(m), S();
2527
2541
  }
2528
2542
  ],
2529
2543
  class: "tw-mb-4",
@@ -2533,7 +2547,7 @@ const Xo = {
2533
2547
  disabled: !f.tokenIsValid,
2534
2548
  required: "",
2535
2549
  error: !!B.length,
2536
- "error-message": h
2550
+ "error-message": O
2537
2551
  }), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
2538
2552
  ]),
2539
2553
  _: 1
@@ -2544,14 +2558,14 @@ const Xo = {
2544
2558
  "model-value": f.confirmPassword,
2545
2559
  rules: "required"
2546
2560
  }, {
2547
- default: p(({ field: O, errorMessage: h, handleChange: N, errors: B }) => [
2548
- _(r(K), ie(O, {
2561
+ default: p(({ field: L, errorMessage: O, handleChange: P, errors: B }) => [
2562
+ _(r(K), ie(L, {
2549
2563
  ref: "confirmPasswordField",
2550
2564
  modelValue: f.confirmPassword,
2551
2565
  "onUpdate:modelValue": [
2552
2566
  v[1] || (v[1] = (m) => f.confirmPassword = m),
2553
2567
  (m) => {
2554
- N(m), S();
2568
+ P(m), S();
2555
2569
  }
2556
2570
  ],
2557
2571
  class: "tw-mb-6",
@@ -2561,8 +2575,8 @@ const Xo = {
2561
2575
  type: "password",
2562
2576
  required: "",
2563
2577
  error: !!B.length,
2564
- "error-message": h,
2565
- onKeyup: nt(L, ["enter"])
2578
+ "error-message": O,
2579
+ onKeyup: nt(h, ["enter"])
2566
2580
  }), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
2567
2581
  ]),
2568
2582
  _: 1
@@ -2572,19 +2586,19 @@ const Xo = {
2572
2586
  class: "tw-w-full",
2573
2587
  disabled: c.value,
2574
2588
  loading: r(i),
2575
- onClick: L
2589
+ onClick: h
2576
2590
  }, {
2577
2591
  default: p(() => [
2578
2592
  k(y(r(d)("PASSWORDRESET.SAVE_PASSWORD")), 1)
2579
2593
  ]),
2580
2594
  _: 1
2581
2595
  }, 8, ["disabled", "loading"]),
2582
- (C(!0), G(se, null, Ue(f.errors, (O) => (C(), D(r(Ee), {
2583
- key: O,
2596
+ (C(!0), H(se, null, Ue(f.errors, (L) => (C(), D(r(Ee), {
2597
+ key: L,
2584
2598
  class: "tw-mt-3 tw-text-danger-500"
2585
2599
  }, {
2586
2600
  default: p(() => [
2587
- k(y(r(d)(`PASSWORDRESET.ERRORS.${O}`)), 1)
2601
+ k(y(r(d)(`PASSWORDRESET.ERRORS.${L}`)), 1)
2588
2602
  ]),
2589
2603
  _: 2
2590
2604
  }, 1024))), 128))
@@ -2595,7 +2609,7 @@ const Xo = {
2595
2609
  _: 1
2596
2610
  }, 8, ["logo", "background", "title", "subtitle"]));
2597
2611
  }
2598
- }), Dl = sr, or = /* @__PURE__ */ H({
2612
+ }), Bl = rr, ir = /* @__PURE__ */ G({
2599
2613
  __name: "Invite",
2600
2614
  props: {
2601
2615
  userId: {},
@@ -2616,10 +2630,10 @@ const Xo = {
2616
2630
  Re(async () => {
2617
2631
  c.tokenIsValid = await a(t.userId, t.token), c.tokenIsValid || c.errors.push("Invalid-token");
2618
2632
  });
2619
- const L = async () => {
2633
+ const h = async () => {
2620
2634
  if (c.tokenIsValid) {
2621
2635
  const v = (await n(c.password)).errors;
2622
- c.errors = v?.map((O) => O.code), c.confirmPassword && c.confirmPassword !== c.password && c.errors.push("Repeat-password"), c.isValid = c.errors.length == 0 && !S.value;
2636
+ c.errors = v?.map((L) => L.code), c.confirmPassword && c.confirmPassword !== c.password && c.errors.push("Repeat-password"), c.isValid = c.errors.length == 0 && !S.value;
2623
2637
  }
2624
2638
  }, T = async () => {
2625
2639
  const v = await s(t.userId, c.password, t.token);
@@ -2627,7 +2641,7 @@ const Xo = {
2627
2641
  }, I = w(() => ({
2628
2642
  logo: f.value ? "" : g.value?.logo || t.logo
2629
2643
  }));
2630
- return (v, O) => (C(), D(r(_e), {
2644
+ return (v, L) => (C(), D(r(_e), {
2631
2645
  logo: I.value.logo,
2632
2646
  background: e.background,
2633
2647
  title: r(d)("INVITATION.TITLE"),
@@ -2653,14 +2667,14 @@ const Xo = {
2653
2667
  rules: "required",
2654
2668
  name: "password"
2655
2669
  }, {
2656
- default: p(({ field: h, errorMessage: N, handleChange: B, errors: m }) => [
2657
- _(r(K), ie(h, {
2670
+ default: p(({ field: O, errorMessage: P, handleChange: B, errors: m }) => [
2671
+ _(r(K), ie(O, {
2658
2672
  ref: "passwordField",
2659
2673
  modelValue: c.password,
2660
2674
  "onUpdate:modelValue": [
2661
- O[0] || (O[0] = (A) => c.password = A),
2675
+ L[0] || (L[0] = (A) => c.password = A),
2662
2676
  (A) => {
2663
- B(A), L();
2677
+ B(A), h();
2664
2678
  }
2665
2679
  ],
2666
2680
  class: "tw-mb-4",
@@ -2669,7 +2683,7 @@ const Xo = {
2669
2683
  type: "password",
2670
2684
  disabled: !c.tokenIsValid,
2671
2685
  error: !!m.length,
2672
- "error-message": N,
2686
+ "error-message": P,
2673
2687
  required: ""
2674
2688
  }), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
2675
2689
  ]),
@@ -2681,14 +2695,14 @@ const Xo = {
2681
2695
  rules: "required",
2682
2696
  name: "confirm_password"
2683
2697
  }, {
2684
- default: p(({ field: h, errorMessage: N, handleChange: B, errors: m }) => [
2685
- _(r(K), ie(h, {
2698
+ default: p(({ field: O, errorMessage: P, handleChange: B, errors: m }) => [
2699
+ _(r(K), ie(O, {
2686
2700
  ref: "confirmPasswordField",
2687
2701
  modelValue: c.confirmPassword,
2688
2702
  "onUpdate:modelValue": [
2689
- O[1] || (O[1] = (A) => c.confirmPassword = A),
2703
+ L[1] || (L[1] = (A) => c.confirmPassword = A),
2690
2704
  (A) => {
2691
- B(A), L();
2705
+ B(A), h();
2692
2706
  }
2693
2707
  ],
2694
2708
  class: "tw-mb-6",
@@ -2697,7 +2711,7 @@ const Xo = {
2697
2711
  disabled: !c.tokenIsValid,
2698
2712
  type: "password",
2699
2713
  error: !!m.length,
2700
- "error-message": N,
2714
+ "error-message": P,
2701
2715
  required: "",
2702
2716
  onKeyup: nt(T, ["enter"])
2703
2717
  }), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
@@ -2716,12 +2730,12 @@ const Xo = {
2716
2730
  ]),
2717
2731
  _: 1
2718
2732
  }, 8, ["disabled", "loading"]),
2719
- (C(!0), G(se, null, Ue(c.errors, (h) => (C(), D(r(Ee), {
2720
- key: h,
2733
+ (C(!0), H(se, null, Ue(c.errors, (O) => (C(), D(r(Ee), {
2734
+ key: O,
2721
2735
  class: "tw-mt-3 tw-text-danger-500"
2722
2736
  }, {
2723
2737
  default: p(() => [
2724
- k(y(r(d)(`INVITATION.ERRORS.${h}`)), 1)
2738
+ k(y(r(d)(`INVITATION.ERRORS.${O}`)), 1)
2725
2739
  ]),
2726
2740
  _: 2
2727
2741
  }, 1024))), 128))
@@ -2732,10 +2746,10 @@ const Xo = {
2732
2746
  _: 1
2733
2747
  }, 8, ["logo", "background", "title", "subtitle"]));
2734
2748
  }
2735
- }), yl = or, rr = {
2749
+ }), Ml = ir, lr = {
2736
2750
  key: 0,
2737
2751
  class: "tw-mb-4"
2738
- }, ir = { class: "tw-flex tw-gap-3" }, lr = /* @__PURE__ */ H({
2752
+ }, ur = { class: "tw-flex tw-gap-3" }, dr = /* @__PURE__ */ G({
2739
2753
  __name: "ChangePassword",
2740
2754
  props: {
2741
2755
  forced: { type: Boolean },
@@ -2754,7 +2768,7 @@ const Xo = {
2754
2768
  password: "",
2755
2769
  confirmPassword: ""
2756
2770
  }), S = w(() => !g.value || !E.value);
2757
- async function L() {
2771
+ async function h() {
2758
2772
  await i(), await f.push("/login");
2759
2773
  }
2760
2774
  async function T() {
@@ -2764,23 +2778,23 @@ const Xo = {
2764
2778
  function I() {
2765
2779
  Pe(async () => {
2766
2780
  if (c.password || c.confirmPassword) {
2767
- const v = (await o(c.password)).errors ?? [], O = Zo({
2781
+ const v = (await o(c.password)).errors ?? [], L = Jo({
2768
2782
  password: c.password,
2769
2783
  confirmPassword: c.confirmPassword,
2770
2784
  currentPassword: c.currentPassword
2771
2785
  });
2772
- c.errors = [...v, ...O], c.isValid = c.errors.length == 0;
2786
+ c.errors = [...v, ...L], c.isValid = c.errors.length == 0;
2773
2787
  }
2774
2788
  });
2775
2789
  }
2776
- return (v, O) => (C(), D(r(_e), {
2790
+ return (v, L) => (C(), D(r(_e), {
2777
2791
  logo: u.value.logo,
2778
2792
  background: e.background,
2779
2793
  title: e.forced ? r(a)("COMPONENTS.CHANGE_PASSWORD.TITLE_FORCED") : r(a)("COMPONENTS.CHANGE_PASSWORD.TITLE"),
2780
2794
  subtitle: e.forced ? r(a)("COMPONENTS.CHANGE_PASSWORD.SUBTITLE_FORCED") : void 0
2781
2795
  }, {
2782
2796
  default: p(() => [
2783
- e.forced ? (C(), G("div", rr, [
2797
+ e.forced ? (C(), H("div", lr, [
2784
2798
  _(r(Sn), {
2785
2799
  variant: "info",
2786
2800
  icon: "lucide-lightbulb",
@@ -2800,12 +2814,12 @@ const Xo = {
2800
2814
  rules: "required|min:6",
2801
2815
  "model-value": c.currentPassword
2802
2816
  }, {
2803
- default: p(({ field: h, errorMessage: N, errors: B }) => [
2804
- _(r(K), ie(h, {
2817
+ default: p(({ field: O, errorMessage: P, errors: B }) => [
2818
+ _(r(K), ie(O, {
2805
2819
  ref: "passwordField",
2806
2820
  modelValue: c.currentPassword,
2807
2821
  "onUpdate:modelValue": [
2808
- O[0] || (O[0] = (m) => c.currentPassword = m),
2822
+ L[0] || (L[0] = (m) => c.currentPassword = m),
2809
2823
  I
2810
2824
  ],
2811
2825
  class: "tw-mb-4",
@@ -2814,7 +2828,7 @@ const Xo = {
2814
2828
  type: "password",
2815
2829
  required: "",
2816
2830
  error: !!B.length,
2817
- "error-message": N
2831
+ "error-message": P
2818
2832
  }), null, 16, ["modelValue", "label", "placeholder", "error", "error-message"])
2819
2833
  ]),
2820
2834
  _: 1
@@ -2825,12 +2839,12 @@ const Xo = {
2825
2839
  rules: "required|min:6",
2826
2840
  "model-value": c.password
2827
2841
  }, {
2828
- default: p(({ field: h, errorMessage: N, errors: B }) => [
2829
- _(r(K), ie(h, {
2842
+ default: p(({ field: O, errorMessage: P, errors: B }) => [
2843
+ _(r(K), ie(O, {
2830
2844
  ref: "newPasswordField",
2831
2845
  modelValue: c.password,
2832
2846
  "onUpdate:modelValue": [
2833
- O[1] || (O[1] = (m) => c.password = m),
2847
+ L[1] || (L[1] = (m) => c.password = m),
2834
2848
  I
2835
2849
  ],
2836
2850
  class: "tw-mb-4",
@@ -2839,7 +2853,7 @@ const Xo = {
2839
2853
  type: "password",
2840
2854
  required: "",
2841
2855
  error: !!B.length,
2842
- "error-message": N
2856
+ "error-message": P
2843
2857
  }), null, 16, ["modelValue", "label", "placeholder", "error", "error-message"])
2844
2858
  ]),
2845
2859
  _: 1
@@ -2850,12 +2864,12 @@ const Xo = {
2850
2864
  rules: "required|min:6",
2851
2865
  "model-value": c.confirmPassword
2852
2866
  }, {
2853
- default: p(({ field: h, errorMessage: N, errors: B }) => [
2854
- _(r(K), ie(h, {
2867
+ default: p(({ field: O, errorMessage: P, errors: B }) => [
2868
+ _(r(K), ie(O, {
2855
2869
  ref: "confirmPasswordField",
2856
2870
  modelValue: c.confirmPassword,
2857
2871
  "onUpdate:modelValue": [
2858
- O[2] || (O[2] = (m) => c.confirmPassword = m),
2872
+ L[2] || (L[2] = (m) => c.confirmPassword = m),
2859
2873
  I
2860
2874
  ],
2861
2875
  class: "tw-mb-6",
@@ -2864,16 +2878,16 @@ const Xo = {
2864
2878
  type: "password",
2865
2879
  required: "",
2866
2880
  error: !!B.length,
2867
- "error-message": N
2881
+ "error-message": P
2868
2882
  }), null, 16, ["modelValue", "label", "placeholder", "error", "error-message"])
2869
2883
  ]),
2870
2884
  _: 1
2871
2885
  }, 8, ["label", "model-value"]),
2872
- V("div", ir, [
2886
+ V("div", ur, [
2873
2887
  _(r($), {
2874
2888
  variant: "secondary",
2875
2889
  class: "tw-flex-1",
2876
- onClick: L
2890
+ onClick: h
2877
2891
  }, {
2878
2892
  default: p(() => [
2879
2893
  k(y(r(a)("COMPONENTS.CHANGE_PASSWORD.CANCEL")), 1)
@@ -2893,12 +2907,12 @@ const Xo = {
2893
2907
  _: 1
2894
2908
  }, 8, ["disabled", "loading"])
2895
2909
  ]),
2896
- (C(!0), G(se, null, Ue(c.errors, (h, N) => (C(), D(r(Ee), {
2897
- key: N,
2910
+ (C(!0), H(se, null, Ue(c.errors, (O, P) => (C(), D(r(Ee), {
2911
+ key: P,
2898
2912
  class: "tw-mt-3 tw-text-danger-500"
2899
2913
  }, {
2900
2914
  default: p(() => [
2901
- k(y(h.code ? r(a)(`COMPONENTS.CHANGE_PASSWORD.ERRORS.${h.code}`) : h), 1)
2915
+ k(y(O.code ? r(a)(`COMPONENTS.CHANGE_PASSWORD.ERRORS.${O.code}`) : O), 1)
2902
2916
  ]),
2903
2917
  _: 2
2904
2918
  }, 1024))), 128))
@@ -2909,7 +2923,7 @@ const Xo = {
2909
2923
  _: 1
2910
2924
  }, 8, ["logo", "background", "title", "subtitle"]));
2911
2925
  }
2912
- }), Bl = lr, Xe = U("use-blade-navigation-adapter"), tt = /* @__PURE__ */ new Set();
2926
+ }), kl = dr, Xe = U("use-blade-navigation-adapter"), tt = /* @__PURE__ */ new Set();
2913
2927
  function re(e, t) {
2914
2928
  if (tt.has(e)) return;
2915
2929
  tt.add(e);
@@ -2934,10 +2948,10 @@ function Ct(e, t, a) {
2934
2948
  };
2935
2949
  }
2936
2950
  let De, ye;
2937
- function Ml() {
2951
+ function Vl() {
2938
2952
  De = void 0, ye = void 0, tt.clear();
2939
2953
  }
2940
- function ur() {
2954
+ function cr() {
2941
2955
  const e = Xn, t = Qn, a = Jn;
2942
2956
  if (!e || !t)
2943
2957
  throw new Error(
@@ -2962,7 +2976,7 @@ function ur() {
2962
2976
  activeWorkspace: ye
2963
2977
  };
2964
2978
  }
2965
- function dr(e) {
2979
+ function Er(e) {
2966
2980
  if (!e)
2967
2981
  throw new Error("Blade cannot be null or undefined.");
2968
2982
  if (typeof e == "object" && "name" in e && typeof e.name == "string")
@@ -2970,8 +2984,8 @@ function dr(e) {
2970
2984
  const t = e;
2971
2985
  return t.name || t.__name || "UnknownBlade";
2972
2986
  }
2973
- function kl() {
2974
- const { bladeStack: e, messaging: t, bladeRegistry: a, router: n, blades: s, activeWorkspace: o } = ur(), i = tn() ? Q(Ht, void 0) : void 0, { syncUrlPush: l, syncUrlReplace: d } = ts(n, e);
2987
+ function Ul() {
2988
+ const { bladeStack: e, messaging: t, bladeRegistry: a, router: n, blades: s, activeWorkspace: o } = cr(), i = tn() ? Q(Gt, void 0) : void 0, { syncUrlPush: l, syncUrlReplace: d } = ts(n, e);
2975
2989
  function u() {
2976
2990
  return i ? i.value.id : e.activeBlade.value?.id;
2977
2991
  }
@@ -2981,8 +2995,8 @@ function kl() {
2981
2995
  return A[m].id;
2982
2996
  }
2983
2997
  async function g(m, A) {
2984
- const P = {
2985
- name: dr(m.blade),
2998
+ const N = {
2999
+ name: Er(m.blade),
2986
3000
  param: m.param,
2987
3001
  options: m.options,
2988
3002
  onOpen: m.onOpen,
@@ -2990,12 +3004,12 @@ function kl() {
2990
3004
  replaceCurrentBlade: m.replaceCurrentBlade
2991
3005
  };
2992
3006
  if (A)
2993
- await e.openWorkspace(P);
3007
+ await e.openWorkspace(N);
2994
3008
  else if (m.replaceCurrentBlade)
2995
- await e.coverCurrentBlade(P);
3009
+ await e.coverCurrentBlade(N);
2996
3010
  else {
2997
3011
  const F = u();
2998
- await e.openBlade({ ...P, parentId: F });
3012
+ await e.openBlade({ ...N, parentId: F });
2999
3013
  }
3000
3014
  e.activeBlade.value?.url && l();
3001
3015
  }
@@ -3015,8 +3029,8 @@ function kl() {
3015
3029
  name: R.name,
3016
3030
  params: n.currentRoute.value.params
3017
3031
  };
3018
- const P = es(n);
3019
- return { path: P ? `/${P}` : "/" };
3032
+ const N = es(n);
3033
+ return { path: N ? `/${N}` : "/" };
3020
3034
  }
3021
3035
  async function S(m, A) {
3022
3036
  re("onParentCall(args, index)", "useBlade().callParent(method, args)");
@@ -3026,13 +3040,13 @@ function kl() {
3026
3040
  return;
3027
3041
  }
3028
3042
  try {
3029
- const P = await t.callParent(R, m.method, m.args);
3030
- typeof m.callback == "function" && m.callback(P);
3031
- } catch (P) {
3032
- Xe.error(`onParentCall: Failed to call parent method "${m.method}":`, P);
3043
+ const N = await t.callParent(R, m.method, m.args);
3044
+ typeof m.callback == "function" && m.callback(N);
3045
+ } catch (N) {
3046
+ Xe.error(`onParentCall: Failed to call parent method "${m.method}":`, N);
3033
3047
  }
3034
3048
  }
3035
- function L(m) {
3049
+ function h(m) {
3036
3050
  re("onBeforeClose(cb)", "useBlade().onBeforeClose(guard)");
3037
3051
  const A = u();
3038
3052
  if (!A) {
@@ -3051,32 +3065,32 @@ function kl() {
3051
3065
  re("setNavigationQuery");
3052
3066
  const A = e.workspace.value;
3053
3067
  if (!A) return;
3054
- const R = A.name.toLowerCase(), P = {};
3068
+ const R = A.name.toLowerCase(), N = {};
3055
3069
  for (const [M, F] of Object.entries(m))
3056
- F != null && (P[`${R}_${M}`] = String(F));
3070
+ F != null && (N[`${R}_${M}`] = String(F));
3057
3071
  n.options.history.replace(
3058
3072
  decodeURIComponent(
3059
- `${window.location.hash.substring(1).split("?")[0]}?${new URLSearchParams(P).toString()}`
3073
+ `${window.location.hash.substring(1).split("?")[0]}?${new URLSearchParams(N).toString()}`
3060
3074
  )
3061
3075
  );
3062
3076
  }
3063
- function O() {
3077
+ function L() {
3064
3078
  re("getNavigationQuery");
3065
3079
  const m = e.workspace.value;
3066
3080
  if (!m) return;
3067
- const A = m.name.toLowerCase(), R = new URLSearchParams(window.location.hash.split("?")[1] || ""), P = {};
3081
+ const A = m.name.toLowerCase(), R = new URLSearchParams(window.location.hash.split("?")[1] || ""), N = {};
3068
3082
  for (const [M, F] of R.entries())
3069
3083
  if (M.startsWith(`${A}_`)) {
3070
3084
  const Ae = M.replace(`${A}_`, ""), ee = Number(F);
3071
- P[Ae] = isNaN(ee) ? F : ee;
3085
+ N[Ae] = isNaN(ee) ? F : ee;
3072
3086
  }
3073
- return Object.keys(P).length > 0 ? P : void 0;
3087
+ return Object.keys(N).length > 0 ? N : void 0;
3074
3088
  }
3075
- function h(m, A) {
3089
+ function O(m, A) {
3076
3090
  const R = E(m);
3077
3091
  R && e.setBladeError(R, A);
3078
3092
  }
3079
- function N(m) {
3093
+ function P(m) {
3080
3094
  const A = E(m);
3081
3095
  A && e.clearBladeError(A);
3082
3096
  }
@@ -3084,7 +3098,7 @@ function kl() {
3084
3098
  if (!i) return;
3085
3099
  const m = i.value;
3086
3100
  return {
3087
- idx: e.blades.value.findIndex((P) => P.id === m.id),
3101
+ idx: e.blades.value.findIndex((N) => N.id === m.id),
3088
3102
  instance: m.title != null ? { title: m.title } : void 0,
3089
3103
  isVisible: m.visible,
3090
3104
  error: b(m.error ? new Error(String(m.error)) : null)
@@ -3097,13 +3111,13 @@ function kl() {
3097
3111
  closeBlade: f,
3098
3112
  goToRoot: c,
3099
3113
  onParentCall: S,
3100
- onBeforeClose: L,
3114
+ onBeforeClose: h,
3101
3115
  resolveBladeByName: T,
3102
3116
  routeResolver: I,
3103
3117
  setNavigationQuery: v,
3104
- getNavigationQuery: O,
3105
- setBladeError: h,
3106
- clearBladeError: N,
3118
+ getNavigationQuery: L,
3119
+ setBladeError: O,
3120
+ clearBladeError: P,
3107
3121
  currentBladeNavigationData: B
3108
3122
  };
3109
3123
  }
@@ -3120,7 +3134,7 @@ function Ve(e, t) {
3120
3134
  if (!Ve(a[o], n[o])) return !1;
3121
3135
  return !0;
3122
3136
  }
3123
- function Vl(e) {
3137
+ function Fl(e) {
3124
3138
  const {
3125
3139
  data: t,
3126
3140
  canSaveOverride: a,
@@ -3137,7 +3151,7 @@ function Vl(e) {
3137
3151
  { deep: !0 }
3138
3152
  );
3139
3153
  const f = b(!1), c = w(() => f.value && g.value), S = w(() => !(!f.value || !l.value.valid || !g.value || a && !a.value));
3140
- function L() {
3154
+ function h() {
3141
3155
  E.value = J(t.value), g.value = !1, f.value = !0;
3142
3156
  }
3143
3157
  function T() {
@@ -3149,18 +3163,18 @@ function Vl(e) {
3149
3163
  t.value = J(E.value);
3150
3164
  }
3151
3165
  if (s && xs(c), n !== !1) {
3152
- const { onBeforeClose: v } = ot(), { showConfirmation: O } = An();
3166
+ const { onBeforeClose: v } = ot(), { showConfirmation: L } = An();
3153
3167
  v(async () => {
3154
- let h;
3155
- if (typeof n == "object" ? h = n.value && c.value : h = c.value, h) {
3156
- const N = o ? yt(o) : "You have unsaved changes. Are you sure you want to leave?";
3157
- return !await O(N);
3168
+ let O;
3169
+ if (typeof n == "object" ? O = n.value && c.value : O = c.value, O) {
3170
+ const P = o ? yt(o) : "You have unsaved changes. Are you sure you want to leave?";
3171
+ return !await L(P);
3158
3172
  }
3159
3173
  return !1;
3160
3174
  });
3161
3175
  }
3162
3176
  return Dt(vn, { isModified: c, canSave: S }), {
3163
- setBaseline: L,
3177
+ setBaseline: h,
3164
3178
  markReady: T,
3165
3179
  revert: I,
3166
3180
  canSave: S,
@@ -3172,7 +3186,7 @@ function Vl(e) {
3172
3186
  };
3173
3187
  }
3174
3188
  const Be = 14, Pa = 3;
3175
- function cr(e, t, a) {
3189
+ function fr(e, t, a) {
3176
3190
  const n = e.length, s = (u) => u !== void 0 && t.get(u) || 0, o = n > 0 ? e[n - 1] : void 0, i = s(o), l = e.map((u, E) => {
3177
3191
  const g = n - 1 - E;
3178
3192
  let f = 0;
@@ -3198,7 +3212,7 @@ function cr(e, t, a) {
3198
3212
  d = i + Math.min(n - 1, Pa - 1) * Be;
3199
3213
  return { toasts: l, frontHeight: i, groupHeight: d };
3200
3214
  }
3201
- function Er() {
3215
+ function mr() {
3202
3216
  const e = b(!1), t = b(!1);
3203
3217
  let a = null;
3204
3218
  function n() {
@@ -3235,7 +3249,7 @@ function Er() {
3235
3249
  setInteracting: u
3236
3250
  };
3237
3251
  }
3238
- const fr = H({
3252
+ const gr = G({
3239
3253
  name: "NotificationContainer",
3240
3254
  inheritAttrs: !1,
3241
3255
  props: {
@@ -3300,7 +3314,7 @@ const fr = H({
3300
3314
  forgetHeight: u,
3301
3315
  clearHeights: E,
3302
3316
  setInteracting: g
3303
- } = Er();
3317
+ } = mr();
3304
3318
  function f(T) {
3305
3319
  return typeof T == "object" && (!!T?.render || !!T?.setup);
3306
3320
  }
@@ -3310,16 +3324,16 @@ const fr = H({
3310
3324
  function S() {
3311
3325
  a.clear(), E();
3312
3326
  }
3313
- const L = w(() => (e.position || "top-center").startsWith("top"));
3327
+ const h = w(() => (e.position || "top-center").startsWith("top"));
3314
3328
  return () => {
3315
- const T = n.value, I = T.length, v = s.value || I <= 1, O = I > 1, h = cr(
3329
+ const T = n.value, I = T.length, v = s.value || I <= 1, L = I > 1, O = fr(
3316
3330
  T.map((m) => m.notificationId),
3317
3331
  o,
3318
3332
  v
3319
- ), N = T.map((m, A) => {
3320
- const { sonnerIndex: R, zIndex: P, offset: M, initialHeight: F } = h.toasts[A], Ae = {
3333
+ ), P = T.map((m, A) => {
3334
+ const { sonnerIndex: R, zIndex: N, offset: M, initialHeight: F } = O.toasts[A], Ae = {
3321
3335
  "--toasts-before": R,
3322
- "--z-index": P,
3336
+ "--z-index": N,
3323
3337
  "--offset": `${M}px`,
3324
3338
  "--initial-height": F ? `${F}px` : "auto"
3325
3339
  }, ee = {
@@ -3335,13 +3349,13 @@ const fr = H({
3335
3349
  return te("li", { key: m.notificationId, style: { display: "contents" } }, [Na]);
3336
3350
  });
3337
3351
  let B = null;
3338
- return O && (B = te(
3352
+ return L && (B = te(
3339
3353
  "li",
3340
3354
  {
3341
3355
  class: "notification__clear-all",
3342
3356
  style: {
3343
3357
  position: "absolute",
3344
- [L.value ? "top" : "bottom"]: "0",
3358
+ [h.value ? "top" : "bottom"]: "0",
3345
3359
  left: "var(--width, 356px)",
3346
3360
  "margin-left": "8px",
3347
3361
  "list-style": "none",
@@ -3369,12 +3383,12 @@ const fr = H({
3369
3383
  class: "notification__toast-group",
3370
3384
  "data-expanded": String(v),
3371
3385
  "data-position": e.position || "top-center",
3372
- "data-y-position": L.value ? "top" : "bottom",
3386
+ "data-y-position": h.value ? "top" : "bottom",
3373
3387
  style: {
3374
- "--front-toast-height": `${h.frontHeight}px`,
3388
+ "--front-toast-height": `${O.frontHeight}px`,
3375
3389
  "--gap": `${Be}px`,
3376
3390
  width: "var(--width, 356px)",
3377
- height: `${h.groupHeight}px`
3391
+ height: `${O.groupHeight}px`
3378
3392
  },
3379
3393
  onMouseenter: i,
3380
3394
  onMouseleave: l,
@@ -3385,44 +3399,44 @@ const fr = H({
3385
3399
  g(!1);
3386
3400
  }
3387
3401
  },
3388
- [...N, B]
3402
+ [...P, B]
3389
3403
  );
3390
3404
  };
3391
3405
  }
3392
- }), mr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3406
+ }), Sr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3393
3407
  __proto__: null,
3394
- default: fr
3408
+ default: gr
3395
3409
  }, Symbol.toStringTag, { value: "Module" }));
3396
- function gr(e, t) {
3410
+ function Ar(e, t) {
3397
3411
  t.i18n?.locale && (X.global.locale.value = t.i18n.locale), t.i18n?.fallbackLocale && (X.global.fallbackLocale.value = t.i18n.fallbackLocale), e.use(X);
3398
3412
  const a = pn();
3399
3413
  e.provide(Cn, a);
3400
3414
  const { resolveCamelCaseLocale: n } = a;
3401
3415
  e.config.globalProperties.$mergeLocaleMessage = (s, o) => {
3402
3416
  X.global.mergeLocaleMessage(n(s), o);
3403
- }, Object.entries(No).forEach(([s, o]) => {
3417
+ }, Object.entries(yo).forEach(([s, o]) => {
3404
3418
  X.global.mergeLocaleMessage(n(s), o);
3405
3419
  });
3406
3420
  }
3407
- function Sr(e) {
3421
+ function pr(e) {
3408
3422
  const t = ya({
3409
3423
  phone: 480,
3410
3424
  desktop: 1024
3411
3425
  });
3412
3426
  e.config.globalProperties.$isPhone = t.smaller("phone"), e.config.globalProperties.$isTablet = t.between("phone", "desktop"), e.config.globalProperties.$isMobile = t.smaller("desktop"), e.config.globalProperties.$isDesktop = t.greater("desktop"), e.config.globalProperties.$isTouch = "ontouchstart" in window || navigator.maxTouchPoints > 0, e.provide(bn, e.config.globalProperties.$isPhone), e.provide(Pn, e.config.globalProperties.$isTablet), e.provide(Nn, e.config.globalProperties.$isMobile), e.provide(Dn, e.config.globalProperties.$isDesktop), e.provide(yn, e.config.globalProperties.$isTouch);
3413
3427
  }
3414
- function Ar(e) {
3428
+ function Tr(e) {
3415
3429
  e.config.globalProperties.pages = [], e.config.globalProperties.bladeRoutes = [], e.provide(Bn, e.config.globalProperties.bladeRoutes);
3416
3430
  }
3417
- function pr(e) {
3418
- e.provide(Gt, Wa()), e.provide(Mn, Ga()), e.provide(kn, Ha()), e.provide(Vn, xa()), e.provide(Un, $a()), e.provide(Fn, me());
3431
+ function hr(e) {
3432
+ e.provide(Ht, Wa()), e.provide(Mn, Ha()), e.provide(kn, Ga()), e.provide(Vn, xa()), e.provide(Un, $a()), e.provide(Fn, me());
3419
3433
  const t = Tn(e);
3420
3434
  e.provide(kt, t);
3421
3435
  }
3422
- function Tr(e, t) {
3423
- Fo(), e.use(Os, { router: t.router }), e.use(Cs), e.use(fo), e.use(po), e.use(ps), e.use(As), e.use(as), e.use(Hn, t.aiAgent);
3436
+ function Lr(e, t) {
3437
+ Ho(), e.use(Os, { router: t.router }), e.use(Cs), e.use(fo), e.use(po), e.use(ps), e.use(As), e.use(as), e.use(Gn, t.aiAgent);
3424
3438
  }
3425
- function hr(e, t) {
3439
+ function Or(e, t) {
3426
3440
  if (!t.applicationInsights?.instrumentationKey) return;
3427
3441
  const a = {
3428
3442
  appInsightsConfig: {
@@ -3437,7 +3451,7 @@ function hr(e, t) {
3437
3451
  };
3438
3452
  e.provide(Ka, a);
3439
3453
  }
3440
- function Lr(e, t) {
3454
+ function Rr(e, t) {
3441
3455
  if (!t.applicationInsights?.instrumentationKey) return;
3442
3456
  const a = {
3443
3457
  appInsightsConfig: {
@@ -3461,7 +3475,7 @@ function Lr(e, t) {
3461
3475
  });
3462
3476
  });
3463
3477
  }
3464
- function Or(e) {
3478
+ function _r(e) {
3465
3479
  const t = (a) => {
3466
3480
  let n = {};
3467
3481
  return Object.keys(a.params).length > 0 && (n = Object.fromEntries(Object.entries(a.params).filter(([s]) => s !== "pathMatch"))), n;
@@ -3489,415 +3503,415 @@ function Or(e) {
3489
3503
  } else return !0;
3490
3504
  });
3491
3505
  }
3492
- const Ul = {
3506
+ const Wl = {
3493
3507
  install(e, t) {
3494
- Ho(), Fa().register([{ key: "light", localizationKey: "core.themes.light" }]), window.fetch = Io(t.router), gr(e, t), Sr(e), Ar(e), pr(e), Tr(e, t), hr(e, t), Do(e), typeof window < "u" && (e.runWithContext(() => Qt()), e.runWithContext(() => ta())), Or(t.router), setTimeout(() => {
3495
- performance.mark("vc:deferred-plugins-start"), Lr(e, t), performance.mark("vc:deferred-plugins-done");
3508
+ $o(), Fa().register([{ key: "light", localizationKey: "core.themes.light" }]), window.fetch = wo(t.router), Ar(e, t), pr(e), Tr(e), hr(e), Lr(e, t), Or(e, t), Bo(e), typeof window < "u" && (e.runWithContext(() => Qt()), e.runWithContext(() => ta())), _r(t.router), setTimeout(() => {
3509
+ performance.mark("vc:deferred-plugins-start"), Rr(e, t), performance.mark("vc:deferred-plugins-done");
3496
3510
  }, 0);
3497
3511
  }
3498
3512
  };
3499
3513
  export {
3500
- Pf as AI_AGENT_URL_ENV_KEY,
3501
- DE as AiAgentServiceKey,
3502
- yE as ApiException,
3503
- BE as AppBarMobileButtonsServiceKey,
3514
+ Df as AI_AGENT_URL_ENV_KEY,
3515
+ BE as AiAgentServiceKey,
3516
+ ME as ApiException,
3517
+ kE as AppBarMobileButtonsServiceKey,
3504
3518
  kn as AppBarWidgetServiceKey,
3505
3519
  za as AppInsightsInstanceKey,
3506
3520
  Ka as AppInsightsOptionsKey,
3507
- ME as AppManifestClient,
3508
- kE as AppPlacement,
3509
- VE as AppRootElementKey,
3510
- UE as AppsClient,
3521
+ VE as AppManifestClient,
3522
+ UE as AppPlacement,
3523
+ FE as AppRootElementKey,
3524
+ WE as AppsClient,
3511
3525
  fo as AssetsDetailsModule,
3512
3526
  So as AssetsManager,
3513
3527
  po as AssetsManagerModule,
3514
- FE as AuthApiBase,
3515
- WE as AuthorizationClient,
3516
- GE as BladeBackButtonKey,
3517
- HE as BladeBannersKey,
3528
+ HE as AuthApiBase,
3529
+ GE as AuthorizationClient,
3530
+ xE as BladeBackButtonKey,
3531
+ $E as BladeBannersKey,
3518
3532
  xt as BladeContextKey,
3519
- xE as BladeDataKey,
3520
- Ht as BladeDescriptorKey,
3521
- Gl as BladeError,
3533
+ KE as BladeDataKey,
3534
+ Gt as BladeDescriptorKey,
3535
+ xl as BladeError,
3522
3536
  vn as BladeFormKey,
3523
- $E as BladeLoadingKey,
3524
- KE as BladeMaximizedKey,
3537
+ zE as BladeLoadingKey,
3538
+ qE as BladeMaximizedKey,
3525
3539
  On as BladeMessagingKey,
3526
- zE as BladeRenderingStateKey,
3540
+ YE as BladeRenderingStateKey,
3527
3541
  Bn as BladeRoutesKey,
3528
3542
  Ln as BladeStackKey,
3529
- Hl as ButtonGroupKey,
3543
+ $l as ButtonGroupKey,
3530
3544
  Rs as COMPONENT_DEFAULTS,
3531
- $u as CellDate,
3532
- Ku as CellDateAgo,
3533
- zu as CellDefault,
3534
- qu as CellEditableWrapper,
3535
- Yu as CellHtml,
3536
- ju as CellImage,
3537
- Zu as CellLink,
3538
- Xu as CellMoney,
3539
- Ju as CellNumber,
3540
- Qu as CellStatus,
3541
- ed as CellStatusIcon,
3542
- qE as ChangeLogClient,
3543
- td as ChangePassword,
3544
- ad as ChangePasswordButton,
3545
- Bl as ChangePasswordPage,
3546
- im as ChartContainer,
3547
- lm as ChartLegend,
3548
- um as ChartTooltip,
3549
- YE as CloseSettingsMenuKey,
3550
- nd as ColumnCollector,
3551
- Nf as DEFAULT_AI_AGENT_CONFIG,
3552
- dm as DashboardBarChart,
3553
- cm as DashboardDonutChart,
3554
- qf as DashboardFeedList,
3555
- Yf as DashboardFeedRow,
3556
- Em as DashboardLineChart,
3557
- jE as DashboardServiceKey,
3558
- jf as DashboardStatItem,
3559
- Zf as DashboardWidgetCard,
3560
- ZE as DeveloperToolsClient,
3561
- XE as DiagnosticsClient,
3562
- xl as DisplayableError,
3563
- Xf as DraggableDashboard,
3564
- JE as DynamicModulesKey,
3565
- QE as DynamicPropertiesClient,
3566
- ef as DynamicPropertyValueType,
3567
- Df as EMBEDDED_TO_HOST_MESSAGE_TYPES,
3568
- tf as EmbeddedModeKey,
3569
- af as EntryState,
3570
- sd as ErrorInterceptor,
3545
+ zu as CellDate,
3546
+ qu as CellDateAgo,
3547
+ Yu as CellDefault,
3548
+ ju as CellEditableWrapper,
3549
+ Zu as CellHtml,
3550
+ Xu as CellImage,
3551
+ Ju as CellLink,
3552
+ Qu as CellMoney,
3553
+ ed as CellNumber,
3554
+ td as CellStatus,
3555
+ ad as CellStatusIcon,
3556
+ jE as ChangeLogClient,
3557
+ nd as ChangePassword,
3558
+ sd as ChangePasswordButton,
3559
+ kl as ChangePasswordPage,
3560
+ um as ChartContainer,
3561
+ dm as ChartLegend,
3562
+ cm as ChartTooltip,
3563
+ ZE as CloseSettingsMenuKey,
3564
+ od as ColumnCollector,
3565
+ yf as DEFAULT_AI_AGENT_CONFIG,
3566
+ Em as DashboardBarChart,
3567
+ fm as DashboardDonutChart,
3568
+ jf as DashboardFeedList,
3569
+ Zf as DashboardFeedRow,
3570
+ mm as DashboardLineChart,
3571
+ XE as DashboardServiceKey,
3572
+ Xf as DashboardStatItem,
3573
+ Jf as DashboardWidgetCard,
3574
+ JE as DeveloperToolsClient,
3575
+ QE as DiagnosticsClient,
3576
+ Kl as DisplayableError,
3577
+ Qf as DraggableDashboard,
3578
+ ef as DynamicModulesKey,
3579
+ tf as DynamicPropertiesClient,
3580
+ af as DynamicPropertyValueType,
3581
+ Bf as EMBEDDED_TO_HOST_MESSAGE_TYPES,
3582
+ nf as EmbeddedModeKey,
3583
+ sf as EntryState,
3584
+ rd as ErrorInterceptor,
3571
3585
  fs as ExtensionPoint,
3572
- mm as ExtensionPoints,
3573
- qo as ExternalProviders,
3574
- nf as ExternalSignInClient,
3575
- $l as FALLBACK_BLADE_ID,
3576
- Nl as ForgotPassword,
3577
- Kl as FrameworkError,
3578
- yf as HOST_TO_EMBEDDED_MESSAGE_TYPES,
3586
+ Sm as ExtensionPoints,
3587
+ jo as ExternalProviders,
3588
+ of as ExternalSignInClient,
3589
+ zl as FALLBACK_BLADE_ID,
3590
+ yl as ForgotPassword,
3591
+ ql as FrameworkError,
3592
+ Mf as HOST_TO_EMBEDDED_MESSAGE_TYPES,
3579
3593
  bt as InjectionError,
3580
- sf as InternalRoutesKey,
3581
- yl as Invite,
3594
+ rf as InternalRoutesKey,
3595
+ Ml as Invite,
3582
3596
  Dn as IsDesktopKey,
3583
3597
  Nn as IsMobileKey,
3584
3598
  bn as IsPhoneKey,
3585
3599
  Pn as IsTabletKey,
3586
3600
  yn as IsTouchKey,
3587
- of as JobsClient,
3588
- rf as JsonValueKind,
3589
- Jf as LAYOUT_STORAGE_KEY,
3590
- od as LanguageSelector,
3601
+ lf as JobsClient,
3602
+ uf as JsonValueKind,
3603
+ em as LAYOUT_STORAGE_KEY,
3604
+ id as LanguageSelector,
3591
3605
  Cn as LanguageServiceKey,
3592
- lf as LocalizableSettingsClient,
3593
- Pl as Login,
3594
- rd as LogoutButton,
3595
- id as MenuBurgerIcon,
3606
+ df as LocalizableSettingsClient,
3607
+ Dl as Login,
3608
+ ld as LogoutButton,
3609
+ ud as MenuBurgerIcon,
3596
3610
  Vn as MenuServiceKey,
3597
- zl as ModuleLoadError,
3598
- uf as ModulesClient,
3599
- df as ModulesLoadErrorKey,
3600
- cf as ModulesReadyKey,
3601
- fr as NotificationContainer,
3611
+ Yl as ModuleLoadError,
3612
+ cf as ModulesClient,
3613
+ Ef as ModulesLoadErrorKey,
3614
+ ff as ModulesReadyKey,
3615
+ gr as NotificationContainer,
3602
3616
  sn as NotificationContextKey,
3603
- ld as NotificationDropdown,
3617
+ dd as NotificationDropdown,
3604
3618
  Fn as NotificationStoreKey,
3605
- ud as NotificationTemplate,
3606
- Ef as OAuthAppsClient,
3607
- ff as ProgressMessageLevel,
3608
- mf as PushNotificationClient,
3609
- ql as RegistrationError,
3610
- Dl as ResetPassword,
3611
- dd as SCHEDULER_ZOOM_LEVELS,
3612
- gf as SecurityClient,
3613
- Yl as ServiceError,
3619
+ cd as NotificationTemplate,
3620
+ mf as OAuthAppsClient,
3621
+ gf as ProgressMessageLevel,
3622
+ Sf as PushNotificationClient,
3623
+ jl as RegistrationError,
3624
+ Bl as ResetPassword,
3625
+ Ed as SCHEDULER_ZOOM_LEVELS,
3626
+ Af as SecurityClient,
3627
+ Zl as ServiceError,
3614
3628
  Rn as SettingClient,
3615
- Sf as SettingValueType,
3616
- cd as SettingsMenu,
3617
- Ed as SettingsMenuItem,
3629
+ pf as SettingValueType,
3630
+ fd as SettingsMenu,
3631
+ md as SettingsMenuItem,
3618
3632
  Un as SettingsMenuServiceKey,
3619
- Af as SettingsV2Client,
3620
- pf as ShellIndicatorsKey,
3621
- bl as Sidebar,
3622
- Tf as SortDirection,
3623
- fd as Table,
3624
- md as TableBody,
3625
- gd as TableCell,
3626
- Sd as TableCheckbox,
3627
- Ad as TableColumnSwitcher,
3628
- pd as TableEmpty,
3629
- Td as TableFooter,
3630
- hd as TableGroupRow,
3631
- Ld as TableHead,
3632
- Od as TableHeader,
3633
- Rd as TableRow,
3634
- _d as TableRowActions,
3635
- Id as TableSearchHeader,
3636
- vd as TableSelectAllBar,
3637
- wd as ThemeSelector,
3633
+ Tf as SettingsV2Client,
3634
+ hf as ShellIndicatorsKey,
3635
+ Nl as Sidebar,
3636
+ Lf as SortDirection,
3637
+ gd as Table,
3638
+ Sd as TableBody,
3639
+ Ad as TableCell,
3640
+ pd as TableCheckbox,
3641
+ Td as TableColumnSwitcher,
3642
+ hd as TableEmpty,
3643
+ Ld as TableFooter,
3644
+ Od as TableGroupRow,
3645
+ Rd as TableHead,
3646
+ _d as TableHeader,
3647
+ Id as TableRow,
3648
+ vd as TableRowActions,
3649
+ wd as TableSearchHeader,
3650
+ Cd as TableSelectAllBar,
3651
+ bd as ThemeSelector,
3638
3652
  Mn as ToolbarServiceKey,
3639
- Cd as UserDropdownButton,
3640
- jl as ValidationError,
3641
- bd as VcAccordion,
3642
- Pd as VcAccordionItem,
3643
- Bf as VcAiAgentPanel,
3644
- Nd as VcApp,
3645
- Dd as VcAppBarMobileActions,
3646
- yd as VcAppBarOverlay,
3647
- Bd as VcAppBarWidgetContent,
3648
- Md as VcAppBarWidgetItem,
3649
- kd as VcAppBarWidgetsMenu,
3650
- Vd as VcAppDesktopLayout,
3651
- Ud as VcAppMenu,
3652
- Fd as VcAppMenuSidebar,
3653
- Wd as VcAppMobileLayout,
3654
- Gd as VcAppSidebarCollapseButton,
3655
- Hd as VcAppSidebarContent,
3656
- xd as VcAppSidebarHeader,
3653
+ Pd as UserDropdownButton,
3654
+ Xl as ValidationError,
3655
+ Nd as VcAccordion,
3656
+ Dd as VcAccordionItem,
3657
+ kf as VcAiAgentPanel,
3658
+ yd as VcApp,
3659
+ Bd as VcAppBarMobileActions,
3660
+ Md as VcAppBarOverlay,
3661
+ kd as VcAppBarWidgetContent,
3662
+ Vd as VcAppBarWidgetItem,
3663
+ Ud as VcAppBarWidgetsMenu,
3664
+ Fd as VcAppDesktopLayout,
3665
+ Wd as VcAppMenu,
3666
+ Hd as VcAppMenuSidebar,
3667
+ Gd as VcAppMobileLayout,
3668
+ xd as VcAppSidebarCollapseButton,
3669
+ $d as VcAppSidebarContent,
3670
+ Kd as VcAppSidebarHeader,
3657
3671
  _e as VcAuthLayout,
3658
- $d as VcBadge,
3672
+ zd as VcBadge,
3659
3673
  Sn as VcBanner,
3660
3674
  Ut as VcBlade,
3661
- Kd as VcBladeNavigation,
3675
+ qd as VcBladeNavigation,
3662
3676
  Os as VcBladeNavigationComponent,
3663
- zd as VcBladeNavigationV2,
3664
- qd as VcBladeSlot,
3665
- Yd as VcBreadcrumbs,
3677
+ Yd as VcBladeNavigationV2,
3678
+ jd as VcBladeSlot,
3679
+ Zd as VcBreadcrumbs,
3666
3680
  $ as VcButton,
3667
- jd as VcButtonGroup,
3668
- Zd as VcCard,
3669
- Xd as VcCheckbox,
3670
- Jd as VcCheckboxGroup,
3671
- Qd as VcCol,
3672
- Zl as VcColorInput,
3681
+ Xd as VcButtonGroup,
3682
+ Jd as VcCard,
3683
+ Qd as VcCheckbox,
3684
+ ec as VcCheckboxGroup,
3685
+ tc as VcCol,
3686
+ Jl as VcColorInput,
3673
3687
  pe as VcColumn,
3674
3688
  En as VcContainer,
3675
3689
  mn as VcDataTable,
3676
- Xl as VcDatePicker,
3677
- ec as VcDropdown,
3678
- tc as VcDropdownItem,
3679
- ac as VcDynamicProperty,
3680
- nc as VcEditor,
3681
- sc as VcEnvironmentBanner,
3690
+ Ql as VcDatePicker,
3691
+ ac as VcDropdown,
3692
+ nc as VcDropdownItem,
3693
+ sc as VcDynamicProperty,
3694
+ oc as VcEditor,
3695
+ rc as VcEnvironmentBanner,
3682
3696
  xe as VcField,
3683
- oc as VcFileUpload,
3697
+ ic as VcFileUpload,
3684
3698
  ge as VcForm,
3685
- rc as VcGallery,
3699
+ lc as VcGallery,
3686
3700
  Ee as VcHint,
3687
3701
  wn as VcIcon,
3688
3702
  st as VcImage,
3689
- ic as VcImageTile,
3690
- lc as VcImageUpload,
3703
+ uc as VcImageTile,
3704
+ dc as VcImageUpload,
3691
3705
  K as VcInput,
3692
- Jl as VcInputCurrency,
3693
- Ql as VcInputDropdown,
3694
- uc as VcInputGroup,
3695
- eu as VcLabel,
3696
- dc as VcLanguageSelector,
3697
- cc as VcLink,
3706
+ eu as VcInputCurrency,
3707
+ tu as VcInputDropdown,
3708
+ cc as VcInputGroup,
3709
+ au as VcLabel,
3710
+ Ec as VcLanguageSelector,
3711
+ fc as VcLink,
3698
3712
  Ft as VcLoading,
3699
- Ec as VcMenu,
3700
- fc as VcMenuExpandedKey,
3701
- mc as VcMenuGroup,
3702
- gc as VcMenuItem,
3703
- Sc as VcMultivalue,
3704
- Ac as VcPagination,
3705
- pc as VcPopover,
3713
+ mc as VcMenu,
3714
+ gc as VcMenuExpandedKey,
3715
+ Sc as VcMenuGroup,
3716
+ Ac as VcMenuItem,
3717
+ pc as VcMultivalue,
3718
+ Tc as VcPagination,
3719
+ hc as VcPopover,
3706
3720
  un as VcPopup,
3707
- Tc as VcProgress,
3708
- hc as VcRadioButton,
3709
- Lc as VcRadioGroup,
3710
- Oc as VcRating,
3711
- Rc as VcRow,
3712
- _c as VcScheduler,
3713
- tu as VcScrollableContainer,
3714
- au as VcSelect,
3721
+ Lc as VcProgress,
3722
+ Oc as VcRadioButton,
3723
+ Rc as VcRadioGroup,
3724
+ _c as VcRating,
3725
+ Ic as VcRow,
3726
+ vc as VcScheduler,
3727
+ nu as VcScrollableContainer,
3728
+ su as VcSelect,
3715
3729
  gn as VcSidebar,
3716
- nu as VcSkeleton,
3717
- Ic as VcSlider,
3718
- vc as VcStatus,
3719
- wc as VcStatusIcon,
3720
- Cc as VcSwitch,
3721
- bc as VcTable,
3730
+ ou as VcSkeleton,
3731
+ wc as VcSlider,
3732
+ Cc as VcStatus,
3733
+ bc as VcStatusIcon,
3734
+ Pc as VcSwitch,
3735
+ Nc as VcTable,
3722
3736
  fn as VcTextarea,
3723
3737
  dt as VcToast,
3724
- hf as VcTooltip,
3725
- Pc as VcVideo,
3726
- Nc as VcWidget,
3738
+ Of as VcTooltip,
3739
+ Dc as VcVideo,
3740
+ yc as VcWidget,
3727
3741
  _n as WidgetScopeKey,
3728
- Gt as WidgetServiceKey,
3742
+ Ht as WidgetServiceKey,
3729
3743
  Vt as __registerBladeConfig,
3730
- Dc as _createEnvironmentNameLogic,
3731
- Lf as _createInternalUserLogic,
3732
- Ml as _resetAdapterState,
3733
- Of as _sharedInternalUserLogic,
3734
- su as addAppBarWidget,
3735
- ou as addMenuItem,
3736
- ru as addSettingsMenuItem,
3737
- iu as after,
3738
- Hn as aiAgentPlugin,
3739
- yc as autofocus,
3740
- lu as before,
3741
- uu as bigInt,
3742
- ul as camelToSnake,
3743
- cl as camelize,
3744
- Qf as clearLayoutStorage,
3745
- du as convertColorNameToHex,
3746
- Bc as convertMomentFormat,
3747
- Mf as createAiAgentToolbarButton,
3748
- Sl as createAppModule,
3749
- cu as createBackendRegistry,
3750
- Eu as createKeyedBackendRegistry,
3744
+ Bc as _createEnvironmentNameLogic,
3745
+ Rf as _createInternalUserLogic,
3746
+ Vl as _resetAdapterState,
3747
+ _f as _sharedInternalUserLogic,
3748
+ ru as addAppBarWidget,
3749
+ iu as addMenuItem,
3750
+ lu as addSettingsMenuItem,
3751
+ uu as after,
3752
+ Gn as aiAgentPlugin,
3753
+ Mc as autofocus,
3754
+ du as before,
3755
+ cu as bigInt,
3756
+ cl as camelToSnake,
3757
+ fl as camelize,
3758
+ tm as clearLayoutStorage,
3759
+ Eu as convertColorNameToHex,
3760
+ kc as convertMomentFormat,
3761
+ Vf as createAiAgentToolbarButton,
3762
+ pl as createAppModule,
3763
+ fu as createBackendRegistry,
3764
+ mu as createKeyedBackendRegistry,
3751
3765
  U as createLogger,
3752
- Ul as default,
3766
+ Wl as default,
3753
3767
  lt as defineAppModule,
3754
- vl as defineBladeContext,
3755
- gm as defineExtensionPoint,
3756
- Mc as detectThemePreset,
3757
- kf as expectedCode,
3758
- Vf as expectedEventKey,
3759
- fu as fileWeight,
3760
- kc as formatBadgeCount,
3761
- Vc as formatDateRelative,
3762
- Uc as formatDateWithPattern,
3763
- Uf as formatShortcut,
3764
- em as fromGridstackNode,
3768
+ Cl as defineBladeContext,
3769
+ Am as defineExtensionPoint,
3770
+ Vc as detectThemePreset,
3771
+ Uf as expectedCode,
3772
+ Ff as expectedEventKey,
3773
+ gu as fileWeight,
3774
+ Uc as formatBadgeCount,
3775
+ Fc as formatDateRelative,
3776
+ Wc as formatDateWithPattern,
3777
+ Wf as formatShortcut,
3778
+ am as fromGridstackNode,
3765
3779
  ka as generateId,
3766
- Fc as getAllBladeConfigs,
3767
- Wc as getBestThumbnailSize,
3768
- Gc as getBladeConfig,
3769
- Al as getComponentDefaults,
3780
+ Hc as getAllBladeConfigs,
3781
+ Gc as getBestThumbnailSize,
3782
+ xc as getBladeConfig,
3783
+ Tl as getComponentDefaults,
3770
3784
  qt as getExtensionColor,
3771
3785
  Yt as getExtensionLabel,
3772
- mu as getMenuBadge,
3773
- gu as getMenuBadges,
3774
- Hc as getThumbnailUrl,
3775
- Ff as hotkey,
3786
+ Su as getMenuBadge,
3787
+ Au as getMenuBadges,
3788
+ $c as getThumbnailUrl,
3789
+ Hf as hotkey,
3776
3790
  X as i18n,
3777
- wl as injectBladeContext,
3778
- Su as isFrameworkError,
3791
+ bl as injectBladeContext,
3792
+ pu as isFrameworkError,
3779
3793
  Kt as isImage,
3780
- Wf as isTextInputFocused,
3781
- Au as isValidHexColor,
3794
+ Gf as isTextInputFocused,
3795
+ Tu as isValidHexColor,
3782
3796
  ms as kebabToCamel,
3783
- dl as kebabToPascal,
3784
- xc as languageToCountryMap,
3785
- tm as loadLayoutFromStorage,
3797
+ El as kebabToPascal,
3798
+ Kc as languageToCountryMap,
3799
+ nm as loadLayoutFromStorage,
3786
3800
  Ma as loading,
3787
- Rf as logger,
3788
- _f as loggers,
3789
- Gf as matchesEvent,
3790
- am as mergeLayoutWithWidgets,
3791
- pu as mindimensions,
3792
- Tu as normalizeHexColor,
3801
+ If as logger,
3802
+ vf as loggers,
3803
+ xf as matchesEvent,
3804
+ sm as mergeLayoutWithWidgets,
3805
+ hu as mindimensions,
3806
+ Lu as normalizeHexColor,
3793
3807
  q as notification,
3794
3808
  be as parseError,
3795
3809
  As as permissions,
3796
- hu as provideAppBarState,
3797
- $c as provideAppBarWidget,
3798
- Lu as provideDashboardService,
3799
- Kc as provideLanguages,
3800
- Ou as provideMenuService,
3801
- Ru as provideSettingsMenu,
3802
- zc as provideSidebarState,
3803
- _u as provideToolbarService,
3810
+ Ou as provideAppBarState,
3811
+ zc as provideAppBarWidget,
3812
+ Ru as provideDashboardService,
3813
+ qc as provideLanguages,
3814
+ _u as provideMenuService,
3815
+ Iu as provideSettingsMenu,
3816
+ Yc as provideSidebarState,
3817
+ vu as provideToolbarService,
3804
3818
  zt as readableSize,
3805
- Iu as registerDashboardWidget,
3806
- vu as registerExternalWidget,
3807
- wu as registerToolbarItem,
3808
- Cu as registerWidget,
3809
- bu as removeMenuBadge,
3810
- Pu as removeRegisteredMenuItem,
3811
- qc as resolveEnvironment,
3812
- Yc as resolveLocale,
3813
- jc as resolveLocaleSync,
3814
- nm as saveLayoutToStorage,
3815
- Nu as setMenuBadge,
3819
+ wu as registerDashboardWidget,
3820
+ Cu as registerExternalWidget,
3821
+ bu as registerToolbarItem,
3822
+ Pu as registerWidget,
3823
+ Nu as removeMenuBadge,
3824
+ Du as removeRegisteredMenuItem,
3825
+ jc as resolveEnvironment,
3826
+ Zc as resolveLocale,
3827
+ Xc as resolveLocaleSync,
3828
+ om as saveLayoutToStorage,
3829
+ yu as setMenuBadge,
3816
3830
  ps as signalR,
3817
- Zc as stripTenantPrefix,
3818
- sm as toGridstackWidget,
3819
- Xc as useAdaptiveItems,
3820
- Hf as useAiAgent,
3821
- Cf as useAiAgentContext,
3831
+ Jc as stripTenantPrefix,
3832
+ rm as toGridstackWidget,
3833
+ Qc as useAdaptiveItems,
3834
+ $f as useAiAgent,
3835
+ Pf as useAiAgentContext,
3822
3836
  Bs as useApiClient,
3823
- Jc as useAppBarMobileActions,
3824
- Du as useAppBarState,
3825
- Qc as useAppBarWidget,
3826
- eE as useAppBarWidgets,
3837
+ eE as useAppBarMobileActions,
3838
+ Bu as useAppBarState,
3839
+ tE as useAppBarWidget,
3840
+ aE as useAppBarWidgets,
3827
3841
  qa as useAppInsights,
3828
- hl as useAssets,
3829
- Ll as useAssetsManager,
3842
+ Ol as useAssets,
3843
+ Rl as useAssetsManager,
3830
3844
  Zt as useAsync,
3831
- tE as useBadge,
3845
+ nE as useBadge,
3832
3846
  xs as useBeforeUnload,
3833
3847
  ot as useBlade,
3834
- Vl as useBladeForm,
3835
- yu as useBladeLoading,
3836
- aE as useBladeMessaging,
3837
- kl as useBladeNavigation,
3838
- El as useBladeNotifications,
3839
- xf as useBladeStack,
3840
- _l as useBladeWidgets,
3841
- nE as useBreadcrumbs,
3842
- ml as useBroadcastFilter,
3843
- sE as useCollapsible,
3844
- oE as useColumnFilter,
3845
- Uo as useContainer,
3846
- Bu as useDashboard,
3847
- rE as useDataTablePagination,
3848
- iE as useDataTableSort,
3849
- Ol as useDynamicProperties,
3850
- lE as useEnvironmentName,
3851
- Mu as useErrorHandler,
3852
- Sm as useExtensionPoint,
3853
- uE as useFilterState,
3854
- ku as useFloatingPosition,
3855
- Vu as useFormField,
3856
- pl as useFunctions,
3857
- dE as useGalleryPreview,
3858
- om as useGridstack,
3859
- cE as useImageLoad,
3860
- Bo as useInstance,
3861
- $f as useIsMac,
3862
- Kf as useKeyboardShortcuts,
3863
- EE as useLanguages,
3848
+ Fl as useBladeForm,
3849
+ Mu as useBladeLoading,
3850
+ sE as useBladeMessaging,
3851
+ Ul as useBladeNavigation,
3852
+ ml as useBladeNotifications,
3853
+ Kf as useBladeStack,
3854
+ vl as useBladeWidgets,
3855
+ oE as useBreadcrumbs,
3856
+ Sl as useBroadcastFilter,
3857
+ rE as useCollapsible,
3858
+ iE as useColumnFilter,
3859
+ Wo as useContainer,
3860
+ ku as useDashboard,
3861
+ lE as useDataTablePagination,
3862
+ uE as useDataTableSort,
3863
+ _l as useDynamicProperties,
3864
+ dE as useEnvironmentName,
3865
+ Vu as useErrorHandler,
3866
+ pm as useExtensionPoint,
3867
+ cE as useFilterState,
3868
+ Uu as useFloatingPosition,
3869
+ Fu as useFormField,
3870
+ hl as useFunctions,
3871
+ EE as useGalleryPreview,
3872
+ im as useGridstack,
3873
+ fE as useImageLoad,
3874
+ ko as useInstance,
3875
+ zf as useIsMac,
3876
+ qf as useKeyboardShortcuts,
3877
+ mE as useLanguages,
3864
3878
  Xt as useLoading,
3865
- fE as useMenuActiveState,
3866
- mE as useMenuExpanded,
3867
- Uu as useMenuService,
3868
- Cl as useModificationTracker,
3869
- fl as useNotificationContext,
3879
+ gE as useMenuActiveState,
3880
+ SE as useMenuExpanded,
3881
+ Wu as useMenuService,
3882
+ Pl as useModificationTracker,
3883
+ gl as useNotificationContext,
3870
3884
  me as useNotificationStore,
3871
- Tl as useNotifications,
3885
+ Ll as useNotifications,
3872
3886
  at as usePermissions,
3873
3887
  An as usePopup,
3874
3888
  Ua as useResponsive,
3875
- Fu as useScrollArrows,
3889
+ Hu as useScrollArrows,
3876
3890
  we as useSettings,
3877
- Wu as useSettingsMenu,
3878
- gE as useShellBootstrap,
3879
- SE as useShellLifecycle,
3880
- AE as useShellNavigation,
3881
- pE as useSidebarState,
3882
- TE as useTableColumnsReorder,
3883
- hE as useTableColumnsResize,
3884
- LE as useTableContext,
3885
- OE as useTableInlineEdit,
3886
- gl as useTableQueryState,
3887
- RE as useTableRowGrouping,
3888
- _E as useTableRowReorder,
3889
- IE as useTableSearch,
3890
- vE as useTableSelection,
3891
- wE as useTableSort,
3892
- If as useTeleportTarget,
3891
+ Gu as useSettingsMenu,
3892
+ AE as useShellBootstrap,
3893
+ pE as useShellLifecycle,
3894
+ TE as useShellNavigation,
3895
+ hE as useSidebarState,
3896
+ LE as useTableColumnsReorder,
3897
+ OE as useTableColumnsResize,
3898
+ RE as useTableContext,
3899
+ _E as useTableInlineEdit,
3900
+ Al as useTableQueryState,
3901
+ IE as useTableRowGrouping,
3902
+ vE as useTableRowReorder,
3903
+ wE as useTableSearch,
3904
+ CE as useTableSelection,
3905
+ bE as useTableSort,
3906
+ wf as useTeleportTarget,
3893
3907
  Fa as useTheme,
3894
- CE as useToggleableContent,
3895
- Gu as useToolbar,
3896
- vf as useUser,
3897
- bE as useVirtualScroll,
3898
- Rl as useWebVitals,
3899
- Il as useWidgetTrigger,
3900
- PE as vAutofocus,
3908
+ PE as useToggleableContent,
3909
+ xu as useToolbar,
3910
+ Cf as useUser,
3911
+ NE as useVirtualScroll,
3912
+ Il as useWebVitals,
3913
+ wl as useWidgetTrigger,
3914
+ DE as vAutofocus,
3901
3915
  Ma as vLoading,
3902
- Hu as wrapError
3916
+ $u as wrapError
3903
3917
  };