@ui5/webcomponents 1.13.0-rc.3 → 1.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/dist/Avatar.d.ts +9 -3
- package/dist/Avatar.js +29 -10
- package/dist/Avatar.js.map +1 -1
- package/dist/AvatarGroup.d.ts +1 -1
- package/dist/AvatarGroup.js.map +1 -1
- package/dist/Button.d.ts +6 -2
- package/dist/Button.js.map +1 -1
- package/dist/Card.d.ts +5 -7
- package/dist/Card.js +3 -6
- package/dist/Card.js.map +1 -1
- package/dist/CardHeader.d.ts +1 -0
- package/dist/CardHeader.js +1 -0
- package/dist/CardHeader.js.map +1 -1
- package/dist/ComboBoxItem.d.ts +1 -1
- package/dist/ComboBoxItem.js.map +1 -1
- package/dist/DateComponentBase.d.ts +1 -1
- package/dist/DateRangePicker.d.ts +1 -1
- package/dist/Input.d.ts +5 -0
- package/dist/Input.js +5 -0
- package/dist/Input.js.map +1 -1
- package/dist/Interfaces.d.ts +9 -1
- package/dist/Interfaces.js +9 -1
- package/dist/Interfaces.js.map +1 -1
- package/dist/Link.d.ts +4 -1
- package/dist/Link.js.map +1 -1
- package/dist/ListItem.d.ts +8 -0
- package/dist/ListItem.js.map +1 -1
- package/dist/SliderBase.d.ts +7 -1
- package/dist/SliderBase.js.map +1 -1
- package/dist/Tab.d.ts +9 -3
- package/dist/Tab.js +14 -1
- package/dist/Tab.js.map +1 -1
- package/dist/TabSeparator.d.ts +4 -2
- package/dist/Table.d.ts +1 -1
- package/dist/Table.js +1 -0
- package/dist/Table.js.map +1 -1
- package/dist/TimePicker.d.ts +1 -1
- package/dist/TimePickerBase.d.ts +1 -1
- package/dist/TimeSelection.d.ts +1 -1
- package/dist/api.json +1 -1
- package/dist/assets/parameters-bundle.css.0910d303.js +1 -0
- package/dist/assets/parameters-bundle.css.0c80e05a.js +1 -0
- package/dist/assets/parameters-bundle.css.2480d334.js +1 -0
- package/dist/assets/parameters-bundle.css.4cf7b367.js +1 -0
- package/dist/assets/parameters-bundle.css.64a1fcb3.js +1 -0
- package/dist/assets/parameters-bundle.css.691f8760.js +1 -0
- package/dist/assets/parameters-bundle.css.731f329b.js +1 -0
- package/dist/assets/parameters-bundle.css.8a87377e.js +1 -0
- package/dist/assets/parameters-bundle.css.a0b1bee1.js +1 -0
- package/dist/assets/parameters-bundle.css.b06aacf3.js +1 -0
- package/dist/assets/parameters-bundle.css.b8d253d9.js +1 -0
- package/dist/assets/parameters-bundle.css.e59780e1.js +1 -0
- package/dist/assets/test/pages/{ComboBox.html.fe2828f4.js → ComboBox.html.cf015503.js} +1 -1
- package/dist/assets/test/pages/{Icon.html.d90a42c2.js → Icon.html.89db7569.js} +1 -1
- package/dist/assets/test/pages/{Label.html.e24cbd2c.js → Label.html.fecdf0ce.js} +1 -1
- package/dist/assets/test/pages/{Popups.html.cc7082c1.js → Popups.html.ab9c99cd.js} +1 -1
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/css/themes/Card.css +1 -1
- package/dist/css/themes/ComboBox.css +1 -1
- package/dist/css/themes/FileUploader.css +1 -1
- package/dist/css/themes/Input.css +1 -1
- package/dist/css/themes/MultiComboBox.css +1 -1
- package/dist/css/themes/Select.css +1 -1
- package/dist/css/themes/StepInput.css +1 -1
- package/dist/css/themes/TabInStrip.css +1 -1
- package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_belize_hcw/parameters-bundle.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_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
- package/dist/custom-elements.json +1 -1
- package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.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_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_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/templates/AvatarGroupTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/AvatarGroupTemplate.lit.js +6 -8
- package/dist/generated/templates/AvatarGroupTemplate.lit.js.map +1 -0
- package/dist/generated/templates/AvatarTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/AvatarTemplate.lit.js +8 -11
- package/dist/generated/templates/AvatarTemplate.lit.js.map +1 -0
- package/dist/generated/templates/BadgeTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/BadgeTemplate.lit.js +5 -7
- package/dist/generated/templates/BadgeTemplate.lit.js.map +1 -0
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +5 -7
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/BreadcrumbsTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +6 -8
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +1 -0
- package/dist/generated/templates/BusyIndicatorTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -9
- package/dist/generated/templates/BusyIndicatorTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ButtonTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ButtonTemplate.lit.js +6 -8
- package/dist/generated/templates/ButtonTemplate.lit.js.map +1 -0
- package/dist/generated/templates/CalendarHeaderTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -8
- package/dist/generated/templates/CalendarHeaderTemplate.lit.js.map +1 -0
- package/dist/generated/templates/CalendarTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/CalendarTemplate.lit.js +4 -6
- package/dist/generated/templates/CalendarTemplate.lit.js.map +1 -0
- package/dist/generated/templates/CardHeaderTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/CardHeaderTemplate.lit.js +9 -11
- package/dist/generated/templates/CardHeaderTemplate.lit.js.map +1 -0
- package/dist/generated/templates/CardTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/CardTemplate.lit.js +5 -7
- package/dist/generated/templates/CardTemplate.lit.js.map +1 -0
- package/dist/generated/templates/CarouselTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/CarouselTemplate.lit.js +13 -15
- package/dist/generated/templates/CarouselTemplate.lit.js.map +1 -0
- package/dist/generated/templates/CheckBoxTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -9
- package/dist/generated/templates/CheckBoxTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ColorPaletteDialogTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +4 -6
- package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ColorPaletteItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +4 -6
- package/dist/generated/templates/ColorPaletteItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +5 -7
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ColorPaletteTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ColorPaletteTemplate.lit.js +9 -11
- package/dist/generated/templates/ColorPaletteTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ColorPickerTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ColorPickerTemplate.lit.js +4 -6
- package/dist/generated/templates/ColorPickerTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +22 -24
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ComboBoxTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ComboBoxTemplate.lit.js +7 -9
- package/dist/generated/templates/ComboBoxTemplate.lit.js.map +1 -0
- package/dist/generated/templates/CustomListItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/CustomListItemTemplate.lit.js +19 -21
- package/dist/generated/templates/CustomListItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -9
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/DatePickerTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/DatePickerTemplate.lit.js +6 -8
- package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -0
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +9 -11
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/DayPickerTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/DayPickerTemplate.lit.js +13 -15
- package/dist/generated/templates/DayPickerTemplate.lit.js.map +1 -0
- package/dist/generated/templates/DialogTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/DialogTemplate.lit.js +10 -12
- package/dist/generated/templates/DialogTemplate.lit.js.map +1 -0
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +8 -10
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/FileUploaderTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -9
- package/dist/generated/templates/FileUploaderTemplate.lit.js.map +1 -0
- package/dist/generated/templates/GroupHeaderListItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -6
- package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/IconTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/IconTemplate.lit.js +11 -10
- package/dist/generated/templates/IconTemplate.lit.js.map +1 -0
- package/dist/generated/templates/InputPopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -26
- package/dist/generated/templates/InputPopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/InputTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/InputTemplate.lit.js +9 -11
- package/dist/generated/templates/InputTemplate.lit.js.map +1 -0
- package/dist/generated/templates/LabelTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/LabelTemplate.lit.js +4 -6
- package/dist/generated/templates/LabelTemplate.lit.js.map +1 -0
- package/dist/generated/templates/LinkTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/LinkTemplate.lit.js +5 -7
- package/dist/generated/templates/LinkTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ListItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ListItemTemplate.lit.js +19 -21
- package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ListTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ListTemplate.lit.js +12 -14
- package/dist/generated/templates/ListTemplate.lit.js.map +1 -0
- package/dist/generated/templates/MenuTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/MenuTemplate.lit.js +14 -16
- package/dist/generated/templates/MenuTemplate.lit.js.map +1 -0
- package/dist/generated/templates/MessageStripTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/MessageStripTemplate.lit.js +8 -10
- package/dist/generated/templates/MessageStripTemplate.lit.js.map +1 -0
- package/dist/generated/templates/MonthPickerTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/MonthPickerTemplate.lit.js +7 -9
- package/dist/generated/templates/MonthPickerTemplate.lit.js.map +1 -0
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +27 -29
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/MultiComboBoxTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js +9 -11
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js.map +1 -0
- package/dist/generated/templates/MultiInputTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/MultiInputTemplate.lit.js +13 -15
- package/dist/generated/templates/MultiInputTemplate.lit.js.map +1 -0
- package/dist/generated/templates/PanelTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/PanelTemplate.lit.js +10 -12
- package/dist/generated/templates/PanelTemplate.lit.js.map +1 -0
- package/dist/generated/templates/PopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/PopoverTemplate.lit.js +9 -11
- package/dist/generated/templates/PopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +4 -6
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js.map +1 -0
- package/dist/generated/templates/PopupTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/PopupTemplate.lit.js +4 -6
- package/dist/generated/templates/PopupTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ProgressIndicatorTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +14 -16
- package/dist/generated/templates/ProgressIndicatorTemplate.lit.js.map +1 -0
- package/dist/generated/templates/RadioButtonTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/RadioButtonTemplate.lit.js +10 -9
- package/dist/generated/templates/RadioButtonTemplate.lit.js.map +1 -0
- package/dist/generated/templates/RangeSliderTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -15
- package/dist/generated/templates/RangeSliderTemplate.lit.js.map +1 -0
- package/dist/generated/templates/RatingIndicatorTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/RatingIndicatorTemplate.lit.js +13 -15
- package/dist/generated/templates/RatingIndicatorTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -18
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +5 -7
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SegmentedButtonTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -6
- package/dist/generated/templates/SegmentedButtonTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SelectPopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -22
- package/dist/generated/templates/SelectPopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SelectTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/SelectTemplate.lit.js +6 -8
- package/dist/generated/templates/SelectTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SliderBaseTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -13
- package/dist/generated/templates/SliderBaseTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SliderTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/SliderTemplate.lit.js +12 -14
- package/dist/generated/templates/SliderTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SplitButtonTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/SplitButtonTemplate.lit.js +5 -7
- package/dist/generated/templates/SplitButtonTemplate.lit.js.map +1 -0
- package/dist/generated/templates/StandardListItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/StandardListItemTemplate.lit.js +29 -31
- package/dist/generated/templates/StandardListItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/StepInputTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/StepInputTemplate.lit.js +7 -9
- package/dist/generated/templates/StepInputTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SuggestionListItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js +32 -34
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SwitchTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/SwitchTemplate.lit.js +8 -10
- package/dist/generated/templates/SwitchTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +5 -7
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TabContainerTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TabContainerTemplate.lit.js +14 -16
- package/dist/generated/templates/TabContainerTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TabInOverflowTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TabInOverflowTemplate.lit.js +9 -11
- package/dist/generated/templates/TabInOverflowTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TabInStripTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TabInStripTemplate.lit.js +11 -14
- package/dist/generated/templates/TabInStripTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +4 -6
- package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TabSeparatorInStripTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +4 -6
- package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TabTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TabTemplate.lit.js +5 -7
- package/dist/generated/templates/TabTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TableCellTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TableCellTemplate.lit.js +4 -6
- package/dist/generated/templates/TableCellTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TableColumnTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TableColumnTemplate.lit.js +4 -6
- package/dist/generated/templates/TableColumnTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TableGroupRowTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TableGroupRowTemplate.lit.js +4 -6
- package/dist/generated/templates/TableGroupRowTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TableRowTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TableRowTemplate.lit.js +15 -17
- package/dist/generated/templates/TableRowTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TableTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TableTemplate.lit.js +14 -16
- package/dist/generated/templates/TableTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +8 -10
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TextAreaTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TextAreaTemplate.lit.js +8 -10
- package/dist/generated/templates/TextAreaTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +4 -6
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TimePickerTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TimePickerTemplate.lit.js +6 -8
- package/dist/generated/templates/TimePickerTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TimeSelectionTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TimeSelectionTemplate.lit.js +8 -10
- package/dist/generated/templates/TimeSelectionTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TitleTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TitleTemplate.lit.js +10 -12
- package/dist/generated/templates/TitleTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ToastTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ToastTemplate.lit.js +5 -7
- package/dist/generated/templates/ToastTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ToggleButtonTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -8
- package/dist/generated/templates/ToggleButtonTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TokenTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TokenTemplate.lit.js +7 -9
- package/dist/generated/templates/TokenTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +9 -11
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TokenizerTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TokenizerTemplate.lit.js +6 -8
- package/dist/generated/templates/TokenizerTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TreeItemBaseTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TreeItemBaseTemplate.lit.js +23 -25
- package/dist/generated/templates/TreeItemBaseTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TreeItemCustomTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TreeItemCustomTemplate.lit.js +23 -25
- package/dist/generated/templates/TreeItemCustomTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TreeItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TreeItemTemplate.lit.js +25 -27
- package/dist/generated/templates/TreeItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TreeTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TreeTemplate.lit.js +5 -7
- package/dist/generated/templates/TreeTemplate.lit.js.map +1 -0
- package/dist/generated/templates/WheelSliderTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/WheelSliderTemplate.lit.js +7 -9
- package/dist/generated/templates/WheelSliderTemplate.lit.js.map +1 -0
- package/dist/generated/templates/YearPickerTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/YearPickerTemplate.lit.js +7 -9
- package/dist/generated/templates/YearPickerTemplate.lit.js.map +1 -0
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Avatar.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/ComboBox.css.js +1 -1
- package/dist/generated/themes/ComboBox.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/Input.css.js +1 -1
- package/dist/generated/themes/Input.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/Select.css.js +1 -1
- package/dist/generated/themes/Select.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/TabInStrip.css.js +1 -1
- package/dist/generated/themes/TabInStrip.css.js.map +1 -1
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.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_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_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/test/pages/72override.html +1 -1
- package/dist/test/pages/AnimanitionOff.html +1 -1
- package/dist/test/pages/Avatar.html +1 -1
- package/dist/test/pages/AvatarGroup.html +1 -1
- package/dist/test/pages/Badge.html +1 -1
- package/dist/test/pages/Breadcrumbs.html +1 -1
- package/dist/test/pages/BusyIndicator.html +1 -1
- package/dist/test/pages/Button.html +1 -1
- package/dist/test/pages/Calendar.html +1 -1
- package/dist/test/pages/Card.html +1 -1
- package/dist/test/pages/Carousel.html +1 -1
- package/dist/test/pages/CheckBox.html +1 -1
- package/dist/test/pages/ColorPalette.html +1 -1
- package/dist/test/pages/ColorPalettePopover.html +1 -1
- package/dist/test/pages/ColorPicker.html +1 -1
- package/dist/test/pages/ComboBox.html +2 -2
- package/dist/test/pages/Components.html +1 -1
- package/dist/test/pages/CoreControls.html +1 -1
- package/dist/test/pages/CoreControls_exp.html +1 -1
- package/dist/test/pages/CustomCSS.html +1 -1
- package/dist/test/pages/DatePicker.html +1 -1
- package/dist/test/pages/DatePicker_test_page.html +1 -1
- package/dist/test/pages/DateRangePicker.html +1 -1
- package/dist/test/pages/DateTimePicker.html +1 -1
- package/dist/test/pages/DateTimePicker_Timezone.html +1 -1
- package/dist/test/pages/DayPicker.html +1 -1
- package/dist/test/pages/Dialog.html +1 -1
- package/dist/test/pages/DialogLifecycle.html +1 -1
- package/dist/test/pages/DialogSemantic.html +1 -1
- package/dist/test/pages/Eventing.html +1 -1
- package/dist/test/pages/F6Test1.html +1 -1
- package/dist/test/pages/F6Test2.html +1 -1
- package/dist/test/pages/F6Test3.html +1 -1
- package/dist/test/pages/F6Test4.html +1 -1
- package/dist/test/pages/F6Test5.html +1 -1
- package/dist/test/pages/F6Test6.html +1 -1
- package/dist/test/pages/F6Test7.html +1 -1
- package/dist/test/pages/FileUploader.html +1 -1
- package/dist/test/pages/FormComponents.html +1 -1
- package/dist/test/pages/FormSupport.html +1 -1
- package/dist/test/pages/HCB.html +1 -1
- package/dist/test/pages/Icon.html +2 -2
- package/dist/test/pages/Icon_and_theming.html +1 -1
- package/dist/test/pages/Icon_custom.html +1 -1
- package/dist/test/pages/Input.html +1 -1
- package/dist/test/pages/InputFieldLabels.html +1 -1
- package/dist/test/pages/InputFieldMinWidth.html +1 -1
- package/dist/test/pages/InputIcons.html +1 -1
- package/dist/test/pages/Input_quickview.html +1 -1
- package/dist/test/pages/InputsAlignment.html +1 -1
- package/dist/test/pages/InputsLazyLoading.html +1 -1
- package/dist/test/pages/ItemNavigation.html +1 -1
- package/dist/test/pages/Kitchen.html +1 -1
- package/dist/test/pages/Kitchen.openui5.html +1 -1
- package/dist/test/pages/Label.html +2 -2
- package/dist/test/pages/Link.html +1 -1
- package/dist/test/pages/List.html +1 -1
- package/dist/test/pages/ListGrowing_Button.html +1 -1
- package/dist/test/pages/ListGrowing_Scroll.html +1 -1
- package/dist/test/pages/List_keyboard_support.html +1 -1
- package/dist/test/pages/List_test_page.html +1 -1
- package/dist/test/pages/LitKeyFunction.html +1 -1
- package/dist/test/pages/MemoryLeak.html +1 -1
- package/dist/test/pages/Menu.html +1 -1
- package/dist/test/pages/MessagePage.html +1 -1
- package/dist/test/pages/MessageStrip.html +1 -1
- package/dist/test/pages/MultiComboBox.html +1 -1
- package/dist/test/pages/MultiInput.html +1 -1
- package/dist/test/pages/MultiInput_Suggestions.html +1 -1
- package/dist/test/pages/OpenUI5-second.html +1 -1
- package/dist/test/pages/OpenUI5.html +1 -1
- package/dist/test/pages/Panel.html +1 -1
- package/dist/test/pages/Popover.html +1 -1
- package/dist/test/pages/PopoverArrowBounds.html +1 -1
- package/dist/test/pages/Popups.html +2 -2
- package/dist/test/pages/ProgressIndicator.html +1 -1
- package/dist/test/pages/RTL.html +1 -1
- package/dist/test/pages/RadioButton.html +1 -1
- package/dist/test/pages/RangeSlider.html +1 -1
- package/dist/test/pages/RatingIndicator.html +1 -1
- package/dist/test/pages/ResizeHandler.html +1 -1
- package/dist/test/pages/ResponsivePopover.html +1 -1
- package/dist/test/pages/SegmentedButton.html +1 -1
- package/dist/test/pages/Select.html +1 -1
- package/dist/test/pages/Simple.html +1 -1
- package/dist/test/pages/Slider.html +1 -1
- package/dist/test/pages/SplitButton.html +1 -1
- package/dist/test/pages/StepInput.html +1 -1
- package/dist/test/pages/Switch.html +1 -1
- package/dist/test/pages/TabContainer.html +2 -2
- package/dist/test/pages/Table-perf-pure.html +1 -1
- package/dist/test/pages/Table-perf.html +1 -1
- package/dist/test/pages/Table.html +1 -1
- package/dist/test/pages/Table2.html +1 -1
- package/dist/test/pages/TableAllPopin.html +1 -1
- package/dist/test/pages/TableCustomStyling.html +1 -1
- package/dist/test/pages/TableGrouping.html +1 -1
- package/dist/test/pages/TableGrowingWithButton.html +1 -1
- package/dist/test/pages/TableGrowingWithScroll.html +1 -1
- package/dist/test/pages/TableSelection.html +1 -1
- package/dist/test/pages/TextArea.html +1 -1
- package/dist/test/pages/TimePicker.html +1 -1
- package/dist/test/pages/TimeSelection.html +1 -1
- package/dist/test/pages/Title.html +1 -1
- package/dist/test/pages/Toast.html +1 -1
- package/dist/test/pages/ToggleButton.html +1 -1
- package/dist/test/pages/Tree.html +1 -1
- package/dist/test/pages/WheelSlider_Test_Page.html +1 -1
- package/dist/test/pages/base/AriaLabelHelper.html +1 -1
- package/dist/test/pages/base/DOMObserver.html +1 -1
- package/dist/test/pages/base/IconCollection.html +1 -1
- package/dist/test/pages/base/IconCollectionInCustomTheme.html +1 -1
- package/dist/test/pages/base/InvisibleMessage.html +1 -1
- package/dist/test/pages/form.html +1 -1
- package/dist/test/pages/i18n-defaultLang.html +1 -1
- package/dist/test/pages/i18n-demo.html +1 -1
- package/package.json +7 -7
- package/src/Avatar.hbs +12 -6
- package/src/List.hbs +1 -1
- package/src/MonthPicker.hbs +0 -1
- package/src/MultiComboBox.hbs +0 -1
- package/src/TabInStrip.hbs +2 -4
- package/src/YearPicker.hbs +0 -1
- package/src/themes/Avatar.css +16 -0
- package/src/themes/Card.css +2 -2
- package/src/themes/FileUploader.css +5 -5
- package/src/themes/Input.css +13 -8
- package/src/themes/StepInput.css +5 -5
- package/src/themes/TabInStrip.css +6 -1
- package/src/themes/base/Input-parameters.css +1 -2
- package/src/themes/base/sizes-parameters.css +1 -1
- package/src/themes/sap_belize/Input-parameters.css +0 -1
- package/src/themes/sap_belize_hcb/Input-parameters.css +0 -1
- package/src/themes/sap_belize_hcw/Input-parameters.css +0 -1
- package/src/themes/sap_horizon/Input-parameters.css +0 -5
- package/src/themes/sap_horizon_dark/Input-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/Input-parameters.css +0 -5
- package/tsconfig.json +2 -1
- package/dist/assets/parameters-bundle.css.217b9808.js +0 -1
- package/dist/assets/parameters-bundle.css.46b7578e.js +0 -1
- package/dist/assets/parameters-bundle.css.750d2219.js +0 -1
- package/dist/assets/parameters-bundle.css.78ee4829.js +0 -1
- package/dist/assets/parameters-bundle.css.860290a0.js +0 -1
- package/dist/assets/parameters-bundle.css.8f1d575d.js +0 -1
- package/dist/assets/parameters-bundle.css.91b4958e.js +0 -1
- package/dist/assets/parameters-bundle.css.9b175fb5.js +0 -1
- package/dist/assets/parameters-bundle.css.a68d7143.js +0 -1
- package/dist/assets/parameters-bundle.css.d6e06337.js +0 -1
- package/dist/assets/parameters-bundle.css.d806367c.js +0 -1
- package/dist/assets/parameters-bundle.css.f65359ec.js +0 -1
- package/global.d.ts +0 -12
package/dist/Link.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.js","sourceRoot":"","sources":["../src/Link.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport { markEvent } from \"@ui5/webcomponents-base/dist/MarkedEvents.js\";\nimport LinkDesign from \"./types/LinkDesign.js\";\nimport WrappingType from \"./types/WrappingType.js\";\n\n// Template\nimport LinkTemplate from \"./generated/templates/LinkTemplate.lit.js\";\n\nimport { LINK_SUBTLE, LINK_EMPHASIZED } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport linkCss from \"./generated/themes/Link.css.js\";\n\ntype LinkClickEventDetail = {\n\taltKey: boolean;\n\tctrlKey: boolean;\n\tmetaKey: boolean;\n\tshiftKey: boolean;\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The <code>ui5-link</code> is a hyperlink component that is used to navigate to other\n * apps and web pages, or to trigger actions.\n * It is a clickable text element, visualized in such a way that it stands out\n * from the standard text.\n * On hover, it changes its style to an underlined text to provide additional feedback to the user.\n *\n *\n * <h3>Usage</h3>\n *\n * You can set the <code>ui5-link</code> to be enabled or disabled.\n * <br><br>\n * To create a visual hierarchy in large lists of links, you can set the less important links as\n * <code>Subtle</code> or the more important ones as <code>Emphasized</code>,\n * by using the <code>design</code> property.\n * <br><br>\n * If the <code>href</code> property is set, the link behaves as the HTML\n * anchor tag (<code><a><a/></code>) and opens the specified URL in the given target frame (<code>target</code> property).\n * To specify where the linked content is opened, you can use the <code>target</code> property.\n *\n * <h3>Responsive behavior</h3>\n *\n * If there is not enough space, the text of the <code>ui5-link</code> becomes truncated.\n * If the <code>wrappingType</code> property is set to <code>\"Normal\"</code>, the text is displayed\n * on several lines instead of being truncated.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Link\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Link\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-link\n * @public\n */\n@customElement({\n\ttag: \"ui5-link\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: LinkTemplate,\n\tstyles: linkCss,\n})\n/**\n * Fired when the component is triggered either with a mouse/tap\n * or by using the Enter key.\n *\n * @event sap.ui.webc.main.Link#click\n * @public\n * @allowPreventDefault\n * @param {Boolean} altKey Returns whether the \"ALT\" key was pressed when the event was triggered.\n * @param {Boolean} ctrlKey Returns whether the \"CTRL\" key was pressed when the event was triggered.\n * @param {Boolean} metaKey Returns whether the \"META\" key was pressed when the event was triggered.\n * @param {Boolean} shiftKey Returns whether the \"SHIFT\" key was pressed when the event was triggered.\n */\n@event(\"click\", {\n\tdetail: {\n\t\taltKey: { type: Boolean },\n\t\tctrlKey: { type: Boolean },\n\t\tmetaKey: { type: Boolean },\n\t\tshiftKey: { type: Boolean },\n\t},\n})\nclass Link extends UI5Element implements ITabbable {\n\t/**\n\t * Defines whether the component is disabled.\n\t * <br><br>\n\t * <b>Note:</b> When disabled, the click event cannot be triggered by the user.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Link.prototype.disabled\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the component href.\n\t * <br><br>\n\t * <b>Note:</b> Standard hyperlink behavior is supported.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.href\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\thref!: string;\n\n\t/**\n\t * Defines the component target.\n\t * <br><br>\n\t * <b>Notes:</b>\n\t *\n\t * <ul>\n\t * <li><code>_self</code></li>\n\t * <li><code>_top</code></li>\n\t * <li><code>_blank</code></li>\n\t * <li><code>_parent</code></li>\n\t * <li><code>_search</code></li>\n\t * </ul>\n\t *\n\t * <b>This property must only be used when the <code>href</code> property is set.</b>\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.target\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\ttarget!: string;\n\n\t/**\n\t * Defines the component design.\n\t * <br><br>\n\t * <b>Note:</b> Avaialble options are <code>Default</code>, <code>Subtle</code>, and <code>Emphasized</code>.\n\t *\n\t * @type {sap.ui.webc.main.types.LinkDesign}\n\t * @name sap.ui.webc.main.Link.prototype.design\n\t * @defaultvalue \"Default\"\n\t * @public\n\t */\n\t@property({ type: LinkDesign, defaultValue: LinkDesign.Default })\n\tdesign!: LinkDesign;\n\n\t/**\n\t * Defines how the text of a component will be displayed when there is not enough space.\n\t * Available options are:\n\t * <ul>\n\t * <li><code>None</code> - The text will be truncated with an ellipsis.</li>\n\t * <li><code>Normal</code> - The text will wrap. The words will not be broken based on hyphenation.</li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.main.types.WrappingType}\n\t * @name sap.ui.webc.main.Link.prototype.wrappingType\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: WrappingType, defaultValue: WrappingType.None })\n\twrappingType!: WrappingType;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleName\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.2.0\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 *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleNameRef\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the ARIA role of the component.\n\t *\n\t * <b>Note:</b> Use the \"button\" role in cases when navigation is not expected to occur and the href property is not defined.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleRole\n\t * @defaultvalue \"link\"\n\t * @public\n\t * @since 1.9.0\n\t */\n\t@property({ defaultValue: \"link\" })\n\taccessibleRole!: string;\n\n\t/**\n\t * An object of strings that defines several additional accessibility attribute values\n\t * for customization depending on the use case.\n\t *\n\t * It supports the following fields:\n\t *\n\t * <ul>\n\t * \t\t<li><code>expanded</code>: Indicates whether the anchor element, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:\n\t *\t\t\t<ul>\n\t *\t\t\t\t<li><code>true</code></li>\n\t *\t\t\t\t<li><code>false</code></li>\n\t *\t\t\t</ul>\n\t * \t\t</li>\n\t * \t\t<li><code>hasPopup</code>: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the anchor element. Accepts the following string values:\n\t * \t\t\t<ul>\n\t *\t\t\t\t<li><code>Dialog</code></li>\n\t *\t\t\t\t<li><code>Grid</code></li>\n\t *\t\t\t\t<li><code>ListBox</code></li>\n\t *\t\t\t\t<li><code>Menu</code></li>\n\t *\t\t\t\t<li><code>Tree</code></li>\n\t * \t\t\t</ul>\n\t * \t\t</li>\n\t * </ul>\n\t * @type {object}\n\t * @name sap.ui.webc.main.Link.prototype.accessibilityAttributes\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes!: object;\n\n\t@property({ noAttribute: true })\n\t_rel: string | undefined;\n\n\t@property({ noAttribute: true })\n\t_tabIndex!: string;\n\n\t/**\n\t * Indicates if the element is on focus.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused!: boolean\n\n\t/**\n\t * Defines the text of the component.\n\t * <br><b>Note:</b> Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t *\n\t * @type {Node[]}\n\t * @name sap.ui.webc.main.Link.prototype.default\n\t * @slot\n\t * @public\n\t */\n\n\t_dummyAnchor: HTMLAnchorElement;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._dummyAnchor = document.createElement(\"a\");\n\t}\n\n\tonBeforeRendering() {\n\t\tconst needsNoReferrer = this.target !== \"_self\"\n\t\t\t&& this.href\n\t\t\t&& this._isCrossOrigin();\n\n\t\tthis._rel = needsNoReferrer ? \"noreferrer noopener\" : undefined;\n\t}\n\n\t_isCrossOrigin() {\n\t\tconst loc = window.location;\n\n\t\tthis._dummyAnchor.href = this.href;\n\n\t\treturn !(this._dummyAnchor.hostname === loc.hostname\n\t\t\t&& this._dummyAnchor.port === loc.port\n\t\t\t&& this._dummyAnchor.protocol === loc.protocol);\n\t}\n\n\tget effectiveTabIndex() {\n\t\tif (this._tabIndex) {\n\t\t\treturn this._tabIndex;\n\t\t}\n\t\treturn (this.disabled || !this.textContent?.length) ? \"-1\" : \"0\";\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget hasLinkType() {\n\t\treturn this.design !== LinkDesign.Default;\n\t}\n\n\tstatic typeTextMappings(): Record<string, I18nText> {\n\t\treturn {\n\t\t\t\"Subtle\": LINK_SUBTLE,\n\t\t\t\"Emphasized\": LINK_EMPHASIZED,\n\t\t};\n\t}\n\n\tget linkTypeText() {\n\t\treturn Link.i18nBundle.getText(Link.typeTextMappings()[this.design]);\n\t}\n\n\tget parsedRef() {\n\t\treturn (this.href && this.href.length > 0) ? this.href : undefined;\n\t}\n\n\tget effectiveAccRole() {\n\t\treturn this.accessibleRole.toLowerCase();\n\t}\n\n\tstatic async onDefine() {\n\t\tLink.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\t_onclick(e: MouseEvent | KeyboardEvent) {\n\t\tconst {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t} = e;\n\n\t\te.stopImmediatePropagation();\n\t\tmarkEvent(e, \"link\");\n\n\t\tconst executeEvent = this.fireEvent<LinkClickEventDetail>(\"click\", {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t}, true);\n\n\t\tif (!executeEvent) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tmarkEvent(e, \"link\");\n\t\tthis.focused = true;\n\t}\n\n\t_onfocusout() {\n\t\tthis.focused = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isEnter(e) && !this.href) {\n\t\t\tthis._onclick(e);\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tmarkEvent(e, \"link\");\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (!isSpace(e)) {\n\t\t\tmarkEvent(e, \"link\");\n\t\t\treturn;\n\t\t}\n\n\t\tthis._onclick(e);\n\n\t\tif (this.href && !e.defaultPrevented) {\n\t\t\tconst customEvent = new MouseEvent(\"click\");\n\n\t\t\tcustomEvent.stopImmediatePropagation();\n\t\t\tthis.getDomRef()!.dispatchEvent(customEvent);\n\t\t}\n\t}\n}\n\nLink.define();\n\nexport default Link;\n\nexport type { LinkClickEventDetail };\n"]}
|
|
1
|
+
{"version":3,"file":"Link.js","sourceRoot":"","sources":["../src/Link.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport { markEvent } from \"@ui5/webcomponents-base/dist/MarkedEvents.js\";\nimport LinkDesign from \"./types/LinkDesign.js\";\nimport WrappingType from \"./types/WrappingType.js\";\n\n// Template\nimport LinkTemplate from \"./generated/templates/LinkTemplate.lit.js\";\n\nimport { LINK_SUBTLE, LINK_EMPHASIZED } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport linkCss from \"./generated/themes/Link.css.js\";\n\ntype LinkClickEventDetail = {\n\taltKey: boolean;\n\tctrlKey: boolean;\n\tmetaKey: boolean;\n\tshiftKey: boolean;\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The <code>ui5-link</code> is a hyperlink component that is used to navigate to other\n * apps and web pages, or to trigger actions.\n * It is a clickable text element, visualized in such a way that it stands out\n * from the standard text.\n * On hover, it changes its style to an underlined text to provide additional feedback to the user.\n *\n *\n * <h3>Usage</h3>\n *\n * You can set the <code>ui5-link</code> to be enabled or disabled.\n * <br><br>\n * To create a visual hierarchy in large lists of links, you can set the less important links as\n * <code>Subtle</code> or the more important ones as <code>Emphasized</code>,\n * by using the <code>design</code> property.\n * <br><br>\n * If the <code>href</code> property is set, the link behaves as the HTML\n * anchor tag (<code><a><a/></code>) and opens the specified URL in the given target frame (<code>target</code> property).\n * To specify where the linked content is opened, you can use the <code>target</code> property.\n *\n * <h3>Responsive behavior</h3>\n *\n * If there is not enough space, the text of the <code>ui5-link</code> becomes truncated.\n * If the <code>wrappingType</code> property is set to <code>\"Normal\"</code>, the text is displayed\n * on several lines instead of being truncated.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Link\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Link\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-link\n * @public\n */\n@customElement({\n\ttag: \"ui5-link\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: LinkTemplate,\n\tstyles: linkCss,\n})\n/**\n * Fired when the component is triggered either with a mouse/tap\n * or by using the Enter key.\n *\n * @event sap.ui.webc.main.Link#click\n * @public\n * @allowPreventDefault\n * @param {Boolean} altKey Returns whether the \"ALT\" key was pressed when the event was triggered.\n * @param {Boolean} ctrlKey Returns whether the \"CTRL\" key was pressed when the event was triggered.\n * @param {Boolean} metaKey Returns whether the \"META\" key was pressed when the event was triggered.\n * @param {Boolean} shiftKey Returns whether the \"SHIFT\" key was pressed when the event was triggered.\n */\n@event(\"click\", {\n\tdetail: {\n\t\taltKey: { type: Boolean },\n\t\tctrlKey: { type: Boolean },\n\t\tmetaKey: { type: Boolean },\n\t\tshiftKey: { type: Boolean },\n\t},\n})\nclass Link extends UI5Element implements ITabbable {\n\t/**\n\t * Defines whether the component is disabled.\n\t * <br><br>\n\t * <b>Note:</b> When disabled, the click event cannot be triggered by the user.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Link.prototype.disabled\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the component href.\n\t * <br><br>\n\t * <b>Note:</b> Standard hyperlink behavior is supported.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.href\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\thref!: string;\n\n\t/**\n\t * Defines the component target.\n\t * <br><br>\n\t * <b>Notes:</b>\n\t *\n\t * <ul>\n\t * <li><code>_self</code></li>\n\t * <li><code>_top</code></li>\n\t * <li><code>_blank</code></li>\n\t * <li><code>_parent</code></li>\n\t * <li><code>_search</code></li>\n\t * </ul>\n\t *\n\t * <b>This property must only be used when the <code>href</code> property is set.</b>\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.target\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\ttarget!: string;\n\n\t/**\n\t * Defines the component design.\n\t * <br><br>\n\t * <b>Note:</b> Avaialble options are <code>Default</code>, <code>Subtle</code>, and <code>Emphasized</code>.\n\t *\n\t * @type {sap.ui.webc.main.types.LinkDesign}\n\t * @name sap.ui.webc.main.Link.prototype.design\n\t * @defaultvalue \"Default\"\n\t * @public\n\t */\n\t@property({ type: LinkDesign, defaultValue: LinkDesign.Default })\n\tdesign!: LinkDesign;\n\n\t/**\n\t * Defines how the text of a component will be displayed when there is not enough space.\n\t * Available options are:\n\t * <ul>\n\t * <li><code>None</code> - The text will be truncated with an ellipsis.</li>\n\t * <li><code>Normal</code> - The text will wrap. The words will not be broken based on hyphenation.</li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.main.types.WrappingType}\n\t * @name sap.ui.webc.main.Link.prototype.wrappingType\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: WrappingType, defaultValue: WrappingType.None })\n\twrappingType!: WrappingType;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleName\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.2.0\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 *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleNameRef\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the ARIA role of the component.\n\t *\n\t * <b>Note:</b> Use the \"button\" role in cases when navigation is not expected to occur and the href property is not defined.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleRole\n\t * @defaultvalue \"link\"\n\t * @public\n\t * @since 1.9.0\n\t */\n\t@property({ defaultValue: \"link\" })\n\taccessibleRole!: string;\n\n\t/**\n\t * An object of strings that defines several additional accessibility attribute values\n\t * for customization depending on the use case.\n\t *\n\t * It supports the following fields:\n\t *\n\t * <ul>\n\t * \t\t<li><code>expanded</code>: Indicates whether the anchor element, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:\n\t *\t\t\t<ul>\n\t *\t\t\t\t<li><code>true</code></li>\n\t *\t\t\t\t<li><code>false</code></li>\n\t *\t\t\t</ul>\n\t * \t\t</li>\n\t * \t\t<li><code>hasPopup</code>: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the anchor element. Accepts the following string values:\n\t * \t\t\t<ul>\n\t *\t\t\t\t<li><code>Dialog</code></li>\n\t *\t\t\t\t<li><code>Grid</code></li>\n\t *\t\t\t\t<li><code>ListBox</code></li>\n\t *\t\t\t\t<li><code>Menu</code></li>\n\t *\t\t\t\t<li><code>Tree</code></li>\n\t * \t\t\t</ul>\n\t * \t\t</li>\n\t * </ul>\n\t * @type {object}\n\t * @name sap.ui.webc.main.Link.prototype.accessibilityAttributes\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes!: { expanded: \"true\" | \"false\", hasPopup: \"Dialog\" | \"Grid\" | \"ListBox\" | \"Menu\" | \"Tree\" };\n\n\t@property({ noAttribute: true })\n\t_rel: string | undefined;\n\n\t@property({ noAttribute: true })\n\t_tabIndex!: string;\n\n\t/**\n\t * Indicates if the element is on focus.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused!: boolean\n\n\t/**\n\t * Defines the text of the component.\n\t * <br><b>Note:</b> Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t *\n\t * @type {Node[]}\n\t * @name sap.ui.webc.main.Link.prototype.default\n\t * @slot\n\t * @public\n\t */\n\n\t_dummyAnchor: HTMLAnchorElement;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._dummyAnchor = document.createElement(\"a\");\n\t}\n\n\tonBeforeRendering() {\n\t\tconst needsNoReferrer = this.target !== \"_self\"\n\t\t\t&& this.href\n\t\t\t&& this._isCrossOrigin();\n\n\t\tthis._rel = needsNoReferrer ? \"noreferrer noopener\" : undefined;\n\t}\n\n\t_isCrossOrigin() {\n\t\tconst loc = window.location;\n\n\t\tthis._dummyAnchor.href = this.href;\n\n\t\treturn !(this._dummyAnchor.hostname === loc.hostname\n\t\t\t&& this._dummyAnchor.port === loc.port\n\t\t\t&& this._dummyAnchor.protocol === loc.protocol);\n\t}\n\n\tget effectiveTabIndex() {\n\t\tif (this._tabIndex) {\n\t\t\treturn this._tabIndex;\n\t\t}\n\t\treturn (this.disabled || !this.textContent?.length) ? \"-1\" : \"0\";\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget hasLinkType() {\n\t\treturn this.design !== LinkDesign.Default;\n\t}\n\n\tstatic typeTextMappings(): Record<string, I18nText> {\n\t\treturn {\n\t\t\t\"Subtle\": LINK_SUBTLE,\n\t\t\t\"Emphasized\": LINK_EMPHASIZED,\n\t\t};\n\t}\n\n\tget linkTypeText() {\n\t\treturn Link.i18nBundle.getText(Link.typeTextMappings()[this.design]);\n\t}\n\n\tget parsedRef() {\n\t\treturn (this.href && this.href.length > 0) ? this.href : undefined;\n\t}\n\n\tget effectiveAccRole() {\n\t\treturn this.accessibleRole.toLowerCase();\n\t}\n\n\tstatic async onDefine() {\n\t\tLink.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\t_onclick(e: MouseEvent | KeyboardEvent) {\n\t\tconst {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t} = e;\n\n\t\te.stopImmediatePropagation();\n\t\tmarkEvent(e, \"link\");\n\n\t\tconst executeEvent = this.fireEvent<LinkClickEventDetail>(\"click\", {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t}, true);\n\n\t\tif (!executeEvent) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tmarkEvent(e, \"link\");\n\t\tthis.focused = true;\n\t}\n\n\t_onfocusout() {\n\t\tthis.focused = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isEnter(e) && !this.href) {\n\t\t\tthis._onclick(e);\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tmarkEvent(e, \"link\");\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (!isSpace(e)) {\n\t\t\tmarkEvent(e, \"link\");\n\t\t\treturn;\n\t\t}\n\n\t\tthis._onclick(e);\n\n\t\tif (this.href && !e.defaultPrevented) {\n\t\t\tconst customEvent = new MouseEvent(\"click\");\n\n\t\t\tcustomEvent.stopImmediatePropagation();\n\t\t\tthis.getDomRef()!.dispatchEvent(customEvent);\n\t\t}\n\t}\n}\n\nLink.define();\n\nexport default Link;\n\nexport type { LinkClickEventDetail };\n"]}
|
package/dist/ListItem.d.ts
CHANGED
|
@@ -30,6 +30,12 @@ type AccInfo = {
|
|
|
30
30
|
ariaLabelRadioButton: string;
|
|
31
31
|
ariaSelectedText?: string;
|
|
32
32
|
ariaHaspopup?: HasPopup;
|
|
33
|
+
posinset?: number;
|
|
34
|
+
setsize?: number;
|
|
35
|
+
ariaSelected?: boolean;
|
|
36
|
+
ariaChecked?: boolean;
|
|
37
|
+
listItemAriaLabel?: string;
|
|
38
|
+
ariaOwns?: string;
|
|
33
39
|
};
|
|
34
40
|
/**
|
|
35
41
|
* @class
|
|
@@ -152,6 +158,8 @@ declare abstract class ListItem extends ListItemBase {
|
|
|
152
158
|
deactivateByKey: (e: KeyboardEvent) => void;
|
|
153
159
|
deactivate: () => void;
|
|
154
160
|
_ontouchstart: PassiveEventListenerObject;
|
|
161
|
+
accessibleName?: string;
|
|
162
|
+
indeterminate?: boolean;
|
|
155
163
|
static i18nBundle: I18nBundle;
|
|
156
164
|
constructor();
|
|
157
165
|
onBeforeRendering(): void;
|
package/dist/ListItem.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListItem.js","sourceRoot":"","sources":["../src/ListItem.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport { getEventMark } from \"@ui5/webcomponents-base/dist/MarkedEvents.js\";\nimport { isSpace, isEnter, isDelete } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { PassiveEventListenerObject } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/edit.js\";\nimport ListItemType from \"./types/ListItemType.js\";\nimport ListMode from \"./types/ListMode.js\";\nimport ListItemBase from \"./ListItemBase.js\";\nimport RadioButton from \"./RadioButton.js\";\nimport CheckBox from \"./CheckBox.js\";\nimport Button from \"./Button.js\";\nimport {\n\tDELETE,\n\tARIA_LABEL_LIST_ITEM_CHECKBOX,\n\tARIA_LABEL_LIST_ITEM_RADIO_BUTTON,\n\tLIST_ITEM_SELECTED,\n\tLIST_ITEM_NOT_SELECTED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport styles from \"./generated/themes/ListItem.css.js\";\nimport HasPopup from \"./types/HasPopup.js\";\n\n// Icons\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\n\ninterface IAccessibleListItem {\n\taccessibleName?: string;\n\taccessibleNameRef?: string;\n}\n\ntype SelectionRequestEventDetail = {\n\titem: ListItemBase,\n\tselectionComponentPressed: boolean,\n\tselected?: boolean,\n\tkey?: string,\n}\n\ntype PressEventDetail = {\n\titem: ListItem,\n\tselected: boolean,\n\tkey: string,\n}\n\ntype AccInfo = {\n\trole: string;\n\tariaExpanded?: boolean;\n\tariaLevel?: number;\n\tariaLabel: string;\n\tariaLabelRadioButton: string;\n\tariaSelectedText?: string;\n\tariaHaspopup?: HasPopup;\n}\n\n/**\n * @class\n * A class to serve as a base\n * for the <code>StandardListItem</code> and <code>CustomListItem</code> classes.\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.ListItem\n * @extends sap.ui.webc.main.ListItemBase\n * @public\n */\n@customElement({\n\tlanguageAware: true,\n\tstyles: [ListItemBase.styles, styles],\n\tdependencies: [\n\t\tButton,\n\t\tRadioButton,\n\t\tCheckBox,\n\t],\n})\n/**\n * Fired when the user clicks on the detail button when type is <code>Detail</code>.\n *\n * @event sap.ui.webc.main.ListItem#detail-click\n * @public\n */\n@event(\"detail-click\")\n@event(\"_press\")\n@event(\"_focused\")\n@event(\"_selection-requested\")\nabstract class ListItem extends ListItemBase {\n\t/**\n\t * Defines the visual indication and behavior of the list items.\n\t * Available options are <code>Active</code> (by default), <code>Inactive</code>, <code>Detail</code> and <code>Navigation</code>.\n\t * <br><br>\n\t * <b>Note:</b> When set to <code>Active</code> or <code>Navigation</code>, the item will provide visual response upon press and hover,\n\t * while with type <code>Inactive</code> and <code>Detail</code> - will not.\n\t *\n\t * @type {sap.ui.webc.main.types.ListItemType}\n\t * @name sap.ui.webc.main.ListItem.prototype.type\n\t * @defaultvalue \"Active\"\n\t * @public\n\t*/\n\t@property({ type: ListItemType, defaultValue: ListItemType.Active })\n\ttype!: ListItemType;\n\n\t/**\n\t * The navigated state of the list item.\n\t * If set to <code>true</code>, a navigation indicator is displayed at the end of the list item.\n\t *\n\t * @public\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.ListItem.prototype.navigated\n\t * @since 1.10.0\n\t */\n\t@property({ type: Boolean })\n\tnavigated!: boolean;\n\n\t/**\n\t * Indicates if the list item is active, e.g pressed down with the mouse or the keyboard keys.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.ListItem.prototype.active\n\t * @private\n\t*/\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t * @type {string}\n\t * @name sap.ui.webc.main.ListItem.prototype.title\n\t * @defaultvalue \"\"\n\t * @private\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\ttitle!: string;\n\n\t/**\n\t * Indicates if the list item is actionable, e.g has hover and pressed effects.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.ListItem.prototype.actionable\n\t * @private\n\t*/\n\t@property({ type: Boolean })\n\tactionable!: boolean;\n\n\t/**\n\t * Used to define the role of the list item.\n\t *\n\t * @private\n\t * @type {string}\n\t * @name sap.ui.webc.main.ListItem.prototype.role\n\t * @defaultvalue \"listitem\"\n\t * @since 1.0.0-rc.9\n\t *\n\t */\n\t@property({ defaultValue: \"listitem\" })\n\trole!: string;\n\n\t/**\n\t * Defines the description for the accessible role of the component.\n\t * @protected\n\t * @type {string}\n\t * @name sap.ui.webc.main.ListItem.prototype.accessibleRoleDescription\n\t * @defaultvalue undefined\n\t * @since 1.10.0\n\t */\n\t@property({ defaultValue: undefined, noAttribute: true })\n\taccessibleRoleDescription?: string;\n\n\t/**\n\t * Used to define the role of the list item.\n\t *\n\t * @private\n\t * @type {string}\n\t * @name sap.ui.webc.main.ListItem.prototype.accessibleRole\n\t * @defaultvalue \"\"\n\t * @since 1.3.0\n\t *\n\t */\n\t@property()\n\taccessibleRole!: string;\n\n\t@property({ type: ListMode, defaultValue: ListMode.None })\n\t_mode!: ListMode;\n\n\t/**\n\t * Defines the availability and type of interactive popup element that can be triggered by the component on which the property is set.\n\t * @type {sap.ui.webc.main.types.HasPopup}\n\t * @name sap.ui.webc.main.ListItem.prototype.ariaHaspopup\n\t * @since 1.10.0\n\t * @private\n\t */\n\t@property({ type: HasPopup, noAttribute: true })\n\tariaHaspopup?: HasPopup;\n\n\t@property({ type: Integer })\n\t_level?: number;\n\n\t/**\n\t * Used in UploadCollectionItem\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\tdisableDeleteButton!: boolean;\n\n\t/**\n\t * Defines the delete button, displayed in \"Delete\" mode.\n\t * <b>Note:</b> While the slot allows custom buttons, to match\n\t * design guidelines, please use the <code>ui5-button</code> component.\n\t * <b>Note:</b> When the slot is not present, a built-in delete button will be displayed.\n\t * @type {sap.ui.webc.main.IButton}\n\t * @name sap.ui.webc.main.ListItem.prototype.deleteButton\n\t * @since 1.9.0\n\t * @slot\n\t * @public\n\t */\n\t@slot()\n\tdeleteButton!: Array<HTMLElement>;\n\n\tdeactivateByKey: (e: KeyboardEvent) => void;\n\tdeactivate: () => void;\n\t_ontouchstart: PassiveEventListenerObject;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.deactivateByKey = (e: KeyboardEvent) => {\n\t\t\tif (isEnter(e)) {\n\t\t\t\tthis.deactivate();\n\t\t\t}\n\t\t};\n\n\t\tthis.deactivate = () => {\n\t\t\tif (this.active) {\n\t\t\t\tthis.active = false;\n\t\t\t}\n\t\t};\n\n\t\tconst handleTouchStartEvent = (e: TouchEvent) => {\n\t\t\tthis._onmousedown(e as unknown as MouseEvent);\n\t\t};\n\n\t\tthis._ontouchstart = {\n\t\t\thandleEvent: handleTouchStartEvent,\n\t\t\tpassive: true,\n\t\t};\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.actionable = (this.type === ListItemType.Active || this.type === ListItemType.Navigation) && (this._mode !== ListMode.Delete);\n\t}\n\n\tonEnterDOM() {\n\t\tdocument.addEventListener(\"mouseup\", this.deactivate);\n\t\tdocument.addEventListener(\"touchend\", this.deactivate);\n\t\tdocument.addEventListener(\"keyup\", this.deactivateByKey);\n\t}\n\n\tonExitDOM() {\n\t\tdocument.removeEventListener(\"mouseup\", this.deactivate);\n\t\tdocument.removeEventListener(\"keyup\", this.deactivateByKey);\n\t\tdocument.removeEventListener(\"touchend\", this.deactivate);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tsuper._onkeydown(e);\n\n\t\tconst itemActive = this.type === ListItemType.Active,\n\t\t\titemNavigated = this.typeNavigation;\n\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif ((isSpace(e) || isEnter(e)) && (itemActive || itemNavigated)) {\n\t\t\tthis.activate();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.fireItemPress(e);\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e) || isEnter(e)) {\n\t\t\tthis.deactivate();\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\tthis.fireItemPress(e);\n\t\t}\n\n\t\tif (this.modeDelete && isDelete(e)) {\n\t\t\tthis.onDelete();\n\t\t}\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tif (getEventMark(e) === \"button\") {\n\t\t\treturn;\n\t\t}\n\t\tthis.activate();\n\t}\n\n\t_onmouseup(e: MouseEvent) {\n\t\tif (getEventMark(e) === \"button\") {\n\t\t\treturn;\n\t\t}\n\t\tthis.deactivate();\n\t}\n\n\t_ontouchend(e: TouchEvent) {\n\t\tthis._onmouseup(e as unknown as MouseEvent);\n\t}\n\n\t_onfocusout() {\n\t\tsuper._onfocusout();\n\t\tthis.deactivate();\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tif (getEventMark(e) === \"button\") {\n\t\t\treturn;\n\t\t}\n\t\tthis.fireItemPress(e);\n\t}\n\n\t/*\n\t * Called when selection components in Single (ui5-radio-button)\n\t * and Multi (ui5-checkbox) selection modes are used.\n\t */\n\tonMultiSelectionComponentPress(e: MouseEvent) {\n\t\tif (this.isInactive) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent<SelectionRequestEventDetail>(\"_selection-requested\", { item: this, selected: (e.target as CheckBox).checked, selectionComponentPressed: true });\n\t}\n\n\tonSingleSelectionComponentPress(e: MouseEvent) {\n\t\tif (this.isInactive) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent<SelectionRequestEventDetail>(\"_selection-requested\", { item: this, selected: !(e.target as RadioButton).checked, selectionComponentPressed: true });\n\t}\n\n\tactivate() {\n\t\tif (this.type === ListItemType.Active || this.type === ListItemType.Navigation) {\n\t\t\tthis.active = true;\n\t\t}\n\t}\n\n\tonDelete() {\n\t\tthis.fireEvent<SelectionRequestEventDetail>(\"_selection-requested\", { item: this, selectionComponentPressed: false });\n\t}\n\n\tonDetailClick() {\n\t\tthis.fireEvent(\"detail-click\", { item: this, selected: this.selected });\n\t}\n\n\tfireItemPress(e: Event) {\n\t\tif (this.isInactive) {\n\t\t\treturn;\n\t\t}\n\t\tif (isEnter(e as KeyboardEvent)) {\n\t\t\te.preventDefault();\n\t\t}\n\t\tthis.fireEvent<PressEventDetail>(\"_press\", { item: this, selected: this.selected, key: (e as KeyboardEvent).key });\n\t}\n\n\tget isInactive() {\n\t\treturn this.type === ListItemType.Inactive || this.type === ListItemType.Detail;\n\t}\n\n\tget placeSelectionElementBefore() {\n\t\treturn this._mode === ListMode.MultiSelect\n\t\t\t|| this._mode === ListMode.SingleSelectBegin;\n\t}\n\n\tget placeSelectionElementAfter() {\n\t\treturn !this.placeSelectionElementBefore\n\t\t\t&& (this._mode === ListMode.SingleSelectEnd || this._mode === ListMode.Delete);\n\t}\n\n\tget modeSingleSelect() {\n\t\treturn [\n\t\t\tListMode.SingleSelectBegin,\n\t\t\tListMode.SingleSelectEnd,\n\t\t\tListMode.SingleSelect,\n\t\t].includes(this._mode);\n\t}\n\n\tget modeMultiSelect() {\n\t\treturn this._mode === ListMode.MultiSelect;\n\t}\n\n\tget modeDelete() {\n\t\treturn this._mode === ListMode.Delete;\n\t}\n\n\t/**\n\t * Used in UploadCollectionItem\n\t */\n\tget renderDeleteButton() {\n\t\treturn this.modeDelete;\n\t}\n\n\t/**\n\t * End\n\t */\n\n\tget typeDetail() {\n\t\treturn this.type === ListItemType.Detail;\n\t}\n\n\tget typeNavigation() {\n\t\treturn this.type === ListItemType.Navigation;\n\t}\n\n\tget typeActive() {\n\t\treturn this.type === ListItemType.Active;\n\t}\n\n\tget _ariaSelected() {\n\t\tif (this.modeMultiSelect || this.modeSingleSelect) {\n\t\t\treturn this.selected;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget ariaSelectedText() {\n\t\tlet ariaSelectedText;\n\n\t\t// Selected state needs to be supported separately since now the role mapping is list -> listitem[]\n\t\t// to avoid the issue of nesting interactive elements, ex. (option -> radio/checkbox);\n\t\t// The text is added to aria-describedby because as part of the aria-labelledby\n\t\t// the whole content of the item is readout when the aria-labelledby value is changed.\n\t\tif (this._ariaSelected !== undefined) {\n\t\t\tariaSelectedText = this._ariaSelected ? ListItem.i18nBundle.getText(LIST_ITEM_SELECTED) : ListItem.i18nBundle.getText(LIST_ITEM_NOT_SELECTED);\n\t\t}\n\n\t\treturn ariaSelectedText;\n\t}\n\n\tget deleteText() {\n\t\treturn ListItem.i18nBundle.getText(DELETE);\n\t}\n\n\tget hasDeleteButtonSlot() {\n\t\treturn !!this.deleteButton.length;\n\t}\n\n\tget _accessibleNameRef(): string {\n\t\tif ((this as IAccessibleListItem).accessibleName) {\n\t\t\t// accessibleName is set - return labels excluding content\n\t\t\treturn `${this._id}-invisibleText`;\n\t\t}\n\n\t\t// accessibleName is not set - return _accInfo.listItemAriaLabel including content\n\t\treturn `${this._id}-content ${this._id}-invisibleText`;\n\t}\n\n\tget _accInfo(): AccInfo {\n\t\treturn {\n\t\t\trole: this.accessibleRole || this.role,\n\t\t\tariaExpanded: undefined,\n\t\t\tariaLevel: this._level || undefined,\n\t\t\tariaLabel: ListItem.i18nBundle.getText(ARIA_LABEL_LIST_ITEM_CHECKBOX),\n\t\t\tariaLabelRadioButton: ListItem.i18nBundle.getText(ARIA_LABEL_LIST_ITEM_RADIO_BUTTON),\n\t\t\tariaSelectedText: this.ariaSelectedText,\n\t\t\tariaHaspopup: this.ariaHaspopup || undefined,\n\t\t};\n\t}\n\n\tget hasConfigurableMode() {\n\t\treturn true;\n\t}\n\n\tstatic async onDefine() {\n\t\tListItem.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nexport default ListItem;\nexport type {\n\tIAccessibleListItem,\n\tSelectionRequestEventDetail,\n\tPressEventDetail,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"ListItem.js","sourceRoot":"","sources":["../src/ListItem.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport { getEventMark } from \"@ui5/webcomponents-base/dist/MarkedEvents.js\";\nimport { isSpace, isEnter, isDelete } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { PassiveEventListenerObject } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/edit.js\";\nimport ListItemType from \"./types/ListItemType.js\";\nimport ListMode from \"./types/ListMode.js\";\nimport ListItemBase from \"./ListItemBase.js\";\nimport RadioButton from \"./RadioButton.js\";\nimport CheckBox from \"./CheckBox.js\";\nimport Button from \"./Button.js\";\nimport {\n\tDELETE,\n\tARIA_LABEL_LIST_ITEM_CHECKBOX,\n\tARIA_LABEL_LIST_ITEM_RADIO_BUTTON,\n\tLIST_ITEM_SELECTED,\n\tLIST_ITEM_NOT_SELECTED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport styles from \"./generated/themes/ListItem.css.js\";\nimport HasPopup from \"./types/HasPopup.js\";\n\n// Icons\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\n\ninterface IAccessibleListItem {\n\taccessibleName?: string;\n\taccessibleNameRef?: string;\n}\n\ntype SelectionRequestEventDetail = {\n\titem: ListItemBase,\n\tselectionComponentPressed: boolean,\n\tselected?: boolean,\n\tkey?: string,\n}\n\ntype PressEventDetail = {\n\titem: ListItem,\n\tselected: boolean,\n\tkey: string,\n}\n\ntype AccInfo = {\n\trole: string;\n\tariaExpanded?: boolean;\n\tariaLevel?: number;\n\tariaLabel: string;\n\tariaLabelRadioButton: string;\n\tariaSelectedText?: string;\n\tariaHaspopup?: HasPopup;\n\tposinset?: number;\n\tsetsize?: number;\n\tariaSelected?: boolean;\n\tariaChecked?: boolean;\n\tlistItemAriaLabel?: string;\n\tariaOwns?: string;\n}\n\n/**\n * @class\n * A class to serve as a base\n * for the <code>StandardListItem</code> and <code>CustomListItem</code> classes.\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.ListItem\n * @extends sap.ui.webc.main.ListItemBase\n * @public\n */\n@customElement({\n\tlanguageAware: true,\n\tstyles: [ListItemBase.styles, styles],\n\tdependencies: [\n\t\tButton,\n\t\tRadioButton,\n\t\tCheckBox,\n\t],\n})\n/**\n * Fired when the user clicks on the detail button when type is <code>Detail</code>.\n *\n * @event sap.ui.webc.main.ListItem#detail-click\n * @public\n */\n@event(\"detail-click\")\n@event(\"_press\")\n@event(\"_focused\")\n@event(\"_selection-requested\")\nabstract class ListItem extends ListItemBase {\n\t/**\n\t * Defines the visual indication and behavior of the list items.\n\t * Available options are <code>Active</code> (by default), <code>Inactive</code>, <code>Detail</code> and <code>Navigation</code>.\n\t * <br><br>\n\t * <b>Note:</b> When set to <code>Active</code> or <code>Navigation</code>, the item will provide visual response upon press and hover,\n\t * while with type <code>Inactive</code> and <code>Detail</code> - will not.\n\t *\n\t * @type {sap.ui.webc.main.types.ListItemType}\n\t * @name sap.ui.webc.main.ListItem.prototype.type\n\t * @defaultvalue \"Active\"\n\t * @public\n\t*/\n\t@property({ type: ListItemType, defaultValue: ListItemType.Active })\n\ttype!: ListItemType;\n\n\t/**\n\t * The navigated state of the list item.\n\t * If set to <code>true</code>, a navigation indicator is displayed at the end of the list item.\n\t *\n\t * @public\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.ListItem.prototype.navigated\n\t * @since 1.10.0\n\t */\n\t@property({ type: Boolean })\n\tnavigated!: boolean;\n\n\t/**\n\t * Indicates if the list item is active, e.g pressed down with the mouse or the keyboard keys.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.ListItem.prototype.active\n\t * @private\n\t*/\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t * @type {string}\n\t * @name sap.ui.webc.main.ListItem.prototype.title\n\t * @defaultvalue \"\"\n\t * @private\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\ttitle!: string;\n\n\t/**\n\t * Indicates if the list item is actionable, e.g has hover and pressed effects.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.ListItem.prototype.actionable\n\t * @private\n\t*/\n\t@property({ type: Boolean })\n\tactionable!: boolean;\n\n\t/**\n\t * Used to define the role of the list item.\n\t *\n\t * @private\n\t * @type {string}\n\t * @name sap.ui.webc.main.ListItem.prototype.role\n\t * @defaultvalue \"listitem\"\n\t * @since 1.0.0-rc.9\n\t *\n\t */\n\t@property({ defaultValue: \"listitem\" })\n\trole!: string;\n\n\t/**\n\t * Defines the description for the accessible role of the component.\n\t * @protected\n\t * @type {string}\n\t * @name sap.ui.webc.main.ListItem.prototype.accessibleRoleDescription\n\t * @defaultvalue undefined\n\t * @since 1.10.0\n\t */\n\t@property({ defaultValue: undefined, noAttribute: true })\n\taccessibleRoleDescription?: string;\n\n\t/**\n\t * Used to define the role of the list item.\n\t *\n\t * @private\n\t * @type {string}\n\t * @name sap.ui.webc.main.ListItem.prototype.accessibleRole\n\t * @defaultvalue \"\"\n\t * @since 1.3.0\n\t *\n\t */\n\t@property()\n\taccessibleRole!: string;\n\n\t@property({ type: ListMode, defaultValue: ListMode.None })\n\t_mode!: ListMode;\n\n\t/**\n\t * Defines the availability and type of interactive popup element that can be triggered by the component on which the property is set.\n\t * @type {sap.ui.webc.main.types.HasPopup}\n\t * @name sap.ui.webc.main.ListItem.prototype.ariaHaspopup\n\t * @since 1.10.0\n\t * @private\n\t */\n\t@property({ type: HasPopup, noAttribute: true })\n\tariaHaspopup?: HasPopup;\n\n\t@property({ type: Integer })\n\t_level?: number;\n\n\t/**\n\t * Used in UploadCollectionItem\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\tdisableDeleteButton!: boolean;\n\n\t/**\n\t * Defines the delete button, displayed in \"Delete\" mode.\n\t * <b>Note:</b> While the slot allows custom buttons, to match\n\t * design guidelines, please use the <code>ui5-button</code> component.\n\t * <b>Note:</b> When the slot is not present, a built-in delete button will be displayed.\n\t * @type {sap.ui.webc.main.IButton}\n\t * @name sap.ui.webc.main.ListItem.prototype.deleteButton\n\t * @since 1.9.0\n\t * @slot\n\t * @public\n\t */\n\t@slot()\n\tdeleteButton!: Array<HTMLElement>;\n\n\tdeactivateByKey: (e: KeyboardEvent) => void;\n\tdeactivate: () => void;\n\t_ontouchstart: PassiveEventListenerObject;\n\t// used in template, implemented in TreeItemBase\n\taccessibleName?: string;\n\t// used in ListItem template but implemented in TreeItemBase\n\tindeterminate?: boolean;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.deactivateByKey = (e: KeyboardEvent) => {\n\t\t\tif (isEnter(e)) {\n\t\t\t\tthis.deactivate();\n\t\t\t}\n\t\t};\n\n\t\tthis.deactivate = () => {\n\t\t\tif (this.active) {\n\t\t\t\tthis.active = false;\n\t\t\t}\n\t\t};\n\n\t\tconst handleTouchStartEvent = (e: TouchEvent) => {\n\t\t\tthis._onmousedown(e as unknown as MouseEvent);\n\t\t};\n\n\t\tthis._ontouchstart = {\n\t\t\thandleEvent: handleTouchStartEvent,\n\t\t\tpassive: true,\n\t\t};\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.actionable = (this.type === ListItemType.Active || this.type === ListItemType.Navigation) && (this._mode !== ListMode.Delete);\n\t}\n\n\tonEnterDOM() {\n\t\tdocument.addEventListener(\"mouseup\", this.deactivate);\n\t\tdocument.addEventListener(\"touchend\", this.deactivate);\n\t\tdocument.addEventListener(\"keyup\", this.deactivateByKey);\n\t}\n\n\tonExitDOM() {\n\t\tdocument.removeEventListener(\"mouseup\", this.deactivate);\n\t\tdocument.removeEventListener(\"keyup\", this.deactivateByKey);\n\t\tdocument.removeEventListener(\"touchend\", this.deactivate);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tsuper._onkeydown(e);\n\n\t\tconst itemActive = this.type === ListItemType.Active,\n\t\t\titemNavigated = this.typeNavigation;\n\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif ((isSpace(e) || isEnter(e)) && (itemActive || itemNavigated)) {\n\t\t\tthis.activate();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.fireItemPress(e);\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e) || isEnter(e)) {\n\t\t\tthis.deactivate();\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\tthis.fireItemPress(e);\n\t\t}\n\n\t\tif (this.modeDelete && isDelete(e)) {\n\t\t\tthis.onDelete();\n\t\t}\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tif (getEventMark(e) === \"button\") {\n\t\t\treturn;\n\t\t}\n\t\tthis.activate();\n\t}\n\n\t_onmouseup(e: MouseEvent) {\n\t\tif (getEventMark(e) === \"button\") {\n\t\t\treturn;\n\t\t}\n\t\tthis.deactivate();\n\t}\n\n\t_ontouchend(e: TouchEvent) {\n\t\tthis._onmouseup(e as unknown as MouseEvent);\n\t}\n\n\t_onfocusout() {\n\t\tsuper._onfocusout();\n\t\tthis.deactivate();\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tif (getEventMark(e) === \"button\") {\n\t\t\treturn;\n\t\t}\n\t\tthis.fireItemPress(e);\n\t}\n\n\t/*\n\t * Called when selection components in Single (ui5-radio-button)\n\t * and Multi (ui5-checkbox) selection modes are used.\n\t */\n\tonMultiSelectionComponentPress(e: MouseEvent) {\n\t\tif (this.isInactive) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent<SelectionRequestEventDetail>(\"_selection-requested\", { item: this, selected: (e.target as CheckBox).checked, selectionComponentPressed: true });\n\t}\n\n\tonSingleSelectionComponentPress(e: MouseEvent) {\n\t\tif (this.isInactive) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent<SelectionRequestEventDetail>(\"_selection-requested\", { item: this, selected: !(e.target as RadioButton).checked, selectionComponentPressed: true });\n\t}\n\n\tactivate() {\n\t\tif (this.type === ListItemType.Active || this.type === ListItemType.Navigation) {\n\t\t\tthis.active = true;\n\t\t}\n\t}\n\n\tonDelete() {\n\t\tthis.fireEvent<SelectionRequestEventDetail>(\"_selection-requested\", { item: this, selectionComponentPressed: false });\n\t}\n\n\tonDetailClick() {\n\t\tthis.fireEvent(\"detail-click\", { item: this, selected: this.selected });\n\t}\n\n\tfireItemPress(e: Event) {\n\t\tif (this.isInactive) {\n\t\t\treturn;\n\t\t}\n\t\tif (isEnter(e as KeyboardEvent)) {\n\t\t\te.preventDefault();\n\t\t}\n\t\tthis.fireEvent<PressEventDetail>(\"_press\", { item: this, selected: this.selected, key: (e as KeyboardEvent).key });\n\t}\n\n\tget isInactive() {\n\t\treturn this.type === ListItemType.Inactive || this.type === ListItemType.Detail;\n\t}\n\n\tget placeSelectionElementBefore() {\n\t\treturn this._mode === ListMode.MultiSelect\n\t\t\t|| this._mode === ListMode.SingleSelectBegin;\n\t}\n\n\tget placeSelectionElementAfter() {\n\t\treturn !this.placeSelectionElementBefore\n\t\t\t&& (this._mode === ListMode.SingleSelectEnd || this._mode === ListMode.Delete);\n\t}\n\n\tget modeSingleSelect() {\n\t\treturn [\n\t\t\tListMode.SingleSelectBegin,\n\t\t\tListMode.SingleSelectEnd,\n\t\t\tListMode.SingleSelect,\n\t\t].includes(this._mode);\n\t}\n\n\tget modeMultiSelect() {\n\t\treturn this._mode === ListMode.MultiSelect;\n\t}\n\n\tget modeDelete() {\n\t\treturn this._mode === ListMode.Delete;\n\t}\n\n\t/**\n\t * Used in UploadCollectionItem\n\t */\n\tget renderDeleteButton() {\n\t\treturn this.modeDelete;\n\t}\n\n\t/**\n\t * End\n\t */\n\n\tget typeDetail() {\n\t\treturn this.type === ListItemType.Detail;\n\t}\n\n\tget typeNavigation() {\n\t\treturn this.type === ListItemType.Navigation;\n\t}\n\n\tget typeActive() {\n\t\treturn this.type === ListItemType.Active;\n\t}\n\n\tget _ariaSelected() {\n\t\tif (this.modeMultiSelect || this.modeSingleSelect) {\n\t\t\treturn this.selected;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget ariaSelectedText() {\n\t\tlet ariaSelectedText;\n\n\t\t// Selected state needs to be supported separately since now the role mapping is list -> listitem[]\n\t\t// to avoid the issue of nesting interactive elements, ex. (option -> radio/checkbox);\n\t\t// The text is added to aria-describedby because as part of the aria-labelledby\n\t\t// the whole content of the item is readout when the aria-labelledby value is changed.\n\t\tif (this._ariaSelected !== undefined) {\n\t\t\tariaSelectedText = this._ariaSelected ? ListItem.i18nBundle.getText(LIST_ITEM_SELECTED) : ListItem.i18nBundle.getText(LIST_ITEM_NOT_SELECTED);\n\t\t}\n\n\t\treturn ariaSelectedText;\n\t}\n\n\tget deleteText() {\n\t\treturn ListItem.i18nBundle.getText(DELETE);\n\t}\n\n\tget hasDeleteButtonSlot() {\n\t\treturn !!this.deleteButton.length;\n\t}\n\n\tget _accessibleNameRef(): string {\n\t\tif ((this as IAccessibleListItem).accessibleName) {\n\t\t\t// accessibleName is set - return labels excluding content\n\t\t\treturn `${this._id}-invisibleText`;\n\t\t}\n\n\t\t// accessibleName is not set - return _accInfo.listItemAriaLabel including content\n\t\treturn `${this._id}-content ${this._id}-invisibleText`;\n\t}\n\n\tget _accInfo(): AccInfo {\n\t\treturn {\n\t\t\trole: this.accessibleRole || this.role,\n\t\t\tariaExpanded: undefined,\n\t\t\tariaLevel: this._level || undefined,\n\t\t\tariaLabel: ListItem.i18nBundle.getText(ARIA_LABEL_LIST_ITEM_CHECKBOX),\n\t\t\tariaLabelRadioButton: ListItem.i18nBundle.getText(ARIA_LABEL_LIST_ITEM_RADIO_BUTTON),\n\t\t\tariaSelectedText: this.ariaSelectedText,\n\t\t\tariaHaspopup: this.ariaHaspopup || undefined,\n\t\t};\n\t}\n\n\tget hasConfigurableMode() {\n\t\treturn true;\n\t}\n\n\tstatic async onDefine() {\n\t\tListItem.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nexport default ListItem;\nexport type {\n\tIAccessibleListItem,\n\tSelectionRequestEventDetail,\n\tPressEventDetail,\n};\n"]}
|
package/dist/SliderBase.d.ts
CHANGED
|
@@ -19,7 +19,7 @@ type DirectionStart = "left" | "right";
|
|
|
19
19
|
* @tagname ui5-slider
|
|
20
20
|
* @public
|
|
21
21
|
*/
|
|
22
|
-
declare class SliderBase extends UI5Element {
|
|
22
|
+
declare abstract class SliderBase extends UI5Element {
|
|
23
23
|
/**
|
|
24
24
|
* Defines the minimum value of the slider.
|
|
25
25
|
*
|
|
@@ -123,6 +123,12 @@ declare class SliderBase extends UI5Element {
|
|
|
123
123
|
_handleUp(): void;
|
|
124
124
|
_onmousedown(e: TouchEvent | MouseEvent): void;
|
|
125
125
|
_handleActionKeyPress(e: Event): void;
|
|
126
|
+
abstract styles: {
|
|
127
|
+
label: object;
|
|
128
|
+
labelContainer: object;
|
|
129
|
+
};
|
|
130
|
+
abstract tickmarksObject: any;
|
|
131
|
+
abstract _ariaLabelledByText: string;
|
|
126
132
|
static get ACTION_KEYS(): ((event: KeyboardEvent) => boolean)[];
|
|
127
133
|
static get MIN_SPACE_BETWEEN_TICKMARKS(): number;
|
|
128
134
|
static get TOOLTIP_VISIBILITY(): {
|
package/dist/SliderBase.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SliderBase.js","sourceRoot":"","sources":["../src/SliderBase.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport 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 litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport Float from \"@ui5/webcomponents-base/dist/types/Float.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { isPhone, supportsTouch } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { PassiveEventListenerObject } from \"@ui5/webcomponents-base/dist/types.js\";\nimport \"@ui5/webcomponents-icons/dist/direction-arrows.js\";\nimport {\n\tisEscape, isHome, isEnd, isUp, isDown, isRight, isLeft, isUpCtrl, isDownCtrl, isRightCtrl, isLeftCtrl, isPlus, isMinus, isPageUp, isPageDown,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\n\n// Styles\nimport sliderBaseStyles from \"./generated/themes/SliderBase.css.js\";\n\ntype StateStorage = {\n\t[key: string]: number | undefined,\n}\n\ntype DirectionStart = \"left\" | \"right\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.SliderBase\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-slider\n * @public\n */\n@customElement({\n\trenderer: litRender,\n\tstyles: sliderBaseStyles,\n})\n/**\n * Fired when the value changes and the user has finished interacting with the slider.\n *\n * @event sap.ui.webc.main.SliderBase#change\n * @public\n */\n@event(\"change\")\n\n/**\n * Fired when the value changes due to user interaction that is not yet finished - during mouse/touch dragging.\n *\n * @event sap.ui.webc.main.SliderBase#input\n * @public\n */\n@event(\"input\")\nclass SliderBase extends UI5Element {\n\t/**\n\t * Defines the minimum value of the slider.\n\t *\n\t * @type {sap.ui.webc.base.types.Float}\n\t * @name sap.ui.webc.main.SliderBase.prototype.min\n\t * @defaultvalue 0\n\t * @public\n\t */\n\t@property({ validator: Float, defaultValue: 0 })\n\tmin!: number;\n\n\t/**\n\t * Defines the maximum value of the slider.\n\t *\n\t * @type {sap.ui.webc.base.types.Float}\n\t * @name sap.ui.webc.main.SliderBase.prototype.max\n\t * @defaultvalue 100\n\t * @public\n\t */\n\t@property({ validator: Float, defaultValue: 100 })\n\tmax!: number;\n\n\t/**\n\t * Defines the size of the slider's selection intervals (e.g. min = 0, max = 10, step = 5 would result in possible selection of the values 0, 5, 10).\n\t * <br><br>\n\t * <b>Note:</b> If set to 0 the slider handle movement is disabled. When negative number or value other than a number, the component fallbacks to its default value.\n\t *\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.SliderBase.prototype.step\n\t * @defaultvalue 1\n\t * @public\n\t */\n\t@property({ validator: Float, defaultValue: 1 })\n\tstep!: number;\n\n\t/**\n\t * Displays a label with a value on every N-th step.\n\t * <br><br>\n\t * <b>Note:</b> The step and tickmarks properties must be enabled.\n\t * Example - if the step value is set to 2 and the label interval is also specified to 2 - then every second\n\t * tickmark will be labelled, which means every 4th value number.\n\t *\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.SliderBase.prototype.labelInterval\n\t * @defaultvalue 0\n\t * @public\n\t */\n\t@property({ validator: Integer, defaultValue: 0 })\n\tlabelInterval!: number;\n\n\t/**\n\t * Enables tickmarks visualization for each step.\n\t * <br><br>\n\t * <b>Note:</b> The step must be a positive number.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.SliderBase.prototype.showTickmarks\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowTickmarks!: boolean;\n\n\t/**\n\t * Enables handle tooltip displaying the current value.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.SliderBase.prototype.showTooltip\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowTooltip!: boolean;\n\n\t/**\n\t * Defines whether the slider is in disabled state.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.SliderBase.prototype.disabled\n\t * @defaultvalue 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 *\n\t * @type {string}\n\t * @name sap.ui.webc.main.SliderBase.prototype.accessibleName\n\t * @defaultvalue: \"\"\n\t * @public\n\t * @since 1.4.0\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ defaultValue: \"hidden\" })\n\t_tooltipVisibility!: string;\n\n\t@property({ type: Boolean })\n\t_labelsOverlapping!: boolean;\n\n\t@property({ type: Boolean })\n\t_hiddenTickmarks!: boolean;\n\n\t_resizeHandler: ResizeObserverCallback;\n\t_moveHandler: (e: TouchEvent | MouseEvent) => void;\n\t_upHandler: () => void;\n\t_stateStorage: StateStorage;\n\t_ontouchstart: PassiveEventListenerObject;\n\tnotResized = false;\n\t_isUserInteraction = false;\n\t_isInnerElementFocusing = false;\n\t_oldNumberOfLabels?: number;\n\t_labelWidth = 0;\n\t_labelValues?: Array<string>;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._resizeHandler = this._handleResize.bind(this);\n\t\tthis._moveHandler = this._handleMove.bind(this);\n\t\tthis._upHandler = this._handleUp.bind(this);\n\n\t\tthis._stateStorage = {\n\t\t\tstep: undefined,\n\t\t\tmin: undefined,\n\t\t\tmax: undefined,\n\t\t\tlabelInterval: undefined,\n\t\t};\n\n\t\tconst handleTouchStartEvent = (e: TouchEvent) => {\n\t\t\tthis._onmousedown(e);\n\t\t};\n\n\t\tthis._ontouchstart = {\n\t\t\thandleEvent: handleTouchStartEvent,\n\t\t\tpassive: true,\n\t\t};\n\t}\n\n\t_handleMove(e: TouchEvent | MouseEvent) {} // eslint-disable-line\n\n\t_handleUp() {}\n\n\t_onmousedown(e: TouchEvent | MouseEvent) {} // eslint-disable-line\n\n\t_handleActionKeyPress(e: Event) {} // eslint-disable-line\n\n\tstatic get ACTION_KEYS() {\n\t\treturn [\n\t\t\tisLeft,\n\t\t\tisRight,\n\t\t\tisUp,\n\t\t\tisDown,\n\t\t\tisLeftCtrl,\n\t\t\tisRightCtrl,\n\t\t\tisUpCtrl,\n\t\t\tisDownCtrl,\n\t\t\tisPlus,\n\t\t\tisMinus,\n\t\t\tisHome,\n\t\t\tisEnd,\n\t\t\tisPageUp,\n\t\t\tisPageDown,\n\t\t\tisEscape,\n\t\t];\n\t}\n\n\tstatic get MIN_SPACE_BETWEEN_TICKMARKS() {\n\t\treturn 8;\n\t}\n\n\tstatic get TOOLTIP_VISIBILITY() {\n\t\treturn {\n\t\t\tVISIBLE: \"visible\",\n\t\t\tHIDDEN: \"hidden\",\n\t\t};\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-slider-root-phone\": isPhone(),\n\t\t\t},\n\t\t\tlabelContainer: {\n\t\t\t\t\"ui5-slider-hidden-labels\": this._labelsOverlapping,\n\t\t\t},\n\t\t};\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._resizeHandler);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._resizeHandler);\n\t}\n\n\tonAfterRendering() {\n\t\t// Only call if the resize is triggered by a state changes other than\n\t\t// the ones that occured on the previous resize and those caused by user interaction.\n\t\tif (this.notResized) {\n\t\t\tthis._resizeHandler();\n\t\t}\n\t}\n\n\t/** Shows the tooltip(s) if the <code>showTooltip</code> property is set to true\n\t *\n\t * @private\n\t */\n\t_onmouseover() {\n\t\tif (this.showTooltip) {\n\t\t\tthis._tooltipVisibility = SliderBase.TOOLTIP_VISIBILITY.VISIBLE;\n\t\t}\n\t}\n\n\t/**\n\t * Hides the tooltip(s) if the <code>showTooltip</code> property is set to true\n\t *\n\t * @private\n\t */\n\t_onmouseout() {\n\t\tif (this.showTooltip && !this.shadowRoot!.activeElement) {\n\t\t\tthis._tooltipVisibility = SliderBase.TOOLTIP_VISIBILITY.HIDDEN;\n\t\t}\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (this.disabled || this._effectiveStep === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (SliderBase._isActionKey(e)) {\n\t\t\te.preventDefault();\n\n\t\t\tthis._isUserInteraction = true;\n\t\t\tthis._handleActionKeyPress(e);\n\t\t}\n\t}\n\n\t_onkeyup() {\n\t\tif (this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._isUserInteraction = false;\n\t}\n\n\t/**\n\t * Flags if an inner element is currently being focused\n\t *\n\t * @private\n\t */\n\t_preserveFocus(isFocusing: boolean) {\n\t\tthis._isInnerElementFocusing = isFocusing;\n\t}\n\n\t/**\n\t * Return if an inside element within the component is currently being focused\n\t *\n\t * @private\n\t */\n\t_isFocusing() {\n\t\treturn this._isInnerElementFocusing;\n\t}\n\n\t/**\n\t * Prevent focus out when inner element within the component is currently being in process of focusing in.\n\t *\n\t * @private\n\t */\n\t_preventFocusOut() {\n\t\tthis.focusInnerElement();\n\t}\n\n\t/**\n\t * Manages the focus between the component's inner elements\n\t * @protected\n\t */\n\tfocusInnerElement() {\n\t\tthis.focus();\n\t}\n\n\t/**\n\t * Handle the responsiveness of the Slider's UI elements when resizing\n\t *\n\t * @private\n\t */\n\t_handleResize() {\n\t\tif (!this.showTickmarks) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Mark resizing to avoid unneccessary calls to that function after rendering\n\t\tthis.notResized = false;\n\n\t\t// Convert the string represented calculation expression to a normal one\n\t\t// Check the distance in pixels exist between every tickmark\n\t\tconst spaceBetweenTickmarks = this._spaceBetweenTickmarks();\n\n\t\t// If the pixels between the tickmarks are less than 8 only the first and the last one should be visible\n\t\t// In such case the labels must correspond to the tickmarks, only the first and the last one should exist.\n\t\tif (spaceBetweenTickmarks < SliderBase.MIN_SPACE_BETWEEN_TICKMARKS) {\n\t\t\tthis._hiddenTickmarks = true;\n\t\t\tthis._labelsOverlapping = true;\n\t\t} else {\n\t\t\tthis._hiddenTickmarks = false;\n\t\t}\n\n\t\tif (this.labelInterval <= 0 || this._hiddenTickmarks) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Check if there are any overlapping labels.\n\t\t// If so - only the first and the last one should be visible\n\t\tconst labelItems = this.shadowRoot!.querySelectorAll(\".ui5-slider-labels li\");\n\t\tthis._labelsOverlapping = [...labelItems].some(label => label.scrollWidth > label.clientWidth);\n\t}\n\n\t/**\n\t * Called when the user starts interacting with the slider.\n\t * After a down event on the slider root, listen for move events on window, so the slider value\n\t * is updated even if the user drags the pointer outside the slider root.\n\t *\n\t * @protected\n\t */\n\thandleDownBase(e: TouchEvent | MouseEvent) {\n\t\tconst min = this._effectiveMin;\n\t\tconst max = this._effectiveMax;\n\t\tconst domRect = this.getBoundingClientRect();\n\t\tconst directionStart = this.directionStart;\n\t\tconst step = this._effectiveStep;\n\t\tconst newValue = SliderBase.getValueFromInteraction(e, step, min, max, domRect, directionStart);\n\n\t\t// Mark start of a user interaction\n\t\tthis._isUserInteraction = true;\n\n\t\twindow.addEventListener(\"mouseup\", this._upHandler);\n\t\twindow.addEventListener(\"touchend\", this._upHandler);\n\t\t// Only allow one type of move event to be listened to (the first one registered after the down event)\n\t\tif (supportsTouch() && e instanceof TouchEvent) {\n\t\t\twindow.addEventListener(\"touchmove\", this._moveHandler);\n\t\t} else {\n\t\t\twindow.addEventListener(\"mousemove\", this._moveHandler);\n\t\t}\n\n\t\tthis._handleFocusOnMouseDown(e);\n\t\treturn newValue;\n\t}\n\n\t/**\n\t * Forward the focus to an inner inner part within the component on press\n\t *\n\t * @private\n\t */\n\t_handleFocusOnMouseDown(e: TouchEvent | MouseEvent) {\n\t\tconst focusedElement = this.shadowRoot!.activeElement;\n\n\t\tif (!focusedElement || focusedElement !== e.target) {\n\t\t\tthis._preserveFocus(true);\n\t\t\tthis.focusInnerElement();\n\t\t}\n\t}\n\n\t/**\n\t * Called when the user finish interacting with the slider\n\t * Fires an <code>change</code> event indicating a final value change, after user interaction is finished.\n\t *\n\t * @protected\n\t */\n\thandleUpBase() {\n\t\twindow.removeEventListener(\"mouseup\", this._upHandler);\n\t\twindow.removeEventListener(\"touchend\", this._upHandler);\n\t\t// Only one of the following was attached, but it's ok to remove both as there is no error\n\t\twindow.removeEventListener(\"mousemove\", this._moveHandler);\n\t\twindow.removeEventListener(\"touchmove\", this._moveHandler);\n\n\t\tthis._isUserInteraction = false;\n\t\tthis._preserveFocus(false);\n\t}\n\n\t/**\n\t * Updates state storage for the value-related property\n\t * Fires an <code>input</code> event indicating a value change via interaction that is not yet finished.\n\t *\n\t * @protected\n\t */\n\tupdateStateStorageAndFireInputEvent(valueType: string) {\n\t\tthis.storePropertyState(valueType);\n\t\tif (this._isUserInteraction) {\n\t\t\tthis.fireEvent(\"input\");\n\t\t}\n\t}\n\n\t/**\n\t * Goes through the key shortcuts available for the component and returns 'true' if the event is triggered by one.\n\t *\n\t * @private\n\t */\n\tstatic _isActionKey(e: KeyboardEvent) {\n\t\treturn this.ACTION_KEYS.some(actionKey => actionKey(e));\n\t}\n\n\t/**\n\t * Locks the given value between min and max boundaries based on slider properties\n\t *\n\t * @protected\n\t */\n\tstatic clipValue(value: number, min: number, max: number): number {\n\t\tvalue = Math.min(Math.max(value, min), max);\n\t\treturn value;\n\t}\n\n\t/**\n\t * Sets the slider value from an event\n\t *\n\t * @protected\n\t */\n\tstatic getValueFromInteraction(e: TouchEvent | MouseEvent, stepSize: number, min: number, max: number, boundingClientRect: DOMRect, directionStart: DirectionStart): number {\n\t\tconst pageX = this.getPageXValueFromEvent(e);\n\t\tconst value = this.computedValueFromPageX(pageX, min, max, boundingClientRect, directionStart);\n\t\tconst steppedValue = this.getSteppedValue(value, stepSize, min);\n\n\t\treturn this.clipValue(steppedValue, min, max);\n\t}\n\n\t/**\n\t * \"Stepify\" the raw value - calculate the new value depending on the specified step property\n\t *\n\t * @protected\n\t */\n\tstatic getSteppedValue(value: number, stepSize: number, min: number): number {\n\t\tconst stepModuloValue = Math.abs((value - min) % stepSize);\n\n\t\tif (stepSize === 0 || stepModuloValue === 0) {\n\t\t\treturn value;\n\t\t}\n\n\t\t// Clip (snap) the new value to the nearest step\n\t\tvalue = (stepModuloValue * 2 >= stepSize) ? (value + stepSize) - stepModuloValue : value - stepModuloValue;\n\n\t\t// If the step value is not a round number get its precision\n\t\tconst stepPrecision = SliderBase._getDecimalPrecisionOfNumber(stepSize);\n\t\treturn Number(value.toFixed(stepPrecision));\n\t}\n\n\t/**\n\t * Gets pageX value from event on user interaction with the Slider\n\t *\n\t * @protected\n\t */\n\tstatic getPageXValueFromEvent(e: TouchEvent | MouseEvent): number {\n\t\tif (supportsTouch() && e instanceof TouchEvent) {\n\t\t\tif (e.targetTouches && e.targetTouches.length > 0) {\n\t\t\t\treturn e.targetTouches[0].pageX;\n\t\t\t}\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn (e as MouseEvent).pageX; // MouseEvent\n\t}\n\n\t/**\n\t * Computes the new value (in %) from the pageX position of the cursor.\n\t * Returns the value rounded to a precision of at most 2 digits after decimal point.\n\t *\n\t * @protected\n\t */\n\tstatic computedValueFromPageX(pageX: number, min: number, max: number, boundingClientRect: DOMRect, directionStart: DirectionStart) {\n\t\t// Determine pageX position relative to the Slider DOM\n\t\tconst xRelativePosition = directionStart === \"left\" ? pageX - boundingClientRect[directionStart] : boundingClientRect[directionStart] - pageX;\n\t\t// Calculate the percentage complete (the \"progress\")\n\t\tconst percentageComplete = xRelativePosition / boundingClientRect.width;\n\t\t// Fit (map) the complete percentage between the min/max value range\n\t\treturn min + percentageComplete * (max - min);\n\t}\n\n\t/**\n\t * Calculates the precision (decimal places) of a number, returns 0 if integer\n\t * Handles scientific notation cases.\n\t * @private\n\t */\n\tstatic _getDecimalPrecisionOfNumber(value: number) {\n\t\tif (Number.isInteger(value)) {\n\t\t\treturn 0;\n\t\t}\n\t\tconst match = (String(value)).match(/(?:\\.(\\d+))?(?:[eE]([+-]?\\d+))?$/);\n\t\tif (!match || match.length < 2) {\n\t\t\treturn 0;\n\t\t}\n\t\treturn Math.max(0, (match[1] ? match[1].length : 0) - (match[2] ? Number(match[2]) : 0));\n\t}\n\n\t/**\n\t * In order to always keep the visual UI representation and the internal\n\t * state in sync, the component has a 'state storage' that is updated when the\n\t * current state is changed due to a user action.\n\t *\n\t * Check if the previously saved state is outdated. That would mean\n\t * a property has been changed programmatically because the previous state\n\t * is always updated in the interaction handlers.\n\t *\n\t * Will return true if any of the properties is not equal to its previously\n\t * stored value.\n\t *\n\t * @protected\n\t */\n\tisCurrentStateOutdated() {\n\t\treturn Object.entries(this._stateStorage).some(([propName, propValue]) => this[propName as keyof SliderBase] !== propValue);\n\t}\n\n\t/**\n\t * Returns the last stored value of a property\n\t *\n\t * @protected\n\t */\n\tgetStoredPropertyState(prop: string) {\n\t\treturn this._stateStorage[prop as keyof StateStorage];\n\t}\n\n\t/**\n\t * Check if one or more properties have been updated compared to their last\n\t * saved values in the state storage.\n\t *\n\t * @protected\n\t */\n\tisPropertyUpdated(...props: Array<string>) {\n\t\treturn props.some(prop => this.getStoredPropertyState(prop) !== this[prop as keyof SliderBase]);\n\t}\n\n\t/**\n\t * Updates the previously saved in the _stateStorage values of one or more properties.\n\t *\n\t * @protected\n\t */\n\tstorePropertyState(...props: Array<string>) {\n\t\tprops.forEach(prop => {\n\t\t\tthis._stateStorage[prop as keyof StateStorage] = this[prop as keyof SliderBase] as number;\n\t\t});\n\t}\n\n\t/**\n\t * Returns the start side of a direction - left for LTR, right for RTL\n\t */\n\tget directionStart() {\n\t\treturn this.effectiveDir === \"rtl\" ? \"right\" : \"left\";\n\t}\n\n\t/**\n\t * Calculates the labels amount, width and text and creates them\n\t *\n\t * @private\n\t */\n\t_createLabels() {\n\t\tif (!this.labelInterval || !this.showTickmarks) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst labelInterval = this.labelInterval;\n\t\tconst step = this._effectiveStep;\n\t\tconst newNumberOfLabels = (this._effectiveMax - this._effectiveMin) / (step * labelInterval);\n\n\t\t// If the required labels are already rendered\n\t\tif (newNumberOfLabels === this._oldNumberOfLabels) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._oldNumberOfLabels = newNumberOfLabels;\n\t\tthis._labelWidth = 100 / newNumberOfLabels;\n\t\tthis._labelValues = [];\n\n\t\t// If the step value is not a round number get its precision\n\t\tconst stepPrecision = SliderBase._getDecimalPrecisionOfNumber(step);\n\n\t\t// numberOfLabels below can be float so that the \"distance betweenlabels labels\"\n\t\t// calculation to be precize (exactly the same as the distance between the tickmarks).\n\t\t// That's ok as the loop stop condition is set to an integer, so it will practically\n\t\t// \"floor\" the number of labels anyway.\n\t\tfor (let i = 0; i <= newNumberOfLabels; i++) {\n\t\t\t// Format the label numbers with the same decimal precision as the value of the step property\n\t\t\tconst labelItemNumber = ((i * step * labelInterval) + this._effectiveMin).toFixed(stepPrecision);\n\t\t\tthis._labelValues.push(labelItemNumber);\n\t\t}\n\t}\n\n\t_handleActionKeyPressBase(e: KeyboardEvent, affectedPropName: string) {\n\t\tconst isUpAction = SliderBase._isIncreaseValueAction(e);\n\t\tconst isBigStep = SliderBase._isBigStepAction(e);\n\n\t\tconst currentValue = this[affectedPropName as keyof SliderBase] as number;\n\t\tconst min = this._effectiveMin;\n\t\tconst max = this._effectiveMax;\n\n\t\t// We need to take into consideration the effective direction of the slider - rtl or ltr.\n\t\t// While in ltr, the left arrow key decreases the value, in rtl it should actually increase it.\n\t\tlet step = this.effectiveDir === \"rtl\" ? -this._effectiveStep : this._effectiveStep;\n\n\t\t// If the action key corresponds to a long step and the slider has more than 10 normal steps,\n\t\t// make a jump of 1/10th of the Slider's length, otherwise just use the normal step property.\n\t\tstep = isBigStep && ((max - min) / step > 10) ? (max - min) / 10 : step;\n\n\t\tif (isEnd(e)) {\n\t\t\treturn max - currentValue;\n\t\t}\n\n\t\tif (isHome(e)) {\n\t\t\treturn (currentValue - min) * -1;\n\t\t}\n\n\t\treturn isUpAction ? step : step * -1;\n\t}\n\n\tstatic _isDecreaseValueAction(e: KeyboardEvent) {\n\t\treturn isDown(e) || isDownCtrl(e) || isLeft(e) || isLeftCtrl(e) || isMinus(e) || isPageDown(e);\n\t}\n\n\tstatic _isIncreaseValueAction(e: KeyboardEvent) {\n\t\treturn isUp(e) || isUpCtrl(e) || isRight(e) || isRightCtrl(e) || isPlus(e) || isPageUp(e);\n\t}\n\n\tstatic _isBigStepAction(e: KeyboardEvent) {\n\t\treturn isDownCtrl(e) || isUpCtrl(e) || isLeftCtrl(e) || isRightCtrl(e) || isPageUp(e) || isPageDown(e);\n\t}\n\n\tget _tickmarksCount() {\n\t\treturn (this._effectiveMax - this._effectiveMin) / this._effectiveStep;\n\t}\n\n\t/**\n\t * Calculates space between tickmarks\n\t *\n\t * @private\n\t */\n\t_spaceBetweenTickmarks() {\n\t\treturn this.getBoundingClientRect().width / this._tickmarksCount;\n\t}\n\n\t/**\n\t * Notify in case of a invalid step value type\n\t *\n\t * @private\n\t */\n\t_validateStep(step: number) {\n\t\tif (step === 0) {\n\t\t\tconsole.warn(\"The 'step' property must be a positive float number\"); // eslint-disable-line\n\t\t}\n\n\t\tif (step < 0) {\n\t\t\tconsole.warn(\"The 'step' property must be a positive float number. The provided negative number has been converted to its positve equivalent\"); // eslint-disable-line\n\t\t}\n\n\t\tif (Number.isNaN(step)) {\n\t\t\tconsole.warn(\"The 'step' property must be a positive float number. It has been set to its default value of 1\"); // eslint-disable-line\n\t\t}\n\t}\n\n\tget _labels() {\n\t\treturn this._labelValues || [];\n\t}\n\n\t/**\n\t * Normalizes a new <code>step</code> property value.\n\t * If tickmarks are enabled recreates them according to it.\n\t *\n\t * @private\n\t */\n\tget _effectiveStep() {\n\t\tlet step = this.step;\n\n\t\tif (step < 0) {\n\t\t\tstep = Math.abs(step);\n\t\t}\n\n\t\tif (Number.isNaN(step)) {\n\t\t\tstep = 1;\n\t\t}\n\n\t\treturn step;\n\t}\n\n\tget _effectiveMin() {\n\t\treturn Math.min(this.min, this.max);\n\t}\n\n\tget _effectiveMax() {\n\t\treturn Math.max(this.min, this.max);\n\t}\n\n\tget _tabIndex() {\n\t\treturn this.disabled ? \"-1\" : \"0\";\n\t}\n\n\tget _ariaLabelledByHandleRefs() {\n\t\treturn [`${this._id}-accName`, `${this._id}-sliderDesc`].join(\" \").trim();\n\t}\n}\n\nexport default SliderBase;\n"]}
|
|
1
|
+
{"version":3,"file":"SliderBase.js","sourceRoot":"","sources":["../src/SliderBase.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport 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 litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport Float from \"@ui5/webcomponents-base/dist/types/Float.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { isPhone, supportsTouch } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { PassiveEventListenerObject } from \"@ui5/webcomponents-base/dist/types.js\";\nimport \"@ui5/webcomponents-icons/dist/direction-arrows.js\";\nimport {\n\tisEscape, isHome, isEnd, isUp, isDown, isRight, isLeft, isUpCtrl, isDownCtrl, isRightCtrl, isLeftCtrl, isPlus, isMinus, isPageUp, isPageDown,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\n\n// Styles\nimport sliderBaseStyles from \"./generated/themes/SliderBase.css.js\";\n\ntype StateStorage = {\n\t[key: string]: number | undefined,\n}\n\ntype DirectionStart = \"left\" | \"right\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.SliderBase\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-slider\n * @public\n */\n@customElement({\n\trenderer: litRender,\n\tstyles: sliderBaseStyles,\n})\n/**\n * Fired when the value changes and the user has finished interacting with the slider.\n *\n * @event sap.ui.webc.main.SliderBase#change\n * @public\n */\n@event(\"change\")\n\n/**\n * Fired when the value changes due to user interaction that is not yet finished - during mouse/touch dragging.\n *\n * @event sap.ui.webc.main.SliderBase#input\n * @public\n */\n@event(\"input\")\nabstract class SliderBase extends UI5Element {\n\t/**\n\t * Defines the minimum value of the slider.\n\t *\n\t * @type {sap.ui.webc.base.types.Float}\n\t * @name sap.ui.webc.main.SliderBase.prototype.min\n\t * @defaultvalue 0\n\t * @public\n\t */\n\t@property({ validator: Float, defaultValue: 0 })\n\tmin!: number;\n\n\t/**\n\t * Defines the maximum value of the slider.\n\t *\n\t * @type {sap.ui.webc.base.types.Float}\n\t * @name sap.ui.webc.main.SliderBase.prototype.max\n\t * @defaultvalue 100\n\t * @public\n\t */\n\t@property({ validator: Float, defaultValue: 100 })\n\tmax!: number;\n\n\t/**\n\t * Defines the size of the slider's selection intervals (e.g. min = 0, max = 10, step = 5 would result in possible selection of the values 0, 5, 10).\n\t * <br><br>\n\t * <b>Note:</b> If set to 0 the slider handle movement is disabled. When negative number or value other than a number, the component fallbacks to its default value.\n\t *\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.SliderBase.prototype.step\n\t * @defaultvalue 1\n\t * @public\n\t */\n\t@property({ validator: Float, defaultValue: 1 })\n\tstep!: number;\n\n\t/**\n\t * Displays a label with a value on every N-th step.\n\t * <br><br>\n\t * <b>Note:</b> The step and tickmarks properties must be enabled.\n\t * Example - if the step value is set to 2 and the label interval is also specified to 2 - then every second\n\t * tickmark will be labelled, which means every 4th value number.\n\t *\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.SliderBase.prototype.labelInterval\n\t * @defaultvalue 0\n\t * @public\n\t */\n\t@property({ validator: Integer, defaultValue: 0 })\n\tlabelInterval!: number;\n\n\t/**\n\t * Enables tickmarks visualization for each step.\n\t * <br><br>\n\t * <b>Note:</b> The step must be a positive number.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.SliderBase.prototype.showTickmarks\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowTickmarks!: boolean;\n\n\t/**\n\t * Enables handle tooltip displaying the current value.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.SliderBase.prototype.showTooltip\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowTooltip!: boolean;\n\n\t/**\n\t * Defines whether the slider is in disabled state.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.SliderBase.prototype.disabled\n\t * @defaultvalue 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 *\n\t * @type {string}\n\t * @name sap.ui.webc.main.SliderBase.prototype.accessibleName\n\t * @defaultvalue: \"\"\n\t * @public\n\t * @since 1.4.0\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ defaultValue: \"hidden\" })\n\t_tooltipVisibility!: string;\n\n\t@property({ type: Boolean })\n\t_labelsOverlapping!: boolean;\n\n\t@property({ type: Boolean })\n\t_hiddenTickmarks!: boolean;\n\n\t_resizeHandler: ResizeObserverCallback;\n\t_moveHandler: (e: TouchEvent | MouseEvent) => void;\n\t_upHandler: () => void;\n\t_stateStorage: StateStorage;\n\t_ontouchstart: PassiveEventListenerObject;\n\tnotResized = false;\n\t_isUserInteraction = false;\n\t_isInnerElementFocusing = false;\n\t_oldNumberOfLabels?: number;\n\t_labelWidth = 0;\n\t_labelValues?: Array<string>;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._resizeHandler = this._handleResize.bind(this);\n\t\tthis._moveHandler = this._handleMove.bind(this);\n\t\tthis._upHandler = this._handleUp.bind(this);\n\n\t\tthis._stateStorage = {\n\t\t\tstep: undefined,\n\t\t\tmin: undefined,\n\t\t\tmax: undefined,\n\t\t\tlabelInterval: undefined,\n\t\t};\n\n\t\tconst handleTouchStartEvent = (e: TouchEvent) => {\n\t\t\tthis._onmousedown(e);\n\t\t};\n\n\t\tthis._ontouchstart = {\n\t\t\thandleEvent: handleTouchStartEvent,\n\t\t\tpassive: true,\n\t\t};\n\t}\n\n\t_handleMove(e: TouchEvent | MouseEvent) {} // eslint-disable-line\n\n\t_handleUp() {}\n\n\t_onmousedown(e: TouchEvent | MouseEvent) {} // eslint-disable-line\n\n\t_handleActionKeyPress(e: Event) {} // eslint-disable-line\n\n\t// used in base template, but implemented in subclasses\n\tabstract styles: {\n\t\tlabel: object,\n\t\tlabelContainer: object,\n\t};\n\n\tabstract tickmarksObject: any;\n\tabstract _ariaLabelledByText: string;\n\n\tstatic get ACTION_KEYS() {\n\t\treturn [\n\t\t\tisLeft,\n\t\t\tisRight,\n\t\t\tisUp,\n\t\t\tisDown,\n\t\t\tisLeftCtrl,\n\t\t\tisRightCtrl,\n\t\t\tisUpCtrl,\n\t\t\tisDownCtrl,\n\t\t\tisPlus,\n\t\t\tisMinus,\n\t\t\tisHome,\n\t\t\tisEnd,\n\t\t\tisPageUp,\n\t\t\tisPageDown,\n\t\t\tisEscape,\n\t\t];\n\t}\n\n\tstatic get MIN_SPACE_BETWEEN_TICKMARKS() {\n\t\treturn 8;\n\t}\n\n\tstatic get TOOLTIP_VISIBILITY() {\n\t\treturn {\n\t\t\tVISIBLE: \"visible\",\n\t\t\tHIDDEN: \"hidden\",\n\t\t};\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-slider-root-phone\": isPhone(),\n\t\t\t},\n\t\t\tlabelContainer: {\n\t\t\t\t\"ui5-slider-hidden-labels\": this._labelsOverlapping,\n\t\t\t},\n\t\t};\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._resizeHandler);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._resizeHandler);\n\t}\n\n\tonAfterRendering() {\n\t\t// Only call if the resize is triggered by a state changes other than\n\t\t// the ones that occured on the previous resize and those caused by user interaction.\n\t\tif (this.notResized) {\n\t\t\tthis._resizeHandler();\n\t\t}\n\t}\n\n\t/** Shows the tooltip(s) if the <code>showTooltip</code> property is set to true\n\t *\n\t * @private\n\t */\n\t_onmouseover() {\n\t\tif (this.showTooltip) {\n\t\t\tthis._tooltipVisibility = SliderBase.TOOLTIP_VISIBILITY.VISIBLE;\n\t\t}\n\t}\n\n\t/**\n\t * Hides the tooltip(s) if the <code>showTooltip</code> property is set to true\n\t *\n\t * @private\n\t */\n\t_onmouseout() {\n\t\tif (this.showTooltip && !this.shadowRoot!.activeElement) {\n\t\t\tthis._tooltipVisibility = SliderBase.TOOLTIP_VISIBILITY.HIDDEN;\n\t\t}\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (this.disabled || this._effectiveStep === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (SliderBase._isActionKey(e)) {\n\t\t\te.preventDefault();\n\n\t\t\tthis._isUserInteraction = true;\n\t\t\tthis._handleActionKeyPress(e);\n\t\t}\n\t}\n\n\t_onkeyup() {\n\t\tif (this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._isUserInteraction = false;\n\t}\n\n\t/**\n\t * Flags if an inner element is currently being focused\n\t *\n\t * @private\n\t */\n\t_preserveFocus(isFocusing: boolean) {\n\t\tthis._isInnerElementFocusing = isFocusing;\n\t}\n\n\t/**\n\t * Return if an inside element within the component is currently being focused\n\t *\n\t * @private\n\t */\n\t_isFocusing() {\n\t\treturn this._isInnerElementFocusing;\n\t}\n\n\t/**\n\t * Prevent focus out when inner element within the component is currently being in process of focusing in.\n\t *\n\t * @private\n\t */\n\t_preventFocusOut() {\n\t\tthis.focusInnerElement();\n\t}\n\n\t/**\n\t * Manages the focus between the component's inner elements\n\t * @protected\n\t */\n\tfocusInnerElement() {\n\t\tthis.focus();\n\t}\n\n\t/**\n\t * Handle the responsiveness of the Slider's UI elements when resizing\n\t *\n\t * @private\n\t */\n\t_handleResize() {\n\t\tif (!this.showTickmarks) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Mark resizing to avoid unneccessary calls to that function after rendering\n\t\tthis.notResized = false;\n\n\t\t// Convert the string represented calculation expression to a normal one\n\t\t// Check the distance in pixels exist between every tickmark\n\t\tconst spaceBetweenTickmarks = this._spaceBetweenTickmarks();\n\n\t\t// If the pixels between the tickmarks are less than 8 only the first and the last one should be visible\n\t\t// In such case the labels must correspond to the tickmarks, only the first and the last one should exist.\n\t\tif (spaceBetweenTickmarks < SliderBase.MIN_SPACE_BETWEEN_TICKMARKS) {\n\t\t\tthis._hiddenTickmarks = true;\n\t\t\tthis._labelsOverlapping = true;\n\t\t} else {\n\t\t\tthis._hiddenTickmarks = false;\n\t\t}\n\n\t\tif (this.labelInterval <= 0 || this._hiddenTickmarks) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Check if there are any overlapping labels.\n\t\t// If so - only the first and the last one should be visible\n\t\tconst labelItems = this.shadowRoot!.querySelectorAll(\".ui5-slider-labels li\");\n\t\tthis._labelsOverlapping = [...labelItems].some(label => label.scrollWidth > label.clientWidth);\n\t}\n\n\t/**\n\t * Called when the user starts interacting with the slider.\n\t * After a down event on the slider root, listen for move events on window, so the slider value\n\t * is updated even if the user drags the pointer outside the slider root.\n\t *\n\t * @protected\n\t */\n\thandleDownBase(e: TouchEvent | MouseEvent) {\n\t\tconst min = this._effectiveMin;\n\t\tconst max = this._effectiveMax;\n\t\tconst domRect = this.getBoundingClientRect();\n\t\tconst directionStart = this.directionStart;\n\t\tconst step = this._effectiveStep;\n\t\tconst newValue = SliderBase.getValueFromInteraction(e, step, min, max, domRect, directionStart);\n\n\t\t// Mark start of a user interaction\n\t\tthis._isUserInteraction = true;\n\n\t\twindow.addEventListener(\"mouseup\", this._upHandler);\n\t\twindow.addEventListener(\"touchend\", this._upHandler);\n\t\t// Only allow one type of move event to be listened to (the first one registered after the down event)\n\t\tif (supportsTouch() && e instanceof TouchEvent) {\n\t\t\twindow.addEventListener(\"touchmove\", this._moveHandler);\n\t\t} else {\n\t\t\twindow.addEventListener(\"mousemove\", this._moveHandler);\n\t\t}\n\n\t\tthis._handleFocusOnMouseDown(e);\n\t\treturn newValue;\n\t}\n\n\t/**\n\t * Forward the focus to an inner inner part within the component on press\n\t *\n\t * @private\n\t */\n\t_handleFocusOnMouseDown(e: TouchEvent | MouseEvent) {\n\t\tconst focusedElement = this.shadowRoot!.activeElement;\n\n\t\tif (!focusedElement || focusedElement !== e.target) {\n\t\t\tthis._preserveFocus(true);\n\t\t\tthis.focusInnerElement();\n\t\t}\n\t}\n\n\t/**\n\t * Called when the user finish interacting with the slider\n\t * Fires an <code>change</code> event indicating a final value change, after user interaction is finished.\n\t *\n\t * @protected\n\t */\n\thandleUpBase() {\n\t\twindow.removeEventListener(\"mouseup\", this._upHandler);\n\t\twindow.removeEventListener(\"touchend\", this._upHandler);\n\t\t// Only one of the following was attached, but it's ok to remove both as there is no error\n\t\twindow.removeEventListener(\"mousemove\", this._moveHandler);\n\t\twindow.removeEventListener(\"touchmove\", this._moveHandler);\n\n\t\tthis._isUserInteraction = false;\n\t\tthis._preserveFocus(false);\n\t}\n\n\t/**\n\t * Updates state storage for the value-related property\n\t * Fires an <code>input</code> event indicating a value change via interaction that is not yet finished.\n\t *\n\t * @protected\n\t */\n\tupdateStateStorageAndFireInputEvent(valueType: string) {\n\t\tthis.storePropertyState(valueType);\n\t\tif (this._isUserInteraction) {\n\t\t\tthis.fireEvent(\"input\");\n\t\t}\n\t}\n\n\t/**\n\t * Goes through the key shortcuts available for the component and returns 'true' if the event is triggered by one.\n\t *\n\t * @private\n\t */\n\tstatic _isActionKey(e: KeyboardEvent) {\n\t\treturn this.ACTION_KEYS.some(actionKey => actionKey(e));\n\t}\n\n\t/**\n\t * Locks the given value between min and max boundaries based on slider properties\n\t *\n\t * @protected\n\t */\n\tstatic clipValue(value: number, min: number, max: number): number {\n\t\tvalue = Math.min(Math.max(value, min), max);\n\t\treturn value;\n\t}\n\n\t/**\n\t * Sets the slider value from an event\n\t *\n\t * @protected\n\t */\n\tstatic getValueFromInteraction(e: TouchEvent | MouseEvent, stepSize: number, min: number, max: number, boundingClientRect: DOMRect, directionStart: DirectionStart): number {\n\t\tconst pageX = this.getPageXValueFromEvent(e);\n\t\tconst value = this.computedValueFromPageX(pageX, min, max, boundingClientRect, directionStart);\n\t\tconst steppedValue = this.getSteppedValue(value, stepSize, min);\n\n\t\treturn this.clipValue(steppedValue, min, max);\n\t}\n\n\t/**\n\t * \"Stepify\" the raw value - calculate the new value depending on the specified step property\n\t *\n\t * @protected\n\t */\n\tstatic getSteppedValue(value: number, stepSize: number, min: number): number {\n\t\tconst stepModuloValue = Math.abs((value - min) % stepSize);\n\n\t\tif (stepSize === 0 || stepModuloValue === 0) {\n\t\t\treturn value;\n\t\t}\n\n\t\t// Clip (snap) the new value to the nearest step\n\t\tvalue = (stepModuloValue * 2 >= stepSize) ? (value + stepSize) - stepModuloValue : value - stepModuloValue;\n\n\t\t// If the step value is not a round number get its precision\n\t\tconst stepPrecision = SliderBase._getDecimalPrecisionOfNumber(stepSize);\n\t\treturn Number(value.toFixed(stepPrecision));\n\t}\n\n\t/**\n\t * Gets pageX value from event on user interaction with the Slider\n\t *\n\t * @protected\n\t */\n\tstatic getPageXValueFromEvent(e: TouchEvent | MouseEvent): number {\n\t\tif (supportsTouch() && e instanceof TouchEvent) {\n\t\t\tif (e.targetTouches && e.targetTouches.length > 0) {\n\t\t\t\treturn e.targetTouches[0].pageX;\n\t\t\t}\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn (e as MouseEvent).pageX; // MouseEvent\n\t}\n\n\t/**\n\t * Computes the new value (in %) from the pageX position of the cursor.\n\t * Returns the value rounded to a precision of at most 2 digits after decimal point.\n\t *\n\t * @protected\n\t */\n\tstatic computedValueFromPageX(pageX: number, min: number, max: number, boundingClientRect: DOMRect, directionStart: DirectionStart) {\n\t\t// Determine pageX position relative to the Slider DOM\n\t\tconst xRelativePosition = directionStart === \"left\" ? pageX - boundingClientRect[directionStart] : boundingClientRect[directionStart] - pageX;\n\t\t// Calculate the percentage complete (the \"progress\")\n\t\tconst percentageComplete = xRelativePosition / boundingClientRect.width;\n\t\t// Fit (map) the complete percentage between the min/max value range\n\t\treturn min + percentageComplete * (max - min);\n\t}\n\n\t/**\n\t * Calculates the precision (decimal places) of a number, returns 0 if integer\n\t * Handles scientific notation cases.\n\t * @private\n\t */\n\tstatic _getDecimalPrecisionOfNumber(value: number) {\n\t\tif (Number.isInteger(value)) {\n\t\t\treturn 0;\n\t\t}\n\t\tconst match = (String(value)).match(/(?:\\.(\\d+))?(?:[eE]([+-]?\\d+))?$/);\n\t\tif (!match || match.length < 2) {\n\t\t\treturn 0;\n\t\t}\n\t\treturn Math.max(0, (match[1] ? match[1].length : 0) - (match[2] ? Number(match[2]) : 0));\n\t}\n\n\t/**\n\t * In order to always keep the visual UI representation and the internal\n\t * state in sync, the component has a 'state storage' that is updated when the\n\t * current state is changed due to a user action.\n\t *\n\t * Check if the previously saved state is outdated. That would mean\n\t * a property has been changed programmatically because the previous state\n\t * is always updated in the interaction handlers.\n\t *\n\t * Will return true if any of the properties is not equal to its previously\n\t * stored value.\n\t *\n\t * @protected\n\t */\n\tisCurrentStateOutdated() {\n\t\treturn Object.entries(this._stateStorage).some(([propName, propValue]) => this[propName as keyof SliderBase] !== propValue);\n\t}\n\n\t/**\n\t * Returns the last stored value of a property\n\t *\n\t * @protected\n\t */\n\tgetStoredPropertyState(prop: string) {\n\t\treturn this._stateStorage[prop as keyof StateStorage];\n\t}\n\n\t/**\n\t * Check if one or more properties have been updated compared to their last\n\t * saved values in the state storage.\n\t *\n\t * @protected\n\t */\n\tisPropertyUpdated(...props: Array<string>) {\n\t\treturn props.some(prop => this.getStoredPropertyState(prop) !== this[prop as keyof SliderBase]);\n\t}\n\n\t/**\n\t * Updates the previously saved in the _stateStorage values of one or more properties.\n\t *\n\t * @protected\n\t */\n\tstorePropertyState(...props: Array<string>) {\n\t\tprops.forEach(prop => {\n\t\t\tthis._stateStorage[prop as keyof StateStorage] = this[prop as keyof SliderBase] as number;\n\t\t});\n\t}\n\n\t/**\n\t * Returns the start side of a direction - left for LTR, right for RTL\n\t */\n\tget directionStart() {\n\t\treturn this.effectiveDir === \"rtl\" ? \"right\" : \"left\";\n\t}\n\n\t/**\n\t * Calculates the labels amount, width and text and creates them\n\t *\n\t * @private\n\t */\n\t_createLabels() {\n\t\tif (!this.labelInterval || !this.showTickmarks) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst labelInterval = this.labelInterval;\n\t\tconst step = this._effectiveStep;\n\t\tconst newNumberOfLabels = (this._effectiveMax - this._effectiveMin) / (step * labelInterval);\n\n\t\t// If the required labels are already rendered\n\t\tif (newNumberOfLabels === this._oldNumberOfLabels) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._oldNumberOfLabels = newNumberOfLabels;\n\t\tthis._labelWidth = 100 / newNumberOfLabels;\n\t\tthis._labelValues = [];\n\n\t\t// If the step value is not a round number get its precision\n\t\tconst stepPrecision = SliderBase._getDecimalPrecisionOfNumber(step);\n\n\t\t// numberOfLabels below can be float so that the \"distance betweenlabels labels\"\n\t\t// calculation to be precize (exactly the same as the distance between the tickmarks).\n\t\t// That's ok as the loop stop condition is set to an integer, so it will practically\n\t\t// \"floor\" the number of labels anyway.\n\t\tfor (let i = 0; i <= newNumberOfLabels; i++) {\n\t\t\t// Format the label numbers with the same decimal precision as the value of the step property\n\t\t\tconst labelItemNumber = ((i * step * labelInterval) + this._effectiveMin).toFixed(stepPrecision);\n\t\t\tthis._labelValues.push(labelItemNumber);\n\t\t}\n\t}\n\n\t_handleActionKeyPressBase(e: KeyboardEvent, affectedPropName: string) {\n\t\tconst isUpAction = SliderBase._isIncreaseValueAction(e);\n\t\tconst isBigStep = SliderBase._isBigStepAction(e);\n\n\t\tconst currentValue = this[affectedPropName as keyof SliderBase] as number;\n\t\tconst min = this._effectiveMin;\n\t\tconst max = this._effectiveMax;\n\n\t\t// We need to take into consideration the effective direction of the slider - rtl or ltr.\n\t\t// While in ltr, the left arrow key decreases the value, in rtl it should actually increase it.\n\t\tlet step = this.effectiveDir === \"rtl\" ? -this._effectiveStep : this._effectiveStep;\n\n\t\t// If the action key corresponds to a long step and the slider has more than 10 normal steps,\n\t\t// make a jump of 1/10th of the Slider's length, otherwise just use the normal step property.\n\t\tstep = isBigStep && ((max - min) / step > 10) ? (max - min) / 10 : step;\n\n\t\tif (isEnd(e)) {\n\t\t\treturn max - currentValue;\n\t\t}\n\n\t\tif (isHome(e)) {\n\t\t\treturn (currentValue - min) * -1;\n\t\t}\n\n\t\treturn isUpAction ? step : step * -1;\n\t}\n\n\tstatic _isDecreaseValueAction(e: KeyboardEvent) {\n\t\treturn isDown(e) || isDownCtrl(e) || isLeft(e) || isLeftCtrl(e) || isMinus(e) || isPageDown(e);\n\t}\n\n\tstatic _isIncreaseValueAction(e: KeyboardEvent) {\n\t\treturn isUp(e) || isUpCtrl(e) || isRight(e) || isRightCtrl(e) || isPlus(e) || isPageUp(e);\n\t}\n\n\tstatic _isBigStepAction(e: KeyboardEvent) {\n\t\treturn isDownCtrl(e) || isUpCtrl(e) || isLeftCtrl(e) || isRightCtrl(e) || isPageUp(e) || isPageDown(e);\n\t}\n\n\tget _tickmarksCount() {\n\t\treturn (this._effectiveMax - this._effectiveMin) / this._effectiveStep;\n\t}\n\n\t/**\n\t * Calculates space between tickmarks\n\t *\n\t * @private\n\t */\n\t_spaceBetweenTickmarks() {\n\t\treturn this.getBoundingClientRect().width / this._tickmarksCount;\n\t}\n\n\t/**\n\t * Notify in case of a invalid step value type\n\t *\n\t * @private\n\t */\n\t_validateStep(step: number) {\n\t\tif (step === 0) {\n\t\t\tconsole.warn(\"The 'step' property must be a positive float number\"); // eslint-disable-line\n\t\t}\n\n\t\tif (step < 0) {\n\t\t\tconsole.warn(\"The 'step' property must be a positive float number. The provided negative number has been converted to its positve equivalent\"); // eslint-disable-line\n\t\t}\n\n\t\tif (Number.isNaN(step)) {\n\t\t\tconsole.warn(\"The 'step' property must be a positive float number. It has been set to its default value of 1\"); // eslint-disable-line\n\t\t}\n\t}\n\n\tget _labels() {\n\t\treturn this._labelValues || [];\n\t}\n\n\t/**\n\t * Normalizes a new <code>step</code> property value.\n\t * If tickmarks are enabled recreates them according to it.\n\t *\n\t * @private\n\t */\n\tget _effectiveStep() {\n\t\tlet step = this.step;\n\n\t\tif (step < 0) {\n\t\t\tstep = Math.abs(step);\n\t\t}\n\n\t\tif (Number.isNaN(step)) {\n\t\t\tstep = 1;\n\t\t}\n\n\t\treturn step;\n\t}\n\n\tget _effectiveMin() {\n\t\treturn Math.min(this.min, this.max);\n\t}\n\n\tget _effectiveMax() {\n\t\treturn Math.max(this.min, this.max);\n\t}\n\n\tget _tabIndex() {\n\t\treturn this.disabled ? \"-1\" : \"0\";\n\t}\n\n\tget _ariaLabelledByHandleRefs() {\n\t\treturn [`${this._id}-accName`, `${this._id}-sliderDesc`].join(\" \").trim();\n\t}\n}\n\nexport default SliderBase;\n"]}
|
package/dist/Tab.d.ts
CHANGED
|
@@ -7,6 +7,8 @@ import "@ui5/webcomponents-icons/dist/sys-enter-2.js";
|
|
|
7
7
|
import SemanticColor from "./types/SemanticColor.js";
|
|
8
8
|
import ListItemType from "./types/ListItemType.js";
|
|
9
9
|
import type { ITab } from "./TabContainer.js";
|
|
10
|
+
import TabInStripTemplate from "./generated/templates/TabInStripTemplate.lit.js";
|
|
11
|
+
import TabInOverflowTemplate from "./generated/templates/TabInOverflowTemplate.lit.js";
|
|
10
12
|
/**
|
|
11
13
|
* @class
|
|
12
14
|
* The <code>ui5-tab</code> represents a selectable item inside a <code>ui5-tabcontainer</code>.
|
|
@@ -149,7 +151,11 @@ declare class Tab extends UI5Element implements ITab, ITabbable {
|
|
|
149
151
|
get effectiveHidden(): boolean;
|
|
150
152
|
get tabs(): Array<Tab>;
|
|
151
153
|
get ariaLabelledBy(): string;
|
|
152
|
-
get stripClasses():
|
|
154
|
+
get stripClasses(): {
|
|
155
|
+
itemClasses: string;
|
|
156
|
+
additionalTextClasses: string;
|
|
157
|
+
};
|
|
158
|
+
get additionalTextClasses(): string;
|
|
153
159
|
get expandButtonTitle(): string;
|
|
154
160
|
get _roleDescription(): string | undefined;
|
|
155
161
|
get _ariaHasPopup(): "menu" | undefined;
|
|
@@ -158,8 +164,8 @@ declare class Tab extends UI5Element implements ITab, ITabbable {
|
|
|
158
164
|
get semanticIconClasses(): string;
|
|
159
165
|
get overflowClasses(): string;
|
|
160
166
|
get overflowState(): ListItemType.Inactive | ListItemType.Active;
|
|
161
|
-
static get stripTemplate():
|
|
162
|
-
static get overflowTemplate():
|
|
167
|
+
static get stripTemplate(): typeof TabInStripTemplate;
|
|
168
|
+
static get overflowTemplate(): typeof TabInOverflowTemplate;
|
|
163
169
|
static onDefine(): Promise<void>;
|
|
164
170
|
}
|
|
165
171
|
export default Tab;
|
package/dist/Tab.js
CHANGED
|
@@ -169,7 +169,7 @@ let Tab = Tab_1 = class Tab extends UI5Element {
|
|
|
169
169
|
classes.push("ui5-tab-strip-item--inline");
|
|
170
170
|
}
|
|
171
171
|
if (this.additionalText) {
|
|
172
|
-
classes.push("ui5-tab-strip-item--
|
|
172
|
+
classes.push("ui5-tab-strip-item--withAdditionalText");
|
|
173
173
|
}
|
|
174
174
|
if (!this.icon && !this._mixedMode) {
|
|
175
175
|
classes.push("ui5-tab-strip-item--textOnly");
|
|
@@ -186,6 +186,19 @@ let Tab = Tab_1 = class Tab extends UI5Element {
|
|
|
186
186
|
if (this.isSingleClickArea) {
|
|
187
187
|
classes.push(`ui5-tab-strip-item--singleClickArea`);
|
|
188
188
|
}
|
|
189
|
+
return {
|
|
190
|
+
itemClasses: classes.join(" "),
|
|
191
|
+
additionalTextClasses: this.additionalTextClasses,
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
get additionalTextClasses() {
|
|
195
|
+
const classes = [];
|
|
196
|
+
if (this.additionalText) {
|
|
197
|
+
classes.push("ui5-tab-strip-itemAdditionalText");
|
|
198
|
+
}
|
|
199
|
+
if (this.icon && !this.additionalText) {
|
|
200
|
+
classes.push("ui5-tab-strip-itemAdditionalText-hidden");
|
|
201
|
+
}
|
|
189
202
|
return classes.join(" ");
|
|
190
203
|
}
|
|
191
204
|
get expandButtonTitle() {
|
package/dist/Tab.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tab.js","sourceRoot":"","sources":["../src/Tab.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AAGrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,eAAe,MAAM,0DAA0D,CAAC;AACvF,OAAO,eAAe,MAAM,sDAAsD,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAC3E,OAAO,EACN,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,0BAA0B,GAC1B,MAAM,mCAAmC,CAAC;AAE3C,OAAO,wCAAwC,CAAC;AAChD,OAAO,wCAAwC,CAAC;AAChD,OAAO,8CAA8C,CAAC;AACtD,OAAO,aAAa,MAAM,0BAA0B,CAAC;AACrD,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAEjD,YAAY;AACZ,OAAO,WAAW,MAAM,0CAA0C,CAAC;AACnE,OAAO,kBAAkB,MAAM,iDAAiD,CAAC;AACjF,OAAO,qBAAqB,MAAM,oDAAoD,CAAC;AAEvF,SAAS;AACT,OAAO,GAAG,MAAM,+BAA+B,CAAC;AAChD,OAAO,QAAQ,MAAM,sCAAsC,CAAC;AAC5D,OAAO,WAAW,MAAM,yCAAyC,CAAC;AAElE,MAAM,mBAAmB,GAAG;IAC3B,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,wBAAwB;IAClD,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,wBAAwB;IAClD,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,uBAAuB;IAChD,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,wBAAwB;CAClD,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AAaH,IAAM,GAAG,WAAT,MAAM,GAAI,SAAQ,UAAU;IAoI3B,IAAI,SAAS,CAAC,GAAW;QACxB,IAAI,CAAC,mBAAmB,EAAG,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,IAAI,CAAC,mBAAmB,EAAG,CAAC,YAAY,CAAC,UAAU,CAAE,CAAC;IAC9D,CAAC;IAED,IAAI,WAAW;QACd,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAErB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,cAAc,EAAE;YAC1C,IAAI,IAAI,KAAK,IAAI,CAAC,cAAc,GAAG,CAAC;SACpC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,WAAW;QACd,OAAO,KAAK,CAAC;IACd,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,eAAe,CAAC,KAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,oBAAoB;QACvB,OAAO,eAAe,CAAC,KAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,iBAAiB,CAAC;IAC5E,CAAC;IAED,IAAI,oBAAoB;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC;IAC9E,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;IAC/E,CAAC;IAED,IAAI,mBAAmB;QACtB,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;IACvF,CAAC;IAED,IAAI,kBAAkB;QACrB,OAAO,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,eAAe,EAAE,CAAC;IAC7F,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC;IACtD,CAAC;IAED,IAAI,cAAc;QACjB,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED;;;;;;;;;OASG;IACH,mBAAmB;QAClB,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAC5B,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC;SACjC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IAED,cAAc;QACb,IAAI,aAAa,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;QAE3C,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,kBAAkB,EAAE,EAAE;YACzD,aAAa,GAAG,IAAI,CAAC,kBAAkB,EAAG,CAAC;SAC3C;QAED,OAAO,aAAa,CAAC;IACtB,CAAC;IAED,IAAI,cAAc;QACjB,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC;IACtC,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IACvC,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IACpB,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC;IACnC,CAAC;IAED,IAAI,iBAAiB;QACpB,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,IAAI,eAAe,CAAC;IAC3D,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,IAAI,IAAI;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAc,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,cAAc;QACjB,MAAM,MAAM,GAAG,EAAE,CAAC;QAElB,IAAI,IAAI,CAAC,IAAI,EAAE;YACd,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;SAChC;QAED,IAAI,IAAI,CAAC,cAAc,EAAE;YACxB,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAC;SAC1C;QAED,IAAI,IAAI,CAAC,IAAI,EAAE;YACd,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;SAChC;QAED,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,oBAAoB,CAAC,CAAC;SAC7C;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,IAAI,YAAY;QACf,MAAM,OAAO,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAEvC,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC3B,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;SAC7C;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClB,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;SAC7C;QAED,IAAI,IAAI,CAAC,SAAS,EAAE;YACnB,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;SAC3C;QAED,IAAI,IAAI,CAAC,cAAc,EAAE;YACxB,OAAO,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;SACrD;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACnC,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;SAC7C;QAED,IAAI,IAAI,CAAC,IAAI,EAAE;YACd,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;SAC7C;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE;YAClC,OAAO,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;SAC9C;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,EAAE;YAC1C,OAAO,CAAC,IAAI,CAAC,uBAAuB,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;SACjE;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC3B,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;SACpD;QAED,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,KAAG,CAAC,UAAU,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAG,CAAC,UAAU,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjG,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IACpD,CAAC;IAED,IAAI,gBAAgB;QACnB,QAAQ,IAAI,CAAC,MAAM,EAAE;YACrB,KAAK,aAAa,CAAC,QAAQ;gBAC1B,OAAO,aAAa,CAAC;YACtB,KAAK,aAAa,CAAC,QAAQ;gBAC1B,OAAO,OAAO,CAAC;YAChB,KAAK,aAAa,CAAC,QAAQ;gBAC1B,OAAO,OAAO,CAAC;YAChB;gBACC,OAAO,IAAI,CAAC;SACZ;IACF,CAAC;IAED,IAAI,kBAAkB;QACrB,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,EAAE;YAC1C,OAAO,IAAI,CAAC;SACZ;QAED,OAAO,KAAG,CAAC,UAAU,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,mBAAmB;QACtB,MAAM,OAAO,GAAG,CAAC,uBAAuB,CAAC,CAAC;QAE1C,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,EAAE;YACnF,OAAO,CAAC,IAAI,CAAC,0BAA0B,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;SACpE;QAED,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,eAAe;QAClB,MAAM,OAAO,GAAG,CAAC,uBAAuB,CAAC,CAAC;QAE1C,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,EAAE;YACnF,OAAO,CAAC,IAAI,CAAC,0BAA0B,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;SACpE;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC3B,OAAO,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;SAChD;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClB,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;SACtD;QAED,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC;IAChG,CAAC;IAED,MAAM,KAAK,aAAa;QACvB,OAAO,kBAAkB,CAAC;IAC3B,CAAC;IAED,MAAM,KAAK,gBAAgB;QAC1B,OAAO,qBAAqB,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ;QACpB,KAAG,CAAC,UAAU,GAAG,MAAM,aAAa,CAAC,oBAAoB,CAAC,CAAC;IAC5D,CAAC;CACD,CAAA;AA1XA;IADC,QAAQ,EAAE;iCACG;AAUd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;qCACT;AAUnB;IADC,QAAQ,EAAE;2CACa;AAaxB;IADC,QAAQ,EAAE;iCACG;AAuBd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;mCAChD;AAWvB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;qCACT;AAGnB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;sCACR;AAGpB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;qCACZ;AAGf;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;2CACH;AAkBzB;IARC,IAAI,CAAC;QACL,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,IAAI;QACf,uBAAuB,EAAE;YACxB,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,KAAK;SACZ;KACD,CAAC;oCACoB;AAoBtB;IARC,IAAI,CAAC;QACL,IAAI,EAAE,WAAW;QACjB,eAAe,EAAE,IAAI;QACrB,uBAAuB,EAAE;YACxB,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,KAAK;SACZ;KACD,CAAC;oCACmB;AA3HhB,GAAG;IAZR,aAAa,CAAC;QACd,GAAG,EAAE,SAAS;QACd,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,GAAG;QACX,YAAY,EAAE;YACb,IAAI;YACJ,MAAM;YACN,cAAc;SACd;KACD,CAAC;GACI,GAAG,CAmYR;AAED,GAAG,CAAC,MAAM,EAAE,CAAC;AAEb,YAAY,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;AACzC,YAAY,CAAC,2BAA2B,CAAC,WAAW,CAAC,CAAC;AAEtD,eAAe,GAAG,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tTAB_ARIA_DESIGN_POSITIVE,\n\tTAB_ARIA_DESIGN_NEGATIVE,\n\tTAB_ARIA_DESIGN_CRITICAL,\n\tTAB_ARIA_DESIGN_NEUTRAL,\n\tTABCONTAINER_END_OVERFLOW,\n\tTAB_SPLIT_ROLE_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport SemanticColor from \"./types/SemanticColor.js\";\nimport ListItemType from \"./types/ListItemType.js\";\nimport TabContainer from \"./TabContainer.js\";\nimport type { ITab } from \"./TabContainer.js\";\nimport Icon from \"./Icon.js\";\nimport Button from \"./Button.js\";\nimport CustomListItem from \"./CustomListItem.js\";\n\n// Templates\nimport TabTemplate from \"./generated/templates/TabTemplate.lit.js\";\nimport TabInStripTemplate from \"./generated/templates/TabInStripTemplate.lit.js\";\nimport TabInOverflowTemplate from \"./generated/templates/TabInOverflowTemplate.lit.js\";\n\n// Styles\nimport css from \"./generated/themes/Tab.css.js\";\nimport stripCss from \"./generated/themes/TabInStrip.css.js\";\nimport overflowCss from \"./generated/themes/TabInOverflow.css.js\";\n\nconst DESIGN_DESCRIPTIONS = {\n\t[SemanticColor.Positive]: TAB_ARIA_DESIGN_POSITIVE,\n\t[SemanticColor.Negative]: TAB_ARIA_DESIGN_NEGATIVE,\n\t[SemanticColor.Neutral]: TAB_ARIA_DESIGN_NEUTRAL,\n\t[SemanticColor.Critical]: TAB_ARIA_DESIGN_CRITICAL,\n};\n\n/**\n * @class\n * The <code>ui5-tab</code> represents a selectable item inside a <code>ui5-tabcontainer</code>.\n * It defines both the item in the tab strip (top part of the <code>ui5-tabcontainer</code>) and the\n * content that is presented to the user once the tab is selected.\n *\n * @abstract\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Tab\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-tab\n * @implements sap.ui.webc.main.ITab\n * @public\n */\n@customElement({\n\ttag: \"ui5-tab\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: TabTemplate,\n\tstyles: css,\n\tdependencies: [\n\t\tIcon,\n\t\tButton,\n\t\tCustomListItem,\n\t],\n})\nclass Tab extends UI5Element implements ITab, ITabbable {\n\t/**\n\t * The text to be displayed for the item.\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @public\n\t * @name sap.ui.webc.main.Tab.prototype.text\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Disabled tabs can't be selected.\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @public\n\t * @name sap.ui.webc.main.Tab.prototype.disabled\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Represents the \"additionalText\" text, which is displayed in the tab. In the cases when in the same time there are tabs with icons and tabs without icons, if a tab has no icon the \"additionalText\" is displayed larger.\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @public\n\t * @name sap.ui.webc.main.Tab.prototype.additionalText\n\t */\n\t@property()\n\tadditionalText!: string;\n\n\t/**\n\t * Defines the icon source URI to be displayed as graphical element within the component.\n\t * The SAP-icons font provides numerous built-in icons.\n\t * See all the available icons in the <ui5-link target=\"_blank\" href=\"https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html\">Icon Explorer</ui5-link>.\n\t *\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @public\n\t * @name sap.ui.webc.main.Tab.prototype.icon\n\t */\n\t@property()\n\ticon!: string;\n\n\t/**\n\t * Defines the component's design color.\n\t * <br><br>\n\t * The design is applied to:\n\t * <ul>\n\t * <li>the component icon</li>\n\t * <li>the <code>text</code> when the component overflows</li>\n\t * <li>the tab selection line</li>\n\t * </ul>\n\t *\n\t * <br><br>\n\t * Available designs are: <code>\"Default\"</code>, <code>\"Neutral\"</code>, <code>\"Positive\"</code>, <code>\"Critical\"</code> and <code>\"Negative\"</code>.\n\t *\n\t * <br><br>\n\t * <b>Note:</b> The design depends on the current theme.\n\t * @type {sap.ui.webc.main.types.SemanticColor}\n\t * @defaultvalue \"Default\"\n\t * @public\n\t * @name sap.ui.webc.main.Tab.prototype.design\n\t */\n\t@property({ type: SemanticColor, defaultValue: SemanticColor.Default })\n\tdesign!: SemanticColor;\n\n\t/**\n\t * Specifies if the component is selected.\n\t *\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @public\n\t * @name sap.ui.webc.main.Tab.prototype.selected\n\t */\n\t@property({ type: Boolean })\n\tselected!: boolean;\n\n\t@property({ type: Boolean })\n\t_selected!: boolean;\n\n\t@property({ type: Object })\n\t_realTab!: Tab;\n\n\t@property({ type: Boolean })\n\t_isTopLevelTab!: boolean;\n\n\t/**\n\t * Holds the content associated with this tab.\n\t *\n\t * @type {Node[]}\n\t * @public\n\t * @slot\n\t * @name sap.ui.webc.main.Tab.prototype.default\n\t */\n\t@slot({\n\t\ttype: Node,\n\t\t\"default\": true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: true,\n\t\t\tslots: false,\n\t\t},\n\t})\n\tcontent!: Array<Node>;\n\n\t/**\n\t * Defines hierarchies with nested sub tabs.\n\t * <br><br>\n\t * <b>Note:</b> Use <code>ui5-tab</code> and <code>ui5-tab-separator</code> for the intended design.\n\t *\n\t * @type {sap.ui.webc.main.ITab[]}\n\t * @public\n\t * @slot subTabs\n\t * @name sap.ui.webc.main.Tab.prototype.subTabs\n\t */\n\t@slot({\n\t\ttype: HTMLElement,\n\t\tindividualSlots: true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: true,\n\t\t\tslots: false,\n\t\t},\n\t})\n\tsubTabs!: Array<ITab>\n\n\t_isInline?: boolean;\n\t_mixedMode?: boolean;\n\t_getElementInStrip?: () => ITab | null;\n\t_individualSlot!: string;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tset _tabIndex(val: string) {\n\t\tthis.getTabInStripDomRef()!.setAttribute(\"tabindex\", val);\n\t}\n\n\tget _tabIndex() {\n\t\treturn this.getTabInStripDomRef()!.getAttribute(\"tabindex\")!;\n\t}\n\n\tget displayText() {\n\t\tlet text = this.text;\n\n\t\tif (this._isInline && this.additionalText) {\n\t\t\ttext += ` (${this.additionalText})`;\n\t\t}\n\n\t\treturn text;\n\t}\n\n\tget isSeparator() {\n\t\treturn false;\n\t}\n\n\tget stripPresentation() {\n\t\treturn executeTemplate(Tab.stripTemplate, this);\n\t}\n\n\tget overflowPresentation() {\n\t\treturn executeTemplate(Tab.overflowTemplate, this);\n\t}\n\n\tget stableDomRef() {\n\t\treturn this.getAttribute(\"stable-dom-ref\") || `${this._id}-stable-dom-ref`;\n\t}\n\n\tget requiresExpandButton() {\n\t\treturn this.subTabs.length > 0 && this._isTopLevelTab && this._hasOwnContent;\n\t}\n\n\tget isSingleClickArea() {\n\t\treturn this.subTabs.length > 0 && this._isTopLevelTab && !this._hasOwnContent;\n\t}\n\n\tget isOnSelectedTabPath(): boolean {\n\t\treturn this._realTab === this || this.tabs.some(subTab => subTab.isOnSelectedTabPath);\n\t}\n\n\tget _effectiveSlotName() {\n\t\treturn this.isOnSelectedTabPath ? this._individualSlot : `disabled-${this._individualSlot}`;\n\t}\n\n\tget _defaultSlotName() {\n\t\treturn this._realTab === this ? \"\" : \"disabled-slot\";\n\t}\n\n\tget _hasOwnContent() {\n\t\treturn willShowContent(this.content);\n\t}\n\n\t/**\n\t * Returns the DOM reference of the tab that is placed in the header.\n\t * <b>Note:</b> Tabs, placed in the <code>subTabs</code> slot of other tabs are not shown in the header. Calling this method on such tabs will return <code>null</code>.\n\t * <b>Note:</b> If you need a DOM ref to the tab content please use the <code>getDomRef</code> method.\n\t *\n\t * @function\n\t * @public\n * @name sap.ui.webc.main.Tab.prototype.getTabInStripDomRef\n\t * @since 1.0.0-rc.16\n\t */\n\tgetTabInStripDomRef() {\n\t\tif (this._getElementInStrip) {\n\t\t\treturn this._getElementInStrip();\n\t\t}\n\n\t\treturn null;\n\t}\n\n\tgetFocusDomRef() {\n\t\tlet focusedDomRef = super.getFocusDomRef();\n\n\t\tif (this._getElementInStrip && this._getElementInStrip()) {\n\t\t\tfocusedDomRef = this._getElementInStrip()!;\n\t\t}\n\n\t\treturn focusedDomRef;\n\t}\n\n\tget isMixedModeTab() {\n\t\treturn !this.icon && this._mixedMode;\n\t}\n\n\tget isTextOnlyTab() {\n\t\treturn !this.icon && !this._mixedMode;\n\t}\n\n\tget isIconTab() {\n\t\treturn !!this.icon;\n\t}\n\n\tget effectiveDisabled() {\n\t\treturn this.disabled || undefined;\n\t}\n\n\tget effectiveSelected() {\n\t\tconst subItemSelected = this.tabs.some(elem => elem.effectiveSelected);\n\t\treturn this.selected || this._selected || subItemSelected;\n\t}\n\n\tget effectiveHidden() {\n\t\treturn !this.effectiveSelected;\n\t}\n\n\tget tabs(): Array<Tab> {\n\t\treturn this.subTabs.filter((tab): tab is Tab => !tab.isSeparator);\n\t}\n\n\tget ariaLabelledBy() {\n\t\tconst labels = [];\n\n\t\tif (this.text) {\n\t\t\tlabels.push(`${this._id}-text`);\n\t\t}\n\n\t\tif (this.additionalText) {\n\t\t\tlabels.push(`${this._id}-additionalText`);\n\t\t}\n\n\t\tif (this.icon) {\n\t\t\tlabels.push(`${this._id}-icon`);\n\t\t}\n\n\t\tif (this._designDescription) {\n\t\t\tlabels.push(`${this._id}-designDescription`);\n\t\t}\n\n\t\treturn labels.join(\" \");\n\t}\n\n\tget stripClasses() {\n\t\tconst classes = [\"ui5-tab-strip-item\"];\n\n\t\tif (this.effectiveSelected) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--selected\");\n\t\t}\n\n\t\tif (this.disabled) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--disabled\");\n\t\t}\n\n\t\tif (this._isInline) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--inline\");\n\t\t}\n\n\t\tif (this.additionalText) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--withAddionalText\");\n\t\t}\n\n\t\tif (!this.icon && !this._mixedMode) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--textOnly\");\n\t\t}\n\n\t\tif (this.icon) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--withIcon\");\n\t\t}\n\n\t\tif (!this.icon && this._mixedMode) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--mixedMode\");\n\t\t}\n\n\t\tif (this.design !== SemanticColor.Default) {\n\t\t\tclasses.push(`ui5-tab-strip-item--${this.design.toLowerCase()}`);\n\t\t}\n\n\t\tif (this.isSingleClickArea) {\n\t\t\tclasses.push(`ui5-tab-strip-item--singleClickArea`);\n\t\t}\n\n\t\treturn classes.join(\" \");\n\t}\n\n\tget expandButtonTitle() {\n\t\treturn Tab.i18nBundle.getText(TABCONTAINER_END_OVERFLOW);\n\t}\n\n\tget _roleDescription() {\n\t\treturn this.subTabs.length > 0 ? Tab.i18nBundle.getText(TAB_SPLIT_ROLE_DESCRIPTION) : undefined;\n\t}\n\n\tget _ariaHasPopup() {\n\t\treturn this.isSingleClickArea ? \"menu\" : undefined;\n\t}\n\n\tget semanticIconName() {\n\t\tswitch (this.design) {\n\t\tcase SemanticColor.Positive:\n\t\t\treturn \"sys-enter-2\";\n\t\tcase SemanticColor.Negative:\n\t\t\treturn \"error\";\n\t\tcase SemanticColor.Critical:\n\t\t\treturn \"alert\";\n\t\tdefault:\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tget _designDescription() {\n\t\tif (this.design === SemanticColor.Default) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn Tab.i18nBundle.getText(DESIGN_DESCRIPTIONS[this.design]);\n\t}\n\n\tget semanticIconClasses() {\n\t\tconst classes = [\"ui5-tab-semantic-icon\"];\n\n\t\tif (this.design !== SemanticColor.Default && this.design !== SemanticColor.Neutral) {\n\t\t\tclasses.push(`ui5-tab-semantic-icon--${this.design.toLowerCase()}`);\n\t\t}\n\n\t\treturn classes.join(\" \");\n\t}\n\n\tget overflowClasses() {\n\t\tconst classes = [\"ui5-tab-overflow-item\"];\n\n\t\tif (this.design !== SemanticColor.Default && this.design !== SemanticColor.Neutral) {\n\t\t\tclasses.push(`ui5-tab-overflow-item--${this.design.toLowerCase()}`);\n\t\t}\n\n\t\tif (this.effectiveDisabled) {\n\t\t\tclasses.push(\"ui5-tab-overflow-item--disabled\");\n\t\t}\n\n\t\tif (this.selected) {\n\t\t\tclasses.push(\"ui5-tab-overflow-item--selectedSubTab\");\n\t\t}\n\n\t\treturn classes.join(\" \");\n\t}\n\n\tget overflowState() {\n\t\treturn (this.disabled || this.isSingleClickArea) ? ListItemType.Inactive : ListItemType.Active;\n\t}\n\n\tstatic get stripTemplate() {\n\t\treturn TabInStripTemplate;\n\t}\n\n\tstatic get overflowTemplate() {\n\t\treturn TabInOverflowTemplate;\n\t}\n\n\tstatic async onDefine() {\n\t\tTab.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nTab.define();\n\nTabContainer.registerTabStyles(stripCss);\nTabContainer.registerStaticAreaTabStyles(overflowCss);\n\nexport default Tab;\n"]}
|
|
1
|
+
{"version":3,"file":"Tab.js","sourceRoot":"","sources":["../src/Tab.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tTAB_ARIA_DESIGN_POSITIVE,\n\tTAB_ARIA_DESIGN_NEGATIVE,\n\tTAB_ARIA_DESIGN_CRITICAL,\n\tTAB_ARIA_DESIGN_NEUTRAL,\n\tTABCONTAINER_END_OVERFLOW,\n\tTAB_SPLIT_ROLE_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport SemanticColor from \"./types/SemanticColor.js\";\nimport ListItemType from \"./types/ListItemType.js\";\nimport TabContainer from \"./TabContainer.js\";\nimport type { ITab } from \"./TabContainer.js\";\nimport Icon from \"./Icon.js\";\nimport Button from \"./Button.js\";\nimport CustomListItem from \"./CustomListItem.js\";\n\n// Templates\nimport TabTemplate from \"./generated/templates/TabTemplate.lit.js\";\nimport TabInStripTemplate from \"./generated/templates/TabInStripTemplate.lit.js\";\nimport TabInOverflowTemplate from \"./generated/templates/TabInOverflowTemplate.lit.js\";\n\n// Styles\nimport css from \"./generated/themes/Tab.css.js\";\nimport stripCss from \"./generated/themes/TabInStrip.css.js\";\nimport overflowCss from \"./generated/themes/TabInOverflow.css.js\";\n\nconst DESIGN_DESCRIPTIONS = {\n\t[SemanticColor.Positive]: TAB_ARIA_DESIGN_POSITIVE,\n\t[SemanticColor.Negative]: TAB_ARIA_DESIGN_NEGATIVE,\n\t[SemanticColor.Neutral]: TAB_ARIA_DESIGN_NEUTRAL,\n\t[SemanticColor.Critical]: TAB_ARIA_DESIGN_CRITICAL,\n};\n\n/**\n * @class\n * The <code>ui5-tab</code> represents a selectable item inside a <code>ui5-tabcontainer</code>.\n * It defines both the item in the tab strip (top part of the <code>ui5-tabcontainer</code>) and the\n * content that is presented to the user once the tab is selected.\n *\n * @abstract\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Tab\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-tab\n * @implements sap.ui.webc.main.ITab\n * @public\n */\n@customElement({\n\ttag: \"ui5-tab\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: TabTemplate,\n\tstyles: css,\n\tdependencies: [\n\t\tIcon,\n\t\tButton,\n\t\tCustomListItem,\n\t],\n})\nclass Tab extends UI5Element implements ITab, ITabbable {\n\t/**\n\t * The text to be displayed for the item.\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @public\n\t * @name sap.ui.webc.main.Tab.prototype.text\n\t */\n\t@property()\n\ttext!: string;\n\n\t/**\n\t * Disabled tabs can't be selected.\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @public\n\t * @name sap.ui.webc.main.Tab.prototype.disabled\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Represents the \"additionalText\" text, which is displayed in the tab. In the cases when in the same time there are tabs with icons and tabs without icons, if a tab has no icon the \"additionalText\" is displayed larger.\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @public\n\t * @name sap.ui.webc.main.Tab.prototype.additionalText\n\t */\n\t@property()\n\tadditionalText!: string;\n\n\t/**\n\t * Defines the icon source URI to be displayed as graphical element within the component.\n\t * The SAP-icons font provides numerous built-in icons.\n\t * See all the available icons in the <ui5-link target=\"_blank\" href=\"https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html\">Icon Explorer</ui5-link>.\n\t *\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @public\n\t * @name sap.ui.webc.main.Tab.prototype.icon\n\t */\n\t@property()\n\ticon!: string;\n\n\t/**\n\t * Defines the component's design color.\n\t * <br><br>\n\t * The design is applied to:\n\t * <ul>\n\t * <li>the component icon</li>\n\t * <li>the <code>text</code> when the component overflows</li>\n\t * <li>the tab selection line</li>\n\t * </ul>\n\t *\n\t * <br><br>\n\t * Available designs are: <code>\"Default\"</code>, <code>\"Neutral\"</code>, <code>\"Positive\"</code>, <code>\"Critical\"</code> and <code>\"Negative\"</code>.\n\t *\n\t * <br><br>\n\t * <b>Note:</b> The design depends on the current theme.\n\t * @type {sap.ui.webc.main.types.SemanticColor}\n\t * @defaultvalue \"Default\"\n\t * @public\n\t * @name sap.ui.webc.main.Tab.prototype.design\n\t */\n\t@property({ type: SemanticColor, defaultValue: SemanticColor.Default })\n\tdesign!: SemanticColor;\n\n\t/**\n\t * Specifies if the component is selected.\n\t *\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @public\n\t * @name sap.ui.webc.main.Tab.prototype.selected\n\t */\n\t@property({ type: Boolean })\n\tselected!: boolean;\n\n\t@property({ type: Boolean })\n\t_selected!: boolean;\n\n\t@property({ type: Object })\n\t_realTab!: Tab;\n\n\t@property({ type: Boolean })\n\t_isTopLevelTab!: boolean;\n\n\t/**\n\t * Holds the content associated with this tab.\n\t *\n\t * @type {Node[]}\n\t * @public\n\t * @slot\n\t * @name sap.ui.webc.main.Tab.prototype.default\n\t */\n\t@slot({\n\t\ttype: Node,\n\t\t\"default\": true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: true,\n\t\t\tslots: false,\n\t\t},\n\t})\n\tcontent!: Array<Node>;\n\n\t/**\n\t * Defines hierarchies with nested sub tabs.\n\t * <br><br>\n\t * <b>Note:</b> Use <code>ui5-tab</code> and <code>ui5-tab-separator</code> for the intended design.\n\t *\n\t * @type {sap.ui.webc.main.ITab[]}\n\t * @public\n\t * @slot subTabs\n\t * @name sap.ui.webc.main.Tab.prototype.subTabs\n\t */\n\t@slot({\n\t\ttype: HTMLElement,\n\t\tindividualSlots: true,\n\t\tinvalidateOnChildChange: {\n\t\t\tproperties: true,\n\t\t\tslots: false,\n\t\t},\n\t})\n\tsubTabs!: Array<ITab>\n\n\t_isInline?: boolean;\n\t_mixedMode?: boolean;\n\t_getElementInStrip?: () => ITab | null;\n\t_individualSlot!: string;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tset _tabIndex(val: string) {\n\t\tthis.getTabInStripDomRef()!.setAttribute(\"tabindex\", val);\n\t}\n\n\tget _tabIndex() {\n\t\treturn this.getTabInStripDomRef()!.getAttribute(\"tabindex\")!;\n\t}\n\n\tget displayText() {\n\t\tlet text = this.text;\n\n\t\tif (this._isInline && this.additionalText) {\n\t\t\ttext += ` (${this.additionalText})`;\n\t\t}\n\n\t\treturn text;\n\t}\n\n\tget isSeparator() {\n\t\treturn false;\n\t}\n\n\tget stripPresentation() {\n\t\treturn executeTemplate(Tab.stripTemplate, this);\n\t}\n\n\tget overflowPresentation() {\n\t\treturn executeTemplate(Tab.overflowTemplate, this);\n\t}\n\n\tget stableDomRef() {\n\t\treturn this.getAttribute(\"stable-dom-ref\") || `${this._id}-stable-dom-ref`;\n\t}\n\n\tget requiresExpandButton() {\n\t\treturn this.subTabs.length > 0 && this._isTopLevelTab && this._hasOwnContent;\n\t}\n\n\tget isSingleClickArea() {\n\t\treturn this.subTabs.length > 0 && this._isTopLevelTab && !this._hasOwnContent;\n\t}\n\n\tget isOnSelectedTabPath(): boolean {\n\t\treturn this._realTab === this || this.tabs.some(subTab => subTab.isOnSelectedTabPath);\n\t}\n\n\tget _effectiveSlotName() {\n\t\treturn this.isOnSelectedTabPath ? this._individualSlot : `disabled-${this._individualSlot}`;\n\t}\n\n\tget _defaultSlotName() {\n\t\treturn this._realTab === this ? \"\" : \"disabled-slot\";\n\t}\n\n\tget _hasOwnContent() {\n\t\treturn willShowContent(this.content);\n\t}\n\n\t/**\n\t * Returns the DOM reference of the tab that is placed in the header.\n\t * <b>Note:</b> Tabs, placed in the <code>subTabs</code> slot of other tabs are not shown in the header. Calling this method on such tabs will return <code>null</code>.\n\t * <b>Note:</b> If you need a DOM ref to the tab content please use the <code>getDomRef</code> method.\n\t *\n\t * @function\n\t * @public\n * @name sap.ui.webc.main.Tab.prototype.getTabInStripDomRef\n\t * @since 1.0.0-rc.16\n\t */\n\tgetTabInStripDomRef() {\n\t\tif (this._getElementInStrip) {\n\t\t\treturn this._getElementInStrip();\n\t\t}\n\n\t\treturn null;\n\t}\n\n\tgetFocusDomRef() {\n\t\tlet focusedDomRef = super.getFocusDomRef();\n\n\t\tif (this._getElementInStrip && this._getElementInStrip()) {\n\t\t\tfocusedDomRef = this._getElementInStrip()!;\n\t\t}\n\n\t\treturn focusedDomRef;\n\t}\n\n\tget isMixedModeTab() {\n\t\treturn !this.icon && this._mixedMode;\n\t}\n\n\tget isTextOnlyTab() {\n\t\treturn !this.icon && !this._mixedMode;\n\t}\n\n\tget isIconTab() {\n\t\treturn !!this.icon;\n\t}\n\n\tget effectiveDisabled() {\n\t\treturn this.disabled || undefined;\n\t}\n\n\tget effectiveSelected() {\n\t\tconst subItemSelected = this.tabs.some(elem => elem.effectiveSelected);\n\t\treturn this.selected || this._selected || subItemSelected;\n\t}\n\n\tget effectiveHidden() {\n\t\treturn !this.effectiveSelected;\n\t}\n\n\tget tabs(): Array<Tab> {\n\t\treturn this.subTabs.filter((tab): tab is Tab => !tab.isSeparator);\n\t}\n\n\tget ariaLabelledBy() {\n\t\tconst labels = [];\n\n\t\tif (this.text) {\n\t\t\tlabels.push(`${this._id}-text`);\n\t\t}\n\n\t\tif (this.additionalText) {\n\t\t\tlabels.push(`${this._id}-additionalText`);\n\t\t}\n\n\t\tif (this.icon) {\n\t\t\tlabels.push(`${this._id}-icon`);\n\t\t}\n\n\t\tif (this._designDescription) {\n\t\t\tlabels.push(`${this._id}-designDescription`);\n\t\t}\n\n\t\treturn labels.join(\" \");\n\t}\n\n\tget stripClasses() {\n\t\tconst classes = [\"ui5-tab-strip-item\"];\n\n\t\tif (this.effectiveSelected) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--selected\");\n\t\t}\n\n\t\tif (this.disabled) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--disabled\");\n\t\t}\n\n\t\tif (this._isInline) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--inline\");\n\t\t}\n\n\t\tif (this.additionalText) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--withAdditionalText\");\n\t\t}\n\n\t\tif (!this.icon && !this._mixedMode) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--textOnly\");\n\t\t}\n\n\t\tif (this.icon) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--withIcon\");\n\t\t}\n\n\t\tif (!this.icon && this._mixedMode) {\n\t\t\tclasses.push(\"ui5-tab-strip-item--mixedMode\");\n\t\t}\n\n\t\tif (this.design !== SemanticColor.Default) {\n\t\t\tclasses.push(`ui5-tab-strip-item--${this.design.toLowerCase()}`);\n\t\t}\n\n\t\tif (this.isSingleClickArea) {\n\t\t\tclasses.push(`ui5-tab-strip-item--singleClickArea`);\n\t\t}\n\n\t\treturn {\n\t\t\titemClasses: classes.join(\" \"),\n\t\t\tadditionalTextClasses: this.additionalTextClasses,\n\t\t};\n\t}\n\n\tget additionalTextClasses() {\n\t\tconst classes = [];\n\t\tif (this.additionalText) {\n\t\t\tclasses.push(\"ui5-tab-strip-itemAdditionalText\");\n\t\t}\n\n\t\tif (this.icon && !this.additionalText) {\n\t\t\tclasses.push(\"ui5-tab-strip-itemAdditionalText-hidden\");\n\t\t}\n\n\t\treturn classes.join(\" \");\n\t}\n\n\tget expandButtonTitle() {\n\t\treturn Tab.i18nBundle.getText(TABCONTAINER_END_OVERFLOW);\n\t}\n\n\tget _roleDescription() {\n\t\treturn this.subTabs.length > 0 ? Tab.i18nBundle.getText(TAB_SPLIT_ROLE_DESCRIPTION) : undefined;\n\t}\n\n\tget _ariaHasPopup() {\n\t\treturn this.isSingleClickArea ? \"menu\" : undefined;\n\t}\n\n\tget semanticIconName() {\n\t\tswitch (this.design) {\n\t\tcase SemanticColor.Positive:\n\t\t\treturn \"sys-enter-2\";\n\t\tcase SemanticColor.Negative:\n\t\t\treturn \"error\";\n\t\tcase SemanticColor.Critical:\n\t\t\treturn \"alert\";\n\t\tdefault:\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tget _designDescription() {\n\t\tif (this.design === SemanticColor.Default) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn Tab.i18nBundle.getText(DESIGN_DESCRIPTIONS[this.design]);\n\t}\n\n\tget semanticIconClasses() {\n\t\tconst classes = [\"ui5-tab-semantic-icon\"];\n\n\t\tif (this.design !== SemanticColor.Default && this.design !== SemanticColor.Neutral) {\n\t\t\tclasses.push(`ui5-tab-semantic-icon--${this.design.toLowerCase()}`);\n\t\t}\n\n\t\treturn classes.join(\" \");\n\t}\n\n\tget overflowClasses() {\n\t\tconst classes = [\"ui5-tab-overflow-item\"];\n\n\t\tif (this.design !== SemanticColor.Default && this.design !== SemanticColor.Neutral) {\n\t\t\tclasses.push(`ui5-tab-overflow-item--${this.design.toLowerCase()}`);\n\t\t}\n\n\t\tif (this.effectiveDisabled) {\n\t\t\tclasses.push(\"ui5-tab-overflow-item--disabled\");\n\t\t}\n\n\t\tif (this.selected) {\n\t\t\tclasses.push(\"ui5-tab-overflow-item--selectedSubTab\");\n\t\t}\n\n\t\treturn classes.join(\" \");\n\t}\n\n\tget overflowState() {\n\t\treturn (this.disabled || this.isSingleClickArea) ? ListItemType.Inactive : ListItemType.Active;\n\t}\n\n\tstatic get stripTemplate() {\n\t\treturn TabInStripTemplate;\n\t}\n\n\tstatic get overflowTemplate() {\n\t\treturn TabInOverflowTemplate;\n\t}\n\n\tstatic async onDefine() {\n\t\tTab.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nTab.define();\n\nTabContainer.registerTabStyles(stripCss);\nTabContainer.registerStaticAreaTabStyles(overflowCss);\n\nexport default Tab;\n"]}
|