mirror of
https://github.com/yangjian102621/geekai.git
synced 2025-09-17 08:46:38 +08:00
细节处修改
This commit is contained in:
parent
0c1f650e9c
commit
ab903e3cc1
@ -8,6 +8,9 @@
|
||||
::v-deep (.el-message-box__message){
|
||||
font-size: 18px !important
|
||||
}
|
||||
.newChat{
|
||||
margin-bottom: 10px
|
||||
}
|
||||
// left side
|
||||
.el-container{
|
||||
height: 100%;
|
||||
@ -115,7 +118,7 @@
|
||||
background-color :var(--theme-bg);
|
||||
box-shadow: 0px 3px 9px rgba(112,144,176,0.12);
|
||||
|
||||
border: 1px solid var(--border-active);
|
||||
border: 1px solid var(--shadow-color);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -219,6 +222,8 @@
|
||||
.chat-box {
|
||||
overflow-y: auto;
|
||||
//border-bottom: 1px solid #4f4f4f
|
||||
scrollbar-width: none; /* 隐藏滚动条(Firefox) */
|
||||
-ms-overflow-style: none; /* 隐藏滚动条(IE、Edge) */
|
||||
|
||||
// 变量定义
|
||||
--content-font-size: 16px;
|
||||
@ -234,6 +239,9 @@
|
||||
|
||||
|
||||
}
|
||||
::-webkit-scrollbar {
|
||||
display: none; /* 隐藏滚动条(Webkit 浏览器) */
|
||||
}
|
||||
}
|
||||
|
||||
.input-box {
|
||||
|
@ -23,7 +23,8 @@
|
||||
--el-input-focus-border-color: #b0a0f8;
|
||||
--little-btn-bg:#e9d3f6;
|
||||
--gray-btn-bg:#ededf591;
|
||||
--a-link-color: #3561ff
|
||||
// --a-link-color: #3561ff
|
||||
--a-link-color: #6e8eff
|
||||
--shadow-color:rgba(223,71,255,0.6)
|
||||
--sm-btn-bg:#6052ed;
|
||||
--theme-text-tertiary: #595959;
|
||||
|
@ -23,4 +23,15 @@
|
||||
::-webkit-scrollbar-thumb:hover {
|
||||
background-color: #666666;
|
||||
}
|
||||
overflow: auto; /* 保持滚动功能 */
|
||||
scrollbar-width: none; /* 隐藏滚动条(Firefox) */
|
||||
-ms-overflow-style: none; /* 隐藏滚动条(IE、Edge) */
|
||||
::-webkit-scrollbar {
|
||||
display: none; /* 隐藏滚动条(Webkit 浏览器) */
|
||||
}
|
||||
&.showScrollbar {
|
||||
::-webkit-scrollbar {
|
||||
display: none; /* 隐藏滚动条(Webkit 浏览器) */
|
||||
}
|
||||
}
|
||||
}
|
@ -379,7 +379,7 @@
|
||||
display block
|
||||
cursor pointer
|
||||
background-color #4E5058
|
||||
color var(--text-theme-color)
|
||||
color #fff
|
||||
|
||||
&:hover {
|
||||
background-color #6D6F78
|
||||
|
@ -259,7 +259,7 @@
|
||||
background none
|
||||
padding 6px
|
||||
transition background 0.6s ease 0s
|
||||
color #726E6C
|
||||
color #919191
|
||||
|
||||
&:hover {
|
||||
// background #5f5958
|
||||
|
@ -164,6 +164,8 @@
|
||||
&:hover {
|
||||
// box-shadow: 0 0 10px rgba(71, 255, 241, 0.6); /* 添加阴影效果 */
|
||||
transform: translateY(-10px); /* 向上移动10像素 */
|
||||
box-shadow: 0 0 10px var(--shadow-color);
|
||||
background-color: #30323c;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
.el-overlay-dialog {
|
||||
.el-dialog {
|
||||
background-color #1a1b1e
|
||||
// background-color #1a1b1e
|
||||
|
||||
.el-dialog__header {
|
||||
.el-dialog__title {
|
||||
@ -33,14 +33,15 @@
|
||||
}
|
||||
|
||||
.task-info {
|
||||
background-color #25262b
|
||||
// background-color #25262b
|
||||
padding 1rem 1.5rem
|
||||
|
||||
|
||||
.info-line {
|
||||
width 100%
|
||||
|
||||
.prompt {
|
||||
background-color #35363b
|
||||
// background-color #35363b
|
||||
padding 10px
|
||||
color #999999
|
||||
overflow auto
|
||||
@ -64,16 +65,16 @@
|
||||
label {
|
||||
display flex
|
||||
width 100px
|
||||
color #a5a5a5
|
||||
color :var(--el-text-color-primary)
|
||||
}
|
||||
|
||||
.item-value {
|
||||
display flex
|
||||
width 100%
|
||||
background-color #35363b
|
||||
// background-color #35363b
|
||||
padding 2px 5px
|
||||
border-radius 5px
|
||||
color #F5F5F5
|
||||
color: var(--text-theme-color);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3,6 +3,13 @@
|
||||
height 100%
|
||||
// background-color #0E0808
|
||||
overflow auto
|
||||
.item-group{
|
||||
scrollbar-width: auto !important; /* 恢复滚动条(Firefox) */
|
||||
-ms-overflow-style: auto !important; /* 恢复滚动条(IE、Edge) */
|
||||
::-webkit-scrollbar {
|
||||
display: block !important;
|
||||
}
|
||||
}
|
||||
|
||||
.left-bar {
|
||||
max-width 340px
|
||||
@ -147,8 +154,14 @@
|
||||
position relative
|
||||
overflow-x auto
|
||||
overflow-y hidden
|
||||
scrollbar-width: auto !important; /* 恢复滚动条(Firefox) */
|
||||
-ms-overflow-style: auto !important; /* 恢复滚动条(IE、Edge) */
|
||||
width 100%
|
||||
|
||||
::-webkit-scrollbar {
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
.inner {
|
||||
display flex
|
||||
flex-flow row
|
||||
@ -256,7 +269,7 @@
|
||||
font-weight 700
|
||||
|
||||
a {
|
||||
color vae( --a-link-color)
|
||||
color var( --a-link-color)
|
||||
&:hover {
|
||||
text-decoration underline
|
||||
}
|
||||
@ -309,7 +322,7 @@
|
||||
background none
|
||||
padding 6px
|
||||
transition background 0.6s ease 0s
|
||||
color #726E6C
|
||||
color #919191
|
||||
|
||||
&:hover {
|
||||
// background #5f5958
|
||||
|
@ -21,7 +21,8 @@
|
||||
--btnColor: linear-gradient(88deg, #af61f0 1.44%, #5b62ce);
|
||||
--border-active:rgba(255, 255, 255, 0.1);
|
||||
// --card-bg: rgba(17, 28, 68, 1);
|
||||
--card-bg: #1f243f;
|
||||
// --card-bg: #1f243f;
|
||||
--card-bg:#252d58;
|
||||
--card-bg-table: rgba(17, 28, 68, 1);
|
||||
--theme-bg:rgb(13, 20, 53);
|
||||
--theme-bg-all:rgb(13, 20, 53);
|
||||
@ -34,7 +35,8 @@
|
||||
--el-bg-color-overlay: rgba(17, 28, 68, 1);
|
||||
--el-border-color-light: rgba(255, 255, 255, 0.2);
|
||||
--line-box:rgba(255, 255, 255, 0.1);
|
||||
--chat-bg:#141a36;
|
||||
// --chat-bg:#141a36;
|
||||
--chat-bg:#1f243f
|
||||
--el-bg-color:#141a36;
|
||||
--el-fill-color-blank: rgba(17, 28, 68, 1);
|
||||
--el-fill-color-light: rgba(86, 86, 95, .2);
|
||||
|
@ -432,10 +432,12 @@ const reGenerate = (prompt) => {
|
||||
line-height 1.5
|
||||
|
||||
code {
|
||||
color:var(--theme-text-color-primary);
|
||||
background-color var( --little-btn-bg)
|
||||
color:#fff;
|
||||
background-color var( --el-color-primary)
|
||||
padding 0 3px;
|
||||
border-radius 5px;
|
||||
font-size: 16px;
|
||||
padding: 5px 7px;
|
||||
}
|
||||
}
|
||||
|
||||
@ -539,7 +541,7 @@ const reGenerate = (prompt) => {
|
||||
}
|
||||
|
||||
.bar-item.bg {
|
||||
background-color var( --gray-btn-bg)
|
||||
// background-color var( --gray-btn-bg)
|
||||
cursor pointer
|
||||
}
|
||||
|
||||
|
@ -41,7 +41,7 @@
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</el-row>
|
||||
<el-empty :image-size="100" v-else />
|
||||
<el-empty :image-size="100" v-else :image="nodata" description="暂无数据" />
|
||||
<div class="pagination">
|
||||
<el-pagination
|
||||
v-if="total > 0"
|
||||
@ -59,6 +59,8 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import nodata from "@/assets/img/no-data.png";
|
||||
|
||||
import { onMounted, ref } from "vue";
|
||||
import { httpGet } from "@/utils/http";
|
||||
import { ElMessage } from "element-plus";
|
||||
|
@ -1,29 +1,25 @@
|
||||
<template>
|
||||
<div class="black-dialog">
|
||||
<el-dialog
|
||||
v-model="showDialog"
|
||||
style="--el-dialog-bg-color:#414141;
|
||||
--el-text-color-primary:#f1f1f1;
|
||||
--el-border-color:#414141;
|
||||
--el-color-primary:#21aa93;
|
||||
--el-color-primary-dark-2:#41555d;
|
||||
--el-color-white: #e1e1e1;
|
||||
--el-color-primary-light-3:#549688;
|
||||
--el-fill-color-blank:#616161;
|
||||
--el-color-primary-light-7:#717171;
|
||||
--el-color-primary-light-9:#717171;
|
||||
--el-text-color-regular:#e1e1e1"
|
||||
:title="title"
|
||||
:width="width"
|
||||
:before-close="cancel"
|
||||
v-model="showDialog"
|
||||
:title="title"
|
||||
:width="width"
|
||||
:before-close="cancel"
|
||||
>
|
||||
<div class="dialog-body">
|
||||
<slot></slot>
|
||||
</div>
|
||||
<template #footer v-if="!hideFooter">
|
||||
<div class="dialog-footer">
|
||||
<el-button @click="cancel">{{cancelText}}</el-button>
|
||||
<el-button type="primary" @click="$emit('confirm')" v-if="!hideConfirm">{{confirmText}}</el-button>
|
||||
<el-button @click="cancel" style="--el-border-radius-base: 8px">{{
|
||||
cancelText
|
||||
}}</el-button>
|
||||
<el-button
|
||||
type="primary"
|
||||
@click="$emit('confirm')"
|
||||
v-if="!hideConfirm"
|
||||
>{{ confirmText }}</el-button
|
||||
>
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
@ -31,45 +27,47 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
|
||||
import {ref, watch} from "vue";
|
||||
import { ref, watch } from "vue";
|
||||
const props = defineProps({
|
||||
show : Boolean,
|
||||
show: Boolean,
|
||||
title: {
|
||||
type: String,
|
||||
default: 'Tips',
|
||||
default: "Tips"
|
||||
},
|
||||
width: {
|
||||
type: String,
|
||||
default: 'auto',
|
||||
default: "auto"
|
||||
},
|
||||
hideFooter:{
|
||||
hideFooter: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
hideConfirm:{
|
||||
hideConfirm: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
confirmText: {
|
||||
type: String,
|
||||
default: '确定',
|
||||
default: "确定"
|
||||
},
|
||||
cancelText: {
|
||||
type: String,
|
||||
default: '取消',
|
||||
},
|
||||
default: "取消"
|
||||
}
|
||||
});
|
||||
const emits = defineEmits(['confirm','cancal']);
|
||||
const showDialog = ref(props.show)
|
||||
const emits = defineEmits(["confirm", "cancal"]);
|
||||
const showDialog = ref(props.show);
|
||||
|
||||
watch(() => props.show, (newValue) => {
|
||||
showDialog.value = newValue
|
||||
})
|
||||
watch(
|
||||
() => props.show,
|
||||
(newValue) => {
|
||||
showDialog.value = newValue;
|
||||
}
|
||||
);
|
||||
const cancel = () => {
|
||||
showDialog.value = false
|
||||
emits('cancal')
|
||||
}
|
||||
showDialog.value = false;
|
||||
emits("cancal");
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="stylus">
|
||||
@ -110,5 +108,4 @@ const cancel = () => {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
|
@ -3,12 +3,12 @@
|
||||
<el-container>
|
||||
<el-aside>
|
||||
<div class="media-page">
|
||||
<!-- <el-button @click="_newChat" color="#21aa93">
|
||||
<el-button @click="_newChat" type="primary" class="newChat">
|
||||
<el-icon style="margin-right: 5px">
|
||||
<Plus/>
|
||||
<Plus />
|
||||
</el-icon>
|
||||
新建对话
|
||||
</el-button> -->
|
||||
</el-button>
|
||||
|
||||
<div class="search-box">
|
||||
<el-input
|
||||
@ -248,7 +248,7 @@
|
||||
</textarea>
|
||||
</div>
|
||||
<div class="flex-between">
|
||||
<div @click="_newChat" class="flex-center add-new">
|
||||
<!-- <div @click="_newChat" class="flex-center add-new">
|
||||
<el-tooltip
|
||||
class="box-item"
|
||||
effect="dark"
|
||||
@ -256,7 +256,7 @@
|
||||
>
|
||||
<el-icon><CirclePlusFilled /></el-icon>
|
||||
</el-tooltip>
|
||||
</div>
|
||||
</div> -->
|
||||
<div class="flex little-btns">
|
||||
<span class="send-btn tool-item-btn">
|
||||
<!-- showStopGenerate -->
|
||||
@ -688,7 +688,7 @@ const resizeElement = function () {
|
||||
|
||||
// leftBoxHeight.value = window.innerHeight - 90 - 45 - 82;
|
||||
// leftBoxHeight.value = window.innerHeight - 90 - 82;
|
||||
leftBoxHeight.value = window.innerHeight - 90 - 50;
|
||||
leftBoxHeight.value = window.innerHeight - 90 - 100;
|
||||
};
|
||||
|
||||
const _newChat = () => {
|
||||
|
@ -181,7 +181,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- :style="{ 'padding-left': isCollapse ? '65px' : '170px' }" -->
|
||||
<div class="right-main">
|
||||
<el-scrollbar class="right-main">
|
||||
<div
|
||||
v-if="loginUser.id === undefined || !loginUser.id"
|
||||
class="loginMask"
|
||||
@ -205,7 +205,7 @@
|
||||
</router-view>
|
||||
</div>
|
||||
<!-- </div> -->
|
||||
</div>
|
||||
</el-scrollbar>
|
||||
<config-dialog
|
||||
v-if="loginUser.id"
|
||||
:show="showConfigDialog"
|
||||
@ -309,13 +309,20 @@ const changeNav = (item) => {
|
||||
curPath.value = item.url;
|
||||
if (item.url.indexOf("http") !== -1) {
|
||||
// 外部链接
|
||||
router.push({ name: "ExternalLink", query: { url: item.url } });
|
||||
window.open(item.url, "_blank");
|
||||
} else {
|
||||
router.push(item.url);
|
||||
// 路由切换,确保路径变化
|
||||
if (router.currentRoute.value.path !== item.url) {
|
||||
router.push(item.url).then(() => {
|
||||
// 刷新 `routerViewKey` 触发视图重新渲染
|
||||
routerViewKey.value += 1;
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
curPath.value = router.currentRoute.value.path;
|
||||
getSystemInfo()
|
||||
.then((res) => {
|
||||
logo.value = res.data.logo;
|
||||
|
Loading…
Reference in New Issue
Block a user