Skip to content

Commit 1a12238

Browse files
committed
feat: tweaks the color pattern of alert component
1 parent 93c7aaf commit 1a12238

1 file changed

Lines changed: 12 additions & 15 deletions

File tree

app/components/Alert.vue

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,31 @@
11
<script setup lang="ts">
22
interface Props {
33
variant: 'warning' | 'error'
4-
icon?: string
54
title?: string
65
}
76
87
defineProps<Props>()
98
10-
const variantClasses: Record<Props['variant'], string> = {
9+
const wrapperClasses: Record<Props['variant'], string> = {
1110
warning: 'border-amber-400/20 bg-amber-500/8',
1211
error: 'border-red-400/20 bg-red-500/8',
1312
}
1413
15-
const iconClasses: Record<Props['variant'], string> = {
16-
warning: 'text-amber-400/80',
17-
error: 'text-red-400/80',
14+
const titleClasses: Record<Props['variant'], string> = {
15+
warning: 'text-amber-800 dark:text-amber-300',
16+
error: 'text-red-800 dark:text-red-300',
17+
}
18+
19+
const bodyClasses: Record<Props['variant'], string> = {
20+
warning: 'text-amber-700 dark:text-amber-400',
21+
error: 'text-red-700 dark:text-red-400',
1822
}
1923
</script>
2024

2125
<template>
22-
<div role="alert" class="border rounded-md px-3 py-2.5" :class="variantClasses[variant]">
23-
<p v-if="icon || title" class="flex items-center gap-1.5 text-sm font-medium text-fg mb-1">
24-
<span
25-
v-if="icon"
26-
:class="[`i-lucide:${icon}`, 'w-3.5 h-3.5 shrink-0', iconClasses[variant]]"
27-
aria-hidden="true"
28-
/>
29-
{{ title }}
30-
</p>
31-
<div class="text-sm text-fg-muted">
26+
<div role="alert" class="border rounded-md px-3 py-2.5" :class="wrapperClasses[variant]">
27+
<p v-if="title" class="font-semibold mb-1" :class="titleClasses[variant]">{{ title }}</p>
28+
<div class="text-xs" :class="bodyClasses[variant]">
3229
<slot />
3330
</div>
3431
</div>

0 commit comments

Comments
 (0)