diff options
| author | lambda <pleromagit@rogerbraun.net> | 2019-01-30 18:58:08 +0000 |
|---|---|---|
| committer | lambda <pleromagit@rogerbraun.net> | 2019-01-30 18:58:08 +0000 |
| commit | 5b7b1dfebc37bd5db4e839973062b452b02c898d (patch) | |
| tree | a517e4942725286b173b685cbe87bc6c7878b66e /src/modules/media_viewer.js | |
| parent | b1facdf7ad54436c2afde7c28c917cda87a5b7e3 (diff) | |
| parent | c7cffbb6c70bbb21cf787d96e82e0261427b9234 (diff) | |
Merge branch 'feat/media-modal' into 'develop'
modal for viewing attachments in-tab
See merge request pleroma/pleroma-fe!468
Diffstat (limited to 'src/modules/media_viewer.js')
| -rw-r--r-- | src/modules/media_viewer.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/modules/media_viewer.js b/src/modules/media_viewer.js new file mode 100644 index 00000000..a24b408d --- /dev/null +++ b/src/modules/media_viewer.js @@ -0,0 +1,39 @@ +import fileTypeService from '../services/file_type/file_type.service.js' + +const mediaViewer = { + state: { + media: [], + currentIndex: 0, + activated: false + }, + mutations: { + setMedia (state, media) { + state.media = media + }, + setCurrent (state, index) { + state.activated = true + state.currentIndex = index + }, + close (state) { + state.activated = false + } + }, + actions: { + setMedia ({ commit }, attachments) { + const media = attachments.filter(attachment => { + const type = fileTypeService.fileType(attachment.mimetype) + return type === 'image' || type === 'video' + }) + commit('setMedia', media) + }, + setCurrent ({ commit, state }, current) { + const index = state.media.indexOf(current) + commit('setCurrent', index || 0) + }, + closeMediaViewer ({ commit }) { + commit('close') + } + } +} + +export default mediaViewer |
