@synopackageland/sdk 0.37.0 → 0.38.1

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/vue.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { appRefusal as la, appDenial as Fe, delegateCopy as Re, createDsmFileStation as Ya, appLifecycle as Se, lifecycleRetryDelay as fa, uiLocale as pa, lifecycleCopy as Ve, shellCopy as Qe, isFullPage as Ea, format as We, nasCopy as ze, nasErrorCopy as Ta, saveCopy as ma, saveError as je, createNasProvider as za, labelSeparator as ya, identityCopy as Aa, backgroundCopy as Qa, createBackgroundPickerProvider as ja, backgroundErrorCopy as Za, requestKey as da, lifecycleRefusal as et, errorCopy as at, scopedPicker as tt, authorizationCopy as Ra, createEntryCheck as lt } from "./index.js";
2
- import { DEFAULT_REQUEST_TIMEOUT as Js, FILE_STATION_APP as Ys, LIFECYCLE_RETRY_MAX_MS as Qs, LIFECYCLE_STARTING_RETRY_MAX_MS as js, MAX_LAUNCH_ROUTE as Zs, activePage as eo, authorizationCatalogs as ao, backgroundCatalogs as to, bridgeCatalogs as lo, bridgeErrorCopy as no, catalogs as so, clientTimeout as oo, createBackgroundSaveFacade as io, createClient as uo, createDsmSession as ro, createFileTransfers as co, createPortalAccess as vo, createSharedFolderAccess as fo, createSharedFolderPermission as po, createStandaloneContext as mo, createStandaloneHost as yo, decodeResponse as bo, delegateCatalogs as go, dsmLaunchURL as ho, encodeRequest as ko, fileStationPath as _o, followLaunchRoute as wo, identityCatalogs as xo, launchRoute as Co, mergeCatalogs as $o, nasCatalogs as So, openFileInFileStation as Po, openFolderInFileStation as Eo, portalCatalogs as To, portalMessages as zo, protocolCodes as Ao, protocolOps as Ro, protocolSchemas as Uo, readDsmPorts as Io, saveCatalogs as Do, sharedFolderAccessFor as No, sharedFolderCatalogs as Lo, sharedFolderMessages as Vo, sharedFolderPermissionMessage as Bo, shellCatalogs as Fo, shellPages as qo, uiLocales as Oo } from "./index.js";
3
- import { inject as Te, ref as b, computed as w, onBeforeUnmount as ge, Comment as nt, Text as st, Fragment as Z, watch as Oe, onMounted as we, defineComponent as ce, openBlock as l, createElementBlock as _, createElementVNode as S, toDisplayString as o, createCommentVNode as y, renderList as pe, normalizeClass as De, createVNode as p, unref as e, createTextVNode as h, createBlock as g, renderSlot as he, withCtx as s, resolveDynamicComponent as Xe, normalizeProps as Ze, mergeProps as ba, withModifiers as Me, isRef as ea, provide as qe, useTemplateRef as Ge, useSlots as Ua, watchEffect as ka, guardReactiveProps as _a, createSlots as na, Teleport as Ia, markRaw as ot, h as it, shallowRef as ut, onUnmounted as Da, nextTick as rt } from "vue";
4
- import { SettingsSection as _e, Callout as Y, Button as D, SettingsRow as xe, Skeleton as Ne, Badge as Je, PathDisplay as Le, Form as Ke, FormItem as Pe, Select as ga, Input as Ae, Dialog as Be, ensureDeviceViewport as dt, AppRoot as ct, ConfigProvider as vt, PageContent as wa, PageHeader as xa, AppLayout as ft, LoadingArea as Na, AppSidebar as pt, AppSidebarUser as mt, InfoTip as yt, FileTypeIcon as ia, IconButton as ua, Breadcrumb as bt, FilePicker as gt, TreeView as ht, DataGrid as kt, Link as ca, FormActions as sa, Card as Ca, Checkbox as _t, ListItem as $a } from "@synopackageland/ui";
2
+ import { DEFAULT_REQUEST_TIMEOUT as Ys, FILE_STATION_APP as Qs, LIFECYCLE_RETRY_MAX_MS as js, LIFECYCLE_STARTING_RETRY_MAX_MS as Zs, MAX_LAUNCH_ROUTE as eo, activePage as ao, authorizationCatalogs as to, backgroundCatalogs as lo, bridgeCatalogs as no, bridgeErrorCopy as so, catalogs as oo, clientTimeout as io, createBackgroundSaveFacade as uo, createClient as ro, createDsmSession as co, createFileTransfers as vo, createPortalAccess as fo, createSharedFolderAccess as po, createSharedFolderPermission as mo, createStandaloneContext as yo, createStandaloneHost as bo, decodeResponse as go, delegateCatalogs as ho, dsmLaunchURL as ko, encodeRequest as _o, fileStationPath as wo, followLaunchRoute as xo, identityCatalogs as Co, launchRoute as $o, mergeCatalogs as So, nasCatalogs as Po, openFileInFileStation as Eo, openFolderInFileStation as To, portalCatalogs as zo, portalMessages as Ao, protocolCodes as Ro, protocolOps as Uo, protocolSchemas as Io, readDsmPorts as Do, saveCatalogs as No, sharedFolderAccessFor as Lo, sharedFolderCatalogs as Vo, sharedFolderMessages as Bo, sharedFolderPermissionMessage as Fo, shellCatalogs as qo, shellPages as Oo, uiLocales as Mo } from "./index.js";
3
+ import { inject as Te, ref as b, computed as w, onBeforeUnmount as ge, Comment as nt, Text as st, Fragment as Z, watch as Oe, onMounted as we, defineComponent as de, openBlock as l, createElementBlock as _, createElementVNode as S, toDisplayString as o, createCommentVNode as y, renderList as pe, normalizeClass as De, createVNode as p, unref as e, createTextVNode as h, createBlock as g, renderSlot as he, withCtx as s, resolveDynamicComponent as Xe, normalizeProps as Ze, mergeProps as ba, withModifiers as Me, isRef as ea, provide as qe, useTemplateRef as Ge, useSlots as Ua, watchEffect as ka, guardReactiveProps as _a, createSlots as na, Teleport as Ia, markRaw as ot, h as it, shallowRef as ut, onUnmounted as Da, nextTick as rt } from "vue";
4
+ import { SettingsSection as _e, Callout as Q, Button as U, SettingsRow as xe, Skeleton as Ne, Badge as Je, PathDisplay as Le, Form as Ke, FormItem as Pe, Select as ga, Input as Ae, Dialog as Be, ensureDeviceViewport as dt, AppRoot as ct, ConfigProvider as vt, PageContent as wa, PageHeader as xa, AppLayout as ft, LoadingArea as Na, AppSidebar as pt, AppSidebarUser as mt, InfoTip as yt, FileTypeIcon as ia, IconButton as ua, Breadcrumb as bt, FilePicker as gt, TreeView as ht, DataGrid as kt, Link as ca, FormActions as sa, Card as Ca, Checkbox as _t, ListItem as $a } from "@synopackageland/ui";
5
5
  import { Timer as wt, Info as xt, ShieldCheck as La, ChevronRight as Va, ChevronLeft as Ct, RotateCw as $t } from "@lucide/vue";
6
6
  const Ye = /* @__PURE__ */ Symbol("executor-setup"), Ba = /* @__PURE__ */ Symbol("executor-preload");
