diff --git a/packages/web/src/modals/ImportExportModal.js b/packages/web/src/modals/ImportExportModal.js
index ba7fe4506..8f5716abb 100644
--- a/packages/web/src/modals/ImportExportModal.js
+++ b/packages/web/src/modals/ImportExportModal.js
@@ -1,24 +1,28 @@
import React from 'react';
import ModalBase from './ModalBase';
import FormStyledButton from '../widgets/FormStyledButton';
+import { Formik, Form, useFormikContext } from 'formik';
import styled from 'styled-components';
-import Select from 'react-select';
-import { FontIcon } from '../icons';
-import { FormButtonRow, FormSubmit } from '../utility/forms';
import ModalHeader from './ModalHeader';
import ModalFooter from './ModalFooter';
import ModalContent from './ModalContent';
-import { useConnectionList, useDatabaseList } from '../utility/metadataLoaders';
import ImportExportConfigurator from '../impexp/ImportExportConfigurator';
import createImpExpScript from '../impexp/createImpExpScript';
import { openNewTab } from '../utility/common';
import { useSetOpenedTabs } from '../utility/globalState';
-import { Formik, Form, useFormik, useFormikContext } from 'formik';
+import RunnerOutputPane from '../query/RunnerOutputPane';
+import axios from '../utility/axios';
-export default function ImportExportModal({ modalState, initialValues }) {
+const OutputContainer = styled.div`
+ position: relative;
+ height: 150px;
+`;
+
+function GenerateSctriptButton({ modalState }) {
const setOpenedTabs = useSetOpenedTabs();
+ const { values } = useFormikContext();
- const handleSubmit = async (values) => {
+ const handleGenerateScript = async () => {
const code = await createImpExpScript(values);
openNewTab(setOpenedTabs, {
title: 'Shell',
@@ -30,10 +34,29 @@ export default function ImportExportModal({ modalState, initialValues }) {
});
modalState.close();
};
+
+ return ;
+}
+
+export default function ImportExportModal({ modalState, initialValues }) {
+ const [executeNumber, setExecuteNumber] = React.useState(0);
+ const [runnerId, setRunnerId] = React.useState(null);
+
+ const handleExecute = async (values) => {
+ const script = await createImpExpScript(values);
+
+ setExecuteNumber((num) => num + 1);
+
+ let runid = runnerId;
+ const resp = await axios.post('runners/start', { script });
+ runid = resp.data.runid;
+ setRunnerId(runid);
+ };
+
return (