The Icon component renders an SVG image inline with text content.

Tag

The tag for this component is <hawksearch-icon>.

Attributes

Name Type Default Value Required
name IconName Yes
size string number 1em

CSS Variables

The following CSS classes are available that allow you to bypass the Shadow DOM and customize the appearance of this component without overriding the Handlebars template:

Name Default Value
--icon-color currentColor
--icon-font-size 1em

Default Template

The following is the default Handlebars template for this component. To create a custom template, it is recommended to use this as a starting point. {@embed ./icon.component.hbs}

Hierarchy

Properties

bindFromEvent: boolean = false
componentName: keyof HawkSearchComponents = 'icon'
contentModel?: IconComponentModel

The data bound to the Handlebars template.

data?: undefined

The data bound to the component.

defaultHtml: any = defaultHtml
handlebars: typeof Handlebars = HawkSearch.handlebars

The Handlebars reference shared by all HawkSearch components.

Accessors

  • get configuration(): undefined | TConfig
  • The optional configuration object for this component.

    Returns undefined | TConfig

  • get rootElement(): ParentNode
  • The root element which should be used for querying any child elements. This resolves to this.shadowRoot if the Shadow DOM is enabled, otherwise this.

    Returns ParentNode

Methods

  • After the component is rendered, this method is called to bind any child components.

    Returns void

  • Replaces placeholders in a given string with values from a data object.

    Returns

    The template string with all placeholders replaced by the values specified in values.

    Parameters

    • template: string

      The template string.

    • values: Record<string, string>

      The object containing properties which will be bound to template.

    Returns string

  • After the component is rendered, this method is called for any additional processing (such as attaching event listeners) which needs to occur.

    Returns void

  • Optional method that can be overwritten to register Handlebars helper functions which can be accessed from the template. For more information, see Custom Helpers.

    Returns void

  • Determines whether the data meets the necessary conditions to perform data binding and render content.

    Returns

    Whether the component should be rendered. If false, the component will have empty contents and be set to display: none;.

    Returns boolean