!30 docs: 📝 完善社区准则文档

Merge pull request !30 from nongyehong/dev
This commit is contained in:
nongyehong 2024-10-08 02:58:13 +00:00 committed by Gitee
commit e7c79e4c5f
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
17 changed files with 509 additions and 257 deletions

4
.github/FUNDING.yml vendored
View File

@ -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
View 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
View 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

View File

@ -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"
},

File diff suppressed because it is too large Load Diff

View File

@ -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">

View File

@ -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">
<!-- 收缩按钮 -->

View File

@ -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];

View File

@ -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"

View File

@ -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>

View File

@ -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>

View File

@ -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>
<!-- 头像模块 -->

View File

@ -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" />
<!-- 需要判断当前路由是否是信息详情界面 -->

View File

@ -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 */

View File

@ -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 */

View File

@ -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 keydata-key (nyh -> 2024-03-28 18:56:20)
// if (currentSession.value.roomId !== -1) {
// nextTick(() => {

View File

@ -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])">