Files
uzdb/frontend/src/components/Layout/ToolBar.css
loveuer 347ecd0f1b feat: add TableList component with styles and functionality for displaying database tables
feat: implement NewConnectionDialog component for creating and editing database connections with form validation

chore: generate TypeScript definitions and JavaScript bindings for app functions

chore: add models for configuration, connection requests, and database entities
2026-04-06 21:45:28 +08:00

129 lines
2.3 KiB
CSS

/**
* ToolBar Component Styles
*/
.toolbar {
display: flex;
align-items: center;
height: var(--toolbar-height);
padding: 0 var(--space-4);
background-color: var(--bg-primary);
border-bottom: 1px solid var(--border);
gap: var(--space-4);
flex-shrink: 0;
}
.toolbar-buttons {
display: flex;
gap: var(--space-1);
}
.toolbar-button {
display: flex;
align-items: center;
gap: var(--space-2);
padding: var(--space-2) var(--space-3);
font-size: var(--text-sm);
font-family: var(--font-sans);
color: var(--text-primary);
background: transparent;
border: 1px solid transparent;
border-radius: var(--radius-md);
cursor: pointer;
transition: all var(--transition-fast) var(--ease-in-out);
white-space: nowrap;
}
.toolbar-button:hover:not(.disabled) {
background-color: var(--bg-tertiary);
border-color: var(--border);
}
.toolbar-button.disabled {
color: var(--text-muted);
cursor: not-allowed;
}
.button-icon {
font-size: var(--text-base);
}
.button-label {
font-weight: 500;
}
.toolbar-content {
display: flex;
align-items: center;
gap: var(--space-2);
}
.toolbar-spacer {
flex: 1;
}
/* Connection indicator */
.toolbar-connection {
display: flex;
align-items: center;
gap: var(--space-2);
padding: var(--space-2) var(--space-3);
background-color: var(--bg-secondary);
border: 1px solid var(--border);
border-radius: var(--radius-md);
cursor: pointer;
transition: all var(--transition-fast) var(--ease-in-out);
}
.toolbar-connection:hover {
background-color: var(--bg-tertiary);
border-color: var(--text-secondary);
}
.connection-status-dot {
width: 8px;
height: 8px;
border-radius: 50%;
background-color: var(--text-muted);
}
.connection-status-dot.connected {
background-color: var(--success);
box-shadow: 0 0 4px var(--success);
}
.toolbar-connection.disconnected {
opacity: 0.5;
cursor: default;
}
.connection-name {
font-size: var(--text-sm);
font-weight: 500;
color: var(--text-primary);
}
.dropdown-arrow {
font-size: var(--text-xs);
color: var(--text-muted);
}
/* Responsive adjustments */
@media (max-width: 768px) {
.toolbar {
padding: 0 var(--space-2);
gap: var(--space-2);
}
.toolbar-button {
padding: var(--space-2);
}
.button-label {
display: none;
}
.connection-name {
display: none;
}
}