Commit Graph

5707 Commits (ce2cfba4c6fec04861cc97f03b88bd1ea4d54164)

Author SHA1 Message Date
John Niang ce2cfba4c6
Implement thumbnail generation and add support for image format validation 2025-09-26 00:18:49 +08:00
John Niang 59f06c8e95
Merge remote-tracking branch 'upstream/main' into feat/add-thumbnail-router 2025-09-25 11:42:51 +08:00
John Niang 544cfeaa3b
Merge pull request #7782 from halo-dev/chore/bump-to-version-2.22.0
Bump version to 2.22.0-SNAPSHOT in gradle.properties
2025-09-25 11:34:31 +08:00
John Niang 67e24ae930
Update ESLint command to suppress warnings for ignored files 2025-09-24 19:15:41 +08:00
John Niang 6cc0489763
Bump OpenAPI document version to 2.22.0-SNAPSHOT 2025-09-24 19:13:09 +08:00
John Niang 78a13bc392
Bump version to 2.22.0-SNAPSHOT in gradle.properties 2025-09-24 19:02:54 +08:00
Ryan Wang 0a0e49923a
Merge branch 'main' into feat/add-thumbnail-router 2025-09-24 12:29:59 +08:00
John Niang db00883c3d
Set dynamic branch name for Docker image tags in build.gradle (#7780) 2025-09-24 12:17:33 +08:00
John Niang 8f198d9583
Implement thumbnail link retrieval in attachment handling 2025-09-24 11:06:57 +08:00
John Niang 503e9b8c7f
Add thumbnail generation router for image uploads 2025-09-23 17:06:18 +08:00
John Niang 50405a9409
Upgrade Gradle wrapper to version 9.1.0 (#7776)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.21.x

#### What this PR does / why we need it:

This PR upgrades Gradle to version [9.1.0](https://docs.gradle.org/9.1.0/release-notes.html).

#### Does this PR introduce a user-facing change?

```release-note
升级 Gradle 至 9.1.0
```
2025-09-23 02:46:06 +00:00
Ryan Wang b1127e3c28
Remove vite-plugin-pwa from dev dependencies (#7762) 2025-09-21 21:32:27 +08:00
Ryan Wang 6bc81a9866
Improve navigation logic after publishing content (#7775) 2025-09-20 23:35:36 +08:00
Ryan Wang ba23e6c07b
Improve flex layout for category and menu list items (#7760) 2025-09-20 23:35:17 +08:00
Ryan Wang 8a7805f869
Add loading indicator to DefaultEditor initialization (#7756) 2025-09-20 23:35:01 +08:00
Ryan Wang 83117058bc
Use Gradle for pnpm install in ui packages release workflow (#7753) 2025-09-20 23:34:43 +08:00
Ryan Wang d0f050ff86
Enable auto-height for textarea fields in forms (#7749)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

#### What this PR does / why we need it:

Add auto-height prop to  formkit textarea to support automatic resizing based on content length.

#### Does this PR introduce a user-facing change?

```release-note
Console 端的部分多行文本输入框支持自动高度。
```
2025-09-20 15:16:03 +00:00
John Niang 974c645b4a
Upgrade Spring Boot version to 3.5.6 (#7774)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.21.x

#### What this PR does / why we need it:

This PR upgrades Spring Boot to [3.5.6](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.6).

#### Does this PR introduce a user-facing change?

```release-note
升级 Spring Boot 至 3.5.6
```
2025-09-19 03:20:02 +00:00
John Niang 6ab51fde5e
Merge pull request #7773 from halo-dev/chore/correct-ghcr-ns-nae
Update GitHub Container Registry namespace for Docker image publishing
2025-09-18 23:49:30 +08:00
John Niang f1a2669604
Update GitHub Container Registry namespace for Docker image publishing 2025-09-18 23:23:27 +08:00
John Niang 5633446434
Refactor build tasks to improve UI distribution and cleanup processes (#7768) 2025-09-18 17:49:06 +08:00
John Niang 01304d7fec
Remove Fit2Cloud registry publishing due to persistent 403 errors (#7767) 2025-09-18 17:01:13 +08:00
John Niang 3626364163
Merge pull request #7765 from halo-dev/bug/invalid-f2c-ns-name
Update Docker image name and tags for Fit2Cloud registry
2025-09-17 00:03:17 +08:00
John Niang ce7c92171d
Update build-and-publish-container-image-with-buildpacks job conditions 2025-09-17 00:02:42 +08:00
John Niang 35504b4e5a
Update Docker image name and tags for Fit2Cloud registry 2025-09-16 23:59:04 +08:00
John Niang 8e95f07c49
Merge pull request #7761 from halo-dev/chore/build-with-buildpacks
Add build and publish tasks for Docker images using Buildpacks
2025-09-16 20:37:23 +08:00
John Niang cd2dac7f01
Add build and publish tasks for Docker images using Buildpacks 2025-09-16 20:06:44 +08:00
John Niang 98f655c018
Upgrade Lucene to version 10.3.0 (#7752)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.21.x

#### What this PR does / why we need it:

This PR upgrads Lucene to version [10.3.0](https://github.com/apache/lucene/releases/tag/releases%2Flucene%2F10.3.0).

#### Does this PR introduce a user-facing change?

```release-note
升级 Lucene 至 10.3.0
```
2025-09-15 05:00:40 +00:00
John Niang 010bb8a569
Handle ghost users in user retrieval logic (#7745)
#### What type of PR is this?

/kind bug
/area core
/milestone 2.21.x

#### What this PR does / why we need it:

This PR fixes the always show of ghost user in post contributors.

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/7710

#### Does this PR introduce a user-facing change?

```release-note
修复文章贡献者中始终显示已删除用户的问题
```
2025-09-10 06:46:52 +00:00
John Niang 291d8dafb2
Restore context ClassLoader management during plugin lifecycle (#7746)
#### What type of PR is this?

/kind improvement
/area plugin
/milestone 2.21.x

#### What this PR does / why we need it:

This PR restores context ClassLoader mangement during plugin lifecycle to prevent resource leak.

Meanwhile, it also fixes Class initialization error when starting plugins.

Superseds https://github.com/halo-dev/halo/pull/7725

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-09-10 06:44:51 +00:00
Ryan Wang b822de2d78
Add ui packages publish workflow (#7743) 2025-09-09 18:13:33 +08:00
John Niang 6992f1788c
Add context propagation dependency to build.gradle (#7744)
#### What type of PR is this?

/kind improvement
/area core
/area plugin
/milestone 2.21.x

#### What this PR does / why we need it:

This PR adds `io.micrometer:context-propagation` dependency to assist with context propagation across different types of context mechanisms, such as ThreadLocal, Reactor Context, and others.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-09-09 08:54:44 +00:00
Ryan Wang bdbbbdf3af
Disable persistence of selected group and policy in attachment upload modal (#7738)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

#### What this PR does / why we need it:

In the attachment upload modal, we previously persisted the user’s selected storage policy and group to make future uploads more convenient. However, this overlooked a common usage scenario—users often apply filters for storage policy and group in the attachment list before uploading. Persisting those previous selections could then conflict with the current filters and cause confusion. This PR removes the persistence of selected group and storage policy to avoid such mismatches.

#### Which issue(s) this PR fixes:

Fixes #7713 

#### Does this PR introduce a user-facing change?

```release-note
在附件上传组件中取消所选分组和存储策略的持久化,默认选择为附件列表筛选条件相同的策略和分组。
```
2025-09-06 02:09:38 +00:00
Takagi e8d547e506
fix: resolve the pagination issue of the select formkit component using remote data (#7726)
#### What type of PR is this?

/kind bug
/area ui

#### What this PR does / why we need it:

目前  Select 组件使用远程接口请求数据时,如果存在分页的数据则分页请求可以超过分页数量。
此 PR 限制了分页请求的次数。

#### Does this PR introduce a user-facing change?
```release-note
解决使用 Select 组件远程请求数据时的分页问题
```
2025-09-02 07:03:00 +00:00
John Niang 2a37366c92
Set context ClassLoader to plugin ClassLoader for correct class loading operations (#7725)
#### What type of PR is this?

/kind bug
/area plugin
/milestone 2.21.x

#### What this PR does / why we need it:

This PR fixes the problem that loading resources from class path during static initialization doesn't work.

#### Does this PR introduce a user-facing change?

```release-note
修复部分场景下无法正常启动插件的问题
```
2025-08-29 03:30:15 +00:00
John Niang a32cd4b551
Upgrade to Spring Boot 3.5.5 (#7715)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.21.x

#### What this PR does / why we need it:

This PR is a regular update for Spring Boot. See https://github.com/spring-projects/spring-boot/releases/tag/v3.5.5 for more.

#### Does this PR introduce a user-facing change?

```release-note
升级依赖 Spring Boot 至 3.5.5
```
2025-08-29 03:28:14 +00:00
John Niang 956e23dd7f
Allow deserializing ListResult (#7711)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.21.x

#### What this PR does / why we need it:

This PR allows ListResult to be deserialized with JSON. So we can resolve ListResult response of APIs correctly.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-08-21 10:15:48 +00:00
Ryan Wang 4ac80f5eb3
Update comment widget plugin to v3.0.0 (#7705) 2025-08-19 15:32:02 +08:00
Ryan Wang e2bb5ada37
Bump rolldown-vite to 7.1.4 (#7704)
#### What type of PR is this?

/area ui
/milestone 2.21.x

#### What this PR does / why we need it:

Bump rolldown-vite to [7.1.4](https://github.com/vitejs/rolldown-vite/releases/tag/v7.1.4)

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-08-19 07:05:15 +00:00
Ryan Wang 568ebf5b70
Fix pending comments calculation in post list item (#7703)
#### What type of PR is this?

/area ui
/kind bug
/milestone 2.21.x

#### What this PR does / why we need it:

Fix pending comments calculation in post list item

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-08-19 07:03:16 +00:00
Ryan Wang 157a8eb42d
Support async route permissions in guards (#7700)
#### What type of PR is this?

/area ui
/kind bug
/milestone 2.21.x

#### What this PR does / why we need it:

Fix routing navigation issue with async route permission functions

Caused by https://github.com/halo-dev/halo/pull/7688

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-08-19 07:01:15 +00:00
Ryan Wang 3487132154
Add support for hidden comments (#7679)
* Add 'hidden' field to comment and reply requests

Signed-off-by: Ryan Wang <i@ryanc.cc>

* Add support for filtering comments with hidden

* Specify hidden=false and approved=true for anonymous users

* Set default hidden flag only if null in comments

* Add 'private reply' option to comment modals

* Add private tag for hidden comments and replies

* Allow hiding comments only

* Enhance comment visibility logic to allow owners to view hidden comments

* Remove hidden input for reply form

Signed-off-by: Ryan Wang <i@ryanc.cc>

* Refine i18n

Signed-off-by: Ryan Wang <i@ryanc.cc>

---------

Signed-off-by: Ryan Wang <i@ryanc.cc>
Co-authored-by: John Niang <johnniang@foxmail.com>
2025-08-19 14:47:37 +08:00
Ryan Wang 3f5b69d5d0
Support async permission checks in route menu generator (#7688)
#### What type of PR is this?

/area ui
/kind feature
/milestone 2.21.x

#### What this PR does / why we need it:

Support async permission checks in route menu generator

example:

```ts
{
  path: "",
  name: "Foo",
  component: Foo,
  meta: {
    title: "Foo",
    searchable: true,
    permissions: async () => {
      const { data } = await checkPermission();
      return data;
    },
    menu: {
      name: "Foo",
      group: "content",
      icon: markRaw(MingcuteBook2Line),
      priority: 4,
      mobile: false,
    },
  },
}
```

#### Which issue(s) this PR fixes:

Fixes #

#### Special notes for your reviewer:

#### Does this PR introduce a user-facing change?

```release-note
开发者相关:路由的权限检查支持函数
```
2025-08-17 15:43:10 +00:00
Ryan Wang e6f8783389
Fix role dependency handling in role editing form (#7684)
#### What type of PR is this?

/area ui
/kind bug
/milestone 2.21.x

#### What this PR does / why we need it:

See #7676 

#### Which issue(s) this PR fixes:

Fixes #7676 

#### Special notes for your reviewer:

#### Does this PR introduce a user-facing change?

```release-note
修复角色修改表单中,所选权限可能出现不完整的问题。
```
2025-08-17 15:41:11 +00:00
Ryan Wang 3345ccb035
Merge pull request #7695 from ruibaby/feat/comment-a-target
Allow target attribute on <a> tags in comment sanitizer
2025-08-17 23:38:00 +08:00
Ryan Wang 3105c53b6f
Add external asset transfer for editor attachments (#7687)
#### What type of PR is this?

/area ui
/area editor
/kind feature
/milestone 2.21.x

#### What this PR does / why we need it:

Support transfer external assets in the editor to the attachment library. Currently, it supports individual images, videos, and audio files.

<img width="845" height="167" alt="image" src="https://github.com/user-attachments/assets/930c6207-60f5-491a-afbd-c3f75b0d76a6" />

in progress:

- [ ] Batch transferring of all external assets.

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/2335

#### Special notes for your reviewer:

#### Does this PR introduce a user-facing change?

```release-note
支持转存编辑器中的外部资源到附件库
```
2025-08-17 14:43:09 +00:00
Ryan Wang 7d51f38d96
Include subjectRefKey in comments queryKey (#7685) 2025-08-15 22:55:40 +08:00
Takagi da10ed4cbd
fix: pasting excel text will turn it into an image (#7689)
#### What type of PR is this?

/kind bug
/area editor

#### What this PR does / why we need it:

将粘贴图片上传的选项,改为仅支持单个文件,此举可以解决会将 excel 转为图片的问题。

#### How to test it?

在文章中粘贴 excel 表格中的内容,查看是否转为表格。

#### Does this PR introduce a user-facing change?
```release-note
解决将粘贴 Excel 内容会变为图片的问题。
```
2025-08-15 09:51:02 +00:00
Ryan Wang f5af5a1550
Add subject-based comment list modal (#7681) 2025-08-13 15:43:50 +08:00
Ryan Wang 2bcfbbc371
Optimize comment notification template to support rich text rendering (#7683)
#### What type of PR is this?

/area core
/area ui
/milestone 2.21.x
/kind feature

#### What this PR does / why we need it:

Optimize comment notification template to support rich text rendering

#### Does this PR introduce a user-facing change?

```release-note
None
```
2025-08-13 07:32:50 +00:00