Merge branch '68-masonry' into 'develop'

Resolve "Use a masonry plugin for prettier colums"

Closes #68

See merge request funkwhale/funkwhale!56
This commit is contained in:
Eliot Berriot 2018-02-26 20:16:50 +00:00
commit d61f8e522f
10 changed files with 41 additions and 11 deletions

View File

@ -6,7 +6,8 @@ Changelog
- Fixed broken file import due to wrong url (#73) - Fixed broken file import due to wrong url (#73)
- More accurate mimetype detection - More accurate mimetype detection
- Fixed really small size on small screens. - Fixed really small size on small screens
- Added masonry layout for artists, requests and radios (#68)
0.5.1 (2018-02-24) 0.5.1 (2018-02-24)

View File

@ -20,6 +20,7 @@
"js-logger": "^1.3.0", "js-logger": "^1.3.0",
"jwt-decode": "^2.2.0", "jwt-decode": "^2.2.0",
"lodash": "^4.17.4", "lodash": "^4.17.4",
"masonry-layout": "^4.2.1",
"moment": "^2.20.1", "moment": "^2.20.1",
"moxios": "^0.4.0", "moxios": "^0.4.0",
"raven-js": "^3.22.3", "raven-js": "^3.22.3",
@ -27,6 +28,7 @@
"showdown": "^1.8.6", "showdown": "^1.8.6",
"vue": "^2.3.3", "vue": "^2.3.3",
"vue-lazyload": "^1.1.4", "vue-lazyload": "^1.1.4",
"vue-masonry": "^0.10.16",
"vue-router": "^2.3.1", "vue-router": "^2.3.1",
"vue-upload-component": "^2.7.4", "vue-upload-component": "^2.7.4",
"vuedraggable": "^2.14.1", "vuedraggable": "^2.14.1",

View File

@ -67,7 +67,7 @@ export default {
data () { data () {
return { return {
backend: backend, backend: backend,
initialTracks: 4, initialTracks: 5,
showAllTracks: false showAllTracks: false
} }
}, },

View File

@ -54,8 +54,8 @@ export default {
data () { data () {
return { return {
backend: backend, backend: backend,
initialAlbums: 3, initialAlbums: 30,
showAllAlbums: false showAllAlbums: true
} }
}, },
computed: { computed: {

View File

@ -30,7 +30,7 @@
</div> </div>
<div class="ui vertical stripe segment"> <div class="ui vertical stripe segment">
<h2>Albums by this artist</h2> <h2>Albums by this artist</h2>
<div class="ui stackable three column grid"> <div class="ui stackable doubling three column grid">
<div class="column" :key="album.id" v-for="album in albums"> <div class="column" :key="album.id" v-for="album in albums">
<album-card :mode="'rich'" class="fluid" :album="album"></album-card> <album-card :mode="'rich'" class="fluid" :album="album"></album-card>
</div> </div>

View File

@ -34,8 +34,16 @@
</div> </div>
</div> </div>
<div class="ui hidden divider"></div> <div class="ui hidden divider"></div>
<div v-if="result" class="ui stackable three column grid"> <div
v-if="result"
v-masonry
transition-duration="0"
item-selector=".column"
percent-position="true"
stagger="0"
class="ui stackable three column doubling grid">
<div <div
v-masonry-tile
v-if="result.results.length > 0" v-if="result.results.length > 0"
v-for="artist in result.results" v-for="artist in result.results"
:key="artist.id" :key="artist.id"

View File

@ -36,8 +36,16 @@
</div> </div>
</div> </div>
<div class="ui hidden divider"></div> <div class="ui hidden divider"></div>
<div v-if="result" class="ui stackable three column grid"> <div
v-if="result"
v-masonry
transition-duration="0"
item-selector=".column"
percent-position="true"
stagger="0"
class="ui stackable three column doubling grid">
<div <div
v-masonry-tile
v-if="result.results.length > 0" v-if="result.results.length > 0"
v-for="radio in result.results" v-for="radio in result.results"
:key="radio.id" :key="radio.id"

View File

@ -5,10 +5,10 @@
<div class="description"> <div class="description">
<div <div
v-if="request.albums" v-html="$options.filters.markdown(request.albums)"></div> v-if="request.albums" v-html="$options.filters.markdown(request.albums)"></div>
<div v-if="request.comment" class="ui comments"> <div class="ui comments">
<comment <comment
:user="request.user" :user="request.user"
:content="request.comment" :content="request.comment || ''"
:date="request.creation_date"></comment> :date="request.creation_date"></comment>
</div> </div>
</div> </div>
@ -24,7 +24,7 @@
@click="createImport" @click="createImport"
v-if="request.status === 'pending' && importAction && $store.state.auth.availablePermissions['import.launch']" v-if="request.status === 'pending' && importAction && $store.state.auth.availablePermissions['import.launch']"
class="ui mini basic green right floated button">Create import</button> class="ui mini basic green right floated button">Create import</button>
</div> </div>
</div> </div>
</template> </template>

View File

@ -34,8 +34,16 @@
</div> </div>
</div> </div>
<div class="ui hidden divider"></div> <div class="ui hidden divider"></div>
<div v-if="result" class="ui stackable three column grid"> <div
v-if="result"
v-masonry
transition-duration="0"
item-selector=".column"
percent-position="true"
stagger="0"
class="ui stackable three column doubling grid">
<div <div
v-masonry-tile
v-if="result.results.length > 0" v-if="result.results.length > 0"
v-for="request in result.results" v-for="request in result.results"
:key="request.id" :key="request.id"

View File

@ -9,6 +9,7 @@ import Vue from 'vue'
import App from './App' import App from './App'
import router from './router' import router from './router'
import axios from 'axios' import axios from 'axios'
import {VueMasonryPlugin} from 'vue-masonry'
import VueLazyload from 'vue-lazyload' import VueLazyload from 'vue-lazyload'
import store from './store' import store from './store'
import config from './config' import config from './config'
@ -24,7 +25,9 @@ window.$ = window.jQuery = require('jquery')
// play really nice with webpack and I want to get rid of Google Fonts // play really nice with webpack and I want to get rid of Google Fonts
// require('./semantic/semantic.css') // require('./semantic/semantic.css')
require('semantic-ui-css/semantic.js') require('semantic-ui-css/semantic.js')
require('masonry-layout')
Vue.use(VueMasonryPlugin)
Vue.use(VueLazyload) Vue.use(VueLazyload)
Vue.config.productionTip = false Vue.config.productionTip = false