fix(export-sql): conditionally show generic option and reorder by diagram type (#708)

* fix(export-sql): conditionally show generic option and reorder by diagram type

* fix

* fix

---------

Co-authored-by: Guy Ben-Aharon <baguy3@gmail.com>
This commit is contained in:
Jonathan Fishner
2025-06-08 12:32:05 +03:00
committed by GitHub
parent 7d063b905f
commit c6118e0cdb

View File

@@ -250,65 +250,82 @@ export const Menu: React.FC<MenuProps> = () => {
{t('menu.file.export_sql')}
</MenubarSubTrigger>
<MenubarSubContent>
<MenubarItem
onClick={() => exportSQL(DatabaseType.GENERIC)}
>
{databaseTypeToLabelMap['generic']}
</MenubarItem>
<MenubarItem
onClick={() =>
exportSQL(DatabaseType.POSTGRESQL)
}
>
{databaseTypeToLabelMap['postgresql']}
{databaseType !== DatabaseType.POSTGRESQL && (
{databaseType === DatabaseType.GENERIC ? (
<MenubarItem
onClick={() =>
exportSQL(DatabaseType.GENERIC)
}
>
{databaseTypeToLabelMap['generic']}
</MenubarItem>
) : null}
{databaseType !== DatabaseType.GENERIC ? (
<MenubarItem
onClick={() => exportSQL(databaseType)}
>
{databaseTypeToLabelMap[databaseType]}
</MenubarItem>
) : null}
{databaseType !== DatabaseType.POSTGRESQL ? (
<MenubarItem
onClick={() =>
exportSQL(DatabaseType.POSTGRESQL)
}
>
{databaseTypeToLabelMap['postgresql']}
<MenubarShortcut className="text-base">
{emojiAI}
</MenubarShortcut>
)}
</MenubarItem>
<MenubarItem
onClick={() => exportSQL(DatabaseType.MYSQL)}
>
{databaseTypeToLabelMap['mysql']}
{databaseType !== DatabaseType.MYSQL && (
</MenubarItem>
) : null}
{databaseType !== DatabaseType.MYSQL ? (
<MenubarItem
onClick={() =>
exportSQL(DatabaseType.MYSQL)
}
>
{databaseTypeToLabelMap['mysql']}
<MenubarShortcut className="text-base">
{emojiAI}
</MenubarShortcut>
)}
</MenubarItem>
<MenubarItem
onClick={() =>
exportSQL(DatabaseType.SQL_SERVER)
}
>
{databaseTypeToLabelMap['sql_server']}
{databaseType !== DatabaseType.SQL_SERVER && (
</MenubarItem>
) : null}
{databaseType !== DatabaseType.SQL_SERVER ? (
<MenubarItem
onClick={() =>
exportSQL(DatabaseType.SQL_SERVER)
}
>
{databaseTypeToLabelMap['sql_server']}
<MenubarShortcut className="text-base">
{emojiAI}
</MenubarShortcut>
)}
</MenubarItem>
<MenubarItem
onClick={() => exportSQL(DatabaseType.MARIADB)}
>
{databaseTypeToLabelMap['mariadb']}
{databaseType !== DatabaseType.MARIADB && (
</MenubarItem>
) : null}
{databaseType !== DatabaseType.MARIADB ? (
<MenubarItem
onClick={() =>
exportSQL(DatabaseType.MARIADB)
}
>
{databaseTypeToLabelMap['mariadb']}
<MenubarShortcut className="text-base">
{emojiAI}
</MenubarShortcut>
)}
</MenubarItem>
<MenubarItem
onClick={() => exportSQL(DatabaseType.SQLITE)}
>
{databaseTypeToLabelMap['sqlite']}
{databaseType !== DatabaseType.SQLITE && (
</MenubarItem>
) : null}
{databaseType !== DatabaseType.SQLITE ? (
<MenubarItem
onClick={() =>
exportSQL(DatabaseType.SQLITE)
}
>
{databaseTypeToLabelMap['sqlite']}
<MenubarShortcut className="text-base">
{emojiAI}
</MenubarShortcut>
)}
</MenubarItem>
</MenubarItem>
) : null}
</MenubarSubContent>
</MenubarSub>
<MenubarSub>