updated agent overview-section
Davide Di Modica committed
Oct 6, 2023 at 18:33 UTC
bc56c48e7a81014e023daa5fed8a57ff75c64a6e
1 file changed
+20
-40
src/components/agents/OverviewSection.vue
+20
-40
@@ -1,37 +1,9 @@
1
<template>
2
<div class="overview-section">
3
<div class="property-group">
4
- <n-card>
5
- <template #action>client_id</template>
6
- <div class="font-bold">{{ agent.client_id || "-" }}</div>
7
- </n-card>
8
- <n-card>
9
- <template #action>client_last_seen</template>
10
- <div class="font-bold">{{ formatClientLastSeen || "-" }}</div>
11
- </n-card>
12
- <n-card>
13
- <template #action>ip_address</template>
14
- <div class="font-bold">{{ agent.ip_address || "-" }}</div>
15
- </n-card>
16
- <n-card>
17
- <template #action>label</template>
18
- <div class="font-bold">{{ agent.label || "-" }}</div>
19
- </n-card>
20
- <n-card>
21
- <template #action>last_seen</template>
22
- <div class="font-bold">{{ formatLastSeen || "-" }}</div>
23
- </n-card>
24
- <n-card>
25
- <template #action>os</template>
26
- <div class="font-bold">{{ agent.os || "-" }}</div>
27
- </n-card>
28
- <n-card>
29
- <template #action>velociraptor_client_version</template>
30
- <div class="font-bold">{{ agent.velociraptor_client_version || "-" }}</div>
31
- </n-card>
32
- <n-card>
33
- <template #action>wazuh_agent_version</template>
34
- <div class="font-bold">{{ agent.wazuh_agent_version || "-" }}</div>
4
+ <n-card v-for="item of propsSanitized" :key="item.key">
5
+ <template #action>{{ item.key }}</template>
6
+ <div class="font-bold">{{ item.val }}</div>
7
</n-card>
8
</div>
9
</div>
@@ -48,19 +20,27 @@ const props = defineProps<{
20
}>()
21
const { agent } = toRefs(props)
22
51
-const formatLastSeen = computed(() => {
52
- const lastSeenDate = dayjs(agent.value.last_seen)
53
- if (!lastSeenDate.isValid()) return agent.value.last_seen
23
+const propsSanitized = computed(() => {
24
+ const obj = []
25
+ for (const key in agent.value) {
26
+ if (["wazuh_last_seen", "velociraptor_last_seen"].includes(key)) {
27
+ // @ts-ignore
28
+ obj.push({ key, val: formatDate(agent.value[key]) || "-" })
29
+ } else {
30
+ // @ts-ignore
31
+ obj.push({ key, val: agent.value[key] || "-" })
32
+ }
33
+ }
34
55
- return lastSeenDate.format("DD/MM/YYYY @ HH:mm")
35
+ return obj
36
})
37
58
-const formatClientLastSeen = computed(() => {
59
- const lastSeenDate = dayjs(agent.value.client_last_seen)
60
- if (!lastSeenDate.isValid()) return agent.value.last_seen
38
+const formatDate = (date: string) => {
39
+ const datejs = dayjs(date)
40
+ if (!datejs.isValid()) return date
41
62
- return lastSeenDate.format("DD/MM/YYYY @ HH:mm")
63
-})
42
+ return datejs.format("DD/MM/YYYY @ HH:mm")
43
+}
44
</script>
45
46
<style lang="scss" scoped>