Skip to content

Latest commit

 

History

History
131 lines (67 loc) · 3.73 KB

icon.md

File metadata and controls

131 lines (67 loc) · 3.73 KB

Icon

Enables you to display basic icons that match the design system sizes, colors, and typography.

Properties

alt

Specifies alternate text for a custom icon. We recommend that you provide this for accessibility. This property is ignored if you use a predefined icon or if you set your custom icon using the svg slot.

Type: String

Required: No

className

Adds the specified classes to the root element of the component.

Type: String

Required: No

id

Adds the specified ID to the root element of the component.

Type: String

Required: No

name

Specifies the icon to be displayed.

Type: String

Valid values: add-plus | angle-left-double | angle-left | angle-right-double | angle-right | angle-up | angle-down | arrow-left | bug | call | calendar | caret-down-filled | caret-down | caret-left-filled | caret-right-filled | caret-up-filled | caret-up | contact | close | copy | download | edit | ellipsis | envelope | expand | external | file-open | file | filter | folder-open | folder | heart | key | lock-private | menu | microphone | notification | refresh | search | settings | share | status-in-progress | status-info | status-negative | status-pending | status-positive | status-stopped | status-warning | treeview-collapse | treeview-expand | undo | unlocked | upload | user-profile | view-full | view-horizontal | view-vertical | zoom-in | zoom-out

Required: No

size

Specifies the size of the icon. If you set size to inherit, an icon size will be assigned based on the icon's inherited line height. For icons used alongside text, ensure the icon is placed inside the acompanying text tag. The icon will be vertically centered based on the height.

Type: String

Default: "normal"

Valid values: small | normal | medium | big | large | inherit

Required: No

url

Specifies the URL of a custom icon. Use this property if the icon you want isn't available, and your custom icon cannot be an SVG. For SVG icons, use the svg slot instead. If you set both url and svg, svg will take precedence.

Type: String

Required: No

variant

Specifies the color variant of the icon. The normal variant picks up the current color of its context.

Type: String

Default: "normal"

Valid values: normal | disabled | error | inverted | link | subtle | success | warning

Required: No

Slots

svg

Specifies the SVG of a custom icon. Use this property if the icon you want isn't available, and you want your custom icon to inherit colors dictated by variant or hover states. When this property is set, the component will be decorated with aria-hidden="true". Ensure that the svg element:

  • has attribute focusable="false".
  • has viewBox="0 0 16 16".

If you set the svg element as the root node of the slot, the component will automatically

  • set stroke="currentColor", fill="none", and vertical-align="top".
  • set the stroke width based on the size of the icon.
  • set the width and height of the SVG element based on the size of the icon.

If you don't want these styles to be automatically set, wrap the svg element into a span and ensure icon size is not set to inherit. You can still set the stroke to currentColor to inherit the color of the surrounding elements.

If you set both url and svg, svg will take precedence.

Note: Remember to remove any additional elements (for example: defs) and related CSS classes from SVG files exported from design software. In most cases, they aren't needed, as the svg element inherits styles from the icon component.

License Summary

The documentation is made available under the Creative Commons Attribution-ShareAlike 4.0 International License. See the LICENSE file.