@scania/tegel 1.42.0 → 1.43.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/tds-accordion.cjs.entry.js +2 -2
- package/dist/cjs/tds-block.cjs.entry.js +1 -1
- package/dist/cjs/tds-body-cell.cjs.entry.js +4 -3
- package/dist/cjs/tds-button_2.cjs.entry.js +7 -5
- package/dist/cjs/tds-card.cjs.entry.js +2 -2
- package/dist/cjs/tds-checkbox.cjs.entry.js +5 -4
- package/dist/cjs/tds-core-header-item_2.cjs.entry.js +9 -5
- package/dist/cjs/tds-datetime.cjs.entry.js +8 -5
- package/dist/cjs/tds-dropdown_2.cjs.entry.js +49 -31
- package/dist/cjs/tds-folder-tabs.cjs.entry.js +10 -3
- package/dist/cjs/tds-footer-group.cjs.entry.js +6 -5
- package/dist/cjs/tds-footer-item.cjs.entry.js +6 -2
- package/dist/cjs/tds-footer.cjs.entry.js +2 -2
- package/dist/cjs/tds-header-brand-symbol.cjs.entry.js +2 -2
- package/dist/cjs/tds-header-cell.cjs.entry.js +10 -5
- package/dist/cjs/tds-header-dropdown-list.cjs.entry.js +5 -3
- package/dist/cjs/tds-header-dropdown.cjs.entry.js +7 -5
- package/dist/cjs/tds-header-launcher.cjs.entry.js +8 -4
- package/dist/cjs/tds-header.cjs.entry.js +8 -6
- package/dist/cjs/tds-icon.cjs.entry.js +1 -2
- package/dist/cjs/tds-inline-tabs.cjs.entry.js +10 -3
- package/dist/cjs/tds-message.cjs.entry.js +2 -2
- package/dist/cjs/tds-modal.cjs.entry.js +5 -4
- package/dist/cjs/tds-navigation-tabs.cjs.entry.js +12 -5
- package/dist/cjs/tds-popover-canvas.cjs.entry.js +4 -4
- package/dist/cjs/tds-popover-core.cjs.entry.js +10 -8
- package/dist/cjs/tds-popover-menu.cjs.entry.js +4 -4
- package/dist/cjs/tds-radio-button.cjs.entry.js +4 -1
- package/dist/cjs/tds-side-menu-collapse-button.cjs.entry.js +5 -4
- package/dist/cjs/tds-side-menu-dropdown-list-item.cjs.entry.js +13 -9
- package/dist/cjs/tds-side-menu-dropdown-list.cjs.entry.js +3 -3
- package/dist/cjs/tds-side-menu-dropdown.cjs.entry.js +5 -4
- package/dist/cjs/tds-side-menu-item.cjs.entry.js +15 -9
- package/dist/cjs/tds-side-menu.cjs.entry.js +12 -9
- package/dist/cjs/tds-slider.cjs.entry.js +26 -16
- package/dist/cjs/tds-step.cjs.entry.js +3 -1
- package/dist/cjs/tds-table-body-input-wrapper.cjs.entry.js +1 -1
- package/dist/cjs/tds-table-body-row-expandable.cjs.entry.js +17 -10
- package/dist/cjs/tds-table-body-row.cjs.entry.js +8 -5
- package/dist/cjs/tds-table-body.cjs.entry.js +9 -5
- package/dist/cjs/tds-table-footer.cjs.entry.js +15 -8
- package/dist/cjs/tds-table-header-input-wrapper.cjs.entry.js +1 -1
- package/dist/cjs/tds-table-header.cjs.entry.js +24 -18
- package/dist/cjs/tds-table-toolbar.cjs.entry.js +6 -4
- package/dist/cjs/tds-table.cjs.entry.js +14 -12
- package/dist/cjs/tds-text-field.cjs.entry.js +47 -21
- package/dist/cjs/tds-textarea.cjs.entry.js +5 -4
- package/dist/cjs/tds-toggle.cjs.entry.js +5 -4
- package/dist/cjs/tds-tooltip.cjs.entry.js +6 -10
- package/dist/cjs/tegel.cjs.js +1 -1
- package/dist/collection/components/accordion/accordion.js +4 -4
- package/dist/collection/components/block/block.js +3 -3
- package/dist/collection/components/button/button.js +9 -7
- package/dist/collection/components/card/card.js +4 -4
- package/dist/collection/components/checkbox/checkbox.js +6 -5
- package/dist/collection/components/chip/chip.js +1 -1
- package/dist/collection/components/datetime/datetime.js +10 -7
- package/dist/collection/components/dropdown/dropdown-option/dropdown-option.js +9 -6
- package/dist/collection/components/dropdown/dropdown.js +44 -31
- package/dist/collection/components/footer/footer-group/footer-group.js +6 -5
- package/dist/collection/components/footer/footer-item/footer-item.js +6 -2
- package/dist/collection/components/footer/footer.js +4 -4
- package/dist/collection/components/header/header-brand-symbol/header-brand-symbol.js +2 -2
- package/dist/collection/components/header/header-dropdown/header-dropdown.js +7 -5
- package/dist/collection/components/header/header-dropdown-list/header-dropdown-list.js +5 -3
- package/dist/collection/components/header/header-item/header-item.js +9 -5
- package/dist/collection/components/header/header-launcher/header-launcher.js +8 -4
- package/dist/collection/components/header/header.js +8 -6
- package/dist/collection/components/icon/icon.js +3 -4
- package/dist/collection/components/message/message.js +4 -4
- package/dist/collection/components/modal/modal.js +8 -7
- package/dist/collection/components/popover-canvas/popover-canvas.js +9 -9
- package/dist/collection/components/popover-core/popover-core.js +20 -23
- package/dist/collection/components/popover-menu/popover-menu.js +9 -9
- package/dist/collection/components/radio-button/radio-button.js +4 -1
- package/dist/collection/components/side-menu/side-menu-collapse-button/side-menu-collapse-button.js +5 -4
- package/dist/collection/components/side-menu/side-menu-dropdown/side-menu-dropdown.js +5 -4
- package/dist/collection/components/side-menu/side-menu-dropdown-list/side-menu-dropdown-list.js +3 -3
- package/dist/collection/components/side-menu/side-menu-dropdown-list-item/side-menu-dropdown-list-item.js +13 -9
- package/dist/collection/components/side-menu/side-menu-item/side-menu-item.js +15 -9
- package/dist/collection/components/side-menu/side-menu.js +12 -9
- package/dist/collection/components/slider/slider.js +26 -16
- package/dist/collection/components/stepper/step/step.js +3 -1
- package/dist/collection/components/table/table/table.js +36 -18
- package/dist/collection/components/table/table-body/table-body.js +9 -5
- package/dist/collection/components/table/table-body-cell/table-body-cell.js +7 -6
- package/dist/collection/components/table/table-body-input-wrapper/table-body-input-wrapper.js +1 -1
- package/dist/collection/components/table/table-body-row/table-body-row.js +13 -10
- package/dist/collection/components/table/table-body-row-expandable/table-body-row-expandable.js +23 -16
- package/dist/collection/components/table/table-footer/table-footer.js +20 -13
- package/dist/collection/components/table/table-header/table-header.js +27 -21
- package/dist/collection/components/table/table-header-cell/table-header-cell.js +22 -17
- package/dist/collection/components/table/table-header-input-wrapper/table-header-input-wrapper.js +1 -1
- package/dist/collection/components/table/table-toolbar/table-toolbar.js +8 -6
- package/dist/collection/components/tabs/folder-tabs/folder-tabs.js +12 -5
- package/dist/collection/components/tabs/inline-tabs/inline-tabs.js +10 -3
- package/dist/collection/components/tabs/navigation-tabs/navigation-tabs.js +12 -5
- package/dist/collection/components/text-field/text-field.css +8 -0
- package/dist/collection/components/text-field/text-field.js +97 -22
- package/dist/collection/components/textarea/textarea.js +7 -6
- package/dist/collection/components/toggle/toggle.js +5 -4
- package/dist/collection/components/tooltip/tooltip.js +9 -13
- package/dist/collection/tegel-light/components/tl-dropdown/_dropdownKeyboard.js +190 -0
- package/dist/collection/tegel-light/components/tl-dropdown/_dropdownScripts.js +304 -0
- package/dist/collection/utils/appendHiddenInput.js +6 -4
- package/dist/components/{p-d10d21bd.js → p-0d286c19.js} +2 -2
- package/dist/components/{p-63552d0e.js → p-415fafb3.js} +5 -5
- package/dist/components/{p-3308d5fa.js → p-6fd2b339.js} +10 -8
- package/dist/components/{p-c62b61fe.js → p-799470b1.js} +7 -5
- package/dist/components/{p-3a7e4d0d.js → p-81499e0f.js} +52 -24
- package/dist/components/{p-44f5b5e1.js → p-91803ba5.js} +5 -4
- package/dist/components/{p-04a014cf.js → p-ad376f70.js} +7 -11
- package/dist/components/{p-6ef207b2.js → p-d9cffacb.js} +11 -8
- package/dist/components/{p-9336db16.js → p-da11a695.js} +5 -3
- package/dist/components/{p-1dafdc8c.js → p-e0ccf8e6.js} +15 -9
- package/dist/components/{p-5ea0ae00.js → p-e52a9953.js} +41 -26
- package/dist/components/{p-7c3348eb.js → p-ead6727f.js} +9 -5
- package/dist/components/{p-f7d94947.js → p-edc838a0.js} +1 -2
- package/dist/components/tds-accordion-item.js +1 -1
- package/dist/components/tds-accordion.js +2 -2
- package/dist/components/tds-banner.js +1 -1
- package/dist/components/tds-block.js +1 -1
- package/dist/components/tds-body-cell.js +5 -4
- package/dist/components/tds-button.js +1 -1
- package/dist/components/tds-card.js +4 -4
- package/dist/components/tds-checkbox.js +1 -1
- package/dist/components/tds-datetime.js +9 -6
- package/dist/components/tds-dropdown-option.js +1 -1
- package/dist/components/tds-dropdown.js +1 -1
- package/dist/components/tds-folder-tabs.js +11 -4
- package/dist/components/tds-footer-group.js +7 -6
- package/dist/components/tds-footer-item.js +6 -2
- package/dist/components/tds-footer.js +2 -2
- package/dist/components/tds-header-brand-symbol.js +3 -3
- package/dist/components/tds-header-cell.js +11 -6
- package/dist/components/tds-header-dropdown-list.js +1 -1
- package/dist/components/tds-header-dropdown.js +11 -9
- package/dist/components/tds-header-hamburger.js +2 -2
- package/dist/components/tds-header-item.js +1 -1
- package/dist/components/tds-header-launcher-button.js +1 -1
- package/dist/components/tds-header-launcher-list.js +1 -1
- package/dist/components/tds-header-launcher.js +13 -9
- package/dist/components/tds-header.js +8 -6
- package/dist/components/tds-icon.js +1 -1
- package/dist/components/tds-inline-tabs.js +11 -4
- package/dist/components/tds-message.js +3 -3
- package/dist/components/tds-modal.js +6 -5
- package/dist/components/tds-navigation-tabs.js +13 -6
- package/dist/components/tds-popover-canvas.js +1 -1
- package/dist/components/tds-popover-core.js +1 -1
- package/dist/components/tds-popover-menu.js +5 -5
- package/dist/components/tds-radio-button.js +4 -1
- package/dist/components/tds-side-menu-close-button.js +1 -1
- package/dist/components/tds-side-menu-collapse-button.js +6 -5
- package/dist/components/tds-side-menu-dropdown-list-item.js +13 -9
- package/dist/components/tds-side-menu-dropdown-list.js +3 -3
- package/dist/components/tds-side-menu-dropdown.js +7 -6
- package/dist/components/tds-side-menu-item.js +1 -1
- package/dist/components/tds-side-menu.js +12 -9
- package/dist/components/tds-slider.js +30 -20
- package/dist/components/tds-step.js +4 -2
- package/dist/components/tds-table-body-input-wrapper.js +2 -2
- package/dist/components/tds-table-body-row-expandable.js +17 -10
- package/dist/components/tds-table-body-row.js +9 -6
- package/dist/components/tds-table-body.js +9 -5
- package/dist/components/tds-table-footer.js +19 -12
- package/dist/components/tds-table-header-input-wrapper.js +2 -2
- package/dist/components/tds-table-header.js +25 -19
- package/dist/components/tds-table-toolbar.js +7 -5
- package/dist/components/tds-table.js +14 -12
- package/dist/components/tds-text-field.js +1 -1
- package/dist/components/tds-textarea.js +8 -7
- package/dist/components/tds-toast.js +1 -1
- package/dist/components/tds-toggle.js +5 -4
- package/dist/components/tds-tooltip.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/tds-accordion.entry.js +2 -2
- package/dist/esm/tds-block.entry.js +1 -1
- package/dist/esm/tds-body-cell.entry.js +4 -3
- package/dist/esm/tds-button_2.entry.js +7 -5
- package/dist/esm/tds-card.entry.js +2 -2
- package/dist/esm/tds-checkbox.entry.js +5 -4
- package/dist/esm/tds-core-header-item_2.entry.js +9 -5
- package/dist/esm/tds-datetime.entry.js +8 -5
- package/dist/esm/tds-dropdown_2.entry.js +49 -31
- package/dist/esm/tds-folder-tabs.entry.js +10 -3
- package/dist/esm/tds-footer-group.entry.js +6 -5
- package/dist/esm/tds-footer-item.entry.js +6 -2
- package/dist/esm/tds-footer.entry.js +2 -2
- package/dist/esm/tds-header-brand-symbol.entry.js +2 -2
- package/dist/esm/tds-header-cell.entry.js +10 -5
- package/dist/esm/tds-header-dropdown-list.entry.js +5 -3
- package/dist/esm/tds-header-dropdown.entry.js +7 -5
- package/dist/esm/tds-header-launcher.entry.js +8 -4
- package/dist/esm/tds-header.entry.js +8 -6
- package/dist/esm/tds-icon.entry.js +1 -2
- package/dist/esm/tds-inline-tabs.entry.js +10 -3
- package/dist/esm/tds-message.entry.js +2 -2
- package/dist/esm/tds-modal.entry.js +5 -4
- package/dist/esm/tds-navigation-tabs.entry.js +12 -5
- package/dist/esm/tds-popover-canvas.entry.js +4 -4
- package/dist/esm/tds-popover-core.entry.js +10 -8
- package/dist/esm/tds-popover-menu.entry.js +4 -4
- package/dist/esm/tds-radio-button.entry.js +4 -1
- package/dist/esm/tds-side-menu-collapse-button.entry.js +5 -4
- package/dist/esm/tds-side-menu-dropdown-list-item.entry.js +13 -9
- package/dist/esm/tds-side-menu-dropdown-list.entry.js +3 -3
- package/dist/esm/tds-side-menu-dropdown.entry.js +5 -4
- package/dist/esm/tds-side-menu-item.entry.js +15 -9
- package/dist/esm/tds-side-menu.entry.js +12 -9
- package/dist/esm/tds-slider.entry.js +26 -16
- package/dist/esm/tds-step.entry.js +3 -1
- package/dist/esm/tds-table-body-input-wrapper.entry.js +1 -1
- package/dist/esm/tds-table-body-row-expandable.entry.js +17 -10
- package/dist/esm/tds-table-body-row.entry.js +8 -5
- package/dist/esm/tds-table-body.entry.js +9 -5
- package/dist/esm/tds-table-footer.entry.js +15 -8
- package/dist/esm/tds-table-header-input-wrapper.entry.js +1 -1
- package/dist/esm/tds-table-header.entry.js +24 -18
- package/dist/esm/tds-table-toolbar.entry.js +6 -4
- package/dist/esm/tds-table.entry.js +14 -12
- package/dist/esm/tds-text-field.entry.js +47 -21
- package/dist/esm/tds-textarea.entry.js +5 -4
- package/dist/esm/tds-toggle.entry.js +5 -4
- package/dist/esm/tds-tooltip.entry.js +6 -10
- package/dist/esm/tegel.js +1 -1
- package/dist/tegel/p-08c16b2f.entry.js +1 -0
- package/dist/tegel/p-0b37e91a.entry.js +1 -0
- package/dist/tegel/p-0ef32f0f.entry.js +1 -0
- package/dist/tegel/p-1e1a87c1.entry.js +1 -0
- package/dist/tegel/p-2268af7f.entry.js +1 -0
- package/dist/tegel/p-226d0290.entry.js +1 -0
- package/dist/tegel/p-252a7d3f.entry.js +1 -0
- package/dist/tegel/p-25473962.entry.js +1 -0
- package/dist/tegel/{p-650b98bf.entry.js → p-27369d6a.entry.js} +1 -1
- package/dist/tegel/p-3ef04672.entry.js +1 -0
- package/dist/tegel/p-40d99d7d.entry.js +1 -0
- package/dist/tegel/{p-28f85555.entry.js → p-40fa0f5b.entry.js} +1 -1
- package/dist/tegel/p-4e15f31d.entry.js +1 -0
- package/dist/tegel/p-57c08d0d.entry.js +1 -0
- package/dist/tegel/p-58ac68f3.entry.js +1 -0
- package/dist/tegel/p-6a472310.entry.js +1 -0
- package/dist/tegel/p-70836598.entry.js +1 -0
- package/dist/tegel/p-7104b955.entry.js +1 -0
- package/dist/tegel/p-781b2939.entry.js +1 -0
- package/dist/tegel/p-894e7e11.entry.js +1 -0
- package/dist/tegel/p-942f8c6f.entry.js +1 -0
- package/dist/tegel/p-98eff725.entry.js +1 -0
- package/dist/tegel/p-9b06bd5f.entry.js +1 -0
- package/dist/tegel/p-9bcb8b2d.entry.js +1 -0
- package/dist/tegel/p-9c56b031.entry.js +1 -0
- package/dist/tegel/p-a20a54ef.entry.js +1 -0
- package/dist/tegel/p-a2b2092a.entry.js +1 -0
- package/dist/tegel/p-a334b517.entry.js +1 -0
- package/dist/tegel/p-a60ed3de.entry.js +1 -0
- package/dist/tegel/p-a6dca188.entry.js +1 -0
- package/dist/tegel/{p-464469fe.entry.js → p-a912035b.entry.js} +1 -1
- package/dist/tegel/p-b218db70.entry.js +1 -0
- package/dist/tegel/p-b3b13975.entry.js +1 -0
- package/dist/tegel/{p-987f8f0f.entry.js → p-b9afb39e.entry.js} +1 -1
- package/dist/tegel/p-bb8c2a36.entry.js +1 -0
- package/dist/tegel/p-bee9e9d1.entry.js +1 -0
- package/dist/tegel/{p-f31f56fe.entry.js → p-c5694dd6.entry.js} +1 -1
- package/dist/tegel/{p-57a28f62.entry.js → p-ca068263.entry.js} +1 -1
- package/dist/tegel/{p-eb91e33b.entry.js → p-cda2e4b2.entry.js} +1 -1
- package/dist/tegel/p-d501a665.entry.js +1 -0
- package/dist/tegel/{p-f2318c88.entry.js → p-da38aa9a.entry.js} +1 -1
- package/dist/tegel/p-dda1ac69.entry.js +1 -0
- package/dist/tegel/p-e29fa563.entry.js +1 -0
- package/dist/tegel/p-ed66ef30.entry.js +1 -0
- package/dist/tegel/p-f602b3a1.entry.js +1 -0
- package/dist/tegel/p-f922308f.entry.js +1 -0
- package/dist/tegel/p-fb300776.entry.js +1 -0
- package/dist/tegel/p-fd22d1ca.entry.js +1 -0
- package/dist/tegel/{p-c6968db1.entry.js → p-fe4335ca.entry.js} +1 -1
- package/dist/tegel/tegel.esm.js +1 -1
- package/dist/types/components/accordion/accordion.d.ts +1 -1
- package/dist/types/components/block/block.d.ts +1 -1
- package/dist/types/components/button/button.d.ts +1 -1
- package/dist/types/components/card/card.d.ts +1 -1
- package/dist/types/components/datetime/datetime.d.ts +2 -2
- package/dist/types/components/dropdown/dropdown.d.ts +5 -5
- package/dist/types/components/footer/footer.d.ts +1 -1
- package/dist/types/components/icon/icon.d.ts +1 -1
- package/dist/types/components/message/message.d.ts +1 -1
- package/dist/types/components/modal/modal.d.ts +1 -1
- package/dist/types/components/popover-canvas/popover-canvas.d.ts +2 -2
- package/dist/types/components/popover-core/popover-core.d.ts +4 -4
- package/dist/types/components/popover-menu/popover-menu.d.ts +2 -2
- package/dist/types/components/slider/slider-stories-setup.d.ts +1 -1
- package/dist/types/components/table/table/table.d.ts +6 -3
- package/dist/types/components/table/table-body/table-body.d.ts +3 -3
- package/dist/types/components/table/table-body-cell/table-body-cell.d.ts +8 -5
- package/dist/types/components/table/table-body-input-wrapper/table-body-input-wrapper.d.ts +1 -1
- package/dist/types/components/table/table-body-row/table-body-row.d.ts +5 -5
- package/dist/types/components/table/table-body-row-expandable/table-body-row-expandable.d.ts +7 -7
- package/dist/types/components/table/table-footer/table-footer.d.ts +4 -4
- package/dist/types/components/table/table-header/table-header.d.ts +5 -5
- package/dist/types/components/table/table-header-cell/table-header-cell.d.ts +8 -8
- package/dist/types/components/table/table-header-input-wrapper/table-header-input-wrapper.d.ts +1 -1
- package/dist/types/components/table/table-toolbar/table-toolbar.d.ts +4 -4
- package/dist/types/components/tabs/folder-tabs/folder-tabs.d.ts +1 -1
- package/dist/types/components/text-field/text-field.d.ts +13 -2
- package/dist/types/components/textarea/textarea.d.ts +2 -2
- package/dist/types/components/tooltip/tooltip.d.ts +1 -1
- package/dist/types/components.d.ts +102 -81
- package/dist/types/tegel-light/components/tl-dropdown/_dropdownKeyboard.d.ts +1 -0
- package/dist/types/tegel-light/components/tl-dropdown/_dropdownScripts.d.ts +4 -0
- package/dist/types/types/Attributes.d.ts +1 -1
- package/dist/types/utils/findNextFocusableElement.d.ts +1 -1
- package/dist/types/utils/findPreviousFocusableElement.d.ts +1 -1
- package/dist/types/utils/getNextNestedChildOfSiblingsMatching.d.ts +1 -1
- package/dist/types/utils/getPreviousNestedChildOfSiblingsMatching.d.ts +1 -1
- package/package.json +1 -1
- package/dist/tegel/p-0672ddfc.entry.js +0 -1
- package/dist/tegel/p-08ad6a21.entry.js +0 -1
- package/dist/tegel/p-08f63e5d.entry.js +0 -1
- package/dist/tegel/p-09cd056c.entry.js +0 -1
- package/dist/tegel/p-0c9a51d9.entry.js +0 -1
- package/dist/tegel/p-0cfe8671.entry.js +0 -1
- package/dist/tegel/p-0e772ad7.entry.js +0 -1
- package/dist/tegel/p-17bc1e49.entry.js +0 -1
- package/dist/tegel/p-1859156f.entry.js +0 -1
- package/dist/tegel/p-1f4267a8.entry.js +0 -1
- package/dist/tegel/p-24a76927.entry.js +0 -1
- package/dist/tegel/p-354d3986.entry.js +0 -1
- package/dist/tegel/p-379df59b.entry.js +0 -1
- package/dist/tegel/p-3c97cb45.entry.js +0 -1
- package/dist/tegel/p-3e6d65ee.entry.js +0 -1
- package/dist/tegel/p-445fa788.entry.js +0 -1
- package/dist/tegel/p-51a17707.entry.js +0 -1
- package/dist/tegel/p-52689019.entry.js +0 -1
- package/dist/tegel/p-6b340718.entry.js +0 -1
- package/dist/tegel/p-72006dd7.entry.js +0 -1
- package/dist/tegel/p-743d4f07.entry.js +0 -1
- package/dist/tegel/p-77cfb0ef.entry.js +0 -1
- package/dist/tegel/p-7887bdbb.entry.js +0 -1
- package/dist/tegel/p-7b598e60.entry.js +0 -1
- package/dist/tegel/p-7ef50e7f.entry.js +0 -1
- package/dist/tegel/p-8c2695af.entry.js +0 -1
- package/dist/tegel/p-9b635e01.entry.js +0 -1
- package/dist/tegel/p-9f187848.entry.js +0 -1
- package/dist/tegel/p-9fdc8fa5.entry.js +0 -1
- package/dist/tegel/p-a090bd2f.entry.js +0 -1
- package/dist/tegel/p-a56436c8.entry.js +0 -1
- package/dist/tegel/p-b210d23c.entry.js +0 -1
- package/dist/tegel/p-c0cbc9f5.entry.js +0 -1
- package/dist/tegel/p-cf717912.entry.js +0 -1
- package/dist/tegel/p-cfd7ed1a.entry.js +0 -1
- package/dist/tegel/p-d1d45942.entry.js +0 -1
- package/dist/tegel/p-d7cdbc4e.entry.js +0 -1
- package/dist/tegel/p-e5b796e7.entry.js +0 -1
- package/dist/tegel/p-f3c32d4d.entry.js +0 -1
- package/dist/tegel/p-fd15ced7.entry.js +0 -1
|
@@ -14,6 +14,7 @@ export class TdsTextField {
|
|
|
14
14
|
this.label = '';
|
|
15
15
|
this.min = undefined;
|
|
16
16
|
this.max = undefined;
|
|
17
|
+
this.step = undefined;
|
|
17
18
|
this.helper = undefined;
|
|
18
19
|
this.placeholder = '';
|
|
19
20
|
this.value = '';
|
|
@@ -30,38 +31,61 @@ export class TdsTextField {
|
|
|
30
31
|
this.tdsAriaLabel = undefined;
|
|
31
32
|
this.required = false;
|
|
32
33
|
this.autocomplete = 'off';
|
|
34
|
+
this.hideNumberArrows = false;
|
|
33
35
|
this.focusInput = false;
|
|
34
36
|
}
|
|
35
37
|
handleChange(event) {
|
|
36
38
|
this.tdsChange.emit(event);
|
|
37
39
|
}
|
|
38
|
-
|
|
40
|
+
/** Data input event in value prop */
|
|
39
41
|
handleInput(event) {
|
|
40
42
|
const inputEl = event.target;
|
|
41
|
-
|
|
42
|
-
// Custom handling of number inputs when min/max are set
|
|
43
|
-
if (this.type === 'number') {
|
|
44
|
-
const numericValue = Number(value);
|
|
45
|
-
if (this.min !== undefined && numericValue < Number(this.min)) {
|
|
46
|
-
value = String(this.min);
|
|
47
|
-
}
|
|
48
|
-
if (this.max !== undefined && numericValue > Number(this.max)) {
|
|
49
|
-
value = String(this.max);
|
|
50
|
-
}
|
|
51
|
-
inputEl.value = value;
|
|
52
|
-
}
|
|
43
|
+
const { value } = inputEl;
|
|
53
44
|
this.value = value;
|
|
54
45
|
this.tdsInput.emit(event);
|
|
55
46
|
}
|
|
56
47
|
/** Set the input as focus when clicking the whole Text Field with suffix/prefix */
|
|
57
48
|
handleFocus(event) {
|
|
58
|
-
|
|
49
|
+
var _a;
|
|
50
|
+
(_a = this.textInput) === null || _a === void 0 ? void 0 : _a.focus();
|
|
59
51
|
this.focusInput = true;
|
|
60
52
|
this.tdsFocus.emit(event);
|
|
61
53
|
}
|
|
62
54
|
/** Set the input as focus when clicking the whole Text Field with suffix/prefix */
|
|
63
55
|
handleBlur(event) {
|
|
64
56
|
this.focusInput = false;
|
|
57
|
+
/** Custom handling of number inputs when min/max are set */
|
|
58
|
+
if (this.type === 'number' && this.textInput) {
|
|
59
|
+
const numericValue = this.textInput.valueAsNumber;
|
|
60
|
+
const minNum = this.min !== undefined ? Number(this.min) : undefined;
|
|
61
|
+
const maxNum = this.max !== undefined ? Number(this.max) : undefined;
|
|
62
|
+
if (minNum !== undefined && maxNum !== undefined && minNum > maxNum) {
|
|
63
|
+
console.warn('tds-text-field: min value is greater than max value');
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
if (!isNaN(numericValue)) {
|
|
67
|
+
const originalValue = this.textInput.value;
|
|
68
|
+
let clampedValue = originalValue;
|
|
69
|
+
let clampReason = null;
|
|
70
|
+
if (minNum !== undefined && numericValue < minNum) {
|
|
71
|
+
clampedValue = String(this.min);
|
|
72
|
+
clampReason = 'min';
|
|
73
|
+
}
|
|
74
|
+
if (maxNum !== undefined && numericValue > maxNum) {
|
|
75
|
+
clampedValue = String(this.max);
|
|
76
|
+
clampReason = 'max';
|
|
77
|
+
}
|
|
78
|
+
if (clampedValue !== originalValue && clampReason) {
|
|
79
|
+
this.textInput.value = clampedValue;
|
|
80
|
+
this.value = clampedValue;
|
|
81
|
+
this.tdsError.emit({
|
|
82
|
+
originalValue,
|
|
83
|
+
clampedValue,
|
|
84
|
+
reason: clampReason,
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
65
89
|
this.tdsBlur.emit(event);
|
|
66
90
|
}
|
|
67
91
|
/** Method to handle focus */
|
|
@@ -74,7 +98,7 @@ export class TdsTextField {
|
|
|
74
98
|
var _a;
|
|
75
99
|
const usesPrefixSlot = hasSlot('prefix', this.host);
|
|
76
100
|
const usesSuffixSlot = hasSlot('suffix', this.host);
|
|
77
|
-
return (h("div", { key: '
|
|
101
|
+
return (h("div", { key: 'c21d4167ad64e9cc08c309e658ddb6a0c431114f', class: {
|
|
78
102
|
'form-text-field': true,
|
|
79
103
|
'form-text-field-nomin': this.noMinWidth,
|
|
80
104
|
'text-field-focus': this.focusInput && !this.disabled,
|
|
@@ -92,19 +116,20 @@ export class TdsTextField {
|
|
|
92
116
|
'form-text-field-sm': this.size === 'sm',
|
|
93
117
|
'form-text-field-error': this.state === 'error',
|
|
94
118
|
'form-text-field-success': this.state === 'success',
|
|
95
|
-
} }, this.labelPosition === 'outside' && (h("div", { key: '
|
|
119
|
+
} }, this.labelPosition === 'outside' && (h("div", { key: 'fbe7ed68a33cefacab1c2afc7d9b810a59368dfc', class: "text-field-label-outside" }, h("label", { key: 'a9b988004bf788b3b58ee54f8c131b0f2014214e', htmlFor: `text-field-input-element-${this.uuid}` }, this.label))), h("div", { key: '10a1bd036b8fc91b0c1fb77121a0d02fd547eb2a', onClick: () => { var _a; return (_a = this.textInput) === null || _a === void 0 ? void 0 : _a.focus(); }, class: "text-field-container" }, usesPrefixSlot && (h("div", { key: '8b9838012fa8b4ad60d11bb3aa554cab7a12448c', class: {
|
|
96
120
|
'text-field-slot-wrap-prefix': true,
|
|
97
121
|
'text-field-error': this.state === 'error',
|
|
98
122
|
'text-field-success': this.state === 'success',
|
|
99
123
|
'text-field-default': this.state === 'default',
|
|
100
|
-
} }, h("slot", { key: '
|
|
124
|
+
} }, h("slot", { key: 'a460a94a247dfc5430b4f112466328161b4b628c', name: "prefix" }))), h("div", { key: '5a52dff30872f28cd021ca30224cf2527bf94e93', class: "text-field-input-container" }, h("input", { key: 'a6521a8748aed06230cbff2fe617fe7325e3370d', ref: (inputEl) => {
|
|
101
125
|
this.textInput = inputEl;
|
|
102
126
|
}, class: {
|
|
103
127
|
'text-field-input': true,
|
|
104
128
|
'text-field-input-sm': this.size === 'sm',
|
|
105
129
|
'text-field-input-md': this.size === 'md',
|
|
106
130
|
'text-field-input-lg': this.size === 'lg',
|
|
107
|
-
|
|
131
|
+
'text-field-input-no-arrows': this.hideNumberArrows,
|
|
132
|
+
}, type: this.type, disabled: this.disabled, readonly: this.disabled ? false : this.readOnly, placeholder: this.placeholder, value: this.value, autofocus: this.autofocus, maxlength: this.maxLength, name: this.name, min: this.min, max: this.max, step: this.step, onInput: (event) => this.handleInput(event), onChange: (event) => this.handleChange(event), onFocus: (event) => {
|
|
108
133
|
if (!this.readOnly) {
|
|
109
134
|
this.handleFocus(event);
|
|
110
135
|
}
|
|
@@ -112,13 +137,13 @@ export class TdsTextField {
|
|
|
112
137
|
if (!this.readOnly) {
|
|
113
138
|
this.handleBlur(event);
|
|
114
139
|
}
|
|
115
|
-
}, "aria-invalid": getAriaInvalid(this.host, this.state), "aria-label": this.tdsAriaLabel ? this.tdsAriaLabel : this.label, "aria-describedby": `text-field-helper-element-${this.uuid}`, "aria-readonly": this.readOnly, id: `text-field-input-element-${this.uuid}`, required: this.required, autocomplete: this.autocomplete }), this.labelPosition === 'inside' && this.size !== 'sm' && (h("label", { key: '
|
|
140
|
+
}, "aria-invalid": getAriaInvalid(this.host, this.state), "aria-label": this.tdsAriaLabel ? this.tdsAriaLabel : this.label, "aria-describedby": `text-field-helper-element-${this.uuid}`, "aria-readonly": this.readOnly, id: `text-field-input-element-${this.uuid}`, required: this.required, autocomplete: this.autocomplete }), this.labelPosition === 'inside' && this.size !== 'sm' && (h("label", { key: '00f576ec1301e1200901f905db09b91710ccf8a5', class: "text-field-label-inside", htmlFor: `text-field-input-element-${this.uuid}` }, this.label))), usesSuffixSlot && (h("div", { key: '8b877f09aa33689d7027d10bdc4d45a22f4c7aba', class: {
|
|
116
141
|
'text-field-slot-wrap-suffix': true,
|
|
117
142
|
'text-field-error': this.state === 'error',
|
|
118
143
|
'text-field-success': this.state === 'success',
|
|
119
144
|
'text-field-default': this.state === 'default',
|
|
120
145
|
'tds-u-display-none': this.readOnly,
|
|
121
|
-
} }, h("slot", { key: '
|
|
146
|
+
} }, h("slot", { key: '8a402f382de2dfca84ca46c06950969e6ca65bdb', name: "suffix" }))), this.readOnly && !this.hideReadOnlyIcon && (h("span", { key: '5eb925b1c30e12d8c79fc91b2787291dc4879229', class: "text-field-icon__readonly" }, h("tds-tooltip", { key: 'c307715a372fc0692a60d6f39ce8a01b736c5004', placement: "top-end", text: "This field is non-editable", selector: "#readonly-tooltip" }), h("tds-icon", { key: 'd225ef53660d5e8dad524c0c26e119e1f951ed63', id: "readonly-tooltip", name: "edit_inactive", size: "20px" })))), h("div", { key: '0bb80262383ca9359951a45fca67bcb3b51c2001', "aria-live": "assertive" }, (this.helper || this.maxLength > 0) && (h("div", { key: '519c53c3875642ff9d544839b13ace336a15ff10', class: "text-field-helper", id: `text-field-helper-element-${this.uuid}` }, this.state === 'error' && (h("div", { key: '14fc9f23b453244bac24d79a5b46014f240b5397', class: "text-field-helper-error-state" }, !this.readOnly && h("tds-icon", { key: 'd87add5b27ba5d0c794259194f79695b86a6b3cc', name: "error", size: "16px" }), this.helper)), this.state !== 'error' && this.helper, !this.readOnly && this.maxLength > 0 && (h("span", { key: '355fac5a30bb91b1ae08d6bde1900a575f3594b9', class: {
|
|
122
147
|
'text-field-textcounter-divider': true,
|
|
123
148
|
'text-field-textcounter-disabled': this.disabled,
|
|
124
149
|
} }, this.value === null ? 0 : (_a = this.value) === null || _a === void 0 ? void 0 : _a.length, " / ", this.maxLength)))))));
|
|
@@ -225,6 +250,23 @@ export class TdsTextField {
|
|
|
225
250
|
"attribute": "max",
|
|
226
251
|
"reflect": false
|
|
227
252
|
},
|
|
253
|
+
"step": {
|
|
254
|
+
"type": "any",
|
|
255
|
+
"mutable": false,
|
|
256
|
+
"complexType": {
|
|
257
|
+
"original": "string | number",
|
|
258
|
+
"resolved": "number | string",
|
|
259
|
+
"references": {}
|
|
260
|
+
},
|
|
261
|
+
"required": false,
|
|
262
|
+
"optional": false,
|
|
263
|
+
"docs": {
|
|
264
|
+
"tags": [],
|
|
265
|
+
"text": "Step value for input type number"
|
|
266
|
+
},
|
|
267
|
+
"attribute": "step",
|
|
268
|
+
"reflect": false
|
|
269
|
+
},
|
|
228
270
|
"helper": {
|
|
229
271
|
"type": "string",
|
|
230
272
|
"mutable": false,
|
|
@@ -354,8 +396,8 @@ export class TdsTextField {
|
|
|
354
396
|
"type": "string",
|
|
355
397
|
"mutable": false,
|
|
356
398
|
"complexType": {
|
|
357
|
-
"original": "'primary' | 'secondary'",
|
|
358
|
-
"resolved": "\"primary\" | \"secondary\"",
|
|
399
|
+
"original": "'primary' | 'secondary' | null",
|
|
400
|
+
"resolved": "\"primary\" | \"secondary\" | null",
|
|
359
401
|
"references": {}
|
|
360
402
|
},
|
|
361
403
|
"required": false,
|
|
@@ -509,6 +551,24 @@ export class TdsTextField {
|
|
|
509
551
|
"attribute": "autocomplete",
|
|
510
552
|
"reflect": false,
|
|
511
553
|
"defaultValue": "'off'"
|
|
554
|
+
},
|
|
555
|
+
"hideNumberArrows": {
|
|
556
|
+
"type": "boolean",
|
|
557
|
+
"mutable": false,
|
|
558
|
+
"complexType": {
|
|
559
|
+
"original": "boolean",
|
|
560
|
+
"resolved": "boolean",
|
|
561
|
+
"references": {}
|
|
562
|
+
},
|
|
563
|
+
"required": false,
|
|
564
|
+
"optional": false,
|
|
565
|
+
"docs": {
|
|
566
|
+
"tags": [],
|
|
567
|
+
"text": "Hides the native arrows on number input type"
|
|
568
|
+
},
|
|
569
|
+
"attribute": "hide-number-arrows",
|
|
570
|
+
"reflect": false,
|
|
571
|
+
"defaultValue": "false"
|
|
512
572
|
}
|
|
513
573
|
};
|
|
514
574
|
}
|
|
@@ -593,6 +653,21 @@ export class TdsTextField {
|
|
|
593
653
|
}
|
|
594
654
|
}
|
|
595
655
|
}
|
|
656
|
+
}, {
|
|
657
|
+
"method": "tdsError",
|
|
658
|
+
"name": "tdsError",
|
|
659
|
+
"bubbles": true,
|
|
660
|
+
"cancelable": false,
|
|
661
|
+
"composed": true,
|
|
662
|
+
"docs": {
|
|
663
|
+
"tags": [],
|
|
664
|
+
"text": "Error event for the Text Field - emitted when value is clamped to min/max"
|
|
665
|
+
},
|
|
666
|
+
"complexType": {
|
|
667
|
+
"original": "{ originalValue: string; clampedValue: string; reason: 'min' | 'max' }",
|
|
668
|
+
"resolved": "{ originalValue: string; clampedValue: string; reason: \"max\" | \"min\"; }",
|
|
669
|
+
"references": {}
|
|
670
|
+
}
|
|
596
671
|
}];
|
|
597
672
|
}
|
|
598
673
|
static get methods() {
|
|
@@ -39,7 +39,8 @@ export class TdsTextarea {
|
|
|
39
39
|
}
|
|
40
40
|
/* Set the input as focus when clicking the whole textarea with suffix/prefix */
|
|
41
41
|
handleFocus(event) {
|
|
42
|
-
|
|
42
|
+
var _a;
|
|
43
|
+
(_a = this.textEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
43
44
|
this.focusInput = true;
|
|
44
45
|
this.tdsFocus.emit(event);
|
|
45
46
|
}
|
|
@@ -61,7 +62,7 @@ export class TdsTextarea {
|
|
|
61
62
|
}
|
|
62
63
|
render() {
|
|
63
64
|
var _a;
|
|
64
|
-
return (h("div", { key: '
|
|
65
|
+
return (h("div", { key: 'ab345d2f34e48367b2040556b9b3a6564add939d', class: {
|
|
65
66
|
'textarea-container': true,
|
|
66
67
|
'textarea-label-inside': this.labelPosition === 'inside',
|
|
67
68
|
'textarea-focus': this.focusInput,
|
|
@@ -71,7 +72,7 @@ export class TdsTextarea {
|
|
|
71
72
|
'textarea-data': this.value !== '',
|
|
72
73
|
[`textarea-${this.state}`]: this.state === 'error' || this.state === 'success',
|
|
73
74
|
'no-min-width': this.noMinWidth,
|
|
74
|
-
} }, this.labelPosition !== 'no-label' && (h("label", { key: '
|
|
75
|
+
} }, this.labelPosition !== 'no-label' && (h("label", { key: 'c8290eb384aff2b8a8d7c2495b69167066e76415', htmlFor: `textarea-element-${this.uuid}`, class: 'textarea-label' }, this.label)), h("div", { key: '43cd7476de0402a1aab5eaf2d930678422aaf40e', class: "textarea-wrapper" }, h("textarea", { key: '265bd91d6cb4ca7009d0bc60f3db15c0e6bb47bc', id: `textarea-element-${this.uuid}`, class: 'textarea-input', ref: (inputEl) => {
|
|
75
76
|
this.textEl = inputEl;
|
|
76
77
|
}, disabled: this.disabled, readonly: !this.disabled && this.readOnly, placeholder: this.placeholder, value: this.value, name: this.name, autofocus: this.autofocus, maxlength: this.maxLength, cols: this.cols, rows: this.rows, onFocus: (event) => {
|
|
77
78
|
if (!this.readOnly) {
|
|
@@ -81,7 +82,7 @@ export class TdsTextarea {
|
|
|
81
82
|
if (!this.readOnly) {
|
|
82
83
|
this.handleBlur(event);
|
|
83
84
|
}
|
|
84
|
-
}, onInput: (event) => this.handleInput(event), onChange: (event) => this.handleChange(event), "aria-invalid": getAriaInvalid(this.host, this.state), "aria-readonly": this.readOnly ? 'true' : 'false', "aria-label": this.tdsAriaLabel ? this.tdsAriaLabel : this.label, "aria-describedby": `textarea-helper-element-${this.uuid}` }), h("span", { key: '
|
|
85
|
+
}, onInput: (event) => this.handleInput(event), onChange: (event) => this.handleChange(event), "aria-invalid": getAriaInvalid(this.host, this.state), "aria-readonly": this.readOnly ? 'true' : 'false', "aria-label": this.tdsAriaLabel ? this.tdsAriaLabel : this.label, "aria-describedby": `textarea-helper-element-${this.uuid}` }), h("span", { key: '682632eb45587ee86e48fa7dd42946d97db7da13', class: "textarea-resizer-icon" }, h("svg", { key: '7631ef268be5ec867452ba449f769e45c099d574', width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'ba27459f776dc0d6a6d0570420e4610ee08d6b9e', "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M11.8536 0.853553C12.0488 0.658291 12.0488 0.341709 11.8536 0.146447C11.6583 -0.0488155 11.3417 -0.0488155 11.1464 0.146447L0.146447 11.1464C-0.0488155 11.3417 -0.0488155 11.6583 0.146447 11.8536C0.341709 12.0488 0.658291 12.0488 0.853553 11.8536L11.8536 0.853553ZM11.8536 4.64645C12.0488 4.84171 12.0488 5.15829 11.8536 5.35355L5.35355 11.8536C5.15829 12.0488 4.84171 12.0488 4.64645 11.8536C4.45118 11.6583 4.45118 11.3417 4.64645 11.1464L11.1464 4.64645C11.3417 4.45118 11.6583 4.45118 11.8536 4.64645ZM11.8536 8.64645C12.0488 8.84171 12.0488 9.15829 11.8536 9.35355L9.35355 11.8536C9.15829 12.0488 8.84171 12.0488 8.64645 11.8536C8.45118 11.6583 8.45118 11.3417 8.64645 11.1464L11.1464 8.64645C11.3417 8.45118 11.6583 8.45118 11.8536 8.64645Z", fill: "currentColor" }))), !this.disabled && !this.hideReadOnlyIcon && this.readOnly && (h("span", { key: '34f0c79ee333e2e0b0e27dc63d4be1e93b7fc6e4', class: "textarea-icon__readonly" }, h("tds-tooltip", { key: '0aa6ad6c681f5abe6ba19a28f80125d002543fc4', placement: "top-end", text: "This field is non-editable", selector: "#readonly-tooltip" }), h("tds-icon", { key: '780fe72cff253212d79820c29a701258c55da508', id: "readonly-tooltip", name: "edit_inactive", svgTitle: "inactive" })))), h("span", { key: '657766f8f89e07aaac65daece6fc1162b925986a', class: 'textarea-helper', "aria-live": "assertive", id: `textarea-helper-element-${this.uuid}` }, this.state === 'error' && this.helper && !this.readOnly && (h("tds-icon", { key: 'ce5e472fb172d53cb45e9dab4c317fb38dbd05eb', name: "error", size: "16px" })), this.helper), this.maxLength > 0 && (h("div", { key: '919a5471cfad225cefe6c30e88f782cdfc913b2f', class: 'textarea-textcounter' }, this.value === null ? 0 : (_a = this.value) === null || _a === void 0 ? void 0 : _a.length, h("span", { key: '338ef9cdac06151d4fd092208764e3812c2d4f01', class: "textfield-textcounter-divider" }, " / "), " ", this.maxLength))));
|
|
85
86
|
}
|
|
86
87
|
static get is() { return "tds-textarea"; }
|
|
87
88
|
static get encapsulation() { return "scoped"; }
|
|
@@ -331,8 +332,8 @@ export class TdsTextarea {
|
|
|
331
332
|
"type": "string",
|
|
332
333
|
"mutable": false,
|
|
333
334
|
"complexType": {
|
|
334
|
-
"original": "'primary' | 'secondary'",
|
|
335
|
-
"resolved": "\"primary\" | \"secondary\"",
|
|
335
|
+
"original": "'primary' | 'secondary' | null",
|
|
336
|
+
"resolved": "\"primary\" | \"secondary\" | null",
|
|
336
337
|
"references": {}
|
|
337
338
|
},
|
|
338
339
|
"required": false,
|
|
@@ -39,12 +39,13 @@ export class TdsToggle {
|
|
|
39
39
|
this.labelSlot = this.host.querySelector("[slot='label']");
|
|
40
40
|
}
|
|
41
41
|
render() {
|
|
42
|
-
return (h("div", { key: '
|
|
42
|
+
return (h("div", { key: 'ee3157ccfc7cc20e4cc0ea94d18ef18206aad346', class: "tds-toggle" }, this.headline && (h("div", { key: 'bb0b6242312d2b93aedca8b30060dced738ad418', class: {
|
|
43
43
|
'toggle-headline': true,
|
|
44
44
|
'disabled': this.disabled,
|
|
45
|
-
} }, this.headline)), h("input", { key: '
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
} }, this.headline)), h("input", { key: 'ff36441c8064df09ee5f09239472250211182725', ref: (inputEl) => {
|
|
46
|
+
if (inputEl)
|
|
47
|
+
this.inputElement = inputEl;
|
|
48
|
+
}, "aria-label": this.tdsAriaLabel, "aria-describedby": this.host.getAttribute('aria-describedby'), "aria-labelledby": this.host.getAttribute('aria-labelledby'), "aria-checked": this.checked, "aria-required": this.required, onChange: () => this.handleToggle(), class: `${this.size}`, checked: this.checked, disabled: this.disabled, required: this.required, type: "checkbox", name: this.name, id: this.toggleId, role: "switch" }), this.labelSlot && (h("label", { key: '67a2179e0c1252fb5d4dc9d9e5ade990bec58cbc', class: { disabled: this.disabled }, htmlFor: this.toggleId }, h("slot", { key: 'ec8080b6080cffecbc83fb9080c55031a8d0a1e7', name: "label" })))));
|
|
48
49
|
}
|
|
49
50
|
static get is() { return "tds-toggle"; }
|
|
50
51
|
static get encapsulation() { return "scoped"; }
|
|
@@ -29,7 +29,7 @@ export class TdsTooltip {
|
|
|
29
29
|
},
|
|
30
30
|
},
|
|
31
31
|
];
|
|
32
|
-
this.inheritedAttributes =
|
|
32
|
+
this.inheritedAttributes = {};
|
|
33
33
|
this.text = '';
|
|
34
34
|
this.selector = undefined;
|
|
35
35
|
this.referenceEl = undefined;
|
|
@@ -58,20 +58,16 @@ export class TdsTooltip {
|
|
|
58
58
|
}
|
|
59
59
|
render() {
|
|
60
60
|
var _a;
|
|
61
|
-
return (h(Host, { key: '
|
|
61
|
+
return (h(Host, { key: '2b72a1988aa57732d9295a33a43e8baf117e7e17', role: "tooltip", "aria-describedby": this.tdsAriaDescribedby, "aria-label": this.text }, h("tds-popover-core", Object.assign({ key: '449a74bcead02452d6bd7f443cfbfd8ef29071a1' }, this.inheritedAttributes, { class: {
|
|
62
62
|
'tds-tooltip': true,
|
|
63
63
|
[`tds-tooltip-${this.border}`]: true,
|
|
64
64
|
[(_a = this.inheritedAttributes.class) !== null && _a !== void 0 ? _a : '']: true,
|
|
65
|
-
'tds-tooltip-show': this.show,
|
|
66
|
-
}, selector: this.selector, referenceEl: this.referenceEl, trigger: this.determineTrigger(), modifiers: this.popperjsExtraModifiers, offsetSkidding: this.offsetSkidding, offsetDistance: this.offsetDistance, show: this.show, placement: this.placement, autoHide: false,
|
|
67
|
-
// @ts-ignore
|
|
68
|
-
onInternalTdsShow: () => {
|
|
65
|
+
'tds-tooltip-show': !!this.show,
|
|
66
|
+
}, selector: this.selector, referenceEl: this.referenceEl, trigger: this.determineTrigger(), modifiers: this.popperjsExtraModifiers, offsetSkidding: this.offsetSkidding, offsetDistance: this.offsetDistance, show: this.show, placement: this.placement, autoHide: false, onInternalTdsShow: () => {
|
|
69
67
|
this.show = true;
|
|
70
|
-
},
|
|
71
|
-
// @ts-ignore
|
|
72
|
-
onInternalTdsClose: () => {
|
|
68
|
+
}, onInternalTdsClose: () => {
|
|
73
69
|
this.show = false;
|
|
74
|
-
}, defaultShow: this.defaultShow }), this.text, h("slot", { key: '
|
|
70
|
+
}, defaultShow: this.defaultShow }), this.text, h("slot", { key: 'c232d55352f3e827c16630c69df138ba687486b4' }))));
|
|
75
71
|
}
|
|
76
72
|
static get is() { return "tds-tooltip"; }
|
|
77
73
|
static get encapsulation() { return "scoped"; }
|
|
@@ -127,7 +123,7 @@ export class TdsTooltip {
|
|
|
127
123
|
"mutable": false,
|
|
128
124
|
"complexType": {
|
|
129
125
|
"original": "HTMLElement | null",
|
|
130
|
-
"resolved": "HTMLElement",
|
|
126
|
+
"resolved": "HTMLElement | null | undefined",
|
|
131
127
|
"references": {
|
|
132
128
|
"HTMLElement": {
|
|
133
129
|
"location": "global",
|
|
@@ -200,8 +196,8 @@ export class TdsTooltip {
|
|
|
200
196
|
"type": "boolean",
|
|
201
197
|
"mutable": true,
|
|
202
198
|
"complexType": {
|
|
203
|
-
"original": "boolean",
|
|
204
|
-
"resolved": "boolean",
|
|
199
|
+
"original": "boolean | null",
|
|
200
|
+
"resolved": "boolean | null",
|
|
205
201
|
"references": {}
|
|
206
202
|
},
|
|
207
203
|
"required": false,
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
// ============================================================================
|
|
2
|
+
// Dropdown Keyboard Navigation
|
|
3
|
+
// Handles arrow keys, Enter, Space, Tab, and Escape for all dropdown variants
|
|
4
|
+
// ============================================================================
|
|
5
|
+
let initialized = false;
|
|
6
|
+
export function initDropdownKeyboard() {
|
|
7
|
+
if (initialized)
|
|
8
|
+
return;
|
|
9
|
+
initialized = true;
|
|
10
|
+
// ============================================================================
|
|
11
|
+
// Handler for when dropdown list is open
|
|
12
|
+
// ============================================================================
|
|
13
|
+
const handleOpenListKeydown = (e) => {
|
|
14
|
+
const openTrigger = document.querySelector('.tl-dropdown__button[aria-expanded="true"], .tl-dropdown__input[aria-expanded="true"]');
|
|
15
|
+
if (!openTrigger)
|
|
16
|
+
return;
|
|
17
|
+
const root = openTrigger.closest('.tl-dropdown');
|
|
18
|
+
const openList = root === null || root === void 0 ? void 0 : root.querySelector('.tl-dropdown__list');
|
|
19
|
+
if (!openList)
|
|
20
|
+
return;
|
|
21
|
+
const isDropUp = root === null || root === void 0 ? void 0 : root.classList.contains('tl-dropdown--dropup');
|
|
22
|
+
const isMultiSelect = openList.getAttribute('aria-multiselectable') === 'true';
|
|
23
|
+
const isFilterDropdown = !!(root === null || root === void 0 ? void 0 : root.querySelector('.tl-dropdown__input'));
|
|
24
|
+
const options = Array.from(openList.querySelectorAll('.tl-dropdown__option')).filter((option) => {
|
|
25
|
+
const el = option;
|
|
26
|
+
return (!el.classList.contains('tl-dropdown__option--disabled') &&
|
|
27
|
+
!el.classList.contains('tl-dropdown__option--no-result') &&
|
|
28
|
+
el.style.display !== 'none');
|
|
29
|
+
});
|
|
30
|
+
if (!options.length)
|
|
31
|
+
return;
|
|
32
|
+
const { activeElement } = document;
|
|
33
|
+
const currentIndex = options.findIndex((option) => option === activeElement);
|
|
34
|
+
const focusOption = (index) => {
|
|
35
|
+
if (index < 0 || index >= options.length)
|
|
36
|
+
return;
|
|
37
|
+
options[index].focus();
|
|
38
|
+
};
|
|
39
|
+
if (e.key === 'ArrowDown' || e.key === 'ArrowUp') {
|
|
40
|
+
e.preventDefault();
|
|
41
|
+
if (isFilterDropdown && activeElement === openTrigger) {
|
|
42
|
+
const isArrowDown = e.key === 'ArrowDown';
|
|
43
|
+
const firstIndex = isArrowDown
|
|
44
|
+
? isDropUp
|
|
45
|
+
? options.length - 1
|
|
46
|
+
: 0
|
|
47
|
+
: isDropUp
|
|
48
|
+
? 0
|
|
49
|
+
: options.length - 1;
|
|
50
|
+
focusOption(firstIndex);
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
const direction = e.key === 'ArrowDown' ? 1 : -1;
|
|
54
|
+
let nextIndex = currentIndex;
|
|
55
|
+
if (currentIndex === -1) {
|
|
56
|
+
const isArrowDown = e.key === 'ArrowDown';
|
|
57
|
+
nextIndex = isArrowDown
|
|
58
|
+
? isDropUp
|
|
59
|
+
? options.length - 1
|
|
60
|
+
: 0
|
|
61
|
+
: isDropUp
|
|
62
|
+
? 0
|
|
63
|
+
: options.length - 1;
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
nextIndex = currentIndex + (isDropUp ? -direction : direction);
|
|
67
|
+
}
|
|
68
|
+
if (nextIndex >= options.length)
|
|
69
|
+
nextIndex = 0;
|
|
70
|
+
if (nextIndex < 0)
|
|
71
|
+
nextIndex = options.length - 1;
|
|
72
|
+
focusOption(nextIndex);
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
if (e.key === 'Enter' || e.key === ' ') {
|
|
76
|
+
const focusedOption = options[currentIndex];
|
|
77
|
+
if (!focusedOption)
|
|
78
|
+
return;
|
|
79
|
+
if (isMultiSelect)
|
|
80
|
+
return;
|
|
81
|
+
e.preventDefault();
|
|
82
|
+
focusedOption.click();
|
|
83
|
+
if (openTrigger)
|
|
84
|
+
openTrigger.setAttribute('aria-expanded', 'false');
|
|
85
|
+
if (!isFilterDropdown) {
|
|
86
|
+
openTrigger === null || openTrigger === void 0 ? void 0 : openTrigger.focus();
|
|
87
|
+
}
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
if (e.key === 'Tab') {
|
|
91
|
+
if (isFilterDropdown) {
|
|
92
|
+
const inputWrapper = openTrigger.parentElement;
|
|
93
|
+
const clearButton = inputWrapper === null || inputWrapper === void 0 ? void 0 : inputWrapper.querySelector('.tl-dropdown__input-clear');
|
|
94
|
+
const clearButtonTabindex = clearButton === null || clearButton === void 0 ? void 0 : clearButton.getAttribute('tabindex');
|
|
95
|
+
const canFocusClearButton = clearButton && clearButtonTabindex === '0';
|
|
96
|
+
if (currentIndex >= 0) {
|
|
97
|
+
if (!e.shiftKey && canFocusClearButton) {
|
|
98
|
+
e.preventDefault();
|
|
99
|
+
clearButton === null || clearButton === void 0 ? void 0 : clearButton.focus();
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
e.preventDefault();
|
|
107
|
+
const movingForward = isDropUp ? e.shiftKey : !e.shiftKey;
|
|
108
|
+
const nextIndex = movingForward ? currentIndex + 1 : currentIndex - 1;
|
|
109
|
+
if (nextIndex >= options.length || nextIndex < 0) {
|
|
110
|
+
if (openTrigger)
|
|
111
|
+
openTrigger.setAttribute('aria-expanded', 'false');
|
|
112
|
+
openTrigger === null || openTrigger === void 0 ? void 0 : openTrigger.focus();
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
focusOption(nextIndex);
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
if (e.key === 'Escape') {
|
|
119
|
+
e.preventDefault();
|
|
120
|
+
if (openTrigger)
|
|
121
|
+
openTrigger.setAttribute('aria-expanded', 'false');
|
|
122
|
+
openTrigger === null || openTrigger === void 0 ? void 0 : openTrigger.focus();
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
const handleTriggerKeydown = (e) => {
|
|
126
|
+
var _a;
|
|
127
|
+
const trigger = (_a = e.target) === null || _a === void 0 ? void 0 : _a.closest('.tl-dropdown__button, .tl-dropdown__input');
|
|
128
|
+
if (!trigger)
|
|
129
|
+
return;
|
|
130
|
+
const root = trigger.closest('.tl-dropdown');
|
|
131
|
+
const list = root === null || root === void 0 ? void 0 : root.querySelector('.tl-dropdown__list');
|
|
132
|
+
if (!list)
|
|
133
|
+
return;
|
|
134
|
+
const isDropUp = root === null || root === void 0 ? void 0 : root.classList.contains('tl-dropdown--dropup');
|
|
135
|
+
const isOpen = trigger.getAttribute('aria-expanded') === 'true';
|
|
136
|
+
const options = Array.from(list.querySelectorAll('.tl-dropdown__option')).filter((option) => {
|
|
137
|
+
const el = option;
|
|
138
|
+
return !el.classList.contains('tl-dropdown__option--disabled') && el.style.display !== 'none';
|
|
139
|
+
});
|
|
140
|
+
if (!options.length)
|
|
141
|
+
return;
|
|
142
|
+
if ((e.key === 'ArrowDown' || e.key === 'ArrowUp') && !isOpen) {
|
|
143
|
+
e.preventDefault();
|
|
144
|
+
trigger.setAttribute('aria-expanded', 'true');
|
|
145
|
+
const firstIndex = isDropUp ? options.length - 1 : 0;
|
|
146
|
+
options[firstIndex].focus();
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
const handleClearButtonKeydown = (e) => {
|
|
150
|
+
const target = e.target;
|
|
151
|
+
if (!target.classList.contains('tl-dropdown__input-clear'))
|
|
152
|
+
return;
|
|
153
|
+
if (e.key === 'Enter' || e.key === ' ') {
|
|
154
|
+
e.preventDefault();
|
|
155
|
+
e.stopPropagation();
|
|
156
|
+
target.click();
|
|
157
|
+
}
|
|
158
|
+
if (e.key === 'Tab' && e.shiftKey) {
|
|
159
|
+
const root = target.closest('.tl-dropdown');
|
|
160
|
+
const list = root === null || root === void 0 ? void 0 : root.querySelector('.tl-dropdown__list');
|
|
161
|
+
if (list) {
|
|
162
|
+
const options = Array.from(list.querySelectorAll('.tl-dropdown__option')).filter((option) => {
|
|
163
|
+
const el = option;
|
|
164
|
+
return (!el.classList.contains('tl-dropdown__option--disabled') &&
|
|
165
|
+
!el.classList.contains('tl-dropdown__option--no-result') &&
|
|
166
|
+
el.style.display !== 'none');
|
|
167
|
+
});
|
|
168
|
+
if (options.length > 0) {
|
|
169
|
+
e.preventDefault();
|
|
170
|
+
options[options.length - 1].focus();
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
};
|
|
175
|
+
const handleClearButtonFocus = (e) => {
|
|
176
|
+
var _a;
|
|
177
|
+
const target = e.target;
|
|
178
|
+
if (!target.classList.contains('tl-dropdown__input-clear'))
|
|
179
|
+
return;
|
|
180
|
+
const input = (_a = target
|
|
181
|
+
.closest('.tl-dropdown__input-wrapper')) === null || _a === void 0 ? void 0 : _a.querySelector('.tl-dropdown__input');
|
|
182
|
+
if (input) {
|
|
183
|
+
input.setAttribute('aria-expanded', 'true');
|
|
184
|
+
}
|
|
185
|
+
};
|
|
186
|
+
document.addEventListener('keydown', handleOpenListKeydown);
|
|
187
|
+
document.addEventListener('keydown', handleTriggerKeydown);
|
|
188
|
+
document.addEventListener('keydown', handleClearButtonKeydown);
|
|
189
|
+
document.addEventListener('focus', handleClearButtonFocus, true);
|
|
190
|
+
}
|