<ModalDialog
  {id}
  {label}
  background="var(--muted-modal-bg)"
  muted="true"
  className="image-modal-dialog"
>
  {#if type === 'gifv'}
    <AutoplayVideo
      ariaLabel="Animated GIF: {description || ''}"
      {poster}
      {src}
      {width}
      {height}
    />
  {:else}
    <img
      {src}
      {width}
      {height}
      alt={description || ''}
      title={description || ''}
    />
  {/if}
</ModalDialog>
<style>
  :global(.image-modal-dialog img, .image-modal-dialog video) {
    object-fit: contain;
    max-width: calc(100vw - 20px);
    max-height: calc(100% - 20px);
    overflow: hidden;
  }
</style>
<script>
  import ModalDialog from './ModalDialog.html'
  import AutoplayVideo from '../../AutoplayVideo.html'
  import { show } from '../helpers/showDialog'
  import { oncreate } from '../helpers/onCreateDialog'

  export default {
    oncreate,
    components: {
      ModalDialog,
      AutoplayVideo
    },
    methods: {
      show
    }
  }
</script>