#### 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?
/kind feature
/area ui
/milestone 2.17.x
#### What this PR does / why we need it:
为主题增加导入及导出配置的功能。
<img width="1666" alt="image" src="https://github.com/halo-dev/halo/assets/31335418/3574b33e-0293-427c-9036-5d82948aa7f2">
#### How to test it?
测试主题导入及导出功能是否正常可用。
测试当前主题下的不同版本导入导出后数据是否正常。
测试在当前主题下使用其他主题导出的配置是否会报错。
#### Which issue(s) this PR fixes:
Fixes#1073
#### 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:
移除 UI 项目中不必要的环境变量配置。
1. VITE_API_URL:当前 Console 不会考虑独立部署,并且在开发环境是后端 Proxy 的 Console 请求,所以此变量没有任何意义。
2. VITE_BASE_URL:无意义,当前不考虑修改。
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### What type of PR is this?
/area ui
/kind feature
/milestone 2.16.x
#### What this PR does / why we need it:
在插件数据管理列表页面路由中记录查询条件,可以保证在刷新页面或者切换路由返回时保留之前的查询状态。
<img width="1663" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/2638dfc9-793b-48c6-81dd-f460a6c9214d">
#### 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 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?
/kind improvement
/area core
/area plugin
#### What this PR does / why we need it:
This PR wholly refactors plugin reconciliation to implement dependency mechanism.
Currently,
- If we disable plugin which has dependents, the plugin must wait for dependents to be disabled.
- If we enable plugin which has dependencies , the plugin must wait for dependencies to be enabled.
- If we upgrade plugin which has dependents, the plugin must request dependents to be unloaded. After the plugin is unloaded, the plugin must cancel unload request for dependents.
#### Which issue(s) this PR fixes:
Fixes#5872
#### Special notes for your reviewer:
#### 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
优化和角色相关的对话框显示逻辑,减少不必要的渲染开销和请求。
```
#### 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:
优化和用户管理相关的所有对话框显示逻辑,减少不必要的渲染开销和请求。
#### Special notes for your reviewer:
改动范围如下:
1. 用户密码修改
2. 用户资料修改
3. 用户创建
4. 重新登录
#### 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:
优化页面设置弹窗的显示逻辑,改为在未打开弹窗组件的时候不渲染组件,减少不必要的请求。
#### 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:
升级 Vue 生态的相关依赖,以及修复编译 packages 时的异常日志问题。
#### Does this PR introduce a user-facing change?
```release-note
升级 Vue 生态的相关依赖至最新版本。
```
#### 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?
/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
/milestone 2.16.x
#### What this PR does / why we need it:
优化认证方式的排序并支持拖动
#### Which issue(s) this PR fixes:
Fixes#5813
#### Does this PR introduce a user-facing change?
```release-note
优化认证方式的排序并支持拖动
```
#### What type of PR is this?
/kind feature
/area core
/area theme
/milestone 2.16.x
#### What this PR does / why we need it:
为主题管理增加在线清理缓存功能
#### Which issue(s) this PR fixes:
Fixes#5440
#### Does this PR introduce a user-facing change?
```release-note
为主题管理增加在线清理缓存功能
```
#### 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 bug
/milestone 2.15.0
#### What this PR does / why we need it:
修复插件异常启动时,指示器显示不正确的问题。
Fixes https://github.com/halo-dev/halo/pull/5520
#### Does this PR introduce a user-facing change?
```release-note
None
```
#### 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?
/area core
/area ui
/kind feature
/kind api-change
#### What this PR does / why we need it:
为主题和插件的定义文件添加 issues 字段,用于填写问题反馈地址。方便使用者可以清楚的知道可以在哪里反馈问题。
<img width="767" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/b7dfce3f-8362-4964-82b8-cc018b85bb82">
#### Which issue(s) this PR fixes:
Fixes#5715
#### Does this PR introduce a user-facing change?
```release-note
为主题和插件的定义文件添加问题反馈(issues)字段
```
#### What type of PR is this?
/area ui
/kind improvement
/milestone 2.15.x
#### What this PR does / why we need it:
在个人中心的个人资料页面添加邮箱已验证的标识,方便用户知晓。
<img width="596" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/77cd83e1-cefe-453c-ad12-689ee893c8ee">
#### Does this PR introduce a user-facing change?
```release-note
在个人中心的个人资料页面添加邮箱已验证的标识。
```
* feat: add original password verification for password change
* chore: update properties file
* Refine ui
Signed-off-by: Ryan Wang <i@ryanc.cc>
* chore: update properties file
* fix: confirm assword
* fix: unit test case
* feat: add new api for change own password
* chore: regenerate api client
* chore: adapt to UI
* chore: enusre old password not blank
---------
Signed-off-by: Ryan Wang <i@ryanc.cc>
Co-authored-by: Ryan Wang <i@ryanc.cc>
#### What type of PR is this?
/kind improvement
/area ui
#### Which issue(s) this PR fixes:
Fixes#5677
#### 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:
限定文章或页面中的发布日期中的年份为四位数,方便用户输入四位年份之后自定跳转至月份。
#### 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
简化部分确认框的标题。
```