Skip to content

Menubar ​

Loading...

<flint-menubar-shortcut> ​

Displays a keyboard shortcut hint inside a menu item.

  • Tag: <flint-menubar-shortcut>
  • Class: FlintMenubarShortcut

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarShortcut } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-shortcut></flint-menubar-shortcut>

Slots ​

NameDescription
(default)Shortcut text, e.g. ⌘T or Ctrl+N.

CSS Custom Properties ​

PropertyDefault
--flint-text-color—
--flint-font-family—
--flint-border-color—
--flint-text-color-muted—
--flint-primary-color—

<flint-menubar-separator> ​

A hairline separator between menu groups.

  • Tag: <flint-menubar-separator>
  • Class: FlintMenubarSeparator

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarSeparator } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-separator></flint-menubar-separator>

<flint-menubar-group> ​

Groups related menu items. Optional heading shows a label.

  • Tag: <flint-menubar-group>
  • Class: FlintMenubarGroup

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarGroup } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-group></flint-menubar-group>

Properties ​

PropertyAttributeTypeDefaultDescription
headingheadingstring''Label text displayed above the group.

<flint-menubar-item> ​

A single interactive option inside a menubar dropdown.

  • Tag: <flint-menubar-item>
  • Class: FlintMenubarItem

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarItem } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-item></flint-menubar-item>

Properties ​

PropertyAttributeTypeDefaultDescription
disableddisabledbooleanfalseWhether the item is non-interactive.
highlightedhighlightedbooleanfalseWhether the item is visually highlighted (e.g. via keyboard or hover).
insetinsetbooleanfalseWhether the item label is inset to align with checkbox/radio items.
valuevaluestring''Explicit value for the select event. Falls back to label text (excludes shortcut).

Events ​

EventDetailDescription
flint-menubar-item-select&#123; value: string &#125;Fired on activation. detail: &#123; value: string &#125;

Slots ​

NameDescription
(default)Item label text plus optional &lt;flint-menubar-shortcut&gt;.

Methods ​

MethodDescription
select(): voidActivate the item — fires select event.

<flint-menubar-checkbox-item> ​

A toggleable checkbox menu item.

  • Tag: <flint-menubar-checkbox-item>
  • Class: FlintMenubarCheckboxItem

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarCheckboxItem } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-checkbox-item></flint-menubar-checkbox-item>

Properties ​

PropertyAttributeTypeDefaultDescription
checkedcheckedbooleanfalseWhether the checkbox item is currently checked.
disableddisabledbooleanfalseWhether the item is non-interactive.
highlightedhighlightedbooleanfalseWhether the item is visually highlighted (e.g. via keyboard or hover).
valuevaluestring''Explicit value for the change event. Falls back to label text (excludes shortcut).

Events ​

EventDetailDescription
flint-menubar-checkbox-change&#123; checked: boolean, value: string &#125;detail: &#123; checked: boolean, value: string &#125;

Methods ​

MethodDescription
toggle(): void

<flint-menubar-radio-item> ​

A radio option inside a <flint-menubar-radio-group>.

  • Tag: <flint-menubar-radio-item>
  • Class: FlintMenubarRadioItem

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarRadioItem } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-radio-item></flint-menubar-radio-item>

Properties ​

PropertyAttributeTypeDefaultDescription
valuevaluestring''Value identifying this radio option within its group.
checkedcheckedbooleanfalseWhether this radio item is currently selected.
disableddisabledbooleanfalseWhether the item is non-interactive.
highlightedhighlightedbooleanfalseWhether the item is visually highlighted (e.g. via keyboard or hover).

Methods ​

MethodDescription
select(): void

<flint-menubar-radio-group> ​

Manages single-select radio items.

  • Tag: <flint-menubar-radio-group>
  • Class: FlintMenubarRadioGroup

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarRadioGroup } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-radio-group></flint-menubar-radio-group>

Properties ​

PropertyAttributeTypeDefaultDescription
valuevaluestring''The value of the currently selected radio item.

Events ​

EventDetailDescription
flint-menubar-radio-change&#123; value: string &#125;detail: &#123; value: string &#125;

<flint-menubar-sub-content> ​

The dropdown panel of a sub-menu. Positioned to the right of the trigger. Auto-flips left when the panel would overflow the viewport edge.

  • Tag: <flint-menubar-sub-content>
  • Class: FlintMenubarSubContent

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarSubContent } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-sub-content></flint-menubar-sub-content>

Properties ​

