diff --git a/webapp/packages/core-app/src/TopNavBar/ConnectionSchemaManager/ConnectionSelector/ConnectionSelector.tsx b/webapp/packages/core-app/src/TopNavBar/ConnectionSchemaManager/ConnectionSelector/ConnectionSelector.tsx index 732bc07161..0982eaff89 100644 --- a/webapp/packages/core-app/src/TopNavBar/ConnectionSchemaManager/ConnectionSelector/ConnectionSelector.tsx +++ b/webapp/packages/core-app/src/TopNavBar/ConnectionSchemaManager/ConnectionSelector/ConnectionSelector.tsx @@ -67,7 +67,7 @@ export const ConnectionSelector = observer(function ConnectionSelector() { } return styled(style)( - + {controller.isObjectContainerSelectorVisible && ( { + .sort((a, b) => { + if (a.connected === b.connected) { + return compareConnectionsInfo(a, b); + } + + return Number(b.connected) - Number(a.connected); + }) + .map((item, index, array) => { const icon = this.dbDriverResource.get(item.driverId)?.icon; const menuItem: IMenuItem = { @@ -157,6 +163,12 @@ export class ConnectionSelectorController { icon, onClick: () => this.connectionSelectorService.selectConnection(item.id), }; + + const next = array[index + 1]; + if (item.connected && next && !next.connected) { + menuItem.separator = true; + } + return menuItem; }); }