#### 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#5275
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/kind improvement
/area console
/milestone 2.12.x
#### What this PR does / why we need it:
为个人中心的文章适配自动保存功能
#### How to test it?
新建一个空白文章,测试当失去焦点、切换路由,或者在页面等待 20S 后,是否会自动创建文章草稿。
#### Which issue(s) this PR fixes:
Fixes#5036
#### Does this PR introduce a user-facing change?
```release-note
为个人中心的文章适配自动保存功能
```
#### What type of PR is this?
/area console
/kind bug
/milestone 2.12.x
#### What this PR does / why we need it:
修复创建 PAT 之后,点击复制按钮无法复制 token 的问题。
#### Which issue(s) this PR fixes:
Fixes#5273
#### Special notes for your reviewer:
测试步骤:
1. 构建生产环境的 UC。
2. 创建 PAT,点击复制按钮,观察是否能够正常复制。
#### Does this PR introduce a user-facing change?
```release-note
修复创建 PAT 之后,点击复制按钮无法复制 token 的问题。
```
#### What type of PR is this?
/area console
/kind bug
/milestone 2.12.x
#### What this PR does / why we need it:
修复当头像因为后端服务无法正常变更时,前端因为一直处于 refetch 状态导致无法重新上传的问题。
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/4852
#### Special notes for your reviewer:
1. 使用 https://github.com/AirboZH/plugin-uposs 存储服务创建一个存储策略。
2. 用户设置中的头像存储位置改为此存储策略。
3. 上传头像,观测是否一直处于重新获取的状态。
#### Does this PR introduce a user-facing change?
```release-note
优化头像上传,防止因为后端服务异常导致无法重新上传。
```
#### What type of PR is this?
/area console
/kind bug
/milestone 2.12.x
#### What this PR does / why we need it:
修复当浏览器标签页不活跃时,文章编辑页面的 health 接口没有定时请求的问题。
#### Which issue(s) this PR fixes:
Fixes#5265
#### Special notes for your reviewer:
测试方式:
1. 可以在本地先将 refetchInterval 改为 1000 以方便测试。
2. 进入文章编辑页面。
3. 切换至其他标签页。
4. 返回之后查看浏览器开发者工具的 Network ,观察 health 接口是否有请求。
#### Does this PR introduce a user-facing change?
```release-note
修复当浏览器标签页不活跃时,文章编辑页面的 health 接口没有定时请求的问题。
```
#### What type of PR is this?
/area console
/kind improvement
/milestone 2.12.x
#### What this PR does / why we need it:
更新预设文章中的链接地址。
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/kind feature
/area core
/area console
/milestone 2.12.x
#### What this PR does / why we need it:
使用索引功能来查询文章列表
how to test it?
1. 测试文章列表的筛选条件是否正确
2. 测试文章列表中关联的标签和分类信息是否正确
3. 测试仪表盘的文章数量统计是否正确
4. 测试分类关联文章的数量是否正确
5. 测试标签关联文章的文章是否正确
6. 测试主题端文章列表是否正确
#### Which issue(s) this PR fixes:
Fixes#5223
#### Does this PR introduce a user-facing change?
```release-note
使用高级索引功能检索文章以显著降低资源消耗并提供更快、更高效的文章检索体验
```
#### What type of PR is this?
/kind bug
/area console
/area editor
#### What this PR does / why we need it:
将默认编辑器的父级容器移除。用于解决冒泡菜单被遮挡的问题。
由于修改后默认编辑器自身可滚动,因此可以使默认编辑器容器内的绝对定位元素获取到当前滚动的位置。
#### How to test it?
输入超过一屏宽度的内容,按 `MOD + A` 全选,查看冒泡菜单是否被顶部菜单遮挡。
#### Which issue(s) this PR fixes:
Fixes#4869
#### Does this PR introduce a user-facing change?
```release-note
解决冒泡菜单会被顶部工具栏遮挡的问题
```
#### What type of PR is this?
/area console
/milestone 2.12.x
/kind improvement
#### What this PR does / why we need it:
优化 Console 左侧菜单的展开逻辑,改为可以通过点击展开图标来展开子菜单。
<img width="323" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/6f9a4d2c-1141-424e-b5cd-4e0a9991c67d">
#### Does this PR introduce a user-facing change?
```release-note
优化 Console 左侧菜单的展开逻辑,支持通过点击图标来展开子菜单。
```
#### What type of PR is this?
/kind improvement
#### What this PR does / why we need it:
为溢出的表格增加鼠标滚动功能,当光标在溢出的表格上时,滚动鼠标则可以使表格左右滚动。
当表格可以左右滚动时,增加侧边阴影用于提示用户。
#### How to test it?
测试具有滚动条的表格是否有侧边阴影用于提示用户,并且用鼠标滚动是否可以使表格左右滚动。
#### Which issue(s) this PR fixes:
Fixes#5182
#### Does this PR introduce a user-facing change?
```release-note
优化富文本编辑器中表格组件可滚动时的显示效果
```
#### What type of PR is this?
/kind feature
#### What this PR does / why we need it:
为默认富文本编辑器添加查找与搜索的功能扩展。
快捷键:
当焦点处于编辑器中时,可以使用 `Mod+f` 来唤起查找与搜索框,或者点击顶部工具栏来打开。
当焦点处于查找与搜索框时,按下 `Ecs` 可进行关闭。
<img width="1920" alt="image" src="https://github.com/halo-dev/halo/assets/31335418/03a54bb8-2cc4-4cb0-9a18-fd0e9aede564">
#### How to test it?
测试查找与搜索功能是否正常
#### Which issue(s) this PR fixes:
Fixes#5195
#### Does this PR introduce a user-facing change?
```release-note
为默认富文本编辑器添加查找与搜索的功能扩展。
```
#### What type of PR is this?
/kind bug
#### What this PR does / why we need it:
当表格后存在选中的内容时,按下退格键或删除键不再执行选中表格的操作,而是继续向下执行。
#### How to test it?
在表格后紧跟着文本,从文本开头选中文本,然后按下退格键,查看文本是否能够被删除。
#### Which issue(s) this PR fixes:
Fixes#5193
#### Does this PR introduce a user-facing change?
```release-note
解决默认富文本编辑器中表格后的文本选中后无法删除的问题
```
#### 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?
/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?
/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
导出必要的默认编辑器扩展及工具类
```