This commit is contained in:
@@ -89,54 +89,14 @@
|
|||||||
class="elevation-1"
|
class="elevation-1"
|
||||||
>
|
>
|
||||||
<template v-slot:header="props">
|
<template v-slot:header="props">
|
||||||
<div>
|
<!-- Mimic the full width data table select all toggle -->
|
||||||
<v-icon v-if="props.someItems" x-large>fa-square</v-icon>
|
<div @click="props.toggleSelectAll(!props.everyItem)">
|
||||||
<v-icon x-large>fa-minus-square</v-icon>
|
<v-icon v-if="!props.someItems" x-large>fa-square</v-icon>
|
||||||
<v-icon x-large>fa-check-square</v-icon>
|
<v-icon v-if="props.someItems && !props.everyItem" x-large
|
||||||
|
>fa-minus-square</v-icon
|
||||||
|
>
|
||||||
|
<v-icon v-if="props.everyItem" x-large>fa-check-square</v-icon>
|
||||||
</div>
|
</div>
|
||||||
<div><v-btn @click="handleSelectAllToggle(props)">toggle</v-btn></div>
|
|
||||||
<!-- todo: put a checkbox icon here that is filled or not depending on select all status, also it triggers select all event -->
|
|
||||||
<!--
|
|
||||||
@click="props.toggleSelectAll(false)"
|
|
||||||
|
|
||||||
it('should select all', async () => {
|
|
||||||
const input = jest.fn()
|
|
||||||
const items = [
|
|
||||||
{ id: 'foo' },
|
|
||||||
{ id: 'bar' },
|
|
||||||
]
|
|
||||||
const toggleSelectAll = jest.fn()
|
|
||||||
|
|
||||||
const wrapper = mountFunction({
|
|
||||||
propsData: {
|
|
||||||
items,
|
|
||||||
},
|
|
||||||
listeners: {
|
|
||||||
input,
|
|
||||||
'toggle-select-all': toggleSelectAll,
|
|
||||||
},
|
|
||||||
scopedSlots: {
|
|
||||||
header (props) {
|
|
||||||
return this.$createElement('div', {
|
|
||||||
attrs: {
|
|
||||||
id: 'header',
|
|
||||||
},
|
|
||||||
on: {
|
|
||||||
click: () => props.toggleSelectAll(true),
|
|
||||||
},
|
|
||||||
})
|
|
||||||
},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
const header = wrapper.find('#header')
|
|
||||||
header.element.click()
|
|
||||||
|
|
||||||
await wrapper.vm.$nextTick()
|
|
||||||
|
|
||||||
expect(input).toHaveBeenCalledWith(items)
|
|
||||||
expect(toggleSelectAll).toHaveBeenCalledWith({ value: true })
|
|
||||||
}) -->
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template v-slot:default="{ items }">
|
<template v-slot:default="{ items }">
|
||||||
@@ -299,15 +259,7 @@ export default {
|
|||||||
//could be more efficient if it just sends the ID's instead:
|
//could be more efficient if it just sends the ID's instead:
|
||||||
this.$emit("update:selected", window.$gz._.map(this.selected, "id"));
|
this.$emit("update:selected", window.$gz._.map(this.selected, "id"));
|
||||||
},
|
},
|
||||||
handleSelectAllToggle(vv) {
|
|
||||||
// debugger;
|
|
||||||
vv.toggleSelectAll(!vv.everyItem);
|
|
||||||
// if (vv.everyItem) {
|
|
||||||
// vv.toggleSelectAll(false);
|
|
||||||
// } else if (vv.someItems) {
|
|
||||||
// vv.toggleSelectAll(true);
|
|
||||||
// }
|
|
||||||
},
|
|
||||||
btnClick(key, i) {
|
btnClick(key, i) {
|
||||||
//translate key to actual object type from header data
|
//translate key to actual object type from header data
|
||||||
//key format is row-column e.g."500-2"
|
//key format is row-column e.g."500-2"
|
||||||
|
|||||||
Reference in New Issue
Block a user