{{!
  Copyright (c) HashiCorp, Inc.
  SPDX-License-Identifier: BUSL-1.1
}}

{{yield}}
<li role="none" ...attributes>
{{#if hasConfirmation}}
  <label for={{concat menu.confirm guid}} role="menuitem" tabindex="-1" onkeypress={{menu.keypressClick}}>
    <YieldSlot @name="label">{{yield}}</YieldSlot>
  </label>
  <div role="menu">
    <YieldSlot @name="confirmation" @params={{
      block-params (component 'confirmation-alert'
        onclick=(queue (action menu.clickTrigger) (action onclick))
        name=(concat menu.confirm guid)
      )
    }}>{{yield}}</YieldSlot>
  </div>
{{else if href}}
{{#let (string-includes href '://') as |external|}}
  <a
    role="menuitem" tabindex="-1"
    onclick={{action menu.clickTrigger}}
    href={{href}}
    target={{if external '_blank'}}
    rel={{if external 'noopener noreferrer'}}
  >
    <YieldSlot @name="label">
    {{yield}}
    </YieldSlot>
  </a>
{{/let}}
{{else}}
<button
  type="button"
  role="menuitem"
  aria-selected={{if selected 'true'}}
  tabindex="-1"
  onclick={{queue
    (action (or this.onclick (noop)))
    (action (if this.close menu.clickTrigger (noop)))
  }}>
    <YieldSlot @name="label">
      {{yield}}
    </YieldSlot>
  </button>
{{/if}}
</li>

