/** PettyComboboxOption — single option within a combobox listbox. */ export class PettyComboboxOption extends HTMLElement { static observedAttributes = ["value", "disabled"]; get value(): string { return this.getAttribute("value") ?? this.textContent?.trim() ?? ""; } get disabled(): boolean { return this.hasAttribute("disabled"); } connectedCallback(): void { this.setAttribute("role", "option"); this.setAttribute("tabindex", "-1"); this.setAttribute("aria-selected", "false"); if (this.disabled) this.setAttribute("aria-disabled", "true"); } attributeChangedCallback(name: string): void { if (name === "disabled") this.setAttribute("aria-disabled", String(this.disabled)); } }