mirror of
https://github.com/coollabsio/coolify.git
synced 2026-11-06 21:18:11 -04:00
style(ui): align floating navigation and canvas radii to 8px
This commit is contained in:
@@ -5438,7 +5438,8 @@ html.dark .canvas-zoom-max {
|
||||
@media (min-width: 1024px) {
|
||||
html[data-nav-style="floating"] {
|
||||
--floating-gap: 0.5rem;
|
||||
--floating-radius: 12px;
|
||||
/* Same radius as the content cards (.application-settings-section). */
|
||||
--floating-radius: 8px;
|
||||
--floating-line: oklch(0% 0 0 / 0.09);
|
||||
/* Bottom edge of the top bar panel plus one gap. */
|
||||
--floating-top: calc(3rem + var(--floating-gap) * 2);
|
||||
|
||||
@@ -103,7 +103,7 @@ export function dock(top) {
|
||||
const topbar = document.querySelector('.app-topbar');
|
||||
top.removeAttribute('style');
|
||||
if (desktop && topbar && document.documentElement.dataset.navStyle === 'floating') {
|
||||
top.className = 'fixed z-40 flex items-center gap-3 rounded-xl border border-neutral-200 bg-white px-2 py-1.5 dark:border-white/[0.08] dark:bg-panel';
|
||||
top.className = 'fixed z-40 flex items-center gap-3 rounded-lg border border-neutral-200 bg-white px-2 py-1.5 dark:border-white/[0.08] dark:bg-panel';
|
||||
root.append(top);
|
||||
const gap = 8;
|
||||
const head = topbar.getBoundingClientRect();
|
||||
|
||||
@@ -28,7 +28,7 @@ const CSS = `
|
||||
.cv-root.cv-dark { color-scheme: dark; }
|
||||
.cv-root *, .cv-root *::before, .cv-root *::after { box-sizing: border-box; }
|
||||
/* Rounded boxes on the backdrop: the top bar and the step list. */
|
||||
.cv-island { border: 1px solid var(--cv-line); border-radius: 12px; background: var(--cv-island); }
|
||||
.cv-island { border: 1px solid var(--cv-line); border-radius: 8px; background: var(--cv-island); }
|
||||
.cv-root svg { width: 1rem; height: 1rem; flex: none; }
|
||||
.cv-root button:not(.button) { font: inherit; }
|
||||
|
||||
@@ -260,7 +260,7 @@ const CSS = `
|
||||
@media (prefers-reduced-motion: reduce) { .cv-node.blank .cv-port.out::after, .cv-hint::before, .cv-hint span { animation: none; } }
|
||||
|
||||
/* Run panel: an island with the steps as status lights, then the logs. */
|
||||
.cv-run { position: absolute; top: 0.75rem; right: 0.75rem; bottom: 0.75rem; z-index: 10; display: flex; flex-direction: column; width: min(26rem, 45%); overflow: hidden; border: 1px solid var(--cv-line); border-radius: 12px; background: var(--cv-island); box-shadow: 0 20px 48px -20px rgb(0 0 0 / 0.4); }
|
||||
.cv-run { position: absolute; top: 0.75rem; right: 0.75rem; bottom: 0.75rem; z-index: 10; display: flex; flex-direction: column; width: min(26rem, 45%); overflow: hidden; border: 1px solid var(--cv-line); border-radius: 8px; background: var(--cv-island); box-shadow: 0 20px 48px -20px rgb(0 0 0 / 0.4); }
|
||||
.cv-run[hidden] { display: none; }
|
||||
.cv-run header { display: flex; align-items: flex-start; gap: 0.5rem; padding: 1rem 0.75rem 0.875rem 1.25rem; border-bottom: 1px solid var(--cv-line); }
|
||||
.cv-run header div { display: grid; gap: 0.0625rem; margin-right: auto; }
|
||||
|
||||
@@ -236,14 +236,14 @@
|
||||
const slot = desktop.matches && !floatingBar() && !('toolbarInline' in ds) && document.getElementById('page-toolbar-slot');
|
||||
bar.removeAttribute('style');
|
||||
if (floatingBar()) {
|
||||
bar.className = 'fixed z-40 flex flex-wrap items-center justify-center gap-3 rounded-xl border border-neutral-200 bg-white px-2 py-1.5 dark:border-white/[0.08] dark:bg-panel';
|
||||
bar.className = 'fixed z-40 flex flex-wrap items-center justify-center gap-3 rounded-lg border border-neutral-200 bg-white px-2 py-1.5 dark:border-white/[0.08] dark:bg-panel';
|
||||
bodyEl.append(bar);
|
||||
alignFloatingBar();
|
||||
} else if (slot) {
|
||||
bar.className = 'flex items-center gap-3 pl-3';
|
||||
slot.append(bar);
|
||||
} else {
|
||||
bar.className = 'flex shrink-0 flex-wrap items-center gap-3 rounded-xl border border-neutral-200 bg-white px-3 py-2.5 dark:border-white/[0.08] dark:bg-panel';
|
||||
bar.className = 'flex shrink-0 flex-wrap items-center gap-3 rounded-lg border border-neutral-200 bg-white px-3 py-2.5 dark:border-white/[0.08] dark:bg-panel';
|
||||
barSlot.append(bar);
|
||||
panelTop = '';
|
||||
}
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
{/snippet}
|
||||
|
||||
{#snippet shell(title, iconSource, body, footer)}
|
||||
<aside class="absolute top-3 right-3 bottom-3 z-20 flex w-80 max-w-[calc(100%-1.5rem)] flex-col overflow-hidden rounded-xl border border-neutral-200 bg-white shadow-lg dark:border-white/[0.08] dark:bg-panel" style:top={top || null} data-ec-panel>
|
||||
<aside class="absolute top-3 right-3 bottom-3 z-20 flex w-80 max-w-[calc(100%-1.5rem)] flex-col overflow-hidden rounded-lg border border-neutral-200 bg-white shadow-lg dark:border-white/[0.08] dark:bg-panel" style:top={top || null} data-ec-panel>
|
||||
<div class="flex items-center gap-2.5 px-4 py-3">
|
||||
<div class="flex size-8 shrink-0 items-center justify-center overflow-hidden rounded-lg border border-neutral-200 bg-neutral-50 text-neutral-500 dark:border-white/[0.08] dark:bg-white/[0.04] dark:text-fg-dim">
|
||||
{#if typeof iconSource === 'string'}<Icon name={iconSource} class="size-4" />{:else}<NodeIcon node={iconSource} />{/if}
|
||||
|
||||
Reference in New Issue
Block a user