koel/resources/assets/js/components/main-wrapper/main-content/songs.vue

50 lines
1.2 KiB
Vue
Raw Normal View History

2015-12-13 04:42:28 +00:00
<template>
2016-06-25 16:05:24 +00:00
<section id="songsWrapper">
<h1 class="heading">
<span>All Songs
2016-11-17 08:37:12 +00:00
<controls-toggler :showing-controls="showingControls" @toggleControls="toggleControls"/>
2016-01-14 08:02:59 +00:00
2016-06-25 16:05:24 +00:00
<span class="meta" v-show="meta.songCount">
{{ meta.songCount | pluralize('song') }}
{{ meta.totalLength }}
</span>
</span>
2016-02-19 07:20:34 +00:00
2016-11-17 07:07:12 +00:00
<song-list-controls
v-show="state.songs.length && (!isPhone || showingControls)"
2016-11-17 07:07:12 +00:00
@shuffleAll="shuffleAll"
@shuffleSelected="shuffleSelected"
:config="songListControlConfig"
:selectedSongs="selectedSongs"
/>
2016-06-25 16:05:24 +00:00
</h1>
2015-12-13 04:42:28 +00:00
2016-10-31 04:28:12 +00:00
<song-list :items="state.songs" type="allSongs"/>
2016-06-25 16:05:24 +00:00
</section>
2015-12-13 04:42:28 +00:00
</template>
<script>
2016-11-26 03:25:35 +00:00
import { pluralize } from '../../../utils'
import { songStore } from '../../../stores'
import hasSongList from '../../../mixins/has-song-list'
2015-12-13 04:42:28 +00:00
2016-06-25 16:05:24 +00:00
export default {
name: 'main-wrapper--main-content--songs',
mixins: [hasSongList],
filters: { pluralize },
2015-12-13 04:42:28 +00:00
2016-11-26 03:25:35 +00:00
data () {
2016-06-25 16:05:24 +00:00
return {
2016-11-17 07:07:12 +00:00
state: songStore.state
2016-11-26 03:25:35 +00:00
}
}
}
2015-12-13 04:42:28 +00:00
</script>
2017-02-14 06:53:02 +00:00
<style lang="scss">
2016-06-25 16:05:24 +00:00
@import "../../../../sass/partials/_vars.scss";
@import "../../../../sass/partials/_mixins.scss";
2015-12-13 04:42:28 +00:00
</style>