#### What type of PR is this?
/kind improvement
/area core
/milestone 2.12.x
#### What this PR does / why we need it:
This PR reverts changes in PR <https://github.com/halo-dev/halo/pull/4023>, mainly thanks to PR <https://github.com/halo-dev/halo/pull/5148>.
We don't need to refresh the plugin wrapper on every startup, because we entirely disable the plugin in plugin manager when disabling plugin at console.
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/4016
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/area console
/area core
/milestone 2.12.x
#### What this PR does / why we need it:
优化角色模板依赖的相关功能:
1. 修复勾选某个角色模板之后,其下依赖模板没有选中的问题。
2. 修复编辑角色时,模板其下依赖模板没有选中的问题。
3. 修复角色管理列表中,权限数量显示有误的问题。
4. 移除 **允许管理所有文章** 的角色模板,此角色模板与文章管理重复。
5. 优化 i18n。
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/5222
#### Special notes for your reviewer:
需要测试上诉问题是否还存在。
#### Does this PR introduce a user-facing change?
```release-note
优化角色模板依赖的相关功能,优化文章相关角色的翻译。
```
#### What type of PR is this?
/kind improvement
/area core
/milestone 2.12.x
#### What this PR does / why we need it:
通过重构 QueryIndexView 的实现方式来优化 IndexedQueryEngine 的逻辑并简化排序过程
how to test it?
单元测试通过即可,此 PR 的修改都是基于单元测试的基础上对原代码做的重构
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/kind improvement
/area core
/milestone 2.12.x
#### What this PR does / why we need it:
重构 ListResult.subList 方法在获取所有数据时的处理逻辑,只要 size 为 0 就返回所有数据
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/kind improvement
/area core
#### What this PR does / why we need it:
See https://github.com/spring-projects/spring-boot/releases/tag/v3.2.2 for more.
#### Does this PR introduce a user-facing change?
```release-note
升级依赖 Spring Boot 至 3.2.2
```
#### What type of PR is this?
/area core
/milestone 2.12.x
#### What this PR does / why we need it:
修改文章编辑角色的显示名称为**文章管理员**,这样会更加直观。
#### Which issue(s) this PR fixes:
Fixes#5221
#### Does this PR introduce a user-facing change?
```release-note
修改文章编辑角色的显示名称为**文章管理员**。
```
#### What type of PR is this?
/area console
/area editor
/milestone 2.12.x
/kind bug
#### What this PR does / why we need it:
升级 tiptap 相关依赖,解决代码块中换行的问题。
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/5207
#### Special notes for your reviewer:
测试方式:
1. 进入 console/packages/editor,更新依赖
2. 使用 pnpm dev 启动编辑器服务
3. 插入一个代码块,然后刷新页面,观察代码块是否显示正常
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/kind improvmenet
/area editor
/milestone 2.12.x
#### What this PR does / why we need it:
为默认编辑器 table 组件渲染后的结果中增加 `colgroup`,并为 table 增加 `width` 与 `minWidth` 属性。
用于解决渲染完成之后的 table html 宽度与编辑时不一致的问题。
#### How to test it?
拖拽修改默认编辑器表格列宽,查看生成后的 html 列宽是否同样发生了变化,并且查看生成的 html 结构下是否具有 `colgroup` html 元素。
#### Which issue(s) this PR fixes:
Fixes#5138
#### Does this PR introduce a user-facing change?
```release-note
为默认富文本编辑器 table 组件渲染后的 html 增加 colgroup 元素与 width 属性
```
#### What type of PR is this?
/kind improvement
/area core
#### What this PR does / why we need it:
When we are developing a plugin in development environment, APIs in plugin are frequently changed. But they are not reflected in Swagger UI instantly unless we restart Halo entirely.
This PR disables Swagger cache in that case.
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/area console
/kind bug
/milestone 2.12.x
#### What this PR does / why we need it:
取消对 es.yaml 的注释,这应该是在 https://github.com/halo-dev/halo/pull/4957 中临时注释之后,合并前没有取消注释。
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/area console
/kind improvement
/milestone 2.12.x
#### What this PR does / why we need it:
将默认编辑器依赖添加到插件构建库的 external 中,基于 https://github.com/halo-dev/halo/pull/4924
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/area console
/kind improvement
/milestone 2.12.x
#### What this PR does / why we need it:
在 Console 和 UC 的页面底部添加 Powered by 信息。
<img width="1920" alt="图片" src="https://github.com/halo-dev/halo/assets/21301288/3ce1304f-01dc-4e3f-a22a-a1cbd59fced8">
#### Does this PR introduce a user-facing change?
```release-note
在 Console 和 UC 的页面底部添加 Powered by 信息。
```
#### What type of PR is this?
/kind bug
#### What this PR does / why we need it:
修改 code 内`br` 标签的 `display`,用于适配 firefox 浏览器
#### How to test it?
测试在 firefox 浏览器下,使用代码块回车等是否会出现样式问题。
#### Which issue(s) this PR fixes:
Fixes#5064
#### Does this PR introduce a user-facing change?
```release-note
解决在 Firefox 浏览器下的代码块编辑问题。
```
#### What type of PR is this?
/area console
/kind improvement
/milestone 2.12.x
#### What this PR does / why we need it:
升级 FormKit 的依赖至 [1.4.0](https://formkit.com/changelog#_140)。
#### Does this PR introduce a user-facing change?
```release-note
升级 FormKit 的依赖至 [1.4.0](https://formkit.com/changelog#_140)。
```
<!-- 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
<!--
添加其中一个类别:
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:
增加 `@tiptap/extension-list-keymap` 扩展,优化列表的键盘操作
#### 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#5065
#### Special notes for your reviewer:
测试方法:
1. 测试无序列表中和无序列表后对于删除键 `Delete` 和退格键 `backspace` 的支持是否符合预期
2. 测试有序列表中和有序列表后对于删除键 `Delete` 和退格键 `backspace` 的支持是否符合预期

3. 测试选择部分列表项后对于删除键 `Delete` 和退格键 `backspace` 的支持是否符合预期
4. 测试 `Ctrl-A` 全选后对于删除键 `Delete` 和退格键 `backspace` 的支持是否符合预期

#### 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
修复无法删除有序/无序列表后空行的问题
```
#### What type of PR is this?
/area console
/kind improvement
/milestone 2.12.x
#### What this PR does / why we need it:
升级 Uppy 相关的依赖。
https://github.com/transloadit/uppy/releases/tag/uppy%403.21.0
#### Special notes for your reviewer:
测试附件上传组件功能是否正常即可。
#### Does this PR introduce a user-facing change?
```release-note
升级 Uppy 相关的依赖。
```
#### What type of PR is this?
/area console
/kind improvement
/milestone 2.12.x
#### What this PR does / why we need it:
优化 Lodash 依赖,使用 lodash-es 代替 lodash 库。
#### Which issue(s) this PR fixes:
Fixes#5124
#### Special notes for your reviewer:
CI 通过即可。
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/area console
/kind bug
/milestone 2.12.x
#### What this PR does / why we need it:
修复在个人中心的文章编辑器中创建新文章时无法上传图片的问题
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/5035
#### Special notes for your reviewer:
测试在 UC 新建文章,在未保存时是否能上传图片。
#### Does this PR introduce a user-facing change?
```release-note
修复个人中心创建新文章时无法上传图片的问题
```
#### What type of PR is this?
/kind bug
/area editor
/milestone 2.12.x
#### What this PR does / why we need it:
重写了对默认编辑器标题的 id 生成逻辑。目前将会在对标题进行任意的修改之后,对所有的标题进行 id 计算,用以解决当标题名称具有重复时,生成了相同的 id.
需要注意的是,由于需要对任意标题进行修改之后才会进行生效,因此已经存在重名标题 id 的问题时,需要修改任意的标题使其生效。
#### How to test it?
在文章内新增多个相同内容的标题,查看是否可以正常跳转。
#### Which issue(s) this PR fixes:
Fixes#5068
#### Does this PR introduce a user-facing change?
```release-note
解决默认编辑器中具有重名标题时,锚点只会跳转至首个的问题。
```
#### What type of PR is this?
/kind improvement
/area editor
/milestone 2.12.x
#### What this PR does / why we need it:
导出一些必要的默认编辑器扩展及工具类,例如 `Paragraph`
#### Which issue(s) this PR fixes:
Fixes#5103
#### Does this PR introduce a user-facing change?
```release-note
导出必要的默认编辑器扩展及工具类
```