@@ -41,63 +41,68 @@ export default define.page<typeof handler>(function Tickets({
41
41
sortBy = { data . sortBy }
42
42
currentUrl = { url }
43
43
>
44
- { data . tickets . map ( ( ticket ) => (
45
- < TableRow key = { ticket . id } >
46
- < TableData >
47
- < div class = "flex items-center gap-1.5" >
48
- { ticket . messages . at ( - 1 ) ! . author . id === ticket . creator . id &&
49
- ! ticket . closed && (
50
- < div class = "rounded-full bg-orange-600 h-2.5 w-2.5" />
51
- ) }
52
- < div
53
- class = { `${
54
- ticket . closed ? "bg-green-400" : "bg-orange-400"
55
- } rounded-full p-1`}
56
- >
57
- { ticket . closed
58
- ? < TbCheck class = "text-white" />
59
- : < TbClock class = "text-white" /> }
44
+ { data . tickets . map ( ( ticket ) => {
45
+ const isNotification =
46
+ ticket . messages . at ( - 1 ) ! . author . id === ticket . creator . id &&
47
+ ! ticket . closed ;
48
+
49
+ return (
50
+ < TableRow key = { ticket . id } >
51
+ < TableData >
52
+ < div class = "flex items-center gap-1.5" >
53
+ { isNotification && (
54
+ < div class = "rounded-full bg-orange-600 h-2.5 w-2.5" />
55
+ ) }
56
+ < div
57
+ class = { `${
58
+ ticket . closed ? "bg-green-400" : "bg-orange-400"
59
+ } ${ ! isNotification && "ml-4" } rounded-full p-1`}
60
+ >
61
+ { ticket . closed
62
+ ? < TbCheck class = "text-white" />
63
+ : < TbClock class = "text-white" /> }
64
+ </ div >
65
+ < span > { ticket . closed ? "closed" : "open" } </ span >
60
66
</ div >
61
- < span > { ticket . closed ? "closed" : "open" } </ span >
62
- </ div >
63
- </ TableData >
64
- < TableData >
65
- < a
66
- href = { `/admin/users?search=${ ticket . creator . id } ` }
67
- class = "underline underline-offset-2"
67
+ </ TableData >
68
+ < TableData >
69
+ < a
70
+ href = { `/admin/users?search=${ ticket . creator . id } ` }
71
+ class = "underline underline-offset-2"
72
+ >
73
+ { ticket . creator . name }
74
+ </ a >
75
+ </ TableData >
76
+ < TableData >
77
+ < a href = { `/ticket/${ ticket . id } ` } > { ticket . id } </ a >
78
+ </ TableData >
79
+ < TableData >
80
+ { ticket . kind . replaceAll ( "_" , " " ) }
81
+ </ TableData >
82
+ < TableData
83
+ title = { new Date ( ticket . updatedAt ) . toISOString ( ) . slice (
84
+ 0 ,
85
+ 10 ,
86
+ ) }
87
+ align = "right"
88
+ >
89
+ { twas ( new Date ( ticket . updatedAt ) . getTime ( ) ) }
90
+ </ TableData >
91
+ < TableData
92
+ title = { new Date ( ticket . createdAt ) . toISOString ( ) . slice (
93
+ 0 ,
94
+ 10 ,
95
+ ) }
96
+ align = "right"
68
97
>
69
- { ticket . creator . name }
70
- </ a >
71
- </ TableData >
72
- < TableData >
73
- < a href = { `/ticket/${ ticket . id } ` } > { ticket . id } </ a >
74
- </ TableData >
75
- < TableData >
76
- { ticket . kind . replaceAll ( "_" , " " ) }
77
- </ TableData >
78
- < TableData
79
- title = { new Date ( ticket . updatedAt ) . toISOString ( ) . slice (
80
- 0 ,
81
- 10 ,
82
- ) }
83
- align = "right"
84
- >
85
- { twas ( new Date ( ticket . updatedAt ) . getTime ( ) ) }
86
- </ TableData >
87
- < TableData
88
- title = { new Date ( ticket . createdAt ) . toISOString ( ) . slice (
89
- 0 ,
90
- 10 ,
91
- ) }
92
- align = "right"
93
- >
94
- { twas ( new Date ( ticket . createdAt ) . getTime ( ) ) }
95
- </ TableData >
96
- < TableData align = "right" >
97
- < a class = "button-primary" href = { `/ticket/${ ticket . id } ` } > view</ a >
98
- </ TableData >
99
- </ TableRow >
100
- ) ) }
98
+ { twas ( new Date ( ticket . createdAt ) . getTime ( ) ) }
99
+ </ TableData >
100
+ < TableData align = "right" >
101
+ < a class = "button-primary" href = { `/ticket/${ ticket . id } ` } > view</ a >
102
+ </ TableData >
103
+ </ TableRow >
104
+ ) ;
105
+ } ) }
101
106
</ Table >
102
107
</ div >
103
108
) ;
0 commit comments