@ui5/webcomponents 2.11.0-rc.2 → 2.11.0-rc.4
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 +45 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/Assets-node.d.ts +16 -0
- package/dist/Assets-node.js +19 -0
- package/dist/Assets-node.js.map +1 -0
- package/dist/Avatar.d.ts +4 -0
- package/dist/Avatar.js +9 -4
- package/dist/Avatar.js.map +1 -1
- package/dist/Breadcrumbs.js +2 -2
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Calendar.d.ts +31 -8
- package/dist/Calendar.js +100 -26
- package/dist/Calendar.js.map +1 -1
- package/dist/CalendarHeaderTemplate.js +1 -1
- package/dist/CalendarHeaderTemplate.js.map +1 -1
- package/dist/CalendarTemplate.js +3 -1
- package/dist/CalendarTemplate.js.map +1 -1
- package/dist/CheckBoxTemplate.js +1 -1
- package/dist/CheckBoxTemplate.js.map +1 -1
- package/dist/ComboBox.d.ts +1 -0
- package/dist/ComboBox.js +4 -1
- package/dist/ComboBox.js.map +1 -1
- package/dist/ComboBoxPopoverTemplate.js +1 -1
- package/dist/ComboBoxPopoverTemplate.js.map +1 -1
- package/dist/DynamicDateRange.d.ts +133 -0
- package/dist/DynamicDateRange.js +291 -0
- package/dist/DynamicDateRange.js.map +1 -0
- package/dist/DynamicDateRangeInputTemplate.d.ts +2 -0
- package/dist/DynamicDateRangeInputTemplate.js +13 -0
- package/dist/DynamicDateRangeInputTemplate.js.map +1 -0
- package/dist/DynamicDateRangePopoverTemplate.d.ts +2 -0
- package/dist/DynamicDateRangePopoverTemplate.js +18 -0
- package/dist/DynamicDateRangePopoverTemplate.js.map +1 -0
- package/dist/DynamicDateRangeTemplate.d.ts +2 -0
- package/dist/DynamicDateRangeTemplate.js +9 -0
- package/dist/DynamicDateRangeTemplate.js.map +1 -0
- package/dist/Icon.js +2 -2
- package/dist/Icon.js.map +1 -1
- package/dist/Input.d.ts +1 -0
- package/dist/Input.js +4 -1
- package/dist/Input.js.map +1 -1
- package/dist/Tab.d.ts +2 -1
- package/dist/Tab.js +2 -1
- package/dist/Tab.js.map +1 -1
- package/dist/TabContainer.js +2 -2
- package/dist/TabContainer.js.map +1 -1
- package/dist/Table.d.ts +0 -6
- package/dist/Table.js +3 -6
- package/dist/Table.js.map +1 -1
- package/dist/TableCell.d.ts +0 -1
- package/dist/TableCell.js +0 -1
- package/dist/TableCell.js.map +1 -1
- package/dist/TableGrowing.d.ts +0 -1
- package/dist/TableGrowing.js +0 -1
- package/dist/TableGrowing.js.map +1 -1
- package/dist/TableHeaderCell.d.ts +0 -1
- package/dist/TableHeaderCell.js +0 -1
- package/dist/TableHeaderCell.js.map +1 -1
- package/dist/TableHeaderCellActionAI.d.ts +0 -1
- package/dist/TableHeaderCellActionAI.js +0 -1
- package/dist/TableHeaderCellActionAI.js.map +1 -1
- package/dist/TableHeaderRow.d.ts +0 -1
- package/dist/TableHeaderRow.js +0 -1
- package/dist/TableHeaderRow.js.map +1 -1
- package/dist/TableRow.d.ts +1 -2
- package/dist/TableRow.js +9 -5
- package/dist/TableRow.js.map +1 -1
- package/dist/TableRowAction.d.ts +0 -1
- package/dist/TableRowAction.js +0 -1
- package/dist/TableRowAction.js.map +1 -1
- package/dist/TableRowActionNavigation.d.ts +0 -1
- package/dist/TableRowActionNavigation.js +0 -1
- package/dist/TableRowActionNavigation.js.map +1 -1
- package/dist/TableSelection.d.ts +1 -1
- package/dist/TableSelection.js +1 -1
- package/dist/TableSelection.js.map +1 -1
- package/dist/TableSelectionBase.d.ts +9 -2
- package/dist/TableSelectionBase.js +14 -3
- package/dist/TableSelectionBase.js.map +1 -1
- package/dist/TableSelectionMulti.d.ts +0 -1
- package/dist/TableSelectionMulti.js +0 -5
- package/dist/TableSelectionMulti.js.map +1 -1
- package/dist/Tokenizer.d.ts +2 -0
- package/dist/Tokenizer.js +7 -1
- package/dist/Tokenizer.js.map +1 -1
- package/dist/TokenizerPopoverTemplate.js +1 -1
- package/dist/TokenizerPopoverTemplate.js.map +1 -1
- package/dist/Toolbar.d.ts +3 -22
- package/dist/Toolbar.js +12 -45
- package/dist/Toolbar.js.map +1 -1
- package/dist/ToolbarButton.d.ts +10 -11
- package/dist/ToolbarButton.js +14 -23
- package/dist/ToolbarButton.js.map +1 -1
- package/dist/ToolbarButtonTemplate.js +2 -3
- package/dist/ToolbarButtonTemplate.js.map +1 -1
- package/dist/ToolbarItem.d.ts +13 -17
- package/dist/ToolbarItem.js +18 -22
- package/dist/ToolbarItem.js.map +1 -1
- package/dist/ToolbarSelect.d.ts +0 -4
- package/dist/ToolbarSelect.js +5 -9
- package/dist/ToolbarSelect.js.map +1 -1
- package/dist/ToolbarSelectTemplate.js +1 -1
- package/dist/ToolbarSelectTemplate.js.map +1 -1
- package/dist/ToolbarSeparator.d.ts +0 -4
- package/dist/ToolbarSeparator.js +6 -9
- package/dist/ToolbarSeparator.js.map +1 -1
- package/dist/ToolbarSpacer.d.ts +0 -3
- package/dist/ToolbarSpacer.js +2 -9
- package/dist/ToolbarSpacer.js.map +1 -1
- package/dist/ToolbarTemplate.js +15 -3
- package/dist/ToolbarTemplate.js.map +1 -1
- package/dist/Tree.js +20 -2
- package/dist/Tree.js.map +1 -1
- package/dist/YearPicker.d.ts +2 -3
- package/dist/YearPicker.js +7 -33
- package/dist/YearPicker.js.map +1 -1
- package/dist/YearRangePicker.d.ts +144 -0
- package/dist/YearRangePicker.js +418 -0
- package/dist/YearRangePicker.js.map +1 -0
- package/dist/YearRangePickerTemplate.d.ts +2 -0
- package/dist/YearRangePickerTemplate.js +6 -0
- package/dist/YearRangePickerTemplate.js.map +1 -0
- package/dist/bundle.esm.js +6 -0
- package/dist/bundle.esm.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 -0
- package/dist/css/themes/DynamicDateRangePopover.css +1 -0
- 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/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/ToolbarPopover.css +1 -1
- package/dist/css/themes/ToolbarSelect.css +1 -1
- package/dist/css/themes/ToolbarSeparator.css +1 -0
- package/dist/css/themes/TreeItem.css +1 -1
- package/dist/css/themes/ValueStateMessage.css +1 -1
- package/dist/css/themes/YearPicker.css +1 -1
- package/dist/css/themes/YearRangePicker.css +1 -0
- 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 +523 -17
- package/dist/custom-elements.json +414 -8
- package/dist/dynamic-date-range-options/DateRange.d.ts +23 -0
- package/dist/dynamic-date-range-options/DateRange.js +71 -0
- package/dist/dynamic-date-range-options/DateRange.js.map +1 -0
- package/dist/dynamic-date-range-options/DateRangeTemplate.d.ts +2 -0
- package/dist/dynamic-date-range-options/DateRangeTemplate.js +11 -0
- package/dist/dynamic-date-range-options/DateRangeTemplate.js.map +1 -0
- package/dist/dynamic-date-range-options/SingleDate.d.ts +23 -0
- package/dist/dynamic-date-range-options/SingleDate.js +67 -0
- package/dist/dynamic-date-range-options/SingleDate.js.map +1 -0
- package/dist/dynamic-date-range-options/SingleDateTemplate.d.ts +2 -0
- package/dist/dynamic-date-range-options/SingleDateTemplate.js +7 -0
- package/dist/dynamic-date-range-options/SingleDateTemplate.js.map +1 -0
- package/dist/dynamic-date-range-options/Today.d.ts +17 -0
- package/dist/dynamic-date-range-options/Today.js +37 -0
- package/dist/dynamic-date-range-options/Today.js.map +1 -0
- package/dist/dynamic-date-range-options/Tomorrow.d.ts +17 -0
- package/dist/dynamic-date-range-options/Tomorrow.js +37 -0
- package/dist/dynamic-date-range-options/Tomorrow.js.map +1 -0
- package/dist/dynamic-date-range-options/Yesterday.d.ts +17 -0
- package/dist/dynamic-date-range-options/Yesterday.js +37 -0
- package/dist/dynamic-date-range-options/Yesterday.js.map +1 -0
- package/dist/dynamic-date-range-options/toDates.d.ts +7 -0
- package/dist/dynamic-date-range-options/toDates.js +41 -0
- package/dist/dynamic-date-range-options/toDates.js.map +1 -0
- package/dist/features/InputSuggestionsTemplate.js +1 -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 +14 -1
- package/dist/generated/i18n/i18n-defaults.js +14 -1
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/json-imports/Themes-node.d.ts +1 -0
- package/dist/generated/json-imports/Themes-node.js +25 -0
- package/dist/generated/json-imports/Themes-node.js.map +1 -0
- package/dist/generated/json-imports/i18n-node.d.ts +1 -0
- package/dist/generated/json-imports/i18n-node.js +120 -0
- package/dist/generated/json-imports/i18n-node.js.map +1 -0
- 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 +2 -0
- package/dist/generated/themes/DynamicDateRange.css.js +8 -0
- package/dist/generated/themes/DynamicDateRange.css.js.map +1 -0
- package/dist/generated/themes/DynamicDateRangePopover.css.d.ts +2 -0
- package/dist/generated/themes/DynamicDateRangePopover.css.js +8 -0
- package/dist/generated/themes/DynamicDateRangePopover.css.js.map +1 -0
- 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/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/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/ToolbarSelect.css.d.ts +1 -1
- package/dist/generated/themes/ToolbarSelect.css.js +1 -1
- package/dist/generated/themes/ToolbarSelect.css.js.map +1 -1
- package/dist/generated/themes/ToolbarSeparator.css.d.ts +2 -0
- package/dist/generated/themes/ToolbarSeparator.css.js +8 -0
- package/dist/generated/themes/ToolbarSeparator.css.js.map +1 -0
- 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/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 +2 -0
- package/dist/generated/themes/YearRangePicker.css.js +8 -0
- package/dist/generated/themes/YearRangePicker.css.js.map +1 -0
- 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/PopoverRegistry.js +14 -2
- package/dist/popup-utils/PopoverRegistry.js.map +1 -1
- package/dist/types/TableSelectionBehavior.d.ts +22 -0
- package/dist/types/TableSelectionBehavior.js +24 -0
- package/dist/types/TableSelectionBehavior.js.map +1 -0
- package/dist/vscode.html-custom-data.json +42 -5
- package/dist/web-types.json +143 -13
- package/package.json +9 -9
- package/src/CalendarHeaderTemplate.tsx +6 -3
- package/src/CalendarTemplate.tsx +21 -0
- package/src/CheckBoxTemplate.tsx +1 -0
- package/src/ComboBoxPopoverTemplate.tsx +1 -1
- package/src/DynamicDateRangeInputTemplate.tsx +38 -0
- package/src/DynamicDateRangePopoverTemplate.tsx +75 -0
- package/src/DynamicDateRangeTemplate.tsx +11 -0
- package/src/TokenizerPopoverTemplate.tsx +2 -2
- package/src/ToolbarButtonTemplate.tsx +2 -3
- package/src/ToolbarSelectTemplate.tsx +1 -1
- package/src/ToolbarTemplate.tsx +43 -6
- package/src/YearRangePickerTemplate.tsx +42 -0
- package/src/dynamic-date-range-options/DateRangeTemplate.tsx +22 -0
- package/src/dynamic-date-range-options/SingleDateTemplate.tsx +13 -0
- package/src/features/InputSuggestionsTemplate.tsx +1 -1
- package/src/i18n/messagebundle.properties +40 -1
- package/src/i18n/messagebundle_ar.properties +6 -0
- package/src/i18n/messagebundle_bg.properties +6 -0
- package/src/i18n/messagebundle_ca.properties +6 -0
- package/src/i18n/messagebundle_cnr.properties +6 -0
- package/src/i18n/messagebundle_cs.properties +6 -0
- package/src/i18n/messagebundle_cy.properties +6 -0
- package/src/i18n/messagebundle_da.properties +6 -0
- package/src/i18n/messagebundle_de.properties +7 -1
- package/src/i18n/messagebundle_el.properties +6 -0
- package/src/i18n/messagebundle_en.properties +4 -217
- package/src/i18n/messagebundle_en_GB.properties +6 -0
- package/src/i18n/messagebundle_en_US_sappsd.properties +6 -0
- package/src/i18n/messagebundle_en_US_saprigi.properties +4 -0
- package/src/i18n/messagebundle_en_US_saptrc.properties +6 -0
- package/src/i18n/messagebundle_es.properties +6 -0
- package/src/i18n/messagebundle_es_MX.properties +6 -0
- package/src/i18n/messagebundle_et.properties +6 -0
- package/src/i18n/messagebundle_fi.properties +6 -0
- package/src/i18n/messagebundle_fr.properties +6 -0
- package/src/i18n/messagebundle_fr_CA.properties +6 -0
- package/src/i18n/messagebundle_hi.properties +6 -0
- package/src/i18n/messagebundle_hr.properties +6 -0
- package/src/i18n/messagebundle_hu.properties +6 -0
- package/src/i18n/messagebundle_id.properties +6 -0
- package/src/i18n/messagebundle_it.properties +10 -4
- package/src/i18n/messagebundle_iw.properties +6 -0
- package/src/i18n/messagebundle_ja.properties +6 -0
- package/src/i18n/messagebundle_kk.properties +6 -0
- package/src/i18n/messagebundle_ko.properties +6 -0
- package/src/i18n/messagebundle_lt.properties +6 -0
- package/src/i18n/messagebundle_lv.properties +6 -0
- package/src/i18n/messagebundle_mk.properties +6 -0
- package/src/i18n/messagebundle_ms.properties +6 -0
- package/src/i18n/messagebundle_nl.properties +6 -0
- package/src/i18n/messagebundle_no.properties +6 -0
- package/src/i18n/messagebundle_pl.properties +6 -0
- package/src/i18n/messagebundle_pt.properties +6 -0
- package/src/i18n/messagebundle_pt_PT.properties +6 -0
- package/src/i18n/messagebundle_ro.properties +6 -0
- package/src/i18n/messagebundle_ru.properties +6 -0
- package/src/i18n/messagebundle_sh.properties +6 -0
- package/src/i18n/messagebundle_sk.properties +6 -0
- package/src/i18n/messagebundle_sl.properties +6 -0
- package/src/i18n/messagebundle_sr.properties +6 -0
- package/src/i18n/messagebundle_sv.properties +6 -0
- package/src/i18n/messagebundle_th.properties +6 -0
- package/src/i18n/messagebundle_tr.properties +6 -0
- package/src/i18n/messagebundle_uk.properties +7 -1
- package/src/i18n/messagebundle_vi.properties +6 -0
- package/src/i18n/messagebundle_zh_CN.properties +6 -0
- package/src/i18n/messagebundle_zh_TW.properties +6 -0
- package/src/themes/Avatar.css +1 -1
- package/src/themes/AvatarGroup.css +1 -0
- package/src/themes/CalendarHeader.css +0 -10
- package/src/themes/CheckBox.css +0 -9
- package/src/themes/DatePicker.css +0 -1
- package/src/themes/DynamicDateRange.css +7 -0
- package/src/themes/DynamicDateRangePopover.css +89 -0
- package/src/themes/Toolbar.css +0 -7
- package/src/themes/ToolbarPopover.css +5 -0
- package/src/themes/ToolbarSelect.css +3 -3
- package/src/themes/ToolbarSeparator.css +6 -0
- package/src/themes/YearRangePicker.css +118 -0
- package/src/themes/base/Avatar-parameters.css +1 -0
- package/src/themes/base/AvatarGroup-parameters.css +1 -0
- package/src/themes/base/DynamicDateRange-parameters.css +3 -0
- package/src/themes/base/rtl-parameters.css +1 -1
- package/src/themes/sap_horizon/parameters-bundle.css +1 -0
- package/cypress/specs/Avatar.cy.tsx +0 -55
- package/cypress/specs/AvatarGroup.cy.tsx +0 -66
- package/cypress/specs/Breadcrumbs.mobile.cy.tsx +0 -53
- package/cypress/specs/Button.cy.tsx +0 -434
- package/cypress/specs/Calendar.cy.tsx +0 -710
- package/cypress/specs/CalendarLegend.cy.tsx +0 -77
- package/cypress/specs/Card.cy.tsx +0 -338
- package/cypress/specs/Carousel.cy.tsx +0 -581
- package/cypress/specs/Carousel.mobile.cy.tsx +0 -67
- package/cypress/specs/ColorPalette.cy.tsx +0 -213
- package/cypress/specs/ColorPicker.cy.tsx +0 -332
- package/cypress/specs/ComboBox.cy.tsx +0 -198
- package/cypress/specs/DateControlsWithTimezone.cy.tsx +0 -75
- package/cypress/specs/DatePicker.cy.tsx +0 -1699
- package/cypress/specs/DateRangePicker.cy.tsx +0 -594
- package/cypress/specs/DateTimePicker.cy.tsx +0 -568
- package/cypress/specs/DayPicker.cy.tsx +0 -81
- package/cypress/specs/Dialog.cy.tsx +0 -133
- package/cypress/specs/ExpandableText.cy.tsx +0 -393
- package/cypress/specs/F6.cy.tsx +0 -977
- package/cypress/specs/Form.cy.tsx +0 -1022
- package/cypress/specs/FormSupport.cy.tsx +0 -975
- package/cypress/specs/Input.cy.tsx +0 -978
- package/cypress/specs/Label.cy.tsx +0 -144
- package/cypress/specs/Link.cy.tsx +0 -216
- package/cypress/specs/List.cy.tsx +0 -309
- package/cypress/specs/List.mobile.cy.tsx +0 -31
- package/cypress/specs/LitKeyFunction.cy.tsx +0 -58
- package/cypress/specs/Menu.cy.tsx +0 -617
- package/cypress/specs/MessageStrip.cy.tsx +0 -171
- package/cypress/specs/MultiComboBox.cy.tsx +0 -189
- package/cypress/specs/MultiInput.cy.tsx +0 -72
- package/cypress/specs/Popover.cy.tsx +0 -419
- package/cypress/specs/RTL.cy.tsx +0 -18
- package/cypress/specs/RadioButton.cy.tsx +0 -499
- package/cypress/specs/RangeSlider.cy.tsx +0 -52
- package/cypress/specs/RatingIndicator.cy.tsx +0 -279
- package/cypress/specs/ResponsivePopover.mobile.cy.tsx +0 -112
- package/cypress/specs/SegmentedButton.cy.tsx +0 -215
- package/cypress/specs/Select.cy.tsx +0 -241
- package/cypress/specs/Slider.cy.tsx +0 -87
- package/cypress/specs/StepInput.cy.tsx +0 -32
- package/cypress/specs/TabContainer.cy.tsx +0 -78
- package/cypress/specs/Table.cy.tsx +0 -1025
- package/cypress/specs/TableDragAndDrop.cy.tsx +0 -236
- package/cypress/specs/TableGrowing.cy.tsx +0 -336
- package/cypress/specs/TableLoading.cy.tsx +0 -48
- package/cypress/specs/TableNavigation.cy.tsx +0 -223
- package/cypress/specs/TableNavigationFixedHeader.cy.tsx +0 -199
- package/cypress/specs/TableRowActions.cy.tsx +0 -239
- package/cypress/specs/TableSelection.cy.tsx +0 -275
- package/cypress/specs/TableSelections.cy.tsx +0 -332
- package/cypress/specs/TableUtils.cy.tsx +0 -63
- package/cypress/specs/TableVirtualizer.cy.tsx +0 -243
- package/cypress/specs/Tag.cy.tsx +0 -120
- package/cypress/specs/Text.cy.tsx +0 -46
- package/cypress/specs/TextArea.cy.tsx +0 -735
- package/cypress/specs/Title.cy.tsx +0 -36
- package/cypress/specs/Toast.cy.tsx +0 -45
- package/cypress/specs/Tokenizer.cy.tsx +0 -209
- package/cypress/specs/Toolbar.cy.tsx +0 -194
- package/cypress/specs/Tree.cy.tsx +0 -72
- package/cypress/specs/base/AccessibilityTextsHelper.cy.tsx +0 -468
- package/cypress/specs/base/Events.cy.tsx +0 -301
- package/cypress/specs/base/IconCollection.cy.tsx +0 -58
- package/cypress/specs/base/IgnoreCustomElements.cy.tsx +0 -38
- package/cypress/specs/base/InvisibleMessage.cy.tsx +0 -31
- package/cypress/specs/base/Tooltips.cy.tsx +0 -64
- package/cypress/specs/base/css/redfish.custom.theme.css +0 -13
- package/cypress/support/commands/Calendar.commands.ts +0 -21
- package/cypress/support/commands/ColorPalette.commands.ts +0 -86
- package/cypress/support/commands/ColorPicker.commands.ts +0 -38
- package/cypress/support/commands/DatePicker.commands.ts +0 -218
- package/cypress/support/commands/DateTimePicker.commands.ts +0 -105
- package/cypress/support/commands/Dialog.commands.ts +0 -16
- package/cypress/support/commands/Menu.commands.ts +0 -52
- package/cypress/support/commands/Popover.commands.ts +0 -16
- package/cypress/support/commands/ResponsivePopover.commands.ts +0 -42
- package/cypress/support/commands/SegmentedButton.commands.ts +0 -32
- package/cypress/support/commands/utils/popup-open.ts +0 -35
- package/cypress/support/commands.ts +0 -113
- package/cypress/support/component-index.html +0 -12
- package/cypress/support/component.ts +0 -20
- package/cypress/tsconfig.json +0 -42
- package/dist/ToolbarPopoverButtonTemplate.d.ts +0 -2
- package/dist/ToolbarPopoverButtonTemplate.js +0 -6
- package/dist/ToolbarPopoverButtonTemplate.js.map +0 -1
- package/dist/ToolbarPopoverSelectTemplate.d.ts +0 -2
- package/dist/ToolbarPopoverSelectTemplate.js +0 -7
- package/dist/ToolbarPopoverSelectTemplate.js.map +0 -1
- package/dist/ToolbarPopoverSeparatorTemplate.d.ts +0 -2
- package/dist/ToolbarPopoverSeparatorTemplate.js +0 -5
- package/dist/ToolbarPopoverSeparatorTemplate.js.map +0 -1
- package/dist/ToolbarPopoverTemplate.d.ts +0 -2
- package/dist/ToolbarPopoverTemplate.js +0 -9
- package/dist/ToolbarPopoverTemplate.js.map +0 -1
- package/dist/ToolbarRegistry.d.ts +0 -5
- package/dist/ToolbarRegistry.js +0 -16
- package/dist/ToolbarRegistry.js.map +0 -1
- package/dist/ToolbarSpacerTemplate.d.ts +0 -2
- package/dist/ToolbarSpacerTemplate.js +0 -5
- package/dist/ToolbarSpacerTemplate.js.map +0 -1
- package/src/ToolbarPopoverButtonTemplate.tsx +0 -24
- package/src/ToolbarPopoverSelectTemplate.tsx +0 -29
- package/src/ToolbarPopoverSeparatorTemplate.tsx +0 -10
- package/src/ToolbarPopoverTemplate.tsx +0 -25
- package/src/ToolbarSpacerTemplate.tsx +0 -12
package/dist/ToolbarSeparator.js
CHANGED
|
@@ -4,11 +4,12 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
+
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
|
|
7
8
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
8
9
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
9
10
|
import ToolbarSeparatorTemplate from "./ToolbarSeparatorTemplate.js";
|
|
10
|
-
|
|
11
|
-
import
|
|
11
|
+
// Styles
|
|
12
|
+
import ToolbarSeparatorCss from "./generated/themes/ToolbarSeparator.css.js";
|
|
12
13
|
import ToolbarItem from "./ToolbarItem.js";
|
|
13
14
|
/**
|
|
14
15
|
* @class
|
|
@@ -27,12 +28,6 @@ let ToolbarSeparator = class ToolbarSeparator extends ToolbarItem {
|
|
|
27
28
|
super(...arguments);
|
|
28
29
|
this.visible = false;
|
|
29
30
|
}
|
|
30
|
-
static get toolbarTemplate() {
|
|
31
|
-
return ToolbarSeparatorTemplate;
|
|
32
|
-
}
|
|
33
|
-
static get toolbarPopoverTemplate() {
|
|
34
|
-
return ToolbarPopoverSeparatorTemplate;
|
|
35
|
-
}
|
|
36
31
|
get isSeparator() {
|
|
37
32
|
return true;
|
|
38
33
|
}
|
|
@@ -46,9 +41,11 @@ __decorate([
|
|
|
46
41
|
ToolbarSeparator = __decorate([
|
|
47
42
|
customElement({
|
|
48
43
|
tag: "ui5-toolbar-separator",
|
|
44
|
+
template: ToolbarSeparatorTemplate,
|
|
45
|
+
renderer: jsxRenderer,
|
|
46
|
+
styles: [ToolbarSeparatorCss],
|
|
49
47
|
})
|
|
50
48
|
], ToolbarSeparator);
|
|
51
|
-
registerToolbarItem(ToolbarSeparator);
|
|
52
49
|
ToolbarSeparator.define();
|
|
53
50
|
export default ToolbarSeparator;
|
|
54
51
|
//# sourceMappingURL=ToolbarSeparator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolbarSeparator.js","sourceRoot":"","sources":["../src/ToolbarSeparator.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,wBAAwB,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"ToolbarSeparator.js","sourceRoot":"","sources":["../src/ToolbarSeparator.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,wBAAwB,MAAM,+BAA+B,CAAC;AAErE,SAAS;AACT,OAAO,mBAAmB,MAAM,4CAA4C,CAAC;AAE7E,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C;;;;;;;;;;;GAWG;AAQH,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,WAAW;IAA1C;;QAEC,YAAO,GAAG,KAAK,CAAC;IASjB,CAAC;IAPA,IAAI,WAAW;QACd,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,KAAK,CAAC;IACd,CAAC;CACD,CAAA;AATA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;iDACZ;AAFX,gBAAgB;IAPrB,aAAa,CAAC;QACd,GAAG,EAAE,uBAAuB;QAC5B,QAAQ,EAAE,wBAAwB;QAClC,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,CAAC,mBAAmB,CAAC;KAC7B,CAAC;GAEI,gBAAgB,CAWrB;AAED,gBAAgB,CAAC,MAAM,EAAE,CAAC;AAE1B,eAAe,gBAAgB,CAAC","sourcesContent":["import jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport ToolbarSeparatorTemplate from \"./ToolbarSeparatorTemplate.js\";\n\n// Styles\nimport ToolbarSeparatorCss from \"./generated/themes/ToolbarSeparator.css.js\";\n\nimport ToolbarItem from \"./ToolbarItem.js\";\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-toolbar-separator` is an element, used for visual separation between two elements.\n * It takes no space in calculating toolbar items width.\n * @constructor\n * @extends ToolbarItem\n * @since 1.17.0\n * @abstract\n * @public\n */\n@customElement({\n\ttag: \"ui5-toolbar-separator\",\n\ttemplate: ToolbarSeparatorTemplate,\n\trenderer: jsxRenderer,\n\tstyles: [ToolbarSeparatorCss],\n})\n\nclass ToolbarSeparator extends ToolbarItem {\n\t@property({ type: Boolean })\n\tvisible = false;\n\n\tget isSeparator() {\n\t\treturn true;\n\t}\n\n\tget isInteractive() {\n\t\treturn false;\n\t}\n}\n\nToolbarSeparator.define();\n\nexport default ToolbarSeparator;\n"]}
|
package/dist/ToolbarSpacer.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import ToolbarSpacerTemplate from "./ToolbarSpacerTemplate.js";
|
|
2
1
|
import ToolbarItem from "./ToolbarItem.js";
|
|
3
2
|
/**
|
|
4
3
|
* @class
|
|
@@ -30,8 +29,6 @@ declare class ToolbarSpacer extends ToolbarItem {
|
|
|
30
29
|
};
|
|
31
30
|
get ignoreSpace(): boolean;
|
|
32
31
|
get hasFlexibleWidth(): boolean;
|
|
33
|
-
static get toolbarTemplate(): typeof ToolbarSpacerTemplate;
|
|
34
|
-
static get toolbarPopoverTemplate(): typeof ToolbarSpacerTemplate;
|
|
35
32
|
get isInteractive(): boolean;
|
|
36
33
|
}
|
|
37
34
|
export default ToolbarSpacer;
|
package/dist/ToolbarSpacer.js
CHANGED
|
@@ -6,9 +6,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
8
8
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
9
|
-
import
|
|
9
|
+
import ToolbarCss from "./generated/themes/Toolbar.css.js";
|
|
10
10
|
import ToolbarItem from "./ToolbarItem.js";
|
|
11
|
-
import { registerToolbarItem } from "./ToolbarRegistry.js";
|
|
12
11
|
/**
|
|
13
12
|
* @class
|
|
14
13
|
*
|
|
@@ -31,12 +30,6 @@ let ToolbarSpacer = class ToolbarSpacer extends ToolbarItem {
|
|
|
31
30
|
get hasFlexibleWidth() {
|
|
32
31
|
return this.width === "" || this.width === undefined || this.width === "auto";
|
|
33
32
|
}
|
|
34
|
-
static get toolbarTemplate() {
|
|
35
|
-
return ToolbarSpacerTemplate;
|
|
36
|
-
}
|
|
37
|
-
static get toolbarPopoverTemplate() {
|
|
38
|
-
return ToolbarSpacerTemplate;
|
|
39
|
-
}
|
|
40
33
|
get isInteractive() {
|
|
41
34
|
return false;
|
|
42
35
|
}
|
|
@@ -47,9 +40,9 @@ __decorate([
|
|
|
47
40
|
ToolbarSpacer = __decorate([
|
|
48
41
|
customElement({
|
|
49
42
|
tag: "ui5-toolbar-spacer",
|
|
43
|
+
styles: ToolbarCss,
|
|
50
44
|
})
|
|
51
45
|
], ToolbarSpacer);
|
|
52
|
-
registerToolbarItem(ToolbarSpacer);
|
|
53
46
|
ToolbarSpacer.define();
|
|
54
47
|
export default ToolbarSpacer;
|
|
55
48
|
//# sourceMappingURL=ToolbarSpacer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolbarSpacer.js","sourceRoot":"","sources":["../src/ToolbarSpacer.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,aAAa,MAAM,0DAA0D,CAAC;
|
|
1
|
+
{"version":3,"file":"ToolbarSpacer.js","sourceRoot":"","sources":["../src/ToolbarSpacer.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,aAAa,MAAM,0DAA0D,CAAC;AAErF,OAAO,UAAU,MAAM,mCAAmC,CAAC;AAE3D,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C;;;;;;;;;;;GAWG;AAMH,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,WAAW;IAWtC,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC9D,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,KAAK,KAAK,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC;IAC/E,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO,IAAI,CAAC,KAAK,KAAK,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC;IAC/E,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,KAAK,CAAC;IACd,CAAC;CACD,CAAA;AAjBA;IADC,QAAQ,EAAE;4CACI;AATV,aAAa;IALlB,aAAa,CAAC;QACd,GAAG,EAAE,oBAAoB;QACzB,MAAM,EAAE,UAAU;KAClB,CAAC;GAEI,aAAa,CA0BlB;AAED,aAAa,CAAC,MAAM,EAAE,CAAC;AAEvB,eAAe,aAAa,CAAC","sourcesContent":["import property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\n\nimport ToolbarCss from \"./generated/themes/Toolbar.css.js\";\n\nimport ToolbarItem from \"./ToolbarItem.js\";\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-toolbar-spacer` is an element, used for taking needed space for toolbar items to take 100% width.\n * It takes no space in calculating toolbar items width.\n * @constructor\n * @extends ToolbarItem\n * @abstract\n * @since 1.17.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-toolbar-spacer\",\n\tstyles: ToolbarCss,\n})\n\nclass ToolbarSpacer extends ToolbarItem {\n\t/**\n\t * Defines the width of the spacer.\n\t *\n\t * **Note:** all CSS sizes are supported - 'percentage', 'px', 'rem', 'auto', etc.\n\t * @public\n\t * @default undefined\n\t */\n\t@property()\n\twidth?: string;\n\n\tget styles() {\n\t\treturn this.width ? { width: this.width } : { flex: \"auto\" };\n\t}\n\n\tget ignoreSpace() {\n\t\treturn this.width === \"\" || this.width === undefined || this.width === \"auto\";\n\t}\n\n\tget hasFlexibleWidth() {\n\t\treturn this.width === \"\" || this.width === undefined || this.width === \"auto\";\n\t}\n\n\tget isInteractive() {\n\t\treturn false;\n\t}\n}\n\nToolbarSpacer.define();\n\nexport default ToolbarSpacer;\n"]}
|
package/dist/ToolbarTemplate.js
CHANGED
|
@@ -1,15 +1,27 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "@ui5/webcomponents-base/jsx-runtime";
|
|
2
2
|
import Button from "./Button.js";
|
|
3
|
-
import
|
|
3
|
+
import Popover from "./Popover.js";
|
|
4
4
|
import overflowIcon from "@ui5/webcomponents-icons/dist/overflow.js";
|
|
5
5
|
export default function ToolbarTemplate() {
|
|
6
6
|
return (_jsxs(_Fragment, { children: [_jsxs("div", { class: {
|
|
7
7
|
"ui5-tb-items": true,
|
|
8
8
|
"ui5-tb-items-full-width": this.hasFlexibleSpacers,
|
|
9
|
-
}, role: this.accInfo.root.role, "aria-label": this.accInfo.root.accessibleName, children: [this.standardItems.map(item =>
|
|
9
|
+
}, role: this.accInfo.root.role, "aria-label": this.accInfo.root.accessibleName, children: [this.standardItems.map(item => {
|
|
10
|
+
if ("styles" in item) {
|
|
11
|
+
return (_jsx("div", { class: "ui5-tb-item", id: item._individualSlot, style: item.styles, children: _jsx("slot", { name: item._individualSlot }) }));
|
|
12
|
+
}
|
|
13
|
+
return (_jsx("div", { class: "ui5-tb-item", id: item._individualSlot, children: _jsx("slot", { name: item._individualSlot }) }));
|
|
14
|
+
}), _jsx(Button, { "aria-hidden": this.hideOverflowButton, icon: overflowIcon, design: "Transparent", onClick: this.toggleOverflow, class: {
|
|
10
15
|
"ui5-tb-item": true,
|
|
11
16
|
"ui5-tb-overflow-btn": true,
|
|
12
17
|
"ui5-tb-overflow-btn-hidden": this.hideOverflowButton,
|
|
13
|
-
}, tooltip: this.accInfo.overflowButton.tooltip, accessibleName: this.accInfo.overflowButton.accessibleName, accessibilityAttributes: this.accInfo.overflowButton.accessibilityAttributes })] }),
|
|
18
|
+
}, tooltip: this.accInfo.overflowButton.tooltip, accessibleName: this.accInfo.overflowButton.accessibleName, accessibilityAttributes: this.accInfo.overflowButton.accessibilityAttributes })] }), _jsx(Popover, { class: "ui5-overflow-popover", placement: "Bottom", horizontalAlign: "End", onClose: this.onOverflowPopoverClosed, onOpen: this.onOverflowPopoverOpened, accessibleName: this.accInfo.popover.accessibleName, hideArrow: true, children: _jsx("div", { class: {
|
|
19
|
+
"ui5-overflow-list": true
|
|
20
|
+
}, children: this.overflowItems.map(item => {
|
|
21
|
+
if (item.isSeparator) {
|
|
22
|
+
return (_jsx("div", { class: "ui5-tb-popover-item ui5-tb-separator ui5-tb-separator-in-overflow", id: item._individualSlot, children: _jsx("slot", { name: item._individualSlot }) }));
|
|
23
|
+
}
|
|
24
|
+
return (_jsx("div", { class: "ui5-tb-popover-item", id: item._individualSlot, children: _jsx("slot", { name: item._individualSlot }) }));
|
|
25
|
+
}) }) })] }));
|
|
14
26
|
}
|
|
15
27
|
//# sourceMappingURL=ToolbarTemplate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolbarTemplate.js","sourceRoot":"","sources":["../src/ToolbarTemplate.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,OAAO,
|
|
1
|
+
{"version":3,"file":"ToolbarTemplate.js","sourceRoot":"","sources":["../src/ToolbarTemplate.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,YAAY,MAAM,2CAA2C,CAAC;AAErE,MAAM,CAAC,OAAO,UAAU,eAAe;IACtC,OAAO,CAAC,8BACP,eACC,KAAK,EAAE;oBACN,cAAc,EAAE,IAAI;oBACpB,yBAAyB,EAAE,IAAI,CAAC,kBAAkB;iBAClD,EACD,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,gBAChB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,aAE3C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;wBAC9B,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;4BACtB,OAAO,CACN,cAAK,KAAK,EAAC,aAAa,EAAC,EAAE,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,IAAI,CAAC,MAAgB,YAC9E,eAAM,IAAI,EAAE,IAAI,CAAC,eAAe,GAAS,GACpC,CACN,CAAC;wBACH,CAAC;wBACD,OAAO,CACN,cAAK,KAAK,EAAC,aAAa,EAAC,EAAE,EAAE,IAAI,CAAC,eAAe,YAChD,eAAM,IAAI,EAAE,IAAI,CAAC,eAAe,GAAS,GACpC,CACN,CAAC;oBACH,CAAC,CAAC,EACF,KAAC,MAAM,mBACO,IAAI,CAAC,kBAAkB,EACpC,IAAI,EAAE,YAAY,EAClB,MAAM,EAAC,aAAa,EACpB,OAAO,EAAE,IAAI,CAAC,cAAc,EAC5B,KAAK,EAAE;4BACN,aAAa,EAAE,IAAI;4BACnB,qBAAqB,EAAE,IAAI;4BAC3B,4BAA4B,EAAE,IAAI,CAAC,kBAAkB;yBACrD,EACD,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EAC5C,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,cAAc,EAC1D,uBAAuB,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,uBAAuB,GAC3E,IACG,EAEN,KAAC,OAAO,IACP,KAAK,EAAC,sBAAsB,EAC5B,SAAS,EAAC,QAAQ,EAClB,eAAe,EAAC,KAAK,EACrB,OAAO,EAAE,IAAI,CAAC,uBAAuB,EACrC,MAAM,EAAE,IAAI,CAAC,uBAAuB,EACpC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,EACnD,SAAS,EAAE,IAAI,YAEf,cAAK,KAAK,EAAE;wBACX,mBAAmB,EAAE,IAAI;qBACzB,YACC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;wBAC9B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;4BACtB,OAAO,CACN,cAAK,KAAK,EAAC,mEAAmE,EAAC,EAAE,EAAE,IAAI,CAAC,eAAe,YACtG,eAAM,IAAI,EAAE,IAAI,CAAC,eAAe,GAAS,GACpC,CACN,CAAC;wBACH,CAAC;wBACD,OAAO,CACN,cAAK,KAAK,EAAC,qBAAqB,EAAC,EAAE,EAAE,IAAI,CAAC,eAAe,YACxD,eAAM,IAAI,EAAE,IAAI,CAAC,eAAe,GAAS,GACpC,CACN,CAAC;oBACH,CAAC,CAAC,GACG,GACG,IACR,CAAC,CAAC;AACN,CAAC","sourcesContent":["import Button from \"./Button.js\";\nimport type Toolbar from \"./Toolbar.js\";\nimport Popover from \"./Popover.js\";\nimport overflowIcon from \"@ui5/webcomponents-icons/dist/overflow.js\";\n\nexport default function ToolbarTemplate(this: Toolbar) {\n\treturn (<>\n\t\t<div\n\t\t\tclass={{\n\t\t\t\t\"ui5-tb-items\": true,\n\t\t\t\t\"ui5-tb-items-full-width\": this.hasFlexibleSpacers,\n\t\t\t}}\n\t\t\trole={this.accInfo.root.role}\n\t\t\taria-label={this.accInfo.root.accessibleName}\n\t\t>\n\t\t\t{this.standardItems.map(item => {\n\t\t\t\tif (\"styles\" in item) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<div class=\"ui5-tb-item\" id={item._individualSlot} style={item.styles as string}>\n\t\t\t\t\t\t\t<slot name={item._individualSlot}></slot>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<div class=\"ui5-tb-item\" id={item._individualSlot}>\n\t\t\t\t\t\t<slot name={item._individualSlot}></slot>\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t})}\n\t\t\t<Button\n\t\t\t\taria-hidden={this.hideOverflowButton}\n\t\t\t\ticon={overflowIcon}\n\t\t\t\tdesign=\"Transparent\"\n\t\t\t\tonClick={this.toggleOverflow}\n\t\t\t\tclass={{\n\t\t\t\t\t\"ui5-tb-item\": true,\n\t\t\t\t\t\"ui5-tb-overflow-btn\": true,\n\t\t\t\t\t\"ui5-tb-overflow-btn-hidden\": this.hideOverflowButton,\n\t\t\t\t}}\n\t\t\t\ttooltip={this.accInfo.overflowButton.tooltip}\n\t\t\t\taccessibleName={this.accInfo.overflowButton.accessibleName}\n\t\t\t\taccessibilityAttributes={this.accInfo.overflowButton.accessibilityAttributes}\n\t\t\t/>\n\t\t</div>\n\n\t\t<Popover\n\t\t\tclass=\"ui5-overflow-popover\"\n\t\t\tplacement=\"Bottom\"\n\t\t\thorizontalAlign=\"End\"\n\t\t\tonClose={this.onOverflowPopoverClosed}\n\t\t\tonOpen={this.onOverflowPopoverOpened}\n\t\t\taccessibleName={this.accInfo.popover.accessibleName}\n\t\t\thideArrow={true}\n\t\t>\n\t\t\t<div class={{\n\t\t\t\t\"ui5-overflow-list\": true\n\t\t\t}}>\n\t\t\t\t{this.overflowItems.map(item => {\n\t\t\t\t\tif (item.isSeparator) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<div class=\"ui5-tb-popover-item ui5-tb-separator ui5-tb-separator-in-overflow\" id={item._individualSlot}>\n\t\t\t\t\t\t\t\t<slot name={item._individualSlot}></slot>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<div class=\"ui5-tb-popover-item\" id={item._individualSlot}>\n\t\t\t\t\t\t\t<slot name={item._individualSlot}></slot>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t</Popover>\n\t</>);\n}\n"]}
|
package/dist/Tree.js
CHANGED
|
@@ -372,10 +372,28 @@ Tree = __decorate([
|
|
|
372
372
|
,
|
|
373
373
|
event("selection-change", {
|
|
374
374
|
bubbles: true,
|
|
375
|
-
})
|
|
375
|
+
})
|
|
376
|
+
/**
|
|
377
|
+
* Fired when a movable tree item is moved over a potential drop target during a drag-and-drop operation.
|
|
378
|
+
*
|
|
379
|
+
* If the new position is valid, prevent the default action of the event using `preventDefault()`.
|
|
380
|
+
* @param {object} source Contains information about the moved element under the `element` property.
|
|
381
|
+
* @param {object} destination Contains information about the destination of the moved element. Has `element` and `placement` properties.
|
|
382
|
+
* @public
|
|
383
|
+
*/
|
|
384
|
+
,
|
|
376
385
|
event("move", {
|
|
377
386
|
bubbles: true,
|
|
378
|
-
})
|
|
387
|
+
})
|
|
388
|
+
/**
|
|
389
|
+
* Fired when a movable tree item is dropped onto a drop target.
|
|
390
|
+
*
|
|
391
|
+
* **Note:** The `move` event is fired only if there was a preceding `move-over` event with prevented default action.
|
|
392
|
+
* @param {object} source Contains information about the moved element under the `element` property.
|
|
393
|
+
* @param {object} destination Contains information about the destination of the moved element. Has `element` and `placement` properties.
|
|
394
|
+
* @public
|
|
395
|
+
*/
|
|
396
|
+
,
|
|
379
397
|
event("move-over", {
|
|
380
398
|
bubbles: true,
|
|
381
399
|
cancelable: true,
|
package/dist/Tree.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tree.js","sourceRoot":"","sources":["../src/Tree.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport DragRegistry from \"@ui5/webcomponents-base/dist/util/dragAndDrop/DragRegistry.js\";\nimport handleDragOver from \"@ui5/webcomponents-base/dist/util/dragAndDrop/handleDragOver.js\";\nimport handleDrop from \"@ui5/webcomponents-base/dist/util/dragAndDrop/handleDrop.js\";\nimport { findClosestPosition } from \"@ui5/webcomponents-base/dist/util/dragAndDrop/findClosestPosition.js\";\nimport Orientation from \"@ui5/webcomponents-base/dist/types/Orientation.js\";\nimport MovePlacement from \"@ui5/webcomponents-base/dist/types/MovePlacement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport type DropIndicator from \"./DropIndicator.js\";\nimport \"./TreeItem.js\";\nimport type TreeItemBase from \"./TreeItemBase.js\";\nimport \"./TreeItemCustom.js\";\nimport type TreeList from \"./TreeList.js\";\nimport type ListSelectionMode from \"./types/ListSelectionMode.js\";\nimport ListAccessibleRole from \"./types/ListAccessibleRole.js\";\nimport type {\n\tTreeItemBaseToggleEventDetail,\n\tTreeItemBaseStepInEventDetail,\n\tTreeItemBaseStepOutEventDetail,\n} from \"./TreeItemBase.js\";\nimport type {\n\tListItemClickEventDetail,\n\tListItemDeleteEventDetail,\n\tListItemFocusEventDetail,\n\tListSelectionChangeEventDetail,\n} from \"./List.js\";\n\n// Template\nimport TreeTemplate from \"./TreeTemplate.js\";\n\n// Styles\nimport TreeCss from \"./generated/themes/Tree.css.js\";\n\ntype TreeMoveEventDetail = {\n\tsource: {\n\t\telement: HTMLElement,\n\t},\n\tdestination: {\n\t\telement: HTMLElement,\n\t\tplacement: `${MovePlacement}`,\n\t}\n}\n\ntype TreeItemEventDetail = {\n\titem: TreeItemBase,\n}\ntype TreeItemToggleEventDetail = TreeItemEventDetail;\ntype TreeItemMouseoverEventDetail = TreeItemEventDetail;\ntype TreeItemMouseoutEventDetail = TreeItemEventDetail;\ntype TreeItemClickEventDetail = TreeItemEventDetail;\ntype TreeItemDeleteEventDetail = TreeItemEventDetail;\ntype TreeItemFocusEventDetail = TreeItemEventDetail;\ntype TreeSelectionChangeEventDetail = {\n\tselectedItems: Array<TreeItemBase>;\n\tpreviouslySelectedItems: Array<TreeItemBase>;\n\ttargetItem: TreeItemBase;\n}\ntype WalkCallback = (item: TreeItemBase, level: number, index: number) => void;\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-tree` component provides a tree structure for displaying data in a hierarchy.\n *\n * ### Usage\n *\n * #### When to use:\n *\n * - To display hierarchically structured items.\n * - To select one or more items out of a set of hierarchically structured items.\n *\n * #### When not to use:\n *\n * - To display items not hierarchically structured. In this case, use the List component.\n * - To select one item from a very small number of non-hierarchical items. Select or ComboBox might be more appropriate.\n * - The hierarchy turns out to have only two levels. In this case, use List with group items.\n *\n * ### Keyboard Handling\n *\n * The `ui5-tree` provides advanced keyboard handling.\n * The user can use the following keyboard shortcuts in order to navigate trough the tree:\n *\n * - [Up] or [Down] - Navigates up and down the tree items that are currently visible.\n * - [Right] - Drills down the tree by expanding the tree nodes.\n * - [Left] - Goes up the tree and collapses the tree nodes.\n *\n * The user can use the following keyboard shortcuts to perform selection,\n * when the `selectionMode` property is in use:\n *\n * - [Space] - Selects the currently focused item upon keyup.\n * - [Enter] - Selects the currently focused item upon keydown.\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/Tree.js\";`\n *\n * `import \"@ui5/webcomponents/dist/TreeItem.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0-rc.8\n */\n@customElement({\n\ttag: \"ui5-tree\",\n\trenderer: jsxRenderer,\n\tstyles: TreeCss,\n\ttemplate: TreeTemplate,\n})\n/**\n * Fired when a tree item is expanded or collapsed.\n *\n * **Note:** You can call `preventDefault()` on the event object to suppress the event, if needed.\n * This may be handy for example if you want to dynamically load tree items upon the user expanding a node.\n * Even if you prevented the event's default behavior, you can always manually call `toggle()` on a tree item.\n * @param {HTMLElement} item the toggled item.\n * @public\n */\n@event(\"item-toggle\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired when the mouse cursor enters the tree item borders.\n * @param {HTMLElement} item the hovered item.\n * @since 1.0.0-rc.16\n * @public\n */\n@event(\"item-mouseover\", {\n\tbubbles: true,\n})\n/**\n * Fired when the mouse cursor leaves the tree item borders.\n * @param {HTMLElement} item the hovered item.\n * @since 1.0.0-rc.16\n * @public\n */\n@event(\"item-mouseout\", {\n\tbubbles: true,\n})\n/**\n * Fired when a tree item is activated.\n * @param {HTMLElement} item The clicked item.\n * @public\n */\n@event(\"item-click\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n\n/**\n * Fired when the Delete button of any tree item is pressed.\n *\n * **Note:** A Delete button is displayed on each item,\n * when the component `selectionMode` property is set to `Delete`.\n * @param {HTMLElement} item the deleted item.\n * @public\n */\n@event(\"item-delete\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when a tree item is focused.\n * @param {HTMLElement} item The focused item.\n * @private\n */\n@event(\"item-focus\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when selection is changed by user interaction\n * in `Single`, `SingleStart`, `SingleEnd` and `Multiple` modes.\n * @param {Array} selectedItems An array of the selected items.\n * @param {Array} previouslySelectedItems An array of the previously selected items.\n * @param {HTMLElement} targetItem The item triggering the event.\n * @public\n */\n@event(\"selection-change\", {\n\tbubbles: true,\n})\n@event(\"move\", {\n\tbubbles: true,\n})\n@event(\"move-over\", {\n\tbubbles: true,\n\tcancelable: true,\n})\nclass Tree extends UI5Element {\n\teventDetails!: {\n\t\t\"item-toggle\": TreeItemToggleEventDetail,\n\t\t\"item-mouseover\": TreeItemMouseoverEventDetail,\n\t\t\"item-mouseout\": TreeItemMouseoutEventDetail,\n\t\t\"item-click\": TreeItemClickEventDetail,\n\t\t\"item-delete\": TreeItemDeleteEventDetail,\n\t\t\"item-focus\": TreeItemFocusEventDetail,\n\t\t\"selection-change\": TreeSelectionChangeEventDetail,\n\t\t\"move\": TreeMoveEventDetail,\n\t\t\"move-over\": TreeMoveEventDetail,\n\t}\n\t/**\n\t * Defines the selection mode of the component. Since the tree uses a `ui5-list` to display its structure,\n\t * the tree modes are exactly the same as the list modes, and are all applicable.\n\t * @public\n\t * @default \"None\"\n\t */\n\t@property()\n\tselectionMode?: `${ListSelectionMode}` = \"None\";\n\n\t/**\n\t * Defines the text that is displayed when the component contains no items.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tnoDataText?: string;\n\n\t/**\n\t * Defines the component header text.\n\t *\n\t * **Note:** If the `header` slot is set, this property is ignored.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\theaderText?: string;\n\n\t/**\n\t * Defines the component footer text.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tfooterText?: string;\n\n\t/**\n\t * Defines the accessible name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.8.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the IDs of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.8.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the accessible description of the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.5.0\n\t */\n\t@property()\n\taccessibleDescription?: string;\n\n\t/**\n\t * Defines the IDs of the elements that describe the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.5.0\n\t */\n\t@property()\n\taccessibleDescriptionRef?: string;\n\n\t/**\n\t * Defines the items of the component. Tree items may have other tree items as children.\n\t *\n\t * **Note:** Use `ui5-tree-item` for the intended design.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\titems!: Array<TreeItemBase>;\n\n\t/**\n\t * Defines the component header.\n\t *\n\t * **Note:** When the `header` slot is set, the\n\t * `headerText` property is ignored.\n\t * @public\n\t */\n\t@slot()\n\theader!: Array<HTMLElement>;\n\n\tonEnterDOM() {\n\t\tDragRegistry.subscribe(this);\n\t}\n\n\tonExitDOM() {\n\t\tDragRegistry.unsubscribe(this);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prepareTreeItems();\n\t}\n\n\tonAfterRendering() {\n\t\t// Note: this is a workaround for the problem that the list cannot invalidate itself when its only physical child is a slot (and the list items are inside the slot)\n\t\t// This code should be removed once a framework-level fix is implemented\n\t\tthis.shadowRoot!.querySelector<TreeList>(\"[ui5-tree-list]\")!.onBeforeRendering();\n\t}\n\n\tget dropIndicatorDOM(): DropIndicator | null {\n\t\treturn this.shadowRoot!.querySelector(\"[ui5-drop-indicator]\");\n\t}\n\n\tget list() {\n\t\treturn this.getDomRef() as TreeList;\n\t}\n\n\tget _role() {\n\t\treturn ListAccessibleRole.Tree;\n\t}\n\n\tget _hasHeader() {\n\t\treturn !!this.header.length;\n\t}\n\n\t_ondragenter(e: DragEvent) {\n\t\te.preventDefault();\n\t}\n\n\t_ondragleave(e: DragEvent) {\n\t\tif (e.relatedTarget instanceof Node && this.shadowRoot!.contains(e.relatedTarget)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.dropIndicatorDOM!.targetReference = null;\n\t}\n\n\t_ondragover(e: DragEvent) {\n\t\tconst draggedElement = DragRegistry.getDraggedElement();\n\t\tconst allLiNodesTraversed: Array<HTMLElement> = []; // use the only <li> nodes to determine positioning\n\t\tif (!(e.target instanceof HTMLElement) || !draggedElement) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.walk(item => {\n\t\t\tallLiNodesTraversed.push(item.shadowRoot!.querySelector(\"li\")!);\n\t\t});\n\n\t\tconst closestPosition = findClosestPosition(\n\t\t\tallLiNodesTraversed,\n\t\t\te.clientY,\n\t\t\tOrientation.Vertical,\n\t\t);\n\n\t\tif (!closestPosition) {\n\t\t\tthis.dropIndicatorDOM!.targetReference = null;\n\t\t\treturn;\n\t\t}\n\n\t\tclosestPosition.element = <HTMLElement>(<ShadowRoot>closestPosition.element.getRootNode()).host;\n\t\tif (draggedElement.contains(closestPosition.element)) { return; }\n\t\tif (closestPosition.element === draggedElement) {\n\t\t\tclosestPosition.placements = closestPosition.placements.filter(placement => placement !== MovePlacement.On);\n\t\t}\n\n\t\tconst { targetReference, placement } = handleDragOver(e, this, closestPosition, closestPosition.element);\n\t\tthis.dropIndicatorDOM!.targetReference = targetReference;\n\t\tthis.dropIndicatorDOM!.placement = placement;\n\t}\n\n\t_ondrop(e: DragEvent) {\n\t\tif (!this.dropIndicatorDOM?.targetReference || !this.dropIndicatorDOM?.placement) {\n\t\t\treturn;\n\t\t}\n\t\thandleDrop(e, this, this.dropIndicatorDOM.targetReference, this.dropIndicatorDOM.placement);\n\t\tthis.dropIndicatorDOM.targetReference = null;\n\t}\n\n\t_onListItemStepIn(e: CustomEvent<TreeItemBaseStepInEventDetail>) {\n\t\tconst treeItem = e.detail.item;\n\t\tif (treeItem.items.length > 0) {\n\t\t\tconst firstChild = treeItem.items[0];\n\t\t\tconst firstChildListItem = this._getListItemForTreeItem(firstChild);\n\t\t\tfirstChildListItem && this.list.focusItem(firstChildListItem);\n\t\t}\n\t}\n\n\t_onListItemStepOut(e: CustomEvent<TreeItemBaseStepOutEventDetail>) {\n\t\tconst treeItem = e.detail.item;\n\t\tif (treeItem.parentElement !== this) {\n\t\t\tconst parent = treeItem.parentElement as TreeItemBase;\n\t\t\tconst parentListItem = this._getListItemForTreeItem(parent);\n\t\t\tparentListItem && this.list.focusItem(parentListItem);\n\t\t}\n\t}\n\n\t_onListItemToggle(e: CustomEvent<TreeItemBaseToggleEventDetail>) {\n\t\tconst treeItem = e.detail.item;\n\t\tconst defaultPrevented = !this.fireDecoratorEvent(\"item-toggle\", { item: treeItem });\n\t\tif (!defaultPrevented) {\n\t\t\ttreeItem.toggle();\n\t\t}\n\t}\n\n\t_onListItemClick(e: CustomEvent<ListItemClickEventDetail>) {\n\t\tconst treeItem = e.detail.item as TreeItemBase;\n\n\t\tif (!this.fireDecoratorEvent(\"item-click\", { item: treeItem })) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onListItemDelete(e: CustomEvent<ListItemDeleteEventDetail>) {\n\t\tconst treeItem = e.detail.item as TreeItemBase;\n\t\tthis.fireDecoratorEvent(\"item-delete\", { item: treeItem });\n\t}\n\n\t_onListItemFocus(e: CustomEvent<ListItemFocusEventDetail>) {\n\t\tconst treeItem = e.detail.item as TreeItemBase;\n\t\tthis.fireDecoratorEvent(\"item-focus\", { item: treeItem });\n\t}\n\n\t_onListItemMouseOver(e: MouseEvent) {\n\t\tconst target = e.target;\n\n\t\tif (this._isInstanceOfTreeItemBase(target)) {\n\t\t\tthis.fireDecoratorEvent(\"item-mouseover\", { item: target });\n\t\t}\n\t}\n\n\t_onListItemMouseOut(e: MouseEvent) {\n\t\tconst target = e.target;\n\n\t\tif (this._isInstanceOfTreeItemBase(target)) {\n\t\t\tthis.fireDecoratorEvent(\"item-mouseout\", { item: target });\n\t\t}\n\t}\n\n\t_onListSelectionChange(e: CustomEvent<ListSelectionChangeEventDetail>) {\n\t\tif (!e.detail || !e.detail.previouslySelectedItems || !e.detail.selectedItems) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst previouslySelectedItems = e.detail.previouslySelectedItems as Array<TreeItemBase>;\n\t\tconst selectedItems = e.detail.selectedItems as Array<TreeItemBase>;\n\t\tconst targetItem = e.detail.targetItem as TreeItemBase;\n\n\t\tpreviouslySelectedItems.forEach(item => {\n\t\t\titem.selected = false;\n\t\t});\n\t\tselectedItems.forEach(item => {\n\t\t\titem.selected = true;\n\t\t});\n\n\t\tthis.fireDecoratorEvent(\"selection-change\", {\n\t\t\tpreviouslySelectedItems,\n\t\t\tselectedItems,\n\t\t\ttargetItem,\n\t\t});\n\t}\n\n\t_prepareTreeItems() {\n\t\t// set level to tree items\n\t\tthis.walk((item, level, index) => {\n\t\t\tconst parent = item.parentNode;\n\t\t\tconst ariaSetSize = (parent && parent.children.length) || this.items.length;\n\n\t\t\titem.setAttribute(\"level\", level.toString());\n\n\t\t\titem.forcedSetsize = ariaSetSize;\n\t\t\titem.forcedPosinset = index + 1;\n\t\t});\n\t}\n\n\t/**\n\t * Returns the corresponding list item for a given tree item\n\t * @param item The tree item\n\t * @protected\n\t */\n\t_getListItemForTreeItem(item: TreeItemBase) {\n\t\treturn this.getItems().find(listItem => listItem === item);\n\t}\n\n\t/**\n\t * Returns the a flat array of all tree items\n\t * @protected\n\t * @returns array of the tree items\n\t */\n\tgetItems(): Array<TreeItemBase> {\n\t\treturn this.list.getItems();\n\t}\n\n\t/**\n\t * Focus a tree item by its index in the flat array of all tree items\n\t * @protected\n\t * @param index\n\t */\n\tfocusItemByIndex(index: number) {\n\t\tconst item = this.getItems()[index];\n\t\titem && this.list.focusItem(item);\n\t}\n\n\t/**\n\t * Perform Depth-First-Search walk on the tree and run a callback on each node\n\t * @public\n\t * @param callback function to execute on each node of the tree with 3 arguments: the node, the level and the index\n\t */\n\twalk(callback: WalkCallback): void {\n\t\twalkTree(this, 1, callback);\n\t}\n\n\t_isInstanceOfTreeItemBase(object: any): object is TreeItemBase {\n\t\treturn \"isTreeItem\" in object;\n\t}\n}\n\nconst walkTree = (el: Tree | TreeItemBase, level: number, callback: WalkCallback) => {\n\t(el.items).forEach((item, index) => {\n\t\tcallback(item, level, index);\n\t\tif (item.items.length > 0) {\n\t\t\twalkTree(item, level + 1, callback);\n\t\t}\n\t});\n};\n\nTree.define();\n\nexport default Tree;\n\nexport type {\n\tTreeMoveEventDetail,\n\tTreeItemToggleEventDetail,\n\tTreeItemMouseoverEventDetail,\n\tTreeItemMouseoutEventDetail,\n\tTreeItemClickEventDetail,\n\tTreeItemDeleteEventDetail,\n\tTreeItemFocusEventDetail,\n\tTreeSelectionChangeEventDetail,\n\tWalkCallback,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"Tree.js","sourceRoot":"","sources":["../src/Tree.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport DragRegistry from \"@ui5/webcomponents-base/dist/util/dragAndDrop/DragRegistry.js\";\nimport handleDragOver from \"@ui5/webcomponents-base/dist/util/dragAndDrop/handleDragOver.js\";\nimport handleDrop from \"@ui5/webcomponents-base/dist/util/dragAndDrop/handleDrop.js\";\nimport { findClosestPosition } from \"@ui5/webcomponents-base/dist/util/dragAndDrop/findClosestPosition.js\";\nimport Orientation from \"@ui5/webcomponents-base/dist/types/Orientation.js\";\nimport MovePlacement from \"@ui5/webcomponents-base/dist/types/MovePlacement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport type DropIndicator from \"./DropIndicator.js\";\nimport \"./TreeItem.js\";\nimport type TreeItemBase from \"./TreeItemBase.js\";\nimport \"./TreeItemCustom.js\";\nimport type TreeList from \"./TreeList.js\";\nimport type ListSelectionMode from \"./types/ListSelectionMode.js\";\nimport ListAccessibleRole from \"./types/ListAccessibleRole.js\";\nimport type {\n\tTreeItemBaseToggleEventDetail,\n\tTreeItemBaseStepInEventDetail,\n\tTreeItemBaseStepOutEventDetail,\n} from \"./TreeItemBase.js\";\nimport type {\n\tListItemClickEventDetail,\n\tListItemDeleteEventDetail,\n\tListItemFocusEventDetail,\n\tListSelectionChangeEventDetail,\n} from \"./List.js\";\n\n// Template\nimport TreeTemplate from \"./TreeTemplate.js\";\n\n// Styles\nimport TreeCss from \"./generated/themes/Tree.css.js\";\n\ntype TreeMoveEventDetail = {\n\tsource: {\n\t\telement: HTMLElement,\n\t},\n\tdestination: {\n\t\telement: HTMLElement,\n\t\tplacement: `${MovePlacement}`,\n\t}\n}\n\ntype TreeItemEventDetail = {\n\titem: TreeItemBase,\n}\ntype TreeItemToggleEventDetail = TreeItemEventDetail;\ntype TreeItemMouseoverEventDetail = TreeItemEventDetail;\ntype TreeItemMouseoutEventDetail = TreeItemEventDetail;\ntype TreeItemClickEventDetail = TreeItemEventDetail;\ntype TreeItemDeleteEventDetail = TreeItemEventDetail;\ntype TreeItemFocusEventDetail = TreeItemEventDetail;\ntype TreeSelectionChangeEventDetail = {\n\tselectedItems: Array<TreeItemBase>;\n\tpreviouslySelectedItems: Array<TreeItemBase>;\n\ttargetItem: TreeItemBase;\n}\ntype WalkCallback = (item: TreeItemBase, level: number, index: number) => void;\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-tree` component provides a tree structure for displaying data in a hierarchy.\n *\n * ### Usage\n *\n * #### When to use:\n *\n * - To display hierarchically structured items.\n * - To select one or more items out of a set of hierarchically structured items.\n *\n * #### When not to use:\n *\n * - To display items not hierarchically structured. In this case, use the List component.\n * - To select one item from a very small number of non-hierarchical items. Select or ComboBox might be more appropriate.\n * - The hierarchy turns out to have only two levels. In this case, use List with group items.\n *\n * ### Keyboard Handling\n *\n * The `ui5-tree` provides advanced keyboard handling.\n * The user can use the following keyboard shortcuts in order to navigate trough the tree:\n *\n * - [Up] or [Down] - Navigates up and down the tree items that are currently visible.\n * - [Right] - Drills down the tree by expanding the tree nodes.\n * - [Left] - Goes up the tree and collapses the tree nodes.\n *\n * The user can use the following keyboard shortcuts to perform selection,\n * when the `selectionMode` property is in use:\n *\n * - [Space] - Selects the currently focused item upon keyup.\n * - [Enter] - Selects the currently focused item upon keydown.\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/Tree.js\";`\n *\n * `import \"@ui5/webcomponents/dist/TreeItem.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0-rc.8\n */\n@customElement({\n\ttag: \"ui5-tree\",\n\trenderer: jsxRenderer,\n\tstyles: TreeCss,\n\ttemplate: TreeTemplate,\n})\n/**\n * Fired when a tree item is expanded or collapsed.\n *\n * **Note:** You can call `preventDefault()` on the event object to suppress the event, if needed.\n * This may be handy for example if you want to dynamically load tree items upon the user expanding a node.\n * Even if you prevented the event's default behavior, you can always manually call `toggle()` on a tree item.\n * @param {HTMLElement} item the toggled item.\n * @public\n */\n@event(\"item-toggle\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n/**\n * Fired when the mouse cursor enters the tree item borders.\n * @param {HTMLElement} item the hovered item.\n * @since 1.0.0-rc.16\n * @public\n */\n@event(\"item-mouseover\", {\n\tbubbles: true,\n})\n/**\n * Fired when the mouse cursor leaves the tree item borders.\n * @param {HTMLElement} item the hovered item.\n * @since 1.0.0-rc.16\n * @public\n */\n@event(\"item-mouseout\", {\n\tbubbles: true,\n})\n/**\n * Fired when a tree item is activated.\n * @param {HTMLElement} item The clicked item.\n * @public\n */\n@event(\"item-click\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n\n/**\n * Fired when the Delete button of any tree item is pressed.\n *\n * **Note:** A Delete button is displayed on each item,\n * when the component `selectionMode` property is set to `Delete`.\n * @param {HTMLElement} item the deleted item.\n * @public\n */\n@event(\"item-delete\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when a tree item is focused.\n * @param {HTMLElement} item The focused item.\n * @private\n */\n@event(\"item-focus\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when selection is changed by user interaction\n * in `Single`, `SingleStart`, `SingleEnd` and `Multiple` modes.\n * @param {Array} selectedItems An array of the selected items.\n * @param {Array} previouslySelectedItems An array of the previously selected items.\n * @param {HTMLElement} targetItem The item triggering the event.\n * @public\n */\n@event(\"selection-change\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when a movable tree item is moved over a potential drop target during a drag-and-drop operation.\n *\n * If the new position is valid, prevent the default action of the event using `preventDefault()`.\n * @param {object} source Contains information about the moved element under the `element` property.\n * @param {object} destination Contains information about the destination of the moved element. Has `element` and `placement` properties.\n * @public\n */\n@event(\"move\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when a movable tree item is dropped onto a drop target.\n *\n * **Note:** The `move` event is fired only if there was a preceding `move-over` event with prevented default action.\n * @param {object} source Contains information about the moved element under the `element` property.\n * @param {object} destination Contains information about the destination of the moved element. Has `element` and `placement` properties.\n * @public\n */\n@event(\"move-over\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n\nclass Tree extends UI5Element {\n\teventDetails!: {\n\t\t\"item-toggle\": TreeItemToggleEventDetail,\n\t\t\"item-mouseover\": TreeItemMouseoverEventDetail,\n\t\t\"item-mouseout\": TreeItemMouseoutEventDetail,\n\t\t\"item-click\": TreeItemClickEventDetail,\n\t\t\"item-delete\": TreeItemDeleteEventDetail,\n\t\t\"item-focus\": TreeItemFocusEventDetail,\n\t\t\"selection-change\": TreeSelectionChangeEventDetail,\n\t\t\"move\": TreeMoveEventDetail,\n\t\t\"move-over\": TreeMoveEventDetail,\n\t}\n\t/**\n\t * Defines the selection mode of the component. Since the tree uses a `ui5-list` to display its structure,\n\t * the tree modes are exactly the same as the list modes, and are all applicable.\n\t * @public\n\t * @default \"None\"\n\t */\n\t@property()\n\tselectionMode?: `${ListSelectionMode}` = \"None\";\n\n\t/**\n\t * Defines the text that is displayed when the component contains no items.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tnoDataText?: string;\n\n\t/**\n\t * Defines the component header text.\n\t *\n\t * **Note:** If the `header` slot is set, this property is ignored.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\theaderText?: string;\n\n\t/**\n\t * Defines the component footer text.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tfooterText?: string;\n\n\t/**\n\t * Defines the accessible name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.8.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the IDs of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.8.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * Defines the accessible description of the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.5.0\n\t */\n\t@property()\n\taccessibleDescription?: string;\n\n\t/**\n\t * Defines the IDs of the elements that describe the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.5.0\n\t */\n\t@property()\n\taccessibleDescriptionRef?: string;\n\n\t/**\n\t * Defines the items of the component. Tree items may have other tree items as children.\n\t *\n\t * **Note:** Use `ui5-tree-item` for the intended design.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\titems!: Array<TreeItemBase>;\n\n\t/**\n\t * Defines the component header.\n\t *\n\t * **Note:** When the `header` slot is set, the\n\t * `headerText` property is ignored.\n\t * @public\n\t */\n\t@slot()\n\theader!: Array<HTMLElement>;\n\n\tonEnterDOM() {\n\t\tDragRegistry.subscribe(this);\n\t}\n\n\tonExitDOM() {\n\t\tDragRegistry.unsubscribe(this);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prepareTreeItems();\n\t}\n\n\tonAfterRendering() {\n\t\t// Note: this is a workaround for the problem that the list cannot invalidate itself when its only physical child is a slot (and the list items are inside the slot)\n\t\t// This code should be removed once a framework-level fix is implemented\n\t\tthis.shadowRoot!.querySelector<TreeList>(\"[ui5-tree-list]\")!.onBeforeRendering();\n\t}\n\n\tget dropIndicatorDOM(): DropIndicator | null {\n\t\treturn this.shadowRoot!.querySelector(\"[ui5-drop-indicator]\");\n\t}\n\n\tget list() {\n\t\treturn this.getDomRef() as TreeList;\n\t}\n\n\tget _role() {\n\t\treturn ListAccessibleRole.Tree;\n\t}\n\n\tget _hasHeader() {\n\t\treturn !!this.header.length;\n\t}\n\n\t_ondragenter(e: DragEvent) {\n\t\te.preventDefault();\n\t}\n\n\t_ondragleave(e: DragEvent) {\n\t\tif (e.relatedTarget instanceof Node && this.shadowRoot!.contains(e.relatedTarget)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.dropIndicatorDOM!.targetReference = null;\n\t}\n\n\t_ondragover(e: DragEvent) {\n\t\tconst draggedElement = DragRegistry.getDraggedElement();\n\t\tconst allLiNodesTraversed: Array<HTMLElement> = []; // use the only <li> nodes to determine positioning\n\t\tif (!(e.target instanceof HTMLElement) || !draggedElement) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.walk(item => {\n\t\t\tallLiNodesTraversed.push(item.shadowRoot!.querySelector(\"li\")!);\n\t\t});\n\n\t\tconst closestPosition = findClosestPosition(\n\t\t\tallLiNodesTraversed,\n\t\t\te.clientY,\n\t\t\tOrientation.Vertical,\n\t\t);\n\n\t\tif (!closestPosition) {\n\t\t\tthis.dropIndicatorDOM!.targetReference = null;\n\t\t\treturn;\n\t\t}\n\n\t\tclosestPosition.element = <HTMLElement>(<ShadowRoot>closestPosition.element.getRootNode()).host;\n\t\tif (draggedElement.contains(closestPosition.element)) { return; }\n\t\tif (closestPosition.element === draggedElement) {\n\t\t\tclosestPosition.placements = closestPosition.placements.filter(placement => placement !== MovePlacement.On);\n\t\t}\n\n\t\tconst { targetReference, placement } = handleDragOver(e, this, closestPosition, closestPosition.element);\n\t\tthis.dropIndicatorDOM!.targetReference = targetReference;\n\t\tthis.dropIndicatorDOM!.placement = placement;\n\t}\n\n\t_ondrop(e: DragEvent) {\n\t\tif (!this.dropIndicatorDOM?.targetReference || !this.dropIndicatorDOM?.placement) {\n\t\t\treturn;\n\t\t}\n\t\thandleDrop(e, this, this.dropIndicatorDOM.targetReference, this.dropIndicatorDOM.placement);\n\t\tthis.dropIndicatorDOM.targetReference = null;\n\t}\n\n\t_onListItemStepIn(e: CustomEvent<TreeItemBaseStepInEventDetail>) {\n\t\tconst treeItem = e.detail.item;\n\t\tif (treeItem.items.length > 0) {\n\t\t\tconst firstChild = treeItem.items[0];\n\t\t\tconst firstChildListItem = this._getListItemForTreeItem(firstChild);\n\t\t\tfirstChildListItem && this.list.focusItem(firstChildListItem);\n\t\t}\n\t}\n\n\t_onListItemStepOut(e: CustomEvent<TreeItemBaseStepOutEventDetail>) {\n\t\tconst treeItem = e.detail.item;\n\t\tif (treeItem.parentElement !== this) {\n\t\t\tconst parent = treeItem.parentElement as TreeItemBase;\n\t\t\tconst parentListItem = this._getListItemForTreeItem(parent);\n\t\t\tparentListItem && this.list.focusItem(parentListItem);\n\t\t}\n\t}\n\n\t_onListItemToggle(e: CustomEvent<TreeItemBaseToggleEventDetail>) {\n\t\tconst treeItem = e.detail.item;\n\t\tconst defaultPrevented = !this.fireDecoratorEvent(\"item-toggle\", { item: treeItem });\n\t\tif (!defaultPrevented) {\n\t\t\ttreeItem.toggle();\n\t\t}\n\t}\n\n\t_onListItemClick(e: CustomEvent<ListItemClickEventDetail>) {\n\t\tconst treeItem = e.detail.item as TreeItemBase;\n\n\t\tif (!this.fireDecoratorEvent(\"item-click\", { item: treeItem })) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onListItemDelete(e: CustomEvent<ListItemDeleteEventDetail>) {\n\t\tconst treeItem = e.detail.item as TreeItemBase;\n\t\tthis.fireDecoratorEvent(\"item-delete\", { item: treeItem });\n\t}\n\n\t_onListItemFocus(e: CustomEvent<ListItemFocusEventDetail>) {\n\t\tconst treeItem = e.detail.item as TreeItemBase;\n\t\tthis.fireDecoratorEvent(\"item-focus\", { item: treeItem });\n\t}\n\n\t_onListItemMouseOver(e: MouseEvent) {\n\t\tconst target = e.target;\n\n\t\tif (this._isInstanceOfTreeItemBase(target)) {\n\t\t\tthis.fireDecoratorEvent(\"item-mouseover\", { item: target });\n\t\t}\n\t}\n\n\t_onListItemMouseOut(e: MouseEvent) {\n\t\tconst target = e.target;\n\n\t\tif (this._isInstanceOfTreeItemBase(target)) {\n\t\t\tthis.fireDecoratorEvent(\"item-mouseout\", { item: target });\n\t\t}\n\t}\n\n\t_onListSelectionChange(e: CustomEvent<ListSelectionChangeEventDetail>) {\n\t\tif (!e.detail || !e.detail.previouslySelectedItems || !e.detail.selectedItems) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst previouslySelectedItems = e.detail.previouslySelectedItems as Array<TreeItemBase>;\n\t\tconst selectedItems = e.detail.selectedItems as Array<TreeItemBase>;\n\t\tconst targetItem = e.detail.targetItem as TreeItemBase;\n\n\t\tpreviouslySelectedItems.forEach(item => {\n\t\t\titem.selected = false;\n\t\t});\n\t\tselectedItems.forEach(item => {\n\t\t\titem.selected = true;\n\t\t});\n\n\t\tthis.fireDecoratorEvent(\"selection-change\", {\n\t\t\tpreviouslySelectedItems,\n\t\t\tselectedItems,\n\t\t\ttargetItem,\n\t\t});\n\t}\n\n\t_prepareTreeItems() {\n\t\t// set level to tree items\n\t\tthis.walk((item, level, index) => {\n\t\t\tconst parent = item.parentNode;\n\t\t\tconst ariaSetSize = (parent && parent.children.length) || this.items.length;\n\n\t\t\titem.setAttribute(\"level\", level.toString());\n\n\t\t\titem.forcedSetsize = ariaSetSize;\n\t\t\titem.forcedPosinset = index + 1;\n\t\t});\n\t}\n\n\t/**\n\t * Returns the corresponding list item for a given tree item\n\t * @param item The tree item\n\t * @protected\n\t */\n\t_getListItemForTreeItem(item: TreeItemBase) {\n\t\treturn this.getItems().find(listItem => listItem === item);\n\t}\n\n\t/**\n\t * Returns the a flat array of all tree items\n\t * @protected\n\t * @returns array of the tree items\n\t */\n\tgetItems(): Array<TreeItemBase> {\n\t\treturn this.list.getItems();\n\t}\n\n\t/**\n\t * Focus a tree item by its index in the flat array of all tree items\n\t * @protected\n\t * @param index\n\t */\n\tfocusItemByIndex(index: number) {\n\t\tconst item = this.getItems()[index];\n\t\titem && this.list.focusItem(item);\n\t}\n\n\t/**\n\t * Perform Depth-First-Search walk on the tree and run a callback on each node\n\t * @public\n\t * @param callback function to execute on each node of the tree with 3 arguments: the node, the level and the index\n\t */\n\twalk(callback: WalkCallback): void {\n\t\twalkTree(this, 1, callback);\n\t}\n\n\t_isInstanceOfTreeItemBase(object: any): object is TreeItemBase {\n\t\treturn \"isTreeItem\" in object;\n\t}\n}\n\nconst walkTree = (el: Tree | TreeItemBase, level: number, callback: WalkCallback) => {\n\t(el.items).forEach((item, index) => {\n\t\tcallback(item, level, index);\n\t\tif (item.items.length > 0) {\n\t\t\twalkTree(item, level + 1, callback);\n\t\t}\n\t});\n};\n\nTree.define();\n\nexport default Tree;\n\nexport type {\n\tTreeMoveEventDetail,\n\tTreeItemToggleEventDetail,\n\tTreeItemMouseoverEventDetail,\n\tTreeItemMouseoutEventDetail,\n\tTreeItemClickEventDetail,\n\tTreeItemDeleteEventDetail,\n\tTreeItemFocusEventDetail,\n\tTreeSelectionChangeEventDetail,\n\tWalkCallback,\n};\n"]}
|
package/dist/YearPicker.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
2
2
|
import CalendarPart from "./CalendarPart.js";
|
|
3
|
-
import type { ICalendarPicker } from "./Calendar.js";
|
|
3
|
+
import type { CalendarYearRangeT, ICalendarPicker } from "./Calendar.js";
|
|
4
4
|
import CalendarSelectionMode from "./types/CalendarSelectionMode.js";
|
|
5
5
|
type Year = {
|
|
6
6
|
timestamp: string;
|
|
@@ -62,15 +62,14 @@ declare class YearPicker extends CalendarPart implements ICalendarPicker {
|
|
|
62
62
|
* @private
|
|
63
63
|
*/
|
|
64
64
|
_secondTimestamp?: number;
|
|
65
|
+
_currentYearRange?: CalendarYearRangeT;
|
|
65
66
|
_firstYear?: number;
|
|
66
|
-
_lastYear?: number;
|
|
67
67
|
static i18nBundle: I18nBundle;
|
|
68
68
|
get roleDescription(): string;
|
|
69
69
|
onBeforeRendering(): void;
|
|
70
70
|
_getPageSize(): 8 | 20;
|
|
71
71
|
_getRowSize(): 2 | 4;
|
|
72
72
|
_buildYears(): void;
|
|
73
|
-
_calculateFirstYear(): void;
|
|
74
73
|
onAfterRendering(): void;
|
|
75
74
|
/**
|
|
76
75
|
* Returns true if year timestamp is inside the selection range.
|
package/dist/YearPicker.js
CHANGED
|
@@ -14,7 +14,6 @@ import { isEnter, isSpace, isDown, isUp, isLeft, isRight, isHome, isEnd, isHomeC
|
|
|
14
14
|
import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
|
|
15
15
|
import transformDateToSecondaryType from "@ui5/webcomponents-localization/dist/dates/transformDateToSecondaryType.js";
|
|
16
16
|
import CalendarDate from "@ui5/webcomponents-localization/dist/dates/CalendarDate.js";
|
|
17
|
-
import { getMaxCalendarDate } from "@ui5/webcomponents-localization/dist/dates/ExtremeDates.js";
|
|
18
17
|
import CalendarPart from "./CalendarPart.js";
|
|
19
18
|
import { YEAR_PICKER_DESCRIPTION } from "./generated/i18n/i18n-defaults.js";
|
|
20
19
|
// Template
|
|
@@ -59,6 +58,10 @@ let YearPicker = YearPicker_1 = class YearPicker extends CalendarPart {
|
|
|
59
58
|
return YearPicker_1.i18nBundle.getText(YEAR_PICKER_DESCRIPTION);
|
|
60
59
|
}
|
|
61
60
|
onBeforeRendering() {
|
|
61
|
+
if (this._hidden) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
this._firstYear = this._currentYearRange?.startYear ? this._currentYearRange?.startYear : this._calendarDate.getYear();
|
|
62
65
|
this._buildYears();
|
|
63
66
|
}
|
|
64
67
|
_getPageSize() {
|
|
@@ -70,15 +73,10 @@ let YearPicker = YearPicker_1 = class YearPicker extends CalendarPart {
|
|
|
70
73
|
return this.hasSecondaryCalendarType ? 2 : 4;
|
|
71
74
|
}
|
|
72
75
|
_buildYears() {
|
|
73
|
-
if (this._hidden) {
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
76
|
const pageSize = this._getPageSize();
|
|
77
77
|
const locale = getLocale();
|
|
78
78
|
const oYearFormat = DateFormat.getDateInstance({ format: "y", calendarType: this._primaryCalendarType }, locale);
|
|
79
79
|
const oYearFormatInSecType = DateFormat.getDateInstance({ format: "y", calendarType: this.secondaryCalendarType }, locale);
|
|
80
|
-
this._calculateFirstYear();
|
|
81
|
-
this._lastYear = this._firstYear + pageSize - 1;
|
|
82
80
|
const calendarDate = this._calendarDate; // store the value of the expensive getter
|
|
83
81
|
const minDate = this._minDate; // store the value of the expensive getter
|
|
84
82
|
const maxDate = this._maxDate; // store the value of the expensive getter
|
|
@@ -142,33 +140,6 @@ let YearPicker = YearPicker_1 = class YearPicker extends CalendarPart {
|
|
|
142
140
|
}
|
|
143
141
|
this._yearsInterval = intervals;
|
|
144
142
|
}
|
|
145
|
-
_calculateFirstYear() {
|
|
146
|
-
const pageSize = this._getPageSize();
|
|
147
|
-
const absoluteMaxYear = getMaxCalendarDate(this._primaryCalendarType).getYear(); // 9999
|
|
148
|
-
const currentYear = this._calendarDate.getYear();
|
|
149
|
-
// 1. If first load - center the current year (set first year to be current year minus half page size)
|
|
150
|
-
if (!this._firstYear) {
|
|
151
|
-
this._firstYear = currentYear - pageSize / 2;
|
|
152
|
-
}
|
|
153
|
-
// 2. If out of range - change by a page (20) - do not center in order to keep the same position as the last page
|
|
154
|
-
if (currentYear < this._firstYear) {
|
|
155
|
-
this._firstYear -= pageSize;
|
|
156
|
-
}
|
|
157
|
-
else if (currentYear >= this._firstYear + pageSize) {
|
|
158
|
-
this._firstYear += pageSize;
|
|
159
|
-
}
|
|
160
|
-
// 3. If the date was changed by more than 20 years - reset _firstYear completely
|
|
161
|
-
if (Math.abs(this._firstYear - currentYear) >= pageSize) {
|
|
162
|
-
this._firstYear = currentYear - pageSize / 2;
|
|
163
|
-
}
|
|
164
|
-
// Keep it in the range between the min and max year
|
|
165
|
-
this._firstYear = Math.max(this._firstYear, this._minDate.getYear());
|
|
166
|
-
this._firstYear = Math.min(this._firstYear, this._maxDate.getYear());
|
|
167
|
-
// If first year is > 9980, make it 9980 to not show any years beyond 9999
|
|
168
|
-
if (this._firstYear > absoluteMaxYear - pageSize + 1) {
|
|
169
|
-
this._firstYear = absoluteMaxYear - pageSize + 1;
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
143
|
onAfterRendering() {
|
|
173
144
|
if (!this._hidden) {
|
|
174
145
|
this.focus();
|
|
@@ -363,6 +334,9 @@ __decorate([
|
|
|
363
334
|
__decorate([
|
|
364
335
|
property({ type: Number })
|
|
365
336
|
], YearPicker.prototype, "_secondTimestamp", void 0);
|
|
337
|
+
__decorate([
|
|
338
|
+
property({ noAttribute: true })
|
|
339
|
+
], YearPicker.prototype, "_currentYearRange", void 0);
|
|
366
340
|
__decorate([
|
|
367
341
|
i18n("@ui5/webcomponents")
|
|
368
342
|
], YearPicker, "i18nBundle", void 0);
|
package/dist/YearPicker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YearPicker.js","sourceRoot":"","sources":["../src/YearPicker.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type LocaleT from \"sap/ui/core/Locale\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport {\n\tisEnter,\n\tisSpace,\n\tisDown,\n\tisUp,\n\tisLeft,\n\tisRight,\n\tisHome,\n\tisEnd,\n\tisHomeCtrl,\n\tisEndCtrl,\n\tisPageUp,\n\tisPageDown,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport transformDateToSecondaryType from \"@ui5/webcomponents-localization/dist/dates/transformDateToSecondaryType.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport { getMaxCalendarDate } from \"@ui5/webcomponents-localization/dist/dates/ExtremeDates.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport CalendarPart from \"./CalendarPart.js\";\nimport type { ICalendarPicker } from \"./Calendar.js\";\nimport { YEAR_PICKER_DESCRIPTION } from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport YearPickerTemplate from \"./YearPickerTemplate.js\";\n\n// Styles\nimport yearPickerStyles from \"./generated/themes/YearPicker.css.js\";\nimport CalendarSelectionMode from \"./types/CalendarSelectionMode.js\";\n\nconst isBetween = (x: number, num1: number, num2: number) => x > Math.min(num1, num2) && x < Math.max(num1, num2);\n\ntype Year = {\n\ttimestamp: string;\n\t_tabIndex: number;\n\tfocusRef: boolean;\n\tselected: boolean;\n\tariaSelected: boolean;\n\tyear: string;\n\tyearInSecType: string | undefined;\n\tdisabled: boolean;\n\tariaDisabled: boolean | undefined;\n\tclasses: string;\n\tparts: string;\n}\n\ntype YearInterval = Array<Array<Year>>;\n\ntype YearPickerChangeEventDetail = {\n\tdates: Array<number>,\n\ttimestamp: number,\n}\n\ntype YearPickerNavigateEventDetail = {\n\ttimestamp: number,\n}\n\n/**\n * @class\n *\n * Displays years which can be selected.\n * @constructor\n * @extends CalendarPart\n * @private\n */\n@customElement({\n\ttag: \"ui5-yearpicker\",\n\tstyles: yearPickerStyles,\n\ttemplate: YearPickerTemplate,\n})\n/**\n * Fired when the user selects a year via \"Space\", \"Enter\" or click.\n */\n@event(\"change\", {\n\tbubbles: true,\n})\n/**\n * Fired when the timestamp changes - the user navigates with the keyboard or clicks with the mouse.\n * @since 1.0.0-rc.9\n */\n@event(\"navigate\", {\n\tbubbles: true,\n})\nclass YearPicker extends CalendarPart implements ICalendarPicker {\n\teventDetails!: CalendarPart[\"eventDetails\"] & {\n\t\t\"change\": YearPickerChangeEventDetail,\n\t\t\"navigate\": YearPickerNavigateEventDetail,\n\t}\n\n\t/**\n\t * An array of UTC timestamps representing the selected date\n\t * or dates depending on the capabilities of the picker component.\n\t * @default []\n\t */\n\t@property({ type: Array })\n\tselectedDates: Array<number> = [];\n\n\t/**\n\t * Defines the type of selection used in the year picker component.\n\t * Accepted property values are:\n\t *\n\t * - `CalendarSelectionMode.Single` - enables election of a single year.\n\t * - `CalendarSelectionMode.Range` - enables selection of a year range.\n\t *\n\t * Note that 'CalendarSelectionMode.Multiple` is not supported for Year Picker!\n\t * @default \"Single\"\n\t * @since 2.2.0\n\t */\n\t@property()\n\tselectionMode: `${CalendarSelectionMode}` = \"Single\";\n\n\t@property({ type: Array })\n\t_yearsInterval: YearInterval = [];\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_hidden = false;\n\n\t/**\n\t * When selectionMode=\"Range\" and the first year in the range is selected, this is the currently hovered or focused year.\n\t *\n\t * @private\n\t */\n\t@property({ type: Number })\n\t_secondTimestamp?: number;\n\n\t_firstYear?: number;\n\t_lastYear?: number;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tget roleDescription() {\n\t\treturn YearPicker.i18nBundle.getText(YEAR_PICKER_DESCRIPTION);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._buildYears();\n\t}\n\n\t_getPageSize() {\n\t\t// Total years on a single page depending on using on one or two calendar type\n\t\treturn this.hasSecondaryCalendarType ? 8 : 20;\n\t}\n\n\t_getRowSize() {\n\t\t// Years per row (5 rows of 4 years each) for one claendar type and (4 row of 2 years each) for two calendar type\n\t\treturn this.hasSecondaryCalendarType ? 2 : 4;\n\t}\n\n\t_buildYears() {\n\t\tif (this._hidden) {\n\t\t\treturn;\n\t\t}\n\t\tconst pageSize = this._getPageSize();\n\t\tconst locale = getLocale() as unknown as LocaleT;\n\t\tconst oYearFormat = DateFormat.getDateInstance({ format: \"y\", calendarType: this._primaryCalendarType }, locale);\n\t\tconst oYearFormatInSecType = DateFormat.getDateInstance({ format: \"y\", calendarType: this.secondaryCalendarType }, locale);\n\t\tthis._calculateFirstYear();\n\t\tthis._lastYear = this._firstYear! + pageSize - 1;\n\n\t\tconst calendarDate = this._calendarDate; // store the value of the expensive getter\n\t\tconst minDate = this._minDate; // store the value of the expensive getter\n\t\tconst maxDate = this._maxDate; // store the value of the expensive getter\n\t\tconst tempDate = new CalendarDate(calendarDate, this._primaryCalendarType);\n\t\tlet tempDateInSecType;\n\t\tlet textInSecType;\n\t\ttempDate.setYear(this._firstYear!);\n\n\t\tconst intervals: YearInterval = [];\n\t\tlet timestamp;\n\n\t\t/* eslint-disable no-loop-func */\n\t\tfor (let i = 0; i < pageSize; i++) {\n\t\t\ttimestamp = tempDate.valueOf() / 1000;\n\n\t\t\tconst isSelected = this.selectedDates.some(itemTimestamp => {\n\t\t\t\tconst date = CalendarDate.fromTimestamp(itemTimestamp * 1000, this._primaryCalendarType);\n\t\t\t\treturn date.getYear() === tempDate.getYear();\n\t\t\t});\n\t\t\tconst isFocused = tempDate.getYear() === calendarDate.getYear();\n\t\t\tconst isDisabled = tempDate.getYear() < minDate.getYear() || tempDate.getYear() > maxDate.getYear();\n\t\t\tconst isSelectedBetween = this._isYearInsideSelectionRange(timestamp);\n\n\t\t\tif (this.hasSecondaryCalendarType) {\n\t\t\t\ttempDateInSecType = transformDateToSecondaryType(this._primaryCalendarType, this.secondaryCalendarType, timestamp, true);\n\t\t\t\ttextInSecType = tempDateInSecType.firstDate.getYear() === tempDateInSecType.lastDate.getYear()\n\t\t\t\t\t? `${oYearFormatInSecType.format(tempDateInSecType.firstDate.toLocalJSDate())}`\n\t\t\t\t\t: `${oYearFormatInSecType.format(tempDateInSecType.firstDate.toLocalJSDate())} - ${oYearFormatInSecType.format(tempDateInSecType.lastDate.toLocalJSDate())}`;\n\t\t\t}\n\n\t\t\tconst year: Year = {\n\t\t\t\ttimestamp: timestamp.toString(),\n\t\t\t\t_tabIndex: isFocused ? 0 : -1,\n\t\t\t\tfocusRef: isFocused,\n\t\t\t\tselected: isSelected || isSelectedBetween,\n\t\t\t\tariaSelected: isSelected || isSelectedBetween,\n\t\t\t\tyear: oYearFormat.format(tempDate.toLocalJSDate()),\n\t\t\t\tyearInSecType: textInSecType,\n\t\t\t\tdisabled: isDisabled,\n\t\t\t\tariaDisabled: isDisabled,\n\t\t\t\tclasses: \"ui5-yp-item\",\n\t\t\t\tparts: \"year-cell\",\n\t\t\t};\n\n\t\t\tif (isSelected) {\n\t\t\t\tyear.classes += \" ui5-yp-item--selected\";\n\t\t\t\tyear.parts += \" year-cell-selected\";\n\t\t\t}\n\n\t\t\tif (isSelectedBetween) {\n\t\t\t\tyear.classes += \" ui5-yp-item--selected-between\";\n\t\t\t\tyear.parts += \" year-cell-selected-between\";\n\t\t\t}\n\n\t\t\tif (isDisabled) {\n\t\t\t\tyear.classes += \" ui5-yp-item--disabled\";\n\t\t\t}\n\n\t\t\tif (this.hasSecondaryCalendarType) {\n\t\t\t\tyear.classes += \" ui5-yp-item-secondary-type\";\n\t\t\t}\n\t\t\tconst intervalIndex = Math.floor(i / this._getRowSize());\n\n\t\t\tif (intervals[intervalIndex]) {\n\t\t\t\tintervals[intervalIndex].push(year);\n\t\t\t} else {\n\t\t\t\tintervals[intervalIndex] = [year];\n\t\t\t}\n\n\t\t\ttempDate.setYear(tempDate.getYear() + 1);\n\t\t}\n\n\t\tthis._yearsInterval = intervals;\n\t}\n\n\t_calculateFirstYear() {\n\t\tconst pageSize = this._getPageSize();\n\t\tconst absoluteMaxYear = getMaxCalendarDate(this._primaryCalendarType).getYear(); // 9999\n\t\tconst currentYear = this._calendarDate.getYear();\n\n\t\t// 1. If first load - center the current year (set first year to be current year minus half page size)\n\t\tif (!this._firstYear) {\n\t\t\tthis._firstYear = currentYear - pageSize / 2;\n\t\t}\n\n\t\t// 2. If out of range - change by a page (20) - do not center in order to keep the same position as the last page\n\t\tif (currentYear < this._firstYear) {\n\t\t\tthis._firstYear -= pageSize;\n\t\t} else if (currentYear >= this._firstYear + pageSize) {\n\t\t\tthis._firstYear += pageSize;\n\t\t}\n\n\t\t// 3. If the date was changed by more than 20 years - reset _firstYear completely\n\t\tif (Math.abs(this._firstYear - currentYear) >= pageSize) {\n\t\t\tthis._firstYear = currentYear - pageSize / 2;\n\t\t}\n\n\t\t// Keep it in the range between the min and max year\n\t\tthis._firstYear = Math.max(this._firstYear, this._minDate.getYear());\n\t\tthis._firstYear = Math.min(this._firstYear, this._maxDate.getYear());\n\n\t\t// If first year is > 9980, make it 9980 to not show any years beyond 9999\n\t\tif (this._firstYear > absoluteMaxYear - pageSize + 1) {\n\t\t\tthis._firstYear = absoluteMaxYear - pageSize + 1;\n\t\t}\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this._hidden) {\n\t\t\tthis.focus();\n\t\t}\n\t}\n\n\t/**\n\t * Returns true if year timestamp is inside the selection range.\n\t * @private\n\t */\n\t_isYearInsideSelectionRange(timestamp: number): boolean {\n\t\tif (this.selectionMode !== CalendarSelectionMode.Range || !this.selectedDates.length) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Only one date selected - second is hovered or focused\n\t\tif (this.selectedDates.length === 1 && this._secondTimestamp) {\n\t\t\treturn isBetween(timestamp, this.selectedDates[0], this._secondTimestamp);\n\t\t}\n\n\t\treturn isBetween(timestamp, this.selectedDates[0], this.selectedDates[1]);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tlet preventDefault = true;\n\t\tconst pageSize = this._getPageSize();\n\t\tconst rowSize = this._getRowSize();\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._selectYear(e);\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t} else if (isLeft(e)) {\n\t\t\tthis._modifyTimestampBy(-1);\n\t\t} else if (isRight(e)) {\n\t\t\tthis._modifyTimestampBy(1);\n\t\t} else if (isUp(e)) {\n\t\t\tthis._modifyTimestampBy(-rowSize);\n\t\t} else if (isDown(e)) {\n\t\t\tthis._modifyTimestampBy(rowSize);\n\t\t} else if (isPageUp(e)) {\n\t\t\tthis._modifyTimestampBy(-pageSize);\n\t\t} else if (isPageDown(e)) {\n\t\t\tthis._modifyTimestampBy(pageSize);\n\t\t} else if (isHome(e) || isEnd(e)) {\n\t\t\tthis._onHomeOrEnd(isHome(e));\n\t\t} else if (isHomeCtrl(e)) {\n\t\t\tthis._setTimestamp(parseInt(this._yearsInterval[0][0].timestamp)); // first year of first row\n\t\t} else if (isEndCtrl(e)) {\n\t\t\tthis._setTimestamp(parseInt(this._yearsInterval[pageSize / rowSize - 1][rowSize - 1].timestamp)); // last year of last row\n\t\t} else {\n\t\t\tpreventDefault = false;\n\t\t}\n\n\t\tif (preventDefault) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onHomeOrEnd(homePressed: boolean) {\n\t\tthis._yearsInterval.forEach(row => {\n\t\t\tconst indexInRow = row.findIndex(item => CalendarDate.fromTimestamp(parseInt(item.timestamp) * 1000).getYear() === this._calendarDate.getYear());\n\t\t\tif (indexInRow !== -1) { // The current year is on this row\n\t\t\t\tconst index = homePressed ? 0 : this._getRowSize() - 1; // select the first (if Home) or last (if End) year on the row\n\t\t\t\tthis._setTimestamp(parseInt(row[index].timestamp));\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * In range selection, the currently focused or hovered year is considered the \"second day\".\n\t * @private\n\t */\n\t_updateSecondTimestamp() {\n\t\tif (this.selectionMode === CalendarSelectionMode.Range && (this.selectedDates.length === 1 || this.selectedDates.length === 2)) {\n\t\t\tthis._secondTimestamp = this.timestamp;\n\t\t}\n\t}\n\n\t/**\n\t * Set the hovered day as the \"_secondTimestamp\".\n\t *\n\t * @param e\n\t * @private\n\t */\n\t_onmouseover(e: MouseEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tconst hoveredItem = target.closest(\".ui5-yp-item\") as HTMLElement;\n\t\tif (hoveredItem && this.selectionMode === CalendarSelectionMode.Range && this.selectedDates.length === 1) {\n\t\t\tthis._secondTimestamp = this._getTimestampFromDom(hoveredItem);\n\t\t}\n\t}\n\n\t/**\n\t * Sets the timestamp to an absolute value.\n\t * @param value\n\t * @private\n\t */\n\t_setTimestamp(value: number) {\n\t\tthis._safelySetTimestamp(value);\n\t\tthis.fireDecoratorEvent(\"navigate\", { timestamp: this.timestamp! });\n\t}\n\n\t/**\n\t * Modifies timestamp by a given amount of years and, if necessary, loads the prev/next page.\n\t * @param amount\n\t * @private\n\t */\n\t_modifyTimestampBy(amount: number) {\n\t\t// Modify the current timestamp\n\t\tthis._safelyModifyTimestampBy(amount, \"year\");\n\t\tthis._updateSecondTimestamp();\n\n\t\t// Notify the calendar to update its timestamp\n\t\tthis.fireDecoratorEvent(\"navigate\", { timestamp: this.timestamp! });\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis._selectYear(e);\n\t\t}\n\t}\n\n\t/**\n\t * User clicked with the mouser or pressed Enter/Space\n\t * @param e\n\t * @private\n\t */\n\t_selectYear(e: Event) {\n\t\te.preventDefault();\n\t\tconst target = e.target as HTMLElement;\n\n\t\tif (target.className.indexOf(\"ui5-yp-item\") === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst timestamp = this._getTimestampFromDom(target);\n\t\tthis._safelySetTimestamp(timestamp);\n\t\tthis._updateSecondTimestamp();\n\t\tthis._updateSelectedDates(timestamp);\n\n\t\tthis.fireDecoratorEvent(\"change\", {\n\t\t\ttimestamp: this.timestamp!,\n\t\t\tdates: this.selectedDates,\n\t\t});\n\t}\n\n\t_updateSelectedDates(timestamp: number) {\n\t\tif (this.selectionMode === CalendarSelectionMode.Range && this.selectedDates.length === 1) {\n\t\t\tthis.selectedDates = [this.selectedDates[0], timestamp];\n\t\t\treturn;\n\t\t}\n\n\t\tthis.selectedDates = [timestamp];\n\t}\n\n\t/**\n\t * Called by the Calendar component.\n\t * @protected\n\t */\n\t_hasPreviousPage(): boolean {\n\t\treturn this._firstYear! > this._minDate.getYear();\n\t}\n\n\t/**\n\t * Called by the Calendar component.\n\t * @protected\n\t */\n\t_hasNextPage(): boolean {\n\t\treturn this._firstYear! + this._getPageSize() - 1 < this._maxDate.getYear();\n\t}\n\n\t/**\n\t * Called by the Calendar component.\n\t * **Note:** when the user presses the \"<\" button in the calendar header (same as \"PageUp\")\n\t * @protected\n\t */\n\t_showPreviousPage() {\n\t\tconst pageSize = this._getPageSize();\n\t\tthis._modifyTimestampBy(-pageSize);\n\t}\n\n\t/**\n\t * Called by the Calendar component.\n\t * **Note:** when the user presses the \">\" button in the calendar header (same as \"PageDown\")\n\t * @protected\n\t */\n\t_showNextPage() {\n\t\tthis._modifyTimestampBy(this._getPageSize());\n\t}\n}\n\nYearPicker.define();\n\nexport default YearPicker;\nexport type {\n\tYearPickerChangeEventDetail,\n\tYearPickerNavigateEventDetail,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"YearPicker.js","sourceRoot":"","sources":["../src/YearPicker.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type LocaleT from \"sap/ui/core/Locale\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport {\n\tisEnter,\n\tisSpace,\n\tisDown,\n\tisUp,\n\tisLeft,\n\tisRight,\n\tisHome,\n\tisEnd,\n\tisHomeCtrl,\n\tisEndCtrl,\n\tisPageUp,\n\tisPageDown,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport transformDateToSecondaryType from \"@ui5/webcomponents-localization/dist/dates/transformDateToSecondaryType.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport CalendarPart from \"./CalendarPart.js\";\nimport type { CalendarYearRangeT, ICalendarPicker } from \"./Calendar.js\";\nimport { YEAR_PICKER_DESCRIPTION } from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport YearPickerTemplate from \"./YearPickerTemplate.js\";\n\n// Styles\nimport yearPickerStyles from \"./generated/themes/YearPicker.css.js\";\nimport CalendarSelectionMode from \"./types/CalendarSelectionMode.js\";\n\nconst isBetween = (x: number, num1: number, num2: number) => x > Math.min(num1, num2) && x < Math.max(num1, num2);\n\ntype Year = {\n\ttimestamp: string;\n\t_tabIndex: number;\n\tfocusRef: boolean;\n\tselected: boolean;\n\tariaSelected: boolean;\n\tyear: string;\n\tyearInSecType: string | undefined;\n\tdisabled: boolean;\n\tariaDisabled: boolean | undefined;\n\tclasses: string;\n\tparts: string;\n}\n\ntype YearInterval = Array<Array<Year>>;\n\ntype YearPickerChangeEventDetail = {\n\tdates: Array<number>,\n\ttimestamp: number,\n}\n\ntype YearPickerNavigateEventDetail = {\n\ttimestamp: number,\n}\n\n/**\n * @class\n *\n * Displays years which can be selected.\n * @constructor\n * @extends CalendarPart\n * @private\n */\n@customElement({\n\ttag: \"ui5-yearpicker\",\n\tstyles: yearPickerStyles,\n\ttemplate: YearPickerTemplate,\n})\n/**\n * Fired when the user selects a year via \"Space\", \"Enter\" or click.\n */\n@event(\"change\", {\n\tbubbles: true,\n})\n/**\n * Fired when the timestamp changes - the user navigates with the keyboard or clicks with the mouse.\n * @since 1.0.0-rc.9\n */\n@event(\"navigate\", {\n\tbubbles: true,\n})\nclass YearPicker extends CalendarPart implements ICalendarPicker {\n\teventDetails!: CalendarPart[\"eventDetails\"] & {\n\t\t\"change\": YearPickerChangeEventDetail,\n\t\t\"navigate\": YearPickerNavigateEventDetail,\n\t}\n\n\t/**\n\t * An array of UTC timestamps representing the selected date\n\t * or dates depending on the capabilities of the picker component.\n\t * @default []\n\t */\n\t@property({ type: Array })\n\tselectedDates: Array<number> = [];\n\n\t/**\n\t * Defines the type of selection used in the year picker component.\n\t * Accepted property values are:\n\t *\n\t * - `CalendarSelectionMode.Single` - enables election of a single year.\n\t * - `CalendarSelectionMode.Range` - enables selection of a year range.\n\t *\n\t * Note that 'CalendarSelectionMode.Multiple` is not supported for Year Picker!\n\t * @default \"Single\"\n\t * @since 2.2.0\n\t */\n\t@property()\n\tselectionMode: `${CalendarSelectionMode}` = \"Single\";\n\n\t@property({ type: Array })\n\t_yearsInterval: YearInterval = [];\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_hidden = false;\n\n\t/**\n\t * When selectionMode=\"Range\" and the first year in the range is selected, this is the currently hovered or focused year.\n\t *\n\t * @private\n\t */\n\t@property({ type: Number })\n\t_secondTimestamp?: number;\n\n\t@property({ noAttribute: true })\n\t_currentYearRange?: CalendarYearRangeT;\n\n\t_firstYear?: number;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tget roleDescription() {\n\t\treturn YearPicker.i18nBundle.getText(YEAR_PICKER_DESCRIPTION);\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this._hidden) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._firstYear = this._currentYearRange?.startYear ? this._currentYearRange?.startYear : this._calendarDate.getYear();\n\t\tthis._buildYears();\n\t}\n\n\t_getPageSize() {\n\t\t// Total years on a single page depending on using on one or two calendar type\n\t\treturn this.hasSecondaryCalendarType ? 8 : 20;\n\t}\n\n\t_getRowSize() {\n\t\t// Years per row (5 rows of 4 years each) for one claendar type and (4 row of 2 years each) for two calendar type\n\t\treturn this.hasSecondaryCalendarType ? 2 : 4;\n\t}\n\n\t_buildYears() {\n\t\tconst pageSize = this._getPageSize();\n\t\tconst locale = getLocale() as unknown as LocaleT;\n\t\tconst oYearFormat = DateFormat.getDateInstance({ format: \"y\", calendarType: this._primaryCalendarType }, locale);\n\t\tconst oYearFormatInSecType = DateFormat.getDateInstance({ format: \"y\", calendarType: this.secondaryCalendarType }, locale);\n\n\t\tconst calendarDate = this._calendarDate; // store the value of the expensive getter\n\t\tconst minDate = this._minDate; // store the value of the expensive getter\n\t\tconst maxDate = this._maxDate; // store the value of the expensive getter\n\t\tconst tempDate = new CalendarDate(calendarDate, this._primaryCalendarType);\n\t\tlet tempDateInSecType;\n\t\tlet textInSecType;\n\t\ttempDate.setYear(this._firstYear!);\n\n\t\tconst intervals: YearInterval = [];\n\t\tlet timestamp;\n\n\t\t/* eslint-disable no-loop-func */\n\t\tfor (let i = 0; i < pageSize; i++) {\n\t\t\ttimestamp = tempDate.valueOf() / 1000;\n\n\t\t\tconst isSelected = this.selectedDates.some(itemTimestamp => {\n\t\t\t\tconst date = CalendarDate.fromTimestamp(itemTimestamp * 1000, this._primaryCalendarType);\n\t\t\t\treturn date.getYear() === tempDate.getYear();\n\t\t\t});\n\t\t\tconst isFocused = tempDate.getYear() === calendarDate.getYear();\n\t\t\tconst isDisabled = tempDate.getYear() < minDate.getYear() || tempDate.getYear() > maxDate.getYear();\n\t\t\tconst isSelectedBetween = this._isYearInsideSelectionRange(timestamp);\n\n\t\t\tif (this.hasSecondaryCalendarType) {\n\t\t\t\ttempDateInSecType = transformDateToSecondaryType(this._primaryCalendarType, this.secondaryCalendarType, timestamp, true);\n\t\t\t\ttextInSecType = tempDateInSecType.firstDate.getYear() === tempDateInSecType.lastDate.getYear()\n\t\t\t\t\t? `${oYearFormatInSecType.format(tempDateInSecType.firstDate.toLocalJSDate())}`\n\t\t\t\t\t: `${oYearFormatInSecType.format(tempDateInSecType.firstDate.toLocalJSDate())} - ${oYearFormatInSecType.format(tempDateInSecType.lastDate.toLocalJSDate())}`;\n\t\t\t}\n\n\t\t\tconst year: Year = {\n\t\t\t\ttimestamp: timestamp.toString(),\n\t\t\t\t_tabIndex: isFocused ? 0 : -1,\n\t\t\t\tfocusRef: isFocused,\n\t\t\t\tselected: isSelected || isSelectedBetween,\n\t\t\t\tariaSelected: isSelected || isSelectedBetween,\n\t\t\t\tyear: oYearFormat.format(tempDate.toLocalJSDate()),\n\t\t\t\tyearInSecType: textInSecType,\n\t\t\t\tdisabled: isDisabled,\n\t\t\t\tariaDisabled: isDisabled,\n\t\t\t\tclasses: \"ui5-yp-item\",\n\t\t\t\tparts: \"year-cell\",\n\t\t\t};\n\n\t\t\tif (isSelected) {\n\t\t\t\tyear.classes += \" ui5-yp-item--selected\";\n\t\t\t\tyear.parts += \" year-cell-selected\";\n\t\t\t}\n\n\t\t\tif (isSelectedBetween) {\n\t\t\t\tyear.classes += \" ui5-yp-item--selected-between\";\n\t\t\t\tyear.parts += \" year-cell-selected-between\";\n\t\t\t}\n\n\t\t\tif (isDisabled) {\n\t\t\t\tyear.classes += \" ui5-yp-item--disabled\";\n\t\t\t}\n\n\t\t\tif (this.hasSecondaryCalendarType) {\n\t\t\t\tyear.classes += \" ui5-yp-item-secondary-type\";\n\t\t\t}\n\t\t\tconst intervalIndex = Math.floor(i / this._getRowSize());\n\n\t\t\tif (intervals[intervalIndex]) {\n\t\t\t\tintervals[intervalIndex].push(year);\n\t\t\t} else {\n\t\t\t\tintervals[intervalIndex] = [year];\n\t\t\t}\n\n\t\t\ttempDate.setYear(tempDate.getYear() + 1);\n\t\t}\n\n\t\tthis._yearsInterval = intervals;\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this._hidden) {\n\t\t\tthis.focus();\n\t\t}\n\t}\n\n\t/**\n\t * Returns true if year timestamp is inside the selection range.\n\t * @private\n\t */\n\t_isYearInsideSelectionRange(timestamp: number): boolean {\n\t\tif (this.selectionMode !== CalendarSelectionMode.Range || !this.selectedDates.length) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Only one date selected - second is hovered or focused\n\t\tif (this.selectedDates.length === 1 && this._secondTimestamp) {\n\t\t\treturn isBetween(timestamp, this.selectedDates[0], this._secondTimestamp);\n\t\t}\n\n\t\treturn isBetween(timestamp, this.selectedDates[0], this.selectedDates[1]);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tlet preventDefault = true;\n\t\tconst pageSize = this._getPageSize();\n\t\tconst rowSize = this._getRowSize();\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._selectYear(e);\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t} else if (isLeft(e)) {\n\t\t\tthis._modifyTimestampBy(-1);\n\t\t} else if (isRight(e)) {\n\t\t\tthis._modifyTimestampBy(1);\n\t\t} else if (isUp(e)) {\n\t\t\tthis._modifyTimestampBy(-rowSize);\n\t\t} else if (isDown(e)) {\n\t\t\tthis._modifyTimestampBy(rowSize);\n\t\t} else if (isPageUp(e)) {\n\t\t\tthis._modifyTimestampBy(-pageSize);\n\t\t} else if (isPageDown(e)) {\n\t\t\tthis._modifyTimestampBy(pageSize);\n\t\t} else if (isHome(e) || isEnd(e)) {\n\t\t\tthis._onHomeOrEnd(isHome(e));\n\t\t} else if (isHomeCtrl(e)) {\n\t\t\tthis._setTimestamp(parseInt(this._yearsInterval[0][0].timestamp)); // first year of first row\n\t\t} else if (isEndCtrl(e)) {\n\t\t\tthis._setTimestamp(parseInt(this._yearsInterval[pageSize / rowSize - 1][rowSize - 1].timestamp)); // last year of last row\n\t\t} else {\n\t\t\tpreventDefault = false;\n\t\t}\n\n\t\tif (preventDefault) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onHomeOrEnd(homePressed: boolean) {\n\t\tthis._yearsInterval.forEach(row => {\n\t\t\tconst indexInRow = row.findIndex(item => CalendarDate.fromTimestamp(parseInt(item.timestamp) * 1000).getYear() === this._calendarDate.getYear());\n\t\t\tif (indexInRow !== -1) { // The current year is on this row\n\t\t\t\tconst index = homePressed ? 0 : this._getRowSize() - 1; // select the first (if Home) or last (if End) year on the row\n\t\t\t\tthis._setTimestamp(parseInt(row[index].timestamp));\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * In range selection, the currently focused or hovered year is considered the \"second day\".\n\t * @private\n\t */\n\t_updateSecondTimestamp() {\n\t\tif (this.selectionMode === CalendarSelectionMode.Range && (this.selectedDates.length === 1 || this.selectedDates.length === 2)) {\n\t\t\tthis._secondTimestamp = this.timestamp;\n\t\t}\n\t}\n\n\t/**\n\t * Set the hovered day as the \"_secondTimestamp\".\n\t *\n\t * @param e\n\t * @private\n\t */\n\t_onmouseover(e: MouseEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tconst hoveredItem = target.closest(\".ui5-yp-item\") as HTMLElement;\n\t\tif (hoveredItem && this.selectionMode === CalendarSelectionMode.Range && this.selectedDates.length === 1) {\n\t\t\tthis._secondTimestamp = this._getTimestampFromDom(hoveredItem);\n\t\t}\n\t}\n\n\t/**\n\t * Sets the timestamp to an absolute value.\n\t * @param value\n\t * @private\n\t */\n\t_setTimestamp(value: number) {\n\t\tthis._safelySetTimestamp(value);\n\t\tthis.fireDecoratorEvent(\"navigate\", { timestamp: this.timestamp! });\n\t}\n\n\t/**\n\t * Modifies timestamp by a given amount of years and, if necessary, loads the prev/next page.\n\t * @param amount\n\t * @private\n\t */\n\t_modifyTimestampBy(amount: number) {\n\t\t// Modify the current timestamp\n\t\tthis._safelyModifyTimestampBy(amount, \"year\");\n\t\tthis._updateSecondTimestamp();\n\n\t\t// Notify the calendar to update its timestamp\n\t\tthis.fireDecoratorEvent(\"navigate\", { timestamp: this.timestamp! });\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis._selectYear(e);\n\t\t}\n\t}\n\n\t/**\n\t * User clicked with the mouser or pressed Enter/Space\n\t * @param e\n\t * @private\n\t */\n\t_selectYear(e: Event) {\n\t\te.preventDefault();\n\t\tconst target = e.target as HTMLElement;\n\n\t\tif (target.className.indexOf(\"ui5-yp-item\") === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst timestamp = this._getTimestampFromDom(target);\n\t\tthis._safelySetTimestamp(timestamp);\n\t\tthis._updateSecondTimestamp();\n\t\tthis._updateSelectedDates(timestamp);\n\n\t\tthis.fireDecoratorEvent(\"change\", {\n\t\t\ttimestamp: this.timestamp!,\n\t\t\tdates: this.selectedDates,\n\t\t});\n\t}\n\n\t_updateSelectedDates(timestamp: number) {\n\t\tif (this.selectionMode === CalendarSelectionMode.Range && this.selectedDates.length === 1) {\n\t\t\tthis.selectedDates = [this.selectedDates[0], timestamp];\n\t\t\treturn;\n\t\t}\n\n\t\tthis.selectedDates = [timestamp];\n\t}\n\n\t/**\n\t * Called by the Calendar component.\n\t * @protected\n\t */\n\t_hasPreviousPage(): boolean {\n\t\treturn this._firstYear! > this._minDate.getYear();\n\t}\n\n\t/**\n\t * Called by the Calendar component.\n\t * @protected\n\t */\n\t_hasNextPage(): boolean {\n\t\treturn this._firstYear! + this._getPageSize() - 1 < this._maxDate.getYear();\n\t}\n\n\t/**\n\t * Called by the Calendar component.\n\t * **Note:** when the user presses the \"<\" button in the calendar header (same as \"PageUp\")\n\t * @protected\n\t */\n\t_showPreviousPage() {\n\t\tconst pageSize = this._getPageSize();\n\t\tthis._modifyTimestampBy(-pageSize);\n\t}\n\n\t/**\n\t * Called by the Calendar component.\n\t * **Note:** when the user presses the \">\" button in the calendar header (same as \"PageDown\")\n\t * @protected\n\t */\n\t_showNextPage() {\n\t\tthis._modifyTimestampBy(this._getPageSize());\n\t}\n}\n\nYearPicker.define();\n\nexport default YearPicker;\nexport type {\n\tYearPickerChangeEventDetail,\n\tYearPickerNavigateEventDetail,\n};\n"]}
|