pinafore/routes/_components/dialog/components/ImageDialog.html

50 lines
985 B
HTML
Raw Normal View History

<ModalDialog
{id}
{label}
background="var(--muted-modal-bg)"
muted="true"
className="image-modal-dialog"
2018-04-01 03:46:44 +02:00
>
{#if type === 'gifv'}
2018-03-31 19:45:11 +02:00
<AutoplayVideo
ariaLabel="Animated GIF: {description || ''}"
{poster}
{src}
{width}
{height}
/>
{:else}
<img
{src}
{width}
{height}
alt={description || ''}
title={description || ''}
/>
{/if}
</ModalDialog>
<style>
2018-04-01 03:46:44 +02:00
:global(.image-modal-dialog img, .image-modal-dialog video) {
object-fit: contain;
max-width: calc(100vw - 20px);
2018-02-23 05:04:19 +01:00
max-height: calc(100% - 20px);
overflow: hidden;
}
</style>
<script>
2018-02-05 18:43:45 +01:00
import ModalDialog from './ModalDialog.html'
import AutoplayVideo from '../../AutoplayVideo.html'
import { show } from '../helpers/showDialog'
import { oncreate } from '../helpers/onCreateDialog'
export default {
oncreate,
components: {
2018-03-31 19:45:11 +02:00
ModalDialog,
AutoplayVideo
},
methods: {
show
}
}
</script>