@ui5/webcomponents 0.0.0-974b11d82 → 0.0.0-97cba4b0b

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.
Files changed (227) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/dist/AvatarGroup.d.ts +2 -0
  3. package/dist/AvatarGroup.js +2 -0
  4. package/dist/AvatarGroup.js.map +1 -1
  5. package/dist/Breadcrumbs.d.ts +1 -0
  6. package/dist/Breadcrumbs.js +1 -0
  7. package/dist/Breadcrumbs.js.map +1 -1
  8. package/dist/Calendar.d.ts +8 -0
  9. package/dist/Calendar.js +41 -9
  10. package/dist/Calendar.js.map +1 -1
  11. package/dist/Carousel.d.ts +9 -10
  12. package/dist/Carousel.js +9 -10
  13. package/dist/Carousel.js.map +1 -1
  14. package/dist/ComboBox.d.ts +0 -1
  15. package/dist/ComboBox.js +1 -5
  16. package/dist/ComboBox.js.map +1 -1
  17. package/dist/ComboBoxGroupItem.d.ts +1 -1
  18. package/dist/DatePicker.d.ts +2 -0
  19. package/dist/DatePicker.js +14 -0
  20. package/dist/DatePicker.js.map +1 -1
  21. package/dist/DateRangePicker.d.ts +5 -0
  22. package/dist/DateRangePicker.js +7 -0
  23. package/dist/DateRangePicker.js.map +1 -1
  24. package/dist/DateTimePicker.d.ts +5 -0
  25. package/dist/DateTimePicker.js +7 -0
  26. package/dist/DateTimePicker.js.map +1 -1
  27. package/dist/Icon.js +3 -0
  28. package/dist/Icon.js.map +1 -1
  29. package/dist/Option.d.ts +5 -5
  30. package/dist/SegmentedButton.d.ts +1 -1
  31. package/dist/SegmentedButton.js +1 -1
  32. package/dist/Select.d.ts +7 -6
  33. package/dist/Select.js +1 -0
  34. package/dist/Select.js.map +1 -1
  35. package/dist/Switch.js +7 -4
  36. package/dist/Switch.js.map +1 -1
  37. package/dist/Tab.d.ts +1 -0
  38. package/dist/Tab.js +1 -0
  39. package/dist/Tab.js.map +1 -1
  40. package/dist/TabContainer.d.ts +1 -0
  41. package/dist/TabContainer.js +1 -0
  42. package/dist/TabContainer.js.map +1 -1
  43. package/dist/TabSeparator.d.ts +1 -0
  44. package/dist/TabSeparator.js +1 -0
  45. package/dist/TabSeparator.js.map +1 -1
  46. package/dist/TextArea.d.ts +2 -2
  47. package/dist/TimePickerBase.js +26 -4
  48. package/dist/TimePickerBase.js.map +1 -1
  49. package/dist/TreeItemBase.d.ts +2 -0
  50. package/dist/TreeItemBase.js +2 -0
  51. package/dist/TreeItemBase.js.map +1 -1
  52. package/dist/api.json +1 -1
  53. package/dist/assets/{SAP-icons.e4a5651a.js → SAP-icons.216218d4.js} +1 -1
  54. package/dist/assets/messagebundle_de.8a4032cc.js +1 -0
  55. package/dist/css/themes/ComboBox.css +1 -1
  56. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  57. package/dist/css/themes/Input.css +1 -1
  58. package/dist/css/themes/MultiComboBox.css +1 -1
  59. package/dist/css/themes/Select.css +1 -1
  60. package/dist/css/themes/TextArea.css +1 -1
  61. package/dist/custom-elements.json +1 -1
  62. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  63. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
  64. package/dist/generated/themes/ComboBox.css.js +1 -1
  65. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  66. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  67. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  68. package/dist/generated/themes/Input.css.js +1 -1
  69. package/dist/generated/themes/Input.css.js.map +1 -1
  70. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  71. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  72. package/dist/generated/themes/Select.css.js +1 -1
  73. package/dist/generated/themes/Select.css.js.map +1 -1
  74. package/dist/generated/themes/TextArea.css.js +1 -1
  75. package/dist/generated/themes/TextArea.css.js.map +1 -1
  76. package/dist/i18n/messagebundle_de.properties +2 -2
  77. package/dist/types/AvatarColorScheme.d.ts +1 -1
  78. package/dist/types/AvatarColorScheme.js +1 -1
  79. package/dist/types/AvatarGroupType.d.ts +1 -1
  80. package/dist/types/AvatarGroupType.js +1 -1
  81. package/dist/types/AvatarShape.d.ts +1 -1
  82. package/dist/types/AvatarShape.js +1 -1
  83. package/dist/types/AvatarSize.d.ts +1 -1
  84. package/dist/types/AvatarSize.js +1 -1
  85. package/dist/types/BreadcrumbsDesign.d.ts +1 -1
  86. package/dist/types/BreadcrumbsDesign.js +1 -1
  87. package/dist/types/BreadcrumbsSeparatorStyle.d.ts +1 -1
  88. package/dist/types/BreadcrumbsSeparatorStyle.js +1 -1
  89. package/dist/types/BusyIndicatorSize.d.ts +1 -1
  90. package/dist/types/BusyIndicatorSize.js +1 -1
  91. package/dist/types/ButtonDesign.d.ts +1 -1
  92. package/dist/types/ButtonDesign.js +1 -1
  93. package/dist/types/CalendarPickersMode.d.ts +30 -0
  94. package/dist/types/CalendarPickersMode.js +32 -0
  95. package/dist/types/CalendarPickersMode.js.map +1 -0
  96. package/dist/types/CalendarSelectionMode.d.ts +1 -1
  97. package/dist/types/CalendarSelectionMode.js +1 -1
  98. package/dist/types/CarouselArrowsPlacement.d.ts +1 -1
  99. package/dist/types/CarouselArrowsPlacement.js +1 -1
  100. package/dist/types/CarouselPageIndicatorStyle.d.ts +1 -1
  101. package/dist/types/CarouselPageIndicatorStyle.js +1 -1
  102. package/dist/types/ComboBoxFilter.d.ts +1 -1
  103. package/dist/types/ComboBoxFilter.js +1 -1
  104. package/dist/types/HasPopup.d.ts +1 -1
  105. package/dist/types/HasPopup.js +1 -1
  106. package/dist/types/IconDesign.d.ts +1 -1
  107. package/dist/types/IconDesign.js +1 -1
  108. package/dist/types/InputType.d.ts +1 -1
  109. package/dist/types/InputType.js +1 -1
  110. package/dist/types/LinkDesign.d.ts +1 -1
  111. package/dist/types/LinkDesign.js +1 -1
  112. package/dist/types/ListGrowingMode.d.ts +1 -1
  113. package/dist/types/ListGrowingMode.js +1 -1
  114. package/dist/types/ListItemType.d.ts +1 -1
  115. package/dist/types/ListItemType.js +1 -1
  116. package/dist/types/ListMode.d.ts +1 -1
  117. package/dist/types/ListMode.js +1 -1
  118. package/dist/types/ListSeparators.d.ts +1 -1
  119. package/dist/types/ListSeparators.js +1 -1
  120. package/dist/types/MessageStripDesign.d.ts +1 -1
  121. package/dist/types/MessageStripDesign.js +1 -1
  122. package/dist/types/PanelAccessibleRole.d.ts +1 -1
  123. package/dist/types/PanelAccessibleRole.js +1 -1
  124. package/dist/types/PopoverHorizontalAlign.d.ts +1 -1
  125. package/dist/types/PopoverHorizontalAlign.js +1 -1
  126. package/dist/types/PopoverPlacementType.d.ts +1 -1
  127. package/dist/types/PopoverPlacementType.js +1 -1
  128. package/dist/types/PopoverVerticalAlign.d.ts +1 -1
  129. package/dist/types/PopoverVerticalAlign.js +1 -1
  130. package/dist/types/PopupAccessibleRole.d.ts +1 -1
  131. package/dist/types/PopupAccessibleRole.js +1 -1
  132. package/dist/types/Priority.d.ts +1 -1
  133. package/dist/types/Priority.js +1 -1
  134. package/dist/types/SemanticColor.d.ts +1 -1
  135. package/dist/types/SemanticColor.js +1 -1
  136. package/dist/types/SwitchDesign.d.ts +1 -1
  137. package/dist/types/SwitchDesign.js +1 -1
  138. package/dist/types/TabContainerBackgroundDesign.d.ts +1 -1
  139. package/dist/types/TabContainerBackgroundDesign.js +1 -1
  140. package/dist/types/TabContainerTabsPlacement.d.ts +2 -2
  141. package/dist/types/TabContainerTabsPlacement.js +2 -2
  142. package/dist/types/TabLayout.d.ts +1 -1
  143. package/dist/types/TabLayout.js +1 -1
  144. package/dist/types/TableColumnPopinDisplay.d.ts +1 -1
  145. package/dist/types/TableColumnPopinDisplay.js +1 -1
  146. package/dist/types/TableGrowingMode.d.ts +1 -1
  147. package/dist/types/TableGrowingMode.js +1 -1
  148. package/dist/types/TableMode.d.ts +1 -1
  149. package/dist/types/TableMode.js +1 -1
  150. package/dist/types/TableRowType.d.ts +1 -1
  151. package/dist/types/TableRowType.js +1 -1
  152. package/dist/types/TabsOverflowMode.d.ts +1 -1
  153. package/dist/types/TabsOverflowMode.js +1 -1
  154. package/dist/types/TitleLevel.d.ts +1 -1
  155. package/dist/types/TitleLevel.js +1 -1
  156. package/dist/types/ToastPlacement.d.ts +1 -1
  157. package/dist/types/ToastPlacement.js +1 -1
  158. package/dist/types/WrappingType.d.ts +1 -1
  159. package/dist/types/WrappingType.js +1 -1
  160. package/package.json +6 -6
  161. package/src/AvatarGroup.ts +2 -0
  162. package/src/Breadcrumbs.ts +1 -0
  163. package/src/Calendar.ts +46 -9
  164. package/src/Carousel.ts +9 -10
  165. package/src/ComboBox.ts +1 -8
  166. package/src/ComboBoxGroupItem.ts +1 -1
  167. package/src/DatePicker.ts +19 -0
  168. package/src/DatePickerPopover.hbs +1 -0
  169. package/src/DateRangePicker.ts +8 -0
  170. package/src/DateTimePicker.ts +8 -0
  171. package/src/Icon.ts +2 -0
  172. package/src/Option.ts +5 -5
  173. package/src/SegmentedButton.ts +1 -1
  174. package/src/Select.ts +7 -6
  175. package/src/Switch.ts +8 -4
  176. package/src/Tab.ts +1 -0
  177. package/src/TabContainer.ts +1 -0
  178. package/src/TabSeparator.ts +1 -0
  179. package/src/TextArea.ts +2 -2
  180. package/src/TimePickerBase.ts +26 -4
  181. package/src/TreeItemBase.ts +2 -0
  182. package/src/i18n/messagebundle_de.properties +2 -2
  183. package/src/themes/DateTimePickerPopover.css +0 -1
  184. package/src/themes/Input.css +0 -3
  185. package/src/themes/TextArea.css +0 -2
  186. package/src/types/AvatarColorScheme.ts +1 -1
  187. package/src/types/AvatarGroupType.ts +1 -1
  188. package/src/types/AvatarShape.ts +1 -1
  189. package/src/types/AvatarSize.ts +1 -1
  190. package/src/types/BreadcrumbsDesign.ts +1 -1
  191. package/src/types/BreadcrumbsSeparatorStyle.ts +1 -1
  192. package/src/types/BusyIndicatorSize.ts +1 -1
  193. package/src/types/ButtonDesign.ts +1 -1
  194. package/src/types/CalendarPickersMode.ts +34 -0
  195. package/src/types/CalendarSelectionMode.ts +1 -1
  196. package/src/types/CarouselArrowsPlacement.ts +1 -1
  197. package/src/types/CarouselPageIndicatorStyle.ts +1 -1
  198. package/src/types/ComboBoxFilter.ts +1 -1
  199. package/src/types/HasPopup.ts +1 -1
  200. package/src/types/IconDesign.ts +1 -1
  201. package/src/types/InputType.ts +1 -1
  202. package/src/types/LinkDesign.ts +1 -1
  203. package/src/types/ListGrowingMode.ts +1 -1
  204. package/src/types/ListItemType.ts +1 -1
  205. package/src/types/ListMode.ts +1 -1
  206. package/src/types/ListSeparators.ts +1 -1
  207. package/src/types/MessageStripDesign.ts +1 -1
  208. package/src/types/PanelAccessibleRole.ts +1 -1
  209. package/src/types/PopoverHorizontalAlign.ts +1 -1
  210. package/src/types/PopoverPlacementType.ts +1 -1
  211. package/src/types/PopoverVerticalAlign.ts +1 -1
  212. package/src/types/PopupAccessibleRole.ts +1 -1
  213. package/src/types/Priority.ts +1 -1
  214. package/src/types/SemanticColor.ts +1 -1
  215. package/src/types/SwitchDesign.ts +1 -1
  216. package/src/types/TabContainerBackgroundDesign.ts +1 -1
  217. package/src/types/TabContainerTabsPlacement.ts +2 -2
  218. package/src/types/TabLayout.ts +1 -1
  219. package/src/types/TableColumnPopinDisplay.ts +1 -1
  220. package/src/types/TableGrowingMode.ts +1 -1
  221. package/src/types/TableMode.ts +1 -1
  222. package/src/types/TableRowType.ts +1 -1
  223. package/src/types/TabsOverflowMode.ts +1 -1
  224. package/src/types/TitleLevel.ts +1 -1
  225. package/src/types/ToastPlacement.ts +1 -1
  226. package/src/types/WrappingType.ts +1 -1
  227. package/dist/assets/messagebundle_de.58869681.js +0 -1
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Tab layout of TabContainer.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Tab layout of TabContainer.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Table cell popin display.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Table cell popin display.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Different table growing modes.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Different table growing modes.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Different table modes.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Different table modes.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Different table row types.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Different table row types.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Tabs overflow mode in TabContainer.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Tabs overflow mode in TabContainer.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Different types of Title level.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Different types of Title level.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Toast placement.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Toast placement.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Different types of wrapping.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Different types of wrapping.
3
3
  *
