Back to Consul

class-map

ui/packages/consul-ui/app/helpers/class-map.mdx

1.22.71.1 KB
Original Source

class-map

{{class-map}} is used to easily add a list of classes, conditionally, and have them all formatted nicely ready to be printed in a DOM class attribute.

For ease, as well as using entries, you can also just provide a simple string without the boolean and that class will always be added.

hbs
<figure>
  <figcaption>
    The correct classes added/omitted
  </figcaption>
  <div
    class={{class-map
      'component-name'
      (array 'add-this-class' true)
      (array 'dont-add-this-class' false)
      'simple-string-class'
    }}
    ...attributes
  >
    <code>
      class="{{class-map
        (array 'add-this-class' true)
        (array 'dont-add-this-class' false)
        'simple-string-class'
      }}"
    </code>
  </div>
</figure>

Positional Arguments

ArgumentTypeDefaultDescription
entries(classInfo | string)[]An array of 'entry-like' arrays of classInfos to map

Types

TypeDefaultDescription
classInfo([string, boolean] | [string])