Getting Started
UI
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
Tooltip
A popup that displays information related to an element when the element receives keyboard focus or the mouse hovers over it.
import { Component } from '@angular/core';
import { HlmButtonImports } from '@spartan-ng/helm/button';
import { HlmTooltipImports } from '@spartan-ng/helm/tooltip';
@Component({
selector: 'spartan-tooltip-preview',
imports: [HlmTooltipImports, HlmButtonImports],
template: `
<button hlmTooltip="Add to library" hlmBtn variant="outline">Default</button>
`,
})
export class TooltipPreview {}Installation
ng g @spartan-ng/cli:ui tooltip
npx nx g @spartan-ng/cli:ui tooltip
Usage
import { HlmTooltipImports } from '@spartan-ng/helm/tooltip';<button hlmTooltip="Add to library" hlmBtn variant="outline">Default</button>Examples
Simple
import { Component } from '@angular/core';
import { HlmButtonImports } from '@spartan-ng/helm/button';
import { HlmTooltipImports } from '@spartan-ng/helm/tooltip';
@Component({
selector: 'spartan-tooltip-simple',
imports: [HlmButtonImports, HlmTooltipImports],
template: `
<button [hlmTooltip]="'Simple tooltip'" hlmBtn variant="outline">Simple</button>
`,
})
export class TooltipSimple {}Positions
import { Component } from '@angular/core';
import { HlmButtonImports } from '@spartan-ng/helm/button';
import { HlmTooltipImports } from '@spartan-ng/helm/tooltip';
@Component({
selector: 'spartan-tooltip-position',
imports: [HlmButtonImports, HlmTooltipImports],
host: {
class: 'flex flex-col space-y-2',
},
template: `
<button type="button" hlmBtn variant="outline" hlmTooltip="Tooltip content" position="top">Top</button>
<div class="flex space-x-2">
<button type="button" hlmBtn variant="outline" hlmTooltip="Tooltip content" position="left">Left</button>
<button type="button" hlmBtn variant="outline" hlmTooltip="Tooltip content" position="right">Right</button>
</div>
<button type="button" hlmBtn variant="outline" hlmTooltip="Tooltip content" position="bottom">Bottom</button>
`,
})
export class TooltipPosition {}Disabled
import { Component } from '@angular/core';
import { HlmButtonImports } from '@spartan-ng/helm/button';
import { HlmTooltipImports } from '@spartan-ng/helm/tooltip';
@Component({
selector: 'spartan-tooltip-disabled',
imports: [HlmButtonImports, HlmTooltipImports],
template: `
<button [hlmTooltip]="'Simple tooltip'" [tooltipDisabled]="true" hlmBtn variant="outline">Simple</button>
`,
})
export class TooltipDisabled {}Disabled Button with Tooltip
import { Component } from '@angular/core';
import { HlmButtonImports } from '@spartan-ng/helm/button';
import { HlmTooltipImports } from '@spartan-ng/helm/tooltip';
@Component({
selector: 'spartan-tooltip-disabled-button-with-tooltip',
imports: [HlmButtonImports, HlmTooltipImports],
template: `
<div hlmTooltip="Simple tooltip">
<button hlmBtn variant="outline" disabled>Disabled Button</button>
</div>
`,
})
export class TooltipDisabledButtonWithTooltip {}Template
import { Component } from '@angular/core';
import { NgIcon, provideIcons } from '@ng-icons/core';
import { lucidePlus } from '@ng-icons/lucide';
import { HlmButtonImports } from '@spartan-ng/helm/button';
import { HlmTooltipImports } from '@spartan-ng/helm/tooltip';
@Component({
selector: 'spartan-tooltip-template',
imports: [HlmButtonImports, HlmTooltipImports, NgIcon],
providers: [provideIcons({ lucidePlus })],
template: `
<button [hlmTooltip]="tooltip" hlmBtn variant="outline">Simple</button>
<ng-template #tooltip>
<span class="flex items-center">
Add to library
<ng-icon class="ml-2 text-sm" name="lucidePlus" />
</span>
</ng-template>
`,
})
export class TooltipTemplate {}Brain API
BrnTooltipContent
Inputs
| Prop | Type | Default | Description |
|---|---|---|---|
| id | string | `brn-tooltip-${++uniqueId}` | - |
BrnTooltipStringTemplateOutlet
Selector: [brnTooltipStringTemplateOutlet]
ExportAs: brnTooltipStringTemplateOutlet
Inputs
| Prop | Type | Default | Description |
|---|---|---|---|
| brnTooltipStringTemplateOutletContext | BrnTemplateOutletContext | undefined | undefined | - |
| brnTooltipStringTemplateOutlet* (required) | T | TemplateRef<void> | - | - |
BrnTooltip
Selector: [brnTooltip]
ExportAs: brnTooltip
Inputs
| Prop | Type | Default | Description |
|---|---|---|---|
| tooltipDisabled | boolean | false | - |
| position | BrnTooltipPosition | this._config.position ?? top | - |
| brnTooltip | BrnTooltipType | null | - |
| showDelay | number | this._config.showDelay | - |
| hideDelay | number | this._config.hideDelay | - |
Outputs
| Prop | Type | Default | Description |
|---|---|---|---|
| show | void | - | - |
| hide | void | - | - |
Helm API
HlmTooltip
Selector: [hlmTooltip]
On This Page
Stop configuring. Start shipping.
Zerops powers spartan.ng and Angular teams worldwide.
One-command deployment. Zero infrastructure headaches.
Deploy with Zerops