Skip to content

Commit 95d26f6

Browse files
committed
refactor: Minor UI refactoring
1 parent ff4172e commit 95d26f6

File tree

7 files changed

+64
-66
lines changed

7 files changed

+64
-66
lines changed

components/Account/Profile.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<template>
22
<div>
3-
<ImageUpload
3+
<UploadImage
44
ref="uploadRef"
55
class="mx-auto shadow hover:shadow-lg border-blue-300 border-2"
66
:src="model.picture"

components/Account/Sessions.vue

Lines changed: 26 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,34 @@
11
<template>
2-
<n-list>
3-
<n-list-item v-for="session of sessions" :key="session.id">
4-
<n-thing>
5-
<template #avatar>
2+
<div class="flex flex-col gap-4">
3+
<div v-for="session of sessions" :key="session.id" class="flex justify-between">
4+
<TitleDate
5+
:title=" [
6+
session.ua && UAParser.UAParser(session.ua).browser.name,
7+
session.ua && UAParser.UAParser(session.ua).os.name,
8+
session.ua && UAParser.UAParser(session.ua).device.model
9+
]
10+
.join(' ')"
11+
12+
:updated-at="session.updatedAt"
13+
>
14+
<template #icon>
615
<n-tag size="small" :type="session.current ? 'success' : 'warning'">
716
{{ session.current ? 'Current' : 'Active' }}
817
</n-tag>
918
</template>
10-
11-
<template #header>
12-
<n-text strong class="text-base">
13-
{{
14-
[
15-
session.ua && UAParser.UAParser(session.ua).browser.name,
16-
session.ua && UAParser.UAParser(session.ua).os.name,
17-
session.ua && UAParser.UAParser(session.ua).device.model
18-
]
19-
.join(' ')
20-
}}
21-
</n-text>
22-
23-
<n-text depth="3" class="text-base">
24-
• <n-time
25-
:time="new Date(session.updatedAt)"
26-
type="relative"
27-
/>
28-
</n-text>
29-
</template>
30-
31-
<template #header-extra>
32-
<TooltipIconButton
33-
name="ph:trash"
34-
size="small"
35-
type="error"
36-
secondary
37-
:disabled="session.current"
38-
message="Delete session"
39-
circle
40-
@click="() => handleSessionRevoke(session.id)"
41-
/>
42-
</template>
43-
</n-thing>
44-
</n-list-item>
45-
</n-list>
19+
</TitleDate>
20+
21+
<TooltipIconButton
22+
name="ph:trash"
23+
type="error"
24+
secondary
25+
:disabled="session.current"
26+
message="Delete session"
27+
circle
28+
@click="() => handleSessionRevoke(session.id)"
29+
/>
30+
</div>
31+
</div>
4632
</template>
4733

4834
<script setup lang="ts">

components/Device/Card.vue

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
<template>
22
<nuxt-link :to="`/devices/${device.id}`">
3-
<n-card :title="device.name" size="small" hoverable class="h-full">
4-
<n-text depth="3">
5-
Created <n-time :time="new Date(device.createdAt)" type="relative" />
6-
</n-text>
7-
<br>
8-
<n-text depth="3">
9-
{{ device.description || 'no description' }}
10-
</n-text>
3+
<n-card size="small" hoverable class="h-full">
4+
<template #header>
5+
<TitleDate :title="device.name" :created-at="device.createdAt" />
6+
</template>
117

128
<template #header-extra>
139
<DeviceStatus :device="device" :size="24" />
1410
</template>
11+
12+
<n-text depth="3">
13+
{{ device.description || 'no description' }}
14+
</n-text>
1515
</n-card>
1616
</nuxt-link>
1717
</template>

components/Project/Card.vue

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
<template>
22
<nuxt-link :to="`/projects/${project.id}`">
3-
<n-card :title="project.name" size="small" hoverable class="h-full">
4-
<n-text depth="3">
5-
Created <n-time :time="new Date(project.createdAt)" type="relative" />
6-
</n-text>
7-
<br>
3+
<n-card size="small" hoverable class="h-full">
4+
<template #header>
5+
<TitleDate :title="project.name" :created-at="project.createdAt" />
6+
</template>
7+
88
<n-text depth="3">
99
{{ project.description || 'no description' }}
1010
</n-text>

components/Project/Releases.vue

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -30,18 +30,7 @@
3030
:name="release.version"
3131
>
3232
<template #header>
33-
<n-text strong>
34-
{{ release.version }}
35-
</n-text>
36-
<n-text class="mx-2">
37-
38-
</n-text>
39-
<n-text depth="3" class="text-base">
40-
Created <n-time
41-
:time="new Date(release.createdAt)"
42-
type="relative"
43-
/>
44-
</n-text>
33+
<TitleDate :title="release.version" :created-at="release.createdAt" />
4534
</template>
4635

4736
<LazyReleaseCard

components/Title/Date.vue

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<template>
2+
<div class="flex gap-2 items-center">
3+
<naive-icon v-if="icon" :name="icon" />
4+
5+
<slot name="icon" />
6+
7+
<n-text>
8+
{{ title }}
9+
</n-text>
10+
11+
<n-text v-if="createdAt" depth="3" class="text-base font-normal">
12+
• Created <n-time :time="new Date(createdAt)" type="relative" />
13+
</n-text>
14+
15+
<n-text v-if="updatedAt" depth="3" class="text-base font-normal">
16+
• Updated <n-time :time="new Date(updatedAt)" type="relative" />
17+
</n-text>
18+
</div>
19+
</template>
20+
21+
<script setup lang="ts">
22+
defineProps<{title:string, icon?:string, createdAt?: string, updatedAt?:string}>()
23+
</script>
File renamed without changes.

0 commit comments

Comments
 (0)