@@ -4,10 +4,46 @@ import { ColumnNames, useAuditStore } from "@/stores/AuditStore";
4
4
import { storeToRefs } from " pinia" ;
5
5
import { useRoute } from " vue-router" ;
6
6
import DataView from " ../DataView.vue" ;
7
+ import SortableColumn from " ../SortableColumn.vue" ;
8
+ import { MessageStatus } from " @/resources/Message" ;
7
9
8
10
const route = useRoute ();
9
11
const store = useAuditStore ();
10
12
const { messages, sortByInstances, itemsPerPage } = storeToRefs (store );
13
+
14
+ function statusToName(messageStatus : MessageStatus ) {
15
+ switch (messageStatus ) {
16
+ case MessageStatus .Successful :
17
+ return " Successful" ;
18
+ case MessageStatus .ResolvedSuccessfully :
19
+ return " Successful after retries" ;
20
+ case MessageStatus .Failed :
21
+ return " Failed" ;
22
+ case MessageStatus .ArchivedFailure :
23
+ return " Failed message deleted" ;
24
+ case MessageStatus .RepeatedFailure :
25
+ return " Repeated Failures" ;
26
+ case MessageStatus .RetryIssued :
27
+ return " Retry requested" ;
28
+ }
29
+ }
30
+
31
+ function statusToIcon(messageStatus : MessageStatus ) {
32
+ switch (messageStatus ) {
33
+ case MessageStatus .Successful :
34
+ return " fa successful" ;
35
+ case MessageStatus .ResolvedSuccessfully :
36
+ return " fa resolved-successfully" ;
37
+ case MessageStatus .Failed :
38
+ return " fa failed" ;
39
+ case MessageStatus .ArchivedFailure :
40
+ return " fa archived" ;
41
+ case MessageStatus .RepeatedFailure :
42
+ return " fa repeated-failure" ;
43
+ case MessageStatus .RetryIssued :
44
+ return " fa retry-issued" ;
45
+ }
46
+ }
11
47
</script >
12
48
13
49
<template >
@@ -36,8 +72,8 @@ const { messages, sortByInstances, itemsPerPage } = storeToRefs(store);
36
72
<template #data =" { pageData } " >
37
73
<div role =" rowgroup" aria-label =" endpoints" >
38
74
<div role =" row" :aria-label =" message.message_id" class =" row grid-row" v-for =" message in pageData" :key =" message.id" >
39
- <div role =" cell" aria-label =" instance-name " class =" status" >
40
- {{ "todo" }}
75
+ <div role =" cell" aria-label =" status " class =" status" :title = " statusToName(message.status) " >
76
+ < div class = " status-icon " :class = " statusToIcon(message.status) " ></ div >
41
77
</div >
42
78
<div role =" cell" aria-label =" message-id" class =" col-3 message-id" >
43
79
<div class =" box-header" >
@@ -46,7 +82,7 @@ const { messages, sortByInstances, itemsPerPage } = storeToRefs(store);
46
82
<p :style =" { overflowWrap: 'break-word' }" >{{ message.message_id }}</p >
47
83
</template >
48
84
<RouterLink class =" hackToPreventSafariFromShowingTooltip" aria-label =" details-link" :to =" { path: routeLinks.audit.message.link(message.id), query: { back: route.path } }" >
49
- {{ message.id }}
85
+ {{ message.message_id }}
50
86
</RouterLink >
51
87
</tippy >
52
88
</div >
@@ -83,4 +119,61 @@ const { messages, sortByInstances, itemsPerPage } = storeToRefs(store);
83
119
width : 5em ;
84
120
text-align : center ;
85
121
}
122
+
123
+ .status-icon {
124
+ color : white ;
125
+ border-radius : 0.75em ;
126
+ width : 1.2em ;
127
+ height : 1.2em ;
128
+ }
129
+
130
+ .status-icon ::before {
131
+ vertical-align : middle ;
132
+ font-size : 0.85em ;
133
+ }
134
+
135
+ .successful {
136
+ background : #6cc63f ;
137
+ }
138
+ .successful ::before {
139
+ content : " \f00c " ;
140
+ }
141
+
142
+ .resolved-successfully {
143
+ background : #3f881b ;
144
+ }
145
+ .resolved-successfully ::before {
146
+ content : " \f01e " ;
147
+ }
148
+
149
+ .failed {
150
+ background : #c63f3f ;
151
+ }
152
+ .failed ::before {
153
+ content : " \f00d " ;
154
+ }
155
+
156
+ .archived {
157
+ background : #000000 ;
158
+ }
159
+ .archived ::before {
160
+ content : " \f187 " ;
161
+ font-size : 0.85em ;
162
+ }
163
+
164
+ .repeated-failure {
165
+ background : #c63f3f ;
166
+ }
167
+ .repeated-failure ::before {
168
+ content : " \f00d\f00d " ;
169
+ font-size : 0.6em ;
170
+ }
171
+
172
+ .retry-issued {
173
+ background : #cccccc ;
174
+ color : #000000 ;
175
+ }
176
+ .retry-issued ::before {
177
+ content : " \f01e " ;
178
+ }
86
179
</style >
0 commit comments