function getCurlCommand({ full = true } = {}) { const args = []; const selectedFiles = files.length ? files : [{ displayName: "build.zip" }]; const previewLimit = full ? selectedFiles.length : 4; selectedFiles.slice(0, previewLimit).forEach((item) => args.push(` -F ${shellQuote(`files=@${item.displayName}`)}`)); const hiddenFileCount = !full && selectedFiles.length > previewLimit ? selectedFiles.length - previewLimit : 0; args.push(` -F ${shellQuote(`retention=${el.expiry?.value || defaultRetention}`)}`); if (el.password?.value) args.push(` -F ${shellQuote("password=YOUR_PASSWORD")}`); if (el.allowZip && !el.allowZip.checked) args.push(` -F ${shellQuote("allow_zip=false")}`); const commandLines = ["curl"]; if (el.apiKeyMode?.checked) commandLines.push(` -H ${shellQuote("Authorization: Bearer YOUR_API_KEY")}`); commandLines.push(...args, ` ${window.location.origin}/upload`); const command = commandLines.join(" \\\n"); return hiddenFileCount ? `${command}\n# and ${hiddenFileCount} other files included when copying` : command; } function updateTerminal() { if (!el.terminal) return; const command = getCurlCommand({ full: false }); el.terminal.innerHTML = `warpbox@cli:~$ ${htmlEscape(command)}`; }