[ui] omit blobpreview if missing
This commit is contained in:
parent
a4caf9b8b3
commit
c95fc3518a
1 changed files with 29 additions and 22 deletions
|
@ -6,30 +6,37 @@
|
||||||
$: ({ entity } = useEntity(address));
|
$: ({ entity } = useEntity(address));
|
||||||
|
|
||||||
$: mimeType = String($entity?.get("FILE_MIME"));
|
$: mimeType = String($entity?.get("FILE_MIME"));
|
||||||
|
$: handled =
|
||||||
|
Boolean(mimeType) &&
|
||||||
|
["audio", "video", "image", "model"].some((prefix) =>
|
||||||
|
mimeType.startsWith(prefix)
|
||||||
|
);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div class="preview" v-if="mimeType">
|
{#if handled}
|
||||||
{#if mimeType?.startsWith("audio")}
|
<div class="preview">
|
||||||
<audio controls preload="auto" src="/api/raw/{address}" />
|
{#if mimeType?.startsWith("audio")}
|
||||||
{/if}
|
<audio controls preload="auto" src="/api/raw/{address}" />
|
||||||
{#if mimeType?.startsWith("video")}
|
{/if}
|
||||||
<!-- svelte-ignore a11y-media-has-caption -->
|
{#if mimeType?.startsWith("video")}
|
||||||
<video
|
<!-- svelte-ignore a11y-media-has-caption -->
|
||||||
controls
|
<video
|
||||||
preload="auto"
|
controls
|
||||||
src="/api/raw/{address}"
|
preload="auto"
|
||||||
poster="/api/thumb/{address}"
|
src="/api/raw/{address}"
|
||||||
/>
|
poster="/api/thumb/{address}"
|
||||||
{/if}
|
/>
|
||||||
{#if mimeType?.startsWith("image")}
|
{/if}
|
||||||
<a target="_blank" href="/api/raw/{address}">
|
{#if mimeType?.startsWith("image")}
|
||||||
<img src="/api/raw/{address}" alt={address} />
|
<a target="_blank" href="/api/raw/{address}">
|
||||||
</a>
|
<img src="/api/raw/{address}" alt={address} />
|
||||||
{/if}
|
</a>
|
||||||
{#if mimeType?.startsWith("model")}
|
{/if}
|
||||||
<ModelViewer src="/api/raw/{address}" />
|
{#if mimeType?.startsWith("model")}
|
||||||
{/if}
|
<ModelViewer src="/api/raw/{address}" />
|
||||||
</div>
|
{/if}
|
||||||
|
</div>
|
||||||
|
{/if}
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.preview {
|
.preview {
|
||||||
|
|
Loading…
Reference in a new issue