Getting Started
Components
- Accordion
- Alert
- Alert Dialog
- Aspect Ratio
- Autocomplete
- Avatar
- Badge
- Breadcrumb
- Button
- Button Group
- Calendar
- Card
- Carousel
- Checkbox
- Collapsible
- Combobox
- Command
- Context Menu
- Data Table
- Date Picker
- Dialog
- Dropdown Menu
- Empty
- Field
- Form Field
- Hover Card
- Icon
- Input Group
- Input OTP
- Input
- Item
- Kbd
- Label
- Menubar
- Navigation Menu
- Pagination
- Popover
- Progress
- Radio Group
- Resizable
- Scroll Area
- Select
- Separator
- Sheet
- Sidebar
- Skeleton
- Slider
- Sonner (Toast)
- Spinner
- Switch
- Table
- Tabs
- Textarea
- Toggle
- Toggle Group
- Tooltip
Stack
Hover Card
For sighted users to preview content available behind a link.
import { Component } from '@angular/core';
import { NgIcon, provideIcons } from '@ng-icons/core';
import { lucideCalendar } from '@ng-icons/lucide';
import { BrnHoverCardImports } from '@spartan-ng/brain/hover-card';
import { HlmAvatarImports } from '@spartan-ng/helm/avatar';
import { HlmButton } from '@spartan-ng/helm/button';
import { HlmHoverCardImports } from '@spartan-ng/helm/hover-card';
import { HlmIcon } from '@spartan-ng/helm/icon';
@Component({
selector: 'spartan-hover-card-preview',
imports: [BrnHoverCardImports, HlmHoverCardImports, HlmButton, NgIcon, HlmIcon, HlmAvatarImports],
providers: [provideIcons({ lucideCalendar })],
template: `
<brn-hover-card>
<button hlmBtn variant="link" brnHoverCardTrigger>@analogjs</button>
<hlm-hover-card-content *brnHoverCardContent class="w-80">
<div class="flex justify-between space-x-4">
<hlm-avatar variant="small" id="avatar-small">
<img src="https://analogjs.org/img/logos/analog-logo.svg" alt="AnalogLogo" hlmAvatarImage />
<span class="bg-red-600 text-red-800" hlmAvatarFallback>AN</span>
</hlm-avatar>
<div class="space-y-1">
<h4 class="text-sm font-semibold">@analogjs</h4>
<p class="text-sm">The Angular meta-framework – build Angular applications faster.</p>
<div class="flex items-center pt-2">
<ng-icon hlm size="sm" name="lucideCalendar" class="mr-2 opacity-70" />
<span class="text-muted-foreground text-xs">Joined December 2021</span>
</div>
</div>
</div>
</hlm-hover-card-content>
</brn-hover-card>
`,
})
export class HoverCardPreview {}Installation
ng g @spartan-ng/cli:ui hovercard
npx nx g @spartan-ng/cli:ui hovercard
Usage
import {
BrnHoverCard
BrnHoverCardContent
BrnHoverCardTrigger
} from '@spartan-ng/brain/hover-card';
import {
HlmHoverCardContent
} from '@spartan-ng/helm/hover-card';<brn-hover-card>
<button hlmBtn variant="link" brnHoverCardTrigger>@analogjs</button>
<hlm-hover-card-content *brnHoverCardContent>The Angular meta-framework.</hlm-hover-card-content>
</brn-hover-card>Brain API
BrnHoverCardContent
Selector: [brnHoverCardContent]
ExportAs: brnHoverCardContent
BrnHoverCardTrigger
Selector: [brnHoverCardTrigger]:not(ng-container),[brnHoverCardTriggerFor]:not(ng-container)
ExportAs: brnHoverCardTrigger
Inputs
| Prop | Type | Default | Description |
|---|---|---|---|
| showDelay | unknown | 300 | - |
| hideDelay | unknown | 500 | - |
| animationDelay | unknown | 100 | - |
| sideOffset | unknown | 5 | - |
| align | 'top' | 'bottom' | bottom | - |
| brnHoverCardTriggerFor | TemplateRef<unknown> | BrnHoverCardContent | undefined | undefined | - |
BrnHoverCard
Selector: brn-hover-card
Helm API
HlmHoverCardContent
Selector: hlm-hover-card-content
Inputs
| Prop | Type | Default | Description |
|---|---|---|---|
| class | ClassValue | - | - |
On This Page
Stop configuring. Start shipping.
Zerops powers spartan.ng and Angular teams worldwide.
One-command deployment. Zero infrastructure headaches.
Deploy with Zerops