${this.renderRipple()} ${this.renderFocusRing()}
        
        
        
        ${this.renderBody()}
      
    `);
  }
  /**
   * Renders the root list item.
   *
   * @param content the child content of the list item.
   */
  renderListItem(t) {
    const a = this.type === "link";
    let o;
    switch (this.type) {
      case "link":
        o = p`a`;
        break;
      case "button":
        o = p`button`;
        break;
      default:
      case "text":
        o = p`li`;
        break;
    }
    const b = this.type !== "text", x = a && this.target ? this.target : s;
    return k`
      <${o}
        id="item"
        tabindex="${this.isDisabled || !b ? -1 : 0}"
        ?disabled=${this.isDisabled}
        role="listitem"
        aria-selected=${this.ariaSelected || s}
        aria-checked=${this.ariaChecked || s}
        aria-expanded=${this.ariaExpanded || s}
        aria-haspopup=${this.ariaHasPopup || s}
        class="list-item ${I(this.getRenderClasses())}"
        href=${this.href || s}
        target=${x}
        @focus=${this.onFocus}
      >${t}${o}>
    `;
  }
  /**
   * Handles rendering of the ripple element.
   */
  renderRipple() {
    return this.type === "text" ? s : l`