What has been done: - TT#27769, Conversations: Create custom card component - TT#28200, Conversations: Show page count Change-Id: Ia3765a11d415d62f280cbf95a666bfdc9230b0d4changes/97/17797/4
parent
54c98fc188
commit
3eb81fa09f
@ -0,0 +1,100 @@
|
|||||||
|
<template>
|
||||||
|
<div class="csc-card-collapsible" :id="getId">
|
||||||
|
<q-card>
|
||||||
|
<q-item :link="collapsible" @click="toggleCollapse()" class="csc-card-title">
|
||||||
|
<q-item-side class="csc-card-left-icons">
|
||||||
|
<q-item-tile color="secondary" :icon="firstIcon" />
|
||||||
|
<q-item-tile color="secondary" :icon="secondIcon" />
|
||||||
|
</q-item-side>
|
||||||
|
<q-item-main>
|
||||||
|
<q-item-tile label>
|
||||||
|
<slot name="title">
|
||||||
|
</q-item-tile>
|
||||||
|
<q-item-tile sublabel>
|
||||||
|
{{ sublabel }}
|
||||||
|
</q-item-tile>
|
||||||
|
</q-item-main>
|
||||||
|
<q-item-side v-if="collapsible" right>
|
||||||
|
<q-item-tile color="secondary" icon="keyboard_arrow_down" />
|
||||||
|
</q-item-side>
|
||||||
|
</q-item>
|
||||||
|
<q-card-main v-show="isExpanded">
|
||||||
|
<slot name="main"></slot>
|
||||||
|
</q-card-main>
|
||||||
|
<slot name="footer"></slot>
|
||||||
|
</q-card>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { QCard, QCardTitle, QCardMain, QIcon, QItem,
|
||||||
|
QItemSide, QItemMain, QItemTile } from 'quasar-framework'
|
||||||
|
export default {
|
||||||
|
name: 'csc-card-collapsible',
|
||||||
|
props: [
|
||||||
|
'listItem',
|
||||||
|
'collapsible',
|
||||||
|
'firstIcon',
|
||||||
|
'secondIcon',
|
||||||
|
'sublabel',
|
||||||
|
'id'
|
||||||
|
],
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
expanded: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
QCard,
|
||||||
|
QCardTitle,
|
||||||
|
QCardMain,
|
||||||
|
QIcon,
|
||||||
|
QItem,
|
||||||
|
QItemSide,
|
||||||
|
QItemMain,
|
||||||
|
QItemTile
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
isExpanded() {
|
||||||
|
return this.expanded;
|
||||||
|
},
|
||||||
|
getId() {
|
||||||
|
return this.id;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
toggleCollapse() {
|
||||||
|
if (this.collapsible) {
|
||||||
|
this.expanded = !this.expanded;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus">
|
||||||
|
@import '~variables'
|
||||||
|
.csc-card-collapsible
|
||||||
|
.q-btn
|
||||||
|
margin-bottom 5px
|
||||||
|
ul
|
||||||
|
list-style none
|
||||||
|
font-size 1rem
|
||||||
|
line-height 2rem
|
||||||
|
strong
|
||||||
|
font-weight 500
|
||||||
|
.q-item-icon
|
||||||
|
font-size 22px
|
||||||
|
padding-right 12px
|
||||||
|
line-height 2rem
|
||||||
|
div.q-item-label > span
|
||||||
|
font-size 18px
|
||||||
|
color #0c0c0c
|
||||||
|
font-weight 400
|
||||||
|
div.q-item-sublabel
|
||||||
|
margin-top 5px
|
||||||
|
.csc-card-left-icons
|
||||||
|
margin-left 15px
|
||||||
|
.csc-card-title
|
||||||
|
padding 16px
|
||||||
|
</style>
|
@ -1,44 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div class="csc-collapsible">
|
|
||||||
<q-collapsible :icon="icon"
|
|
||||||
:label="label"
|
|
||||||
:sublabel="sublabel">
|
|
||||||
<slot></slot>
|
|
||||||
</q-collapsible>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { QCollapsible } from 'quasar-framework'
|
|
||||||
export default {
|
|
||||||
name: 'csc-collapsible',
|
|
||||||
props: [
|
|
||||||
'icon',
|
|
||||||
'label',
|
|
||||||
'sublabel'
|
|
||||||
],
|
|
||||||
components: {
|
|
||||||
QCollapsible
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="stylus">
|
|
||||||
@import '~variables'
|
|
||||||
.csc-collapsible
|
|
||||||
.q-collapsible
|
|
||||||
.q-item-icon
|
|
||||||
font-size 22px
|
|
||||||
padding-right 12px
|
|
||||||
color $secondary
|
|
||||||
.q-item-label
|
|
||||||
color black
|
|
||||||
font-size 18px
|
|
||||||
font-weight 400
|
|
||||||
ul
|
|
||||||
list-style none
|
|
||||||
font-size 1rem
|
|
||||||
line-height 2rem
|
|
||||||
strong
|
|
||||||
font-weight 500
|
|
||||||
</style>
|
|
Loading…
Reference in new issue