#### What type of PR is this?
/area ui
/kind improvement
/milestone 2.17.x
#### What this PR does / why we need it:
使用新的 [patch](https://github.com/halo-dev/halo/pull/6031) 接口重构附件的移动功能。
#### Special notes for your reviewer:
1. 测试附件移动至其他分组的功能是否正常。
2. 测试删除附件分组,选择 **删除并将附件移动至未分组** 选项,观察删除分组之后,其中的附件是否已经移动到未分组。
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/area ui
/kind improvement
/milestone 2.17.x
#### What this PR does / why we need it:
使用新的 patch 接口重构评论相关的逻辑。
#### Special notes for your reviewer:
需要测试:
1. 审核评论和回复功能。
2. 批量审核评论和回复功能。
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/area ui
/kind bug
/milestone 2.17.x
#### What this PR does / why we need it:
修复首次上传附件时,没有默认选择第一个存储策略的问题。
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/6094
#### Does this PR introduce a user-facing change?
```release-note
修复首次上传附件时,没有默认选择第一个存储策略的问题。
```
#### What type of PR is this?
/area ui
/kind bug
/milestone 2.17.x
#### What this PR does / why we need it:
修复新建文章时,没有自动选择之前所选编辑器的问题。
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/6091
#### Special notes for your reviewer:
#### Does this PR introduce a user-facing change?
```release-note
修复新建文章时,没有自动选择之前所选编辑器的问题。
```
#### What type of PR is this?
/kind feature
/area core
/milestone 2.17.x
#### What this PR does / why we need it:
此次变更为文章分类引入了一个新的 `preventParentPostCascadeQuery` 布尔属性,用于控制分类及其子分类下的文章显示方式。具体变更包括:
- 在分类结构中增加了 `preventParentPostCascadeQuery` 属性。
- 当分类的 `preventParentPostCascadeQuery` 属性设置为 `true` 时,该分类的文章数量不会汇总到父分类中。
- 更新了树结构遍历逻辑,以支持对 `preventParentPostCascadeQuery` 属性的处理。
- 确保独立分类中的文章显示受控,不向上级分类进行聚合。
- 增加了相应的测试用例,以验证在不同树结构中 `preventParentPostCascadeQuery` 属性的功能性。
#### Which issue(s) this PR fixes:
Fixes#5663Fixes#4923
Fixes https://github.com/halo-dev/halo/issues/3418
#### Does this PR introduce a user-facing change?
```release-note
新增独立分类选项用于控制关联的子分类下的文章显示以提供更灵活的内容管理方式
```
#### What type of PR is this?
/kind feature
/area core
/milestone 2.17.x
#### What this PR does / why we need it:
支持在分类上为关联的文章统一设置渲染模板
现在文章的模板生效顺序为:
1. 文章关联的分类上设置的文章模板,如果有多个则选择第一个
2. 文章上设置的自定义模板
3. 文章的默认模板
#### Which issue(s) this PR fixes:
Fixes#6101
#### Does this PR introduce a user-facing change?
```release-note
支持在分类上为关联的文章统一设置渲染模板
```
#### What type of PR is this?
/area ui
/kind improvement
/milestone 2.16.x
#### What this PR does / why we need it:
重构文章的发布逻辑,以下是主要改动:
1. 如果文章未发布,点击文章设置的发布按钮时,会先保存文章。
2. 在文章列表的操作菜单中添加发布 / 取消发布的选项。
3. 重构文章设置中,发布 / 取消发布按钮的显示条件。
4. 优化文章设置对话框的显示条件,减少不必要的渲染开销和请求。
#### Special notes for your reviewer:
需要测试:
1. 文章正常新建和发布的逻辑。
2. 文章设置未来时间的发布逻辑。
3. 取消定时发布和已发布文章的逻辑。
#### Does this PR introduce a user-facing change?
```release-note
优化 Console 文章管理中的文章发布逻辑。
```
#### What type of PR is this?
/area ui
/kind improvement
/milestone 2.16.x
#### What this PR does / why we need it:
为更新评论的最后读取时间添加重试机制。Ref https://github.com/halo-dev/halo/pull/5903#issuecomment-2106855779
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/area ui
/kind bug
/milestone 2.16.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?
/area ui
/kind bug
/milestone 2.16.x
#### What this PR does / why we need it:
修复在文章版本历史内容预览中代码块颜色显示异常的问题。
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/5845
#### Does this PR introduce a user-facing change?
```release-note
修复在文章版本历史内容预览中代码块颜色显示异常的问题。
```
#### What type of PR is this?
/kind feature
/area core
/milestone 2.16.x
#### What this PR does / why we need it:
新增文章定时发布功能
#### Which issue(s) this PR fixes:
Fixes#4602
#### Does this PR introduce a user-facing change?
```release-note
新增文章定时发布功能
```
#### What type of PR is this?
/area ui
/kind cleanup
/milestone 2.16.x
#### What this PR does / why we need it:
规范 api client 的方法名,之前生成的 api client 的方法名没有完全遵循驼峰命名。
#### Which issue(s) this PR fixes:
Close https://github.com/halo-dev/halo/issues/5716
#### Special notes for your reviewer:
CI 通过即可。
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/area ui
/kind improvement
/milestone 2.16.x
#### What this PR does / why we need it:
优化页面设置弹窗的显示逻辑,改为在未打开弹窗组件的时候不渲染组件,减少不必要的请求。
#### Which issue(s) this PR fixes:
#### Does this PR introduce a user-facing change?
```release-note
优化页面设置弹窗的显示逻辑,减少不必要的请求。
```
#### What type of PR is this?
/area ui
/kind improvement
/milestone 2.16.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?
/area ui
/kind improvement
/milestone 2.16.x
#### What this PR does / why we need it:
优化附件管理的相关代码。
1. 优化附件管理相关的对话框组件,减少重复和不必要的请求。
2. 简化附件存储策略编辑组件的逻辑。
#### Special notes for your reviewer:
需要测试:
1. 附件上传的相关功能。
2. 附件存储策略的编辑和新建。
3. 附件筛选条件功能。
#### Does this PR introduce a user-facing change?
```release-note
优化附件管理相关代码,减少重复和不必要的请求。
```
#### What type of PR is this?
/area ui
/kind improvement
/milestone 2.16.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?
/area ui
/kind improvement
/milestone 2.16.x
#### What this PR does / why we need it:
优化文章分类管理相关的 UI 代码。
1. 使用 vue-draggable-plus 库代替 vuedraggable 库实现拖拽排序。vue-draggable-plus 是在 https://github.com/halo-dev/halo/pull/5914 中引入,替换的原因是 vuedraggable 库已经不再积极维护。
2. 改进分类编辑表单的逻辑,清理无用代码。
#### Special notes for your reviewer:
需要测试:
1. 测试文章分类拖拽排序功能是否表现正常。
2. 测试新增/编辑文章分类功能是否表现正常。
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/kind feature
/area core
/area ui
#### What this PR does / why we need it:
为 `/apis/api.console.halo.run/v1alpha1/attachments` 接口增加了 `accepts` 可选参数,用于根据附件的 `MediaType` 进行筛选。
为附件库增加通过文件的 MediaType 类型进行筛选的筛选项。
同时支持使用了 `CoreSelectorProvider` 组件的文件选择框的筛选。现在只会显示 `accepts` 所支持的文件。
#### How to test it?
测试 ui 端文件选择框的类型筛选是否正确有效。
测试使用了 `CoreSelectorProvider` 组件的 `accepts` 是否有效。
#### Which issue(s) this PR fixes:
Fixes#5054
#### Does this PR introduce a user-facing change?
```release-note
附件库支持按文件类型进行过滤
```
#### What type of PR is this?
/area ui
/kind feature
/milestone 2.15.x
#### What this PR does / why we need it:
支持清理所有无用的文章历史快照,仅保留已发布、基础版本、正在编辑的版本。
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/5817
#### Special notes for your reviewer:
需要在历史版本页面测试清理功能是否符合预期。
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/kind improvement
/area ui
#### What this PR does / why we need it:
限定文章或页面中的发布日期中的年份为四位数,方便用户输入四位年份之后自定跳转至月份。
#### How to test it?
测试在 `chrome` 上输入四位年份之后,是否会自动跳转至月份。
#### Which issue(s) this PR fixes:
Fixes#5630
#### Does this PR introduce a user-facing change?
```release-note
限定文章或页面中的发布日期中的年份为四位数
```
#### What type of PR is this?
/kind bug
/area ui
/milestone 2.15.x
#### What this PR does / why we need it:
修复由于 modal 延迟 200ms 所导致的数据可能为空的问题。
See #5078
#### How to test it?
反复点击并关闭附件库详情弹窗,查看是否会有空数据的问题
#### Which issue(s) this PR fixes:
Fixes#5689
#### 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:
文章支持根据访问量和评论量排序
#### Which issue(s) this PR fixes:
Fixes#3216
#### Does this PR introduce a user-facing change?
```release-note
文章支持根据访问量和评论量排序
```
#### What type of PR is this?
/kind improvement
/area ui
#### What this PR does / why we need it:
使用分页列表的形式重新展示文章标签页,移除原有的 grid 形式。
#### How to test it?
查看文章标签页面的分页列表功能显示是否正常。
完成增、删、改之后是否能够正常回显。
#### Which issue(s) this PR fixes:
Fixes#5415
#### Does this PR introduce a user-facing change?
```release-note
使用分页列表的形式重构文章标签页 UI
```
#### What type of PR is this?
/area ui
/kind improvement
/milestone 2.14.x
#### What this PR does / why we need it:
简化部分确认框的标题。
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/5592
#### Does this PR introduce a user-facing change?
```release-note
简化部分确认框的标题。
```
#### What type of PR is this?
/area ui
/kind improvement
/milestone 2.14.x
#### What this PR does / why we need it:
编辑文章匹配编辑器类型时,忽略大小写。
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/5597
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/kind bug
/area ui
#### What this PR does / why we need it:
修复当选中首个文章设置时,点击上一个还可以继续修改 `page` 的问题。
#### How to test it?
测试选中首个文章设置之后,点击上一个是否不再修改 `page` 值
#### Which issue(s) this PR fixes:
Fixes#5475
#### Does this PR introduce a user-facing change?
```release-note
修复在文章列表设置中可以无限点击上一个的问题
```
#### What type of PR is this?
/area ui
/kind feature
/milestone 2.14.x
#### What this PR does / why we need it:
为上传附件的组件添加基本的图片编辑功能。
<img width="747" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/6816e045-ae4a-4d26-b3a4-23494fb39d5f">
#### Which issue(s) this PR fixes:
Fixes#5583
#### Does this PR introduce a user-facing change?
```release-note
为上传附件的组件添加基本的图片编辑功能。
```
#### What type of PR is this?
/area ui
/kind bug
/milestone 2.14.x
#### What this PR does / why we need it:
重构文章预览和主题预览的页面加载方式,尝试解决在某些情况下打开预览导致登录 session 失效的问题。
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/4047
#### Special notes for your reviewer:
需要测试:
1. 主题预览中的各个功能是否正常。
2. 文章预览功能是否正常。
#### Does this PR introduce a user-facing change?
```release-note
修复在某些情况下,打开文章预览或主题预览之后导致登录失效的问题。
```
#### What type of PR is this?
/area editor
/area ui
/kind feature
#### What this PR does / why we need it:
为默认编辑器添加标题输入框。
<img width="1665" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/df903e02-76b0-45fe-89d9-6ac81af8f041">
#### Which issue(s) this PR fixes:
Fixes#5427
#### Special notes for your reviewer:
#### Does this PR introduce a user-facing change?
```release-note
为默认编辑器添加标题输入框。
```
#### What type of PR is this?
/kind bug
/area ui
/milestone 2.14.x
#### What this PR does / why we need it:
解决文章、页面中无法手动填写发布日期的问题
#### How to test it?
测试文章设置与页面设置中的发布日期是否能够使用键盘填写。
需要同步测试其他设置项是否正常。
#### Which issue(s) this PR fixes:
Fixes#5389
#### Does this PR introduce a user-facing change?
```release-note
解决文章设置及页面设置中无法手动填写发布日期的问题
```
#### What type of PR is this?
/area ui
/kind feature
/milestone 2.14.0
#### What this PR does / why we need it:
附件管理的排序功能支持按照文件名排序。
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/5028
#### Special notes for your reviewer:
测试方式:
1. 上传若干附件。
2. 测试根据文件名降序/升序功能是否符合预期。
#### Does this PR introduce a user-facing change?
```release-note
附件管理的排序功能支持按照文件名排序。
```
#### What type of PR is this?
/area ui
/kind bug
/milestone 2.14.0
#### What this PR does / why we need it:
为附件分组设置默认排序规则(按照创建时间升序),和 2.13.0 版本之间保持一致。
#### Which issue(s) this PR fixes:
Fixes https://github.com/halo-dev/halo/issues/5429
#### Special notes for your reviewer:
测试方式:
1. 创建若干附件分组。
2. 观察排序是否符合预期。
#### Does this PR introduce a user-facing change?
```release-note
修复附件管理中的分组排序不固定的问题。
```
#### What type of PR is this?
/kind improvement
/area core
/milestone 2.14.x
#### What this PR does / why we need it:
使用索引机制优化评论数据查询以提高效率
how to test it?
- 测试 console 评论列表和筛选条件是否正确
- 测试主题端评论显示是否正确
#### Does this PR introduce a user-facing change?
```release-note
使用索引机制优化评论数据查询以提高效率
```
#### What type of PR is this?
/kind improvement
/area core
/milestone 2.13.x
#### What this PR does / why we need it:
使用索引功能优化附件列表查询
#### Does this PR introduce a user-facing change?
```release-note
使用索引功能优化附件列表查询
```