2025-08-26 18:42:54 +08:00
|
|
|
import * as api from "/@/views/sys/plugin/api";
|
|
|
|
|
import { useFormWrapper } from "@fast-crud/fast-crud";
|
|
|
|
|
import { useI18n } from "/@/locales";
|
|
|
|
|
import { Modal, notification } from "ant-design-vue";
|
|
|
|
|
import ConfigEditor from "./config-editor.vue";
|
2025-08-27 09:56:36 +08:00
|
|
|
import { useModal } from "/@/use/use-modal";
|
2025-08-26 18:42:54 +08:00
|
|
|
export function usePluginConfig() {
|
|
|
|
|
const { openCrudFormDialog } = useFormWrapper();
|
|
|
|
|
const { t } = useI18n();
|
|
|
|
|
|
2025-08-27 09:56:36 +08:00
|
|
|
const modal = useModal();
|
2025-08-26 18:42:54 +08:00
|
|
|
async function openConfigDialog({ row, crudExpose }) {
|
2025-08-27 09:56:36 +08:00
|
|
|
// function createCrudOptions() {
|
|
|
|
|
// return {
|
|
|
|
|
// crudOptions: {
|
|
|
|
|
// columns: {},
|
|
|
|
|
// form: {
|
|
|
|
|
// wrapper: {
|
|
|
|
|
// width: "80%",
|
|
|
|
|
// title: "插件元数据配置",
|
|
|
|
|
// saveRemind: false,
|
|
|
|
|
// slots: {
|
|
|
|
|
// "form-body-top": () => {
|
|
|
|
|
// return (
|
|
|
|
|
// <div>
|
|
|
|
|
// <ConfigEditor plugin={row}></ConfigEditor>
|
|
|
|
|
// </div>
|
|
|
|
|
// );
|
|
|
|
|
// },
|
|
|
|
|
// },
|
|
|
|
|
// },
|
|
|
|
|
// afterSubmit() {
|
|
|
|
|
// notification.success({ message: t("certd.operationSuccess") });
|
|
|
|
|
// crudExpose.doRefresh();
|
|
|
|
|
// },
|
|
|
|
|
// async doSubmit({ form }: any) {
|
|
|
|
|
// return await api.ImportPlugin({
|
|
|
|
|
// ...form,
|
|
|
|
|
// });
|
|
|
|
|
// },
|
|
|
|
|
// },
|
|
|
|
|
// },
|
|
|
|
|
// };
|
|
|
|
|
// }
|
|
|
|
|
// const { crudOptions } = createCrudOptions();
|
|
|
|
|
// await openCrudFormDialog({ crudOptions });
|
|
|
|
|
|
|
|
|
|
modal.confirm({
|
|
|
|
|
title: "插件元数据配置",
|
|
|
|
|
width: "80%",
|
|
|
|
|
content: () => {
|
|
|
|
|
return <ConfigEditor plugin={row}></ConfigEditor>;
|
|
|
|
|
},
|
|
|
|
|
});
|
2025-08-26 18:42:54 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
openConfigDialog,
|
|
|
|
|
};
|
|
|
|
|
}
|