Production default
Balanced spacing, hierarchy, and content for the most common product workflow.
<Badge
dotLabel="Badge"
dismissible="true"
dismissLabel="Badge"
anchorLabel="Badge"
/>
// Generated by scripts/generate-showcase.mjs. Do not edit directly.
page BadgeDetail {
layout = "showcase"
state playground_label = ctx.url.searchParams.get("pg_label") ?? "Badge"
state playground_size = ctx.url.searchParams.get("pg_size") ?? "md"
state playground_color = ctx.url.searchParams.get("pg_color") ?? "primary"
state playground_variant = ctx.url.searchParams.get("pg_variant") ?? "solid"
state playground_shape = ctx.url.searchParams.get("pg_shape") ?? "pill"
state playground_class = ctx.url.searchParams.get("pg_class") ?? "showcase-instance showcase-instance--1"
state playground_icon = ctx.url.searchParams.get("pg_icon") ?? ""
state playground_iconPosition = ctx.url.searchParams.get("pg_iconPosition") ?? "start"
state playground_dot = (ctx.url.searchParams.get("pg_dot") ?? "false") === "true"
state playground_dotOnly = (ctx.url.searchParams.get("pg_dotOnly") ?? "false") === "true"
state playground_dotLabel = ctx.url.searchParams.get("pg_dotLabel") ?? "Badge"
state playground_animated = (ctx.url.searchParams.get("pg_animated") ?? "false") === "true"
state playground_avatarSrc = ctx.url.searchParams.get("pg_avatarSrc") ?? ""
state playground_avatarAlt = ctx.url.searchParams.get("pg_avatarAlt") ?? ""
state playground_dismissible = (ctx.url.searchParams.get("pg_dismissible") ?? "true") === "true"
state playground_dismissLabel = ctx.url.searchParams.get("pg_dismissLabel") ?? "Badge"
state playground_truncate = (ctx.url.searchParams.get("pg_truncate") ?? "false") === "true"
state playground_maxWidth = ctx.url.searchParams.get("pg_maxWidth") ?? "12rem"
state playground_anchorLabel = ctx.url.searchParams.get("pg_anchorLabel") ?? "Badge"
state playground_anchorIcon = ctx.url.searchParams.get("pg_anchorIcon") ?? ""
state playground_placement = ctx.url.searchParams.get("pg_placement") ?? "inline"
state playground_anchorLabelText = ctx.url.searchParams.get("pg_anchorLabelText") ?? "Badge anchor"
seo {
title = "Badge"
description = "Theme-aware, responsive badge component."
}
view {
Theme-aware, responsive badge component. Change any prop and inspect the server-rendered component immediately.Badge
Configure Badge
<Badge
dotLabel="Badge"
dismissible="true"
dismissLabel="Badge"
anchorLabel="Badge"
/>payload.
Compare configurations and resize the browser to check responsive behavior.
Balanced spacing, hierarchy, and content for the most common product workflow.
<Badge
dotLabel="Badge"
dismissible="true"
dismissLabel="Badge"
anchorLabel="Badge"
/>
A tighter variation for dashboards, side panels, tables, and operational interfaces.
<Badge
label="Compact example"
size="sm"
variant="secondary"
icon="icon-[lucide--arrow-right]"
dotLabel="Compact example"
dismissible="true"
dismissLabel="Compact example"
anchorLabel="Compact example"
/>
A more expressive variation using additional data, stronger emphasis, and optional states.
<Badge
label="Advanced example"
size="lg"
variant="success"
icon="icon-[lucide--trash-2]"
dotLabel="Advanced example"
dismissible="true"
dismissLabel="Advanced example"
anchorLabel="Advanced example"
/>
Use declarative output handlers in .wrn files or register a direct output handler from JavaScript. The canonical API exposes payload and does not require event.detail.
@dismissFires after the announcement or feedback surface is dismissed.<Badge
@dismiss='console.log(payload)'
/>import { registerOutputHandler } from "@wrnexus/csr/outputs"
const component = document.querySelector("[data-ui-component=\"Badge\"], [data-component=\"Badge\"]")
if (component) registerOutputHandler(component, "dismiss", (payload) => {
console.log("dismiss", payload)
})All content and behavior shown above is supplied through these props and slots.
| Prop | Type | Default | Required |
|---|---|---|---|
label | string | "Badge" | No |
size | string | "md" | No |
color | string | "primary" | No |
variant | string | "solid" | No |
shape | string | "pill" | No |
class | string | "" | No |
icon | string | "" | No |
iconPosition | string | "start" | No |
dot | boolean | false | No |
dotOnly | boolean | false | No |
dotLabel | string | "Status" | No |
animated | boolean | false | No |
avatarSrc | string | "" | No |
avatarAlt | string | "" | No |
dismissible | boolean | false | No |
dismissLabel | string | "Remove badge" | No |
truncate | boolean | false | No |
maxWidth | string | "12rem" | No |
anchorLabel | string | "" | No |
anchorIcon | string | "" | No |
placement | string | "inline" | No |
anchorLabelText | string | "Badge anchor" | No |