Commit Graph

35 Commits (main)

Author SHA1 Message Date
Ryan Wang 2cf0d6853a
feat: add slug existence check when creating posts (#7617)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

#### What this PR does / why we need it:

This PR adds frontend support for checking whether an slug already exists when creating posts.

Note:

1. The current implementation isn’t perfect, some actions (like clicking the “Publish” button) don’t check for duplicate slug yet.
2. Slug checking in the user center might not be accurate, since it may not have permission to query all posts.

<img width="695" alt="image" src="https://github.com/user-attachments/assets/baa37a82-49c2-43be-a4d8-0e0f22a9d73b" />

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/7615
Fixes https://github.com/halo-dev/halo/issues/3332

#### Special notes for your reviewer:

#### Does this PR introduce a user-facing change?

```release-note
创建文章时支持检查别名是否重复
```
2025-07-27 05:19:17 +00:00
Ryan Wang 5e28c6db0c
chore: update prettier and simplify config (#7589)
#### What type of PR is this?

/area ui
/kind cleanup

#### What this PR does / why we need it:

Upgrade Prettier and related plugins, and simplify Prettier configuration.

Now, formatting for all packages will be managed by Prettier in the project root directory.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-06-25 09:47:21 +00:00
Ryan Wang 4ca0a09281
refactor: adjust max width of post title field (#7564)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

#### What this PR does / why we need it:

before:

<img width="552" alt="image" src="https://github.com/user-attachments/assets/679a0b38-e215-4fb8-bee6-737504e03a7f" />

after:

<img width="696" alt="image" src="https://github.com/user-attachments/assets/7106c351-97ab-4a3c-978d-cfd9f8c20392" />

#### Which issue(s) this PR fixes:

Fixes #7561 

#### Does this PR introduce a user-facing change?

```release-note
调整 Console 文章列表的标题区域最大宽度
```
2025-06-19 08:03:00 +00:00
Ryan Wang f59e3a2909
refactor: remove unused width prop for post title field (#7545)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

#### What this PR does / why we need it:

Remove unused width prop for post title field

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-06-13 06:50:42 +00:00
Ryan Wang d39a571e46
refactor: adapt page header styles for responsive design (#7544)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

#### What this PR does / why we need it:

Adapt page header styles for responsive design

before:

<img width="415" alt="image" src="https://github.com/user-attachments/assets/feee6f09-9a77-4bbf-94c2-77725c9ce76b" />

after:

<img width="416" alt="image" src="https://github.com/user-attachments/assets/60bb07a3-5d34-4cf6-b103-5d1f2206d62d" />

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/6425

#### Special notes for your reviewer:

#### Does this PR introduce a user-facing change?

```release-note
优化移动端下文章编辑页面的样式
```
2025-06-13 06:06:42 +00:00
Ryan Wang 2cba28d21d
feat: add cover for post list in uc (#7534)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

#### What this PR does / why we need it:

Add cover image display for the post list in the uc.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-06-10 15:16:36 +00:00
Ryan Wang 204113bd87
refactor: improve button component styles (#7517)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

#### What this PR does / why we need it:

1. Add ghost variant
2. Improve icon style
3. Refactoring css using scss functions

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-06-09 15:38:34 +00:00
Ryan Wang 3fa6532d9b
refactor: convert post publish dates to human-readable format (#7526)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

#### What this PR does / why we need it:

<img width="1202" alt="image" src="https://github.com/user-attachments/assets/cac050d2-b984-4b48-afe0-e18db220ec19" />

#### Does this PR introduce a user-facing change?

```release-note
将 Console 端文章列表的发布时间改为语义化时间
```
2025-06-09 15:02:34 +00:00
Ryan Wang 7162b8da92
fix: correct attachment selection state after new upload (#7487)
#### What type of PR is this?

/area ui
/kind bug
/milestone 2.21.x

#### What this PR does / why we need it:

Fix correct attachment selection state after new upload.

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/7472

#### Does this PR introduce a user-facing change?

```release-note
修复当有已选择附件时,上传新附件导致所选附件状态异常的问题。
```
2025-05-30 10:10:28 +00:00
Ryan Wang b309bc532b
refactor: improve entity component layout for better device responsiveness (#7383)
* refactor: improve entity component layout for better device responsiveness

Signed-off-by: Ryan Wang <i@ryanc.cc>

* Resolve CSS style conflicts

Signed-off-by: Ryan Wang <i@ryanc.cc>

* Update missing translaions

Signed-off-by: Ryan Wang <i@ryanc.cc>

---------

Signed-off-by: Ryan Wang <i@ryanc.cc>
2025-05-21 11:29:41 +08:00
Zhe Xue d8bfecb86b
fix: resolve issue of duplicate post creation (#7313)
<!--  Thanks for sending a pull request!  Here are some tips for you:
1. 如果这是你的第一次,请阅读我们的贡献指南:<https://github.com/halo-dev/halo/blob/main/CONTRIBUTING.md>。
1. If this is your first time, please read our contributor guidelines: <https://github.com/halo-dev/halo/blob/main/CONTRIBUTING.md>.
2. 请根据你解决问题的类型为 Pull Request 添加合适的标签。
2. Please label this pull request according to what type of issue you are addressing, especially if this is a release targeted pull request.
3. 请确保你已经添加并运行了适当的测试。
3. Ensure you have added or ran the appropriate tests for your PR.
-->

#### What type of PR is this?

<!--
添加其中一个类别:
Add one of the following kinds:

/kind bug
/kind cleanup
/kind documentation
/kind feature
/kind improvement

适当添加其中一个或多个类别(可选):
Optionally add one or more of the following kinds if applicable:

/kind api-change
/kind deprecation
/kind failing-test
/kind flake
/kind regression
-->

/area ui
/kind bug

#### What this PR does / why we need it:

See #6994

#### Which issue(s) this PR fixes:

<!--
PR 合并时自动关闭 issue。
Automatically closes linked issue when PR is merged.

用法:`Fixes #<issue 号>`,或者 `Fixes (粘贴 issue 完整链接)`
Usage: `Fixes #<issue number>`, or `Fixes (paste link of issue)`.
-->
Fixes #6994

#### Special notes for your reviewer:

统一了发布文章时的行为,均先确保服务端创建草稿后保存内容。

#### Does this PR introduce a user-facing change?

<!--
如果当前 Pull Request 的修改不会造成用户侧的任何变更,在 `release-note` 代码块儿中填写 `NONE`。
否则请填写用户侧能够理解的 Release Note。如果当前 Pull Request 包含破坏性更新(Break Change),
Release Note 需要以 `action required` 开头。
If no, just write "NONE" in the release-note block below.
If yes, a release note is required:
Enter your extended release note in the block below. If the PR requires additional action from users switching to the new release, include the string "action required".
-->

```release-note
修复文章重复生成的问题
```
2025-03-31 06:01:47 +00:00
Ryan Wang e8ca93396f
feat: add retry mechanism for publishing posts on the UC end (#7171)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.20.x

#### What this PR does / why we need it:

为 UC 端发布文章的操作添加重试机制,防止出现因为锁导致的保存失败问题。

#### Which issue(s) this PR fixes:

Fixes #7139

#### Does this PR introduce a user-facing change?

```release-note
为 UC 端发布文章的操作添加重试机制,防止出现因为锁导致的保存失败问题。
```
2025-01-03 09:46:10 +00:00
Ryan Wang 9ecc8f1d95
fix: post slug generation not following selected strategy (#6914)
#### What type of PR is this?

/area ui
/kind bug
/milestone 2.20.x

#### What this PR does / why we need it:

修复文章自动生成别名不按照别名生成策略生成的问题。

#### Which issue(s) this PR fixes:

Fixes #6913 

#### Special notes for your reviewer:

需要测试:

1. 分类、标签创建和更新时的别名生成
2. 文章新建时,别名是否按照生成策略生成。

#### Does this PR introduce a user-facing change?

```release-note
修复文章自动生成别名不按照别名生成策略生成的问题。
```
2024-10-22 06:52:28 +00:00
guqing 2585636c48
feat: allow users to manage their attachments in uc (#6731)
#### What type of PR is this?
/kind feature
/milestone 2.20.x
/area core

#### What this PR does / why we need it:
支持用户在个人中心管理自己的附件(需要具有对应权限)

Fixes https://github.com/halo-dev/halo/issues/5278

#### Does this PR introduce a user-facing change?
```release-note
支持用户在个人中心管理自己的附件(需要具有对应权限)
```
2024-10-08 14:56:55 +00:00
Ryan Wang 944d0a5cb4 feat: add supports for delete own posts in uc
Signed-off-by: Ryan Wang <i@ryanc.cc>
2024-09-29 17:42:10 +08:00
Ryan Wang 565dc1cbc8
refactor: unified empty state UI action button styles (#6704)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.20.x

#### What this PR does / why we need it:

统一空状态界面中操作按钮的风格。

#### Does this PR introduce a user-facing change?

```release-note
统一空状态界面中操作按钮的风格。
```
2024-09-26 08:47:31 +00:00
Ryan Wang fd40770ebc
chore: bump vue version to 3.5 (#6696)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.20.x

#### What this PR does / why we need it:

升级 UI 项目的 Vue 版本至 3.5.x。

#### Does this PR introduce a user-facing change?

```release-note
升级 UI 项目的 Vue 版本至 3.5.x。
```
2024-09-26 08:11:31 +00:00
Ryan Wang 15a3e78e61
refactor: simplify post settings form fields (#6539)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.19.0

#### What this PR does / why we need it:

简化文章设置表单的部分表单项。

<img width="760" alt="image" src="https://github.com/user-attachments/assets/337a728e-8cc6-4c9e-aa85-dc4c64b72de5">


#### Does this PR introduce a user-facing change?

```release-note
简化文章设置表单的部分表单项。
```
2024-08-29 02:31:24 +00:00
Ryan Wang f7ee732c62
feat: add retry mechanism for publishing posts in user center (#6406)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.18.x

#### What this PR does / why we need it:

为个人中心发布文章的操作添加重试机制,方式后端因为乐观锁出现异常错误。

#### Which issue(s) this PR fixes:

Fixes #6349 


#### Does this PR introduce a user-facing change?

```release-note
为个人中心发布文章的操作添加重试机制,方式后端因为乐观锁出现异常错误。
```
2024-07-29 10:13:54 +00:00
Ryan Wang ed5f9aeb50
fix: resolve potential exception during bulk image upload in post creation (#6276)
Signed-off-by: Ryan Wang <i@ryanc.cc>
2024-07-05 18:21:46 +08:00
Ryan Wang c1ca8d14b7
feat: add slug generation rules to post saving feature in the post editing page (#6205)
#### What type of PR is this?

/area ui
/kind feature
/milestone 2.17.x

#### What this PR does / why we need it:

支持在文章编辑页面创建文章时,也应用别名生成规则

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/5118
Fixes https://github.com/halo-dev/halo/issues/6155

#### Special notes for your reviewer:

#### Does this PR introduce a user-facing change?

```release-note
支持在文章编辑页面创建文章时,也应用别名生成规则
```
2024-06-29 16:37:20 +00:00
Ryan Wang bb0a3bc467
feat: add support for setting an owner for posts (#6178)
#### What type of PR is this?

/area ui
/kind feature
/milestone 2.17.x

#### What this PR does / why we need it:

支持手动为文章设置作者。

<img width="734" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/b91b1754-4f50-4333-8478-6735d5846847">


#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/5720

#### Special notes for your reviewer:

需要测试:

1. 打开任意文章的设置,在高级中设置作者并保存,观察是否成功。
2. 选择一批文章,点击批量设置,设置一个作者,观察是否设置成功。

#### Does this PR introduce a user-facing change?

```release-note
支持手动为文章设置作者。
```
2024-06-27 10:10:55 +00:00
Ryan Wang a93479dc34
chore: organize and fix imports (#6152)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.17.x

#### What this PR does / why we need it:

重新组织和固定 UI 部分代码的 imports 导入,防止后续因为 imports 的顺序造成不必要的 diff。

基于:https://github.com/halo-dev/halo/pull/6151

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-06-26 10:42:50 +00:00
Ryan Wang 8302c21bb6
feat: add avatar group component (#6128)
#### What type of PR is this?

/area ui
/kind feature
/milestone 2.17.x

#### What this PR does / why we need it:

添加 AvatarGroup 组件,用于堆叠多个 Avatar 组件。

<img width="243" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/2d202e95-e735-4635-b16e-cdcf1f94f69a">
<img width="352" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/da4a293d-eb3f-40b4-94b2-10dcf54d3305">

#### Which issue(s) this PR fixes:

Fixes #6079 

#### Does this PR introduce a user-facing change?

```release-note
添加 AvatarGroup 组件,用于堆叠多个头像。
```
2024-06-26 02:24:48 +00:00
Ryan Wang c74187c066 feat: add requests library as a global shared dependency 2024-06-25 12:31:44 +08:00
Ryan Wang 373229e9de
fix: not remembering the selected editor (#6114)
#### What type of PR is this?

/area ui
/kind bug
/milestone 2.17.x

#### What this PR does / why we need it:

修复新建文章时,没有自动选择之前所选编辑器的问题。

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/6091

#### Special notes for your reviewer:

#### Does this PR introduce a user-facing change?

```release-note
修复新建文章时,没有自动选择之前所选编辑器的问题。
```
2024-06-23 03:46:29 +00:00
Ryan Wang afabffc546
refactor: typing component template refs for VModal (#5994)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.16.x

#### What this PR does / why we need it:

为 VModal 组件的引用添加类型。

See https://vuejs.org/guide/typescript/composition-api.html#typing-component-template-refs

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-05-27 08:56:57 +00:00
Ryan Wang 54e088741e
refactor: logic of publishing post (#5987)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.16.x

#### What this PR does / why we need it:

重构文章的发布逻辑,以下是主要改动:

1. 如果文章未发布,点击文章设置的发布按钮时,会先保存文章。
2. 在文章列表的操作菜单中添加发布 / 取消发布的选项。
3. 重构文章设置中,发布 / 取消发布按钮的显示条件。
4. 优化文章设置对话框的显示条件,减少不必要的渲染开销和请求。

#### Special notes for your reviewer:

需要测试:

1. 文章正常新建和发布的逻辑。
2. 文章设置未来时间的发布逻辑。
3. 取消定时发布和已发布文章的逻辑。

#### Does this PR introduce a user-facing change?

```release-note
优化 Console 文章管理中的文章发布逻辑。
```
2024-05-27 08:26:58 +00:00
guqing c1e8bdb568
feat: add scheduled post publishing feature (#5940)
#### What type of PR is this?
/kind feature
/area core
/milestone 2.16.x

#### What this PR does / why we need it:
新增文章定时发布功能

#### Which issue(s) this PR fixes:
Fixes #4602

#### Does this PR introduce a user-facing change?
```release-note
新增文章定时发布功能
```
2024-05-24 04:58:51 +00:00
Takagi 37f530b619
pref: limit the datetime year of the post or page to four digits (#5666)
#### What type of PR is this?

/kind improvement
/area ui

#### What this PR does / why we need it:

限定文章或页面中的发布日期中的年份为四位数,方便用户输入四位年份之后自定跳转至月份。

#### How to test it?

测试在 `chrome` 上输入四位年份之后,是否会自动跳转至月份。

#### Which issue(s) this PR fixes:

Fixes #5630 

#### Does this PR introduce a user-facing change?
```release-note
限定文章或页面中的发布日期中的年份为四位数
```
2024-04-12 11:28:09 +00:00
Ryan Wang c2a71545aa
refactor: ignore case when matching editor raw types (#5602)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.14.x

#### What this PR does / why we need it:

编辑文章匹配编辑器类型时,忽略大小写。

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/5597

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-03-27 05:00:07 +00:00
Ryan Wang 78c00a28f3
feat: add retry mechanism for saving posts on the UC end (#5578)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.14.x

#### What this PR does / why we need it:

为 UC 端保存文章的操作添加重试机制,防止出现因为锁导致的保存失败问题。

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/5474

#### Special notes for your reviewer:

需要多次尝试编辑文章,以及设置表单的保存功能。

#### Does this PR introduce a user-facing change?

```release-note
为 UC 端保存文章的操作添加重试机制,防止出现因为锁导致的保存失败问题。
```
2024-03-25 04:38:08 +00:00
Ryan Wang 581a738423
feat: add a title input box in the editor (#5465)
#### What type of PR is this?

/area editor
/area ui
/kind feature

#### What this PR does / why we need it:

为默认编辑器添加标题输入框。

<img width="1665" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/df903e02-76b0-45fe-89d9-6ac81af8f041">


#### Which issue(s) this PR fixes:

Fixes #5427 

#### Special notes for your reviewer:

#### Does this PR introduce a user-facing change?

```release-note
为默认编辑器添加标题输入框。
```
2024-03-18 04:38:07 +00:00
Takagi 27c98aec36
fix: fix the error when saving settings for posts in the uc (#5370)
#### What type of PR is this?

/kind bug
/area ui

#### What this PR does / why we need it:

在个人中心的文章功能中,点击设置时并不会重新获取最新的 Post 数据,进而导致点击保存时的 `version` 并非最新版本而报错。
此 PR 将在个人中心的文章页面点击设置时,额外增加一次获取最新的 Post 数据的请求,用于解决此问题。

#### How to test it?

1. 进入个人中心
2. 点击文章菜单
3. 点击右上角创建按钮
4. 在编辑器中随便输入内容
5. 点击保存
6. 修改文章的设置后点击保存。
7. 关闭设置框,再次打开设置框,然后点击保存。
8. 查看是否会出现无法保存的问题。

#### Which issue(s) this PR fixes:

Fixes #5344 

#### Does this PR introduce a user-facing change?
```release-note
解决个人中心文章设置时报错的问题
```
2024-02-20 02:36:07 +00:00
John Niang 15f7fe2d4f Move folder console to ui 2024-02-02 22:22:51 +08:00