Skip to main content
Glama
AssetFuncAttachDropdown.vue1.38 kB
<template> <IconButton iconTone="action" icon="plus" size="sm" :requestStatus="requestStatus" :selected="menuRef?.isOpen" tooltip="Add Function" loadingTooltip="Adding function..." @click="onClick" > <DropdownMenu ref="menuRef" forceAlignRight> <DropdownMenuItem icon="plus" :disabled="assetStore.selectedSchemaVariant?.isLocked" @select="emit('selectedAttachType', 'new')" > New function </DropdownMenuItem> <DropdownMenuItem icon="link" :disabled="assetStore.selectedSchemaVariant?.isLocked" @select="emit('selectedAttachType', 'existing')" > Existing </DropdownMenuItem> </DropdownMenu> </IconButton> </template> <script setup lang="ts"> import { PropType, ref } from "vue"; import { ApiRequestStatus } from "@si/vue-lib/pinia"; import { DropdownMenu, DropdownMenuItem, IconButton, } from "@si/vue-lib/design-system"; import { useAssetStore } from "@/store/asset.store"; const assetStore = useAssetStore(); defineProps({ requestStatus: { type: Object as PropType<ApiRequestStatus> }, }); const emit = defineEmits<{ (e: "selectedAttachType", type: "new" | "existing"): void; }>(); const menuRef = ref<InstanceType<typeof DropdownMenu>>(); const onClick = (e: MouseEvent) => { menuRef.value?.open(e); }; </script>

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/systeminit/si'

If you have feedback or need assistance with the MCP directory API, please join our Discord server