ui/Icon

An unstyled icon component to be customized by a theme or application.

import Icon from '@enact/ui/Icon';

Members

IconComponent

An Icon component.

import Icon from '@enact/ui/Icon';
Wrapped with: ui/Icon.IconDecorator

IconBaseComponent

A basic icon component structure without any behaviors applied to it.

import {IconBase} from '@enact/ui/Icon';
Properties
children
StringObject

The icon content.

May be specified as either:

  • A string that represents an icon from the iconList,

  • An HTML entity string, Unicode reference or hex value (in the form '0x...'),

  • A URL specifying path to an icon image, or

  • An object representing a resolution independent resource (See ui/resolution).

componentRef
ObjectFunction

Called with a reference to the root component.

When using ui/Icon.Icon, the ref prop is forwarded to this component as componentRef.

css
Object

Customizes the component by mapping the supplied collection of CSS class names to the corresponding internal elements and states of this component.

The following classes are supported:

  • icon - The root component class

  • dingbat - Applied when the value of icon is not found in iconList

  • large - Applied when size prop is 'large'

  • pressed - Applied when pressed prop is true

  • small - Applied when size prop is 'small'

flip
'both''horizontal''vertical'

Flip the icon horizontally, vertically or both.

iconList
Object

The full list (hash) of supported icons.

The keys of this hash are the unique names of each icon. The values are the unicode characters to insert in the icon. These will typically map to glyphs in your icon-font. The format of the keys can be character, glyph, or entity reference that correctly renders in a React + JSX string.

Default: {}
pressed
Boolean

Applies the pressed CSS class.

Default: false
size
String

The size of the button.

Applies the CSS class which can be customized by theming.

IconDecoratorHigher-Order Component

A higher-order component that adds behavior to Icon.

import {IconDecorator} from '@enact/ui/Icon';
ArrayBooleanFunctionModuleNumberObjectString