diff --git a/packages/core/src/client/webcomponents/components/dock/DockEntries.vue b/packages/core/src/client/webcomponents/components/dock/DockEntries.vue index 299d628e..c67ccf1f 100644 --- a/packages/core/src/client/webcomponents/components/dock/DockEntries.vue +++ b/packages/core/src/client/webcomponents/components/dock/DockEntries.vue @@ -77,6 +77,7 @@ function toggleDockEntry(dock: DevToolsDockEntry) { :is-dimmed="dimInactive && selected ? (selected.id !== dock.id) : false" :is-vertical="isVertical" :badge="dock.badge" + :badge-variant="dock.badgeVariant" @click="toggleDockEntry(dock)" /> diff --git a/packages/core/src/client/webcomponents/components/dock/DockEntry.stories.ts b/packages/core/src/client/webcomponents/components/dock/DockEntry.stories.ts index 5eca6025..0bfc60ac 100644 --- a/packages/core/src/client/webcomponents/components/dock/DockEntry.stories.ts +++ b/packages/core/src/client/webcomponents/components/dock/DockEntry.stories.ts @@ -12,6 +12,7 @@ interface EntryArgs { isVertical?: boolean isAction?: boolean badge?: string + badgeVariant?: 'default' | 'info' | 'success' | 'warning' | 'danger' tooltip?: boolean } @@ -43,6 +44,7 @@ const meta = { isVertical: args.isVertical, isAction: args.isAction, badge: args.badge || undefined, + badgeVariant: args.badgeVariant, tooltip: args.tooltip, }))), ), @@ -67,6 +69,9 @@ export const Action: Story = { args: { isAction: true } } /** A count badge in the corner (e.g. pending items). */ export const WithBadge: Story = { args: { badge: '3' } } +/** A colored badge, e.g. flagging a state that needs attention. */ +export const WithBadgeVariant: Story = { args: { badge: '3', badgeVariant: 'warning' } } + /** Rotated for a left/right edge dock. */ export const Vertical: Story = { args: { isVertical: true } } @@ -81,6 +86,8 @@ export const States: Story = { h(DockEntry, { context: ctx, dock: sample, isDimmed: true }), h(DockEntry, { context: ctx, dock: sample, isAction: true }), h(DockEntry, { context: ctx, dock: sample, badge: '9+' }), + h(DockEntry, { context: ctx, dock: sample, badge: '2', badgeVariant: 'warning' }), + h(DockEntry, { context: ctx, dock: sample, badge: '5', badgeVariant: 'success' }), ])), ), }), diff --git a/packages/core/src/client/webcomponents/components/dock/DockEntry.vue b/packages/core/src/client/webcomponents/components/dock/DockEntry.vue index a94574bd..e095b398 100644 --- a/packages/core/src/client/webcomponents/components/dock/DockEntry.vue +++ b/packages/core/src/client/webcomponents/components/dock/DockEntry.vue @@ -1,8 +1,9 @@