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