@modeltables/fontawesome-vuetify 1.7.0 → 1.9.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 +186 -60
- package/components/table/data/ItemView.vue +5 -5
- package/dist/index.amd.ts +15 -15
- package/dist/index.esm.ts +5122 -4822
- 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 { DataSetItems } from '../dataSets/dataSetHeader';
|
|
19
|
+
import { DataSetHeader } 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,21 +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);
|
|
174
245
|
}
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
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 } ));
|
|
182
266
|
}
|
|
183
267
|
},
|
|
184
268
|
filterValue(event: any, dataItem: any){
|
|
@@ -190,9 +274,12 @@ export default {
|
|
|
190
274
|
dataItem = value;
|
|
191
275
|
}
|
|
192
276
|
},
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
277
|
+
filterDate(event: any, dataItem: any){
|
|
278
|
+
let item = dataItem;
|
|
279
|
+
if(item != null){
|
|
280
|
+
dataItem = event == '' ? null : new window.Date(event);
|
|
281
|
+
}else{
|
|
282
|
+
dataItem = new window.Date(event);
|
|
196
283
|
}
|
|
197
284
|
},
|
|
198
285
|
optionschange(event: any){
|
|
@@ -239,8 +326,22 @@ export default {
|
|
|
239
326
|
prop.sort = !prop.sort;
|
|
240
327
|
this.filters.SortColumn = Object.keys(this.dataItems[0])[index];
|
|
241
328
|
this.filters.SortDirection = window.Number(prop.sort);
|
|
242
|
-
console.log(this.filters);
|
|
243
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;
|
|
244
345
|
}
|
|
245
346
|
}
|
|
246
347
|
}
|
|
@@ -259,59 +360,80 @@ export default {
|
|
|
259
360
|
</v-row>
|
|
260
361
|
<v-row>
|
|
261
362
|
<v-data-table
|
|
363
|
+
v-if="loaded"
|
|
364
|
+
@update:options="optionschange($event)"
|
|
365
|
+
:v-bind:loading-text="'Loading... Please wait'"
|
|
262
366
|
:color="'white'"
|
|
263
367
|
:striped="'odd'"
|
|
264
|
-
:v-bind:loading-text="'Loading... Please wait'"
|
|
265
368
|
:loading="loading"
|
|
266
369
|
:v-bind:model-value="modelValue"
|
|
267
370
|
:items="dataItems"
|
|
268
|
-
@update:options="optionschange($event)"
|
|
269
371
|
:items-per-page="perPage"
|
|
270
372
|
:page="page"
|
|
271
373
|
hide-default-header
|
|
272
374
|
hide-default-footer
|
|
273
375
|
multi-sort
|
|
376
|
+
hover
|
|
274
377
|
return-object>
|
|
275
|
-
<template v-slot:item="{ item, index }"
|
|
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
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
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>
|
|
311
425
|
</template>
|
|
312
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>
|
|
313
434
|
</v-row>
|
|
314
435
|
<PaginationView
|
|
436
|
+
v-if="loaded"
|
|
315
437
|
:page="page"
|
|
316
438
|
:perPage="perPage"
|
|
317
439
|
:pageCount="pageCount"
|
|
@@ -355,4 +477,8 @@ export default {
|
|
|
355
477
|
height: 56px;
|
|
356
478
|
}
|
|
357
479
|
|
|
480
|
+
.selected-row{
|
|
481
|
+
background-color: rgb(209, 208, 208);
|
|
482
|
+
}
|
|
483
|
+
|
|
358
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]) }}
|