@synopackageland/sdk 0.10.1 → 0.10.2

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,11 +1,11 @@
1
- import { delegateCopy as Te, shellCopy as pa, isFullPage as fa, uiLocale as je, nasCopy as be, nasErrorCopy as ea, format as qe, saveCopy as aa, saveError as Ie, createNasProvider as ta, identityCopy as ya, backgroundCopy as ma, createBackgroundPickerProvider as ba, backgroundErrorCopy as ga, requestKey as He, labelSeparator as la, errorCopy as ha, scopedPicker as ka, openFolderInFileStation as _a, authorizationCopy as wa } from "./index.js";
2
- import { DEFAULT_REQUEST_TIMEOUT as Sn, FILE_STATION_APP as zn, activePage as Pn, authorizationCatalogs as Vn, backgroundCatalogs as An, bridgeCatalogs as In, bridgeErrorCopy as En, catalogs as Tn, clientTimeout as Un, createBackgroundSaveFacade as Rn, createFileTransfers as Dn, createPortalAccess as Bn, createStandaloneContext as Fn, createStandaloneHost as qn, decodeResponse as On, delegateCatalogs as Ln, encodeRequest as Nn, fileStationPath as Mn, identityCatalogs as Kn, mergeCatalogs as Hn, nasCatalogs as Gn, openFileInFileStation as Jn, portalCatalogs as Wn, portalMessages as Xn, protocolCodes as Qn, protocolOps as Yn, protocolSchemas as Zn, saveCatalogs as jn, shellCatalogs as es, shellPages as as, uiLocales as ts } from "./index.js";
3
- import { inject as Le, ref as y, onBeforeUnmount as ce, Comment as xa, Text as Ca, Fragment as oe, defineComponent as ie, computed as U, onMounted as ve, openBlock as n, createBlock as g, unref as e, withCtx as t, createElementVNode as P, createTextVNode as k, toDisplayString as l, createVNode as f, createCommentVNode as b, createElementBlock as R, withModifiers as ze, provide as na, useTemplateRef as $a, watch as Ne, useSlots as Sa, watchEffect as za, resolveDynamicComponent as De, normalizeProps as Ge, guardReactiveProps as Je, renderSlot as ge, normalizeClass as We, createSlots as Me, markRaw as Pa, h as Va, onUnmounted as sa, nextTick as Aa, renderList as _e } from "vue";
4
- import { SettingsSection as ke, Callout as W, Button as F, KeyValueRow as $e, Badge as Se, PathDisplay as ye, Form as Pe, FormItem as he, Select as oa, Input as we, FormActions as Ve, Dialog as Ue, ensureDeviceViewport as Ia, AppRoot as Ea, ConfigProvider as Ta, PageContent as Xe, PageHeader as Qe, AppLayout as Ua, AppSidebar as Ra, AppSidebarUser as Da, FileTypeIcon as Be, IconButton as Fe, Breadcrumb as Ba, FilePicker as Fa, TreeView as qa, DataGrid as Oa, SettingsRow as Ee, Link as ia, Card as Ye, Checkbox as La, LoadingArea as Na, DataTable as Ma, formatFileSize as Ka, Pagination as Ha } from "@synopackageland/ui";
1
+ import { delegateCopy as Ue, shellCopy as fa, isFullPage as je, uiLocale as ea, nasCopy as ge, nasErrorCopy as aa, format as Oe, saveCopy as ta, saveError as Ie, createNasProvider as la, identityCopy as ya, backgroundCopy as ma, createBackgroundPickerProvider as ba, backgroundErrorCopy as ga, requestKey as He, labelSeparator as na, errorCopy as ha, scopedPicker as ka, openFolderInFileStation as _a, authorizationCopy as wa } from "./index.js";
2
+ import { DEFAULT_REQUEST_TIMEOUT as Vn, FILE_STATION_APP as An, activePage as In, authorizationCatalogs as En, backgroundCatalogs as Tn, bridgeCatalogs as Un, bridgeErrorCopy as Rn, catalogs as Dn, clientTimeout as Bn, createBackgroundSaveFacade as Fn, createFileTransfers as qn, createPortalAccess as Nn, createStandaloneContext as On, createStandaloneHost as Ln, decodeResponse as Mn, delegateCatalogs as Kn, encodeRequest as Hn, fileStationPath as Gn, identityCatalogs as Jn, mergeCatalogs as Wn, nasCatalogs as Xn, openFileInFileStation as Qn, portalCatalogs as Yn, portalMessages as Zn, protocolCodes as jn, protocolOps as es, protocolSchemas as as, saveCatalogs as ts, shellCatalogs as ls, shellPages as ns, uiLocales as ss } from "./index.js";
3
+ import { inject as Re, ref as m, onBeforeUnmount as ve, Comment as xa, Text as Ca, Fragment as oe, defineComponent as ie, computed as I, onMounted as pe, openBlock as n, createBlock as g, unref as e, withCtx as t, createElementVNode as z, createTextVNode as k, toDisplayString as l, createElementBlock as T, createCommentVNode as y, createVNode as f, withModifiers as ze, provide as sa, useTemplateRef as $a, watch as Me, useSlots as Sa, watchEffect as za, resolveDynamicComponent as Fe, normalizeProps as Ge, guardReactiveProps as Je, renderSlot as he, normalizeClass as We, createSlots as Ke, markRaw as Pa, h as Va, onUnmounted as oa, nextTick as Aa, renderList as we } from "vue";
4
+ import { SettingsSection as _e, Callout as G, Button as F, KeyValueRow as $e, Badge as Se, PathDisplay as me, Form as Pe, FormItem as ke, Select as ia, Input as xe, FormActions as Ve, Dialog as De, ensureDeviceViewport as Ia, AppRoot as Ea, ConfigProvider as Ta, PageContent as Xe, PageHeader as Qe, AppLayout as Ua, AppSidebar as Ra, AppSidebarUser as Da, FileTypeIcon as qe, IconButton as Ne, Breadcrumb as Ba, FilePicker as Fa, TreeView as qa, DataGrid as Na, SettingsRow as Ee, Link as ua, Card as Ye, Checkbox as Oa, LoadingArea as La, DataTable as Ma, formatFileSize as Ka, Pagination as Ha } from "@synopackageland/ui";
5
5
  import { Timer as Ga, Info as Ja, ChevronLeft as Wa, ChevronRight as Xa, RotateCw as Qa, FolderOpen as Ya, ShieldCheck as Za } from "@lucide/vue";
