@ui5/webcomponents 0.0.0-c6155714e → 0.0.0-c638668a1
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 +1049 -1
- package/README.md +144 -41
- package/customI18n.js +50 -0
- package/dist/Assets-static.js +6 -0
- package/dist/Assets.js +3 -2
- package/dist/Avatar.js +392 -0
- package/dist/AvatarGroup.js +603 -0
- package/dist/Badge.js +48 -28
- package/dist/Breadcrumbs.js +575 -0
- package/dist/BreadcrumbsItem.js +103 -0
- package/dist/BusyIndicator.js +171 -19
- package/dist/Button.js +207 -49
- package/dist/Calendar.js +363 -394
- package/dist/CalendarDate.js +45 -0
- package/dist/CalendarHeader.js +139 -54
- package/dist/CalendarPart.js +111 -0
- package/dist/Card.js +47 -157
- package/dist/CardHeader.js +288 -0
- package/dist/Carousel.js +690 -0
- package/dist/CheckBox.js +190 -56
- package/dist/ColorPalette.js +494 -0
- package/dist/ColorPaletteItem.js +137 -0
- package/dist/ColorPalettePopover.js +244 -0
- package/dist/ColorPicker.js +524 -0
- package/dist/ComboBox.js +1109 -0
- package/dist/ComboBoxFilters.js +40 -0
- package/dist/ComboBoxGroupItem.js +70 -0
- package/dist/ComboBoxItem.js +49 -0
- package/dist/CustomListItem.js +38 -9
- package/dist/DateComponentBase.js +168 -0
- package/dist/DatePicker.js +515 -286
- package/dist/DateRangePicker.js +350 -0
- package/dist/DateTimePicker.js +430 -0
- package/dist/DayPicker.js +538 -237
- package/dist/Dialog.js +484 -47
- package/dist/DurationPicker.js +312 -0
- package/dist/FileUploader.js +530 -0
- package/dist/GroupHeaderListItem.js +36 -8
- package/dist/Icon.js +224 -43
- package/dist/Input.js +937 -114
- package/dist/Interfaces.js +192 -0
- package/dist/Label.js +27 -12
- package/dist/Link.js +163 -37
- package/dist/List.js +568 -74
- package/dist/ListItem.js +165 -34
- package/dist/ListItemBase.js +53 -9
- package/dist/MessageStrip.js +119 -93
- package/dist/MonthPicker.js +194 -95
- package/dist/MultiComboBox.js +675 -164
- package/dist/MultiComboBoxItem.js +43 -0
- package/dist/MultiInput.js +348 -0
- package/dist/Option.js +59 -5
- package/dist/Panel.js +132 -41
- package/dist/Popover.js +397 -240
- package/dist/Popup.js +397 -276
- package/dist/ProgressIndicator.js +235 -0
- package/dist/RadioButton.js +175 -87
- package/dist/RadioButtonGroup.js +53 -29
- package/dist/RangeSlider.js +769 -0
- package/dist/RatingIndicator.js +321 -0
- package/dist/ResponsivePopover.js +207 -0
- package/dist/SegmentedButton.js +303 -0
- package/dist/SegmentedButtonItem.js +109 -0
- package/dist/Select.js +521 -111
- package/dist/Slider.js +320 -0
- package/dist/SliderBase.js +846 -0
- package/dist/SplitButton.js +425 -0
- package/dist/StandardListItem.js +46 -24
- package/dist/StepInput.js +684 -0
- package/dist/SuggestionGroupItem.js +64 -0
- package/dist/SuggestionItem.js +146 -0
- package/dist/SuggestionListItem.js +76 -0
- package/dist/Switch.js +74 -42
- package/dist/Tab.js +189 -19
- package/dist/TabContainer.js +770 -279
- package/dist/TabSeparator.js +44 -4
- package/dist/Table.js +526 -24
- package/dist/TableCell.js +13 -15
- package/dist/TableColumn.js +18 -7
- package/dist/TableGroupRow.js +160 -0
- package/dist/TableRow.js +255 -28
- package/dist/TextArea.js +322 -40
- package/dist/TimePicker.js +166 -0
- package/dist/TimePickerBase.js +463 -0
- package/dist/TimeSelection.js +493 -0
- package/dist/Title.js +18 -10
- package/dist/Toast.js +63 -37
- package/dist/ToggleButton.js +26 -13
- package/dist/Token.js +87 -49
- package/dist/Tokenizer.js +377 -65
- package/dist/Tree.js +443 -0
- package/dist/TreeItem.js +189 -0
- package/dist/TreeListItem.js +340 -0
- package/dist/WheelSlider.js +435 -0
- package/dist/YearPicker.js +209 -155
- package/dist/api.json +7144 -0
- package/dist/css/themes/Avatar.css +1 -0
- package/dist/css/themes/AvatarGroup.css +1 -0
- package/dist/css/themes/Badge.css +1 -0
- package/dist/css/themes/Breadcrumbs.css +1 -0
- package/dist/css/themes/BreadcrumbsPopover.css +1 -0
- package/dist/css/themes/BrowserScrollbar.css +1 -0
- package/dist/css/themes/BusyIndicator.css +1 -0
- package/dist/css/themes/Button.css +1 -0
- package/dist/css/themes/Button.ie11.css +1 -0
- package/dist/css/themes/Calendar.css +1 -0
- package/dist/css/themes/CalendarHeader.css +1 -0
- package/dist/css/themes/Card.css +1 -0
- package/dist/css/themes/CardHeader.css +1 -0
- package/dist/css/themes/Carousel.css +1 -0
- package/dist/css/themes/CheckBox.css +1 -0
- package/dist/css/themes/ColorPalette.css +1 -0
- package/dist/css/themes/ColorPaletteItem.css +1 -0
- package/dist/css/themes/ColorPalettePopover.css +1 -0
- package/dist/css/themes/ColorPaletteStaticArea.css +1 -0
- package/dist/css/themes/ColorPicker.css +1 -0
- package/dist/css/themes/ComboBox.css +1 -0
- package/dist/css/themes/ComboBoxPopover.css +1 -0
- package/dist/css/themes/CustomListItem.css +1 -0
- package/dist/css/themes/DatePicker.css +1 -0
- package/dist/css/themes/DatePickerPopover.css +1 -0
- package/dist/css/themes/DateRangePicker.css +1 -0
- package/dist/css/themes/DateTimePicker.css +1 -0
- package/dist/css/themes/DateTimePickerPopover.css +1 -0
- package/dist/css/themes/DayPicker.css +1 -0
- package/dist/css/themes/Dialog.css +1 -0
- package/dist/css/themes/FileUploader.css +1 -0
- package/dist/css/themes/GroupHeaderListItem.css +1 -0
- package/dist/css/themes/GrowingButton.css +1 -0
- package/dist/css/themes/Icon.css +1 -0
- package/dist/css/themes/Input.css +1 -0
- package/dist/css/themes/InputIcon.css +1 -0
- package/dist/css/themes/InvisibleTextStyles.css +1 -0
- package/dist/css/themes/Label.css +1 -0
- package/dist/css/themes/Link.css +1 -0
- package/dist/css/themes/List.css +1 -0
- package/dist/css/themes/ListItem.css +1 -0
- package/dist/css/themes/ListItemBase.css +1 -0
- package/dist/css/themes/MessageStrip.css +1 -0
- package/dist/css/themes/MonthPicker.css +1 -0
- package/dist/css/themes/MultiComboBox.css +1 -0
- package/dist/css/themes/MultiInput.css +1 -0
- package/dist/css/themes/Panel.css +1 -0
- package/dist/css/themes/Popover.css +1 -0
- package/dist/css/themes/Popup.css +1 -0
- package/dist/css/themes/PopupGlobal.css +1 -0
- package/dist/css/themes/PopupStaticAreaStyles.css +1 -0
- package/dist/css/themes/PopupsCommon.css +1 -0
- package/dist/css/themes/ProgressIndicator.css +1 -0
- package/dist/css/themes/RadioButton.css +1 -0
- package/dist/css/themes/RatingIndicator.css +1 -0
- package/dist/css/themes/ResponsivePopover.css +1 -0
- package/dist/css/themes/ResponsivePopoverCommon.css +1 -0
- package/dist/css/themes/SegmentedButton.css +1 -0
- package/dist/css/themes/Select.css +1 -0
- package/dist/css/themes/SelectPopover.css +1 -0
- package/dist/css/themes/SliderBase.css +1 -0
- package/dist/css/themes/SplitButton.css +1 -0
- package/dist/css/themes/StepInput.css +1 -0
- package/dist/css/themes/Suggestions.css +1 -0
- package/dist/css/themes/Switch.css +1 -0
- package/dist/css/themes/Tab.css +1 -0
- package/dist/css/themes/TabContainer.css +1 -0
- package/dist/css/themes/TabInOverflow.css +1 -0
- package/dist/css/themes/TabInStrip.css +1 -0
- package/dist/css/themes/TabSeparatorInOverflow.css +1 -0
- package/dist/css/themes/TabSeparatorInStrip.css +1 -0
- package/dist/css/themes/Table.css +1 -0
- package/dist/css/themes/TableCell.css +1 -0
- package/dist/css/themes/TableColumn.css +1 -0
- package/dist/css/themes/TableGroupRow.css +1 -0
- package/dist/css/themes/TableRow.css +1 -0
- package/dist/css/themes/TapHighlightColor.css +1 -0
- package/dist/css/themes/TextArea.css +1 -0
- package/dist/css/themes/TimePicker.css +1 -0
- package/dist/css/themes/TimePickerPopover.css +1 -0
- package/dist/css/themes/TimeSelection.css +1 -0
- package/dist/css/themes/Title.css +1 -0
- package/dist/css/themes/Toast.css +1 -0
- package/dist/css/themes/ToggleButton.css +1 -0
- package/dist/css/themes/ToggleButton.ie11.css +1 -0
- package/dist/css/themes/Token.css +1 -0
- package/dist/css/themes/Tokenizer.css +1 -0
- package/dist/css/themes/Tree.css +1 -0
- package/dist/css/themes/TreeListItem.css +1 -0
- package/dist/css/themes/ValueStateMessage.css +1 -0
- package/dist/css/themes/WheelSlider.css +1 -0
- package/dist/css/themes/YearPicker.css +1 -0
- package/dist/css/themes/sap_belize/parameters-bundle.css +1 -0
- package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -0
- package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -0
- package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -0
- package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
- package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -0
- package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
- package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -0
- package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -0
- package/dist/features/ColorPaletteMoreColors.js +42 -0
- package/dist/features/InputElementsFormSupport.js +35 -1
- package/dist/features/InputSuggestions.js +376 -52
- package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cy.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_in.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
- package/dist/generated/assets/themes/sap_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 -0
- 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 -0
- package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -0
- package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -0
- package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -0
- package/dist/generated/i18n/i18n-defaults.js +2 -2
- package/dist/generated/json-imports/Themes-static.js +35 -0
- package/dist/generated/json-imports/Themes.js +23 -13
- package/dist/generated/json-imports/i18n-static.js +162 -0
- package/dist/generated/json-imports/i18n.js +113 -89
- package/dist/generated/templates/AvatarGroupTemplate.lit.js +9 -0
- package/dist/generated/templates/AvatarTemplate.lit.js +12 -0
- package/dist/generated/templates/BadgeTemplate.lit.js +5 -6
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +8 -0
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +9 -0
- package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -5
- package/dist/generated/templates/ButtonTemplate.lit.js +6 -6
- package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -4
- package/dist/generated/templates/CalendarTemplate.lit.js +4 -4
- package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
- package/dist/generated/templates/CardTemplate.lit.js +5 -7
- package/dist/generated/templates/CarouselTemplate.lit.js +16 -0
- package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -7
- package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +7 -0
- package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +7 -0
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +8 -0
- package/dist/generated/templates/ColorPaletteTemplate.lit.js +12 -0
- package/dist/generated/templates/ColorPickerTemplate.lit.js +7 -0
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +23 -0
- package/dist/generated/templates/ComboBoxTemplate.lit.js +11 -0
- package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -12
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +10 -0
- package/dist/generated/templates/DatePickerTemplate.lit.js +6 -5
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +12 -0
- package/dist/generated/templates/DayPickerTemplate.lit.js +13 -11
- package/dist/generated/templates/DialogTemplate.lit.js +9 -8
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +10 -0
- package/dist/generated/templates/FileUploaderTemplate.lit.js +10 -0
- package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -4
- package/dist/generated/templates/IconTemplate.lit.js +6 -6
- package/dist/generated/templates/InputPopoverTemplate.lit.js +27 -0
- package/dist/generated/templates/InputTemplate.lit.js +9 -9
- package/dist/generated/templates/LabelTemplate.lit.js +4 -4
- package/dist/generated/templates/LinkTemplate.lit.js +5 -5
- package/dist/generated/templates/ListItemTemplate.lit.js +13 -12
- package/dist/generated/templates/ListTemplate.lit.js +12 -8
- package/dist/generated/templates/MessageStripTemplate.lit.js +6 -22
- package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -6
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +26 -0
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js +10 -11
- package/dist/generated/templates/MultiInputTemplate.lit.js +16 -0
- package/dist/generated/templates/PanelTemplate.lit.js +9 -6
- package/dist/generated/templates/PopoverTemplate.lit.js +9 -7
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +7 -0
- package/dist/generated/templates/PopupTemplate.lit.js +4 -4
- package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +17 -0
- package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -7
- package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -0
- package/dist/generated/templates/RatingIndicatorTemplate.lit.js +14 -0
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +19 -0
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
- package/dist/generated/templates/SegmentedButtonTemplate.lit.js +7 -0
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +23 -0
- package/dist/generated/templates/SelectTemplate.lit.js +6 -6
- package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -0
- package/dist/generated/templates/SliderTemplate.lit.js +12 -0
- package/dist/generated/templates/SplitButtonTemplate.lit.js +7 -0
- package/dist/generated/templates/StandardListItemTemplate.lit.js +21 -18
- package/dist/generated/templates/StepInputTemplate.lit.js +10 -0
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js +27 -0
- package/dist/generated/templates/SwitchTemplate.lit.js +8 -6
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +11 -0
- package/dist/generated/templates/TabContainerTemplate.lit.js +15 -22
- package/dist/generated/templates/TabInOverflowTemplate.lit.js +9 -0
- package/dist/generated/templates/TabInStripTemplate.lit.js +11 -0
- package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +7 -0
- package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +7 -0
- package/dist/generated/templates/TabTemplate.lit.js +4 -4
- package/dist/generated/templates/TableCellTemplate.lit.js +4 -4
- package/dist/generated/templates/TableColumnTemplate.lit.js +4 -4
- package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
- package/dist/generated/templates/TableRowTemplate.lit.js +12 -6
- package/dist/generated/templates/TableTemplate.lit.js +13 -8
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +11 -0
- package/dist/generated/templates/TextAreaTemplate.lit.js +8 -8
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +7 -0
- package/dist/generated/templates/TimePickerTemplate.lit.js +9 -0
- package/dist/generated/templates/TimeSelectionTemplate.lit.js +11 -0
- package/dist/generated/templates/TitleTemplate.lit.js +10 -10
- package/dist/generated/templates/ToastTemplate.lit.js +5 -4
- package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -6
- package/dist/generated/templates/TokenTemplate.lit.js +7 -5
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +12 -0
- package/dist/generated/templates/TokenizerTemplate.lit.js +6 -6
- package/dist/generated/templates/TreeListItemTemplate.lit.js +21 -0
- package/dist/generated/templates/TreeTemplate.lit.js +8 -0
- package/dist/generated/templates/WheelSliderTemplate.lit.js +10 -0
- package/dist/generated/templates/YearPickerTemplate.lit.js +6 -6
- package/dist/generated/themes/Avatar.css.js +8 -0
- package/dist/generated/themes/AvatarGroup.css.js +8 -0
- package/dist/generated/themes/Badge.css.js +6 -7
- package/dist/generated/themes/Breadcrumbs.css.js +8 -0
- package/dist/generated/themes/BreadcrumbsPopover.css.js +8 -0
- package/dist/generated/themes/BrowserScrollbar.css.js +8 -0
- package/dist/generated/themes/BusyIndicator.css.js +6 -7
- package/dist/generated/themes/Button.css.js +6 -7
- package/dist/generated/themes/Button.ie11.css.js +8 -0
- package/dist/generated/themes/Calendar.css.js +6 -7
- package/dist/generated/themes/CalendarHeader.css.js +6 -7
- package/dist/generated/themes/Card.css.js +6 -7
- package/dist/generated/themes/CardHeader.css.js +8 -0
- package/dist/generated/themes/Carousel.css.js +8 -0
- package/dist/generated/themes/CheckBox.css.js +6 -7
- package/dist/generated/themes/ColorPalette.css.js +8 -0
- package/dist/generated/themes/ColorPaletteItem.css.js +8 -0
- package/dist/generated/themes/ColorPalettePopover.css.js +8 -0
- package/dist/generated/themes/ColorPaletteStaticArea.css.js +8 -0
- package/dist/generated/themes/ColorPicker.css.js +8 -0
- package/dist/generated/themes/ComboBox.css.js +8 -0
- package/dist/generated/themes/ComboBoxPopover.css.js +8 -0
- package/dist/generated/themes/CustomListItem.css.js +6 -7
- package/dist/generated/themes/DatePicker.css.js +6 -7
- package/dist/generated/themes/DatePickerPopover.css.js +8 -0
- package/dist/generated/themes/DateRangePicker.css.js +8 -0
- package/dist/generated/themes/DateTimePicker.css.js +8 -0
- package/dist/generated/themes/DateTimePickerPopover.css.js +8 -0
- package/dist/generated/themes/DayPicker.css.js +6 -7
- package/dist/generated/themes/Dialog.css.js +6 -7
- package/dist/generated/themes/FileUploader.css.js +8 -0
- package/dist/generated/themes/GroupHeaderListItem.css.js +6 -7
- package/dist/generated/themes/GrowingButton.css.js +8 -0
- package/dist/generated/themes/Icon.css.js +6 -7
- package/dist/generated/themes/Input.css.js +6 -7
- package/dist/generated/themes/InputIcon.css.js +6 -7
- package/dist/generated/themes/InvisibleTextStyles.css.js +6 -7
- package/dist/generated/themes/Label.css.js +6 -7
- package/dist/generated/themes/Link.css.js +6 -7
- package/dist/generated/themes/List.css.js +6 -7
- package/dist/generated/themes/ListItem.css.js +6 -7
- package/dist/generated/themes/ListItemBase.css.js +6 -7
- package/dist/generated/themes/MessageStrip.css.js +6 -7
- package/dist/generated/themes/MonthPicker.css.js +6 -7
- package/dist/generated/themes/MultiComboBox.css.js +6 -7
- package/dist/generated/themes/MultiInput.css.js +8 -0
- package/dist/generated/themes/Panel.css.js +6 -7
- package/dist/generated/themes/Popover.css.js +6 -7
- package/dist/generated/themes/Popup.css.js +6 -7
- package/dist/generated/themes/PopupGlobal.css.js +8 -0
- package/dist/generated/themes/PopupStaticAreaStyles.css.js +8 -0
- package/dist/generated/themes/PopupsCommon.css.js +8 -0
- package/dist/generated/themes/ProgressIndicator.css.js +8 -0
- package/dist/generated/themes/RadioButton.css.js +6 -7
- package/dist/generated/themes/RatingIndicator.css.js +8 -0
- package/dist/generated/themes/ResponsivePopover.css.js +8 -0
- package/dist/generated/themes/ResponsivePopoverCommon.css.js +8 -0
- package/dist/generated/themes/SegmentedButton.css.js +8 -0
- package/dist/generated/themes/Select.css.js +6 -7
- package/dist/generated/themes/SelectPopover.css.js +8 -0
- package/dist/generated/themes/SliderBase.css.js +8 -0
- package/dist/generated/themes/SplitButton.css.js +8 -0
- package/dist/generated/themes/StepInput.css.js +8 -0
- package/dist/generated/themes/Suggestions.css.js +8 -0
- package/dist/generated/themes/Switch.css.js +6 -7
- package/dist/generated/themes/Tab.css.js +6 -7
- package/dist/generated/themes/TabContainer.css.js +6 -7
- package/dist/generated/themes/TabInOverflow.css.js +8 -0
- package/dist/generated/themes/TabInStrip.css.js +8 -0
- package/dist/generated/themes/TabSeparatorInOverflow.css.js +8 -0
- package/dist/generated/themes/TabSeparatorInStrip.css.js +8 -0
- package/dist/generated/themes/Table.css.js +6 -7
- package/dist/generated/themes/TableCell.css.js +6 -7
- package/dist/generated/themes/TableColumn.css.js +6 -7
- package/dist/generated/themes/TableGroupRow.css.js +8 -0
- package/dist/generated/themes/TableRow.css.js +6 -7
- package/dist/generated/themes/TapHighlightColor.css.js +8 -0
- package/dist/generated/themes/TextArea.css.js +6 -7
- package/dist/generated/themes/TimePicker.css.js +8 -0
- package/dist/generated/themes/TimePickerPopover.css.js +8 -0
- package/dist/generated/themes/TimeSelection.css.js +8 -0
- package/dist/generated/themes/Title.css.js +6 -7
- package/dist/generated/themes/Toast.css.js +6 -7
- package/dist/generated/themes/ToggleButton.css.js +6 -7
- package/dist/generated/themes/ToggleButton.ie11.css.js +8 -0
- package/dist/generated/themes/Token.css.js +6 -7
- package/dist/generated/themes/Tokenizer.css.js +6 -7
- package/dist/generated/themes/Tree.css.js +8 -0
- package/dist/generated/themes/TreeListItem.css.js +8 -0
- package/dist/generated/themes/ValueStateMessage.css.js +8 -0
- package/dist/generated/themes/WheelSlider.css.js +8 -0
- package/dist/generated/themes/YearPicker.css.js +6 -7
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -0
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -0
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -0
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -0
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -0
- package/dist/i18n/messagebundle.properties +360 -0
- package/dist/i18n/messagebundle_ar.properties +241 -0
- package/dist/i18n/messagebundle_bg.properties +241 -0
- package/dist/i18n/messagebundle_ca.properties +241 -0
- package/dist/i18n/messagebundle_cs.properties +241 -0
- package/dist/i18n/messagebundle_cy.properties +241 -0
- package/dist/i18n/messagebundle_da.properties +241 -0
- package/dist/i18n/messagebundle_de.properties +241 -0
- package/dist/i18n/messagebundle_el.properties +241 -0
- package/dist/i18n/messagebundle_en.properties +241 -0
- package/dist/i18n/messagebundle_en_GB.properties +241 -0
- package/dist/i18n/messagebundle_en_US_sappsd.properties +241 -0
- package/dist/i18n/messagebundle_en_US_saprigi.properties +241 -0
- package/dist/i18n/messagebundle_en_US_saptrc.properties +241 -0
- package/dist/i18n/messagebundle_es.properties +241 -0
- package/dist/i18n/messagebundle_es_MX.properties +241 -0
- package/dist/i18n/messagebundle_et.properties +241 -0
- package/dist/i18n/messagebundle_fi.properties +241 -0
- package/dist/i18n/messagebundle_fr.properties +241 -0
- package/dist/i18n/messagebundle_fr_CA.properties +241 -0
- package/dist/i18n/messagebundle_hi.properties +241 -0
- package/dist/i18n/messagebundle_hr.properties +241 -0
- package/dist/i18n/messagebundle_hu.properties +241 -0
- package/dist/i18n/messagebundle_id.properties +241 -0
- package/dist/i18n/messagebundle_in.properties +172 -0
- package/dist/i18n/messagebundle_it.properties +241 -0
- package/dist/i18n/messagebundle_iw.properties +241 -0
- package/dist/i18n/messagebundle_ja.properties +241 -0
- package/dist/i18n/messagebundle_kk.properties +241 -0
- package/dist/i18n/messagebundle_ko.properties +241 -0
- package/dist/i18n/messagebundle_lt.properties +241 -0
- package/dist/i18n/messagebundle_lv.properties +241 -0
- package/dist/i18n/messagebundle_ms.properties +241 -0
- package/dist/i18n/messagebundle_nl.properties +241 -0
- package/dist/i18n/messagebundle_no.properties +241 -0
- package/dist/i18n/messagebundle_pl.properties +241 -0
- package/dist/i18n/messagebundle_pt.properties +241 -0
- package/dist/i18n/messagebundle_pt_PT.properties +241 -0
- package/dist/i18n/messagebundle_ro.properties +241 -0
- package/dist/i18n/messagebundle_ru.properties +241 -0
- package/dist/i18n/messagebundle_sh.properties +241 -0
- package/dist/i18n/messagebundle_sk.properties +241 -0
- package/dist/i18n/messagebundle_sl.properties +241 -0
- package/dist/i18n/messagebundle_sv.properties +241 -0
- package/dist/i18n/messagebundle_th.properties +241 -0
- package/dist/i18n/messagebundle_tr.properties +241 -0
- package/dist/i18n/messagebundle_uk.properties +241 -0
- package/dist/i18n/messagebundle_vi.properties +241 -0
- package/dist/i18n/messagebundle_zh_CN.properties +241 -0
- package/dist/i18n/messagebundle_zh_TW.properties +241 -0
- package/dist/popup-utils/OpenedPopupsRegistry.js +18 -13
- package/dist/popup-utils/PopoverRegistry.js +55 -21
- package/dist/timepicker-utils/TimeSlider.js +103 -0
- package/dist/types/AvatarColorScheme.js +104 -0
- package/dist/types/AvatarGroupType.js +43 -0
- package/dist/types/AvatarShape.js +41 -0
- package/dist/types/AvatarSize.js +67 -0
- package/dist/types/BreadcrumbsDesign.js +42 -0
- package/dist/types/BreadcrumbsSeparatorStyle.js +69 -0
- package/dist/types/BusyIndicatorSize.js +18 -2
- package/dist/types/ButtonDesign.js +29 -2
- package/dist/types/CalendarSelectionMode.js +47 -0
- package/dist/types/CarouselArrowsPlacement.js +40 -0
- package/dist/types/GrowingMode.js +48 -0
- package/dist/types/HasPopup.js +62 -0
- package/dist/types/InputType.js +49 -1
- package/dist/types/LinkDesign.js +18 -2
- package/dist/types/ListGrowingMode.js +15 -0
- package/dist/types/ListItemType.js +21 -2
- package/dist/types/ListMode.js +28 -1
- package/dist/types/ListSeparators.js +17 -1
- package/dist/types/MessageStripDesign.js +54 -0
- package/dist/types/PanelAccessibleRole.js +29 -1
- package/dist/types/PopoverHorizontalAlign.js +37 -1
- package/dist/types/PopoverPlacementType.js +21 -1
- package/dist/types/PopoverVerticalAlign.js +37 -2
- package/dist/types/Priority.js +55 -0
- package/dist/types/SemanticColor.js +19 -2
- package/dist/types/SwitchDesign.js +40 -0
- package/dist/types/TabContainerTabsPlacement.js +40 -0
- package/dist/types/TabLayout.js +40 -0
- package/dist/types/TableGrowingMode.js +15 -0
- package/dist/types/TableMode.js +47 -0
- package/dist/types/TableRowType.js +40 -0
- package/dist/types/TabsOverflowMode.js +40 -0
- package/dist/types/TitleLevel.js +49 -1
- package/dist/types/ToastPlacement.js +23 -1
- package/dist/types/WrappingType.js +41 -0
- package/dist/webcomponentsjs/CHANGELOG.md +61 -0
- package/dist/webcomponentsjs/README.md +64 -47
- package/dist/webcomponentsjs/bundles/webcomponents-ce.js +38 -38
- package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +1 -1
- package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js +60 -0
- package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js.map +1 -0
- package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js +95 -0
- package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js.map +1 -0
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +292 -229
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +1 -1
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +190 -170
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +1 -1
- package/dist/webcomponentsjs/bundles/webcomponents-sd.js +151 -132
- package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +1 -1
- package/dist/webcomponentsjs/custom-elements-es5-adapter.js +2 -2
- package/dist/webcomponentsjs/webcomponents-bundle.js +302 -230
- package/dist/webcomponentsjs/webcomponents-bundle.js.map +1 -1
- package/dist/webcomponentsjs/webcomponents-loader.js +49 -28
- package/package-scripts.js +1 -0
- package/package.json +23 -6
- package/src/Assets-static.js +6 -0
- package/src/Assets.js +7 -0
- package/src/Avatar.hbs +20 -0
- package/src/Avatar.js +392 -0
- package/src/AvatarGroup.hbs +30 -0
- package/src/AvatarGroup.js +603 -0
- package/src/Badge.hbs +14 -0
- package/src/Badge.js +165 -0
- package/src/Breadcrumbs.hbs +43 -0
- package/src/Breadcrumbs.js +575 -0
- package/src/BreadcrumbsItem.js +103 -0
- package/src/BreadcrumbsPopover.hbs +28 -0
- package/src/BusyIndicator.hbs +32 -0
- package/src/BusyIndicator.js +268 -0
- package/src/Button.hbs +45 -0
- package/src/Button.js +490 -0
- package/src/Calendar.hbs +69 -0
- package/src/Calendar.js +496 -0
- package/src/CalendarDate.js +45 -0
- package/src/CalendarHeader.hbs +54 -0
- package/src/CalendarHeader.js +209 -0
- package/src/CalendarPart.js +111 -0
- package/src/Card.hbs +14 -0
- package/src/Card.js +160 -0
- package/src/CardHeader.hbs +42 -0
- package/src/CardHeader.js +288 -0
- package/src/Carousel.hbs +86 -0
- package/src/Carousel.js +690 -0
- package/src/CheckBox.hbs +45 -0
- package/src/CheckBox.js +457 -0
- package/src/ColorPalette.hbs +52 -0
- package/src/ColorPalette.js +494 -0
- package/src/ColorPaletteDialog.hbs +18 -0
- package/src/ColorPaletteItem.hbs +11 -0
- package/src/ColorPaletteItem.js +137 -0
- package/src/ColorPalettePopover.hbs +31 -0
- package/src/ColorPalettePopover.js +244 -0
- package/src/ColorPicker.hbs +98 -0
- package/src/ColorPicker.js +524 -0
- package/src/ComboBox.hbs +50 -0
- package/src/ComboBox.js +1109 -0
- package/src/ComboBoxFilters.js +40 -0
- package/src/ComboBoxGroupItem.js +70 -0
- package/src/ComboBoxItem.js +49 -0
- package/src/ComboBoxPopover.hbs +126 -0
- package/src/CustomListItem.hbs +5 -0
- package/src/CustomListItem.js +99 -0
- package/src/DateComponentBase.js +168 -0
- package/src/DatePicker.hbs +44 -0
- package/src/DatePicker.js +831 -0
- package/src/DatePickerPopover.hbs +63 -0
- package/src/DateRangePicker.js +350 -0
- package/src/DateTimePicker.js +430 -0
- package/src/DateTimePickerPopover.hbs +74 -0
- package/src/DayPicker.hbs +66 -0
- package/src/DayPicker.js +754 -0
- package/src/Dialog.hbs +35 -0
- package/src/Dialog.js +584 -0
- package/src/DurationPicker.js +312 -0
- package/src/FileUploader.hbs +40 -0
- package/src/FileUploader.js +530 -0
- package/src/FileUploaderPopover.hbs +25 -0
- package/src/GroupHeaderListItem.hbs +15 -0
- package/src/GroupHeaderListItem.js +94 -0
- package/src/Icon.hbs +25 -0
- package/src/Icon.js +376 -0
- package/src/Input.hbs +78 -0
- package/src/Input.js +1473 -0
- package/src/InputPopover.hbs +117 -0
- package/src/Interfaces.js +192 -0
- package/src/Label.hbs +13 -0
- package/src/Label.js +152 -0
- package/src/Link.hbs +21 -0
- package/src/Link.js +367 -0
- package/src/List.hbs +89 -0
- package/src/List.js +1066 -0
- package/src/ListItem.hbs +103 -0
- package/src/ListItem.js +371 -0
- package/src/ListItemBase.js +179 -0
- package/src/MessageStrip.hbs +34 -0
- package/src/MessageStrip.js +264 -0
- package/src/MonthPicker.hbs +29 -0
- package/src/MonthPicker.js +299 -0
- package/src/MultiComboBox.hbs +78 -0
- package/src/MultiComboBox.js +1095 -0
- package/src/MultiComboBoxItem.js +43 -0
- package/src/MultiComboBoxPopover.hbs +133 -0
- package/src/MultiInput.hbs +41 -0
- package/src/MultiInput.js +348 -0
- package/src/Option.js +126 -0
- package/src/Panel.hbs +63 -0
- package/src/Panel.js +471 -0
- package/src/Popover.hbs +25 -0
- package/src/Popover.js +835 -0
- package/src/Popup.hbs +34 -0
- package/src/Popup.js +581 -0
- package/src/PopupBlockLayer.hbs +7 -0
- package/src/ProgressIndicator.hbs +35 -0
- package/src/ProgressIndicator.js +235 -0
- package/src/RadioButton.hbs +33 -0
- package/src/RadioButton.js +506 -0
- package/src/RadioButtonGroup.js +205 -0
- package/src/RangeSlider.hbs +70 -0
- package/src/RangeSlider.js +769 -0
- package/src/RatingIndicator.hbs +33 -0
- package/src/RatingIndicator.js +321 -0
- package/src/ResponsivePopover.hbs +41 -0
- package/src/ResponsivePopover.js +207 -0
- package/src/SegmentedButton.hbs +18 -0
- package/src/SegmentedButton.js +303 -0
- package/src/SegmentedButtonItem.hbs +42 -0
- package/src/SegmentedButtonItem.js +109 -0
- package/src/Select.hbs +45 -0
- package/src/Select.js +835 -0
- package/src/SelectPopover.hbs +90 -0
- package/src/Slider.hbs +42 -0
- package/src/Slider.js +320 -0
- package/src/SliderBase.hbs +38 -0
- package/src/SliderBase.js +846 -0
- package/src/SplitButton.hbs +53 -0
- package/src/SplitButton.js +425 -0
- package/src/StandardListItem.hbs +44 -0
- package/src/StandardListItem.js +191 -0
- package/src/StepInput.hbs +80 -0
- package/src/StepInput.js +684 -0
- package/src/SuggestionGroupItem.js +64 -0
- package/src/SuggestionItem.js +146 -0
- package/src/SuggestionListItem.hbs +33 -0
- package/src/SuggestionListItem.js +76 -0
- package/src/Switch.hbs +51 -0
- package/src/Switch.js +280 -0
- package/src/Tab.hbs +3 -0
- package/src/Tab.js +338 -0
- package/src/TabContainer.hbs +83 -0
- package/src/TabContainer.js +1051 -0
- package/src/TabContainerPopover.hbs +27 -0
- package/src/TabInOverflow.hbs +21 -0
- package/src/TabInStrip.hbs +38 -0
- package/src/TabSeparator.js +83 -0
- package/src/TabSeparatorInOverflow.hbs +8 -0
- package/src/TabSeparatorInStrip.hbs +6 -0
- package/src/Table.hbs +99 -0
- package/src/Table.js +771 -0
- package/src/TableCell.hbs +7 -0
- package/src/TableCell.js +88 -0
- package/src/TableColumn.hbs +8 -0
- package/src/TableColumn.js +136 -0
- package/src/TableGroupRow.hbs +12 -0
- package/src/TableGroupRow.js +160 -0
- package/src/TableRow.hbs +61 -0
- package/src/TableRow.js +388 -0
- package/src/TextArea.hbs +50 -0
- package/src/TextArea.js +697 -0
- package/src/TextAreaPopover.hbs +28 -0
- package/src/TimePicker.hbs +35 -0
- package/src/TimePicker.js +166 -0
- package/src/TimePickerBase.js +463 -0
- package/src/TimePickerPopover.hbs +34 -0
- package/src/TimeSelection.hbs +60 -0
- package/src/TimeSelection.js +493 -0
- package/src/Title.hbs +47 -0
- package/src/Title.js +132 -0
- package/src/Toast.hbs +13 -0
- package/src/Toast.js +243 -0
- package/src/ToggleButton.hbs +5 -0
- package/src/ToggleButton.js +89 -0
- package/src/Token.hbs +30 -0
- package/src/Token.js +219 -0
- package/src/Tokenizer.hbs +27 -0
- package/src/Tokenizer.js +541 -0
- package/src/TokenizerPopover.hbs +50 -0
- package/src/Tree.hbs +43 -0
- package/src/Tree.js +443 -0
- package/src/TreeItem.js +189 -0
- package/src/TreeListItem.hbs +48 -0
- package/src/TreeListItem.js +340 -0
- package/src/WheelSlider.hbs +48 -0
- package/src/WheelSlider.js +435 -0
- package/src/YearPicker.hbs +27 -0
- package/src/YearPicker.js +324 -0
- package/src/features/ColorPaletteMoreColors.js +42 -0
- package/src/features/InputElementsFormSupport.js +88 -0
- package/src/features/InputSuggestions.js +594 -0
- package/src/i18n/messagebundle.properties +360 -0
- package/src/i18n/messagebundle_ar.properties +241 -0
- package/src/i18n/messagebundle_bg.properties +241 -0
- package/src/i18n/messagebundle_ca.properties +241 -0
- package/src/i18n/messagebundle_cs.properties +241 -0
- package/src/i18n/messagebundle_cy.properties +241 -0
- package/src/i18n/messagebundle_da.properties +241 -0
- package/src/i18n/messagebundle_de.properties +241 -0
- package/src/i18n/messagebundle_el.properties +241 -0
- package/src/i18n/messagebundle_en.properties +241 -0
- package/src/i18n/messagebundle_en_GB.properties +241 -0
- package/src/i18n/messagebundle_en_US_sappsd.properties +241 -0
- package/src/i18n/messagebundle_en_US_saprigi.properties +241 -0
- package/src/i18n/messagebundle_en_US_saptrc.properties +241 -0
- package/src/i18n/messagebundle_es.properties +241 -0
- package/src/i18n/messagebundle_es_MX.properties +241 -0
- package/src/i18n/messagebundle_et.properties +241 -0
- package/src/i18n/messagebundle_fi.properties +241 -0
- package/src/i18n/messagebundle_fr.properties +241 -0
- package/src/i18n/messagebundle_fr_CA.properties +241 -0
- package/src/i18n/messagebundle_hi.properties +241 -0
- package/src/i18n/messagebundle_hr.properties +241 -0
- package/src/i18n/messagebundle_hu.properties +241 -0
- package/src/i18n/messagebundle_id.properties +241 -0
- package/src/i18n/messagebundle_in.properties +172 -0
- package/src/i18n/messagebundle_it.properties +241 -0
- package/src/i18n/messagebundle_iw.properties +241 -0
- package/src/i18n/messagebundle_ja.properties +241 -0
- package/src/i18n/messagebundle_kk.properties +241 -0
- package/src/i18n/messagebundle_ko.properties +241 -0
- package/src/i18n/messagebundle_lt.properties +241 -0
- package/src/i18n/messagebundle_lv.properties +241 -0
- package/src/i18n/messagebundle_ms.properties +241 -0
- package/src/i18n/messagebundle_nl.properties +241 -0
- package/src/i18n/messagebundle_no.properties +241 -0
- package/src/i18n/messagebundle_pl.properties +241 -0
- package/src/i18n/messagebundle_pt.properties +241 -0
- package/src/i18n/messagebundle_pt_PT.properties +241 -0
- package/src/i18n/messagebundle_ro.properties +241 -0
- package/src/i18n/messagebundle_ru.properties +241 -0
- package/src/i18n/messagebundle_sh.properties +241 -0
- package/src/i18n/messagebundle_sk.properties +241 -0
- package/src/i18n/messagebundle_sl.properties +241 -0
- package/src/i18n/messagebundle_sv.properties +241 -0
- package/src/i18n/messagebundle_th.properties +241 -0
- package/src/i18n/messagebundle_tr.properties +241 -0
- package/src/i18n/messagebundle_uk.properties +241 -0
- package/src/i18n/messagebundle_vi.properties +241 -0
- package/src/i18n/messagebundle_zh_CN.properties +241 -0
- package/src/i18n/messagebundle_zh_TW.properties +241 -0
- package/src/popup-utils/OpenedPopupsRegistry.js +50 -0
- package/src/popup-utils/PopoverRegistry.js +145 -0
- package/src/themes/Avatar.css +227 -0
- package/src/themes/AvatarGroup.css +82 -0
- package/src/themes/Badge.css +247 -0
- package/src/themes/Breadcrumbs.css +100 -0
- package/src/themes/BreadcrumbsPopover.css +6 -0
- package/src/themes/BrowserScrollbar.css +25 -0
- package/src/themes/BusyIndicator.css +143 -0
- package/src/themes/Button.css +306 -0
- package/src/themes/Button.ie11.css +48 -0
- package/src/themes/Calendar.css +18 -0
- package/src/themes/CalendarHeader.css +137 -0
- package/src/themes/Card.css +42 -0
- package/src/themes/CardHeader.css +133 -0
- package/src/themes/Carousel.css +140 -0
- package/src/themes/CheckBox.css +289 -0
- package/src/themes/ColorPalette.css +70 -0
- package/src/themes/ColorPaletteItem.css +70 -0
- package/src/themes/ColorPalettePopover.css +16 -0
- package/src/themes/ColorPaletteStaticArea.css +17 -0
- package/src/themes/ColorPicker.css +190 -0
- package/src/themes/ComboBox.css +9 -0
- package/src/themes/ComboBoxPopover.css +17 -0
- package/src/themes/CustomListItem.css +31 -0
- package/src/themes/DatePicker.css +46 -0
- package/src/themes/DatePickerPopover.css +5 -0
- package/src/themes/DateRangePicker.css +16 -0
- package/src/themes/DateTimePicker.css +11 -0
- package/src/themes/DateTimePickerPopover.css +78 -0
- package/src/themes/DayPicker.css +269 -0
- package/src/themes/Dialog.css +70 -0
- package/src/themes/FileUploader.css +40 -0
- package/src/themes/GroupHeaderListItem.css +24 -0
- package/src/themes/GrowingButton.css +67 -0
- package/src/themes/Icon.css +38 -0
- package/src/themes/Input.css +406 -0
- package/src/themes/InputIcon.css +53 -0
- package/src/themes/InvisibleTextStyles.css +9 -0
- package/src/themes/Label.css +85 -0
- package/src/themes/Link.css +77 -0
- package/src/themes/List.css +116 -0
- package/src/themes/ListItem.css +231 -0
- package/src/themes/ListItemBase.css +79 -0
- package/src/themes/MessageStrip.css +123 -0
- package/src/themes/MonthPicker.css +86 -0
- package/src/themes/MultiComboBox.css +37 -0
- package/src/themes/MultiInput.css +14 -0
- package/src/themes/Panel.css +100 -0
- package/src/themes/Popover.css +102 -0
- package/src/themes/Popup.css +5 -0
- package/src/themes/PopupGlobal.css +6 -0
- package/src/themes/PopupStaticAreaStyles.css +17 -0
- package/src/themes/PopupsCommon.css +87 -0
- package/src/themes/ProgressIndicator.css +158 -0
- package/src/themes/RadioButton.css +249 -0
- package/src/themes/RatingIndicator.css +52 -0
- package/src/themes/ResponsivePopover.css +34 -0
- package/src/themes/ResponsivePopoverCommon.css +207 -0
- package/src/themes/SegmentedButton.css +88 -0
- package/src/themes/Select.css +53 -0
- package/src/themes/SelectPopover.css +10 -0
- package/src/themes/SliderBase.css +253 -0
- package/src/themes/SplitButton.css +98 -0
- package/src/themes/StepInput.css +269 -0
- package/src/themes/Suggestions.css +14 -0
- package/src/themes/Switch.css +370 -0
- package/src/themes/Tab.css +9 -0
- package/src/themes/TabContainer.css +128 -0
- package/src/themes/TabInOverflow.css +61 -0
- package/src/themes/TabInStrip.css +374 -0
- package/src/themes/TabSeparatorInOverflow.css +8 -0
- package/src/themes/TabSeparatorInStrip.css +5 -0
- package/src/themes/Table.css +91 -0
- package/src/themes/TableCell.css +28 -0
- package/src/themes/TableColumn.css +29 -0
- package/src/themes/TableGroupRow.css +34 -0
- package/src/themes/TableRow.css +84 -0
- package/src/themes/TapHighlightColor.css +3 -0
- package/src/themes/TextArea.css +309 -0
- package/src/themes/TimePicker.css +50 -0
- package/src/themes/TimePickerPopover.css +11 -0
- package/src/themes/TimeSelection.css +27 -0
- package/src/themes/Title.css +65 -0
- package/src/themes/Toast.css +93 -0
- package/src/themes/ToggleButton.css +88 -0
- package/src/themes/ToggleButton.ie11.css +48 -0
- package/src/themes/Token.css +117 -0
- package/src/themes/Tokenizer.css +84 -0
- package/src/themes/Tree.css +11 -0
- package/src/themes/TreeListItem.css +107 -0
- package/src/themes/ValueStateMessage.css +76 -0
- package/src/themes/WheelSlider.css +203 -0
- package/src/themes/YearPicker.css +86 -0
- package/src/themes/base/Avatar-parameters.css +38 -0
- package/src/themes/base/AvatarGroup-parameter.css +6 -0
- package/src/themes/base/Badge-parameters.css +61 -0
- package/src/themes/base/BrowserScrollbar-parameters.css +4 -0
- package/src/themes/base/BusyIndicator-parameters.css +5 -0
- package/src/themes/base/Button-parameters.css +30 -0
- package/src/themes/base/CalendarHeader-parameters.css +20 -0
- package/src/themes/base/Card-parameters.css +17 -0
- package/src/themes/base/Carousel-parameters.css +9 -0
- package/src/themes/base/CheckBox-parameters.css +53 -0
- package/src/themes/base/ColorPalette-parameters.css +14 -0
- package/src/themes/base/ColorPicker-parameters.css +8 -0
- package/src/themes/base/DatePicker-parameters.css +6 -0
- package/src/themes/base/DayPicker-parameters.css +41 -0
- package/src/themes/base/Dialog-parameters.css +9 -0
- package/src/themes/base/GroupHeaderListItem-parameters.css +3 -0
- package/src/themes/base/GrowingButton-parameters.css +6 -0
- package/src/themes/base/Input-parameters.css +63 -0
- package/src/themes/base/InputIcon-parameters.css +11 -0
- package/src/themes/base/Link-parameters.css +8 -0
- package/src/themes/base/List-parameters.css +3 -0
- package/src/themes/base/ListItemBase-parameters.css +9 -0
- package/src/themes/base/MessageStrip-parameters.css +21 -0
- package/src/themes/base/MonthPicker-parameters.css +16 -0
- package/src/themes/base/MultiComboBox-parameters.css +3 -0
- package/src/themes/base/Panel-parameters.css +11 -0
- package/src/themes/base/PopupsCommon-parameters.css +8 -0
- package/src/themes/base/ProgressIndicator-parameters.css +21 -0
- package/src/themes/base/RadioButton-parameters.css +32 -0
- package/src/themes/base/RatingIndicator-parameters.css +3 -0
- package/src/themes/base/SegmentedButtton-parameters.css +8 -0
- package/src/themes/base/Select-parameters.css +11 -0
- package/src/themes/base/SelectPopover-parameters.css +4 -0
- package/src/themes/base/SliderBase-parameters.css +57 -0
- package/src/themes/base/StepInput-parameters.css +23 -0
- package/src/themes/base/Suggestions-parameters.css +3 -0
- package/src/themes/base/Switch-parameters.css +107 -0
- package/src/themes/base/TabContainer-parameters.css +84 -0
- package/src/themes/base/Table-parameters.css +6 -0
- package/src/themes/base/TableColumn-parameters.css +3 -0
- package/src/themes/base/TableRow-parameters.css +3 -0
- package/src/themes/base/TextArea-parameters.css +22 -0
- package/src/themes/base/TimePicker-parameters.css +4 -0
- package/src/themes/base/TimelineItem-parameters.css +10 -0
- package/src/themes/base/Title-parameters.css +8 -0
- package/src/themes/base/Toast-parameters.css +6 -0
- package/src/themes/base/ToggleButton-parameters.css +8 -0
- package/src/themes/base/Token-parameters.css +19 -0
- package/src/themes/base/Tokenizer-parameters.css +4 -0
- package/src/themes/base/ValueStateMessage-parameters.css +7 -0
- package/src/themes/base/WheelSlider-parameters.css +15 -0
- package/src/themes/base/YearPicker-parameters.css +16 -0
- package/src/themes/base/sizes-parameters.css +302 -0
- package/src/themes/sap_belize/BrowserScrollbar-parameters.css +4 -0
- package/src/themes/sap_belize/Carousel-parameters.css +9 -0
- package/src/themes/sap_belize/Dialog-parameters.css +5 -0
- package/src/themes/sap_belize/Input-parameters.css +6 -0
- package/src/themes/sap_belize/InputIcon-parameters.css +5 -0
- package/src/themes/sap_belize/ProgressIndicator-parameters.css +8 -0
- package/src/themes/sap_belize/SliderBase-parameters.css +22 -0
- package/src/themes/sap_belize/TabContainer-parameters.css +6 -0
- package/src/themes/sap_belize/Table-parameters.css +7 -0
- package/src/themes/sap_belize/TimePicker-parameters.css +5 -0
- package/src/themes/sap_belize/WheelSlider-parameters.css +17 -0
- package/src/themes/sap_belize/parameters-bundle.css +48 -0
- package/src/themes/sap_belize_hcb/Avatar-parameters.css +18 -0
- package/src/themes/sap_belize_hcb/Badge-parameters.css +43 -0
- package/src/themes/sap_belize_hcb/BrowserScrollbar-parameters.css +4 -0
- package/src/themes/sap_belize_hcb/Button-parameters.css +12 -0
- package/src/themes/sap_belize_hcb/CalendarHeader-parameters.css +11 -0
- package/src/themes/sap_belize_hcb/Card-parameters.css +6 -0
- package/src/themes/sap_belize_hcb/Carousel-parameters.css +9 -0
- package/src/themes/sap_belize_hcb/CheckBox-parameters.css +12 -0
- package/src/themes/sap_belize_hcb/DatePicker-parameters.css +6 -0
- package/src/themes/sap_belize_hcb/DayPicker-parameters.css +13 -0
- package/src/themes/sap_belize_hcb/Dialog-parameters.css +7 -0
- package/src/themes/sap_belize_hcb/GrowingButton-parameters.css +8 -0
- package/src/themes/sap_belize_hcb/Input-parameters.css +14 -0
- package/src/themes/sap_belize_hcb/InputIcon-parameters.css +5 -0
- package/src/themes/sap_belize_hcb/Link-parameters.css +7 -0
- package/src/themes/sap_belize_hcb/MessageStrip-parameters.css +10 -0
- package/src/themes/sap_belize_hcb/MonthPicker-parameters.css +10 -0
- package/src/themes/sap_belize_hcb/Panel-parameters.css +5 -0
- package/src/themes/sap_belize_hcb/ProgressIndicator-parameters.css +11 -0
- package/src/themes/sap_belize_hcb/RadioButton-parameters.css +10 -0
- package/src/themes/sap_belize_hcb/Select-parameters.css +12 -0
- package/src/themes/sap_belize_hcb/SliderBase-parameters.css +17 -0
- package/src/themes/sap_belize_hcb/Switch-parameters.css +46 -0
- package/src/themes/sap_belize_hcb/TabContainer-parameters.css +44 -0
- package/src/themes/sap_belize_hcb/Table-parameters.css +7 -0
- package/src/themes/sap_belize_hcb/TableRow-parameters.css +5 -0
- package/src/themes/sap_belize_hcb/TextArea-parameters.css +6 -0
- package/src/themes/sap_belize_hcb/ToggleButton-parameters.css +7 -0
- package/src/themes/sap_belize_hcb/Token-parameters.css +6 -0
- package/src/themes/sap_belize_hcb/ValueStateMessage-parameters.css +5 -0
- package/src/themes/sap_belize_hcb/WheelSlider-parameters.css +17 -0
- package/src/themes/sap_belize_hcb/YearPicker-parameters.css +10 -0
- package/src/themes/sap_belize_hcb/parameters-bundle.css +47 -0
- package/src/themes/sap_belize_hcw/Avatar-parameters.css +18 -0
- package/src/themes/sap_belize_hcw/Badge-parameters.css +43 -0
- package/src/themes/sap_belize_hcw/BrowserScrollbar-parameters.css +4 -0
- package/src/themes/sap_belize_hcw/Button-parameters.css +12 -0
- package/src/themes/sap_belize_hcw/CalendarHeader-parameters.css +11 -0
- package/src/themes/sap_belize_hcw/Card-parameters.css +6 -0
- package/src/themes/sap_belize_hcw/Carousel-parameters.css +9 -0
- package/src/themes/sap_belize_hcw/CheckBox-parameters.css +12 -0
- package/src/themes/sap_belize_hcw/DatePicker-parameters.css +5 -0
- package/src/themes/sap_belize_hcw/DayPicker-parameters.css +14 -0
- package/src/themes/sap_belize_hcw/Dialog-parameters.css +7 -0
- package/src/themes/sap_belize_hcw/GrowingButton-parameters.css +8 -0
- package/src/themes/sap_belize_hcw/Input-parameters.css +14 -0
- package/src/themes/sap_belize_hcw/InputIcon-parameters.css +5 -0
- package/src/themes/sap_belize_hcw/Link-parameters.css +7 -0
- package/src/themes/sap_belize_hcw/MessageStrip-parameters.css +10 -0
- package/src/themes/sap_belize_hcw/MonthPicker-parameters.css +10 -0
- package/src/themes/sap_belize_hcw/Panel-parameters.css +5 -0
- package/src/themes/sap_belize_hcw/ProgressIndicator-parameters.css +11 -0
- package/src/themes/sap_belize_hcw/RadioButton-parameters.css +10 -0
- package/src/themes/sap_belize_hcw/Select-parameters.css +12 -0
- package/src/themes/sap_belize_hcw/SliderBase-parameters.css +17 -0
- package/src/themes/sap_belize_hcw/Switch-parameters.css +45 -0
- package/src/themes/sap_belize_hcw/TabContainer-parameters.css +44 -0
- package/src/themes/sap_belize_hcw/Table-parameters.css +7 -0
- package/src/themes/sap_belize_hcw/TableRow-parameters.css +5 -0
- package/src/themes/sap_belize_hcw/TextArea-parameters.css +6 -0
- package/src/themes/sap_belize_hcw/ToggleButton-parameters.css +6 -0
- package/src/themes/sap_belize_hcw/Token-parameters.css +6 -0
- package/src/themes/sap_belize_hcw/ValueStateMessage-parameters.css +5 -0
- package/src/themes/sap_belize_hcw/WheelSlider-parameters.css +17 -0
- package/src/themes/sap_belize_hcw/YearPicker-parameters.css +10 -0
- package/src/themes/sap_belize_hcw/parameters-bundle.css +47 -0
- package/src/themes/sap_fiori_3/Avatar-parameters.css +9 -0
- package/src/themes/sap_fiori_3/Button-parameters.css +14 -0
- package/src/themes/sap_fiori_3/CalendarHeader-parameters.css +8 -0
- package/src/themes/sap_fiori_3/CheckBox-parameters.css +13 -0
- package/src/themes/sap_fiori_3/DayPicker-parameters.css +6 -0
- package/src/themes/sap_fiori_3/Input-parameters.css +7 -0
- package/src/themes/sap_fiori_3/Link-parameters.css +7 -0
- package/src/themes/sap_fiori_3/List-parameters.css +5 -0
- package/src/themes/sap_fiori_3/MonthPicker-parameters.css +5 -0
- package/src/themes/sap_fiori_3/MultiComboBox-parameters.css +5 -0
- package/src/themes/sap_fiori_3/Panel-parameters.css +6 -0
- package/src/themes/sap_fiori_3/SliderBase-parameters.css +5 -0
- package/src/themes/sap_fiori_3/TabContainer-parameters.css +12 -0
- package/src/themes/sap_fiori_3/TimePicker-parameters.css +5 -0
- package/src/themes/sap_fiori_3/Token-parameters.css +9 -0
- package/src/themes/sap_fiori_3/WheelSlider-parameters.css +16 -0
- package/src/themes/sap_fiori_3/YearPicker-parameters.css +5 -0
- package/src/themes/sap_fiori_3/parameters-bundle.css +48 -0
- package/src/themes/sap_fiori_3_dark/Avatar-parameters.css +9 -0
- package/src/themes/sap_fiori_3_dark/Button-parameters.css +14 -0
- package/src/themes/sap_fiori_3_dark/CalendarHeader-parameters.css +8 -0
- package/src/themes/sap_fiori_3_dark/CheckBox-parameters.css +13 -0
- package/src/themes/sap_fiori_3_dark/DayPicker-parameters.css +6 -0
- package/src/themes/sap_fiori_3_dark/Input-parameters.css +7 -0
- package/src/themes/sap_fiori_3_dark/Link-parameters.css +7 -0
- package/src/themes/sap_fiori_3_dark/List-parameters.css +5 -0
- package/src/themes/sap_fiori_3_dark/MonthPicker-parameters.css +5 -0
- package/src/themes/sap_fiori_3_dark/MultiComboBox-parameters.css +5 -0
- package/src/themes/sap_fiori_3_dark/Panel-parameters.css +6 -0
- package/src/themes/sap_fiori_3_dark/SliderBase-parameters.css +5 -0
- package/src/themes/sap_fiori_3_dark/TabContainer-parameters.css +12 -0
- package/src/themes/sap_fiori_3_dark/Token-parameters.css +8 -0
- package/src/themes/sap_fiori_3_dark/WheelSlider-parameters.css +15 -0
- package/src/themes/sap_fiori_3_dark/YearPicker-parameters.css +5 -0
- package/src/themes/sap_fiori_3_dark/parameters-bundle.css +47 -0
- package/src/themes/sap_fiori_3_hcb/Avatar-parameters.css +24 -0
- package/src/themes/sap_fiori_3_hcb/Badge-parameters.css +43 -0
- package/src/themes/sap_fiori_3_hcb/Button-parameters.css +10 -0
- package/src/themes/sap_fiori_3_hcb/CalendarHeader-parameters.css +11 -0
- package/src/themes/sap_fiori_3_hcb/Card-parameters.css +6 -0
- package/src/themes/sap_fiori_3_hcb/Carousel-parameters.css +9 -0
- package/src/themes/sap_fiori_3_hcb/CheckBox-parameters.css +13 -0
- package/src/themes/sap_fiori_3_hcb/DatePicker-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcb/DayPicker-parameters.css +19 -0
- package/src/themes/sap_fiori_3_hcb/Dialog-parameters.css +7 -0
- package/src/themes/sap_fiori_3_hcb/GrowingButton-parameters.css +8 -0
- package/src/themes/sap_fiori_3_hcb/Input-parameters.css +21 -0
- package/src/themes/sap_fiori_3_hcb/InputIcon-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcb/Link-parameters.css +7 -0
- package/src/themes/sap_fiori_3_hcb/MessageStrip-parameters.css +10 -0
- package/src/themes/sap_fiori_3_hcb/MonthPicker-parameters.css +11 -0
- package/src/themes/sap_fiori_3_hcb/Panel-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcb/ProgressIndicator-parameters.css +11 -0
- package/src/themes/sap_fiori_3_hcb/RadioButton-parameters.css +10 -0
- package/src/themes/sap_fiori_3_hcb/Select-parameters.css +12 -0
- package/src/themes/sap_fiori_3_hcb/SliderBase-parameters.css +14 -0
- package/src/themes/sap_fiori_3_hcb/Switch-parameters.css +45 -0
- package/src/themes/sap_fiori_3_hcb/TabContainer-parameters.css +44 -0
- package/src/themes/sap_fiori_3_hcb/Table-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcb/TableRow-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +10 -0
- package/src/themes/sap_fiori_3_hcb/TimePicker-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcb/ToggleButton-parameters.css +6 -0
- package/src/themes/sap_fiori_3_hcb/Token-parameters.css +7 -0
- package/src/themes/sap_fiori_3_hcb/ValueStateMessage-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcb/WheelSlider-parameters.css +17 -0
- package/src/themes/sap_fiori_3_hcb/YearPicker-parameters.css +11 -0
- package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +48 -0
- package/src/themes/sap_fiori_3_hcw/Avatar-parameters.css +24 -0
- package/src/themes/sap_fiori_3_hcw/Badge-parameters.css +43 -0
- package/src/themes/sap_fiori_3_hcw/Button-parameters.css +10 -0
- package/src/themes/sap_fiori_3_hcw/CalendarHeader-parameters.css +11 -0
- package/src/themes/sap_fiori_3_hcw/Card-parameters.css +6 -0
- package/src/themes/sap_fiori_3_hcw/Carousel-parameters.css +9 -0
- package/src/themes/sap_fiori_3_hcw/CheckBox-parameters.css +13 -0
- package/src/themes/sap_fiori_3_hcw/DatePicker-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcw/DayPicker-parameters.css +19 -0
- package/src/themes/sap_fiori_3_hcw/Dialog-parameters.css +7 -0
- package/src/themes/sap_fiori_3_hcw/GrowingButton-parameters.css +8 -0
- package/src/themes/sap_fiori_3_hcw/Input-parameters.css +21 -0
- package/src/themes/sap_fiori_3_hcw/InputIcon-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcw/Link-parameters.css +7 -0
- package/src/themes/sap_fiori_3_hcw/MessageStrip-parameters.css +10 -0
- package/src/themes/sap_fiori_3_hcw/MonthPicker-parameters.css +11 -0
- package/src/themes/sap_fiori_3_hcw/Panel-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcw/ProgressIndicator-parameters.css +11 -0
- package/src/themes/sap_fiori_3_hcw/RadioButton-parameters.css +10 -0
- package/src/themes/sap_fiori_3_hcw/Select-parameters.css +12 -0
- package/src/themes/sap_fiori_3_hcw/SliderBase-parameters.css +13 -0
- package/src/themes/sap_fiori_3_hcw/Switch-parameters.css +45 -0
- package/src/themes/sap_fiori_3_hcw/TabContainer-parameters.css +44 -0
- package/src/themes/sap_fiori_3_hcw/Table-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcw/TableRow-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +10 -0
- package/src/themes/sap_fiori_3_hcw/TimePicker-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcw/ToggleButton-parameters.css +6 -0
- package/src/themes/sap_fiori_3_hcw/Token-parameters.css +7 -0
- package/src/themes/sap_fiori_3_hcw/ValueStateMessage-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcw/WheelSlider-parameters.css +17 -0
- package/src/themes/sap_fiori_3_hcw/YearPicker-parameters.css +11 -0
- package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +48 -0
- package/src/themes/sap_horizon/Avatar-parameters.css +33 -0
- package/src/themes/sap_horizon/BusyIndicator-parameters.css +7 -0
- package/src/themes/sap_horizon/Button-parameters.css +20 -0
- package/src/themes/sap_horizon/CalendarHeader-parameters.css +19 -0
- package/src/themes/sap_horizon/Card-parameters.css +10 -0
- package/src/themes/sap_horizon/CheckBox-parameters.css +34 -0
- package/src/themes/sap_horizon/ColorPalette-parameters.css +16 -0
- package/src/themes/sap_horizon/ColorPicker-parameters.css +10 -0
- package/src/themes/sap_horizon/DatePicker-parameters.css +6 -0
- package/src/themes/sap_horizon/DayPicker-parameters.css +31 -0
- package/src/themes/sap_horizon/Dialog-parameters.css +11 -0
- package/src/themes/sap_horizon/GrowingButton-parameters.css +5 -0
- package/src/themes/sap_horizon/Input-parameters.css +35 -0
- package/src/themes/sap_horizon/InputIcon-parameters.css +17 -0
- package/src/themes/sap_horizon/Link-parameters.css +10 -0
- package/src/themes/sap_horizon/List-parameters.css +5 -0
- package/src/themes/sap_horizon/ListItemBase-parameters.css +7 -0
- package/src/themes/sap_horizon/MessageStrip-parameters.css +9 -0
- package/src/themes/sap_horizon/MonthPicker-parameters.css +17 -0
- package/src/themes/sap_horizon/MultiComboBox-parameters.css +5 -0
- package/src/themes/sap_horizon/Panel-parameters.css +12 -0
- package/src/themes/sap_horizon/PopupsCommon-parameters.css +10 -0
- package/src/themes/sap_horizon/ProgressIndicator-parameters.css +23 -0
- package/src/themes/sap_horizon/RadioButton-parameters.css +9 -0
- package/src/themes/sap_horizon/RatingIndicator-parameters.css +3 -0
- package/src/themes/sap_horizon/SegmentedButtton-parameters.css +10 -0
- package/src/themes/sap_horizon/Select-parameters.css +5 -0
- package/src/themes/sap_horizon/SelectPopover-parameters.css +4 -0
- package/src/themes/sap_horizon/SliderBase-parameters.css +44 -0
- package/src/themes/sap_horizon/StepInput-parameters.css +25 -0
- package/src/themes/sap_horizon/Suggestions-parameters.css +5 -0
- package/src/themes/sap_horizon/Switch-parameters.css +31 -0
- package/src/themes/sap_horizon/TabContainer-parameters.css +25 -0
- package/src/themes/sap_horizon/Table-parameters.css +8 -0
- package/src/themes/sap_horizon/TableColumn-parameters.css +5 -0
- package/src/themes/sap_horizon/TableRow-parameters.css +5 -0
- package/src/themes/sap_horizon/TextArea-parameters.css +22 -0
- package/src/themes/sap_horizon/TimePicker-parameters.css +6 -0
- package/src/themes/sap_horizon/ToggleButton-parameters.css +11 -0
- package/src/themes/sap_horizon/Token-parameters.css +28 -0
- package/src/themes/sap_horizon/Tokenizer-parameters.css +6 -0
- package/src/themes/sap_horizon/ValueStateMessage-parameters.css +8 -0
- package/src/themes/sap_horizon/WheelSlider-parameters.css +19 -0
- package/src/themes/sap_horizon/YearPicker-parameters.css +16 -0
- package/src/themes/sap_horizon/parameters-bundle.css +57 -0
- package/src/themes/sap_horizon/sizes-parameters.css +8 -0
- package/src/themes/sap_horizon_exp/Badge-parameters.css +91 -0
- package/src/themes/sap_horizon_exp/Button-parameters.css +12 -0
- package/src/themes/sap_horizon_exp/CalendarHeader-parameters.css +8 -0
- package/src/themes/sap_horizon_exp/CheckBox-parameters.css +35 -0
- package/src/themes/sap_horizon_exp/DatePicker-parameters.css +5 -0
- package/src/themes/sap_horizon_exp/DayPicker-parameters.css +6 -0
- package/src/themes/sap_horizon_exp/Input-parameters.css +46 -0
- package/src/themes/sap_horizon_exp/InputIcon-parameters.css +9 -0
- package/src/themes/sap_horizon_exp/Link-parameters.css +7 -0
- package/src/themes/sap_horizon_exp/List-parameters.css +5 -0
- package/src/themes/sap_horizon_exp/MonthPicker-parameters.css +5 -0
- package/src/themes/sap_horizon_exp/MultiComboBox-parameters.css +7 -0
- package/src/themes/sap_horizon_exp/Panel-parameters.css +6 -0
- package/src/themes/sap_horizon_exp/Popover-parameters.css +5 -0
- package/src/themes/sap_horizon_exp/RadioButton-parameters.css +30 -0
- package/src/themes/sap_horizon_exp/Select-parameters.css +5 -0
- package/src/themes/sap_horizon_exp/SliderBase-parameters.css +30 -0
- package/src/themes/sap_horizon_exp/Switch-parameters.css +46 -0
- package/src/themes/sap_horizon_exp/TabContainer-parameters.css +40 -0
- package/src/themes/sap_horizon_exp/TimePicker-parameters.css +5 -0
- package/src/themes/sap_horizon_exp/Token-parameters.css +9 -0
- package/src/themes/sap_horizon_exp/WheelSlider-parameters.css +16 -0
- package/src/themes/sap_horizon_exp/YearPicker-parameters.css +5 -0
- package/src/themes/sap_horizon_exp/parameters-bundle.css +46 -0
- package/src/timepicker-utils/TimeSlider.js +103 -0
- package/src/types/AvatarColorScheme.js +104 -0
- package/src/types/AvatarGroupType.js +43 -0
- package/src/types/AvatarShape.js +41 -0
- package/src/types/AvatarSize.js +67 -0
- package/src/types/BreadcrumbsDesign.js +42 -0
- package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
- package/src/types/BusyIndicatorSize.js +47 -0
- package/src/types/ButtonDesign.js +68 -0
- package/src/types/CalendarSelectionMode.js +47 -0
- package/src/types/CarouselArrowsPlacement.js +40 -0
- package/src/types/GrowingMode.js +48 -0
- package/src/types/HasPopup.js +62 -0
- package/src/types/InputType.js +68 -0
- package/src/types/LinkDesign.js +47 -0
- package/src/types/ListGrowingMode.js +15 -0
- package/src/types/ListItemType.js +47 -0
- package/src/types/ListMode.js +77 -0
- package/src/types/ListSeparators.js +46 -0
- package/src/types/MessageStripDesign.js +54 -0
- package/src/types/PanelAccessibleRole.js +48 -0
- package/src/types/PopoverHorizontalAlign.js +54 -0
- package/src/types/PopoverPlacementType.js +54 -0
- package/src/types/PopoverVerticalAlign.js +54 -0
- package/src/types/Priority.js +55 -0
- package/src/types/SemanticColor.js +61 -0
- package/src/types/SwitchDesign.js +40 -0
- package/src/types/TabContainerTabsPlacement.js +40 -0
- package/src/types/TabLayout.js +40 -0
- package/src/types/TableGrowingMode.js +15 -0
- package/src/types/TableMode.js +47 -0
- package/src/types/TableRowType.js +40 -0
- package/src/types/TabsOverflowMode.js +40 -0
- package/src/types/TitleLevel.js +68 -0
- package/src/types/ToastPlacement.js +91 -0
- package/src/types/WrappingType.js +41 -0
- package/dist/Timeline.js +0 -81
- package/dist/TimelineItem.js +0 -163
- package/dist/generated/templates/TabSeparatorTemplate.lit.js +0 -7
- package/dist/generated/templates/TimelineItemTemplate.lit.js +0 -12
- package/dist/generated/templates/TimelineTemplate.lit.js +0 -8
- package/dist/generated/themes/Timeline.css.js +0 -9
- package/dist/generated/themes/TimelineItem.css.js +0 -9
- package/dist/popup-utils/PopupUtils.js +0 -42
- package/dist/types/MessageStripType.js +0 -36
- package/dist/types/MessageType.js +0 -46
- package/dist/webcomponentsjs/package.json +0 -46
package/dist/Input.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
2
|
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
3
|
-
import
|
|
3
|
+
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
4
|
+
import { isIE, isPhone, isSafari } from "@ui5/webcomponents-base/dist/Device.js";
|
|
4
5
|
import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
|
|
5
6
|
import { getFeature } from "@ui5/webcomponents-base/dist/FeaturesRegistry.js";
|
|
6
7
|
import {
|
|
@@ -8,35 +9,60 @@ import {
|
|
|
8
9
|
isDown,
|
|
9
10
|
isSpace,
|
|
10
11
|
isEnter,
|
|
11
|
-
|
|
12
|
+
isBackSpace,
|
|
13
|
+
isDelete,
|
|
14
|
+
isEscape,
|
|
15
|
+
isTabNext,
|
|
16
|
+
isPageUp,
|
|
17
|
+
isPageDown,
|
|
18
|
+
isHome,
|
|
19
|
+
isEnd,
|
|
20
|
+
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
12
21
|
import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
13
|
-
import {
|
|
14
|
-
|
|
22
|
+
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
23
|
+
import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
|
|
24
|
+
import { getCaretPosition, setCaretPosition } from "@ui5/webcomponents-base/dist/util/Caret.js";
|
|
25
|
+
import "@ui5/webcomponents-icons/dist/decline.js";
|
|
26
|
+
import "@ui5/webcomponents-icons/dist/not-editable.js";
|
|
15
27
|
import InputType from "./types/InputType.js";
|
|
16
|
-
|
|
28
|
+
import Popover from "./Popover.js";
|
|
29
|
+
// Templates
|
|
17
30
|
import InputTemplate from "./generated/templates/InputTemplate.lit.js";
|
|
31
|
+
import InputPopoverTemplate from "./generated/templates/InputPopoverTemplate.lit.js";
|
|
18
32
|
|
|
19
33
|
import {
|
|
20
34
|
VALUE_STATE_SUCCESS,
|
|
35
|
+
VALUE_STATE_INFORMATION,
|
|
21
36
|
VALUE_STATE_ERROR,
|
|
22
37
|
VALUE_STATE_WARNING,
|
|
23
38
|
INPUT_SUGGESTIONS,
|
|
39
|
+
INPUT_SUGGESTIONS_TITLE,
|
|
40
|
+
INPUT_SUGGESTIONS_ONE_HIT,
|
|
41
|
+
INPUT_SUGGESTIONS_MORE_HITS,
|
|
42
|
+
INPUT_SUGGESTIONS_NO_HIT,
|
|
24
43
|
} from "./generated/i18n/i18n-defaults.js";
|
|
25
44
|
|
|
26
45
|
// Styles
|
|
27
46
|
import styles from "./generated/themes/Input.css.js";
|
|
47
|
+
import ResponsivePopoverCommonCss from "./generated/themes/ResponsivePopoverCommon.css.js";
|
|
48
|
+
import ValueStateMessageCss from "./generated/themes/ValueStateMessage.css.js";
|
|
49
|
+
import SuggestionsCss from "./generated/themes/Suggestions.css.js";
|
|
50
|
+
|
|
51
|
+
const rgxFloat = new RegExp(/(\+|-)?\d+(\.|,)\d+/);
|
|
28
52
|
|
|
29
53
|
/**
|
|
30
54
|
* @public
|
|
31
55
|
*/
|
|
32
56
|
const metadata = {
|
|
33
57
|
tag: "ui5-input",
|
|
58
|
+
languageAware: true,
|
|
59
|
+
managedSlots: true,
|
|
34
60
|
slots: /** @lends sap.ui.webcomponents.main.Input.prototype */ {
|
|
35
61
|
|
|
36
62
|
/**
|
|
37
|
-
* Defines the icon to be displayed in the
|
|
63
|
+
* Defines the icon to be displayed in the component.
|
|
38
64
|
*
|
|
39
|
-
* @type {
|
|
65
|
+
* @type {sap.ui.webcomponents.main.IIcon[]}
|
|
40
66
|
* @slot
|
|
41
67
|
* @public
|
|
42
68
|
*/
|
|
@@ -45,24 +71,37 @@ const metadata = {
|
|
|
45
71
|
},
|
|
46
72
|
|
|
47
73
|
/**
|
|
48
|
-
* Defines the
|
|
74
|
+
* Defines the suggestion items.
|
|
75
|
+
* <br><br>
|
|
76
|
+
* Example:
|
|
49
77
|
* <br><br>
|
|
50
|
-
* Example: <br>
|
|
51
78
|
* <ui5-input show-suggestions><br>
|
|
52
|
-
* <ui5-
|
|
53
|
-
* <ui5-
|
|
79
|
+
* <ui5-suggestion-item text="Item #1"></ui5-suggestion-item><br>
|
|
80
|
+
* <ui5-suggestion-item text="Item #2"></ui5-suggestion-item><br>
|
|
54
81
|
* </ui5-input>
|
|
55
|
-
* <
|
|
82
|
+
* <br>
|
|
83
|
+
* <ui5-input show-suggestions>
|
|
84
|
+
* <ui5-suggestion-group-item text="Group #1"></ui5-suggestion-group-item>
|
|
85
|
+
* <ui5-suggestion-item text="Item #1"></ui5-suggestion-item>
|
|
86
|
+
* <ui5-suggestion-item text="Item #2"></ui5-suggestion-item>
|
|
87
|
+
* <ui5-suggestion-group-item text="Group #2"></ui5-suggestion-group-item>
|
|
88
|
+
* <ui5-suggestion-item text="Item #3"></ui5-suggestion-item>
|
|
89
|
+
* <ui5-suggestion-item text="Item #4"></ui5-suggestion-item>
|
|
90
|
+
* </ui5-input>
|
|
56
91
|
* <br><br>
|
|
57
|
-
* <b>Note:</b> The
|
|
92
|
+
* <b>Note:</b> The suggestions would be displayed only if the <code>showSuggestions</code>
|
|
58
93
|
* property is set to <code>true</code>.
|
|
59
94
|
* <br><br>
|
|
60
|
-
* <b>Note:</b> The
|
|
95
|
+
* <b>Note:</b> The <code><ui5-suggestion-item></code> and <code><ui5-suggestion-group-item></code> are recommended to be used as suggestion items.
|
|
96
|
+
* <br><br>
|
|
97
|
+
* <b>Note:</b> Importing the Input Suggestions Support feature:
|
|
98
|
+
* <br>
|
|
99
|
+
* <code>import "@ui5/webcomponents/dist/features/InputSuggestions.js";</code>
|
|
61
100
|
* <br>
|
|
62
|
-
*
|
|
101
|
+
* automatically imports the <code><ui5-suggestion-item></code> and <code><ui5-suggestion-group-item></code> for your convenience.
|
|
63
102
|
*
|
|
64
|
-
* @type {
|
|
65
|
-
* @slot
|
|
103
|
+
* @type {sap.ui.webcomponents.main.IInputSuggestionItem[]}
|
|
104
|
+
* @slot suggestionItems
|
|
66
105
|
* @public
|
|
67
106
|
*/
|
|
68
107
|
"default": {
|
|
@@ -71,7 +110,7 @@ const metadata = {
|
|
|
71
110
|
},
|
|
72
111
|
|
|
73
112
|
/**
|
|
74
|
-
* The slot is used for native <code>input</code> HTML element to enable form
|
|
113
|
+
* The slot is used for native <code>input</code> HTML element to enable form submit,
|
|
75
114
|
* when <code>name</code> property is set.
|
|
76
115
|
* @type {HTMLElement[]}
|
|
77
116
|
* @private
|
|
@@ -79,13 +118,33 @@ const metadata = {
|
|
|
79
118
|
formSupport: {
|
|
80
119
|
type: HTMLElement,
|
|
81
120
|
},
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* Defines the value state message that will be displayed as pop up under the component.
|
|
124
|
+
* <br><br>
|
|
125
|
+
*
|
|
126
|
+
* <b>Note:</b> If not specified, a default text (in the respective language) will be displayed.
|
|
127
|
+
* <br><br>
|
|
128
|
+
* <b>Note:</b> The <code>valueStateMessage</code> would be displayed,
|
|
129
|
+
* when the component is in <code>Information</code>, <code>Warning</code> or <code>Error</code> value state.
|
|
130
|
+
* <br><br>
|
|
131
|
+
* <b>Note:</b> If the component has <code>suggestionItems</code>,
|
|
132
|
+
* the <code>valueStateMessage</code> would be displayed as part of the same popover, if used on desktop, or dialog - on phone.
|
|
133
|
+
* @type {HTMLElement[]}
|
|
134
|
+
* @since 1.0.0-rc.6
|
|
135
|
+
* @slot
|
|
136
|
+
* @public
|
|
137
|
+
*/
|
|
138
|
+
valueStateMessage: {
|
|
139
|
+
type: HTMLElement,
|
|
140
|
+
},
|
|
82
141
|
},
|
|
83
142
|
properties: /** @lends sap.ui.webcomponents.main.Input.prototype */ {
|
|
84
143
|
|
|
85
144
|
/**
|
|
86
|
-
* Defines whether
|
|
145
|
+
* Defines whether the component is in disabled state.
|
|
87
146
|
* <br><br>
|
|
88
|
-
* <b>Note:</b> A disabled
|
|
147
|
+
* <b>Note:</b> A disabled component is completely noninteractive.
|
|
89
148
|
*
|
|
90
149
|
* @type {boolean}
|
|
91
150
|
* @defaultvalue false
|
|
@@ -95,9 +154,24 @@ const metadata = {
|
|
|
95
154
|
type: Boolean,
|
|
96
155
|
},
|
|
97
156
|
|
|
157
|
+
/**
|
|
158
|
+
* Defines if characters within the suggestions are to be highlighted
|
|
159
|
+
* in case the input value matches parts of the suggestions text.
|
|
160
|
+
* <br><br>
|
|
161
|
+
* <b>Note:</b> takes effect when <code>showSuggestions</code> is set to <code>true</code>
|
|
162
|
+
*
|
|
163
|
+
* @type {boolean}
|
|
164
|
+
* @defaultvalue false
|
|
165
|
+
* @private
|
|
166
|
+
* @sicne 1.0.0-rc.8
|
|
167
|
+
*/
|
|
168
|
+
highlight: {
|
|
169
|
+
type: Boolean,
|
|
170
|
+
},
|
|
171
|
+
|
|
98
172
|
/**
|
|
99
173
|
* Defines a short hint intended to aid the user with data entry when the
|
|
100
|
-
*
|
|
174
|
+
* component has no value.
|
|
101
175
|
* @type {string}
|
|
102
176
|
* @defaultvalue ""
|
|
103
177
|
* @public
|
|
@@ -107,9 +181,9 @@ const metadata = {
|
|
|
107
181
|
},
|
|
108
182
|
|
|
109
183
|
/**
|
|
110
|
-
* Defines whether the
|
|
184
|
+
* Defines whether the component is read-only.
|
|
111
185
|
* <br><br>
|
|
112
|
-
* <b>Note:</b> A read-only
|
|
186
|
+
* <b>Note:</b> A read-only component is not editable,
|
|
113
187
|
* but still provides visual feedback upon user interaction.
|
|
114
188
|
*
|
|
115
189
|
* @type {boolean}
|
|
@@ -121,7 +195,7 @@ const metadata = {
|
|
|
121
195
|
},
|
|
122
196
|
|
|
123
197
|
/**
|
|
124
|
-
* Defines whether the
|
|
198
|
+
* Defines whether the component is required.
|
|
125
199
|
*
|
|
126
200
|
* @type {boolean}
|
|
127
201
|
* @defaultvalue false
|
|
@@ -133,7 +207,7 @@ const metadata = {
|
|
|
133
207
|
},
|
|
134
208
|
|
|
135
209
|
/**
|
|
136
|
-
* Defines the HTML type of the
|
|
210
|
+
* Defines the HTML type of the component.
|
|
137
211
|
* Available options are: <code>Text</code>, <code>Email</code>,
|
|
138
212
|
* <code>Number</code>, <code>Password</code>, <code>Tel</code>, and <code>URL</code>.
|
|
139
213
|
* <br><br>
|
|
@@ -145,7 +219,7 @@ const metadata = {
|
|
|
145
219
|
* that use different soft keyboard layouts depending on the given input type.</li>
|
|
146
220
|
* </ul>
|
|
147
221
|
*
|
|
148
|
-
* @type {
|
|
222
|
+
* @type {InputType}
|
|
149
223
|
* @defaultvalue "Text"
|
|
150
224
|
* @public
|
|
151
225
|
*/
|
|
@@ -155,7 +229,7 @@ const metadata = {
|
|
|
155
229
|
},
|
|
156
230
|
|
|
157
231
|
/**
|
|
158
|
-
* Defines the value of the
|
|
232
|
+
* Defines the value of the component.
|
|
159
233
|
* <br><br>
|
|
160
234
|
* <b>Note:</b> The property is updated upon typing.
|
|
161
235
|
*
|
|
@@ -168,10 +242,18 @@ const metadata = {
|
|
|
168
242
|
},
|
|
169
243
|
|
|
170
244
|
/**
|
|
171
|
-
* Defines the value state of the
|
|
172
|
-
*
|
|
245
|
+
* Defines the value state of the component.
|
|
246
|
+
* <br><br>
|
|
247
|
+
* Available options are:
|
|
248
|
+
* <ul>
|
|
249
|
+
* <li><code>None</code></li>
|
|
250
|
+
* <li><code>Error</code></li>
|
|
251
|
+
* <li><code>Warning</code></li>
|
|
252
|
+
* <li><code>Success</code></li>
|
|
253
|
+
* <li><code>Information</code></li>
|
|
254
|
+
* </ul>
|
|
173
255
|
*
|
|
174
|
-
* @type {
|
|
256
|
+
* @type {ValueState}
|
|
175
257
|
* @defaultvalue "None"
|
|
176
258
|
* @public
|
|
177
259
|
*/
|
|
@@ -181,13 +263,15 @@ const metadata = {
|
|
|
181
263
|
},
|
|
182
264
|
|
|
183
265
|
/**
|
|
184
|
-
* Determines the name with which the
|
|
266
|
+
* Determines the name with which the component will be submitted in an HTML form.
|
|
185
267
|
*
|
|
268
|
+
* <br><br>
|
|
186
269
|
* <b>Important:</b> For the <code>name</code> property to have effect, you must add the following import to your project:
|
|
187
270
|
* <code>import "@ui5/webcomponents/dist/features/InputElementsFormSupport.js";</code>
|
|
188
271
|
*
|
|
272
|
+
* <br><br>
|
|
189
273
|
* <b>Note:</b> When set, a native <code>input</code> HTML element
|
|
190
|
-
* will be created inside the
|
|
274
|
+
* will be created inside the component so that it can be submitted as
|
|
191
275
|
* part of an HTML form. Do not use this property unless you need to submit a form.
|
|
192
276
|
*
|
|
193
277
|
* @type {string}
|
|
@@ -199,11 +283,11 @@ const metadata = {
|
|
|
199
283
|
},
|
|
200
284
|
|
|
201
285
|
/**
|
|
202
|
-
* Defines whether the
|
|
286
|
+
* Defines whether the component should show suggestions, if such are present.
|
|
203
287
|
* <br><br>
|
|
204
|
-
* <b>Note:</b>
|
|
205
|
-
*
|
|
206
|
-
* @type {
|
|
288
|
+
* <b>Note:</b> You need to import the <code>InputSuggestions</code> module
|
|
289
|
+
* from <code>"@ui5/webcomponents/dist/features/InputSuggestions.js"</code> to enable this functionality.
|
|
290
|
+
* @type {boolean}
|
|
207
291
|
* @defaultvalue false
|
|
208
292
|
* @public
|
|
209
293
|
*/
|
|
@@ -222,6 +306,30 @@ const metadata = {
|
|
|
222
306
|
type: Integer,
|
|
223
307
|
},
|
|
224
308
|
|
|
309
|
+
/**
|
|
310
|
+
* Sets the accessible aria name of the component.
|
|
311
|
+
*
|
|
312
|
+
* @type {String}
|
|
313
|
+
* @public
|
|
314
|
+
* @since 1.0.0-rc.15
|
|
315
|
+
*/
|
|
316
|
+
accessibleName: {
|
|
317
|
+
type: String,
|
|
318
|
+
},
|
|
319
|
+
|
|
320
|
+
/**
|
|
321
|
+
* Receives id(or many ids) of the elements that label the input.
|
|
322
|
+
*
|
|
323
|
+
* @type {String}
|
|
324
|
+
* @defaultvalue ""
|
|
325
|
+
* @public
|
|
326
|
+
* @since 1.0.0-rc.15
|
|
327
|
+
*/
|
|
328
|
+
accessibleNameRef: {
|
|
329
|
+
type: String,
|
|
330
|
+
defaultValue: "",
|
|
331
|
+
},
|
|
332
|
+
|
|
225
333
|
/**
|
|
226
334
|
* @private
|
|
227
335
|
*/
|
|
@@ -229,11 +337,19 @@ const metadata = {
|
|
|
229
337
|
type: Boolean,
|
|
230
338
|
},
|
|
231
339
|
|
|
232
|
-
|
|
233
|
-
|
|
340
|
+
/**
|
|
341
|
+
* Indicates whether the visual focus is on the value state header
|
|
342
|
+
* @private
|
|
343
|
+
*/
|
|
344
|
+
_isValueStateFocused: {
|
|
345
|
+
type: Boolean,
|
|
346
|
+
},
|
|
347
|
+
|
|
348
|
+
open: {
|
|
349
|
+
type: Boolean,
|
|
234
350
|
},
|
|
235
351
|
|
|
236
|
-
|
|
352
|
+
_input: {
|
|
237
353
|
type: Object,
|
|
238
354
|
},
|
|
239
355
|
|
|
@@ -241,9 +357,27 @@ const metadata = {
|
|
|
241
357
|
type: Object,
|
|
242
358
|
},
|
|
243
359
|
|
|
244
|
-
|
|
360
|
+
_nativeInputAttributes: {
|
|
245
361
|
type: Object,
|
|
246
362
|
},
|
|
363
|
+
|
|
364
|
+
_inputWidth: {
|
|
365
|
+
type: Integer,
|
|
366
|
+
},
|
|
367
|
+
|
|
368
|
+
_listWidth: {
|
|
369
|
+
type: Integer,
|
|
370
|
+
},
|
|
371
|
+
|
|
372
|
+
_isPopoverOpen: {
|
|
373
|
+
type: Boolean,
|
|
374
|
+
noAttribute: true,
|
|
375
|
+
},
|
|
376
|
+
|
|
377
|
+
_inputIconFocused: {
|
|
378
|
+
type: Boolean,
|
|
379
|
+
noAttribute: true,
|
|
380
|
+
},
|
|
247
381
|
},
|
|
248
382
|
events: /** @lends sap.ui.webcomponents.main.Input.prototype */ {
|
|
249
383
|
/**
|
|
@@ -255,7 +389,7 @@ const metadata = {
|
|
|
255
389
|
change: {},
|
|
256
390
|
|
|
257
391
|
/**
|
|
258
|
-
* Fired when the value of the
|
|
392
|
+
* Fired when the value of the component changes at each keystroke,
|
|
259
393
|
* and when a suggestion item has been selected.
|
|
260
394
|
*
|
|
261
395
|
* @event
|
|
@@ -264,27 +398,48 @@ const metadata = {
|
|
|
264
398
|
input: {},
|
|
265
399
|
|
|
266
400
|
/**
|
|
267
|
-
* Fired when
|
|
268
|
-
* <br><br>
|
|
269
|
-
* <b>Note:</b> The event is fired independent of whether there was a change before or not.
|
|
270
|
-
* If change was performed, the event is fired after the change event.
|
|
271
|
-
* The event is also fired when an item of the select list is selected by pressing Enter.
|
|
401
|
+
* Fired when a suggestion item, that is displayed in the suggestion popup, is selected.
|
|
272
402
|
*
|
|
273
|
-
* @event
|
|
403
|
+
* @event sap.ui.webcomponents.main.Input#suggestion-item-select
|
|
404
|
+
* @param {HTMLElement} item The selected item.
|
|
274
405
|
* @public
|
|
275
406
|
*/
|
|
276
|
-
|
|
407
|
+
"suggestion-item-select": {
|
|
408
|
+
detail: {
|
|
409
|
+
item: { type: HTMLElement },
|
|
410
|
+
},
|
|
411
|
+
},
|
|
277
412
|
|
|
278
413
|
/**
|
|
279
|
-
* Fired when a suggestion item
|
|
414
|
+
* Fired when the user navigates to a suggestion item via the ARROW keys,
|
|
415
|
+
* as a preview, before the final selection.
|
|
280
416
|
*
|
|
281
|
-
* @event
|
|
282
|
-
* @param {HTMLElement} item The
|
|
417
|
+
* @event sap.ui.webcomponents.main.Input#suggestion-item-preview
|
|
418
|
+
* @param {HTMLElement} item The previewed suggestion item.
|
|
419
|
+
* @param {HTMLElement} targetRef The DOM ref of the suggestion item.
|
|
283
420
|
* @public
|
|
421
|
+
* @since 1.0.0-rc.8
|
|
284
422
|
*/
|
|
285
|
-
|
|
423
|
+
"suggestion-item-preview": {
|
|
286
424
|
detail: {
|
|
287
425
|
item: { type: HTMLElement },
|
|
426
|
+
targetRef: { type: HTMLElement },
|
|
427
|
+
},
|
|
428
|
+
},
|
|
429
|
+
|
|
430
|
+
/**
|
|
431
|
+
* Fired when the user scrolls the suggestion popover.
|
|
432
|
+
*
|
|
433
|
+
* @event sap.ui.webcomponents.main.Input#suggestion-scroll
|
|
434
|
+
* @param {Integer} scrollTop The current scroll position.
|
|
435
|
+
* @param {HTMLElement} scrollContainer The scroll container.
|
|
436
|
+
* @protected
|
|
437
|
+
* @since 1.0.0-rc.8
|
|
438
|
+
*/
|
|
439
|
+
"suggestion-scroll": {
|
|
440
|
+
detail: {
|
|
441
|
+
scrollTop: { type: Integer },
|
|
442
|
+
scrollContainer: { type: HTMLElement },
|
|
288
443
|
},
|
|
289
444
|
},
|
|
290
445
|
},
|
|
@@ -300,16 +455,32 @@ const metadata = {
|
|
|
300
455
|
* that are displayed in a popover right under the input.
|
|
301
456
|
* <br><br>
|
|
302
457
|
* The text field can be editable or read-only (<code>readonly</code> property),
|
|
303
|
-
* and
|
|
458
|
+
* and it can be enabled or disabled (<code>disabled</code> property).
|
|
304
459
|
* To visualize semantic states, such as "error" or "warning", the <code>valueState</code> property is provided.
|
|
305
460
|
* When the user makes changes to the text, the change event is fired,
|
|
306
461
|
* which enables you to react on any text change.
|
|
307
462
|
* <br><br>
|
|
308
463
|
* <b>Note:</b> If you are using the <code>ui5-input</code> as a single npm module,
|
|
309
|
-
* don
|
|
464
|
+
* don't forget to import the <code>InputSuggestions</code> module from
|
|
310
465
|
* "@ui5/webcomponents/dist/features/InputSuggestions.js"
|
|
311
466
|
* to enable the suggestions functionality.
|
|
312
467
|
*
|
|
468
|
+
* <h3>Keyboard Handling</h3>
|
|
469
|
+
* The <code>ui5-input</code> provides the following keyboard shortcuts:
|
|
470
|
+
* <br>
|
|
471
|
+
*
|
|
472
|
+
* <ul>
|
|
473
|
+
* <li>[F4], [ALT]+[UP], or [ALT]+[DOWN] - Opens value help if available, same as clicking the value help icon. (Does not open suggestion list.)</li>
|
|
474
|
+
* <li>[ESC] - Closes the suggestion list, if open. If closed or not enabled, cancels changes and reverts to the value which the Input field had when it got the focus.</li>
|
|
475
|
+
* <li>[ENTER] or [RETURN] - If suggestion list is open takes over the current matching item and closes it. If value state or group header is focused, does nothing.</li>
|
|
476
|
+
* <li>[DOWN] - Focuses the next matching item in the suggestion list.</li>
|
|
477
|
+
* <li>[UP] - Focuses the previous matching item in the suggestion list.</li>
|
|
478
|
+
* <li>[HOME] - If focus is in the text input, moves caret before the first character. If focus is in the list, highlights the first item and updates the input accordingly.</li>
|
|
479
|
+
* <li>[END] - If focus is in the text input, moves caret after the last character. If focus is in the list, highlights the last item and updates the input accordingly.</li>
|
|
480
|
+
* <li>[PAGEUP] - If focus is in the list, moves highlight up by page size (10 items by default). If focus is in the input, does nothing.</li>
|
|
481
|
+
* <li>[PAGEDOWN] - If focus is in the list, moves highlight down by page size (10 items by default). If focus is in the input, does nothing.</li>
|
|
482
|
+
* </ul>
|
|
483
|
+
*
|
|
313
484
|
* <h3>ES6 Module Import</h3>
|
|
314
485
|
*
|
|
315
486
|
* <code>import "@ui5/webcomponents/dist/Input.js";</code>
|
|
@@ -321,6 +492,8 @@ const metadata = {
|
|
|
321
492
|
* @alias sap.ui.webcomponents.main.Input
|
|
322
493
|
* @extends sap.ui.webcomponents.base.UI5Element
|
|
323
494
|
* @tagname ui5-input
|
|
495
|
+
* @appenddocs SuggestionItem SuggestionGroupItem
|
|
496
|
+
* @implements sap.ui.webcomponents.main.IInput
|
|
324
497
|
* @public
|
|
325
498
|
*/
|
|
326
499
|
class Input extends UI5Element {
|
|
@@ -336,8 +509,16 @@ class Input extends UI5Element {
|
|
|
336
509
|
return InputTemplate;
|
|
337
510
|
}
|
|
338
511
|
|
|
512
|
+
static get staticAreaTemplate() {
|
|
513
|
+
return InputPopoverTemplate;
|
|
514
|
+
}
|
|
515
|
+
|
|
339
516
|
static get styles() {
|
|
340
|
-
return
|
|
517
|
+
return styles;
|
|
518
|
+
}
|
|
519
|
+
|
|
520
|
+
static get staticAreaStyles() {
|
|
521
|
+
return [ResponsivePopoverCommonCss, ValueStateMessageCss, SuggestionsCss];
|
|
341
522
|
}
|
|
342
523
|
|
|
343
524
|
constructor() {
|
|
@@ -345,36 +526,71 @@ class Input extends UI5Element {
|
|
|
345
526
|
// Indicates if there is selected suggestionItem.
|
|
346
527
|
this.hasSuggestionItemSelected = false;
|
|
347
528
|
|
|
348
|
-
// Represents the value before user moves selection
|
|
349
|
-
//
|
|
350
|
-
// Note:
|
|
529
|
+
// Represents the value before user moves selection from suggestion item to another
|
|
530
|
+
// and its value is updated after each move.
|
|
531
|
+
// Note: Used to register and fire "input" event upon [SPACE] or [ENTER].
|
|
532
|
+
// Note: The property "value" is updated upon selection move and can`t be used.
|
|
351
533
|
this.valueBeforeItemSelection = "";
|
|
352
534
|
|
|
535
|
+
// Represents the value before user moves selection between the suggestion items
|
|
536
|
+
// and its value remains the same when the user navigates up or down the list.
|
|
537
|
+
// Note: Used to cancel selection upon [ESC].
|
|
538
|
+
this.valueBeforeItemPreview = "";
|
|
539
|
+
|
|
540
|
+
// Indicates if the user selection has been canceled with [ESC].
|
|
541
|
+
this.suggestionSelectionCanceled = false;
|
|
542
|
+
|
|
543
|
+
// Indicates if the change event has already been fired
|
|
544
|
+
this._changeFiredValue = null;
|
|
545
|
+
|
|
353
546
|
// tracks the value between focus in and focus out to detect that change event should be fired.
|
|
354
547
|
this.previousValue = undefined;
|
|
355
548
|
|
|
356
549
|
// Indicates, if the component is rendering for first time.
|
|
357
550
|
this.firstRendering = true;
|
|
358
551
|
|
|
552
|
+
// The value that should be highlited.
|
|
553
|
+
this.highlightValue = "";
|
|
554
|
+
|
|
555
|
+
// The last value confirmed by the user with "ENTER"
|
|
556
|
+
this.lastConfirmedValue = "";
|
|
557
|
+
|
|
558
|
+
// Indicates, if the user pressed the BACKSPACE key.
|
|
559
|
+
this._backspaceKeyDown = false;
|
|
560
|
+
|
|
359
561
|
// all sementic events
|
|
360
|
-
this.EVENT_SUBMIT = "submit";
|
|
361
562
|
this.EVENT_CHANGE = "change";
|
|
362
563
|
this.EVENT_INPUT = "input";
|
|
363
|
-
this.EVENT_SUGGESTION_ITEM_SELECT = "
|
|
564
|
+
this.EVENT_SUGGESTION_ITEM_SELECT = "suggestion-item-select";
|
|
364
565
|
|
|
365
566
|
// all user interactions
|
|
366
567
|
this.ACTION_ENTER = "enter";
|
|
367
568
|
this.ACTION_USER_INPUT = "input";
|
|
368
569
|
|
|
369
|
-
|
|
570
|
+
// Suggestions array initialization
|
|
571
|
+
this.suggestionsTexts = [];
|
|
572
|
+
|
|
573
|
+
this._handleResizeBound = this._handleResize.bind(this);
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
onEnterDOM() {
|
|
577
|
+
ResizeHandler.register(this, this._handleResizeBound);
|
|
578
|
+
}
|
|
579
|
+
|
|
580
|
+
onExitDOM() {
|
|
581
|
+
ResizeHandler.deregister(this, this._handleResizeBound);
|
|
370
582
|
}
|
|
371
583
|
|
|
372
584
|
onBeforeRendering() {
|
|
373
585
|
if (this.showSuggestions) {
|
|
374
586
|
this.enableSuggestions();
|
|
587
|
+
this.suggestionsTexts = this.Suggestions.defaultSlotProperties(this.highlightValue);
|
|
375
588
|
}
|
|
376
589
|
|
|
590
|
+
this.open = this.open && (!!this.suggestionItems.length || this._isPhone);
|
|
591
|
+
|
|
377
592
|
const FormSupport = getFeature("FormSupport");
|
|
593
|
+
|
|
378
594
|
if (FormSupport) {
|
|
379
595
|
FormSupport.syncNativeHiddenInput(this);
|
|
380
596
|
} else if (this.name) {
|
|
@@ -382,11 +598,20 @@ class Input extends UI5Element {
|
|
|
382
598
|
}
|
|
383
599
|
}
|
|
384
600
|
|
|
385
|
-
onAfterRendering() {
|
|
386
|
-
if (
|
|
387
|
-
this.Suggestions.toggle(this.
|
|
601
|
+
async onAfterRendering() {
|
|
602
|
+
if (this.Suggestions) {
|
|
603
|
+
this.Suggestions.toggle(this.open, {
|
|
604
|
+
preventFocusRestore: true,
|
|
605
|
+
});
|
|
606
|
+
|
|
607
|
+
this._listWidth = await this.Suggestions._getListWidth();
|
|
608
|
+
}
|
|
609
|
+
|
|
610
|
+
if (this.shouldDisplayOnlyValueStateMessage) {
|
|
611
|
+
this.openPopover();
|
|
612
|
+
} else {
|
|
613
|
+
this.closePopover();
|
|
388
614
|
}
|
|
389
|
-
this.firstRendering = false;
|
|
390
615
|
}
|
|
391
616
|
|
|
392
617
|
_onkeydown(event) {
|
|
@@ -402,26 +627,65 @@ class Input extends UI5Element {
|
|
|
402
627
|
return this._handleSpace(event);
|
|
403
628
|
}
|
|
404
629
|
|
|
630
|
+
if (isTabNext(event)) {
|
|
631
|
+
return this._handleTab(event);
|
|
632
|
+
}
|
|
633
|
+
|
|
405
634
|
if (isEnter(event)) {
|
|
406
635
|
return this._handleEnter(event);
|
|
407
636
|
}
|
|
408
637
|
|
|
638
|
+
if (isPageUp(event)) {
|
|
639
|
+
return this._handlePageUp(event);
|
|
640
|
+
}
|
|
641
|
+
|
|
642
|
+
if (isPageDown(event)) {
|
|
643
|
+
return this._handlePageDown(event);
|
|
644
|
+
}
|
|
645
|
+
|
|
646
|
+
if (isHome(event)) {
|
|
647
|
+
return this._handleHome(event);
|
|
648
|
+
}
|
|
649
|
+
|
|
650
|
+
if (isEnd(event)) {
|
|
651
|
+
return this._handleEnd(event);
|
|
652
|
+
}
|
|
653
|
+
|
|
654
|
+
if (isEscape(event)) {
|
|
655
|
+
return this._handleEscape(event);
|
|
656
|
+
}
|
|
657
|
+
|
|
658
|
+
if (isBackSpace(event)) {
|
|
659
|
+
this._backspaceKeyDown = true;
|
|
660
|
+
this._selectedText = window.getSelection().toString();
|
|
661
|
+
}
|
|
662
|
+
|
|
663
|
+
if (this.showSuggestions) {
|
|
664
|
+
this._clearPopoverFocusAndSelection();
|
|
665
|
+
}
|
|
666
|
+
|
|
409
667
|
this._keyDown = true;
|
|
410
668
|
}
|
|
411
669
|
|
|
412
670
|
_onkeyup(event) {
|
|
671
|
+
// The native Delete event does not update the value property "on time". So, the (native) change event is always fired with the old value
|
|
672
|
+
if (isDelete(event)) {
|
|
673
|
+
this.value = event.target.value;
|
|
674
|
+
}
|
|
675
|
+
|
|
413
676
|
this._keyDown = false;
|
|
677
|
+
this._backspaceKeyDown = false;
|
|
414
678
|
}
|
|
415
679
|
|
|
416
680
|
/* Event handling */
|
|
417
681
|
_handleUp(event) {
|
|
418
|
-
if (this.Suggestions) {
|
|
682
|
+
if (this.Suggestions && this.Suggestions.isOpened()) {
|
|
419
683
|
this.Suggestions.onUp(event);
|
|
420
684
|
}
|
|
421
685
|
}
|
|
422
686
|
|
|
423
687
|
_handleDown(event) {
|
|
424
|
-
if (this.Suggestions) {
|
|
688
|
+
if (this.Suggestions && this.Suggestions.isOpened()) {
|
|
425
689
|
this.Suggestions.onDown(event);
|
|
426
690
|
}
|
|
427
691
|
}
|
|
@@ -432,29 +696,199 @@ class Input extends UI5Element {
|
|
|
432
696
|
}
|
|
433
697
|
}
|
|
434
698
|
|
|
699
|
+
_handleTab(event) {
|
|
700
|
+
if (this.Suggestions && (this.previousValue !== this.value)) {
|
|
701
|
+
this.Suggestions.onTab(event);
|
|
702
|
+
}
|
|
703
|
+
}
|
|
704
|
+
|
|
435
705
|
_handleEnter(event) {
|
|
436
706
|
const itemPressed = !!(this.Suggestions && this.Suggestions.onEnter(event));
|
|
707
|
+
|
|
437
708
|
if (!itemPressed) {
|
|
438
709
|
this.fireEventByAction(this.ACTION_ENTER);
|
|
710
|
+
this.lastConfirmedValue = this.value;
|
|
711
|
+
return;
|
|
712
|
+
}
|
|
713
|
+
|
|
714
|
+
this.focused = true;
|
|
715
|
+
}
|
|
716
|
+
|
|
717
|
+
_handlePageUp(event) {
|
|
718
|
+
if (this._isSuggestionsFocused) {
|
|
719
|
+
this.Suggestions.onPageUp(event);
|
|
720
|
+
} else {
|
|
721
|
+
event.preventDefault();
|
|
439
722
|
}
|
|
440
723
|
}
|
|
441
724
|
|
|
442
|
-
|
|
725
|
+
_handlePageDown(event) {
|
|
726
|
+
if (this._isSuggestionsFocused) {
|
|
727
|
+
this.Suggestions.onPageDown(event);
|
|
728
|
+
} else {
|
|
729
|
+
event.preventDefault();
|
|
730
|
+
}
|
|
731
|
+
}
|
|
732
|
+
|
|
733
|
+
_handleHome(event) {
|
|
734
|
+
if (this._isSuggestionsFocused) {
|
|
735
|
+
this.Suggestions.onHome(event);
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
|
|
739
|
+
_handleEnd(event) {
|
|
740
|
+
if (this._isSuggestionsFocused) {
|
|
741
|
+
this.Suggestions.onEnd(event);
|
|
742
|
+
}
|
|
743
|
+
}
|
|
744
|
+
|
|
745
|
+
_handleEscape() {
|
|
746
|
+
const hasSuggestions = this.showSuggestions && !!this.Suggestions;
|
|
747
|
+
const isOpen = hasSuggestions && this.open;
|
|
748
|
+
|
|
749
|
+
if (!isOpen) {
|
|
750
|
+
this.value = this.lastConfirmedValue ? this.lastConfirmedValue : this.previousValue;
|
|
751
|
+
return;
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
if (hasSuggestions && isOpen && this.Suggestions._isItemOnTarget()) {
|
|
755
|
+
// Restore the value.
|
|
756
|
+
this.value = this.valueBeforeItemPreview;
|
|
757
|
+
|
|
758
|
+
// Mark that the selection has been canceled, so the popover can close
|
|
759
|
+
// and not reopen, due to receiving focus.
|
|
760
|
+
this.suggestionSelectionCanceled = true;
|
|
761
|
+
this.focused = true;
|
|
762
|
+
}
|
|
763
|
+
|
|
764
|
+
if (this._isValueStateFocused) {
|
|
765
|
+
this._isValueStateFocused = false;
|
|
766
|
+
this.focused = true;
|
|
767
|
+
}
|
|
768
|
+
|
|
769
|
+
this.open = false;
|
|
770
|
+
}
|
|
771
|
+
|
|
772
|
+
async _onfocusin(event) {
|
|
773
|
+
await this.getInputDOMRef();
|
|
774
|
+
|
|
443
775
|
this.focused = true; // invalidating property
|
|
444
776
|
this.previousValue = this.value;
|
|
777
|
+
this.valueBeforeItemPreview = this.value;
|
|
778
|
+
|
|
779
|
+
this._inputIconFocused = event.target && event.target === this.querySelector("[ui5-icon]");
|
|
445
780
|
}
|
|
446
781
|
|
|
447
782
|
_onfocusout(event) {
|
|
448
|
-
this.
|
|
783
|
+
const focusedOutToSuggestions = this.Suggestions && event.relatedTarget && event.relatedTarget.shadowRoot && event.relatedTarget.shadowRoot.contains(this.Suggestions.responsivePopover);
|
|
784
|
+
const focusedOutToValueStateMessage = event.relatedTarget && event.relatedTarget.shadowRoot && event.relatedTarget.shadowRoot.querySelector(".ui5-valuestatemessage-root");
|
|
785
|
+
|
|
786
|
+
// if focusout is triggered by pressing on suggestion item or value state message popover, skip invalidation, because re-rendering
|
|
787
|
+
// will happen before "itemPress" event, which will make item "active" state not visualized
|
|
788
|
+
if (focusedOutToSuggestions || focusedOutToValueStateMessage) {
|
|
789
|
+
event.stopImmediatePropagation();
|
|
790
|
+
return;
|
|
791
|
+
}
|
|
792
|
+
|
|
793
|
+
const toBeFocused = event.relatedTarget;
|
|
794
|
+
|
|
795
|
+
if (toBeFocused && toBeFocused.classList.contains(this._id)) {
|
|
796
|
+
return;
|
|
797
|
+
}
|
|
798
|
+
|
|
799
|
+
this.closePopover();
|
|
800
|
+
this._clearPopoverFocusAndSelection();
|
|
801
|
+
|
|
449
802
|
this.previousValue = "";
|
|
803
|
+
this.lastConfirmedValue = "";
|
|
804
|
+
this.focused = false; // invalidating property
|
|
805
|
+
this.open = false;
|
|
806
|
+
}
|
|
807
|
+
|
|
808
|
+
_clearPopoverFocusAndSelection() {
|
|
809
|
+
if (!this.showSuggestions || !this.Suggestions) {
|
|
810
|
+
return;
|
|
811
|
+
}
|
|
812
|
+
|
|
813
|
+
this._isValueStateFocused = false;
|
|
814
|
+
this.hasSuggestionItemSelected = false;
|
|
815
|
+
|
|
816
|
+
this.Suggestions._deselectItems();
|
|
817
|
+
this.Suggestions._clearItemFocus();
|
|
450
818
|
}
|
|
451
819
|
|
|
452
|
-
|
|
453
|
-
this.
|
|
820
|
+
_click(event) {
|
|
821
|
+
if (isPhone() && !this.readonly && this.Suggestions) {
|
|
822
|
+
this.blur();
|
|
823
|
+
this.open = true;
|
|
824
|
+
}
|
|
825
|
+
}
|
|
826
|
+
|
|
827
|
+
_handleNativeInputChange() {
|
|
828
|
+
// The native change sometimes fires too early and getting input's value in the listener would return
|
|
829
|
+
// the previous value instead of the most recent one. This would make things consistent.
|
|
830
|
+
clearTimeout(this._nativeChangeDebounce);
|
|
831
|
+
this._nativeChangeDebounce = setTimeout(() => this._handleChange(), 100);
|
|
832
|
+
}
|
|
833
|
+
|
|
834
|
+
_handleChange() {
|
|
835
|
+
if (this._changeFiredValue !== this.value) {
|
|
836
|
+
this._changeFiredValue = this.value;
|
|
837
|
+
this.fireEvent(this.EVENT_CHANGE);
|
|
838
|
+
}
|
|
839
|
+
}
|
|
840
|
+
|
|
841
|
+
_scroll(event) {
|
|
842
|
+
const detail = event.detail;
|
|
843
|
+
this.fireEvent("suggestion-scroll", {
|
|
844
|
+
scrollTop: detail.scrollTop,
|
|
845
|
+
scrollContainer: detail.targetRef,
|
|
846
|
+
});
|
|
454
847
|
}
|
|
455
848
|
|
|
456
849
|
_handleInput(event) {
|
|
457
|
-
|
|
850
|
+
const inputDomRef = this.getInputDOMRefSync();
|
|
851
|
+
const emptyValueFiredOnNumberInput = this.value && this.isTypeNumber && !inputDomRef.value;
|
|
852
|
+
|
|
853
|
+
this.suggestionSelectionCanceled = false;
|
|
854
|
+
|
|
855
|
+
if (emptyValueFiredOnNumberInput && !this._backspaceKeyDown) {
|
|
856
|
+
// For input with type="Number", if the delimiter is entered second time,
|
|
857
|
+
// the inner input is firing event with empty value
|
|
858
|
+
return;
|
|
859
|
+
}
|
|
860
|
+
|
|
861
|
+
if (emptyValueFiredOnNumberInput && this._backspaceKeyDown) {
|
|
862
|
+
// Issue: when the user removes the character(s) after the delimeter of numeric Input,
|
|
863
|
+
// the native input is firing event with an empty value and we have to manually handle this case,
|
|
864
|
+
// otherwise the entire input will be cleared as we sync the "value".
|
|
865
|
+
|
|
866
|
+
// There are tree scenarios:
|
|
867
|
+
// Example: type "123.4" and press BACKSPACE - the native input is firing event with empty value.
|
|
868
|
+
// Example: type "123.456", select/mark "456" and press BACKSPACE - the native input is firing event with empty value.
|
|
869
|
+
// Example: type "123.456", select/mark "123.456" and press BACKSPACE - the native input is firing event with empty value,
|
|
870
|
+
// but this time that's really the case.
|
|
871
|
+
|
|
872
|
+
// Perform manual handling in case of floating number
|
|
873
|
+
// and if the user did not select the entire input value
|
|
874
|
+
if (rgxFloat.test(this.value) && this._selectedText !== this.value) {
|
|
875
|
+
const newValue = this.removeFractionalPart(this.value);
|
|
876
|
+
|
|
877
|
+
// update state
|
|
878
|
+
this.value = newValue;
|
|
879
|
+
this.highlightValue = newValue;
|
|
880
|
+
this.valueBeforeItemPreview = newValue;
|
|
881
|
+
|
|
882
|
+
// fire events
|
|
883
|
+
this.fireEvent(this.EVENT_INPUT);
|
|
884
|
+
this.fireEvent("value-changed");
|
|
885
|
+
return;
|
|
886
|
+
}
|
|
887
|
+
}
|
|
888
|
+
|
|
889
|
+
if (event.target === inputDomRef) {
|
|
890
|
+
this.focused = true;
|
|
891
|
+
|
|
458
892
|
// stop the native event, as the semantic "input" would be fired.
|
|
459
893
|
event.stopImmediatePropagation();
|
|
460
894
|
}
|
|
@@ -463,69 +897,169 @@ class Input extends UI5Element {
|
|
|
463
897
|
- value of the host and the internal input should be differnt in case of actual input
|
|
464
898
|
- input is called when a key is pressed => keyup should not be called yet
|
|
465
899
|
*/
|
|
466
|
-
const skipFiring = (
|
|
900
|
+
const skipFiring = (inputDomRef.value === this.value) && isIE() && !this._keyDown && !!this.placeholder;
|
|
467
901
|
|
|
468
902
|
!skipFiring && this.fireEventByAction(this.ACTION_USER_INPUT);
|
|
469
903
|
|
|
470
904
|
this.hasSuggestionItemSelected = false;
|
|
905
|
+
this._isValueStateFocused = false;
|
|
471
906
|
|
|
472
907
|
if (this.Suggestions) {
|
|
473
908
|
this.Suggestions.updateSelectedItemPosition(null);
|
|
909
|
+
|
|
910
|
+
if (!this._isPhone) {
|
|
911
|
+
this.open = !!inputDomRef.value;
|
|
912
|
+
}
|
|
913
|
+
}
|
|
914
|
+
}
|
|
915
|
+
|
|
916
|
+
_handleResize() {
|
|
917
|
+
this._inputWidth = this.offsetWidth;
|
|
918
|
+
}
|
|
919
|
+
|
|
920
|
+
_closeRespPopover(preventFocusRestore) {
|
|
921
|
+
this.Suggestions.close(preventFocusRestore);
|
|
922
|
+
}
|
|
923
|
+
|
|
924
|
+
async _afterOpenPopover() {
|
|
925
|
+
// Set initial focus to the native input
|
|
926
|
+
if (isPhone()) {
|
|
927
|
+
(await this.getInputDOMRef()).focus();
|
|
928
|
+
}
|
|
929
|
+
}
|
|
930
|
+
|
|
931
|
+
_afterClosePopover() {
|
|
932
|
+
this.announceSelectedItem();
|
|
933
|
+
|
|
934
|
+
// close device's keyboard and prevent further typing
|
|
935
|
+
if (isPhone()) {
|
|
936
|
+
this.blur();
|
|
937
|
+
this.focused = false;
|
|
474
938
|
}
|
|
475
939
|
}
|
|
476
940
|
|
|
941
|
+
/**
|
|
942
|
+
* Checks if the value state popover is open.
|
|
943
|
+
* @returns {boolean} true if the value state popover is open, false otherwise
|
|
944
|
+
*/
|
|
945
|
+
isValueStateOpened() {
|
|
946
|
+
return !!this._isPopoverOpen;
|
|
947
|
+
}
|
|
948
|
+
|
|
949
|
+
async openPopover() {
|
|
950
|
+
const popover = await this._getPopover();
|
|
951
|
+
|
|
952
|
+
if (popover) {
|
|
953
|
+
this._isPopoverOpen = true;
|
|
954
|
+
popover.showAt(this);
|
|
955
|
+
}
|
|
956
|
+
}
|
|
957
|
+
|
|
958
|
+
async closePopover() {
|
|
959
|
+
const popover = await this._getPopover();
|
|
960
|
+
|
|
961
|
+
popover && popover.close();
|
|
962
|
+
}
|
|
963
|
+
|
|
964
|
+
async _getPopover() {
|
|
965
|
+
const staticAreaItem = await this.getStaticAreaItemDomRef();
|
|
966
|
+
return staticAreaItem && staticAreaItem.querySelector("[ui5-popover]");
|
|
967
|
+
}
|
|
968
|
+
|
|
477
969
|
enableSuggestions() {
|
|
478
970
|
if (this.Suggestions) {
|
|
479
971
|
return;
|
|
480
972
|
}
|
|
481
973
|
|
|
482
974
|
const Suggestions = getFeature("InputSuggestions");
|
|
975
|
+
|
|
483
976
|
if (Suggestions) {
|
|
484
|
-
this.Suggestions = new Suggestions(this, "suggestionItems");
|
|
977
|
+
this.Suggestions = new Suggestions(this, "suggestionItems", true);
|
|
485
978
|
} else {
|
|
486
979
|
throw new Error(`You have to import "@ui5/webcomponents/dist/features/InputSuggestions.js" module to use ui5-input suggestions`);
|
|
487
980
|
}
|
|
488
981
|
}
|
|
489
982
|
|
|
490
|
-
shouldOpenSuggestions() {
|
|
491
|
-
return !!(this.suggestionItems.length
|
|
492
|
-
&& this.showSuggestions
|
|
493
|
-
&& this.focused
|
|
494
|
-
&& !this.hasSuggestionItemSelected);
|
|
495
|
-
}
|
|
496
|
-
|
|
497
983
|
selectSuggestion(item, keyboardUsed) {
|
|
498
|
-
|
|
984
|
+
if (item.group) {
|
|
985
|
+
return;
|
|
986
|
+
}
|
|
987
|
+
|
|
988
|
+
const itemText = item.text || item.textContent; // keep textContent for compatibility
|
|
499
989
|
const fireInput = keyboardUsed
|
|
500
990
|
? this.valueBeforeItemSelection !== itemText : this.value !== itemText;
|
|
501
991
|
|
|
502
|
-
item.selected = false;
|
|
503
992
|
this.hasSuggestionItemSelected = true;
|
|
504
|
-
this.fireEvent(this.EVENT_SUGGESTION_ITEM_SELECT, { item });
|
|
505
993
|
|
|
506
994
|
if (fireInput) {
|
|
507
995
|
this.value = itemText;
|
|
508
996
|
this.valueBeforeItemSelection = itemText;
|
|
997
|
+
this.lastConfirmedValue = itemText;
|
|
509
998
|
this.fireEvent(this.EVENT_INPUT);
|
|
510
|
-
this.
|
|
999
|
+
this._handleChange();
|
|
511
1000
|
}
|
|
1001
|
+
|
|
1002
|
+
this.valueBeforeItemPreview = "";
|
|
1003
|
+
this.suggestionSelectionCanceled = false;
|
|
1004
|
+
|
|
1005
|
+
this.fireEvent(this.EVENT_SUGGESTION_ITEM_SELECT, { item });
|
|
512
1006
|
}
|
|
513
1007
|
|
|
514
1008
|
previewSuggestion(item) {
|
|
515
1009
|
this.valueBeforeItemSelection = this.value;
|
|
516
|
-
this.
|
|
1010
|
+
this.updateValueOnPreview(item);
|
|
1011
|
+
this.announceSelectedItem();
|
|
1012
|
+
this._previewItem = item;
|
|
517
1013
|
}
|
|
518
1014
|
|
|
519
|
-
|
|
1015
|
+
/**
|
|
1016
|
+
* Updates the input value on item preview.
|
|
1017
|
+
* @param {Object} item The item that is on preview
|
|
1018
|
+
*/
|
|
1019
|
+
updateValueOnPreview(item) {
|
|
1020
|
+
const noPreview = item.type === "Inactive" || item.group;
|
|
1021
|
+
const itemValue = noPreview ? this.valueBeforeItemPreview : (item.effectiveTitle || item.textContent);
|
|
1022
|
+
this.value = itemValue;
|
|
1023
|
+
}
|
|
1024
|
+
|
|
1025
|
+
/**
|
|
1026
|
+
* The suggestion item on preview.
|
|
1027
|
+
* @type { sap.ui.webcomponents.main.IInputSuggestionItem }
|
|
1028
|
+
* @readonly
|
|
1029
|
+
* @public
|
|
1030
|
+
*/
|
|
1031
|
+
get previewItem() {
|
|
1032
|
+
if (!this._previewItem) {
|
|
1033
|
+
return null;
|
|
1034
|
+
}
|
|
1035
|
+
|
|
1036
|
+
return this.getSuggestionByListItem(this._previewItem);
|
|
1037
|
+
}
|
|
1038
|
+
|
|
1039
|
+
async fireEventByAction(action) {
|
|
1040
|
+
await this.getInputDOMRef();
|
|
1041
|
+
|
|
520
1042
|
if (this.disabled || this.readonly) {
|
|
521
1043
|
return;
|
|
522
1044
|
}
|
|
523
1045
|
|
|
524
|
-
const inputValue = this.getInputValue();
|
|
525
|
-
const isSubmit = action === this.ACTION_ENTER;
|
|
1046
|
+
const inputValue = await this.getInputValue();
|
|
526
1047
|
const isUserInput = action === this.ACTION_USER_INPUT;
|
|
527
1048
|
|
|
1049
|
+
const input = await this.getInputDOMRef();
|
|
1050
|
+
const cursorPosition = input.selectionStart;
|
|
1051
|
+
|
|
528
1052
|
this.value = inputValue;
|
|
1053
|
+
this.highlightValue = inputValue;
|
|
1054
|
+
this.valueBeforeItemPreview = inputValue;
|
|
1055
|
+
|
|
1056
|
+
if (isSafari()) {
|
|
1057
|
+
// When setting the value by hand, Safari moves the cursor when typing in the middle of the text (See #1761)
|
|
1058
|
+
setTimeout(() => {
|
|
1059
|
+
input.selectionStart = cursorPosition;
|
|
1060
|
+
input.selectionEnd = cursorPosition;
|
|
1061
|
+
}, 0);
|
|
1062
|
+
}
|
|
529
1063
|
|
|
530
1064
|
if (isUserInput) { // input
|
|
531
1065
|
this.fireEvent(this.EVENT_INPUT);
|
|
@@ -534,34 +1068,74 @@ class Input extends UI5Element {
|
|
|
534
1068
|
return;
|
|
535
1069
|
}
|
|
536
1070
|
|
|
537
|
-
if (isSubmit) { // submit
|
|
538
|
-
this.fireEvent(this.EVENT_SUBMIT);
|
|
539
|
-
}
|
|
540
|
-
|
|
541
1071
|
// In IE, pressing the ENTER does not fire change
|
|
542
1072
|
const valueChanged = (this.previousValue !== undefined) && (this.previousValue !== this.value);
|
|
543
|
-
if (isIE() &&
|
|
544
|
-
this.
|
|
1073
|
+
if (isIE() && action === this.ACTION_ENTER && valueChanged) {
|
|
1074
|
+
this._handleChange();
|
|
545
1075
|
}
|
|
546
1076
|
}
|
|
547
1077
|
|
|
1078
|
+
async getInputValue() {
|
|
1079
|
+
const domRef = this.getDomRef();
|
|
548
1080
|
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
if (inputDOM) {
|
|
552
|
-
return this.getInputDOMRef().value;
|
|
1081
|
+
if (domRef) {
|
|
1082
|
+
return (await this.getInputDOMRef()).value;
|
|
553
1083
|
}
|
|
554
1084
|
return "";
|
|
555
1085
|
}
|
|
556
1086
|
|
|
557
|
-
getInputDOMRef() {
|
|
558
|
-
|
|
1087
|
+
async getInputDOMRef() {
|
|
1088
|
+
if (isPhone() && this.Suggestions) {
|
|
1089
|
+
await this.Suggestions._getSuggestionPopover();
|
|
1090
|
+
return this.Suggestions && this.Suggestions.responsivePopover.querySelector(".ui5-input-inner-phone");
|
|
1091
|
+
}
|
|
1092
|
+
|
|
1093
|
+
return this.nativeInput;
|
|
1094
|
+
}
|
|
1095
|
+
|
|
1096
|
+
getInputDOMRefSync() {
|
|
1097
|
+
if (isPhone() && this.Suggestions) {
|
|
1098
|
+
return this.Suggestions && this.Suggestions.responsivePopover.querySelector(".ui5-input-inner-phone");
|
|
1099
|
+
}
|
|
1100
|
+
|
|
1101
|
+
return this.nativeInput;
|
|
1102
|
+
}
|
|
1103
|
+
|
|
1104
|
+
/**
|
|
1105
|
+
* Returns a reference to the native input element
|
|
1106
|
+
* @protected
|
|
1107
|
+
*/
|
|
1108
|
+
get nativeInput() {
|
|
1109
|
+
return this.getDomRef() && this.getDomRef().querySelector(`input`);
|
|
1110
|
+
}
|
|
1111
|
+
|
|
1112
|
+
get nativeInputWidth() {
|
|
1113
|
+
return this.nativeInput && this.nativeInput.offsetWidth;
|
|
559
1114
|
}
|
|
560
1115
|
|
|
561
1116
|
getLabelableElementId() {
|
|
562
1117
|
return this.getInputId();
|
|
563
1118
|
}
|
|
564
1119
|
|
|
1120
|
+
getSuggestionByListItem(item) {
|
|
1121
|
+
const key = parseInt(item.getAttribute("data-ui5-key"));
|
|
1122
|
+
return this.suggestionItems[key];
|
|
1123
|
+
}
|
|
1124
|
+
|
|
1125
|
+
/**
|
|
1126
|
+
* Returns if the suggestions popover is scrollable.
|
|
1127
|
+
* The method returns <code>Promise</code> that resolves to true,
|
|
1128
|
+
* if the popup is scrollable and false otherwise.
|
|
1129
|
+
* @returns {Promise}
|
|
1130
|
+
*/
|
|
1131
|
+
isSuggestionsScrollable() {
|
|
1132
|
+
if (!this.Suggestions) {
|
|
1133
|
+
return Promise.resolve(false);
|
|
1134
|
+
}
|
|
1135
|
+
|
|
1136
|
+
return this.Suggestions._isScrollable();
|
|
1137
|
+
}
|
|
1138
|
+
|
|
565
1139
|
getInputId() {
|
|
566
1140
|
return `${this._id}-inner`;
|
|
567
1141
|
}
|
|
@@ -569,12 +1143,38 @@ class Input extends UI5Element {
|
|
|
569
1143
|
/* Suggestions interface */
|
|
570
1144
|
onItemFocused() {}
|
|
571
1145
|
|
|
1146
|
+
onItemMouseOver(event) {
|
|
1147
|
+
const item = event.target;
|
|
1148
|
+
const suggestion = this.getSuggestionByListItem(item);
|
|
1149
|
+
suggestion && suggestion.fireEvent("mouseover", {
|
|
1150
|
+
item: suggestion,
|
|
1151
|
+
targetRef: item,
|
|
1152
|
+
});
|
|
1153
|
+
}
|
|
1154
|
+
|
|
1155
|
+
onItemMouseOut(event) {
|
|
1156
|
+
const item = event.target;
|
|
1157
|
+
const suggestion = this.getSuggestionByListItem(item);
|
|
1158
|
+
suggestion && suggestion.fireEvent("mouseout", {
|
|
1159
|
+
item: suggestion,
|
|
1160
|
+
targetRef: item,
|
|
1161
|
+
});
|
|
1162
|
+
}
|
|
1163
|
+
|
|
1164
|
+
onItemMouseDown(event) {
|
|
1165
|
+
event.preventDefault();
|
|
1166
|
+
}
|
|
1167
|
+
|
|
572
1168
|
onItemSelected(item, keyboardUsed) {
|
|
573
1169
|
this.selectSuggestion(item, keyboardUsed);
|
|
574
1170
|
}
|
|
575
1171
|
|
|
576
1172
|
onItemPreviewed(item) {
|
|
577
1173
|
this.previewSuggestion(item);
|
|
1174
|
+
this.fireEvent("suggestion-item-preview", {
|
|
1175
|
+
item: this.getSuggestionByListItem(item),
|
|
1176
|
+
targetRef: item,
|
|
1177
|
+
});
|
|
578
1178
|
}
|
|
579
1179
|
|
|
580
1180
|
onOpen() {}
|
|
@@ -582,23 +1182,40 @@ class Input extends UI5Element {
|
|
|
582
1182
|
onClose() {}
|
|
583
1183
|
|
|
584
1184
|
valueStateTextMappings() {
|
|
585
|
-
const i18nBundle = this.i18nBundle;
|
|
586
|
-
|
|
587
1185
|
return {
|
|
588
|
-
"Success": i18nBundle.getText(VALUE_STATE_SUCCESS),
|
|
589
|
-
"
|
|
590
|
-
"
|
|
1186
|
+
"Success": Input.i18nBundle.getText(VALUE_STATE_SUCCESS),
|
|
1187
|
+
"Information": Input.i18nBundle.getText(VALUE_STATE_INFORMATION),
|
|
1188
|
+
"Error": Input.i18nBundle.getText(VALUE_STATE_ERROR),
|
|
1189
|
+
"Warning": Input.i18nBundle.getText(VALUE_STATE_WARNING),
|
|
591
1190
|
};
|
|
592
1191
|
}
|
|
593
1192
|
|
|
1193
|
+
announceSelectedItem() {
|
|
1194
|
+
const invisibleText = this.shadowRoot.querySelector(`#${this._id}-selectionText`);
|
|
1195
|
+
|
|
1196
|
+
if (this.Suggestions && this.Suggestions._isItemOnTarget()) {
|
|
1197
|
+
invisibleText.textContent = this.itemSelectionAnnounce;
|
|
1198
|
+
} else {
|
|
1199
|
+
invisibleText.textContent = "";
|
|
1200
|
+
}
|
|
1201
|
+
}
|
|
1202
|
+
|
|
594
1203
|
get _readonly() {
|
|
595
1204
|
return this.readonly && !this.disabled;
|
|
596
1205
|
}
|
|
597
1206
|
|
|
1207
|
+
get _headerTitleText() {
|
|
1208
|
+
return Input.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);
|
|
1209
|
+
}
|
|
1210
|
+
|
|
598
1211
|
get inputType() {
|
|
599
1212
|
return this.type.toLowerCase();
|
|
600
1213
|
}
|
|
601
1214
|
|
|
1215
|
+
get isTypeNumber() {
|
|
1216
|
+
return this.type === InputType.Number;
|
|
1217
|
+
}
|
|
1218
|
+
|
|
602
1219
|
get suggestionsTextId() {
|
|
603
1220
|
return this.showSuggestions ? `${this._id}-suggestionsText` : "";
|
|
604
1221
|
}
|
|
@@ -610,38 +1227,244 @@ class Input extends UI5Element {
|
|
|
610
1227
|
get accInfo() {
|
|
611
1228
|
const ariaHasPopupDefault = this.showSuggestions ? "true" : undefined;
|
|
612
1229
|
const ariaAutoCompleteDefault = this.showSuggestions ? "list" : undefined;
|
|
1230
|
+
const ariaDescribedBy = this._inputAccInfo.ariaDescribedBy ? `${this.suggestionsTextId} ${this.valueStateTextId} ${this._inputAccInfo.ariaDescribedBy}`.trim() : `${this.suggestionsTextId} ${this.valueStateTextId}`.trim();
|
|
1231
|
+
|
|
613
1232
|
return {
|
|
614
|
-
"wrapper": {
|
|
615
|
-
},
|
|
616
1233
|
"input": {
|
|
617
|
-
"
|
|
1234
|
+
"ariaRoledescription": this._inputAccInfo && (this._inputAccInfo.ariaRoledescription || undefined),
|
|
1235
|
+
"ariaDescribedBy": ariaDescribedBy || undefined,
|
|
618
1236
|
"ariaInvalid": this.valueState === ValueState.Error ? "true" : undefined,
|
|
619
1237
|
"ariaHasPopup": this._inputAccInfo.ariaHasPopup ? this._inputAccInfo.ariaHasPopup : ariaHasPopupDefault,
|
|
620
1238
|
"ariaAutoComplete": this._inputAccInfo.ariaAutoComplete ? this._inputAccInfo.ariaAutoComplete : ariaAutoCompleteDefault,
|
|
621
1239
|
"role": this._inputAccInfo && this._inputAccInfo.role,
|
|
622
|
-
"
|
|
1240
|
+
"ariaControls": this._inputAccInfo && this._inputAccInfo.ariaControls,
|
|
623
1241
|
"ariaExpanded": this._inputAccInfo && this._inputAccInfo.ariaExpanded,
|
|
624
1242
|
"ariaDescription": this._inputAccInfo && this._inputAccInfo.ariaDescription,
|
|
1243
|
+
"ariaLabel": (this._inputAccInfo && this._inputAccInfo.ariaLabel) || getEffectiveAriaLabelText(this),
|
|
625
1244
|
},
|
|
626
1245
|
};
|
|
627
1246
|
}
|
|
628
1247
|
|
|
1248
|
+
get nativeInputAttributes() {
|
|
1249
|
+
return {
|
|
1250
|
+
"min": this.isTypeNumber ? this._nativeInputAttributes.min : undefined,
|
|
1251
|
+
"max": this.isTypeNumber ? this._nativeInputAttributes.max : undefined,
|
|
1252
|
+
"step": this.isTypeNumber ? (this._nativeInputAttributes.step || "any") : undefined,
|
|
1253
|
+
};
|
|
1254
|
+
}
|
|
1255
|
+
|
|
1256
|
+
get ariaValueStateHiddenText() {
|
|
1257
|
+
if (!this.hasValueStateMessage) {
|
|
1258
|
+
return;
|
|
1259
|
+
}
|
|
1260
|
+
|
|
1261
|
+
if (this.shouldDisplayDefaultValueStateMessage) {
|
|
1262
|
+
return this.valueStateText;
|
|
1263
|
+
}
|
|
1264
|
+
|
|
1265
|
+
return this.valueStateMessageText.map(el => el.textContent).join(" ");
|
|
1266
|
+
}
|
|
1267
|
+
|
|
1268
|
+
get itemSelectionAnnounce() {
|
|
1269
|
+
return this.Suggestions ? this.Suggestions.itemSelectionAnnounce : undefined;
|
|
1270
|
+
}
|
|
1271
|
+
|
|
1272
|
+
get classes() {
|
|
1273
|
+
return {
|
|
1274
|
+
popover: {
|
|
1275
|
+
"ui5-suggestions-popover": !this.isPhone && this.showSuggestions,
|
|
1276
|
+
"ui5-suggestions-popover-with-value-state-header": !this.isPhone && this.showSuggestions && this.hasValueStateMessage,
|
|
1277
|
+
},
|
|
1278
|
+
popoverValueState: {
|
|
1279
|
+
"ui5-valuestatemessage-root": true,
|
|
1280
|
+
"ui5-valuestatemessage-header": true,
|
|
1281
|
+
"ui5-valuestatemessage--success": this.valueState === ValueState.Success,
|
|
1282
|
+
"ui5-valuestatemessage--error": this.valueState === ValueState.Error,
|
|
1283
|
+
"ui5-valuestatemessage--warning": this.valueState === ValueState.Warning,
|
|
1284
|
+
"ui5-valuestatemessage--information": this.valueState === ValueState.Information,
|
|
1285
|
+
},
|
|
1286
|
+
};
|
|
1287
|
+
}
|
|
1288
|
+
|
|
1289
|
+
get styles() {
|
|
1290
|
+
const remSizeIxPx = parseInt(getComputedStyle(document.documentElement).fontSize);
|
|
1291
|
+
|
|
1292
|
+
const stylesObject = {
|
|
1293
|
+
popoverHeader: {
|
|
1294
|
+
"max-width": `${this._inputWidth}px`,
|
|
1295
|
+
},
|
|
1296
|
+
suggestionPopoverHeader: {
|
|
1297
|
+
"display": this._listWidth === 0 ? "none" : "inline-block",
|
|
1298
|
+
"width": `${this._listWidth}px`,
|
|
1299
|
+
},
|
|
1300
|
+
suggestionsPopover: {
|
|
1301
|
+
"min-width": `${this._inputWidth}px`,
|
|
1302
|
+
"max-width": (this._inputWidth / remSizeIxPx) > 40 ? `${this._inputWidth}px` : "40rem",
|
|
1303
|
+
},
|
|
1304
|
+
innerInput: {},
|
|
1305
|
+
};
|
|
1306
|
+
|
|
1307
|
+
if (this.nativeInputWidth < 48) {
|
|
1308
|
+
stylesObject.innerInput.padding = "0";
|
|
1309
|
+
}
|
|
1310
|
+
|
|
1311
|
+
return stylesObject;
|
|
1312
|
+
}
|
|
1313
|
+
|
|
1314
|
+
get suggestionSeparators() {
|
|
1315
|
+
return "None";
|
|
1316
|
+
}
|
|
1317
|
+
|
|
1318
|
+
get valueStateMessageText() {
|
|
1319
|
+
return this.getSlottedNodes("valueStateMessage").map(el => el.cloneNode(true));
|
|
1320
|
+
}
|
|
1321
|
+
|
|
1322
|
+
get shouldDisplayOnlyValueStateMessage() {
|
|
1323
|
+
return this.hasValueStateMessage && !this.readonly && !this.open && this.focused;
|
|
1324
|
+
}
|
|
1325
|
+
|
|
1326
|
+
get shouldDisplayDefaultValueStateMessage() {
|
|
1327
|
+
return !this.valueStateMessage.length && this.hasValueStateMessage;
|
|
1328
|
+
}
|
|
1329
|
+
|
|
629
1330
|
get hasValueState() {
|
|
630
1331
|
return this.valueState !== ValueState.None;
|
|
631
1332
|
}
|
|
632
1333
|
|
|
1334
|
+
get hasValueStateMessage() {
|
|
1335
|
+
return this.hasValueState && this.valueState !== ValueState.Success
|
|
1336
|
+
&& (!this._inputIconFocused // Handles the cases when valueStateMessage is forwarded (from datepicker e.g.)
|
|
1337
|
+
|| (this._isPhone && this.Suggestions)); // Handles Input with suggestions on mobile
|
|
1338
|
+
}
|
|
1339
|
+
|
|
633
1340
|
get valueStateText() {
|
|
634
1341
|
return this.valueStateTextMappings()[this.valueState];
|
|
635
1342
|
}
|
|
636
1343
|
|
|
637
1344
|
get suggestionsText() {
|
|
638
|
-
return
|
|
1345
|
+
return Input.i18nBundle.getText(INPUT_SUGGESTIONS);
|
|
1346
|
+
}
|
|
1347
|
+
|
|
1348
|
+
get availableSuggestionsCount() {
|
|
1349
|
+
if (this.showSuggestions && (this.value || this.Suggestions.isOpened())) {
|
|
1350
|
+
switch (this.suggestionsTexts.length) {
|
|
1351
|
+
case 0:
|
|
1352
|
+
return Input.i18nBundle.getText(INPUT_SUGGESTIONS_NO_HIT);
|
|
1353
|
+
|
|
1354
|
+
case 1:
|
|
1355
|
+
return Input.i18nBundle.getText(INPUT_SUGGESTIONS_ONE_HIT);
|
|
1356
|
+
|
|
1357
|
+
default:
|
|
1358
|
+
return Input.i18nBundle.getText(INPUT_SUGGESTIONS_MORE_HITS, this.suggestionsTexts.length);
|
|
1359
|
+
}
|
|
1360
|
+
}
|
|
1361
|
+
|
|
1362
|
+
return undefined;
|
|
639
1363
|
}
|
|
640
1364
|
|
|
641
|
-
|
|
642
|
-
|
|
1365
|
+
get step() {
|
|
1366
|
+
return this.isTypeNumber ? "any" : undefined;
|
|
1367
|
+
}
|
|
1368
|
+
|
|
1369
|
+
get _isPhone() {
|
|
1370
|
+
return isPhone();
|
|
1371
|
+
}
|
|
1372
|
+
|
|
1373
|
+
get _isSuggestionsFocused() {
|
|
1374
|
+
return !this.focused && this.Suggestions && this.Suggestions.isOpened();
|
|
1375
|
+
}
|
|
1376
|
+
|
|
1377
|
+
/**
|
|
1378
|
+
* Returns the placeholder value.
|
|
1379
|
+
* @protected
|
|
1380
|
+
*/
|
|
1381
|
+
get _placeholder() {
|
|
1382
|
+
return this.placeholder;
|
|
1383
|
+
}
|
|
1384
|
+
|
|
1385
|
+
/**
|
|
1386
|
+
* This method is relevant for sap_horizon theme only
|
|
1387
|
+
*/
|
|
1388
|
+
get _valueStateInputIcon() {
|
|
1389
|
+
const iconPerValueState = {
|
|
1390
|
+
Error: `<path xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" d="M10 20C4.47715 20 0 15.5228 0 10C0 4.47715 4.47715 0 10 0C15.5228 0 20 4.47715 20 10C20 15.5228 15.5228 20 10 20ZM7.70711 13.7071C7.31658 14.0976 6.68342 14.0976 6.29289 13.7071C5.90237 13.3166 5.90237 12.6834 6.29289 12.2929L8.58579 10L6.29289 7.70711C5.90237 7.31658 5.90237 6.68342 6.29289 6.29289C6.68342 5.90237 7.31658 5.90237 7.70711 6.29289L10 8.58579L12.2929 6.29289C12.6834 5.90237 13.3166 5.90237 13.7071 6.29289C14.0976 6.68342 14.0976 7.31658 13.7071 7.70711L11.4142 10L13.7071 12.2929C14.0976 12.6834 14.0976 13.3166 13.7071 13.7071C13.3166 14.0976 12.6834 14.0976 12.2929 13.7071L10 11.4142L7.70711 13.7071Z" fill="#EE3939"/>`,
|
|
1391
|
+
Warning: `<path xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" d="M11.8619 0.49298C11.6823 0.187541 11.3544 0 11 0C10.6456 0 10.3177 0.187541 10.1381 0.49298L0.138066 17.493C-0.0438112 17.8022 -0.0461447 18.1851 0.13195 18.4965C0.310046 18.8079 0.641283 19 1 19H21C21.3587 19 21.69 18.8079 21.868 18.4965C22.0461 18.1851 22.0438 17.8022 21.8619 17.493L11.8619 0.49298ZM11 6C11.5523 6 12 6.44772 12 7V10C12 10.5523 11.5523 11 11 11C10.4477 11 10 10.5523 10 10V7C10 6.44772 10.4477 6 11 6ZM11 16C11.8284 16 12.5 15.3284 12.5 14.5C12.5 13.6716 11.8284 13 11 13C10.1716 13 9.5 13.6716 9.5 14.5C9.5 15.3284 10.1716 16 11 16Z" fill="#F58B00"/>`,
|
|
1392
|
+
Success: `<path xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" d="M0 10C0 15.5228 4.47715 20 10 20C15.5228 20 20 15.5228 20 10C20 4.47715 15.5228 0 10 0C4.47715 0 0 4.47715 0 10ZM14.7071 6.29289C14.3166 5.90237 13.6834 5.90237 13.2929 6.29289L8 11.5858L6.70711 10.2929C6.31658 9.90237 5.68342 9.90237 5.29289 10.2929C4.90237 10.6834 4.90237 11.3166 5.29289 11.7071L7.29289 13.7071C7.68342 14.0976 8.31658 14.0976 8.70711 13.7071L14.7071 7.70711C15.0976 7.31658 15.0976 6.68342 14.7071 6.29289Z" fill="#36A41D"/>`,
|
|
1393
|
+
Information: `<path xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" d="M3 0C1.34315 0 0 1.34315 0 3V15C0 16.6569 1.34315 18 3 18H15C16.6569 18 18 16.6569 18 15V3C18 1.34315 16.6569 0 15 0H3ZM9 6.5C9.82843 6.5 10.5 5.82843 10.5 5C10.5 4.17157 9.82843 3.5 9 3.5C8.17157 3.5 7.5 4.17157 7.5 5C7.5 5.82843 8.17157 6.5 9 6.5ZM9 8.5C9.55228 8.5 10 8.94772 10 9.5V13.5C10 14.0523 9.55228 14.5 9 14.5C8.44771 14.5 8 14.0523 8 13.5V9.5C8 8.94772 8.44771 8.5 9 8.5Z" fill="#1B90FF"/>`,
|
|
1394
|
+
};
|
|
1395
|
+
|
|
1396
|
+
const result = `
|
|
1397
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="20" viewBox="0 0 20 20" fill="none">
|
|
1398
|
+
${iconPerValueState[this.valueState]};
|
|
1399
|
+
</svg>
|
|
1400
|
+
`;
|
|
1401
|
+
|
|
1402
|
+
return this.valueState !== ValueState.None ? result : "";
|
|
1403
|
+
}
|
|
1404
|
+
|
|
1405
|
+
get _valueStatePopoverHorizontalAlign() {
|
|
1406
|
+
return this.effectiveDir !== "rtl" ? "Left" : "Right";
|
|
1407
|
+
}
|
|
1408
|
+
|
|
1409
|
+
/**
|
|
1410
|
+
* This method is relevant for sap_horizon theme only
|
|
1411
|
+
*/
|
|
1412
|
+
get _valueStateMessageInputIcon() {
|
|
1413
|
+
const iconPerValueState = {
|
|
1414
|
+
Error: "error",
|
|
1415
|
+
Warning: "alert",
|
|
1416
|
+
Success: "sys-enter-2",
|
|
1417
|
+
Information: "information",
|
|
1418
|
+
};
|
|
1419
|
+
|
|
1420
|
+
return this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : "";
|
|
1421
|
+
}
|
|
1422
|
+
|
|
1423
|
+
/**
|
|
1424
|
+
* Returns the caret position inside the native input
|
|
1425
|
+
* @protected
|
|
1426
|
+
*/
|
|
1427
|
+
getCaretPosition() {
|
|
1428
|
+
return getCaretPosition(this.nativeInput);
|
|
1429
|
+
}
|
|
1430
|
+
|
|
1431
|
+
/**
|
|
1432
|
+
* Sets the caret to a certain position inside the native input
|
|
1433
|
+
* @protected
|
|
1434
|
+
* @param pos
|
|
1435
|
+
*/
|
|
1436
|
+
setCaretPosition(pos) {
|
|
1437
|
+
setCaretPosition(this.nativeInput, pos);
|
|
1438
|
+
}
|
|
1439
|
+
|
|
1440
|
+
/**
|
|
1441
|
+
* Removes the fractional part of floating-point number.
|
|
1442
|
+
* @param {String} value the numeric value of Input of type "Number"
|
|
1443
|
+
*/
|
|
1444
|
+
removeFractionalPart(value) {
|
|
1445
|
+
if (value.includes(".")) {
|
|
1446
|
+
return value.slice(0, value.indexOf("."));
|
|
1447
|
+
}
|
|
1448
|
+
if (value.includes(",")) {
|
|
1449
|
+
return value.slice(0, value.indexOf(","));
|
|
1450
|
+
}
|
|
1451
|
+
|
|
1452
|
+
return value;
|
|
1453
|
+
}
|
|
1454
|
+
|
|
1455
|
+
static get dependencies() {
|
|
1456
|
+
const Suggestions = getFeature("InputSuggestions");
|
|
1457
|
+
|
|
1458
|
+
return [Popover].concat(Suggestions ? Suggestions.dependencies : []);
|
|
1459
|
+
}
|
|
1460
|
+
|
|
1461
|
+
static async onDefine() {
|
|
1462
|
+
const Suggestions = getFeature("InputSuggestions");
|
|
643
1463
|
|
|
644
|
-
|
|
1464
|
+
[Input.i18nBundle] = await Promise.all([
|
|
1465
|
+
getI18nBundle("@ui5/webcomponents"),
|
|
1466
|
+
Suggestions ? Suggestions.init() : Promise.resolve(),
|
|
1467
|
+
]);
|
|
645
1468
|
}
|
|
646
1469
|
}
|
|
647
1470
|
|