{{#if def.headerKey}}
  <div class='modal__header' data-test={{hook 'modal-header'}}>
    <h2 class='modal__title' data-test={{hook 'modal-title'}}>
      {{t def.headerKey}}
    </h2>
  </div>
{{/if}}

<div class='modal__body' data-test={{hook 'modal-content'}}>
  <div class="modal__body__container">
    {{#if def.content}}
      <p class='modal__content'>{{def.content}}</p>
    {{else if def.contentPartial}}
      {{partial def.contentPartial}}
    {{else if def.contentComponent}}
      {{component def.contentComponent customAttrs=def.contentComponentAttrs exposeFormTask=(action (mut formTask))}}
    {{/if}}
  </div>
</div>

{{#if def.actions}}
  <div class='modal__footer {{if (eq def.actions.length 1) 'btn-bar--floating'}}' data-test={{hook 'btn-bar'}}>
    {{#each def.actions as |action|}}
      <button class='btn btn--modal {{if (eq action def.actions.lastObject) "btn--modal--preferred"}}'
          data-test={{hook (concat 'btn-action-' action.action)}}
          onclick={{perform finishTask action}}
          disabled={{finishTask.isRunning}}>
        {{#if (and (eq action selectedAction) finishTask.isRunning)}}
          {{inline-svg 'spinner' class='icon spinner'}}
          {{t action.chosenLabelKey}}
        {{else}}
          {{t action.labelKey}}
        {{/if}}
      </button>
    {{/each}}
  </div>
{{/if}}
