halo/console/docs/extension-points
Ryan Wang da021658c8
feat: make attachment list item operations extendable (#4689)
#### What type of PR is this?

/area console
/kind feature
/milestone 2.10.x

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

附件管理列表项的操作按钮支持被插件扩展。


<img width="1669" alt="image" src="https://github.com/halo-dev/halo/assets/21301288/be938c07-2976-4e22-9bf3-cdfaf53896e5">


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

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

#### Special notes for your reviewer:

需要测试附件的关于列表的已有功能是否正常。

如果需要测试扩展点是否有效,可以使用此插件测试:[plugin-s3-1.5.0-SNAPSHOT.jar.zip](https://github.com/halo-dev/halo/files/12839986/plugin-s3-1.5.0-SNAPSHOT.jar.zip)

```diff
export default definePlugin({
  components: {},
  routes: [],
  extensionPoints: {
    "plugin:self:tabs:create": (): PluginTab[] => {
      return [
        {
          id: "s3-link",
          label: "关联S3文件",
          component: markRaw(HomeView),
          permissions: [],
        },
      ];
    },
+    "attachment:list-item:operation:create": (attachment: Ref<Attachment>) => {
+      return [
+        {
+          priority: 21,
+          component: markRaw(VDropdownDivider),
+        },
+        {
+          priority: 22,
+          component: markRaw(VDropdownItem),
+          props: {
+            type: "danger",
+          },
+          label: "解除 S3 关联",
+          permissions: ["system:attachments:manage"],
+          action: () => {
+            console.log(attachment);
+          },
+        },
+      ];
+    },
  },
});

```

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

```release-note
Console 附件管理列表项的操作按钮支持被插件扩展。
```
2023-10-08 09:58:37 +00:00
..
backup.md Support backup and restore (#4206) 2023-07-24 08:26:16 +00:00
comment-subject-ref.md feat: make comment subject ref provider extensible (#4039) 2023-06-26 04:20:18 +00:00
default-editor–extension.md feat: make default editor extensible (#4090) 2023-06-26 13:33:59 +00:00
editor.md feat: add API to obtain the bundled js file for all enabled plugins (#3444) 2023-08-25 07:28:11 +00:00
entity-listitem-field.md feat: make field items of post data list extendable (#4528) 2023-09-01 03:02:12 +00:00
entity-listitem-operation.md feat: make attachment list item operations extendable (#4689) 2023-10-08 09:58:37 +00:00
plugin-installation-tabs.md Refactor plugin installation modal to support extend (#4461) 2023-08-25 15:28:12 +00:00
plugin-self-tabs.md feat: make plugin tabs extensible (#4041) 2023-07-07 04:38:11 +00:00
theme-list-tabs.md Refactor theme list modal to support extend (#4505) 2023-08-30 04:54:15 +00:00