@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
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-c7037515.js';
|
|
2
|
+
import { i as inheritAriaAttributes } from './inherited-attributes-c856c729.js';
|
|
3
|
+
import { v as v4 } from './v4-23648a96.js';
|
|
4
|
+
|
|
5
|
+
const textareaCss = "*,*::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-textarea{--textarea-padding:var(--textarea-medium);--textarea-small:var(--spacing-scale-base);--textarea-medium:var(--spacing-scale-baseh);--textarea-large:var(--spacing-scale-2x);color:var(--color)}.br-textarea label{display:inline-block;margin-bottom:var(--spacing-scale-half)}.br-textarea textarea{background:var(--background-light);border:1px solid var(--border-color-alternative);border-radius:6px;color:var(--color);display:block;font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);padding:var(--textarea-padding);width:100%}.br-textarea.small textarea{--textarea-padding:var(--textarea-small)}.br-textarea.medium textarea{--textarea-padding:var(--textarea-medium)}.br-textarea.large textarea{--textarea-padding:var(--textarea-large)}.br-textarea.success textarea{border-color:var(--success);border-width:2px}.br-textarea.danger textarea{border-color:var(--danger);border-width:2px}.br-textarea.warning textarea{border-color:var(--warning);border-width:2px}.br-textarea.info textarea{border-color:var(--info);border-width:2px}.br-textarea textarea:focus,.br-textarea textarea:focus-visible{border-color:var(--focus) !important;box-shadow:0 0 0 var(--surface-width-md) var(--focus);outline:none}.br-textarea textarea:hover:not(:disabled):hover{background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-textarea.dark-mode,.br-textarea.dark-mode label{--color:var(--color-dark);--focus-color:var(--focus-color-dark)}.br-textarea.dark-mode textarea{color:var(--color-light)}:host{display:block;box-sizing:border-box;font-family:Rawline, Raleway, sans-serif}";
|
|
6
|
+
const BrTextareaStyle0 = textareaCss;
|
|
7
|
+
|
|
8
|
+
var Density;
|
|
9
|
+
(function (Density) {
|
|
10
|
+
Density["Small"] = "small";
|
|
11
|
+
Density["Medium"] = "medium";
|
|
12
|
+
Density["Large"] = "large";
|
|
13
|
+
})(Density || (Density = {}));
|
|
14
|
+
var States;
|
|
15
|
+
(function (States) {
|
|
16
|
+
States["Danger"] = "danger";
|
|
17
|
+
States["Success"] = "success";
|
|
18
|
+
States["Warning"] = "warning";
|
|
19
|
+
})(States || (States = {}));
|
|
20
|
+
const Textarea = class {
|
|
21
|
+
constructor(hostRef) {
|
|
22
|
+
registerInstance(this, hostRef);
|
|
23
|
+
this.brDidConnect = createEvent(this, "brDidConnect", 7);
|
|
24
|
+
this.brWillLoad = createEvent(this, "brWillLoad", 7);
|
|
25
|
+
this.brDidLoad = createEvent(this, "brDidLoad", 7);
|
|
26
|
+
this.brWillRender = createEvent(this, "brWillRender", 7);
|
|
27
|
+
this.brDidRender = createEvent(this, "brDidRender", 7);
|
|
28
|
+
this.brShouldUpdate = createEvent(this, "brShouldUpdate", 7);
|
|
29
|
+
this.brWillUpdate = createEvent(this, "brWillUpdate", 7);
|
|
30
|
+
this.brDidUpdate = createEvent(this, "brDidUpdate", 7);
|
|
31
|
+
this.brDidDisconnect = createEvent(this, "brDidDisconnect", 7);
|
|
32
|
+
this.brFormAssociatedCallback = createEvent(this, "brFormAssociatedCallback", 7);
|
|
33
|
+
this.brFormDisabledCallback = createEvent(this, "brFormDisabledCallback", 7);
|
|
34
|
+
this.brFormResetCallback = createEvent(this, "brFormResetCallback", 7);
|
|
35
|
+
this.brFormStateRestoreCallback = createEvent(this, "brFormStateRestoreCallback", 7);
|
|
36
|
+
if (hostRef.$hostElement$["s-ei"]) {
|
|
37
|
+
this.elementInternals = hostRef.$hostElement$["s-ei"];
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
this.elementInternals = hostRef.$hostElement$.attachInternals();
|
|
41
|
+
hostRef.$hostElement$["s-ei"] = this.elementInternals;
|
|
42
|
+
}
|
|
43
|
+
this.inheritedAttributes = {};
|
|
44
|
+
this.value = '';
|
|
45
|
+
this.label = '';
|
|
46
|
+
this.placeholder = '';
|
|
47
|
+
this.disabled = false;
|
|
48
|
+
this.maxlength = 0;
|
|
49
|
+
this.states = null;
|
|
50
|
+
this.density = Density.Medium;
|
|
51
|
+
this.isDarkMode = false;
|
|
52
|
+
this.isLabelLeft = false;
|
|
53
|
+
this.currentLength = 0;
|
|
54
|
+
this.defaultId = `br-textarea-${v4()}`;
|
|
55
|
+
}
|
|
56
|
+
connectedCallback() {
|
|
57
|
+
this.brDidConnect.emit();
|
|
58
|
+
}
|
|
59
|
+
componentWillLoad() {
|
|
60
|
+
this.currentLength = this.value.length;
|
|
61
|
+
this.brWillLoad.emit();
|
|
62
|
+
this.inheritedAttributes = inheritAriaAttributes(this.el);
|
|
63
|
+
}
|
|
64
|
+
componentDidLoad() {
|
|
65
|
+
this.brDidLoad.emit();
|
|
66
|
+
}
|
|
67
|
+
componentWillRender() {
|
|
68
|
+
this.brWillRender.emit();
|
|
69
|
+
}
|
|
70
|
+
componentDidRender() {
|
|
71
|
+
this.brDidRender.emit();
|
|
72
|
+
}
|
|
73
|
+
componentShouldUpdate() {
|
|
74
|
+
this.brShouldUpdate.emit();
|
|
75
|
+
}
|
|
76
|
+
componentWillUpdate() {
|
|
77
|
+
this.brWillUpdate.emit();
|
|
78
|
+
}
|
|
79
|
+
componentDidUpdate() {
|
|
80
|
+
this.brDidUpdate.emit();
|
|
81
|
+
}
|
|
82
|
+
disconnectedCallback() {
|
|
83
|
+
this.brDidDisconnect.emit();
|
|
84
|
+
}
|
|
85
|
+
formAssociatedCallback(form) {
|
|
86
|
+
this.brFormAssociatedCallback.emit(form);
|
|
87
|
+
}
|
|
88
|
+
formDisabledCallback(disabled) {
|
|
89
|
+
this.brFormDisabledCallback.emit(disabled);
|
|
90
|
+
}
|
|
91
|
+
formResetCallback() {
|
|
92
|
+
this.brFormResetCallback.emit();
|
|
93
|
+
}
|
|
94
|
+
formStateRestoreCallback(state, _mode) {
|
|
95
|
+
this.brFormStateRestoreCallback.emit([state, _mode]);
|
|
96
|
+
}
|
|
97
|
+
valueChanged() {
|
|
98
|
+
this.currentLength = this.value.length;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Manipula a mudança de valor do textarea. Atualiza o valor e emite um evento de mudança.
|
|
102
|
+
* @param event - O evento de entrada do textarea.
|
|
103
|
+
*/
|
|
104
|
+
handleChange(event) {
|
|
105
|
+
const textarea = event.target;
|
|
106
|
+
this.value = textarea.value;
|
|
107
|
+
this.currentLength = this.value.length;
|
|
108
|
+
this.emitValueChange();
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Define um novo valor para o textarea.
|
|
112
|
+
* @param newValue - O novo valor a ser definido.
|
|
113
|
+
*/
|
|
114
|
+
async setValue(newValue) {
|
|
115
|
+
this.value = newValue;
|
|
116
|
+
this.currentLength = this.value.length;
|
|
117
|
+
this.emitValueChange();
|
|
118
|
+
}
|
|
119
|
+
emitValueChange() {
|
|
120
|
+
const changeEvent = new CustomEvent('valueChange', {
|
|
121
|
+
detail: { value: this.value },
|
|
122
|
+
bubbles: true,
|
|
123
|
+
composed: true,
|
|
124
|
+
});
|
|
125
|
+
this.el.dispatchEvent(changeEvent);
|
|
126
|
+
}
|
|
127
|
+
getCssClassMap() {
|
|
128
|
+
return {
|
|
129
|
+
'br-textarea': true,
|
|
130
|
+
'dark-mode': this.isDarkMode,
|
|
131
|
+
small: this.density === Density.Small,
|
|
132
|
+
medium: this.density === Density.Medium,
|
|
133
|
+
large: this.density === Density.Large,
|
|
134
|
+
success: this.states === States.Success,
|
|
135
|
+
danger: this.states === States.Danger,
|
|
136
|
+
warning: this.states === States.Warning,
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
render() {
|
|
140
|
+
const caracteresRestantes = this.maxlength - this.currentLength;
|
|
141
|
+
const mostrarLimite = this.currentLength === 0;
|
|
142
|
+
return (h(Host, { key: '9aaae65f9b632e21c44a8ea4ce736d6e5e394b85' }, h("div", Object.assign({ key: '5bcc99ec860393cf7be86403fde553c12df1f3ca', class: this.getCssClassMap() }, this.inheritedAttributes), h("div", { key: 'b19610ee44e038fd69b38bbb6773f805116e99a1', class: this.isLabelLeft ? 'row' : '' }, this.isLabelLeft ? (h("div", { class: "col-auto pt-half" }, h("label", { htmlFor: this.defaultId }, this.label))) : (h("label", { htmlFor: this.defaultId }, this.label)), h("div", { key: '3af5ad0220ff70f942ba7144e662066801b695bd', class: this.isLabelLeft ? 'col' : '' }, h("textarea", Object.assign({ key: 'a0630ed64f956f5c7179738fba617dc387d1a87b', id: this.defaultId, value: this.value, placeholder: this.placeholder, disabled: this.disabled, onInput: this.handleChange.bind(this) }, (this.maxlength > 0 ? { maxLength: this.maxlength } : {}))), h("div", { key: '98c265485d7f229ea0284a77b610799037b0186b', class: "text-base mt-1" }, this.maxlength > 0 && (h("div", { key: '3edc0d76bc64ca56dfbcc548e79eb2b379d2eb0e' }, mostrarLimite ? (h("span", { class: "limit", "aria-live": "polite" }, "Limite m\u00E1ximo de ", h("strong", null, this.maxlength), " caracteres")) : (h("span", { class: "restantes", "aria-live": "polite", role: "status", id: "limitmax" }, "Restam ", h("strong", null, caracteresRestantes), " caracteres"))))), h("slot", { key: '8b41a47359ea19a8bee6e39c2b02ac65aa2cfaa1' }))))));
|
|
143
|
+
}
|
|
144
|
+
static get formAssociated() { return true; }
|
|
145
|
+
get el() { return getElement(this); }
|
|
146
|
+
static get watchers() { return {
|
|
147
|
+
"value": ["valueChanged"]
|
|
148
|
+
}; }
|
|
149
|
+
};
|
|
150
|
+
Textarea.style = BrTextareaStyle0;
|
|
151
|
+
|
|
152
|
+
export { Textarea as br_textarea };
|
|
153
|
+
|
|
154
|
+
//# sourceMappingURL=br-textarea.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"br-textarea.entry.js","mappings":"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","names":["uuidv4"],"sources":["src/components/textarea/textarea.scss?tag=br-textarea&encapsulation=shadow","src/components/textarea/textarea.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/textarea/textarea.scss\";\n:host {\n display: block;\n box-sizing: border-box;\n font-family: Rawline, Raleway, sans-serif;\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core'\n\nimport { v4 as uuidv4 } from 'uuid'\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\nenum Density {\n Small = 'small',\n Medium = 'medium',\n Large = 'large',\n}\n\nenum States {\n Danger = 'danger',\n Success = 'success',\n Warning = 'warning',\n}\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/textarea?tab=designer).\n *\n * @slot default - Espaço de conteúdo do textarea. Geralmente usado para incluir texto adicional ou instruções para o usuário.\n */\n@Component({\n tag: 'br-textarea',\n styleUrl: 'textarea.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Textarea {\n @Element() el: HTMLElement\n\n /**\n * Valor atual do textarea. Este valor pode ser alterado programaticamente.\n */\n @Prop({ mutable: true, reflect: true }) value: string = ''\n\n /**\n * Texto do rótulo associado ao textarea. Este rótulo é exibido acima do campo de entrada.\n */\n @Prop({ reflect: true }) label: string = ''\n\n /**\n * Texto exibido quando o textarea está vazio. Ajuda a guiar o usuário sobre o que deve ser inserido.\n */\n @Prop({ reflect: true }) placeholder: string = ''\n\n /**\n * Indica se o textarea está desabilitado. Quando verdadeiro, o usuário não pode interagir com o campo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Número máximo de caracteres permitidos no textarea. Se definido como 0, não há limite.\n */\n @Prop({ reflect: true }) maxlength: number = 0\n\n /**\n * Define o estado visual do componente, podendo ser 'danger', 'success' ou 'warning'.\n */\n @Prop({ reflect: true }) states: string = null\n\n /**\n * Ajusta a densidade do componente, podendo ser 'small', 'medium' ou 'large'.\n */\n @Prop({ reflect: true }) density: string = Density.Medium\n\n /**\n * Ativa o modo escuro para o componente. Quando verdadeiro, o componente será exibido em um tema escuro.\n */\n @Prop({ reflect: true }) isDarkMode: boolean = false\n\n /**\n * Define se o rótulo deve ser exibido à esquerda do textarea. Quando verdadeiro, o rótulo é posicionado à esquerda.\n */\n @Prop({ reflect: true }) isLabelLeft: boolean = false\n\n /**\n * Comprimento atual do texto no textarea. É atualizado sempre que o valor do textarea muda.\n */\n @State() currentLength: number = 0\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Identificador único do textarea, gerado automaticamente.\n * Este ID é utilizado para associar o textarea a outros elementos, como rótulos,\n * e garantir que cada instância do componente tenha um identificador distinto.\n */\n @Prop({ reflect: true }) defaultId: string = `br-textarea-${uuidv4()}`\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.currentLength = this.value.length\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 formulário associado é enviado.\n * Utilize este evento para realizar ações quando o formulário é enviado.\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 do formulário é alterado para desabilitado.\n * Utilize este evento para realizar ações quando o formulário é desabilitado.\n */\n @Event() brFormDisabledCallback: EventEmitter<boolean>\n formDisabledCallback(disabled: boolean) {\n this.brFormDisabledCallback.emit(disabled)\n }\n\n /**\n * Emite um evento quando o formulário é redefinido.\n * Utilize este evento para realizar ações quando o formulário é redefinido.\n */\n @Event() brFormResetCallback: EventEmitter<void>\n formResetCallback() {\n this.brFormResetCallback.emit()\n }\n\n /**\n * Emite um evento para restaurar o estado do formulário.\n * Utilize este evento para realizar ações quando o estado do formulário é restaurado.\n */\n @Event() brFormStateRestoreCallback: EventEmitter<[state: string, _mode: string]>\n formStateRestoreCallback(state: string, _mode: string) {\n this.brFormStateRestoreCallback.emit([state, _mode])\n }\n\n @Watch('value')\n valueChanged() {\n this.currentLength = this.value.length\n }\n\n /**\n * Manipula a mudança de valor do textarea. Atualiza o valor e emite um evento de mudança.\n * @param event - O evento de entrada do textarea.\n */\n handleChange(event: Event) {\n const textarea = event.target as HTMLTextAreaElement\n this.value = textarea.value\n this.currentLength = this.value.length\n\n this.emitValueChange()\n }\n\n /**\n * Define um novo valor para o textarea.\n * @param newValue - O novo valor a ser definido.\n */\n @Method()\n async setValue(newValue: string) {\n this.value = newValue\n this.currentLength = this.value.length\n\n this.emitValueChange()\n }\n\n private emitValueChange() {\n const changeEvent = new CustomEvent('valueChange', {\n detail: { value: this.value },\n bubbles: true,\n composed: true,\n })\n this.el.dispatchEvent(changeEvent)\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-textarea': true,\n 'dark-mode': this.isDarkMode,\n small: this.density === Density.Small,\n medium: this.density === Density.Medium,\n large: this.density === Density.Large,\n success: this.states === States.Success,\n danger: this.states === States.Danger,\n warning: this.states === States.Warning,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n render() {\n const caracteresRestantes = this.maxlength - this.currentLength\n const mostrarLimite = this.currentLength === 0\n\n return (\n <Host>\n <div class={this.getCssClassMap()} {...this.inheritedAttributes}>\n <div class={this.isLabelLeft ? 'row' : ''}>\n {this.isLabelLeft ? (\n <div class=\"col-auto pt-half\">\n <label htmlFor={this.defaultId}>{this.label}</label>\n </div>\n ) : (\n <label htmlFor={this.defaultId}>{this.label}</label>\n )}\n <div class={this.isLabelLeft ? 'col' : ''}>\n <textarea\n id={this.defaultId}\n value={this.value}\n placeholder={this.placeholder}\n disabled={this.disabled}\n onInput={this.handleChange.bind(this)}\n {...(this.maxlength > 0 ? { maxLength: this.maxlength } : {})}\n ></textarea>\n <div class=\"text-base mt-1\">\n {this.maxlength > 0 && (\n <div>\n {mostrarLimite ? (\n <span class=\"limit\" aria-live=\"polite\">\n Limite máximo de <strong>{this.maxlength}</strong> caracteres\n </span>\n ) : (\n <span class=\"restantes\" aria-live=\"polite\" role=\"status\" id=\"limitmax\">\n Restam <strong>{caracteresRestantes}</strong> caracteres\n </span>\n )}\n </div>\n )}\n </div>\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n )\n }\n}\n"],"version":3}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const NAMESPACE = 'webcomponents';
|
|
2
|
-
const BUILD = /* webcomponents */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: true, cmpDidUnload: false, cmpDidUpdate: true, cmpShouldUpdate: true, cmpWillLoad: true, cmpWillRender: true, cmpWillUpdate: true, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: true, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: true, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: true, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: true, watchCallback:
|
|
2
|
+
const BUILD = /* webcomponents */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: true, cmpDidUnload: false, cmpDidUpdate: true, cmpShouldUpdate: true, cmpWillLoad: true, cmpWillRender: true, cmpWillUpdate: true, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: true, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: true, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: true, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: true, watchCallback: true };
|
|
3
3
|
|
|
4
4
|
/*
|
|
5
5
|
Stencil Client Platform v4.21.0 | MIT Licensed | https://stenciljs.com
|
|
@@ -60,6 +60,10 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
|
|
|
60
60
|
return import(
|
|
61
61
|
/* webpackMode: "lazy" */
|
|
62
62
|
'./br-checkbox.entry.js').then(processMod, consoleError);
|
|
63
|
+
case 'br-dropdown':
|
|
64
|
+
return import(
|
|
65
|
+
/* webpackMode: "lazy" */
|
|
66
|
+
'./br-dropdown.entry.js').then(processMod, consoleError);
|
|
63
67
|
case 'br-input':
|
|
64
68
|
return import(
|
|
65
69
|
/* webpackMode: "lazy" */
|
|
@@ -88,6 +92,10 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
|
|
|
88
92
|
return import(
|
|
89
93
|
/* webpackMode: "lazy" */
|
|
90
94
|
'./br-switch.entry.js').then(processMod, consoleError);
|
|
95
|
+
case 'br-textarea':
|
|
96
|
+
return import(
|
|
97
|
+
/* webpackMode: "lazy" */
|
|
98
|
+
'./br-textarea.entry.js').then(processMod, consoleError);
|
|
91
99
|
case 'br-button_2':
|
|
92
100
|
return import(
|
|
93
101
|
/* webpackMode: "lazy" */
|
|
@@ -1225,6 +1233,7 @@ var setValue = (ref, propName, newVal, cmpMeta) => {
|
|
|
1225
1233
|
`Couldn't find host element for "${cmpMeta.$tagName$}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`
|
|
1226
1234
|
);
|
|
1227
1235
|
}
|
|
1236
|
+
const elm = hostRef.$hostElement$ ;
|
|
1228
1237
|
const oldVal = hostRef.$instanceValues$.get(propName);
|
|
1229
1238
|
const flags = hostRef.$flags$;
|
|
1230
1239
|
const instance = hostRef.$lazyInstance$ ;
|
|
@@ -1234,6 +1243,18 @@ var setValue = (ref, propName, newVal, cmpMeta) => {
|
|
|
1234
1243
|
if ((!(flags & 8 /* isConstructingInstance */) || oldVal === void 0) && didValueChange) {
|
|
1235
1244
|
hostRef.$instanceValues$.set(propName, newVal);
|
|
1236
1245
|
if (instance) {
|
|
1246
|
+
if (cmpMeta.$watchers$ && flags & 128 /* isWatchReady */) {
|
|
1247
|
+
const watchMethods = cmpMeta.$watchers$[propName];
|
|
1248
|
+
if (watchMethods) {
|
|
1249
|
+
watchMethods.map((watchMethodName) => {
|
|
1250
|
+
try {
|
|
1251
|
+
instance[watchMethodName](newVal, oldVal, propName);
|
|
1252
|
+
} catch (e) {
|
|
1253
|
+
consoleError(e, elm);
|
|
1254
|
+
}
|
|
1255
|
+
});
|
|
1256
|
+
}
|
|
1257
|
+
}
|
|
1237
1258
|
if ((flags & (2 /* hasRendered */ | 16 /* isQueuedForUpdate */)) === 2 /* hasRendered */) {
|
|
1238
1259
|
if (instance.componentShouldUpdate) {
|
|
1239
1260
|
if (instance.componentShouldUpdate(newVal, oldVal, propName) === false) {
|
|
@@ -1269,7 +1290,10 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
|
|
|
1269
1290
|
})
|
|
1270
1291
|
);
|
|
1271
1292
|
}
|
|
1272
|
-
if (cmpMeta.$members$ ||
|
|
1293
|
+
if (cmpMeta.$members$ || (cmpMeta.$watchers$ || Cstr.watchers)) {
|
|
1294
|
+
if (Cstr.watchers && !cmpMeta.$watchers$) {
|
|
1295
|
+
cmpMeta.$watchers$ = Cstr.watchers;
|
|
1296
|
+
}
|
|
1273
1297
|
const members = Object.entries((_a = cmpMeta.$members$) != null ? _a : {});
|
|
1274
1298
|
members.map(([memberName, [memberFlags]]) => {
|
|
1275
1299
|
if ((memberFlags & 31 /* Prop */ || (flags & 2 /* proxyState */) && memberFlags & 32 /* State */)) {
|
|
@@ -1363,6 +1387,9 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
|
|
|
1363
1387
|
throw new Error(`Constructor for "${cmpMeta.$tagName$}#${hostRef.$modeName$}" was not found`);
|
|
1364
1388
|
}
|
|
1365
1389
|
if (!Cstr.isProxied) {
|
|
1390
|
+
{
|
|
1391
|
+
cmpMeta.$watchers$ = Cstr.watchers;
|
|
1392
|
+
}
|
|
1366
1393
|
proxyComponent(Cstr, cmpMeta, 2 /* proxyState */);
|
|
1367
1394
|
Cstr.isProxied = true;
|
|
1368
1395
|
}
|
|
@@ -1378,6 +1405,9 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
|
|
|
1378
1405
|
{
|
|
1379
1406
|
hostRef.$flags$ &= ~8 /* isConstructingInstance */;
|
|
1380
1407
|
}
|
|
1408
|
+
{
|
|
1409
|
+
hostRef.$flags$ |= 128 /* isWatchReady */;
|
|
1410
|
+
}
|
|
1381
1411
|
endNewInstance();
|
|
1382
1412
|
fireConnectedCallback(hostRef.$lazyInstance$);
|
|
1383
1413
|
} else {
|
|
@@ -1506,6 +1536,7 @@ var bootstrapLazy = (lazyBundles, options = {}) => {
|
|
|
1506
1536
|
let hasSlotRelocation = false;
|
|
1507
1537
|
lazyBundles.map((lazyBundle) => {
|
|
1508
1538
|
lazyBundle[1].map((compactMeta) => {
|
|
1539
|
+
var _a2;
|
|
1509
1540
|
const cmpMeta = {
|
|
1510
1541
|
$flags$: compactMeta[0],
|
|
1511
1542
|
$tagName$: compactMeta[1],
|
|
@@ -1524,6 +1555,9 @@ var bootstrapLazy = (lazyBundles, options = {}) => {
|
|
|
1524
1555
|
{
|
|
1525
1556
|
cmpMeta.$attrsToReflect$ = [];
|
|
1526
1557
|
}
|
|
1558
|
+
{
|
|
1559
|
+
cmpMeta.$watchers$ = (_a2 = compactMeta[4]) != null ? _a2 : {};
|
|
1560
|
+
}
|
|
1527
1561
|
const tagName = cmpMeta.$tagName$;
|
|
1528
1562
|
const HostElement = class extends HTMLElement {
|
|
1529
1563
|
// StencilLazyHost
|
|
@@ -1649,4 +1683,4 @@ var setNonce = (nonce) => plt.$nonce$ = nonce;
|
|
|
1649
1683
|
|
|
1650
1684
|
export { Host as H, bootstrapLazy as b, createEvent as c, getElement as g, h, promiseResolve as p, registerInstance as r, setNonce as s };
|
|
1651
1685
|
|
|
1652
|
-
//# sourceMappingURL=index-
|
|
1686
|
+
//# sourceMappingURL=index-c7037515.js.map
|