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