feat(ui): adopt Tailwind v4 design system and archive change

- Add tailwindcss v4 + @tailwindcss/vite to mall, shop-admin, admin
- Add @vmall/shared/theme.css tokens with html[data-accent] presets
- Add @vmall/ui kit (VBtn/VBadge/VField/VInput/VCard/VPanel/VTable/VPage,
  VAccentSwatch, useAccent) as a Nuxt module
- Convert all three apps to kit + utilities; delete ui.css/mall.css and
  every <style scoped>; consoles get accent presets, mall locked to red
- Fix VCard boolean prop default (padding) and PDP/store stale
  useAsyncData keys on param navigation
- Archive adopt-tailwind-design-system; new frontend-ui capability spec
This commit is contained in:
Chengdong Zhang
2026-09-22 18:22:50 +08:00
parent 4d2ee3b0bf
commit 0d0e10b97b
101 changed files with 2833 additions and 7207 deletions
+2 -2
View File
@@ -1,7 +1,7 @@
<script setup lang="ts">
const props = defineProps<{ status: string; kind: "order" | "shipment" | "invoice" }>();
const tone = computed(() => {
const tone = computed<"green" | "blue" | "red" | "orange">(() => {
if (["completed", "delivered", "issued"].includes(props.status)) return "green";
if (["paid", "fulfilling", "shipped"].includes(props.status)) return "blue";
if (["cancelled"].includes(props.status)) return "red";
@@ -15,5 +15,5 @@ const label = computed(() => {
</script>
<template>
<span class="badge" :class="tone">{{ $t(label) }}</span>
<VBadge :tone="tone">{{ $t(label) }}</VBadge>
</template>