7
7
  function St() {
@@ -31,44 +31,44 @@ function aa(t) {
31
31
  function Et(t) {
32
32
  return /: the executor status request failed\.$/.test(t ?? "");
33
33
  }
34
- function As(t) {
34
+ function Rs(t) {
35
35
  const c = b(), n = w(() => c.value ? { code: c.value, ...la({ code: c.value }, t.locale, t.displayName) } : void 0), a = b(!1), u = b(!1), i = b(), r = b("");
36
36
  let f = !1, m = 0, d, v;
37
37
  function x() {
38
38
  clearTimeout(d), clearTimeout(v);
39
39
  }
40
- function E(B = "") {
40
+ function P(B = "") {
41
41
  m++, x(), i.value = void 0, r.value = B;
42
42
  }
43
43
  function k(B) {
44
- const M = Fe(B);
45
- return f || !M ? !1 : (E(), c.value = M, !0);
44
+ const K = Fe(B);
45
+ return f || !K ? !1 : (P(), c.value = K, !0);
46
46
  }
47
- async function $(B, M) {
48
- const N = m;
47
+ async function $(B, K) {
48
+ const D = m;
49
49
  try {
50
- return await t.call(B, M);
51
- } catch (P) {
52
- throw N === m && k(P), P;
50
+ return await t.call(B, K);
51
+ } catch (E) {
52
+ throw D === m && k(E), E;
53
53
  }
54
54
  }
55
55
  function z(B) {
56
56
  if (f) return;
57
- const M = Date.parse(B.expiresAt) - Date.now();
58
- if (!Number.isFinite(M) || M <= 0) {
59
- E("expired");
57
+ const K = Date.parse(B.expiresAt) - Date.now();
58
+ if (!Number.isFinite(K) || K <= 0) {
59
+ P("expired");
60
60
  return;
61
61
  }
62
- x(), c.value = void 0, i.value = B, r.value = "", d = setTimeout(() => E("expired"), M);
63
- const N = m;
62
+ x(), c.value = void 0, i.value = B, r.value = "", d = setTimeout(() => P("expired"), K);
63
+ const D = m;
64
64
  v = setTimeout(async () => {
65
65
  try {
66
- const P = await $("identity.session");
67
- !f && m === N && z(P);
68
- } catch (P) {
69
- !f && m === N && !k(P) && E("expired");
66
+ const E = await $("identity.session");
67
+ !f && m === D && z(E);
68
+ } catch (E) {
69
+ !f && m === D && !k(E) && P("expired");
70
70
  }
71
- }, Math.min(6e4, M));
71
+ }, Math.min(6e4, K));
72
72
  }
73
73
  async function C() {
74
74
  try {
@@ -77,56 +77,56 @@ function As(t) {
77
77
  if (c.value = void 0, a.value = B.enabled === !0, a.value)
78
78
  try {
79
79
  z(await $("identity.session", { bootstrap: !0 }));
80
- } catch (M) {
81
- !f && !Fe(M) && E();
80
+ } catch (K) {
81
+ !f && !Fe(K) && P();
82
82
  }
83
83
  } catch (B) {
84
84
  if (f) return;
85
- const M = B?.code;
86
- a.value = !Fe(B) && !["unknown_method", "session_required"].includes(M || ""), a.value && (r.value = "unavailable");
85
+ const K = B?.code;
86
+ a.value = !Fe(B) && !["unknown_method", "session_required"].includes(K || ""), a.value && (r.value = "unavailable");
87
87
  } finally {
88
88
  f || (u.value = !0);
89
89
  }
90
90
  }
91
- async function T(B, M) {
92
- const N = m;
91
+ async function T(B, K) {
92
+ const D = m;
93
93
  try {
94
- const P = await t.call(B, M);
95
- if (f || a.value && N !== m) throw { code: "session_required" };
96
- return P;
97
- } catch (P) {
98
- N === m && k(P);
99
- const R = P?.code;
100
- throw !f && N === m && a.value && ["session_required", "session_revalidation_required"].includes(R || "") && E(R === "session_revalidation_required" ? "revalidate" : "expired"), P;
94
+ const E = await t.call(B, K);
95
+ if (f || a.value && D !== m) throw { code: "session_required" };
96
+ return E;
97
+ } catch (E) {
98
+ D === m && k(E);
99
+ const M = E?.code;
100
+ throw !f && D === m && a.value && ["session_required", "session_revalidation_required"].includes(M || "") && P(M === "session_revalidation_required" ? "revalidate" : "expired"), E;
101
101
  }
102
102
  }
103
- async function A(B, M) {
103
+ async function A(B, K) {
104
104
  if (!t.batch) throw { code: "unsupported", message: "batch client unavailable" };
105
- const N = m;
105
+ const D = m;
106
106
  try {
107
- const P = await t.batch(B, M);
108
- if (f || a.value && N !== m) throw { code: "session_required" };
109
- for (const R of P) R.success || (N === m && k(R.error), N === m && a.value && ["session_required", "session_revalidation_required"].includes(R.error.code) && E(R.error.code === "session_revalidation_required" ? "revalidate" : "expired"));
110
- return P;
111
- } catch (P) {
112
- throw N === m && k(P), P;
107
+ const E = await t.batch(B, K);
108
+ if (f || a.value && D !== m) throw { code: "session_required" };
109
+ for (const M of E) M.success || (D === m && k(M.error), D === m && a.value && ["session_required", "session_revalidation_required"].includes(M.error.code) && P(M.error.code === "session_revalidation_required" ? "revalidate" : "expired"));
110
+ return E;
111
+ } catch (E) {
112
+ throw D === m && k(E), E;
113
113
  }
114
114
  }
115
- async function ae(B, M, N) {
116
- const P = await $("identity.login", { account: B, password: M, otp: N });
117
- f || (m++, z(P));
115
+ async function ae(B, K, D) {
116
+ const E = await $("identity.login", { account: B, password: K, otp: D });
117
+ f || (m++, z(E));
118
118
  }
119
119
  async function F() {
120
120
  const B = await $("identity.session", { bootstrap: !0 });
121
121
  f || (m++, z(B));
122
122
  }
123
- async function H() {
124
- await $("identity.logout"), f || E();
123
+ async function G() {
124
+ await $("identity.logout"), f || P();
125
125
  }
126
- function G() {
127
- f = !0, E();
126
+ function X() {
127
+ f = !0, P();
128
128
  }
129
- return { enabled: a, ready: u, subject: i, notice: r, denied: n, start: C, call: T, batch: A, login: ae, bootstrap: F, logout: H, dispose: G };
129
+ return { enabled: a, ready: u, subject: i, notice: r, denied: n, start: C, call: T, batch: A, login: ae, bootstrap: F, logout: G, dispose: X };
130
130
  }
131
131
  function Tt() {
132
132
  const t = b(!1), c = b();
@@ -205,86 +205,86 @@ function Oa(t, c) {
205
205
  Oe(i, () => {
206
206
  v.value = !1;
207
207
  });
208
- const E = b(), k = b(""), $ = b([]), z = Ya(), C = w(() => E.value?.scope_mode === "install-selected"), T = w(() => !!E.value?.scope_mode), A = w(() => [{ label: a.value.homeScope, value: "home" }, ...$.value]), ae = w(() => !C.value || !!k.value && A.value.some((K) => K.value === k.value)), F = w(() => C.value && !E.value?.selection);
209
- let H = !1;
210
- async function G(K) {
211
- const se = K ?? await n.status();
212
- if (H || (u.value = se, !t.ctx || Se(se))) return;
213
- const O = await t.ctx.call("delegate.status");
214
- if (H || (E.value = O, O.scope_mode !== "install-selected")) return;
215
- const ne = [];
216
- let ue = 0;
217
- for (let re = 0; re < 128; re++) {
218
- const X = await z.shares(ue, new AbortController().signal);
219
- if (H) return;
220
- if (!Array.isArray(X.shares) || !Number.isSafeInteger(X.total) || X.total < 0 || !X.shares.length && ue < X.total) throw { code: "EXECUTOR_PROTOCOL" };
221
- for (const J of X.shares)
222
- J.isdir && J.path === "/" + J.name && !["home", "homes"].includes(J.name.toLowerCase()) && ne.push({ label: J.name, value: "shared:" + J.name });
223
- if (ue += X.shares.length, ue >= X.total) break;
224
- if (re === 127) throw { code: "EXECUTOR_PROTOCOL" };
208
+ const P = b(), k = b(""), $ = b([]), z = Ya(), C = w(() => P.value?.scope_mode === "install-selected"), T = w(() => !!P.value?.scope_mode), A = w(() => [{ label: a.value.homeScope, value: "home" }, ...$.value]), ae = w(() => !C.value || !!k.value && A.value.some((N) => N.value === k.value)), F = w(() => C.value && !P.value?.selection);
209
+ let G = !1;
210
+ async function X(N) {
211
+ const le = N ?? await n.status();
212
+ if (G || (u.value = le, !t.ctx || Se(le))) return;
213
+ const q = await t.ctx.call("delegate.status");
214
+ if (G || (P.value = q, q.scope_mode !== "install-selected")) return;
215
+ const j = [];
216
+ let ie = 0;
217
+ for (let ce = 0; ce < 128; ce++) {
218
+ const W = await z.shares(ie, new AbortController().signal);
219
+ if (G) return;
220
+ if (!Array.isArray(W.shares) || !Number.isSafeInteger(W.total) || W.total < 0 || !W.shares.length && ie < W.total) throw { code: "EXECUTOR_PROTOCOL" };
221
+ for (const H of W.shares)
222
+ H.isdir && H.path === "/" + H.name && !["home", "homes"].includes(H.name.toLowerCase()) && j.push({ label: H.name, value: "shared:" + H.name });
223
+ if (ie += W.shares.length, ie >= W.total) break;
224
+ if (ce === 127) throw { code: "EXECUTOR_PROTOCOL" };
225
225
  }
226
- $.value = ne, k.value = O.selection?.scope ?? O.preselection ?? "";
226
+ $.value = j, k.value = q.selection?.scope ?? q.preselection ?? "";
227
227
  }
228
- async function B(K) {
228
+ async function B(N) {
229
229
  if (!(!t.admin || r.value)) {
230
230
  r.value = !0, m.value = !1, d.value = void 0;
231
231
  try {
232
- await G(K);
232
+ await X(N);
233
233
  } catch {
234
- H || (m.value = !0);
234
+ G || (m.value = !0);
235
235
  } finally {
236
- H || (r.value = !1);
236
+ G || (r.value = !1);
237
237
  }
238
238
  }
239
239
  }
240
- const M = () => B();
241
- async function N() {
240
+ const K = () => B();
241
+ async function D() {
242
242
  if (!t.admin || r.value || !i.value || !ae.value || m.value) return;
243
243
  r.value = !0, m.value = !1, d.value = void 0;
244
- const K = i.value, se = k.value;
244
+ const N = i.value, le = k.value;
245
245
  i.value = "", f.value = !0;
246
246
  try {
247
- let O = C.value ? await n.authorize(K, k.value) : await n.authorize(K);
248
- const ne = aa(O);
249
- if (ne) {
250
- H || (d.value = { confirm: ne }, i.value = K);
247
+ let q = C.value ? await n.authorize(N, k.value) : await n.authorize(N);
248
+ const j = aa(q);
249
+ if (j) {
250
+ G || (d.value = { confirm: j }, i.value = N);
251
251
  return;
252
252
  }
253
- if (await G(O), !H && C.value && O.state === "ready" && F.value && (O = await n.authorize(K, k.value), await G(O)), O.state !== "ready" && O.requested && await R(O.requested) && (O = await n.status(), await G(O)), O.state === "ready" && C.value && E.value?.selection?.scope !== se) {
254
- H || (d.value = { reason: "", code: "selection_failed" });
253
+ if (await X(q), !G && C.value && q.state === "ready" && F.value && (q = await n.authorize(N, k.value), await X(q)), q.state !== "ready" && q.requested && await M(q.requested) && (q = await n.status(), await X(q)), q.state === "ready" && C.value && P.value?.selection?.scope !== le) {
254
+ G || (d.value = { reason: "", code: "selection_failed" });
255
255
  return;
256
256
  }
257
- if (O.state !== "ready") {
258
- H || (d.value = { reason: O.reason ?? "", code: O.code });
257
+ if (q.state !== "ready") {
258
+ G || (d.value = { reason: q.reason ?? "", code: q.code });
259
259
  return;
260
260
  }
261
- H || await c();
261
+ G || await c();
262
262
  } catch {
263
- H || (m.value = !0);
263
+ G || (m.value = !0);
264
264
  } finally {
265
- H || (r.value = !1, f.value = !1);
265
+ G || (r.value = !1, f.value = !1);
266
266
  }
267
267
  }
268
- function P() {
269
- return !i.value && !r.value ? (v.value = !0, Promise.resolve()) : N();
268
+ function E() {
269
+ return !i.value && !r.value ? (v.value = !0, Promise.resolve()) : D();
270
270
  }
271
- async function R(K) {
272
- for (const se = Date.now() + Nt; !H; await new Promise((O) => setTimeout(O, Lt))) {
273
- const O = (await t.ctx?.call("delegate.status").catch(() => {
271
+ async function M(N) {
272
+ for (const le = Date.now() + Nt; !G; await new Promise((q) => setTimeout(q, Lt))) {
273
+ const q = (await t.ctx?.call("delegate.status").catch(() => {
274
274
  }))?.selection;
275
- if (O?.scope === K.scope && O.generation > K.generation) return !0;
276
- if (Date.now() >= se) return !1;
275
+ if (q?.scope === N.scope && q.generation > N.generation) return !0;
276
+ if (Date.now() >= le) return !1;
277
277
  }
278
278
  return !1;
279
279
  }
280
- const Q = (K) => K?.code === "executor_starting" ? a.value.statusStarting : Et(K?.reason) ? a.value.statusUnreachable : void 0;
280
+ const se = (N) => N?.code === "executor_starting" ? a.value.statusStarting : Et(N?.reason) ? a.value.statusUnreachable : void 0;
281
281
  return we(() => {
282
- n.subscribe?.((K) => {
283
- !H && !aa(K) && (u.value = K);
282
+ n.subscribe?.((N) => {
283
+ !G && !aa(N) && (u.value = N);
284
284
  }), B(t.initial);
285
285
  }), ge(() => {
286
- H = !0, i.value = "";
287
- }), { status: u, password: i, busy: r, confirming: f, error: m, failure: d, passwordError: x, scope: E, chosen: k, options: A, dynamic: C, files: T, webapiProfiles: n.webapiProfiles, canConfirm: ae, needsScope: F, refresh: M, authorize: N, submit: P, explain: Q };
286
+ G = !0, i.value = "";
287
+ }), { status: u, password: i, busy: r, confirming: f, error: m, failure: d, passwordError: x, scope: P, chosen: k, options: A, dynamic: C, files: T, webapiProfiles: n.webapiProfiles, canConfirm: ae, needsScope: F, refresh: K, authorize: D, submit: E, explain: se };
288
288
  }
289
289
  function He(t, c) {
290
290
  let n = !1, a, u = 0;
@@ -301,7 +301,7 @@ function He(t, c) {
301
301
  n = !0, clearTimeout(a);
302
302
  });
303
303
  }
304
- const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key: 0 }, qt = { key: 1 }, Ot = { key: 2 }, Mt = { key: 3 }, Kt = { key: 1 }, Ht = /* @__PURE__ */ ce({
304
+ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key: 0 }, qt = { key: 1 }, Ot = { key: 2 }, Mt = { key: 3 }, Kt = { key: 1 }, Ht = /* @__PURE__ */ de({
305
305
  __name: "ExecutorUpgrade",
306
306
  props: {
307
307
  status: {},
@@ -377,7 +377,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
377
377
  key: 2,
378
378
  class: "executor-consent-more",
379
379
  "data-consent-points": ""
380
- }, ll = /* @__PURE__ */ ce({
380
+ }, ll = /* @__PURE__ */ de({
381
381
  __name: "ExecutorConsent",
382
382
  props: {
383
383
  admin: { type: Boolean },
@@ -412,8 +412,8 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
412
412
  h(": " + o(d.purpose) + " ", 1),
413
413
  S("details", null, [
414
414
  S("summary", null, o(a.value.details), 1),
415
- (l(!0), _(Z, null, pe(d.apis, (x, E) => (l(), _("div", { key: E }, [
416
- S("code", null, o(E), 1),
415
+ (l(!0), _(Z, null, pe(d.apis, (x, P) => (l(), _("div", { key: P }, [
416
+ S("code", null, o(P), 1),
417
417
  (l(!0), _(Z, null, pe(x, (k, $) => (l(), _("div", { key: $ }, o($) + " (" + o(k.join(", ")) + ")", 1))), 128))
418
418
  ]))), 128)),
419
419
  d.raw_max_bytes ? (l(), _("code", al, o(a.value.rawLimit) + ": " + o(d.raw_max_bytes), 1)) : y("", !0)
@@ -451,7 +451,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
451
451
  }, il = {
452
452
  key: 1,
453
453
  class: "executor-summary"
454
- }, ul = ["data-executor-status"], rl = { class: "executor-reason" }, dl = /* @__PURE__ */ ce({
454
+ }, ul = ["data-executor-status"], rl = { class: "executor-reason" }, dl = /* @__PURE__ */ de({
455
455
  __name: "ExecutorSettings",
456
456
  props: {
457
457
  admin: { type: Boolean },
@@ -464,18 +464,18 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
464
464
  },
465
465
  emits: ["confirmed"],
466
466
  setup(t, { expose: c, emit: n }) {
467
- const a = t, u = n, i = w(() => Re(a.locale)), { status: r, password: f, busy: m, confirming: d, error: v, failure: x, passwordError: E, scope: k, chosen: $, options: z, dynamic: C, files: T, webapiProfiles: A, canConfirm: ae, needsScope: F, refresh: H, submit: G, explain: B } = Oa(a, () => u("confirmed")), M = w(() => d.value ? "confirming" : r.value ? r.value.state === "ready" ? "ready" : "blocked" : void 0), N = w(() => ({ ready: { tone: "success", text: i.value.statusReady }, blocked: { tone: "danger", text: i.value.statusBlocked }, confirming: { tone: "info", text: i.value.statusConfirming } })[M.value ?? "confirming"]), P = w(() => d.value ? void 0 : Se(r.value));
468
- He(() => P.value, H);
469
- const R = w(() => !P.value && (r.value?.state === "needs-admin-approval" || F.value)), Q = w(() => R.value || !!r.value?.retry);
470
- return c({ refresh: H }), (K, se) => t.admin ? (l(), g(e(_e), {
467
+ const a = t, u = n, i = w(() => Re(a.locale)), { status: r, password: f, busy: m, confirming: d, error: v, failure: x, passwordError: P, scope: k, chosen: $, options: z, dynamic: C, files: T, webapiProfiles: A, canConfirm: ae, needsScope: F, refresh: G, submit: X, explain: B } = Oa(a, () => u("confirmed")), K = w(() => d.value ? "confirming" : r.value ? r.value.state === "ready" ? "ready" : "blocked" : void 0), D = w(() => ({ ready: { tone: "success", text: i.value.statusReady }, blocked: { tone: "danger", text: i.value.statusBlocked }, confirming: { tone: "info", text: i.value.statusConfirming } })[K.value ?? "confirming"]), E = w(() => d.value ? void 0 : Se(r.value));
468
+ He(() => E.value, G);
469
+ const M = w(() => !E.value && (r.value?.state === "needs-admin-approval" || F.value)), se = w(() => M.value || !!r.value?.retry);
470
+ return c({ refresh: G }), (N, le) => t.admin ? (l(), g(e(_e), {
471
471
  key: 0,
472
472
  title: t.title ?? i.value.setupTitle,
473
- description: R.value ? void 0 : e(T) ? i.value.setupHelpFiles : i.value.setupHelp,
473
+ description: M.value ? void 0 : e(T) ? i.value.setupHelpFiles : i.value.setupHelp,
474
474
  collapsible: !1,
475
475
  "aria-busy": e(m) || !e(r) && !e(d) && !e(v)
476
476
  }, {
477
477
  default: s(() => [
478
- e(v) ? (l(), g(e(Y), {
478
+ e(v) ? (l(), g(e(Q), {
479
479
  key: 0,
480
480
  tone: "danger",
481
481
  role: "alert"
@@ -483,11 +483,11 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
483
483
  default: s(() => [
484
484
  S("span", nl, [
485
485
  S("span", null, o(i.value.setupError), 1),
486
- p(e(D), {
486
+ p(e(U), {
487
487
  variant: "secondary",
488
488
  size: "sm",
489
489
  disabled: e(m),
490
- onClick: e(H)
490
+ onClick: e(G)
491
491
  }, {
492
492
  default: s(() => [
493
493
  h(o(i.value.retry), 1)
@@ -497,7 +497,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
497
497
  ])
498
498
  ]),
499
499
  _: 1
500
- })) : e(x) && !("confirm" in e(x)) ? (l(), g(e(Y), {
500
+ })) : e(x) && !("confirm" in e(x)) ? (l(), g(e(Q), {
501
501
  key: 1,
502
502
  tone: "danger",
503
503
  role: "alert"
@@ -508,13 +508,13 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
508
508
  ]),
509
509
  _: 1
510
510
  })) : y("", !0),
511
- P.value ? (l(), g(e(Y), {
511
+ E.value ? (l(), g(e(Q), {
512
512
  key: 2,
513
513
  tone: "info",
514
514
  role: "status"
515
515
  }, {
516
516
  default: s(() => [
517
- h(o(e(Ve)(P.value, t.locale)), 1)
517
+ h(o(e(Ve)(E.value, t.locale)), 1)
518
518
  ]),
519
519
  _: 1
520
520
  })) : (l(), _(Z, { key: 3 }, [
@@ -532,20 +532,20 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
532
532
  _: 1
533
533
  }, 8, ["label"])
534
534
  ])) : y("", !0),
535
- (e(r) || e(d)) && !R.value ? (l(), _("div", il, [
535
+ (e(r) || e(d)) && !M.value ? (l(), _("div", il, [
536
536
  p(e(xe), {
537
537
  label: i.value.status
538
538
  }, {
539
539
  default: s(() => [
540
540
  S("span", {
541
541
  role: "status",
542
- "data-executor-status": M.value
542
+ "data-executor-status": K.value
543
543
  }, [
544
544
  p(e(Je), {
545
- tone: N.value.tone
545
+ tone: D.value.tone
546
546
  }, {
547
547
  default: s(() => [
548
- h(o(N.value.text), 1)
548
+ h(o(D.value.text), 1)
549
549
  ]),
550
550
  _: 1
551
551
  }, 8, ["tone"])
@@ -579,7 +579,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
579
579
  _: 1
580
580
  }, 8, ["label"])) : y("", !0)
581
581
  ])) : y("", !0),
582
- M.value === "blocked" && !R.value ? (l(), g(e(Y), {
582
+ K.value === "blocked" && !M.value ? (l(), g(e(Q), {
583
583
  key: 2,
584
584
  tone: "warning"
585
585
  }, {
@@ -588,7 +588,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
588
588
  ]),
589
589
  _: 1
590
590
  })) : y("", !0),
591
- e(k)?.mismatch ? (l(), g(e(Y), {
591
+ e(k)?.mismatch ? (l(), g(e(Q), {
592
592
  key: 3,
593
593
  tone: "warning"
594
594
  }, {
@@ -597,12 +597,12 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
597
597
  ]),
598
598
  _: 1
599
599
  })) : y("", !0),
600
- Q.value ? (l(), g(Xe(R.value ? ta : "div"), Ze(ba({ key: 4 }, R.value ? { admin: !0, locale: t.locale, files: e(T), purpose: t.purpose, layout: t.layout, webapiProfiles: e(A), status: e(r) } : {})), {
600
+ se.value ? (l(), g(Xe(M.value ? ta : "div"), Ze(ba({ key: 4 }, M.value ? { admin: !0, locale: t.locale, files: e(T), purpose: t.purpose, layout: t.layout, webapiProfiles: e(A), status: e(r) } : {})), {
601
601
  default: s(() => [
602
602
  p(e(Ke), {
603
603
  direction: "vertical",
604
604
  class: "executor-form",
605
- onSubmit: Me(e(G), ["prevent"])
605
+ onSubmit: Me(e(X), ["prevent"])
606
606
  }, {
607
607
  default: s(() => [
608
608
  e(C) ? (l(), g(e(Pe), {
@@ -614,7 +614,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
614
614
  p(e(ga), {
615
615
  id: "delegate-scope",
616
616
  modelValue: e($),
617
- "onUpdate:modelValue": se[0] || (se[0] = (O) => ea($) ? $.value = O : null),
617
+ "onUpdate:modelValue": le[0] || (le[0] = (q) => ea($) ? $.value = q : null),
618
618
  options: e(z),
619
619
  disabled: e(m) || e(v)
620
620
  }, null, 8, ["modelValue", "options", "disabled"])
@@ -624,13 +624,13 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
624
624
  p(e(Pe), {
625
625
  label: i.value.password,
626
626
  description: e(d) ? i.value.confirmingHelp : i.value.passwordNote,
627
- help: e(E),
628
- "validate-status": e(E) ? "error" : void 0,
627
+ help: e(P),
628
+ "validate-status": e(P) ? "error" : void 0,
629
629
  "validate-message-display-mode": "text"
630
630
  }, {
631
- after: s(({ classes: O }) => [
632
- p(e(D), {
633
- class: De(O.afterItem),
631
+ after: s(({ classes: q }) => [
632
+ p(e(U), {
633
+ class: De(q.afterItem),
634
634
  type: "submit",
635
635
  variant: "primary",
636
636
  loading: e(d),
@@ -646,10 +646,10 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
646
646
  p(e(Ae), {
647
647
  id: "delegate-password",
648
648
  modelValue: e(f),
649
- "onUpdate:modelValue": se[1] || (se[1] = (O) => ea(f) ? f.value = O : null),
649
+ "onUpdate:modelValue": le[1] || (le[1] = (q) => ea(f) ? f.value = q : null),
650
650
  type: "password",
651
651
  autocomplete: "current-password",
652
- invalid: !!e(E),
652
+ invalid: !!e(P),
653
653
  disabled: e(m) || e(v)
654
654
  }, null, 8, ["modelValue", "invalid", "disabled"])
655
655
  ]),
@@ -672,7 +672,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
672
672
  }, vl = {
673
673
  key: 1,
674
674
  class: "executor-notice"
675
- }, fl = { class: "executor-notice-body" }, pl = /* @__PURE__ */ ce({
675
+ }, fl = { class: "executor-notice-body" }, pl = /* @__PURE__ */ de({
676
676
  __name: "ExecutorNotice",
677
677
  props: {
678
678
  locale: {},
@@ -683,14 +683,14 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
683
683
  const c = t, n = w(() => Re(c.locale)), a = Te(Ye, void 0) ?? c.ctx.executor;
684
684
  a && qe(Ye, a);
685
685
  const u = b("checking"), i = b(), r = b(!1), f = w(() => c.ctx.user?.isAdmin === !0), m = w(() => !i.value && (u.value === "needs-admin-approval" || u.value === "blocked")), d = w(() => a?.call ? { call: (C, T) => a.call(C, T) } : c.ctx.call ? c.ctx : void 0);
686
- let v = !1, x, E, k = 0;
686
+ let v = !1, x, P, k = 0;
687
687
  function $(C) {
688
688
  const T = i.value;
689
- if (i.value = Se(C), u.value = C?.state ?? "unknown", clearTimeout(E), C && !i.value) {
689
+ if (i.value = Se(C), u.value = C?.state ?? "unknown", clearTimeout(P), C && !i.value) {
690
690
  k = 0;
691
691
  return;
692
692
  }
693
- i.value !== T && (k = 0), E = setTimeout(() => {
693
+ i.value !== T && (k = 0), P = setTimeout(() => {
694
694
  z();
695
695
  }, fa(k++, i.value));
696
696
  }
@@ -711,9 +711,9 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
711
711
  z();
712
712
  }), z());
713
713
  }), ge(() => {
714
- v = !0, clearTimeout(E), x?.();
714
+ v = !0, clearTimeout(P), x?.();
715
715
  }), (C, T) => i.value ? (l(), _("div", cl, [
716
- p(e(Y), {
716
+ p(e(Q), {
717
717
  tone: "info",
718
718
  role: "status"
719
719
  }, {
@@ -723,11 +723,11 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
723
723
  _: 1
724
724
  })
725
725
  ])) : m.value ? (l(), _("div", vl, [
726
- p(e(Y), { tone: "warning" }, {
726
+ p(e(Q), { tone: "warning" }, {
727
727
  default: s(() => [
728
728
  S("span", fl, [
729
729
  h(o(f.value ? n.value.noticeAdmin : n.value.noticeUser), 1),
730
- f.value ? (l(), g(e(D), {
730
+ f.value ? (l(), g(e(U), {
731
731
  key: 0,
732
732
  variant: "secondary",
733
733
  size: "sm",
@@ -765,7 +765,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
765
765
  }), ml = /* @__PURE__ */ ve(pl, [["__scopeId", "data-v-5468feb3"]]), yl = {
766
766
  key: 0,
767
767
  class: "ui-update-notice"
768
- }, bl = { class: "ui-update-notice-body" }, gl = /* @__PURE__ */ ce({
768
+ }, bl = { class: "ui-update-notice-body" }, gl = /* @__PURE__ */ de({
769
769
  __name: "UiUpdateNotice",
770
770
  props: {
771
771
  locale: {},
@@ -798,14 +798,14 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
798
798
  window.location.reload();
799
799
  }
800
800
  return (v, x) => a.value ? (l(), _("div", yl, [
801
- p(e(Y), {
801
+ p(e(Q), {
802
802
  tone: "info",
803
803
  role: "status"
804
804
  }, {
805
805
  default: s(() => [
806
806
  S("span", bl, [
807
807
  h(o(n.value.uiUpdated), 1),
808
- p(e(D), {
808
+ p(e(U), {
809
809
  variant: "secondary",
810
810
  size: "sm",
811
811
  onClick: d
@@ -822,12 +822,15 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
822
822
  ])) : y("", !0);
823
823
  }
824
824
  }), hl = /* @__PURE__ */ ve(gl, [["__scopeId", "data-v-8141bcd1"]]), Ka = /* @__PURE__ */ Symbol("synopackageland:page-actions"), Ha = /* @__PURE__ */ Symbol("synopackageland:page-info"), Ga = /* @__PURE__ */ Symbol("synopackageland:shell-locale"), kl = { role: "alert" }, _l = {
825
+ key: 0,
826
+ class: "app-shell-account"
827
+ }, wl = {
825
828
  ref: "page-info",
826
829
  class: "app-page-info"
827
- }, wl = {
830
+ }, xl = {
828
831
  ref: "page-actions",
829
832
  class: "app-page-actions"
830
- }, xl = ["hidden"], Cl = { class: "app-page-content" }, $l = /* @__PURE__ */ ce({
833
+ }, Cl = ["hidden"], $l = { class: "app-page-content" }, Sl = /* @__PURE__ */ de({
831
834
  __name: "AppShell",
832
835
  props: {
833
836
  locale: {},
@@ -850,55 +853,61 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
850
853
  emits: ["update:modelValue", "brand"],
851
854
  setup(t, { emit: c }) {
852
855
  const n = t, a = c;
853
- function u(R) {
854
- a("brand", R);
855
- const Q = f.value[0];
856
- !R.defaultPrevented && Q && a("update:modelValue", Q.id);
856
+ function u(N) {
857
+ a("brand", N);
858
+ const le = f.value[0];
859
+ !N.defaultPrevented && le && a("update:modelValue", le.id);
857
860
  }
858
- const i = w(() => Qe(n.locale)), r = w(() => n.pageSurface), f = w(() => Ut(n.pages, i.value)), m = w(() => It(f.value)), d = w(() => f.value.find((R) => R.id === n.modelValue)), v = w(() => d.value && n.loading ? { ...d.value, fill: !0 } : d.value), x = w(() => v.value?.title ?? i.value[n.modelValue] ?? i.value.status), E = Ge("scroller"), k = w(() => n.pages.some((R) => typeof R != "string"));
861
+ const i = w(() => Qe(n.locale)), r = w(() => n.pageSurface), f = w(() => Ut(n.pages, i.value)), m = w(() => It(f.value)), d = w(() => f.value.find((N) => N.id === n.modelValue)), v = w(() => d.value && n.loading ? { ...d.value, fill: !0 } : d.value), x = w(() => v.value?.title ?? i.value[n.modelValue] ?? i.value.status), P = Ge("scroller"), k = w(() => n.pages.some((N) => typeof N != "string"));
859
862
  Oe(() => n.modelValue, () => {
860
- k.value && !n.keepScroll && E.value && (E.value.$el.scrollTop = 0);
863
+ k.value && !n.keepScroll && P.value && (P.value.$el.scrollTop = 0);
861
864
  }, { flush: "post" });
862
- const $ = Ua(), z = w(() => n.denied === !0 ? {} : n.denied || void 0), C = w(() => la(z.value, n.locale, n.brandName ?? n.ctx?.displayName)), T = w(() => n.ctx !== void 0 && Ea(n.ctx)), A = w(() => T.value ? n.ctx : void 0), ae = (R, { slots: Q }) => Q.default?.(), F = w(() => n.ctx !== void 0 && !T.value);
863
- function H() {
865
+ const $ = Ua(), z = w(() => n.denied === !0 ? {} : n.denied || void 0), C = w(() => la(z.value, n.locale, n.brandName ?? n.ctx?.displayName)), T = w(() => n.ctx !== void 0 && Ea(n.ctx)), A = w(() => T.value ? n.ctx : void 0), ae = (N, { slots: le }) => le.default?.(), F = w(() => n.ctx !== void 0 && !T.value);
866
+ function G() {
864
867
  n.ctx?.host?.activateWindow?.();
865
868
  }
866
- const G = Ge("layout"), B = b({ brand: !1, user: !1 });
867
- Oe([T, G], (R, Q, K) => {
868
- const se = G.value?.$el;
869
- if (!T.value || !se) {
869
+ const X = Ge("layout"), B = b({ brand: !1, user: !1 });
870
+ Oe([T, X], (N, le, q) => {
871
+ const j = X.value?.$el;
872
+ if (!T.value || !j) {
870
873
  B.value = { brand: !1, user: !1 };
871
874
  return;
872
875
  }
873
- const O = () => {
874
- const re = zt(se);
875
- (re.brand !== B.value.brand || re.user !== B.value.user) && (B.value = re);
876
+ const ie = () => {
877
+ const H = zt(j);
878
+ (H.brand !== B.value.brand || H.user !== B.value.user) && (B.value = H);
876
879
  };
877
- O();
878
- const ne = new MutationObserver((re) => {
879
- re.some((X) => !se.contains(X.target)) && O();
880
+ ie();
881
+ const ce = new MutationObserver((H) => {
882
+ H.some((J) => !j.contains(J.target)) && ie();
880
883
  });
881
- ne.observe(se.ownerDocument.body, { subtree: !0, childList: !0, attributes: !0, attributeFilter: ["class", "style", "hidden"], characterData: !0 });
882
- const ue = se.ownerDocument.defaultView;
883
- ue?.addEventListener("resize", O), K(() => {
884
- ne.disconnect(), ue?.removeEventListener("resize", O);
884
+ ce.observe(j.ownerDocument.body, { subtree: !0, childList: !0, attributes: !0, attributeFilter: ["class", "style", "hidden"], characterData: !0 });
885
+ const W = j.ownerDocument.defaultView;
886
+ W?.addEventListener("resize", ie), q(() => {
887
+ ce.disconnect(), W?.removeEventListener("resize", ie);
885
888
  });
886
889
  }, { flush: "post", immediate: !0 });
887
- const M = w(() => !B.value.user && A.value?.user?.name ? A.value.user : void 0);
890
+ const K = w(() => !B.value.user && A.value?.user?.name ? A.value.user : void 0), D = w(() => {
891
+ const N = A.value?.host;
892
+ return typeof N?.signOut == "function" && N.platform().host === "dsm";
893
+ });
894
+ function E() {
895
+ A.value?.host?.signOut?.();
896
+ }
888
897
  qe(Ka, Ge("page-actions")), qe(Ha, Ge("page-info")), qe(Ga, w(() => n.locale));
889
- const N = Ge("notices"), P = b(!0);
890
- return ka((R) => {
891
- const Q = N.value;
892
- if (!Q) return;
893
- const K = () => {
894
- P.value = !At(Q);
898
+ const M = Ge("notices"), se = b(!0);
899
+ return ka((N) => {
900
+ const le = M.value;
901
+ if (!le) return;
902
+ const q = () => {
903
+ se.value = !At(le);
895
904
  };
896
- K();
897
- const se = new MutationObserver(K);
898
- se.observe(Q, { childList: !0, subtree: !0, characterData: !0 }), R(() => se.disconnect());
899
- }, { flush: "post" }), ka((R) => {
900
- T.value && R(dt());
901
- }), (R, Q) => (l(), g(Xe(t.appRoot ? e(ct) : ae), Ze(_a(t.appRoot ? { modalScope: "app", dialogBounds: F.value ? "viewport" : "app", style: "height: 100%;", onActivate: H } : {})), {
905
+ q();
906
+ const j = new MutationObserver(q);
907
+ j.observe(le, { childList: !0, subtree: !0, characterData: !0 }), N(() => j.disconnect());
908
+ }, { flush: "post" }), ka((N) => {
909
+ T.value && N(dt());
910
+ }), (N, le) => (l(), g(Xe(t.appRoot ? e(ct) : ae), Ze(_a(t.appRoot ? { modalScope: "app", dialogBounds: F.value ? "viewport" : "app", style: "height: 100%;", onActivate: G } : {})), {
902
911
  default: s(() => [
903
912
  (l(), g(Xe(t.appRoot ? e(vt) : ae), Ze(_a(t.appRoot ? { locale: e(pa)(t.locale) } : {})), {
904
913
  default: s(() => [
@@ -913,8 +922,8 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
913
922
  key: 0,
914
923
  title: z.value.title ?? C.value?.title ?? i.value.deniedTitle
915
924
  }, null, 8, ["title"])) : y("", !0),
916
- he(R.$slots, "denied", {}, () => [
917
- p(e(Y), { tone: "danger" }, {
925
+ he(N.$slots, "denied", {}, () => [
926
+ p(e(Q), { tone: "danger" }, {
918
927
  default: s(() => [
919
928
  S("span", kl, o(z.value.message ?? C.value?.message ?? i.value.deniedMessage), 1)
920
929
  ]),
@@ -926,7 +935,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
926
935
  }, 8, ["width", "surface"])) : (l(), g(e(ft), {
927
936
  key: 1,
928
937
  ref_key: "layout",
929
- ref: G,
938
+ ref: X,
930
939
  class: De(["app-shell", { "app-shell-fill": v.value?.fill, "app-shell-portal-brand": B.value.brand }]),
931
940
  "min-height": "0",
932
941
  "wide-layout": t.wideLayout ?? (T.value ? "web" : "window"),
@@ -940,13 +949,13 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
940
949
  p(e(pt), {
941
950
  "model-value": t.modelValue,
942
951
  groups: m.value,
943
- "onUpdate:modelValue": Q[0] || (Q[0] = (K) => a("update:modelValue", K))
952
+ "onUpdate:modelValue": le[0] || (le[0] = (q) => a("update:modelValue", q))
944
953
  }, null, 8, ["model-value", "groups"])
945
954
  ]),
946
955
  default: s(() => [
947
956
  p(e(wa), {
948
957
  ref_key: "scroller",
949
- ref: E,
958
+ ref: P,
950
959
  class: De(["app-page", { "app-page-fill": v.value?.fill }]),
951
960
  width: t.pageWidth,
952
961
  surface: r.value
@@ -958,12 +967,12 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
958
967
  description: v.value?.description ?? t.description
959
968
  }, {
960
969
  meta: s(() => [
961
- S("span", _l, null, 512),
962
- he(R.$slots, "meta", { page: t.modelValue }, void 0, !0)
970
+ S("span", wl, null, 512),
971
+ he(N.$slots, "meta", { page: t.modelValue }, void 0, !0)
963
972
  ]),
964
973
  actions: s(() => [
965
- S("div", wl, null, 512),
966
- t.loading ? y("", !0) : he(R.$slots, "actions", { page: t.modelValue }, void 0, !0, 0)
974
+ S("div", xl, null, 512),
975
+ t.loading ? y("", !0) : he(N.$slots, "actions", { page: t.modelValue }, void 0, !0, 0)
967
976
  ]),
968
977
  _: 3
969
978
  }, 8, ["title", "description"])) : y("", !0),
@@ -981,11 +990,11 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
981
990
  key: 3,
982
991
  ref: "notices",
983
992
  class: "app-notices",
984
- hidden: P.value
993
+ hidden: se.value
985
994
  }, [
986
- he(R.$slots, "notices", { page: t.modelValue }, void 0, !0)
987
- ], 8, xl)) : y("", !0),
988
- S("div", Cl, [
995
+ he(N.$slots, "notices", { page: t.modelValue }, void 0, !0)
996
+ ], 8, Cl)) : y("", !0),
997
+ S("div", $l, [
989
998
  t.loading ? (l(), g(e(Na), {
990
999
  key: 0,
991
1000
  text: i.value.loading
@@ -993,7 +1002,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
993
1002
  v.value?.component ? (l(), g(Xe(v.value.component), {
994
1003
  key: v.value.id
995
1004
  })) : y("", !0),
996
- he(R.$slots, "default", { page: t.modelValue }, void 0, !0)
1005
+ he(N.$slots, "default", { page: t.modelValue }, void 0, !0)
997
1006
  ], 64))
998
1007
  ])
999
1008
  ]),
@@ -1002,15 +1011,28 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
1002
1011
  ]),
1003
1012
  _: 2
1004
1013
  }, [
1005
- $["sidebar-footer"] || M.value ? {
1014
+ $["sidebar-footer"] || K.value ? {
1006
1015
  name: "sidebar-footer",
1007
1016
  fn: s(() => [
1008
- he(R.$slots, "sidebar-footer", {}, () => [
1009
- M.value ? (l(), g(e(mt), {
1010
- key: 0,
1011
- name: M.value.name,
1012
- detail: M.value.isAdmin ? i.value.administrator : i.value.dsmUser
1013
- }, null, 8, ["name", "detail"])) : y("", !0)
1017
+ he(N.$slots, "sidebar-footer", {}, () => [
1018
+ K.value ? (l(), _("div", _l, [
1019
+ p(e(mt), {
1020
+ name: K.value.name,
1021
+ detail: K.value.isAdmin ? i.value.administrator : i.value.dsmUser
1022
+ }, null, 8, ["name", "detail"]),
1023
+ D.value ? (l(), g(e(U), {
1024
+ key: 0,
1025
+ class: "app-shell-sign-out",
1026
+ variant: "ghost",
1027
+ size: "sm",
1028
+ onClick: E
1029
+ }, {
1030
+ default: s(() => [
1031
+ h(o(i.value.signOut), 1)
1032
+ ]),
1033
+ _: 1
1034
+ })) : y("", !0)
1035
+ ])) : y("", !0)
1014
1036
  ], !0)
1015
1037
  ]),
1016
1038
  key: "0"
@@ -1018,7 +1040,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
1018
1040
  $.toolbar ? {
1019
1041
  name: "toolbar",
1020
1042
  fn: s(() => [
1021
- he(R.$slots, "toolbar", { page: t.modelValue }, void 0, !0)
1043
+ he(N.$slots, "toolbar", { page: t.modelValue }, void 0, !0)
1022
1044
  ]),
1023
1045
  key: "1"
1024
1046
  } : void 0
@@ -1030,7 +1052,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
1030
1052
  _: 3
1031
1053
  }, 16));
1032
1054
  }
1033
- }), Rs = /* @__PURE__ */ ve($l, [["__scopeId", "data-v-e20148b9"]]), Us = /* @__PURE__ */ ce({
1055
+ }), Us = /* @__PURE__ */ ve(Sl, [["__scopeId", "data-v-f97eeeaf"]]), Is = /* @__PURE__ */ de({
1034
1056
  __name: "PageActions",
1035
1057
  setup(t) {
1036
1058
  const c = Te(Ka, null), n = w(() => c?.value ?? null);
@@ -1041,7 +1063,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
1041
1063
  he(a.$slots, "default")
1042
1064
  ], 8, ["to"])) : y("", !0);
1043
1065
  }
1044
- }), Sl = { class: "page-info-notes" }, Pl = /* @__PURE__ */ ce({
1066
+ }), Pl = { class: "page-info-notes" }, El = /* @__PURE__ */ de({
1045
1067
  inheritAttrs: !1,
1046
1068
  __name: "PageInfo",
1047
1069
  props: {
@@ -1073,7 +1095,7 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
1073
1095
  }), {
1074
1096
  default: s(() => [
1075
1097
  he(m.$slots, "default", {}, () => [
1076
- S("ul", Sl, [
1098
+ S("ul", Pl, [
1077
1099
  (l(!0), _(Z, null, pe(a.value, (v) => (l(), _("li", { key: v }, o(v), 1))), 128))
1078
1100
  ])
1079
1101
  ], !0)
@@ -1082,27 +1104,27 @@ const Vt = ["aria-label"], Bt = { class: "executor-upgrade-title" }, Ft = { key:
1082
1104
  }, 16, ["side", "align", "aria-label"])
1083
1105
  ], 8, ["to", "disabled"])) : y("", !0);
1084
1106
  }
1085
- }), Is = /* @__PURE__ */ ve(Pl, [["__scopeId", "data-v-93861654"]]), Pa = ["B", "KB", "MB", "GB", "TB", "PB"];
1107
+ }), Ds = /* @__PURE__ */ ve(El, [["__scopeId", "data-v-93861654"]]), Pa = ["B", "KB", "MB", "GB", "TB", "PB"];
1086
1108
  function va(t, c) {
1087
1109
  let n = 0, a = t;
1088
1110
  for (; a >= 1024 && n < Pa.length - 1; )
1089
1111
  a /= 1024, n++;
1090
1112
  return `${new Intl.NumberFormat(c, { maximumFractionDigits: n ? 1 : 0 }).format(a)} ${Pa[n]}`;
1091
1113
  }
1092
- const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-location" }, zl = ["aria-label"], Al = {
1114
+ const Tl = ["aria-busy", "aria-label"], zl = { class: "file-toolbar file-location" }, Al = ["aria-label"], Rl = {
1093
1115
  key: 0,
1094
1116
  class: "file-toolbar"
1095
- }, Rl = {
1117
+ }, Ul = {
1096
1118
  key: 1,
1097
1119
  role: "status"
1098
- }, Ul = { role: "alert" }, Il = {
1120
+ }, Il = { role: "alert" }, Dl = {
1099
1121
  key: 4,
1100
1122
  role: "status"
1101
- }, Dl = { class: "file-columns" }, Nl = ["aria-label"], Ll = { class: "file-content" }, Vl = { class: "file-name" }, Bl = { class: "file-empty" }, Fl = { class: "file-bytes" }, ql = {
1123
+ }, Nl = { class: "file-columns" }, Ll = ["aria-label"], Vl = { class: "file-content" }, Bl = { class: "file-name" }, Fl = { class: "file-empty" }, ql = { class: "file-bytes" }, Ol = {
1102
1124
  key: 5,
1103
1125
  class: "file-selection",
1104
1126
  role: "status"
1105
- }, Ol = /* @__PURE__ */ ce({
1127
+ }, Ml = /* @__PURE__ */ de({
1106
1128
  __name: "FileBrowser",
1107
1129
  props: {
1108
1130
  provider: {},
@@ -1113,115 +1135,115 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1113
1135
  },
1114
1136
  emits: ["selected"],
1115
1137
  setup(t, { emit: c }) {
1116
- const n = t, a = c, u = w(() => ze(n.locale)), i = Tt(), { busy: r, error: f } = i, m = b([]), d = b([]), v = b([]), x = b(), E = b(), k = b(), $ = b([]), z = b(), C = b({ key: "name", direction: "asc" }), T = b(0), A = b([]), ae = b(!1);
1138
+ const n = t, a = c, u = w(() => ze(n.locale)), i = Tt(), { busy: r, error: f } = i, m = b([]), d = b([]), v = b([]), x = b(), P = b(), k = b(), $ = b([]), z = b(), C = b({ key: "name", direction: "asc" }), T = b(0), A = b([]), ae = b(!1);
1117
1139
  let F = new AbortController();
1118
- async function H() {
1140
+ async function G() {
1119
1141
  const L = x.value;
1120
1142
  !L || L.isDir || !n.provider.download || await i.run(async (V) => (await n.provider.info(L.path, V), await n.provider.download(L.path), !0));
1121
1143
  }
1122
- async function G() {
1144
+ async function X() {
1123
1145
  const L = v.value.at(-1)?.path, V = A.value[0];
1124
1146
  if (!L || !V || !n.provider.upload) return;
1125
- ae.value = !1, await i.run(async (te) => (await n.provider.upload(L, V, te), !0)) && (A.value = [], await J(v.value), ae.value = !0);
1147
+ ae.value = !1, await i.run(async (te) => (await n.provider.upload(L, V, te), !0)) && (A.value = [], await H(v.value), ae.value = !0);
1126
1148
  }
1127
1149
  const B = w(() => [
1128
1150
  { key: "name", label: u.value.nameColumn, sortable: !0 },
1129
1151
  { key: "kind", label: u.value.kindColumn },
1130
1152
  { key: "bytes", label: u.value.sizeColumn, align: "right", sortable: !0 }
1131
- ]), M = ot((L, { attrs: V }) => it(ia, { ...V, kind: "folder" }));
1132
- function N(L) {
1133
- return { id: L.path, label: L.name, icon: M, data: L };
1153
+ ]), K = ot((L, { attrs: V }) => it(ia, { ...V, kind: "folder" }));
1154
+ function D(L) {
1155
+ return { id: L.path, label: L.name, icon: K, data: L };
1134
1156
  }
1135
- function P(L) {
1157
+ function E(L) {
1136
1158
  x.value = L, a("selected", L?.path);
1137
1159
  }
1138
- function R(L) {
1139
- E.value = L.path, P(n.mode === "folder" ? L.isDir ? L : v.value.at(-1) : L.isDir ? void 0 : L);
1160
+ function M(L) {
1161
+ P.value = L.path, E(n.mode === "folder" ? L.isDir ? L : v.value.at(-1) : L.isDir ? void 0 : L);
1140
1162
  }
1141
- function Q(L) {
1142
- L.isDir ? Ce(L) : R(L);
1163
+ function se(L) {
1164
+ L.isDir ? Ce(L) : M(L);
1143
1165
  }
1144
- const K = (L) => m.value.find((V) => V.path === L);
1145
- function se(L, V, q = []) {
1166
+ const N = (L) => m.value.find((V) => V.path === L);
1167
+ function le(L, V, O = []) {
1146
1168
  for (const te of L) {
1147
- const fe = [...q, te.data];
1169
+ const fe = [...O, te.data];
1148
1170
  if (te.id === V) return fe;
1149
- const U = se(te.children ?? [], V, fe);
1150
- if (U) return U;
1171
+ const R = le(te.children ?? [], V, fe);
1172
+ if (R) return R;
1151
1173
  }
1152
1174
  }
1153
- function O(L, V) {
1154
- for (const q of L) {
1155
- if (q.id === V) return q;
1156
- const te = O(q.children ?? [], V);
1175
+ function q(L, V) {
1176
+ for (const O of L) {
1177
+ if (O.id === V) return O;
1178
+ const te = q(O.children ?? [], V);
1157
1179
  if (te) return te;
1158
1180
  }
1159
1181
  }
1160
- function ne(L, V, q) {
1161
- return L.map((te) => te.id === V ? { ...te, children: q } : te.children ? { ...te, children: ne(te.children, V, q) } : te);
1182
+ function j(L, V, O) {
1183
+ return L.map((te) => te.id === V ? { ...te, children: O } : te.children ? { ...te, children: j(te.children, V, O) } : te);
1162
1184
  }
1163
- let ue = 0;
1164
- async function re(L) {
1165
- const V = ++ue;
1166
- for (const q of L.slice(0, -1)) {
1167
- const te = O(d.value, q.path);
1185
+ let ie = 0;
1186
+ async function ce(L) {
1187
+ const V = ++ie;
1188
+ for (const O of L.slice(0, -1)) {
1189
+ const te = q(d.value, O.path);
1168
1190
  if (!te) break;
1169
1191
  if (te.children === void 0) {
1170
- const fe = await X(te);
1171
- if (V !== ue || !fe) return;
1172
- d.value = ne(d.value, te.id, fe);
1192
+ const fe = await W(te);
1193
+ if (V !== ie || !fe) return;
1194
+ d.value = j(d.value, te.id, fe);
1173
1195
  }
1174
1196
  $.value.includes(te.id) || ($.value = [...$.value, te.id]);
1175
1197
  }
1176
1198
  z.value = L.at(-1)?.path;
1177
1199
  }
1178
- async function X(L) {
1179
- const V = T.value, q = F.signal;
1200
+ async function W(L) {
1201
+ const V = T.value, O = F.signal;
1180
1202
  try {
1181
1203
  const te = [];
1182
1204
  let fe = 0;
1183
1205
  for (; fe !== void 0; ) {
1184
- const U = await n.provider.list(L.id, { offset: fe, sortBy: "name", sortDirection: "ASC" }, q);
1185
- if (q.aborted || V !== T.value) return;
1186
- te.push(...U.entries.filter((W) => W.isDir).map(N)), fe = U.nextOffset;
1206
+ const R = await n.provider.list(L.id, { offset: fe, sortBy: "name", sortDirection: "ASC" }, O);
1207
+ if (O.aborted || V !== T.value) return;
1208
+ te.push(...R.entries.filter((Y) => Y.isDir).map(D)), fe = R.nextOffset;
1187
1209
  }
1188
1210
  return te;
1189
1211
  } catch (te) {
1190
- !q.aborted && V === T.value && (f.value = te, P());
1212
+ !O.aborted && V === T.value && (f.value = te, E());
1191
1213
  return;
1192
1214
  }
1193
1215
  }
1194
- async function J(L, V = !1) {
1216
+ async function H(L, V = !1) {
1195
1217
  if (r.value) return;
1196
- P(), E.value = void 0, m.value = V ? m.value : [], k.value = V ? k.value : void 0;
1197
- const q = V ? k.value ?? 0 : 0, te = L.at(-1)?.path;
1218
+ E(), P.value = void 0, m.value = V ? m.value : [], k.value = V ? k.value : void 0;
1219
+ const O = V ? k.value ?? 0 : 0, te = L.at(-1)?.path;
1198
1220
  v.value = L;
1199
- const fe = await i.run((U) => te ? n.provider.list(te, { offset: q, sortBy: C.value.key, sortDirection: C.value.direction === "asc" ? "ASC" : "DESC" }, U) : n.provider.shares(q, U));
1200
- fe && (m.value = V ? [...m.value, ...fe.entries] : fe.entries, k.value = fe.nextOffset, te ? n.mode === "folder" && !V && P(L.at(-1)) : d.value = m.value.filter((U) => U.isDir).map(N), V || re(L));
1221
+ const fe = await i.run((R) => te ? n.provider.list(te, { offset: O, sortBy: C.value.key, sortDirection: C.value.direction === "asc" ? "ASC" : "DESC" }, R) : n.provider.shares(O, R));
1222
+ fe && (m.value = V ? [...m.value, ...fe.entries] : fe.entries, k.value = fe.nextOffset, te ? n.mode === "folder" && !V && E(L.at(-1)) : d.value = m.value.filter((R) => R.isDir).map(D), V || ce(L));
1201
1223
  }
1202
- const j = w(() => [{ id: "", display: u.value.roots }, ...v.value.map((L) => ({ id: L.path, display: L.name }))]);
1224
+ const J = w(() => [{ id: "", display: u.value.roots }, ...v.value.map((L) => ({ id: L.path, display: L.name }))]);
1203
1225
  function ye(L) {
1204
- const V = j.value.findIndex((q) => q.id === L.id);
1205
- V < v.value.length && ie(v.value.slice(0, V));
1226
+ const V = J.value.findIndex((O) => O.id === L.id);
1227
+ V < v.value.length && ue(v.value.slice(0, V));
1206
1228
  }
1207
1229
  function Ce(L) {
1208
- ie([...v.value, L]);
1230
+ ue([...v.value, L]);
1209
1231
  }
1210
1232
  const $e = b([[]]), ee = b(0);
1211
- function ie(L) {
1212
- r.value || (L.at(-1)?.path !== v.value.at(-1)?.path && ($e.value = [...$e.value.slice(0, ee.value + 1), L], ee.value++), J(L));
1233
+ function ue(L) {
1234
+ r.value || (L.at(-1)?.path !== v.value.at(-1)?.path && ($e.value = [...$e.value.slice(0, ee.value + 1), L], ee.value++), H(L));
1213
1235
  }
1214
1236
  function oe(L) {
1215
- r.value || (ee.value += L, J($e.value[ee.value]));
1237
+ r.value || (ee.value += L, H($e.value[ee.value]));
1216
1238
  }
1217
1239
  function ke(L) {
1218
- C.value = { key: L?.key === "bytes" ? "size" : "name", direction: L?.direction ?? "asc" }, J(v.value);
1240
+ C.value = { key: L?.key === "bytes" ? "size" : "name", direction: L?.direction ?? "asc" }, H(v.value);
1219
1241
  }
1220
1242
  function Ee() {
1221
- r.value || (T.value++, F.abort(), F = new AbortController(), d.value = [], $.value = [], z.value = void 0, $e.value = [[]], ee.value = 0, J([]));
1243
+ r.value || (T.value++, F.abort(), F = new AbortController(), d.value = [], $.value = [], z.value = void 0, $e.value = [[]], ee.value = 0, H([]));
1222
1244
  }
1223
1245
  return we(() => {
1224
- J([]);
1246
+ H([]);
1225
1247
  }), ge(() => {
1226
1248
  T.value++, F.abort();
1227
1249
  }), (L, V) => (l(), _("section", {
@@ -1229,12 +1251,12 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1229
1251
  "aria-busy": e(r),
1230
1252
  "aria-label": u.value.title
1231
1253
  }, [
1232
- S("div", Tl, [
1254
+ S("div", zl, [
1233
1255
  p(e(ua), {
1234
1256
  label: u.value.back,
1235
1257
  size: "sm",
1236
1258
  disabled: e(r) || ee.value === 0,
1237
- onClick: V[0] || (V[0] = (q) => oe(-1))
1259
+ onClick: V[0] || (V[0] = (O) => oe(-1))
1238
1260
  }, {
1239
1261
  default: s(() => [
1240
1262
  p(e(Ct), {
@@ -1248,7 +1270,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1248
1270
  label: u.value.forward,
1249
1271
  size: "sm",
1250
1272
  disabled: e(r) || ee.value === $e.value.length - 1,
1251
- onClick: V[1] || (V[1] = (q) => oe(1))
1273
+ onClick: V[1] || (V[1] = (O) => oe(1))
1252
1274
  }, {
1253
1275
  default: s(() => [
1254
1276
  p(e(Va), {
@@ -1277,27 +1299,27 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1277
1299
  "aria-label": u.value.location
1278
1300
  }, [
1279
1301
  p(e(bt), {
1280
- items: j.value,
1302
+ items: J.value,
1281
1303
  "collapsed-label": u.value.fullPath,
1282
1304
  onClickItem: ye
1283
1305
  }, null, 8, ["items", "collapsed-label"])
1284
- ], 8, zl)
1306
+ ], 8, Al)
1285
1307
  ]),
1286
- t.transfers && t.provider.upload && v.value.length ? (l(), _("div", Al, [
1308
+ t.transfers && t.provider.upload && v.value.length ? (l(), _("div", Rl, [
1287
1309
  p(e(gt), {
1288
1310
  modelValue: A.value,
1289
- "onUpdate:modelValue": V[2] || (V[2] = (q) => A.value = q),
1311
+ "onUpdate:modelValue": V[2] || (V[2] = (O) => A.value = O),
1290
1312
  variant: "compact",
1291
1313
  disabled: e(r),
1292
1314
  "max-files": 1,
1293
1315
  "max-size": 16 * 1024 ** 3,
1294
1316
  title: u.value.upload,
1295
- onRejected: V[3] || (V[3] = (q) => f.value = { code: "upload_size_required" })
1317
+ onRejected: V[3] || (V[3] = (O) => f.value = { code: "upload_size_required" })
1296
1318
  }, null, 8, ["modelValue", "disabled", "title"]),
1297
- p(e(D), {
1319
+ p(e(U), {
1298
1320
  variant: "primary",
1299
1321
  disabled: e(r) || !A.value.length,
1300
- onClick: G
1322
+ onClick: X
1301
1323
  }, {
1302
1324
  default: s(() => [
1303
1325
  h(o(u.value.upload), 1)
@@ -1305,29 +1327,29 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1305
1327
  _: 1
1306
1328
  }, 8, ["disabled"])
1307
1329
  ])) : y("", !0),
1308
- ae.value ? (l(), _("p", Rl, o(u.value.uploaded), 1)) : y("", !0),
1309
- t.transfers && t.provider.download && x.value && !x.value.isDir && !e(f) ? (l(), g(e(D), {
1330
+ ae.value ? (l(), _("p", Ul, o(u.value.uploaded), 1)) : y("", !0),
1331
+ t.transfers && t.provider.download && x.value && !x.value.isDir && !e(f) ? (l(), g(e(U), {
1310
1332
  key: 2,
1311
1333
  variant: "secondary",
1312
1334
  disabled: e(r),
1313
- onClick: H
1335
+ onClick: G
1314
1336
  }, {
1315
1337
  default: s(() => [
1316
1338
  h(o(u.value.download), 1)
1317
1339
  ]),
1318
1340
  _: 1
1319
1341
  }, 8, ["disabled"])) : y("", !0),
1320
- e(f) ? (l(), g(e(Y), {
1342
+ e(f) ? (l(), g(e(Q), {
1321
1343
  key: 3,
1322
1344
  tone: "danger"
1323
1345
  }, {
1324
1346
  default: s(() => [
1325
- S("span", Ul, o(e(Ta)(e(f), u.value, t.locale, t.name)), 1)
1347
+ S("span", Il, o(e(Ta)(e(f), u.value, t.locale, t.name)), 1)
1326
1348
  ]),
1327
1349
  _: 1
1328
1350
  })) : y("", !0),
1329
- e(r) ? (l(), _("p", Il, o(u.value.loading), 1)) : y("", !0),
1330
- S("div", Dl, [
1351
+ e(r) ? (l(), _("p", Dl, o(u.value.loading), 1)) : y("", !0),
1352
+ S("div", Nl, [
1331
1353
  S("aside", {
1332
1354
  class: "file-tree",
1333
1355
  "aria-label": u.value.roots
@@ -1336,21 +1358,21 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1336
1358
  key: T.value,
1337
1359
  "selection-style": "background",
1338
1360
  modelValue: z.value,
1339
- "onUpdate:modelValue": V[4] || (V[4] = (q) => z.value = q),
1361
+ "onUpdate:modelValue": V[4] || (V[4] = (O) => z.value = O),
1340
1362
  nodes: d.value,
1341
- "onUpdate:nodes": V[5] || (V[5] = (q) => d.value = q),
1363
+ "onUpdate:nodes": V[5] || (V[5] = (O) => d.value = O),
1342
1364
  expanded: $.value,
1343
- "onUpdate:expanded": V[6] || (V[6] = (q) => $.value = q),
1344
- "load-children": X,
1345
- "expand-label": (q, te) => e(We)(te ? u.value.collapse : u.value.expand, { name: q.label }),
1346
- onSelect: V[7] || (V[7] = (q) => ie(se(d.value, q.id) ?? [q.data]))
1365
+ "onUpdate:expanded": V[6] || (V[6] = (O) => $.value = O),
1366
+ "load-children": W,
1367
+ "expand-label": (O, te) => e(We)(te ? u.value.collapse : u.value.expand, { name: O.label }),
1368
+ onSelect: V[7] || (V[7] = (O) => ue(le(d.value, O.id) ?? [O.data]))
1347
1369
  }, null, 8, ["modelValue", "nodes", "expanded", "expand-label"])) : y("", !0)
1348
- ], 8, Nl),
1349
- S("div", Ll, [
1370
+ ], 8, Ll),
1371
+ S("div", Vl, [
1350
1372
  e(f) ? y("", !0) : (l(), g(e(kt), {
1351
1373
  key: 0,
1352
1374
  columns: B.value,
1353
- rows: m.value.map((q) => ({ ...q, kind: q.isDir ? u.value.directoryKind : u.value.fileKind })),
1375
+ rows: m.value.map((O) => ({ ...O, kind: O.isDir ? u.value.directoryKind : u.value.fileKind })),
1354
1376
  "row-key": "path",
1355
1377
  footer: !1,
1356
1378
  resizable: !1,
@@ -1361,29 +1383,29 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1361
1383
  sort: { key: C.value.key === "size" ? "bytes" : C.value.key, direction: C.value.direction },
1362
1384
  labels: { empty: u.value.emptyFolder },
1363
1385
  "single-select": "",
1364
- "selected-keys": E.value ? [E.value] : [],
1386
+ "selected-keys": P.value ? [P.value] : [],
1365
1387
  "onUpdate:sort": ke,
1366
- "onUpdate:selectedKeys": V[8] || (V[8] = (q) => {
1367
- e(r) || R(K(q[0]));
1388
+ "onUpdate:selectedKeys": V[8] || (V[8] = (O) => {
1389
+ e(r) || M(N(O[0]));
1368
1390
  }),
1369
- onRowActivate: V[9] || (V[9] = (q) => {
1370
- e(r) || Q(K(q.path));
1391
+ onRowActivate: V[9] || (V[9] = (O) => {
1392
+ e(r) || se(N(O.path));
1371
1393
  }),
1372
- onRowDblclick: V[10] || (V[10] = (q) => {
1373
- e(r) || Q(K(q.path));
1394
+ onRowDblclick: V[10] || (V[10] = (O) => {
1395
+ e(r) || se(N(O.path));
1374
1396
  })
1375
1397
  }, {
1376
- "cell-name": s(({ row: q }) => [
1377
- S("span", Vl, [
1398
+ "cell-name": s(({ row: O }) => [
1399
+ S("span", Bl, [
1378
1400
  p(e(ia), {
1379
- kind: q.isDir ? "folder" : "file",
1380
- name: q.name
1401
+ kind: O.isDir ? "folder" : "file",
1402
+ name: O.name
1381
1403
  }, null, 8, ["kind", "name"]),
1382
- h(o(q.name), 1)
1404
+ h(o(O.name), 1)
1383
1405
  ])
1384
1406
  ]),
1385
1407
  empty: s(() => [
1386
- S("div", Bl, [
1408
+ S("div", Fl, [
1387
1409
  p(e(ia), {
1388
1410
  kind: "folder",
1389
1411
  size: [40, 40]
@@ -1391,16 +1413,16 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1391
1413
  S("span", null, o(u.value.emptyFolder), 1)
1392
1414
  ])
1393
1415
  ]),
1394
- "cell-bytes": s(({ row: q }) => [
1395
- S("span", Fl, o(q.isDir || q.bytes === void 0 ? "—" : e(va)(q.bytes, e(pa)(t.locale))), 1)
1416
+ "cell-bytes": s(({ row: O }) => [
1417
+ S("span", ql, o(O.isDir || O.bytes === void 0 ? "—" : e(va)(O.bytes, e(pa)(t.locale))), 1)
1396
1418
  ]),
1397
1419
  _: 1
1398
1420
  }, 8, ["columns", "rows", "loading", "loading-text", "sort", "labels", "selected-keys"])),
1399
- k.value !== void 0 && !e(f) ? (l(), g(e(D), {
1421
+ k.value !== void 0 && !e(f) ? (l(), g(e(U), {
1400
1422
  key: 1,
1401
1423
  variant: "secondary",
1402
1424
  disabled: e(r),
1403
- onClick: V[11] || (V[11] = (q) => J(v.value, !0))
1425
+ onClick: V[11] || (V[11] = (O) => H(v.value, !0))
1404
1426
  }, {
1405
1427
  default: s(() => [
1406
1428
  h(o(u.value.loadMore), 1)
@@ -1409,13 +1431,13 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1409
1431
  }, 8, ["disabled"])) : y("", !0)
1410
1432
  ])
1411
1433
  ]),
1412
- x.value && !e(f) ? (l(), _("p", ql, o(e(We)(u.value.selected, { name: x.value.path })), 1)) : y("", !0)
1413
- ], 8, El));
1434
+ x.value && !e(f) ? (l(), _("p", Ol, o(e(We)(u.value.selected, { name: x.value.path })), 1)) : y("", !0)
1435
+ ], 8, Tl));
1414
1436
  }
1415
- }), Xa = /* @__PURE__ */ ve(Ol, [["__scopeId", "data-v-8133f935"]]), Ml = {
1437
+ }), Xa = /* @__PURE__ */ ve(Ml, [["__scopeId", "data-v-8133f935"]]), Kl = {
1416
1438
  key: 0,
1417
1439
  class: "save-consent"
1418
- }, Kl = ["aria-busy", "inert"], Hl = /* @__PURE__ */ ce({
1440
+ }, Hl = ["aria-busy", "inert"], Gl = /* @__PURE__ */ de({
1419
1441
  __name: "NasPicker",
1420
1442
  props: {
1421
1443
  open: { type: Boolean },
@@ -1440,7 +1462,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1440
1462
  function x() {
1441
1463
  f.value || (u.value = void 0, a("update:open", !1));
1442
1464
  }
1443
- async function E() {
1465
+ async function P() {
1444
1466
  const k = u.value, $ = n.destination, z = d;
1445
1467
  if (!(!k || f.value || !n.open || v || $ && n.mode !== "folder")) {
1446
1468
  if (!$) {
@@ -1483,7 +1505,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1483
1505
  })
1484
1506
  }, {
1485
1507
  footer: s(() => [
1486
- p(e(D), {
1508
+ p(e(U), {
1487
1509
  variant: "secondary",
1488
1510
  disabled: f.value,
1489
1511
  onClick: x
@@ -1493,10 +1515,10 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1493
1515
  ]),
1494
1516
  _: 1
1495
1517
  }, 8, ["disabled"]),
1496
- p(e(D), {
1518
+ p(e(U), {
1497
1519
  variant: "primary",
1498
1520
  disabled: !u.value || f.value || !!t.destination && t.mode !== "folder",
1499
- onClick: E
1521
+ onClick: P
1500
1522
  }, {
1501
1523
  default: s(() => [
1502
1524
  h(o(i.value.confirm), 1)
@@ -1505,8 +1527,8 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1505
1527
  }, 8, ["disabled"])
1506
1528
  ]),
1507
1529
  default: s(() => [
1508
- t.destination ? (l(), _("p", Ml, o(r.value.selection), 1)) : y("", !0),
1509
- m.value ? (l(), g(e(Y), {
1530
+ t.destination ? (l(), _("p", Kl, o(r.value.selection), 1)) : y("", !0),
1531
+ m.value ? (l(), g(e(Q), {
1510
1532
  key: 1,
1511
1533
  tone: "danger",
1512
1534
  role: "alert",
@@ -1530,16 +1552,16 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1530
1552
  mode: t.mode,
1531
1553
  onSelected: $[0] || ($[0] = (z) => u.value = z)
1532
1554
  }, null, 8, ["provider", "locale", "name", "mode"])) : y("", !0)
1533
- ], 8, Kl)
1555
+ ], 8, Hl)
1534
1556
  ]),
1535
1557
  _: 1
1536
1558
  }, 8, ["open", "title", "description", "close-label", "show-close"]));
1537
1559
  }
1538
- }), oa = /* @__PURE__ */ ve(Hl, [["__scopeId", "data-v-08be5e1e"]]), Gl = { role: "alert" }, Xl = { class: "files-actions" }, Wl = {
1560
+ }), oa = /* @__PURE__ */ ve(Gl, [["__scopeId", "data-v-08be5e1e"]]), Xl = { role: "alert" }, Wl = { class: "files-actions" }, Jl = {
1539
1561
  key: 0,
1540
1562
  class: "files-path",
1541
1563
  role: "status"
1542
- }, Jl = /* @__PURE__ */ ce({
1564
+ }, Yl = /* @__PURE__ */ de({
1543
1565
  __name: "FilesPage",
1544
1566
  props: {
1545
1567
  ctx: {}
@@ -1547,7 +1569,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1547
1569
  setup(t) {
1548
1570
  const c = t, n = b(), a = b(), u = b(!1), i = b("folder"), r = b(!1), f = b(""), m = b(0), d = za(c.ctx);
1549
1571
  let v = !1, x;
1550
- async function E() {
1572
+ async function P() {
1551
1573
  if (!v) {
1552
1574
  n.value = void 0, u.value = !1, f.value = "", r.value = !1, m.value++;
1553
1575
  try {
@@ -1558,14 +1580,14 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1558
1580
  }
1559
1581
  }
1560
1582
  }
1561
- return He(() => a.value, E), we(() => {
1583
+ return He(() => a.value, P), we(() => {
1562
1584
  x = c.ctx.reopen(() => {
1563
- E();
1564
- }), E();
1585
+ P();
1586
+ }), P();
1565
1587
  }), ge(() => {
1566
1588
  v = !0, x?.(), d.dispose();
1567
1589
  }), (k, $) => (l(), _(Z, null, [
1568
- a.value ? (l(), g(e(Y), {
1590
+ a.value ? (l(), g(e(Q), {
1569
1591
  key: 0,
1570
1592
  tone: "info",
1571
1593
  role: "status"
@@ -1575,15 +1597,15 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1575
1597
  ]),
1576
1598
  _: 1
1577
1599
  })) : y("", !0),
1578
- n.value ? (l(), g(e(Y), {
1600
+ n.value ? (l(), g(e(Q), {
1579
1601
  key: 1,
1580
1602
  tone: "danger"
1581
1603
  }, {
1582
1604
  default: s(() => [
1583
- S("span", Gl, o(e(Ta)(n.value, e(ze)(t.ctx.locale), t.ctx.locale, t.ctx.displayName)), 1),
1584
- p(e(D), {
1605
+ S("span", Xl, o(e(Ta)(n.value, e(ze)(t.ctx.locale), t.ctx.locale, t.ctx.displayName)), 1),
1606
+ p(e(U), {
1585
1607
  variant: "secondary",
1586
- onClick: E
1608
+ onClick: P
1587
1609
  }, {
1588
1610
  default: s(() => [
1589
1611
  h(o(e(ze)(t.ctx.locale).refresh), 1)
@@ -1600,8 +1622,8 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1600
1622
  collapsible: !1
1601
1623
  }, {
1602
1624
  default: s(() => [
1603
- S("div", Xl, [
1604
- p(e(D), {
1625
+ S("div", Wl, [
1626
+ p(e(U), {
1605
1627
  variant: "secondary",
1606
1628
  onClick: $[0] || ($[0] = (z) => {
1607
1629
  i.value = "folder", r.value = !0;
@@ -1612,7 +1634,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1612
1634
  ]),
1613
1635
  _: 1
1614
1636
  }),
1615
- p(e(D), {
1637
+ p(e(U), {
1616
1638
  variant: "secondary",
1617
1639
  onClick: $[1] || ($[1] = (z) => {
1618
1640
  i.value = "file", r.value = !0;
@@ -1624,7 +1646,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1624
1646
  _: 1
1625
1647
  })
1626
1648
  ]),
1627
- f.value ? (l(), _("p", Wl, [
1649
+ f.value ? (l(), _("p", Jl, [
1628
1650
  p(e(Le), { path: f.value }, null, 8, ["path"])
1629
1651
  ])) : y("", !0),
1630
1652
  (l(), g(Xa, {
@@ -1648,93 +1670,93 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1648
1670
  }, 8, ["title", "description"])) : y("", !0)
1649
1671
  ], 64));
1650
1672
  }
1651
- }), Ds = /* @__PURE__ */ ve(Jl, [["__scopeId", "data-v-b2e16764"]]), Yl = { role: "status" }, Ql = { role: "alert" }, ra = /* @__PURE__ */ new WeakMap(), Ns = /* @__PURE__ */ ce({
1673
+ }), Ns = /* @__PURE__ */ ve(Yl, [["__scopeId", "data-v-b2e16764"]]), Ql = { role: "status" }, jl = { role: "alert" }, ra = /* @__PURE__ */ new WeakMap(), Ls = /* @__PURE__ */ de({
1652
1674
  __name: "PortalSettings",
1653
1675
  props: {
1654
1676
  portal: {}
1655
1677
  },
1656
1678
  setup(t) {
1657
1679
  const c = t, n = Fa(), a = c.portal.messages, u = b(), i = b(""), r = b(!1), f = b(""), m = b(!0), d = b(!1), v = b(ra.get(c.portal));
1658
- let x = !1, E = !1;
1659
- function k(N) {
1660
- if (!E && (u.value = N, i.value = N.alias || N.defaultAlias, N.url))
1680
+ let x = !1, P = !1;
1681
+ function k(D) {
1682
+ if (!P && (u.value = D, i.value = D.alias || D.defaultAlias, D.url))
1661
1683
  try {
1662
- const P = new URL(N.url);
1663
- x ||= P.origin === window.location.origin && window.location.pathname.startsWith(P.pathname);
1684
+ const E = new URL(D.url);
1685
+ x ||= E.origin === window.location.origin && window.location.pathname.startsWith(E.pathname);
1664
1686
  } catch {
1665
1687
  }
1666
1688
  }
1667
1689
  const $ = c.portal.lastStatus?.();
1668
1690
  $ && k($);
1669
1691
  const z = 5e3, C = /* @__PURE__ */ Symbol("late");
1670
- async function T(N) {
1692
+ async function T(D) {
1671
1693
  if (r.value) return;
1672
1694
  r.value = !0, f.value = "";
1673
- const P = N();
1695
+ const E = D();
1674
1696
  try {
1675
- const R = await Promise.race([P, new Promise((Q) => setTimeout(() => Q(C), z))]);
1676
- if (R !== C) {
1677
- k(R);
1697
+ const M = await Promise.race([E, new Promise((se) => setTimeout(() => se(C), z))]);
1698
+ if (M !== C) {
1699
+ k(M);
1678
1700
  return;
1679
1701
  }
1680
1702
  k(await c.portal.status());
1681
1703
  try {
1682
- await P;
1704
+ await E;
1683
1705
  } finally {
1684
1706
  k(await c.portal.status());
1685
1707
  }
1686
- } catch (R) {
1687
- E || (f.value = a[R?.code || ""] || a.portal_unavailable);
1708
+ } catch (M) {
1709
+ P || (f.value = a[M?.code || ""] || a.portal_unavailable);
1688
1710
  } finally {
1689
- E || (r.value = !1);
1711
+ P || (r.value = !1);
1690
1712
  }
1691
1713
  }
1692
1714
  const A = w(() => !!u.value?.canManage && !!u.value.entry && u.value.entry !== "registered"), ae = w(() => {
1693
- const N = u.value;
1694
- if (N) {
1695
- if (A.value) return N.entry === "unregistered" ? a.entryOff : a.cleanupRequired;
1696
- if (N.state !== "active")
1697
- return N.canManage ? a.inactive : N.controlPanel ? void 0 : a.askAdmin;
1715
+ const D = u.value;
1716
+ if (D) {
1717
+ if (A.value) return D.entry === "unregistered" ? a.entryOff : a.cleanupRequired;
1718
+ if (D.state !== "active")
1719
+ return D.canManage ? a.inactive : D.controlPanel ? void 0 : a.askAdmin;
1698
1720
  }
1699
1721
  }), F = a.link?.replace(/\s*[::]\s*$/, "");
1700
- async function H() {
1701
- const N = await c.portal.register();
1702
- return N.canManage && N.entry === "registered" && N.state === "inactive" ? (k(N), c.portal.apply(N.alias || N.defaultAlias)) : N;
1722
+ async function G() {
1723
+ const D = await c.portal.register();
1724
+ return D.canManage && D.entry === "registered" && D.state === "inactive" ? (k(D), c.portal.apply(D.alias || D.defaultAlias)) : D;
1703
1725
  }
1704
- function G() {
1726
+ function X() {
1705
1727
  !r.value && !v.value && c.portal.status().then(k, () => {
1706
1728
  }).finally(() => {
1707
- E || (m.value = !1);
1729
+ P || (m.value = !1);
1708
1730
  });
1709
1731
  }
1710
1732
  function B() {
1711
1733
  x ? d.value = !0 : T(() => c.portal.unregister());
1712
1734
  }
1713
- async function M() {
1735
+ async function K() {
1714
1736
  if (d.value = !1, !r.value) {
1715
1737
  r.value = !0, v.value = "removalUnconfirmed", ra.set(c.portal, v.value);
1716
1738
  try {
1717
1739
  await c.portal.unregister(), v.value = "removedFromPage", ra.set(c.portal, v.value);
1718
1740
  } catch {
1719
1741
  } finally {
1720
- E || (r.value = !1);
1742
+ P || (r.value = !1);
1721
1743
  }
1722
1744
  }
1723
1745
  }
1724
1746
  return we(() => {
1725
- n.subscribe?.(G), G();
1747
+ n.subscribe?.(X), X();
1726
1748
  }), ge(() => {
1727
- E = !0;
1728
- }), (N, P) => (l(), _(Z, null, [
1749
+ P = !0;
1750
+ }), (D, E) => (l(), _(Z, null, [
1729
1751
  v.value ? (l(), g(e(_e), {
1730
1752
  key: 0,
1731
1753
  title: e(a).title,
1732
1754
  collapsible: !1
1733
1755
  }, {
1734
1756
  default: s(() => [
1735
- p(e(Y), { tone: "info" }, {
1757
+ p(e(Q), { tone: "info" }, {
1736
1758
  default: s(() => [
1737
- S("span", Yl, o(e(a)[v.value]), 1)
1759
+ S("span", Ql, o(e(a)[v.value]), 1)
1738
1760
  ]),
1739
1761
  _: 1
1740
1762
  }),
@@ -1777,7 +1799,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1777
1799
  }, 8, ["label"])) : y("", !0),
1778
1800
  u.value.canManage && !A.value ? (l(), g(e(Ke), {
1779
1801
  key: 1,
1780
- onSubmit: P[3] || (P[3] = Me((R) => T(() => t.portal.apply(i.value)), ["prevent"]))
1802
+ onSubmit: E[3] || (E[3] = Me((M) => T(() => t.portal.apply(i.value)), ["prevent"]))
1781
1803
  }, {
1782
1804
  default: s(() => [
1783
1805
  p(e(xe), {
@@ -1787,7 +1809,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1787
1809
  p(e(Ae), {
1788
1810
  id: "portal-alias",
1789
1811
  modelValue: i.value,
1790
- "onUpdate:modelValue": P[0] || (P[0] = (R) => i.value = R),
1812
+ "onUpdate:modelValue": E[0] || (E[0] = (M) => i.value = M),
1791
1813
  "aria-label": e(a).alias,
1792
1814
  maxlength: "64",
1793
1815
  autocomplete: "off",
@@ -1803,7 +1825,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1803
1825
  default: s(() => [
1804
1826
  p(e(sa), null, {
1805
1827
  default: s(() => [
1806
- p(e(D), {
1828
+ p(e(U), {
1807
1829
  type: "submit",
1808
1830
  variant: "primary",
1809
1831
  disabled: r.value
@@ -1813,27 +1835,27 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1813
1835
  ]),
1814
1836
  _: 1
1815
1837
  }, 8, ["disabled"]),
1816
- u.value.state === "active" ? (l(), g(e(D), {
1838
+ u.value.state === "active" ? (l(), g(e(U), {
1817
1839
  key: 0,
1818
1840
  variant: "secondary",
1819
1841
  disabled: r.value,
1820
- onClick: P[1] || (P[1] = (R) => T(() => t.portal.disable()))
1842
+ onClick: E[1] || (E[1] = (M) => T(() => t.portal.disable()))
1821
1843
  }, {
1822
1844
  default: s(() => [
1823
1845
  h(o(e(a).disable), 1)
1824
1846
  ]),
1825
1847
  _: 1
1826
1848
  }, 8, ["disabled"])) : y("", !0),
1827
- p(e(D), {
1849
+ p(e(U), {
1828
1850
  variant: "secondary",
1829
- onClick: P[2] || (P[2] = (R) => t.portal.openControlPanel())
1851
+ onClick: E[2] || (E[2] = (M) => t.portal.openControlPanel())
1830
1852
  }, {
1831
1853
  default: s(() => [
1832
1854
  h(o(e(a).advanced), 1)
1833
1855
  ]),
1834
1856
  _: 1
1835
1857
  }),
1836
- u.value.entry ? (l(), g(e(D), {
1858
+ u.value.entry ? (l(), g(e(U), {
1837
1859
  key: 1,
1838
1860
  variant: "secondary",
1839
1861
  disabled: r.value,
@@ -1853,24 +1875,24 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1853
1875
  ]),
1854
1876
  _: 1
1855
1877
  })) : y("", !0),
1856
- f.value ? (l(), g(e(Y), {
1878
+ f.value ? (l(), g(e(Q), {
1857
1879
  key: 2,
1858
1880
  tone: "danger"
1859
1881
  }, {
1860
1882
  default: s(() => [
1861
- S("span", Ql, o(f.value), 1)
1883
+ S("span", jl, o(f.value), 1)
1862
1884
  ]),
1863
1885
  _: 1
1864
1886
  })) : y("", !0)
1865
- ], 64)) : (l(!0), _(Z, { key: 0 }, pe([[e(F), "20px"], [e(a).alias, "32px"], ["", "32px"]], ([R, Q], K) => (l(), g(e(xe), {
1866
- key: K,
1867
- label: R,
1887
+ ], 64)) : (l(!0), _(Z, { key: 0 }, pe([[e(F), "20px"], [e(a).alias, "32px"], ["", "32px"]], ([M, se], N) => (l(), g(e(xe), {
1888
+ key: N,
1889
+ label: M,
1868
1890
  "data-placeholder-row": ""
1869
1891
  }, {
1870
1892
  default: s(() => [
1871
1893
  p(e(Ne), {
1872
1894
  width: "16rem",
1873
- height: Q
1895
+ height: se
1874
1896
  }, null, 8, ["height"])
1875
1897
  ]),
1876
1898
  _: 2
@@ -1881,17 +1903,17 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1881
1903
  u.value && A.value ? {
1882
1904
  name: "footer",
1883
1905
  fn: s(() => [
1884
- u.value.entry === "unregistered" ? (l(), g(e(D), {
1906
+ u.value.entry === "unregistered" ? (l(), g(e(U), {
1885
1907
  key: 0,
1886
1908
  variant: "primary",
1887
1909
  disabled: r.value,
1888
- onClick: P[4] || (P[4] = (R) => T(H))
1910
+ onClick: E[4] || (E[4] = (M) => T(G))
1889
1911
  }, {
1890
1912
  default: s(() => [
1891
1913
  h(o(e(a).register), 1)
1892
1914
  ]),
1893
1915
  _: 1
1894
- }, 8, ["disabled"])) : (l(), g(e(D), {
1916
+ }, 8, ["disabled"])) : (l(), g(e(U), {
1895
1917
  key: 1,
1896
1918
  variant: "primary",
1897
1919
  disabled: r.value,
@@ -1907,9 +1929,9 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1907
1929
  } : u.value && !u.value.canManage && u.value.controlPanel ? {
1908
1930
  name: "footer",
1909
1931
  fn: s(() => [
1910
- p(e(D), {
1932
+ p(e(U), {
1911
1933
  variant: "secondary",
1912
- onClick: P[5] || (P[5] = (R) => t.portal.openControlPanel())
1934
+ onClick: E[5] || (E[5] = (M) => t.portal.openControlPanel())
1913
1935
  }, {
1914
1936
  default: s(() => [
1915
1937
  h(o(e(a).controlPanel), 1)
@@ -1922,25 +1944,25 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1922
1944
  ]), 1032, ["title", "description", "aria-busy"])) : y("", !0),
1923
1945
  p(e(Be), {
1924
1946
  open: d.value,
1925
- "onUpdate:open": P[7] || (P[7] = (R) => d.value = R),
1947
+ "onUpdate:open": E[7] || (E[7] = (M) => d.value = M),
1926
1948
  title: e(a).unregister,
1927
1949
  description: e(a).removeFromPage,
1928
1950
  "close-label": e(a).cancel
1929
1951
  }, {
1930
1952
  footer: s(() => [
1931
- p(e(D), {
1953
+ p(e(U), {
1932
1954
  variant: "secondary",
1933
- onClick: P[6] || (P[6] = (R) => d.value = !1)
1955
+ onClick: E[6] || (E[6] = (M) => d.value = !1)
1934
1956
  }, {
1935
1957
  default: s(() => [
1936
1958
  h(o(e(a).cancel), 1)
1937
1959
  ]),
1938
1960
  _: 1
1939
1961
  }),
1940
- p(e(D), {
1962
+ p(e(U), {
1941
1963
  variant: "danger",
1942
1964
  disabled: r.value,
1943
- onClick: M
1965
+ onClick: K
1944
1966
  }, {
1945
1967
  default: s(() => [
1946
1968
  h(o(e(a).unregister), 1)
@@ -1952,7 +1974,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1952
1974
  }, 8, ["open", "title", "description", "close-label"])
1953
1975
  ], 64));
1954
1976
  }
1955
- }), jl = { class: "sf-state" }, Zl = { class: "sf-notices" }, en = { role: "status" }, an = { role: "alert" }, tn = /* @__PURE__ */ ce({
1977
+ }), Zl = { class: "sf-state" }, en = { class: "sf-notices" }, an = { role: "status" }, tn = { role: "alert" }, ln = /* @__PURE__ */ de({
1956
1978
  __name: "SharedFolderSettings",
1957
1979
  props: {
1958
1980
  shared: {},
@@ -1961,7 +1983,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
1961
1983
  setup(t) {
1962
1984
  const c = t, n = c.shared.messages, a = b(), u = b(!1), i = b(""), r = b("");
1963
1985
  let f = !1;
1964
- const m = { ready: "success", pending: "warning", missing: "danger", ambiguous: "danger" }, d = (A) => ({ account: a.value?.account ?? "", folder: A.name, access: n[A.required] ?? A.required }), v = (A, ae) => We(A, ae, c.locale), x = w(() => a.value?.folders.filter((A) => A.state !== "ready") ?? []), E = ya(c.locale ?? "en"), k = w(() => c.shared.canGrant());
1986
+ const m = { ready: "success", pending: "warning", missing: "danger", ambiguous: "danger" }, d = (A) => ({ account: a.value?.account ?? "", folder: A.name, access: n[A.required] ?? A.required }), v = (A, ae) => We(A, ae, c.locale), x = w(() => a.value?.folders.filter((A) => A.state !== "ready") ?? []), P = ya(c.locale ?? "en"), k = w(() => c.shared.canGrant());
1965
1987
  function $(A) {
1966
1988
  f || (a.value = A, u.value = !1);
1967
1989
  }
@@ -2021,7 +2043,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2021
2043
  "data-shared-folder": F.key
2022
2044
  }, {
2023
2045
  default: s(() => [
2024
- S("div", jl, [
2046
+ S("div", Zl, [
2025
2047
  p(e(Je), {
2026
2048
  tone: m[F.state],
2027
2049
  "data-shared-folder-state": F.state
@@ -2031,13 +2053,13 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2031
2053
  ]),
2032
2054
  _: 2
2033
2055
  }, 1032, ["tone", "data-shared-folder-state"]),
2034
- S("span", null, o(e(n).required) + o(e(E)) + o(e(n)[F.required]), 1),
2035
- S("span", null, o(e(n).granted) + o(e(E)) + o(e(n)[F.granted]), 1),
2036
- F.state === "pending" && k.value ? (l(), g(e(D), {
2056
+ S("span", null, o(e(n).required) + o(e(P)) + o(e(n)[F.required]), 1),
2057
+ S("span", null, o(e(n).granted) + o(e(P)) + o(e(n)[F.granted]), 1),
2058
+ F.state === "pending" && k.value ? (l(), g(e(U), {
2037
2059
  key: 0,
2038
2060
  variant: "primary",
2039
2061
  disabled: !!i.value,
2040
- onClick: (H) => C(F)
2062
+ onClick: (G) => C(F)
2041
2063
  }, {
2042
2064
  default: s(() => [
2043
2065
  h(o(e(n).grant), 1)
@@ -2048,14 +2070,14 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2048
2070
  ]),
2049
2071
  _: 2
2050
2072
  }, 1032, ["label", "data-shared-folder"]))), 128)),
2051
- S("div", Zl, [
2052
- (l(!0), _(Z, null, pe(x.value, (F) => (l(), g(e(Y), {
2073
+ S("div", en, [
2074
+ (l(!0), _(Z, null, pe(x.value, (F) => (l(), g(e(Q), {
2053
2075
  key: F.key,
2054
2076
  tone: "warning",
2055
2077
  "data-shared-folder-notice": ""
2056
2078
  }, {
2057
2079
  default: s(() => [
2058
- S("span", en, [
2080
+ S("span", an, [
2059
2081
  F.state === "pending" ? (l(), _(Z, { key: 0 }, [
2060
2082
  h(o(e(n).pendingNote) + " " + o(k.value ? "" : v(e(n).askAdmin, d(F))) + " " + o(v(e(n).steps, d(F))), 1)
2061
2083
  ], 64)) : F.state === "missing" ? (l(), _(Z, { key: 1 }, [
@@ -2067,12 +2089,12 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2067
2089
  ]),
2068
2090
  _: 2
2069
2091
  }, 1024))), 128)),
2070
- r.value ? (l(), g(e(Y), {
2092
+ r.value ? (l(), g(e(Q), {
2071
2093
  key: 0,
2072
2094
  tone: "danger"
2073
2095
  }, {
2074
2096
  default: s(() => [
2075
- S("span", an, o(r.value), 1)
2097
+ S("span", tn, o(r.value), 1)
2076
2098
  ]),
2077
2099
  _: 1
2078
2100
  })) : y("", !0)
@@ -2083,7 +2105,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2083
2105
  x.value.some((F) => F.state === "pending") ? {
2084
2106
  name: "footer",
2085
2107
  fn: s(() => [
2086
- p(e(D), {
2108
+ p(e(U), {
2087
2109
  variant: "secondary",
2088
2110
  onClick: ae[0] || (ae[0] = (F) => t.shared.openControlPanel())
2089
2111
  }, {
@@ -2097,10 +2119,10 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2097
2119
  } : void 0
2098
2120
  ]), 1032, ["title", "aria-busy"])) : y("", !0);
2099
2121
  }
2100
- }), Ls = /* @__PURE__ */ ve(tn, [["__scopeId", "data-v-273cff49"]]), ln = { class: "shared-folder-permission-issues" }, nn = {
2122
+ }), Vs = /* @__PURE__ */ ve(ln, [["__scopeId", "data-v-273cff49"]]), nn = { class: "shared-folder-permission-issues" }, sn = {
2101
2123
  key: 0,
2102
2124
  role: "alert"
2103
- }, sn = /* @__PURE__ */ ce({
2125
+ }, on = /* @__PURE__ */ de({
2104
2126
  __name: "SharedFolderPermissionDialog",
2105
2127
  props: {
2106
2128
  permission: {}
@@ -2137,7 +2159,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2137
2159
  "close-label": t.permission.messages.dismiss
2138
2160
  }, {
2139
2161
  footer: s(() => [
2140
- p(e(D), {
2162
+ p(e(U), {
2141
2163
  variant: "secondary",
2142
2164
  onClick: v[0] || (v[0] = (x) => t.permission.openControlPanel())
2143
2165
  }, {
@@ -2146,7 +2168,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2146
2168
  ]),
2147
2169
  _: 1
2148
2170
  }),
2149
- p(e(D), {
2171
+ p(e(U), {
2150
2172
  variant: "secondary",
2151
2173
  onClick: v[1] || (v[1] = (x) => n.value = !1)
2152
2174
  }, {
@@ -2155,7 +2177,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2155
2177
  ]),
2156
2178
  _: 1
2157
2179
  }),
2158
- p(e(D), {
2180
+ p(e(U), {
2159
2181
  variant: "primary",
2160
2182
  disabled: u.value,
2161
2183
  onClick: m
@@ -2167,20 +2189,20 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2167
2189
  }, 8, ["disabled"])
2168
2190
  ]),
2169
2191
  default: s(() => [
2170
- S("ul", ln, [
2192
+ S("ul", nn, [
2171
2193
  (l(!0), _(Z, null, pe(a.value, (x) => (l(), _("li", {
2172
2194
  key: JSON.stringify([x.account, x.share, x.required])
2173
2195
  }, o(t.permission.message(x)), 1))), 128))
2174
2196
  ]),
2175
- i.value ? (l(), _("p", nn, o(t.permission.messages.shared_folder_unavailable), 1)) : y("", !0)
2197
+ i.value ? (l(), _("p", sn, o(t.permission.messages.shared_folder_unavailable), 1)) : y("", !0)
2176
2198
  ]),
2177
2199
  _: 1
2178
2200
  }, 8, ["open", "title", "description", "close-label"])) : y("", !0);
2179
2201
  }
2180
- }), Vs = /* @__PURE__ */ ve(sn, [["__scopeId", "data-v-360e834c"]]), on = ["aria-busy"], un = { role: "alert" }, rn = {
2202
+ }), Bs = /* @__PURE__ */ ve(on, [["__scopeId", "data-v-360e834c"]]), un = ["aria-busy"], rn = { role: "alert" }, dn = {
2181
2203
  key: 2,
2182
2204
  role: "status"
2183
- }, dn = { role: "alert" }, cn = { role: "status" }, vn = /* @__PURE__ */ ce({
2205
+ }, cn = { role: "alert" }, vn = { role: "status" }, fn = /* @__PURE__ */ de({
2184
2206
  __name: "LoginPage",
2185
2207
  props: {
2186
2208
  session: {},
@@ -2189,7 +2211,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2189
2211
  setup(t) {
2190
2212
  const c = t, n = w(() => Aa(c.locale)), a = b(""), u = b(""), i = b(""), r = b(!1), f = b(!1), m = b(""), d = b(), v = w(() => window.location.protocol === "https:");
2191
2213
  let x = !1;
2192
- function E(C) {
2214
+ function P(C) {
2193
2215
  const T = C?.code;
2194
2216
  return c.session.denied.value?.message || n.value.errors[T || ""] || n.value.errors.failed;
2195
2217
  }
@@ -2200,7 +2222,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2200
2222
  await c.session.login(a.value, u.value, i.value), u.value = "", i.value = "";
2201
2223
  } catch (C) {
2202
2224
  if (x) return;
2203
- i.value = "", C?.code === "otp_required" ? r.value = !0 : (m.value = E(C), u.value = "", r.value = !1);
2225
+ i.value = "", C?.code === "otp_required" ? r.value = !0 : (m.value = P(C), u.value = "", r.value = !1);
2204
2226
  } finally {
2205
2227
  x || (f.value = !1, r.value && (await rt(), x || d.value?.querySelector("input")?.focus()));
2206
2228
  }
@@ -2212,7 +2234,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2212
2234
  try {
2213
2235
  await c.session.bootstrap();
2214
2236
  } catch (C) {
2215
- x || (m.value = E(C));
2237
+ x || (m.value = P(C));
2216
2238
  } finally {
2217
2239
  x || (f.value = !1);
2218
2240
  }
@@ -2233,7 +2255,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2233
2255
  collapsible: !1
2234
2256
  }, {
2235
2257
  default: s(() => [
2236
- v.value ? y("", !0) : (l(), g(e(Y), {
2258
+ v.value ? y("", !0) : (l(), g(e(Q), {
2237
2259
  key: 0,
2238
2260
  tone: "warning",
2239
2261
  title: n.value.httpsTitle
@@ -2243,22 +2265,22 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2243
2265
  ]),
2244
2266
  _: 1
2245
2267
  }, 8, ["title"])),
2246
- t.session.denied.value ? (l(), g(e(Y), {
2268
+ t.session.denied.value ? (l(), g(e(Q), {
2247
2269
  key: 1,
2248
2270
  tone: "danger"
2249
2271
  }, {
2250
2272
  default: s(() => [
2251
- S("span", un, o(t.session.denied.value.message), 1)
2273
+ S("span", rn, o(t.session.denied.value.message), 1)
2252
2274
  ]),
2253
2275
  _: 1
2254
- })) : t.session.notice.value ? (l(), _("p", rn, o(n.value.notices[t.session.notice.value]), 1)) : y("", !0),
2255
- m.value && !t.session.denied.value ? (l(), g(e(Y), {
2276
+ })) : t.session.notice.value ? (l(), _("p", dn, o(n.value.notices[t.session.notice.value]), 1)) : y("", !0),
2277
+ m.value && !t.session.denied.value ? (l(), g(e(Q), {
2256
2278
  key: 3,
2257
2279
  tone: "danger",
2258
2280
  title: n.value.failedTitle
2259
2281
  }, {
2260
2282
  default: s(() => [
2261
- S("span", dn, o(m.value), 1)
2283
+ S("span", cn, o(m.value), 1)
2262
2284
  ]),
2263
2285
  _: 1
2264
2286
  }, 8, ["title"])) : y("", !0),
@@ -2281,7 +2303,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2281
2303
  _: 1
2282
2304
  }, 8, ["label"]),
2283
2305
  r.value ? (l(), _(Z, { key: 1 }, [
2284
- S("p", cn, o(n.value.otpPrompt), 1),
2306
+ S("p", vn, o(n.value.otpPrompt), 1),
2285
2307
  S("div", {
2286
2308
  ref_key: "otpField",
2287
2309
  ref: d
@@ -2318,7 +2340,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2318
2340
  }, 8, ["label"])),
2319
2341
  p(e(sa), null, {
2320
2342
  default: s(() => [
2321
- p(e(D), {
2343
+ p(e(U), {
2322
2344
  type: "submit",
2323
2345
  variant: "primary",
2324
2346
  disabled: f.value || !v.value || !a.value || !u.value || r.value && !i.value
@@ -2328,7 +2350,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2328
2350
  ]),
2329
2351
  _: 1
2330
2352
  }, 8, ["disabled"]),
2331
- r.value ? (l(), g(e(D), {
2353
+ r.value ? (l(), g(e(U), {
2332
2354
  key: 0,
2333
2355
  variant: "secondary",
2334
2356
  disabled: f.value,
@@ -2338,7 +2360,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2338
2360
  h(o(n.value.otherAccount), 1)
2339
2361
  ]),
2340
2362
  _: 1
2341
- }, 8, ["disabled"])) : (l(), g(e(D), {
2363
+ }, 8, ["disabled"])) : (l(), g(e(U), {
2342
2364
  key: 1,
2343
2365
  variant: "secondary",
2344
2366
  disabled: f.value || !v.value,
@@ -2358,128 +2380,128 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2358
2380
  ]),
2359
2381
  _: 1
2360
2382
  }, 8, ["title", "description"])
2361
- ], 8, on));
2383
+ ], 8, un));
2362
2384
  }
2363
- }), Bs = /* @__PURE__ */ ve(vn, [["__scopeId", "data-v-06b2efdb"]]), fn = { class: "integration-actions" }, pn = { role: "status" }, mn = { class: "integration-help" }, yn = { class: "integration-help" }, bn = { class: "integration-help" }, gn = { class: "integration-actions" }, hn = {
2385
+ }), Fs = /* @__PURE__ */ ve(fn, [["__scopeId", "data-v-06b2efdb"]]), pn = { class: "integration-actions" }, mn = { role: "status" }, yn = { class: "integration-help" }, bn = { class: "integration-help" }, gn = { class: "integration-help" }, hn = { class: "integration-actions" }, kn = {
2364
2386
  key: 0,
2365
2387
  role: "status",
2366
2388
  "data-bg-picked": "",
2367
2389
  class: "bg-path"
2368
- }, kn = { class: "integration-actions" }, _n = { key: 2 }, wn = {
2390
+ }, _n = { class: "integration-actions" }, wn = { key: 2 }, xn = {
2369
2391
  key: 3,
2370
2392
  class: "bg-cards"
2371
- }, xn = { class: "bg-card-body" }, Cn = {
2393
+ }, Cn = { class: "bg-card-body" }, $n = {
2372
2394
  key: 0,
2373
2395
  class: "integration-help"
2374
- }, $n = {
2396
+ }, Sn = {
2375
2397
  key: 1,
2376
2398
  class: "integration-help"
2377
- }, Sn = {
2399
+ }, Pn = {
2378
2400
  key: 2,
2379
2401
  class: "integration-help bg-path"
2380
- }, Pn = {
2402
+ }, En = {
2381
2403
  key: 3,
2382
2404
  class: "integration-help"
2383
- }, En = {
2405
+ }, Tn = {
2384
2406
  key: 4,
2385
2407
  class: "integration-help"
2386
- }, Tn = { class: "integration-actions" }, zn = { key: 1 }, An = {
2408
+ }, zn = { class: "integration-actions" }, An = { key: 1 }, Rn = {
2387
2409
  key: 2,
2388
2410
  class: "bg-cards"
2389
- }, Rn = { class: "bg-card-body" }, Un = {
2411
+ }, Un = { class: "bg-card-body" }, In = {
2390
2412
  key: 0,
2391
2413
  class: "integration-help"
2392
- }, In = {
2414
+ }, Dn = {
2393
2415
  key: 1,
2394
2416
  class: "integration-help"
2395
- }, Dn = { class: "integration-help" }, Nn = { class: "integration-actions" }, Ln = { class: "integration-actions" }, Vn = { class: "integration-actions" }, Bn = /* @__PURE__ */ ce({
2417
+ }, Nn = { class: "integration-help" }, Ln = { class: "integration-actions" }, Vn = { class: "integration-actions" }, Bn = { class: "integration-actions" }, Fn = /* @__PURE__ */ de({
2396
2418
  __name: "BackgroundPanel",
2397
2419
  props: {
2398
2420
  ctx: {}
2399
2421
  },
2400
2422
  setup(t, { expose: c }) {
2401
- const n = t, a = w(() => Qa(n.ctx.locale)), u = (U, W) => We(U, W, n.ctx.locale), i = b(), r = b([]), f = b(), m = b(!1), d = b(!1), v = b([]), x = b(), E = b(!1), k = b("3600"), $ = b(), z = b(), C = b(), T = b(!1), A = b(), ae = w(() => !i.value && !f.value && !m.value && !A.value), F = b(!1), H = b(), G = b(""), B = b(""), M = ja(n.ctx);
2402
- let N, P = !1;
2403
- const R = (U) => !["queued", "running"].includes(U.state), Q = (U) => R(U) && U.state !== "paused", K = (U) => U.state === "running" && U.pauseRequested, se = (U) => K(U) ? a.value.pausing : a.value[`state_${U.state}`], O = (U) => K(U) ? "warning" : { queued: "info", running: "info", paused: "warning", succeeded: "success", failed: "danger", canceled: "neutral", interrupted: "danger" }[U.state];
2404
- async function ne(U, W, I = !1) {
2423
+ const n = t, a = w(() => Qa(n.ctx.locale)), u = (R, Y) => We(R, Y, n.ctx.locale), i = b(), r = b([]), f = b(), m = b(!1), d = b(!1), v = b([]), x = b(), P = b(!1), k = b("3600"), $ = b(), z = b(), C = b(), T = b(!1), A = b(), ae = w(() => !i.value && !f.value && !m.value && !A.value), F = b(!1), G = b(), X = b(""), B = b(""), K = ja(n.ctx);
2424
+ let D, E = !1;
2425
+ const M = (R) => !["queued", "running"].includes(R.state), se = (R) => M(R) && R.state !== "paused", N = (R) => R.state === "running" && R.pauseRequested, le = (R) => N(R) ? a.value.pausing : a.value[`state_${R.state}`], q = (R) => N(R) ? "warning" : { queued: "info", running: "info", paused: "warning", succeeded: "success", failed: "danger", canceled: "neutral", interrupted: "danger" }[R.state];
2426
+ async function j(R, Y, I = !1) {
2405
2427
  try {
2406
- return await n.ctx.call(U, W);
2428
+ return await n.ctx.call(R, Y);
2407
2429
  } catch (me) {
2408
- if (P || I && (A.value = Se(me))) return;
2409
- me?.code === "unsupported" ? (m.value = !0, r.value = [], v.value = [], x.value = void 0, $.value = void 0, z.value = void 0, i.value = void 0, C.value = void 0, H.value = void 0, G.value && URL.revokeObjectURL(G.value), G.value = "") : P || (f.value = me);
2430
+ if (E || I && (A.value = Se(me))) return;
2431
+ me?.code === "unsupported" ? (m.value = !0, r.value = [], v.value = [], x.value = void 0, $.value = void 0, z.value = void 0, i.value = void 0, C.value = void 0, G.value = void 0, X.value && URL.revokeObjectURL(X.value), X.value = "") : E || (f.value = me);
2410
2432
  return;
2411
2433
  }
2412
2434
  }
2413
- async function ue() {
2414
- if (!(P || T.value)) {
2435
+ async function ie() {
2436
+ if (!(E || T.value)) {
2415
2437
  T.value = !0;
2416
2438
  try {
2417
- const U = await ne("bg.status", void 0, !0);
2418
- if (!U || P) return;
2419
- if (A.value = void 0, !U.limits || typeof U.admin != "boolean") {
2439
+ const R = await j("bg.status", void 0, !0);
2440
+ if (!R || E) return;
2441
+ if (A.value = void 0, !R.limits || typeof R.admin != "boolean") {
2420
2442
  f.value = { code: "unavailable" };
2421
2443
  return;
2422
2444
  }
2423
- m.value = !1, i.value = U;
2424
- const W = await ne("bg.jobs.list", void 0, !0);
2425
- W && !P && (r.value = W.jobs ?? []);
2426
- const I = await ne("bg.schedules.list", void 0, !0);
2427
- I && !P && (v.value = I.schedules ?? []), !P && r.value.every(R) && v.value.every((me) => !me.enabled) && N && (clearInterval(N), N = void 0);
2445
+ m.value = !1, i.value = R;
2446
+ const Y = await j("bg.jobs.list", void 0, !0);
2447
+ Y && !E && (r.value = Y.jobs ?? []);
2448
+ const I = await j("bg.schedules.list", void 0, !0);
2449
+ I && !E && (v.value = I.schedules ?? []), !E && r.value.every(M) && v.value.every((me) => !me.enabled) && D && (clearInterval(D), D = void 0);
2428
2450
  } finally {
2429
2451
  T.value = !1;
2430
2452
  }
2431
2453
  }
2432
2454
  }
2433
- function re() {
2434
- N || (N = setInterval(() => {
2435
- ue();
2455
+ function ce() {
2456
+ D || (D = setInterval(() => {
2457
+ ie();
2436
2458
  }, 3e3));
2437
2459
  }
2438
- async function X(U) {
2460
+ async function W(R) {
2439
2461
  if (!d.value) {
2440
2462
  d.value = !0, f.value = void 0;
2441
2463
  try {
2442
- await U(), await ue(), (v.value.some((W) => W.enabled) || r.value.some((W) => !R(W))) && re();
2464
+ await R(), await ie(), (v.value.some((Y) => Y.enabled) || r.value.some((Y) => !M(Y))) && ce();
2443
2465
  } finally {
2444
- P || (d.value = !1);
2466
+ E || (d.value = !1);
2445
2467
  }
2446
2468
  }
2447
2469
  }
2448
- const J = () => X(async () => {
2470
+ const H = () => W(async () => {
2449
2471
  if (!C.value) return;
2450
- await ne("bg.jobs.purge", { owner: C.value }) && (C.value = void 0);
2451
- }), j = w(() => [{ value: "3600", label: a.value.hourly }, { value: "86400", label: a.value.daily }, { value: "604800", label: a.value.weekly }]), ye = (U) => {
2452
- x.value = U, E.value = !1, k.value = "3600";
2453
- }, Ce = () => X(async () => {
2454
- if (!x.value || !E.value) return;
2455
- await ne("bg.schedules.create", { key: da(), jobId: x.value.id, intervalSeconds: Number(k.value), consent: !0 }) && (x.value = void 0);
2456
- }), $e = (U) => X(() => ne("bg.schedules.disable", { id: U })), ee = () => X(async () => {
2472
+ await j("bg.jobs.purge", { owner: C.value }) && (C.value = void 0);
2473
+ }), J = w(() => [{ value: "3600", label: a.value.hourly }, { value: "86400", label: a.value.daily }, { value: "604800", label: a.value.weekly }]), ye = (R) => {
2474
+ x.value = R, P.value = !1, k.value = "3600";
2475
+ }, Ce = () => W(async () => {
2476
+ if (!x.value || !P.value) return;
2477
+ await j("bg.schedules.create", { key: da(), jobId: x.value.id, intervalSeconds: Number(k.value), consent: !0 }) && (x.value = void 0);
2478
+ }), $e = (R) => W(() => j("bg.schedules.disable", { id: R })), ee = () => W(async () => {
2457
2479
  if (!$.value) return;
2458
- await ne("bg.schedules.delete", { id: $.value.id }) && ($.value = void 0);
2459
- }), ie = () => X(async () => {
2480
+ await j("bg.schedules.delete", { id: $.value.id }) && ($.value = void 0);
2481
+ }), ue = () => W(async () => {
2460
2482
  if (!z.value) return;
2461
- await ne("bg.schedules.enable", { id: z.value.id, consent: !0 }) && (z.value = void 0);
2462
- }), oe = (U) => {
2463
- const W = new Date(U);
2464
- return Number.isFinite(W.getTime()) ? W.toLocaleString() : a.value.unknownTime;
2465
- }, ke = (U) => U.copyRetained && U.state === "succeeded" && !U.scheduleId && U.submitter?.user === i.value?.owner?.user && U.submitter?.uid === i.value?.owner?.uid, Ee = (U) => X(() => ne("bg.jobs.cancel", { id: U })), L = (U) => X(() => ne("bg.jobs.pause", { id: U })), V = (U) => X(() => ne("bg.jobs.resume", { id: U })), q = (U) => {
2466
- const W = U.lastIndexOf("/");
2467
- H.value = { folder: U.slice(0, W), relative: U.slice(W + 1) };
2468
- }, te = () => X(async () => {
2469
- if (!H.value) return;
2470
- await ne("bg.jobs.submit", { key: da(), ...H.value }) && (H.value = void 0);
2483
+ await j("bg.schedules.enable", { id: z.value.id, consent: !0 }) && (z.value = void 0);
2484
+ }), oe = (R) => {
2485
+ const Y = new Date(R);
2486
+ return Number.isFinite(Y.getTime()) ? Y.toLocaleString() : a.value.unknownTime;
2487
+ }, ke = (R) => R.copyRetained && R.state === "succeeded" && !R.scheduleId && R.submitter?.user === i.value?.owner?.user && R.submitter?.uid === i.value?.owner?.uid, Ee = (R) => W(() => j("bg.jobs.cancel", { id: R })), L = (R) => W(() => j("bg.jobs.pause", { id: R })), V = (R) => W(() => j("bg.jobs.resume", { id: R })), O = (R) => {
2488
+ const Y = R.lastIndexOf("/");
2489
+ G.value = { folder: R.slice(0, Y), relative: R.slice(Y + 1) };
2490
+ }, te = () => W(async () => {
2491
+ if (!G.value) return;
2492
+ await j("bg.jobs.submit", { key: da(), ...G.value }) && (G.value = void 0);
2471
2493
  });
2472
- async function fe(U) {
2473
- const W = await ne("bg.jobs.result", { id: U.id });
2474
- !W || P || (G.value && URL.revokeObjectURL(G.value), G.value = URL.createObjectURL(new Blob([JSON.stringify(W.result, null, 2)], { type: "application/json" })), B.value = `${U.name || U.id}.sha256.json`);
2494
+ async function fe(R) {
2495
+ const Y = await j("bg.jobs.result", { id: R.id });
2496
+ !Y || E || (X.value && URL.revokeObjectURL(X.value), X.value = URL.createObjectURL(new Blob([JSON.stringify(Y.result, null, 2)], { type: "application/json" })), B.value = `${R.name || R.id}.sha256.json`);
2475
2497
  }
2476
- return He(() => A.value, ue), c({ refresh: ue }), we(() => {
2477
- ue().then(() => {
2478
- (v.value.some((U) => U.enabled) || r.value.some((U) => !R(U))) && re();
2498
+ return He(() => A.value, ie), c({ refresh: ie }), we(() => {
2499
+ ie().then(() => {
2500
+ (v.value.some((R) => R.enabled) || r.value.some((R) => !M(R))) && ce();
2479
2501
  });
2480
2502
  }), ge(() => {
2481
- P = !0, M.dispose(), N && clearInterval(N), G.value && URL.revokeObjectURL(G.value);
2482
- }), (U, W) => (l(), g(e(_e), {
2503
+ E = !0, K.dispose(), D && clearInterval(D), X.value && URL.revokeObjectURL(X.value);
2504
+ }), (R, Y) => (l(), g(e(_e), {
2483
2505
  "aria-busy": d.value || T.value || ae.value,
2484
2506
  title: a.value.title,
2485
2507
  description: m.value ? void 0 : a.value.help,
@@ -2487,7 +2509,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2487
2509
  "data-background-panel": ""
2488
2510
  }, {
2489
2511
  default: s(() => [
2490
- m.value ? (l(), g(e(Y), {
2512
+ m.value ? (l(), g(e(Q), {
2491
2513
  key: 0,
2492
2514
  tone: "warning"
2493
2515
  }, {
@@ -2496,7 +2518,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2496
2518
  ]),
2497
2519
  _: 1
2498
2520
  })) : (l(), _(Z, { key: 1 }, [
2499
- A.value ? (l(), g(e(Y), {
2521
+ A.value ? (l(), g(e(Q), {
2500
2522
  key: 0,
2501
2523
  tone: "info",
2502
2524
  role: "status"
@@ -2506,7 +2528,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2506
2528
  ]),
2507
2529
  _: 1
2508
2530
  })) : y("", !0),
2509
- f.value ? (l(), g(e(Y), {
2531
+ f.value ? (l(), g(e(Q), {
2510
2532
  key: 1,
2511
2533
  tone: "danger",
2512
2534
  role: "alert"
@@ -2526,8 +2548,8 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2526
2548
  height: "20px"
2527
2549
  }, null, 8, ["width"])
2528
2550
  ])), 64)),
2529
- S("div", fn, [
2530
- p(e(D), {
2551
+ S("div", pn, [
2552
+ p(e(U), {
2531
2553
  variant: "secondary",
2532
2554
  disabled: ""
2533
2555
  }, {
@@ -2536,7 +2558,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2536
2558
  ]),
2537
2559
  _: 1
2538
2560
  }),
2539
- p(e(D), {
2561
+ p(e(U), {
2540
2562
  variant: "primary",
2541
2563
  disabled: ""
2542
2564
  }, {
@@ -2548,24 +2570,24 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2548
2570
  ])
2549
2571
  ], 64)) : y("", !0),
2550
2572
  i.value ? (l(), _(Z, { key: 3 }, [
2551
- S("p", pn, o(i.value.worker?.alive ? u(a.value.workerRunning, { user: i.value.worker.username }) : a.value.workerStopped), 1),
2552
- S("p", mn, o(u(a.value.limits, { size: i.value.limits.maxInputBytes / 1024, queue: i.value.limits.maxQueued, seconds: i.value.limits.jobTimeoutSeconds })), 1),
2553
- S("p", yn, o(i.value.admin ? a.value.adminScope : a.value.ownerScope), 1),
2554
- S("p", bn, o(u(a.value.ownerLimits, { jobs: i.value.limits.maxOwnerPending, size: i.value.limits.maxOwnerBytes / 1024 })), 1),
2555
- S("div", gn, [
2556
- p(e(D), {
2573
+ S("p", mn, o(i.value.worker?.alive ? u(a.value.workerRunning, { user: i.value.worker.username }) : a.value.workerStopped), 1),
2574
+ S("p", yn, o(u(a.value.limits, { size: i.value.limits.maxInputBytes / 1024, queue: i.value.limits.maxQueued, seconds: i.value.limits.jobTimeoutSeconds })), 1),
2575
+ S("p", bn, o(i.value.admin ? a.value.adminScope : a.value.ownerScope), 1),
2576
+ S("p", gn, o(u(a.value.ownerLimits, { jobs: i.value.limits.maxOwnerPending, size: i.value.limits.maxOwnerBytes / 1024 })), 1),
2577
+ S("div", hn, [
2578
+ p(e(U), {
2557
2579
  variant: "secondary",
2558
2580
  disabled: d.value,
2559
- onClick: W[0] || (W[0] = (I) => F.value = !0)
2581
+ onClick: Y[0] || (Y[0] = (I) => F.value = !0)
2560
2582
  }, {
2561
2583
  default: s(() => [
2562
2584
  h(o(a.value.chooseFile), 1)
2563
2585
  ]),
2564
2586
  _: 1
2565
2587
  }, 8, ["disabled"]),
2566
- p(e(D), {
2588
+ p(e(U), {
2567
2589
  variant: "primary",
2568
- disabled: d.value || !H.value,
2590
+ disabled: d.value || !G.value,
2569
2591
  onClick: te
2570
2592
  }, {
2571
2593
  default: s(() => [
@@ -2574,44 +2596,44 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2574
2596
  _: 1
2575
2597
  }, 8, ["disabled"])
2576
2598
  ]),
2577
- H.value ? (l(), _("p", hn, [
2599
+ G.value ? (l(), _("p", kn, [
2578
2600
  h(o(u(a.value.chosen, { path: "" }).trim()) + " ", 1),
2579
2601
  p(e(Le), {
2580
- path: `${H.value.folder}/${H.value.relative}`
2602
+ path: `${G.value.folder}/${G.value.relative}`
2581
2603
  }, null, 8, ["path"])
2582
2604
  ])) : y("", !0),
2583
2605
  p(oa, {
2584
2606
  open: F.value,
2585
- "onUpdate:open": W[1] || (W[1] = (I) => F.value = I),
2607
+ "onUpdate:open": Y[1] || (Y[1] = (I) => F.value = I),
2586
2608
  locale: t.ctx.locale,
2587
2609
  name: t.ctx.displayName,
2588
- provider: e(M),
2610
+ provider: e(K),
2589
2611
  mode: "file",
2590
2612
  title: a.value.pickerTitle,
2591
2613
  description: a.value.pickerConsent,
2592
- onSelected: q
2614
+ onSelected: O
2593
2615
  }, null, 8, ["open", "locale", "name", "provider", "title", "description"]),
2594
- C.value && i.value.admin ? (l(), g(e(Y), {
2616
+ C.value && i.value.admin ? (l(), g(e(Q), {
2595
2617
  key: 1,
2596
2618
  tone: "warning"
2597
2619
  }, {
2598
2620
  default: s(() => [
2599
2621
  S("p", null, o(u(a.value.purgeConfirm, { user: C.value.user, uid: C.value.uid })), 1),
2600
- S("div", kn, [
2601
- p(e(D), {
2622
+ S("div", _n, [
2623
+ p(e(U), {
2602
2624
  variant: "secondary",
2603
2625
  disabled: d.value,
2604
- onClick: J
2626
+ onClick: H
2605
2627
  }, {
2606
2628
  default: s(() => [
2607
2629
  h(o(a.value.confirmPurge), 1)
2608
2630
  ]),
2609
2631
  _: 1
2610
2632
  }, 8, ["disabled"]),
2611
- p(e(D), {
2633
+ p(e(U), {
2612
2634
  variant: "secondary",
2613
2635
  disabled: d.value,
2614
- onClick: W[2] || (W[2] = (I) => C.value = void 0)
2636
+ onClick: Y[2] || (Y[2] = (I) => C.value = void 0)
2615
2637
  }, {
2616
2638
  default: s(() => [
2617
2639
  h(o(a.value.keepJobs), 1)
@@ -2622,7 +2644,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2622
2644
  ]),
2623
2645
  _: 1
2624
2646
  })) : y("", !0),
2625
- r.value.length ? (l(), _("div", wn, [
2647
+ r.value.length ? (l(), _("div", xn, [
2626
2648
  (l(!0), _(Z, null, pe(r.value, (I) => (l(), g(e(Ca), {
2627
2649
  key: I.id,
2628
2650
  title: I.name,
@@ -2632,29 +2654,29 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2632
2654
  }, {
2633
2655
  "header-actions": s(() => [
2634
2656
  p(e(Je), {
2635
- tone: O(I),
2657
+ tone: q(I),
2636
2658
  "data-bg-state": ""
2637
2659
  }, {
2638
2660
  default: s(() => [
2639
- h(o(se(I)), 1)
2661
+ h(o(le(I)), 1)
2640
2662
  ]),
2641
2663
  _: 2
2642
2664
  }, 1032, ["tone"])
2643
2665
  ]),
2644
2666
  default: s(() => [
2645
- S("div", xn, [
2646
- I.progress?.total ? (l(), _("span", Cn, o(u(a.value.progressItems, { done: I.progress.done, count: I.progress.total })), 1)) : y("", !0),
2647
- I.progress?.totalBytes ? (l(), _("span", $n, o(u(a.value.progressBytes, { done: e(va)(I.progress.bytes, t.ctx.locale), total: e(va)(I.progress.totalBytes, t.ctx.locale) })), 1)) : y("", !0),
2648
- I.progress?.item ? (l(), _("span", Sn, [
2667
+ S("div", Cn, [
2668
+ I.progress?.total ? (l(), _("span", $n, o(u(a.value.progressItems, { done: I.progress.done, count: I.progress.total })), 1)) : y("", !0),
2669
+ I.progress?.totalBytes ? (l(), _("span", Sn, o(u(a.value.progressBytes, { done: e(va)(I.progress.bytes, t.ctx.locale), total: e(va)(I.progress.totalBytes, t.ctx.locale) })), 1)) : y("", !0),
2670
+ I.progress?.item ? (l(), _("span", Pn, [
2649
2671
  h(o(u(a.value.progressItem, { item: "" }).trim()) + " ", 1),
2650
2672
  p(e(Le), {
2651
2673
  path: I.progress.item
2652
2674
  }, null, 8, ["path"])
2653
2675
  ])) : y("", !0),
2654
- i.value.admin && I.submitter ? (l(), _("span", Pn, o(u(a.value.owner, { user: I.submitter.user, uid: I.submitter.uid })), 1)) : y("", !0),
2655
- I.scheduleId ? (l(), _("span", En, o(a.value.scheduledJob), 1)) : y("", !0),
2656
- S("div", Tn, [
2657
- i.value.admin && I.submitter ? (l(), g(e(D), {
2676
+ i.value.admin && I.submitter ? (l(), _("span", En, o(u(a.value.owner, { user: I.submitter.user, uid: I.submitter.uid })), 1)) : y("", !0),
2677
+ I.scheduleId ? (l(), _("span", Tn, o(a.value.scheduledJob), 1)) : y("", !0),
2678
+ S("div", zn, [
2679
+ i.value.admin && I.submitter ? (l(), g(e(U), {
2658
2680
  key: 0,
2659
2681
  variant: "secondary",
2660
2682
  disabled: d.value,
@@ -2665,7 +2687,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2665
2687
  ]),
2666
2688
  _: 1
2667
2689
  }, 8, ["disabled", "onClick"])) : y("", !0),
2668
- !R(I) && !I.pauseRequested && !I.delegation_id ? (l(), g(e(D), {
2690
+ !M(I) && !I.pauseRequested && !I.delegation_id ? (l(), g(e(U), {
2669
2691
  key: 1,
2670
2692
  variant: "secondary",
2671
2693
  disabled: d.value,
@@ -2676,7 +2698,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2676
2698
  ]),
2677
2699
  _: 1
2678
2700
  }, 8, ["disabled", "onClick"])) : y("", !0),
2679
- I.state === "paused" || K(I) ? (l(), g(e(D), {
2701
+ I.state === "paused" || N(I) ? (l(), g(e(U), {
2680
2702
  key: 2,
2681
2703
  variant: "secondary",
2682
2704
  disabled: d.value,
@@ -2687,7 +2709,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2687
2709
  ]),
2688
2710
  _: 1
2689
2711
  }, 8, ["disabled", "onClick"])) : y("", !0),
2690
- Q(I) ? y("", !0) : (l(), g(e(D), {
2712
+ se(I) ? y("", !0) : (l(), g(e(U), {
2691
2713
  key: 3,
2692
2714
  variant: "secondary",
2693
2715
  disabled: d.value,
@@ -2698,7 +2720,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2698
2720
  ]),
2699
2721
  _: 1
2700
2722
  }, 8, ["disabled", "onClick"])),
2701
- ke(I) ? (l(), g(e(D), {
2723
+ ke(I) ? (l(), g(e(U), {
2702
2724
  key: 4,
2703
2725
  variant: "secondary",
2704
2726
  disabled: d.value,
@@ -2709,7 +2731,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2709
2731
  ]),
2710
2732
  _: 1
2711
2733
  }, 8, ["disabled", "onClick"])) : y("", !0),
2712
- I.state === "succeeded" ? (l(), g(e(D), {
2734
+ I.state === "succeeded" ? (l(), g(e(U), {
2713
2735
  key: 5,
2714
2736
  variant: "secondary",
2715
2737
  disabled: d.value,
@@ -2725,7 +2747,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2725
2747
  ]),
2726
2748
  _: 2
2727
2749
  }, 1032, ["title", "data-job-state", "data-job-id"]))), 128))
2728
- ])) : (l(), _("p", _n, o(a.value.noJobs), 1)),
2750
+ ])) : (l(), _("p", wn, o(a.value.noJobs), 1)),
2729
2751
  p(e(_e), {
2730
2752
  "data-bg-schedules": "",
2731
2753
  class: "bg-schedules",
@@ -2747,38 +2769,38 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2747
2769
  default: s(() => [
2748
2770
  p(e(ga), {
2749
2771
  modelValue: k.value,
2750
- "onUpdate:modelValue": W[3] || (W[3] = (I) => k.value = I),
2772
+ "onUpdate:modelValue": Y[3] || (Y[3] = (I) => k.value = I),
2751
2773
  "data-schedule-interval": "",
2752
- options: j.value,
2774
+ options: J.value,
2753
2775
  disabled: d.value
2754
2776
  }, null, 8, ["modelValue", "options", "disabled"])
2755
2777
  ]),
2756
2778
  _: 1
2757
2779
  }, 8, ["label"]),
2758
2780
  p(e(_t), {
2759
- modelValue: E.value,
2760
- "onUpdate:modelValue": W[4] || (W[4] = (I) => E.value = I),
2781
+ modelValue: P.value,
2782
+ "onUpdate:modelValue": Y[4] || (Y[4] = (I) => P.value = I),
2761
2783
  "data-schedule-consent": "",
2762
2784
  disabled: d.value,
2763
2785
  label: a.value.scheduleConsent
2764
2786
  }, null, 8, ["modelValue", "disabled", "label"]),
2765
2787
  p(e(sa), null, {
2766
2788
  default: s(() => [
2767
- p(e(D), {
2789
+ p(e(U), {
2768
2790
  type: "submit",
2769
2791
  variant: "primary",
2770
- disabled: d.value || !E.value
2792
+ disabled: d.value || !P.value
2771
2793
  }, {
2772
2794
  default: s(() => [
2773
2795
  h(o(a.value.createSchedule), 1)
2774
2796
  ]),
2775
2797
  _: 1
2776
2798
  }, 8, ["disabled"]),
2777
- p(e(D), {
2799
+ p(e(U), {
2778
2800
  type: "button",
2779
2801
  variant: "secondary",
2780
2802
  disabled: d.value,
2781
- onClick: W[5] || (W[5] = (I) => x.value = void 0)
2803
+ onClick: Y[5] || (Y[5] = (I) => x.value = void 0)
2782
2804
  }, {
2783
2805
  default: s(() => [
2784
2806
  h(o(a.value.cancel), 1)
@@ -2791,7 +2813,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2791
2813
  ]),
2792
2814
  _: 1
2793
2815
  })) : y("", !0),
2794
- v.value.length ? (l(), _("div", An, [
2816
+ v.value.length ? (l(), _("div", Rn, [
2795
2817
  (l(!0), _(Z, null, pe(v.value, (I) => (l(), g(e(Ca), {
2796
2818
  key: I.id,
2797
2819
  title: I.name,
@@ -2810,11 +2832,11 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2810
2832
  }, 1032, ["tone"])
2811
2833
  ]),
2812
2834
  default: s(() => [
2813
- S("div", Rn, [
2814
- i.value.admin ? (l(), _("span", Un, o(u(a.value.owner, { user: I.owner.user, uid: I.owner.uid })), 1)) : y("", !0),
2815
- I.enabled ? (l(), _("span", In, o(u(a.value.nextRun, { time: oe(I.nextAt) })), 1)) : y("", !0),
2816
- S("span", Dn, o(u(a.value.missedRuns, { count: I.missed })), 1),
2817
- I.reason === "worker-changed" ? (l(), g(e(Y), {
2835
+ S("div", Un, [
2836
+ i.value.admin ? (l(), _("span", In, o(u(a.value.owner, { user: I.owner.user, uid: I.owner.uid })), 1)) : y("", !0),
2837
+ I.enabled ? (l(), _("span", Dn, o(u(a.value.nextRun, { time: oe(I.nextAt) })), 1)) : y("", !0),
2838
+ S("span", Nn, o(u(a.value.missedRuns, { count: I.missed })), 1),
2839
+ I.reason === "worker-changed" ? (l(), g(e(Q), {
2818
2840
  key: 2,
2819
2841
  tone: "warning"
2820
2842
  }, {
@@ -2822,7 +2844,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2822
2844
  h(o(a.value.revisionChanged), 1)
2823
2845
  ]),
2824
2846
  _: 1
2825
- })) : I.reason === "input-unavailable" ? (l(), g(e(Y), {
2847
+ })) : I.reason === "input-unavailable" ? (l(), g(e(Q), {
2826
2848
  key: 3,
2827
2849
  tone: "warning"
2828
2850
  }, {
@@ -2831,8 +2853,8 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2831
2853
  ]),
2832
2854
  _: 1
2833
2855
  })) : y("", !0),
2834
- S("div", Nn, [
2835
- I.enabled ? (l(), g(e(D), {
2856
+ S("div", Ln, [
2857
+ I.enabled ? (l(), g(e(U), {
2836
2858
  key: 0,
2837
2859
  variant: "secondary",
2838
2860
  disabled: d.value,
@@ -2842,7 +2864,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2842
2864
  h(o(a.value.disableSchedule), 1)
2843
2865
  ]),
2844
2866
  _: 1
2845
- }, 8, ["disabled", "onClick"])) : i.value.admin ? (l(), g(e(D), {
2867
+ }, 8, ["disabled", "onClick"])) : i.value.admin ? (l(), g(e(U), {
2846
2868
  key: 1,
2847
2869
  variant: "secondary",
2848
2870
  disabled: d.value,
@@ -2853,7 +2875,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2853
2875
  ]),
2854
2876
  _: 1
2855
2877
  }, 8, ["disabled", "onClick"])) : y("", !0),
2856
- p(e(D), {
2878
+ p(e(U), {
2857
2879
  variant: "secondary",
2858
2880
  disabled: d.value,
2859
2881
  onClick: (me) => $.value = I
@@ -2868,15 +2890,15 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2868
2890
  ]),
2869
2891
  _: 2
2870
2892
  }, 1032, ["title", "data-schedule-id"]))), 128))
2871
- ])) : (l(), _("p", zn, o(a.value.noSchedules), 1)),
2872
- $.value ? (l(), g(e(Y), {
2893
+ ])) : (l(), _("p", An, o(a.value.noSchedules), 1)),
2894
+ $.value ? (l(), g(e(Q), {
2873
2895
  key: 3,
2874
2896
  tone: "warning"
2875
2897
  }, {
2876
2898
  default: s(() => [
2877
2899
  S("p", null, o(u(a.value.deleteScheduleConsent, { name: $.value.name })), 1),
2878
- S("div", Ln, [
2879
- p(e(D), {
2900
+ S("div", Vn, [
2901
+ p(e(U), {
2880
2902
  variant: "danger",
2881
2903
  disabled: d.value,
2882
2904
  onClick: ee
@@ -2886,10 +2908,10 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2886
2908
  ]),
2887
2909
  _: 1
2888
2910
  }, 8, ["disabled"]),
2889
- p(e(D), {
2911
+ p(e(U), {
2890
2912
  variant: "secondary",
2891
2913
  disabled: d.value,
2892
- onClick: W[6] || (W[6] = (I) => $.value = void 0)
2914
+ onClick: Y[6] || (Y[6] = (I) => $.value = void 0)
2893
2915
  }, {
2894
2916
  default: s(() => [
2895
2917
  h(o(a.value.cancel), 1)
@@ -2900,27 +2922,27 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2900
2922
  ]),
2901
2923
  _: 1
2902
2924
  })) : y("", !0),
2903
- z.value ? (l(), g(e(Y), {
2925
+ z.value ? (l(), g(e(Q), {
2904
2926
  key: 4,
2905
2927
  tone: "warning"
2906
2928
  }, {
2907
2929
  default: s(() => [
2908
2930
  S("p", null, o(u(a.value.enableScheduleConsent, { name: z.value.name })), 1),
2909
- S("div", Vn, [
2910
- p(e(D), {
2931
+ S("div", Bn, [
2932
+ p(e(U), {
2911
2933
  variant: "primary",
2912
2934
  disabled: d.value,
2913
- onClick: ie
2935
+ onClick: ue
2914
2936
  }, {
2915
2937
  default: s(() => [
2916
2938
  h(o(a.value.confirmEnableSchedule), 1)
2917
2939
  ]),
2918
2940
  _: 1
2919
2941
  }, 8, ["disabled"]),
2920
- p(e(D), {
2942
+ p(e(U), {
2921
2943
  variant: "secondary",
2922
2944
  disabled: d.value,
2923
- onClick: W[7] || (W[7] = (I) => z.value = void 0)
2945
+ onClick: Y[7] || (Y[7] = (I) => z.value = void 0)
2924
2946
  }, {
2925
2947
  default: s(() => [
2926
2948
  h(o(a.value.cancel), 1)
@@ -2934,9 +2956,9 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2934
2956
  ]),
2935
2957
  _: 1
2936
2958
  }, 8, ["title", "description"]),
2937
- G.value ? (l(), g(e(ca), {
2959
+ X.value ? (l(), g(e(ca), {
2938
2960
  key: 4,
2939
- href: G.value,
2961
+ href: X.value,
2940
2962
  download: B.value
2941
2963
  }, {
2942
2964
  default: s(() => [
@@ -2950,13 +2972,13 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2950
2972
  _: 1
2951
2973
  }, 8, ["aria-busy", "title", "description"]));
2952
2974
  }
2953
- }), Fs = /* @__PURE__ */ ve(Bn, [["__scopeId", "data-v-85ff7ec5"]]), Fn = ["inert", "aria-hidden"], qn = {
2975
+ }), qs = /* @__PURE__ */ ve(Fn, [["__scopeId", "data-v-85ff7ec5"]]), qn = ["inert", "aria-hidden"], On = {
2954
2976
  key: 3,
2955
2977
  class: "executor-approval"
2956
- }, On = {
2978
+ }, Mn = {
2957
2979
  key: 0,
2958
2980
  class: "executor-brand"
2959
- }, Mn = ["src"], Kn = /* @__PURE__ */ ce({
2981
+ }, Kn = ["src"], Hn = /* @__PURE__ */ de({
2960
2982
  __name: "ExecutorApproval",
2961
2983
  props: {
2962
2984
  admin: { type: Boolean },
@@ -2982,8 +3004,8 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2982
3004
  m || (i.value = void 0, u.value = "blocked");
2983
3005
  }
2984
3006
  }
2985
- const x = w(() => Se(i.value)), E = w(() => !!c.preload && !!n && (u.value === "ready" || u.value === "checking"));
2986
- return qe(Ba, w(() => E.value && u.value === "checking")), He(() => x.value, v), we(() => {
3007
+ const x = w(() => Se(i.value)), P = w(() => !!c.preload && !!n && (u.value === "ready" || u.value === "checking"));
3008
+ return qe(Ba, w(() => P.value && u.value === "checking")), He(() => x.value, v), we(() => {
2987
3009
  n && (n.subscribe?.((k) => {
2988
3010
  !m && !aa(k) && f(k);
2989
3011
  }), d = c.ctx?.reopen(() => {
@@ -2992,27 +3014,27 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
2992
3014
  }), ge(() => {
2993
3015
  m = !0, d?.();
2994
3016
  }), (k, $) => (l(), _(Z, null, [
2995
- E.value ? (l(), _("div", {
3017
+ P.value ? (l(), _("div", {
2996
3018
  key: 0,
2997
3019
  class: De(["executor-pages", { "executor-preloading": u.value === "checking" }]),
2998
3020
  inert: u.value === "checking" || void 0,
2999
3021
  "aria-hidden": u.value === "checking" ? "true" : void 0
3000
3022
  }, [
3001
3023
  he(k.$slots, "default", {}, void 0, !0)
3002
- ], 10, Fn)) : !e(n) || u.value === "ready" ? he(k.$slots, "default", {}, void 0, !0, 1) : y("", !0),
3024
+ ], 10, qn)) : !e(n) || u.value === "ready" ? he(k.$slots, "default", {}, void 0, !0, 1) : y("", !0),
3003
3025
  e(n) && u.value === "checking" ? (l(), g(e(Na), {
3004
3026
  key: 2,
3005
3027
  text: a.value.loading
3006
- }, null, 8, ["text"])) : e(n) && u.value !== "ready" ? (l(), _("div", qn, [
3007
- r.value ? (l(), _("header", On, [
3028
+ }, null, 8, ["text"])) : e(n) && u.value !== "ready" ? (l(), _("div", On, [
3029
+ r.value ? (l(), _("header", Mn, [
3008
3030
  r.value.appIcon ? (l(), _("img", {
3009
3031
  key: 0,
3010
3032
  src: r.value.appIcon,
3011
3033
  alt: ""
3012
- }, null, 8, Mn)) : y("", !0),
3034
+ }, null, 8, Kn)) : y("", !0),
3013
3035
  S("span", null, o(r.value.displayName), 1)
3014
3036
  ])) : y("", !0),
3015
- x.value ? (l(), g(e(Y), {
3037
+ x.value ? (l(), g(e(Q), {
3016
3038
  key: 1,
3017
3039
  tone: "info",
3018
3040
  role: "status"
@@ -3036,7 +3058,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3036
3058
  locale: t.locale,
3037
3059
  purpose: t.purpose,
3038
3060
  layout: "page"
3039
- }, null, 8, ["locale", "purpose"])) : (l(), g(e(Y), {
3061
+ }, null, 8, ["locale", "purpose"])) : (l(), g(e(Q), {
3040
3062
  key: 4,
3041
3063
  tone: "info"
3042
3064
  }, {
@@ -3048,89 +3070,89 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3048
3070
  ])) : y("", !0)
3049
3071
  ], 64));
3050
3072
  }
3051
- }), qs = /* @__PURE__ */ ve(Kn, [["__scopeId", "data-v-da0bbc2c"]]), Hn = {
3073
+ }), Os = /* @__PURE__ */ ve(Hn, [["__scopeId", "data-v-da0bbc2c"]]), Gn = {
3052
3074
  key: 2,
3053
3075
  role: "status"
3054
- }, Gn = {
3076
+ }, Xn = {
3055
3077
  key: 3,
3056
3078
  role: "status"
3057
- }, Xn = {
3079
+ }, Wn = {
3058
3080
  key: 0,
3059
3081
  role: "status",
3060
3082
  class: "destination"
3061
- }, Wn = {
3083
+ }, Jn = {
3062
3084
  key: 0,
3063
3085
  "data-placeholder-row": ""
3064
- }, Jn = { key: 1 }, Yn = {
3086
+ }, Yn = { key: 1 }, Qn = {
3065
3087
  key: 2,
3066
3088
  role: "list"
3067
- }, Qn = {
3089
+ }, jn = {
3068
3090
  key: 0,
3069
3091
  "data-placeholder-row": ""
3070
- }, jn = { key: 1 }, Zn = {
3092
+ }, Zn = { key: 1 }, es = {
3071
3093
  key: 2,
3072
3094
  role: "list"
3073
- }, es = /* @__PURE__ */ ce({
3095
+ }, as = /* @__PURE__ */ de({
3074
3096
  __name: "DelegatePanel",
3075
3097
  props: {
3076
3098
  ctx: {}
3077
3099
  },
3078
3100
  setup(t, { expose: c }) {
3079
- const n = t, a = w(() => Re(n.ctx.locale)), u = w(() => ya(n.ctx.locale)), i = za(n.ctx), r = b(), f = b([]), m = b([]), d = b(!1), v = b(), x = b(""), E = b(!1), k = b(""), $ = b(""), z = b("");
3101
+ const n = t, a = w(() => Re(n.ctx.locale)), u = w(() => ya(n.ctx.locale)), i = za(n.ctx), r = b(), f = b([]), m = b([]), d = b(!1), v = b(), x = b(""), P = b(!1), k = b(""), $ = b(""), z = b("");
3080
3102
  let C = !1, T, A;
3081
3103
  const ae = b();
3082
3104
  Oe([$, k, z], () => {
3083
3105
  A = void 0;
3084
3106
  }, { flush: "sync" });
3085
- const F = (X) => ["queued", "running", "waiting_executor"].includes(X.state), H = { waiting_executor: "info", queued: "info", running: "info", succeeded: "success", failed: "danger", canceled: "neutral", interrupted: "danger" }, G = w(() => m.value.some((X) => X.state === "waiting_executor")), B = ["EXECUTOR_UNAVAILABLE", "EXECUTOR_TIMEOUT"], M = w(() => G.value && B.includes(v.value?.code ?? "")), N = w(() => !r.value && !v.value && !ae.value), P = w(() => r.value && r.value.state !== "ready" && !(G.value && r.value.state === "needs-admin-approval" && B.includes(r.value.reason ?? "")));
3086
- async function R() {
3107
+ const F = (W) => ["queued", "running", "waiting_executor"].includes(W.state), G = { waiting_executor: "info", queued: "info", running: "info", succeeded: "success", failed: "danger", canceled: "neutral", interrupted: "danger" }, X = w(() => m.value.some((W) => W.state === "waiting_executor")), B = ["EXECUTOR_UNAVAILABLE", "EXECUTOR_TIMEOUT"], K = w(() => X.value && B.includes(v.value?.code ?? "")), D = w(() => !r.value && !v.value && !ae.value), E = w(() => r.value && r.value.state !== "ready" && !(X.value && r.value.state === "needs-admin-approval" && B.includes(r.value.reason ?? "")));
3108
+ async function M() {
3087
3109
  if (C) return;
3088
- const [X, J, j] = await Promise.allSettled([n.ctx.call("delegate.status"), n.ctx.call("delegate.list"), n.ctx.call("delegate.jobs.list")]);
3110
+ const [W, H, J] = await Promise.allSettled([n.ctx.call("delegate.status"), n.ctx.call("delegate.list"), n.ctx.call("delegate.jobs.list")]);
3089
3111
  if (C) return;
3090
- X.status === "fulfilled" && (r.value = X.value), J.status === "fulfilled" && (f.value = (J.value.delegations ?? []).filter((Ce) => !Ce.revoked)), j.status === "fulfilled" && (m.value = j.value.jobs ?? []);
3091
- const ye = [X, J, j].find((Ce) => Ce.status === "rejected");
3112
+ W.status === "fulfilled" && (r.value = W.value), H.status === "fulfilled" && (f.value = (H.value.delegations ?? []).filter((Ce) => !Ce.revoked)), J.status === "fulfilled" && (m.value = J.value.jobs ?? []);
3113
+ const ye = [W, H, J].find((Ce) => Ce.status === "rejected");
3092
3114
  if (ae.value = ye && Se(ye.reason), ye && !ae.value) throw ye.reason;
3093
3115
  }
3094
- async function Q(X) {
3116
+ async function se(W) {
3095
3117
  if (!(d.value || C)) {
3096
3118
  d.value = !0, v.value = void 0;
3097
3119
  try {
3098
- await X();
3099
- } catch (J) {
3100
- C || (v.value = J);
3120
+ await W();
3121
+ } catch (H) {
3122
+ C || (v.value = H);
3101
3123
  } finally {
3102
3124
  C || (d.value = !1);
3103
3125
  }
3104
3126
  }
3105
3127
  }
3106
- const K = () => Q(R);
3107
- He(() => ae.value, K);
3108
- const se = (X) => Q(async () => {
3109
- await n.ctx.call("delegate.revoke", { delegation_id: X }), await R();
3110
- }), O = (X) => Q(async () => {
3111
- const J = await n.ctx.call("delegate.jobs.cancel", { id: X });
3112
- C || (x.value = J.revocation_pending ? a.value.pending : ""), await R();
3113
- }), ne = w(() => r.value?.state === "ready" && !!k.value && !!$.value && !!z.value), ue = () => Q(async () => {
3114
- ne.value && (await n.ctx.call("delegate.jobs.submit", { key: A ?? (A = da()), url: $.value, dest: k.value, name: z.value }), C || ($.value = "", z.value = "", k.value = ""), await R());
3115
- }), re = (X) => {
3116
- const J = new Date(X);
3117
- return Number.isNaN(J.getTime()) ? "—" : J.toLocaleString(n.ctx.locale);
3128
+ const N = () => se(M);
3129
+ He(() => ae.value, N);
3130
+ const le = (W) => se(async () => {
3131
+ await n.ctx.call("delegate.revoke", { delegation_id: W }), await M();
3132
+ }), q = (W) => se(async () => {
3133
+ const H = await n.ctx.call("delegate.jobs.cancel", { id: W });
3134
+ C || (x.value = H.revocation_pending ? a.value.pending : ""), await M();
3135
+ }), j = w(() => r.value?.state === "ready" && !!k.value && !!$.value && !!z.value), ie = () => se(async () => {
3136
+ j.value && (await n.ctx.call("delegate.jobs.submit", { key: A ?? (A = da()), url: $.value, dest: k.value, name: z.value }), C || ($.value = "", z.value = "", k.value = ""), await M());
3137
+ }), ce = (W) => {
3138
+ const H = new Date(W);
3139
+ return Number.isNaN(H.getTime()) ? "—" : H.toLocaleString(n.ctx.locale);
3118
3140
  };
3119
- return c({ refresh: K }), we(() => {
3120
- K(), T = setInterval(() => {
3121
- m.value.some(F) && K();
3141
+ return c({ refresh: N }), we(() => {
3142
+ N(), T = setInterval(() => {
3143
+ m.value.some(F) && N();
3122
3144
  }, 3e3);
3123
3145
  }), ge(() => {
3124
3146
  C = !0, T && clearInterval(T), i.dispose();
3125
- }), (X, J) => (l(), g(e(_e), {
3147
+ }), (W, H) => (l(), g(e(_e), {
3126
3148
  title: a.value.title,
3127
3149
  description: a.value.help,
3128
3150
  collapsible: !1,
3129
- "aria-busy": d.value || N.value,
3151
+ "aria-busy": d.value || D.value,
3130
3152
  class: "delegate-panel"
3131
3153
  }, {
3132
3154
  default: s(() => [
3133
- v.value && !M.value ? (l(), g(e(Y), {
3155
+ v.value && !K.value ? (l(), g(e(Q), {
3134
3156
  key: 0,
3135
3157
  tone: "danger",
3136
3158
  role: "alert"
@@ -3140,7 +3162,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3140
3162
  ]),
3141
3163
  _: 1
3142
3164
  })) : y("", !0),
3143
- ae.value ? (l(), g(e(Y), {
3165
+ ae.value ? (l(), g(e(Q), {
3144
3166
  key: 1,
3145
3167
  tone: "info",
3146
3168
  role: "status"
@@ -3150,11 +3172,11 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3150
3172
  ]),
3151
3173
  _: 1
3152
3174
  })) : y("", !0),
3153
- x.value ? (l(), _("p", Hn, o(x.value), 1)) : y("", !0),
3154
- P.value ? (l(), _("p", Gn, o(r.value?.state === "needs-admin-approval" ? a.value.needs : a.value.blocked), 1)) : y("", !0),
3175
+ x.value ? (l(), _("p", Gn, o(x.value), 1)) : y("", !0),
3176
+ E.value ? (l(), _("p", Xn, o(r.value?.state === "needs-admin-approval" ? a.value.needs : a.value.blocked), 1)) : y("", !0),
3155
3177
  p(e(Ke), {
3156
3178
  direction: "vertical",
3157
- onSubmit: Me(ue, ["prevent"])
3179
+ onSubmit: Me(ie, ["prevent"])
3158
3180
  }, {
3159
3181
  default: s(() => [
3160
3182
  p(e(Pe), {
@@ -3165,7 +3187,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3165
3187
  p(e(Ae), {
3166
3188
  id: "delegate-url",
3167
3189
  modelValue: $.value,
3168
- "onUpdate:modelValue": J[0] || (J[0] = (j) => $.value = j),
3190
+ "onUpdate:modelValue": H[0] || (H[0] = (J) => $.value = J),
3169
3191
  type: "url",
3170
3192
  disabled: d.value || r.value?.state !== "ready"
3171
3193
  }, null, 8, ["modelValue", "disabled"])
@@ -3180,7 +3202,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3180
3202
  p(e(Ae), {
3181
3203
  id: "delegate-name",
3182
3204
  modelValue: z.value,
3183
- "onUpdate:modelValue": J[1] || (J[1] = (j) => z.value = j),
3205
+ "onUpdate:modelValue": H[1] || (H[1] = (J) => z.value = J),
3184
3206
  "data-file-name": "",
3185
3207
  disabled: d.value || r.value?.state !== "ready"
3186
3208
  }, null, 8, ["modelValue", "disabled"])
@@ -3188,27 +3210,27 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3188
3210
  _: 1
3189
3211
  }, 8, ["label"]),
3190
3212
  S("p", null, o(a.value.size), 1),
3191
- k.value ? (l(), _("p", Xn, [
3213
+ k.value ? (l(), _("p", Wn, [
3192
3214
  h(o(a.value.destination) + o(u.value), 1),
3193
3215
  p(e(Le), { path: k.value }, null, 8, ["path"])
3194
3216
  ])) : y("", !0),
3195
3217
  p(e(sa), null, {
3196
3218
  default: s(() => [
3197
- p(e(D), {
3219
+ p(e(U), {
3198
3220
  type: "button",
3199
3221
  variant: "secondary",
3200
3222
  disabled: d.value || r.value?.state !== "ready",
3201
- onClick: J[2] || (J[2] = (j) => E.value = !0)
3223
+ onClick: H[2] || (H[2] = (J) => P.value = !0)
3202
3224
  }, {
3203
3225
  default: s(() => [
3204
3226
  h(o(a.value.choose), 1)
3205
3227
  ]),
3206
3228
  _: 1
3207
3229
  }, 8, ["disabled"]),
3208
- p(e(D), {
3230
+ p(e(U), {
3209
3231
  type: "submit",
3210
3232
  variant: "primary",
3211
- disabled: d.value || !ne.value
3233
+ disabled: d.value || !j.value
3212
3234
  }, {
3213
3235
  default: s(() => [
3214
3236
  h(o(a.value.submit), 1)
@@ -3222,13 +3244,13 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3222
3244
  _: 1
3223
3245
  }),
3224
3246
  p(oa, {
3225
- open: E.value,
3226
- "onUpdate:open": J[3] || (J[3] = (j) => E.value = j),
3247
+ open: P.value,
3248
+ "onUpdate:open": H[3] || (H[3] = (J) => P.value = J),
3227
3249
  locale: t.ctx.locale,
3228
3250
  name: t.ctx.displayName,
3229
3251
  provider: e(i),
3230
3252
  mode: "folder",
3231
- onSelected: J[4] || (J[4] = (j) => k.value = j)
3253
+ onSelected: H[4] || (H[4] = (J) => k.value = J)
3232
3254
  }, null, 8, ["open", "locale", "name", "provider"]),
3233
3255
  p(e(_e), {
3234
3256
  title: a.value.downloads,
@@ -3236,38 +3258,38 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3236
3258
  class: "delegate-group"
3237
3259
  }, {
3238
3260
  default: s(() => [
3239
- N.value ? (l(), _("p", Wn, [
3261
+ D.value ? (l(), _("p", Jn, [
3240
3262
  p(e(Ne), {
3241
3263
  width: "12rem",
3242
3264
  height: "20px"
3243
3265
  })
3244
- ])) : !m.value.length && !v.value ? (l(), _("p", Jn, o(a.value.noJobs), 1)) : (l(), _("div", Yn, [
3245
- (l(!0), _(Z, null, pe(m.value, (j) => (l(), g(e($a), {
3246
- key: j.id,
3247
- title: j.name,
3248
- "data-job-state": j.state
3266
+ ])) : !m.value.length && !v.value ? (l(), _("p", Yn, o(a.value.noJobs), 1)) : (l(), _("div", Qn, [
3267
+ (l(!0), _(Z, null, pe(m.value, (J) => (l(), g(e($a), {
3268
+ key: J.id,
3269
+ title: J.name,
3270
+ "data-job-state": J.state
3249
3271
  }, na({
3250
3272
  meta: s(() => [
3251
3273
  p(e(Je), {
3252
- tone: H[j.state],
3253
- role: j.state === "waiting_executor" ? "status" : void 0,
3274
+ tone: G[J.state],
3275
+ role: J.state === "waiting_executor" ? "status" : void 0,
3254
3276
  "data-job-badge": ""
3255
3277
  }, {
3256
3278
  default: s(() => [
3257
- h(o(a.value[j.state]), 1)
3279
+ h(o(a.value[J.state]), 1)
3258
3280
  ]),
3259
3281
  _: 2
3260
3282
  }, 1032, ["tone", "role"])
3261
3283
  ]),
3262
3284
  _: 2
3263
3285
  }, [
3264
- F(j) ? {
3286
+ F(J) ? {
3265
3287
  name: "actions",
3266
3288
  fn: s(() => [
3267
- p(e(D), {
3289
+ p(e(U), {
3268
3290
  variant: "secondary",
3269
3291
  disabled: d.value,
3270
- onClick: (ye) => O(j.id)
3292
+ onClick: (ye) => q(J.id)
3271
3293
  }, {
3272
3294
  default: s(() => [
3273
3295
  h(o(a.value.cancel), 1)
@@ -3288,28 +3310,28 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3288
3310
  class: "delegate-group"
3289
3311
  }, {
3290
3312
  default: s(() => [
3291
- N.value ? (l(), _("p", Qn, [
3313
+ D.value ? (l(), _("p", jn, [
3292
3314
  p(e(Ne), {
3293
3315
  width: "12rem",
3294
3316
  height: "20px"
3295
3317
  })
3296
- ])) : !f.value.length && !v.value ? (l(), _("p", jn, o(a.value.noDelegations), 1)) : (l(), _("div", Zn, [
3297
- (l(!0), _(Z, null, pe(f.value, (j) => (l(), g(e($a), {
3298
- key: j.delegation_id
3318
+ ])) : !f.value.length && !v.value ? (l(), _("p", Zn, o(a.value.noDelegations), 1)) : (l(), _("div", es, [
3319
+ (l(!0), _(Z, null, pe(f.value, (J) => (l(), g(e($a), {
3320
+ key: J.delegation_id
3299
3321
  }, {
3300
3322
  title: s(() => [
3301
3323
  p(e(Le), {
3302
- path: j.path
3324
+ path: J.path
3303
3325
  }, null, 8, ["path"])
3304
3326
  ]),
3305
3327
  description: s(() => [
3306
- h(o(a.value.expires) + o(u.value) + o(re(j.expires_at)), 1)
3328
+ h(o(a.value.expires) + o(u.value) + o(ce(J.expires_at)), 1)
3307
3329
  ]),
3308
3330
  actions: s(() => [
3309
- p(e(D), {
3331
+ p(e(U), {
3310
3332
  variant: "secondary",
3311
3333
  disabled: d.value,
3312
- onClick: (ye) => se(j.delegation_id)
3334
+ onClick: (ye) => le(J.delegation_id)
3313
3335
  }, {
3314
3336
  default: s(() => [
3315
3337
  h(o(a.value.revoke), 1)
@@ -3327,19 +3349,19 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3327
3349
  _: 1
3328
3350
  }, 8, ["title", "description", "aria-busy"]));
3329
3351
  }
3330
- }), Os = /* @__PURE__ */ ve(es, [["__scopeId", "data-v-4f648674"]]), as = { class: "save-alert" }, ts = { "data-save-error": "" }, ls = { class: "save-alert" }, ns = {
3352
+ }), Ms = /* @__PURE__ */ ve(as, [["__scopeId", "data-v-4f648674"]]), ts = { class: "save-alert" }, ls = { "data-save-error": "" }, ns = { class: "save-alert" }, ss = {
3331
3353
  key: 0,
3332
3354
  class: "save-reason"
3333
- }, ss = {
3355
+ }, os = {
3334
3356
  key: 0,
3335
3357
  class: "save-reason"
3336
- }, os = { class: "save-alert" }, is = {
3358
+ }, is = { class: "save-alert" }, us = {
3337
3359
  key: 0,
3338
3360
  class: "save-help"
3339
- }, us = { class: "save-actions" }, rs = {
3361
+ }, rs = { class: "save-actions" }, ds = {
3340
3362
  key: 1,
3341
3363
  class: "save-none"
3342
- }, ds = /* @__PURE__ */ ce({
3364
+ }, cs = /* @__PURE__ */ de({
3343
3365
  __name: "BackgroundSaveSettings",
3344
3366
  props: {
3345
3367
  sdk: {},
@@ -3358,101 +3380,101 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3358
3380
  return a.locale;
3359
3381
  }, get ctx() {
3360
3382
  return m.value;
3361
- } }, ee), { password: v, busy: x, confirming: E, failure: k, passwordError: $, scope: z, chosen: C, options: T, dynamic: A, canConfirm: ae } = d, F = b(), H = b([]), G = b(!1), B = b(!1), M = b(), N = b(!1), P = b(!1), R = b(!1), Q = b(""), K = b(), se = w(() => K.value ?? (G.value ? Se(d.status.value) : void 0));
3362
- let O = !1;
3363
- async function ne() {
3364
- let de;
3383
+ } }, ee), { password: v, busy: x, confirming: P, failure: k, passwordError: $, scope: z, chosen: C, options: T, dynamic: A, canConfirm: ae } = d, F = b(), G = b([]), X = b(!1), B = b(!1), K = b(), D = b(!1), E = b(!1), M = b(!1), se = b(""), N = b(), le = w(() => N.value ?? (X.value ? Se(d.status.value) : void 0));
3384
+ let q = !1;
3385
+ async function j() {
3386
+ let re;
3365
3387
  try {
3366
- de = await a.sdk.status();
3367
- } catch (le) {
3368
- const Ue = Se(le);
3369
- if (!Ue && le?.code !== "EXECUTOR_UNAVAILABLE") throw le;
3370
- O || (K.value = Ue, G.value = !Ue, F.value = void 0, H.value = []);
3388
+ re = await a.sdk.status();
3389
+ } catch (ne) {
3390
+ const Ue = Se(ne);
3391
+ if (!Ue && ne?.code !== "EXECUTOR_UNAVAILABLE") throw ne;
3392
+ q || (N.value = Ue, X.value = !Ue, F.value = void 0, G.value = []);
3371
3393
  return;
3372
3394
  }
3373
- const be = await Promise.all((a.picker?.keys ?? []).map((le) => a.sdk.destination(le)));
3374
- O || (K.value = void 0, G.value = !1, F.value = de, H.value = be, u("destinations", be));
3395
+ const be = await Promise.all((a.picker?.keys ?? []).map((ne) => a.sdk.destination(ne)));
3396
+ q || (N.value = void 0, X.value = !1, F.value = re, G.value = be, u("destinations", be));
3375
3397
  }
3376
- async function ue(de) {
3377
- if (!(O || B.value)) {
3378
- B.value = !0, M.value = void 0, N.value = !1;
3398
+ async function ie(re) {
3399
+ if (!(q || B.value)) {
3400
+ B.value = !0, K.value = void 0, D.value = !1;
3379
3401
  try {
3380
- await de();
3402
+ await re();
3381
3403
  } catch (be) {
3382
- O || (M.value = be);
3404
+ q || (K.value = be);
3383
3405
  } finally {
3384
- O || (B.value = !1);
3406
+ q || (B.value = !1);
3385
3407
  }
3386
3408
  }
3387
3409
  }
3388
- const re = () => ue(ne), X = () => Promise.all([re(), a.admin ? d.refresh() : void 0]).then(() => {
3410
+ const ce = () => ie(j), W = () => Promise.all([ce(), a.admin ? d.refresh() : void 0]).then(() => {
3389
3411
  });
3390
- function J(de) {
3391
- u("authorized", de), re();
3412
+ function H(re) {
3413
+ u("authorized", re), ce();
3392
3414
  }
3393
- function j(de) {
3394
- O || (M.value = de, N.value = !0);
3415
+ function J(re) {
3416
+ q || (K.value = re, D.value = !0);
3395
3417
  }
3396
- const ye = w(() => N.value ? a.pickerErrorText?.(M.value) ?? je(M.value, i.value, "select", a.locale, a.ctx?.displayName) : je(M.value, i.value, "save", a.locale, a.ctx?.displayName)), Ce = (de) => ue(async () => {
3397
- if ((await a.sdk.revoke({ delegation_id: de }))?.revoked !== !0) throw { code: "commit-uncertain" };
3398
- await ne();
3399
- }), $e = () => ue(async () => {
3418
+ const ye = w(() => D.value ? a.pickerErrorText?.(K.value) ?? je(K.value, i.value, "select", a.locale, a.ctx?.displayName) : je(K.value, i.value, "save", a.locale, a.ctx?.displayName)), Ce = (re) => ie(async () => {
3419
+ if ((await a.sdk.revoke({ delegation_id: re }))?.revoked !== !0) throw { code: "commit-uncertain" };
3420
+ await j();
3421
+ }), $e = () => ie(async () => {
3400
3422
  if (a.admin) {
3401
3423
  if ((await a.sdk.enable())?.disabled !== !1) throw { code: "commit-uncertain" };
3402
- await ne();
3424
+ await j();
3403
3425
  }
3404
3426
  });
3405
3427
  async function ee() {
3406
- await ue(async () => {
3407
- if (O) return;
3408
- const de = await a.sdk.status(), be = z.value?.selection;
3409
- if (!O) {
3428
+ await ie(async () => {
3429
+ if (q) return;
3430
+ const re = await a.sdk.status(), be = z.value?.selection;
3431
+ if (!q) {
3410
3432
  if (A.value) {
3411
- const le = de.selection;
3412
- if (!be || !le || le.scope !== C.value || le.scope !== be.scope || le.generation !== be.generation || le.root !== be.root) throw { code: "commit-uncertain" };
3413
- const Ue = Q.value ? [Q.value] : a.picker?.keys ?? [];
3433
+ const ne = re.selection;
3434
+ if (!be || !ne || ne.scope !== C.value || ne.scope !== be.scope || ne.generation !== be.generation || ne.root !== be.root) throw { code: "commit-uncertain" };
3435
+ const Ue = se.value ? [se.value] : a.picker?.keys ?? [];
3414
3436
  for (const ha of Ue) {
3415
- if (O) return;
3437
+ if (q) return;
3416
3438
  let Ie;
3417
3439
  try {
3418
- Ie = await a.sdk.selectDestination({ key: ha, path: le.root });
3440
+ Ie = await a.sdk.selectDestination({ key: ha, path: ne.root });
3419
3441
  } catch (Ja) {
3420
- throw N.value = !0, Ja;
3442
+ throw D.value = !0, Ja;
3421
3443
  }
3422
- if (!Ie?.id || !Ie.username || Ie.path !== le.root || Ie.key !== ha || Ie.lifetime !== "until-revoked") throw { code: "commit-uncertain" };
3423
- if (O) return;
3444
+ if (!Ie?.id || !Ie.username || Ie.path !== ne.root || Ie.key !== ha || Ie.lifetime !== "until-revoked") throw { code: "commit-uncertain" };
3445
+ if (q) return;
3424
3446
  u("authorized", Ie);
3425
3447
  }
3426
3448
  }
3427
- O || (P.value = !1, u("confirmed"), await ne());
3449
+ q || (E.value = !1, u("confirmed"), await j());
3428
3450
  }
3429
3451
  });
3430
3452
  }
3431
- function ie(de) {
3432
- Q.value = de, a.admin && A.value ? P.value = !0 : R.value = !0;
3453
+ function ue(re) {
3454
+ se.value = re, a.admin && A.value ? E.value = !0 : M.value = !0;
3433
3455
  }
3434
- const oe = w(() => F.value?.selection), ke = w(() => !F.value && !G.value && !M.value && !se.value), Ee = w(() => G.value && (!a.admin || d.status.value?.state !== "blocked") || F.value?.scopeMode === "install-selected" && !oe.value), L = w(() => a.admin && G.value && d.status.value?.state === "blocked" && !d.status.value.retry), V = w(() => !!F.value && !Ee.value && !F.value.disabled), q = w(() => a.admin && (Ee.value || G.value && !!d.status.value?.retry)), te = w(() => a.picker ? oe.value ? tt(a.picker.provider, oe.value.root) : F.value?.scopeMode === "install-selected" ? void 0 : a.picker.provider : void 0), fe = (de) => a.picker?.labels?.[de] ?? i.value.folder, U = w(() => {
3435
- const de = k.value;
3436
- return !de || "confirm" in de ? "" : de.code === "session_ended" ? r.value.session : d.explain(de) ?? r.value.setupError;
3437
- }), W = w(() => a.admin && Ee.value && !P.value), I = w(() => x.value || B.value || d.error.value || !ae.value);
3456
+ const oe = w(() => F.value?.selection), ke = w(() => !F.value && !X.value && !K.value && !le.value), Ee = w(() => X.value && (!a.admin || d.status.value?.state !== "blocked") || F.value?.scopeMode === "install-selected" && !oe.value), L = w(() => a.admin && X.value && d.status.value?.state === "blocked" && !d.status.value.retry), V = w(() => !!F.value && !Ee.value && !F.value.disabled), O = w(() => a.admin && (Ee.value || X.value && !!d.status.value?.retry)), te = w(() => a.picker ? oe.value ? tt(a.picker.provider, oe.value.root) : F.value?.scopeMode === "install-selected" ? void 0 : a.picker.provider : void 0), fe = (re) => a.picker?.labels?.[re] ?? i.value.folder, R = w(() => {
3457
+ const re = k.value;
3458
+ return !re || "confirm" in re ? "" : re.code === "session_ended" ? r.value.session : d.explain(re) ?? r.value.setupError;
3459
+ }), Y = w(() => a.admin && Ee.value && !E.value), I = w(() => x.value || B.value || d.error.value || !ae.value);
3438
3460
  function me() {
3439
- P.value = !1, v.value = "", k.value = void 0, C.value = z.value?.selection?.scope ?? "";
3461
+ E.value = !1, v.value = "", k.value = void 0, C.value = z.value?.selection?.scope ?? "";
3440
3462
  }
3441
- return He(() => se.value, () => Promise.all([re(), a.admin ? d.refresh() : void 0])), c({ refresh: X }), we(() => {
3442
- re();
3463
+ return He(() => le.value, () => Promise.all([ce(), a.admin ? d.refresh() : void 0])), c({ refresh: W }), we(() => {
3464
+ ce();
3443
3465
  }), ge(() => {
3444
- O = !0;
3445
- }), (de, be) => (l(), g(e(_e), {
3466
+ q = !0;
3467
+ }), (re, be) => (l(), g(e(_e), {
3446
3468
  title: t.title ?? i.value.title,
3447
- description: Ee.value && !P.value ? void 0 : i.value.help,
3469
+ description: Ee.value && !E.value ? void 0 : i.value.help,
3448
3470
  collapsible: !1,
3449
3471
  "aria-busy": B.value || e(x) || ke.value,
3450
3472
  class: "background-save-settings"
3451
3473
  }, {
3452
3474
  default: s(() => [
3453
- ke.value ? (l(!0), _(Z, { key: 0 }, pe(t.picker?.keys ?? [], (le) => (l(), g(e(xe), {
3454
- key: le,
3455
- label: fe(le),
3475
+ ke.value ? (l(!0), _(Z, { key: 0 }, pe(t.picker?.keys ?? [], (ne) => (l(), g(e(xe), {
3476
+ key: ne,
3477
+ label: fe(ne),
3456
3478
  "field-width": "full",
3457
3479
  "data-placeholder-row": ""
3458
3480
  }, {
@@ -3463,29 +3485,29 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3463
3485
  })
3464
3486
  ]),
3465
3487
  _: 1
3466
- }, 8, ["label"]))), 128)) : se.value ? (l(), g(e(Y), {
3488
+ }, 8, ["label"]))), 128)) : le.value ? (l(), g(e(Q), {
3467
3489
  key: 1,
3468
3490
  tone: "info",
3469
3491
  role: "status"
3470
3492
  }, {
3471
3493
  default: s(() => [
3472
- h(o(e(Ve)(se.value, t.locale)), 1)
3494
+ h(o(e(Ve)(le.value, t.locale)), 1)
3473
3495
  ]),
3474
3496
  _: 1
3475
3497
  })) : (l(), _(Z, { key: 2 }, [
3476
- M.value ? (l(), g(e(Y), {
3498
+ K.value ? (l(), g(e(Q), {
3477
3499
  key: 0,
3478
3500
  tone: "danger",
3479
3501
  role: "alert"
3480
3502
  }, {
3481
3503
  default: s(() => [
3482
- S("span", as, [
3483
- S("span", ts, o(ye.value), 1),
3484
- p(e(D), {
3504
+ S("span", ts, [
3505
+ S("span", ls, o(ye.value), 1),
3506
+ p(e(U), {
3485
3507
  variant: "secondary",
3486
3508
  size: "sm",
3487
3509
  disabled: B.value,
3488
- onClick: re
3510
+ onClick: ce
3489
3511
  }, {
3490
3512
  default: s(() => [
3491
3513
  h(o(i.value.retry), 1)
@@ -3496,15 +3518,15 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3496
3518
  ]),
3497
3519
  _: 1
3498
3520
  })) : y("", !0),
3499
- e(d).error.value ? (l(), g(e(Y), {
3521
+ e(d).error.value ? (l(), g(e(Q), {
3500
3522
  key: 1,
3501
3523
  tone: "danger",
3502
3524
  role: "alert"
3503
3525
  }, {
3504
3526
  default: s(() => [
3505
- S("span", ls, [
3527
+ S("span", ns, [
3506
3528
  h(o(r.value.setupError), 1),
3507
- p(e(D), {
3529
+ p(e(U), {
3508
3530
  variant: "secondary",
3509
3531
  size: "sm",
3510
3532
  disabled: e(x),
@@ -3519,24 +3541,24 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3519
3541
  ]),
3520
3542
  _: 1
3521
3543
  })) : y("", !0),
3522
- U.value ? (l(), g(e(Y), {
3544
+ R.value ? (l(), g(e(Q), {
3523
3545
  key: 2,
3524
3546
  tone: "danger",
3525
3547
  role: "alert"
3526
3548
  }, {
3527
3549
  default: s(() => [
3528
- h(o(U.value), 1),
3529
- e(k) && "reason" in e(k) && e(k).reason ? (l(), _("span", ns, o(e(k).reason), 1)) : y("", !0)
3550
+ h(o(R.value), 1),
3551
+ e(k) && "reason" in e(k) && e(k).reason ? (l(), _("span", ss, o(e(k).reason), 1)) : y("", !0)
3530
3552
  ]),
3531
3553
  _: 1
3532
3554
  })) : y("", !0),
3533
- L.value ? (l(), g(e(Y), {
3555
+ L.value ? (l(), g(e(Q), {
3534
3556
  key: 3,
3535
3557
  tone: "warning"
3536
3558
  }, {
3537
3559
  default: s(() => [
3538
3560
  h(o(e(d).explain(e(d).status.value) ?? r.value.blocked), 1),
3539
- e(d).status.value?.reason ? (l(), _("span", ss, o(e(d).status.value.reason), 1)) : y("", !0)
3561
+ e(d).status.value?.reason ? (l(), _("span", os, o(e(d).status.value.reason), 1)) : y("", !0)
3540
3562
  ]),
3541
3563
  _: 1
3542
3564
  })) : Ee.value && !t.admin ? (l(), g(ta, {
@@ -3545,14 +3567,14 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3545
3567
  locale: t.locale,
3546
3568
  files: ""
3547
3569
  }, null, 8, ["locale"])) : y("", !0),
3548
- F.value?.disabled ? (l(), g(e(Y), {
3570
+ F.value?.disabled ? (l(), g(e(Q), {
3549
3571
  key: 5,
3550
3572
  tone: "warning"
3551
3573
  }, {
3552
3574
  default: s(() => [
3553
- S("span", os, [
3575
+ S("span", is, [
3554
3576
  S("span", null, o(i.value.disabled), 1),
3555
- t.admin ? (l(), g(e(D), {
3577
+ t.admin ? (l(), g(e(U), {
3556
3578
  key: 0,
3557
3579
  variant: "secondary",
3558
3580
  size: "sm",
@@ -3568,7 +3590,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3568
3590
  ]),
3569
3591
  _: 1
3570
3592
  })) : y("", !0),
3571
- V.value && H.value.some((le) => le.status === "reselection-required") ? (l(), g(e(Y), {
3593
+ V.value && G.value.some((ne) => ne.status === "reselection-required") ? (l(), g(e(Q), {
3572
3594
  key: 6,
3573
3595
  tone: "warning"
3574
3596
  }, {
@@ -3577,7 +3599,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3577
3599
  ]),
3578
3600
  _: 1
3579
3601
  })) : y("", !0),
3580
- q.value || P.value ? (l(), g(Xe(W.value ? ta : "div"), Ze(ba({ key: 7 }, W.value ? { admin: !0, locale: t.locale, files: !0, status: e(d).status.value } : {})), {
3602
+ O.value || E.value ? (l(), g(Xe(Y.value ? ta : "div"), Ze(ba({ key: 7 }, Y.value ? { admin: !0, locale: t.locale, files: !0, status: e(d).status.value } : {})), {
3581
3603
  default: s(() => [
3582
3604
  p(e(Ke), {
3583
3605
  direction: "vertical",
@@ -3585,18 +3607,18 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3585
3607
  onSubmit: Me(e(d).submit, ["prevent"])
3586
3608
  }, {
3587
3609
  default: s(() => [
3588
- P.value ? (l(), _("p", is, o(i.value.changeHelp), 1)) : y("", !0),
3610
+ E.value ? (l(), _("p", us, o(i.value.changeHelp), 1)) : y("", !0),
3589
3611
  e(A) ? (l(), g(e(Pe), {
3590
3612
  key: 1,
3591
3613
  label: i.value.folder,
3592
- description: W.value ? i.value.approveHelp : void 0,
3614
+ description: Y.value ? i.value.approveHelp : void 0,
3593
3615
  "data-save-row": "folder"
3594
3616
  }, {
3595
3617
  default: s(() => [
3596
3618
  p(e(ga), {
3597
3619
  id: "save-scope",
3598
3620
  modelValue: e(C),
3599
- "onUpdate:modelValue": be[0] || (be[0] = (le) => ea(C) ? C.value = le : null),
3621
+ "onUpdate:modelValue": be[0] || (be[0] = (ne) => ea(C) ? C.value = ne : null),
3600
3622
  options: e(T),
3601
3623
  disabled: e(x)
3602
3624
  }, null, 8, ["modelValue", "options", "disabled"])
@@ -3605,27 +3627,27 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3605
3627
  }, 8, ["label", "description"])) : y("", !0),
3606
3628
  p(e(Pe), {
3607
3629
  label: i.value.password,
3608
- description: e(E) ? r.value.confirmingHelp : W.value ? r.value.passwordNote : void 0,
3630
+ description: e(P) ? r.value.confirmingHelp : Y.value ? r.value.passwordNote : void 0,
3609
3631
  help: e($),
3610
3632
  "validate-status": e($) ? "error" : void 0,
3611
3633
  "validate-message-display-mode": "text"
3612
3634
  }, {
3613
- after: s(({ classes: le }) => [
3614
- p(e(D), {
3615
- class: De(le.afterItem),
3635
+ after: s(({ classes: ne }) => [
3636
+ p(e(U), {
3637
+ class: De(ne.afterItem),
3616
3638
  type: "submit",
3617
3639
  variant: "primary",
3618
- loading: e(E),
3640
+ loading: e(P),
3619
3641
  disabled: I.value
3620
3642
  }, {
3621
3643
  default: s(() => [
3622
- h(o(P.value ? i.value.confirmChange : i.value.approve), 1)
3644
+ h(o(E.value ? i.value.confirmChange : i.value.approve), 1)
3623
3645
  ]),
3624
3646
  _: 1
3625
3647
  }, 8, ["class", "loading", "disabled"]),
3626
- P.value ? (l(), g(e(D), {
3648
+ E.value ? (l(), g(e(U), {
3627
3649
  key: 0,
3628
- class: De(le.afterItem),
3650
+ class: De(ne.afterItem),
3629
3651
  type: "button",
3630
3652
  variant: "secondary",
3631
3653
  disabled: e(x),
@@ -3641,7 +3663,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3641
3663
  p(e(Ae), {
3642
3664
  id: "save-password",
3643
3665
  modelValue: e(v),
3644
- "onUpdate:modelValue": be[1] || (be[1] = (le) => ea(v) ? v.value = le : null),
3666
+ "onUpdate:modelValue": be[1] || (be[1] = (ne) => ea(v) ? v.value = ne : null),
3645
3667
  type: "password",
3646
3668
  autocomplete: "current-password",
3647
3669
  invalid: !!e($),
@@ -3656,35 +3678,35 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3656
3678
  ]),
3657
3679
  _: 1
3658
3680
  }, 16)) : y("", !0),
3659
- V.value && !P.value && !q.value ? (l(!0), _(Z, { key: 8 }, pe(H.value, (le) => (l(), g(e(xe), {
3660
- key: le.key,
3661
- label: fe(le.key),
3681
+ V.value && !E.value && !O.value ? (l(!0), _(Z, { key: 8 }, pe(G.value, (ne) => (l(), g(e(xe), {
3682
+ key: ne.key,
3683
+ label: fe(ne.key),
3662
3684
  "field-width": "full",
3663
3685
  "data-save-row": "folder"
3664
3686
  }, {
3665
3687
  default: s(() => [
3666
- S("div", us, [
3667
- le.status === "active" && le.destination ? (l(), g(e(Le), {
3688
+ S("div", rs, [
3689
+ ne.status === "active" && ne.destination ? (l(), g(e(Le), {
3668
3690
  key: 0,
3669
- path: le.destination.path
3670
- }, null, 8, ["path"])) : (l(), _("span", rs, o(i.value.folderNone), 1)),
3671
- p(e(D), {
3691
+ path: ne.destination.path
3692
+ }, null, 8, ["path"])) : (l(), _("span", ds, o(i.value.folderNone), 1)),
3693
+ p(e(U), {
3672
3694
  variant: "secondary",
3673
3695
  size: "sm",
3674
3696
  disabled: B.value || e(x) || (t.admin && F.value?.scopeMode === "install-selected" ? !e(A) || e(d).error.value : !te.value),
3675
- onClick: (Ue) => ie(le.key)
3697
+ onClick: (Ue) => ue(ne.key)
3676
3698
  }, {
3677
3699
  default: s(() => [
3678
3700
  h(o(i.value.choose), 1)
3679
3701
  ]),
3680
3702
  _: 1
3681
3703
  }, 8, ["disabled", "onClick"]),
3682
- le.status === "active" && le.destination ? (l(), g(e(D), {
3704
+ ne.status === "active" && ne.destination ? (l(), g(e(U), {
3683
3705
  key: 2,
3684
3706
  variant: "ghost",
3685
3707
  size: "sm",
3686
3708
  disabled: B.value,
3687
- onClick: (Ue) => Ce(le.destination.id)
3709
+ onClick: (Ue) => Ce(ne.destination.id)
3688
3710
  }, {
3689
3711
  default: s(() => [
3690
3712
  h(o(i.value.revoke), 1)
@@ -3696,28 +3718,28 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3696
3718
  _: 2
3697
3719
  }, 1032, ["label"]))), 128)) : y("", !0)
3698
3720
  ], 64)),
3699
- he(de.$slots, "default", {}, void 0, !0),
3721
+ he(re.$slots, "default", {}, void 0, !0),
3700
3722
  te.value ? (l(), g(oa, {
3701
3723
  key: oe.value?.scope,
3702
- open: R.value,
3703
- "onUpdate:open": be[2] || (be[2] = (le) => R.value = le),
3724
+ open: M.value,
3725
+ "onUpdate:open": be[2] || (be[2] = (ne) => M.value = ne),
3704
3726
  provider: te.value,
3705
3727
  locale: t.locale,
3706
3728
  name: t.ctx?.displayName,
3707
3729
  mode: "folder",
3708
- destination: { key: Q.value, selectDestination: t.sdk.selectDestination },
3709
- onAuthorized: J,
3710
- onRefused: j,
3730
+ destination: { key: se.value, selectDestination: t.sdk.selectDestination },
3731
+ onAuthorized: H,
3732
+ onRefused: J,
3711
3733
  "error-text": t.pickerErrorText
3712
3734
  }, null, 8, ["open", "provider", "locale", "name", "destination", "error-text"])) : y("", !0)
3713
3735
  ]),
3714
3736
  _: 3
3715
3737
  }, 8, ["title", "description", "aria-busy"]));
3716
3738
  }
3717
- }), cs = /* @__PURE__ */ ve(ds, [["__scopeId", "data-v-cce39b9a"]]), vs = { class: "background-save-panel" }, fs = {
3739
+ }), vs = /* @__PURE__ */ ve(cs, [["__scopeId", "data-v-cce39b9a"]]), fs = { class: "background-save-panel" }, ps = {
3718
3740
  key: 1,
3719
3741
  class: "save-example"
3720
- }, ps = { class: "save-help" }, ms = { class: "save-actions" }, ys = /* @__PURE__ */ ce({
3742
+ }, ms = { class: "save-help" }, ys = { class: "save-actions" }, bs = /* @__PURE__ */ de({
3721
3743
  __name: "BackgroundSavePanel",
3722
3744
  props: {
3723
3745
  sdk: {},
@@ -3732,7 +3754,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3732
3754
  emits: ["authorized"],
3733
3755
  setup(t, { expose: c, emit: n }) {
3734
3756
  const a = t, u = n, i = w(() => ma(a.locale)), r = w(() => ya(a.locale)), f = b([]), m = b(), d = () => (x.value = void 0, m.value?.refresh() ?? Promise.resolve()), v = b(!1), x = b();
3735
- async function E($) {
3757
+ async function P($) {
3736
3758
  if (v.value) return;
3737
3759
  v.value = !0, x.value = void 0;
3738
3760
  const z = "example-" + Array.from(crypto.getRandomValues(new Uint8Array(16)), (C) => C.toString(16).padStart(2, "0")).join("");
@@ -3745,8 +3767,8 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3745
3767
  }
3746
3768
  }
3747
3769
  const k = ($) => a.picker?.labels?.[$] ? `${i.value.example}${r.value}${a.picker.labels[$]}` : i.value.example;
3748
- return c({ refresh: d }), ($, z) => (l(), _("div", vs, [
3749
- p(cs, {
3770
+ return c({ refresh: d }), ($, z) => (l(), _("div", fs, [
3771
+ p(vs, {
3750
3772
  ref_key: "settings",
3751
3773
  ref: m,
3752
3774
  sdk: t.sdk,
@@ -3760,7 +3782,7 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3760
3782
  onDestinations: z[1] || (z[1] = (C) => f.value = C.filter((T) => T.status === "active"))
3761
3783
  }, {
3762
3784
  default: s(() => [
3763
- x.value ? (l(), g(e(Y), {
3785
+ x.value ? (l(), g(e(Q), {
3764
3786
  key: 0,
3765
3787
  tone: "danger",
3766
3788
  role: "alert"
@@ -3770,14 +3792,14 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3770
3792
  ]),
3771
3793
  _: 1
3772
3794
  })) : y("", !0),
3773
- t.sampleSave && f.value.length ? (l(), _("div", fs, [
3774
- S("p", ps, o(i.value.exampleHelp), 1),
3775
- S("div", ms, [
3776
- (l(!0), _(Z, null, pe(f.value, (C) => (l(), g(e(D), {
3795
+ t.sampleSave && f.value.length ? (l(), _("div", ps, [
3796
+ S("p", ms, o(i.value.exampleHelp), 1),
3797
+ S("div", ys, [
3798
+ (l(!0), _(Z, null, pe(f.value, (C) => (l(), g(e(U), {
3777
3799
  key: C.key,
3778
3800
  variant: "secondary",
3779
3801
  disabled: v.value,
3780
- onClick: (T) => E(C.key)
3802
+ onClick: (T) => P(C.key)
3781
3803
  }, {
3782
3804
  default: s(() => [
3783
3805
  h(o(k(C.key)), 1)
@@ -3791,18 +3813,18 @@ const El = ["aria-busy", "aria-label"], Tl = { class: "file-toolbar file-locatio
3791
3813
  }, 8, ["sdk", "admin", "locale", "title", "picker", "ctx", "picker-error-text"])
3792
3814
  ]));
3793
3815
  }
3794
- }), Ms = /* @__PURE__ */ ve(ys, [["__scopeId", "data-v-05618cb8"]]);
3795
- function bs(t) {
3816
+ }), Ks = /* @__PURE__ */ ve(bs, [["__scopeId", "data-v-05618cb8"]]);
3817
+ function gs(t) {
3796
3818
  const { code: c, message: n } = t ?? {};
3797
3819
  return !!Fe(t) || typeof c == "string" && ["APP_DENIED", "PERMISSION_DENIED", "cross_origin", "origin_required"].includes(c) || c === "bad_response" && /HTTP 40[13]\b/.test(String(n));
3798
3820
  }
3799
3821
  const Wa = /* @__PURE__ */ Symbol("authorization");
3800
- function gs() {
3822
+ function hs() {
3801
3823
  const t = Te(Wa, void 0);
3802
3824
  if (!t) throw Error("authorization controls must be placed inside AuthorizationGate");
3803
3825
  return t;
3804
3826
  }
3805
- const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authorization-state"], _s = { class: "authorization-body" }, ws = /* @__PURE__ */ ce({
3827
+ const ks = { class: "authorization-content" }, _s = ["aria-busy", "data-authorization-state"], ws = { class: "authorization-body" }, xs = /* @__PURE__ */ de({
3806
3828
  __name: "AuthorizationGate",
3807
3829
  props: {
3808
3830
  ctx: {},
@@ -3811,53 +3833,53 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
3811
3833
  emits: ["ready"],
3812
3834
  setup(t, { emit: c }) {
3813
3835
  const n = t, a = c, u = b(), i = b(), r = b(!1), f = b(!1), m = b(!1), d = St();
3814
- let v = [], x = !1, E = 0, k = !1, $, z = 0, C;
3815
- const T = w(() => Ra(n.ctx.locale, n.name ?? n.ctx.displayName ?? "")), A = w(() => u.value || i.value), ae = w(() => A.value?.state === "authorization_required"), F = w(() => ["helper_untrusted", "cli_untrusted"].includes(A.value?.reason || "")), H = w(() => ae.value && !F.value), G = w(() => A.value?.state === "unavailable" ? Se(A.value) : void 0), B = w(() => G.value ?? { credential_not_ready: "credential", access_denied: "denied", check_failed: "config" }[A.value?.reason ?? ""] ?? "unavailable"), M = w(() => la({ code: A.value?.reason }, n.ctx.locale, n.name ?? n.ctx.displayName)), N = w(() => M.value?.title ?? (A.value ? ae.value ? T.value("title") : A.value.state === "ready" ? T.value("ready") : A.value.state === "not_admin" ? T.value("not_admin.title") : A.value.state === "session_expired" ? T.value("session_expired.title") : T.value(B.value + ".title") : T.value("checking"))), P = w(() => M.value?.message ?? (ae.value ? T.value("purpose") : A.value?.state === "not_admin" ? T.value("not_admin.body") : A.value?.state === "session_expired" ? T.value("session_expired.body") : A.value?.state === "unavailable" ? T.value(B.value + ".body") : T.value("purpose"))), R = ["grant_missing", "upgrade_reapproval", "helper_untrusted", "cli_untrusted", "grant_incompatible", "package_identity_changed", "maintenance_task_missing", "maintenance_task_mismatch", "helper_health_rejected", "capability_missing"], Q = w(() => R.includes(A.value?.reason || "") ? A.value.reason : "unknown"), K = w(() => F.value ? "next.reinstall" : Q.value === "grant_missing" ? "next.install" : Q.value === "upgrade_reapproval" || Q.value === "grant_incompatible" ? "next.update" : "next.repair");
3816
- function se(ee) {
3836
+ let v = [], x = !1, P = 0, k = !1, $, z = 0, C;
3837
+ const T = w(() => Ra(n.ctx.locale, n.name ?? n.ctx.displayName ?? "")), A = w(() => u.value || i.value), ae = w(() => A.value?.state === "authorization_required"), F = w(() => ["helper_untrusted", "cli_untrusted"].includes(A.value?.reason || "")), G = w(() => ae.value && !F.value), X = w(() => A.value?.state === "unavailable" ? Se(A.value) : void 0), B = w(() => X.value ?? { credential_not_ready: "credential", access_denied: "denied", check_failed: "config" }[A.value?.reason ?? ""] ?? "unavailable"), K = w(() => la({ code: A.value?.reason }, n.ctx.locale, n.name ?? n.ctx.displayName)), D = w(() => K.value?.title ?? (A.value ? ae.value ? T.value("title") : A.value.state === "ready" ? T.value("ready") : A.value.state === "not_admin" ? T.value("not_admin.title") : A.value.state === "session_expired" ? T.value("session_expired.title") : T.value(B.value + ".title") : T.value("checking"))), E = w(() => K.value?.message ?? (ae.value ? T.value("purpose") : A.value?.state === "not_admin" ? T.value("not_admin.body") : A.value?.state === "session_expired" ? T.value("session_expired.body") : A.value?.state === "unavailable" ? T.value(B.value + ".body") : T.value("purpose"))), M = ["grant_missing", "upgrade_reapproval", "helper_untrusted", "cli_untrusted", "grant_incompatible", "package_identity_changed", "maintenance_task_missing", "maintenance_task_mismatch", "helper_health_rejected", "capability_missing"], se = w(() => M.includes(A.value?.reason || "") ? A.value.reason : "unknown"), N = w(() => F.value ? "next.reinstall" : se.value === "grant_missing" ? "next.install" : se.value === "upgrade_reapproval" || se.value === "grant_incompatible" ? "next.update" : "next.repair");
3838
+ function le(ee) {
3817
3839
  if (!ee || ee.command !== "authorization" || ee.schema_version !== 1 || !["ready", "authorization_required", "not_admin", "session_expired", "unavailable"].includes(ee.state) || ee.reason === "upgrade_reapproval" && ee.state !== "authorization_required") throw Error("invalid status");
3818
3840
  return ee;
3819
3841
  }
3820
- const O = ["service_unavailable", "request_timeout", "request_canceled", "network", "app_unavailable", "internal", "auth_unavailable", "EXECUTOR_UNAVAILABLE", "EXECUTOR_TIMEOUT", "EXECUTOR_PAUSED"];
3821
- function ne(ee) {
3822
- const { code: ie } = ee ?? {}, oe = Se(ee);
3823
- return oe ? oe === "stopped" ? "APP_STOPPED" : "APP_STARTING" : ie === "credential_not_ready" ? ie : Fe(ee) ? Fe(ee) : bs(ee) ? "access_denied" : typeof ie == "string" && O.includes(ie) || ie === void 0 ? "service_unavailable" : "check_failed";
3842
+ const q = ["service_unavailable", "request_timeout", "request_canceled", "network", "app_unavailable", "internal", "auth_unavailable", "EXECUTOR_UNAVAILABLE", "EXECUTOR_TIMEOUT", "EXECUTOR_PAUSED"];
3843
+ function j(ee) {
3844
+ const { code: ue } = ee ?? {}, oe = Se(ee);
3845
+ return oe ? oe === "stopped" ? "APP_STOPPED" : "APP_STARTING" : ue === "credential_not_ready" ? ue : Fe(ee) ? Fe(ee) : gs(ee) ? "access_denied" : typeof ue == "string" && q.includes(ue) || ue === void 0 ? "service_unavailable" : "check_failed";
3824
3846
  }
3825
- let ue;
3826
- function re() {
3827
- clearTimeout($), G.value !== ue && (ue = G.value, z = 0), G.value && ($ = setTimeout(() => {
3828
- r.value ? k = !0 : j("status");
3829
- }, fa(z++, G.value)));
3847
+ let ie;
3848
+ function ce() {
3849
+ clearTimeout($), X.value !== ie && (ie = X.value, z = 0), X.value && ($ = setTimeout(() => {
3850
+ r.value ? k = !0 : J("status");
3851
+ }, fa(z++, X.value)));
3830
3852
  }
3831
- const X = [1e3, 3e3];
3832
- async function J(ee) {
3833
- const ie = ee === "status" && !m.value ? X : [];
3853
+ const W = [1e3, 3e3];
3854
+ async function H(ee) {
3855
+ const ue = ee === "status" && !m.value ? W : [];
3834
3856
  for (let oe = 0; ; oe++) {
3835
3857
  try {
3836
- const ke = se(await n.ctx.authorization?.[ee]());
3837
- if (ke.state !== "unavailable" || oe >= ie.length) return ke;
3858
+ const ke = le(await n.ctx.authorization?.[ee]());
3859
+ if (ke.state !== "unavailable" || oe >= ue.length) return ke;
3838
3860
  } catch (ke) {
3839
- if (["session_required", "credential_not_ready"].includes(ke.code) || oe >= ie.length) throw ke;
3861
+ if (["session_required", "credential_not_ready"].includes(ke.code) || oe >= ue.length) throw ke;
3840
3862
  }
3841
- if (await new Promise((ke) => setTimeout(ke, ie[oe])), x) throw Error("disposed");
3863
+ if (await new Promise((ke) => setTimeout(ke, ue[oe])), x) throw Error("disposed");
3842
3864
  }
3843
3865
  }
3844
- async function j(ee) {
3866
+ async function J(ee) {
3845
3867
  if (r.value || x) return;
3846
- const ie = ++E;
3868
+ const ue = ++P;
3847
3869
  i.value = ee === "request" && u.value?.state === "authorization_required" ? u.value : void 0, r.value = !0, f.value = !1, u.value = void 0;
3848
3870
  try {
3849
- const oe = await J(ee);
3850
- if (x || ie !== E) return;
3871
+ const oe = await H(ee);
3872
+ if (x || ue !== P) return;
3851
3873
  u.value = oe, m.value = oe.state !== "ready", oe.state === "ready" && ye(!0), oe.state === "ready" && a("ready");
3852
3874
  } catch (oe) {
3853
- !x && ie === E && (u.value = oe.code === "session_required" ? { command: "authorization", schema_version: 1, state: "session_expired", reason: "session_expired" } : i.value || { command: "authorization", schema_version: 1, state: "unavailable", reason: ne(oe) }, f.value = !M.value && B.value === "unavailable", m.value = !0);
3875
+ !x && ue === P && (u.value = oe.code === "session_required" ? { command: "authorization", schema_version: 1, state: "session_expired", reason: "session_expired" } : i.value || { command: "authorization", schema_version: 1, state: "unavailable", reason: j(oe) }, f.value = !K.value && B.value === "unavailable", m.value = !0);
3854
3876
  } finally {
3855
- !x && ie === E && (r.value = !1, i.value = void 0, k ? (k = !1, j("status")) : re());
3877
+ !x && ue === P && (r.value = !1, i.value = void 0, k ? (k = !1, J("status")) : ce());
3856
3878
  }
3857
3879
  }
3858
3880
  function ye(ee) {
3859
- const ie = v;
3860
- v = [], ie.forEach((oe) => oe(ee));
3881
+ const ue = v;
3882
+ v = [], ue.forEach((oe) => oe(ee));
3861
3883
  }
3862
3884
  function Ce(ee) {
3863
3885
  m.value = ee, ee || ye(!1);
@@ -3865,39 +3887,39 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
3865
3887
  function $e() {
3866
3888
  return u.value?.state === "ready" ? Promise.resolve(!0) : (r.value || (m.value = !0), new Promise((ee) => v.push(ee)));
3867
3889
  }
3868
- return qe(Wa, { state: w(() => u.value?.state ?? "checking"), requireAuthorization: $e, text: T, busy: r, canManage: () => !!n.ctx.authorization?.canManage?.(), revoke: () => j("revoke") }), we(() => {
3890
+ return qe(Wa, { state: w(() => u.value?.state ?? "checking"), requireAuthorization: $e, text: T, busy: r, canManage: () => !!n.ctx.authorization?.canManage?.(), revoke: () => J("revoke") }), we(() => {
3869
3891
  C = n.ctx.reopen(() => {
3870
- r.value ? k = !0 : j("status");
3871
- }), j("status");
3892
+ r.value ? k = !0 : J("status");
3893
+ }), J("status");
3872
3894
  }), Da(() => {
3873
- x = !0, E++, clearTimeout($), ye(!1), typeof C == "function" && C();
3874
- }), (ee, ie) => (l(), _(Z, null, [
3875
- S("div", hs, [
3895
+ x = !0, P++, clearTimeout($), ye(!1), typeof C == "function" && C();
3896
+ }), (ee, ue) => (l(), _(Z, null, [
3897
+ S("div", ks, [
3876
3898
  he(ee.$slots, "default", {}, void 0, !0)
3877
3899
  ]),
3878
3900
  p(e(Be), {
3879
3901
  open: m.value && !e(d),
3880
- title: N.value,
3902
+ title: D.value,
3881
3903
  "onUpdate:open": Ce
3882
3904
  }, {
3883
3905
  footer: s(() => [
3884
- H.value ? (l(), g(e(D), {
3906
+ G.value ? (l(), g(e(U), {
3885
3907
  key: 0,
3886
3908
  variant: "primary",
3887
3909
  loading: r.value,
3888
3910
  disabled: r.value,
3889
- onClick: ie[0] || (ie[0] = (oe) => j("request"))
3911
+ onClick: ue[0] || (ue[0] = (oe) => J("request"))
3890
3912
  }, {
3891
3913
  default: s(() => [
3892
3914
  h(o(r.value ? T.value("authorizing") : T.value("authorize")), 1)
3893
3915
  ]),
3894
3916
  _: 1
3895
- }, 8, ["loading", "disabled"])) : (l(), g(e(D), {
3917
+ }, 8, ["loading", "disabled"])) : (l(), g(e(U), {
3896
3918
  key: 1,
3897
3919
  variant: "primary",
3898
3920
  loading: r.value,
3899
3921
  disabled: r.value,
3900
- onClick: ie[1] || (ie[1] = (oe) => j("status"))
3922
+ onClick: ue[1] || (ue[1] = (oe) => J("status"))
3901
3923
  }, {
3902
3924
  default: s(() => [
3903
3925
  h(o(r.value ? T.value("checking") : T.value("retry")), 1)
@@ -3911,19 +3933,19 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
3911
3933
  "aria-busy": r.value,
3912
3934
  "data-authorization-state": u.value?.state || "checking"
3913
3935
  }, [
3914
- S("p", _s, o(P.value), 1),
3915
- ae.value ? (l(), g(e(Y), {
3936
+ S("p", ws, o(E.value), 1),
3937
+ ae.value ? (l(), g(e(Q), {
3916
3938
  key: 0,
3917
3939
  class: "authorization-status",
3918
- tone: ["grant_missing", "upgrade_reapproval"].includes(Q.value) ? "info" : "warning",
3919
- title: T.value("reason." + Q.value)
3940
+ tone: ["grant_missing", "upgrade_reapproval"].includes(se.value) ? "info" : "warning",
3941
+ title: T.value("reason." + se.value)
3920
3942
  }, {
3921
3943
  default: s(() => [
3922
- h(o(T.value(K.value)), 1)
3944
+ h(o(T.value(N.value)), 1)
3923
3945
  ]),
3924
3946
  _: 1
3925
3947
  }, 8, ["tone", "title"])) : y("", !0),
3926
- f.value ? (l(), g(e(Y), {
3948
+ f.value ? (l(), g(e(Q), {
3927
3949
  key: 1,
3928
3950
  class: "authorization-failed",
3929
3951
  tone: "warning"
@@ -3933,19 +3955,19 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
3933
3955
  ]),
3934
3956
  _: 1
3935
3957
  })) : y("", !0)
3936
- ], 8, ks)
3958
+ ], 8, _s)
3937
3959
  ]),
3938
3960
  _: 1
3939
3961
  }, 8, ["open", "title"])
3940
3962
  ], 64));
3941
3963
  }
3942
- }), Ks = /* @__PURE__ */ ve(ws, [["__scopeId", "data-v-e6c8e4e1"]]), xs = { class: "authorization-setting" }, Cs = {
3964
+ }), Hs = /* @__PURE__ */ ve(xs, [["__scopeId", "data-v-e6c8e4e1"]]), Cs = { class: "authorization-setting" }, $s = {
3943
3965
  class: "authorization-state",
3944
3966
  role: "status"
3945
- }, $s = { class: "authorization-revoke-body" }, Ss = /* @__PURE__ */ ce({
3967
+ }, Ss = { class: "authorization-revoke-body" }, Ps = /* @__PURE__ */ de({
3946
3968
  __name: "AuthorizationSettings",
3947
3969
  setup(t) {
3948
- const { state: c, requireAuthorization: n, text: a, busy: u, canManage: i, revoke: r } = gs(), f = b(!1), m = { checking: "checking", ready: "ready", authorization_required: "state.required", not_admin: "not_admin.title", session_expired: "session_expired.title", unavailable: "state.unavailable" };
3970
+ const { state: c, requireAuthorization: n, text: a, busy: u, canManage: i, revoke: r } = hs(), f = b(!1), m = { checking: "checking", ready: "ready", authorization_required: "state.required", not_admin: "not_admin.title", session_expired: "session_expired.title", unavailable: "state.unavailable" };
3949
3971
  return (d, v) => (l(), _(Z, null, [
3950
3972
  p(e(_e), {
3951
3973
  title: e(a)("settings.title"),
@@ -3958,8 +3980,8 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
3958
3980
  align: "center"
3959
3981
  }, {
3960
3982
  default: s(() => [
3961
- S("div", xs, [
3962
- S("span", Cs, [
3983
+ S("div", Cs, [
3984
+ S("span", $s, [
3963
3985
  e(c) === "ready" ? (l(), g(e(La), {
3964
3986
  key: 0,
3965
3987
  size: 16,
@@ -3967,7 +3989,7 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
3967
3989
  })) : y("", !0),
3968
3990
  h(o(e(a)(m[e(c)])), 1)
3969
3991
  ]),
3970
- e(c) === "ready" && e(i)() ? (l(), g(e(D), {
3992
+ e(c) === "ready" && e(i)() ? (l(), g(e(U), {
3971
3993
  key: 0,
3972
3994
  variant: "secondary",
3973
3995
  disabled: e(u),
@@ -3977,7 +3999,7 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
3977
3999
  h(o(e(a)("revoke")), 1)
3978
4000
  ]),
3979
4001
  _: 1
3980
- }, 8, ["disabled"])) : e(c) !== "ready" && e(c) !== "checking" ? (l(), g(e(D), {
4002
+ }, 8, ["disabled"])) : e(c) !== "ready" && e(c) !== "checking" ? (l(), g(e(U), {
3981
4003
  key: 1,
3982
4004
  variant: "secondary",
3983
4005
  onClick: v[1] || (v[1] = (x) => e(n)())
@@ -4000,7 +4022,7 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
4000
4022
  title: e(a)("revoke.title")
4001
4023
  }, {
4002
4024
  footer: s(() => [
4003
- p(e(D), {
4025
+ p(e(U), {
4004
4026
  variant: "secondary",
4005
4027
  onClick: v[2] || (v[2] = (x) => f.value = !1)
4006
4028
  }, {
@@ -4009,7 +4031,7 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
4009
4031
  ]),
4010
4032
  _: 1
4011
4033
  }),
4012
- p(e(D), {
4034
+ p(e(U), {
4013
4035
  variant: "danger",
4014
4036
  disabled: e(u),
4015
4037
  onClick: v[3] || (v[3] = (x) => {
@@ -4023,13 +4045,13 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
4023
4045
  }, 8, ["disabled"])
4024
4046
  ]),
4025
4047
  default: s(() => [
4026
- S("p", $s, o(e(a)("revoke.body")), 1)
4048
+ S("p", Ss, o(e(a)("revoke.body")), 1)
4027
4049
  ]),
4028
4050
  _: 1
4029
4051
  }, 8, ["open", "title"])
4030
4052
  ], 64));
4031
4053
  }
4032
- }), Hs = /* @__PURE__ */ ve(Ss, [["__scopeId", "data-v-8452013e"]]), Gs = /* @__PURE__ */ ce({
4054
+ }), Gs = /* @__PURE__ */ ve(Ps, [["__scopeId", "data-v-8452013e"]]), Xs = /* @__PURE__ */ de({
4033
4055
  __name: "EntryGuard",
4034
4056
  props: {
4035
4057
  ctx: {},
@@ -4060,15 +4082,15 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
4060
4082
  v || (u.value = !1);
4061
4083
  }
4062
4084
  }
4063
- function E() {
4085
+ function P() {
4064
4086
  document.visibilityState !== "hidden" && m.check();
4065
4087
  }
4066
4088
  return we(() => {
4067
4089
  d = c.ctx.reopen?.(() => {
4068
4090
  m.check();
4069
- }), document.addEventListener("visibilitychange", E), m.check();
4091
+ }), document.addEventListener("visibilitychange", P), m.check();
4070
4092
  }), ge(() => {
4071
- v = !0, m.dispose(), d?.(), document.removeEventListener("visibilitychange", E);
4093
+ v = !0, m.dispose(), d?.(), document.removeEventListener("visibilitychange", P);
4072
4094
  }), (k, $) => (l(), _(Z, null, [
4073
4095
  he(k.$slots, "default"),
4074
4096
  n.value && a.value ? (l(), g(e(Be), {
@@ -4080,7 +4102,7 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
4080
4102
  "close-label": i.value.dismiss
4081
4103
  }, {
4082
4104
  footer: s(() => [
4083
- p(e(D), {
4105
+ p(e(U), {
4084
4106
  variant: "secondary",
4085
4107
  onClick: $[0] || ($[0] = (z) => a.value = !1)
4086
4108
  }, {
@@ -4089,7 +4111,7 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
4089
4111
  ]),
4090
4112
  _: 1
4091
4113
  }),
4092
- p(e(D), {
4114
+ p(e(U), {
4093
4115
  variant: "primary",
4094
4116
  disabled: u.value,
4095
4117
  onClick: x
@@ -4106,107 +4128,107 @@ const hs = { class: "authorization-content" }, ks = ["aria-busy", "data-authoriz
4106
4128
  }
4107
4129
  });
4108
4130
  export {
4109
- Rs as AppShell,
4110
- Ks as AuthorizationGate,
4111
- Hs as AuthorizationSettings,
4112
- Fs as BackgroundPanel,
4113
- Ms as BackgroundSavePanel,
4114
- cs as BackgroundSaveSettings,
4115
- Js as DEFAULT_REQUEST_TIMEOUT,
4116
- Os as DelegatePanel,
4117
- Gs as EntryGuard,
4118
- qs as ExecutorApproval,
4131
+ Us as AppShell,
4132
+ Hs as AuthorizationGate,
4133
+ Gs as AuthorizationSettings,
4134
+ qs as BackgroundPanel,
4135
+ Ks as BackgroundSavePanel,
4136
+ vs as BackgroundSaveSettings,
4137
+ Ys as DEFAULT_REQUEST_TIMEOUT,
4138
+ Ms as DelegatePanel,
4139
+ Xs as EntryGuard,
4140
+ Os as ExecutorApproval,
4119
4141
  ml as ExecutorNotice,
4120
4142
  Ba as ExecutorPreloadKey,
4121
4143
  Ma as ExecutorSettings,
4122
4144
  Ye as ExecutorSetupKey,
4123
- Ys as FILE_STATION_APP,
4145
+ Qs as FILE_STATION_APP,
4124
4146
  Xa as FileBrowser,
4125
- Ds as FilesPage,
4126
- Qs as LIFECYCLE_RETRY_MAX_MS,
4127
- js as LIFECYCLE_STARTING_RETRY_MAX_MS,
4128
- Bs as LoginPage,
4129
- Zs as MAX_LAUNCH_ROUTE,
4147
+ Ns as FilesPage,
4148
+ js as LIFECYCLE_RETRY_MAX_MS,
4149
+ Zs as LIFECYCLE_STARTING_RETRY_MAX_MS,
4150
+ Fs as LoginPage,
4151
+ eo as MAX_LAUNCH_ROUTE,
4130
4152
  oa as NasPicker,
4131
- Us as PageActions,
4153
+ Is as PageActions,
4132
4154
  Ka as PageActionsTarget,
4133
- Is as PageInfo,
4155
+ Ds as PageInfo,
4134
4156
  Ha as PageInfoTarget,
4135
- Ns as PortalSettings,
4136
- Vs as SharedFolderPermissionDialog,
4137
- Ls as SharedFolderSettings,
4157
+ Ls as PortalSettings,
4158
+ Bs as SharedFolderPermissionDialog,
4159
+ Vs as SharedFolderSettings,
4138
4160
  hl as UiUpdateNotice,
4139
- eo as activePage,
4161
+ ao as activePage,
4140
4162
  Fe as appDenial,
4141
4163
  Se as appLifecycle,
4142
4164
  la as appRefusal,
4143
- ao as authorizationCatalogs,
4165
+ to as authorizationCatalogs,
4144
4166
  Ra as authorizationCopy,
4145
- to as backgroundCatalogs,
4167
+ lo as backgroundCatalogs,
4146
4168
  Qa as backgroundCopy,
4147
4169
  Za as backgroundErrorCopy,
4148
- lo as bridgeCatalogs,
4149
- no as bridgeErrorCopy,
4150
- so as catalogs,
4151
- oo as clientTimeout,
4170
+ no as bridgeCatalogs,
4171
+ so as bridgeErrorCopy,
4172
+ oo as catalogs,
4173
+ io as clientTimeout,
4152
4174
  ja as createBackgroundPickerProvider,
4153
- io as createBackgroundSaveFacade,
4154
- uo as createClient,
4175
+ uo as createBackgroundSaveFacade,
4176
+ ro as createClient,
4155
4177
  Ya as createDsmFileStation,
4156
- ro as createDsmSession,
4178
+ co as createDsmSession,
4157
4179
  lt as createEntryCheck,
4158
- co as createFileTransfers,
4180
+ vo as createFileTransfers,
4159
4181
  za as createNasProvider,
4160
- vo as createPortalAccess,
4161
- As as createSession,
4162
- fo as createSharedFolderAccess,
4163
- po as createSharedFolderPermission,
4164
- mo as createStandaloneContext,
4165
- yo as createStandaloneHost,
4166
- bo as decodeResponse,
4167
- go as delegateCatalogs,
4182
+ fo as createPortalAccess,
4183
+ Rs as createSession,
4184
+ po as createSharedFolderAccess,
4185
+ mo as createSharedFolderPermission,
4186
+ yo as createStandaloneContext,
4187
+ bo as createStandaloneHost,
4188
+ go as decodeResponse,
4189
+ ho as delegateCatalogs,
4168
4190
  Re as delegateCopy,
4169
- ho as dsmLaunchURL,
4170
- ko as encodeRequest,
4191
+ ko as dsmLaunchURL,
4192
+ _o as encodeRequest,
4171
4193
  at as errorCopy,
4172
- _o as fileStationPath,
4173
- wo as followLaunchRoute,
4194
+ wo as fileStationPath,
4195
+ xo as followLaunchRoute,
4174
4196
  We as format,
4175
- xo as identityCatalogs,
4197
+ Co as identityCatalogs,
4176
4198
  Aa as identityCopy,
4177
4199
  Ea as isFullPage,
4178
4200
  ya as labelSeparator,
4179
- Co as launchRoute,
4201
+ $o as launchRoute,
4180
4202
  Ve as lifecycleCopy,
4181
4203
  et as lifecycleRefusal,
4182
4204
  fa as lifecycleRetryDelay,
4183
- $o as mergeCatalogs,
4184
- So as nasCatalogs,
4205
+ So as mergeCatalogs,
4206
+ Po as nasCatalogs,
4185
4207
  ze as nasCopy,
4186
4208
  Ta as nasErrorCopy,
4187
- Po as openFileInFileStation,
4188
- Eo as openFolderInFileStation,
4189
- To as portalCatalogs,
4190
- zo as portalMessages,
4191
- Ao as protocolCodes,
4192
- Ro as protocolOps,
4193
- Uo as protocolSchemas,
4194
- Io as readDsmPorts,
4209
+ Eo as openFileInFileStation,
4210
+ To as openFolderInFileStation,
4211
+ zo as portalCatalogs,
4212
+ Ao as portalMessages,
4213
+ Ro as protocolCodes,
4214
+ Uo as protocolOps,
4215
+ Io as protocolSchemas,
4216
+ Do as readDsmPorts,
4195
4217
  da as requestKey,
4196
- Do as saveCatalogs,
4218
+ No as saveCatalogs,
4197
4219
  ma as saveCopy,
4198
4220
  je as saveError,
4199
4221
  tt as scopedPicker,
4200
- No as sharedFolderAccessFor,
4201
- Lo as sharedFolderCatalogs,
4202
- Vo as sharedFolderMessages,
4203
- Bo as sharedFolderPermissionMessage,
4204
- Fo as shellCatalogs,
4222
+ Lo as sharedFolderAccessFor,
4223
+ Vo as sharedFolderCatalogs,
4224
+ Bo as sharedFolderMessages,
4225
+ Fo as sharedFolderPermissionMessage,
4226
+ qo as shellCatalogs,
4205
4227
  Qe as shellCopy,
4206
- qo as shellPages,
4228
+ Oo as shellPages,
4207
4229
  pa as uiLocale,
4208
- Oo as uiLocales,
4209
- gs as useAuthorization,
4230
+ Mo as uiLocales,
4231
+ hs as useAuthorization,
4210
4232
  St as useExecutorPreload,
4211
4233
  Fa as useExecutorSetup,
4212
4234
  Tt as useNasRequest