vuefinder 4.5.2 → 4.5.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{CodeMirrorEditor-I8Cyd6Sk.js → CodeMirrorEditor-D6dPPYE5.js} +11 -11
- package/dist/{index-CXYBSsQ_.js → index-7yuqz-Rf.js} +3 -3
- package/dist/{index-Dnh1Eq-B.js → index-BCuNSVpg.js} +4 -4
- package/dist/{index-Dz5J6Tkc.js → index-CDLDa9hm.js} +2 -2
- package/dist/{index-Bjx_hv7C.js → index-CiQxllq0.js} +1 -1
- package/dist/{index-8aZl9FYm.js → index-DHc88vFW.js} +2 -2
- package/dist/{index-AsSdN75W.js → index-DI_5aJSj.js} +2 -2
- package/dist/{index-dm9K-vRJ.js → index-DTgkQtZH.js} +401 -401
- package/dist/{index-BrU_Tp7n.js → index-DvhvZGDG.js} +2 -2
- package/dist/{index-BGboYL-P.js → index-GsYvSfQ8.js} +2 -2
- package/dist/vuefinder.css +1 -1
- package/dist/vuefinder.js +1 -1
- package/package.json +2 -2
|
@@ -139,7 +139,7 @@ function zo(s, e, t, n, i) {
|
|
|
139
139
|
} catch {
|
|
140
140
|
}
|
|
141
141
|
return null;
|
|
142
|
-
},
|
|
142
|
+
}, h = (C, F) => {
|
|
143
143
|
try {
|
|
144
144
|
const E = localStorage.getItem(v), L = E ? JSON.parse(E) : {};
|
|
145
145
|
L[C] = F, localStorage.setItem(v, JSON.stringify(L));
|
|
@@ -148,7 +148,7 @@ function zo(s, e, t, n, i) {
|
|
|
148
148
|
}, p = se(u), k = String(p.value), b = y(k), $ = I(b || {});
|
|
149
149
|
let m = !1;
|
|
150
150
|
!b && Object.keys(n).length > 0 && Vt(k, n).then((C) => {
|
|
151
|
-
$.value = C,
|
|
151
|
+
$.value = C, h(k, C);
|
|
152
152
|
}).catch(() => {
|
|
153
153
|
}), pe(
|
|
154
154
|
p,
|
|
@@ -163,7 +163,7 @@ function zo(s, e, t, n, i) {
|
|
|
163
163
|
else if (Object.keys(n).length > 0)
|
|
164
164
|
try {
|
|
165
165
|
const q = await Vt(String(C), n);
|
|
166
|
-
$.value = q,
|
|
166
|
+
$.value = q, h(String(C), q);
|
|
167
167
|
} catch {
|
|
168
168
|
}
|
|
169
169
|
return;
|
|
@@ -174,7 +174,7 @@ function zo(s, e, t, n, i) {
|
|
|
174
174
|
else
|
|
175
175
|
try {
|
|
176
176
|
const L = await Vt(String(C), n);
|
|
177
|
-
$.value = L,
|
|
177
|
+
$.value = L, h(String(C), L);
|
|
178
178
|
} catch (L) {
|
|
179
179
|
const q = Ce(L, "Locale cannot be loaded!");
|
|
180
180
|
l.error(q);
|
|
@@ -184,9 +184,9 @@ function zo(s, e, t, n, i) {
|
|
|
184
184
|
},
|
|
185
185
|
{ immediate: !1 }
|
|
186
186
|
);
|
|
187
|
-
const
|
|
187
|
+
const g = (C, ...F) => F.length ? g(C = C.replace("%s", String(F.shift())), ...F) : C;
|
|
188
188
|
function f(C, ...F) {
|
|
189
|
-
return $.value && Object.prototype.hasOwnProperty.call($.value, C) ?
|
|
189
|
+
return $.value && Object.prototype.hasOwnProperty.call($.value, C) ? g($.value[C] || C, ...F) : g(C, ...F);
|
|
190
190
|
}
|
|
191
191
|
const S = z({
|
|
192
192
|
get: () => p.value,
|
|
@@ -234,7 +234,7 @@ function hn() {
|
|
|
234
234
|
function Un(s) {
|
|
235
235
|
return s ? s === "simple" || s === "advanced" ? { ...Vn[s] } : { ...hn(), ...s } : hn();
|
|
236
236
|
}
|
|
237
|
-
const Uo = "4.5.
|
|
237
|
+
const Uo = "4.5.4";
|
|
238
238
|
function Qt(s, e, t, n, i) {
|
|
239
239
|
return e = Math, t = e.log, n = 1024, i = t(s) / t(n) | 0, (s / e.pow(n, i)).toFixed(0) + " " + (i ? "KMGTPEZY"[--i] + "iB" : "B");
|
|
240
240
|
}
|
|
@@ -254,22 +254,22 @@ function Ho(s) {
|
|
|
254
254
|
visible: t,
|
|
255
255
|
type: e,
|
|
256
256
|
data: n,
|
|
257
|
-
open: (
|
|
258
|
-
s.get("fullScreen") || (document.querySelector("body").style.overflow = "hidden"), t.value = !0, e.value =
|
|
257
|
+
open: (h, p = null) => {
|
|
258
|
+
s.get("fullScreen") || (document.querySelector("body").style.overflow = "hidden"), t.value = !0, e.value = h, n.value = p;
|
|
259
259
|
},
|
|
260
260
|
close: () => {
|
|
261
261
|
s.get("fullScreen") || (document.querySelector("body").style.overflow = ""), t.value = !1, e.value = null, i.value = !1, l.value = null;
|
|
262
262
|
},
|
|
263
|
-
setEditMode: (
|
|
264
|
-
i.value =
|
|
263
|
+
setEditMode: (h) => {
|
|
264
|
+
i.value = h;
|
|
265
265
|
},
|
|
266
266
|
editMode: i,
|
|
267
267
|
controls: l,
|
|
268
|
-
registerControls: (
|
|
269
|
-
l.value =
|
|
268
|
+
registerControls: (h) => {
|
|
269
|
+
l.value = h;
|
|
270
270
|
},
|
|
271
|
-
unregisterControls: (
|
|
272
|
-
l.value ===
|
|
271
|
+
unregisterControls: (h) => {
|
|
272
|
+
l.value === h && (l.value = null);
|
|
273
273
|
}
|
|
274
274
|
};
|
|
275
275
|
}
|
|
@@ -347,24 +347,24 @@ const qo = (s, e = {}) => {
|
|
|
347
347
|
}
|
|
348
348
|
), u = Oe(d), v = Ye(
|
|
349
349
|
[r, u],
|
|
350
|
-
(m,
|
|
350
|
+
(m, g) => ({
|
|
351
351
|
...m,
|
|
352
|
-
...
|
|
352
|
+
...g
|
|
353
353
|
})
|
|
354
354
|
), y = (m = {}) => {
|
|
355
|
-
const
|
|
355
|
+
const g = r.get(), f = u.get(), { persistenceConfig: S, nonPersistenceConfig: C } = gn(m), F = yn(S, g), E = wn(
|
|
356
356
|
C,
|
|
357
357
|
f
|
|
358
358
|
);
|
|
359
359
|
r.set(F), u.set(E);
|
|
360
|
-
},
|
|
360
|
+
}, h = (m) => Hn(m) ? u.get()[m] : r.get()[m], p = () => ({
|
|
361
361
|
...r.get(),
|
|
362
362
|
...u.get()
|
|
363
|
-
}), k = (m,
|
|
363
|
+
}), k = (m, g) => {
|
|
364
364
|
const f = r.get();
|
|
365
365
|
typeof m == "object" && m !== null ? r.set({ ...f, ...m }) : r.set({
|
|
366
366
|
...f,
|
|
367
|
-
[m]:
|
|
367
|
+
[m]: g
|
|
368
368
|
});
|
|
369
369
|
};
|
|
370
370
|
return {
|
|
@@ -372,11 +372,11 @@ const qo = (s, e = {}) => {
|
|
|
372
372
|
state: v,
|
|
373
373
|
// Methods
|
|
374
374
|
init: y,
|
|
375
|
-
get:
|
|
375
|
+
get: h,
|
|
376
376
|
set: k,
|
|
377
377
|
toggle: (m) => {
|
|
378
|
-
const
|
|
379
|
-
k(m, !
|
|
378
|
+
const g = r.get();
|
|
379
|
+
k(m, !g[m]);
|
|
380
380
|
},
|
|
381
381
|
all: p,
|
|
382
382
|
reset: () => {
|
|
@@ -398,7 +398,7 @@ const Wo = () => {
|
|
|
398
398
|
type: "copy",
|
|
399
399
|
path: "",
|
|
400
400
|
items: /* @__PURE__ */ new Set()
|
|
401
|
-
}), u = Oe(null), v = Oe(0), y = Oe(!1),
|
|
401
|
+
}), u = Oe(null), v = Oe(0), y = Oe(!1), h = Oe([]), p = Oe(-1), k = Ye([s], (J) => {
|
|
402
402
|
const te = (J ?? "").trim(), ae = te.indexOf("://"), de = ae >= 0 ? te.slice(0, ae) : "", Fe = (ae >= 0 ? te.slice(ae + 3) : te).split("/").filter(Boolean);
|
|
403
403
|
let xe = "";
|
|
404
404
|
const qe = Fe.map((Ie) => (xe = xe ? `${xe}/${Ie}` : Ie, {
|
|
@@ -418,11 +418,11 @@ const Wo = () => {
|
|
|
418
418
|
}), $ = Ye([n, d], (J, te) => te.size === 0 ? [] : J.filter((ae) => te.has(ae.path))), m = (J, te) => {
|
|
419
419
|
const ae = s.get();
|
|
420
420
|
if ((te ?? !0) && ae !== J) {
|
|
421
|
-
const de =
|
|
422
|
-
Ve < de.length - 1 && de.splice(Ve + 1), de.length === 0 && ae && de.push(ae), de.push(J),
|
|
421
|
+
const de = h.get(), Ve = p.get();
|
|
422
|
+
Ve < de.length - 1 && de.splice(Ve + 1), de.length === 0 && ae && de.push(ae), de.push(J), h.set([...de]), p.set(de.length - 1);
|
|
423
423
|
}
|
|
424
424
|
s.set(J);
|
|
425
|
-
},
|
|
425
|
+
}, g = (J) => {
|
|
426
426
|
n.set(J ?? []);
|
|
427
427
|
}, f = (J) => {
|
|
428
428
|
e.set(J ?? []);
|
|
@@ -506,19 +506,19 @@ const Wo = () => {
|
|
|
506
506
|
}, N = () => u.get(), re = () => {
|
|
507
507
|
u.set(null);
|
|
508
508
|
}, me = () => {
|
|
509
|
-
const J =
|
|
509
|
+
const J = h.get(), te = p.get();
|
|
510
510
|
if (te > 0) {
|
|
511
511
|
const ae = te - 1, de = J[ae];
|
|
512
512
|
de && (p.set(ae), m(de, !1));
|
|
513
513
|
}
|
|
514
514
|
}, K = () => {
|
|
515
|
-
const J =
|
|
515
|
+
const J = h.get(), te = p.get();
|
|
516
516
|
if (te < J.length - 1) {
|
|
517
517
|
const ae = te + 1, de = J[ae];
|
|
518
518
|
de && (p.set(ae), m(de, !1));
|
|
519
519
|
}
|
|
520
520
|
}, oe = Ye([p], (J) => J > 0), ve = Ye(
|
|
521
|
-
[
|
|
521
|
+
[h, p],
|
|
522
522
|
(J, te) => te < J.length - 1
|
|
523
523
|
);
|
|
524
524
|
return {
|
|
@@ -539,7 +539,7 @@ const Wo = () => {
|
|
|
539
539
|
selectedItems: $,
|
|
540
540
|
// Actions
|
|
541
541
|
setPath: m,
|
|
542
|
-
setFiles:
|
|
542
|
+
setFiles: g,
|
|
543
543
|
setStorages: f,
|
|
544
544
|
setSort: S,
|
|
545
545
|
toggleSort: C,
|
|
@@ -577,7 +577,7 @@ const Wo = () => {
|
|
|
577
577
|
goForward: K,
|
|
578
578
|
canGoBack: oe,
|
|
579
579
|
canGoForward: ve,
|
|
580
|
-
navigationHistory:
|
|
580
|
+
navigationHistory: h,
|
|
581
581
|
historyIndex: p
|
|
582
582
|
};
|
|
583
583
|
};
|
|
@@ -786,7 +786,7 @@ class Go extends Jt {
|
|
|
786
786
|
if (r !== l.path && this.findByPath(r))
|
|
787
787
|
throw new Error("Target already exists");
|
|
788
788
|
if (l.type === "dir") {
|
|
789
|
-
const v = l.path, y = r,
|
|
789
|
+
const v = l.path, y = r, h = this.files.map((p) => {
|
|
790
790
|
if (p.storage !== l.storage || !this.isInTree(p.path, v)) return p;
|
|
791
791
|
const k = y + p.path.slice(v.length);
|
|
792
792
|
return this.cloneEntry(p, {
|
|
@@ -798,7 +798,7 @@ class Go extends Jt {
|
|
|
798
798
|
});
|
|
799
799
|
for (const [p, k] of Array.from(this.contentStore.entries()))
|
|
800
800
|
this.isInTree(p, v) && (this.contentStore.delete(p), this.contentStore.set(y + p.slice(v.length), k));
|
|
801
|
-
this.replaceAll(
|
|
801
|
+
this.replaceAll(h);
|
|
802
802
|
} else {
|
|
803
803
|
const v = this.cloneEntry(l, {
|
|
804
804
|
path: r,
|
|
@@ -834,12 +834,12 @@ class Go extends Jt {
|
|
|
834
834
|
b !== void 0 && this.contentStore.set(k.path, b);
|
|
835
835
|
continue;
|
|
836
836
|
}
|
|
837
|
-
const v = this.getTree(u.path), y = this.uniqueName(t, u.basename, l),
|
|
838
|
-
|
|
837
|
+
const v = this.getTree(u.path), y = this.uniqueName(t, u.basename, l), h = /* @__PURE__ */ new Map();
|
|
838
|
+
h.set(u.path, this.join(t, y));
|
|
839
839
|
for (const p of v) {
|
|
840
|
-
const k = p.path === u.path ?
|
|
841
|
-
|
|
842
|
-
const b = p.path === u.path ? t :
|
|
840
|
+
const k = p.path === u.path ? h.get(u.path) : this.join(h.get(p.dir), p.basename);
|
|
841
|
+
h.set(p.path, k);
|
|
842
|
+
const b = p.path === u.path ? t : h.get(p.dir), $ = p.path === u.path ? y : p.basename, m = this.cloneEntry(p, {
|
|
843
843
|
path: k,
|
|
844
844
|
dir: b,
|
|
845
845
|
basename: $,
|
|
@@ -847,8 +847,8 @@ class Go extends Jt {
|
|
|
847
847
|
last_modified: Date.now()
|
|
848
848
|
});
|
|
849
849
|
if (d.push(m), l.add(m.path), p.type === "file") {
|
|
850
|
-
const
|
|
851
|
-
|
|
850
|
+
const g = this.contentStore.get(p.path);
|
|
851
|
+
g !== void 0 && this.contentStore.set(m.path, g);
|
|
852
852
|
}
|
|
853
853
|
}
|
|
854
854
|
}
|
|
@@ -868,20 +868,20 @@ class Go extends Jt {
|
|
|
868
868
|
throw new Error("Cannot move directory into itself");
|
|
869
869
|
if (r.dir === t)
|
|
870
870
|
continue;
|
|
871
|
-
const u = this.getTree(r.path, l), v = new Set(u.map((b) => b.path)), y = new Set(l.filter((b) => !v.has(b.path)).map((b) => b.path)),
|
|
872
|
-
p.set(r.path, this.join(t,
|
|
871
|
+
const u = this.getTree(r.path, l), v = new Set(u.map((b) => b.path)), y = new Set(l.filter((b) => !v.has(b.path)).map((b) => b.path)), h = this.uniqueName(t, r.basename, y), p = /* @__PURE__ */ new Map();
|
|
872
|
+
p.set(r.path, this.join(t, h));
|
|
873
873
|
const k = /* @__PURE__ */ new Map();
|
|
874
874
|
for (const b of u) {
|
|
875
875
|
const $ = b.path === r.path ? p.get(r.path) : this.join(p.get(b.dir), b.basename);
|
|
876
876
|
p.set(b.path, $);
|
|
877
|
-
const m = b.path === r.path ? t : p.get(b.dir),
|
|
877
|
+
const m = b.path === r.path ? t : p.get(b.dir), g = b.path === r.path ? h : b.basename;
|
|
878
878
|
k.set(
|
|
879
879
|
b.path,
|
|
880
880
|
this.cloneEntry(b, {
|
|
881
881
|
path: $,
|
|
882
882
|
dir: m,
|
|
883
|
-
basename:
|
|
884
|
-
extension: b.type === "file" ? this.getExtension(
|
|
883
|
+
basename: g,
|
|
884
|
+
extension: b.type === "file" ? this.getExtension(g) : "",
|
|
885
885
|
last_modified: Date.now()
|
|
886
886
|
})
|
|
887
887
|
);
|
|
@@ -1083,7 +1083,7 @@ class Kn extends Jt {
|
|
|
1083
1083
|
const d = await i.text(), r = bn(d, i.status, i.statusText);
|
|
1084
1084
|
throw new Error(r);
|
|
1085
1085
|
}
|
|
1086
|
-
return (i.headers.get("content-type") || "").includes("application/json") ? await i.json() : await i.text();
|
|
1086
|
+
return i.status === 204 || i.status === 304 ? {} : (i.headers.get("content-type") || "").includes("application/json") ? await i.json() : await i.text();
|
|
1087
1087
|
}
|
|
1088
1088
|
async list(e) {
|
|
1089
1089
|
const t = new URLSearchParams();
|
|
@@ -1857,7 +1857,7 @@ const Wn = { render: $s }, xs = { class: "vuefinder__delete-modal__content" }, S
|
|
|
1857
1857
|
o("div", Ds, [
|
|
1858
1858
|
o("label", Ms, [
|
|
1859
1859
|
he(o("input", {
|
|
1860
|
-
"onUpdate:modelValue": y[0] || (y[0] = (
|
|
1860
|
+
"onUpdate:modelValue": y[0] || (y[0] = (h) => r.value = h),
|
|
1861
1861
|
type: "checkbox",
|
|
1862
1862
|
class: "vuefinder__delete-modal__checkbox"
|
|
1863
1863
|
}, null, 512), [
|
|
@@ -1875,7 +1875,7 @@ const Wn = { render: $s }, xs = { class: "vuefinder__delete-modal__content" }, S
|
|
|
1875
1875
|
o("button", {
|
|
1876
1876
|
type: "button",
|
|
1877
1877
|
class: "vf-btn vf-btn-secondary",
|
|
1878
|
-
onClick: y[1] || (y[1] = (
|
|
1878
|
+
onClick: y[1] || (y[1] = (h) => a(e).modal.close())
|
|
1879
1879
|
}, w(a(n)("Cancel")), 1)
|
|
1880
1880
|
]),
|
|
1881
1881
|
default: ue(() => [
|
|
@@ -1888,11 +1888,11 @@ const Wn = { render: $s }, xs = { class: "vuefinder__delete-modal__content" }, S
|
|
|
1888
1888
|
o("div", Ss, [
|
|
1889
1889
|
o("p", Cs, w(a(n)("Are you sure you want to delete these files?")), 1),
|
|
1890
1890
|
o("div", Fs, [
|
|
1891
|
-
(c(!0), _(fe, null, ge(d.value, (
|
|
1892
|
-
key:
|
|
1891
|
+
(c(!0), _(fe, null, ge(d.value, (h) => (c(), _("p", {
|
|
1892
|
+
key: h.path,
|
|
1893
1893
|
class: "vuefinder__delete-modal__file"
|
|
1894
1894
|
}, [
|
|
1895
|
-
|
|
1895
|
+
h.type === "dir" ? (c(), _("svg", Es, [...y[2] || (y[2] = [
|
|
1896
1896
|
o("path", {
|
|
1897
1897
|
"stroke-linecap": "round",
|
|
1898
1898
|
"stroke-linejoin": "round",
|
|
@@ -1905,7 +1905,7 @@ const Wn = { render: $s }, xs = { class: "vuefinder__delete-modal__content" }, S
|
|
|
1905
1905
|
d: "M7 21h10a2 2 0 002-2V9.414a1 1 0 00-.293-.707l-5.414-5.414A1 1 0 0012.586 3H7a2 2 0 00-2 2v14a2 2 0 002 2z"
|
|
1906
1906
|
}, null, -1)
|
|
1907
1907
|
])])),
|
|
1908
|
-
o("span", Ps, w(
|
|
1908
|
+
o("span", Ps, w(h.basename), 1)
|
|
1909
1909
|
]))), 128))
|
|
1910
1910
|
])
|
|
1911
1911
|
])
|
|
@@ -1966,7 +1966,7 @@ const Gn = { render: Ls }, Rs = { class: "vuefinder__rename-modal__content" }, B
|
|
|
1966
1966
|
o("button", {
|
|
1967
1967
|
type: "button",
|
|
1968
1968
|
class: "vf-btn vf-btn-secondary",
|
|
1969
|
-
onClick: y[1] || (y[1] = (
|
|
1969
|
+
onClick: y[1] || (y[1] = (h) => a(e).modal.close())
|
|
1970
1970
|
}, w(a(n)("Cancel")), 1)
|
|
1971
1971
|
]),
|
|
1972
1972
|
default: ue(() => [
|
|
@@ -1994,7 +1994,7 @@ const Gn = { render: Ls }, Rs = { class: "vuefinder__rename-modal__content" }, B
|
|
|
1994
1994
|
o("span", Ns, w(d.value.basename), 1)
|
|
1995
1995
|
]),
|
|
1996
1996
|
he(o("input", {
|
|
1997
|
-
"onUpdate:modelValue": y[0] || (y[0] = (
|
|
1997
|
+
"onUpdate:modelValue": y[0] || (y[0] = (h) => r.value = h),
|
|
1998
1998
|
class: "vuefinder__rename-modal__input",
|
|
1999
1999
|
placeholder: "Name",
|
|
2000
2000
|
type: "text",
|
|
@@ -2052,7 +2052,7 @@ const Yn = { render: Ks }, qs = { class: "vuefinder__preview-chrome" }, Ws = { c
|
|
|
2052
2052
|
setup(s, { emit: e }) {
|
|
2053
2053
|
const t = e, n = ie(), { enabled: i } = ze(), { t: l } = n.i18n, d = se(n.fs.sortedFiles), r = z(() => d.value.filter((f) => f.type === "file")), u = z(
|
|
2054
2054
|
() => r.value.findIndex((f) => f.path === n.modal.data.item.path)
|
|
2055
|
-
), v = z(() => r.value.length), y = z(() => n.modal.controls ?? null),
|
|
2055
|
+
), v = z(() => r.value.length), y = z(() => n.modal.controls ?? null), h = z(() => !!a(y.value?.isEditing));
|
|
2056
2056
|
z(() => !!a(y.value?.isDirty));
|
|
2057
2057
|
const p = I(!1), k = I(!1), b = (f) => {
|
|
2058
2058
|
f === "info" ? (p.value = !p.value, k.value = !1) : (k.value = !k.value, p.value = !1);
|
|
@@ -2070,7 +2070,7 @@ const Yn = { render: Ks }, qs = { class: "vuefinder__preview-chrome" }, Ws = { c
|
|
|
2070
2070
|
if (Array.isArray(C))
|
|
2071
2071
|
for (const F of C) S.push(F);
|
|
2072
2072
|
return S.push({ label: l("Path"), value: f.path }), S;
|
|
2073
|
-
}),
|
|
2073
|
+
}), g = z(() => n.adapter.getDownloadUrl(n.modal.data.item));
|
|
2074
2074
|
return (f, S) => (c(), _("div", qs, [
|
|
2075
2075
|
o("div", Ws, [
|
|
2076
2076
|
o("button", {
|
|
@@ -2098,12 +2098,12 @@ const Yn = { render: Ks }, qs = { class: "vuefinder__preview-chrome" }, Ws = { c
|
|
|
2098
2098
|
title: a(n).modal.data.item.path
|
|
2099
2099
|
}, w(a(n).modal.data.item.basename), 9, Js),
|
|
2100
2100
|
o("div", Zs, [
|
|
2101
|
-
v.value > 1 && !
|
|
2101
|
+
v.value > 1 && !h.value ? (c(), _("span", {
|
|
2102
2102
|
key: 0,
|
|
2103
2103
|
class: "vuefinder__preview-chrome__counter",
|
|
2104
2104
|
"aria-label": a(l)("File %s of %s", String(u.value + 1), String(v.value))
|
|
2105
2105
|
}, w(u.value + 1) + " / " + w(v.value), 9, ea)) : j("", !0),
|
|
2106
|
-
a(i)("download") && !
|
|
2106
|
+
a(i)("download") && !h.value ? (c(), _("div", ta, [
|
|
2107
2107
|
o("button", {
|
|
2108
2108
|
type: "button",
|
|
2109
2109
|
class: ne(["vuefinder__preview-chrome__info-btn", { "vuefinder__preview-chrome__info-btn--active": k.value }]),
|
|
@@ -2127,8 +2127,8 @@ const Yn = { render: Ks }, qs = { class: "vuefinder__preview-chrome" }, Ws = { c
|
|
|
2127
2127
|
])], 10, na),
|
|
2128
2128
|
k.value ? (c(), _("div", oa, [
|
|
2129
2129
|
o("a", {
|
|
2130
|
-
href:
|
|
2131
|
-
download:
|
|
2130
|
+
href: g.value,
|
|
2131
|
+
download: g.value,
|
|
2132
2132
|
target: "_blank",
|
|
2133
2133
|
class: "vuefinder__preview-chrome__popover-action"
|
|
2134
2134
|
}, [
|
|
@@ -2187,9 +2187,9 @@ const ra = { class: "vuefinder__text-preview" }, da = { class: "vuefinder__text-
|
|
|
2187
2187
|
emits: ["success"],
|
|
2188
2188
|
setup(s, { emit: e }) {
|
|
2189
2189
|
const t = On({
|
|
2190
|
-
loader: () => import("./CodeMirrorEditor-
|
|
2190
|
+
loader: () => import("./CodeMirrorEditor-D6dPPYE5.js").then((f) => f.C),
|
|
2191
2191
|
delay: 100
|
|
2192
|
-
}), n = e, i = I(""), l = I(""), d = I(!1), r = I(!1), u = ie(), v = Re(u), { enabled: y } = ze(), { t:
|
|
2192
|
+
}), n = e, i = I(""), l = I(""), d = I(!1), r = I(!1), u = ie(), v = Re(u), { enabled: y } = ze(), { t: h } = u.i18n;
|
|
2193
2193
|
we(async () => {
|
|
2194
2194
|
try {
|
|
2195
2195
|
const f = await u.adapter.getContent({ path: u.modal.data.item.path });
|
|
@@ -2204,23 +2204,23 @@ const ra = { class: "vuefinder__text-preview" }, da = { class: "vuefinder__text-
|
|
|
2204
2204
|
l.value = i.value, d.value = !0, u.modal.setEditMode(!0);
|
|
2205
2205
|
}, m = () => {
|
|
2206
2206
|
d.value = !1, l.value = i.value, u.modal.setEditMode(!1);
|
|
2207
|
-
},
|
|
2207
|
+
}, g = async () => {
|
|
2208
2208
|
try {
|
|
2209
2209
|
await u.adapter.save({
|
|
2210
2210
|
path: u.modal.data.item.path,
|
|
2211
2211
|
content: l.value
|
|
2212
|
-
}), i.value = l.value, v.success(
|
|
2212
|
+
}), i.value = l.value, v.success(h("Updated.")), d.value = !1, u.modal.setEditMode(!1), n("success");
|
|
2213
2213
|
} catch (f) {
|
|
2214
|
-
v.error(Ce(f,
|
|
2214
|
+
v.error(Ce(f, h("Failed to save file")));
|
|
2215
2215
|
}
|
|
2216
2216
|
};
|
|
2217
2217
|
return en({
|
|
2218
2218
|
isEditable: p,
|
|
2219
2219
|
isEditing: k,
|
|
2220
2220
|
isDirty: b,
|
|
2221
|
-
primaryActionLabel: z(() =>
|
|
2221
|
+
primaryActionLabel: z(() => h("Save")),
|
|
2222
2222
|
enterEdit: $,
|
|
2223
|
-
commitEdit:
|
|
2223
|
+
commitEdit: g,
|
|
2224
2224
|
cancelEdit: m
|
|
2225
2225
|
}), (f, S) => (c(), _("div", ra, [
|
|
2226
2226
|
o("div", da, [
|
|
@@ -2279,10 +2279,10 @@ const ra = { class: "vuefinder__text-preview" }, da = { class: "vuefinder__text-
|
|
|
2279
2279
|
emits: ["success"],
|
|
2280
2280
|
setup(s, { emit: e }) {
|
|
2281
2281
|
const t = On({
|
|
2282
|
-
loader: () => import("./CodeMirrorEditor-
|
|
2282
|
+
loader: () => import("./CodeMirrorEditor-D6dPPYE5.js").then((Z) => Z.C),
|
|
2283
2283
|
delay: 100
|
|
2284
|
-
}), n = e, i = I(""), l = I(""), d = ut([]), r = ut([]), u = I(null), v = I(!1), y = I(!1),
|
|
2285
|
-
async function
|
|
2284
|
+
}), n = e, i = I(""), l = I(""), d = ut([]), r = ut([]), u = I(null), v = I(!1), y = I(!1), h = z(() => d.value.length > Nt), p = z(() => h.value ? d.value.slice(0, Nt) : d.value), k = ie(), b = Re(k), { enabled: $ } = ze(), { t: m } = k.i18n;
|
|
2285
|
+
async function g(Z) {
|
|
2286
2286
|
try {
|
|
2287
2287
|
const { parse: ee } = await import("./papaparse.min-Brc8PWCw.js").then((M) => M.p), Q = ee(Z, {
|
|
2288
2288
|
skipEmptyLines: !0,
|
|
@@ -2301,7 +2301,7 @@ const ra = { class: "vuefinder__text-preview" }, da = { class: "vuefinder__text-
|
|
|
2301
2301
|
we(async () => {
|
|
2302
2302
|
try {
|
|
2303
2303
|
const Z = await k.adapter.getContent({ path: k.modal.data.item.path });
|
|
2304
|
-
i.value = Z.content, l.value = Z.content, await
|
|
2304
|
+
i.value = Z.content, l.value = Z.content, await g(Z.content), n("success");
|
|
2305
2305
|
} catch (Z) {
|
|
2306
2306
|
Ce(Z, "Failed to load CSV content"), n("success");
|
|
2307
2307
|
}
|
|
@@ -2314,7 +2314,7 @@ const ra = { class: "vuefinder__text-preview" }, da = { class: "vuefinder__text-
|
|
|
2314
2314
|
v.value = !1, l.value = i.value, k.modal.setEditMode(!1);
|
|
2315
2315
|
}, q = async () => {
|
|
2316
2316
|
try {
|
|
2317
|
-
await k.adapter.save({ path: k.modal.data.item.path, content: l.value }), i.value = l.value, await
|
|
2317
|
+
await k.adapter.save({ path: k.modal.data.item.path, content: l.value }), i.value = l.value, await g(i.value), b.success(m("Updated.")), v.value = !1, k.modal.setEditMode(!1), n("success");
|
|
2318
2318
|
} catch (Z) {
|
|
2319
2319
|
b.error(Ce(Z, m("Failed to save file")));
|
|
2320
2320
|
}
|
|
@@ -2351,7 +2351,7 @@ const ra = { class: "vuefinder__text-preview" }, da = { class: "vuefinder__text-
|
|
|
2351
2351
|
]))), 128))
|
|
2352
2352
|
])
|
|
2353
2353
|
]),
|
|
2354
|
-
|
|
2354
|
+
h.value ? (c(), _("div", ka, w(a(m)("Showing first %s rows out of %s", Nt, d.value.length)), 1)) : j("", !0)
|
|
2355
2355
|
]))
|
|
2356
2356
|
], 64)) : (c(), X(Ln, { key: 0 }, {
|
|
2357
2357
|
fallback: ue(() => [
|
|
@@ -2412,8 +2412,8 @@ const ra = { class: "vuefinder__text-preview" }, da = { class: "vuefinder__text-
|
|
|
2412
2412
|
DONE: 10
|
|
2413
2413
|
};
|
|
2414
2414
|
function Xn(s) {
|
|
2415
|
-
const e = ie(), { t } = e.i18n, n = e.fs, i = se(n.path), l = e.config, d = I({ QUEUE_ENTRY_STATUS: $e }), r = I(null), u = I(null), v = I(null), y = I(null),
|
|
2416
|
-
let
|
|
2415
|
+
const e = ie(), { t } = e.i18n, n = e.fs, i = se(n.path), l = e.config, d = I({ QUEUE_ENTRY_STATUS: $e }), r = I(null), u = I(null), v = I(null), y = I(null), h = I(null), p = I([]), k = I(""), b = I(!1), $ = I(!1), m = I(null);
|
|
2416
|
+
let g;
|
|
2417
2417
|
const f = (x) => {
|
|
2418
2418
|
x.preventDefault(), x.stopPropagation(), $.value = !0;
|
|
2419
2419
|
}, S = (x) => {
|
|
@@ -2437,21 +2437,21 @@ function Xn(s) {
|
|
|
2437
2437
|
}
|
|
2438
2438
|
}
|
|
2439
2439
|
}) : T.files && T.files.length && Array.from(T.files).forEach((B) => L(B)));
|
|
2440
|
-
}, E = (x) => p.value.findIndex((V) => V.id === x), L = (x, V) =>
|
|
2440
|
+
}, E = (x) => p.value.findIndex((V) => V.id === x), L = (x, V) => g.addFile({ name: V || x.name, type: x.type, data: x, source: "Local" }), q = (x) => x.status === $e.DONE ? "text-green-600" : x.status === $e.ERROR || x.status === $e.CANCELED ? "text-red-600" : "", Z = (x) => x.status === $e.DONE ? "✓" : x.status === $e.ERROR || x.status === $e.CANCELED ? "!" : "...", ee = () => y.value?.click(), Q = () => e.modal.close(), G = (x) => {
|
|
2441
2441
|
if (b.value || !p.value.filter((V) => V.status !== $e.DONE).length) {
|
|
2442
2442
|
b.value || (k.value = t("Please select file to upload first."));
|
|
2443
2443
|
return;
|
|
2444
2444
|
}
|
|
2445
|
-
k.value = "", m.value = x || i.value,
|
|
2445
|
+
k.value = "", m.value = x || i.value, g.upload();
|
|
2446
2446
|
}, P = () => {
|
|
2447
|
-
|
|
2447
|
+
g.cancelAll(), p.value.forEach((x) => {
|
|
2448
2448
|
x.status !== $e.DONE && (x.status = $e.CANCELED, x.statusName = t("Canceled"));
|
|
2449
2449
|
}), b.value = !1;
|
|
2450
2450
|
}, M = (x) => {
|
|
2451
|
-
b.value || (
|
|
2451
|
+
b.value || (g.removeFile(x.id), p.value.splice(E(x.id), 1));
|
|
2452
2452
|
}, U = (x) => {
|
|
2453
2453
|
if (!b.value)
|
|
2454
|
-
if (
|
|
2454
|
+
if (g.cancelAll(), x) {
|
|
2455
2455
|
const V = p.value.filter((T) => T.status !== $e.DONE);
|
|
2456
2456
|
p.value = [], V.forEach((T) => L(T.originalFile, T.name));
|
|
2457
2457
|
} else
|
|
@@ -2485,7 +2485,7 @@ function Xn(s) {
|
|
|
2485
2485
|
const O = E(x.id);
|
|
2486
2486
|
if (O === -1) return;
|
|
2487
2487
|
const H = x.originalFile, D = x.name;
|
|
2488
|
-
|
|
2488
|
+
g.removeFile(x.id), p.value.splice(O, 1);
|
|
2489
2489
|
let N;
|
|
2490
2490
|
try {
|
|
2491
2491
|
N = L(H, A);
|
|
@@ -2505,14 +2505,14 @@ function Xn(s) {
|
|
|
2505
2505
|
}
|
|
2506
2506
|
};
|
|
2507
2507
|
return we(() => {
|
|
2508
|
-
|
|
2508
|
+
g = new To({
|
|
2509
2509
|
debug: e.debug,
|
|
2510
2510
|
restrictions: { maxFileSize: No(l.get("maxFileSize") ?? "10mb") },
|
|
2511
2511
|
locale: e.i18n.t("uppy"),
|
|
2512
2512
|
onBeforeFileAdded: (B, A) => {
|
|
2513
2513
|
if (A[B.id] != null) {
|
|
2514
2514
|
const H = E(B.id);
|
|
2515
|
-
p.value[H]?.status === $e.PENDING && (k.value =
|
|
2515
|
+
p.value[H]?.status === $e.PENDING && (k.value = g.i18n("noDuplicates", { fileName: B.name })), p.value = p.value.filter((D) => D.id !== B.id);
|
|
2516
2516
|
}
|
|
2517
2517
|
return p.value.push({
|
|
2518
2518
|
id: B.id,
|
|
@@ -2529,31 +2529,31 @@ function Xn(s) {
|
|
|
2529
2529
|
getTargetPath: () => (m.value || i.value).path
|
|
2530
2530
|
};
|
|
2531
2531
|
if (s)
|
|
2532
|
-
s(
|
|
2532
|
+
s(g, x);
|
|
2533
2533
|
else if (e.adapter.getDriver().configureUploader)
|
|
2534
|
-
e.adapter.getDriver().configureUploader(
|
|
2534
|
+
e.adapter.getDriver().configureUploader(g, x);
|
|
2535
2535
|
else
|
|
2536
2536
|
throw new Error("No uploader configured");
|
|
2537
|
-
|
|
2537
|
+
g.on("restriction-failed", (B, A) => {
|
|
2538
2538
|
const O = p.value[E(B.id)];
|
|
2539
2539
|
O && M(O), k.value = A.message;
|
|
2540
|
-
}),
|
|
2540
|
+
}), g.on("upload-start", (B) => {
|
|
2541
2541
|
B.forEach((A) => {
|
|
2542
2542
|
const O = p.value[E(A.id)];
|
|
2543
2543
|
O && (O.status = $e.UPLOADING, O.statusName = t("Uploading"), O.percent = "0%");
|
|
2544
2544
|
});
|
|
2545
|
-
}),
|
|
2545
|
+
}), g.on("upload-progress", (B, A) => {
|
|
2546
2546
|
const O = A.bytesTotal ?? 1, H = Math.floor(A.bytesUploaded / O * 100), D = E(B.id);
|
|
2547
2547
|
D !== -1 && p.value[D] && (p.value[D].percent = `${H}%`);
|
|
2548
|
-
}),
|
|
2548
|
+
}), g.on("upload-success", (B) => {
|
|
2549
2549
|
const A = p.value[E(B.id)];
|
|
2550
2550
|
A && (A.status = $e.DONE, A.statusName = t("Done"));
|
|
2551
|
-
}),
|
|
2551
|
+
}), g.on("upload-error", (B, A) => {
|
|
2552
2552
|
const O = p.value[E(B.id)];
|
|
2553
2553
|
O && (O.percent = null, O.status = $e.ERROR, O.statusName = A?.isNetworkError ? t("Network Error, Unable establish connection to the server or interrupted.") : A?.message || t("Unknown Error"));
|
|
2554
|
-
}),
|
|
2554
|
+
}), g.on("error", (B) => {
|
|
2555
2555
|
k.value = B.message, b.value = !1;
|
|
2556
|
-
}),
|
|
2556
|
+
}), g.on("complete", (B) => {
|
|
2557
2557
|
b.value = !1;
|
|
2558
2558
|
const A = m.value || i.value;
|
|
2559
2559
|
e.adapter.invalidateListQuery(A.path), e.adapter.open(A.path);
|
|
@@ -2561,7 +2561,7 @@ function Xn(s) {
|
|
|
2561
2561
|
(H) => H.status === $e.DONE && B.successful.includes(H.id)
|
|
2562
2562
|
).map((H) => H.name);
|
|
2563
2563
|
e.emitter.emit("vf-upload-complete", O);
|
|
2564
|
-
}), y.value?.addEventListener("click", () => u.value?.click()),
|
|
2564
|
+
}), y.value?.addEventListener("click", () => u.value?.click()), h.value?.addEventListener("click", () => v.value?.click());
|
|
2565
2565
|
const V = { capture: !0 };
|
|
2566
2566
|
document.addEventListener("dragover", f, V), document.addEventListener("dragenter", S, V), document.addEventListener("dragleave", C, V), document.addEventListener("drop", F, V);
|
|
2567
2567
|
const T = (B) => {
|
|
@@ -2580,7 +2580,7 @@ function Xn(s) {
|
|
|
2580
2580
|
internalFileInput: u,
|
|
2581
2581
|
internalFolderInput: v,
|
|
2582
2582
|
pickFiles: y,
|
|
2583
|
-
pickFolders:
|
|
2583
|
+
pickFolders: h,
|
|
2584
2584
|
queue: p,
|
|
2585
2585
|
message: k,
|
|
2586
2586
|
uploading: b,
|
|
@@ -2697,15 +2697,15 @@ const Pa = { class: "vuefinder__image-editor" }, Da = {
|
|
|
2697
2697
|
{ label: "4:3", value: 4 / 3 },
|
|
2698
2698
|
{ label: "16:9", value: 16 / 9 },
|
|
2699
2699
|
{ label: "9:16", value: 9 / 16 }
|
|
2700
|
-
], y = ot("cropperRef"),
|
|
2701
|
-
() => Ea($.value, m.value,
|
|
2700
|
+
], y = ot("cropperRef"), h = I(0), p = I(!1), k = I(!1), b = I(!1), $ = I(0), m = I(0), g = I(0), f = z(
|
|
2701
|
+
() => Ea($.value, m.value, g.value)
|
|
2702
2702
|
);
|
|
2703
2703
|
pe([() => t.src, d], () => {
|
|
2704
|
-
|
|
2704
|
+
h.value = 0, p.value = !1, k.value = !1, b.value = !1, $.value = 0, m.value = 0, g.value = 0;
|
|
2705
2705
|
});
|
|
2706
2706
|
const S = z(() => Ca(t.filename)), C = z(() => {
|
|
2707
2707
|
const x = [];
|
|
2708
|
-
return
|
|
2708
|
+
return h.value && x.push(`rotate(${h.value}deg)`), p.value && x.push("scaleX(-1)"), k.value && x.push("scaleY(-1)"), x.length ? { transform: x.join(" ") } : {};
|
|
2709
2709
|
}), F = (x) => {
|
|
2710
2710
|
r.value || (d.value = x);
|
|
2711
2711
|
}, E = () => {
|
|
@@ -2740,7 +2740,7 @@ const Pa = { class: "vuefinder__image-editor" }, Da = {
|
|
|
2740
2740
|
}
|
|
2741
2741
|
}
|
|
2742
2742
|
}, Z = async () => {
|
|
2743
|
-
if (!($.value === 0 && m.value === 0 &&
|
|
2743
|
+
if (!($.value === 0 && m.value === 0 && g.value === 0)) {
|
|
2744
2744
|
r.value = !0;
|
|
2745
2745
|
try {
|
|
2746
2746
|
const x = await $n(t.src, f.value, S.value);
|
|
@@ -2750,21 +2750,21 @@ const Pa = { class: "vuefinder__image-editor" }, Da = {
|
|
|
2750
2750
|
}
|
|
2751
2751
|
}
|
|
2752
2752
|
}, ee = () => {
|
|
2753
|
-
$.value = 0, m.value = 0,
|
|
2753
|
+
$.value = 0, m.value = 0, g.value = 0;
|
|
2754
2754
|
}, Q = () => {
|
|
2755
|
-
|
|
2755
|
+
h.value -= 90;
|
|
2756
2756
|
}, G = () => {
|
|
2757
|
-
|
|
2757
|
+
h.value += 90;
|
|
2758
2758
|
}, P = () => {
|
|
2759
2759
|
p.value = !p.value;
|
|
2760
2760
|
}, M = () => {
|
|
2761
2761
|
k.value = !k.value;
|
|
2762
2762
|
}, U = z(
|
|
2763
|
-
() => (
|
|
2763
|
+
() => (h.value % 360 + 360) % 360
|
|
2764
2764
|
), Y = z(
|
|
2765
2765
|
() => U.value !== 0 || p.value || k.value
|
|
2766
2766
|
), ce = z(
|
|
2767
|
-
() => $.value !== 0 || m.value !== 0 ||
|
|
2767
|
+
() => $.value !== 0 || m.value !== 0 || g.value !== 0
|
|
2768
2768
|
), R = z(() => b.value);
|
|
2769
2769
|
return (x, V) => (c(), _("div", Pa, [
|
|
2770
2770
|
o("div", Da, [
|
|
@@ -2979,10 +2979,10 @@ const Pa = { class: "vuefinder__image-editor" }, Da = {
|
|
|
2979
2979
|
o("div", vi, [
|
|
2980
2980
|
o("label", null, [
|
|
2981
2981
|
ye(w(a(l)("Saturation")), 1),
|
|
2982
|
-
o("span", null, w(
|
|
2982
|
+
o("span", null, w(g.value), 1)
|
|
2983
2983
|
]),
|
|
2984
2984
|
he(o("input", {
|
|
2985
|
-
"onUpdate:modelValue": V[3] || (V[3] = (T) =>
|
|
2985
|
+
"onUpdate:modelValue": V[3] || (V[3] = (T) => g.value = T),
|
|
2986
2986
|
type: "range",
|
|
2987
2987
|
min: "-100",
|
|
2988
2988
|
max: "100",
|
|
@@ -2990,7 +2990,7 @@ const Pa = { class: "vuefinder__image-editor" }, Da = {
|
|
|
2990
2990
|
}, null, 512), [
|
|
2991
2991
|
[
|
|
2992
2992
|
je,
|
|
2993
|
-
|
|
2993
|
+
g.value,
|
|
2994
2994
|
void 0,
|
|
2995
2995
|
{ number: !0 }
|
|
2996
2996
|
]
|
|
@@ -3020,10 +3020,10 @@ const Pa = { class: "vuefinder__image-editor" }, Da = {
|
|
|
3020
3020
|
setup(s, { emit: e }) {
|
|
3021
3021
|
const t = e, n = ie(), i = Re(n), { enabled: l } = ze(), { t: d } = n.i18n, r = I(!1), u = I(
|
|
3022
3022
|
n.modal.data.item.previewUrl ?? n.adapter.getPreviewUrl({ path: n.modal.data.item.path })
|
|
3023
|
-
), v = I(u.value), y = I(!1),
|
|
3023
|
+
), v = I(u.value), y = I(!1), h = I(1), p = I(null), k = I(0), b = I(0), $ = I(1), m = I(!1), g = I(0), f = I(0);
|
|
3024
3024
|
let S = null, C = 0, F = 0, E = 0, L = 0;
|
|
3025
3025
|
const { addExternalFiles: q, upload: Z, queue: ee } = Xn(n.customUploader), Q = n.fs, G = se(Q.path), P = z(() => k.value * $.value), M = z(() => b.value * $.value), U = (K, oe) => {
|
|
3026
|
-
const ve = p.value?.clientWidth ?? 0, be = p.value?.clientHeight ?? 0, Me = Math.max(0, (P.value *
|
|
3026
|
+
const ve = p.value?.clientWidth ?? 0, be = p.value?.clientHeight ?? 0, Me = Math.max(0, (P.value * h.value - ve) / 2), et = Math.max(0, (M.value * h.value - be) / 2);
|
|
3027
3027
|
return {
|
|
3028
3028
|
x: Math.min(Me, Math.max(-Me, K)),
|
|
3029
3029
|
y: Math.min(et, Math.max(-et, oe))
|
|
@@ -3031,11 +3031,11 @@ const Pa = { class: "vuefinder__image-editor" }, Da = {
|
|
|
3031
3031
|
}, Y = z(() => {
|
|
3032
3032
|
if (!k.value || !b.value)
|
|
3033
3033
|
return {};
|
|
3034
|
-
const { x: K, y: oe } = U(
|
|
3034
|
+
const { x: K, y: oe } = U(g.value, f.value);
|
|
3035
3035
|
return {
|
|
3036
3036
|
width: `${P.value}px`,
|
|
3037
3037
|
height: `${M.value}px`,
|
|
3038
|
-
transform: `translate(${K}px, ${oe}px) scale(${
|
|
3038
|
+
transform: `translate(${K}px, ${oe}px) scale(${h.value})`,
|
|
3039
3039
|
transformOrigin: "center center"
|
|
3040
3040
|
};
|
|
3041
3041
|
}), ce = () => {
|
|
@@ -3046,15 +3046,15 @@ const Pa = { class: "vuefinder__image-editor" }, Da = {
|
|
|
3046
3046
|
const oe = K.target;
|
|
3047
3047
|
oe instanceof HTMLImageElement && (k.value = oe.naturalWidth || oe.clientWidth, b.value = oe.naturalHeight || oe.clientHeight, ce());
|
|
3048
3048
|
}, x = (K) => Math.min(ki, Math.max(bi, K)), V = () => {
|
|
3049
|
-
|
|
3050
|
-
const K = U(
|
|
3051
|
-
|
|
3049
|
+
h.value = x(Number((h.value + xn).toFixed(2)));
|
|
3050
|
+
const K = U(g.value, f.value);
|
|
3051
|
+
g.value = K.x, f.value = K.y;
|
|
3052
3052
|
}, T = () => {
|
|
3053
|
-
|
|
3054
|
-
const K = U(
|
|
3055
|
-
|
|
3053
|
+
h.value = x(Number((h.value - xn).toFixed(2)));
|
|
3054
|
+
const K = U(g.value, f.value);
|
|
3055
|
+
g.value = K.x, f.value = K.y;
|
|
3056
3056
|
}, B = () => {
|
|
3057
|
-
|
|
3057
|
+
h.value = 1, g.value = 0, f.value = 0;
|
|
3058
3058
|
}, A = (K) => {
|
|
3059
3059
|
r.value || (K.deltaY > 0 ? T() : K.deltaY < 0 && V());
|
|
3060
3060
|
}, O = (K) => {
|
|
@@ -3077,11 +3077,11 @@ const Pa = { class: "vuefinder__image-editor" }, Da = {
|
|
|
3077
3077
|
}, H = () => {
|
|
3078
3078
|
m.value = !1;
|
|
3079
3079
|
}, D = (K) => {
|
|
3080
|
-
r.value ||
|
|
3080
|
+
r.value || h.value <= 1 || !p.value || (m.value = !0, C = K.clientX, F = K.clientY, E = g.value, L = f.value, K.currentTarget?.setPointerCapture?.(K.pointerId));
|
|
3081
3081
|
}, N = (K) => {
|
|
3082
3082
|
if (!m.value) return;
|
|
3083
3083
|
const oe = K.clientX - C, ve = K.clientY - F, be = U(E + oe, L + ve);
|
|
3084
|
-
|
|
3084
|
+
g.value = be.x, f.value = be.y;
|
|
3085
3085
|
};
|
|
3086
3086
|
en({
|
|
3087
3087
|
isEditable: z(
|
|
@@ -3157,7 +3157,7 @@ const Pa = { class: "vuefinder__image-editor" }, Da = {
|
|
|
3157
3157
|
style: Ee(Y.value),
|
|
3158
3158
|
src: a(n).modal.data.item.previewUrl ?? a(n).adapter.getPreviewUrl({ path: a(n).modal.data.item.path }),
|
|
3159
3159
|
class: ne(["vuefinder__image-preview__image", {
|
|
3160
|
-
"vuefinder__image-preview__image--zoomed":
|
|
3160
|
+
"vuefinder__image-preview__image--zoomed": h.value > 1,
|
|
3161
3161
|
"vuefinder__image-preview__image--panning": m.value
|
|
3162
3162
|
}]),
|
|
3163
3163
|
draggable: !1,
|
|
@@ -3213,7 +3213,7 @@ const Pa = { class: "vuefinder__image-editor" }, Da = {
|
|
|
3213
3213
|
"aria-label": a(d)("Reset zoom"),
|
|
3214
3214
|
title: a(d)("Reset zoom"),
|
|
3215
3215
|
onClick: B
|
|
3216
|
-
}, w(Math.round(
|
|
3216
|
+
}, w(Math.round(h.value * 100)) + "% ", 9, yi),
|
|
3217
3217
|
o("button", {
|
|
3218
3218
|
type: "button",
|
|
3219
3219
|
class: "vuefinder__image-preview__zoom-button",
|
|
@@ -3425,25 +3425,25 @@ const mt = { render: Si }, Ci = { class: "vuefinder__default-preview" }, Fi = {
|
|
|
3425
3425
|
return d(A, D);
|
|
3426
3426
|
}, u = t("preview");
|
|
3427
3427
|
u || (i.value = !0);
|
|
3428
|
-
const v = z(() => e.modal.data.item), y = se(e.fs.sortedFiles),
|
|
3429
|
-
() =>
|
|
3428
|
+
const v = z(() => e.modal.data.item), y = se(e.fs.sortedFiles), h = z(() => y.value.filter((A) => A.type === "file")), p = z(
|
|
3429
|
+
() => h.value.findIndex((A) => A.path === v.value.path)
|
|
3430
3430
|
), k = z(() => !!a(e.modal.controls?.isEditable)), b = z(() => !!a(e.modal.controls?.isEditing)), $ = z(() => !!a(e.modal.controls?.isDirty)), m = z(
|
|
3431
3431
|
() => a(e.modal.controls?.primaryActionLabel) ?? n("Save")
|
|
3432
|
-
),
|
|
3432
|
+
), g = async () => {
|
|
3433
3433
|
await e.modal.controls?.enterEdit?.();
|
|
3434
3434
|
}, f = async () => {
|
|
3435
3435
|
await e.modal.controls?.commitEdit?.();
|
|
3436
3436
|
}, S = async () => {
|
|
3437
3437
|
$.value && !window.confirm(n("Discard unsaved changes?")) || await e.modal.controls?.cancelEdit?.();
|
|
3438
3438
|
}, C = z(() => !b.value && p.value > 0), F = z(
|
|
3439
|
-
() => !b.value && p.value <
|
|
3439
|
+
() => !b.value && p.value < h.value.length - 1
|
|
3440
3440
|
), E = () => {
|
|
3441
3441
|
if (!C.value) return;
|
|
3442
|
-
const A =
|
|
3442
|
+
const A = h.value[p.value - 1];
|
|
3443
3443
|
A && (e.fs.clearSelection(), e.fs.select(A.path), e.modal.data.item = A, i.value = !1);
|
|
3444
3444
|
}, L = () => {
|
|
3445
3445
|
if (!F.value) return;
|
|
3446
|
-
const A =
|
|
3446
|
+
const A = h.value[p.value + 1];
|
|
3447
3447
|
A && (e.fs.clearSelection(), e.fs.select(A.path), e.modal.data.item = A, i.value = !1);
|
|
3448
3448
|
}, q = () => {
|
|
3449
3449
|
b.value && $.value && !window.confirm(n("Discard unsaved changes?")) || e.modal.close();
|
|
@@ -3600,15 +3600,15 @@ const mt = { render: Si }, Ci = { class: "vuefinder__default-preview" }, Fi = {
|
|
|
3600
3600
|
onSuccess: O[6] || (O[6] = (H) => i.value = !0)
|
|
3601
3601
|
}))
|
|
3602
3602
|
])) : j("", !0),
|
|
3603
|
-
b.value ||
|
|
3603
|
+
b.value || h.value.length > 1 ? (c(), _("div", Gi, [
|
|
3604
3604
|
b.value ? (c(), _("span", {
|
|
3605
3605
|
key: 0,
|
|
3606
3606
|
class: ne(["vuefinder__preview-modal__edit-chip", { "vuefinder__preview-modal__edit-chip--dirty": $.value }])
|
|
3607
3607
|
}, w($.value ? a(n)("Unsaved") : a(n)("Editing")), 3)) : (c(), _("span", {
|
|
3608
3608
|
key: 1,
|
|
3609
3609
|
class: "vuefinder__preview-modal__pagination-text",
|
|
3610
|
-
"aria-label": a(n)("File %s of %s", String(p.value + 1), String(
|
|
3611
|
-
}, w(p.value + 1) + " / " + w(
|
|
3610
|
+
"aria-label": a(n)("File %s of %s", String(p.value + 1), String(h.value.length))
|
|
3611
|
+
}, w(p.value + 1) + " / " + w(h.value.length), 9, Yi))
|
|
3612
3612
|
])) : j("", !0),
|
|
3613
3613
|
o("div", Xi, [
|
|
3614
3614
|
i.value === !1 ? (c(), _("div", Qi, [
|
|
@@ -3660,7 +3660,7 @@ const mt = { render: Si }, Ci = { class: "vuefinder__default-preview" }, Fi = {
|
|
|
3660
3660
|
key: 0,
|
|
3661
3661
|
type: "button",
|
|
3662
3662
|
class: "vf-btn vf-btn-primary vuefinder__preview-modal__edit-btn",
|
|
3663
|
-
onClick:
|
|
3663
|
+
onClick: g
|
|
3664
3664
|
}, w(a(n)("Edit")), 1))
|
|
3665
3665
|
])
|
|
3666
3666
|
]),
|
|
@@ -3830,12 +3830,12 @@ const It = { render: yl }, wl = { class: "vuefinder__modal-tree__folder-item" },
|
|
|
3830
3830
|
const u = z(() => {
|
|
3831
3831
|
const L = `${d.storage}:${d.folder.path}`;
|
|
3832
3832
|
return d.expandedFolders[L] || !1;
|
|
3833
|
-
}), v = z(() => d.modelValue?.path === d.folder.path), y = z(() => d.currentPath?.path === d.folder.path),
|
|
3834
|
-
const L =
|
|
3833
|
+
}), v = z(() => d.modelValue?.path === d.folder.path), y = z(() => d.currentPath?.path === d.folder.path), h = z(() => d.modalTreeData[d.folder.path] || []), p = z(() => {
|
|
3834
|
+
const L = h.value, q = l.value[d.folder.path] || 50;
|
|
3835
3835
|
return L.length > q ? L.slice(0, q) : L;
|
|
3836
|
-
}), k = z(() =>
|
|
3836
|
+
}), k = z(() => h.value.length), b = z(() => l.value[d.folder.path] || 50), $ = z(() => k.value > b.value), m = () => {
|
|
3837
3837
|
l.value[d.folder.path] = (b.value || 50) + 50;
|
|
3838
|
-
},
|
|
3838
|
+
}, g = z(() => h.value.length > 0 || d.folder.type === "dir"), f = () => {
|
|
3839
3839
|
r("toggleFolder", d.storage, d.folder.path);
|
|
3840
3840
|
}, S = () => {
|
|
3841
3841
|
r("update:modelValue", d.folder);
|
|
@@ -3851,7 +3851,7 @@ const It = { render: yl }, wl = { class: "vuefinder__modal-tree__folder-item" },
|
|
|
3851
3851
|
const Z = Rn("ModalTreeFolderItem", !0);
|
|
3852
3852
|
return c(), _("div", wl, [
|
|
3853
3853
|
o("div", bl, [
|
|
3854
|
-
|
|
3854
|
+
g.value ? (c(), _("div", {
|
|
3855
3855
|
key: 0,
|
|
3856
3856
|
class: "vuefinder__modal-tree__folder-toggle",
|
|
3857
3857
|
onClick: f
|
|
@@ -3883,7 +3883,7 @@ const It = { render: yl }, wl = { class: "vuefinder__modal-tree__folder-item" },
|
|
|
3883
3883
|
o("span", $l, w(s.folder.basename), 1)
|
|
3884
3884
|
], 34)
|
|
3885
3885
|
]),
|
|
3886
|
-
u.value &&
|
|
3886
|
+
u.value && g.value ? (c(), _("div", xl, [
|
|
3887
3887
|
(c(!0), _(fe, null, ge(p.value, (ee) => (c(), X(Z, {
|
|
3888
3888
|
key: ee.path,
|
|
3889
3889
|
folder: ee,
|
|
@@ -3924,7 +3924,7 @@ const It = { render: yl }, wl = { class: "vuefinder__modal-tree__folder-item" },
|
|
|
3924
3924
|
},
|
|
3925
3925
|
emits: ["update:modelValue", "selectAndClose"],
|
|
3926
3926
|
setup(s, { emit: e }) {
|
|
3927
|
-
const t = ie(), { t: n } = t.i18n, i = t.fs, l = t.config, d = e, r = se(i.sortedFiles), u = se(i.storages), v = z(() => u.value || []), y = se(i.path),
|
|
3927
|
+
const t = ie(), { t: n } = t.i18n, i = t.fs, l = t.config, d = e, r = se(i.sortedFiles), u = se(i.storages), v = z(() => u.value || []), y = se(i.path), h = I(null), p = I({}), k = I({}), b = I({});
|
|
3928
3928
|
pe(r, (P) => {
|
|
3929
3929
|
const M = P.filter((Y) => Y.type === "dir"), U = y.value?.path || "";
|
|
3930
3930
|
U && (k.value[U] = M.map((Y) => ({
|
|
@@ -3944,11 +3944,11 @@ const It = { render: yl }, wl = { class: "vuefinder__modal-tree__folder-item" },
|
|
|
3944
3944
|
type: "dir"
|
|
3945
3945
|
}));
|
|
3946
3946
|
});
|
|
3947
|
-
}, m = (P) => k.value[P] || [],
|
|
3948
|
-
const M = m(P), U =
|
|
3947
|
+
}, m = (P) => k.value[P] || [], g = (P) => b.value[P] || 50, f = (P) => {
|
|
3948
|
+
const M = m(P), U = g(P);
|
|
3949
3949
|
return M.length > U ? M.slice(0, U) : M;
|
|
3950
|
-
}, S = (P) => m(P).length, C = (P) => S(P) >
|
|
3951
|
-
b.value[P] =
|
|
3950
|
+
}, S = (P) => m(P).length, C = (P) => S(P) > g(P), F = (P) => {
|
|
3951
|
+
b.value[P] = g(P) + 50;
|
|
3952
3952
|
}, E = (P) => {
|
|
3953
3953
|
P && d("update:modelValue", P);
|
|
3954
3954
|
}, L = (P) => {
|
|
@@ -3992,7 +3992,7 @@ const It = { render: yl }, wl = { class: "vuefinder__modal-tree__folder-item" },
|
|
|
3992
3992
|
M - ee < Cn ? Z(P) : q(P), ee = M;
|
|
3993
3993
|
};
|
|
3994
3994
|
return we(() => {
|
|
3995
|
-
|
|
3995
|
+
h.value && vt(h.value, {
|
|
3996
3996
|
overflow: {
|
|
3997
3997
|
x: "hidden"
|
|
3998
3998
|
},
|
|
@@ -4006,7 +4006,7 @@ const It = { render: yl }, wl = { class: "vuefinder__modal-tree__folder-item" },
|
|
|
4006
4006
|
]),
|
|
4007
4007
|
o("div", {
|
|
4008
4008
|
ref_key: "modalContentElement",
|
|
4009
|
-
ref:
|
|
4009
|
+
ref: h,
|
|
4010
4010
|
class: "vuefinder__modal-tree__content"
|
|
4011
4011
|
}, [
|
|
4012
4012
|
s.showPinnedFolders && a(t).features.pinned && a(l).get("pinnedFolders").length ? (c(), _("div", Dl, [
|
|
@@ -4139,14 +4139,14 @@ const It = { render: yl }, wl = { class: "vuefinder__modal-tree__folder-item" },
|
|
|
4139
4139
|
copy: { type: Boolean }
|
|
4140
4140
|
},
|
|
4141
4141
|
setup(s) {
|
|
4142
|
-
const e = ie(), t = Re(e), { enabled: n } = ze(), { t: i } = e.i18n, l = s, d = I(e.modal.data.items.from), r = I(e.modal.data.items.to), u = I(""), v = I(l.copy || !n("move")), y = z(() => v.value ? "copy" : "move"),
|
|
4142
|
+
const e = ie(), t = Re(e), { enabled: n } = ze(), { t: i } = e.i18n, l = s, d = I(e.modal.data.items.from), r = I(e.modal.data.items.to), u = I(""), v = I(l.copy || !n("move")), y = z(() => v.value ? "copy" : "move"), h = I(!1), p = se(e.fs.path), k = z(() => v.value ? i("Copy files") : i("Move files")), b = z(
|
|
4143
4143
|
() => v.value ? i("Are you sure you want to copy these files?") : i("Are you sure you want to move these files?")
|
|
4144
4144
|
), $ = z(() => v.value ? i("Yes, Copy!") : i("Yes, Move!"));
|
|
4145
4145
|
z(() => v.value ? i("Files copied.") : i("Files moved."));
|
|
4146
4146
|
const m = (E) => {
|
|
4147
4147
|
E && (r.value = E);
|
|
4148
|
-
},
|
|
4149
|
-
E && (r.value = E,
|
|
4148
|
+
}, g = (E) => {
|
|
4149
|
+
E && (r.value = E, h.value = !1);
|
|
4150
4150
|
}, f = z(() => {
|
|
4151
4151
|
const E = r.value;
|
|
4152
4152
|
return E ? d.value.some((L) => !!(E.path === L.path || L.path.startsWith(E.path + "/") || L.type === "dir" && E.path.startsWith(L.path + "/"))) : !0;
|
|
@@ -4222,7 +4222,7 @@ const It = { render: yl }, wl = { class: "vuefinder__modal-tree__folder-item" },
|
|
|
4222
4222
|
o("div", Zl, [
|
|
4223
4223
|
o("div", {
|
|
4224
4224
|
class: "vuefinder__move-modal__target-display",
|
|
4225
|
-
onClick: L[0] || (L[0] = (q) =>
|
|
4225
|
+
onClick: L[0] || (L[0] = (q) => h.value = !h.value)
|
|
4226
4226
|
}, [
|
|
4227
4227
|
o("div", er, [
|
|
4228
4228
|
o("span", tr, w(C().storage) + "://", 1),
|
|
@@ -4234,7 +4234,7 @@ const It = { render: yl }, wl = { class: "vuefinder__modal-tree__folder-item" },
|
|
|
4234
4234
|
o("div", {
|
|
4235
4235
|
class: ne([
|
|
4236
4236
|
"vuefinder__move-modal__tree-selector",
|
|
4237
|
-
|
|
4237
|
+
h.value ? "vuefinder__move-modal__tree-selector--expanded" : "vuefinder__move-modal__tree-selector--collapsed"
|
|
4238
4238
|
])
|
|
4239
4239
|
}, [
|
|
4240
4240
|
W(bt, {
|
|
@@ -4244,7 +4244,7 @@ const It = { render: yl }, wl = { class: "vuefinder__modal-tree__folder-item" },
|
|
|
4244
4244
|
m
|
|
4245
4245
|
],
|
|
4246
4246
|
"show-pinned-folders": !0,
|
|
4247
|
-
onSelectAndClose:
|
|
4247
|
+
onSelectAndClose: g
|
|
4248
4248
|
}, null, 8, ["modelValue"])
|
|
4249
4249
|
], 2),
|
|
4250
4250
|
a(n)("copy") && a(n)("move") ? (c(), _("div", sr, [
|
|
@@ -4448,13 +4448,13 @@ const to = { render: yr }, wr = ["disabled", "title"], br = ["data-theme"], kr =
|
|
|
4448
4448
|
{ value: "size-desc", key: "Size (largest)" },
|
|
4449
4449
|
{ value: "date-desc", key: "Date (newest)" },
|
|
4450
4450
|
{ value: "date-asc", key: "Date (oldest)" }
|
|
4451
|
-
],
|
|
4452
|
-
if (i("update:selectedOption",
|
|
4453
|
-
const f =
|
|
4451
|
+
], h = (g) => {
|
|
4452
|
+
if (i("update:selectedOption", g), g.startsWith("size-")) {
|
|
4453
|
+
const f = g.split("-")[1];
|
|
4454
4454
|
i("update:sizeFilter", f);
|
|
4455
4455
|
}
|
|
4456
|
-
}, p = (
|
|
4457
|
-
i("update:sortBy",
|
|
4456
|
+
}, p = (g) => {
|
|
4457
|
+
i("update:sortBy", g);
|
|
4458
4458
|
}, k = async () => {
|
|
4459
4459
|
n.disabled || (n.visible ? (i("update:visible", !1), v && (v(), v = null)) : (i("update:visible", !0), await Pe(), await b()));
|
|
4460
4460
|
}, b = async () => {
|
|
@@ -4467,13 +4467,13 @@ const to = { render: yr }, wr = ["disabled", "title"], br = ["data-theme"], kr =
|
|
|
4467
4467
|
transition: "opacity 150ms ease-out, transform 150ms ease-out"
|
|
4468
4468
|
});
|
|
4469
4469
|
try {
|
|
4470
|
-
const { x:
|
|
4470
|
+
const { x: g, y: f } = await st(r.value, u.value, {
|
|
4471
4471
|
placement: "bottom-start",
|
|
4472
4472
|
strategy: "fixed",
|
|
4473
4473
|
middleware: [ft(8), _t({ padding: 16 }), pt({ padding: 16 })]
|
|
4474
4474
|
});
|
|
4475
4475
|
Object.assign(u.value.style, {
|
|
4476
|
-
left: `${
|
|
4476
|
+
left: `${g}px`,
|
|
4477
4477
|
top: `${f}px`
|
|
4478
4478
|
}), requestAnimationFrame(() => {
|
|
4479
4479
|
u.value && Object.assign(u.value.style, {
|
|
@@ -4481,15 +4481,15 @@ const to = { render: yr }, wr = ["disabled", "title"], br = ["data-theme"], kr =
|
|
|
4481
4481
|
transform: "translateY(0)"
|
|
4482
4482
|
});
|
|
4483
4483
|
});
|
|
4484
|
-
} catch (
|
|
4485
|
-
console.warn("Floating UI initial positioning error:",
|
|
4484
|
+
} catch (g) {
|
|
4485
|
+
console.warn("Floating UI initial positioning error:", g);
|
|
4486
4486
|
return;
|
|
4487
4487
|
}
|
|
4488
4488
|
try {
|
|
4489
4489
|
v = Yt(r.value, u.value, async () => {
|
|
4490
4490
|
if (!(!r.value || !u.value))
|
|
4491
4491
|
try {
|
|
4492
|
-
const { x:
|
|
4492
|
+
const { x: g, y: f } = await st(
|
|
4493
4493
|
r.value,
|
|
4494
4494
|
u.value,
|
|
4495
4495
|
{
|
|
@@ -4499,45 +4499,45 @@ const to = { render: yr }, wr = ["disabled", "title"], br = ["data-theme"], kr =
|
|
|
4499
4499
|
}
|
|
4500
4500
|
);
|
|
4501
4501
|
Object.assign(u.value.style, {
|
|
4502
|
-
left: `${
|
|
4502
|
+
left: `${g}px`,
|
|
4503
4503
|
top: `${f}px`
|
|
4504
4504
|
});
|
|
4505
|
-
} catch (
|
|
4506
|
-
console.warn("Floating UI positioning error:",
|
|
4505
|
+
} catch (g) {
|
|
4506
|
+
console.warn("Floating UI positioning error:", g);
|
|
4507
4507
|
}
|
|
4508
4508
|
});
|
|
4509
|
-
} catch (
|
|
4510
|
-
console.warn("Floating UI autoUpdate setup error:",
|
|
4509
|
+
} catch (g) {
|
|
4510
|
+
console.warn("Floating UI autoUpdate setup error:", g), v = null;
|
|
4511
4511
|
}
|
|
4512
4512
|
}
|
|
4513
|
-
}, $ = (
|
|
4513
|
+
}, $ = (g) => {
|
|
4514
4514
|
if (!n.visible) return;
|
|
4515
4515
|
const f = ["size-all", "size-small", "size-medium", "size-large"], S = f.findIndex((C) => C === n.selectedOption);
|
|
4516
|
-
if (
|
|
4517
|
-
|
|
4516
|
+
if (g.key === "ArrowDown") {
|
|
4517
|
+
g.preventDefault();
|
|
4518
4518
|
const C = (S + 1) % f.length;
|
|
4519
4519
|
i("update:selectedOption", f[C] || null);
|
|
4520
|
-
} else if (
|
|
4521
|
-
|
|
4520
|
+
} else if (g.key === "ArrowUp") {
|
|
4521
|
+
g.preventDefault();
|
|
4522
4522
|
const C = S <= 0 ? f.length - 1 : S - 1;
|
|
4523
4523
|
i("update:selectedOption", f[C] || null);
|
|
4524
|
-
} else
|
|
4524
|
+
} else g.key === "Enter" ? (g.preventDefault(), n.selectedOption?.startsWith("size-") && i(
|
|
4525
4525
|
"update:sizeFilter",
|
|
4526
4526
|
n.selectedOption.split("-")[1]
|
|
4527
|
-
)) :
|
|
4527
|
+
)) : g.key === "Escape" && (g.preventDefault(), i("update:visible", !1), v && (v(), v = null));
|
|
4528
4528
|
}, m = () => {
|
|
4529
4529
|
v && (v(), v = null);
|
|
4530
4530
|
};
|
|
4531
4531
|
return pe(
|
|
4532
4532
|
() => n.visible,
|
|
4533
|
-
(
|
|
4534
|
-
!
|
|
4533
|
+
(g) => {
|
|
4534
|
+
!g && v && (v(), v = null);
|
|
4535
4535
|
}
|
|
4536
4536
|
), Te(() => {
|
|
4537
4537
|
m();
|
|
4538
4538
|
}), e({
|
|
4539
4539
|
cleanup: m
|
|
4540
|
-
}), (
|
|
4540
|
+
}), (g, f) => (c(), _(fe, null, [
|
|
4541
4541
|
o("button", {
|
|
4542
4542
|
ref_key: "dropdownBtn",
|
|
4543
4543
|
ref: r,
|
|
@@ -4568,7 +4568,7 @@ const to = { render: yr }, wr = ["disabled", "title"], br = ["data-theme"], kr =
|
|
|
4568
4568
|
class: ne(["vuefinder__search-modal__dropdown-option", {
|
|
4569
4569
|
"vuefinder__search-modal__dropdown-option--selected": s.sizeFilter === "all"
|
|
4570
4570
|
}]),
|
|
4571
|
-
onClick: f[0] || (f[0] = _e((S) =>
|
|
4571
|
+
onClick: f[0] || (f[0] = _e((S) => h("size-all"), ["stop"]))
|
|
4572
4572
|
}, [
|
|
4573
4573
|
o("span", null, w(a(d)("All Files")), 1),
|
|
4574
4574
|
s.sizeFilter === "all" ? (c(), _("div", Cr, [...f[5] || (f[5] = [
|
|
@@ -4584,7 +4584,7 @@ const to = { render: yr }, wr = ["disabled", "title"], br = ["data-theme"], kr =
|
|
|
4584
4584
|
class: ne(["vuefinder__search-modal__dropdown-option", {
|
|
4585
4585
|
"vuefinder__search-modal__dropdown-option--selected": s.sizeFilter === "small"
|
|
4586
4586
|
}]),
|
|
4587
|
-
onClick: f[1] || (f[1] = _e((S) =>
|
|
4587
|
+
onClick: f[1] || (f[1] = _e((S) => h("size-small"), ["stop"]))
|
|
4588
4588
|
}, [
|
|
4589
4589
|
o("span", null, w(a(d)("Small (< 1MB)")), 1),
|
|
4590
4590
|
s.sizeFilter === "small" ? (c(), _("div", Fr, [...f[6] || (f[6] = [
|
|
@@ -4600,7 +4600,7 @@ const to = { render: yr }, wr = ["disabled", "title"], br = ["data-theme"], kr =
|
|
|
4600
4600
|
class: ne(["vuefinder__search-modal__dropdown-option", {
|
|
4601
4601
|
"vuefinder__search-modal__dropdown-option--selected": s.sizeFilter === "medium"
|
|
4602
4602
|
}]),
|
|
4603
|
-
onClick: f[2] || (f[2] = _e((S) =>
|
|
4603
|
+
onClick: f[2] || (f[2] = _e((S) => h("size-medium"), ["stop"]))
|
|
4604
4604
|
}, [
|
|
4605
4605
|
o("span", null, w(a(d)("Medium (1-10MB)")), 1),
|
|
4606
4606
|
s.sizeFilter === "medium" ? (c(), _("div", Er, [...f[7] || (f[7] = [
|
|
@@ -4616,7 +4616,7 @@ const to = { render: yr }, wr = ["disabled", "title"], br = ["data-theme"], kr =
|
|
|
4616
4616
|
class: ne(["vuefinder__search-modal__dropdown-option", {
|
|
4617
4617
|
"vuefinder__search-modal__dropdown-option--selected": s.sizeFilter === "large"
|
|
4618
4618
|
}]),
|
|
4619
|
-
onClick: f[3] || (f[3] = _e((S) =>
|
|
4619
|
+
onClick: f[3] || (f[3] = _e((S) => h("size-large"), ["stop"]))
|
|
4620
4620
|
}, [
|
|
4621
4621
|
o("span", null, w(a(d)("Large (> 10MB)")), 1),
|
|
4622
4622
|
s.sizeFilter === "large" ? (c(), _("div", Tr, [...f[8] || (f[8] = [
|
|
@@ -4665,7 +4665,7 @@ function Ot(s, e = 40) {
|
|
|
4665
4665
|
if (!d) return n + i;
|
|
4666
4666
|
let r = `${n}${l.join("/")}${l.length ? "/" : ""}${d}`;
|
|
4667
4667
|
if (r.length <= e) return r;
|
|
4668
|
-
const u = d.split(/\.(?=[^\.]+$)/), v = u[0] ?? "", y = u[1] ?? "",
|
|
4668
|
+
const u = d.split(/\.(?=[^\.]+$)/), v = u[0] ?? "", y = u[1] ?? "", h = v.length > 10 ? `${v.slice(0, 6)}...${v.slice(-5)}` : v, p = y ? `${h}.${y}` : h;
|
|
4669
4669
|
return r = `${n}${l.join("/")}${l.length ? "/" : ""}${p}`, r.length > e && (r = `${n}.../${p}`), r;
|
|
4670
4670
|
}
|
|
4671
4671
|
async function no(s) {
|
|
@@ -4716,15 +4716,15 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
4716
4716
|
"pinnedFolders",
|
|
4717
4717
|
M.filter((U) => U.path !== P.path)
|
|
4718
4718
|
) : i.config.set("pinnedFolders", [...M, P]);
|
|
4719
|
-
},
|
|
4719
|
+
}, h = I(null);
|
|
4720
4720
|
let p = null, k = null, b = [], $ = null;
|
|
4721
4721
|
pe(
|
|
4722
4722
|
() => t.activeDropdown,
|
|
4723
4723
|
(P) => {
|
|
4724
4724
|
p && (p(), p = null), k && (b.forEach((M) => {
|
|
4725
4725
|
M === window ? window.removeEventListener("scroll", k, !0) : M.removeEventListener("scroll", k, !0);
|
|
4726
|
-
}), k = null, b = []), $ && (document.removeEventListener("mousedown", $, !0), document.removeEventListener("touchstart", $, !0), $ = null), P === t.item.path &&
|
|
4727
|
-
E(t.item.path,
|
|
4726
|
+
}), k = null, b = []), $ && (document.removeEventListener("mousedown", $, !0), document.removeEventListener("touchstart", $, !0), $ = null), P === t.item.path && h.value && Pe(() => {
|
|
4727
|
+
E(t.item.path, h.value), g(), f();
|
|
4728
4728
|
});
|
|
4729
4729
|
}
|
|
4730
4730
|
);
|
|
@@ -4736,9 +4736,9 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
4736
4736
|
(ce.includes("scroll") || ce.includes("auto")) && M.push(U), U = U.parentElement;
|
|
4737
4737
|
}
|
|
4738
4738
|
return M;
|
|
4739
|
-
},
|
|
4739
|
+
}, g = () => {
|
|
4740
4740
|
if (t.activeDropdown !== t.item.path) return;
|
|
4741
|
-
const P = m(
|
|
4741
|
+
const P = m(h.value);
|
|
4742
4742
|
b = [window, ...P], k = () => {
|
|
4743
4743
|
t.activeDropdown === t.item.path && n("toggleItemDropdown", t.item.path, new MouseEvent("click"));
|
|
4744
4744
|
};
|
|
@@ -4754,7 +4754,7 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
4754
4754
|
const U = document.querySelector(
|
|
4755
4755
|
`[data-item-dropdown="${t.item.path}"]`
|
|
4756
4756
|
);
|
|
4757
|
-
if (U && U.contains(M) ||
|
|
4757
|
+
if (U && U.contains(M) || h.value && h.value.contains(M))
|
|
4758
4758
|
return;
|
|
4759
4759
|
const Y = i.root;
|
|
4760
4760
|
if (Y && Y.contains(M)) {
|
|
@@ -4888,7 +4888,7 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
4888
4888
|
]),
|
|
4889
4889
|
o("button", {
|
|
4890
4890
|
ref_key: "buttonElementRef",
|
|
4891
|
-
ref:
|
|
4891
|
+
ref: h,
|
|
4892
4892
|
class: "vuefinder__search-modal__result-actions",
|
|
4893
4893
|
title: a(l)("More actions"),
|
|
4894
4894
|
onClick: M[1] || (M[1] = (U) => {
|
|
@@ -4999,10 +4999,10 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
4999
4999
|
},
|
|
5000
5000
|
emits: ["selectResultItem", "selectResultItemWithDropdown", "togglePathExpansion", "toggleItemDropdown", "update:selectedItemDropdownOption", "copyPath", "openContainingFolder", "open", "preview", "activate"],
|
|
5001
5001
|
setup(s, { expose: e, emit: t }) {
|
|
5002
|
-
const n = s, i = t, l = ie(), { t: d } = l.i18n, r = ot("scrollableContainer"), u = z(() => n.searchResults.length > 0), v = z(() => n.searchResults.length), y = I(0),
|
|
5002
|
+
const n = s, i = t, l = ie(), { t: d } = l.i18n, r = ot("scrollableContainer"), u = z(() => n.searchResults.length > 0), v = z(() => n.searchResults.length), y = I(0), h = I(600), p = z(() => n.searchResults.length * Ze), k = z(() => {
|
|
5003
5003
|
const S = Math.max(0, Math.floor(y.value / Ze) - Fn), C = Math.min(
|
|
5004
5004
|
n.searchResults.length,
|
|
5005
|
-
Math.ceil((y.value +
|
|
5005
|
+
Math.ceil((y.value + h.value) / Ze) + Fn
|
|
5006
5006
|
);
|
|
5007
5007
|
return { start: S, end: C };
|
|
5008
5008
|
}), b = z(() => {
|
|
@@ -5016,8 +5016,8 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
5016
5016
|
const C = S.target;
|
|
5017
5017
|
y.value = C.scrollTop;
|
|
5018
5018
|
}, m = () => {
|
|
5019
|
-
r.value && (
|
|
5020
|
-
},
|
|
5019
|
+
r.value && (h.value = r.value.clientHeight);
|
|
5020
|
+
}, g = () => {
|
|
5021
5021
|
if (n.selectedIndex >= 0 && r.value) {
|
|
5022
5022
|
const S = n.selectedIndex * Ze, C = S + Ze, F = r.value.scrollTop, E = r.value.clientHeight, L = F + E;
|
|
5023
5023
|
let q = F;
|
|
@@ -5039,9 +5039,9 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
5039
5039
|
m();
|
|
5040
5040
|
}
|
|
5041
5041
|
), e({
|
|
5042
|
-
scrollSelectedIntoView:
|
|
5042
|
+
scrollSelectedIntoView: g,
|
|
5043
5043
|
resetScroll: f,
|
|
5044
|
-
getContainerHeight: () =>
|
|
5044
|
+
getContainerHeight: () => h.value,
|
|
5045
5045
|
scrollTop: () => y.value
|
|
5046
5046
|
}), (S, C) => (c(), _("div", {
|
|
5047
5047
|
class: ne(["vuefinder__search-modal__results", { "vuefinder__search-modal__results--enter": s.resultsEnter }])
|
|
@@ -5111,9 +5111,9 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
5111
5111
|
name: "ModalSearch",
|
|
5112
5112
|
__name: "ModalSearch",
|
|
5113
5113
|
setup(s) {
|
|
5114
|
-
const e = ie(), t = Re(e), { t: n } = e.i18n, i = e.fs, l = I(null), d = I(null), r = I(null), u = eo("", 300), v = I([]), y = I(!1),
|
|
5114
|
+
const e = ie(), t = Re(e), { t: n } = e.i18n, i = e.fs, l = I(null), d = I(null), r = I(null), u = eo("", 300), v = I([]), y = I(!1), h = I(-1);
|
|
5115
5115
|
let p = null;
|
|
5116
|
-
const k = I(!1), b = I(!1), $ = I(null), m = I("all"),
|
|
5116
|
+
const k = I(!1), b = I(!1), $ = I(null), m = I("all"), g = I(!1), f = I("name-asc"), S = {
|
|
5117
5117
|
"name-asc": { column: "basename", direction: 1 },
|
|
5118
5118
|
"name-desc": { column: "basename", direction: -1 },
|
|
5119
5119
|
"size-asc": { column: "file_size", direction: 1 },
|
|
@@ -5146,18 +5146,18 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
5146
5146
|
}, Y = (D) => {
|
|
5147
5147
|
D.type === "dir" ? U(D) : M(D);
|
|
5148
5148
|
}, ce = (D) => {
|
|
5149
|
-
|
|
5149
|
+
h.value = D, G();
|
|
5150
5150
|
}, R = (D) => {
|
|
5151
|
-
|
|
5151
|
+
h.value = D;
|
|
5152
5152
|
}, x = async (D) => {
|
|
5153
5153
|
await gt(D.path), G();
|
|
5154
5154
|
};
|
|
5155
5155
|
pe(u, async (D) => {
|
|
5156
|
-
D.trim() ? (await T(D.trim()),
|
|
5156
|
+
D.trim() ? (await T(D.trim()), h.value = 0) : (p && (p.abort(), p = null), v.value = [], y.value = !1, h.value = -1);
|
|
5157
5157
|
}), pe(m, async (D) => {
|
|
5158
|
-
F.value = `size-${D}`, u.value.trim() && !b.value && (await T(u.value.trim()),
|
|
5159
|
-
}), pe(
|
|
5160
|
-
u.value.trim() && !b.value && (await T(u.value.trim()),
|
|
5158
|
+
F.value = `size-${D}`, u.value.trim() && !b.value && (await T(u.value.trim()), h.value = 0);
|
|
5159
|
+
}), pe(g, async () => {
|
|
5160
|
+
u.value.trim() && !b.value && (await T(u.value.trim()), h.value = 0);
|
|
5161
5161
|
});
|
|
5162
5162
|
const V = (D) => {
|
|
5163
5163
|
if (!D || typeof D != "object") return !1;
|
|
@@ -5172,7 +5172,7 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
5172
5172
|
const re = $.value?.path || Z?.value?.path, me = await e.adapter.search({
|
|
5173
5173
|
path: re,
|
|
5174
5174
|
filter: D,
|
|
5175
|
-
deep:
|
|
5175
|
+
deep: g.value,
|
|
5176
5176
|
size: m.value,
|
|
5177
5177
|
signal: N.signal
|
|
5178
5178
|
});
|
|
@@ -5187,11 +5187,11 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
5187
5187
|
document.addEventListener("click", H), F.value = `size-${m.value}`;
|
|
5188
5188
|
});
|
|
5189
5189
|
const B = () => {
|
|
5190
|
-
b.value ? (b.value = !1, u.value.trim() && (T(u.value.trim()),
|
|
5190
|
+
b.value ? (b.value = !1, u.value.trim() && (T(u.value.trim()), h.value = 0)) : (k.value = !1, b.value = !0);
|
|
5191
5191
|
}, A = (D) => {
|
|
5192
5192
|
D && ($.value = D);
|
|
5193
5193
|
}, O = (D) => {
|
|
5194
|
-
D && (A(D), b.value = !1, u.value.trim() && (T(u.value.trim()),
|
|
5194
|
+
D && (A(D), b.value = !1, u.value.trim() && (T(u.value.trim()), h.value = 0));
|
|
5195
5195
|
};
|
|
5196
5196
|
Te(() => {
|
|
5197
5197
|
document.removeEventListener("click", H), p && (p.abort(), p = null), d.value && d.value.cleanup();
|
|
@@ -5266,14 +5266,14 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
5266
5266
|
}, ["stop"]))
|
|
5267
5267
|
}, [
|
|
5268
5268
|
he(o("input", {
|
|
5269
|
-
"onUpdate:modelValue": N[5] || (N[5] = (re) =>
|
|
5269
|
+
"onUpdate:modelValue": N[5] || (N[5] = (re) => g.value = re),
|
|
5270
5270
|
type: "checkbox",
|
|
5271
5271
|
disabled: b.value,
|
|
5272
5272
|
class: "vuefinder__search-modal__checkbox",
|
|
5273
5273
|
onClick: N[6] || (N[6] = _e(() => {
|
|
5274
5274
|
}, ["stop"]))
|
|
5275
5275
|
}, null, 8, id), [
|
|
5276
|
-
[it,
|
|
5276
|
+
[it, g.value]
|
|
5277
5277
|
]),
|
|
5278
5278
|
o("span", null, w(a(n)("Include subfolders")), 1)
|
|
5279
5279
|
])
|
|
@@ -5301,7 +5301,7 @@ const oo = { render: Br }, zr = ["title"], Vr = { class: "vuefinder__search-moda
|
|
|
5301
5301
|
ref: r,
|
|
5302
5302
|
"search-results": C.value,
|
|
5303
5303
|
"is-searching": y.value,
|
|
5304
|
-
"selected-index":
|
|
5304
|
+
"selected-index": h.value,
|
|
5305
5305
|
"expanded-paths": L.value,
|
|
5306
5306
|
"active-dropdown": q.value,
|
|
5307
5307
|
"selected-item-dropdown-option": E.value,
|
|
@@ -5388,7 +5388,7 @@ const En = /* @__PURE__ */ vd(ud, [["render", _d]]), pd = [
|
|
|
5388
5388
|
const e = ie(), { enabled: t } = ze(), n = e.config, { clearStore: i } = e.storage, { t: l, localeAtom: d } = e.i18n, r = se(d), u = z({
|
|
5389
5389
|
get: () => String(r.value || "en"),
|
|
5390
5390
|
set: (m) => d.set(m || "en")
|
|
5391
|
-
}), v = se(n.state), y = z(() => v.value.theme || "silver"),
|
|
5391
|
+
}), v = se(n.state), y = z(() => v.value.theme || "silver"), h = async () => {
|
|
5392
5392
|
n.reset(), i(), localStorage.removeItem("vuefinder_locale"), localStorage.removeItem("vuefinder_translations"), location.reload();
|
|
5393
5393
|
}, p = (m) => {
|
|
5394
5394
|
n.set("theme", m), e.emitter.emit("vf-theme-saved");
|
|
@@ -5414,12 +5414,12 @@ const En = /* @__PURE__ */ vd(ud, [["render", _d]]), pd = [
|
|
|
5414
5414
|
tr: "Turkish (Türkçe)"
|
|
5415
5415
|
}).filter(([m]) => Object.keys(k).includes(m))
|
|
5416
5416
|
);
|
|
5417
|
-
return (m,
|
|
5417
|
+
return (m, g) => (c(), X(Be, null, {
|
|
5418
5418
|
buttons: ue(() => [
|
|
5419
5419
|
o("button", {
|
|
5420
5420
|
type: "button",
|
|
5421
5421
|
class: "vf-btn vf-btn-secondary",
|
|
5422
|
-
onClick:
|
|
5422
|
+
onClick: g[2] || (g[2] = (f) => a(e).modal.close())
|
|
5423
5423
|
}, w(a(l)("Close")), 1)
|
|
5424
5424
|
]),
|
|
5425
5425
|
default: ue(() => [
|
|
@@ -5448,7 +5448,7 @@ const En = /* @__PURE__ */ vd(ud, [["render", _d]]), pd = [
|
|
|
5448
5448
|
id: "theme",
|
|
5449
5449
|
value: y.value,
|
|
5450
5450
|
class: "vuefinder__settings-modal__select",
|
|
5451
|
-
onChange:
|
|
5451
|
+
onChange: g[0] || (g[0] = (f) => p(f.target?.value))
|
|
5452
5452
|
}, [
|
|
5453
5453
|
(c(!0), _(fe, null, ge(a(pd), (f) => (c(), _("option", {
|
|
5454
5454
|
key: f.name,
|
|
@@ -5473,7 +5473,7 @@ const En = /* @__PURE__ */ vd(ud, [["render", _d]]), pd = [
|
|
|
5473
5473
|
o("div", Cd, [
|
|
5474
5474
|
he(o("select", {
|
|
5475
5475
|
id: "language",
|
|
5476
|
-
"onUpdate:modelValue":
|
|
5476
|
+
"onUpdate:modelValue": g[1] || (g[1] = (f) => u.value = f),
|
|
5477
5477
|
class: "vuefinder__settings-modal__select"
|
|
5478
5478
|
}, [
|
|
5479
5479
|
(c(!0), _(fe, null, ge(a($), (f, S) => (c(), _("option", {
|
|
@@ -5494,7 +5494,7 @@ const En = /* @__PURE__ */ vd(ud, [["render", _d]]), pd = [
|
|
|
5494
5494
|
o("button", {
|
|
5495
5495
|
type: "button",
|
|
5496
5496
|
class: "vuefinder__settings-modal__reset-button",
|
|
5497
|
-
onClick:
|
|
5497
|
+
onClick: h
|
|
5498
5498
|
}, w(a(l)("Reset Settings")), 1)
|
|
5499
5499
|
])
|
|
5500
5500
|
])
|
|
@@ -5603,8 +5603,8 @@ function Id() {
|
|
|
5603
5603
|
if (v.length > 0) {
|
|
5604
5604
|
e.value = [];
|
|
5605
5605
|
for (const y of v) {
|
|
5606
|
-
const
|
|
5607
|
-
if (
|
|
5606
|
+
const h = y.webkitGetAsEntry?.();
|
|
5607
|
+
if (h)
|
|
5608
5608
|
await tn((p, k) => {
|
|
5609
5609
|
e.value.push({
|
|
5610
5610
|
name: k.name,
|
|
@@ -5613,7 +5613,7 @@ function Id() {
|
|
|
5613
5613
|
lastModified: new Date(k.lastModified),
|
|
5614
5614
|
file: k
|
|
5615
5615
|
});
|
|
5616
|
-
},
|
|
5616
|
+
}, h);
|
|
5617
5617
|
else {
|
|
5618
5618
|
const p = y.getAsFile();
|
|
5619
5619
|
p && e.value.push({
|
|
@@ -5816,13 +5816,13 @@ const Gd = { class: "vuefinder__upload-modal__content relative" }, Yd = { class:
|
|
|
5816
5816
|
H && (l.value = H, d.value = !1);
|
|
5817
5817
|
}, {
|
|
5818
5818
|
container: y,
|
|
5819
|
-
internalFileInput:
|
|
5819
|
+
internalFileInput: h,
|
|
5820
5820
|
internalFolderInput: p,
|
|
5821
5821
|
pickFiles: k,
|
|
5822
5822
|
queue: b,
|
|
5823
5823
|
message: $,
|
|
5824
5824
|
uploading: m,
|
|
5825
|
-
hasFilesInDropArea:
|
|
5825
|
+
hasFilesInDropArea: g,
|
|
5826
5826
|
definitions: f,
|
|
5827
5827
|
openFileSelector: S,
|
|
5828
5828
|
upload: C,
|
|
@@ -5871,7 +5871,7 @@ const Gd = { class: "vuefinder__upload-modal__content relative" }, Yd = { class:
|
|
|
5871
5871
|
!N && !re && (T.value = !1);
|
|
5872
5872
|
};
|
|
5873
5873
|
return we(() => document.addEventListener("click", O)), Te(() => document.removeEventListener("click", O)), (H, D) => (c(), X(Be, {
|
|
5874
|
-
"show-drag-overlay": a(
|
|
5874
|
+
"show-drag-overlay": a(g),
|
|
5875
5875
|
"drag-overlay-text": a(t)("Drag and drop the files/folders to here.")
|
|
5876
5876
|
}, {
|
|
5877
5877
|
buttons: ue(() => [
|
|
@@ -6215,7 +6215,7 @@ const Gd = { class: "vuefinder__upload-modal__content relative" }, Yd = { class:
|
|
|
6215
6215
|
]),
|
|
6216
6216
|
o("input", {
|
|
6217
6217
|
ref_key: "internalFileInput",
|
|
6218
|
-
ref:
|
|
6218
|
+
ref: h,
|
|
6219
6219
|
type: "file",
|
|
6220
6220
|
multiple: "",
|
|
6221
6221
|
class: "hidden"
|
|
@@ -6266,7 +6266,7 @@ const co = { render: kc }, $c = { class: "vuefinder__unarchive-modal__content" }
|
|
|
6266
6266
|
}, un = /* @__PURE__ */ le({
|
|
6267
6267
|
__name: "ModalUnarchive",
|
|
6268
6268
|
setup(s) {
|
|
6269
|
-
const e = ie(), t = Re(e), n = e.fs, i = se(n.path), { t: l } = e.i18n, d = I(e.modal.data.items[0]), r = I([]), u = I(null), v = I(!1), y = z(() => u.value?.path || i.value.path),
|
|
6269
|
+
const e = ie(), t = Re(e), n = e.fs, i = se(n.path), { t: l } = e.i18n, d = I(e.modal.data.items[0]), r = I([]), u = I(null), v = I(!1), y = z(() => u.value?.path || i.value.path), h = () => {
|
|
6270
6270
|
v.value = !v.value;
|
|
6271
6271
|
}, p = ($) => {
|
|
6272
6272
|
$ && (u.value = $);
|
|
@@ -6295,7 +6295,7 @@ const co = { render: kc }, $c = { class: "vuefinder__unarchive-modal__content" }
|
|
|
6295
6295
|
o("button", {
|
|
6296
6296
|
type: "button",
|
|
6297
6297
|
class: "vf-btn vf-btn-secondary",
|
|
6298
|
-
onClick: m[1] || (m[1] = (
|
|
6298
|
+
onClick: m[1] || (m[1] = (g) => a(e).modal.close())
|
|
6299
6299
|
}, w(a(l)("Cancel")), 1)
|
|
6300
6300
|
]),
|
|
6301
6301
|
default: ue(() => [
|
|
@@ -6306,11 +6306,11 @@ const co = { render: kc }, $c = { class: "vuefinder__unarchive-modal__content" }
|
|
|
6306
6306
|
}, null, 8, ["icon", "title"]),
|
|
6307
6307
|
o("div", $c, [
|
|
6308
6308
|
o("div", xc, [
|
|
6309
|
-
(c(!0), _(fe, null, ge(r.value, (
|
|
6310
|
-
key:
|
|
6309
|
+
(c(!0), _(fe, null, ge(r.value, (g) => (c(), _("p", {
|
|
6310
|
+
key: g.path,
|
|
6311
6311
|
class: "vuefinder__unarchive-modal__item"
|
|
6312
6312
|
}, [
|
|
6313
|
-
|
|
6313
|
+
g.type === "dir" ? (c(), _("svg", Sc, [...m[2] || (m[2] = [
|
|
6314
6314
|
o("path", {
|
|
6315
6315
|
"stroke-linecap": "round",
|
|
6316
6316
|
"stroke-linejoin": "round",
|
|
@@ -6323,7 +6323,7 @@ const co = { render: kc }, $c = { class: "vuefinder__unarchive-modal__content" }
|
|
|
6323
6323
|
d: "M7 21h10a2 2 0 002-2V9.414a1 1 0 00-.293-.707l-5.414-5.414A1 1 0 0012.586 3H7a2 2 0 00-2 2v14a2 2 0 002 2z"
|
|
6324
6324
|
}, null, -1)
|
|
6325
6325
|
])])),
|
|
6326
|
-
o("span", Fc, w(
|
|
6326
|
+
o("span", Fc, w(g.basename), 1)
|
|
6327
6327
|
]))), 128)),
|
|
6328
6328
|
o("p", Ec, w(a(l)("The archive will be unarchived at")) + " (" + w(y.value) + ") ", 1),
|
|
6329
6329
|
o("div", Tc, [
|
|
@@ -6331,7 +6331,7 @@ const co = { render: kc }, $c = { class: "vuefinder__unarchive-modal__content" }
|
|
|
6331
6331
|
o("button", {
|
|
6332
6332
|
type: "button",
|
|
6333
6333
|
class: ne(["vuefinder__unarchive-modal__target-btn", { "vuefinder__unarchive-modal__target-btn--open": v.value }]),
|
|
6334
|
-
onClick:
|
|
6334
|
+
onClick: h
|
|
6335
6335
|
}, [
|
|
6336
6336
|
W(a(Le), { class: "vuefinder__unarchive-modal__target-icon" }),
|
|
6337
6337
|
o("span", {
|
|
@@ -6350,7 +6350,7 @@ const co = { render: kc }, $c = { class: "vuefinder__unarchive-modal__content" }
|
|
|
6350
6350
|
W(bt, {
|
|
6351
6351
|
modelValue: u.value,
|
|
6352
6352
|
"onUpdate:modelValue": [
|
|
6353
|
-
m[0] || (m[0] = (
|
|
6353
|
+
m[0] || (m[0] = (g) => u.value = g),
|
|
6354
6354
|
p
|
|
6355
6355
|
],
|
|
6356
6356
|
"show-pinned-folders": !0,
|
|
@@ -6399,7 +6399,7 @@ const uo = { render: Ac }, Oc = { class: "vuefinder__archive-modal__content" },
|
|
|
6399
6399
|
}, vn = /* @__PURE__ */ le({
|
|
6400
6400
|
__name: "ModalArchive",
|
|
6401
6401
|
setup(s) {
|
|
6402
|
-
const e = ie(), t = Re(e), { t: n } = e.i18n, i = e.fs, l = se(i.path), d = I(""), r = I(e.modal.data.items), u = I(null), v = I(!1), y = z(() => u.value?.path || l.value.path),
|
|
6402
|
+
const e = ie(), t = Re(e), { t: n } = e.i18n, i = e.fs, l = se(i.path), d = I(""), r = I(e.modal.data.items), u = I(null), v = I(!1), y = z(() => u.value?.path || l.value.path), h = () => {
|
|
6403
6403
|
v.value = !v.value;
|
|
6404
6404
|
}, p = ($) => {
|
|
6405
6405
|
$ && (u.value = $);
|
|
@@ -6410,9 +6410,9 @@ const uo = { render: Ac }, Oc = { class: "vuefinder__archive-modal__content" },
|
|
|
6410
6410
|
const $ = u.value?.path;
|
|
6411
6411
|
e.adapter.archive({
|
|
6412
6412
|
path: l.value.path,
|
|
6413
|
-
items: r.value.map(({ path: m, type:
|
|
6413
|
+
items: r.value.map(({ path: m, type: g }) => ({
|
|
6414
6414
|
path: m,
|
|
6415
|
-
type:
|
|
6415
|
+
type: g
|
|
6416
6416
|
})),
|
|
6417
6417
|
name: d.value,
|
|
6418
6418
|
// Optional. Sent when the user explicitly picks a different folder.
|
|
@@ -6434,7 +6434,7 @@ const uo = { render: Ac }, Oc = { class: "vuefinder__archive-modal__content" },
|
|
|
6434
6434
|
o("button", {
|
|
6435
6435
|
type: "button",
|
|
6436
6436
|
class: "vf-btn vf-btn-secondary",
|
|
6437
|
-
onClick: m[2] || (m[2] = (
|
|
6437
|
+
onClick: m[2] || (m[2] = (g) => a(e).modal.close())
|
|
6438
6438
|
}, w(a(n)("Cancel")), 1)
|
|
6439
6439
|
]),
|
|
6440
6440
|
default: ue(() => [
|
|
@@ -6446,11 +6446,11 @@ const uo = { render: Ac }, Oc = { class: "vuefinder__archive-modal__content" },
|
|
|
6446
6446
|
o("div", Oc, [
|
|
6447
6447
|
o("div", Lc, [
|
|
6448
6448
|
o("div", Rc, [
|
|
6449
|
-
(c(!0), _(fe, null, ge(r.value, (
|
|
6450
|
-
key:
|
|
6449
|
+
(c(!0), _(fe, null, ge(r.value, (g) => (c(), _("p", {
|
|
6450
|
+
key: g.path,
|
|
6451
6451
|
class: "vuefinder__archive-modal__file"
|
|
6452
6452
|
}, [
|
|
6453
|
-
|
|
6453
|
+
g.type === "dir" ? (c(), _("svg", Bc, [...m[3] || (m[3] = [
|
|
6454
6454
|
o("path", {
|
|
6455
6455
|
"stroke-linecap": "round",
|
|
6456
6456
|
"stroke-linejoin": "round",
|
|
@@ -6463,11 +6463,11 @@ const uo = { render: Ac }, Oc = { class: "vuefinder__archive-modal__content" },
|
|
|
6463
6463
|
d: "M7 21h10a2 2 0 002-2V9.414a1 1 0 00-.293-.707l-5.414-5.414A1 1 0 0012.586 3H7a2 2 0 00-2 2v14a2 2 0 002 2z"
|
|
6464
6464
|
}, null, -1)
|
|
6465
6465
|
])])),
|
|
6466
|
-
o("span", Vc, w(
|
|
6466
|
+
o("span", Vc, w(g.basename), 1)
|
|
6467
6467
|
]))), 128))
|
|
6468
6468
|
]),
|
|
6469
6469
|
he(o("input", {
|
|
6470
|
-
"onUpdate:modelValue": m[0] || (m[0] = (
|
|
6470
|
+
"onUpdate:modelValue": m[0] || (m[0] = (g) => d.value = g),
|
|
6471
6471
|
class: "vuefinder__archive-modal__input",
|
|
6472
6472
|
placeholder: a(n)("Archive name. (.zip file will be created)"),
|
|
6473
6473
|
type: "text",
|
|
@@ -6480,7 +6480,7 @@ const uo = { render: Ac }, Oc = { class: "vuefinder__archive-modal__content" },
|
|
|
6480
6480
|
o("button", {
|
|
6481
6481
|
type: "button",
|
|
6482
6482
|
class: ne(["vuefinder__archive-modal__target-btn", { "vuefinder__archive-modal__target-btn--open": v.value }]),
|
|
6483
|
-
onClick:
|
|
6483
|
+
onClick: h
|
|
6484
6484
|
}, [
|
|
6485
6485
|
W(a(Le), { class: "vuefinder__archive-modal__target-icon" }),
|
|
6486
6486
|
o("span", {
|
|
@@ -6499,7 +6499,7 @@ const uo = { render: Ac }, Oc = { class: "vuefinder__archive-modal__content" },
|
|
|
6499
6499
|
W(bt, {
|
|
6500
6500
|
modelValue: u.value,
|
|
6501
6501
|
"onUpdate:modelValue": [
|
|
6502
|
-
m[1] || (m[1] = (
|
|
6502
|
+
m[1] || (m[1] = (g) => u.value = g),
|
|
6503
6503
|
p
|
|
6504
6504
|
],
|
|
6505
6505
|
"show-pinned-folders": !0,
|
|
@@ -6720,7 +6720,7 @@ const fu = { class: "vuefinder__go-to-folder-modal" }, _u = { class: "vuefinder_
|
|
|
6720
6720
|
name: "ModalGoToFolder",
|
|
6721
6721
|
__name: "ModalGoToFolder",
|
|
6722
6722
|
setup(s) {
|
|
6723
|
-
const e = ie(), { t } = e.i18n, n = e.fs, i = se(n.storages), l = I(""), d = I([]), r = I(0), u = I(!1), v = I(!1), y = I(""),
|
|
6723
|
+
const e = ie(), { t } = e.i18n, n = e.fs, i = se(n.storages), l = I(""), d = I([]), r = I(0), u = I(!1), v = I(!1), y = I(""), h = I(null), p = I(null);
|
|
6724
6724
|
let k = 0;
|
|
6725
6725
|
const b = z(() => i.value ?? []), $ = (R) => {
|
|
6726
6726
|
const x = R ?? "", V = x.indexOf("://");
|
|
@@ -6735,7 +6735,7 @@ const fu = { class: "vuefinder__go-to-folder-modal" }, _u = { class: "vuefinder_
|
|
|
6735
6735
|
label: `${V}://`,
|
|
6736
6736
|
kind: "storage"
|
|
6737
6737
|
})), r.value = d.value.length ? 0 : -1, y.value = "";
|
|
6738
|
-
},
|
|
6738
|
+
}, g = () => {
|
|
6739
6739
|
const R = pn();
|
|
6740
6740
|
d.value = R.map((x) => ({
|
|
6741
6741
|
path: x,
|
|
@@ -6771,7 +6771,7 @@ const fu = { class: "vuefinder__go-to-folder-modal" }, _u = { class: "vuefinder_
|
|
|
6771
6771
|
}, F = (R) => {
|
|
6772
6772
|
const x = R.trim();
|
|
6773
6773
|
if (!x) {
|
|
6774
|
-
k++, u.value = !1,
|
|
6774
|
+
k++, u.value = !1, g();
|
|
6775
6775
|
return;
|
|
6776
6776
|
}
|
|
6777
6777
|
const { hasProtocol: V, parent: T, filter: B } = $(x);
|
|
@@ -6782,7 +6782,7 @@ const fu = { class: "vuefinder__go-to-folder-modal" }, _u = { class: "vuefinder_
|
|
|
6782
6782
|
f(T, B);
|
|
6783
6783
|
};
|
|
6784
6784
|
pe(l, (R) => C(R)), we(() => {
|
|
6785
|
-
|
|
6785
|
+
g(), Pe(() => h.value?.focus());
|
|
6786
6786
|
});
|
|
6787
6787
|
const E = () => {
|
|
6788
6788
|
Pe(() => {
|
|
@@ -6799,7 +6799,7 @@ const fu = { class: "vuefinder__go-to-folder-modal" }, _u = { class: "vuefinder_
|
|
|
6799
6799
|
r.value = ((r.value + R) % x + x) % x, E();
|
|
6800
6800
|
}, q = (R) => {
|
|
6801
6801
|
l.value = R.kind === "dir" ? `${R.path}/` : R.path, Pe(() => {
|
|
6802
|
-
|
|
6802
|
+
h.value?.setSelectionRange(l.value.length, l.value.length);
|
|
6803
6803
|
});
|
|
6804
6804
|
}, Z = (R) => {
|
|
6805
6805
|
if (!R.includes("://"))
|
|
@@ -6845,10 +6845,10 @@ const fu = { class: "vuefinder__go-to-folder-modal" }, _u = { class: "vuefinder_
|
|
|
6845
6845
|
}, M = (R) => {
|
|
6846
6846
|
ee(R.path);
|
|
6847
6847
|
}, U = (R, x) => {
|
|
6848
|
-
R.stopPropagation(), R.preventDefault(), vu(x),
|
|
6848
|
+
R.stopPropagation(), R.preventDefault(), vu(x), g();
|
|
6849
6849
|
}, Y = (R, x) => {
|
|
6850
6850
|
R.stopPropagation(), R.preventDefault(), l.value = x, Pe(() => {
|
|
6851
|
-
|
|
6851
|
+
h.value?.focus(), h.value?.setSelectionRange(l.value.length, l.value.length);
|
|
6852
6852
|
});
|
|
6853
6853
|
}, ce = z(() => {
|
|
6854
6854
|
const R = b.value[0];
|
|
@@ -6877,7 +6877,7 @@ const fu = { class: "vuefinder__go-to-folder-modal" }, _u = { class: "vuefinder_
|
|
|
6877
6877
|
o("div", _u, [
|
|
6878
6878
|
he(o("input", {
|
|
6879
6879
|
ref_key: "inputRef",
|
|
6880
|
-
ref:
|
|
6880
|
+
ref: h,
|
|
6881
6881
|
"onUpdate:modelValue": x[0] || (x[0] = (V) => l.value = V),
|
|
6882
6882
|
class: "vuefinder__go-to-folder-modal__input",
|
|
6883
6883
|
type: "text",
|
|
@@ -6961,7 +6961,7 @@ const fu = { class: "vuefinder__go-to-folder-modal" }, _u = { class: "vuefinder_
|
|
|
6961
6961
|
}, Ou = ["onClick"], Lu = { class: "vuefinder__menubar__dropdown__label" }, Ru = /* @__PURE__ */ le({
|
|
6962
6962
|
__name: "MenuBar",
|
|
6963
6963
|
setup(s) {
|
|
6964
|
-
const e = ie(), { enabled: t } = ze(), { t: n } = e?.i18n || { t: (f) => f }, i = e?.fs, l = e?.config, d = se(l.state), r = se(i.selectedItems), u = se(i?.storages || []), v = I(null), y = I(!1),
|
|
6964
|
+
const e = ie(), { enabled: t } = ze(), { t: n } = e?.i18n || { t: (f) => f }, i = e?.fs, l = e?.config, d = se(l.state), r = se(i.selectedItems), u = se(i?.storages || []), v = I(null), y = I(!1), h = z(() => window.opener !== null || window.name !== "" || window.history.length <= 1), p = z(() => [
|
|
6965
6965
|
{
|
|
6966
6966
|
id: "file",
|
|
6967
6967
|
label: n("File"),
|
|
@@ -7056,7 +7056,7 @@ const fu = { class: "vuefinder__go-to-folder-modal" }, _u = { class: "vuefinder_
|
|
|
7056
7056
|
hidden: () => !t("preview")
|
|
7057
7057
|
},
|
|
7058
7058
|
// Only show exit option if we can actually close the window
|
|
7059
|
-
...
|
|
7059
|
+
...h.value ? [
|
|
7060
7060
|
{ type: "separator" },
|
|
7061
7061
|
{
|
|
7062
7062
|
id: "exit",
|
|
@@ -7366,13 +7366,13 @@ const fu = { class: "vuefinder__go-to-folder-modal" }, _u = { class: "vuefinder_
|
|
|
7366
7366
|
v.value = null, y.value = !1;
|
|
7367
7367
|
}, m = (f) => {
|
|
7368
7368
|
$(), f();
|
|
7369
|
-
},
|
|
7369
|
+
}, g = (f) => {
|
|
7370
7370
|
f.target.closest(".vuefinder__menubar") || $();
|
|
7371
7371
|
};
|
|
7372
7372
|
return we(() => {
|
|
7373
|
-
document.addEventListener("click",
|
|
7373
|
+
document.addEventListener("click", g);
|
|
7374
7374
|
}), Te(() => {
|
|
7375
|
-
document.removeEventListener("click",
|
|
7375
|
+
document.removeEventListener("click", g);
|
|
7376
7376
|
}), (f, S) => (c(), _("div", {
|
|
7377
7377
|
class: "vuefinder__menubar",
|
|
7378
7378
|
onClick: S[0] || (S[0] = _e(() => {
|
|
@@ -7508,14 +7508,14 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7508
7508
|
},
|
|
7509
7509
|
{ immediate: !0 }
|
|
7510
7510
|
);
|
|
7511
|
-
const y = I(!1),
|
|
7511
|
+
const y = I(!1), h = (m) => {
|
|
7512
7512
|
m.target.closest(".vuefinder__toolbar__dropdown-container") || (y.value = !1);
|
|
7513
7513
|
};
|
|
7514
7514
|
we(() => {
|
|
7515
7515
|
const m = document.querySelector("body");
|
|
7516
|
-
m && d.value.fullScreen && setTimeout(() => m.style.overflow = "hidden"), document.addEventListener("click",
|
|
7516
|
+
m && d.value.fullScreen && setTimeout(() => m.style.overflow = "hidden"), document.addEventListener("click", h);
|
|
7517
7517
|
}), Te(() => {
|
|
7518
|
-
document.removeEventListener("click",
|
|
7518
|
+
document.removeEventListener("click", h);
|
|
7519
7519
|
});
|
|
7520
7520
|
const p = I({
|
|
7521
7521
|
sortBy: "name",
|
|
@@ -7584,13 +7584,13 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7584
7584
|
// Reset to default value
|
|
7585
7585
|
}, l.set("showHiddenFiles", !0), i.clearSort(), i.clearFilter();
|
|
7586
7586
|
};
|
|
7587
|
-
return (m,
|
|
7587
|
+
return (m, g) => (c(), _("div", Zu, [
|
|
7588
7588
|
o("div", ev, [
|
|
7589
7589
|
a(t)("newfolder") ? (c(), _("div", {
|
|
7590
7590
|
key: 0,
|
|
7591
7591
|
class: "mx-1.5",
|
|
7592
7592
|
title: a(n)("New Folder"),
|
|
7593
|
-
onClick:
|
|
7593
|
+
onClick: g[0] || (g[0] = (f) => a(e).modal.open(dn, { items: a(r) }))
|
|
7594
7594
|
}, [
|
|
7595
7595
|
W(a(ao))
|
|
7596
7596
|
], 8, tv)) : j("", !0),
|
|
@@ -7598,7 +7598,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7598
7598
|
key: 1,
|
|
7599
7599
|
class: "mx-1.5",
|
|
7600
7600
|
title: a(n)("New File"),
|
|
7601
|
-
onClick:
|
|
7601
|
+
onClick: g[1] || (g[1] = (f) => a(e).modal.open(lo, { items: a(r) }))
|
|
7602
7602
|
}, [
|
|
7603
7603
|
W(a(io))
|
|
7604
7604
|
], 8, nv)) : j("", !0),
|
|
@@ -7606,7 +7606,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7606
7606
|
key: 2,
|
|
7607
7607
|
class: "mx-1.5",
|
|
7608
7608
|
title: a(n)("Rename"),
|
|
7609
|
-
onClick:
|
|
7609
|
+
onClick: g[2] || (g[2] = (f) => a(r).length !== 1 || a(e).modal.open(Pt, { items: a(r) }))
|
|
7610
7610
|
}, [
|
|
7611
7611
|
W(a(Gn), {
|
|
7612
7612
|
class: ne(a(r).length === 1 ? "vf-toolbar-icon" : "vf-toolbar-icon-disabled")
|
|
@@ -7616,7 +7616,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7616
7616
|
key: 3,
|
|
7617
7617
|
class: "mx-1.5",
|
|
7618
7618
|
title: a(n)("Delete"),
|
|
7619
|
-
onClick:
|
|
7619
|
+
onClick: g[3] || (g[3] = (f) => !a(r).length || a(e).modal.open(Tt, { items: a(r) }))
|
|
7620
7620
|
}, [
|
|
7621
7621
|
W(a(Wn), {
|
|
7622
7622
|
class: ne(a(r).length ? "vf-toolbar-icon" : "vf-toolbar-icon-disabled")
|
|
@@ -7626,7 +7626,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7626
7626
|
key: 4,
|
|
7627
7627
|
class: "mx-1.5",
|
|
7628
7628
|
title: a(n)("Upload"),
|
|
7629
|
-
onClick:
|
|
7629
|
+
onClick: g[4] || (g[4] = (f) => a(e).modal.open(cn, { items: a(r) }))
|
|
7630
7630
|
}, [
|
|
7631
7631
|
W(a(ro))
|
|
7632
7632
|
], 8, av)) : j("", !0),
|
|
@@ -7634,7 +7634,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7634
7634
|
key: 5,
|
|
7635
7635
|
class: "mx-1.5",
|
|
7636
7636
|
title: a(n)("Unarchive"),
|
|
7637
|
-
onClick:
|
|
7637
|
+
onClick: g[5] || (g[5] = (f) => !a(r).length || a(e).modal.open(un, { items: a(r) }))
|
|
7638
7638
|
}, [
|
|
7639
7639
|
W(a(co), {
|
|
7640
7640
|
class: ne(a(r).length ? "vf-toolbar-icon" : "vf-toolbar-icon-disabled")
|
|
@@ -7644,7 +7644,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7644
7644
|
key: 6,
|
|
7645
7645
|
class: "mx-1.5",
|
|
7646
7646
|
title: a(n)("Archive"),
|
|
7647
|
-
onClick:
|
|
7647
|
+
onClick: g[6] || (g[6] = (f) => !a(r).length || a(e).modal.open(vn, { items: a(r) }))
|
|
7648
7648
|
}, [
|
|
7649
7649
|
W(a(uo), {
|
|
7650
7650
|
class: ne(a(r).length ? "vf-toolbar-icon" : "vf-toolbar-icon-disabled")
|
|
@@ -7656,7 +7656,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7656
7656
|
key: 0,
|
|
7657
7657
|
class: "mx-1.5",
|
|
7658
7658
|
title: a(n)("Search Files"),
|
|
7659
|
-
onClick:
|
|
7659
|
+
onClick: g[7] || (g[7] = (f) => a(e).modal.open(rn))
|
|
7660
7660
|
}, [
|
|
7661
7661
|
W(a(ln), { class: "vf-toolbar-icon text-(--vf-bg-primary)" })
|
|
7662
7662
|
], 8, dv)) : j("", !0),
|
|
@@ -7664,7 +7664,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7664
7664
|
o("div", {
|
|
7665
7665
|
title: a(n)("Filter"),
|
|
7666
7666
|
class: "vuefinder__toolbar__dropdown-trigger",
|
|
7667
|
-
onClick:
|
|
7667
|
+
onClick: g[8] || (g[8] = (f) => y.value = !y.value)
|
|
7668
7668
|
}, [
|
|
7669
7669
|
o("div", vv, [
|
|
7670
7670
|
W(a(Ju), { class: "vf-toolbar-icon vuefinder__toolbar__icon h-6 w-6" }),
|
|
@@ -7677,7 +7677,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7677
7677
|
o("div", hv, w(a(n)("Sorting")), 1),
|
|
7678
7678
|
o("div", gv, [
|
|
7679
7679
|
he(o("select", {
|
|
7680
|
-
"onUpdate:modelValue":
|
|
7680
|
+
"onUpdate:modelValue": g[9] || (g[9] = (f) => p.value.sortBy = f),
|
|
7681
7681
|
class: "vuefinder__toolbar__dropdown-select"
|
|
7682
7682
|
}, [
|
|
7683
7683
|
o("option", yv, w(a(n)("Name")), 1),
|
|
@@ -7687,7 +7687,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7687
7687
|
[jt, p.value.sortBy]
|
|
7688
7688
|
]),
|
|
7689
7689
|
he(o("select", {
|
|
7690
|
-
"onUpdate:modelValue":
|
|
7690
|
+
"onUpdate:modelValue": g[10] || (g[10] = (f) => p.value.sortOrder = f),
|
|
7691
7691
|
class: "vuefinder__toolbar__dropdown-select"
|
|
7692
7692
|
}, [
|
|
7693
7693
|
o("option", kv, w(a(n)("None")), 1),
|
|
@@ -7703,7 +7703,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7703
7703
|
o("div", Fv, [
|
|
7704
7704
|
o("label", Ev, [
|
|
7705
7705
|
he(o("input", {
|
|
7706
|
-
"onUpdate:modelValue":
|
|
7706
|
+
"onUpdate:modelValue": g[11] || (g[11] = (f) => p.value.filterKind = f),
|
|
7707
7707
|
type: "radio",
|
|
7708
7708
|
name: "filterKind",
|
|
7709
7709
|
value: "all",
|
|
@@ -7715,7 +7715,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7715
7715
|
]),
|
|
7716
7716
|
o("label", Pv, [
|
|
7717
7717
|
he(o("input", {
|
|
7718
|
-
"onUpdate:modelValue":
|
|
7718
|
+
"onUpdate:modelValue": g[12] || (g[12] = (f) => p.value.filterKind = f),
|
|
7719
7719
|
type: "radio",
|
|
7720
7720
|
name: "filterKind",
|
|
7721
7721
|
value: "files",
|
|
@@ -7727,7 +7727,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7727
7727
|
]),
|
|
7728
7728
|
o("label", Mv, [
|
|
7729
7729
|
he(o("input", {
|
|
7730
|
-
"onUpdate:modelValue":
|
|
7730
|
+
"onUpdate:modelValue": g[13] || (g[13] = (f) => p.value.filterKind = f),
|
|
7731
7731
|
type: "radio",
|
|
7732
7732
|
name: "filterKind",
|
|
7733
7733
|
value: "folders",
|
|
@@ -7743,7 +7743,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7743
7743
|
o("label", Ov, w(a(n)("Show hidden files")), 1),
|
|
7744
7744
|
he(o("input", {
|
|
7745
7745
|
id: "showHidden",
|
|
7746
|
-
"onUpdate:modelValue":
|
|
7746
|
+
"onUpdate:modelValue": g[14] || (g[14] = (f) => p.value.showHidden = f),
|
|
7747
7747
|
type: "checkbox",
|
|
7748
7748
|
class: "vuefinder__toolbar__checkbox"
|
|
7749
7749
|
}, null, 512), [
|
|
@@ -7763,7 +7763,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7763
7763
|
key: 1,
|
|
7764
7764
|
class: "mx-1.5",
|
|
7765
7765
|
title: a(n)("Toggle Full Screen"),
|
|
7766
|
-
onClick:
|
|
7766
|
+
onClick: g[15] || (g[15] = (f) => a(l).toggle("fullScreen"))
|
|
7767
7767
|
}, [
|
|
7768
7768
|
a(d).fullScreen ? (c(), X(a(Hu), {
|
|
7769
7769
|
key: 0,
|
|
@@ -7776,7 +7776,7 @@ const Ju = { render: Qu }, Zu = { class: "vuefinder__toolbar" }, ev = { class: "
|
|
|
7776
7776
|
o("div", {
|
|
7777
7777
|
class: "mx-1.5",
|
|
7778
7778
|
title: a(n)("Change View"),
|
|
7779
|
-
onClick:
|
|
7779
|
+
onClick: g[16] || (g[16] = (f) => k())
|
|
7780
7780
|
}, [
|
|
7781
7781
|
a(d).view === "grid" ? (c(), X(a(qu), {
|
|
7782
7782
|
key: 0,
|
|
@@ -7868,50 +7868,50 @@ function Zv(s, e) {
|
|
|
7868
7868
|
const ef = { render: Zv };
|
|
7869
7869
|
function kt(s, e = []) {
|
|
7870
7870
|
const t = "vfDragEnterCounter", n = s.fs, i = se(n.selectedItems);
|
|
7871
|
-
function l(
|
|
7872
|
-
return !!(!
|
|
7871
|
+
function l(h, p) {
|
|
7872
|
+
return !!(!h || h.type !== "dir" || h.path === p || h.path.startsWith(`${p}/`) || i.value.some((b) => b.path === p ? !1 : !!(h.path === b.path || h.path.startsWith(`${b.path}/`))));
|
|
7873
7873
|
}
|
|
7874
|
-
function d(
|
|
7875
|
-
if (
|
|
7874
|
+
function d(h, p) {
|
|
7875
|
+
if (h.isExternalDrag)
|
|
7876
7876
|
return;
|
|
7877
7877
|
if (!(s.features?.move ?? !1)) {
|
|
7878
|
-
|
|
7878
|
+
h.dataTransfer && (h.dataTransfer.dropEffect = "none", h.dataTransfer.effectAllowed = "none");
|
|
7879
7879
|
return;
|
|
7880
7880
|
}
|
|
7881
|
-
|
|
7881
|
+
h.preventDefault();
|
|
7882
7882
|
const b = n.getDraggedItem();
|
|
7883
|
-
l(p, b) ?
|
|
7883
|
+
l(p, b) ? h.dataTransfer && (h.dataTransfer.dropEffect = "none", h.dataTransfer.effectAllowed = "none") : (h.dataTransfer && (h.dataTransfer.dropEffect = "copy", h.dataTransfer.effectAllowed = "all"), h.currentTarget.classList.add(...e));
|
|
7884
7884
|
}
|
|
7885
|
-
function r(
|
|
7886
|
-
if (
|
|
7885
|
+
function r(h) {
|
|
7886
|
+
if (h.isExternalDrag || !(s.features?.move ?? !1))
|
|
7887
7887
|
return;
|
|
7888
|
-
|
|
7889
|
-
const k =
|
|
7888
|
+
h.preventDefault();
|
|
7889
|
+
const k = h.currentTarget, b = Number(k.dataset[t] || 0);
|
|
7890
7890
|
k.dataset[t] = String(b + 1);
|
|
7891
7891
|
}
|
|
7892
|
-
function u(
|
|
7893
|
-
if (
|
|
7892
|
+
function u(h) {
|
|
7893
|
+
if (h.isExternalDrag || !(s.features?.move ?? !1))
|
|
7894
7894
|
return;
|
|
7895
|
-
|
|
7896
|
-
const k =
|
|
7895
|
+
h.preventDefault();
|
|
7896
|
+
const k = h.currentTarget, $ = Number(k.dataset[t] || 0) - 1;
|
|
7897
7897
|
$ <= 0 ? (delete k.dataset[t], k.classList.remove(...e)) : k.dataset[t] = String($);
|
|
7898
7898
|
}
|
|
7899
|
-
function v(
|
|
7900
|
-
if (
|
|
7901
|
-
|
|
7902
|
-
const b =
|
|
7899
|
+
function v(h, p) {
|
|
7900
|
+
if (h.isExternalDrag || !(s.features?.move ?? !1) || !p) return;
|
|
7901
|
+
h.preventDefault();
|
|
7902
|
+
const b = h.currentTarget;
|
|
7903
7903
|
delete b.dataset[t], b.classList.remove(...e);
|
|
7904
|
-
const $ =
|
|
7904
|
+
const $ = h.dataTransfer?.getData("items") || "[]", g = JSON.parse($).map(
|
|
7905
7905
|
(f) => n.sortedFiles.get().find((S) => S.path === f)
|
|
7906
7906
|
);
|
|
7907
|
-
n.clearDraggedItem(), s.modal.open(at, { items: { from:
|
|
7907
|
+
n.clearDraggedItem(), s.modal.open(at, { items: { from: g, to: p } });
|
|
7908
7908
|
}
|
|
7909
|
-
function y(
|
|
7909
|
+
function y(h) {
|
|
7910
7910
|
return {
|
|
7911
|
-
dragover: (p) => d(p,
|
|
7911
|
+
dragover: (p) => d(p, h),
|
|
7912
7912
|
dragenter: r,
|
|
7913
7913
|
dragleave: u,
|
|
7914
|
-
drop: (p) => v(p,
|
|
7914
|
+
drop: (p) => v(p, h)
|
|
7915
7915
|
};
|
|
7916
7916
|
}
|
|
7917
7917
|
return { events: y };
|
|
@@ -7922,14 +7922,14 @@ const tf = { class: "vuefinder__breadcrumb__container" }, nf = ["title"], of = [
|
|
|
7922
7922
|
}, cf = { class: "relative" }, uf = ["title", "onClick"], vf = ["title"], ff = { class: "vuefinder__breadcrumb__path-mode" }, _f = { class: "vuefinder__breadcrumb__path-mode-content" }, pf = ["title"], mf = { class: "vuefinder__breadcrumb__path-text" }, hf = ["title"], gf = ["data-theme"], yf = ["onClick"], wf = { class: "vuefinder__breadcrumb__hidden-item-content" }, bf = { class: "vuefinder__breadcrumb__hidden-item-text" }, dt = 5, Tn = 1, kf = 40, $f = /* @__PURE__ */ le({
|
|
7923
7923
|
__name: "Breadcrumb",
|
|
7924
7924
|
setup(s) {
|
|
7925
|
-
const e = ie(), t = Re(e), { t: n } = e.i18n, i = e.fs, l = e.config, d = se(l.state), r = se(i.path), u = se(i.loading), v = I(null), y = eo(0, 100),
|
|
7925
|
+
const e = ie(), t = Re(e), { t: n } = e.i18n, i = e.fs, l = e.config, d = se(l.state), r = se(i.path), u = se(i.loading), v = I(null), y = eo(0, 100), h = I(5), p = I(!1), k = I(!1), b = z(() => r.value?.breadcrumb ?? []), $ = /* @__PURE__ */ new Map();
|
|
7926
7926
|
function m(T, B) {
|
|
7927
7927
|
return T.length > B ? [T.slice(-B), T.slice(0, -B)] : [T, []];
|
|
7928
7928
|
}
|
|
7929
|
-
const
|
|
7930
|
-
() => m(b.value,
|
|
7929
|
+
const g = z(
|
|
7930
|
+
() => m(b.value, h.value)[0]
|
|
7931
7931
|
), f = z(
|
|
7932
|
-
() => m(b.value,
|
|
7932
|
+
() => m(b.value, h.value)[1]
|
|
7933
7933
|
);
|
|
7934
7934
|
function S() {
|
|
7935
7935
|
const T = b.value, B = y.value;
|
|
@@ -7946,7 +7946,7 @@ const tf = { class: "vuefinder__breadcrumb__container" }, nf = ["title"], of = [
|
|
|
7946
7946
|
}
|
|
7947
7947
|
function C() {
|
|
7948
7948
|
if (!v.value) return;
|
|
7949
|
-
const T = v.value.children, B =
|
|
7949
|
+
const T = v.value.children, B = g.value;
|
|
7950
7950
|
for (let A = 0; A < T.length; A++) {
|
|
7951
7951
|
const O = B[A]?.name;
|
|
7952
7952
|
if (!O) continue;
|
|
@@ -7956,17 +7956,17 @@ const tf = { class: "vuefinder__breadcrumb__container" }, nf = ["title"], of = [
|
|
|
7956
7956
|
}
|
|
7957
7957
|
async function F() {
|
|
7958
7958
|
if (!b.value.length) {
|
|
7959
|
-
|
|
7959
|
+
h.value = dt;
|
|
7960
7960
|
return;
|
|
7961
7961
|
}
|
|
7962
7962
|
const T = S();
|
|
7963
7963
|
if (T !== null) {
|
|
7964
|
-
|
|
7964
|
+
h.value = T;
|
|
7965
7965
|
return;
|
|
7966
7966
|
}
|
|
7967
|
-
|
|
7967
|
+
h.value = dt, await Pe(), C();
|
|
7968
7968
|
const B = S();
|
|
7969
|
-
B !== null && (
|
|
7969
|
+
B !== null && (h.value = B);
|
|
7970
7970
|
}
|
|
7971
7971
|
pe(y, F), pe(b, F, { immediate: !0 });
|
|
7972
7972
|
const E = () => {
|
|
@@ -7996,7 +7996,7 @@ const tf = { class: "vuefinder__breadcrumb__container" }, nf = ["title"], of = [
|
|
|
7996
7996
|
const ee = () => {
|
|
7997
7997
|
e.adapter.invalidateListQuery(r.value.path), e.adapter.open(r.value.path);
|
|
7998
7998
|
}, Q = () => {
|
|
7999
|
-
|
|
7999
|
+
g.value.length > 0 && e.adapter.open(
|
|
8000
8000
|
b.value[b.value.length - 2]?.path ?? (r.value?.storage ?? "local") + "://"
|
|
8001
8001
|
);
|
|
8002
8002
|
}, G = (T) => {
|
|
@@ -8086,7 +8086,7 @@ const tf = { class: "vuefinder__breadcrumb__container" }, nf = ["title"], of = [
|
|
|
8086
8086
|
ref: v,
|
|
8087
8087
|
class: "vuefinder__breadcrumb__visible-list pointer-events-none"
|
|
8088
8088
|
}, [
|
|
8089
|
-
(c(!0), _(fe, null, ge(
|
|
8089
|
+
(c(!0), _(fe, null, ge(g.value, (A, O) => (c(), _("div", { key: O }, [
|
|
8090
8090
|
B[4] || (B[4] = o("span", { class: "vuefinder__breadcrumb__separator" }, "/", -1)),
|
|
8091
8091
|
o("span", He({
|
|
8092
8092
|
class: "vuefinder__breadcrumb__item pointer-events-auto",
|
|
@@ -8284,7 +8284,7 @@ const Mn = { render: Df }, Mf = ["data-key", "data-row", "data-col", "draggable"
|
|
|
8284
8284
|
}), u = z(() => {
|
|
8285
8285
|
const G = i.selectionFilterMimeIncludes;
|
|
8286
8286
|
return !G || !G.length || t.item.type === "dir" ? !0 : t.item.mime_type ? G.some((P) => t.item.mime_type?.startsWith(P)) : !1;
|
|
8287
|
-
}), v = z(() => r.value && u.value), y = z(() => t.item.type === "dir" || v.value),
|
|
8287
|
+
}), v = z(() => r.value && u.value), y = z(() => t.item.type === "dir" || v.value), h = z(() => [
|
|
8288
8288
|
"file-item-" + t.explorerId,
|
|
8289
8289
|
t.view === "grid" ? "vf-explorer-item-grid" : "vf-explorer-item-list",
|
|
8290
8290
|
t.isSelected ? "vf-explorer-selected" : "",
|
|
@@ -8296,20 +8296,20 @@ const Mn = { render: Df }, Mf = ["data-key", "data-row", "data-col", "draggable"
|
|
|
8296
8296
|
]), p = z(() => ({
|
|
8297
8297
|
opacity: t.isDragging || l.isCut(t.item.path) || !y.value ? 0.5 : ""
|
|
8298
8298
|
})), k = I(null);
|
|
8299
|
-
let b = !1, $ = null, m = null,
|
|
8299
|
+
let b = !1, $ = null, m = null, g = !1;
|
|
8300
8300
|
const { enabled: f } = ze(), S = typeof window < "u" && ("ontouchstart" in window || navigator.maxTouchPoints > 0), C = z(() => S ? !1 : f("move")), F = () => {
|
|
8301
8301
|
$ && (clearTimeout($), $ = null), m = null;
|
|
8302
8302
|
}, E = (G) => {
|
|
8303
|
-
F(), m = G,
|
|
8304
|
-
!m || $ === null || (
|
|
8303
|
+
F(), m = G, g = !1, G.stopPropagation(), $ = setTimeout(() => {
|
|
8304
|
+
!m || $ === null || (g = !0, m.cancelable && m.preventDefault(), m.stopPropagation(), n("contextmenu", m), F());
|
|
8305
8305
|
}, 500);
|
|
8306
8306
|
}, L = (G) => {
|
|
8307
|
-
if (
|
|
8307
|
+
if (g) {
|
|
8308
8308
|
G.preventDefault(), G.stopPropagation(), F();
|
|
8309
8309
|
return;
|
|
8310
8310
|
}
|
|
8311
8311
|
setTimeout(() => {
|
|
8312
|
-
|
|
8312
|
+
g || (F(), Q(G));
|
|
8313
8313
|
}, 100);
|
|
8314
8314
|
}, q = (G) => {
|
|
8315
8315
|
if (!m) return;
|
|
@@ -8321,7 +8321,7 @@ const Mn = { render: Df }, Mf = ["data-key", "data-row", "data-col", "draggable"
|
|
|
8321
8321
|
}, Z = (G) => {
|
|
8322
8322
|
S && G.type !== "click" || n("click", G);
|
|
8323
8323
|
}, ee = (G) => {
|
|
8324
|
-
if (
|
|
8324
|
+
if (g)
|
|
8325
8325
|
return G.preventDefault(), G.stopPropagation(), !1;
|
|
8326
8326
|
n("dragstart", G);
|
|
8327
8327
|
}, Q = (G) => {
|
|
@@ -8333,7 +8333,7 @@ const Mn = { render: Df }, Mf = ["data-key", "data-row", "data-col", "draggable"
|
|
|
8333
8333
|
return b = !1, n("dblclick", G), !1;
|
|
8334
8334
|
};
|
|
8335
8335
|
return (G, P) => (c(), _("div", {
|
|
8336
|
-
class: ne(
|
|
8336
|
+
class: ne(h.value),
|
|
8337
8337
|
style: Ee(p.value),
|
|
8338
8338
|
"data-key": s.item.path,
|
|
8339
8339
|
"data-row": s.rowIndex,
|
|
@@ -8463,14 +8463,14 @@ const Mn = { render: Df }, Mf = ["data-key", "data-row", "data-col", "draggable"
|
|
|
8463
8463
|
"col-index": y,
|
|
8464
8464
|
"explorer-id": s.explorerId
|
|
8465
8465
|
}, Xe(s.dragNDropEvents(v)), {
|
|
8466
|
-
onClick: u[0] || (u[0] = (
|
|
8467
|
-
onDblclick: u[1] || (u[1] = (
|
|
8468
|
-
onContextmenu: u[2] || (u[2] = (
|
|
8469
|
-
onDragstart: u[3] || (u[3] = (
|
|
8470
|
-
onDragend: u[4] || (u[4] = (
|
|
8466
|
+
onClick: u[0] || (u[0] = (h) => n("click", h)),
|
|
8467
|
+
onDblclick: u[1] || (u[1] = (h) => n("dblclick", h)),
|
|
8468
|
+
onContextmenu: u[2] || (u[2] = (h) => n("contextmenu", h)),
|
|
8469
|
+
onDragstart: u[3] || (u[3] = (h) => n("dragstart", h)),
|
|
8470
|
+
onDragend: u[4] || (u[4] = (h) => n("dragend", h))
|
|
8471
8471
|
}), {
|
|
8472
|
-
icon: ue((
|
|
8473
|
-
De(r.$slots, "icon", He({ ref_for: !0 },
|
|
8472
|
+
icon: ue((h) => [
|
|
8473
|
+
De(r.$slots, "icon", He({ ref_for: !0 }, h))
|
|
8474
8474
|
]),
|
|
8475
8475
|
_: 3
|
|
8476
8476
|
}, 16, ["item", "view", "show-thumbnails", "show-path", "is-selected", "is-dragging", "row-index", "col-index", "explorer-id"]))), 128))
|
|
@@ -8571,9 +8571,9 @@ function t_(s, e) {
|
|
|
8571
8571
|
overscan: l = 2,
|
|
8572
8572
|
containerPadding: d = 48,
|
|
8573
8573
|
lockItemsPerRow: r
|
|
8574
|
-
} = e, u = s, v = () => typeof i == "number" ? i : i.value, y = () => n ? typeof n == "number" ? n : n.value : 100,
|
|
8574
|
+
} = e, u = s, v = () => typeof i == "number" ? i : i.value, y = () => n ? typeof n == "number" ? n : n.value : 100, h = () => d ? typeof d == "number" ? d : d.value : 0, p = I(0), k = I(6), b = I(600);
|
|
8575
8575
|
let $ = null;
|
|
8576
|
-
const m = z(() => Math.ceil(u.value.length / k.value)),
|
|
8576
|
+
const m = z(() => Math.ceil(u.value.length / k.value)), g = z(() => m.value * v()), f = z(() => {
|
|
8577
8577
|
const Q = v(), G = Math.max(0, Math.floor(p.value / Q) - l), P = Math.min(
|
|
8578
8578
|
m.value,
|
|
8579
8579
|
Math.ceil((p.value + b.value) / Q) + l
|
|
@@ -8588,7 +8588,7 @@ function t_(s, e) {
|
|
|
8588
8588
|
return;
|
|
8589
8589
|
}
|
|
8590
8590
|
if (t.value) {
|
|
8591
|
-
const Q =
|
|
8591
|
+
const Q = h(), G = t.value.clientWidth - Q, P = y();
|
|
8592
8592
|
P > 0 && (k.value = Math.max(Math.floor(G / P), 2));
|
|
8593
8593
|
}
|
|
8594
8594
|
}, L = (Q) => {
|
|
@@ -8638,7 +8638,7 @@ function t_(s, e) {
|
|
|
8638
8638
|
scrollTop: p,
|
|
8639
8639
|
itemsPerRow: k,
|
|
8640
8640
|
totalRows: m,
|
|
8641
|
-
totalHeight:
|
|
8641
|
+
totalHeight: g,
|
|
8642
8642
|
visibleRange: f,
|
|
8643
8643
|
visibleRows: S,
|
|
8644
8644
|
updateItemsPerRow: E,
|
|
@@ -8659,12 +8659,12 @@ function n_(s) {
|
|
|
8659
8659
|
rowHeight: d,
|
|
8660
8660
|
itemWidth: r,
|
|
8661
8661
|
osInstance: u
|
|
8662
|
-
} = s, v = () => typeof r == "number" ? r : r.value, y = Math.floor(Math.random() * 2 ** 32).toString(),
|
|
8662
|
+
} = s, v = () => typeof r == "number" ? r : r.value, y = Math.floor(Math.random() * 2 ** 32).toString(), h = ie(), p = h.fs, k = se(p.selectedKeys), b = se(p.sortedFiles), $ = z(() => {
|
|
8663
8663
|
const R = /* @__PURE__ */ new Map();
|
|
8664
8664
|
return b.value && b.value.forEach((x) => {
|
|
8665
8665
|
R.set(i(x), x);
|
|
8666
8666
|
}), R;
|
|
8667
|
-
}), m = I(/* @__PURE__ */ new Set()),
|
|
8667
|
+
}), m = I(/* @__PURE__ */ new Set()), g = I(!1), f = I(!1), S = (R) => R.map((x) => x.getAttribute("data-key")).filter((x) => !!x), C = (R) => {
|
|
8668
8668
|
R.selection.clearSelection(!0, !0);
|
|
8669
8669
|
}, F = (R) => {
|
|
8670
8670
|
if (k.value && k.value.size > 0) {
|
|
@@ -8684,29 +8684,29 @@ function n_(s) {
|
|
|
8684
8684
|
}, E = (R) => {
|
|
8685
8685
|
const x = $.value.get(R);
|
|
8686
8686
|
if (!x) return !1;
|
|
8687
|
-
const V =
|
|
8687
|
+
const V = h.selectionFilterType, T = h.selectionFilterMimeIncludes;
|
|
8688
8688
|
return V === "files" && x.type === "dir" || V === "dirs" && x.type === "file" ? !1 : T && Array.isArray(T) && T.length > 0 ? x.type === "dir" ? !0 : x.mime_type ? T.some((B) => x.mime_type?.startsWith(B)) : !1 : !0;
|
|
8689
8689
|
}, L = (R) => {
|
|
8690
|
-
if (
|
|
8690
|
+
if (h.selectionMode === "single")
|
|
8691
8691
|
return !1;
|
|
8692
|
-
|
|
8692
|
+
g.value = !1, !R.event?.metaKey && !R.event?.ctrlKey && (f.value = !0), R.selection.resolveSelectables(), C(R), F(R);
|
|
8693
8693
|
}, q = I(0), Z = ({ event: R, selection: x }) => {
|
|
8694
|
-
q.value = (l.value?.getAreaLocation().y1 ?? 0) - (
|
|
8694
|
+
q.value = (l.value?.getAreaLocation().y1 ?? 0) - (h.root.getBoundingClientRect().top ?? 0);
|
|
8695
8695
|
const V = document.querySelector(
|
|
8696
8696
|
".selection-area-container"
|
|
8697
8697
|
);
|
|
8698
|
-
if (V && (V.dataset.theme =
|
|
8698
|
+
if (V && (V.dataset.theme = h.theme.current), h.selectionMode === "single")
|
|
8699
8699
|
return;
|
|
8700
8700
|
const T = R;
|
|
8701
8701
|
T && "type" in T && T.type === "touchend" && T.preventDefault();
|
|
8702
8702
|
const B = R;
|
|
8703
8703
|
!B?.ctrlKey && !B?.metaKey && (p.clearSelection(), x.clearSelection(!0, !0)), m.value.clear();
|
|
8704
8704
|
}, ee = (R) => {
|
|
8705
|
-
if (
|
|
8705
|
+
if (h.selectionMode === "single")
|
|
8706
8706
|
return;
|
|
8707
8707
|
const x = S(R.store.changed.added), V = S(R.store.changed.removed);
|
|
8708
|
-
f.value = !1,
|
|
8709
|
-
k.value && !k.value.has(T) && E(T) && (m.value.add(T), p.select(T,
|
|
8708
|
+
f.value = !1, g.value = !0, x.forEach((T) => {
|
|
8709
|
+
k.value && !k.value.has(T) && E(T) && (m.value.add(T), p.select(T, h.selectionMode || "multiple"));
|
|
8710
8710
|
}), V.forEach((T) => {
|
|
8711
8711
|
document.querySelector(`[data-key="${T}"]`) && $.value.has(T) && m.value.delete(T), p.deselect(T);
|
|
8712
8712
|
}), R.selection.resolveSelectables(), F(R);
|
|
@@ -8751,11 +8751,11 @@ function n_(s) {
|
|
|
8751
8751
|
const lt = i(We);
|
|
8752
8752
|
mn.get(lt) || Rt.push(lt);
|
|
8753
8753
|
}), Rt.length > 0) {
|
|
8754
|
-
const We =
|
|
8754
|
+
const We = h.selectionMode || "multiple";
|
|
8755
8755
|
p.selectMultiple(Rt, We);
|
|
8756
8756
|
}
|
|
8757
8757
|
}, P = (R) => {
|
|
8758
|
-
G(R), C(R), F(R), p.setSelectedCount(k.value?.size || 0),
|
|
8758
|
+
G(R), C(R), F(R), p.setSelectedCount(k.value?.size || 0), g.value = !1;
|
|
8759
8759
|
}, M = () => {
|
|
8760
8760
|
let R = [".scroller-" + y];
|
|
8761
8761
|
if (u?.value) {
|
|
@@ -8804,14 +8804,14 @@ function n_(s) {
|
|
|
8804
8804
|
};
|
|
8805
8805
|
return we(() => {
|
|
8806
8806
|
const R = (x) => {
|
|
8807
|
-
!x.buttons &&
|
|
8807
|
+
!x.buttons && g.value && (g.value = !1);
|
|
8808
8808
|
};
|
|
8809
8809
|
document.addEventListener("dragleave", R), Te(() => {
|
|
8810
8810
|
document.removeEventListener("dragleave", R);
|
|
8811
8811
|
});
|
|
8812
8812
|
}), {
|
|
8813
8813
|
explorerId: y,
|
|
8814
|
-
isDragging:
|
|
8814
|
+
isDragging: g,
|
|
8815
8815
|
initializeSelectionArea: M,
|
|
8816
8816
|
updateSelectionArea: Y,
|
|
8817
8817
|
handleContentClick: ce
|
|
@@ -8860,19 +8860,19 @@ function s_(s) {
|
|
|
8860
8860
|
}
|
|
8861
8861
|
function a_(s, e, t, n, i, l, d) {
|
|
8862
8862
|
const r = s.fs, { canSelectItem: u } = o_(s), { openItem: v } = s_(s), y = (m) => {
|
|
8863
|
-
const
|
|
8864
|
-
if (!
|
|
8865
|
-
const f = String(
|
|
8863
|
+
const g = m.target?.closest(".file-item-" + e);
|
|
8864
|
+
if (!g) return null;
|
|
8865
|
+
const f = String(g.getAttribute("data-key")), S = t.value?.find((C) => C.path === f);
|
|
8866
8866
|
return { key: f, item: S };
|
|
8867
|
-
},
|
|
8867
|
+
}, h = () => {
|
|
8868
8868
|
const m = n.value;
|
|
8869
|
-
return t.value?.filter((
|
|
8869
|
+
return t.value?.filter((g) => m?.has(g.path)) || [];
|
|
8870
8870
|
};
|
|
8871
8871
|
return {
|
|
8872
8872
|
handleItemClick: (m) => {
|
|
8873
|
-
const
|
|
8874
|
-
if (!
|
|
8875
|
-
const { key: f, item: S } =
|
|
8873
|
+
const g = y(m);
|
|
8874
|
+
if (!g) return;
|
|
8875
|
+
const { key: f, item: S } = g, C = m;
|
|
8876
8876
|
if (!u(S)) {
|
|
8877
8877
|
S?.type === "dir" && (r.clearSelection(), i.value?.clearSelection(!0, !0), r.setSelectedCount(0));
|
|
8878
8878
|
return;
|
|
@@ -8881,26 +8881,26 @@ function a_(s, e, t, n, i, l, d) {
|
|
|
8881
8881
|
!C?.ctrlKey && !C?.metaKey && (m.type !== "touchstart" || !r.isSelected(f)) && (r.clearSelection(), i.value?.clearSelection(!0, !0)), i.value?.resolveSelectables(), m.type === "touchstart" && r.isSelected(f) ? r.select(f, F) : r.toggleSelect(f, F), r.setSelectedCount(n.value?.size || 0);
|
|
8882
8882
|
},
|
|
8883
8883
|
handleItemDblClick: (m) => {
|
|
8884
|
-
const
|
|
8885
|
-
if (!
|
|
8886
|
-
const { item: f } =
|
|
8884
|
+
const g = y(m);
|
|
8885
|
+
if (!g) return;
|
|
8886
|
+
const { item: f } = g;
|
|
8887
8887
|
f && (f.type === "file" && !u(f) || v(f, l, d));
|
|
8888
8888
|
},
|
|
8889
8889
|
handleItemContextMenu: (m) => {
|
|
8890
8890
|
m.preventDefault(), m.stopPropagation();
|
|
8891
|
-
const
|
|
8892
|
-
if (!
|
|
8893
|
-
const { key: f, item: S } =
|
|
8891
|
+
const g = y(m);
|
|
8892
|
+
if (!g) return;
|
|
8893
|
+
const { key: f, item: S } = g;
|
|
8894
8894
|
u(S) && (n.value?.has(f) || (r.clearSelection(), r.select(f)), s.emitter.emit("vf-contextmenu-show", {
|
|
8895
8895
|
event: m,
|
|
8896
|
-
items:
|
|
8896
|
+
items: h(),
|
|
8897
8897
|
target: S
|
|
8898
8898
|
}));
|
|
8899
8899
|
},
|
|
8900
8900
|
handleContentContextMenu: (m) => {
|
|
8901
|
-
m.preventDefault(), s.emitter.emit("vf-contextmenu-show", { event: m, items:
|
|
8901
|
+
m.preventDefault(), s.emitter.emit("vf-contextmenu-show", { event: m, items: h() });
|
|
8902
8902
|
},
|
|
8903
|
-
getSelectedItems:
|
|
8903
|
+
getSelectedItems: h
|
|
8904
8904
|
};
|
|
8905
8905
|
}
|
|
8906
8906
|
function i_(s, e) {
|
|
@@ -8977,7 +8977,7 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
8977
8977
|
onFolderDclick: { type: Function }
|
|
8978
8978
|
},
|
|
8979
8979
|
setup(s) {
|
|
8980
|
-
const e = s, t = ie(), n = kt(t, ["vuefinder__drag-over"]), i = ot("dragImage"), l = ut(null), d = ot("scrollContainer"), r = ot("scrollContent"), u = t.fs, v = t.config, y = se(v.state),
|
|
8980
|
+
const e = s, t = ie(), n = kt(t, ["vuefinder__drag-over"]), i = ot("dragImage"), l = ut(null), d = ot("scrollContainer"), r = ot("scrollContent"), u = t.fs, v = t.config, y = se(v.state), h = se(u.sortedFiles), p = se(u.selectedKeys), k = se(u.loading), b = (K) => p.value?.has(K) ?? !1, $ = z(() => {
|
|
8981
8981
|
if (y.value?.view === "grid") {
|
|
8982
8982
|
const be = y.value?.gridItemHeight ?? 80, Me = y.value?.gridItemGap ?? 8;
|
|
8983
8983
|
return be + Me * 2;
|
|
@@ -8990,7 +8990,7 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
8990
8990
|
return oe + ve * 2;
|
|
8991
8991
|
}
|
|
8992
8992
|
return 104;
|
|
8993
|
-
}),
|
|
8993
|
+
}), g = z(() => y.value?.view === "grid" ? (y.value?.gridItemGap ?? 8) * 2 : 0), { t: f } = t.i18n, {
|
|
8994
8994
|
itemsPerRow: S,
|
|
8995
8995
|
totalHeight: C,
|
|
8996
8996
|
visibleRows: F,
|
|
@@ -8999,13 +8999,13 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
8999
8999
|
getItemsInRange: q,
|
|
9000
9000
|
updateItemsPerRow: Z
|
|
9001
9001
|
} = t_(
|
|
9002
|
-
z(() =>
|
|
9002
|
+
z(() => h.value ?? []),
|
|
9003
9003
|
{
|
|
9004
9004
|
scrollContainer: d,
|
|
9005
9005
|
itemWidth: m,
|
|
9006
9006
|
rowHeight: $,
|
|
9007
9007
|
overscan: 2,
|
|
9008
|
-
containerPadding:
|
|
9008
|
+
containerPadding: g,
|
|
9009
9009
|
lockItemsPerRow: z(() => y.value.view === "list")
|
|
9010
9010
|
}
|
|
9011
9011
|
), { osInstance: ee } = i_(d, E), { explorerId: Q, isDragging: G, initializeSelectionArea: P, updateSelectionArea: M, handleContentClick: U } = n_({
|
|
@@ -9031,12 +9031,12 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
9031
9031
|
), pe(S, (K) => {
|
|
9032
9032
|
v.get("view") === "list" && K !== 1 && (S.value = 1);
|
|
9033
9033
|
});
|
|
9034
|
-
const R = (K) =>
|
|
9034
|
+
const R = (K) => h.value?.[K];
|
|
9035
9035
|
d_(d, t);
|
|
9036
9036
|
const { handleItemClick: x, handleItemDblClick: V, handleItemContextMenu: T, handleContentContextMenu: B } = a_(
|
|
9037
9037
|
t,
|
|
9038
9038
|
Q,
|
|
9039
|
-
|
|
9039
|
+
h,
|
|
9040
9040
|
p,
|
|
9041
9041
|
l,
|
|
9042
9042
|
e.onFileDclick,
|
|
@@ -9137,7 +9137,7 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
9137
9137
|
"row-height": $.value,
|
|
9138
9138
|
view: "grid",
|
|
9139
9139
|
"items-per-row": a(S),
|
|
9140
|
-
items: a(L)(a(
|
|
9140
|
+
items: a(L)(a(h), ve),
|
|
9141
9141
|
"show-thumbnails": a(y).showThumbnails,
|
|
9142
9142
|
"is-dragging-item": ce,
|
|
9143
9143
|
"is-selected": b,
|
|
@@ -9191,18 +9191,18 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
9191
9191
|
e.emitter.on("vf-context-selected", (k) => {
|
|
9192
9192
|
n.value = k;
|
|
9193
9193
|
});
|
|
9194
|
-
const y = (k) => k.link(e, n.value),
|
|
9194
|
+
const y = (k) => k.link(e, n.value), h = (k) => {
|
|
9195
9195
|
e.emitter.emit("vf-contextmenu-hide"), k.action(e, n.value);
|
|
9196
9196
|
};
|
|
9197
9197
|
e.emitter.on("vf-contextmenu-show", (k) => {
|
|
9198
9198
|
const { event: b, items: $, target: m = null } = k || {};
|
|
9199
|
-
v.items = (e.contextMenuItems || []).filter((
|
|
9199
|
+
v.items = (e.contextMenuItems || []).filter((g) => g.show(e, {
|
|
9200
9200
|
items: $,
|
|
9201
9201
|
target: m
|
|
9202
|
-
})).sort((
|
|
9203
|
-
const S =
|
|
9202
|
+
})).sort((g, f) => {
|
|
9203
|
+
const S = g.order ?? 1 / 0, C = f.order ?? 1 / 0;
|
|
9204
9204
|
return S - C;
|
|
9205
|
-
}), m ? $.length > 1 && $.some((
|
|
9205
|
+
}), m ? $.length > 1 && $.some((g) => g.path === m.path) ? e.emitter.emit("vf-context-selected", $) : e.emitter.emit("vf-context-selected", [m]) : e.emitter.emit("vf-context-selected", []), p(b);
|
|
9206
9206
|
}), e.emitter.on("vf-contextmenu-hide", () => {
|
|
9207
9207
|
v.active = !1, i && (i(), i = null), d && (r.forEach((k) => {
|
|
9208
9208
|
k === window ? window.removeEventListener("scroll", d, !0) : k.removeEventListener("scroll", d, !0);
|
|
@@ -9248,14 +9248,14 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
9248
9248
|
}),
|
|
9249
9249
|
pt({ padding: 16 })
|
|
9250
9250
|
];
|
|
9251
|
-
let
|
|
9251
|
+
let g = 0, f = 0;
|
|
9252
9252
|
try {
|
|
9253
9253
|
const E = await st(l, t.value, {
|
|
9254
9254
|
placement: "right-start",
|
|
9255
9255
|
strategy: "fixed",
|
|
9256
9256
|
middleware: m
|
|
9257
9257
|
});
|
|
9258
|
-
|
|
9258
|
+
g = E.x, f = E.y;
|
|
9259
9259
|
} catch (E) {
|
|
9260
9260
|
console.warn("[ContextMenu] Floating UI initial positioning error:", E);
|
|
9261
9261
|
return;
|
|
@@ -9263,7 +9263,7 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
9263
9263
|
v.positions = {
|
|
9264
9264
|
position: "fixed",
|
|
9265
9265
|
zIndex: "10001",
|
|
9266
|
-
left: `${
|
|
9266
|
+
left: `${g}px`,
|
|
9267
9267
|
top: `${f}px`,
|
|
9268
9268
|
opacity: "0",
|
|
9269
9269
|
visibility: "visible",
|
|
@@ -9370,7 +9370,7 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
9370
9370
|
}, [
|
|
9371
9371
|
o("div", {
|
|
9372
9372
|
class: "vuefinder__context-menu__action",
|
|
9373
|
-
onClick: (
|
|
9373
|
+
onClick: (g) => h(m)
|
|
9374
9374
|
}, [
|
|
9375
9375
|
o("span", null, w(m.title(a(e).i18n)), 1)
|
|
9376
9376
|
], 8, m_)
|
|
@@ -9379,7 +9379,7 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
9379
9379
|
], 64)) : (c(), _("div", {
|
|
9380
9380
|
key: 2,
|
|
9381
9381
|
class: "vuefinder__context-menu__action",
|
|
9382
|
-
onClick: (m) =>
|
|
9382
|
+
onClick: (m) => h($)
|
|
9383
9383
|
}, [
|
|
9384
9384
|
o("span", null, w($.title(a(e).i18n)), 1)
|
|
9385
9385
|
], 8, h_))
|
|
@@ -9395,10 +9395,10 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
9395
9395
|
__name: "Statusbar",
|
|
9396
9396
|
setup(s) {
|
|
9397
9397
|
const e = ie(), { t } = e.i18n, n = e.fs, i = se(n.sortedFiles), l = se(n.path), d = se(n.selectedCount), r = se(n.storages), u = se(n.selectedItems), v = se(n.path), y = (m) => {
|
|
9398
|
-
const
|
|
9399
|
-
e.adapter.open(
|
|
9400
|
-
},
|
|
9401
|
-
return (m,
|
|
9398
|
+
const g = m.target.value;
|
|
9399
|
+
e.adapter.open(g + "://");
|
|
9400
|
+
}, h = z(() => !u.value || u.value.length === 0 ? 0 : u.value.reduce((m, g) => m + (g.file_size || 0), 0)), p = z(() => r.value), k = z(() => i.value), b = z(() => d.value || 0), $ = z(() => u.value || []);
|
|
9401
|
+
return (m, g) => (c(), _("div", y_, [
|
|
9402
9402
|
o("div", w_, [
|
|
9403
9403
|
o("div", {
|
|
9404
9404
|
class: "vuefinder__status-bar__storage-container",
|
|
@@ -9419,7 +9419,7 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
9419
9419
|
value: f
|
|
9420
9420
|
}, w(f), 9, x_))), 128))
|
|
9421
9421
|
], 40, $_),
|
|
9422
|
-
|
|
9422
|
+
g[0] || (g[0] = o("span", {
|
|
9423
9423
|
class: "vuefinder__status-bar__storage-caret",
|
|
9424
9424
|
"aria-hidden": "true"
|
|
9425
9425
|
}, null, -1))
|
|
@@ -9427,7 +9427,7 @@ const c_ = { class: "vuefinder__explorer__container" }, u_ = {
|
|
|
9427
9427
|
o("div", S_, [
|
|
9428
9428
|
b.value === 0 ? (c(), _("span", C_, w(k.value.length) + " " + w(a(t)("items")), 1)) : (c(), _("span", F_, [
|
|
9429
9429
|
ye(w(b.value) + " " + w(a(t)("selected")) + " ", 1),
|
|
9430
|
-
|
|
9430
|
+
h.value ? (c(), _("span", E_, w(a(e).filesize(h.value)), 1)) : j("", !0)
|
|
9431
9431
|
]))
|
|
9432
9432
|
])
|
|
9433
9433
|
]),
|
|
@@ -9516,7 +9516,7 @@ const A_ = { class: "vuefinder__folder-loader-indicator" }, O_ = {
|
|
|
9516
9516
|
path: {}
|
|
9517
9517
|
},
|
|
9518
9518
|
setup(s) {
|
|
9519
|
-
const e = ie(), t = e.fs, n = kt(e, ["vuefinder__drag-over"]), i = I({}), l = e.config, d = se(l.state), { t: r } = e.i18n, u = se(t.path), v = s, y = I(null),
|
|
9519
|
+
const e = ie(), t = e.fs, n = kt(e, ["vuefinder__drag-over"]), i = I({}), l = e.config, d = se(l.state), { t: r } = e.i18n, u = se(t.path), v = s, y = I(null), h = I(50);
|
|
9520
9520
|
we(() => {
|
|
9521
9521
|
v.path === v.storage + "://" && y.value && vt(y.value, {
|
|
9522
9522
|
scrollbars: {
|
|
@@ -9526,8 +9526,8 @@ const A_ = { class: "vuefinder__folder-loader-indicator" }, O_ = {
|
|
|
9526
9526
|
});
|
|
9527
9527
|
const p = z(() => {
|
|
9528
9528
|
const S = e.treeViewData.find((C) => C.path === v.path)?.folders || [];
|
|
9529
|
-
return S.length >
|
|
9530
|
-
}), k = z(() => e.treeViewData.find((S) => S.path === v.path)?.folders?.length || 0), b = z(() => k.value >
|
|
9529
|
+
return S.length > h.value ? S.slice(0, h.value) : S;
|
|
9530
|
+
}), k = z(() => e.treeViewData.find((S) => S.path === v.path)?.folders?.length || 0), b = z(() => k.value > h.value), $ = z(() => `${v.storage}://`), m = (f, S) => f === S || f.startsWith(`${S}/`);
|
|
9531
9531
|
pe(
|
|
9532
9532
|
p,
|
|
9533
9533
|
(f) => {
|
|
@@ -9541,8 +9541,8 @@ const A_ = { class: "vuefinder__folder-loader-indicator" }, O_ = {
|
|
|
9541
9541
|
},
|
|
9542
9542
|
{ immediate: !0 }
|
|
9543
9543
|
);
|
|
9544
|
-
const
|
|
9545
|
-
|
|
9544
|
+
const g = () => {
|
|
9545
|
+
h.value += 50;
|
|
9546
9546
|
};
|
|
9547
9547
|
return (f, S) => {
|
|
9548
9548
|
const C = Rn("TreeSubfolderList", !0);
|
|
@@ -9616,7 +9616,7 @@ const A_ = { class: "vuefinder__folder-loader-indicator" }, O_ = {
|
|
|
9616
9616
|
b.value ? (c(), _("li", H_, [
|
|
9617
9617
|
o("div", {
|
|
9618
9618
|
class: "vuefinder__treesubfolderlist__load-more",
|
|
9619
|
-
onClick:
|
|
9619
|
+
onClick: g
|
|
9620
9620
|
}, w(a(r)("load more")), 1)
|
|
9621
9621
|
])) : j("", !0)
|
|
9622
9622
|
], 512);
|
|
@@ -9643,7 +9643,7 @@ const A_ = { class: "vuefinder__folder-loader-indicator" }, O_ = {
|
|
|
9643
9643
|
(k.expandTreeByDefault || k.hasExpandedPathInStorage) && (r.value = !0);
|
|
9644
9644
|
}
|
|
9645
9645
|
);
|
|
9646
|
-
const
|
|
9646
|
+
const h = {
|
|
9647
9647
|
storage: i.storage,
|
|
9648
9648
|
path: i.storage + "://",
|
|
9649
9649
|
dir: i.storage + "://",
|
|
@@ -9665,7 +9665,7 @@ const A_ = { class: "vuefinder__folder-loader-indicator" }, O_ = {
|
|
|
9665
9665
|
}, [
|
|
9666
9666
|
o("div", He({
|
|
9667
9667
|
class: ["vuefinder__treestorageitem__info", y.value ? "vuefinder__treestorageitem__info--active" : ""]
|
|
9668
|
-
}, Xe(a(u).events(
|
|
9668
|
+
}, Xe(a(u).events(h), !0)), [
|
|
9669
9669
|
o("div", {
|
|
9670
9670
|
class: ne(["vuefinder__treestorageitem__icon", y.value ? "vuefinder__treestorageitem__icon--active" : ""])
|
|
9671
9671
|
}, [
|
|
@@ -9725,12 +9725,12 @@ const A_ = { class: "vuefinder__folder-loader-indicator" }, O_ = {
|
|
|
9725
9725
|
}, Z_ = ["onClick"], ep = ["title"], tp = ["onClick"], np = { key: 0 }, op = { class: "vuefinder__treeview__no-pinned" }, sp = /* @__PURE__ */ le({
|
|
9726
9726
|
__name: "TreeView",
|
|
9727
9727
|
setup(s) {
|
|
9728
|
-
const e = ie(), { enabled: t } = ze(), { t: n } = e.i18n, { getStore: i, setStore: l } = e.storage, d = e.fs, r = e.config, u = se(r.state), v = se(d.sortedFiles), y = se(d.storages),
|
|
9728
|
+
const e = ie(), { enabled: t } = ze(), { t: n } = e.i18n, { getStore: i, setStore: l } = e.storage, d = e.fs, r = e.config, u = se(r.state), v = se(d.sortedFiles), y = se(d.storages), h = z(() => y.value || []), p = se(d.path), k = kt(e, ["vuefinder__drag-over"]), b = I(190), $ = I(i("pinned-folders-opened", !0));
|
|
9729
9729
|
pe($, (S) => l("pinned-folders-opened", S));
|
|
9730
9730
|
const m = (S) => {
|
|
9731
9731
|
const C = r.get("pinnedFolders");
|
|
9732
9732
|
r.set("pinnedFolders", C.filter((F) => F.path !== S.path));
|
|
9733
|
-
},
|
|
9733
|
+
}, g = (S) => {
|
|
9734
9734
|
const C = S.clientX, F = S.target.parentElement;
|
|
9735
9735
|
if (!F) return;
|
|
9736
9736
|
const E = F.getBoundingClientRect().width;
|
|
@@ -9828,7 +9828,7 @@ const A_ = { class: "vuefinder__folder-loader-indicator" }, O_ = {
|
|
|
9828
9828
|
]))
|
|
9829
9829
|
])) : j("", !0)
|
|
9830
9830
|
])) : j("", !0),
|
|
9831
|
-
(c(!0), _(fe, null, ge(
|
|
9831
|
+
(c(!0), _(fe, null, ge(h.value, (F) => (c(), _("div", {
|
|
9832
9832
|
key: F,
|
|
9833
9833
|
class: "vuefinder__treeview__storage"
|
|
9834
9834
|
}, [
|
|
@@ -9837,7 +9837,7 @@ const A_ = { class: "vuefinder__folder-loader-indicator" }, O_ = {
|
|
|
9837
9837
|
], 512),
|
|
9838
9838
|
o("div", {
|
|
9839
9839
|
class: "vuefinder__treeview__resize-handle",
|
|
9840
|
-
onMousedown:
|
|
9840
|
+
onMousedown: g
|
|
9841
9841
|
}, null, 32)
|
|
9842
9842
|
], 4)
|
|
9843
9843
|
], 64));
|
|
@@ -10169,7 +10169,7 @@ const mo = [
|
|
|
10169
10169
|
};
|
|
10170
10170
|
});
|
|
10171
10171
|
Md();
|
|
10172
|
-
const { isDraggingExternal:
|
|
10172
|
+
const { isDraggingExternal: h, handleDragEnter: p, handleDragOver: k, handleDragLeave: b, handleDrop: $ } = Id();
|
|
10173
10173
|
function m(f) {
|
|
10174
10174
|
r.setPath(f.dirname), d.get("persist") && d.set("path", f.dirname), r.setReadOnly(f.read_only ?? !1), i.modal.close(), r.setFiles(f.files), r.clearSelection(), r.setSelectedCount(0), r.setStorages(f.storages);
|
|
10175
10175
|
}
|
|
@@ -10217,7 +10217,7 @@ const mo = [
|
|
|
10217
10217
|
t("select", S);
|
|
10218
10218
|
}), t("ready");
|
|
10219
10219
|
});
|
|
10220
|
-
const
|
|
10220
|
+
const g = async (f) => {
|
|
10221
10221
|
const S = await $(f);
|
|
10222
10222
|
S.length > 0 && (i.modal.open(cn), setTimeout(() => {
|
|
10223
10223
|
i.emitter.emit(
|
|
@@ -10230,7 +10230,7 @@ const mo = [
|
|
|
10230
10230
|
ref_key: "root",
|
|
10231
10231
|
ref: l,
|
|
10232
10232
|
tabindex: "0",
|
|
10233
|
-
class: ne(["vuefinder vuefinder__main vuefinder__themer", { "vuefinder--dragging-external": a(
|
|
10233
|
+
class: ne(["vuefinder vuefinder__main vuefinder__themer", { "vuefinder--dragging-external": a(h) }]),
|
|
10234
10234
|
"data-theme": a(i).theme.current,
|
|
10235
10235
|
style: Ee(y.value),
|
|
10236
10236
|
onDragenter: S[2] || (S[2] = //@ts-ignore
|
|
@@ -10239,7 +10239,7 @@ const mo = [
|
|
|
10239
10239
|
(...C) => a(k) && a(k)(...C)),
|
|
10240
10240
|
onDragleave: S[4] || (S[4] = //@ts-ignore
|
|
10241
10241
|
(...C) => a(b) && a(b)(...C)),
|
|
10242
|
-
onDrop:
|
|
10242
|
+
onDrop: g
|
|
10243
10243
|
}, [
|
|
10244
10244
|
o("div", {
|
|
10245
10245
|
class: ne(a(i).theme.current),
|
|
@@ -10253,7 +10253,7 @@ const mo = [
|
|
|
10253
10253
|
onMousedown: S[0] || (S[0] = (C) => a(i).emitter.emit("vf-contextmenu-hide")),
|
|
10254
10254
|
onTouchstart: S[1] || (S[1] = (C) => a(i).emitter.emit("vf-contextmenu-hide"))
|
|
10255
10255
|
}, [
|
|
10256
|
-
a(
|
|
10256
|
+
a(h) ? (c(), _("div", lp, [
|
|
10257
10257
|
o("div", rp, w(a(i).i18n.t("Drag and drop the files/folders to here.")), 1)
|
|
10258
10258
|
])) : j("", !0),
|
|
10259
10259
|
a(v).showMenuBar ? (c(), X(Ru, { key: 1 })) : j("", !0),
|