@ui5/webcomponents 2.0.0-rc.4 → 2.0.0-rc.6
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 +148 -0
- package/README.md +5 -5
- package/dist/.tsbuildinfo +1 -1
- package/dist/Breadcrumbs.js +2 -2
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Button.d.ts +1 -0
- package/dist/Button.js +6 -0
- package/dist/Button.js.map +1 -1
- package/dist/Calendar.d.ts +1 -1
- package/dist/Calendar.js +3 -3
- package/dist/Calendar.js.map +1 -1
- package/dist/CalendarDate.d.ts +1 -1
- package/dist/CalendarDate.js +0 -1
- package/dist/CalendarDate.js.map +1 -1
- package/dist/CalendarDateRange.d.ts +1 -1
- package/dist/CalendarDateRange.js +0 -1
- package/dist/CalendarDateRange.js.map +1 -1
- package/dist/CalendarLegendItem.d.ts +1 -1
- package/dist/CalendarLegendItem.js +0 -1
- package/dist/CalendarLegendItem.js.map +1 -1
- package/dist/Carousel.d.ts +1 -0
- package/dist/Carousel.js +1 -0
- package/dist/Carousel.js.map +1 -1
- package/dist/CheckBox.d.ts +3 -2
- package/dist/CheckBox.js +2 -2
- package/dist/CheckBox.js.map +1 -1
- package/dist/ComboBox.d.ts +34 -18
- package/dist/ComboBox.js +106 -116
- package/dist/ComboBox.js.map +1 -1
- package/dist/DatePicker.d.ts +1 -0
- package/dist/DatePicker.js +4 -2
- package/dist/DatePicker.js.map +1 -1
- package/dist/DateRangePicker.d.ts +7 -0
- package/dist/DateRangePicker.js +10 -1
- package/dist/DateRangePicker.js.map +1 -1
- package/dist/DateTimePicker.d.ts +7 -0
- package/dist/DateTimePicker.js +10 -1
- package/dist/DateTimePicker.js.map +1 -1
- package/dist/FileUploader.d.ts +4 -0
- package/dist/FileUploader.js +6 -0
- package/dist/FileUploader.js.map +1 -1
- package/dist/Form.d.ts +6 -0
- package/dist/Form.js +1 -0
- package/dist/Form.js.map +1 -1
- package/dist/FormGroup.d.ts +2 -0
- package/dist/FormGroup.js +2 -0
- package/dist/FormGroup.js.map +1 -1
- package/dist/FormItem.d.ts +2 -0
- package/dist/FormItem.js +2 -0
- package/dist/FormItem.js.map +1 -1
- package/dist/GridWalker.d.ts +35 -0
- package/dist/GridWalker.js +103 -0
- package/dist/GridWalker.js.map +1 -0
- package/dist/Icon.js.map +1 -1
- package/dist/Input.d.ts +1 -1
- package/dist/Input.js +0 -1
- package/dist/Input.js.map +1 -1
- package/dist/Link.d.ts +32 -2
- package/dist/Link.js +11 -1
- package/dist/Link.js.map +1 -1
- package/dist/List.d.ts +3 -3
- package/dist/List.js +2 -5
- package/dist/List.js.map +1 -1
- package/dist/ListItem.d.ts +1 -1
- package/dist/ListItem.js +7 -5
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.d.ts +1 -0
- package/dist/ListItemBase.js +9 -0
- package/dist/ListItemBase.js.map +1 -1
- package/dist/{CustomListItem.d.ts → ListItemCustom.d.ts} +2 -2
- package/dist/{CustomListItem.js → ListItemCustom.js} +12 -12
- package/dist/{CustomListItem.js.map → ListItemCustom.js.map} +1 -1
- package/dist/ListItemGroup.d.ts +1 -1
- package/dist/ListItemGroup.js +2 -3
- package/dist/ListItemGroup.js.map +1 -1
- package/dist/ListItemGroupHeader.d.ts +0 -1
- package/dist/ListItemGroupHeader.js +0 -6
- package/dist/ListItemGroupHeader.js.map +1 -1
- package/dist/{StandardListItem.d.ts → ListItemStandard.d.ts} +2 -2
- package/dist/{StandardListItem.js → ListItemStandard.js} +20 -20
- package/dist/{StandardListItem.js.map → ListItemStandard.js.map} +1 -1
- package/dist/Menu.d.ts +1 -1
- package/dist/Menu.js +3 -1
- package/dist/Menu.js.map +1 -1
- package/dist/MenuItem.d.ts +28 -10
- package/dist/MenuItem.js +6 -1
- package/dist/MenuItem.js.map +1 -1
- package/dist/MultiComboBox.d.ts +10 -2
- package/dist/MultiComboBox.js +70 -39
- package/dist/MultiComboBox.js.map +1 -1
- package/dist/MultiComboBoxItem.d.ts +5 -0
- package/dist/MultiComboBoxItem.js +3 -0
- package/dist/MultiComboBoxItem.js.map +1 -1
- package/dist/{MultiComboBoxGroupItem.d.ts → MultiComboBoxItemGroup.d.ts} +12 -4
- package/dist/{MultiComboBoxGroupItem.js → MultiComboBoxItemGroup.js} +22 -10
- package/dist/MultiComboBoxItemGroup.js.map +1 -0
- package/dist/NavigationMenu.d.ts +1 -1
- package/dist/NavigationMenu.js +0 -2
- package/dist/NavigationMenu.js.map +1 -1
- package/dist/Option.d.ts +1 -1
- package/dist/Option.js +4 -1
- package/dist/Option.js.map +1 -1
- package/dist/OptionCustom.d.ts +1 -1
- package/dist/OptionCustom.js +0 -1
- package/dist/OptionCustom.js.map +1 -1
- package/dist/Popup.d.ts +3 -0
- package/dist/Popup.js +6 -10
- package/dist/Popup.js.map +1 -1
- package/dist/RadioButton.d.ts +1 -1
- package/dist/RadioButton.js +1 -1
- package/dist/RadioButton.js.map +1 -1
- package/dist/SegmentedButton.d.ts +2 -1
- package/dist/SegmentedButton.js.map +1 -1
- package/dist/SegmentedButtonItem.d.ts +4 -3
- package/dist/SegmentedButtonItem.js +2 -2
- package/dist/SegmentedButtonItem.js.map +1 -1
- package/dist/Select.d.ts +2 -1
- package/dist/Select.js +1 -1
- package/dist/Select.js.map +1 -1
- package/dist/StepInput.d.ts +1 -1
- package/dist/StepInput.js +1 -2
- package/dist/StepInput.js.map +1 -1
- package/dist/SuggestionListItem.d.ts +3 -3
- package/dist/SuggestionListItem.js +3 -3
- package/dist/SuggestionListItem.js.map +1 -1
- package/dist/Tab.d.ts +2 -2
- package/dist/Tab.js +2 -2
- package/dist/Tab.js.map +1 -1
- package/dist/TabContainer.js +4 -2
- package/dist/TabContainer.js.map +1 -1
- package/dist/TabSeparator.d.ts +2 -2
- package/dist/TabSeparator.js.map +1 -1
- package/dist/Table.d.ts +255 -0
- package/dist/Table.js +398 -0
- package/dist/Table.js.map +1 -0
- package/dist/TableCell.d.ts +23 -0
- package/dist/TableCell.js +50 -0
- package/dist/TableCell.js.map +1 -0
- package/dist/TableCellBase.d.ts +25 -0
- package/dist/TableCellBase.js +57 -0
- package/dist/TableCellBase.js.map +1 -0
- package/dist/TableExtension.d.ts +6 -0
- package/dist/TableExtension.js +7 -0
- package/dist/TableExtension.js.map +1 -0
- package/dist/TableGrowing.d.ts +125 -0
- package/dist/TableGrowing.js +222 -0
- package/dist/TableGrowing.js.map +1 -0
- package/dist/TableHeaderCell.d.ts +62 -0
- package/dist/TableHeaderCell.js +68 -0
- package/dist/TableHeaderCell.js.map +1 -0
- package/dist/TableHeaderRow.d.ts +45 -0
- package/dist/TableHeaderRow.js +95 -0
- package/dist/TableHeaderRow.js.map +1 -0
- package/dist/TableNavigation.d.ts +36 -0
- package/dist/TableNavigation.js +251 -0
- package/dist/TableNavigation.js.map +1 -0
- package/dist/TableRow.d.ts +51 -0
- package/dist/TableRow.js +103 -0
- package/dist/TableRow.js.map +1 -0
- package/dist/TableRowBase.d.ts +37 -0
- package/dist/TableRowBase.js +104 -0
- package/dist/TableRowBase.js.map +1 -0
- package/dist/TableSelection.d.ts +77 -0
- package/dist/TableSelection.js +178 -0
- package/dist/TableSelection.js.map +1 -0
- package/dist/Tag.d.ts +1 -8
- package/dist/Tag.js +2 -9
- package/dist/Tag.js.map +1 -1
- package/dist/TextArea.d.ts +1 -1
- package/dist/TextArea.js +0 -1
- package/dist/TextArea.js.map +1 -1
- package/dist/TimePicker.d.ts +2 -0
- package/dist/TimePicker.js +22 -1
- package/dist/TimePicker.js.map +1 -1
- package/dist/TimePickerInternals.d.ts +1 -1
- package/dist/TimePickerInternals.js +1 -2
- package/dist/TimePickerInternals.js.map +1 -1
- package/dist/Tokenizer.d.ts +2 -2
- package/dist/Tokenizer.js +3 -5
- package/dist/Tokenizer.js.map +1 -1
- package/dist/Toolbar.d.ts +11 -2
- package/dist/Toolbar.js +4 -1
- package/dist/Toolbar.js.map +1 -1
- package/dist/ToolbarButton.d.ts +4 -3
- package/dist/ToolbarButton.js.map +1 -1
- package/dist/ToolbarItem.d.ts +1 -1
- package/dist/ToolbarItem.js +0 -1
- package/dist/ToolbarItem.js.map +1 -1
- package/dist/bundle.common.bootstrap.d.ts +52 -1
- package/dist/bundle.common.bootstrap.js +103 -0
- package/dist/bundle.common.bootstrap.js.map +1 -1
- package/dist/bundle.esm.d.ts +4 -20
- package/dist/bundle.esm.js +10 -100
- 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/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/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/FileUploader.css +1 -1
- package/dist/css/themes/Form.css +1 -1
- package/dist/css/themes/FormItem.css +1 -1
- package/dist/css/themes/FormLabelSpan.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/{CustomListItem.css → 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/MultiComboBoxPopover.css +1 -1
- package/dist/css/themes/MultiInput.css +1 -1
- package/dist/css/themes/NavigationMenu.css +1 -1
- package/dist/css/themes/NavigationMenuItem.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/Switch.css +1 -1
- package/dist/css/themes/TabContainer.css +1 -1
- package/dist/css/themes/TabInOverflow.css +1 -1
- package/dist/css/themes/TabInStrip.css +1 -1
- package/dist/css/themes/TabSemanticIcon.css +1 -1
- package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
- package/dist/css/themes/Table.css +1 -0
- package/dist/css/themes/TableCell.css +1 -0
- package/dist/css/themes/TableCellBase.css +1 -0
- package/dist/css/themes/TableGrowing.css +1 -0
- package/dist/css/themes/TableHeaderCell.css +1 -0
- package/dist/css/themes/TableHeaderRow.css +1 -0
- package/dist/css/themes/TableRow.css +1 -0
- package/dist/css/themes/TableRowBase.css +1 -0
- 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/TreeItem.css +1 -1
- package/dist/css/themes/ValueStateMessage.css +1 -1
- package/dist/css/themes/YearPicker.css +1 -1
- package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +7025 -5750
- package/dist/custom-elements.json +3708 -2740
- package/dist/features/InputSuggestions.d.ts +1 -1
- package/dist/features/InputSuggestions.js +0 -1
- package/dist/features/InputSuggestions.js.map +1 -1
- package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_GB.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_it.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/i18n/i18n-defaults.d.ts +11 -2
- package/dist/generated/i18n/i18n-defaults.js +11 -2
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +2 -2
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ButtonTemplate.lit.js +2 -2
- package/dist/generated/templates/ButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CarouselTemplate.lit.js +1 -1
- package/dist/generated/templates/CarouselTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +6 -6
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ComboBoxTemplate.lit.js +6 -6
- package/dist/generated/templates/ComboBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerTemplate.lit.js +1 -1
- package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DateRangePickerTemplate.lit.js +1 -1
- package/dist/generated/templates/DateRangePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DateTimePickerTemplate.lit.js +1 -1
- package/dist/generated/templates/DateTimePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DialogTemplate.lit.js +1 -1
- package/dist/generated/templates/DialogTemplate.lit.js.map +1 -1
- package/dist/generated/templates/InputTemplate.lit.js +1 -1
- package/dist/generated/templates/InputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/LinkTemplate.lit.js +5 -3
- package/dist/generated/templates/LinkTemplate.lit.js.map +1 -1
- package/dist/generated/templates/{CustomListItemTemplate.lit.d.ts → ListItemCustomTemplate.lit.d.ts} +2 -2
- package/dist/generated/templates/{CustomListItemTemplate.lit.js → ListItemCustomTemplate.lit.js} +1 -1
- package/dist/generated/templates/{CustomListItemTemplate.lit.js.map → ListItemCustomTemplate.lit.js.map} +1 -1
- package/dist/generated/templates/{StandardListItemTemplate.lit.d.ts → ListItemStandardTemplate.lit.d.ts} +2 -2
- package/dist/generated/templates/{StandardListItemTemplate.lit.js → ListItemStandardTemplate.lit.js} +1 -1
- package/dist/generated/templates/{StandardListItemTemplate.lit.js.map → ListItemStandardTemplate.lit.js.map} +1 -1
- package/dist/generated/templates/MenuItemTemplate.lit.js +19 -17
- package/dist/generated/templates/MenuItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MonthPickerTemplate.lit.js +1 -1
- package/dist/generated/templates/MonthPickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +17 -13
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js +40 -32
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiInputTemplate.lit.js +1 -1
- package/dist/generated/templates/MultiInputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/PopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PopupTemplate.lit.js +1 -1
- package/dist/generated/templates/PopupTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/SelectPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectTemplate.lit.js +2 -2
- package/dist/generated/templates/SelectTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TableCellTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TableCellTemplate.lit.js +8 -0
- package/dist/generated/templates/TableCellTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TableGrowingTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TableGrowingTemplate.lit.js +7 -0
- package/dist/generated/templates/TableGrowingTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TableHeaderCellTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TableHeaderCellTemplate.lit.js +5 -0
- package/dist/generated/templates/TableHeaderCellTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TableHeaderRowTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TableHeaderRowTemplate.lit.js +9 -0
- package/dist/generated/templates/TableHeaderRowTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TableRowTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TableRowTemplate.lit.js +11 -0
- package/dist/generated/templates/TableRowTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TableTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/TableTemplate.lit.js +10 -0
- package/dist/generated/templates/TableTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TimePickerTemplate.lit.js +1 -1
- package/dist/generated/templates/TimePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToggleButtonTemplate.lit.js +2 -2
- package/dist/generated/templates/ToggleButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToggleSpinButtonTemplate.lit.js +2 -2
- package/dist/generated/templates/ToggleSpinButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/YearPickerTemplate.lit.js +1 -1
- package/dist/generated/templates/YearPickerTemplate.lit.js.map +1 -1
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Avatar.css.js.map +1 -1
- package/dist/generated/themes/AvatarGroup.css.js +1 -1
- package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
- package/dist/generated/themes/Bar.css.js +1 -1
- package/dist/generated/themes/Bar.css.js.map +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
- package/dist/generated/themes/BusyIndicator.css.js +1 -1
- package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
- package/dist/generated/themes/Button.css.js +1 -1
- package/dist/generated/themes/Button.css.js.map +1 -1
- package/dist/generated/themes/Calendar.css.js +1 -1
- package/dist/generated/themes/Calendar.css.js.map +1 -1
- package/dist/generated/themes/CalendarHeader.css.js +1 -1
- package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegend.css.js +1 -1
- package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
- package/dist/generated/themes/Card.css.js +1 -1
- package/dist/generated/themes/Card.css.js.map +1 -1
- package/dist/generated/themes/CardHeader.css.js +1 -1
- package/dist/generated/themes/CardHeader.css.js.map +1 -1
- package/dist/generated/themes/Carousel.css.js +1 -1
- package/dist/generated/themes/Carousel.css.js.map +1 -1
- package/dist/generated/themes/CheckBox.css.js +1 -1
- package/dist/generated/themes/CheckBox.css.js.map +1 -1
- package/dist/generated/themes/ColorPalette.css.js +1 -1
- package/dist/generated/themes/ColorPalette.css.js.map +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
- package/dist/generated/themes/ColorPicker.css.js +1 -1
- package/dist/generated/themes/ColorPicker.css.js.map +1 -1
- package/dist/generated/themes/ComboBox.css.js +1 -1
- package/dist/generated/themes/ComboBox.css.js.map +1 -1
- package/dist/generated/themes/DatePicker.css.js +1 -1
- package/dist/generated/themes/DatePicker.css.js.map +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
- package/dist/generated/themes/DayPicker.css.js +1 -1
- package/dist/generated/themes/DayPicker.css.js.map +1 -1
- package/dist/generated/themes/Dialog.css.js +1 -1
- package/dist/generated/themes/Dialog.css.js.map +1 -1
- package/dist/generated/themes/FileUploader.css.js +1 -1
- package/dist/generated/themes/FileUploader.css.js.map +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.js +1 -1
- package/dist/generated/themes/FormItem.css.js.map +1 -1
- package/dist/generated/themes/FormLabelSpan.css.js +1 -1
- package/dist/generated/themes/FormLabelSpan.css.js.map +1 -1
- package/dist/generated/themes/GrowingButton.css.js +1 -1
- package/dist/generated/themes/GrowingButton.css.js.map +1 -1
- package/dist/generated/themes/Icon.css.js +1 -1
- package/dist/generated/themes/Icon.css.js.map +1 -1
- package/dist/generated/themes/Input.css.js +1 -1
- package/dist/generated/themes/Input.css.js.map +1 -1
- package/dist/generated/themes/InputIcon.css.js +1 -1
- package/dist/generated/themes/InputIcon.css.js.map +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
- package/dist/generated/themes/Link.css.js +1 -1
- package/dist/generated/themes/Link.css.js.map +1 -1
- package/dist/generated/themes/List.css.js +1 -1
- package/dist/generated/themes/List.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/ListItemBase.css.js +1 -1
- package/dist/generated/themes/ListItemBase.css.js.map +1 -1
- package/dist/generated/themes/{CustomListItem.css.js → ListItemCustom.css.js} +2 -2
- package/dist/generated/themes/{CustomListItem.css.js.map → ListItemCustom.css.js.map} +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.js +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.js.map +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.js +1 -1
- package/dist/generated/themes/Menu.css.js.map +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.js +1 -1
- package/dist/generated/themes/MessageStrip.css.js.map +1 -1
- package/dist/generated/themes/MonthPicker.css.js +1 -1
- package/dist/generated/themes/MonthPicker.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBox.css.js +1 -1
- package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
- package/dist/generated/themes/MultiInput.css.js +1 -1
- package/dist/generated/themes/MultiInput.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenu.css.js +1 -1
- package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenuItem.css.js +1 -1
- package/dist/generated/themes/NavigationMenuItem.css.js.map +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.js +1 -1
- package/dist/generated/themes/Panel.css.js.map +1 -1
- package/dist/generated/themes/Popover.css.js +1 -1
- package/dist/generated/themes/Popover.css.js.map +1 -1
- package/dist/generated/themes/PopupsCommon.css.js +1 -1
- package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
- package/dist/generated/themes/RadioButton.css.js +1 -1
- package/dist/generated/themes/RadioButton.css.js.map +1 -1
- package/dist/generated/themes/RangeSlider.css.js +1 -1
- package/dist/generated/themes/RangeSlider.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButton.css.js +1 -1
- package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
- package/dist/generated/themes/Select.css.js +1 -1
- package/dist/generated/themes/Select.css.js.map +1 -1
- package/dist/generated/themes/SliderBase.css.js +1 -1
- package/dist/generated/themes/SliderBase.css.js.map +1 -1
- package/dist/generated/themes/SplitButton.css.js +1 -1
- package/dist/generated/themes/SplitButton.css.js.map +1 -1
- package/dist/generated/themes/StepInput.css.js +1 -1
- package/dist/generated/themes/StepInput.css.js.map +1 -1
- package/dist/generated/themes/Switch.css.js +1 -1
- package/dist/generated/themes/Switch.css.js.map +1 -1
- package/dist/generated/themes/TabContainer.css.js +1 -1
- package/dist/generated/themes/TabContainer.css.js.map +1 -1
- package/dist/generated/themes/TabInOverflow.css.js +1 -1
- package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
- package/dist/generated/themes/TabInStrip.css.js +1 -1
- package/dist/generated/themes/TabInStrip.css.js.map +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
- package/dist/generated/themes/Table.css.d.ts +3 -0
- package/dist/generated/themes/Table.css.js +9 -0
- package/dist/generated/themes/Table.css.js.map +1 -0
- package/dist/generated/themes/TableCell.css.d.ts +3 -0
- package/dist/generated/themes/TableCell.css.js +9 -0
- package/dist/generated/themes/TableCell.css.js.map +1 -0
- package/dist/generated/themes/TableCellBase.css.d.ts +3 -0
- package/dist/generated/themes/TableCellBase.css.js +9 -0
- package/dist/generated/themes/TableCellBase.css.js.map +1 -0
- package/dist/generated/themes/TableGrowing.css.d.ts +3 -0
- package/dist/generated/themes/TableGrowing.css.js +9 -0
- package/dist/generated/themes/TableGrowing.css.js.map +1 -0
- package/dist/generated/themes/TableHeaderCell.css.d.ts +3 -0
- package/dist/generated/themes/TableHeaderCell.css.js +9 -0
- package/dist/generated/themes/TableHeaderCell.css.js.map +1 -0
- package/dist/generated/themes/TableHeaderRow.css.d.ts +3 -0
- package/dist/generated/themes/TableHeaderRow.css.js +9 -0
- package/dist/generated/themes/TableHeaderRow.css.js.map +1 -0
- package/dist/generated/themes/TableRow.css.d.ts +3 -0
- package/dist/generated/themes/TableRow.css.js +9 -0
- package/dist/generated/themes/TableRow.css.js.map +1 -0
- package/dist/generated/themes/TableRowBase.css.d.ts +3 -0
- package/dist/generated/themes/TableRowBase.css.js +9 -0
- package/dist/generated/themes/TableRowBase.css.js.map +1 -0
- 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.js +1 -1
- package/dist/generated/themes/Text.css.js.map +1 -1
- package/dist/generated/themes/TextArea.css.js +1 -1
- package/dist/generated/themes/TextArea.css.js.map +1 -1
- package/dist/generated/themes/TimePicker.css.js +1 -1
- package/dist/generated/themes/TimePicker.css.js.map +1 -1
- package/dist/generated/themes/Toast.css.js +1 -1
- package/dist/generated/themes/Toast.css.js.map +1 -1
- package/dist/generated/themes/ToggleButton.css.js +1 -1
- package/dist/generated/themes/ToggleButton.css.js.map +1 -1
- package/dist/generated/themes/Token.css.js +1 -1
- package/dist/generated/themes/Token.css.js.map +1 -1
- package/dist/generated/themes/Tokenizer.css.js +1 -1
- package/dist/generated/themes/Tokenizer.css.js.map +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
- package/dist/generated/themes/Toolbar.css.js +1 -1
- package/dist/generated/themes/Toolbar.css.js.map +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
- package/dist/generated/themes/TreeItem.css.js +1 -1
- package/dist/generated/themes/TreeItem.css.js.map +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
- package/dist/generated/themes/YearPicker.css.js +1 -1
- package/dist/generated/themes/YearPicker.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
- package/dist/popup-utils/OpenedPopupsRegistry.d.ts +1 -1
- package/dist/popup-utils/OpenedPopupsRegistry.js +0 -1
- package/dist/popup-utils/OpenedPopupsRegistry.js.map +1 -1
- package/dist/styles/Icon.css +15 -15
- package/dist/styles/Icon.module.css +15 -15
- package/dist/types/TableGrowingMode.d.ts +18 -0
- package/dist/types/TableGrowingMode.js +20 -0
- package/dist/types/TableGrowingMode.js.map +1 -0
- package/dist/types/TableOverflowMode.d.ts +18 -0
- package/dist/types/TableOverflowMode.js +20 -0
- package/dist/types/TableOverflowMode.js.map +1 -0
- package/dist/types/TableSelectionMode.d.ts +23 -0
- package/dist/types/TableSelectionMode.js +25 -0
- package/dist/types/TableSelectionMode.js.map +1 -0
- package/dist/types/TagDesign.d.ts +0 -6
- package/dist/types/TagDesign.js +0 -6
- package/dist/types/TagDesign.js.map +1 -1
- package/dist/types/ToolbarDesign.d.ts +18 -0
- package/dist/types/ToolbarDesign.js +20 -0
- package/dist/types/ToolbarDesign.js.map +1 -0
- package/dist/vscode.html-custom-data.json +335 -172
- package/dist/web-types.json +896 -492
- package/package.json +9 -9
- package/src/Breadcrumbs.hbs +4 -2
- package/src/Button.hbs +2 -1
- package/src/Carousel.hbs +1 -0
- package/src/ComboBox.hbs +1 -0
- package/src/ComboBoxPopover.hbs +21 -9
- package/src/DatePickerPopover.hbs +1 -0
- package/src/Input.hbs +1 -0
- package/src/Link.hbs +22 -1
- package/src/MenuItem.hbs +2 -0
- package/src/MonthPicker.hbs +1 -1
- package/src/MultiComboBox.hbs +18 -1
- package/src/MultiComboBoxPopover.hbs +14 -2
- package/src/Popup.hbs +1 -0
- package/src/SelectPopover.hbs +2 -0
- package/src/SuggestionListItem.hbs +1 -1
- package/src/Table.hbs +59 -0
- package/src/TableCell.hbs +11 -0
- package/src/TableGrowing.hbs +19 -0
- package/src/TableHeaderCell.hbs +1 -0
- package/src/TableHeaderRow.hbs +22 -0
- package/src/TableRow.hbs +30 -0
- package/src/TimePickerPopover.hbs +2 -0
- package/src/YearPicker.hbs +1 -1
- package/src/i18n/messagebundle.properties +26 -4
- package/src/i18n/messagebundle_ar.properties +13 -3
- package/src/i18n/messagebundle_bg.properties +13 -3
- package/src/i18n/messagebundle_ca.properties +13 -3
- package/src/i18n/messagebundle_cnr.properties +13 -3
- package/src/i18n/messagebundle_cs.properties +13 -3
- package/src/i18n/messagebundle_cy.properties +13 -3
- package/src/i18n/messagebundle_da.properties +13 -3
- package/src/i18n/messagebundle_de.properties +13 -3
- package/src/i18n/messagebundle_el.properties +13 -3
- package/src/i18n/messagebundle_en_GB.properties +13 -3
- package/src/i18n/messagebundle_es.properties +13 -3
- package/src/i18n/messagebundle_es_MX.properties +13 -3
- package/src/i18n/messagebundle_et.properties +13 -3
- package/src/i18n/messagebundle_fi.properties +13 -3
- package/src/i18n/messagebundle_fr.properties +13 -3
- package/src/i18n/messagebundle_fr_CA.properties +13 -3
- package/src/i18n/messagebundle_hi.properties +13 -3
- package/src/i18n/messagebundle_hr.properties +13 -3
- package/src/i18n/messagebundle_hu.properties +13 -3
- package/src/i18n/messagebundle_id.properties +13 -3
- package/src/i18n/messagebundle_it.properties +14 -4
- package/src/i18n/messagebundle_iw.properties +13 -3
- package/src/i18n/messagebundle_ja.properties +13 -3
- package/src/i18n/messagebundle_kk.properties +13 -3
- package/src/i18n/messagebundle_ko.properties +13 -3
- package/src/i18n/messagebundle_lt.properties +13 -3
- package/src/i18n/messagebundle_lv.properties +13 -3
- package/src/i18n/messagebundle_mk.properties +13 -3
- package/src/i18n/messagebundle_ms.properties +13 -3
- package/src/i18n/messagebundle_nl.properties +13 -3
- package/src/i18n/messagebundle_no.properties +13 -3
- package/src/i18n/messagebundle_pl.properties +13 -3
- package/src/i18n/messagebundle_pt.properties +13 -3
- package/src/i18n/messagebundle_pt_PT.properties +13 -3
- package/src/i18n/messagebundle_ro.properties +13 -3
- package/src/i18n/messagebundle_ru.properties +13 -3
- package/src/i18n/messagebundle_sh.properties +13 -3
- package/src/i18n/messagebundle_sk.properties +13 -3
- package/src/i18n/messagebundle_sl.properties +13 -3
- package/src/i18n/messagebundle_sr.properties +13 -3
- package/src/i18n/messagebundle_sv.properties +13 -3
- package/src/i18n/messagebundle_th.properties +13 -3
- package/src/i18n/messagebundle_tr.properties +13 -3
- package/src/i18n/messagebundle_uk.properties +17 -7
- package/src/i18n/messagebundle_vi.properties +13 -3
- package/src/i18n/messagebundle_zh_CN.properties +13 -3
- package/src/i18n/messagebundle_zh_TW.properties +13 -3
- package/src/themes/Avatar.css +1 -5
- package/src/themes/AvatarGroup.css +3 -3
- package/src/themes/BusyIndicator.css +4 -0
- package/src/themes/CheckBox.css +8 -8
- package/src/themes/Icon.css +1 -1
- package/src/themes/Link.css +32 -5
- package/src/themes/ListItemBase.css +10 -9
- package/src/themes/MenuItem.css +1 -1
- package/src/themes/RadioButton.css +8 -8
- package/src/themes/SegmentedButtonItem.css +5 -0
- package/src/themes/Table.css +41 -0
- package/src/themes/TableCell.css +9 -0
- package/src/themes/TableCellBase.css +21 -0
- package/src/themes/TableGrowing.css +41 -0
- package/src/themes/TableHeaderCell.css +8 -0
- package/src/themes/TableHeaderRow.css +20 -0
- package/src/themes/TableRow.css +34 -0
- package/src/themes/TableRowBase.css +20 -0
- package/src/themes/Tag.css +17 -28
- package/src/themes/Toolbar.css +7 -1
- package/src/themes/TreeItem.css +5 -6
- package/src/themes/base/BusyIndicator-parameters.css +1 -0
- package/src/themes/base/Table-parameters.css +4 -0
- package/src/themes/base/Tag-parameters.css +1 -50
- package/src/themes/base/sizes-parameters.css +2 -0
- package/src/themes/sap_fiori_3/parameters-bundle.css +1 -0
- package/src/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
- package/src/themes/sap_fiori_3_hcb/BusyIndicator-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcb/Tag-parameters.css +0 -45
- package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +2 -1
- package/src/themes/sap_fiori_3_hcw/BusyIndicator-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcw/Tag-parameters.css +0 -45
- package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +2 -1
- package/src/themes/sap_horizon/ProgressIndicatorLayout-parameters.css +0 -5
- package/src/themes/sap_horizon/Tag-parameters.css +0 -33
- package/src/themes/sap_horizon/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon/rtl-parameters.css +2 -0
- package/src/themes/sap_horizon_dark/Tag-parameters.css +0 -33
- package/src/themes/sap_horizon_dark/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon_dark_exp/Tag-parameters.css +1 -43
- package/src/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon_exp/Tag-parameters.css +1 -43
- package/src/themes/sap_horizon_exp/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon_hcb/BusyIndicator-parameters.css +1 -0
- package/src/themes/sap_horizon_hcb/Tag-parameters.css +0 -39
- package/src/themes/sap_horizon_hcb/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon_hcb_exp/Tag-parameters.css +1 -43
- package/src/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon_hcw/BusyIndicator-parameters.css +1 -0
- package/src/themes/sap_horizon_hcw/Tag-parameters.css +0 -41
- package/src/themes/sap_horizon_hcw_exp/Tag-parameters.css +1 -43
- package/src/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -0
- package/dist/MultiComboBoxGroupItem.js.map +0 -1
- /package/dist/generated/themes/{CustomListItem.css.d.ts → ListItemCustom.css.d.ts} +0 -0
- /package/src/{CustomListItem.hbs → ListItemCustom.hbs} +0 -0
- /package/src/{StandardListItem.hbs → ListItemStandard.hbs} +0 -0
- /package/src/themes/{CustomListItem.css → ListItemCustom.css} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../src/Table.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 litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport TableTemplate from \"./generated/templates/TableTemplate.lit.js\";\nimport TableStyles from \"./generated/themes/Table.css.js\";\nimport TableRow from \"./TableRow.js\";\nimport type TableHeaderRow from \"./TableHeaderRow.js\";\nimport type TableHeaderCell from \"./TableHeaderCell.js\";\nimport TableExtension from \"./TableExtension.js\";\nimport TableSelection from \"./TableSelection.js\";\nimport TableOverflowMode from \"./types/TableOverflowMode.js\";\nimport TableNavigation from \"./TableNavigation.js\";\nimport {\n\tTABLE_NO_DATA,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport BusyIndicator from \"./BusyIndicator.js\";\nimport TableCell from \"./TableCell.js\";\n\n/**\n * Interface for components that can be slotted inside the <code>features</code> slot of the <code>ui5-table</code>.\n *\n * @public\n */\ninterface ITableFeature extends UI5Element {\n\t/**\n\t * Called when the table is activated.\n\t * @param table table instance\n\t */\n\tonTableActivate(table: Table): void;\n\t/**\n\t * Called when the table finished rendering.\n\t */\n\tonTableRendered?(): void;\n}\n\n/**\n * Interface for components that can be slotted inside the <code>features</code> slot of the <code>ui5-table</code>\n * and provide growing/data loading functionality.\n * @public\n */\ninterface ITableGrowing extends ITableFeature {\n\t/**\n\t * Called when the table needs to load more data.\n\t */\n\tloadMore(): void;\n\t/**\n\t * Determines whether the table has a growing control, that should be rendered in the table.\n\t */\n\thasGrowingComponent(): boolean;\n\t_individualSlot?: string;\n}\n\n/**\n * Fired when an interactive row is clicked.\n * @param {TableRow} row The clicked row instance\n * @public\n */\ntype TableRowClickEventDetail = {\n\trow: TableRow,\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table` component provides a set of sophisticated features for displaying and dealing with vast amounts of data in a responsive manner.\n * To render the `ui5-table`, you need to define the columns and rows. You can use the provided `ui5-table-header-row` and `ui5-table-row` components for this purpose.\n *\n * ### Features\n *\n * The `ui5-table` can be enhanced in its functionalities by applying different features.\n * Features can be slotted into the `features` slot, to enable them in the component.\n *\n * The following features are currently available:\n *\n * * [TableSelection](../TableSelection) - adds selection capabilities to the table\n * * [TableGrowing](../TableGrowing) - provides growing capabilities to load more data\n *\n * ### Keyboard Handling\n *\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * Furthermore, you can interact with `ui5-table` via the following keys:\n *\n * If the focus is on a row, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Navigates down\n * * <kbd>Up</kbd> - Navigates up\n * * <kbd>Right</kbd> - Selects the first cell of the row\n * * <kbd>Space</kbd> - Toggles the selection of the row\n * * <kbd>Ctrl/Cmd + A</kbd> - In multi selection mode, toggles the selection of all rows\n * * <kbd>Home</kbd> - Navigates to the first row, if the focus is on the first row, navigates to the header row\n * * <kbd>End</kbd> - Navigates to the last row, if the focus is on the last row, navigates to the growing button\n * * <kbd>Page Up</kbd> - Navigates one page up, if the focus is on the first row, navigates to the header row\n * * <kbd>Page Down</kbd> - Navigates one page down, if the focus is on the last row, navigates to the growing button\n * * <kbd>F2</kbd> - Focuses the first tabbable element in the row\n * * <kbd>F7</kbd> - If focus position is remembered, moves focus to the corresponding focus position row, otherwise to the first tabbable element within the row\n * * <kbd>[Shift]Tab</kbd> - Move focus to the element in the tab chain outside the table\n\n *\n * If the focus is on a cell, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Navigates down\n * * <kbd>Up</kbd> - Navigates up\n * * <kbd>Right</kbd> - Navigates right\n * * <kbd>Left</kbd> - Navigates left, if the focus is on the first cell of the row, the focus is moved to the row.\n * * <kbd>Home</kbd> - Navigates to the first cell of the current row, if the focus is on the first cell, navigates to the corresponding row\n * * <kbd>End</kbd> - Navigates to the last cell of the current row, if the focus is on the last cell, navigates to the corresponding row\n * * <kbd>Page Up</kbd> - Navigates one page up while keeping the focus in same column\n * * <kbd>Page Down</kbd> - Navigates one page down while keeping the focus in same column\n * * <kbd>F2</kbd> - Toggles the focus between the first tabbable cell content and the cell\n * * <kbd>Enter</kbd> - Focuses the first tabbable cell content\n * * <kbd>F7</kbd> - If the focus is on an interactive element inside a row, moves focus to the corresponding row and remembers the focus position of the element within the row\n * * <kbd>[Shift]Tab</kbd> - Move focus to the element in the tab chain outside the table\n\n *\n * If the focus is on an interactive cell content, the following keyboard shortcuts are available:\n * * <kbd>Down</kbd> - Move the focus to the interactive element in the same column of the previous row, unless the focused element prevents the default\n * * <kbd>Up</kbd> - Move the focus to the interactive element in the same column of the next row, unless the focused element prevents the default\n * * <kbd>[Shift]Tab</kbd> - Move the focus to the element in the tab chain\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Table.js\";`\\\n * `import \"@ui5/webcomponents/dist/TableRow.js\";` (`ui5-table-row`)\\\n * `import \"@ui5/webcomponents/dist/TableCell.js\";` (`ui5-table-cell`)\\\n * `import \"@ui5/webcomponents/dist/TableHeaderRow.js\";` (`ui5-table-header-row`)\\\n * `import \"@ui5/webcomponents/dist/TableHeaderCell.js\";` (`ui5-table-header-cell`)\n *\n * @constructor\n * @extends UI5Element\n * @since 2.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-table\",\n\trenderer: litRender,\n\tstyles: TableStyles,\n\ttemplate: TableTemplate,\n\tfastNavigation: true,\n\tdependencies: [\n\t\tBusyIndicator,\n\t\tTableCell,\n\t\tTableRow,\n\t],\n})\n\n/**\n * Fired when an interactive row is clicked.\n *\n * @param {TableRow} row The row instance\n * @public\n */\n@event<TableRowClickEventDetail>(\"row-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\trow: { type: TableRow },\n\t},\n})\n\nclass Table extends UI5Element {\n\t/**\n\t * Defines the rows of the component.\n\t *\n\t * Note: Use <code>ui5-table-row</code> for the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, \"default\": true })\n\trows!: Array<TableRow>;\n\n\t/**\n\t * Defines the header row of the component.\n\t *\n\t * Note: Use <code>ui5-table-header-row</code> for the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: { properties: false, slots: true } })\n\theaderRow!: Array<TableHeaderRow>;\n\n\t/**\n\t * Defines the custom visualization if there is no data available.\n\t *\n\t * @public\n\t */\n\t@slot()\n\tnodata!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the features of the component.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, individualSlots: true })\n\tfeatures!: Array<ITableFeature>;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Identifies the element (or elements) that labels the component.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the text to be displayed when there are no rows in the component.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tnoDataText!: string;\n\n\t/**\n\t * Defines the mode of the <code>ui5-table</code> overflow behavior.\n\t *\n\t * Available options are:\n\t *\n\t * <code>Scroll</code> - Columns are shown as regular columns and horizontal scrolling is enabled.\n\t *\n\t * <code>Popin</code> - Columns are shown as pop-ins instead of regular columns.\n\t *\n\t * @default \"Scroll\"\n\t * @public\n\t */\n\t@property({ type: TableOverflowMode, defaultValue: TableOverflowMode.Scroll })\n\toverflowMode!: `${TableOverflowMode}`;\n\n\t/**\n\t * Defines if the loading indicator should be shown.\n\t *\n\t * <b>Note:</b> When the component is loading, it is non-interactive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tloading!: boolean;\n\n\t/**\n\t * Defines the sticky top offset of the table, if other sticky elements outside of the table exist.\n\t */\n\t@property({ type: String, defaultValue: \"0\" })\n\tstickyTop!: string;\n\n\t@property({ type: Integer, defaultValue: 0, noAttribute: true })\n\t_invalidate!: number;\n\n\tstatic i18nBundle: I18nBundle;\n\tstatic async onDefine() {\n\t\tTable.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\t_events = [\"keydown\", \"keyup\", \"click\", \"focusin\", \"focusout\"];\n\t_onEventBound: (e: Event) => void;\n\t_onResizeBound: ResizeObserverCallback;\n\t_tableNavigation?: TableNavigation;\n\t_poppedIn: Array<{col: TableHeaderCell, width: float}>;\n\t_containerWidth: number;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._poppedIn = [];\n\t\tthis._containerWidth = 0;\n\t\tthis._onResizeBound = this._onResize.bind(this);\n\t\tthis._onEventBound = this._onEvent.bind(this);\n\t}\n\n\tonEnterDOM() {\n\t\tif (this.overflowMode === TableOverflowMode.Popin) {\n\t\t\tResizeHandler.register(this, this._onResizeBound);\n\t\t}\n\t\tthis._events.forEach(eventType => this.addEventListener(eventType, this._onEventBound));\n\t\tthis.features.forEach(feature => feature.onTableActivate(this));\n\t\tthis._tableNavigation = new TableNavigation(this);\n\t}\n\n\tonExitDOM() {\n\t\tthis._tableNavigation = undefined;\n\t\tthis._events.forEach(eventType => this.addEventListener(eventType, this._onEventBound));\n\t\tif (this.overflowMode === TableOverflowMode.Popin) {\n\t\t\tResizeHandler.deregister(this, this._onResizeBound);\n\t\t}\n\t}\n\n\tonBeforeRendering(): void {\n\t\tthis.style.setProperty(getScopedVarName(\"--ui5_grid_sticky_top\"), this.stickyTop);\n\t\tthis._refreshPopinState();\n\t}\n\n\tonAfterRendering(): void {\n\t\tthis.features.forEach(feature => feature.onTableRendered?.());\n\t}\n\n\t_getFeature<Klass>(klass: any): Klass | undefined {\n\t\treturn this.features.find(feature => feature instanceof klass) as Klass;\n\t}\n\n\t_getSelection(): TableSelection | undefined {\n\t\treturn this._getFeature(TableSelection);\n\t}\n\n\t_onEvent(e: Event) {\n\t\tconst composedPath = e.composedPath();\n\t\tconst eventOrigin = composedPath[0] as HTMLElement;\n\t\tconst elements = [this._tableNavigation, ...composedPath, ...this.features];\n\t\telements.forEach(element => {\n\t\t\tif (element instanceof TableExtension || (element instanceof HTMLElement && element.localName.includes(\"ui5-table\"))) {\n\t\t\t\tconst eventHandlerName = `_on${e.type}` as keyof typeof element;\n\t\t\t\tconst eventHandler = element[eventHandlerName] as (e?: Event, eventOrigin?: HTMLElement) => void;\n\t\t\t\tif (typeof eventHandler === \"function\") {\n\t\t\t\t\teventHandler.call(element, e, eventOrigin);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\t_onResize() {\n\t\tconst { clientWidth, scrollWidth } = this._tableElement;\n\n\t\tif (scrollWidth > clientWidth) {\n\t\t\t// Overflow Handling: Move columns into the popin until overflow is resolved\n\t\t\tconst overflow = scrollWidth - clientWidth;\n\t\t\tconst headers = this._getPopinOrderedColumns(false);\n\t\t\tconst poppedInWidth = headers.reduce((totalPoppedInWidth, headerCell) => {\n\t\t\t\tif (totalPoppedInWidth < overflow && !headerCell._popin) {\n\t\t\t\t\tconst headerWidth = Math.ceil(headerCell.getBoundingClientRect().width);\n\t\t\t\t\ttotalPoppedInWidth += headerWidth;\n\t\t\t\t\tthis._setHeaderPopinState(headerCell, true, headerWidth);\n\t\t\t\t}\n\t\t\t\treturn totalPoppedInWidth;\n\t\t\t}, 0);\n\t\t\t// Calculate container width considering popped-in columns\n\t\t\tconst columnOverflow = poppedInWidth - overflow;\n\t\t\tthis._containerWidth = clientWidth - columnOverflow;\n\t\t} else {\n\t\t\t// Underflow Handling: Restore columns from popin until container width is met\n\t\t\tconst headers = this._getPopinOrderedColumns(true).filter(it => it._popin);\n\n\t\t\theaders.every(headerCell => {\n\t\t\t\tconst underflow = clientWidth - this._containerWidth;\n\t\t\t\tif (underflow >= headerCell._popinWidth) {\n\t\t\t\t\tthis._containerWidth += headerCell._popinWidth;\n\t\t\t\t\tthis._setHeaderPopinState(headerCell, false, 0);\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t});\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\t// Handles focus that is below sticky element\n\t\tconst stickyElements = this._stickyElements;\n\n\t\tif (stickyElements.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Find the sticky element that is closest to the focused element\n\t\tconst target = e.target as HTMLElement;\n\t\tconst element = target.closest(\"ui5-table-cell, ui5-table-row\") as HTMLElement ?? target;\n\t\tconst elementRect = element.getBoundingClientRect();\n\t\tconst stickyBottom = stickyElements.reduce((min, stickyElement) => {\n\t\t\tconst stickyRect = stickyElement.getBoundingClientRect();\n\n\t\t\tif (stickyRect.bottom > elementRect.top) {\n\t\t\t\treturn Math.max(min, stickyRect.bottom);\n\t\t\t}\n\t\t\treturn min;\n\t\t}, -Infinity);\n\n\t\t// If the focused element is not behind any sticky element, do nothing\n\t\tif (stickyBottom === -Infinity) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Scroll the focused element into view\n\t\tconst scrollContainer = this._scrollContainer;\n\t\tscrollContainer.scrollBy({\n\t\t\ttop: elementRect.top - stickyBottom,\n\t\t});\n\t}\n\n\t/**\n\t * Refreshes the popin state of the columns.\n\t * Syncs the popin state of the columns with the popin state of the header cells.\n\t * This is needed when additional rows are manually added and no resize happens.\n\t * @private\n\t */\n\t_refreshPopinState() {\n\t\tthis.headerRow[0].cells.forEach((header, index) => {\n\t\t\tthis.rows.forEach(row => {\n\t\t\t\tconst cell = row.cells[index];\n\t\t\t\tif (cell && cell._popin !== header._popin) {\n\t\t\t\t\tcell._popin = header._popin;\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t_onGrow() {\n\t\tthis._growing?.loadMore();\n\t}\n\n\t_getPopinOrderedColumns(reverse: boolean) {\n\t\tlet headers = [...this.headerRow[0].cells];\n\t\theaders = headers.reverse(); // reverse the \"visual\" order\n\t\theaders = headers.sort((a, b) => a.importance - b.importance); // sort by importance (asc)\n\t\theaders.pop(); // remove the most important column, as it will not be popped in\n\n\t\tif (reverse) {\n\t\t\theaders = headers.reverse();\n\t\t}\n\n\t\treturn headers;\n\t}\n\n\t_setHeaderPopinState(headerCell: TableHeaderCell, inPopin: boolean, popinWidth: number) {\n\t\tconst headerIndex = this.headerRow[0].cells.indexOf(headerCell);\n\t\theaderCell._popin = inPopin;\n\t\theaderCell._popinWidth = popinWidth;\n\t\tthis.rows.forEach(row => {\n\t\t\trow.cells[headerIndex]._popin = inPopin;\n\t\t});\n\t}\n\n\t_isFeature(feature: any) {\n\t\treturn Boolean(feature.onTableActivate && feature.onTableRendered);\n\t}\n\n\t_isGrowingFeature(feature: any) {\n\t\treturn Boolean(feature.loadMore && feature.hasGrowingComponent && this._isFeature(feature));\n\t}\n\n\t_onRowPress(row: TableRow) {\n\t\tthis.fireEvent<TableRowClickEventDetail>(\"row-click\", { row });\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\ttable: {\n\t\t\t\t\"grid-template-columns\": this._gridTemplateColumns,\n\t\t\t},\n\t\t};\n\t}\n\n\tget _gridTemplateColumns() {\n\t\tconst widths = [];\n\t\tconst visibleHeaderCells = this.headerRow[0]._visibleCells as TableHeaderCell[];\n\t\tif (this._getSelection()?.hasRowSelector()) {\n\t\t\twidths.push(`var(${getScopedVarName(\"--_ui5_checkbox_width_height\")})`);\n\t\t}\n\t\twidths.push(...visibleHeaderCells.map(cell => {\n\t\t\tconst minWidth = cell.minWidth === \"auto\" ? \"3rem\" : cell.minWidth;\n\t\t\tif (cell.width === \"auto\" || cell.width.includes(\"%\") || cell.width.includes(\"fr\") || cell.width.includes(\"vw\")) {\n\t\t\t\treturn `minmax(${minWidth}, ${cell.maxWidth})`;\n\t\t\t}\n\t\t\treturn `minmax(${cell.width}, ${cell.width})`;\n\t\t}));\n\t\treturn widths.join(\" \");\n\t}\n\n\tget _tableOverflowX() {\n\t\treturn (this.overflowMode === TableOverflowMode.Popin) ? \"hidden\" : \"auto\";\n\t}\n\n\tget _tableOverflowY() {\n\t\treturn \"auto\";\n\t}\n\n\tget _nodataRow() {\n\t\treturn this.shadowRoot!.getElementById(\"nodata-row\") as TableRow;\n\t}\n\n\tget _beforeElement() {\n\t\treturn this.shadowRoot!.getElementById(\"before\") as HTMLElement;\n\t}\n\n\tget _afterElement() {\n\t\treturn this.shadowRoot!.getElementById(\"after\") as HTMLElement;\n\t}\n\n\tget _tableElement() {\n\t\treturn this.shadowRoot!.getElementById(\"table\") as HTMLElement;\n\t}\n\n\tget _effectiveNoDataText() {\n\t\treturn this.noDataText || Table.i18nBundle.getText(TABLE_NO_DATA);\n\t}\n\n\tget _ariaLabel() {\n\t\treturn getEffectiveAriaLabelText(this) || undefined;\n\t}\n\n\tget _ariaMultiSelectable() {\n\t\tconst selection = this._getSelection();\n\t\treturn (selection?.isSelectable() && this.rows.length) ? selection.isMultiSelect() : undefined;\n\t}\n\n\tget _shouldRenderGrowing() {\n\t\treturn this.rows.length && this._growing?.hasGrowingComponent();\n\t}\n\n\tget _growing() {\n\t\treturn this.features.find(feature => this._isGrowingFeature(feature)) as ITableGrowing;\n\t}\n\n\t// TODO: Could be moved to UI5Element. TBD\n\tget _scrollContainer() {\n\t\tlet element: HTMLElement = this as HTMLElement;\n\t\twhile (element) {\n\t\t\tconst { overflowY } = window.getComputedStyle(element);\n\t\t\tif (overflowY === \"auto\" || overflowY === \"scroll\") {\n\t\t\t\treturn element;\n\t\t\t}\n\t\t\telement = element.parentElement as HTMLElement;\n\t\t}\n\n\t\treturn document.scrollingElement as HTMLElement || document.documentElement;\n\t}\n\n\tget _stickyElements() {\n\t\treturn [this.headerRow[0]].filter(row => row.sticky);\n\t}\n}\n\nTable.define();\n\nexport default Table;\n\nexport type {\n\tITableFeature,\n\tITableGrowing,\n\tTableRowClickEventDetail,\n};\n"]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import TableCellBase from "./TableCellBase.js";
|
|
2
|
+
/**
|
|
3
|
+
* @class
|
|
4
|
+
*
|
|
5
|
+
* ### Overview
|
|
6
|
+
*
|
|
7
|
+
* The `ui5-table-cell` represents a cell inside of a `ui5-table`.
|
|
8
|
+
* It is tightly coupled to the `ui5-table` and thus should only be used in the table component.
|
|
9
|
+
*
|
|
10
|
+
* ### ES6 Module Import
|
|
11
|
+
*
|
|
12
|
+
* `import @ui5/webcomponents/dist/TableCell.js;`
|
|
13
|
+
*
|
|
14
|
+
* @constructor
|
|
15
|
+
* @extends TableCellBase
|
|
16
|
+
* @since 2.0
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
declare class TableCell extends TableCellBase {
|
|
20
|
+
get _popinHeader(): Node;
|
|
21
|
+
get _i18nPopinColon(): string;
|
|
22
|
+
}
|
|
23
|
+
export default TableCell;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
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
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
8
|
+
import TableCellTemplate from "./generated/templates/TableCellTemplate.lit.js";
|
|
9
|
+
import TableCellStyles from "./generated/themes/TableCell.css.js";
|
|
10
|
+
import TableCellBase from "./TableCellBase.js";
|
|
11
|
+
import { LABEL_COLON } from "./generated/i18n/i18n-defaults.js";
|
|
12
|
+
/**
|
|
13
|
+
* @class
|
|
14
|
+
*
|
|
15
|
+
* ### Overview
|
|
16
|
+
*
|
|
17
|
+
* The `ui5-table-cell` represents a cell inside of a `ui5-table`.
|
|
18
|
+
* It is tightly coupled to the `ui5-table` and thus should only be used in the table component.
|
|
19
|
+
*
|
|
20
|
+
* ### ES6 Module Import
|
|
21
|
+
*
|
|
22
|
+
* `import @ui5/webcomponents/dist/TableCell.js;`
|
|
23
|
+
*
|
|
24
|
+
* @constructor
|
|
25
|
+
* @extends TableCellBase
|
|
26
|
+
* @since 2.0
|
|
27
|
+
* @public
|
|
28
|
+
*/
|
|
29
|
+
let TableCell = class TableCell extends TableCellBase {
|
|
30
|
+
get _popinHeader() {
|
|
31
|
+
const row = this.parentElement;
|
|
32
|
+
const table = row.parentElement;
|
|
33
|
+
const index = row.cells.indexOf(this);
|
|
34
|
+
const headerCell = table.headerRow[0].cells[index];
|
|
35
|
+
return headerCell.content[0]?.cloneNode(true);
|
|
36
|
+
}
|
|
37
|
+
get _i18nPopinColon() {
|
|
38
|
+
return TableCellBase.i18nBundle.getText(LABEL_COLON);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
TableCell = __decorate([
|
|
42
|
+
customElement({
|
|
43
|
+
tag: "ui5-table-cell",
|
|
44
|
+
styles: [TableCellBase.styles, TableCellStyles],
|
|
45
|
+
template: TableCellTemplate,
|
|
46
|
+
})
|
|
47
|
+
], TableCell);
|
|
48
|
+
TableCell.define();
|
|
49
|
+
export default TableCell;
|
|
50
|
+
//# sourceMappingURL=TableCell.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableCell.js","sourceRoot":"","sources":["../src/TableCell.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,iBAAiB,MAAM,gDAAgD,CAAC;AAC/E,OAAO,eAAe,MAAM,qCAAqC,CAAC;AAClE,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAG/C,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE;;;;;;;;;;;;;;;;GAgBG;AAMH,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,aAAa;IACpC,IAAI,YAAY;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,aAAyB,CAAC;QAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,aAAsB,CAAC;QACzC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACnD,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;CACD,CAAA;AAZK,SAAS;IALd,aAAa,CAAC;QACd,GAAG,EAAE,gBAAgB;QACrB,MAAM,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,eAAe,CAAC;QAC/C,QAAQ,EAAE,iBAAiB;KAC3B,CAAC;GACI,SAAS,CAYd;AAED,SAAS,CAAC,MAAM,EAAE,CAAC;AAEnB,eAAe,SAAS,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport TableCellTemplate from \"./generated/templates/TableCellTemplate.lit.js\";\nimport TableCellStyles from \"./generated/themes/TableCell.css.js\";\nimport TableCellBase from \"./TableCellBase.js\";\nimport type TableRow from \"./TableRow.js\";\nimport type Table from \"./Table.js\";\nimport { LABEL_COLON } from \"./generated/i18n/i18n-defaults.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-cell` represents a cell inside of a `ui5-table`.\n * It is tightly coupled to the `ui5-table` and thus should only be used in the table component.\n *\n * ### ES6 Module Import\n *\n * `import @ui5/webcomponents/dist/TableCell.js;`\n *\n * @constructor\n * @extends TableCellBase\n * @since 2.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-table-cell\",\n\tstyles: [TableCellBase.styles, TableCellStyles],\n\ttemplate: TableCellTemplate,\n})\nclass TableCell extends TableCellBase {\n\tget _popinHeader() {\n\t\tconst row = this.parentElement as TableRow;\n\t\tconst table = row.parentElement as Table;\n\t\tconst index = row.cells.indexOf(this);\n\t\tconst headerCell = table.headerRow[0].cells[index];\n\t\treturn headerCell.content[0]?.cloneNode(true);\n\t}\n\n\tget _i18nPopinColon() {\n\t\treturn TableCellBase.i18nBundle.getText(LABEL_COLON);\n\t}\n}\n\nTableCell.define();\n\nexport default TableCell;\n"]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
|
+
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
3
|
+
/**
|
|
4
|
+
* @class
|
|
5
|
+
* A class to serve as a foundation for the `TableCell` and `TableHeaderCell` classes.
|
|
6
|
+
* @constructor
|
|
7
|
+
* @abstract
|
|
8
|
+
* @extends UI5Element
|
|
9
|
+
* @since 2.0
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
declare abstract class TableCellBase extends UI5Element {
|
|
13
|
+
/**
|
|
14
|
+
* Defines the content of the component.
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
content: Array<Node>;
|
|
18
|
+
_popin: boolean;
|
|
19
|
+
protected ariaRole: string;
|
|
20
|
+
static i18nBundle: I18nBundle;
|
|
21
|
+
static onDefine(): Promise<void>;
|
|
22
|
+
onBeforeRendering(): void;
|
|
23
|
+
getFocusDomRef(): this;
|
|
24
|
+
}
|
|
25
|
+
export default TableCellBase;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
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
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var TableCellBase_1;
|
|
8
|
+
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
9
|
+
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
10
|
+
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
11
|
+
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
12
|
+
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
13
|
+
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
14
|
+
import TableCellBaseStyles from "./generated/themes/TableCellBase.css.js";
|
|
15
|
+
/**
|
|
16
|
+
* @class
|
|
17
|
+
* A class to serve as a foundation for the `TableCell` and `TableHeaderCell` classes.
|
|
18
|
+
* @constructor
|
|
19
|
+
* @abstract
|
|
20
|
+
* @extends UI5Element
|
|
21
|
+
* @since 2.0
|
|
22
|
+
* @public
|
|
23
|
+
*/
|
|
24
|
+
let TableCellBase = TableCellBase_1 = class TableCellBase extends UI5Element {
|
|
25
|
+
constructor() {
|
|
26
|
+
super(...arguments);
|
|
27
|
+
this.ariaRole = "gridcell";
|
|
28
|
+
}
|
|
29
|
+
static async onDefine() {
|
|
30
|
+
TableCellBase_1.i18nBundle = await getI18nBundle("@ui5/webcomponents");
|
|
31
|
+
}
|
|
32
|
+
onBeforeRendering() {
|
|
33
|
+
if (this._popin) {
|
|
34
|
+
this.removeAttribute("role");
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
this.setAttribute("role", this.ariaRole);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
getFocusDomRef() {
|
|
41
|
+
return this;
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
__decorate([
|
|
45
|
+
slot({ type: Node, "default": true })
|
|
46
|
+
], TableCellBase.prototype, "content", void 0);
|
|
47
|
+
__decorate([
|
|
48
|
+
property({ type: Boolean })
|
|
49
|
+
], TableCellBase.prototype, "_popin", void 0);
|
|
50
|
+
TableCellBase = TableCellBase_1 = __decorate([
|
|
51
|
+
customElement({
|
|
52
|
+
renderer: litRender,
|
|
53
|
+
styles: TableCellBaseStyles,
|
|
54
|
+
})
|
|
55
|
+
], TableCellBase);
|
|
56
|
+
export default TableCellBase;
|
|
57
|
+
//# sourceMappingURL=TableCellBase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableCellBase.js","sourceRoot":"","sources":["../src/TableCellBase.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAC3E,OAAO,mBAAmB,MAAM,yCAAyC,CAAC;AAE1E;;;;;;;;GAQG;AAKH,IAAe,aAAa,qBAA5B,MAAe,aAAc,SAAQ,UAAU;IAA/C;;QAWW,aAAQ,GAAW,UAAU,CAAC;IAkBzC,CAAC;IAfA,MAAM,CAAC,KAAK,CAAC,QAAQ;QACpB,eAAa,CAAC,UAAU,GAAG,MAAM,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACtE,CAAC;IAED,iBAAiB;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;SAC7B;aAAM;YACN,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SACzC;IACF,CAAC;IAED,cAAc;QACb,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAA;AAvBA;IADC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;8CAChB;AAGtB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;6CACX;AATH,aAAa;IAJ3B,aAAa,CAAC;QACd,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,mBAAmB;KAC3B,CAAC;GACa,aAAa,CA6B3B;AAED,eAAe,aAAa,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport TableCellBaseStyles from \"./generated/themes/TableCellBase.css.js\";\n\n/**\n * @class\n * A class to serve as a foundation for the `TableCell` and `TableHeaderCell` classes.\n * @constructor\n * @abstract\n * @extends UI5Element\n * @since 2.0\n * @public\n */\n@customElement({\n\trenderer: litRender,\n\tstyles: TableCellBaseStyles,\n})\nabstract class TableCellBase extends UI5Element {\n\t/**\n\t * Defines the content of the component.\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true })\n\tcontent!: Array<Node>;\n\n\t@property({ type: Boolean })\n\t_popin!: boolean;\n\n\tprotected ariaRole: string = \"gridcell\";\n\n\tstatic i18nBundle: I18nBundle;\n\tstatic async onDefine() {\n\t\tTableCellBase.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this._popin) {\n\t\t\tthis.removeAttribute(\"role\");\n\t\t} else {\n\t\t\tthis.setAttribute(\"role\", this.ariaRole);\n\t\t}\n\t}\n\n\tgetFocusDomRef() {\n\t\treturn this;\n\t}\n}\n\nexport default TableCellBase;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableExtension.js","sourceRoot":"","sources":["../src/TableExtension.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAgB,cAAc;CAAG","sourcesContent":["/**\n * Base class for the extensions of <code>ui5-table</code> components.\n * @private\n */\nexport default abstract class TableExtension {}\n"]}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
|
+
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
3
|
+
import type Table from "./Table.js";
|
|
4
|
+
import type { ITableGrowing } from "./Table.js";
|
|
5
|
+
import TableGrowingMode from "./types/TableGrowingMode.js";
|
|
6
|
+
/**
|
|
7
|
+
* @class
|
|
8
|
+
*
|
|
9
|
+
* ### Overview
|
|
10
|
+
*
|
|
11
|
+
* The `ui5-table-growing` component is used inside the `ui5-table` to add a growing/data loading functionalities
|
|
12
|
+
* to the table.
|
|
13
|
+
*
|
|
14
|
+
* The component offers two options:
|
|
15
|
+
* * Button - a More button is displayed, clicking it will load more data.
|
|
16
|
+
* * Scroll - additional data is loaded automatically when the user scrolls to the end of the table.
|
|
17
|
+
*
|
|
18
|
+
* ### Usage
|
|
19
|
+
*
|
|
20
|
+
* The `ui5-table-growing` component is only used inside the `ui5-table` component as a feature.
|
|
21
|
+
* It has to be slotted inside the `ui5-table` in the `features` slot.
|
|
22
|
+
* The component is not intended to be used as a standalone component.
|
|
23
|
+
*
|
|
24
|
+
* ```html
|
|
25
|
+
* <ui5-table>
|
|
26
|
+
* <ui5-table-growing type="Button" growing-text="More" slot="features"></ui5-table-growing>
|
|
27
|
+
* </ui5-table>
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* ### ES6 Module Import
|
|
31
|
+
*
|
|
32
|
+
* `import "@ui5/webcomponents/dist/TableGrowing.js";`
|
|
33
|
+
*
|
|
34
|
+
* @constructor
|
|
35
|
+
* @extends UI5Element
|
|
36
|
+
* @since 2.0
|
|
37
|
+
* @public
|
|
38
|
+
*/
|
|
39
|
+
declare class TableGrowing extends UI5Element implements ITableGrowing {
|
|
40
|
+
/**
|
|
41
|
+
* Defines the mode of the <code>ui5-table</code> growing.
|
|
42
|
+
*
|
|
43
|
+
* Available options are:
|
|
44
|
+
*
|
|
45
|
+
* Button - Shows a More button at the bottom of the table, pressing it will load more rows.
|
|
46
|
+
*
|
|
47
|
+
* Scroll - The rows are loaded automatically by scrolling to the bottom of the table. If the table is not scrollable, this option is the same as the Button.
|
|
48
|
+
* @default "Button"
|
|
49
|
+
* @public
|
|
50
|
+
*/
|
|
51
|
+
type: `${TableGrowingMode}`;
|
|
52
|
+
/**
|
|
53
|
+
* Defines the text that will be displayed inside the growing button.
|
|
54
|
+
* Has no effect when type is set to `Scroll`.
|
|
55
|
+
*
|
|
56
|
+
* **Note:** When not provided and the type is set to Button, a default text is displayed, corresponding to the
|
|
57
|
+
* current language.
|
|
58
|
+
*
|
|
59
|
+
* @default ""
|
|
60
|
+
* @public
|
|
61
|
+
*/
|
|
62
|
+
growingText: string;
|
|
63
|
+
/**
|
|
64
|
+
* Defines the text that will be displayed below the `growingText` inside the growing button.
|
|
65
|
+
* Has no effect when type is set to Scroll.
|
|
66
|
+
*
|
|
67
|
+
* @default ""
|
|
68
|
+
* @public
|
|
69
|
+
*/
|
|
70
|
+
growingSubText: string;
|
|
71
|
+
/**
|
|
72
|
+
* Disables the growing feature.
|
|
73
|
+
*/
|
|
74
|
+
disabled: boolean;
|
|
75
|
+
/**
|
|
76
|
+
* Defines the active state of the growing button.
|
|
77
|
+
* Used for keyboard interaction.
|
|
78
|
+
* @private
|
|
79
|
+
*/
|
|
80
|
+
_activeState?: boolean;
|
|
81
|
+
_table?: Table;
|
|
82
|
+
_observer?: IntersectionObserver;
|
|
83
|
+
_individualSlot?: string;
|
|
84
|
+
_currentLastRow?: HTMLElement;
|
|
85
|
+
_shouldFocusRow?: boolean;
|
|
86
|
+
static i18nBundle: I18nBundle;
|
|
87
|
+
static onDefine(): Promise<void>;
|
|
88
|
+
onTableActivate(table: Table): void;
|
|
89
|
+
onTableRendered(): void;
|
|
90
|
+
onExitDOM(): void;
|
|
91
|
+
onBeforeRendering(): void;
|
|
92
|
+
hasGrowingComponent(): boolean;
|
|
93
|
+
/**
|
|
94
|
+
* An event handler that can be used by the Table to notify the TableGrowing that
|
|
95
|
+
* the Table is growing either by pressing the load more button or by scrolling to the end of the table.
|
|
96
|
+
*/
|
|
97
|
+
loadMore(): void;
|
|
98
|
+
_hasScrollToLoad(): boolean;
|
|
99
|
+
/**
|
|
100
|
+
* Observes the end of the table.
|
|
101
|
+
* @private
|
|
102
|
+
*/
|
|
103
|
+
_observeTableEnd(): void;
|
|
104
|
+
/**
|
|
105
|
+
* Returns the IntersectionObserver instance. If it does not exist, it will be created.
|
|
106
|
+
* The observer will call the loadMore function when the end of the table is reached.
|
|
107
|
+
* @private
|
|
108
|
+
*/
|
|
109
|
+
_getIntersectionObserver(): IntersectionObserver;
|
|
110
|
+
_onIntersection(entries: Array<IntersectionObserverEntry>): void;
|
|
111
|
+
_invalidateTable(): void;
|
|
112
|
+
/**
|
|
113
|
+
* Handles the keydown event on the growing button.
|
|
114
|
+
*
|
|
115
|
+
* Calls the loadMore function when the Enter and Space keys are pressed.
|
|
116
|
+
* @private
|
|
117
|
+
*/
|
|
118
|
+
_onKeydown(e: KeyboardEvent): void;
|
|
119
|
+
_onKeyup(e: KeyboardEvent): void;
|
|
120
|
+
_onFocusout(): void;
|
|
121
|
+
get _growingButtonText(): string;
|
|
122
|
+
get _growingButtonDescription(): string;
|
|
123
|
+
get _hasGrowingButton(): boolean;
|
|
124
|
+
}
|
|
125
|
+
export default TableGrowing;
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
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
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var TableGrowing_1;
|
|
8
|
+
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
9
|
+
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
10
|
+
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
11
|
+
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
12
|
+
import event from "@ui5/webcomponents-base/dist/decorators/event.js";
|
|
13
|
+
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
14
|
+
import { isSpace, isEnter, } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
15
|
+
import TableGrowingMode from "./types/TableGrowingMode.js";
|
|
16
|
+
import TableGrowingTemplate from "./generated/templates/TableGrowingTemplate.lit.js";
|
|
17
|
+
import TableGrowingCss from "./generated/themes/TableGrowing.css.js";
|
|
18
|
+
import { TABLE_MORE, TABLE_MORE_DESCRIPTION, } from "./generated/i18n/i18n-defaults.js";
|
|
19
|
+
// The documentation should be similar to the Table.ts class documentation!
|
|
20
|
+
// Please only use that style where it uses markdown and the documentation is more readable.
|
|
21
|
+
/**
|
|
22
|
+
* @class
|
|
23
|
+
*
|
|
24
|
+
* ### Overview
|
|
25
|
+
*
|
|
26
|
+
* The `ui5-table-growing` component is used inside the `ui5-table` to add a growing/data loading functionalities
|
|
27
|
+
* to the table.
|
|
28
|
+
*
|
|
29
|
+
* The component offers two options:
|
|
30
|
+
* * Button - a More button is displayed, clicking it will load more data.
|
|
31
|
+
* * Scroll - additional data is loaded automatically when the user scrolls to the end of the table.
|
|
32
|
+
*
|
|
33
|
+
* ### Usage
|
|
34
|
+
*
|
|
35
|
+
* The `ui5-table-growing` component is only used inside the `ui5-table` component as a feature.
|
|
36
|
+
* It has to be slotted inside the `ui5-table` in the `features` slot.
|
|
37
|
+
* The component is not intended to be used as a standalone component.
|
|
38
|
+
*
|
|
39
|
+
* ```html
|
|
40
|
+
* <ui5-table>
|
|
41
|
+
* <ui5-table-growing type="Button" growing-text="More" slot="features"></ui5-table-growing>
|
|
42
|
+
* </ui5-table>
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
45
|
+
* ### ES6 Module Import
|
|
46
|
+
*
|
|
47
|
+
* `import "@ui5/webcomponents/dist/TableGrowing.js";`
|
|
48
|
+
*
|
|
49
|
+
* @constructor
|
|
50
|
+
* @extends UI5Element
|
|
51
|
+
* @since 2.0
|
|
52
|
+
* @public
|
|
53
|
+
*/
|
|
54
|
+
let TableGrowing = TableGrowing_1 = class TableGrowing extends UI5Element {
|
|
55
|
+
static async onDefine() {
|
|
56
|
+
TableGrowing_1.i18nBundle = await getI18nBundle("@ui5/webcomponents");
|
|
57
|
+
}
|
|
58
|
+
onTableActivate(table) {
|
|
59
|
+
this._table = table;
|
|
60
|
+
this._shouldFocusRow = false;
|
|
61
|
+
if (this._hasScrollToLoad()) {
|
|
62
|
+
this._observeTableEnd();
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
onTableRendered() {
|
|
66
|
+
// Focus the first row after growing, when the growing button is used
|
|
67
|
+
if (this._shouldFocusRow) {
|
|
68
|
+
this._shouldFocusRow = false;
|
|
69
|
+
let focusRow = this._currentLastRow?.nextElementSibling;
|
|
70
|
+
if (this.hasGrowingComponent()) {
|
|
71
|
+
focusRow ||= this.getFocusDomRef();
|
|
72
|
+
}
|
|
73
|
+
focusRow ||= this._table?.rows[0];
|
|
74
|
+
focusRow?.focus();
|
|
75
|
+
}
|
|
76
|
+
if (this.disabled) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
if (this._hasScrollToLoad()) {
|
|
80
|
+
this._observeTableEnd();
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
onExitDOM() {
|
|
84
|
+
this._table = undefined;
|
|
85
|
+
this._observer?.disconnect();
|
|
86
|
+
this._observer = undefined;
|
|
87
|
+
this._currentLastRow = undefined;
|
|
88
|
+
}
|
|
89
|
+
onBeforeRendering() {
|
|
90
|
+
this._observer?.disconnect();
|
|
91
|
+
this._observer = undefined;
|
|
92
|
+
this._currentLastRow = undefined;
|
|
93
|
+
this._invalidateTable();
|
|
94
|
+
}
|
|
95
|
+
hasGrowingComponent() {
|
|
96
|
+
if (this._hasScrollToLoad()) {
|
|
97
|
+
return !(this._table && this._table._scrollContainer.scrollHeight > this._table._scrollContainer.clientHeight) ?? true;
|
|
98
|
+
}
|
|
99
|
+
return this.type === TableGrowingMode.Button && !this.disabled;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* An event handler that can be used by the Table to notify the TableGrowing that
|
|
103
|
+
* the Table is growing either by pressing the load more button or by scrolling to the end of the table.
|
|
104
|
+
*/
|
|
105
|
+
loadMore() {
|
|
106
|
+
// remembers the last row. only do this when the table has a growing component rendered.
|
|
107
|
+
if (this._table && this.hasGrowingComponent()) {
|
|
108
|
+
this._currentLastRow = this._table.rows[this._table.rows.length - 1];
|
|
109
|
+
}
|
|
110
|
+
this._shouldFocusRow = true;
|
|
111
|
+
this.fireEvent("load-more");
|
|
112
|
+
}
|
|
113
|
+
_hasScrollToLoad() {
|
|
114
|
+
return this.type === TableGrowingMode.Scroll;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Observes the end of the table.
|
|
118
|
+
* @private
|
|
119
|
+
*/
|
|
120
|
+
_observeTableEnd() {
|
|
121
|
+
if (!this._table) {
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
const lastElement = this._table.shadowRoot?.querySelector("#table-end-row");
|
|
125
|
+
if (lastElement) {
|
|
126
|
+
this._getIntersectionObserver().observe(lastElement);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Returns the IntersectionObserver instance. If it does not exist, it will be created.
|
|
131
|
+
* The observer will call the loadMore function when the end of the table is reached.
|
|
132
|
+
* @private
|
|
133
|
+
*/
|
|
134
|
+
_getIntersectionObserver() {
|
|
135
|
+
if (!this._observer) {
|
|
136
|
+
this._observer = new IntersectionObserver(this._onIntersection.bind(this), {
|
|
137
|
+
root: document,
|
|
138
|
+
rootMargin: "10px",
|
|
139
|
+
threshold: 1.0,
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
return this._observer;
|
|
143
|
+
}
|
|
144
|
+
_onIntersection(entries) {
|
|
145
|
+
if (entries.some(entry => entry.isIntersecting)) {
|
|
146
|
+
this.loadMore();
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
_invalidateTable() {
|
|
150
|
+
if (!this._table) {
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
this._table._invalidate++;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Handles the keydown event on the growing button.
|
|
157
|
+
*
|
|
158
|
+
* Calls the loadMore function when the Enter and Space keys are pressed.
|
|
159
|
+
* @private
|
|
160
|
+
*/
|
|
161
|
+
_onKeydown(e) {
|
|
162
|
+
if (isSpace(e)) {
|
|
163
|
+
e.preventDefault();
|
|
164
|
+
this._activeState = true;
|
|
165
|
+
}
|
|
166
|
+
if (isEnter(e)) {
|
|
167
|
+
this.loadMore();
|
|
168
|
+
this._activeState = true;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
_onKeyup(e) {
|
|
172
|
+
if (isSpace(e)) {
|
|
173
|
+
this.loadMore();
|
|
174
|
+
}
|
|
175
|
+
this._activeState = false;
|
|
176
|
+
}
|
|
177
|
+
_onFocusout() {
|
|
178
|
+
this._activeState = false;
|
|
179
|
+
}
|
|
180
|
+
get _growingButtonText() {
|
|
181
|
+
return this.growingText || TableGrowing_1.i18nBundle.getText(TABLE_MORE);
|
|
182
|
+
}
|
|
183
|
+
get _growingButtonDescription() {
|
|
184
|
+
return TableGrowing_1.i18nBundle.getText(TABLE_MORE_DESCRIPTION);
|
|
185
|
+
}
|
|
186
|
+
get _hasGrowingButton() {
|
|
187
|
+
return this.hasGrowingComponent();
|
|
188
|
+
}
|
|
189
|
+
};
|
|
190
|
+
__decorate([
|
|
191
|
+
property({ type: TableGrowingMode, defaultValue: TableGrowingMode.Button })
|
|
192
|
+
], TableGrowing.prototype, "type", void 0);
|
|
193
|
+
__decorate([
|
|
194
|
+
property()
|
|
195
|
+
], TableGrowing.prototype, "growingText", void 0);
|
|
196
|
+
__decorate([
|
|
197
|
+
property()
|
|
198
|
+
], TableGrowing.prototype, "growingSubText", void 0);
|
|
199
|
+
__decorate([
|
|
200
|
+
property({ type: Boolean })
|
|
201
|
+
], TableGrowing.prototype, "disabled", void 0);
|
|
202
|
+
__decorate([
|
|
203
|
+
property({ type: Boolean })
|
|
204
|
+
], TableGrowing.prototype, "_activeState", void 0);
|
|
205
|
+
TableGrowing = TableGrowing_1 = __decorate([
|
|
206
|
+
customElement({
|
|
207
|
+
tag: "ui5-table-growing",
|
|
208
|
+
renderer: litRender,
|
|
209
|
+
template: TableGrowingTemplate,
|
|
210
|
+
styles: TableGrowingCss,
|
|
211
|
+
})
|
|
212
|
+
/**
|
|
213
|
+
* Fired when the growing button is pressed or the user scrolls to the end of the table.
|
|
214
|
+
*
|
|
215
|
+
* @public
|
|
216
|
+
*/
|
|
217
|
+
,
|
|
218
|
+
event("load-more")
|
|
219
|
+
], TableGrowing);
|
|
220
|
+
TableGrowing.define();
|
|
221
|
+
export default TableGrowing;
|
|
222
|
+
//# sourceMappingURL=TableGrowing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableGrowing.js","sourceRoot":"","sources":["../src/TableGrowing.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\n\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tisSpace,\n\tisEnter,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\n\nimport type Table from \"./Table.js\";\nimport type { ITableGrowing } from \"./Table.js\";\nimport TableGrowingMode from \"./types/TableGrowingMode.js\";\nimport TableGrowingTemplate from \"./generated/templates/TableGrowingTemplate.lit.js\";\nimport TableGrowingCss from \"./generated/themes/TableGrowing.css.js\";\nimport {\n\tTABLE_MORE,\n\tTABLE_MORE_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// The documentation should be similar to the Table.ts class documentation!\n// Please only use that style where it uses markdown and the documentation is more readable.\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-growing` component is used inside the `ui5-table` to add a growing/data loading functionalities\n * to the table.\n *\n * The component offers two options:\n * * Button - a More button is displayed, clicking it will load more data.\n * * Scroll - additional data is loaded automatically when the user scrolls to the end of the table.\n *\n * ### Usage\n *\n * The `ui5-table-growing` component is only used inside the `ui5-table` component as a feature.\n * It has to be slotted inside the `ui5-table` in the `features` slot.\n * The component is not intended to be used as a standalone component.\n *\n * ```html\n * <ui5-table>\n * \t<ui5-table-growing type=\"Button\" growing-text=\"More\" slot=\"features\"></ui5-table-growing>\n * </ui5-table>\n * ```\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TableGrowing.js\";`\n *\n * @constructor\n * @extends UI5Element\n * @since 2.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-table-growing\",\n\trenderer: litRender,\n\ttemplate: TableGrowingTemplate,\n\tstyles: TableGrowingCss,\n})\n\n/**\n * Fired when the growing button is pressed or the user scrolls to the end of the table.\n *\n * @public\n */\n@event(\"load-more\")\n\nclass TableGrowing extends UI5Element implements ITableGrowing {\n\t/**\n\t * Defines the mode of the <code>ui5-table</code> growing.\n\t *\n\t * Available options are:\n\t *\n\t * Button - Shows a More button at the bottom of the table, pressing it will load more rows.\n\t *\n\t * Scroll - The rows are loaded automatically by scrolling to the bottom of the table. If the table is not scrollable, this option is the same as the Button.\n\t * @default \"Button\"\n\t * @public\n\t */\n\t@property({ type: TableGrowingMode, defaultValue: TableGrowingMode.Button })\n\ttype!: `${TableGrowingMode}`;\n\n\t/**\n\t * Defines the text that will be displayed inside the growing button.\n\t * Has no effect when type is set to `Scroll`.\n\t *\n\t * **Note:** When not provided and the type is set to Button, a default text is displayed, corresponding to the\n\t * current language.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tgrowingText!: string;\n\n\t/**\n\t * Defines the text that will be displayed below the `growingText` inside the growing button.\n\t * Has no effect when type is set to Scroll.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tgrowingSubText!: string;\n\n\t/**\n\t * Disables the growing feature.\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the active state of the growing button.\n\t * Used for keyboard interaction.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_activeState?: boolean;\n\n\t_table?: Table;\n\t_observer?: IntersectionObserver;\n\t_individualSlot?: string;\n\t_currentLastRow?: HTMLElement;\n\t_shouldFocusRow?: boolean;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\tTableGrowing.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tonTableActivate(table: Table): void {\n\t\tthis._table = table;\n\t\tthis._shouldFocusRow = false;\n\t\tif (this._hasScrollToLoad()) {\n\t\t\tthis._observeTableEnd();\n\t\t}\n\t}\n\n\tonTableRendered(): void {\n\t\t// Focus the first row after growing, when the growing button is used\n\t\tif (this._shouldFocusRow) {\n\t\t\tthis._shouldFocusRow = false;\n\t\t\tlet focusRow = this._currentLastRow?.nextElementSibling as HTMLElement;\n\n\t\t\tif (this.hasGrowingComponent()) {\n\t\t\t\tfocusRow ||= this.getFocusDomRef() as HTMLElement;\n\t\t\t}\n\n\t\t\tfocusRow ||= this._table?.rows[0] as HTMLElement;\n\n\t\t\tfocusRow?.focus();\n\t\t}\n\n\t\tif (this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._hasScrollToLoad()) {\n\t\t\tthis._observeTableEnd();\n\t\t}\n\t}\n\n\tonExitDOM(): void {\n\t\tthis._table = undefined;\n\t\tthis._observer?.disconnect();\n\t\tthis._observer = undefined;\n\t\tthis._currentLastRow = undefined;\n\t}\n\n\tonBeforeRendering(): void {\n\t\tthis._observer?.disconnect();\n\t\tthis._observer = undefined;\n\t\tthis._currentLastRow = undefined;\n\t\tthis._invalidateTable();\n\t}\n\n\thasGrowingComponent(): boolean {\n\t\tif (this._hasScrollToLoad()) {\n\t\t\treturn !(this._table && this._table._scrollContainer.scrollHeight > this._table._scrollContainer.clientHeight) ?? true;\n\t\t}\n\n\t\treturn this.type === TableGrowingMode.Button && !this.disabled;\n\t}\n\n\t/**\n\t * An event handler that can be used by the Table to notify the TableGrowing that\n\t * the Table is growing either by pressing the load more button or by scrolling to the end of the table.\n\t */\n\tloadMore(): void {\n\t\t// remembers the last row. only do this when the table has a growing component rendered.\n\t\tif (this._table && this.hasGrowingComponent()) {\n\t\t\tthis._currentLastRow = this._table.rows[this._table.rows.length - 1];\n\t\t}\n\t\tthis._shouldFocusRow = true;\n\n\t\tthis.fireEvent(\"load-more\");\n\t}\n\n\t_hasScrollToLoad() {\n\t\treturn this.type === TableGrowingMode.Scroll;\n\t}\n\n\t/**\n\t * Observes the end of the table.\n\t * @private\n\t */\n\t_observeTableEnd(): void {\n\t\tif (!this._table) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst lastElement = this._table.shadowRoot?.querySelector(\"#table-end-row\");\n\t\tif (lastElement) {\n\t\t\tthis._getIntersectionObserver().observe(lastElement);\n\t\t}\n\t}\n\n\t/**\n\t * Returns the IntersectionObserver instance. If it does not exist, it will be created.\n\t * The observer will call the loadMore function when the end of the table is reached.\n\t * @private\n\t */\n\t_getIntersectionObserver(): IntersectionObserver {\n\t\tif (!this._observer) {\n\t\t\tthis._observer = new IntersectionObserver(this._onIntersection.bind(this), {\n\t\t\t\troot: document,\n\t\t\t\trootMargin: \"10px\",\n\t\t\t\tthreshold: 1.0,\n\t\t\t});\n\t\t}\n\t\treturn this._observer;\n\t}\n\n\t_onIntersection(entries: Array<IntersectionObserverEntry>) {\n\t\tif (entries.some(entry => entry.isIntersecting)) {\n\t\t\tthis.loadMore();\n\t\t}\n\t}\n\n\t_invalidateTable() {\n\t\tif (!this._table) {\n\t\t\treturn;\n\t\t}\n\t\tthis._table._invalidate++;\n\t}\n\n\t/**\n\t * Handles the keydown event on the growing button.\n\t *\n\t * Calls the loadMore function when the Enter and Space keys are pressed.\n\t * @private\n\t */\n\t_onKeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._activeState = true;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.loadMore();\n\t\t\tthis._activeState = true;\n\t\t}\n\t}\n\n\t_onKeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis.loadMore();\n\t\t}\n\t\tthis._activeState = false;\n\t}\n\n\t_onFocusout() {\n\t\tthis._activeState = false;\n\t}\n\n\tget _growingButtonText() {\n\t\treturn this.growingText || TableGrowing.i18nBundle.getText(TABLE_MORE);\n\t}\n\n\tget _growingButtonDescription() {\n\t\treturn TableGrowing.i18nBundle.getText(TABLE_MORE_DESCRIPTION);\n\t}\n\n\tget _hasGrowingButton() {\n\t\treturn this.hasGrowingComponent();\n\t}\n}\n\nTableGrowing.define();\n\nexport default TableGrowing;\n"]}
|