@ui5/webcomponents 2.13.0-rc.0 → 2.13.0-rc.2
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 +52 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/CheckBox.d.ts +22 -0
- package/dist/CheckBox.js +15 -2
- package/dist/CheckBox.js.map +1 -1
- package/dist/CheckBoxTemplate.js +3 -2
- package/dist/CheckBoxTemplate.js.map +1 -1
- package/dist/ComboBox.d.ts +23 -6
- package/dist/ComboBox.js +128 -54
- package/dist/ComboBox.js.map +1 -1
- package/dist/ComboBoxPopoverTemplate.js +0 -1
- package/dist/ComboBoxPopoverTemplate.js.map +1 -1
- package/dist/ComboBoxTemplate.js +2 -1
- package/dist/ComboBoxTemplate.js.map +1 -1
- package/dist/FileUploader.d.ts +55 -13
- package/dist/FileUploader.js +166 -48
- package/dist/FileUploader.js.map +1 -1
- package/dist/FileUploaderPopoverTemplate.js +1 -3
- package/dist/FileUploaderPopoverTemplate.js.map +1 -1
- package/dist/FileUploaderTemplate.js +7 -4
- package/dist/FileUploaderTemplate.js.map +1 -1
- package/dist/Input.d.ts +19 -5
- package/dist/Input.js +116 -17
- package/dist/Input.js.map +1 -1
- package/dist/InputTemplate.js +2 -1
- package/dist/InputTemplate.js.map +1 -1
- package/dist/List.d.ts +26 -1
- package/dist/List.js +27 -0
- package/dist/List.js.map +1 -1
- package/dist/ListItemBase.d.ts +8 -0
- package/dist/ListItemBase.js +15 -3
- package/dist/ListItemBase.js.map +1 -1
- package/dist/ListItemStandard.d.ts +12 -8
- package/dist/ListItemStandard.js +3 -8
- package/dist/ListItemStandard.js.map +1 -1
- package/dist/ListTemplate.js +1 -1
- package/dist/ListTemplate.js.map +1 -1
- package/dist/Menu.js +3 -7
- package/dist/Menu.js.map +1 -1
- package/dist/MenuItem.d.ts +6 -0
- package/dist/MenuItem.js +24 -6
- package/dist/MenuItem.js.map +1 -1
- package/dist/MenuItemGroup.d.ts +3 -0
- package/dist/MenuItemGroup.js +20 -2
- package/dist/MenuItemGroup.js.map +1 -1
- package/dist/MenuItemGroupTemplate.js +1 -1
- package/dist/MenuItemGroupTemplate.js.map +1 -1
- package/dist/MenuItemTemplate.js +1 -1
- package/dist/MenuItemTemplate.js.map +1 -1
- package/dist/MultiComboBox.d.ts +20 -1
- package/dist/MultiComboBox.js +120 -20
- package/dist/MultiComboBox.js.map +1 -1
- package/dist/MultiComboBoxItem.d.ts +4 -0
- package/dist/MultiComboBoxItem.js +5 -0
- package/dist/MultiComboBoxItem.js.map +1 -1
- package/dist/MultiComboBoxItemTemplate.js +1 -1
- package/dist/MultiComboBoxItemTemplate.js.map +1 -1
- package/dist/MultiComboBoxPopoverTemplate.js +1 -1
- package/dist/MultiComboBoxPopoverTemplate.js.map +1 -1
- package/dist/MultiComboBoxTemplate.js +2 -1
- package/dist/MultiComboBoxTemplate.js.map +1 -1
- package/dist/MultiInput.js +1 -1
- package/dist/MultiInput.js.map +1 -1
- package/dist/Select.js +2 -2
- package/dist/Select.js.map +1 -1
- package/dist/SplitButtonTemplate.js +1 -1
- package/dist/SplitButtonTemplate.js.map +1 -1
- package/dist/Table.js +1 -1
- package/dist/Table.js.map +1 -1
- package/dist/TableSelection.d.ts +4 -1
- package/dist/TableSelection.js +10 -4
- package/dist/TableSelection.js.map +1 -1
- package/dist/TableSelectionMulti.d.ts +4 -1
- package/dist/TableSelectionMulti.js +11 -4
- package/dist/TableSelectionMulti.js.map +1 -1
- package/dist/Token.js +2 -2
- package/dist/Token.js.map +1 -1
- package/dist/Tokenizer.js +4 -0
- package/dist/Tokenizer.js.map +1 -1
- package/dist/TokenizerPopoverTemplate.js +1 -1
- package/dist/TokenizerPopoverTemplate.js.map +1 -1
- package/dist/Toolbar.js +0 -3
- package/dist/Toolbar.js.map +1 -1
- package/dist/ToolbarButton.js +2 -0
- package/dist/ToolbarButton.js.map +1 -1
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/css/themes/AvatarGroup.css +1 -1
- package/dist/css/themes/Bar.css +1 -1
- package/dist/css/themes/Breadcrumbs.css +1 -1
- package/dist/css/themes/BusyIndicator.css +1 -1
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/ButtonBadge.css +1 -1
- package/dist/css/themes/Calendar.css +1 -1
- package/dist/css/themes/CalendarHeader.css +1 -1
- package/dist/css/themes/CalendarLegend.css +1 -1
- package/dist/css/themes/CalendarLegendItem.css +1 -1
- package/dist/css/themes/Card.css +1 -1
- package/dist/css/themes/CardHeader.css +1 -1
- package/dist/css/themes/Carousel.css +1 -1
- package/dist/css/themes/CheckBox.css +1 -1
- package/dist/css/themes/ColorPalette.css +1 -1
- package/dist/css/themes/ColorPaletteItem.css +1 -1
- package/dist/css/themes/ColorPalettePopover.css +1 -1
- package/dist/css/themes/ColorPicker.css +1 -1
- package/dist/css/themes/ComboBox.css +1 -1
- package/dist/css/themes/ComboBoxItem.css +1 -1
- package/dist/css/themes/DatePicker.css +1 -1
- package/dist/css/themes/DateTimePickerPopover.css +1 -1
- package/dist/css/themes/DayPicker.css +1 -1
- package/dist/css/themes/Dialog.css +1 -1
- package/dist/css/themes/DynamicDateRange.css +1 -1
- package/dist/css/themes/DynamicDateRangePopover.css +1 -1
- package/dist/css/themes/FileUploader.css +1 -1
- package/dist/css/themes/Form.css +1 -1
- package/dist/css/themes/FormItem.css +1 -1
- package/dist/css/themes/FormItemSpan.css +1 -1
- package/dist/css/themes/GrowingButton.css +1 -1
- package/dist/css/themes/Icon.css +1 -1
- package/dist/css/themes/Input.css +1 -1
- package/dist/css/themes/InputIcon.css +1 -1
- package/dist/css/themes/InputSharedStyles.css +1 -1
- package/dist/css/themes/Link.css +1 -1
- package/dist/css/themes/List.css +1 -1
- package/dist/css/themes/ListItem.css +1 -1
- package/dist/css/themes/ListItemBase.css +1 -1
- package/dist/css/themes/ListItemCustom.css +1 -1
- package/dist/css/themes/ListItemGroup.css +1 -1
- package/dist/css/themes/ListItemGroupHeader.css +1 -1
- package/dist/css/themes/ListItemIcon.css +1 -1
- package/dist/css/themes/Menu.css +1 -1
- package/dist/css/themes/MenuItem.css +1 -1
- package/dist/css/themes/MessageStrip.css +1 -1
- package/dist/css/themes/MonthPicker.css +1 -1
- package/dist/css/themes/MultiComboBox.css +1 -1
- package/dist/css/themes/MultiComboBoxItem.css +1 -1
- package/dist/css/themes/MultiComboBoxPopover.css +1 -1
- package/dist/css/themes/MultiInput.css +1 -1
- package/dist/css/themes/OptionBase.css +1 -1
- package/dist/css/themes/Panel.css +1 -1
- package/dist/css/themes/Popover.css +1 -1
- package/dist/css/themes/PopupsCommon.css +1 -1
- package/dist/css/themes/ProgressIndicator.css +1 -1
- package/dist/css/themes/RadioButton.css +1 -1
- package/dist/css/themes/RangeSlider.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/ResponsivePopover.css +1 -1
- package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
- package/dist/css/themes/SegmentedButton.css +1 -1
- package/dist/css/themes/SegmentedButtonItem.css +1 -1
- package/dist/css/themes/Select.css +1 -1
- package/dist/css/themes/SliderBase.css +1 -1
- package/dist/css/themes/SplitButton.css +1 -1
- package/dist/css/themes/StepInput.css +1 -1
- package/dist/css/themes/SuggestionItem.css +1 -1
- package/dist/css/themes/SuggestionItemCustom.css +1 -1
- package/dist/css/themes/Switch.css +1 -1
- package/dist/css/themes/TabContainer.css +1 -1
- package/dist/css/themes/TabInOverflow.css +1 -1
- package/dist/css/themes/TabInStrip.css +1 -1
- package/dist/css/themes/TabSemanticIcon.css +1 -1
- package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
- package/dist/css/themes/Table.css +1 -1
- package/dist/css/themes/TableCellBase.css +1 -1
- package/dist/css/themes/TableHeaderRow.css +1 -1
- package/dist/css/themes/TableRow.css +1 -1
- package/dist/css/themes/TableRowActionBase.css +1 -1
- package/dist/css/themes/TableRowBase.css +1 -1
- package/dist/css/themes/Tag.css +1 -1
- package/dist/css/themes/Text.css +1 -1
- package/dist/css/themes/TextArea.css +1 -1
- package/dist/css/themes/TimePicker.css +1 -1
- package/dist/css/themes/Toast.css +1 -1
- package/dist/css/themes/ToggleButton.css +1 -1
- package/dist/css/themes/Token.css +1 -1
- package/dist/css/themes/Tokenizer.css +1 -1
- package/dist/css/themes/TokenizerPopover.css +1 -1
- package/dist/css/themes/Toolbar.css +1 -1
- package/dist/css/themes/ToolbarButton.css +1 -0
- package/dist/css/themes/ToolbarPopover.css +1 -1
- package/dist/css/themes/ToolbarSeparator.css +1 -1
- package/dist/css/themes/TreeItem.css +1 -1
- package/dist/css/themes/ValueStateMessage.css +1 -1
- package/dist/css/themes/ValueStateVariables.css +1 -0
- package/dist/css/themes/YearPicker.css +1 -1
- package/dist/css/themes/YearRangePicker.css +1 -1
- package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +97 -9
- package/dist/custom-elements.json +91 -8
- package/dist/features/InputSuggestions.d.ts +0 -3
- package/dist/features/InputSuggestions.js +4 -50
- package/dist/features/InputSuggestions.js.map +1 -1
- package/dist/features/InputSuggestionsTemplate.js +0 -1
- package/dist/features/InputSuggestionsTemplate.js.map +1 -1
- package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_id.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/i18n/i18n-defaults.d.ts +15 -3
- package/dist/generated/i18n/i18n-defaults.js +15 -3
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/themes/Avatar.css.d.ts +1 -1
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Avatar.css.js.map +1 -1
- package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
- package/dist/generated/themes/AvatarGroup.css.js +1 -1
- package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
- package/dist/generated/themes/Bar.css.d.ts +1 -1
- package/dist/generated/themes/Bar.css.js +1 -1
- package/dist/generated/themes/Bar.css.js.map +1 -1
- package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
- package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
- package/dist/generated/themes/BusyIndicator.css.js +1 -1
- package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
- package/dist/generated/themes/Button.css.d.ts +1 -1
- package/dist/generated/themes/Button.css.js +1 -1
- package/dist/generated/themes/Button.css.js.map +1 -1
- package/dist/generated/themes/ButtonBadge.css.d.ts +1 -1
- package/dist/generated/themes/ButtonBadge.css.js +1 -1
- package/dist/generated/themes/ButtonBadge.css.js.map +1 -1
- package/dist/generated/themes/Calendar.css.d.ts +1 -1
- package/dist/generated/themes/Calendar.css.js +1 -1
- package/dist/generated/themes/Calendar.css.js.map +1 -1
- package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
- package/dist/generated/themes/CalendarHeader.css.js +1 -1
- package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
- package/dist/generated/themes/CalendarLegend.css.js +1 -1
- package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
- package/dist/generated/themes/Card.css.d.ts +1 -1
- package/dist/generated/themes/Card.css.js +1 -1
- package/dist/generated/themes/Card.css.js.map +1 -1
- package/dist/generated/themes/CardHeader.css.d.ts +1 -1
- package/dist/generated/themes/CardHeader.css.js +1 -1
- package/dist/generated/themes/CardHeader.css.js.map +1 -1
- package/dist/generated/themes/Carousel.css.d.ts +1 -1
- package/dist/generated/themes/Carousel.css.js +1 -1
- package/dist/generated/themes/Carousel.css.js.map +1 -1
- package/dist/generated/themes/CheckBox.css.d.ts +1 -1
- package/dist/generated/themes/CheckBox.css.js +1 -1
- package/dist/generated/themes/CheckBox.css.js.map +1 -1
- package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
- package/dist/generated/themes/ColorPalette.css.js +1 -1
- package/dist/generated/themes/ColorPalette.css.js.map +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
- package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
- package/dist/generated/themes/ColorPicker.css.js +1 -1
- package/dist/generated/themes/ColorPicker.css.js.map +1 -1
- package/dist/generated/themes/ComboBox.css.d.ts +1 -1
- package/dist/generated/themes/ComboBox.css.js +1 -1
- package/dist/generated/themes/ComboBox.css.js.map +1 -1
- package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
- package/dist/generated/themes/ComboBoxItem.css.js +1 -1
- package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
- package/dist/generated/themes/DatePicker.css.d.ts +1 -1
- package/dist/generated/themes/DatePicker.css.js +1 -1
- package/dist/generated/themes/DatePicker.css.js.map +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
- package/dist/generated/themes/DayPicker.css.d.ts +1 -1
- package/dist/generated/themes/DayPicker.css.js +1 -1
- package/dist/generated/themes/DayPicker.css.js.map +1 -1
- package/dist/generated/themes/Dialog.css.d.ts +1 -1
- package/dist/generated/themes/Dialog.css.js +1 -1
- package/dist/generated/themes/Dialog.css.js.map +1 -1
- package/dist/generated/themes/DynamicDateRange.css.d.ts +1 -1
- package/dist/generated/themes/DynamicDateRange.css.js +1 -1
- package/dist/generated/themes/DynamicDateRange.css.js.map +1 -1
- package/dist/generated/themes/DynamicDateRangePopover.css.d.ts +1 -1
- package/dist/generated/themes/DynamicDateRangePopover.css.js +1 -1
- package/dist/generated/themes/DynamicDateRangePopover.css.js.map +1 -1
- package/dist/generated/themes/FileUploader.css.d.ts +1 -1
- package/dist/generated/themes/FileUploader.css.js +1 -1
- package/dist/generated/themes/FileUploader.css.js.map +1 -1
- package/dist/generated/themes/Form.css.d.ts +1 -1
- package/dist/generated/themes/Form.css.js +1 -1
- package/dist/generated/themes/Form.css.js.map +1 -1
- package/dist/generated/themes/FormItem.css.d.ts +1 -1
- package/dist/generated/themes/FormItem.css.js +1 -1
- package/dist/generated/themes/FormItem.css.js.map +1 -1
- package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
- package/dist/generated/themes/FormItemSpan.css.js +1 -1
- package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
- package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
- package/dist/generated/themes/GrowingButton.css.js +1 -1
- package/dist/generated/themes/GrowingButton.css.js.map +1 -1
- package/dist/generated/themes/Icon.css.d.ts +1 -1
- package/dist/generated/themes/Icon.css.js +1 -1
- package/dist/generated/themes/Icon.css.js.map +1 -1
- package/dist/generated/themes/Input.css.d.ts +1 -1
- package/dist/generated/themes/Input.css.js +1 -1
- package/dist/generated/themes/Input.css.js.map +1 -1
- package/dist/generated/themes/InputIcon.css.d.ts +1 -1
- package/dist/generated/themes/InputIcon.css.js +1 -1
- package/dist/generated/themes/InputIcon.css.js.map +1 -1
- package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
- package/dist/generated/themes/Link.css.d.ts +1 -1
- package/dist/generated/themes/Link.css.js +1 -1
- package/dist/generated/themes/Link.css.js.map +1 -1
- package/dist/generated/themes/List.css.d.ts +1 -1
- package/dist/generated/themes/List.css.js +1 -1
- package/dist/generated/themes/List.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.d.ts +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
- package/dist/generated/themes/ListItemBase.css.js +1 -1
- package/dist/generated/themes/ListItemBase.css.js.map +1 -1
- package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
- package/dist/generated/themes/ListItemCustom.css.js +1 -1
- package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
- package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
- package/dist/generated/themes/ListItemGroup.css.js +1 -1
- package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
- package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
- package/dist/generated/themes/ListItemIcon.css.js +1 -1
- package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
- package/dist/generated/themes/Menu.css.d.ts +1 -1
- package/dist/generated/themes/Menu.css.js +1 -1
- package/dist/generated/themes/Menu.css.js.map +1 -1
- package/dist/generated/themes/MenuItem.css.d.ts +1 -1
- package/dist/generated/themes/MenuItem.css.js +1 -1
- package/dist/generated/themes/MenuItem.css.js.map +1 -1
- package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
- package/dist/generated/themes/MessageStrip.css.js +1 -1
- package/dist/generated/themes/MessageStrip.css.js.map +1 -1
- package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
- package/dist/generated/themes/MonthPicker.css.js +1 -1
- package/dist/generated/themes/MonthPicker.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
- package/dist/generated/themes/MultiComboBox.css.js +1 -1
- package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
- package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
- package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
- package/dist/generated/themes/MultiInput.css.d.ts +1 -1
- package/dist/generated/themes/MultiInput.css.js +1 -1
- package/dist/generated/themes/MultiInput.css.js.map +1 -1
- package/dist/generated/themes/OptionBase.css.d.ts +1 -1
- package/dist/generated/themes/OptionBase.css.js +1 -1
- package/dist/generated/themes/OptionBase.css.js.map +1 -1
- package/dist/generated/themes/Panel.css.d.ts +1 -1
- package/dist/generated/themes/Panel.css.js +1 -1
- package/dist/generated/themes/Panel.css.js.map +1 -1
- package/dist/generated/themes/Popover.css.d.ts +1 -1
- package/dist/generated/themes/Popover.css.js +1 -1
- package/dist/generated/themes/Popover.css.js.map +1 -1
- package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
- package/dist/generated/themes/PopupsCommon.css.js +1 -1
- package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
- package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
- package/dist/generated/themes/RadioButton.css.d.ts +1 -1
- package/dist/generated/themes/RadioButton.css.js +1 -1
- package/dist/generated/themes/RadioButton.css.js.map +1 -1
- package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
- package/dist/generated/themes/RangeSlider.css.js +1 -1
- package/dist/generated/themes/RangeSlider.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
- package/dist/generated/themes/SegmentedButton.css.js +1 -1
- package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
- package/dist/generated/themes/Select.css.d.ts +1 -1
- package/dist/generated/themes/Select.css.js +1 -1
- package/dist/generated/themes/Select.css.js.map +1 -1
- package/dist/generated/themes/SliderBase.css.d.ts +1 -1
- package/dist/generated/themes/SliderBase.css.js +1 -1
- package/dist/generated/themes/SliderBase.css.js.map +1 -1
- package/dist/generated/themes/SplitButton.css.d.ts +1 -1
- package/dist/generated/themes/SplitButton.css.js +1 -1
- package/dist/generated/themes/SplitButton.css.js.map +1 -1
- package/dist/generated/themes/StepInput.css.d.ts +1 -1
- package/dist/generated/themes/StepInput.css.js +1 -1
- package/dist/generated/themes/StepInput.css.js.map +1 -1
- package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
- package/dist/generated/themes/SuggestionItem.css.js +1 -1
- package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
- package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
- package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
- package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
- package/dist/generated/themes/Switch.css.d.ts +1 -1
- package/dist/generated/themes/Switch.css.js +1 -1
- package/dist/generated/themes/Switch.css.js.map +1 -1
- package/dist/generated/themes/TabContainer.css.d.ts +1 -1
- package/dist/generated/themes/TabContainer.css.js +1 -1
- package/dist/generated/themes/TabContainer.css.js.map +1 -1
- package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
- package/dist/generated/themes/TabInOverflow.css.js +1 -1
- package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
- package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
- package/dist/generated/themes/TabInStrip.css.js +1 -1
- package/dist/generated/themes/TabInStrip.css.js.map +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
- package/dist/generated/themes/Table.css.d.ts +1 -1
- package/dist/generated/themes/Table.css.js +1 -1
- package/dist/generated/themes/Table.css.js.map +1 -1
- package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
- package/dist/generated/themes/TableCellBase.css.js +1 -1
- package/dist/generated/themes/TableCellBase.css.js.map +1 -1
- package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
- package/dist/generated/themes/TableHeaderRow.css.js +1 -1
- package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
- package/dist/generated/themes/TableRow.css.d.ts +1 -1
- package/dist/generated/themes/TableRow.css.js +1 -1
- package/dist/generated/themes/TableRow.css.js.map +1 -1
- package/dist/generated/themes/TableRowActionBase.css.d.ts +1 -1
- package/dist/generated/themes/TableRowActionBase.css.js +1 -1
- package/dist/generated/themes/TableRowActionBase.css.js.map +1 -1
- package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
- package/dist/generated/themes/TableRowBase.css.js +1 -1
- package/dist/generated/themes/TableRowBase.css.js.map +1 -1
- package/dist/generated/themes/Tag.css.d.ts +1 -1
- package/dist/generated/themes/Tag.css.js +1 -1
- package/dist/generated/themes/Tag.css.js.map +1 -1
- package/dist/generated/themes/Text.css.d.ts +1 -1
- package/dist/generated/themes/Text.css.js +1 -1
- package/dist/generated/themes/Text.css.js.map +1 -1
- package/dist/generated/themes/TextArea.css.d.ts +1 -1
- package/dist/generated/themes/TextArea.css.js +1 -1
- package/dist/generated/themes/TextArea.css.js.map +1 -1
- package/dist/generated/themes/TimePicker.css.d.ts +1 -1
- package/dist/generated/themes/TimePicker.css.js +1 -1
- package/dist/generated/themes/TimePicker.css.js.map +1 -1
- package/dist/generated/themes/Toast.css.d.ts +1 -1
- package/dist/generated/themes/Toast.css.js +1 -1
- package/dist/generated/themes/Toast.css.js.map +1 -1
- package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
- package/dist/generated/themes/ToggleButton.css.js +1 -1
- package/dist/generated/themes/ToggleButton.css.js.map +1 -1
- package/dist/generated/themes/Token.css.d.ts +1 -1
- package/dist/generated/themes/Token.css.js +1 -1
- package/dist/generated/themes/Token.css.js.map +1 -1
- package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
- package/dist/generated/themes/Tokenizer.css.js +1 -1
- package/dist/generated/themes/Tokenizer.css.js.map +1 -1
- package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
- package/dist/generated/themes/Toolbar.css.d.ts +1 -1
- package/dist/generated/themes/Toolbar.css.js +1 -1
- package/dist/generated/themes/Toolbar.css.js.map +1 -1
- package/dist/generated/themes/ToolbarButton.css.d.ts +2 -0
- package/dist/generated/themes/{ToolbarButtonPopover.css.js → ToolbarButton.css.js} +2 -2
- package/dist/generated/themes/ToolbarButton.css.js.map +1 -0
- package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
- package/dist/generated/themes/ToolbarSeparator.css.d.ts +1 -1
- package/dist/generated/themes/ToolbarSeparator.css.js +1 -1
- package/dist/generated/themes/ToolbarSeparator.css.js.map +1 -1
- package/dist/generated/themes/TreeItem.css.d.ts +1 -1
- package/dist/generated/themes/TreeItem.css.js +1 -1
- package/dist/generated/themes/TreeItem.css.js.map +1 -1
- package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
- package/dist/generated/themes/ValueStateVariables.css.d.ts +2 -0
- package/dist/generated/themes/ValueStateVariables.css.js +8 -0
- package/dist/generated/themes/ValueStateVariables.css.js.map +1 -0
- package/dist/generated/themes/YearPicker.css.d.ts +1 -1
- package/dist/generated/themes/YearPicker.css.js +1 -1
- package/dist/generated/themes/YearPicker.css.js.map +1 -1
- package/dist/generated/themes/YearRangePicker.css.d.ts +1 -1
- package/dist/generated/themes/YearRangePicker.css.js +1 -1
- package/dist/generated/themes/YearRangePicker.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/popup-utils/OpenedPopupsRegistry.js +15 -1
- package/dist/popup-utils/OpenedPopupsRegistry.js.map +1 -1
- package/dist/vscode.html-custom-data.json +25 -5
- package/dist/web-types.json +51 -8
- package/package.json +9 -9
- package/src/CheckBoxTemplate.tsx +8 -6
- package/src/ComboBoxPopoverTemplate.tsx +0 -1
- package/src/ComboBoxTemplate.tsx +4 -1
- package/src/FileUploaderPopoverTemplate.tsx +1 -3
- package/src/FileUploaderTemplate.tsx +79 -25
- package/src/InputTemplate.tsx +4 -0
- package/src/ListTemplate.tsx +2 -1
- package/src/MenuItemGroupTemplate.tsx +1 -0
- package/src/MenuItemTemplate.tsx +1 -0
- package/src/MultiComboBoxItemTemplate.tsx +1 -2
- package/src/MultiComboBoxPopoverTemplate.tsx +1 -1
- package/src/MultiComboBoxTemplate.tsx +4 -0
- package/src/SplitButtonTemplate.tsx +1 -1
- package/src/TokenizerPopoverTemplate.tsx +1 -1
- package/src/features/InputSuggestionsTemplate.tsx +0 -1
- package/src/i18n/messagebundle.properties +40 -3
- package/src/i18n/messagebundle_ar.properties +4 -0
- package/src/i18n/messagebundle_bg.properties +5 -1
- package/src/i18n/messagebundle_ca.properties +5 -1
- package/src/i18n/messagebundle_cnr.properties +4 -0
- package/src/i18n/messagebundle_cs.properties +4 -0
- package/src/i18n/messagebundle_cy.properties +4 -0
- package/src/i18n/messagebundle_da.properties +4 -0
- package/src/i18n/messagebundle_de.properties +5 -1
- package/src/i18n/messagebundle_el.properties +4 -0
- package/src/i18n/messagebundle_en.properties +31 -3
- package/src/i18n/messagebundle_en_GB.properties +4 -0
- package/src/i18n/messagebundle_en_US_sappsd.properties +22 -2
- package/src/i18n/messagebundle_en_US_saprigi.properties +20 -2
- package/src/i18n/messagebundle_en_US_saptrc.properties +22 -2
- package/src/i18n/messagebundle_es.properties +4 -0
- package/src/i18n/messagebundle_es_MX.properties +4 -0
- package/src/i18n/messagebundle_et.properties +4 -0
- package/src/i18n/messagebundle_fi.properties +4 -0
- package/src/i18n/messagebundle_fr.properties +4 -0
- package/src/i18n/messagebundle_fr_CA.properties +4 -0
- package/src/i18n/messagebundle_hi.properties +4 -0
- package/src/i18n/messagebundle_hr.properties +5 -1
- package/src/i18n/messagebundle_hu.properties +4 -0
- package/src/i18n/messagebundle_id.properties +5 -1
- package/src/i18n/messagebundle_it.properties +4 -0
- package/src/i18n/messagebundle_iw.properties +4 -0
- package/src/i18n/messagebundle_ja.properties +4 -0
- package/src/i18n/messagebundle_kk.properties +5 -1
- package/src/i18n/messagebundle_ko.properties +4 -0
- package/src/i18n/messagebundle_lt.properties +4 -0
- package/src/i18n/messagebundle_lv.properties +4 -0
- package/src/i18n/messagebundle_mk.properties +4 -0
- package/src/i18n/messagebundle_ms.properties +4 -0
- package/src/i18n/messagebundle_nl.properties +4 -0
- package/src/i18n/messagebundle_no.properties +4 -0
- package/src/i18n/messagebundle_pl.properties +4 -0
- package/src/i18n/messagebundle_pt.properties +4 -0
- package/src/i18n/messagebundle_pt_PT.properties +4 -0
- package/src/i18n/messagebundle_ro.properties +4 -0
- package/src/i18n/messagebundle_ru.properties +4 -0
- package/src/i18n/messagebundle_sh.properties +4 -0
- package/src/i18n/messagebundle_sk.properties +4 -0
- package/src/i18n/messagebundle_sl.properties +4 -0
- package/src/i18n/messagebundle_sr.properties +4 -0
- package/src/i18n/messagebundle_sv.properties +4 -0
- package/src/i18n/messagebundle_th.properties +4 -0
- package/src/i18n/messagebundle_tr.properties +4 -0
- package/src/i18n/messagebundle_uk.properties +4 -0
- package/src/i18n/messagebundle_vi.properties +4 -0
- package/src/i18n/messagebundle_zh_CN.properties +4 -0
- package/src/i18n/messagebundle_zh_TW.properties +4 -0
- package/src/themes/AvatarGroup.css +2 -1
- package/src/themes/Button.css +2 -2
- package/src/themes/FileUploader.css +148 -31
- package/src/themes/MenuItem.css +1 -4
- package/src/themes/Table.css +0 -2
- package/src/themes/ToolbarButton.css +7 -0
- package/src/themes/ValueStateMessage.css +1 -1
- package/src/themes/ValueStateVariables.css +27 -0
- package/src/themes/base/FileUploader-parameters.css +2 -2
- package/src/themes/sap_horizon/FileUploader-parameters.css +0 -4
- package/src/themes/sap_horizon_dark/FileUploader-parameters.css +0 -4
- package/src/themes/sap_horizon_hcb/FileUploader-parameters.css +1 -6
- package/src/themes/sap_horizon_hcw/FileUploader-parameters.css +1 -6
- package/dist/css/themes/ToolbarButtonPopover.css +0 -1
- package/dist/generated/themes/ToolbarButtonPopover.css.d.ts +0 -2
- package/dist/generated/themes/ToolbarButtonPopover.css.js.map +0 -1
- package/src/themes/ToolbarButtonPopover.css +0 -3
package/dist/CheckBox.d.ts
CHANGED
|
@@ -3,6 +3,15 @@ import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
|
3
3
|
import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
|
|
4
4
|
import type { IFormInputElement } from "@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js";
|
|
5
5
|
import type WrappingType from "./types/WrappingType.js";
|
|
6
|
+
import type { AriaRole, AriaChecked, AriaDisabled, AriaReadonly } from "@ui5/webcomponents-base/dist/types.js";
|
|
7
|
+
type CheckBoxAccInfo = {
|
|
8
|
+
role?: AriaRole;
|
|
9
|
+
ariaChecked?: AriaChecked;
|
|
10
|
+
ariaReadonly?: AriaReadonly;
|
|
11
|
+
ariaDisabled?: AriaDisabled;
|
|
12
|
+
ariaRequired?: boolean;
|
|
13
|
+
tabindex?: number | undefined;
|
|
14
|
+
};
|
|
6
15
|
/**
|
|
7
16
|
* @class
|
|
8
17
|
*
|
|
@@ -177,6 +186,11 @@ declare class CheckBox extends UI5Element implements IFormInputElement {
|
|
|
177
186
|
* @private
|
|
178
187
|
*/
|
|
179
188
|
active: boolean;
|
|
189
|
+
/**
|
|
190
|
+
* Defines custom aria implementation object.
|
|
191
|
+
* @private
|
|
192
|
+
*/
|
|
193
|
+
_accInfo?: CheckBoxAccInfo;
|
|
180
194
|
static i18nBundle: I18nBundle;
|
|
181
195
|
_deactivate: () => void;
|
|
182
196
|
get formValidityMessage(): string;
|
|
@@ -215,5 +229,13 @@ declare class CheckBox extends UI5Element implements IFormInputElement {
|
|
|
215
229
|
get tabbable(): boolean;
|
|
216
230
|
get isCompletelyChecked(): boolean;
|
|
217
231
|
get isDisplayOnly(): boolean;
|
|
232
|
+
get accInfo(): {
|
|
233
|
+
role: import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").JSXInternal.AriaRole | undefined;
|
|
234
|
+
ariaChecked: import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").JSXInternal.Signalish<import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").Booleanish | "mixed" | undefined>;
|
|
235
|
+
ariaReadonly: import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").JSXInternal.Signalish<import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").Booleanish | undefined>;
|
|
236
|
+
ariaDisabled: import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").JSXInternal.Signalish<import("@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js").Booleanish | undefined>;
|
|
237
|
+
ariaRequired: boolean | undefined;
|
|
238
|
+
tabindex: number | undefined;
|
|
239
|
+
};
|
|
218
240
|
}
|
|
219
241
|
export default CheckBox;
|
package/dist/CheckBox.js
CHANGED
|
@@ -13,7 +13,7 @@ import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
|
13
13
|
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
|
|
14
14
|
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
15
15
|
import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
|
|
16
|
-
import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js";
|
|
16
|
+
import { getEffectiveAriaLabelText, getAssociatedLabelForTexts } from "@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js";
|
|
17
17
|
import { isSpace, isEnter } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
18
18
|
import { VALUE_STATE_ERROR, VALUE_STATE_WARNING, VALUE_STATE_SUCCESS, FORM_CHECKABLE_REQUIRED, } from "./generated/i18n/i18n-defaults.js";
|
|
19
19
|
// Styles
|
|
@@ -261,7 +261,7 @@ let CheckBox = CheckBox_1 = class CheckBox extends UI5Element {
|
|
|
261
261
|
};
|
|
262
262
|
}
|
|
263
263
|
get ariaLabelText() {
|
|
264
|
-
return getEffectiveAriaLabelText(this);
|
|
264
|
+
return getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this);
|
|
265
265
|
}
|
|
266
266
|
get classes() {
|
|
267
267
|
return {
|
|
@@ -311,6 +311,16 @@ let CheckBox = CheckBox_1 = class CheckBox extends UI5Element {
|
|
|
311
311
|
get isDisplayOnly() {
|
|
312
312
|
return this.displayOnly && !this.disabled;
|
|
313
313
|
}
|
|
314
|
+
get accInfo() {
|
|
315
|
+
return {
|
|
316
|
+
"role": this._accInfo ? this._accInfo.role : "checkbox",
|
|
317
|
+
"ariaChecked": this._accInfo ? this._accInfo.ariaChecked : this.effectiveAriaChecked,
|
|
318
|
+
"ariaReadonly": this._accInfo ? this._accInfo.ariaReadonly : this.ariaReadonly,
|
|
319
|
+
"ariaDisabled": this._accInfo ? this._accInfo.ariaDisabled : this.effectiveAriaDisabled,
|
|
320
|
+
"ariaRequired": this._accInfo ? this._accInfo.ariaRequired : this.required,
|
|
321
|
+
"tabindex": this._accInfo ? this._accInfo.tabindex : this.effectiveTabIndex,
|
|
322
|
+
};
|
|
323
|
+
}
|
|
314
324
|
};
|
|
315
325
|
__decorate([
|
|
316
326
|
property()
|
|
@@ -354,6 +364,9 @@ __decorate([
|
|
|
354
364
|
__decorate([
|
|
355
365
|
property({ type: Boolean })
|
|
356
366
|
], CheckBox.prototype, "active", void 0);
|
|
367
|
+
__decorate([
|
|
368
|
+
property({ type: Object })
|
|
369
|
+
], CheckBox.prototype, "_accInfo", void 0);
|
|
357
370
|
__decorate([
|
|
358
371
|
i18n("@ui5/webcomponents")
|
|
359
372
|
], CheckBox, "i18nBundle", void 0);
|
package/dist/CheckBox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckBox.js","sourceRoot":"","sources":["../src/CheckBox.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport type WrappingType from \"./types/WrappingType.js\";\nimport {\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_SUCCESS,\n\tFORM_CHECKABLE_REQUIRED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport checkboxCss from \"./generated/themes/CheckBox.css.js\";\n\n// Template\nimport CheckBoxTemplate from \"./CheckBoxTemplate.js\";\n\nlet isGlobalHandlerAttached = false;\nlet activeCb: CheckBox;\n\n/**\n * @class\n *\n * ### Overview\n *\n * Allows the user to set a binary value, such as true/false or yes/no for an item.\n *\n * The `ui5-checkbox` component consists of a box and a label that describes its purpose.\n * If it's checked, an indicator is displayed inside the box.\n * To check/uncheck the `ui5-checkbox`, the user has to click or tap the square\n * box or its label.\n *\n * The `ui5-checkbox` component only has 2 states - checked and unchecked.\n * Clicking or tapping toggles the `ui5-checkbox` between checked and unchecked state.\n *\n * ### Usage\n *\n * You can define the checkbox text with via the `text` property. If the text exceeds the available width, it is truncated by default.\n * In case you prefer text to truncate, set the `wrappingType` property to \"None\".\n * The touchable area for toggling the `ui5-checkbox` ends where the text ends.\n *\n * You can disable the `ui5-checkbox` by setting the `disabled` property to\n * `true`,\n * or use the `ui5-checkbox` in read-only mode by setting the `readonly`\n * property to `true`.\n *\n * ### Keyboard Handling\n *\n * The user can use the following keyboard shortcuts to toggle the checked state of the `ui5-checkbox`.\n *\n * - [Space],[Enter] - Toggles between different states: checked, not checked.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/CheckBox.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @csspart root - Used to style the outermost wrapper of the `ui5-checkbox`\n * @csspart label - Used to style the label of the `ui5-checkbox`\n * @csspart icon - Used to style the icon of the `ui5-checkbox`\n */\n@customElement({\n\ttag: \"ui5-checkbox\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\trenderer: jsxRenderer,\n\ttemplate: CheckBoxTemplate,\n\tstyles: checkboxCss,\n})\n/**\n * Fired when the component checked state changes.\n * @public\n */\n@event(\"change\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired to make Angular two way data binding work properly.\n * @private\n */\n@event(\"value-changed\", {\n\tbubbles: true,\n\tcancelable: true,\n})\nclass CheckBox extends UI5Element implements IFormInputElement {\n\teventDetails!: {\n\t\t\"change\": void,\n\t\t\"value-changed\": void,\n\t};\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component\n\t * @default undefined\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @public\n\t * @default undefined\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines whether the component is disabled.\n\t *\n\t * **Note:** A disabled component is completely noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t *\n\t * **Note:** A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Determines whether the `ui5-checkbox` is in display only state.\n\t *\n\t * When set to `true`, the `ui5-checkbox` is not interactive, not editable, not focusable\n\t * and not in the tab chain. This setting is used for forms in review mode.\n\t *\n\t * **Note:** When the property `disabled` is set to `true` this property has no effect.\n\t * @since 1.22.0\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tdisplayOnly = false;\n\n\t/**\n\t * Defines whether the component is required.\n\t *\n\t * **Note:** We advise against using the text property of the checkbox when there is a\n\t * label associated with it to avoid having two required asterisks.\n\t * @default false\n\t * @public\n\t * @since 1.3.0\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t* Defines whether the component is displayed as partially checked.\n\t*\n\t* **Note:** The indeterminate state can be set only programmatically and can’t be achieved by user\n\t* interaction and the resulting visual state depends on the values of the `indeterminate`\n\t* and `checked` properties:\n\t*\n\t* - If the component is checked and indeterminate, it will be displayed as partially checked\n\t* - If the component is checked and it is not indeterminate, it will be displayed as checked\n\t* - If the component is not checked, it will be displayed as not checked regardless value of the indeterminate attribute\n\t* @default false\n\t* @public\n\t* @since 1.0.0-rc.15\n\t*/\n\t@property({ type: Boolean })\n\tindeterminate = false;\n\n\t/**\n\t * Defines if the component is checked.\n\t *\n\t * **Note:** The property can be changed with user interaction,\n\t * either by cliking/tapping on the component, or by\n\t * pressing the Enter or Space key.\n\t * @default false\n\t * @formEvents change\n\t * @formProperty\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tchecked = false;\n\n\t/**\n\t * Defines the text of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Defines whether the component text wraps when there is not enough space.\n\t *\n\t * **Note:** for option \"Normal\" the text will wrap and the words will not be broken based on hyphenation.\n\t * **Note:** for option \"None\" the text will be truncated with an ellipsis.\n\t * @default \"Normal\"\n\t * @public\n\t */\n\t@property()\n\twrappingType: `${WrappingType}` = \"Normal\";\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the form value of the component that is submitted when the checkbox is checked.\n\t *\n\t * When a form containing `ui5-checkbox` elements is submitted, only the values of the\n\t * **checked** checkboxes are included in the form data sent to the server. Unchecked\n\t * checkboxes do not contribute any data to the form submission.\n\t *\n\t * This property is particularly useful for **checkbox groups**, where multiple checkboxes with the same `name` but different `value` properties can be used to represent a set of related options.\n\t *\n\t * @default \"on\"\n\t * @public\n\t */\n\t@property()\n\tvalue = \"on\";\n\n\t/**\n\t * Defines the active state (pressed or not) of the component.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tactive = false;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\t_deactivate: () => void;\n\n\tget formValidityMessage() {\n\t\treturn CheckBox.i18nBundle.getText(FORM_CHECKABLE_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.checked };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue() {\n\t\treturn this.checked ? this.value : null;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._deactivate = () => {\n\t\t\tif (activeCb) {\n\t\t\t\tactiveCb.active = false;\n\t\t\t}\n\t\t};\n\n\t\tif (!isGlobalHandlerAttached) {\n\t\t\tdocument.addEventListener(\"mouseup\", this._deactivate);\n\t\t\tisGlobalHandlerAttached = true;\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tthis.toggle();\n\t}\n\n\t_onmousedown() {\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.active = true;\n\t\tactiveCb = this; // eslint-disable-line\n\t}\n\n\t_onmouseup() {\n\t\tthis.active = false;\n\t}\n\n\t_onfocusout() {\n\t\tthis.active = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = true;\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = false;\n\t}\n\n\ttoggle() {\n\t\tif (this.canToggle()) {\n\t\t\tconst lastState = {\n\t\t\t\tchecked: this.checked,\n\t\t\t\tindeterminate: this.indeterminate,\n\t\t\t};\n\t\t\tif (this.indeterminate) {\n\t\t\t\tthis.indeterminate = false;\n\t\t\t\tthis.checked = true;\n\t\t\t} else {\n\t\t\t\tthis.checked = !this.checked;\n\t\t\t}\n\n\t\t\tconst changePrevented = !this.fireDecoratorEvent(\"change\");\n\t\t\t// Angular two way data binding\n\t\t\tconst valueChangePrevented = !this.fireDecoratorEvent(\"value-changed\");\n\n\t\t\tif (changePrevented || valueChangePrevented) {\n\t\t\t\tthis.checked = lastState.checked;\n\t\t\t\tthis.indeterminate = lastState.indeterminate;\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tcanToggle() {\n\t\treturn !(this.disabled || this.readonly || this.displayOnly);\n\t}\n\n\tvalueStateTextMappings() {\n\t\treturn {\n\t\t\t\"Negative\": CheckBox.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Critical\": CheckBox.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t\t\"Positive\": CheckBox.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t};\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\t\"ui5-checkbox--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t},\n\t\t};\n\t}\n\n\tget ariaReadonly() {\n\t\treturn this.readonly || this.displayOnly ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaDisabled() {\n\t\treturn this.disabled ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaChecked() {\n\t\treturn this.indeterminate && this.checked ? \"mixed\" : this.checked;\n\t}\n\n\tget ariaLabelledBy() {\n\t\tif (!this.ariaLabelText) {\n\t\t\treturn this.text ? `${this._id}-label` : undefined;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget ariaDescribedBy() {\n\t\treturn this.hasValueState ? `${this._id}-descr` : undefined;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget valueStateText() {\n\t\tif (this.valueState !== ValueState.None && this.valueState !== ValueState.Information) {\n\t\t\treturn this.valueStateTextMappings()[this.valueState];\n\t\t}\n\t}\n\n\tget effectiveTabIndex() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\n\t\tif (this.tabbable) {\n\t\t\treturn tabindex ? parseInt(tabindex) : 0;\n\t\t}\n\t}\n\n\tget tabbable() {\n\t\treturn !this.disabled && !this.displayOnly;\n\t}\n\n\tget isCompletelyChecked() {\n\t\treturn this.checked && !this.indeterminate;\n\t}\n\n\tget isDisplayOnly() {\n\t\treturn this.displayOnly && !this.disabled;\n\t}\n}\n\nCheckBox.define();\n\nexport default CheckBox;\n"]}
|
|
1
|
+
{"version":3,"file":"CheckBox.js","sourceRoot":"","sources":["../src/CheckBox.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText, getAssociatedLabelForTexts } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport type WrappingType from \"./types/WrappingType.js\";\nimport type {\n\tAriaRole,\n\tAriaChecked,\n\tAriaDisabled,\n\tAriaReadonly,\n} from \"@ui5/webcomponents-base/dist/types.js\";\nimport {\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_SUCCESS,\n\tFORM_CHECKABLE_REQUIRED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport checkboxCss from \"./generated/themes/CheckBox.css.js\";\n\n// Template\nimport CheckBoxTemplate from \"./CheckBoxTemplate.js\";\n\nlet isGlobalHandlerAttached = false;\nlet activeCb: CheckBox;\n\ntype CheckBoxAccInfo = {\n\trole?: AriaRole,\n\tariaChecked?: AriaChecked,\n\tariaReadonly?: AriaReadonly,\n\tariaDisabled?: AriaDisabled,\n\tariaRequired?: boolean,\n\ttabindex?: number | undefined,\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * Allows the user to set a binary value, such as true/false or yes/no for an item.\n *\n * The `ui5-checkbox` component consists of a box and a label that describes its purpose.\n * If it's checked, an indicator is displayed inside the box.\n * To check/uncheck the `ui5-checkbox`, the user has to click or tap the square\n * box or its label.\n *\n * The `ui5-checkbox` component only has 2 states - checked and unchecked.\n * Clicking or tapping toggles the `ui5-checkbox` between checked and unchecked state.\n *\n * ### Usage\n *\n * You can define the checkbox text with via the `text` property. If the text exceeds the available width, it is truncated by default.\n * In case you prefer text to truncate, set the `wrappingType` property to \"None\".\n * The touchable area for toggling the `ui5-checkbox` ends where the text ends.\n *\n * You can disable the `ui5-checkbox` by setting the `disabled` property to\n * `true`,\n * or use the `ui5-checkbox` in read-only mode by setting the `readonly`\n * property to `true`.\n *\n * ### Keyboard Handling\n *\n * The user can use the following keyboard shortcuts to toggle the checked state of the `ui5-checkbox`.\n *\n * - [Space],[Enter] - Toggles between different states: checked, not checked.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/CheckBox.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @csspart root - Used to style the outermost wrapper of the `ui5-checkbox`\n * @csspart label - Used to style the label of the `ui5-checkbox`\n * @csspart icon - Used to style the icon of the `ui5-checkbox`\n */\n@customElement({\n\ttag: \"ui5-checkbox\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\trenderer: jsxRenderer,\n\ttemplate: CheckBoxTemplate,\n\tstyles: checkboxCss,\n})\n/**\n * Fired when the component checked state changes.\n * @public\n */\n@event(\"change\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired to make Angular two way data binding work properly.\n * @private\n */\n@event(\"value-changed\", {\n\tbubbles: true,\n\tcancelable: true,\n})\nclass CheckBox extends UI5Element implements IFormInputElement {\n\teventDetails!: {\n\t\t\"change\": void,\n\t\t\"value-changed\": void,\n\t};\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component\n\t * @default undefined\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @public\n\t * @default undefined\n\t * @since 1.1.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines whether the component is disabled.\n\t *\n\t * **Note:** A disabled component is completely noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t *\n\t * **Note:** A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Determines whether the `ui5-checkbox` is in display only state.\n\t *\n\t * When set to `true`, the `ui5-checkbox` is not interactive, not editable, not focusable\n\t * and not in the tab chain. This setting is used for forms in review mode.\n\t *\n\t * **Note:** When the property `disabled` is set to `true` this property has no effect.\n\t * @since 1.22.0\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tdisplayOnly = false;\n\n\t/**\n\t * Defines whether the component is required.\n\t *\n\t * **Note:** We advise against using the text property of the checkbox when there is a\n\t * label associated with it to avoid having two required asterisks.\n\t * @default false\n\t * @public\n\t * @since 1.3.0\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t* Defines whether the component is displayed as partially checked.\n\t*\n\t* **Note:** The indeterminate state can be set only programmatically and can’t be achieved by user\n\t* interaction and the resulting visual state depends on the values of the `indeterminate`\n\t* and `checked` properties:\n\t*\n\t* - If the component is checked and indeterminate, it will be displayed as partially checked\n\t* - If the component is checked and it is not indeterminate, it will be displayed as checked\n\t* - If the component is not checked, it will be displayed as not checked regardless value of the indeterminate attribute\n\t* @default false\n\t* @public\n\t* @since 1.0.0-rc.15\n\t*/\n\t@property({ type: Boolean })\n\tindeterminate = false;\n\n\t/**\n\t * Defines if the component is checked.\n\t *\n\t * **Note:** The property can be changed with user interaction,\n\t * either by cliking/tapping on the component, or by\n\t * pressing the Enter or Space key.\n\t * @default false\n\t * @formEvents change\n\t * @formProperty\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tchecked = false;\n\n\t/**\n\t * Defines the text of the component.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Defines whether the component text wraps when there is not enough space.\n\t *\n\t * **Note:** for option \"Normal\" the text will wrap and the words will not be broken based on hyphenation.\n\t * **Note:** for option \"None\" the text will be truncated with an ellipsis.\n\t * @default \"Normal\"\n\t * @public\n\t */\n\t@property()\n\twrappingType: `${WrappingType}` = \"Normal\";\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the form value of the component that is submitted when the checkbox is checked.\n\t *\n\t * When a form containing `ui5-checkbox` elements is submitted, only the values of the\n\t * **checked** checkboxes are included in the form data sent to the server. Unchecked\n\t * checkboxes do not contribute any data to the form submission.\n\t *\n\t * This property is particularly useful for **checkbox groups**, where multiple checkboxes with the same `name` but different `value` properties can be used to represent a set of related options.\n\t *\n\t * @default \"on\"\n\t * @public\n\t */\n\t@property()\n\tvalue = \"on\";\n\n\t/**\n\t * Defines the active state (pressed or not) of the component.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tactive = false;\n\n\t/**\n\t * Defines custom aria implementation object.\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_accInfo?: CheckBoxAccInfo;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\t_deactivate: () => void;\n\n\tget formValidityMessage() {\n\t\treturn CheckBox.i18nBundle.getText(FORM_CHECKABLE_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.checked };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue() {\n\t\treturn this.checked ? this.value : null;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._deactivate = () => {\n\t\t\tif (activeCb) {\n\t\t\t\tactiveCb.active = false;\n\t\t\t}\n\t\t};\n\n\t\tif (!isGlobalHandlerAttached) {\n\t\t\tdocument.addEventListener(\"mouseup\", this._deactivate);\n\t\t\tisGlobalHandlerAttached = true;\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tthis.toggle();\n\t}\n\n\t_onmousedown() {\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.active = true;\n\t\tactiveCb = this; // eslint-disable-line\n\t}\n\n\t_onmouseup() {\n\t\tthis.active = false;\n\t}\n\n\t_onfocusout() {\n\t\tthis.active = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (this.readonly || this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = true;\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.toggle();\n\t\t}\n\n\t\tthis.active = false;\n\t}\n\n\ttoggle() {\n\t\tif (this.canToggle()) {\n\t\t\tconst lastState = {\n\t\t\t\tchecked: this.checked,\n\t\t\t\tindeterminate: this.indeterminate,\n\t\t\t};\n\t\t\tif (this.indeterminate) {\n\t\t\t\tthis.indeterminate = false;\n\t\t\t\tthis.checked = true;\n\t\t\t} else {\n\t\t\t\tthis.checked = !this.checked;\n\t\t\t}\n\n\t\t\tconst changePrevented = !this.fireDecoratorEvent(\"change\");\n\t\t\t// Angular two way data binding\n\t\t\tconst valueChangePrevented = !this.fireDecoratorEvent(\"value-changed\");\n\n\t\t\tif (changePrevented || valueChangePrevented) {\n\t\t\t\tthis.checked = lastState.checked;\n\t\t\t\tthis.indeterminate = lastState.indeterminate;\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tcanToggle() {\n\t\treturn !(this.disabled || this.readonly || this.displayOnly);\n\t}\n\n\tvalueStateTextMappings() {\n\t\treturn {\n\t\t\t\"Negative\": CheckBox.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Critical\": CheckBox.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t\t\"Positive\": CheckBox.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t};\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this);\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tmain: {\n\t\t\t\t\"ui5-checkbox--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t},\n\t\t};\n\t}\n\n\tget ariaReadonly() {\n\t\treturn this.readonly || this.displayOnly ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaDisabled() {\n\t\treturn this.disabled ? \"true\" : undefined;\n\t}\n\n\tget effectiveAriaChecked() {\n\t\treturn this.indeterminate && this.checked ? \"mixed\" : this.checked;\n\t}\n\n\tget ariaLabelledBy() {\n\t\tif (!this.ariaLabelText) {\n\t\t\treturn this.text ? `${this._id}-label` : undefined;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget ariaDescribedBy() {\n\t\treturn this.hasValueState ? `${this._id}-descr` : undefined;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget valueStateText() {\n\t\tif (this.valueState !== ValueState.None && this.valueState !== ValueState.Information) {\n\t\t\treturn this.valueStateTextMappings()[this.valueState];\n\t\t}\n\t}\n\n\tget effectiveTabIndex() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\n\t\tif (this.tabbable) {\n\t\t\treturn tabindex ? parseInt(tabindex) : 0;\n\t\t}\n\t}\n\n\tget tabbable() {\n\t\treturn !this.disabled && !this.displayOnly;\n\t}\n\n\tget isCompletelyChecked() {\n\t\treturn this.checked && !this.indeterminate;\n\t}\n\n\tget isDisplayOnly() {\n\t\treturn this.displayOnly && !this.disabled;\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\t\"role\": this._accInfo ? this._accInfo.role : \"checkbox\" as AriaRole,\n\t\t\t\"ariaChecked\": this._accInfo ? this._accInfo.ariaChecked : this.effectiveAriaChecked as AriaChecked,\n\t\t\t\"ariaReadonly\": this._accInfo ? this._accInfo.ariaReadonly : this.ariaReadonly as AriaReadonly,\n\t\t\t\"ariaDisabled\": this._accInfo ? this._accInfo.ariaDisabled : this.effectiveAriaDisabled as AriaDisabled,\n\t\t\t\"ariaRequired\": this._accInfo ? this._accInfo.ariaRequired : this.required,\n\t\t\t\"tabindex\": this._accInfo ? this._accInfo.tabindex : this.effectiveTabIndex,\n\t\t};\n\t}\n}\n\nCheckBox.define();\n\nexport default CheckBox;\n"]}
|
package/dist/CheckBoxTemplate.js
CHANGED
|
@@ -10,11 +10,12 @@ export default function CheckBoxTemplate() {
|
|
|
10
10
|
return (_jsxs("div", { class: {
|
|
11
11
|
"ui5-checkbox-root": true,
|
|
12
12
|
"ui5-checkbox--hoverable": !this.disabled && !this.readonly && isDesktop(),
|
|
13
|
-
}, role:
|
|
13
|
+
}, role: this.accInfo.role, part: "root", "aria-checked": this.accInfo.ariaChecked, "aria-readonly": this.accInfo.ariaReadonly, "aria-disabled": this.accInfo.ariaDisabled, "aria-label": this.ariaLabelText, "aria-labelledby": this.ariaLabelledBy, "aria-describedby": this.ariaDescribedBy, "aria-required": this.accInfo.ariaRequired, tabindex: this.accInfo.tabindex, onMouseDown: this._onmousedown, onMouseUp: this._onmouseup, onKeyDown: this._onkeydown, onKeyUp: this._onkeyup, onClick: this._onclick, onFocusOut: this._onfocusout, children: [this.isDisplayOnly ?
|
|
14
14
|
_jsx("div", { class: "ui5-checkbox-display-only-icon-inner", children: _jsx(Icon, { "aria-hidden": "true", name: displayOnlyIcon.call(this), class: "ui5-checkbox-display-only-icon", part: "icon" }) })
|
|
15
15
|
:
|
|
16
16
|
_jsx("div", { id: `${this._id}-CbBg`, class: "ui5-checkbox-inner", children: this.isCompletelyChecked &&
|
|
17
|
-
_jsx(Icon, { "aria-hidden": "true", name: accept, class: "ui5-checkbox-icon", part: "icon" }) }),
|
|
17
|
+
_jsx(Icon, { "aria-hidden": "true", name: accept, class: "ui5-checkbox-icon", part: "icon" }) }), this.accInfo.role === "checkbox" &&
|
|
18
|
+
_jsx("input", { id: `${this._id}-CB`, type: "checkbox", checked: this.checked, value: this.value, readonly: this.readonly, disabled: this.disabled, tabindex: -1, "aria-hidden": "true", "data-sap-no-tab-ref": true }), this.text &&
|
|
18
19
|
_jsx(Label, { id: `${this._id}-label`, part: "label", class: "ui5-checkbox-label", wrappingType: this.wrappingType, required: this.required, children: this.text }), this.hasValueState &&
|
|
19
20
|
_jsx("span", { id: `${this._id}-descr`, class: "ui5-hidden-text", children: this.valueStateText })] }));
|
|
20
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckBoxTemplate.js","sourceRoot":"","sources":["../src/CheckBoxTemplate.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAGnE,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,MAAM,MAAM,yCAAyC,CAAC;AAC7D,OAAO,QAAQ,MAAM,2CAA2C,CAAC;AACjE,OAAO,MAAM,MAAM,yCAAyC,CAAC;AAC7D,OAAO,QAAQ,MAAM,4CAA4C,CAAC;AAElE,MAAM,CAAC,OAAO,UAAU,gBAAgB;IACvC,OAAO,CACN,eACC,KAAK,EAAE;YACN,mBAAmB,EAAE,IAAI;YACzB,yBAAyB,EAAE,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,SAAS,EAAE;SAC1E,EACD,IAAI,
|
|
1
|
+
{"version":3,"file":"CheckBoxTemplate.js","sourceRoot":"","sources":["../src/CheckBoxTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\n\nimport type CheckBox from \"./CheckBox.js\";\nimport Label from \"./Label.js\";\nimport Icon from \"./Icon.js\";\nimport accept from \"@ui5/webcomponents-icons/dist/accept.js\";\nimport complete from \"@ui5/webcomponents-icons/dist/complete.js\";\nimport border from \"@ui5/webcomponents-icons/dist/border.js\";\nimport triState from \"@ui5/webcomponents-icons/dist/tri-state.js\";\n\nexport default function CheckBoxTemplate(this: CheckBox) {\n\treturn (\n\t\t<div\n\t\t\tclass={{\n\t\t\t\t\"ui5-checkbox-root\": true,\n\t\t\t\t\"ui5-checkbox--hoverable\": !this.disabled && !this.readonly && isDesktop(),\n\t\t\t}}\n\t\t\trole={this.accInfo.role}\n\t\t\tpart=\"root\"\n\t\t\taria-checked={this.accInfo.ariaChecked}\n\t\t\taria-readonly={this.accInfo.ariaReadonly}\n\t\t\taria-disabled={this.accInfo.ariaDisabled}\n\t\t\taria-label={this.ariaLabelText}\n\t\t\taria-labelledby={this.ariaLabelledBy}\n\t\t\taria-describedby={this.ariaDescribedBy}\n\t\t\taria-required={this.accInfo.ariaRequired}\n\t\t\ttabindex={this.accInfo.tabindex}\n\t\t\tonMouseDown={this._onmousedown}\n\t\t\tonMouseUp={this._onmouseup}\n\t\t\tonKeyDown={this._onkeydown}\n\t\t\tonKeyUp={this._onkeyup}\n\t\t\tonClick={this._onclick}\n\t\t\tonFocusOut={this._onfocusout}\n\t\t>\n\n\t\t\t{this.isDisplayOnly ?\n\t\t\t\t<div class=\"ui5-checkbox-display-only-icon-inner\">\n\t\t\t\t\t<Icon aria-hidden=\"true\" name={displayOnlyIcon.call(this)} class=\"ui5-checkbox-display-only-icon\" part=\"icon\"/>\n\t\t\t\t</div>\n\t\t\t\t:\n\t\t\t\t<div id={`${this._id}-CbBg`} class=\"ui5-checkbox-inner\">\n\t\t\t\t\t{this.isCompletelyChecked &&\n\t\t\t\t\t<Icon aria-hidden=\"true\" name={accept} class=\"ui5-checkbox-icon\" part=\"icon\"/>\n\t\t\t\t\t}\n\t\t\t\t</div>\n\t\t\t}\n\n\t\t\t{this.accInfo.role === \"checkbox\" &&\n\t\t\t<input\n\t\t\t\tid={`${this._id}-CB`}\n\t\t\t\ttype=\"checkbox\"\n\t\t\t\tchecked={this.checked}\n\t\t\t\tvalue={this.value}\n\t\t\t\treadonly={this.readonly}\n\t\t\t\tdisabled={this.disabled}\n\t\t\t\ttabindex={-1}\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tdata-sap-no-tab-ref\n\t\t\t/>\n\t\t\t}\n\n\t\t\t{this.text &&\n\t\t\t<Label\n\t\t\t\tid={`${this._id}-label`}\n\t\t\t\tpart=\"label\"\n\t\t\t\tclass=\"ui5-checkbox-label\"\n\t\t\t\twrappingType={this.wrappingType}\n\t\t\t\trequired={this.required}\n\t\t\t>\n\t\t\t\t{this.text}\n\t\t\t</Label>\n\t\t\t}\n\n\t\t\t{this.hasValueState &&\n\t\t\t<span id={`${this._id}-descr`} class=\"ui5-hidden-text\">{this.valueStateText}</span>\n\t\t\t}\n\t\t</div>\n\t);\n}\n\nfunction displayOnlyIcon(this: CheckBox) {\n\tif (this.isCompletelyChecked) {\n\t\treturn complete;\n\t}\n\tif (this.checked && this.indeterminate) {\n\t\treturn triState;\n\t}\n\treturn border;\n}\n"]}
|
package/dist/ComboBox.d.ts
CHANGED
|
@@ -67,6 +67,7 @@ type ComboBoxSelectionChangeEventDetail = {
|
|
|
67
67
|
* - [Page Up] - Moves selection up by page size (10 items by default).
|
|
68
68
|
* - [Home] - If focus is in the ComboBox, moves cursor at the beginning of text. If focus is in the picker, selects the first item.
|
|
69
69
|
* - [End] - If focus is in the ComboBox, moves cursor at the end of text. If focus is in the picker, selects the last item.
|
|
70
|
+
* - [Ctrl]+[Alt]+[F8] or [Command]+[Option]+[F8] - Focuses the first link in the value state message, if available. Pressing [Tab] moves the focus to the next link in the value state message, or closes the value state message if there are no more links.
|
|
70
71
|
*
|
|
71
72
|
* ### ES6 Module Import
|
|
72
73
|
*
|
|
@@ -174,15 +175,10 @@ declare class ComboBox extends UI5Element implements IFormInputElement {
|
|
|
174
175
|
*/
|
|
175
176
|
showClearIcon: boolean;
|
|
176
177
|
/**
|
|
177
|
-
* Indicates whether the input is
|
|
178
|
+
* Indicates whether the input is focused
|
|
178
179
|
* @private
|
|
179
180
|
*/
|
|
180
181
|
focused: boolean;
|
|
181
|
-
/**
|
|
182
|
-
* Indicates whether the visual focus is on the value state header
|
|
183
|
-
* @private
|
|
184
|
-
*/
|
|
185
|
-
_isValueStateFocused: boolean;
|
|
186
182
|
/**
|
|
187
183
|
* Defines the accessible ARIA name of the component.
|
|
188
184
|
* @default undefined
|
|
@@ -213,6 +209,17 @@ declare class ComboBox extends UI5Element implements IFormInputElement {
|
|
|
213
209
|
* @since 2.9.0
|
|
214
210
|
*/
|
|
215
211
|
open: boolean;
|
|
212
|
+
/**
|
|
213
|
+
* Indicates whether link navigation is being handled.
|
|
214
|
+
* @default false
|
|
215
|
+
* @since 2.11.0
|
|
216
|
+
* @private
|
|
217
|
+
*/
|
|
218
|
+
_handleLinkNavigation: boolean;
|
|
219
|
+
/**
|
|
220
|
+
* @private
|
|
221
|
+
*/
|
|
222
|
+
_linksListenersArray: Array<(args: any) => void>;
|
|
216
223
|
/**
|
|
217
224
|
* Defines the component items.
|
|
218
225
|
* @public
|
|
@@ -244,6 +251,7 @@ declare class ComboBox extends UI5Element implements IFormInputElement {
|
|
|
244
251
|
_lastValue: string;
|
|
245
252
|
_selectedItemText: string;
|
|
246
253
|
_userTypedValue: string;
|
|
254
|
+
_valueStateLinks: Array<HTMLElement>;
|
|
247
255
|
static i18nBundle: I18nBundle;
|
|
248
256
|
get formValidityMessage(): string;
|
|
249
257
|
get formValidity(): ValidityStateFlags;
|
|
@@ -253,6 +261,7 @@ declare class ComboBox extends UI5Element implements IFormInputElement {
|
|
|
253
261
|
onBeforeRendering(): void;
|
|
254
262
|
get iconsCount(): number;
|
|
255
263
|
onAfterRendering(): void;
|
|
264
|
+
onExitDOM(): void;
|
|
256
265
|
_focusin(e: FocusEvent): void;
|
|
257
266
|
_focusout(e: FocusEvent): void;
|
|
258
267
|
_beforeOpenPopover(): void;
|
|
@@ -285,6 +294,9 @@ declare class ComboBox extends UI5Element implements IFormInputElement {
|
|
|
285
294
|
_handleEnd(e: KeyboardEvent): void;
|
|
286
295
|
_keyup(): void;
|
|
287
296
|
_keydown(e: KeyboardEvent): void;
|
|
297
|
+
_addLinksEventListeners(): void;
|
|
298
|
+
_removeLinksEventListeners(): void;
|
|
299
|
+
_handleCtrlALtF8(): void;
|
|
288
300
|
_handlePopoverKeydown(e: KeyboardEvent): void;
|
|
289
301
|
_handlePopoverFocusout(): void;
|
|
290
302
|
_click(): void;
|
|
@@ -325,6 +337,11 @@ declare class ComboBox extends UI5Element implements IFormInputElement {
|
|
|
325
337
|
* This method is relevant for sap_horizon theme only
|
|
326
338
|
*/
|
|
327
339
|
get _valueStateMessageIcon(): string;
|
|
340
|
+
get linksInAriaValueStateHiddenText(): HTMLElement[];
|
|
341
|
+
get valueStateLinksShortcutsTextAcc(): string;
|
|
342
|
+
get ariaDescribedByText(): string;
|
|
343
|
+
get _valueStateLinksShortcutsTextAccId(): "" | "hiddenText-value-state-link-shortcut";
|
|
344
|
+
get valueStateTextId(): "" | "value-state-description";
|
|
328
345
|
get _isPhone(): boolean;
|
|
329
346
|
get itemTabIndex(): undefined;
|
|
330
347
|
get ariaLabelText(): string | undefined;
|
package/dist/ComboBox.js
CHANGED
|
@@ -12,7 +12,7 @@ import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
|
12
12
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
13
13
|
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
|
|
14
14
|
import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
|
|
15
|
-
import { isPhone, isAndroid } from "@ui5/webcomponents-base/dist/Device.js";
|
|
15
|
+
import { isPhone, isAndroid, isMac } from "@ui5/webcomponents-base/dist/Device.js";
|
|
16
16
|
import InvisibleMessageMode from "@ui5/webcomponents-base/dist/types/InvisibleMessageMode.js";
|
|
17
17
|
import { getEffectiveAriaLabelText, getAssociatedLabelForTexts } from "@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js";
|
|
18
18
|
import announce from "@ui5/webcomponents-base/dist/util/InvisibleMessage.js";
|
|
@@ -25,9 +25,11 @@ import "@ui5/webcomponents-icons/dist/sys-enter-2.js";
|
|
|
25
25
|
import "@ui5/webcomponents-icons/dist/information.js";
|
|
26
26
|
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
27
27
|
import { submitForm } from "@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js";
|
|
28
|
-
import { isBackSpace, isDelete, isShow, isUp, isDown, isEnter, isEscape, isTabNext, isTabPrevious, isPageUp, isPageDown, isHome, isEnd, } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
28
|
+
import { isBackSpace, isDelete, isShow, isUp, isDown, isEnter, isEscape, isTabNext, isTabPrevious, isPageUp, isPageDown, isHome, isEnd, isCtrlAltF8, } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
29
|
+
import { attachListeners } from "@ui5/webcomponents-base/dist/util/valueStateNavigation.js";
|
|
30
|
+
import arraysAreEqual from "@ui5/webcomponents-base/dist/util/arraysAreEqual.js";
|
|
29
31
|
import * as Filters from "./Filters.js";
|
|
30
|
-
import { VALUE_STATE_SUCCESS, VALUE_STATE_ERROR, VALUE_STATE_WARNING, VALUE_STATE_INFORMATION, VALUE_STATE_TYPE_SUCCESS, VALUE_STATE_TYPE_INFORMATION, VALUE_STATE_TYPE_ERROR, VALUE_STATE_TYPE_WARNING, INPUT_SUGGESTIONS_TITLE, COMBOBOX_AVAILABLE_OPTIONS, COMBOBOX_DIALOG_OK_BUTTON, SELECT_OPTIONS, LIST_ITEM_POSITION, LIST_ITEM_GROUP_HEADER, INPUT_CLEAR_ICON_ACC_NAME, FORM_TEXTFIELD_REQUIRED, } from "./generated/i18n/i18n-defaults.js";
|
|
32
|
+
import { VALUE_STATE_SUCCESS, VALUE_STATE_ERROR, VALUE_STATE_WARNING, VALUE_STATE_INFORMATION, VALUE_STATE_TYPE_SUCCESS, VALUE_STATE_TYPE_INFORMATION, VALUE_STATE_TYPE_ERROR, VALUE_STATE_TYPE_WARNING, VALUE_STATE_LINK, VALUE_STATE_LINKS, VALUE_STATE_LINK_MAC, VALUE_STATE_LINKS_MAC, INPUT_SUGGESTIONS_TITLE, COMBOBOX_AVAILABLE_OPTIONS, COMBOBOX_DIALOG_OK_BUTTON, SELECT_OPTIONS, LIST_ITEM_POSITION, LIST_ITEM_GROUP_HEADER, INPUT_CLEAR_ICON_ACC_NAME, FORM_TEXTFIELD_REQUIRED, } from "./generated/i18n/i18n-defaults.js";
|
|
31
33
|
// Templates
|
|
32
34
|
import ComboBoxTemplate from "./ComboBoxTemplate.js";
|
|
33
35
|
// Styles
|
|
@@ -79,6 +81,7 @@ var ValueStateIconMapping;
|
|
|
79
81
|
* - [Page Up] - Moves selection up by page size (10 items by default).
|
|
80
82
|
* - [Home] - If focus is in the ComboBox, moves cursor at the beginning of text. If focus is in the picker, selects the first item.
|
|
81
83
|
* - [End] - If focus is in the ComboBox, moves cursor at the end of text. If focus is in the picker, selects the last item.
|
|
84
|
+
* - [Ctrl]+[Alt]+[F8] or [Command]+[Option]+[F8] - Focuses the first link in the value state message, if available. Pressing [Tab] moves the focus to the next link in the value state message, or closes the value state message if there are no more links.
|
|
82
85
|
*
|
|
83
86
|
* ### ES6 Module Import
|
|
84
87
|
*
|
|
@@ -177,15 +180,10 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
177
180
|
*/
|
|
178
181
|
this.showClearIcon = false;
|
|
179
182
|
/**
|
|
180
|
-
* Indicates whether the input is
|
|
183
|
+
* Indicates whether the input is focused
|
|
181
184
|
* @private
|
|
182
185
|
*/
|
|
183
186
|
this.focused = false;
|
|
184
|
-
/**
|
|
185
|
-
* Indicates whether the visual focus is on the value state header
|
|
186
|
-
* @private
|
|
187
|
-
*/
|
|
188
|
-
this._isValueStateFocused = false;
|
|
189
187
|
this._iconPressed = false;
|
|
190
188
|
this._filteredItems = [];
|
|
191
189
|
this._effectiveShowClearIcon = false;
|
|
@@ -201,6 +199,17 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
201
199
|
* @since 2.9.0
|
|
202
200
|
*/
|
|
203
201
|
this.open = false;
|
|
202
|
+
/**
|
|
203
|
+
* Indicates whether link navigation is being handled.
|
|
204
|
+
* @default false
|
|
205
|
+
* @since 2.11.0
|
|
206
|
+
* @private
|
|
207
|
+
*/
|
|
208
|
+
this._handleLinkNavigation = false;
|
|
209
|
+
/**
|
|
210
|
+
* @private
|
|
211
|
+
*/
|
|
212
|
+
this._linksListenersArray = [];
|
|
204
213
|
this._initialRendering = true;
|
|
205
214
|
this._itemFocused = false;
|
|
206
215
|
// used only for Safari fix (check onAfterRendering)
|
|
@@ -209,6 +218,7 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
209
218
|
this._selectionPerformed = false;
|
|
210
219
|
this._selectedItemText = "";
|
|
211
220
|
this._userTypedValue = "";
|
|
221
|
+
this._valueStateLinks = [];
|
|
212
222
|
// when an initial value is set it should be considered as a _lastValue
|
|
213
223
|
this._lastValue = this.getAttribute("value") || "";
|
|
214
224
|
}
|
|
@@ -248,6 +258,14 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
248
258
|
this.value = this.inner.value;
|
|
249
259
|
}
|
|
250
260
|
this.storeResponsivePopoverWidth();
|
|
261
|
+
if (!arraysAreEqual(this._valueStateLinks, this.linksInAriaValueStateHiddenText)) {
|
|
262
|
+
this._removeLinksEventListeners();
|
|
263
|
+
this._addLinksEventListeners();
|
|
264
|
+
this._valueStateLinks = this.linksInAriaValueStateHiddenText;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
onExitDOM() {
|
|
268
|
+
this._removeLinksEventListeners();
|
|
251
269
|
}
|
|
252
270
|
_focusin(e) {
|
|
253
271
|
this.focused = true;
|
|
@@ -267,7 +285,7 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
267
285
|
this._fireChangeEvent();
|
|
268
286
|
const focusedOutToItemsPicker = this.open && this._getPicker().contains(toBeFocused);
|
|
269
287
|
const focusedOutToValueState = this.valueStateOpen && this.contains(toBeFocused);
|
|
270
|
-
if (focusedOutToItemsPicker || focusedOutToValueState) {
|
|
288
|
+
if (focusedOutToItemsPicker || focusedOutToValueState || this._handleLinkNavigation) {
|
|
271
289
|
e.stopImmediatePropagation();
|
|
272
290
|
return;
|
|
273
291
|
}
|
|
@@ -315,7 +333,9 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
315
333
|
}
|
|
316
334
|
}
|
|
317
335
|
_handleValueStatePopoverFocusout() {
|
|
318
|
-
this.
|
|
336
|
+
if (!this._handleLinkNavigation) {
|
|
337
|
+
this.focused = false;
|
|
338
|
+
}
|
|
319
339
|
}
|
|
320
340
|
_handleValueStatePopoverAfterClose() {
|
|
321
341
|
this.valueStateOpen = false;
|
|
@@ -371,7 +391,6 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
371
391
|
// stop the native event, as the semantic "input" would be fired.
|
|
372
392
|
e.stopImmediatePropagation();
|
|
373
393
|
this.focused = true;
|
|
374
|
-
this._isValueStateFocused = false;
|
|
375
394
|
}
|
|
376
395
|
this._filteredItems = this._filterItems(value);
|
|
377
396
|
this.value = value;
|
|
@@ -483,7 +502,6 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
483
502
|
this.value = isGroupItem ? nextItem.text : currentItem.text;
|
|
484
503
|
currentItem.focused = false;
|
|
485
504
|
}
|
|
486
|
-
this._isValueStateFocused = false;
|
|
487
505
|
this._announceSelectedItem(indexOfItem);
|
|
488
506
|
this._scrollToItem(indexOfItem);
|
|
489
507
|
if (isGroupItem && this.open) {
|
|
@@ -507,39 +525,23 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
507
525
|
}
|
|
508
526
|
_handleArrowDown(e, indexOfItem) {
|
|
509
527
|
const isOpen = this.open;
|
|
510
|
-
if (this.focused && indexOfItem === -1 &&
|
|
511
|
-
this._isValueStateFocused = true;
|
|
512
|
-
this._announceValueStateText();
|
|
528
|
+
if (this.focused && indexOfItem === -1 && isOpen) {
|
|
513
529
|
this.focused = false;
|
|
514
|
-
return;
|
|
515
530
|
}
|
|
516
|
-
indexOfItem = !isOpen && this.hasValueState && indexOfItem === -1 ? 0 : indexOfItem;
|
|
517
531
|
this._handleItemNavigation(e, ++indexOfItem, true /* isForward */);
|
|
518
532
|
}
|
|
519
533
|
_handleArrowUp(e, indexOfItem) {
|
|
520
534
|
const isOpen = this.open;
|
|
521
|
-
if (indexOfItem === 0
|
|
535
|
+
if (indexOfItem === 0) {
|
|
522
536
|
this._clearFocus();
|
|
523
|
-
this.focused = true;
|
|
524
537
|
this._itemFocused = false;
|
|
525
|
-
return;
|
|
526
|
-
}
|
|
527
|
-
if (indexOfItem === 0 && this.hasValueStateText && isOpen && !this._isValueStateFocused) {
|
|
528
|
-
this._clearFocus();
|
|
529
|
-
this._itemFocused = false;
|
|
530
|
-
this._isValueStateFocused = true;
|
|
531
|
-
this._announceValueStateText();
|
|
532
|
-
this._filteredItems[0].selected = false;
|
|
533
|
-
this.value = this._userTypedValue;
|
|
534
|
-
return;
|
|
535
|
-
}
|
|
536
|
-
if (this._isValueStateFocused) {
|
|
537
538
|
this.focused = true;
|
|
538
|
-
this.
|
|
539
|
-
|
|
539
|
+
if (this.hasValueStateText && isOpen) {
|
|
540
|
+
this._filteredItems[0].selected = false;
|
|
541
|
+
this.value = this._userTypedValue;
|
|
542
|
+
}
|
|
540
543
|
return;
|
|
541
544
|
}
|
|
542
|
-
indexOfItem = !isOpen && this.hasValueState && indexOfItem === -1 ? 0 : indexOfItem;
|
|
543
545
|
this._handleItemNavigation(e, --indexOfItem, false /* isForward */);
|
|
544
546
|
}
|
|
545
547
|
_handlePageUp(e, indexOfItem) {
|
|
@@ -547,13 +549,6 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
547
549
|
const isProposedIndexValid = indexOfItem - SKIP_ITEMS_SIZE > -1;
|
|
548
550
|
indexOfItem = isProposedIndexValid ? indexOfItem - SKIP_ITEMS_SIZE : 0;
|
|
549
551
|
const shouldMoveForward = isInstanceOfComboBoxItemGroup(allItems[indexOfItem]) && !this.open;
|
|
550
|
-
if (!isProposedIndexValid && this.hasValueStateText && this.open) {
|
|
551
|
-
this._clearFocus();
|
|
552
|
-
this._itemFocused = false;
|
|
553
|
-
this._isValueStateFocused = true;
|
|
554
|
-
this._announceValueStateText();
|
|
555
|
-
return;
|
|
556
|
-
}
|
|
557
552
|
this._handleItemNavigation(e, indexOfItem, shouldMoveForward);
|
|
558
553
|
}
|
|
559
554
|
_handlePageDown(e, indexOfItem) {
|
|
@@ -566,13 +561,6 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
566
561
|
}
|
|
567
562
|
_handleHome(e) {
|
|
568
563
|
const shouldMoveForward = isInstanceOfComboBoxItemGroup(this._filteredItems[0]) && !this.open;
|
|
569
|
-
if (this.hasValueStateText && this.open) {
|
|
570
|
-
this._clearFocus();
|
|
571
|
-
this._itemFocused = false;
|
|
572
|
-
this._isValueStateFocused = true;
|
|
573
|
-
this._announceValueStateText();
|
|
574
|
-
return;
|
|
575
|
-
}
|
|
576
564
|
this._handleItemNavigation(e, 0, shouldMoveForward);
|
|
577
565
|
}
|
|
578
566
|
_handleEnd(e) {
|
|
@@ -612,7 +600,6 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
612
600
|
if (isEscape(e)) {
|
|
613
601
|
this.focused = true;
|
|
614
602
|
this.value = !this.open ? this._lastValue : this.value;
|
|
615
|
-
this._isValueStateFocused = false;
|
|
616
603
|
}
|
|
617
604
|
if ((isTabNext(e) || isTabPrevious(e)) && this.open) {
|
|
618
605
|
this._closeRespPopover();
|
|
@@ -638,6 +625,55 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
638
625
|
this.focused = true;
|
|
639
626
|
}
|
|
640
627
|
}
|
|
628
|
+
if (isCtrlAltF8(e)) {
|
|
629
|
+
return this._handleCtrlALtF8();
|
|
630
|
+
}
|
|
631
|
+
}
|
|
632
|
+
_addLinksEventListeners() {
|
|
633
|
+
const links = this.linksInAriaValueStateHiddenText;
|
|
634
|
+
links.forEach((link, index) => {
|
|
635
|
+
this._linksListenersArray.push((e) => {
|
|
636
|
+
attachListeners(e, links, index, {
|
|
637
|
+
closeValueState: () => {
|
|
638
|
+
if (this.open) {
|
|
639
|
+
this._closeRespPopover();
|
|
640
|
+
}
|
|
641
|
+
if (this.valueStateOpen) {
|
|
642
|
+
this.valueStateOpen = false;
|
|
643
|
+
}
|
|
644
|
+
},
|
|
645
|
+
navigateToItem: () => {
|
|
646
|
+
this._handleLinkNavigation = false;
|
|
647
|
+
if (this.open) {
|
|
648
|
+
this.inner.focus();
|
|
649
|
+
this.handleNavKeyPress(e);
|
|
650
|
+
}
|
|
651
|
+
},
|
|
652
|
+
focusInput: () => {
|
|
653
|
+
this._handleLinkNavigation = false;
|
|
654
|
+
this.inner.focus();
|
|
655
|
+
},
|
|
656
|
+
isPopoverOpen: () => this.open,
|
|
657
|
+
});
|
|
658
|
+
});
|
|
659
|
+
link.addEventListener("keydown", this._linksListenersArray[index]);
|
|
660
|
+
});
|
|
661
|
+
}
|
|
662
|
+
_removeLinksEventListeners() {
|
|
663
|
+
const links = this.linksInAriaValueStateHiddenText;
|
|
664
|
+
links.forEach((link, index) => {
|
|
665
|
+
link.removeEventListener("keydown", this._linksListenersArray[index]);
|
|
666
|
+
});
|
|
667
|
+
this._linksListenersArray = [];
|
|
668
|
+
this._handleLinkNavigation = false;
|
|
669
|
+
}
|
|
670
|
+
_handleCtrlALtF8() {
|
|
671
|
+
const links = this.linksInAriaValueStateHiddenText;
|
|
672
|
+
if (links.length > 0) {
|
|
673
|
+
this._clearFocus();
|
|
674
|
+
links[0].focus();
|
|
675
|
+
}
|
|
676
|
+
this._handleLinkNavigation = true;
|
|
641
677
|
}
|
|
642
678
|
_handlePopoverKeydown(e) {
|
|
643
679
|
if (isTabNext(e)) {
|
|
@@ -666,7 +702,6 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
666
702
|
if (isPhone()) {
|
|
667
703
|
this._fireChangeEvent();
|
|
668
704
|
}
|
|
669
|
-
this._isValueStateFocused = false;
|
|
670
705
|
this._clearFocus();
|
|
671
706
|
this.open = false;
|
|
672
707
|
this.valueStateOpen = false;
|
|
@@ -919,6 +954,42 @@ let ComboBox = ComboBox_1 = class ComboBox extends UI5Element {
|
|
|
919
954
|
get _valueStateMessageIcon() {
|
|
920
955
|
return this.valueState !== ValueState.None ? ValueStateIconMapping[this.valueState] : "";
|
|
921
956
|
}
|
|
957
|
+
get linksInAriaValueStateHiddenText() {
|
|
958
|
+
const links = [];
|
|
959
|
+
if (this.valueStateMessage) {
|
|
960
|
+
this.valueStateMessage.forEach(element => {
|
|
961
|
+
if (element.children.length) {
|
|
962
|
+
element.querySelectorAll("ui5-link").forEach(link => {
|
|
963
|
+
links.push(link);
|
|
964
|
+
});
|
|
965
|
+
}
|
|
966
|
+
});
|
|
967
|
+
}
|
|
968
|
+
return links;
|
|
969
|
+
}
|
|
970
|
+
get valueStateLinksShortcutsTextAcc() {
|
|
971
|
+
const links = this.linksInAriaValueStateHiddenText;
|
|
972
|
+
if (!links.length) {
|
|
973
|
+
return "";
|
|
974
|
+
}
|
|
975
|
+
if (isMac()) {
|
|
976
|
+
return links.length === 1
|
|
977
|
+
? ComboBox_1.i18nBundle.getText(VALUE_STATE_LINK_MAC)
|
|
978
|
+
: ComboBox_1.i18nBundle.getText(VALUE_STATE_LINKS_MAC);
|
|
979
|
+
}
|
|
980
|
+
return links.length === 1
|
|
981
|
+
? ComboBox_1.i18nBundle.getText(VALUE_STATE_LINK)
|
|
982
|
+
: ComboBox_1.i18nBundle.getText(VALUE_STATE_LINKS);
|
|
983
|
+
}
|
|
984
|
+
get ariaDescribedByText() {
|
|
985
|
+
return `${this.valueStateTextId} ${this._valueStateLinksShortcutsTextAccId}`.trim();
|
|
986
|
+
}
|
|
987
|
+
get _valueStateLinksShortcutsTextAccId() {
|
|
988
|
+
return this.linksInAriaValueStateHiddenText.length > 0 ? `hiddenText-value-state-link-shortcut` : "";
|
|
989
|
+
}
|
|
990
|
+
get valueStateTextId() {
|
|
991
|
+
return this.hasValueState ? `value-state-description` : "";
|
|
992
|
+
}
|
|
922
993
|
get _isPhone() {
|
|
923
994
|
return isPhone();
|
|
924
995
|
}
|
|
@@ -1008,9 +1079,6 @@ __decorate([
|
|
|
1008
1079
|
__decorate([
|
|
1009
1080
|
property({ type: Boolean })
|
|
1010
1081
|
], ComboBox.prototype, "focused", void 0);
|
|
1011
|
-
__decorate([
|
|
1012
|
-
property({ type: Boolean })
|
|
1013
|
-
], ComboBox.prototype, "_isValueStateFocused", void 0);
|
|
1014
1082
|
__decorate([
|
|
1015
1083
|
property()
|
|
1016
1084
|
], ComboBox.prototype, "accessibleName", void 0);
|
|
@@ -1035,6 +1103,12 @@ __decorate([
|
|
|
1035
1103
|
__decorate([
|
|
1036
1104
|
property({ type: Boolean })
|
|
1037
1105
|
], ComboBox.prototype, "open", void 0);
|
|
1106
|
+
__decorate([
|
|
1107
|
+
property({ type: Boolean })
|
|
1108
|
+
], ComboBox.prototype, "_handleLinkNavigation", void 0);
|
|
1109
|
+
__decorate([
|
|
1110
|
+
property({ type: Array })
|
|
1111
|
+
], ComboBox.prototype, "_linksListenersArray", void 0);
|
|
1038
1112
|
__decorate([
|
|
1039
1113
|
slot({
|
|
1040
1114
|
type: HTMLElement,
|