/**
 * Copyright Aquera Inc 2025
 *
 * This source code is licensed under the BSD-3-Clause license found in the
 * LICENSE file in the root directory of this source tree.
 */

import { html, CSSResultArray, TemplateResult } from 'lit';
import { customElement, property} from 'lit/decorators.js';
import {styles} from './nile-inline-sidebar-item-header.css';
import NileElement from '../internal/nile-element';


/**
 * Nile inline-sidebar-item-header component.
 *
 * @tag nile-inline-sidebar-item-header
 *
 */
@customElement('nile-inline-sidebar-item-header')
export class NileInlineSidebarItemHeader extends NileElement {
	@property({ type: Boolean, reflect: true, attribute: true }) active = false;
	@property({ type: Boolean, reflect: true, attribute: true }) disabled = false;

	/**
	 * The styles for nile-inline-sidebar-item-header
	 * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`
	 */
	public static get styles(): CSSResultArray {
		return [styles];
	}

	/* #endregion */

	/* #region Methods */

	/**
	 * Render method
	 * @slot This is a slot test
	 */
	public render(): TemplateResult {
		return html`
		<div class="item-header" part="item-header">
		<div class="prefix-content" part="prefix-content">
		<slot name="prefix"></slot>
		</div>
		<div class="body-content" part="body-content">
		<div class="header-text" part="header-text">
			<slot name="text"></slot>
			<slot></slot>
		</div>
		</div>
		<div class="suffix-content" part="suffix-content">
			<slot name="suffix"></slot>
		</div>
		</div>
			`;
	}

	/* #endregion */
}

export default NileInlineSidebarItemHeader;

declare global {
  interface HTMLElementTagNameMap {
    'nile-inline-sidebar-item-header': NileInlineSidebarItemHeader;
  }
}