@govbr-ds/webcomponents 2.0.0-next.20 → 2.0.0-next.21
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 +2 -2
- package/dist/cjs/br-avatar.cjs.entry.js.map +1 -1
- package/dist/cjs/br-button_2.cjs.entry.js +3 -3
- package/dist/cjs/br-button_2.cjs.entry.js.map +1 -1
- package/dist/cjs/br-checkbox_4.cjs.entry.js +346 -0
- package/dist/cjs/br-checkbox_4.cjs.entry.js.map +1 -0
- package/dist/cjs/br-dropdown.cjs.entry.js +2 -2
- package/dist/cjs/br-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/br-item.cjs.entry.js +2 -2
- package/dist/cjs/br-item.cjs.entry.js.map +1 -1
- package/dist/cjs/br-loading.cjs.entry.js +2 -2
- package/dist/cjs/br-loading.cjs.entry.js.map +1 -1
- package/dist/cjs/br-message.cjs.entry.js +2 -2
- package/dist/cjs/br-message.cjs.entry.js.map +1 -1
- package/dist/cjs/br-select.cjs.entry.js +281 -0
- package/dist/cjs/br-select.cjs.entry.js.map +1 -0
- package/dist/cjs/br-switch.cjs.entry.js +3 -3
- package/dist/cjs/br-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/br-tag.cjs.entry.js +3 -3
- package/dist/cjs/br-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/br-textarea.cjs.entry.js +3 -3
- package/dist/cjs/br-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/br-upload.cjs.entry.js +3 -3
- package/dist/cjs/br-upload.cjs.entry.js.map +1 -1
- package/dist/cjs/{index-81c11ce2.js → index-86e7422e.js} +16 -24
- package/dist/cjs/index-86e7422e.js.map +1 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/webcomponents.cjs.js +3 -3
- package/dist/cjs/webcomponents.cjs.js.map +1 -1
- package/dist/collection/collection-manifest.json +2 -1
- package/dist/collection/components/avatar/avatar.css +3 -1
- package/dist/collection/components/button/button.css +3 -1
- package/dist/collection/components/checkbox/checkbox.css +3 -1
- package/dist/collection/components/dropdown/dropdown.css +3 -1
- package/dist/collection/components/icon/icon.css +3 -1
- package/dist/collection/components/input/input.css +3 -1
- package/dist/collection/components/item/item.css +3 -1
- package/dist/collection/components/list/list.css +3 -1
- package/dist/collection/components/loading/loading.css +3 -1
- package/dist/collection/components/message/message.css +3 -1
- package/dist/collection/components/radio/radio.css +3 -1
- package/dist/collection/components/radio/radio.js +1 -1
- package/dist/collection/components/radio/radio.js.map +1 -1
- package/dist/collection/components/select/select.css +857 -0
- package/dist/collection/components/select/select.js +491 -0
- package/dist/collection/components/select/select.js.map +1 -0
- package/dist/collection/components/switch/switch.css +3 -1
- package/dist/collection/components/switch/switch.js +1 -1
- package/dist/collection/components/tag/tag.css +3 -1
- package/dist/collection/components/tag/tag.js +1 -1
- package/dist/collection/components/textarea/textarea.css +3 -1
- package/dist/collection/components/textarea/textarea.js +1 -1
- package/dist/collection/components/upload/upload.css +3 -1
- package/dist/collection/components/upload/upload.js +1 -1
- package/dist/collection/pages/components/select/index.js +18 -0
- package/dist/collection/pages/scripts/menu.js +5 -0
- package/dist/collection/scripts/menu.js +5 -0
- package/dist/components/br-avatar.js +1 -1
- package/dist/components/br-avatar.js.map +1 -1
- package/dist/components/br-button.js +1 -1
- package/dist/components/br-checkbox.js +1 -1
- package/dist/components/br-checkbox.js.map +1 -1
- package/dist/components/br-dropdown.js +1 -1
- package/dist/components/br-dropdown.js.map +1 -1
- package/dist/components/br-icon.js +1 -1
- package/dist/components/br-input.js +1 -1
- package/dist/components/br-input.js.map +1 -1
- package/dist/components/br-item.js +1 -1
- package/dist/components/br-item.js.map +1 -1
- package/dist/components/br-list.js +1 -1
- package/dist/components/br-list.js.map +1 -1
- package/dist/components/br-loading.js +1 -1
- package/dist/components/br-loading.js.map +1 -1
- package/dist/components/br-message.js +1 -1
- package/dist/components/br-message.js.map +1 -1
- package/dist/components/br-radio.js +1 -1
- package/dist/components/br-radio.js.map +1 -1
- package/dist/components/br-select.d.ts +11 -0
- package/dist/components/br-select.js +6 -0
- package/dist/components/br-select.js.map +1 -0
- package/dist/components/br-switch.js +1 -1
- package/dist/components/br-switch.js.map +1 -1
- package/dist/components/br-tag.js +1 -1
- package/dist/components/br-tag.js.map +1 -1
- package/dist/components/br-textarea.js +1 -1
- package/dist/components/br-textarea.js.map +1 -1
- package/dist/components/br-upload.js +1 -1
- package/dist/components/br-upload.js.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/p-22068d3c.js +6 -0
- package/dist/components/p-22068d3c.js.map +1 -0
- package/dist/components/p-62776355.js +6 -0
- package/dist/components/p-62776355.js.map +1 -0
- package/dist/components/p-67617725.js +6 -0
- package/dist/components/{p-e4af8eac.js.map → p-67617725.js.map} +1 -1
- package/dist/components/p-7882cb21.js +6 -0
- package/dist/components/p-7882cb21.js.map +1 -0
- package/dist/components/p-7aca304a.js +6 -0
- package/dist/components/p-7aca304a.js.map +1 -0
- package/dist/components/{p-64831033.js → p-b4b55ab7.js} +3 -3
- package/dist/components/{p-64831033.js.map → p-b4b55ab7.js.map} +1 -1
- package/dist/components/{p-2d8e59f6.js → p-fabd9bdd.js} +2 -2
- package/dist/components/p-fabd9bdd.js.map +1 -0
- package/dist/esm/br-avatar.entry.js +2 -2
- package/dist/esm/br-avatar.entry.js.map +1 -1
- package/dist/esm/br-button_2.entry.js +3 -3
- package/dist/esm/br-button_2.entry.js.map +1 -1
- package/dist/esm/br-checkbox_4.entry.js +339 -0
- package/dist/esm/br-checkbox_4.entry.js.map +1 -0
- package/dist/esm/br-dropdown.entry.js +2 -2
- package/dist/esm/br-dropdown.entry.js.map +1 -1
- package/dist/esm/br-item.entry.js +2 -2
- package/dist/esm/br-item.entry.js.map +1 -1
- package/dist/esm/br-loading.entry.js +2 -2
- package/dist/esm/br-loading.entry.js.map +1 -1
- package/dist/esm/br-message.entry.js +2 -2
- package/dist/esm/br-message.entry.js.map +1 -1
- package/dist/esm/br-select.entry.js +277 -0
- package/dist/esm/br-select.entry.js.map +1 -0
- package/dist/esm/br-switch.entry.js +3 -3
- package/dist/esm/br-switch.entry.js.map +1 -1
- package/dist/esm/br-tag.entry.js +3 -3
- package/dist/esm/br-tag.entry.js.map +1 -1
- package/dist/esm/br-textarea.entry.js +3 -3
- package/dist/esm/br-textarea.entry.js.map +1 -1
- package/dist/esm/br-upload.entry.js +3 -3
- package/dist/esm/br-upload.entry.js.map +1 -1
- package/dist/esm/{index-aab4a630.js → index-14721f44.js} +16 -24
- package/dist/esm/index-14721f44.js.map +1 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/webcomponents.js +4 -4
- package/dist/esm/webcomponents.js.map +1 -1
- package/dist/esm-es5/br-avatar.entry.js +1 -1
- package/dist/esm-es5/br-avatar.entry.js.map +1 -1
- package/dist/esm-es5/br-button_2.entry.js +2 -2
- package/dist/esm-es5/br-button_2.entry.js.map +1 -1
- package/dist/esm-es5/br-checkbox_4.entry.js +6 -0
- package/dist/esm-es5/br-checkbox_4.entry.js.map +1 -0
- package/dist/esm-es5/br-dropdown.entry.js +2 -2
- package/dist/esm-es5/br-dropdown.entry.js.map +1 -1
- package/dist/esm-es5/br-item.entry.js +1 -1
- package/dist/esm-es5/br-item.entry.js.map +1 -1
- package/dist/esm-es5/br-loading.entry.js +1 -1
- package/dist/esm-es5/br-loading.entry.js.map +1 -1
- package/dist/esm-es5/br-message.entry.js +1 -1
- package/dist/esm-es5/br-message.entry.js.map +1 -1
- package/dist/esm-es5/br-select.entry.js +6 -0
- package/dist/esm-es5/br-select.entry.js.map +1 -0
- package/dist/esm-es5/br-switch.entry.js +2 -2
- package/dist/esm-es5/br-switch.entry.js.map +1 -1
- package/dist/esm-es5/br-tag.entry.js +1 -1
- package/dist/esm-es5/br-tag.entry.js.map +1 -1
- package/dist/esm-es5/br-textarea.entry.js +2 -2
- package/dist/esm-es5/br-textarea.entry.js.map +1 -1
- package/dist/esm-es5/br-upload.entry.js +1 -1
- package/dist/esm-es5/br-upload.entry.js.map +1 -1
- package/dist/esm-es5/index-14721f44.js +6 -0
- package/dist/esm-es5/index-14721f44.js.map +1 -0
- package/dist/esm-es5/loader.js +2 -2
- package/dist/esm-es5/loader.js.map +1 -1
- package/dist/esm-es5/webcomponents.js +2 -2
- package/dist/esm-es5/webcomponents.js.map +1 -1
- package/dist/types/components/select/select.d.ts +98 -0
- package/dist/types/components.d.ts +108 -0
- package/dist/webcomponents/p-11e8c72f.entry.js +6 -0
- package/dist/webcomponents/{p-842b2513.entry.js.map → p-11e8c72f.entry.js.map} +1 -1
- package/dist/webcomponents/p-1accc2ab.system.entry.js +6 -0
- package/dist/webcomponents/{p-55604b7f.system.entry.js.map → p-1accc2ab.system.entry.js.map} +1 -1
- package/dist/webcomponents/p-36e48582.system.entry.js +6 -0
- package/dist/webcomponents/p-36e48582.system.entry.js.map +1 -0
- package/dist/webcomponents/p-37440256.entry.js +6 -0
- package/dist/webcomponents/{p-dcf41d91.entry.js.map → p-37440256.entry.js.map} +1 -1
- package/dist/webcomponents/p-44554246.system.entry.js +6 -0
- package/dist/webcomponents/p-44554246.system.entry.js.map +1 -0
- package/dist/webcomponents/p-55f80a96.system.entry.js +6 -0
- package/dist/webcomponents/{p-baad00f8.system.entry.js.map → p-55f80a96.system.entry.js.map} +1 -1
- package/dist/webcomponents/p-563bea26.entry.js +6 -0
- package/dist/webcomponents/{p-3f00a196.entry.js.map → p-563bea26.entry.js.map} +1 -1
- package/dist/webcomponents/{p-71be2e3f.system.entry.js → p-58d37ac2.entry.js} +3 -3
- package/dist/webcomponents/{p-626fe2cb.entry.js.map → p-58d37ac2.entry.js.map} +1 -1
- package/dist/webcomponents/p-64f4ecea.system.entry.js +6 -0
- package/dist/webcomponents/{p-71be2e3f.system.entry.js.map → p-64f4ecea.system.entry.js.map} +1 -1
- package/dist/webcomponents/p-703a633a.system.js +6 -0
- package/dist/webcomponents/p-703a633a.system.js.map +1 -0
- package/dist/webcomponents/p-76326737.system.entry.js +6 -0
- package/dist/webcomponents/{p-6a8226b3.system.entry.js.map → p-76326737.system.entry.js.map} +1 -1
- package/dist/webcomponents/p-797376a2.system.entry.js +17 -0
- package/dist/webcomponents/{p-d83e2172.system.entry.js.map → p-797376a2.system.entry.js.map} +1 -1
- package/dist/webcomponents/p-7f8c5016.entry.js +6 -0
- package/dist/webcomponents/{p-d174c8cd.entry.js.map → p-7f8c5016.entry.js.map} +1 -1
- package/dist/webcomponents/p-a44ad074.entry.js +6 -0
- package/dist/webcomponents/p-a44ad074.entry.js.map +1 -0
- package/dist/webcomponents/p-aaa17439.entry.js +6 -0
- package/dist/webcomponents/p-aaa17439.entry.js.map +1 -0
- package/dist/webcomponents/{p-430afeb5.system.js → p-aaca726d.system.js} +2 -2
- package/dist/webcomponents/p-aaca726d.system.js.map +1 -0
- package/dist/webcomponents/p-aec894fa.system.entry.js +6 -0
- package/dist/webcomponents/{p-28476b17.system.entry.js.map → p-aec894fa.system.entry.js.map} +1 -1
- package/dist/webcomponents/p-b16b1de5.entry.js +6 -0
- package/dist/webcomponents/{p-447c8036.entry.js.map → p-b16b1de5.entry.js.map} +1 -1
- package/dist/webcomponents/p-b6af61ad.entry.js +6 -0
- package/dist/webcomponents/{p-5539ffa8.entry.js.map → p-b6af61ad.entry.js.map} +1 -1
- package/dist/webcomponents/p-c696c385.entry.js +17 -0
- package/dist/webcomponents/{p-e6d921ef.entry.js.map → p-c696c385.entry.js.map} +1 -1
- package/dist/webcomponents/p-d1e0a8ff.entry.js +6 -0
- package/dist/webcomponents/{p-24da392a.entry.js.map → p-d1e0a8ff.entry.js.map} +1 -1
- package/dist/webcomponents/p-d31732da.system.entry.js +6 -0
- package/dist/webcomponents/{p-05343155.system.entry.js.map → p-d31732da.system.entry.js.map} +1 -1
- package/dist/webcomponents/p-db4b272c.system.entry.js +6 -0
- package/dist/webcomponents/{p-ae629243.system.entry.js.map → p-db4b272c.system.entry.js.map} +1 -1
- package/dist/webcomponents/{p-2c2c8629.js → p-dbd35139.js} +2 -2
- package/dist/webcomponents/p-dbd35139.js.map +1 -0
- package/dist/webcomponents/p-e76f7113.system.entry.js +6 -0
- package/dist/webcomponents/{p-7a4e1265.system.entry.js.map → p-e76f7113.system.entry.js.map} +1 -1
- package/dist/webcomponents/p-f05d11f7.entry.js +6 -0
- package/dist/webcomponents/{p-61523bc9.entry.js.map → p-f05d11f7.entry.js.map} +1 -1
- package/dist/webcomponents/p-f5412db6.system.entry.js +6 -0
- package/dist/webcomponents/{p-8039a644.system.entry.js.map → p-f5412db6.system.entry.js.map} +1 -1
- package/dist/webcomponents/webcomponents.esm.js +1 -1
- package/dist/webcomponents/webcomponents.esm.js.map +1 -1
- package/dist/webcomponents/webcomponents.js +1 -1
- package/hydrate/index.js +324 -30
- package/hydrate/index.mjs +324 -30
- package/package.json +1 -1
- package/vscode-data.json +45 -0
- package/dist/cjs/br-checkbox.cjs.entry.js +0 -76
- package/dist/cjs/br-checkbox.cjs.entry.js.map +0 -1
- package/dist/cjs/br-input.cjs.entry.js +0 -150
- package/dist/cjs/br-input.cjs.entry.js.map +0 -1
- package/dist/cjs/br-list.cjs.entry.js +0 -82
- package/dist/cjs/br-list.cjs.entry.js.map +0 -1
- package/dist/cjs/br-radio.cjs.entry.js +0 -79
- package/dist/cjs/br-radio.cjs.entry.js.map +0 -1
- package/dist/cjs/index-81c11ce2.js.map +0 -1
- package/dist/components/p-2d8e59f6.js.map +0 -1
- package/dist/components/p-e4af8eac.js +0 -6
- package/dist/esm/br-checkbox.entry.js +0 -72
- package/dist/esm/br-checkbox.entry.js.map +0 -1
- package/dist/esm/br-input.entry.js +0 -146
- package/dist/esm/br-input.entry.js.map +0 -1
- package/dist/esm/br-list.entry.js +0 -78
- package/dist/esm/br-list.entry.js.map +0 -1
- package/dist/esm/br-radio.entry.js +0 -75
- package/dist/esm/br-radio.entry.js.map +0 -1
- package/dist/esm/index-aab4a630.js.map +0 -1
- package/dist/esm-es5/br-checkbox.entry.js +0 -6
- package/dist/esm-es5/br-checkbox.entry.js.map +0 -1
- package/dist/esm-es5/br-input.entry.js +0 -6
- package/dist/esm-es5/br-input.entry.js.map +0 -1
- package/dist/esm-es5/br-list.entry.js +0 -6
- package/dist/esm-es5/br-list.entry.js.map +0 -1
- package/dist/esm-es5/br-radio.entry.js +0 -6
- package/dist/esm-es5/br-radio.entry.js.map +0 -1
- package/dist/esm-es5/index-aab4a630.js +0 -6
- package/dist/esm-es5/index-aab4a630.js.map +0 -1
- package/dist/webcomponents/p-05343155.system.entry.js +0 -6
- package/dist/webcomponents/p-183614c8.system.entry.js +0 -6
- package/dist/webcomponents/p-183614c8.system.entry.js.map +0 -1
- package/dist/webcomponents/p-2083ff7b.entry.js +0 -6
- package/dist/webcomponents/p-2083ff7b.entry.js.map +0 -1
- package/dist/webcomponents/p-24da392a.entry.js +0 -6
- package/dist/webcomponents/p-28476b17.system.entry.js +0 -6
- package/dist/webcomponents/p-2c2c8629.js.map +0 -1
- package/dist/webcomponents/p-3f00a196.entry.js +0 -6
- package/dist/webcomponents/p-430afeb5.system.js.map +0 -1
- package/dist/webcomponents/p-447c8036.entry.js +0 -6
- package/dist/webcomponents/p-5539ffa8.entry.js +0 -6
- package/dist/webcomponents/p-55604b7f.system.entry.js +0 -6
- package/dist/webcomponents/p-61523bc9.entry.js +0 -6
- package/dist/webcomponents/p-626fe2cb.entry.js +0 -6
- package/dist/webcomponents/p-6a8226b3.system.entry.js +0 -6
- package/dist/webcomponents/p-7a4e1265.system.entry.js +0 -6
- package/dist/webcomponents/p-8039a644.system.entry.js +0 -6
- package/dist/webcomponents/p-842b2513.entry.js +0 -6
- package/dist/webcomponents/p-8f156fc4.system.entry.js +0 -6
- package/dist/webcomponents/p-8f156fc4.system.entry.js.map +0 -1
- package/dist/webcomponents/p-9f0d01d1.entry.js +0 -6
- package/dist/webcomponents/p-9f0d01d1.entry.js.map +0 -1
- package/dist/webcomponents/p-ae629243.system.entry.js +0 -6
- package/dist/webcomponents/p-b88a5d9a.system.js +0 -6
- package/dist/webcomponents/p-b88a5d9a.system.js.map +0 -1
- package/dist/webcomponents/p-b9fd2bc0.system.entry.js +0 -6
- package/dist/webcomponents/p-b9fd2bc0.system.entry.js.map +0 -1
- package/dist/webcomponents/p-baad00f8.system.entry.js +0 -6
- package/dist/webcomponents/p-d174c8cd.entry.js +0 -6
- package/dist/webcomponents/p-d83e2172.system.entry.js +0 -17
- package/dist/webcomponents/p-dcf41d91.entry.js +0 -6
- package/dist/webcomponents/p-e027fca2.entry.js +0 -6
- package/dist/webcomponents/p-e027fca2.entry.js.map +0 -1
- package/dist/webcomponents/p-e6d921ef.entry.js +0 -17
- package/dist/webcomponents/p-e8b5b14f.entry.js +0 -6
- package/dist/webcomponents/p-e8b5b14f.entry.js.map +0 -1
- package/dist/webcomponents/p-f5e674ba.system.entry.js +0 -6
- package/dist/webcomponents/p-f5e674ba.system.entry.js.map +0 -1
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Construído com @govbr-ds/webcomponents
|
|
3
|
+
* Padrão Digital de Governo.
|
|
4
|
+
*/
|
|
5
|
+
import{r as a,c as t,h as r,a as e,g as i}from"./p-dbd35139.js";import{i as o}from"./p-74a4eb38.js";const n="*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}small{font-size:80%}img{border-style:none}button,input,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;-moz-appearance:button;appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}[hidden]{display:none}.d-flex{display:-ms-flexbox !important;display:flex !important}.align-items-center{-ms-flex-align:center !important;align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter) * 0.5);padding-right:calc(var(--grid-gutter) * 0.5);width:100%}.col{-ms-flex:1 0 0%;flex:1 0 0%;min-width:8.3333333333%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.container{--grid-margin:var(--grid-portrait-margin);--grid-maxwidth:var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter:var(--grid-portrait-gutter);display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--grid-gutter) * -0.5);margin-right:calc(var(--grid-gutter) * -0.5)}@media (min-width: 576px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}}@media (min-width: 992px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media (min-width: 1280px){.container{--grid-margin:var(--grid-desktop-margin)}.row{--grid-gutter:var(--grid-desktop-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}}@media (min-width: 1600px){.container{--grid-margin:var(--grid-tv-margin)}.row{--grid-gutter:var(--grid-tv-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mr-2{margin-right:var(--spacing-scale-base) !important}.mr-n2{margin-right:calc(var(--spacing-scale-base) * -1) !important}.mb-3{margin-bottom:var(--spacing-scale-2x) !important}.mr-auto{margin-right:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}.py-3{padding-bottom:var(--spacing-scale-2x) !important;padding-top:var(--spacing-scale-2x) !important}.py-4{padding-bottom:var(--spacing-scale-3x) !important;padding-top:var(--spacing-scale-3x) !important}body{--bg-color:var(--background);--bg-color-rgb:var(--background-rgb);--bg-color-hsl:var(--background-hsl);--font-size:var(--font-size-scale-base);--font-weight:var(--font-weight-regular);--link-color:var(--interactive);--link-color-rgb:var(--interactive-rgb);--link-color-hsl:var(--interactive-hsl);--line-height:var(--font-line-height-medium);--text-color:var(--color);--text-color-rgb:var(--color-rgb);--text-color-hsl:var(--color-hsl);background:var(--bg-color);color:var(--text-color);font-family:var(--font-family-base);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height)}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media (min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset:var(--spacing-scale-half);color:var(--interactive);text-decoration:none}a:focus{outline:none}a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}button{cursor:pointer}img{max-width:100%;vertical-align:middle}ul{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}::-moz-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-webkit-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}:-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !important}.text-primary-default{color:var(--color-primary-default) !important}.bg-support-01{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background:var(--color-support-01) !important}.text-nowrap{white-space:nowrap !important}.text-base{font-size:var(--font-size-scale-base) !important}.highlight{background:var(--status-highlight-background) -webkit-gradient(linear, left top, left bottom, from(var(--status-highlight-overlay)), to(var(--status-highlight-overlay)));background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{-webkit-box-shadow:var(--surface-shadow-sm);box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown .br-item{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--color-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);--item-padding-y:var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-upload input{display:none}.br-upload .upload-button{--button-radius:100em;--button-xsmall:24px;--button-small:32px;--button-medium:40px;--button-large:48px;--button-size:var(--button-medium);-ms-flex-align:center;align-items:center;background-color:transparent;border:0;border-radius:var(--button-radius);color:var(--interactive);cursor:pointer;display:-ms-inline-flexbox;display:inline-flex;font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-semi-bold);height:var(--button-size);-ms-flex-pack:center;justify-content:center;overflow:hidden;padding:0 var(--spacing-scale-3x);position:relative;text-align:center;vertical-align:middle;white-space:nowrap;width:auto;border:var(--surface-width-sm) dashed var(--interactive);border-radius:var(--surface-rounder-sm);display:block;font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);margin-top:var(--spacing-scale-half);max-width:550px;min-height:var(--button-size);padding-left:var(--spacing-scale-2x);padding-right:var(--spacing-scale-2x);text-align:left;width:100%}.br-upload .upload-list{max-width:550px;position:relative}.br-upload .upload-list .content{-ms-flex-item-align:center;align-self:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:70%}.br-upload .upload-list .support{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex}.br-upload .upload-button:disabled{cursor:not-allowed}.br-upload .upload-button:not(:disabled){--focus-offset:var(--spacing-scale-half)}.br-upload .upload-button:not(:disabled):focus{outline:none}.br-upload .upload-button:not(:disabled):focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}.br-upload .upload-button:not(:disabled):not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}.br-upload .upload-button:not(:disabled):not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}.br-upload .upload-button.active,.br-upload .upload-button.is-active,.br-upload .upload-button[active]{--hover:var(--hover-dark);background-color:var(--active);color:var(--color-dark)}.br-upload .upload-button.loading{color:transparent !important;cursor:progress}.br-upload .upload-button.loading:not(:disabled):hover{background-image:none}.br-upload .upload-button.loading::before{border-color:var(--interactive) var(--interactive) transparent;border-style:solid}.br-upload .upload-button.loading.primary::before,.br-upload .upload-button.loading.danger::before,.br-upload .upload-button.loading.success::before,.br-upload .upload-button.loading.info::before{border-color:var(--background) var(--background) transparent}.br-upload.success .upload-button{border-color:var(--success)}.br-upload.danger .upload-button{border-color:var(--danger)}.br-upload.warning .upload-button{border-color:var(--warning)}.br-upload.info .upload-button{border-color:var(--info)}:host{display:block}";const l=n;var s;(function(a){a["INFO"]="info";a["WARNING"]="warning";a["DANGER"]="danger";a["SUCCESS"]="success"})(s||(s={}));const d=class{constructor(r){a(this,r);this.brConnectedCallback=t(this,"brConnectedCallback",7);this.brWillLoad=t(this,"brWillLoad",7);this.brDidLoad=t(this,"brDidLoad",7);this.brWillRender=t(this,"brWillRender",7);this.brDidRender=t(this,"brDidRender",7);this.brShouldUpdate=t(this,"brShouldUpdate",7);this.brWillUpdate=t(this,"brWillUpdate",7);this.brDidUpdate=t(this,"brDidUpdate",7);this.brDidDisconnect=t(this,"brDidDisconnect",7);this.brFormAssociatedCallback=t(this,"brFormAssociatedCallback",7);this.brFormDisabledCallback=t(this,"brFormDisabledCallback",7);this.brFormResetCallback=t(this,"brFormResetCallback",7);this.brFormStateRestoreCallback=t(this,"brFormStateRestoreCallback",7);if(r.$hostElement$["s-ei"]){this.elementInternals=r.$hostElement$["s-ei"]}else{this.elementInternals=r.$hostElement$.attachInternals();r.$hostElement$["s-ei"]=this.elementInternals}this.inheritedAttributes={};this.accept="";this.label="Envio de arquivo";this.filesSelected=null;this.file=null;this.disabled=false;this.state=s.INFO;this.multiple=false}connectedCallback(){this.brConnectedCallback.emit()}componentWillLoad(){this.brWillLoad.emit();this.inheritedAttributes=o(this.el)}componentDidLoad(){this.brDidLoad.emit()}componentWillRender(){this.brWillRender.emit()}componentDidRender(){this.brDidRender.emit()}componentShouldUpdate(){this.brShouldUpdate.emit()}componentWillUpdate(){this.brWillUpdate.emit()}componentDidUpdate(){this.brDidUpdate.emit()}disconnectedCallback(){this.brDidDisconnect.emit()}formAssociatedCallback(a){this.brFormAssociatedCallback.emit(a)}formDisabledCallback(a){this.brFormDisabledCallback.emit(a)}formResetCallback(){this.brFormResetCallback.emit()}formStateRestoreCallback(a,t){this.brFormStateRestoreCallback.emit([a,t])}getCssClassMap(){return{"br-upload":true,[this.state]:true}}handleRemoveFileSelection(a){const t=Array.from(this.filesSelected).filter((t=>t!==a));this.filesSelected=t;const r=this.el.shadowRoot.getElementById("single-file");r.value=""}renderFilesUploaded(){const a=this._calculateFileSize(this.filesSelected);return a.map((({file:a,size:t})=>r("div",{class:"br-item d-flex",key:a.name},r("div",{class:"content text-primary-default mr-auto"},a.name),r("div",{class:"support mr-n2"},r("span",{class:""},t),r("br-button",{shape:"circle",type:"button","aria-label":"Remover arquivo",onClick:()=>this.handleRemoveFileSelection(a)},r("br-icon",{"icon-name":"fa-solid:trash","aria-hidden":"true"}))))))}onInputChange(a){if(a.length===1){this.filesSelected=a}else if(a.length>0){this.filesSelected=a}else{console.error(a.length===0?"NENHUM ARQUIVO ENVIADO":"VOCÊ SÓ PODE ENVIAR UM ARQUIVO POR VEZ");return false}}_calculateFileSize(a){return Array.from(a).map((a=>{let t="";const r=["KB","MB","GB","TB"];let e=0;let i=a.size/1024;if(i<1){t=`${a.size} bytes`}else{while(i>1&&e<r.length){t=`${i.toFixed(2)} ${r[e]}`;i/=1024;e++}}return{file:a,size:t||0}}))}handleDrop(a){var t;a.preventDefault();const r=(t=a.dataTransfer)===null||t===void 0?void 0:t.files;if(r&&r.length>0){this.onInputChange(r)}}handleDragOver(a){a.preventDefault()}handleFileSelection(){const a=this.el.shadowRoot.getElementById("single-file");a.click()}render(){return r(e,{key:"a791d0b083331fce5cb265ff087300725b0a2d93"},r("div",{key:"82802a9e8cb8ee63b5f32338da7cb40e412969df",class:this.getCssClassMap()},r("label",{key:"15e2c8f4c8ccc6d73b39965e63e1751f9ed0fd26",class:"upload-label",form:"single-file"},r("span",{key:"96ef5ca084c0ff022775f11815802e03912720a2"},this.label)),r("button",{key:"06981a95907f351d9b544befb61e1d8a3a71ba4f",class:"upload-button",type:"button","aria-hidden":"true",tabIndex:this.disabled?-1:0,disabled:this.disabled,"aria-label":"Selecionar arquivo para upload",onClick:()=>this.handleFileSelection(),onDrop:a=>this.handleDrop(a),onDragOver:a=>this.handleDragOver(a)},r("br-icon",{key:"045ca524186a43bc78622e02f7f32e6503a86877","icon-name":"fa-solid:upload",height:"16","aria-hidden":"true"}),r("span",{key:"c5f5c7bae2f8da1ac82f29677934a1089a3ed40f"},"Selecione o arquivo")),r("input",Object.assign({key:"79833d6a3a8ee1e4b3a3fd30477f08a772e1f6ea",class:"upload-input",id:"single-file",type:"file","aria-hidden":"null","aria-label":"enviar arquivo",onChange:a=>this.onInputChange(a.target.files)},this.inheritedAttributes,{multiple:this.multiple,disabled:this.disabled,accept:this.accept})),r("div",{key:"b8933f12f329d310c3b8d520433ebb965907d6f5",id:"list-files",class:"upload-list"},this.filesSelected?this.renderFilesUploaded():null)))}static get formAssociated(){return true}get el(){return i(this)}};d.style=l;export{d as br_upload};
|
|
6
|
+
//# sourceMappingURL=p-7f8c5016.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["uploadCss","BrUploadStyle0","UploadState","Upload","this","inheritedAttributes","INFO","connectedCallback","brConnectedCallback","emit","componentWillLoad","brWillLoad","inheritAriaAttributes","el","componentDidLoad","brDidLoad","componentWillRender","brWillRender","componentDidRender","brDidRender","componentShouldUpdate","brShouldUpdate","componentWillUpdate","brWillUpdate","componentDidUpdate","brDidUpdate","disconnectedCallback","brDidDisconnect","formAssociatedCallback","form","brFormAssociatedCallback","formDisabledCallback","disabled","brFormDisabledCallback","formResetCallback","brFormResetCallback","formStateRestoreCallback","state","_mode","brFormStateRestoreCallback","getCssClassMap","handleRemoveFileSelection","file","newArrayFilter","Array","from","filesSelected","filter","f","fileInput","shadowRoot","getElementById","value","renderFilesUploaded","fileSizes","_calculateFileSize","map","size","h","class","key","name","shape","type","onClick","onInputChange","files","length","console","error","sOutput","aMultiples","nMultiple","nApprox","toFixed","handleDrop","event","preventDefault","_a","dataTransfer","handleDragOver","handleFileSelection","click","render","Host","label","tabIndex","onDrop","onDragOver","height","Object","assign","id","onChange","$event","target","multiple","accept"],"sources":["src/components/upload/upload.scss?tag=br-upload&encapsulation=shadow","src/components/upload/upload.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/upload/upload.scss\";\n\n:host {\n display: block;\n}\n","// Start of Selection\nimport { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Prop, State } from '@stencil/core'\n\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\nenum UploadState {\n INFO = 'info',\n WARNING = 'warning',\n DANGER = 'danger',\n SUCCESS = 'success',\n}\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/upload?tab=designer).\n *\n * @slot default - Descrição do slot\n */\n@Component({\n tag: 'br-upload',\n styleUrl: 'upload.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Upload {\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!: HTMLBrUploadElement\n\n /**\n * Tipos de arquivo permitidos (ex: 'image/*').\n * Esta propriedade define quais tipos de arquivos podem ser selecionados para upload.\n */\n @Prop() accept: string = ''\n\n /**\n * **[OBRIGATÓRIO]** Texto descritivo do campo de upload.\n * Este é o texto que é mostrado no label do textarea.\n */\n @Prop() label: string = 'Envio de arquivo'\n\n /**\n * Evento emitido quando um arquivo é selecionado.\n * Este estado armazena os arquivos que foram selecionados pelo usuário.\n */\n @State() filesSelected: FileList | null = null\n\n /**\n * Referência ao elemento de arquivo selecionado.\n * Este estado armazena o arquivo que foi selecionado para upload.\n */\n @State() file: File | null = null\n\n /**\n * Indica se o componente está desativado.\n * Quando definido como `true`, o campo de upload se torna não interativo,\n * impedindo que o usuário selecione ou envie arquivos.\n * Isso é útil para controlar a interação do usuário em situações específicas,\n * como durante o carregamento de dados ou quando o formulário está em um estado inválido.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * **[OBRIGATÓRIO]** Define o estado visual da mensagem.\n * Os possíveis valores são:\n * - 'info': Mensagem informativa.\n * - 'warning': Mensagem de aviso.\n * - 'danger': Mensagem de erro ou alerta.\n * - 'success': Mensagem de sucesso.\n * O valor padrão é 'info'.\n */\n @Prop({ reflect: true }) state: string = UploadState.INFO\n\n /**\n * Indica se o componente permite a seleção de múltiplos arquivos.\n * Quando definido como `true`, o usuário pode selecionar mais de um arquivo para upload.\n */\n @Prop() multiple: boolean = false\n\n @AttachInternals() elementInternals: ElementInternals\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() brConnectedCallback: EventEmitter<void>\n connectedCallback() {\n this.brConnectedCallback.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 getCssClassMap(): CssClassMap {\n return {\n 'br-upload': true,\n [this.state]: true,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n private handleRemoveFileSelection(file: File) {\n const newArrayFilter = Array.from(this.filesSelected).filter((f) => f !== file)\n this.filesSelected = newArrayFilter as unknown as FileList\n const fileInput = this.el.shadowRoot.getElementById('single-file') as HTMLInputElement\n fileInput.value = ''\n }\n\n private renderFilesUploaded() {\n const fileSizes = this._calculateFileSize(this.filesSelected)\n\n return fileSizes.map(({ file, size }) => {\n return (\n <div class=\"br-item d-flex\" key={file.name}>\n <div class=\"content text-primary-default mr-auto\">{file.name}</div>\n <div class=\"support mr-n2\">\n <span class=\"\">{size}</span>\n <br-button\n shape=\"circle\"\n type=\"button\"\n aria-label=\"Remover arquivo\"\n onClick={() => this.handleRemoveFileSelection(file)}\n >\n <br-icon icon-name=\"fa-solid:trash\" aria-hidden=\"true\"></br-icon>\n </br-button>\n </div>\n </div>\n )\n })\n }\n\n private onInputChange(files: FileList) {\n if (files.length === 1) {\n this.filesSelected = files\n } else if (files.length > 0) {\n this.filesSelected = files\n } else {\n console.error(files.length === 0 ? 'NENHUM ARQUIVO ENVIADO' : 'VOCÊ SÓ PODE ENVIAR UM ARQUIVO POR VEZ')\n\n return false\n }\n }\n\n private _calculateFileSize(files: FileList) {\n return Array.from(files).map((file) => {\n let sOutput = ''\n const aMultiples = ['KB', 'MB', 'GB', 'TB']\n let nMultiple = 0\n let nApprox = file.size / 1024\n\n if (nApprox < 1) {\n sOutput = `${file.size} bytes`\n } else {\n while (nApprox > 1 && nMultiple < aMultiples.length) {\n sOutput = `${nApprox.toFixed(2)} ${aMultiples[nMultiple]}`\n nApprox /= 1024\n nMultiple++\n }\n }\n\n return { file: file, size: sOutput || 0 }\n })\n }\n\n private handleDrop(event: DragEvent) {\n event.preventDefault()\n const files = event.dataTransfer?.files\n if (files && files.length > 0) {\n this.onInputChange(files)\n }\n }\n\n private handleDragOver(event: DragEvent) {\n event.preventDefault()\n }\n\n private handleFileSelection() {\n const fileInput = this.el.shadowRoot.getElementById('single-file') as HTMLInputElement\n fileInput.click()\n }\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()}>\n <label class=\"upload-label\" form=\"single-file\">\n <span>{this.label}</span>\n </label>\n <button\n class=\"upload-button\"\n type=\"button\"\n aria-hidden=\"true\"\n tabIndex={this.disabled ? -1 : 0}\n disabled={this.disabled}\n aria-label=\"Selecionar arquivo para upload\"\n onClick={() => this.handleFileSelection()}\n onDrop={(event) => this.handleDrop(event)}\n onDragOver={(event) => this.handleDragOver(event)}\n >\n <br-icon icon-name=\"fa-solid:upload\" height=\"16\" aria-hidden=\"true\"></br-icon>\n <span>Selecione o arquivo</span>\n </button>\n\n <input\n class=\"upload-input\"\n id=\"single-file\"\n type=\"file\"\n aria-hidden=\"null\"\n aria-label=\"enviar arquivo\"\n onChange={($event: any) => this.onInputChange($event.target.files)}\n {...this.inheritedAttributes}\n multiple={this.multiple}\n disabled={this.disabled}\n accept={this.accept}\n />\n <div id=\"list-files\" class=\"upload-list\">\n {this.filesSelected ? this.renderFilesUploaded() : null}\n </div>\n </div>\n </Host>\n )\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["uploadCss","BrUploadStyle0","UploadState","Upload","this","inheritedAttributes","INFO","connectedCallback","brConnectedCallback","emit","componentWillLoad","brWillLoad","inheritAriaAttributes","el","componentDidLoad","brDidLoad","componentWillRender","brWillRender","componentDidRender","brDidRender","componentShouldUpdate","brShouldUpdate","componentWillUpdate","brWillUpdate","componentDidUpdate","brDidUpdate","disconnectedCallback","brDidDisconnect","formAssociatedCallback","form","brFormAssociatedCallback","formDisabledCallback","disabled","brFormDisabledCallback","formResetCallback","brFormResetCallback","formStateRestoreCallback","state","_mode","brFormStateRestoreCallback","getCssClassMap","handleRemoveFileSelection","file","newArrayFilter","Array","from","filesSelected","filter","f","fileInput","shadowRoot","getElementById","value","renderFilesUploaded","fileSizes","_calculateFileSize","map","size","h","class","key","name","shape","type","onClick","onInputChange","files","length","console","error","sOutput","aMultiples","nMultiple","nApprox","toFixed","handleDrop","event","preventDefault","_a","dataTransfer","handleDragOver","handleFileSelection","click","render","Host","label","tabIndex","onDrop","onDragOver","height","Object","assign","id","onChange","$event","target","multiple","accept"],"sources":["src/components/upload/upload.scss?tag=br-upload&encapsulation=shadow","src/components/upload/upload.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/upload/upload.scss\";\n\n:host {\n display: block;\n}\n","// Start of Selection\nimport { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Prop, State } from '@stencil/core'\n\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\nenum UploadState {\n INFO = 'info',\n WARNING = 'warning',\n DANGER = 'danger',\n SUCCESS = 'success',\n}\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/upload?tab=designer).\n *\n * @slot default - Descrição do slot\n */\n@Component({\n tag: 'br-upload',\n styleUrl: 'upload.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Upload {\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!: HTMLBrUploadElement\n\n /**\n * Tipos de arquivo permitidos (ex: 'image/*').\n * Esta propriedade define quais tipos de arquivos podem ser selecionados para upload.\n */\n @Prop() accept: string = ''\n\n /**\n * **[OBRIGATÓRIO]** Texto descritivo do campo de upload.\n * Este é o texto que é mostrado no label do textarea.\n */\n @Prop() label: string = 'Envio de arquivo'\n\n /**\n * Evento emitido quando um arquivo é selecionado.\n * Este estado armazena os arquivos que foram selecionados pelo usuário.\n */\n @State() filesSelected: FileList | null = null\n\n /**\n * Referência ao elemento de arquivo selecionado.\n * Este estado armazena o arquivo que foi selecionado para upload.\n */\n @State() file: File | null = null\n\n /**\n * Indica se o componente está desativado.\n * Quando definido como `true`, o campo de upload se torna não interativo,\n * impedindo que o usuário selecione ou envie arquivos.\n * Isso é útil para controlar a interação do usuário em situações específicas,\n * como durante o carregamento de dados ou quando o formulário está em um estado inválido.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * **[OBRIGATÓRIO]** Define o estado visual da mensagem.\n * Os possíveis valores são:\n * - 'info': Mensagem informativa.\n * - 'warning': Mensagem de aviso.\n * - 'danger': Mensagem de erro ou alerta.\n * - 'success': Mensagem de sucesso.\n * O valor padrão é 'info'.\n */\n @Prop({ reflect: true }) state: string = UploadState.INFO\n\n /**\n * Indica se o componente permite a seleção de múltiplos arquivos.\n * Quando definido como `true`, o usuário pode selecionar mais de um arquivo para upload.\n */\n @Prop() multiple: boolean = false\n\n @AttachInternals() elementInternals: ElementInternals\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() brConnectedCallback: EventEmitter<void>\n connectedCallback() {\n this.brConnectedCallback.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 getCssClassMap(): CssClassMap {\n return {\n 'br-upload': true,\n [this.state]: true,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n private handleRemoveFileSelection(file: File) {\n const newArrayFilter = Array.from(this.filesSelected).filter((f) => f !== file)\n this.filesSelected = newArrayFilter as unknown as FileList\n const fileInput = this.el.shadowRoot.getElementById('single-file') as HTMLInputElement\n fileInput.value = ''\n }\n\n private renderFilesUploaded() {\n const fileSizes = this._calculateFileSize(this.filesSelected)\n\n return fileSizes.map(({ file, size }) => {\n return (\n <div class=\"br-item d-flex\" key={file.name}>\n <div class=\"content text-primary-default mr-auto\">{file.name}</div>\n <div class=\"support mr-n2\">\n <span class=\"\">{size}</span>\n <br-button\n shape=\"circle\"\n type=\"button\"\n aria-label=\"Remover arquivo\"\n onClick={() => this.handleRemoveFileSelection(file)}\n >\n <br-icon icon-name=\"fa-solid:trash\" aria-hidden=\"true\"></br-icon>\n </br-button>\n </div>\n </div>\n )\n })\n }\n\n private onInputChange(files: FileList) {\n if (files.length === 1) {\n this.filesSelected = files\n } else if (files.length > 0) {\n this.filesSelected = files\n } else {\n console.error(files.length === 0 ? 'NENHUM ARQUIVO ENVIADO' : 'VOCÊ SÓ PODE ENVIAR UM ARQUIVO POR VEZ')\n\n return false\n }\n }\n\n private _calculateFileSize(files: FileList) {\n return Array.from(files).map((file) => {\n let sOutput = ''\n const aMultiples = ['KB', 'MB', 'GB', 'TB']\n let nMultiple = 0\n let nApprox = file.size / 1024\n\n if (nApprox < 1) {\n sOutput = `${file.size} bytes`\n } else {\n while (nApprox > 1 && nMultiple < aMultiples.length) {\n sOutput = `${nApprox.toFixed(2)} ${aMultiples[nMultiple]}`\n nApprox /= 1024\n nMultiple++\n }\n }\n\n return { file: file, size: sOutput || 0 }\n })\n }\n\n private handleDrop(event: DragEvent) {\n event.preventDefault()\n const files = event.dataTransfer?.files\n if (files && files.length > 0) {\n this.onInputChange(files)\n }\n }\n\n private handleDragOver(event: DragEvent) {\n event.preventDefault()\n }\n\n private handleFileSelection() {\n const fileInput = this.el.shadowRoot.getElementById('single-file') as HTMLInputElement\n fileInput.click()\n }\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()}>\n <label class=\"upload-label\" form=\"single-file\">\n <span>{this.label}</span>\n </label>\n <button\n class=\"upload-button\"\n type=\"button\"\n aria-hidden=\"true\"\n tabIndex={this.disabled ? -1 : 0}\n disabled={this.disabled}\n aria-label=\"Selecionar arquivo para upload\"\n onClick={() => this.handleFileSelection()}\n onDrop={(event) => this.handleDrop(event)}\n onDragOver={(event) => this.handleDragOver(event)}\n >\n <br-icon icon-name=\"fa-solid:upload\" height=\"16\" aria-hidden=\"true\"></br-icon>\n <span>Selecione o arquivo</span>\n </button>\n\n <input\n class=\"upload-input\"\n id=\"single-file\"\n type=\"file\"\n aria-hidden=\"null\"\n aria-label=\"enviar arquivo\"\n onChange={($event: any) => this.onInputChange($event.target.files)}\n {...this.inheritedAttributes}\n multiple={this.multiple}\n disabled={this.disabled}\n accept={this.accept}\n />\n <div id=\"list-files\" class=\"upload-list\">\n {this.filesSelected ? this.renderFilesUploaded() : null}\n </div>\n </div>\n </Host>\n )\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Construído com @govbr-ds/webcomponents
|
|
3
|
+
* Padrão Digital de Governo.
|
|
4
|
+
*/
|
|
5
|
+
import{r,c as t,h as a,a as i,g as e}from"./p-dbd35139.js";import{i as o}from"./p-74a4eb38.js";import{v as n}from"./p-d5a8d30c.js";const l='*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}small{font-size:80%}img{border-style:none}button,input,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;-moz-appearance:button;appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}[hidden]{display:none}.d-flex{display:-ms-flexbox !important;display:flex !important}.align-items-center{-ms-flex-align:center !important;align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter) * 0.5);padding-right:calc(var(--grid-gutter) * 0.5);width:100%}.col{-ms-flex:1 0 0%;flex:1 0 0%;min-width:8.3333333333%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.container{--grid-margin:var(--grid-portrait-margin);--grid-maxwidth:var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter:var(--grid-portrait-gutter);display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--grid-gutter) * -0.5);margin-right:calc(var(--grid-gutter) * -0.5)}@media (min-width: 576px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}}@media (min-width: 992px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media (min-width: 1280px){.container{--grid-margin:var(--grid-desktop-margin)}.row{--grid-gutter:var(--grid-desktop-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}}@media (min-width: 1600px){.container{--grid-margin:var(--grid-tv-margin)}.row{--grid-gutter:var(--grid-tv-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mr-2{margin-right:var(--spacing-scale-base) !important}.mr-n2{margin-right:calc(var(--spacing-scale-base) * -1) !important}.mb-3{margin-bottom:var(--spacing-scale-2x) !important}.mr-auto{margin-right:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}.py-3{padding-bottom:var(--spacing-scale-2x) !important;padding-top:var(--spacing-scale-2x) !important}.py-4{padding-bottom:var(--spacing-scale-3x) !important;padding-top:var(--spacing-scale-3x) !important}body{--bg-color:var(--background);--bg-color-rgb:var(--background-rgb);--bg-color-hsl:var(--background-hsl);--font-size:var(--font-size-scale-base);--font-weight:var(--font-weight-regular);--link-color:var(--interactive);--link-color-rgb:var(--interactive-rgb);--link-color-hsl:var(--interactive-hsl);--line-height:var(--font-line-height-medium);--text-color:var(--color);--text-color-rgb:var(--color-rgb);--text-color-hsl:var(--color-hsl);background:var(--bg-color);color:var(--text-color);font-family:var(--font-family-base);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height)}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media (min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset:var(--spacing-scale-half);color:var(--interactive);text-decoration:none}a:focus{outline:none}a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}button{cursor:pointer}img{max-width:100%;vertical-align:middle}ul{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}::-moz-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-webkit-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}:-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !important}.text-primary-default{color:var(--color-primary-default) !important}.bg-support-01{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background:var(--color-support-01) !important}.text-nowrap{white-space:nowrap !important}.text-base{font-size:var(--font-size-scale-base) !important}.highlight{background:var(--status-highlight-background) -webkit-gradient(linear, left top, left bottom, from(var(--status-highlight-overlay)), to(var(--status-highlight-overlay)));background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{-webkit-box-shadow:var(--surface-shadow-sm);box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown .br-item{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--color-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);--item-padding-y:var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-checkbox{--checkbox-padding:var(--spacing-scale-base);--checkbox-size:24px;display:-ms-flexbox;display:flex;position:relative}.br-checkbox+.br-checkbox{margin-top:var(--spacing-scale-base)}.br-checkbox input{margin:0;opacity:0;position:absolute}.br-checkbox input+label{cursor:pointer;display:inline-block;margin-bottom:0;min-height:var(--checkbox-size);min-width:var(--checkbox-size);padding-left:calc(var(--spacing-scale-base) + var(--checkbox-size));position:relative}.br-checkbox input+label::before{background:var(--background-light);border:1px solid var(--border-color);border-radius:4px;content:"";height:var(--checkbox-size);left:0;position:absolute;width:var(--checkbox-size)}.br-checkbox input+label:empty{padding:0}.br-checkbox label{font-weight:var(--font-weight-medium)}.br-checkbox.hidden-label label{padding-left:calc(var(--checkbox-size) + var(--surface-width-md) * 2);text-indent:-10000px;white-space:nowrap;width:0}.br-checkbox input:checked+label::after,.br-checkbox input:indeterminate+label::after{border:solid var(--selected);border-width:0 3px 3px 0;content:"";height:var(--icon-size-sm);left:8px;position:absolute;top:4px;-webkit-transform:rotate(45deg);transform:rotate(45deg);width:8px}.br-checkbox input[indeterminate]+label::before,.br-checkbox input:indeterminate+label::before{--interactive-rgb:var(--color-rgb);background:var(--selected);border-color:var(--selected)}.br-checkbox input[indeterminate]:hover:not(:disabled)+label::before,.br-checkbox input:indeterminate:hover:not(:disabled)+label::before{--interactive-rgb:var(--color-dark-rgb)}.br-checkbox input[indeterminate]:checked+label::after,.br-checkbox input[indeterminate]+label::after,.br-checkbox input:indeterminate:checked+label::after,.br-checkbox input:indeterminate+label::after{border-color:var(--background-light);border-width:0 0 3px;top:2px;-webkit-transform:none;transform:none}.br-checkbox.invalid input+label::before,.br-checkbox[invalid] input+label::before{--border-color:var(--danger)}.br-checkbox.invalid input:focus-visible:checked+label::before,.br-checkbox.invalid input:focus-visible+label::before,.br-checkbox[invalid] input:focus-visible:checked+label::before,.br-checkbox[invalid] input:focus-visible+label::before{--border-color:var(--focus-color)}.br-checkbox.invalid input:checked+label::before,.br-checkbox[invalid] input:checked+label::before{--border-color:var(--danger)}.br-checkbox.valid input+label::before,.br-checkbox[valid] input+label::before{--border-color:var(--success)}.br-checkbox.valid input:focus-visible:checked+label::before,.br-checkbox.valid input:focus-visible+label::before,.br-checkbox[valid] input:focus-visible:checked+label::before,.br-checkbox[valid] input:focus-visible+label::before{--border-color:var(--focus-color)}.br-checkbox.valid input:checked+label::before,.br-checkbox[valid] input:checked+label::before{--border-color:var(--success)}.br-checkbox.small input+label,.br-checkbox[small] input+label{line-height:var(--spacing-scale-2xh);min-height:var(--spacing-scale-2xh)}.br-checkbox.small input+label::before,.br-checkbox[small] input+label::before{height:var(--spacing-scale-2xh);width:var(--spacing-scale-2xh)}.br-checkbox.small input:checked+label::after,.br-checkbox[small] input:checked+label::after{border-width:0 2px 2px 0;height:var(--icon-size-sm);left:7px;top:4px;width:6px}.br-checkbox.small input[indeterminate]+label::after,.br-checkbox.small input:indeterminate+label::after,.br-checkbox[small] input[indeterminate]+label::after,.br-checkbox[small] input:indeterminate+label::after{border-color:var(--background-light);border-width:0 0 3px;left:7px;top:1px;-webkit-transform:none;transform:none;width:6px}.br-checkbox input:invalid+label::before{--border-color:var(--danger)}.br-checkbox input:focus-visible:checked+label::before,.br-checkbox input:focus-visible+label::before{border-color:var(--focus) !important;-webkit-box-shadow:0 0 0 var(--surface-width-md) var(--focus);box-shadow:0 0 0 var(--surface-width-md) var(--focus);outline:none}.br-checkbox input:hover:not(:disabled)+label::before{--interactive-rgb:var(--interactive-light-rgb);background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}.br-checkbox:not(.disabled) input:disabled+label{cursor:not-allowed;opacity:var(--disabled)}.br-checkbox:not(.disabled) input:disabled+label *{pointer-events:none}.br-checkbox.dark-mode,.br-checkbox.dark-mode label{color:var(--color-dark)}:host{display:block}';const s=l;const c=class{constructor(a){r(this,a);this.brDidCheckedChange=t(this,"brDidCheckedChange",7);if(a.$hostElement$["s-ei"]){this.elementInternals=a.$hostElement$["s-ei"]}else{this.elementInternals=a.$hostElement$.attachInternals();a.$hostElement$["s-ei"]=this.elementInternals}this.inheritedAttributes={};this.handleCheckedChange=r=>{this.checked=r.target.checked;this.brDidCheckedChange.emit(this.checked)};this.indeterminate=false;this.checked=false;this.customId=`br-input-${n()}`;this.disabled=false;this.hasHiddenLabel=false;this.label=undefined;this.name=undefined;this.state=undefined;this.value=undefined;this._slotDefault=false}componentWillLoad(){this.inheritedAttributes=o(this.el);this.hasSlotContentDefault()}hasSlotContentDefault(){this._slotDefault=this.el.innerHTML!==""}getCssClassMap(){return{"br-checkbox":true,valid:this.state==="valid",invalid:this.state==="invalid",disabled:this.disabled,"hidden-label":this.hasHiddenLabel}}async toggleChecked(){this.checked=!this.checked;this.brDidCheckedChange.emit(this.checked)}render(){return a(i,{key:"a4a2241b6ebf30cb2a443bea2c5d8b0a1b28f2c5"},a("div",{key:"b21dda9eee24e48f9c5fbbc85cbb1419f24897f7",class:this.getCssClassMap()},a("input",Object.assign({key:"1ebffc2b476181f66f1e5ade165a1b6b087d9040",type:"checkbox",id:this.customId,name:this.name,checked:this.checked,disabled:this.disabled,indeterminate:this.indeterminate,value:this.value,onChange:this.handleCheckedChange},this.inheritedAttributes)),a("label",{key:"8d2f67677ee74c4ff8a833ba46013286dff25f45",htmlFor:this.customId},this._slotDefault?a("slot",null):this.label)))}static get formAssociated(){return true}get el(){return e(this)}};c.style=s;const d="*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}small{font-size:80%}img{border-style:none}button,input,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;-moz-appearance:button;appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}[hidden]{display:none}.d-flex{display:-ms-flexbox !important;display:flex !important}.align-items-center{-ms-flex-align:center !important;align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter) * 0.5);padding-right:calc(var(--grid-gutter) * 0.5);width:100%}.col{-ms-flex:1 0 0%;flex:1 0 0%;min-width:8.3333333333%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.container{--grid-margin:var(--grid-portrait-margin);--grid-maxwidth:var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter:var(--grid-portrait-gutter);display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--grid-gutter) * -0.5);margin-right:calc(var(--grid-gutter) * -0.5)}@media (min-width: 576px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}}@media (min-width: 992px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media (min-width: 1280px){.container{--grid-margin:var(--grid-desktop-margin)}.row{--grid-gutter:var(--grid-desktop-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}}@media (min-width: 1600px){.container{--grid-margin:var(--grid-tv-margin)}.row{--grid-gutter:var(--grid-tv-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mr-2{margin-right:var(--spacing-scale-base) !important}.mr-n2{margin-right:calc(var(--spacing-scale-base) * -1) !important}.mb-3{margin-bottom:var(--spacing-scale-2x) !important}.mr-auto{margin-right:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}.py-3{padding-bottom:var(--spacing-scale-2x) !important;padding-top:var(--spacing-scale-2x) !important}.py-4{padding-bottom:var(--spacing-scale-3x) !important;padding-top:var(--spacing-scale-3x) !important}body{--bg-color:var(--background);--bg-color-rgb:var(--background-rgb);--bg-color-hsl:var(--background-hsl);--font-size:var(--font-size-scale-base);--font-weight:var(--font-weight-regular);--link-color:var(--interactive);--link-color-rgb:var(--interactive-rgb);--link-color-hsl:var(--interactive-hsl);--line-height:var(--font-line-height-medium);--text-color:var(--color);--text-color-rgb:var(--color-rgb);--text-color-hsl:var(--color-hsl);background:var(--bg-color);color:var(--text-color);font-family:var(--font-family-base);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height)}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media (min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset:var(--spacing-scale-half);color:var(--interactive);text-decoration:none}a:focus{outline:none}a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}button{cursor:pointer}img{max-width:100%;vertical-align:middle}ul{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}::-moz-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-webkit-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}:-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !important}.text-primary-default{color:var(--color-primary-default) !important}.bg-support-01{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background:var(--color-support-01) !important}.text-nowrap{white-space:nowrap !important}.text-base{font-size:var(--font-size-scale-base) !important}.highlight{background:var(--status-highlight-background) -webkit-gradient(linear, left top, left bottom, from(var(--status-highlight-overlay)), to(var(--status-highlight-overlay)));background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{-webkit-box-shadow:var(--surface-shadow-sm);box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown .br-item{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--color-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);--item-padding-y:var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-input{--input-button-margin:var(--spacing-scale-half);--input-padding:0 var(--spacing-scale-2x);--input-padding-button:var(--spacing-scale-5x);--input-padding-icon:var(--spacing-scale-5x);--input-size:var(--input-medium);--input-small:32px;--input-medium:40px;--input-large:48px;--input-highlight:56px;--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--interactive-light-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);color:var(--color);position:relative}.br-input input{background-color:var(--background-light);border-color:var(--border-color-alternative);border-radius:var(--surface-rounder-sm);border-style:var(--border-style);border-width:var(--border-width);color:var(--color-light);display:block;font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);height:var(--input-size);margin-top:var(--spacing-scale-half);padding-bottom:0;padding-left:var(--spacing-scale-2x);padding-right:var(--spacing-scale-2x);padding-top:0;width:100%}.br-input input::-ms-reveal,.br-input input::-ms-clear,.br-input input::-webkit-calendar-picker-indicator{display:none}.br-input input[type=search]::-webkit-search-decoration,.br-input input[type=search]::-webkit-search-cancel-button,.br-input input[type=search]::-webkit-search-results-button,.br-input input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}.br-input.input-inline{display:-ms-flexbox;display:flex}.br-input.input-inline .input-label{margin-right:var(--spacing-scale-baseh);margin-top:calc(var(--input-size) * 0.5 - var(--spacing-scale-half))}.br-input.input-inline .input-content{-ms-flex:1;flex:1}.br-input .input-group{position:relative}.br-input .input-icon{-ms-flex-align:center;align-items:center;color:var(--border-color-alternative);display:-ms-flexbox;display:flex;height:var(--input-size);margin-left:var(--spacing-scale-baseh);position:absolute}.br-input .input-icon+input{padding-left:var(--input-padding-icon)}.br-input .br-button{--button-size:var(--button-small);--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--interactive-light-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);border-radius:50%;float:right;margin-right:var(--input-button-margin);margin-top:calc((var(--input-size) + var(--spacing-scale-half)) * -1);padding:0;position:relative;-webkit-transform:translateY(calc((var(--input-size) - var(--button-size)) * 0.5));transform:translateY(calc((var(--input-size) - var(--button-size)) * 0.5));width:var(--button-size)}.br-input.input-button input{padding-right:var(--input-padding-button)}.br-input.has-icon input{padding-right:var(--input-padding-icon)}.br-input.has-icon .br-button.circle{float:right;margin-right:var(--spacing-scale-half);margin-top:calc((var(--button-size) + var(--spacing-scale-half) + var(--spacing-scale-half)) * -1);-webkit-transform:translateY(0);transform:translateY(0)}.br-input.has-icon.small .br-button.circle{margin-top:calc((var(--button-size) + var(--spacing-scale-base)) * -1)}.br-input.has-icon.large .br-button.circle{margin-top:calc(var(--button-size) * -1)}.br-input.input-highlight{--input-button-margin:var(--spacing-scale-2x);--input-padding:0 var(--spacing-scale-3x);--input-padding-button:var(--spacing-scale-7x);--input-padding-icon:var(--spacing-scale-7x);--input-size:var(--input-highlight)}.br-input.input-highlight input{background-color:var(--gray-2);border-color:transparent;padding-left:var(--spacing-scale-3x);padding-right:var(--spacing-scale-3x)}.br-input.input-highlight .input-icon{margin-left:var(--spacing-scale-3x)}.br-input.input-highlight .input-icon+input{padding-left:var(--spacing-scale-7x)}.br-input .br-list{-webkit-box-shadow:var(--surface-shadow-md);box-shadow:var(--surface-shadow-md);max-height:530px;overflow:auto;position:absolute;width:100%;z-index:var(--z-index-layer-2)}.br-input .br-list::-webkit-scrollbar{height:var(--spacing-scale-base);width:var(--spacing-scale-base)}.br-input .br-list::-webkit-scrollbar-track{background:var(--gray-10)}.br-input .br-list::-webkit-scrollbar-thumb{background:var(--gray-30)}.br-input .br-list:hover::-webkit-scrollbar-thumb{background:var(--gray-40)}.br-input .br-list .br-item{--item-padding-y:var(--spacing-scale-2x)}.br-input .br-list .br-item:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-input .br-list .br-item:not(:first-child){border-top:var(--surface-width-sm) solid var(--border-color)}.br-input.success input{border-color:var(--success);border-width:2px}.br-input.danger input{border-color:var(--danger);border-width:2px}.br-input.warning input{border-color:var(--warning);border-width:2px}.br-input.info input{border-color:var(--info);border-width:2px}.br-input input:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-input input:focus,.br-input input:focus-visible{border-color:var(--focus) !important;-webkit-box-shadow:0 0 0 var(--surface-width-md) var(--focus);box-shadow:0 0 0 var(--surface-width-md) var(--focus);outline:none}.br-input .feedback{margin-bottom:var(--spacing-scale-half)}.br-input.small{--input-size:var(--input-small)}.br-input.medium{--input-size:var(--input-medium)}.br-input.large{--input-size:var(--input-large)}.br-input.dark-mode,.br-input.dark-mode label{--color:var(--color-dark);--focus-color:var(--focus-color-dark)}:host{display:block}:host .br-input .input-icon{margin-top:0.1em;margin-left:var(--spacing-scale-base)}:host .br-input .input-icon+input{padding-left:calc(var(--input-padding-icon) + 3px)}.br-input br-button{float:right;margin-right:var(--input-button-margin);margin-top:calc((var(--input-size) + var(--spacing-scale-half)) * -1);padding:0;position:relative}.button-transform{-webkit-transform:translateY(calc((var(--input-size) - 32px) * 0.5));transform:translateY(calc((var(--input-size) - 32px) * 0.5))}";const g=d;const b=class{constructor(i){r(this,i);this.valueChange=t(this,"valueChange",7);if(i.$hostElement$["s-ei"]){this.elementInternals=i.$hostElement$["s-ei"]}else{this.elementInternals=i.$hostElement$.attachInternals();i.$hostElement$["s-ei"]=this.elementInternals}this.inheritedAttributes={};this.handleInput=r=>{this.value=r.target.value;this.valueChange.emit(this.value)};this.renderLabel=()=>{var r;if(((r=this.label)===null||r===void 0?void 0:r.length)>0){if(this.isInline){return a("div",{class:"input-label"},a("label",{class:"text-nowrap",htmlFor:this.customId},this.label))}else{return a("label",{htmlFor:this.customId},this.label)}}};this.renderInput=()=>a("input",Object.assign({class:this.isHighlight?"input-highlight":null,id:this.customId,autocomplete:this.autocomplete,disabled:this.disabled,autoCorrect:this.autocorrect,min:this.min,max:this.max,minLength:this.minlength,maxLength:this.maxlength,multiple:this.multiple,name:this.name,pattern:this.pattern,step:this.step,onInput:this.handleInput,placeholder:this.placeholder,readonly:this.readonly,required:this.required,title:this.el.title,type:this.type,value:this.value},this.inheritedAttributes));this.renderHelpText=()=>{var r;return((r=this.helpText)===null||r===void 0?void 0:r.length)>0?a("p",null,this.helpText):a("slot",{name:"help-text"})};this.renderIconPassword=()=>{const r=this.isPasswordVisible?"fa-solid:eye-slash":"fa-solid:eye";return a("br-icon",{"icon-name":r})};this.togglePasswordVisibility=()=>{const r=this.el.shadowRoot.querySelector("input");this.isPasswordVisible=!this.isPasswordVisible;r.type=this.isPasswordVisible?"text":"password"};this.renderInlineInputContent=()=>{if(this.hasIconSlot){return a("div",{class:"input-content"},this.renderInputWithIcon())}else{return a("div",{class:"input-content"},this.renderInputWithoutIcon())}};this.renderInputContent=()=>this.hasIconSlot?this.renderInputWithIcon():this.renderInputWithoutIcon();this.renderInputWithIcon=()=>a("div",{class:"input-group"},this.renderIconSlot(),this.renderInput(),this.renderButton(),this.renderHelpText());this.renderInputWithoutIcon=()=>[this.renderInput(),this.renderButton(),this.renderHelpText()];this.customId=`br-input-${n()}`;this.type="text";this.autocomplete=undefined;this.density="medium";this.disabled=false;this.isInline=false;this.isHighlight=false;this.state=undefined;this.label=undefined;this.name=undefined;this.placeholder=undefined;this.readonly=false;this.required=false;this.value=undefined;this.helpText=undefined;this.autocorrect="off";this.min=undefined;this.max=undefined;this.minlength=undefined;this.maxlength=undefined;this.multiple=false;this.pattern=undefined;this.step=undefined;this.isPasswordVisible=false;this.hasIconSlot=false;this.hasActionSlot=false}componentWillLoad(){this.hasIconSlot=this.hasSlotContent("icon");this.hasActionSlot=this.hasSlotContent("action");this.inheritedAttributes=o(this.el)}getInputCssClassMap(){return{"br-input":true,"input-button":this.hasActionSlot,small:this.density==="small",large:this.density==="large",medium:this.density==="medium","input-inline":this.isInline,"input-highlight":this.isHighlight,success:this.state==="success",danger:this.state==="danger",info:this.state==="info",warning:this.state==="warning"}}hasSlotContent(r){return this.el.querySelector(`[slot="${r}"]`)!==null}renderIconSlot(){if(this.hasSlotContent("icon")){return a("div",{class:"input-icon"},a("slot",{name:"icon"}))}}renderButton(){if(this.type==="password"){return a("br-button",{class:"button-transform",shape:"circle",density:"small","aria-label":"botão de ação do ícone",onClick:this.togglePasswordVisibility},this.renderIconPassword())}else if(this.hasSlotContent("action")){return a("br-button",{class:"button-transform",shape:"circle",density:"small","aria-label":"botão de ação do ícone"},a("slot",{name:"action"}))}return null}render(){return a(i,{key:"d5e8fec1c09589e9c9e9aa206b3c1669ef1f04f8"},a("div",{key:"431430f8d91e3086b114d4bc7fa3b43e9b5b9eab",class:this.getInputCssClassMap()},this.renderLabel(),this.isInline?this.renderInlineInputContent():this.renderInputContent()))}static get formAssociated(){return true}get el(){return e(this)}};b.style=g;const h='*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}small{font-size:80%}img{border-style:none}button,input,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;-moz-appearance:button;appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}[hidden]{display:none}.d-flex{display:-ms-flexbox !important;display:flex !important}.align-items-center{-ms-flex-align:center !important;align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter) * 0.5);padding-right:calc(var(--grid-gutter) * 0.5);width:100%}.col{-ms-flex:1 0 0%;flex:1 0 0%;min-width:8.3333333333%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.container{--grid-margin:var(--grid-portrait-margin);--grid-maxwidth:var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter:var(--grid-portrait-gutter);display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--grid-gutter) * -0.5);margin-right:calc(var(--grid-gutter) * -0.5)}@media (min-width: 576px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}}@media (min-width: 992px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media (min-width: 1280px){.container{--grid-margin:var(--grid-desktop-margin)}.row{--grid-gutter:var(--grid-desktop-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}}@media (min-width: 1600px){.container{--grid-margin:var(--grid-tv-margin)}.row{--grid-gutter:var(--grid-tv-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mr-2{margin-right:var(--spacing-scale-base) !important}.mr-n2{margin-right:calc(var(--spacing-scale-base) * -1) !important}.mb-3{margin-bottom:var(--spacing-scale-2x) !important}.mr-auto{margin-right:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}.py-3{padding-bottom:var(--spacing-scale-2x) !important;padding-top:var(--spacing-scale-2x) !important}.py-4{padding-bottom:var(--spacing-scale-3x) !important;padding-top:var(--spacing-scale-3x) !important}body{--bg-color:var(--background);--bg-color-rgb:var(--background-rgb);--bg-color-hsl:var(--background-hsl);--font-size:var(--font-size-scale-base);--font-weight:var(--font-weight-regular);--link-color:var(--interactive);--link-color-rgb:var(--interactive-rgb);--link-color-hsl:var(--interactive-hsl);--line-height:var(--font-line-height-medium);--text-color:var(--color);--text-color-rgb:var(--color-rgb);--text-color-hsl:var(--color-hsl);background:var(--bg-color);color:var(--text-color);font-family:var(--font-family-base);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height)}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media (min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset:var(--spacing-scale-half);color:var(--interactive);text-decoration:none}a:focus{outline:none}a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}button{cursor:pointer}img{max-width:100%;vertical-align:middle}ul{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}::-moz-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-webkit-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}:-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !important}.text-primary-default{color:var(--color-primary-default) !important}.bg-support-01{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background:var(--color-support-01) !important}.text-nowrap{white-space:nowrap !important}.text-base{font-size:var(--font-size-scale-base) !important}.highlight{background:var(--status-highlight-background) -webkit-gradient(linear, left top, left bottom, from(var(--status-highlight-overlay)), to(var(--status-highlight-overlay)));background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{-webkit-box-shadow:var(--surface-shadow-sm);box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown .br-item{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--color-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);--item-padding-y:var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-list{background-color:var(--background)}.br-list.horizontal{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.br-list.horizontal>.header{-ms-flex-positive:1;flex-grow:1;width:100%}.br-list.horizontal>.header+.br-divider{border-top:1px solid var(--border-color);width:100%}.br-list.horizontal>.br-item{-ms-flex:1;flex:1;height:auto;min-height:56px;width:auto}.br-list.horizontal>.br-item+.br-divider{border-width:0 1px 0 0;width:1px}.br-list.horizontal[data-toggle]>.br-item,.br-list.horizontal.toggle>.br-item{display:block}.br-list .br-item{text-align:left;width:100%}.br-list .br-item>.content{-ms-flex-align:var(--spacing-vertical-top);align-items:var(--spacing-vertical-top);display:-ms-flexbox;display:flex}.br-list .br-item>.content>.content{-ms-flex:1;flex:1}.br-list .br-item .content:hover button.br-button{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}.br-list .br-item[data-toggle]{cursor:pointer}.br-list .br-item[data-toggle]~.br-list .br-item{padding:var(--spacing-scale-base) var(--spacing-scale-3x)}.br-list .br-list{overflow:hidden;-webkit-transition:all 400ms ease-in-out;transition:all 400ms ease-in-out}.br-list .header{-ms-flex-align:var(--spacing-vertical-center);align-items:var(--spacing-vertical-center);display:-ms-flexbox;display:flex;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-bold);-ms-flex-pack:justify;justify-content:space-between;padding:var(--spacing-scale-base) var(--spacing-scale-2x)}.br-divider{--divider-size:var(--surface-width-sm);border-color:var(--border-color);border-style:solid;border-width:0;border-top-width:var(--divider-size);display:block}.br-divider.content{-ms-flex-align:center;align-items:center;border:0;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.br-divider.content::after,.br-divider.content::before{border-color:var(--border-color);border-style:solid;border-width:0;border-top-width:var(--divider-size);content:"";-ms-flex:1;flex:1}.br-divider.content::after{margin-left:var(--spacing-scale-base)}.br-divider.content::before{margin-right:var(--spacing-scale-base)}.br-divider.vertical{-ms-flex-item-align:stretch;align-self:stretch;border-right-width:var(--divider-size);border-top-width:0}.br-divider.vertical.content{-ms-flex-direction:column;flex-direction:column}.br-divider.vertical.content::after,.br-divider.vertical.content::before{border-right-width:var(--divider-size);border-top-width:0;margin:0}.br-divider.dark-mode{--border-color:var(--pure-0)}:host{display:block}:host .br-list.horizontal ::slotted(br-item){-ms-flex:1;flex:1;height:auto;min-height:56px;width:auto}';const v=h;const p=class{constructor(t){r(this,t);if(t.$hostElement$["s-ei"]){this.elementInternals=t.$hostElement$["s-ei"]}else{this.elementInternals=t.$hostElement$.attachInternals();t.$hostElement$["s-ei"]=this.elementInternals}this.inheritedAttributes={};this.renderHeader=()=>{var r;if(((r=this.header)===null||r===void 0?void 0:r.length)>0||this.hasSlotContent("header")){return a("div",{class:"header"},this.header&&a("div",{class:"title"},this.header),this.hasSlotContent("header")&&a("div",{class:"d-flex"},a("slot",{name:"header"})))}return null};this.header=undefined;this.isHorizontal=false;this.hideHeaderDivider=false}componentWillLoad(){this.inheritedAttributes=o(this.el)}componentDidLoad(){if(this.isHorizontal){const r=Array.from(this.el.querySelectorAll("br-item"));r.forEach((r=>{const t=r.nextElementSibling;if(t===null||t===void 0?void 0:t.classList.contains("br-divider")){const r=t;r.style.borderWidth="0 1px 0 0";r.style.width="1px"}}))}const r=Array.from(this.el.querySelectorAll("br-item"));r.forEach((r=>{r.setAttribute("role","listitem")}))}getCssClassMap(){return{"br-list":true,horizontal:this.isHorizontal}}hasSlotContent(r){return this.el.querySelector(`[slot="${r}"]`)!==null}renderDivider(){if((this.header||this.hasSlotContent("header"))&&!this.hideHeaderDivider){return a("div",{class:"br-divider"})}return null}render(){return a(i,{key:"278e1c81fca5d8789ee8d6c2bf8dfac723135246"},a("div",Object.assign({key:"2772b9ef20bb4537f2de28395261b2eb273dd396",class:this.getCssClassMap()},this.inheritedAttributes,{role:"list"}),this.renderHeader(),this.renderDivider(),a("slot",{key:"5fe5afdd6081641872b63d9a9a9a5909e72d6f0b"})))}static get formAssociated(){return true}get el(){return e(this)}};p.style=v;const u='*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}small{font-size:80%}img{border-style:none}button,input,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;-moz-appearance:button;appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}[hidden]{display:none}.d-flex{display:-ms-flexbox !important;display:flex !important}.align-items-center{-ms-flex-align:center !important;align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter) * 0.5);padding-right:calc(var(--grid-gutter) * 0.5);width:100%}.col{-ms-flex:1 0 0%;flex:1 0 0%;min-width:8.3333333333%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.container{--grid-margin:var(--grid-portrait-margin);--grid-maxwidth:var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter:var(--grid-portrait-gutter);display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--grid-gutter) * -0.5);margin-right:calc(var(--grid-gutter) * -0.5)}@media (min-width: 576px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}}@media (min-width: 992px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media (min-width: 1280px){.container{--grid-margin:var(--grid-desktop-margin)}.row{--grid-gutter:var(--grid-desktop-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}}@media (min-width: 1600px){.container{--grid-margin:var(--grid-tv-margin)}.row{--grid-gutter:var(--grid-tv-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mr-2{margin-right:var(--spacing-scale-base) !important}.mr-n2{margin-right:calc(var(--spacing-scale-base) * -1) !important}.mb-3{margin-bottom:var(--spacing-scale-2x) !important}.mr-auto{margin-right:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}.py-3{padding-bottom:var(--spacing-scale-2x) !important;padding-top:var(--spacing-scale-2x) !important}.py-4{padding-bottom:var(--spacing-scale-3x) !important;padding-top:var(--spacing-scale-3x) !important}body{--bg-color:var(--background);--bg-color-rgb:var(--background-rgb);--bg-color-hsl:var(--background-hsl);--font-size:var(--font-size-scale-base);--font-weight:var(--font-weight-regular);--link-color:var(--interactive);--link-color-rgb:var(--interactive-rgb);--link-color-hsl:var(--interactive-hsl);--line-height:var(--font-line-height-medium);--text-color:var(--color);--text-color-rgb:var(--color-rgb);--text-color-hsl:var(--color-hsl);background:var(--bg-color);color:var(--text-color);font-family:var(--font-family-base);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height)}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media (min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset:var(--spacing-scale-half);color:var(--interactive);text-decoration:none}a:focus{outline:none}a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}button{cursor:pointer}img{max-width:100%;vertical-align:middle}ul{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}::-moz-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-webkit-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}:-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !important}.text-primary-default{color:var(--color-primary-default) !important}.bg-support-01{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background:var(--color-support-01) !important}.text-nowrap{white-space:nowrap !important}.text-base{font-size:var(--font-size-scale-base) !important}.highlight{background:var(--status-highlight-background) -webkit-gradient(linear, left top, left bottom, from(var(--status-highlight-overlay)), to(var(--status-highlight-overlay)));background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{-webkit-box-shadow:var(--surface-shadow-sm);box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown .br-item{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--color-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);--item-padding-y:var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-radio{--radio-size:24px;--radio-bullet-size:16px;--radio-bullet-position:calc((var(--radio-size) - var(--radio-bullet-size)) * 0.5);display:block}.br-radio+.br-radio{margin-top:var(--spacing-scale-base)}.br-radio input{opacity:0;position:absolute}.br-radio input+label{cursor:pointer;display:inline-block;margin-bottom:0;min-height:var(--radio-size);min-width:var(--radio-size);padding-left:calc(var(--spacing-scale-base) + var(--radio-size));position:relative}.br-radio input+label::before{background:var(--background);border:1px solid var(--border-color);border-radius:50%;content:"";height:var(--radio-size);left:0;position:absolute;top:-1px;width:var(--radio-size)}.br-radio input+label:empty{padding:0}.br-radio input+label:empty::before{top:0}.br-radio label{font-weight:var(--font-weight-medium)}.br-radio input:checked+label::after{background:var(--selected);border:7px solid var(--selected);border-radius:50%;content:"";height:var(--radio-bullet-size);left:var(--radio-bullet-position);position:absolute;right:0;top:calc(var(--radio-bullet-position) - 1px);width:var(--radio-bullet-size)}.br-radio input:checked+label:empty::after{top:var(--radio-bullet-position)}.br-radio.valid input+label::before,.br-radio[valid] input+label::before{border-color:var(--success)}.br-radio.invalid input+label::before,.br-radio[invalid] input+label::before{border-color:var(--danger)}.br-radio.small input+label,.br-radio[small] input+label{line-height:var(--spacing-scale-2xh);min-height:var(--spacing-scale-2xh)}.br-radio.small input+label::before,.br-radio[small] input+label::before{height:var(--spacing-scale-2xh);width:var(--spacing-scale-2xh)}.br-radio.small input:checked+label::after,.br-radio[small] input:checked+label::after{border-width:4px;height:10px;width:10px}.br-radio input:invalid+label::before{border-color:var(--danger)}.br-radio input:focus-visible:checked+label::before,.br-radio input:focus-visible+label::before{border-color:var(--focus) !important;-webkit-box-shadow:0 0 0 var(--surface-width-md) var(--focus);box-shadow:0 0 0 var(--surface-width-md) var(--focus);outline:none}.br-radio input:hover:not(:disabled)+label::before{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}.br-radio.dark-mode,.br-radio.dark-mode label{color:var(--color-dark)}:host{display:block}.br-radio.hidden-label label{padding-left:calc(var(--checkbox-size) + var(--surface-width-md) * 2);text-indent:-10000px;white-space:nowrap;width:0}';const f=u;const m=class{constructor(a){r(this,a);this.brDidChange=t(this,"brDidChange",7);if(a.$hostElement$["s-ei"]){this.elementInternals=a.$hostElement$["s-ei"]}else{this.elementInternals=a.$hostElement$.attachInternals();a.$hostElement$["s-ei"]=this.elementInternals}this.inheritedAttributes={};this.onClick=r=>{r.stopPropagation();this.checked=r.target.checked};this.onChange=()=>{this.brDidChange.emit({id:this.customId,name:this.name,value:this.value,checked:this.checked})};this.checked=false;this.disabled=false;this.state=undefined;this.hasHiddenLabel=false;this.name=undefined;this.label=undefined;this.value=undefined;this.customId=`br-input-${n()}`}componentWillLoad(){this.inheritedAttributes=o(this.el)}onBrDidChange(r){if(r.detail.id!==this.customId&&r.detail.name===this.name){this.checked=false}}getCssClassMap(){return{"br-radio":true,valid:this.state==="valid",invalid:this.state==="invalid",disabled:this.disabled,"hidden-label":this.hasHiddenLabel}}render(){return a(i,{key:"3ed11ae0e5323aff8b2704f777edf22bad5def84","aria-disabled":this.disabled?"true":null},a("div",{key:"dc8eae8863c64195594ad5222128901af5abb71f",class:this.getCssClassMap()},a("input",Object.assign({key:"a633acde19c80bbd5a59c5e180b635abb57f8b92",part:"radio-input","aria-label":this.label,type:"radio",id:this.customId,name:this.name,checked:this.checked,disabled:this.disabled,value:this.value,onClick:this.onClick,onChange:this.onChange},this.inheritedAttributes)),a("label",{key:"1cc157f04674556b249d210f06e89eb0069964ba",part:"radio-label",htmlFor:this.customId},a("slot",{key:"3705e625ef30be9265f89cd67fb07c108ff10708"},this.label))))}static get formAssociated(){return true}get el(){return e(this)}};m.style=f;export{c as br_checkbox,b as br_input,p as br_list,m as br_radio};
|
|
6
|
+
//# sourceMappingURL=p-a44ad074.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["checkboxCss","BrCheckboxStyle0","Checkbox","this","inheritedAttributes","handleCheckedChange","event","checked","target","brDidCheckedChange","emit","uuidv4","componentWillLoad","inheritAriaAttributes","el","hasSlotContentDefault","_slotDefault","innerHTML","getCssClassMap","valid","state","invalid","disabled","hasHiddenLabel","toggleChecked","render","h","Host","key","class","Object","assign","type","id","customId","name","indeterminate","value","onChange","htmlFor","label","inputCss","BrInputStyle0","Input","handleInput","valueChange","renderLabel","_a","length","isInline","renderInput","isHighlight","autocomplete","autoCorrect","autocorrect","min","max","minLength","minlength","maxLength","maxlength","multiple","pattern","step","onInput","placeholder","readonly","required","title","renderHelpText","helpText","renderIconPassword","iconName","isPasswordVisible","togglePasswordVisibility","input","shadowRoot","querySelector","renderInlineInputContent","hasIconSlot","renderInputWithIcon","renderInputWithoutIcon","renderInputContent","renderIconSlot","renderButton","hasSlotContent","hasActionSlot","getInputCssClassMap","small","density","large","medium","success","danger","info","warning","slotName","shape","onClick","listCss","BrListStyle0","List","renderHeader","header","componentDidLoad","isHorizontal","slotItems","Array","from","querySelectorAll","forEach","item","nextElement","nextElementSibling","classList","contains","divider","style","borderWidth","width","items","setAttribute","horizontal","renderDivider","hideHeaderDivider","role","radioCss","BrRadioStyle0","Radio","stopPropagation","brDidChange","onBrDidChange","detail","part"],"sources":["src/components/checkbox/checkbox.scss?tag=br-checkbox&encapsulation=shadow","src/components/checkbox/checkbox.tsx","src/components/input/input.scss?tag=br-input&encapsulation=shadow","src/components/input/input.tsx","src/components/list/list.scss?tag=br-list&encapsulation=shadow","src/components/list/list.tsx","src/components/radio/radio.scss?tag=br-radio&encapsulation=shadow","src/components/radio/radio.tsx"],"sourcesContent":["@import \"~@govbr-ds/core/src/components/checkbox/checkbox.scss\";\n\n:host {\n display: block;\n}\n\n","import { AttachInternals, Component, Element, Event, EventEmitter, Host, Method, Prop, State, h } from '@stencil/core'\nimport { v4 as uuidv4 } from 'uuid'\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/checkbox?tab=designer).\n *\n * @slot default - O texto descritivo pode ser passado por propriedade (label) ou por slot.\n */\n@Component({\n tag: 'br-checkbox',\n styleUrl: 'checkbox.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Checkbox {\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: HTMLBrCheckboxElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o estado intermediário do checkbox.\n * Se definido como verdadeiro, o checkbox exibirá um estado intermediário, que é um estado visual que indica que a opção está parcialmente selecionada.\n * Este estado é útil quando o checkbox faz parte de um grupo com seleção parcial.\n */\n @Prop({ reflect: true }) indeterminate: boolean = false\n\n /**\n * Define o estado de seleção do checkbox.\n * Se definido como verdadeiro, o checkbox estará marcado. Caso contrário, estará desmarcado.\n */\n @Prop({ reflect: true, mutable: true }) checked: boolean = false\n\n /**\n * Identificador único do input.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string = `br-input-${uuidv4()}`\n\n /**\n * Desativa o checkbox, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Define se o label associado ao checkbox deve ser oculto.\n * Se definido como verdadeiro, o texto do label será oculto, mas o checkbox ainda estará visível e funcional.\n */\n @Prop({ reflect: true }) hasHiddenLabel: boolean = false\n\n /**\n * Texto descritivo exibido à direita do checkbox.\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 nome do checkbox, que é utilizado para agrupar checkboxes 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 @Prop({ reflect: true }) name!: string\n\n /**\n * Indica a validade do checkbox.\n * Valores possíveis:\n * 'valid': O checkbox é considerado válido.\n * 'invalid': O checkbox é 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'\n\n /**\n * Define o valor associado ao checkbox quando ele faz parte de um formulário nativo (`<form>`).\n * Esse valor é enviado com o formulário quando o checkbox está selecionado.\n * **Nota:** Esta propriedade não deve ser utilizada para determinar se o checkbox está selecionado; para verificar o estado de seleção, use a propriedade `checked`.\n */\n @Prop({ reflect: true }) value: any\n\n @State() _slotDefault: boolean = false\n\n componentWillLoad() {\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n this.hasSlotContentDefault()\n }\n\n private hasSlotContentDefault(): any {\n this._slotDefault = this.el.innerHTML !== ''\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-checkbox': 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 * Disparado depois que o valor do `checked` foi alterado\n */\n @Event() brDidCheckedChange: EventEmitter<boolean>\n private readonly handleCheckedChange = (event: Event) => {\n this.checked = (event.target as HTMLInputElement).checked\n this.brDidCheckedChange.emit(this.checked)\n }\n\n /**\n * Inverte o valor da prop `checked`\n */\n @Method()\n async toggleChecked() {\n this.checked = !this.checked\n this.brDidCheckedChange.emit(this.checked)\n }\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()}>\n <input\n type=\"checkbox\"\n id={this.customId}\n name={this.name}\n checked={this.checked}\n disabled={this.disabled}\n indeterminate={this.indeterminate}\n value={this.value}\n onChange={this.handleCheckedChange}\n {...this.inheritedAttributes}\n />\n <label htmlFor={this.customId}>{this._slotDefault ? <slot></slot> : this.label}</label>\n </div>\n </Host>\n )\n }\n}\n","@import \"../../../../../node_modules/@govbr-ds/core/src/components/input/input.scss\";\n\n:host {\n display: block;\n\n .br-input .input-icon {\n margin-top: 0.1em;\n margin-left: var(--spacing-scale-base);\n }\n\n .br-input .input-icon + input {\n padding-left: calc(var(--input-padding-icon) + 3px);\n }\n}\n\n\n.br-input br-button {\n float: right;\n margin-right: var(--input-button-margin);\n margin-top: calc((var(--input-size) + var(--spacing-scale-half)) * -1);\n padding: 0;\n position: relative;\n}\n\n .button-transform{\n transform: translateY(calc((var(--input-size) - 32px) * 0.5));\n }\n","import { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Prop, State } from '@stencil/core'\nimport { v4 as uuidv4 } from 'uuid'\n\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n *\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/input?tab=designer).\n *\n * @slot action - Botão à direita do input.\n * @slot icon - Ícone à esquerda do input.\n * @slot help-text - Personalização do texto de ajuda.\n */\n@Component({\n tag: 'br-input',\n styleUrl: 'input.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Input {\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: HTMLBrInputElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Identificador único do input.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string = `br-input-${uuidv4()}`\n\n /**\n * Especifica o tipo de entrada do campo. Pode ser um dos seguintes:\n * - 'color': Seletor de cor\n * - 'email': Campo para e-mail\n * - 'hidden': Campo oculto\n * - 'password': Campo para senha\n * - 'range': Controle deslizante\n * - 'search': Campo de pesquisa\n * - 'number': Campo para números\n * - 'tel': Campo para números de telefone\n * - 'text': Campo de texto padrão\n * - 'url': Campo para URLs\n */\n @Prop({ reflect: true }) type:\n | 'color'\n | 'email'\n | 'hidden'\n | 'password'\n | 'range'\n | 'search'\n | 'number'\n | 'tel'\n | 'text'\n | 'file'\n | 'url' = 'text'\n\n /**\n * Controla o comportamento de preenchimento automático do navegador para o input.\n */\n @Prop({ reflect: true }) autocomplete: 'on' | 'off'\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' | 'medium' | 'small' = 'medium'\n\n /**\n * Desativa o input, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Se verdadeiro, o rótulo e o input estarão na mesma linha (layout inline).\n */\n @Prop({ reflect: true }) isInline: boolean = false\n\n /**\n * Se verdadeiro, o input terá destaque visual.\n */\n @Prop({ reflect: true }) isHighlight: boolean = false\n\n /**\n * Define o estado do input\n * Os possíveis valores são:\n * - 'info': Mensagem informativa.\n * - 'warning': Mensagem de aviso.\n * - 'danger': Mensagem de erro ou alerta.\n * - 'success': Mensagem de sucesso.\n * O valor padrão é 'info'.\n */\n @Prop({ reflect: true }) state: 'info' | 'warning' | 'danger' | 'success'\n\n /**\n * Texto exibido como rótulo do input.\n */\n @Prop({ reflect: true }) label: string\n\n /**\n * Nome do input, utilizado para identificação em formulários.\n */\n @Prop({ reflect: true }) name: string\n\n /**\n * Texto exibido dentro do input quando está vazio, fornecendo uma dica ou sugestão ao usuário.\n */\n @Prop({ reflect: true }) placeholder: string\n\n /**\n * Se verdadeiro, o valor do input é exibido, mas não pode ser editado pelo usuário.\n */\n @Prop({ reflect: true }) readonly: boolean = false\n\n /**\n * Se verdadeiro, o input é obrigatório e deve ser preenchido antes que o formulário possa ser enviado.\n */\n @Prop({ reflect: true }) required: boolean = false\n\n /**\n * Valor inicial exibido no input.\n * Pode ser alterado pelo usuário se a propriedade `readonly` não estiver ativa.\n */\n @Prop({ reflect: true, mutable: true }) value: string\n\n /**\n * Texto adicional que fornece ajuda ou informações sobre o input.\n */\n @Prop({ reflect: true }) helpText: string\n\n /**\n * Controla a correção automática do texto.\n */\n @Prop({ reflect: true }) autocorrect: 'off' | 'on' = 'off'\n\n /**\n * Define o valor mínimo para campos de entrada numéricos.\n */\n @Prop({ reflect: true }) min: number\n\n /**\n * Define o valor máximo para campos de entrada numéricos.\n */\n @Prop({ reflect: true }) max: number\n\n /**\n * Define o comprimento mínimo do valor do campo de entrada.\n */\n @Prop({ reflect: true }) minlength: number\n\n /**\n * Define o comprimento máximo do valor do campo de entrada.\n */\n @Prop({ reflect: true }) maxlength: number\n\n /**\n * Se verdadeiro, permite a seleção de múltiplos arquivos.\n */\n @Prop({ reflect: true }) multiple: boolean = false\n\n /**\n * Define o padrão de entrada para validação.\n */\n @Prop({ reflect: true }) pattern: string\n\n /**\n * Define o valor do passo para campos de entrada numéricos.\n */\n @Prop({ reflect: true }) step: number\n\n @State() isPasswordVisible: boolean = false\n\n @State() hasIconSlot: boolean = false\n\n @State() hasActionSlot: boolean = false\n\n componentWillLoad() {\n this.hasIconSlot = this.hasSlotContent('icon')\n this.hasActionSlot = this.hasSlotContent('action')\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n private getInputCssClassMap(): CssClassMap {\n return {\n 'br-input': true,\n 'input-button': this.hasActionSlot,\n small: this.density === 'small',\n large: this.density === 'large',\n medium: this.density === 'medium',\n 'input-inline': this.isInline,\n 'input-highlight': this.isHighlight,\n success: this.state === 'success',\n danger: this.state === 'danger',\n info: this.state === 'info',\n warning: this.state === 'warning',\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n /**\n * Valor atualizado do input\n */\n @Event() valueChange!: EventEmitter<string>\n private readonly handleInput = (event: Event) => {\n this.value = (event.target as HTMLInputElement).value\n this.valueChange.emit(this.value)\n }\n\n private readonly renderLabel = () => {\n if (this.label?.length > 0) {\n if (this.isInline) {\n return (\n <div class=\"input-label\">\n <label class=\"text-nowrap\" htmlFor={this.customId}>\n {this.label}\n </label>\n </div>\n )\n } else {\n return <label htmlFor={this.customId}>{this.label}</label>\n }\n }\n }\n\n private hasSlotContent(slotName: string): boolean {\n return this.el.querySelector(`[slot=\"${slotName}\"]`) !== null\n }\n\n private readonly renderInput = () => {\n return (\n <input\n class={this.isHighlight ? 'input-highlight' : null}\n id={this.customId}\n autocomplete={this.autocomplete}\n disabled={this.disabled}\n autoCorrect={this.autocorrect}\n min={this.min}\n max={this.max}\n minLength={this.minlength}\n maxLength={this.maxlength}\n multiple={this.multiple}\n name={this.name}\n pattern={this.pattern}\n step={this.step}\n onInput={this.handleInput}\n placeholder={this.placeholder}\n readonly={this.readonly}\n required={this.required}\n title={this.el.title}\n type={this.type}\n value={this.value}\n {...this.inheritedAttributes}\n />\n )\n }\n\n private readonly renderHelpText = () => {\n return this.helpText?.length > 0 ? <p>{this.helpText}</p> : <slot name=\"help-text\"></slot>\n }\n\n private readonly renderIconPassword = () => {\n const iconName = this.isPasswordVisible ? 'fa-solid:eye-slash' : 'fa-solid:eye'\n return <br-icon icon-name={iconName}></br-icon>\n }\n\n private readonly togglePasswordVisibility = () => {\n const input = this.el.shadowRoot.querySelector('input')\n this.isPasswordVisible = !this.isPasswordVisible\n input.type = this.isPasswordVisible ? 'text' : 'password'\n }\n\n private renderIconSlot() {\n if (this.hasSlotContent('icon')) {\n return (\n <div class=\"input-icon\">\n <slot name=\"icon\"></slot>\n </div>\n )\n }\n }\n\n private renderButton() {\n if (this.type === 'password') {\n return (\n <br-button\n class=\"button-transform\"\n shape=\"circle\"\n density=\"small\"\n aria-label=\"botão de ação do ícone\"\n onClick={this.togglePasswordVisibility}\n >\n {this.renderIconPassword()}\n </br-button>\n )\n } else if (this.hasSlotContent('action')) {\n return (\n <br-button\n class=\"button-transform\"\n shape=\"circle\"\n density=\"small\"\n aria-label=\"botão de ação do ícone\"\n // onClick={this.onIconAction}\n >\n <slot name=\"action\"></slot>\n </br-button>\n )\n }\n return null\n }\n\n private readonly renderInlineInputContent = () => {\n if (this.hasIconSlot) {\n return <div class=\"input-content\">{this.renderInputWithIcon()}</div>\n } else {\n return <div class=\"input-content\">{this.renderInputWithoutIcon()}</div>\n }\n }\n\n private readonly renderInputContent = () => {\n return this.hasIconSlot ? this.renderInputWithIcon() : this.renderInputWithoutIcon()\n }\n\n private readonly renderInputWithIcon = () => {\n return (\n <div class=\"input-group\">\n {this.renderIconSlot()}\n {this.renderInput()}\n {this.renderButton()}\n {this.renderHelpText()}\n </div>\n )\n }\n\n private readonly renderInputWithoutIcon = () => {\n return [this.renderInput(), this.renderButton(), this.renderHelpText()]\n }\n\n render() {\n return (\n <Host>\n <div class={this.getInputCssClassMap()}>\n {this.renderLabel()}\n\n {this.isInline ? this.renderInlineInputContent() : this.renderInputContent()}\n </div>\n </Host>\n )\n }\n}\n","@import \"../../../../../node_modules/@govbr-ds/core/src/components/list/list.scss\";\n@import \"../../../../../node_modules/@govbr-ds/core/src/components/divider/divider.scss\";\n\n:host {\n display: block;\n\n .br-list.horizontal ::slotted(br-item) {\n flex: 1;\n height: auto;\n min-height: 56px;\n width: auto;\n }\n\n}\n","import { AttachInternals, Component, Element, 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/list?tab=designer).\n *\n * @slot default - Slot padrão para inclusão dos itens da lista.\n * @slot header - Slot nomeado para inclusão de ações relacionadas ao cabeçalho do list (uso de botões por exemplo).\n */\n@Component({\n tag: 'br-list',\n styleUrl: 'list.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class List {\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: HTMLBrListElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o cabeçalho para a lista.\n */\n @Prop({ reflect: true }) header: string\n\n /**\n * Indica se a lista será horizontal. Por padrão, a lista é vertical.\n */\n @Prop({ reflect: true }) isHorizontal: boolean = false\n\n /**\n * Indica que o divider para o título da lista estará oculto.\n */\n @Prop({ reflect: true }) hideHeaderDivider: boolean = false\n\n componentWillLoad() {\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n componentDidLoad() {\n if (this.isHorizontal) {\n const slotItems = Array.from(this.el.querySelectorAll('br-item'))\n\n slotItems.forEach((item) => {\n const nextElement = item.nextElementSibling\n if (nextElement?.classList.contains('br-divider')) {\n const divider = nextElement as HTMLElement\n divider.style.borderWidth = '0 1px 0 0'\n divider.style.width = '1px'\n }\n })\n }\n\n const items = Array.from(this.el.querySelectorAll('br-item'))\n items.forEach((item) => {\n item.setAttribute('role', 'listitem')\n })\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-list': true,\n horizontal: this.isHorizontal,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n private hasSlotContent(slotName: string): boolean {\n return this.el.querySelector(`[slot=\"${slotName}\"]`) !== null\n }\n private readonly renderHeader = () => {\n if (this.header?.length > 0 || this.hasSlotContent('header')) {\n return (\n <div class=\"header\">\n {this.header && <div class=\"title\">{this.header}</div>}\n {this.hasSlotContent('header') && (\n <div class=\"d-flex\">\n <slot name=\"header\"></slot>\n </div>\n )}\n </div>\n )\n }\n return null\n }\n\n private renderDivider() {\n if ((this.header || this.hasSlotContent('header')) && !this.hideHeaderDivider) {\n return <div class=\"br-divider\"></div>\n }\n return null\n }\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()} {...this.inheritedAttributes} role=\"list\">\n {this.renderHeader()}\n {this.renderDivider()}\n <slot></slot>\n </div>\n </Host>\n )\n }\n}\n","@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, Prop } from '@stencil/core'\nimport { v4 as uuidv4 } from 'uuid'\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: HTMLBrRadioElement\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'\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, 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 * Identificador único do input.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string = `br-input-${uuidv4()}`\n\n componentWillLoad() {\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n /**\n * Componente teve seu estado \"checked\" alterado\n */\n @Event({ bubbles: true, composed: true }) brDidChange: EventEmitter\n\n // Ouvinte para o evento \"brDidChange\"\n @Listen('brDidChange', { target: 'window' })\n onBrDidChange(event: CustomEvent) {\n if (event.detail.id !== this.customId && event.detail.name === this.name) {\n this.checked = false\n }\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 * Handler para o event \"click\"\n * @param event Objeto Event\n */\n private readonly onClick = (event: MouseEvent) => {\n event.stopPropagation()\n this.checked = (event.target as HTMLInputElement).checked\n }\n\n /**\n * Handler para o evento \"change\"\n */\n private readonly onChange = () => {\n this.brDidChange.emit({ id: this.customId, name: this.name, value: this.value, checked: this.checked })\n }\n\n render() {\n return (\n <Host aria-disabled={this.disabled ? 'true' : null}>\n <div class={this.getCssClassMap()}>\n <input\n part=\"radio-input\"\n aria-label={this.label}\n type=\"radio\"\n id={this.customId}\n name={this.name}\n checked={this.checked}\n disabled={this.disabled}\n value={this.value}\n onClick={this.onClick}\n onChange={this.onChange}\n {...this.inheritedAttributes}\n />\n <label part=\"radio-label\" htmlFor={this.customId}>\n <slot>{this.label}</slot>\n </label>\n </div>\n </Host>\n )\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Construído com @govbr-ds/webcomponents
|
|
3
|
+
* Padrão Digital de Governo.
|
|
4
|
+
*/
|
|
5
|
+
import{r,c as e,h as t,g as a}from"./p-dbd35139.js";import{i}from"./p-74a4eb38.js";import{v as o}from"./p-d5a8d30c.js";const l='*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}small{font-size:80%}img{border-style:none}button,input,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;-moz-appearance:button;appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}[hidden]{display:none}.d-flex{display:-ms-flexbox !important;display:flex !important}.align-items-center{-ms-flex-align:center !important;align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter) * 0.5);padding-right:calc(var(--grid-gutter) * 0.5);width:100%}.col{-ms-flex:1 0 0%;flex:1 0 0%;min-width:8.3333333333%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.container{--grid-margin:var(--grid-portrait-margin);--grid-maxwidth:var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter:var(--grid-portrait-gutter);display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--grid-gutter) * -0.5);margin-right:calc(var(--grid-gutter) * -0.5)}@media (min-width: 576px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}}@media (min-width: 992px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media (min-width: 1280px){.container{--grid-margin:var(--grid-desktop-margin)}.row{--grid-gutter:var(--grid-desktop-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}}@media (min-width: 1600px){.container{--grid-margin:var(--grid-tv-margin)}.row{--grid-gutter:var(--grid-tv-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mr-2{margin-right:var(--spacing-scale-base) !important}.mr-n2{margin-right:calc(var(--spacing-scale-base) * -1) !important}.mb-3{margin-bottom:var(--spacing-scale-2x) !important}.mr-auto{margin-right:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}.py-3{padding-bottom:var(--spacing-scale-2x) !important;padding-top:var(--spacing-scale-2x) !important}.py-4{padding-bottom:var(--spacing-scale-3x) !important;padding-top:var(--spacing-scale-3x) !important}body{--bg-color:var(--background);--bg-color-rgb:var(--background-rgb);--bg-color-hsl:var(--background-hsl);--font-size:var(--font-size-scale-base);--font-weight:var(--font-weight-regular);--link-color:var(--interactive);--link-color-rgb:var(--interactive-rgb);--link-color-hsl:var(--interactive-hsl);--line-height:var(--font-line-height-medium);--text-color:var(--color);--text-color-rgb:var(--color-rgb);--text-color-hsl:var(--color-hsl);background:var(--bg-color);color:var(--text-color);font-family:var(--font-family-base);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height)}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media (min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset:var(--spacing-scale-half);color:var(--interactive);text-decoration:none}a:focus{outline:none}a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}button{cursor:pointer}img{max-width:100%;vertical-align:middle}ul{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}::-moz-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-webkit-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}:-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !important}.text-primary-default{color:var(--color-primary-default) !important}.bg-support-01{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background:var(--color-support-01) !important}.text-nowrap{white-space:nowrap !important}.text-base{font-size:var(--font-size-scale-base) !important}.highlight{background:var(--status-highlight-background) -webkit-gradient(linear, left top, left bottom, from(var(--status-highlight-overlay)), to(var(--status-highlight-overlay)));background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{-webkit-box-shadow:var(--surface-shadow-sm);box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown .br-item{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--color-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);--item-padding-y:var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-select{--select-divider:1px solid var(--color-secondary-04);--select-shadow:var(--surface-shadow-md);max-width:400px;min-width:100px;position:relative}.br-select .br-input input{padding-right:29px;text-overflow:ellipsis}.br-select .br-input input::after{bottom:0;padding:0 5px;position:absolute;right:0}.br-select .br-list{background:var(--bg-color);-webkit-box-shadow:var(--select-shadow);box-shadow:var(--select-shadow);display:none;margin-top:-2px;max-height:404px;overflow:auto;position:absolute;resize:none;width:100%;z-index:1}.br-select .br-list::-webkit-scrollbar{height:var(--spacing-scale-base);width:var(--spacing-scale-base)}.br-select .br-list::-webkit-scrollbar-track{background:var(--gray-10)}.br-select .br-list::-webkit-scrollbar-thumb{background:var(--gray-30)}.br-select .br-list:hover::-webkit-scrollbar-thumb{background:var(--gray-40)}.br-select .br-list:focus,.br-select .br-list:active{color:var(--color-secondary-09);outline:none}.br-select .br-list:hover::-webkit-scrollbar-thumb{background:var(--color-secondary-07)}.br-select .br-list[expanded]{display:block}.br-select .br-item{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--interactive-light-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);--item-padding-y:var(--spacing-scale-2x)}.br-select .br-item .content{padding:0}.br-select .br-item .br-checkbox,.br-select .br-item .br-radio{--item-padding-x:var(--spacing-scale-2x);--item-padding-y:var(--spacing-scale-2x)}.br-select .br-item .br-checkbox input:hover:not(:disabled)+label::before,.br-select .br-item .br-radio input:hover:not(:disabled)+label::before{background-image:none}.br-select .br-item .br-checkbox input+label,.br-select .br-item .br-radio input+label{padding-left:calc(var(--checkbox-padding) + var(--checkbox-size) + var(--item-padding-x))}.br-select .br-item .br-radio input+label{color:var(--text-color);display:block;height:auto;min-height:0;padding:var(--item-padding)}.br-select .br-item .br-radio input+label::before,.br-select .br-item .br-radio input+label::after{content:none}.br-select .br-item:not(:last-child){border-bottom:var(--select-divider)}.br-select .br-item:not([disabled]){--focus-offset:calc(var(--spacing-scale-half) * -1)}.br-select .br-item:not([disabled]):focus{outline:none}.br-select .br-item:not([disabled]):focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}.br-select .br-item:not([disabled]):not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-select .br-item.selected,.br-select .br-item[selected]{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-select .br-item.selected:focus,.br-select .br-item[selected]:focus{outline:none}.br-select .br-item.selected:focus-visible,.br-select .br-item[selected]:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}.br-select .br-item.selected:not(:disabled):hover,.br-select .br-item[selected]:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-select .br-item.disabled{line-height:calc(var(--font-line-height-high) * 2);padding-left:calc(var(--item-padding) + var(--spacing-scale-base))}.br-select .br-item.highlighted,.br-select .br-item[highlighted]{background-color:var(--gray-2);padding-bottom:var(--spacing-scale-base);padding-top:var(--spacing-scale-base)}.br-select .br-item.highlighted .br-checkbox label,.br-select .br-item.highlighted .br-radio label,.br-select .br-item[highlighted] .br-checkbox label,.br-select .br-item[highlighted] .br-radio label{font-weight:var(--font-weight-semi-bold)}.br-select .br-item.highlighted .br-checkbox:hover,.br-select .br-item.highlighted .br-radio:hover,.br-select .br-item[highlighted] .br-checkbox:hover,.br-select .br-item[highlighted] .br-radio:hover{background:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}.br-select .br-item.highlighted .br-checkbox:hover label,.br-select .br-item.highlighted .br-radio:hover label,.br-select .br-item[highlighted] .br-checkbox:hover label,.br-select .br-item[highlighted] .br-radio:hover label{color:var(--text-color)}.br-select .br-item.highlighted.selected,.br-select .br-item.highlighted[selected],.br-select .br-item[highlighted].selected,.br-select .br-item[highlighted][selected]{background-color:var(--selected)}.br-select.dark-mode .br-input,.br-select.dark-mode .br-input label{--color:var(--color-dark);--focus-color:var(--focus-color-dark)}.br-item{background:var(--background);--item-padding-x:var(--spacing-scale-2x);--item-padding-y:var(--spacing-scale-base);--item-padding:var(--item-padding-y) var(--item-padding-x);--focus-offset:calc(var(--focus-width) * -1);border:0;color:var(--color);display:block;font-weight:var(--font-weight);padding:var(--item-padding);text-align:left;width:100%}.br-item .row{margin-left:calc(-1 * var(--spacing-scale-base));margin-right:calc(-1 * var(--spacing-scale-base))}.br-item .row .col,.br-item .row [class*=col-]{padding-left:var(--spacing-scale-base);padding-right:var(--spacing-scale-base)}.br-item::after{clear:both;content:"";display:block}.br-item[data-toggle]{cursor:pointer}.br-item[data-toggle=selection]:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-item>.br-checkbox:not(.hidden-label),.br-item>.br-radio:not(.hidden-label){margin-bottom:calc(var(--item-padding-y) * -1);margin-left:calc(var(--item-padding-x) * -1);margin-right:calc(var(--item-padding-x) * -1);margin-top:calc(var(--item-padding-y) * -1)}.br-item>.br-checkbox:not(.hidden-label) input+label,.br-item>.br-radio:not(.hidden-label) input+label{padding-bottom:var(--item-padding-y);padding-top:var(--item-padding-y);top:1px;width:100%}.br-item>.br-checkbox:not(.hidden-label) input+label::before,.br-item>.br-radio:not(.hidden-label) input+label::before{left:var(--item-padding-x);top:calc(var(--item-padding-y) - 1px)}.br-item>.br-checkbox:not(.hidden-label) input+label:empty,.br-item>.br-radio:not(.hidden-label) input+label:empty{left:0;top:1px}.br-item>.br-checkbox:not(.hidden-label) input:hover:not(:disabled)+label::before,.br-item>.br-radio:not(.hidden-label) input:hover:not(:disabled)+label::before{background-image:none}.br-item>.br-checkbox input:not(:indeterminate)+label{min-height:calc(var(--checkbox-size) + var(--item-padding-y) * 2)}.br-item>.br-checkbox input:not(:indeterminate)+label:not(:empty){padding-left:calc(var(--checkbox-padding) + var(--checkbox-size) + var(--item-padding-x))}.br-item>.br-checkbox input:not(:indeterminate)+label::after{left:calc(var(--item-padding-x) + 8px);top:calc(var(--item-padding-y) + 4px)}.br-item>.br-checkbox input:not(:indeterminate)+label:empty{min-height:var(--checkbox-size)}.br-item>.br-checkbox input:not(:indeterminate)+label:empty::after{left:8px;top:4px}.br-item .br-radio input+label{min-height:calc(var(--radio-size) + var(--item-padding-y) * 2);padding-left:calc(var(--spacing-scale-base) + var(--radio-size) + var(--item-padding-x))}.br-item .br-radio input+label::after{left:calc(var(--item-padding-x) + var(--radio-bullet-position));top:calc(var(--item-padding-y) + var(--radio-bullet-position) - 1px)}.br-item .br-radio input+label:empty{min-height:var(--radio-size)}.br-item .br-radio input+label:empty::after{left:var(--radio-bullet-position);top:var(--radio-bullet-position)}.br-item.highlight{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background-color:var(--selected)}.br-item.active{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background-color:var(--active);color:var(--color)}.br-item.dark-mode{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-item.dark-mode.active{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--active-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);background-color:var(--background-light);color:var(--active)}.br-item[data-toggle]:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-item .content{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex}.br-item [class*=fa-]{height:16px;width:14px !important}a.br-item{color:var(--interactive)}a.br-item:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a.br-item:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}button.br-item{background-color:transparent;color:var(--color)}button.br-item:focus{outline:none}button.br-item:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}button.br-item:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}button.br-item:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--pressed))), to(rgba(var(--color-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--color-rgb), var(--pressed)), rgba(var(--color-rgb), var(--pressed)))}:host{display:block}:host .br-select br-list{background-color:var(--bg-color);-webkit-box-shadow:var(--select-shadow);box-shadow:var(--select-shadow);margin-top:-2px;max-height:404px;overflow:auto;position:absolute;resize:none;width:100%;z-index:1}:host .br-select br-list::-webkit-scrollbar{height:var(--spacing-scale-base);width:var(--spacing-scale-base)}:host .br-select br-list::-webkit-scrollbar-track{background:var(--gray-10)}:host .br-select br-list::-webkit-scrollbar-thumb{background:var(--gray-30)}:host .br-select br-list:hover::-webkit-scrollbar-thumb{background:var(--gray-40)}:host .br-select br-list:focus,:host .br-select br-list:active{color:var(--color-secondary-09);outline:none}:host .br-select br-list:hover::-webkit-scrollbar-thumb{background:var(--color-secondary-07)}:host .br-select br-list .br-item br-radio::part(radio-input){visibility:hidden;height:0;width:0}:host .br-select br-list .br-item br-radio::part(radio-label){padding-left:var(--spacing-scale-base);position:relative}:host .br-select br-list .br-item br-radio::part(radio-label)::before,:host .br-select br-list .br-item br-radio::part(radio-label)::after{display:none}';const s=l;const c=class{constructor(t){r(this,t);this.brDidSelectChange=e(this,"brDidSelectChange",7);if(t.$hostElement$["s-ei"]){this.elementInternals=t.$hostElement$["s-ei"]}else{this.elementInternals=t.$hostElement$.attachInternals();t.$hostElement$["s-ei"]=this.elementInternals}this.idDefault=`${o()}`;this.handleClickOutside=r=>{const e=r.target;if(this.isExpanded&&!this.el.contains(e)){this.isExpanded=false}};this.inheritedAttributes={};this.label=undefined;this.placeholder="";this.isMultiple=false;this.options="[]";this.selectAllLabel="Selecionar todos";this.unselectAllLabel="Desselecionar todos";this.showSearchIcon=false;this.isOpen=false;this.customId=undefined;this.parsedOptions=[];this.inputValue="";this.isAllSelected=false;this.isExpanded=false;this.focusedIndex=-1}synchronizeSelect(){try{const r=JSON.parse(this.options);this.parsedOptions=this.sanitizeOptions(r);this.updateSelectedOptions();this.updateSelectedAllState();this.emitSelectedOptions()}catch(r){console.error("Erro ao processar as opções do select:",r);this.parsedOptions=[]}}componentWillLoad(){this.isExpanded=this.isOpen;this.inheritedAttributes=i(this.el);this.synchronizeSelect()}componentDidLoad(){document.addEventListener("click",this.handleClickOutside)}disconnectedCallback(){document.addEventListener("click",this.handleClickOutside)}sanitizeOptions(r){const e=[];const t=[];r.forEach((r=>{if(typeof r.label==="string"&&r.label.trim()!==""){e.push({label:r.label.trim(),value:typeof r.value==="string"?r.value:"",selected:typeof r.selected==="boolean"?r.selected:false})}else{t.push(r)}}));if(t.length>0){console.warn("Opções inválidas descartadas:",t)}return e}handleKeydownOnInput(r){switch(r.key){case"Tab":this.closeSelect();break;case"ArrowDown":r.preventDefault();if(!this.isExpanded){this.openSelect()}this.focusItemInDirection("next");break;case"ArrowUp":r.preventDefault();if(!this.isExpanded){this.openSelect()}this.focusItemInDirection("previous");break;case"Escape":this.closeSelect();this.resetFocus();break;case"Enter":this.toggleOpen();break}}handleKeydownOnList(r){r.preventDefault();switch(r.key){case"Tab":case"Escape":this.resetFocus();break;case"ArrowUp":this.focusItemInDirection("previous");break;case"ArrowDown":this.focusItemInDirection("next");break}}handleKeydownOnItem(r,e){if(r.key==="Enter"||r.key===" "){r.preventDefault();this.handleSelection(e)}else if(r.key==="Escape"){this.closeSelect()}}handleSelectAllKeyDown(r){if(r.key==="Enter"||r.key===" "){r.preventDefault();this.toggleSelectAll()}else if(r.key==="Escape"){r.preventDefault();this.closeSelect()}}resetFocus(){const r=this.el.shadowRoot.querySelector("br-input");r.focus()}focusItemInDirection(r){let e=this.parsedOptions.length;if(this.isMultiple)e+=1;this.focusedIndex=r==="next"?(this.focusedIndex+1)%e:(this.focusedIndex-1+e)%e;this.focusItem(this.focusedIndex)}focusItem(r){const e=this.el.shadowRoot.querySelectorAll(".br-item");const t=e[r];t.focus()}openSelect(){this.isExpanded=true}closeSelect(){this.isExpanded=false}handleSelection(r){if(r<0||r>=this.parsedOptions.length){return}if(this.isMultiple){this.parsedOptions[r].selected=!this.parsedOptions[r].selected}else{this.parsedOptions.forEach((r=>r.selected=false));this.parsedOptions[r].selected=true;this.isExpanded=false}this.updateSelectedOptions();this.emitSelectedOptions();this.updateSelectedAllState()}updateSelectedOptions(){this.inputValue=this.getStringValue(this.parsedOptions.filter((r=>r.selected)))}getStringValue(r){if(r.length>0){const e=r[0].label||r[0].value;if(this.isMultiple){const t=r.length>1?` + (${r.length-1})`:"";return`${e}${t}`}else{return e}}return""}emitSelectedOptions(){const r=this.parsedOptions.filter((r=>r.selected===true)).map((r=>{var e;return(e=r.label)!==null&&e!==void 0?e:r.value}));this.brDidSelectChange.emit(r)}updateSelectedAllState(){const r=this.parsedOptions.every((r=>r.selected));this.isAllSelected=r}toggleSelectAll(){if(this.isAllSelected){this.parsedOptions.forEach((r=>r.selected=false));this.isAllSelected=false}else{this.parsedOptions.forEach((r=>r.selected=true));this.isAllSelected=true}this.updateSelectedOptions();this.emitSelectedOptions()}renderInput(){return t("br-input",{value:this.inputValue,label:this.label,placeholder:this.placeholder,readonly:true,onClick:()=>this.toggleOpen(),onKeyDown:r=>this.handleKeydownOnInput(r)},this.showSearchIcon&&t("br-icon",{slot:"icon","icon-name":"fa-solid:search","aria-hidden":"true"}),t("br-icon",{slot:"action","icon-name":this.isExpanded?"fa-solid:angle-up":"fa-solid:angle-down",height:"16","aria-hidden":"true"}))}renderSelectAllCheckbox(){return t("div",{class:`br-item highlighted ${this.isAllSelected?"selected":""}`,"data-all":"data-all",tabindex:"-1",role:"option","aria-selected":this.isAllSelected,onKeyDown:r=>this.handleSelectAllKeyDown(r)},t("br-checkbox",{name:`checkbox-${this.idDefault}`,label:this.isAllSelected?this.unselectAllLabel:this.selectAllLabel,checked:this.isAllSelected,onBrDidCheckedChange:()=>this.toggleSelectAll()}))}renderOptions(){return this.parsedOptions.map(((r,e)=>t("div",{class:`br-item ${r.selected?"selected":""}`,key:`${r.label}-${this.idDefault}`,role:"option",tabindex:this.focusedIndex===e?0:-1,"aria-selected":r.selected,onClick:()=>this.handleSelection(e),onKeyDown:r=>this.handleKeydownOnItem(r,e)},this.isMultiple?t("br-checkbox",{name:`checkbox-${e}-${this.idDefault}`,label:r.label||r.value,checked:r.selected===true,onBrDidCheckedChange:()=>this.handleSelection(e)}):t("br-radio",{exportparts:"radio-input, radio-label",name:`radio-${e}-${this.idDefault}`,label:r.label||r.value,checked:r.selected===true,onBrDidChange:()=>this.handleSelection(e)}))))}getComputedId(){var r;return((r=this.customId)===null||r===void 0?void 0:r.length)>0?this.customId:`br-select-${this.idDefault}`}async toggleOpen(){this.isExpanded=!this.isExpanded}getCssClassMap(){return{"br-select":true}}render(){return t("div",Object.assign({key:"a060e050a8b1ae04df17457118c5061efaf09853",class:this.getCssClassMap()},this.inheritedAttributes,{id:this.getComputedId()}),this.renderInput(),this.isExpanded&&t("br-list",{key:"bca27704661b44ca08de6183f2406bda4d5254a9",tabindex:-1,onKeyDown:r=>this.handleKeydownOnList(r)},this.isMultiple&&this.renderSelectAllCheckbox(),this.renderOptions()))}static get formAssociated(){return true}get el(){return a(this)}static get watchers(){return{options:["synchronizeSelect"]}}};c.style=s;export{c as br_select};
|
|
6
|
+
//# sourceMappingURL=p-aaa17439.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["selectCss","BrSelectStyle0","Select","this","idDefault","uuidv4","handleClickOutside","event","target","isExpanded","el","contains","inheritedAttributes","synchronizeSelect","rawOptions","JSON","parse","options","parsedOptions","sanitizeOptions","updateSelectedOptions","updateSelectedAllState","emitSelectedOptions","error","console","componentWillLoad","isOpen","inheritAriaAttributes","componentDidLoad","document","addEventListener","disconnectedCallback","validOptions","invalidOptions","forEach","option","label","trim","push","value","selected","length","warn","handleKeydownOnInput","key","closeSelect","preventDefault","openSelect","focusItemInDirection","resetFocus","toggleOpen","handleKeydownOnList","handleKeydownOnItem","index","handleSelection","handleSelectAllKeyDown","toggleSelectAll","input","shadowRoot","querySelector","focus","direction","itemCount","isMultiple","focusedIndex","focusItem","items","querySelectorAll","item","inputValue","getStringValue","filter","firstSelected","howManySelected","selectedOptions","map","_a","brDidSelectChange","emit","allSelected","every","isAllSelected","renderInput","h","placeholder","readonly","onClick","onKeyDown","showSearchIcon","slot","height","renderSelectAllCheckbox","class","tabindex","role","name","unselectAllLabel","selectAllLabel","checked","onBrDidCheckedChange","renderOptions","exportparts","onBrDidChange","getComputedId","customId","getCssClassMap","render","Object","assign","id"],"sources":["src/components/select/select.scss?tag=br-select&encapsulation=shadow","src/components/select/select.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/select/select.scss\";\n@import \"../../../../../node_modules/@govbr-ds/core/src/components/item/item.scss\";\n\n:host {\n display: block;\n\n .br-select br-list {\n background-color: var(--bg-color);\n box-shadow: var(--select-shadow);\n margin-top: -2px;\n max-height: 404px;\n overflow: auto;\n position: absolute;\n resize: none;\n width: 100%;\n z-index: 1;\n\n @include scrollbar;\n\n &:focus,\n &:active {\n color: var(--color-secondary-09);\n outline: none;\n }\n\n &:hover {\n &::-webkit-scrollbar-thumb {\n background: var(--color-secondary-07);\n }\n }\n\n\n .br-item br-radio::part(radio-input) {\n visibility: hidden;\n height: 0;\n width: 0;\n }\n\n .br-item br-radio::part(radio-label) {\n padding-left: var(--spacing-scale-base);\n position: relative;\n\n &::before,\n &::after {\n display: none;\n }\n }\n }\n}\n","import { AttachInternals, Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { v4 as uuidv4 } from 'uuid';\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces';\n\n@Component({\n tag: 'br-select',\n styleUrl: 'select.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Select {\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: HTMLBrSelectElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Rótulo que indica o tipo de informação que deve ser selecionada.\n */\n @Prop({ reflect: true }) label: string;\n\n /**\n * Texto auxiliar exibido antes de uma seleção.\n */\n @Prop({ reflect: true }) placeholder: string = '';\n\n /**\n * Habilita o modo múltiplo para selecionar várias opções.\n */\n @Prop({ reflect: true }) isMultiple: boolean = false;\n\n /**\n * JSON contendo as opções do select.\n */\n @Prop({ reflect: true }) options: string = '[]';\n\n /**\n * Rótulo para selecionar todas as opções.\n */\n @Prop({ reflect: true }) selectAllLabel: string = 'Selecionar todos';\n\n /**\n * Rótulo para desmarcar todas as opções.\n */\n @Prop({ reflect: true }) unselectAllLabel: string = 'Desselecionar todos';\n\n /**\n * Exibe o ícone de busca no campo de entrada.\n */\n @Prop({ reflect: true }) showSearchIcon: boolean = false;\n\n /**\n * Indica se a listagem de itens do select está expandida\n */\n @Prop({ reflect: true }) isOpen: boolean = false;\n\n /**\n * Especifica o ID do componente.\n * Se não for fornecido, o ID será gerado automaticamente e de forma aleatória\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string\n\n /**\n * Contém o id gerado aleatoriamente\n */\n private readonly idDefault = `${uuidv4()}`\n\n // Representa as opções do select disponíveis para renderização.\n // Cada opção contém `label`, `value` e o estado de seleção (`selected`).\n @State() parsedOptions: { label: string; value: string; selected: boolean }[] = [];\n\n // Valor exibido no input, refletindo as opções selecionadas.\n @State() inputValue: string = '';\n\n // Indica se todas as opções estão selecionadas. Comportamento do checkbox \"Selecionar Todos\".\n @State() isAllSelected: boolean = false;\n\n // Controla se a lista de opções do select está expandida (aberta) ou colapsada (fechada).\n @State() isExpanded: boolean = false;\n\n // Armazena o índice do item atualmente focado, usado para navegação por teclado.\n @State() focusedIndex: number = -1;\n\n /**\n * Evento emitido sempre que houver atualização nos itens selecionados.\n */\n @Event() brDidSelectChange: EventEmitter;\n\n @Watch('options')\n synchronizeSelect() {\n try {\n const rawOptions = JSON.parse(this.options);\n this.parsedOptions = this.sanitizeOptions(rawOptions);\n this.updateSelectedOptions();\n this.updateSelectedAllState();\n this.emitSelectedOptions();\n } catch (error) {\n console.error('Erro ao processar as opções do select:', error);\n this.parsedOptions = [];\n }\n }\n\n componentWillLoad() {\n this.isExpanded = this.isOpen;\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n this.synchronizeSelect();\n }\n\n componentDidLoad() {\n document.addEventListener('click', this.handleClickOutside);\n }\n\n disconnectedCallback() {\n document.addEventListener('click', this.handleClickOutside);\n }\n\n private sanitizeOptions(rawOptions: any[]): { label: string; value: string; selected: boolean }[] {\n const validOptions = [];\n const invalidOptions = [];\n\n rawOptions.forEach(option => {\n if (typeof option.label === 'string' && option.label.trim() !== '') {\n validOptions.push({\n label: option.label.trim(),\n value: typeof option.value === 'string' ? option.value : '',\n selected: typeof option.selected === 'boolean' ? option.selected : false,\n });\n } else {\n invalidOptions.push(option);\n }\n });\n\n if (invalidOptions.length > 0) {\n console.warn('Opções inválidas descartadas:', invalidOptions);\n }\n\n return validOptions;\n }\n\n private readonly handleClickOutside = (event: MouseEvent) => {\n const target = event.target as HTMLElement;\n if (this.isExpanded && !this.el.contains(target)) {\n this.isExpanded = false;\n }\n }\n\n private handleKeydownOnInput(event: KeyboardEvent) {\n switch (event.key) {\n case 'Tab':\n this.closeSelect();\n break;\n case 'ArrowDown':\n event.preventDefault();\n if (!this.isExpanded) {\n this.openSelect();\n }\n this.focusItemInDirection('next');\n break;\n case 'ArrowUp':\n event.preventDefault();\n if (!this.isExpanded) {\n this.openSelect();\n }\n this.focusItemInDirection('previous');\n break;\n case 'Escape':\n this.closeSelect();\n this.resetFocus();\n break;\n case 'Enter':\n this.toggleOpen();\n break;\n default:\n }\n }\n\n private handleKeydownOnList(event: KeyboardEvent) {\n event.preventDefault();\n switch (event.key) {\n case 'Tab':\n case 'Escape':\n this.resetFocus();\n break;\n case 'ArrowUp':\n this.focusItemInDirection('previous');\n break;\n case 'ArrowDown':\n this.focusItemInDirection('next');\n break;\n default:\n break;\n }\n }\n\n private handleKeydownOnItem(event: KeyboardEvent, index: number) {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.handleSelection(index); // Garante que o índice correto será usado\n } else if (event.key === 'Escape') {\n this.closeSelect();\n }\n }\n\n private handleSelectAllKeyDown(event: KeyboardEvent) {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.toggleSelectAll();\n } else if (event.key === 'Escape') {\n event.preventDefault();\n this.closeSelect();\n }\n }\n\n private resetFocus() {\n const input = this.el.shadowRoot.querySelector('br-input') as HTMLElement;\n input.focus();\n }\n\n private focusItemInDirection(direction: 'next' | 'previous') {\n let itemCount = this.parsedOptions.length;\n if (this.isMultiple) itemCount += 1;\n\n this.focusedIndex = direction === 'next'\n ? (this.focusedIndex + 1) % itemCount\n : (this.focusedIndex - 1 + itemCount) % itemCount;\n\n this.focusItem(this.focusedIndex);\n }\n\n private focusItem(index: number) {\n const items = this.el.shadowRoot.querySelectorAll('.br-item');\n const item = items[index] as HTMLElement;\n item.focus();\n }\n\n private openSelect() {\n this.isExpanded = true;\n }\n\n private closeSelect() {\n this.isExpanded = false;\n }\n\n\n private handleSelection(index: number) {\n if (index < 0 || index >= this.parsedOptions.length) {\n return;\n }\n\n if (this.isMultiple) {\n this.parsedOptions[index].selected = !this.parsedOptions[index].selected;\n } else {\n this.parsedOptions.forEach(option => option.selected = false);\n this.parsedOptions[index].selected = true;\n this.isExpanded = false;\n }\n this.updateSelectedOptions();\n this.emitSelectedOptions();\n this.updateSelectedAllState();\n }\n\n private updateSelectedOptions() {\n this.inputValue = this.getStringValue(this.parsedOptions.filter(option => option.selected));\n }\n\n private getStringValue(options) {\n if (options.length > 0) {\n const firstSelected = options[0].label || options[0].value;\n if (this.isMultiple) {\n const howManySelected = options.length > 1 ? ` + (${options.length - 1})` : '';\n return `${firstSelected}${howManySelected}`;\n } else {\n return firstSelected;\n }\n }\n return '';\n }\n\n private emitSelectedOptions() {\n const selectedOptions = this.parsedOptions\n .filter((option) => option.selected === true)\n .map((option) => option.label ?? option.value);\n\n this.brDidSelectChange.emit(selectedOptions);\n }\n\n private updateSelectedAllState() {\n const allSelected = this.parsedOptions.every(option => option.selected);\n this.isAllSelected = allSelected;\n }\n\n private toggleSelectAll() {\n if (this.isAllSelected) {\n this.parsedOptions.forEach(option => option.selected = false);\n this.isAllSelected = false;\n } else {\n this.parsedOptions.forEach(option => option.selected = true);\n this.isAllSelected = true;\n }\n\n this.updateSelectedOptions();\n this.emitSelectedOptions();\n }\n\n private renderInput() {\n return (\n <br-input\n value={this.inputValue}\n label={this.label}\n placeholder={this.placeholder}\n readonly\n onClick={() => this.toggleOpen()}\n onKeyDown={(event) => this.handleKeydownOnInput(event)}\n >\n {this.showSearchIcon && <br-icon slot=\"icon\" icon-name=\"fa-solid:search\" aria-hidden=\"true\"></br-icon>}\n <br-icon slot=\"action\"\n icon-name={this.isExpanded ? 'fa-solid:angle-up' : 'fa-solid:angle-down'}\n height=\"16\"\n aria-hidden=\"true\">\n </br-icon>\n </br-input>\n );\n }\n\n private renderSelectAllCheckbox() {\n return (\n <div class={`br-item highlighted ${this.isAllSelected ? 'selected' : ''}`}\n data-all=\"data-all\"\n tabindex=\"-1\"\n role=\"option\"\n aria-selected={this.isAllSelected}\n onKeyDown={(event) => this.handleSelectAllKeyDown(event)}\n >\n <br-checkbox\n name={`checkbox-${this.idDefault}`}\n label={this.isAllSelected ? this.unselectAllLabel : this.selectAllLabel}\n checked={this.isAllSelected}\n onBrDidCheckedChange={() => this.toggleSelectAll()}\n ></br-checkbox>\n </div>\n );\n }\n\n private renderOptions() {\n return (\n this.parsedOptions.map((option, index) => (\n <div\n class={`br-item ${option.selected ? 'selected' : ''}`}\n key={`${option.label}-${this.idDefault}`}\n role=\"option\"\n tabindex={this.focusedIndex === index ? 0 : -1}\n aria-selected={option.selected}\n onClick={() => this.handleSelection(index)}\n onKeyDown={(event) => this.handleKeydownOnItem(event, index)}\n >\n {this.isMultiple ?\n (\n <br-checkbox\n name={`checkbox-${index}-${this.idDefault}`}\n label={option.label || option.value}\n checked={option.selected === true}\n onBrDidCheckedChange={() => this.handleSelection(index)}\n />\n )\n :\n (<br-radio\n exportparts=\"radio-input, radio-label\"\n name={`radio-${index}-${this.idDefault}`}\n label={option.label || option.value}\n checked={option.selected === true}\n onBrDidChange={() => this.handleSelection(index)}\n />)\n }\n </div>\n ))\n );\n }\n\n /**\n * Determina um id para o radio.\n */\n private getComputedId() {\n return this.customId?.length > 0 ? this.customId : `br-select-${this.idDefault}`;\n }\n\n /**\n * Inverte o valor da prop `isOpen`\n */\n @Method()\n async toggleOpen() {\n this.isExpanded = !this.isExpanded\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-select': true,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n render() {\n return (\n <div class={this.getCssClassMap()} {...this.inheritedAttributes} id={this.getComputedId()}>\n {this.renderInput()}\n\n {this.isExpanded &&\n <br-list tabindex={-1} onKeyDown={(event) => this.handleKeydownOnList(event)}>\n {this.isMultiple && (this.renderSelectAllCheckbox())}\n {this.renderOptions()}\n </br-list>\n }\n </div>\n );\n }\n}\n\n"],"mappings":"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","ignoreList":[]}
|