UNPKG

@siberiaweb/components

Version:
84 lines (64 loc) 1.76 kB
import CSS from "./CSS"; import WebComponent from "@siberiaweb/webcomponent/lib/WebComponent"; /** * Позиция панели вкладок. */ export default class TabPanelItem extends WebComponent{ /** * Наименование компонента. */ public static readonly COMPONENT_NAME = "sw-tab-panel-item"; /** * Активная вкладка. */ public static readonly ATTR_ACTIVE: string = "active"; /** * Вкладка. */ public static readonly ATTR_TAB = "tab"; /** * @override */ protected firstConnectedCallback() { super.firstConnectedCallback(); this.classList.add( CSS.TAB_PANEL_ITEM ); } /** * Получение признака, что вкладка активна. */ public get active(): boolean { return this.hasAttribute( TabPanelItem.ATTR_ACTIVE ); } /** * Установка признака, что вкладка активна. * * @param value Значение. */ public set active( value: boolean ) { this.toggleAttribute( TabPanelItem.ATTR_ACTIVE, value ); } /** * Получение вкладки. */ public get tab(): string { return this.getAttributeOrDefault( TabPanelItem.ATTR_TAB, "" ); } /** * Установка вкладки. * * @param value Значение. */ public set tab( value: string ) { this.setAttribute( TabPanelItem.ATTR_TAB, value ); } /** * Конструктор. */ constructor() { super(); } }