import {
Icon,
PinnedPluginListProvider,
SchemaComponentOptions,
SettingsCenterProvider,
useRequest,
} from '@nocobase/client';
import { Button, Dropdown } from 'antd';
import React from 'react';
import { Link } from 'react-router-dom';
import { AppManager } from './AppManager';
import { AppNameInput } from './AppNameInput';
import { usePluginUtils } from './utils';
const MultiAppManager = () => {
const { data, run } = useRequest<{
data: any[];
}>(
{
resource: 'applications',
action: 'listPinned',
},
{
manual: true,
},
);
const { t } = usePluginUtils();
const items = [
...(data?.data || []).map((app) => {
let link = `/apps/${app.name}/admin/`;
if (app.options?.standaloneDeployment && app.cname) {
link = `//${app.cname}`;
}
return {
key: app.name,
label: (
{app.displayName || app.name}
),
};
}),
{
key: '.manager',
label: {t('Manage applications')},
},
];
return (
{
run();
}}
menu={{ items }}
>
} />
);
};
export const MultiAppManagerProvider = (props) => {
const { t } = usePluginUtils();
return (
,
},
// settings: {
// title: 'Settings',
// component: () => ,
// },
},
},
}}
>
{props.children}
);
};