@ui5/webcomponents 2.3.0-rc.3 → 2.3.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 +20 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/Avatar.d.ts +0 -1
- package/dist/Avatar.js +4 -4
- package/dist/Avatar.js.map +1 -1
- package/dist/AvatarGroup.d.ts +0 -1
- package/dist/AvatarGroup.js +4 -4
- package/dist/AvatarGroup.js.map +1 -1
- package/dist/Breadcrumbs.d.ts +0 -1
- package/dist/Breadcrumbs.js +4 -4
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/BusyIndicator.d.ts +0 -1
- package/dist/BusyIndicator.js +4 -4
- package/dist/BusyIndicator.js.map +1 -1
- package/dist/Button.d.ts +0 -1
- package/dist/Button.js +4 -4
- package/dist/Button.js.map +1 -1
- package/dist/Calendar.d.ts +4 -3
- package/dist/Calendar.js +4 -7
- package/dist/Calendar.js.map +1 -1
- package/dist/CalendarLegend.js.map +1 -1
- package/dist/CalendarLegendItem.d.ts +0 -1
- package/dist/CalendarLegendItem.js +4 -4
- package/dist/CalendarLegendItem.js.map +1 -1
- package/dist/CalendarPart.d.ts +0 -1
- package/dist/CalendarPart.js.map +1 -1
- package/dist/Card.d.ts +0 -1
- package/dist/Card.js +4 -4
- package/dist/Card.js.map +1 -1
- package/dist/CardHeader.d.ts +0 -1
- package/dist/CardHeader.js +4 -4
- package/dist/CardHeader.js.map +1 -1
- package/dist/Carousel.d.ts +2 -4
- package/dist/Carousel.js +13 -14
- package/dist/Carousel.js.map +1 -1
- package/dist/CheckBox.d.ts +0 -1
- package/dist/CheckBox.js +4 -4
- package/dist/CheckBox.js.map +1 -1
- package/dist/ColorPalette.d.ts +0 -1
- package/dist/ColorPalette.js +5 -4
- package/dist/ColorPalette.js.map +1 -1
- package/dist/ColorPaletteItem.d.ts +0 -1
- package/dist/ColorPaletteItem.js +4 -4
- package/dist/ColorPaletteItem.js.map +1 -1
- package/dist/ColorPalettePopover.d.ts +0 -1
- package/dist/ColorPalettePopover.js +4 -4
- package/dist/ColorPalettePopover.js.map +1 -1
- package/dist/ColorPicker.d.ts +0 -1
- package/dist/ColorPicker.js +6 -7
- package/dist/ColorPicker.js.map +1 -1
- package/dist/ComboBox.d.ts +0 -1
- package/dist/ComboBox.js +4 -4
- package/dist/ComboBox.js.map +1 -1
- package/dist/DateComponentBase.d.ts +0 -2
- package/dist/DateComponentBase.js +7 -11
- package/dist/DateComponentBase.js.map +1 -1
- package/dist/DatePicker.js +4 -0
- package/dist/DatePicker.js.map +1 -1
- package/dist/DateRangePicker.js.map +1 -1
- package/dist/DateTimePicker.d.ts +0 -1
- package/dist/DateTimePicker.js.map +1 -1
- package/dist/DayPicker.js +4 -0
- package/dist/DayPicker.js.map +1 -1
- package/dist/Dialog.d.ts +0 -1
- package/dist/Dialog.js +4 -4
- package/dist/Dialog.js.map +1 -1
- package/dist/DropIndicator.js.map +1 -1
- package/dist/FileUploader.d.ts +0 -1
- package/dist/FileUploader.js +4 -4
- package/dist/FileUploader.js.map +1 -1
- package/dist/Filters.d.ts +4 -4
- package/dist/Form.d.ts +1 -1
- package/dist/Form.js.map +1 -1
- package/dist/GridWalker.js.map +1 -1
- package/dist/Icon.js.map +1 -1
- package/dist/Input.d.ts +0 -1
- package/dist/Input.js +19 -6
- package/dist/Input.js.map +1 -1
- package/dist/Label.d.ts +0 -1
- package/dist/Label.js +4 -4
- package/dist/Label.js.map +1 -1
- package/dist/Link.d.ts +0 -1
- package/dist/Link.js +4 -4
- package/dist/Link.js.map +1 -1
- package/dist/List.d.ts +0 -1
- package/dist/List.js +5 -5
- package/dist/List.js.map +1 -1
- package/dist/ListItem.d.ts +0 -1
- package/dist/ListItem.js +4 -4
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.js.map +1 -1
- package/dist/ListItemCustom.js.map +1 -1
- package/dist/ListItemGroup.js.map +1 -1
- package/dist/ListItemGroupHeader.d.ts +0 -1
- package/dist/ListItemGroupHeader.js +4 -4
- package/dist/ListItemGroupHeader.js.map +1 -1
- package/dist/Menu.d.ts +0 -1
- package/dist/Menu.js +4 -4
- package/dist/Menu.js.map +1 -1
- package/dist/MenuItem.d.ts +12 -11
- package/dist/MenuItem.js +4 -4
- package/dist/MenuItem.js.map +1 -1
- package/dist/MessageStrip.d.ts +0 -1
- package/dist/MessageStrip.js +4 -4
- package/dist/MessageStrip.js.map +1 -1
- package/dist/MonthPicker.d.ts +0 -1
- package/dist/MonthPicker.js +4 -4
- package/dist/MonthPicker.js.map +1 -1
- package/dist/MultiComboBox.d.ts +0 -1
- package/dist/MultiComboBox.js +4 -4
- package/dist/MultiComboBox.js.map +1 -1
- package/dist/MultiInput.js.map +1 -1
- package/dist/NavigationMenu.js.map +1 -1
- package/dist/NavigationMenuItem.d.ts +10 -10
- package/dist/Panel.d.ts +0 -1
- package/dist/Panel.js +4 -4
- package/dist/Panel.js.map +1 -1
- package/dist/Popover.js +4 -4
- package/dist/Popover.js.map +1 -1
- package/dist/Popup.js.map +1 -1
- package/dist/ProgressIndicator.d.ts +0 -1
- package/dist/ProgressIndicator.js +4 -4
- package/dist/ProgressIndicator.js.map +1 -1
- package/dist/RadioButton.d.ts +0 -1
- package/dist/RadioButton.js +4 -4
- package/dist/RadioButton.js.map +1 -1
- package/dist/RadioButtonGroup.js.map +1 -1
- package/dist/RangeSlider.d.ts +0 -1
- package/dist/RangeSlider.js +4 -4
- package/dist/RangeSlider.js.map +1 -1
- package/dist/RatingIndicator.d.ts +0 -1
- package/dist/RatingIndicator.js +4 -4
- package/dist/RatingIndicator.js.map +1 -1
- package/dist/ResponsivePopover.d.ts +0 -1
- package/dist/ResponsivePopover.js +4 -4
- package/dist/ResponsivePopover.js.map +1 -1
- package/dist/SegmentedButton.d.ts +0 -1
- package/dist/SegmentedButton.js +4 -4
- package/dist/SegmentedButton.js.map +1 -1
- package/dist/SegmentedButtonItem.d.ts +0 -1
- package/dist/SegmentedButtonItem.js +4 -4
- package/dist/SegmentedButtonItem.js.map +1 -1
- package/dist/Select.d.ts +0 -1
- package/dist/Select.js +4 -4
- package/dist/Select.js.map +1 -1
- package/dist/Slider.d.ts +0 -1
- package/dist/Slider.js +4 -4
- package/dist/Slider.js.map +1 -1
- package/dist/SliderBase.js.map +1 -1
- package/dist/SplitButton.d.ts +0 -1
- package/dist/SplitButton.js +4 -4
- package/dist/SplitButton.js.map +1 -1
- package/dist/StepInput.d.ts +0 -1
- package/dist/StepInput.js +4 -4
- package/dist/StepInput.js.map +1 -1
- package/dist/SuggestionItem.js.map +1 -1
- package/dist/Switch.d.ts +0 -1
- package/dist/Switch.js +4 -4
- package/dist/Switch.js.map +1 -1
- package/dist/Tab.d.ts +0 -1
- package/dist/Tab.js +4 -4
- package/dist/Tab.js.map +1 -1
- package/dist/TabContainer.d.ts +0 -1
- package/dist/TabContainer.js +4 -4
- package/dist/TabContainer.js.map +1 -1
- package/dist/Table.d.ts +0 -2
- package/dist/Table.js +11 -4
- package/dist/Table.js.map +1 -1
- package/dist/TableCell.d.ts +1 -0
- package/dist/TableCell.js +9 -0
- package/dist/TableCell.js.map +1 -1
- package/dist/TableCellBase.d.ts +9 -1
- package/dist/TableCellBase.js +9 -7
- package/dist/TableCellBase.js.map +1 -1
- package/dist/TableGrowing.d.ts +0 -1
- package/dist/TableGrowing.js +5 -5
- package/dist/TableGrowing.js.map +1 -1
- package/dist/TableHeaderCell.d.ts +1 -0
- package/dist/TableHeaderCell.js +5 -0
- package/dist/TableHeaderCell.js.map +1 -1
- package/dist/TableHeaderRow.js +1 -1
- package/dist/TableHeaderRow.js.map +1 -1
- package/dist/TableNavigation.js.map +1 -1
- package/dist/TableRow.d.ts +0 -1
- package/dist/TableRow.js +0 -8
- package/dist/TableRow.js.map +1 -1
- package/dist/TableRowBase.d.ts +0 -1
- package/dist/TableRowBase.js +4 -4
- package/dist/TableRowBase.js.map +1 -1
- package/dist/TableSelection.js.map +1 -1
- package/dist/TableUtils.d.ts +2 -2
- package/dist/TableUtils.js.map +1 -1
- package/dist/Tag.d.ts +0 -1
- package/dist/Tag.js +4 -4
- package/dist/Tag.js.map +1 -1
- package/dist/Text.d.ts +0 -1
- package/dist/Text.js +4 -4
- package/dist/Text.js.map +1 -1
- package/dist/TextArea.d.ts +0 -1
- package/dist/TextArea.js +4 -4
- package/dist/TextArea.js.map +1 -1
- package/dist/TimePicker.d.ts +0 -2
- package/dist/TimePicker.js +5 -8
- package/dist/TimePicker.js.map +1 -1
- package/dist/TimePickerClock.js.map +1 -1
- package/dist/TimePickerInternals.d.ts +0 -2
- package/dist/TimePickerInternals.js +5 -8
- package/dist/TimePickerInternals.js.map +1 -1
- package/dist/TimeSelectionClocks.js +2 -2
- package/dist/TimeSelectionClocks.js.map +1 -1
- package/dist/TimeSelectionInputs.js.map +1 -1
- package/dist/Toast.js.map +1 -1
- package/dist/ToggleButton.js.map +1 -1
- package/dist/Token.d.ts +0 -1
- package/dist/Token.js +4 -4
- package/dist/Token.js.map +1 -1
- package/dist/Tokenizer.d.ts +0 -1
- package/dist/Tokenizer.js +5 -5
- package/dist/Tokenizer.js.map +1 -1
- package/dist/Toolbar.d.ts +0 -1
- package/dist/Toolbar.js +4 -4
- package/dist/Toolbar.js.map +1 -1
- package/dist/ToolbarRegistry.js.map +1 -1
- package/dist/ToolbarSelect.js.map +1 -1
- package/dist/Tree.js.map +1 -1
- package/dist/TreeItemBase.d.ts +6 -5
- package/dist/TreeItemBase.js +4 -7
- package/dist/TreeItemBase.js.map +1 -1
- package/dist/TreeItemCustom.js.map +1 -1
- package/dist/TreeList.js.map +1 -1
- package/dist/YearPicker.d.ts +0 -1
- package/dist/YearPicker.js +4 -4
- package/dist/YearPicker.js.map +1 -1
- package/dist/bundle.common.bootstrap.d.ts +5 -5
- package/dist/bundle.esm.d.ts +5 -5
- package/dist/bundle.esm.js +84 -84
- package/dist/bundle.esm.js.map +1 -1
- package/dist/bundle.scoped.esm.js +1 -1
- package/dist/bundle.scoped.esm.js.map +1 -1
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/css/themes/AvatarGroup.css +1 -1
- package/dist/css/themes/Bar.css +1 -1
- package/dist/css/themes/Breadcrumbs.css +1 -1
- package/dist/css/themes/BusyIndicator.css +1 -1
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/Calendar.css +1 -1
- package/dist/css/themes/CalendarHeader.css +1 -1
- package/dist/css/themes/CalendarLegend.css +1 -1
- package/dist/css/themes/CalendarLegendItem.css +1 -1
- package/dist/css/themes/Card.css +1 -1
- package/dist/css/themes/CardHeader.css +1 -1
- package/dist/css/themes/Carousel.css +1 -1
- package/dist/css/themes/CheckBox.css +1 -1
- package/dist/css/themes/ColorPalette.css +1 -1
- package/dist/css/themes/ColorPaletteItem.css +1 -1
- package/dist/css/themes/ColorPalettePopover.css +1 -1
- package/dist/css/themes/ColorPicker.css +1 -1
- package/dist/css/themes/ComboBox.css +1 -1
- package/dist/css/themes/DatePicker.css +1 -1
- package/dist/css/themes/DateTimePickerPopover.css +1 -1
- package/dist/css/themes/DayPicker.css +1 -1
- package/dist/css/themes/Dialog.css +1 -1
- package/dist/css/themes/FileUploader.css +1 -1
- package/dist/css/themes/Form.css +1 -1
- package/dist/css/themes/FormItem.css +1 -1
- package/dist/css/themes/FormLabelSpan.css +1 -1
- package/dist/css/themes/GrowingButton.css +1 -1
- package/dist/css/themes/Icon.css +1 -1
- package/dist/css/themes/Input.css +1 -1
- package/dist/css/themes/InputIcon.css +1 -1
- package/dist/css/themes/InputSharedStyles.css +1 -1
- package/dist/css/themes/Link.css +1 -1
- package/dist/css/themes/List.css +1 -1
- package/dist/css/themes/ListItem.css +1 -1
- package/dist/css/themes/ListItemBase.css +1 -1
- package/dist/css/themes/ListItemCustom.css +1 -1
- package/dist/css/themes/ListItemGroup.css +1 -1
- package/dist/css/themes/ListItemGroupHeader.css +1 -1
- package/dist/css/themes/ListItemIcon.css +1 -1
- package/dist/css/themes/Menu.css +1 -1
- package/dist/css/themes/MenuItem.css +1 -1
- package/dist/css/themes/MessageStrip.css +1 -1
- package/dist/css/themes/MonthPicker.css +1 -1
- package/dist/css/themes/MultiComboBox.css +1 -1
- package/dist/css/themes/MultiComboBoxPopover.css +1 -1
- package/dist/css/themes/MultiInput.css +1 -1
- package/dist/css/themes/NavigationMenu.css +1 -1
- package/dist/css/themes/NavigationMenuItem.css +1 -1
- package/dist/css/themes/OptionBase.css +1 -1
- package/dist/css/themes/Panel.css +1 -1
- package/dist/css/themes/Popover.css +1 -1
- package/dist/css/themes/PopupsCommon.css +1 -1
- package/dist/css/themes/ProgressIndicator.css +1 -1
- package/dist/css/themes/RadioButton.css +1 -1
- package/dist/css/themes/RangeSlider.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/ResponsivePopover.css +1 -1
- package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
- package/dist/css/themes/SegmentedButton.css +1 -1
- package/dist/css/themes/SegmentedButtonItem.css +1 -1
- package/dist/css/themes/Select.css +1 -1
- package/dist/css/themes/SliderBase.css +1 -1
- package/dist/css/themes/SplitButton.css +1 -1
- package/dist/css/themes/StepInput.css +1 -1
- package/dist/css/themes/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/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_dark_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +173 -5
- package/dist/custom-elements.json +121 -4
- package/dist/features/ColorPaletteMoreColors.d.ts +0 -1
- package/dist/features/ColorPaletteMoreColors.js +0 -4
- package/dist/features/ColorPaletteMoreColors.js.map +1 -1
- package/dist/features/InputSuggestions.d.ts +0 -1
- package/dist/features/InputSuggestions.js +0 -4
- package/dist/features/InputSuggestions.js.map +1 -1
- package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/i18n/i18n-defaults.d.ts +1 -1
- package/dist/generated/i18n/i18n-defaults.js +0 -1
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/json-imports/Themes-fetch.js.map +1 -1
- package/dist/generated/json-imports/Themes.js.map +1 -1
- package/dist/generated/json-imports/i18n-fetch.js.map +1 -1
- package/dist/generated/json-imports/i18n.js.map +1 -1
- package/dist/generated/templates/AvatarGroupTemplate.lit.js +1 -1
- package/dist/generated/templates/AvatarGroupTemplate.lit.js.map +1 -1
- package/dist/generated/templates/AvatarTemplate.lit.js +1 -1
- package/dist/generated/templates/AvatarTemplate.lit.js.map +1 -1
- package/dist/generated/templates/BarTemplate.lit.js +1 -1
- package/dist/generated/templates/BarTemplate.lit.js.map +1 -1
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +1 -1
- package/dist/generated/templates/BusyIndicatorTemplate.lit.js +1 -1
- package/dist/generated/templates/BusyIndicatorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/ButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CalendarHeaderTemplate.lit.js +1 -1
- package/dist/generated/templates/CalendarHeaderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CalendarLegendItemTemplate.lit.js +1 -1
- package/dist/generated/templates/CalendarLegendItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CalendarLegendTemplate.lit.js +1 -1
- package/dist/generated/templates/CalendarLegendTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CalendarTemplate.lit.js +1 -1
- package/dist/generated/templates/CalendarTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CardHeaderTemplate.lit.js +1 -1
- package/dist/generated/templates/CardHeaderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CardTemplate.lit.js +1 -1
- package/dist/generated/templates/CardTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CarouselTemplate.lit.js +1 -1
- package/dist/generated/templates/CarouselTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CheckBoxTemplate.lit.js +1 -1
- package/dist/generated/templates/CheckBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPaletteItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPaletteTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPaletteTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPickerTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ComboBoxTemplate.lit.js +1 -1
- package/dist/generated/templates/ComboBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerInputTemplate.lit.js +1 -1
- package/dist/generated/templates/DatePickerInputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerTemplate.lit.js +1 -1
- package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DateRangePickerTemplate.lit.js +1 -1
- package/dist/generated/templates/DateRangePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DateTimePickerTemplate.lit.js +1 -1
- package/dist/generated/templates/DateTimePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DayPickerTemplate.lit.js +1 -1
- package/dist/generated/templates/DayPickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DialogTemplate.lit.js +1 -1
- package/dist/generated/templates/DialogTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DropIndicatorTemplate.lit.js +1 -1
- package/dist/generated/templates/DropIndicatorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FileUploaderTemplate.lit.js +1 -1
- package/dist/generated/templates/FileUploaderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FormItemTemplate.lit.js +1 -1
- package/dist/generated/templates/FormItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FormTemplate.lit.js +1 -1
- package/dist/generated/templates/FormTemplate.lit.js.map +1 -1
- package/dist/generated/templates/IconTemplate.lit.js +1 -1
- package/dist/generated/templates/IconTemplate.lit.js.map +1 -1
- package/dist/generated/templates/InputPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/InputPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/InputTemplate.lit.js +1 -1
- package/dist/generated/templates/InputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/LabelTemplate.lit.js +1 -1
- package/dist/generated/templates/LabelTemplate.lit.js.map +1 -1
- package/dist/generated/templates/LinkTemplate.lit.js +1 -1
- package/dist/generated/templates/LinkTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListItemBaseTemplate.lit.js +1 -1
- package/dist/generated/templates/ListItemBaseTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListItemCustomTemplate.lit.js +1 -1
- package/dist/generated/templates/ListItemCustomTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListItemGroupHeaderTemplate.lit.js +1 -1
- package/dist/generated/templates/ListItemGroupHeaderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListItemGroupTemplate.lit.js +1 -1
- package/dist/generated/templates/ListItemGroupTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListItemStandardTemplate.lit.js +1 -1
- package/dist/generated/templates/ListItemStandardTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListItemTemplate.lit.js +1 -1
- package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListTemplate.lit.js +1 -1
- package/dist/generated/templates/ListTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MenuItemTemplate.lit.js +1 -1
- package/dist/generated/templates/MenuItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MenuSeparatorTemplate.lit.js +1 -1
- package/dist/generated/templates/MenuSeparatorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MenuTemplate.lit.js +1 -1
- package/dist/generated/templates/MenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MessageStripTemplate.lit.js +1 -1
- package/dist/generated/templates/MessageStripTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MonthPickerTemplate.lit.js +1 -1
- package/dist/generated/templates/MonthPickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js +1 -1
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiInputTemplate.lit.js +1 -1
- package/dist/generated/templates/MultiInputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/NavigationMenuItemTemplate.lit.js +1 -1
- package/dist/generated/templates/NavigationMenuItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/NavigationMenuTemplate.lit.js +1 -1
- package/dist/generated/templates/NavigationMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/OptionCustomTemplate.lit.js +1 -1
- package/dist/generated/templates/OptionCustomTemplate.lit.js.map +1 -1
- package/dist/generated/templates/OptionTemplate.lit.js +1 -1
- package/dist/generated/templates/OptionTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PanelTemplate.lit.js +1 -1
- package/dist/generated/templates/PanelTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/PopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +1 -1
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PopupTemplate.lit.js +1 -1
- package/dist/generated/templates/PopupTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +1 -1
- package/dist/generated/templates/ProgressIndicatorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/RadioButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/RadioButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/RangeSliderTemplate.lit.js +1 -1
- package/dist/generated/templates/RangeSliderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/RatingIndicatorTemplate.lit.js +1 -1
- package/dist/generated/templates/RatingIndicatorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +1 -1
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SegmentedButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/SegmentedButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/SelectPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectTemplate.lit.js +1 -1
- package/dist/generated/templates/SelectTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SliderBaseTemplate.lit.js +1 -1
- package/dist/generated/templates/SliderBaseTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SliderTemplate.lit.js +1 -1
- package/dist/generated/templates/SliderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SplitButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/SplitButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/StepInputTemplate.lit.js +1 -1
- package/dist/generated/templates/StepInputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SuggestionItemCustomTemplate.lit.js +1 -1
- package/dist/generated/templates/SuggestionItemCustomTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SuggestionItemGroupTemplate.lit.js +1 -1
- package/dist/generated/templates/SuggestionItemGroupTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SuggestionItemTemplate.lit.js +1 -1
- package/dist/generated/templates/SuggestionItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js +1 -1
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SwitchTemplate.lit.js +1 -1
- package/dist/generated/templates/SwitchTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabContainerTemplate.lit.js +1 -1
- package/dist/generated/templates/TabContainerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabInOverflowTemplate.lit.js +1 -1
- package/dist/generated/templates/TabInOverflowTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabInStripTemplate.lit.js +1 -1
- package/dist/generated/templates/TabInStripTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +1 -1
- package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +1 -1
- package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabTemplate.lit.js +1 -1
- package/dist/generated/templates/TabTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TableCellTemplate.lit.js +1 -1
- package/dist/generated/templates/TableCellTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TableGrowingTemplate.lit.js +1 -1
- package/dist/generated/templates/TableGrowingTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TableHeaderCellTemplate.lit.js +1 -1
- package/dist/generated/templates/TableHeaderCellTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TableHeaderRowTemplate.lit.js +1 -1
- package/dist/generated/templates/TableHeaderRowTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TableRowTemplate.lit.js +1 -1
- 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/templates/TagTemplate.lit.js +1 -1
- package/dist/generated/templates/TagTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TextAreaTemplate.lit.js +1 -1
- package/dist/generated/templates/TextAreaTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TextTemplate.lit.js +1 -1
- package/dist/generated/templates/TextTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TimePickerClockTemplate.lit.js +1 -1
- package/dist/generated/templates/TimePickerClockTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TimePickerTemplate.lit.js +1 -1
- package/dist/generated/templates/TimePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TimeSelectionClocksTemplate.lit.js +1 -1
- package/dist/generated/templates/TimeSelectionClocksTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TimeSelectionInputsTemplate.lit.js +1 -1
- package/dist/generated/templates/TimeSelectionInputsTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TitleTemplate.lit.js +1 -1
- package/dist/generated/templates/TitleTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToastTemplate.lit.js +1 -1
- package/dist/generated/templates/ToastTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToggleButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/ToggleButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToggleSpinButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/ToggleSpinButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TokenTemplate.lit.js +1 -1
- package/dist/generated/templates/TokenTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TokenizerTemplate.lit.js +1 -1
- package/dist/generated/templates/TokenizerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarPopoverButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarPopoverButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarPopoverSelectTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarPopoverSelectTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarPopoverSeparatorTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarPopoverSeparatorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarSelectTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarSelectTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarSeparatorTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarSeparatorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarSpacerTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarSpacerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TreeItemBaseTemplate.lit.js +1 -1
- package/dist/generated/templates/TreeItemBaseTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TreeItemCustomTemplate.lit.js +1 -1
- package/dist/generated/templates/TreeItemCustomTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TreeItemTemplate.lit.js +1 -1
- package/dist/generated/templates/TreeItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TreeTemplate.lit.js +1 -1
- package/dist/generated/templates/TreeTemplate.lit.js.map +1 -1
- package/dist/generated/templates/YearPickerTemplate.lit.js +1 -1
- package/dist/generated/templates/YearPickerTemplate.lit.js.map +1 -1
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Avatar.css.js.map +1 -1
- package/dist/generated/themes/AvatarGroup.css.js +1 -1
- package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
- package/dist/generated/themes/Bar.css.js +1 -1
- package/dist/generated/themes/Bar.css.js.map +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
- package/dist/generated/themes/BusyIndicator.css.js +1 -1
- package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
- package/dist/generated/themes/Button.css.js +1 -1
- package/dist/generated/themes/Button.css.js.map +1 -1
- package/dist/generated/themes/Calendar.css.js +1 -1
- package/dist/generated/themes/Calendar.css.js.map +1 -1
- package/dist/generated/themes/CalendarHeader.css.js +1 -1
- package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegend.css.js +1 -1
- package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
- package/dist/generated/themes/Card.css.js +1 -1
- package/dist/generated/themes/Card.css.js.map +1 -1
- package/dist/generated/themes/CardHeader.css.js +1 -1
- package/dist/generated/themes/CardHeader.css.js.map +1 -1
- package/dist/generated/themes/Carousel.css.js +1 -1
- package/dist/generated/themes/Carousel.css.js.map +1 -1
- package/dist/generated/themes/CheckBox.css.js +1 -1
- package/dist/generated/themes/CheckBox.css.js.map +1 -1
- package/dist/generated/themes/ColorPalette.css.js +1 -1
- package/dist/generated/themes/ColorPalette.css.js.map +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
- package/dist/generated/themes/ColorPicker.css.js +1 -1
- package/dist/generated/themes/ColorPicker.css.js.map +1 -1
- package/dist/generated/themes/ComboBox.css.js +1 -1
- package/dist/generated/themes/ComboBox.css.js.map +1 -1
- package/dist/generated/themes/DatePicker.css.js +1 -1
- package/dist/generated/themes/DatePicker.css.js.map +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
- package/dist/generated/themes/DayPicker.css.js +1 -1
- package/dist/generated/themes/DayPicker.css.js.map +1 -1
- package/dist/generated/themes/Dialog.css.js +1 -1
- package/dist/generated/themes/Dialog.css.js.map +1 -1
- package/dist/generated/themes/FileUploader.css.js +1 -1
- package/dist/generated/themes/FileUploader.css.js.map +1 -1
- package/dist/generated/themes/Form.css.js +1 -1
- package/dist/generated/themes/Form.css.js.map +1 -1
- package/dist/generated/themes/FormItem.css.js +1 -1
- package/dist/generated/themes/FormItem.css.js.map +1 -1
- package/dist/generated/themes/FormLabelSpan.css.js +1 -1
- package/dist/generated/themes/FormLabelSpan.css.js.map +1 -1
- package/dist/generated/themes/GrowingButton.css.js +1 -1
- package/dist/generated/themes/GrowingButton.css.js.map +1 -1
- package/dist/generated/themes/Icon.css.js +1 -1
- package/dist/generated/themes/Icon.css.js.map +1 -1
- package/dist/generated/themes/Input.css.js +1 -1
- package/dist/generated/themes/Input.css.js.map +1 -1
- package/dist/generated/themes/InputIcon.css.js +1 -1
- package/dist/generated/themes/InputIcon.css.js.map +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
- package/dist/generated/themes/Link.css.js +1 -1
- package/dist/generated/themes/Link.css.js.map +1 -1
- package/dist/generated/themes/List.css.js +1 -1
- package/dist/generated/themes/List.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/ListItemBase.css.js +1 -1
- package/dist/generated/themes/ListItemBase.css.js.map +1 -1
- package/dist/generated/themes/ListItemCustom.css.js +1 -1
- package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
- package/dist/generated/themes/ListItemGroup.css.js +1 -1
- package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
- package/dist/generated/themes/ListItemIcon.css.js +1 -1
- package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
- package/dist/generated/themes/Menu.css.js +1 -1
- package/dist/generated/themes/Menu.css.js.map +1 -1
- package/dist/generated/themes/MenuItem.css.js +1 -1
- package/dist/generated/themes/MenuItem.css.js.map +1 -1
- package/dist/generated/themes/MessageStrip.css.js +1 -1
- package/dist/generated/themes/MessageStrip.css.js.map +1 -1
- package/dist/generated/themes/MonthPicker.css.js +1 -1
- package/dist/generated/themes/MonthPicker.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBox.css.js +1 -1
- package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
- package/dist/generated/themes/MultiInput.css.js +1 -1
- package/dist/generated/themes/MultiInput.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenu.css.js +1 -1
- package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenuItem.css.js +1 -1
- package/dist/generated/themes/NavigationMenuItem.css.js.map +1 -1
- package/dist/generated/themes/OptionBase.css.js +1 -1
- package/dist/generated/themes/OptionBase.css.js.map +1 -1
- package/dist/generated/themes/Panel.css.js +1 -1
- package/dist/generated/themes/Panel.css.js.map +1 -1
- package/dist/generated/themes/Popover.css.js +1 -1
- package/dist/generated/themes/Popover.css.js.map +1 -1
- package/dist/generated/themes/PopupsCommon.css.js +1 -1
- package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
- package/dist/generated/themes/RadioButton.css.js +1 -1
- package/dist/generated/themes/RadioButton.css.js.map +1 -1
- package/dist/generated/themes/RangeSlider.css.js +1 -1
- package/dist/generated/themes/RangeSlider.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButton.css.js +1 -1
- package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
- package/dist/generated/themes/Select.css.js +1 -1
- package/dist/generated/themes/Select.css.js.map +1 -1
- package/dist/generated/themes/SliderBase.css.js +1 -1
- package/dist/generated/themes/SliderBase.css.js.map +1 -1
- package/dist/generated/themes/SplitButton.css.js +1 -1
- package/dist/generated/themes/SplitButton.css.js.map +1 -1
- package/dist/generated/themes/StepInput.css.js +1 -1
- package/dist/generated/themes/StepInput.css.js.map +1 -1
- package/dist/generated/themes/SuggestionItem.css.js +1 -1
- package/dist/generated/themes/SuggestionItem.css.js.map +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.js +1 -1
- package/dist/generated/themes/Switch.css.js.map +1 -1
- package/dist/generated/themes/TabContainer.css.js +1 -1
- package/dist/generated/themes/TabContainer.css.js.map +1 -1
- package/dist/generated/themes/TabInOverflow.css.js +1 -1
- package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
- package/dist/generated/themes/TabInStrip.css.js +1 -1
- package/dist/generated/themes/TabInStrip.css.js.map +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
- package/dist/generated/themes/Table.css.js +1 -1
- package/dist/generated/themes/Table.css.js.map +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.js +1 -1
- package/dist/generated/themes/TableHeaderRow.css.js.map +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/TableRowBase.css.js +1 -1
- package/dist/generated/themes/TableRowBase.css.js.map +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.js +1 -1
- package/dist/generated/themes/Text.css.js.map +1 -1
- package/dist/generated/themes/TextArea.css.js +1 -1
- package/dist/generated/themes/TextArea.css.js.map +1 -1
- package/dist/generated/themes/TimePicker.css.js +1 -1
- package/dist/generated/themes/TimePicker.css.js.map +1 -1
- package/dist/generated/themes/Toast.css.js +1 -1
- package/dist/generated/themes/Toast.css.js.map +1 -1
- package/dist/generated/themes/ToggleButton.css.js +1 -1
- package/dist/generated/themes/ToggleButton.css.js.map +1 -1
- package/dist/generated/themes/Token.css.js +1 -1
- package/dist/generated/themes/Token.css.js.map +1 -1
- package/dist/generated/themes/Tokenizer.css.js +1 -1
- package/dist/generated/themes/Tokenizer.css.js.map +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
- package/dist/generated/themes/Toolbar.css.js +1 -1
- package/dist/generated/themes/Toolbar.css.js.map +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
- package/dist/generated/themes/TreeItem.css.js +1 -1
- package/dist/generated/themes/TreeItem.css.js.map +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
- package/dist/generated/themes/YearPicker.css.js +1 -1
- package/dist/generated/themes/YearPicker.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
- package/dist/popup-utils/OpenedPopupsRegistry.js.map +1 -1
- package/dist/popup-utils/PopoverRegistry.js.map +1 -1
- package/dist/timepicker-utils/TimeSlider.js.map +1 -1
- package/dist/types/TableCellHorizontalAlign.d.ts +28 -0
- package/dist/types/TableCellHorizontalAlign.js +30 -0
- package/dist/types/TableCellHorizontalAlign.js.map +1 -0
- package/dist/vscode.html-custom-data.json +39 -4
- package/dist/web-types.json +41 -6
- package/package.json +9 -9
- package/src/themes/Bar.css +14 -0
- package/src/themes/Carousel.css +4 -0
- package/src/themes/base/Bar-parameters.css +6 -2
- package/tsconfig.json +1 -2
package/dist/TextArea.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextArea.js","sourceRoot":"","sources":["../src/TextArea.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { getEffectiveAriaLabelText, getAssociatedLabelForTexts } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport getEffectiveScrollbarStyle from \"@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isEscape } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport Popover from \"./Popover.js\";\nimport Icon from \"./Icon.js\";\nimport type PopoverHorizontalAlign from \"./types/PopoverHorizontalAlign.js\";\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport \"@ui5/webcomponents-icons/dist/information.js\";\n\nimport TextAreaTemplate from \"./generated/templates/TextAreaTemplate.lit.js\";\n\nimport {\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_INFORMATION,\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_TYPE_SUCCESS,\n\tVALUE_STATE_TYPE_INFORMATION,\n\tVALUE_STATE_TYPE_ERROR,\n\tVALUE_STATE_TYPE_WARNING,\n\tTEXTAREA_CHARACTERS_LEFT,\n\tTEXTAREA_CHARACTERS_EXCEEDED,\n\tFORM_TEXTFIELD_REQUIRED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport textareaStyles from \"./generated/themes/TextArea.css.js\";\nimport valueStateMessageStyles from \"./generated/themes/ValueStateMessage.css.js\";\n\ntype TokenizedText = Array<string>;\ntype IndexedTokenizedText = Array<{\n\ttext: string;\n\tlast: boolean;\n}>;\n\ntype ExceededText = {\n\texceededText?: string;\n\tleftCharactersCount?: number;\n\tcalcedMaxLength?: number;\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-textarea` component is used to enter multiple rows of text.\n *\n * When empty, it can hold a placeholder similar to a `ui5-input`.\n * You can define the rows of the `ui5-textarea` and also determine specific behavior when handling long texts.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TextArea.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @csspart textarea - Used to style the native textarea\n */\n@customElement({\n\ttag: \"ui5-textarea\",\n\tformAssociated: true,\n\tlanguageAware: true,\n\tstyles: [\n\t\ttextareaStyles,\n\t\tvalueStateMessageStyles,\n\t\tgetEffectiveScrollbarStyle(),\n\t],\n\trenderer: litRender,\n\ttemplate: TextAreaTemplate,\n\tdependencies: [Popover, Icon],\n})\n/**\n * Fired when the text has changed and the focus leaves the component.\n * @public\n */\n@event(\"change\")\n\n/**\n * Fired when the value of the component changes at each keystroke or when\n * something is pasted.\n * @since 1.0.0-rc.5\n * @public\n */\n@event(\"input\")\n\n/**\n * Fired when some text has been selected.\n *\n * @since 1.23.0\n * @public\n */\n@event(\"select\")\n\n/**\n * Fired when textarea is scrolled.\n *\n * @since 1.23.0\n * @public\n */\n@event(\"scroll\")\n\nclass TextArea extends UI5Element implements IFormInputElement {\n\t/**\n\t * Defines the value of the component.\n\t * @formEvents change input\n\t * @formProperty\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tvalue = \"\";\n\t/**\n\t * Indicates whether the user can interact with the component or not.\n\t *\n\t * **Note:** A disabled component is completely noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\t/**\n\t * Defines whether the component is read-only.\n\t *\n\t * **Note:** A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\t/**\n\t * Defines whether the component is required.\n\t * @default false\n\t * @public\n\t * @since 1.0.0-rc.3\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Defines a short hint intended to aid the user with data entry when the component has no value.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tplaceholder?: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t *\n\t * **Note:** If `maxlength` property is set,\n\t * the component turns into \"Critical\" state once the characters exceeds the limit.\n\t * In this case, only the \"Negative\" state is considered and can be applied.\n\t * @default \"None\"\n\t * @since 1.0.0-rc.7\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Defines the number of visible text rows for the component.\n\t *\n\t * **Notes:**\n\t *\n\t * - If the `growing` property is enabled, this property defines the minimum rows to be displayed\n\t * in the textarea.\n\t * - The CSS `height` property wins over the `rows` property, if both are set.\n\t * @default 0\n\t * @public\n\t */\n\t@property({ type: Number })\n\trows = 0;\n\n\t/**\n\t * Defines the maximum number of characters that the `value` can have.\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ type: Number })\n\tmaxlength?: number\n\n\t/**\n\t * Determines whether the characters exceeding the maximum allowed character count are visible\n\t * in the component.\n\t *\n\t * If set to `false`, the user is not allowed to enter more characters than what is set in the\n\t * `maxlength` property.\n\t * If set to `true` the characters exceeding the `maxlength` value are selected on\n\t * paste and the counter below the component displays their number.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowExceededText = false;\n\n\t/**\n\t * Enables the component to automatically grow and shrink dynamically with its content.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tgrowing = false;\n\n\t/**\n\t * Defines the maximum number of rows that the component can grow.\n\t * @default 0\n\t * @public\n\t */\n\t@property({ type: Number })\n\tgrowingMaxRows = 0;\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the textarea.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t/**\n\t * @private\n\t */\n\t @property({ type: Boolean })\n\texceeding = false;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Array })\n\t_mirrorText: IndexedTokenizedText = [];\n\n\t/**\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\t_maxHeight?: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Number })\n\t_width?: number;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the component.\n\t * The value state message slot should contain only one root element.\n \t *\n\t * **Note:** If not specified, a default text (in the respective language) will be displayed.\n\t *\n\t * **Note:** The `valueStateMessage` would be displayed if the component has\n\t * `valueState` of type `Information`, `Critical` or `Negative`.\n\t * @since 1.0.0-rc.7\n\t * @public\n\t */\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\t_fnOnResize: ResizeObserverCallback;\n\t_firstRendering: boolean;\n\t_openValueStateMsgPopover: boolean;\n\t_exceededTextProps!: ExceededText;\n\t_keyDown?: boolean;\n\tpreviousValue: string;\n\tvalueStatePopover?: Popover;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tget formValidityMessage() {\n\t\treturn TextArea.i18nBundle.getText(FORM_TEXTFIELD_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.value };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue(): FormData | string | null {\n\t\treturn this.value;\n\t}\n\n\tstatic async onDefine() {\n\t\tTextArea.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._firstRendering = true;\n\t\tthis._openValueStateMsgPopover = false;\n\t\tthis._fnOnResize = this._onResize.bind(this);\n\t\tthis.previousValue = \"\";\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._fnOnResize);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._fnOnResize);\n\t}\n\n\tonBeforeRendering() {\n\t\tif (!this.value) {\n\t\t\t// fallback to default value\n\t\t\tthis.value = \"\";\n\t\t}\n\n\t\tthis._exceededTextProps = this._calcExceededText();\n\t\tthis._mirrorText = this._tokenizeText(this.value);\n\n\t\tthis.exceeding = !!this._exceededTextProps.leftCharactersCount && this._exceededTextProps.leftCharactersCount < 0;\n\t\tthis._setCSSParams();\n\t}\n\n\tonAfterRendering() {\n\t\tconst nativeTextArea = this.getInputDomRef()!;\n\n\t\tif (this.rows === 1) {\n\t\t\tnativeTextArea.setAttribute(\"rows\", \"1\");\n\t\t} else {\n\t\t\tnativeTextArea.removeAttribute(\"rows\");\n\t\t}\n\n\t\tthis.toggleValueStateMessage(this.openValueStateMsgPopover);\n\t\tthis._firstRendering = false;\n\t}\n\n\tgetInputDomRef() {\n\t\treturn this.getDomRef()!.querySelector<HTMLTextAreaElement>(\"textarea\")!;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tthis._keyDown = true;\n\n\t\tif (isEscape(e)) {\n\t\t\tconst nativeTextArea = this.getInputDomRef();\n\n\t\t\tthis.value = this.previousValue;\n\t\t\tnativeTextArea.value = this.value;\n\t\t\tthis.fireEvent(\"input\");\n\t\t}\n\t}\n\n\t_onkeyup() {\n\t\tthis._keyDown = false;\n\t}\n\n\t_onfocusin() {\n\t\tthis.focused = true;\n\t\tthis._openValueStateMsgPopover = true;\n\t\tthis.previousValue = this.getInputDomRef().value;\n\t}\n\n\t_onfocusout(e: FocusEvent) {\n\t\tconst eTarget = e.relatedTarget as HTMLElement;\n\t\tconst focusedOutToValueStateMessage = eTarget && this.contains(eTarget);\n\n\t\tthis.focused = false;\n\n\t\tif (!focusedOutToValueStateMessage) {\n\t\t\tthis._openValueStateMsgPopover = false;\n\t\t}\n\t}\n\n\t_onchange() {\n\t\tthis.fireEvent(\"change\", {});\n\t}\n\n\t_onselect() {\n\t\tthis.fireEvent(\"select\", {});\n\t}\n\n\t_onscroll() {\n\t\tthis.fireEvent(\"scroll\", {});\n\t}\n\n\t_oninput(e: InputEvent) {\n\t\tconst nativeTextArea = this.getInputDomRef()!;\n\n\t\tif (e.target === nativeTextArea) {\n\t\t\t// stop the native event, as the semantic \"input\" would be fired.\n\t\t\te.stopImmediatePropagation();\n\t\t}\n\n\t\tthis.value = nativeTextArea.value;\n\t\tconst valueLength = this.value.length;\n\n\t\tif (e.inputType === \"insertFromPaste\" && this.maxlength && valueLength > this.maxlength) {\n\t\t\tnativeTextArea.setSelectionRange(this.maxlength, valueLength);\n\t\t}\n\n\t\tthis.fireEvent(\"input\", {});\n\n\t\t// Angular two way data binding\n\t\tthis.fireEvent(\"value-changed\");\n\t}\n\n\t_onResize() {\n\t\tif (this.displayValueStateMessagePopover) {\n\t\t\tthis._width = this.offsetWidth;\n\t\t}\n\t}\n\n\t_setCSSParams() {\n\t\tthis.style.setProperty(\"--_textarea_rows\", this.rows ? String(this.rows) : \"2\");\n\t\tthis.style.setProperty(\"--_textarea_growing_max_rows\", String(this.growingMaxRows));\n\t}\n\n\ttoggleValueStateMessage(toggle: boolean) {\n\t\tif (toggle) {\n\t\t\tthis.openPopover();\n\t\t} else {\n\t\t\tthis.closePopover();\n\t\t}\n\t}\n\n\topenPopover() {\n\t\tthis.valueStatePopover = this._getPopover();\n\t\tif (this.valueStatePopover) {\n\t\t\tthis.valueStatePopover.opener = this.shadowRoot!.querySelector<HTMLElement>(\".ui5-textarea-root .ui5-textarea-wrapper\")!;\n\t\t\tthis.valueStatePopover.open = true;\n\t\t}\n\t}\n\n\tclosePopover() {\n\t\tthis.valueStatePopover = this._getPopover();\n\t\tif (this.valueStatePopover) {\n\t\t\tthis.valueStatePopover.open = false;\n\t\t}\n\t}\n\n\t_getPopover() {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\"[ui5-popover]\")!;\n\t}\n\n\t_tokenizeText(value: string) {\n\t\tconst tokenizedText = value.replace(/&/gm, \"&\").replace(/\"/gm, \""\").replace(/'/gm, \"'\").replace(/</gm, \"<\")\n\t\t\t.replace(/>/gm, \">\")\n\t\t\t.split(\"\\n\");\n\n\t\tif (tokenizedText.length < this.rows) {\n\t\t\treturn this._mapTokenizedTextToObject([...tokenizedText, ...Array(this.rows - tokenizedText.length).fill(\"\")] as TokenizedText);\n\t\t}\n\n\t\treturn this._mapTokenizedTextToObject(tokenizedText);\n\t}\n\n\t_mapTokenizedTextToObject(tokenizedText: TokenizedText) {\n\t\treturn tokenizedText.map((token, index) => {\n\t\t\treturn {\n\t\t\t\ttext: token,\n\t\t\t\tlast: index === (tokenizedText.length - 1),\n\t\t\t};\n\t\t});\n\t}\n\n\t_calcExceededText() {\n\t\tlet calcedMaxLength,\n\t\t\texceededText,\n\t\t\tleftCharactersCount;\n\n\t\tif (this.showExceededText) {\n\t\t\tconst maxLength = this.maxlength;\n\n\t\t\tif (maxLength !== null && maxLength !== undefined) {\n\t\t\t\tleftCharactersCount = maxLength - this.value.length;\n\n\t\t\t\tif (leftCharactersCount >= 0) {\n\t\t\t\t\texceededText = TextArea.i18nBundle.getText(TEXTAREA_CHARACTERS_LEFT, leftCharactersCount);\n\t\t\t\t} else {\n\t\t\t\t\texceededText = TextArea.i18nBundle.getText(TEXTAREA_CHARACTERS_EXCEEDED, Math.abs(leftCharactersCount));\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tcalcedMaxLength = this.maxlength;\n\t\t}\n\n\t\treturn {\n\t\t\texceededText, leftCharactersCount, calcedMaxLength,\n\t\t};\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-textarea-root\": true,\n\t\t\t\t\"ui5-content-custom-scrollbars\": !!getEffectiveScrollbarStyle(),\n\t\t\t},\n\t\t\tvalueStateMsg: {\n\t\t\t\t\"ui5-valuestatemessage-header\": true,\n\t\t\t\t\"ui5-valuestatemessage--error\": this.valueState === ValueState.Negative,\n\t\t\t\t\"ui5-valuestatemessage--warning\": this.valueState === ValueState.Critical,\n\t\t\t\t\"ui5-valuestatemessage--information\": this.valueState === ValueState.Information,\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tvalueStateMsgPopover: {\n\t\t\t\t\"max-width\": `${this._width!}px`,\n\t\t\t},\n\t\t};\n\t}\n\n\tget tabIndex() {\n\t\treturn this.disabled ? -1 : 0;\n\t}\n\n\tget ariaLabelText() {\n\t\tconst effectiveAriaLabelText = getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this);\n\n\t\tif (this.showExceededText) {\n\t\t\tif (effectiveAriaLabelText) {\n\t\t\t\treturn effectiveAriaLabelText.concat(\" \", this._exceededTextProps.exceededText!);\n\t\t\t}\n\n\t\t\treturn this._exceededTextProps.exceededText;\n\t\t}\n\n\t\treturn effectiveAriaLabelText;\n\t}\n\n\tget ariaDescribedBy() {\n\t\treturn this.hasValueState ? `${this._id}-valueStateDesc` : undefined;\n\t}\n\n\tget ariaValueStateHiddenText() {\n\t\tif (!this.hasValueState) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.valueState === ValueState.None) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.hasCustomValueState) {\n\t\t\treturn `${this.valueStateTypeMappings[this.valueState]}`.concat(\" \", this.valueStateMessage.map(el => el.textContent).join(\" \"));\n\t\t}\n\n\t\treturn `${this.valueStateTypeMappings[this.valueState]} ${this.valueStateDefaultText}`;\n\t}\n\n\tget valueStateDefaultText() {\n\t\tif (this.valueState !== ValueState.None) {\n\t\t\treturn this.valueStateTextMappings[this.valueState];\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\tget ariaInvalid() {\n\t\treturn this.valueState === ValueState.Negative ? \"true\" : null;\n\t}\n\n\tget openValueStateMsgPopover() {\n\t\treturn !this._firstRendering && this._openValueStateMsgPopover && this.displayValueStateMessagePopover;\n\t}\n\n\tget displayValueStateMessagePopover() {\n\t\treturn !this.readonly && (this.hasCustomValueState || this.hasValueState);\n\t}\n\n\tget hasCustomValueState() {\n\t\treturn !!this.valueStateMessage.length && this.hasValueState;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState === ValueState.Negative || this.valueState === ValueState.Critical || this.valueState === ValueState.Information;\n\t}\n\n\tget _valueStatePopoverHorizontalAlign(): `${PopoverHorizontalAlign}` {\n\t\treturn this.effectiveDir !== \"rtl\" ? \"Start\" : \"End\";\n\t}\n\n\t/**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\tget _valueStateMessageIcon() {\n\t\tconst iconPerValueState = {\n\t\t\tNegative: \"error\",\n\t\t\tCritical: \"alert\",\n\t\t\tPositive: \"sys-enter-2\",\n\t\t\tInformation: \"information\",\n\t\t};\n\n\t\treturn this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : \"\";\n\t}\n\n\tget valueStateTextMappings() {\n\t\treturn {\n\t\t\t\"Positive\": TextArea.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t\t\"Information\": TextArea.i18nBundle.getText(VALUE_STATE_INFORMATION),\n\t\t\t\"Negative\": TextArea.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Critical\": TextArea.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t};\n\t}\n\n\tget valueStateTypeMappings() {\n\t\treturn {\n\t\t\t\"Positive\": TextArea.i18nBundle.getText(VALUE_STATE_TYPE_SUCCESS),\n\t\t\t\"Information\": TextArea.i18nBundle.getText(VALUE_STATE_TYPE_INFORMATION),\n\t\t\t\"Negative\": TextArea.i18nBundle.getText(VALUE_STATE_TYPE_ERROR),\n\t\t\t\"Critical\": TextArea.i18nBundle.getText(VALUE_STATE_TYPE_WARNING),\n\t\t};\n\t}\n}\n\nTextArea.define();\n\nexport default TextArea;\n"]}
|
|
1
|
+
{"version":3,"file":"TextArea.js","sourceRoot":"","sources":["../src/TextArea.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,UAAU,MAAM,kDAAkD,CAAC;AAC1E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,aAAa,MAAM,wDAAwD,CAAC;AAEnF,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AAC7H,OAAO,0BAA0B,MAAM,iEAAiE,CAAC;AACzG,OAAO,IAAI,MAAM,iDAAiD,CAAC;AAEnE,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAEhE,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,wCAAwC,CAAC;AAChD,OAAO,wCAAwC,CAAC;AAChD,OAAO,8CAA8C,CAAC;AACtD,OAAO,8CAA8C,CAAC;AAEtD,OAAO,gBAAgB,MAAM,+CAA+C,CAAC;AAE7E,OAAO,EACN,mBAAmB,EACnB,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,GACvB,MAAM,mCAAmC,CAAC;AAE3C,SAAS;AACT,OAAO,cAAc,MAAM,oCAAoC,CAAC;AAChE,OAAO,uBAAuB,MAAM,6CAA6C,CAAC;AAclF;;;;;;;;;;;;;;;;;GAiBG;AA4CH,IAAM,QAAQ,gBAAd,MAAM,QAAS,SAAQ,UAAU;IAkMhC,IAAI,mBAAmB;QACtB,OAAO,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,YAAY;QACf,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,iBAAiB;QACtB,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,kBAAkB;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED;QACC,KAAK,EAAE,CAAC;QAlNT;;;;;;WAMG;QAEH,UAAK,GAAG,EAAE,CAAC;QACX;;;;;;WAMG;QAEH,aAAQ,GAAG,KAAK,CAAC;QACjB;;;;;;;WAOG;QAEH,aAAQ,GAAG,KAAK,CAAC;QACjB;;;;;WAKG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAUjB;;;;;;;;;WASG;QAEH,eAAU,GAAoB,MAAM,CAAC;QAErC;;;;;;;;;;WAUG;QAEH,SAAI,GAAG,CAAC,CAAC;QAUT;;;;;;;;;;WAUG;QAEH,qBAAgB,GAAG,KAAK,CAAC;QAEzB;;;;WAIG;QAEH,YAAO,GAAG,KAAK,CAAC;QAEhB;;;;WAIG;QAEH,mBAAc,GAAG,CAAC,CAAC;QA8BnB;;WAEG;QAEH,YAAO,GAAG,KAAK,CAAC;QAEhB;;WAEG;QAEH,cAAS,GAAG,KAAK,CAAC;QAElB;;WAEG;QAEH,gBAAW,GAAyB,EAAE,CAAC;QA0DtC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;IACzB,CAAC;IAED,UAAU;QACT,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IAED,SAAS;QACR,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACjB,4BAA4B;YAC5B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QACjB,CAAC;QAED,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACnD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAElD,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,IAAI,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,GAAG,CAAC,CAAC;QAClH,IAAI,CAAC,aAAa,EAAE,CAAC;IACtB,CAAC;IAED,gBAAgB;QACf,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAG,CAAC;QAE9C,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACrB,cAAc,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACP,cAAc,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;QAED,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAC5D,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED,cAAc;QACb,OAAO,IAAI,CAAC,SAAS,EAAG,CAAC,aAAa,CAAsB,UAAU,CAAE,CAAC;IAC1E,CAAC;IAED,UAAU,CAAC,CAAgB;QAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QAErB,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACjB,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YAE7C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC;YAChC,cAAc,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YAClC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;IACF,CAAC;IAED,QAAQ;QACP,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,UAAU;QACT,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC;IAClD,CAAC;IAED,WAAW,CAAC,CAAa;QACxB,MAAM,OAAO,GAAG,CAAC,CAAC,aAA4B,CAAC;QAC/C,MAAM,6BAA6B,GAAG,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAExE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QAErB,IAAI,CAAC,6BAA6B,EAAE,CAAC;YACpC,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC;QACxC,CAAC;IACF,CAAC;IAED,SAAS;QACR,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,SAAS;QACR,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,SAAS;QACR,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,QAAQ,CAAC,CAAa;QACrB,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAG,CAAC;QAE9C,IAAI,CAAC,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;YACjC,iEAAiE;YACjE,CAAC,CAAC,wBAAwB,EAAE,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QAEtC,IAAI,CAAC,CAAC,SAAS,KAAK,iBAAiB,IAAI,IAAI,CAAC,SAAS,IAAI,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YACzF,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAE5B,+BAA+B;QAC/B,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IACjC,CAAC;IAED,SAAS;QACR,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;YAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;QAChC,CAAC;IACF,CAAC;IAED,aAAa;QACZ,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAChF,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,8BAA8B,EAAE,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,uBAAuB,CAAC,MAAe;QACtC,IAAI,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,WAAW,EAAE,CAAC;QACpB,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,YAAY,EAAE,CAAC;QACrB,CAAC;IACF,CAAC;IAED,WAAW;QACV,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC5C,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,IAAI,CAAC,UAAW,CAAC,aAAa,CAAc,0CAA0C,CAAE,CAAC;YACzH,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,IAAI,CAAC;QACpC,CAAC;IACF,CAAC;IAED,YAAY;QACX,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC5C,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,KAAK,CAAC;QACrC,CAAC;IACF,CAAC;IAED,WAAW;QACV,OAAO,IAAI,CAAC,UAAW,CAAC,aAAa,CAAU,eAAe,CAAE,CAAC;IAClE,CAAC;IAED,aAAa,CAAC,KAAa;QAC1B,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;aACvH,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;aACnB,KAAK,CAAC,IAAI,CAAC,CAAC;QAEd,IAAI,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC,yBAAyB,CAAC,CAAC,GAAG,aAAa,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAkB,CAAC,CAAC;QACjI,CAAC;QAED,OAAO,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;IACtD,CAAC;IAED,yBAAyB,CAAC,aAA4B;QACrD,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACzC,OAAO;gBACN,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,KAAK,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;aAC1C,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,iBAAiB;QAChB,IAAI,eAAe,EAClB,YAAY,EACZ,mBAAmB,CAAC;QAErB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAEjC,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBACnD,mBAAmB,GAAG,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;gBAEpD,IAAI,mBAAmB,IAAI,CAAC,EAAE,CAAC;oBAC9B,YAAY,GAAG,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,wBAAwB,EAAE,mBAAmB,CAAC,CAAC;gBAC3F,CAAC;qBAAM,CAAC;oBACP,YAAY,GAAG,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,4BAA4B,EAAE,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC;gBACzG,CAAC;YACF,CAAC;QACF,CAAC;aAAM,CAAC;YACP,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,CAAC;QAED,OAAO;YACN,YAAY,EAAE,mBAAmB,EAAE,eAAe;SAClD,CAAC;IACH,CAAC;IAED,IAAI,OAAO;QACV,OAAO;YACN,IAAI,EAAE;gBACL,mBAAmB,EAAE,IAAI;gBACzB,+BAA+B,EAAE,CAAC,CAAC,0BAA0B,EAAE;aAC/D;YACD,aAAa,EAAE;gBACd,8BAA8B,EAAE,IAAI;gBACpC,8BAA8B,EAAE,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,QAAQ;gBACvE,gCAAgC,EAAE,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,QAAQ;gBACzE,oCAAoC,EAAE,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,WAAW;aAChF;SACD,CAAC;IACH,CAAC;IAED,IAAI,MAAM;QACT,OAAO;YACN,oBAAoB,EAAE;gBACrB,WAAW,EAAE,GAAG,IAAI,CAAC,MAAO,IAAI;aAChC;SACD,CAAC;IACH,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,aAAa;QAChB,MAAM,sBAAsB,GAAG,yBAAyB,CAAC,IAAI,CAAC,IAAI,0BAA0B,CAAC,IAAI,CAAC,CAAC;QAEnG,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,IAAI,sBAAsB,EAAE,CAAC;gBAC5B,OAAO,sBAAsB,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,kBAAkB,CAAC,YAAa,CAAC,CAAC;YAClF,CAAC;YAED,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC;QAC7C,CAAC;QAED,OAAO,sBAAsB,CAAC;IAC/B,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC;IACtE,CAAC;IAED,IAAI,wBAAwB;QAC3B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACzB,OAAO;QACR,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;YACzC,OAAO;QACR,CAAC;QAED,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAClI,CAAC;QAED,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACxF,CAAC;IAED,IAAI,qBAAqB;QACxB,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,EAAE,CAAC;IACX,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAChE,CAAC;IAED,IAAI,wBAAwB;QAC3B,OAAO,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,yBAAyB,IAAI,IAAI,CAAC,+BAA+B,CAAC;IACxG,CAAC;IAED,IAAI,+BAA+B;QAClC,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,mBAAmB;QACtB,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC;IAC9D,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,WAAW,CAAC;IACzI,CAAC;IAED,IAAI,iCAAiC;QACpC,OAAO,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,IAAI,sBAAsB;QACzB,MAAM,iBAAiB,GAAG;YACzB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,aAAa;YACvB,WAAW,EAAE,aAAa;SAC1B,CAAC;QAEF,OAAO,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,CAAC;IAED,IAAI,sBAAsB;QACzB,OAAO;YACN,UAAU,EAAE,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,mBAAmB,CAAC;YAC5D,aAAa,EAAE,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,uBAAuB,CAAC;YACnE,UAAU,EAAE,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,iBAAiB,CAAC;YAC1D,UAAU,EAAE,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,mBAAmB,CAAC;SAC5D,CAAC;IACH,CAAC;IAED,IAAI,sBAAsB;QACzB,OAAO;YACN,UAAU,EAAE,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,wBAAwB,CAAC;YACjE,aAAa,EAAE,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,4BAA4B,CAAC;YACxE,UAAU,EAAE,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,sBAAsB,CAAC;YAC/D,UAAU,EAAE,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,wBAAwB,CAAC;SACjE,CAAC;IACH,CAAC;CACD,CAAA;AA3gBA;IADC,QAAQ,EAAE;uCACA;AASX;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;0CACX;AAUjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;0CACX;AAQjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;0CACX;AAQjB;IADC,QAAQ,EAAE;6CACU;AAarB;IADC,QAAQ,EAAE;4CAC0B;AAcrC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;sCAClB;AAQT;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;2CACT;AAclB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;kDACH;AAQzB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;yCACZ;AAQhB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;gDACR;AAUnB;IADC,QAAQ,EAAE;sCACG;AASd;IADC,QAAQ,EAAE;gDACa;AASxB;IADC,QAAQ,EAAE;mDACgB;AAM3B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;yCACZ;AAMhB;IADE,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;2CACX;AAMlB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;6CACa;AAMvC;IADC,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;4CACZ;AAMpB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;wCACX;AAchB;IADC,IAAI,EAAE;mDACgC;AAWhC;IADN,IAAI,CAAC,oBAAoB,CAAC;kCACG;AAhMzB,QAAQ;IA3Cb,aAAa,CAAC;QACd,GAAG,EAAE,cAAc;QACnB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE;YACP,cAAc;YACd,uBAAuB;YACvB,0BAA0B,EAAE;SAC5B;QACD,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,gBAAgB;QAC1B,YAAY,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC;KAC7B,CAAC;IACF;;;OAGG;;IACF,KAAK,CAAC,QAAQ,CAAC;IAEhB;;;;;OAKG;;IACF,KAAK,CAAC,OAAO,CAAC;IAEf;;;;;OAKG;;IACF,KAAK,CAAC,QAAQ,CAAC;IAEhB;;;;;OAKG;;IACF,KAAK,CAAC,QAAQ,CAAC;GAEV,QAAQ,CAohBb;AAED,QAAQ,CAAC,MAAM,EAAE,CAAC;AAElB,eAAe,QAAQ,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { getEffectiveAriaLabelText, getAssociatedLabelForTexts } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport getEffectiveScrollbarStyle from \"@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isEscape } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport Popover from \"./Popover.js\";\nimport Icon from \"./Icon.js\";\nimport type PopoverHorizontalAlign from \"./types/PopoverHorizontalAlign.js\";\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport \"@ui5/webcomponents-icons/dist/information.js\";\n\nimport TextAreaTemplate from \"./generated/templates/TextAreaTemplate.lit.js\";\n\nimport {\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_INFORMATION,\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_TYPE_SUCCESS,\n\tVALUE_STATE_TYPE_INFORMATION,\n\tVALUE_STATE_TYPE_ERROR,\n\tVALUE_STATE_TYPE_WARNING,\n\tTEXTAREA_CHARACTERS_LEFT,\n\tTEXTAREA_CHARACTERS_EXCEEDED,\n\tFORM_TEXTFIELD_REQUIRED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport textareaStyles from \"./generated/themes/TextArea.css.js\";\nimport valueStateMessageStyles from \"./generated/themes/ValueStateMessage.css.js\";\n\ntype TokenizedText = Array<string>;\ntype IndexedTokenizedText = Array<{\n\ttext: string;\n\tlast: boolean;\n}>;\n\ntype ExceededText = {\n\texceededText?: string;\n\tleftCharactersCount?: number;\n\tcalcedMaxLength?: number;\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-textarea` component is used to enter multiple rows of text.\n *\n * When empty, it can hold a placeholder similar to a `ui5-input`.\n * You can define the rows of the `ui5-textarea` and also determine specific behavior when handling long texts.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TextArea.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @csspart textarea - Used to style the native textarea\n */\n@customElement({\n\ttag: \"ui5-textarea\",\n\tformAssociated: true,\n\tlanguageAware: true,\n\tstyles: [\n\t\ttextareaStyles,\n\t\tvalueStateMessageStyles,\n\t\tgetEffectiveScrollbarStyle(),\n\t],\n\trenderer: litRender,\n\ttemplate: TextAreaTemplate,\n\tdependencies: [Popover, Icon],\n})\n/**\n * Fired when the text has changed and the focus leaves the component.\n * @public\n */\n@event(\"change\")\n\n/**\n * Fired when the value of the component changes at each keystroke or when\n * something is pasted.\n * @since 1.0.0-rc.5\n * @public\n */\n@event(\"input\")\n\n/**\n * Fired when some text has been selected.\n *\n * @since 1.23.0\n * @public\n */\n@event(\"select\")\n\n/**\n * Fired when textarea is scrolled.\n *\n * @since 1.23.0\n * @public\n */\n@event(\"scroll\")\n\nclass TextArea extends UI5Element implements IFormInputElement {\n\t/**\n\t * Defines the value of the component.\n\t * @formEvents change input\n\t * @formProperty\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tvalue = \"\";\n\t/**\n\t * Indicates whether the user can interact with the component or not.\n\t *\n\t * **Note:** A disabled component is completely noninteractive.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\t/**\n\t * Defines whether the component is read-only.\n\t *\n\t * **Note:** A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\t/**\n\t * Defines whether the component is required.\n\t * @default false\n\t * @public\n\t * @since 1.0.0-rc.3\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Defines a short hint intended to aid the user with data entry when the component has no value.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tplaceholder?: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t *\n\t * **Note:** If `maxlength` property is set,\n\t * the component turns into \"Critical\" state once the characters exceeds the limit.\n\t * In this case, only the \"Negative\" state is considered and can be applied.\n\t * @default \"None\"\n\t * @since 1.0.0-rc.7\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Defines the number of visible text rows for the component.\n\t *\n\t * **Notes:**\n\t *\n\t * - If the `growing` property is enabled, this property defines the minimum rows to be displayed\n\t * in the textarea.\n\t * - The CSS `height` property wins over the `rows` property, if both are set.\n\t * @default 0\n\t * @public\n\t */\n\t@property({ type: Number })\n\trows = 0;\n\n\t/**\n\t * Defines the maximum number of characters that the `value` can have.\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ type: Number })\n\tmaxlength?: number\n\n\t/**\n\t * Determines whether the characters exceeding the maximum allowed character count are visible\n\t * in the component.\n\t *\n\t * If set to `false`, the user is not allowed to enter more characters than what is set in the\n\t * `maxlength` property.\n\t * If set to `true` the characters exceeding the `maxlength` value are selected on\n\t * paste and the counter below the component displays their number.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowExceededText = false;\n\n\t/**\n\t * Enables the component to automatically grow and shrink dynamically with its content.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tgrowing = false;\n\n\t/**\n\t * Defines the maximum number of rows that the component can grow.\n\t * @default 0\n\t * @public\n\t */\n\t@property({ type: Number })\n\tgrowingMaxRows = 0;\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the textarea.\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused = false;\n\n\t/**\n\t * @private\n\t */\n\t @property({ type: Boolean })\n\texceeding = false;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Array })\n\t_mirrorText: IndexedTokenizedText = [];\n\n\t/**\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\t_maxHeight?: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Number })\n\t_width?: number;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the component.\n\t * The value state message slot should contain only one root element.\n \t *\n\t * **Note:** If not specified, a default text (in the respective language) will be displayed.\n\t *\n\t * **Note:** The `valueStateMessage` would be displayed if the component has\n\t * `valueState` of type `Information`, `Critical` or `Negative`.\n\t * @since 1.0.0-rc.7\n\t * @public\n\t */\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\t_fnOnResize: ResizeObserverCallback;\n\t_firstRendering: boolean;\n\t_openValueStateMsgPopover: boolean;\n\t_exceededTextProps!: ExceededText;\n\t_keyDown?: boolean;\n\tpreviousValue: string;\n\tvalueStatePopover?: Popover;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tget formValidityMessage() {\n\t\treturn TextArea.i18nBundle.getText(FORM_TEXTFIELD_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.value };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn this.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue(): FormData | string | null {\n\t\treturn this.value;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._firstRendering = true;\n\t\tthis._openValueStateMsgPopover = false;\n\t\tthis._fnOnResize = this._onResize.bind(this);\n\t\tthis.previousValue = \"\";\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._fnOnResize);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._fnOnResize);\n\t}\n\n\tonBeforeRendering() {\n\t\tif (!this.value) {\n\t\t\t// fallback to default value\n\t\t\tthis.value = \"\";\n\t\t}\n\n\t\tthis._exceededTextProps = this._calcExceededText();\n\t\tthis._mirrorText = this._tokenizeText(this.value);\n\n\t\tthis.exceeding = !!this._exceededTextProps.leftCharactersCount && this._exceededTextProps.leftCharactersCount < 0;\n\t\tthis._setCSSParams();\n\t}\n\n\tonAfterRendering() {\n\t\tconst nativeTextArea = this.getInputDomRef()!;\n\n\t\tif (this.rows === 1) {\n\t\t\tnativeTextArea.setAttribute(\"rows\", \"1\");\n\t\t} else {\n\t\t\tnativeTextArea.removeAttribute(\"rows\");\n\t\t}\n\n\t\tthis.toggleValueStateMessage(this.openValueStateMsgPopover);\n\t\tthis._firstRendering = false;\n\t}\n\n\tgetInputDomRef() {\n\t\treturn this.getDomRef()!.querySelector<HTMLTextAreaElement>(\"textarea\")!;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tthis._keyDown = true;\n\n\t\tif (isEscape(e)) {\n\t\t\tconst nativeTextArea = this.getInputDomRef();\n\n\t\t\tthis.value = this.previousValue;\n\t\t\tnativeTextArea.value = this.value;\n\t\t\tthis.fireEvent(\"input\");\n\t\t}\n\t}\n\n\t_onkeyup() {\n\t\tthis._keyDown = false;\n\t}\n\n\t_onfocusin() {\n\t\tthis.focused = true;\n\t\tthis._openValueStateMsgPopover = true;\n\t\tthis.previousValue = this.getInputDomRef().value;\n\t}\n\n\t_onfocusout(e: FocusEvent) {\n\t\tconst eTarget = e.relatedTarget as HTMLElement;\n\t\tconst focusedOutToValueStateMessage = eTarget && this.contains(eTarget);\n\n\t\tthis.focused = false;\n\n\t\tif (!focusedOutToValueStateMessage) {\n\t\t\tthis._openValueStateMsgPopover = false;\n\t\t}\n\t}\n\n\t_onchange() {\n\t\tthis.fireEvent(\"change\", {});\n\t}\n\n\t_onselect() {\n\t\tthis.fireEvent(\"select\", {});\n\t}\n\n\t_onscroll() {\n\t\tthis.fireEvent(\"scroll\", {});\n\t}\n\n\t_oninput(e: InputEvent) {\n\t\tconst nativeTextArea = this.getInputDomRef()!;\n\n\t\tif (e.target === nativeTextArea) {\n\t\t\t// stop the native event, as the semantic \"input\" would be fired.\n\t\t\te.stopImmediatePropagation();\n\t\t}\n\n\t\tthis.value = nativeTextArea.value;\n\t\tconst valueLength = this.value.length;\n\n\t\tif (e.inputType === \"insertFromPaste\" && this.maxlength && valueLength > this.maxlength) {\n\t\t\tnativeTextArea.setSelectionRange(this.maxlength, valueLength);\n\t\t}\n\n\t\tthis.fireEvent(\"input\", {});\n\n\t\t// Angular two way data binding\n\t\tthis.fireEvent(\"value-changed\");\n\t}\n\n\t_onResize() {\n\t\tif (this.displayValueStateMessagePopover) {\n\t\t\tthis._width = this.offsetWidth;\n\t\t}\n\t}\n\n\t_setCSSParams() {\n\t\tthis.style.setProperty(\"--_textarea_rows\", this.rows ? String(this.rows) : \"2\");\n\t\tthis.style.setProperty(\"--_textarea_growing_max_rows\", String(this.growingMaxRows));\n\t}\n\n\ttoggleValueStateMessage(toggle: boolean) {\n\t\tif (toggle) {\n\t\t\tthis.openPopover();\n\t\t} else {\n\t\t\tthis.closePopover();\n\t\t}\n\t}\n\n\topenPopover() {\n\t\tthis.valueStatePopover = this._getPopover();\n\t\tif (this.valueStatePopover) {\n\t\t\tthis.valueStatePopover.opener = this.shadowRoot!.querySelector<HTMLElement>(\".ui5-textarea-root .ui5-textarea-wrapper\")!;\n\t\t\tthis.valueStatePopover.open = true;\n\t\t}\n\t}\n\n\tclosePopover() {\n\t\tthis.valueStatePopover = this._getPopover();\n\t\tif (this.valueStatePopover) {\n\t\t\tthis.valueStatePopover.open = false;\n\t\t}\n\t}\n\n\t_getPopover() {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\"[ui5-popover]\")!;\n\t}\n\n\t_tokenizeText(value: string) {\n\t\tconst tokenizedText = value.replace(/&/gm, \"&\").replace(/\"/gm, \""\").replace(/'/gm, \"'\").replace(/</gm, \"<\")\n\t\t\t.replace(/>/gm, \">\")\n\t\t\t.split(\"\\n\");\n\n\t\tif (tokenizedText.length < this.rows) {\n\t\t\treturn this._mapTokenizedTextToObject([...tokenizedText, ...Array(this.rows - tokenizedText.length).fill(\"\")] as TokenizedText);\n\t\t}\n\n\t\treturn this._mapTokenizedTextToObject(tokenizedText);\n\t}\n\n\t_mapTokenizedTextToObject(tokenizedText: TokenizedText) {\n\t\treturn tokenizedText.map((token, index) => {\n\t\t\treturn {\n\t\t\t\ttext: token,\n\t\t\t\tlast: index === (tokenizedText.length - 1),\n\t\t\t};\n\t\t});\n\t}\n\n\t_calcExceededText() {\n\t\tlet calcedMaxLength,\n\t\t\texceededText,\n\t\t\tleftCharactersCount;\n\n\t\tif (this.showExceededText) {\n\t\t\tconst maxLength = this.maxlength;\n\n\t\t\tif (maxLength !== null && maxLength !== undefined) {\n\t\t\t\tleftCharactersCount = maxLength - this.value.length;\n\n\t\t\t\tif (leftCharactersCount >= 0) {\n\t\t\t\t\texceededText = TextArea.i18nBundle.getText(TEXTAREA_CHARACTERS_LEFT, leftCharactersCount);\n\t\t\t\t} else {\n\t\t\t\t\texceededText = TextArea.i18nBundle.getText(TEXTAREA_CHARACTERS_EXCEEDED, Math.abs(leftCharactersCount));\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tcalcedMaxLength = this.maxlength;\n\t\t}\n\n\t\treturn {\n\t\t\texceededText, leftCharactersCount, calcedMaxLength,\n\t\t};\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-textarea-root\": true,\n\t\t\t\t\"ui5-content-custom-scrollbars\": !!getEffectiveScrollbarStyle(),\n\t\t\t},\n\t\t\tvalueStateMsg: {\n\t\t\t\t\"ui5-valuestatemessage-header\": true,\n\t\t\t\t\"ui5-valuestatemessage--error\": this.valueState === ValueState.Negative,\n\t\t\t\t\"ui5-valuestatemessage--warning\": this.valueState === ValueState.Critical,\n\t\t\t\t\"ui5-valuestatemessage--information\": this.valueState === ValueState.Information,\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tvalueStateMsgPopover: {\n\t\t\t\t\"max-width\": `${this._width!}px`,\n\t\t\t},\n\t\t};\n\t}\n\n\tget tabIndex() {\n\t\treturn this.disabled ? -1 : 0;\n\t}\n\n\tget ariaLabelText() {\n\t\tconst effectiveAriaLabelText = getEffectiveAriaLabelText(this) || getAssociatedLabelForTexts(this);\n\n\t\tif (this.showExceededText) {\n\t\t\tif (effectiveAriaLabelText) {\n\t\t\t\treturn effectiveAriaLabelText.concat(\" \", this._exceededTextProps.exceededText!);\n\t\t\t}\n\n\t\t\treturn this._exceededTextProps.exceededText;\n\t\t}\n\n\t\treturn effectiveAriaLabelText;\n\t}\n\n\tget ariaDescribedBy() {\n\t\treturn this.hasValueState ? `${this._id}-valueStateDesc` : undefined;\n\t}\n\n\tget ariaValueStateHiddenText() {\n\t\tif (!this.hasValueState) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.valueState === ValueState.None) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.hasCustomValueState) {\n\t\t\treturn `${this.valueStateTypeMappings[this.valueState]}`.concat(\" \", this.valueStateMessage.map(el => el.textContent).join(\" \"));\n\t\t}\n\n\t\treturn `${this.valueStateTypeMappings[this.valueState]} ${this.valueStateDefaultText}`;\n\t}\n\n\tget valueStateDefaultText() {\n\t\tif (this.valueState !== ValueState.None) {\n\t\t\treturn this.valueStateTextMappings[this.valueState];\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\tget ariaInvalid() {\n\t\treturn this.valueState === ValueState.Negative ? \"true\" : null;\n\t}\n\n\tget openValueStateMsgPopover() {\n\t\treturn !this._firstRendering && this._openValueStateMsgPopover && this.displayValueStateMessagePopover;\n\t}\n\n\tget displayValueStateMessagePopover() {\n\t\treturn !this.readonly && (this.hasCustomValueState || this.hasValueState);\n\t}\n\n\tget hasCustomValueState() {\n\t\treturn !!this.valueStateMessage.length && this.hasValueState;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState === ValueState.Negative || this.valueState === ValueState.Critical || this.valueState === ValueState.Information;\n\t}\n\n\tget _valueStatePopoverHorizontalAlign(): `${PopoverHorizontalAlign}` {\n\t\treturn this.effectiveDir !== \"rtl\" ? \"Start\" : \"End\";\n\t}\n\n\t/**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\tget _valueStateMessageIcon() {\n\t\tconst iconPerValueState = {\n\t\t\tNegative: \"error\",\n\t\t\tCritical: \"alert\",\n\t\t\tPositive: \"sys-enter-2\",\n\t\t\tInformation: \"information\",\n\t\t};\n\n\t\treturn this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : \"\";\n\t}\n\n\tget valueStateTextMappings() {\n\t\treturn {\n\t\t\t\"Positive\": TextArea.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t\t\"Information\": TextArea.i18nBundle.getText(VALUE_STATE_INFORMATION),\n\t\t\t\"Negative\": TextArea.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Critical\": TextArea.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t};\n\t}\n\n\tget valueStateTypeMappings() {\n\t\treturn {\n\t\t\t\"Positive\": TextArea.i18nBundle.getText(VALUE_STATE_TYPE_SUCCESS),\n\t\t\t\"Information\": TextArea.i18nBundle.getText(VALUE_STATE_TYPE_INFORMATION),\n\t\t\t\"Negative\": TextArea.i18nBundle.getText(VALUE_STATE_TYPE_ERROR),\n\t\t\t\"Critical\": TextArea.i18nBundle.getText(VALUE_STATE_TYPE_WARNING),\n\t\t};\n\t}\n}\n\nTextArea.define();\n\nexport default TextArea;\n"]}
|
package/dist/TimePicker.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="openui5" />
|
|
2
1
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
3
2
|
import type { IFormInputElement } from "@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js";
|
|
4
3
|
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
@@ -176,7 +175,6 @@ declare class TimePicker extends UI5Element implements IFormInputElement {
|
|
|
176
175
|
valueStateMessage: Array<HTMLElement>;
|
|
177
176
|
tempValue?: string;
|
|
178
177
|
static i18nBundle: I18nBundle;
|
|
179
|
-
static onDefine(): Promise<void>;
|
|
180
178
|
get formValidityMessage(): string;
|
|
181
179
|
get formValidity(): ValidityStateFlags;
|
|
182
180
|
formElementAnchor(): Promise<HTMLElement | undefined>;
|
package/dist/TimePicker.js
CHANGED
|
@@ -11,16 +11,15 @@ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement
|
|
|
11
11
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
12
12
|
import event from "@ui5/webcomponents-base/dist/decorators/event.js";
|
|
13
13
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
14
|
+
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
14
15
|
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
15
16
|
import { submitForm } from "@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js";
|
|
16
|
-
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
17
17
|
import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
|
|
18
18
|
import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
|
|
19
19
|
import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
|
|
20
20
|
import "@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js"; // default calendar for bundling
|
|
21
21
|
import DateFormat from "@ui5/webcomponents-localization/dist/DateFormat.js";
|
|
22
22
|
import getCachedLocaleDataInstance from "@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js";
|
|
23
|
-
import { fetchCldr } from "@ui5/webcomponents-base/dist/asset-registries/LocaleData.js";
|
|
24
23
|
import { isShow, isEnter, isPageUp, isPageDown, isPageUpShift, isPageDownShift, isPageUpShiftCtrl, isPageDownShiftCtrl, isTabNext, isTabPrevious, isF6Next, isF6Previous, } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
25
24
|
import "@ui5/webcomponents-icons/dist/time-entry-request.js";
|
|
26
25
|
import UI5Date from "@ui5/webcomponents-localization/dist/dates/UI5Date.js";
|
|
@@ -144,12 +143,6 @@ let TimePicker = TimePicker_1 = class TimePicker extends UI5Element {
|
|
|
144
143
|
this.required = false;
|
|
145
144
|
this._isInputsPopoverOpen = false;
|
|
146
145
|
}
|
|
147
|
-
static async onDefine() {
|
|
148
|
-
[TimePicker_1.i18nBundle] = await Promise.all([
|
|
149
|
-
getI18nBundle("@ui5/webcomponents"),
|
|
150
|
-
fetchCldr(getLocale().getLanguage(), getLocale().getRegion(), getLocale().getScript()),
|
|
151
|
-
]);
|
|
152
|
-
}
|
|
153
146
|
get formValidityMessage() {
|
|
154
147
|
return TimePicker_1.i18nBundle.getText(FORM_TEXTFIELD_REQUIRED);
|
|
155
148
|
}
|
|
@@ -542,10 +535,14 @@ __decorate([
|
|
|
542
535
|
__decorate([
|
|
543
536
|
slot()
|
|
544
537
|
], TimePicker.prototype, "valueStateMessage", void 0);
|
|
538
|
+
__decorate([
|
|
539
|
+
i18n("@ui5/webcomponents")
|
|
540
|
+
], TimePicker, "i18nBundle", void 0);
|
|
545
541
|
TimePicker = TimePicker_1 = __decorate([
|
|
546
542
|
customElement({
|
|
547
543
|
tag: "ui5-time-picker",
|
|
548
544
|
languageAware: true,
|
|
545
|
+
cldr: true,
|
|
549
546
|
formAssociated: true,
|
|
550
547
|
renderer: litRender,
|
|
551
548
|
template: TimePickerTemplate,
|
package/dist/TimePicker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimePicker.js","sourceRoot":"","sources":["../src/TimePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop, isPhone, isTablet } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport { submitForm } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\"; // default calendar for bundling\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport { fetchCldr } from \"@ui5/webcomponents-base/dist/asset-registries/LocaleData.js\";\nimport {\n\tisShow,\n\tisEnter,\n\tisPageUp,\n\tisPageDown,\n\tisPageUpShift,\n\tisPageDownShift,\n\tisPageUpShiftCtrl,\n\tisPageDownShiftCtrl,\n\tisTabNext,\n\tisTabPrevious,\n\tisF6Next,\n\tisF6Previous,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/time-entry-request.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport Icon from \"./Icon.js\";\nimport Popover from \"./Popover.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport TimePickerTemplate from \"./generated/templates/TimePickerTemplate.lit.js\";\nimport Input from \"./Input.js\";\nimport Button from \"./Button.js\";\nimport TimeSelectionClocks from \"./TimeSelectionClocks.js\";\nimport TimeSelectionInputs from \"./TimeSelectionInputs.js\";\nimport type { TimeSelectionChangeEventDetail } from \"./TimePickerInternals.js\";\n\nimport {\n\tTIMEPICKER_SUBMIT_BUTTON,\n\tTIMEPICKER_CANCEL_BUTTON,\n\tTIMEPICKER_INPUT_DESCRIPTION,\n\tTIMEPICKER_POPOVER_ACCESSIBLE_NAME,\n\tFORM_TEXTFIELD_REQUIRED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport TimePickerCss from \"./generated/themes/TimePicker.css.js\";\nimport TimePickerPopoverCss from \"./generated/themes/TimePickerPopover.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\n\ntype TimePickerChangeInputEventDetail = {\n\tvalue: string,\n\tvalid: boolean,\n}\n\ntype TimePickerChangeEventDetail = TimePickerChangeInputEventDetail;\ntype TimePickerInputEventDetail = TimePickerChangeInputEventDetail;\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-time-picker` component provides an input field with assigned clocks which are opened on user action.\n * The `ui5-time-picker` allows users to select a localized time using touch, mouse, or keyboard input.\n * It consists of two parts: the time input field and the clocks.\n *\n * ### Usage\n * The user can enter a time by:\n *\n * - Using the clocks that are displayed in a popup\n * - Typing it in directly in the input field\n *\n * When the user makes an entry and chooses the enter key, the clocks show the corresponding time (hours, minutes and seconds separately).\n * When the user directly triggers the clocks display, the actual time is displayed.\n * For the `ui5-time-picker`\n *\n * ### Formatting\n *\n * If a time is entered by typing it into\n * the input field, it must fit to the used time format.\n *\n * Supported format options are pattern-based on Unicode LDML Date Format notation.\n * For more information, see [UTS #35: Unicode Locale Data Markup Language](http://unicode.org/reports/tr35/#Date_Field_Symbol_Table).\n *\n * For example, if the `format-pattern` is \"HH:mm:ss\",\n * a valid value string is \"11:42:35\" and the same is displayed in the input.\n *\n * ### Keyboard handling\n * [F4], [Alt]+[Up], [Alt]+[Down] Open/Close picker dialog and move focus to it.\n *\n * When closed:\n *\n * - [Page Up] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.\n * - [Page Down] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.\n * - [Shift]+[Page Up] - Increments minutes by 1.\n * - [Shift]+[Page Down] - Decrements minutes by 1.\n * - [Shift]+[Ctrl]+[Page Up] - Increments seconds by 1.\n * - [Shift]+[Ctrl]+[Page Down] - Decrements seconds by 1.\n * -\n *\n * When opened:\n *\n * - [Page Up] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.\n * - [Page Down] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.\n * - [Shift]+[Page Up] - Increments minutes by 1.\n * - [Shift]+[Page Down] - Decrements minutes by 1.\n * - [Shift]+[Ctrl]+[Page Up] - Increments seconds by 1.\n * - [Shift]+[Ctrl]+[Page Down] - Decrements seconds by 1.\n * - [A] or [P] - Selects AM or PM respectively.\n * - [0]-[9] - Allows direct time selecting (hours/minutes/seconds).\n * - [:] - Allows switching between hours/minutes/seconds clocks. If the last clock is displayed and [:] is pressed, the first clock is beind displayed.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TimePicker.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0-rc.6\n */\n@customElement({\n\ttag: \"ui5-time-picker\",\n\tlanguageAware: true,\n\tformAssociated: true,\n\trenderer: litRender,\n\ttemplate: TimePickerTemplate,\n\tstyles: [\n\t\tTimePickerCss,\n\t\tResponsivePopoverCommonCss,\n\t\tTimePickerPopoverCss,\n\t],\n\tdependencies: [\n\t\tIcon,\n\t\tPopover,\n\t\tResponsivePopover,\n\t\tTimeSelectionClocks,\n\t\tTimeSelectionInputs,\n\t\tInput,\n\t\tButton,\n\t],\n})\n/**\n * Fired when the input operation has finished by clicking the \"OK\" button or\n * when the text in the input field has changed and the focus leaves the input field.\n * @public\n * @param {string} value The submitted value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event<TimePickerChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalid: {\n\t\t\ttype: Boolean,\n\t\t},\n\t},\n})\n\n/**\n * Fired when the value of the `ui5-time-picker` is changed at each key stroke.\n * @public\n * @param {string} value The current value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event<TimePickerInputEventDetail>(\"input\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalid: {\n\t\t\ttype: Boolean,\n\t\t},\n\t},\n})\n/**\n * Fired after the value-help dialog of the component is opened.\n * @since 2.0.0\n * @public\n */\n@event(\"open\")\n/**\n * Fired after the value-help dialog of the component is closed.\n * @since 2.0.0\n * @public\n */\n@event(\"close\")\nclass TimePicker extends UI5Element implements IFormInputElement {\n\t/**\n\t * Defines a formatted time value.\n\t * @default \"\"\n\t * @formEvents change input\n\t * @formProperty\n\t * @public\n\t */\n\t@property()\n\tvalue = \"\";\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default undefined\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Defines the disabled state of the comonent.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines the readonly state of the comonent.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Defines a short hint, intended to aid the user with data entry when the\n\t * component has no value.\n\t *\n\t * **Note:** When no placeholder is set, the format pattern is displayed as a placeholder.\n\t * Passing an empty string as the value of this property will make the component appear empty - without placeholder or format pattern.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tplaceholder?: string;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t *\n\t * Example:\n\t * HH:mm:ss -> 11:42:35\n\t * hh:mm:ss a -> 2:23:15 PM\n\t * mm:ss -> 12:04 (only minutes and seconds)\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tformatPattern?: string;\n\n\t/**\n\t * Defines the open or closed state of the popover.\n\t * @public\n\t * @default false\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\topen = false;\n\n\t/**\n\t * Defines whether the component is required.\n\t * @since 2.1.0\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Defines the aria-label attribute for the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.1.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id (or many ids) of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.1.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_isInputsPopoverOpen = false;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the `ui5-time-picker`.\n\t *\n\t * **Note:** If not specified, a default text (in the respective language) will be displayed.\n\t *\n\t * **Note:** The `valueStateMessage` would be displayed,\n\t * when the `ui5-time-picker` is in `Information`, `Critical` or `Negative` value state.\n\t * @since 1.0.0-rc.8\n\t * @public\n\t */\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\ttempValue?: string;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\t[TimePicker.i18nBundle] = await Promise.all([\n\t\t\tgetI18nBundle(\"@ui5/webcomponents\"),\n\t\t\tfetchCldr(getLocale().getLanguage(), getLocale().getRegion(), getLocale().getScript()),\n\t\t]);\n\t}\n\tget formValidityMessage() {\n\t\treturn TimePicker.i18nBundle.getText(FORM_TEXTFIELD_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.value };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn (await this.getFocusDomRefAsync() as UI5Element)?.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue(): FormData | string | null {\n\t\treturn this.value || \"\";\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this.value) {\n\t\t\tthis.value = this.normalizeValue(this.value) || this.value;\n\t\t}\n\n\t\tthis.tempValue = this.value && this.isValid(this.value) ? this.value : this.getFormat().format(UI5Date.getInstance());\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_INPUT_DESCRIPTION);\n\t}\n\n\tget pickerAccessibleName() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_POPOVER_ACCESSIBLE_NAME);\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\t\"ariaRoledescription\": this.dateAriaDescription,\n\t\t\t\"ariaHasPopup\": \"dialog\",\n\t\t\t\"ariaRequired\": this.required,\n\t\t\t\"ariaLabel\": getEffectiveAriaLabelText(this),\n\t\t};\n\t}\n\n\t/**\n\t * Currently selected time represented as JavaScript Date instance\n\t * @public\n\t * @default null\n\t */\n\tget dateValue(): Date | null {\n\t\treturn this.getFormat().parse(this._effectiveValue) as Date;\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tget _placeholder() {\n\t\treturn this.placeholder !== undefined ? this.placeholder : this._displayFormat;\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tget _formatPattern() {\n\t\tconst hasHours = !!this.formatPattern?.match(/H/i);\n\t\tconst fallback = !this.formatPattern || !hasHours;\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn fallback ? localeData.getTimePattern(\"medium\") : this.formatPattern;\n\t}\n\n\tget _displayFormat() {\n\t\t// @ts-ignore oFormatOptions is a private API of DateFormat\n\t\treturn this.getFormat().oFormatOptions.pattern as string;\n\t}\n\n\tget _effectiveValue() {\n\t\treturn this.value;\n\t}\n\n\tget _timeSelectionValue() {\n\t\treturn this.tempValue;\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget _isMobileDevice() {\n\t\treturn !isDesktop() && (isPhone() || isTablet());\n\t}\n\n\tonTimeSelectionChange(e: CustomEvent<TimeSelectionChangeEventDetail>) {\n\t\tthis.tempValue = e.detail.value; // every time the user changes the time selection -> update tempValue\n\t}\n\n\t_togglePicker() {\n\t\tthis.open = !this.open;\n\t}\n\n\tsubmitPickers() {\n\t\tthis._updateValueAndFireEvents(this.tempValue!, true, [\"change\", \"value-changed\"]);\n\t\tthis._togglePicker();\n\t}\n\n\tonResponsivePopoverAfterClose() {\n\t\tthis.open = false;\n\t\tthis.fireEvent(\"close\");\n\t}\n\n\tonResponsivePopoverAfterOpen() {\n\t\tthis.fireEvent(\"open\");\n\t}\n\n\t/**\n\t * Opens the Inputs popover.\n\t * @private\n\t * @returns Resolves when the Inputs popover is open\n\t */\n\topenInputsPopover() {\n\t\tthis.tempValue = this.value && this.isValid(this.value) ? this.value : this.getFormat().format(UI5Date.getInstance());\n\t\tconst popover = this._getInputsPopover();\n\t\tpopover.opener = this;\n\t\tpopover.open = true;\n\t\tthis._isInputsPopoverOpen = true;\n\t}\n\n\t/**\n\t * Closes the Inputs popover\n\t * @private\n\t * @returns Resolves when the Inputs popover is closed\n\t */\n\tcloseInputsPopover() {\n\t\tconst popover = this._getInputsPopover();\n\t\tpopover.open = false;\n\t}\n\n\ttoggleInputsPopover() {\n\t\tif (this.isInputsPopoverOpen()) {\n\t\t\tthis.closeInputsPopover();\n\t\t} else if (this._canOpenInputsPopover()) {\n\t\t\tthis.openInputsPopover();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the inputs popover is open\n\t * @private\n\t */\n\tisInputsPopoverOpen(): boolean {\n\t\treturn !!this._isInputsPopoverOpen;\n\t}\n\n\tsubmitInputsPopover() {\n\t\tthis._updateValueAndFireEvents(this.tempValue!, true, [\"change\", \"value-changed\"]);\n\t\tthis.closeInputsPopover();\n\t}\n\n\tonInputsPopoverAfterOpen() {\n\t\tconst popover = this._getInputsPopover();\n\t\tpopover.querySelector<TimeSelectionInputs>(\"[ui5-time-selection-inputs]\")!._addNumericAttributes();\n\t}\n\n\tonInputsPopoverAfterClose() {\n\t\tthis._isInputsPopoverOpen = false;\n\t}\n\n\t_handleInputClick(e: MouseEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tif (this.open) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._isMobileDevice && target && !target.hasAttribute(\"ui5-icon\")) {\n\t\t\tthis.toggleInputsPopover();\n\t\t}\n\n\t\tconst inputField = this._getInputField();\n\n\t\tif (inputField) {\n\t\t\t(inputField as HTMLInputElement).select();\n\t\t}\n\t}\n\n\t_updateValueAndFireEvents(value: string, normalizeValue: boolean, eventsNames: Array<string>) {\n\t\tif (value === this.value) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst valid = this.isValid(value);\n\n\t\tif (value !== undefined && valid && normalizeValue) { // if value === undefined, valid is guaranteed to be falsy\n\t\t\tvalue = this.normalizeValue(value); // transform valid values (in any format) to the correct format\n\t\t}\n\t\tif (!eventsNames.includes(\"input\")) {\n\t\t\tthis.value = \"\"; // Do not remove! DurationPicker (an external component extending TimePicker) use case -> value is 05:10, user tries 05:12, after normalization value is changed back to 05:10 so no invalidation happens, but the input still shows 05:12. Thus we enforce invalidation with the \"\"\n\t\t\tthis.value = value;\n\t\t}\n\t\tthis.tempValue = value; // if the picker is open, sync it\n\t\tthis._updateValueState(); // Change the value state to Error/None, but only if needed\n\t\teventsNames.forEach(eventName => {\n\t\t\tthis.fireEvent<TimePickerChangeInputEventDetail>(eventName, { value, valid });\n\t\t});\n\t}\n\n\t_updateValueState() {\n\t\tconst isValid = this.isValid(this.value);\n\t\tif (!isValid) { // If not valid - always set Error regardless of the current value state\n\t\t\tthis.valueState = ValueState.Negative;\n\t\t} else if (isValid && this.valueState === ValueState.Negative) { // However if valid, change only Error (but not the others) to None\n\t\t\tthis.valueState = ValueState.None;\n\t\t}\n\t}\n\n\t_handleInputChange(e: CustomEvent) {\n\t\tconst target = e.target as Input;\n\t\tthis._updateValueAndFireEvents(target.value, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t_handleInputLiveChange(e: CustomEvent) {\n\t\tconst target = e.target as Input;\n\t\tthis._updateValueAndFireEvents(target.value, false, [\"input\"]);\n\t}\n\n\t_canOpenPicker() {\n\t\treturn !this.disabled && !this.readonly;\n\t}\n\n\t_canOpenInputsPopover() {\n\t\treturn !this.disabled && this._isMobileDevice;\n\t}\n\n\t_getPopover() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\t_getInputsPopover() {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\"[ui5-popover]\")!;\n\t}\n\n\t_getInput(): Input {\n\t\treturn this.shadowRoot!.querySelector<Input>(\"[ui5-input]\")!;\n\t}\n\n\t_getInputField() {\n\t\tconst input = this._getInput();\n\t\treturn input && input.getInputDOMRef();\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (this._isMobileDevice && !this.isInputsPopoverOpen()) {\n\t\t\te.preventDefault();\n\t\t}\n\t\tif (isShow(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._togglePicker();\n\t\t}\n\n\t\tconst target = e.target as HTMLElement;\n\n\t\tif (target && this.open && this._getInput().id === target.id && (isTabNext(e) || isTabPrevious(e) || isF6Next(e) || isF6Previous(e))) {\n\t\t\tthis._togglePicker();\n\t\t}\n\t\tif (this.open) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tif (this._internals.form) {\n\t\t\t\tsubmitForm(this);\n\t\t\t}\n\t\t} else if (isPageUpShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(1, \"second\");\n\t\t} else if (isPageUpShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(1, \"minute\");\n\t\t} else if (isPageUp(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(1, \"hour\");\n\t\t} else if (isPageDownShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(-1, \"second\");\n\t\t} else if (isPageDownShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(-1, \"minute\");\n\t\t} else if (isPageDown(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(-1, \"hour\");\n\t\t}\n\t}\n\n\tget _isPattern() {\n\t\treturn this._formatPattern !== \"medium\" && this._formatPattern !== \"short\" && this._formatPattern !== \"long\";\n\t}\n\n\tgetFormat() {\n\t\tlet dateFormat;\n\n\t\tif (this._isPattern) {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tpattern: this._formatPattern,\n\t\t\t});\n\t\t} else {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tstyle: this._formatPattern,\n\t\t\t});\n\t\t}\n\n\t\treturn dateFormat;\n\t}\n\n\t/**\n\t * Formats a Java Script date object into a string representing a locale date and time\n\t * according to the `formatPattern` property of the TimePicker instance\n\t * @param date A Java Script date object to be formatted as string\n\t * @public\n\t * @returns formatted value\n\t */\n\tformatValue(date: Date): string {\n\t\treturn this.getFormat().format(date);\n\t}\n\n\t/**\n\t * Checks if a value is valid against the current `formatPattern` value.\n\t *\n\t * **Note:** an empty string is considered as valid value.\n\t * @param value The value to be tested against the current date format\n\t * @public\n\t */\n\tisValid(value: string | undefined): boolean {\n\t\tif (value === \"\") {\n\t\t\treturn true;\n\t\t}\n\t\treturn !!this.getFormat().parse(value as string);\n\t}\n\n\tnormalizeValue(value: string) {\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\t\treturn this.getFormat().format(this.getFormat().parse(value));\n\t}\n\n\t_modifyValueBy(amount: number, unit: string) {\n\t\tconst date = this.getFormat().parse(this._effectiveValue) as Date;\n\t\tif (!date) {\n\t\t\treturn;\n\t\t}\n\t\tif (unit === \"hour\") {\n\t\t\tdate.setHours(date.getHours() + amount);\n\t\t} else if (unit === \"minute\") {\n\t\t\tdate.setMinutes(date.getMinutes() + amount);\n\t\t} else if (unit === \"second\") {\n\t\t\tdate.setSeconds(date.getSeconds() + amount);\n\t\t}\n\n\t\tconst newValue = this.formatValue(date);\n\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t/**\n\t * The listener for this event can't be passive as it calls preventDefault()\n\t * @param e Wheel Event\n\t * @private\n\t */\n\t_handleWheel(e: WheelEvent) {\n\t\te.preventDefault();\n\t}\n\n\t/**\n\t * Hides mobile device keyboard by temporary setting the input to readonly state.\n\t */\n\t_hideMobileKeyboard() {\n\t\tthis._getInput().readonly = true;\n\t\tsetTimeout(() => { this._getInput().readonly = false; }, 0);\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tif (this._isMobileDevice) {\n\t\t\tthis._hideMobileKeyboard();\n\t\t\tif (this._isInputsPopoverOpen) {\n\t\t\t\tconst popover = this._getInputsPopover();\n\t\t\t\tpopover.applyFocus();\n\t\t\t}\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_oninput(e: CustomEvent) {\n\t\tif (this._isPhone) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\tget submitButtonLabel() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_SUBMIT_BUTTON);\n\t}\n\n\tget cancelButtonLabel() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_CANCEL_BUTTON);\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tget openIconName() {\n\t\treturn \"time-entry-request\";\n\t}\n}\n\nTimePicker.define();\n\nexport default TimePicker;\nexport type {\n\tTimeSelectionChangeEventDetail,\n\tTimePickerChangeEventDetail,\n\tTimePickerInputEventDetail,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"TimePicker.js","sourceRoot":"","sources":["../src/TimePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDesktop, isPhone, isTablet } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport type { IFormInputElement } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport { submitForm } from \"@ui5/webcomponents-base/dist/features/InputElementsFormSupport.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\"; // default calendar for bundling\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport {\n\tisShow,\n\tisEnter,\n\tisPageUp,\n\tisPageDown,\n\tisPageUpShift,\n\tisPageDownShift,\n\tisPageUpShiftCtrl,\n\tisPageDownShiftCtrl,\n\tisTabNext,\n\tisTabPrevious,\n\tisF6Next,\n\tisF6Previous,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/time-entry-request.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport Icon from \"./Icon.js\";\nimport Popover from \"./Popover.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport TimePickerTemplate from \"./generated/templates/TimePickerTemplate.lit.js\";\nimport Input from \"./Input.js\";\nimport Button from \"./Button.js\";\nimport TimeSelectionClocks from \"./TimeSelectionClocks.js\";\nimport TimeSelectionInputs from \"./TimeSelectionInputs.js\";\nimport type { TimeSelectionChangeEventDetail } from \"./TimePickerInternals.js\";\n\nimport {\n\tTIMEPICKER_SUBMIT_BUTTON,\n\tTIMEPICKER_CANCEL_BUTTON,\n\tTIMEPICKER_INPUT_DESCRIPTION,\n\tTIMEPICKER_POPOVER_ACCESSIBLE_NAME,\n\tFORM_TEXTFIELD_REQUIRED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport TimePickerCss from \"./generated/themes/TimePicker.css.js\";\nimport TimePickerPopoverCss from \"./generated/themes/TimePickerPopover.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\n\ntype TimePickerChangeInputEventDetail = {\n\tvalue: string,\n\tvalid: boolean,\n}\n\ntype TimePickerChangeEventDetail = TimePickerChangeInputEventDetail;\ntype TimePickerInputEventDetail = TimePickerChangeInputEventDetail;\n\n/**\n * @class\n *\n * ### Overview\n * The `ui5-time-picker` component provides an input field with assigned clocks which are opened on user action.\n * The `ui5-time-picker` allows users to select a localized time using touch, mouse, or keyboard input.\n * It consists of two parts: the time input field and the clocks.\n *\n * ### Usage\n * The user can enter a time by:\n *\n * - Using the clocks that are displayed in a popup\n * - Typing it in directly in the input field\n *\n * When the user makes an entry and chooses the enter key, the clocks show the corresponding time (hours, minutes and seconds separately).\n * When the user directly triggers the clocks display, the actual time is displayed.\n * For the `ui5-time-picker`\n *\n * ### Formatting\n *\n * If a time is entered by typing it into\n * the input field, it must fit to the used time format.\n *\n * Supported format options are pattern-based on Unicode LDML Date Format notation.\n * For more information, see [UTS #35: Unicode Locale Data Markup Language](http://unicode.org/reports/tr35/#Date_Field_Symbol_Table).\n *\n * For example, if the `format-pattern` is \"HH:mm:ss\",\n * a valid value string is \"11:42:35\" and the same is displayed in the input.\n *\n * ### Keyboard handling\n * [F4], [Alt]+[Up], [Alt]+[Down] Open/Close picker dialog and move focus to it.\n *\n * When closed:\n *\n * - [Page Up] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.\n * - [Page Down] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.\n * - [Shift]+[Page Up] - Increments minutes by 1.\n * - [Shift]+[Page Down] - Decrements minutes by 1.\n * - [Shift]+[Ctrl]+[Page Up] - Increments seconds by 1.\n * - [Shift]+[Ctrl]+[Page Down] - Decrements seconds by 1.\n * -\n *\n * When opened:\n *\n * - [Page Up] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.\n * - [Page Down] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.\n * - [Shift]+[Page Up] - Increments minutes by 1.\n * - [Shift]+[Page Down] - Decrements minutes by 1.\n * - [Shift]+[Ctrl]+[Page Up] - Increments seconds by 1.\n * - [Shift]+[Ctrl]+[Page Down] - Decrements seconds by 1.\n * - [A] or [P] - Selects AM or PM respectively.\n * - [0]-[9] - Allows direct time selecting (hours/minutes/seconds).\n * - [:] - Allows switching between hours/minutes/seconds clocks. If the last clock is displayed and [:] is pressed, the first clock is beind displayed.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TimePicker.js\";`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 1.0.0-rc.6\n */\n@customElement({\n\ttag: \"ui5-time-picker\",\n\tlanguageAware: true,\n\tcldr: true,\n\tformAssociated: true,\n\trenderer: litRender,\n\ttemplate: TimePickerTemplate,\n\tstyles: [\n\t\tTimePickerCss,\n\t\tResponsivePopoverCommonCss,\n\t\tTimePickerPopoverCss,\n\t],\n\tdependencies: [\n\t\tIcon,\n\t\tPopover,\n\t\tResponsivePopover,\n\t\tTimeSelectionClocks,\n\t\tTimeSelectionInputs,\n\t\tInput,\n\t\tButton,\n\t],\n})\n/**\n * Fired when the input operation has finished by clicking the \"OK\" button or\n * when the text in the input field has changed and the focus leaves the input field.\n * @public\n * @param {string} value The submitted value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event<TimePickerChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalid: {\n\t\t\ttype: Boolean,\n\t\t},\n\t},\n})\n\n/**\n * Fired when the value of the `ui5-time-picker` is changed at each key stroke.\n * @public\n * @param {string} value The current value.\n * @param {boolean} valid Indicator if the value is in correct format pattern and in valid range.\n */\n@event<TimePickerInputEventDetail>(\"input\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalid: {\n\t\t\ttype: Boolean,\n\t\t},\n\t},\n})\n/**\n * Fired after the value-help dialog of the component is opened.\n * @since 2.0.0\n * @public\n */\n@event(\"open\")\n/**\n * Fired after the value-help dialog of the component is closed.\n * @since 2.0.0\n * @public\n */\n@event(\"close\")\nclass TimePicker extends UI5Element implements IFormInputElement {\n\t/**\n\t * Defines a formatted time value.\n\t * @default \"\"\n\t * @formEvents change input\n\t * @formProperty\n\t * @public\n\t */\n\t@property()\n\tvalue = \"\";\n\n\t/**\n\t * Determines the name by which the component will be identified upon submission in an HTML form.\n\t *\n\t * **Note:** This property is only applicable within the context of an HTML Form element.\n\t * @default undefined\n\t * @public\n\t * @since 2.0.0\n\t */\n\t@property()\n\tname?: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t * @default \"None\"\n\t * @public\n\t */\n\t@property()\n\tvalueState: `${ValueState}` = \"None\";\n\n\t/**\n\t * Defines the disabled state of the comonent.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Defines the readonly state of the comonent.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly = false;\n\n\t/**\n\t * Defines a short hint, intended to aid the user with data entry when the\n\t * component has no value.\n\t *\n\t * **Note:** When no placeholder is set, the format pattern is displayed as a placeholder.\n\t * Passing an empty string as the value of this property will make the component appear empty - without placeholder or format pattern.\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tplaceholder?: string;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t *\n\t * Example:\n\t * HH:mm:ss -> 11:42:35\n\t * hh:mm:ss a -> 2:23:15 PM\n\t * mm:ss -> 12:04 (only minutes and seconds)\n\t * @default undefined\n\t * @public\n\t */\n\t@property()\n\tformatPattern?: string;\n\n\t/**\n\t * Defines the open or closed state of the popover.\n\t * @public\n\t * @default false\n\t * @since 2.0.0\n\t */\n\t@property({ type: Boolean })\n\topen = false;\n\n\t/**\n\t * Defines whether the component is required.\n\t * @since 2.1.0\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\trequired = false;\n\n\t/**\n\t * Defines the aria-label attribute for the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.1.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id (or many ids) of the elements that label the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.1.0\n\t */\n\t@property()\n\taccessibleNameRef?: string;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_isInputsPopoverOpen = false;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the `ui5-time-picker`.\n\t *\n\t * **Note:** If not specified, a default text (in the respective language) will be displayed.\n\t *\n\t * **Note:** The `valueStateMessage` would be displayed,\n\t * when the `ui5-time-picker` is in `Information`, `Critical` or `Negative` value state.\n\t * @since 1.0.0-rc.8\n\t * @public\n\t */\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\ttempValue?: string;\n\n\t@i18n(\"@ui5/webcomponents\")\n\tstatic i18nBundle: I18nBundle;\n\n\tget formValidityMessage() {\n\t\treturn TimePicker.i18nBundle.getText(FORM_TEXTFIELD_REQUIRED);\n\t}\n\n\tget formValidity(): ValidityStateFlags {\n\t\treturn { valueMissing: this.required && !this.value };\n\t}\n\n\tasync formElementAnchor() {\n\t\treturn (await this.getFocusDomRefAsync() as UI5Element)?.getFocusDomRefAsync();\n\t}\n\n\tget formFormattedValue(): FormData | string | null {\n\t\treturn this.value || \"\";\n\t}\n\n\tonBeforeRendering() {\n\t\tif (this.value) {\n\t\t\tthis.value = this.normalizeValue(this.value) || this.value;\n\t\t}\n\n\t\tthis.tempValue = this.value && this.isValid(this.value) ? this.value : this.getFormat().format(UI5Date.getInstance());\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_INPUT_DESCRIPTION);\n\t}\n\n\tget pickerAccessibleName() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_POPOVER_ACCESSIBLE_NAME);\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\t\"ariaRoledescription\": this.dateAriaDescription,\n\t\t\t\"ariaHasPopup\": \"dialog\",\n\t\t\t\"ariaRequired\": this.required,\n\t\t\t\"ariaLabel\": getEffectiveAriaLabelText(this),\n\t\t};\n\t}\n\n\t/**\n\t * Currently selected time represented as JavaScript Date instance\n\t * @public\n\t * @default null\n\t */\n\tget dateValue(): Date | null {\n\t\treturn this.getFormat().parse(this._effectiveValue) as Date;\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tget _placeholder() {\n\t\treturn this.placeholder !== undefined ? this.placeholder : this._displayFormat;\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tget _formatPattern() {\n\t\tconst hasHours = !!this.formatPattern?.match(/H/i);\n\t\tconst fallback = !this.formatPattern || !hasHours;\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn fallback ? localeData.getTimePattern(\"medium\") : this.formatPattern;\n\t}\n\n\tget _displayFormat() {\n\t\t// @ts-ignore oFormatOptions is a private API of DateFormat\n\t\treturn this.getFormat().oFormatOptions.pattern as string;\n\t}\n\n\tget _effectiveValue() {\n\t\treturn this.value;\n\t}\n\n\tget _timeSelectionValue() {\n\t\treturn this.tempValue;\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget _isMobileDevice() {\n\t\treturn !isDesktop() && (isPhone() || isTablet());\n\t}\n\n\tonTimeSelectionChange(e: CustomEvent<TimeSelectionChangeEventDetail>) {\n\t\tthis.tempValue = e.detail.value; // every time the user changes the time selection -> update tempValue\n\t}\n\n\t_togglePicker() {\n\t\tthis.open = !this.open;\n\t}\n\n\tsubmitPickers() {\n\t\tthis._updateValueAndFireEvents(this.tempValue!, true, [\"change\", \"value-changed\"]);\n\t\tthis._togglePicker();\n\t}\n\n\tonResponsivePopoverAfterClose() {\n\t\tthis.open = false;\n\t\tthis.fireEvent(\"close\");\n\t}\n\n\tonResponsivePopoverAfterOpen() {\n\t\tthis.fireEvent(\"open\");\n\t}\n\n\t/**\n\t * Opens the Inputs popover.\n\t * @private\n\t * @returns Resolves when the Inputs popover is open\n\t */\n\topenInputsPopover() {\n\t\tthis.tempValue = this.value && this.isValid(this.value) ? this.value : this.getFormat().format(UI5Date.getInstance());\n\t\tconst popover = this._getInputsPopover();\n\t\tpopover.opener = this;\n\t\tpopover.open = true;\n\t\tthis._isInputsPopoverOpen = true;\n\t}\n\n\t/**\n\t * Closes the Inputs popover\n\t * @private\n\t * @returns Resolves when the Inputs popover is closed\n\t */\n\tcloseInputsPopover() {\n\t\tconst popover = this._getInputsPopover();\n\t\tpopover.open = false;\n\t}\n\n\ttoggleInputsPopover() {\n\t\tif (this.isInputsPopoverOpen()) {\n\t\t\tthis.closeInputsPopover();\n\t\t} else if (this._canOpenInputsPopover()) {\n\t\t\tthis.openInputsPopover();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the inputs popover is open\n\t * @private\n\t */\n\tisInputsPopoverOpen(): boolean {\n\t\treturn !!this._isInputsPopoverOpen;\n\t}\n\n\tsubmitInputsPopover() {\n\t\tthis._updateValueAndFireEvents(this.tempValue!, true, [\"change\", \"value-changed\"]);\n\t\tthis.closeInputsPopover();\n\t}\n\n\tonInputsPopoverAfterOpen() {\n\t\tconst popover = this._getInputsPopover();\n\t\tpopover.querySelector<TimeSelectionInputs>(\"[ui5-time-selection-inputs]\")!._addNumericAttributes();\n\t}\n\n\tonInputsPopoverAfterClose() {\n\t\tthis._isInputsPopoverOpen = false;\n\t}\n\n\t_handleInputClick(e: MouseEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tif (this.open) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._isMobileDevice && target && !target.hasAttribute(\"ui5-icon\")) {\n\t\t\tthis.toggleInputsPopover();\n\t\t}\n\n\t\tconst inputField = this._getInputField();\n\n\t\tif (inputField) {\n\t\t\t(inputField as HTMLInputElement).select();\n\t\t}\n\t}\n\n\t_updateValueAndFireEvents(value: string, normalizeValue: boolean, eventsNames: Array<string>) {\n\t\tif (value === this.value) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst valid = this.isValid(value);\n\n\t\tif (value !== undefined && valid && normalizeValue) { // if value === undefined, valid is guaranteed to be falsy\n\t\t\tvalue = this.normalizeValue(value); // transform valid values (in any format) to the correct format\n\t\t}\n\t\tif (!eventsNames.includes(\"input\")) {\n\t\t\tthis.value = \"\"; // Do not remove! DurationPicker (an external component extending TimePicker) use case -> value is 05:10, user tries 05:12, after normalization value is changed back to 05:10 so no invalidation happens, but the input still shows 05:12. Thus we enforce invalidation with the \"\"\n\t\t\tthis.value = value;\n\t\t}\n\t\tthis.tempValue = value; // if the picker is open, sync it\n\t\tthis._updateValueState(); // Change the value state to Error/None, but only if needed\n\t\teventsNames.forEach(eventName => {\n\t\t\tthis.fireEvent<TimePickerChangeInputEventDetail>(eventName, { value, valid });\n\t\t});\n\t}\n\n\t_updateValueState() {\n\t\tconst isValid = this.isValid(this.value);\n\t\tif (!isValid) { // If not valid - always set Error regardless of the current value state\n\t\t\tthis.valueState = ValueState.Negative;\n\t\t} else if (isValid && this.valueState === ValueState.Negative) { // However if valid, change only Error (but not the others) to None\n\t\t\tthis.valueState = ValueState.None;\n\t\t}\n\t}\n\n\t_handleInputChange(e: CustomEvent) {\n\t\tconst target = e.target as Input;\n\t\tthis._updateValueAndFireEvents(target.value, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t_handleInputLiveChange(e: CustomEvent) {\n\t\tconst target = e.target as Input;\n\t\tthis._updateValueAndFireEvents(target.value, false, [\"input\"]);\n\t}\n\n\t_canOpenPicker() {\n\t\treturn !this.disabled && !this.readonly;\n\t}\n\n\t_canOpenInputsPopover() {\n\t\treturn !this.disabled && this._isMobileDevice;\n\t}\n\n\t_getPopover() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\t_getInputsPopover() {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\"[ui5-popover]\")!;\n\t}\n\n\t_getInput(): Input {\n\t\treturn this.shadowRoot!.querySelector<Input>(\"[ui5-input]\")!;\n\t}\n\n\t_getInputField() {\n\t\tconst input = this._getInput();\n\t\treturn input && input.getInputDOMRef();\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (this._isMobileDevice && !this.isInputsPopoverOpen()) {\n\t\t\te.preventDefault();\n\t\t}\n\t\tif (isShow(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._togglePicker();\n\t\t}\n\n\t\tconst target = e.target as HTMLElement;\n\n\t\tif (target && this.open && this._getInput().id === target.id && (isTabNext(e) || isTabPrevious(e) || isF6Next(e) || isF6Previous(e))) {\n\t\t\tthis._togglePicker();\n\t\t}\n\t\tif (this.open) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tif (this._internals.form) {\n\t\t\t\tsubmitForm(this);\n\t\t\t}\n\t\t} else if (isPageUpShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(1, \"second\");\n\t\t} else if (isPageUpShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(1, \"minute\");\n\t\t} else if (isPageUp(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(1, \"hour\");\n\t\t} else if (isPageDownShiftCtrl(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(-1, \"second\");\n\t\t} else if (isPageDownShift(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(-1, \"minute\");\n\t\t} else if (isPageDown(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._modifyValueBy(-1, \"hour\");\n\t\t}\n\t}\n\n\tget _isPattern() {\n\t\treturn this._formatPattern !== \"medium\" && this._formatPattern !== \"short\" && this._formatPattern !== \"long\";\n\t}\n\n\tgetFormat() {\n\t\tlet dateFormat;\n\n\t\tif (this._isPattern) {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tpattern: this._formatPattern,\n\t\t\t});\n\t\t} else {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tstyle: this._formatPattern,\n\t\t\t});\n\t\t}\n\n\t\treturn dateFormat;\n\t}\n\n\t/**\n\t * Formats a Java Script date object into a string representing a locale date and time\n\t * according to the `formatPattern` property of the TimePicker instance\n\t * @param date A Java Script date object to be formatted as string\n\t * @public\n\t * @returns formatted value\n\t */\n\tformatValue(date: Date): string {\n\t\treturn this.getFormat().format(date);\n\t}\n\n\t/**\n\t * Checks if a value is valid against the current `formatPattern` value.\n\t *\n\t * **Note:** an empty string is considered as valid value.\n\t * @param value The value to be tested against the current date format\n\t * @public\n\t */\n\tisValid(value: string | undefined): boolean {\n\t\tif (value === \"\") {\n\t\t\treturn true;\n\t\t}\n\t\treturn !!this.getFormat().parse(value as string);\n\t}\n\n\tnormalizeValue(value: string) {\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\t\treturn this.getFormat().format(this.getFormat().parse(value));\n\t}\n\n\t_modifyValueBy(amount: number, unit: string) {\n\t\tconst date = this.getFormat().parse(this._effectiveValue) as Date;\n\t\tif (!date) {\n\t\t\treturn;\n\t\t}\n\t\tif (unit === \"hour\") {\n\t\t\tdate.setHours(date.getHours() + amount);\n\t\t} else if (unit === \"minute\") {\n\t\t\tdate.setMinutes(date.getMinutes() + amount);\n\t\t} else if (unit === \"second\") {\n\t\t\tdate.setSeconds(date.getSeconds() + amount);\n\t\t}\n\n\t\tconst newValue = this.formatValue(date);\n\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\t/**\n\t * The listener for this event can't be passive as it calls preventDefault()\n\t * @param e Wheel Event\n\t * @private\n\t */\n\t_handleWheel(e: WheelEvent) {\n\t\te.preventDefault();\n\t}\n\n\t/**\n\t * Hides mobile device keyboard by temporary setting the input to readonly state.\n\t */\n\t_hideMobileKeyboard() {\n\t\tthis._getInput().readonly = true;\n\t\tsetTimeout(() => { this._getInput().readonly = false; }, 0);\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tif (this._isMobileDevice) {\n\t\t\tthis._hideMobileKeyboard();\n\t\t\tif (this._isInputsPopoverOpen) {\n\t\t\t\tconst popover = this._getInputsPopover();\n\t\t\t\tpopover.applyFocus();\n\t\t\t}\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_oninput(e: CustomEvent) {\n\t\tif (this._isPhone) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\tget submitButtonLabel() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_SUBMIT_BUTTON);\n\t}\n\n\tget cancelButtonLabel() {\n\t\treturn TimePicker.i18nBundle.getText(TIMEPICKER_CANCEL_BUTTON);\n\t}\n\n\t/**\n\t * @protected\n\t */\n\tget openIconName() {\n\t\treturn \"time-entry-request\";\n\t}\n}\n\nTimePicker.define();\n\nexport default TimePicker;\nexport type {\n\tTimeSelectionChangeEventDetail,\n\tTimePickerChangeEventDetail,\n\tTimePickerInputEventDetail,\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimePickerClock.js","sourceRoot":"","sources":["../src/TimePickerClock.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\n\n// Template\nimport TimePickerClockTemplate from \"./generated/templates/TimePickerClockTemplate.lit.js\";\n\n// Styles\nimport TimePickerClockCss from \"./generated/themes/TimePickerClock.css.js\";\n\ntype TimePickerClockChangeEventDetail = {\n\tvalue: number,\n\tstringValue: string,\n\tfinalChange: boolean,\n}\n\ntype TimePickerClockItem = {\n\tangle?: number,\n\titem?: string,\n\tinnerItem?: string,\n\touterStyles?: object,\n\tinnerStyles?: object,\n}\n\ntype TimePickerClockSelection = {\n\tshowMarker?: boolean,\n\titemClasses?: string,\n\tinnerItemClasses?: string,\n}\n\ntype TimePickerClockDimensions = {\n\tradius: number,\n\tcenterX: number,\n\tcenterY: number,\n\tdotHeight: number,\n\tnumberHeight: number,\n\touterMax: number,\n\touterMin: number,\n\tinnerMax: number,\n\tinnerMin: number,\n\toffsetX: number,\n\toffsetY: number,\n}\n\ntype TimePickerClockSelectedItem = TimePickerClockItem & TimePickerClockSelection;\n\nconst ANIMATION_DURATION_MAX = 200; // total animation duration, without the delay before firing the event\nconst ANIMATION_DELAY_EVENT = 100; // delay before firing the event\nconst CLOCK_ANGLE_STEP = 6;\nconst CLOCK_NUMBER_CLASS = \"ui5-tp-clock-number\";\nconst CLOCK_NUMBER_HOVER_CLASS = \"ui5-tp-clock-number-hover\";\nconst CLOCK_NUMBER_SELECTED_CLASS = \"ui5-tp-clock-selected\";\nconst CLOCK_MIDDOT_CLASS = \"ui5-tp-clock-mid-dot\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * `ui5-time-picker-clock` allows selecting of hours,minutes or seconds (depending on property set).\n * The component supports interactions with mouse, touch and mouse wheel.\n * Depending on settings, the clock can display only outer set of items (when the clock displays hours in 12-hour mode,\n * minutes or seconds), or outer and inner sets of items (when the clock displays hours in 24-hours mode).\n * The step for displaying or selecting of items can be configured.\n *\n * `ui5-time-picker-clock` is used as part of `ui5-time-selection-clocks` component, which\n * is used in `ui5-time-picker` component respectively.\n *\n * ### Usage\n *\n * `ui5-time-picker-clock` can display hours, minutes or seconds\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TimePickerClock.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.15.0\n * @private\n */\n@customElement({\n\ttag: \"ui5-time-picker-clock\",\n\trenderer: litRender,\n\tstyles: TimePickerClockCss,\n\ttemplate: TimePickerClockTemplate,\n})\n\n/**\n * Fired when a value of clock is changed.\n * @param { integer } value The new `value` of the clock.\n * @param { string } stringValue The new `value` of the clock, as string, zero-prepended when necessary.\n * @param { boolean } finalChange `true` when a value is selected and confirmed, `false` when a value is only selected but not confirmed.\n */\n@event<TimePickerClockChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: { type: Number },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tstringValue: { type: String },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tfinalChange: { type: Boolean },\n\t},\n})\n\nclass TimePickerClock extends UI5Element {\n\t/**\n\t * Determines whether the component is displayed as disabled.\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Determines whether the component is active (visible).\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tactive = false;\n\n\t/**\n\t * Minimum item value for the outer circle of the clock.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\titemMin = -1;\n\n\t/**\n\t * Maximum item value for the outer circle of the clock.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\titemMax = -1;\n\n\t/**\n\t * If set to `true`, an inner circle is displayed.\n\t * The first item value of the inner circle will be itemMax + 1\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tshowInnerCircle = false;\n\n\t/**\n\t * Label of the clock dial - for example, 'Hours', 'Minutes', or 'Seconds'.\n\t * @default undefined\n\t */\n\t@property()\n\tlabel?: string;\n\n\t/**\n\t * If set to `true`, a surrounding circle with markers (dots) will be hidden.\n\t * (for example, on the 'Minutes' clock-dial, markers represent minutes).\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\thideFractions = false;\n\n\t/**\n\t * If provided, this will replace the last item displayed. If there is only one (outer) circle,\n\t * the last item from outer circle will be replaced; if there is an inner circle too, the last\n\t * item of inner circle will be replaced. Usually, the last item '24' is replaced with '0'.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\tlastItemReplacement = -1;\n\n\t/**\n\t * Prepend with zero flag. If `true`, values less than 10 will be prepend with 0.\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tprependZero = false;\n\n\t/**\n\t * The currently selected value of the clock.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\tselectedValue = -1\n\n\t/**\n\t * The step for displaying of one unit of items.\n\t * 1 means 1/60 of the circle.\n\t * The default display step is 5 which means minutes and seconds are displayed as \"0\", \"5\", \"10\", etc.\n\t * For hours the display step must be set to 1.\n\t * @default 5\n\t */\n\t@property({ type: Number })\n\tdisplayStep = 5;\n\n\t/**\n\t * The step for selection of items.\n\t * 1 means 1 unit:\n\t * - if the clock displays hours - 1 unit = 1 hour\n\t * - if the clock displays minutes/seconds - 1 unit = 1 minute/second\n\t * @default 1\n\t */\n\t@property({ type: Number })\n\tvalueStep = 1;\n\n\t/**\n\t * Defines the currently available Time Picker Clock items depending on Clock setup.\n\t */\n\t@property({ type: Array })\n\t_items: Array<TimePickerClockItem> = [];\n\n\t/**\n\t * Defines the currently selected Time Picker Clock item.\n\t */\n\t@property({ type: Object })\n\t_selectedItem: TimePickerClockSelectedItem = {};\n\n\t/**\n\t * Keeps variables used in interaction calculations.\n\t */\n\t@property({ type: Object })\n\t_dimensionParameters: TimePickerClockDimensions = {\n\t\tradius: 0,\n\t\tcenterX: 0,\n\t\tcenterY: 0,\n\t\tdotHeight: 0,\n\t\tnumberHeight: 0,\n\t\touterMax: 0,\n\t\touterMin: 0,\n\t\tinnerMax: 0,\n\t\tinnerMin: 0,\n\t\toffsetX: 0,\n\t\toffsetY: 0,\n\t};\n\n\t/**\n\t * Mousedown or Touchstart event flag.\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_mouseOrTouchDown = false;\n\n\t/**\n\t * Cancel Mouseout flag.\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_cancelTouchOut = false;\n\n\t/**\n\t * Calculated selected value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_selectedValue = -1;\n\n\t/**\n\t * Selected value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_movSelectedValue = -1;\n\n\t/**\n\t * Hovered value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_hoveredValue = -1;\n\n\t/**\n\t * Previously hovered value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_prevHoveredValue = -1;\n\n\t/**\n\t * Animation in progress flag.\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_animationInProgress = false;\n\n\t_fnOnMouseOutUp: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._fnOnMouseOutUp = () => {\n\t\t\tthis._mouseOrTouchDown = false;\n\t\t};\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn <ClassMap>{\n\t\t\tclock: {\n\t\t\t\t\"ui5-tp-clock\": true,\n\t\t\t\t\"ui5-tp-clock-inner\": this.showInnerCircle,\n\t\t\t\t\"ui5-tp-clock-active\": this.active,\n\t\t\t},\n\t\t};\n\t}\n\n\tonEnterDOM() {\n\t\tdocument.addEventListener(\"mouseup\", this._fnOnMouseOutUp, false);\n\t}\n\n\tonExitDOM() {\n\t\tdocument.removeEventListener(\"mouseup\", this._fnOnMouseOutUp, false);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prepareClockItems();\n\t\tconst value: number = this._fixReplacementValue(this.selectedValue);\n\t\tthis._updateSelectedValueObject(value);\n\t}\n\n\t/**\n\t * Returns the real value of the passed clock item, if the replacement must be done, returns the replaced value.\n\t * @param value The value of the clock item\n\t * @returns The real/replaced value\n\t */\n\t_fixReplacementValue(value: number): number {\n\t\tlet realValue = value;\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\n\t\tif (realValue === 0) {\n\t\t\trealValue = maxValue;\n\t\t}\n\t\tif (realValue === maxValue && this.lastItemReplacement !== -1) {\n\t\t\trealValue = this.lastItemReplacement;\n\t\t}\n\n\t\treturn realValue;\n\t}\n\n\t/**\n\t * Updates internal selected value object constructed for rendering purposes.\n\t * @param value currently selected value.\n\t */\n\t_updateSelectedValueObject(value: number) {\n\t\tif (value === -1) {\n\t\t\tthis._selectedItem = {\n\t\t\t\tshowMarker: false,\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\n\t\tconst selectedOuter = (value >= this.itemMin && value <= this.itemMax) || (!this.showInnerCircle && value === this.lastItemReplacement);\n\t\tconst selectedInner = ((value >= this.itemMin + this.itemMax && value <= this.itemMax * 2) || value === this.lastItemReplacement) && this.showInnerCircle;\n\t\tconst stepAngle = 360 / (this.itemMax - this.itemMin + 1);\n\t\tconst innerValue = this.lastItemReplacement === -1 || !this.prependZero ? value.toString() : value.toString().padStart(2, \"0\");\n\t\tlet currentAngle: number | undefined = selectedOuter || selectedInner ? value * stepAngle : undefined;\n\n\t\tif (currentAngle !== undefined) {\n\t\t\tcurrentAngle %= 360;\n\t\t}\n\n\t\tthis._selectedItem = {\n\t\t\t\"angle\": currentAngle,\n\t\t\t\"item\": selectedOuter ? value.toString() : \"\",\n\t\t\t\"innerItem\": selectedInner ? innerValue : \"\",\n\t\t\t\"showMarker\": selectedOuter || selectedInner,\n\t\t\t\"itemClasses\": CLOCK_NUMBER_CLASS + (selectedOuter ? ` ${CLOCK_NUMBER_SELECTED_CLASS}` : \"\"),\n\t\t\t\"innerItemClasses\": CLOCK_NUMBER_CLASS + (selectedInner ? ` ${CLOCK_NUMBER_SELECTED_CLASS}` : \"\"),\n\t\t\t\"outerStyles\": {\n\t\t\t\ttransform: `translate(-50%) rotate(${currentAngle || 0}deg)`,\n\t\t\t},\n\t\t\t\"innerStyles\": {\n\t\t\t\ttransform: `rotate(-${currentAngle || 0}deg)`,\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * Prepares clock items objects according to current clock settings. Item objects are used for rendering purposes.\n\t */\n\t_prepareClockItems() {\n\t\tconst values = [];\n\t\tlet displayStep = this.displayStep;\n\t\tlet item: TimePickerClockItem;\n\t\tlet valueIndex;\n\t\tlet i;\n\n\t\tthis._items = [];\n\n\t\tfor (i = this.itemMin; i <= this.itemMax; i++) {\n\t\t\tvalues.push({\n\t\t\t\t\"item\": i.toString(),\n\t\t\t\t\"innerItem\": this.showInnerCircle ? (i + this.itemMax).toString() : undefined,\n\t\t\t});\n\t\t}\n\t\tif (this.lastItemReplacement !== -1) {\n\t\t\tif (this.showInnerCircle && this.prependZero) {\n\t\t\t\tvalues[values.length - 1].innerItem = this.lastItemReplacement.toString().padStart(2, \"0\");\n\t\t\t} else {\n\t\t\t\tvalues[values.length - 1].item = this.lastItemReplacement.toString();\n\t\t\t}\n\t\t}\n\n\t\t// determines angle step for values display\n\t\tconst itemStep = 360 / CLOCK_ANGLE_STEP / values.length;\n\n\t\t// determines step for values display in units\n\t\tif (this.valueStep * itemStep > displayStep) {\n\t\t\tdisplayStep = this.valueStep * itemStep;\n\t\t}\n\n\t\tfor (i = 1; i <= 60; i++) {\n\t\t\tvalueIndex = i / itemStep - 1;\n\t\t\titem = i % displayStep !== 0 ? {} : values[valueIndex];\n\t\t\titem.angle = i * CLOCK_ANGLE_STEP;\n\t\t\titem.outerStyles = {\n\t\t\t\ttransform: `translate(-50%) rotate(${i * 6}deg)`,\n\t\t\t};\n\t\t\titem.innerStyles = {\n\t\t\t\ttransform: `rotate(-${i * 6}deg)`,\n\t\t\t};\n\t\t\tthis._items.push(item);\n\t\t}\n\t}\n\n\t/**\n\t * Returns the DOM Reference of the clock cover element\n\t * @returns the DOM Reference\n\t */\n\t_getClockCoverContainerDomRef(): Element | null | undefined {\n\t\tconst domRef = this.getDomRef();\n\t\treturn domRef && domRef.querySelector(\".ui5-tp-clock-cover\");\n\t}\n\n\t/**\n\t * Returns the real max value of clock items, taking in count if there is inner circle or not.\n\t * @returns max value\n\t */\n\t_getMaxValue(): number {\n\t\treturn this.showInnerCircle ? this.itemMax * 2 : this.itemMax;\n\t}\n\n\t/**\n\t * Calculates the outer height of a HTML element.\n\t * @param element The element which outer height to be calculated\n\t * @returns Outer height of the passed HTML element\n\t */\n\t_outerHeight(element: HTMLElement): number {\n\t\tif (!element) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst style = window.getComputedStyle(element);\n\n\t\treturn element.offsetHeight + parseInt(style.marginTop) + parseInt(style.marginBottom);\n\t}\n\n\t/**\n\t * Returns the Id of the DOM element of the clock item that display specific value.\n\t * @param value The value of the clock item\n\t * @returns Id of the clock item element\n\t */\n\t_hoveredId(value: number): string {\n\t\tif (value === this._getMaxValue() && this.lastItemReplacement !== -1) {\n\t\t\tvalue = this.lastItemReplacement;\n\t\t}\n\n\t\tconst valueString = this.showInnerCircle && value === this.lastItemReplacement && this.prependZero ? value.toString().padStart(2, \"0\") : value.toString();\n\n\t\treturn `#${this._id}-${valueString}`;\n\t}\n\n\t/**\n\t * Returns provided value as string. Padding with additional zero is applied if necessary.\n\t * @param value The value that should be returned as string\n\t * @returns The value as string\n\t */\n\t_getStringValue(value: number): string {\n\t\treturn this.prependZero ? value.toString().padStart(2, \"0\") : value.toString();\n\t}\n\n\t/**\n\t * Calculates dimension variables necessary for determining of item selection.\n\t * @returns Dimensions object\n\t */\n\t_calculateDimensions(): TimePickerClockDimensions | undefined {\n\t\tconst cover = this.getDomRef() as HTMLElement;\n\t\tconst scrollLeft = window.pageXOffset || document.documentElement.scrollLeft;\n\t\tconst scrollTop = window.pageYOffset || document.documentElement.scrollTop;\n\n\t\tif (!cover) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst domRef = this.getDomRef() as HTMLElement;\n\t\tconst dotElement = domRef.querySelector(`.${CLOCK_MIDDOT_CLASS}`) as HTMLElement;\n\t\tconst numberElement = domRef.querySelector(`.${CLOCK_NUMBER_CLASS}`) as HTMLElement;\n\t\tconst radius = Math.round(cover.offsetHeight / 2);\n\t\tconst dotHeight = this._outerHeight(dotElement);\n\t\tconst numberHeight = this._outerHeight(numberElement);\n\t\tconst offset = cover.getBoundingClientRect();\n\n\t\tthis._dimensionParameters = {\n\t\t\t\"radius\": radius,\n\t\t\t\"centerX\": radius,\n\t\t\t\"centerY\": radius,\n\t\t\t\"dotHeight\": dotHeight,\n\t\t\t\"numberHeight\": numberHeight,\n\t\t\t\"outerMax\": radius,\n\t\t\t\"outerMin\": radius - numberHeight,\n\t\t\t\"innerMax\": radius - numberHeight - 1,\n\t\t\t\"innerMin\": radius - numberHeight * 2 - 1,\n\t\t\t\"offsetX\": offset.left + scrollLeft,\n\t\t\t\"offsetY\": offset.top + scrollTop,\n\t\t};\n\t}\n\n\t/**\n\t * Calculates selected and hovered values based on click/touch position.\n\t * @param x X position of click/touch returned by the event\n\t * @param y Y position of click/touch returned by the event\n\t */\n\t_calculatePosition(x: number, y: number) {\n\t\tconst dX = x - this._dimensionParameters.offsetX + 1 - this._dimensionParameters.radius;\n\t\tconst dY = y - this._dimensionParameters.offsetY + 1 - this._dimensionParameters.radius;\n\t\tconst mod = dX >= 0 ? 0 : 180;\n\t\tconst angle = ((Math.atan(dY / dX) * 180) / Math.PI) + 90 + mod;\n\t\tconst angleStep = (360 / this.itemMax) * this.valueStep;\n\t\tconst radius = Math.sqrt(dX * dX + dY * dY);\n\t\tconst isOuter = radius <= this._dimensionParameters.outerMax && radius > (this.showInnerCircle ? this._dimensionParameters.outerMin : this._dimensionParameters.innerMin);\n\t\tconst isInner = this.showInnerCircle && radius <= this._dimensionParameters.innerMax && radius > this._dimensionParameters.innerMin;\n\t\tconst isOuterHover = radius <= this._dimensionParameters.outerMax && radius > this._dimensionParameters.outerMin;\n\t\tconst isInnerHover = isInner;\n\t\tlet finalAngle = Math.round((angle === 0 ? 360 : angle) / angleStep) * angleStep;\n\n\t\tif (finalAngle === 0) {\n\t\t\tfinalAngle = 360;\n\t\t}\n\n\t\t// selected item calculations\n\t\tif (isInner || isOuter) {\n\t\t\tthis._selectedValue = (finalAngle / angleStep) * this.valueStep;\n\t\t\tif (isInner) {\n\t\t\t\tthis._selectedValue += this.itemMax;\n\t\t\t}\n\t\t} else {\n\t\t\tthis._selectedValue = -1;\n\t\t}\n\n\t\t// hover simulation calculations\n\t\tthis._hoveredValue = isInnerHover || isOuterHover ? this._selectedValue : -1;\n\n\t\tif (this._selectedValue === this._getMaxValue() && this.lastItemReplacement !== -1) {\n\t\t\tthis._selectedValue = this.lastItemReplacement;\n\t\t}\n\t}\n\n\t/**\n\t * Does the animation between the old and the new value of the clock. Can be skipped with setting the second parameter to true.\n\t * @param newValue the new value that must be set\n\t * @param skipAnimation whether to skip the animation\n\t */\n\t_changeValueAnimation(newValue: number, skipAnimation = false) {\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\t\tlet firstSelected = this._movSelectedValue;\n\t\tlet\tlastSelected = newValue;\n\t\tlet direction = 1;\n\t\tlet\tpath1;\n\t\tlet path2;\n\t\tlet delay;\n\n\t\tif (!skipAnimation) {\n\t\t\t// do the animation here\n\n\t\t\tpath1 = Math.abs(firstSelected - lastSelected);\n\t\t\tpath2 = maxValue - path1;\n\n\t\t\tif (firstSelected < lastSelected) {\n\t\t\t\tif (path2 < path1) {\n\t\t\t\t\tfirstSelected += maxValue;\n\t\t\t\t\tdirection = -1;\n\t\t\t\t}\n\t\t\t} else if (path2 < path1) {\n\t\t\t\tlastSelected += maxValue;\n\t\t\t} else {\n\t\t\t\tdirection = -1;\n\t\t\t}\n\n\t\t\tdelay = firstSelected === lastSelected ? 0 : Math.ceil(ANIMATION_DURATION_MAX / Math.abs(firstSelected - lastSelected));\n\t\t\tthis._animationInProgress = true;\n\t\t\tthis._selectNextNumber(firstSelected, lastSelected, direction, maxValue, newValue, delay);\n\t\t} else {\n\t\t\tthis._setSelectedValue(newValue);\n\t\t}\n\t}\n\n\t/**\n\t * Does the animation step between old and new selected values.\n\t * @param firstSelected first/current value to move from\n\t * @param lastSelected last value to move to\n\t * @param direction direction of the animation\n\t * @param maxValue max clock value\n\t * @param newValue new value\n\t * @param delay delay of the single step\n\t */\n\t_selectNextNumber(firstSelected: number, lastSelected: number, direction: number, maxValue: number, newValue: number, delay: number) {\n\t\tconst current = firstSelected > maxValue ? firstSelected - maxValue : firstSelected;\n\n\t\tif (firstSelected === lastSelected) {\n\t\t\tthis._animationInProgress = false;\n\t\t}\n\t\tthis._setSelectedValue(current);\n\t\tif (firstSelected !== lastSelected) {\n\t\t\tfirstSelected += direction;\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis._selectNextNumber(firstSelected, lastSelected, direction, maxValue, newValue, delay);\n\t\t\t}, delay);\n\t\t} else {\n\t\t\t// the new value is set, fire event\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.fireEvent<TimePickerClockChangeEventDetail>(\"change\", {\n\t\t\t\t\t\"value\": newValue,\n\t\t\t\t\t\"stringValue\": this._getStringValue(newValue),\n\t\t\t\t\t\"finalChange\": true,\n\t\t\t\t});\n\t\t\t}, ANIMATION_DELAY_EVENT);\n\t\t}\n\t}\n\n\t/**\n\t * Mousewheel handler. Increases/decreases value of the clock.\n\t * @param increase whether to increase or decrease the value\n\t */\n\t_modifyValue(increase: boolean) {\n\t\tlet selectedValue = this.selectedValue;\n\t\tconst replacementValue = this.lastItemReplacement;\n\t\tconst minValue = this.itemMin;\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\t\tlet step = this.valueStep;\n\t\tlet newValue;\n\n\t\t// fix step in order to change value to the nearest possible if step is > 1\n\t\tif (selectedValue % step !== 0) {\n\t\t\tnewValue = increase ? Math.ceil(selectedValue / step) * step : Math.floor(selectedValue / step) * step;\n\t\t\tstep = Math.abs(selectedValue - newValue);\n\t\t}\n\n\t\tif (selectedValue === replacementValue) {\n\t\t\tselectedValue = maxValue;\n\t\t}\n\t\tif (increase) {\n\t\t\tselectedValue += step;\n\t\t\tif (selectedValue > maxValue) {\n\t\t\t\tselectedValue -= maxValue;\n\t\t\t}\n\t\t} else {\n\t\t\tselectedValue -= step;\n\t\t\tif (selectedValue < minValue) {\n\t\t\t\tselectedValue = maxValue;\n\t\t\t}\n\t\t}\n\n\t\tthis._setSelectedValue(selectedValue);\n\t}\n\n\t/**\n\t * Sets new selected value, fires change event and updates selected value object used for rendering purposes.\n\t * @param value\n\t */\n\t_setSelectedValue(value: number) {\n\t\tconst realValue: number = this._fixReplacementValue(value);\n\t\tthis.selectedValue = realValue;\n\t\tthis.fireEvent<TimePickerClockChangeEventDetail>(\"change\", {\n\t\t\t\"value\": realValue,\n\t\t\t\"stringValue\": this._getStringValue(realValue),\n\t\t\t\"finalChange\": false,\n\t\t});\n\t\tthis._updateSelectedValueObject(realValue);\n\t}\n\n\t/**\n\t * TouchStart/MouseDown event handler.\n\t * @param evt Event object\n\t */\n\t_onTouchStart(evt: Event) {\n\t\tthis._cancelTouchOut = false;\n\t\tif (this.disabled || this._mouseOrTouchDown) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst x = evt.type === \"touchstart\" ? (evt as TouchEvent).touches[0].pageX : (evt as MouseEvent).pageX;\n\t\tconst y = evt.type === \"touchstart\" ? (evt as TouchEvent).touches[0].pageY : (evt as MouseEvent).pageY;\n\n\t\tthis._movSelectedValue = this.selectedValue;\n\t\tthis._calculateDimensions();\n\t\tthis._calculatePosition(x, y);\n\t\tthis._mouseOrTouchDown = true;\n\t}\n\n\t/**\n\t * TouchMove/MouseMove event handler.\n\t * @param evt Event object\n\t */\n\t_onTouchMove(evt: Event) {\n\t\tlet\thoveredNumber;\n\t\tconst domRef = this.getDomRef();\n\n\t\tevt.preventDefault();\n\t\tif (this._mouseOrTouchDown) {\n\t\t\tconst x = evt.type === \"touchmove\" ? (evt as TouchEvent).touches[0].pageX : (evt as MouseEvent).pageX;\n\t\t\tconst y = evt.type === \"touchmove\" ? (evt as TouchEvent).touches[0].pageY : (evt as MouseEvent).pageY;\n\t\t\tthis._calculatePosition(x, y);\n\t\t\tif (!this.disabled && this._selectedValue !== -1 && this._selectedValue !== this._movSelectedValue) {\n\t\t\t\tthis._setSelectedValue(this._selectedValue);\n\t\t\t\tthis._movSelectedValue = 0 + this._selectedValue;\n\t\t\t}\n\t\t} else if (evt.type === \"mousemove\") {\n\t\t\tif (!this._dimensionParameters.radius) {\n\t\t\t\tthis._calculateDimensions();\n\t\t\t}\n\t\t\tthis._calculatePosition((evt as MouseEvent).pageX, (evt as MouseEvent).pageY);\n\t\t\tif (this.displayStep > 1 && this._hoveredValue !== -1) {\n\t\t\t\tthis._hoveredValue = Math.round(this._hoveredValue / this.displayStep) * this.displayStep;\n\t\t\t}\n\n\t\t\tif (!this.disabled && this._hoveredValue !== this._prevHoveredValue) {\n\t\t\t\thoveredNumber = (domRef as HTMLElement).querySelector(this._hoveredId(this._prevHoveredValue));\n\t\t\t\thoveredNumber && hoveredNumber.classList.remove(CLOCK_NUMBER_HOVER_CLASS);\n\t\t\t\tthis._prevHoveredValue = this._hoveredValue;\n\t\t\t\thoveredNumber = (domRef as HTMLElement).querySelector(this._hoveredId(this._prevHoveredValue));\n\t\t\t\thoveredNumber && hoveredNumber.classList.add(CLOCK_NUMBER_HOVER_CLASS);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * TouchEnd/MouseUp event handler.\n\t * @param evt Event object\n\t */\n\t_onTouchEnd(evt: Event) {\n\t\tif (!this._mouseOrTouchDown) {\n\t\t\treturn;\n\t\t}\n\t\tthis._mouseOrTouchDown = false;\n\t\tevt.preventDefault();\n\t\tif (this.disabled || this._selectedValue === -1) {\n\t\t\treturn;\n\t\t}\n\t\tif (!this._cancelTouchOut) {\n\t\t\tthis._changeValueAnimation(this._selectedValue);\n\t\t}\n\t}\n\n\t/**\n\t * Mouse Wheel event handler.\n\t * @param evt Event object\n\t */\n\t_onMouseWheel(evt: WheelEvent) {\n\t\tconst increase = evt.detail ? (evt.detail > 0) : (evt.deltaY > 0 || evt.deltaX > 0);\n\n\t\tevt.preventDefault();\n\t\tif (!this._mouseOrTouchDown) {\n\t\t\tthis._modifyValue(increase);\n\t\t}\n\t}\n\n\t/**\n\t * MouseOut event handler.\n\t */\n\t_onMouseOut() {\n\t\tconst hoveredNumber = (this.getDomRef() as HTMLElement).querySelector(this._hoveredId(this._hoveredValue));\n\n\t\thoveredNumber && hoveredNumber.classList.remove(CLOCK_NUMBER_HOVER_CLASS);\n\t\tthis._hoveredValue = -1;\n\t\tthis._prevHoveredValue = -1;\n\t}\n}\n\nTimePickerClock.define();\n\nexport default TimePickerClock;\nexport type { TimePickerClockChangeEventDetail };\n"]}
|
|
1
|
+
{"version":3,"file":"TimePickerClock.js","sourceRoot":"","sources":["../src/TimePickerClock.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\n\n// Template\nimport TimePickerClockTemplate from \"./generated/templates/TimePickerClockTemplate.lit.js\";\n\n// Styles\nimport TimePickerClockCss from \"./generated/themes/TimePickerClock.css.js\";\n\ntype TimePickerClockChangeEventDetail = {\n\tvalue: number,\n\tstringValue: string,\n\tfinalChange: boolean,\n}\n\ntype TimePickerClockItem = {\n\tangle?: number,\n\titem?: string,\n\tinnerItem?: string,\n\touterStyles?: object,\n\tinnerStyles?: object,\n}\n\ntype TimePickerClockSelection = {\n\tshowMarker?: boolean,\n\titemClasses?: string,\n\tinnerItemClasses?: string,\n}\n\ntype TimePickerClockDimensions = {\n\tradius: number,\n\tcenterX: number,\n\tcenterY: number,\n\tdotHeight: number,\n\tnumberHeight: number,\n\touterMax: number,\n\touterMin: number,\n\tinnerMax: number,\n\tinnerMin: number,\n\toffsetX: number,\n\toffsetY: number,\n}\n\ntype TimePickerClockSelectedItem = TimePickerClockItem & TimePickerClockSelection;\n\nconst ANIMATION_DURATION_MAX = 200; // total animation duration, without the delay before firing the event\nconst ANIMATION_DELAY_EVENT = 100; // delay before firing the event\nconst CLOCK_ANGLE_STEP = 6;\nconst CLOCK_NUMBER_CLASS = \"ui5-tp-clock-number\";\nconst CLOCK_NUMBER_HOVER_CLASS = \"ui5-tp-clock-number-hover\";\nconst CLOCK_NUMBER_SELECTED_CLASS = \"ui5-tp-clock-selected\";\nconst CLOCK_MIDDOT_CLASS = \"ui5-tp-clock-mid-dot\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * `ui5-time-picker-clock` allows selecting of hours,minutes or seconds (depending on property set).\n * The component supports interactions with mouse, touch and mouse wheel.\n * Depending on settings, the clock can display only outer set of items (when the clock displays hours in 12-hour mode,\n * minutes or seconds), or outer and inner sets of items (when the clock displays hours in 24-hours mode).\n * The step for displaying or selecting of items can be configured.\n *\n * `ui5-time-picker-clock` is used as part of `ui5-time-selection-clocks` component, which\n * is used in `ui5-time-picker` component respectively.\n *\n * ### Usage\n *\n * `ui5-time-picker-clock` can display hours, minutes or seconds\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/TimePickerClock.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.15.0\n * @private\n */\n@customElement({\n\ttag: \"ui5-time-picker-clock\",\n\trenderer: litRender,\n\tstyles: TimePickerClockCss,\n\ttemplate: TimePickerClockTemplate,\n})\n\n/**\n * Fired when a value of clock is changed.\n * @param { integer } value The new `value` of the clock.\n * @param { string } stringValue The new `value` of the clock, as string, zero-prepended when necessary.\n * @param { boolean } finalChange `true` when a value is selected and confirmed, `false` when a value is only selected but not confirmed.\n */\n@event<TimePickerClockChangeEventDetail>(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: { type: Number },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tstringValue: { type: String },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tfinalChange: { type: Boolean },\n\t},\n})\n\nclass TimePickerClock extends UI5Element {\n\t/**\n\t * Determines whether the component is displayed as disabled.\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tdisabled = false;\n\n\t/**\n\t * Determines whether the component is active (visible).\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tactive = false;\n\n\t/**\n\t * Minimum item value for the outer circle of the clock.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\titemMin = -1;\n\n\t/**\n\t * Maximum item value for the outer circle of the clock.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\titemMax = -1;\n\n\t/**\n\t * If set to `true`, an inner circle is displayed.\n\t * The first item value of the inner circle will be itemMax + 1\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tshowInnerCircle = false;\n\n\t/**\n\t * Label of the clock dial - for example, 'Hours', 'Minutes', or 'Seconds'.\n\t * @default undefined\n\t */\n\t@property()\n\tlabel?: string;\n\n\t/**\n\t * If set to `true`, a surrounding circle with markers (dots) will be hidden.\n\t * (for example, on the 'Minutes' clock-dial, markers represent minutes).\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\thideFractions = false;\n\n\t/**\n\t * If provided, this will replace the last item displayed. If there is only one (outer) circle,\n\t * the last item from outer circle will be replaced; if there is an inner circle too, the last\n\t * item of inner circle will be replaced. Usually, the last item '24' is replaced with '0'.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\tlastItemReplacement = -1;\n\n\t/**\n\t * Prepend with zero flag. If `true`, values less than 10 will be prepend with 0.\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tprependZero = false;\n\n\t/**\n\t * The currently selected value of the clock.\n\t * @default -1\n\t */\n\t@property({ type: Number })\n\tselectedValue = -1\n\n\t/**\n\t * The step for displaying of one unit of items.\n\t * 1 means 1/60 of the circle.\n\t * The default display step is 5 which means minutes and seconds are displayed as \"0\", \"5\", \"10\", etc.\n\t * For hours the display step must be set to 1.\n\t * @default 5\n\t */\n\t@property({ type: Number })\n\tdisplayStep = 5;\n\n\t/**\n\t * The step for selection of items.\n\t * 1 means 1 unit:\n\t * - if the clock displays hours - 1 unit = 1 hour\n\t * - if the clock displays minutes/seconds - 1 unit = 1 minute/second\n\t * @default 1\n\t */\n\t@property({ type: Number })\n\tvalueStep = 1;\n\n\t/**\n\t * Defines the currently available Time Picker Clock items depending on Clock setup.\n\t */\n\t@property({ type: Array })\n\t_items: Array<TimePickerClockItem> = [];\n\n\t/**\n\t * Defines the currently selected Time Picker Clock item.\n\t */\n\t@property({ type: Object })\n\t_selectedItem: TimePickerClockSelectedItem = {};\n\n\t/**\n\t * Keeps variables used in interaction calculations.\n\t */\n\t@property({ type: Object })\n\t_dimensionParameters: TimePickerClockDimensions = {\n\t\tradius: 0,\n\t\tcenterX: 0,\n\t\tcenterY: 0,\n\t\tdotHeight: 0,\n\t\tnumberHeight: 0,\n\t\touterMax: 0,\n\t\touterMin: 0,\n\t\tinnerMax: 0,\n\t\tinnerMin: 0,\n\t\toffsetX: 0,\n\t\toffsetY: 0,\n\t};\n\n\t/**\n\t * Mousedown or Touchstart event flag.\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_mouseOrTouchDown = false;\n\n\t/**\n\t * Cancel Mouseout flag.\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_cancelTouchOut = false;\n\n\t/**\n\t * Calculated selected value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_selectedValue = -1;\n\n\t/**\n\t * Selected value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_movSelectedValue = -1;\n\n\t/**\n\t * Hovered value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_hoveredValue = -1;\n\n\t/**\n\t * Previously hovered value of the clock during interactions.\n\t * @default -1\n\t */\n\t@property({ type: Number, noAttribute: true })\n\t_prevHoveredValue = -1;\n\n\t/**\n\t * Animation in progress flag.\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_animationInProgress = false;\n\n\t_fnOnMouseOutUp: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._fnOnMouseOutUp = () => {\n\t\t\tthis._mouseOrTouchDown = false;\n\t\t};\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn <ClassMap>{\n\t\t\tclock: {\n\t\t\t\t\"ui5-tp-clock\": true,\n\t\t\t\t\"ui5-tp-clock-inner\": this.showInnerCircle,\n\t\t\t\t\"ui5-tp-clock-active\": this.active,\n\t\t\t},\n\t\t};\n\t}\n\n\tonEnterDOM() {\n\t\tdocument.addEventListener(\"mouseup\", this._fnOnMouseOutUp, false);\n\t}\n\n\tonExitDOM() {\n\t\tdocument.removeEventListener(\"mouseup\", this._fnOnMouseOutUp, false);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prepareClockItems();\n\t\tconst value: number = this._fixReplacementValue(this.selectedValue);\n\t\tthis._updateSelectedValueObject(value);\n\t}\n\n\t/**\n\t * Returns the real value of the passed clock item, if the replacement must be done, returns the replaced value.\n\t * @param value The value of the clock item\n\t * @returns The real/replaced value\n\t */\n\t_fixReplacementValue(value: number): number {\n\t\tlet realValue = value;\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\n\t\tif (realValue === 0) {\n\t\t\trealValue = maxValue;\n\t\t}\n\t\tif (realValue === maxValue && this.lastItemReplacement !== -1) {\n\t\t\trealValue = this.lastItemReplacement;\n\t\t}\n\n\t\treturn realValue;\n\t}\n\n\t/**\n\t * Updates internal selected value object constructed for rendering purposes.\n\t * @param value currently selected value.\n\t */\n\t_updateSelectedValueObject(value: number) {\n\t\tif (value === -1) {\n\t\t\tthis._selectedItem = {\n\t\t\t\tshowMarker: false,\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\n\t\tconst selectedOuter = (value >= this.itemMin && value <= this.itemMax) || (!this.showInnerCircle && value === this.lastItemReplacement);\n\t\tconst selectedInner = ((value >= this.itemMin + this.itemMax && value <= this.itemMax * 2) || value === this.lastItemReplacement) && this.showInnerCircle;\n\t\tconst stepAngle = 360 / (this.itemMax - this.itemMin + 1);\n\t\tconst innerValue = this.lastItemReplacement === -1 || !this.prependZero ? value.toString() : value.toString().padStart(2, \"0\");\n\t\tlet currentAngle: number | undefined = selectedOuter || selectedInner ? value * stepAngle : undefined;\n\n\t\tif (currentAngle !== undefined) {\n\t\t\tcurrentAngle %= 360;\n\t\t}\n\n\t\tthis._selectedItem = {\n\t\t\t\"angle\": currentAngle,\n\t\t\t\"item\": selectedOuter ? value.toString() : \"\",\n\t\t\t\"innerItem\": selectedInner ? innerValue : \"\",\n\t\t\t\"showMarker\": selectedOuter || selectedInner,\n\t\t\t\"itemClasses\": CLOCK_NUMBER_CLASS + (selectedOuter ? ` ${CLOCK_NUMBER_SELECTED_CLASS}` : \"\"),\n\t\t\t\"innerItemClasses\": CLOCK_NUMBER_CLASS + (selectedInner ? ` ${CLOCK_NUMBER_SELECTED_CLASS}` : \"\"),\n\t\t\t\"outerStyles\": {\n\t\t\t\ttransform: `translate(-50%) rotate(${currentAngle || 0}deg)`,\n\t\t\t},\n\t\t\t\"innerStyles\": {\n\t\t\t\ttransform: `rotate(-${currentAngle || 0}deg)`,\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * Prepares clock items objects according to current clock settings. Item objects are used for rendering purposes.\n\t */\n\t_prepareClockItems() {\n\t\tconst values = [];\n\t\tlet displayStep = this.displayStep;\n\t\tlet item: TimePickerClockItem;\n\t\tlet valueIndex;\n\t\tlet i;\n\n\t\tthis._items = [];\n\n\t\tfor (i = this.itemMin; i <= this.itemMax; i++) {\n\t\t\tvalues.push({\n\t\t\t\t\"item\": i.toString(),\n\t\t\t\t\"innerItem\": this.showInnerCircle ? (i + this.itemMax).toString() : undefined,\n\t\t\t});\n\t\t}\n\t\tif (this.lastItemReplacement !== -1) {\n\t\t\tif (this.showInnerCircle && this.prependZero) {\n\t\t\t\tvalues[values.length - 1].innerItem = this.lastItemReplacement.toString().padStart(2, \"0\");\n\t\t\t} else {\n\t\t\t\tvalues[values.length - 1].item = this.lastItemReplacement.toString();\n\t\t\t}\n\t\t}\n\n\t\t// determines angle step for values display\n\t\tconst itemStep = 360 / CLOCK_ANGLE_STEP / values.length;\n\n\t\t// determines step for values display in units\n\t\tif (this.valueStep * itemStep > displayStep) {\n\t\t\tdisplayStep = this.valueStep * itemStep;\n\t\t}\n\n\t\tfor (i = 1; i <= 60; i++) {\n\t\t\tvalueIndex = i / itemStep - 1;\n\t\t\titem = i % displayStep !== 0 ? {} : values[valueIndex];\n\t\t\titem.angle = i * CLOCK_ANGLE_STEP;\n\t\t\titem.outerStyles = {\n\t\t\t\ttransform: `translate(-50%) rotate(${i * 6}deg)`,\n\t\t\t};\n\t\t\titem.innerStyles = {\n\t\t\t\ttransform: `rotate(-${i * 6}deg)`,\n\t\t\t};\n\t\t\tthis._items.push(item);\n\t\t}\n\t}\n\n\t/**\n\t * Returns the DOM Reference of the clock cover element\n\t * @returns the DOM Reference\n\t */\n\t_getClockCoverContainerDomRef(): Element | null | undefined {\n\t\tconst domRef = this.getDomRef();\n\t\treturn domRef && domRef.querySelector(\".ui5-tp-clock-cover\");\n\t}\n\n\t/**\n\t * Returns the real max value of clock items, taking in count if there is inner circle or not.\n\t * @returns max value\n\t */\n\t_getMaxValue(): number {\n\t\treturn this.showInnerCircle ? this.itemMax * 2 : this.itemMax;\n\t}\n\n\t/**\n\t * Calculates the outer height of a HTML element.\n\t * @param element The element which outer height to be calculated\n\t * @returns Outer height of the passed HTML element\n\t */\n\t_outerHeight(element: HTMLElement): number {\n\t\tif (!element) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst style = window.getComputedStyle(element);\n\n\t\treturn element.offsetHeight + parseInt(style.marginTop) + parseInt(style.marginBottom);\n\t}\n\n\t/**\n\t * Returns the Id of the DOM element of the clock item that display specific value.\n\t * @param value The value of the clock item\n\t * @returns Id of the clock item element\n\t */\n\t_hoveredId(value: number): string {\n\t\tif (value === this._getMaxValue() && this.lastItemReplacement !== -1) {\n\t\t\tvalue = this.lastItemReplacement;\n\t\t}\n\n\t\tconst valueString = this.showInnerCircle && value === this.lastItemReplacement && this.prependZero ? value.toString().padStart(2, \"0\") : value.toString();\n\n\t\treturn `#${this._id}-${valueString}`;\n\t}\n\n\t/**\n\t * Returns provided value as string. Padding with additional zero is applied if necessary.\n\t * @param value The value that should be returned as string\n\t * @returns The value as string\n\t */\n\t_getStringValue(value: number): string {\n\t\treturn this.prependZero ? value.toString().padStart(2, \"0\") : value.toString();\n\t}\n\n\t/**\n\t * Calculates dimension variables necessary for determining of item selection.\n\t * @returns Dimensions object\n\t */\n\t_calculateDimensions(): TimePickerClockDimensions | undefined {\n\t\tconst cover = this.getDomRef() as HTMLElement;\n\t\tconst scrollLeft = window.pageXOffset || document.documentElement.scrollLeft;\n\t\tconst scrollTop = window.pageYOffset || document.documentElement.scrollTop;\n\n\t\tif (!cover) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst domRef = this.getDomRef() as HTMLElement;\n\t\tconst dotElement = domRef.querySelector(`.${CLOCK_MIDDOT_CLASS}`) as HTMLElement;\n\t\tconst numberElement = domRef.querySelector(`.${CLOCK_NUMBER_CLASS}`) as HTMLElement;\n\t\tconst radius = Math.round(cover.offsetHeight / 2);\n\t\tconst dotHeight = this._outerHeight(dotElement);\n\t\tconst numberHeight = this._outerHeight(numberElement);\n\t\tconst offset = cover.getBoundingClientRect();\n\n\t\tthis._dimensionParameters = {\n\t\t\t\"radius\": radius,\n\t\t\t\"centerX\": radius,\n\t\t\t\"centerY\": radius,\n\t\t\t\"dotHeight\": dotHeight,\n\t\t\t\"numberHeight\": numberHeight,\n\t\t\t\"outerMax\": radius,\n\t\t\t\"outerMin\": radius - numberHeight,\n\t\t\t\"innerMax\": radius - numberHeight - 1,\n\t\t\t\"innerMin\": radius - numberHeight * 2 - 1,\n\t\t\t\"offsetX\": offset.left + scrollLeft,\n\t\t\t\"offsetY\": offset.top + scrollTop,\n\t\t};\n\t}\n\n\t/**\n\t * Calculates selected and hovered values based on click/touch position.\n\t * @param x X position of click/touch returned by the event\n\t * @param y Y position of click/touch returned by the event\n\t */\n\t_calculatePosition(x: number, y: number) {\n\t\tconst dX = x - this._dimensionParameters.offsetX + 1 - this._dimensionParameters.radius;\n\t\tconst dY = y - this._dimensionParameters.offsetY + 1 - this._dimensionParameters.radius;\n\t\tconst mod = dX >= 0 ? 0 : 180;\n\t\tconst angle = ((Math.atan(dY / dX) * 180) / Math.PI) + 90 + mod;\n\t\tconst angleStep = (360 / this.itemMax) * this.valueStep;\n\t\tconst radius = Math.sqrt(dX * dX + dY * dY);\n\t\tconst isOuter = radius <= this._dimensionParameters.outerMax && radius > (this.showInnerCircle ? this._dimensionParameters.outerMin : this._dimensionParameters.innerMin);\n\t\tconst isInner = this.showInnerCircle && radius <= this._dimensionParameters.innerMax && radius > this._dimensionParameters.innerMin;\n\t\tconst isOuterHover = radius <= this._dimensionParameters.outerMax && radius > this._dimensionParameters.outerMin;\n\t\tconst isInnerHover = isInner;\n\t\tlet finalAngle = Math.round((angle === 0 ? 360 : angle) / angleStep) * angleStep;\n\n\t\tif (finalAngle === 0) {\n\t\t\tfinalAngle = 360;\n\t\t}\n\n\t\t// selected item calculations\n\t\tif (isInner || isOuter) {\n\t\t\tthis._selectedValue = (finalAngle / angleStep) * this.valueStep;\n\t\t\tif (isInner) {\n\t\t\t\tthis._selectedValue += this.itemMax;\n\t\t\t}\n\t\t} else {\n\t\t\tthis._selectedValue = -1;\n\t\t}\n\n\t\t// hover simulation calculations\n\t\tthis._hoveredValue = isInnerHover || isOuterHover ? this._selectedValue : -1;\n\n\t\tif (this._selectedValue === this._getMaxValue() && this.lastItemReplacement !== -1) {\n\t\t\tthis._selectedValue = this.lastItemReplacement;\n\t\t}\n\t}\n\n\t/**\n\t * Does the animation between the old and the new value of the clock. Can be skipped with setting the second parameter to true.\n\t * @param newValue the new value that must be set\n\t * @param skipAnimation whether to skip the animation\n\t */\n\t_changeValueAnimation(newValue: number, skipAnimation = false) {\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\t\tlet firstSelected = this._movSelectedValue;\n\t\tlet\tlastSelected = newValue;\n\t\tlet direction = 1;\n\t\tlet\tpath1;\n\t\tlet path2;\n\t\tlet delay;\n\n\t\tif (!skipAnimation) {\n\t\t\t// do the animation here\n\n\t\t\tpath1 = Math.abs(firstSelected - lastSelected);\n\t\t\tpath2 = maxValue - path1;\n\n\t\t\tif (firstSelected < lastSelected) {\n\t\t\t\tif (path2 < path1) {\n\t\t\t\t\tfirstSelected += maxValue;\n\t\t\t\t\tdirection = -1;\n\t\t\t\t}\n\t\t\t} else if (path2 < path1) {\n\t\t\t\tlastSelected += maxValue;\n\t\t\t} else {\n\t\t\t\tdirection = -1;\n\t\t\t}\n\n\t\t\tdelay = firstSelected === lastSelected ? 0 : Math.ceil(ANIMATION_DURATION_MAX / Math.abs(firstSelected - lastSelected));\n\t\t\tthis._animationInProgress = true;\n\t\t\tthis._selectNextNumber(firstSelected, lastSelected, direction, maxValue, newValue, delay);\n\t\t} else {\n\t\t\tthis._setSelectedValue(newValue);\n\t\t}\n\t}\n\n\t/**\n\t * Does the animation step between old and new selected values.\n\t * @param firstSelected first/current value to move from\n\t * @param lastSelected last value to move to\n\t * @param direction direction of the animation\n\t * @param maxValue max clock value\n\t * @param newValue new value\n\t * @param delay delay of the single step\n\t */\n\t_selectNextNumber(firstSelected: number, lastSelected: number, direction: number, maxValue: number, newValue: number, delay: number) {\n\t\tconst current = firstSelected > maxValue ? firstSelected - maxValue : firstSelected;\n\n\t\tif (firstSelected === lastSelected) {\n\t\t\tthis._animationInProgress = false;\n\t\t}\n\t\tthis._setSelectedValue(current);\n\t\tif (firstSelected !== lastSelected) {\n\t\t\tfirstSelected += direction;\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis._selectNextNumber(firstSelected, lastSelected, direction, maxValue, newValue, delay);\n\t\t\t}, delay);\n\t\t} else {\n\t\t\t// the new value is set, fire event\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.fireEvent<TimePickerClockChangeEventDetail>(\"change\", {\n\t\t\t\t\t\"value\": newValue,\n\t\t\t\t\t\"stringValue\": this._getStringValue(newValue),\n\t\t\t\t\t\"finalChange\": true,\n\t\t\t\t});\n\t\t\t}, ANIMATION_DELAY_EVENT);\n\t\t}\n\t}\n\n\t/**\n\t * Mousewheel handler. Increases/decreases value of the clock.\n\t * @param increase whether to increase or decrease the value\n\t */\n\t_modifyValue(increase: boolean) {\n\t\tlet selectedValue = this.selectedValue;\n\t\tconst replacementValue = this.lastItemReplacement;\n\t\tconst minValue = this.itemMin;\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\t\tlet step = this.valueStep;\n\t\tlet newValue;\n\n\t\t// fix step in order to change value to the nearest possible if step is > 1\n\t\tif (selectedValue % step !== 0) {\n\t\t\tnewValue = increase ? Math.ceil(selectedValue / step) * step : Math.floor(selectedValue / step) * step;\n\t\t\tstep = Math.abs(selectedValue - newValue);\n\t\t}\n\n\t\tif (selectedValue === replacementValue) {\n\t\t\tselectedValue = maxValue;\n\t\t}\n\t\tif (increase) {\n\t\t\tselectedValue += step;\n\t\t\tif (selectedValue > maxValue) {\n\t\t\t\tselectedValue -= maxValue;\n\t\t\t}\n\t\t} else {\n\t\t\tselectedValue -= step;\n\t\t\tif (selectedValue < minValue) {\n\t\t\t\tselectedValue = maxValue;\n\t\t\t}\n\t\t}\n\n\t\tthis._setSelectedValue(selectedValue);\n\t}\n\n\t/**\n\t * Sets new selected value, fires change event and updates selected value object used for rendering purposes.\n\t * @param value\n\t */\n\t_setSelectedValue(value: number) {\n\t\tconst realValue: number = this._fixReplacementValue(value);\n\t\tthis.selectedValue = realValue;\n\t\tthis.fireEvent<TimePickerClockChangeEventDetail>(\"change\", {\n\t\t\t\"value\": realValue,\n\t\t\t\"stringValue\": this._getStringValue(realValue),\n\t\t\t\"finalChange\": false,\n\t\t});\n\t\tthis._updateSelectedValueObject(realValue);\n\t}\n\n\t/**\n\t * TouchStart/MouseDown event handler.\n\t * @param evt Event object\n\t */\n\t_onTouchStart(evt: Event) {\n\t\tthis._cancelTouchOut = false;\n\t\tif (this.disabled || this._mouseOrTouchDown) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst x = evt.type === \"touchstart\" ? (evt as TouchEvent).touches[0].pageX : (evt as MouseEvent).pageX;\n\t\tconst y = evt.type === \"touchstart\" ? (evt as TouchEvent).touches[0].pageY : (evt as MouseEvent).pageY;\n\n\t\tthis._movSelectedValue = this.selectedValue;\n\t\tthis._calculateDimensions();\n\t\tthis._calculatePosition(x, y);\n\t\tthis._mouseOrTouchDown = true;\n\t}\n\n\t/**\n\t * TouchMove/MouseMove event handler.\n\t * @param evt Event object\n\t */\n\t_onTouchMove(evt: Event) {\n\t\tlet\thoveredNumber;\n\t\tconst domRef = this.getDomRef();\n\n\t\tevt.preventDefault();\n\t\tif (this._mouseOrTouchDown) {\n\t\t\tconst x = evt.type === \"touchmove\" ? (evt as TouchEvent).touches[0].pageX : (evt as MouseEvent).pageX;\n\t\t\tconst y = evt.type === \"touchmove\" ? (evt as TouchEvent).touches[0].pageY : (evt as MouseEvent).pageY;\n\t\t\tthis._calculatePosition(x, y);\n\t\t\tif (!this.disabled && this._selectedValue !== -1 && this._selectedValue !== this._movSelectedValue) {\n\t\t\t\tthis._setSelectedValue(this._selectedValue);\n\t\t\t\tthis._movSelectedValue = 0 + this._selectedValue;\n\t\t\t}\n\t\t} else if (evt.type === \"mousemove\") {\n\t\t\tif (!this._dimensionParameters.radius) {\n\t\t\t\tthis._calculateDimensions();\n\t\t\t}\n\t\t\tthis._calculatePosition((evt as MouseEvent).pageX, (evt as MouseEvent).pageY);\n\t\t\tif (this.displayStep > 1 && this._hoveredValue !== -1) {\n\t\t\t\tthis._hoveredValue = Math.round(this._hoveredValue / this.displayStep) * this.displayStep;\n\t\t\t}\n\n\t\t\tif (!this.disabled && this._hoveredValue !== this._prevHoveredValue) {\n\t\t\t\thoveredNumber = (domRef as HTMLElement).querySelector(this._hoveredId(this._prevHoveredValue));\n\t\t\t\thoveredNumber && hoveredNumber.classList.remove(CLOCK_NUMBER_HOVER_CLASS);\n\t\t\t\tthis._prevHoveredValue = this._hoveredValue;\n\t\t\t\thoveredNumber = (domRef as HTMLElement).querySelector(this._hoveredId(this._prevHoveredValue));\n\t\t\t\thoveredNumber && hoveredNumber.classList.add(CLOCK_NUMBER_HOVER_CLASS);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * TouchEnd/MouseUp event handler.\n\t * @param evt Event object\n\t */\n\t_onTouchEnd(evt: Event) {\n\t\tif (!this._mouseOrTouchDown) {\n\t\t\treturn;\n\t\t}\n\t\tthis._mouseOrTouchDown = false;\n\t\tevt.preventDefault();\n\t\tif (this.disabled || this._selectedValue === -1) {\n\t\t\treturn;\n\t\t}\n\t\tif (!this._cancelTouchOut) {\n\t\t\tthis._changeValueAnimation(this._selectedValue);\n\t\t}\n\t}\n\n\t/**\n\t * Mouse Wheel event handler.\n\t * @param evt Event object\n\t */\n\t_onMouseWheel(evt: WheelEvent) {\n\t\tconst increase = evt.detail ? (evt.detail > 0) : (evt.deltaY > 0 || evt.deltaX > 0);\n\n\t\tevt.preventDefault();\n\t\tif (!this._mouseOrTouchDown) {\n\t\t\tthis._modifyValue(increase);\n\t\t}\n\t}\n\n\t/**\n\t * MouseOut event handler.\n\t */\n\t_onMouseOut() {\n\t\tconst hoveredNumber = (this.getDomRef() as HTMLElement).querySelector(this._hoveredId(this._hoveredValue));\n\n\t\thoveredNumber && hoveredNumber.classList.remove(CLOCK_NUMBER_HOVER_CLASS);\n\t\tthis._hoveredValue = -1;\n\t\tthis._prevHoveredValue = -1;\n\t}\n}\n\nTimePickerClock.define();\n\nexport default TimePickerClock;\nexport type { TimePickerClockChangeEventDetail };\n"]}
|