import React from 'react'; import { Icon, PinnedPluginListProvider, SchemaComponentOptions, useApp, useRequest } from '@tachybase/client'; import { Button, Dropdown } from 'antd'; import { Link } from 'react-router-dom'; import { AppNameInput } from './AppNameInput'; import { useStyles } from './MultiAppManagerProvider.style'; import { usePluginUtils } from './utils'; const MultiAppManager = () => { const { styles } = useStyles(); const { data, run } = useRequest<{ data: any[]; }>( { resource: 'applications', action: 'listPinned', }, { manual: true, }, ); const { t } = usePluginUtils(); const instance = useApp(); const items = [ ...(data?.data || []).map((app) => { let link = instance.getRouteUrl(`/apps/${app.name}/admin/`); if (app.cname) { link = `//${app.cname}`; } return { key: app.name, label: ( {app.displayName || app.name} ), }; }), { key: '.manager', label: ( {t('Manage applications')} ), }, ]; return ( { run(); }} menu={{ items }} >