Commit Graph

4967 Commits (e446054813b9e5712d229f2f18448a53b9b62492)

Author SHA1 Message Date
guqing 815f6b82c5
feat: add encryption setting for email notifier (#4686)
#### What type of PR is this?
/kind improvement
/area core
/milestone 2.10.x

#### What this PR does / why we need it:
为邮件通知发件设置增加加密方式配置

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

#### Does this PR introduce a user-facing change?
```release-note
为邮件通知发件设置增加加密方式配置
```
2023-10-08 09:44:14 +00:00
Ryan Wang df22b4b5ea
feat: add loading state for switch component (#4688)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.10.x

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

VSwitch 组件支持传入 loading 属性以显示加载状态。

此外,此 PR 为插件启动/停止的开关适配了这个特性用于测试。

<img width="460" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/b78221fe-6b53-4f8c-ba00-6cea2c45b5de">

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

Fixes #4687 

#### Special notes for your reviewer:

测试插件启动/停止时是否显示加载状态

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

```release-note
Console 端的 VSwitch 组件支持传入 loading 属性以显示加载状态。
```
2023-10-08 09:42:19 +00:00
guqing b2d7221316
fix: compatible email are empty when comment notification triggered (#4685)
#### What type of PR is this?
/kind bug
/area core
/milestone 2.10.x

#### What this PR does / why we need it:
修复当评论或回复者的邮箱为空时通知报错的问题

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

#### Does this PR introduce a user-facing change?
```release-note
修复当评论或回复者的邮箱为空时通知报错的问题

```
2023-10-08 09:30:21 +00:00
guqing d443c3ed29
fix: incorrect truncation of CSS resource reads (#4678)
#### What type of PR is this?
/kind bug
/area core
/milestone 2.10.x

#### What this PR does / why we need it:
修复插件 css bundle 内容被错误拆分导致无法加载的问题

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

#### Does this PR introduce a user-facing change?
```release-note
修复插件 css bundle 内容被错误拆分导致无法加载的问题
```
2023-10-07 10:42:45 +00:00
John Niang 40565f1f32
Prevent Lucene search engine updates from being interrupted (#4681)
#### What type of PR is this?

/kind bug
/area core

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

Lucene search engine will stop updating while the content of any post is `null`.

This PR resets the `null` content into empty string and ignore the error while updating Lucene document.

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

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

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

```release-note
修复因某篇文章的内容为 null 导致无法搜索部分文章的问题
```
2023-10-07 10:40:45 +00:00
Ryan Wang 3edf8632d3
feat: refine notifications-related ui (#4638)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.10.x

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

完善通知功能相关的 UI 功能。

配置:

![image](https://github.com/halo-dev/halo/assets/21301288/ed9695c0-ed68-4558-bf7c-35209573ed23)

仪表盘消息组件:

<img width="1663" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/dbabb92e-72e4-48be-bdb0-ce379e808368">

独立的消息页面:

<img width="1920" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/bfa6698e-e489-4baa-83e9-4ad3c3e6ef66">

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

Fixes #

#### Special notes for your reviewer:

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

```release-note
None 
```
2023-09-28 13:36:18 +00:00
John Niang 37ddccc612
Update the lastUsed timestamp of PAT at least one minute apart (#4671)
#### What type of PR is this?

/kind bug
/area core

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

After PAT mechanism implemented by <https://github.com/halo-dev/halo/pull/4598>, if we use the same PAT to request endpoints concurrently, we may encounter an error like the screenshot below:

<img width="1920" alt="image" src="https://github.com/halo-dev/halo/assets/16865714/30899a0c-ad98-44a1-ae7d-0eda603945f0">

This PR fixes the problem introduced by <https://github.com/halo-dev/halo/pull/4598>.

We update the lastUsed timestamp of PAT at least one minute apart and with retry.

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

```release-note
None
```
2023-09-28 13:34:18 +00:00
guqing 9454f445a5
feat: add the notification mechanism implementation (#4527)
#### What type of PR is this?
/kind feature
/milestone 2.10.x
/area core

#### What this PR does / why we need it:
新增消息和通知机制的实现

how to test it?
1. 执行以下命令配置发件服务
```shell
curl -u admin:admin -X POST 'http://localhost:8090/apis/api.console.halo.run/v1alpha1/notifiers/default-email-notifier/senderConfig' \
--header 'Content-Type: application/json' \
--data-raw '{
    "displayName": "Halo Team",
    "username": "{发件使用的邮箱}",
    "password": "{发件邮箱密码}",
    "host": "smtp.exmail.qq.com",
    "port": "587"
}'
```
2. 评论文章或页面可以收到通知
3. 文章/页面作者是评论者不发送新评论通知,回复者是评论作者不发送回复通知

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

#### Does this PR introduce a user-facing change?
```release-note
新增消息和通知机制的实现
```
2023-09-28 13:32:23 +00:00
Ryan Wang 45787e1e20
chore: add app store plugin as preset-plugin (#4670)
#### What type of PR is this?

/area core
/kind improvement
/milestone 2.10.x

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

添加 https://github.com/halo-dev/plugin-app-store 作为预设插件。

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

```release-note
添加应用市场预设插件
```
2023-09-28 13:30:23 +00:00
guqing 86db26a96f
refactor: plugin resource loading to only load from plugin itself instead of delegating to core (#4663)
#### What type of PR is this?
/kind improvement
/area core
/area plugin
/milestone 2.10.x

#### What this PR does / why we need it:
重构插件类加载器以优化当插件的 resources 目录资源与 Halo 中同名时加载不到的问题

how to test it?
1. 在创建的 resources/extensions 目录创建一个与 halo 的 resources/extensions 目录中已存在的同名 yaml
2. 使用插件观察插件的同名文件 yaml 是否被 apply 到 halo 中
3. 测试插件的其他功能是否正常比如静态资源加载如 logo 等

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

#### Does this PR introduce a user-facing change?
```release-note
重构插件类加载器以优化当插件的 resources 目录资源与 Halo 中同名时加载不到的问题
```
2023-09-27 12:46:16 +00:00
Takagi e119b63a94
pref: upgrade the editor dependent version and add a pnpm link (#4669)
#### What type of PR is this?

/kind improvement

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

升级编辑器版本,增加新的扩展,例如拖拽、分栏等。
移除了 `@tiptap/vue-3` 依赖包,此包已经在 `@halo-dev/richtext-editor` 中进行提供。
新增 `link:editor` 命令,可以本地引入 richtext-editor 的依赖,进行本地调试。

#### How to test it?

使用编辑器,保证编辑器功能正常无误即可。并测试编辑器新加功能。

#### Does this PR introduce a user-facing change?
```release-note
None
```
2023-09-27 12:42:17 +00:00
guqing ce0e02a167
perf: optimizing request plugin bundle resources (#4639)
#### What type of PR is this?
/kind improvement
/area core
/milestone 2.10.x

#### What this PR does / why we need it:
优化插件捆绑资源的查询性能

在插件 js bundle 1.2M 大小的情况下:
优化前:
<img width="773" alt="image" src="https://github.com/halo-dev/halo/assets/38999863/e8e3b995-c8e9-44d7-b0ed-29eb82b975c5">

优化后:
<img width="765" alt="image" src="https://github.com/halo-dev/halo/assets/38999863/3860863e-1293-4713-ba6b-b101dec3a1e4">

how to test it?
在插件生产模式下使用此 PR 测试,比对与不使用此 PR 的 API 速度,且检查 js bundle 和 css bundle 的资源是否正确加载。

#### Does this PR introduce a user-facing change?
```release-note
优化插件捆绑资源(JSBundle)的查询性能以提高页面加载速度
```
2023-09-27 08:24:16 +00:00
John Niang 610609656d
Upgrade to PF4J 3.10.0 (#4666)
#### What type of PR is this?

/kind cleanup
/area core
/milestone 2.10.0

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

Upgrade to [PF4J 3.10.0](https://github.com/pf4j/pf4j/releases/tag/release-3.10.0).

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

```release-note
升级依赖 PF4J 至 3.10.0
```
2023-09-27 05:04:17 +00:00
John Niang d002579456
Upgrade to Spring Boot 3.1.4 (#4665)
#### What type of PR is this?

/kind cleanup
/area core
/milestone 2.10.0

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

Upgrade to Spring Boot [3.1.4](https://github.com/spring-projects/spring-boot/releases/tag/v3.1.4).

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

```release-note
升级依赖 Spring Boot 至 3.1.4
```
2023-09-27 05:02:23 +00:00
Ryan Wang 2c7c0da373
chore: update preset plugins (#4668)
#### What type of PR is this?

/area core
/kind improvement
/milestone 2.10.x

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

升级所有预设插件的版本。

#### Special notes for your reviewer:

执行 `./gradlew downloadPluginPresets` 检查是否能够正常下载。

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

```release-note
升级所有预设插件的版本。
```
2023-09-27 04:06:16 +00:00
Ryan Wang 9b310ca65e
feat: add configration route for auth provider item (#4635)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.10.x

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

为认证方式添加更直观的配置页面入口

<img width="1661" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/a7f86d5b-caab-4ac1-9a12-2bb2f5b5f8fb">

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

Fixes #4634 

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

```release-note
为 Console 端认证方式管理添加更直观的配置页面入口
```
2023-09-27 02:22:16 +00:00
guqing 1f0cfc18e3
feat: support running plugins from JAR in development mode (#4589)
#### What type of PR is this?
/kind feature
/milestone 2.10.x
/area core

#### What this PR does / why we need it:
支持在开发模式下通过 JAR 运行插件

*从此版本开始 BasePlugin 的子类建议使用 BasePlugin(PluginContext context) 构造函数,而不要使用之前的 BasePlugin(PluginWrapper wrapper) 构造函数。BasePlugin(PluginWrapper wrapper) 构造函数将计划在后续版本移除* ,当移除构造函数后不再将 PluginWrapper 暴露给插件使用,它只应该在 halo core 使用。

how to test it?
1. 测试开发模式下配置的 `halo.plugin.fixed-plugin-path` 插件是否正确运行
2. 测试开发模式下通过 JAR 包安装插件是否正确运行
3. 测试生产模式下是否能通过项目目录的方式运行插件,期望是生产模式不可以运行开发模式的插件
4. 测试开发模式和生产模式的插件卸载功能是否正确

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

Fixes #2908

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

```release-note
支持在开发模式下通过 JAR 运行插件
```
2023-09-27 02:16:16 +00:00
Ryan Wang 470b0de70d
refactor: user detail page structure (#4664)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.10.x

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

重构 Console 端用户详情页面的结构。

1. 提高代码可读性。
2. 使用问号参数来区分不同的选项卡。
3. 封装头像修改相关的代码为组件。

#### Special notes for your reviewer:

测试用户详情页面的所有功能是否正常。

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

```release-note
重构 Console 端用户详情页面的代码结构。
```
2023-09-26 15:34:16 +00:00
John Niang a5a69780a3
Remove redundant users path for PAT endpoint (#4662)
#### What type of PR is this?

/kind improvement
/kind api-change
/area core

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

This PR refines route paths created from <https://github.com/halo-dev/halo/pull/4598>. Because the user scope is not necessary here.

#### Special notes for your reviewer:

Try to manage your PATs.

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

```release-note
None
```
2023-09-26 08:00:15 +00:00
Ryan Wang 97c92d03cc
fix: can not create category by click in category select component (#4658)
Signed-off-by: Ryan Wang <i@ryanc.cc>
2023-09-26 01:32:00 -05:00
Ryan Wang 1585a268ed
fix: can not change ref type in menu item modal (#4644)
Signed-off-by: Ryan Wang <i@ryanc.cc>
2023-09-26 01:31:13 -05:00
Ryan Wang 927e45b4eb
fix: plugin self tab extension point not working when no setting definition (#4659)
#### What type of PR is this?

/area console
/kind bug
/milestone 2.10.x

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

修复当插件没有设置表单定义时,详情选项卡扩展点不生效的问题。

<img width="1061" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/01abc565-a55e-40d5-9d2b-41a7eab2d9b5">

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

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

#### Special notes for your reviewer:

可以通过以下插件进行测试:

1. [plugin-migrate-1.2.0-SNAPSHOT.jar.zip](https://github.com/halo-dev/halo/files/12713261/plugin-migrate-1.2.0-SNAPSHOT.jar.zip)
2. https://github.com/halo-dev/plugin-app-store/releases/tag/v1.0.0-alpha.4
3. https://github.com/halo-dev/plugin-s3

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

```release-note
None
```
2023-09-25 15:22:14 +00:00
guqing 5fa0056231
fix: unable to display if the logo changes after the plugin upgrade (#4657)
#### What type of PR is this?
/kind bug
/area core
/area plugin
/milestone 2.10.x

#### What this PR does / why we need it:
修复当插件升级后 Logo 改变会无法显示的问题

how to test it?
1. 使用生产模式运行插件
2. 使用 sitemap 插件 1.0.1版本,https://www.halo.run/store/apps/app-QDFMI?tab=releases
3. 升级 sitemap 插件到 1.1.0, https://www.halo.run/store/apps/app-QDFMI?tab=releases
4. 期望 logo 由原先的 halo 图标变为新图标

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

#### Does this PR introduce a user-facing change?
```release-note
修复当插件升级后 Logo 改变会无法显示的问题
```
2023-09-25 04:04:14 +00:00
John Niang a29c608311
Support for personal access token mechanism (#4598)
#### What type of PR is this?

/kind feature
/kind api-change
/area core

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

Support for personal access token mechanism.

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

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

#### Special notes for your reviewer:

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

```release-note
提供个人访问令牌机制
```
2023-09-25 03:30:14 +00:00
guqing 2d5e7bdab7
fix: not using the default template when the custom template does not exist (#4618) 2023-09-22 04:43:26 -05:00
Ryan Wang 9fbbd40712
fix: missing permission check in plugin installation tabs and theme list tabs extension points (#4636)
Signed-off-by: Ryan Wang <i@ryanc.cc>
2023-09-22 04:14:32 -05:00
Ryan Wang b963f3bd23
fix: twice requests in menus page (#4622)
Signed-off-by: Ryan Wang <i@ryanc.cc>
2023-09-22 04:10:24 -05:00
Ryan Wang f953201307
fix: missing ui permission condition about users (#4619)
Signed-off-by: Ryan Wang <i@ryanc.cc>
2023-09-22 03:11:53 -05:00
Ryan Wang d3e296d782
chore: bump formkit version to 1.1.0 (#4642)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.10.x

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

升级 FormKit 版本至 1.1.0 正式版。

see https://formkit.com/changelog

#### Special notes for your reviewer:

测试 Console 的各个表单是否正常工作即可。

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

```release-note
升级 FormKit 版本至 1.1.0 正式版。
```
2023-09-22 07:42:24 +00:00
Ryan Wang c48c5f94a7
chore: update issue templates (#4641)
#### What type of PR is this?

None

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

更新 issue 模板。

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

```release-note
None 
```
2023-09-22 05:06:23 +00:00
John Niang 7de97e4573
Merge pull request #4588 from wan92hen/main
ci: push image to GHCR for pull_request event
2023-09-20 03:30:19 -05:00
guqing 84f413d18a
fix: bundle resources cache version may duplicate (#4591)
#### What type of PR is this?
/kind improvement
/area core
/milestone 2.10.x

#### What this PR does / why we need it:
修复 bundle resource 的缓存 key 生成可能会重复的问题

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

#### Does this PR introduce a user-facing change?
```release-note
修复 bundle resource 的缓存 key 生成可能会重复的问题
```
2023-09-18 15:34:21 +00:00
Ryan Wang dd55a0f490
fix: ts error in components package (#4621)
#### What type of PR is this?

/kind cleanup
/area console

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

修复 `@halo-dev/components` 包编译时有 error 级异常的问题。

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

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

#### Special notes for your reviewer:

观察此 PR 的 ci 中是否有异常输出即可。

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

```release-note
None
```
2023-09-18 08:28:20 +00:00
Ryan Wang da2d56e7d3
chore: update download url of presets plugin (#4615)
#### What type of PR is this?

/area core
/kind cleanup

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

修改预设插件的下载地址,目前四个预设插件的仓库都已经转移到 halo-dev 组织。

#### Special notes for your reviewer:

需要测试 `./gradlew downloadPluginPresets` 是否能够正常下载预设插件。 

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

```release-note
None
```
2023-09-18 02:26:18 +00:00
Ryan Wang 83cb088df8
feat: improve the styles of the data list filter area on the mobile devices (#4587)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.10.x

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

改进移动设备上数据列表过滤器区域的样式。

before:

<img width="429" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/c0341b19-0ef5-4e26-94b7-71c52def6578">

after:

<img width="429" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/b2d0f07b-d94d-48d4-86b9-fd2953d141fa">


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

Ref https://github.com/halo-dev/halo/issues/2699

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

```release-note
改进 Console 端在移动设备上数据列表过滤器区域的样式。
```
2023-09-14 16:14:14 +00:00
BugKing 32d2def93c ci: push image to GHCR for pull_request event 2023-09-11 13:57:34 +08:00
Hilary Liu e13563bad0
feat: add strategy setting for post slug generation (#4551)
#### What type of PR is this?

/kind improvement

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

添加文章别名自动生成策略

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

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

#### Special notes for your reviewer:

需要后端提供支持在globalInfo里面添加`gSlugMode`字段。它的类型为(后续可能会支持更多的模式)
<img width="582" alt="image" src="https://github.com/halo-dev/halo/assets/110895612/586c4742-6172-4bbc-a601-ca04c2a9a281">

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


```release-note
文章支持多别名生成策略。
```
2023-09-10 14:08:13 +00:00
Ryan Wang 31675dbbba
fix: i18n key of theme remote download tab label (#4576)
#### What type of PR is this?

/area console
/kind bug
/milestone 2.10.x

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

修复了主题远程下载标签的英文语言包键,使其可以正确显示标签标题。

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

```release-note
修复 Console 端主题远程下载标签的英文语言包键名,使其可以正确显示标签标题。
```
2023-09-08 02:48:13 +00:00
John Niang 0098654344
Prevent basic authentication from popping up (#4556)
#### What type of PR is this?

/kind improvement
/kind api-change
/area core
/milestone 2.10.x

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

See https://github.com/halo-dev/halo/issues/4547 for more.

This PR creates header `WWW-Authenticate` like `FormLogin realm="console"` instead of `Basic realm="realm"` while unauthorized.

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

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

#### Special notes for your reviewer:

```bash
curl --head 'http://localhost:8090/actuator/info'
HTTP/1.1 401 Unauthorized
transfer-encoding: chunked
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
WWW-Authenticate: FormLogin realm="console"
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
X-XSS-Protection: 0
Referrer-Policy: no-referrer
```


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

```release-note
防止浏览器弹出基础认证弹窗
```
2023-09-07 08:52:10 +00:00
Takagi f3cf3ca283
pref: do not auto save when the setting modal is open (#4567)
#### What type of PR is this?

/kind improvement
/area console

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

当设置模态框打开时,禁用自动保存功能。

#### How to test it?

1. 新建一篇文章,随意输入内容。
2. 打开保存或发布表单,填写文章标题等内容
3. 切换至其他 tab 页
4. 再切换回来,查看文章标题是否没有被覆盖。

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

Fixes #4566 

#### Does this PR introduce a user-facing change?
```release-note
当文章或页面设置窗口打开时,禁用自动保存功能。
```
2023-09-07 07:20:10 +00:00
guqing 87ca74cb64
refactor: complete default values for global settings (#4562)
#### What type of PR is this?
/kind improvement
/area core
/milestone 2.10.x

#### What this PR does / why we need it:
补全系统全局设置的默认值

how to test it?
1. 初始化 halo
2. 安装评论组件
3. 到文章页面可以评论

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

#### Does this PR introduce a user-facing change?
```release-note
补全系统全局设置的默认值
```
2023-09-07 07:18:15 +00:00
guqing 98d0c342f3
refactor: set cache-control for bundle resources of plugin (#4557)
#### What type of PR is this?
/kind improvement
/milestone 2.10.x
/area core

#### What this PR does / why we need it:
为插件捆绑资源设置 cache-control 以优化静态资源加载

如获取插件 bundle.js 会自动携带参数缓存时间为 7 天,当有插件停止或新增时 v 参数会变化浏览器则使用新的 key 缓存静态资源,旧的 key 将在一天内失效
```
/apis/api.console.halo.run/v1alpha1/plugins/-/bundle.js?v=6c5956f37e7207ab1c0f2f2340f51a101f46b748233992d73729415cd58f3587
```
#### Which issue(s) this PR fixes:
Fixes #4543

#### Does this PR introduce a user-facing change?
```release-note
为插件捆绑资源设置 cache-control 以优化静态资源加载
```
2023-09-07 07:12:11 +00:00
John Niang 9c3e603bda
Fix the problem of username being case-insensitive and logging in without permissions (#4552)
#### What type of PR is this?

/kind bug
/area core
/milestone 2.10.x

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

This PR fixes the problem of username being case-insensitive and logging in without permissions. Please note that the problem only occurs with MySQL.

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

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

#### Special notes for your reviewer:

```bash
docker run -it --rm --name halodb -p 3306:3306 -e MYSQL_ROOT_PASSWORD=openmysql -e MYSQL_DATABASE=halo mysql:8

./gradlew bootRun --args="--spring.profiles.active=dev,mysql --halo.plugin.runtime-mode=deployment"
```

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

```release-note
修复因大小写问题导致登录后无权限的问题
```
2023-09-07 05:52:11 +00:00
Ryan Wang eea575c1e2
fix: operation items render issue in theme list (#4563)
#### What type of PR is this?

/area console
/kind bug

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

修复主题管理列表的更多操作项在某些情况下无法打开的问题。

<img width="384" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/2bbea045-2e04-46bc-be55-d9499c87624b">


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

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

#### Special notes for your reviewer:

测试方式:

1. 安装若干主题,测试每一项主题的更多操作按钮是否可以正常打开。
2. 删除某一个主题,测试每一项主题的更多操作按钮是否可以正常打开。

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

```release-note
修复 Console 端主题管理列表的更多操作项在某些情况下无法打开的问题。
```
2023-09-07 04:22:14 +00:00
Ryan Wang a1ea355fdb
feat: add supports for check started status after start plugin operation (#4558)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.10.x

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

支持在启动插件之后检测插件的启动状态,防止直接刷新之后 bundle.js 的内容没有及时更新。

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

```release-note
优化 Console 端启动插件的逻辑
```
2023-09-07 04:10:10 +00:00
John Niang 2baf6aeb31
Prepare for developing Halo 2.10.0 (#4533)
#### What type of PR is this?

/kind cleanup
/area core

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

Bump Halo to 2.10.0-SNAPSHOT.

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

```release-note
None
```
2023-09-01 04:06:12 +00:00
Ryan Wang 272e279891
feat: make field items of post data list extendable (#4528)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

文章数据列表的显示字段支持通过插件扩展。

<img width="717" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/3b3b7e1f-4626-4878-a234-48915dd34e8d">

#### Special notes for your reviewer:

需要测试文章管理功能是否正常。

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

```release-note
Console 端文章数据列表的显示字段支持通过插件扩展。
```
2023-09-01 03:02:12 +00:00
Ryan Wang 6dd77af7f8
feat: add restore by backup record supports (#4511)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

支持选择已有备份进行恢复。

<img width="1628" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/5e3169f7-a604-4e20-9c4e-f6bc68c58d59">

#### Special notes for your reviewer:

需要测试在恢复界面通过选择已有备份进行恢复的功能是否正常。

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

```release-note
系统恢复功能支持选择已有备份进行系统恢复。
```
2023-09-01 03:00:19 +00:00
Josue Ferreira 799a897622
Add Spanish (ES) locale (#4460) 2023-08-31 21:48:35 -05:00
Hilary Liu 178c0704c8
feat: add support for saving post by shortcut keys (#4510)
#### What type of PR is this?
/area editor
/area console


#### What this PR does / why we need it:
1. mac: 在编辑器中添加command+s保存文章
2. windows: 在编辑器中添加ctrl+s保存文章
#### Which issue(s) this PR fixes:

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

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

```release-note
Console 端支持通过快捷键保存文章
```
2023-09-01 02:30:12 +00:00