@ui5/webcomponents 2.0.0-rc.1 → 2.0.0-rc.3
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/CHANGELOG.md +702 -0
- package/README.md +3 -8
- package/dist/.tsbuildinfo +1 -1
- package/dist/Avatar.d.ts +16 -7
- package/dist/Avatar.js +5 -4
- package/dist/Avatar.js.map +1 -1
- package/dist/AvatarGroup.d.ts +15 -10
- package/dist/AvatarGroup.js +7 -6
- package/dist/AvatarGroup.js.map +1 -1
- package/dist/Breadcrumbs.d.ts +2 -1
- package/dist/Breadcrumbs.js +5 -6
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Button.d.ts +15 -24
- package/dist/Button.js +4 -4
- package/dist/Button.js.map +1 -1
- package/dist/Calendar.js +4 -3
- package/dist/Calendar.js.map +1 -1
- package/dist/CalendarLegend.js +1 -1
- package/dist/CalendarLegend.js.map +1 -1
- package/dist/CalendarPart.d.ts +2 -1
- package/dist/CalendarPart.js +2 -1
- package/dist/CalendarPart.js.map +1 -1
- package/dist/Carousel.d.ts +11 -16
- package/dist/Carousel.js +29 -16
- package/dist/Carousel.js.map +1 -1
- package/dist/CheckBox.d.ts +3 -3
- package/dist/CheckBox.js +3 -3
- package/dist/CheckBox.js.map +1 -1
- package/dist/ComboBox.d.ts +3 -2
- package/dist/ComboBox.js +24 -21
- package/dist/ComboBox.js.map +1 -1
- package/dist/ComboBoxGroupItem.d.ts +1 -0
- package/dist/ComboBoxGroupItem.js +3 -0
- package/dist/ComboBoxGroupItem.js.map +1 -1
- package/dist/ComboBoxItem.d.ts +1 -0
- package/dist/ComboBoxItem.js +3 -0
- package/dist/ComboBoxItem.js.map +1 -1
- package/dist/CustomListItem.d.ts +1 -1
- package/dist/CustomListItem.js +4 -4
- package/dist/CustomListItem.js.map +1 -1
- package/dist/DateComponentBase.js +2 -1
- package/dist/DateComponentBase.js.map +1 -1
- package/dist/DatePicker.d.ts +12 -21
- package/dist/DatePicker.js +24 -50
- package/dist/DatePicker.js.map +1 -1
- package/dist/DateRangePicker.js +1 -1
- package/dist/DateRangePicker.js.map +1 -1
- package/dist/DateTimePicker.d.ts +3 -6
- package/dist/DateTimePicker.js +13 -13
- package/dist/DateTimePicker.js.map +1 -1
- package/dist/DayPicker.js +2 -1
- package/dist/DayPicker.js.map +1 -1
- package/dist/Dialog.d.ts +1 -2
- package/dist/Dialog.js +4 -13
- package/dist/Dialog.js.map +1 -1
- package/dist/DropIndicator.d.ts +0 -1
- package/dist/DropIndicator.js +13 -6
- package/dist/DropIndicator.js.map +1 -1
- package/dist/FileUploader.d.ts +2 -0
- package/dist/FileUploader.js +26 -10
- package/dist/FileUploader.js.map +1 -1
- package/dist/Icon.d.ts +9 -30
- package/dist/Icon.js +20 -41
- package/dist/Icon.js.map +1 -1
- package/dist/Input.d.ts +45 -53
- package/dist/Input.js +134 -189
- package/dist/Input.js.map +1 -1
- package/dist/Link.d.ts +15 -23
- package/dist/Link.js +2 -3
- package/dist/Link.js.map +1 -1
- package/dist/List.d.ts +22 -13
- package/dist/List.js +59 -8
- package/dist/List.js.map +1 -1
- package/dist/ListItem.d.ts +18 -50
- package/dist/ListItem.js +20 -19
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.d.ts +1 -1
- package/dist/ListItemBase.js +1 -1
- package/dist/ListItemBase.js.map +1 -1
- package/dist/ListItemGroup.d.ts +51 -0
- package/dist/ListItemGroup.js +80 -0
- package/dist/ListItemGroup.js.map +1 -0
- package/dist/{GroupHeaderListItem.d.ts → ListItemGroupHeader.d.ts} +4 -5
- package/dist/{GroupHeaderListItem.js → ListItemGroupHeader.js} +17 -17
- package/dist/ListItemGroupHeader.js.map +1 -0
- package/dist/Menu.d.ts +4 -4
- package/dist/Menu.js +10 -10
- package/dist/Menu.js.map +1 -1
- package/dist/MenuItem.d.ts +4 -4
- package/dist/MenuItem.js +3 -3
- package/dist/MenuItem.js.map +1 -1
- package/dist/MenuListItem.js +5 -3
- package/dist/MenuListItem.js.map +1 -1
- package/dist/MessageStrip.d.ts +18 -9
- package/dist/MessageStrip.js +23 -12
- package/dist/MessageStrip.js.map +1 -1
- package/dist/MultiComboBox.d.ts +1 -1
- package/dist/MultiComboBox.js +50 -59
- package/dist/MultiComboBox.js.map +1 -1
- package/dist/MultiComboBoxItem.d.ts +3 -1
- package/dist/MultiComboBoxItem.js +6 -2
- package/dist/MultiComboBoxItem.js.map +1 -1
- package/dist/MultiInput.d.ts +7 -11
- package/dist/MultiInput.js +32 -60
- package/dist/MultiInput.js.map +1 -1
- package/dist/Option.d.ts +4 -4
- package/dist/Option.js +1 -1
- package/dist/Option.js.map +1 -1
- package/dist/Popover.d.ts +9 -8
- package/dist/Popover.js +43 -24
- package/dist/Popover.js.map +1 -1
- package/dist/Popup.d.ts +12 -19
- package/dist/Popup.js +44 -42
- package/dist/Popup.js.map +1 -1
- package/dist/ProgressIndicator.js +6 -6
- package/dist/ProgressIndicator.js.map +1 -1
- package/dist/RadioButton.js +3 -3
- package/dist/RadioButton.js.map +1 -1
- package/dist/ResponsivePopover.d.ts +1 -0
- package/dist/ResponsivePopover.js +8 -3
- package/dist/ResponsivePopover.js.map +1 -1
- package/dist/SegmentedButton.d.ts +4 -14
- package/dist/SegmentedButton.js +12 -31
- package/dist/SegmentedButton.js.map +1 -1
- package/dist/SegmentedButtonItem.d.ts +62 -26
- package/dist/SegmentedButtonItem.js +71 -20
- package/dist/SegmentedButtonItem.js.map +1 -1
- package/dist/Select.d.ts +7 -7
- package/dist/Select.js +16 -16
- package/dist/Select.js.map +1 -1
- package/dist/SelectMenu.js +6 -6
- package/dist/SelectMenu.js.map +1 -1
- package/dist/SelectMenuOption.d.ts +3 -2
- package/dist/SelectMenuOption.js.map +1 -1
- package/dist/SplitButton.d.ts +0 -20
- package/dist/SplitButton.js +0 -15
- package/dist/SplitButton.js.map +1 -1
- package/dist/StandardListItem.d.ts +1 -1
- package/dist/StandardListItem.js.map +1 -1
- package/dist/StepInput.d.ts +6 -1
- package/dist/StepInput.js +55 -14
- package/dist/StepInput.js.map +1 -1
- package/dist/SuggestionGroupItem.js +2 -2
- package/dist/SuggestionGroupItem.js.map +1 -1
- package/dist/Tab.d.ts +9 -7
- package/dist/Tab.js +12 -8
- package/dist/Tab.js.map +1 -1
- package/dist/TabContainer.d.ts +28 -14
- package/dist/TabContainer.js +80 -29
- package/dist/TabContainer.js.map +1 -1
- package/dist/TabSeparator.d.ts +8 -3
- package/dist/TabSeparator.js +1 -0
- package/dist/TabSeparator.js.map +1 -1
- package/dist/{Badge.d.ts → Tag.d.ts} +23 -17
- package/dist/{Badge.js → Tag.js} +53 -49
- package/dist/Tag.js.map +1 -0
- package/dist/Text.d.ts +1 -1
- package/dist/Text.js +1 -1
- package/dist/Text.js.map +1 -1
- package/dist/TextArea.d.ts +10 -10
- package/dist/TextArea.js +16 -16
- package/dist/TextArea.js.map +1 -1
- package/dist/TimePicker.d.ts +171 -13
- package/dist/TimePicker.js +462 -20
- package/dist/TimePicker.js.map +1 -1
- package/dist/TimePickerInternals.d.ts +3 -3
- package/dist/TimePickerInternals.js +6 -5
- package/dist/TimePickerInternals.js.map +1 -1
- package/dist/TimeSelectionClocks.js +2 -4
- package/dist/TimeSelectionClocks.js.map +1 -1
- package/dist/TimeSelectionInputs.js +0 -2
- package/dist/TimeSelectionInputs.js.map +1 -1
- package/dist/Title.d.ts +1 -2
- package/dist/Title.js +7 -10
- package/dist/Title.js.map +1 -1
- package/dist/Toast.d.ts +11 -8
- package/dist/Toast.js +36 -30
- package/dist/Toast.js.map +1 -1
- package/dist/ToggleSpinButton.d.ts +4 -0
- package/dist/ToggleSpinButton.js +6 -0
- package/dist/ToggleSpinButton.js.map +1 -1
- package/dist/Token.d.ts +8 -8
- package/dist/Token.js +11 -11
- package/dist/Token.js.map +1 -1
- package/dist/Tokenizer.d.ts +128 -47
- package/dist/Tokenizer.js +356 -172
- package/dist/Tokenizer.js.map +1 -1
- package/dist/Toolbar.js +6 -5
- package/dist/Toolbar.js.map +1 -1
- package/dist/ToolbarButton.d.ts +14 -17
- package/dist/ToolbarButton.js.map +1 -1
- package/dist/Tree.d.ts +2 -8
- package/dist/Tree.js +2 -4
- package/dist/Tree.js.map +1 -1
- package/dist/TreeItemBase.d.ts +4 -4
- package/dist/TreeItemBase.js +4 -4
- package/dist/TreeItemBase.js.map +1 -1
- package/dist/TreeItemCustom.d.ts +1 -1
- package/dist/TreeItemCustom.js +4 -4
- package/dist/TreeItemCustom.js.map +1 -1
- package/dist/bundle.common.bootstrap.js +3 -0
- package/dist/bundle.esm.d.ts +1 -0
- package/dist/bundle.esm.js +284 -0
- package/dist/bundle.esm.js.map +1 -1
- package/dist/bundle.scoped.esm.js +8 -0
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/css/themes/AvatarGroup.css +1 -1
- package/dist/css/themes/Bar.css +1 -1
- package/dist/css/themes/Breadcrumbs.css +1 -1
- package/dist/css/themes/BusyIndicator.css +1 -1
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/Calendar.css +1 -1
- package/dist/css/themes/CalendarHeader.css +1 -1
- package/dist/css/themes/CalendarLegend.css +1 -1
- package/dist/css/themes/CalendarLegendItem.css +1 -1
- package/dist/css/themes/Card.css +1 -1
- package/dist/css/themes/CardHeader.css +1 -1
- package/dist/css/themes/Carousel.css +1 -1
- package/dist/css/themes/CheckBox.css +1 -1
- package/dist/css/themes/ColorPalette.css +1 -1
- package/dist/css/themes/ColorPaletteItem.css +1 -1
- package/dist/css/themes/ColorPalettePopover.css +1 -1
- package/dist/css/themes/ColorPicker.css +1 -1
- package/dist/css/themes/ComboBox.css +1 -1
- package/dist/css/themes/CustomListItem.css +1 -1
- package/dist/css/themes/DatePicker.css +1 -1
- package/dist/css/themes/DateTimePickerPopover.css +1 -1
- package/dist/css/themes/DayPicker.css +1 -1
- package/dist/css/themes/Dialog.css +1 -1
- package/dist/css/themes/DropIndicator.css +1 -1
- package/dist/css/themes/FileUploader.css +1 -1
- package/dist/css/themes/GrowingButton.css +1 -1
- package/dist/css/themes/Icon.css +1 -1
- package/dist/css/themes/Input.css +1 -1
- package/dist/css/themes/InputIcon.css +1 -1
- package/dist/css/themes/InputSharedStyles.css +1 -1
- package/dist/css/themes/Link.css +1 -1
- package/dist/css/themes/List.css +1 -1
- package/dist/css/themes/ListItem.css +1 -1
- package/dist/css/themes/ListItemBase.css +1 -1
- package/dist/css/themes/ListItemGroup.css +1 -0
- package/dist/css/themes/{GroupHeaderListItem.css → ListItemGroupHeader.css} +1 -1
- package/dist/css/themes/Menu.css +1 -1
- package/dist/css/themes/MenuListItem.css +1 -1
- package/dist/css/themes/MessageStrip.css +1 -1
- package/dist/css/themes/MonthPicker.css +1 -1
- package/dist/css/themes/MultiComboBox.css +1 -1
- package/dist/css/themes/MultiComboBoxPopover.css +1 -1
- package/dist/css/themes/MultiInput.css +1 -1
- package/dist/css/themes/NavigationMenu.css +1 -1
- package/dist/css/themes/Panel.css +1 -1
- package/dist/css/themes/Popover.css +1 -1
- package/dist/css/themes/PopupBlockLayer.css +1 -1
- package/dist/css/themes/PopupsCommon.css +1 -1
- package/dist/css/themes/ProgressIndicator.css +1 -1
- package/dist/css/themes/RadioButton.css +1 -1
- package/dist/css/themes/RangeSlider.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/ResponsivePopover.css +1 -1
- package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
- package/dist/css/themes/SegmentedButton.css +1 -1
- package/dist/css/themes/SegmentedButtonItem.css +1 -0
- package/dist/css/themes/Select.css +1 -1
- package/dist/css/themes/SelectMenu.css +1 -1
- package/dist/css/themes/SelectPopover.css +1 -1
- package/dist/css/themes/SliderBase.css +1 -1
- package/dist/css/themes/SplitButton.css +1 -1
- package/dist/css/themes/StepInput.css +1 -1
- package/dist/css/themes/Switch.css +1 -1
- package/dist/css/themes/TabContainer.css +1 -1
- package/dist/css/themes/TabInOverflow.css +1 -1
- package/dist/css/themes/TabInStrip.css +1 -1
- package/dist/css/themes/TabSemanticIcon.css +1 -1
- package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
- package/dist/css/themes/Tag.css +1 -0
- package/dist/css/themes/Text.css +1 -1
- package/dist/css/themes/TextArea.css +1 -1
- package/dist/css/themes/TimePicker.css +1 -1
- package/dist/css/themes/Title.css +1 -1
- package/dist/css/themes/Toast.css +1 -1
- package/dist/css/themes/ToggleButton.css +1 -1
- package/dist/css/themes/Token.css +1 -1
- package/dist/css/themes/Tokenizer.css +1 -1
- package/dist/css/themes/TokenizerPopover.css +1 -1
- package/dist/css/themes/Toolbar.css +1 -1
- package/dist/css/themes/ToolbarPopover.css +1 -1
- package/dist/css/themes/TreeItem.css +1 -1
- package/dist/css/themes/ValueStateMessage.css +1 -1
- package/dist/css/themes/YearPicker.css +1 -1
- package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +2173 -3442
- package/dist/custom-elements.json +1582 -2723
- package/dist/features/InputSuggestions.d.ts +14 -19
- package/dist/features/InputSuggestions.js +28 -72
- package/dist/features/InputSuggestions.js.map +1 -1
- package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_in.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/i18n/i18n-defaults.d.ts +10 -8
- package/dist/generated/i18n/i18n-defaults.js +12 -10
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/json-imports/Themes.js +1 -4
- package/dist/generated/json-imports/Themes.js.map +1 -1
- package/dist/generated/templates/AvatarGroupTemplate.lit.js +1 -1
- package/dist/generated/templates/AvatarGroupTemplate.lit.js.map +1 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/ButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ComboBoxTemplate.lit.js +3 -3
- package/dist/generated/templates/ComboBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CustomListItemTemplate.lit.js +1 -1
- package/dist/generated/templates/CustomListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerInputTemplate.lit.js +1 -1
- package/dist/generated/templates/DatePickerInputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerTemplate.lit.js +3 -3
- package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DateTimePickerTemplate.lit.js +2 -2
- package/dist/generated/templates/DateTimePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DialogTemplate.lit.js +1 -1
- package/dist/generated/templates/DialogTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FileUploaderTemplate.lit.js +1 -1
- package/dist/generated/templates/FileUploaderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/IconTemplate.lit.js +1 -1
- package/dist/generated/templates/IconTemplate.lit.js.map +1 -1
- package/dist/generated/templates/InputPopoverTemplate.lit.js +16 -16
- package/dist/generated/templates/InputPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/InputTemplate.lit.js +20 -20
- package/dist/generated/templates/InputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/LinkTemplate.lit.js +1 -1
- package/dist/generated/templates/LinkTemplate.lit.js.map +1 -1
- package/dist/generated/templates/{GroupHeaderListItemTemplate.lit.d.ts → ListItemGroupHeaderTemplate.lit.d.ts} +2 -2
- package/dist/generated/templates/{GroupHeaderListItemTemplate.lit.js → ListItemGroupHeaderTemplate.lit.js} +1 -1
- package/dist/generated/templates/{GroupHeaderListItemTemplate.lit.js.map → ListItemGroupHeaderTemplate.lit.js.map} +1 -1
- package/dist/generated/templates/{TimeSelectionTemplate.lit.d.ts → ListItemGroupTemplate.lit.d.ts} +2 -2
- package/dist/generated/templates/ListItemGroupTemplate.lit.js +8 -0
- package/dist/generated/templates/ListItemGroupTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ListItemTemplate.lit.js +1 -1
- package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListTemplate.lit.js +1 -1
- package/dist/generated/templates/ListTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MenuListItemTemplate.lit.js +1 -1
- package/dist/generated/templates/MenuListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MenuTemplate.lit.js +6 -6
- package/dist/generated/templates/MenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js +3 -3
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiInputTemplate.lit.js +27 -30
- package/dist/generated/templates/MultiInputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/NavigationMenuTemplate.lit.js +7 -7
- package/dist/generated/templates/NavigationMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/PopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +1 -1
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PopupTemplate.lit.js +1 -1
- package/dist/generated/templates/PopupTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +4 -4
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +2 -2
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/SelectPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectTemplate.lit.js +2 -2
- package/dist/generated/templates/SelectTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SplitButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/SplitButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/StandardListItemTemplate.lit.js +3 -3
- package/dist/generated/templates/StandardListItemTemplate.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/SuggestionListItemTemplate.lit.js +3 -3
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabContainerTemplate.lit.js +2 -2
- package/dist/generated/templates/TabContainerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabInStripTemplate.lit.js +1 -1
- package/dist/generated/templates/TabInStripTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TagTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TagTemplate.lit.js +11 -0
- package/dist/generated/templates/TagTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TimeSelectionClocksTemplate.lit.js +1 -1
- package/dist/generated/templates/TimeSelectionClocksTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TimeSelectionInputsTemplate.lit.js +1 -1
- package/dist/generated/templates/TimeSelectionInputsTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToggleButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/ToggleButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToggleSpinButtonTemplate.lit.js +2 -2
- package/dist/generated/templates/ToggleSpinButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TokenTemplate.lit.js +2 -2
- package/dist/generated/templates/TokenTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +5 -10
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TokenizerTemplate.lit.js +6 -11
- package/dist/generated/templates/TokenizerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TreeItemBaseTemplate.lit.js +1 -1
- package/dist/generated/templates/TreeItemBaseTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TreeItemCustomTemplate.lit.js +1 -1
- package/dist/generated/templates/TreeItemCustomTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TreeItemTemplate.lit.js +1 -1
- package/dist/generated/templates/TreeItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TreeTemplate.lit.js +1 -1
- package/dist/generated/templates/TreeTemplate.lit.js.map +1 -1
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Avatar.css.js.map +1 -1
- package/dist/generated/themes/AvatarGroup.css.js +1 -1
- package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
- package/dist/generated/themes/Bar.css.js +1 -1
- package/dist/generated/themes/Bar.css.js.map +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
- package/dist/generated/themes/BusyIndicator.css.js +1 -1
- package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
- package/dist/generated/themes/Button.css.js +1 -1
- package/dist/generated/themes/Button.css.js.map +1 -1
- package/dist/generated/themes/Calendar.css.js +1 -1
- package/dist/generated/themes/Calendar.css.js.map +1 -1
- package/dist/generated/themes/CalendarHeader.css.js +1 -1
- package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegend.css.js +1 -1
- package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
- package/dist/generated/themes/Card.css.js +1 -1
- package/dist/generated/themes/Card.css.js.map +1 -1
- package/dist/generated/themes/CardHeader.css.js +1 -1
- package/dist/generated/themes/CardHeader.css.js.map +1 -1
- package/dist/generated/themes/Carousel.css.js +1 -1
- package/dist/generated/themes/Carousel.css.js.map +1 -1
- package/dist/generated/themes/CheckBox.css.js +1 -1
- package/dist/generated/themes/CheckBox.css.js.map +1 -1
- package/dist/generated/themes/ColorPalette.css.js +1 -1
- package/dist/generated/themes/ColorPalette.css.js.map +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
- package/dist/generated/themes/ColorPicker.css.js +1 -1
- package/dist/generated/themes/ColorPicker.css.js.map +1 -1
- package/dist/generated/themes/ComboBox.css.js +1 -1
- package/dist/generated/themes/ComboBox.css.js.map +1 -1
- package/dist/generated/themes/CustomListItem.css.js +1 -1
- package/dist/generated/themes/CustomListItem.css.js.map +1 -1
- package/dist/generated/themes/DatePicker.css.js +1 -1
- package/dist/generated/themes/DatePicker.css.js.map +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
- package/dist/generated/themes/DayPicker.css.js +1 -1
- package/dist/generated/themes/DayPicker.css.js.map +1 -1
- package/dist/generated/themes/Dialog.css.js +1 -1
- package/dist/generated/themes/Dialog.css.js.map +1 -1
- package/dist/generated/themes/DropIndicator.css.js +1 -1
- package/dist/generated/themes/DropIndicator.css.js.map +1 -1
- package/dist/generated/themes/FileUploader.css.js +1 -1
- package/dist/generated/themes/FileUploader.css.js.map +1 -1
- package/dist/generated/themes/GrowingButton.css.js +1 -1
- package/dist/generated/themes/GrowingButton.css.js.map +1 -1
- package/dist/generated/themes/Icon.css.js +1 -1
- package/dist/generated/themes/Icon.css.js.map +1 -1
- package/dist/generated/themes/Input.css.js +1 -1
- package/dist/generated/themes/Input.css.js.map +1 -1
- package/dist/generated/themes/InputIcon.css.js +1 -1
- package/dist/generated/themes/InputIcon.css.js.map +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
- package/dist/generated/themes/Link.css.js +1 -1
- package/dist/generated/themes/Link.css.js.map +1 -1
- package/dist/generated/themes/List.css.js +1 -1
- package/dist/generated/themes/List.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/ListItemBase.css.js +1 -1
- package/dist/generated/themes/ListItemBase.css.js.map +1 -1
- package/dist/generated/themes/{TableCell.css.js → ListItemGroup.css.js} +2 -2
- package/dist/generated/themes/{TimeSelection.css.js.map → ListItemGroup.css.js.map} +1 -1
- package/dist/generated/themes/{GroupHeaderListItem.css.js → ListItemGroupHeader.css.js} +2 -2
- package/dist/generated/themes/{GroupHeaderListItem.css.js.map → ListItemGroupHeader.css.js.map} +1 -1
- package/dist/generated/themes/Menu.css.js +1 -1
- package/dist/generated/themes/Menu.css.js.map +1 -1
- package/dist/generated/themes/MenuListItem.css.js +1 -1
- package/dist/generated/themes/MenuListItem.css.js.map +1 -1
- package/dist/generated/themes/MessageStrip.css.js +1 -1
- package/dist/generated/themes/MessageStrip.css.js.map +1 -1
- package/dist/generated/themes/MonthPicker.css.js +1 -1
- package/dist/generated/themes/MonthPicker.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBox.css.js +1 -1
- package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
- package/dist/generated/themes/MultiInput.css.js +1 -1
- package/dist/generated/themes/MultiInput.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenu.css.js +1 -1
- package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
- package/dist/generated/themes/Panel.css.js +1 -1
- package/dist/generated/themes/Panel.css.js.map +1 -1
- package/dist/generated/themes/Popover.css.js +1 -1
- package/dist/generated/themes/Popover.css.js.map +1 -1
- package/dist/generated/themes/PopupBlockLayer.css.js +1 -1
- package/dist/generated/themes/PopupBlockLayer.css.js.map +1 -1
- package/dist/generated/themes/PopupsCommon.css.js +1 -1
- package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
- package/dist/generated/themes/RadioButton.css.js +1 -1
- package/dist/generated/themes/RadioButton.css.js.map +1 -1
- package/dist/generated/themes/RangeSlider.css.js +1 -1
- package/dist/generated/themes/RangeSlider.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/ResponsivePopover.css.js +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButton.css.js +1 -1
- package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js +9 -0
- package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -0
- package/dist/generated/themes/Select.css.js +1 -1
- package/dist/generated/themes/Select.css.js.map +1 -1
- package/dist/generated/themes/SelectMenu.css.js +1 -1
- package/dist/generated/themes/SelectMenu.css.js.map +1 -1
- package/dist/generated/themes/SelectPopover.css.js +1 -1
- package/dist/generated/themes/SelectPopover.css.js.map +1 -1
- package/dist/generated/themes/SliderBase.css.js +1 -1
- package/dist/generated/themes/SliderBase.css.js.map +1 -1
- package/dist/generated/themes/SplitButton.css.js +1 -1
- package/dist/generated/themes/SplitButton.css.js.map +1 -1
- package/dist/generated/themes/StepInput.css.js +1 -1
- package/dist/generated/themes/StepInput.css.js.map +1 -1
- package/dist/generated/themes/Switch.css.js +1 -1
- package/dist/generated/themes/Switch.css.js.map +1 -1
- package/dist/generated/themes/TabContainer.css.js +1 -1
- package/dist/generated/themes/TabContainer.css.js.map +1 -1
- package/dist/generated/themes/TabInOverflow.css.js +1 -1
- package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
- package/dist/generated/themes/TabInStrip.css.js +1 -1
- package/dist/generated/themes/TabInStrip.css.js.map +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
- package/dist/generated/themes/Tag.css.js +9 -0
- package/dist/generated/themes/Tag.css.js.map +1 -0
- package/dist/generated/themes/Text.css.js +1 -1
- package/dist/generated/themes/Text.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/generated/themes/TimePicker.css.js +1 -1
- package/dist/generated/themes/TimePicker.css.js.map +1 -1
- package/dist/generated/themes/Title.css.js +1 -1
- package/dist/generated/themes/Title.css.js.map +1 -1
- package/dist/generated/themes/Toast.css.js +1 -1
- package/dist/generated/themes/Toast.css.js.map +1 -1
- package/dist/generated/themes/ToggleButton.css.js +1 -1
- package/dist/generated/themes/ToggleButton.css.js.map +1 -1
- package/dist/generated/themes/Token.css.js +1 -1
- package/dist/generated/themes/Token.css.js.map +1 -1
- package/dist/generated/themes/Tokenizer.css.js +1 -1
- package/dist/generated/themes/Tokenizer.css.js.map +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
- package/dist/generated/themes/Toolbar.css.js +1 -1
- package/dist/generated/themes/Toolbar.css.js.map +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
- package/dist/generated/themes/TreeItem.css.js +1 -1
- package/dist/generated/themes/TreeItem.css.js.map +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
- package/dist/generated/themes/YearPicker.css.js +1 -1
- package/dist/generated/themes/YearPicker.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
- package/dist/types/HighlightTypes.d.ts +3 -3
- package/dist/types/HighlightTypes.js +3 -3
- package/dist/types/HighlightTypes.js.map +1 -1
- package/dist/types/IconMode.d.ts +28 -0
- package/dist/types/IconMode.js +30 -0
- package/dist/types/IconMode.js.map +1 -0
- package/dist/types/ListAccessibleRole.d.ts +28 -0
- package/dist/types/ListAccessibleRole.js +30 -0
- package/dist/types/ListAccessibleRole.js.map +1 -0
- package/dist/types/ListItemAccessibleRole.d.ts +33 -0
- package/dist/types/ListItemAccessibleRole.js +35 -0
- package/dist/types/ListItemAccessibleRole.js.map +1 -0
- package/dist/types/MessageStripDesign.d.ts +11 -1
- package/dist/types/MessageStripDesign.js +11 -1
- package/dist/types/MessageStripDesign.js.map +1 -1
- package/dist/types/{SegmentedButtonMode.d.ts → SegmentedButtonSelectionMode.d.ts} +5 -5
- package/dist/types/SegmentedButtonSelectionMode.js +19 -0
- package/dist/types/SegmentedButtonSelectionMode.js.map +1 -0
- package/dist/types/{BadgeDesign.d.ts → TagDesign.d.ts} +3 -3
- package/dist/types/{BadgeDesign.js → TagDesign.js} +14 -14
- package/dist/types/TagDesign.js.map +1 -0
- package/dist/types/TagSize.d.ts +17 -0
- package/dist/types/TagSize.js +19 -0
- package/dist/types/TagSize.js.map +1 -0
- package/dist/vscode.html-custom-data.json +343 -500
- package/dist/web-types.json +584 -871
- package/package.json +10 -10
- package/src/AvatarGroup.hbs +1 -1
- package/src/Breadcrumbs.hbs +2 -2
- package/src/Button.hbs +1 -1
- package/src/ColorPalettePopover.hbs +1 -0
- package/src/ComboBox.hbs +1 -1
- package/src/ComboBoxPopover.hbs +2 -1
- package/src/DatePickerInput.hbs +4 -4
- package/src/DatePickerPopover.hbs +4 -1
- package/src/FileUploader.hbs +2 -0
- package/src/Icon.hbs +0 -2
- package/src/Input.hbs +7 -6
- package/src/InputPopover.hbs +31 -11
- package/src/Link.hbs +1 -1
- package/src/List.hbs +1 -2
- package/src/ListItem.hbs +0 -1
- package/src/ListItemGroup.hbs +12 -0
- package/src/Menu.hbs +10 -10
- package/src/MultiComboBox.hbs +3 -3
- package/src/MultiComboBoxPopover.hbs +2 -2
- package/src/MultiInput.hbs +4 -15
- package/src/NavigationMenu.hbs +11 -11
- package/src/Popup.hbs +3 -3
- package/src/PopupBlockLayer.hbs +0 -1
- package/src/ResponsivePopover.hbs +10 -3
- package/src/SegmentedButtonItem.hbs +5 -15
- package/src/Select.hbs +1 -1
- package/src/SelectPopover.hbs +1 -1
- package/src/SplitButton.hbs +1 -3
- package/src/StandardListItem.hbs +2 -2
- package/src/StepInput.hbs +1 -1
- package/src/TabContainer.hbs +2 -2
- package/src/TabInStrip.hbs +1 -1
- package/src/{Badge.hbs → Tag.hbs} +5 -5
- package/src/TimeSelectionClocks.hbs +1 -1
- package/src/TimeSelectionInputs.hbs +1 -1
- package/src/ToggleSpinButton.hbs +0 -1
- package/src/Token.hbs +3 -1
- package/src/Tokenizer.hbs +11 -6
- package/src/TokenizerPopover.hbs +25 -38
- package/src/Tree.hbs +0 -1
- package/src/i18n/messagebundle.properties +20 -14
- package/src/i18n/messagebundle_ar.properties +9 -7
- package/src/i18n/messagebundle_bg.properties +9 -7
- package/src/i18n/messagebundle_ca.properties +9 -7
- package/src/i18n/messagebundle_cnr.properties +9 -7
- package/src/i18n/messagebundle_cs.properties +9 -7
- package/src/i18n/messagebundle_cy.properties +9 -7
- package/src/i18n/messagebundle_da.properties +9 -7
- package/src/i18n/messagebundle_de.properties +9 -7
- package/src/i18n/messagebundle_el.properties +9 -7
- package/src/i18n/messagebundle_en.properties +9 -7
- package/src/i18n/messagebundle_en_GB.properties +9 -7
- package/src/i18n/messagebundle_en_US_sappsd.properties +1 -1
- package/src/i18n/messagebundle_en_US_saprigi.properties +9 -7
- package/src/i18n/messagebundle_en_US_saptrc.properties +1 -1
- package/src/i18n/messagebundle_es.properties +9 -7
- package/src/i18n/messagebundle_es_MX.properties +9 -7
- package/src/i18n/messagebundle_et.properties +9 -7
- package/src/i18n/messagebundle_fi.properties +9 -7
- package/src/i18n/messagebundle_fr.properties +9 -7
- package/src/i18n/messagebundle_fr_CA.properties +9 -7
- package/src/i18n/messagebundle_hi.properties +9 -7
- package/src/i18n/messagebundle_hr.properties +9 -7
- package/src/i18n/messagebundle_hu.properties +9 -7
- package/src/i18n/messagebundle_id.properties +9 -7
- package/src/i18n/messagebundle_in.properties +1 -1
- package/src/i18n/messagebundle_it.properties +9 -7
- package/src/i18n/messagebundle_iw.properties +9 -7
- package/src/i18n/messagebundle_ja.properties +9 -7
- package/src/i18n/messagebundle_kk.properties +9 -7
- package/src/i18n/messagebundle_ko.properties +9 -7
- package/src/i18n/messagebundle_lt.properties +9 -7
- package/src/i18n/messagebundle_lv.properties +9 -7
- package/src/i18n/messagebundle_mk.properties +9 -7
- package/src/i18n/messagebundle_ms.properties +9 -7
- package/src/i18n/messagebundle_nl.properties +9 -7
- package/src/i18n/messagebundle_no.properties +9 -7
- package/src/i18n/messagebundle_pl.properties +9 -7
- package/src/i18n/messagebundle_pt.properties +9 -7
- package/src/i18n/messagebundle_pt_PT.properties +9 -7
- package/src/i18n/messagebundle_ro.properties +9 -7
- package/src/i18n/messagebundle_ru.properties +9 -7
- package/src/i18n/messagebundle_sh.properties +32 -30
- package/src/i18n/messagebundle_sk.properties +9 -7
- package/src/i18n/messagebundle_sl.properties +9 -7
- package/src/i18n/messagebundle_sr.properties +9 -7
- package/src/i18n/messagebundle_sv.properties +9 -7
- package/src/i18n/messagebundle_th.properties +9 -7
- package/src/i18n/messagebundle_tr.properties +9 -7
- package/src/i18n/messagebundle_uk.properties +9 -7
- package/src/i18n/messagebundle_vi.properties +9 -7
- package/src/i18n/messagebundle_zh_CN.properties +9 -7
- package/src/i18n/messagebundle_zh_TW.properties +9 -7
- package/src/themes/Avatar.css +9 -9
- package/src/themes/AvatarGroup.css +18 -3
- package/src/themes/CheckBox.css +12 -12
- package/src/themes/DayPicker.css +3 -6
- package/src/themes/Dialog.css +19 -6
- package/src/themes/DropIndicator.css +16 -0
- package/src/themes/FileUploader.css +3 -3
- package/src/themes/Icon.css +3 -2
- package/src/themes/Input.css +51 -51
- package/src/themes/InputSharedStyles.css +14 -14
- package/src/themes/Link.css +2 -2
- package/src/themes/ListItem.css +6 -6
- package/src/themes/ListItemGroup.css +13 -0
- package/src/themes/{GroupHeaderListItem.css → ListItemGroupHeader.css} +4 -0
- package/src/themes/MessageStrip.css +155 -2
- package/src/themes/MultiComboBox.css +4 -0
- package/src/themes/Popover.css +8 -0
- package/src/themes/PopupBlockLayer.css +3 -12
- package/src/themes/PopupsCommon.css +2 -2
- package/src/themes/ProgressIndicator.css +24 -19
- package/src/themes/RadioButton.css +18 -18
- package/src/themes/ResponsivePopoverCommon.css +17 -17
- package/src/themes/SegmentedButton.css +2 -2
- package/src/themes/SegmentedButtonItem.css +158 -0
- package/src/themes/SplitButton.css +3 -1
- package/src/themes/StepInput.css +20 -20
- package/src/themes/Tag.css +616 -0
- package/src/themes/TextArea.css +41 -41
- package/src/themes/TimePicker.css +1 -1
- package/src/themes/Title.css +10 -3
- package/src/themes/Token.css +10 -15
- package/src/themes/Tokenizer.css +24 -10
- package/src/themes/TokenizerPopover.css +14 -2
- package/src/themes/base/Avatar-parameters.css +2 -0
- package/src/themes/base/DayPicker-parameters.css +3 -3
- package/src/themes/base/Link-parameters.css +1 -2
- package/src/themes/base/MessageStrip-parameters.css +25 -0
- package/src/themes/base/ProgressIndicator-parameters.css +3 -1
- package/src/themes/base/SegmentedButtonItem-parameters.css +1 -0
- package/src/themes/base/Tag-parameters.css +170 -0
- package/src/themes/base/sizes-parameters.css +0 -24
- package/src/themes/sap_fiori_3/MessageStrip-parameters.css +7 -0
- package/src/themes/sap_fiori_3/SegmentedButtonItem-parameters.css +1 -0
- package/src/themes/sap_fiori_3/parameters-bundle.css +4 -8
- package/src/themes/sap_fiori_3_dark/MessageStrip-parameters.css +9 -0
- package/src/themes/sap_fiori_3_dark/SegmentedButtonItem-parameters.css +1 -0
- package/src/themes/sap_fiori_3_dark/Tag-parameters.css +5 -0
- package/src/themes/sap_fiori_3_dark/parameters-bundle.css +4 -8
- package/src/themes/sap_fiori_3_hcb/Link-parameters.css +1 -2
- package/src/themes/sap_fiori_3_hcb/MessageStrip-parameters.css +22 -0
- package/src/themes/sap_fiori_3_hcb/SegmentedButtonItem-parameters.css +1 -0
- package/src/themes/sap_fiori_3_hcb/Tag-parameters.css +46 -0
- package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +3 -7
- package/src/themes/sap_fiori_3_hcw/Link-parameters.css +1 -2
- package/src/themes/sap_fiori_3_hcw/MessageStrip-parameters.css +22 -0
- package/src/themes/sap_fiori_3_hcw/SegmentedButtonItem-parameters.css +1 -0
- package/src/themes/sap_fiori_3_hcw/Tag-parameters.css +46 -0
- package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +3 -7
- package/src/themes/sap_horizon/DayPicker-parameters.css +0 -1
- package/src/themes/sap_horizon/Link-parameters.css +1 -2
- package/src/themes/sap_horizon/ProgressIndicatorLayout-parameters.css +3 -2
- package/src/themes/sap_horizon/SegmentedButtonItem-parameters.css +1 -0
- package/src/themes/sap_horizon/Tag-parameters.css +46 -0
- package/src/themes/sap_horizon/parameters-bundle.css +3 -9
- package/src/themes/sap_horizon_dark/DayPicker-parameters.css +0 -1
- package/src/themes/sap_horizon_dark/Link-parameters.css +1 -2
- package/src/themes/sap_horizon_dark/MessageStrip-parameters.css +5 -0
- package/src/themes/sap_horizon_dark/SegmentedButtonItem-parameters.css +1 -0
- package/src/themes/sap_horizon_dark/Tag-parameters.css +46 -0
- package/src/themes/sap_horizon_dark/parameters-bundle.css +4 -10
- package/src/themes/sap_horizon_dark_exp/DayPicker-parameters.css +0 -1
- package/src/themes/sap_horizon_dark_exp/Link-parameters.css +1 -2
- package/src/themes/sap_horizon_dark_exp/Tag-parameters.css +43 -0
- package/src/themes/sap_horizon_dark_exp/parameters-bundle.css +2 -9
- package/src/themes/sap_horizon_exp/DayPicker-parameters.css +0 -1
- package/src/themes/sap_horizon_exp/Link-parameters.css +1 -2
- package/src/themes/sap_horizon_exp/ProgressIndicatorLayout-parameters.css +3 -2
- package/src/themes/sap_horizon_exp/Tag-parameters.css +43 -0
- package/src/themes/sap_horizon_exp/parameters-bundle.css +2 -9
- package/src/themes/sap_horizon_hcb/DayPicker-parameters.css +0 -1
- package/src/themes/sap_horizon_hcb/Link-parameters.css +1 -2
- package/src/themes/sap_horizon_hcb/MessageStrip-parameters.css +22 -0
- package/src/themes/sap_horizon_hcb/SegmentedButtonItem-parameters.css +1 -0
- package/src/themes/sap_horizon_hcb/Tag-parameters.css +151 -0
- package/src/themes/sap_horizon_hcb/parameters-bundle.css +3 -7
- package/src/themes/sap_horizon_hcb_exp/DayPicker-parameters.css +0 -1
- package/src/themes/sap_horizon_hcb_exp/Link-parameters.css +1 -2
- package/src/themes/sap_horizon_hcb_exp/Tag-parameters.css +43 -0
- package/src/themes/sap_horizon_hcb_exp/parameters-bundle.css +2 -7
- package/src/themes/sap_horizon_hcw/DayPicker-parameters.css +0 -1
- package/src/themes/sap_horizon_hcw/Link-parameters.css +1 -2
- package/src/themes/sap_horizon_hcw/MessageStrip-parameters.css +22 -0
- package/src/themes/sap_horizon_hcw/SegmentedButtonItem-parameters.css +1 -0
- package/src/themes/sap_horizon_hcw/Tag-parameters.css +154 -0
- package/src/themes/sap_horizon_hcw/parameters-bundle.css +3 -7
- package/src/themes/sap_horizon_hcw_exp/DayPicker-parameters.css +0 -1
- package/src/themes/sap_horizon_hcw_exp/Link-parameters.css +1 -2
- package/src/themes/sap_horizon_hcw_exp/Tag-parameters.css +43 -0
- package/src/themes/sap_horizon_hcw_exp/parameters-bundle.css +2 -7
- package/.eslintrc.cjs +0 -3
- package/config/wdio.conf.cjs +0 -15
- package/customI18n.js +0 -50
- package/dist/Badge.js.map +0 -1
- package/dist/GroupHeaderListItem.js.map +0 -1
- package/dist/Table.d.ts +0 -362
- package/dist/Table.js +0 -868
- package/dist/Table.js.map +0 -1
- package/dist/TableCell.d.ts +0 -37
- package/dist/TableCell.js +0 -63
- package/dist/TableCell.js.map +0 -1
- package/dist/TableColumn.d.ts +0 -63
- package/dist/TableColumn.js +0 -59
- package/dist/TableColumn.js.map +0 -1
- package/dist/TableGroupRow.d.ts +0 -44
- package/dist/TableGroupRow.js +0 -102
- package/dist/TableGroupRow.js.map +0 -1
- package/dist/TableRow.d.ts +0 -120
- package/dist/TableRow.js +0 -323
- package/dist/TableRow.js.map +0 -1
- package/dist/TimePickerBase.d.ts +0 -174
- package/dist/TimePickerBase.js +0 -475
- package/dist/TimePickerBase.js.map +0 -1
- package/dist/TimeSelection.d.ts +0 -144
- package/dist/TimeSelection.js +0 -375
- package/dist/TimeSelection.js.map +0 -1
- package/dist/WheelSlider.d.ts +0 -101
- package/dist/WheelSlider.js +0 -338
- package/dist/WheelSlider.js.map +0 -1
- package/dist/css/themes/Badge.css +0 -1
- package/dist/css/themes/Table.css +0 -1
- package/dist/css/themes/TableCell.css +0 -1
- package/dist/css/themes/TableColumn.css +0 -1
- package/dist/css/themes/TableGroupRow.css +0 -1
- package/dist/css/themes/TableRow.css +0 -1
- package/dist/css/themes/TimeSelection.css +0 -1
- package/dist/css/themes/WheelSlider.css +0 -1
- package/dist/css/themes/sap_belize/parameters-bundle.css +0 -1
- package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +0 -1
- package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +0 -1
- package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +0 -1
- package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +0 -1
- package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +0 -1
- package/dist/generated/templates/BadgeTemplate.lit.d.ts +0 -4
- package/dist/generated/templates/BadgeTemplate.lit.js +0 -11
- package/dist/generated/templates/BadgeTemplate.lit.js.map +0 -1
- package/dist/generated/templates/TableCellTemplate.lit.d.ts +0 -4
- package/dist/generated/templates/TableCellTemplate.lit.js +0 -5
- package/dist/generated/templates/TableCellTemplate.lit.js.map +0 -1
- package/dist/generated/templates/TableColumnTemplate.lit.d.ts +0 -4
- package/dist/generated/templates/TableColumnTemplate.lit.js +0 -5
- package/dist/generated/templates/TableColumnTemplate.lit.js.map +0 -1
- package/dist/generated/templates/TableGroupRowTemplate.lit.d.ts +0 -4
- package/dist/generated/templates/TableGroupRowTemplate.lit.js +0 -5
- package/dist/generated/templates/TableGroupRowTemplate.lit.js.map +0 -1
- package/dist/generated/templates/TableRowTemplate.lit.d.ts +0 -4
- package/dist/generated/templates/TableRowTemplate.lit.js +0 -16
- package/dist/generated/templates/TableRowTemplate.lit.js.map +0 -1
- package/dist/generated/templates/TableTemplate.lit.d.ts +0 -4
- package/dist/generated/templates/TableTemplate.lit.js +0 -15
- package/dist/generated/templates/TableTemplate.lit.js.map +0 -1
- package/dist/generated/templates/TimeSelectionTemplate.lit.js +0 -9
- package/dist/generated/templates/TimeSelectionTemplate.lit.js.map +0 -1
- package/dist/generated/templates/WheelSliderTemplate.lit.d.ts +0 -4
- package/dist/generated/templates/WheelSliderTemplate.lit.js +0 -8
- package/dist/generated/templates/WheelSliderTemplate.lit.js.map +0 -1
- package/dist/generated/themes/Badge.css.js +0 -9
- package/dist/generated/themes/Badge.css.js.map +0 -1
- package/dist/generated/themes/Table.css.js +0 -9
- package/dist/generated/themes/Table.css.js.map +0 -1
- package/dist/generated/themes/TableCell.css.js.map +0 -1
- package/dist/generated/themes/TableColumn.css.d.ts +0 -3
- package/dist/generated/themes/TableColumn.css.js +0 -9
- package/dist/generated/themes/TableColumn.css.js.map +0 -1
- package/dist/generated/themes/TableGroupRow.css.d.ts +0 -3
- package/dist/generated/themes/TableGroupRow.css.js +0 -9
- package/dist/generated/themes/TableGroupRow.css.js.map +0 -1
- package/dist/generated/themes/TableRow.css.d.ts +0 -3
- package/dist/generated/themes/TableRow.css.js +0 -9
- package/dist/generated/themes/TableRow.css.js.map +0 -1
- package/dist/generated/themes/TimeSelection.css.d.ts +0 -3
- package/dist/generated/themes/TimeSelection.css.js +0 -9
- package/dist/generated/themes/WheelSlider.css.d.ts +0 -3
- package/dist/generated/themes/WheelSlider.css.js +0 -9
- package/dist/generated/themes/WheelSlider.css.js.map +0 -1
- package/dist/generated/themes/sap_belize/parameters-bundle.css.d.ts +0 -3
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js +0 -4
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js.map +0 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.d.ts +0 -3
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +0 -4
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js.map +0 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.d.ts +0 -3
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +0 -4
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js.map +0 -1
- package/dist/types/BadgeDesign.js.map +0 -1
- package/dist/types/HasPopup.d.ts +0 -32
- package/dist/types/HasPopup.js +0 -34
- package/dist/types/HasPopup.js.map +0 -1
- package/dist/types/SegmentedButtonMode.js +0 -19
- package/dist/types/SegmentedButtonMode.js.map +0 -1
- package/dist/types/TableColumnPopinDisplay.d.ts +0 -17
- package/dist/types/TableColumnPopinDisplay.js +0 -19
- package/dist/types/TableColumnPopinDisplay.js.map +0 -1
- package/dist/types/TableGrowingMode.d.ts +0 -23
- package/dist/types/TableGrowingMode.js +0 -25
- package/dist/types/TableGrowingMode.js.map +0 -1
- package/dist/types/TableMode.d.ts +0 -22
- package/dist/types/TableMode.js +0 -24
- package/dist/types/TableMode.js.map +0 -1
- package/dist/types/TableRowType.d.ts +0 -17
- package/dist/types/TableRowType.js +0 -19
- package/dist/types/TableRowType.js.map +0 -1
- package/src/Table.hbs +0 -121
- package/src/TableCell.hbs +0 -7
- package/src/TableColumn.hbs +0 -7
- package/src/TableGroupRow.hbs +0 -11
- package/src/TableRow.hbs +0 -85
- package/src/TimeSelection.hbs +0 -64
- package/src/WheelSlider.hbs +0 -49
- package/src/themes/Badge.css +0 -594
- package/src/themes/Table.css +0 -106
- package/src/themes/TableCell.css +0 -27
- package/src/themes/TableColumn.css +0 -25
- package/src/themes/TableGroupRow.css +0 -32
- package/src/themes/TableRow.css +0 -130
- package/src/themes/TimeSelection.css +0 -27
- package/src/themes/WheelSlider.css +0 -203
- package/src/themes/base/Badge-parameters.css +0 -160
- package/src/themes/base/Table-parameters.css +0 -10
- package/src/themes/base/TableColumn-parameters.css +0 -3
- package/src/themes/base/TableGroupRow-parameters.css +0 -4
- package/src/themes/base/TableRow-parameters.css +0 -4
- package/src/themes/base/WheelSlider-parameters.css +0 -15
- package/src/themes/sap_belize/BrowserScrollbar-parameters.css +0 -4
- package/src/themes/sap_belize/BusyIndicator-parameters.css +0 -5
- package/src/themes/sap_belize/Button-parameters.css +0 -9
- package/src/themes/sap_belize/Card-parameters.css +0 -5
- package/src/themes/sap_belize/Carousel-parameters.css +0 -9
- package/src/themes/sap_belize/DayPicker-parameters.css +0 -25
- package/src/themes/sap_belize/Dialog-parameters.css +0 -5
- package/src/themes/sap_belize/Input-parameters.css +0 -22
- package/src/themes/sap_belize/InputIcon-parameters.css +0 -5
- package/src/themes/sap_belize/Panel-parameters.css +0 -14
- package/src/themes/sap_belize/PopupsCommon-parameters.css +0 -8
- package/src/themes/sap_belize/ProgressIndicator-parameters.css +0 -8
- package/src/themes/sap_belize/SliderBase-parameters.css +0 -23
- package/src/themes/sap_belize/SplitButton-parameters.css +0 -6
- package/src/themes/sap_belize/TabContainer-parameters.css +0 -10
- package/src/themes/sap_belize/Table-parameters.css +0 -7
- package/src/themes/sap_belize/TableRow-parameters.css +0 -6
- package/src/themes/sap_belize/TextArea-parameters.css +0 -23
- package/src/themes/sap_belize/TimePicker-parameters.css +0 -5
- package/src/themes/sap_belize/ToggleButton-parameters.css +0 -5
- package/src/themes/sap_belize/Token-parameters.css +0 -8
- package/src/themes/sap_belize/Tokenizer-parameters.css +0 -5
- package/src/themes/sap_belize/WheelSlider-parameters.css +0 -17
- package/src/themes/sap_belize/parameters-bundle.css +0 -62
- package/src/themes/sap_belize/sizes-parameters.css +0 -17
- package/src/themes/sap_belize_hcb/Avatar-parameters.css +0 -20
- package/src/themes/sap_belize_hcb/Badge-parameters.css +0 -43
- package/src/themes/sap_belize_hcb/BrowserScrollbar-parameters.css +0 -4
- package/src/themes/sap_belize_hcb/Button-parameters.css +0 -12
- package/src/themes/sap_belize_hcb/CalendarHeader-parameters.css +0 -11
- package/src/themes/sap_belize_hcb/Card-parameters.css +0 -7
- package/src/themes/sap_belize_hcb/Carousel-parameters.css +0 -9
- package/src/themes/sap_belize_hcb/CheckBox-parameters.css +0 -12
- package/src/themes/sap_belize_hcb/DatePicker-parameters.css +0 -6
- package/src/themes/sap_belize_hcb/DayPicker-parameters.css +0 -23
- package/src/themes/sap_belize_hcb/FileUploader-parameters.css +0 -5
- package/src/themes/sap_belize_hcb/GrowingButton-parameters.css +0 -8
- package/src/themes/sap_belize_hcb/Input-parameters.css +0 -37
- package/src/themes/sap_belize_hcb/InputIcon-parameters.css +0 -5
- package/src/themes/sap_belize_hcb/Link-parameters.css +0 -8
- package/src/themes/sap_belize_hcb/MessageStrip-parameters.css +0 -9
- package/src/themes/sap_belize_hcb/MonthPicker-parameters.css +0 -10
- package/src/themes/sap_belize_hcb/Panel-parameters.css +0 -13
- package/src/themes/sap_belize_hcb/PopupsCommon-parameters.css +0 -5
- package/src/themes/sap_belize_hcb/ProgressIndicator-parameters.css +0 -11
- package/src/themes/sap_belize_hcb/RadioButton-parameters.css +0 -14
- package/src/themes/sap_belize_hcb/Select-parameters.css +0 -10
- package/src/themes/sap_belize_hcb/SliderBase-parameters.css +0 -17
- package/src/themes/sap_belize_hcb/SplitButton-parameters.css +0 -13
- package/src/themes/sap_belize_hcb/Switch-parameters.css +0 -16
- package/src/themes/sap_belize_hcb/TabContainer-parameters.css +0 -44
- package/src/themes/sap_belize_hcb/Table-parameters.css +0 -7
- package/src/themes/sap_belize_hcb/TableRow-parameters.css +0 -7
- package/src/themes/sap_belize_hcb/TextArea-parameters.css +0 -39
- package/src/themes/sap_belize_hcb/ToggleButton-parameters.css +0 -7
- package/src/themes/sap_belize_hcb/Token-parameters.css +0 -10
- package/src/themes/sap_belize_hcb/ValueStateMessage-parameters.css +0 -10
- package/src/themes/sap_belize_hcb/WheelSlider-parameters.css +0 -17
- package/src/themes/sap_belize_hcb/YearPicker-parameters.css +0 -10
- package/src/themes/sap_belize_hcb/parameters-bundle.css +0 -60
- package/src/themes/sap_belize_hcb/sizes-parameters.css +0 -15
- package/src/themes/sap_belize_hcw/Avatar-parameters.css +0 -20
- package/src/themes/sap_belize_hcw/Badge-parameters.css +0 -43
- package/src/themes/sap_belize_hcw/BrowserScrollbar-parameters.css +0 -4
- package/src/themes/sap_belize_hcw/Button-parameters.css +0 -12
- package/src/themes/sap_belize_hcw/CalendarHeader-parameters.css +0 -11
- package/src/themes/sap_belize_hcw/Card-parameters.css +0 -7
- package/src/themes/sap_belize_hcw/Carousel-parameters.css +0 -9
- package/src/themes/sap_belize_hcw/CheckBox-parameters.css +0 -12
- package/src/themes/sap_belize_hcw/DatePicker-parameters.css +0 -5
- package/src/themes/sap_belize_hcw/DayPicker-parameters.css +0 -24
- package/src/themes/sap_belize_hcw/FileUploader-parameters.css +0 -5
- package/src/themes/sap_belize_hcw/GrowingButton-parameters.css +0 -8
- package/src/themes/sap_belize_hcw/Input-parameters.css +0 -37
- package/src/themes/sap_belize_hcw/InputIcon-parameters.css +0 -5
- package/src/themes/sap_belize_hcw/Link-parameters.css +0 -8
- package/src/themes/sap_belize_hcw/MessageStrip-parameters.css +0 -9
- package/src/themes/sap_belize_hcw/MonthPicker-parameters.css +0 -10
- package/src/themes/sap_belize_hcw/Panel-parameters.css +0 -13
- package/src/themes/sap_belize_hcw/PopupsCommon-parameters.css +0 -5
- package/src/themes/sap_belize_hcw/ProgressIndicator-parameters.css +0 -11
- package/src/themes/sap_belize_hcw/RadioButton-parameters.css +0 -14
- package/src/themes/sap_belize_hcw/Select-parameters.css +0 -10
- package/src/themes/sap_belize_hcw/SliderBase-parameters.css +0 -17
- package/src/themes/sap_belize_hcw/SplitButton-parameters.css +0 -13
- package/src/themes/sap_belize_hcw/Switch-parameters.css +0 -16
- package/src/themes/sap_belize_hcw/TabContainer-parameters.css +0 -44
- package/src/themes/sap_belize_hcw/Table-parameters.css +0 -7
- package/src/themes/sap_belize_hcw/TableRow-parameters.css +0 -7
- package/src/themes/sap_belize_hcw/TextArea-parameters.css +0 -39
- package/src/themes/sap_belize_hcw/ToggleButton-parameters.css +0 -6
- package/src/themes/sap_belize_hcw/Token-parameters.css +0 -10
- package/src/themes/sap_belize_hcw/ValueStateMessage-parameters.css +0 -10
- package/src/themes/sap_belize_hcw/WheelSlider-parameters.css +0 -17
- package/src/themes/sap_belize_hcw/YearPicker-parameters.css +0 -10
- package/src/themes/sap_belize_hcw/parameters-bundle.css +0 -60
- package/src/themes/sap_belize_hcw/sizes-parameters.css +0 -15
- package/src/themes/sap_fiori_3/WheelSlider-parameters.css +0 -16
- package/src/themes/sap_fiori_3_dark/Badge-parameters.css +0 -5
- package/src/themes/sap_fiori_3_dark/WheelSlider-parameters.css +0 -15
- package/src/themes/sap_fiori_3_hcb/Badge-parameters.css +0 -46
- package/src/themes/sap_fiori_3_hcb/Table-parameters.css +0 -5
- package/src/themes/sap_fiori_3_hcb/TableRow-parameters.css +0 -5
- package/src/themes/sap_fiori_3_hcb/WheelSlider-parameters.css +0 -17
- package/src/themes/sap_fiori_3_hcw/Badge-parameters.css +0 -46
- package/src/themes/sap_fiori_3_hcw/Table-parameters.css +0 -5
- package/src/themes/sap_fiori_3_hcw/TableRow-parameters.css +0 -5
- package/src/themes/sap_fiori_3_hcw/WheelSlider-parameters.css +0 -17
- package/src/themes/sap_horizon/Badge-parameters.css +0 -46
- package/src/themes/sap_horizon/Table-parameters.css +0 -9
- package/src/themes/sap_horizon/TableColumn-parameters.css +0 -5
- package/src/themes/sap_horizon/TableGroupRow-parameters.css +0 -7
- package/src/themes/sap_horizon/TableRow-parameters.css +0 -5
- package/src/themes/sap_horizon/WheelSlider-parameters.css +0 -19
- package/src/themes/sap_horizon_dark/Badge-parameters.css +0 -46
- package/src/themes/sap_horizon_dark/Table-parameters.css +0 -9
- package/src/themes/sap_horizon_dark/TableColumn-parameters.css +0 -5
- package/src/themes/sap_horizon_dark/TableGroupRow-parameters.css +0 -7
- package/src/themes/sap_horizon_dark/TableRow-parameters.css +0 -5
- package/src/themes/sap_horizon_dark/WheelSlider-parameters.css +0 -19
- package/src/themes/sap_horizon_dark_exp/Badge-parameters.css +0 -43
- package/src/themes/sap_horizon_dark_exp/Table-parameters.css +0 -8
- package/src/themes/sap_horizon_dark_exp/TableColumn-parameters.css +0 -5
- package/src/themes/sap_horizon_dark_exp/TableGroupRow-parameters.css +0 -7
- package/src/themes/sap_horizon_dark_exp/TableRow-parameters.css +0 -5
- package/src/themes/sap_horizon_dark_exp/WheelSlider-parameters.css +0 -19
- package/src/themes/sap_horizon_exp/Badge-parameters.css +0 -43
- package/src/themes/sap_horizon_exp/Table-parameters.css +0 -8
- package/src/themes/sap_horizon_exp/TableColumn-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/TableGroupRow-parameters.css +0 -7
- package/src/themes/sap_horizon_exp/TableRow-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/WheelSlider-parameters.css +0 -19
- package/src/themes/sap_horizon_hcb/Badge-parameters.css +0 -151
- package/src/themes/sap_horizon_hcb/Table-parameters.css +0 -10
- package/src/themes/sap_horizon_hcb/TableGroupRow-parameters.css +0 -7
- package/src/themes/sap_horizon_hcb/TableRow-parameters.css +0 -5
- package/src/themes/sap_horizon_hcb/WheelSlider-parameters.css +0 -17
- package/src/themes/sap_horizon_hcb_exp/Badge-parameters.css +0 -43
- package/src/themes/sap_horizon_hcb_exp/Table-parameters.css +0 -9
- package/src/themes/sap_horizon_hcb_exp/TableGroupRow-parameters.css +0 -7
- package/src/themes/sap_horizon_hcb_exp/TableRow-parameters.css +0 -5
- package/src/themes/sap_horizon_hcb_exp/WheelSlider-parameters.css +0 -17
- package/src/themes/sap_horizon_hcw/Badge-parameters.css +0 -154
- package/src/themes/sap_horizon_hcw/Table-parameters.css +0 -10
- package/src/themes/sap_horizon_hcw/TableGroupRow-parameters.css +0 -7
- package/src/themes/sap_horizon_hcw/TableRow-parameters.css +0 -5
- package/src/themes/sap_horizon_hcw/WheelSlider-parameters.css +0 -17
- package/src/themes/sap_horizon_hcw_exp/Badge-parameters.css +0 -43
- package/src/themes/sap_horizon_hcw_exp/Table-parameters.css +0 -9
- package/src/themes/sap_horizon_hcw_exp/TableGroupRow-parameters.css +0 -7
- package/src/themes/sap_horizon_hcw_exp/TableRow-parameters.css +0 -5
- package/src/themes/sap_horizon_hcw_exp/WheelSlider-parameters.css +0 -17
- /package/dist/generated/themes/{Badge.css.d.ts → ListItemGroup.css.d.ts} +0 -0
- /package/dist/generated/themes/{GroupHeaderListItem.css.d.ts → ListItemGroupHeader.css.d.ts} +0 -0
- /package/dist/generated/themes/{Table.css.d.ts → SegmentedButtonItem.css.d.ts} +0 -0
- /package/dist/generated/themes/{TableCell.css.d.ts → Tag.css.d.ts} +0 -0
- /package/src/{GroupHeaderListItem.hbs → ListItemGroupHeader.hbs} +0 -0
- /package/src/themes/base/{GroupHeaderListItem-parameters.css → ListItemGroupHeader-parameters.css} +0 -0
package/dist/Tokenizer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tokenizer.js","sourceRoot":"","sources":["../src/Tokenizer.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport ScrollEnablement from \"@ui5/webcomponents-base/dist/delegate/ScrollEnablement.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tisSpace,\n\tisSpaceCtrl,\n\tisSpaceShift,\n\tisLeftCtrl,\n\tisRightCtrl,\n\tisUpCtrl,\n\tisDownCtrl,\n\tisUpShift,\n\tisDownShift,\n\tisLeftShift,\n\tisRightShift,\n\tisLeftShiftCtrl,\n\tisRightShiftCtrl,\n\tisEnd,\n\tisHome,\n\tisHomeShift,\n\tisEndShift,\n\tisHomeCtrl,\n\tisEndCtrl,\n\tisRight,\n\tisLeft,\n\tisUp,\n\tisDown,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport List from \"./List.js\";\nimport Title from \"./Title.js\";\nimport Button from \"./Button.js\";\nimport StandardListItem from \"./StandardListItem.js\";\nimport type Token from \"./Token.js\";\nimport type { IToken } from \"./MultiInput.js\";\nimport type { TokenDeleteEventDetail } from \"./Token.js\";\nimport TokenizerTemplate from \"./generated/templates/TokenizerTemplate.lit.js\";\nimport {\n\tMULTIINPUT_SHOW_MORE_TOKENS,\n\tTOKENIZER_ARIA_LABEL,\n\tTOKENIZER_POPOVER_REMOVE,\n\tTOKENIZER_ARIA_CONTAIN_TOKEN,\n\tTOKENIZER_ARIA_CONTAIN_ONE_TOKEN,\n\tTOKENIZER_ARIA_CONTAIN_SEVERAL_TOKENS,\n\tTOKENIZER_SHOW_ALL_ITEMS,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport TokenizerCss from \"./generated/themes/Tokenizer.css.js\";\nimport TokenizerPopoverCss from \"./generated/themes/TokenizerPopover.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\n\n// reuse suggestions focus styling for NMore popup\nimport SuggestionsCss from \"./generated/themes/Suggestions.css.js\";\n\ntype TokenizerTokenDeleteEventDetail = {\n\tref: Token;\n}\n\nenum ClipboardDataOperation {\n\tcut = \"cut\",\n\tcopy = \"copy\",\n}\n/**\n * @class\n *\n * ### Overview\n *\n * A container for tokens.\n * @constructor\n * @extends UI5Element\n * @private\n */\n@customElement({\n\ttag: \"ui5-tokenizer\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: TokenizerTemplate,\n\tstyles: [\n\t\tTokenizerCss,\n\t\tResponsivePopoverCommonCss,\n\t\tValueStateMessageCss,\n\t\tSuggestionsCss,\n\t\tTokenizerPopoverCss,\n\t],\n\tdependencies: [\n\t\tResponsivePopover,\n\t\tList,\n\t\tStandardListItem,\n\t\tTitle,\n\t\tButton,\n\t],\n})\n\n@event(\"token-delete\", {\n\tdetail: {\n\t\tref: { type: HTMLElement },\n\t},\n})\n\n@event(\"show-more-items-press\", {\n\tdetail: {\n\t\tref: { type: HTMLElement },\n\t},\n})\n\n@event(\"before-more-popover-open\")\nclass Tokenizer extends UI5Element {\n\t@property({ type: Boolean })\n\tshowMore!: boolean;\n\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Prevent opening of n-more Popover when label is clicked\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tpreventPopoverOpen!: boolean;\n\n\t/**\n\t * Indicates if the tokenizer should show all tokens or n more label instead\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\texpanded!: boolean;\n\n\t@property({ type: Object })\n\tmorePopoverOpener!: Tokenizer;\n\n\t@property({ validator: Integer })\n\tpopoverMinWidth?: number;\n\n\t/**\n\t * Indicates the value state of the related input component.\n\t * @default \"None\"\n\t * @private\n\t */\n\t@property({ type: ValueState, defaultValue: ValueState.None })\n\tvalueState!: `${ValueState}`;\n\n\t@property({ validator: Integer })\n\t_nMoreCount!: number;\n\n\t@property({ validator: Integer })\n\t_tokensCount!: number;\n\n\t@slot({ type: HTMLElement, \"default\": true, individualSlots: true })\n\ttokens!: Array<Token>;\n\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\tstatic i18nBundle: I18nBundle;\n\t_resizeHandler: ResizeObserverCallback;\n\t_itemNav: ItemNavigation;\n\t_scrollEnablement: ScrollEnablement;\n\t_expandedScrollWidth?: number;\n\t_isOpen: boolean;\n\n\t_handleResize() {\n\t\tthis._nMoreCount = this.overflownTokens.length;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._resizeHandler = this._handleResize.bind(this);\n\n\t\tthis._itemNav = new ItemNavigation(this, {\n\t\t\tcurrentIndex: -1,\n\t\t\tgetItemsCallback: this._getVisibleTokens.bind(this),\n\t\t});\n\n\t\tthis._scrollEnablement = new ScrollEnablement(this);\n\t\tthis._isOpen = false;\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._tokensCount = this._getTokens().length;\n\n\t\tthis._tokens.forEach(token => {\n\t\t\ttoken.singleToken = this._tokens.length === 1;\n\t\t});\n\n\t\tif (!this._tokens.length) {\n\t\t\tthis.closeMorePopover();\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this.contentDom, this._resizeHandler);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this.contentDom, this._resizeHandler);\n\t}\n\n\tasync _openMorePopoverAndFireEvent() {\n\t\tif (!this.preventPopoverOpen) {\n\t\t\tawait this.openMorePopover();\n\t\t}\n\n\t\tthis.fireEvent(\"show-more-items-press\");\n\t}\n\n\tasync openMorePopover() {\n\t\t(await this.getPopover()).showAt(this.morePopoverOpener || this);\n\t\tthis._isOpen = true;\n\t}\n\n\t_getTokens() {\n\t\treturn this.getSlottedNodes<Token>(\"tokens\");\n\t}\n\n\tget _tokens() {\n\t\treturn this.getSlottedNodes<Token>(\"tokens\");\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tif ((e.target as HTMLElement).hasAttribute(\"ui5-token\")) {\n\t\t\tconst target = e.target as Token;\n\t\t\tif (!target.toBeDeleted) {\n\t\t\t\tthis._itemNav.setCurrentItem(target);\n\t\t\t}\n\t\t}\n\t}\n\n\tonTokenSelect() {\n\t\tconst tokens = this._getTokens();\n\n\t\tif (tokens.length === 1 && tokens[0].isTruncatable) {\n\t\t\tif (tokens[0].selected) {\n\t\t\t\tthis.openMorePopover();\n\t\t\t} else {\n\t\t\t\tthis.closeMorePopover();\n\t\t\t}\n\t\t}\n\t}\n\n\t_getVisibleTokens() {\n\t\tif (this.disabled) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn this._tokens.filter((token, index) => {\n\t\t\treturn index < (this._tokens.length - this._nMoreCount);\n\t\t});\n\t}\n\n\tasync onAfterRendering() {\n\t\tthis._nMoreCount = this.overflownTokens.length;\n\n\t\tif (!this._getTokens().length) {\n\t\t\tconst popover = await this.getPopover();\n\t\t\tpopover.close();\n\t\t}\n\n\t\tthis._scrollEnablement.scrollContainer = (this.expanded || !this.narrowContentDom) ? this.expandedContentDom! : this.narrowContentDom;\n\n\t\tif (this.expanded) {\n\t\t\tthis._expandedScrollWidth = this.expandedContentDom!.scrollWidth;\n\t\t\tthis.scrollToEnd();\n\t\t}\n\n\t\tif (!this.expanded) {\n\t\t\tthis.scrollToStart();\n\t\t}\n\t}\n\n\t_delete(e: CustomEvent<TokenDeleteEventDetail>) {\n\t\tconst target = e.target as Token;\n\t\tif (!e.detail) { // if there are no details, the event is triggered by a click\n\t\t\tthis._tokenClickDelete(e, target);\n\n\t\t\tif (this._getTokens().length) {\n\t\t\t\tthis.closeMorePopover();\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._selectedTokens.length) {\n\t\t\tthis._selectedTokens.forEach(token => this.deleteToken(token, e.detail.backSpace));\n\t\t} else {\n\t\t\tthis.deleteToken(target, e.detail.backSpace);\n\t\t}\n\t}\n\n\t_tokenClickDelete(e: CustomEvent<TokenDeleteEventDetail>, token: Token) {\n\t\tconst tokens = this._getVisibleTokens();\n\t\tconst target = e.target as Token;\n\t\tconst deletedTokenIndex = token ? tokens.indexOf(token) : tokens.indexOf(target); // The index of the token that just got deleted\n\t\tconst nextTokenIndex = deletedTokenIndex === tokens.length - 1 ? deletedTokenIndex - 1 : deletedTokenIndex + 1; // The index of the next token that needs to be focused next due to the deletion\n\t\tconst nextToken = tokens[nextTokenIndex]; // if the last item was deleted this will be undefined\n\n\t\tthis._handleCurrentItemAfterDeletion(nextToken);\n\n\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token || target });\n\t}\n\n\t_handleCurrentItemAfterDeletion(nextToken: Token) {\n\t\tif (nextToken && !isPhone()) {\n\t\t\tthis._itemNav.setCurrentItem(nextToken); // update the item navigation with the new token or undefined, if the last was deleted\n\n\t\t\tsetTimeout(() => {\n\t\t\t\tnextToken.focus();\n\t\t\t}, 0);\n\t\t}\n\t}\n\n\t/**\n\t * Removes a token from the Tokenizer.\n\t * This method should only be used by ui5-multi-combobox and ui5-multi-input\n\t * @protected\n\t * @param token Token to be focused.\n\t * @param forwardFocusToPrevious Indicates whether the focus will be forwarded to previous or next token after deletion.\n\t */\n\tdeleteToken(token: Token, forwardFocusToPrevious?: boolean) {\n\t\tconst tokens = this._getVisibleTokens();\n\t\tconst deletedTokenIndex = tokens.indexOf(token);\n\t\tlet nextTokenIndex = (deletedTokenIndex === tokens.length - 1) ? deletedTokenIndex - 1 : deletedTokenIndex + 1;\n\t\tconst notSelectedTokens = tokens.filter(t => !t.selected);\n\n\t\tif (forwardFocusToPrevious) { // on backspace key select the previous item (unless deleting the first)\n\t\t\tnextTokenIndex = deletedTokenIndex === 0 ? deletedTokenIndex + 1 : deletedTokenIndex - 1;\n\t\t} else { // on delete key or mouse click on the \"x\" select the next item (unless deleting the last)\n\t\t\tnextTokenIndex = deletedTokenIndex === tokens.length - 1 ? deletedTokenIndex - 1 : deletedTokenIndex + 1;\n\t\t}\n\n\t\tlet nextToken = tokens[nextTokenIndex];\n\n\t\tif (notSelectedTokens.length > 1) {\n\t\t\twhile (nextToken && nextToken.selected) {\n\t\t\t\tnextToken = forwardFocusToPrevious ? tokens[--nextTokenIndex] : tokens[++nextTokenIndex];\n\t\t\t}\n\t\t} else {\n\t\t\tnextToken = notSelectedTokens[0];\n\t\t}\n\n\t\tthis._handleCurrentItemAfterDeletion(nextToken);\n\n\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\t}\n\n\tasync itemDelete(e: CustomEvent) {\n\t\tconst token = e.detail.item.tokenRef;\n\n\t\t// delay the token deletion in order to close the popover before removing token of the DOM\n\t\tif (this._getTokens().length === 1 && this._getTokens()[0].isTruncatable) {\n\t\t\tconst morePopover = await this.getPopover();\n\n\t\t\tmorePopover.addEventListener(\"ui5-after-close\", () => {\n\t\t\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\t\t\t}, {\n\t\t\t\tonce: true,\n\t\t\t});\n\n\t\t\tmorePopover.close();\n\t\t} else {\n\t\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\t\t}\n\t}\n\n\thandleBeforeClose() {\n\t\tif (isPhone()) {\n\t\t\tthis._getTokens().forEach(token => {\n\t\t\t\ttoken.selected = false;\n\t\t\t});\n\t\t}\n\t}\n\n\thandleBeforeOpen() {\n\t\tthis.fireEvent(\"before-more-popover-open\");\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpaceShift(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isSpace(e) || isSpaceCtrl(e)) {\n\t\t\te.preventDefault();\n\n\t\t\treturn this._handleTokenSelection(e, false);\n\t\t}\n\n\t\tif (isHomeShift(e)) {\n\t\t\tthis._handleHomeShift(e);\n\t\t}\n\n\t\tif (isEndShift(e)) {\n\t\t\tthis._handleEndShift(e);\n\t\t}\n\n\t\tthis._handleItemNavigation(e, this._tokens);\n\t}\n\n\t_handleItemNavigation(e: KeyboardEvent, tokens: Array<Token>) {\n\t\tconst isCtrl = !!(e.metaKey || e.ctrlKey);\n\n\t\tconst target = e.target as Token;\n\n\t\tif (isLeftCtrl(e) || isRightCtrl(e) || isDownCtrl(e) || isUpCtrl(e)) {\n\t\t\treturn this._handleArrowCtrl(e, target, tokens, isRightCtrl(e) || isDownCtrl(e));\n\t\t}\n\n\t\tif (isLeftShift(e) || isRightShift(e) || isUpShift(e) || isDownShift(e) || isLeftShiftCtrl(e) || isRightShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\treturn this._handleArrowShift(target, tokens, (isRightShift(e) || isRightShiftCtrl(e) || isDownShift(e)));\n\t\t}\n\n\t\tif (isHome(e) || isEnd(e) || isHomeCtrl(e) || isEndCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\treturn this._handleHome(tokens, isEnd(e) || isEndCtrl(e));\n\t\t}\n\n\t\tif (isCtrl && e.key.toLowerCase() === \"a\") {\n\t\t\te.preventDefault();\n\n\t\t\treturn this._toggleTokenSelection(tokens);\n\t\t}\n\n\t\tif (isLeft(e) || isRight(e) || isUp(e) || isDown(e)) {\n\t\t\tconst nextTokenIdx = this._calcNextTokenIndex(this._tokens.find(token => token.focused)!, tokens, (isRight(e) || isDown(e)));\n\t\t\tthis._scrollToToken(tokens[nextTokenIdx]);\n\t\t}\n\t}\n\n\t_handleHome(tokens: Array<Token>, endKeyPressed: boolean) {\n\t\tif (!tokens || !tokens.length) {\n\t\t\treturn -1;\n\t\t}\n\n\t\tconst index = endKeyPressed ? tokens.length - 1 : 0;\n\n\t\ttokens[index].focus();\n\t\tthis._itemNav.setCurrentItem(tokens[index]);\n\t}\n\n\t_handleHomeShift(e: KeyboardEvent) {\n\t\tconst tokens = this.tokens;\n\t\tconst target = e.target as Token;\n\t\tconst currentTokenIdx = tokens.indexOf(target);\n\n\t\ttokens.filter((token, index) => index <= currentTokenIdx).forEach(token => {\n\t\t\ttoken.selected = true;\n\t\t});\n\n\t\ttokens[0].focus();\n\t\tthis._itemNav.setCurrentItem(tokens[0]);\n\t}\n\n\t_handleEndShift(e: KeyboardEvent) {\n\t\tconst tokens = this.tokens;\n\t\tconst target = e.target as Token;\n\t\tconst currentTokenIdx = tokens.indexOf(target);\n\n\t\ttokens.filter((token, index) => index >= currentTokenIdx).forEach(token => {\n\t\t\ttoken.selected = true;\n\t\t});\n\n\t\ttokens[tokens.length - 1].focus();\n\t\tthis._itemNav.setCurrentItem(tokens[tokens.length - 1]);\n\t}\n\n\t_calcNextTokenIndex(focusedToken: IToken, tokens: Array<IToken>, backwards: boolean) {\n\t\tif (!tokens.length) {\n\t\t\treturn -1;\n\t\t}\n\t\tconst focusedTokenIndex = tokens.indexOf(focusedToken);\n\t\tlet nextIndex = backwards ? (focusedTokenIndex + 1) : (focusedTokenIndex - 1);\n\n\t\tif (nextIndex >= tokens.length) {\n\t\t\tnextIndex = tokens.length - 1;\n\t\t}\n\t\tif (nextIndex < 0) {\n\t\t\tnextIndex = 0;\n\t\t}\n\n\t\treturn nextIndex;\n\t}\n\n\t_handleArrowCtrl(e: KeyboardEvent, focusedToken: IToken, tokens: Array<IToken>, backwards: boolean) {\n\t\tconst nextIndex = this._calcNextTokenIndex(focusedToken, tokens, backwards);\n\n\t\te.preventDefault();\n\n\t\tif (nextIndex === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetTimeout(() => {\n\t\t\ttokens[nextIndex].focus();\n\t\t}, 0);\n\n\t\tthis._scrollToToken(tokens[nextIndex]);\n\t\tthis._itemNav.setCurrentItem(tokens[nextIndex]);\n\t}\n\n\t_handleArrowShift(focusedToken: Token, tokens: Array<Token>, backwards: boolean) {\n\t\tconst focusedTokenIndex = tokens.indexOf(focusedToken);\n\t\tconst nextIndex = backwards ? (focusedTokenIndex + 1) : (focusedTokenIndex - 1);\n\n\t\tif (nextIndex === -1 || nextIndex === tokens.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tfocusedToken.selected = true;\n\t\ttokens[nextIndex].selected = true;\n\t\tsetTimeout(() => {\n\t\t\ttokens[nextIndex].focus();\n\t\t}, 0);\n\n\t\tthis._scrollToToken(tokens[nextIndex]);\n\t\tthis._itemNav.setCurrentItem(tokens[nextIndex]);\n\t}\n\n\t_click(e: MouseEvent) {\n\t\tthis._handleTokenSelection(e);\n\t}\n\n\t_toggleTokenSelection(tokens: Array<Token>) {\n\t\tif (!tokens || !tokens.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tokensAreSelected = tokens.every(token => token.selected);\n\t\ttokens.forEach(token => { token.selected = !tokensAreSelected; });\n\t}\n\n\t_handleTokenSelection(e: KeyboardEvent | MouseEvent, deselectAll = true) {\n\t\tconst target = e.target as Token;\n\t\tif (target.hasAttribute(\"ui5-token\")) {\n\t\t\tconst deselectTokens = deselectAll ? this._tokens : [];\n\n\t\t\tdeselectTokens.forEach(token => {\n\t\t\t\tif (token !== target) {\n\t\t\t\t\ttoken.selected = false;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t_fillClipboard(shortcutName: ClipboardDataOperation, tokens: Array<IToken>) {\n\t\tconst tokensTexts = tokens.filter(token => token.selected).map(token => token.text).join(\"\\r\\n\");\n\n\t\t/* fill clipboard with tokens' texts so parent can handle creation */\n\t\tconst cutToClipboard = (e: ClipboardEvent) => {\n\t\t\tif (e.clipboardData) {\n\t\t\t\te.clipboardData.setData(\"text/plain\", tokensTexts);\n\t\t\t}\n\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tdocument.addEventListener(shortcutName, cutToClipboard);\n\t\tdocument.execCommand(shortcutName);\n\t\tdocument.removeEventListener(shortcutName, cutToClipboard);\n\t}\n\n\t/**\n\t * Scrolls the container of the tokens to its beginning.\n\t * This method is used by MultiInput and MultiComboBox.\n\t * @private\n\t */\n\tscrollToStart() {\n\t\tif (this._scrollEnablement.scrollContainer) {\n\t\t\tthis._scrollEnablement.scrollTo(0, 0);\n\t\t}\n\t}\n\n\t/**\n\t * Scrolls the container of the tokens to its end when expanded.\n\t * This method is used by MultiInput and MultiComboBox.\n\t * @private\n\t */\n\tscrollToEnd() {\n\t\tconst expandedTokenizerScrollWidth = this.expandedContentDom && (this.effectiveDir !== \"rtl\" ? this.expandedContentDom.scrollWidth : -this.expandedContentDom.scrollWidth);\n\t\tif (this._scrollEnablement.scrollContainer) {\n\t\t\tthis._scrollEnablement.scrollTo(expandedTokenizerScrollWidth!, 0, 5, 10);\n\t\t}\n\t}\n\n\t/**\n\t * Scrolls token to the visible area of the container.\n\t * Adds 4 pixels to the scroll position to ensure padding and border visibility on both ends\n\t * @private\n\t */\n\t_scrollToToken(token: IToken) {\n\t\tif (!this.expandedContentDom) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tokenRect = token.getBoundingClientRect();\n\t\tconst tokenContainerRect = this.expandedContentDom.getBoundingClientRect();\n\n\t\tif (tokenRect.left < tokenContainerRect.left) {\n\t\t\tthis._scrollEnablement.scrollTo(this.expandedContentDom.scrollLeft - (tokenContainerRect.left - tokenRect.left + 5), 0);\n\t\t} else if (tokenRect.right > tokenContainerRect.right) {\n\t\t\tthis._scrollEnablement.scrollTo(this.expandedContentDom.scrollLeft + (tokenRect.right - tokenContainerRect.right + 5), 0);\n\t\t}\n\t}\n\n\tasync closeMorePopover() {\n\t\t(await this.getPopover()).close(false, false, true);\n\t\tthis._isOpen = false;\n\t}\n\n\tget _nMoreText() {\n\t\tif (!this._nMoreCount) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._getVisibleTokens().length) {\n\t\t\treturn Tokenizer.i18nBundle.getText(MULTIINPUT_SHOW_MORE_TOKENS, this._nMoreCount);\n\t\t}\n\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_SHOW_ALL_ITEMS, this._nMoreCount);\n\t}\n\n\tget showNMore() {\n\t\treturn !this.expanded && this.showMore && !!this.overflownTokens.length;\n\t}\n\n\tget contentDom() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-tokenizer--content\")!;\n\t}\n\n\tget expandedContentDom() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-tokenizer-expanded--content\");\n\t}\n\n\tget narrowContentDom() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-tokenizer-nmore--content\");\n\t}\n\n\tget tokenizerLabel() {\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_LABEL);\n\t}\n\n\tget morePopoverTitle() {\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_POPOVER_REMOVE);\n\t}\n\n\tget overflownTokens() {\n\t\tif (!this.contentDom) {\n\t\t\treturn [];\n\t\t}\n\n\t\t// Reset the overflow prop of the tokens first in order\n\t\t// to use their dimensions for calculation because already\n\t\t// hidden tokens are set to 'display: none'\n\t\tthis._getTokens().forEach(token => {\n\t\t\ttoken.overflows = false;\n\t\t});\n\n\t\treturn this._getTokens().filter(token => {\n\t\t\tconst parentRect = this.contentDom.getBoundingClientRect();\n\t\t\tconst tokenRect = token.getBoundingClientRect();\n\t\t\tconst tokenEnd = Number(tokenRect.right.toFixed(2));\n\t\t\tconst parentEnd = Number(parentRect.right.toFixed(2));\n\t\t\tconst tokenStart = Number(tokenRect.left.toFixed(2));\n\t\t\tconst parentStart = Number(parentRect.left.toFixed(2));\n\n\t\t\ttoken.overflows = !this.expanded && ((tokenStart < parentStart) || (tokenEnd > parentEnd));\n\n\t\t\treturn token.overflows;\n\t\t});\n\t}\n\n\tget noValueStatePopover() {\n\t\treturn this.valueState === ValueState.None || this.valueState === ValueState.Success;\n\t}\n\n\tget valueStateMessageText() {\n\t\treturn this.getSlottedNodes(\"valueStateMessage\").map(el => el.cloneNode(true));\n\t}\n\n\t/**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\t get _valueStateMessageIcon() {\n\t\tconst iconPerValueState = {\n\t\t\tError: \"error\",\n\t\t\tWarning: \"alert\",\n\t\t\tSuccess: \"sys-enter-2\",\n\t\t\tInformation: \"information\",\n\t\t};\n\n\t\treturn this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : \"\";\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget _selectedTokens() {\n\t\treturn this._getTokens().filter(token => token.selected);\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn {\n\t\t\twrapper: {\n\t\t\t\t\"ui5-tokenizer-root\": true,\n\t\t\t\t\"ui5-tokenizer-nmore--wrapper\": this.showMore,\n\t\t\t\t\"ui5-tokenizer-no-padding\": !this._getTokens().length,\n\t\t\t},\n\t\t\tcontent: {\n\t\t\t\t\"ui5-tokenizer--content\": true,\n\t\t\t\t\"ui5-tokenizer-expanded--content\": !this.showNMore,\n\t\t\t\t\"ui5-tokenizer-nmore--content\": this.showNMore,\n\t\t\t},\n\t\t\tpopover: {\n\t\t\t\t\"ui5-popover-with-value-state-header-phone\": this._isPhone && !this.noValueStatePopover,\n\t\t\t\t\"ui5-popover-with-value-state-header\": !this._isPhone && !this.noValueStatePopover,\n\t\t\t},\n\t\t\tpopoverValueState: {\n\t\t\t\t\"ui5-valuestatemessage-root\": true,\n\t\t\t\t\"ui5-valuestatemessage-header\": true,\n\t\t\t\t\"ui5-valuestatemessage--success\": this.valueState === ValueState.Success,\n\t\t\t\t\"ui5-valuestatemessage--error\": this.valueState === ValueState.Error,\n\t\t\t\t\"ui5-valuestatemessage--warning\": this.valueState === ValueState.Warning,\n\t\t\t\t\"ui5-valuestatemessage--information\": this.valueState === ValueState.Information,\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tpopover: {\n\t\t\t\t\"min-width\": this.popoverMinWidth ? `${this.popoverMinWidth}px` : \"\",\n\t\t\t},\n\t\t\tpopoverValueStateMessage: {\n\t\t\t\t\"width\": this.popoverMinWidth && !isPhone() ? `${this.popoverMinWidth}px` : \"100%\",\n\t\t\t\t\"min-height\": \"2rem\",\n\t\t\t},\n\t\t\tpopoverHeader: {\n\t\t\t\t\"min-height\": \"2rem\",\n\t\t\t},\n\t\t\tpopoverHeaderTitle: {\n\t\t\t\t\"justify-content\": \"left\",\n\t\t\t},\n\t\t};\n\t}\n\n\t_tokensCountText() {\n\t\tconst iTokenCount = this._getTokens().length;\n\n\t\tif (iTokenCount === 0) {\n\t\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_CONTAIN_TOKEN);\n\t\t}\n\n\t\tif (iTokenCount === 1) {\n\t\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_CONTAIN_ONE_TOKEN);\n\t\t}\n\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_CONTAIN_SEVERAL_TOKENS, iTokenCount);\n\t}\n\n\t/**\n\t * @protected\n\t */\n\t_focusLastToken() {\n\t\tif (this.tokens.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst lastToken = this.tokens[this.tokens.length - 1];\n\t\tlastToken.focus();\n\t\tthis._itemNav.setCurrentItem(lastToken);\n\t}\n\n\tstatic async onDefine() {\n\t\tTokenizer.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tasync getPopover() {\n\t\tawait renderFinished();\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n}\n\nTokenizer.define();\n\nexport default Tokenizer;\nexport { ClipboardDataOperation };\nexport type { TokenizerTokenDeleteEventDetail };\n"]}
|
|
1
|
+
{"version":3,"file":"Tokenizer.js","sourceRoot":"","sources":["../src/Tokenizer.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport DOMReference from \"@ui5/webcomponents-base/dist/types/DOMReference.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport getActiveElement from \"@ui5/webcomponents-base/dist/util/getActiveElement.js\";\nimport { getFocusedElement } from \"@ui5/webcomponents-base/dist/util/PopupUtils.js\";\nimport ScrollEnablement from \"@ui5/webcomponents-base/dist/delegate/ScrollEnablement.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle, I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tisSpace,\n\tisSpaceCtrl,\n\tisSpaceShift,\n\tisLeftCtrl,\n\tisRightCtrl,\n\tisUpCtrl,\n\tisDownCtrl,\n\tisUpShift,\n\tisDownShift,\n\tisLeftShift,\n\tisRightShift,\n\tisLeftShiftCtrl,\n\tisRightShiftCtrl,\n\tisDeleteShift,\n\tisInsertCtrl,\n\tisEnd,\n\tisHome,\n\tisHomeShift,\n\tisEndShift,\n\tisPageUpShift,\n\tisPageDownShift,\n\tisHomeCtrl,\n\tisEndCtrl,\n\tisRight,\n\tisLeft,\n\tisUp,\n\tisDown,\n\tisEscape,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport List from \"./List.js\";\nimport ListSelectionMode from \"./types/ListSelectionMode.js\";\nimport Title from \"./Title.js\";\nimport Button from \"./Button.js\";\nimport StandardListItem from \"./StandardListItem.js\";\nimport Token from \"./Token.js\";\nimport type { IToken } from \"./MultiInput.js\";\nimport type { TokenDeleteEventDetail } from \"./Token.js\";\nimport TokenizerTemplate from \"./generated/templates/TokenizerTemplate.lit.js\";\nimport {\n\tMULTIINPUT_SHOW_MORE_TOKENS,\n\tTOKENIZER_ARIA_LABEL,\n\tTOKENIZER_POPOVER_REMOVE,\n\tTOKENIZER_ARIA_CONTAIN_TOKEN,\n\tTOKENIZER_ARIA_CONTAIN_ONE_TOKEN,\n\tTOKENIZER_ARIA_CONTAIN_SEVERAL_TOKENS,\n\tTOKENIZER_SHOW_ALL_ITEMS,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport TokenizerCss from \"./generated/themes/Tokenizer.css.js\";\nimport TokenizerPopoverCss from \"./generated/themes/TokenizerPopover.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\n\n// reuse suggestions focus styling for NMore popup\nimport SuggestionsCss from \"./generated/themes/Suggestions.css.js\";\nimport ListItem from \"./ListItem.js\";\n\ntype TokenCountMapType = { [x: number]: I18nText };\n\ntype TokenizerTokenDeleteEventDetail = {\n\tref: Token;\n}\n\ntype TokenizerSelectionChangeEventDetail = {\n\tselectedTokens: Token[];\n}\n\ntype TokenizerDialogButtonPressDetail = {\n\tconfirm: boolean;\n}\n\nenum ClipboardDataOperation {\n\tcut = \"cut\",\n\tcopy = \"copy\",\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * A `ui5-tokenizer` is an invisible container for `ui5-token`s that supports keyboard navigation and token selection.\n *\n * The `ui5-tokenizer` consists of two parts:\n * - Tokens - displays the available tokens.\n * - N-more indicator - contains the number of the remaining tokens that cannot be displayed due to the limited space.\n *\n * ### Keyboard Handling\n *\n * #### Basic Navigation\n * The `ui5-tokenizer` provides advanced keyboard handling.\n * When a token is focused the user can use the following keyboard\n * shortcuts in order to perform a navigation:\n *\n * - [Left] or [Right] / [Up] or [Down] - Navigates left and right through the tokens.\n * - [Home] - Navigates to the first token.\n * - [End] - Navigates to the last token.\n *\n * The user can use the following keyboard shortcuts to perform actions (such as select, delete):\n *\n * - [Space] - Selects a token.\n * - [Backspace] / [Delete] - Deletes a token.\n * **Note:** The deletion of a token is handled by the application with the use of the `token-delete` event.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Tokenizer.js\";`\n *\n * @constructor\n * @extends sap.ui.webc.base.UI5Element\n * @since 2.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-tokenizer\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: TokenizerTemplate,\n\tstyles: [\n\t\tTokenizerCss,\n\t\tResponsivePopoverCommonCss,\n\t\tSuggestionsCss,\n\t\tTokenizerPopoverCss,\n\t],\n\tdependencies: [\n\t\tResponsivePopover,\n\t\tList,\n\t\tStandardListItem,\n\t\tTitle,\n\t\tButton,\n\t],\n})\n\n/**\n * Fired when a token is deleted (delete icon, delete or backspace is pressed)\n *\n * @param {HTMLElement} ref DOM ref of the token to be deleted.\n * @public\n */\n@event<TokenizerTokenDeleteEventDetail>(\"token-delete\", {\n\tdetail: {\n\t\tref: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired when token selection is changed by user interaction\n *\n * @param {Array<Token>} selectedTokens An array of the selected items.\n * @public\n */\n@event<TokenizerSelectionChangeEventDetail>(\"selection-change\", {\n\tdetail: {\n\t\tselectedTokens: { type: Array },\n\t},\n})\n\n/**\n * Fired when a dialog button is pressed.\n *\n * @param {Boolean} confirm Indicates if the action is confirm.\n * @public\n */\n@event<TokenizerDialogButtonPressDetail>(\"dialog-button-press\", {\n\tdetail: {\n\t\tconfirm: { type: Boolean },\n\t},\n})\n\n/**\n * Fired when nMore link is pressed.\n * @public\n */\n@event(\"show-more-items-press\")\n\n/**\n * Fired before nMore Popover is opened.\n * @private\n */\n@event(\"before-more-popover-open\")\n\nclass Tokenizer extends UI5Element {\n\t/**\n\t * Defines whether the component is read-only.\n\t *\n\t * **Note:** A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly!: boolean;\n\n\t/**\n\t * Defines whether the component is disabled.\n\t *\n\t * **Note:** A disabled component is completely noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ defaultValue: undefined })\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ defaultValue: undefined })\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Indicates if the tokenizer should show all tokens or n more label instead\n\t * **Note:** Used inside MultiInput and MultiComboBox components.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\texpanded!: boolean;\n\n\t/**\n\t * Indicates if the nMore popover is open\n\t * **Note:** Used inside MultiInput and MultiComboBox components.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\topen!: boolean;\n\n\t/**\n\t * Defines the ID or DOM Reference of the element that the menu is shown at\n\t * **Note:** Used inside MultiInput and MultiComboBox components.\n\t * @private\n\t * @default \"\"\n\t */\n\t@property({ validator: DOMReference, defaultValue: \"\" })\n\topener!: HTMLElement;\n\n\t/**\n\t * Sets the min-width of the nMore Popover.\n\t * **Note:** Used inside MultiInput and MultiComboBox components.\n\t * @private\n\t */\n\t@property({ validator: Integer })\n\tpopoverMinWidth?: number;\n\n\t/**\n\t * Prevents tokens to be part of the tab chain.\n\t * **Note:** Used inside MultiInput and MultiComboBox components.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tpreventInitialFocus!: boolean;\n\n\t/**\n\t * Prevent opening of n-more Popover when label is clicked\n\t * **Note:** Used inside MultiComboBox component.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tpreventPopoverOpen!: boolean;\n\n\t/**\n\t * Hides the popover arrow.\n\t * **Note:** Used inside MultiInput and MultiComboBox components.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\thidePopoverArrow!: boolean;\n\n\t@property({ validator: Integer })\n\t_nMoreCount!: number;\n\n\t@property({ validator: Integer })\n\t_tokensCount!: number;\n\n\t@slot({ type: HTMLElement, \"default\": true, individualSlots: true })\n\ttokens!: Array<Token>;\n\n\tstatic i18nBundle: I18nBundle;\n\t_resizeHandler: ResizeObserverCallback;\n\t_itemNav: ItemNavigation;\n\t_scrollEnablement: ScrollEnablement;\n\t_expandedScrollWidth?: number;\n\t_tokenDeleting!: boolean;\n\t_preventCollapse!: boolean;\n\t_skipTabIndex!: boolean;\n\t_previousToken!: Token | null;\n\t_focusedElementBeforeOpen?: HTMLElement | null;\n\n\t_handleResize() {\n\t\tthis._nMoreCount = this.overflownTokens.length;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._resizeHandler = this._handleResize.bind(this);\n\n\t\tthis._itemNav = new ItemNavigation(this, {\n\t\t\tcurrentIndex: -1,\n\t\t\tgetItemsCallback: this._getVisibleTokens.bind(this),\n\t\t});\n\n\t\tthis._scrollEnablement = new ScrollEnablement(this);\n\t\tthis._tokenDeleting = false;\n\t}\n\n\tonBeforeRendering() {\n\t\tconst tokensLength = this._tokens.length;\n\t\tthis._tokensCount = tokensLength;\n\n\t\tthis._tokens.forEach(token => {\n\t\t\ttoken.singleToken = tokensLength === 1;\n\t\t\ttoken.readonly = this.readonly;\n\t\t});\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this.contentDom, this._resizeHandler);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this.contentDom, this._resizeHandler);\n\t}\n\n\t_handleNMoreClick() {\n\t\tif (this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.expanded = true;\n\n\t\tif (!this.preventPopoverOpen) {\n\t\t\tthis.open = true;\n\t\t\tthis.scrollToEnd();\n\t\t}\n\n\t\tthis._tokens.forEach(token => {\n\t\t\ttoken.forcedTabIndex = \"-1\";\n\t\t});\n\n\t\tthis._skipTabIndex = true;\n\n\t\tthis.fireEvent(\"show-more-items-press\");\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tif ((e.target as HTMLElement).hasAttribute(\"ui5-token\")) {\n\t\t\tconst target = e.target as Token;\n\t\t\tthis.expanded = true;\n\n\t\t\tif (this.open) {\n\t\t\t\tthis._preventCollapse = true;\n\t\t\t}\n\n\t\t\tif (!target.toBeDeleted) {\n\t\t\t\tthis._itemNav.setCurrentItem(target);\n\t\t\t\tthis._scrollToToken(target);\n\t\t\t}\n\t\t}\n\t}\n\n\tonTokenSelect() {\n\t\tconst tokens = this._tokens;\n\t\tconst firstToken = tokens[0];\n\n\t\tif (tokens.length === 1 && firstToken.isTruncatable) {\n\t\t\tthis.open = firstToken.selected;\n\t\t}\n\t}\n\n\t_getVisibleTokens() {\n\t\tif (this.disabled) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn this._tokens.filter((token, index) => {\n\t\t\treturn index < (this._tokens.length - this._nMoreCount);\n\t\t});\n\t}\n\n\tonAfterRendering() {\n\t\tconst tokensArray = this._tokens;\n\t\tconst firstToken = tokensArray[0];\n\n\t\tthis._nMoreCount = this.overflownTokens.length;\n\n\t\tif (firstToken && !this.disabled && !this.preventInitialFocus && !this._skipTabIndex) {\n\t\t\tfirstToken.forcedTabIndex = \"0\";\n\t\t}\n\n\t\tthis._scrollEnablement.scrollContainer = this.contentDom;\n\n\t\tif (this.expanded) {\n\t\t\tthis._expandedScrollWidth = this.contentDom.scrollWidth;\n\t\t}\n\n\t\tthis._tokenDeleting = false;\n\t}\n\n\t_delete(e: CustomEvent<TokenDeleteEventDetail>) {\n\t\tconst target = e.target as Token;\n\n\t\tif (!e.detail) { // if there are no details, the event is triggered by a click\n\t\t\tthis._tokenClickDelete(e, target);\n\t\t\tthis.open = !this._tokens.length;\n\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._selectedTokens.length) {\n\t\t\tthis._selectedTokens.forEach(token => this.deleteToken(token, e.detail.backSpace));\n\t\t} else {\n\t\t\tthis.deleteToken(target, e.detail.backSpace);\n\t\t}\n\t}\n\n\t_tokenClickDelete(e: CustomEvent<TokenDeleteEventDetail>, token: Token) {\n\t\tconst tokens = this._getVisibleTokens();\n\t\tconst target = e.target as Token;\n\t\tconst deletedTokenIndex = token ? tokens.indexOf(token) : tokens.indexOf(target); // The index of the token that just got deleted\n\t\tconst nextTokenIndex = deletedTokenIndex === tokens.length - 1 ? deletedTokenIndex - 1 : deletedTokenIndex + 1; // The index of the next token that needs to be focused next due to the deletion\n\t\tconst nextToken = tokens[nextTokenIndex]; // if the last item was deleted this will be undefined\n\n\t\tthis._handleCurrentItemAfterDeletion(nextToken);\n\n\t\tthis._tokenDeleting = true;\n\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token || target });\n\t}\n\n\t_handleCurrentItemAfterDeletion(nextToken: Token) {\n\t\tif (nextToken && !isPhone()) {\n\t\t\tsetTimeout(() => {\n\t\t\t\tnextToken.focus();\n\t\t\t}, 0);\n\t\t}\n\t}\n\n\t/**\n\t * Removes a token from the Tokenizer.\n\t * This method should only be used by ui5-multi-combobox and ui5-multi-input\n\t * @protected\n\t * @param token Token to be focused.\n\t * @param forwardFocusToPrevious Indicates whether the focus will be forwarded to previous or next token after deletion.\n\t */\n\tdeleteToken(token: Token, forwardFocusToPrevious?: boolean) {\n\t\tconst tokens = this._getVisibleTokens();\n\t\tconst deletedTokenIndex = tokens.indexOf(token);\n\t\tlet nextTokenIndex = (deletedTokenIndex === tokens.length - 1) ? deletedTokenIndex - 1 : deletedTokenIndex + 1;\n\t\tconst notSelectedTokens = tokens.filter(t => !t.selected);\n\n\t\tif (forwardFocusToPrevious) { // on backspace key select the previous item (unless deleting the first)\n\t\t\tnextTokenIndex = deletedTokenIndex === 0 ? deletedTokenIndex + 1 : deletedTokenIndex - 1;\n\t\t} else { // on delete key or mouse click on the \"x\" select the next item (unless deleting the last)\n\t\t\tnextTokenIndex = deletedTokenIndex === tokens.length - 1 ? deletedTokenIndex - 1 : deletedTokenIndex + 1;\n\t\t}\n\n\t\tlet nextToken = tokens[nextTokenIndex];\n\n\t\tif (notSelectedTokens.length > 1) {\n\t\t\twhile (nextToken && nextToken.selected) {\n\t\t\t\tnextToken = forwardFocusToPrevious ? tokens[--nextTokenIndex] : tokens[++nextTokenIndex];\n\t\t\t}\n\t\t} else {\n\t\t\tnextToken = notSelectedTokens[0];\n\t\t}\n\n\t\tthis._handleCurrentItemAfterDeletion(nextToken);\n\n\t\tthis._tokenDeleting = true;\n\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\t}\n\n\titemDelete(e: CustomEvent) {\n\t\tconst token = e.detail.item.tokenRef;\n\t\tconst tokensArray = this._tokens;\n\n\t\t// delay the token deletion in order to close the popover before removing token of the DOM\n\t\tif (tokensArray.length === 1) {\n\t\t\tif (tokensArray[0].isTruncatable) {\n\t\t\t\tconst morePopover = this.getPopover();\n\n\t\t\t\tmorePopover.addEventListener(\"ui5-after-close\", () => {\n\t\t\t\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\t\t\t\t}, {\n\t\t\t\t\tonce: true,\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\t\t\tthis.open = false;\n\t\t} else {\n\t\t\tthis.fireEvent<TokenizerTokenDeleteEventDetail>(\"token-delete\", { ref: token });\n\n\t\t\tconst currentListItem = e.detail.item as ListItem;\n\t\t\tconst nextListItem = currentListItem.nextElementSibling;\n\t\t\tconst preciousListItem = currentListItem.previousElementSibling;\n\n\t\t\tif (nextListItem) {\n\t\t\t\tconst nextListItemIcon = nextListItem.shadowRoot!.querySelector<HTMLElement>(\"[part=delete-button]\")!;\n\t\t\t\tnextListItemIcon.focus();\n\t\t\t} else if (preciousListItem) {\n\t\t\t\tconst previousListItemIcon = preciousListItem.shadowRoot!.querySelector<HTMLElement>(\"[part=delete-button]\")!;\n\t\t\t\tpreviousListItemIcon.focus();\n\t\t\t}\n\t\t}\n\t}\n\n\thandleBeforeClose() {\n\t\tconst tokensArray = this._tokens;\n\n\t\tif (isPhone()) {\n\t\t\ttokensArray.forEach(token => {\n\t\t\t\ttoken.selected = false;\n\t\t\t});\n\t\t}\n\n\t\tif (!this._tokenDeleting && !this._preventCollapse) {\n\t\t\tthis._preventCollapse = false;\n\t\t\tthis.expanded = false;\n\t\t}\n\t}\n\n\thandleBeforeOpen() {\n\t\tthis.fireEvent(\"before-more-popover-open\");\n\t}\n\n\thandleAfterClose() {\n\t\tthis.open = false;\n\t\tthis._preventCollapse = false;\n\t\tthis._focusedElementBeforeOpen = null;\n\t}\n\n\thandleDialogButtonPress(e: MouseEvent) {\n\t\tconst isOkButton = (e.target as HTMLElement).hasAttribute(\"data-ui5-tokenizer-dialog-ok-button\");\n\t\tconst confirm = !!isOkButton;\n\n\t\tthis.fireEvent(\"dialog-button-press\", { confirm });\n\t\tthis.open = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tconst isCtrl = !!(e.metaKey || e.ctrlKey);\n\n\t\tif ((isCtrl && [\"c\", \"x\"].includes(e.key.toLowerCase())) || isDeleteShift(e) || isInsertCtrl(e)) {\n\t\t\te.preventDefault();\n\n\t\t\tconst isCut = e.key.toLowerCase() === \"x\" || isDeleteShift(e);\n\t\t\tconst selectedTokens = this._tokens.filter(token => token.selected);\n\n\t\t\tif (isCut) {\n\t\t\t\tconst cutResult = this._fillClipboard(ClipboardDataOperation.cut, selectedTokens);\n\n\t\t\t\tselectedTokens.forEach(token => this.deleteToken(token));\n\n\t\t\t\treturn cutResult;\n\t\t\t}\n\n\t\t\treturn this._fillClipboard(ClipboardDataOperation.copy, selectedTokens);\n\t\t}\n\n\t\tif (isCtrl && e.key.toLowerCase() === \"i\" && this._tokens.length > 0) {\n\t\t\te.preventDefault();\n\n\t\t\tthis._preventCollapse = true;\n\t\t\tthis._focusedElementBeforeOpen = getFocusedElement();\n\n\t\t\tthis.open = true;\n\t\t}\n\n\t\tif (isSpaceShift(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isSpace(e) || isSpaceCtrl(e)) {\n\t\t\te.preventDefault();\n\n\t\t\treturn this._handleTokenSelection(e, false);\n\t\t}\n\n\t\tif (isHomeShift(e) || isPageUpShift(e)) {\n\t\t\tthis._handleHomeShift(e);\n\t\t}\n\n\t\tif (isEndShift(e) || isPageDownShift(e)) {\n\t\t\tthis._handleEndShift(e);\n\t\t}\n\n\t\tthis._handleItemNavigation(e, this._tokens);\n\t}\n\n\t_onPopoverListKeydown(e: KeyboardEvent) {\n\t\tconst isCtrl = !!(e.metaKey || e.ctrlKey);\n\n\t\tif ((isCtrl && e.key.toLowerCase() === \"i\") || isEscape(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.open = false;\n\n\t\t\tthis._preventCollapse = true;\n\t\t\tthis._focusedElementBeforeOpen && this._focusedElementBeforeOpen.focus();\n\n\t\t\tif (!this._focusedElementBeforeOpen) {\n\t\t\t\tthis._focusLastToken();\n\t\t\t}\n\t\t}\n\n\t\tif (e.key.toLowerCase() === \"f7\") {\n\t\t\te.preventDefault();\n\n\t\t\tconst eventTarget = e.target as ListItem;\n\t\t\tconst activeElement = getActiveElement();\n\n\t\t\tif (activeElement?.part.value === \"native-li\") {\n\t\t\t\teventTarget.shadowRoot!.querySelector<HTMLElement>(\"[part=delete-button]\")!.focus();\n\t\t\t} else {\n\t\t\t\teventTarget.focus();\n\t\t\t}\n\t\t}\n\t}\n\n\t_handleItemNavigation(e: KeyboardEvent, tokens: Array<Token>) {\n\t\tconst isCtrl = !!(e.metaKey || e.ctrlKey);\n\t\tconst target = e.target as Token;\n\n\t\tif (isLeftCtrl(e) || isRightCtrl(e) || isDownCtrl(e) || isUpCtrl(e)) {\n\t\t\treturn this._handleArrowCtrl(e, target, tokens, isRightCtrl(e) || isDownCtrl(e));\n\t\t}\n\n\t\tif (isLeftShift(e) || isRightShift(e) || isUpShift(e) || isDownShift(e) || isLeftShiftCtrl(e) || isRightShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\treturn this._handleArrowShift(target, tokens, (isRightShift(e) || isRightShiftCtrl(e) || isDownShift(e)));\n\t\t}\n\n\t\tif (isHome(e) || isEnd(e) || isHomeCtrl(e) || isEndCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\treturn this._handleHome(tokens, isEnd(e) || isEndCtrl(e));\n\t\t}\n\n\t\tif (isCtrl && e.key.toLowerCase() === \"a\") {\n\t\t\te.preventDefault();\n\n\t\t\treturn this._toggleTokenSelection(tokens);\n\t\t}\n\n\t\tif (isLeft(e) || isRight(e) || isUp(e) || isDown(e)) {\n\t\t\te.preventDefault();\n\t\t\tconst nextTokenIdx = this._calcNextTokenIndex(this._tokens.find(token => token.focused)!, tokens, (isRight(e) || isDown(e)));\n\t\t\tthis._scrollToToken(tokens[nextTokenIdx]);\n\t\t}\n\t}\n\n\t_handleHome(tokens: Array<Token>, endKeyPressed: boolean) {\n\t\tif (!tokens || !tokens.length) {\n\t\t\treturn -1;\n\t\t}\n\n\t\tconst index = endKeyPressed ? tokens.length - 1 : 0;\n\n\t\ttokens[index].focus();\n\t}\n\n\t_handleHomeShift(e: KeyboardEvent) {\n\t\tconst tokens = this._tokens;\n\t\tconst target = e.target as Token;\n\t\tconst currentTokenIdx = tokens.indexOf(target);\n\t\tconst previousSelectedTokens = [...this._selectedTokens];\n\n\t\ttokens.filter((token, index) => index <= currentTokenIdx).forEach(token => {\n\t\t\ttoken.selected = true;\n\t\t});\n\n\t\tconst selectedTokensChanged = JSON.stringify(previousSelectedTokens) !== JSON.stringify(this._selectedTokens);\n\n\t\tif (selectedTokensChanged) {\n\t\t\tthis.fireEvent<TokenizerSelectionChangeEventDetail>(\"selection-change\", {\n\t\t\t\tselectedTokens: this._selectedTokens,\n\t\t\t});\n\t\t}\n\n\t\ttokens[0].focus();\n\t}\n\n\t_handleEndShift(e: KeyboardEvent) {\n\t\tconst tokens = this._tokens;\n\t\tconst target = e.target as Token;\n\t\tconst currentTokenIdx = tokens.indexOf(target);\n\t\tconst previousSelectedTokens = [...this._selectedTokens];\n\n\t\ttokens.filter((token, index) => index >= currentTokenIdx).forEach(token => {\n\t\t\ttoken.selected = true;\n\t\t});\n\n\t\tconst selectedTokensChanged = JSON.stringify(previousSelectedTokens) !== JSON.stringify(this._selectedTokens);\n\n\t\tif (selectedTokensChanged) {\n\t\t\tthis.fireEvent<TokenizerSelectionChangeEventDetail>(\"selection-change\", {\n\t\t\t\tselectedTokens: this._selectedTokens,\n\t\t\t});\n\t\t}\n\n\t\ttokens[tokens.length - 1].focus();\n\t}\n\n\t_calcNextTokenIndex(focusedToken: IToken, tokens: Array<IToken>, backwards: boolean) {\n\t\tif (!tokens.length) {\n\t\t\treturn -1;\n\t\t}\n\n\t\tconst focusedTokenIndex = tokens.indexOf(focusedToken);\n\t\tlet nextIndex = backwards ? (focusedTokenIndex + 1) : (focusedTokenIndex - 1);\n\n\t\tif (nextIndex >= tokens.length) {\n\t\t\tnextIndex = tokens.length - 1;\n\t\t}\n\n\t\tif (nextIndex < 0) {\n\t\t\tnextIndex = 0;\n\t\t}\n\n\t\treturn nextIndex;\n\t}\n\n\t_handleArrowCtrl(e: KeyboardEvent, focusedToken: IToken, tokens: Array<IToken>, backwards: boolean) {\n\t\tconst nextIndex = this._calcNextTokenIndex(focusedToken, tokens, backwards);\n\n\t\te.preventDefault();\n\n\t\tif (nextIndex === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetTimeout(() => {\n\t\t\ttokens[nextIndex].focus();\n\t\t}, 0);\n\n\t\tthis._scrollToToken(tokens[nextIndex]);\n\t}\n\n\t_handleArrowShift(focusedToken: Token, tokens: Array<Token>, backwards: boolean) {\n\t\tconst focusedTokenIndex = tokens.indexOf(focusedToken);\n\t\tconst nextIndex = backwards ? (focusedTokenIndex + 1) : (focusedTokenIndex - 1);\n\t\tconst previousSelectedTokens = [...this._selectedTokens];\n\n\t\tif (nextIndex === -1 || nextIndex === tokens.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tfocusedToken.selected = true;\n\t\ttokens[nextIndex].selected = true;\n\n\t\tconst selectedTokensChanged = JSON.stringify(previousSelectedTokens) !== JSON.stringify(this._selectedTokens);\n\n\t\tif (selectedTokensChanged) {\n\t\t\tthis.fireEvent<TokenizerSelectionChangeEventDetail>(\"selection-change\", {\n\t\t\t\tselectedTokens: this._selectedTokens,\n\t\t\t});\n\t\t}\n\n\t\ttokens[nextIndex].focus();\n\n\t\tthis._scrollToToken(tokens[nextIndex]);\n\t}\n\n\t_click(e: MouseEvent) {\n\t\tif (e.metaKey || e.ctrlKey) {\n\t\t\tthis.fireEvent<TokenizerSelectionChangeEventDetail>(\"selection-change\", {\n\t\t\t\tselectedTokens: this._selectedTokens,\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\n\t\tconst targetToken = e.target as Token;\n\n\t\tif (!e.shiftKey) {\n\t\t\tthis._previousToken = targetToken;\n\t\t}\n\n\t\tlet focusedToken = targetToken;\n\n\t\tif (this._previousToken) {\n\t\t\tfocusedToken = this._previousToken;\n\t\t} else {\n\t\t\tthis._previousToken = focusedToken;\n\t\t}\n\n\t\tif (e.shiftKey) {\n\t\t\tconst tokensArray = this._tokens;\n\t\t\tconst lastClickedIndex = tokensArray.indexOf(targetToken);\n\t\t\tconst firstSelectedTokenIndex = tokensArray.indexOf(focusedToken);\n\t\t\tconst start = Math.min(lastClickedIndex, firstSelectedTokenIndex);\n\t\t\tconst end = Math.max(lastClickedIndex, firstSelectedTokenIndex);\n\n\t\t\tif (lastClickedIndex !== -1) {\n\t\t\t\ttokensArray.forEach((token, i) => {\n\t\t\t\t\ttoken.selected = i >= start && i <= end;\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tthis.fireEvent<TokenizerSelectionChangeEventDetail>(\"selection-change\", {\n\t\t\t\tselectedTokens: this._selectedTokens,\n\t\t\t});\n\n\t\t\treturn;\n\t\t}\n\n\t\tthis._handleTokenSelection(e);\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tconst target = e.target as Token;\n\t\tthis.open = false;\n\t\tthis._itemNav.setCurrentItem(target);\n\n\t\tif (!this.expanded) {\n\t\t\tthis.expanded = true;\n\t\t}\n\t}\n\n\t_onfocusout(e: FocusEvent) {\n\t\tconst relatedTarget = e.relatedTarget as HTMLElement;\n\n\t\tthis._tokens.forEach(token => {\n\t\t\ttoken.forcedTabIndex = \"-1\";\n\t\t});\n\n\t\tthis._itemNav._currentIndex = -1;\n\t\tthis._skipTabIndex = true;\n\n\t\tif (!this.contains(relatedTarget)) {\n\t\t\tthis._tokens[0].forcedTabIndex = \"0\";\n\t\t\tthis._skipTabIndex = false;\n\t\t}\n\n\t\tif (!this._tokenDeleting && !this._preventCollapse) {\n\t\t\tthis._preventCollapse = false;\n\t\t\tthis.expanded = false;\n\t\t}\n\t}\n\n\t_toggleTokenSelection(tokens: Array<Token>) {\n\t\tif (!tokens || !tokens.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tokensAreSelected = tokens.every(token => token.selected);\n\t\ttokens.forEach(token => { token.selected = !tokensAreSelected; });\n\n\t\tthis.fireEvent<TokenizerSelectionChangeEventDetail>(\"selection-change\", {\n\t\t\tselectedTokens: this._selectedTokens,\n\t\t});\n\t}\n\n\t_handleTokenSelection(e: KeyboardEvent | MouseEvent, deselectAll = true) {\n\t\tconst target = e.target as Token;\n\n\t\tif (target.hasAttribute(\"ui5-token\")) {\n\t\t\tconst deselectTokens = deselectAll ? this._tokens : [];\n\n\t\t\tdeselectTokens.forEach(token => {\n\t\t\t\tif (token !== target) {\n\t\t\t\t\ttoken.selected = false;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tthis.fireEvent<TokenizerSelectionChangeEventDetail>(\"selection-change\", {\n\t\t\t\tselectedTokens: this._selectedTokens,\n\t\t\t});\n\t\t}\n\t}\n\n\t_fillClipboard(shortcutName: ClipboardDataOperation, tokens: Array<IToken>) {\n\t\tconst tokensTexts = tokens.filter(token => token.selected).map(token => token.text).join(\"\\r\\n\");\n\n\t\tconst cutToClipboard = (e: ClipboardEvent) => {\n\t\t\tif (e.clipboardData) {\n\t\t\t\te.clipboardData.setData(\"text/plain\", tokensTexts);\n\t\t\t}\n\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tdocument.addEventListener(shortcutName, cutToClipboard);\n\t\tdocument.execCommand(shortcutName);\n\t\tdocument.removeEventListener(shortcutName, cutToClipboard);\n\t}\n\n\t/**\n\t * Scrolls the container of the tokens to its beginning.\n\t * This method is used by MultiInput and MultiComboBox.\n\t * @protected\n\t */\n\tscrollToStart() {\n\t\tif (this._scrollEnablement.scrollContainer) {\n\t\t\tthis._scrollEnablement.scrollTo(0, 0);\n\t\t}\n\t}\n\n\t/**\n\t * Scrolls the container of the tokens to its end when expanded.\n\t * This method is used by MultiInput and MultiComboBox.\n\t * @protected\n\t */\n\tscrollToEnd() {\n\t\tconst expandedTokenizerScrollWidth = this.contentDom && (this.effectiveDir !== \"rtl\" ? this.contentDom.scrollWidth : -this.contentDom.scrollWidth);\n\t\tif (this._scrollEnablement.scrollContainer) {\n\t\t\tthis._scrollEnablement.scrollTo(expandedTokenizerScrollWidth, 0, 5, 10);\n\t\t}\n\t}\n\n\t/**\n\t * Scrolls token to the visible area of the container.\n\t * Adds 4 pixels to the scroll position to ensure padding and border visibility on both ends\n\t * @protected\n\t */\n\t_scrollToToken(token: IToken) {\n\t\tif (!this.contentDom) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tokenRect = token.getBoundingClientRect();\n\t\tconst tokenContainerRect = this.contentDom.getBoundingClientRect();\n\n\t\tif (tokenRect.left < tokenContainerRect.left) {\n\t\t\tthis._scrollEnablement.scrollTo(this.contentDom.scrollLeft - (tokenContainerRect.left - tokenRect.left + 5), 0);\n\t\t} else if (tokenRect.right > tokenContainerRect.right) {\n\t\t\tthis._scrollEnablement.scrollTo(this.contentDom.scrollLeft + (tokenRect.right - tokenContainerRect.right + 5), 0);\n\t\t}\n\t}\n\n\tget _tokens() {\n\t\treturn this.getSlottedNodes<Token>(\"tokens\");\n\t}\n\n\tget morePopoverOpener(): HTMLElement {\n\t\treturn Object.keys(this.opener).length === 0 ? this : this.opener;\n\t}\n\n\tget _nMoreText() {\n\t\tif (!this._nMoreCount) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._getVisibleTokens().length) {\n\t\t\treturn Tokenizer.i18nBundle.getText(MULTIINPUT_SHOW_MORE_TOKENS, this._nMoreCount);\n\t\t}\n\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_SHOW_ALL_ITEMS, this._nMoreCount);\n\t}\n\n\tget showNMore() {\n\t\treturn !this.expanded && !!this.overflownTokens.length;\n\t}\n\n\tget contentDom() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-tokenizer--content\")!;\n\t}\n\n\tget moreLink() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-tokenizer-more-text\");\n\t}\n\n\tget tokenizerLabel() {\n\t\tconst effectiveLabelText = getEffectiveAriaLabelText(this);\n\t\treturn effectiveLabelText || Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_LABEL);\n\t}\n\n\tget tokenizerAriaDescription() {\n\t\treturn getEffectiveAriaLabelText(this) ? Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_LABEL) : undefined;\n\t}\n\n\tget _ariaDisabled() {\n\t\treturn this.disabled || undefined;\n\t}\n\n\tget _ariaReadonly() {\n\t\treturn this.readonly || undefined;\n\t}\n\n\tget morePopoverTitle() {\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_POPOVER_REMOVE);\n\t}\n\n\tget overflownTokens() {\n\t\tif (!this.contentDom) {\n\t\t\treturn [];\n\t\t}\n\n\t\tconst tokensArray = this._tokens;\n\n\t\t// Reset the overflow prop of the tokens first in order\n\t\t// to use their dimensions for calculation because already\n\t\t// hidden tokens are set to 'display: none'\n\t\ttokensArray.forEach(token => {\n\t\t\ttoken.overflows = false;\n\t\t});\n\n\t\treturn tokensArray.filter(token => {\n\t\t\tconst parentRect = this.contentDom.getBoundingClientRect();\n\t\t\tconst tokenRect = token.getBoundingClientRect();\n\t\t\tconst tokenEnd = Number(tokenRect.right.toFixed(2));\n\t\t\tconst parentEnd = Number(parentRect.right.toFixed(2));\n\t\t\tconst tokenStart = Number(tokenRect.left.toFixed(2));\n\t\t\tconst parentStart = Number(parentRect.left.toFixed(2));\n\n\t\t\ttoken.overflows = !this.expanded && ((tokenStart < parentStart) || (tokenEnd > parentEnd));\n\n\t\t\treturn token.overflows;\n\t\t});\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget _selectedTokens() {\n\t\treturn this._tokens.filter(token => token.selected);\n\t}\n\n\tget _nMoreListMode() {\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn ListSelectionMode.None;\n\t\t}\n\n\t\treturn ListSelectionMode.Delete;\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tpopover: {\n\t\t\t\t\"min-width\": this.popoverMinWidth ? `${this.popoverMinWidth}px` : `${this.getBoundingClientRect().width}px`,\n\t\t\t},\n\t\t};\n\t}\n\n\t_tokensCountText() {\n\t\tconst iTokenCount = this._tokens.length;\n\n\t\tconst tokenCountMap: TokenCountMapType = {\n\t\t\t0: TOKENIZER_ARIA_CONTAIN_TOKEN,\n\t\t\t1: TOKENIZER_ARIA_CONTAIN_ONE_TOKEN,\n\t\t};\n\n\t\tif (iTokenCount in tokenCountMap) {\n\t\t\treturn Tokenizer.i18nBundle.getText(tokenCountMap[iTokenCount]);\n\t\t}\n\n\t\treturn Tokenizer.i18nBundle.getText(TOKENIZER_ARIA_CONTAIN_SEVERAL_TOKENS, iTokenCount);\n\t}\n\n\t/**\n\t * @protected\n\t */\n\t_focusLastToken() {\n\t\tconst tokens = this._tokens;\n\t\tif (tokens.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst lastToken = tokens[tokens.length - 1];\n\t\tlastToken.focus();\n\t}\n\n\tstatic async onDefine() {\n\t\tTokenizer.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tgetPopover() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n}\n\nTokenizer.define();\n\nexport default Tokenizer;\nexport { ClipboardDataOperation };\nexport type { TokenizerTokenDeleteEventDetail, TokenizerSelectionChangeEventDetail, TokenizerDialogButtonPressDetail };\n"]}
|
package/dist/Toolbar.js
CHANGED
|
@@ -18,13 +18,13 @@ import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
|
18
18
|
import "@ui5/webcomponents-icons/dist/overflow.js";
|
|
19
19
|
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
20
20
|
import { getScopedVarName } from "@ui5/webcomponents-base/dist/CustomElementsScope.js";
|
|
21
|
+
import AriaHasPopup from "@ui5/webcomponents-base/dist/types/AriaHasPopup.js";
|
|
21
22
|
import { TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL, } from "./generated/i18n/i18n-defaults.js";
|
|
22
23
|
import ToolbarTemplate from "./generated/templates/ToolbarTemplate.lit.js";
|
|
23
24
|
import ToolbarCss from "./generated/themes/Toolbar.css.js";
|
|
24
25
|
import ToolbarPopoverCss from "./generated/themes/ToolbarPopover.css.js";
|
|
25
26
|
import ToolbarAlign from "./types/ToolbarAlign.js";
|
|
26
27
|
import ToolbarItemOverflowBehavior from "./types/ToolbarItemOverflowBehavior.js";
|
|
27
|
-
import HasPopup from "./types/HasPopup.js";
|
|
28
28
|
import "./ToolbarItem.js";
|
|
29
29
|
import { getRegisteredToolbarItem, getRegisteredStyles, getRegisteredDependencies, } from "./ToolbarRegistry.js";
|
|
30
30
|
import Button from "./Button.js";
|
|
@@ -163,7 +163,7 @@ let Toolbar = Toolbar_1 = class Toolbar extends UI5Element {
|
|
|
163
163
|
tooltip: Toolbar_1.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),
|
|
164
164
|
accessibilityAttributes: {
|
|
165
165
|
expanded: this.overflowButtonDOM?.accessibilityAttributes.expanded,
|
|
166
|
-
hasPopup:
|
|
166
|
+
hasPopup: AriaHasPopup.Menu.toLowerCase(),
|
|
167
167
|
},
|
|
168
168
|
},
|
|
169
169
|
};
|
|
@@ -343,9 +343,10 @@ let Toolbar = Toolbar_1 = class Toolbar extends UI5Element {
|
|
|
343
343
|
const refItemId = target.getAttribute("data-ui5-external-action-item-id");
|
|
344
344
|
if (refItemId) {
|
|
345
345
|
const abstractItem = this.getItemByID(refItemId);
|
|
346
|
-
const eventType = e.type
|
|
347
|
-
const
|
|
348
|
-
const
|
|
346
|
+
const eventType = e.type;
|
|
347
|
+
const eventTypeNonPrefixed = e.type.replace("ui5-", "");
|
|
348
|
+
const prevented = !abstractItem?.fireEvent(eventTypeNonPrefixed, e.detail, true);
|
|
349
|
+
const eventOptions = abstractItem?.subscribedEvents.get(eventType) || abstractItem?.subscribedEvents.get(eventTypeNonPrefixed);
|
|
349
350
|
if (prevented || abstractItem?.preventOverflowClosing || eventOptions?.preventClosing) {
|
|
350
351
|
return;
|
|
351
352
|
}
|
package/dist/Toolbar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toolbar.js","sourceRoot":"","sources":["../src/Toolbar.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element, { ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport \"@ui5/webcomponents-icons/dist/overflow.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\n\nimport {\n\tTOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport ToolbarTemplate from \"./generated/templates/ToolbarTemplate.lit.js\";\nimport ToolbarCss from \"./generated/themes/Toolbar.css.js\";\n\nimport ToolbarPopoverCss from \"./generated/themes/ToolbarPopover.css.js\";\n\nimport ToolbarAlign from \"./types/ToolbarAlign.js\";\nimport ToolbarItemOverflowBehavior from \"./types/ToolbarItemOverflowBehavior.js\";\nimport HasPopup from \"./types/HasPopup.js\";\n\nimport ToolbarItem from \"./ToolbarItem.js\";\nimport type ToolbarSeparator from \"./ToolbarSeparator.js\";\n\nimport {\n\tgetRegisteredToolbarItem,\n\tgetRegisteredStyles,\n\tgetRegisteredDependencies,\n} from \"./ToolbarRegistry.js\";\n\nimport Button from \"./Button.js\";\nimport Popover from \"./Popover.js\";\n\nfunction calculateCSSREMValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"rem\", \"\")) * parseInt(getComputedStyle(document.body).getPropertyValue(\"font-size\"));\n}\n\nfunction parsePxValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"px\", \"\"));\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-toolbar` component is used to create a horizontal layout with items.\n * The items can be overflowing in a popover, when the space is not enough to show all of them.\n *\n * ### Keyboard Handling\n * The `ui5-toolbar` provides advanced keyboard handling.\n *\n * - The control is not interactive, but can contain of interactive elements\n * - [Tab] - iterates through elements\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/Toolbar.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: ToolbarTemplate,\n})\nclass Toolbar extends UI5Element {\n\tstatic i18nBundle: I18nBundle;\n\n\t/**\n\t * Indicated the direction in which the Toolbar items will be aligned.\n\t * @public\n\t * @default \"End\"\n\t */\n\t@property({ type: ToolbarAlign, defaultValue: ToolbarAlign.End })\n\talignContent!: `${ToolbarAlign}`;\n\n\t/**\n\t * Calculated width of the whole toolbar.\n\t * @private\n\t * @default undefined\n\t */\n\t@property({ validator: Integer })\n\twidth?: number;\n\n\t/**\n\t * Calculated width of the toolbar content.\n\t * @private\n\t * @default undefined\n\t */\n\t@property({ validator: Integer })\n\tcontentWidth?: number;\n\n\t/**\n\t * Notifies the toolbar if it should show the items in a reverse way if Toolbar Popover needs to be placed on \"Top\" position.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\treverseOverflow!: boolean;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property({ defaultValue: \"\" })\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the items of the component.\n *\n * **Note:** Currently only `ui5-toolbar-button`, `ui5-toolbar-select`, `ui5-toolbar-separator` and `ui5-toolbar-spacer` are allowed here.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\titems!: Array<ToolbarItem>\n\n\t_onResize!: ResizeObserverCallback;\n\t_onInteract!: EventListener;\n\titemsToOverflow: Array<ToolbarItem> = [];\n\titemsWidth = 0;\n\tpopoverOpen = false;\n\titemsWidthMeasured = false;\n\n\tITEMS_WIDTH_MAP: Map<string, number> = new Map();\n\n\tstatic get styles() {\n\t\tconst styles = getRegisteredStyles();\n\t\treturn [\n\t\t\tToolbarCss,\n\t\t\tToolbarPopoverCss,\n\t\t\t...styles,\n\t\t];\n\t}\n\n\tstatic get dependencies() {\n\t\tconst deps = getRegisteredDependencies();\n\t\treturn [\n\t\t\tPopover,\n\t\t\tButton,\n\t\t\t...deps,\n\t\t];\n\t}\n\n\tstatic async onDefine() {\n\t\tToolbar.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._onResize = this.onResize.bind(this);\n\t\tthis._onInteract = (e: Event) => this.onInteract(e as CustomEvent);\n\t}\n\n\t/**\n\t * Read-only members\n\t */\n\n\tget overflowButtonSize(): number {\n\t\treturn this.overflowButtonDOM?.getBoundingClientRect().width || 0;\n\t}\n\n\tget padding(): number {\n\t\tconst toolbarComputedStyle = getComputedStyle(this.getDomRef()!);\n\t\treturn calculateCSSREMValue(toolbarComputedStyle, getScopedVarName(\"--_ui5-toolbar-padding-left\"))\n\t\t\t+ calculateCSSREMValue(toolbarComputedStyle, getScopedVarName(\"--_ui5-toolbar-padding-right\"));\n\t}\n\n\tget subscribedEvents() {\n\t\treturn this.items\n\t\t\t.map((item: ToolbarItem) => Array.from(item.subscribedEvents.keys()))\n\t\t\t.flat()\n\t\t\t// remove duplicates\n\t\t\t.filter((value, index, self) => self.indexOf(value) === index);\n\t}\n\n\tget alwaysOverflowItems() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.overflowPriority === ToolbarItemOverflowBehavior.AlwaysOverflow);\n\t}\n\n\tget movableItems() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.overflowPriority !== ToolbarItemOverflowBehavior.AlwaysOverflow && item.overflowPriority !== ToolbarItemOverflowBehavior.NeverOverflow);\n\t}\n\n\tget overflowItems() {\n\t\t// spacers are ignored\n\t\tconst overflowItems = this.getItemsInfo(this.itemsToOverflow.filter(item => !item.ignoreSpace));\n\t\treturn this.reverseOverflow ? overflowItems.reverse() : overflowItems;\n\t}\n\n\tget standardItems() {\n\t\treturn this.getItemsInfo(this.items.filter(item => this.itemsToOverflow.indexOf(item) === -1));\n\t}\n\n\tget hideOverflowButton() {\n\t\treturn this.itemsToOverflow.filter(item => !(item.ignoreSpace || item.isSeparator)).length === 0;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\titems: {\n\t\t\t\t\"ui5-tb-items\": true,\n\t\t\t\t\"ui5-tb-items-full-width\": this.hasFlexibleSpacers,\n\t\t\t},\n\t\t\toverflow: {\n\t\t\t\t\"ui5-overflow-list--alignleft\": this.hasItemWithText,\n\t\t\t},\n\t\t\toverflowButton: {\n\t\t\t\t\"ui5-tb-item\": true,\n\t\t\t\t\"ui5-tb-overflow-btn\": true,\n\t\t\t\t\"ui5-tb-overflow-btn-hidden\": this.hideOverflowButton,\n\t\t\t},\n\t\t};\n\t}\n\n\tget interactiveItemsCount() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.isInteractive).length;\n\t}\n\n\t/**\n\t * Accessibility\n\t */\n\n\tget hasAriaSemantics() {\n\t\treturn this.interactiveItemsCount > 1;\n\t}\n\n\tget accessibleRole() {\n\t\treturn this.hasAriaSemantics ? \"toolbar\" : undefined;\n\t}\n\n\tget ariaLabelText() {\n\t\treturn this.hasAriaSemantics ? getEffectiveAriaLabelText(this) : undefined;\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\trole: this.accessibleRole,\n\t\t\t\taccessibleName: this.ariaLabelText,\n\t\t\t},\n\t\t\toverflowButton: {\n\t\t\t\taccessibleName: Toolbar.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),\n\t\t\t\ttooltip: Toolbar.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),\n\t\t\t\taccessibilityAttributes: {\n\t\t\t\t\texpanded: this.overflowButtonDOM?.accessibilityAttributes.expanded,\n\t\t\t\t\thasPopup: HasPopup.Menu.toLowerCase(),\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * Toolbar Overflow Popover\n\t */\n\n\tget overflowButtonDOM(): Button | null {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-tb-overflow-btn\");\n\t}\n\n\tget itemsDOM() {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-tb-items\");\n\t}\n\n\tget hasItemWithText(): boolean {\n\t\treturn this.itemsToOverflow.some((item: ToolbarItem) => item.containsText);\n\t}\n\n\tget hasFlexibleSpacers() {\n\t\treturn this.items.some((item: ToolbarItem) => item.hasFlexibleWidth);\n\t}\n\n\t/**\n\t * Lifecycle methods\n\t */\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._onResize);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._onResize);\n\t}\n\n\tonInvalidation(changeInfo: ChangeInfo) {\n\t\tif (changeInfo.reason === \"childchange\" && changeInfo.child === this.itemsToOverflow[0]) {\n\t\t\tthis.onToolbarItemChange();\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.detachListeners();\n\t\tthis.attachListeners();\n\t}\n\n\tasync onAfterRendering() {\n\t\tawait renderFinished();\n\n\t\tthis.storeItemsWidth();\n\t\tthis.processOverflowLayout();\n\t}\n\n\t/**\n\t * Returns if the overflow popup is open.\n\t * @public\n\t */\n\tisOverflowOpen(): boolean {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\treturn overflowPopover!.isOpen();\n\t}\n\n\topenOverflow(): void {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\toverflowPopover!.showAt(this.overflowButtonDOM!);\n\t\tthis.reverseOverflow = overflowPopover!.actualPlacement === \"Top\";\n\t}\n\n\tcloseOverflow() {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\toverflowPopover!.close();\n\t}\n\n\ttoggleOverflow() {\n\t\tif (this.popoverOpen) {\n\t\t\tthis.closeOverflow();\n\t\t} else {\n\t\t\tthis.openOverflow();\n\t\t}\n\t}\n\n\tgetOverflowPopover(): Popover | null {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\".ui5-overflow-popover\");\n\t}\n\n\t/**\n\t * Layout management\n\t */\n\n\tprocessOverflowLayout() {\n\t\tconst containerWidth = this.offsetWidth - this.padding;\n\t\tconst contentWidth = this.itemsWidth;\n\t\tconst overflowSpace = contentWidth - containerWidth + this.overflowButtonSize;\n\n\t\t// skip calculation if the width has not been changed or if the items width has not been changed\n\t\tif (this.width === containerWidth && this.contentWidth === contentWidth) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.distributeItems(overflowSpace);\n\t\tthis.width = containerWidth;\n\t\tthis.contentWidth = contentWidth;\n\t}\n\n\tstoreItemsWidth() {\n\t\tlet totalWidth = 0;\n\n\t\tthis.items.forEach((item: ToolbarItem) => {\n\t\t\tconst itemWidth = this.getItemWidth(item);\n\t\t\ttotalWidth += itemWidth;\n\t\t\tthis.ITEMS_WIDTH_MAP.set(item._id, itemWidth);\n\t\t});\n\n\t\tthis.itemsWidth = totalWidth;\n\t}\n\n\tdistributeItems(overflowSpace = 0) {\n\t\tconst movableItems = this.movableItems.reverse();\n\t\tlet index = 0;\n\t\tlet currentItem = movableItems[index];\n\n\t\tthis.itemsToOverflow = [];\n\n\t\t// distribute items that always overflow\n\t\tthis.distributeItemsThatAlwaysOverflow();\n\n\t\twhile (overflowSpace > 0 && currentItem) {\n\t\t\tthis.itemsToOverflow.unshift(currentItem);\n\t\t\toverflowSpace -= this.getCachedItemWidth(currentItem?._id) || 0;\n\t\t\tindex++;\n\t\t\tcurrentItem = movableItems[index];\n\t\t}\n\n\t\t// If the last bar item is a spacer, force it to the overflow even if there is enough space for it\n\t\tif (index < movableItems.length) {\n\t\t\tlet lastItem = movableItems[index];\n\t\t\twhile (index <= movableItems.length - 1 && lastItem.isSeparator) {\n\t\t\t\tthis.itemsToOverflow.unshift(lastItem);\n\t\t\t\tindex++;\n\t\t\t\tlastItem = movableItems[index];\n\t\t\t}\n\t\t}\n\n\t\tthis.setSeperatorsVisibilityInOverflow();\n\t}\n\n\tdistributeItemsThatAlwaysOverflow() {\n\t\tthis.alwaysOverflowItems.forEach((item: ToolbarItem) => {\n\t\t\tthis.itemsToOverflow.push(item);\n\t\t});\n\t}\n\n\tsetSeperatorsVisibilityInOverflow() {\n\t\tthis.itemsToOverflow.forEach((item, idx, items) => {\n\t\t\tif (item.isSeparator) {\n\t\t\t\t(item as ToolbarSeparator).visible = this.shouldShowSeparatorInOverflow(idx, items);\n\t\t\t}\n\t\t});\n\t}\n\n\tshouldShowSeparatorInOverflow(separatorIdx: number, overflowItems: Array<ToolbarItem>) {\n\t\tlet foundPrevNonSeparatorItem = false;\n\t\tlet foundNextNonSeperatorItem = false;\n\n\t\t// search for non-separator item before and after the seperator\n\t\toverflowItems.forEach((item, idx) => {\n\t\t\tif (idx < separatorIdx && !item.isSeparator) {\n\t\t\t\tfoundPrevNonSeparatorItem = true;\n\t\t\t}\n\t\t\tif (idx > separatorIdx && !item.isSeparator) {\n\t\t\t\tfoundNextNonSeperatorItem = true;\n\t\t\t}\n\t\t});\n\n\t\treturn foundPrevNonSeparatorItem && foundNextNonSeperatorItem;\n\t}\n\n\t/**\n\t * Event Handlers\n\t */\n\n\tonOverflowPopoverClosed() {\n\t\tthis.popoverOpen = false;\n\t\tif (this.overflowButtonDOM) {\n\t\t\tthis.overflowButtonDOM.accessibilityAttributes.expanded = false;\n\t\t}\n\t}\n\n\tonOverflowPopoverOpened() {\n\t\tthis.popoverOpen = true;\n\t\tif (this.overflowButtonDOM) {\n\t\t\tthis.overflowButtonDOM.accessibilityAttributes.expanded = true;\n\t\t}\n\t}\n\n\tonResize() {\n\t\tif (!this.itemsWidth) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.closeOverflow();\n\t\tthis.processOverflowLayout();\n\t}\n\n\tonInteract(e: CustomEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tconst item = target.closest<ToolbarItem>(\".ui5-tb-item\") || target.closest<ToolbarItem>(\".ui5-tb-popover-item\");\n\n\t\tif (target === this.overflowButtonDOM) {\n\t\t\tthis.toggleOverflow();\n\t\t\treturn;\n\t\t}\n\n\t\tif (!item) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst refItemId = target.getAttribute(\"data-ui5-external-action-item-id\");\n\n\t\tif (refItemId) {\n\t\t\tconst abstractItem = this.getItemByID(refItemId);\n\t\t\tconst eventType: string = e.type.replace(\"ui5-\", \"\");\n\t\t\tconst prevented = !abstractItem?.fireEvent(eventType, e.detail, true);\n\t\t\tconst eventOptions = abstractItem?.subscribedEvents.get(eventType);\n\n\t\t\tif (prevented || abstractItem?.preventOverflowClosing || eventOptions?.preventClosing) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.closeOverflow();\n\t\t}\n\t}\n\n\t/**\n\t * Private members\n\t */\n\n\tattachListeners() {\n\t\tconst popover = this.getOverflowPopover();\n\n\t\tthis.subscribedEvents.forEach((e: string) => {\n\t\t\tthis.itemsDOM?.addEventListener(e, this._onInteract);\n\t\t\tpopover?.addEventListener(e, this._onInteract);\n\t\t});\n\t}\n\n\tdetachListeners() {\n\t\tconst popover = this.getOverflowPopover();\n\n\t\tthis.subscribedEvents.forEach((e: string) => {\n\t\t\tthis.itemsDOM?.removeEventListener(e, this._onInteract);\n\t\t\tpopover?.removeEventListener(e, this._onInteract);\n\t\t});\n\t}\n\n\tonToolbarItemChange() {\n\t\t// some items were updated reset the cache and trigger a re-render\n\t\tthis.itemsToOverflow = [];\n\t\tthis.contentWidth = 0; // re-render\n\t}\n\n\tgetItemsInfo(items: Array<ToolbarItem>) {\n\t\treturn items.map((item: ToolbarItem) => {\n\t\t\tconst ElementClass = getRegisteredToolbarItem(item.constructor.name);\n\n\t\t\tif (!ElementClass) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst toolbarItem = {\n\t\t\t\ttoolbarTemplate: executeTemplate(ElementClass.toolbarTemplate, item),\n\t\t\t\ttoolbarPopoverTemplate: executeTemplate(ElementClass.toolbarPopoverTemplate, item),\n\t\t\t};\n\n\t\t\treturn toolbarItem;\n\t\t});\n\t}\n\n\tgetItemWidth(item: ToolbarItem): number {\n\t\t// Spacer width - always 0 for flexible spacers, so that they shrink, otherwise - measure the width normally\n\t\tif (item.ignoreSpace || item.isSeparator) {\n\t\t\treturn 0;\n\t\t}\n\t\tconst id: string = item._id;\n\t\t// Measure rendered width for spacers with width, and for normal items\n\t\tconst renderedItem = this.getRegisteredToolbarItemByID(id);\n\n\t\tlet itemWidth = 0;\n\n\t\tif (renderedItem) {\n\t\t\tconst ItemCSSStyleSet = getComputedStyle(renderedItem);\n\t\t\titemWidth = renderedItem.offsetWidth + parsePxValue(ItemCSSStyleSet, \"margin-inline-end\")\n\t\t\t\t+ parsePxValue(ItemCSSStyleSet, \"margin-inline-start\");\n\t\t} else {\n\t\t\titemWidth = this.getCachedItemWidth(id) || 0;\n\t\t}\n\n\t\treturn Math.ceil(itemWidth);\n\t}\n\n\tgetCachedItemWidth(id: string) {\n\t\treturn this.ITEMS_WIDTH_MAP.get(id);\n\t}\n\n\tgetItemByID(id: string) {\n\t\treturn this.items.find(item => item._id === id);\n\t}\n\n\tgetRegisteredToolbarItemByID(id: string): HTMLElement | null {\n\t\treturn this.itemsDOM!.querySelector(`[data-ui5-external-action-item-id=\"${id}\"]`);\n\t}\n}\n\nToolbar.define();\n\nexport default Toolbar;\n"]}
|
|
1
|
+
{"version":3,"file":"Toolbar.js","sourceRoot":"","sources":["../src/Toolbar.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element, { ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport \"@ui5/webcomponents-icons/dist/overflow.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport AriaHasPopup from \"@ui5/webcomponents-base/dist/types/AriaHasPopup.js\";\n\nimport {\n\tTOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport ToolbarTemplate from \"./generated/templates/ToolbarTemplate.lit.js\";\nimport ToolbarCss from \"./generated/themes/Toolbar.css.js\";\n\nimport ToolbarPopoverCss from \"./generated/themes/ToolbarPopover.css.js\";\n\nimport ToolbarAlign from \"./types/ToolbarAlign.js\";\nimport ToolbarItemOverflowBehavior from \"./types/ToolbarItemOverflowBehavior.js\";\n\nimport ToolbarItem from \"./ToolbarItem.js\";\nimport type ToolbarSeparator from \"./ToolbarSeparator.js\";\n\nimport {\n\tgetRegisteredToolbarItem,\n\tgetRegisteredStyles,\n\tgetRegisteredDependencies,\n} from \"./ToolbarRegistry.js\";\n\nimport Button from \"./Button.js\";\nimport Popover from \"./Popover.js\";\n\nfunction calculateCSSREMValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"rem\", \"\")) * parseInt(getComputedStyle(document.body).getPropertyValue(\"font-size\"));\n}\n\nfunction parsePxValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"px\", \"\"));\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-toolbar` component is used to create a horizontal layout with items.\n * The items can be overflowing in a popover, when the space is not enough to show all of them.\n *\n * ### Keyboard Handling\n * The `ui5-toolbar` provides advanced keyboard handling.\n *\n * - The control is not interactive, but can contain of interactive elements\n * - [Tab] - iterates through elements\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/Toolbar.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: ToolbarTemplate,\n})\nclass Toolbar extends UI5Element {\n\tstatic i18nBundle: I18nBundle;\n\n\t/**\n\t * Indicated the direction in which the Toolbar items will be aligned.\n\t * @public\n\t * @default \"End\"\n\t */\n\t@property({ type: ToolbarAlign, defaultValue: ToolbarAlign.End })\n\talignContent!: `${ToolbarAlign}`;\n\n\t/**\n\t * Calculated width of the whole toolbar.\n\t * @private\n\t * @default undefined\n\t */\n\t@property({ validator: Integer })\n\twidth?: number;\n\n\t/**\n\t * Calculated width of the toolbar content.\n\t * @private\n\t * @default undefined\n\t */\n\t@property({ validator: Integer })\n\tcontentWidth?: number;\n\n\t/**\n\t * Notifies the toolbar if it should show the items in a reverse way if Toolbar Popover needs to be placed on \"Top\" position.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\treverseOverflow!: boolean;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property({ defaultValue: \"\" })\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the items of the component.\n *\n * **Note:** Currently only `ui5-toolbar-button`, `ui5-toolbar-select`, `ui5-toolbar-separator` and `ui5-toolbar-spacer` are allowed here.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\titems!: Array<ToolbarItem>\n\n\t_onResize!: ResizeObserverCallback;\n\t_onInteract!: EventListener;\n\titemsToOverflow: Array<ToolbarItem> = [];\n\titemsWidth = 0;\n\tpopoverOpen = false;\n\titemsWidthMeasured = false;\n\n\tITEMS_WIDTH_MAP: Map<string, number> = new Map();\n\n\tstatic get styles() {\n\t\tconst styles = getRegisteredStyles();\n\t\treturn [\n\t\t\tToolbarCss,\n\t\t\tToolbarPopoverCss,\n\t\t\t...styles,\n\t\t];\n\t}\n\n\tstatic get dependencies() {\n\t\tconst deps = getRegisteredDependencies();\n\t\treturn [\n\t\t\tPopover,\n\t\t\tButton,\n\t\t\t...deps,\n\t\t];\n\t}\n\n\tstatic async onDefine() {\n\t\tToolbar.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._onResize = this.onResize.bind(this);\n\t\tthis._onInteract = (e: Event) => this.onInteract(e as CustomEvent);\n\t}\n\n\t/**\n\t * Read-only members\n\t */\n\n\tget overflowButtonSize(): number {\n\t\treturn this.overflowButtonDOM?.getBoundingClientRect().width || 0;\n\t}\n\n\tget padding(): number {\n\t\tconst toolbarComputedStyle = getComputedStyle(this.getDomRef()!);\n\t\treturn calculateCSSREMValue(toolbarComputedStyle, getScopedVarName(\"--_ui5-toolbar-padding-left\"))\n\t\t\t+ calculateCSSREMValue(toolbarComputedStyle, getScopedVarName(\"--_ui5-toolbar-padding-right\"));\n\t}\n\n\tget subscribedEvents() {\n\t\treturn this.items\n\t\t\t.map((item: ToolbarItem) => Array.from(item.subscribedEvents.keys()))\n\t\t\t.flat()\n\t\t\t// remove duplicates\n\t\t\t.filter((value, index, self) => self.indexOf(value) === index);\n\t}\n\n\tget alwaysOverflowItems() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.overflowPriority === ToolbarItemOverflowBehavior.AlwaysOverflow);\n\t}\n\n\tget movableItems() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.overflowPriority !== ToolbarItemOverflowBehavior.AlwaysOverflow && item.overflowPriority !== ToolbarItemOverflowBehavior.NeverOverflow);\n\t}\n\n\tget overflowItems() {\n\t\t// spacers are ignored\n\t\tconst overflowItems = this.getItemsInfo(this.itemsToOverflow.filter(item => !item.ignoreSpace));\n\t\treturn this.reverseOverflow ? overflowItems.reverse() : overflowItems;\n\t}\n\n\tget standardItems() {\n\t\treturn this.getItemsInfo(this.items.filter(item => this.itemsToOverflow.indexOf(item) === -1));\n\t}\n\n\tget hideOverflowButton() {\n\t\treturn this.itemsToOverflow.filter(item => !(item.ignoreSpace || item.isSeparator)).length === 0;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\titems: {\n\t\t\t\t\"ui5-tb-items\": true,\n\t\t\t\t\"ui5-tb-items-full-width\": this.hasFlexibleSpacers,\n\t\t\t},\n\t\t\toverflow: {\n\t\t\t\t\"ui5-overflow-list--alignleft\": this.hasItemWithText,\n\t\t\t},\n\t\t\toverflowButton: {\n\t\t\t\t\"ui5-tb-item\": true,\n\t\t\t\t\"ui5-tb-overflow-btn\": true,\n\t\t\t\t\"ui5-tb-overflow-btn-hidden\": this.hideOverflowButton,\n\t\t\t},\n\t\t};\n\t}\n\n\tget interactiveItemsCount() {\n\t\treturn this.items.filter((item: ToolbarItem) => item.isInteractive).length;\n\t}\n\n\t/**\n\t * Accessibility\n\t */\n\n\tget hasAriaSemantics() {\n\t\treturn this.interactiveItemsCount > 1;\n\t}\n\n\tget accessibleRole() {\n\t\treturn this.hasAriaSemantics ? \"toolbar\" : undefined;\n\t}\n\n\tget ariaLabelText() {\n\t\treturn this.hasAriaSemantics ? getEffectiveAriaLabelText(this) : undefined;\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\trole: this.accessibleRole,\n\t\t\t\taccessibleName: this.ariaLabelText,\n\t\t\t},\n\t\t\toverflowButton: {\n\t\t\t\taccessibleName: Toolbar.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),\n\t\t\t\ttooltip: Toolbar.i18nBundle.getText(TOOLBAR_OVERFLOW_BUTTON_ARIA_LABEL),\n\t\t\t\taccessibilityAttributes: {\n\t\t\t\t\texpanded: this.overflowButtonDOM?.accessibilityAttributes.expanded,\n\t\t\t\t\thasPopup: AriaHasPopup.Menu.toLowerCase(),\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * Toolbar Overflow Popover\n\t */\n\n\tget overflowButtonDOM(): Button | null {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-tb-overflow-btn\");\n\t}\n\n\tget itemsDOM() {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-tb-items\");\n\t}\n\n\tget hasItemWithText(): boolean {\n\t\treturn this.itemsToOverflow.some((item: ToolbarItem) => item.containsText);\n\t}\n\n\tget hasFlexibleSpacers() {\n\t\treturn this.items.some((item: ToolbarItem) => item.hasFlexibleWidth);\n\t}\n\n\t/**\n\t * Lifecycle methods\n\t */\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._onResize);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._onResize);\n\t}\n\n\tonInvalidation(changeInfo: ChangeInfo) {\n\t\tif (changeInfo.reason === \"childchange\" && changeInfo.child === this.itemsToOverflow[0]) {\n\t\t\tthis.onToolbarItemChange();\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.detachListeners();\n\t\tthis.attachListeners();\n\t}\n\n\tasync onAfterRendering() {\n\t\tawait renderFinished();\n\n\t\tthis.storeItemsWidth();\n\t\tthis.processOverflowLayout();\n\t}\n\n\t/**\n\t * Returns if the overflow popup is open.\n\t * @public\n\t */\n\tisOverflowOpen(): boolean {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\treturn overflowPopover!.isOpen();\n\t}\n\n\topenOverflow(): void {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\toverflowPopover!.showAt(this.overflowButtonDOM!);\n\t\tthis.reverseOverflow = overflowPopover!.actualPlacement === \"Top\";\n\t}\n\n\tcloseOverflow() {\n\t\tconst overflowPopover = this.getOverflowPopover();\n\t\toverflowPopover!.close();\n\t}\n\n\ttoggleOverflow() {\n\t\tif (this.popoverOpen) {\n\t\t\tthis.closeOverflow();\n\t\t} else {\n\t\t\tthis.openOverflow();\n\t\t}\n\t}\n\n\tgetOverflowPopover(): Popover | null {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\".ui5-overflow-popover\");\n\t}\n\n\t/**\n\t * Layout management\n\t */\n\n\tprocessOverflowLayout() {\n\t\tconst containerWidth = this.offsetWidth - this.padding;\n\t\tconst contentWidth = this.itemsWidth;\n\t\tconst overflowSpace = contentWidth - containerWidth + this.overflowButtonSize;\n\n\t\t// skip calculation if the width has not been changed or if the items width has not been changed\n\t\tif (this.width === containerWidth && this.contentWidth === contentWidth) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.distributeItems(overflowSpace);\n\t\tthis.width = containerWidth;\n\t\tthis.contentWidth = contentWidth;\n\t}\n\n\tstoreItemsWidth() {\n\t\tlet totalWidth = 0;\n\n\t\tthis.items.forEach((item: ToolbarItem) => {\n\t\t\tconst itemWidth = this.getItemWidth(item);\n\t\t\ttotalWidth += itemWidth;\n\t\t\tthis.ITEMS_WIDTH_MAP.set(item._id, itemWidth);\n\t\t});\n\n\t\tthis.itemsWidth = totalWidth;\n\t}\n\n\tdistributeItems(overflowSpace = 0) {\n\t\tconst movableItems = this.movableItems.reverse();\n\t\tlet index = 0;\n\t\tlet currentItem = movableItems[index];\n\n\t\tthis.itemsToOverflow = [];\n\n\t\t// distribute items that always overflow\n\t\tthis.distributeItemsThatAlwaysOverflow();\n\n\t\twhile (overflowSpace > 0 && currentItem) {\n\t\t\tthis.itemsToOverflow.unshift(currentItem);\n\t\t\toverflowSpace -= this.getCachedItemWidth(currentItem?._id) || 0;\n\t\t\tindex++;\n\t\t\tcurrentItem = movableItems[index];\n\t\t}\n\n\t\t// If the last bar item is a spacer, force it to the overflow even if there is enough space for it\n\t\tif (index < movableItems.length) {\n\t\t\tlet lastItem = movableItems[index];\n\t\t\twhile (index <= movableItems.length - 1 && lastItem.isSeparator) {\n\t\t\t\tthis.itemsToOverflow.unshift(lastItem);\n\t\t\t\tindex++;\n\t\t\t\tlastItem = movableItems[index];\n\t\t\t}\n\t\t}\n\n\t\tthis.setSeperatorsVisibilityInOverflow();\n\t}\n\n\tdistributeItemsThatAlwaysOverflow() {\n\t\tthis.alwaysOverflowItems.forEach((item: ToolbarItem) => {\n\t\t\tthis.itemsToOverflow.push(item);\n\t\t});\n\t}\n\n\tsetSeperatorsVisibilityInOverflow() {\n\t\tthis.itemsToOverflow.forEach((item, idx, items) => {\n\t\t\tif (item.isSeparator) {\n\t\t\t\t(item as ToolbarSeparator).visible = this.shouldShowSeparatorInOverflow(idx, items);\n\t\t\t}\n\t\t});\n\t}\n\n\tshouldShowSeparatorInOverflow(separatorIdx: number, overflowItems: Array<ToolbarItem>) {\n\t\tlet foundPrevNonSeparatorItem = false;\n\t\tlet foundNextNonSeperatorItem = false;\n\n\t\t// search for non-separator item before and after the seperator\n\t\toverflowItems.forEach((item, idx) => {\n\t\t\tif (idx < separatorIdx && !item.isSeparator) {\n\t\t\t\tfoundPrevNonSeparatorItem = true;\n\t\t\t}\n\t\t\tif (idx > separatorIdx && !item.isSeparator) {\n\t\t\t\tfoundNextNonSeperatorItem = true;\n\t\t\t}\n\t\t});\n\n\t\treturn foundPrevNonSeparatorItem && foundNextNonSeperatorItem;\n\t}\n\n\t/**\n\t * Event Handlers\n\t */\n\n\tonOverflowPopoverClosed() {\n\t\tthis.popoverOpen = false;\n\t\tif (this.overflowButtonDOM) {\n\t\t\tthis.overflowButtonDOM.accessibilityAttributes.expanded = false;\n\t\t}\n\t}\n\n\tonOverflowPopoverOpened() {\n\t\tthis.popoverOpen = true;\n\t\tif (this.overflowButtonDOM) {\n\t\t\tthis.overflowButtonDOM.accessibilityAttributes.expanded = true;\n\t\t}\n\t}\n\n\tonResize() {\n\t\tif (!this.itemsWidth) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.closeOverflow();\n\t\tthis.processOverflowLayout();\n\t}\n\n\tonInteract(e: CustomEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tconst item = target.closest<ToolbarItem>(\".ui5-tb-item\") || target.closest<ToolbarItem>(\".ui5-tb-popover-item\");\n\n\t\tif (target === this.overflowButtonDOM) {\n\t\t\tthis.toggleOverflow();\n\t\t\treturn;\n\t\t}\n\n\t\tif (!item) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst refItemId = target.getAttribute(\"data-ui5-external-action-item-id\");\n\n\t\tif (refItemId) {\n\t\t\tconst abstractItem = this.getItemByID(refItemId);\n\t\t\tconst eventType = e.type;\n\t\t\tconst eventTypeNonPrefixed: string = e.type.replace(\"ui5-\", \"\");\n\t\t\tconst prevented = !abstractItem?.fireEvent(eventTypeNonPrefixed, e.detail, true);\n\t\t\tconst eventOptions = abstractItem?.subscribedEvents.get(eventType) || abstractItem?.subscribedEvents.get(eventTypeNonPrefixed);\n\n\t\t\tif (prevented || abstractItem?.preventOverflowClosing || eventOptions?.preventClosing) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.closeOverflow();\n\t\t}\n\t}\n\n\t/**\n\t * Private members\n\t */\n\n\tattachListeners() {\n\t\tconst popover = this.getOverflowPopover();\n\n\t\tthis.subscribedEvents.forEach((e: string) => {\n\t\t\tthis.itemsDOM?.addEventListener(e, this._onInteract);\n\t\t\tpopover?.addEventListener(e, this._onInteract);\n\t\t});\n\t}\n\n\tdetachListeners() {\n\t\tconst popover = this.getOverflowPopover();\n\n\t\tthis.subscribedEvents.forEach((e: string) => {\n\t\t\tthis.itemsDOM?.removeEventListener(e, this._onInteract);\n\t\t\tpopover?.removeEventListener(e, this._onInteract);\n\t\t});\n\t}\n\n\tonToolbarItemChange() {\n\t\t// some items were updated reset the cache and trigger a re-render\n\t\tthis.itemsToOverflow = [];\n\t\tthis.contentWidth = 0; // re-render\n\t}\n\n\tgetItemsInfo(items: Array<ToolbarItem>) {\n\t\treturn items.map((item: ToolbarItem) => {\n\t\t\tconst ElementClass = getRegisteredToolbarItem(item.constructor.name);\n\n\t\t\tif (!ElementClass) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst toolbarItem = {\n\t\t\t\ttoolbarTemplate: executeTemplate(ElementClass.toolbarTemplate, item),\n\t\t\t\ttoolbarPopoverTemplate: executeTemplate(ElementClass.toolbarPopoverTemplate, item),\n\t\t\t};\n\n\t\t\treturn toolbarItem;\n\t\t});\n\t}\n\n\tgetItemWidth(item: ToolbarItem): number {\n\t\t// Spacer width - always 0 for flexible spacers, so that they shrink, otherwise - measure the width normally\n\t\tif (item.ignoreSpace || item.isSeparator) {\n\t\t\treturn 0;\n\t\t}\n\t\tconst id: string = item._id;\n\t\t// Measure rendered width for spacers with width, and for normal items\n\t\tconst renderedItem = this.getRegisteredToolbarItemByID(id);\n\n\t\tlet itemWidth = 0;\n\n\t\tif (renderedItem) {\n\t\t\tconst ItemCSSStyleSet = getComputedStyle(renderedItem);\n\t\t\titemWidth = renderedItem.offsetWidth + parsePxValue(ItemCSSStyleSet, \"margin-inline-end\")\n\t\t\t\t+ parsePxValue(ItemCSSStyleSet, \"margin-inline-start\");\n\t\t} else {\n\t\t\titemWidth = this.getCachedItemWidth(id) || 0;\n\t\t}\n\n\t\treturn Math.ceil(itemWidth);\n\t}\n\n\tgetCachedItemWidth(id: string) {\n\t\treturn this.ITEMS_WIDTH_MAP.get(id);\n\t}\n\n\tgetItemByID(id: string) {\n\t\treturn this.items.find(item => item._id === id);\n\t}\n\n\tgetRegisteredToolbarItemByID(id: string): HTMLElement | null {\n\t\treturn this.itemsDOM!.querySelector(`[data-ui5-external-action-item-id=\"${id}\"]`);\n\t}\n}\n\nToolbar.define();\n\nexport default Toolbar;\n"]}
|
package/dist/ToolbarButton.d.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ButtonAccessibilityAttributes as ToolbarAccessibilityAttributes } from "./Button.js";
|
|
2
2
|
import ButtonDesign from "./types/ButtonDesign.js";
|
|
3
3
|
import ToolbarItem from "./ToolbarItem.js";
|
|
4
4
|
import type { IEventOptions } from "./ToolbarItem.js";
|
|
5
5
|
import ToolbarButtonTemplate from "./generated/templates/ToolbarButtonTemplate.lit.js";
|
|
6
6
|
import ToolbarPopoverButtonTemplate from "./generated/templates/ToolbarPopoverButtonTemplate.lit.js";
|
|
7
|
-
type AccessibilityAttributes = ButtonAccessibilityAttributes;
|
|
8
7
|
/**
|
|
9
8
|
* @class
|
|
10
9
|
*
|
|
@@ -71,25 +70,23 @@ declare class ToolbarButton extends ToolbarItem {
|
|
|
71
70
|
*/
|
|
72
71
|
accessibleNameRef: string;
|
|
73
72
|
/**
|
|
74
|
-
*
|
|
75
|
-
* for customization depending on the use case.
|
|
73
|
+
* Defines the additional accessibility attributes that will be applied to the component.
|
|
76
74
|
*
|
|
77
|
-
*
|
|
75
|
+
* The following fields are supported:
|
|
76
|
+
*
|
|
77
|
+
* - **expanded**: Indicates whether the button, or another grouping element it controls, is currently expanded or collapsed.
|
|
78
|
+
* Accepts the following string values: `true` or `false`
|
|
79
|
+
*
|
|
80
|
+
* - **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.
|
|
81
|
+
* Accepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.
|
|
82
|
+
*
|
|
83
|
+
* - **controls**: Identifies the element (or elements) whose contents or presence are controlled by the button element.
|
|
84
|
+
* Accepts a lowercase string value.
|
|
78
85
|
*
|
|
79
|
-
* - `expanded`: Indicates whether the button, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:
|
|
80
|
-
* - `true`
|
|
81
|
-
* - `false`
|
|
82
|
-
* - `hasPopup`: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button. Accepts the following string values:
|
|
83
|
-
* - `Dialog`
|
|
84
|
-
* - `Grid`
|
|
85
|
-
* - `ListBox`
|
|
86
|
-
* - `Menu`
|
|
87
|
-
* - `Tree`
|
|
88
|
-
* - `controls`: Identifies the element (or elements) whose contents or presence are controlled by the button element. Accepts a string value.
|
|
89
86
|
* @default {}
|
|
90
87
|
* @public
|
|
91
88
|
*/
|
|
92
|
-
accessibilityAttributes:
|
|
89
|
+
accessibilityAttributes: ToolbarAccessibilityAttributes;
|
|
93
90
|
/**
|
|
94
91
|
* Button text
|
|
95
92
|
* @public
|
|
@@ -114,4 +111,4 @@ declare class ToolbarButton extends ToolbarItem {
|
|
|
114
111
|
get subscribedEvents(): Map<string, IEventOptions>;
|
|
115
112
|
}
|
|
116
113
|
export default ToolbarButton;
|
|
117
|
-
export type {
|
|
114
|
+
export type { ToolbarAccessibilityAttributes, };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolbarButton.js","sourceRoot":"","sources":["../src/ToolbarButton.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,OAAO,MAAM,+CAA+C,CAAC;AACpE,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,OAAO,YAAY,MAAM,yBAAyB,CAAC;AAEnD,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C,OAAO,qBAAqB,MAAM,oDAAoD,CAAC;AACvF,OAAO,4BAA4B,MAAM,2DAA2D,CAAC;AAErG,OAAO,uBAAuB,MAAM,gDAAgD,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"ToolbarButton.js","sourceRoot":"","sources":["../src/ToolbarButton.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,OAAO,MAAM,+CAA+C,CAAC;AACpE,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,OAAO,YAAY,MAAM,yBAAyB,CAAC;AAEnD,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C,OAAO,qBAAqB,MAAM,oDAAoD,CAAC;AACvF,OAAO,4BAA4B,MAAM,2DAA2D,CAAC;AAErG,OAAO,uBAAuB,MAAM,gDAAgD,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;;;;;;;GAcG;AAgBH,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,WAAW;IAsGtC,IAAI,MAAM;QACT,OAAO;YACN,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc;SAC9C,CAAC;IACH,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,KAAK,eAAe;QACzB,OAAO,qBAAqB,CAAC;IAC9B,CAAC;IAED,MAAM,KAAK,sBAAsB;QAChC,OAAO,4BAA4B,CAAC;IACrC,CAAC;IAED,IAAI,gBAAgB;QACnB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5C,OAAO,GAAG,CAAC;IACZ,CAAC;CACD,CAAA;AArHA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;+CACT;AAQnB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,OAAO,EAAE,CAAC;6CAC1C;AAW3B;IADC,QAAQ,EAAE;2CACG;AAQd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;8CACV;AAUlB;IADC,QAAQ,EAAE;8CACM;AAQjB;IADC,QAAQ,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;qDACd;AAQxB;IADC,QAAQ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;wDACJ;AAoB3B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;8DAC8B;AAQzD;IADC,QAAQ,EAAE;2CACG;AAUd;IADC,QAAQ,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;4CAClB;AApGV,aAAa;IAflB,aAAa,CAAC;QACd,GAAG,EAAE,oBAAoB;QACzB,YAAY,EAAE,CAAC,MAAM,CAAC;QACtB,MAAM,EAAE,uBAAuB;KAC/B,CAAC;IAEF;;;;;;;OAOG;;IACF,KAAK,CAAC,OAAO,CAAC;GACT,aAAa,CA8HlB;AAED,mBAAmB,CAAC,aAAa,CAAC,CAAC;AAEnC,aAAa,CAAC,MAAM,EAAE,CAAC;AAEvB,eAAe,aAAa,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport CSSSize from \"@ui5/webcomponents-base/dist/types/CSSSize.js\";\nimport Button from \"./Button.js\";\nimport type { ButtonAccessibilityAttributes as ToolbarAccessibilityAttributes } from \"./Button.js\";\nimport ButtonDesign from \"./types/ButtonDesign.js\";\n\nimport ToolbarItem from \"./ToolbarItem.js\";\nimport type { IEventOptions } from \"./ToolbarItem.js\";\nimport ToolbarButtonTemplate from \"./generated/templates/ToolbarButtonTemplate.lit.js\";\nimport ToolbarPopoverButtonTemplate from \"./generated/templates/ToolbarPopoverButtonTemplate.lit.js\";\n\nimport ToolbarButtonPopoverCss from \"./generated/themes/ToolbarButtonPopover.css.js\";\n\nimport { registerToolbarItem } from \"./ToolbarRegistry.js\";\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-toolbar-button` represents an abstract action,\n * used in the `ui5-toolbar`.\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/ToolbarButton.js\";`\n * @constructor\n * @abstract\n * @extends ToolbarItem\n * @public\n * @since 1.17.0\n */\n@customElement({\n\ttag: \"ui5-toolbar-button\",\n\tdependencies: [Button],\n\tstyles: ToolbarButtonPopoverCss,\n})\n\n/**\n * Fired when the component is activated either with a\n * mouse/tap or by using the Enter or Space key.\n *\n * **Note:** The event will not be fired if the `disabled`\n * property is set to `true`.\n * @public\n */\n@event(\"click\")\nclass ToolbarButton extends ToolbarItem {\n\t/**\n\t * Defines if the action is disabled.\n\t *\n\t * **Note:** a disabled action can't be pressed or focused, and it is not in the tab chain.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the action design.\n\t * @default \"Default\"\n\t * @public\n\t */\n\t@property({ type: ButtonDesign, defaultValue: ButtonDesign.Default })\n\tdesign!: `${ButtonDesign}`;\n\n\t/**\n\t * Defines the `icon` source URI.\n\t *\n\t * **Note:** SAP-icons font provides numerous buil-in icons. To find all the available icons, see the\n\t * [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ticon!: string;\n\n\t/**\n\t * Defines whether the icon should be displayed after the component text.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\ticonEnd!: boolean;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t *\n\t * **Note:** A tooltip attribute should be provided for icon-only buttons, in order to represent their exact meaning/function.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ttooltip!: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ defaultValue: undefined })\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property({ defaultValue: \"\" })\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the additional accessibility attributes that will be applied to the component.\n\t *\n\t * The following fields are supported:\n\t *\n\t * - **expanded**: Indicates whether the button, or another grouping element it controls, is currently expanded or collapsed.\n\t * Accepts the following string values: `true` or `false`\n\t *\n\t * - **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.\n\t * Accepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.\n\t *\n\t * - **controls**: Identifies the element (or elements) whose contents or presence are controlled by the button element.\n\t * Accepts a lowercase string value.\n\t *\n\t * @default {}\n\t * @public\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes!: ToolbarAccessibilityAttributes;\n\n\t/**\n\t * Button text\n\t * @public\n\t * @default \"\"\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Defines the width of the button.\n\t *\n\t * **Note:** all CSS sizes are supported - 'percentage', 'px', 'rem', 'auto', etc.\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ validator: CSSSize })\n\twidth?: string;\n\n\tget styles() {\n\t\treturn {\n\t\t\twidth: this.width,\n\t\t\tdisplay: this.hidden ? \"none\" : \"inline-block\",\n\t\t};\n\t}\n\n\tget containsText() {\n\t\treturn true;\n\t}\n\n\tstatic get toolbarTemplate() {\n\t\treturn ToolbarButtonTemplate;\n\t}\n\n\tstatic get toolbarPopoverTemplate() {\n\t\treturn ToolbarPopoverButtonTemplate;\n\t}\n\n\tget subscribedEvents(): Map<string, IEventOptions> {\n\t\tconst map = new Map();\n\t\tmap.set(\"click\", { preventClosing: false });\n\t\treturn map;\n\t}\n}\n\nregisterToolbarItem(ToolbarButton);\n\nToolbarButton.define();\n\nexport default ToolbarButton;\n\nexport type {\n\tToolbarAccessibilityAttributes,\n};\n"]}
|
package/dist/Tree.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import DropIndicator from "./DropIndicator.js";
|
|
|
4
4
|
import type TreeItemBase from "./TreeItemBase.js";
|
|
5
5
|
import TreeList from "./TreeList.js";
|
|
6
6
|
import ListSelectionMode from "./types/ListSelectionMode.js";
|
|
7
|
+
import ListAccessibleRole from "./types/ListAccessibleRole.js";
|
|
7
8
|
import type { TreeItemBaseToggleEventDetail, TreeItemBaseStepInEventDetail, TreeItemBaseStepOutEventDetail } from "./TreeItemBase.js";
|
|
8
9
|
import type { ListItemClickEventDetail, ListItemDeleteEventDetail, ListItemFocusEventDetail, ListSelectionChangeEventDetail } from "./List.js";
|
|
9
10
|
type TreeMoveEventDetail = {
|
|
@@ -115,13 +116,6 @@ declare class Tree extends UI5Element {
|
|
|
115
116
|
* @since 1.8.0
|
|
116
117
|
*/
|
|
117
118
|
accessibleNameRef: string;
|
|
118
|
-
/**
|
|
119
|
-
* Defines the description for the accessible role of the component.
|
|
120
|
-
* @protected
|
|
121
|
-
* @default undefined
|
|
122
|
-
* @since 1.10.0
|
|
123
|
-
*/
|
|
124
|
-
accessibleRoleDescription?: string;
|
|
125
119
|
/**
|
|
126
120
|
* Defines the items of the component. Tree items may have other tree items as children.
|
|
127
121
|
*
|
|
@@ -143,7 +137,7 @@ declare class Tree extends UI5Element {
|
|
|
143
137
|
onAfterRendering(): void;
|
|
144
138
|
get dropIndicatorDOM(): DropIndicator | null;
|
|
145
139
|
get list(): TreeList;
|
|
146
|
-
get _role():
|
|
140
|
+
get _role(): ListAccessibleRole;
|
|
147
141
|
get _label(): string | undefined;
|
|
148
142
|
get _hasHeader(): boolean;
|
|
149
143
|
_ondragenter(e: DragEvent): void;
|
package/dist/Tree.js
CHANGED
|
@@ -20,6 +20,7 @@ import TreeItem from "./TreeItem.js";
|
|
|
20
20
|
import TreeItemCustom from "./TreeItemCustom.js";
|
|
21
21
|
import TreeList from "./TreeList.js";
|
|
22
22
|
import ListSelectionMode from "./types/ListSelectionMode.js";
|
|
23
|
+
import ListAccessibleRole from "./types/ListAccessibleRole.js";
|
|
23
24
|
// Template
|
|
24
25
|
import TreeTemplate from "./generated/templates/TreeTemplate.lit.js";
|
|
25
26
|
// Styles
|
|
@@ -89,7 +90,7 @@ let Tree = class Tree extends UI5Element {
|
|
|
89
90
|
return this.getDomRef();
|
|
90
91
|
}
|
|
91
92
|
get _role() {
|
|
92
|
-
return
|
|
93
|
+
return ListAccessibleRole.Tree;
|
|
93
94
|
}
|
|
94
95
|
get _label() {
|
|
95
96
|
return getEffectiveAriaLabelText(this);
|
|
@@ -296,9 +297,6 @@ __decorate([
|
|
|
296
297
|
__decorate([
|
|
297
298
|
property()
|
|
298
299
|
], Tree.prototype, "accessibleNameRef", void 0);
|
|
299
|
-
__decorate([
|
|
300
|
-
property({ defaultValue: undefined, noAttribute: true })
|
|
301
|
-
], Tree.prototype, "accessibleRoleDescription", void 0);
|
|
302
300
|
__decorate([
|
|
303
301
|
slot({ type: HTMLElement, invalidateOnChildChange: true, "default": true })
|
|
304
302
|
], Tree.prototype, "items", void 0);
|