Skip to content

Commit 14ba922

Browse files
committed
refactor: remove advanced table from free version
1 parent 66c4385 commit 14ba922

File tree

1 file changed

+10
-134
lines changed

1 file changed

+10
-134
lines changed

src/views/base/Tables.vue

Lines changed: 10 additions & 134 deletions
Original file line numberDiff line numberDiff line change
@@ -1,90 +1,16 @@
11
<template>
22
<div>
3-
<CRow>
4-
<CCol sm="12">
5-
<CCard>
6-
<CCardHeader>
7-
CTable component functionality presentation
8-
<div class="card-header-actions">
9-
<a
10-
href="https://coreui.io/vue/docs/3.0/components/Table"
11-
class="card-header-action"
12-
rel="noreferrer noopener"
13-
target="_blank"
14-
>
15-
<small class="text-muted">docs</small>
16-
</a>
17-
</div>
18-
</CCardHeader>
19-
<CCardBody>
20-
<CTable
21-
:items="getItems()"
22-
:fields="fields"
23-
index-column
24-
column-filter
25-
table-filter
26-
items-per-page-selects
27-
hover
28-
sortable
29-
footer
30-
pagination
31-
>
32-
<template #index-column="{index}">
33-
<td
34-
@click="toggleDetails(index)"
35-
style="cursor:pointer"
36-
class="text-center"
37-
>
38-
<i
39-
class="icons font-lg d-block cui-chevron-right"
40-
style="transition: transform 0.4s"
41-
:style="details.includes(index) ? 'transform:rotate(90deg)': ''"
42-
></i>
43-
</td>
44-
</template>
45-
<template #status="{item}">
46-
<td>
47-
<CBadge :variant="getBadge(item.status)">
48-
{{item.status}}
49-
</CBadge>
50-
</td>
51-
</template>
52-
<template #show_details="{item, index}">
53-
<td class="py-2">
54-
<CButton
55-
variant="outline-primary"
56-
square
57-
size="sm"
58-
@click="toggleDetails(index)"
59-
:text-html="details.includes(index) ? 'Hide' : 'Show'"
60-
/>
61-
</td>
62-
</template>
63-
<template #details="{item, index}">
64-
<CCollapse :show="details.includes(index)">
65-
<CCardBody>
66-
{{index + 1}} - {{item}}
67-
</CCardBody>
68-
</CCollapse>
69-
</template>
70-
</CTable>
71-
</CCardBody>
72-
</CCard>
73-
</CCol>
74-
</CRow>
75-
76-
773
<CRow>
784
<CCol lg="6">
795
<CTableWrapper
80-
:items="getItems()"
6+
:items="getShuffledUsersData()"
817
caption="<i class='fa fa-align-justify'></i> Simple Table"
828
/>
839
</CCol>
8410

8511
<CCol lg="6">
8612
<CTableWrapper
87-
:items="getItems()"
13+
:items="getShuffledUsersData()"
8814
striped
8915
caption="<i class='fa fa-align-justify'></i> Striped Table"
9016
/>
@@ -94,15 +20,15 @@
9420
<CRow>
9521
<CCol lg="6">
9622
<CTableWrapper
97-
:items="getItems()"
23+
:items="getShuffledUsersData()"
9824
small
9925
caption="<i class='fa fa-align-justify'></i> Condensed Table"
10026
/>
10127
</CCol>
10228

10329
<CCol lg="6">
10430
<CTableWrapper
105-
:items="getItems()"
31+
:items="getShuffledUsersData()"
10632
fixed
10733
bordered
10834
caption="<i class='fa fa-align-justify'></i> Bordered Table"
@@ -113,7 +39,7 @@
11339
<CRow>
11440
<CCol sm="12">
11541
<CTableWrapper
116-
:items="getItems()"
42+
:items="getShuffledUsersData()"
11743
hover
11844
striped
11945
bordered
@@ -127,7 +53,7 @@
12753
<CRow>
12854
<CCol sm="12">
12955
<CTableWrapper
130-
:items="getItems()"
56+
:items="getShuffledUsersData()"
13157
hover
13258
striped
13359
bordered
@@ -143,59 +69,12 @@
14369