4
- * @class
4
+ * @readonly
5
5
  * @enum {string}
6
6
  * @public
7
7
  * @author SAP SE
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ui5/webcomponents",
3
- "version": "0.0.0-974b11d82",
3
+ "version": "0.0.0-97cba4b0b",
4
4
  "description": "UI5 Web Components: webcomponents.main",
5
5
  "ui5": {
6
6
  "webComponentsPackage": true
@@ -42,13 +42,13 @@
42
42
  "directory": "packages/main"
43
43
  },
44
44
  "dependencies": {
45
- "@ui5/webcomponents-base": "0.0.0-974b11d82",
46
- "@ui5/webcomponents-icons": "0.0.0-974b11d82",
47
- "@ui5/webcomponents-localization": "0.0.0-974b11d82",
48
- "@ui5/webcomponents-theming": "0.0.0-974b11d82"
45
+ "@ui5/webcomponents-base": "0.0.0-97cba4b0b",
46
+ "@ui5/webcomponents-icons": "0.0.0-97cba4b0b",
47
+ "@ui5/webcomponents-localization": "0.0.0-97cba4b0b",
48
+ "@ui5/webcomponents-theming": "0.0.0-97cba4b0b"
49
49
  },
50
50
  "devDependencies": {
51
- "@ui5/webcomponents-tools": "0.0.0-974b11d82",
51
+ "@ui5/webcomponents-tools": "0.0.0-97cba4b0b",
52
52
  "chromedriver": "109.0.0"
53
53
  }
