Skip to content
tcpsystemsui

Theme

Colour scheme
Accent
Density
Radius
Esc

Topbar

Suite header: brand, sections, search and account.

beta

Examples

Minimal

Minimal.svelte
<script lang="ts">
	import Topbar from '@tcpsystems/ui/foundation/Topbar';
	import Brand from '@tcpsystems/ui/foundation/Brand';
</script>

<Topbar>
	{#snippet brand()}<Brand />{/snippet}
</Topbar>

With nav

With nav.svelte
<script lang="ts">
	import Topbar from '@tcpsystems/ui/foundation/Topbar';
	import Brand from '@tcpsystems/ui/foundation/Brand';
	import ThemeSwitch from '@tcpsystems/ui/foundation/ThemeSwitch';
</script>

<Topbar>
	{#snippet brand()}<Brand product="console" />{/snippet}
	{#snippet nav()}
		<Topbar mode="nav" label="Sections" items={[
			{ label: 'Services', href: '#services' },
			{ label: 'Deployments', href: '#deployments', current: true },
			{ label: 'Billing', href: '#billing' }
		]} />
	{/snippet}
	{#snippet end()}<ThemeSwitch />{/snippet}
</Topbar>
tcpsystemsconsole
PN
With search.svelte
<script lang="ts">
	import Topbar from '@tcpsystems/ui/foundation/Topbar';
	import Brand from '@tcpsystems/ui/foundation/Brand';
	import CommandPalette from '@tcpsystems/ui/foundation/CommandPalette';
	import Avatar from '@tcpsystems/ui/foundation/Avatar';
	import ThemeSwitch from '@tcpsystems/ui/foundation/ThemeSwitch';
</script>

<Topbar>
	{#snippet brand()}<Brand product="console" />{/snippet}
	{#snippet nav()}
		<Topbar mode="nav" label="Sections" items={[
			{ label: 'Services', href: '#services' },
			{ label: 'Deployments', href: '#deployments' },
			{ label: 'Invoices', href: '#invoices' }
		]} />
	{/snippet}
	{#snippet search()}<CommandPalette mode="trigger" label="Search deployments" />{/snippet}
	{#snippet end()}
		<Avatar name="Priya Nair" size="sm" />
		<ThemeSwitch />
	{/snippet}
</Topbar>

With rail

With rail.svelte
<script lang="ts">
	import Topbar from '@tcpsystems/ui/foundation/Topbar';
	import Brand from '@tcpsystems/ui/foundation/Brand';
	import ThemeSwitch from '@tcpsystems/ui/foundation/ThemeSwitch';
</script>

<Topbar hasRail>
	{#snippet brand()}<Brand product="studio" />{/snippet}
	{#snippet end()}<ThemeSwitch />{/snippet}
</Topbar>

API

Import
import Topbar from '@tcpsystems/ui/foundation/Topbar';
PropTypeDefault
mode?'topbar' | 'nav''topbar'
hasRail?booleanfalse
items?NavItem[][]
label?string'Sections'
Snippet
brand
nav
search
end
HookKind
.tcp-topnavRoot class
data-variantData attribute