diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2020-08-19 17:22:33 +0200 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2020-08-19 17:22:33 +0200 |
| commit | 27d593acaf023ba15b3c81cbe72e90f754523078 (patch) | |
| tree | ee5d857fe6abe37b026d6ad16d148834427eac8b /animism-align/frontend/app/views/viewer/player/components.media/media.vitrine.js | |
| parent | 609d04b1bc02a5ee57ec22cb49fc6f08b57f1deb (diff) | |
vitrine modal
Diffstat (limited to 'animism-align/frontend/app/views/viewer/player/components.media/media.vitrine.js')
| -rw-r--r-- | animism-align/frontend/app/views/viewer/player/components.media/media.vitrine.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/animism-align/frontend/app/views/viewer/player/components.media/media.vitrine.js b/animism-align/frontend/app/views/viewer/player/components.media/media.vitrine.js new file mode 100644 index 0000000..2033465 --- /dev/null +++ b/animism-align/frontend/app/views/viewer/player/components.media/media.vitrine.js @@ -0,0 +1,38 @@ +import React, { Component } from 'react' + +import { ZoomPlus } from '../../nav/viewer.icons.js' + +import actions from 'app/actions' + +export const Vitrine = ({ media }) => { + const { image_order, image_lookup, thumbnail_lookup } = media.settings + const width = (Math.floor(100 / image_order.length * 2) - 2) + 'vw' + // console.log(width) + return ( + <div className='vitrine-items'> + {image_order.map(id => { + const thumbnail = thumbnail_lookup[id] + return ( + <VitrineItem + key={id} + media={media} + id={id} + image={thumbnail} + width={width} + /> + ) + })} + </div> + ) +} + +const VitrineItem = ({ media, id, image, width }) => { + return ( + <div className='vitrine-item' style={{ width }} onClick={() => actions.viewer.openVitrineModal(media, id)}> + <div className='vitrine-image'> + <img src={image.url} /> + </div> + {ZoomPlus} + </div> + ) +} |