PropertyAttributeTypeDefaultDescription
openopenbooleanfalseWhether the sub-menu dropdown panel is visible.

<flint-menubar-sub-trigger> ​

Trigger for a sub-menu. Shows an arrow indicator.

  • Tag: <flint-menubar-sub-trigger>
  • Class: FlintMenubarSubTrigger

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarSubTrigger } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-sub-trigger></flint-menubar-sub-trigger>

Properties ​

PropertyAttributeTypeDefaultDescription
highlightedhighlightedbooleanfalseWhether the trigger is visually highlighted (e.g. via keyboard or hover).
disableddisabledbooleanfalseWhether the trigger is non-interactive.
insetinsetbooleanfalseWhether the trigger label is inset to align with checkbox/radio items.
expandedexpandedbooleanfalseSet by the parent flint-menubar-sub to reflect open state for aria-expanded.

<flint-menubar-sub> ​

Wraps a sub-trigger and sub-content pair. Opens on hover/focus and ArrowRight; closes on ArrowLeft or blur.

  • Tag: <flint-menubar-sub>
  • Class: FlintMenubarSub

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarSub } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-sub></flint-menubar-sub>

Methods ​

MethodDescription
show(): void
showImmediate(): voidOpens the sub-menu immediately without the hover delay. Use for keyboard interactions.
hide(): void
hideImmediate(): void

<flint-menubar-content> ​

The dropdown content panel for a menubar menu. Positioned absolutely below the trigger.

  • Tag: <flint-menubar-content>
  • Class: FlintMenubarContent

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarContent } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-content></flint-menubar-content>

Properties ​

PropertyAttributeTypeDefaultDescription
openopenbooleanfalseWhether the content dropdown panel is visible.

CSS Custom Properties ​

PropertyDefault
--flint-menubar-content-bgvar(--flint-surface-1

Methods ​

MethodDescription
handleKeyDown(e: KeyboardEvent): voidHandle keyboard navigation inside the content panel.
resetHighlight(): void

<flint-menubar-trigger> ​

The trigger button for a menubar menu.

  • Tag: <flint-menubar-trigger>
  • Class: FlintMenubarTrigger

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarTrigger } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-trigger></flint-menubar-trigger>

Properties ​

PropertyAttributeTypeDefaultDescription
activeactivebooleanfalseWhether the trigger's associated menu is currently open.
disableddisabledbooleanfalseWhether the trigger is non-interactive.

Slots ​

NameDescription
(default)Trigger label text.

CSS Custom Properties ​

PropertyDefault
--flint-menubar-trigger-hover-bgvar(--flint-hover-color

Methods ​

MethodDescription
setFocusable(v: boolean): void

<flint-menubar-menu> ​

Wraps a trigger and content pair for a single menu in the menubar.

  • Tag: <flint-menubar-menu>
  • Class: FlintMenubarMenu

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubarMenu } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar-menu></flint-menubar-menu>

Properties ​

PropertyAttributeTypeDefaultDescription
disableddisabledbooleanfalseDisables this menu: the trigger is non-interactive and keyboard nav skips it.

Methods ​

MethodDescription
open(): void
close(): void

<flint-menubar> ​

A visually persistent horizontal menu bar, common in desktop applications. Hosts one or more <flint-menubar-menu> children.

  • Tag: <flint-menubar>
  • Class: FlintMenubar

Import ​

ts
import '@getufy/flint-ui'; // auto-registers all
// or
import { FlintMenubar } from '@getufy/flint-ui';

Usage ​

html
<flint-menubar></flint-menubar>

Properties ​

PropertyAttributeTypeDefaultDescription
labellabelstring''Accessible label for the menubar region. Defaults to "Menu bar".

Events ​

EventDetailDescription
flint-menubar-item-select—Bubbles from items.
flint-menubar-checkbox-change—Bubbles from checkbox items.
flint-menubar-radio-change—Bubbles from radio groups.

Slots ​

NameDescription
(default)One or more &lt;flint-menubar-menu&gt; elements.

CSS Parts ​

NameDescription
barThe menubar container.

CSS Custom Properties ​

PropertyDefault
--flint-menubar-highlight-bgvar(--flint-hover-color
--flint-menubar-content-bgvar(--flint-surface-1
--flint-menubar-trigger-hover-bgvar(--flint-hover-color
--flint-menubar-bgvar(--flint-surface-1

Methods ​

MethodDescription
closeAll(): voidClose all menus.