6
- const Ke = /* @__PURE__ */ Symbol("executor-setup");
7
- function ua() {
8
- return Le(Ke, {
6
+ const Te = /* @__PURE__ */ Symbol("executor-setup");
7
+ function ra() {
8
+ return Re(Te, {
9
9
  async status() {
10
10
  return { state: "blocked", reason: "setup-unavailable" };
11
11
  },
@@ -17,127 +17,130 @@ function ua() {
17
17
  }
18
18
  });
19
19
  }
20
- function pn(r) {
21
- const x = y(!1), i = y(!1), a = y(), u = y("");
22
- let v = !1, o = 0, s, d;
23
- function c() {
24
- clearTimeout(s), clearTimeout(d);
20
+ function mn(r) {
21
+ const C = m(!1), i = m(!1), a = m(), u = m("");
22
+ let v = !1, o = 0, s, c;
23
+ function d() {
24
+ clearTimeout(s), clearTimeout(c);
25
25
  }
26
- function p(z = "") {
27
- o++, c(), a.value = void 0, u.value = z;
26
+ function p(P = "") {
27
+ o++, d(), a.value = void 0, u.value = P;
28
28
  }
29
- function h(z) {
29
+ function h(P) {
30
30
  if (v) return;
31
- const I = Date.parse(z.expiresAt) - Date.now();
32
- if (!Number.isFinite(I) || I <= 0) {
31
+ const A = Date.parse(P.expiresAt) - Date.now();
32
+ if (!Number.isFinite(A) || A <= 0) {
33
33
  p("expired");
34
34
  return;
35
35
  }
36
- c(), a.value = z, u.value = "", s = setTimeout(() => p("expired"), I);
36
+ d(), a.value = P, u.value = "", s = setTimeout(() => p("expired"), A);
37
37
  const K = o;
38
- d = setTimeout(async () => {
38
+ c = setTimeout(async () => {
39
39
  try {
40
- const H = await r.call("identity.session");
41
- !v && o === K && h(H);
40
+ const Q = await r.call("identity.session");
41
+ !v && o === K && h(Q);
42
42
  } catch {
43
43
  !v && o === K && p("expired");
44
44
  }
45
- }, Math.min(6e4, I));
45
+ }, Math.min(6e4, A));
46
46
  }
47
- async function A() {
47
+ async function R() {
48
48
  try {
49
- const z = await r.call("identity.status");
49
+ const P = await r.call("identity.status");
50
50
  if (v) return;
51
- if (x.value = z.enabled === !0, x.value)
51
+ if (C.value = P.enabled === !0, C.value)
52
52
  try {
53
53
  h(await r.call("identity.session", { bootstrap: !0 }));
54
54
  } catch {
55
55
  v || p();
56
56
  }
57
- } catch (z) {
58
- const I = z?.code;
59
- x.value = !["unknown_method", "admin_required", "app_privilege_denied", "session_required"].includes(I || ""), x.value && (u.value = "unavailable");
57
+ } catch (P) {
58
+ const A = P?.code;
59
+ C.value = !["unknown_method", "admin_required", "app_privilege_denied", "session_required"].includes(A || ""), C.value && (u.value = "unavailable");
60
60
  } finally {
61
61
  v || (i.value = !0);
62
62
  }
63
63
  }
64
- async function $(z, I) {
64
+ async function x(P, A) {
65
65
  const K = o;
66
66
  try {
67
- const H = await r.call(z, I);
68
- if (v || x.value && K !== o) throw { code: "session_required" };
69
- return H;
70
- } catch (H) {
71
- const le = H?.code;
72
- throw !v && K === o && x.value && ["session_required", "session_revalidation_required"].includes(le || "") && p(le === "session_revalidation_required" ? "revalidate" : "expired"), H;
67
+ const Q = await r.call(P, A);
68
+ if (v || C.value && K !== o) throw { code: "session_required" };
69
+ return Q;
70
+ } catch (Q) {
71
+ const Y = Q?.code;
72
+ throw !v && K === o && C.value && ["session_required", "session_revalidation_required"].includes(Y || "") && p(Y === "session_revalidation_required" ? "revalidate" : "expired"), Q;
73
73
  }
74
74
  }
75
- async function _(z, I, K) {
76
- const H = await r.call("identity.login", { account: z, password: I, otp: K });
77
- v || (o++, h(H));
75
+ async function _(P, A, K) {
76
+ const Q = await r.call("identity.login", { account: P, password: A, otp: K });
77
+ v || (o++, h(Q));
78
78
  }
79
- async function S() {
80
- const z = await r.call("identity.session", { bootstrap: !0 });
81
- v || (o++, h(z));
79
+ async function U() {
80
+ const P = await r.call("identity.session", { bootstrap: !0 });
81
+ v || (o++, h(P));
82
82
  }
83
- async function V() {
83
+ async function $() {
84
84
  await r.call("identity.logout"), v || p();
85
85
  }
86
- function E() {
86
+ function V() {
87
87
  v = !0, p();
88
88
  }
89
- return { enabled: x, ready: i, subject: a, notice: u, start: A, call: $, login: _, bootstrap: S, logout: V, dispose: E };
89
+ return { enabled: C, ready: i, subject: a, notice: u, start: R, call: x, login: _, bootstrap: U, logout: $, dispose: V };
90
90
  }
91
91
  function ja() {
92
- const r = y(!1), x = y();
92
+ const r = m(!1), C = m();
93
93
  let i = !1, a = 0, u;
94
94
  function v() {
95
- a++, u?.abort(), u = void 0, r.value = !1, x.value = void 0;
95
+ a++, u?.abort(), u = void 0, r.value = !1, C.value = void 0;
96
96
  }
97
97
  async function o(s) {
98
98
  if (i || r.value) return;
99
- const d = ++a, c = new AbortController();
100
- u = c, r.value = !0, x.value = void 0;
99
+ const c = ++a, d = new AbortController();
100
+ u = d, r.value = !0, C.value = void 0;
101
101
  try {
102
- const p = await s(c.signal);
103
- return !i && d === a ? p : void 0;
102
+ const p = await s(d.signal);
103
+ return !i && c === a ? p : void 0;
104
104
  } catch (p) {
105
- !i && d === a && (x.value = p);
105
+ !i && c === a && (C.value = p);
106
106
  return;
107
107
  } finally {
108
- !i && d === a && (r.value = !1, u = void 0);
108
+ !i && c === a && (r.value = !1, u = void 0);
109
109
  }
110
110
  }
111
- return ce(() => {
111
+ return ve(() => {
112
112
  i = !0, v();
113
- }), { busy: r, error: x, run: o, cancel: v };
113
+ }), { busy: r, error: C, run: o, cancel: v };
114
114
  }
115
- function ra(r) {
116
- return Array.isArray(r) && r.some((x) => {
117
- const i = x;
118
- return i.type === xa ? !1 : i.type === Ca ? String(i.children).trim() !== "" : i.type === oe ? ra(i.children) : !0;
115
+ function da(r) {
116
+ return Array.isArray(r) && r.some((C) => {
117
+ const i = C;
118
+ return i.type === xa ? !1 : i.type === Ca ? String(i.children).trim() !== "" : i.type === oe ? da(i.children) : !0;
119
119
  });
120
120
  }
121
121
  const et = { status: Ja, background: Ga };
122
- function at(r, x) {
123
- return r.map((i) => typeof i == "string" ? { id: i, title: x[i], icon: et[i] } : i);
122
+ function at(r, C) {
123
+ return r.map((i) => typeof i == "string" ? { id: i, title: C[i], icon: et[i] } : i);
124
124
  }
125
125
  function tt(r) {
126
- const x = /* @__PURE__ */ new Map();
126
+ const C = /* @__PURE__ */ new Map();
127
127
  for (const i of r) {
128
128
  if (i.hidden) continue;
129
- let a = x.get(i.group);
130
- a || x.set(i.group, a = i.group === void 0 ? { items: [] } : { label: i.group, items: [] }), a.items.push({ key: i.id, label: i.title, icon: i.icon, badge: i.badge });
129
+ let a = C.get(i.group);
130
+ a || C.set(i.group, a = i.group === void 0 ? { items: [] } : { label: i.group, items: [] }), a.items.push({ key: i.id, label: i.title, icon: i.icon, badge: i.badge });
131
131
  }
132
- return [...x.values()];
132
+ return [...C.values()];
133
133
  }
134
134
  const lt = { class: "executor-alert" }, nt = {
135
+ key: 0,
136
+ class: "executor-reason"
137
+ }, st = {
135
138
  key: 1,
136
139
  class: "executor-summary"
137
- }, st = ["data-executor-status"], ot = { class: "executor-help" }, it = {
140
+ }, ot = ["data-executor-status"], it = { class: "executor-help" }, ut = {
138
141
  key: 0,
139
142
  class: "executor-hint"
140
- }, ut = /* @__PURE__ */ ie({
143
+ }, rt = /* @__PURE__ */ ie({
141
144
  __name: "ExecutorSettings",
142
145
  props: {
143
146
  admin: { type: Boolean },
@@ -145,82 +148,87 @@ const lt = { class: "executor-alert" }, nt = {
145
148
  ctx: {}
146
149
  },
147
150
  emits: ["confirmed"],
148
- setup(r, { expose: x, emit: i }) {
149
- const a = r, u = i, v = ua(), o = U(() => Te(a.locale)), s = y(), d = y(""), c = y(!1), p = y(!1), h = y(!1), A = y(), $ = y(""), _ = y([]), S = U(() => A.value?.scope_mode === "install-selected"), V = U(() => !!A.value?.scope_mode), E = U(() => [{ label: o.value.homeScope, value: "home" }, ..._.value]), z = U(() => !S.value || !!$.value && E.value.some((Z) => Z.value === $.value)), I = U(() => S.value && !A.value?.selection), K = U(() => $.value !== A.value?.selection?.scope);
150
- let H = !1;
151
- async function le(Z) {
152
- const G = Z ?? await v.status();
153
- if (H || (s.value = G, !a.ctx)) return;
154
- const j = await a.ctx.call("delegate.status");
155
- if (H || (A.value = j, j.scope_mode !== "install-selected")) return;
156
- const N = [];
157
- let D = 0;
158
- for (let O = 0; O < 128; O++) {
159
- const J = await a.ctx.call("bg.browse", { offset: D });
160
- if (H) return;
161
- if (!Array.isArray(J.shares) || !Number.isSafeInteger(J.total) || J.total < 0 || !J.shares.length && D < J.total) throw { code: "EXECUTOR_PROTOCOL" };
162
- for (const ae of J.shares)
163
- ae.isdir && ae.path === "/" + ae.name && !["home", "homes"].includes(ae.name.toLowerCase()) && N.push({ label: ae.name, value: "shared:" + ae.name });
164
- if (D += J.shares.length, D >= J.total) break;
165
- if (O === 127) throw { code: "EXECUTOR_PROTOCOL" };
151
+ setup(r, { expose: C, emit: i }) {
152
+ const a = r, u = i, v = ra(), o = I(() => Ue(a.locale)), s = m(), c = m(""), d = m(!1), p = m(!1), h = m(!1), R = m(""), x = m(), _ = m(""), U = m([]), $ = I(() => x.value?.scope_mode === "install-selected"), V = I(() => !!x.value?.scope_mode), P = I(() => [{ label: o.value.homeScope, value: "home" }, ...U.value]), A = I(() => !$.value || !!_.value && P.value.some((H) => H.value === _.value)), K = I(() => $.value && !x.value?.selection), Q = I(() => _.value !== x.value?.selection?.scope);
153
+ let Y = !1;
154
+ async function X(H) {
155
+ const W = H ?? await v.status();
156
+ if (Y || (s.value = W, !a.ctx)) return;
157
+ const q = await a.ctx.call("delegate.status");
158
+ if (Y || (x.value = q, q.scope_mode !== "install-selected")) return;
159
+ const B = [];
160
+ let O = 0;
161
+ for (let Z = 0; Z < 128; Z++) {
162
+ const ae = await a.ctx.call("bg.browse", { offset: O });
163
+ if (Y) return;
164
+ if (!Array.isArray(ae.shares) || !Number.isSafeInteger(ae.total) || ae.total < 0 || !ae.shares.length && O < ae.total) throw { code: "EXECUTOR_PROTOCOL" };
165
+ for (const ue of ae.shares)
166
+ ue.isdir && ue.path === "/" + ue.name && !["home", "homes"].includes(ue.name.toLowerCase()) && B.push({ label: ue.name, value: "shared:" + ue.name });
167
+ if (O += ae.shares.length, O >= ae.total) break;
168
+ if (Z === 127) throw { code: "EXECUTOR_PROTOCOL" };
166
169
  }
167
- _.value = N, $.value = j.selection?.scope ?? j.preselection ?? "";
170
+ U.value = B, _.value = q.selection?.scope ?? q.preselection ?? "";
168
171
  }
169
- async function X() {
170
- if (!(!a.admin || c.value)) {
171
- c.value = !0, h.value = !1;
172
+ async function J() {
173
+ if (!(!a.admin || d.value)) {
174
+ d.value = !0, h.value = !1, R.value = "";
172
175
  try {
173
- await le();
176
+ await X();
174
177
  } catch {
175
- H || (h.value = !0);
178
+ Y || (h.value = !0);
176
179
  } finally {
177
- H || (c.value = !1);
180
+ Y || (d.value = !1);
178
181
  }
179
182
  }
180
183
  }
181
- async function Q() {
182
- if (!a.admin || c.value || !d.value || !z.value || h.value) return;
183
- c.value = !0, h.value = !1;
184
- const Z = d.value;
185
- d.value = "", p.value = !0;
184
+ async function j() {
185
+ if (!a.admin || d.value || !c.value || !A.value || h.value) return;
186
+ d.value = !0, h.value = !1, R.value = "";
187
+ const H = c.value;
188
+ c.value = "", p.value = !0;
186
189
  try {
187
- let G = S.value ? await v.authorize(Z, $.value) : await v.authorize(Z);
188
- await le(G), !H && S.value && G.state === "ready" && I.value && (G = await v.authorize(Z, $.value), await le(G)), H || u("confirmed");
190
+ let W = $.value ? await v.authorize(H, _.value) : await v.authorize(H);
191
+ if (await X(W), !Y && $.value && W.state === "ready" && K.value && (W = await v.authorize(H, _.value), await X(W)), W.state === "needs-admin-approval")
192
+ throw R.value = W.reason ?? "", W;
193
+ Y || u("confirmed");
189
194
  } catch {
190
- H || (h.value = !0);
195
+ Y || (h.value = !0);
191
196
  } finally {
192
- H || (c.value = !1, p.value = !1);
197
+ Y || (d.value = !1, p.value = !1);
193
198
  }
194
199
  }
195
- const Y = U(() => p.value ? "confirming" : s.value ? s.value.state === "ready" ? I.value ? "scope" : "ready" : s.value.state === "needs-admin-approval" ? "needs" : "blocked" : void 0), ne = U(() => ({ ready: { tone: "success", text: o.value.statusReady }, scope: { tone: "warning", text: o.value.statusScope }, needs: { tone: "warning", text: o.value.statusNeeds }, blocked: { tone: "danger", text: o.value.statusBlocked }, confirming: { tone: "info", text: o.value.statusConfirming } })[Y.value ?? "confirming"]), se = U(() => S.value && !!A.value?.selection && !K.value), ee = U(() => p.value ? o.value.confirmingHelp : c.value || h.value ? "" : se.value ? o.value.hintUnchanged : d.value ? "" : o.value.hintPassword);
196
- return x({ refresh: X }), ve(() => {
197
- v.subscribe?.((Z) => {
198
- H || (s.value = Z);
199
- }), X();
200
- }), ce(() => {
201
- H = !0, d.value = "";
202
- }), (Z, G) => r.admin ? (n(), g(e(ke), {
200
+ const ee = I(() => p.value ? "confirming" : s.value ? s.value.state === "ready" ? K.value ? "scope" : "ready" : s.value.state === "needs-admin-approval" ? "needs" : "blocked" : void 0), se = I(() => ({ ready: { tone: "success", text: o.value.statusReady }, scope: { tone: "warning", text: o.value.statusScope }, needs: { tone: "warning", text: o.value.statusNeeds }, blocked: { tone: "danger", text: o.value.statusBlocked }, confirming: { tone: "info", text: o.value.statusConfirming } })[ee.value ?? "confirming"]), te = I(() => $.value && !!x.value?.selection && !Q.value), ne = I(() => p.value ? o.value.confirmingHelp : d.value || h.value ? "" : te.value ? o.value.hintUnchanged : c.value ? "" : o.value.hintPassword);
201
+ return C({ refresh: J }), pe(() => {
202
+ v.subscribe?.((H) => {
203
+ Y || (s.value = H);
204
+ }), J();
205
+ }), ve(() => {
206
+ Y = !0, c.value = "";
207
+ }), (H, W) => r.admin ? (n(), g(e(_e), {
203
208
  key: 0,
204
209
  title: o.value.setupTitle,
205
210
  description: V.value ? o.value.setupHelpFiles : o.value.setupHelp,
206
211
  loading: !s.value && !p.value && !h.value,
207
212
  collapsible: !1,
208
- "aria-busy": c.value
213
+ "aria-busy": d.value
209
214
  }, {
210
215
  default: t(() => [
211
- h.value ? (n(), g(e(W), {
216
+ h.value ? (n(), g(e(G), {
212
217
  key: 0,
213
218
  tone: "danger",
214
219
  role: "alert"
215
220
  }, {
216
221
  default: t(() => [
217
- P("span", lt, [
218
- k(l(o.value.setupError), 1),
222
+ z("span", lt, [
223
+ z("span", null, [
224
+ k(l(o.value.setupError), 1),
225
+ R.value ? (n(), T("span", nt, l(R.value), 1)) : y("", !0)
226
+ ]),
219
227
  f(e(F), {
220
228
  variant: "secondary",
221
229
  size: "sm",
222
- disabled: c.value,
223
- onClick: X
230
+ disabled: d.value,
231
+ onClick: J
224
232
  }, {
225
233
  default: t(() => [
226
234
  k(l(o.value.retry), 1)
@@ -230,26 +238,26 @@ const lt = { class: "executor-alert" }, nt = {
230
238
  ])
231
239
  ]),
232
240
  _: 1
233
- })) : b("", !0),
234
- s.value || p.value ? (n(), R("div", nt, [
241
+ })) : y("", !0),
242
+ s.value || p.value ? (n(), T("div", st, [
235
243
  f(e($e), {
236
244
  label: o.value.status,
237
245
  "label-width": "10rem"
238
246
  }, {
239
247
  default: t(() => [
240
- P("span", {
248
+ z("span", {
241
249
  role: "status",
242
- "data-executor-status": Y.value
250
+ "data-executor-status": ee.value
243
251
  }, [
244
252
  f(e(Se), {
245
- tone: ne.value.tone
253
+ tone: se.value.tone
246
254
  }, {
247
255
  default: t(() => [
248
- k(l(ne.value.text), 1)
256
+ k(l(se.value.text), 1)
249
257
  ]),
250
258
  _: 1
251
259
  }, 8, ["tone"])
252
- ], 8, st)
260
+ ], 8, ot)
253
261
  ]),
254
262
  _: 1
255
263
  }, 8, ["label"]),
@@ -262,21 +270,21 @@ const lt = { class: "executor-alert" }, nt = {
262
270
  k(l(s.value.reason), 1)
263
271
  ]),
264
272
  _: 1
265
- }, 8, ["label"])) : b("", !0),
266
- A.value?.selection ? (n(), g(e($e), {
273
+ }, 8, ["label"])) : y("", !0),
274
+ x.value?.selection ? (n(), g(e($e), {
267
275
  key: 1,
268
276
  label: o.value.protectedScope,
269
277
  "label-width": "10rem"
270
278
  }, {
271
279
  default: t(() => [
272
- f(e(ye), {
273
- path: A.value.selection.root
280
+ f(e(me), {
281
+ path: x.value.selection.root
274
282
  }, null, 8, ["path"])
275
283
  ]),
276
284
  _: 1
277
- }, 8, ["label"])) : b("", !0)
278
- ])) : b("", !0),
279
- Y.value === "needs" ? (n(), g(e(W), {
285
+ }, 8, ["label"])) : y("", !0)
286
+ ])) : y("", !0),
287
+ ee.value === "needs" ? (n(), g(e(G), {
280
288
  key: 2,
281
289
  tone: "info"
282
290
  }, {
@@ -284,7 +292,7 @@ const lt = { class: "executor-alert" }, nt = {
284
292
  k(l(V.value ? o.value.needs : o.value.executorNeeds), 1)
285
293
  ]),
286
294
  _: 1
287
- })) : Y.value === "scope" ? (n(), g(e(W), {
295
+ })) : ee.value === "scope" ? (n(), g(e(G), {
288
296
  key: 3,
289
297
  tone: "warning"
290
298
  }, {
@@ -292,7 +300,7 @@ const lt = { class: "executor-alert" }, nt = {
292
300
  k(l(o.value.scopeNeeds), 1)
293
301
  ]),
294
302
  _: 1
295
- })) : Y.value === "blocked" ? (n(), g(e(W), {
303
+ })) : ee.value === "blocked" ? (n(), g(e(G), {
296
304
  key: 4,
297
305
  tone: "warning"
298
306
  }, {
@@ -300,8 +308,8 @@ const lt = { class: "executor-alert" }, nt = {
300
308
  k(l(V.value ? o.value.blocked : o.value.executorBlocked), 1)
301
309
  ]),
302
310
  _: 1
303
- })) : b("", !0),
304
- A.value?.mismatch ? (n(), g(e(W), {
311
+ })) : y("", !0),
312
+ x.value?.mismatch ? (n(), g(e(G), {
305
313
  key: 5,
306
314
  tone: "warning"
307
315
  }, {
@@ -309,44 +317,44 @@ const lt = { class: "executor-alert" }, nt = {
309
317
  k(l(o.value.scopeMismatch), 1)
310
318
  ]),
311
319
  _: 1
312
- })) : b("", !0),
313
- s.value?.state === "needs-admin-approval" || s.value?.retry || S.value && s.value?.state === "ready" ? (n(), g(e(Pe), {
320
+ })) : y("", !0),
321
+ s.value?.state === "needs-admin-approval" || s.value?.retry || $.value && s.value?.state === "ready" ? (n(), g(e(Pe), {
314
322
  key: 6,
315
323
  direction: "vertical",
316
324
  class: "executor-form",
317
- onSubmit: ze(Q, ["prevent"])
325
+ onSubmit: ze(j, ["prevent"])
318
326
  }, {
319
327
  default: t(() => [
320
- S.value ? (n(), R(oe, { key: 0 }, [
321
- P("p", ot, l(A.value?.selection ? o.value.scopeChangeHelp : o.value.preselectionHelp), 1),
322
- f(e(he), {
328
+ $.value ? (n(), T(oe, { key: 0 }, [
329
+ z("p", it, l(x.value?.selection ? o.value.scopeChangeHelp : o.value.preselectionHelp), 1),
330
+ f(e(ke), {
323
331
  label: o.value.scopeLabel,
324
332
  "label-for": "delegate-scope"
325
333
  }, {
326
334
  default: t(() => [
327
- f(e(oa), {
335
+ f(e(ia), {
328
336
  id: "delegate-scope",
329
- modelValue: $.value,
330
- "onUpdate:modelValue": G[0] || (G[0] = (j) => $.value = j),
331
- options: E.value,
332
- disabled: c.value || h.value
337
+ modelValue: _.value,
338
+ "onUpdate:modelValue": W[0] || (W[0] = (q) => _.value = q),
339
+ options: P.value,
340
+ disabled: d.value || h.value
333
341
  }, null, 8, ["modelValue", "options", "disabled"])
334
342
  ]),
335
343
  _: 1
336
344
  }, 8, ["label"])
337
- ], 64)) : b("", !0),
338
- f(e(he), {
345
+ ], 64)) : y("", !0),
346
+ f(e(ke), {
339
347
  label: o.value.password,
340
348
  "label-for": "delegate-password"
341
349
  }, {
342
350
  default: t(() => [
343
- f(e(we), {
351
+ f(e(xe), {
344
352
  id: "delegate-password",
345
- modelValue: d.value,
346
- "onUpdate:modelValue": G[1] || (G[1] = (j) => d.value = j),
353
+ modelValue: c.value,
354
+ "onUpdate:modelValue": W[1] || (W[1] = (q) => c.value = q),
347
355
  type: "password",
348
356
  autocomplete: "current-password",
349
- disabled: c.value || h.value
357
+ disabled: d.value || h.value
350
358
  }, null, 8, ["modelValue", "disabled"])
351
359
  ]),
352
360
  _: 1
@@ -356,103 +364,103 @@ const lt = { class: "executor-alert" }, nt = {
356
364
  f(e(F), {
357
365
  type: "submit",
358
366
  variant: "primary",
359
- disabled: c.value || h.value || !d.value || !z.value || se.value
367
+ disabled: d.value || h.value || !c.value || !A.value || te.value
360
368
  }, {
361
369
  default: t(() => [
362
- k(l(S.value ? A.value?.selection ? o.value.confirmScope : o.value.confirmShare : o.value.authorize), 1)
370
+ k(l($.value ? x.value?.selection ? o.value.confirmScope : o.value.confirmShare : o.value.authorize), 1)
363
371
  ]),
364
372
  _: 1
365
373
  }, 8, ["disabled"]),
366
- ee.value ? (n(), R("span", it, l(ee.value), 1)) : b("", !0)
374
+ ne.value ? (n(), T("span", ut, l(ne.value), 1)) : y("", !0)
367
375
  ]),
368
376
  _: 1
369
377
  })
370
378
  ]),
371
379
  _: 1
372
- })) : b("", !0)
380
+ })) : y("", !0)
373
381
  ]),
374
382
  _: 1
375
- }, 8, ["title", "description", "loading", "aria-busy"])) : b("", !0);
383
+ }, 8, ["title", "description", "loading", "aria-busy"])) : y("", !0);
376
384
  }
377
- }), ue = (r, x) => {
385
+ }), re = (r, C) => {
378
386
  const i = r.__vccOpts || r;
379
- for (const [a, u] of x)
387
+ for (const [a, u] of C)
380
388
  i[a] = u;
381
389
  return i;
382
- }, da = /* @__PURE__ */ ue(ut, [["__scopeId", "data-v-574273c9"]]), rt = {
390
+ }, ca = /* @__PURE__ */ re(rt, [["__scopeId", "data-v-928609ab"]]), dt = {
383
391
  key: 0,
384
392
  class: "executor-notice"
385
- }, dt = { class: "executor-notice-body" }, ct = /* @__PURE__ */ ie({
393
+ }, ct = { class: "executor-notice-body" }, vt = /* @__PURE__ */ ie({
386
394
  __name: "ExecutorNotice",
387
395
  props: {
388
396
  locale: {},
389
397
  ctx: {}
390
398
  },
391
399
  setup(r) {
392
- const x = r, i = U(() => Te(x.locale)), a = x.ctx.executor;
393
- a && na(Ke, a);
394
- const u = y("checking"), v = y(!1), o = U(() => x.ctx.user?.isAdmin === !0), s = U(() => u.value === "needs-admin-approval" || u.value === "blocked"), d = U(() => x.ctx.call ? x.ctx : void 0);
395
- let c = !1, p;
400
+ const C = r, i = I(() => Ue(C.locale)), a = Re(Te, void 0) ?? C.ctx.executor;
401
+ a && sa(Te, a);
402
+ const u = m("checking"), v = m(!1), o = I(() => C.ctx.user?.isAdmin === !0), s = I(() => u.value === "needs-admin-approval" || u.value === "blocked"), c = I(() => a?.call ? { call: (R, x) => a.call(R, x) } : C.ctx.call ? C.ctx : void 0);
403
+ let d = !1, p;
396
404
  async function h() {
397
405
  if (a)
398
406
  try {
399
- const A = await a.status();
400
- c || (u.value = A.state);
407
+ const R = await a.status();
408
+ d || (u.value = R.state);
401
409
  } catch {
402
- c || (u.value = "blocked");
410
+ d || (u.value = "blocked");
403
411
  }
404
412
  }
405
- return ve(() => {
406
- a && (a.subscribe?.((A) => {
407
- c || (u.value = A.state);
408
- }), p = x.ctx.reopen?.(() => {
413
+ return pe(() => {
414
+ a && (a.subscribe?.((R) => {
415
+ d || (u.value = R.state);
416
+ }), p = C.ctx.reopen?.(() => {
409
417
  h();
410
418
  }), h());
411
- }), ce(() => {
412
- c = !0, p?.();
413
- }), (A, $) => s.value ? (n(), R("div", rt, [
414
- f(e(W), { tone: "warning" }, {
419
+ }), ve(() => {
420
+ d = !0, p?.();
421
+ }), (R, x) => s.value ? (n(), T("div", dt, [
422
+ f(e(G), { tone: "warning" }, {
415
423
  default: t(() => [
416
- P("span", dt, [
424
+ z("span", ct, [
417
425
  k(l(o.value ? i.value.noticeAdmin : i.value.noticeUser), 1),
418
426
  o.value ? (n(), g(e(F), {
419
427
  key: 0,
420
428
  variant: "secondary",
421
429
  size: "sm",
422
- onClick: $[0] || ($[0] = (_) => v.value = !0)
430
+ onClick: x[0] || (x[0] = (_) => v.value = !0)
423
431
  }, {
424
432
  default: t(() => [
425
433
  k(l(i.value.noticeApprove), 1)
426
434
  ]),
427
435
  _: 1
428
- })) : b("", !0)
436
+ })) : y("", !0)
429
437
  ])
430
438
  ]),
431
439
  _: 1
432
440
  }),
433
- o.value ? (n(), g(e(Ue), {
441
+ o.value ? (n(), g(e(De), {
434
442
  key: 0,
435
443
  open: v.value && s.value,
436
444
  title: i.value.authorize,
437
445
  width: "560px",
438
- "onUpdate:open": $[1] || ($[1] = (_) => v.value = _)
446
+ "onUpdate:open": x[1] || (x[1] = (_) => v.value = _)
439
447
  }, {
440
448
  default: t(() => [
441
- f(da, {
449
+ f(ca, {
442
450
  admin: !0,
443
451
  locale: r.locale,
444
- ctx: d.value,
452
+ ctx: c.value,
445
453
  onConfirmed: h
446
454
  }, null, 8, ["locale", "ctx"])
447
455
  ]),
448
456
  _: 1
449
- }, 8, ["open", "title"])) : b("", !0)
450
- ])) : b("", !0);
457
+ }, 8, ["open", "title"])) : y("", !0)
458
+ ])) : y("", !0);
451
459
  }
452
- }), vt = /* @__PURE__ */ ue(ct, [["__scopeId", "data-v-af58fd95"]]), pt = { role: "alert" }, ft = {
460
+ }), pt = /* @__PURE__ */ re(vt, [["__scopeId", "data-v-771da19a"]]), ft = { role: "alert" }, yt = {
453
461
  key: 2,
454
462
  class: "app-notices"
455
- }, yt = { class: "app-page-content" }, mt = /* @__PURE__ */ ie({
463
+ }, mt = { class: "app-page-content" }, bt = /* @__PURE__ */ ie({
456
464
  __name: "AppShell",
457
465
  props: {
458
466
  locale: {},
@@ -470,36 +478,36 @@ const lt = { class: "executor-alert" }, nt = {
470
478
  appRoot: { type: Boolean }
471
479
  },
472
480
  emits: ["update:modelValue"],
473
- setup(r, { emit: x }) {
474
- const i = r, a = x, u = U(() => pa(i.locale)), v = U(() => at(i.pages, u.value)), o = U(() => tt(v.value)), s = U(() => v.value.find((I) => I.id === i.modelValue)), d = U(() => s.value?.title ?? u.value[i.modelValue] ?? u.value.status), c = $a("scroller"), p = U(() => i.pages.some((I) => typeof I != "string"));
475
- Ne(() => i.modelValue, () => {
476
- p.value && !i.keepScroll && c.value && (c.value.$el.scrollTop = 0);
481
+ setup(r, { emit: C }) {
482
+ const i = r, a = C, u = I(() => fa(i.locale)), v = I(() => at(i.pages, u.value)), o = I(() => tt(v.value)), s = I(() => v.value.find((A) => A.id === i.modelValue)), c = I(() => s.value?.title ?? u.value[i.modelValue] ?? u.value.status), d = $a("scroller"), p = I(() => i.pages.some((A) => typeof A != "string"));
483
+ Me(() => i.modelValue, () => {
484
+ p.value && !i.keepScroll && d.value && (d.value.$el.scrollTop = 0);
477
485
  }, { flush: "post" });
478
- const h = Sa(), A = U(() => i.denied === !0 ? {} : i.denied || void 0), $ = U(() => i.ctx !== void 0 && fa(i.ctx)), _ = U(() => $.value ? i.ctx : void 0), S = (I, { slots: K }) => K.default?.(), V = U(() => i.ctx !== void 0 && !$.value);
479
- function E() {
486
+ const h = Sa(), R = I(() => i.denied === !0 ? {} : i.denied || void 0), x = I(() => i.ctx !== void 0 && je(i.ctx)), _ = I(() => x.value ? i.ctx : void 0), U = (A, { slots: K }) => K.default?.(), $ = I(() => i.ctx !== void 0 && !x.value);
487
+ function V() {
480
488
  i.ctx?.host?.activateWindow?.();
481
489
  }
482
- const z = U(() => _.value?.user?.name ? _.value.user : void 0);
483
- return za((I) => {
484
- $.value && I(Ia());
485
- }), (I, K) => (n(), g(De(r.appRoot ? e(Ea) : S), Ge(Je(r.appRoot ? { modalScope: "app", dialogBounds: V.value ? "viewport" : "app", style: "height: 100%;", onActivate: E } : {})), {
490
+ const P = I(() => _.value?.user?.name ? _.value.user : void 0);
491
+ return za((A) => {
492
+ x.value && A(Ia());
493
+ }), (A, K) => (n(), g(Fe(r.appRoot ? e(Ea) : U), Ge(Je(r.appRoot ? { modalScope: "app", dialogBounds: $.value ? "viewport" : "app", style: "height: 100%;", onActivate: V } : {})), {
486
494
  default: t(() => [
487
- (n(), g(De(r.appRoot ? e(Ta) : S), Ge(Je(r.appRoot ? { locale: e(je)(r.locale) } : {})), {
495
+ (n(), g(Fe(r.appRoot ? e(Ta) : U), Ge(Je(r.appRoot ? { locale: e(ea)(r.locale) } : {})), {
488
496
  default: t(() => [
489
- A.value ? (n(), g(e(Xe), {
497
+ R.value ? (n(), g(e(Xe), {
490
498
  key: 0,
491
499
  class: "app-denied",
492
500
  width: r.pageWidth
493
501
  }, {
494
502
  default: t(() => [
495
- A.value.header !== !1 ? (n(), g(e(Qe), {
503
+ R.value.header !== !1 ? (n(), g(e(Qe), {
496
504
  key: 0,
497
- title: A.value.title ?? u.value.deniedTitle
498
- }, null, 8, ["title"])) : b("", !0),
499
- ge(I.$slots, "denied", {}, () => [
500
- f(e(W), { tone: "danger" }, {
505
+ title: R.value.title ?? u.value.deniedTitle
506
+ }, null, 8, ["title"])) : y("", !0),
507
+ he(A.$slots, "denied", {}, () => [
508
+ f(e(G), { tone: "danger" }, {
501
509
  default: t(() => [
502
- P("span", pt, l(A.value.message ?? u.value.deniedMessage), 1)
510
+ z("span", ft, l(R.value.message ?? u.value.deniedMessage), 1)
503
511
  ]),
504
512
  _: 1
505
513
  })
@@ -510,49 +518,49 @@ const lt = { class: "executor-alert" }, nt = {
510
518
  key: 1,
511
519
  class: We(["app-shell", { "app-shell-fill": s.value?.fill }]),
512
520
  "min-height": "0",
513
- "wide-layout": r.wideLayout ?? ($.value ? "web" : "window"),
521
+ "wide-layout": r.wideLayout ?? (x.value ? "web" : "window"),
514
522
  "sidebar-storage-key": r.sidebarStorageKey,
515
523
  "brand-name": r.brandName ?? r.ctx?.displayName,
516
524
  "brand-icon": r.brandIcon ?? r.ctx?.appIcon
517
- }, Me({
525
+ }, Ke({
518
526
  sidebar: t(() => [
519
527
  f(e(Ra), {
520
528
  "model-value": r.modelValue,
521
529
  groups: o.value,
522
- "onUpdate:modelValue": K[0] || (K[0] = (H) => a("update:modelValue", H))
530
+ "onUpdate:modelValue": K[0] || (K[0] = (Q) => a("update:modelValue", Q))
523
531
  }, null, 8, ["model-value", "groups"])
524
532
  ]),
525
533
  default: t(() => [
526
534
  f(e(Xe), {
527
535
  ref_key: "scroller",
528
- ref: c,
536
+ ref: d,
529
537
  class: We(["app-page", { "app-page-fill": s.value?.fill }]),
530
538
  width: r.pageWidth
531
539
  }, {
532
540
  default: t(() => [
533
541
  s.value?.header !== !1 ? (n(), g(e(Qe), {
534
542
  key: 0,
535
- title: d.value,
543
+ title: c.value,
536
544
  description: s.value?.description ?? r.description
537
545
  }, {
538
546
  actions: t(() => [
539
- ge(I.$slots, "actions", { page: r.modelValue }, void 0, !0)
547
+ he(A.$slots, "actions", { page: r.modelValue }, void 0, !0)
540
548
  ]),
541
549
  _: 3
542
- }, 8, ["title", "description"])) : b("", !0),
543
- r.ctx?.executor ? (n(), g(vt, {
550
+ }, 8, ["title", "description"])) : y("", !0),
551
+ r.ctx?.executor ? (n(), g(pt, {
544
552
  key: 1,
545
553
  ctx: r.ctx,
546
554
  locale: r.locale
547
- }, null, 8, ["ctx", "locale"])) : b("", !0),
548
- e(ra)(h.notices?.({ page: r.modelValue })) ? (n(), R("div", ft, [
549
- ge(I.$slots, "notices", { page: r.modelValue }, void 0, !0)
550
- ])) : b("", !0),
551
- P("div", yt, [
552
- s.value?.component ? (n(), g(De(s.value.component), {
555
+ }, null, 8, ["ctx", "locale"])) : y("", !0),
556
+ e(da)(h.notices?.({ page: r.modelValue })) ? (n(), T("div", yt, [
557
+ he(A.$slots, "notices", { page: r.modelValue }, void 0, !0)
558
+ ])) : y("", !0),
559
+ z("div", mt, [
560
+ s.value?.component ? (n(), g(Fe(s.value.component), {
553
561
  key: s.value.id
554
- })) : b("", !0),
555
- ge(I.$slots, "default", { page: r.modelValue }, void 0, !0)
562
+ })) : y("", !0),
563
+ he(A.$slots, "default", { page: r.modelValue }, void 0, !0)
556
564
  ])
557
565
  ]),
558
566
  _: 3
@@ -560,15 +568,15 @@ const lt = { class: "executor-alert" }, nt = {
560
568
  ]),
561
569
  _: 2
562
570
  }, [
563
- h["sidebar-footer"] || z.value ? {
571
+ h["sidebar-footer"] || P.value ? {
564
572
  name: "sidebar-footer",
565
573
  fn: t(() => [
566
- ge(I.$slots, "sidebar-footer", {}, () => [
567
- z.value ? (n(), g(e(Da), {
574
+ he(A.$slots, "sidebar-footer", {}, () => [
575
+ P.value ? (n(), g(e(Da), {
568
576
  key: 0,
569
- name: z.value.name,
570
- detail: z.value.isAdmin ? u.value.administrator : u.value.dsmUser
571
- }, null, 8, ["name", "detail"])) : b("", !0)
577
+ name: P.value.name,
578
+ detail: P.value.isAdmin ? u.value.administrator : u.value.dsmUser
579
+ }, null, 8, ["name", "detail"])) : y("", !0)
572
580
  ], !0)
573
581
  ]),
574
582
  key: "0"
@@ -576,7 +584,7 @@ const lt = { class: "executor-alert" }, nt = {
576
584
  h.toolbar ? {
577
585
  name: "toolbar",
578
586
  fn: t(() => [
579
- ge(I.$slots, "toolbar", { page: r.modelValue }, void 0, !0)
587
+ he(A.$slots, "toolbar", { page: r.modelValue }, void 0, !0)
580
588
  ]),
581
589
  key: "1"
582
590
  } : void 0
@@ -588,27 +596,27 @@ const lt = { class: "executor-alert" }, nt = {
588
596
  _: 3
589
597
  }, 16));
590
598
  }
591
- }), fn = /* @__PURE__ */ ue(mt, [["__scopeId", "data-v-098c9e72"]]), Ze = ["B", "KB", "MB", "GB", "TB", "PB"];
592
- function Oe(r, x) {
599
+ }), bn = /* @__PURE__ */ re(bt, [["__scopeId", "data-v-098c9e72"]]), Ze = ["B", "KB", "MB", "GB", "TB", "PB"];
600
+ function Le(r, C) {
593
601
  let i = 0, a = r;
594
602
  for (; a >= 1024 && i < Ze.length - 1; )
595
603
  a /= 1024, i++;
596
- return `${new Intl.NumberFormat(x, { maximumFractionDigits: i ? 1 : 0 }).format(a)} ${Ze[i]}`;
604
+ return `${new Intl.NumberFormat(C, { maximumFractionDigits: i ? 1 : 0 }).format(a)} ${Ze[i]}`;
597
605
  }
598
- const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-location" }, ht = ["aria-label"], kt = {
606
+ const gt = ["aria-busy", "aria-label"], ht = { class: "file-toolbar file-location" }, kt = ["aria-label"], _t = {
599
607
  key: 0,
600
608
  class: "file-toolbar"
601
- }, _t = {
609
+ }, wt = {
602
610
  key: 1,
603
611
  role: "status"
604
- }, wt = { role: "alert" }, xt = {
612
+ }, xt = { role: "alert" }, Ct = {
605
613
  key: 4,
606
614
  role: "status"
607
- }, Ct = { class: "file-columns" }, $t = ["aria-label"], St = { class: "file-content" }, zt = { class: "file-name" }, Pt = { class: "file-empty" }, Vt = { class: "file-bytes" }, At = {
615
+ }, $t = { class: "file-columns" }, St = ["aria-label"], zt = { class: "file-content" }, Pt = { class: "file-name" }, Vt = { class: "file-empty" }, At = { class: "file-bytes" }, It = {
608
616
  key: 5,
609
617
  class: "file-selection",
610
618
  role: "status"
611
- }, It = /* @__PURE__ */ ie({
619
+ }, Et = /* @__PURE__ */ ie({
612
620
  __name: "FileBrowser",
613
621
  props: {
614
622
  provider: {},
@@ -617,129 +625,129 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
617
625
  transfers: { type: Boolean, default: !1 }
618
626
  },
619
627
  emits: ["selected"],
620
- setup(r, { emit: x }) {
621
- const i = r, a = x, u = U(() => be(i.locale)), v = ja(), { busy: o, error: s } = v, d = y([]), c = y([]), p = y([]), h = y(), A = y(), $ = y(), _ = y([]), S = y(), V = y({ key: "name", direction: "asc" }), E = y(0), z = y([]), I = y(!1);
628
+ setup(r, { emit: C }) {
629
+ const i = r, a = C, u = I(() => ge(i.locale)), v = ja(), { busy: o, error: s } = v, c = m([]), d = m([]), p = m([]), h = m(), R = m(), x = m(), _ = m([]), U = m(), $ = m({ key: "name", direction: "asc" }), V = m(0), P = m([]), A = m(!1);
622
630
  let K = new AbortController();
623
- async function H() {
624
- const C = h.value;
625
- !C || C.isDir || !i.provider.download || await v.run(async (T) => (await i.provider.info(C.path, T), i.provider.download(C.path), !0));
631
+ async function Q() {
632
+ const S = h.value;
633
+ !S || S.isDir || !i.provider.download || await v.run(async (E) => (await i.provider.info(S.path, E), i.provider.download(S.path), !0));
626
634
  }
627
- async function le() {
628
- const C = p.value.at(-1)?.path, T = z.value[0];
629
- if (!C || !T || !i.provider.upload) return;
630
- I.value = !1, await v.run(async (m) => (await i.provider.upload(C, T, m), !0)) && (z.value = [], await ae(p.value), I.value = !0);
635
+ async function Y() {
636
+ const S = p.value.at(-1)?.path, E = P.value[0];
637
+ if (!S || !E || !i.provider.upload) return;
638
+ A.value = !1, await v.run(async (b) => (await i.provider.upload(S, E, b), !0)) && (P.value = [], await ae(p.value), A.value = !0);
631
639
  }
632
- const X = U(() => [
640
+ const X = I(() => [
633
641
  { key: "name", label: u.value.nameColumn, sortable: !0 },
634
642
  { key: "kind", label: u.value.kindColumn },
635
643
  { key: "bytes", label: u.value.sizeColumn, align: "right", sortable: !0 }
636
- ]), Q = Pa((C, { attrs: T }) => Va(Be, { ...T, kind: "folder" }));
637
- function Y(C) {
638
- return { id: C.path, label: C.name, icon: Q, data: C };
644
+ ]), J = Pa((S, { attrs: E }) => Va(qe, { ...E, kind: "folder" }));
645
+ function j(S) {
646
+ return { id: S.path, label: S.name, icon: J, data: S };
639
647
  }
640
- function ne(C) {
641
- h.value = C, a("selected", C?.path);
648
+ function ee(S) {
649
+ h.value = S, a("selected", S?.path);
642
650
  }
643
- function se(C) {
644
- A.value = C.path, ne(i.mode === "folder" ? C.isDir ? C : p.value.at(-1) : C.isDir ? void 0 : C);
651
+ function se(S) {
652
+ R.value = S.path, ee(i.mode === "folder" ? S.isDir ? S : p.value.at(-1) : S.isDir ? void 0 : S);
645
653
  }
646
- function ee(C) {
647
- C.isDir ? pe(C) : se(C);
654
+ function te(S) {
655
+ S.isDir ? fe(S) : se(S);
648
656
  }
649
- const Z = (C) => d.value.find((T) => T.path === C);
650
- function G(C, T, B = []) {
651
- for (const m of C) {
652
- const L = [...B, m.data];
653
- if (m.id === T) return L;
654
- const w = G(m.children ?? [], T, L);
657
+ const ne = (S) => c.value.find((E) => E.path === S);
658
+ function H(S, E, D = []) {
659
+ for (const b of S) {
660
+ const L = [...D, b.data];
661
+ if (b.id === E) return L;
662
+ const w = H(b.children ?? [], E, L);
655
663
  if (w) return w;
656
664
  }
657
665
  }
658
- function j(C, T) {
659
- for (const B of C) {
660
- if (B.id === T) return B;
661
- const m = j(B.children ?? [], T);
662
- if (m) return m;
666
+ function W(S, E) {
667
+ for (const D of S) {
668
+ if (D.id === E) return D;
669
+ const b = W(D.children ?? [], E);
670
+ if (b) return b;
663
671
  }
664
672
  }
665
- function N(C, T, B) {
666
- return C.map((m) => m.id === T ? { ...m, children: B } : m.children ? { ...m, children: N(m.children, T, B) } : m);
673
+ function q(S, E, D) {
674
+ return S.map((b) => b.id === E ? { ...b, children: D } : b.children ? { ...b, children: q(b.children, E, D) } : b);
667
675
  }
668
- let D = 0;
669
- async function O(C) {
670
- const T = ++D;
671
- for (const B of C.slice(0, -1)) {
672
- const m = j(c.value, B.path);
673
- if (!m) break;
674
- if (m.children === void 0) {
675
- const L = await J(m);
676
- if (T !== D || !L) return;
677
- c.value = N(c.value, m.id, L);
676
+ let B = 0;
677
+ async function O(S) {
678
+ const E = ++B;
679
+ for (const D of S.slice(0, -1)) {
680
+ const b = W(d.value, D.path);
681
+ if (!b) break;
682
+ if (b.children === void 0) {
683
+ const L = await Z(b);
684
+ if (E !== B || !L) return;
685
+ d.value = q(d.value, b.id, L);
678
686
  }
679
- _.value.includes(m.id) || (_.value = [..._.value, m.id]);
687
+ _.value.includes(b.id) || (_.value = [..._.value, b.id]);
680
688
  }
681
- S.value = C.at(-1)?.path;
689
+ U.value = S.at(-1)?.path;
682
690
  }
683
- async function J(C) {
684
- const T = E.value, B = K.signal;
691
+ async function Z(S) {
692
+ const E = V.value, D = K.signal;
685
693
  try {
686
- const m = [];
694
+ const b = [];
687
695
  let L = 0;
688
696
  for (; L !== void 0; ) {
689
- const w = await i.provider.list(C.id, { offset: L, sortBy: "name", sortDirection: "ASC" }, B);
690
- if (B.aborted || T !== E.value) return;
691
- m.push(...w.entries.filter((re) => re.isDir).map(Y)), L = w.nextOffset;
697
+ const w = await i.provider.list(S.id, { offset: L, sortBy: "name", sortDirection: "ASC" }, D);
698
+ if (D.aborted || E !== V.value) return;
699
+ b.push(...w.entries.filter((de) => de.isDir).map(j)), L = w.nextOffset;
692
700
  }
693
- return m;
694
- } catch (m) {
695
- !B.aborted && T === E.value && (s.value = m, ne());
701
+ return b;
702
+ } catch (b) {
703
+ !D.aborted && E === V.value && (s.value = b, ee());
696
704
  return;
697
705
  }
698
706
  }
699
- async function ae(C, T = !1) {
707
+ async function ae(S, E = !1) {
700
708
  if (o.value) return;
701
- ne(), A.value = void 0, d.value = T ? d.value : [], $.value = T ? $.value : void 0;
702
- const B = T ? $.value ?? 0 : 0, m = C.at(-1)?.path;
703
- p.value = C;
704
- const L = await v.run((w) => m ? i.provider.list(m, { offset: B, sortBy: V.value.key, sortDirection: V.value.direction === "asc" ? "ASC" : "DESC" }, w) : i.provider.shares(B, w));
705
- L && (d.value = T ? [...d.value, ...L.entries] : L.entries, $.value = L.nextOffset, m ? i.mode === "folder" && !T && ne(C.at(-1)) : c.value = d.value.filter((w) => w.isDir).map(Y), T || O(C));
709
+ ee(), R.value = void 0, c.value = E ? c.value : [], x.value = E ? x.value : void 0;
710
+ const D = E ? x.value ?? 0 : 0, b = S.at(-1)?.path;
711
+ p.value = S;
712
+ const L = await v.run((w) => b ? i.provider.list(b, { offset: D, sortBy: $.value.key, sortDirection: $.value.direction === "asc" ? "ASC" : "DESC" }, w) : i.provider.shares(D, w));
713
+ L && (c.value = E ? [...c.value, ...L.entries] : L.entries, x.value = L.nextOffset, b ? i.mode === "folder" && !E && ee(S.at(-1)) : d.value = c.value.filter((w) => w.isDir).map(j), E || O(S));
706
714
  }
707
- const xe = U(() => [{ id: "", display: u.value.roots }, ...p.value.map((C) => ({ id: C.path, display: C.name }))]);
708
- function Ce(C) {
709
- const T = xe.value.findIndex((B) => B.id === C.id);
710
- T < p.value.length && me(p.value.slice(0, T));
715
+ const ue = I(() => [{ id: "", display: u.value.roots }, ...p.value.map((S) => ({ id: S.path, display: S.name }))]);
716
+ function Ce(S) {
717
+ const E = ue.value.findIndex((D) => D.id === S.id);
718
+ E < p.value.length && be(p.value.slice(0, E));
711
719
  }
712
- function pe(C) {
713
- me([...p.value, C]);
720
+ function fe(S) {
721
+ be([...p.value, S]);
714
722
  }
715
- const fe = y([[]]), de = y(0);
716
- function me(C) {
717
- o.value || (C.at(-1)?.path !== p.value.at(-1)?.path && (fe.value = [...fe.value.slice(0, de.value + 1), C], de.value++), ae(C));
723
+ const ye = m([[]]), ce = m(0);
724
+ function be(S) {
725
+ o.value || (S.at(-1)?.path !== p.value.at(-1)?.path && (ye.value = [...ye.value.slice(0, ce.value + 1), S], ce.value++), ae(S));
718
726
  }
719
- function M(C) {
720
- o.value || (de.value += C, ae(fe.value[de.value]));
727
+ function M(S) {
728
+ o.value || (ce.value += S, ae(ye.value[ce.value]));
721
729
  }
722
- function te(C) {
723
- V.value = { key: C?.key === "bytes" ? "size" : "name", direction: C?.direction ?? "asc" }, ae(p.value);
730
+ function le(S) {
731
+ $.value = { key: S?.key === "bytes" ? "size" : "name", direction: S?.direction ?? "asc" }, ae(p.value);
724
732
  }
725
- function q() {
726
- o.value || (E.value++, K.abort(), K = new AbortController(), c.value = [], _.value = [], S.value = void 0, fe.value = [[]], de.value = 0, ae([]));
733
+ function N() {
734
+ o.value || (V.value++, K.abort(), K = new AbortController(), d.value = [], _.value = [], U.value = void 0, ye.value = [[]], ce.value = 0, ae([]));
727
735
  }
728
- return ve(() => {
736
+ return pe(() => {
729
737
  ae([]);
730
- }), ce(() => {
731
- E.value++, K.abort();
732
- }), (C, T) => (n(), R("section", {
738
+ }), ve(() => {
739
+ V.value++, K.abort();
740
+ }), (S, E) => (n(), T("section", {
733
741
  class: "file-browser",
734
742
  "aria-busy": e(o),
735
743
  "aria-label": u.value.title
736
744
  }, [
737
- P("div", gt, [
738
- f(e(Fe), {
745
+ z("div", ht, [
746
+ f(e(Ne), {
739
747
  label: u.value.back,
740
748
  size: "sm",
741
- disabled: e(o) || de.value === 0,
742
- onClick: T[0] || (T[0] = (B) => M(-1))
749
+ disabled: e(o) || ce.value === 0,
750
+ onClick: E[0] || (E[0] = (D) => M(-1))
743
751
  }, {
744
752
  default: t(() => [
745
753
  f(e(Wa), {
@@ -749,11 +757,11 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
749
757
  ]),
750
758
  _: 1
751
759
  }, 8, ["label", "disabled"]),
752
- f(e(Fe), {
760
+ f(e(Ne), {
753
761
  label: u.value.forward,
754
762
  size: "sm",
755
- disabled: e(o) || de.value === fe.value.length - 1,
756
- onClick: T[1] || (T[1] = (B) => M(1))
763
+ disabled: e(o) || ce.value === ye.value.length - 1,
764
+ onClick: E[1] || (E[1] = (D) => M(1))
757
765
  }, {
758
766
  default: t(() => [
759
767
  f(e(Xa), {
@@ -763,11 +771,11 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
763
771
  ]),
764
772
  _: 1
765
773
  }, 8, ["label", "disabled"]),
766
- f(e(Fe), {
774
+ f(e(Ne), {
767
775
  label: u.value.refresh,
768
776
  size: "sm",
769
777
  disabled: e(o),
770
- onClick: q
778
+ onClick: N
771
779
  }, {
772
780
  default: t(() => [
773
781
  f(e(Qa), {
@@ -777,85 +785,85 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
777
785
  ]),
778
786
  _: 1
779
787
  }, 8, ["label", "disabled"]),
780
- P("nav", {
788
+ z("nav", {
781
789
  class: "file-path",
782
790
  "aria-label": u.value.location
783
791
  }, [
784
792
  f(e(Ba), {
785
- items: xe.value,
793
+ items: ue.value,
786
794
  "collapsed-label": u.value.fullPath,
787
795
  onClickItem: Ce
788
796
  }, null, 8, ["items", "collapsed-label"])
789
- ], 8, ht)
797
+ ], 8, kt)
790
798
  ]),
791
- r.transfers && r.provider.upload && p.value.length ? (n(), R("div", kt, [
799
+ r.transfers && r.provider.upload && p.value.length ? (n(), T("div", _t, [
792
800
  f(e(Fa), {
793
- modelValue: z.value,
794
- "onUpdate:modelValue": T[2] || (T[2] = (B) => z.value = B),
801
+ modelValue: P.value,
802
+ "onUpdate:modelValue": E[2] || (E[2] = (D) => P.value = D),
795
803
  variant: "compact",
796
804
  disabled: e(o),
797
805
  "max-files": 1,
798
806
  "max-size": 16 * 1024 ** 3,
799
807
  title: u.value.upload,
800
- onRejected: T[3] || (T[3] = (B) => s.value = { code: "upload_size_required" })
808
+ onRejected: E[3] || (E[3] = (D) => s.value = { code: "upload_size_required" })
801
809
  }, null, 8, ["modelValue", "disabled", "title"]),
802
810
  f(e(F), {
803
811
  variant: "primary",
804
- disabled: e(o) || !z.value.length,
805
- onClick: le
812
+ disabled: e(o) || !P.value.length,
813
+ onClick: Y
806
814
  }, {
807
815
  default: t(() => [
808
816
  k(l(u.value.upload), 1)
809
817
  ]),
810
818
  _: 1
811
819
  }, 8, ["disabled"])
812
- ])) : b("", !0),
813
- I.value ? (n(), R("p", _t, l(u.value.uploaded), 1)) : b("", !0),
820
+ ])) : y("", !0),
821
+ A.value ? (n(), T("p", wt, l(u.value.uploaded), 1)) : y("", !0),
814
822
  r.transfers && r.provider.download && h.value && !h.value.isDir && !e(s) ? (n(), g(e(F), {
815
823
  key: 2,
816
824
  variant: "secondary",
817
825
  disabled: e(o),
818
- onClick: H
826
+ onClick: Q
819
827
  }, {
820
828
  default: t(() => [
821
829
  k(l(u.value.download), 1)
822
830
  ]),
823
831
  _: 1
824
- }, 8, ["disabled"])) : b("", !0),
825
- e(s) ? (n(), g(e(W), {
832
+ }, 8, ["disabled"])) : y("", !0),
833
+ e(s) ? (n(), g(e(G), {
826
834
  key: 3,
827
835
  tone: "danger"
828
836
  }, {
829
837
  default: t(() => [
830
- P("span", wt, l(e(ea)(e(s), u.value)), 1)
838
+ z("span", xt, l(e(aa)(e(s), u.value)), 1)
831
839
  ]),
832
840
  _: 1
833
- })) : b("", !0),
834
- e(o) ? (n(), R("p", xt, l(u.value.loading), 1)) : b("", !0),
835
- P("div", Ct, [
836
- P("aside", {
841
+ })) : y("", !0),
842
+ e(o) ? (n(), T("p", Ct, l(u.value.loading), 1)) : y("", !0),
843
+ z("div", $t, [
844
+ z("aside", {
837
845
  class: "file-tree",
838
846
  "aria-label": u.value.roots
839
847
  }, [
840
- c.value.length ? (n(), g(e(qa), {
841
- key: E.value,
848
+ d.value.length ? (n(), g(e(qa), {
849
+ key: V.value,
842
850
  "selection-style": "background",
843
- modelValue: S.value,
844
- "onUpdate:modelValue": T[4] || (T[4] = (B) => S.value = B),
845
- nodes: c.value,
846
- "onUpdate:nodes": T[5] || (T[5] = (B) => c.value = B),
851
+ modelValue: U.value,
852
+ "onUpdate:modelValue": E[4] || (E[4] = (D) => U.value = D),
853
+ nodes: d.value,
854
+ "onUpdate:nodes": E[5] || (E[5] = (D) => d.value = D),
847
855
  expanded: _.value,
848
- "onUpdate:expanded": T[6] || (T[6] = (B) => _.value = B),
849
- "load-children": J,
850
- "expand-label": (B, m) => e(qe)(m ? u.value.collapse : u.value.expand, { name: B.label }),
851
- onSelect: T[7] || (T[7] = (B) => me(G(c.value, B.id) ?? [B.data]))
852
- }, null, 8, ["modelValue", "nodes", "expanded", "expand-label"])) : b("", !0)
853
- ], 8, $t),
854
- P("div", St, [
855
- e(s) ? b("", !0) : (n(), g(e(Oa), {
856
+ "onUpdate:expanded": E[6] || (E[6] = (D) => _.value = D),
857
+ "load-children": Z,
858
+ "expand-label": (D, b) => e(Oe)(b ? u.value.collapse : u.value.expand, { name: D.label }),
859
+ onSelect: E[7] || (E[7] = (D) => be(H(d.value, D.id) ?? [D.data]))
860
+ }, null, 8, ["modelValue", "nodes", "expanded", "expand-label"])) : y("", !0)
861
+ ], 8, St),
862
+ z("div", zt, [
863
+ e(s) ? y("", !0) : (n(), g(e(Na), {
856
864
  key: 0,
857
865
  columns: X.value,
858
- rows: d.value.map((B) => ({ ...B, kind: B.isDir ? u.value.directoryKind : u.value.fileKind })),
866
+ rows: c.value.map((D) => ({ ...D, kind: D.isDir ? u.value.directoryKind : u.value.fileKind })),
859
867
  "row-key": "path",
860
868
  footer: !1,
861
869
  resizable: !1,
@@ -863,64 +871,64 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
863
871
  "local-pagination": !1,
864
872
  loading: e(o),
865
873
  "loading-text": u.value.loading,
866
- sort: { key: V.value.key === "size" ? "bytes" : V.value.key, direction: V.value.direction },
874
+ sort: { key: $.value.key === "size" ? "bytes" : $.value.key, direction: $.value.direction },
867
875
  labels: { empty: u.value.emptyFolder },
868
876
  "single-select": "",
869
- "selected-keys": A.value ? [A.value] : [],
870
- "onUpdate:sort": te,
871
- "onUpdate:selectedKeys": T[8] || (T[8] = (B) => {
872
- e(o) || se(Z(B[0]));
877
+ "selected-keys": R.value ? [R.value] : [],
878
+ "onUpdate:sort": le,
879
+ "onUpdate:selectedKeys": E[8] || (E[8] = (D) => {
880
+ e(o) || se(ne(D[0]));
873
881
  }),
874
- onRowActivate: T[9] || (T[9] = (B) => {
875
- e(o) || ee(Z(B.path));
882
+ onRowActivate: E[9] || (E[9] = (D) => {
883
+ e(o) || te(ne(D.path));
876
884
  }),
877
- onRowDblclick: T[10] || (T[10] = (B) => {
878
- e(o) || ee(Z(B.path));
885
+ onRowDblclick: E[10] || (E[10] = (D) => {
886
+ e(o) || te(ne(D.path));
879
887
  })
880
888
  }, {
881
- "cell-name": t(({ row: B }) => [
882
- P("span", zt, [
883
- f(e(Be), {
884
- kind: B.isDir ? "folder" : "file",
885
- name: B.name
889
+ "cell-name": t(({ row: D }) => [
890
+ z("span", Pt, [
891
+ f(e(qe), {
892
+ kind: D.isDir ? "folder" : "file",
893
+ name: D.name
886
894
  }, null, 8, ["kind", "name"]),
887
- k(l(B.name), 1)
895
+ k(l(D.name), 1)
888
896
  ])
889
897
  ]),
890
898
  empty: t(() => [
891
- P("div", Pt, [
892
- f(e(Be), {
899
+ z("div", Vt, [
900
+ f(e(qe), {
893
901
  kind: "folder",
894
902
  size: [40, 40]
895
903
  }),
896
- P("span", null, l(u.value.emptyFolder), 1)
904
+ z("span", null, l(u.value.emptyFolder), 1)
897
905
  ])
898
906
  ]),
899
- "cell-bytes": t(({ row: B }) => [
900
- P("span", Vt, l(B.isDir || B.bytes === void 0 ? "—" : e(Oe)(B.bytes, e(je)(r.locale))), 1)
907
+ "cell-bytes": t(({ row: D }) => [
908
+ z("span", At, l(D.isDir || D.bytes === void 0 ? "—" : e(Le)(D.bytes, e(ea)(r.locale))), 1)
901
909
  ]),
902
910
  _: 1
903
911
  }, 8, ["columns", "rows", "loading", "loading-text", "sort", "labels", "selected-keys"])),
904
- $.value !== void 0 && !e(s) ? (n(), g(e(F), {
912
+ x.value !== void 0 && !e(s) ? (n(), g(e(F), {
905
913
  key: 1,
906
914
  variant: "secondary",
907
915
  disabled: e(o),
908
- onClick: T[11] || (T[11] = (B) => ae(p.value, !0))
916
+ onClick: E[11] || (E[11] = (D) => ae(p.value, !0))
909
917
  }, {
910
918
  default: t(() => [
911
919
  k(l(u.value.loadMore), 1)
912
920
  ]),
913
921
  _: 1
914
- }, 8, ["disabled"])) : b("", !0)
922
+ }, 8, ["disabled"])) : y("", !0)
915
923
  ])
916
924
  ]),
917
- h.value && !e(s) ? (n(), R("p", At, l(e(qe)(u.value.selected, { name: h.value.path })), 1)) : b("", !0)
918
- ], 8, bt));
925
+ h.value && !e(s) ? (n(), T("p", It, l(e(Oe)(u.value.selected, { name: h.value.path })), 1)) : y("", !0)
926
+ ], 8, gt));
919
927
  }
920
- }), ca = /* @__PURE__ */ ue(It, [["__scopeId", "data-v-c689761c"]]), Et = {
928
+ }), va = /* @__PURE__ */ re(Et, [["__scopeId", "data-v-c689761c"]]), Tt = {
921
929
  key: 0,
922
930
  class: "save-consent"
923
- }, Tt = ["aria-busy", "inert"], Ut = /* @__PURE__ */ ie({
931
+ }, Ut = ["aria-busy", "inert"], Rt = /* @__PURE__ */ ie({
924
932
  __name: "NasPicker",
925
933
  props: {
926
934
  open: { type: Boolean },
@@ -933,57 +941,57 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
933
941
  errorText: { type: Function }
934
942
  },
935
943
  emits: ["update:open", "selected", "authorized", "refused"],
936
- setup(r, { emit: x }) {
937
- const i = r, a = x, u = y(), v = U(() => be(i.locale)), o = U(() => aa(i.locale)), s = y(!1), d = y();
938
- let c = 0, p = !1;
939
- Ne(() => i.open, () => {
940
- c++, u.value = void 0, d.value = void 0;
941
- }), ce(() => {
942
- p = !0, c++;
944
+ setup(r, { emit: C }) {
945
+ const i = r, a = C, u = m(), v = I(() => ge(i.locale)), o = I(() => ta(i.locale)), s = m(!1), c = m();
946
+ let d = 0, p = !1;
947
+ Me(() => i.open, () => {
948
+ d++, u.value = void 0, c.value = void 0;
949
+ }), ve(() => {
950
+ p = !0, d++;
943
951
  });
944
952
  function h() {
945
953
  s.value || (u.value = void 0, a("update:open", !1));
946
954
  }
947
- async function A() {
948
- const $ = u.value, _ = i.destination, S = c;
949
- if (!(!$ || s.value || !i.open || p || _ && i.mode !== "folder")) {
955
+ async function R() {
956
+ const x = u.value, _ = i.destination, U = d;
957
+ if (!(!x || s.value || !i.open || p || _ && i.mode !== "folder")) {
950
958
  if (!_) {
951
- a("selected", $), h();
959
+ a("selected", x), h();
952
960
  return;
953
961
  }
954
- s.value = !0, d.value = void 0;
962
+ s.value = !0, c.value = void 0;
955
963
  try {
956
- const V = await _.selectDestination({ key: _.key, path: $ });
957
- if (p || S !== c) return;
958
- if (!V || typeof V.id != "string" || !V.id || typeof V.username != "string" || !V.username || V.path !== $ || V.key !== _.key || V.lifetime !== "until-revoked") throw { code: "commit-uncertain" };
959
- a("authorized", V), s.value = !1, h();
960
- } catch (V) {
961
- if (p || S !== c) return;
962
- if (V?.code === "APP_DENIED") {
963
- s.value = !1, a("refused", V), h();
964
+ const $ = await _.selectDestination({ key: _.key, path: x });
965
+ if (p || U !== d) return;
966
+ if (!$ || typeof $.id != "string" || !$.id || typeof $.username != "string" || !$.username || $.path !== x || $.key !== _.key || $.lifetime !== "until-revoked") throw { code: "commit-uncertain" };
967
+ a("authorized", $), s.value = !1, h();
968
+ } catch ($) {
969
+ if (p || U !== d) return;
970
+ if ($?.code === "APP_DENIED") {
971
+ s.value = !1, a("refused", $), h();
964
972
  return;
965
973
  }
966
- d.value = V;
974
+ c.value = $;
967
975
  } finally {
968
976
  p || (s.value = !1);
969
977
  }
970
978
  }
971
979
  }
972
- return ($, _) => (n(), g(e(Ue), {
980
+ return (x, _) => (n(), g(e(De), {
973
981
  open: r.open,
974
982
  title: r.title ?? (r.mode === "folder" ? v.value.choose : v.value.chooseFile),
975
983
  description: r.description ?? v.value.ownPermissions,
976
984
  "close-label": v.value.close,
977
985
  "show-close": !s.value,
978
986
  width: "800px",
979
- onEscapeKeyDown: _[1] || (_[1] = (S) => {
980
- s.value && S.preventDefault();
987
+ onEscapeKeyDown: _[1] || (_[1] = (U) => {
988
+ s.value && U.preventDefault();
981
989
  }),
982
- onInteractOutside: _[2] || (_[2] = (S) => {
983
- s.value && S.preventDefault();
990
+ onInteractOutside: _[2] || (_[2] = (U) => {
991
+ s.value && U.preventDefault();
984
992
  }),
985
- "onUpdate:open": _[3] || (_[3] = (S) => {
986
- S || h();
993
+ "onUpdate:open": _[3] || (_[3] = (U) => {
994
+ U || h();
987
995
  })
988
996
  }, {
989
997
  footer: t(() => [
@@ -1000,7 +1008,7 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1000
1008
  f(e(F), {
1001
1009
  variant: "primary",
1002
1010
  disabled: !u.value || s.value || !!r.destination && r.mode !== "folder",
1003
- onClick: A
1011
+ onClick: R
1004
1012
  }, {
1005
1013
  default: t(() => [
1006
1014
  k(l(v.value.confirm), 1)
@@ -1009,203 +1017,203 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1009
1017
  }, 8, ["disabled"])
1010
1018
  ]),
1011
1019
  default: t(() => [
1012
- r.destination ? (n(), R("p", Et, l(o.value.selection), 1)) : b("", !0),
1013
- d.value ? (n(), g(e(W), {
1020
+ r.destination ? (n(), T("p", Tt, l(o.value.selection), 1)) : y("", !0),
1021
+ c.value ? (n(), g(e(G), {
1014
1022
  key: 1,
1015
1023
  tone: "danger",
1016
1024
  role: "alert",
1017
1025
  class: "save-message"
1018
1026
  }, {
1019
1027
  default: t(() => [
1020
- k(l(r.errorText?.(d.value) ?? e(Ie)(d.value, o.value, "select")), 1)
1028
+ k(l(r.errorText?.(c.value) ?? e(Ie)(c.value, o.value, "select")), 1)
1021
1029
  ]),
1022
1030
  _: 1
1023
- })) : b("", !0),
1024
- P("div", {
1031
+ })) : y("", !0),
1032
+ z("div", {
1025
1033
  class: "nas-picker-content",
1026
1034
  "aria-busy": s.value,
1027
1035
  inert: s.value
1028
1036
  }, [
1029
- r.open ? (n(), g(ca, {
1037
+ r.open ? (n(), g(va, {
1030
1038
  key: 0,
1031
1039
  provider: r.provider,
1032
1040
  locale: r.locale,
1033
1041
  mode: r.mode,
1034
- onSelected: _[0] || (_[0] = (S) => u.value = S)
1035
- }, null, 8, ["provider", "locale", "mode"])) : b("", !0)
1036
- ], 8, Tt)
1042
+ onSelected: _[0] || (_[0] = (U) => u.value = U)
1043
+ }, null, 8, ["provider", "locale", "mode"])) : y("", !0)
1044
+ ], 8, Ut)
1037
1045
  ]),
1038
1046
  _: 1
1039
1047
  }, 8, ["open", "title", "description", "close-label", "show-close"]));
1040
1048
  }
1041
- }), Re = /* @__PURE__ */ ue(Ut, [["__scopeId", "data-v-6ed8b8f6"]]), Rt = { role: "alert" }, Dt = { class: "files-actions" }, Bt = {
1049
+ }), Be = /* @__PURE__ */ re(Rt, [["__scopeId", "data-v-6ed8b8f6"]]), Dt = { role: "alert" }, Bt = { class: "files-actions" }, Ft = {
1042
1050
  key: 0,
1043
1051
  class: "files-path",
1044
1052
  role: "status"
1045
- }, Ft = /* @__PURE__ */ ie({
1053
+ }, qt = /* @__PURE__ */ ie({
1046
1054
  __name: "FilesPage",
1047
1055
  props: {
1048
1056
  ctx: {}
1049
1057
  },
1050
1058
  setup(r) {
1051
- const x = r, i = y(), a = y(!1), u = y("folder"), v = y(!1), o = y(""), s = y(0), d = ta(x.ctx);
1052
- let c = !1, p;
1059
+ const C = r, i = m(), a = m(!1), u = m("folder"), v = m(!1), o = m(""), s = m(0), c = la(C.ctx);
1060
+ let d = !1, p;
1053
1061
  async function h() {
1054
- if (!c) {
1062
+ if (!d) {
1055
1063
  i.value = void 0, a.value = !1, o.value = "", v.value = !1, s.value++;
1056
1064
  try {
1057
- await x.ctx.call("nas.session.status"), c || (a.value = !0);
1058
- } catch (A) {
1059
- !c && A?.code !== "unknown_method" && (i.value = A);
1065
+ await C.ctx.call("nas.session.status"), d || (a.value = !0);
1066
+ } catch (R) {
1067
+ !d && R?.code !== "unknown_method" && (i.value = R);
1060
1068
  }
1061
1069
  }
1062
1070
  }
1063
- return ve(() => {
1064
- p = x.ctx.reopen(() => {
1071
+ return pe(() => {
1072
+ p = C.ctx.reopen(() => {
1065
1073
  h();
1066
1074
  }), h();
1067
- }), ce(() => {
1068
- c = !0, p?.(), d.dispose();
1069
- }), (A, $) => (n(), R(oe, null, [
1070
- i.value ? (n(), g(e(W), {
1075
+ }), ve(() => {
1076
+ d = !0, p?.(), c.dispose();
1077
+ }), (R, x) => (n(), T(oe, null, [
1078
+ i.value ? (n(), g(e(G), {
1071
1079
  key: 0,
1072
1080
  tone: "danger"
1073
1081
  }, {
1074
1082
  default: t(() => [
1075
- P("span", Rt, l(e(ea)(i.value, e(be)(r.ctx.locale))), 1),
1083
+ z("span", Dt, l(e(aa)(i.value, e(ge)(r.ctx.locale))), 1),
1076
1084
  f(e(F), {
1077
1085
  variant: "secondary",
1078
1086
  onClick: h
1079
1087
  }, {
1080
1088
  default: t(() => [
1081
- k(l(e(be)(r.ctx.locale).refresh), 1)
1089
+ k(l(e(ge)(r.ctx.locale).refresh), 1)
1082
1090
  ]),
1083
1091
  _: 1
1084
1092
  })
1085
1093
  ]),
1086
1094
  _: 1
1087
- })) : b("", !0),
1088
- a.value ? (n(), g(e(ke), {
1095
+ })) : y("", !0),
1096
+ a.value ? (n(), g(e(_e), {
1089
1097
  key: 1,
1090
- title: e(be)(r.ctx.locale).title,
1091
- description: e(be)(r.ctx.locale).ownPermissions,
1098
+ title: e(ge)(r.ctx.locale).title,
1099
+ description: e(ge)(r.ctx.locale).ownPermissions,
1092
1100
  collapsible: !1
1093
1101
  }, {
1094
1102
  default: t(() => [
1095
- P("div", Dt, [
1103
+ z("div", Bt, [
1096
1104
  f(e(F), {
1097
1105
  variant: "secondary",
1098
- onClick: $[0] || ($[0] = (_) => {
1106
+ onClick: x[0] || (x[0] = (_) => {
1099
1107
  u.value = "folder", v.value = !0;
1100
1108
  })
1101
1109
  }, {
1102
1110
  default: t(() => [
1103
- k(l(e(be)(r.ctx.locale).choose), 1)
1111
+ k(l(e(ge)(r.ctx.locale).choose), 1)
1104
1112
  ]),
1105
1113
  _: 1
1106
1114
  }),
1107
1115
  f(e(F), {
1108
1116
  variant: "secondary",
1109
- onClick: $[1] || ($[1] = (_) => {
1117
+ onClick: x[1] || (x[1] = (_) => {
1110
1118
  u.value = "file", v.value = !0;
1111
1119
  })
1112
1120
  }, {
1113
1121
  default: t(() => [
1114
- k(l(e(be)(r.ctx.locale).chooseFile), 1)
1122
+ k(l(e(ge)(r.ctx.locale).chooseFile), 1)
1115
1123
  ]),
1116
1124
  _: 1
1117
1125
  })
1118
1126
  ]),
1119
- o.value ? (n(), R("p", Bt, [
1120
- f(e(ye), { path: o.value }, null, 8, ["path"])
1121
- ])) : b("", !0),
1122
- (n(), g(ca, {
1127
+ o.value ? (n(), T("p", Ft, [
1128
+ f(e(me), { path: o.value }, null, 8, ["path"])
1129
+ ])) : y("", !0),
1130
+ (n(), g(va, {
1123
1131
  key: s.value,
1124
- provider: e(d),
1132
+ provider: e(c),
1125
1133
  locale: r.ctx.locale,
1126
1134
  transfers: ""
1127
1135
  }, null, 8, ["provider", "locale"])),
1128
- f(Re, {
1129
- provider: e(d),
1136
+ f(Be, {
1137
+ provider: e(c),
1130
1138
  locale: r.ctx.locale,
1131
1139
  mode: u.value,
1132
1140
  open: v.value,
1133
- "onUpdate:open": $[2] || ($[2] = (_) => v.value = _),
1134
- onSelected: $[3] || ($[3] = (_) => o.value = _)
1141
+ "onUpdate:open": x[2] || (x[2] = (_) => v.value = _),
1142
+ onSelected: x[3] || (x[3] = (_) => o.value = _)
1135
1143
  }, null, 8, ["provider", "locale", "mode", "open"])
1136
1144
  ]),
1137
1145
  _: 1
1138
- }, 8, ["title", "description"])) : b("", !0)
1146
+ }, 8, ["title", "description"])) : y("", !0)
1139
1147
  ], 64));
1140
1148
  }
1141
- }), yn = /* @__PURE__ */ ue(Ft, [["__scopeId", "data-v-15f9eb8e"]]), qt = { role: "alert" }, Ot = 5e3, mn = /* @__PURE__ */ ie({
1149
+ }), gn = /* @__PURE__ */ re(qt, [["__scopeId", "data-v-15f9eb8e"]]), Nt = { role: "alert" }, Ot = 5e3, hn = /* @__PURE__ */ ie({
1142
1150
  __name: "PortalSettings",
1143
1151
  props: {
1144
1152
  portal: {}
1145
1153
  },
1146
1154
  setup(r) {
1147
- const x = r, i = ua(), a = x.portal.messages, u = y(), v = y(""), o = y(!1), s = y("");
1148
- let d = !1;
1149
- function c(E) {
1150
- d || (u.value = E, v.value = E.alias || E.defaultAlias);
1155
+ const C = r, i = ra(), a = C.portal.messages, u = m(), v = m(""), o = m(!1), s = m("");
1156
+ let c = !1;
1157
+ function d(V) {
1158
+ c || (u.value = V, v.value = V.alias || V.defaultAlias);
1151
1159
  }
1152
1160
  const p = /* @__PURE__ */ Symbol("late");
1153
- async function h(E) {
1161
+ async function h(V) {
1154
1162
  if (o.value) return;
1155
1163
  o.value = !0, s.value = "";
1156
- const z = E();
1164
+ const P = V();
1157
1165
  try {
1158
- const I = await Promise.race([z, new Promise((K) => setTimeout(() => K(p), Ot))]);
1159
- if (I !== p) {
1160
- c(I);
1166
+ const A = await Promise.race([P, new Promise((K) => setTimeout(() => K(p), Ot))]);
1167
+ if (A !== p) {
1168
+ d(A);
1161
1169
  return;
1162
1170
  }
1163
- c(await x.portal.status());
1171
+ d(await C.portal.status());
1164
1172
  try {
1165
- await z;
1173
+ await P;
1166
1174
  } finally {
1167
- c(await x.portal.status());
1175
+ d(await C.portal.status());
1168
1176
  }
1169
- } catch (I) {
1170
- d || (s.value = a[I?.code || ""] || a.portal_unavailable);
1177
+ } catch (A) {
1178
+ c || (s.value = a[A?.code || ""] || a.portal_unavailable);
1171
1179
  } finally {
1172
- d || (o.value = !1);
1180
+ c || (o.value = !1);
1173
1181
  }
1174
1182
  }
1175
- const A = U(() => !!u.value?.canManage && !!u.value.entry && u.value.entry !== "registered"), $ = U(() => {
1176
- const E = u.value;
1177
- if (E) {
1178
- if (A.value) return E.entry === "unregistered" ? a.entryOff : a.cleanupRequired;
1179
- if (E.state !== "active")
1180
- return E.canManage ? a.inactive : E.controlPanel ? void 0 : a.askAdmin;
1183
+ const R = I(() => !!u.value?.canManage && !!u.value.entry && u.value.entry !== "registered"), x = I(() => {
1184
+ const V = u.value;
1185
+ if (V) {
1186
+ if (R.value) return V.entry === "unregistered" ? a.entryOff : a.cleanupRequired;
1187
+ if (V.state !== "active")
1188
+ return V.canManage ? a.inactive : V.controlPanel ? void 0 : a.askAdmin;
1181
1189
  }
1182
1190
  }), _ = a.link?.replace(/\s*[::]\s*$/, "");
1183
- async function S() {
1184
- const E = await x.portal.register();
1185
- return E.canManage && E.entry === "registered" && E.state === "inactive" ? (c(E), x.portal.apply(E.alias || E.defaultAlias)) : E;
1191
+ async function U() {
1192
+ const V = await C.portal.register();
1193
+ return V.canManage && V.entry === "registered" && V.state === "inactive" ? (d(V), C.portal.apply(V.alias || V.defaultAlias)) : V;
1186
1194
  }
1187
- function V() {
1188
- o.value || x.portal.status().then(c, () => {
1195
+ function $() {
1196
+ o.value || C.portal.status().then(d, () => {
1189
1197
  });
1190
1198
  }
1191
- return ve(() => {
1192
- i.subscribe?.(V), V();
1193
- }), ce(() => {
1194
- d = !0;
1195
- }), (E, z) => u.value ? (n(), g(e(ke), {
1199
+ return pe(() => {
1200
+ i.subscribe?.($), $();
1201
+ }), ve(() => {
1202
+ c = !0;
1203
+ }), (V, P) => u.value ? (n(), g(e(_e), {
1196
1204
  key: 0,
1197
1205
  title: e(a).title,
1198
- description: $.value,
1206
+ description: x.value,
1199
1207
  collapsible: !1,
1200
1208
  "aria-busy": o.value
1201
- }, Me({
1209
+ }, Ke({
1202
1210
  default: t(() => [
1203
1211
  u.value.state === "active" ? (n(), g(e(Ee), {
1204
1212
  key: 0,
1205
1213
  label: e(_)
1206
1214
  }, {
1207
1215
  default: t(() => [
1208
- f(e(ia), {
1216
+ f(e(ua), {
1209
1217
  href: u.value.url,
1210
1218
  external: ""
1211
1219
  }, {
@@ -1216,20 +1224,20 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1216
1224
  }, 8, ["href"])
1217
1225
  ]),
1218
1226
  _: 1
1219
- }, 8, ["label"])) : b("", !0),
1220
- u.value.canManage && !A.value ? (n(), g(e(Pe), {
1227
+ }, 8, ["label"])) : y("", !0),
1228
+ u.value.canManage && !R.value ? (n(), g(e(Pe), {
1221
1229
  key: 1,
1222
- onSubmit: z[4] || (z[4] = ze((I) => h(() => r.portal.apply(v.value)), ["prevent"]))
1230
+ onSubmit: P[4] || (P[4] = ze((A) => h(() => r.portal.apply(v.value)), ["prevent"]))
1223
1231
  }, {
1224
1232
  default: t(() => [
1225
1233
  f(e(Ee), {
1226
1234
  label: e(a).alias
1227
1235
  }, {
1228
1236
  default: t(() => [
1229
- f(e(we), {
1237
+ f(e(xe), {
1230
1238
  id: "portal-alias",
1231
1239
  modelValue: v.value,
1232
- "onUpdate:modelValue": z[0] || (z[0] = (I) => v.value = I),
1240
+ "onUpdate:modelValue": P[0] || (P[0] = (A) => v.value = A),
1233
1241
  "aria-label": e(a).alias,
1234
1242
  maxlength: "64",
1235
1243
  autocomplete: "off",
@@ -1259,16 +1267,16 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1259
1267
  key: 0,
1260
1268
  variant: "secondary",
1261
1269
  disabled: o.value,
1262
- onClick: z[1] || (z[1] = (I) => h(() => r.portal.disable()))
1270
+ onClick: P[1] || (P[1] = (A) => h(() => r.portal.disable()))
1263
1271
  }, {
1264
1272
  default: t(() => [
1265
1273
  k(l(e(a).disable), 1)
1266
1274
  ]),
1267
1275
  _: 1
1268
- }, 8, ["disabled"])) : b("", !0),
1276
+ }, 8, ["disabled"])) : y("", !0),
1269
1277
  f(e(F), {
1270
1278
  variant: "secondary",
1271
- onClick: z[2] || (z[2] = (I) => r.portal.openControlPanel())
1279
+ onClick: P[2] || (P[2] = (A) => r.portal.openControlPanel())
1272
1280
  }, {
1273
1281
  default: t(() => [
1274
1282
  k(l(e(a).advanced), 1)
@@ -1279,13 +1287,13 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1279
1287
  key: 1,
1280
1288
  variant: "secondary",
1281
1289
  disabled: o.value,
1282
- onClick: z[3] || (z[3] = (I) => h(() => r.portal.unregister()))
1290
+ onClick: P[3] || (P[3] = (A) => h(() => r.portal.unregister()))
1283
1291
  }, {
1284
1292
  default: t(() => [
1285
1293
  k(l(e(a).unregister), 1)
1286
1294
  ]),
1287
1295
  _: 1
1288
- }, 8, ["disabled"])) : b("", !0)
1296
+ }, 8, ["disabled"])) : y("", !0)
1289
1297
  ]),
1290
1298
  _: 1
1291
1299
  })
@@ -1294,27 +1302,27 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1294
1302
  })
1295
1303
  ]),
1296
1304
  _: 1
1297
- })) : b("", !0),
1298
- s.value ? (n(), g(e(W), {
1305
+ })) : y("", !0),
1306
+ s.value ? (n(), g(e(G), {
1299
1307
  key: 2,
1300
1308
  tone: "danger"
1301
1309
  }, {
1302
1310
  default: t(() => [
1303
- P("span", qt, l(s.value), 1)
1311
+ z("span", Nt, l(s.value), 1)
1304
1312
  ]),
1305
1313
  _: 1
1306
- })) : b("", !0)
1314
+ })) : y("", !0)
1307
1315
  ]),
1308
1316
  _: 2
1309
1317
  }, [
1310
- A.value ? {
1318
+ R.value ? {
1311
1319
  name: "footer",
1312
1320
  fn: t(() => [
1313
1321
  u.value.entry === "unregistered" ? (n(), g(e(F), {
1314
1322
  key: 0,
1315
1323
  variant: "primary",
1316
1324
  disabled: o.value,
1317
- onClick: z[5] || (z[5] = (I) => h(S))
1325
+ onClick: P[5] || (P[5] = (A) => h(U))
1318
1326
  }, {
1319
1327
  default: t(() => [
1320
1328
  k(l(e(a).register), 1)
@@ -1324,7 +1332,7 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1324
1332
  key: 1,
1325
1333
  variant: "primary",
1326
1334
  disabled: o.value,
1327
- onClick: z[6] || (z[6] = (I) => h(() => r.portal.unregister()))
1335
+ onClick: P[6] || (P[6] = (A) => h(() => r.portal.unregister()))
1328
1336
  }, {
1329
1337
  default: t(() => [
1330
1338
  k(l(e(a).unregister), 1)
@@ -1338,7 +1346,7 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1338
1346
  fn: t(() => [
1339
1347
  f(e(F), {
1340
1348
  variant: "secondary",
1341
- onClick: z[7] || (z[7] = (I) => r.portal.openControlPanel())
1349
+ onClick: P[7] || (P[7] = (A) => r.portal.openControlPanel())
1342
1350
  }, {
1343
1351
  default: t(() => [
1344
1352
  k(l(e(a).controlPanel), 1)
@@ -1348,65 +1356,65 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1348
1356
  ]),
1349
1357
  key: "1"
1350
1358
  } : void 0
1351
- ]), 1032, ["title", "description", "aria-busy"])) : b("", !0);
1359
+ ]), 1032, ["title", "description", "aria-busy"])) : y("", !0);
1352
1360
  }
1353
- }), Lt = ["aria-busy"], Nt = {
1361
+ }), Lt = ["aria-busy"], Mt = {
1354
1362
  key: 1,
1355
1363
  role: "status"
1356
- }, Mt = { role: "alert" }, Kt = { role: "status" }, Ht = /* @__PURE__ */ ie({
1364
+ }, Kt = { role: "alert" }, Ht = { role: "status" }, Gt = /* @__PURE__ */ ie({
1357
1365
  __name: "LoginPage",
1358
1366
  props: {
1359
1367
  session: {},
1360
1368
  locale: {}
1361
1369
  },
1362
1370
  setup(r) {
1363
- const x = r, i = U(() => ya(x.locale)), a = y(""), u = y(""), v = y(""), o = y(!1), s = y(!1), d = y(""), c = y(), p = U(() => window.location.protocol === "https:");
1371
+ const C = r, i = I(() => ya(C.locale)), a = m(""), u = m(""), v = m(""), o = m(!1), s = m(!1), c = m(""), d = m(), p = I(() => window.location.protocol === "https:");
1364
1372
  let h = !1;
1365
- function A(V) {
1366
- const E = V?.code;
1367
- return i.value.errors[E || ""] || i.value.errors.failed;
1373
+ function R($) {
1374
+ const V = $?.code;
1375
+ return i.value.errors[V || ""] || i.value.errors.failed;
1368
1376
  }
1369
- async function $() {
1377
+ async function x() {
1370
1378
  if (!(s.value || !p.value || !a.value || !u.value || o.value && !v.value)) {
1371
- s.value = !0, d.value = "";
1379
+ s.value = !0, c.value = "";
1372
1380
  try {
1373
- await x.session.login(a.value, u.value, v.value), u.value = "", v.value = "";
1374
- } catch (V) {
1381
+ await C.session.login(a.value, u.value, v.value), u.value = "", v.value = "";
1382
+ } catch ($) {
1375
1383
  if (h) return;
1376
- v.value = "", V?.code === "otp_required" ? o.value = !0 : (d.value = A(V), u.value = "", o.value = !1);
1384
+ v.value = "", $?.code === "otp_required" ? o.value = !0 : (c.value = R($), u.value = "", o.value = !1);
1377
1385
  } finally {
1378
- h || (s.value = !1, o.value && (await Aa(), h || c.value?.querySelector("input")?.focus()));
1386
+ h || (s.value = !1, o.value && (await Aa(), h || d.value?.querySelector("input")?.focus()));
1379
1387
  }
1380
1388
  }
1381
1389
  }
1382
1390
  async function _() {
1383
1391
  if (!s.value) {
1384
- s.value = !0, d.value = "";
1392
+ s.value = !0, c.value = "";
1385
1393
  try {
1386
- await x.session.bootstrap();
1387
- } catch (V) {
1388
- h || (d.value = A(V));
1394
+ await C.session.bootstrap();
1395
+ } catch ($) {
1396
+ h || (c.value = R($));
1389
1397
  } finally {
1390
1398
  h || (s.value = !1);
1391
1399
  }
1392
1400
  }
1393
1401
  }
1394
- function S() {
1395
- u.value = "", v.value = "", o.value = !1, d.value = "";
1402
+ function U() {
1403
+ u.value = "", v.value = "", o.value = !1, c.value = "";
1396
1404
  }
1397
- return sa(() => {
1405
+ return oa(() => {
1398
1406
  h = !0, u.value = "", v.value = "";
1399
- }), (V, E) => (n(), R("main", {
1407
+ }), ($, V) => (n(), T("main", {
1400
1408
  class: "identity-login",
1401
1409
  "aria-busy": s.value
1402
1410
  }, [
1403
- f(e(ke), {
1411
+ f(e(_e), {
1404
1412
  title: i.value.title,
1405
1413
  description: i.value.intro,
1406
1414
  collapsible: !1
1407
1415
  }, {
1408
1416
  default: t(() => [
1409
- p.value ? b("", !0) : (n(), g(e(W), {
1417
+ p.value ? y("", !0) : (n(), g(e(G), {
1410
1418
  key: 0,
1411
1419
  tone: "warning",
1412
1420
  title: i.value.httpsTitle
@@ -1416,47 +1424,47 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1416
1424
  ]),
1417
1425
  _: 1
1418
1426
  }, 8, ["title"])),
1419
- r.session.notice.value ? (n(), R("p", Nt, l(i.value.notices[r.session.notice.value]), 1)) : b("", !0),
1420
- d.value ? (n(), g(e(W), {
1427
+ r.session.notice.value ? (n(), T("p", Mt, l(i.value.notices[r.session.notice.value]), 1)) : y("", !0),
1428
+ c.value ? (n(), g(e(G), {
1421
1429
  key: 2,
1422
1430
  tone: "danger",
1423
1431
  title: i.value.failedTitle
1424
1432
  }, {
1425
1433
  default: t(() => [
1426
- P("span", Mt, l(d.value), 1)
1434
+ z("span", Kt, l(c.value), 1)
1427
1435
  ]),
1428
1436
  _: 1
1429
- }, 8, ["title"])) : b("", !0),
1437
+ }, 8, ["title"])) : y("", !0),
1430
1438
  f(e(Pe), {
1431
- onSubmit: ze($, ["prevent"])
1439
+ onSubmit: ze(x, ["prevent"])
1432
1440
  }, {
1433
1441
  default: t(() => [
1434
- f(e(he), {
1442
+ f(e(ke), {
1435
1443
  label: i.value.account
1436
1444
  }, {
1437
1445
  default: t(() => [
1438
- f(e(we), {
1446
+ f(e(xe), {
1439
1447
  modelValue: a.value,
1440
- "onUpdate:modelValue": E[0] || (E[0] = (z) => a.value = z),
1448
+ "onUpdate:modelValue": V[0] || (V[0] = (P) => a.value = P),
1441
1449
  autocomplete: "username",
1442
1450
  disabled: s.value || o.value || !p.value
1443
1451
  }, null, 8, ["modelValue", "disabled"])
1444
1452
  ]),
1445
1453
  _: 1
1446
1454
  }, 8, ["label"]),
1447
- o.value ? (n(), R(oe, { key: 1 }, [
1448
- P("p", Kt, l(i.value.otpPrompt), 1),
1449
- P("div", {
1455
+ o.value ? (n(), T(oe, { key: 1 }, [
1456
+ z("p", Ht, l(i.value.otpPrompt), 1),
1457
+ z("div", {
1450
1458
  ref_key: "otpField",
1451
- ref: c
1459
+ ref: d
1452
1460
  }, [
1453
- f(e(he), {
1461
+ f(e(ke), {
1454
1462
  label: i.value.otp
1455
1463
  }, {
1456
1464
  default: t(() => [
1457
- f(e(we), {
1465
+ f(e(xe), {
1458
1466
  modelValue: v.value,
1459
- "onUpdate:modelValue": E[2] || (E[2] = (z) => v.value = z),
1467
+ "onUpdate:modelValue": V[2] || (V[2] = (P) => v.value = P),
1460
1468
  inputmode: "numeric",
1461
1469
  autocomplete: "one-time-code",
1462
1470
  disabled: s.value
@@ -1465,14 +1473,14 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1465
1473
  _: 1
1466
1474
  }, 8, ["label"])
1467
1475
  ], 512)
1468
- ], 64)) : (n(), g(e(he), {
1476
+ ], 64)) : (n(), g(e(ke), {
1469
1477
  key: 0,
1470
1478
  label: i.value.password
1471
1479
  }, {
1472
1480
  default: t(() => [
1473
- f(e(we), {
1481
+ f(e(xe), {
1474
1482
  modelValue: u.value,
1475
- "onUpdate:modelValue": E[1] || (E[1] = (z) => u.value = z),
1483
+ "onUpdate:modelValue": V[1] || (V[1] = (P) => u.value = P),
1476
1484
  type: "password",
1477
1485
  autocomplete: "current-password",
1478
1486
  disabled: s.value || !p.value
@@ -1496,7 +1504,7 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1496
1504
  key: 0,
1497
1505
  variant: "secondary",
1498
1506
  disabled: s.value,
1499
- onClick: S
1507
+ onClick: U
1500
1508
  }, {
1501
1509
  default: t(() => [
1502
1510
  k(l(i.value.otherAccount), 1)
@@ -1524,135 +1532,135 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1524
1532
  }, 8, ["title", "description"])
1525
1533
  ], 8, Lt));
1526
1534
  }
1527
- }), bn = /* @__PURE__ */ ue(Ht, [["__scopeId", "data-v-1c0358cd"]]), Gt = { role: "status" }, Jt = { class: "integration-help" }, Wt = { class: "integration-help" }, Xt = { class: "integration-help" }, Qt = { class: "integration-actions" }, Yt = {
1535
+ }), kn = /* @__PURE__ */ re(Gt, [["__scopeId", "data-v-1c0358cd"]]), Jt = { role: "status" }, Wt = { class: "integration-help" }, Xt = { class: "integration-help" }, Qt = { class: "integration-help" }, Yt = { class: "integration-actions" }, Zt = {
1528
1536
  key: 0,
1529
1537
  role: "status",
1530
1538
  "data-bg-picked": "",
1531
1539
  class: "bg-path"
1532
- }, Zt = { class: "integration-actions" }, jt = { key: 2 }, el = {
1540
+ }, jt = { class: "integration-actions" }, el = { key: 2 }, al = {
1533
1541
  key: 3,
1534
1542
  class: "bg-cards"
1535
- }, al = { class: "bg-card-body" }, tl = {
1543
+ }, tl = { class: "bg-card-body" }, ll = {
1536
1544
  key: 0,
1537
1545
  class: "integration-help"
1538
- }, ll = {
1546
+ }, nl = {
1539
1547
  key: 1,
1540
1548
  class: "integration-help"
1541
- }, nl = {
1549
+ }, sl = {
1542
1550
  key: 2,
1543
1551
  class: "integration-help bg-path"
1544
- }, sl = {
1552
+ }, ol = {
1545
1553
  key: 3,
1546
1554
  class: "integration-help"
1547
- }, ol = {
1555
+ }, il = {
1548
1556
  key: 4,
1549
1557
  class: "integration-help"
1550
- }, il = { class: "integration-actions" }, ul = ["aria-label"], rl = { class: "integration-help" }, dl = { key: 1 }, cl = {
1558
+ }, ul = { class: "integration-actions" }, rl = ["aria-label"], dl = { class: "integration-help" }, cl = { key: 1 }, vl = {
1551
1559
  key: 2,
1552
1560
  class: "bg-cards"
1553
- }, vl = { class: "bg-card-body" }, pl = {
1561
+ }, pl = { class: "bg-card-body" }, fl = {
1554
1562
  key: 0,
1555
1563
  class: "integration-help"
1556
- }, fl = {
1564
+ }, yl = {
1557
1565
  key: 1,
1558
1566
  class: "integration-help"
1559
- }, yl = { class: "integration-help" }, ml = { class: "integration-actions" }, bl = { class: "integration-actions" }, gl = { class: "integration-actions" }, hl = /* @__PURE__ */ ie({
1567
+ }, ml = { class: "integration-help" }, bl = { class: "integration-actions" }, gl = { class: "integration-actions" }, hl = { class: "integration-actions" }, kl = /* @__PURE__ */ ie({
1560
1568
  __name: "BackgroundPanel",
1561
1569
  props: {
1562
1570
  ctx: {}
1563
1571
  },
1564
- setup(r, { expose: x }) {
1565
- const i = r, a = U(() => ma(i.ctx.locale)), u = (m, L) => qe(m, L, i.ctx.locale), v = y(), o = y([]), s = y(), d = y(!1), c = y(!1), p = y([]), h = y(), A = y(!1), $ = y("3600"), _ = y(), S = y(), V = y(), E = y(!1), z = y(!1), I = y(), K = y(""), H = y(""), le = ba(i.ctx);
1566
- let X, Q = !1;
1567
- const Y = (m) => !["queued", "running"].includes(m.state), ne = (m) => Y(m) && m.state !== "paused", se = (m) => m.state === "running" && m.pauseRequested, ee = (m) => se(m) ? a.value.pausing : a.value[`state_${m.state}`], Z = (m) => se(m) ? "warning" : { queued: "info", running: "info", paused: "warning", succeeded: "success", failed: "danger", canceled: "neutral", interrupted: "danger" }[m.state];
1568
- async function G(m, L) {
1572
+ setup(r, { expose: C }) {
1573
+ const i = r, a = I(() => ma(i.ctx.locale)), u = (b, L) => Oe(b, L, i.ctx.locale), v = m(), o = m([]), s = m(), c = m(!1), d = m(!1), p = m([]), h = m(), R = m(!1), x = m("3600"), _ = m(), U = m(), $ = m(), V = m(!1), P = m(!1), A = m(), K = m(""), Q = m(""), Y = ba(i.ctx);
1574
+ let X, J = !1;
1575
+ const j = (b) => !["queued", "running"].includes(b.state), ee = (b) => j(b) && b.state !== "paused", se = (b) => b.state === "running" && b.pauseRequested, te = (b) => se(b) ? a.value.pausing : a.value[`state_${b.state}`], ne = (b) => se(b) ? "warning" : { queued: "info", running: "info", paused: "warning", succeeded: "success", failed: "danger", canceled: "neutral", interrupted: "danger" }[b.state];
1576
+ async function H(b, L) {
1569
1577
  try {
1570
- return await i.ctx.call(m, L);
1578
+ return await i.ctx.call(b, L);
1571
1579
  } catch (w) {
1572
- if (Q) return;
1573
- w?.code === "unsupported" ? (d.value = !0, o.value = [], p.value = [], h.value = void 0, _.value = void 0, S.value = void 0, v.value = void 0, V.value = void 0, I.value = void 0, K.value && URL.revokeObjectURL(K.value), K.value = "") : Q || (s.value = w);
1580
+ if (J) return;
1581
+ w?.code === "unsupported" ? (c.value = !0, o.value = [], p.value = [], h.value = void 0, _.value = void 0, U.value = void 0, v.value = void 0, $.value = void 0, A.value = void 0, K.value && URL.revokeObjectURL(K.value), K.value = "") : J || (s.value = w);
1574
1582
  return;
1575
1583
  }
1576
1584
  }
1577
- async function j() {
1578
- if (!(Q || E.value)) {
1579
- E.value = !0;
1585
+ async function W() {
1586
+ if (!(J || V.value)) {
1587
+ V.value = !0;
1580
1588
  try {
1581
- const m = await G("bg.status");
1582
- if (!m || Q) return;
1583
- if (!m.limits || typeof m.admin != "boolean") {
1589
+ const b = await H("bg.status");
1590
+ if (!b || J) return;
1591
+ if (!b.limits || typeof b.admin != "boolean") {
1584
1592
  s.value = { code: "unavailable" };
1585
1593
  return;
1586
1594
  }
1587
- d.value = !1, v.value = m;
1588
- const L = await G("bg.jobs.list");
1589
- L && !Q && (o.value = L.jobs ?? []);
1590
- const w = await G("bg.schedules.list");
1591
- w && !Q && (p.value = w.schedules ?? []), !Q && o.value.every(Y) && p.value.every((re) => !re.enabled) && X && (clearInterval(X), X = void 0);
1595
+ c.value = !1, v.value = b;
1596
+ const L = await H("bg.jobs.list");
1597
+ L && !J && (o.value = L.jobs ?? []);
1598
+ const w = await H("bg.schedules.list");
1599
+ w && !J && (p.value = w.schedules ?? []), !J && o.value.every(j) && p.value.every((de) => !de.enabled) && X && (clearInterval(X), X = void 0);
1592
1600
  } finally {
1593
- E.value = !1;
1601
+ V.value = !1;
1594
1602
  }
1595
1603
  }
1596
1604
  }
1597
- function N() {
1605
+ function q() {
1598
1606
  X || (X = setInterval(() => {
1599
- j();
1607
+ W();
1600
1608
  }, 3e3));
1601
1609
  }
1602
- async function D(m) {
1603
- if (!c.value) {
1604
- c.value = !0, s.value = void 0;
1610
+ async function B(b) {
1611
+ if (!d.value) {
1612
+ d.value = !0, s.value = void 0;
1605
1613
  try {
1606
- await m(), await j(), (p.value.some((L) => L.enabled) || o.value.some((L) => !Y(L))) && N();
1614
+ await b(), await W(), (p.value.some((L) => L.enabled) || o.value.some((L) => !j(L))) && q();
1607
1615
  } finally {
1608
- Q || (c.value = !1);
1616
+ J || (d.value = !1);
1609
1617
  }
1610
1618
  }
1611
1619
  }
1612
- const O = () => D(async () => {
1613
- if (!V.value) return;
1614
- await G("bg.jobs.purge", { owner: V.value }) && (V.value = void 0);
1615
- }), J = U(() => [{ value: "3600", label: a.value.hourly }, { value: "86400", label: a.value.daily }, { value: "604800", label: a.value.weekly }]), ae = (m) => {
1616
- h.value = m, A.value = !1, $.value = "3600";
1617
- }, xe = () => D(async () => {
1618
- if (!h.value || !A.value) return;
1619
- await G("bg.schedules.create", { key: He(), jobId: h.value.id, intervalSeconds: Number($.value), consent: !0 }) && (h.value = void 0);
1620
- }), Ce = (m) => D(() => G("bg.schedules.disable", { id: m })), pe = () => D(async () => {
1620
+ const O = () => B(async () => {
1621
+ if (!$.value) return;
1622
+ await H("bg.jobs.purge", { owner: $.value }) && ($.value = void 0);
1623
+ }), Z = I(() => [{ value: "3600", label: a.value.hourly }, { value: "86400", label: a.value.daily }, { value: "604800", label: a.value.weekly }]), ae = (b) => {
1624
+ h.value = b, R.value = !1, x.value = "3600";
1625
+ }, ue = () => B(async () => {
1626
+ if (!h.value || !R.value) return;
1627
+ await H("bg.schedules.create", { key: He(), jobId: h.value.id, intervalSeconds: Number(x.value), consent: !0 }) && (h.value = void 0);
1628
+ }), Ce = (b) => B(() => H("bg.schedules.disable", { id: b })), fe = () => B(async () => {
1621
1629
  if (!_.value) return;
1622
- await G("bg.schedules.delete", { id: _.value.id }) && (_.value = void 0);
1623
- }), fe = () => D(async () => {
1624
- if (!S.value) return;
1625
- await G("bg.schedules.enable", { id: S.value.id, consent: !0 }) && (S.value = void 0);
1626
- }), de = (m) => {
1627
- const L = new Date(m);
1630
+ await H("bg.schedules.delete", { id: _.value.id }) && (_.value = void 0);
1631
+ }), ye = () => B(async () => {
1632
+ if (!U.value) return;
1633
+ await H("bg.schedules.enable", { id: U.value.id, consent: !0 }) && (U.value = void 0);
1634
+ }), ce = (b) => {
1635
+ const L = new Date(b);
1628
1636
  return Number.isFinite(L.getTime()) ? L.toLocaleString() : a.value.unknownTime;
1629
- }, me = (m) => m.copyRetained && m.state === "succeeded" && !m.scheduleId && m.submitter?.user === v.value?.owner?.user && m.submitter?.uid === v.value?.owner?.uid, M = (m) => D(() => G("bg.jobs.cancel", { id: m })), te = (m) => D(() => G("bg.jobs.pause", { id: m })), q = (m) => D(() => G("bg.jobs.resume", { id: m })), C = (m) => {
1630
- const L = m.lastIndexOf("/");
1631
- I.value = { folder: m.slice(0, L), relative: m.slice(L + 1) };
1632
- }, T = () => D(async () => {
1633
- if (!I.value) return;
1634
- await G("bg.jobs.submit", { key: He(), ...I.value }) && (I.value = void 0);
1637
+ }, be = (b) => b.copyRetained && b.state === "succeeded" && !b.scheduleId && b.submitter?.user === v.value?.owner?.user && b.submitter?.uid === v.value?.owner?.uid, M = (b) => B(() => H("bg.jobs.cancel", { id: b })), le = (b) => B(() => H("bg.jobs.pause", { id: b })), N = (b) => B(() => H("bg.jobs.resume", { id: b })), S = (b) => {
1638
+ const L = b.lastIndexOf("/");
1639
+ A.value = { folder: b.slice(0, L), relative: b.slice(L + 1) };
1640
+ }, E = () => B(async () => {
1641
+ if (!A.value) return;
1642
+ await H("bg.jobs.submit", { key: He(), ...A.value }) && (A.value = void 0);
1635
1643
  });
1636
- async function B(m) {
1637
- const L = await G("bg.jobs.result", { id: m.id });
1638
- !L || Q || (K.value && URL.revokeObjectURL(K.value), K.value = URL.createObjectURL(new Blob([JSON.stringify(L.result, null, 2)], { type: "application/json" })), H.value = `${m.name || m.id}.sha256.json`);
1644
+ async function D(b) {
1645
+ const L = await H("bg.jobs.result", { id: b.id });
1646
+ !L || J || (K.value && URL.revokeObjectURL(K.value), K.value = URL.createObjectURL(new Blob([JSON.stringify(L.result, null, 2)], { type: "application/json" })), Q.value = `${b.name || b.id}.sha256.json`);
1639
1647
  }
1640
- return x({ refresh: j }), ve(() => {
1641
- j().then(() => {
1642
- (p.value.some((m) => m.enabled) || o.value.some((m) => !Y(m))) && N();
1648
+ return C({ refresh: W }), pe(() => {
1649
+ W().then(() => {
1650
+ (p.value.some((b) => b.enabled) || o.value.some((b) => !j(b))) && q();
1643
1651
  });
1644
- }), ce(() => {
1645
- Q = !0, le.dispose(), X && clearInterval(X), K.value && URL.revokeObjectURL(K.value);
1646
- }), (m, L) => (n(), g(e(ke), {
1647
- "aria-busy": c.value || E.value,
1652
+ }), ve(() => {
1653
+ J = !0, Y.dispose(), X && clearInterval(X), K.value && URL.revokeObjectURL(K.value);
1654
+ }), (b, L) => (n(), g(e(_e), {
1655
+ "aria-busy": d.value || V.value,
1648
1656
  title: a.value.title,
1649
- description: d.value ? void 0 : a.value.help,
1650
- loading: !v.value && !s.value && !d.value,
1657
+ description: c.value ? void 0 : a.value.help,
1658
+ loading: !v.value && !s.value && !c.value,
1651
1659
  collapsible: !1,
1652
1660
  "data-background-panel": ""
1653
1661
  }, {
1654
1662
  default: t(() => [
1655
- d.value ? (n(), g(e(W), {
1663
+ c.value ? (n(), g(e(G), {
1656
1664
  key: 0,
1657
1665
  tone: "warning"
1658
1666
  }, {
@@ -1660,8 +1668,8 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1660
1668
  k(l(a.value.unsupported), 1)
1661
1669
  ]),
1662
1670
  _: 1
1663
- })) : (n(), R(oe, { key: 1 }, [
1664
- s.value ? (n(), g(e(W), {
1671
+ })) : (n(), T(oe, { key: 1 }, [
1672
+ s.value ? (n(), g(e(G), {
1665
1673
  key: 0,
1666
1674
  tone: "danger",
1667
1675
  role: "alert"
@@ -1670,17 +1678,17 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1670
1678
  k(l(e(ga)(s.value, a.value)), 1)
1671
1679
  ]),
1672
1680
  _: 1
1673
- })) : b("", !0),
1674
- v.value ? (n(), R(oe, { key: 1 }, [
1675
- P("p", Gt, l(v.value.worker?.alive ? u(a.value.workerRunning, { user: v.value.worker.username }) : a.value.workerStopped), 1),
1676
- P("p", Jt, l(u(a.value.limits, { size: v.value.limits.maxInputBytes / 1024, queue: v.value.limits.maxQueued, seconds: v.value.limits.jobTimeoutSeconds })), 1),
1677
- P("p", Wt, l(v.value.admin ? a.value.adminScope : a.value.ownerScope), 1),
1678
- P("p", Xt, l(u(a.value.ownerLimits, { jobs: v.value.limits.maxOwnerPending, size: v.value.limits.maxOwnerBytes / 1024 })), 1),
1679
- P("div", Qt, [
1681
+ })) : y("", !0),
1682
+ v.value ? (n(), T(oe, { key: 1 }, [
1683
+ z("p", Jt, l(v.value.worker?.alive ? u(a.value.workerRunning, { user: v.value.worker.username }) : a.value.workerStopped), 1),
1684
+ z("p", Wt, l(u(a.value.limits, { size: v.value.limits.maxInputBytes / 1024, queue: v.value.limits.maxQueued, seconds: v.value.limits.jobTimeoutSeconds })), 1),
1685
+ z("p", Xt, l(v.value.admin ? a.value.adminScope : a.value.ownerScope), 1),
1686
+ z("p", Qt, l(u(a.value.ownerLimits, { jobs: v.value.limits.maxOwnerPending, size: v.value.limits.maxOwnerBytes / 1024 })), 1),
1687
+ z("div", Yt, [
1680
1688
  f(e(F), {
1681
1689
  variant: "secondary",
1682
- disabled: c.value,
1683
- onClick: L[0] || (L[0] = (w) => z.value = !0)
1690
+ disabled: d.value,
1691
+ onClick: L[0] || (L[0] = (w) => P.value = !0)
1684
1692
  }, {
1685
1693
  default: t(() => [
1686
1694
  k(l(a.value.chooseFile), 1)
@@ -1689,8 +1697,8 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1689
1697
  }, 8, ["disabled"]),
1690
1698
  f(e(F), {
1691
1699
  variant: "primary",
1692
- disabled: c.value || !I.value,
1693
- onClick: T
1700
+ disabled: d.value || !A.value,
1701
+ onClick: E
1694
1702
  }, {
1695
1703
  default: t(() => [
1696
1704
  k(l(a.value.submit), 1)
@@ -1698,32 +1706,32 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1698
1706
  _: 1
1699
1707
  }, 8, ["disabled"])
1700
1708
  ]),
1701
- I.value ? (n(), R("p", Yt, [
1709
+ A.value ? (n(), T("p", Zt, [
1702
1710
  k(l(u(a.value.chosen, { path: "" }).trim()) + " ", 1),
1703
- f(e(ye), {
1704
- path: `${I.value.folder}/${I.value.relative}`
1711
+ f(e(me), {
1712
+ path: `${A.value.folder}/${A.value.relative}`
1705
1713
  }, null, 8, ["path"])
1706
- ])) : b("", !0),
1707
- f(Re, {
1708
- open: z.value,
1709
- "onUpdate:open": L[1] || (L[1] = (w) => z.value = w),
1714
+ ])) : y("", !0),
1715
+ f(Be, {
1716
+ open: P.value,
1717
+ "onUpdate:open": L[1] || (L[1] = (w) => P.value = w),
1710
1718
  locale: r.ctx.locale,
1711
- provider: e(le),
1719
+ provider: e(Y),
1712
1720
  mode: "file",
1713
1721
  title: a.value.pickerTitle,
1714
1722
  description: a.value.pickerConsent,
1715
- onSelected: C
1723
+ onSelected: S
1716
1724
  }, null, 8, ["open", "locale", "provider", "title", "description"]),
1717
- V.value && v.value.admin ? (n(), g(e(W), {
1725
+ $.value && v.value.admin ? (n(), g(e(G), {
1718
1726
  key: 1,
1719
1727
  tone: "warning"
1720
1728
  }, {
1721
1729
  default: t(() => [
1722
- P("p", null, l(u(a.value.purgeConfirm, { user: V.value.user, uid: V.value.uid })), 1),
1723
- P("div", Zt, [
1730
+ z("p", null, l(u(a.value.purgeConfirm, { user: $.value.user, uid: $.value.uid })), 1),
1731
+ z("div", jt, [
1724
1732
  f(e(F), {
1725
1733
  variant: "secondary",
1726
- disabled: c.value,
1734
+ disabled: d.value,
1727
1735
  onClick: O
1728
1736
  }, {
1729
1737
  default: t(() => [
@@ -1733,8 +1741,8 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1733
1741
  }, 8, ["disabled"]),
1734
1742
  f(e(F), {
1735
1743
  variant: "secondary",
1736
- disabled: c.value,
1737
- onClick: L[2] || (L[2] = (w) => V.value = void 0)
1744
+ disabled: d.value,
1745
+ onClick: L[2] || (L[2] = (w) => $.value = void 0)
1738
1746
  }, {
1739
1747
  default: t(() => [
1740
1748
  k(l(a.value.keepJobs), 1)
@@ -1744,9 +1752,9 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1744
1752
  ])
1745
1753
  ]),
1746
1754
  _: 1
1747
- })) : b("", !0),
1748
- o.value.length ? (n(), R("div", el, [
1749
- (n(!0), R(oe, null, _e(o.value, (w) => (n(), g(e(Ye), {
1755
+ })) : y("", !0),
1756
+ o.value.length ? (n(), T("div", al, [
1757
+ (n(!0), T(oe, null, we(o.value, (w) => (n(), g(e(Ye), {
1750
1758
  key: w.id,
1751
1759
  title: w.name,
1752
1760
  "layout-type": "compact",
@@ -1755,133 +1763,133 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1755
1763
  }, {
1756
1764
  "header-actions": t(() => [
1757
1765
  f(e(Se), {
1758
- tone: Z(w),
1766
+ tone: ne(w),
1759
1767
  "data-bg-state": ""
1760
1768
  }, {
1761
1769
  default: t(() => [
1762
- k(l(ee(w)), 1)
1770
+ k(l(te(w)), 1)
1763
1771
  ]),
1764
1772
  _: 2
1765
1773
  }, 1032, ["tone"])
1766
1774
  ]),
1767
1775
  default: t(() => [
1768
- P("div", al, [
1769
- w.progress?.total ? (n(), R("span", tl, l(u(a.value.progressItems, { done: w.progress.done, count: w.progress.total })), 1)) : b("", !0),
1770
- w.progress?.totalBytes ? (n(), R("span", ll, l(u(a.value.progressBytes, { done: e(Oe)(w.progress.bytes, r.ctx.locale), total: e(Oe)(w.progress.totalBytes, r.ctx.locale) })), 1)) : b("", !0),
1771
- w.progress?.item ? (n(), R("span", nl, [
1776
+ z("div", tl, [
1777
+ w.progress?.total ? (n(), T("span", ll, l(u(a.value.progressItems, { done: w.progress.done, count: w.progress.total })), 1)) : y("", !0),
1778
+ w.progress?.totalBytes ? (n(), T("span", nl, l(u(a.value.progressBytes, { done: e(Le)(w.progress.bytes, r.ctx.locale), total: e(Le)(w.progress.totalBytes, r.ctx.locale) })), 1)) : y("", !0),
1779
+ w.progress?.item ? (n(), T("span", sl, [
1772
1780
  k(l(u(a.value.progressItem, { item: "" }).trim()) + " ", 1),
1773
- f(e(ye), {
1781
+ f(e(me), {
1774
1782
  path: w.progress.item
1775
1783
  }, null, 8, ["path"])
1776
- ])) : b("", !0),
1777
- v.value.admin && w.submitter ? (n(), R("span", sl, l(u(a.value.owner, { user: w.submitter.user, uid: w.submitter.uid })), 1)) : b("", !0),
1778
- w.scheduleId ? (n(), R("span", ol, l(a.value.scheduledJob), 1)) : b("", !0),
1779
- P("div", il, [
1784
+ ])) : y("", !0),
1785
+ v.value.admin && w.submitter ? (n(), T("span", ol, l(u(a.value.owner, { user: w.submitter.user, uid: w.submitter.uid })), 1)) : y("", !0),
1786
+ w.scheduleId ? (n(), T("span", il, l(a.value.scheduledJob), 1)) : y("", !0),
1787
+ z("div", ul, [
1780
1788
  v.value.admin && w.submitter ? (n(), g(e(F), {
1781
1789
  key: 0,
1782
1790
  variant: "secondary",
1783
- disabled: c.value,
1784
- onClick: (re) => V.value = w.submitter
1791
+ disabled: d.value,
1792
+ onClick: (de) => $.value = w.submitter
1785
1793
  }, {
1786
1794
  default: t(() => [
1787
1795
  k(l(a.value.purgeOwner), 1)
1788
1796
  ]),
1789
1797
  _: 1
1790
- }, 8, ["disabled", "onClick"])) : b("", !0),
1791
- !Y(w) && !w.pauseRequested && !w.delegation_id ? (n(), g(e(F), {
1798
+ }, 8, ["disabled", "onClick"])) : y("", !0),
1799
+ !j(w) && !w.pauseRequested && !w.delegation_id ? (n(), g(e(F), {
1792
1800
  key: 1,
1793
1801
  variant: "secondary",
1794
- disabled: c.value,
1795
- onClick: (re) => te(w.id)
1802
+ disabled: d.value,
1803
+ onClick: (de) => le(w.id)
1796
1804
  }, {
1797
1805
  default: t(() => [
1798
1806
  k(l(a.value.pause), 1)
1799
1807
  ]),
1800
1808
  _: 1
1801
- }, 8, ["disabled", "onClick"])) : b("", !0),
1809
+ }, 8, ["disabled", "onClick"])) : y("", !0),
1802
1810
  w.state === "paused" || se(w) ? (n(), g(e(F), {
1803
1811
  key: 2,
1804
1812
  variant: "secondary",
1805
- disabled: c.value,
1806
- onClick: (re) => q(w.id)
1813
+ disabled: d.value,
1814
+ onClick: (de) => N(w.id)
1807
1815
  }, {
1808
1816
  default: t(() => [
1809
1817
  k(l(a.value.resume), 1)
1810
1818
  ]),
1811
1819
  _: 1
1812
- }, 8, ["disabled", "onClick"])) : b("", !0),
1813
- ne(w) ? b("", !0) : (n(), g(e(F), {
1820
+ }, 8, ["disabled", "onClick"])) : y("", !0),
1821
+ ee(w) ? y("", !0) : (n(), g(e(F), {
1814
1822
  key: 3,
1815
1823
  variant: "secondary",
1816
- disabled: c.value,
1817
- onClick: (re) => M(w.id)
1824
+ disabled: d.value,
1825
+ onClick: (de) => M(w.id)
1818
1826
  }, {
1819
1827
  default: t(() => [
1820
1828
  k(l(a.value.cancel), 1)
1821
1829
  ]),
1822
1830
  _: 1
1823
1831
  }, 8, ["disabled", "onClick"])),
1824
- me(w) ? (n(), g(e(F), {
1832
+ be(w) ? (n(), g(e(F), {
1825
1833
  key: 4,
1826
1834
  variant: "secondary",
1827
- disabled: c.value,
1828
- onClick: (re) => ae(w)
1835
+ disabled: d.value,
1836
+ onClick: (de) => ae(w)
1829
1837
  }, {
1830
1838
  default: t(() => [
1831
1839
  k(l(a.value.scheduleCopy), 1)
1832
1840
  ]),
1833
1841
  _: 1
1834
- }, 8, ["disabled", "onClick"])) : b("", !0),
1842
+ }, 8, ["disabled", "onClick"])) : y("", !0),
1835
1843
  w.state === "succeeded" ? (n(), g(e(F), {
1836
1844
  key: 5,
1837
1845
  variant: "secondary",
1838
- disabled: c.value,
1839
- onClick: (re) => B(w)
1846
+ disabled: d.value,
1847
+ onClick: (de) => D(w)
1840
1848
  }, {
1841
1849
  default: t(() => [
1842
1850
  k(l(a.value.result), 1)
1843
1851
  ]),
1844
1852
  _: 1
1845
- }, 8, ["disabled", "onClick"])) : b("", !0)
1853
+ }, 8, ["disabled", "onClick"])) : y("", !0)
1846
1854
  ])
1847
1855
  ])
1848
1856
  ]),
1849
1857
  _: 2
1850
1858
  }, 1032, ["title", "data-job-state", "data-job-id"]))), 128))
1851
- ])) : (n(), R("p", jt, l(a.value.noJobs), 1)),
1852
- P("section", {
1859
+ ])) : (n(), T("p", el, l(a.value.noJobs), 1)),
1860
+ z("section", {
1853
1861
  "data-bg-schedules": "",
1854
1862
  class: "bg-schedules",
1855
1863
  "aria-label": a.value.schedulesTitle
1856
1864
  }, [
1857
- P("h3", null, l(a.value.schedulesTitle), 1),
1858
- P("p", rl, l(a.value.scheduleHelp), 1),
1865
+ z("h3", null, l(a.value.schedulesTitle), 1),
1866
+ z("p", dl, l(a.value.scheduleHelp), 1),
1859
1867
  h.value ? (n(), g(e(Pe), {
1860
1868
  key: 0,
1861
1869
  class: "bg-schedule-form",
1862
- onSubmit: ze(xe, ["prevent"])
1870
+ onSubmit: ze(ue, ["prevent"])
1863
1871
  }, {
1864
1872
  default: t(() => [
1865
- P("p", null, l(u(a.value.scheduleSource, { name: h.value.name })), 1),
1866
- f(e(he), {
1873
+ z("p", null, l(u(a.value.scheduleSource, { name: h.value.name })), 1),
1874
+ f(e(ke), {
1867
1875
  label: a.value.interval
1868
1876
  }, {
1869
1877
  default: t(() => [
1870
- f(e(oa), {
1871
- modelValue: $.value,
1872
- "onUpdate:modelValue": L[3] || (L[3] = (w) => $.value = w),
1878
+ f(e(ia), {
1879
+ modelValue: x.value,
1880
+ "onUpdate:modelValue": L[3] || (L[3] = (w) => x.value = w),
1873
1881
  "data-schedule-interval": "",
1874
- options: J.value,
1875
- disabled: c.value
1882
+ options: Z.value,
1883
+ disabled: d.value
1876
1884
  }, null, 8, ["modelValue", "options", "disabled"])
1877
1885
  ]),
1878
1886
  _: 1
1879
1887
  }, 8, ["label"]),
1880
- f(e(La), {
1881
- modelValue: A.value,
1882
- "onUpdate:modelValue": L[4] || (L[4] = (w) => A.value = w),
1888
+ f(e(Oa), {
1889
+ modelValue: R.value,
1890
+ "onUpdate:modelValue": L[4] || (L[4] = (w) => R.value = w),
1883
1891
  "data-schedule-consent": "",
1884
- disabled: c.value,
1892
+ disabled: d.value,
1885
1893
  label: a.value.scheduleConsent
1886
1894
  }, null, 8, ["modelValue", "disabled", "label"]),
1887
1895
  f(e(Ve), null, {
@@ -1889,7 +1897,7 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1889
1897
  f(e(F), {
1890
1898
  type: "submit",
1891
1899
  variant: "primary",
1892
- disabled: c.value || !A.value
1900
+ disabled: d.value || !R.value
1893
1901
  }, {
1894
1902
  default: t(() => [
1895
1903
  k(l(a.value.createSchedule), 1)
@@ -1899,7 +1907,7 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1899
1907
  f(e(F), {
1900
1908
  type: "button",
1901
1909
  variant: "secondary",
1902
- disabled: c.value,
1910
+ disabled: d.value,
1903
1911
  onClick: L[5] || (L[5] = (w) => h.value = void 0)
1904
1912
  }, {
1905
1913
  default: t(() => [
@@ -1912,9 +1920,9 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1912
1920
  })
1913
1921
  ]),
1914
1922
  _: 1
1915
- })) : b("", !0),
1916
- p.value.length ? (n(), R("div", cl, [
1917
- (n(!0), R(oe, null, _e(p.value, (w) => (n(), g(e(Ye), {
1923
+ })) : y("", !0),
1924
+ p.value.length ? (n(), T("div", vl, [
1925
+ (n(!0), T(oe, null, we(p.value, (w) => (n(), g(e(Ye), {
1918
1926
  key: w.id,
1919
1927
  title: w.name,
1920
1928
  "layout-type": "compact",
@@ -1932,11 +1940,11 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1932
1940
  }, 1032, ["tone"])
1933
1941
  ]),
1934
1942
  default: t(() => [
1935
- P("div", vl, [
1936
- v.value.admin ? (n(), R("span", pl, l(u(a.value.owner, { user: w.owner.user, uid: w.owner.uid })), 1)) : b("", !0),
1937
- w.enabled ? (n(), R("span", fl, l(u(a.value.nextRun, { time: de(w.nextAt) })), 1)) : b("", !0),
1938
- P("span", yl, l(u(a.value.missedRuns, { count: w.missed })), 1),
1939
- w.reason === "worker-changed" ? (n(), g(e(W), {
1943
+ z("div", pl, [
1944
+ v.value.admin ? (n(), T("span", fl, l(u(a.value.owner, { user: w.owner.user, uid: w.owner.uid })), 1)) : y("", !0),
1945
+ w.enabled ? (n(), T("span", yl, l(u(a.value.nextRun, { time: ce(w.nextAt) })), 1)) : y("", !0),
1946
+ z("span", ml, l(u(a.value.missedRuns, { count: w.missed })), 1),
1947
+ w.reason === "worker-changed" ? (n(), g(e(G), {
1940
1948
  key: 2,
1941
1949
  tone: "warning"
1942
1950
  }, {
@@ -1944,7 +1952,7 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1944
1952
  k(l(a.value.revisionChanged), 1)
1945
1953
  ]),
1946
1954
  _: 1
1947
- })) : w.reason === "input-unavailable" ? (n(), g(e(W), {
1955
+ })) : w.reason === "input-unavailable" ? (n(), g(e(G), {
1948
1956
  key: 3,
1949
1957
  tone: "warning"
1950
1958
  }, {
@@ -1952,13 +1960,13 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1952
1960
  k(l(a.value.errors["input-unavailable"]), 1)
1953
1961
  ]),
1954
1962
  _: 1
1955
- })) : b("", !0),
1956
- P("div", ml, [
1963
+ })) : y("", !0),
1964
+ z("div", bl, [
1957
1965
  w.enabled ? (n(), g(e(F), {
1958
1966
  key: 0,
1959
1967
  variant: "secondary",
1960
- disabled: c.value,
1961
- onClick: (re) => Ce(w.id)
1968
+ disabled: d.value,
1969
+ onClick: (de) => Ce(w.id)
1962
1970
  }, {
1963
1971
  default: t(() => [
1964
1972
  k(l(a.value.disableSchedule), 1)
@@ -1967,18 +1975,18 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1967
1975
  }, 8, ["disabled", "onClick"])) : v.value.admin ? (n(), g(e(F), {
1968
1976
  key: 1,
1969
1977
  variant: "secondary",
1970
- disabled: c.value,
1971
- onClick: (re) => S.value = w
1978
+ disabled: d.value,
1979
+ onClick: (de) => U.value = w
1972
1980
  }, {
1973
1981
  default: t(() => [
1974
1982
  k(l(a.value.enableSchedule), 1)
1975
1983
  ]),
1976
1984
  _: 1
1977
- }, 8, ["disabled", "onClick"])) : b("", !0),
1985
+ }, 8, ["disabled", "onClick"])) : y("", !0),
1978
1986
  f(e(F), {
1979
1987
  variant: "secondary",
1980
- disabled: c.value,
1981
- onClick: (re) => _.value = w
1988
+ disabled: d.value,
1989
+ onClick: (de) => _.value = w
1982
1990
  }, {
1983
1991
  default: t(() => [
1984
1992
  k(l(a.value.deleteSchedule), 1)
@@ -1990,18 +1998,18 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
1990
1998
  ]),
1991
1999
  _: 2
1992
2000
  }, 1032, ["title", "data-schedule-id"]))), 128))
1993
- ])) : (n(), R("p", dl, l(a.value.noSchedules), 1)),
1994
- _.value ? (n(), g(e(W), {
2001
+ ])) : (n(), T("p", cl, l(a.value.noSchedules), 1)),
2002
+ _.value ? (n(), g(e(G), {
1995
2003
  key: 3,
1996
2004
  tone: "warning"
1997
2005
  }, {
1998
2006
  default: t(() => [
1999
- P("p", null, l(u(a.value.deleteScheduleConsent, { name: _.value.name })), 1),
2000
- P("div", bl, [
2007
+ z("p", null, l(u(a.value.deleteScheduleConsent, { name: _.value.name })), 1),
2008
+ z("div", gl, [
2001
2009
  f(e(F), {
2002
2010
  variant: "danger",
2003
- disabled: c.value,
2004
- onClick: pe
2011
+ disabled: d.value,
2012
+ onClick: fe
2005
2013
  }, {
2006
2014
  default: t(() => [
2007
2015
  k(l(a.value.confirmDeleteSchedule), 1)
@@ -2010,7 +2018,7 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2010
2018
  }, 8, ["disabled"]),
2011
2019
  f(e(F), {
2012
2020
  variant: "secondary",
2013
- disabled: c.value,
2021
+ disabled: d.value,
2014
2022
  onClick: L[6] || (L[6] = (w) => _.value = void 0)
2015
2023
  }, {
2016
2024
  default: t(() => [
@@ -2021,18 +2029,18 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2021
2029
  ])
2022
2030
  ]),
2023
2031
  _: 1
2024
- })) : b("", !0),
2025
- S.value ? (n(), g(e(W), {
2032
+ })) : y("", !0),
2033
+ U.value ? (n(), g(e(G), {
2026
2034
  key: 4,
2027
2035
  tone: "warning"
2028
2036
  }, {
2029
2037
  default: t(() => [
2030
- P("p", null, l(u(a.value.enableScheduleConsent, { name: S.value.name })), 1),
2031
- P("div", gl, [
2038
+ z("p", null, l(u(a.value.enableScheduleConsent, { name: U.value.name })), 1),
2039
+ z("div", hl, [
2032
2040
  f(e(F), {
2033
2041
  variant: "primary",
2034
- disabled: c.value,
2035
- onClick: fe
2042
+ disabled: d.value,
2043
+ onClick: ye
2036
2044
  }, {
2037
2045
  default: t(() => [
2038
2046
  k(l(a.value.confirmEnableSchedule), 1)
@@ -2041,8 +2049,8 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2041
2049
  }, 8, ["disabled"]),
2042
2050
  f(e(F), {
2043
2051
  variant: "secondary",
2044
- disabled: c.value,
2045
- onClick: L[7] || (L[7] = (w) => S.value = void 0)
2052
+ disabled: d.value,
2053
+ onClick: L[7] || (L[7] = (w) => U.value = void 0)
2046
2054
  }, {
2047
2055
  default: t(() => [
2048
2056
  k(l(a.value.cancel), 1)
@@ -2052,28 +2060,31 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2052
2060
  ])
2053
2061
  ]),
2054
2062
  _: 1
2055
- })) : b("", !0)
2056
- ], 8, ul),
2057
- K.value ? (n(), g(e(ia), {
2063
+ })) : y("", !0)
2064
+ ], 8, rl),
2065
+ K.value ? (n(), g(e(ua), {
2058
2066
  key: 4,
2059
2067
  href: K.value,
2060
- download: H.value
2068
+ download: Q.value
2061
2069
  }, {
2062
2070
  default: t(() => [
2063
2071
  k(l(a.value.download), 1)
2064
2072
  ]),
2065
2073
  _: 1
2066
- }, 8, ["href", "download"])) : b("", !0)
2067
- ], 64)) : b("", !0)
2074
+ }, 8, ["href", "download"])) : y("", !0)
2075
+ ], 64)) : y("", !0)
2068
2076
  ], 64))
2069
2077
  ]),
2070
2078
  _: 1
2071
2079
  }, 8, ["aria-busy", "title", "description", "loading"]));
2072
2080
  }
2073
- }), gn = /* @__PURE__ */ ue(hl, [["__scopeId", "data-v-fa2b6101"]]), kl = {
2081
+ }), _n = /* @__PURE__ */ re(kl, [["__scopeId", "data-v-fa2b6101"]]), _l = {
2074
2082
  key: 2,
2075
2083
  class: "executor-approval"
2076
- }, _l = /* @__PURE__ */ ie({
2084
+ }, wl = {
2085
+ key: 0,
2086
+ class: "executor-brand"
2087
+ }, xl = ["src"], Cl = /* @__PURE__ */ ie({
2077
2088
  __name: "ExecutorApproval",
2078
2089
  props: {
2079
2090
  admin: { type: Boolean },
@@ -2081,35 +2092,46 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2081
2092
  ctx: {}
2082
2093
  },
2083
2094
  setup(r) {
2084
- const x = r, i = Le(Ke, void 0), a = U(() => Te(x.locale)), u = y("checking");
2085
- let v = !1, o;
2086
- async function s() {
2095
+ const C = r, i = Re(Te, void 0), a = I(() => Ue(C.locale)), u = m("checking"), v = I(() => {
2096
+ const d = C.ctx;
2097
+ return (d?.fullPage ?? (d?.host ? je({ host: d.host }) : !1)) && d?.displayName ? d : void 0;
2098
+ });
2099
+ let o = !1, s;
2100
+ async function c() {
2087
2101
  try {
2088
2102
  const d = await i.status();
2089
- v || (u.value = d.state);
2103
+ o || (u.value = d.state);
2090
2104
  } catch {
2091
- v || (u.value = "blocked");
2105
+ o || (u.value = "blocked");
2092
2106
  }
2093
2107
  }
2094
- return ve(() => {
2108
+ return pe(() => {
2095
2109
  i && (i.subscribe?.((d) => {
2096
- v || (u.value = d.state);
2097
- }), o = x.ctx?.reopen(() => {
2098
- s();
2099
- }), s());
2100
- }), ce(() => {
2101
- v = !0, o?.();
2102
- }), (d, c) => !e(i) || u.value === "ready" ? ge(d.$slots, "default", {}, void 0, !0, 0) : u.value === "checking" ? (n(), g(e(Na), {
2110
+ o || (u.value = d.state);
2111
+ }), s = C.ctx?.reopen(() => {
2112
+ c();
2113
+ }), c());
2114
+ }), ve(() => {
2115
+ o = !0, s?.();
2116
+ }), (d, p) => !e(i) || u.value === "ready" ? he(d.$slots, "default", {}, void 0, !0, 0) : u.value === "checking" ? (n(), g(e(La), {
2103
2117
  key: 1,
2104
2118
  text: a.value.loading
2105
- }, null, 8, ["text"])) : (n(), R("div", kl, [
2106
- r.admin ? (n(), g(da, {
2107
- key: 0,
2119
+ }, null, 8, ["text"])) : (n(), T("div", _l, [
2120
+ v.value ? (n(), T("header", wl, [
2121
+ v.value.appIcon ? (n(), T("img", {
2122
+ key: 0,
2123
+ src: v.value.appIcon,
2124
+ alt: ""
2125
+ }, null, 8, xl)) : y("", !0),
2126
+ z("span", null, l(v.value.displayName), 1)
2127
+ ])) : y("", !0),
2128
+ r.admin ? (n(), g(ca, {
2129
+ key: 1,
2108
2130
  admin: !0,
2109
2131
  locale: r.locale,
2110
- onConfirmed: s
2111
- }, null, 8, ["locale"])) : (n(), g(e(W), {
2112
- key: 1,
2132
+ onConfirmed: c
2133
+ }, null, 8, ["locale"])) : (n(), g(e(G), {
2134
+ key: 2,
2113
2135
  tone: "info"
2114
2136
  }, {
2115
2137
  default: t(() => [
@@ -2119,81 +2141,81 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2119
2141
  }))
2120
2142
  ]));
2121
2143
  }
2122
- }), hn = /* @__PURE__ */ ue(_l, [["__scopeId", "data-v-49f9a67c"]]), wl = {
2144
+ }), wn = /* @__PURE__ */ re(Cl, [["__scopeId", "data-v-632b6fba"]]), $l = {
2123
2145
  key: 1,
2124
2146
  role: "status"
2125
- }, xl = {
2147
+ }, Sl = {
2126
2148
  key: 2,
2127
2149
  role: "status"
2128
- }, Cl = {
2150
+ }, zl = {
2129
2151
  key: 0,
2130
2152
  role: "status",
2131
2153
  class: "destination"
2132
- }, $l = { key: 3 }, Sl = {
2154
+ }, Pl = { key: 3 }, Vl = {
2133
2155
  key: 4,
2134
2156
  class: "records"
2135
- }, zl = ["data-job-state"], Pl = ["role"], Vl = { key: 5 }, Al = {
2157
+ }, Al = ["data-job-state"], Il = ["role"], El = { key: 5 }, Tl = {
2136
2158
  key: 6,
2137
2159
  class: "records"
2138
- }, Il = /* @__PURE__ */ ie({
2160
+ }, Ul = /* @__PURE__ */ ie({
2139
2161
  __name: "DelegatePanel",
2140
2162
  props: {
2141
2163
  ctx: {}
2142
2164
  },
2143
- setup(r, { expose: x }) {
2144
- const i = r, a = U(() => Te(i.ctx.locale)), u = U(() => la(i.ctx.locale)), v = ta(i.ctx), o = y(), s = y([]), d = y([]), c = y(!1), p = y(), h = y(""), A = y(!1), $ = y(""), _ = y(""), S = y("");
2145
- let V = !1, E, z;
2146
- Ne([_, $, S], () => {
2147
- z = void 0;
2165
+ setup(r, { expose: C }) {
2166
+ const i = r, a = I(() => Ue(i.ctx.locale)), u = I(() => na(i.ctx.locale)), v = la(i.ctx), o = m(), s = m([]), c = m([]), d = m(!1), p = m(), h = m(""), R = m(!1), x = m(""), _ = m(""), U = m("");
2167
+ let $ = !1, V, P;
2168
+ Me([_, x, U], () => {
2169
+ P = void 0;
2148
2170
  }, { flush: "sync" });
2149
- const I = (N) => ["queued", "running", "waiting_executor"].includes(N.state), K = U(() => d.value.some((N) => N.state === "waiting_executor")), H = ["EXECUTOR_UNAVAILABLE", "EXECUTOR_TIMEOUT"], le = U(() => K.value && H.includes(p.value?.code ?? "")), X = U(() => o.value && o.value.state !== "ready" && !(K.value && o.value.state === "needs-admin-approval" && H.includes(o.value.reason ?? "")));
2150
- async function Q() {
2151
- if (V) return;
2152
- const [N, D, O] = await Promise.allSettled([i.ctx.call("delegate.status"), i.ctx.call("delegate.list"), i.ctx.call("delegate.jobs.list")]);
2153
- if (!V) {
2154
- N.status === "fulfilled" && (o.value = N.value), D.status === "fulfilled" && (s.value = (D.value.delegations ?? []).filter((J) => !J.revoked)), O.status === "fulfilled" && (d.value = O.value.jobs ?? []);
2155
- for (const J of [N, D, O]) if (J.status === "rejected") throw J.reason;
2171
+ const A = (q) => ["queued", "running", "waiting_executor"].includes(q.state), K = I(() => c.value.some((q) => q.state === "waiting_executor")), Q = ["EXECUTOR_UNAVAILABLE", "EXECUTOR_TIMEOUT"], Y = I(() => K.value && Q.includes(p.value?.code ?? "")), X = I(() => o.value && o.value.state !== "ready" && !(K.value && o.value.state === "needs-admin-approval" && Q.includes(o.value.reason ?? "")));
2172
+ async function J() {
2173
+ if ($) return;
2174
+ const [q, B, O] = await Promise.allSettled([i.ctx.call("delegate.status"), i.ctx.call("delegate.list"), i.ctx.call("delegate.jobs.list")]);
2175
+ if (!$) {
2176
+ q.status === "fulfilled" && (o.value = q.value), B.status === "fulfilled" && (s.value = (B.value.delegations ?? []).filter((Z) => !Z.revoked)), O.status === "fulfilled" && (c.value = O.value.jobs ?? []);
2177
+ for (const Z of [q, B, O]) if (Z.status === "rejected") throw Z.reason;
2156
2178
  }
2157
2179
  }
2158
- async function Y(N) {
2159
- if (!(c.value || V)) {
2160
- c.value = !0, p.value = void 0;
2180
+ async function j(q) {
2181
+ if (!(d.value || $)) {
2182
+ d.value = !0, p.value = void 0;
2161
2183
  try {
2162
- await N();
2163
- } catch (D) {
2164
- V || (p.value = D);
2184
+ await q();
2185
+ } catch (B) {
2186
+ $ || (p.value = B);
2165
2187
  } finally {
2166
- V || (c.value = !1);
2188
+ $ || (d.value = !1);
2167
2189
  }
2168
2190
  }
2169
2191
  }
2170
- const ne = () => Y(Q), se = (N) => Y(async () => {
2171
- await i.ctx.call("delegate.revoke", { delegation_id: N }), await Q();
2172
- }), ee = (N) => Y(async () => {
2173
- const D = await i.ctx.call("delegate.jobs.cancel", { id: N });
2174
- V || (h.value = D.revocation_pending ? a.value.pending : ""), await Q();
2175
- }), Z = U(() => o.value?.state === "ready" && !!$.value && !!_.value && !!S.value), G = () => Y(async () => {
2176
- Z.value && (await i.ctx.call("delegate.jobs.submit", { key: z ?? (z = crypto.randomUUID()), url: _.value, dest: $.value, name: S.value }), V || (_.value = "", S.value = "", $.value = ""), await Q());
2177
- }), j = (N) => {
2178
- const D = new Date(N);
2179
- return Number.isNaN(D.getTime()) ? "—" : D.toLocaleString(i.ctx.locale);
2192
+ const ee = () => j(J), se = (q) => j(async () => {
2193
+ await i.ctx.call("delegate.revoke", { delegation_id: q }), await J();
2194
+ }), te = (q) => j(async () => {
2195
+ const B = await i.ctx.call("delegate.jobs.cancel", { id: q });
2196
+ $ || (h.value = B.revocation_pending ? a.value.pending : ""), await J();
2197
+ }), ne = I(() => o.value?.state === "ready" && !!x.value && !!_.value && !!U.value), H = () => j(async () => {
2198
+ ne.value && (await i.ctx.call("delegate.jobs.submit", { key: P ?? (P = crypto.randomUUID()), url: _.value, dest: x.value, name: U.value }), $ || (_.value = "", U.value = "", x.value = ""), await J());
2199
+ }), W = (q) => {
2200
+ const B = new Date(q);
2201
+ return Number.isNaN(B.getTime()) ? "—" : B.toLocaleString(i.ctx.locale);
2180
2202
  };
2181
- return x({ refresh: ne }), ve(() => {
2182
- ne(), E = setInterval(() => {
2183
- d.value.some(I) && ne();
2203
+ return C({ refresh: ee }), pe(() => {
2204
+ ee(), V = setInterval(() => {
2205
+ c.value.some(A) && ee();
2184
2206
  }, 3e3);
2185
- }), ce(() => {
2186
- V = !0, E && clearInterval(E), v.dispose();
2187
- }), (N, D) => (n(), g(e(ke), {
2207
+ }), ve(() => {
2208
+ $ = !0, V && clearInterval(V), v.dispose();
2209
+ }), (q, B) => (n(), g(e(_e), {
2188
2210
  title: a.value.title,
2189
2211
  description: a.value.help,
2190
- loading: !o.value && c.value,
2212
+ loading: !o.value && d.value,
2191
2213
  collapsible: !1,
2192
- "aria-busy": c.value,
2214
+ "aria-busy": d.value,
2193
2215
  class: "delegate-panel"
2194
2216
  }, {
2195
2217
  default: t(() => [
2196
- p.value && !le.value ? (n(), g(e(W), {
2218
+ p.value && !Y.value ? (n(), g(e(G), {
2197
2219
  key: 0,
2198
2220
  tone: "danger",
2199
2221
  role: "alert"
@@ -2202,56 +2224,56 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2202
2224
  k(l(e(ha)(p.value, a.value)), 1)
2203
2225
  ]),
2204
2226
  _: 1
2205
- })) : b("", !0),
2206
- h.value ? (n(), R("p", wl, l(h.value), 1)) : b("", !0),
2207
- X.value ? (n(), R("p", xl, l(o.value?.state === "needs-admin-approval" ? a.value.needs : a.value.blocked), 1)) : b("", !0),
2227
+ })) : y("", !0),
2228
+ h.value ? (n(), T("p", $l, l(h.value), 1)) : y("", !0),
2229
+ X.value ? (n(), T("p", Sl, l(o.value?.state === "needs-admin-approval" ? a.value.needs : a.value.blocked), 1)) : y("", !0),
2208
2230
  f(e(Pe), {
2209
2231
  direction: "vertical",
2210
- onSubmit: ze(G, ["prevent"])
2232
+ onSubmit: ze(H, ["prevent"])
2211
2233
  }, {
2212
2234
  default: t(() => [
2213
- f(e(he), {
2235
+ f(e(ke), {
2214
2236
  label: a.value.url,
2215
2237
  "label-for": "delegate-url"
2216
2238
  }, {
2217
2239
  default: t(() => [
2218
- f(e(we), {
2240
+ f(e(xe), {
2219
2241
  id: "delegate-url",
2220
2242
  modelValue: _.value,
2221
- "onUpdate:modelValue": D[0] || (D[0] = (O) => _.value = O),
2243
+ "onUpdate:modelValue": B[0] || (B[0] = (O) => _.value = O),
2222
2244
  type: "url",
2223
- disabled: c.value || o.value?.state !== "ready"
2245
+ disabled: d.value || o.value?.state !== "ready"
2224
2246
  }, null, 8, ["modelValue", "disabled"])
2225
2247
  ]),
2226
2248
  _: 1
2227
2249
  }, 8, ["label"]),
2228
- f(e(he), {
2250
+ f(e(ke), {
2229
2251
  label: a.value.name,
2230
2252
  "label-for": "delegate-name"
2231
2253
  }, {
2232
2254
  default: t(() => [
2233
- f(e(we), {
2255
+ f(e(xe), {
2234
2256
  id: "delegate-name",
2235
- modelValue: S.value,
2236
- "onUpdate:modelValue": D[1] || (D[1] = (O) => S.value = O),
2257
+ modelValue: U.value,
2258
+ "onUpdate:modelValue": B[1] || (B[1] = (O) => U.value = O),
2237
2259
  "data-file-name": "",
2238
- disabled: c.value || o.value?.state !== "ready"
2260
+ disabled: d.value || o.value?.state !== "ready"
2239
2261
  }, null, 8, ["modelValue", "disabled"])
2240
2262
  ]),
2241
2263
  _: 1
2242
2264
  }, 8, ["label"]),
2243
- P("p", null, l(a.value.size), 1),
2244
- $.value ? (n(), R("p", Cl, [
2265
+ z("p", null, l(a.value.size), 1),
2266
+ x.value ? (n(), T("p", zl, [
2245
2267
  k(l(a.value.destination) + l(u.value), 1),
2246
- f(e(ye), { path: $.value }, null, 8, ["path"])
2247
- ])) : b("", !0),
2268
+ f(e(me), { path: x.value }, null, 8, ["path"])
2269
+ ])) : y("", !0),
2248
2270
  f(e(Ve), null, {
2249
2271
  default: t(() => [
2250
2272
  f(e(F), {
2251
2273
  type: "button",
2252
2274
  variant: "secondary",
2253
- disabled: c.value || o.value?.state !== "ready",
2254
- onClick: D[2] || (D[2] = (O) => A.value = !0)
2275
+ disabled: d.value || o.value?.state !== "ready",
2276
+ onClick: B[2] || (B[2] = (O) => R.value = !0)
2255
2277
  }, {
2256
2278
  default: t(() => [
2257
2279
  k(l(a.value.choose), 1)
@@ -2261,7 +2283,7 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2261
2283
  f(e(F), {
2262
2284
  type: "submit",
2263
2285
  variant: "primary",
2264
- disabled: c.value || !Z.value
2286
+ disabled: d.value || !ne.value
2265
2287
  }, {
2266
2288
  default: t(() => [
2267
2289
  k(l(a.value.submit), 1)
@@ -2274,51 +2296,51 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2274
2296
  ]),
2275
2297
  _: 1
2276
2298
  }),
2277
- f(Re, {
2278
- open: A.value,
2279
- "onUpdate:open": D[3] || (D[3] = (O) => A.value = O),
2299
+ f(Be, {
2300
+ open: R.value,
2301
+ "onUpdate:open": B[3] || (B[3] = (O) => R.value = O),
2280
2302
  locale: r.ctx.locale,
2281
2303
  provider: e(v),
2282
2304
  mode: "folder",
2283
- onSelected: D[4] || (D[4] = (O) => $.value = O)
2305
+ onSelected: B[4] || (B[4] = (O) => x.value = O)
2284
2306
  }, null, 8, ["open", "locale", "provider"]),
2285
- P("h3", null, l(a.value.downloads), 1),
2286
- !d.value.length && !p.value ? (n(), R("p", $l, l(a.value.noJobs), 1)) : (n(), R("ul", Sl, [
2287
- (n(!0), R(oe, null, _e(d.value, (O) => (n(), R("li", {
2307
+ z("h3", null, l(a.value.downloads), 1),
2308
+ !c.value.length && !p.value ? (n(), T("p", Pl, l(a.value.noJobs), 1)) : (n(), T("ul", Vl, [
2309
+ (n(!0), T(oe, null, we(c.value, (O) => (n(), T("li", {
2288
2310
  key: O.id,
2289
2311
  "data-job-state": O.state
2290
2312
  }, [
2291
- P("span", {
2313
+ z("span", {
2292
2314
  role: O.state === "waiting_executor" ? "status" : void 0
2293
- }, l(O.name) + " · " + l(a.value[O.state]), 9, Pl),
2294
- I(O) ? (n(), g(e(F), {
2315
+ }, l(O.name) + " · " + l(a.value[O.state]), 9, Il),
2316
+ A(O) ? (n(), g(e(F), {
2295
2317
  key: 0,
2296
2318
  variant: "secondary",
2297
- disabled: c.value,
2298
- onClick: (J) => ee(O.id)
2319
+ disabled: d.value,
2320
+ onClick: (Z) => te(O.id)
2299
2321
  }, {
2300
2322
  default: t(() => [
2301
2323
  k(l(a.value.cancel), 1)
2302
2324
  ]),
2303
2325
  _: 1
2304
- }, 8, ["disabled", "onClick"])) : b("", !0)
2305
- ], 8, zl))), 128))
2326
+ }, 8, ["disabled", "onClick"])) : y("", !0)
2327
+ ], 8, Al))), 128))
2306
2328
  ])),
2307
- P("h3", null, l(a.value.delegations), 1),
2308
- !s.value.length && !p.value ? (n(), R("p", Vl, l(a.value.noDelegations), 1)) : (n(), R("ul", Al, [
2309
- (n(!0), R(oe, null, _e(s.value, (O) => (n(), R("li", {
2329
+ z("h3", null, l(a.value.delegations), 1),
2330
+ !s.value.length && !p.value ? (n(), T("p", El, l(a.value.noDelegations), 1)) : (n(), T("ul", Tl, [
2331
+ (n(!0), T(oe, null, we(s.value, (O) => (n(), T("li", {
2310
2332
  key: O.delegation_id
2311
2333
  }, [
2312
- P("div", null, [
2313
- f(e(ye), {
2334
+ z("div", null, [
2335
+ f(e(me), {
2314
2336
  path: O.path
2315
2337
  }, null, 8, ["path"]),
2316
- P("p", null, l(a.value.expires) + l(u.value) + l(j(O.expires_at)), 1)
2338
+ z("p", null, l(a.value.expires) + l(u.value) + l(W(O.expires_at)), 1)
2317
2339
  ]),
2318
2340
  f(e(F), {
2319
2341
  variant: "secondary",
2320
- disabled: c.value,
2321
- onClick: (J) => se(O.delegation_id)
2342
+ disabled: d.value,
2343
+ onClick: (Z) => se(O.delegation_id)
2322
2344
  }, {
2323
2345
  default: t(() => [
2324
2346
  k(l(a.value.revoke), 1)
@@ -2331,37 +2353,37 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2331
2353
  _: 1
2332
2354
  }, 8, ["title", "description", "loading", "aria-busy"]));
2333
2355
  }
2334
- }), kn = /* @__PURE__ */ ue(Il, [["__scopeId", "data-v-c590f505"]]), El = { class: "save-alert" }, Tl = { "data-save-error": "" }, Ul = {
2356
+ }), xn = /* @__PURE__ */ re(Ul, [["__scopeId", "data-v-c590f505"]]), Rl = { class: "save-alert" }, Dl = { "data-save-error": "" }, Bl = {
2335
2357
  key: 2,
2336
2358
  class: "save-summary"
2337
- }, Rl = ["data-save-status"], Dl = {
2359
+ }, Fl = ["data-save-status"], ql = {
2338
2360
  key: 7,
2339
2361
  class: "save-help"
2340
- }, Bl = {
2362
+ }, Nl = {
2341
2363
  key: 8,
2342
2364
  class: "save-records"
2343
- }, Fl = { class: "save-record" }, ql = { class: "save-note" }, Ol = {
2365
+ }, Ol = { class: "save-record" }, Ll = { class: "save-note" }, Ml = {
2344
2366
  key: 9,
2345
2367
  class: "save-actions"
2346
- }, Ll = {
2368
+ }, Kl = {
2347
2369
  key: 11,
2348
2370
  class: "save-example"
2349
- }, Nl = { class: "save-help" }, Ml = { class: "save-actions" }, Kl = {
2371
+ }, Hl = { class: "save-help" }, Gl = { class: "save-actions" }, Jl = {
2350
2372
  key: 12,
2351
2373
  class: "save-help"
2352
- }, Hl = {
2374
+ }, Wl = {
2353
2375
  key: 13,
2354
2376
  "data-save-operations": ""
2355
- }, Gl = ["data-save-job", "title"], Jl = {
2377
+ }, Xl = ["data-save-job", "title"], Ql = {
2356
2378
  key: 0,
2357
2379
  class: "save-note"
2358
- }, Wl = {
2380
+ }, Yl = {
2359
2381
  key: 1,
2360
2382
  class: "save-note"
2361
- }, Xl = ["data-save-state"], Ql = { key: 1 }, Yl = {
2383
+ }, Zl = ["data-save-state"], jl = { key: 1 }, en = {
2362
2384
  class: "save-danger",
2363
2385
  "data-save-danger": ""
2364
- }, Ae = 10, Zl = /* @__PURE__ */ ie({
2386
+ }, Ae = 10, an = /* @__PURE__ */ ie({
2365
2387
  __name: "BackgroundSavePanel",
2366
2388
  props: {
2367
2389
  sdk: {},
@@ -2372,82 +2394,82 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2372
2394
  sampleSave: { type: Boolean }
2373
2395
  },
2374
2396
  emits: ["authorized"],
2375
- setup(r, { expose: x, emit: i }) {
2376
- const a = r, u = i, v = y(!1), o = y(""), s = U(() => aa(a.locale)), d = y(), c = y([]), p = y([]), h = y(!1), A = y(), $ = y(""), _ = y(!1), S = y([]), V = U(() => a.picker && (d.value?.selection ? ka(a.picker.provider, d.value.selection.root) : d.value?.scopeMode === "install-selected" ? void 0 : a.picker.provider));
2377
- let E = !1, z;
2378
- const I = (M) => M.state === "copying" && M.code === "CANCEL_REQUESTED", K = (M) => I(M) ? "canceling" : M.state === "committed" && !M.receipt?.path ? "uncertain" : M.state, H = (M) => ["queued", "copying"].includes(M.state) && !I(M);
2379
- function le() {
2380
- d.value = void 0, c.value = [], p.value = [], S.value = [], v.value = !1;
2397
+ setup(r, { expose: C, emit: i }) {
2398
+ const a = r, u = i, v = m(!1), o = m(""), s = I(() => ta(a.locale)), c = m(), d = m([]), p = m([]), h = m(!1), R = m(), x = m(""), _ = m(!1), U = m([]), $ = I(() => a.picker && (c.value?.selection ? ka(a.picker.provider, c.value.selection.root) : c.value?.scopeMode === "install-selected" ? void 0 : a.picker.provider));
2399
+ let V = !1, P;
2400
+ const A = (M) => M.state === "copying" && M.code === "CANCEL_REQUESTED", K = (M) => A(M) ? "canceling" : M.state === "committed" && !M.receipt?.path ? "uncertain" : M.state, Q = (M) => ["queued", "copying"].includes(M.state) && !A(M);
2401
+ function Y() {
2402
+ c.value = void 0, d.value = [], p.value = [], U.value = [], v.value = !1;
2381
2403
  }
2382
2404
  async function X() {
2383
- const [M, te, q, C] = await Promise.all([a.sdk.status(), a.sdk.list(), a.sdk.operations(), Promise.all((a.picker?.keys ?? []).map((T) => a.sdk.destination(T)))]);
2384
- if (!E) {
2385
- if (!M || typeof M.disabled != "boolean" || !Array.isArray(te) || !Array.isArray(q)) throw { code: "unavailable" };
2386
- (d.value?.selection?.generation !== M.selection?.generation || d.value?.selection?.scope !== M.selection?.scope) && (v.value = !1), d.value = M, c.value = C.length ? te.filter((T) => C.some((B) => B.status === "active" && B.destination?.id === T.id)) : te, p.value = q, S.value = C;
2405
+ const [M, le, N, S] = await Promise.all([a.sdk.status(), a.sdk.list(), a.sdk.operations(), Promise.all((a.picker?.keys ?? []).map((E) => a.sdk.destination(E)))]);
2406
+ if (!V) {
2407
+ if (!M || typeof M.disabled != "boolean" || !Array.isArray(le) || !Array.isArray(N)) throw { code: "unavailable" };
2408
+ (c.value?.selection?.generation !== M.selection?.generation || c.value?.selection?.scope !== M.selection?.scope) && (v.value = !1), c.value = M, d.value = S.length ? le.filter((E) => S.some((D) => D.status === "active" && D.destination?.id === E.id)) : le, p.value = N, U.value = S;
2387
2409
  }
2388
2410
  }
2389
- async function Q(M) {
2390
- if (!(E || h.value)) {
2391
- h.value = !0, A.value = void 0, $.value = "", _.value = !1;
2411
+ async function J(M) {
2412
+ if (!(V || h.value)) {
2413
+ h.value = !0, R.value = void 0, x.value = "", _.value = !1;
2392
2414
  try {
2393
2415
  await M();
2394
- } catch (te) {
2395
- E || (le(), A.value = te);
2416
+ } catch (le) {
2417
+ V || (Y(), R.value = le);
2396
2418
  } finally {
2397
- E || (h.value = !1);
2419
+ V || (h.value = !1);
2398
2420
  }
2399
2421
  }
2400
2422
  }
2401
- const Y = () => Q(X);
2402
- function ne(M) {
2403
- u("authorized", M), Y();
2423
+ const j = () => J(X);
2424
+ function ee(M) {
2425
+ u("authorized", M), j();
2404
2426
  }
2405
2427
  function se(M) {
2406
- E || ($.value = "", A.value = M, _.value = !0);
2428
+ V || (x.value = "", R.value = M, _.value = !0);
2407
2429
  }
2408
- const ee = U(() => _.value ? a.pickerErrorText?.(A.value) ?? Ie(A.value, s.value, "select") : Ie(A.value, s.value)), Z = (M) => Q(async () => {
2430
+ const te = I(() => _.value ? a.pickerErrorText?.(R.value) ?? Ie(R.value, s.value, "select") : Ie(R.value, s.value)), ne = (M) => J(async () => {
2409
2431
  if ((await a.sdk.revoke({ delegation_id: M }))?.revoked !== !0) throw { code: "commit-uncertain" };
2410
- await X(), E || ($.value = s.value.revoked);
2411
- }), G = (M) => Q(async () => {
2432
+ await X(), V || (x.value = s.value.revoked);
2433
+ }), H = (M) => J(async () => {
2412
2434
  await a.sdk.cancel({ delegation_id: M.delegation_id, job_id: M.job_id }), await X();
2413
- }), j = () => Q(async () => {
2414
- if (!a.admin || !d.value) return;
2415
- const M = d.value.disabled;
2435
+ }), W = () => J(async () => {
2436
+ if (!a.admin || !c.value) return;
2437
+ const M = c.value.disabled;
2416
2438
  if ((M ? await a.sdk.enable() : await a.sdk.disable())?.disabled !== !M) throw { code: "commit-uncertain" };
2417
2439
  await X();
2418
- }), N = (M) => Q(async () => {
2419
- const te = "example-" + Array.from(crypto.getRandomValues(new Uint8Array(16)), (q) => q.toString(16).padStart(2, "0")).join("");
2420
- await a.sdk.exportExample({ key: M, job_id: te }), await X();
2421
- }), D = y(1), O = U(() => p.value.slice((D.value - 1) * Ae, D.value * Ae)), J = U(() => [{ key: "name", label: s.value.file }, { key: "state", label: s.value.status, width: "6.5rem" }, { key: "size", label: s.value.size, width: "6rem", align: "right" }, { key: "location", label: s.value.location, width: "30%" }, { key: "actions", label: "", width: "7.5rem" }]), ae = (M) => ({ committed: "success", canceled: "neutral", canceling: "neutral", interrupted: "danger", uncertain: "warning" })[K(M)] ?? "info", xe = (M) => M.slice(0, M.lastIndexOf("/")) || "/", Ce = U(() => d.value?.scopeMode === "install-selected" && !d.value.selection), pe = U(() => d.value ? d.value.disabled ? "disabled" : Ce.value ? "needs-scope" : "enabled" : void 0), fe = (M) => a.picker?.labels?.[M] ? `${s.value.choose}${me.value}${a.picker.labels[M]}` : s.value.choose, de = (M) => a.picker?.labels?.[M] ? `${s.value.example}${me.value}${a.picker.labels[M]}` : s.value.example, me = U(() => la(a.locale));
2422
- return x({ refresh: Y }), ve(() => {
2423
- Y(), z = setInterval(() => {
2424
- p.value.some(H) && Y();
2440
+ }), q = (M) => J(async () => {
2441
+ const le = "example-" + Array.from(crypto.getRandomValues(new Uint8Array(16)), (N) => N.toString(16).padStart(2, "0")).join("");
2442
+ await a.sdk.exportExample({ key: M, job_id: le }), await X();
2443
+ }), B = m(1), O = I(() => p.value.slice((B.value - 1) * Ae, B.value * Ae)), Z = I(() => [{ key: "name", label: s.value.file }, { key: "state", label: s.value.status, width: "6.5rem" }, { key: "size", label: s.value.size, width: "6rem", align: "right" }, { key: "location", label: s.value.location, width: "30%" }, { key: "actions", label: "", width: "7.5rem" }]), ae = (M) => ({ committed: "success", canceled: "neutral", canceling: "neutral", interrupted: "danger", uncertain: "warning" })[K(M)] ?? "info", ue = (M) => M.slice(0, M.lastIndexOf("/")) || "/", Ce = I(() => c.value?.scopeMode === "install-selected" && !c.value.selection), fe = I(() => c.value ? c.value.disabled ? "disabled" : Ce.value ? "needs-scope" : "enabled" : void 0), ye = (M) => a.picker?.labels?.[M] ? `${s.value.choose}${be.value}${a.picker.labels[M]}` : s.value.choose, ce = (M) => a.picker?.labels?.[M] ? `${s.value.example}${be.value}${a.picker.labels[M]}` : s.value.example, be = I(() => na(a.locale));
2444
+ return C({ refresh: j }), pe(() => {
2445
+ j(), P = setInterval(() => {
2446
+ p.value.some(Q) && j();
2425
2447
  }, 3e3);
2426
- }), ce(() => {
2427
- E = !0, z && clearInterval(z);
2428
- }), (M, te) => (n(), g(e(ke), {
2448
+ }), ve(() => {
2449
+ V = !0, P && clearInterval(P);
2450
+ }), (M, le) => (n(), g(e(_e), {
2429
2451
  title: s.value.title,
2430
2452
  description: s.value.help,
2431
- loading: h.value && !d.value && !A.value,
2453
+ loading: h.value && !c.value && !R.value,
2432
2454
  collapsible: !1,
2433
2455
  "aria-busy": h.value,
2434
2456
  class: "background-save-panel"
2435
- }, Me({
2457
+ }, Ke({
2436
2458
  default: t(() => [
2437
- A.value ? (n(), g(e(W), {
2459
+ R.value ? (n(), g(e(G), {
2438
2460
  key: 0,
2439
2461
  tone: "danger",
2440
2462
  role: "alert",
2441
2463
  class: "save-message"
2442
2464
  }, {
2443
2465
  default: t(() => [
2444
- P("span", El, [
2445
- P("span", Tl, l(ee.value), 1),
2466
+ z("span", Rl, [
2467
+ z("span", Dl, l(te.value), 1),
2446
2468
  f(e(F), {
2447
2469
  variant: "secondary",
2448
2470
  size: "sm",
2449
2471
  disabled: h.value,
2450
- onClick: Y
2472
+ onClick: j
2451
2473
  }, {
2452
2474
  default: t(() => [
2453
2475
  k(l(s.value.retry), 1)
@@ -2457,63 +2479,63 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2457
2479
  ])
2458
2480
  ]),
2459
2481
  _: 1
2460
- })) : b("", !0),
2461
- $.value ? (n(), g(e(W), {
2482
+ })) : y("", !0),
2483
+ x.value ? (n(), g(e(G), {
2462
2484
  key: 1,
2463
2485
  tone: "success",
2464
2486
  role: "status"
2465
2487
  }, {
2466
2488
  default: t(() => [
2467
- k(l($.value), 1)
2489
+ k(l(x.value), 1)
2468
2490
  ]),
2469
2491
  _: 1
2470
- })) : b("", !0),
2471
- d.value ? (n(), R("div", Ul, [
2492
+ })) : y("", !0),
2493
+ c.value ? (n(), T("div", Bl, [
2472
2494
  f(e($e), {
2473
2495
  label: s.value.status,
2474
2496
  "label-width": "10rem"
2475
2497
  }, {
2476
2498
  default: t(() => [
2477
- P("span", {
2499
+ z("span", {
2478
2500
  role: "status",
2479
- "data-save-status": pe.value
2501
+ "data-save-status": fe.value
2480
2502
  }, [
2481
2503
  f(e(Se), {
2482
- tone: pe.value === "enabled" ? "success" : pe.value === "disabled" ? "neutral" : "warning"
2504
+ tone: fe.value === "enabled" ? "success" : fe.value === "disabled" ? "neutral" : "warning"
2483
2505
  }, {
2484
2506
  default: t(() => [
2485
- k(l(pe.value === "enabled" ? s.value.statusEnabled : pe.value === "disabled" ? s.value.statusDisabled : s.value.statusNeedsScope), 1)
2507
+ k(l(fe.value === "enabled" ? s.value.statusEnabled : fe.value === "disabled" ? s.value.statusDisabled : s.value.statusNeedsScope), 1)
2486
2508
  ]),
2487
2509
  _: 1
2488
2510
  }, 8, ["tone"])
2489
- ], 8, Rl)
2511
+ ], 8, Fl)
2490
2512
  ]),
2491
2513
  _: 1
2492
2514
  }, 8, ["label"]),
2493
- d.value.selection ? (n(), g(e($e), {
2515
+ c.value.selection ? (n(), g(e($e), {
2494
2516
  key: 0,
2495
2517
  label: s.value.scope,
2496
2518
  "label-width": "10rem",
2497
2519
  "data-save-scope": ""
2498
2520
  }, {
2499
2521
  default: t(() => [
2500
- f(e(ye), {
2501
- path: d.value.selection.root
2522
+ f(e(me), {
2523
+ path: c.value.selection.root
2502
2524
  }, null, 8, ["path"])
2503
2525
  ]),
2504
2526
  _: 1
2505
- }, 8, ["label"])) : b("", !0)
2506
- ])) : b("", !0),
2507
- d.value?.mismatch ? (n(), g(e(W), {
2527
+ }, 8, ["label"])) : y("", !0)
2528
+ ])) : y("", !0),
2529
+ c.value?.mismatch ? (n(), g(e(G), {
2508
2530
  key: 3,
2509
2531
  tone: "warning"
2510
2532
  }, {
2511
2533
  default: t(() => [
2512
- k(l(s.value.scopeMismatch) + " " + l(d.value.preselection) + " → " + l(d.value.selection?.root), 1)
2534
+ k(l(s.value.scopeMismatch) + " " + l(c.value.preselection) + " → " + l(c.value.selection?.root), 1)
2513
2535
  ]),
2514
2536
  _: 1
2515
- })) : b("", !0),
2516
- Ce.value ? (n(), g(e(W), {
2537
+ })) : y("", !0),
2538
+ Ce.value ? (n(), g(e(G), {
2517
2539
  key: 4,
2518
2540
  tone: "warning"
2519
2541
  }, {
@@ -2521,8 +2543,8 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2521
2543
  k(l(s.value.scopeNeeds), 1)
2522
2544
  ]),
2523
2545
  _: 1
2524
- })) : b("", !0),
2525
- d.value?.disabled ? (n(), g(e(W), {
2546
+ })) : y("", !0),
2547
+ c.value?.disabled ? (n(), g(e(G), {
2526
2548
  key: 5,
2527
2549
  tone: "warning",
2528
2550
  class: "save-message"
@@ -2531,9 +2553,9 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2531
2553
  k(l(s.value.disabled), 1)
2532
2554
  ]),
2533
2555
  _: 1
2534
- })) : b("", !0),
2535
- P("h3", null, l(s.value.delegations), 1),
2536
- S.value.some((q) => q.status === "reselection-required") ? (n(), g(e(W), {
2556
+ })) : y("", !0),
2557
+ z("h3", null, l(s.value.delegations), 1),
2558
+ U.value.some((N) => N.status === "reselection-required") ? (n(), g(e(G), {
2537
2559
  key: 6,
2538
2560
  tone: "warning"
2539
2561
  }, {
@@ -2541,22 +2563,22 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2541
2563
  k(l(s.value.reselect), 1)
2542
2564
  ]),
2543
2565
  _: 1
2544
- })) : b("", !0),
2545
- d.value && !c.value.length ? (n(), R("p", Dl, l(s.value.empty), 1)) : b("", !0),
2546
- c.value.length ? (n(), R("ul", Bl, [
2547
- (n(!0), R(oe, null, _e(c.value, (q) => (n(), R("li", {
2548
- key: q.id
2566
+ })) : y("", !0),
2567
+ c.value && !d.value.length ? (n(), T("p", ql, l(s.value.empty), 1)) : y("", !0),
2568
+ d.value.length ? (n(), T("ul", Nl, [
2569
+ (n(!0), T(oe, null, we(d.value, (N) => (n(), T("li", {
2570
+ key: N.id
2549
2571
  }, [
2550
- P("div", Fl, [
2551
- f(e(ye), {
2552
- path: q.path
2572
+ z("div", Ol, [
2573
+ f(e(me), {
2574
+ path: N.path
2553
2575
  }, null, 8, ["path"]),
2554
- P("span", ql, l(s.value.untilRevoked), 1)
2576
+ z("span", Ll, l(s.value.untilRevoked), 1)
2555
2577
  ]),
2556
2578
  f(e(F), {
2557
2579
  variant: "secondary",
2558
2580
  disabled: h.value,
2559
- onClick: (C) => Z(q.id)
2581
+ onClick: (S) => ne(N.id)
2560
2582
  }, {
2561
2583
  default: t(() => [
2562
2584
  k(l(s.value.revoke), 1)
@@ -2564,97 +2586,97 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2564
2586
  _: 1
2565
2587
  }, 8, ["disabled", "onClick"])
2566
2588
  ]))), 128))
2567
- ])) : b("", !0),
2568
- r.picker ? (n(), R("div", Ol, [
2569
- (n(!0), R(oe, null, _e(r.picker.keys, (q) => (n(), g(e(F), {
2570
- key: q,
2589
+ ])) : y("", !0),
2590
+ r.picker ? (n(), T("div", Ml, [
2591
+ (n(!0), T(oe, null, we(r.picker.keys, (N) => (n(), g(e(F), {
2592
+ key: N,
2571
2593
  variant: "secondary",
2572
- disabled: h.value || !d.value || d.value.disabled || !V.value,
2573
- onClick: (C) => {
2574
- o.value = q, v.value = !0;
2594
+ disabled: h.value || !c.value || c.value.disabled || !$.value,
2595
+ onClick: (S) => {
2596
+ o.value = N, v.value = !0;
2575
2597
  }
2576
2598
  }, {
2577
2599
  default: t(() => [
2578
- k(l(fe(q)), 1)
2600
+ k(l(ye(N)), 1)
2579
2601
  ]),
2580
2602
  _: 2
2581
2603
  }, 1032, ["disabled", "onClick"]))), 128))
2582
- ])) : b("", !0),
2583
- V.value ? (n(), g(Re, {
2584
- key: d.value?.selection?.scope,
2604
+ ])) : y("", !0),
2605
+ $.value ? (n(), g(Be, {
2606
+ key: c.value?.selection?.scope,
2585
2607
  open: v.value,
2586
- "onUpdate:open": te[0] || (te[0] = (q) => v.value = q),
2587
- provider: V.value,
2608
+ "onUpdate:open": le[0] || (le[0] = (N) => v.value = N),
2609
+ provider: $.value,
2588
2610
  locale: r.locale,
2589
2611
  mode: "folder",
2590
2612
  destination: { key: o.value, selectDestination: r.sdk.selectDestination },
2591
- onAuthorized: ne,
2613
+ onAuthorized: ee,
2592
2614
  onRefused: se,
2593
2615
  "error-text": r.pickerErrorText
2594
- }, null, 8, ["open", "provider", "locale", "destination", "error-text"])) : b("", !0),
2595
- r.sampleSave && S.value.some((q) => q.status === "active") ? (n(), R("div", Ll, [
2596
- P("p", Nl, l(s.value.exampleHelp), 1),
2597
- P("div", Ml, [
2598
- (n(!0), R(oe, null, _e(S.value.filter((q) => q.status === "active"), (q) => (n(), g(e(F), {
2599
- key: q.key,
2616
+ }, null, 8, ["open", "provider", "locale", "destination", "error-text"])) : y("", !0),
2617
+ r.sampleSave && U.value.some((N) => N.status === "active") ? (n(), T("div", Kl, [
2618
+ z("p", Hl, l(s.value.exampleHelp), 1),
2619
+ z("div", Gl, [
2620
+ (n(!0), T(oe, null, we(U.value.filter((N) => N.status === "active"), (N) => (n(), g(e(F), {
2621
+ key: N.key,
2600
2622
  variant: "secondary",
2601
- disabled: h.value || d.value?.disabled,
2602
- onClick: (C) => N(q.key)
2623
+ disabled: h.value || c.value?.disabled,
2624
+ onClick: (S) => q(N.key)
2603
2625
  }, {
2604
2626
  default: t(() => [
2605
- k(l(de(q.key)), 1)
2627
+ k(l(ce(N.key)), 1)
2606
2628
  ]),
2607
2629
  _: 2
2608
2630
  }, 1032, ["disabled", "onClick"]))), 128))
2609
2631
  ])
2610
- ])) : b("", !0),
2611
- P("h3", null, l(s.value.operations), 1),
2612
- d.value && !p.value.length ? (n(), R("p", Kl, l(s.value.noOperations), 1)) : b("", !0),
2613
- p.value.length ? (n(), R("div", Hl, [
2632
+ ])) : y("", !0),
2633
+ z("h3", null, l(s.value.operations), 1),
2634
+ c.value && !p.value.length ? (n(), T("p", Jl, l(s.value.noOperations), 1)) : y("", !0),
2635
+ p.value.length ? (n(), T("div", Wl, [
2614
2636
  f(e(Ma), {
2615
- columns: J.value,
2637
+ columns: Z.value,
2616
2638
  rows: O.value,
2617
2639
  "row-key": "job_id"
2618
2640
  }, {
2619
- "cell-name": t(({ row: q }) => [
2620
- P("span", {
2641
+ "cell-name": t(({ row: N }) => [
2642
+ z("span", {
2621
2643
  class: "save-name",
2622
- "data-save-job": q.job_id,
2623
- title: q.name
2624
- }, l(q.name), 9, Gl),
2625
- K(q) === "uncertain" ? (n(), R("p", Jl, l(s.value.uncertainHelp), 1)) : K(q) === "interrupted" ? (n(), R("p", Wl, l(q.code ? e(Ie)({ code: q.code }, s.value) : s.value.interruptedHelp), 1)) : b("", !0)
2644
+ "data-save-job": N.job_id,
2645
+ title: N.name
2646
+ }, l(N.name), 9, Xl),
2647
+ K(N) === "uncertain" ? (n(), T("p", Ql, l(s.value.uncertainHelp), 1)) : K(N) === "interrupted" ? (n(), T("p", Yl, l(N.code ? e(Ie)({ code: N.code }, s.value) : s.value.interruptedHelp), 1)) : y("", !0)
2626
2648
  ]),
2627
- "cell-state": t(({ row: q }) => [
2628
- P("span", {
2629
- "data-save-state": K(q)
2649
+ "cell-state": t(({ row: N }) => [
2650
+ z("span", {
2651
+ "data-save-state": K(N)
2630
2652
  }, [
2631
2653
  f(e(Se), {
2632
- tone: ae(q)
2654
+ tone: ae(N)
2633
2655
  }, {
2634
2656
  default: t(() => [
2635
- k(l(s.value[K(q)]), 1)
2657
+ k(l(s.value[K(N)]), 1)
2636
2658
  ]),
2637
2659
  _: 2
2638
2660
  }, 1032, ["tone"])
2639
- ], 8, Xl)
2661
+ ], 8, Zl)
2640
2662
  ]),
2641
- "cell-size": t(({ row: q }) => [
2642
- k(l(q.receipt?.size !== void 0 ? e(Ka)(q.receipt.size) : "—"), 1)
2663
+ "cell-size": t(({ row: N }) => [
2664
+ k(l(N.receipt?.size !== void 0 ? e(Ka)(N.receipt.size) : "—"), 1)
2643
2665
  ]),
2644
- "cell-location": t(({ row: q }) => [
2645
- K(q) === "committed" ? (n(), g(e(ye), {
2666
+ "cell-location": t(({ row: N }) => [
2667
+ K(N) === "committed" ? (n(), g(e(me), {
2646
2668
  key: 0,
2647
- path: q.receipt.path
2648
- }, null, 8, ["path"])) : (n(), R("span", Ql, "—"))
2669
+ path: N.receipt.path
2670
+ }, null, 8, ["path"])) : (n(), T("span", jl, "—"))
2649
2671
  ]),
2650
- "cell-actions": t(({ row: q }) => [
2651
- K(q) === "committed" ? (n(), g(e(F), {
2672
+ "cell-actions": t(({ row: N }) => [
2673
+ K(N) === "committed" ? (n(), g(e(F), {
2652
2674
  key: 0,
2653
2675
  variant: "ghost",
2654
2676
  size: "sm",
2655
2677
  "aria-label": s.value.openFolder,
2656
2678
  title: s.value.openFolder,
2657
- onClick: (C) => e(_a)(xe(q.receipt.path))
2679
+ onClick: (S) => e(_a)(ue(N.receipt.path))
2658
2680
  }, {
2659
2681
  default: t(() => [
2660
2682
  f(e(Ya), {
@@ -2663,46 +2685,46 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2663
2685
  })
2664
2686
  ]),
2665
2687
  _: 1
2666
- }, 8, ["aria-label", "title", "onClick"])) : b("", !0),
2667
- H(q) ? (n(), g(e(F), {
2688
+ }, 8, ["aria-label", "title", "onClick"])) : y("", !0),
2689
+ Q(N) ? (n(), g(e(F), {
2668
2690
  key: 1,
2669
2691
  variant: "secondary",
2670
2692
  size: "sm",
2671
2693
  disabled: h.value,
2672
- onClick: (C) => G(q)
2694
+ onClick: (S) => H(N)
2673
2695
  }, {
2674
2696
  default: t(() => [
2675
2697
  k(l(s.value.cancel), 1)
2676
2698
  ]),
2677
2699
  _: 1
2678
- }, 8, ["disabled", "onClick"])) : b("", !0)
2700
+ }, 8, ["disabled", "onClick"])) : y("", !0)
2679
2701
  ]),
2680
2702
  _: 1
2681
2703
  }, 8, ["columns", "rows"]),
2682
2704
  p.value.length > Ae ? (n(), g(e(Ha), {
2683
2705
  key: 0,
2684
- modelValue: D.value,
2685
- "onUpdate:modelValue": te[1] || (te[1] = (q) => D.value = q),
2706
+ modelValue: B.value,
2707
+ "onUpdate:modelValue": le[1] || (le[1] = (N) => B.value = N),
2686
2708
  total: p.value.length,
2687
2709
  "page-size": Ae,
2688
2710
  class: "save-pages"
2689
- }, null, 8, ["modelValue", "total"])) : b("", !0)
2690
- ])) : b("", !0)
2711
+ }, null, 8, ["modelValue", "total"])) : y("", !0)
2712
+ ])) : y("", !0)
2691
2713
  ]),
2692
2714
  _: 2
2693
2715
  }, [
2694
- r.admin && d.value ? {
2716
+ r.admin && c.value ? {
2695
2717
  name: "footer",
2696
2718
  fn: t(() => [
2697
- P("div", Yl, [
2698
- P("p", null, l(s.value.disableHelp), 1),
2719
+ z("div", en, [
2720
+ z("p", null, l(s.value.disableHelp), 1),
2699
2721
  f(e(F), {
2700
- variant: d.value.disabled ? "secondary" : "danger",
2722
+ variant: c.value.disabled ? "secondary" : "danger",
2701
2723
  disabled: h.value,
2702
- onClick: j
2724
+ onClick: W
2703
2725
  }, {
2704
2726
  default: t(() => [
2705
- k(l(d.value.disabled ? s.value.enable : s.value.disable), 1)
2727
+ k(l(c.value.disabled ? s.value.enable : s.value.disable), 1)
2706
2728
  ]),
2707
2729
  _: 1
2708
2730
  }, 8, ["variant", "disabled"])
@@ -2712,87 +2734,87 @@ const bt = ["aria-busy", "aria-label"], gt = { class: "file-toolbar file-locatio
2712
2734
  } : void 0
2713
2735
  ]), 1032, ["title", "description", "loading", "aria-busy"]));
2714
2736
  }
2715
- }), _n = /* @__PURE__ */ ue(Zl, [["__scopeId", "data-v-5ef5e256"]]), va = /* @__PURE__ */ Symbol("authorization");
2716
- function jl() {
2717
- const r = Le(va, void 0);
2737
+ }), Cn = /* @__PURE__ */ re(an, [["__scopeId", "data-v-5ef5e256"]]), pa = /* @__PURE__ */ Symbol("authorization");
2738
+ function tn() {
2739
+ const r = Re(pa, void 0);
2718
2740
  if (!r) throw Error("authorization controls must be placed inside AuthorizationGate");
2719
2741
  return r;
2720
2742
  }
2721
- const en = { class: "authorization-content" }, an = ["aria-busy", "data-authorization-state"], tn = { class: "authorization-body" }, ln = /* @__PURE__ */ ie({
2743
+ const ln = { class: "authorization-content" }, nn = ["aria-busy", "data-authorization-state"], sn = { class: "authorization-body" }, on = /* @__PURE__ */ ie({
2722
2744
  __name: "AuthorizationGate",
2723
2745
  props: {
2724
2746
  ctx: {},
2725
2747
  name: {}
2726
2748
  },
2727
2749
  emits: ["ready"],
2728
- setup(r, { emit: x }) {
2729
- const i = r, a = x, u = y(), v = y(), o = y(!1), s = y(!1), d = y(!1);
2730
- let c = [], p = !1, h = 0, A = !1, $;
2731
- const _ = U(() => wa(i.ctx.locale, i.name ?? i.ctx.displayName ?? "")), S = U(() => u.value || v.value), V = U(() => S.value?.state === "authorization_required"), E = U(() => ["helper_untrusted", "cli_untrusted"].includes(S.value?.reason || "")), z = U(() => V.value && !E.value), I = U(() => S.value?.reason === "credential_not_ready" ? "credential" : "unavailable"), K = U(() => S.value ? V.value ? _.value("title") : S.value.state === "ready" ? _.value("ready") : S.value.state === "not_admin" ? _.value("not_admin.title") : S.value.state === "session_expired" ? _.value("session_expired.title") : _.value(I.value + ".title") : _.value("checking")), H = U(() => V.value ? _.value("purpose") : S.value?.state === "not_admin" ? _.value("not_admin.body") : S.value?.state === "session_expired" ? _.value("session_expired.body") : S.value?.state === "unavailable" ? _.value(I.value + ".body") : _.value("purpose")), le = ["grant_missing", "upgrade_reapproval", "helper_untrusted", "cli_untrusted", "grant_incompatible", "package_identity_changed", "maintenance_task_missing", "maintenance_task_mismatch", "helper_health_rejected", "capability_missing"], X = U(() => le.includes(S.value?.reason || "") ? S.value.reason : "unknown"), Q = U(() => E.value ? "next.reinstall" : X.value === "grant_missing" ? "next.install" : X.value === "upgrade_reapproval" || X.value === "grant_incompatible" ? "next.update" : "next.repair");
2732
- function Y(N) {
2733
- if (!N || N.command !== "authorization" || N.schema_version !== 1 || !["ready", "authorization_required", "not_admin", "session_expired", "unavailable"].includes(N.state) || N.reason === "upgrade_reapproval" && N.state !== "authorization_required") throw Error("invalid status");
2734
- return N;
2750
+ setup(r, { emit: C }) {
2751
+ const i = r, a = C, u = m(), v = m(), o = m(!1), s = m(!1), c = m(!1);
2752
+ let d = [], p = !1, h = 0, R = !1, x;
2753
+ const _ = I(() => wa(i.ctx.locale, i.name ?? i.ctx.displayName ?? "")), U = I(() => u.value || v.value), $ = I(() => U.value?.state === "authorization_required"), V = I(() => ["helper_untrusted", "cli_untrusted"].includes(U.value?.reason || "")), P = I(() => $.value && !V.value), A = I(() => U.value?.reason === "credential_not_ready" ? "credential" : "unavailable"), K = I(() => U.value ? $.value ? _.value("title") : U.value.state === "ready" ? _.value("ready") : U.value.state === "not_admin" ? _.value("not_admin.title") : U.value.state === "session_expired" ? _.value("session_expired.title") : _.value(A.value + ".title") : _.value("checking")), Q = I(() => $.value ? _.value("purpose") : U.value?.state === "not_admin" ? _.value("not_admin.body") : U.value?.state === "session_expired" ? _.value("session_expired.body") : U.value?.state === "unavailable" ? _.value(A.value + ".body") : _.value("purpose")), Y = ["grant_missing", "upgrade_reapproval", "helper_untrusted", "cli_untrusted", "grant_incompatible", "package_identity_changed", "maintenance_task_missing", "maintenance_task_mismatch", "helper_health_rejected", "capability_missing"], X = I(() => Y.includes(U.value?.reason || "") ? U.value.reason : "unknown"), J = I(() => V.value ? "next.reinstall" : X.value === "grant_missing" ? "next.install" : X.value === "upgrade_reapproval" || X.value === "grant_incompatible" ? "next.update" : "next.repair");
2754
+ function j(q) {
2755
+ if (!q || q.command !== "authorization" || q.schema_version !== 1 || !["ready", "authorization_required", "not_admin", "session_expired", "unavailable"].includes(q.state) || q.reason === "upgrade_reapproval" && q.state !== "authorization_required") throw Error("invalid status");
2756
+ return q;
2735
2757
  }
2736
- const ne = [1e3, 3e3];
2737
- async function se(N) {
2738
- const D = N === "status" && !d.value ? ne : [];
2758
+ const ee = [1e3, 3e3];
2759
+ async function se(q) {
2760
+ const B = q === "status" && !c.value ? ee : [];
2739
2761
  for (let O = 0; ; O++) {
2740
2762
  try {
2741
- const J = Y(await i.ctx.authorization?.[N]());
2742
- if (J.state !== "unavailable" || O >= D.length) return J;
2743
- } catch (J) {
2744
- if (J.code === "session_required" || O >= D.length) throw J;
2763
+ const Z = j(await i.ctx.authorization?.[q]());
2764
+ if (Z.state !== "unavailable" || O >= B.length) return Z;
2765
+ } catch (Z) {
2766
+ if (Z.code === "session_required" || O >= B.length) throw Z;
2745
2767
  }
2746
- if (await new Promise((J) => setTimeout(J, D[O])), p) throw Error("disposed");
2768
+ if (await new Promise((Z) => setTimeout(Z, B[O])), p) throw Error("disposed");
2747
2769
  }
2748
2770
  }
2749
- async function ee(N) {
2771
+ async function te(q) {
2750
2772
  if (o.value || p) return;
2751
- const D = ++h;
2752
- v.value = N === "request" && u.value?.state === "authorization_required" ? u.value : void 0, o.value = !0, s.value = !1, u.value = void 0;
2773
+ const B = ++h;
2774
+ v.value = q === "request" && u.value?.state === "authorization_required" ? u.value : void 0, o.value = !0, s.value = !1, u.value = void 0;
2753
2775
  try {
2754
- const O = await se(N);
2755
- if (p || D !== h) return;
2756
- u.value = O, d.value = O.state !== "ready", O.state === "ready" && Z(!0), O.state === "ready" && a("ready");
2776
+ const O = await se(q);
2777
+ if (p || B !== h) return;
2778
+ u.value = O, c.value = O.state !== "ready", O.state === "ready" && ne(!0), O.state === "ready" && a("ready");
2757
2779
  } catch (O) {
2758
- !p && D === h && (u.value = O.code === "session_required" ? { command: "authorization", schema_version: 1, state: "session_expired", reason: "session_expired" } : v.value || { command: "authorization", schema_version: 1, state: "unavailable", reason: "service_unavailable" }, s.value = !0, d.value = !0);
2780
+ !p && B === h && (u.value = O.code === "session_required" ? { command: "authorization", schema_version: 1, state: "session_expired", reason: "session_expired" } : v.value || { command: "authorization", schema_version: 1, state: "unavailable", reason: "service_unavailable" }, s.value = !0, c.value = !0);
2759
2781
  } finally {
2760
- !p && D === h && (o.value = !1, v.value = void 0, A && (A = !1, ee("status")));
2782
+ !p && B === h && (o.value = !1, v.value = void 0, R && (R = !1, te("status")));
2761
2783
  }
2762
2784
  }
2763
- function Z(N) {
2764
- const D = c;
2765
- c = [], D.forEach((O) => O(N));
2785
+ function ne(q) {
2786
+ const B = d;
2787
+ d = [], B.forEach((O) => O(q));
2766
2788
  }
2767
- function G(N) {
2768
- d.value = N, N || Z(!1);
2789
+ function H(q) {
2790
+ c.value = q, q || ne(!1);
2769
2791
  }
2770
- function j() {
2771
- return u.value?.state === "ready" ? Promise.resolve(!0) : (o.value || (d.value = !0), new Promise((N) => c.push(N)));
2792
+ function W() {
2793
+ return u.value?.state === "ready" ? Promise.resolve(!0) : (o.value || (c.value = !0), new Promise((q) => d.push(q)));
2772
2794
  }
2773
- return na(va, { state: U(() => u.value?.state ?? "checking"), requireAuthorization: j, text: _, busy: o, canManage: () => !!i.ctx.authorization?.canManage?.(), revoke: () => ee("revoke") }), ve(() => {
2774
- $ = i.ctx.reopen(() => {
2775
- o.value ? A = !0 : ee("status");
2776
- }), ee("status");
2777
- }), sa(() => {
2778
- p = !0, h++, Z(!1), typeof $ == "function" && $();
2779
- }), (N, D) => (n(), R(oe, null, [
2780
- P("div", en, [
2781
- ge(N.$slots, "default", {}, void 0, !0)
2795
+ return sa(pa, { state: I(() => u.value?.state ?? "checking"), requireAuthorization: W, text: _, busy: o, canManage: () => !!i.ctx.authorization?.canManage?.(), revoke: () => te("revoke") }), pe(() => {
2796
+ x = i.ctx.reopen(() => {
2797
+ o.value ? R = !0 : te("status");
2798
+ }), te("status");
2799
+ }), oa(() => {
2800
+ p = !0, h++, ne(!1), typeof x == "function" && x();
2801
+ }), (q, B) => (n(), T(oe, null, [
2802
+ z("div", ln, [
2803
+ he(q.$slots, "default", {}, void 0, !0)
2782
2804
  ]),
2783
- f(e(Ue), {
2784
- open: d.value,
2805
+ f(e(De), {
2806
+ open: c.value,
2785
2807
  title: K.value,
2786
2808
  width: "480px",
2787
- "onUpdate:open": G
2809
+ "onUpdate:open": H
2788
2810
  }, {
2789
2811
  footer: t(() => [
2790
- z.value ? (n(), g(e(F), {
2812
+ P.value ? (n(), g(e(F), {
2791
2813
  key: 0,
2792
2814
  variant: "primary",
2793
2815
  loading: o.value,
2794
2816
  disabled: o.value,
2795
- onClick: D[0] || (D[0] = (O) => ee("request"))
2817
+ onClick: B[0] || (B[0] = (O) => te("request"))
2796
2818
  }, {
2797
2819
  default: t(() => [
2798
2820
  k(l(o.value ? _.value("authorizing") : _.value("authorize")), 1)
@@ -2803,7 +2825,7 @@ const en = { class: "authorization-content" }, an = ["aria-busy", "data-authoriz
2803
2825
  variant: "primary",
2804
2826
  loading: o.value,
2805
2827
  disabled: o.value,
2806
- onClick: D[1] || (D[1] = (O) => ee("status"))
2828
+ onClick: B[1] || (B[1] = (O) => te("status"))
2807
2829
  }, {
2808
2830
  default: t(() => [
2809
2831
  k(l(o.value ? _.value("checking") : _.value("retry")), 1)
@@ -2812,24 +2834,24 @@ const en = { class: "authorization-content" }, an = ["aria-busy", "data-authoriz
2812
2834
  }, 8, ["loading", "disabled"]))
2813
2835
  ]),
2814
2836
  default: t(() => [
2815
- P("div", {
2837
+ z("div", {
2816
2838
  class: "authorization-view",
2817
2839
  "aria-busy": o.value,
2818
2840
  "data-authorization-state": u.value?.state || "checking"
2819
2841
  }, [
2820
- P("p", tn, l(H.value), 1),
2821
- V.value ? (n(), g(e(W), {
2842
+ z("p", sn, l(Q.value), 1),
2843
+ $.value ? (n(), g(e(G), {
2822
2844
  key: 0,
2823
2845
  class: "authorization-status",
2824
2846
  tone: ["grant_missing", "upgrade_reapproval"].includes(X.value) ? "info" : "warning",
2825
2847
  title: _.value("reason." + X.value)
2826
2848
  }, {
2827
2849
  default: t(() => [
2828
- k(l(_.value(Q.value)), 1)
2850
+ k(l(_.value(J.value)), 1)
2829
2851
  ]),
2830
2852
  _: 1
2831
- }, 8, ["tone", "title"])) : b("", !0),
2832
- s.value ? (n(), g(e(W), {
2853
+ }, 8, ["tone", "title"])) : y("", !0),
2854
+ s.value ? (n(), g(e(G), {
2833
2855
  key: 1,
2834
2856
  class: "authorization-failed",
2835
2857
  tone: "warning"
@@ -2838,22 +2860,22 @@ const en = { class: "authorization-content" }, an = ["aria-busy", "data-authoriz
2838
2860
  k(l(_.value("failed")), 1)
2839
2861
  ]),
2840
2862
  _: 1
2841
- })) : b("", !0)
2842
- ], 8, an)
2863
+ })) : y("", !0)
2864
+ ], 8, nn)
2843
2865
  ]),
2844
2866
  _: 1
2845
2867
  }, 8, ["open", "title"])
2846
2868
  ], 64));
2847
2869
  }
2848
- }), wn = /* @__PURE__ */ ue(ln, [["__scopeId", "data-v-e16b5f7d"]]), nn = { class: "authorization-setting" }, sn = {
2870
+ }), $n = /* @__PURE__ */ re(on, [["__scopeId", "data-v-e16b5f7d"]]), un = { class: "authorization-setting" }, rn = {
2849
2871
  class: "authorization-state",
2850
2872
  role: "status"
2851
- }, on = { class: "authorization-revoke-body" }, un = /* @__PURE__ */ ie({
2873
+ }, dn = { class: "authorization-revoke-body" }, cn = /* @__PURE__ */ ie({
2852
2874
  __name: "AuthorizationSettings",
2853
2875
  setup(r) {
2854
- const { state: x, requireAuthorization: i, text: a, busy: u, canManage: v, revoke: o } = jl(), s = y(!1), d = { checking: "checking", ready: "ready", authorization_required: "state.required", not_admin: "not_admin.title", session_expired: "session_expired.title", unavailable: "state.unavailable" };
2855
- return (c, p) => (n(), R(oe, null, [
2856
- f(e(ke), {
2876
+ const { state: C, requireAuthorization: i, text: a, busy: u, canManage: v, revoke: o } = tn(), s = m(!1), c = { checking: "checking", ready: "ready", authorization_required: "state.required", not_admin: "not_admin.title", session_expired: "session_expired.title", unavailable: "state.unavailable" };
2877
+ return (d, p) => (n(), T(oe, null, [
2878
+ f(e(_e), {
2857
2879
  title: e(a)("settings.title"),
2858
2880
  collapsible: !1
2859
2881
  }, {
@@ -2864,16 +2886,16 @@ const en = { class: "authorization-content" }, an = ["aria-busy", "data-authoriz
2864
2886
  align: "center"
2865
2887
  }, {
2866
2888
  default: t(() => [
2867
- P("div", nn, [
2868
- P("span", sn, [
2869
- e(x) === "ready" ? (n(), g(e(Za), {
2889
+ z("div", un, [
2890
+ z("span", rn, [
2891
+ e(C) === "ready" ? (n(), g(e(Za), {
2870
2892
  key: 0,
2871
2893
  size: 16,
2872
2894
  "aria-hidden": "true"
2873
- })) : b("", !0),
2874
- k(l(e(a)(d[e(x)])), 1)
2895
+ })) : y("", !0),
2896
+ k(l(e(a)(c[e(C)])), 1)
2875
2897
  ]),
2876
- e(x) === "ready" && e(v)() ? (n(), g(e(F), {
2898
+ e(C) === "ready" && e(v)() ? (n(), g(e(F), {
2877
2899
  key: 0,
2878
2900
  variant: "secondary",
2879
2901
  disabled: e(u),
@@ -2883,7 +2905,7 @@ const en = { class: "authorization-content" }, an = ["aria-busy", "data-authoriz
2883
2905
  k(l(e(a)("revoke")), 1)
2884
2906
  ]),
2885
2907
  _: 1
2886
- }, 8, ["disabled"])) : e(x) !== "ready" && e(x) !== "checking" ? (n(), g(e(F), {
2908
+ }, 8, ["disabled"])) : e(C) !== "ready" && e(C) !== "checking" ? (n(), g(e(F), {
2887
2909
  key: 1,
2888
2910
  variant: "secondary",
2889
2911
  onClick: p[1] || (p[1] = (h) => e(i)())
@@ -2892,7 +2914,7 @@ const en = { class: "authorization-content" }, an = ["aria-busy", "data-authoriz
2892
2914
  k(l(e(a)("settings.details")), 1)
2893
2915
  ]),
2894
2916
  _: 1
2895
- })) : b("", !0)
2917
+ })) : y("", !0)
2896
2918
  ])
2897
2919
  ]),
2898
2920
  _: 1
@@ -2900,7 +2922,7 @@ const en = { class: "authorization-content" }, an = ["aria-busy", "data-authoriz
2900
2922
  ]),
2901
2923
  _: 1
2902
2924
  }, 8, ["title"]),
2903
- f(e(Ue), {
2925
+ f(e(De), {
2904
2926
  open: s.value,
2905
2927
  "onUpdate:open": p[4] || (p[4] = (h) => s.value = h),
2906
2928
  title: e(a)("revoke.title"),
@@ -2930,82 +2952,82 @@ const en = { class: "authorization-content" }, an = ["aria-busy", "data-authoriz
2930
2952
  }, 8, ["disabled"])
2931
2953
  ]),
2932
2954
  default: t(() => [
2933
- P("p", on, l(e(a)("revoke.body")), 1)
2955
+ z("p", dn, l(e(a)("revoke.body")), 1)
2934
2956
  ]),
2935
2957
  _: 1
2936
2958
  }, 8, ["open", "title"])
2937
2959
  ], 64));
2938
2960
  }
2939
- }), xn = /* @__PURE__ */ ue(un, [["__scopeId", "data-v-f031e7c7"]]);
2961
+ }), Sn = /* @__PURE__ */ re(cn, [["__scopeId", "data-v-f031e7c7"]]);
2940
2962
  export {
2941
- fn as AppShell,
2942
- wn as AuthorizationGate,
2943
- xn as AuthorizationSettings,
2944
- gn as BackgroundPanel,
2945
- _n as BackgroundSavePanel,
2946
- Sn as DEFAULT_REQUEST_TIMEOUT,
2947
- kn as DelegatePanel,
2948
- hn as ExecutorApproval,
2949
- vt as ExecutorNotice,
2950
- da as ExecutorSettings,
2951
- Ke as ExecutorSetupKey,
2952
- zn as FILE_STATION_APP,
2953
- ca as FileBrowser,
2954
- yn as FilesPage,
2955
- bn as LoginPage,
2956
- Re as NasPicker,
2957
- mn as PortalSettings,
2958
- Pn as activePage,
2959
- Vn as authorizationCatalogs,
2963
+ bn as AppShell,
2964
+ $n as AuthorizationGate,
2965
+ Sn as AuthorizationSettings,
2966
+ _n as BackgroundPanel,
2967
+ Cn as BackgroundSavePanel,
2968
+ Vn as DEFAULT_REQUEST_TIMEOUT,
2969
+ xn as DelegatePanel,
2970
+ wn as ExecutorApproval,
2971
+ pt as ExecutorNotice,
2972
+ ca as ExecutorSettings,
2973
+ Te as ExecutorSetupKey,
2974
+ An as FILE_STATION_APP,
2975
+ va as FileBrowser,
2976
+ gn as FilesPage,
2977
+ kn as LoginPage,
2978
+ Be as NasPicker,
2979
+ hn as PortalSettings,
2980
+ In as activePage,
2981
+ En as authorizationCatalogs,
2960
2982
  wa as authorizationCopy,
2961
- An as backgroundCatalogs,
2983
+ Tn as backgroundCatalogs,
2962
2984
  ma as backgroundCopy,
2963
2985
  ga as backgroundErrorCopy,
2964
- In as bridgeCatalogs,
2965
- En as bridgeErrorCopy,
2966
- Tn as catalogs,
2967
- Un as clientTimeout,
2986
+ Un as bridgeCatalogs,
2987
+ Rn as bridgeErrorCopy,
2988
+ Dn as catalogs,
2989
+ Bn as clientTimeout,
2968
2990
  ba as createBackgroundPickerProvider,
2969
- Rn as createBackgroundSaveFacade,
2970
- Dn as createFileTransfers,
2971
- ta as createNasProvider,
2972
- Bn as createPortalAccess,
2973
- pn as createSession,
2974
- Fn as createStandaloneContext,
2975
- qn as createStandaloneHost,
2976
- On as decodeResponse,
2977
- Ln as delegateCatalogs,
2978
- Te as delegateCopy,
2979
- Nn as encodeRequest,
2991
+ Fn as createBackgroundSaveFacade,
2992
+ qn as createFileTransfers,
2993
+ la as createNasProvider,
2994
+ Nn as createPortalAccess,
2995
+ mn as createSession,
2996
+ On as createStandaloneContext,
2997
+ Ln as createStandaloneHost,
2998
+ Mn as decodeResponse,
2999
+ Kn as delegateCatalogs,
3000
+ Ue as delegateCopy,
3001
+ Hn as encodeRequest,
2980
3002
  ha as errorCopy,
2981
- Mn as fileStationPath,
2982
- qe as format,
2983
- Kn as identityCatalogs,
3003
+ Gn as fileStationPath,
3004
+ Oe as format,
3005
+ Jn as identityCatalogs,
2984
3006
  ya as identityCopy,
2985
- fa as isFullPage,
2986
- la as labelSeparator,
2987
- Hn as mergeCatalogs,
2988
- Gn as nasCatalogs,
2989
- be as nasCopy,
2990
- ea as nasErrorCopy,
2991
- Jn as openFileInFileStation,
3007
+ je as isFullPage,
3008
+ na as labelSeparator,
3009
+ Wn as mergeCatalogs,
3010
+ Xn as nasCatalogs,
3011
+ ge as nasCopy,
3012
+ aa as nasErrorCopy,
3013
+ Qn as openFileInFileStation,
2992
3014
  _a as openFolderInFileStation,
2993
- Wn as portalCatalogs,
2994
- Xn as portalMessages,
2995
- Qn as protocolCodes,
2996
- Yn as protocolOps,
2997
- Zn as protocolSchemas,
3015
+ Yn as portalCatalogs,
3016
+ Zn as portalMessages,
3017
+ jn as protocolCodes,
3018
+ es as protocolOps,
3019
+ as as protocolSchemas,
2998
3020
  He as requestKey,
2999
- jn as saveCatalogs,
3000
- aa as saveCopy,
3021
+ ts as saveCatalogs,
3022
+ ta as saveCopy,
3001
3023
  Ie as saveError,
3002
3024
  ka as scopedPicker,
3003
- es as shellCatalogs,
3004
- pa as shellCopy,
3005
- as as shellPages,
3006
- je as uiLocale,
3007
- ts as uiLocales,
3008
- jl as useAuthorization,
3009
- ua as useExecutorSetup,
3025
+ ls as shellCatalogs,
3026
+ fa as shellCopy,
3027
+ ns as shellPages,
3028
+ ea as uiLocale,
3029
+ ss as uiLocales,
3030
+ tn as useAuthorization,
3031
+ ra as useExecutorSetup,
3010
3032
  ja as useNasRequest
3011
3033
  };