@govbr-ds/webcomponents 2.0.0-next.17 → 2.0.0-next.19
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/README.md +43 -11
- package/dist/cjs/app-globals-77a217c6.js +11 -0
- package/dist/cjs/app-globals-77a217c6.js.map +1 -0
- package/dist/cjs/br-avatar.cjs.entry.js +18 -68
- package/dist/cjs/br-avatar.cjs.entry.js.map +1 -1
- package/dist/cjs/br-button_2.cjs.entry.js +13 -93
- package/dist/cjs/br-button_2.cjs.entry.js.map +1 -1
- package/dist/cjs/br-checkbox.cjs.entry.js +11 -61
- package/dist/cjs/br-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/br-dropdown.cjs.entry.js +8 -50
- package/dist/cjs/br-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/br-input.cjs.entry.js +18 -67
- package/dist/cjs/br-input.cjs.entry.js.map +1 -1
- package/dist/cjs/br-item.cjs.entry.js +9 -53
- package/dist/cjs/br-item.cjs.entry.js.map +1 -1
- package/dist/cjs/br-list.cjs.entry.js +12 -56
- package/dist/cjs/br-list.cjs.entry.js.map +1 -1
- package/dist/cjs/br-loading.cjs.entry.js +10 -40
- package/dist/cjs/br-loading.cjs.entry.js.map +1 -1
- package/dist/cjs/br-message.cjs.entry.js +10 -40
- package/dist/cjs/br-message.cjs.entry.js.map +1 -1
- package/dist/cjs/br-radio.cjs.entry.js +13 -88
- package/dist/cjs/br-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/br-switch.cjs.entry.js +13 -68
- package/dist/cjs/br-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/br-textarea.cjs.entry.js +41 -97
- package/dist/cjs/br-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/br-upload.cjs.entry.js +168 -0
- package/dist/cjs/br-upload.cjs.entry.js.map +1 -0
- package/dist/cjs/{index-a1cc4aa4.js → index-81c11ce2.js} +149 -5
- package/dist/cjs/index-81c11ce2.js.map +1 -0
- package/dist/cjs/index.cjs.js +4 -0
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/{inherited-attributes-61a2aff9.js → inherited-attributes-16f7d388.js} +5 -1
- package/dist/cjs/inherited-attributes-16f7d388.js.map +1 -0
- package/dist/cjs/loader.cjs.js +7 -3
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/cjs/{v4-c23234d2.js → v4-2a0fe526.js} +5 -1
- package/dist/cjs/v4-2a0fe526.js.map +1 -0
- package/dist/cjs/webcomponents.cjs.js +29 -4
- package/dist/cjs/webcomponents.cjs.js.map +1 -1
- package/dist/collection/collection-manifest.json +4 -3
- package/dist/collection/components/avatar/avatar.css +12 -0
- package/dist/collection/components/avatar/avatar.js +53 -187
- package/dist/collection/components/avatar/avatar.js.map +1 -1
- package/dist/collection/components/button/button.css +12 -35
- package/dist/collection/components/button/button.js +10 -257
- package/dist/collection/components/button/button.js.map +1 -1
- package/dist/collection/components/checkbox/checkbox.css +12 -0
- package/dist/collection/components/checkbox/checkbox.js +13 -262
- package/dist/collection/components/checkbox/checkbox.js.map +1 -1
- package/dist/collection/components/dropdown/dropdown.css +12 -0
- package/dist/collection/components/dropdown/dropdown.js +5 -246
- package/dist/collection/components/dropdown/dropdown.js.map +1 -1
- package/dist/collection/components/icon/icon.css +12 -0
- package/dist/collection/components/icon/icon.js +9 -168
- package/dist/collection/components/icon/icon.js.map +1 -1
- package/dist/collection/components/input/input.css +12 -0
- package/dist/collection/components/input/input.js +26 -329
- package/dist/collection/components/input/input.js.map +1 -1
- package/dist/collection/components/item/item.css +12 -0
- package/dist/collection/components/item/item.js +11 -253
- package/dist/collection/components/item/item.js.map +1 -1
- package/dist/collection/components/list/list.css +12 -0
- package/dist/collection/components/list/list.js +12 -258
- package/dist/collection/components/list/list.js.map +1 -1
- package/dist/collection/components/loading/loading.css +12 -35
- package/dist/collection/components/loading/loading.js +9 -170
- package/dist/collection/components/loading/loading.js.map +1 -1
- package/dist/collection/components/message/message.css +12 -0
- package/dist/collection/components/message/message.js +12 -170
- package/dist/collection/components/message/message.js.map +1 -1
- package/dist/collection/components/radio/radio.css +12 -0
- package/dist/collection/components/radio/radio.js +15 -289
- package/dist/collection/components/radio/radio.js.map +1 -1
- package/dist/collection/components/switch/switch.css +12 -0
- package/dist/collection/components/switch/switch.js +15 -270
- package/dist/collection/components/switch/switch.js.map +1 -1
- package/dist/collection/components/textarea/textarea.css +12 -0
- package/dist/collection/components/textarea/textarea.js +55 -323
- package/dist/collection/components/textarea/textarea.js.map +1 -1
- package/dist/collection/components/upload/upload.css +560 -0
- package/dist/collection/components/upload/upload.js +469 -0
- package/dist/collection/components/upload/upload.js.map +1 -0
- package/dist/collection/index.js +1 -1
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/pages/components/upload/index.js +19 -0
- package/dist/collection/pages/scripts/menu.js +221 -0
- package/dist/collection/pages/scripts/pageLoader.js +180 -0
- package/dist/collection/utils/inherited-attributes.js +4 -0
- package/dist/collection/utils/inherited-attributes.js.map +1 -1
- package/dist/collection/utils/interfaces.js.map +1 -1
- package/dist/collection/utils/unique-id-generator.js +4 -0
- package/dist/collection/utils/unique-id-generator.js.map +1 -1
- package/dist/components/br-avatar.js +5 -154
- package/dist/components/br-avatar.js.map +1 -1
- package/dist/components/br-button.js +5 -7
- package/dist/components/br-button.js.map +1 -1
- package/dist/components/br-checkbox.js +5 -145
- package/dist/components/br-checkbox.js.map +1 -1
- package/dist/components/br-dropdown.js +5 -155
- package/dist/components/br-dropdown.js.map +1 -1
- package/dist/components/br-icon.js +5 -7
- package/dist/components/br-icon.js.map +1 -1
- package/dist/components/br-input.js +5 -236
- package/dist/components/br-input.js.map +1 -1
- package/dist/components/br-item.js +5 -212
- package/dist/components/br-item.js.map +1 -1
- package/dist/components/br-list.js +5 -137
- package/dist/components/br-list.js.map +1 -1
- package/dist/components/br-loading.js +5 -91
- package/dist/components/br-loading.js.map +1 -1
- package/dist/components/br-message.js +5 -125
- package/dist/components/br-message.js.map +1 -1
- package/dist/components/br-radio.js +5 -173
- package/dist/components/br-radio.js.map +1 -1
- package/dist/components/br-switch.js +5 -158
- package/dist/components/br-switch.js.map +1 -1
- package/dist/components/br-textarea.js +5 -180
- package/dist/components/br-textarea.js.map +1 -1
- package/dist/components/br-upload.d.ts +11 -0
- package/dist/components/br-upload.js +6 -0
- package/dist/components/br-upload.js.map +1 -0
- package/dist/components/index.d.ts +0 -29
- package/dist/components/index.js +5 -15
- package/dist/components/index.js.map +1 -1
- package/dist/components/p-2d8e59f6.js +7 -0
- package/dist/components/p-2d8e59f6.js.map +1 -0
- package/dist/{webcomponents/p-ee6f4f3f.js → components/p-74a4eb38.js} +5 -1
- package/dist/{webcomponents/p-ee6f4f3f.js.map → components/p-74a4eb38.js.map} +1 -1
- package/dist/components/p-a23c3f6b.js +17 -0
- package/dist/components/p-a23c3f6b.js.map +1 -0
- package/dist/{webcomponents/p-14616bce.js → components/p-d5a8d30c.js} +5 -1
- package/dist/{webcomponents/p-14616bce.js.map → components/p-d5a8d30c.js.map} +1 -1
- package/dist/components/p-e4af8eac.js +6 -0
- package/dist/components/p-e4af8eac.js.map +1 -0
- package/dist/esm/app-globals-72548b13.js +9 -0
- package/dist/esm/app-globals-72548b13.js.map +1 -0
- package/dist/esm/br-avatar.entry.js +18 -68
- package/dist/esm/br-avatar.entry.js.map +1 -1
- package/dist/esm/br-button_2.entry.js +13 -93
- package/dist/esm/br-button_2.entry.js.map +1 -1
- package/dist/esm/br-checkbox.entry.js +11 -61
- package/dist/esm/br-checkbox.entry.js.map +1 -1
- package/dist/esm/br-dropdown.entry.js +8 -50
- package/dist/esm/br-dropdown.entry.js.map +1 -1
- package/dist/esm/br-input.entry.js +18 -67
- package/dist/esm/br-input.entry.js.map +1 -1
- package/dist/esm/br-item.entry.js +9 -53
- package/dist/esm/br-item.entry.js.map +1 -1
- package/dist/esm/br-list.entry.js +12 -56
- package/dist/esm/br-list.entry.js.map +1 -1
- package/dist/esm/br-loading.entry.js +10 -40
- package/dist/esm/br-loading.entry.js.map +1 -1
- package/dist/esm/br-message.entry.js +10 -40
- package/dist/esm/br-message.entry.js.map +1 -1
- package/dist/esm/br-radio.entry.js +13 -88
- package/dist/esm/br-radio.entry.js.map +1 -1
- package/dist/esm/br-switch.entry.js +13 -68
- package/dist/esm/br-switch.entry.js.map +1 -1
- package/dist/esm/br-textarea.entry.js +41 -97
- package/dist/esm/br-textarea.entry.js.map +1 -1
- package/dist/esm/br-upload.entry.js +164 -0
- package/dist/esm/br-upload.entry.js.map +1 -0
- package/dist/esm/{index-cad6e6c3.js → index-aab4a630.js} +149 -6
- package/dist/esm/index-aab4a630.js.map +1 -0
- package/dist/esm/index.js +4 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/{inherited-attributes-c856c729.js → inherited-attributes-553a7c36.js} +5 -1
- package/dist/esm/inherited-attributes-553a7c36.js.map +1 -0
- package/dist/esm/loader.js +8 -4
- package/dist/esm/loader.js.map +1 -1
- package/dist/esm/polyfills/core-js.js +11 -0
- package/dist/esm/polyfills/dom.js +79 -0
- package/dist/esm/polyfills/es5-html-element.js +1 -0
- package/dist/esm/polyfills/index.js +34 -0
- package/dist/esm/polyfills/system.js +6 -0
- package/dist/esm/{v4-23648a96.js → v4-c99c1585.js} +5 -1
- package/dist/esm/v4-c99c1585.js.map +1 -0
- package/dist/esm/webcomponents.js +30 -5
- package/dist/esm/webcomponents.js.map +1 -1
- package/dist/esm-es5/app-globals-72548b13.js +6 -0
- package/dist/esm-es5/app-globals-72548b13.js.map +1 -0
- package/dist/esm-es5/br-avatar.entry.js +6 -0
- package/dist/esm-es5/br-avatar.entry.js.map +1 -0
- package/dist/esm-es5/br-button_2.entry.js +17 -0
- package/dist/esm-es5/br-button_2.entry.js.map +1 -0
- package/dist/esm-es5/br-checkbox.entry.js +6 -0
- package/dist/esm-es5/br-checkbox.entry.js.map +1 -0
- package/dist/esm-es5/br-dropdown.entry.js +6 -0
- package/dist/esm-es5/br-dropdown.entry.js.map +1 -0
- package/dist/esm-es5/br-input.entry.js +6 -0
- package/dist/esm-es5/br-input.entry.js.map +1 -0
- package/dist/esm-es5/br-item.entry.js +6 -0
- package/dist/esm-es5/br-item.entry.js.map +1 -0
- package/dist/esm-es5/br-list.entry.js +6 -0
- package/dist/esm-es5/br-list.entry.js.map +1 -0
- package/dist/esm-es5/br-loading.entry.js +6 -0
- package/dist/esm-es5/br-loading.entry.js.map +1 -0
- package/dist/esm-es5/br-message.entry.js +6 -0
- package/dist/esm-es5/br-message.entry.js.map +1 -0
- package/dist/esm-es5/br-radio.entry.js +6 -0
- package/dist/esm-es5/br-radio.entry.js.map +1 -0
- package/dist/esm-es5/br-switch.entry.js +6 -0
- package/dist/esm-es5/br-switch.entry.js.map +1 -0
- package/dist/esm-es5/br-textarea.entry.js +6 -0
- package/dist/esm-es5/br-textarea.entry.js.map +1 -0
- package/dist/esm-es5/br-upload.entry.js +6 -0
- package/dist/esm-es5/br-upload.entry.js.map +1 -0
- package/dist/esm-es5/index-aab4a630.js +6 -0
- package/dist/esm-es5/index-aab4a630.js.map +1 -0
- package/dist/esm-es5/index.js +5 -0
- package/dist/esm-es5/index.js.map +1 -0
- package/dist/esm-es5/inherited-attributes-553a7c36.js +6 -0
- package/dist/esm-es5/inherited-attributes-553a7c36.js.map +1 -0
- package/dist/esm-es5/loader.js +6 -0
- package/dist/esm-es5/loader.js.map +1 -0
- package/dist/esm-es5/v4-c99c1585.js +6 -0
- package/dist/esm-es5/v4-c99c1585.js.map +1 -0
- package/dist/esm-es5/webcomponents.js +6 -0
- package/dist/esm-es5/webcomponents.js.map +1 -0
- package/dist/index.js +1 -1
- package/dist/playwright.config.js +39 -0
- package/dist/playwright.config.js.map +1 -0
- package/dist/types/builds/govbr-ds/bibliotecas/wbc/govbr-ds-wbc/packages/webcomponents/.stencil/playwright.config.d.ts +5 -0
- package/dist/types/components/avatar/avatar.d.ts +8 -65
- package/dist/types/components/button/button.d.ts +1 -94
- package/dist/types/components/checkbox/checkbox.d.ts +4 -97
- package/dist/types/components/dropdown/dropdown.d.ts +0 -90
- package/dist/types/components/icon/icon.d.ts +2 -64
- package/dist/types/components/input/input.d.ts +11 -109
- package/dist/types/components/item/item.d.ts +1 -92
- package/dist/types/components/list/list.d.ts +2 -94
- package/dist/types/components/loading/loading.d.ts +0 -62
- package/dist/types/components/message/message.d.ts +2 -63
- package/dist/types/components/radio/radio.d.ts +4 -105
- package/dist/types/components/switch/switch.d.ts +2 -100
- package/dist/types/components/textarea/textarea.d.ts +9 -100
- package/dist/types/components/upload/upload.d.ts +160 -0
- package/dist/types/components.d.ts +209 -948
- package/dist/types/index.d.ts +10 -1
- package/dist/types/stencil-public-runtime.d.ts +6 -0
- package/dist/webcomponents/index.esm.js +4 -0
- package/dist/webcomponents/p-05343155.system.entry.js +6 -0
- package/dist/webcomponents/p-05343155.system.entry.js.map +1 -0
- package/dist/webcomponents/p-155191ea.entry.js +6 -0
- package/dist/webcomponents/p-155191ea.entry.js.map +1 -0
- package/dist/webcomponents/p-183614c8.system.entry.js +6 -0
- package/dist/webcomponents/p-183614c8.system.entry.js.map +1 -0
- package/dist/webcomponents/p-2083ff7b.entry.js +6 -0
- package/dist/webcomponents/p-2083ff7b.entry.js.map +1 -0
- package/dist/webcomponents/p-24da392a.entry.js +6 -0
- package/dist/webcomponents/p-24da392a.entry.js.map +1 -0
- package/dist/webcomponents/p-254a2b7c.js +6 -0
- package/dist/webcomponents/{p-e1255160.js.map → p-254a2b7c.js.map} +1 -1
- package/dist/webcomponents/p-28aa7e4d.system.entry.js +6 -0
- package/dist/webcomponents/p-28aa7e4d.system.entry.js.map +1 -0
- package/dist/webcomponents/p-2c2c8629.js +7 -0
- package/dist/webcomponents/p-2c2c8629.js.map +1 -0
- package/dist/webcomponents/p-2cc63872.system.entry.js +6 -0
- package/dist/webcomponents/p-2cc63872.system.entry.js.map +1 -0
- package/dist/webcomponents/p-2cef0b07.system.entry.js +17 -0
- package/dist/webcomponents/p-2cef0b07.system.entry.js.map +1 -0
- package/dist/webcomponents/p-34cec0b3.system.entry.js +6 -0
- package/dist/webcomponents/p-34cec0b3.system.entry.js.map +1 -0
- package/dist/webcomponents/p-3c4dea67.entry.js +6 -0
- package/dist/webcomponents/p-3c4dea67.entry.js.map +1 -0
- package/dist/webcomponents/p-3f00a196.entry.js +6 -0
- package/dist/webcomponents/p-3f00a196.entry.js.map +1 -0
- package/dist/webcomponents/p-430afeb5.system.js +7 -0
- package/dist/webcomponents/p-430afeb5.system.js.map +1 -0
- package/dist/webcomponents/p-5539ffa8.entry.js +6 -0
- package/dist/webcomponents/p-5539ffa8.entry.js.map +1 -0
- package/dist/webcomponents/p-626fe2cb.entry.js +6 -0
- package/dist/webcomponents/p-626fe2cb.entry.js.map +1 -0
- package/dist/webcomponents/p-66b81760.entry.js +17 -0
- package/dist/webcomponents/p-66b81760.entry.js.map +1 -0
- package/dist/webcomponents/p-6a8226b3.system.entry.js +6 -0
- package/dist/webcomponents/p-6a8226b3.system.entry.js.map +1 -0
- package/dist/webcomponents/p-6e286eba.system.js +6 -0
- package/dist/webcomponents/p-6e286eba.system.js.map +1 -0
- package/dist/webcomponents/p-71be2e3f.system.entry.js +6 -0
- package/dist/webcomponents/p-71be2e3f.system.entry.js.map +1 -0
- package/dist/webcomponents/p-74a4eb38.js +6 -0
- package/dist/webcomponents/p-74a4eb38.js.map +1 -0
- package/dist/webcomponents/p-7a4e1265.system.entry.js +6 -0
- package/dist/webcomponents/p-7a4e1265.system.entry.js.map +1 -0
- package/dist/webcomponents/p-8039a644.system.entry.js +6 -0
- package/dist/webcomponents/p-8039a644.system.entry.js.map +1 -0
- package/dist/webcomponents/p-842b2513.entry.js +6 -0
- package/dist/webcomponents/p-842b2513.entry.js.map +1 -0
- package/dist/webcomponents/p-90e2e623.system.js +6 -0
- package/dist/webcomponents/p-90e2e623.system.js.map +1 -0
- package/dist/webcomponents/p-a71689a5.system.js +6 -0
- package/dist/webcomponents/p-a71689a5.system.js.map +1 -0
- package/dist/webcomponents/p-ae629243.system.entry.js +6 -0
- package/dist/webcomponents/p-ae629243.system.entry.js.map +1 -0
- package/dist/webcomponents/p-b88a5d9a.system.js +6 -0
- package/dist/webcomponents/p-b88a5d9a.system.js.map +1 -0
- package/dist/webcomponents/p-b9fd2bc0.system.entry.js +6 -0
- package/dist/webcomponents/p-b9fd2bc0.system.entry.js.map +1 -0
- package/dist/webcomponents/p-d5a8d30c.js +6 -0
- package/dist/webcomponents/p-d5a8d30c.js.map +1 -0
- package/dist/webcomponents/p-dcf41d91.entry.js +6 -0
- package/dist/webcomponents/p-dcf41d91.entry.js.map +1 -0
- package/dist/webcomponents/p-e027fca2.entry.js +6 -0
- package/dist/webcomponents/p-e027fca2.entry.js.map +1 -0
- package/dist/webcomponents/p-e751c991.system.js +6 -0
- package/dist/webcomponents/p-e751c991.system.js.map +1 -0
- package/dist/webcomponents/p-e8b5b14f.entry.js +6 -0
- package/dist/webcomponents/p-e8b5b14f.entry.js.map +1 -0
- package/dist/webcomponents/p-f5e674ba.system.entry.js +6 -0
- package/dist/webcomponents/p-f5e674ba.system.entry.js.map +1 -0
- package/dist/webcomponents/p-fd6c166e.entry.js +6 -0
- package/dist/webcomponents/p-fd6c166e.entry.js.map +1 -0
- package/dist/webcomponents/webcomponents.esm.js +5 -1
- package/dist/webcomponents/webcomponents.esm.js.map +1 -1
- package/dist/webcomponents/webcomponents.js +127 -0
- package/hydrate/index.d.ts +6 -0
- package/hydrate/index.js +837 -1084
- package/hydrate/index.mjs +837 -1084
- package/loader/cdn.js +6 -1
- package/loader/index.cjs.js +6 -1
- package/loader/index.es2017.js +5 -0
- package/loader/index.js +6 -1
- package/package.json +21 -24
- package/vscode-data.json +119 -44
- package/dist/cjs/app-globals-3a1e7e63.js +0 -7
- package/dist/cjs/app-globals-3a1e7e63.js.map +0 -1
- package/dist/cjs/index-a1cc4aa4.js.map +0 -1
- package/dist/cjs/inherited-attributes-61a2aff9.js.map +0 -1
- package/dist/cjs/v4-c23234d2.js.map +0 -1
- package/dist/collection/scripts/menu.js +0 -132
- package/dist/collection/scripts/pageLoader.js +0 -64
- package/dist/collection/scripts/utils.js +0 -16
- package/dist/components/p-14616bce.js +0 -68
- package/dist/components/p-14616bce.js.map +0 -1
- package/dist/components/p-215ac56c.js +0 -2476
- package/dist/components/p-215ac56c.js.map +0 -1
- package/dist/components/p-62a01df5.js +0 -1518
- package/dist/components/p-62a01df5.js.map +0 -1
- package/dist/components/p-6eb1a607.js +0 -138
- package/dist/components/p-6eb1a607.js.map +0 -1
- package/dist/components/p-ee6f4f3f.js +0 -101
- package/dist/components/p-ee6f4f3f.js.map +0 -1
- package/dist/esm/app-globals-0f993ce5.js +0 -5
- package/dist/esm/app-globals-0f993ce5.js.map +0 -1
- package/dist/esm/index-cad6e6c3.js.map +0 -1
- package/dist/esm/inherited-attributes-c856c729.js.map +0 -1
- package/dist/esm/v4-23648a96.js.map +0 -1
- package/dist/webcomponents/p-35f43cf0.entry.js +0 -2
- package/dist/webcomponents/p-35f43cf0.entry.js.map +0 -1
- package/dist/webcomponents/p-3bbf9a07.entry.js +0 -2
- package/dist/webcomponents/p-3bbf9a07.entry.js.map +0 -1
- package/dist/webcomponents/p-70216f4a.entry.js +0 -13
- package/dist/webcomponents/p-70216f4a.entry.js.map +0 -1
- package/dist/webcomponents/p-7ef2814e.entry.js +0 -2
- package/dist/webcomponents/p-7ef2814e.entry.js.map +0 -1
- package/dist/webcomponents/p-8030cff4.entry.js +0 -2
- package/dist/webcomponents/p-8030cff4.entry.js.map +0 -1
- package/dist/webcomponents/p-80726c0b.entry.js +0 -2
- package/dist/webcomponents/p-80726c0b.entry.js.map +0 -1
- package/dist/webcomponents/p-8dfeb926.js +0 -3
- package/dist/webcomponents/p-8dfeb926.js.map +0 -1
- package/dist/webcomponents/p-9a6aecb4.entry.js +0 -2
- package/dist/webcomponents/p-9a6aecb4.entry.js.map +0 -1
- package/dist/webcomponents/p-a80407ae.entry.js +0 -2
- package/dist/webcomponents/p-a80407ae.entry.js.map +0 -1
- package/dist/webcomponents/p-a9efcaff.entry.js +0 -2
- package/dist/webcomponents/p-a9efcaff.entry.js.map +0 -1
- package/dist/webcomponents/p-c8bf074f.entry.js +0 -2
- package/dist/webcomponents/p-c8bf074f.entry.js.map +0 -1
- package/dist/webcomponents/p-d3bb77aa.entry.js +0 -2
- package/dist/webcomponents/p-d3bb77aa.entry.js.map +0 -1
- package/dist/webcomponents/p-e1255160.js +0 -2
- package/dist/webcomponents/p-e24e46e9.entry.js +0 -2
- package/dist/webcomponents/p-e24e46e9.entry.js.map +0 -1
- /package/dist/collection/pages/{button/button.js → components/button/index.js} +0 -0
- /package/dist/collection/pages/{checkbox/checkbox.js → components/checkbox/index.js} +0 -0
- /package/dist/collection/pages/{dropdown/dropdown.js → components/dropdown/index.js} +0 -0
- /package/dist/collection/pages/{icon/icon.js → components/icon/index.js} +0 -0
- /package/dist/collection/pages/{input/input.js → components/input/index.js} +0 -0
- /package/dist/collection/pages/{item/item.js → components/item/index.js} +0 -0
- /package/dist/collection/pages/{list/list.js → components/list/index.js} +0 -0
- /package/dist/collection/pages/{message/message.js → components/message/index.js} +0 -0
- /package/dist/collection/pages/{radio/radio.js → components/radio/index.js} +0 -0
- /package/dist/collection/pages/{switch/switch.js → components/switch/index.js} +0 -0
- /package/dist/collection/pages/{textarea/textarea.js → components/textarea/index.js} +0 -0
|
@@ -1,213 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const itemCss = "*,*::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}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)}.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-item{background:var(--background);--item-padding-x:var(--spacing-scale-2x);--item-padding-y:var(--spacing-scale-base);--item-padding:var(--item-padding-y) var(--item-padding-x);--focus-offset:calc(var(--focus-width) * -1);border:0;color:var(--color);display:block;font-weight:var(--font-weight);padding:var(--item-padding);text-align:left;width:100%}.br-item .row{margin-left:calc(-1 * var(--spacing-scale-base));margin-right:calc(-1 * var(--spacing-scale-base))}.br-item .row .col,.br-item .row [class*=col-]{padding-left:var(--spacing-scale-base);padding-right:var(--spacing-scale-base)}.br-item::after{clear:both;content:\"\";display:block}.br-item[data-toggle]{cursor:pointer}.br-item[data-toggle=selection]:not(:disabled):hover{background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-item>.br-checkbox:not(.hidden-label),.br-item>.br-radio:not(.hidden-label){margin-bottom:calc(var(--item-padding-y) * -1);margin-left:calc(var(--item-padding-x) * -1);margin-right:calc(var(--item-padding-x) * -1);margin-top:calc(var(--item-padding-y) * -1)}.br-item>.br-checkbox:not(.hidden-label) input+label,.br-item>.br-radio:not(.hidden-label) input+label{padding-bottom:var(--item-padding-y);padding-top:var(--item-padding-y);top:1px;width:100%}.br-item>.br-checkbox:not(.hidden-label) input+label::before,.br-item>.br-radio:not(.hidden-label) input+label::before{left:var(--item-padding-x);top:calc(var(--item-padding-y) - 1px)}.br-item>.br-checkbox:not(.hidden-label) input+label:empty,.br-item>.br-radio:not(.hidden-label) input+label:empty{left:0;top:1px}.br-item>.br-checkbox:not(.hidden-label) input:hover:not(:disabled)+label::before,.br-item>.br-radio:not(.hidden-label) input:hover:not(:disabled)+label::before{background-image:none}.br-item>.br-checkbox input:not(:indeterminate)+label{min-height:calc(var(--checkbox-size) + var(--item-padding-y) * 2)}.br-item>.br-checkbox input:not(:indeterminate)+label:not(:empty){padding-left:calc(var(--checkbox-padding) + var(--checkbox-size) + var(--item-padding-x))}.br-item>.br-checkbox input:not(:indeterminate)+label::after{left:calc(var(--item-padding-x) + 8px);top:calc(var(--item-padding-y) + 4px)}.br-item>.br-checkbox input:not(:indeterminate)+label:empty{min-height:var(--checkbox-size)}.br-item>.br-checkbox input:not(:indeterminate)+label:empty::after{left:8px;top:4px}.br-item .br-radio input+label{min-height:calc(var(--radio-size) + var(--item-padding-y) * 2);padding-left:calc(var(--spacing-scale-base) + var(--radio-size) + var(--item-padding-x))}.br-item .br-radio input+label::after{left:calc(var(--item-padding-x) + var(--radio-bullet-position));top:calc(var(--item-padding-y) + var(--radio-bullet-position) - 1px)}.br-item .br-radio input+label:empty{min-height:var(--radio-size)}.br-item .br-radio input+label:empty::after{left:var(--radio-bullet-position);top:var(--radio-bullet-position)}.br-item.highlight{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background-color:var(--selected)}.br-item.active{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background-color:var(--active);color:var(--color)}.br-item.dark-mode{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-item.dark-mode.active{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--active-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);background-color:var(--background-light);color:var(--active)}.br-item[data-toggle]:not(:disabled):hover{background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-item .content{align-items:center;display:flex}.br-item [class*=fa-]{height:16px;width:14px !important}a.br-item{color:var(--interactive)}a.br-item:not(:disabled):hover{background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a.br-item:not(:disabled):active{background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}button.br-item{background-color:transparent;color:var(--color)}button.br-item:focus{outline:none}button.br-item:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}button.br-item:not(:disabled):hover{background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}button.br-item:not(:disabled):active{background-image:linear-gradient(rgba(var(--color-rgb), var(--pressed)), rgba(var(--color-rgb), var(--pressed)))}:host{display:block}::slotted(br-checkbox){max-width:-moz-fit-content;max-width:fit-content;max-height:-moz-fit-content;max-height:fit-content}::slotted(br-radio){max-width:-moz-fit-content;max-width:fit-content;max-height:-moz-fit-content;max-height:fit-content}";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const Item = /*@__PURE__*/ proxyCustomElement(class Item extends H {
|
|
7
|
-
constructor() {
|
|
8
|
-
super();
|
|
9
|
-
this.__registerHost();
|
|
10
|
-
this.__attachShadow();
|
|
11
|
-
this.brDidClick = createEvent(this, "brDidClick", 7);
|
|
12
|
-
this.brDidSelect = createEvent(this, "brDidSelect", 7);
|
|
13
|
-
this.brDidConnect = createEvent(this, "brDidConnect", 7);
|
|
14
|
-
this.brWillLoad = createEvent(this, "brWillLoad", 7);
|
|
15
|
-
this.brDidLoad = createEvent(this, "brDidLoad", 7);
|
|
16
|
-
this.brWillRender = createEvent(this, "brWillRender", 7);
|
|
17
|
-
this.brDidRender = createEvent(this, "brDidRender", 7);
|
|
18
|
-
this.brShouldUpdate = createEvent(this, "brShouldUpdate", 7);
|
|
19
|
-
this.brWillUpdate = createEvent(this, "brWillUpdate", 7);
|
|
20
|
-
this.brDidUpdate = createEvent(this, "brDidUpdate", 7);
|
|
21
|
-
this.brDidDisconnect = createEvent(this, "brDidDisconnect", 7);
|
|
22
|
-
this.brFormAssociatedCallback = createEvent(this, "brFormAssociatedCallback", 7);
|
|
23
|
-
this.brFormDisabledCallback = createEvent(this, "brFormDisabledCallback", 7);
|
|
24
|
-
this.brFormResetCallback = createEvent(this, "brFormResetCallback", 7);
|
|
25
|
-
this.brFormStateRestoreCallback = createEvent(this, "brFormStateRestoreCallback", 7);
|
|
26
|
-
this.elementInternals = this.attachInternals();
|
|
27
|
-
this.inheritedAttributes = {};
|
|
28
|
-
this.handleClick = (event) => {
|
|
29
|
-
const clickedElement = event.target;
|
|
30
|
-
if (this.disabled) {
|
|
31
|
-
event.preventDefault();
|
|
32
|
-
event.stopPropagation();
|
|
33
|
-
}
|
|
34
|
-
if (this.isButton) {
|
|
35
|
-
this.brDidClick.emit();
|
|
36
|
-
}
|
|
37
|
-
else if (this.isInteractive && !this.isClickInsideInteractiveElement(clickedElement)) {
|
|
38
|
-
this.selectedValue = !this.selectedValue;
|
|
39
|
-
this.brDidSelect.emit({ selected: this.selectedValue });
|
|
40
|
-
this.updateCheckboxes();
|
|
41
|
-
}
|
|
42
|
-
event.stopPropagation();
|
|
43
|
-
};
|
|
44
|
-
this.disabled = false;
|
|
45
|
-
this.isActive = false;
|
|
46
|
-
this.isSelected = false;
|
|
47
|
-
this.isInteractive = false;
|
|
48
|
-
this.href = undefined;
|
|
49
|
-
this.target = undefined;
|
|
50
|
-
this.isButton = false;
|
|
51
|
-
this.type = undefined;
|
|
52
|
-
this.value = undefined;
|
|
53
|
-
this.density = undefined;
|
|
54
|
-
this.hasSlotDefault = false;
|
|
55
|
-
this.hasSlotStart = false;
|
|
56
|
-
this.hasSlotEnd = false;
|
|
57
|
-
this.selectedValue = false;
|
|
58
|
-
}
|
|
59
|
-
handleChange(event) {
|
|
60
|
-
const target = event.target;
|
|
61
|
-
if (this.el.contains(target)) {
|
|
62
|
-
this.updateItemSelectionState();
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
connectedCallback() {
|
|
66
|
-
this.brDidConnect.emit();
|
|
67
|
-
}
|
|
68
|
-
componentWillLoad() {
|
|
69
|
-
this.hasSlotContentDefault();
|
|
70
|
-
this.hasSlotStart = this.hasSlotContent('start');
|
|
71
|
-
this.hasSlotEnd = this.hasSlotContent('end');
|
|
72
|
-
this.selectedValue = this.isSelected;
|
|
73
|
-
if (this.isButton) {
|
|
74
|
-
this.type = this.type || 'button';
|
|
75
|
-
}
|
|
76
|
-
this.updateItemSelectionState();
|
|
77
|
-
this.brWillLoad.emit();
|
|
78
|
-
}
|
|
79
|
-
componentDidLoad() {
|
|
80
|
-
this.updateCheckboxes();
|
|
81
|
-
this.brDidLoad.emit();
|
|
82
|
-
}
|
|
83
|
-
componentWillRender() {
|
|
84
|
-
this.brWillRender.emit();
|
|
85
|
-
}
|
|
86
|
-
componentDidRender() {
|
|
87
|
-
this.brDidRender.emit();
|
|
88
|
-
}
|
|
89
|
-
componentShouldUpdate() {
|
|
90
|
-
this.brShouldUpdate.emit();
|
|
91
|
-
}
|
|
92
|
-
componentWillUpdate() {
|
|
93
|
-
this.brWillUpdate.emit();
|
|
94
|
-
}
|
|
95
|
-
componentDidUpdate() {
|
|
96
|
-
this.brDidUpdate.emit();
|
|
97
|
-
}
|
|
98
|
-
disconnectedCallback() {
|
|
99
|
-
this.brDidDisconnect.emit();
|
|
100
|
-
}
|
|
101
|
-
formAssociatedCallback(form) {
|
|
102
|
-
this.brFormAssociatedCallback.emit(form);
|
|
103
|
-
}
|
|
104
|
-
formDisabledCallback(disabled) {
|
|
105
|
-
this.brFormDisabledCallback.emit(disabled);
|
|
106
|
-
}
|
|
107
|
-
formResetCallback() {
|
|
108
|
-
this.brFormResetCallback.emit();
|
|
109
|
-
}
|
|
110
|
-
formStateRestoreCallback(state, _mode) {
|
|
111
|
-
this.brFormStateRestoreCallback.emit([state, _mode]);
|
|
112
|
-
}
|
|
113
|
-
hasSlotContentDefault() {
|
|
114
|
-
this.hasSlotDefault = this.el.innerHTML !== '';
|
|
115
|
-
}
|
|
116
|
-
hasSlotContent(slotName) {
|
|
117
|
-
return this.el.querySelector(`[slot="${slotName}"]`) !== null;
|
|
118
|
-
}
|
|
119
|
-
getCssClassMap() {
|
|
120
|
-
return {
|
|
121
|
-
'br-item': true,
|
|
122
|
-
disabled: this.disabled,
|
|
123
|
-
active: this.isActive,
|
|
124
|
-
selected: this.selectedValue,
|
|
125
|
-
'py-3': this.density === 'middle',
|
|
126
|
-
'py-4': this.density === 'small',
|
|
127
|
-
};
|
|
128
|
-
}
|
|
129
|
-
getTagType() {
|
|
130
|
-
var _a;
|
|
131
|
-
if (this.isButton) {
|
|
132
|
-
return 'button';
|
|
133
|
-
}
|
|
134
|
-
if (((_a = this.href) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
135
|
-
return 'a';
|
|
136
|
-
}
|
|
137
|
-
return 'div';
|
|
138
|
-
}
|
|
139
|
-
getAttributes() {
|
|
140
|
-
const TagType = this.getTagType();
|
|
141
|
-
const baseAttributes = TagType === 'button' ? { type: this.type, value: this.value } : { href: this.href, target: this.target };
|
|
142
|
-
return Object.assign(Object.assign(Object.assign({}, baseAttributes), { 'aria-disabled': this.disabled ? 'true' : null, 'aria-current': this.isActive ? 'true' : null, 'data-toggle': this.isInteractive ? 'selection' : null }), this.inheritedAttributes);
|
|
143
|
-
}
|
|
144
|
-
updateItemSelectionState() {
|
|
145
|
-
const checkboxes = Array.from(this.el.querySelectorAll('br-checkbox'));
|
|
146
|
-
const radios = Array.from(this.el.querySelectorAll('br-radio'));
|
|
147
|
-
let isAnyCheckboxChecked = false;
|
|
148
|
-
let isAnyRadioSelected = false;
|
|
149
|
-
if (checkboxes.length > 0) {
|
|
150
|
-
isAnyCheckboxChecked = checkboxes.some((cb) => cb.checked);
|
|
151
|
-
}
|
|
152
|
-
if (radios.length > 0) {
|
|
153
|
-
isAnyRadioSelected = radios.some((radio) => radio.checked);
|
|
154
|
-
}
|
|
155
|
-
this.selectedValue = isAnyCheckboxChecked || isAnyRadioSelected;
|
|
156
|
-
}
|
|
157
|
-
// Função para verificar se o clique foi dentro do slot do item.
|
|
158
|
-
isClickInsideInteractiveElement(target) {
|
|
159
|
-
const interactiveSelectors = 'br-checkbox, br-radio, br-input, br-button, br-select, br-textarea';
|
|
160
|
-
const interactiveElements = this.el.querySelectorAll(interactiveSelectors);
|
|
161
|
-
return Array.from(interactiveElements).some((el) => el.contains(target) || target === el);
|
|
162
|
-
}
|
|
163
|
-
updateCheckboxes() {
|
|
164
|
-
const checkboxes = Array.from(this.el.querySelectorAll('br-checkbox'));
|
|
165
|
-
checkboxes.forEach((checkbox) => {
|
|
166
|
-
checkbox.checked = this.selectedValue;
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
render() {
|
|
170
|
-
const TagType = this.getTagType();
|
|
171
|
-
const attributes = this.getAttributes();
|
|
172
|
-
const classList = this.getCssClassMap();
|
|
173
|
-
return (h(Host, { key: 'f81b3dfcc8a48125bad6cf90e3afed1cb1ba608d' }, h(TagType, Object.assign({ key: 'cfee9c8bdeee487a334dde46f0683f2399266ecb', class: classList }, attributes, { onClick: this.handleClick }), this.hasSlotStart || this.hasSlotEnd ? (h("div", { class: "row align-items-center" }, this.hasSlotStart && (h("div", { class: "col-auto" }, h("slot", { name: "start" }))), h("div", { class: "col" }, h("slot", null)), this.hasSlotEnd && (h("div", { class: "col-auto" }, h("slot", { name: "end" }))))) : (h("slot", null)))));
|
|
174
|
-
}
|
|
175
|
-
static get formAssociated() { return true; }
|
|
176
|
-
get el() { return this; }
|
|
177
|
-
static get style() { return BrItemStyle0; }
|
|
178
|
-
}, [65, "br-item", {
|
|
179
|
-
"disabled": [516],
|
|
180
|
-
"isActive": [516, "is-active"],
|
|
181
|
-
"isSelected": [516, "is-selected"],
|
|
182
|
-
"isInteractive": [516, "is-interactive"],
|
|
183
|
-
"href": [513],
|
|
184
|
-
"target": [513],
|
|
185
|
-
"isButton": [516, "is-button"],
|
|
186
|
-
"type": [1537],
|
|
187
|
-
"value": [513],
|
|
188
|
-
"density": [513],
|
|
189
|
-
"hasSlotDefault": [32],
|
|
190
|
-
"hasSlotStart": [32],
|
|
191
|
-
"hasSlotEnd": [32],
|
|
192
|
-
"selectedValue": [32]
|
|
193
|
-
}, [[4, "brDidCheckedChange", "handleChange"]]]);
|
|
194
|
-
function defineCustomElement$1() {
|
|
195
|
-
if (typeof customElements === "undefined") {
|
|
196
|
-
return;
|
|
197
|
-
}
|
|
198
|
-
const components = ["br-item"];
|
|
199
|
-
components.forEach(tagName => { switch (tagName) {
|
|
200
|
-
case "br-item":
|
|
201
|
-
if (!customElements.get(tagName)) {
|
|
202
|
-
customElements.define(tagName, Item);
|
|
203
|
-
}
|
|
204
|
-
break;
|
|
205
|
-
} });
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
const BrItem = Item;
|
|
209
|
-
const defineCustomElement = defineCustomElement$1;
|
|
210
|
-
|
|
211
|
-
export { BrItem, defineCustomElement };
|
|
212
|
-
|
|
1
|
+
/*!
|
|
2
|
+
* Construído com @govbr-ds/webcomponents
|
|
3
|
+
* Padrão Digital de Governo.
|
|
4
|
+
*/
|
|
5
|
+
import{p as r,H as t,d as a,h as e,c as i}from"./p-2d8e59f6.js";const o='*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}small{font-size:80%}img{border-style:none}button,input,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]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}[hidden]{display:none}.d-flex{display:-ms-flexbox !important;display:flex !important}.align-items-center{-ms-flex-align:center !important;align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter) * 0.5);padding-right:calc(var(--grid-gutter) * 0.5);width:100%}.col{-ms-flex:1 0 0%;flex:1 0 0%;min-width:8.3333333333%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.container{--grid-margin:var(--grid-portrait-margin);--grid-maxwidth:var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter:var(--grid-portrait-gutter);display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--grid-gutter) * -0.5);margin-right:calc(var(--grid-gutter) * -0.5)}@media (min-width: 576px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}}@media (min-width: 992px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media (min-width: 1280px){.container{--grid-margin:var(--grid-desktop-margin)}.row{--grid-gutter:var(--grid-desktop-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}}@media (min-width: 1600px){.container{--grid-margin:var(--grid-tv-margin)}.row{--grid-gutter:var(--grid-tv-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mr-2{margin-right:var(--spacing-scale-base) !important}.mr-n2{margin-right:calc(var(--spacing-scale-base) * -1) !important}.mb-3{margin-bottom:var(--spacing-scale-2x) !important}.mr-auto{margin-right:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}.py-3{padding-bottom:var(--spacing-scale-2x) !important;padding-top:var(--spacing-scale-2x) !important}.py-4{padding-bottom:var(--spacing-scale-3x) !important;padding-top:var(--spacing-scale-3x) !important}body{--bg-color:var(--background);--bg-color-rgb:var(--background-rgb);--bg-color-hsl:var(--background-hsl);--font-size:var(--font-size-scale-base);--font-weight:var(--font-weight-regular);--link-color:var(--interactive);--link-color-rgb:var(--interactive-rgb);--link-color-hsl:var(--interactive-hsl);--line-height:var(--font-line-height-medium);--text-color:var(--color);--text-color-rgb:var(--color-rgb);--text-color-hsl:var(--color-hsl);background:var(--bg-color);color:var(--text-color);font-family:var(--font-family-base);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height)}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media (min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset:var(--spacing-scale-half);color:var(--interactive);text-decoration:none}a:focus{outline:none}a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}button{cursor:pointer}img{max-width:100%;vertical-align:middle}ul{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}::-moz-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-webkit-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}:-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !important}.text-primary-default{color:var(--color-primary-default) !important}.bg-support-01{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background:var(--color-support-01) !important}.text-nowrap{white-space:nowrap !important}.text-base{font-size:var(--font-size-scale-base) !important}.highlight{background:var(--status-highlight-background) -webkit-gradient(linear, left top, left bottom, from(var(--status-highlight-overlay)), to(var(--status-highlight-overlay)));background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{-webkit-box-shadow:var(--surface-shadow-sm);box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown .br-item{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--color-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);--item-padding-y:var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-item{background:var(--background);--item-padding-x:var(--spacing-scale-2x);--item-padding-y:var(--spacing-scale-base);--item-padding:var(--item-padding-y) var(--item-padding-x);--focus-offset:calc(var(--focus-width) * -1);border:0;color:var(--color);display:block;font-weight:var(--font-weight);padding:var(--item-padding);text-align:left;width:100%}.br-item .row{margin-left:calc(-1 * var(--spacing-scale-base));margin-right:calc(-1 * var(--spacing-scale-base))}.br-item .row .col,.br-item .row [class*=col-]{padding-left:var(--spacing-scale-base);padding-right:var(--spacing-scale-base)}.br-item::after{clear:both;content:"";display:block}.br-item[data-toggle]{cursor:pointer}.br-item[data-toggle=selection]:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-item>.br-checkbox:not(.hidden-label),.br-item>.br-radio:not(.hidden-label){margin-bottom:calc(var(--item-padding-y) * -1);margin-left:calc(var(--item-padding-x) * -1);margin-right:calc(var(--item-padding-x) * -1);margin-top:calc(var(--item-padding-y) * -1)}.br-item>.br-checkbox:not(.hidden-label) input+label,.br-item>.br-radio:not(.hidden-label) input+label{padding-bottom:var(--item-padding-y);padding-top:var(--item-padding-y);top:1px;width:100%}.br-item>.br-checkbox:not(.hidden-label) input+label::before,.br-item>.br-radio:not(.hidden-label) input+label::before{left:var(--item-padding-x);top:calc(var(--item-padding-y) - 1px)}.br-item>.br-checkbox:not(.hidden-label) input+label:empty,.br-item>.br-radio:not(.hidden-label) input+label:empty{left:0;top:1px}.br-item>.br-checkbox:not(.hidden-label) input:hover:not(:disabled)+label::before,.br-item>.br-radio:not(.hidden-label) input:hover:not(:disabled)+label::before{background-image:none}.br-item>.br-checkbox input:not(:indeterminate)+label{min-height:calc(var(--checkbox-size) + var(--item-padding-y) * 2)}.br-item>.br-checkbox input:not(:indeterminate)+label:not(:empty){padding-left:calc(var(--checkbox-padding) + var(--checkbox-size) + var(--item-padding-x))}.br-item>.br-checkbox input:not(:indeterminate)+label::after{left:calc(var(--item-padding-x) + 8px);top:calc(var(--item-padding-y) + 4px)}.br-item>.br-checkbox input:not(:indeterminate)+label:empty{min-height:var(--checkbox-size)}.br-item>.br-checkbox input:not(:indeterminate)+label:empty::after{left:8px;top:4px}.br-item .br-radio input+label{min-height:calc(var(--radio-size) + var(--item-padding-y) * 2);padding-left:calc(var(--spacing-scale-base) + var(--radio-size) + var(--item-padding-x))}.br-item .br-radio input+label::after{left:calc(var(--item-padding-x) + var(--radio-bullet-position));top:calc(var(--item-padding-y) + var(--radio-bullet-position) - 1px)}.br-item .br-radio input+label:empty{min-height:var(--radio-size)}.br-item .br-radio input+label:empty::after{left:var(--radio-bullet-position);top:var(--radio-bullet-position)}.br-item.highlight{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background-color:var(--selected)}.br-item.active{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background-color:var(--active);color:var(--color)}.br-item.dark-mode{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-item.dark-mode.active{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--active-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);background-color:var(--background-light);color:var(--active)}.br-item[data-toggle]:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-item .content{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex}.br-item [class*=fa-]{height:16px;width:14px !important}a.br-item{color:var(--interactive)}a.br-item:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a.br-item:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}button.br-item{background-color:transparent;color:var(--color)}button.br-item:focus{outline:none}button.br-item:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}button.br-item:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}button.br-item:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--pressed))), to(rgba(var(--color-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--color-rgb), var(--pressed)), rgba(var(--color-rgb), var(--pressed)))}:host{display:block}::slotted(br-checkbox){max-width:-moz-fit-content;max-width:-webkit-fit-content;max-width:fit-content;max-height:-moz-fit-content;max-height:-webkit-fit-content;max-height:fit-content}::slotted(br-radio){max-width:-moz-fit-content;max-width:-webkit-fit-content;max-width:fit-content;max-height:-moz-fit-content;max-height:-webkit-fit-content;max-height:fit-content}';const n=o;const l=r(class r extends t{constructor(){super();this.__registerHost();this.__attachShadow();this.brDidClick=a(this,"brDidClick",7);this.brDidSelect=a(this,"brDidSelect",7);this.elementInternals=this.attachInternals();this.inheritedAttributes={};this.handleClick=r=>{const t=r.target;if(this.disabled){r.preventDefault();r.stopPropagation()}if(this.isButton){this.brDidClick.emit()}else if(this.isInteractive&&!this.isClickInsideInteractiveElement(t)){this.selectedValue=!this.selectedValue;this.brDidSelect.emit({selected:this.selectedValue});this.updateCheckboxes()}r.stopPropagation()};this.disabled=false;this.isActive=false;this.isSelected=false;this.isInteractive=false;this.href=undefined;this.target=undefined;this.isButton=false;this.type=undefined;this.value=undefined;this.density="medium";this.hasSlotDefault=false;this.hasSlotStart=false;this.hasSlotEnd=false;this.selectedValue=false}handleChange(r){const t=r.target;if(this.el.contains(t)){this.updateItemSelectionState()}}componentWillLoad(){this.hasSlotContentDefault();this.hasSlotStart=this.hasSlotContent("start");this.hasSlotEnd=this.hasSlotContent("end");this.selectedValue=this.isSelected;if(this.isButton){this.type=this.type||"button"}this.updateItemSelectionState()}componentDidLoad(){this.updateCheckboxes()}hasSlotContentDefault(){this.hasSlotDefault=this.el.innerHTML!==""}hasSlotContent(r){return this.el.querySelector(`[slot="${r}"]`)!==null}getCssClassMap(){return{"br-item":true,disabled:this.disabled,active:this.isActive,selected:this.selectedValue,"py-3":this.density==="medium","py-4":this.density==="small"}}getTagType(){var r;if(this.isButton){return"button"}if(((r=this.href)===null||r===void 0?void 0:r.length)>0){return"a"}return"div"}getAttributes(){const r=this.getTagType();const t=r==="button"?{type:this.type,value:this.value}:{href:this.href,target:this.target};return Object.assign(Object.assign(Object.assign({},t),{"aria-disabled":this.disabled?"true":null,"aria-current":this.isActive?"true":null,"data-toggle":this.isInteractive?"selection":null}),this.inheritedAttributes)}updateItemSelectionState(){const r=Array.from(this.el.querySelectorAll("br-checkbox"));const t=Array.from(this.el.querySelectorAll("br-radio"));let a=false;let e=false;if(r.length>0){a=r.some((r=>r.checked))}if(t.length>0){e=t.some((r=>r.checked))}this.selectedValue=a||e}isClickInsideInteractiveElement(r){const t="br-checkbox, br-radio, br-input, br-button, br-select, br-textarea";const a=this.el.querySelectorAll(t);return Array.from(a).some((t=>t.contains(r)||r===t))}updateCheckboxes(){const r=Array.from(this.el.querySelectorAll("br-checkbox"));r.forEach((r=>{r.checked=this.selectedValue}))}render(){const r=this.getTagType();const t=this.getAttributes();const a=this.getCssClassMap();return e(i,{key:"cd5aaacd053d2a3dcce81f2be4948a499b8165a2"},e(r,Object.assign({key:"f6987c1b45458255f4008568cbeececc8d2f5548",class:a},t,{onClick:this.handleClick}),this.hasSlotStart||this.hasSlotEnd?e("div",{class:"row align-items-center"},this.hasSlotStart&&e("div",{class:"col-auto"},e("slot",{name:"start"})),e("div",{class:"col"},e("slot",null)),this.hasSlotEnd&&e("div",{class:"col-auto"},e("slot",{name:"end"}))):e("slot",null)))}static get formAssociated(){return true}get el(){return this}static get style(){return n}},[65,"br-item",{disabled:[516],isActive:[516,"is-active"],isSelected:[516,"is-selected"],isInteractive:[516,"is-interactive"],href:[513],target:[513],isButton:[516,"is-button"],type:[1537],value:[513],density:[513],hasSlotDefault:[32],hasSlotStart:[32],hasSlotEnd:[32],selectedValue:[32]},[[4,"brDidCheckedChange","handleChange"]]]);function c(){if(typeof customElements==="undefined"){return}const r=["br-item"];r.forEach((r=>{switch(r){case"br-item":if(!customElements.get(r)){customElements.define(r,l)}break}}))}c();const s=l;const d=c;export{s as BrItem,d as defineCustomElement};
|
|
213
6
|
//# sourceMappingURL=br-item.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"br-item.js","mappings":"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","names":[],"sources":["src/components/item/item.scss?tag=br-item&encapsulation=shadow","src/components/item/item.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/item/item.scss\";\n\n:host {\n display: block;\n}\n\n::slotted(br-checkbox) {\n max-width: fit-content;\n max-height: fit-content;\n}\n\n::slotted(br-radio) {\n max-width: fit-content;\n max-height: fit-content;\n}\n","import { AttachInternals, Component, Element, Event, EventEmitter, Host, Listen, Prop, State, h } from '@stencil/core'\nimport { Attributes } 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/item?tab=designer).\n *\n * @slot default - Área de conteúdo, podendo conter qualquer componente, exceto botões primários e componentes relacionados à navegação (como carrosséis, paginações, abas, menus, etc.).\n *\n * @slot start - Área de recursos visuais, podendo conter elementos como ícones, avatares e mídias.\n *\n * @slot end - Área de recursos complementares, podendo conter componentes interativos, metadados e informações adicionais.\n */\n@Component({\n tag: 'br-item',\n styleUrl: 'item.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Item {\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: HTMLBrItemElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Desativa o item, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Indica se o item está no estado ativo.\n * Se definido como verdadeiro, o item será exibido como ativo.\n */\n @Prop({ reflect: true }) isActive: boolean = false\n\n /**\n * Indica se o item está no estado selecionado.\n * Se definido como verdadeiro, o item será exibido como selecionado.\n */\n @Prop({ reflect: true }) isSelected: boolean = false\n\n /**\n * Marca o item como interativo, permitindo que toda a superfície do item seja clicável.\n */\n @Prop({ reflect: true }) isInteractive: boolean = false\n\n /**\n * URL ou caminho para o qual o usuário será direcionado ao clicar no item. Quando definido, o item será renderizado como um link.\n */\n @Prop({ reflect: true }) href?: string\n\n /**\n * Define o alvo do link quando `href` está presente. Pode ser:\n * - `_blank` para abrir em uma nova aba,\n * - `_self` para abrir na mesma aba,\n * - `_parent` para abrir na aba pai,\n * - `_top` para abrir na aba superior.\n */\n @Prop({ reflect: true }) target?: '_blank' | '_self' | '_parent' | '_top'\n\n /**\n * Quando definido como `true`, o item será tratado como um botão.\n */\n @Prop({ reflect: true }) isButton: boolean = false\n\n /**\n * Tipo do botão, aplicável apenas se `isButton` for `true`. Pode ser:\n * - `'submit'` para enviar um formulário,\n * - `'reset'` para redefinir um formulário,\n * - `'button'` para um botão padrão.\n */\n @Prop({ reflect: true, mutable: true }) type: 'submit' | 'reset' | 'button'\n\n /**\n * Define um valor associado ao br-item quando renderizado como um botão, utilizado em contextos de formulário.\n */\n @Prop({ reflect: true }) value?: string\n\n /**\n * Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido.\n */\n @Prop({ reflect: true }) density: 'large' | 'middle' | 'small'\n\n // Propriedade interna para verificar a presença de conteúdo no slot default\n @State() hasSlotDefault: boolean = false\n\n @State() hasSlotStart: boolean = false\n\n @State() hasSlotEnd: boolean = false\n\n // Propriedade interna para armazenar o valor selecionado\n @State() selectedValue: boolean = false\n\n @Listen('brDidCheckedChange', { target: 'document' })\n handleChange(event: Event) {\n const target = event.target as HTMLElement\n\n if (this.el.contains(target)) {\n this.updateItemSelectionState()\n }\n }\n\n /**\n * Evento customizado emitido quando o item é clicado, aplicável apenas se o item for um botão (`<button>`).\n * Pode ser utilizado para ações personalizadas, exceto quando o item está desativado.\n */\n @Event({ composed: true, cancelable: true, bubbles: true }) brDidClick: EventEmitter\n\n /**\n * Evento customizado aplicável para todos os tipos de elementos (`div`, `button`, `a`), emitido quando o item é selecionado e desde que a propriedade `isInteractive` esteja presente.\n */\n @Event({ bubbles: true, composed: true }) brDidSelect: EventEmitter<{ selected: 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.hasSlotStart = this.hasSlotContent('start')\n this.hasSlotEnd = this.hasSlotContent('end')\n this.selectedValue = this.isSelected\n if (this.isButton) {\n this.type = this.type || 'button'\n }\n this.updateItemSelectionState()\n this.brWillLoad.emit()\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.updateCheckboxes()\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.hasSlotDefault = this.el.innerHTML !== ''\n }\n\n private hasSlotContent(slotName: string): boolean {\n return this.el.querySelector(`[slot=\"${slotName}\"]`) !== null\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-item': true,\n disabled: this.disabled,\n active: this.isActive,\n selected: this.selectedValue,\n 'py-3': this.density === 'middle',\n 'py-4': this.density === 'small',\n }\n }\n\n private readonly inheritedAttributes: Attributes = {}\n\n private getTagType(): string {\n if (this.isButton) {\n return 'button'\n }\n if (this.href?.length > 0) {\n return 'a'\n }\n return 'div'\n }\n\n private getAttributes() {\n const TagType = this.getTagType()\n const baseAttributes =\n TagType === 'button' ? { type: this.type, value: this.value } : { href: this.href, target: this.target }\n\n return {\n ...baseAttributes,\n 'aria-disabled': this.disabled ? 'true' : null,\n 'aria-current': this.isActive ? 'true' : null,\n 'data-toggle': this.isInteractive ? 'selection' : null,\n ...this.inheritedAttributes,\n }\n }\n\n private updateItemSelectionState() {\n const checkboxes = Array.from(this.el.querySelectorAll('br-checkbox'))\n const radios = Array.from(this.el.querySelectorAll('br-radio'))\n\n let isAnyCheckboxChecked = false\n let isAnyRadioSelected = false\n\n if (checkboxes.length > 0) {\n isAnyCheckboxChecked = checkboxes.some((cb) => cb.checked)\n }\n if (radios.length > 0) {\n isAnyRadioSelected = radios.some((radio) => radio.checked)\n }\n\n this.selectedValue = isAnyCheckboxChecked || isAnyRadioSelected\n }\n\n // Função para verificar se o clique foi dentro do slot do item.\n private isClickInsideInteractiveElement(target: HTMLElement): boolean {\n const interactiveSelectors = 'br-checkbox, br-radio, br-input, br-button, br-select, br-textarea'\n const interactiveElements = this.el.querySelectorAll(interactiveSelectors)\n return Array.from(interactiveElements).some((el) => el.contains(target) || target === el)\n }\n\n private updateCheckboxes() {\n const checkboxes = Array.from(this.el.querySelectorAll('br-checkbox'))\n\n checkboxes.forEach((checkbox) => {\n checkbox.checked = this.selectedValue\n })\n }\n\n private readonly handleClick = (event: MouseEvent) => {\n const clickedElement = event.target as HTMLElement\n\n if (this.disabled) {\n event.preventDefault()\n event.stopPropagation()\n }\n\n if (this.isButton) {\n this.brDidClick.emit()\n } else if (this.isInteractive && !this.isClickInsideInteractiveElement(clickedElement)) {\n this.selectedValue = !this.selectedValue\n this.brDidSelect.emit({ selected: this.selectedValue })\n this.updateCheckboxes()\n }\n event.stopPropagation()\n }\n\n render() {\n const TagType = this.getTagType()\n const attributes = this.getAttributes()\n const classList = this.getCssClassMap()\n return (\n <Host>\n <TagType class={classList} {...attributes} onClick={this.handleClick}>\n {this.hasSlotStart || this.hasSlotEnd ? (\n <div class=\"row align-items-center\">\n {this.hasSlotStart && (\n <div class=\"col-auto\">\n <slot name=\"start\"></slot>\n </div>\n )}\n\n <div class=\"col\">\n <slot></slot>\n </div>\n\n {this.hasSlotEnd && (\n <div class=\"col-auto\">\n <slot name=\"end\"></slot>\n </div>\n )}\n </div>\n ) : (\n <slot></slot>\n )}\n </TagType>\n </Host>\n )\n }\n}\n"],"version":3}
|
|
1
|
+
{"version":3,"names":["itemCss","BrItemStyle0","Item","proxyCustomElement","H","this","inheritedAttributes","handleClick","event","clickedElement","target","disabled","preventDefault","stopPropagation","isButton","brDidClick","emit","isInteractive","isClickInsideInteractiveElement","selectedValue","brDidSelect","selected","updateCheckboxes","handleChange","el","contains","updateItemSelectionState","componentWillLoad","hasSlotContentDefault","hasSlotStart","hasSlotContent","hasSlotEnd","isSelected","type","componentDidLoad","hasSlotDefault","innerHTML","slotName","querySelector","getCssClassMap","active","isActive","density","getTagType","_a","href","length","getAttributes","TagType","baseAttributes","value","Object","assign","checkboxes","Array","from","querySelectorAll","radios","isAnyCheckboxChecked","isAnyRadioSelected","some","cb","checked","radio","interactiveSelectors","interactiveElements","forEach","checkbox","render","attributes","classList","h","Host","key","class","onClick","name"],"sources":["src/components/item/item.scss?tag=br-item&encapsulation=shadow","src/components/item/item.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/item/item.scss\";\n\n:host {\n display: block;\n}\n\n::slotted(br-checkbox) {\n max-width: fit-content;\n max-height: fit-content;\n}\n\n::slotted(br-radio) {\n max-width: fit-content;\n max-height: fit-content;\n}\n","import { AttachInternals, Component, Element, Event, EventEmitter, Host, Listen, Prop, State, h } from '@stencil/core'\nimport { Attributes } 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/item?tab=designer).\n *\n * @slot default - Área de conteúdo, podendo conter qualquer componente, exceto botões primários e componentes relacionados à navegação (como carrosséis, paginações, abas, menus, etc.).\n *\n * @slot start - Área de recursos visuais, podendo conter elementos como ícones, avatares e mídias.\n *\n * @slot end - Área de recursos complementares, podendo conter componentes interativos, metadados e informações adicionais.\n */\n@Component({\n tag: 'br-item',\n styleUrl: 'item.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Item {\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: HTMLBrItemElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Desativa o item, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Indica se o item está no estado ativo.\n * Se definido como verdadeiro, o item será exibido como ativo.\n */\n @Prop({ reflect: true }) isActive: boolean = false\n\n /**\n * Indica se o item está no estado selecionado.\n * Se definido como verdadeiro, o item será exibido como selecionado.\n */\n @Prop({ reflect: true }) isSelected: boolean = false\n\n /**\n * Marca o item como interativo, permitindo que toda a superfície do item seja clicável.\n */\n @Prop({ reflect: true }) isInteractive: boolean = false\n\n /**\n * URL ou caminho para o qual o usuário será direcionado ao clicar no item. Quando definido, o item será renderizado como um link.\n */\n @Prop({ reflect: true }) href?: string\n\n /**\n * Define o alvo do link quando `href` está presente. Pode ser:\n * - `_blank` para abrir em uma nova aba,\n * - `_self` para abrir na mesma aba,\n * - `_parent` para abrir na aba pai,\n * - `_top` para abrir na aba superior.\n */\n @Prop({ reflect: true }) target?: '_blank' | '_self' | '_parent' | '_top'\n\n /**\n * Quando definido como `true`, o item será tratado como um botão.\n */\n @Prop({ reflect: true }) isButton: boolean = false\n\n /**\n * Tipo do botão, aplicável apenas se `isButton` for `true`. Pode ser:\n * - `'submit'` para enviar um formulário,\n * - `'reset'` para redefinir um formulário,\n * - `'button'` para um botão padrão.\n */\n @Prop({ reflect: true, mutable: true }) type: 'submit' | 'reset' | 'button'\n\n /**\n * Define um valor associado ao br-item quando renderizado como um botão, utilizado em contextos de formulário.\n */\n @Prop({ reflect: true }) value?: string\n\n /**\n * Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido.\n */\n @Prop({ reflect: true }) density: 'large' | 'medium' | 'small' = 'medium'\n\n // Propriedade interna para verificar a presença de conteúdo no slot default\n @State() hasSlotDefault: boolean = false\n\n @State() hasSlotStart: boolean = false\n\n @State() hasSlotEnd: boolean = false\n\n // Propriedade interna para armazenar o valor selecionado\n @State() selectedValue: boolean = false\n\n @Listen('brDidCheckedChange', { target: 'document' })\n handleChange(event: Event) {\n const target = event.target as HTMLElement\n\n if (this.el.contains(target)) {\n this.updateItemSelectionState()\n }\n }\n\n /**\n * Evento customizado emitido quando o item é clicado, aplicável apenas se o item for um botão (`<button>`).\n * Pode ser utilizado para ações personalizadas, exceto quando o item está desativado.\n */\n @Event({ composed: true, cancelable: true, bubbles: true }) brDidClick: EventEmitter\n\n /**\n * Evento customizado aplicável para todos os tipos de elementos (`div`, `button`, `a`), emitido quando o item é selecionado e desde que a propriedade `isInteractive` esteja presente.\n */\n @Event({ bubbles: true, composed: true }) brDidSelect: EventEmitter<{ selected: boolean }>\n\n componentWillLoad() {\n this.hasSlotContentDefault()\n this.hasSlotStart = this.hasSlotContent('start')\n this.hasSlotEnd = this.hasSlotContent('end')\n this.selectedValue = this.isSelected\n if (this.isButton) {\n this.type = this.type || 'button'\n }\n this.updateItemSelectionState()\n }\n\n componentDidLoad() {\n this.updateCheckboxes()\n }\n\n private hasSlotContentDefault(): any {\n this.hasSlotDefault = this.el.innerHTML !== ''\n }\n\n private hasSlotContent(slotName: string): boolean {\n return this.el.querySelector(`[slot=\"${slotName}\"]`) !== null\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-item': true,\n disabled: this.disabled,\n active: this.isActive,\n selected: this.selectedValue,\n 'py-3': this.density === 'medium',\n 'py-4': this.density === 'small',\n }\n }\n\n private readonly inheritedAttributes: Attributes = {}\n\n private getTagType(): string {\n if (this.isButton) {\n return 'button'\n }\n if (this.href?.length > 0) {\n return 'a'\n }\n return 'div'\n }\n\n private getAttributes() {\n const TagType = this.getTagType()\n const baseAttributes =\n TagType === 'button' ? { type: this.type, value: this.value } : { href: this.href, target: this.target }\n\n return {\n ...baseAttributes,\n 'aria-disabled': this.disabled ? 'true' : null,\n 'aria-current': this.isActive ? 'true' : null,\n 'data-toggle': this.isInteractive ? 'selection' : null,\n ...this.inheritedAttributes,\n }\n }\n\n private updateItemSelectionState() {\n const checkboxes = Array.from(this.el.querySelectorAll('br-checkbox'))\n const radios = Array.from(this.el.querySelectorAll('br-radio'))\n\n let isAnyCheckboxChecked = false\n let isAnyRadioSelected = false\n\n if (checkboxes.length > 0) {\n isAnyCheckboxChecked = checkboxes.some((cb) => cb.checked)\n }\n if (radios.length > 0) {\n isAnyRadioSelected = radios.some((radio) => radio.checked)\n }\n\n this.selectedValue = isAnyCheckboxChecked || isAnyRadioSelected\n }\n\n // Função para verificar se o clique foi dentro do slot do item.\n private isClickInsideInteractiveElement(target: HTMLElement): boolean {\n const interactiveSelectors = 'br-checkbox, br-radio, br-input, br-button, br-select, br-textarea'\n const interactiveElements = this.el.querySelectorAll(interactiveSelectors)\n return Array.from(interactiveElements).some((el) => el.contains(target) || target === el)\n }\n\n private updateCheckboxes() {\n const checkboxes = Array.from(this.el.querySelectorAll('br-checkbox'))\n\n checkboxes.forEach((checkbox) => {\n checkbox.checked = this.selectedValue\n })\n }\n\n private readonly handleClick = (event: MouseEvent) => {\n const clickedElement = event.target as HTMLElement\n\n if (this.disabled) {\n event.preventDefault()\n event.stopPropagation()\n }\n\n if (this.isButton) {\n this.brDidClick.emit()\n } else if (this.isInteractive && !this.isClickInsideInteractiveElement(clickedElement)) {\n this.selectedValue = !this.selectedValue\n this.brDidSelect.emit({ selected: this.selectedValue })\n this.updateCheckboxes()\n }\n event.stopPropagation()\n }\n\n render() {\n const TagType = this.getTagType()\n const attributes = this.getAttributes()\n const classList = this.getCssClassMap()\n return (\n <Host>\n <TagType class={classList} {...attributes} onClick={this.handleClick}>\n {this.hasSlotStart || this.hasSlotEnd ? (\n <div class=\"row align-items-center\">\n {this.hasSlotStart && (\n <div class=\"col-auto\">\n <slot name=\"start\"></slot>\n </div>\n )}\n\n <div class=\"col\">\n <slot></slot>\n </div>\n\n {this.hasSlotEnd && (\n <div class=\"col-auto\">\n <slot name=\"end\"></slot>\n </div>\n )}\n </div>\n ) : (\n <slot></slot>\n )}\n </TagType>\n </Host>\n )\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,138 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const listCss = "*,*::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}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)}.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-list{background-color:var(--background)}.br-list.horizontal{display:flex;flex-wrap:wrap}.br-list.horizontal>.header{flex-grow:1;width:100%}.br-list.horizontal>.header+.br-divider{border-top:1px solid var(--border-color);width:100%}.br-list.horizontal>.br-item{flex:1;height:auto;min-height:56px;width:auto}.br-list.horizontal>.br-item+.br-divider{border-width:0 1px 0 0;width:1px}.br-list.horizontal[data-toggle]>.br-item,.br-list.horizontal.toggle>.br-item{display:block}.br-list .br-item{text-align:left;width:100%}.br-list .br-item>.content{align-items:var(--spacing-vertical-top);display:flex}.br-list .br-item>.content>.content{flex:1}.br-list .br-item .content:hover button.br-button{background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}.br-list .br-item[data-toggle]{cursor:pointer}.br-list .br-item[data-toggle]~.br-list .br-item{padding:var(--spacing-scale-base) var(--spacing-scale-3x)}.br-list .br-list{overflow:hidden;transition:all 400ms ease-in-out}.br-list .header{align-items:var(--spacing-vertical-center);display:flex;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-bold);justify-content:space-between;padding:var(--spacing-scale-base) var(--spacing-scale-2x)}.br-divider{--divider-size:var(--surface-width-sm);border-color:var(--border-color);border-style:solid;border-width:0;border-top-width:var(--divider-size);display:block}.br-divider.content{align-items:center;border:0;display:flex;justify-content:center}.br-divider.content::after,.br-divider.content::before{border-color:var(--border-color);border-style:solid;border-width:0;border-top-width:var(--divider-size);content:\"\";flex:1}.br-divider.content::after{margin-left:var(--spacing-scale-base)}.br-divider.content::before{margin-right:var(--spacing-scale-base)}.br-divider.vertical{align-self:stretch;border-right-width:var(--divider-size);border-top-width:0}.br-divider.vertical.content{flex-direction:column}.br-divider.vertical.content::after,.br-divider.vertical.content::before{border-right-width:var(--divider-size);border-top-width:0;margin:0}.br-divider.dark-mode{--border-color:var(--pure-0)}:host{display:block}:host .br-list.horizontal ::slotted(br-item){flex:1;height:auto;min-height:56px;width:auto}";
|
|
5
|
-
const BrListStyle0 = listCss;
|
|
6
|
-
|
|
7
|
-
const List = /*@__PURE__*/ proxyCustomElement(class List extends H {
|
|
8
|
-
constructor() {
|
|
9
|
-
super();
|
|
10
|
-
this.__registerHost();
|
|
11
|
-
this.__attachShadow();
|
|
12
|
-
this.brDidConnect = createEvent(this, "brDidConnect", 7);
|
|
13
|
-
this.brWillLoad = createEvent(this, "brWillLoad", 7);
|
|
14
|
-
this.brDidLoad = createEvent(this, "brDidLoad", 7);
|
|
15
|
-
this.brWillRender = createEvent(this, "brWillRender", 7);
|
|
16
|
-
this.brDidRender = createEvent(this, "brDidRender", 7);
|
|
17
|
-
this.brShouldUpdate = createEvent(this, "brShouldUpdate", 7);
|
|
18
|
-
this.brWillUpdate = createEvent(this, "brWillUpdate", 7);
|
|
19
|
-
this.brDidUpdate = createEvent(this, "brDidUpdate", 7);
|
|
20
|
-
this.brDidDisconnect = createEvent(this, "brDidDisconnect", 7);
|
|
21
|
-
this.brFormAssociatedCallback = createEvent(this, "brFormAssociatedCallback", 7);
|
|
22
|
-
this.brFormDisabledCallback = createEvent(this, "brFormDisabledCallback", 7);
|
|
23
|
-
this.brFormResetCallback = createEvent(this, "brFormResetCallback", 7);
|
|
24
|
-
this.brFormStateRestoreCallback = createEvent(this, "brFormStateRestoreCallback", 7);
|
|
25
|
-
this.elementInternals = this.attachInternals();
|
|
26
|
-
this.inheritedAttributes = {};
|
|
27
|
-
this.renderHeader = () => {
|
|
28
|
-
var _a;
|
|
29
|
-
if (((_a = this.listTitle) === null || _a === void 0 ? void 0 : _a.length) > 0 || this.hasSlotContent('header')) {
|
|
30
|
-
return (h("div", { class: "header" }, this.listTitle && h("div", { class: "title" }, this.listTitle), this.hasSlotContent('header') && (h("div", { class: "d-flex" }, h("slot", { name: "header" })))));
|
|
31
|
-
}
|
|
32
|
-
return null;
|
|
33
|
-
};
|
|
34
|
-
this.listTitle = undefined;
|
|
35
|
-
this.isHorizontal = false;
|
|
36
|
-
this.hideHeaderDivider = false;
|
|
37
|
-
}
|
|
38
|
-
connectedCallback() {
|
|
39
|
-
this.brDidConnect.emit();
|
|
40
|
-
}
|
|
41
|
-
componentWillLoad() {
|
|
42
|
-
this.brWillLoad.emit();
|
|
43
|
-
this.inheritedAttributes = inheritAriaAttributes(this.el);
|
|
44
|
-
}
|
|
45
|
-
componentDidLoad() {
|
|
46
|
-
if (this.isHorizontal) {
|
|
47
|
-
const slotItems = Array.from(this.el.querySelectorAll('br-item'));
|
|
48
|
-
slotItems.forEach((item) => {
|
|
49
|
-
const nextElement = item.nextElementSibling;
|
|
50
|
-
if (nextElement === null || nextElement === void 0 ? void 0 : nextElement.classList.contains('br-divider')) {
|
|
51
|
-
const divider = nextElement;
|
|
52
|
-
divider.style.borderWidth = '0 1px 0 0';
|
|
53
|
-
divider.style.width = '1px';
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
const items = Array.from(this.el.querySelectorAll('br-item'));
|
|
58
|
-
items.forEach((item) => {
|
|
59
|
-
item.setAttribute('role', 'listitem');
|
|
60
|
-
});
|
|
61
|
-
this.brDidLoad.emit();
|
|
62
|
-
}
|
|
63
|
-
componentWillRender() {
|
|
64
|
-
this.brWillRender.emit();
|
|
65
|
-
}
|
|
66
|
-
componentDidRender() {
|
|
67
|
-
this.brDidRender.emit();
|
|
68
|
-
}
|
|
69
|
-
componentShouldUpdate() {
|
|
70
|
-
this.brShouldUpdate.emit();
|
|
71
|
-
}
|
|
72
|
-
componentWillUpdate() {
|
|
73
|
-
this.brWillUpdate.emit();
|
|
74
|
-
}
|
|
75
|
-
componentDidUpdate() {
|
|
76
|
-
this.brDidUpdate.emit();
|
|
77
|
-
}
|
|
78
|
-
disconnectedCallback() {
|
|
79
|
-
this.brDidDisconnect.emit();
|
|
80
|
-
}
|
|
81
|
-
formAssociatedCallback(form) {
|
|
82
|
-
this.brFormAssociatedCallback.emit(form);
|
|
83
|
-
}
|
|
84
|
-
formDisabledCallback(disabled) {
|
|
85
|
-
this.brFormDisabledCallback.emit(disabled);
|
|
86
|
-
}
|
|
87
|
-
formResetCallback() {
|
|
88
|
-
this.brFormResetCallback.emit();
|
|
89
|
-
}
|
|
90
|
-
formStateRestoreCallback(state, _mode) {
|
|
91
|
-
this.brFormStateRestoreCallback.emit([state, _mode]);
|
|
92
|
-
}
|
|
93
|
-
getCssClassMap() {
|
|
94
|
-
return {
|
|
95
|
-
'br-list': true,
|
|
96
|
-
horizontal: this.isHorizontal,
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
hasSlotContent(slotName) {
|
|
100
|
-
return this.el.querySelector(`[slot="${slotName}"]`) !== null;
|
|
101
|
-
}
|
|
102
|
-
renderDivider() {
|
|
103
|
-
if ((this.listTitle || this.hasSlotContent('header')) && !this.hideHeaderDivider) {
|
|
104
|
-
return h("div", { class: "br-divider" });
|
|
105
|
-
}
|
|
106
|
-
return null;
|
|
107
|
-
}
|
|
108
|
-
render() {
|
|
109
|
-
return (h(Host, { key: 'bf56fd2ff3f57265a05521c8447630106f261fd9' }, h("div", Object.assign({ key: '710c166b13c9e02eb167bcfb4bfddc044469b85b', class: this.getCssClassMap() }, this.inheritedAttributes, { role: "list" }), this.renderHeader(), this.renderDivider(), h("slot", { key: 'b41329f3ecd8cd06df7c186d52ea08e42679e31f' }))));
|
|
110
|
-
}
|
|
111
|
-
static get formAssociated() { return true; }
|
|
112
|
-
get el() { return this; }
|
|
113
|
-
static get style() { return BrListStyle0; }
|
|
114
|
-
}, [65, "br-list", {
|
|
115
|
-
"listTitle": [513, "list-title"],
|
|
116
|
-
"isHorizontal": [516, "is-horizontal"],
|
|
117
|
-
"hideHeaderDivider": [516, "hide-header-divider"]
|
|
118
|
-
}]);
|
|
119
|
-
function defineCustomElement$1() {
|
|
120
|
-
if (typeof customElements === "undefined") {
|
|
121
|
-
return;
|
|
122
|
-
}
|
|
123
|
-
const components = ["br-list"];
|
|
124
|
-
components.forEach(tagName => { switch (tagName) {
|
|
125
|
-
case "br-list":
|
|
126
|
-
if (!customElements.get(tagName)) {
|
|
127
|
-
customElements.define(tagName, List);
|
|
128
|
-
}
|
|
129
|
-
break;
|
|
130
|
-
} });
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
const BrList = List;
|
|
134
|
-
const defineCustomElement = defineCustomElement$1;
|
|
135
|
-
|
|
136
|
-
export { BrList, defineCustomElement };
|
|
137
|
-
|
|
1
|
+
/*!
|
|
2
|
+
* Construído com @govbr-ds/webcomponents
|
|
3
|
+
* Padrão Digital de Governo.
|
|
4
|
+
*/
|
|
5
|
+
import{p as r,H as t,h as e,c as i}from"./p-2d8e59f6.js";import{i as a}from"./p-74a4eb38.js";const o='*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}html{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}a{background-color:transparent}strong{font-weight:bolder}small{font-size:80%}img{border-style:none}button,input,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]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}[hidden]{display:none}.d-flex{display:-ms-flexbox !important;display:flex !important}.align-items-center{-ms-flex-align:center !important;align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter) * 0.5);padding-right:calc(var(--grid-gutter) * 0.5);width:100%}.col{-ms-flex:1 0 0%;flex:1 0 0%;min-width:8.3333333333%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.container{--grid-margin:var(--grid-portrait-margin);--grid-maxwidth:var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter:var(--grid-portrait-gutter);display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--grid-gutter) * -0.5);margin-right:calc(var(--grid-gutter) * -0.5)}@media (min-width: 576px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}}@media (min-width: 992px){.container{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media (min-width: 1280px){.container{--grid-margin:var(--grid-desktop-margin)}.row{--grid-gutter:var(--grid-desktop-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}}@media (min-width: 1600px){.container{--grid-margin:var(--grid-tv-margin)}.row{--grid-gutter:var(--grid-tv-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mr-2{margin-right:var(--spacing-scale-base) !important}.mr-n2{margin-right:calc(var(--spacing-scale-base) * -1) !important}.mb-3{margin-bottom:var(--spacing-scale-2x) !important}.mr-auto{margin-right:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}.py-3{padding-bottom:var(--spacing-scale-2x) !important;padding-top:var(--spacing-scale-2x) !important}.py-4{padding-bottom:var(--spacing-scale-3x) !important;padding-top:var(--spacing-scale-3x) !important}body{--bg-color:var(--background);--bg-color-rgb:var(--background-rgb);--bg-color-hsl:var(--background-hsl);--font-size:var(--font-size-scale-base);--font-weight:var(--font-weight-regular);--link-color:var(--interactive);--link-color-rgb:var(--interactive-rgb);--link-color-hsl:var(--interactive-hsl);--line-height:var(--font-line-height-medium);--text-color:var(--color);--text-color-rgb:var(--color-rgb);--text-color-hsl:var(--color-hsl);background:var(--bg-color);color:var(--text-color);font-family:var(--font-family-base);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height)}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media (min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset:var(--spacing-scale-half);color:var(--interactive);text-decoration:none}a:focus{outline:none}a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}button{cursor:pointer}img{max-width:100%;vertical-align:middle}ul{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}::-moz-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-webkit-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}:-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !important}.text-primary-default{color:var(--color-primary-default) !important}.bg-support-01{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark);background:var(--color-support-01) !important}.text-nowrap{white-space:nowrap !important}.text-base{font-size:var(--font-size-scale-base) !important}.highlight{background:var(--status-highlight-background) -webkit-gradient(linear, left top, left bottom, from(var(--status-highlight-overlay)), to(var(--status-highlight-overlay)));background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{-webkit-box-shadow:var(--surface-shadow-sm);box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown .br-item{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--color-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);--item-padding-y:var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}.br-list{background-color:var(--background)}.br-list.horizontal{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.br-list.horizontal>.header{-ms-flex-positive:1;flex-grow:1;width:100%}.br-list.horizontal>.header+.br-divider{border-top:1px solid var(--border-color);width:100%}.br-list.horizontal>.br-item{-ms-flex:1;flex:1;height:auto;min-height:56px;width:auto}.br-list.horizontal>.br-item+.br-divider{border-width:0 1px 0 0;width:1px}.br-list.horizontal[data-toggle]>.br-item,.br-list.horizontal.toggle>.br-item{display:block}.br-list .br-item{text-align:left;width:100%}.br-list .br-item>.content{-ms-flex-align:var(--spacing-vertical-top);align-items:var(--spacing-vertical-top);display:-ms-flexbox;display:flex}.br-list .br-item>.content>.content{-ms-flex:1;flex:1}.br-list .br-item .content:hover button.br-button{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}.br-list .br-item[data-toggle]{cursor:pointer}.br-list .br-item[data-toggle]~.br-list .br-item{padding:var(--spacing-scale-base) var(--spacing-scale-3x)}.br-list .br-list{overflow:hidden;-webkit-transition:all 400ms ease-in-out;transition:all 400ms ease-in-out}.br-list .header{-ms-flex-align:var(--spacing-vertical-center);align-items:var(--spacing-vertical-center);display:-ms-flexbox;display:flex;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-bold);-ms-flex-pack:justify;justify-content:space-between;padding:var(--spacing-scale-base) var(--spacing-scale-2x)}.br-divider{--divider-size:var(--surface-width-sm);border-color:var(--border-color);border-style:solid;border-width:0;border-top-width:var(--divider-size);display:block}.br-divider.content{-ms-flex-align:center;align-items:center;border:0;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.br-divider.content::after,.br-divider.content::before{border-color:var(--border-color);border-style:solid;border-width:0;border-top-width:var(--divider-size);content:"";-ms-flex:1;flex:1}.br-divider.content::after{margin-left:var(--spacing-scale-base)}.br-divider.content::before{margin-right:var(--spacing-scale-base)}.br-divider.vertical{-ms-flex-item-align:stretch;align-self:stretch;border-right-width:var(--divider-size);border-top-width:0}.br-divider.vertical.content{-ms-flex-direction:column;flex-direction:column}.br-divider.vertical.content::after,.br-divider.vertical.content::before{border-right-width:var(--divider-size);border-top-width:0;margin:0}.br-divider.dark-mode{--border-color:var(--pure-0)}:host{display:block}:host .br-list.horizontal ::slotted(br-item){-ms-flex:1;flex:1;height:auto;min-height:56px;width:auto}';const n=o;const l=r(class r extends t{constructor(){super();this.__registerHost();this.__attachShadow();this.elementInternals=this.attachInternals();this.inheritedAttributes={};this.renderHeader=()=>{var r;if(((r=this.header)===null||r===void 0?void 0:r.length)>0||this.hasSlotContent("header")){return e("div",{class:"header"},this.header&&e("div",{class:"title"},this.header),this.hasSlotContent("header")&&e("div",{class:"d-flex"},e("slot",{name:"header"})))}return null};this.header=undefined;this.isHorizontal=false;this.hideHeaderDivider=false}componentWillLoad(){this.inheritedAttributes=a(this.el)}componentDidLoad(){if(this.isHorizontal){const r=Array.from(this.el.querySelectorAll("br-item"));r.forEach((r=>{const t=r.nextElementSibling;if(t===null||t===void 0?void 0:t.classList.contains("br-divider")){const r=t;r.style.borderWidth="0 1px 0 0";r.style.width="1px"}}))}const r=Array.from(this.el.querySelectorAll("br-item"));r.forEach((r=>{r.setAttribute("role","listitem")}))}getCssClassMap(){return{"br-list":true,horizontal:this.isHorizontal}}hasSlotContent(r){return this.el.querySelector(`[slot="${r}"]`)!==null}renderDivider(){if((this.header||this.hasSlotContent("header"))&&!this.hideHeaderDivider){return e("div",{class:"br-divider"})}return null}render(){return e(i,{key:"278e1c81fca5d8789ee8d6c2bf8dfac723135246"},e("div",Object.assign({key:"2772b9ef20bb4537f2de28395261b2eb273dd396",class:this.getCssClassMap()},this.inheritedAttributes,{role:"list"}),this.renderHeader(),this.renderDivider(),e("slot",{key:"5fe5afdd6081641872b63d9a9a9a5909e72d6f0b"})))}static get formAssociated(){return true}get el(){return this}static get style(){return n}},[65,"br-list",{header:[513],isHorizontal:[516,"is-horizontal"],hideHeaderDivider:[516,"hide-header-divider"]}]);function s(){if(typeof customElements==="undefined"){return}const r=["br-list"];r.forEach((r=>{switch(r){case"br-list":if(!customElements.get(r)){customElements.define(r,l)}break}}))}s();const d=l;const c=s;export{d as BrList,c as defineCustomElement};
|
|
138
6
|
//# sourceMappingURL=br-list.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"br-list.js","mappings":"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","names":[],"sources":["src/components/list/list.scss?tag=br-list&encapsulation=shadow","src/components/list/list.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/list/list.scss\";\n@import \"../../../../../node_modules/@govbr-ds/core/src/components/divider/divider.scss\";\n\n:host {\n display: block;\n\n .br-list.horizontal ::slotted(br-item) {\n flex: 1;\n height: auto;\n min-height: 56px;\n width: auto;\n }\n\n}\n","import { AttachInternals, Component, Element, 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/list?tab=designer).\n *\n * @slot default - Slot padrão para inclusão dos itens da lista.\n * @slot header - Slot nomeado para inclusão de ações relacionadas ao cabeçalho do list (uso de botões por exemplo).\n */\n@Component({\n tag: 'br-list',\n styleUrl: 'list.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class List {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLBrListElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o título para a lista.\n */\n @Prop({ reflect: true }) listTitle: string\n\n /**\n * Indica se a lista será horizontal. Por padrão, a lista é vertical.\n */\n @Prop({ reflect: true }) isHorizontal: boolean = false\n\n /**\n * Indica que o divider para o título da lista estará oculto.\n */\n @Prop({ reflect: true }) hideHeaderDivider: boolean = false\n\n /**\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 if (this.isHorizontal) {\n const slotItems = Array.from(this.el.querySelectorAll('br-item'))\n\n slotItems.forEach((item) => {\n const nextElement = item.nextElementSibling\n if (nextElement?.classList.contains('br-divider')) {\n const divider = nextElement as HTMLElement\n divider.style.borderWidth = '0 1px 0 0'\n divider.style.width = '1px'\n }\n })\n }\n\n const items = Array.from(this.el.querySelectorAll('br-item'))\n items.forEach((item) => {\n item.setAttribute('role', 'listitem')\n })\n\n this.brDidLoad.emit()\n }\n\n /**\n * Emite um evento antes do componente ser renderizado.\n * Utilize este evento para preparar o componente antes de sua renderização.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillrender) para mais detalhes.\n */\n @Event() brWillRender: EventEmitter<void>\n componentWillRender() {\n this.brWillRender.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido renderizado.\n * Utilize este evento para executar ações que devem ocorrer após a renderização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidrender) para mais detalhes.\n */\n @Event() brDidRender: EventEmitter<void>\n componentDidRender() {\n this.brDidRender.emit()\n }\n\n /**\n * Emite um evento para indicar se o componente deve ser atualizado ou não.\n * Este evento é chamado antes de qualquer atualização do componente para decidir se a atualização deve prosseguir.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentshouldupdate) para mais detalhes.\n */\n @Event() brShouldUpdate: EventEmitter<void>\n componentShouldUpdate() {\n this.brShouldUpdate.emit()\n }\n\n /**\n * Emite um evento antes de o componente ser atualizado.\n * Utilize este evento para realizar ações preparatórias antes da atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillupdate) para mais detalhes.\n */\n @Event() brWillUpdate: EventEmitter<void>\n componentWillUpdate() {\n this.brWillUpdate.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido atualizado.\n * Utilize este evento para realizar ações após a atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidupdate) para mais detalhes.\n */\n @Event() brDidUpdate: EventEmitter<void>\n componentDidUpdate() {\n this.brDidUpdate.emit()\n }\n\n /**\n * Emite um evento quando o componente é desconectado do DOM.\n * Utilize este evento para realizar a limpeza ou outras ações necessárias quando o componente é removido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#disconnectedcallback) para mais detalhes.\n */\n @Event() brDidDisconnect: EventEmitter<void>\n disconnectedCallback() {\n this.brDidDisconnect.emit()\n }\n\n /**\n * Emite um evento quando o componente é associado ou removido de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formassociatedcallback) para mais detalhes.\n *\n * @param form - Dados do formulário associado.\n */\n @Event() brFormAssociatedCallback: EventEmitter<FormData>\n formAssociatedCallback(form: FormData) {\n this.brFormAssociatedCallback.emit(form)\n }\n\n /**\n * Emite um evento quando o estado `disabled` do componente muda dentro de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formdisabledcallback) para mais informações.\n *\n * @param disabled - Novo estado `disabled` do componente dentro do formulário.\n */\n @Event() brFormDisabledCallback: EventEmitter<boolean>\n formDisabledCallback(disabled: boolean) {\n this.brFormDisabledCallback.emit(disabled)\n }\n\n /**\n * Emite um evento quando um `<form>` é resetado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formresetcallback) para mais detalhes.\n */\n @Event() brFormResetCallback: EventEmitter<void>\n formResetCallback() {\n this.brFormResetCallback.emit()\n }\n\n /**\n * Emite um evento quando o navegador preenche automaticamente os campos de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formstaterestorecallback) para mais informações.\n *\n * @param state - Estado restaurado do formulário.\n * @param _mode - Modo de preenchimento automático do navegador.\n */\n @Event() brFormStateRestoreCallback: EventEmitter<[state: string, _mode: string]>\n formStateRestoreCallback(state: string, _mode: string) {\n this.brFormStateRestoreCallback.emit([state, _mode])\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-list': true,\n horizontal: this.isHorizontal,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n private hasSlotContent(slotName: string): boolean {\n return this.el.querySelector(`[slot=\"${slotName}\"]`) !== null\n }\n private readonly renderHeader = () => {\n if (this.listTitle?.length > 0 || this.hasSlotContent('header')) {\n return (\n <div class=\"header\">\n {this.listTitle && <div class=\"title\">{this.listTitle}</div>}\n {this.hasSlotContent('header') && (\n <div class=\"d-flex\">\n <slot name=\"header\"></slot>\n </div>\n )}\n </div>\n )\n }\n return null\n }\n\n private renderDivider() {\n if ((this.listTitle || this.hasSlotContent('header')) && !this.hideHeaderDivider) {\n return <div class=\"br-divider\"></div>\n }\n return null\n }\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()} {...this.inheritedAttributes} role=\"list\">\n {this.renderHeader()}\n {this.renderDivider()}\n <slot></slot>\n </div>\n </Host>\n )\n }\n}\n"],"version":3}
|
|
1
|
+
{"version":3,"names":["listCss","BrListStyle0","List","proxyCustomElement","H","this","inheritedAttributes","renderHeader","_a","header","length","hasSlotContent","h","class","name","componentWillLoad","inheritAriaAttributes","el","componentDidLoad","isHorizontal","slotItems","Array","from","querySelectorAll","forEach","item","nextElement","nextElementSibling","classList","contains","divider","style","borderWidth","width","items","setAttribute","getCssClassMap","horizontal","slotName","querySelector","renderDivider","hideHeaderDivider","render","Host","key","Object","assign","role"],"sources":["src/components/list/list.scss?tag=br-list&encapsulation=shadow","src/components/list/list.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/list/list.scss\";\n@import \"../../../../../node_modules/@govbr-ds/core/src/components/divider/divider.scss\";\n\n:host {\n display: block;\n\n .br-list.horizontal ::slotted(br-item) {\n flex: 1;\n height: auto;\n min-height: 56px;\n width: auto;\n }\n\n}\n","import { AttachInternals, Component, Element, Host, Prop, h } from '@stencil/core'\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/list?tab=designer).\n *\n * @slot default - Slot padrão para inclusão dos itens da lista.\n * @slot header - Slot nomeado para inclusão de ações relacionadas ao cabeçalho do list (uso de botões por exemplo).\n */\n@Component({\n tag: 'br-list',\n styleUrl: 'list.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class List {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLBrListElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o cabeçalho para a lista.\n */\n @Prop({ reflect: true }) header: string\n\n /**\n * Indica se a lista será horizontal. Por padrão, a lista é vertical.\n */\n @Prop({ reflect: true }) isHorizontal: boolean = false\n\n /**\n * Indica que o divider para o título da lista estará oculto.\n */\n @Prop({ reflect: true }) hideHeaderDivider: boolean = false\n\n componentWillLoad() {\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n componentDidLoad() {\n if (this.isHorizontal) {\n const slotItems = Array.from(this.el.querySelectorAll('br-item'))\n\n slotItems.forEach((item) => {\n const nextElement = item.nextElementSibling\n if (nextElement?.classList.contains('br-divider')) {\n const divider = nextElement as HTMLElement\n divider.style.borderWidth = '0 1px 0 0'\n divider.style.width = '1px'\n }\n })\n }\n\n const items = Array.from(this.el.querySelectorAll('br-item'))\n items.forEach((item) => {\n item.setAttribute('role', 'listitem')\n })\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-list': true,\n horizontal: this.isHorizontal,\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n private hasSlotContent(slotName: string): boolean {\n return this.el.querySelector(`[slot=\"${slotName}\"]`) !== null\n }\n private readonly renderHeader = () => {\n if (this.header?.length > 0 || this.hasSlotContent('header')) {\n return (\n <div class=\"header\">\n {this.header && <div class=\"title\">{this.header}</div>}\n {this.hasSlotContent('header') && (\n <div class=\"d-flex\">\n <slot name=\"header\"></slot>\n </div>\n )}\n </div>\n )\n }\n return null\n }\n\n private renderDivider() {\n if ((this.header || this.hasSlotContent('header')) && !this.hideHeaderDivider) {\n return <div class=\"br-divider\"></div>\n }\n return null\n }\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()} {...this.inheritedAttributes} role=\"list\">\n {this.renderHeader()}\n {this.renderDivider()}\n <slot></slot>\n </div>\n </Host>\n )\n }\n}\n"],"mappings":";;;;6FAAA,MAAMA,EAAU,6qYAChB,MAAAC,EAAeD,E,MCeFE,EAAIC,EAAA,MAAAD,UAAAE,E,+GAuDPC,KAAAC,oBAAkC,GAKzBD,KAAAE,aAAe,K,MAC9B,KAAIC,EAAAH,KAAKI,UAAM,MAAAD,SAAA,SAAAA,EAAEE,QAAS,GAAKL,KAAKM,eAAe,UAAW,CAC5D,OACEC,EAAA,OAAKC,MAAM,UACRR,KAAKI,QAAUG,EAAA,OAAKC,MAAM,SAASR,KAAKI,QACxCJ,KAAKM,eAAe,WACnBC,EAAA,OAAKC,MAAM,UACTD,EAAA,QAAME,KAAK,Y,CAMrB,OAAO,IAAI,E,wCAxDoC,M,uBAKK,K,CAEtD,iBAAAC,GACEV,KAAKC,oBAAsBU,EAAsBX,KAAKY,G,CAGxD,gBAAAC,GACE,GAAIb,KAAKc,aAAc,CACrB,MAAMC,EAAYC,MAAMC,KAAKjB,KAAKY,GAAGM,iBAAiB,YAEtDH,EAAUI,SAASC,IACjB,MAAMC,EAAcD,EAAKE,mBACzB,GAAID,IAAW,MAAXA,SAAW,SAAXA,EAAaE,UAAUC,SAAS,cAAe,CACjD,MAAMC,EAAUJ,EAChBI,EAAQC,MAAMC,YAAc,YAC5BF,EAAQC,MAAME,MAAQ,K,KAK5B,MAAMC,EAAQb,MAAMC,KAAKjB,KAAKY,GAAGM,iBAAiB,YAClDW,EAAMV,SAASC,IACbA,EAAKU,aAAa,OAAQ,WAAW,G,CAIjC,cAAAC,GACN,MAAO,CACL,UAAW,KACXC,WAAYhC,KAAKc,a,CAMb,cAAAR,CAAe2B,GACrB,OAAOjC,KAAKY,GAAGsB,cAAc,UAAUD,SAAkB,I,CAkBnD,aAAAE,GACN,IAAKnC,KAAKI,QAAUJ,KAAKM,eAAe,aAAeN,KAAKoC,kBAAmB,CAC7E,OAAO7B,EAAA,OAAKC,MAAM,c,CAEpB,OAAO,I,CAGT,MAAA6B,GACE,OACE9B,EAAC+B,EAAI,CAAAC,IAAA,4CACHhC,EAAA,MAAAiC,OAAAC,OAAA,CAAAF,IAAA,2CAAK/B,MAAOR,KAAK+B,kBAAsB/B,KAAKC,oBAAmB,CAAEyC,KAAK,SACnE1C,KAAKE,eACLF,KAAKmC,gBACN5B,EAAA,QAAAgC,IAAA,8C","ignoreList":[]}
|