summaryrefslogtreecommitdiff
path: root/animism-align/frontend/app/views/viewer/player/components.inline/inline.image.js
blob: 9928eef5309a32682a98254e0d8a3191261eec5d (plain)
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
import React, { Component } from 'react'

import { SpeakerIcon } from '../../nav/viewer.icons'
import { MediaCitation } from '../components.media'

export const MediaImage = ({ paragraph, media, currentParagraph, currentAnnotation, onAnnotationClick }) => {
  if (!media.lookup) return <div />
  const annotation = paragraph.annotations[0]
  const item = media.lookup[annotation.settings.media_id]
  if (!item) return <div>Media not found: {annotation.settings.media_id}</div>
  if (annotation.settings.fullscreen) {
    return (
      <div className="media image fullscreen">
        <div className="speaker-icon" onClick={e => onAnnotationClick(e, paragraph, annotation)}>{SpeakerIcon}</div>
        <div className="img" style={{ backgroundImage: 'url(' + item.settings.display.url + ')'}} />
        <MediaCitation media={item} />
      </div>
    )
  } else {
    return (
      <div className="media image">
        <div className="image-container">
          <img src={item.settings.display.url} />
          <div className="speaker-icon" onClick={e => onAnnotationClick(e, paragraph, annotation)}>{SpeakerIcon}</div>
        </div>
        <MediaCitation media={item} />
      </div>
    )
  }
}