#### 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
导出必要的默认编辑器扩展及工具类
```
#### What type of PR is this?
/area console
/kind feature
/milestone 2.12.x
#### What this PR does / why we need it:
在用户数据管理列表页面路由中记录查询条件,包括分页信息、筛选信息等。可以保证在刷新页面或者切换路由返回时保留之前的查询状态。
<img width="1671" alt="图片" src="https://github.com/halo-dev/halo/assets/21301288/f63240b8-800a-4dc8-be80-1542c43815ee">
#### Which issue(s) this PR fixes:
Fixes#5060
#### Special notes for your reviewer:
需要测试:
1. 用户管理列表的所有筛选项是否可以正常工作。
2. 尝试设置部分筛选,然后刷新页面,观察筛选条件是否正常保留。
#### Does this PR introduce a user-facing change?
```release-note
Console 端的用户管理列表支持在地址栏记录筛选条件。
```
#### What type of PR is this?
/area console
/kind improvement
/milestone 2.12.x
#### What this PR does / why we need it:
当编辑器切换组件中有不可用编辑器时,添加提示。
<img width="304" alt="图片" src="https://github.com/halo-dev/halo/assets/21301288/a5da0549-dfd6-4392-9375-16ddf2a57517">
#### Which issue(s) this PR fixes:
Fixes#5059
#### Special notes for your reviewer:
测试方式:
1. 安装若干不同类型的编辑器,并创建文章。
2. 修改文章时尝试选择不同类型的编辑器,观察是否有提示。
#### Does this PR introduce a user-facing change?
```release-note
当编辑器切换组件中有不可用编辑器时,添加提示。
```
#### What type of PR is this?
/area console
/kind improvement
#### What this PR does / why we need it:
在 Tabbar 组件内容可滚动时,添加内容超出时的水平方向滚动指示器;解决由 #4582 指出的体验问题
#### Which issue(s) this PR fixes:
Fixes#4582
#### Special notes for your reviewer:
注意观察各处使用 Tabbar 组件且内容可滚动时的情况(浏览器宽度变化也可生效)
#### Does this PR introduce a user-facing change?
```release-note
添加 Tabbar 组件内容超出时的水平方向滚动指示器
```
#### What type of PR is this?
/area console
/kind feature
/milestone 2.12.x
#### What this PR does / why we need it:
在概览页面添加使用 H2 数据库的警告。
<img width="1138" alt="图片" src="https://github.com/halo-dev/halo/assets/21301288/d2ecee4a-c7f4-4b97-a721-11a697606579">
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/5047
#### Special notes for your reviewer:
需要测试使用 H2 数据库运行 Halo,进入概览页面,观察是否有提示。
#### Does this PR introduce a user-facing change?
```release-note
在 Console 的概览页面添加使用 H2 数据库的警告。
```
#### What type of PR is this?
/kind bug
#### What this PR does / why we need it:
Fix the issue of always displaying Unbind in the login method on the user profile page.
#### Which issue(s) this PR fixes:
Fixes#5048
#### Special notes for your reviewer:
@JohnNiang 's help.
#### Does this PR introduce a user-facing change?
```release-note
修复个人中心用户登录方式仅显示解绑问题
```
#### What type of PR is this?
/area console
#### What this PR does / why we need it:
storybook-static 文件夹为 Storybook 的构建目录,此 PR 将此文件夹添加到 .gitignore
#### Does this PR introduce a user-facing change?
```release-note
None
```
<!-- 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?
<!--
添加其中一个类别:
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
-->
/kind feature
/kind api-change
#### What this PR does / why we need it:
add getParentByName method to CategoryFinder interface
#### 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 #
#### Special notes for your reviewer:
${categoryFinder.getParentByName(anyChild.metadata.name)}
#### 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
```
#### What type of PR is this?
/kind improvement
/area core
#### What this PR does / why we need it:
Prior to this proposal, we encountered an error requesting any page before Halo is in ready state. That is because the timing of schemes initialization is incorrect.
The current proposal is to advance schemes initialization before refreshing application and removes `SchemeInitializedEvent` because it cannot be listened by other beans.
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/4946
#### Special notes for your reviewer:
#### Does this PR introduce a user-facing change?
```release-note
修复 Halo 还未处于准备就绪时访问页面或接口出现“Scheme not found”错误的问题
```
**What this PR does / why we need it:**
This PR resolves the reported bug in issue #5001,
**Which issue(s) this PR fixes:**
Fixes [#5001](https://github.com/halo-dev/halo/issues/5001)
```release-note
修复 labelSelector 单字符值查询无效的问题
```
#### What type of PR is this?
/kind bug
/area console
/milestone 2.12.x
#### What this PR does / why we need it:
在 #4975 中,使用 `decorations` 重写了 heading,但由于 `decorations` 只会给 nodeview 增加 id,因此会导致 render 后的 html 中不存在 id。
默认编辑器 heading 渲染时,自动增加 id。
#### How to test it?
使用默认编辑器编辑时,增加 Heading。保存后查看主题端对应的 heading 是否存在 id。
#### Which issue(s) this PR fixes:
Fixes#4994
#### Does this PR introduce a user-facing change?
```release-note
解决渲染后的 Heading 中不存在 id 的问题。
```
#### What type of PR is this?
/kind feature
/area console
/milestone 2.8.x
#### What this PR does / why we need it:
Console Components使用StoryBook代替Histories
#### Which issue(s) this PR fixes:
Fixes#4117
#### Special notes for your reviewer:
1. 移动到 console/packages/components 目录。
2. pnpm storybook
#### Does this PR introduce a user-facing change?
```release-note
使用 Storybook 重构 `@halo-dev/components` 文档。
```
<!-- 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 editor
<!--
添加其中一个类别:
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:
修复#4985 中调整图片大小时的高度变化bug
#### 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#4985
#### Special notes for your reviewer:
似乎是因为横纵比aspectRatio在调整大小的doDrag函数中被动态的更新数值,导致依赖aspectRatio来计算的高度也会出现问题。直接把aspectRatio移动到函数外,只在挂载后更新一次值即可解决。
#### 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
这会修复当前console的editor中图片比例拉伸的bug
```
#### What type of PR is this?
/kind cleanup
/area core
/milestone 2.12.x
#### What this PR does / why we need it:
Upgrade to SpringDoc 2.3.0. See https://github.com/springdoc/springdoc-openapi/releases/tag/v2.3.0 for more.
#### Does this PR introduce a user-facing change?
```release-note
升级 SpringDoc 至 2.3.0
```
#### What type of PR is this?
/kind bug
#### What this PR does / why we need it:
This will resolve the error log output when running dev environment of Console
#### Which issue(s) this PR fixes:
Fixes#4963
#### Special notes for your reviewer:
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/kind bug
/area console
/milestone 2.12.x
#### What this PR does / why we need it:
修复在默认编辑器中无法使用拼音输入法输入标题的问题,此问题由 https://github.com/halo-dev/halo/pull/4909 引发。
#### Which issue(s) this PR fixes:
Fixes#4970
#### Special notes for your reviewer:
在编辑器中,使用拼音输入法输入标题(heading),观察是否可以正常输入。
#### Does this PR introduce a user-facing change?
```release-note
修复在默认编辑器中无法使用拼音输入法输入标题的问题。
```
#### What type of PR is this?
/kind cleanup
/area core
#### What this PR does / why we need it:
Bump versions to 2.12.0-SNAPSHOT for next development.
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/kind cleanup
/area core
/milestone 2.11.0
#### What this PR does / why we need it:
This PR adds role templates for posts in user center for recreating more flexible roles. Related to <https://github.com/halo-dev/halo/pull/4866>.
#### 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.11.x
#### What this PR does / why we need it:
新增使用邮箱地址找回密码功能
#### Which issue(s) this PR fixes:
Fixes#4940
#### Does this PR introduce a user-facing change?
```release-note
新增使用邮箱地址找回密码功能
```
#### What type of PR is this?
/area core
/kind improvement
/milestone 2.11.x
#### What this PR does / why we need it:
优化个人中心相关的角色模板:
1. 暂时使用简体中文描述,等待 https://github.com/halo-dev/halo/issues/3573 获得支持。
2. 移除未使用的 post-attachment-viewer
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/area console
/kind bug
/milestone 2.11.0
#### 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?
/area console
/kind feature
/milestone 2.11.x
#### What this PR does / why we need it:
支持为自定义角色配置 **禁止访问 Console** 的选项。
#### Special notes for your reviewer:
测试方式:
1. 创建一个新角色,勾选禁止访问 Console 的选项,并赋予给某个用户。
2. 登录之后,尝试访问 /console 观察是否能够正常访问。
3. 检查个人中心左下角是否有进入 Console 的按钮。
4. 测试其他未设置这个选项的角色是否正常。
#### Does this PR introduce a user-facing change?
```release-note
支持为自定义角色配置 **禁止访问 Console** 的选项。
```
#### What type of PR is this?
/area console
/kind improvement
/milestone 2.11.x
#### What this PR does / why we need it:
完善遗漏的编辑器上传图片的 UI 权限控制,以及部分 i18n。
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/area core
/milestone 2.11.0
#### What this PR does / why we need it:
更新默认主题至 https://github.com/halo-dev/theme-earth/releases/tag/v1.7.1
#### Does this PR introduce a user-facing change?
```release-note
更新默认主题至 1.7.1
```
#### What type of PR is this?
/kind bug
/area console
/milestone 2.11.0
#### What this PR does / why we need it:
为 repeater 中的 addButton 点击事件增加校验 disabled 属性。
#### How to test it?
在 safari 浏览器下测试具有 max repeater 的组件,当其 addButton 按钮变灰之后继续点击。查看是否不再添加新的项。
#### Which issue(s) this PR fixes:
Fixes#4948
#### Does this PR introduce a user-facing change?
```release-note
修复 safari 浏览器下,repeater 的 max 属性无效的问题
```