fix(desktop): keep saving structure export sql
This commit is contained in:
1 parent
6dee9705d9
commit
36923fa581
5 files changed
+25
-1
No files matched your search
@@ -797,6 +797,7 @@ const showBatchDropConfirm = ref(false);
|
||||
const showStructurePreviewDialog = ref(false);
|
||||
const structurePreviewSql = ref("");
|
||||
const structurePreviewTitle = ref("");
|
||||
const structurePreviewDefaultFileName = ref("structure.sql");
|
||||
const structurePreviewError = ref("");
|
||||
const isLoadingStructurePreview = ref(false);
|
||||
const showEmptyTableConfirm = ref(false);
|
||||
@@ -1688,6 +1689,7 @@ async function exportStructure() {
|
||||
targets.length === 1
|
||||
? t("contextMenu.exportStructurePreviewTitle", { name: targets[0]!.label })
|
||||
: t("contextMenu.exportStructurePreviewTitleMultiple", { count: targets.length });
|
||||
structurePreviewDefaultFileName.value = targets.length === 1 ? `${targets[0]!.label}.sql` : "structures.sql";
|
||||
showStructurePreviewDialog.value = true;
|
||||
try {
|
||||
const parts: string[] = [];
|
||||
@@ -1749,6 +1751,16 @@ async function copyStructurePreview() {
|
||||
}
|
||||
}
|
||||
|
||||
async function saveStructurePreview() {
|
||||
if (!structurePreviewSql.value) return;
|
||||
try {
|
||||
await saveFileContent(structurePreviewSql.value, structurePreviewDefaultFileName.value, "SQL", "sql");
|
||||
toast(t("grid.exported"));
|
||||
} catch (e: any) {
|
||||
toast(t("grid.exportFailed", { message: e?.message || String(e) }), 5000);
|
||||
}
|
||||
}
|
||||
|
||||
async function exportData(format: "csv" | "json" | "sql") {
|
||||
const node = props.node;
|
||||
if (!node.connectionId || !node.database) return;
|
||||
@@ -3009,10 +3021,18 @@ function treeItemMenuItems(): ContextMenuItem[] {
|
||||
</div>
|
||||
<DialogFooter>
|
||||
<Button variant="outline" @click="showStructurePreviewDialog = false">{{ t("dangerDialog.cancel") }}</Button>
|
||||
<Button :disabled="isLoadingStructurePreview || !structurePreviewSql" @click="copyStructurePreview">
|
||||
<Button
|
||||
variant="outline"
|
||||
:disabled="isLoadingStructurePreview || !structurePreviewSql"
|
||||
@click="copyStructurePreview"
|
||||
>
|
||||
<Clipboard class="h-4 w-4" />
|
||||
{{ t("contextMenu.copyStructure") }}
|
||||
</Button>
|
||||
<Button :disabled="isLoadingStructurePreview || !structurePreviewSql" @click="saveStructurePreview">
|
||||
<Download class="h-4 w-4" />
|
||||
{{ t("contextMenu.saveStructure") }}
|
||||
</Button>
|
||||
</DialogFooter>
|
||||
</DialogContent>
|
||||
</Dialog>
|
||||
|
||||
Reference in new issue
Block a user