@govbr-ds/webcomponents
Version:
Biblioteca de Web Components baseado no GovBR-DS
104 lines (103 loc) • 3.08 kB
TypeScript
import { EventEmitter } from '../../stencil-public-runtime';
/**
* Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/tab-item?tab=designer).
*
* @slot default - Slot com os componentes item da tab
*/
export declare class Tab {
el: HTMLBrTabElement;
elementInternals: ElementInternals;
/**
* A propriedade 'density' define a densidade do componente.
* Os valores possíveis são 'small', 'medium' e 'large'.
* @type {string}
* @default 'medium'
*/
readonly density: 'small' | 'medium' | 'large';
/**
* Define se o Tab usará um esquema de cores.
* Apenas o esquema 'dark' está disponível para o modo escuro.
* @type {string}
*/
colorMode: string;
/**
* A propriedade 'activeTab' define o tab ativo.
*/
activeTab: string;
/**
* A propriedade 'tabItems' lista dos tabs items .
*/
tabItems: Element[];
/**
* A propriedade 'tabContent' armazena o conteúdo dos tabs.
* @type {string}
* @memberof Tab
*/
tabContent: string;
private maxWidth;
private hostStyle;
private containerStyle;
private mutationObserver;
private focusElementIndex;
brDidActive: EventEmitter;
private getCssClassMap;
private setupHostStyles;
private updateContainerStyles;
/**
* Obtém os elementos de tab items dentro do componente.
* Se não houver elementos, emite um aviso.
* @private
* @returns {void}
* @memberof Tab
*/
private getTabItemsElements;
/**
* Atualiza o conteúdo dos tabs com base nos elementos de tab items.
* Cada tab item é transformado em um painel de tab com o ID apropriado.
* O painel ativo é marcado com a classe 'active'.
* @private
* @returns {void}
* @memberof Tab
* @description
*/
private updateTabContent;
/**
* Atualiza a largura máxima do componente com base na largura da janela.
* Se a largura da janela não estiver disponível, define a largura máxima como 100%.
* @private
* @returns {void}
* @memberof Tab
* @description
* Esta função calcula a largura máxima do componente com base na posição do elemento na tela.
*/
private updateMaxWidth;
/**
* Obtém o ID do tab item.
* @private
* @param {Element} tab - O elemento do tab item.
* @returns {string} - O ID do tab item.
* @memberof Tab
* @description
* Esta função retorna o ID do tab item, que é armazenado no atributo 'tab-item-id'.
*/
private getTabID;
/**
*
* @param tab
* @returns
*/
private isTabActive;
private verifActiveTab;
activeTabChanged(newValue: string): void;
/**
* Evento de navegação por teclado
* @param event
*/
private handleKeyNavigation;
componentWillLoad(): void;
componentDidLoad(): void;
disconnectedCallback(): void;
private handleTabClick;
private setActiveTab;
render(): any;
}