Skip to content
tcpsystemsui

Theme

Colour scheme
Accent
Density
Radius
Esc

Tag

User metadata or an applied filter, optionally removable.

beta

Try it

Production
Svelte
<Tag>Production</Tag>

Examples

Project labels

Production Owner operated
Project labels.svelte
<script lang="ts">
	import Tag from '@tcpsystems/ui/foundation/Tag';
	import Cluster from '@tcpsystems/ui/foundation/Cluster';
</script>

<Cluster>
	<Tag>Production</Tag>
	<Tag>Owner operated</Tag>
</Cluster>

Linked label

Linked label.svelte
<script lang="ts">
	import Tag from '@tcpsystems/ui/foundation/Tag';
</script>

<Tag href="/components/status/">Deployment status</Tag>

Removable filters

ProductionFalkenstein
Removable filters.svelte
<script lang="ts">
	import Tag from '@tcpsystems/ui/foundation/Tag';
	import Cluster from '@tcpsystems/ui/foundation/Cluster';
	import Button from '@tcpsystems/ui/foundation/Button';

	let filters = $state(['Production', 'Falkenstein']);
</script>

<Cluster>
	{#each filters as filter (filter)}
		<Tag removeLabel={`Remove ${filter} filter`} onremove={() => filters = filters.filter((value) => value !== filter)}>{filter}</Tag>
	{:else}
		<p role="status">All deployments are visible.</p>
	{/each}
	<Button size="sm" onclick={() => filters = ['Production', 'Falkenstein']}>Reset filters</Button>
</Cluster>

API

Import
import Tag from '@tcpsystems/ui/foundation/Tag';
PropTypeDefault
href?stringnone
removeLabel?stringnone
children?nativenone
HookKind
.tcp-tagRoot class