@ui5/webcomponents 2.6.2 → 2.7.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/README.md +1 -1
- package/cypress/specs/Table.cy.ts +32 -2
- package/cypress/specs/TableRowActions.cy.ts +212 -0
- package/cypress/specs/Toolbar.cy.ts +26 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/ColorPalette.d.ts +1 -0
- package/dist/ColorPalette.js +1 -0
- package/dist/ColorPalette.js.map +1 -1
- package/dist/DialogTemplate.js +1 -1
- package/dist/DialogTemplate.js.map +1 -1
- package/dist/Form.d.ts +0 -2
- package/dist/Form.js +0 -1
- package/dist/Form.js.map +1 -1
- package/dist/FormGroup.d.ts +0 -1
- package/dist/FormGroup.js +0 -1
- package/dist/FormGroup.js.map +1 -1
- package/dist/FormItem.d.ts +0 -1
- package/dist/FormItem.js +0 -1
- package/dist/FormItem.js.map +1 -1
- package/dist/Menu.d.ts +2 -2
- package/dist/Menu.js +34 -19
- package/dist/Menu.js.map +1 -1
- package/dist/MenuItem.d.ts +9 -2
- package/dist/MenuItem.js +50 -6
- package/dist/MenuItem.js.map +1 -1
- package/dist/NavigationMenuTemplate.js +1 -1
- package/dist/NavigationMenuTemplate.js.map +1 -1
- package/dist/Popover.d.ts +1 -1
- package/dist/Popover.js +7 -6
- package/dist/Popover.js.map +1 -1
- package/dist/Select.d.ts +1 -3
- package/dist/Select.js +4 -6
- package/dist/Select.js.map +1 -1
- package/dist/SelectPopoverTemplate.d.ts +2 -0
- package/dist/SelectPopoverTemplate.js +28 -0
- package/dist/SelectPopoverTemplate.js.map +1 -0
- package/dist/SelectTemplate.d.ts +2 -0
- package/dist/SelectTemplate.js +19 -0
- package/dist/SelectTemplate.js.map +1 -0
- package/dist/SliderBaseTemplate.js +2 -2
- package/dist/SliderBaseTemplate.js.map +1 -1
- package/dist/SuggestionListItem.d.ts +1 -1
- package/dist/SuggestionListItem.js +1 -1
- package/dist/SuggestionListItem.js.map +1 -1
- package/dist/SwitchTemplate.js +1 -1
- package/dist/SwitchTemplate.js.map +1 -1
- package/dist/Table.d.ts +31 -7
- package/dist/Table.js +43 -8
- package/dist/Table.js.map +1 -1
- package/dist/TableCell.d.ts +2 -0
- package/dist/TableCell.js +9 -4
- package/dist/TableCell.js.map +1 -1
- package/dist/TableCellBase.d.ts +2 -2
- package/dist/TableCellBase.js +3 -3
- package/dist/TableCellBase.js.map +1 -1
- package/dist/TableExtension.d.ts +1 -1
- package/dist/TableExtension.js +1 -1
- package/dist/TableExtension.js.map +1 -1
- package/dist/TableHeaderCell.d.ts +8 -0
- package/dist/TableHeaderCell.js +7 -2
- package/dist/TableHeaderCell.js.map +1 -1
- package/dist/TableHeaderRow.d.ts +2 -0
- package/dist/TableHeaderRow.js +7 -1
- package/dist/TableHeaderRow.js.map +1 -1
- package/dist/TableRow.d.ts +18 -1
- package/dist/TableRow.js +64 -5
- package/dist/TableRow.js.map +1 -1
- package/dist/TableRowAction.d.ts +45 -0
- package/dist/TableRowAction.js +72 -0
- package/dist/TableRowAction.js.map +1 -0
- package/dist/TableRowActionBase.d.ts +38 -0
- package/dist/TableRowActionBase.js +104 -0
- package/dist/TableRowActionBase.js.map +1 -0
- package/dist/TableRowActionNavigation.d.ts +27 -0
- package/dist/TableRowActionNavigation.js +53 -0
- package/dist/TableRowActionNavigation.js.map +1 -0
- package/dist/TableRowBase.d.ts +1 -0
- package/dist/TableRowBase.js +4 -0
- package/dist/TableRowBase.js.map +1 -1
- package/dist/TableVirtualizer.d.ts +2 -2
- package/dist/TableVirtualizer.js +2 -2
- package/dist/TableVirtualizer.js.map +1 -1
- package/dist/ToastTemplate.js +3 -2
- package/dist/ToastTemplate.js.map +1 -1
- package/dist/Token.d.ts +0 -5
- package/dist/Token.js +0 -8
- package/dist/Token.js.map +1 -1
- package/dist/Tokenizer.d.ts +0 -1
- package/dist/Tokenizer.js +0 -23
- package/dist/Tokenizer.js.map +1 -1
- package/dist/TokenizerPopoverTemplate.js +0 -1
- package/dist/TokenizerPopoverTemplate.js.map +1 -1
- package/dist/Toolbar.js +3 -0
- package/dist/Toolbar.js.map +1 -1
- package/dist/TreeItemBase.d.ts +1 -1
- package/dist/TreeItemTemplate.js +1 -1
- package/dist/TreeItemTemplate.js.map +1 -1
- package/dist/bundle.esm.js +2 -0
- package/dist/bundle.esm.js.map +1 -1
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/css/themes/AvatarGroup.css +1 -1
- package/dist/css/themes/Bar.css +1 -1
- package/dist/css/themes/Breadcrumbs.css +1 -1
- package/dist/css/themes/BusyIndicator.css +1 -1
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/Calendar.css +1 -1
- package/dist/css/themes/CalendarHeader.css +1 -1
- package/dist/css/themes/CalendarLegend.css +1 -1
- package/dist/css/themes/CalendarLegendItem.css +1 -1
- package/dist/css/themes/Card.css +1 -1
- package/dist/css/themes/CardHeader.css +1 -1
- package/dist/css/themes/Carousel.css +1 -1
- package/dist/css/themes/CheckBox.css +1 -1
- package/dist/css/themes/ColorPalette.css +1 -1
- package/dist/css/themes/ColorPaletteItem.css +1 -1
- package/dist/css/themes/ColorPalettePopover.css +1 -1
- package/dist/css/themes/ColorPicker.css +1 -1
- package/dist/css/themes/ComboBox.css +1 -1
- package/dist/css/themes/ComboBoxItem.css +1 -1
- package/dist/css/themes/DatePicker.css +1 -1
- package/dist/css/themes/DateTimePickerPopover.css +1 -1
- package/dist/css/themes/DayPicker.css +1 -1
- package/dist/css/themes/Dialog.css +1 -1
- package/dist/css/themes/FileUploader.css +1 -1
- package/dist/css/themes/Form.css +1 -1
- package/dist/css/themes/FormItem.css +1 -1
- package/dist/css/themes/FormItemSpan.css +1 -1
- package/dist/css/themes/GrowingButton.css +1 -1
- package/dist/css/themes/Icon.css +1 -1
- package/dist/css/themes/Input.css +1 -1
- package/dist/css/themes/InputIcon.css +1 -1
- package/dist/css/themes/InputSharedStyles.css +1 -1
- package/dist/css/themes/Label.css +1 -1
- package/dist/css/themes/Link.css +1 -1
- package/dist/css/themes/List.css +1 -1
- package/dist/css/themes/ListItem.css +1 -1
- package/dist/css/themes/ListItemBase.css +1 -1
- package/dist/css/themes/ListItemCustom.css +1 -1
- package/dist/css/themes/ListItemGroup.css +1 -1
- package/dist/css/themes/ListItemGroupHeader.css +1 -1
- package/dist/css/themes/ListItemIcon.css +1 -1
- package/dist/css/themes/Menu.css +1 -1
- package/dist/css/themes/MenuItem.css +1 -1
- package/dist/css/themes/MessageStrip.css +1 -1
- package/dist/css/themes/MonthPicker.css +1 -1
- package/dist/css/themes/MultiComboBox.css +1 -1
- package/dist/css/themes/MultiComboBoxItem.css +1 -1
- package/dist/css/themes/MultiComboBoxPopover.css +1 -1
- package/dist/css/themes/MultiInput.css +1 -1
- package/dist/css/themes/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/SuggestionItem.css +1 -1
- package/dist/css/themes/SuggestionItemCustom.css +1 -1
- package/dist/css/themes/Switch.css +1 -1
- package/dist/css/themes/TabContainer.css +1 -1
- package/dist/css/themes/TabInOverflow.css +1 -1
- package/dist/css/themes/TabInStrip.css +1 -1
- package/dist/css/themes/TabSemanticIcon.css +1 -1
- package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
- package/dist/css/themes/Table.css +1 -1
- package/dist/css/themes/TableCellBase.css +1 -1
- package/dist/css/themes/TableHeaderRow.css +1 -1
- package/dist/css/themes/TableRow.css +1 -1
- package/dist/css/themes/TableRowActionBase.css +1 -0
- package/dist/css/themes/TableRowBase.css +1 -1
- package/dist/css/themes/Tag.css +1 -1
- package/dist/css/themes/Text.css +1 -1
- package/dist/css/themes/TextArea.css +1 -1
- package/dist/css/themes/TimePicker.css +1 -1
- package/dist/css/themes/Toast.css +1 -1
- package/dist/css/themes/ToggleButton.css +1 -1
- package/dist/css/themes/Token.css +1 -1
- package/dist/css/themes/Tokenizer.css +1 -1
- package/dist/css/themes/TokenizerPopover.css +1 -1
- package/dist/css/themes/Toolbar.css +1 -1
- package/dist/css/themes/ToolbarPopover.css +1 -1
- package/dist/css/themes/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_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +489 -53
- package/dist/custom-elements.json +392 -34
- package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/i18n/i18n-defaults.d.ts +3 -1
- package/dist/generated/i18n/i18n-defaults.js +3 -1
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/json-imports/Themes-fetch.js +1 -5
- package/dist/generated/json-imports/Themes-fetch.js.map +1 -1
- package/dist/generated/json-imports/Themes.js +1 -5
- package/dist/generated/json-imports/Themes.js.map +1 -1
- package/dist/generated/templates/TableCellTemplate.lit.js +6 -4
- package/dist/generated/templates/TableCellTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TableHeaderRowTemplate.lit.js +3 -2
- package/dist/generated/templates/TableHeaderRowTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TableRowActionBaseTemplate.lit.d.ts +3 -0
- package/dist/generated/templates/TableRowActionBaseTemplate.lit.js +11 -0
- package/dist/generated/templates/TableRowActionBaseTemplate.lit.js.map +1 -0
- package/dist/generated/templates/TableRowTemplate.lit.js +8 -4
- package/dist/generated/templates/TableRowTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TableTemplate.lit.js +1 -1
- package/dist/generated/templates/TableTemplate.lit.js.map +1 -1
- package/dist/generated/themes/Avatar.css.d.ts +1 -1
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Avatar.css.js.map +1 -1
- package/dist/generated/themes/AvatarGroup.css.d.ts +1 -1
- package/dist/generated/themes/AvatarGroup.css.js +1 -1
- package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
- package/dist/generated/themes/Bar.css.d.ts +1 -1
- package/dist/generated/themes/Bar.css.js +1 -1
- package/dist/generated/themes/Bar.css.js.map +1 -1
- package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
- package/dist/generated/themes/BusyIndicator.css.d.ts +1 -1
- package/dist/generated/themes/BusyIndicator.css.js +1 -1
- package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
- package/dist/generated/themes/Button.css.d.ts +1 -1
- package/dist/generated/themes/Button.css.js +1 -1
- package/dist/generated/themes/Button.css.js.map +1 -1
- package/dist/generated/themes/Calendar.css.d.ts +1 -1
- package/dist/generated/themes/Calendar.css.js +1 -1
- package/dist/generated/themes/Calendar.css.js.map +1 -1
- package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
- package/dist/generated/themes/CalendarHeader.css.js +1 -1
- package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegend.css.d.ts +1 -1
- package/dist/generated/themes/CalendarLegend.css.js +1 -1
- package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.d.ts +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
- package/dist/generated/themes/Card.css.d.ts +1 -1
- package/dist/generated/themes/Card.css.js +1 -1
- package/dist/generated/themes/Card.css.js.map +1 -1
- package/dist/generated/themes/CardHeader.css.d.ts +1 -1
- package/dist/generated/themes/CardHeader.css.js +1 -1
- package/dist/generated/themes/CardHeader.css.js.map +1 -1
- package/dist/generated/themes/Carousel.css.d.ts +1 -1
- package/dist/generated/themes/Carousel.css.js +1 -1
- package/dist/generated/themes/Carousel.css.js.map +1 -1
- package/dist/generated/themes/CheckBox.css.d.ts +1 -1
- package/dist/generated/themes/CheckBox.css.js +1 -1
- package/dist/generated/themes/CheckBox.css.js.map +1 -1
- package/dist/generated/themes/ColorPalette.css.d.ts +1 -1
- package/dist/generated/themes/ColorPalette.css.js +1 -1
- package/dist/generated/themes/ColorPalette.css.js.map +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.d.ts +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
- package/dist/generated/themes/ColorPicker.css.d.ts +1 -1
- package/dist/generated/themes/ColorPicker.css.js +1 -1
- package/dist/generated/themes/ColorPicker.css.js.map +1 -1
- package/dist/generated/themes/ComboBox.css.d.ts +1 -1
- package/dist/generated/themes/ComboBox.css.js +1 -1
- package/dist/generated/themes/ComboBox.css.js.map +1 -1
- package/dist/generated/themes/ComboBoxItem.css.d.ts +1 -1
- package/dist/generated/themes/ComboBoxItem.css.js +1 -1
- package/dist/generated/themes/ComboBoxItem.css.js.map +1 -1
- package/dist/generated/themes/DatePicker.css.d.ts +1 -1
- package/dist/generated/themes/DatePicker.css.js +1 -1
- package/dist/generated/themes/DatePicker.css.js.map +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.d.ts +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
- package/dist/generated/themes/DayPicker.css.d.ts +1 -1
- package/dist/generated/themes/DayPicker.css.js +1 -1
- package/dist/generated/themes/DayPicker.css.js.map +1 -1
- package/dist/generated/themes/Dialog.css.d.ts +1 -1
- package/dist/generated/themes/Dialog.css.js +1 -1
- package/dist/generated/themes/Dialog.css.js.map +1 -1
- package/dist/generated/themes/FileUploader.css.d.ts +1 -1
- package/dist/generated/themes/FileUploader.css.js +1 -1
- package/dist/generated/themes/FileUploader.css.js.map +1 -1
- package/dist/generated/themes/Form.css.d.ts +1 -1
- package/dist/generated/themes/Form.css.js +1 -1
- package/dist/generated/themes/Form.css.js.map +1 -1
- package/dist/generated/themes/FormItem.css.d.ts +1 -1
- package/dist/generated/themes/FormItem.css.js +1 -1
- package/dist/generated/themes/FormItem.css.js.map +1 -1
- package/dist/generated/themes/FormItemSpan.css.d.ts +1 -1
- package/dist/generated/themes/FormItemSpan.css.js +1 -1
- package/dist/generated/themes/FormItemSpan.css.js.map +1 -1
- package/dist/generated/themes/GrowingButton.css.d.ts +1 -1
- package/dist/generated/themes/GrowingButton.css.js +1 -1
- package/dist/generated/themes/GrowingButton.css.js.map +1 -1
- package/dist/generated/themes/Icon.css.d.ts +1 -1
- package/dist/generated/themes/Icon.css.js +1 -1
- package/dist/generated/themes/Icon.css.js.map +1 -1
- package/dist/generated/themes/Input.css.d.ts +1 -1
- package/dist/generated/themes/Input.css.js +1 -1
- package/dist/generated/themes/Input.css.js.map +1 -1
- package/dist/generated/themes/InputIcon.css.d.ts +1 -1
- package/dist/generated/themes/InputIcon.css.js +1 -1
- package/dist/generated/themes/InputIcon.css.js.map +1 -1
- package/dist/generated/themes/InputSharedStyles.css.d.ts +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
- package/dist/generated/themes/Label.css.d.ts +1 -1
- package/dist/generated/themes/Label.css.js +1 -1
- package/dist/generated/themes/Label.css.js.map +1 -1
- package/dist/generated/themes/Link.css.d.ts +1 -1
- package/dist/generated/themes/Link.css.js +1 -1
- package/dist/generated/themes/Link.css.js.map +1 -1
- package/dist/generated/themes/List.css.d.ts +1 -1
- package/dist/generated/themes/List.css.js +1 -1
- package/dist/generated/themes/List.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.d.ts +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/ListItemBase.css.d.ts +1 -1
- package/dist/generated/themes/ListItemBase.css.js +1 -1
- package/dist/generated/themes/ListItemBase.css.js.map +1 -1
- package/dist/generated/themes/ListItemCustom.css.d.ts +1 -1
- package/dist/generated/themes/ListItemCustom.css.js +1 -1
- package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
- package/dist/generated/themes/ListItemGroup.css.d.ts +1 -1
- package/dist/generated/themes/ListItemGroup.css.js +1 -1
- package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.d.ts +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
- package/dist/generated/themes/ListItemIcon.css.d.ts +1 -1
- package/dist/generated/themes/ListItemIcon.css.js +1 -1
- package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
- package/dist/generated/themes/Menu.css.d.ts +1 -1
- package/dist/generated/themes/Menu.css.js +1 -1
- package/dist/generated/themes/Menu.css.js.map +1 -1
- package/dist/generated/themes/MenuItem.css.d.ts +1 -1
- package/dist/generated/themes/MenuItem.css.js +1 -1
- package/dist/generated/themes/MenuItem.css.js.map +1 -1
- package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
- package/dist/generated/themes/MessageStrip.css.js +1 -1
- package/dist/generated/themes/MessageStrip.css.js.map +1 -1
- package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
- package/dist/generated/themes/MonthPicker.css.js +1 -1
- package/dist/generated/themes/MonthPicker.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
- package/dist/generated/themes/MultiComboBox.css.js +1 -1
- package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBoxItem.css.d.ts +1 -1
- package/dist/generated/themes/MultiComboBoxItem.css.js +1 -1
- package/dist/generated/themes/MultiComboBoxItem.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
- package/dist/generated/themes/MultiInput.css.d.ts +1 -1
- package/dist/generated/themes/MultiInput.css.js +1 -1
- package/dist/generated/themes/MultiInput.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenu.css.d.ts +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.d.ts +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.d.ts +1 -1
- package/dist/generated/themes/OptionBase.css.js +1 -1
- package/dist/generated/themes/OptionBase.css.js.map +1 -1
- package/dist/generated/themes/Panel.css.d.ts +1 -1
- package/dist/generated/themes/Panel.css.js +1 -1
- package/dist/generated/themes/Panel.css.js.map +1 -1
- package/dist/generated/themes/Popover.css.d.ts +1 -1
- package/dist/generated/themes/Popover.css.js +1 -1
- package/dist/generated/themes/Popover.css.js.map +1 -1
- package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
- package/dist/generated/themes/PopupsCommon.css.js +1 -1
- package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
- package/dist/generated/themes/ProgressIndicator.css.d.ts +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
- package/dist/generated/themes/RadioButton.css.d.ts +1 -1
- package/dist/generated/themes/RadioButton.css.js +1 -1
- package/dist/generated/themes/RadioButton.css.js.map +1 -1
- package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
- package/dist/generated/themes/RangeSlider.css.js +1 -1
- package/dist/generated/themes/RangeSlider.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopover.css.d.ts +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButton.css.d.ts +1 -1
- package/dist/generated/themes/SegmentedButton.css.js +1 -1
- package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
- package/dist/generated/themes/Select.css.d.ts +1 -1
- package/dist/generated/themes/Select.css.js +1 -1
- package/dist/generated/themes/Select.css.js.map +1 -1
- package/dist/generated/themes/SliderBase.css.d.ts +1 -1
- package/dist/generated/themes/SliderBase.css.js +1 -1
- package/dist/generated/themes/SliderBase.css.js.map +1 -1
- package/dist/generated/themes/SplitButton.css.d.ts +1 -1
- package/dist/generated/themes/SplitButton.css.js +1 -1
- package/dist/generated/themes/SplitButton.css.js.map +1 -1
- package/dist/generated/themes/StepInput.css.d.ts +1 -1
- package/dist/generated/themes/StepInput.css.js +1 -1
- package/dist/generated/themes/StepInput.css.js.map +1 -1
- package/dist/generated/themes/SuggestionItem.css.d.ts +1 -1
- package/dist/generated/themes/SuggestionItem.css.js +1 -1
- package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
- package/dist/generated/themes/SuggestionItemCustom.css.d.ts +1 -1
- package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
- package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
- package/dist/generated/themes/Switch.css.d.ts +1 -1
- package/dist/generated/themes/Switch.css.js +1 -1
- package/dist/generated/themes/Switch.css.js.map +1 -1
- package/dist/generated/themes/TabContainer.css.d.ts +1 -1
- package/dist/generated/themes/TabContainer.css.js +1 -1
- package/dist/generated/themes/TabContainer.css.js.map +1 -1
- package/dist/generated/themes/TabInOverflow.css.d.ts +1 -1
- package/dist/generated/themes/TabInOverflow.css.js +1 -1
- package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
- package/dist/generated/themes/TabInStrip.css.d.ts +1 -1
- package/dist/generated/themes/TabInStrip.css.js +1 -1
- package/dist/generated/themes/TabInStrip.css.js.map +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.d.ts +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
- package/dist/generated/themes/Table.css.d.ts +1 -1
- package/dist/generated/themes/Table.css.js +1 -1
- package/dist/generated/themes/Table.css.js.map +1 -1
- package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
- package/dist/generated/themes/TableCellBase.css.js +1 -1
- package/dist/generated/themes/TableCellBase.css.js.map +1 -1
- package/dist/generated/themes/TableHeaderRow.css.d.ts +1 -1
- package/dist/generated/themes/TableHeaderRow.css.js +1 -1
- package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
- package/dist/generated/themes/TableRow.css.d.ts +1 -1
- package/dist/generated/themes/TableRow.css.js +1 -1
- package/dist/generated/themes/TableRow.css.js.map +1 -1
- package/dist/generated/themes/TableRowActionBase.css.d.ts +2 -0
- package/dist/generated/themes/TableRowActionBase.css.js +8 -0
- package/dist/generated/themes/TableRowActionBase.css.js.map +1 -0
- package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
- package/dist/generated/themes/TableRowBase.css.js +1 -1
- package/dist/generated/themes/TableRowBase.css.js.map +1 -1
- package/dist/generated/themes/Tag.css.d.ts +1 -1
- package/dist/generated/themes/Tag.css.js +1 -1
- package/dist/generated/themes/Tag.css.js.map +1 -1
- package/dist/generated/themes/Text.css.d.ts +1 -1
- package/dist/generated/themes/Text.css.js +1 -1
- package/dist/generated/themes/Text.css.js.map +1 -1
- package/dist/generated/themes/TextArea.css.d.ts +1 -1
- package/dist/generated/themes/TextArea.css.js +1 -1
- package/dist/generated/themes/TextArea.css.js.map +1 -1
- package/dist/generated/themes/TimePicker.css.d.ts +1 -1
- package/dist/generated/themes/TimePicker.css.js +1 -1
- package/dist/generated/themes/TimePicker.css.js.map +1 -1
- package/dist/generated/themes/Toast.css.d.ts +1 -1
- package/dist/generated/themes/Toast.css.js +1 -1
- package/dist/generated/themes/Toast.css.js.map +1 -1
- package/dist/generated/themes/ToggleButton.css.d.ts +1 -1
- package/dist/generated/themes/ToggleButton.css.js +1 -1
- package/dist/generated/themes/ToggleButton.css.js.map +1 -1
- package/dist/generated/themes/Token.css.d.ts +1 -1
- package/dist/generated/themes/Token.css.js +1 -1
- package/dist/generated/themes/Token.css.js.map +1 -1
- package/dist/generated/themes/Tokenizer.css.d.ts +1 -1
- package/dist/generated/themes/Tokenizer.css.js +1 -1
- package/dist/generated/themes/Tokenizer.css.js.map +1 -1
- package/dist/generated/themes/TokenizerPopover.css.d.ts +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
- package/dist/generated/themes/Toolbar.css.d.ts +1 -1
- package/dist/generated/themes/Toolbar.css.js +1 -1
- package/dist/generated/themes/Toolbar.css.js.map +1 -1
- package/dist/generated/themes/ToolbarPopover.css.d.ts +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
- package/dist/generated/themes/TreeItem.css.d.ts +1 -1
- package/dist/generated/themes/TreeItem.css.js +1 -1
- package/dist/generated/themes/TreeItem.css.js.map +1 -1
- package/dist/generated/themes/ValueStateMessage.css.d.ts +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
- package/dist/generated/themes/YearPicker.css.d.ts +1 -1
- package/dist/generated/themes/YearPicker.css.js +1 -1
- package/dist/generated/themes/YearPicker.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/vscode.html-custom-data.json +77 -11
- package/dist/web-types.json +177 -27
- package/package.json +9 -9
- package/src/DialogTemplate.tsx +1 -1
- package/src/NavigationMenuTemplate.tsx +1 -0
- package/src/SelectPopoverTemplate.tsx +106 -0
- package/src/SelectTemplate.tsx +68 -0
- package/src/SliderBaseTemplate.tsx +2 -2
- package/src/SwitchTemplate.tsx +1 -7
- package/src/Table.hbs +1 -1
- package/src/TableCell.hbs +6 -5
- package/src/TableHeaderRow.hbs +4 -0
- package/src/TableRow.hbs +22 -3
- package/src/TableRowActionBase.hbs +17 -0
- package/src/ToastTemplate.tsx +6 -4
- package/src/TokenizerPopoverTemplate.tsx +0 -1
- package/src/TreeItemTemplate.tsx +1 -1
- package/src/i18n/messagebundle.properties +5 -1
- package/src/themes/FormItem.css +4 -5
- package/src/themes/Label.css +1 -1
- package/src/themes/NavigationMenuItem.css +3 -1
- package/src/themes/Switch.css +0 -9
- package/src/themes/TableCellBase.css +1 -1
- package/src/themes/TableRow.css +96 -73
- package/src/themes/TableRowActionBase.css +13 -0
- package/src/themes/TableRowBase.css +14 -6
- package/src/themes/Toolbar.css +13 -1
- package/src/themes/base/Switch-parameters.css +0 -1
- package/src/themes/base/Table-parameters.css +3 -9
- package/src/themes/base/Toolbar-parameters.css +2 -1
- package/src/themes/base/sizes-parameters.css +0 -6
- package/src/themes/sap_horizon/RadioButton-parameters.css +5 -1
- package/src/themes/sap_horizon_dark/RadioButton-parameters.css +5 -1
- package/src/themes/sap_horizon_dark/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon_hcb/RadioButton-parameters.css +5 -5
- package/src/themes/sap_horizon_hcw/RadioButton-parameters.css +5 -5
- package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +0 -1
- package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +0 -1
- package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +0 -1
- package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +0 -1
- package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +0 -1
- package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +0 -1
- package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +0 -1
- package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +0 -1
- package/dist/generated/templates/SelectPopoverTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +0 -19
- package/dist/generated/templates/SelectPopoverTemplate.lit.js.map +0 -1
- package/dist/generated/templates/SelectTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/SelectTemplate.lit.js +0 -24
- package/dist/generated/templates/SelectTemplate.lit.js.map +0 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.d.ts +0 -2
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +0 -3
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +0 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.d.ts +0 -2
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +0 -3
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +0 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.d.ts +0 -2
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +0 -3
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +0 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.d.ts +0 -2
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +0 -3
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +0 -1
- package/src/Select.hbs +0 -51
- package/src/SelectPopover.hbs +0 -78
- package/src/themes/sap_horizon_dark_exp/Avatar-parameters.css +0 -54
- package/src/themes/sap_horizon_dark_exp/Breadcrumbs-parameters.css +0 -3
- package/src/themes/sap_horizon_dark_exp/Button-parameters.css +0 -17
- package/src/themes/sap_horizon_dark_exp/CalendarHeader-parameters.css +0 -19
- package/src/themes/sap_horizon_dark_exp/CalendarLegendItem-parameters.css +0 -6
- package/src/themes/sap_horizon_dark_exp/Card-parameters.css +0 -15
- package/src/themes/sap_horizon_dark_exp/Carousel-parameters.css +0 -5
- package/src/themes/sap_horizon_dark_exp/CheckBox-parameters.css +0 -44
- package/src/themes/sap_horizon_dark_exp/ColorPalette-parameters.css +0 -25
- package/src/themes/sap_horizon_dark_exp/ColorPicker-parameters.css +0 -12
- package/src/themes/sap_horizon_dark_exp/DatePicker-parameters.css +0 -6
- package/src/themes/sap_horizon_dark_exp/DayPicker-parameters.css +0 -68
- package/src/themes/sap_horizon_dark_exp/Dialog-parameters.css +0 -9
- package/src/themes/sap_horizon_dark_exp/FileUploader-parameters.css +0 -5
- package/src/themes/sap_horizon_dark_exp/GrowingButton-parameters.css +0 -6
- package/src/themes/sap_horizon_dark_exp/Icon-parameters.css +0 -3
- package/src/themes/sap_horizon_dark_exp/Input-parameters.css +0 -34
- package/src/themes/sap_horizon_dark_exp/InputIcon-parameters.css +0 -24
- package/src/themes/sap_horizon_dark_exp/Link-parameters.css +0 -15
- package/src/themes/sap_horizon_dark_exp/List-parameters.css +0 -5
- package/src/themes/sap_horizon_dark_exp/ListItemBase-parameters.css +0 -5
- package/src/themes/sap_horizon_dark_exp/Menu-parameters.css +0 -5
- package/src/themes/sap_horizon_dark_exp/MessageStrip-parameters.css +0 -5
- package/src/themes/sap_horizon_dark_exp/MonthPicker-parameters.css +0 -16
- package/src/themes/sap_horizon_dark_exp/MultiComboBox-parameters.css +0 -5
- package/src/themes/sap_horizon_dark_exp/Panel-parameters.css +0 -14
- package/src/themes/sap_horizon_dark_exp/PopupsCommon-parameters.css +0 -5
- package/src/themes/sap_horizon_dark_exp/RadioButton-parameters.css +0 -23
- package/src/themes/sap_horizon_dark_exp/RatingIndicator-parameters.css +0 -17
- package/src/themes/sap_horizon_dark_exp/SegmentedButtton-parameters.css +0 -13
- package/src/themes/sap_horizon_dark_exp/Select-parameters.css +0 -5
- package/src/themes/sap_horizon_dark_exp/SelectPopover-parameters.css +0 -4
- package/src/themes/sap_horizon_dark_exp/SliderBase-parameters.css +0 -72
- package/src/themes/sap_horizon_dark_exp/SplitButton-parameters.css +0 -31
- package/src/themes/sap_horizon_dark_exp/StepInput-parameters.css +0 -25
- package/src/themes/sap_horizon_dark_exp/Switch-parameters.css +0 -148
- package/src/themes/sap_horizon_dark_exp/TabContainer-parameters.css +0 -38
- package/src/themes/sap_horizon_dark_exp/Tag-parameters.css +0 -1
- package/src/themes/sap_horizon_dark_exp/TextArea-parameters.css +0 -45
- package/src/themes/sap_horizon_dark_exp/TimePicker-parameters.css +0 -6
- package/src/themes/sap_horizon_dark_exp/ToggleButton-parameters.css +0 -1
- package/src/themes/sap_horizon_dark_exp/Token-parameters.css +0 -28
- package/src/themes/sap_horizon_dark_exp/Tokenizer-parameters.css +0 -5
- package/src/themes/sap_horizon_dark_exp/ValueStateMessage-parameters.css +0 -12
- package/src/themes/sap_horizon_dark_exp/YearPicker-parameters.css +0 -15
- package/src/themes/sap_horizon_dark_exp/parameters-bundle.css +0 -57
- package/src/themes/sap_horizon_dark_exp/rtl-parameters.css +0 -6
- package/src/themes/sap_horizon_dark_exp/sizes-parameters.css +0 -52
- package/src/themes/sap_horizon_exp/Avatar-parameters.css +0 -54
- package/src/themes/sap_horizon_exp/AvatarGroup-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/Breadcrumbs-parameters.css +0 -3
- package/src/themes/sap_horizon_exp/Button-parameters.css +0 -17
- package/src/themes/sap_horizon_exp/CalendarHeader-parameters.css +0 -19
- package/src/themes/sap_horizon_exp/Card-parameters.css +0 -15
- package/src/themes/sap_horizon_exp/Carousel-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/CheckBox-parameters.css +0 -44
- package/src/themes/sap_horizon_exp/ColorPalette-parameters.css +0 -25
- package/src/themes/sap_horizon_exp/ColorPicker-parameters.css +0 -12
- package/src/themes/sap_horizon_exp/DatePicker-parameters.css +0 -6
- package/src/themes/sap_horizon_exp/DayPicker-parameters.css +0 -71
- package/src/themes/sap_horizon_exp/Dialog-parameters.css +0 -9
- package/src/themes/sap_horizon_exp/FileUploader-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/GrowingButton-parameters.css +0 -6
- package/src/themes/sap_horizon_exp/Icon-parameters.css +0 -3
- package/src/themes/sap_horizon_exp/Input-parameters.css +0 -34
- package/src/themes/sap_horizon_exp/InputIcon-parameters.css +0 -24
- package/src/themes/sap_horizon_exp/Link-parameters.css +0 -15
- package/src/themes/sap_horizon_exp/List-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/ListItemBase-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/Menu-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/MessageStrip-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/MonthPicker-parameters.css +0 -16
- package/src/themes/sap_horizon_exp/MultiComboBox-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/Panel-parameters.css +0 -14
- package/src/themes/sap_horizon_exp/PopupsCommon-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/ProgressIndicator-parameters.css +0 -32
- package/src/themes/sap_horizon_exp/ProgressIndicatorLayout-parameters.css +0 -40
- package/src/themes/sap_horizon_exp/RadioButton-parameters.css +0 -23
- package/src/themes/sap_horizon_exp/RatingIndicator-parameters.css +0 -17
- package/src/themes/sap_horizon_exp/SegmentedButtton-parameters.css +0 -13
- package/src/themes/sap_horizon_exp/Select-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/SelectPopover-parameters.css +0 -4
- package/src/themes/sap_horizon_exp/SliderBase-parameters.css +0 -71
- package/src/themes/sap_horizon_exp/SplitButton-parameters.css +0 -31
- package/src/themes/sap_horizon_exp/StepInput-parameters.css +0 -25
- package/src/themes/sap_horizon_exp/Switch-parameters.css +0 -150
- package/src/themes/sap_horizon_exp/TabContainer-parameters.css +0 -38
- package/src/themes/sap_horizon_exp/Tag-parameters.css +0 -1
- package/src/themes/sap_horizon_exp/TextArea-parameters.css +0 -45
- package/src/themes/sap_horizon_exp/TimePicker-parameters.css +0 -6
- package/src/themes/sap_horizon_exp/ToggleButton-parameters.css +0 -1
- package/src/themes/sap_horizon_exp/Token-parameters.css +0 -28
- package/src/themes/sap_horizon_exp/Tokenizer-parameters.css +0 -5
- package/src/themes/sap_horizon_exp/ValueStateMessage-parameters.css +0 -12
- package/src/themes/sap_horizon_exp/YearPicker-parameters.css +0 -15
- package/src/themes/sap_horizon_exp/parameters-bundle.css +0 -57
- package/src/themes/sap_horizon_exp/rtl-parameters.css +0 -6
- package/src/themes/sap_horizon_exp/sizes-parameters.css +0 -51
- package/src/themes/sap_horizon_hcb_exp/Avatar-parameters.css +0 -54
- package/src/themes/sap_horizon_hcb_exp/BusyIndicator-parameters.css +0 -5
- package/src/themes/sap_horizon_hcb_exp/Button-parameters.css +0 -9
- package/src/themes/sap_horizon_hcb_exp/CalendarHeader-parameters.css +0 -11
- package/src/themes/sap_horizon_hcb_exp/Card-parameters.css +0 -11
- package/src/themes/sap_horizon_hcb_exp/Carousel-parameters.css +0 -9
- package/src/themes/sap_horizon_hcb_exp/CheckBox-parameters.css +0 -45
- package/src/themes/sap_horizon_hcb_exp/ColorPicker-parameters.css +0 -10
- package/src/themes/sap_horizon_hcb_exp/DatePicker-parameters.css +0 -5
- package/src/themes/sap_horizon_hcb_exp/DayPicker-parameters.css +0 -70
- package/src/themes/sap_horizon_hcb_exp/FileUploader-parameters.css +0 -6
- package/src/themes/sap_horizon_hcb_exp/GrowingButton-parameters.css +0 -8
- package/src/themes/sap_horizon_hcb_exp/Input-parameters.css +0 -32
- package/src/themes/sap_horizon_hcb_exp/InputIcon-parameters.css +0 -11
- package/src/themes/sap_horizon_hcb_exp/Link-parameters.css +0 -11
- package/src/themes/sap_horizon_hcb_exp/ListItem-parameters.css +0 -3
- package/src/themes/sap_horizon_hcb_exp/Menu-parameters.css +0 -5
- package/src/themes/sap_horizon_hcb_exp/MessageStrip-parameters.css +0 -10
- package/src/themes/sap_horizon_hcb_exp/MonthPicker-parameters.css +0 -12
- package/src/themes/sap_horizon_hcb_exp/Panel-parameters.css +0 -10
- package/src/themes/sap_horizon_hcb_exp/PopupsCommon-parameters.css +0 -5
- package/src/themes/sap_horizon_hcb_exp/ProgressIndicator-parameters.css +0 -15
- package/src/themes/sap_horizon_hcb_exp/RadioButton-parameters.css +0 -26
- package/src/themes/sap_horizon_hcb_exp/RatingIndicator-parameters.css +0 -16
- package/src/themes/sap_horizon_hcb_exp/SegmentedButtton-parameters.css +0 -8
- package/src/themes/sap_horizon_hcb_exp/Select-parameters.css +0 -10
- package/src/themes/sap_horizon_hcb_exp/SliderBase-parameters.css +0 -78
- package/src/themes/sap_horizon_hcb_exp/SplitButton-parameters.css +0 -34
- package/src/themes/sap_horizon_hcb_exp/Switch-parameters.css +0 -144
- package/src/themes/sap_horizon_hcb_exp/TabContainer-parameters.css +0 -49
- package/src/themes/sap_horizon_hcb_exp/Tag-parameters.css +0 -1
- package/src/themes/sap_horizon_hcb_exp/TextArea-parameters.css +0 -42
- package/src/themes/sap_horizon_hcb_exp/TimePicker-parameters.css +0 -5
- package/src/themes/sap_horizon_hcb_exp/ToggleButton-parameters.css +0 -1
- package/src/themes/sap_horizon_hcb_exp/Token-parameters.css +0 -17
- package/src/themes/sap_horizon_hcb_exp/ValueStateMessage-parameters.css +0 -13
- package/src/themes/sap_horizon_hcb_exp/YearPicker-parameters.css +0 -12
- package/src/themes/sap_horizon_hcb_exp/parameters-bundle.css +0 -52
- package/src/themes/sap_horizon_hcb_exp/sizes-parameters.css +0 -16
- package/src/themes/sap_horizon_hcw_exp/Avatar-parameters.css +0 -54
- package/src/themes/sap_horizon_hcw_exp/BusyIndicator-parameters.css +0 -5
- package/src/themes/sap_horizon_hcw_exp/Button-parameters.css +0 -9
- package/src/themes/sap_horizon_hcw_exp/CalendarHeader-parameters.css +0 -11
- package/src/themes/sap_horizon_hcw_exp/Card-parameters.css +0 -11
- package/src/themes/sap_horizon_hcw_exp/Carousel-parameters.css +0 -9
- package/src/themes/sap_horizon_hcw_exp/CheckBox-parameters.css +0 -45
- package/src/themes/sap_horizon_hcw_exp/ColorPicker-parameters.css +0 -10
- package/src/themes/sap_horizon_hcw_exp/DatePicker-parameters.css +0 -5
- package/src/themes/sap_horizon_hcw_exp/DayPicker-parameters.css +0 -69
- package/src/themes/sap_horizon_hcw_exp/FileUploader-parameters.css +0 -6
- package/src/themes/sap_horizon_hcw_exp/GrowingButton-parameters.css +0 -8
- package/src/themes/sap_horizon_hcw_exp/Input-parameters.css +0 -32
- package/src/themes/sap_horizon_hcw_exp/InputIcon-parameters.css +0 -11
- package/src/themes/sap_horizon_hcw_exp/Link-parameters.css +0 -11
- package/src/themes/sap_horizon_hcw_exp/ListItem-parameters.css +0 -3
- package/src/themes/sap_horizon_hcw_exp/Menu-parameters.css +0 -5
- package/src/themes/sap_horizon_hcw_exp/MessageStrip-parameters.css +0 -10
- package/src/themes/sap_horizon_hcw_exp/MonthPicker-parameters.css +0 -12
- package/src/themes/sap_horizon_hcw_exp/Panel-parameters.css +0 -11
- package/src/themes/sap_horizon_hcw_exp/PopupsCommon-parameters.css +0 -5
- package/src/themes/sap_horizon_hcw_exp/RadioButton-parameters.css +0 -30
- package/src/themes/sap_horizon_hcw_exp/RatingIndicator-parameters.css +0 -16
- package/src/themes/sap_horizon_hcw_exp/SegmentedButtton-parameters.css +0 -8
- package/src/themes/sap_horizon_hcw_exp/Select-parameters.css +0 -10
- package/src/themes/sap_horizon_hcw_exp/SliderBase-parameters.css +0 -78
- package/src/themes/sap_horizon_hcw_exp/SplitButton-parameters.css +0 -34
- package/src/themes/sap_horizon_hcw_exp/Switch-parameters.css +0 -149
- package/src/themes/sap_horizon_hcw_exp/TabContainer-parameters.css +0 -49
- package/src/themes/sap_horizon_hcw_exp/Tag-parameters.css +0 -1
- package/src/themes/sap_horizon_hcw_exp/TextArea-parameters.css +0 -42
- package/src/themes/sap_horizon_hcw_exp/TimePicker-parameters.css +0 -5
- package/src/themes/sap_horizon_hcw_exp/ToggleButton-parameters.css +0 -1
- package/src/themes/sap_horizon_hcw_exp/Token-parameters.css +0 -17
- package/src/themes/sap_horizon_hcw_exp/ValueStateMessage-parameters.css +0 -13
- package/src/themes/sap_horizon_hcw_exp/YearPicker-parameters.css +0 -12
- package/src/themes/sap_horizon_hcw_exp/parameters-bundle.css +0 -52
- package/src/themes/sap_horizon_hcw_exp/sizes-parameters.css +0 -16
|
@@ -0,0 +1,104 @@
|
|
|
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 UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
8
|
+
import { customElement, property } from "@ui5/webcomponents-base/dist/decorators.js";
|
|
9
|
+
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
10
|
+
import TableRowActionBaseTemplate from "./generated/templates/TableRowActionBaseTemplate.lit.js";
|
|
11
|
+
import TableRowActionBaseStyles from "./generated/themes/TableRowActionBase.css.js";
|
|
12
|
+
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
13
|
+
import Icon from "./Icon.js";
|
|
14
|
+
import Button from "./Button.js";
|
|
15
|
+
let MenuConstructor;
|
|
16
|
+
let MenuItemConstructor;
|
|
17
|
+
/**
|
|
18
|
+
* @class
|
|
19
|
+
* The `TableRowActionBase` class serves as a foundation for table row actions.
|
|
20
|
+
* @constructor
|
|
21
|
+
* @abstract
|
|
22
|
+
* @extends UI5Element
|
|
23
|
+
* @since 2.7.0
|
|
24
|
+
* @public
|
|
25
|
+
*/
|
|
26
|
+
let TableRowActionBase = class TableRowActionBase extends UI5Element {
|
|
27
|
+
constructor() {
|
|
28
|
+
super(...arguments);
|
|
29
|
+
/**
|
|
30
|
+
* Defines the visibility of the row action.
|
|
31
|
+
*
|
|
32
|
+
* **Note:** Invisible row actions still take up space, allowing to hide the action while maintaining its position.
|
|
33
|
+
*
|
|
34
|
+
* @default false
|
|
35
|
+
* @public
|
|
36
|
+
*/
|
|
37
|
+
this.invisible = false;
|
|
38
|
+
}
|
|
39
|
+
static async showMenu(actions, opener) {
|
|
40
|
+
if (!MenuConstructor) {
|
|
41
|
+
[MenuConstructor, MenuItemConstructor] = await Promise.all([
|
|
42
|
+
import("./Menu.js").then(module => module.default),
|
|
43
|
+
import("./MenuItem.js").then(module => module.default),
|
|
44
|
+
]);
|
|
45
|
+
}
|
|
46
|
+
if (!this._menu || !this._menu.isConnected) {
|
|
47
|
+
this._menu = new MenuConstructor();
|
|
48
|
+
this._menu.addEventListener("item-click", ((e) => {
|
|
49
|
+
const menuItem = e.detail.item;
|
|
50
|
+
const rowAction = this._menuItems.get(menuItem);
|
|
51
|
+
rowAction._onActionClick();
|
|
52
|
+
}));
|
|
53
|
+
document.body.append(this._menu);
|
|
54
|
+
}
|
|
55
|
+
const menuItems = actions.map(action => {
|
|
56
|
+
const menuItem = new MenuItemConstructor();
|
|
57
|
+
menuItem.icon = action._icon;
|
|
58
|
+
menuItem.text = action._text;
|
|
59
|
+
menuItem.disabled = !action._isInteractive;
|
|
60
|
+
this._menuItems.set(menuItem, action);
|
|
61
|
+
return menuItem;
|
|
62
|
+
});
|
|
63
|
+
this._menu.replaceChildren(...menuItems);
|
|
64
|
+
this._menu.opener = opener;
|
|
65
|
+
this._menu.open = true;
|
|
66
|
+
}
|
|
67
|
+
isFixedAction() {
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
onEnterDOM() {
|
|
71
|
+
this.toggleAttribute("_fixed", this.isFixedAction());
|
|
72
|
+
}
|
|
73
|
+
_onActionClick() {
|
|
74
|
+
const row = this.parentElement;
|
|
75
|
+
const table = row.parentElement;
|
|
76
|
+
table._onRowActionClick(this);
|
|
77
|
+
}
|
|
78
|
+
get _text() {
|
|
79
|
+
return this.getRenderInfo().text;
|
|
80
|
+
}
|
|
81
|
+
get _icon() {
|
|
82
|
+
return this.getRenderInfo().icon;
|
|
83
|
+
}
|
|
84
|
+
get _isInteractive() {
|
|
85
|
+
return this.getRenderInfo().interactive;
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
TableRowActionBase._menuItems = new WeakMap();
|
|
89
|
+
__decorate([
|
|
90
|
+
property({ type: Boolean })
|
|
91
|
+
], TableRowActionBase.prototype, "invisible", void 0);
|
|
92
|
+
__decorate([
|
|
93
|
+
i18n("@ui5/webcomponents")
|
|
94
|
+
], TableRowActionBase, "i18nBundle", void 0);
|
|
95
|
+
TableRowActionBase = __decorate([
|
|
96
|
+
customElement({
|
|
97
|
+
renderer: litRender,
|
|
98
|
+
styles: TableRowActionBaseStyles,
|
|
99
|
+
template: TableRowActionBaseTemplate,
|
|
100
|
+
dependencies: [Button, Icon],
|
|
101
|
+
})
|
|
102
|
+
], TableRowActionBase);
|
|
103
|
+
export default TableRowActionBase;
|
|
104
|
+
//# sourceMappingURL=TableRowActionBase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableRowActionBase.js","sourceRoot":"","sources":["../src/TableRowActionBase.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport { customElement, property } from \"@ui5/webcomponents-base/dist/decorators.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport TableRowActionBaseTemplate from \"./generated/templates/TableRowActionBaseTemplate.lit.js\";\nimport TableRowActionBaseStyles from \"./generated/themes/TableRowActionBase.css.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport Icon from \"./Icon.js\";\nimport Button from \"./Button.js\";\nimport type Menu from \"./Menu.js\";\nimport type MenuItem from \"./MenuItem.js\";\nimport type Table from \"./Table.js\";\nimport type TableRow from \"./TableRow.js\";\nimport type TableRowAction from \"./TableRowAction.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\n\nlet MenuConstructor: new () => Menu;\nlet MenuItemConstructor: new () => MenuItem;\n\n/**\n * @class\n * The `TableRowActionBase` class serves as a foundation for table row actions.\n * @constructor\n * @abstract\n * @extends UI5Element\n * @since 2.7.0\n * @public\n */\n@customElement({\n\trenderer: litRender,\n\tstyles: TableRowActionBaseStyles,\n\ttemplate: TableRowActionBaseTemplate,\n\tdependencies: [Button, Icon],\n})\n\nabstract class TableRowActionBase extends UI5Element {\n\t/**\n\t * Defines the visibility of the row action.\n\t *\n\t * **Note:** Invisible row actions still take up space, allowing to hide the action while maintaining its position.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tinvisible = false;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tprivate static _menu: Menu;\n\tprivate static _menuItems = new WeakMap();\n\tstatic async showMenu(actions: TableRowActionBase[], opener: HTMLElement) {\n\t\tif (!MenuConstructor) {\n\t\t\t[MenuConstructor, MenuItemConstructor] = await Promise.all([\n\t\t\t\timport(\"./Menu.js\").then(module => module.default),\n\t\t\t\timport(\"./MenuItem.js\").then(module => module.default),\n\t\t\t]);\n\t\t}\n\n\t\tif (!this._menu || !this._menu.isConnected) {\n\t\t\tthis._menu = new MenuConstructor();\n\t\t\tthis._menu.addEventListener(\"item-click\", ((e: CustomEvent) => {\n\t\t\t\tconst menuItem = e.detail.item as MenuItem;\n\t\t\t\tconst rowAction = this._menuItems.get(menuItem) as TableRowAction;\n\t\t\t\trowAction._onActionClick();\n\t\t\t}) as EventListener);\n\t\t\tdocument.body.append(this._menu);\n\t\t}\n\n\t\tconst menuItems = actions.map(action => {\n\t\t\tconst menuItem = new MenuItemConstructor();\n\t\t\tmenuItem.icon = action._icon;\n\t\t\tmenuItem.text = action._text;\n\t\t\tmenuItem.disabled = !action._isInteractive;\n\t\t\tthis._menuItems.set(menuItem, action);\n\t\t\treturn menuItem;\n\t\t});\n\n\t\tthis._menu.replaceChildren(...menuItems);\n\t\tthis._menu.opener = opener;\n\t\tthis._menu.open = true;\n\t}\n\n\tabstract getRenderInfo(): {\n\t\ttext: string;\n\t\ticon: string;\n\t\tinteractive: boolean;\n\t};\n\n\tisFixedAction() {\n\t\treturn false;\n\t}\n\n\tonEnterDOM(): void {\n\t\tthis.toggleAttribute(\"_fixed\", this.isFixedAction());\n\t}\n\n\t_onActionClick() {\n\t\tconst row = this.parentElement as TableRow;\n\t\tconst table = row.parentElement as Table;\n\t\ttable._onRowActionClick(this);\n\t}\n\n\tget _text() {\n\t\treturn this.getRenderInfo().text;\n\t}\n\n\tget _icon() {\n\t\treturn this.getRenderInfo().icon;\n\t}\n\n\tget _isInteractive() {\n\t\treturn this.getRenderInfo().interactive;\n\t}\n}\n\nexport default TableRowActionBase;\n"]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import TableRowActionBase from "./TableRowActionBase.js";
|
|
2
|
+
import "@ui5/webcomponents-icons/dist/navigation-right-arrow.js";
|
|
3
|
+
/**
|
|
4
|
+
* @class
|
|
5
|
+
* The `TableRowActionNavigation` class defines a navigation actio‚n for table rows.
|
|
6
|
+
* @constructor
|
|
7
|
+
* @extends TableRowActionBase
|
|
8
|
+
* @since 2.7.0
|
|
9
|
+
* @public
|
|
10
|
+
*/
|
|
11
|
+
declare class TableRowActionNavigation extends TableRowActionBase {
|
|
12
|
+
/**
|
|
13
|
+
* Defines the interactive state of the navigation action.
|
|
14
|
+
*
|
|
15
|
+
* @default false
|
|
16
|
+
* @public
|
|
17
|
+
*/
|
|
18
|
+
interactive: boolean;
|
|
19
|
+
getRenderInfo(): {
|
|
20
|
+
text: string;
|
|
21
|
+
icon: string;
|
|
22
|
+
interactive: boolean;
|
|
23
|
+
};
|
|
24
|
+
isFixedAction(): boolean;
|
|
25
|
+
get _i18nNavigation(): string;
|
|
26
|
+
}
|
|
27
|
+
export default TableRowActionNavigation;
|
|
@@ -0,0 +1,53 @@
|
|
|
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 property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
9
|
+
import TableRowActionBase from "./TableRowActionBase.js";
|
|
10
|
+
import { TABLE_NAVIGATION } from "./generated/i18n/i18n-defaults.js";
|
|
11
|
+
import "@ui5/webcomponents-icons/dist/navigation-right-arrow.js";
|
|
12
|
+
/**
|
|
13
|
+
* @class
|
|
14
|
+
* The `TableRowActionNavigation` class defines a navigation actio‚n for table rows.
|
|
15
|
+
* @constructor
|
|
16
|
+
* @extends TableRowActionBase
|
|
17
|
+
* @since 2.7.0
|
|
18
|
+
* @public
|
|
19
|
+
*/
|
|
20
|
+
let TableRowActionNavigation = class TableRowActionNavigation extends TableRowActionBase {
|
|
21
|
+
constructor() {
|
|
22
|
+
super(...arguments);
|
|
23
|
+
/**
|
|
24
|
+
* Defines the interactive state of the navigation action.
|
|
25
|
+
*
|
|
26
|
+
* @default false
|
|
27
|
+
* @public
|
|
28
|
+
*/
|
|
29
|
+
this.interactive = false;
|
|
30
|
+
}
|
|
31
|
+
getRenderInfo() {
|
|
32
|
+
return {
|
|
33
|
+
text: this._i18nNavigation,
|
|
34
|
+
icon: "navigation-right-arrow",
|
|
35
|
+
interactive: this.interactive,
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
isFixedAction() {
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
get _i18nNavigation() {
|
|
42
|
+
return TableRowActionBase.i18nBundle.getText(TABLE_NAVIGATION);
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
__decorate([
|
|
46
|
+
property({ type: Boolean })
|
|
47
|
+
], TableRowActionNavigation.prototype, "interactive", void 0);
|
|
48
|
+
TableRowActionNavigation = __decorate([
|
|
49
|
+
customElement({ tag: "ui5-table-row-action-navigation" })
|
|
50
|
+
], TableRowActionNavigation);
|
|
51
|
+
TableRowActionNavigation.define();
|
|
52
|
+
export default TableRowActionNavigation;
|
|
53
|
+
//# sourceMappingURL=TableRowActionNavigation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableRowActionNavigation.js","sourceRoot":"","sources":["../src/TableRowActionNavigation.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,yDAAyD,CAAC;AAEjE;;;;;;;GAOG;AAGH,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,kBAAkB;IAAzD;;QACC;;;;;WAKG;QAEH,gBAAW,GAAG,KAAK,CAAC;IAiBrB,CAAC;IAfA,aAAa;QACZ,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,eAAe;YAC1B,IAAI,EAAE,wBAAwB;YAC9B,WAAW,EAAE,IAAI,CAAC,WAAW;SAC7B,CAAC;IACH,CAAC;IAED,aAAa;QACZ,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,kBAAkB,CAAC,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAChE,CAAC;CACD,CAAA;AAjBA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;6DACR;AARf,wBAAwB;IAF7B,aAAa,CAAC,EAAE,GAAG,EAAE,iCAAiC,EAAE,CAAC;GAEpD,wBAAwB,CAyB7B;AAED,wBAAwB,CAAC,MAAM,EAAE,CAAC;AAElC,eAAe,wBAAwB,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport TableRowActionBase from \"./TableRowActionBase.js\";\nimport { TABLE_NAVIGATION } from \"./generated/i18n/i18n-defaults.js\";\nimport \"@ui5/webcomponents-icons/dist/navigation-right-arrow.js\";\n\n/**\n * @class\n * The `TableRowActionNavigation` class defines a navigation actio‚n for table rows.\n * @constructor\n * @extends TableRowActionBase\n * @since 2.7.0\n * @public\n */\n@customElement({ tag: \"ui5-table-row-action-navigation\" })\n\nclass TableRowActionNavigation extends TableRowActionBase {\n\t/**\n\t * Defines the interactive state of the navigation action.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tinteractive = false;\n\n\tgetRenderInfo() {\n\t\treturn {\n\t\t\ttext: this._i18nNavigation,\n\t\t\ticon: \"navigation-right-arrow\",\n\t\t\tinteractive: this.interactive,\n\t\t};\n\t}\n\n\tisFixedAction() {\n\t\treturn true;\n\t}\n\n\tget _i18nNavigation() {\n\t\treturn TableRowActionBase.i18nBundle.getText(TABLE_NAVIGATION);\n\t}\n}\n\nTableRowActionNavigation.define();\n\nexport default TableRowActionNavigation;\n"]}
|
package/dist/TableRowBase.d.ts
CHANGED
|
@@ -14,6 +14,7 @@ import type Table from "./Table.js";
|
|
|
14
14
|
declare abstract class TableRowBase extends UI5Element {
|
|
15
15
|
cells: Array<TableCellBase>;
|
|
16
16
|
_invalidate: number;
|
|
17
|
+
_rowActionCount: number;
|
|
17
18
|
static i18nBundle: I18nBundle;
|
|
18
19
|
onEnterDOM(): void;
|
|
19
20
|
onBeforeRendering(): void;
|
package/dist/TableRowBase.js
CHANGED
|
@@ -28,6 +28,7 @@ let TableRowBase = TableRowBase_1 = class TableRowBase extends UI5Element {
|
|
|
28
28
|
constructor() {
|
|
29
29
|
super(...arguments);
|
|
30
30
|
this._invalidate = 0;
|
|
31
|
+
this._rowActionCount = 0;
|
|
31
32
|
}
|
|
32
33
|
onEnterDOM() {
|
|
33
34
|
this.setAttribute("role", "row");
|
|
@@ -99,6 +100,9 @@ let TableRowBase = TableRowBase_1 = class TableRowBase extends UI5Element {
|
|
|
99
100
|
__decorate([
|
|
100
101
|
property({ type: Number, noAttribute: true })
|
|
101
102
|
], TableRowBase.prototype, "_invalidate", void 0);
|
|
103
|
+
__decorate([
|
|
104
|
+
property({ type: Number, noAttribute: true })
|
|
105
|
+
], TableRowBase.prototype, "_rowActionCount", void 0);
|
|
102
106
|
__decorate([
|
|
103
107
|
i18n("@ui5/webcomponents")
|
|
104
108
|
], TableRowBase, "i18nBundle", void 0);
|
package/dist/TableRowBase.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableRowBase.js","sourceRoot":"","sources":["../src/TableRowBase.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAE7E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AAEnE,OAAO,eAAe,MAAM,wCAAwC,CAAC;AAErE,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EACN,kBAAkB,GAClB,MAAM,mCAAmC,CAAC;AAE3C;;;;;;;;GAQG;AAMH,IAAe,YAAY,oBAA3B,MAAe,YAAa,SAAQ,UAAU;IAA9C;;QAIC,gBAAW,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"TableRowBase.js","sourceRoot":"","sources":["../src/TableRowBase.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport { isEnter, isSpace } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type TableCellBase from \"./TableCellBase.js\";\nimport TableRowBaseCss from \"./generated/themes/TableRowBase.css.js\";\nimport type Table from \"./Table.js\";\nimport CheckBox from \"./CheckBox.js\";\nimport { isInstanceOfTable } from \"./TableUtils.js\";\nimport {\n\tTABLE_ROW_SELECTOR,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n/**\n * @class\n * A class to serve as a foundation for the `TableRow` and `TableHeaderRow` classes.\n * @constructor\n * @abstract\n * @extends UI5Element\n * @since 2.0.0\n * @public\n */\n@customElement({\n\trenderer: litRender,\n\tstyles: TableRowBaseCss,\n\tdependencies: [CheckBox],\n})\nabstract class TableRowBase extends UI5Element {\n\tcells!: Array<TableCellBase>;\n\n\t@property({ type: Number, noAttribute: true })\n\t_invalidate = 0;\n\n\t@property({ type: Number, noAttribute: true })\n\t_rowActionCount = 0;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tonEnterDOM() {\n\t\tthis.setAttribute(\"role\", \"row\");\n\t\tthis.toggleAttribute(\"ui5-table-row-base\", true);\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this._isSelectable) {\n\t\t\tthis.setAttribute(\"aria-selected\", `${this._isSelected}`);\n\t\t} else {\n\t\t\tthis.removeAttribute(\"aria-selected\");\n\t\t}\n\t}\n\n\tgetFocusDomRef() {\n\t\treturn this;\n\t}\n\n\t_informSelectionChange() {\n\t\tthis._tableSelection?.informSelectionChange(this);\n\t}\n\n\tisHeaderRow(): boolean {\n\t\treturn false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent, eventOrigin: HTMLElement) {\n\t\tif ((eventOrigin === this && this._isSelectable && isSpace(e)) || (eventOrigin === this._selectionCell && (isSpace(e) || isEnter(e)))) {\n\t\t\tthis._informSelectionChange();\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\tget _table(): Table | undefined {\n\t\tconst element = this.parentElement;\n\t\treturn isInstanceOfTable(element) ? element : undefined;\n\t}\n\n\tget _tableId() {\n\t\treturn this._table?._id;\n\t}\n\n\tget _tableSelection() {\n\t\treturn this._table?._getSelection();\n\t}\n\n\tget _isSelected() {\n\t\treturn this._tableSelection?.isSelected(this);\n\t}\n\n\tget _isSelectable() {\n\t\treturn this._tableSelection?.isSelectable();\n\t}\n\n\tget _isMultiSelect() {\n\t\treturn this._tableSelection?.isMultiSelect();\n\t}\n\n\tget _hasRowSelector() {\n\t\treturn this._tableSelection?.hasRowSelector();\n\t}\n\n\tget _selectionCell() {\n\t\treturn this.shadowRoot!.getElementById(\"selection-cell\");\n\t}\n\n\tget _visibleCells() {\n\t\treturn this.cells.filter(c => !c._popin);\n\t}\n\n\tget _popinCells() {\n\t\treturn this.cells.filter(c => c._popin);\n\t}\n\n\tget _stickyCells() {\n\t\tconst selectionCell = this.shadowRoot?.querySelector(\"#selection-cell\"),\n\t\t\tnavigatedCell = this.shadowRoot?.querySelector(\"#navigated-cell\");\n\n\t\t// filter out null/undefined\n\t\treturn [selectionCell, ...this.cells, navigatedCell].filter(cell => cell?.hasAttribute(\"fixed\"));\n\t}\n\n\tget _i18nRowSelector(): string {\n\t\treturn TableRowBase.i18nBundle.getText(TABLE_ROW_SELECTOR);\n\t}\n}\n\nexport default TableRowBase;\n"]}
|
|
@@ -47,7 +47,7 @@ declare class TableVirtualizer extends UI5Element implements ITableFeature {
|
|
|
47
47
|
/**
|
|
48
48
|
* Defines the height of the rows in the table.
|
|
49
49
|
*
|
|
50
|
-
* **Note:**
|
|
50
|
+
* **Note:** For virtualization to work properly, this property is mandatory.
|
|
51
51
|
*
|
|
52
52
|
* @default 45
|
|
53
53
|
* @public
|
|
@@ -56,7 +56,7 @@ declare class TableVirtualizer extends UI5Element implements ITableFeature {
|
|
|
56
56
|
/**
|
|
57
57
|
* Defines the total count of rows in the table.
|
|
58
58
|
*
|
|
59
|
-
* **Note:**
|
|
59
|
+
* **Note:** For virtualization to work properly, this property is mandatory.
|
|
60
60
|
*
|
|
61
61
|
* @default 100
|
|
62
62
|
* @public
|
package/dist/TableVirtualizer.js
CHANGED
|
@@ -48,7 +48,7 @@ let TableVirtualizer = class TableVirtualizer extends UI5Element {
|
|
|
48
48
|
/**
|
|
49
49
|
* Defines the height of the rows in the table.
|
|
50
50
|
*
|
|
51
|
-
* **Note:**
|
|
51
|
+
* **Note:** For virtualization to work properly, this property is mandatory.
|
|
52
52
|
*
|
|
53
53
|
* @default 45
|
|
54
54
|
* @public
|
|
@@ -57,7 +57,7 @@ let TableVirtualizer = class TableVirtualizer extends UI5Element {
|
|
|
57
57
|
/**
|
|
58
58
|
* Defines the total count of rows in the table.
|
|
59
59
|
*
|
|
60
|
-
* **Note:**
|
|
60
|
+
* **Note:** For virtualization to work properly, this property is mandatory.
|
|
61
61
|
*
|
|
62
62
|
* @default 100
|
|
63
63
|
* @public
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableVirtualizer.js","sourceRoot":"","sources":["../src/TableVirtualizer.ts"],"names":[],"mappings":";;;;;;AAAA,+BAA+B;AAC/B,OAAO,EACN,IAAI,EACJ,SAAS,EACT,MAAM,EACN,WAAW,EACX,QAAQ,EACR,UAAU,EACV,MAAM,EACN,KAAK,EACL,SAAS,EACT,aAAa,GACb,MAAM,sCAAsC,CAAC;AAC9C,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAEpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,KAAK,MAAM,yDAAyD,CAAC;AAC5E,OAAO,gBAAgB,MAAM,uDAAuD,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAC5F,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAI3C,IAAK,WAOJ;AAPD,WAAK,WAAW;IACf,6CAAQ,CAAA;IACR,6CAAQ,CAAA;IACR,qDAAY,CAAA;IACZ,qDAAY,CAAA;IACZ,6DAA8B,CAAA;IAC9B,qEAAsC,CAAA;AACvC,CAAC,EAPI,WAAW,KAAX,WAAW,QAOf;AAaD;;;;;;;;;;;;;;;;;;;GAmBG;AAYH,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,UAAU;IA+CxC;QACC,KAAK,EAAE,CAAC;QA5CT;;;;;;;WAOG;QAEH,cAAS,GAAG,EAAE,CAAC;QAEf;;;;;;;WAOG;QAEH,aAAQ,GAAG,GAAG,CAAC;QAEf;;;;;;;WAOG;QAEH,cAAS,GAAG,CAAC,CAAC;QAEL,eAAU,GAAG,kBAAkB,CAAC;QAGzC,qBAAgB,GAAW,CAAC,CAAC;QAC7B,sBAAiB,GAAW,CAAC,CAAC;QAC9B,qBAAgB,GAAW,CAAC,CAAC;QAC7B,sBAAiB,GAAgB,WAAW,CAAC,IAAI,CAAC;QAMjD,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/D,CAAC;IAED,gBAAgB;QACf,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IAC1C,CAAC;IAED,qBAAqB,CAAC,KAAY;QACjC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YACzF,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,IAAI,CAAC,SAAS,EAAE,CAAC;QAClB,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;YACnD,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAgB,CAAC;YAC9G,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACxH,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,IAAI,CAAC;YAC1C,CAAC,oBAAoB,IAAI,cAAc,CAAC,CAAC,KAAK,EAAE,CAAC;QAClD,CAAC;IACF,CAAC;IAED,SAAS;QACR,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACzE,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,KAAK;QACJ,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;QAC5B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;gBACzC,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,CAAC,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO,IAAI,CAAC,MAAO,CAAC,aAAa,CAAC;IACnC,CAAC;IAED,IAAI,cAAc;QACjB,OAAO,IAAI,CAAC,MAAO,CAAC,UAAW,CAAC,cAAc,CAAC,MAAM,CAAE,CAAC;IACzD,CAAC;IAED,SAAS;QACR,MAAM,SAAS,GAAG,IAAI,CAAC,MAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;QAC5C,IAAI,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;QAChD,IAAI,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC;QAC1D,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACtB,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,GAAG,YAAY,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACP,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,YAAY,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QACrE,IAAI,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/E,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;QACjD,IAAI,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QACjG,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE3D,IAAI,IAAI,CAAC,iBAAiB,KAAK,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,KAAK,eAAe,EAAE,CAAC;YAC9F,OAAO;QACR,CAAC;QAED,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;QAC1C,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE;YACvC,KAAK,EAAE,gBAAgB;YACvB,IAAI,EAAE,eAAe;SACrB,CAAC,CAAC;IACJ,CAAC;IAED,iBAAiB;QAChB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAClD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,UAAU,IAAI,CAAC;IACtD,CAAC;IAED,aAAa;QACZ,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO;QACR,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,QAAQ,IAAI,QAAQ,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;YACrD,OAAO,cAAc,SAAS,KAAK,CAAC;QACrC,CAAC;IACF,CAAC;IAED,gBAAgB,CAAC,gBAAkC;QAClD,IAAI,gBAAgB,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC1C,gBAAgB,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACrE,IAAI,CAAC,iBAAiB,IAAI,WAAW,CAAC,QAAQ,CAAC;QAChD,CAAC;IACF,CAAC;IAED,UAAU,CAAC,CAAgB;QAC1B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO;QACR,CAAC;QAED,IAAI,eAAe,GAAG,CAAC,CAAC;QACxB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACtC,MAAM,qBAAqB,GAAG,QAAQ,CAAC,QAAQ,KAAK,CAAC,CAAC;QACtD,MAAM,mBAAmB,GAAG,OAAO,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QACnE,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAiB,CAAC;QACtD,MAAM,aAAa,GAAG,gBAAgB,EAAiB,CAAC;QAExD,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,mBAAmB,IAAI,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,EAAE,KAAK,aAAa,EAAE,CAAC;YAC7G,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,IAAI,CAAC;YAC1C,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACrD,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,CAAC;aAAM,IAAI,aAAa,CAAC,CAAC,CAAC,IAAI,qBAAqB,IAAI,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,KAAK,aAAa,EAAE,CAAC;YAC5H,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,QAAQ,CAAC;YAC9C,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACtD,eAAe,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QACvC,CAAC;aAAM,IAAI,mBAAmB,IAAI,eAAe,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YAC7G,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;YAClC,CAAC;iBAAM,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1B,eAAe,GAAG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1D,CAAC;iBAAM,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,aAAa,KAAK,OAAO,EAAE,CAAC;gBAClD,eAAe,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;YAClD,CAAC;QACF,CAAC;aAAM,IAAI,qBAAqB,IAAI,eAAe,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YAChH,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7B,eAAe,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YACvC,CAAC;iBAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxB,eAAe,GAAG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YAC/D,CAAC;iBAAM,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,aAAa,KAAK,QAAQ,EAAE,CAAC;gBACpD,eAAe,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YACvD,CAAC;QACF,CAAC;QAED,IAAI,eAAe,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;YACxC,IAAI,CAAC,gBAAgB,CAAC,SAAS,IAAI,eAAe,CAAC;YACnD,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACnD,CAAC,CAAC,cAAc,EAAE,CAAC;YACpB,CAAC;QACF,CAAC;IACF,CAAC;CACD,CAAA;AAhMA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;mDACZ;AAWf;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;kDACZ;AAWf;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;mDACb;AAnCT,gBAAgB;IAXrB,aAAa,CAAC,EAAE,GAAG,EAAE,uBAAuB,EAAE,CAAC;IAEhD;;;;;;OAMG;;IACF,KAAK,CAAC,cAAc,CAAC;GAEhB,gBAAgB,CA6MrB;AAED,gBAAgB,CAAC,MAAM,EAAE,CAAC;AAE1B,eAAe,gBAAgB,CAAC","sourcesContent":["/* eslint-disable no-bitwise */\nimport {\n\tisUp,\n\tisUpShift,\n\tisDown,\n\tisDownShift,\n\tisPageUp,\n\tisPageDown,\n\tisHome,\n\tisEnd,\n\tisTabNext,\n\tisTabPrevious,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { InvalidationInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport getActiveElement from \"@ui5/webcomponents-base/dist/util/getActiveElement.js\";\nimport { getTabbableElements } from \"@ui5/webcomponents-base/dist/util/TabbableElements.js\";\nimport { throttle } from \"./TableUtils.js\";\nimport type { ITableFeature } from \"./Table.js\";\nimport type Table from \"./Table.js\";\n\nenum TabBlocking {\n\tNone = 0,\n\tNext = 1,\n\tPrevious = 2,\n\tReleased = 4,\n\tNextReleased = Next | Released,\n\tPreviousReleased = Previous | Released,\n}\n\n/**\n * Fired when the virtualizer is changed by user interaction e.g. on scrolling.\n * @param number {first} The 0-based index of the first children currently rendered\n * @param number {last} The 0-based index of the last children currently rendered\n * @public\n */\ntype RangeChangeEventDetail = {\n\tfirst: number,\n\tlast: number,\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-virtualizer` component is used inside the `ui5-table` to virtualize the table rows, if the `overflowMode` property of the table is set to 'Scroll'.\n * It is responsible for rendering only the rows that are visible in the viewport and updating them on scroll.\n * This allows large numbers of rows to exist, but maintain high performance by only paying the cost for those that are currently visible.\n *\n * **Note:** The maximum number of virtualized rows is limited by browser constraints, specifically the maximum supported height for a DOM element.\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/TableVirtualizer.js\";`\n *\n * @constructor\n * @since 2.5.0\n * @extends UI5Element\n * @public\n * @experimental This component is not intended to be used in a productive enviroment. The API is under development and may be changed in the future.\n */\n@customElement({ tag: \"ui5-table-virtualizer\" })\n\n/**\n * Fired when the virtualizer is changed by user interaction e.g. on scrolling.\n *\n * @param {number} first The 0-based index of the first children currently rendered\n * @param {number} last The 0-based index of the last children currently rendered\n * @public\n */\n@event(\"range-change\")\n\nclass TableVirtualizer extends UI5Element implements ITableFeature {\n\teventDetails!: {\n\t\t\"range-change\": RangeChangeEventDetail\n\t}\n\t/**\n\t * Defines the height of the rows in the table.\n\t *\n\t * **Note:** This property is mandatory for the virtualization to work properly.\n\t *\n\t * @default 45\n\t * @public\n\t */\n\t@property({ type: Number })\n\trowHeight = 45;\n\n\t/**\n\t * Defines the total count of rows in the table.\n\t *\n\t * **Note:** This property is mandatory for the virtualization to work properly.\n\t *\n\t * @default 100\n\t * @public\n\t */\n\t@property({ type: Number })\n\trowCount = 100;\n\n\t/**\n\t * Defines the count of extra rows to be rendered at the top and bottom of the table.\n\t *\n\t * **Note:** This property is experimental and may be changed or deleted in the future.\n\t *\n\t * @default 0\n\t * @public\n\t */\n\t@property({ type: Number })\n\textraRows = 0;\n\n\treadonly identifier = \"TableVirtualizer\";\n\n\t_table?: Table;\n\t_lastRowPosition: number = 0;\n\t_firstRowPosition: number = 0;\n\t_visibleRowCount: number = 0;\n\t_tabBlockingState: TabBlocking = TabBlocking.None;\n\t_onRowInvalidateBound: (invalidationInfo: InvalidationInfo) => void;\n\t_onScrollBound: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._onScrollBound = throttle(this._onScroll.bind(this));\n\t\tthis._onRowInvalidateBound = this._onRowInvalidate.bind(this);\n\t}\n\n\tonAfterRendering(): void {\n\t\tthis._table && this._table._invalidate++;\n\t}\n\n\tonTableAfterRendering(table: Table): void {\n\t\tif (!this._table) {\n\t\t\tthis._table = table;\n\t\t\tthis._scrollContainer.addEventListener(\"scroll\", this._onScrollBound, { passive: true });\n\t\t\tthis._updateRowsHeight();\n\t\t\tthis._onScroll();\n\t\t} else {\n\t\t\tthis._updateRowsHeight();\n\t\t}\n\n\t\tif (this._tabBlockingState & TabBlocking.Released) {\n\t\t\tconst tabBlockingRow = this._table.rows.at(this._tabBlockingState & TabBlocking.Next ? -1 : 0) as HTMLElement;\n\t\t\tconst tabForwardingElement = getTabbableElements(tabBlockingRow).at(this._tabBlockingState & TabBlocking.Next ? 0 : -1);\n\t\t\tthis._tabBlockingState = TabBlocking.None;\n\t\t\t(tabForwardingElement || tabBlockingRow).focus();\n\t\t}\n\t}\n\n\tonExitDOM(): void {\n\t\tthis._scrollContainer.removeEventListener(\"scroll\", this._onScrollBound);\n\t\tthis._table = undefined;\n\t}\n\n\t/**\n\t * Resets the virtualizer to its initial state and triggers the `range-change` event.\n\t * @public\n\t */\n\treset(): void {\n\t\tthis._lastRowPosition = -1;\n\t\tthis._firstRowPosition = -1;\n\t\tif (this._table) {\n\t\t\tif (this._scrollContainer.scrollTop > 0) {\n\t\t\t\tthis._scrollContainer.scrollTop = 0;\n\t\t\t} else {\n\t\t\t\tthis._onScroll();\n\t\t\t}\n\t\t}\n\t}\n\n\tget _scrollContainer() {\n\t\treturn this._table!._tableElement;\n\t}\n\n\tget _rowsContainer() {\n\t\treturn this._table!.shadowRoot!.getElementById(\"rows\")!;\n\t}\n\n\t_onScroll(): void {\n\t\tconst headerRow = this._table!.headerRow[0];\n\t\tconst headerHeight = headerRow.offsetHeight;\n\t\tlet scrollTop = this._scrollContainer.scrollTop;\n\t\tlet scrollableHeight = this._scrollContainer.clientHeight;\n\t\tif (headerRow.sticky) {\n\t\t\tscrollableHeight = Math.max(0, scrollableHeight - headerHeight);\n\t\t} else {\n\t\t\tscrollTop = Math.max(0, scrollTop - headerHeight);\n\t\t}\n\n\t\tthis._visibleRowCount = Math.ceil(scrollableHeight / this.rowHeight);\n\t\tlet firstRowPosition = Math.floor(scrollTop / this.rowHeight) - this.extraRows;\n\t\tfirstRowPosition = Math.max(0, firstRowPosition);\n\t\tlet lastRowPosition = Math.max(0, firstRowPosition + this._visibleRowCount + 2 * this.extraRows);\n\t\tlastRowPosition = Math.min(lastRowPosition, this.rowCount);\n\n\t\tif (this._firstRowPosition === firstRowPosition && this._lastRowPosition === lastRowPosition) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._lastRowPosition = lastRowPosition;\n\t\tthis._firstRowPosition = firstRowPosition;\n\t\tthis.fireDecoratorEvent(\"range-change\", {\n\t\t\tfirst: firstRowPosition,\n\t\t\tlast: lastRowPosition,\n\t\t});\n\t}\n\n\t_updateRowsHeight() {\n\t\tconst rowsHeight = this.rowCount * this.rowHeight;\n\t\tthis._rowsContainer.style.height = `${rowsHeight}px`;\n\t}\n\n\t_getTransform() {\n\t\tif (!this._table) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst firstRow = this._table.rows[0];\n\t\tif (firstRow && firstRow.position > 0) {\n\t\t\tconst transform = firstRow.position * this.rowHeight;\n\t\t\treturn `translateY(${transform}px)`;\n\t\t}\n\t}\n\n\t_onRowInvalidate(invalidationInfo: InvalidationInfo) {\n\t\tif (invalidationInfo.name === \"position\") {\n\t\t\tinvalidationInfo.target.detachInvalidate(this._onRowInvalidateBound);\n\t\t\tthis._tabBlockingState |= TabBlocking.Released;\n\t\t}\n\t}\n\n\t_onKeyDown(e: KeyboardEvent) {\n\t\tif (!this._table) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet scrollTopChange = 0;\n\t\tconst rows = this._table.rows;\n\t\tconst firstRow = rows[0];\n\t\tconst lastRow = rows[rows.length - 1];\n\t\tconst hasDataBeforeFirstRow = firstRow.position !== 0;\n\t\tconst hasDataAfterLastRow = lastRow.position !== this.rowCount - 1;\n\t\tconst tableNavigation = this._table._tableNavigation!;\n\t\tconst activeElement = getActiveElement() as HTMLElement;\n\n\t\tif (isTabNext(e) && hasDataAfterLastRow && getTabbableElements(this._rowsContainer).pop() === activeElement) {\n\t\t\tthis._tabBlockingState = TabBlocking.Next;\n\t\t\tlastRow.attachInvalidate(this._onRowInvalidateBound);\n\t\t\tscrollTopChange = this.rowHeight;\n\t\t} else if (isTabPrevious(e) && hasDataBeforeFirstRow && getTabbableElements(this._rowsContainer).shift() === activeElement) {\n\t\t\tthis._tabBlockingState = TabBlocking.Previous;\n\t\t\tfirstRow.attachInvalidate(this._onRowInvalidateBound);\n\t\t\tscrollTopChange = this.rowHeight * -1;\n\t\t} else if (hasDataAfterLastRow && tableNavigation._getNavigationItemsOfRow(lastRow).includes(activeElement)) {\n\t\t\tif (isDown(e) || isDownShift(e)) {\n\t\t\t\tscrollTopChange = this.rowHeight;\n\t\t\t} else if (isPageDown(e)) {\n\t\t\t\tscrollTopChange = this._visibleRowCount * this.rowHeight;\n\t\t\t} else if (isEnd(e) && activeElement === lastRow) {\n\t\t\t\tscrollTopChange = this.rowCount * this.rowHeight;\n\t\t\t}\n\t\t} else if (hasDataBeforeFirstRow && tableNavigation._getNavigationItemsOfRow(firstRow).includes(activeElement)) {\n\t\t\tif (isUp(e) || isUpShift(e)) {\n\t\t\t\tscrollTopChange = this.rowHeight * -1;\n\t\t\t} else if (isPageUp(e)) {\n\t\t\t\tscrollTopChange = this._visibleRowCount * this.rowHeight * -1;\n\t\t\t} else if (isHome(e) && activeElement === firstRow) {\n\t\t\t\tscrollTopChange = this.rowCount * this.rowHeight * -1;\n\t\t\t}\n\t\t}\n\n\t\tif (scrollTopChange) {\n\t\t\tconst scrollTop = this._table.scrollTop;\n\t\t\tthis._scrollContainer.scrollTop += scrollTopChange;\n\t\t\tif (this._scrollContainer.scrollTop !== scrollTop) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t}\n\t}\n}\n\nTableVirtualizer.define();\n\nexport default TableVirtualizer;\n\nexport type {\n\tRangeChangeEventDetail,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"TableVirtualizer.js","sourceRoot":"","sources":["../src/TableVirtualizer.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-bitwise */\nimport {\n\tisUp,\n\tisUpShift,\n\tisDown,\n\tisDownShift,\n\tisPageUp,\n\tisPageDown,\n\tisHome,\n\tisEnd,\n\tisTabNext,\n\tisTabPrevious,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { InvalidationInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport getActiveElement from \"@ui5/webcomponents-base/dist/util/getActiveElement.js\";\nimport { getTabbableElements } from \"@ui5/webcomponents-base/dist/util/TabbableElements.js\";\nimport { throttle } from \"./TableUtils.js\";\nimport type { ITableFeature } from \"./Table.js\";\nimport type Table from \"./Table.js\";\n\nenum TabBlocking {\n\tNone = 0,\n\tNext = 1,\n\tPrevious = 2,\n\tReleased = 4,\n\tNextReleased = Next | Released,\n\tPreviousReleased = Previous | Released,\n}\n\n/**\n * Fired when the virtualizer is changed by user interaction e.g. on scrolling.\n * @param number {first} The 0-based index of the first children currently rendered\n * @param number {last} The 0-based index of the last children currently rendered\n * @public\n */\ntype RangeChangeEventDetail = {\n\tfirst: number,\n\tlast: number,\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-table-virtualizer` component is used inside the `ui5-table` to virtualize the table rows, if the `overflowMode` property of the table is set to 'Scroll'.\n * It is responsible for rendering only the rows that are visible in the viewport and updating them on scroll.\n * This allows large numbers of rows to exist, but maintain high performance by only paying the cost for those that are currently visible.\n *\n * **Note:** The maximum number of virtualized rows is limited by browser constraints, specifically the maximum supported height for a DOM element.\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents/dist/TableVirtualizer.js\";`\n *\n * @constructor\n * @since 2.5.0\n * @extends UI5Element\n * @public\n * @experimental This component is not intended to be used in a productive enviroment. The API is under development and may be changed in the future.\n */\n@customElement({ tag: \"ui5-table-virtualizer\" })\n\n/**\n * Fired when the virtualizer is changed by user interaction e.g. on scrolling.\n *\n * @param {number} first The 0-based index of the first children currently rendered\n * @param {number} last The 0-based index of the last children currently rendered\n * @public\n */\n@event(\"range-change\")\n\nclass TableVirtualizer extends UI5Element implements ITableFeature {\n\teventDetails!: {\n\t\t\"range-change\": RangeChangeEventDetail\n\t}\n\t/**\n\t * Defines the height of the rows in the table.\n\t *\n\t * **Note:** For virtualization to work properly, this property is mandatory.\n\t *\n\t * @default 45\n\t * @public\n\t */\n\t@property({ type: Number })\n\trowHeight = 45;\n\n\t/**\n\t * Defines the total count of rows in the table.\n\t *\n\t * **Note:** For virtualization to work properly, this property is mandatory.\n\t *\n\t * @default 100\n\t * @public\n\t */\n\t@property({ type: Number })\n\trowCount = 100;\n\n\t/**\n\t * Defines the count of extra rows to be rendered at the top and bottom of the table.\n\t *\n\t * **Note:** This property is experimental and may be changed or deleted in the future.\n\t *\n\t * @default 0\n\t * @public\n\t */\n\t@property({ type: Number })\n\textraRows = 0;\n\n\treadonly identifier = \"TableVirtualizer\";\n\n\t_table?: Table;\n\t_lastRowPosition: number = 0;\n\t_firstRowPosition: number = 0;\n\t_visibleRowCount: number = 0;\n\t_tabBlockingState: TabBlocking = TabBlocking.None;\n\t_onRowInvalidateBound: (invalidationInfo: InvalidationInfo) => void;\n\t_onScrollBound: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._onScrollBound = throttle(this._onScroll.bind(this));\n\t\tthis._onRowInvalidateBound = this._onRowInvalidate.bind(this);\n\t}\n\n\tonAfterRendering(): void {\n\t\tthis._table && this._table._invalidate++;\n\t}\n\n\tonTableAfterRendering(table: Table): void {\n\t\tif (!this._table) {\n\t\t\tthis._table = table;\n\t\t\tthis._scrollContainer.addEventListener(\"scroll\", this._onScrollBound, { passive: true });\n\t\t\tthis._updateRowsHeight();\n\t\t\tthis._onScroll();\n\t\t} else {\n\t\t\tthis._updateRowsHeight();\n\t\t}\n\n\t\tif (this._tabBlockingState & TabBlocking.Released) {\n\t\t\tconst tabBlockingRow = this._table.rows.at(this._tabBlockingState & TabBlocking.Next ? -1 : 0) as HTMLElement;\n\t\t\tconst tabForwardingElement = getTabbableElements(tabBlockingRow).at(this._tabBlockingState & TabBlocking.Next ? 0 : -1);\n\t\t\tthis._tabBlockingState = TabBlocking.None;\n\t\t\t(tabForwardingElement || tabBlockingRow).focus();\n\t\t}\n\t}\n\n\tonExitDOM(): void {\n\t\tthis._scrollContainer.removeEventListener(\"scroll\", this._onScrollBound);\n\t\tthis._table = undefined;\n\t}\n\n\t/**\n\t * Resets the virtualizer to its initial state and triggers the `range-change` event.\n\t * @public\n\t */\n\treset(): void {\n\t\tthis._lastRowPosition = -1;\n\t\tthis._firstRowPosition = -1;\n\t\tif (this._table) {\n\t\t\tif (this._scrollContainer.scrollTop > 0) {\n\t\t\t\tthis._scrollContainer.scrollTop = 0;\n\t\t\t} else {\n\t\t\t\tthis._onScroll();\n\t\t\t}\n\t\t}\n\t}\n\n\tget _scrollContainer() {\n\t\treturn this._table!._tableElement;\n\t}\n\n\tget _rowsContainer() {\n\t\treturn this._table!.shadowRoot!.getElementById(\"rows\")!;\n\t}\n\n\t_onScroll(): void {\n\t\tconst headerRow = this._table!.headerRow[0];\n\t\tconst headerHeight = headerRow.offsetHeight;\n\t\tlet scrollTop = this._scrollContainer.scrollTop;\n\t\tlet scrollableHeight = this._scrollContainer.clientHeight;\n\t\tif (headerRow.sticky) {\n\t\t\tscrollableHeight = Math.max(0, scrollableHeight - headerHeight);\n\t\t} else {\n\t\t\tscrollTop = Math.max(0, scrollTop - headerHeight);\n\t\t}\n\n\t\tthis._visibleRowCount = Math.ceil(scrollableHeight / this.rowHeight);\n\t\tlet firstRowPosition = Math.floor(scrollTop / this.rowHeight) - this.extraRows;\n\t\tfirstRowPosition = Math.max(0, firstRowPosition);\n\t\tlet lastRowPosition = Math.max(0, firstRowPosition + this._visibleRowCount + 2 * this.extraRows);\n\t\tlastRowPosition = Math.min(lastRowPosition, this.rowCount);\n\n\t\tif (this._firstRowPosition === firstRowPosition && this._lastRowPosition === lastRowPosition) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._lastRowPosition = lastRowPosition;\n\t\tthis._firstRowPosition = firstRowPosition;\n\t\tthis.fireDecoratorEvent(\"range-change\", {\n\t\t\tfirst: firstRowPosition,\n\t\t\tlast: lastRowPosition,\n\t\t});\n\t}\n\n\t_updateRowsHeight() {\n\t\tconst rowsHeight = this.rowCount * this.rowHeight;\n\t\tthis._rowsContainer.style.height = `${rowsHeight}px`;\n\t}\n\n\t_getTransform() {\n\t\tif (!this._table) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst firstRow = this._table.rows[0];\n\t\tif (firstRow && firstRow.position > 0) {\n\t\t\tconst transform = firstRow.position * this.rowHeight;\n\t\t\treturn `translateY(${transform}px)`;\n\t\t}\n\t}\n\n\t_onRowInvalidate(invalidationInfo: InvalidationInfo) {\n\t\tif (invalidationInfo.name === \"position\") {\n\t\t\tinvalidationInfo.target.detachInvalidate(this._onRowInvalidateBound);\n\t\t\tthis._tabBlockingState |= TabBlocking.Released;\n\t\t}\n\t}\n\n\t_onKeyDown(e: KeyboardEvent) {\n\t\tif (!this._table) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet scrollTopChange = 0;\n\t\tconst rows = this._table.rows;\n\t\tconst firstRow = rows[0];\n\t\tconst lastRow = rows[rows.length - 1];\n\t\tconst hasDataBeforeFirstRow = firstRow.position !== 0;\n\t\tconst hasDataAfterLastRow = lastRow.position !== this.rowCount - 1;\n\t\tconst tableNavigation = this._table._tableNavigation!;\n\t\tconst activeElement = getActiveElement() as HTMLElement;\n\n\t\tif (isTabNext(e) && hasDataAfterLastRow && getTabbableElements(this._rowsContainer).pop() === activeElement) {\n\t\t\tthis._tabBlockingState = TabBlocking.Next;\n\t\t\tlastRow.attachInvalidate(this._onRowInvalidateBound);\n\t\t\tscrollTopChange = this.rowHeight;\n\t\t} else if (isTabPrevious(e) && hasDataBeforeFirstRow && getTabbableElements(this._rowsContainer).shift() === activeElement) {\n\t\t\tthis._tabBlockingState = TabBlocking.Previous;\n\t\t\tfirstRow.attachInvalidate(this._onRowInvalidateBound);\n\t\t\tscrollTopChange = this.rowHeight * -1;\n\t\t} else if (hasDataAfterLastRow && tableNavigation._getNavigationItemsOfRow(lastRow).includes(activeElement)) {\n\t\t\tif (isDown(e) || isDownShift(e)) {\n\t\t\t\tscrollTopChange = this.rowHeight;\n\t\t\t} else if (isPageDown(e)) {\n\t\t\t\tscrollTopChange = this._visibleRowCount * this.rowHeight;\n\t\t\t} else if (isEnd(e) && activeElement === lastRow) {\n\t\t\t\tscrollTopChange = this.rowCount * this.rowHeight;\n\t\t\t}\n\t\t} else if (hasDataBeforeFirstRow && tableNavigation._getNavigationItemsOfRow(firstRow).includes(activeElement)) {\n\t\t\tif (isUp(e) || isUpShift(e)) {\n\t\t\t\tscrollTopChange = this.rowHeight * -1;\n\t\t\t} else if (isPageUp(e)) {\n\t\t\t\tscrollTopChange = this._visibleRowCount * this.rowHeight * -1;\n\t\t\t} else if (isHome(e) && activeElement === firstRow) {\n\t\t\t\tscrollTopChange = this.rowCount * this.rowHeight * -1;\n\t\t\t}\n\t\t}\n\n\t\tif (scrollTopChange) {\n\t\t\tconst scrollTop = this._table.scrollTop;\n\t\t\tthis._scrollContainer.scrollTop += scrollTopChange;\n\t\t\tif (this._scrollContainer.scrollTop !== scrollTop) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t}\n\t}\n}\n\nTableVirtualizer.define();\n\nexport default TableVirtualizer;\n\nexport type {\n\tRangeChangeEventDetail,\n};\n"]}
|
package/dist/ToastTemplate.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { jsx as _jsx, Fragment as _Fragment
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "@ui5/webcomponents-base/jsx-runtime";
|
|
2
2
|
export default function ToastTemplate() {
|
|
3
|
-
return
|
|
3
|
+
return _jsx(_Fragment, { children: this.open &&
|
|
4
|
+
_jsx("div", { class: "ui5-toast-root", role: "alert", tabindex: this._tabindex, children: _jsx("bdi", { children: _jsx("slot", {}) }) }) });
|
|
4
5
|
}
|
|
5
6
|
//# sourceMappingURL=ToastTemplate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToastTemplate.js","sourceRoot":"","sources":["../src/ToastTemplate.tsx"],"names":[],"mappings":";AAEA,MAAM,CAAC,OAAO,UAAU,aAAa;IACpC,OAAO,
|
|
1
|
+
{"version":3,"file":"ToastTemplate.js","sourceRoot":"","sources":["../src/ToastTemplate.tsx"],"names":[],"mappings":";AAEA,MAAM,CAAC,OAAO,UAAU,aAAa;IACpC,OAAO,4BAEL,IAAI,CAAC,IAAI;YACR,cAAK,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAC,OAAO,EAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,YAChE,wBAAK,gBAAa,GAAM,GACnB,GAEN,CAAC;AACL,CAAC","sourcesContent":["import type Toast from \"./Toast.js\";\n\nexport default function ToastTemplate(this: Toast) {\n\treturn <>\n\t\t{\n\t\t\tthis.open &&\n\t\t\t\t<div class=\"ui5-toast-root\" role=\"alert\" tabindex={this._tabindex}>\n\t\t\t\t\t<bdi><slot></slot></bdi>\n\t\t\t\t</div>\n\t\t}\n\t</>;\n}\n"]}
|
package/dist/Token.d.ts
CHANGED
|
@@ -73,11 +73,6 @@ declare class Token extends UI5Element implements IToken {
|
|
|
73
73
|
* @private
|
|
74
74
|
*/
|
|
75
75
|
forcedTabIndex: string;
|
|
76
|
-
/**
|
|
77
|
-
* Indicates whether the token is visible or not.
|
|
78
|
-
* @private
|
|
79
|
-
*/
|
|
80
|
-
_isVisible: boolean;
|
|
81
76
|
/**
|
|
82
77
|
* Defines the close icon for the token. If nothing is provided to this slot, the default close icon will be used.
|
|
83
78
|
* Accepts `ui5-icon`.
|
package/dist/Token.js
CHANGED
|
@@ -77,11 +77,6 @@ let Token = Token_1 = class Token extends UI5Element {
|
|
|
77
77
|
* @private
|
|
78
78
|
*/
|
|
79
79
|
this.forcedTabIndex = "-1";
|
|
80
|
-
/**
|
|
81
|
-
* Indicates whether the token is visible or not.
|
|
82
|
-
* @private
|
|
83
|
-
*/
|
|
84
|
-
this._isVisible = false;
|
|
85
80
|
// fireMyEvent(name: keyof this["_events"]) {
|
|
86
81
|
// console.log(name);
|
|
87
82
|
// }
|
|
@@ -165,9 +160,6 @@ __decorate([
|
|
|
165
160
|
__decorate([
|
|
166
161
|
property({ noAttribute: true })
|
|
167
162
|
], Token.prototype, "forcedTabIndex", void 0);
|
|
168
|
-
__decorate([
|
|
169
|
-
property({ type: Boolean, noAttribute: true })
|
|
170
|
-
], Token.prototype, "_isVisible", void 0);
|
|
171
163
|
__decorate([
|
|
172
164
|
slot()
|
|
173
165
|
], Token.prototype, "closeIcon", void 0);
|
package/dist/Token.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Token.js","sourceRoot":"","sources":["../src/Token.ts"],"names":[],"mappings":";;;;;;;AAAA,gDAAgD;AAChD,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,KAAK,MAAM,yDAAyD,CAAC;AAC5E,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,EACN,WAAW,EACX,OAAO,EACP,QAAQ,EACR,WAAW,GACX,MAAM,sCAAsC,CAAC;AAE9C,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAI3F,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,SAAS;AACT,OAAO,WAAW,MAAM,iCAAiC,CAAC;AAO1D;;;;;;;;;;;;;;;GAeG;AAyBH,IAAM,KAAK,aAAX,MAAM,KAAM,SAAQ,UAAU;IAA9B;;QAaC;;;;WAIG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;;;;;;WAOG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;;;WAIG;QAEH,cAAS,GAAG,KAAK,CAAC;QAGlB,gBAAW,GAAG,KAAK,CAAC;QAEpB;;;;WAIG;QAEH,YAAO,GAAG,KAAK,CAAC;QAEhB;;;;;WAKG;QAEH,gBAAW,GAAG,KAAK,CAAC;QAEpB;;;WAGG;QAEH,mBAAc,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"Token.js","sourceRoot":"","sources":["../src/Token.ts"],"names":[],"mappings":";;;;;;;AAAA,gDAAgD;AAChD,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,KAAK,MAAM,yDAAyD,CAAC;AAC5E,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,EACN,WAAW,EACX,OAAO,EACP,QAAQ,EACR,WAAW,GACX,MAAM,sCAAsC,CAAC;AAE9C,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAI3F,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,SAAS;AACT,OAAO,WAAW,MAAM,iCAAiC,CAAC;AAO1D;;;;;;;;;;;;;;;GAeG;AAyBH,IAAM,KAAK,aAAX,MAAM,KAAM,SAAQ,UAAU;IAA9B;;QAaC;;;;WAIG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;;;;;;WAOG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;;;WAIG;QAEH,cAAS,GAAG,KAAK,CAAC;QAGlB,gBAAW,GAAG,KAAK,CAAC;QAEpB;;;;WAIG;QAEH,YAAO,GAAG,KAAK,CAAC;QAEhB;;;;;WAKG;QAEH,gBAAW,GAAG,KAAK,CAAC;QAEpB;;;WAGG;QAEH,mBAAc,GAAG,IAAI,CAAC;QAqFtB,6CAA6C;QAC7C,sBAAsB;QACtB,IAAI;IACL,CAAC;IA1EA,aAAa;QACZ,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;IACF,CAAC;IAED,QAAQ;QACP,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,SAAS;QACR,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,OAAO;QACN,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED,QAAQ,CAAC,CAAgB;QACxB,MAAM,kBAAkB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAEpC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,kBAAkB,IAAI,eAAe,CAAC,EAAE,CAAC;YAC/D,CAAC,CAAC,cAAc,EAAE,CAAC;YAEnB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE;gBACjC,SAAS,EAAE,kBAAkB;gBAC7B,QAAQ,EAAE,eAAe;aACzB,CAAC,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;YAClC,CAAC,CAAC,cAAc,EAAE,CAAC;YAEnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACtB,CAAC;IACF,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,8BAA8B;IAC/B,CAAC;IAED,IAAI,kBAAkB;QACrB,OAAO,OAAK,CAAC,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,SAAS,EAAE,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,aAAa;QAChB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,KAAK,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACpG,CAAC;IAED,IAAI,eAAe;QAClB,IAAI,WAAW,GAAG,OAAK,CAAC,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAE7D,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpB,WAAW,IAAI,IAAI,OAAK,CAAC,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACrE,CAAC;QAED,OAAO,WAAW,CAAC;IACpB,CAAC;CAKD,CAAA;AA9IA;IADC,QAAQ,EAAE;mCACG;AAQd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;uCACX;AAWjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;uCACX;AAQjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;wCACV;AAGlB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;0CACR;AAQpB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;sCACZ;AAShB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;0CACR;AAOpB;IADC,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;6CACV;AAStB;IADC,IAAI,EAAE;wCACkB;AAGlB;IADN,IAAI,CAAC,oBAAoB,CAAC;+BACG;AA7EzB,KAAK;IAxBV,aAAa,CAAC;QACd,GAAG,EAAE,WAAW;QAChB,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,aAAa;QACvB,MAAM,EAAE,WAAW;KACnB,CAAC;IACF;;;OAGG;;IACF,KAAK,CAAC,QAAQ,EAAE;QAChB,OAAO,EAAE,IAAI;KACb,CAAC;IAEF;;;;;OAKG;;IACF,KAAK,CAAC,QAAQ,EAAE;QAChB,OAAO,EAAE,IAAI;KACb,CAAC;GACI,KAAK,CAyJV;AAED,KAAK,CAAC,MAAM,EAAE,CAAC;AAEf,eAAe,KAAK,CAAC","sourcesContent":["// eslint-disable-next-line max-classes-per-file\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport {\n\tisBackSpace,\n\tisSpace,\n\tisDelete,\n\tisSpaceCtrl,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport { TOKEN_ARIA_DELETABLE, TOKEN_ARIA_LABEL } from \"./generated/i18n/i18n-defaults.js\";\n\nimport type { IIcon } from \"./Icon.js\";\nimport type { IToken } from \"./MultiInput.js\";\nimport TokenTemplate from \"./TokenTemplate.js\";\n\n// Styles\nimport tokenStyles from \"./generated/themes/Token.css.js\";\n\ntype TokenDeleteEventDetail = {\n\tbackSpace?: boolean;\n\tdelete?: boolean;\n}\n\n/**\n * @class\n *\n * ### Overview\n *\n * Tokens are small items of information (similar to tags) that mainly serve to visualize previously selected items.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Token.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.0.0-rc.9\n * @implements {IToken}\n * @public\n */\n@customElement({\n\ttag: \"ui5-token\",\n\tlanguageAware: true,\n\trenderer: jsxRenderer,\n\ttemplate: TokenTemplate,\n\tstyles: tokenStyles,\n})\n/**\n * Fired when the the component is selected by user interaction with mouse or by clicking space.\n * @private\n */\n@event(\"select\", {\n\tbubbles: true,\n})\n\n/**\n * Fired when the backspace, delete or close icon of the token is pressed\n * @param {Boolean} backSpace Indicates whether token is deleted by backspace key.\n * @param {Boolean} delete Indicates whether token is deleted by delete key.\n * @private\n */\n@event(\"delete\", {\n\tbubbles: true,\n})\nclass Token extends UI5Element implements IToken {\n\teventDetails!: {\n\t\t\"select\": void\n\t\t\"delete\": TokenDeleteEventDetail\n\t}\n\t/**\n\t * Defines the text of the token.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\ttext?: string;\n\n\t/**\n\t * Defines whether the component is selected or not.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tselected = false;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t *\n\t * **Note:** A read-only component can not be deleted or selected,\n\t * but still provides visual feedback upon user interaction.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Set by the tokenizer when a token is in the \"more\" area (overflowing)\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\toverflows = false;\n\n\t@property({ type: Boolean })\n\tsingleToken = false;\n\n\t/**\n\t * Defines whether the component is focused or not.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t/**\n\t * Defines whether the token is being deleted\n\t * This flag is used in the ui5-multi-combobox\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\ttoBeDeleted = false;\n\n\t/**\n\t * Defines the tabIndex of the component.\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\tforcedTabIndex = \"-1\";\n\n\t/**\n\t * Defines the close icon for the token. If nothing is provided to this slot, the default close icon will be used.\n\t * Accepts `ui5-icon`.\n\t * @public\n\t * @since 1.0.0-rc.9\n\t */\n\t@slot()\n\tcloseIcon!: Array<IIcon>;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\t_handleSelect() {\n\t\tif (!this.toBeDeleted) {\n\t\t\tthis.selected = !this.selected;\n\t\t\tthis.fireDecoratorEvent(\"select\");\n\t\t}\n\t}\n\n\t_focusin() {\n\t\tthis.focused = true;\n\t}\n\n\t_focusout() {\n\t\tthis.focused = !this.focused;\n\t}\n\n\t_delete() {\n\t\tthis.toBeDeleted = true;\n\t\tthis.fireDecoratorEvent(\"delete\");\n\t}\n\n\t_keydown(e: KeyboardEvent) {\n\t\tconst isBackSpacePressed = isBackSpace(e);\n\t\tconst isDeletePressed = isDelete(e);\n\n\t\tif (!this.readonly && (isBackSpacePressed || isDeletePressed)) {\n\t\t\te.preventDefault();\n\n\t\t\tthis.fireDecoratorEvent(\"delete\", {\n\t\t\t\tbackSpace: isBackSpacePressed,\n\t\t\t\t\"delete\": isDeletePressed,\n\t\t\t});\n\t\t}\n\n\t\tif (isSpace(e) || isSpaceCtrl(e)) {\n\t\t\te.preventDefault();\n\n\t\t\tthis._handleSelect();\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.toBeDeleted = false;\n\t\t// this.fireMyEvent(\"select\");\n\t}\n\n\tget tokenDeletableText() {\n\t\treturn Token.i18nBundle.getText(TOKEN_ARIA_DELETABLE);\n\t}\n\n\tget textDom() {\n\t\treturn this.getDomRef()?.querySelector(\".ui5-token--text\");\n\t}\n\n\tget isTruncatable() {\n\t\tif (!this.textDom) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn Math.ceil(this.textDom.getBoundingClientRect().width) < Math.ceil(this.textDom.scrollWidth);\n\t}\n\n\tget ariaDescription() {\n\t\tlet description = Token.i18nBundle.getText(TOKEN_ARIA_LABEL);\n\n\t\tif (!this.readonly) {\n\t\t\tdescription += ` ${Token.i18nBundle.getText(TOKEN_ARIA_DELETABLE)}`;\n\t\t}\n\n\t\treturn description;\n\t}\n\n\t// fireMyEvent(name: keyof this[\"_events\"]) {\n\t// \tconsole.log(name);\n\t// }\n}\n\nToken.define();\n\nexport default Token;\nexport type { TokenDeleteEventDetail };\n"]}
|
package/dist/Tokenizer.d.ts
CHANGED
|
@@ -220,7 +220,6 @@ declare class Tokenizer extends UI5Element {
|
|
|
220
220
|
_onfocusout(e: FocusEvent): void;
|
|
221
221
|
_toggleTokenSelection(tokens: Array<Token>): void;
|
|
222
222
|
_handleTokenSelection(e: KeyboardEvent | MouseEvent, deselectAll?: boolean): void;
|
|
223
|
-
_resetTokensVisibility(): void;
|
|
224
223
|
get hasTokens(): boolean;
|
|
225
224
|
get showEffectiveClearAll(): boolean;
|
|
226
225
|
_fillClipboard(shortcutName: ClipboardDataOperation, tokens: Array<IToken>): void;
|
package/dist/Tokenizer.js
CHANGED
|
@@ -330,7 +330,6 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
|
|
|
330
330
|
}
|
|
331
331
|
else {
|
|
332
332
|
if (isPhone()) {
|
|
333
|
-
token._isVisible = false;
|
|
334
333
|
this._deletedDialogItems.push(token);
|
|
335
334
|
}
|
|
336
335
|
else {
|
|
@@ -359,16 +358,6 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
|
|
|
359
358
|
}
|
|
360
359
|
}
|
|
361
360
|
handleBeforeOpen() {
|
|
362
|
-
if (this.multiLine) {
|
|
363
|
-
this._resetTokensVisibility();
|
|
364
|
-
const focusedToken = this._tokens.find(token => token.focused);
|
|
365
|
-
focusedToken._isVisible = true;
|
|
366
|
-
}
|
|
367
|
-
else {
|
|
368
|
-
this._tokens.forEach(token => {
|
|
369
|
-
token._isVisible = true;
|
|
370
|
-
});
|
|
371
|
-
}
|
|
372
361
|
const list = this._getList();
|
|
373
362
|
const firstListItem = list.querySelectorAll("[ui5-li]")[0];
|
|
374
363
|
list._itemNavigation.setCurrentItem(firstListItem);
|
|
@@ -378,9 +367,6 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
|
|
|
378
367
|
this.open = false;
|
|
379
368
|
this._preventCollapse = false;
|
|
380
369
|
this._focusedElementBeforeOpen = null;
|
|
381
|
-
this._tokens.forEach(token => {
|
|
382
|
-
token._isVisible = true;
|
|
383
|
-
});
|
|
384
370
|
}
|
|
385
371
|
handleDialogButtonPress(e) {
|
|
386
372
|
const isOkButton = e.target.hasAttribute("data-ui5-tokenizer-dialog-ok-button");
|
|
@@ -638,11 +624,6 @@ let Tokenizer = Tokenizer_1 = class Tokenizer extends UI5Element {
|
|
|
638
624
|
});
|
|
639
625
|
}
|
|
640
626
|
}
|
|
641
|
-
_resetTokensVisibility() {
|
|
642
|
-
this._tokens.forEach(token => {
|
|
643
|
-
token._isVisible = false;
|
|
644
|
-
});
|
|
645
|
-
}
|
|
646
627
|
get hasTokens() {
|
|
647
628
|
return this._tokens.length > 0;
|
|
648
629
|
}
|
|
@@ -861,10 +842,6 @@ __decorate([
|
|
|
861
842
|
type: HTMLElement,
|
|
862
843
|
"default": true,
|
|
863
844
|
individualSlots: true,
|
|
864
|
-
invalidateOnChildChange: {
|
|
865
|
-
properties: ["_isVisible"],
|
|
866
|
-
slots: false,
|
|
867
|
-
},
|
|
868
845
|
})
|
|
869
846
|
], Tokenizer.prototype, "tokens", void 0);
|
|
870
847
|
__decorate([
|