This commit is contained in:
2020-02-05 00:04:40 +00:00
parent baaf28dda7
commit 6f4f38b44c

View File

@@ -89,54 +89,14 @@
class="elevation-1"
>
<template v-slot:header="props">
<div>
<v-icon v-if="props.someItems" x-large>fa-square</v-icon>
<v-icon x-large>fa-minus-square</v-icon>
<v-icon x-large>fa-check-square</v-icon>
<!-- Mimic the full width data table select all toggle -->
<div @click="props.toggleSelectAll(!props.everyItem)">
<v-icon v-if="!props.someItems" x-large>fa-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><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 v-slot:default="{ items }">
@@ -299,15 +259,7 @@ export default {
//could be more efficient if it just sends the ID's instead:
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) {
//translate key to actual object type from header data
//key format is row-column e.g."500-2"