{{ item.name }}
-
+
-
+
-
+
@@ -59,15 +59,17 @@
ElButton,
ElMessage,
ElCascader,
+ ElIcon,
+ ExpandTrigger,
} from 'element-plus';
- import { useVisualData } from '@/visual-editor/hooks/useVisualData';
+ import { cloneDeep } from 'lodash-es';
+ import { Delete, Edit } from '@element-plus/icons-vue';
+ import { useImportSwaggerJsonModal } from './utils';
import type { FetchApiItem, VisualEditorModel } from '@/visual-editor/visual-editor.utils';
+ import { useVisualData } from '@/visual-editor/hooks/useVisualData';
import { useModal } from '@/visual-editor/hooks/useModal';
- import { cloneDeep } from 'lodash-es';
import { generateNanoid } from '@/visual-editor/utils/';
import { RequestEnum, ContentTypeEnum } from '@/enums/httpEnum';
- import { useImportSwaggerJsonModal } from './utils';
- import { Delete, Edit } from '@element-plus/icons-vue';
interface IState {
activeNames: string[];
@@ -162,14 +164,14 @@
@@ -246,6 +248,7 @@
.model-actions {
display: flex;
+
i {
padding: 6px;
margin: 0 2px;
diff --git a/src/visual-editor/components/left-aside/components/data-source/data-model.vue b/src/visual-editor/components/left-aside/components/data-source/data-model.vue
index 22a8d4f..e55a1ab 100644
--- a/src/visual-editor/components/left-aside/components/data-source/data-model.vue
+++ b/src/visual-editor/components/left-aside/components/data-source/data-model.vue
@@ -23,7 +23,7 @@
{{ item.name }}
-
+
-
+
@@ -59,14 +59,15 @@
ElCard,
ElButton,
ElMessage,
+ ElIcon,
} from 'element-plus';
- import { useVisualData, fieldTypes } from '@/visual-editor/hooks/useVisualData';
+ import { cloneDeep } from 'lodash-es';
+ import { Delete, Edit } from '@element-plus/icons-vue';
+ import { useImportSwaggerJsonModal } from './utils';
import type { VisualEditorModel } from '@/visual-editor/visual-editor.utils';
+ import { useVisualData, fieldTypes } from '@/visual-editor/hooks/useVisualData';
import { useModal } from '@/visual-editor/hooks/useModal';
- import { cloneDeep } from 'lodash-es';
import { generateNanoid } from '@/visual-editor/utils/';
- import { useImportSwaggerJsonModal } from './utils';
- import { Delete, Edit } from '@element-plus/icons-vue';
interface IState {
activeNames: string[];
@@ -261,6 +262,7 @@
.model-actions {
display: flex;
+
i {
padding: 6px;
margin: 0 2px;
diff --git a/src/visual-editor/components/left-aside/components/data-source/index.vue b/src/visual-editor/components/left-aside/components/data-source/index.vue
index f64488e..9f34272 100644
--- a/src/visual-editor/components/left-aside/components/data-source/index.vue
+++ b/src/visual-editor/components/left-aside/components/data-source/index.vue
@@ -1,10 +1,10 @@
@@ -17,18 +17,16 @@
-
-
diff --git a/src/visual-editor/components/simulator-editor/simulator-editor.vue b/src/visual-editor/components/simulator-editor/simulator-editor.vue
index 3743809..7e3e1c3 100644
--- a/src/visual-editor/components/simulator-editor/simulator-editor.vue
+++ b/src/visual-editor/components/simulator-editor/simulator-editor.vue
@@ -53,210 +53,190 @@
-
diff --git a/src/visual-editor/hooks/useDotProp.ts b/src/visual-editor/hooks/useDotProp.ts
index 5729457..2ee5ff2 100644
--- a/src/visual-editor/hooks/useDotProp.ts
+++ b/src/visual-editor/hooks/useDotProp.ts
@@ -6,13 +6,13 @@
* @update: 2021/5/2 19:54
*/
export const useDotProp = (originObj, propName) => {
- const props: string[] = propName.split('.')
- const isDotProp = props.length > 1
- const prop = props.pop()!
- const propObj = props.reduce((prev, curr) => (prev[curr] ??= {}), originObj)
+ const props: string[] = propName.split('.');
+ const isDotProp = props.length > 1;
+ const prop = props.pop()!;
+ const propObj = props.reduce((prev, curr) => (prev[curr] ??= {}), originObj);
return {
prop,
propObj,
- isDotProp
- }
-}
+ isDotProp,
+ };
+};
diff --git a/src/visual-editor/hooks/useModal.tsx b/src/visual-editor/hooks/useModal.tsx
index 00dd9a0..2298135 100644
--- a/src/visual-editor/hooks/useModal.tsx
+++ b/src/visual-editor/hooks/useModal.tsx
@@ -12,62 +12,62 @@ import {
PropType,
getCurrentInstance,
ComponentInternalInstance,
- isVNode
-} from 'vue'
-import { ElButton, ElDialog } from 'element-plus'
-import { isFunction } from '@/visual-editor/utils/is'
+ isVNode,
+} from 'vue';
+import { ElButton, ElDialog } from 'element-plus';
+import { isFunction } from '@/visual-editor/utils/is';
interface ModalOptions {
- title?: string
- footer?: null | (() => JSX.Element)
- content: ComponentInternalInstance | (() => JSX.Element)
- onConfirm?: () => void
- onCancel?: () => void
+ title?: string;
+ footer?: null | (() => JSX.Element);
+ content: ComponentInternalInstance | (() => JSX.Element);
+ onConfirm?: () => void;
+ onCancel?: () => void;
props?: {
- [propName: string]: any
- }
+ [propName: string]: any;
+ };
}
const Modal = defineComponent({
props: {
options: {
type: Object as PropType
,
- default: () => ({})
- }
+ default: () => ({}),
+ },
},
setup(props) {
- const instance = getCurrentInstance()!
+ const instance = getCurrentInstance()!;
const state = reactive({
options: props.options,
- visible: true
- })
+ visible: true,
+ });
const methods = {
service: (options: ModalOptions) => {
- state.options = options
- methods.show()
+ state.options = options;
+ methods.show();
},
show: () => (state.visible = true),
- hide: () => (state.visible = false)
- }
+ hide: () => (state.visible = false),
+ };
const handler = {
onConfirm: async () => {
- await state.options.onConfirm?.()
- methods.hide()
+ await state.options.onConfirm?.();
+ methods.hide();
},
onCancel: () => {
- state.options.onCancel?.()
- methods.hide()
- }
- }
+ state.options.onCancel?.();
+ methods.hide();
+ },
+ };
- Object.assign(instance.proxy, methods)
+ Object.assign(instance.proxy!, methods);
return () => (
- )
+ ),
}}
- )
- }
-})
+ );
+ },
+});
export const useModal = (() => {
- let instance: any
+ let instance: any;
return (options: ModalOptions) => {
if (instance) {
- instance.service(options)
- return instance
+ instance.service(options);
+ return instance;
}
- const div = document.createElement('div')
- document.body.appendChild(div)
- const app = createApp(Modal, { options })
- instance = app.mount(div)
- return instance
- }
-})()
+ const div = document.createElement('div');
+ document.body.appendChild(div);
+ const app = createApp(Modal, { options });
+ instance = app.mount(div);
+ return instance;
+ };
+})();
diff --git a/src/visual-editor/hooks/useModel.tsx b/src/visual-editor/hooks/useModel.tsx
index ea83102..8f94ce7 100644
--- a/src/visual-editor/hooks/useModel.tsx
+++ b/src/visual-editor/hooks/useModel.tsx
@@ -1,42 +1,42 @@
-import { ref, watch, defineComponent } from 'vue'
+import { ref, watch, defineComponent } from 'vue';
export function useModel