@modeltables/fontawesome-vuetify 1.8.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/dataSets/dataSetHeader.ts +7 -0
- package/components/dataSets/dataSetItems.ts +7 -0
- package/components/headerFilters/Date.vue +5 -1
- package/components/helpers/instances.ts +11 -1
- package/components/helpers/resources.ts +4 -0
- package/components/models/tablemodels.d.ts +1 -0
- package/components/models/tablemodels.js +1 -0
- package/components/models/tablemodels.ts +4 -3
- package/components/sort/SortView.vue +15 -11
- package/components/table/TableView.vue +181 -49
- package/components/table/data/ItemView.vue +5 -5
- package/dist/index.amd.ts +15 -15
- package/dist/index.esm.ts +5234 -4932
- package/dist/style.css +1 -1
- package/package.json +2 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { faCalendar } from '@fortawesome/free-regular-svg-icons';
|
|
3
|
+
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';
|
|
3
4
|
export default {
|
|
4
5
|
props: {
|
|
5
6
|
data: {
|
|
@@ -15,6 +16,9 @@
|
|
|
15
16
|
required: true
|
|
16
17
|
}
|
|
17
18
|
},
|
|
19
|
+
components: {
|
|
20
|
+
FontAwesomeIcon: FontAwesomeIcon
|
|
21
|
+
},
|
|
18
22
|
data() {
|
|
19
23
|
return {
|
|
20
24
|
data: this.data,
|
|
@@ -33,7 +37,7 @@
|
|
|
33
37
|
</script>
|
|
34
38
|
|
|
35
39
|
<template>
|
|
36
|
-
<v-date-input :prepend-icon="''"
|
|
40
|
+
<v-date-input :prepend-icon="''" @save="filterDate($event)" :v-model="data" :model-value="filter">
|
|
37
41
|
<template v-if="calendar" #prepend-inner>
|
|
38
42
|
<FontAwesomeIcon :icon="calendar" />
|
|
39
43
|
</template>
|
|
@@ -17,4 +17,14 @@ export const isString = (s: any) =>{
|
|
|
17
17
|
export const toDate = (value: any) => {
|
|
18
18
|
const date = new Date(value);
|
|
19
19
|
return date.toLocaleDateString() + ' ' + date.toLocaleTimeString();
|
|
20
|
-
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export const isEqual = (object1: Object, object2: Object) => {
|
|
23
|
+
for(let prop1 of Object.keys(object1)){
|
|
24
|
+
if(object1[prop1] != object2[prop1]){
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
@@ -2,4 +2,8 @@ export const change = 'change';
|
|
|
2
2
|
export const load = 'load';
|
|
3
3
|
export const rowClick = 'rowClick';
|
|
4
4
|
export const search = 'search';
|
|
5
|
+
export const itemSelection = 'itemSelection';
|
|
6
|
+
export const multiSelection = 'multiSelection';
|
|
7
|
+
export const selectedRow = 'selected-row';
|
|
8
|
+
export const rowClass = 'row-class';
|
|
5
9
|
export const Id = 'Id';
|
|
@@ -12,20 +12,24 @@ export default {
|
|
|
12
12
|
required: true,
|
|
13
13
|
default: () => new Options()
|
|
14
14
|
},
|
|
15
|
-
|
|
15
|
+
dataHeader: {
|
|
16
16
|
type: Object,
|
|
17
17
|
required: true
|
|
18
18
|
},
|
|
19
|
-
|
|
19
|
+
id: {
|
|
20
20
|
type: Number,
|
|
21
21
|
required: true
|
|
22
|
+
},
|
|
23
|
+
startPosition: {
|
|
24
|
+
type: Boolean,
|
|
25
|
+
required: true
|
|
22
26
|
}
|
|
23
27
|
},
|
|
24
28
|
data() {
|
|
25
29
|
return {
|
|
26
30
|
key: this.key,
|
|
27
|
-
|
|
28
|
-
|
|
31
|
+
dataHeader: this.dataHeader,
|
|
32
|
+
id: this.id,
|
|
29
33
|
carretDown: faCaretDown,
|
|
30
34
|
carretUp: faCaretUp
|
|
31
35
|
}
|
|
@@ -44,21 +48,21 @@ export default {
|
|
|
44
48
|
</script>
|
|
45
49
|
|
|
46
50
|
<template>
|
|
47
|
-
<div v-if="
|
|
51
|
+
<div v-if="!startPosition"
|
|
48
52
|
style="display: flex">
|
|
49
|
-
{{
|
|
50
|
-
<div v-if="
|
|
51
|
-
<FontAwesomeIcon @click="sort($event,
|
|
53
|
+
{{ dataHeader.title }}
|
|
54
|
+
<div v-if="dataHeader.sort">
|
|
55
|
+
<FontAwesomeIcon @click="sort($event, dataHeader, id)" :icon="carretDown"></FontAwesomeIcon>
|
|
52
56
|
</div>
|
|
53
57
|
<div v-else>
|
|
54
|
-
<FontAwesomeIcon @click="sort($event,
|
|
58
|
+
<FontAwesomeIcon @click="sort($event, dataHeader, id)" :icon="carretUp"></FontAwesomeIcon>
|
|
55
59
|
</div>
|
|
56
60
|
</div>
|
|
57
61
|
<div v-else-if="options.Active">
|
|
58
|
-
{{
|
|
62
|
+
{{ dataHeader.title }}
|
|
59
63
|
</div>
|
|
60
64
|
<div v-else>
|
|
61
|
-
{{
|
|
65
|
+
{{ dataHeader.title }}
|
|
62
66
|
</div>
|
|
63
67
|
|
|
64
68
|
</template>
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { ref } from 'vue'
|
|
3
3
|
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';
|
|
4
|
-
import { faRefresh, faSearch } from '@fortawesome/free-solid-svg-icons';
|
|
4
|
+
import { faRefresh, faSearch, faIndent, faCheck } from '@fortawesome/free-solid-svg-icons';
|
|
5
|
+
import { faSquare } from '@fortawesome/free-regular-svg-icons';
|
|
5
6
|
import { HeaderModel, Options } from '@/components/models/tablemodels';
|
|
6
7
|
import { PaginatonModel } from '@/components/models/tablemodels';
|
|
7
|
-
import { change, load, rowClick, search } from '@/components/helpers/resources';
|
|
8
|
+
import { change, itemSelection, load, multiSelection, rowClass, rowClick, search, selectedRow } from '@/components/helpers/resources';
|
|
8
9
|
import Date from '@/components/headerFilters/Date.vue';
|
|
9
10
|
import Search from '@/components/search/SearchView.vue';
|
|
10
11
|
import Text from '@/components/headerFilters/Text.vue';
|
|
@@ -13,6 +14,9 @@ import Filters from '@/components/headerFilters/Filters.vue';
|
|
|
13
14
|
import SortView from '@/components/sort/SortView.vue';
|
|
14
15
|
import PaginationView from '@/components/pagination/PaginationView.vue';
|
|
15
16
|
import DataItem from '@/components/table/data/ItemView.vue';
|
|
17
|
+
import { isEqual } from '../helpers/instances';
|
|
18
|
+
import { DataSetHeader } from '../dataSets/dataSetHeader';
|
|
19
|
+
import { DataSetItems } from '../dataSets/dataSetItems';
|
|
16
20
|
|
|
17
21
|
export default {
|
|
18
22
|
props: {
|
|
@@ -74,6 +78,21 @@ export default {
|
|
|
74
78
|
type: Boolean,
|
|
75
79
|
required: false,
|
|
76
80
|
default: () => false
|
|
81
|
+
},
|
|
82
|
+
select: {
|
|
83
|
+
type: Boolean,
|
|
84
|
+
required: false,
|
|
85
|
+
default: () => false,
|
|
86
|
+
},
|
|
87
|
+
multiSelect: {
|
|
88
|
+
type: Boolean,
|
|
89
|
+
required: false,
|
|
90
|
+
default: () => false,
|
|
91
|
+
},
|
|
92
|
+
selectedItems: {
|
|
93
|
+
type: Array<Object>,
|
|
94
|
+
required: false,
|
|
95
|
+
default: () => []
|
|
77
96
|
}
|
|
78
97
|
},
|
|
79
98
|
components: {
|
|
@@ -93,28 +112,38 @@ export default {
|
|
|
93
112
|
},
|
|
94
113
|
watch: {
|
|
95
114
|
dataItems(newValue, oldValue) {
|
|
96
|
-
this.
|
|
115
|
+
this.initData(newValue);
|
|
97
116
|
if(this.firstChange){
|
|
98
117
|
this.initFilters();
|
|
99
118
|
this.firstChange = false;
|
|
119
|
+
setTimeout(() => {
|
|
120
|
+
this.loaded = true;
|
|
121
|
+
}, 800)
|
|
100
122
|
}
|
|
101
123
|
},
|
|
124
|
+
dataSetItems(newValue, oldValue){
|
|
125
|
+
this.dataSetItems = newValue;
|
|
126
|
+
},
|
|
102
127
|
pagination(newValue: PaginatonModel, oldValue) {
|
|
103
|
-
console.log(newValue);
|
|
104
128
|
this.page = newValue.CurrentPage;
|
|
105
129
|
this.perPage = newValue.PerPage;
|
|
106
130
|
this.pageCount = newValue.PageCount;
|
|
107
131
|
this.totalCount = newValue.TotalCount;
|
|
108
132
|
}
|
|
109
133
|
},
|
|
110
|
-
emits: [change, load, rowClick, search],
|
|
134
|
+
emits: [change, load, rowClick, search, itemSelection, multiSelection],
|
|
111
135
|
data() {
|
|
112
|
-
console.log(this.options);
|
|
113
136
|
return {
|
|
137
|
+
selectedProp: this.options.SelectedKey!,
|
|
138
|
+
rowClass: rowClass,
|
|
114
139
|
dataheader: this.dataheader,
|
|
115
140
|
dataItems: this.dataItems,
|
|
116
141
|
dialog: false,
|
|
142
|
+
selected: this.selectedItems,
|
|
117
143
|
new: true,
|
|
144
|
+
dataSetItems: [] as DataSetItems[],
|
|
145
|
+
dataSetHeaders: [] as DataSetHeader[],
|
|
146
|
+
loaded: false,
|
|
118
147
|
options: this.options,
|
|
119
148
|
name: this.name,
|
|
120
149
|
currentId: this.currentId,
|
|
@@ -122,17 +151,22 @@ export default {
|
|
|
122
151
|
loading: this.loading,
|
|
123
152
|
faSearch: faSearch,
|
|
124
153
|
reload: faRefresh,
|
|
154
|
+
faIndent: faIndent,
|
|
155
|
+
faCheck: faCheck,
|
|
156
|
+
faSquare: faSquare,
|
|
125
157
|
lastItem: {},
|
|
126
158
|
completes: this.completes,
|
|
127
159
|
filters: { CurrentPage: 1, PerPage: 10, SortColumn: '', SortDirection: 1 } as any,
|
|
128
160
|
showFilters: this.showFilters,
|
|
129
161
|
modelValue: ref([]),
|
|
130
162
|
firstChange: true,
|
|
163
|
+
multiSelected: false,
|
|
131
164
|
perPage: this.pagination!.PerPage,
|
|
132
165
|
page: this.pagination!.CurrentPage,
|
|
133
166
|
pageCount: this.pagination!.PageCount,
|
|
134
167
|
totalCount:this.pagination!.TotalCount,
|
|
135
168
|
showTime: this.showTime,
|
|
169
|
+
isEqual: isEqual
|
|
136
170
|
};
|
|
137
171
|
},
|
|
138
172
|
methods: {
|
|
@@ -151,6 +185,44 @@ export default {
|
|
|
151
185
|
this.filters[prop] = null;
|
|
152
186
|
}
|
|
153
187
|
},
|
|
188
|
+
initData(dataItems){
|
|
189
|
+
let dataSetItems = [] as DataSetItems[];
|
|
190
|
+
|
|
191
|
+
for(let [index, item] of dataItems.entries()){
|
|
192
|
+
let dataSet = new DataSetItems();
|
|
193
|
+
dataSet.id = index + 1;
|
|
194
|
+
dataSet.selected = false;
|
|
195
|
+
dataSet.rowClass = '';
|
|
196
|
+
dataSet.dataItem = item
|
|
197
|
+
|
|
198
|
+
if(dataSet.id == 1){
|
|
199
|
+
dataSet.startPosition = true;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
dataSetItems = [...dataSetItems, dataSet];
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
this.dataSetItems = dataSetItems;
|
|
206
|
+
this.dataItems = dataItems;
|
|
207
|
+
|
|
208
|
+
},
|
|
209
|
+
initHeaders() {
|
|
210
|
+
let dataSetHeaders = [] as DataSetHeader[];
|
|
211
|
+
|
|
212
|
+
for(let [index, item] of this.dataheader.entries()){
|
|
213
|
+
let dataHeader = new DataSetHeader();
|
|
214
|
+
dataHeader.id = index + 1;
|
|
215
|
+
dataHeader.dataHeader = item;
|
|
216
|
+
|
|
217
|
+
if(dataHeader.id == 1) {
|
|
218
|
+
dataHeader.startPosition = true;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
dataSetHeaders = [...dataSetHeaders, dataHeader];
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
this.dataSetHeaders = dataSetHeaders;
|
|
225
|
+
},
|
|
154
226
|
initFilters() {
|
|
155
227
|
let item = this.dataItems[0];
|
|
156
228
|
for(let key of Object.keys(item)){
|
|
@@ -164,13 +236,33 @@ export default {
|
|
|
164
236
|
this.$emit(search, this.filters);
|
|
165
237
|
}
|
|
166
238
|
},
|
|
167
|
-
async updateItem(item:
|
|
168
|
-
event.preventDefault();
|
|
239
|
+
async updateItem(item: DataSetItems, index: number){
|
|
169
240
|
if(!this.crud){
|
|
170
|
-
this.rowClick(item);
|
|
241
|
+
this.rowClick(item.dataItem);
|
|
171
242
|
}else{
|
|
172
|
-
this.currentId = item[this.options.Key!];
|
|
173
|
-
this.$emit(change, item);
|
|
243
|
+
this.currentId = item.dataItem[this.options.Key!];
|
|
244
|
+
this.$emit(change, item.dataItem);
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
if(this.select){
|
|
248
|
+
for(let dataSet of this.dataSetItems){
|
|
249
|
+
dataSet.rowClass = '';
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
item.rowClass = selectedRow;
|
|
253
|
+
this.$emit(itemSelection, item.dataItem);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
if(this.multiSelect){
|
|
257
|
+
item.selected = !item.selected;
|
|
258
|
+
|
|
259
|
+
if(item.rowClass == selectedRow){
|
|
260
|
+
item.rowClass = '';
|
|
261
|
+
}else{
|
|
262
|
+
item.rowClass = selectedRow;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
this.$emit(multiSelection, this.dataSetItems.filter(dataSet => dataSet.selected).map(dataSet => { return dataSet.dataItem } ));
|
|
174
266
|
}
|
|
175
267
|
},
|
|
176
268
|
filterValue(event: any, dataItem: any){
|
|
@@ -190,9 +282,6 @@ export default {
|
|
|
190
282
|
dataItem = new window.Date(event);
|
|
191
283
|
}
|
|
192
284
|
},
|
|
193
|
-
isNumber(n: any) {
|
|
194
|
-
return !isNaN(parseFloat(n)) && !isNaN(n - 0)
|
|
195
|
-
},
|
|
196
285
|
optionschange(event: any){
|
|
197
286
|
this.page = event!.page;
|
|
198
287
|
this.filters.CurrentPage = this.page;
|
|
@@ -237,8 +326,22 @@ export default {
|
|
|
237
326
|
prop.sort = !prop.sort;
|
|
238
327
|
this.filters.SortColumn = Object.keys(this.dataItems[0])[index];
|
|
239
328
|
this.filters.SortDirection = window.Number(prop.sort);
|
|
240
|
-
console.log(this.filters);
|
|
241
329
|
this.search();
|
|
330
|
+
},
|
|
331
|
+
selectItem(event){
|
|
332
|
+
console.log(event);
|
|
333
|
+
},
|
|
334
|
+
multiSelectItems(event){
|
|
335
|
+
for(const value of this.dataSetItems){
|
|
336
|
+
if(!this.multiSelected){
|
|
337
|
+
value.selected = true;
|
|
338
|
+
value.rowClass = selectedRow;
|
|
339
|
+
}else{
|
|
340
|
+
value.selected = false;
|
|
341
|
+
value.rowClass = '';
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
this.multiSelected = !this.multiSelected;
|
|
242
345
|
}
|
|
243
346
|
}
|
|
244
347
|
}
|
|
@@ -257,55 +360,80 @@ export default {
|
|
|
257
360
|
</v-row>
|
|
258
361
|
<v-row>
|
|
259
362
|
<v-data-table
|
|
363
|
+
v-if="loaded"
|
|
364
|
+
@update:options="optionschange($event)"
|
|
365
|
+
:v-bind:loading-text="'Loading... Please wait'"
|
|
260
366
|
:color="'white'"
|
|
261
367
|
:striped="'odd'"
|
|
262
|
-
:v-bind:loading-text="'Loading... Please wait'"
|
|
263
368
|
:loading="loading"
|
|
264
369
|
:v-bind:model-value="modelValue"
|
|
265
370
|
:items="dataItems"
|
|
266
|
-
@update:options="optionschange($event)"
|
|
267
371
|
:items-per-page="perPage"
|
|
268
372
|
:page="page"
|
|
269
373
|
hide-default-header
|
|
270
374
|
hide-default-footer
|
|
271
375
|
multi-sort
|
|
376
|
+
hover
|
|
272
377
|
return-object>
|
|
273
|
-
<template v-slot:item="{ item, index }"
|
|
274
|
-
<
|
|
275
|
-
<
|
|
276
|
-
<
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
378
|
+
<template v-slot:item="{ item, index }">
|
|
379
|
+
<template v-for="dataSet in dataSetItems" :v-bind="item" v-bind:key="dataSet.id">
|
|
380
|
+
<template v-if="isEqual(item, dataSet.dataItem)">
|
|
381
|
+
<tr v-if="dataSet.startPosition && showFilters" class="filter-items" >
|
|
382
|
+
<td v-if="multiSelect" @click="multiSelectItems($event)">
|
|
383
|
+
<FontAwesomeIcon v-if="multiSelected" :icon="faCheck"></FontAwesomeIcon>
|
|
384
|
+
<FontAwesomeIcon v-else :icon="faSquare"></FontAwesomeIcon>
|
|
385
|
+
</td>
|
|
386
|
+
<td v-for="(item, index) in dataheader">
|
|
387
|
+
<SortView
|
|
388
|
+
:dataHeader="item"
|
|
389
|
+
:startPosition="index < 1"
|
|
390
|
+
:id="index"
|
|
391
|
+
@sort="sort($event, item, index)">
|
|
392
|
+
</SortView>
|
|
393
|
+
</td>
|
|
394
|
+
</tr>
|
|
395
|
+
<tr v-if="dataSet.startPosition && showFilters" class="filter-items" >
|
|
396
|
+
<td v-if="multiSelect">
|
|
397
|
+
</td>
|
|
398
|
+
<td v-for="prop in Object.keys(dataSet.dataItem)">
|
|
399
|
+
<Filters
|
|
400
|
+
:item="dataSet.dataItem"
|
|
401
|
+
:filters="filters"
|
|
402
|
+
:showFilters="showFilters"
|
|
403
|
+
:options="options"
|
|
404
|
+
:prop="prop"
|
|
405
|
+
@filterValue="filterValue($event, filters[prop])">
|
|
406
|
+
</Filters>
|
|
407
|
+
</td>
|
|
408
|
+
</tr>
|
|
409
|
+
<tr @click="updateItem(dataSet, dataSet.id!)" :class="dataSet.rowClass">
|
|
410
|
+
<td v-if="multiSelect" v-bind="dataSet.dataItem">
|
|
411
|
+
<FontAwesomeIcon v-if="dataSet.selected" :icon="faCheck"></FontAwesomeIcon>
|
|
412
|
+
<FontAwesomeIcon v-else :icon="faSquare"></FontAwesomeIcon>
|
|
413
|
+
</td>
|
|
414
|
+
<td v-for="(prop) in Object.keys(dataSet.dataItem)">
|
|
415
|
+
<DataItem
|
|
416
|
+
:item="dataSet.dataItem"
|
|
417
|
+
:prop="prop"
|
|
418
|
+
:options="options"
|
|
419
|
+
:id="dataSet.id!">
|
|
420
|
+
</DataItem>
|
|
421
|
+
</td>
|
|
422
|
+
</tr>
|
|
423
|
+
</template>
|
|
424
|
+
</template>
|
|
305
425
|
</template>
|
|
306
426
|
</v-data-table>
|
|
427
|
+
<v-data-table-server
|
|
428
|
+
v-else
|
|
429
|
+
:items-length="0"
|
|
430
|
+
item-key="name"
|
|
431
|
+
loading-text="Loading... Please wait"
|
|
432
|
+
loading>
|
|
433
|
+
</v-data-table-server>
|
|
307
434
|
</v-row>
|
|
308
435
|
<PaginationView
|
|
436
|
+
v-if="loaded"
|
|
309
437
|
:page="page"
|
|
310
438
|
:perPage="perPage"
|
|
311
439
|
:pageCount="pageCount"
|
|
@@ -349,4 +477,8 @@ export default {
|
|
|
349
477
|
height: 56px;
|
|
350
478
|
}
|
|
351
479
|
|
|
480
|
+
.selected-row{
|
|
481
|
+
background-color: rgb(209, 208, 208);
|
|
482
|
+
}
|
|
483
|
+
|
|
352
484
|
</style>
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
type: Object,
|
|
9
9
|
required: true
|
|
10
10
|
},
|
|
11
|
-
|
|
11
|
+
id: {
|
|
12
12
|
type: Number,
|
|
13
13
|
required: true
|
|
14
14
|
},
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
item(newValue: any, oldValue: any) {
|
|
27
27
|
this.item = newValue;
|
|
28
28
|
},
|
|
29
|
-
|
|
30
|
-
this.
|
|
29
|
+
id(newValue: any, oldValue: any) {
|
|
30
|
+
this.id = newValue;
|
|
31
31
|
},
|
|
32
32
|
prop(newValue: any, oldValue: any) {
|
|
33
33
|
this.prop = newValue;
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
data() {
|
|
37
37
|
return {
|
|
38
38
|
item: this.item,
|
|
39
|
-
|
|
39
|
+
id: this.id,
|
|
40
40
|
prop: this.prop,
|
|
41
41
|
options: this.options,
|
|
42
42
|
isDateTime: isDateTime,
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
{{ item[prop] }}
|
|
52
52
|
</span>
|
|
53
53
|
<span v-else-if="prop == options.Key! && options.Active">
|
|
54
|
-
{{
|
|
54
|
+
{{ id }}
|
|
55
55
|
</span>
|
|
56
56
|
<span v-else-if="isDateTime(item[prop])">
|
|
57
57
|
{{ toDate(item[prop]) }}
|