File size: 873 Bytes
0ad74ed |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
<script lang="ts">
import type { FileData } from "@gradio/client";
export let value: null | FileData;
export let type: "gallery" | "table";
export let selected = false;
</script>
{#if value}
<div
class="container"
class:table={type === "table"}
class:gallery={type === "gallery"}
class:selected
>
<img src={value.url} alt="" />
</div>
{/if}
<style>
.container :global(img) {
width: 100%;
height: 100%;
}
.container.selected {
border-color: var(--border-color-accent);
}
.container.table {
margin: 0 auto;
border: 2px solid var(--border-color-primary);
border-radius: var(--radius-lg);
overflow: hidden;
width: var(--size-20);
height: var(--size-20);
object-fit: cover;
}
.container.gallery {
height: var(--size-20);
max-height: var(--size-20);
object-fit: cover;
}
.container img {
object-fit: cover;
}
</style>
|