@cryptotaxi247 / CoPilot / commits / bc56c48e

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>