@govbr-ds/webcomponents 2.0.0-next.13 → 2.0.0-next.15
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 +6 -6
- package/dist/cjs/br-avatar.cjs.entry.js.map +1 -1
- package/dist/cjs/br-button_2.cjs.entry.js +20 -21
- package/dist/cjs/br-button_2.cjs.entry.js.map +1 -1
- package/dist/cjs/br-checkbox.cjs.entry.js +9 -8
- package/dist/cjs/br-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/br-dropdown.cjs.entry.js +142 -0
- package/dist/cjs/br-dropdown.cjs.entry.js.map +1 -0
- package/dist/cjs/br-input.cjs.entry.js +13 -12
- package/dist/cjs/br-input.cjs.entry.js.map +1 -1
- package/dist/cjs/br-item.cjs.entry.js +24 -24
- package/dist/cjs/br-item.cjs.entry.js.map +1 -1
- package/dist/cjs/br-list.cjs.entry.js +8 -7
- package/dist/cjs/br-list.cjs.entry.js.map +1 -1
- package/dist/cjs/br-loading.cjs.entry.js +3 -3
- package/dist/cjs/br-loading.cjs.entry.js.map +1 -1
- package/dist/cjs/br-message.cjs.entry.js +8 -7
- package/dist/cjs/br-message.cjs.entry.js.map +1 -1
- package/dist/cjs/br-radio.cjs.entry.js +27 -29
- package/dist/cjs/br-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/br-switch.cjs.entry.js +9 -8
- package/dist/cjs/br-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/br-textarea.cjs.entry.js +158 -0
- package/dist/cjs/br-textarea.cjs.entry.js.map +1 -0
- package/dist/cjs/{index-ecdd4399.js → index-fb4e9eaf.js} +37 -3
- package/dist/cjs/index-fb4e9eaf.js.map +1 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/webcomponents.cjs.js +2 -2
- package/dist/cjs/webcomponents.cjs.js.map +1 -1
- package/dist/collection/collection-manifest.json +3 -1
- package/dist/collection/components/avatar/avatar.css +112 -1
- package/dist/collection/components/avatar/avatar.js +4 -4
- package/dist/collection/components/avatar/avatar.js.map +1 -1
- package/dist/collection/components/button/button.css +117 -1
- package/dist/collection/components/button/button.js +15 -34
- package/dist/collection/components/button/button.js.map +1 -1
- package/dist/collection/components/checkbox/checkbox.css +103 -1
- package/dist/collection/components/checkbox/checkbox.js +9 -8
- package/dist/collection/components/checkbox/checkbox.js.map +1 -1
- package/dist/collection/components/dropdown/dropdown.css +471 -0
- package/dist/collection/components/dropdown/dropdown.js +426 -0
- package/dist/collection/components/dropdown/dropdown.js.map +1 -0
- package/dist/collection/components/icon/icon.css +103 -1
- package/dist/collection/components/icon/icon.js +4 -4
- package/dist/collection/components/icon/icon.js.map +1 -1
- package/dist/collection/components/input/input.css +103 -1
- package/dist/collection/components/input/input.js +11 -28
- package/dist/collection/components/input/input.js.map +1 -1
- package/dist/collection/components/item/item.css +103 -1
- package/dist/collection/components/item/item.js +25 -25
- package/dist/collection/components/item/item.js.map +1 -1
- package/dist/collection/components/list/list.css +103 -1
- package/dist/collection/components/list/list.js +13 -12
- package/dist/collection/components/list/list.js.map +1 -1
- package/dist/collection/components/loading/loading.css +117 -1
- package/dist/collection/components/loading/loading.js +1 -1
- package/dist/collection/components/loading/loading.js.map +1 -1
- package/dist/collection/components/message/message.css +103 -1
- package/dist/collection/components/message/message.js +6 -5
- package/dist/collection/components/message/message.js.map +1 -1
- package/dist/collection/components/radio/radio.css +103 -1
- package/dist/collection/components/radio/radio.js +26 -74
- package/dist/collection/components/radio/radio.js.map +1 -1
- package/dist/collection/components/switch/switch.css +103 -1
- package/dist/collection/components/switch/switch.js +9 -8
- package/dist/collection/components/switch/switch.js.map +1 -1
- package/dist/collection/components/textarea/textarea.css +522 -0
- package/dist/collection/components/textarea/textarea.js +566 -0
- package/dist/collection/components/textarea/textarea.js.map +1 -0
- package/dist/collection/pages/dropdown/dropdown.js +18 -0
- package/dist/collection/pages/textarea/textarea.js +19 -0
- package/dist/collection/scripts/menu.js +50 -48
- package/dist/components/br-avatar.js +7 -7
- package/dist/components/br-avatar.js.map +1 -1
- package/dist/components/br-button.js +1 -1
- package/dist/components/br-checkbox.js +11 -10
- package/dist/components/br-checkbox.js.map +1 -1
- package/dist/components/br-dropdown.d.ts +11 -0
- package/dist/components/br-dropdown.js +156 -0
- package/dist/components/br-dropdown.js.map +1 -0
- package/dist/components/br-icon.js +1 -1
- package/dist/components/br-input.js +15 -15
- package/dist/components/br-input.js.map +1 -1
- package/dist/components/br-item.js +27 -27
- package/dist/components/br-item.js.map +1 -1
- package/dist/components/br-list.js +10 -9
- package/dist/components/br-list.js.map +1 -1
- package/dist/components/br-loading.js +3 -3
- package/dist/components/br-loading.js.map +1 -1
- package/dist/components/br-message.js +10 -9
- package/dist/components/br-message.js.map +1 -1
- package/dist/components/br-radio.js +29 -33
- package/dist/components/br-radio.js.map +1 -1
- package/dist/components/br-switch.js +11 -10
- package/dist/components/br-switch.js.map +1 -1
- package/dist/components/br-textarea.d.ts +11 -0
- package/dist/components/br-textarea.js +181 -0
- package/dist/components/br-textarea.js.map +1 -0
- package/dist/components/index.d.ts +4 -0
- package/dist/components/index.js +3 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/{p-4c4ab942.js → p-698e7a18.js} +27 -3
- package/dist/components/p-698e7a18.js.map +1 -0
- package/dist/components/{p-ceec3589.js → p-af0dfebc.js} +6 -6
- package/dist/components/{p-ceec3589.js.map → p-af0dfebc.js.map} +1 -1
- package/dist/components/p-baa2948a.js +138 -0
- package/dist/components/p-baa2948a.js.map +1 -0
- package/dist/esm/br-avatar.entry.js +6 -6
- package/dist/esm/br-avatar.entry.js.map +1 -1
- package/dist/esm/br-button_2.entry.js +20 -21
- package/dist/esm/br-button_2.entry.js.map +1 -1
- package/dist/esm/br-checkbox.entry.js +9 -8
- package/dist/esm/br-checkbox.entry.js.map +1 -1
- package/dist/esm/br-dropdown.entry.js +138 -0
- package/dist/esm/br-dropdown.entry.js.map +1 -0
- package/dist/esm/br-input.entry.js +13 -12
- package/dist/esm/br-input.entry.js.map +1 -1
- package/dist/esm/br-item.entry.js +24 -24
- package/dist/esm/br-item.entry.js.map +1 -1
- package/dist/esm/br-list.entry.js +8 -7
- package/dist/esm/br-list.entry.js.map +1 -1
- package/dist/esm/br-loading.entry.js +3 -3
- package/dist/esm/br-loading.entry.js.map +1 -1
- package/dist/esm/br-message.entry.js +8 -7
- package/dist/esm/br-message.entry.js.map +1 -1
- package/dist/esm/br-radio.entry.js +27 -29
- package/dist/esm/br-radio.entry.js.map +1 -1
- package/dist/esm/br-switch.entry.js +9 -8
- package/dist/esm/br-switch.entry.js.map +1 -1
- package/dist/esm/br-textarea.entry.js +154 -0
- package/dist/esm/br-textarea.entry.js.map +1 -0
- package/dist/esm/{index-5866d5ff.js → index-c7037515.js} +37 -3
- package/dist/esm/index-c7037515.js.map +1 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/webcomponents.js +3 -3
- package/dist/esm/webcomponents.js.map +1 -1
- package/dist/types/components/avatar/avatar.d.ts +3 -3
- package/dist/types/components/button/button.d.ts +2 -6
- package/dist/types/components/checkbox/checkbox.d.ts +2 -2
- package/dist/types/components/dropdown/dropdown.d.ts +154 -0
- package/dist/types/components/icon/icon.d.ts +2 -2
- package/dist/types/components/input/input.d.ts +9 -13
- package/dist/types/components/item/item.d.ts +4 -4
- package/dist/types/components/list/list.d.ts +17 -17
- package/dist/types/components/loading/loading.d.ts +1 -1
- package/dist/types/components/message/message.d.ts +2 -2
- package/dist/types/components/radio/radio.d.ts +5 -4
- package/dist/types/components/switch/switch.d.ts +3 -3
- package/dist/types/components/textarea/textarea.d.ts +157 -0
- package/dist/types/components.d.ts +328 -26
- package/dist/webcomponents/p-0f8df882.entry.js +2 -0
- package/dist/webcomponents/p-0f8df882.entry.js.map +1 -0
- package/dist/webcomponents/p-128b4b58.entry.js +2 -0
- package/dist/webcomponents/p-128b4b58.entry.js.map +1 -0
- package/dist/webcomponents/p-2bc17aba.entry.js +2 -0
- package/dist/webcomponents/p-2bc17aba.entry.js.map +1 -0
- package/dist/webcomponents/p-2ff6ee7a.entry.js +13 -0
- package/dist/webcomponents/p-2ff6ee7a.entry.js.map +1 -0
- package/dist/webcomponents/p-4645bc22.entry.js +2 -0
- package/dist/webcomponents/p-4645bc22.entry.js.map +1 -0
- package/dist/webcomponents/p-4e1a6b1e.entry.js +2 -0
- package/dist/webcomponents/p-4e1a6b1e.entry.js.map +1 -0
- package/dist/webcomponents/p-53a18892.entry.js +2 -0
- package/dist/webcomponents/p-53a18892.entry.js.map +1 -0
- package/dist/webcomponents/p-6783eb4f.entry.js +2 -0
- package/dist/webcomponents/p-6783eb4f.entry.js.map +1 -0
- package/dist/webcomponents/{p-6315c80a.js → p-6849daee.js} +3 -3
- package/dist/webcomponents/p-6849daee.js.map +1 -0
- package/dist/webcomponents/p-e1d4a515.entry.js +2 -0
- package/dist/webcomponents/p-e1d4a515.entry.js.map +1 -0
- package/dist/webcomponents/p-e74737f9.entry.js +2 -0
- package/dist/webcomponents/p-e74737f9.entry.js.map +1 -0
- package/dist/webcomponents/p-f66d6a1e.entry.js +2 -0
- package/dist/webcomponents/p-f66d6a1e.entry.js.map +1 -0
- package/dist/webcomponents/p-ffbd85fd.entry.js +2 -0
- package/dist/webcomponents/p-ffbd85fd.entry.js.map +1 -0
- package/dist/webcomponents/webcomponents.esm.js +1 -1
- package/dist/webcomponents/webcomponents.esm.js.map +1 -1
- package/hydrate/index.js +492 -147
- package/hydrate/index.mjs +492 -147
- package/package.json +10 -6
- package/vscode-data.json +66 -12
- package/dist/cjs/index-ecdd4399.js.map +0 -1
- package/dist/components/p-4c4ab942.js.map +0 -1
- package/dist/components/p-6c7f2b2a.js +0 -140
- package/dist/components/p-6c7f2b2a.js.map +0 -1
- package/dist/esm/index-5866d5ff.js.map +0 -1
- package/dist/webcomponents/p-0178bba0.entry.js +0 -2
- package/dist/webcomponents/p-0178bba0.entry.js.map +0 -1
- package/dist/webcomponents/p-47812ff4.entry.js +0 -2
- package/dist/webcomponents/p-47812ff4.entry.js.map +0 -1
- package/dist/webcomponents/p-5cb55733.entry.js +0 -2
- package/dist/webcomponents/p-5cb55733.entry.js.map +0 -1
- package/dist/webcomponents/p-6315c80a.js.map +0 -1
- package/dist/webcomponents/p-6f787c6e.entry.js +0 -2
- package/dist/webcomponents/p-6f787c6e.entry.js.map +0 -1
- package/dist/webcomponents/p-9054589f.entry.js +0 -2
- package/dist/webcomponents/p-9054589f.entry.js.map +0 -1
- package/dist/webcomponents/p-961ad7ab.entry.js +0 -13
- package/dist/webcomponents/p-961ad7ab.entry.js.map +0 -1
- package/dist/webcomponents/p-9810bb43.entry.js +0 -2
- package/dist/webcomponents/p-9810bb43.entry.js.map +0 -1
- package/dist/webcomponents/p-a1969013.entry.js +0 -2
- package/dist/webcomponents/p-a1969013.entry.js.map +0 -1
- package/dist/webcomponents/p-ca5f6891.entry.js +0 -2
- package/dist/webcomponents/p-ca5f6891.entry.js.map +0 -1
- package/dist/webcomponents/p-e981b8b4.entry.js +0 -2
- package/dist/webcomponents/p-e981b8b4.entry.js.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-c7037515.js';
|
|
2
2
|
import { i as inheritAriaAttributes } from './inherited-attributes-c856c729.js';
|
|
3
3
|
|
|
4
|
-
const messageCss = "*,*::before,*::after{box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}code{font-family:monospace;font-size:1em}small{font-size:80%}img{border-style:none}button,input{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button{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}[type=checkbox],[type=radio]{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:flex !important}.align-items-center{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{flex:1 0 0%;min-width:8.3333333333%}.col-auto{flex:0 0 auto;width:auto}.row{--grid-gutter:var(--grid-portrait-gutter);display:flex;flex-wrap:wrap;margin-left:calc(var(--grid-gutter) * -0.5);margin-right:calc(var(--grid-gutter) * -0.5)}@media (min-width: 576px){.row{--grid-gutter:var(--grid-tablet-gutter)}}@media (min-width: 992px){.row{--grid-gutter:var(--grid-tablet-gutter)}}@media (min-width: 1280px){.row{--grid-gutter:var(--grid-desktop-gutter)}}@media (min-width: 1600px){.row{--grid-gutter:var(--grid-tv-gutter)}}.mr-1{margin-right:var(--spacing-scale-half) !important}.mr-2{margin-right:var(--spacing-scale-base) !important}.mb-3{margin-bottom:var(--spacing-scale-2x) !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:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{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}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}::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,.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)}code,.code{background:var(--gray-5);border-radius:4px;color:var(--gray-80);display:inline-block;font-family:monospace;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);padding:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !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}.highlight{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}.br-message{--message-background:var(--background);--message-color-icon:var(--color);--feedback-background:var(--background);--message-text:var(--color);background:var(--message-background);display:flex;margin-bottom:var(--spacing-scale-2x)}.br-message .content{color:var(--message-text);flex:1;font-size:var(--font-size-scale-up-01);padding:var(--spacing-scale-3x) var(--spacing-scale-base) var(--spacing-scale-3x) var(--spacing-scale-2x)}.br-message .content .message-title{font-weight:var(--font-weight-semi-bold)}.br-message .content .message-body{font-weight:var(--font-weigth-regular)}.br-message .content a{font-weight:var(--font-weight-bold);text-decoration:underline}.br-message .content *:last-child{margin-bottom:0}.br-message .icon{align-items:center;color:var(--message-color-icon);display:flex;justify-content:center;margin:var(--spacing-vertical-center) var(--spacing-scale-2x);padding-left:var(--spacing-scale-2x);padding-right:var(--spacing-scale-2x)}.br-message .icon+.content{padding-left:0}.br-message .close{margin-right:var(--spacing-scale-base);margin-top:var(--spacing-scale-base)}.br-message.success,.br-message[success]{--message-background:var(--success-alternative);--feedback-background:var(--success);--message-color-icon:var(--success)}.br-message.success .close .br-button,.br-message[success] .close .br-button{--interactive:var(--message-color-icon);--interactive-rgb:var(--success-rgb)}.br-message.danger,.br-message[danger]{--message-background:var(--danger-alternative);--feedback-background:var(--danger);--message-color-icon:var(--danger)}.br-message.danger .close .br-button,.br-message[danger] .close .br-button{--interactive:var(--message-color-icon);--interactive-rgb:var(--danger-rgb)}.br-message.info,.br-message[info]{--message-background:var(--info-alternative);--feedback-background:var(--info);--message-color-icon:var(--info)}.br-message.info .close .br-button,.br-message[info] .close .br-button{--interactive:var(--message-color-icon);--interactive-rgb:var(--info-rgb)}.br-message.warning,.br-message[warning]{--message-background:var(--warning-alternative);--feedback-background:var(--warning)}.br-message.warning .close .br-button,.br-message[warning] .close .br-button{--interactive:var(--color);--interactive-rgb:var(--color-rgb)}.feedback{--message-background:var(--background);--message-color-icon:var(--color);--feedback-background:var(--background);--message-text:var(--color);align-items:center;background:var(--feedback-background);color:var(--message-text);display:inline-flex;font-style:italic;font-weight:var(--font-weight-medium);margin-bottom:0;padding:var(--spacing-scale-half)}.feedback:not(.is-warning):not(.warning):not([warning]){--message-text:var(--pure-0)}.feedback.warning,.feedback[warning]{--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)}.feedback.success,.feedback[success]{--message-background:var(--success-alternative);--feedback-background:var(--success);--message-color-icon:var(--success)}.feedback.success .close .br-button,.feedback[success] .close .br-button{--interactive:var(--message-color-icon);--interactive-rgb:var(--success-rgb)}.feedback.danger,.feedback[danger]{--message-background:var(--danger-alternative);--feedback-background:var(--danger);--message-color-icon:var(--danger)}.feedback.danger .close .br-button,.feedback[danger] .close .br-button{--interactive:var(--message-color-icon);--interactive-rgb:var(--danger-rgb)}.feedback.info,.feedback[info]{--message-background:var(--info-alternative);--feedback-background:var(--info);--message-color-icon:var(--info)}.feedback.info .close .br-button,.feedback[info] .close .br-button{--interactive:var(--message-color-icon);--interactive-rgb:var(--info-rgb)}.feedback.warning,.feedback[warning]{--message-background:var(--warning-alternative);--feedback-background:var(--warning)}.feedback.warning .close .br-button,.feedback[warning] .close .br-button{--interactive:var(--color);--interactive-rgb:var(--color-rgb)}:host{display:block}:host .icon-space{margin-right:var(--spacing-scale-half)}";
|
|
4
|
+
const messageCss = "*,*::before,*::after{box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}code{font-family:monospace;font-size:1em}small{font-size:80%}img{border-style:none}button,input,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button{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]{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:flex !important}.align-items-center{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{flex:1 0 0%;min-width:8.3333333333%}.col-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:flex;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}.mb-3{margin-bottom:var(--spacing-scale-2x) !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:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{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}::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)}code,.code{background:var(--gray-5);border-radius:4px;color:var(--gray-80);display:inline-block;font-family:monospace;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);padding:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !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) 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]+*{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-message{--message-background:var(--background);--message-color-icon:var(--color);--feedback-background:var(--background);--message-text:var(--color);background:var(--message-background);display:flex;margin-bottom:var(--spacing-scale-2x)}.br-message .content{color:var(--message-text);flex:1;font-size:var(--font-size-scale-up-01);padding:var(--spacing-scale-3x) var(--spacing-scale-base) var(--spacing-scale-3x) var(--spacing-scale-2x)}.br-message .content .message-title{font-weight:var(--font-weight-semi-bold)}.br-message .content .message-body{font-weight:var(--font-weigth-regular)}.br-message .content a{font-weight:var(--font-weight-bold);text-decoration:underline}.br-message .content *:last-child{margin-bottom:0}.br-message .icon{align-items:center;color:var(--message-color-icon);display:flex;justify-content:center;margin:var(--spacing-vertical-center) var(--spacing-scale-2x);padding-left:var(--spacing-scale-2x);padding-right:var(--spacing-scale-2x)}.br-message .icon+.content{padding-left:0}.br-message .close{margin-right:var(--spacing-scale-base);margin-top:var(--spacing-scale-base)}.br-message.success,.br-message[success]{--message-background:var(--success-alternative);--feedback-background:var(--success);--message-color-icon:var(--success)}.br-message.success .close .br-button,.br-message[success] .close .br-button{--interactive:var(--message-color-icon);--interactive-rgb:var(--success-rgb)}.br-message.danger,.br-message[danger]{--message-background:var(--danger-alternative);--feedback-background:var(--danger);--message-color-icon:var(--danger)}.br-message.danger .close .br-button,.br-message[danger] .close .br-button{--interactive:var(--message-color-icon);--interactive-rgb:var(--danger-rgb)}.br-message.info,.br-message[info]{--message-background:var(--info-alternative);--feedback-background:var(--info);--message-color-icon:var(--info)}.br-message.info .close .br-button,.br-message[info] .close .br-button{--interactive:var(--message-color-icon);--interactive-rgb:var(--info-rgb)}.br-message.warning,.br-message[warning]{--message-background:var(--warning-alternative);--feedback-background:var(--warning)}.br-message.warning .close .br-button,.br-message[warning] .close .br-button{--interactive:var(--color);--interactive-rgb:var(--color-rgb)}.feedback{--message-background:var(--background);--message-color-icon:var(--color);--feedback-background:var(--background);--message-text:var(--color);align-items:center;background:var(--feedback-background);color:var(--message-text);display:inline-flex;font-style:italic;font-weight:var(--font-weight-medium);margin-bottom:0;padding:var(--spacing-scale-half)}.feedback:not(.is-warning):not(.warning):not([warning]){--message-text:var(--pure-0)}.feedback.warning,.feedback[warning]{--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)}.feedback.success,.feedback[success]{--message-background:var(--success-alternative);--feedback-background:var(--success);--message-color-icon:var(--success)}.feedback.success .close .br-button,.feedback[success] .close .br-button{--interactive:var(--message-color-icon);--interactive-rgb:var(--success-rgb)}.feedback.danger,.feedback[danger]{--message-background:var(--danger-alternative);--feedback-background:var(--danger);--message-color-icon:var(--danger)}.feedback.danger .close .br-button,.feedback[danger] .close .br-button{--interactive:var(--message-color-icon);--interactive-rgb:var(--danger-rgb)}.feedback.info,.feedback[info]{--message-background:var(--info-alternative);--feedback-background:var(--info);--message-color-icon:var(--info)}.feedback.info .close .br-button,.feedback[info] .close .br-button{--interactive:var(--message-color-icon);--interactive-rgb:var(--info-rgb)}.feedback.warning,.feedback[warning]{--message-background:var(--warning-alternative);--feedback-background:var(--warning)}.feedback.warning .close .br-button,.feedback[warning] .close .br-button{--interactive:var(--color);--interactive-rgb:var(--color-rgb)}:host{display:block}:host .icon-space{margin-right:var(--spacing-scale-half)}";
|
|
5
5
|
const BrMessageStyle0 = messageCss;
|
|
6
6
|
|
|
7
7
|
const Message = class {
|
|
@@ -24,6 +24,10 @@ const Message = class {
|
|
|
24
24
|
this.elementInternals = hostRef.$hostElement$.attachInternals();
|
|
25
25
|
hostRef.$hostElement$["s-ei"] = this.elementInternals;
|
|
26
26
|
}
|
|
27
|
+
this.dismissHandler = () => {
|
|
28
|
+
this.brDidClose.emit();
|
|
29
|
+
this.el.remove();
|
|
30
|
+
};
|
|
27
31
|
this.inheritedAttributes = {};
|
|
28
32
|
this.messageTitle = '';
|
|
29
33
|
this.message = '';
|
|
@@ -61,10 +65,6 @@ const Message = class {
|
|
|
61
65
|
disconnectedCallback() {
|
|
62
66
|
this.brDidDisconnect.emit();
|
|
63
67
|
}
|
|
64
|
-
dismissHandler() {
|
|
65
|
-
this.brDidClose.emit();
|
|
66
|
-
this.el.remove();
|
|
67
|
-
}
|
|
68
68
|
checkIconState() {
|
|
69
69
|
const iconMap = {
|
|
70
70
|
success: 'fa-solid:check-circle',
|
|
@@ -81,7 +81,8 @@ const Message = class {
|
|
|
81
81
|
};
|
|
82
82
|
}
|
|
83
83
|
render() {
|
|
84
|
-
|
|
84
|
+
var _a, _b;
|
|
85
|
+
return (h(Host, { key: '5b8bfb2b3b5c3861cf4e695c1cacb0bd034d4a82' }, this.isFeedback ? (h("div", { class: "mb-3" }, h("span", Object.assign({ class: `feedback ${this.state}`, role: "alert" }, this.inheritedAttributes), this.showIcon ? h("br-icon", { class: "icon-space", "icon-name": this.checkIconState() }) : null, ((_a = this.message) === null || _a === void 0 ? void 0 : _a.length) === 0 ? h("slot", null) : this.message))) : (h("div", Object.assign({ class: this.getCssClassMap(), role: "alert" }, this.inheritedAttributes), this.showIcon && (h("div", { class: "icon" }, h("br-icon", { "icon-name": this.checkIconState(), height: "20", "aria-hidden": "true" }))), h("div", { class: "content", role: "alert" }, ((_b = this.message) === null || _b === void 0 ? void 0 : _b.length) === 0 ? (h("div", null, this.messageTitle && h("strong", null, this.messageTitle), this.messageTitle && !this.isInline && h("br", null), h("slot", null))) : (h("div", null, h("span", { class: "message-title mr-1" }, this.messageTitle), h("span", { class: "message-body" }, this.message)))), this.isClosable && !this.isFeedback && (h("div", { class: "close" }, h("br-button", { shape: "circle", type: "button", "aria-label": "Fechar a mensagem", onClick: this.dismissHandler }, h("br-icon", { "icon-name": "fa-solid:times", "aria-hidden": "true" }))))))));
|
|
85
86
|
}
|
|
86
87
|
static get formAssociated() { return true; }
|
|
87
88
|
get el() { return getElement(this); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"br-message.entry.js","mappings":"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","names":[],"sources":["src/components/message/message.scss?tag=br-message&encapsulation=shadow","src/components/message/message.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/message/message.scss\";\n\n:host {\n display: block;\n\n .icon-space {\n margin-right: var(--spacing-scale-half);\n }\n}\n","import { AttachInternals, Component, Element, Event, EventEmitter, Host, Prop, h } from '@stencil/core'\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/message?tab=designer).\n *\n * @slot default - Utilizado para inserir qualquer conteúdo que será exibido no corpo da mensagem.\n */\n@Component({\n tag: 'br-message',\n styleUrl: 'message.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Message {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o título da mensagem, que é exibido no início, acima da mensagem principal.\n * Este título serve para destacar a mensagem textual. Não é aplicável para mensagens do tipo feedback.\n */\n @Prop({ reflect: true }) messageTitle: string = ''\n\n /**\n * **[OBRIGATÓRIO]** Define o texto da mensagem que será exibido.\n * Este é o conteúdo principal da mensagem. A propriedade `message` é obrigatória e deve ser fornecida para que a mensagem apareça.\n */\n @Prop({ reflect: true }) message: string = ''\n\n /**\n * Se definido como verdadeiro, o título da mensagem será exibido na mesma linha que a mensagem principal.\n * Isso pode ser útil para criar um layout onde o título e a mensagem estão alinhados horizontalmente.\n */\n @Prop({ reflect: true }) isInline: boolean = false\n\n /**\n * Se definido como verdadeiro, um botão de fechar será exibido para permitir que o usuário feche a mensagem.\n * Este recurso não está disponível para mensagens do tipo feedback.\n */\n @Prop({ reflect: true }) isClosable: boolean = false\n\n /**\n * Se definido como verdadeiro, um ícone associado à mensagem será exibido.\n * Use esta propriedade para mostrar ou ocultar o ícone da mensagem conforme necessário.\n */\n @Prop({ reflect: true }) showIcon: boolean = false\n\n /**\n * Define se a mensagem é do tipo feedback, geralmente usada para fornecer contexto adicional sobre ações do usuário.\n * Exemplos incluem mensagens de validação em campos de formulário. Não disponível para mensagens que não sejam de feedback.\n */\n @Prop({ reflect: true }) isFeedback: 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: 'info' | 'warning' | 'danger' | 'success' = 'info'\n\n /**\n * Emite um evento quando o componente é conectado ao DOM.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#connectedcallback) para mais detalhes.\n */\n @Event() brDidConnect: EventEmitter<void>\n connectedCallback() {\n this.brDidConnect.emit()\n }\n\n /**\n * Emite um evento antes que o componente seja carregado pela primeira vez.\n * Utilize este evento para realizar tarefas de inicialização antes do componente ser exibido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this.brWillLoad.emit()\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n /**\n * Emite um evento após o componente ter sido carregado pela primeira vez.\n * Utilize este evento para realizar ações que devem ocorrer depois que o componente foi totalmente carregado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes.\n */\n @Event() brDidLoad: EventEmitter<void>\n componentDidLoad() {\n this.brDidLoad.emit()\n }\n\n /**\n * Emite um evento antes do componente ser renderizado.\n * Utilize este evento para preparar o componente antes de sua renderização.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillrender) para mais detalhes.\n */\n @Event() brWillRender: EventEmitter<void>\n componentWillRender() {\n this.brWillRender.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido renderizado.\n * Utilize este evento para executar ações que devem ocorrer após a renderização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidrender) para mais detalhes.\n */\n @Event() brDidRender: EventEmitter<void>\n componentDidRender() {\n this.brDidRender.emit()\n }\n\n /**\n * Emite um evento para indicar se o componente deve ser atualizado ou não.\n * Este evento é chamado antes de qualquer atualização do componente para decidir se a atualização deve prosseguir.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentshouldupdate) para mais detalhes.\n */\n @Event() brShouldUpdate: EventEmitter<void>\n componentShouldUpdate() {\n this.brShouldUpdate.emit()\n }\n\n /**\n * Emite um evento antes de o componente ser atualizado.\n * Utilize este evento para realizar ações preparatórias antes da atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillupdate) para mais detalhes.\n */\n @Event() brWillUpdate: EventEmitter<void>\n componentWillUpdate() {\n this.brWillUpdate.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido atualizado.\n * Utilize este evento para realizar ações após a atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidupdate) para mais detalhes.\n */\n @Event() brDidUpdate: EventEmitter<void>\n componentDidUpdate() {\n this.brDidUpdate.emit()\n }\n\n /**\n * Emite um evento quando o componente é desconectado do DOM.\n * Utilize este evento para realizar a limpeza ou outras ações necessárias quando o componente é removido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#disconnectedcallback) para mais detalhes.\n */\n @Event() brDidDisconnect: EventEmitter<void>\n disconnectedCallback() {\n this.brDidDisconnect.emit()\n }\n\n /** Evento emitido quando o usuário fecha a mensagem, se closable for true. */\n @Event() brDidClose: EventEmitter\n dismissHandler() {\n this.brDidClose.emit()\n this.el.remove()\n }\n\n private checkIconState() {\n const iconMap = {\n success: 'fa-solid:check-circle',\n warning: 'fa-solid:exclamation-triangle',\n danger: 'fa-solid:times-circle',\n info: 'fa-solid:info-circle',\n }\n return iconMap[this.state] || 'check-circle' // Valor padrão se não encontrado\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-message': true,\n [this.state]: true,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n render() {\n return (\n <Host>\n {this.isFeedback ? (\n <div class=\"mb-3\">\n <span class={`feedback ${this.state}`} role=\"alert\" {...this.inheritedAttributes}>\n {this.showIcon ? <br-icon class=\"icon-space\" icon-name={this.checkIconState()}></br-icon> : null}\n {!this.message ? <slot></slot> : this.message}\n </span>\n </div>\n ) : (\n <div class={this.getCssClassMap()} role=\"alert\" {...this.inheritedAttributes}>\n {this.showIcon && (\n <div class=\"icon\">\n <br-icon icon-name={this.checkIconState()} height=\"20\" aria-hidden=\"true\"></br-icon>\n </div>\n )}\n <div class=\"content\" role=\"alert\">\n {!this.message ? (\n <div>\n {this.messageTitle && <strong>{this.messageTitle}</strong>}\n {this.messageTitle && !this.isInline && <br />}\n <slot></slot>\n </div>\n ) : (\n <div>\n <span class=\"message-title mr-1\">{this.messageTitle}</span>\n <span class=\"message-body\">{this.message}</span>\n </div>\n )}\n </div>\n {this.isClosable && !this.isFeedback && (\n <div class=\"close\">\n <br-button\n shape=\"circle\"\n type=\"button\"\n aria-label=\"Fechar a mensagem\"\n onClick={() => this.dismissHandler()}\n >\n <br-icon icon-name=\"fa-solid:times\" aria-hidden=\"true\"></br-icon>\n </br-button>\n </div>\n )}\n </div>\n )}\n </Host>\n )\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"br-message.entry.js","mappings":";;;AAAA,MAAM,UAAU,GAAG,gsYAAgsY,CAAC;AACptY,wBAAe,UAAU;;MCaZ,OAAO;;;;;;;;;;;;;;;;;;;;QAoJD,mBAAc,GAAG;YAChC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;YACtB,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAA;SACjB,CAAA;QAmBO,wBAAmB,GAAe,EAAE,CAAA;4BA7JI,EAAE;uBAMP,EAAE;wBAMA,KAAK;0BAMH,KAAK;wBAMP,KAAK;0BAMH,KAAK;qBAWwB,MAAM;;IAOlF,iBAAiB;QACf,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAA;KACzB;IAQD,iBAAiB;QACf,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;QACtB,IAAI,CAAC,mBAAmB,GAAG,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;KAC1D;IAQD,gBAAgB;QACd,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAA;KACtB;IAQD,mBAAmB;QACjB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAA;KACzB;IAQD,kBAAkB;QAChB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAA;KACxB;IAQD,qBAAqB;QACnB,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA;KAC3B;IAQD,mBAAmB;QACjB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAA;KACzB;IAQD,kBAAkB;QAChB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAA;KACxB;IAQD,oBAAoB;QAClB,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAA;KAC5B;IASO,cAAc;QACpB,MAAM,OAAO,GAAG;YACd,OAAO,EAAE,uBAAuB;YAChC,OAAO,EAAE,+BAA+B;YACxC,MAAM,EAAE,uBAAuB;YAC/B,IAAI,EAAE,sBAAsB;SAC7B,CAAA;QACD,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,cAAc,CAAA;KAC7C;IAEO,cAAc;QACpB,OAAO;YACL,YAAY,EAAE,IAAI;YAClB,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI;SACnB,CAAA;KACF;IAID,MAAM;;QACJ,QACE,EAAC,IAAI,uDACF,IAAI,CAAC,UAAU,IACd,WAAK,KAAK,EAAC,MAAM,IACf,0BAAM,KAAK,EAAE,YAAY,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,EAAC,OAAO,IAAK,IAAI,CAAC,mBAAmB,GAC7E,IAAI,CAAC,QAAQ,GAAG,eAAS,KAAK,EAAC,YAAY,eAAY,IAAI,CAAC,cAAc,EAAE,GAAY,GAAG,IAAI,EAC/F,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,MAAM,MAAK,CAAC,GAAG,eAAa,GAAG,IAAI,CAAC,OAAO,CACrD,CACH,KAEN,yBAAK,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAC,OAAO,IAAK,IAAI,CAAC,mBAAmB,GACzE,IAAI,CAAC,QAAQ,KACZ,WAAK,KAAK,EAAC,MAAM,IACf,4BAAoB,IAAI,CAAC,cAAc,EAAE,EAAE,MAAM,EAAC,IAAI,iBAAa,MAAM,GAAW,CAChF,CACP,EACD,WAAK,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,OAAO,IAC9B,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,MAAM,MAAK,CAAC,IACzB,eACG,IAAI,CAAC,YAAY,IAAI,kBAAS,IAAI,CAAC,YAAY,CAAU,EACzD,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,aAAM,EAC9C,eAAa,CACT,KAEN,eACE,YAAM,KAAK,EAAC,oBAAoB,IAAE,IAAI,CAAC,YAAY,CAAQ,EAC3D,YAAM,KAAK,EAAC,cAAc,IAAE,IAAI,CAAC,OAAO,CAAQ,CAC5C,CACP,CACG,EACL,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,UAAU,KAClC,WAAK,KAAK,EAAC,OAAO,IAChB,iBAAW,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,gBAAY,mBAAmB,EAAC,OAAO,EAAE,IAAI,CAAC,cAAc,IACjG,4BAAmB,gBAAgB,iBAAa,MAAM,GAAW,CACvD,CACR,CACP,CACG,CACP,CACI,EACR;KACF;;;;;;;;","names":[],"sources":["src/components/message/message.scss?tag=br-message&encapsulation=shadow","src/components/message/message.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/message/message.scss\";\n\n:host {\n display: block;\n\n .icon-space {\n margin-right: var(--spacing-scale-half);\n }\n}\n","import { AttachInternals, Component, Element, Event, EventEmitter, Host, Prop, h } from '@stencil/core'\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/message?tab=designer).\n *\n * @slot default - Utilizado para inserir qualquer conteúdo que será exibido no corpo da mensagem.\n */\n@Component({\n tag: 'br-message',\n styleUrl: 'message.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Message {\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: HTMLBrMessageElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o título da mensagem, que é exibido no início, acima da mensagem principal.\n * Este título serve para destacar a mensagem textual. Não é aplicável para mensagens do tipo feedback.\n */\n @Prop({ reflect: true }) messageTitle: string = ''\n\n /**\n * **[OBRIGATÓRIO]** Define o texto da mensagem que será exibido.\n * Este é o conteúdo principal da mensagem. A propriedade `message` é obrigatória e deve ser fornecida para que a mensagem apareça.\n */\n @Prop({ reflect: true }) message: string = ''\n\n /**\n * Se definido como verdadeiro, o título da mensagem será exibido na mesma linha que a mensagem principal.\n * Isso pode ser útil para criar um layout onde o título e a mensagem estão alinhados horizontalmente.\n */\n @Prop({ reflect: true }) isInline: boolean = false\n\n /**\n * Se definido como verdadeiro, um botão de fechar será exibido para permitir que o usuário feche a mensagem.\n * Este recurso não está disponível para mensagens do tipo feedback.\n */\n @Prop({ reflect: true }) isClosable: boolean = false\n\n /**\n * Se definido como verdadeiro, um ícone associado à mensagem será exibido.\n * Use esta propriedade para mostrar ou ocultar o ícone da mensagem conforme necessário.\n */\n @Prop({ reflect: true }) showIcon: boolean = false\n\n /**\n * Define se a mensagem é do tipo feedback, geralmente usada para fornecer contexto adicional sobre ações do usuário.\n * Exemplos incluem mensagens de validação em campos de formulário. Não disponível para mensagens que não sejam de feedback.\n */\n @Prop({ reflect: true }) isFeedback: 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: 'info' | 'warning' | 'danger' | 'success' = 'info'\n\n /**\n * Emite um evento quando o componente é conectado ao DOM.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#connectedcallback) para mais detalhes.\n */\n @Event() brDidConnect: EventEmitter<void>\n connectedCallback() {\n this.brDidConnect.emit()\n }\n\n /**\n * Emite um evento antes que o componente seja carregado pela primeira vez.\n * Utilize este evento para realizar tarefas de inicialização antes do componente ser exibido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this.brWillLoad.emit()\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n /**\n * Emite um evento após o componente ter sido carregado pela primeira vez.\n * Utilize este evento para realizar ações que devem ocorrer depois que o componente foi totalmente carregado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes.\n */\n @Event() brDidLoad: EventEmitter<void>\n componentDidLoad() {\n this.brDidLoad.emit()\n }\n\n /**\n * Emite um evento antes do componente ser renderizado.\n * Utilize este evento para preparar o componente antes de sua renderização.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillrender) para mais detalhes.\n */\n @Event() brWillRender: EventEmitter<void>\n componentWillRender() {\n this.brWillRender.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido renderizado.\n * Utilize este evento para executar ações que devem ocorrer após a renderização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidrender) para mais detalhes.\n */\n @Event() brDidRender: EventEmitter<void>\n componentDidRender() {\n this.brDidRender.emit()\n }\n\n /**\n * Emite um evento para indicar se o componente deve ser atualizado ou não.\n * Este evento é chamado antes de qualquer atualização do componente para decidir se a atualização deve prosseguir.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentshouldupdate) para mais detalhes.\n */\n @Event() brShouldUpdate: EventEmitter<void>\n componentShouldUpdate() {\n this.brShouldUpdate.emit()\n }\n\n /**\n * Emite um evento antes de o componente ser atualizado.\n * Utilize este evento para realizar ações preparatórias antes da atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillupdate) para mais detalhes.\n */\n @Event() brWillUpdate: EventEmitter<void>\n componentWillUpdate() {\n this.brWillUpdate.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido atualizado.\n * Utilize este evento para realizar ações após a atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidupdate) para mais detalhes.\n */\n @Event() brDidUpdate: EventEmitter<void>\n componentDidUpdate() {\n this.brDidUpdate.emit()\n }\n\n /**\n * Emite um evento quando o componente é desconectado do DOM.\n * Utilize este evento para realizar a limpeza ou outras ações necessárias quando o componente é removido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#disconnectedcallback) para mais detalhes.\n */\n @Event() brDidDisconnect: EventEmitter<void>\n disconnectedCallback() {\n this.brDidDisconnect.emit()\n }\n\n /** Evento emitido quando o usuário fecha a mensagem, se closable for true. */\n @Event() brDidClose: EventEmitter\n private readonly dismissHandler = () => {\n this.brDidClose.emit()\n this.el.remove()\n }\n\n private checkIconState() {\n const iconMap = {\n success: 'fa-solid:check-circle',\n warning: 'fa-solid:exclamation-triangle',\n danger: 'fa-solid:times-circle',\n info: 'fa-solid:info-circle',\n }\n return iconMap[this.state] || 'check-circle' // Valor padrão se não encontrado\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-message': true,\n [this.state]: true,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n render() {\n return (\n <Host>\n {this.isFeedback ? (\n <div class=\"mb-3\">\n <span class={`feedback ${this.state}`} role=\"alert\" {...this.inheritedAttributes}>\n {this.showIcon ? <br-icon class=\"icon-space\" icon-name={this.checkIconState()}></br-icon> : null}\n {this.message?.length === 0 ? <slot></slot> : this.message}\n </span>\n </div>\n ) : (\n <div class={this.getCssClassMap()} role=\"alert\" {...this.inheritedAttributes}>\n {this.showIcon && (\n <div class=\"icon\">\n <br-icon icon-name={this.checkIconState()} height=\"20\" aria-hidden=\"true\"></br-icon>\n </div>\n )}\n <div class=\"content\" role=\"alert\">\n {this.message?.length === 0 ? (\n <div>\n {this.messageTitle && <strong>{this.messageTitle}</strong>}\n {this.messageTitle && !this.isInline && <br />}\n <slot></slot>\n </div>\n ) : (\n <div>\n <span class=\"message-title mr-1\">{this.messageTitle}</span>\n <span class=\"message-body\">{this.message}</span>\n </div>\n )}\n </div>\n {this.isClosable && !this.isFeedback && (\n <div class=\"close\">\n <br-button shape=\"circle\" type=\"button\" aria-label=\"Fechar a mensagem\" onClick={this.dismissHandler}>\n <br-icon icon-name=\"fa-solid:times\" aria-hidden=\"true\"></br-icon>\n </br-button>\n </div>\n )}\n </div>\n )}\n </Host>\n )\n }\n}\n"],"version":3}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-c7037515.js';
|
|
2
2
|
import { i as inheritAriaAttributes } from './inherited-attributes-c856c729.js';
|
|
3
3
|
|
|
4
|
-
const radioCss = "*,*::before,*::after{box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}code{font-family:monospace;font-size:1em}small{font-size:80%}img{border-style:none}button,input{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button{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}[type=checkbox],[type=radio]{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:flex !important}.align-items-center{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{flex:1 0 0%;min-width:8.3333333333%}.col-auto{flex:0 0 auto;width:auto}.row{--grid-gutter:var(--grid-portrait-gutter);display:flex;flex-wrap:wrap;margin-left:calc(var(--grid-gutter) * -0.5);margin-right:calc(var(--grid-gutter) * -0.5)}@media (min-width: 576px){.row{--grid-gutter:var(--grid-tablet-gutter)}}@media (min-width: 992px){.row{--grid-gutter:var(--grid-tablet-gutter)}}@media (min-width: 1280px){.row{--grid-gutter:var(--grid-desktop-gutter)}}@media (min-width: 1600px){.row{--grid-gutter:var(--grid-tv-gutter)}}.mr-1{margin-right:var(--spacing-scale-half) !important}.mr-2{margin-right:var(--spacing-scale-base) !important}.mb-3{margin-bottom:var(--spacing-scale-2x) !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:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{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}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}::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,.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)}code,.code{background:var(--gray-5);border-radius:4px;color:var(--gray-80);display:inline-block;font-family:monospace;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);padding:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !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}.highlight{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}.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;box-shadow:0 0 0 var(--surface-width-md) var(--focus);outline:none}.br-radio input:hover:not(:disabled)+label::before{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}";
|
|
4
|
+
const radioCss = "*,*::before,*::after{box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}code{font-family:monospace;font-size:1em}small{font-size:80%}img{border-style:none}button,input,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button{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]{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:flex !important}.align-items-center{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{flex:1 0 0%;min-width:8.3333333333%}.col-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:flex;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}.mb-3{margin-bottom:var(--spacing-scale-2x) !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:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{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}::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)}code,.code{background:var(--gray-5);border-radius:4px;color:var(--gray-80);display:inline-block;font-family:monospace;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);padding:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !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) 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]+*{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;box-shadow:0 0 0 var(--surface-width-md) var(--focus);outline:none}.br-radio input:hover:not(:disabled)+label::before{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}";
|
|
5
5
|
const BrRadioStyle0 = radioCss;
|
|
6
6
|
|
|
7
7
|
const Radio = class {
|
|
@@ -29,6 +29,28 @@ const Radio = class {
|
|
|
29
29
|
hostRef.$hostElement$["s-ei"] = this.elementInternals;
|
|
30
30
|
}
|
|
31
31
|
this.inheritedAttributes = {};
|
|
32
|
+
this.handleClick = () => {
|
|
33
|
+
this.toggleChecked();
|
|
34
|
+
};
|
|
35
|
+
this.handleKeyDown = (event) => {
|
|
36
|
+
// Permite alternar o estado apenas quando a tecla pressionada é 'Space'
|
|
37
|
+
if (event.code === 'Space') {
|
|
38
|
+
event.preventDefault(); // Impede o comportamento padrão da tecla 'Space'
|
|
39
|
+
this.toggleChecked();
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Controla o comportamento de alternar o estado checked.
|
|
44
|
+
*/
|
|
45
|
+
this.toggleChecked = () => {
|
|
46
|
+
if (this.toggle) {
|
|
47
|
+
this.checked = !this.checked;
|
|
48
|
+
this.brDidCheckedChange.emit({ value: this.value, checked: this.checked });
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
this.stopPropagation = (event) => {
|
|
52
|
+
event.stopPropagation();
|
|
53
|
+
};
|
|
32
54
|
this.checked = false;
|
|
33
55
|
this.disabled = false;
|
|
34
56
|
this.state = null;
|
|
@@ -104,39 +126,15 @@ const Radio = class {
|
|
|
104
126
|
'hidden-label': this.hasHiddenLabel,
|
|
105
127
|
};
|
|
106
128
|
}
|
|
107
|
-
/**
|
|
108
|
-
* Handler para o evento "onClick"
|
|
109
|
-
*/
|
|
110
|
-
async handleClick() {
|
|
111
|
-
this.toggleChecked();
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Handler para o evento "onKeyDown"
|
|
115
|
-
*/
|
|
116
|
-
async handleKeyDown(event) {
|
|
117
|
-
// Permite alternar o estado apenas quando a tecla pressionada é 'Space'
|
|
118
|
-
if (event.code === 'Space') {
|
|
119
|
-
event.preventDefault(); // Impede o comportamento padrão da tecla 'Space'
|
|
120
|
-
this.toggleChecked();
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
/**
|
|
124
|
-
* Controla o comportamento de alternar o estado checked.
|
|
125
|
-
*/
|
|
126
|
-
toggleChecked() {
|
|
127
|
-
if (this.toggle) {
|
|
128
|
-
this.checked = !this.checked;
|
|
129
|
-
this.brDidCheckedChange.emit({ value: this.value, checked: this.checked });
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
129
|
/**
|
|
133
130
|
* Determina um id para o radio.
|
|
134
131
|
*/
|
|
135
132
|
getComputedId() {
|
|
136
|
-
|
|
133
|
+
var _a;
|
|
134
|
+
return ((_a = this.customId) === null || _a === void 0 ? void 0 : _a.length) > 0 ? this.customId : this.name;
|
|
137
135
|
}
|
|
138
136
|
render() {
|
|
139
|
-
return (h(Host, { key: '
|
|
137
|
+
return (h(Host, { key: '5da5a61be5135f9d6938a3f71d5423947c62f786', "aria-disabled": this.disabled ? 'true' : null }, h("div", { key: '84fb3469e320751f3f9d10f727f3bd113bea0c7d', class: this.getCssClassMap(), onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("input", Object.assign({ key: 'e2dfa7551a548ed986d2d1be7343cd67645150b9', "aria-label": this.label, type: "radio", id: this.getComputedId(), name: this.name, checked: this.checked, disabled: this.disabled, value: this.value, onClick: this.stopPropagation }, this.inheritedAttributes)), h("label", { key: 'fa025229ad31f88416a552fb6dc9cd00f0da6876', htmlFor: this.getComputedId() }, this._slotDefault ? h("slot", null) : this.label))));
|
|
140
138
|
}
|
|
141
139
|
static get formAssociated() { return true; }
|
|
142
140
|
get el() { return getElement(this); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"br-radio.entry.js","mappings":"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","names":[],"sources":["src/components/radio/radio.scss?tag=br-radio&encapsulation=shadow","src/components/radio/radio.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/radio/radio.scss\";\n\n:host {\n display: block;\n}\n\n.br-radio.hidden-label {\n label {\n padding-left: calc(var(--checkbox-size) + var(--surface-width-md)* 2);\n text-indent: -10000px;\n white-space: nowrap;\n width: 0;\n }\n}\n ","import { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop, State } from '@stencil/core'\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/radio?tab=designer).\n *\n * @slot default - O texto descritivo pode ser passado por propriedade (label) ou por slot.\n */\n\n@Component({\n tag: 'br-radio',\n styleUrl: 'radio.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Radio {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLInputElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o estado de seleção do radio.\n * Se definido como verdadeiro, o radio estará marcado. Caso contrário, estará desmarcado.\n */\n @Prop({ reflect: true, mutable: true }) checked: boolean = false\n\n /**\n * Desativa o radio, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Indica a validade do radio.\n * Valores possíveis:\n * - 'valid': O radio é considerado válido.\n * - 'invalid': O radio é considerado inválido.\n * Se não for especificado, o valor padrão é `null`, indicando que a validade não foi definida.\n */\n @Prop({ reflect: true }) state: 'valid' | 'invalid' = null\n\n /**\n * Define se o label associado ao radio deve ser oculto.\n * Se definido como verdadeiro, o texto do label será oculto, mas o radio ainda estará visível e funcional.\n */\n @Prop({ reflect: true, mutable: true, attribute: 'has-hidden-label' }) hasHiddenLabel: boolean = false\n\n /**\n * Define o nome do radio, que é utilizado para agrupar radios em formulários e identificar o campo.\n * O valor é obrigatório e deve ser fornecido para garantir o correto funcionamento em formulários.\n */\n\n @Prop({ reflect: true }) name!: string\n\n /**\n * Texto descritivo exibido à direita do radio.\n * Caso um slot seja utilizado para fornecer um texto alternativo, o valor desta propriedade será ignorado.\n */\n @Prop({ reflect: true }) label: string\n\n /**\n * Define o valor associado ao radio quando ele faz parte de um formulário nativo (`<form>`).\n * Esse valor é enviado com o formulário quando o radio está selecionado.\n * **Nota:** Esta propriedade não deve ser utilizada para determinar se o radio está selecionado; para verificar o estado de seleção, use a propriedade `checked`.\n */\n @Prop({ reflect: true }) value: any\n\n /**\n * Especifica o ID do componente, que é usado para conectar o label correspondente ao radio.\n * Se não for fornecido, o ID será o mesmo valor atribuído à propriedade `name`.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string\n\n /**\n * Indica se o radio pode alternar seu estado checked\n */\n @Prop({ reflect: true }) toggle: boolean = false\n\n /**\n * Propriedade que vai guardar o valor da validação do slot\n */\n @State() _slotDefault: boolean = false\n\n // Faz a marcação do checkbox de acordo com a seleção do componente item do tipo is-interactive\n @Listen('brDidSelect', { target: 'document' })\n handleItemInteractiveSelect(event: CustomEvent) {\n\n // Verifica se o evento é de um pai correto\n const target = event.target as HTMLElement;\n const brItem = target.closest('br-item') as HTMLElement;\n\n if (brItem && this.el.parentElement?.contains(brItem)) {\n this.checked = event.detail.selected;\n }\n\n event.stopPropagation();\n }\n\n /**\n * Emite um evento quando o componente é conectado ao DOM.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#connectedcallback) para mais detalhes.\n */\n @Event() brDidConnect: EventEmitter<void>\n connectedCallback() {\n this.brDidConnect.emit()\n }\n\n /**\n * Emite um evento antes que o componente seja carregado pela primeira vez.\n * Utilize este evento para realizar tarefas de inicialização antes do componente ser exibido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this.hasSlotContentDefault()\n this.brWillLoad.emit()\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n /**\n * Emite um evento após o componente ter sido carregado pela primeira vez.\n * Utilize este evento para realizar ações que devem ocorrer depois que o componente foi totalmente carregado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes.\n */\n @Event() brDidLoad: EventEmitter<void>\n componentDidLoad() {\n this.brDidLoad.emit()\n }\n\n /**\n * Emite um evento antes do componente ser renderizado.\n * Utilize este evento para preparar o componente antes de sua renderização.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillrender) para mais detalhes.\n */\n @Event() brWillRender: EventEmitter<void>\n componentWillRender() {\n this.brWillRender.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido renderizado.\n * Utilize este evento para executar ações que devem ocorrer após a renderização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidrender) para mais detalhes.\n */\n @Event() brDidRender: EventEmitter<void>\n componentDidRender() {\n this.brDidRender.emit()\n }\n\n /**\n * Emite um evento para indicar se o componente deve ser atualizado ou não.\n * Este evento é chamado antes de qualquer atualização do componente para decidir se a atualização deve prosseguir.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentshouldupdate) para mais detalhes.\n */\n @Event() brShouldUpdate: EventEmitter<void>\n componentShouldUpdate() {\n this.brShouldUpdate.emit()\n }\n\n /**\n * Emite um evento antes de o componente ser atualizado.\n * Utilize este evento para realizar ações preparatórias antes da atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillupdate) para mais detalhes.\n */\n @Event() brWillUpdate: EventEmitter<void>\n componentWillUpdate() {\n this.brWillUpdate.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido atualizado.\n * Utilize este evento para realizar ações após a atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidupdate) para mais detalhes.\n */\n @Event() brDidUpdate: EventEmitter<void>\n componentDidUpdate() {\n this.brDidUpdate.emit()\n }\n\n /**\n * Emite um evento quando o componente é desconectado do DOM.\n * Utilize este evento para realizar a limpeza ou outras ações necessárias quando o componente é removido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#disconnectedcallback) para mais detalhes.\n */\n @Event() brDidDisconnect: EventEmitter<void>\n disconnectedCallback() {\n this.brDidDisconnect.emit()\n }\n\n /**\n * Emite um evento quando o componente é associado ou removido de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formassociatedcallback) para mais detalhes.\n *\n * @param form - Dados do formulário associado.\n */\n @Event() brFormAssociatedCallback: EventEmitter<FormData>\n formAssociatedCallback(form: FormData) {\n this.brFormAssociatedCallback.emit(form)\n }\n\n /**\n * Emite um evento quando o estado `disabled` do componente muda dentro de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formdisabledcallback) para mais informações.\n *\n * @param disabled - Novo estado `disabled` do componente dentro do formulário.\n */\n @Event() brFormDisabledCallback: EventEmitter<boolean>\n formDisabledCallback(disabled: boolean) {\n this.brFormDisabledCallback.emit(disabled)\n }\n\n /**\n * Emite um evento quando um `<form>` é resetado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formresetcallback) para mais detalhes.\n */\n @Event() brFormResetCallback: EventEmitter<void>\n formResetCallback() {\n this.brFormResetCallback.emit()\n }\n\n /**\n * Emite um evento quando o navegador preenche automaticamente os campos de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formstaterestorecallback) para mais informações.\n *\n * @param state - Estado restaurado do formulário.\n * @param _mode - Modo de preenchimento automático do navegador.\n */\n @Event() brFormStateRestoreCallback: EventEmitter<[state: string, _mode: string]>\n formStateRestoreCallback(state: string, _mode: string) {\n this.brFormStateRestoreCallback.emit([state, _mode])\n }\n\n private hasSlotContentDefault(): any {\n this._slotDefault = this.el.innerHTML !== ''\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-radio': true,\n valid: this.state === 'valid',\n invalid: this.state === 'invalid',\n disabled: this.disabled,\n 'hidden-label': this.hasHiddenLabel,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n /**\n * Componente teve seu estado \"checked\" alterado\n */\n @Event() brDidCheckedChange: EventEmitter<{ value: boolean; checked: boolean }>\n\n @Method()\n /**\n * Handler para o evento \"onClick\"\n */\n async handleClick() {\n this.toggleChecked()\n }\n\n @Method()\n /**\n * Handler para o evento \"onKeyDown\"\n */\n async handleKeyDown(event: KeyboardEvent) {\n // Permite alternar o estado apenas quando a tecla pressionada é 'Space'\n if (event.code === 'Space') {\n event.preventDefault() // Impede o comportamento padrão da tecla 'Space'\n this.toggleChecked()\n }\n }\n\n /**\n * Controla o comportamento de alternar o estado checked.\n */\n private toggleChecked() {\n if (this.toggle) {\n this.checked = !this.checked\n this.brDidCheckedChange.emit({ value: this.value, checked: this.checked })\n }\n }\n\n /**\n * Determina um id para o radio.\n */\n private getComputedId(): string {\n return this.customId ? this.customId : this.name\n }\n\n render() {\n return (\n <Host aria-disabled={this.disabled ? 'true' : null}>\n <div\n class={this.getCssClassMap()}\n onClick={() => this.handleClick()}\n onKeyDown={(event) => this.handleKeyDown(event)}\n >\n <input\n aria-label={this.label}\n type=\"radio\"\n id={this.getComputedId()}\n name={this.name}\n checked={this.checked}\n disabled={this.disabled}\n value={this.value}\n onClick={(event) => event.stopPropagation()}\n {...this.inheritedAttributes}\n />\n <label htmlFor={this.getComputedId()}>{this._slotDefault ? <slot></slot> : this.label}</label>\n </div>\n </Host>\n )\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"br-radio.entry.js","mappings":"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","names":[],"sources":["src/components/radio/radio.scss?tag=br-radio&encapsulation=shadow","src/components/radio/radio.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/radio/radio.scss\";\n\n:host {\n display: block;\n}\n\n.br-radio.hidden-label {\n label {\n padding-left: calc(var(--checkbox-size) + var(--surface-width-md)* 2);\n text-indent: -10000px;\n white-space: nowrap;\n width: 0;\n }\n}\n ","import { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Listen, Prop, State } from '@stencil/core'\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/radio?tab=designer).\n *\n * @slot default - O texto descritivo pode ser passado por propriedade (label) ou por slot.\n */\n\n@Component({\n tag: 'br-radio',\n styleUrl: 'radio.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Radio {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: 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' = null\n\n /**\n * Define se o label associado ao radio deve ser oculto.\n * Se definido como verdadeiro, o texto do label será oculto, mas o radio ainda estará visível e funcional.\n */\n @Prop({ reflect: true, attribute: 'has-hidden-label' }) hasHiddenLabel: boolean = false\n\n /**\n * Define o nome do radio, que é utilizado para agrupar radios em formulários e identificar o campo.\n * O valor é obrigatório e deve ser fornecido para garantir o correto funcionamento em formulários.\n */\n\n @Prop({ reflect: true }) name!: string\n\n /**\n * Texto descritivo exibido à direita do radio.\n * Caso um slot seja utilizado para fornecer um texto alternativo, o valor desta propriedade será ignorado.\n */\n @Prop({ reflect: true }) label: string\n\n /**\n * Define o valor associado ao radio quando ele faz parte de um formulário nativo (`<form>`).\n * Esse valor é enviado com o formulário quando o radio está selecionado.\n * **Nota:** Esta propriedade não deve ser utilizada para determinar se o radio está selecionado; para verificar o estado de seleção, use a propriedade `checked`.\n */\n @Prop({ reflect: true }) value: any\n\n /**\n * Especifica o ID do componente, que é usado para conectar o label correspondente ao radio.\n * Se não for fornecido, o ID será o mesmo valor atribuído à propriedade `name`.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string\n\n /**\n * Indica se o radio pode alternar seu estado checked\n */\n @Prop({ reflect: true }) toggle: boolean = false\n\n /**\n * Propriedade que vai guardar o valor da validação do slot\n */\n @State() _slotDefault: boolean = false\n\n // Faz a marcação do checkbox de acordo com a seleção do componente item do tipo is-interactive\n @Listen('brDidSelect', { target: 'document' })\n handleItemInteractiveSelect(event: CustomEvent) {\n // Verifica se o evento é de um pai correto\n const target = event.target as HTMLElement\n const brItem = target.closest('br-item') as HTMLElement\n\n if (brItem && this.el.parentElement?.contains(brItem)) {\n this.checked = event.detail.selected\n }\n\n event.stopPropagation()\n }\n\n /**\n * Emite um evento quando o componente é conectado ao DOM.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#connectedcallback) para mais detalhes.\n */\n @Event() brDidConnect: EventEmitter<void>\n connectedCallback() {\n this.brDidConnect.emit()\n }\n\n /**\n * Emite um evento antes que o componente seja carregado pela primeira vez.\n * Utilize este evento para realizar tarefas de inicialização antes do componente ser exibido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this.hasSlotContentDefault()\n this.brWillLoad.emit()\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n /**\n * Emite um evento após o componente ter sido carregado pela primeira vez.\n * Utilize este evento para realizar ações que devem ocorrer depois que o componente foi totalmente carregado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes.\n */\n @Event() brDidLoad: EventEmitter<void>\n componentDidLoad() {\n this.brDidLoad.emit()\n }\n\n /**\n * Emite um evento antes do componente ser renderizado.\n * Utilize este evento para preparar o componente antes de sua renderização.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillrender) para mais detalhes.\n */\n @Event() brWillRender: EventEmitter<void>\n componentWillRender() {\n this.brWillRender.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido renderizado.\n * Utilize este evento para executar ações que devem ocorrer após a renderização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidrender) para mais detalhes.\n */\n @Event() brDidRender: EventEmitter<void>\n componentDidRender() {\n this.brDidRender.emit()\n }\n\n /**\n * Emite um evento para indicar se o componente deve ser atualizado ou não.\n * Este evento é chamado antes de qualquer atualização do componente para decidir se a atualização deve prosseguir.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentshouldupdate) para mais detalhes.\n */\n @Event() brShouldUpdate: EventEmitter<void>\n componentShouldUpdate() {\n this.brShouldUpdate.emit()\n }\n\n /**\n * Emite um evento antes de o componente ser atualizado.\n * Utilize este evento para realizar ações preparatórias antes da atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillupdate) para mais detalhes.\n */\n @Event() brWillUpdate: EventEmitter<void>\n componentWillUpdate() {\n this.brWillUpdate.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido atualizado.\n * Utilize este evento para realizar ações após a atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidupdate) para mais detalhes.\n */\n @Event() brDidUpdate: EventEmitter<void>\n componentDidUpdate() {\n this.brDidUpdate.emit()\n }\n\n /**\n * Emite um evento quando o componente é desconectado do DOM.\n * Utilize este evento para realizar a limpeza ou outras ações necessárias quando o componente é removido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#disconnectedcallback) para mais detalhes.\n */\n @Event() brDidDisconnect: EventEmitter<void>\n disconnectedCallback() {\n this.brDidDisconnect.emit()\n }\n\n /**\n * Emite um evento quando o componente é associado ou removido de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formassociatedcallback) para mais detalhes.\n *\n * @param form - Dados do formulário associado.\n */\n @Event() brFormAssociatedCallback: EventEmitter<FormData>\n formAssociatedCallback(form: FormData) {\n this.brFormAssociatedCallback.emit(form)\n }\n\n /**\n * Emite um evento quando o estado `disabled` do componente muda dentro de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formdisabledcallback) para mais informações.\n *\n * @param disabled - Novo estado `disabled` do componente dentro do formulário.\n */\n @Event() brFormDisabledCallback: EventEmitter<boolean>\n formDisabledCallback(disabled: boolean) {\n this.brFormDisabledCallback.emit(disabled)\n }\n\n /**\n * Emite um evento quando um `<form>` é resetado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formresetcallback) para mais detalhes.\n */\n @Event() brFormResetCallback: EventEmitter<void>\n formResetCallback() {\n this.brFormResetCallback.emit()\n }\n\n /**\n * Emite um evento quando o navegador preenche automaticamente os campos de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formstaterestorecallback) para mais informações.\n *\n * @param state - Estado restaurado do formulário.\n * @param _mode - Modo de preenchimento automático do navegador.\n */\n @Event() brFormStateRestoreCallback: EventEmitter<[state: string, _mode: string]>\n formStateRestoreCallback(state: string, _mode: string) {\n this.brFormStateRestoreCallback.emit([state, _mode])\n }\n\n private hasSlotContentDefault(): any {\n this._slotDefault = this.el.innerHTML !== ''\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-radio': true,\n valid: this.state === 'valid',\n invalid: this.state === 'invalid',\n disabled: this.disabled,\n 'hidden-label': this.hasHiddenLabel,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n /**\n * Componente teve seu estado \"checked\" alterado\n */\n @Event() brDidCheckedChange: EventEmitter<{ value: boolean; checked: boolean }>\n\n private readonly handleClick = () => {\n this.toggleChecked()\n }\n\n private readonly handleKeyDown = (event: KeyboardEvent) => {\n // Permite alternar o estado apenas quando a tecla pressionada é 'Space'\n if (event.code === 'Space') {\n event.preventDefault() // Impede o comportamento padrão da tecla 'Space'\n this.toggleChecked()\n }\n }\n\n /**\n * Controla o comportamento de alternar o estado checked.\n */\n private readonly toggleChecked = () => {\n if (this.toggle) {\n this.checked = !this.checked\n this.brDidCheckedChange.emit({ value: this.value, checked: this.checked })\n }\n }\n\n /**\n * Determina um id para o radio.\n */\n private getComputedId(): string {\n return this.customId?.length > 0 ? this.customId : this.name\n }\n\n private readonly stopPropagation = (event: Event) => {\n event.stopPropagation()\n }\n\n render() {\n return (\n <Host aria-disabled={this.disabled ? 'true' : null}>\n <div class={this.getCssClassMap()} onClick={this.handleClick} onKeyDown={this.handleKeyDown}>\n <input\n aria-label={this.label}\n type=\"radio\"\n id={this.getComputedId()}\n name={this.name}\n checked={this.checked}\n disabled={this.disabled}\n value={this.value}\n onClick={this.stopPropagation}\n {...this.inheritedAttributes}\n />\n <label htmlFor={this.getComputedId()}>{this._slotDefault ? <slot></slot> : this.label}</label>\n </div>\n </Host>\n )\n }\n}\n"],"version":3}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-c7037515.js';
|
|
2
2
|
import { i as inheritAriaAttributes } from './inherited-attributes-c856c729.js';
|
|
3
3
|
import { v as v4 } from './v4-23648a96.js';
|
|
4
4
|
|
|
5
|
-
const switchCss = "*,*::before,*::after{box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}code{font-family:monospace;font-size:1em}small{font-size:80%}img{border-style:none}button,input{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button{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}[type=checkbox],[type=radio]{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:flex !important}.align-items-center{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{flex:1 0 0%;min-width:8.3333333333%}.col-auto{flex:0 0 auto;width:auto}.row{--grid-gutter:var(--grid-portrait-gutter);display:flex;flex-wrap:wrap;margin-left:calc(var(--grid-gutter) * -0.5);margin-right:calc(var(--grid-gutter) * -0.5)}@media (min-width: 576px){.row{--grid-gutter:var(--grid-tablet-gutter)}}@media (min-width: 992px){.row{--grid-gutter:var(--grid-tablet-gutter)}}@media (min-width: 1280px){.row{--grid-gutter:var(--grid-desktop-gutter)}}@media (min-width: 1600px){.row{--grid-gutter:var(--grid-tv-gutter)}}.mr-1{margin-right:var(--spacing-scale-half) !important}.mr-2{margin-right:var(--spacing-scale-base) !important}.mb-3{margin-bottom:var(--spacing-scale-2x) !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:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{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}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}::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,.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)}code,.code{background:var(--gray-5);border-radius:4px;color:var(--gray-80);display:inline-block;font-family:monospace;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);padding:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !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}.highlight{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}.br-switch{--switch-height:var(--switch-height-medium);--switch-width:var(--switch-width-medium);--switch-toggle-size:var(--switch-toggle-medium);--switch-icon-size:var(--switch-icon-medium);--switch-height-small:24px;--switch-height-medium:30px;--switch-height-large:36px;--switch-width-small:40px;--switch-width-medium:52px;--switch-width-large:64px;--switch-toggle-small:16px;--switch-toggle-medium:22px;--switch-toggle-large:28px;--switch-icon-small:var(--icon-size-xs);--switch-icon-medium:var(--icon-size-sm);--switch-icon-large:var(--icon-size-base);display:inline-flex;min-height:var(--switch-height);}.br-switch input{opacity:0;position:absolute}.br-switch input+label{align-items:center;color:var(--color);cursor:pointer;display:inline-flex;font-size:var(--font-size-scale-base);margin-bottom:0;position:relative}.br-switch input+label::before{background:var(--background-light);border:1px solid var(--border-color);border-radius:100em;content:\"\";height:var(--switch-height);position:absolute;width:var(--switch-width)}.br-switch input+label::after{background-color:var(--off);border-radius:50%;content:\"\";height:var(--switch-toggle-size);position:absolute;transition:all 0.3s ease-in-out;width:var(--switch-toggle-size)}.br-switch input:checked+label::after{background-color:var(--on)}.br-switch input+label{padding-right:calc(var(--spacing-scale-2x) + var(--switch-width))}.br-switch input+label:empty{padding-right:var(--switch-width)}.br-switch input+label::before{right:0}.br-switch input+label::after{right:calc(4px + var(--switch-toggle-size))}.br-switch input:checked+label::after{right:4px}.br-switch.right input+label{padding-left:calc(var(--spacing-scale-2x) + var(--switch-width));padding-right:0}.br-switch.right input+label::before{left:0}.br-switch.right input+label::after{left:4px}.br-switch.right input:checked+label::after{left:calc(var(--switch-width) - var(--switch-toggle-size) - 4px)}.br-switch.top{min-height:calc(var(--switch-height) * 2)}.br-switch.top input+label{align-items:flex-start;padding-right:0}.br-switch.top input+label::before{bottom:0;left:0}.br-switch.top input+label::after{bottom:4px;left:4px}.br-switch.top input:checked+label::after{left:calc(var(--switch-width) - var(--switch-toggle-size) - 4px)}.br-switch.small{--switch-height:var(--switch-height-small);--switch-width:var(--switch-width-small);--switch-toggle-size:var(--switch-toggle-small);--switch-icon-size:var(--switch-icon-small)}.br-switch.medium{--switch-height:var(--switch-height-medium);--switch-width:var(--switch-width-medium);--switch-toggle-size:var(--switch-toggle-medium);--switch-icon-size:var(--switch-icon-medium)}.br-switch.large{--switch-height:var(--switch-height-large);--switch-width:var(--switch-width-large);--switch-toggle-size:var(--switch-toggle-large);--switch-icon-size:var(--switch-icon-large)}.br-switch input~.switch-data{align-self:center;color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);margin-left:8px}.br-switch input~.switch-data::before{content:attr(data-disabled)}.br-switch input:checked~.switch-data{color:var(--color)}.br-switch input:checked~.switch-data::before{content:attr(data-enabled)}.br-switch.icon input+label::after{align-items:center;color:var(--color-dark);content:\"\\f00d\";display:inline-flex;font-family:\"Font Awesome 5 Free\", sans-serif;font-size:var(--switch-icon-size);font-weight:var(--font-weight-black);justify-content:center}.br-switch.icon input:checked+label::after{content:\"\\f00c\"}.br-switch input:focus-visible+label::before{border-color:var(--focus) !important;box-shadow:0 0 0 var(--surface-width-md) var(--focus);outline:none}.br-switch input:hover:not([disabled]):checked+label::before{background-image:linear-gradient(rgba(var(--on-rgb), var(--hover)), rgba(var(--on-rgb), var(--hover)))}.br-switch input:hover:not([disabled]):not(:checked)+label::before{background-image:linear-gradient(rgba(var(--off-rgb), var(--hover)), rgba(var(--off-rgb), var(--hover)))}.br-switch input:active:not([disabled]):checked+label::before{background-image:linear-gradient(rgba(var(--on-rgb), var(--pressed)), rgba(var(--on-rgb), var(--pressed)))}.br-switch input:active:not([disabled]):not(:checked)+label::before{background-image:linear-gradient(rgba(var(--off-rgb), var(--pressed)), rgba(var(--off-rgb), var(--pressed)))}.br-switch.dark-mode,.br-switch.dark-mode label{color:var(--color-dark)}:host{display:block}";
|
|
5
|
+
const switchCss = "*,*::before,*::after{box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}code{font-family:monospace;font-size:1em}small{font-size:80%}img{border-style:none}button,input,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button{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]{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:flex !important}.align-items-center{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{flex:1 0 0%;min-width:8.3333333333%}.col-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:flex;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}.mb-3{margin-bottom:var(--spacing-scale-2x) !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:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{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}::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)}code,.code{background:var(--gray-5);border-radius:4px;color:var(--gray-80);display:inline-block;font-family:monospace;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);padding:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !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) 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]+*{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-switch{--switch-height:var(--switch-height-medium);--switch-width:var(--switch-width-medium);--switch-toggle-size:var(--switch-toggle-medium);--switch-icon-size:var(--switch-icon-medium);--switch-height-small:24px;--switch-height-medium:30px;--switch-height-large:36px;--switch-width-small:40px;--switch-width-medium:52px;--switch-width-large:64px;--switch-toggle-small:16px;--switch-toggle-medium:22px;--switch-toggle-large:28px;--switch-icon-small:var(--icon-size-xs);--switch-icon-medium:var(--icon-size-sm);--switch-icon-large:var(--icon-size-base);display:inline-flex;min-height:var(--switch-height);}.br-switch input{opacity:0;position:absolute}.br-switch input+label{align-items:center;color:var(--color);cursor:pointer;display:inline-flex;font-size:var(--font-size-scale-base);margin-bottom:0;position:relative}.br-switch input+label::before{background:var(--background-light);border:1px solid var(--border-color);border-radius:100em;content:\"\";height:var(--switch-height);position:absolute;width:var(--switch-width)}.br-switch input+label::after{background-color:var(--off);border-radius:50%;content:\"\";height:var(--switch-toggle-size);position:absolute;transition:all 0.3s ease-in-out;width:var(--switch-toggle-size)}.br-switch input:checked+label::after{background-color:var(--on)}.br-switch input+label{padding-right:calc(var(--spacing-scale-2x) + var(--switch-width))}.br-switch input+label:empty{padding-right:var(--switch-width)}.br-switch input+label::before{right:0}.br-switch input+label::after{right:calc(4px + var(--switch-toggle-size))}.br-switch input:checked+label::after{right:4px}.br-switch.right input+label{padding-left:calc(var(--spacing-scale-2x) + var(--switch-width));padding-right:0}.br-switch.right input+label::before{left:0}.br-switch.right input+label::after{left:4px}.br-switch.right input:checked+label::after{left:calc(var(--switch-width) - var(--switch-toggle-size) - 4px)}.br-switch.top{min-height:calc(var(--switch-height) * 2)}.br-switch.top input+label{align-items:flex-start;padding-right:0}.br-switch.top input+label::before{bottom:0;left:0}.br-switch.top input+label::after{bottom:4px;left:4px}.br-switch.top input:checked+label::after{left:calc(var(--switch-width) - var(--switch-toggle-size) - 4px)}.br-switch.small{--switch-height:var(--switch-height-small);--switch-width:var(--switch-width-small);--switch-toggle-size:var(--switch-toggle-small);--switch-icon-size:var(--switch-icon-small)}.br-switch.medium{--switch-height:var(--switch-height-medium);--switch-width:var(--switch-width-medium);--switch-toggle-size:var(--switch-toggle-medium);--switch-icon-size:var(--switch-icon-medium)}.br-switch.large{--switch-height:var(--switch-height-large);--switch-width:var(--switch-width-large);--switch-toggle-size:var(--switch-toggle-large);--switch-icon-size:var(--switch-icon-large)}.br-switch input~.switch-data{align-self:center;color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);margin-left:8px}.br-switch input~.switch-data::before{content:attr(data-disabled)}.br-switch input:checked~.switch-data{color:var(--color)}.br-switch input:checked~.switch-data::before{content:attr(data-enabled)}.br-switch.icon input+label::after{align-items:center;color:var(--color-dark);content:\"\\f00d\";display:inline-flex;font-family:\"Font Awesome 5 Free\", sans-serif;font-size:var(--switch-icon-size);font-weight:var(--font-weight-black);justify-content:center}.br-switch.icon input:checked+label::after{content:\"\\f00c\"}.br-switch input:focus-visible+label::before{border-color:var(--focus) !important;box-shadow:0 0 0 var(--surface-width-md) var(--focus);outline:none}.br-switch input:hover:not([disabled]):checked+label::before{background-image:linear-gradient(rgba(var(--on-rgb), var(--hover)), rgba(var(--on-rgb), var(--hover)))}.br-switch input:hover:not([disabled]):not(:checked)+label::before{background-image:linear-gradient(rgba(var(--off-rgb), var(--hover)), rgba(var(--off-rgb), var(--hover)))}.br-switch input:active:not([disabled]):checked+label::before{background-image:linear-gradient(rgba(var(--on-rgb), var(--pressed)), rgba(var(--on-rgb), var(--pressed)))}.br-switch input:active:not([disabled]):not(:checked)+label::before{background-image:linear-gradient(rgba(var(--off-rgb), var(--pressed)), rgba(var(--off-rgb), var(--pressed)))}.br-switch.dark-mode,.br-switch.dark-mode label{color:var(--color-dark)}:host{display:block}";
|
|
6
6
|
const BrSwitchStyle0 = switchCss;
|
|
7
7
|
|
|
8
8
|
const Switch = class {
|
|
@@ -34,6 +34,10 @@ const Switch = class {
|
|
|
34
34
|
* Caso não seja fornecido, um ID gerado automaticamente será usado.
|
|
35
35
|
*/
|
|
36
36
|
this._idDefault = `br-switch-${v4()}`;
|
|
37
|
+
this.handleCheckedChange = (event) => {
|
|
38
|
+
this._checkedValue = event.target.checked;
|
|
39
|
+
this.brDidCheckedChange.emit(this._checkedValue);
|
|
40
|
+
};
|
|
37
41
|
this.inheritedAttributes = {};
|
|
38
42
|
this.disabled = false;
|
|
39
43
|
this.checked = false;
|
|
@@ -94,10 +98,6 @@ const Switch = class {
|
|
|
94
98
|
_hasSlotContentDefault() {
|
|
95
99
|
this._slotDefault = this.el.innerHTML !== '';
|
|
96
100
|
}
|
|
97
|
-
_handleCheckedChange(event) {
|
|
98
|
-
this._checkedValue = event.target.checked;
|
|
99
|
-
this.brDidCheckedChange.emit(this._checkedValue);
|
|
100
|
-
}
|
|
101
101
|
/**
|
|
102
102
|
* Inverte o valor da prop `checked`
|
|
103
103
|
*/
|
|
@@ -106,7 +106,8 @@ const Switch = class {
|
|
|
106
106
|
this.brDidCheckedChange.emit(this._checkedValue);
|
|
107
107
|
}
|
|
108
108
|
_getComputedId() {
|
|
109
|
-
|
|
109
|
+
var _a;
|
|
110
|
+
return ((_a = this.customId) === null || _a === void 0 ? void 0 : _a.length) > 0 ? this.customId : this._idDefault;
|
|
110
111
|
}
|
|
111
112
|
getCssClassMap() {
|
|
112
113
|
return {
|
|
@@ -119,7 +120,7 @@ const Switch = class {
|
|
|
119
120
|
};
|
|
120
121
|
}
|
|
121
122
|
render() {
|
|
122
|
-
return (h(Host, { key: '
|
|
123
|
+
return (h(Host, { key: 'c73ea35b03a02980c62a05f1f658e141eda7fc9f' }, h("div", Object.assign({ key: '5bbe6ec79b43a3a68acbdbde2ca9b55a79bb5d82', class: this.getCssClassMap() }, this.inheritedAttributes), h("input", { key: 'c4d13635f0faf10204e989731817ec5fd83e38aa', id: this._getComputedId(), type: "checkbox", name: this.name, checked: this._checkedValue, disabled: this.disabled, role: "switch", "aria-checked": this._checkedValue.toString(), "aria-disabled": this.disabled ? 'true' : null, onChange: this.handleCheckedChange }), h("label", { key: '7ac07bf9f187f11689491cefd515380aa0d6c2f2', htmlFor: this._getComputedId() }, this._slotDefault ? h("slot", null) : this.label), this.labelOn && this.labelOff && (h("div", { key: '316afcde426fa4bea73aab1675af0cbb6c067d59', class: "switch-data", "data-enabled": this.labelOn, "data-disabled": this.labelOff })))));
|
|
123
124
|
}
|
|
124
125
|
static get formAssociated() { return true; }
|
|
125
126
|
get el() { return getElement(this); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"br-switch.entry.js","mappings":"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","names":["uuidv4"],"sources":["src/components/switch/switch.scss?tag=br-switch&encapsulation=shadow","src/components/switch/switch.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/switch/switch.scss\";\n\n:host {\n display: block;\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/switch?tab=designer).\n *\n * @slot default - Descreve o que o switch faz quando a alternância estiver ativada. A label passada por slot tem precedência sobre a propriedade 'label'.\n */\n@Component({\n tag: 'br-switch',\n styleUrl: 'switch.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Switch {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Identificador único do campo de entrada.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n _idDefault = `br-switch-${uuidv4()}`\n\n /**\n * Desativa o switch, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: 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 * Especifica o ID do componente, que é usado para conectar o label correspondente ao checkbox.\n * Se não for fornecido, o ID será o mesmo valor atribuído à propriedade `name`.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string\n\n /**\n * Texto descritivo.\n * Caso um slot seja utilizado para fornecer um texto alternativo, o valor desta propriedade será ignorado.\n */\n @Prop() label: string\n\n /**\n * Posição do rótulo em relação ao switch.\n */\n @Prop({ reflect: true }) labelPosition: 'right' | 'left' | 'top' = 'left'\n\n /**\n * Texto exibido quando o switch está ativado.\n */\n @Prop({ reflect: true }) labelOn: string = null\n\n /**\n * Texto exibido quando o switch está desativado.\n */\n @Prop({ reflect: true }) labelOff: string = null\n\n /**\n * Adiciona um ícone ao switch para indicar a mudança de estado.\n */\n @Prop({ reflect: true, mutable: true }) hasIcon: boolean = false\n\n /**\n * Define o nome do switch, que é utilizado para agrupar switches 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 * Define o valor associado ao switch quando ele faz parte de um formulário nativo (`<form>`).\n * Esse valor é enviado com o formulário quando o switch está selecionado.\n * **Nota:** Esta propriedade não deve ser utilizada para determinar se o switch está selecionado; para verificar o estado de seleção, use a propriedade `checked`.\n */\n @Prop({ reflect: true }) value: string\n\n /** O ajuste da densidade consiste em aumentar ou reduzir a área de interação do switch. Quanto menor for a densidade, maior a área de interação. */\n @Prop({ reflect: true }) density: 'large' | 'medium' | 'small' = null\n\n // Propriedade interna para verificar a presença de conteúdo no slot default\n @State() _slotDefault: boolean = false\n\n @State() _checkedValue: boolean\n\n /**\n * Emite um evento quando o componente é conectado ao DOM.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#connectedcallback) para mais detalhes.\n */\n @Event() brDidConnect: EventEmitter<void>\n connectedCallback() {\n this.brDidConnect.emit()\n }\n\n /**\n * Emite um evento antes que o componente seja carregado pela primeira vez.\n * Utilize este evento para realizar tarefas de inicialização antes do componente ser exibido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this._hasSlotContentDefault()\n this._checkedValue = this.checked\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 /**\n * Disparado depois que o valor do `checked` foi alterado\n */\n @Event() brDidCheckedChange: EventEmitter<boolean>\n\n private _hasSlotContentDefault(): any {\n this._slotDefault = this.el.innerHTML !== ''\n }\n\n private _handleCheckedChange(event: Event) {\n this._checkedValue = (event.target as HTMLInputElement).checked\n this.brDidCheckedChange.emit(this._checkedValue)\n }\n\n /**\n * Inverte o valor da prop `checked`\n */\n @Method()\n async toggleChecked() {\n this._checkedValue = !this._checkedValue\n this.brDidCheckedChange.emit(this._checkedValue)\n }\n\n private _getComputedId(): string {\n return this.customId ? this.customId : this._idDefault\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-switch': true,\n icon: this.hasIcon,\n top: this.labelPosition === 'top',\n right: this.labelPosition === 'right',\n large: this.density === 'large',\n small: this.density === 'small',\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()} {...this.inheritedAttributes}>\n <input\n id={this._getComputedId()}\n type=\"checkbox\"\n name={this.name}\n checked={this._checkedValue}\n disabled={this.disabled}\n role=\"switch\"\n aria-checked={this._checkedValue.toString()}\n aria-disabled={this.disabled ? 'true' : null}\n onChange={(event) => this._handleCheckedChange(event)}\n />\n <label htmlFor={this._getComputedId()}>{this._slotDefault ? <slot></slot> : this.label}</label>\n {this.labelOn && this.labelOff && (\n <div class=\"switch-data\" data-enabled={this.labelOn} data-disabled={this.labelOff}></div>\n )}\n </div>\n </Host>\n )\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"br-switch.entry.js","mappings":"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","names":["uuidv4"],"sources":["src/components/switch/switch.scss?tag=br-switch&encapsulation=shadow","src/components/switch/switch.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/switch/switch.scss\";\n\n:host {\n display: block;\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 * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/switch?tab=designer).\n *\n * @slot default - Descreve o que o switch faz quando a alternância estiver ativada. A label passada por slot tem precedência sobre a propriedade 'label'.\n */\n@Component({\n tag: 'br-switch',\n styleUrl: 'switch.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Switch {\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: HTMLBrSwitchElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Identificador único do campo de entrada.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n private readonly _idDefault = `br-switch-${uuidv4()}`\n\n /**\n * Desativa o switch, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: 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 }) checked: boolean = false\n\n /**\n * Especifica o ID do componente, que é usado para conectar o label correspondente ao checkbox.\n * Se não for fornecido, o ID será o mesmo valor atribuído à propriedade `name`.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string\n\n /**\n * Texto descritivo.\n * Caso um slot seja utilizado para fornecer um texto alternativo, o valor desta propriedade será ignorado.\n */\n @Prop() label: string\n\n /**\n * Posição do rótulo em relação ao switch.\n */\n @Prop({ reflect: true }) labelPosition: 'right' | 'left' | 'top' = 'left'\n\n /**\n * Texto exibido quando o switch está ativado.\n */\n @Prop({ reflect: true }) labelOn: string = null\n\n /**\n * Texto exibido quando o switch está desativado.\n */\n @Prop({ reflect: true }) labelOff: string = null\n\n /**\n * Adiciona um ícone ao switch para indicar a mudança de estado.\n */\n @Prop({ reflect: true }) hasIcon: boolean = false\n\n /**\n * Define o nome do switch, que é utilizado para agrupar switches 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 * Define o valor associado ao switch quando ele faz parte de um formulário nativo (`<form>`).\n * Esse valor é enviado com o formulário quando o switch está selecionado.\n * **Nota:** Esta propriedade não deve ser utilizada para determinar se o switch está selecionado; para verificar o estado de seleção, use a propriedade `checked`.\n */\n @Prop({ reflect: true }) value: string\n\n /** O ajuste da densidade consiste em aumentar ou reduzir a área de interação do switch. Quanto menor for a densidade, maior a área de interação. */\n @Prop({ reflect: true }) density: 'large' | 'medium' | 'small' = null\n\n // Propriedade interna para verificar a presença de conteúdo no slot default\n @State() _slotDefault: boolean = false\n\n @State() _checkedValue: boolean\n\n /**\n * Emite um evento quando o componente é conectado ao DOM.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#connectedcallback) para mais detalhes.\n */\n @Event() brDidConnect: EventEmitter<void>\n connectedCallback() {\n this.brDidConnect.emit()\n }\n\n /**\n * Emite um evento antes que o componente seja carregado pela primeira vez.\n * Utilize este evento para realizar tarefas de inicialização antes do componente ser exibido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this._hasSlotContentDefault()\n this._checkedValue = this.checked\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 /**\n * Disparado depois que o valor do `checked` foi alterado\n */\n @Event() brDidCheckedChange: EventEmitter<boolean>\n\n private _hasSlotContentDefault(): any {\n this._slotDefault = this.el.innerHTML !== ''\n }\n\n private readonly handleCheckedChange = (event: Event) => {\n this._checkedValue = (event.target as HTMLInputElement).checked\n this.brDidCheckedChange.emit(this._checkedValue)\n }\n\n /**\n * Inverte o valor da prop `checked`\n */\n @Method()\n async toggleChecked() {\n this._checkedValue = !this._checkedValue\n this.brDidCheckedChange.emit(this._checkedValue)\n }\n\n private _getComputedId(): string {\n return this.customId?.length > 0 ? this.customId : this._idDefault\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-switch': true,\n icon: this.hasIcon,\n top: this.labelPosition === 'top',\n right: this.labelPosition === 'right',\n large: this.density === 'large',\n small: this.density === 'small',\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()} {...this.inheritedAttributes}>\n <input\n id={this._getComputedId()}\n type=\"checkbox\"\n name={this.name}\n checked={this._checkedValue}\n disabled={this.disabled}\n role=\"switch\"\n aria-checked={this._checkedValue.toString()}\n aria-disabled={this.disabled ? 'true' : null}\n onChange={this.handleCheckedChange}\n />\n <label htmlFor={this._getComputedId()}>{this._slotDefault ? <slot></slot> : this.label}</label>\n {this.labelOn && this.labelOff && (\n <div class=\"switch-data\" data-enabled={this.labelOn} data-disabled={this.labelOff}></div>\n )}\n </div>\n </Host>\n )\n }\n}\n"],"version":3}
|