<label class="{{CLASS_NAMES.ROOT}} {{mdcClassNames}} {{unless valid CLASS_NAMES.INVALID}} {{if fullwidth "mdc-textfield--fullwidth"}} {{if disabled CLASS_NAMES.DISABLED}} {{if value CLASS_NAMES.UPGRADED}} {{if multiline "mdc-textfield--multiline"}} {{if box "mdc-textfield--box"}}">
  {{#if multiline}}
    {{mdc-textfield/textarea
      value=value
      onfocus=(action "handle" "focus")
      onblur=(action "handle" "blur")
      oninput=(action "handleInput")
      onkeydown=(action "handle" "keydown")
      required=required
      disabled=disabled
      rows=rows
      cols=cols
    }}
  {{else}}
    {{mdc-textfield/input
      value=value
      onfocus=(action "handle" "focus")
      onblur=(action "handle" "blur")
      oninput=(action "handleInput")
      onkeydown=(action "handle" "keydown")
      required=required
      placeholder=(if label (if isFocused placeholder) placeholder)
      disabled=disabled
      readonly=readonly
      type=type
    }}
    {{#if box}}
      <div class="mdc-textfield__bottom-line"></div>
    {{/if}}
  {{/if}}
  {{#mdc-textfield/label class-names=labelClassnames}}
    {{label}}
  {{/mdc-textfield/label}}
</label>
{{#mdc-textfield/helptext attribute-pairs=helpTextAttrs class-names=helptextClassnames}}
  {{helptext}}
{{/mdc-textfield/helptext}}
