Commit Graph

5645 Commits (87cb00a2f16a5f132beb660c96bb2b5f99dc683f)

Author SHA1 Message Date
Ryan Wang 87cb00a2f1
Refactor user batch enable/disable logic and update i18n (#7647) 2025-07-31 22:04:50 +08:00
Ryan Wang 4119e36cd8
chore: update Vite, Vitest, and related dependencies (#7646)
#### What type of PR is this?

/area ui

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

Bump vite related dependencies

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

```release-note
None
```
2025-07-31 03:32:54 +00:00
John Niang 6f6dbb8cc1
Fix the problem that notification might not work anymore (#7643)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.21.x

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

This PR sets timeout on notification trigger to make sure the procedure won't getting stuck forever.

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

```release-note
修复运行过程中通知器可能失效的问题
```
2025-07-29 06:51:51 +00:00
John Niang ae9dd6f3d3
Fix the problem that synchronizer might be started multiple times (#7642)
#### 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 problem of starting synchronizer multiple times while configuring multiple workers.

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

```release-note
None
```
2025-07-29 06:49:50 +00:00
John Niang 177cfcc69c
Upgrade to Spring Boot 3.5.4 (#7640)
#### 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 to Spring Boot [3.5.4](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.4).

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

```release-note
升级依赖 Spring Boot 至 3.5.4
```
2025-07-28 02:35:47 +00:00
Ryan Wang 2cf0d6853a
feat: add slug existence check when creating posts (#7617)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

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

This PR adds frontend support for checking whether an slug already exists when creating posts.

Note:

1. The current implementation isn’t perfect, some actions (like clicking the “Publish” button) don’t check for duplicate slug yet.
2. Slug checking in the user center might not be accurate, since it may not have permission to query all posts.

<img width="695" alt="image" src="https://github.com/user-attachments/assets/baa37a82-49c2-43be-a4d8-0e0f22a9d73b" />

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

Fixes https://github.com/halo-dev/halo/issues/7615
Fixes https://github.com/halo-dev/halo/issues/3332

#### Special notes for your reviewer:

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

```release-note
创建文章时支持检查别名是否重复
```
2025-07-27 05:19:17 +00:00
Ryan Wang cc3b3323c7
feat: add slug existence check when creating categories and tags (#7616)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

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

This PR adds frontend support for checking if an slug already exists when creating post categories and tags.

<img width="701" alt="image" src="https://github.com/user-attachments/assets/050c2fc3-b82c-42f1-b58e-cf12c6852959" />

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

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

#### Special notes for your reviewer:

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

```release-note
创建文章分类和标签时支持检查别名是否已存在
```
2025-07-27 05:17:16 +00:00
Ryan Wang 395399f078
feat: add thumbnail records modal (#7630)
#### What type of PR is this?

/area ui
/kind feature
/milestone 2.21.x

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

Add thumbnail records viewing feature. The main goal is to keep track of failed thumbnail generations, making it easier to check if thumbnails were generated correctly and retry if needed.

<img width="1009" height="859" alt="image" src="https://github.com/user-attachments/assets/d968e416-0b88-45bf-a554-a0c1abcf97a0" />
<img width="1014" height="952" alt="image" src="https://github.com/user-attachments/assets/c5d1a11b-7acc-4ab5-a2da-cf9467cb6b70" />

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

Fixes #

#### Special notes for your reviewer:

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

```release-note
支持查看附件缩略图记录
```
2025-07-22 13:54:18 +00:00
Ryan Wang e737d8b0f7
chore: bump vite(rolldown) version to 7.0.10 (#7635)
#### What type of PR is this?

/area ui
/milestone 2.21.x

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

Bump rolldown-vite version to 7.0.10

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

```release-note
None
```
2025-07-22 12:50:19 +00:00
Ryan Wang 471195d6b0
refactor: add chunked execution mechanism for notification batch deletions (#7634)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

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

Use `Promise.all` to execute part of the batch deletion logic of the notification in chunks to optimize the execution performance.

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

Fixes #

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

```release-note
优化通知批量删除的执行性能
```
2025-07-22 12:48:18 +00:00
王炸 5bb7b2826e
Support batch enabling and disabling of users (#7631)
* Support batch enable and disable

* documentation update

* Update ui/src/locales/en.yaml

Co-authored-by: Ryan Wang <i@ryanc.cc>

* Update ui/src/locales/zh-CN.yaml

Co-authored-by: Ryan Wang <i@ryanc.cc>

* Update ui/src/locales/zh-CN.yaml

Co-authored-by: Ryan Wang <i@ryanc.cc>

* Update ui/src/locales/zh-TW.yaml

Co-authored-by: Ryan Wang <i@ryanc.cc>

* Update ui/src/locales/zh-TW.yaml

Co-authored-by: Ryan Wang <i@ryanc.cc>

* batch handling and code reuse

* 1.还原批量删除的分批请求修改
2.使判断当前user启停用状态时条件更加宽松,以解决新增用户后该属性undefined而被过滤的问题。(之前测试时用的数据是之前构建并使用过单独启\禁用的)

---------

Co-authored-by: Ryan Wang <i@ryanc.cc>
2025-07-18 17:32:46 +08:00
ClawCloud-Alan 859b7030c5
Add ClawCloud one-click deployment button to README (#7632)
#### What type of PR is this?

/kind documentation

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

添加 ClawCloud Run 部署按钮,为 Halo 用户提供:

1. **零配置快速体验** - 无需服务器/域名,60秒内启动可用的 Halo 实例
2. **免费体验环境** - 每月免费提供 $5 的账户额度,用户可以持续稳定部署 Halo 博客在 ClawCloud Run 上
3. **原生集成体验** - 自动配置数据库和存储,开箱即用
4. **低门槛验证** - 降低新用户体验成本,促进项目采用率

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

None

#### Special notes for your reviewer:

按钮已添加在部署章节,位于 Gitpod 部署选项之后

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

```release-note
None
```
2025-07-17 09:57:21 +00:00
XiaoyuPeng a8b885709b
Fix typo for UnpublishPost api description (#7628)
Co-authored-by: pengxiaoyu <pengxiaoyu@shengqugames.com>
2025-07-15 11:54:58 +08:00
Ryan Wang 93ec6e686e
chore: simplify ui scripts (#7626)
#### What type of PR is this?

/area ui
/kind cleanup

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

Simplify ui scripts

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

```release-note
None
```
2025-07-14 06:49:52 +00:00
王贺 888043dc43
docs: Add GitCode badge (#7619) 2025-07-07 14:36:13 +08:00
Ryan Wang c8eac104fb
chore: bump halo packages version (#7614)
Signed-off-by: Ryan Wang <i@ryanc.cc>
2025-07-04 17:11:58 +08:00
Takagi 6246da9b85
chore: upgrade tiptap to 2.24.1 (#7613)
#### What type of PR is this?

/kind chore
/area editor

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

升级 tiptap 至 2.24.1

#### Does this PR introduce a user-facing change?
```release-note
升级 tiptap 至 2.24.1
```
2025-07-04 05:03:40 +00:00
Ryan Wang 3dd0d00288
fix: menu and post category dragging issue (#7608)
#### What type of PR is this?

/area ui
/kind bug
/milestone 2.21.x

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

Fix issue where menu items and post categories could not be reordered via drag-and-drop

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

Fixes #7607 

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

```release-note
修复菜单项和文章分类可能出现无法拖动排序的问题
```
2025-07-04 04:39:41 +00:00
Ryan Wang a4a418b22e
feat: add support for remote URL attachment downloads (#7602)
#### What type of PR is this?

/area ui
/kind feature
/milestone 2.21.x

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

Add support for remote URL attachment downloads

<img width="1031" alt="image" src="https://github.com/user-attachments/assets/f85eee2f-a40b-49ff-9ced-31136f59e67c" />

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

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

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

```release-note
支持通过远程地址下载到附件库
```
2025-07-04 04:37:40 +00:00
Golden Supreme Salted Fish 79226998d3
refactor: exclude post preview page from data tracking (#7582)
What type of PR is this?  
/kind bug  
/area core  
/milestone 2.21.x

What this PR does / why we need it:  
Prevents published post view counts from being incorrectly increased when previewing posts in the admin panel.

Previously, the preview mode would load the tracking script, which resulted in inflated view counts. This PR adds a condition to detect preview mode and disables the tracking logic to avoid counting views for unpublished content.

Does this PR introduce user-facing changes?
```release-note
文章预览页面不再统计访问数据
```
2025-07-04 04:33:41 +00:00
Ryan Wang a6322fa023
fix: prevent code input content from being obscured in fullscreen mode (#7599)
#### What type of PR is this?

/area ui
/kind bug
/milestone 2.21.x

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

Prevent code input content from being obscured in fullscreen mode

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

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

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

```release-note
修复代码输入框在全屏时,底部内容被遮挡的问题。
```
2025-07-04 04:31:41 +00:00
Ryan Wang a76e64dcda
refactor: make toolbox button expandable on click in editor (#7598)
#### What type of PR is this?

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

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

Change the editor's toolbox button to expand on click, rather than on hover, to maintain consistency with other toolbar buttons.

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

```release-note
将编辑器的工具箱按钮改为点击展开
```
2025-07-04 04:29:40 +00:00
Ryan Wang 238e5a3a4a
refactor: pass NODE_ENV for vite config in ui plugin bunlder kit (#7595)
#### What type of PR is this?

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

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

Modify the vite configuration in ui-plugin-bunlder-kit to avoid passing the entire process.env to the build process.

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

```release-note
None
```
2025-07-04 04:21:41 +00:00
Takagi 07737f9de0
refactor: optimize indentation behavior (#7600)
#### What type of PR is this?

/area editor
/kind improvement
/milestone 2.21.x

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

Fixes #7492

优化默认编辑器中缩进的逻辑。现在使用 Tab 对文本进行缩进之后,再按 Backspace 会优先回退缩进。
并且原有的文本会直接删除其上一个节点,现在只有块级节点会被直接删除。

before:

![Kapture 2025-06-27 at 17 53 16](https://github.com/user-attachments/assets/9e4831ec-1e83-4d68-8d83-7dba7090b893)

after:

![Kapture 2025-06-27 at 17 57 01](https://github.com/user-attachments/assets/171d5136-5871-4394-ae94-12e159ed861d)


#### How to test it?

测试使用 Backspace 是否符合正常逻辑。

#### Does this PR introduce a user-facing change?
```release-note
优化默认编辑器缩进逻辑
```
2025-06-30 03:05:30 +00:00
Takagi 1ac665f59c
refactor: optimize the drag-and-drop performance (#7601)
#### What type of PR is this?

/kind importment
/area editor
/milestone 2.21.x

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

为默认编辑器拖拽事件增加节流,解决部分由于鼠标移动事件所产生的性能损耗。

#### Does this PR introduce a user-facing change?
```release-note
None
```
2025-06-30 03:03:29 +00:00
Ryan Wang 552eaec40b
fix: bump rolldown vite version to fix css chunk issue (#7606)
#### What type of PR is this?

/kind bug
/area ui
/milestone 2.21.x

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

Bump rolldown-vite to 7.0.3 to fix a styling issue causing the attachment upload component to not load styles properly.

<img width="1234" alt="image" src="https://github.com/user-attachments/assets/ce12e4f1-fa86-4164-b1ce-b279f57407c5" />

Ref https://github.com/halo-sigs/plugin-moments/issues/150#issuecomment-3016260268

#### Special notes for your reviewer:

Need to test whether the attachment upload component works properly in both development and production environments, specifically in the console and UC.

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

```release-note
修复个人中心上传组件无法正常加载样式的问题。
```
2025-06-30 01:15:29 +00:00
Ryan Wang a7b37b0dc0
chore: bump tailwindcss version to 3.4 (#7604)
#### What type of PR is this?

/area ui
/kind cleanup

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

Bump TailwindCSS version to 3.4

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

```release-note
None
```
2025-06-29 02:25:27 +00:00
John Niang b9806bbcb8
Upgrade dependencies (#7596) 2025-06-27 15:45:42 +08:00
Ryan Wang b0bae4996c
chore: bump pnpm version to 10 (#7597)
#### What type of PR is this?

/area ui
/kind cleanup

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

Bump pnpm version to 10

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

```release-note
None 
```
2025-06-27 07:29:24 +00:00
Ryan Wang 3ac09524e0
feat: add details extension for editor (#7594)
#### What type of PR is this?

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

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

Add details supports for editor.

<img width="1021" alt="image" src="https://github.com/user-attachments/assets/63d61c49-e370-4a4a-ba14-865bce9afdbe" />

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

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

#### Special notes for your reviewer:

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

```release-note
为编辑器添加内容折叠功能
```
2025-06-26 13:59:23 +00:00
Ryan Wang 3b1200ff2e
chore: remove unused files (#7592)
#### What type of PR is this?

/area ui
/kind cleanup

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

Remove unused files.

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

```release-note
None
```
2025-06-25 09:51:20 +00:00
Ryan Wang 8e6ef30a0c
chore: bump autoprefixer to latest version (#7591)
#### What type of PR is this?

/area ui
/kind cleanup

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

Bump autoprefixer to latest version to resolve caniuse-lite outdated warn.

<img width="850" alt="image" src="https://github.com/user-attachments/assets/fdddd946-0009-46a1-889e-c5968dae3f9d" />

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

```release-note
None
```
2025-06-25 09:49:21 +00:00
Ryan Wang 5e28c6db0c
chore: update prettier and simplify config (#7589)
#### What type of PR is this?

/area ui
/kind cleanup

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

Upgrade Prettier and related plugins, and simplify Prettier configuration.

Now, formatting for all packages will be managed by Prettier in the project root directory.

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

```release-note
None
```
2025-06-25 09:47:21 +00:00
Ryan Wang 1826c7dcbb
chore: migrate eslint 9 (#7588)
#### What type of PR is this?

/area ui
/kind cleanup

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

Migrate to ESLint 9, use flat config file, and simplify ESLint configuration.

Now, linting for all packages will be managed by the configuration in the project root directory.

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

```release-note
None
```
2025-06-25 00:37:20 +00:00
Ryan Wang 0addf79aec
fix: resolve comment content width issue (#7586)
#### What type of PR is this?

/area ui
/kind bug
/milestone 2.21.x

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

Fix the width issue of comment content, which was affected by https://github.com/halo-dev/halo/pull/7564 and is inconsistent with version 2.20.0

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

```release-note
修复 2.20.1 中评论管理中内容的宽度问题。
```
2025-06-24 15:23:15 +00:00
Ryan Wang 685e4645a9
chore: bump vite version to 7 (#7587)
#### What type of PR is this?

/area ui
/milestone 2.21.x

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

Bump vite version to [7.0.0](https://github.com/vitejs/rolldown-vite/blob/v7.0.0/packages/vite/CHANGELOG.md#700-2025-06-24)

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

```release-note
None
```
2025-06-24 14:01:14 +00:00
Ryan Wang 7b257917bc
chore: use rolldown-vite (#7489)
#### What type of PR is this?

/area ui
/kind improvement

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

Using rolldown-vite to improve the build speed of the UI project, but some features are still not supported and need to wait.

before:

<img width="953" alt="image" src="https://github.com/user-attachments/assets/551b202e-c486-44e9-9737-56de8e2a8ed2" />

after:

<img width="881" alt="image" src="https://github.com/user-attachments/assets/5750d242-27d6-43e6-ab82-0c11644d4b35" />

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

Fixes #

#### Special notes for your reviewer:

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

```release-note
None
```
2025-06-19 16:31:11 +00:00
Ryan Wang d90097a5f9
chore: bump @halo-dev/ui-plugin-bundler-kit version (#7573)
#### What type of PR is this?

/area ui
/milestone 2.21.x

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

Bump @halo-dev/ui-plugin-bundler-kit version to 2.21.1

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

```release-note
None
```
2025-06-19 08:21:00 +00:00
Ryan Wang b602195b11
feat(ui-plugin-bundler-kit): support function-based configuration for env-aware builds (#7572)
#### What type of PR is this?

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

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

rsbuild example:

```ts
export default rsbuildConfig({
  rsbuild: ({ env, envMode }) => {
    console.log(env,envMode);

    return {
      resolve: {
        alias: {
          "@": "./src",
        },
      },
      plugins: [pluginSass()],
    };
  },
});
```

```ts
export default viteConfig({
  vite: ({ mode }) => {
    const env = loadEnv(mode, process.cwd(), '');
    console.log(env);
    return {
      resolve: {
        alias: {
          "@": fileURLToPath(new URL("./src", import.meta.url)),
        },
      },
    };
  },
});
```

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

```release-note
None
```
2025-06-19 08:05:01 +00:00
Ryan Wang 4ca0a09281
refactor: adjust max width of post title field (#7564)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

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

before:

<img width="552" alt="image" src="https://github.com/user-attachments/assets/679a0b38-e215-4fb8-bee6-737504e03a7f" />

after:

<img width="696" alt="image" src="https://github.com/user-attachments/assets/7106c351-97ab-4a3c-978d-cfd9f8c20392" />

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

Fixes #7561 

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

```release-note
调整 Console 文章列表的标题区域最大宽度
```
2025-06-19 08:03:00 +00:00
Ryan Wang 1e5958dd5c
chore: refactor ui plugin bundler kit and support rsbuild (#7568)
#### What type of PR is this?

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

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

This PR adds Rsbuild preset configuration support and refactors the Vite preset configuration approach for `@halo-dev/ui-plugin-bundler-kit`.

- **Added Rsbuild support** - New `rsbuildConfig` function with pre-configured settings for Halo plugin development
- **Refactored Vite configuration** - Improved `viteConfig` function with better preset handling
- **Updated documentation** - Comprehensive README with usage examples and build tool comparison

example:

```typescript
// Vite
import { viteConfig } from "@halo-dev/ui-plugin-bundler-kit";
export default viteConfig({ vite: { /* custom config */ } });

// Rsbuild
import { rsbuildConfig } from "@halo-dev/ui-plugin-bundler-kit";
export default rsbuildConfig({ rsbuild: { /* custom config */ } });
```

real-world example: https://github.com/guqing/plugin-metrics-graph/pull/5

For detailed configuration options and examples, please refer to the updated README.md

⚠️ `HaloUIPluginBundlerKit` function is now deprecated (still functional but marked for removal)

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

Fixes #

#### Special notes for your reviewer:

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

```release-note
重构 `@halo-dev/ui-plugin-bundler-kit`,以预配置的方式为插件提供 Vite 和 Rsbuild 的构建配置。
```
2025-06-18 10:38:57 +00:00
Ryan Wang d5a411eb1f
feat: add cover for deleted post list in console (#7565)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.21.x

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

Add cover field for deleted post list in console.

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

```release-note
None
```
2025-06-17 15:06:55 +00:00
John Niang 7d560186e8
Add support for rewriting URL with trailing slash (#7559) 2025-06-17 11:29:54 +08:00
Ryan Wang 8fd23e2c68
fix: display settings button in Stack widgets (#7563)
#### What type of PR is this?

/area ui
/kind bug
/milestone 2.21.x

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

Fix the issue where widgets in Stack Widgets cannot display the settings button

<img width="813" alt="image" src="https://github.com/user-attachments/assets/15a13703-99f2-49af-aa3e-831f8271c3a2" />

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

Fixes #7562 

#### Special notes for your reviewer:

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

```release-note
修复堆叠部件中的部件可能无法显示设置按钮的问题。
```
2025-06-17 03:22:53 +00:00
Ryan Wang b3ccb4812b
chore: fix incorrect imports (#7558)
#### What type of PR is this?

/area ui
/kind cleanup

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

None

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

```release-note
None
```
2025-06-16 14:26:52 +00:00
Ryan Wang 12ed2d5653
chore: bump preset plugins and themes version (#7555)
Signed-off-by: Ryan Wang <i@ryanc.cc>
2025-06-15 12:03:27 +08:00
Ryan Wang a91d072cdf
feat: make field items of singlePage data list extendable (#7553)
Signed-off-by: Ryan Wang <i@ryanc.cc>
2025-06-15 12:03:07 +08:00
Ryan Wang 1bd6b5530e
feat: add custom file paths options for ui-plugin-bundler-kit (#7552)
#### What type of PR is this?

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

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

Added support for customization options to the HaloUIPluginBundlerKit.

example:

```ts
import { HaloUIPluginBundlerKit } from '@halo-dev/ui-plugin-bundler-kit';

export default {
  plugins: [
    HaloUIPluginBundlerKit({
      outDir: {
        dev: "../custom/dev/path",
        prod: "../custom/prod/path"
      },
      manifestPath: "../custom/plugin.yaml"
    })
  ]
}
```

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

```release-note
`@halo-dev/ui-plugin-bundler-kit` 支持自定义 `outDir` 和 `manifestPath`。
```
2025-06-15 02:00:47 +00:00
Ryan Wang 5ec975e75b
fix: user avatar shadow display issue in Safari browser (#7551)
#### What type of PR is this?

/kind bug
/area ui
/milestone 2.21.x

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

Fix user avatar shadow display issue in Safari browser

before:

<img width="281" alt="image" src="https://github.com/user-attachments/assets/72165f9d-b3c4-4d98-902d-b7558fea8c76" />

after:

<img width="388" alt="image" src="https://github.com/user-attachments/assets/12b4b160-53aa-4f19-a335-1f0a53ae9111" />


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

```release-note
修复用户资料页面头像在 Safari 浏览器下的阴影问题。
```

<!-- Fuck Safari -->
2025-06-13 15:22:44 +00:00
Ryan Wang 15b029af56
feat: add support for copying full path in attachment details (#7550)
#### What type of PR is this?

/area ui
/kind feature
/milestone 2.21.x

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

Add support for copying full path ina attachment details modal.

<img width="1023" alt="image" src="https://github.com/user-attachments/assets/1b337655-e774-4c8a-8a32-3dac83cb77b2" />

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

```release-note
支持在附件详情弹窗中复制完整的附件地址。
```
2025-06-13 15:20:44 +00:00