UNPKG

tldraw

Version:

A tiny little drawing editor.

40 lines (39 loc) 1.08 kB
function getLocalFiles(options) { return new Promise((resolve) => { const { allowMultiple = true, mimeTypes = [] } = options || {}; const input = document.createElement("input"); input.type = "file"; input.accept = mimeTypes?.join(","); input.multiple = allowMultiple; input.style.display = "none"; function dispose() { input.removeEventListener("change", onchange); input.removeEventListener("cancel", oncancel); input.remove(); } async function onchange(e) { const fileList = e.target.files; if (!fileList || fileList.length === 0) { resolve([]); dispose(); return; } const files = Array.from(fileList); input.value = ""; resolve(files); dispose(); } function oncancel() { resolve([]); dispose(); } document.body.appendChild(input); input.addEventListener("cancel", oncancel); input.addEventListener("change", onchange); input?.click(); }); } export { getLocalFiles }; //# sourceMappingURL=getLocalFiles.mjs.map