diff --git a/.github/workflows/greetings.yml b/.github/workflows/greetings.yml index e08d2c46..65a767b8 100644 --- a/.github/workflows/greetings.yml +++ b/.github/workflows/greetings.yml @@ -2,6 +2,10 @@ name: Greetings on: [pull_request_target, issues] +# 顶层设置最小权限,推荐 contents: read +permissions: + contents: read + jobs: greeting: # 跳过 Renovate PR diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9f18d4b5..f51970bb 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -5,6 +5,10 @@ on: tags: - 'v*' +# 确保默认情况下所有 job 都只有只读权限,只有需要写权限的 job(比如发布 release 的 job)才会单独提升权限,其他 job 依然保持最小权限,最大程度保护仓库安全 +permissions: + contents: read + concurrency: group: release-${{ github.ref }} cancel-in-progress: true # 如果有新的发布任务,取消正在进行的任务 diff --git a/src/components/common/InfoPopover.vue b/src/components/common/InfoPopover.vue index dd6dd73b..095f6ed5 100644 --- a/src/components/common/InfoPopover.vue +++ b/src/components/common/InfoPopover.vue @@ -213,13 +213,17 @@ const addFriend = async () => { globalStore.addFriendModalInfo.uid = uid } -// 注入 enableAllScroll 方法 -const { enableScroll } = inject('popoverControls', { enableScroll: () => {} }) +let enableScroll = () => {} const handleOpenMsgSession = async (uid: string) => { enableScroll() // 在打开新会话前恢复所有滚动 await openMsgSession(uid) } + +onMounted(() => { + // 注入 enableAllScroll 方法 + enableScroll.bind(inject('popoverControls', { enableScroll })) +})