@sapudex/web-components 0.147.0 → 0.172.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/.eslintignore +1 -0
- package/bundle.esm.js +9 -0
- package/dist/Badge.d.ts +21 -14
- package/dist/Badge.js +20 -26
- package/dist/Badge.js.map +1 -1
- package/dist/Breadcrumbs.d.ts +23 -21
- package/dist/Breadcrumbs.js +58 -40
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/BreadcrumbsItem.js +0 -1
- package/dist/BreadcrumbsItem.js.map +1 -1
- package/dist/Checkbox.js +0 -1
- package/dist/Checkbox.js.map +1 -1
- package/dist/CountrySelector.d.ts +2 -2
- package/dist/CountrySelector.js +20 -12
- package/dist/CountrySelector.js.map +1 -1
- package/dist/DatePicker.d.ts +2 -2
- package/dist/DatePicker.js.map +1 -1
- package/dist/Dropdown.js +0 -3
- package/dist/Dropdown.js.map +1 -1
- package/dist/Footer.d.ts +53 -10
- package/dist/Footer.js +41 -11
- package/dist/Footer.js.map +1 -1
- package/dist/Link.d.ts +2 -5
- package/dist/Link.js +4 -8
- package/dist/Link.js.map +1 -1
- package/dist/List.d.ts +16 -1
- package/dist/List.js +154 -100
- package/dist/List.js.map +1 -1
- package/dist/ListItem.d.ts +1 -0
- package/dist/ListItem.js +3 -0
- package/dist/ListItem.js.map +1 -1
- package/dist/MastheadItem.d.ts +12 -2
- package/dist/MastheadItem.js +34 -7
- package/dist/MastheadItem.js.map +1 -1
- package/dist/MastheadMenu.d.ts +1 -0
- package/dist/MastheadMenu.js +13 -4
- package/dist/MastheadMenu.js.map +1 -1
- package/dist/MastheadMenuItem.d.ts +10 -0
- package/dist/MastheadMenuItem.js +24 -3
- package/dist/MastheadMenuItem.js.map +1 -1
- package/dist/MastheadMobileMenu.js +2 -2
- package/dist/MastheadMobileMenu.js.map +1 -1
- package/dist/MastheadProfileMenu.js +2 -2
- package/dist/MastheadProfileMenu.js.map +1 -1
- package/dist/MastheadShell.d.ts +4 -0
- package/dist/MastheadShell.js +21 -5
- package/dist/MastheadShell.js.map +1 -1
- package/dist/Pagination.d.ts +13 -3
- package/dist/Pagination.js +90 -57
- package/dist/Pagination.js.map +1 -1
- package/dist/PhoneNumberField.d.ts +3 -0
- package/dist/PhoneNumberField.js +9 -4
- package/dist/PhoneNumberField.js.map +1 -1
- package/dist/RangeSlider.js +0 -1
- package/dist/RangeSlider.js.map +1 -1
- package/dist/Search.d.ts +5 -4
- package/dist/Search.js +12 -12
- package/dist/Search.js.map +1 -1
- package/dist/SearchableListBase.d.ts +7 -1
- package/dist/SearchableListBase.js +47 -4
- package/dist/SearchableListBase.js.map +1 -1
- package/dist/SecondaryNavigation.d.ts +2 -2
- package/dist/SecondaryNavigation.js +20 -10
- package/dist/SecondaryNavigation.js.map +1 -1
- package/dist/SecondaryNavigationItem.d.ts +6 -3
- package/dist/SecondaryNavigationItem.js +50 -26
- package/dist/SecondaryNavigationItem.js.map +1 -1
- package/dist/SecondaryNavigationSubItem.d.ts +1 -0
- package/dist/SecondaryNavigationSubItem.js +3 -0
- package/dist/SecondaryNavigationSubItem.js.map +1 -1
- package/dist/SegmentedButton.d.ts +2 -2
- package/dist/SegmentedButton.js.map +1 -1
- package/dist/SelectBox.js.map +1 -1
- package/dist/SideNavigationGroup.js +0 -1
- package/dist/SideNavigationGroup.js.map +1 -1
- package/dist/SideNavigationItem.js +0 -1
- package/dist/SideNavigationItem.js.map +1 -1
- package/dist/SideNavigationSubItem.js +0 -1
- package/dist/SideNavigationSubItem.js.map +1 -1
- package/dist/Slider.js +0 -1
- package/dist/Slider.js.map +1 -1
- package/dist/TabNavigation.js +2 -2
- package/dist/TabNavigation.js.map +1 -1
- package/dist/Tag.d.ts +1 -4
- package/dist/Tag.js +1 -5
- package/dist/Tag.js.map +1 -1
- package/dist/Tile.d.ts +1 -1
- package/dist/Tile.js +1 -1
- package/dist/Tile.js.map +1 -1
- package/dist/Toast.d.ts +0 -1
- package/dist/Toast.js +4 -3
- package/dist/Toast.js.map +1 -1
- package/dist/Wizard.js +1 -1
- package/dist/Wizard.js.map +1 -1
- package/dist/WizardTab.js +0 -1
- package/dist/WizardTab.js.map +1 -1
- package/dist/assets/{bundle.esm-6e8e301d.js → bundle.esm-981c5cbb.js} +187 -189
- package/dist/assets/messagebundle_ar-bb470511.js +1 -0
- package/dist/assets/messagebundle_bg-a533dfab.js +1 -0
- package/dist/assets/messagebundle_cs-c70a7f36.js +1 -0
- package/dist/assets/messagebundle_da-e292cac5.js +1 -0
- package/dist/assets/messagebundle_de-5c108de6.js +1 -0
- package/dist/assets/messagebundle_el-44746e0b.js +1 -0
- package/dist/assets/messagebundle_en-4997b226.js +1 -0
- package/dist/assets/messagebundle_es-c0c1060f.js +1 -0
- package/dist/assets/messagebundle_et-a5f15d3b.js +1 -0
- package/dist/assets/messagebundle_fi-f4b8eb82.js +1 -0
- package/dist/assets/messagebundle_fr-af18ac46.js +1 -0
- package/dist/assets/messagebundle_hr-d893e46d.js +1 -0
- package/dist/assets/messagebundle_hu-230c58c9.js +1 -0
- package/dist/assets/messagebundle_it-5bf1436c.js +1 -0
- package/dist/assets/messagebundle_iw-dd60afc4.js +1 -0
- package/dist/assets/messagebundle_ko-c450bda3.js +1 -0
- package/dist/assets/messagebundle_lt-87ab0529.js +1 -0
- package/dist/assets/messagebundle_lv-fc413852.js +1 -0
- package/dist/assets/messagebundle_nl-34d7e236.js +1 -0
- package/dist/assets/messagebundle_no-f22648fb.js +1 -0
- package/dist/assets/messagebundle_pl-10303f09.js +1 -0
- package/dist/assets/messagebundle_pt-b7a40c67.js +1 -0
- package/dist/assets/messagebundle_ro-94628623.js +1 -0
- package/dist/assets/messagebundle_ru-1f6595ba.js +1 -0
- package/dist/assets/messagebundle_sk-89eabac1.js +1 -0
- package/dist/assets/messagebundle_sl-d56532f1.js +1 -0
- package/dist/assets/messagebundle_sr-cf7f3b32.js +1 -0
- package/dist/assets/messagebundle_sv-3a3b20d3.js +1 -0
- package/dist/assets/messagebundle_tr-33b16d09.js +1 -0
- package/dist/assets/messagebundle_uk-82e1f2c1.js +1 -0
- package/dist/assets/messagebundle_zh_CN-15ca05aa.js +1 -0
- package/dist/assets/messagebundle_zh_TW-ad6445e7.js +1 -0
- package/dist/css/themes/Badge.css +1 -1
- package/dist/css/themes/BreadcrumbsPopover.css +1 -1
- package/dist/css/themes/DatePickerPopover.css +1 -1
- package/dist/css/themes/FilterMenu.css +1 -1
- package/dist/css/themes/Footer.css +1 -1
- package/dist/css/themes/MastheadItem.css +1 -1
- package/dist/css/themes/MastheadMenu.css +1 -1
- package/dist/css/themes/MastheadMenuItem.css +1 -1
- package/dist/css/themes/MastheadShell.css +1 -1
- package/dist/css/themes/MediaPlayer.css +1 -1
- package/dist/css/themes/Modal.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/Slider.css +1 -1
- package/dist/css/themes/TableCell.css +1 -1
- package/dist/css/themes/TableCellBase.css +1 -1
- package/dist/css/themes/TextArea.css +1 -1
- package/dist/custom-elements-internal.json +232 -31
- package/dist/custom-elements.json +224 -30
- package/dist/features/SearchSuggestionsPopover.d.ts +16 -0
- package/dist/features/SearchSuggestionsPopover.js +49 -0
- package/dist/features/SearchSuggestionsPopover.js.map +1 -1
- package/dist/generated/assets/i18n/messagebundle_ar.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_bg.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_cs.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_da.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_el.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_et.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_fi.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hr.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_hu.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_it.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_iw.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_ko.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_lt.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_lv.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_nl.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_no.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_pl.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_pt.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_ro.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_ru.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_sk.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_sl.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_sr.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_sv.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_tr.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_uk.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -0
- package/dist/generated/i18n/i18n-defaults.d.ts +7 -1
- package/dist/generated/i18n/i18n-defaults.js +7 -1
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/json-imports/i18n-static.js +86 -2
- package/dist/generated/json-imports/i18n-static.js.map +1 -1
- package/dist/generated/json-imports/i18n.js +58 -2
- package/dist/generated/json-imports/i18n.js.map +1 -1
- package/dist/generated/templates/BadgeTemplate.lit.js +4 -4
- package/dist/generated/templates/BadgeTemplate.lit.js.map +1 -1
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +3 -3
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CountrySelectorTemplate.lit.js +1 -1
- package/dist/generated/templates/CountrySelectorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FooterTemplate.lit.js +12 -11
- package/dist/generated/templates/FooterTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListItemTemplate.lit.js +2 -2
- package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListTemplate.lit.js +3 -3
- package/dist/generated/templates/ListTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadItemTemplate.lit.js +17 -16
- package/dist/generated/templates/MastheadItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadMenuItemTemplate.lit.js +15 -14
- package/dist/generated/templates/MastheadMenuItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadMenuTemplate.lit.js +3 -3
- package/dist/generated/templates/MastheadMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadProfileMenuTemplate.lit.js +1 -1
- package/dist/generated/templates/MastheadProfileMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadShellTemplate.lit.js +10 -9
- package/dist/generated/templates/MastheadShellTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PaginationTemplate.lit.js +3 -3
- package/dist/generated/templates/PaginationTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PhoneNumberFieldTemplate.lit.js +1 -1
- package/dist/generated/templates/PhoneNumberFieldTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SearchSuggestionsTemplate.lit.js +1 -1
- package/dist/generated/templates/SearchSuggestionsTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SearchableListBaseTemplate.lit.js +2 -2
- package/dist/generated/templates/SearchableListBaseTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js +3 -3
- package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.js +3 -3
- package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.js +1 -1
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.js.map +1 -1
- package/dist/generated/templates/StepInputTemplate.lit.js +1 -1
- package/dist/generated/templates/StepInputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/WizardTemplate.lit.js +1 -1
- package/dist/generated/templates/WizardTemplate.lit.js.map +1 -1
- package/dist/generated/themes/Badge.css.js +1 -1
- package/dist/generated/themes/Badge.css.js.map +1 -1
- package/dist/generated/themes/BreadcrumbsPopover.css.js +1 -1
- package/dist/generated/themes/BreadcrumbsPopover.css.js.map +1 -1
- package/dist/generated/themes/DatePickerPopover.css.js +1 -1
- package/dist/generated/themes/DatePickerPopover.css.js.map +1 -1
- package/dist/generated/themes/FilterMenu.css.js +1 -1
- package/dist/generated/themes/FilterMenu.css.js.map +1 -1
- package/dist/generated/themes/Footer.css.js +1 -1
- package/dist/generated/themes/Footer.css.js.map +1 -1
- package/dist/generated/themes/MastheadItem.css.js +1 -1
- package/dist/generated/themes/MastheadItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadMenu.css.js +1 -1
- package/dist/generated/themes/MastheadMenu.css.js.map +1 -1
- package/dist/generated/themes/MastheadMenuItem.css.js +1 -1
- package/dist/generated/themes/MastheadMenuItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadShell.css.js +1 -1
- package/dist/generated/themes/MastheadShell.css.js.map +1 -1
- package/dist/generated/themes/MediaPlayer.css.js +1 -1
- package/dist/generated/themes/MediaPlayer.css.js.map +1 -1
- package/dist/generated/themes/Modal.css.js +1 -1
- package/dist/generated/themes/Modal.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/Slider.css.js +1 -1
- package/dist/generated/themes/Slider.css.js.map +1 -1
- package/dist/generated/themes/TableCell.css.js +1 -1
- package/dist/generated/themes/TableCell.css.js.map +1 -1
- package/dist/generated/themes/TableCellBase.css.js +1 -1
- package/dist/generated/themes/TableCellBase.css.js.map +1 -1
- package/dist/generated/themes/TextArea.css.js +1 -1
- package/dist/generated/themes/TextArea.css.js.map +1 -1
- package/dist/i18n/messagebundle.properties +10 -0
- package/dist/i18n/messagebundle_ar.properties +1 -0
- package/dist/i18n/messagebundle_bg.properties +1 -0
- package/dist/i18n/messagebundle_cs.properties +1 -0
- package/dist/i18n/messagebundle_da.properties +1 -0
- package/dist/i18n/messagebundle_de.properties +1 -0
- package/dist/i18n/messagebundle_el.properties +1 -0
- package/dist/i18n/messagebundle_en.properties +4 -0
- package/dist/i18n/messagebundle_es.properties +1 -0
- package/dist/i18n/messagebundle_et.properties +1 -0
- package/dist/i18n/messagebundle_fi.properties +1 -0
- package/dist/i18n/messagebundle_fr.properties +1 -0
- package/dist/i18n/messagebundle_hr.properties +1 -0
- package/dist/i18n/messagebundle_hu.properties +1 -0
- package/dist/i18n/messagebundle_it.properties +1 -0
- package/dist/i18n/messagebundle_iw.properties +2 -0
- package/dist/i18n/messagebundle_ko.properties +1 -0
- package/dist/i18n/messagebundle_lt.properties +1 -0
- package/dist/i18n/messagebundle_lv.properties +1 -0
- package/dist/i18n/messagebundle_nl.properties +1 -0
- package/dist/i18n/messagebundle_no.properties +1 -0
- package/dist/i18n/messagebundle_pl.properties +1 -0
- package/dist/i18n/messagebundle_pt.properties +1 -0
- package/dist/i18n/messagebundle_pt_BR.properties +1 -0
- package/dist/i18n/messagebundle_ro.properties +1 -0
- package/dist/i18n/messagebundle_ru.properties +1 -0
- package/dist/i18n/messagebundle_sk.properties +1 -0
- package/dist/i18n/messagebundle_sl.properties +1 -0
- package/dist/i18n/messagebundle_sr.properties +2 -0
- package/dist/i18n/messagebundle_sv.properties +1 -0
- package/dist/i18n/messagebundle_tr.properties +1 -0
- package/dist/i18n/messagebundle_uk.properties +1 -0
- package/dist/i18n/messagebundle_zh_CN.properties +4 -0
- package/dist/i18n/messagebundle_zh_TW.properties +1 -0
- package/dist/types/BadgeDesign.d.ts +15 -0
- package/dist/types/BadgeDesign.js +18 -0
- package/dist/types/BadgeDesign.js.map +1 -0
- package/dist/types/IconPlacement.d.ts +5 -0
- package/dist/types/IconPlacement.js +7 -0
- package/dist/types/IconPlacement.js.map +1 -0
- package/dist/types/List.d.ts +8 -0
- package/dist/types/List.js.map +1 -1
- package/dist/utils/isLetterKeyPressed.d.ts +2 -0
- package/dist/utils/isLetterKeyPressed.js +5 -0
- package/dist/utils/isLetterKeyPressed.js.map +1 -0
- package/dist/utils/listItemLabelStartsWithKeyFocus.d.ts +3 -0
- package/dist/utils/listItemLabelStartsWithKeyFocus.js +55 -0
- package/dist/utils/listItemLabelStartsWithKeyFocus.js.map +1 -0
- package/dist/utils/listItemLabelUtils.d.ts +7 -0
- package/dist/utils/listItemLabelUtils.js +36 -0
- package/dist/utils/listItemLabelUtils.js.map +1 -0
- package/dist/vscode.html-custom-data.json +63 -26
- package/dist/web-types.json +113 -38
- package/package.json +1 -1
- package/src/Badge.hbs +16 -5
- package/src/Badge.ts +36 -19
- package/src/Breadcrumbs.ts +92 -66
- package/src/BreadcrumbsItem.ts +0 -1
- package/src/BreadcrumbsPopover.hbs +11 -9
- package/src/Checkbox.ts +0 -1
- package/src/CountrySelector.hbs +0 -1
- package/src/CountrySelector.ts +30 -16
- package/src/DatePicker.ts +2 -2
- package/src/Dropdown.ts +0 -2
- package/src/Footer.hbs +52 -28
- package/src/Footer.ts +81 -22
- package/src/Link.ts +5 -9
- package/src/List.hbs +2 -2
- package/src/List.ts +182 -112
- package/src/ListItem.hbs +2 -2
- package/src/ListItem.ts +4 -0
- package/src/MastheadItem.hbs +14 -4
- package/src/MastheadItem.ts +42 -9
- package/src/MastheadMenu.hbs +4 -4
- package/src/MastheadMenu.ts +20 -8
- package/src/MastheadMenuItem.hbs +10 -2
- package/src/MastheadMenuItem.ts +28 -1
- package/src/MastheadMobileMenu.ts +2 -2
- package/src/MastheadProfileMenu.hbs +1 -0
- package/src/MastheadProfileMenu.ts +3 -2
- package/src/MastheadShell.hbs +25 -19
- package/src/MastheadShell.ts +25 -5
- package/src/Pagination.hbs +3 -2
- package/src/Pagination.ts +110 -60
- package/src/PhoneNumberField.hbs +3 -3
- package/src/PhoneNumberField.ts +16 -8
- package/src/RangeSlider.ts +0 -1
- package/src/Search.hbs +10 -10
- package/src/Search.ts +17 -17
- package/src/SearchSuggestions.hbs +1 -0
- package/src/SearchableListBase.hbs +3 -1
- package/src/SearchableListBase.ts +57 -6
- package/src/SecondaryNavigation.hbs +1 -0
- package/src/SecondaryNavigation.ts +23 -16
- package/src/SecondaryNavigationItem.hbs +10 -7
- package/src/SecondaryNavigationItem.ts +58 -28
- package/src/SecondaryNavigationSubItem.hbs +3 -0
- package/src/SecondaryNavigationSubItem.ts +3 -0
- package/src/SegmentedButton.ts +2 -2
- package/src/SelectBox.ts +1 -1
- package/src/SideNavigationGroup.ts +0 -1
- package/src/SideNavigationItem.ts +0 -1
- package/src/SideNavigationSubItem.ts +0 -1
- package/src/Slider.ts +0 -1
- package/src/StepInput.hbs +16 -16
- package/src/TabNavigation.ts +2 -2
- package/src/Tag.ts +1 -5
- package/src/Tile.ts +2 -2
- package/src/Toast.ts +4 -3
- package/src/Wizard.hbs +1 -0
- package/src/Wizard.ts +1 -1
- package/src/WizardTab.ts +0 -1
- package/src/features/SearchSuggestionsPopover.ts +67 -1
- package/src/generated/i18n/i18n-defaults.ts +2 -2
- package/src/generated/json-imports/i18n-static.ts +86 -2
- package/src/generated/json-imports/i18n.ts +59 -3
- package/src/generated/templates/BadgeTemplate.lit.ts +3 -3
- package/src/generated/templates/BreadcrumbsPopoverTemplate.lit.ts +3 -3
- package/src/generated/templates/CountrySelectorTemplate.lit.ts +1 -1
- package/src/generated/templates/FooterTemplate.lit.ts +12 -11
- package/src/generated/templates/ListItemTemplate.lit.ts +2 -2
- package/src/generated/templates/ListTemplate.lit.ts +3 -3
- package/src/generated/templates/MastheadItemTemplate.lit.ts +17 -16
- package/src/generated/templates/MastheadMenuItemTemplate.lit.ts +15 -14
- package/src/generated/templates/MastheadMenuTemplate.lit.ts +3 -3
- package/src/generated/templates/MastheadProfileMenuTemplate.lit.ts +1 -1
- package/src/generated/templates/MastheadShellTemplate.lit.ts +10 -9
- package/src/generated/templates/PaginationTemplate.lit.ts +3 -3
- package/src/generated/templates/PhoneNumberFieldTemplate.lit.ts +1 -1
- package/src/generated/templates/SearchSuggestionsTemplate.lit.ts +1 -1
- package/src/generated/templates/SearchableListBaseTemplate.lit.ts +2 -2
- package/src/generated/templates/SecondaryNavigationItemTemplate.lit.ts +3 -3
- package/src/generated/templates/SecondaryNavigationSubItemTemplate.lit.ts +3 -3
- package/src/generated/templates/SecondaryNavigationTemplate.lit.ts +1 -1
- package/src/generated/templates/StepInputTemplate.lit.ts +1 -1
- package/src/generated/templates/WizardTemplate.lit.ts +1 -1
- package/src/generated/themes/Badge.css.ts +1 -1
- package/src/generated/themes/BreadcrumbsPopover.css.ts +1 -1
- package/src/generated/themes/DatePickerPopover.css.ts +1 -1
- package/src/generated/themes/FilterMenu.css.ts +1 -1
- package/src/generated/themes/Footer.css.ts +1 -1
- package/src/generated/themes/MastheadItem.css.ts +1 -1
- package/src/generated/themes/MastheadMenu.css.ts +1 -1
- package/src/generated/themes/MastheadMenuItem.css.ts +1 -1
- package/src/generated/themes/MastheadShell.css.ts +1 -1
- package/src/generated/themes/MediaPlayer.css.ts +1 -1
- package/src/generated/themes/Modal.css.ts +1 -1
- package/src/generated/themes/RatingIndicator.css.ts +1 -1
- package/src/generated/themes/Slider.css.ts +1 -1
- package/src/generated/themes/TableCell.css.ts +1 -1
- package/src/generated/themes/TableCellBase.css.ts +1 -1
- package/src/generated/themes/TextArea.css.ts +1 -1
- package/src/i18n/messagebundle.properties +10 -0
- package/src/i18n/messagebundle_ar.properties +1 -0
- package/src/i18n/messagebundle_bg.properties +1 -0
- package/src/i18n/messagebundle_cs.properties +1 -0
- package/src/i18n/messagebundle_da.properties +1 -0
- package/src/i18n/messagebundle_de.properties +1 -0
- package/src/i18n/messagebundle_el.properties +1 -0
- package/src/i18n/messagebundle_en.properties +4 -0
- package/src/i18n/messagebundle_es.properties +1 -0
- package/src/i18n/messagebundle_et.properties +1 -0
- package/src/i18n/messagebundle_fi.properties +1 -0
- package/src/i18n/messagebundle_fr.properties +1 -0
- package/src/i18n/messagebundle_hr.properties +1 -0
- package/src/i18n/messagebundle_hu.properties +1 -0
- package/src/i18n/messagebundle_it.properties +1 -0
- package/src/i18n/messagebundle_iw.properties +2 -0
- package/src/i18n/messagebundle_ko.properties +1 -0
- package/src/i18n/messagebundle_lt.properties +1 -0
- package/src/i18n/messagebundle_lv.properties +1 -0
- package/src/i18n/messagebundle_nl.properties +1 -0
- package/src/i18n/messagebundle_no.properties +1 -0
- package/src/i18n/messagebundle_pl.properties +1 -0
- package/src/i18n/messagebundle_pt.properties +1 -0
- package/src/i18n/messagebundle_pt_BR.properties +1 -0
- package/src/i18n/messagebundle_ro.properties +1 -0
- package/src/i18n/messagebundle_ru.properties +1 -0
- package/src/i18n/messagebundle_sk.properties +1 -0
- package/src/i18n/messagebundle_sl.properties +1 -0
- package/src/i18n/messagebundle_sr.properties +2 -0
- package/src/i18n/messagebundle_sv.properties +1 -0
- package/src/i18n/messagebundle_tr.properties +1 -0
- package/src/i18n/messagebundle_uk.properties +1 -0
- package/src/i18n/messagebundle_zh_CN.properties +4 -0
- package/src/i18n/messagebundle_zh_TW.properties +1 -0
- package/src/themes/Badge.css +48 -52
- package/src/themes/BreadcrumbsPopover.css +1 -0
- package/src/themes/DatePickerPopover.css +9 -0
- package/src/themes/FilterMenu.css +6 -6
- package/src/themes/Footer.css +22 -3
- package/src/themes/MastheadItem.css +4 -0
- package/src/themes/MastheadMenu.css +1 -1
- package/src/themes/MastheadMenuItem.css +4 -0
- package/src/themes/MastheadShell.css +5 -0
- package/src/themes/MediaPlayer.css +2 -1
- package/src/themes/Modal.css +1 -0
- package/src/themes/TableCell.css +0 -2
- package/src/themes/TableCellBase.css +1 -0
- package/src/themes/TextArea.css +1 -1
- package/src/types/BadgeDesign.ts +17 -0
- package/src/types/IconPlacement.ts +6 -0
- package/src/types/List.ts +9 -0
- package/src/utils/isLetterKeyPressed.ts +5 -0
- package/src/utils/listItemLabelStartsWithKeyFocus.ts +74 -0
- package/src/utils/listItemLabelUtils.ts +50 -0
- package/dist/assets/messagebundle_de-8158912e.js +0 -1
- package/dist/assets/messagebundle_en-c677773a.js +0 -1
- package/dist/assets/messagebundle_es-8dab6565.js +0 -1
- package/dist/assets/messagebundle_fr-669aca6d.js +0 -1
package/src/Badge.hbs
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
|
-
{{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
{{
|
|
1
|
+
<div class="{{badgeClasses}}">
|
|
2
|
+
{{#if startIcon}}
|
|
3
|
+
<ui5-icon
|
|
4
|
+
class="udex-badge__icon udex-badge__icon--start"
|
|
5
|
+
name="{{icon}}">
|
|
6
|
+
</ui5-icon>
|
|
7
|
+
{{/if}}
|
|
8
|
+
<slot></slot>
|
|
9
|
+
{{#if endIcon}}
|
|
10
|
+
<ui5-icon
|
|
11
|
+
class="udex-badge__icon udex-badge__icon--end"
|
|
12
|
+
name="{{icon}}">
|
|
13
|
+
</ui5-icon>
|
|
14
|
+
{{/if}}
|
|
15
|
+
|
|
16
|
+
</div>
|
package/src/Badge.ts
CHANGED
|
@@ -9,6 +9,8 @@ import BadgeTemplate from "./generated/templates/BadgeTemplate.lit.js";
|
|
|
9
9
|
|
|
10
10
|
// Styles
|
|
11
11
|
import BadgeCss from "./generated/themes/Badge.css.js";
|
|
12
|
+
import IconPlacement from "./types/IconPlacement.js";
|
|
13
|
+
import { NumberBadgeDesign, TextBadgeDesign } from "./types/BadgeDesign.js";
|
|
12
14
|
|
|
13
15
|
export enum BadgeType {
|
|
14
16
|
text = "Text",
|
|
@@ -20,19 +22,6 @@ export enum BadgeSize {
|
|
|
20
22
|
large = "Large",
|
|
21
23
|
}
|
|
22
24
|
|
|
23
|
-
export enum BadgeTextDesign {
|
|
24
|
-
Info = "Info",
|
|
25
|
-
Success = "Success",
|
|
26
|
-
Error = "Error",
|
|
27
|
-
Warning = "Warning",
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
export enum BadgeNumberDesign {
|
|
31
|
-
Blue = "Blue",
|
|
32
|
-
Red = "Red",
|
|
33
|
-
White = "White",
|
|
34
|
-
}
|
|
35
|
-
|
|
36
25
|
/**
|
|
37
26
|
* @class
|
|
38
27
|
*
|
|
@@ -82,16 +71,32 @@ class UDExBadge extends UI5Element {
|
|
|
82
71
|
* @default "Info"
|
|
83
72
|
* @public
|
|
84
73
|
*/
|
|
85
|
-
@property({ defaultValue:
|
|
86
|
-
design
|
|
74
|
+
@property({ defaultValue: TextBadgeDesign.Info })
|
|
75
|
+
design!: `${TextBadgeDesign}`;
|
|
87
76
|
/**
|
|
88
77
|
* Defines the design of number type component.
|
|
89
78
|
*
|
|
90
79
|
* @default "Blue"
|
|
91
80
|
* @public
|
|
92
81
|
*/
|
|
93
|
-
@property({ defaultValue:
|
|
94
|
-
numberDesign!: `${
|
|
82
|
+
@property({ defaultValue: NumberBadgeDesign.Blue })
|
|
83
|
+
numberDesign!: `${NumberBadgeDesign}`;
|
|
84
|
+
/**
|
|
85
|
+
* Defines icon placement if icon was provided
|
|
86
|
+
*
|
|
87
|
+
* @default "End"
|
|
88
|
+
* @public
|
|
89
|
+
*/
|
|
90
|
+
@property({ type: IconPlacement, defaultValue: IconPlacement.End })
|
|
91
|
+
iconPlacement? : `${IconPlacement}`;
|
|
92
|
+
/**
|
|
93
|
+
* Defines icon name
|
|
94
|
+
*
|
|
95
|
+
* @default ""
|
|
96
|
+
* @public
|
|
97
|
+
*/
|
|
98
|
+
@property()
|
|
99
|
+
icon!: string;
|
|
95
100
|
|
|
96
101
|
/**
|
|
97
102
|
* Defines the content of the component.
|
|
@@ -101,8 +106,12 @@ class UDExBadge extends UI5Element {
|
|
|
101
106
|
@slot({ type: Node, "default": true })
|
|
102
107
|
default!: Array<Node>;
|
|
103
108
|
|
|
104
|
-
get
|
|
105
|
-
return this.
|
|
109
|
+
get startIcon(): boolean {
|
|
110
|
+
return !!this.icon && this.iconPlacement === IconPlacement.Start;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
get endIcon(): boolean {
|
|
114
|
+
return !!this.icon && this.iconPlacement === IconPlacement.End;
|
|
106
115
|
}
|
|
107
116
|
|
|
108
117
|
get textClasses(): string {
|
|
@@ -112,6 +121,14 @@ class UDExBadge extends UI5Element {
|
|
|
112
121
|
get numberClasses(): string {
|
|
113
122
|
return `udex-badge udex-badge--number udex-badge--${this.numberDesign.toLowerCase()} udex-badge--${this.size.toLowerCase()}`;
|
|
114
123
|
}
|
|
124
|
+
|
|
125
|
+
get badgeClasses(): string {
|
|
126
|
+
if (this.type === BadgeType.text) {
|
|
127
|
+
return this.textClasses;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
return this.numberClasses;
|
|
131
|
+
}
|
|
115
132
|
}
|
|
116
133
|
|
|
117
134
|
UDExBadge.define();
|
package/src/Breadcrumbs.ts
CHANGED
|
@@ -4,12 +4,15 @@ import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
|
4
4
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
5
5
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
6
6
|
import event from "@ui5/webcomponents-base/dist/decorators/event.js";
|
|
7
|
-
|
|
7
|
+
import {
|
|
8
|
+
isTabNext,
|
|
9
|
+
isTabPrevious,
|
|
10
|
+
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
8
11
|
import Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
9
12
|
import { LinkClickEventDetail } from "@ui5/webcomponents/dist/Link.js";
|
|
10
13
|
import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
11
14
|
import NavigationMode from "@ui5/webcomponents-base/dist/types/NavigationMode.js";
|
|
12
|
-
import ItemNavigation
|
|
15
|
+
import ItemNavigation from "@ui5/webcomponents-base/dist/delegate/ItemNavigation.js";
|
|
13
16
|
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
14
17
|
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
15
18
|
import breadcrumbsCss from "@ui5/webcomponents/dist/generated/themes/Breadcrumbs.css.js";
|
|
@@ -29,6 +32,8 @@ import "@ui5/webcomponents-icons/dist/home.js";
|
|
|
29
32
|
import BreadcrumbsCss from "./generated/themes/Breadcrumbs.css.js";
|
|
30
33
|
import BreadcrumbsPopoverCss from "./generated/themes/BreadcrumbsPopover.css.js";
|
|
31
34
|
|
|
35
|
+
const triggerActiveClass = "udex-breadcrumbs__trigger--opened";
|
|
36
|
+
|
|
32
37
|
export type UDExBreadcrumbsItemClickEventDetail = {
|
|
33
38
|
item: UDExBreadcrumbsItem;
|
|
34
39
|
altKey: boolean;
|
|
@@ -129,46 +134,41 @@ class UDExBreadcrumbs extends UI5Element {
|
|
|
129
134
|
|
|
130
135
|
responsivePopover?: Dropdown;
|
|
131
136
|
_itemNavigation?: ItemNavigation;
|
|
137
|
+
_shouldFocusFirstVisibleItem!: boolean;
|
|
138
|
+
|
|
132
139
|
static i18nBundle: I18nBundle;
|
|
133
140
|
|
|
134
|
-
|
|
141
|
+
static async onDefine(): Promise<void> {
|
|
142
|
+
UDExBreadcrumbs.i18nBundle = await getI18nBundle("@udex/web-components");
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
onBeforeRendering(): void {
|
|
135
146
|
this._preprocessItems();
|
|
136
147
|
}
|
|
137
148
|
|
|
138
|
-
|
|
149
|
+
onAfterRendering(): void {
|
|
150
|
+
this._initItemNavigation();
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
_preprocessItems(): void {
|
|
139
154
|
this.items.forEach(item => {
|
|
140
155
|
item._getRealDomRef = () => this.getDomRef()!.querySelector(`[data-ui5-stable*=${item.stableDomRef}]`)!;
|
|
141
156
|
});
|
|
142
157
|
}
|
|
143
158
|
|
|
144
|
-
async _getResponsePopover() {
|
|
159
|
+
async _getResponsePopover(): Promise<Dropdown> {
|
|
145
160
|
const staticAreaItem = await this.getStaticAreaItemDomRef();
|
|
146
161
|
return staticAreaItem!.querySelector<Dropdown>(`#udex-${this.__id!}-breadcrumbs__popover`)!;
|
|
147
162
|
}
|
|
148
163
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
* @private
|
|
152
|
-
*/
|
|
153
|
-
get _dropdownArrowLink() {
|
|
154
|
-
return this.shadowRoot!.querySelector<Link>(".udex-breadcrumbs__trigger")!;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
/**
|
|
158
|
-
* Getter for the list of links corresponding to the abstract breadcrumb items
|
|
159
|
-
*/
|
|
160
|
-
get _links() {
|
|
161
|
-
return Array.from(this.shadowRoot!.querySelectorAll<Link>(".udex-breadcrumbs__link-wrapper [ui5-link]"));
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
_getFocusableItems() {
|
|
165
|
-
const items: Array<ITabbable> = this._links;
|
|
164
|
+
_getFocusableItems(): Array<Link> {
|
|
165
|
+
const items = this._links;
|
|
166
166
|
items.unshift(this._dropdownArrowLink);
|
|
167
167
|
|
|
168
168
|
return items;
|
|
169
169
|
}
|
|
170
170
|
|
|
171
|
-
_initItemNavigation() {
|
|
171
|
+
_initItemNavigation(): void {
|
|
172
172
|
if (!this._itemNavigation) {
|
|
173
173
|
this._itemNavigation = new ItemNavigation(this, {
|
|
174
174
|
navigationMode: NavigationMode.Horizontal,
|
|
@@ -177,24 +177,20 @@ class UDExBreadcrumbs extends UI5Element {
|
|
|
177
177
|
}
|
|
178
178
|
}
|
|
179
179
|
|
|
180
|
-
|
|
181
|
-
this._initItemNavigation();
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
_getItems() {
|
|
180
|
+
_getItems(): Array<UDExBreadcrumbsItem> {
|
|
185
181
|
return this.getSlottedNodes<UDExBreadcrumbsItem>("items");
|
|
186
182
|
}
|
|
187
183
|
|
|
188
|
-
_closeRespPopover() {
|
|
184
|
+
_closeRespPopover(): void {
|
|
189
185
|
this.responsivePopover && this.responsivePopover.onClose();
|
|
190
186
|
}
|
|
191
187
|
|
|
192
|
-
async _openRespPopover() {
|
|
188
|
+
async _openRespPopover(): Promise<void> {
|
|
193
189
|
this.responsivePopover = await this._getResponsePopover();
|
|
194
190
|
this.responsivePopover.onOpen(this._dropdownArrowLink);
|
|
195
191
|
}
|
|
196
192
|
|
|
197
|
-
_onDropdownLinkPress(e: CustomEvent<LinkClickEventDetail>) {
|
|
193
|
+
_onDropdownLinkPress(e: CustomEvent<LinkClickEventDetail>): void {
|
|
198
194
|
const listItem = e.target as HTMLElement,
|
|
199
195
|
items = this._getItems(),
|
|
200
196
|
item = items.find(x => `${x._id}-li` === listItem.id)!;
|
|
@@ -209,7 +205,7 @@ class UDExBreadcrumbs extends UI5Element {
|
|
|
209
205
|
}
|
|
210
206
|
}
|
|
211
207
|
|
|
212
|
-
_onLinkPress(e: CustomEvent<LinkClickEventDetail>) {
|
|
208
|
+
_onLinkPress(e: CustomEvent<LinkClickEventDetail>): void {
|
|
213
209
|
const link = e.target as Link,
|
|
214
210
|
items = this._getItems(),
|
|
215
211
|
item = items.find(x => `${x._id}-link` === link.id)!,
|
|
@@ -231,31 +227,74 @@ class UDExBreadcrumbs extends UI5Element {
|
|
|
231
227
|
}
|
|
232
228
|
}
|
|
233
229
|
|
|
234
|
-
_isItemVisible(item: UDExBreadcrumbsItem) {
|
|
230
|
+
_isItemVisible(item: UDExBreadcrumbsItem): boolean {
|
|
235
231
|
return !item.hidden;
|
|
236
232
|
}
|
|
237
233
|
|
|
238
|
-
_afterDropdownOpen() {
|
|
234
|
+
_afterDropdownOpen(): void {
|
|
239
235
|
this._dropdownOpened = true;
|
|
240
236
|
}
|
|
241
237
|
|
|
242
|
-
_afterDropdownClose() {
|
|
238
|
+
_afterDropdownClose(): void {
|
|
243
239
|
this._dropdownOpened = false;
|
|
240
|
+
if (this._shouldFocusFirstVisibleItem) {
|
|
241
|
+
this._focusFirstVisibleItem();
|
|
242
|
+
}
|
|
244
243
|
}
|
|
245
244
|
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
245
|
+
_toggleDropdown(): void {
|
|
246
|
+
if (this._dropdownOpened) {
|
|
247
|
+
this._closeRespPopover();
|
|
248
|
+
} else {
|
|
249
|
+
this._openRespPopover();
|
|
250
|
+
}
|
|
251
|
+
}
|
|
249
252
|
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
+
_onfocusin(e: FocusEvent): void {
|
|
254
|
+
const currentItem = e.target as Link;
|
|
255
|
+
|
|
256
|
+
this._itemNavigation?.setCurrentItem(currentItem);
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
_handleKeydown(e: KeyboardEvent): void {
|
|
260
|
+
const itemIndex = (e.target as HTMLElement).getAttribute("index");
|
|
261
|
+
const isLastItem = itemIndex === (this.items.length - 2).toString();
|
|
262
|
+
const isFirstItem = itemIndex === "0";
|
|
263
|
+
|
|
264
|
+
if (isTabNext(e) && isLastItem) {
|
|
265
|
+
this._closeRespPopover();
|
|
266
|
+
this._shouldFocusFirstVisibleItem = true;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
if (isTabPrevious(e) && isFirstItem) {
|
|
270
|
+
this._closeRespPopover();
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
_focusFirstVisibleItem(): void {
|
|
275
|
+
Array.from(this.shadowRoot!.querySelectorAll<Link>("[udex-link]"))[0].focus();
|
|
276
|
+
this._shouldFocusFirstVisibleItem = false;
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
/**
|
|
280
|
+
* Getter for the interactive element that opens the overflow
|
|
281
|
+
* @private
|
|
282
|
+
*/
|
|
283
|
+
get _dropdownArrowLink(): Link {
|
|
284
|
+
return this.shadowRoot!.querySelector<Link>(".udex-breadcrumbs__trigger")!;
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
/**
|
|
288
|
+
* Getter for the list of links corresponding to the abstract breadcrumb items
|
|
289
|
+
*/
|
|
290
|
+
get _links(): Array<Link> {
|
|
291
|
+
return Array.from(this.shadowRoot!.querySelectorAll<Link>(".udex-breadcrumbs__link-wrapper [ui5-link]"));
|
|
253
292
|
}
|
|
254
293
|
|
|
255
294
|
/**
|
|
256
295
|
* Getter for the list of abstract breadcrumb items to be rendered as links outside the overflow
|
|
257
296
|
*/
|
|
258
|
-
get _linksData() {
|
|
297
|
+
get _linksData(): Array<UDExBreadcrumbsItem> {
|
|
259
298
|
const items = this._visibleItems;
|
|
260
299
|
const itemsCount = items.length;
|
|
261
300
|
|
|
@@ -266,43 +305,30 @@ class UDExBreadcrumbs extends UI5Element {
|
|
|
266
305
|
});
|
|
267
306
|
}
|
|
268
307
|
|
|
269
|
-
get
|
|
270
|
-
|
|
271
|
-
|
|
308
|
+
get _visibleItems(): Array<UDExBreadcrumbsItem> {
|
|
309
|
+
const items = this._getItems();
|
|
310
|
+
const itemsLength = this.showItems ?? 0;
|
|
272
311
|
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
this.
|
|
276
|
-
} else {
|
|
277
|
-
this._openRespPopover();
|
|
278
|
-
}
|
|
312
|
+
return this._getItems()
|
|
313
|
+
.slice(Math.max(items.length - itemsLength - 1, 0))
|
|
314
|
+
.filter(i => this._isItemVisible(i));
|
|
279
315
|
}
|
|
280
316
|
|
|
281
|
-
get _dropdownItems() {
|
|
317
|
+
get _dropdownItems(): Array<UDExBreadcrumbsItem> {
|
|
282
318
|
return this._getItems().filter(i => this._isItemVisible(i));
|
|
283
319
|
}
|
|
284
320
|
|
|
285
|
-
get _triggerClass() {
|
|
286
|
-
return this._dropdownOpened ?
|
|
321
|
+
get _triggerClass(): string {
|
|
322
|
+
return this._dropdownOpened ? triggerActiveClass : "";
|
|
287
323
|
}
|
|
288
324
|
|
|
289
|
-
get _accessibleNameText() {
|
|
325
|
+
get _accessibleNameText(): string {
|
|
290
326
|
return UDExBreadcrumbs.i18nBundle.getText(BREADCRUMBS_ARIA_LABEL);
|
|
291
327
|
}
|
|
292
328
|
|
|
293
|
-
get _dropdownArrowAccessibleNameText() {
|
|
329
|
+
get _dropdownArrowAccessibleNameText(): string {
|
|
294
330
|
return UDExBreadcrumbs.i18nBundle.getText(BREADCRUMBS_OVERFLOW_ARIA_LABEL);
|
|
295
331
|
}
|
|
296
|
-
|
|
297
|
-
_onfocusin(e: FocusEvent) {
|
|
298
|
-
const currentItem = e.target as Link;
|
|
299
|
-
|
|
300
|
-
this._itemNavigation?.setCurrentItem(currentItem);
|
|
301
|
-
}
|
|
302
|
-
|
|
303
|
-
static async onDefine() {
|
|
304
|
-
UDExBreadcrumbs.i18nBundle = await getI18nBundle("@udex/web-components");
|
|
305
|
-
}
|
|
306
332
|
}
|
|
307
333
|
|
|
308
334
|
UDExBreadcrumbs.define();
|
package/src/BreadcrumbsItem.ts
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
<udex-dropdown
|
|
2
2
|
id="udex-{{this._id}}-breadcrumbs__popover"
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
class="udex-breadcrumbs__popover ui5-breadcrumbs-popover"
|
|
4
|
+
placement-type="Bottom"
|
|
5
|
+
horizontal-align="Left"
|
|
6
6
|
@after-open="{{_afterDropdownOpen}}"
|
|
7
7
|
@after-close="{{_afterDropdownClose}}"
|
|
8
|
-
|
|
8
|
+
@keydown="{{_handleKeydown}}">
|
|
9
9
|
<div class="udex-breadcrumbs__popover-content">
|
|
10
|
-
|
|
10
|
+
{{#each _dropdownItems}}
|
|
11
11
|
{{#if this.icon}}
|
|
12
12
|
<udex-link
|
|
13
|
+
index="{{@index}}"
|
|
13
14
|
id="{{this._id}}-li"
|
|
14
15
|
@ui5-click="{{../_onDropdownLinkPress}}"
|
|
15
16
|
href="{{this.href}}"
|
|
16
|
-
|
|
17
|
+
target="{{this.target}}"
|
|
17
18
|
class="udex-breadcrumbs__item udex-breadcrumbs__item--{{@index}} udex-breadcrumbs__item--with-icon"
|
|
18
19
|
icon={{this.icon}}
|
|
19
20
|
icon-placement="start"
|
|
@@ -31,16 +32,17 @@
|
|
|
31
32
|
</span>
|
|
32
33
|
{{else}}
|
|
33
34
|
<udex-link
|
|
35
|
+
index="{{@index}}"
|
|
34
36
|
id="{{this._id}}-li"
|
|
35
37
|
@ui5-click="{{../_onDropdownLinkPress}}"
|
|
36
38
|
href="{{this.href}}"
|
|
37
|
-
|
|
39
|
+
target="{{this.target}}"
|
|
38
40
|
class="udex-breadcrumbs__item udex-breadcrumbs__item--{{@index}}"
|
|
39
41
|
accessible-name="{{this.accessibleName}}"
|
|
40
42
|
data-ui5-stable="{{this.stableDomRef}}">
|
|
41
43
|
{{this.textContent}}
|
|
42
44
|
</udex-link>
|
|
43
45
|
{{/if}}
|
|
44
|
-
|
|
46
|
+
{{/each}}
|
|
45
47
|
</div>
|
|
46
|
-
</udex-dropdown>
|
|
48
|
+
</udex-dropdown>
|
package/src/Checkbox.ts
CHANGED
package/src/CountrySelector.hbs
CHANGED
package/src/CountrySelector.ts
CHANGED
|
@@ -6,7 +6,8 @@ import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
|
6
6
|
import executeTemplate from "@ui5/webcomponents-base/dist/renderer/executeTemplate.js";
|
|
7
7
|
import {
|
|
8
8
|
isEnter, isSpace, isBackSpace, isDelete,
|
|
9
|
-
isEscape,
|
|
9
|
+
isEscape,
|
|
10
|
+
isTabPrevious,
|
|
10
11
|
isTabNext,
|
|
11
12
|
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
12
13
|
import Popover from "@ui5/webcomponents/dist/Popover.js";
|
|
@@ -30,6 +31,8 @@ import { Country, CountryListDB } from "./data/CountryListISO3166.js";
|
|
|
30
31
|
import UDExSearchableListBase from "./SearchableListBase.js";
|
|
31
32
|
import UDExListItem from "./ListItem.js";
|
|
32
33
|
import "@ui5/webcomponents-icons/dist/navigation-down-arrow.js";
|
|
34
|
+
import isLetterKey from "./utils/isLetterKeyPressed.js";
|
|
35
|
+
|
|
33
36
|
/**
|
|
34
37
|
* @class
|
|
35
38
|
*
|
|
@@ -423,31 +426,46 @@ class CountrySelector extends UDExSearchableListBase {
|
|
|
423
426
|
this.dropDownClose();
|
|
424
427
|
}
|
|
425
428
|
|
|
426
|
-
handleKeyDown(e:
|
|
429
|
+
handleKeyDown(e: KeyboardEvent) {
|
|
427
430
|
if (this.disabled || this.readonly || this.displayonly) {
|
|
428
431
|
return;
|
|
429
432
|
}
|
|
430
433
|
|
|
431
|
-
const
|
|
432
|
-
|
|
433
|
-
|
|
434
|
+
const key = e.key;
|
|
435
|
+
|
|
436
|
+
const isTabNextPress = isTabNext(e) && !this._search;
|
|
437
|
+
const isTabPrevPress = isTabPrevious(e) && !this._search;
|
|
438
|
+
const isEscPress = isEscape(e) && !this._search;
|
|
439
|
+
|
|
440
|
+
if (isEnter(e) || isSpace(e)) {
|
|
434
441
|
if (this._dropdown.open) {
|
|
435
442
|
this.dropDownClose();
|
|
436
443
|
} else {
|
|
437
444
|
this._dropdown.onTriggerClick();
|
|
438
445
|
}
|
|
439
|
-
}
|
|
446
|
+
}
|
|
447
|
+
if (isTabNextPress || isTabPrevPress || isEscPress) {
|
|
448
|
+
this._dropdown.open = false;
|
|
449
|
+
}
|
|
450
|
+
if (isBackSpace(e) || isDelete(e)) {
|
|
440
451
|
this.selectedCountry = undefined;
|
|
441
452
|
this._render();
|
|
442
|
-
} else if (this.isLetterKey(key)) {
|
|
443
|
-
this._dropdown.onOpen(this.getInput());
|
|
444
|
-
this._search.focus();
|
|
445
|
-
this._search.value = key;
|
|
446
|
-
this.onValueSearch(key);
|
|
447
453
|
}
|
|
454
|
+
if (isLetterKey(key)) {
|
|
455
|
+
e.preventDefault();
|
|
456
|
+
this.handleKeyPress(e);
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
handleKeyPress(keyEvent: KeyboardEvent) {
|
|
461
|
+
const key = keyEvent.key;
|
|
462
|
+
this._dropdown.onOpen(this.getInput());
|
|
463
|
+
this._search.focus();
|
|
464
|
+
this._search.value = key;
|
|
465
|
+
this.onValueSearch(key);
|
|
448
466
|
}
|
|
449
467
|
|
|
450
|
-
handleInputMouseDown(e: CustomEvent) {
|
|
468
|
+
handleInputMouseDown(e: CustomEvent): void {
|
|
451
469
|
e.preventDefault();
|
|
452
470
|
}
|
|
453
471
|
|
|
@@ -463,10 +481,6 @@ class CountrySelector extends UDExSearchableListBase {
|
|
|
463
481
|
}
|
|
464
482
|
}
|
|
465
483
|
|
|
466
|
-
isLetterKey(key: string) {
|
|
467
|
-
return /^[a-zA-Z]$/.test(key);
|
|
468
|
-
}
|
|
469
|
-
|
|
470
484
|
handleValueSearch(e:CustomEvent) {
|
|
471
485
|
this.onValueSearch(e.detail.value as string);
|
|
472
486
|
}
|
package/src/DatePicker.ts
CHANGED
|
@@ -304,7 +304,7 @@ class UDExDatePicker extends UI5Element {
|
|
|
304
304
|
this.hideCalendar();
|
|
305
305
|
}
|
|
306
306
|
|
|
307
|
-
handleInputClick(e:
|
|
307
|
+
handleInputClick(e: Event | KeyboardEvent): void {
|
|
308
308
|
e.preventDefault();
|
|
309
309
|
|
|
310
310
|
if (this.disabled || this.readonly) {
|
|
@@ -314,7 +314,7 @@ class UDExDatePicker extends UI5Element {
|
|
|
314
314
|
this.showCalendar();
|
|
315
315
|
}
|
|
316
316
|
|
|
317
|
-
handleInputMouseDown(e:
|
|
317
|
+
handleInputMouseDown(e: Event): void {
|
|
318
318
|
e.preventDefault();
|
|
319
319
|
}
|
|
320
320
|
|
package/src/Dropdown.ts
CHANGED
|
@@ -274,8 +274,6 @@ class UDExDropdown extends UI5Element {
|
|
|
274
274
|
const dropdownPaneLeftOffset = +dropdownPane.style.left.split("px")[0];
|
|
275
275
|
if (dropdownPane.offsetWidth + dropdownPaneLeftOffset < this._breakpointSizeXS) {
|
|
276
276
|
this.style.setProperty("--udex-dropdown-left-offset", `${dropdownPane.style.left}`);
|
|
277
|
-
} else {
|
|
278
|
-
dropdownPane.style.setProperty("--udex-dropdown-pane-width", `${this.offsetWidth}px`);
|
|
279
277
|
}
|
|
280
278
|
this.fireEvent("after-open");
|
|
281
279
|
}
|