UNPKG

@govbr-ds/webcomponents

Version:

Biblioteca de Web Components baseado no GovBR-DS

1,507 lines 309 kB
{ "schemaVersion": "1.0.0", "readme": "", "modules": [ { "kind": "javascript-module", "path": "components/avatar.js", "declarations": [ { "kind": "class", "description": "Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/avatar?tab=designer).", "name": "Avatar", "members": [ { "kind": "field", "name": "el", "type": { "text": "HTMLBrAvatarElement" }, "description": "Referência ao elemento host do componente.\nUtilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente." }, { "kind": "field", "name": "density", "type": { "text": "'small' | 'medium' | 'large'" }, "default": "'medium'", "description": "Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido." }, { "kind": "method", "name": "handleDensityChange", "parameters": [ { "name": "newValue", "type": { "text": "'small' | 'medium' | 'large'" } } ] }, { "kind": "field", "name": "customId", "type": { "text": "string" }, "default": "`br-avatar-${avatarId++}`", "description": "Identificador único.\nCaso não seja fornecido, um ID gerado automaticamente será usado." }, { "kind": "field", "name": "src", "type": { "text": "string" }, "description": "URL da imagem a ser exibida no avatar do tipo 'fotográfico'.\nDeve ser uma URL válida que aponta para a imagem desejada." }, { "kind": "field", "name": "alt", "type": { "text": "string" }, "default": "'Imagem do avatar'", "description": "Texto alternativo (alt) associado à imagem do avatar. Essencial para acessibilidade e SEO.\nDeve descrever de forma clara e concisa o conteúdo da imagem, por exemplo: \"Foto de perfil de João Silva\"." }, { "kind": "field", "name": "isIconic", "type": { "text": "boolean" }, "default": "false", "description": "Indica se o avatar deve ser exibido como um ícone em vez de uma imagem fotográfica.\nSe definido como verdadeiro, o avatar será exibido como um ícone." }, { "kind": "field", "name": "text", "type": { "text": "string" }, "description": "Texto exibido no avatar do tipo 'letra'.\nEsse texto será mostrado em vez de uma imagem e pode ser usado para representar iniciais ou outras informações textuais." }, { "kind": "field", "name": "iconWidth", "type": { "text": "string" }, "description": "Largura do ícone no avatar do tipo icônico" }, { "kind": "field", "name": "iconHeight", "type": { "text": "string" }, "description": "Altura do ícone no avatar do tipo icônico" }, { "kind": "field", "name": "iconMarginTop", "type": { "text": "string" }, "description": "Ajuste para a margem de cima do ícone no avatar do tipo icônico" }, { "kind": "field", "name": "disabled", "type": { "text": "boolean" }, "default": "false", "description": "Define se o avatar está desabilitado" }, { "kind": "field", "name": "hasError", "type": { "text": "boolean" }, "privacy": "private", "default": "false" }, { "kind": "method", "name": "getCssClassMap", "privacy": "private", "return": { "type": { "text": "CssClassMap" } }, "description": "Gera um mapa de classes CSS com base nas propriedades do componente.\nO mapa de classes determina quais classes CSS devem ser aplicadas\nao elemento host do componente, ajustando sua aparência." }, { "kind": "field", "name": "iconSizes", "type": { "text": "object" }, "privacy": "private", "default": "{\n small: { height: '32px', width: '40px' },\n medium: { height: '80px', width: '88px' },\n large: { height: '128px', width: '136px' },\n }" }, { "kind": "field", "name": "iconMarginTops", "type": { "text": "object" }, "privacy": "private", "default": "{\n small: '0.7em',\n medium: '1em',\n large: '0.62em',\n }" }, { "kind": "field", "name": "handleImageError", "privacy": "private" }, { "kind": "method", "name": "renderAvatar", "privacy": "private" }, { "kind": "method", "name": "render" } ], "attributes": [ { "name": "density", "fieldName": "density", "type": { "text": "'small' | 'medium' | 'large'" } }, { "name": "custom-id", "fieldName": "customId", "type": { "text": "string" } }, { "name": "src", "fieldName": "src", "type": { "text": "string" } }, { "name": "alt", "fieldName": "alt" }, { "name": "is-iconic", "fieldName": "isIconic", "type": { "text": "boolean" } }, { "name": "text", "fieldName": "text", "type": { "text": "string" } }, { "name": "icon-width", "fieldName": "iconWidth", "type": { "text": "string" } }, { "name": "icon-height", "fieldName": "iconHeight", "type": { "text": "string" } }, { "name": "icon-margin-top", "fieldName": "iconMarginTop", "type": { "text": "string" } }, { "name": "disabled", "fieldName": "disabled" } ], "tagName": "br-avatar", "events": [], "customElement": true } ], "exports": [ { "kind": "js", "name": "Avatar", "declaration": { "name": "Avatar", "module": "components/avatar.js" } }, { "kind": "custom-element-definition", "name": "br-avatar", "declaration": { "name": "Avatar", "module": "components/avatar.js" } } ] }, { "kind": "javascript-module", "path": "components/breadcrumb.js", "declarations": [ { "kind": "class", "description": "", "name": "Breadcrumb", "members": [ { "kind": "field", "name": "el", "type": { "text": "HTMLBrBreadcrumbElement" } }, { "kind": "field", "name": "elementInternals", "type": { "text": "ElementInternals" } }, { "kind": "field", "name": "customId", "type": { "text": "string" }, "default": "`br-breadcrumb-${breadcrumbId++}`", "description": "Identificador único.\nCaso não seja fornecido, um ID gerado automaticamente será usado." }, { "kind": "field", "name": "homeUrl", "type": { "text": "string" }, "default": "'/'", "description": "URL para home.\nCaso não seja fornecido, o valor padrão será /." }, { "kind": "field", "name": "crumbs", "type": { "text": "string | BreadcrumbItem[]" }, "description": "Define o array de objetos que receberá os nomes e links do breadcrumb.\nDefine valor padrão do breadcrumb 'defaultCrumbs'." }, { "kind": "field", "name": "defaultCrumbs", "type": { "text": "BreadcrumbItem[]" }, "privacy": "private", "default": "[\n { label: 'Página 01', url: '/pagina-01' },\n { label: 'Página 02', url: '/pagina-02' },\n { label: 'Página Atual', active: true },\n ]" }, { "kind": "field", "name": "showTooltip", "type": { "text": "boolean" }, "default": "false", "description": "Define o estado oculto ou visível do tooltip." }, { "kind": "field", "name": "tooltipPosition", "type": { "text": "{ x: number; y: number }" }, "default": "{ x: 0, y: 0 }", "description": "Define o posicionamento do tooltip na tela." }, { "kind": "field", "name": "tooltipText", "type": { "text": "string" }, "default": "''", "description": "Define o texto do tooltip." }, { "kind": "field", "name": "isSmallScreen", "type": { "text": "boolean" }, "default": "false", "description": "Define o estado isSmallScreen, usado para verificar a largura do container pai e aplicar as mudanças do formato mobile.\nNo formato mobile o breadcrumb apresenta um comportamento específico." }, { "kind": "field", "name": "isTruncate", "type": { "text": "boolean" }, "default": "false", "description": "Define se o breadcrumb deve truncar os itens por falta de espaço." }, { "kind": "field", "name": "larguraInterna", "type": { "text": "number" }, "default": "0", "description": "Largura interna dos itens do breadcrumb." }, { "kind": "field", "name": "larguraPai", "type": { "text": "number" }, "default": "0", "description": "Largura do container pai do breadcrumb." }, { "kind": "field", "name": "isFolderOpen", "type": { "text": "boolean" }, "default": "false", "description": "Define o estado do botão 'Folder'.\nCaso a lista dropdown esteja oculta o ícone no botão será 'folder-plus'.\nCaso a lista dropdown esteja visível o ícone no botão será 'folder-minus'." }, { "kind": "method", "name": "trunc", "privacy": "private", "parameters": [ { "name": "word", "type": { "text": "string" } } ], "description": "Verifica se o texto do link contém mais de 20 caracteres e realiza o truncamento deste caso positivo.\nO número de caracteres pode ser configurado na variável 'charactersNumberTruncate'." }, { "kind": "method", "name": "handleMouseOver", "privacy": "private", "parameters": [ { "name": "event", "type": { "text": "MouseEvent" } }, { "name": "text", "type": { "text": "string" } } ], "description": "Exibe o tooltip e define seu posicionamento, caso o usuário realize o 'mouse over'." }, { "kind": "method", "name": "handleMouseOut", "privacy": "private", "description": "Esconde o tooltip caso o usuário realize o 'mouse out'." }, { "kind": "method", "name": "getParsedItems", "privacy": "private", "return": { "type": { "text": "BreadcrumbItem[]" } }, "description": "Converte de string para JSON o valor passado na propriedade 'crumbs'.\nRetorna o valor padrão do Breadcrumbs caso crumbs seja vazio ou inválido" }, { "kind": "method", "name": "handleHomeClick", "privacy": "private", "description": "Ao clicar no botão HOME, direciona o usuário para URL passada na propriedade 'homeUrl'." }, { "kind": "method", "name": "toggleFolder", "privacy": "private", "description": "Altera o estado do botão 'Folder', caso a lista dropdown esteja aberta ou fechada." }, { "kind": "method", "name": "getCssClassMap", "privacy": "private", "return": { "type": { "text": "{ [key: string]: boolean }" } }, "description": "Define as classes CSS usadas no breadcrumb." }, { "kind": "field", "name": "resizeObserver", "type": { "text": "ResizeObserver" }, "privacy": "private", "description": "Atualiza o estado 'isSmallScreen' com base no tamanho do container pai, se menor que 570px." }, { "kind": "field", "name": "updateContainerSize", "privacy": "private", "description": "Atualiza os estados de largura do breadcrumb ao detectar mudanças no container pai." }, { "kind": "method", "name": "calcularLarguraItens", "privacy": "private", "description": "Calcula a largura total dos itens do breadcrumb para determinar se precisa de truncamento." }, { "kind": "method", "name": "renderHomeButton", "privacy": "private", "description": "Renderiza botão Home" }, { "kind": "method", "name": "renderTruncateButton", "privacy": "private", "description": "Renderiza botão Folder no comportamento truncado" }, { "kind": "method", "name": "renderBreadcrumbItems", "privacy": "private", "description": "Renderiza itens do Breadcrumb no comportamento mobile ou truncado" }, { "kind": "method", "name": "renderMobileActiveItem", "privacy": "private", "parameters": [ { "name": "parsedItems", "type": { "text": "BreadcrumbItem[]" } } ], "description": "Renderiza item da página atual" }, { "kind": "method", "name": "renderBreadcrumbList", "privacy": "private", "parameters": [ { "name": "parsedItems", "type": { "text": "BreadcrumbItem[]" } } ], "description": "Renderiza Lista dropdown contendo os itens do Breadcrumb" }, { "kind": "method", "name": "renderBreadcrumbLink", "privacy": "private", "parameters": [ { "name": "item", "type": { "text": "BreadcrumbItem" } } ], "description": "Renderiza itens do Breadcrumb no formato desktop" }, { "kind": "method", "name": "renderTooltip", "privacy": "private", "description": "Renderiza Tooltip" }, { "kind": "method", "name": "handleKeyDown", "privacy": "private", "parameters": [ { "name": "event", "type": { "text": "KeyboardEvent" } } ], "description": "Controla navegação pelo teclado após lista de itens aberta\nDispara foco no primeiro item da lista flutuante" }, { "kind": "method", "name": "handleKeyDownOut", "privacy": "private", "parameters": [ { "name": "event", "type": { "text": "KeyboardEvent" } } ], "description": "Ao finalizar navegação por teclado dentro da lista, dispara foco no item fora da lista flutuante" }, { "kind": "method", "name": "render" } ], "attributes": [ { "name": "custom-id", "fieldName": "customId", "type": { "text": "string" } }, { "name": "home-url", "fieldName": "homeUrl", "type": { "text": "string" } }, { "name": "crumbs", "fieldName": "crumbs", "type": { "text": "string | BreadcrumbItem[]" } } ], "tagName": "br-breadcrumb", "events": [], "customElement": true } ], "exports": [ { "kind": "js", "name": "Breadcrumb", "declaration": { "name": "Breadcrumb", "module": "components/breadcrumb.js" } }, { "kind": "custom-element-definition", "name": "br-breadcrumb", "declaration": { "name": "Breadcrumb", "module": "components/breadcrumb.js" } } ] }, { "kind": "javascript-module", "path": "components/button.js", "declarations": [ { "kind": "class", "description": "Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/button?tab=designer).", "name": "Button", "slots": [ { "description": "Espaço de conteúdo do button. Geralmente usado para incluir o rótulo.", "name": "default" } ], "members": [ { "kind": "field", "name": "el", "type": { "text": "HTMLBrButtonElement" }, "description": "Referência ao elemento host do componente.\nUtilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente." }, { "kind": "field", "name": "elementInternals", "type": { "text": "ElementInternals" } }, { "kind": "field", "name": "colorMode", "type": { "text": "'dark'" }, "description": "Define se o botão usará um esquema de cores escuro." }, { "kind": "field", "name": "customId", "type": { "text": "string" }, "default": "`br-button-${buttonId++}`", "description": "Identificador único.\nCaso não seja fornecido, um ID gerado automaticamente será usado." }, { "kind": "field", "name": "density", "type": { "text": "'large' | 'medium' | 'small'" }, "default": "'medium'", "description": "Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido." }, { "kind": "field", "name": "disabled", "type": { "text": "boolean" }, "default": "false", "description": "Desativa o botão, tornando-o não interativo." }, { "kind": "field", "name": "emphasis", "type": { "text": "'primary' | 'secondary' | 'tertiary'" }, "description": "Define a ênfase do botão, alterando sua aparência para criar hierarquia visual e destacar ações importantes." }, { "kind": "field", "name": "isActive", "type": { "text": "boolean" }, "default": "false", "description": "Indica se o botão está no estado ativo.\nSe definido como verdadeiro, o botão será exibido como ativo." }, { "kind": "field", "name": "isLoading", "type": { "text": "boolean" }, "default": "false", "description": "Aplica o estado de \"progresso\" ao botão.\nO botão exibirá um indicador de carregamento ou progresso." }, { "kind": "field", "name": "shape", "type": { "text": "'circle' | 'block' | 'pill'" }, "description": "Define o formato do botão.\nValores possíveis:\n- 'circle': Botão com formato circular.\n- 'block': Botão com formato ovalado ocupando toda a largura disponível.\n- 'pill': Botão com formato ovalado, com bordas arredondadas." }, { "kind": "field", "name": "type", "type": { "text": "'button' | 'reset' | 'submit'" }, "description": "Define o tipo de botão, especificando seu comportamento padrão.\nValores possíveis:\n- 'button': Um botão padrão.\n- 'reset': Um botão para redefinir o formulário.\n- 'submit': Um botão para enviar o formulário." }, { "kind": "field", "name": "value", "type": { "text": "string" }, "description": "Define o valor inicial do botão em um formulário." }, { "kind": "field", "name": "ariaLabel", "type": { "text": "string" }, "description": "Define o rótulo acessível do botão.\nEste rótulo é usado por tecnologias assistivas para descrever a função do botão.\nÉ especialmente importante para botões com formato circular, onde o texto pode não ser visível.\nSe o botão não tiver um rótulo acessível, uma mensagem de aviso será exibida no console." }, { "kind": "field", "name": "ariaPressed", "type": { "text": "string" }, "description": "Define o estado de pressionado do botão.\nEste atributo é usado para indicar se o botão está atualmente pressionado ou não.\nÉ especialmente útil para botões que podem ser alternados entre os estados pressionado e não pressionado.\nO valor deve ser 'true' ou 'false'." }, { "kind": "field", "name": "handleClick", "privacy": "private" }, { "kind": "method", "name": "getCssClassMap", "privacy": "private", "return": { "type": { "text": "CssClassMap" } } }, { "kind": "method", "name": "render" } ], "attributes": [ { "name": "color-mode", "fieldName": "colorMode", "type": { "text": "'dark'" } }, { "name": "custom-id", "fieldName": "customId", "type": { "text": "string" } }, { "name": "density", "fieldName": "density", "type": { "text": "'large' | 'medium' | 'small'" } }, { "name": "disabled", "fieldName": "disabled", "type": { "text": "boolean" } }, { "name": "emphasis", "fieldName": "emphasis", "type": { "text": "'primary' | 'secondary' | 'tertiary'" } }, { "name": "is-active", "fieldName": "isActive", "type": { "text": "boolean" } }, { "name": "is-loading", "fieldName": "isLoading", "type": { "text": "boolean" } }, { "name": "shape", "fieldName": "shape", "type": { "text": "'circle' | 'block' | 'pill'" } }, { "name": "type", "fieldName": "type", "type": { "text": "'button' | 'reset' | 'submit'" } }, { "name": "value", "fieldName": "value", "type": { "text": "string" } }, { "name": "aria-label", "fieldName": "ariaLabel", "type": { "text": "string" } }, { "name": "aria-pressed", "fieldName": "ariaPressed", "type": { "text": "string" } } ], "tagName": "br-button", "csspart": { "name": "slot-content", "description": "Espaço de conteúdo do botão. Geralmente usado para incluir o rótulo." }, "events": [], "customElement": true } ], "exports": [ { "kind": "js", "name": "Button", "declaration": { "name": "Button", "module": "components/button.js" } }, { "kind": "custom-element-definition", "name": "br-button", "declaration": { "name": "Button", "module": "components/button.js" } } ] }, { "kind": "javascript-module", "path": "components/checkbox.js", "declarations": [ { "kind": "class", "description": "Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/checkbox?tab=designer).", "name": "Checkbox", "slots": [ { "description": "O texto descritivo pode ser passado por propriedade (label) ou por slot.", "name": "default" } ], "members": [ { "kind": "field", "name": "el", "type": { "text": "HTMLBrCheckboxElement" }, "description": "Referência ao elemento host do componente.\nUtilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente." }, { "kind": "field", "name": "elementInternals", "type": { "text": "ElementInternals" } }, { "kind": "field", "name": "indeterminate", "type": { "text": "boolean" }, "default": "false", "description": "Define o estado intermediário do checkbox.\nQuando verdadeiro, exibe uma marcação parcial visual que indica seleção parcial.\nÚtil para representar grupos onde alguns itens estão selecionados, mas não todos.\nAo clicar no checkbox neste estado, ele será automaticamente alterado para marcado." }, { "kind": "field", "name": "checked", "type": { "text": "boolean" }, "default": "false", "description": "Define o estado de seleção do checkbox.\nSe definido como verdadeiro, o checkbox estará marcado. Caso contrário, estará desmarcado." }, { "kind": "field", "name": "customId", "type": { "text": "string" }, "default": "`br-checkbox-${checkboxId++}`", "description": "Identificador único.\nCaso não seja fornecido, um ID gerado automaticamente será usado." }, { "kind": "field", "name": "disabled", "type": { "text": "boolean" }, "default": "false", "description": "Desativa o checkbox, tornando-o não interativo." }, { "kind": "field", "name": "hasHiddenLabel", "type": { "text": "boolean" }, "default": "false", "description": "Define se o label associado ao checkbox deve ser oculto.\nSe definido como verdadeiro, o texto do label será oculto, mas o checkbox ainda estará visível e funcional." }, { "kind": "field", "name": "label", "type": { "text": "string" }, "description": "Texto descritivo exibido à direita do checkbox.\nCaso um slot seja utilizado para fornecer um texto alternativo, o valor desta propriedade será ignorado." }, { "kind": "field", "name": "name", "type": { "text": "string" }, "description": "Define o nome do checkbox, que é utilizado para agrupar checkboxes em formulários e identificar o campo.\nO valor é obrigatório e deve ser fornecido para garantir o correto funcionamento em formulários." }, { "kind": "field", "name": "state", "type": { "text": "'valid' | 'invalid'" }, "description": "Indica a validade do checkbox.\nValores possíveis:\n'valid': O checkbox é considerado válido.\n'invalid': O checkbox é considerado inválido.\nSe não for especificado, o valor padrão é `null`, indicando que a validade não foi definida." }, { "kind": "field", "name": "value", "type": { "text": "string" }, "description": "Define o valor associado ao checkbox quando ele faz parte de um formulário nativo (`<form>`).\nEsse valor é enviado com o formulário quando o checkbox está selecionado.\n**Nota:** Esta propriedade não deve ser utilizada para determinar se o checkbox está selecionado; para verificar o estado de seleção, use a propriedade `checked`." }, { "kind": "field", "name": "slotDefault", "type": { "text": "boolean" }, "default": "false" }, { "kind": "method", "name": "updateIndeterminate", "parameters": [ { "name": "newValue", "type": { "text": "boolean" } } ] }, { "kind": "method", "name": "hasSlotContentDefault", "privacy": "private", "return": { "type": { "text": "void" } } }, { "kind": "method", "name": "getCssClassMap", "privacy": "private", "return": { "type": { "text": "CssClassMap" } } }, { "kind": "method", "name": "getAriaCheckedValue", "privacy": "private", "return": { "type": { "text": "string" } } }, { "kind": "field", "name": "handleCheckedChange", "privacy": "private" }, { "kind": "method", "name": "setIndeterminate", "parameters": [ { "name": "value", "type": { "text": "boolean" }, "description": "Novo valor para o estado indeterminado." } ], "description": "Define o estado indeterminado do checkbox." }, { "kind": "method", "name": "toggleChecked", "description": "Inverte o valor da prop `checked`" }, { "kind": "method", "name": "render" } ], "attributes": [ { "name": "indeterminate", "fieldName": "indeterminate", "type": { "text": "boolean" } }, { "name": "checked", "fieldName": "checked", "type": { "text": "boolean" } }, { "name": "custom-id", "fieldName": "customId", "type": { "text": "string" } }, { "name": "disabled", "fieldName": "disabled", "type": { "text": "boolean" } }, { "name": "has-hidden-label", "fieldName": "hasHiddenLabel", "type": { "text": "boolean" } }, { "name": "label", "fieldName": "label", "type": { "text": "string" } }, { "name": "name", "fieldName": "name", "type": { "text": "string" } }, { "name": "state", "fieldName": "state", "type": { "text": "'valid' | 'invalid'" } }, { "name": "value", "fieldName": "value", "type": { "text": "string" } } ], "tagName": "br-checkbox", "events": [ { "name": "checkedChange", "type": { "text": "EventEmitter<boolean>" }, "description": "Disparado depois que o valor do `checked` foi alterado" }, { "name": "indeterminateChange", "type": { "text": "EventEmitter<boolean>" }, "description": "Disparado depois que o valor do `indeterminate` foi alterado." } ], "customElement": true } ], "exports": [ { "kind": "js", "name": "Checkbox", "declaration": { "name": "Checkbox", "module": "components/checkbox.js" } }, { "kind": "custom-element-definition", "name": "br-checkbox", "declaration": { "name": "Checkbox", "module": "components/checkbox.js" } } ] }, { "kind": "javascript-module", "path": "components/checkgroup.js", "declarations": [ { "kind": "class", "description": "Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/utilitarios/js/checkgroup?tab=desenvolvedor).", "name": "Checkgroup", "slots": [ { "description": "Slot para adicionar os checkboxes que serão controlados pelo checkgroup.", "name": "default" } ], "members": [ { "kind": "field", "name": "el", "type": { "text": "HTMLBrCheckgroupElement" }, "description": "Referência ao elemento host do componente.\nUtilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente." }, { "kind": "field", "name": "elementInternals", "type": { "text": "ElementInternals" } }, { "kind": "field", "name": "label", "type": { "text": "string" }, "description": "Texto descritivo do grupo." }, { "kind": "field", "name": "labelSelecionado", "type": { "text": "string" }, "default": "'Desselecionar tudo'", "description": "Define o texto do label quando o checkbox está marcado." }, { "kind": "field", "name": "labelDesselecionado", "type": { "text": "string" }, "default": "'Selecionar tudo'", "description": "Define o texto do label quando o checkbox está desmarcado." }, { "kind": "field", "name": "indeterminate", "type": { "text": "boolean" }, "default": "false", "description": "Define o estado intermediário do checkbox.\nSe definido como verdadeiro, o checkbox exibirá um estado intermediário, que é um estado visual que indica que a opção está parcialmente selecionada.\nEste estado é útil quando o checkbox faz parte de um grupo com seleção parcial." }, { "kind": "field", "name": "customId", "type": { "text": "string" }, "default": "`br-checkgroup-${checkgroupId++}`", "description": "Identificador único.\nCaso não seja fornecido, um ID gerado automaticamente será usado." }, { "kind": "field", "name": "checked", "type": { "text": "boolean" }, "default": "false", "description": "Define o estado de seleção do checkbox.\nSe definido como verdadeiro, o checkbox estará marcado. Caso contrário, estará desmarcado." }, { "kind": "field", "name": "isIndeterminate", "type": { "text": "boolean" }, "default": "false", "description": "Indica se o grupo de checkboxes está indeterminado" }, { "kind": "method", "name": "getCssClassMap", "privacy": "private", "return": { "type": { "text": "CssClassMap" } } }, { "kind": "method", "name": "handleChange", "parameters": [ { "name": "event", "type": { "text": "Event" } } ] }, { "kind": "method", "name": "isParentCheckbox", "privacy": "private", "return": { "type": { "text": "boolean" } }, "parameters": [ { "name": "target", "type": { "text": "HTMLBrCheckboxElement" } } ] }, { "kind": "field", "name": "handleAllCheckboxChange", "privacy": "private" }, { "kind": "method", "name": "updateGroupState", "privacy": "private" }, { "kind": "method", "name": "render" } ], "attributes": [ { "name": "label", "fieldName": "label", "type": { "text": "string" } }, { "name": "label-selecionado", "fieldName": "labelSelecionado", "type": { "text": "string" } }, { "name": "label-desselecionado", "fieldName": "labelDesselecionado", "type": { "text": "string" } }, { "name": "indeterminate", "fieldName": "indeterminate", "type": { "text": "boolean" } }, { "name": "custom-id", "fieldName": "customId", "type": { "text": "string" } } ], "tagName": "br-checkgroup", "events": [], "customElement": true } ], "exports": [ { "kind": "js", "name": "Checkgroup", "declaration": { "name": "Checkgroup", "module": "components/checkgroup.js" } }, { "kind": "custom-element-definition", "name": "br-checkgroup", "declaration": { "name": "Checkgroup", "module": "components/checkgroup.js" } } ] }, { "kind": "javascript-module", "path": "components/collapse.js", "declarations": [ { "kind": "class", "description": "O componente `br-collapse` pode ser utilizado em dois cenários principais: collapse simples ou accordion.\n\n- Collapse simples: Cada instância funciona de forma independente, permitindo abrir ou fechar o conteúdo conforme necessário, sem impactar outros componentes na página.\n- Accordion: Quando configurado com a propriedade `accordionGroup`, múltiplos componentes `br-collapse` são agrupados. Nesse caso, apenas um item pode estar expandido por vez. Ao abrir um novo item, o anteriormente expandido será automaticamente fechado.", "name": "Collapse", "slots": [ { "description": "O conteúdo expansível mostrado/ocultado dinamicamente.", "name": "default" }, { "description": "Permite personalizar o conteúdo do acionador (texto, imagens, etc.).", "name": "trigger" } ], "members": [ { "kind": "field", "name": "el", "type": { "text": "HTMLBrCollapseElement" }, "description": "Referência ao elemento host do componente.\nUtilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente." }, { "kind": "field", "name": "elementInternals", "type": { "text": "ElementInternals" } }, { "kind": "field", "name": "customId", "type": { "text": "string" }, "description": "Identificador único.\nCaso não seja fornecido, um ID gerado automaticamente será usado." }, { "kind": "field", "name": "open", "type": { "text": "boolean" }, "default": "false", "description": "Define se o collapse está aberto ou fechado." }, { "kind": "field", "name": "accordionGroup", "type": { "text": "string | undefined" }, "default": "null", "description": "Define se o collapse faz parte de um accordion" }, { "kind": "field", "name": "iconToShow", "type": { "text": "string" }, "default": "'fa6-solid:chevron-down'", "description": "Classe CSS para o ícone de expansão" }, { "kind": "field", "name": "iconToHide", "type": { "text": "string" }, "default": "'fa6-solid:chevron-up'", "description": "Classe CSS para o ícone de recolhimento" }, { "kind": "field", "name": "iconPosition", "type": { "text": "'left' | 'right'" }, "default": "'right'", "description": "Define a posição do ícone: 'left' ou 'right'" }, { "kind": "method", "name": "handleOpen", "parameters": [ { "name": "event", "type": { "text": "CustomEvent" }, "description": "Evento disparado quando o componente é aberto." } ], "description": "Evento disparado quando o componente é aberto." }, { "kind": "method", "name": "syncDetailsWithOpen", "privacy": "private", "description": "Sincroniza o estado do elemento <details> com a propriedade open.\nIsso garante que o estado visual do componente corresponda ao estado interno." }, { "kind": "field", "name": "handleCollapse", "privacy": "private", "description": "Método chamado quando o elemento <details> é aberto ou fechado.\nAtualiza o estado interno do componente e e