Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
canifa_note
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Vũ Hoàng Anh
canifa_note
Commits
edf934ef
Unverified
Commit
edf934ef
authored
Apr 21, 2023
by
boojack
Committed by
GitHub
Apr 21, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
chore: update memo style (#1581)
parent
d0815f58
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
29 additions
and
52 deletions
+29
-52
Memo.tsx
web/src/components/Memo.tsx
+17
-29
Divider.tsx
web/src/components/kit/Divider.tsx
+9
-0
memo.less
web/src/less/memo.less
+1
-21
zh-Hans.json
web/src/locales/zh-Hans.json
+2
-2
No files found.
web/src/components/Memo.tsx
View file @
edf934ef
...
@@ -2,9 +2,10 @@ import { getRelativeTimeString } from "@/helpers/datetime";
...
@@ -2,9 +2,10 @@ import { getRelativeTimeString } from "@/helpers/datetime";
import
{
memo
,
useEffect
,
useRef
,
useState
}
from
"react"
;
import
{
memo
,
useEffect
,
useRef
,
useState
}
from
"react"
;
import
{
toast
}
from
"react-hot-toast"
;
import
{
toast
}
from
"react-hot-toast"
;
import
{
useTranslation
}
from
"react-i18next"
;
import
{
useTranslation
}
from
"react-i18next"
;
import
{
Link
,
useNavigate
}
from
"react-router-dom"
;
import
{
Link
}
from
"react-router-dom"
;
import
{
useEditorStore
,
useFilterStore
,
useMemoStore
,
useUserStore
}
from
"@/store/module"
;
import
{
useEditorStore
,
useFilterStore
,
useMemoStore
,
useUserStore
}
from
"@/store/module"
;
import
Tooltip
from
"./kit/Tooltip"
;
import
Tooltip
from
"./kit/Tooltip"
;
import
Divider
from
"./kit/Divider"
;
import
{
showCommonDialog
}
from
"./Dialog/CommonDialog"
;
import
{
showCommonDialog
}
from
"./Dialog/CommonDialog"
;
import
Icon
from
"./Icon"
;
import
Icon
from
"./Icon"
;
import
MemoContent
from
"./MemoContent"
;
import
MemoContent
from
"./MemoContent"
;
...
@@ -22,7 +23,6 @@ interface Props {
...
@@ -22,7 +23,6 @@ interface Props {
const
Memo
:
React
.
FC
<
Props
>
=
(
props
:
Props
)
=>
{
const
Memo
:
React
.
FC
<
Props
>
=
(
props
:
Props
)
=>
{
const
{
memo
,
readonly
}
=
props
;
const
{
memo
,
readonly
}
=
props
;
const
{
t
,
i18n
}
=
useTranslation
();
const
{
t
,
i18n
}
=
useTranslation
();
const
navigate
=
useNavigate
();
const
editorStore
=
useEditorStore
();
const
editorStore
=
useEditorStore
();
const
filterStore
=
useFilterStore
();
const
filterStore
=
useFilterStore
();
const
userStore
=
useUserStore
();
const
userStore
=
useUserStore
();
...
@@ -44,10 +44,6 @@ const Memo: React.FC<Props> = (props: Props) => {
...
@@ -44,10 +44,6 @@ const Memo: React.FC<Props> = (props: Props) => {
};
};
},
[
i18n
.
language
]);
},
[
i18n
.
language
]);
const
handleViewMemoDetailPage
=
()
=>
{
navigate
(
`/m/
${
memo
.
id
}
`
);
};
const
handleTogglePinMemoBtnClick
=
async
()
=>
{
const
handleTogglePinMemoBtnClick
=
async
()
=>
{
try
{
try
{
if
(
memo
.
pinned
)
{
if
(
memo
.
pinned
)
{
...
@@ -213,34 +209,26 @@ const Memo: React.FC<Props> = (props: Props) => {
...
@@ -213,34 +209,26 @@ const Memo: React.FC<Props> = (props: Props) => {
<
Icon
.
MoreHorizontal
className=
"icon-img"
/>
<
Icon
.
MoreHorizontal
className=
"icon-img"
/>
</
span
>
</
span
>
<
div
className=
"more-action-btns-wrapper"
>
<
div
className=
"more-action-btns-wrapper"
>
<
div
className=
"more-action-btns-container"
>
<
div
className=
"more-action-btns-container min-w-[6em]"
>
<
div
className=
"w-full flex flex-row justify-between px-3 py-2 mb-1 border-b dark:border-zinc-700"
>
<
span
className=
"btn"
onClick=
{
handleTogglePinMemoBtnClick
}
>
<
Tooltip
title=
{
memo
.
pinned
?
t
(
"common.unpin"
)
:
t
(
"common.pin"
)
}
side=
"top"
>
{
memo
.
pinned
?
<
Icon
.
BookmarkMinus
className=
"w-4 h-auto mr-2"
/>
:
<
Icon
.
BookmarkPlus
className=
"w-4 h-auto mr-2"
/>
}
<
div
onClick=
{
handleTogglePinMemoBtnClick
}
>
{
memo
.
pinned
?
t
(
"common.unpin"
)
:
t
(
"common.pin"
)
}
{
memo
.
pinned
?
(
</
span
>
<
Icon
.
Bookmark
className=
"w-4 h-auto cursor-pointer rounded text-green-600"
/>
<
span
className=
"btn"
onClick=
{
handleEditMemoClick
}
>
)
:
(
<
Icon
.
Edit3
className=
"w-4 h-auto mr-2"
/>
<
Icon
.
BookmarkPlus
className=
"w-4 h-auto cursor-pointer rounded dark:text-gray-400"
/>
{
t
(
"common.edit"
)
}
)
}
</
span
>
</
div
>
<
span
className=
"btn"
onClick=
{
handleGenerateMemoImageBtnClick
}
>
</
Tooltip
>
<
Icon
.
Share
className=
"w-4 h-auto mr-2"
/>
<
Tooltip
title=
{
t
(
"common.edit"
)
}
side=
"top"
>
{
t
(
"common.share"
)
}
<
Icon
.
Edit3
className=
"w-4 h-auto cursor-pointer rounded dark:text-gray-400"
onClick=
{
handleEditMemoClick
}
/>
</
Tooltip
>
<
Tooltip
title=
{
t
(
"common.share"
)
}
side=
"top"
>
<
Icon
.
Share
className=
"w-4 h-auto cursor-pointer rounded dark:text-gray-400"
onClick=
{
handleGenerateMemoImageBtnClick
}
/>
</
Tooltip
>
</
div
>
<
span
className=
"btn"
onClick=
{
handleViewMemoDetailPage
}
>
{
t
(
"memo.view-detail"
)
}
</
span
>
</
span
>
<
Divider
/>
<
span
className=
"btn text-orange-500"
onClick=
{
handleArchiveMemoClick
}
>
<
span
className=
"btn text-orange-500"
onClick=
{
handleArchiveMemoClick
}
>
<
Icon
.
Archive
className=
"w-4 h-auto mr-2"
/>
{
t
(
"common.archive"
)
}
{
t
(
"common.archive"
)
}
</
span
>
</
span
>
<
span
className=
"btn text-red-600"
onClick=
{
handleDeleteMemoClick
}
>
<
span
className=
"btn text-red-600"
onClick=
{
handleDeleteMemoClick
}
>
<
Icon
.
Trash
className=
"w-4 h-auto mr-2"
/>
{
t
(
"common.delete"
)
}
{
t
(
"common.delete"
)
}
</
span
>
</
span
>
</
div
>
</
div
>
...
...
web/src/components/kit/Divider.tsx
0 → 100644
View file @
edf934ef
interface
Props
{
className
?:
string
;
}
const
Divider
=
({
className
}:
Props
)
=>
{
return
<
hr
className=
{
`${className} block my-1 border-gray-200 dark:border-gray-600`
}
/>;
};
export
default
Divider
;
web/src/less/memo.less
View file @
edf934ef
...
@@ -50,28 +50,8 @@
...
@@ -50,28 +50,8 @@
@apply w-auto h-auto p-1 z-1 whitespace-nowrap rounded-lg bg-white dark:bg-zinc-800;
@apply w-auto h-auto p-1 z-1 whitespace-nowrap rounded-lg bg-white dark:bg-zinc-800;
box-shadow: 0 0 8px 0 rgb(0 0 0 / 20%);
box-shadow: 0 0 8px 0 rgb(0 0 0 / 20%);
> .btns-container {
@apply w-full flex flex-row justify-around items-center border-b border-gray-100 dark:border-zinc-600 p-1 mb-1;
> .btn {
@apply relative w-6 h-6 p-1 text-gray-600 dark:text-gray-300 cursor-pointer select-none;
&:hover > .tip-text {
@apply block;
}
> .icon-img {
@apply w-5 h-auto;
}
> .tip-text {
@apply hidden absolute top-0 p-1 px-2 rounded text-xs leading-6 -mt-9 bg-black text-white shadow opacity-70;
}
}
}
> .btn {
> .btn {
@apply w-full text-sm leading-6 py-1 px-3 rounded justify-start cursor-pointer dark:text-gray-300;
@apply w-full text-sm leading-6 py-1 px-3 rounded justify-start cursor-pointer
select-none
dark:text-gray-300;
&.archive-btn {
&.archive-btn {
@apply text-orange-600;
@apply text-orange-600;
...
...
web/src/locales/zh-Hans.json
View file @
edf934ef
...
@@ -55,7 +55,7 @@
...
@@ -55,7 +55,7 @@
"avatar"
:
"头像"
,
"avatar"
:
"头像"
,
"rename"
:
"改名"
,
"rename"
:
"改名"
,
"upload"
:
"上传"
,
"upload"
:
"上传"
,
"visibility"
:
"
能见度
"
,
"visibility"
:
"
可见性
"
,
"preview"
:
"预览"
,
"preview"
:
"预览"
,
"name"
:
"姓名"
,
"name"
:
"姓名"
,
"clear"
:
"清除"
"clear"
:
"清除"
...
@@ -326,4 +326,4 @@
...
@@ -326,4 +326,4 @@
"router"
:
{
"router"
:
{
"back-to-home"
:
"回到首页"
"back-to-home"
:
"回到首页"
}
}
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment