mssql: support readableStream (missing drained pause+resume+drained support)

This commit is contained in:
Jan Prochazka
2020-06-07 19:06:21 +02:00
parent 22fa92520d
commit 81738487d7
6 changed files with 54 additions and 6 deletions

View File

@@ -5,7 +5,8 @@ import { DropDownMenuItem } from '../modals/DropDownMenu';
import { openNewTab } from '../utility/common';
import { getConnectionInfo } from '../utility/metadataLoaders';
import fullDisplayName from '../utility/fullDisplayName';
import { filterName } from '@dbgate/datalib';
import { filterName, fullNameToString } from '@dbgate/datalib';
import ImportExportModal from '../modals/ImportExportModal';
const icons = {
tables: 'table2.svg',
@@ -28,6 +29,10 @@ const menus = {
label: 'Show CREATE TABLE script',
sqlTemplate: 'CREATE TABLE',
},
{
label: 'Export',
isExport: true,
},
],
views: [
{
@@ -38,6 +43,10 @@ const menus = {
label: 'Show CREATE VIEW script',
sqlTemplate: 'CREATE OBJECT',
},
{
label: 'Export',
isExport: true,
},
],
procedures: [
{
@@ -90,14 +99,28 @@ async function openObjectDetail(
});
}
function Menu({ data, makeAppObj, setOpenedTabs }) {
function Menu({ data, makeAppObj, setOpenedTabs, showModal }) {
return (
<>
{menus[data.objectTypeField].map((menu) => (
<DropDownMenuItem
key={menu.label}
onClick={() => {
openObjectDetail(setOpenedTabs, menu.tab, menu.sqlTemplate, data);
if (menu.isExport) {
showModal((modalState) => (
<ImportExportModal
modalState={modalState}
initialValues={{
sourceStorageType: 'database',
sourceConnectionId: data.conid,
sourceDatabaseName: data.database,
sourceTables: [fullNameToString(data)],
}}
/>
));
} else {
openObjectDetail(setOpenedTabs, menu.tab, menu.sqlTemplate, data);
}
}}
>
{menu.label}