14470
<script>
14571
import CTableWrapper from './Table.vue'
146-
147-
const fields = [
148-
{ key: 'username', _style:'width:40%' },
149-
'registered',
150-
{ key: 'role', _style:'width:20%;' },
151-
{ key: 'status', _style:'width:20%;' },
152-
{ key: 'show_details' , label:'', _style:'width:1%', notSortable: true, noFilter: true },
153-
]
154-
const items = [
155-
{ username: 'Samppa Nori', registered: '2012/01/01', role: 'Member', status: 'Active'},
156-
{ username: 'Estavan Lykos', registered: '2012/02/01', role: 'Staff', status: 'Banned'},
157-
{ username: 'Chetan Mohamed', registered: '2012/02/01', role: 'Admin', status: 'Inactive'},
158-
{ username: 'Derick Maximinus', registered: '2012/03/01', role: 'Member', status: 'Pending'},
159-
{ username: 'Friderik Dávid', registered: '2012/01/21', role: 'Staff', status: 'Active'},
160-
{ username: 'Yiorgos Avraamu', registered: '2012/01/01', role: 'Member', status: 'Active'},
161-
{ username: 'Avram Tarasios', registered: '2012/02/01', role: 'Staff', status: 'Banned', _classes: 'table-success'},
162-
{ username: 'Quintin Ed', registered: '2012/02/01', role: 'Admin', status: 'Inactive'},
163-
{ username: 'Enéas Kwadwo', registered: '2012/03/01', role: 'Member', status: 'Pending'},
164-
{ username: 'Agapetus Tadeáš', registered: '2012/01/21', role: 'Staff', status: 'Active'},
165-
{ username: 'Carwyn Fachtna', registered: '2012/01/01', role: 'Member', status: 'Active', _classes: 'table-info'},
166-
{ username: 'Nehemiah Tatius', registered: '2012/02/01', role: 'Staff', status: 'Banned'},
167-
{ username: 'Ebbe Gemariah', registered: '2012/02/01', role: 'Admin', status: 'Inactive'},
168-
{ username: 'Eustorgios Amulius', registered: '2012/03/01', role: 'Member', status: 'Pending'},
169-
{ username: 'Leopold Gáspár', registered: '2012/01/21', role: 'Staff', status: 'Active'},
170-
{ username: 'Pompeius René', registered: '2012/01/01', role: 'Member', status: 'Active'},
171-
{ username: 'Paĉjo Jadon', registered: '2012/02/01', role: 'Staff', status: 'Banned'},
172-
{ username: 'Micheal Mercurius', registered: '2012/02/01', role: 'Admin', status: 'Inactive'},
173-
{ username: 'Ganesha Dubhghall', registered: '2012/03/01', role: 'Member', status: 'Pending'},
174-
{ username: 'Hiroto Šimun', registered: '2012/01/21', role: 'Staff', status: 'Active'},
175-
{ username: 'Vishnu Serghei', registered: '2012/01/01', role: 'Member', status: 'Active'},
176-
{ username: 'Zbyněk Phoibos', registered: '2012/02/01', role: 'Staff', status: 'Banned'},
177-
{ username: 'Einar Randall', registered: '2012/02/01', role: 'Admin', status: 'Inactive', _classes: 'table-danger'},
178-
{ username: 'Félix Troels', registered: '2012/03/21', role: 'Staff', status: 'Active'},
179-
{ username: 'Aulus Agmundr', registered: '2012/01/01', role: 'Member', status: 'Pending'}
180-
]
72+
import usersData from '../users/UsersData'
18173
18274
export default {
18375
name: 'Tables',
18476
components: { CTableWrapper },
185-
data () {
186-
return {
187-
items,
188-
fields,
189-
details: [],
190-
}
191-
},
19277
methods: {
193-
getBadge (status) {
194-
return status === 'Active' ? 'success'
195-
: status === 'Inactive' ? 'secondary'
196-
: status === 'Pending' ? 'warning'
197-
: status === 'Banned' ? 'danger' : 'primary'
198-
},
19978
shuffleArray (array) {
20079
for (let i = array.length - 1; i > 0; i--) {
20180
let j = Math.floor(Math.random() * (i + 1))
@@ -205,12 +84,9 @@ export default {
20584
}
20685
return array
20786
},
208-
toggleDetails (index) {
209-
const position = this.details.indexOf(index)
210-
position !== -1 ? this.details.splice(position, 1) : this.details.push(index)
211-
},
212-
getItems () {
213-
return this.shuffleArray(this.items.slice(0))
87+
88+
getShuffledUsersData () {
89+
return this.shuffleArray(usersData.slice(0))
21490
}
21591
}
21692
}

0 commit comments

Comments
 (0)