<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="{{src}}"
      width="{{width}}"
      height="{{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>