From 7986c2f36934d848bf95790771d62a95fa2ba387 Mon Sep 17 00:00:00 2001 From: Reynaldi Chernando Date: Thu, 7 Aug 2025 15:02:31 +0700 Subject: [PATCH] Init custom action --- docs/astro.config.mjs | 11 ++++++++++- packages/starlight-contextual-menu/index.d.ts | 8 +++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/docs/astro.config.mjs b/docs/astro.config.mjs index 93f28ba..b9467c0 100644 --- a/docs/astro.config.mjs +++ b/docs/astro.config.mjs @@ -17,7 +17,16 @@ export default defineConfig({ ], plugins: [ starlightContextualMenu({ - actions: ["copy", "view", "chatgpt", "claude"], + actions: [ + "copy", + { + action: () => { + console.log("test"); + }, + label: "console.log", + }, + "copy", + ], }), ], sidebar: [ diff --git a/packages/starlight-contextual-menu/index.d.ts b/packages/starlight-contextual-menu/index.d.ts index 2878640..72bd2da 100644 --- a/packages/starlight-contextual-menu/index.d.ts +++ b/packages/starlight-contextual-menu/index.d.ts @@ -2,8 +2,14 @@ import type { StarlightPlugin } from "@astrojs/starlight/types"; type ContextualMenuActionType = "copy" | "view" | "claude" | "chatgpt"; +interface ContextualMenuActionObject { + label: string; + icon?: string; + action: () => void; +} + export interface StarlightContextualMenuUserConfig { - actions: ContextualMenuActionType[]; + actions: (ContextualMenuActionType | ContextualMenuActionObject)[]; } export default function starlightContextualMenu(