Commit Graph

339 Commits (5a51c5d87e914072e51d84f31106fe50d015fa02)

Author SHA1 Message Date
Ryan Wang fbc9045908
fix: unable to compile console and uc on Windows platform (#4877)
#### What type of PR is this?

/kind bug
/area console
/milestone 2.11.x

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

修复在 Windows 平台下无法正常启动 Console 服务以及无法正常编译的问题。

<img width="1124" alt="图片" src="https://github.com/halo-dev/halo/assets/21301288/55edd00a-8e71-437e-8889-0fe4a43bb40b">

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

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

#### Special notes for your reviewer:

在 Windows 平台下测试 `pnpm dev` 和 `pnpm build`,检查是否能够正常运行。

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

```release-note
None
```
2023-11-20 06:26:09 +00:00
Ryan Wang 6f1d86de6d perf: asynchronously load the uppy upload component
Signed-off-by: Ryan Wang <i@ryanc.cc>
2023-11-18 16:08:19 +08:00
随心 747cab3aa1
fix: vue warning issue in BackupListItem component (#4870)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.11.x

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

修复代码错误导致的控制台警告。异常现象:备份列表页面,有多少备份文件就会有多少个警告日志。
![image](https://github.com/halo-dev/halo/assets/44720422/2dc64621-9731-4647-b23e-c3a5aa115c37)

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

Fixes #4871

#### Special notes for your reviewer:

None

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

```release-note
修复备份页面中的浏览器控制台警告日志
```
2023-11-17 16:08:08 +00:00
Ryan Wang a951a34a1b
feat: refine user center feature (#4857)
Signed-off-by: Ryan Wang <i@ryanc.cc>
2023-11-16 15:51:19 +08:00
Ryan Wang d356b65671 Merge branch 'main' into feature-user-center 2023-11-15 13:47:25 +08:00
Ryan Wang b0aec48c7c
feat: basic implementation of personal center (#4851)
#### What type of PR is this?

/area console
/milestone 2.11.x
/kind feature

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

个人中心的基础实现,此 PR 已完成:

1. 个人中心基础布局。
2. 将个人相关的功能移动到个人中心,包括个人资料修改、密码修改、PAT、通知配置、通知中心等。
3. 个人中心和管理控制台的切换入口。

<img width="1920" alt="图片" src="https://github.com/halo-dev/halo/assets/21301288/2db810dc-c467-4b6d-86ad-dd7473fa8ef6">

注意:此 PR 仅包含基础实现,其他的 UI 更改和 i18n 完善会放在后面的 PR。

#### Special notes for your reviewer:

测试方式:

1. 使用开发模式启动 Halo 后端。
2. 在 Console 目录运行 `pnpm dev`。
3. 测试 /console 的功能。
4. 测试 /uc 的功能。

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

```release-note
None
```
2023-11-13 08:56:08 +00:00
inkslab 4a6ce88b7f
feat: add devices mock preview for post and single page (#4846)
#### What type of PR is this?
/kind feature
/area console


#### What this PR does / why we need it:
为文章以及页面预览增加终端切换功能,类似于预览主题的终端切换

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

Fixes #4789

#### Special notes for your reviewer:
测试方式:
本地运行halo,预览文章和页面,切换不同终端,各个界面正常显示且功能正常。


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

```release-note
文章预览支持模拟不同设备尺寸。
```
2023-11-13 04:06:08 +00:00
Ryan Wang 52d064381f
refactor: improve project structure for user center feature (#4839)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.11.x

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

重构前端的目录结构,以便在后续让个人中心的代码支持复用部分代码。

https://github.com/ruibaby/halo/tree/refactor/file-structure/console/docs/project-structure

#### Special notes for your reviewer:

测试方式:

1. 启动最新的 Halo 后端。
2. 在 Console 目录运行 `pnpm dev`,可以观察到同时监听了 3000 和 4000 端口,分别代理原本的 /console 和新加的 /uc
3. 访问 /console 和 /uc。
4. 测试 `pnpm build`,完成之后检查主项目的 `src/main/resources` 目录是否包含 console 和 uc 目录。
5. 使用生产环境运行 Halo,访问 /console 和 /uc

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

```release-note
None
```
2023-11-09 06:56:06 +00:00
Ryan Wang 8c56093ee2
feat: build infrastructure for user center feature (#4806)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.11.x

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

添加前端部分的个人中心的基础设施,将通过改造 Console 项目的结构实现对个人中心页面的隔离。意味着 Console 项目的意义将转变为 frontend,其中包含 Console 和 UC。

#### Special notes for your reviewer:

测试方式:

1. 启动最新的 Halo 后端。
2. 在 Console 目录运行 `pnpm dev`,可以观察到同时监听了 3000 和 4000 端口,分别代理原本的 /console 和新加的 /uc
3. 访问 /console 和 /uc。
4. 测试 `pnpm build`,完成之后检查主项目的 `src/main/resources` 目录是否包含 console 和 uc 目录。
5. 使用生产环境运行 Halo,访问 /console 和 /uc

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

```release-note
None
```
2023-11-02 09:00:28 +00:00
Takagi 57b24261e7
fix: resolve the issue of receiving duplicate key error after deleting metadata (#4815)
#### What type of PR is this?

/kind bug
/area console
/milestone 2.11.x

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

重构去重元数据的逻辑,解决删除元数据后仍旧提示 key 不能重复的问题。

#### How to test it?

1. 在文章列表点击设置按钮
2. 添加两个个空的元数据,不保存直接关闭设置框。
3. 再次打开设置框,点击删除空的元数据,查看是否会提示 key 重复。

#### Does this PR introduce a user-facing change?
```release-note
解决删除元数据后仍旧提示 key 不能重复的问题
```
2023-11-02 07:50:48 +00:00
Ryan Wang a8a5413460
refactor: add t parameter for plugin bundle resources (#4804)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.11.x

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

为插件的 bundle.css 和 bundle.js 重定向请求添加时间戳参数,防止被浏览器、Nginx、CDN 服务缓存,导致插件的资源不能及时更新。

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

Fixes #4803 

#### Special notes for your reviewer:

测试方式:

1. 在 Firefox 浏览器测试启动和停止若干插件,观察插件提供的 UI 样式是否正常即可。

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

```release-note
优化 Console 端插件捆绑资源的请求,防止在操作插件状态之后无法及时更新资源。
```
2023-11-02 07:44:48 +00:00
Takagi 691cd38c51
fix: optimize editor performance and resolve freezing issues (#4805)
#### What type of PR is this?

/kind bug

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

优化了编辑器的性能,并解决了卡死现象。具体措施如下:

1. 编辑器异步加载时,由于其 component 并不会使用响应式,所以也无需进行代理,因此使用 `markRaw` 将其转为普通对象,可以优化 vue 性能。
2. 由于 `DefaultEditor` 有多个根节点导致透传的 attrs 无法设置,因此新增一个 div 节点将其原有节点包裹。参见 https://cn.vuejs.org/guide/components/attrs.html#attribute-inheritance-on-multiple-root-nodes 。
3. 原有编辑器实例在切换路由之后不会释放,此次修改之后,将在 vue 的 `onBeforeUnmount` 时间中手动释放编辑器实例。

#### How to test it?

1. 新建文章,新建一个表格。
2. 不要保存,点击文章路由跳出编辑器界面,再次点击上一次所编辑器的文章,查看是否会卡死。

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

Fixes #4798 

#### Does this PR introduce a user-facing change?
```release-note
优化编辑器性能并解决切换页面所造成的卡死现象
```
2023-11-02 02:54:50 +00:00
exialin f2d7376d9f
fix: correct the tooltip of view type in the Attachments page (#4785)
#### What type of PR is this?

/kind bug

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

console附件页面List Mode和Grid Mode的tooltip写反了:
<img width="1172" alt="image" src="https://github.com/halo-dev/halo/assets/4889894/6645b29f-7e92-4c42-9938-892e53f92115">


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

Fixes #

#### Special notes for your reviewer:

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

```release-note
修复附件管理布局切换按钮的提示文字。
```
2023-10-28 16:15:38 +00:00
Takagi 921518aef3
fix: cannot change the user's own avatar (#4777)
#### What type of PR is this?

/kind bug

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

当前用户上传头像时的接口中名字应该是 `-` 而不是具体的 metadata name。

#### How to test it?

使用无用户管理权限的用户登录,查看是否能上传头像。

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

Fixes #4776 

#### Does this PR introduce a user-facing change?
```release-note
解决无用户管理权限的用户无法上传头像的问题
```
2023-10-27 08:50:53 +00:00
Takagi 2dbfbd1bd0
fix: resolve the issue of occasional blank annotation and error occurrences (#4772)
#### What type of PR is this?

/kind bug

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

在获取自定义元数据时,将空白 key 与重复的 key 过滤,用于解决可能出现的额外空白元数据及报错问题。

#### How to test it?

尝试点击编辑文章 -> 设置,查看是否有额外空白元数据的出现。

由于是概率性问题,因此若本地环境未复现,则需要使用生产环境进行验证。

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

Fixes #4764 

#### Does this PR introduce a user-facing change?
```release-note
解决文章设置中可能出现空白元数据的问题
```
2023-10-26 07:58:15 +00:00
Ryan Wang e20ab8f880
refactor: use new api to change plugin status (#4747)
#### What type of PR is this?

/area console
/kind improvement

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

适配 https://github.com/halo-dev/halo/pull/4745 ,使用新的接口启动/停止插件。

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

Fixes #4744 

#### Special notes for your reviewer:


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

```release-note
None
```
2023-10-26 02:56:14 +00:00
zjy4fun 4af82712e1
Fix the display error in the comments page status filter text (#4743)
#### What type of PR is this?

/kind bug
/area console

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

![fix-status-filter-2](https://github.com/halo-dev/halo/assets/106857035/e1f0a7ea-1328-45f2-ad06-cf14e91b8e4a)


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

Fixes #4731

#### Special notes for your reviewer:


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

```release-note
修复 Console 端评论状态筛选无法显示筛选结果的问题
```
2023-10-19 08:36:25 +00:00
longjuan ff7af9f0d9
fix: plugin extension tab cannot be displayed when only having plugin view permissions (#4746)
<!--  Thanks for sending a pull request!  Here are some tips for you:
1. 如果这是你的第一次,请阅读我们的贡献指南:<https://github.com/halo-dev/halo/blob/master/CONTRIBUTING.md>。
1. If this is your first time, please read our contributor guidelines: <https://github.com/halo-dev/halo/blob/master/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?
/kind bug
/area console
<!--
添加其中一个类别:
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
-->

#### What this PR does / why we need it:
修复用户仅拥有插件查看权限时,有setting的插件会导致无法加载插件扩展tab的问题
#### 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 #4732

#### Special notes for your reviewer:
1. 使用如下测试版 s3 插件
[plugin-s3-1.5.0-SNAPSHOT.jar.zip](https://github.com/halo-dev/halo/files/12914987/plugin-s3-1.5.0-SNAPSHOT.jar.zip)
<https://github.com/longjuan/halo-plugin-s3os/tree/aaa>
2. 创建一个用户,仅赋予 S3 Link 权限(依赖于插件查看和附件管理权限)
3. 登录这个新用户,打开 s3 插件详情
4. 观察 关联S3文件 功能是否正常出现
#### 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
修复部分场景下插件详情的扩展 tab 不能正常显示的问题
```
2023-10-19 05:32:25 +00:00
Takagi 9e33a81e2d
refactor: refactor the repeater component using the schema approach (#4702)
#### What type of PR is this?

/kind improvement

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

对 Formkit Repeater 组件使用 schema 的方式进行重构,重构后的 Repeater 组件将支持条件判断,按照下述方式定义即可。

```
const formSchema = [
  {
    $formkit: "repeater",
    name: "testing",
    min: 1,
    max: 2,
    addLabel: "添加",
    children: [
      {
        $formkit: "select",
        name: "things",
        id: "things",
        label: "Things",
        placeholder: "Select",
        options: ["Something", "Else"],
      },
      {
        $formkit: "number",
        if: "$value.things === Something",
        name: "show_1",
        id: "show_something_1",
        label: "Show something",
      },
      {
        $formkit: "number",
        if: "$value.things === Something",
        name: "show_2",
        id: "show_something_2",
        label: "Also show something",
      },
    ],
  },
];
```

同时额外增加了对 `addLabel`、`addButton`、`upControl`、`downControl`、`insertControl`、`removeControl`  属性的支持。

#### How to test it?

- 测试原有使用 `Repeater` 组件可否正常使用。
- 对 `Repeater` 条件判断功能进行测试。
- 查看保存的数据格式是否正确

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

Fixes #4603 

#### Does this PR introduce a user-facing change?
```release-note
重构 Repeater 组件,使其支持条件判断
```
2023-10-12 08:08:33 +00:00
John Niang 5742a7d5d5
Prepare for next development 2.11.0 (#4709)
#### What type of PR is this?

/kind cleanup

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

Bump all versions.

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

```release-note
None
```
2023-10-11 06:46:30 +00:00
Ryan Wang ab99d109d9
chore: bump @halo-dev/components version to 1.9.0 (#4698)
#### What type of PR is this?

/area console
/milestone 2.10.x
/kind improvement

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

修改 @halo-dev/components 的版本号为 1.9.0,将在 2.10.0 发布之后推送到 npmjs.com

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

```release-note
None
```
2023-10-10 03:14:28 +00:00
Ryan Wang 0b8e0d9b99
feat: display add icon when user avatar is not setting (#4694)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.10.x

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

当用户未设置头像时,头像显示添加图标,能够更好的提示用户如何设置头像。

<img width="528" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/380ed906-2d76-41bd-ae17-6c31ca7c444a">

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

Fixes #4693 

#### Special notes for your reviewer:

1. 测试未设置头像时,是否添加添加图标。
2. 测试设置头像之后,鼠标移动到头像时,是否显示修改图标。

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

```release-note
优化 Console 端个人资料的头像显示,未设置头像时显示添加图标。
```
2023-10-10 03:12:36 +00:00
guqing 6411cef5ff
feat: support configuring notifier for different notification reason types (#4680)
#### What type of PR is this?
/kind feature
/area core
/area console
/milestone 2.10.x

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

用户支持为不同的通知事件配置通知方式

<img width="872" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/dad85ba3-96bc-4580-9dae-2b9e66e877fe">


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

```release-note
用户支持为不同的通知事件配置通知方式
```
2023-10-08 10:08:14 +00:00
Ryan Wang da021658c8
feat: make attachment list item operations extendable (#4689)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.10.x

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

附件管理列表项的操作按钮支持被插件扩展。


<img width="1669" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/be938c07-2976-4e22-9bf3-cdfaf53896e5">


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

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

#### Special notes for your reviewer:

需要测试附件的关于列表的已有功能是否正常。

如果需要测试扩展点是否有效,可以使用此插件测试:[plugin-s3-1.5.0-SNAPSHOT.jar.zip](https://github.com/halo-dev/halo/files/12839986/plugin-s3-1.5.0-SNAPSHOT.jar.zip)

```diff
export default definePlugin({
  components: {},
  routes: [],
  extensionPoints: {
    "plugin:self:tabs:create": (): PluginTab[] => {
      return [
        {
          id: "s3-link",
          label: "关联S3文件",
          component: markRaw(HomeView),
          permissions: [],
        },
      ];
    },
+    "attachment:list-item:operation:create": (attachment: Ref<Attachment>) => {
+      return [
+        {
+          priority: 21,
+          component: markRaw(VDropdownDivider),
+        },
+        {
+          priority: 22,
+          component: markRaw(VDropdownItem),
+          props: {
+            type: "danger",
+          },
+          label: "解除 S3 关联",
+          permissions: ["system:attachments:manage"],
+          action: () => {
+            console.log(attachment);
+          },
+        },
+      ];
+    },
  },
});

```

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

```release-note
Console 附件管理列表项的操作按钮支持被插件扩展。
```
2023-10-08 09:58:37 +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
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
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
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
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
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
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 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 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
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
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
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
Ryan Wang 1892dce64b
refactor: operation and entity field extension points (#4530)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.9.x

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

重构数据列表操作项和显示字段扩展点的类型定义和条件判断:

1. `EntityDropdownItem` 改为 `OperationItem` 以适配不同的场景,最开始仅仅是为了提供给 Entity 组件,但后面发现如主题管理列表并没有使用 Entity 组件,所以定义统一改为 Operation 。
2. 修改 `OperationItem` 和 `EntityFieldItem` 的 `visible` 字段为 `hidden`,方便渲染的时候判断,并方便调用方默认不设置值。

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

```release-note
None
```
2023-08-31 10:36:12 +00:00
Ryan Wang 8eaedd6ee8
feat: make theme list item operations extendable (#4523)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

主题管理列表项的操作按钮支持被插件扩展。

![image](https://github.com/halo-dev/halo/assets/21301288/fd605aa5-91a9-49dc-9f8d-14eeabd4fb93)

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

Fixes #4522 

#### Special notes for your reviewer:

测试已有的操作按钮功能正常即可。

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

```release-note
Console 主题管理列表项的操作按钮支持被插件扩展。
```
2023-08-31 07:02:12 +00:00
Ryan Wang 329b389d60
feat: add entity param for list item operation extension point (#4515)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

Halo 在 https://github.com/halo-dev/halo/pull/4452 中为数据列表的操作选项添加了拓展点,用于通过插件扩展操作选项。但忽略了操作选项的组件需要自定义并且自行处理点击事件,这个时候组件应该比较难拿到数据列表项的数据。

此 PR 对此进行优化,在扩展点方法传入了需要的数据。

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

```release-note
None
```
2023-08-31 03:36:13 +00:00
Ryan Wang 9c875e1731
refactor: disable auto dispose feature of dropdown component (#4518)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.9.x

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

禁用 Dropdown 组件的自动销毁 dom 节点功能,以适配 https://github.com/halo-dev/halo/pull/4452 中拓展操作选项的场景。

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

```release-note
None
```
2023-08-31 03:34:14 +00:00
Ryan Wang aa95bbbf4e
feat: add extension point for extend field items of data list (#4514)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

添加扩展数据列表中字段的基础能力,并为插件管理列表的字段添加扩展点以测试此扩展能力。

<img width="1650" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/0b43d7fe-c1d3-4df5-913b-77cc6dc899eb">

文档:https://github.com/halo-dev/halo/pull/4514/files#diff-3fa20be5b2061cc7b68fb5581f1f9ba64daac5831c6ccfdc9ff99f1b4b77a0a4


todo:

- [x] 场景测试
- [x] 文档 

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

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


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

```release-note
Console 端的插件列表的显示字段支持扩展。
```
2023-08-31 03:32:22 +00:00
Ryan Wang 28d62aeed7
fix: style issue of tabbar component of default type (#4521)
#### What type of PR is this?

/kind bug
/area console
/milestone 2.9.x

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

修复 Console 端 Tabbar 组件默认类型的样式问题。

before:

<img width="295" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/ae0f9114-4708-48ec-817c-2808f8fbf582">

after:

<img width="285" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/f955be60-223d-443c-ad04-98fe86c55a55">

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

```release-note
修复 Console 端 Tabbar 组件默认类型的样式问题。
```
2023-08-31 03:24:12 +00:00
Ryan Wang 22571367fa
fix: failed to change plugin status (#4506)
#### What type of PR is this?

/area console
/kind bug
/milestone 2.9.x

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

修复可能因为 version 锁的原因导致无法正常切换插件状态,现在改为在调用切换状态接口前,获取一次最新的插件信息,并提供了 retry 的配置,即失败之后重试 3 次。

#### Special notes for your reviewer:

测试能否正常切换插件状态即可。

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

```release-note
None
```
2023-08-30 04:56:10 +00:00
Ryan Wang a819296945
Refactor theme list modal to support extend (#4505)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

重构主题管理的界面,支持扩展选项卡,同时做了一些 UI 的变更。

https://github.com/halo-dev/halo/pull/4505/files#diff-e8824d75ad964eebf685ad33b915b77d3146cd04587ec53328bbb5b5602ff094

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

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

#### Special notes for your reviewer:

需要测试主题的本地上传和远程下载的安装的更新。

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

```release-note
重构 Console 端主题管理界面,支持通过插件扩展选项卡。
```
2023-08-30 04:54:15 +00:00
Takagi d0f223e4d2
fix: approved filter in comment management is ineffective (#4502)
#### What type of PR is this?

/kind bug
/area console
/milestone 2.9.x

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

解决评论管理中,根据是否已审核状态的筛选无效的问题

#### How to test it?

在评论列表上切换审核状态,查看是否有效。

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

Fixes #4494 

#### Does this PR introduce a user-facing change?
```release-note
修复评论管理中审核状态筛选无效的问题
```
2023-08-30 03:56:10 +00:00
Takagi 6ec91ed78f
fix: resolve the display bug after publishing content (#4501)
#### What type of PR is this?

/kind bug
/area console
/milestone 2.9.x

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

更改自动保存的策略,仅当内容具有缓存时才会执行自动保存。

#### How to test it?

新建/更新一篇文章之后,点击发布,查看是否还存在“文章已保存但未发布” 的提示

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

Fixes #4499 

#### Does this PR introduce a user-facing change?
```release-note
修复文章发布后,文章列表显示未发布的问题。
```
2023-08-30 03:02:10 +00:00
Ryan Wang 8afd50f84f
feat: make backup list item operations extendable (#4508)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

备份列表的操作列表支持被插件扩展。

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

```release-note
Console 端的备份列表的操作按钮列表支持扩展。
```
2023-08-29 03:36:16 +00:00
Ryan Wang 68658f9b3a
feat: add supports for system restore by remote url (#4507)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

系统恢复支持通过远程文件链接恢复

<img width="806" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/f9f2694d-b051-49c0-9f9f-695e04d4f13e">
<img width="1019" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/dc428f36-5620-4042-b7fc-cbcdb06db679">


#### Special notes for your reviewer:

测试远程恢复的功能是否正常即可。

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

```release-note
系统恢复功能支持通过远程文件链接恢复。
```
2023-08-29 03:12:16 +00:00
Ryan Wang e7f53fad05
feat: display total items text for plugins list (#4500)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.9.x

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

在 https://github.com/halo-dev/halo/pull/4473 中移除了插件管理的分页功能,但可能会造成列表底部看起来不协调,所以恢复总条数的文字显示。

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

Fixes #4498 

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

```release-note
None 
```
2023-08-28 03:50:13 +00:00
Ryan Wang 24d1d9460c
chore: update repository config for console packages (#4495)
#### What type of PR is this?

/area console
/kind cleanup

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

更新 Console 中 package.json 文件的 repository 设置。

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

```release-note
None
```
2023-08-28 03:30:14 +00:00
Takagi a28c9a9781
pref: optimize the caching functionality of content editing (#4458)
#### What type of PR is this?

/kind improvement

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

本 PR 优化了文章、内容编辑时的本地缓存功能,之前内容对于本地缓存的依赖性非常强,因此导致了部分问题,如 #3820 ,本 PR 计划之后本地缓存将仅用于特殊情况下的内容恢复,因此尝试做了如下修改:
1. 当前正在编辑的文章,会在正常模式(切换路由、刷新页面、失去当前窗口焦点、停止编写一定时间均属于正常模式)下进行自动保存后删除本地缓存。
2. 若本地具有缓存,则会在进入编辑页面时,比对一次 content 的 version,若缓存 version 小于线上 version,则抛弃缓存,若一致,则使用缓存。

但经过测试,本 PR 无法解决如下问题:
1. 同时编辑一篇文章时,内容会被覆盖的问题。
2. 对比版本后会抛弃缓存,而实际上应当将本地缓存加入历史版本中。

#### How to test it?

1. 新建一篇文章,编写任意内容,返回文章页查看是否已经具有新的文章,且内容已被保存。
2. 修改一篇文章的内容,然后返回文章页,查看是否不是从缓存中加载。
3. 断网模式下修改一篇文章的内容,然后返回文章页,联网后,再次打开此文章,查看是否显示从缓存中加载。
4. 断网模式下修改一篇文章的内容,然后返回文章页。在另一个浏览器或页面修改此文章并保存后,回到断网页面联网后,查看是否更新为最新内容。

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

Fixes #3820 
Fixes #4223 

#### Does this PR introduce a user-facing change?
```release-note
减少内容编辑对本地缓存依赖,支持内容自动保存至服务端。
```
2023-08-25 16:18:16 +00:00
Ryan Wang 8ad59631b1
chore: bump @halo-dev/richtext-editor version to alpha.30 (#4490)
#### What type of PR is this?

/area console
/kind cleanup
/milestone 2.9.x

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

升级默认编辑器的版本,包含以下修改:

1. 图片支持修改 alt 属性。 https://github.com/halo-sigs/richtext-editor/pull/32
2. 拖拽修改图片大小的时候保持等比例。 https://github.com/halo-sigs/richtext-editor/pull/33
3. 优化在移动端下,编辑器右侧边栏的样式。 https://github.com/halo-sigs/richtext-editor/pull/35
4. 编辑器标题、段落及代码块增加 Tab 快捷键缩进。 https://github.com/halo-sigs/richtext-editor/pull/34

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

```release-note
升级默认编辑器的版本,包含以下更改:

1. 图片支持修改 alt 属性。 by @GodlessLiu in <https://github.com/halo-sigs/richtext-editor/pull/32>
2. 拖拽修改图片大小的时候保持等比例。 by @GodlessLiu in <https://github.com/halo-sigs/richtext-editor/pull/33>
3. 优化在移动端下,编辑器右侧边栏的样式。 by @ruibaby in <https://github.com/halo-sigs/richtext-editor/pull/35>
4. 编辑器标题、段落及代码块增加 Tab 快捷键缩进。 by @LIlGG in <https://github.com/halo-sigs/richtext-editor/pull/34>
```
2023-08-25 16:14:13 +00:00
Ryan Wang f01e04f5a0
feat: add batch operation feature for plugins (#4482)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

支持对插件进行批量操作。

<img width="577" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/ec3ed727-e151-44d0-8c18-b6ec8a309ea9">

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

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

#### Special notes for your reviewer:

测试批量对插件进行启用、停用、卸载。

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

```release-note
Console 端的插件管理支持批量操作。
```
2023-08-25 16:00:13 +00:00
Ryan Wang 138ffde7e2
refactor: remove the pagination feature of plugin management (#4473)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.9.x

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

移除插件管理列表的分页功能,默认列表出所有安装的插件。

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

Fixes #4469 

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

```release-note
移除 Console 端插件管理列表的分页功能,默认列表出所有安装的插件。
```
2023-08-25 15:42:14 +00:00
Ryan Wang 03bf2aea7c
fix: setup state is not set due to an exception when initializing the data (#4484)
#### What type of PR is this?

/area console
/kind bug
/milestone 2.9.x

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

修复因为初始化数据异常导致没有记录初始化状态的问题,这个问题可能会导致失败之后无法再让系统正常访问。

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

```release-note
None
```
2023-08-25 15:34:14 +00:00
Ryan Wang 63bbd4fa81
Refactor plugin installation modal to support extend (#4461)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

重构插件安装的界面,以支持扩展。

文档:https://github.com/halo-dev/halo/pull/4461/files?short_path=fe4adc6#diff-fe4adc66005d24150478d0919c5f330ee695c2b5657ee7baed56929830c7eb90

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

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

#### Special notes for your reviewer:

需要测试插件的本地上传和远程下载的安装的更新。

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

```release-note
重构 Console 端插件安装界面,支持通过插件扩展选项卡。
```
2023-08-25 15:28:12 +00:00
John Niang 7603b21dd2
Support restoring with downloadable URL or backup name (#4474)
#### What type of PR is this?

/kind feature
/area core
/milestone 2.9.x

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

Currently, we only support restoring by uploading backup file. Downloading and uploading larger backup files can be cumbersome for users.

This PR supports restoring with downloadable URL or backup name as well.

#### Special notes for your reviewer:

```bash
# Replace ${BACKUP_NAME} by yourself.
curl -u admin:admin 'http://localhost:8090/apis/api.console.migration.halo.run/v1alpha1/restorations' \
  -H 'Content-Type: multipart/form-data; boundary=----WebKitFormBoundary3Al7pC6AbBNfB1js' \
  --data-raw $'------WebKitFormBoundary3Al7pC6AbBNfB1js\r\nContent-Disposition: form-data; name="backupName"\r\n\r\n${BACKUP_NAME}\r\n------WebKitFormBoundary3Al7pC6AbBNfB1js--\r\n'
```

```bash
# Replace ${DOWNLOAD_LINK} by yourself.
curl -u admin:admin 'http://localhost:8090/apis/api.console.migration.halo.run/v1alpha1/restorations' \
  -H 'Content-Type: multipart/form-data; boundary=----WebKitFormBoundarytv6cqgmANkCpSuZm' \
  --data-raw $'------WebKitFormBoundarytv6cqgmANkCpSuZm\r\nContent-Disposition: form-data; name="downloadUrl"\r\n\r\n${DOWNLOAD_LINK}\r\n------WebKitFormBoundarytv6cqgmANkCpSuZm--\r\n'
```

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

```release-note
新增提供下载链接或者备份名进行系统恢复的功能。
```
2023-08-25 15:22:11 +00:00
Ryan Wang e5df695f9d
chore: bump uppy related packages version (#4487)
#### What type of PR is this?

/area console
/kind cleanup
/milestone 2.9.x

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

升级 Console 端上传组件(Uppy)相关依赖的版本。

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

```release-note
升级 Console 端上传组件(Uppy)相关依赖的版本。
```
2023-08-25 15:10:12 +00:00
Hilary Liu dcddf5a355
fix: avatar component cannot watch data updates (#4459)
#### What type of PR is this?
/kind bug
/area console
/kind improvement

#### What this PR does / why we need it:
当用户对头像进行删除或修改时,文章页面和用户页面的头像会出现显示错误。
#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/4408
Fixes https://github.com/halo-dev/halo/issues/4352

#### Special notes for your reviewer:

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

```release-note
修复 Console 端头像组件的图片更新问题
```
2023-08-25 15:06:13 +00:00
Hilary Liu 81cafb14bb
fix: style issue of post widget when post title is too long (#4416)
<!--  Thanks for sending a pull request!  Here are some tips for you:
1. 如果这是你的第一次,请阅读我们的贡献指南:<https://github.com/halo-dev/halo/blob/master/CONTRIBUTING.md>。
1. If this is your first time, please read our contributor guidelines: <https://github.com/halo-dev/halo/blob/master/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?
/kind bug
/area console
<!--
添加其中一个类别:
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
-->

#### What this PR does / why we need it:
文章标题过长时,面板“最近文章”会存在日期显示不完整
#### 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 https://github.com/halo-dev/halo/issues/4304

#### Special notes for your reviewer:
目前我的解决方案是将Entity加上一个flex-wrap,这样可以保证日期显示完整,但是这可能导致上下文章的布局结构不统一。不知是否可以采纳。
![image](https://github.com/halo-dev/halo/assets/110895612/45218eaf-7d7c-46ba-80ad-2d646e5b16dd)

#### 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
用户在仪表板页面为`最近文章`设置的宽度不够时,可以显示创建日期
```
2023-08-25 14:36:12 +00:00
longjuan 5e21909e36
chore: register AttachmentFileTypeIcon component globally (#4489)
<!--  Thanks for sending a pull request!  Here are some tips for you:
1. 如果这是你的第一次,请阅读我们的贡献指南:<https://github.com/halo-dev/halo/blob/master/CONTRIBUTING.md>。
1. If this is your first time, please read our contributor guidelines: <https://github.com/halo-dev/halo/blob/master/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?
/kind feature
/area console
<!--
添加其中一个类别:
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
-->

#### What this PR does / why we need it:
将 AttachmentFileTypeIcon 在 Console 全局进行注册,以在插件中复用此组件。
#### 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 https://github.com/halo-dev/halo/issues/4413

#### Special notes for your reviewer:
我把组件放到 `@/components` 里了,不合适我改回去
#### 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
None
```
2023-08-25 13:24:11 +00:00
Ryan Wang 7a057679da
refactor: remove the confirmation box of the enable/disable plugin (#4472)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.9.x

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

移除启动/停止插件的确认弹框。

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

Fixes #4471 

#### Special notes for your reviewer:

测试启动和停止插件是否正常工作即可。

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

```release-note
移除 Console 端启动/停止插件的确认弹框。
```
2023-08-25 09:26:13 +00:00
Ryan Wang 70eb039468
feat: add extension point for extend data list operation items (#4452)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

添加扩展数据列表中操作按钮列表的基础能力,并为文章和插件管理列表的操作按钮列表添加扩展点以测试此扩展能力。

todo:

- [x] 场景测试
- [x] 文档 

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

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

#### Special notes for your reviewer:

可以使用以下插件进行测试:

- 源码:[plugin-export-md.zip](https://github.com/halo-dev/halo/files/12436956/plugin-export-md.zip)
- 可安装的 JAR 包:[plugin-export-md-1.0.0-SNAPSHOT.jar.zip](https://github.com/halo-dev/halo/files/12436950/plugin-export-md-1.0.0-SNAPSHOT.jar.zip)

安装之后可以在文章列表的操作按钮列表中新增一个 `导出为 Markdown 文档` 的按钮,点击之后会导出一个 Markdown 文档。

<img width="374" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/eb0b7c61-f5c8-4af3-bf13-579681d36097">


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

```release-note
Console 端的文章和插件列表的操作按钮列表支持扩展。
```
2023-08-25 09:02:12 +00:00
Ryan Wang 141e22e2c6
feat: add mouse scrolling handler for tabs component (#4453)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

Console 端的 Tabs 组件支持通过鼠标滚动选项卡。

![2023-08-21 16 15 46](https://github.com/halo-dev/halo/assets/21301288/8fa56d4d-04d3-47a5-8515-2caf54ac9258)

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

Fixes #4353 

#### Special notes for your reviewer:

None

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

```release-note
Console 端的 Tabs 组件支持通过鼠标滚动选项卡。
```
2023-08-25 08:38:15 +00:00
guqing 5c115563e0
feat: add API to obtain the bundled js file for all enabled plugins (#3444)
#### What type of PR is this?
/kind feature
/milestone 2.3.x
/area core
#### What this PR does / why we need it:
提供 `/apis/api.console.halo.run/v1alpha1/plugins/bundle.js` 来获取已启用插件的捆绑后的 main.js 和 style.css 文件

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

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

```release-note
优化已启用插件 jsbundle 文件的加载方式
```
2023-08-25 07:28:11 +00:00
Takagi ec0187d8aa
fix: the search for comments by username yields empty results (#4481)
#### What type of PR is this?

/kind bug
/area console
/milestone 2.9.x

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

Console 评论列表中,使用用户名查询时携带 kind

#### How to test it?

在 Console 端评论列表,选中右上角评论者,进行选择。

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

Fixes #4465 

#### Does this PR introduce a user-facing change?
```release-note
解决评论列表根据评论者条件筛选时为空的问题
```
2023-08-25 06:32:11 +00:00
Hilary Liu 42ef7265c7
feat: store attachment view type to localStorage (#4477)
#### What type of PR is this?
/kind improvement
/kind console

#### What this PR does / why we need it:
修改附件显示模式后,保存状态
#### Which issue(s) this PR fixes:

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

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


```release-note
Console 端附件管理的显示模式支持缓存到浏览器。
```
2023-08-24 14:38:14 +00:00
Ryan Wang 6326ec1d86
refactor: improve plugin upgrade related code to resolve performance issue (#4410)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.9.x

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

优化插件升级相关代码,解决插件管理列表的潜在性能问题。

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

Fixes #4409 

#### Special notes for your reviewer:

需要测试插件安装和升级功能

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

```release-note
优化 Console 端插件管理列表的性能
```
2023-08-22 08:12:12 +00:00
XinKeng 8ea397da5c
perf: increasing the editor performance (#4445)
A function to debounce editor updates was added to the DefaultEditor.vue component. This change was necessary to prevent excessive event executions. Now, 'update:raw', 'update:content', and 'update' events will be emitted 250ms after the last update, reducing the number of redundant operations and increasing the editor's performance.

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. 如果这是你的第一次,请阅读我们的贡献指南:<https://github.com/halo-dev/halo/blob/master/CONTRIBUTING.md>。
1. If this is your first time, please read our contributor guidelines: <https://github.com/halo-dev/halo/blob/master/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?
/kind improvement

<!--
添加其中一个类别:
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
-->

#### What this PR does / why we need it:
目前默认编辑器在文章内容过多时,会出现输入延迟。
#### 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 #4389

#### 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
增强默认编辑器在文章内容过大时的性能。
```
2023-08-20 17:14:12 +00:00
Ryan Wang 43e1e446b6
feat: add reveal button for password input (#4434)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.9.x

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

为 FormKit 的 password 类型输入框添加统一的显示/隐藏明文按钮。

<img width="541" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/2947cef2-258c-434d-9268-c8b5ad26a9f7">


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

Fixes #4382 

#### Special notes for your reviewer:

测试密码输入框的显示隐藏明文按钮是否可以正常使用即可。

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

```release-note
为 FormKit 的 password 类型输入框添加统一的显示/隐藏明文按钮。
```
2023-08-16 06:38:11 +00:00
Ryan Wang 8678d614e2
chore: bump formkit version to 0.18.0 (#4428)
#### What type of PR is this?

/area console
/kind bug
/milestone 2.9.x

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

升级 FormKit 依赖至 [0.18.0](https://formkit.com/changelog#_0180-beta-18)

修复[升级到 0.17.5](https://github.com/halo-dev/halo/pull/4411) 之后输入框失去焦点之后无法提交的问题。

see https://github.com/halo-dev/halo/issues/4424#issuecomment-1677331547

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

Fixes #4424 

#### Special notes for your reviewer:

需要测试各个输入框是否正常工作。

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

```release-note
升级 FormKit 的依赖至 0.18.0
```
2023-08-16 03:30:12 +00:00
Ryan Wang 58679b2811
chore: bump vue related packages version (#4427)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.9.x

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

升级 Vue 至 3.3 以及相关的依赖。

see https://blog.vuejs.org/posts/vue-3-3

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

Fixes #4425 

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

```release-note
升级 Vue 至 3.3 以及相关的依赖。
```
2023-08-16 02:16:25 +00:00
Takagi bce65c4947
fix: handle external exceptions when uploading files (#4431)
#### What type of PR is this?

/kind bug
/area console
/milestone 2.9.x

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

原先使用 uppy 上传文件时抛出异常时,处理了 Halo 系统内部异常,但并未处理外部抛出的异常,例如反向代理等,因而会导致上传文件时卡在 0% 或者 100%。
更改之后当上传抛出异常时,首先会尝试将异常信息转换为 JSON,如果转换失败,则代表为外部异常,此时会抛出异常信息,异常信息格式为 `status: statusText`。

<img width="1045" alt="image" src="https://github.com/halo-dev/halo/assets/31335418/228a73aa-b22e-40f9-b69d-3180e2f78032">


#### How to test it?

在 Halo 上传接口前增加一层反向代理,并设置最大允许文件值,之后上传超过其值的文件进行尝试,若能够成功抛出异常即可。

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

Fixes #4359 

#### Does this PR introduce a user-facing change?
```release-note
修复上传文件时由于外部异常而导致进度条不变的问题
```
2023-08-15 10:02:12 +00:00
Takagi 6282efbe70
fix: redirection fails after login (#4423)
#### What type of PR is this?

/kind bug

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

对 console 跳转链接进行编码,用于解决跳转链接中如果携带非标准字符而导致的报错

#### How to test it?

本地开发环境:重定向地址无误且进行了 uri 编码即可。

生产环境:
在 console 后端未登录时,前往应用市场输入网站地址进行安装,之后进行登录,查看是否能够正确跳转。

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

Fixes #4351

#### Does this PR introduce a user-facing change?
```release-note
对 console 重定向链接进行编码
```
2023-08-15 09:00:13 +00:00
Takagi 5779f01161
pref: allow annotations value to be empty (#4419)
#### What type of PR is this?

/kind improvement

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

由于后端 annotation 的值可以为空,而前端则规定 annotation 值为必填项,因此去除前端必填属性。

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

Fixes #4279 

#### Does this PR introduce a user-facing change?
```release-note
将元数据值更改为非必填
```
2023-08-14 14:08:13 +00:00
Ryan Wang 905e867eb3
chore: bump formkit version to 0.17.5 (#4411)
#### What type of PR is this?

/area console
/kind cleanup
/milestone 2.9.x

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

升级 FormKit 的依赖至 0.17.5

see https://formkit.com/changelog

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

```release-note
升级 FormKit 的依赖至 0.17.5
```
2023-08-13 14:40:12 +00:00
guqing 5690de3f24
refactor: improve the system initialization process (#4306)
* refactor: improve the system initialization process

* Sync api-client

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

* feat: add initialized state to global info

* Refine setup page ui

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

* refactor: improve the system initialization process

* Refine setup page ui

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

* Refine setup page ui

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

* fix: update with initialize state

* Refactor setup

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

* refactor: initialization state

* Refactor router guards

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

* Refine i18n

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

* Refactor init data

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

* Refactor init data

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

* Update console/src/views/system/Setup.vue

Co-authored-by: Takagi <mail@e.lixingyong.com>

* refactor: initialization interface

---------

Signed-off-by: Ryan Wang <i@ryanc.cc>
Co-authored-by: Ryan Wang <i@ryanc.cc>
Co-authored-by: Takagi <mail@e.lixingyong.com>
2023-08-11 09:10:35 +08:00
John Niang 1172f4a98c
Support restarting Halo (#4361)
#### What type of PR is this?

/kind feature
/area core
/milestone 2.9.x

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

Support restarting Halo and enable restart endpoint by default.

Restart endpoint detail:

request uri: `/actuator/restart`
request method: `POST`

Please note that memory usage may slightly increase after restarting Halo.

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

```release-note
支持在线重启 Halo。
```
2023-08-09 06:04:11 +00:00
Takagi 3ec409100b
fix: resolve the issue of ineffective duplicate key validation in AnnotationsForm (#4369)
#### What type of PR is this?

/kind bug
/area console

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

在 AnnotationsForm 新增 customAnnotationsDuplicateKey 校验规则,校验自定义元数据中是否具有重复的 key。

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

Fixes #4367 

#### Special notes for your reviewer:

在任意一个使用 AnnotationsForm 的位置,例如`文章设置 - 元数据` 中,新增一个已经存在的 key,查看是否有重复 key 的校验。

#### Does this PR introduce a user-facing change?
```release-note
修复 AnnotationsForm 重复的 key 校验无效的问题。
```
2023-08-08 07:04:12 +00:00
Takagi 9774530abd
fix: add random uuid to resolve the issue of id conflicts (#4371)
#### What type of PR is this?

/kind bug
/area console

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

为 AnnotationsForm 的 formkit 表单 id 增加 uuid 前缀,防止由于一个页面具有多个 AnnotationsForm 时编号互相冲突。

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

Fixes #4368 

#### Special notes for your reviewer:

检查使用 AnnotationsForm 的界面,例如文章、页面设置的元数据处没有出现问题即可。

#### Does this PR introduce a user-facing change?
```release-note
None
```
2023-08-04 03:11:48 +00:00
Takagi 9b8b4294e5
pref: scroll to the error location when form submission validation fails (#4358)
#### What type of PR is this?

/kind improvement
/area console

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

为 `Formkit` 添加自动滚动至错误的插件,当表单校验不通过时,如果错误处被隐藏,则会滚动至错误处。

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

Fixes #4317 

#### Special notes for your reviewer:

找到表单中的必选项或其他校验项,尝试填写一个错误的选项。之后滚动表单直到隐藏当前项,此时点击提交,查看是否能够自动滚动至对应的错误项。

#### Does this PR introduce a user-facing change?
```release-note
当表单填写错误时,将会自动滚动至错误项。
```
2023-08-03 07:51:27 +00:00
dependabot[bot] 355fb860e5
chore(deps-dev): bump @antfu/utils from 0.7.2 to 0.7.5 in /console (#4363)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-03 15:37:16 +08:00
Takagi 2ee51b0c56
fix: resolve the issue of users being able to delete themselves. (#4355)
#### What type of PR is this?

/kind bug
/area console

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

在用户列表中,禁止用户选中自己,以解决用户能够进行视觉上自我删除的 bug。

<img width="1636" alt="image" src="https://github.com/halo-dev/halo/assets/31335418/d95f7cf5-cfea-49fa-8f68-d13c46bc88c1">

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

Fixes #4350 

#### Special notes for your reviewer:

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

```release-note
在用户列表中禁用选中当前用户
```
2023-08-03 07:23:32 +00:00
dependabot[bot] 6b748efeaf
chore(deps-dev): bump vite from 4.0.4 to 4.0.5 in /console (#4362)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 4.0.4 to 4.0.5.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v4.0.5/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v4.0.5/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-02 21:50:26 +08:00
Ryan Wang 734adeb373
chore: use rollup-plugin-gzip instead of vite-compression-plugin (#4354)
#### What type of PR is this?

/area console
/kind cleanup
/milestone 2.9.x

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

使用 [rollup-plugin-gzip](https://www.npmjs.com/package/rollup-plugin-gzip) 代替 [vite-compression-plugin](https://www.npmjs.com/package/vite-compression-plugin) 在 Vite 编译后对资源进行 gzip。

原因是 vite-compression-plugin 已经在 npmjs.com 下架。

#### Special notes for your reviewer:

无特别需要注意,CI 能通过就行。

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

```release-note
None
```
2023-08-02 13:12:25 +00:00
John Niang 7efd29e722
Prepare for developing Halo 2.9.0 (#4344)
#### What type of PR is this?

/kind cleanup
/area core

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

Bump up Halo to `2.9.0-SNAPSHOT` for developing Halo 2.9.0.

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

```release-note
None
```
2023-08-01 07:33:45 +00:00