@govbr-ds/webcomponents 2.0.0-next.8 → 2.0.0-next.9
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 +46 -37
- package/dist/cjs/br-avatar.cjs.entry.js.map +1 -1
- package/dist/cjs/br-button_2.cjs.entry.js +21 -24
- package/dist/cjs/br-button_2.cjs.entry.js.map +1 -1
- package/dist/cjs/br-checkbox.cjs.entry.js +11 -12
- package/dist/cjs/br-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/br-input.cjs.entry.js +12 -13
- package/dist/cjs/br-input.cjs.entry.js.map +1 -1
- package/dist/cjs/br-item.cjs.entry.js +12 -15
- package/dist/cjs/br-item.cjs.entry.js.map +1 -1
- package/dist/cjs/br-loading.cjs.entry.js +11 -12
- package/dist/cjs/br-loading.cjs.entry.js.map +1 -1
- package/dist/cjs/br-message.cjs.entry.js +11 -12
- package/dist/cjs/br-message.cjs.entry.js.map +1 -1
- package/dist/cjs/br-radio.cjs.entry.js +11 -12
- package/dist/cjs/br-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/br-switch.cjs.entry.js +11 -12
- package/dist/cjs/br-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/{index-c3888765.js → index-af20d91d.js} +20 -14
- package/dist/cjs/index-af20d91d.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/webcomponents.cjs.js +2 -2
- package/dist/cjs/webcomponents.cjs.js.map +1 -1
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/avatar/avatar.js +66 -57
- package/dist/collection/components/avatar/avatar.js.map +1 -1
- package/dist/collection/components/button/button.js +30 -31
- package/dist/collection/components/button/button.js.map +1 -1
- package/dist/collection/components/checkbox/checkbox.js +30 -31
- package/dist/collection/components/checkbox/checkbox.js.map +1 -1
- package/dist/collection/components/icon/icon.js +28 -30
- package/dist/collection/components/icon/icon.js.map +1 -1
- package/dist/collection/components/input/input.css +7 -0
- package/dist/collection/components/input/input.js +30 -31
- package/dist/collection/components/input/input.js.map +1 -1
- package/dist/collection/components/item/item.js +31 -34
- package/dist/collection/components/item/item.js.map +1 -1
- package/dist/collection/components/loading/loading.js +28 -29
- package/dist/collection/components/loading/loading.js.map +1 -1
- package/dist/collection/components/message/message.js +28 -29
- package/dist/collection/components/message/message.js.map +1 -1
- package/dist/collection/components/radio/radio.js +30 -31
- package/dist/collection/components/radio/radio.js.map +1 -1
- package/dist/collection/components/switch/switch.js +30 -31
- package/dist/collection/components/switch/switch.js.map +1 -1
- package/dist/components/br-avatar.js +49 -40
- package/dist/components/br-avatar.js.map +1 -1
- package/dist/components/br-button.js +1 -1
- package/dist/components/br-checkbox.js +13 -14
- package/dist/components/br-checkbox.js.map +1 -1
- package/dist/components/br-icon.js +1 -1
- package/dist/components/br-input.js +17 -18
- package/dist/components/br-input.js.map +1 -1
- package/dist/components/br-item.js +13 -16
- package/dist/components/br-item.js.map +1 -1
- package/dist/components/br-loading.js +13 -14
- package/dist/components/br-loading.js.map +1 -1
- package/dist/components/br-message.js +15 -16
- package/dist/components/br-message.js.map +1 -1
- package/dist/components/br-radio.js +13 -14
- package/dist/components/br-radio.js.map +1 -1
- package/dist/components/br-switch.js +14 -15
- package/dist/components/br-switch.js.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/{v4.js → p-14616bce.js} +1 -1
- package/dist/components/p-14616bce.js.map +1 -0
- package/dist/components/p-1b06f3d9.js +1438 -0
- package/dist/components/p-1b06f3d9.js.map +1 -0
- package/dist/components/{icon.js → p-75879137.js} +14 -16
- package/dist/components/p-75879137.js.map +1 -0
- package/dist/components/{inherited-attributes.js → p-ee6f4f3f.js} +1 -1
- package/dist/components/p-ee6f4f3f.js.map +1 -0
- package/dist/components/{button.js → p-f3ca1c10.js} +14 -15
- package/dist/components/p-f3ca1c10.js.map +1 -0
- package/dist/esm/br-avatar.entry.js +46 -37
- package/dist/esm/br-avatar.entry.js.map +1 -1
- package/dist/esm/br-button_2.entry.js +21 -24
- package/dist/esm/br-button_2.entry.js.map +1 -1
- package/dist/esm/br-checkbox.entry.js +11 -12
- package/dist/esm/br-checkbox.entry.js.map +1 -1
- package/dist/esm/br-input.entry.js +12 -13
- package/dist/esm/br-input.entry.js.map +1 -1
- package/dist/esm/br-item.entry.js +12 -15
- package/dist/esm/br-item.entry.js.map +1 -1
- package/dist/esm/br-loading.entry.js +11 -12
- package/dist/esm/br-loading.entry.js.map +1 -1
- package/dist/esm/br-message.entry.js +11 -12
- package/dist/esm/br-message.entry.js.map +1 -1
- package/dist/esm/br-radio.entry.js +11 -12
- package/dist/esm/br-radio.entry.js.map +1 -1
- package/dist/esm/br-switch.entry.js +11 -12
- package/dist/esm/br-switch.entry.js.map +1 -1
- package/dist/esm/{index-c26b44a5.js → index-4f7580f8.js} +20 -14
- package/dist/esm/index-4f7580f8.js.map +1 -0
- package/dist/esm/loader.js +2 -2
- package/dist/esm/webcomponents.js +3 -3
- package/dist/esm/webcomponents.js.map +1 -1
- package/dist/types/components/avatar/avatar.d.ts +13 -10
- package/dist/types/components/button/button.d.ts +10 -10
- package/dist/types/components/checkbox/checkbox.d.ts +10 -10
- package/dist/types/components/icon/icon.d.ts +9 -9
- package/dist/types/components/input/input.d.ts +10 -10
- package/dist/types/components/item/item.d.ts +10 -10
- package/dist/types/components/loading/loading.d.ts +9 -9
- package/dist/types/components/message/message.d.ts +9 -9
- package/dist/types/components/radio/radio.d.ts +10 -10
- package/dist/types/components/switch/switch.d.ts +10 -10
- package/dist/types/components.d.ts +194 -194
- package/dist/webcomponents/p-104a47a9.js +3 -0
- package/dist/webcomponents/p-104a47a9.js.map +1 -0
- package/dist/webcomponents/{p-eaca93a8.entry.js → p-194d749e.entry.js} +2 -2
- package/dist/webcomponents/p-194d749e.entry.js.map +1 -0
- package/dist/webcomponents/{p-746d2dae.entry.js → p-563e73f4.entry.js} +2 -2
- package/dist/webcomponents/p-563e73f4.entry.js.map +1 -0
- package/dist/webcomponents/{p-c8fd38c6.entry.js → p-786e07d7.entry.js} +3 -3
- package/dist/webcomponents/p-786e07d7.entry.js.map +1 -0
- package/dist/webcomponents/{p-0dd14da5.entry.js → p-8d69ee5a.entry.js} +2 -2
- package/dist/webcomponents/p-8d69ee5a.entry.js.map +1 -0
- package/dist/webcomponents/{p-dd2d3c16.entry.js → p-b771d400.entry.js} +2 -2
- package/dist/webcomponents/p-b771d400.entry.js.map +1 -0
- package/dist/webcomponents/{p-1d1429c8.entry.js → p-c0a45bc7.entry.js} +2 -2
- package/dist/webcomponents/p-c0a45bc7.entry.js.map +1 -0
- package/dist/webcomponents/{p-c6aa14f5.entry.js → p-d671a100.entry.js} +2 -2
- package/dist/webcomponents/p-d671a100.entry.js.map +1 -0
- package/dist/webcomponents/{p-89f87c47.entry.js → p-e0e51b05.entry.js} +2 -2
- package/dist/webcomponents/p-e0e51b05.entry.js.map +1 -0
- package/dist/webcomponents/{p-28e6ccf9.entry.js → p-ed6a071a.entry.js} +2 -2
- package/dist/webcomponents/p-ed6a071a.entry.js.map +1 -0
- package/dist/webcomponents/webcomponents.esm.js +1 -1
- package/dist/webcomponents/webcomponents.esm.js.map +1 -1
- package/hydrate/index.d.ts +4 -4
- package/hydrate/index.js +162 -154
- package/hydrate/index.mjs +162 -154
- package/package.json +7 -7
- package/vscode-data.json +1 -12
- package/dist/cjs/index-c3888765.js.map +0 -1
- package/dist/collection/utils/events-global.js +0 -80
- package/dist/collection/utils/events-global.js.map +0 -1
- package/dist/components/button.js.map +0 -1
- package/dist/components/icon.js.map +0 -1
- package/dist/components/inherited-attributes.js.map +0 -1
- package/dist/components/v4.js.map +0 -1
- package/dist/esm/index-c26b44a5.js.map +0 -1
- package/dist/types/utils/events-global.d.ts +0 -73
- package/dist/webcomponents/p-0dd14da5.entry.js.map +0 -1
- package/dist/webcomponents/p-1d1429c8.entry.js.map +0 -1
- package/dist/webcomponents/p-28e6ccf9.entry.js.map +0 -1
- package/dist/webcomponents/p-746d2dae.entry.js.map +0 -1
- package/dist/webcomponents/p-89f87c47.entry.js.map +0 -1
- package/dist/webcomponents/p-c6aa14f5.entry.js.map +0 -1
- package/dist/webcomponents/p-c8fd38c6.entry.js.map +0 -1
- package/dist/webcomponents/p-ccfb45d3.js +0 -3
- package/dist/webcomponents/p-ccfb45d3.js.map +0 -1
- package/dist/webcomponents/p-dd2d3c16.entry.js.map +0 -1
- package/dist/webcomponents/p-eaca93a8.entry.js.map +0 -1
|
@@ -1,12 +1,31 @@
|
|
|
1
1
|
import { h, Host } from "@stencil/core";
|
|
2
2
|
import { inheritAriaAttributes } from "../../utils/inherited-attributes";
|
|
3
|
+
var Density;
|
|
4
|
+
(function (Density) {
|
|
5
|
+
Density["Small"] = "small";
|
|
6
|
+
Density["Medium"] = "medium";
|
|
7
|
+
Density["Large"] = "large";
|
|
8
|
+
})(Density || (Density = {}));
|
|
3
9
|
/**
|
|
4
10
|
* Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/avatar?tab=designer).
|
|
5
11
|
*/
|
|
6
12
|
export class Avatar {
|
|
7
13
|
constructor() {
|
|
14
|
+
/**
|
|
15
|
+
* Calcula o tamanho dos ícones de acordo com a classe de densidade
|
|
16
|
+
*/
|
|
17
|
+
this.iconSizes = {
|
|
18
|
+
small: { height: '32', width: '40' },
|
|
19
|
+
medium: { height: '80', width: '88' },
|
|
20
|
+
large: { height: '128', width: '136' },
|
|
21
|
+
};
|
|
22
|
+
this.iconMarginTops = {
|
|
23
|
+
small: '0.7em',
|
|
24
|
+
medium: '1em',
|
|
25
|
+
large: '0.62em',
|
|
26
|
+
};
|
|
8
27
|
this.inheritedAttributes = {};
|
|
9
|
-
this.density =
|
|
28
|
+
this.density = Density.Medium;
|
|
10
29
|
this.image = undefined;
|
|
11
30
|
this.imageAlt = 'Imagem do avatar';
|
|
12
31
|
this.isIconic = false;
|
|
@@ -15,34 +34,33 @@ export class Avatar {
|
|
|
15
34
|
this.iconHeight = undefined;
|
|
16
35
|
}
|
|
17
36
|
connectedCallback() {
|
|
18
|
-
this.brDidConnect.emit(
|
|
37
|
+
this.brDidConnect.emit();
|
|
19
38
|
}
|
|
20
39
|
componentWillLoad() {
|
|
21
|
-
this.brWillLoad.emit(
|
|
40
|
+
this.brWillLoad.emit();
|
|
22
41
|
this.inheritedAttributes = inheritAriaAttributes(this.el);
|
|
23
42
|
this.setIconSize();
|
|
24
43
|
}
|
|
25
44
|
componentDidLoad() {
|
|
26
|
-
this.brDidLoad.emit(
|
|
45
|
+
this.brDidLoad.emit();
|
|
27
46
|
}
|
|
28
47
|
componentWillRender() {
|
|
29
|
-
this.brWillRender.emit(
|
|
48
|
+
this.brWillRender.emit();
|
|
30
49
|
}
|
|
31
50
|
componentDidRender() {
|
|
32
|
-
this.brDidRender.emit(
|
|
51
|
+
this.brDidRender.emit();
|
|
33
52
|
}
|
|
34
53
|
componentShouldUpdate() {
|
|
35
|
-
this.brShouldUpdate.emit(
|
|
54
|
+
this.brShouldUpdate.emit();
|
|
36
55
|
}
|
|
37
56
|
componentWillUpdate() {
|
|
38
|
-
this.brWillUpdate.emit(
|
|
57
|
+
this.brWillUpdate.emit();
|
|
39
58
|
}
|
|
40
59
|
componentDidUpdate() {
|
|
41
|
-
this.brDidUpdate.emit(
|
|
60
|
+
this.brDidUpdate.emit();
|
|
42
61
|
}
|
|
43
62
|
disconnectedCallback() {
|
|
44
|
-
|
|
45
|
-
this.brDidDisconnect.emit(this);
|
|
63
|
+
this.brDidDisconnect.emit();
|
|
46
64
|
}
|
|
47
65
|
/**
|
|
48
66
|
* Gera um mapa de classes CSS com base nas propriedades do componente.
|
|
@@ -54,45 +72,36 @@ export class Avatar {
|
|
|
54
72
|
getCssClassMap() {
|
|
55
73
|
return {
|
|
56
74
|
'br-avatar': true,
|
|
57
|
-
small: this.density ===
|
|
58
|
-
medium: this.density ===
|
|
59
|
-
large: this.density ===
|
|
75
|
+
small: this.density === Density.Small,
|
|
76
|
+
medium: this.density === Density.Medium,
|
|
77
|
+
large: this.density === Density.Large,
|
|
60
78
|
};
|
|
61
79
|
}
|
|
62
|
-
/**
|
|
63
|
-
* Calcula o tamanho dos ícones de acordo com a classe de densidade
|
|
64
|
-
*/
|
|
65
80
|
setIconSize() {
|
|
66
81
|
var _a, _b;
|
|
67
|
-
if (!((_a = this.image) === null || _a === void 0 ? void 0 : _a.trim) && !((_b = this.text) === null || _b === void 0 ? void 0 : _b.trim)) {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
}
|
|
72
|
-
if (this.density === 'medium') {
|
|
73
|
-
this.iconHeight = '80';
|
|
74
|
-
this.iconWidth = '88';
|
|
75
|
-
}
|
|
76
|
-
if (this.density === 'large') {
|
|
77
|
-
this.iconHeight = '128';
|
|
78
|
-
this.iconWidth = '136';
|
|
79
|
-
}
|
|
82
|
+
if (!((_a = this.image) === null || _a === void 0 ? void 0 : _a.trim().length) && !((_b = this.text) === null || _b === void 0 ? void 0 : _b.trim().length)) {
|
|
83
|
+
const size = this.iconSizes[this.density];
|
|
84
|
+
this.iconHeight = size.height;
|
|
85
|
+
this.iconWidth = size.width;
|
|
80
86
|
}
|
|
81
87
|
}
|
|
88
|
+
adjustIconStyle(density) {
|
|
89
|
+
return this.iconMarginTops[density] || '1em';
|
|
90
|
+
}
|
|
82
91
|
renderAvatar() {
|
|
83
92
|
var _a, _b;
|
|
84
|
-
if ((_a = this.text) === null || _a === void 0 ? void 0 : _a.trim) {
|
|
85
|
-
return h("span", { class: "content bg-support-01 text-pure-0" }, this.text[0].toUpperCase());
|
|
93
|
+
if ((_a = this.text) === null || _a === void 0 ? void 0 : _a.trim().length) {
|
|
94
|
+
return (h("span", { class: "content bg-support-01 text-pure-0", title: this.text }, this.text[0].toUpperCase()));
|
|
86
95
|
}
|
|
87
|
-
if ((_b = this.image) === null || _b === void 0 ? void 0 : _b.trim) {
|
|
88
|
-
return (h("span", { class: "content" }, h("img", { src: this.image, alt: this.imageAlt, loading: "lazy" })));
|
|
96
|
+
if ((_b = this.image) === null || _b === void 0 ? void 0 : _b.trim().length) {
|
|
97
|
+
return (h("span", { class: "content", title: this.imageAlt || this.text }, h("img", { src: this.image, alt: this.imageAlt, loading: "lazy" })));
|
|
89
98
|
}
|
|
90
99
|
if (this.isIconic) {
|
|
91
|
-
return (h("span", { class: "content" }, h("br-icon", { "icon-name": "fa-solid:user", height: this.iconHeight, width: this.iconWidth, "aria-hidden": "true" })));
|
|
100
|
+
return (h("span", { class: "content", title: this.text }, h("br-icon", { "icon-name": "fa-solid:user", height: this.iconHeight, width: this.iconWidth, "aria-hidden": "true", style: { 'margin-top': this.adjustIconStyle(this.density) } })));
|
|
92
101
|
}
|
|
93
102
|
}
|
|
94
103
|
render() {
|
|
95
|
-
return (h(Host, { key: '
|
|
104
|
+
return (h(Host, { key: '3ec24f0b250572d05af4058ef5d1c135414a3237' }, h("span", Object.assign({ key: 'ca670019b75e79dfde00b8e065d169673ec781ec', class: this.getCssClassMap() }, this.inheritedAttributes), this.renderAvatar())));
|
|
96
105
|
}
|
|
97
106
|
static get is() { return "br-avatar"; }
|
|
98
107
|
static get encapsulation() { return "shadow"; }
|
|
@@ -112,8 +121,8 @@ export class Avatar {
|
|
|
112
121
|
"type": "string",
|
|
113
122
|
"mutable": false,
|
|
114
123
|
"complexType": {
|
|
115
|
-
"original": "
|
|
116
|
-
"resolved": "
|
|
124
|
+
"original": "string",
|
|
125
|
+
"resolved": "string",
|
|
117
126
|
"references": {}
|
|
118
127
|
},
|
|
119
128
|
"required": false,
|
|
@@ -124,7 +133,7 @@ export class Avatar {
|
|
|
124
133
|
},
|
|
125
134
|
"attribute": "density",
|
|
126
135
|
"reflect": false,
|
|
127
|
-
"defaultValue": "
|
|
136
|
+
"defaultValue": "Density.Medium"
|
|
128
137
|
},
|
|
129
138
|
"image": {
|
|
130
139
|
"type": "string",
|
|
@@ -216,8 +225,8 @@ export class Avatar {
|
|
|
216
225
|
"text": "Emite um evento quando o componente \u00E9 conectado ao DOM.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#connectedcallback) para mais detalhes."
|
|
217
226
|
},
|
|
218
227
|
"complexType": {
|
|
219
|
-
"original": "
|
|
220
|
-
"resolved": "
|
|
228
|
+
"original": "void",
|
|
229
|
+
"resolved": "void",
|
|
221
230
|
"references": {}
|
|
222
231
|
}
|
|
223
232
|
}, {
|
|
@@ -231,8 +240,8 @@ export class Avatar {
|
|
|
231
240
|
"text": "Emite um evento antes que o componente seja carregado pela primeira vez.\nUtilize este evento para realizar tarefas de inicializa\u00E7\u00E3o antes do componente ser exibido.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes."
|
|
232
241
|
},
|
|
233
242
|
"complexType": {
|
|
234
|
-
"original": "
|
|
235
|
-
"resolved": "
|
|
243
|
+
"original": "void",
|
|
244
|
+
"resolved": "void",
|
|
236
245
|
"references": {}
|
|
237
246
|
}
|
|
238
247
|
}, {
|
|
@@ -246,8 +255,8 @@ export class Avatar {
|
|
|
246
255
|
"text": "Emite um evento ap\u00F3s o componente ter sido carregado pela primeira vez.\nUtilize este evento para realizar a\u00E7\u00F5es que devem ocorrer depois que o componente foi totalmente carregado.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes."
|
|
247
256
|
},
|
|
248
257
|
"complexType": {
|
|
249
|
-
"original": "
|
|
250
|
-
"resolved": "
|
|
258
|
+
"original": "void",
|
|
259
|
+
"resolved": "void",
|
|
251
260
|
"references": {}
|
|
252
261
|
}
|
|
253
262
|
}, {
|
|
@@ -261,8 +270,8 @@ export class Avatar {
|
|
|
261
270
|
"text": "Emite um evento antes do componente ser renderizado.\nUtilize este evento para preparar o componente antes de sua renderiza\u00E7\u00E3o.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillrender) para mais detalhes."
|
|
262
271
|
},
|
|
263
272
|
"complexType": {
|
|
264
|
-
"original": "
|
|
265
|
-
"resolved": "
|
|
273
|
+
"original": "void",
|
|
274
|
+
"resolved": "void",
|
|
266
275
|
"references": {}
|
|
267
276
|
}
|
|
268
277
|
}, {
|
|
@@ -276,8 +285,8 @@ export class Avatar {
|
|
|
276
285
|
"text": "Emite um evento ap\u00F3s o componente ter sido renderizado.\nUtilize este evento para executar a\u00E7\u00F5es que devem ocorrer ap\u00F3s a renderiza\u00E7\u00E3o do componente.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidrender) para mais detalhes."
|
|
277
286
|
},
|
|
278
287
|
"complexType": {
|
|
279
|
-
"original": "
|
|
280
|
-
"resolved": "
|
|
288
|
+
"original": "void",
|
|
289
|
+
"resolved": "void",
|
|
281
290
|
"references": {}
|
|
282
291
|
}
|
|
283
292
|
}, {
|
|
@@ -291,8 +300,8 @@ export class Avatar {
|
|
|
291
300
|
"text": "Emite um evento para indicar se o componente deve ser atualizado ou n\u00E3o.\nEste evento \u00E9 chamado antes de qualquer atualiza\u00E7\u00E3o do componente para decidir se a atualiza\u00E7\u00E3o deve prosseguir.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentshouldupdate) para mais detalhes."
|
|
292
301
|
},
|
|
293
302
|
"complexType": {
|
|
294
|
-
"original": "
|
|
295
|
-
"resolved": "
|
|
303
|
+
"original": "void",
|
|
304
|
+
"resolved": "void",
|
|
296
305
|
"references": {}
|
|
297
306
|
}
|
|
298
307
|
}, {
|
|
@@ -306,8 +315,8 @@ export class Avatar {
|
|
|
306
315
|
"text": "Emite um evento antes de o componente ser atualizado.\nUtilize este evento para realizar a\u00E7\u00F5es preparat\u00F3rias antes da atualiza\u00E7\u00E3o do componente.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillupdate) para mais detalhes."
|
|
307
316
|
},
|
|
308
317
|
"complexType": {
|
|
309
|
-
"original": "
|
|
310
|
-
"resolved": "
|
|
318
|
+
"original": "void",
|
|
319
|
+
"resolved": "void",
|
|
311
320
|
"references": {}
|
|
312
321
|
}
|
|
313
322
|
}, {
|
|
@@ -321,8 +330,8 @@ export class Avatar {
|
|
|
321
330
|
"text": "Emite um evento ap\u00F3s o componente ter sido atualizado.\nUtilize este evento para realizar a\u00E7\u00F5es ap\u00F3s a atualiza\u00E7\u00E3o do componente.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidupdate) para mais detalhes."
|
|
322
331
|
},
|
|
323
332
|
"complexType": {
|
|
324
|
-
"original": "
|
|
325
|
-
"resolved": "
|
|
333
|
+
"original": "void",
|
|
334
|
+
"resolved": "void",
|
|
326
335
|
"references": {}
|
|
327
336
|
}
|
|
328
337
|
}, {
|
|
@@ -336,8 +345,8 @@ export class Avatar {
|
|
|
336
345
|
"text": "Emite um evento quando o componente \u00E9 desconectado do DOM.\nUtilize este evento para realizar a limpeza ou outras a\u00E7\u00F5es necess\u00E1rias quando o componente \u00E9 removido.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#disconnectedcallback) para mais detalhes."
|
|
337
346
|
},
|
|
338
347
|
"complexType": {
|
|
339
|
-
"original": "
|
|
340
|
-
"resolved": "
|
|
348
|
+
"original": "void",
|
|
349
|
+
"resolved": "void",
|
|
341
350
|
"references": {}
|
|
342
351
|
}
|
|
343
352
|
}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avatar.js","sourceRoot":"","sources":["../../../src/components/avatar/avatar.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, 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/avatar?tab=designer).\n */\n@Component({\n tag: 'br-avatar',\n styleUrl: 'avatar.scss',\n shadow: true,\n})\nexport class Avatar {\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: HTMLElement\n\n /**\n * Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido.\n */\n @Prop() density: 'small' | 'medium' | 'large' = 'medium'\n\n /**\n * URL da imagem a ser exibida no avatar do tipo 'fotográfico'.\n * Deve ser uma URL válida que aponta para a imagem desejada.\n */\n @Prop() image: string\n\n /**\n * Texto alternativo (alt) associado à imagem do avatar. Essencial para acessibilidade e SEO.\n * Deve descrever de forma clara e concisa o conteúdo da imagem, por exemplo: \"Foto de perfil de João Silva\".\n */\n @Prop() imageAlt = 'Imagem do avatar'\n\n /**\n * Indica se o avatar deve ser exibido como um ícone em vez de uma imagem fotográfica.\n * Se definido como verdadeiro, o avatar será exibido como um ícone.\n */\n @Prop() isIconic: boolean = false\n\n /**\n * Texto exibido no avatar do tipo 'letra'.\n * Esse texto será mostrado em vez de uma imagem e pode ser usado para representar iniciais ou outras informações textuais.\n */\n @Prop() text: string\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<this>\n connectedCallback() {\n this.brDidConnect.emit(this)\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<this>\n componentWillLoad() {\n this.brWillLoad.emit(this)\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n this.setIconSize()\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<this>\n componentDidLoad() {\n this.brDidLoad.emit(this)\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<this>\n componentWillRender() {\n this.brWillRender.emit(this)\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<this>\n componentDidRender() {\n this.brDidRender.emit(this)\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<this>\n componentShouldUpdate() {\n this.brShouldUpdate.emit(this)\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<this>\n componentWillUpdate() {\n this.brWillUpdate.emit(this)\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<this>\n componentDidUpdate() {\n this.brDidUpdate.emit(this)\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<this>\n disconnectedCallback() {\n if (this.el.isConnected) this.brDidDisconnect.emit(this)\n }\n\n // Largura do ícone no avatar do tipo icônico\n @State() iconWidth: string\n\n // Altura do ícone no avatar do tipo icônico\n @State() iconHeight: string\n\n /**\n * Gera um mapa de classes CSS com base nas propriedades do componente.\n * O mapa de classes determina quais classes CSS devem ser aplicadas\n * ao elemento host do componente, ajustando sua aparência.\n *\n * @returns {CssClassMap} Objeto contendo as classes CSS aplicadas.\n */\n private getCssClassMap(): CssClassMap {\n return {\n 'br-avatar': true,\n small: this.density === 'small',\n medium: this.density === 'medium',\n large: this.density === 'large',\n }\n }\n\n /**\n * Calcula o tamanho dos ícones de acordo com a classe de densidade\n */\n private setIconSize() {\n if (!this.image?.trim && !this.text?.trim) {\n if (this.density === 'small') {\n this.iconHeight = '32'\n this.iconWidth = '40'\n }\n\n if (this.density === 'medium') {\n this.iconHeight = '80'\n this.iconWidth = '88'\n }\n\n if (this.density === 'large') {\n this.iconHeight = '128'\n this.iconWidth = '136'\n }\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n private renderAvatar() {\n if (this.text?.trim) {\n return <span class=\"content bg-support-01 text-pure-0\">{this.text[0].toUpperCase()}</span>\n }\n\n if (this.image?.trim) {\n return (\n <span class=\"content\">\n <img src={this.image} alt={this.imageAlt} loading=\"lazy\" />\n </span>\n )\n }\n\n if (this.isIconic) {\n return (\n <span class=\"content\">\n <br-icon\n icon-name=\"fa-solid:user\"\n height={this.iconHeight}\n width={this.iconWidth}\n aria-hidden=\"true\"\n ></br-icon>\n </span>\n )\n }\n }\n\n render() {\n return (\n <Host>\n <span class={this.getCssClassMap()} {...this.inheritedAttributes}>\n {this.renderAvatar()}\n </span>\n </Host>\n )\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"avatar.js","sourceRoot":"","sources":["../../../src/components/avatar/avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAgB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAC7F,OAAO,EAAc,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AAGpF,IAAK,OAIJ;AAJD,WAAK,OAAO;IACV,0BAAe,CAAA;IACf,4BAAiB,CAAA;IACjB,0BAAe,CAAA;AACjB,CAAC,EAJI,OAAO,KAAP,OAAO,QAIX;AAED;;GAEG;AAMH,MAAM,OAAO,MAAM;;QAqJjB;;WAEG;QACK,cAAS,GAAG;YAClB,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;YACpC,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;YACrC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;SACvC,CAAA;QAUO,mBAAc,GAAG;YACvB,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,QAAQ;SAChB,CAAA;QAMO,wBAAmB,GAAe,EAAE,CAAA;uBAtKlB,OAAO,CAAC,MAAM;;wBAYrB,kBAAkB;wBAMT,KAAK;;;;;IAajC,iBAAiB;QACf,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAA;IAC1B,CAAC;IAQD,iBAAiB;QACf,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;QACtB,IAAI,CAAC,mBAAmB,GAAG,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACzD,IAAI,CAAC,WAAW,EAAE,CAAA;IACpB,CAAC;IAQD,gBAAgB;QACd,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAA;IACvB,CAAC;IAQD,mBAAmB;QACjB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAA;IAC1B,CAAC;IAQD,kBAAkB;QAChB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAA;IACzB,CAAC;IAQD,qBAAqB;QACnB,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA;IAC5B,CAAC;IAQD,mBAAmB;QACjB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAA;IAC1B,CAAC;IAQD,kBAAkB;QAChB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAA;IACzB,CAAC;IAQD,oBAAoB;QAClB,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAA;IAC7B,CAAC;IAQD;;;;;;OAMG;IACK,cAAc;QACpB,OAAO;YACL,WAAW,EAAE,IAAI;YACjB,KAAK,EAAE,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK;YACrC,MAAM,EAAE,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,MAAM;YACvC,KAAK,EAAE,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK;SACtC,CAAA;IACH,CAAC;IAWO,WAAW;;QACjB,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,IAAI,GAAG,MAAM,CAAA,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,IAAI,GAAG,MAAM,CAAA,EAAE,CAAC;YAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACzC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAA;YAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAA;QAC7B,CAAC;IACH,CAAC;IAQO,eAAe,CAAC,OAAe;QACrC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,KAAK,CAAA;IAC9C,CAAC;IAIO,YAAY;;QAClB,IAAI,MAAA,IAAI,CAAC,IAAI,0CAAE,IAAI,GAAG,MAAM,EAAE,CAAC;YAC7B,OAAO,CACL,YAAM,KAAK,EAAC,mCAAmC,EAAC,KAAK,EAAE,IAAI,CAAC,IAAI,IAC7D,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CACtB,CACR,CAAA;QACH,CAAC;QAED,IAAI,MAAA,IAAI,CAAC,KAAK,0CAAE,IAAI,GAAG,MAAM,EAAE,CAAC;YAC9B,OAAO,CACL,YAAM,KAAK,EAAC,SAAS,EAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI;gBACrD,WAAK,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAC,MAAM,GAAG,CACtD,CACR,CAAA;QACH,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO,CACL,YAAM,KAAK,EAAC,SAAS,EAAC,KAAK,EAAE,IAAI,CAAC,IAAI;gBACpC,4BACY,eAAe,EACzB,MAAM,EAAE,IAAI,CAAC,UAAU,EACvB,KAAK,EAAE,IAAI,CAAC,SAAS,iBACT,MAAM,EAClB,KAAK,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAClD,CACN,CACR,CAAA;QACH,CAAC;IACH,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,2EAAM,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,IAAM,IAAI,CAAC,mBAAmB,GAC7D,IAAI,CAAC,YAAY,EAAE,CACf,CACF,CACR,CAAA;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Prop, State } from '@stencil/core'\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\nenum Density {\n Small = 'small',\n Medium = 'medium',\n Large = 'large',\n}\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/avatar?tab=designer).\n */\n@Component({\n tag: 'br-avatar',\n styleUrl: 'avatar.scss',\n shadow: true,\n})\nexport class Avatar {\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: HTMLElement\n\n /**\n * Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido.\n */\n @Prop() density: string = Density.Medium\n\n /**\n * URL da imagem a ser exibida no avatar do tipo 'fotográfico'.\n * Deve ser uma URL válida que aponta para a imagem desejada.\n */\n @Prop() image: string\n\n /**\n * Texto alternativo (alt) associado à imagem do avatar. Essencial para acessibilidade e SEO.\n * Deve descrever de forma clara e concisa o conteúdo da imagem, por exemplo: \"Foto de perfil de João Silva\".\n */\n @Prop() imageAlt = 'Imagem do avatar'\n\n /**\n * Indica se o avatar deve ser exibido como um ícone em vez de uma imagem fotográfica.\n * Se definido como verdadeiro, o avatar será exibido como um ícone.\n */\n @Prop() isIconic: boolean = false\n\n /**\n * Texto exibido no avatar do tipo 'letra'.\n * Esse texto será mostrado em vez de uma imagem e pode ser usado para representar iniciais ou outras informações textuais.\n */\n @Prop() text: string\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.brWillLoad.emit()\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n this.setIconSize()\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 // Largura do ícone no avatar do tipo icônico\n @State() iconWidth: string\n\n // Altura do ícone no avatar do tipo icônico\n @State() iconHeight: string\n\n /**\n * Gera um mapa de classes CSS com base nas propriedades do componente.\n * O mapa de classes determina quais classes CSS devem ser aplicadas\n * ao elemento host do componente, ajustando sua aparência.\n *\n * @returns {CssClassMap} Objeto contendo as classes CSS aplicadas.\n */\n private getCssClassMap(): CssClassMap {\n return {\n 'br-avatar': true,\n small: this.density === Density.Small,\n medium: this.density === Density.Medium,\n large: this.density === Density.Large,\n }\n }\n\n /**\n * Calcula o tamanho dos ícones de acordo com a classe de densidade\n */\n private iconSizes = {\n small: { height: '32', width: '40' },\n medium: { height: '80', width: '88' },\n large: { height: '128', width: '136' },\n }\n\n private setIconSize() {\n if (!this.image?.trim().length && !this.text?.trim().length) {\n const size = this.iconSizes[this.density]\n this.iconHeight = size.height\n this.iconWidth = size.width\n }\n }\n\n private iconMarginTops = {\n small: '0.7em',\n medium: '1em',\n large: '0.62em',\n }\n\n private adjustIconStyle(density: string) {\n return this.iconMarginTops[density] || '1em'\n }\n\n private inheritedAttributes: Attributes = {}\n\n private renderAvatar() {\n if (this.text?.trim().length) {\n return (\n <span class=\"content bg-support-01 text-pure-0\" title={this.text}>\n {this.text[0].toUpperCase()}\n </span>\n )\n }\n\n if (this.image?.trim().length) {\n return (\n <span class=\"content\" title={this.imageAlt || this.text}>\n <img src={this.image} alt={this.imageAlt} loading=\"lazy\" />\n </span>\n )\n }\n\n if (this.isIconic) {\n return (\n <span class=\"content\" title={this.text}>\n <br-icon\n icon-name=\"fa-solid:user\"\n height={this.iconHeight}\n width={this.iconWidth}\n aria-hidden=\"true\"\n style={{ 'margin-top': this.adjustIconStyle(this.density) }}\n ></br-icon>\n </span>\n )\n }\n }\n\n render() {\n return (\n <Host>\n <span class={this.getCssClassMap()} {...this.inheritedAttributes}>\n {this.renderAvatar()}\n </span>\n </Host>\n )\n }\n}\n"]}
|
|
@@ -20,33 +20,32 @@ export class Button {
|
|
|
20
20
|
this.value = undefined;
|
|
21
21
|
}
|
|
22
22
|
connectedCallback() {
|
|
23
|
-
this.brDidConnect.emit(
|
|
23
|
+
this.brDidConnect.emit();
|
|
24
24
|
}
|
|
25
25
|
componentWillLoad() {
|
|
26
|
-
this.brWillLoad.emit(
|
|
26
|
+
this.brWillLoad.emit();
|
|
27
27
|
this.inheritedAttributes = inheritAriaAttributes(this.el);
|
|
28
28
|
}
|
|
29
29
|
componentDidLoad() {
|
|
30
|
-
this.brDidLoad.emit(
|
|
30
|
+
this.brDidLoad.emit();
|
|
31
31
|
}
|
|
32
32
|
componentWillRender() {
|
|
33
|
-
this.brWillRender.emit(
|
|
33
|
+
this.brWillRender.emit();
|
|
34
34
|
}
|
|
35
35
|
componentDidRender() {
|
|
36
|
-
this.brDidRender.emit(
|
|
36
|
+
this.brDidRender.emit();
|
|
37
37
|
}
|
|
38
38
|
componentShouldUpdate() {
|
|
39
|
-
this.brShouldUpdate.emit(
|
|
39
|
+
this.brShouldUpdate.emit();
|
|
40
40
|
}
|
|
41
41
|
componentWillUpdate() {
|
|
42
|
-
this.brWillUpdate.emit(
|
|
42
|
+
this.brWillUpdate.emit();
|
|
43
43
|
}
|
|
44
44
|
componentDidUpdate() {
|
|
45
|
-
this.brDidUpdate.emit(
|
|
45
|
+
this.brDidUpdate.emit();
|
|
46
46
|
}
|
|
47
47
|
disconnectedCallback() {
|
|
48
|
-
|
|
49
|
-
this.brDidDisconnect.emit(this);
|
|
48
|
+
this.brDidDisconnect.emit();
|
|
50
49
|
}
|
|
51
50
|
formAssociatedCallback(form) {
|
|
52
51
|
this.brFormAssociatedCallback.emit(form);
|
|
@@ -89,7 +88,7 @@ export class Button {
|
|
|
89
88
|
};
|
|
90
89
|
}
|
|
91
90
|
render() {
|
|
92
|
-
return (h(Host, { key: '
|
|
91
|
+
return (h(Host, { key: '8c496f8f5ff52840ff7ee13e3901b9a5464a9b3b', "aria-disabled": this.disabled ? 'true' : null }, h("button", Object.assign({ key: '685dd72cc52efdf67a8b4059b2bc75bbb3a98c5b', class: this.getCssClassMap(), type: this.type, disabled: this.disabled, autofocus: this.autofocus, value: this.value, onClick: () => this.handleClick() }, this.inheritedAttributes), h("slot", { key: '6da79451bc92ad7fa5851c425244398413930e72' }))));
|
|
93
92
|
}
|
|
94
93
|
static get is() { return "br-button"; }
|
|
95
94
|
static get encapsulation() { return "shadow"; }
|
|
@@ -294,8 +293,8 @@ export class Button {
|
|
|
294
293
|
"text": "Emite um evento quando o componente \u00E9 conectado ao DOM.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#connectedcallback) para mais detalhes."
|
|
295
294
|
},
|
|
296
295
|
"complexType": {
|
|
297
|
-
"original": "
|
|
298
|
-
"resolved": "
|
|
296
|
+
"original": "void",
|
|
297
|
+
"resolved": "void",
|
|
299
298
|
"references": {}
|
|
300
299
|
}
|
|
301
300
|
}, {
|
|
@@ -309,8 +308,8 @@ export class Button {
|
|
|
309
308
|
"text": "Emite um evento antes que o componente seja carregado pela primeira vez.\nUtilize este evento para realizar tarefas de inicializa\u00E7\u00E3o antes do componente ser exibido.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes."
|
|
310
309
|
},
|
|
311
310
|
"complexType": {
|
|
312
|
-
"original": "
|
|
313
|
-
"resolved": "
|
|
311
|
+
"original": "void",
|
|
312
|
+
"resolved": "void",
|
|
314
313
|
"references": {}
|
|
315
314
|
}
|
|
316
315
|
}, {
|
|
@@ -324,8 +323,8 @@ export class Button {
|
|
|
324
323
|
"text": "Emite um evento ap\u00F3s o componente ter sido carregado pela primeira vez.\nUtilize este evento para realizar a\u00E7\u00F5es que devem ocorrer depois que o componente foi totalmente carregado.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes."
|
|
325
324
|
},
|
|
326
325
|
"complexType": {
|
|
327
|
-
"original": "
|
|
328
|
-
"resolved": "
|
|
326
|
+
"original": "void",
|
|
327
|
+
"resolved": "void",
|
|
329
328
|
"references": {}
|
|
330
329
|
}
|
|
331
330
|
}, {
|
|
@@ -339,8 +338,8 @@ export class Button {
|
|
|
339
338
|
"text": "Emite um evento antes do componente ser renderizado.\nUtilize este evento para preparar o componente antes de sua renderiza\u00E7\u00E3o.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillrender) para mais detalhes."
|
|
340
339
|
},
|
|
341
340
|
"complexType": {
|
|
342
|
-
"original": "
|
|
343
|
-
"resolved": "
|
|
341
|
+
"original": "void",
|
|
342
|
+
"resolved": "void",
|
|
344
343
|
"references": {}
|
|
345
344
|
}
|
|
346
345
|
}, {
|
|
@@ -354,8 +353,8 @@ export class Button {
|
|
|
354
353
|
"text": "Emite um evento ap\u00F3s o componente ter sido renderizado.\nUtilize este evento para executar a\u00E7\u00F5es que devem ocorrer ap\u00F3s a renderiza\u00E7\u00E3o do componente.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidrender) para mais detalhes."
|
|
355
354
|
},
|
|
356
355
|
"complexType": {
|
|
357
|
-
"original": "
|
|
358
|
-
"resolved": "
|
|
356
|
+
"original": "void",
|
|
357
|
+
"resolved": "void",
|
|
359
358
|
"references": {}
|
|
360
359
|
}
|
|
361
360
|
}, {
|
|
@@ -369,8 +368,8 @@ export class Button {
|
|
|
369
368
|
"text": "Emite um evento para indicar se o componente deve ser atualizado ou n\u00E3o.\nEste evento \u00E9 chamado antes de qualquer atualiza\u00E7\u00E3o do componente para decidir se a atualiza\u00E7\u00E3o deve prosseguir.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentshouldupdate) para mais detalhes."
|
|
370
369
|
},
|
|
371
370
|
"complexType": {
|
|
372
|
-
"original": "
|
|
373
|
-
"resolved": "
|
|
371
|
+
"original": "void",
|
|
372
|
+
"resolved": "void",
|
|
374
373
|
"references": {}
|
|
375
374
|
}
|
|
376
375
|
}, {
|
|
@@ -384,8 +383,8 @@ export class Button {
|
|
|
384
383
|
"text": "Emite um evento antes de o componente ser atualizado.\nUtilize este evento para realizar a\u00E7\u00F5es preparat\u00F3rias antes da atualiza\u00E7\u00E3o do componente.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillupdate) para mais detalhes."
|
|
385
384
|
},
|
|
386
385
|
"complexType": {
|
|
387
|
-
"original": "
|
|
388
|
-
"resolved": "
|
|
386
|
+
"original": "void",
|
|
387
|
+
"resolved": "void",
|
|
389
388
|
"references": {}
|
|
390
389
|
}
|
|
391
390
|
}, {
|
|
@@ -399,8 +398,8 @@ export class Button {
|
|
|
399
398
|
"text": "Emite um evento ap\u00F3s o componente ter sido atualizado.\nUtilize este evento para realizar a\u00E7\u00F5es ap\u00F3s a atualiza\u00E7\u00E3o do componente.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidupdate) para mais detalhes."
|
|
400
399
|
},
|
|
401
400
|
"complexType": {
|
|
402
|
-
"original": "
|
|
403
|
-
"resolved": "
|
|
401
|
+
"original": "void",
|
|
402
|
+
"resolved": "void",
|
|
404
403
|
"references": {}
|
|
405
404
|
}
|
|
406
405
|
}, {
|
|
@@ -414,8 +413,8 @@ export class Button {
|
|
|
414
413
|
"text": "Emite um evento quando o componente \u00E9 desconectado do DOM.\nUtilize este evento para realizar a limpeza ou outras a\u00E7\u00F5es necess\u00E1rias quando o componente \u00E9 removido.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#disconnectedcallback) para mais detalhes."
|
|
415
414
|
},
|
|
416
415
|
"complexType": {
|
|
417
|
-
"original": "
|
|
418
|
-
"resolved": "
|
|
416
|
+
"original": "void",
|
|
417
|
+
"resolved": "void",
|
|
419
418
|
"references": {}
|
|
420
419
|
}
|
|
421
420
|
}, {
|
|
@@ -470,8 +469,8 @@ export class Button {
|
|
|
470
469
|
"text": "Emite um evento quando um `<form>` \u00E9 resetado.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/form-associated#formresetcallback) para mais detalhes."
|
|
471
470
|
},
|
|
472
471
|
"complexType": {
|
|
473
|
-
"original": "
|
|
474
|
-
"resolved": "
|
|
472
|
+
"original": "void",
|
|
473
|
+
"resolved": "void",
|
|
475
474
|
"references": {}
|
|
476
475
|
}
|
|
477
476
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/components/button/button.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals, Component, Element, Event, EventEmitter, Host, Prop, h } 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/button?tab=designer).\n *\n * @slot default - Espaço de conteúdo do button. Geralmente usado para incluir o rótulo.\n */\n@Component({\n tag: 'br-button',\n styleUrl: 'button.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Button {\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: HTMLElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Se definido como verdadeiro, o botão receberá foco automaticamente ao ser renderizado.\n */\n @Prop({ reflect: true }) autofocus: boolean = false\n\n /**\n * Define se o botão usará um esquema de cores escuro.\n */\n @Prop({ reflect: true }) colorMode: 'dark'\n\n /**\n * Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido.\n */\n @Prop({ reflect: true }) density: 'large' | 'middle' | 'small'\n\n /**\n * Desativa o botão, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Define a ênfase do botão, alterando sua aparência para criar hierarquia visual e destacar ações importantes.\n */\n @Prop({ reflect: true }) emphasis: 'primary' | 'secondary' | 'tertiary'\n\n /**\n * Indica se o botão está no estado ativo.\n * Se definido como verdadeiro, o botão será exibido como ativo.\n */\n @Prop({ reflect: true }) isActive: boolean = false\n\n /**\n * Aplica o estado de \"progresso\" ao botão.\n * O botão exibirá um indicador de carregamento ou progresso.\n */\n @Prop({ reflect: true }) isLoading: boolean = false\n\n /**\n * Define o formato do botão.\n * Valores 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.\n */\n @Prop({ reflect: true }) shape: 'circle' | 'block' | 'pill'\n\n /**\n * Define o tipo de botão, especificando seu comportamento padrão.\n * Valores 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.\n */\n @Prop({ reflect: true }) type: 'button' | 'reset' | 'submit'\n\n /**\n * Define o valor inicial do botão em um formulário.\n */\n @Prop({ reflect: true }) value: string\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<this>\n connectedCallback() {\n this.brDidConnect.emit(this)\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<this>\n componentWillLoad() {\n this.brWillLoad.emit(this)\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<this>\n componentDidLoad() {\n this.brDidLoad.emit(this)\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<this>\n componentWillRender() {\n this.brWillRender.emit(this)\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<this>\n componentDidRender() {\n this.brDidRender.emit(this)\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<this>\n componentShouldUpdate() {\n this.brShouldUpdate.emit(this)\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<this>\n componentWillUpdate() {\n this.brWillUpdate.emit(this)\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<this>\n componentDidUpdate() {\n this.brDidUpdate.emit(this)\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<this>\n disconnectedCallback() {\n if (this.el.isConnected) this.brDidDisconnect.emit(this)\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\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 handleClick() {\n if (this.type === 'submit') {\n const submitEvent = new SubmitEvent('submit', {\n submitter: this.elementInternals.form,\n composed: true,\n cancelable: true,\n bubbles: true,\n })\n this.elementInternals.form.dispatchEvent(submitEvent)\n }\n\n if (this.type === 'reset') {\n this.elementInternals.form.reset()\n }\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-button': true,\n primary: this.emphasis === 'primary',\n secondary: this.emphasis === 'secondary',\n large: this.density === 'large',\n small: this.density === 'small',\n block: this.shape === 'block',\n circle: this.shape === 'circle',\n active: this.isActive,\n loading: this.isLoading,\n 'dark-mode': this.colorMode === 'dark',\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n render() {\n return (\n <Host aria-disabled={this.disabled ? 'true' : null}>\n <button\n class={this.getCssClassMap()}\n type={this.type}\n disabled={this.disabled}\n autofocus={this.autofocus}\n value={this.value}\n onClick={() => this.handleClick()}\n {...this.inheritedAttributes}\n >\n <slot></slot>\n </button>\n </Host>\n )\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/components/button/button.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals, Component, Element, Event, EventEmitter, Host, Prop, h } 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/button?tab=designer).\n *\n * @slot default - Espaço de conteúdo do button. Geralmente usado para incluir o rótulo.\n */\n@Component({\n tag: 'br-button',\n styleUrl: 'button.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Button {\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: HTMLElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Se definido como verdadeiro, o botão receberá foco automaticamente ao ser renderizado.\n */\n @Prop({ reflect: true }) autofocus: boolean = false\n\n /**\n * Define se o botão usará um esquema de cores escuro.\n */\n @Prop({ reflect: true }) colorMode: 'dark'\n\n /**\n * Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido.\n */\n @Prop({ reflect: true }) density: 'large' | 'middle' | 'small'\n\n /**\n * Desativa o botão, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Define a ênfase do botão, alterando sua aparência para criar hierarquia visual e destacar ações importantes.\n */\n @Prop({ reflect: true }) emphasis: 'primary' | 'secondary' | 'tertiary'\n\n /**\n * Indica se o botão está no estado ativo.\n * Se definido como verdadeiro, o botão será exibido como ativo.\n */\n @Prop({ reflect: true }) isActive: boolean = false\n\n /**\n * Aplica o estado de \"progresso\" ao botão.\n * O botão exibirá um indicador de carregamento ou progresso.\n */\n @Prop({ reflect: true }) isLoading: boolean = false\n\n /**\n * Define o formato do botão.\n * Valores 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.\n */\n @Prop({ reflect: true }) shape: 'circle' | 'block' | 'pill'\n\n /**\n * Define o tipo de botão, especificando seu comportamento padrão.\n * Valores 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.\n */\n @Prop({ reflect: true }) type: 'button' | 'reset' | 'submit'\n\n /**\n * Define o valor inicial do botão em um formulário.\n */\n @Prop({ reflect: true }) value: string\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.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 handleClick() {\n if (this.type === 'submit') {\n const submitEvent = new SubmitEvent('submit', {\n submitter: this.elementInternals.form,\n composed: true,\n cancelable: true,\n bubbles: true,\n })\n this.elementInternals.form.dispatchEvent(submitEvent)\n }\n\n if (this.type === 'reset') {\n this.elementInternals.form.reset()\n }\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-button': true,\n primary: this.emphasis === 'primary',\n secondary: this.emphasis === 'secondary',\n large: this.density === 'large',\n small: this.density === 'small',\n block: this.shape === 'block',\n circle: this.shape === 'circle',\n active: this.isActive,\n loading: this.isLoading,\n 'dark-mode': this.colorMode === 'dark',\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n render() {\n return (\n <Host aria-disabled={this.disabled ? 'true' : null}>\n <button\n class={this.getCssClassMap()}\n type={this.type}\n disabled={this.disabled}\n autofocus={this.autofocus}\n value={this.value}\n onClick={() => this.handleClick()}\n {...this.inheritedAttributes}\n >\n <slot></slot>\n </button>\n </Host>\n )\n }\n}\n"]}
|