Files
yphsalumni.org/app/components/index/Events.vue
xiaomai cd414542a9 style(theme): expand color palettes and refine dark mode styles
- Expand CSS variables for primary and secondary colors to include full 50-950 scales in `main.css`.
- Update components to reference specific color shades (e.g., `primary-400`, `secondary-200`) instead of generic variables.
- Add dark mode background and text colors to Events, Hall of Fame, and Index sections.
- Adjust image aspect ratio in the Events component.
2025-11-28 17:25:02 +08:00

43 lines
1.2 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<!-- 活动模块 -->
<UPageSection title="校友活动" class="bg-gray-100 dark:bg-slate-800">
<UPageGrid>
<div
v-for="event in events"
:key="event.id"
class="bg-white dark:bg-slate-700 shadow rounded-xl"
>
<img
:src="event.cover"
:alt="event.title"
class="w-full aspect-video object-cover rounded-t-xl"
/>
<div class="p-6">
<h4 class="font-semibold text-lg mb-2">{{ event.title }}</h4>
<p class="text-sm text-gray-600 dark:text-gray-400 mb-1">
日期{{ useChineseDateFormat(event.date) }}
</p>
<p class="text-sm text-gray-600 dark:text-gray-400 mb-4">地点{{ event.location }}</p>
<UButton
label="阅读详情"
:to="event.path"
trailing-icon="mdi:book-open-blank-variant-outline"
/>
</div>
</div>
</UPageGrid>
</UPageSection>
</template>
<script lang="ts" setup>
const { data: events } = await useAsyncData("events", () =>
queryCollection("events")
.where("draft", "=", false)
.order("date", "DESC")
.limit(3)
.all()
);
</script>
<style></style>