@db-ux/wc-core-components 3.0.2-copilot2-e7bf98b → 3.0.2-shell-ed0ed7c
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 +0 -10
- package/dist/cjs/{constants-CTtyzyuo.js → constants-BOd99bQT.js} +7 -2
- package/dist/cjs/constants-BOd99bQT.js.map +1 -0
- package/dist/cjs/db-accordion-item.cjs.entry.js +2 -2
- package/dist/cjs/db-accordion.cjs.entry.js +2 -2
- package/dist/cjs/db-badge.cjs.entry.js +2 -2
- package/dist/cjs/db-button.cjs.entry.js +2 -2
- package/dist/cjs/db-card.cjs.entry.js +3 -3
- package/dist/cjs/db-checkbox.cjs.entry.js +6 -6
- package/dist/cjs/db-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/db-checkbox.entry.cjs.js.map +1 -1
- package/dist/cjs/db-control-panel-brand.cjs.entry.js +57 -0
- package/dist/cjs/db-control-panel-brand.cjs.entry.js.map +1 -0
- package/dist/cjs/db-control-panel-brand.entry.cjs.js.map +1 -0
- package/dist/cjs/db-control-panel-desktop.cjs.entry.js +91 -0
- package/dist/cjs/db-control-panel-desktop.cjs.entry.js.map +1 -0
- package/dist/cjs/db-control-panel-desktop.entry.cjs.js.map +1 -0
- package/dist/cjs/db-control-panel-flat-icon-navigation.cjs.entry.js +76 -0
- package/dist/cjs/db-control-panel-flat-icon-navigation.cjs.entry.js.map +1 -0
- package/dist/cjs/db-control-panel-flat-icon-navigation.entry.cjs.js.map +1 -0
- package/dist/cjs/{db-brand.cjs.entry.js → db-control-panel-meta-navigation.cjs.entry.js} +8 -10
- package/dist/cjs/db-control-panel-meta-navigation.cjs.entry.js.map +1 -0
- package/dist/cjs/db-control-panel-meta-navigation.entry.cjs.js.map +1 -0
- package/dist/cjs/db-control-panel-mobile.cjs.entry.js +76 -0
- package/dist/cjs/db-control-panel-mobile.cjs.entry.js.map +1 -0
- package/dist/cjs/db-control-panel-mobile.entry.cjs.js.map +1 -0
- package/dist/cjs/db-control-panel-primary-actions.cjs.entry.js +55 -0
- package/dist/cjs/db-control-panel-primary-actions.cjs.entry.js.map +1 -0
- package/dist/cjs/db-control-panel-primary-actions.entry.cjs.js.map +1 -0
- package/dist/cjs/db-control-panel-secondary-actions.cjs.entry.js +55 -0
- package/dist/cjs/db-control-panel-secondary-actions.cjs.entry.js.map +1 -0
- package/dist/cjs/db-control-panel-secondary-actions.entry.cjs.js.map +1 -0
- package/dist/cjs/db-custom-select-dropdown.db-custom-select-list.db-custom-select-list-item.db-input.db-tag.entry.cjs.js.map +1 -1
- package/dist/cjs/db-custom-select-dropdown_5.cjs.entry.js +13 -13
- package/dist/cjs/db-custom-select-dropdown_5.cjs.entry.js.map +1 -1
- package/dist/cjs/db-custom-select-form-field.cjs.entry.js +3 -3
- package/dist/cjs/db-custom-select.cjs.entry.js +15 -15
- package/dist/cjs/db-custom-select.cjs.entry.js.map +1 -1
- package/dist/cjs/db-custom-select.entry.cjs.js.map +1 -1
- package/dist/cjs/db-divider.cjs.entry.js +2 -2
- package/dist/cjs/db-drawer.cjs.entry.js +6 -6
- package/dist/cjs/db-drawer.cjs.entry.js.map +1 -1
- package/dist/cjs/db-drawer.entry.cjs.js.map +1 -1
- package/dist/cjs/db-icon.cjs.entry.js +2 -2
- package/dist/cjs/db-infotext.cjs.entry.js +2 -2
- package/dist/cjs/db-link.cjs.entry.js +2 -2
- package/dist/cjs/db-navigation-item-group.cjs.entry.js +159 -0
- package/dist/cjs/db-navigation-item-group.cjs.entry.js.map +1 -0
- package/dist/cjs/db-navigation-item-group.entry.cjs.js.map +1 -0
- package/dist/cjs/db-navigation-item.cjs.entry.js +4 -72
- package/dist/cjs/db-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/db-navigation-item.entry.cjs.js.map +1 -1
- package/dist/cjs/db-navigation.cjs.entry.js +112 -6
- package/dist/cjs/db-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/db-navigation.entry.cjs.js.map +1 -1
- package/dist/cjs/db-notification.cjs.entry.js +4 -4
- package/dist/cjs/db-popover.cjs.entry.js +5 -6
- package/dist/cjs/db-popover.cjs.entry.js.map +1 -1
- package/dist/cjs/db-popover.entry.cjs.js.map +1 -1
- package/dist/cjs/db-radio.cjs.entry.js +2 -2
- package/dist/cjs/db-section.cjs.entry.js +4 -4
- package/dist/cjs/db-select.cjs.entry.js +7 -7
- package/dist/cjs/db-select.cjs.entry.js.map +1 -1
- package/dist/cjs/db-select.entry.cjs.js.map +1 -1
- package/dist/cjs/db-shell-sub-navigation.cjs.entry.js +71 -0
- package/dist/cjs/db-shell-sub-navigation.cjs.entry.js.map +1 -0
- package/dist/cjs/db-shell-sub-navigation.entry.cjs.js.map +1 -0
- package/dist/cjs/{db-page.cjs.entry.js → db-shell.cjs.entry.js} +9 -15
- package/dist/cjs/db-shell.cjs.entry.js.map +1 -0
- package/dist/cjs/db-shell.entry.cjs.js.map +1 -0
- package/dist/cjs/db-stack.cjs.entry.js +3 -3
- package/dist/cjs/db-switch.cjs.entry.js +2 -2
- package/dist/cjs/db-tab-item_3.cjs.entry.js +8 -8
- package/dist/cjs/db-tabs.cjs.entry.js +5 -5
- package/dist/cjs/db-tabs.cjs.entry.js.map +1 -1
- package/dist/cjs/db-tabs.entry.cjs.js.map +1 -1
- package/dist/cjs/db-textarea.cjs.entry.js +6 -6
- package/dist/cjs/db-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/db-textarea.entry.cjs.js.map +1 -1
- package/dist/cjs/db-tooltip.cjs.entry.js +7 -8
- package/dist/cjs/db-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/db-tooltip.entry.cjs.js.map +1 -1
- package/dist/cjs/db-ux.cjs.js +3 -3
- package/dist/cjs/db-ux.cjs.js.map +1 -1
- package/dist/cjs/{floating-components-ogUqz72V.js → floating-components-DSENlGvK.js} +78 -50
- package/dist/cjs/floating-components-DSENlGvK.js.map +1 -0
- package/dist/cjs/{index-9urL1KCD.js → index-B1qpUQFv.js} +9 -3
- package/dist/cjs/index-B1qpUQFv.js.map +1 -0
- package/dist/cjs/index.cjs.js +21 -11
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{navigation-DauGE-qj.js → navigation-DWSyoPJm.js} +38 -21
- package/dist/cjs/navigation-DWSyoPJm.js.map +1 -0
- package/dist/collection/collection-manifest.json +14 -7
- package/dist/collection/components/button/button.js +1 -1
- package/dist/collection/components/card/card.js +2 -2
- package/dist/collection/components/checkbox/checkbox.js +4 -4
- package/dist/collection/components/checkbox/checkbox.js.map +1 -1
- package/dist/collection/components/{brand/brand.js → control-panel-brand/control-panel-brand.js} +22 -47
- package/dist/collection/components/control-panel-brand/control-panel-brand.js.map +1 -0
- package/dist/collection/components/control-panel-brand/index.js +3 -0
- package/dist/collection/components/control-panel-brand/index.js.map +1 -0
- package/dist/collection/components/control-panel-brand/model.js.map +1 -0
- package/dist/collection/components/control-panel-desktop/control-panel-desktop.js +267 -0
- package/dist/collection/components/control-panel-desktop/control-panel-desktop.js.map +1 -0
- package/dist/collection/components/control-panel-desktop/index.js +3 -0
- package/dist/collection/components/control-panel-desktop/index.js.map +1 -0
- package/dist/collection/components/control-panel-desktop/model.js.map +1 -0
- package/dist/collection/components/control-panel-flat-icon-navigation/control-panel-flat-icon-navigation.js +162 -0
- package/dist/collection/components/control-panel-flat-icon-navigation/control-panel-flat-icon-navigation.js.map +1 -0
- package/dist/collection/components/control-panel-flat-icon-navigation/index.js +3 -0
- package/dist/collection/components/control-panel-flat-icon-navigation/index.js.map +1 -0
- package/dist/collection/components/control-panel-flat-icon-navigation/model.js +2 -0
- package/dist/collection/components/control-panel-flat-icon-navigation/model.js.map +1 -0
- package/dist/collection/components/control-panel-meta-navigation/control-panel-meta-navigation.js +104 -0
- package/dist/collection/components/control-panel-meta-navigation/control-panel-meta-navigation.js.map +1 -0
- package/dist/collection/components/control-panel-meta-navigation/index.js +3 -0
- package/dist/collection/components/control-panel-meta-navigation/index.js.map +1 -0
- package/dist/collection/components/control-panel-meta-navigation/model.js +2 -0
- package/dist/collection/components/control-panel-meta-navigation/model.js.map +1 -0
- package/dist/collection/components/{header/header.js → control-panel-mobile/control-panel-mobile.js} +76 -76
- package/dist/collection/components/control-panel-mobile/control-panel-mobile.js.map +1 -0
- package/dist/collection/components/control-panel-mobile/index.js +3 -0
- package/dist/collection/components/control-panel-mobile/index.js.map +1 -0
- package/dist/collection/components/control-panel-mobile/model.js +2 -0
- package/dist/collection/components/control-panel-mobile/model.js.map +1 -0
- package/dist/collection/components/control-panel-primary-actions/control-panel-primary-actions.js +104 -0
- package/dist/collection/components/control-panel-primary-actions/control-panel-primary-actions.js.map +1 -0
- package/dist/collection/components/control-panel-primary-actions/index.js +3 -0
- package/dist/collection/components/control-panel-primary-actions/index.js.map +1 -0
- package/dist/collection/components/control-panel-primary-actions/model.js +2 -0
- package/dist/collection/components/control-panel-primary-actions/model.js.map +1 -0
- package/dist/collection/components/control-panel-secondary-actions/control-panel-secondary-actions.js +104 -0
- package/dist/collection/components/control-panel-secondary-actions/control-panel-secondary-actions.js.map +1 -0
- package/dist/collection/components/control-panel-secondary-actions/index.js +3 -0
- package/dist/collection/components/control-panel-secondary-actions/index.js.map +1 -0
- package/dist/collection/components/control-panel-secondary-actions/model.js +2 -0
- package/dist/collection/components/control-panel-secondary-actions/model.js.map +1 -0
- package/dist/collection/components/custom-select/custom-select.js +12 -12
- package/dist/collection/components/custom-select/custom-select.js.map +1 -1
- package/dist/collection/components/custom-select/model.js.map +1 -1
- package/dist/collection/components/custom-select-dropdown/custom-select-dropdown.js +2 -2
- package/dist/collection/components/custom-select-form-field/custom-select-form-field.js +2 -2
- package/dist/collection/components/custom-select-list/custom-select-list.js +2 -2
- package/dist/collection/components/custom-select-list-item/custom-select-list-item.js +1 -1
- package/dist/collection/components/divider/divider.js +1 -1
- package/dist/collection/components/drawer/drawer.js +30 -5
- package/dist/collection/components/drawer/drawer.js.map +1 -1
- package/dist/collection/components/drawer/model.js +1 -1
- package/dist/collection/components/drawer/model.js.map +1 -1
- package/dist/collection/components/icon/icon.js +1 -1
- package/dist/collection/components/infotext/infotext.js +1 -1
- package/dist/collection/components/input/input.js +4 -4
- package/dist/collection/components/input/input.js.map +1 -1
- package/dist/collection/components/link/link.js +1 -1
- package/dist/collection/components/navigation/model.js.map +1 -1
- package/dist/collection/components/navigation/navigation.js +206 -7
- package/dist/collection/components/navigation/navigation.js.map +1 -1
- package/dist/collection/components/navigation-item/model.js.map +1 -1
- package/dist/collection/components/navigation-item/navigation-item.js +9 -238
- package/dist/collection/components/navigation-item/navigation-item.js.map +1 -1
- package/dist/collection/components/navigation-item-group/index.js +3 -0
- package/dist/collection/components/navigation-item-group/index.js.map +1 -0
- package/dist/collection/components/navigation-item-group/model.js +2 -0
- package/dist/collection/components/navigation-item-group/model.js.map +1 -0
- package/dist/collection/components/navigation-item-group/navigation-item-group.js +453 -0
- package/dist/collection/components/navigation-item-group/navigation-item-group.js.map +1 -0
- package/dist/collection/components/notification/notification.js +2 -2
- package/dist/collection/components/popover/popover.js +28 -29
- package/dist/collection/components/popover/popover.js.map +1 -1
- package/dist/collection/components/radio/radio.js +1 -1
- package/dist/collection/components/section/section.js +2 -2
- package/dist/collection/components/select/select.js +5 -5
- package/dist/collection/components/select/select.js.map +1 -1
- package/dist/collection/components/shell/index.js +3 -0
- package/dist/collection/components/shell/index.js.map +1 -0
- package/dist/collection/components/shell/model.js +2 -0
- package/dist/collection/components/shell/model.js.map +1 -0
- package/dist/collection/components/shell/shell.js +299 -0
- package/dist/collection/components/shell/shell.js.map +1 -0
- package/dist/collection/components/shell-sub-navigation/index.js +3 -0
- package/dist/collection/components/shell-sub-navigation/index.js.map +1 -0
- package/dist/collection/components/shell-sub-navigation/model.js +2 -0
- package/dist/collection/components/shell-sub-navigation/model.js.map +1 -0
- package/dist/collection/components/{page/page.js → shell-sub-navigation/shell-sub-navigation.js} +43 -94
- package/dist/collection/components/shell-sub-navigation/shell-sub-navigation.js.map +1 -0
- package/dist/collection/components/stack/stack.js +2 -2
- package/dist/collection/components/switch/switch.js +1 -1
- package/dist/collection/components/tab-item/tab-item.js +2 -2
- package/dist/collection/components/tab-list/tab-list.js +2 -2
- package/dist/collection/components/tab-panel/tab-panel.js +2 -2
- package/dist/collection/components/tabs/model.js.map +1 -1
- package/dist/collection/components/tabs/tabs.js +4 -4
- package/dist/collection/components/tabs/tabs.js.map +1 -1
- package/dist/collection/components/tag/tag.js +2 -2
- package/dist/collection/components/textarea/textarea.js +4 -4
- package/dist/collection/components/textarea/textarea.js.map +1 -1
- package/dist/collection/components/tooltip/tooltip.js +29 -30
- package/dist/collection/components/tooltip/tooltip.js.map +1 -1
- package/dist/collection/index.js +19 -6
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/shared/constants.js +3 -0
- package/dist/collection/shared/constants.js.map +1 -1
- package/dist/collection/shared/model.js +3 -0
- package/dist/collection/shared/model.js.map +1 -1
- package/dist/collection/utils/floating-components.js +76 -48
- package/dist/collection/utils/floating-components.js.map +1 -1
- package/dist/collection/utils/navigation.js +34 -22
- package/dist/collection/utils/navigation.js.map +1 -1
- package/dist/custom-elements.json +7740 -6149
- package/dist/db-ux/db-checkbox.entry.esm.js.map +1 -1
- package/dist/db-ux/db-control-panel-brand.entry.esm.js.map +1 -0
- package/dist/db-ux/db-control-panel-desktop.entry.esm.js.map +1 -0
- package/dist/db-ux/db-control-panel-flat-icon-navigation.entry.esm.js.map +1 -0
- package/dist/db-ux/db-control-panel-meta-navigation.entry.esm.js.map +1 -0
- package/dist/db-ux/db-control-panel-mobile.entry.esm.js.map +1 -0
- package/dist/db-ux/db-control-panel-primary-actions.entry.esm.js.map +1 -0
- package/dist/db-ux/db-control-panel-secondary-actions.entry.esm.js.map +1 -0
- package/dist/db-ux/db-custom-select-dropdown.db-custom-select-list.db-custom-select-list-item.db-input.db-tag.entry.esm.js.map +1 -1
- package/dist/db-ux/db-custom-select.entry.esm.js.map +1 -1
- package/dist/db-ux/db-drawer.entry.esm.js.map +1 -1
- package/dist/db-ux/db-navigation-item-group.entry.esm.js.map +1 -0
- package/dist/db-ux/db-navigation-item.entry.esm.js.map +1 -1
- package/dist/db-ux/db-navigation.entry.esm.js.map +1 -1
- package/dist/db-ux/db-popover.entry.esm.js.map +1 -1
- package/dist/db-ux/db-select.entry.esm.js.map +1 -1
- package/dist/db-ux/db-shell-sub-navigation.entry.esm.js.map +1 -0
- package/dist/db-ux/db-shell.entry.esm.js.map +1 -0
- package/dist/db-ux/db-tabs.entry.esm.js.map +1 -1
- package/dist/db-ux/db-textarea.entry.esm.js.map +1 -1
- package/dist/db-ux/db-tooltip.entry.esm.js.map +1 -1
- package/dist/db-ux/db-ux.esm.js +1 -1
- package/dist/db-ux/db-ux.esm.js.map +1 -1
- package/dist/db-ux/index.esm.js +1 -1
- package/dist/db-ux/index.esm.js.map +1 -1
- package/dist/db-ux/p-0262e847.entry.js +2 -0
- package/dist/db-ux/p-0262e847.entry.js.map +1 -0
- package/dist/db-ux/p-13f527fb.entry.js +2 -0
- package/dist/db-ux/p-13f527fb.entry.js.map +1 -0
- package/dist/db-ux/p-1a56dee3.entry.js +2 -0
- package/dist/db-ux/p-1a56dee3.entry.js.map +1 -0
- package/dist/db-ux/p-1b0815ab.entry.js +2 -0
- package/dist/db-ux/p-1b0815ab.entry.js.map +1 -0
- package/dist/db-ux/p-1d41f71c.entry.js +2 -0
- package/dist/db-ux/p-1d41f71c.entry.js.map +1 -0
- package/dist/db-ux/p-1dccdff4.entry.js +2 -0
- package/dist/db-ux/p-29dcb78d.entry.js +2 -0
- package/dist/db-ux/p-29dcb78d.entry.js.map +1 -0
- package/dist/db-ux/p-3f2ab801.entry.js +2 -0
- package/dist/db-ux/p-3f2ab801.entry.js.map +1 -0
- package/dist/db-ux/p-40e42146.entry.js +2 -0
- package/dist/db-ux/p-40e42146.entry.js.map +1 -0
- package/dist/db-ux/p-4645cc92.entry.js +2 -0
- package/dist/db-ux/{p-c5ff3d3f.entry.js → p-504a9cfc.entry.js} +2 -2
- package/dist/db-ux/{p-e6e7719e.entry.js → p-53682d25.entry.js} +2 -2
- package/dist/db-ux/p-5be272f0.entry.js +2 -0
- package/dist/db-ux/p-5cb180c4.entry.js +2 -0
- package/dist/db-ux/p-5cb180c4.entry.js.map +1 -0
- package/dist/db-ux/{p-16f1fa7c.entry.js → p-5d292f94.entry.js} +2 -2
- package/dist/db-ux/{p-02fcd4a8.entry.js → p-5e4ac324.entry.js} +2 -2
- package/dist/db-ux/p-6c023c87.entry.js +2 -0
- package/dist/db-ux/p-6c023c87.entry.js.map +1 -0
- package/dist/db-ux/{p-f03f7076.entry.js → p-6fd148ce.entry.js} +2 -2
- package/dist/db-ux/p-7153636c.entry.js +2 -0
- package/dist/db-ux/p-73614370.entry.js +2 -0
- package/dist/db-ux/{p-209cf793.entry.js → p-81d7921b.entry.js} +2 -2
- package/dist/db-ux/{p-d7168627.entry.js → p-8262ab69.entry.js} +2 -2
- package/dist/db-ux/p-8db3c126.entry.js +2 -0
- package/dist/db-ux/{p-d6aeabf0.entry.js.map → p-8db3c126.entry.js.map} +1 -1
- package/dist/db-ux/p-99d090b7.entry.js +2 -0
- package/dist/db-ux/p-9d18d065.entry.js +2 -0
- package/dist/db-ux/p-9d18d065.entry.js.map +1 -0
- package/dist/db-ux/p-CZxi1Pek.js +2 -0
- package/dist/db-ux/p-CZxi1Pek.js.map +1 -0
- package/dist/db-ux/p-D3kmGlOI.js +2 -0
- package/dist/db-ux/p-D3kmGlOI.js.map +1 -0
- package/dist/db-ux/p-Dst8dqRS.js +2 -0
- package/dist/db-ux/p-Dst8dqRS.js.map +1 -0
- package/dist/db-ux/p-a652e0d0.entry.js +2 -0
- package/dist/db-ux/p-a652e0d0.entry.js.map +1 -0
- package/dist/db-ux/{p-bd7d1646.entry.js → p-b713791b.entry.js} +2 -2
- package/dist/db-ux/p-b90f037e.entry.js +2 -0
- package/dist/db-ux/p-b90f037e.entry.js.map +1 -0
- package/dist/db-ux/p-bb9043b3.entry.js +2 -0
- package/dist/db-ux/p-bb9043b3.entry.js.map +1 -0
- package/dist/db-ux/p-bbbb47fe.entry.js +2 -0
- package/dist/db-ux/p-bbbb47fe.entry.js.map +1 -0
- package/dist/db-ux/p-c00303d4.entry.js +2 -0
- package/dist/db-ux/p-c00303d4.entry.js.map +1 -0
- package/dist/db-ux/p-c841ce92.entry.js +2 -0
- package/dist/db-ux/p-c841ce92.entry.js.map +1 -0
- package/dist/db-ux/{p-a2b55626.entry.js → p-d6047812.entry.js} +2 -2
- package/dist/db-ux/p-d8f87aaa.entry.js +2 -0
- package/dist/db-ux/p-d8f87aaa.entry.js.map +1 -0
- package/dist/db-ux/p-e39aeff2.entry.js +2 -0
- package/dist/db-ux/p-e39aeff2.entry.js.map +1 -0
- package/dist/db-ux/p-e418dace.entry.js +2 -0
- package/dist/db-ux/p-e418dace.entry.js.map +1 -0
- package/dist/db-ux/p-eaa14b89.entry.js +2 -0
- package/dist/db-ux/p-eaa14b89.entry.js.map +1 -0
- package/dist/db-ux/p-uOzX56mL.js +3 -0
- package/dist/db-ux/p-uOzX56mL.js.map +1 -0
- package/dist/esm/{constants-DC9V_oNU.js → constants-Dst8dqRS.js} +6 -3
- package/dist/esm/constants-Dst8dqRS.js.map +1 -0
- package/dist/esm/db-accordion-item.entry.js +2 -2
- package/dist/esm/db-accordion.entry.js +2 -2
- package/dist/esm/db-badge.entry.js +2 -2
- package/dist/esm/db-button.entry.js +2 -2
- package/dist/esm/db-card.entry.js +3 -3
- package/dist/esm/db-checkbox.entry.js +6 -6
- package/dist/esm/db-checkbox.entry.js.map +1 -1
- package/dist/esm/db-control-panel-brand.entry.js +55 -0
- package/dist/esm/db-control-panel-brand.entry.js.map +1 -0
- package/dist/esm/db-control-panel-desktop.entry.js +89 -0
- package/dist/esm/db-control-panel-desktop.entry.js.map +1 -0
- package/dist/esm/db-control-panel-flat-icon-navigation.entry.js +74 -0
- package/dist/esm/db-control-panel-flat-icon-navigation.entry.js.map +1 -0
- package/dist/esm/{db-brand.entry.js → db-control-panel-meta-navigation.entry.js} +9 -11
- package/dist/esm/db-control-panel-meta-navigation.entry.js.map +1 -0
- package/dist/esm/db-control-panel-mobile.entry.js +74 -0
- package/dist/esm/db-control-panel-mobile.entry.js.map +1 -0
- package/dist/esm/db-control-panel-primary-actions.entry.js +53 -0
- package/dist/esm/db-control-panel-primary-actions.entry.js.map +1 -0
- package/dist/esm/db-control-panel-secondary-actions.entry.js +53 -0
- package/dist/esm/db-control-panel-secondary-actions.entry.js.map +1 -0
- package/dist/esm/db-custom-select-dropdown.db-custom-select-list.db-custom-select-list-item.db-input.db-tag.entry.js.map +1 -1
- package/dist/esm/db-custom-select-dropdown_5.entry.js +13 -13
- package/dist/esm/db-custom-select-dropdown_5.entry.js.map +1 -1
- package/dist/esm/db-custom-select-form-field.entry.js +3 -3
- package/dist/esm/db-custom-select.entry.js +15 -15
- package/dist/esm/db-custom-select.entry.js.map +1 -1
- package/dist/esm/db-divider.entry.js +2 -2
- package/dist/esm/db-drawer.entry.js +6 -6
- package/dist/esm/db-drawer.entry.js.map +1 -1
- package/dist/esm/db-icon.entry.js +2 -2
- package/dist/esm/db-infotext.entry.js +2 -2
- package/dist/esm/db-link.entry.js +2 -2
- package/dist/esm/db-navigation-item-group.entry.js +157 -0
- package/dist/esm/db-navigation-item-group.entry.js.map +1 -0
- package/dist/esm/db-navigation-item.entry.js +5 -73
- package/dist/esm/db-navigation-item.entry.js.map +1 -1
- package/dist/esm/db-navigation.entry.js +113 -7
- package/dist/esm/db-navigation.entry.js.map +1 -1
- package/dist/esm/db-notification.entry.js +4 -4
- package/dist/esm/db-popover.entry.js +5 -6
- package/dist/esm/db-popover.entry.js.map +1 -1
- package/dist/esm/db-radio.entry.js +2 -2
- package/dist/esm/db-section.entry.js +4 -4
- package/dist/esm/db-select.entry.js +7 -7
- package/dist/esm/db-select.entry.js.map +1 -1
- package/dist/esm/db-shell-sub-navigation.entry.js +69 -0
- package/dist/esm/db-shell-sub-navigation.entry.js.map +1 -0
- package/dist/esm/{db-page.entry.js → db-shell.entry.js} +9 -15
- package/dist/esm/db-shell.entry.js.map +1 -0
- package/dist/esm/db-stack.entry.js +3 -3
- package/dist/esm/db-switch.entry.js +2 -2
- package/dist/esm/db-tab-item_3.entry.js +8 -8
- package/dist/esm/db-tabs.entry.js +5 -5
- package/dist/esm/db-tabs.entry.js.map +1 -1
- package/dist/esm/db-textarea.entry.js +6 -6
- package/dist/esm/db-textarea.entry.js.map +1 -1
- package/dist/esm/db-tooltip.entry.js +7 -8
- package/dist/esm/db-tooltip.entry.js.map +1 -1
- package/dist/esm/db-ux.js +4 -4
- package/dist/esm/db-ux.js.map +1 -1
- package/dist/esm/{floating-components-G-TursYV.js → floating-components-D3kmGlOI.js} +78 -50
- package/dist/esm/floating-components-D3kmGlOI.js.map +1 -0
- package/dist/esm/{index-CNzNv7KB.js → index-uOzX56mL.js} +9 -3
- package/dist/esm/index-uOzX56mL.js.map +1 -0
- package/dist/esm/index.js +12 -8
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{navigation--UdC9CzO.js → navigation-CJ-OxodG.js} +38 -22
- package/dist/esm/navigation-CJ-OxodG.js.map +1 -0
- package/dist/types/components/control-panel-brand/control-panel-brand.d.ts +21 -0
- package/dist/types/components/control-panel-brand/index.d.ts +2 -0
- package/dist/types/components/control-panel-brand/model.d.ts +5 -0
- package/dist/types/components/control-panel-desktop/control-panel-desktop.d.ts +33 -0
- package/dist/types/components/control-panel-desktop/index.d.ts +2 -0
- package/dist/types/components/control-panel-desktop/model.d.ts +7 -0
- package/dist/types/components/control-panel-flat-icon-navigation/control-panel-flat-icon-navigation.d.ts +22 -0
- package/dist/types/components/control-panel-flat-icon-navigation/index.d.ts +2 -0
- package/dist/types/components/control-panel-flat-icon-navigation/model.d.ts +7 -0
- package/dist/types/components/{brand/brand.d.ts → control-panel-meta-navigation/control-panel-meta-navigation.d.ts} +4 -8
- package/dist/types/components/control-panel-meta-navigation/index.d.ts +2 -0
- package/dist/types/components/control-panel-meta-navigation/model.d.ts +5 -0
- package/dist/types/components/control-panel-mobile/control-panel-mobile.d.ts +32 -0
- package/dist/types/components/control-panel-mobile/index.d.ts +2 -0
- package/dist/types/components/control-panel-mobile/model.d.ts +30 -0
- package/dist/types/components/control-panel-primary-actions/control-panel-primary-actions.d.ts +18 -0
- package/dist/types/components/control-panel-primary-actions/index.d.ts +2 -0
- package/dist/types/components/control-panel-primary-actions/model.d.ts +5 -0
- package/dist/types/components/control-panel-secondary-actions/control-panel-secondary-actions.d.ts +18 -0
- package/dist/types/components/control-panel-secondary-actions/index.d.ts +2 -0
- package/dist/types/components/control-panel-secondary-actions/model.d.ts +5 -0
- package/dist/types/components/custom-select/custom-select.d.ts +1 -1
- package/dist/types/components/custom-select/model.d.ts +4 -1
- package/dist/types/components/drawer/drawer.d.ts +1 -0
- package/dist/types/components/drawer/model.d.ts +5 -1
- package/dist/types/components/navigation/model.d.ts +14 -5
- package/dist/types/components/navigation/navigation.d.ts +19 -1
- package/dist/types/components/navigation-item/model.d.ts +9 -24
- package/dist/types/components/navigation-item/navigation-item.d.ts +2 -24
- package/dist/types/components/navigation-item-group/index.d.ts +2 -0
- package/dist/types/components/navigation-item-group/model.d.ts +26 -0
- package/dist/types/components/navigation-item-group/navigation-item-group.d.ts +50 -0
- package/dist/types/components/popover/popover.d.ts +1 -1
- package/dist/types/components/shell/index.d.ts +2 -0
- package/dist/types/components/shell/model.d.ts +50 -0
- package/dist/types/components/shell/shell.d.ts +28 -0
- package/dist/types/components/shell-sub-navigation/index.d.ts +2 -0
- package/dist/types/components/shell-sub-navigation/model.d.ts +5 -0
- package/dist/types/components/shell-sub-navigation/shell-sub-navigation.d.ts +24 -0
- package/dist/types/components/tabs/model.d.ts +3 -11
- package/dist/types/components/tooltip/tooltip.d.ts +1 -1
- package/dist/types/components.d.ts +302 -119
- package/dist/types/index.d.ts +19 -6
- package/dist/types/shared/constants.d.ts +3 -0
- package/dist/types/shared/model.d.ts +82 -3
- package/dist/types/utils/floating-components.d.ts +17 -1
- package/dist/types/utils/navigation.d.ts +2 -6
- package/dist/vscode.html-custom-data.json +532 -327
- package/dist/web-types.json +1235 -795
- package/package.json +5 -7
- package/agent/Accordion.md +0 -23
- package/agent/AccordionItem.md +0 -29
- package/agent/Badge.md +0 -32
- package/agent/Brand.md +0 -13
- package/agent/Button.md +0 -47
- package/agent/Card.md +0 -23
- package/agent/Checkbox.md +0 -41
- package/agent/CustomSelect.md +0 -54
- package/agent/Divider.md +0 -21
- package/agent/Drawer.md +0 -71
- package/agent/Header.md +0 -29
- package/agent/Icon.md +0 -20
- package/agent/Infotext.md +0 -25
- package/agent/Input.md +0 -48
- package/agent/Link.md +0 -52
- package/agent/Navigation.md +0 -19
- package/agent/NavigationItem.md +0 -29
- package/agent/Notification.md +0 -38
- package/agent/Page.md +0 -27
- package/agent/Popover.md +0 -52
- package/agent/Radio.md +0 -28
- package/agent/Section.md +0 -21
- package/agent/Select.md +0 -62
- package/agent/Stack.md +0 -35
- package/agent/Switch.md +0 -44
- package/agent/TabItem.md +0 -25
- package/agent/Tabs.md +0 -61
- package/agent/Tag.md +0 -41
- package/agent/Textarea.md +0 -44
- package/agent/Tooltip.md +0 -37
- package/agent/_instructions.md +0 -31
- package/dist/cjs/constants-CTtyzyuo.js.map +0 -1
- package/dist/cjs/db-brand.cjs.entry.js.map +0 -1
- package/dist/cjs/db-brand.entry.cjs.js.map +0 -1
- package/dist/cjs/db-header.cjs.entry.js +0 -96
- package/dist/cjs/db-header.cjs.entry.js.map +0 -1
- package/dist/cjs/db-header.entry.cjs.js.map +0 -1
- package/dist/cjs/db-page.cjs.entry.js.map +0 -1
- package/dist/cjs/db-page.entry.cjs.js.map +0 -1
- package/dist/cjs/floating-components-ogUqz72V.js.map +0 -1
- package/dist/cjs/index-9urL1KCD.js.map +0 -1
- package/dist/cjs/navigation-DauGE-qj.js.map +0 -1
- package/dist/collection/components/brand/brand.js.map +0 -1
- package/dist/collection/components/brand/index.js +0 -3
- package/dist/collection/components/brand/index.js.map +0 -1
- package/dist/collection/components/brand/model.js.map +0 -1
- package/dist/collection/components/header/header.js.map +0 -1
- package/dist/collection/components/header/index.js +0 -3
- package/dist/collection/components/header/index.js.map +0 -1
- package/dist/collection/components/header/model.js.map +0 -1
- package/dist/collection/components/page/index.js +0 -3
- package/dist/collection/components/page/index.js.map +0 -1
- package/dist/collection/components/page/model.js +0 -3
- package/dist/collection/components/page/model.js.map +0 -1
- package/dist/collection/components/page/page.js.map +0 -1
- package/dist/db-ux/db-brand.entry.esm.js.map +0 -1
- package/dist/db-ux/db-header.entry.esm.js.map +0 -1
- package/dist/db-ux/db-page.entry.esm.js.map +0 -1
- package/dist/db-ux/p-340bb722.entry.js +0 -2
- package/dist/db-ux/p-340bb722.entry.js.map +0 -1
- package/dist/db-ux/p-3d7eb768.entry.js +0 -2
- package/dist/db-ux/p-3d7eb768.entry.js.map +0 -1
- package/dist/db-ux/p-51de401e.entry.js +0 -2
- package/dist/db-ux/p-58007675.entry.js +0 -2
- package/dist/db-ux/p-58007675.entry.js.map +0 -1
- package/dist/db-ux/p-5b45664d.entry.js +0 -2
- package/dist/db-ux/p-5c6da0f3.entry.js +0 -2
- package/dist/db-ux/p-6e35a260.entry.js +0 -2
- package/dist/db-ux/p-6e35a260.entry.js.map +0 -1
- package/dist/db-ux/p-72330d25.entry.js +0 -2
- package/dist/db-ux/p-72330d25.entry.js.map +0 -1
- package/dist/db-ux/p-84dd974f.entry.js +0 -2
- package/dist/db-ux/p-84dd974f.entry.js.map +0 -1
- package/dist/db-ux/p-8b41c30e.entry.js +0 -2
- package/dist/db-ux/p-8b41c30e.entry.js.map +0 -1
- package/dist/db-ux/p-971a16c3.entry.js +0 -2
- package/dist/db-ux/p-971a16c3.entry.js.map +0 -1
- package/dist/db-ux/p-9d0996e9.entry.js +0 -2
- package/dist/db-ux/p-CNzNv7KB.js +0 -3
- package/dist/db-ux/p-CNzNv7KB.js.map +0 -1
- package/dist/db-ux/p-DC9V_oNU.js +0 -2
- package/dist/db-ux/p-DC9V_oNU.js.map +0 -1
- package/dist/db-ux/p-G-TursYV.js +0 -2
- package/dist/db-ux/p-G-TursYV.js.map +0 -1
- package/dist/db-ux/p-a3541c03.entry.js +0 -2
- package/dist/db-ux/p-a3541c03.entry.js.map +0 -1
- package/dist/db-ux/p-c8bdd952.entry.js +0 -2
- package/dist/db-ux/p-c8cdde8c.entry.js +0 -2
- package/dist/db-ux/p-ce895e0c.entry.js +0 -2
- package/dist/db-ux/p-ce895e0c.entry.js.map +0 -1
- package/dist/db-ux/p-d4e3d1db.entry.js +0 -2
- package/dist/db-ux/p-d4e3d1db.entry.js.map +0 -1
- package/dist/db-ux/p-d6aeabf0.entry.js +0 -2
- package/dist/db-ux/p-e9c323af.entry.js +0 -2
- package/dist/db-ux/p-e9c323af.entry.js.map +0 -1
- package/dist/db-ux/p-ec957247.entry.js +0 -2
- package/dist/db-ux/p-ec957247.entry.js.map +0 -1
- package/dist/db-ux/p-fdf5578d.entry.js +0 -2
- package/dist/db-ux/p-fdf5578d.entry.js.map +0 -1
- package/dist/db-ux/p-sP2NlPcu.js +0 -2
- package/dist/db-ux/p-sP2NlPcu.js.map +0 -1
- package/dist/esm/constants-DC9V_oNU.js.map +0 -1
- package/dist/esm/db-brand.entry.js.map +0 -1
- package/dist/esm/db-header.entry.js +0 -94
- package/dist/esm/db-header.entry.js.map +0 -1
- package/dist/esm/db-page.entry.js.map +0 -1
- package/dist/esm/floating-components-G-TursYV.js.map +0 -1
- package/dist/esm/index-CNzNv7KB.js.map +0 -1
- package/dist/esm/navigation--UdC9CzO.js.map +0 -1
- package/dist/types/components/brand/index.d.ts +0 -2
- package/dist/types/components/brand/model.d.ts +0 -10
- package/dist/types/components/header/header.d.ts +0 -33
- package/dist/types/components/header/index.d.ts +0 -2
- package/dist/types/components/header/model.d.ts +0 -44
- package/dist/types/components/page/index.d.ts +0 -2
- package/dist/types/components/page/model.d.ts +0 -36
- package/dist/types/components/page/page.d.ts +0 -25
- /package/dist/collection/components/{brand → control-panel-brand}/model.js +0 -0
- /package/dist/collection/components/{header → control-panel-desktop}/model.js +0 -0
- /package/dist/db-ux/{p-5c6da0f3.entry.js.map → p-1dccdff4.entry.js.map} +0 -0
- /package/dist/db-ux/{p-c8bdd952.entry.js.map → p-4645cc92.entry.js.map} +0 -0
- /package/dist/db-ux/{p-c5ff3d3f.entry.js.map → p-504a9cfc.entry.js.map} +0 -0
- /package/dist/db-ux/{p-e6e7719e.entry.js.map → p-53682d25.entry.js.map} +0 -0
- /package/dist/db-ux/{p-51de401e.entry.js.map → p-5be272f0.entry.js.map} +0 -0
- /package/dist/db-ux/{p-16f1fa7c.entry.js.map → p-5d292f94.entry.js.map} +0 -0
- /package/dist/db-ux/{p-02fcd4a8.entry.js.map → p-5e4ac324.entry.js.map} +0 -0
- /package/dist/db-ux/{p-f03f7076.entry.js.map → p-6fd148ce.entry.js.map} +0 -0
- /package/dist/db-ux/{p-5b45664d.entry.js.map → p-7153636c.entry.js.map} +0 -0
- /package/dist/db-ux/{p-9d0996e9.entry.js.map → p-73614370.entry.js.map} +0 -0
- /package/dist/db-ux/{p-209cf793.entry.js.map → p-81d7921b.entry.js.map} +0 -0
- /package/dist/db-ux/{p-d7168627.entry.js.map → p-8262ab69.entry.js.map} +0 -0
- /package/dist/db-ux/{p-c8cdde8c.entry.js.map → p-99d090b7.entry.js.map} +0 -0
- /package/dist/db-ux/{p-bd7d1646.entry.js.map → p-b713791b.entry.js.map} +0 -0
- /package/dist/db-ux/{p-a2b55626.entry.js.map → p-d6047812.entry.js.map} +0 -0
package/dist/collection/components/{page/page.js → shell-sub-navigation/shell-sub-navigation.js}
RENAMED
|
@@ -1,13 +1,26 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DEFAULT_COLLAPSE, DEFAULT_EXPAND } from "../../shared/constants";
|
|
2
|
+
import { cls, getBooleanAsString, uuid } from "../../utils";
|
|
2
3
|
import { h } from "@stencil/core";
|
|
3
4
|
/**
|
|
4
5
|
* @slot children - This is a default/unnamed slot
|
|
5
|
-
|
|
6
|
-
* @slot footer - TODO: Add description for slotFooter
|
|
6
|
+
|
|
7
7
|
*/
|
|
8
|
-
export class
|
|
8
|
+
export class DBShellSubNavigation {
|
|
9
9
|
constructor() {
|
|
10
|
-
this.
|
|
10
|
+
this._id = `db-shell-sub-navigation-${uuid()}`;
|
|
11
|
+
this._open = true;
|
|
12
|
+
}
|
|
13
|
+
handleToggle(event) {
|
|
14
|
+
event.stopPropagation();
|
|
15
|
+
this._open = !this._open;
|
|
16
|
+
}
|
|
17
|
+
getToggleButtonText() {
|
|
18
|
+
var _a;
|
|
19
|
+
if (this.expandButtonTooltip) {
|
|
20
|
+
return this.expandButtonTooltip;
|
|
21
|
+
}
|
|
22
|
+
const fnOutput = () => undefined;
|
|
23
|
+
return (_a = fnOutput()) !== null && _a !== void 0 ? _a : (this._open ? DEFAULT_COLLAPSE : DEFAULT_EXPAND);
|
|
11
24
|
}
|
|
12
25
|
/**
|
|
13
26
|
* Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.
|
|
@@ -42,44 +55,29 @@ export class DBPage {
|
|
|
42
55
|
}
|
|
43
56
|
}
|
|
44
57
|
componentDidLoad() {
|
|
45
|
-
this.enableAttributePassing(this._ref, "db-
|
|
46
|
-
this.fontsLoaded = !this.fadeIn;
|
|
47
|
-
if (document && this.fadeIn) {
|
|
48
|
-
document.fonts.ready.then(() => {
|
|
49
|
-
this.fontsLoaded = true;
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
this.fontsLoaded = true;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
disconnectedCallback() {
|
|
57
|
-
if (typeof window !== "undefined" &&
|
|
58
|
-
document.documentElement.classList.contains("db-page-document")) {
|
|
59
|
-
// remove document styles set by this
|
|
60
|
-
document.documentElement.classList.remove("db-page-document");
|
|
61
|
-
}
|
|
58
|
+
this.enableAttributePassing(this._ref, "db-shell-sub-navigation");
|
|
62
59
|
}
|
|
63
60
|
render() {
|
|
64
|
-
|
|
61
|
+
var _a, _b;
|
|
62
|
+
return (h("div", { key: 'dfe750d10de3bf40e3ab259ce770d7c8dce20372', class: cls("db-shell-sub-navigation", this.className), ref: (el) => {
|
|
65
63
|
this._ref = el;
|
|
66
|
-
}, id: this.id
|
|
64
|
+
}, id: (_a = this.id) !== null && _a !== void 0 ? _a : this._id, "data-open": getBooleanAsString(this._open) }, h("slot", { key: '5002475c9e390c5d491cc5e923e6b6e068b06aa8' }), h("div", { key: '71e0b10f76df3e8f205dee401b6eee9b54556024', class: "db-shell-sub-navigation-button" }, h("db-button", { key: '775b6240dcea0d78e030da23647a2dc6d5ea7bb3', variant: "ghost", icon: "double_chevron_left", onClick: (event) => this.handleToggle(event), "aria-controls": (_b = this.id) !== null && _b !== void 0 ? _b : this._id, "aria-expanded": getBooleanAsString(this._open), noText: true }, h("db-tooltip", { key: '99ac6775c18771bf201ae1cb0669e4b7eb8ec54a', variant: "label", placement: "right" }, this.getToggleButtonText())))));
|
|
67
65
|
}
|
|
68
|
-
static get is() { return "db-
|
|
66
|
+
static get is() { return "db-shell-sub-navigation"; }
|
|
69
67
|
static get properties() {
|
|
70
68
|
return {
|
|
71
|
-
"
|
|
69
|
+
"expanded": {
|
|
72
70
|
"type": "any",
|
|
73
|
-
"attribute": "
|
|
71
|
+
"attribute": "expanded",
|
|
74
72
|
"mutable": false,
|
|
75
73
|
"complexType": {
|
|
76
|
-
"original": "
|
|
74
|
+
"original": "DBShellSubNavigationProps[\"expanded\"]",
|
|
77
75
|
"resolved": "boolean | string",
|
|
78
76
|
"references": {
|
|
79
|
-
"
|
|
77
|
+
"DBShellSubNavigationProps": {
|
|
80
78
|
"location": "import",
|
|
81
79
|
"path": "./model",
|
|
82
|
-
"id": "src/components/
|
|
80
|
+
"id": "src/components/shell-sub-navigation/model.ts::DBShellSubNavigationProps"
|
|
83
81
|
}
|
|
84
82
|
}
|
|
85
83
|
},
|
|
@@ -93,43 +91,18 @@ export class DBPage {
|
|
|
93
91
|
"setter": false,
|
|
94
92
|
"reflect": false
|
|
95
93
|
},
|
|
96
|
-
"
|
|
94
|
+
"expandButtonTooltip": {
|
|
97
95
|
"type": "string",
|
|
98
|
-
"attribute": "
|
|
96
|
+
"attribute": "expand-button-tooltip",
|
|
99
97
|
"mutable": false,
|
|
100
98
|
"complexType": {
|
|
101
|
-
"original": "
|
|
102
|
-
"resolved": "
|
|
103
|
-
"references": {
|
|
104
|
-
"DBPageProps": {
|
|
105
|
-
"location": "import",
|
|
106
|
-
"path": "./model",
|
|
107
|
-
"id": "src/components/page/model.ts::DBPageProps"
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
},
|
|
111
|
-
"required": false,
|
|
112
|
-
"optional": false,
|
|
113
|
-
"docs": {
|
|
114
|
-
"tags": [],
|
|
115
|
-
"text": ""
|
|
116
|
-
},
|
|
117
|
-
"getter": false,
|
|
118
|
-
"setter": false,
|
|
119
|
-
"reflect": false
|
|
120
|
-
},
|
|
121
|
-
"variant": {
|
|
122
|
-
"type": "string",
|
|
123
|
-
"attribute": "variant",
|
|
124
|
-
"mutable": false,
|
|
125
|
-
"complexType": {
|
|
126
|
-
"original": "DBPageProps[\"variant\"]",
|
|
127
|
-
"resolved": "\"auto\" | \"fixed\"",
|
|
99
|
+
"original": "DBShellSubNavigationProps[\"expandButtonTooltip\"]",
|
|
100
|
+
"resolved": "string",
|
|
128
101
|
"references": {
|
|
129
|
-
"
|
|
102
|
+
"DBShellSubNavigationProps": {
|
|
130
103
|
"location": "import",
|
|
131
104
|
"path": "./model",
|
|
132
|
-
"id": "src/components/
|
|
105
|
+
"id": "src/components/shell-sub-navigation/model.ts::DBShellSubNavigationProps"
|
|
133
106
|
}
|
|
134
107
|
}
|
|
135
108
|
},
|
|
@@ -148,13 +121,13 @@ export class DBPage {
|
|
|
148
121
|
"attribute": "id",
|
|
149
122
|
"mutable": false,
|
|
150
123
|
"complexType": {
|
|
151
|
-
"original": "
|
|
124
|
+
"original": "DBShellSubNavigationProps[\"id\"]",
|
|
152
125
|
"resolved": "string",
|
|
153
126
|
"references": {
|
|
154
|
-
"
|
|
127
|
+
"DBShellSubNavigationProps": {
|
|
155
128
|
"location": "import",
|
|
156
129
|
"path": "./model",
|
|
157
|
-
"id": "src/components/
|
|
130
|
+
"id": "src/components/shell-sub-navigation/model.ts::DBShellSubNavigationProps"
|
|
158
131
|
}
|
|
159
132
|
}
|
|
160
133
|
},
|
|
@@ -173,38 +146,13 @@ export class DBPage {
|
|
|
173
146
|
"attribute": "classname",
|
|
174
147
|
"mutable": false,
|
|
175
148
|
"complexType": {
|
|
176
|
-
"original": "
|
|
177
|
-
"resolved": "string",
|
|
178
|
-
"references": {
|
|
179
|
-
"DBPageProps": {
|
|
180
|
-
"location": "import",
|
|
181
|
-
"path": "./model",
|
|
182
|
-
"id": "src/components/page/model.ts::DBPageProps"
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
},
|
|
186
|
-
"required": false,
|
|
187
|
-
"optional": false,
|
|
188
|
-
"docs": {
|
|
189
|
-
"tags": [],
|
|
190
|
-
"text": ""
|
|
191
|
-
},
|
|
192
|
-
"getter": false,
|
|
193
|
-
"setter": false,
|
|
194
|
-
"reflect": false
|
|
195
|
-
},
|
|
196
|
-
"mainClass": {
|
|
197
|
-
"type": "string",
|
|
198
|
-
"attribute": "main-class",
|
|
199
|
-
"mutable": false,
|
|
200
|
-
"complexType": {
|
|
201
|
-
"original": "DBPageProps[\"mainClass\"]",
|
|
149
|
+
"original": "DBShellSubNavigationProps[\"className\"]",
|
|
202
150
|
"resolved": "string",
|
|
203
151
|
"references": {
|
|
204
|
-
"
|
|
152
|
+
"DBShellSubNavigationProps": {
|
|
205
153
|
"location": "import",
|
|
206
154
|
"path": "./model",
|
|
207
|
-
"id": "src/components/
|
|
155
|
+
"id": "src/components/shell-sub-navigation/model.ts::DBShellSubNavigationProps"
|
|
208
156
|
}
|
|
209
157
|
}
|
|
210
158
|
},
|
|
@@ -222,8 +170,9 @@ export class DBPage {
|
|
|
222
170
|
}
|
|
223
171
|
static get states() {
|
|
224
172
|
return {
|
|
225
|
-
"
|
|
173
|
+
"_id": {},
|
|
174
|
+
"_open": {}
|
|
226
175
|
};
|
|
227
176
|
}
|
|
228
177
|
}
|
|
229
|
-
//# sourceMappingURL=
|
|
178
|
+
//# sourceMappingURL=shell-sub-navigation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shell-sub-navigation.js","sourceRoot":"","sources":["../../../src/components/shell-sub-navigation/shell-sub-navigation.tsx"],"names":[],"mappings":"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","sourcesContent":["import { DEFAULT_COLLAPSE, DEFAULT_EXPAND } from \"../../shared/constants\";\nimport { cls, getBoolean, getBooleanAsString, uuid } from \"../../utils\";\nimport { DBButton } from \"../button/button\";\nimport { DBTooltip } from \"../tooltip/tooltip\";\nimport { DBShellSubNavigationProps, DBShellSubNavigationState } from \"./model\";\n\nimport { Component, h, Fragment, Prop, State } from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-shell-sub-navigation\",\n})\nexport class DBShellSubNavigation {\n private _ref!: HTMLDivElement | any;\n @Prop() expanded: DBShellSubNavigationProps[\"expanded\"];\n @Prop() expandButtonTooltip: DBShellSubNavigationProps[\"expandButtonTooltip\"];\n @Prop() id: DBShellSubNavigationProps[\"id\"];\n @Prop({attribute: \"classname\"}) className: DBShellSubNavigationProps[\"className\"];\n @State() _id = `db-shell-sub-navigation-${uuid()}`;\n @State() _open = true;\n\n handleToggle(event: any) {\n event.stopPropagation();\n this._open = !this._open;\n }\n getToggleButtonText() {\n if (this.expandButtonTooltip) {\n return this.expandButtonTooltip;\n }\n const fnOutput = () => undefined;\n return fnOutput() ?? (this._open ? DEFAULT_COLLAPSE : DEFAULT_EXPAND);\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-shell-sub-navigation\");\n }\n\n render() {\n return (\n <div\n class={cls(\"db-shell-sub-navigation\", this.className)}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this.id ?? this._id}\n data-open={getBooleanAsString(this._open)}\n >\n <slot></slot>\n <div class=\"db-shell-sub-navigation-button\">\n <db-button\n variant=\"ghost\"\n icon=\"double_chevron_left\"\n onClick={(event) => this.handleToggle(event)}\n aria-controls={this.id ?? this._id}\n aria-expanded={getBooleanAsString(this._open)}\n noText={true}\n >\n <db-tooltip variant=\"label\" placement=\"right\">\n {this.getToggleButtonText()}\n </db-tooltip>\n </db-button>\n </div>\n </div>\n );\n }\n}\n"]}
|
|
@@ -41,9 +41,9 @@ export class DBStack {
|
|
|
41
41
|
this.enableAttributePassing(this._ref, "db-stack");
|
|
42
42
|
}
|
|
43
43
|
render() {
|
|
44
|
-
return (h("div", { key: '
|
|
44
|
+
return (h("div", { key: '1df9ac65aea5e376e9fd1e528e993fbad99f6eca', class: cls("db-stack", this.className), ref: (el) => {
|
|
45
45
|
this._ref = el;
|
|
46
|
-
}, id: this.id, "data-gap": this.gap, "data-variant": this.variant, "data-direction": this.direction, "data-alignment": this.alignment, "data-justify-content": this.justifyContent, "data-wrap": getBooleanAsString(this.wrap) }, h("slot", { key: '
|
|
46
|
+
}, id: this.id, "data-gap": this.gap, "data-variant": this.variant, "data-direction": this.direction, "data-alignment": this.alignment, "data-justify-content": this.justifyContent, "data-wrap": getBooleanAsString(this.wrap) }, h("slot", { key: 'bf0f35fdcb667cd698e550349239c124cbd918e2' })));
|
|
47
47
|
}
|
|
48
48
|
static get is() { return "db-stack"; }
|
|
49
49
|
static get properties() {
|
|
@@ -62,7 +62,7 @@ export class DBSwitch {
|
|
|
62
62
|
}
|
|
63
63
|
render() {
|
|
64
64
|
var _a;
|
|
65
|
-
return (h("label", { key: '
|
|
65
|
+
return (h("label", { key: '33619eafe3a2e8a47ca679055b96a50d841b3234', class: cls("db-switch", this.className), "data-visual-aid": getBooleanAsString(this.visualAid), "data-size": this.size, "data-hide-label": getHideProp(this.showLabel), "data-emphasis": this.emphasis, htmlFor: this._id, "data-hide-asterisk": getHideProp(this.showRequiredAsterisk) }, h("input", { key: '825623490438794568e4db81afc59ca184bc5bc9', type: "checkbox", role: "switch", id: this._id, ref: (el) => {
|
|
66
66
|
this._ref = el;
|
|
67
67
|
}, checked: getBoolean(this.checked, "checked"), value: this.value, disabled: getBoolean(this.disabled, "disabled"), "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, name: this.name, required: getBoolean(this.required, "required"), "data-aid-icon": (_a = this.iconLeading) !== null && _a !== void 0 ? _a : this.icon, "data-aid-icon-trailing": this.iconTrailing, onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event) }), this.label ? this.label : h("slot", null)));
|
|
68
68
|
}
|
|
@@ -90,9 +90,9 @@ export class DBTabItem {
|
|
|
90
90
|
}
|
|
91
91
|
render() {
|
|
92
92
|
var _a, _b;
|
|
93
|
-
return (h("li", { key: '
|
|
93
|
+
return (h("li", { key: '6834c0c5cd746c74ab9375fd3b7a0bbfcf9cd8de', class: cls("db-tab-item", this.className), role: "none" }, h("label", { key: '4c02ceeab6f29ac35e88f0c1fdcb5e5e71fabc16', htmlFor: this.id, "data-icon": (_a = this.iconLeading) !== null && _a !== void 0 ? _a : this.icon, "data-icon-trailing": this.iconTrailing, "data-show-icon": getBooleanAsString((_b = this.showIconLeading) !== null && _b !== void 0 ? _b : this.showIcon), "data-show-icon-trailing": getBooleanAsString(this.showIconTrailing), "data-no-text": getBooleanAsString(this.noText) }, h("input", { key: '92462251582b618f63690ed87b55e98d0c781614', type: "radio", role: "tab", disabled: getBoolean(this.disabled, "disabled"), "aria-selected": this._selected, checked: getBoolean(this.checked, "checked"), ref: (el) => {
|
|
94
94
|
this._ref = el;
|
|
95
|
-
}, name: this._name, id: this.id, onInput: (event) => this.handleChange(event) }), this.label ? this.label : null, h("slot", { key: '
|
|
95
|
+
}, name: this._name, id: this.id, onInput: (event) => this.handleChange(event) }), this.label ? this.label : null, h("slot", { key: '3b722d44d55702e4345c53de1dce079858c13a30' }))));
|
|
96
96
|
}
|
|
97
97
|
static get is() { return "db-tab-item"; }
|
|
98
98
|
static get properties() {
|
|
@@ -46,9 +46,9 @@ export class DBTabList {
|
|
|
46
46
|
this._id = this.id || "tab-list-" + uuid();
|
|
47
47
|
}
|
|
48
48
|
render() {
|
|
49
|
-
return (h("div", { key: '
|
|
49
|
+
return (h("div", { key: '16e39937415a1e0e3d830a2c177e08f8962d1562', class: cls("db-tab-list", this.className), ref: (el) => {
|
|
50
50
|
this._ref = el;
|
|
51
|
-
}, id: this._id }, h("ul", { key: '
|
|
51
|
+
}, id: this._id }, h("ul", { key: '485722fc15cc2e30d8ea06f6b7304b7f36d0cb93', role: "tablist" }, h("slot", { key: '32d874b1f39bfceb0746fabb4c8b10786c8c3703' }))));
|
|
52
52
|
}
|
|
53
53
|
static get is() { return "db-tab-list"; }
|
|
54
54
|
static get properties() {
|
|
@@ -41,9 +41,9 @@ export class DBTabPanel {
|
|
|
41
41
|
this.enableAttributePassing(this._ref, "db-tab-panel");
|
|
42
42
|
}
|
|
43
43
|
render() {
|
|
44
|
-
return (h("section", { key: '
|
|
44
|
+
return (h("section", { key: '47b4a0d3f76c40a5c7635c2bc47721d6ce0a7b2b', class: cls("db-tab-panel", this.className), role: "tabpanel", ref: (el) => {
|
|
45
45
|
this._ref = el;
|
|
46
|
-
}, id: this.id }, this.content ? this.content : null, h("slot", { key: '
|
|
46
|
+
}, id: this.id }, this.content ? this.content : null, h("slot", { key: '4fcf2ce1825aba7a4ea2415f5ce1d0bd94ee0847' })));
|
|
47
47
|
}
|
|
48
48
|
static get is() { return "db-tab-panel"; }
|
|
49
49
|
static get properties() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/components/tabs/model.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAU,CAAC;AAEjE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,MAAM,EAAE,UAAU,CAAU,CAAC","sourcesContent":["import { AlignmentProps, GlobalProps, GlobalState, InitializedState, InputEvent, OrientationProps, WidthProps } from '../../shared/model';\nimport { DBTabItemProps } from '../tab-item/model';\nimport { DBTabPanelProps } from '../tab-panel/model';\nexport const TabsBehaviorList = ['scrollbar', 'arrows'] as const;\nexport type TabsBehaviorType = (typeof TabsBehaviorList)[number];\nexport const TabsInitialSelectedModeList = ['auto', 'manually'] as const;\nexport type TabsInitialSelectedModeType = (typeof TabsInitialSelectedModeList)[number];\nexport type DBSimpleTabProps = DBTabItemProps & DBTabPanelProps;\nexport type DBTabsDefaultProps = {\n /**\n *
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/components/tabs/model.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAU,CAAC;AAEjE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,MAAM,EAAE,UAAU,CAAU,CAAC","sourcesContent":["import { AlignmentProps, GlobalProps, GlobalState, InitializedState, InputEvent, OrientationProps, OverflowScrollButtonProps, OverflowScrollButtonState, WidthProps } from '../../shared/model';\nimport { DBTabItemProps } from '../tab-item/model';\nimport { DBTabPanelProps } from '../tab-panel/model';\nexport const TabsBehaviorList = ['scrollbar', 'arrows'] as const;\nexport type TabsBehaviorType = (typeof TabsBehaviorList)[number];\nexport const TabsInitialSelectedModeList = ['auto', 'manually'] as const;\nexport type TabsInitialSelectedModeType = (typeof TabsInitialSelectedModeList)[number];\nexport type DBSimpleTabProps = DBTabItemProps & DBTabPanelProps;\nexport type DBTabsDefaultProps = {\n /**\n * Show a scrollbar or buttons with arrows to navigate for horizontal tabs with overflow visible\n */\n behavior?: TabsBehaviorType;\n\n /**\n * Default behavior is auto selecting the first tab, change selected tab by index\n */\n initialSelectedIndex?: number | string;\n\n /**\n * Default behavior is auto selecting the first tab, disable it with 'manually'\n */\n initialSelectedMode?: TabsInitialSelectedModeType;\n\n /**\n * The name of the tab bar, is required for grouping multiple tabs together. Will overwrite names from children.\n */\n name?: string;\n\n /**\n * Provide simple tabs with label + text as content\n */\n tabs?: DBSimpleTabProps[] | string;\n};\nexport type DBTabsEventProps = {\n /**\n * Informs the user if the current tab index has changed.\n */\n indexChange?: (index?: number) => void;\n\n /**\n * Informs the user if the current tab index has changed.\n */\n onIndexChange?: (index?: number) => void;\n /**\n * Informs the user if another tab has been selected.\n */\n onTabSelect?: (event?: InputEvent<HTMLElement>) => void;\n\n /**\n * Informs the user if another tab has been selected.\n */\n tabSelect?: (event?: InputEvent<HTMLElement>) => void;\n};\nexport type DBTabsProps = DBTabsDefaultProps & GlobalProps & OrientationProps & WidthProps & AlignmentProps & OverflowScrollButtonProps & AlignmentProps & DBTabsEventProps;\nexport type DBTabsDefaultState = {\n _name: string;\n scrollContainer?: Element | null;\n convertTabs: () => DBSimpleTabProps[];\n initTabList: () => void;\n initTabs: (init?: boolean) => void;\n handleChange: (event: InputEvent<HTMLElement>) => void;\n};\nexport type DBTabsState = DBTabsDefaultState & GlobalState & InitializedState & OverflowScrollButtonState"]}
|
|
@@ -63,7 +63,7 @@ export class DBTabs {
|
|
|
63
63
|
}
|
|
64
64
|
initTabs(init) {
|
|
65
65
|
if (this._ref) {
|
|
66
|
-
const tabItems = Array.from(this._ref.
|
|
66
|
+
const tabItems = Array.from(this._ref.querySelectorAll(":is(:scope > db-tab-list .db-tab-item, :scope > .db-tab-list .db-tab-item)"));
|
|
67
67
|
const tabPanels = Array.from(this._ref.querySelectorAll(":is(:scope > .db-tab-panel, :scope > db-tab-panel > .db-tab-panel)"));
|
|
68
68
|
for (const tabItem of tabItems) {
|
|
69
69
|
const index = tabItems.indexOf(tabItem);
|
|
@@ -190,10 +190,10 @@ export class DBTabs {
|
|
|
190
190
|
}
|
|
191
191
|
render() {
|
|
192
192
|
var _a, _b, _c, _d;
|
|
193
|
-
return (h("div", { key: '
|
|
193
|
+
return (h("div", { key: 'f14b1aec9550feb2cf2355717126a4eb587ec3cf', class: cls("db-tabs", this.className), ref: (el) => {
|
|
194
194
|
this._ref = el;
|
|
195
|
-
}, id: this._id, "data-orientation": this.orientation, "data-scroll-behavior": this.behavior, "data-alignment": (_a = this.alignment) !== null && _a !== void 0 ? _a : "start", "data-width": (_b = this.width) !== null && _b !== void 0 ? _b : "auto", onInput: (event) => this.handleChange(event), onChange: (event) => this.handleChange(event) }, this.showScrollLeft ? (h("db-button", { class: "
|
|
196
|
-
_d.map((tab, index) => (h("db-tab-panel", { key: this.name + "tab-panel" + index, content: tab.content }, tab.children))))) : null, this.showScrollRight ? (h("db-button", { class: "
|
|
195
|
+
}, id: this._id, "data-orientation": this.orientation, "data-scroll-behavior": this.behavior, "data-alignment": (_a = this.alignment) !== null && _a !== void 0 ? _a : "start", "data-width": (_b = this.width) !== null && _b !== void 0 ? _b : "auto", onInput: (event) => this.handleChange(event), onChange: (event) => this.handleChange(event) }, this.showScrollLeft ? (h("db-button", { class: "overflow-scroll-left-button", variant: "ghost", icon: "chevron_left", type: "button", noText: true, onClick: () => this.scroll(true) }, "Scroll left")) : null, this.tabs ? (h(Fragment, null, h("db-tab-list", null, (_c = this.convertTabs()) === null || _c === void 0 ? void 0 : _c.map((tab, index) => (h("db-tab-item", { key: this.name + "tab-item" + index, active: tab.active, label: tab.label, iconTrailing: tab.iconTrailing, icon: tab.icon, noText: tab.noText })))), (_d = this.convertTabs()) === null || _d === void 0 ? void 0 :
|
|
196
|
+
_d.map((tab, index) => (h("db-tab-panel", { key: this.name + "tab-panel" + index, content: tab.content }, tab.children))))) : null, this.showScrollRight ? (h("db-button", { class: "overflow-scroll-right-button", variant: "ghost", icon: "chevron_right", type: "button", noText: true, onClick: () => this.scroll() }, "Scroll right")) : null, h("slot", { key: '84663c8df2015a93453f6ac240ab69e4df495ebe' })));
|
|
197
197
|
}
|
|
198
198
|
static get is() { return "db-tabs"; }
|
|
199
199
|
static get properties() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["import { InputEvent } from \"../../shared/model\";\nimport { cls, uuid } from \"../../utils\";\nimport { DBButton } from \"../button/button\";\nimport { DBTabItem } from \"../tab-item/tab-item\";\nimport { DBTabList } from \"../tab-list/tab-list\";\nimport { DBTabPanel } from \"../tab-panel/tab-panel\";\nimport { DBSimpleTabProps, DBTabsProps, DBTabsState } from \"./model\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n EventEmitter,\n Prop,\n State,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-tabs\",\n})\nexport class DBTabs {\n private _ref!: HTMLDivElement | any;\n @Prop() id: DBTabsProps[\"id\"];\n @Prop() name: DBTabsProps[\"name\"];\n @Prop() tabs: DBTabsProps[\"tabs\"];\n @Prop() arrowScrollDistance: DBTabsProps[\"arrowScrollDistance\"];\n @Prop() orientation: DBTabsProps[\"orientation\"];\n @Prop() behavior: DBTabsProps[\"behavior\"];\n @Prop() initialSelectedMode: DBTabsProps[\"initialSelectedMode\"];\n @Prop() initialSelectedIndex: DBTabsProps[\"initialSelectedIndex\"];\n @Event() indexChange: EventEmitter<\n Parameters<Required<DBTabsProps>[\"onIndexChange\"]>[number]\n > | void;\n @Event() tabSelect: EventEmitter<\n Parameters<Required<DBTabsProps>[\"onTabSelect\"]>[number]\n > | void;\n @Prop({attribute: \"classname\"}) className: DBTabsProps[\"className\"];\n @Prop() alignment: DBTabsProps[\"alignment\"];\n @Prop() width: DBTabsProps[\"width\"];\n @State() _id = \"tabs-\" + uuid();\n @State() _name = \"\";\n @State() initialized = false;\n @State() showScrollLeft = false;\n @State() showScrollRight = false;\n @State() scrollContainer = null;\n\n convertTabs() {\n try {\n if (typeof this.tabs === \"string\") {\n return JSON.parse(this.tabs as string);\n }\n return this.tabs as DBSimpleTabProps[];\n } catch (error) {\n console.error(error);\n }\n return [];\n }\n evaluateScrollButtons(tList: Element) {\n const needsScroll = tList.scrollWidth > tList.clientWidth;\n this.showScrollLeft = needsScroll && tList.scrollLeft > 1;\n this.showScrollRight =\n needsScroll && tList.scrollLeft < tList.scrollWidth - tList.clientWidth;\n }\n scroll(left?: boolean) {\n let step = Number(this.arrowScrollDistance) || 100;\n if (left) {\n step *= -1;\n }\n this.scrollContainer?.scrollBy({\n top: 0,\n left: step,\n behavior: \"smooth\",\n });\n }\n initTabList() {\n if (this._ref) {\n const tabList = this._ref.querySelector(\".db-tab-list\");\n if (tabList) {\n const container: HTMLElement | null =\n tabList.querySelector('[role=\"tablist\"]');\n if (container) {\n container.setAttribute(\n \"aria-orientation\",\n this.orientation || \"horizontal\"\n );\n if (this.behavior === \"arrows\") {\n this.scrollContainer = container;\n this.evaluateScrollButtons(container);\n container.addEventListener(\"scroll\", () => {\n this.evaluateScrollButtons(container);\n });\n }\n }\n }\n }\n }\n initTabs(init?: boolean) {\n if (this._ref) {\n const tabItems = Array.from<Element>(\n this._ref.getElementsByClassName(\"db-tab-item\")\n );\n const tabPanels = Array.from<Element>(\n this._ref.querySelectorAll(\n \":is(:scope > .db-tab-panel, :scope > db-tab-panel > .db-tab-panel)\"\n )\n );\n for (const tabItem of tabItems) {\n const index: number = tabItems.indexOf(tabItem);\n const label = tabItem.querySelector(\"label\");\n const input = tabItem.querySelector(\"input\");\n if (input && label) {\n if (!input.id) {\n const tabId = `${this._name}-tab-${index}`;\n label.setAttribute(\"for\", tabId);\n input.id = tabId;\n input.setAttribute(\"name\", this._name);\n if (tabPanels.length > index) {\n input.setAttribute(\n \"aria-controls\",\n `${this._name}-tab-panel-${index}`\n );\n }\n }\n if (init) {\n // Auto select\n const autoSelect =\n !this.initialSelectedMode || this.initialSelectedMode === \"auto\";\n const shouldAutoSelect =\n (this.initialSelectedIndex == null && index === 0) ||\n Number(this.initialSelectedIndex) === index;\n if (autoSelect && shouldAutoSelect) {\n input.click();\n }\n }\n }\n }\n for (const panel of tabPanels) {\n if (panel.id) continue;\n const index: number = tabPanels.indexOf(panel);\n panel.id = `${this._name}-tab-panel-${index}`;\n panel.setAttribute(\"aria-labelledby\", `${this._name}-tab-${index}`);\n }\n }\n }\n handleChange(event: InputEvent<HTMLElement>) {\n event.stopPropagation();\n if (event.target) {\n const target = event.target as HTMLElement;\n const parent = target.parentElement;\n if (\n parent &&\n parent.parentElement &&\n parent.parentElement?.nodeName === \"LI\"\n ) {\n const tabItem = parent.parentElement.parentElement;\n if (tabItem) {\n const list = tabItem.parentElement;\n if (list) {\n const indices = Array.from(list.childNodes).indexOf(tabItem);\n if (this.indexChange) {\n this.indexChange.emit(indices);\n }\n if (this.tabSelect) {\n this.tabSelect.emit(event);\n }\n }\n }\n }\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n if (this._ref && this.initialized) {\n this.initTabList();\n this.initTabs(true);\n const tabList = this._ref.querySelector(\".db-tab-list\");\n if (tabList) {\n const observer = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.removedNodes.length || mutation.addedNodes.length) {\n this.initTabList();\n this.initTabs();\n }\n });\n });\n observer.observe(tabList, {\n childList: true,\n subtree: true,\n });\n }\n this.initialized = false;\n }\n }\n\n @Watch(\"_ref\")\n @Watch(\"initialized\")\n watch0() {\n this.watch0Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-tabs\");\n this._id = this.id || this._id;\n this._name = `tabs-${this.name || uuid()}`;\n this.initialized = true;\n this.watch0Fn();\n }\n\n render() {\n return (\n <div\n class={cls(\"db-tabs\", this.className)}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this._id}\n data-orientation={this.orientation}\n data-scroll-behavior={this.behavior}\n data-alignment={this.alignment ?? \"start\"}\n data-width={this.width ?? \"auto\"}\n onInput={(event) => this.handleChange(event)}\n onChange={(event) => this.handleChange(event)}\n >\n {this.showScrollLeft ? (\n <db-button\n class=\"tabs-scroll-left\"\n variant=\"ghost\"\n icon=\"chevron_left\"\n type=\"button\"\n noText={true}\n onClick={() => this.scroll(true)}\n >\n Scroll left\n </db-button>\n ) : null}\n {this.tabs ? (\n <Fragment>\n <db-tab-list>\n {this.convertTabs()?.map((tab, index) => (\n <db-tab-item\n key={this.name + \"tab-item\" + index}\n active={tab.active}\n label={tab.label}\n iconTrailing={tab.iconTrailing}\n icon={tab.icon}\n noText={tab.noText}\n ></db-tab-item>\n ))}\n </db-tab-list>\n {this.convertTabs()?.map((tab, index) => (\n <db-tab-panel\n key={this.name + \"tab-panel\" + index}\n content={tab.content}\n >\n {tab.children}\n </db-tab-panel>\n ))}\n </Fragment>\n ) : null}\n {this.showScrollRight ? (\n <db-button\n class=\"tabs-scroll-right\"\n variant=\"ghost\"\n icon=\"chevron_right\"\n type=\"button\"\n noText={true}\n onClick={() => this.scroll()}\n >\n Scroll right\n </db-button>\n ) : null}\n <slot></slot>\n </div>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["import { InputEvent } from \"../../shared/model\";\nimport { cls, uuid } from \"../../utils\";\nimport { DBButton } from \"../button/button\";\nimport { DBTabItem } from \"../tab-item/tab-item\";\nimport { DBTabList } from \"../tab-list/tab-list\";\nimport { DBTabPanel } from \"../tab-panel/tab-panel\";\nimport { DBSimpleTabProps, DBTabsProps, DBTabsState } from \"./model\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n EventEmitter,\n Prop,\n State,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-tabs\",\n})\nexport class DBTabs {\n private _ref!: HTMLDivElement | any;\n @Prop() id: DBTabsProps[\"id\"];\n @Prop() name: DBTabsProps[\"name\"];\n @Prop() tabs: DBTabsProps[\"tabs\"];\n @Prop() arrowScrollDistance: DBTabsProps[\"arrowScrollDistance\"];\n @Prop() orientation: DBTabsProps[\"orientation\"];\n @Prop() behavior: DBTabsProps[\"behavior\"];\n @Prop() initialSelectedMode: DBTabsProps[\"initialSelectedMode\"];\n @Prop() initialSelectedIndex: DBTabsProps[\"initialSelectedIndex\"];\n @Event() indexChange: EventEmitter<\n Parameters<Required<DBTabsProps>[\"onIndexChange\"]>[number]\n > | void;\n @Event() tabSelect: EventEmitter<\n Parameters<Required<DBTabsProps>[\"onTabSelect\"]>[number]\n > | void;\n @Prop({attribute: \"classname\"}) className: DBTabsProps[\"className\"];\n @Prop() alignment: DBTabsProps[\"alignment\"];\n @Prop() width: DBTabsProps[\"width\"];\n @State() _id = \"tabs-\" + uuid();\n @State() _name = \"\";\n @State() initialized = false;\n @State() showScrollLeft = false;\n @State() showScrollRight = false;\n @State() scrollContainer = null;\n\n convertTabs() {\n try {\n if (typeof this.tabs === \"string\") {\n return JSON.parse(this.tabs as string);\n }\n return this.tabs as DBSimpleTabProps[];\n } catch (error) {\n console.error(error);\n }\n return [];\n }\n evaluateScrollButtons(tList: Element) {\n const needsScroll = tList.scrollWidth > tList.clientWidth;\n this.showScrollLeft = needsScroll && tList.scrollLeft > 1;\n this.showScrollRight =\n needsScroll && tList.scrollLeft < tList.scrollWidth - tList.clientWidth;\n }\n scroll(left?: boolean) {\n let step = Number(this.arrowScrollDistance) || 100;\n if (left) {\n step *= -1;\n }\n this.scrollContainer?.scrollBy({\n top: 0,\n left: step,\n behavior: \"smooth\",\n });\n }\n initTabList() {\n if (this._ref) {\n const tabList = this._ref.querySelector(\".db-tab-list\");\n if (tabList) {\n const container: HTMLElement | null =\n tabList.querySelector('[role=\"tablist\"]');\n if (container) {\n container.setAttribute(\n \"aria-orientation\",\n this.orientation || \"horizontal\"\n );\n if (this.behavior === \"arrows\") {\n this.scrollContainer = container;\n this.evaluateScrollButtons(container);\n container.addEventListener(\"scroll\", () => {\n this.evaluateScrollButtons(container);\n });\n }\n }\n }\n }\n }\n initTabs(init?: boolean) {\n if (this._ref) {\n const tabItems = Array.from<Element>(\n this._ref.querySelectorAll(\n \":is(:scope > db-tab-list .db-tab-item, :scope > .db-tab-list .db-tab-item)\"\n )\n );\n const tabPanels = Array.from<Element>(\n this._ref.querySelectorAll(\n \":is(:scope > .db-tab-panel, :scope > db-tab-panel > .db-tab-panel)\"\n )\n );\n for (const tabItem of tabItems) {\n const index: number = tabItems.indexOf(tabItem);\n const label = tabItem.querySelector(\"label\");\n const input = tabItem.querySelector(\"input\");\n if (input && label) {\n if (!input.id) {\n const tabId = `${this._name}-tab-${index}`;\n label.setAttribute(\"for\", tabId);\n input.id = tabId;\n input.setAttribute(\"name\", this._name);\n if (tabPanels.length > index) {\n input.setAttribute(\n \"aria-controls\",\n `${this._name}-tab-panel-${index}`\n );\n }\n }\n if (init) {\n // Auto select\n const autoSelect =\n !this.initialSelectedMode || this.initialSelectedMode === \"auto\";\n const shouldAutoSelect =\n (this.initialSelectedIndex == null && index === 0) ||\n Number(this.initialSelectedIndex) === index;\n if (autoSelect && shouldAutoSelect) {\n input.click();\n }\n }\n }\n }\n for (const panel of tabPanels) {\n if (panel.id) continue;\n const index: number = tabPanels.indexOf(panel);\n panel.id = `${this._name}-tab-panel-${index}`;\n panel.setAttribute(\"aria-labelledby\", `${this._name}-tab-${index}`);\n }\n }\n }\n handleChange(event: InputEvent<HTMLElement>) {\n event.stopPropagation();\n if (event.target) {\n const target = event.target as HTMLElement;\n const parent = target.parentElement;\n if (\n parent &&\n parent.parentElement &&\n parent.parentElement?.nodeName === \"LI\"\n ) {\n const tabItem = parent.parentElement.parentElement;\n if (tabItem) {\n const list = tabItem.parentElement;\n if (list) {\n const indices = Array.from(list.childNodes).indexOf(tabItem);\n if (this.indexChange) {\n this.indexChange.emit(indices);\n }\n if (this.tabSelect) {\n this.tabSelect.emit(event);\n }\n }\n }\n }\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n if (this._ref && this.initialized) {\n this.initTabList();\n this.initTabs(true);\n const tabList = this._ref.querySelector(\".db-tab-list\");\n if (tabList) {\n const observer = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.removedNodes.length || mutation.addedNodes.length) {\n this.initTabList();\n this.initTabs();\n }\n });\n });\n observer.observe(tabList, {\n childList: true,\n subtree: true,\n });\n }\n this.initialized = false;\n }\n }\n\n @Watch(\"_ref\")\n @Watch(\"initialized\")\n watch0() {\n this.watch0Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-tabs\");\n this._id = this.id || this._id;\n this._name = `tabs-${this.name || uuid()}`;\n this.initialized = true;\n this.watch0Fn();\n }\n\n render() {\n return (\n <div\n class={cls(\"db-tabs\", this.className)}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this._id}\n data-orientation={this.orientation}\n data-scroll-behavior={this.behavior}\n data-alignment={this.alignment ?? \"start\"}\n data-width={this.width ?? \"auto\"}\n onInput={(event) => this.handleChange(event)}\n onChange={(event) => this.handleChange(event)}\n >\n {this.showScrollLeft ? (\n <db-button\n class=\"overflow-scroll-left-button\"\n variant=\"ghost\"\n icon=\"chevron_left\"\n type=\"button\"\n noText={true}\n onClick={() => this.scroll(true)}\n >\n Scroll left\n </db-button>\n ) : null}\n {this.tabs ? (\n <Fragment>\n <db-tab-list>\n {this.convertTabs()?.map((tab, index) => (\n <db-tab-item\n key={this.name + \"tab-item\" + index}\n active={tab.active}\n label={tab.label}\n iconTrailing={tab.iconTrailing}\n icon={tab.icon}\n noText={tab.noText}\n ></db-tab-item>\n ))}\n </db-tab-list>\n {this.convertTabs()?.map((tab, index) => (\n <db-tab-panel\n key={this.name + \"tab-panel\" + index}\n content={tab.content}\n >\n {tab.children}\n </db-tab-panel>\n ))}\n </Fragment>\n ) : null}\n {this.showScrollRight ? (\n <db-button\n class=\"overflow-scroll-right-button\"\n variant=\"ghost\"\n icon=\"chevron_right\"\n type=\"button\"\n noText={true}\n onClick={() => this.scroll()}\n >\n Scroll right\n </db-button>\n ) : null}\n <slot></slot>\n </div>\n );\n }\n}\n"]}
|
|
@@ -58,9 +58,9 @@ export class DBTag {
|
|
|
58
58
|
}
|
|
59
59
|
render() {
|
|
60
60
|
var _a;
|
|
61
|
-
return (h("div", { key: '
|
|
61
|
+
return (h("div", { key: 'd577e316471a4bfdaf27fc8a77ceeba7507b38f2', class: cls("db-tag", this.className), ref: (el) => {
|
|
62
62
|
this._ref = el;
|
|
63
|
-
}, id: this.id, "data-semantic": this.semantic, "data-emphasis": this.emphasis, "data-icon": this.icon, "data-show-check-state": getBooleanAsString((_a = this.showCheckState) !== null && _a !== void 0 ? _a : true), "data-show-icon": getBooleanAsString(this.showIcon), "data-no-text": getBooleanAsString(this.noText), "data-overflow": getBooleanAsString(this.overflow) }, h("slot", { key: '
|
|
63
|
+
}, id: this.id, "data-semantic": this.semantic, "data-emphasis": this.emphasis, "data-icon": this.icon, "data-show-check-state": getBooleanAsString((_a = this.showCheckState) !== null && _a !== void 0 ? _a : true), "data-show-icon": getBooleanAsString(this.showIcon), "data-no-text": getBooleanAsString(this.noText), "data-overflow": getBooleanAsString(this.overflow) }, h("slot", { key: 'df45173138f69af11d240e7a1455e61e3e261e37', name: "content" }), h("slot", { key: 'dd9276c68ba80eaf81def04664a605e41e42f7b4' }), this.text ? this.text : null, this.behavior === "removable" ? (h("button", { class: "db-button db-tab-remove-button", "data-icon": "cross", "data-size": "small", "data-no-text": "true", "data-variant": "ghost", type: "button", onClick: (event) => this.handleRemove(event) }, h("db-tooltip", { variant: "label" }, this.getRemoveButtonText()))) : null));
|
|
64
64
|
}
|
|
65
65
|
static get is() { return "db-tag"; }
|
|
66
66
|
static get properties() {
|
|
@@ -31,7 +31,7 @@ export class DBTextarea {
|
|
|
31
31
|
DEFAULT_INVALID_MESSAGE;
|
|
32
32
|
if (hasVoiceOver()) {
|
|
33
33
|
this._voiceOverFallback = this._invalidMessage;
|
|
34
|
-
delay(() => (this._voiceOverFallback = ""), 1000);
|
|
34
|
+
void delay(() => (this._voiceOverFallback = ""), 1000);
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
else if (this.hasValidState() &&
|
|
@@ -40,7 +40,7 @@ export class DBTextarea {
|
|
|
40
40
|
this._descByIds = this._validMessageId;
|
|
41
41
|
if (hasVoiceOver()) {
|
|
42
42
|
this._voiceOverFallback = (_d = this.validMessage) !== null && _d !== void 0 ? _d : DEFAULT_VALID_MESSAGE;
|
|
43
|
-
delay(() => (this._voiceOverFallback = ""), 1000);
|
|
43
|
+
void delay(() => (this._voiceOverFallback = ""), 1000);
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
else if (stringPropVisible(this.message, this.showMessage)) {
|
|
@@ -150,10 +150,10 @@ export class DBTextarea {
|
|
|
150
150
|
}
|
|
151
151
|
render() {
|
|
152
152
|
var _a, _b, _c, _d, _e;
|
|
153
|
-
return (h("div", { key: '
|
|
153
|
+
return (h("div", { key: 'aa5bd58258d8b5f0156303615865b49fe8dd18e7', class: cls("db-textarea", this.className), "data-variant": this.variant, "data-hide-asterisk": getHideProp(this.showRequiredAsterisk), "data-hide-label": getHideProp(this.showLabel) }, h("label", { key: '4c26e0c612dcb8846ba5704fe6f464219639d1e0', htmlFor: this._id }, (_a = this.label) !== null && _a !== void 0 ? _a : DEFAULT_LABEL), h("textarea", { key: '531517b8ec2f1c5f3383367009cb07d8396014fe', "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, "data-field-sizing": this.fieldSizing, ref: (el) => {
|
|
154
154
|
this._ref = el;
|
|
155
155
|
}, id: this._id, "data-resize": this.resize, "data-hide-resizer": getHideProp((_b = this.showResizer) !== null && _b !== void 0 ? _b : true), disabled: getBoolean(this.disabled, "disabled"), required: getBoolean(this.required, "required"), readOnly: getBoolean(this.readOnly, "readOnly") ||
|
|
156
|
-
getBoolean(this.readonly, "readonly"), form: this.form, maxLength: getNumber(this.maxLength, this.maxlength), minLength: getNumber(this.minLength, this.minlength), name: this.name, wrap: this.wrap, spellcheck: this.spellCheck, autocomplete: this.autocomplete, onInput: (event) => this.handleInput(event), onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event), value: (_c = this.value) !== null && _c !== void 0 ? _c : this._value, "aria-describedby": (_d = this.ariaDescribedBy) !== null && _d !== void 0 ? _d : this._descByIds, placeholder: (_e = this.placeholder) !== null && _e !== void 0 ? _e : DEFAULT_PLACEHOLDER, rows: getNumber(this.rows, DEFAULT_ROWS), cols: getNumber(this.cols) }), stringPropVisible(this.message, this.showMessage) ? (h("db-infotext", { size: "small", icon: this.messageIcon, id: this._messageId }, this.message)) : null, this.hasValidState() ? (h("db-infotext", { size: "small", semantic: "successful", id: this._validMessageId }, this.validMessage || DEFAULT_VALID_MESSAGE)) : null, h("db-infotext", { key: '
|
|
156
|
+
getBoolean(this.readonly, "readonly"), form: this.form, maxLength: getNumber(this.maxLength, this.maxlength), minLength: getNumber(this.minLength, this.minlength), name: this.name, wrap: this.wrap, spellcheck: this.spellCheck, autocomplete: this.autocomplete, onInput: (event) => this.handleInput(event), onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event), value: (_c = this.value) !== null && _c !== void 0 ? _c : this._value, "aria-describedby": (_d = this.ariaDescribedBy) !== null && _d !== void 0 ? _d : this._descByIds, placeholder: (_e = this.placeholder) !== null && _e !== void 0 ? _e : DEFAULT_PLACEHOLDER, rows: getNumber(this.rows, DEFAULT_ROWS), cols: getNumber(this.cols) }), stringPropVisible(this.message, this.showMessage) ? (h("db-infotext", { size: "small", icon: this.messageIcon, id: this._messageId }, this.message)) : null, this.hasValidState() ? (h("db-infotext", { size: "small", semantic: "successful", id: this._validMessageId }, this.validMessage || DEFAULT_VALID_MESSAGE)) : null, h("db-infotext", { key: '968b24ce95596a8c280c379b01337c2fce9dfcae', size: "small", semantic: "critical", id: this._invalidMessageId }, this._invalidMessage), h("span", { key: 'e952c1a870d448b052e22bb799c1d1774a1c3686', "data-visually-hidden": "true", role: "status" }, this._voiceOverFallback)));
|
|
157
157
|
}
|
|
158
158
|
static get is() { return "db-textarea"; }
|
|
159
159
|
static get properties() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../src/components/textarea/textarea.tsx"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import {\n DEFAULT_INVALID_MESSAGE,\n DEFAULT_INVALID_MESSAGE_ID_SUFFIX,\n DEFAULT_LABEL,\n DEFAULT_MESSAGE_ID_SUFFIX,\n DEFAULT_PLACEHOLDER,\n DEFAULT_ROWS,\n DEFAULT_VALID_MESSAGE,\n DEFAULT_VALID_MESSAGE_ID_SUFFIX,\n} from \"../../shared/constants\";\nimport { ChangeEvent, InputEvent, InteractionEvent } from \"../../shared/model\";\nimport {\n cls,\n delay,\n getBoolean,\n getHideProp,\n getNumber,\n hasVoiceOver,\n stringPropVisible,\n uuid,\n} from \"../../utils\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\nimport { DBInfotext } from \"../infotext/infotext\";\nimport { DBTextareaProps, DBTextareaState } from \"./model\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n EventEmitter,\n Prop,\n State,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-textarea\",\n})\nexport class DBTextarea {\n private _ref!: HTMLTextAreaElement | any;\n @Prop() id: DBTextareaProps[\"id\"];\n @Prop() invalidMessage: DBTextareaProps[\"invalidMessage\"];\n @Prop() message: DBTextareaProps[\"message\"];\n @Prop() showMessage: DBTextareaProps[\"showMessage\"];\n @Prop() value: DBTextareaProps[\"value\"];\n @Prop() validMessage: DBTextareaProps[\"validMessage\"];\n @Prop() validation: DBTextareaProps[\"validation\"];\n @Prop() required: DBTextareaProps[\"required\"];\n @Prop() minLength: DBTextareaProps[\"minLength\"];\n @Prop() maxLength: DBTextareaProps[\"maxLength\"];\n @Event() input: EventEmitter<\n Parameters<Required<DBTextareaProps>[\"onInput\"]>[number]\n > | void;\n @Event() change: EventEmitter<\n Parameters<Required<DBTextareaProps>[\"onChange\"]>[number]\n > | void;\n @Event() blur: EventEmitter<\n Parameters<Required<DBTextareaProps>[\"onBlur\"]>[number]\n > | void;\n @Event() focus: EventEmitter<\n Parameters<Required<DBTextareaProps>[\"onFocus\"]>[number]\n > | void;\n @Prop({attribute: \"classname\"}) className: DBTextareaProps[\"className\"];\n @Prop() variant: DBTextareaProps[\"variant\"];\n @Prop() showRequiredAsterisk: DBTextareaProps[\"showRequiredAsterisk\"];\n @Prop() showLabel: DBTextareaProps[\"showLabel\"];\n @Prop() label: DBTextareaProps[\"label\"];\n @Prop() fieldSizing: DBTextareaProps[\"fieldSizing\"];\n @Prop() resize: DBTextareaProps[\"resize\"];\n @Prop() showResizer: DBTextareaProps[\"showResizer\"];\n @Prop() disabled: DBTextareaProps[\"disabled\"];\n @Prop() readOnly: DBTextareaProps[\"readOnly\"];\n @Prop() readonly: DBTextareaProps[\"readonly\"];\n @Prop() form: DBTextareaProps[\"form\"];\n @Prop() maxlength: DBTextareaProps[\"maxlength\"];\n @Prop() minlength: DBTextareaProps[\"minlength\"];\n @Prop() name: DBTextareaProps[\"name\"];\n @Prop() wrap: DBTextareaProps[\"wrap\"];\n @Prop() spellCheck: DBTextareaProps[\"spellCheck\"];\n @Prop() autocomplete: DBTextareaProps[\"autocomplete\"];\n @Prop() ariaDescribedBy: DBTextareaProps[\"ariaDescribedBy\"];\n @Prop() placeholder: DBTextareaProps[\"placeholder\"];\n @Prop() rows: DBTextareaProps[\"rows\"];\n @Prop() cols: DBTextareaProps[\"cols\"];\n @Prop() messageIcon: DBTextareaProps[\"messageIcon\"];\n @State() _id = undefined;\n @State() _messageId = undefined;\n @State() _validMessageId = undefined;\n @State() _invalidMessageId = undefined;\n @State() _invalidMessage = undefined;\n @State() _descByIds = undefined;\n @State() _value = \"\";\n @State() _voiceOverFallback = \"\";\n\n hasValidState() {\n return !!(this.validMessage ?? this.validation === \"valid\");\n }\n handleValidation() {\n /* For a11y reasons we need to map the correct message with the textarea */\n if (!this._ref?.validity.valid || this.validation === \"invalid\") {\n this._descByIds = this._invalidMessageId;\n this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this._invalidMessage;\n delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (\n this.hasValidState() &&\n this._ref?.validity.valid &&\n (this.required || this.minLength || this.maxLength)\n ) {\n this._descByIds = this._validMessageId;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this.validMessage ?? DEFAULT_VALID_MESSAGE;\n delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = this._messageId;\n } else {\n this._descByIds = undefined;\n }\n }\n handleInput(event: InputEvent<HTMLTextAreaElement>) {\n if (this.input) {\n this.input.emit(event);\n }\n this.handleValidation();\n }\n handleChange(event: ChangeEvent<HTMLTextAreaElement>) {\n if (this.change) {\n this.change.emit(event);\n }\n this.handleValidation();\n }\n handleBlur(event: InteractionEvent<HTMLTextAreaElement> | any) {\n if (this.blur) {\n this.blur.emit(event);\n }\n }\n handleFocus(event: InteractionEvent<HTMLTextAreaElement> | any) {\n if (this.focus) {\n this.focus.emit(event);\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLTextAreaElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n }\n\n @Watch(\"_ref\")\n @Watch(\"invalidMessage\")\n watch0() {\n this.watch0Fn();\n }\n\n watch1Fn() {\n if (this._id) {\n const messageId = this._id + DEFAULT_MESSAGE_ID_SUFFIX;\n this._messageId = messageId;\n this._validMessageId = this._id + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = this._id + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = messageId;\n }\n this.handleValidation();\n }\n }\n\n @Watch(\"_id\")\n watch1() {\n this.watch1Fn();\n }\n\n watch2Fn() {\n this._value = this.value;\n }\n\n @Watch(\"value\")\n watch2() {\n this.watch2Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-textarea\");\n const mId = this.id ?? `textarea-${uuid()}`;\n this._id = mId;\n this._messageId = mId + DEFAULT_MESSAGE_ID_SUFFIX;\n this._validMessageId = mId + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = mId + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n this._invalidMessage = this.invalidMessage || DEFAULT_INVALID_MESSAGE;\n this.watch0Fn();\n this.watch1Fn();\n this.watch2Fn();\n }\n\n render() {\n return (\n <div\n class={cls(\"db-textarea\", this.className)}\n data-variant={this.variant}\n data-hide-asterisk={getHideProp(this.showRequiredAsterisk)}\n data-hide-label={getHideProp(this.showLabel)}\n >\n <label htmlFor={this._id}>{this.label ?? DEFAULT_LABEL}</label>\n <textarea\n aria-invalid={this.validation === \"invalid\"}\n data-custom-validity={this.validation}\n data-field-sizing={this.fieldSizing}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this._id}\n data-resize={this.resize}\n data-hide-resizer={getHideProp(this.showResizer ?? true)}\n disabled={getBoolean(this.disabled, \"disabled\")}\n required={getBoolean(this.required, \"required\")}\n readOnly={\n getBoolean(this.readOnly, \"readOnly\") ||\n getBoolean(this.readonly, \"readonly\")\n }\n form={this.form}\n maxLength={getNumber(this.maxLength, this.maxlength)}\n minLength={getNumber(this.minLength, this.minlength)}\n name={this.name}\n wrap={this.wrap}\n spellcheck={this.spellCheck}\n autocomplete={this.autocomplete}\n onInput={(event) => this.handleInput(event)}\n onChange={(event) => this.handleChange(event)}\n onBlur={(event) => this.handleBlur(event)}\n onFocus={(event) => this.handleFocus(event)}\n value={this.value ?? this._value}\n aria-describedby={this.ariaDescribedBy ?? this._descByIds}\n placeholder={this.placeholder ?? DEFAULT_PLACEHOLDER}\n rows={getNumber(this.rows, DEFAULT_ROWS)}\n cols={getNumber(this.cols)}\n ></textarea>\n {stringPropVisible(this.message, this.showMessage) ? (\n <db-infotext\n size=\"small\"\n icon={this.messageIcon}\n id={this._messageId}\n >\n {this.message}\n </db-infotext>\n ) : null}\n {this.hasValidState() ? (\n <db-infotext\n size=\"small\"\n semantic=\"successful\"\n id={this._validMessageId}\n >\n {this.validMessage || DEFAULT_VALID_MESSAGE}\n </db-infotext>\n ) : null}\n <db-infotext\n size=\"small\"\n semantic=\"critical\"\n id={this._invalidMessageId}\n >\n {this._invalidMessage}\n </db-infotext>\n <span data-visually-hidden=\"true\" role=\"status\">\n {this._voiceOverFallback}\n </span>\n </div>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../src/components/textarea/textarea.tsx"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import {\n DEFAULT_INVALID_MESSAGE,\n DEFAULT_INVALID_MESSAGE_ID_SUFFIX,\n DEFAULT_LABEL,\n DEFAULT_MESSAGE_ID_SUFFIX,\n DEFAULT_PLACEHOLDER,\n DEFAULT_ROWS,\n DEFAULT_VALID_MESSAGE,\n DEFAULT_VALID_MESSAGE_ID_SUFFIX,\n} from \"../../shared/constants\";\nimport { ChangeEvent, InputEvent, InteractionEvent } from \"../../shared/model\";\nimport {\n cls,\n delay,\n getBoolean,\n getHideProp,\n getNumber,\n hasVoiceOver,\n stringPropVisible,\n uuid,\n} from \"../../utils\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\nimport { DBInfotext } from \"../infotext/infotext\";\nimport { DBTextareaProps, DBTextareaState } from \"./model\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n EventEmitter,\n Prop,\n State,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-textarea\",\n})\nexport class DBTextarea {\n private _ref!: HTMLTextAreaElement | any;\n @Prop() id: DBTextareaProps[\"id\"];\n @Prop() invalidMessage: DBTextareaProps[\"invalidMessage\"];\n @Prop() message: DBTextareaProps[\"message\"];\n @Prop() showMessage: DBTextareaProps[\"showMessage\"];\n @Prop() value: DBTextareaProps[\"value\"];\n @Prop() validMessage: DBTextareaProps[\"validMessage\"];\n @Prop() validation: DBTextareaProps[\"validation\"];\n @Prop() required: DBTextareaProps[\"required\"];\n @Prop() minLength: DBTextareaProps[\"minLength\"];\n @Prop() maxLength: DBTextareaProps[\"maxLength\"];\n @Event() input: EventEmitter<\n Parameters<Required<DBTextareaProps>[\"onInput\"]>[number]\n > | void;\n @Event() change: EventEmitter<\n Parameters<Required<DBTextareaProps>[\"onChange\"]>[number]\n > | void;\n @Event() blur: EventEmitter<\n Parameters<Required<DBTextareaProps>[\"onBlur\"]>[number]\n > | void;\n @Event() focus: EventEmitter<\n Parameters<Required<DBTextareaProps>[\"onFocus\"]>[number]\n > | void;\n @Prop({attribute: \"classname\"}) className: DBTextareaProps[\"className\"];\n @Prop() variant: DBTextareaProps[\"variant\"];\n @Prop() showRequiredAsterisk: DBTextareaProps[\"showRequiredAsterisk\"];\n @Prop() showLabel: DBTextareaProps[\"showLabel\"];\n @Prop() label: DBTextareaProps[\"label\"];\n @Prop() fieldSizing: DBTextareaProps[\"fieldSizing\"];\n @Prop() resize: DBTextareaProps[\"resize\"];\n @Prop() showResizer: DBTextareaProps[\"showResizer\"];\n @Prop() disabled: DBTextareaProps[\"disabled\"];\n @Prop() readOnly: DBTextareaProps[\"readOnly\"];\n @Prop() readonly: DBTextareaProps[\"readonly\"];\n @Prop() form: DBTextareaProps[\"form\"];\n @Prop() maxlength: DBTextareaProps[\"maxlength\"];\n @Prop() minlength: DBTextareaProps[\"minlength\"];\n @Prop() name: DBTextareaProps[\"name\"];\n @Prop() wrap: DBTextareaProps[\"wrap\"];\n @Prop() spellCheck: DBTextareaProps[\"spellCheck\"];\n @Prop() autocomplete: DBTextareaProps[\"autocomplete\"];\n @Prop() ariaDescribedBy: DBTextareaProps[\"ariaDescribedBy\"];\n @Prop() placeholder: DBTextareaProps[\"placeholder\"];\n @Prop() rows: DBTextareaProps[\"rows\"];\n @Prop() cols: DBTextareaProps[\"cols\"];\n @Prop() messageIcon: DBTextareaProps[\"messageIcon\"];\n @State() _id = undefined;\n @State() _messageId = undefined;\n @State() _validMessageId = undefined;\n @State() _invalidMessageId = undefined;\n @State() _invalidMessage = undefined;\n @State() _descByIds = undefined;\n @State() _value = \"\";\n @State() _voiceOverFallback = \"\";\n\n hasValidState() {\n return !!(this.validMessage ?? this.validation === \"valid\");\n }\n handleValidation() {\n /* For a11y reasons we need to map the correct message with the textarea */\n if (!this._ref?.validity.valid || this.validation === \"invalid\") {\n this._descByIds = this._invalidMessageId;\n this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this._invalidMessage;\n void delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (\n this.hasValidState() &&\n this._ref?.validity.valid &&\n (this.required || this.minLength || this.maxLength)\n ) {\n this._descByIds = this._validMessageId;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this.validMessage ?? DEFAULT_VALID_MESSAGE;\n void delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = this._messageId;\n } else {\n this._descByIds = undefined;\n }\n }\n handleInput(event: InputEvent<HTMLTextAreaElement>) {\n if (this.input) {\n this.input.emit(event);\n }\n this.handleValidation();\n }\n handleChange(event: ChangeEvent<HTMLTextAreaElement>) {\n if (this.change) {\n this.change.emit(event);\n }\n this.handleValidation();\n }\n handleBlur(event: InteractionEvent<HTMLTextAreaElement> | any) {\n if (this.blur) {\n this.blur.emit(event);\n }\n }\n handleFocus(event: InteractionEvent<HTMLTextAreaElement> | any) {\n if (this.focus) {\n this.focus.emit(event);\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLTextAreaElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n }\n\n @Watch(\"_ref\")\n @Watch(\"invalidMessage\")\n watch0() {\n this.watch0Fn();\n }\n\n watch1Fn() {\n if (this._id) {\n const messageId = this._id + DEFAULT_MESSAGE_ID_SUFFIX;\n this._messageId = messageId;\n this._validMessageId = this._id + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = this._id + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = messageId;\n }\n this.handleValidation();\n }\n }\n\n @Watch(\"_id\")\n watch1() {\n this.watch1Fn();\n }\n\n watch2Fn() {\n this._value = this.value;\n }\n\n @Watch(\"value\")\n watch2() {\n this.watch2Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-textarea\");\n const mId = this.id ?? `textarea-${uuid()}`;\n this._id = mId;\n this._messageId = mId + DEFAULT_MESSAGE_ID_SUFFIX;\n this._validMessageId = mId + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = mId + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n this._invalidMessage = this.invalidMessage || DEFAULT_INVALID_MESSAGE;\n this.watch0Fn();\n this.watch1Fn();\n this.watch2Fn();\n }\n\n render() {\n return (\n <div\n class={cls(\"db-textarea\", this.className)}\n data-variant={this.variant}\n data-hide-asterisk={getHideProp(this.showRequiredAsterisk)}\n data-hide-label={getHideProp(this.showLabel)}\n >\n <label htmlFor={this._id}>{this.label ?? DEFAULT_LABEL}</label>\n <textarea\n aria-invalid={this.validation === \"invalid\"}\n data-custom-validity={this.validation}\n data-field-sizing={this.fieldSizing}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this._id}\n data-resize={this.resize}\n data-hide-resizer={getHideProp(this.showResizer ?? true)}\n disabled={getBoolean(this.disabled, \"disabled\")}\n required={getBoolean(this.required, \"required\")}\n readOnly={\n getBoolean(this.readOnly, \"readOnly\") ||\n getBoolean(this.readonly, \"readonly\")\n }\n form={this.form}\n maxLength={getNumber(this.maxLength, this.maxlength)}\n minLength={getNumber(this.minLength, this.minlength)}\n name={this.name}\n wrap={this.wrap}\n spellcheck={this.spellCheck}\n autocomplete={this.autocomplete}\n onInput={(event) => this.handleInput(event)}\n onChange={(event) => this.handleChange(event)}\n onBlur={(event) => this.handleBlur(event)}\n onFocus={(event) => this.handleFocus(event)}\n value={this.value ?? this._value}\n aria-describedby={this.ariaDescribedBy ?? this._descByIds}\n placeholder={this.placeholder ?? DEFAULT_PLACEHOLDER}\n rows={getNumber(this.rows, DEFAULT_ROWS)}\n cols={getNumber(this.cols)}\n ></textarea>\n {stringPropVisible(this.message, this.showMessage) ? (\n <db-infotext\n size=\"small\"\n icon={this.messageIcon}\n id={this._messageId}\n >\n {this.message}\n </db-infotext>\n ) : null}\n {this.hasValidState() ? (\n <db-infotext\n size=\"small\"\n semantic=\"successful\"\n id={this._validMessageId}\n >\n {this.validMessage || DEFAULT_VALID_MESSAGE}\n </db-infotext>\n ) : null}\n <db-infotext\n size=\"small\"\n semantic=\"critical\"\n id={this._invalidMessageId}\n >\n {this._invalidMessage}\n </db-infotext>\n <span data-visually-hidden=\"true\" role=\"status\">\n {this._voiceOverFallback}\n </span>\n </div>\n );\n }\n}\n"]}
|