mirror of
https://gitee.com/HuLaSpark/HuLa.git
synced 2024-12-01 19:28:07 +08:00
commit
e7c79e4c5f
4
.github/FUNDING.yml
vendored
4
.github/FUNDING.yml
vendored
@ -1,3 +1,5 @@
|
||||
# These are supported funding model platforms
|
||||
|
||||
github: [nongyehong]
|
||||
github: HuLaSpark
|
||||
patreon: #
|
||||
open_collective: HuLa-IM-Tauri
|
||||
|
75
CONTRIBUTING.md
Normal file
75
CONTRIBUTING.md
Normal file
@ -0,0 +1,75 @@
|
||||
# HuLa-IM-Tauri - Contributing Guide 🌟
|
||||
|
||||
We're thrilled that you want to contribute to HuLa-IM-Tauri! 😄
|
||||
|
||||
HuLa-IM-Tauri is an open-source project, and we welcome your collaboration. Before you jump in, let's make sure you're all set to contribute effectively and have loads of fun along the way!
|
||||
|
||||
## Fork the Repository
|
||||
|
||||
🍴 Fork this repository to your GitHub account by clicking the "Fork" button at the top right. This creates a personal copy of the project you can work on.
|
||||
|
||||
## Clone Your Fork
|
||||
|
||||
📦 Clone your forked repository to your local machine using the `git clone` command:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/HuLaSpark/HuLa-IM-Tauri.git
|
||||
```
|
||||
|
||||
## Create a New Branch
|
||||
|
||||
🌿 Create a new branch for your contribution. This helps keep your work organized and separate from the main codebase.
|
||||
|
||||
```bash
|
||||
git checkout -b your-branch-name
|
||||
```
|
||||
|
||||
Choose a meaningful branch name related to your work. It makes collaboration easier!
|
||||
|
||||
## Code Like a Wizard
|
||||
|
||||
🧙♀️ Time to work your magic! Write your code, fix bugs, or add new features. Be sure to follow our project's coding style. You can check if your code adheres to our style using:
|
||||
|
||||
```bash
|
||||
pnpm run lint:staged
|
||||
```
|
||||
|
||||
This adds a bit of enchantment to your coding experience! ✨
|
||||
|
||||
## Committing Your Work
|
||||
|
||||
📝 Ready to save your progress? Commit your changes to your branch.
|
||||
|
||||
```bash
|
||||
pnpm run commit
|
||||
```
|
||||
|
||||
This will commit all the files to git, Please keep your commits focused and clear. And remember to be kind to your fellow contributors; keep your commits concise.
|
||||
|
||||
## Sync with Upstream
|
||||
|
||||
⚙️ Periodically, sync your forked repository with the original (upstream) repository to stay up-to-date with the latest changes.
|
||||
|
||||
```bash
|
||||
git remote add upstream https://github.com/HuLaSpark/HuLa-IM-Tauri.git
|
||||
git fetch upstream
|
||||
git merge upstream/master
|
||||
```
|
||||
|
||||
This ensures you're working on the most current version of HuLa-IM-Tauri. Stay fresh! 💨
|
||||
|
||||
## Open a Pull Request
|
||||
|
||||
🚀 Time to share your contribution! Head over to the original HuLa-IM-Tauri repository and open a Pull Request (PR). Our maintainers will review your work.
|
||||
|
||||
## Review and Collaboration
|
||||
|
||||
👓 Your PR will undergo thorough review and testing. The maintainers will provide feedback, and you can collaborate to make your contribution even better. We value teamwork!
|
||||
|
||||
## Celebrate 🎉
|
||||
|
||||
Congratulations! Your contribution is now part of HuLa-IM-Tauri. 🥳
|
||||
|
||||
Thank you for making HuLa-IM-Tauri even more magical. We can't wait to see what you create! 🌠
|
||||
|
||||
Happy Coding! 🚀
|
19
SECURITY.md
Normal file
19
SECURITY.md
Normal file
@ -0,0 +1,19 @@
|
||||
# Security Policy
|
||||
|
||||
## Supported Versions
|
||||
|
||||
There are now two versions of HuLa-IM-Tauri, one is an earlier version using simulated data
|
||||
and the other is a later version using server data
|
||||
|
||||
| Version | Supported |
|
||||
|---------|--------------------------------------|
|
||||
| 1.4 | :Comparatively complete features: |
|
||||
| 1.5 | :Support more features: |
|
||||
| 1.6 | :Interconnect with backend data: |
|
||||
| 2.x | :Developed on the basis of Tauri-V2: |
|
||||
|
||||
## Reporting a Vulnerability
|
||||
|
||||
Now the installation package downloaded in the browser will have a virus error, this is because there
|
||||
is no security code set for the reason, this follow-up is set according to the platform, the Windows
|
||||
platform costs less, so we focus on the solution of the Windows platform
|
@ -51,7 +51,7 @@
|
||||
"pinia": "^2.2.1",
|
||||
"pinia-plugin-persistedstate": "^3.2.1",
|
||||
"pinia-shared-state": "^0.5.1",
|
||||
"vue": "^3.5.10",
|
||||
"vue": "^3.5.11",
|
||||
"vue-draggable-plus": "^0.5.3",
|
||||
"vue-router": "^4.4.2"
|
||||
},
|
||||
|
618
pnpm-lock.yaml
618
pnpm-lock.yaml
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<!-- 顶部操作栏和显示用户名 -->
|
||||
<main
|
||||
class="relative z-30 flex-y-center border-b-(1px solid [--line-color]) justify-between p-[6px_20px_12px] select-none">
|
||||
class="relative z-30 flex-y-center border-b-(1px solid [--right-chat-footer-line-color]) justify-between p-[6px_20px_12px] select-none">
|
||||
<n-flex align="center">
|
||||
<span class="color-[--text-color]">{{ activeItem.name }}</span>
|
||||
<svg v-if="activeItem.hot_Flag === IsAllUserEnum.Yes" class="size-20px color-#13987f select-none outline-none">
|
||||
|
@ -3,7 +3,9 @@
|
||||
<main
|
||||
v-if="isGroup"
|
||||
:class="
|
||||
isCollapsed ? 'w-180px border-l-(1px solid [--line-color]) p-[12px_0_12px_6px] custom-shadow' : 'w-0 pr-1px'
|
||||
isCollapsed
|
||||
? 'w-180px border-l-(1px solid [--right-chat-footer-line-color]) p-[12px_0_12px_6px] custom-shadow'
|
||||
: 'w-0 pr-1px'
|
||||
"
|
||||
class="item-box">
|
||||
<!-- 收缩按钮 -->
|
||||
|
@ -39,7 +39,7 @@
|
||||
</svg>
|
||||
</div>
|
||||
<!-- 关闭窗口 -->
|
||||
<div v-if="closeW" @click="handleCloseWin" class="action-close rounded-rt-8px">
|
||||
<div v-if="closeW" @click="handleCloseWin" :class="{ windowMaximized: 'rounded-rt-8px' }" class="action-close">
|
||||
<svg class="size-14px color-[--action-bar-icon-color] cursor-pointer">
|
||||
<use href="#close"></use>
|
||||
</svg>
|
||||
@ -240,7 +240,7 @@ onUnmounted(() => {
|
||||
|
||||
<style scoped lang="scss">
|
||||
.hover-box {
|
||||
@apply w-28px h24px flex-center hover:bg-[--action-bar-icon-hover];
|
||||
@apply w-28px h24px flex-center hover:bg-[--icon-hover-color];
|
||||
}
|
||||
.action-close {
|
||||
@apply w-28px h24px flex-center cursor-pointer hover:bg-#c22b1c svg:hover:color-[#fff];
|
||||
|
@ -3,7 +3,7 @@
|
||||
data-tauri-drag-region
|
||||
id="center"
|
||||
:class="{ 'rounded-r-8px': shrinkStatus }"
|
||||
class="resizable select-none flex flex-col border-r-(1px solid [--line-color])"
|
||||
class="resizable select-none flex flex-col border-r-(1px solid [--right-chat-footer-line-color])"
|
||||
:style="{ width: `${initWidth}px` }">
|
||||
<!-- 分隔条 -->
|
||||
<div v-if="!shrinkStatus" class="resize-handle transition-all duration-600 ease-in-out" @mousedown="initDrag">
|
||||
@ -24,7 +24,8 @@
|
||||
:current-label="appWindow.label" />
|
||||
|
||||
<!-- 顶部搜索栏 -->
|
||||
<header class="mt-30px w-full h-40px flex flex-col items-center border-b-(1px solid [--line-color])">
|
||||
<header
|
||||
class="mt-30px w-full h-40px flex flex-col items-center border-b-(1px solid [--right-chat-footer-line-color])">
|
||||
<div class="flex-center gap-5px w-full pr-16px pl-16px box-border">
|
||||
<n-input
|
||||
id="search"
|
||||
|
@ -12,6 +12,7 @@ import Left from './left/index.vue'
|
||||
import Right from './right/index.vue'
|
||||
import Mitt from '@/utils/Bus'
|
||||
import { MittEnum } from '@/enums'
|
||||
import { getCurrentWebviewWindow } from '@tauri-apps/api/webviewWindow'
|
||||
|
||||
const shrinkStatus = ref(false)
|
||||
/**
|
||||
@ -21,4 +22,8 @@ const shrinkStatus = ref(false)
|
||||
Mitt.on(MittEnum.SHRINK_WINDOW, (event) => {
|
||||
shrinkStatus.value = event as boolean
|
||||
})
|
||||
|
||||
onMounted(async () => {
|
||||
await getCurrentWebviewWindow().show()
|
||||
})
|
||||
</script>
|
||||
|
@ -130,7 +130,7 @@
|
||||
trigger="click">
|
||||
<template #trigger>
|
||||
<svg
|
||||
:class="{ 'color--[--left-active-hover]': settingShow }"
|
||||
:class="{ 'color-[--left-active-hover]': settingShow }"
|
||||
class="more size-22px relative"
|
||||
@click="settingShow = !settingShow">
|
||||
<use :href="settingShow ? '#hamburger-button-action' : '#hamburger-button'"></use>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div style="background: rgba(30, 30, 30, 0.8)">
|
||||
<main
|
||||
class="left rounded-l-8px min-w-64px h-full p-[30px_6px_15px] box-border flex-col-center select-none"
|
||||
class="left min-w-64px h-full p-[30px_6px_15px] box-border flex-col-center select-none"
|
||||
data-tauri-drag-region>
|
||||
<p class="text-(16px [--left-text-color]) cursor-default select-none m-[4px_0_16px_0]">HuLa</p>
|
||||
<!-- 头像模块 -->
|
||||
|
@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<main class="flex-1 bg-[--right-bg-color] rounded-r-8px h-full w-100vw min-w-600px">
|
||||
<main class="flex-1 bg-[--right-bg-color] h-full w-100vw min-w-600px">
|
||||
<div class="size-full" style="background: var(--right-theme-bg-color)">
|
||||
<ActionBar :current-label="appWindow.label" />
|
||||
<!-- 需要判断当前路由是否是信息详情界面 -->
|
||||
|
@ -27,6 +27,9 @@
|
||||
|
||||
//列表通用hover
|
||||
--list-hover-color: rgba(99, 99, 99, 0.1);
|
||||
|
||||
//整体hover图标的样式
|
||||
--icon-hover-color: rgba(166, 166, 166, 0.2);
|
||||
}
|
||||
}
|
||||
|
||||
@ -58,6 +61,9 @@ html[data-theme='dark'] {
|
||||
|
||||
//列表通用hover
|
||||
--list-hover-color: rgba(244, 244, 244, 0.1);
|
||||
|
||||
//整体hover图标的样式
|
||||
--icon-hover-color: rgba(90, 90, 90, 0.4);
|
||||
}
|
||||
}
|
||||
/**! end */
|
||||
|
@ -27,6 +27,9 @@
|
||||
|
||||
//列表通用hover
|
||||
--list-hover-color: rgba(99, 99, 99, 0.1);
|
||||
|
||||
//整体hover图标的样式
|
||||
--icon-hover-color: #e7e7e7;
|
||||
}
|
||||
}
|
||||
|
||||
@ -51,13 +54,16 @@ html[data-theme='dark'] {
|
||||
// 聊天框主体样式
|
||||
--right-chat-reply-color: #3b3b3b;
|
||||
--right-chat-reply-active-color: rgba(255, 255, 255, 0.1);
|
||||
--right-chat-footer-line-color: #404040;
|
||||
--right-chat-footer-line-color: #202020;
|
||||
|
||||
// 消息列表样式
|
||||
--msg-active-color: rgba(19, 152, 127, 0.4);
|
||||
|
||||
//列表通用hover
|
||||
--list-hover-color: rgba(244, 244, 244, 0.1);
|
||||
|
||||
//整体hover图标的样式
|
||||
--icon-hover-color: #242424;
|
||||
}
|
||||
}
|
||||
/**! end */
|
||||
|
@ -65,7 +65,6 @@ import { useGlobalStore } from '@/stores/global.ts'
|
||||
import { useUserInfo } from '@/hooks/useCached.ts'
|
||||
import { renderReplyContent } from '@/utils/RenderReplyContent.ts'
|
||||
import { useCommon } from '@/hooks/useCommon.ts'
|
||||
import { getCurrentWebviewWindow } from '@tauri-apps/api/webviewWindow'
|
||||
|
||||
const chatStore = useChatStore()
|
||||
const globalStore = useGlobalStore()
|
||||
@ -126,8 +125,7 @@ onBeforeMount(() => {
|
||||
chatStore.getSessionList(true)
|
||||
})
|
||||
|
||||
onMounted(async () => {
|
||||
await getCurrentWebviewWindow().show()
|
||||
onMounted(() => {
|
||||
// TODO 这里的key后面如果换成用户唯一标识的时候记得更换data-key的值 (nyh -> 2024-03-28 18:56:20)
|
||||
// if (currentSession.value.roomId !== -1) {
|
||||
// nextTick(() => {
|
||||
|
@ -16,7 +16,7 @@
|
||||
给我们点一颗星吗?这个小小的动作对我们来说意义重大,能激励我们为您持续提供特性体验。
|
||||
</p>
|
||||
|
||||
<n-flex :size="20" class="ml-auto">
|
||||
<n-flex :size="10" class="ml-auto">
|
||||
<div
|
||||
@click="isStar = false"
|
||||
class="border-(1px solid #999) cursor-pointer w-40px h-30px rounded-8px flex-center text-(12px [--text-color])">
|
||||
@ -47,7 +47,7 @@
|
||||
您的每一个想法和建议对我们来说都弥足珍贵,我们迫不及待地想知道您的看法!欢迎联系我们提供产品功能和使用体验反馈。
|
||||
</p>
|
||||
|
||||
<n-flex :size="20" class="ml-auto">
|
||||
<n-flex :size="10" class="ml-auto">
|
||||
<div
|
||||
@click="isIssue = false"
|
||||
class="border-(1px solid #999) cursor-pointer w-40px h-30px rounded-8px flex-center text-(12px [--text-color])">
|
||||
|
Loading…
Reference in New Issue
Block a user