@synopackageland/sdk 0.9.5 → 0.9.7

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