feat: add new features, update theme and build config

- Add 40+ new UI components including chat modules, discovery cards, photo galleries, FAQ and booking tools
- Standardize brand color across all styles by replacing $theme-color-500 SCSS variables with #0ccd58
- Add sass 1.58.3 dependency and update vite config for modern scss compiler support
- Refactor existing components (AddCarCrad, login page) and remove unused /quick/list router route
- Add utility functions for URL parameter handling
- Add static assets including custom znicons font, component images and icons
- Fix scss syntax issues and deprecation warnings
This commit is contained in:
duanshuwen
2026-05-26 22:49:52 +08:00
parent 548df7020c
commit ac8f5b5f64
159 changed files with 12439 additions and 629 deletions

View File

@@ -0,0 +1,85 @@
<template>
<div class="empty-container">
<!-- 图片变量 -->
<img v-if="!hasMessage" :src="imageSrc" class="main-image" />
<!-- 主标题变量 -->
<div v-if="!hasMessage" class="title">{{ mainTitle }}</div>
<!-- 副标题变量 -->
<div v-if="!hasMessage" class="sub-title-wrapper">
<span class="dot"></span>
<span class="sub-title">{{ subTitle }}</span>
<span class="dot"></span>
</div>
</div>
</template>
<script setup>
import { ossChengduUrl } from "@/request/base/baseUrl";
import { chatGuideSubTitle } from "@/constant/local";
const props = defineProps({
hasMessage: {
type: Boolean,
default: false
},
// 图片路径
imageSrc: {
type: String,
default: `${ossChengduUrl()}come_chat_image.png`
},
// 主标题
mainTitle: {
type: String,
default: '和我聊聊天吧!'
},
// 副标题
subTitle: {
type: String,
default: chatGuideSubTitle()
}
});
</script>
<style lang="scss" scoped>
.empty-container {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 90px 0;
.main-image {
width: 160px;
height: 160px;
margin-bottom: 20px;
}
.title {
font-size: 18px;
font-weight: bold;
color: #2c3e50;
margin-bottom: 4px;
text-align: center;
}
.sub-title-wrapper {
display: flex;
align-items: center;
.sub-title {
font-size: 12px;
color: #afb9c1;
margin: 0 6px;
}
.dot {
width: 5px;
height: 5px;
background-color: #42b983;
border-radius: 50%;
}
}
}
</style>