diff --git a/packages/web/src/commands/stdCommands.ts b/packages/web/src/commands/stdCommands.ts index f1a903852..4a090084f 100644 --- a/packages/web/src/commands/stdCommands.ts +++ b/packages/web/src/commands/stdCommands.ts @@ -4,12 +4,14 @@ import { derived, get } from 'svelte/store'; import { ThemeDefinition } from 'dbgate-types'; import ConnectionModal from '../modals/ConnectionModal.svelte'; import AboutModal from '../modals/AboutModal.svelte'; +import ImportExportModal from '../modals/ImportExportModal.svelte'; import { showModal } from '../modals/modalTools'; import newQuery from '../query/newQuery'; import saveTabFile from '../utility/saveTabFile'; import openNewTab from '../utility/openNewTab'; import getElectron from '../utility/getElectron'; import { openElectronFile } from '../utility/openElectronFile'; +import { getDefaultFileFormat } from '../plugins/fileformats'; const electron = getElectron(); @@ -150,6 +152,19 @@ if (electron) { }); } +registerCommand({ + id: 'file.import', + category: 'File', + name: 'Import data', + toolbar: true, + icon: 'icon import', + onClick: () => + showModal(ImportExportModal, { + importToArchive: true, + initialValues: { sourceStorageType: getDefaultFileFormat(get(extensions)).storageType }, + }), +}); + export function registerFileCommands({ idPrefix, category, diff --git a/packages/web/src/elements/FormStyledButtonLikeLabel.svelte b/packages/web/src/elements/FormStyledButtonLikeLabel.svelte new file mode 100644 index 000000000..4adec94fe --- /dev/null +++ b/packages/web/src/elements/FormStyledButtonLikeLabel.svelte @@ -0,0 +1,30 @@ + + + + + diff --git a/packages/web/src/forms/FormArchiveFilesSelect.svelte b/packages/web/src/forms/FormArchiveFilesSelect.svelte new file mode 100644 index 000000000..caa9f77eb --- /dev/null +++ b/packages/web/src/forms/FormArchiveFilesSelect.svelte @@ -0,0 +1,39 @@ + + +