Files
pocketbase/ui/src/components/base/UploadedFilePreview.svelte
T
2022-07-07 00:19:05 +03:00

33 lines
834 B
Svelte

<script>
import CommonHelper from "@/utils/CommonHelper";
export let file; // File() instance
export let size = 50; // preview thumb size (if file is image)
$: if (typeof file !== "undefined") {
loadPreviewUrl();
}
$: previewUrl = "";
function loadPreviewUrl() {
previewUrl = "";
if (CommonHelper.hasImageExtension(file?.name)) {
CommonHelper.generateThumb(file, size, size)
.then((url) => {
previewUrl = url;
})
.catch((err) => {
console.warn("Unable to generate thumb: ", err);
});
}
}
</script>
{#if previewUrl}
<img src={previewUrl} width={size} height={size} alt={file.name} />
{:else}
<i class="ri-file-line" alt={file.name} />
{/if}