54
54
  }
@@ -267,6 +267,7 @@ class AvatarGroup extends UI5Element {
267
267
  * @readonly
268
268
  * @type {HTMLElement[]}
269
269
  * @defaultValue []
270
+ * @name sap.ui.webc.main.AvatarGroup.prototype.hiddenItems
270
271
  * @public
271
272
  */
272
273
  get hiddenItems() {
@@ -277,6 +278,7 @@ class AvatarGroup extends UI5Element {
277
278
  * Returns an array containing the <code>AvatarColorScheme</code> values that correspond to the avatars in the component.
278
279
  * @readonly
279
280
  * @type {sap.ui.webc.main.types.AvatarColorScheme[]}
281
+ * @name sap.ui.webc.main.AvatarGroup.prototype.colorScheme
280
282
  * @defaultValue []
281
283
  * @public
282
284
  */
@@ -36,6 +36,7 @@ import type { SelectionChangeEventDetail } from "./List.js";
36
36
  import StandardListItem from "./StandardListItem.js";
37
37
  import Icon from "./Icon.js";
38
38
  import Button from "./Button.js";
39
+ import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
39
40
 
40
41
  // Templates
41
42
  import BreadcrumbsTemplate from "./generated/templates/BreadcrumbsTemplate.lit.js";
package/src/Calendar.ts CHANGED
@@ -24,6 +24,7 @@ import type { MonthPickerChangeEventDetail } from "./MonthPicker.js";
24
24
  import YearPicker from "./YearPicker.js";
25
25
  import type { YearPickerChangeEventDetail } from "./YearPicker.js";
26
26
  import CalendarSelectionMode from "./types/CalendarSelectionMode.js";
27
+ import CalendarPickersMode from "./types/CalendarPickersMode.js";
27
28
 
28
29
  // Default calendar for bundling
29
30
  import "@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js";
@@ -253,6 +254,9 @@ class Calendar extends CalendarPart {
253
254
  @property()
254
255
  _headerYearButtonTextSecType!: string;
255
256
 
257
+ @property({ type: CalendarPickersMode, defaultValue: CalendarPickersMode.DAY_MONTH_YEAR, noAttribute: true })
258
+ _pickersMode!: CalendarPickersMode;
259
+
256
260
  /**
257
261
  * Defines the selected date or dates (depending on the <code>selectionMode</code> property)
258
262
  * for this calendar as instances of <code>ui5-date</code>.
@@ -298,6 +302,23 @@ class Calendar extends CalendarPart {
298
302
  });
299
303
  }
300
304
 
305
+ /**
306
+ * Makes sure that _currentPicker is always set to a value, allowed by _pickersMode
307
+ */
308
+ _normalizeCurrentPicker() {
309
+ if (this._currentPicker === "day" && this._pickersMode !== CalendarPickersMode.DAY_MONTH_YEAR) {
310
+ this._currentPicker = "month";
311
+ }
312
+
313
+ if (this._currentPicker === "month" && this._pickersMode === CalendarPickersMode.YEAR) {
314
+ this._currentPicker = "year";
315
+ }
316
+ }
317
+
318
+ onBeforeRendering() {
319
+ this._normalizeCurrentPicker();
320
+ }
321
+
301
322
  async onAfterRendering() {
302
323
  await renderFinished(); // Await for the current picker to render and then ask if it has previous/next pages
303
324
  this._previousButtonDisabled = !this._currentPickerDOM._hasPreviousPage();
@@ -416,30 +437,46 @@ class Calendar extends CalendarPart {
416
437
  return this._currentPicker !== "year";
417
438
  }
418
439
 
419
- onSelectedDatesChange(e: CustomEvent<DayPickerChangeEventDetail>) {
420
- const timestamp = e.detail.timestamp;
421
- const selectedDates = e.detail.dates;
422
- const datesValues = selectedDates.map(ts => {
423
- const calendarDate = CalendarDate.fromTimestamp(ts * 1000, this._primaryCalendarType);
440
+ _fireEventAndUpdateSelectedDates(selectedDates: Array<number>) {
441
+ const datesValues = selectedDates.map(timestamp => {
442
+ const calendarDate = CalendarDate.fromTimestamp(timestamp * 1000, this._primaryCalendarType);
424
443
  return this.getFormat().format(calendarDate.toUTCJSDate(), true);
425
444
  });
426
445
 
427
- this.timestamp = timestamp;
428
- const defaultPrevented = !this.fireEvent<CalendarChangeEventDetail>("selected-dates-change", { timestamp, dates: [...selectedDates], values: datesValues }, true);
446
+ const defaultPrevented = !this.fireEvent<CalendarChangeEventDetail>("selected-dates-change", { timestamp: this.timestamp, dates: [...selectedDates], values: datesValues }, true);
429
447
  if (!defaultPrevented) {
430
448
  this._setSelectedDates(selectedDates);
431
449
  }
432
450
  }
433
451
 
452
+ onSelectedDatesChange(e: CustomEvent<DayPickerChangeEventDetail>) {
453
+ this.timestamp = e.detail.timestamp;
454
+ this._fireEventAndUpdateSelectedDates(e.detail.dates);
455
+ }
456
+
434
457
  onSelectedMonthChange(e: CustomEvent<MonthPickerChangeEventDetail>) {
435
458
  this.timestamp = e.detail.timestamp;
436
- this._currentPicker = "day";
459
+
460
+ if (this._pickersMode === CalendarPickersMode.DAY_MONTH_YEAR) {
461
+ this._currentPicker = "day";
462
+ } else {
463
+ this._fireEventAndUpdateSelectedDates([this.timestamp]);
464
+ }
465
+
437
466
  this._currentPickerDOM._autoFocus = true;
438
467
  }
439
468
 
440
469
  onSelectedYearChange(e: CustomEvent<YearPickerChangeEventDetail>) {
441
470
  this.timestamp = e.detail.timestamp;
442
- this._currentPicker = "day";
471
+
472
+ if (this._pickersMode === CalendarPickersMode.DAY_MONTH_YEAR) {
473
+ this._currentPicker = "day";
474
+ } else if (this._pickersMode === CalendarPickersMode.MONTH_YEAR) {
475
+ this._currentPicker = "month";
476
+ } else {
477
+ this._fireEventAndUpdateSelectedDates([this.timestamp]);
478
+ }
479
+
443
480
  this._currentPickerDOM._autoFocus = true;
444
481
  }
445
482
 
package/src/Carousel.ts CHANGED
@@ -79,25 +79,24 @@ type CarouselNavigateEventDetail = {
79
79
  * When the <code>ui5-carousel</code> is focused the user can navigate between the items
80
80
  * with the following keyboard shortcuts:
81
81
  * <br>
82
- *
83
- * <h3>CSS Shadow Parts</h3>
84
- *
85
- * <ui5-link target="_blank" href="https://developer.mozilla.org/en-US/docs/Web/CSS/::part">CSS Shadow Parts</ui5-link> allow developers to style elements inside the Shadow DOM.
86
- * <br>
87
- * The <code>ui5-carousel</code> exposes the following CSS Shadow Parts:
88
82
  * <ul>
89
- * <li>content - Used to style the content of the component</li>
83
+ * <li>[UP/DOWN] - Navigates to previous and next item</li>
84
+ * <li>[LEFT/RIGHT] - Navigates to previous and next item</li>
90
85
  * </ul>
91
86
  *
92
- * * <h4>Fast Navigation</h4>
87
+ * <h3>Fast Navigation</h3>
93
88
  * This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.
94
89
  * In order to use this functionality, you need to import the following module:
95
90
  * <code>import "@ui5/webcomponents-base/dist/features/F6Navigation.js"</code>
96
91
  * <br><br>
97
92
  *
93
+ * <h3>CSS Shadow Parts</h3>
94
+ *
95
+ * <ui5-link target="_blank" href="https://developer.mozilla.org/en-US/docs/Web/CSS/::part">CSS Shadow Parts</ui5-link> allow developers to style elements inside the Shadow DOM.
96
+ * <br>
97
+ * The <code>ui5-carousel</code> exposes the following CSS Shadow Parts:
98
98
  * <ul>
99
- * <li>[UP/DOWN] - Navigates to previous and next item</li>
100
- * <li>[LEFT/RIGHT] - Navigates to previous and next item</li>
99
+ * <li>content - Used to style the content of the component</li>
101
100
  * </ul>
102
101
  *
103
102
  * <h3>ES6 Module Import</h3>
package/src/ComboBox.ts CHANGED
@@ -420,7 +420,6 @@ class ComboBox extends UI5Element {
420
420
 
421
421
  _initialRendering: boolean;
422
422
  _itemFocused: boolean;
423
- _selectionChanged: boolean;
424
423
  // used only for Safari fix (check onAfterRendering)
425
424
  _autocomplete: boolean;
426
425
  _isKeyNavigation: boolean;
@@ -439,7 +438,6 @@ class ComboBox extends UI5Element {
439
438
  this._filteredItems = [];
440
439
  this._initialRendering = true;
441
440
  this._itemFocused = false;
442
- this._selectionChanged = false;
443
441
  this._autocomplete = false;
444
442
  this._isKeyNavigation = false;
445
443
  this._lastValue = "";
@@ -630,12 +628,10 @@ class ComboBox extends UI5Element {
630
628
  const item = this._getFirstMatchingItem(value);
631
629
  item && this._applyAtomicValueAndSelection(item, value, true);
632
630
 
633
- if (value !== "" && !this._selectionChanged && (item && !item.selected && !item.isGroupItem)) {
631
+ if (value !== "" && (item && !item.selected && !item.isGroupItem)) {
634
632
  this.fireEvent<ComboBoxSelectionChangeEventDetail>("selection-change", {
635
633
  item,
636
634
  });
637
-
638
- this._selectionChanged = false;
639
635
  }
640
636
  }
641
637
 
@@ -744,7 +740,6 @@ class ComboBox extends UI5Element {
744
740
  }
745
741
 
746
742
  this._isValueStateFocused = false;
747
- this._selectionChanged = true;
748
743
 
749
744
  this._announceSelectedItem(indexOfItem);
750
745
 
@@ -1038,8 +1033,6 @@ class ComboBox extends UI5Element {
1038
1033
  this.fireEvent<ComboBoxSelectionChangeEventDetail>("selection-change", {
1039
1034
  item: listItem.mappedItem,
1040
1035
  });
1041
-
1042
- this._selectionChanged = true;
1043
1036
  }
1044
1037
 
1045
1038
  this._filteredItems.map(item => {
@@ -24,7 +24,7 @@ class ComboBoxGroupItem extends UI5Element implements IComboBoxItem {
24
24
  * Defines the text of the component.
25
25
  *
26
26
  * @type {string}
27
- * @name sap.ui.webc.main.ComboBoxItem.prototype.text
27
+ * @name sap.ui.webc.main.ComboBoxGroupItem.prototype.text
28
28
  * @defaultvalue ""
29
29
  * @public
30
30
  */
package/src/DatePicker.ts CHANGED
@@ -4,6 +4,7 @@ import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
4
4
  import event from "@ui5/webcomponents-base/dist/decorators/event.js";
5
5
  import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
6
6
  import { getFeature } from "@ui5/webcomponents-base/dist/FeaturesRegistry.js";
7
+ import DateFormat from "@ui5/webcomponents-localization/dist/DateFormat.js";
7
8
  import CalendarDate from "@ui5/webcomponents-localization/dist/dates/CalendarDate.js";
8
9
  import modifyDateBy from "@ui5/webcomponents-localization/dist/dates/modifyDateBy.js";
9
10
  import getRoundedTimestamp from "@ui5/webcomponents-localization/dist/dates/getRoundedTimestamp.js";
@@ -26,6 +27,7 @@ import {
26
27
  isF6Previous,
27
28
  } from "@ui5/webcomponents-base/dist/Keys.js";
28
29
  import { isPhone, isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
30
+ import CalendarPickersMode from "./types/CalendarPickersMode.js";
29
31
  import type FormSupportT from "./features/InputElementsFormSupport.js";
30
32
  import type { IFormElement } from "./features/InputElementsFormSupport.js";
31
33
  import "@ui5/webcomponents-icons/dist/appointment-2.js";
@@ -738,6 +740,23 @@ class DatePicker extends DateComponentBase implements IFormElement {
738
740
  return !this.disabled && !this.readonly;
739
741
  }
740
742
 
743
+ get _calendarPickersMode() {
744
+ const format = this.getFormat() as DateFormat & { aFormatArray: Array<{type: string}> };
745
+ const patternSymbolTypes = format.aFormatArray.map(patternSymbolSettings => {
746
+ return patternSymbolSettings.type.toLowerCase();
747
+ });
748
+
749
+ if (patternSymbolTypes.includes("day")) {
750
+ return CalendarPickersMode.DAY_MONTH_YEAR;
751
+ }
752
+
753
+ if (patternSymbolTypes.includes("month") || patternSymbolTypes.includes("monthstandalone")) {
754
+ return CalendarPickersMode.MONTH_YEAR;
755
+ }
756
+
757
+ return CalendarPickersMode.YEAR;
758
+ }
759
+
741
760
  /**
742
761
  * The user selected a new date in the calendar
743
762
  * @param event
@@ -49,6 +49,7 @@
49
49
  @ui5-show-year-press="{{onHeaderShowYearPress}}"
50
50
  ?hide-week-numbers="{{hideWeekNumbers}}"
51
51
  ._currentPicker="{{_calendarCurrentPicker}}"
52
+ ._pickersMode="{{_calendarPickersMode}}"
52
53
  >
53
54
  {{#each _calendarSelectedDates}}
54
55
  <ui5-date value="{{this}}"></ui5-date>
@@ -10,6 +10,7 @@ import { DATERANGE_DESCRIPTION } from "./generated/i18n/i18n-defaults.js";
10
10
  import DateRangePickerCss from "./generated/themes/DateRangePicker.css.js";
11
11
  import DatePicker from "./DatePicker.js";
12
12
  import type { DatePickerChangeEventDetail } from "./DatePicker.js";
13
+ import CalendarPickersMode from "./types/CalendarPickersMode.js";
13
14
 
14
15
  /**
15
16
  * @class
@@ -355,6 +356,13 @@ class DateRangePicker extends DatePicker {
355
356
 
356
357
  return "";
357
358
  }
359
+
360
+ /**
361
+ * @override
362
+ */
363
+ get _calendarPickersMode() {
364
+ return CalendarPickersMode.DAY_MONTH_YEAR;
365
+ }
358
366
  }
359
367
 
360
368
  DateRangePicker.define();
@@ -32,6 +32,7 @@ import DateTimePickerPopoverTemplate from "./generated/templates/DateTimePickerP
32
32
  // Styles
33
33
  import DateTimePickerCss from "./generated/themes/DateTimePicker.css.js";
34
34
  import DateTimePickerPopoverCss from "./generated/themes/DateTimePickerPopover.css.js";
35
+ import CalendarPickersMode from "./types/CalendarPickersMode.js";
35
36
 
36
37
  const PHONE_MODE_BREAKPOINT = 640; // px
37
38
 
@@ -416,6 +417,13 @@ class DateTimePicker extends DatePicker {
416
417
 
417
418
  return selectedDate;
418
419
  }
420
+
421
+ /**
422
+ * @override
423
+ */
424
+ get _calendarPickersMode() {
425
+ return CalendarPickersMode.DAY_MONTH_YEAR;
426
+ }
419
427
  }
420
428
 
421
429
  DateTimePicker.define();
package/src/Icon.ts CHANGED
@@ -408,6 +408,8 @@ class Icon extends UI5Element {
408
408
  } else if (this.accData) {
409
409
  const i18nBundle = await getI18nBundle(this.packageName);
410
410
  this.effectiveAccessibleName = i18nBundle.getText(this.accData) || undefined;
411
+ } else {
412
+ this.effectiveAccessibleName = undefined;
411
413
  }
412
414
  }
413
415
 
package/src/Option.ts CHANGED
@@ -24,7 +24,7 @@ class Option extends UI5Element implements IOption {
24
24
  * Defines the selected state of the component.
25
25
  * @type {boolean}
26
26
  * @defaultvalue false
27
- * @name sap.ui.webc.main.Option.selected
27
+ * @name sap.ui.webc.main.Option.prototype.selected
28
28
  * @public
29
29
  */
30
30
  @property({ type: Boolean })
@@ -36,7 +36,7 @@ class Option extends UI5Element implements IOption {
36
36
  * <b>Note:</b> A disabled component is hidden.
37
37
  * @type {boolean}
38
38
  * @defaultvalue false
39
- * @name sap.ui.webc.main.Option.disabled
39
+ * @name sap.ui.webc.main.Option.prototype.disabled
40
40
  * @public
41
41
  * @since 1.0.0-rc.12
42
42
  */
@@ -61,7 +61,7 @@ class Option extends UI5Element implements IOption {
61
61
  * <ui5-link target="_blank" href="https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html" class="api-table-content-cell-link">Icon Explorer</ui5-link>.
62
62
  *
63
63
  * @type {string}
64
- * @name sap.ui.webc.main.Option.icon
64
+ * @name sap.ui.webc.main.Option.prototype.icon
65
65
  * @public
66
66
  */
67
67
  @property({ defaultValue: null })
@@ -72,7 +72,7 @@ class Option extends UI5Element implements IOption {
72
72
  * For more information on HTML Form support, see the <code>name</code> property of <code>ui5-select</code>.
73
73
  *
74
74
  * @type {string}
75
- * @name sap.ui.webc.main.Option.value
75
+ * @name sap.ui.webc.main.Option.prototype.value
76
76
  * @public
77
77
  */
78
78
  @property()
@@ -81,7 +81,7 @@ class Option extends UI5Element implements IOption {
81
81
  /**
82
82
  * Defines the additional text displayed at the end of the option element.
83
83
  * @type {string}
84
- * @name sap.ui.webc.main.Option.additionalText
84
+ * @name sap.ui.webc.main.Option.prototype.additionalText
85
85
  * @public
86
86
  * @since 1.3.0
87
87
  */
@@ -288,7 +288,7 @@ class SegmentedButton extends UI5Element {
288
288
  *
289
289
  * @readonly
290
290
  * @type {sap.ui.webc.main.ISegmentedButtonItem}
291
- * @name sap.ui.webc.main.SegmentedButtonItem.prototype.selectedItem
291
+ * @name sap.ui.webc.main.SegmentedButton.prototype.selectedItem
292
292
  * @public
293
293
  */
294
294
  get selectedItem() {
package/src/Select.ts CHANGED
@@ -176,7 +176,7 @@ class Select extends UI5Element implements IFormElement {
176
176
  *
177
177
  * @type {boolean}
178
178
  * @defaultvalue false
179
- * @name sap.ui.webc.main.Select.disabled
179
+ * @name sap.ui.webc.main.Select.prototype.disabled
180
180
  * @public
181
181
  */
182
182
  @property({ type: Boolean })
@@ -197,7 +197,7 @@ class Select extends UI5Element implements IFormElement {
197
197
  *
198
198
  * @type {string}
199
199
  * @defaultvalue ""
200
- * @name sap.ui.webc.main.Select.name
200
+ * @name sap.ui.webc.main.Select.prototype.name
201
201
  * @public
202
202
  */
203
203
  @property()
@@ -217,7 +217,7 @@ class Select extends UI5Element implements IFormElement {
217
217
  *
218
218
  * @type {sap.ui.webc.base.types.ValueState}
219
219
  * @defaultvalue "None"
220
- * @name sap.ui.webc.main.Select.valueState
220
+ * @name sap.ui.webc.main.Select.prototype.valueState
221
221
  * @public
222
222
  */
223
223
  @property({ type: ValueState, defaultValue: ValueState.None })
@@ -229,7 +229,7 @@ class Select extends UI5Element implements IFormElement {
229
229
  * @since 1.0.0-rc.9
230
230
  * @type {boolean}
231
231
  * @defaultvalue false
232
- * @name sap.ui.webc.main.Select.required
232
+ * @name sap.ui.webc.main.Select.prototype.required
233
233
  * @public
234
234
  */
235
235
  @property({ type: Boolean })
@@ -242,7 +242,7 @@ class Select extends UI5Element implements IFormElement {
242
242
  * @since 1.0.0-rc.9
243
243
  * @public
244
244
  * @defaultvalue ""
245
- * @name sap.ui.webc.main.Select.accessibleName
245
+ * @name sap.ui.webc.main.Select.prototype.accessibleName
246
246
  * @since 1.0.0-rc.15
247
247
  */
248
248
  @property()
@@ -253,7 +253,7 @@ class Select extends UI5Element implements IFormElement {
253
253
  *
254
254
  * @type {string}
255
255
  * @defaultvalue ""
256
- * @name sap.ui.webc.main.Select.accessibleNameRef
256
+ * @name sap.ui.webc.main.Select.prototype.accessibleNameRef
257
257
  * @public
258
258
  * @since 1.0.0-rc.15
259
259
  */
@@ -400,6 +400,7 @@ class Select extends UI5Element implements IFormElement {
400
400
  * Currently selected <code>ui5-option</code> element.
401
401
  * @readonly
402
402
  * @type {sap.ui.webc.main.ISelectOption}
403
+ * @name sap.ui.webc.main.Select.prototype.selectedOption
403
404
  * @public
404
405
  */
405
406
  get selectedOption() {