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