@esri/calcite-components
Version:
Web Components for Esri's Calcite Design System.
50 lines (49 loc) • 1.9 kB
TypeScript
/// <reference path="../../index.d.ts" />
import type { PublicLitElement as LitElement } from "@arcgis/lumina";
import type { Appearance, Position, IconType, Scale, SelectionMode } from "../interfaces.js";
/**
* @cssproperty [--calcite-accordion-border-color] - Specifies the component's border color.
* @cssproperty [--calcite-accordion-background-color] - Specifies the component's background color.
* @cssproperty [--calcite-accordion-text-color] - Specifies the component's text color.
* @cssproperty [--calcite-accordion-text-color-hover] - Specifies the component's main text color on hover.
* @cssproperty [--calcite-accordion-text-color-press] - Specifies the component's main text color when pressed.
* @slot - A slot for adding `calcite-accordion-item`s. `calcite-accordion` cannot be nested, however `calcite-accordion-item`s can.
*/
export abstract class Accordion extends LitElement {
/**
* Specifies the appearance of the component.
*
* @default "solid"
*/
accessor appearance: Extract<"solid" | "transparent", Appearance>;
/**
* Specifies the position of the expand and collapse icons within `calcite-accordion-item`s
*
* @default "end"
*/
accessor iconPosition: Extract<"start" | "end", Position>;
/**
* Specifies the type of the icon in the header.
*
* @default "chevron"
*/
accessor iconType: Extract<"chevron" | "caret" | "plus-minus", IconType>;
/**
* Specifies the size of the component.
*
* @default "m"
*/
accessor scale: Scale;
/**
* Specifies the selection mode of the component, where:
*
* `"multiple"` allows any number of selections,
*
* `"single"` allows only one selection, and
*
* `"single-persist"` allows one selection and prevents de-selection.
*
* @default "multiple"
*/
accessor selectionMode: Extract<"single" | "single-persist" | "multiple", SelectionMode>;
}