@govbr-ds/webcomponents 2.0.0-next.10 → 2.0.0-next.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/br-avatar.cjs.entry.js +1 -1
- package/dist/cjs/br-button_2.cjs.entry.js +1 -1
- package/dist/cjs/br-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/br-input.cjs.entry.js +1 -1
- package/dist/cjs/br-item.cjs.entry.js +50 -12
- package/dist/cjs/br-item.cjs.entry.js.map +1 -1
- package/dist/cjs/br-loading.cjs.entry.js +1 -1
- package/dist/cjs/br-message.cjs.entry.js +1 -1
- package/dist/cjs/br-radio.cjs.entry.js +15 -6
- package/dist/cjs/br-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/br-switch.cjs.entry.js +1 -1
- package/dist/cjs/{index-af20d91d.js → index-ecdd4399.js} +70 -3
- package/dist/{esm/index-4f7580f8.js.map → cjs/index-ecdd4399.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/webcomponents.cjs.js +2 -2
- package/dist/collection/components/item/item.css +10 -0
- package/dist/collection/components/item/item.js +59 -12
- package/dist/collection/components/item/item.js.map +1 -1
- package/dist/collection/components/radio/radio.js +24 -7
- package/dist/collection/components/radio/radio.js.map +1 -1
- package/dist/components/br-avatar.js +2 -2
- package/dist/components/br-button.js +1 -1
- package/dist/components/br-checkbox.js +1 -1
- package/dist/components/br-icon.js +1 -1
- package/dist/components/br-input.js +3 -3
- package/dist/components/br-item.js +53 -15
- package/dist/components/br-item.js.map +1 -1
- package/dist/components/br-loading.js +1 -1
- package/dist/components/br-message.js +3 -3
- package/dist/components/br-radio.js +16 -8
- package/dist/components/br-radio.js.map +1 -1
- package/dist/components/br-switch.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/{p-1b06f3d9.js → p-4c4ab942.js} +59 -4
- package/dist/components/p-4c4ab942.js.map +1 -0
- package/dist/components/{p-75879137.js → p-8208cc5d.js} +2 -2
- package/dist/components/{p-75879137.js.map → p-8208cc5d.js.map} +1 -1
- package/dist/components/{p-f3ca1c10.js → p-be684701.js} +2 -2
- package/dist/components/{p-f3ca1c10.js.map → p-be684701.js.map} +1 -1
- package/dist/esm/br-avatar.entry.js +1 -1
- package/dist/esm/br-button_2.entry.js +1 -1
- package/dist/esm/br-checkbox.entry.js +1 -1
- package/dist/esm/br-input.entry.js +1 -1
- package/dist/esm/br-item.entry.js +50 -12
- package/dist/esm/br-item.entry.js.map +1 -1
- package/dist/esm/br-loading.entry.js +1 -1
- package/dist/esm/br-message.entry.js +1 -1
- package/dist/esm/br-radio.entry.js +15 -6
- package/dist/esm/br-radio.entry.js.map +1 -1
- package/dist/esm/br-switch.entry.js +1 -1
- package/dist/esm/{index-4f7580f8.js → index-5866d5ff.js} +70 -3
- package/dist/esm/index-5866d5ff.js.map +1 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/webcomponents.js +3 -3
- package/dist/types/components/item/item.d.ts +6 -2
- package/dist/types/components/radio/radio.d.ts +1 -4
- package/dist/webcomponents/{p-7a93b09e.entry.js → p-17259007.entry.js} +2 -2
- package/dist/webcomponents/{p-786e07d7.entry.js → p-2b010012.entry.js} +2 -2
- package/dist/webcomponents/p-6315c80a.js +3 -0
- package/dist/webcomponents/p-6315c80a.js.map +1 -0
- package/dist/webcomponents/{p-8d69ee5a.entry.js → p-66f8ee5c.entry.js} +2 -2
- package/dist/webcomponents/{p-ec316fb6.entry.js → p-6c867b24.entry.js} +2 -2
- package/dist/webcomponents/p-6c867b24.entry.js.map +1 -0
- package/dist/webcomponents/{p-843bde97.entry.js → p-7de25a85.entry.js} +2 -2
- package/dist/webcomponents/{p-7e0a931b.entry.js → p-90cd6013.entry.js} +2 -2
- package/dist/webcomponents/{p-fb4b3338.entry.js → p-cfa0416f.entry.js} +2 -2
- package/dist/webcomponents/p-cfa0416f.entry.js.map +1 -0
- package/dist/webcomponents/{p-7a8de8dc.entry.js → p-dd2c8f48.entry.js} +2 -2
- package/dist/webcomponents/{p-563e73f4.entry.js → p-e38cbccf.entry.js} +2 -2
- package/dist/webcomponents/webcomponents.esm.js +1 -1
- package/dist/webcomponents/webcomponents.esm.js.map +1 -1
- package/hydrate/index.js +108 -23
- package/hydrate/index.mjs +108 -23
- package/package.json +1 -1
- package/dist/cjs/index-af20d91d.js.map +0 -1
- package/dist/components/p-1b06f3d9.js.map +0 -1
- package/dist/webcomponents/p-104a47a9.js +0 -3
- package/dist/webcomponents/p-104a47a9.js.map +0 -1
- package/dist/webcomponents/p-ec316fb6.entry.js.map +0 -1
- package/dist/webcomponents/p-fb4b3338.entry.js.map +0 -1
- /package/dist/webcomponents/{p-7a93b09e.entry.js.map → p-17259007.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-786e07d7.entry.js.map → p-2b010012.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-8d69ee5a.entry.js.map → p-66f8ee5c.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-843bde97.entry.js.map → p-7de25a85.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-7e0a931b.entry.js.map → p-90cd6013.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-7a8de8dc.entry.js.map → p-dd2c8f48.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-563e73f4.entry.js.map → p-e38cbccf.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"br-radio.js","mappings":"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","names":[],"sources":["src/components/radio/radio.scss?tag=br-radio&encapsulation=shadow","src/components/radio/radio.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/radio/radio.scss\";\n\n:host {\n display: block;\n}\n\n.br-radio.hidden-label {\n label {\n padding-left: calc(var(--checkbox-size) + var(--surface-width-md)* 2);\n text-indent: -10000px;\n white-space: nowrap;\n width: 0;\n }\n}\n ","import { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Method, Prop, State } from '@stencil/core'\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/radio?tab=designer).\n *\n * @slot default - O texto descritivo pode ser passado por propriedade (label) ou por slot.\n */\n\n@Component({\n tag: 'br-radio',\n styleUrl: 'radio.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Radio {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLInputElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o estado de seleção do radio.\n * Se definido como verdadeiro, o radio estará marcado. Caso contrário, estará desmarcado.\n */\n @Prop({ reflect: true, mutable: true }) checked: boolean = false\n\n /**\n * Desativa o radio, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Indica a validade do radio.\n * Valores possíveis:\n * - 'valid': O radio é considerado válido.\n * - 'invalid': O radio é considerado inválido.\n * Se não for especificado, o valor padrão é `null`, indicando que a validade não foi definida.\n */\n @Prop({ reflect: true }) state: 'valid' | 'invalid' = null\n\n /**\n * Define se o label associado ao radio deve ser oculto.\n * Se definido como verdadeiro, o texto do label será oculto, mas o radio ainda estará visível e funcional.\n */\n @Prop({ reflect: true, mutable: true, attribute: 'has-hidden-label' }) hasHiddenLabel: boolean = false\n\n /**\n * Define o nome do radio, que é utilizado para agrupar radios em formulários e identificar o campo.\n * O valor é obrigatório e deve ser fornecido para garantir o correto funcionamento em formulários.\n */\n\n @Prop({ reflect: true }) name!: string\n\n /**\n * Texto descritivo exibido à direita do radio.\n * Caso um slot seja utilizado para fornecer um texto alternativo, o valor desta propriedade será ignorado.\n */\n @Prop({ reflect: true }) label: string\n\n /**\n * Define o valor associado ao radio quando ele faz parte de um formulário nativo (`<form>`).\n * Esse valor é enviado com o formulário quando o radio está selecionado.\n * **Nota:** Esta propriedade não deve ser utilizada para determinar se o radio está selecionado; para verificar o estado de seleção, use a propriedade `checked`.\n */\n @Prop({ reflect: true }) value: any\n\n /**\n * Especifica o ID do componente, que é usado para conectar o label correspondente ao radio.\n * Se não for fornecido, o ID será o mesmo valor atribuído à propriedade `name`.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string\n\n /**\n * Indica se o radio pode alternar seu estado checked\n */\n @Prop({ reflect: true }) toggle: boolean = false\n\n /**\n * Propriedade que vai guardar o valor da validação do slot\n */\n @State() _slotDefault: boolean = false\n\n /**\n * Propriedade que controla e estado checked do radio\n */\n @State() isChecked: boolean = false\n\n /**\n * Emite um evento quando o componente é conectado ao DOM.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#connectedcallback) para mais detalhes.\n */\n @Event() brDidConnect: EventEmitter<void>\n connectedCallback() {\n this.brDidConnect.emit()\n }\n\n /**\n * Emite um evento antes que o componente seja carregado pela primeira vez.\n * Utilize este evento para realizar tarefas de inicialização antes do componente ser exibido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this.isChecked = this.checked\n this.hasSlotContentDefault()\n this.brWillLoad.emit()\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n /**\n * Emite um evento após o componente ter sido carregado pela primeira vez.\n * Utilize este evento para realizar ações que devem ocorrer depois que o componente foi totalmente carregado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes.\n */\n @Event() brDidLoad: EventEmitter<void>\n componentDidLoad() {\n this.brDidLoad.emit()\n }\n\n /**\n * Emite um evento antes do componente ser renderizado.\n * Utilize este evento para preparar o componente antes de sua renderização.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillrender) para mais detalhes.\n */\n @Event() brWillRender: EventEmitter<void>\n componentWillRender() {\n this.brWillRender.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido renderizado.\n * Utilize este evento para executar ações que devem ocorrer após a renderização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidrender) para mais detalhes.\n */\n @Event() brDidRender: EventEmitter<void>\n componentDidRender() {\n this.brDidRender.emit()\n }\n\n /**\n * Emite um evento para indicar se o componente deve ser atualizado ou não.\n * Este evento é chamado antes de qualquer atualização do componente para decidir se a atualização deve prosseguir.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentshouldupdate) para mais detalhes.\n */\n @Event() brShouldUpdate: EventEmitter<void>\n componentShouldUpdate() {\n this.brShouldUpdate.emit()\n }\n\n /**\n * Emite um evento antes de o componente ser atualizado.\n * Utilize este evento para realizar ações preparatórias antes da atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillupdate) para mais detalhes.\n */\n @Event() brWillUpdate: EventEmitter<void>\n componentWillUpdate() {\n this.brWillUpdate.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido atualizado.\n * Utilize este evento para realizar ações após a atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidupdate) para mais detalhes.\n */\n @Event() brDidUpdate: EventEmitter<void>\n componentDidUpdate() {\n this.brDidUpdate.emit()\n }\n\n /**\n * Emite um evento quando o componente é desconectado do DOM.\n * Utilize este evento para realizar a limpeza ou outras ações necessárias quando o componente é removido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#disconnectedcallback) para mais detalhes.\n */\n @Event() brDidDisconnect: EventEmitter<void>\n disconnectedCallback() {\n this.brDidDisconnect.emit()\n }\n\n /**\n * Emite um evento quando o componente é associado ou removido de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formassociatedcallback) para mais detalhes.\n *\n * @param form - Dados do formulário associado.\n */\n @Event() brFormAssociatedCallback: EventEmitter<FormData>\n formAssociatedCallback(form: FormData) {\n this.brFormAssociatedCallback.emit(form)\n }\n\n /**\n * Emite um evento quando o estado `disabled` do componente muda dentro de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formdisabledcallback) para mais informações.\n *\n * @param disabled - Novo estado `disabled` do componente dentro do formulário.\n */\n @Event() brFormDisabledCallback: EventEmitter<boolean>\n formDisabledCallback(disabled: boolean) {\n this.brFormDisabledCallback.emit(disabled)\n }\n\n /**\n * Emite um evento quando um `<form>` é resetado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formresetcallback) para mais detalhes.\n */\n @Event() brFormResetCallback: EventEmitter<void>\n formResetCallback() {\n this.brFormResetCallback.emit()\n }\n\n /**\n * Emite um evento quando o navegador preenche automaticamente os campos de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formstaterestorecallback) para mais informações.\n *\n * @param state - Estado restaurado do formulário.\n * @param _mode - Modo de preenchimento automático do navegador.\n */\n @Event() brFormStateRestoreCallback: EventEmitter<[state: string, _mode: string]>\n formStateRestoreCallback(state: string, _mode: string) {\n this.brFormStateRestoreCallback.emit([state, _mode])\n }\n\n private hasSlotContentDefault(): any {\n this._slotDefault = this.el.innerHTML !== ''\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-radio': true,\n valid: this.state === 'valid',\n invalid: this.state === 'invalid',\n disabled: this.disabled,\n 'hidden-label': this.hasHiddenLabel,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n /**\n * Componente teve seu estado \"checked\" alterado\n */\n @Event() brDidCheckedChange: EventEmitter<{ value: boolean; checked: boolean }>\n\n @Method()\n /**\n * Handler para o evento \"onClick\"\n */\n async handleClick() {\n this.toggleChecked()\n }\n\n @Method()\n /**\n * Handler para o evento \"onKeyDown\"\n */\n async handleKeyDown(event: KeyboardEvent) {\n // Permite alternar o estado apenas quando a tecla pressionada é 'Space'\n if (event.code === 'Space') {\n event.preventDefault() // Impede o comportamento padrão da tecla 'Space'\n this.toggleChecked()\n }\n }\n\n /**\n * Controla o comportamento de alternar o estado checked.\n */\n private toggleChecked() {\n if (this.toggle) {\n this.isChecked = !this.isChecked\n this.brDidCheckedChange.emit({ value: this.value, checked: this.isChecked })\n }\n }\n\n /**\n * Determina um id para o radio.\n */\n private getComputedId(): string {\n return this.customId ? this.customId : this.name\n }\n\n render() {\n return (\n <Host aria-disabled={this.disabled ? 'true' : null}>\n <div\n class={this.getCssClassMap()}\n onClick={() => this.handleClick()}\n onKeyDown={(event) => this.handleKeyDown(event)}\n >\n <input\n aria-label={this.label}\n type=\"radio\"\n id={this.getComputedId()}\n name={this.name}\n checked={this.isChecked}\n disabled={this.disabled}\n value={this.value}\n onClick={(event) => event.stopPropagation()}\n {...this.inheritedAttributes}\n />\n <label htmlFor={this.getComputedId()}>{this._slotDefault ? <slot></slot> : this.label}</label>\n </div>\n </Host>\n )\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"br-radio.js","mappings":"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","names":[],"sources":["src/components/radio/radio.scss?tag=br-radio&encapsulation=shadow","src/components/radio/radio.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/radio/radio.scss\";\n\n:host {\n display: block;\n}\n\n.br-radio.hidden-label {\n label {\n padding-left: calc(var(--checkbox-size) + var(--surface-width-md)* 2);\n text-indent: -10000px;\n white-space: nowrap;\n width: 0;\n }\n}\n ","import { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop, State } from '@stencil/core'\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/radio?tab=designer).\n *\n * @slot default - O texto descritivo pode ser passado por propriedade (label) ou por slot.\n */\n\n@Component({\n tag: 'br-radio',\n styleUrl: 'radio.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Radio {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLInputElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o estado de seleção do radio.\n * Se definido como verdadeiro, o radio estará marcado. Caso contrário, estará desmarcado.\n */\n @Prop({ reflect: true, mutable: true }) checked: boolean = false\n\n /**\n * Desativa o radio, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Indica a validade do radio.\n * Valores possíveis:\n * - 'valid': O radio é considerado válido.\n * - 'invalid': O radio é considerado inválido.\n * Se não for especificado, o valor padrão é `null`, indicando que a validade não foi definida.\n */\n @Prop({ reflect: true }) state: 'valid' | 'invalid' = null\n\n /**\n * Define se o label associado ao radio deve ser oculto.\n * Se definido como verdadeiro, o texto do label será oculto, mas o radio ainda estará visível e funcional.\n */\n @Prop({ reflect: true, mutable: true, attribute: 'has-hidden-label' }) hasHiddenLabel: boolean = false\n\n /**\n * Define o nome do radio, que é utilizado para agrupar radios em formulários e identificar o campo.\n * O valor é obrigatório e deve ser fornecido para garantir o correto funcionamento em formulários.\n */\n\n @Prop({ reflect: true }) name!: string\n\n /**\n * Texto descritivo exibido à direita do radio.\n * Caso um slot seja utilizado para fornecer um texto alternativo, o valor desta propriedade será ignorado.\n */\n @Prop({ reflect: true }) label: string\n\n /**\n * Define o valor associado ao radio quando ele faz parte de um formulário nativo (`<form>`).\n * Esse valor é enviado com o formulário quando o radio está selecionado.\n * **Nota:** Esta propriedade não deve ser utilizada para determinar se o radio está selecionado; para verificar o estado de seleção, use a propriedade `checked`.\n */\n @Prop({ reflect: true }) value: any\n\n /**\n * Especifica o ID do componente, que é usado para conectar o label correspondente ao radio.\n * Se não for fornecido, o ID será o mesmo valor atribuído à propriedade `name`.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string\n\n /**\n * Indica se o radio pode alternar seu estado checked\n */\n @Prop({ reflect: true }) toggle: boolean = false\n\n /**\n * Propriedade que vai guardar o valor da validação do slot\n */\n @State() _slotDefault: boolean = false\n\n // Faz a marcação do checkbox de acordo com a seleção do componente item do tipo is-interactive\n @Listen('brDidSelect', { target: 'document' })\n handleItemInteractiveSelect(event: CustomEvent) {\n\n // Verifica se o evento é de um pai correto\n const target = event.target as HTMLElement;\n const brItem = target.closest('br-item') as HTMLElement;\n\n if (brItem && this.el.parentElement?.contains(brItem)) {\n this.checked = event.detail.selected;\n }\n\n event.stopPropagation();\n }\n\n /**\n * Emite um evento quando o componente é conectado ao DOM.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#connectedcallback) para mais detalhes.\n */\n @Event() brDidConnect: EventEmitter<void>\n connectedCallback() {\n this.brDidConnect.emit()\n }\n\n /**\n * Emite um evento antes que o componente seja carregado pela primeira vez.\n * Utilize este evento para realizar tarefas de inicialização antes do componente ser exibido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this.hasSlotContentDefault()\n this.brWillLoad.emit()\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n /**\n * Emite um evento após o componente ter sido carregado pela primeira vez.\n * Utilize este evento para realizar ações que devem ocorrer depois que o componente foi totalmente carregado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes.\n */\n @Event() brDidLoad: EventEmitter<void>\n componentDidLoad() {\n this.brDidLoad.emit()\n }\n\n /**\n * Emite um evento antes do componente ser renderizado.\n * Utilize este evento para preparar o componente antes de sua renderização.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillrender) para mais detalhes.\n */\n @Event() brWillRender: EventEmitter<void>\n componentWillRender() {\n this.brWillRender.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido renderizado.\n * Utilize este evento para executar ações que devem ocorrer após a renderização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidrender) para mais detalhes.\n */\n @Event() brDidRender: EventEmitter<void>\n componentDidRender() {\n this.brDidRender.emit()\n }\n\n /**\n * Emite um evento para indicar se o componente deve ser atualizado ou não.\n * Este evento é chamado antes de qualquer atualização do componente para decidir se a atualização deve prosseguir.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentshouldupdate) para mais detalhes.\n */\n @Event() brShouldUpdate: EventEmitter<void>\n componentShouldUpdate() {\n this.brShouldUpdate.emit()\n }\n\n /**\n * Emite um evento antes de o componente ser atualizado.\n * Utilize este evento para realizar ações preparatórias antes da atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillupdate) para mais detalhes.\n */\n @Event() brWillUpdate: EventEmitter<void>\n componentWillUpdate() {\n this.brWillUpdate.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido atualizado.\n * Utilize este evento para realizar ações após a atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidupdate) para mais detalhes.\n */\n @Event() brDidUpdate: EventEmitter<void>\n componentDidUpdate() {\n this.brDidUpdate.emit()\n }\n\n /**\n * Emite um evento quando o componente é desconectado do DOM.\n * Utilize este evento para realizar a limpeza ou outras ações necessárias quando o componente é removido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#disconnectedcallback) para mais detalhes.\n */\n @Event() brDidDisconnect: EventEmitter<void>\n disconnectedCallback() {\n this.brDidDisconnect.emit()\n }\n\n /**\n * Emite um evento quando o componente é associado ou removido de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formassociatedcallback) para mais detalhes.\n *\n * @param form - Dados do formulário associado.\n */\n @Event() brFormAssociatedCallback: EventEmitter<FormData>\n formAssociatedCallback(form: FormData) {\n this.brFormAssociatedCallback.emit(form)\n }\n\n /**\n * Emite um evento quando o estado `disabled` do componente muda dentro de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formdisabledcallback) para mais informações.\n *\n * @param disabled - Novo estado `disabled` do componente dentro do formulário.\n */\n @Event() brFormDisabledCallback: EventEmitter<boolean>\n formDisabledCallback(disabled: boolean) {\n this.brFormDisabledCallback.emit(disabled)\n }\n\n /**\n * Emite um evento quando um `<form>` é resetado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formresetcallback) para mais detalhes.\n */\n @Event() brFormResetCallback: EventEmitter<void>\n formResetCallback() {\n this.brFormResetCallback.emit()\n }\n\n /**\n * Emite um evento quando o navegador preenche automaticamente os campos de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formstaterestorecallback) para mais informações.\n *\n * @param state - Estado restaurado do formulário.\n * @param _mode - Modo de preenchimento automático do navegador.\n */\n @Event() brFormStateRestoreCallback: EventEmitter<[state: string, _mode: string]>\n formStateRestoreCallback(state: string, _mode: string) {\n this.brFormStateRestoreCallback.emit([state, _mode])\n }\n\n private hasSlotContentDefault(): any {\n this._slotDefault = this.el.innerHTML !== ''\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-radio': true,\n valid: this.state === 'valid',\n invalid: this.state === 'invalid',\n disabled: this.disabled,\n 'hidden-label': this.hasHiddenLabel,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n /**\n * Componente teve seu estado \"checked\" alterado\n */\n @Event() brDidCheckedChange: EventEmitter<{ value: boolean; checked: boolean }>\n\n @Method()\n /**\n * Handler para o evento \"onClick\"\n */\n async handleClick() {\n this.toggleChecked()\n }\n\n @Method()\n /**\n * Handler para o evento \"onKeyDown\"\n */\n async handleKeyDown(event: KeyboardEvent) {\n // Permite alternar o estado apenas quando a tecla pressionada é 'Space'\n if (event.code === 'Space') {\n event.preventDefault() // Impede o comportamento padrão da tecla 'Space'\n this.toggleChecked()\n }\n }\n\n /**\n * Controla o comportamento de alternar o estado checked.\n */\n private toggleChecked() {\n if (this.toggle) {\n this.checked = !this.checked\n this.brDidCheckedChange.emit({ value: this.value, checked: this.checked })\n }\n }\n\n /**\n * Determina um id para o radio.\n */\n private getComputedId(): string {\n return this.customId ? this.customId : this.name\n }\n\n render() {\n return (\n <Host aria-disabled={this.disabled ? 'true' : null}>\n <div\n class={this.getCssClassMap()}\n onClick={() => this.handleClick()}\n onKeyDown={(event) => this.handleKeyDown(event)}\n >\n <input\n aria-label={this.label}\n type=\"radio\"\n id={this.getComputedId()}\n name={this.name}\n checked={this.checked}\n disabled={this.disabled}\n value={this.value}\n onClick={(event) => event.stopPropagation()}\n {...this.inheritedAttributes}\n />\n <label htmlFor={this.getComputedId()}>{this._slotDefault ? <slot></slot> : this.label}</label>\n </div>\n </Host>\n )\n }\n}\n"],"version":3}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { p as proxyCustomElement, H, c as createEvent, h, d as Host } from './p-
|
|
1
|
+
import { p as proxyCustomElement, H, c as createEvent, h, d as Host } from './p-4c4ab942.js';
|
|
2
2
|
import { i as inheritAriaAttributes } from './p-ee6f4f3f.js';
|
|
3
3
|
import { v as v4 } from './p-14616bce.js';
|
|
4
4
|
|
package/dist/components/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { g as getAssetPath, s as setAssetPath, a as setNonce, b as setPlatformOptions } from './p-
|
|
1
|
+
export { g as getAssetPath, s as setAssetPath, a as setNonce, b as setPlatformOptions } from './p-4c4ab942.js';
|
|
2
2
|
export { BrAvatar, defineCustomElement as defineCustomElementBrAvatar } from './br-avatar.js';
|
|
3
3
|
export { BrButton, defineCustomElement as defineCustomElementBrButton } from './br-button.js';
|
|
4
4
|
export { BrCheckbox, defineCustomElement as defineCustomElementBrCheckbox } from './br-checkbox.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const NAMESPACE = 'webcomponents';
|
|
2
|
-
const BUILD = /* webcomponents */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: true, cmpDidUnload: false, cmpDidUpdate: true, cmpShouldUpdate: true, cmpWillLoad: true, cmpWillRender: true, cmpWillUpdate: true, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: true, hasRenderFn: true, hostListener:
|
|
2
|
+
const BUILD = /* webcomponents */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: true, cmpDidUnload: false, cmpDidUpdate: true, cmpShouldUpdate: true, cmpWillLoad: true, cmpWillRender: true, cmpWillUpdate: true, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: true, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: true, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: true, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: false, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: false, taskQueue: true, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: true, watchCallback: false };
|
|
3
3
|
|
|
4
4
|
/*
|
|
5
5
|
Stencil Client Platform v4.21.0 | MIT Licensed | https://stenciljs.com
|
|
@@ -88,6 +88,22 @@ var plt = {
|
|
|
88
88
|
ce: (eventName, opts) => new CustomEvent(eventName, opts)
|
|
89
89
|
};
|
|
90
90
|
var supportsShadow = BUILD.shadowDom;
|
|
91
|
+
var supportsListenerOptions = /* @__PURE__ */ (() => {
|
|
92
|
+
let supportsListenerOptions2 = false;
|
|
93
|
+
try {
|
|
94
|
+
doc.addEventListener(
|
|
95
|
+
"e",
|
|
96
|
+
null,
|
|
97
|
+
Object.defineProperty({}, "passive", {
|
|
98
|
+
get() {
|
|
99
|
+
supportsListenerOptions2 = true;
|
|
100
|
+
}
|
|
101
|
+
})
|
|
102
|
+
);
|
|
103
|
+
} catch (e) {
|
|
104
|
+
}
|
|
105
|
+
return supportsListenerOptions2;
|
|
106
|
+
})();
|
|
91
107
|
var promiseResolve = (v) => Promise.resolve(v);
|
|
92
108
|
var supportsConstructableStylesheets = /* @__PURE__ */ (() => {
|
|
93
109
|
try {
|
|
@@ -1365,6 +1381,7 @@ var connectedCallback = (elm) => {
|
|
|
1365
1381
|
initializeComponent(elm, hostRef, cmpMeta);
|
|
1366
1382
|
}
|
|
1367
1383
|
} else {
|
|
1384
|
+
addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
|
|
1368
1385
|
if (hostRef == null ? void 0 : hostRef.$lazyInstance$) ; else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {
|
|
1369
1386
|
hostRef.$onReadyPromise$.then(() => fireConnectedCallback());
|
|
1370
1387
|
}
|
|
@@ -1374,7 +1391,13 @@ var connectedCallback = (elm) => {
|
|
|
1374
1391
|
};
|
|
1375
1392
|
var disconnectedCallback = async (elm) => {
|
|
1376
1393
|
if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {
|
|
1377
|
-
getHostRef(elm);
|
|
1394
|
+
const hostRef = getHostRef(elm);
|
|
1395
|
+
{
|
|
1396
|
+
if (hostRef.$rmListeners$) {
|
|
1397
|
+
hostRef.$rmListeners$.map((rmListener) => rmListener());
|
|
1398
|
+
hostRef.$rmListeners$ = void 0;
|
|
1399
|
+
}
|
|
1400
|
+
}
|
|
1378
1401
|
}
|
|
1379
1402
|
};
|
|
1380
1403
|
var proxyCustomElement = (Cstr, compactMeta) => {
|
|
@@ -1385,6 +1408,9 @@ var proxyCustomElement = (Cstr, compactMeta) => {
|
|
|
1385
1408
|
{
|
|
1386
1409
|
cmpMeta.$members$ = compactMeta[2];
|
|
1387
1410
|
}
|
|
1411
|
+
{
|
|
1412
|
+
cmpMeta.$listeners$ = compactMeta[3];
|
|
1413
|
+
}
|
|
1388
1414
|
{
|
|
1389
1415
|
cmpMeta.$attrsToReflect$ = [];
|
|
1390
1416
|
}
|
|
@@ -1395,7 +1421,8 @@ var proxyCustomElement = (Cstr, compactMeta) => {
|
|
|
1395
1421
|
registerHost(this, cmpMeta);
|
|
1396
1422
|
},
|
|
1397
1423
|
connectedCallback() {
|
|
1398
|
-
getHostRef(this);
|
|
1424
|
+
const hostRef = getHostRef(this);
|
|
1425
|
+
addHostEventListeners(this, hostRef, cmpMeta.$listeners$);
|
|
1399
1426
|
connectedCallback(this);
|
|
1400
1427
|
if (originalConnectedCallback) {
|
|
1401
1428
|
originalConnectedCallback.call(this);
|
|
@@ -1426,6 +1453,34 @@ var proxyCustomElement = (Cstr, compactMeta) => {
|
|
|
1426
1453
|
Cstr.is = cmpMeta.$tagName$;
|
|
1427
1454
|
return proxyComponent(Cstr, cmpMeta, 1 /* isElementConstructor */ | 2 /* proxyState */);
|
|
1428
1455
|
};
|
|
1456
|
+
var addHostEventListeners = (elm, hostRef, listeners, attachParentListeners) => {
|
|
1457
|
+
if (listeners) {
|
|
1458
|
+
listeners.map(([flags, name, method]) => {
|
|
1459
|
+
const target = getHostListenerTarget(elm, flags) ;
|
|
1460
|
+
const handler = hostListenerProxy(hostRef, method);
|
|
1461
|
+
const opts = hostListenerOpts(flags);
|
|
1462
|
+
plt.ael(target, name, handler, opts);
|
|
1463
|
+
(hostRef.$rmListeners$ = hostRef.$rmListeners$ || []).push(() => plt.rel(target, name, handler, opts));
|
|
1464
|
+
});
|
|
1465
|
+
}
|
|
1466
|
+
};
|
|
1467
|
+
var hostListenerProxy = (hostRef, methodName) => (ev) => {
|
|
1468
|
+
try {
|
|
1469
|
+
{
|
|
1470
|
+
hostRef.$hostElement$[methodName](ev);
|
|
1471
|
+
}
|
|
1472
|
+
} catch (e) {
|
|
1473
|
+
consoleError(e);
|
|
1474
|
+
}
|
|
1475
|
+
};
|
|
1476
|
+
var getHostListenerTarget = (elm, flags) => {
|
|
1477
|
+
if (flags & 4 /* TargetDocument */) return doc;
|
|
1478
|
+
return elm;
|
|
1479
|
+
};
|
|
1480
|
+
var hostListenerOpts = (flags) => supportsListenerOptions ? {
|
|
1481
|
+
passive: (flags & 1 /* Passive */) !== 0,
|
|
1482
|
+
capture: (flags & 2 /* Capture */) !== 0
|
|
1483
|
+
} : (flags & 2 /* Capture */) !== 0;
|
|
1429
1484
|
|
|
1430
1485
|
// src/runtime/nonce.ts
|
|
1431
1486
|
var setNonce = (nonce) => plt.$nonce$ = nonce;
|
|
@@ -1435,4 +1490,4 @@ var setPlatformOptions = (opts) => Object.assign(plt, opts);
|
|
|
1435
1490
|
|
|
1436
1491
|
export { H, setNonce as a, setPlatformOptions as b, createEvent as c, Host as d, getAssetPath as g, h, proxyCustomElement as p, setAssetPath as s };
|
|
1437
1492
|
|
|
1438
|
-
//# sourceMappingURL=p-
|
|
1493
|
+
//# sourceMappingURL=p-4c4ab942.js.map
|