This commit is contained in:
Anaïs Saraiva
2026-08-15 00:28:32 +02:00
parent 5f201cf725
commit 954384d1e4
14 changed files with 393 additions and 37 deletions
+14 -1
View File
@@ -6,6 +6,7 @@ const STORAGE_KEY = "filehost.uploads";
const dropzone = $("dropzone");
const fileInput = $("fileInput");
const pwInput = $("pwInput");
const progress = $("progress");
const progressBar = $("progressBar");
const progressPct = $("progressPct");
@@ -14,6 +15,7 @@ const result = $("result");
const resultUrl = $("resultUrl");
const resultName = $("resultName");
const resultSize = $("resultSize");
const resultLock = $("resultLock");
const copyBtn = $("copyBtn");
const deleteBtn = $("deleteBtn");
const againBtn = $("againBtn");
@@ -57,10 +59,12 @@ function reset() {
uploading = false;
current = null;
result.classList.add("hidden");
resultLock.classList.add("hidden");
progress.classList.add("hidden");
progressBar.style.width = "0%";
progressPct.textContent = "0%";
fileInput.value = "";
pwInput.value = "";
clearNotice();
}
@@ -160,6 +164,13 @@ function renderList() {
name.textContent = item.originalName;
name.title = item.originalName;
if (item.protected) {
const lock = document.createElement("span");
lock.className = "lock";
lock.textContent = "Password protected";
name.appendChild(lock);
}
const sub = document.createElement("span");
sub.className = "file-item-sub";
let subText = formatBytes(item.size || 0);
@@ -182,7 +193,6 @@ function renderList() {
dl.className = "btn-link";
dl.href = downloadUrl(item);
dl.textContent = "Download";
dl.setAttribute("download", "");
dl.title = "Open download link";
const copy = document.createElement("button");
@@ -243,6 +253,7 @@ function showResult(data) {
resultName.textContent = data.originalName;
resultSize.textContent = formatBytes(data.size);
resultUrl.value = downloadUrl(data);
resultLock.classList.toggle("hidden", !data.protected);
current = data;
addUpload({
id: data.id,
@@ -250,6 +261,7 @@ function showResult(data) {
url: data.url,
originalName: data.originalName,
size: data.size,
protected: !!data.protected,
createdAt: new Date().toISOString(),
});
}
@@ -264,6 +276,7 @@ function startUpload(file) {
const xhr = new XMLHttpRequest();
const form = new FormData();
if (pwInput.value) form.append("password", pwInput.value);
form.append("file", file);
xhr.upload.addEventListener("progress", (e) => {