File tree 2 files changed +28
-6
lines changed
2 files changed +28
-6
lines changed Original file line number Diff line number Diff line change 1
1
<template >
2
2
<div >
3
- {{emailSelection.emails.size}}
3
+ <input type =" checkbox"
4
+ :checked =" allAreSelected"
5
+ :class =" [partialSelection ? 'partial-check' : '']" >
4
6
</div >
5
7
</template >
6
8
7
9
<script >
8
10
import { useEmailSelection } from ' ../composition/useEmailSelection' ;
11
+ import { computed } from ' vue' ;
9
12
10
13
export default {
11
- setup (){
14
+ setup ({emails} ){
12
15
let { emailSelection } = useEmailSelection ();
13
-
14
- return { emailSelection }
15
- }
16
+
17
+ let numberSelected = computed (() => {
18
+ return emailSelection .emails .size ;
19
+ })
20
+ let allAreSelected = computed (() => {
21
+ return emails .length == numberSelected .value ;
22
+ })
23
+ let partialSelection = computed (() => {
24
+ return numberSelected .value > 0 && ! allAreSelected .value ;
25
+ })
26
+
27
+ return {
28
+ partialSelection,
29
+ allAreSelected
30
+ }
31
+ },
32
+ props: {
33
+ emails: {
34
+ type: Array ,
35
+ required: true
36
+ }
37
+ }
16
38
}
17
39
</script >
18
40
Original file line number Diff line number Diff line change 1
1
<template >
2
2
<table class =" mail-table" >
3
- <BulkActionBar />
3
+ <BulkActionBar :emails = " unarchivedEmails " />
4
4
5
5
<tbody >
6
6
<tr v-for =" email in unarchivedEmails"
You can’t perform that action at this time.
0 commit comments