@openui5/sap.ui.integration 1.123.1 → 1.124.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.
Files changed (200) hide show
  1. package/package.json +7 -7
  2. package/src/sap/ui/integration/.library +1 -1
  3. package/src/sap/ui/integration/ActionDefinition.js +1 -1
  4. package/src/sap/ui/integration/Designtime.js +1 -1
  5. package/src/sap/ui/integration/Extension.js +12 -1
  6. package/src/sap/ui/integration/Host.js +1 -1
  7. package/src/sap/ui/integration/cards/AdaptiveContent.js +3 -6
  8. package/src/sap/ui/integration/cards/AnalyticalContent.js +1 -1
  9. package/src/sap/ui/integration/cards/AnalyticsCloudContent.js +1 -1
  10. package/src/sap/ui/integration/cards/BaseContent.js +3 -2
  11. package/src/sap/ui/integration/cards/BaseListContent.js +1 -1
  12. package/src/sap/ui/integration/cards/CalendarContent.js +1 -1
  13. package/src/sap/ui/integration/cards/ComponentContent.js +1 -1
  14. package/src/sap/ui/integration/cards/Footer.js +1 -1
  15. package/src/sap/ui/integration/cards/Header.js +1 -1
  16. package/src/sap/ui/integration/cards/ListContent.js +1 -1
  17. package/src/sap/ui/integration/cards/NumericHeader.js +10 -3
  18. package/src/sap/ui/integration/cards/ObjectContent.js +1 -1
  19. package/src/sap/ui/integration/cards/TableContent.js +1 -1
  20. package/src/sap/ui/integration/cards/TimelineContent.js +1 -1
  21. package/src/sap/ui/integration/cards/WebPageContent.js +1 -1
  22. package/src/sap/ui/integration/cards/actions/CardActions.js +1 -1
  23. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputChoiceSet.js +1 -1
  24. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputDate.js +1 -1
  25. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputNumber.js +1 -1
  26. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputText.js +1 -1
  27. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputToggle.js +1 -1
  28. package/src/sap/ui/integration/cards/filters/BaseFilter.js +1 -1
  29. package/src/sap/ui/integration/cards/filters/ComboBoxFilter.js +1 -1
  30. package/src/sap/ui/integration/cards/filters/DateRangeFilter.js +1 -1
  31. package/src/sap/ui/integration/cards/filters/FilterBar.js +1 -1
  32. package/src/sap/ui/integration/cards/filters/FilterBarFactory.js +1 -1
  33. package/src/sap/ui/integration/cards/filters/SearchFilter.js +1 -1
  34. package/src/sap/ui/integration/cards/filters/SelectFilter.js +1 -1
  35. package/src/sap/ui/integration/cards/list/MicrochartsResizeHelper.js +1 -1
  36. package/src/sap/ui/integration/controls/ActionsStrip.js +1 -1
  37. package/src/sap/ui/integration/controls/ActionsToolbar.js +1 -1
  38. package/src/sap/ui/integration/controls/BlockingMessage.js +1 -1
  39. package/src/sap/ui/integration/controls/ImageWithOverlay.js +1 -1
  40. package/src/sap/ui/integration/controls/LinkWithIcon.js +1 -1
  41. package/src/sap/ui/integration/controls/ListContentItem.js +1 -1
  42. package/src/sap/ui/integration/controls/Microchart.js +324 -92
  43. package/src/sap/ui/integration/controls/MicrochartLegend.js +1 -1
  44. package/src/sap/ui/integration/controls/MicrochartRenderer.js +64 -0
  45. package/src/sap/ui/integration/controls/ObjectStatus.js +1 -1
  46. package/src/sap/ui/integration/controls/Paginator.js +20 -9
  47. package/src/sap/ui/integration/designtime/baseEditor/BaseEditor.js +1 -1
  48. package/src/sap/ui/integration/designtime/baseEditor/PropertyEditor.js +1 -1
  49. package/src/sap/ui/integration/designtime/baseEditor/PropertyEditors.js +1 -1
  50. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/BasePropertyEditor.js +1 -1
  51. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/PropertyEditorFactory.js +1 -1
  52. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/arrayEditor/ArrayEditor.js +1 -1
  53. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/booleanEditor/BooleanEditor.js +1 -1
  54. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/codeEditor/CodeEditor.js +1 -1
  55. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/dateEditor/DateEditor.js +1 -1
  56. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/dateTimeEditor/DateTimeEditor.js +1 -1
  57. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/enumStringEditor/EnumStringEditor.js +1 -1
  58. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/groupEditor/GroupEditor.js +1 -1
  59. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/iconEditor/IconEditor.js +1 -1
  60. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/iconEditor/IsInIconPool.validator.js +1 -1
  61. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/integerEditor/IntegerEditor.js +1 -1
  62. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/jsonEditor/JsonEditor.js +1 -1
  63. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/listEditor/ListEditor.js +1 -1
  64. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/mapEditor/MapEditor.js +1 -1
  65. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/multiSelectEditor/MultiSelectEditor.js +1 -1
  66. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/numberEditor/NumberEditor.js +1 -1
  67. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/objectArrayEditor/ObjectArrayEditor.js +1 -1
  68. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/selectEditor/SelectEditor.js +1 -1
  69. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/separatorEditor/SeparatorEditor.js +1 -1
  70. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/stringEditor/StringEditor.js +1 -1
  71. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/textAreaEditor/TextAreaEditor.js +1 -1
  72. package/src/sap/ui/integration/designtime/baseEditor/util/binding/ObjectBinding.js +1 -1
  73. package/src/sap/ui/integration/designtime/baseEditor/util/unset.js +1 -1
  74. package/src/sap/ui/integration/designtime/baseEditor/validator/IsBoolean.js +1 -1
  75. package/src/sap/ui/integration/designtime/baseEditor/validator/IsDate.js +1 -1
  76. package/src/sap/ui/integration/designtime/baseEditor/validator/IsInteger.js +1 -1
  77. package/src/sap/ui/integration/designtime/baseEditor/validator/IsNumber.js +1 -1
  78. package/src/sap/ui/integration/designtime/baseEditor/validator/IsSelectedKey.js +1 -1
  79. package/src/sap/ui/integration/designtime/baseEditor/validator/IsStringList.js +1 -1
  80. package/src/sap/ui/integration/designtime/baseEditor/validator/IsUniqueKey.js +1 -1
  81. package/src/sap/ui/integration/designtime/baseEditor/validator/IsUniqueList.js +1 -1
  82. package/src/sap/ui/integration/designtime/baseEditor/validator/IsValidBinding.js +1 -1
  83. package/src/sap/ui/integration/designtime/baseEditor/validator/MaxLength.js +1 -1
  84. package/src/sap/ui/integration/designtime/baseEditor/validator/NotABinding.js +1 -1
  85. package/src/sap/ui/integration/designtime/baseEditor/validator/ValidatorRegistry.js +1 -1
  86. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/complexMapEditor/ComplexMapEditor.js +1 -1
  87. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/destinationsEditor/DestinationsEditor.js +1 -1
  88. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/filtersEditor/FiltersEditor.js +1 -1
  89. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/iconEditor/IconEditor.js +1 -1
  90. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/parametersEditor/ParametersEditor.js +1 -1
  91. package/src/sap/ui/integration/designtime/editor/Card.js +1 -1
  92. package/src/sap/ui/integration/designtime/editor/CardEditor.js +1 -1
  93. package/src/sap/ui/integration/designtime/editor/CardPreview.js +1 -1
  94. package/src/sap/ui/integration/editor/Editor.js +2 -2
  95. package/src/sap/ui/integration/editor/EditorResourceBundles.js +1 -1
  96. package/src/sap/ui/integration/editor/Extension.js +1 -1
  97. package/src/sap/ui/integration/editor/Manifest.js +1 -1
  98. package/src/sap/ui/integration/editor/Settings.js +1 -1
  99. package/src/sap/ui/integration/editor/fields/BaseField.js +1 -1
  100. package/src/sap/ui/integration/editor/fields/BooleanField.js +1 -1
  101. package/src/sap/ui/integration/editor/fields/DateField.js +1 -1
  102. package/src/sap/ui/integration/editor/fields/DateTimeField.js +1 -1
  103. package/src/sap/ui/integration/editor/fields/DestinationField.js +1 -1
  104. package/src/sap/ui/integration/editor/fields/GroupField.js +1 -1
  105. package/src/sap/ui/integration/editor/fields/IntegerField.js +1 -1
  106. package/src/sap/ui/integration/editor/fields/NumberField.js +1 -1
  107. package/src/sap/ui/integration/editor/fields/ObjectField.js +1 -1
  108. package/src/sap/ui/integration/editor/fields/ObjectListField.js +1 -1
  109. package/src/sap/ui/integration/editor/fields/StringField.js +1 -1
  110. package/src/sap/ui/integration/editor/fields/StringListField.js +1 -1
  111. package/src/sap/ui/integration/editor/fields/fragment/Controller.js +1 -1
  112. package/src/sap/ui/integration/editor/fields/viz/ColorSelect.js +1 -1
  113. package/src/sap/ui/integration/editor/fields/viz/IconSelect.js +1 -1
  114. package/src/sap/ui/integration/editor/fields/viz/ImageSelect.js +1 -1
  115. package/src/sap/ui/integration/editor/fields/viz/ShapeSelect.js +1 -1
  116. package/src/sap/ui/integration/editor/fields/viz/VizBase.js +1 -1
  117. package/src/sap/ui/integration/extensions/OAuth3LO.js +196 -0
  118. package/src/sap/ui/integration/library.js +2 -2
  119. package/src/sap/ui/integration/messagebundle.properties +9 -0
  120. package/src/sap/ui/integration/messagebundle_ar.properties +6 -0
  121. package/src/sap/ui/integration/messagebundle_bg.properties +6 -0
  122. package/src/sap/ui/integration/messagebundle_ca.properties +6 -0
  123. package/src/sap/ui/integration/messagebundle_cnr.properties +6 -0
  124. package/src/sap/ui/integration/messagebundle_cs.properties +6 -0
  125. package/src/sap/ui/integration/messagebundle_cy.properties +6 -0
  126. package/src/sap/ui/integration/messagebundle_da.properties +6 -0
  127. package/src/sap/ui/integration/messagebundle_de.properties +6 -0
  128. package/src/sap/ui/integration/messagebundle_el.properties +6 -0
  129. package/src/sap/ui/integration/messagebundle_en.properties +6 -0
  130. package/src/sap/ui/integration/messagebundle_en_GB.properties +6 -0
  131. package/src/sap/ui/integration/messagebundle_en_US_saprigi.properties +6 -0
  132. package/src/sap/ui/integration/messagebundle_es.properties +6 -0
  133. package/src/sap/ui/integration/messagebundle_es_MX.properties +6 -0
  134. package/src/sap/ui/integration/messagebundle_et.properties +8 -2
  135. package/src/sap/ui/integration/messagebundle_fi.properties +6 -0
  136. package/src/sap/ui/integration/messagebundle_fr.properties +6 -0
  137. package/src/sap/ui/integration/messagebundle_fr_CA.properties +6 -0
  138. package/src/sap/ui/integration/messagebundle_hi.properties +6 -0
  139. package/src/sap/ui/integration/messagebundle_hr.properties +6 -0
  140. package/src/sap/ui/integration/messagebundle_hu.properties +6 -0
  141. package/src/sap/ui/integration/messagebundle_id.properties +6 -0
  142. package/src/sap/ui/integration/messagebundle_it.properties +6 -0
  143. package/src/sap/ui/integration/messagebundle_iw.properties +6 -0
  144. package/src/sap/ui/integration/messagebundle_ja.properties +6 -0
  145. package/src/sap/ui/integration/messagebundle_kk.properties +6 -0
  146. package/src/sap/ui/integration/messagebundle_ko.properties +6 -0
  147. package/src/sap/ui/integration/messagebundle_lt.properties +6 -0
  148. package/src/sap/ui/integration/messagebundle_lv.properties +6 -0
  149. package/src/sap/ui/integration/messagebundle_mk.properties +6 -0
  150. package/src/sap/ui/integration/messagebundle_ms.properties +6 -0
  151. package/src/sap/ui/integration/messagebundle_nl.properties +6 -0
  152. package/src/sap/ui/integration/messagebundle_no.properties +6 -0
  153. package/src/sap/ui/integration/messagebundle_pl.properties +6 -0
  154. package/src/sap/ui/integration/messagebundle_pt.properties +6 -0
  155. package/src/sap/ui/integration/messagebundle_pt_PT.properties +6 -0
  156. package/src/sap/ui/integration/messagebundle_ro.properties +6 -0
  157. package/src/sap/ui/integration/messagebundle_ru.properties +6 -0
  158. package/src/sap/ui/integration/messagebundle_sh.properties +57 -51
  159. package/src/sap/ui/integration/messagebundle_sk.properties +6 -0
  160. package/src/sap/ui/integration/messagebundle_sl.properties +6 -0
  161. package/src/sap/ui/integration/messagebundle_sr.properties +6 -0
  162. package/src/sap/ui/integration/messagebundle_sv.properties +6 -0
  163. package/src/sap/ui/integration/messagebundle_th.properties +6 -0
  164. package/src/sap/ui/integration/messagebundle_tr.properties +6 -0
  165. package/src/sap/ui/integration/messagebundle_uk.properties +6 -0
  166. package/src/sap/ui/integration/messagebundle_vi.properties +6 -0
  167. package/src/sap/ui/integration/messagebundle_zh_CN.properties +6 -0
  168. package/src/sap/ui/integration/messagebundle_zh_TW.properties +6 -0
  169. package/src/sap/ui/integration/model/ContextModel.js +1 -1
  170. package/src/sap/ui/integration/model/ObservableModel.js +1 -1
  171. package/src/sap/ui/integration/model/PagingModelListBinding.js +1 -1
  172. package/src/sap/ui/integration/schemas/sap-card.json +42 -13
  173. package/src/sap/ui/integration/themes/base/CardTileVariant.less +9 -0
  174. package/src/sap/ui/integration/themes/base/Microchart.less +26 -3
  175. package/src/sap/ui/integration/util/BaseFactory.js +1 -1
  176. package/src/sap/ui/integration/util/BindingHelper.js +1 -1
  177. package/src/sap/ui/integration/util/BindingResolver.js +1 -1
  178. package/src/sap/ui/integration/util/CardObserver.js +1 -1
  179. package/src/sap/ui/integration/util/ComboBoxHelper.js +1 -1
  180. package/src/sap/ui/integration/util/ContentFactory.js +1 -1
  181. package/src/sap/ui/integration/util/CsrfTokenHandler.js +1 -1
  182. package/src/sap/ui/integration/util/DataProvider.js +1 -1
  183. package/src/sap/ui/integration/util/DataProviderFactory.js +1 -1
  184. package/src/sap/ui/integration/util/Destinations.js +1 -1
  185. package/src/sap/ui/integration/util/ErrorHandler.js +1 -1
  186. package/src/sap/ui/integration/util/ExtensionDataProvider.js +1 -1
  187. package/src/sap/ui/integration/util/Form.js +1 -1
  188. package/src/sap/ui/integration/util/HeaderFactory.js +1 -1
  189. package/src/sap/ui/integration/util/JSONBindingHelper.js +1 -1
  190. package/src/sap/ui/integration/util/LoadingProvider.js +1 -1
  191. package/src/sap/ui/integration/util/Manifest.js +1 -1
  192. package/src/sap/ui/integration/util/OAuth3LOHelper.js +130 -0
  193. package/src/sap/ui/integration/util/RequestDataProvider.js +1 -1
  194. package/src/sap/ui/integration/util/ServiceDataProvider.js +1 -1
  195. package/src/sap/ui/integration/util/ServiceManager.js +1 -1
  196. package/src/sap/ui/integration/util/SkeletonCard.js +1 -1
  197. package/src/sap/ui/integration/util/Utils.js +39 -1
  198. package/src/sap/ui/integration/util/Validators.js +1 -1
  199. package/src/sap/ui/integration/widgets/Card.js +23 -5
  200. package/src/sap/ui/integration/widgets/CardRenderer.js +43 -7
@@ -5,28 +5,45 @@
5
5
  */
6
6
 
7
7
  sap.ui.define([
8
+ "./MicrochartRenderer",
8
9
  "sap/m/library",
9
10
  "sap/ui/core/Control",
10
11
  "sap/ui/core/Lib",
11
12
  "sap/ui/base/DataType",
12
- "sap/base/Log"
13
+ "sap/base/Log",
14
+ "sap/ui/integration/util/BindingHelper"
13
15
  ], function (
16
+ MicrochartRenderer,
14
17
  mLibrary,
15
18
  Control,
16
19
  Lib,
17
20
  DataType,
18
- Log
21
+ Log,
22
+ BindingHelper
19
23
  ) {
20
24
  "use strict";
21
25
 
22
26
  // Lazy dependencies, loaded on the first attempt to create Microchart.
23
- var BulletMicroChart, BulletMicroChartData, StackedBarMicroChart, StackedBarMicroChartBar;
27
+ var BulletMicroChart,
28
+ BulletMicroChartData,
29
+ StackedBarMicroChart,
30
+ StackedBarMicroChartBar,
31
+ HarveyBallMicroChart,
32
+ HarveyBallMicroChartItem,
33
+ LineMicroChart,
34
+ LineMicroChartLine,
35
+ LineMicroChartPoint,
36
+ RadialMicroChart,
37
+ ColumnMicroChart,
38
+ ColumnMicroChartData,
39
+ ColumnMicroChartLabel;
24
40
 
25
41
  var ValueColor = mLibrary.ValueColor;
42
+ var Size = mLibrary.Size;
26
43
 
27
44
  /**
28
45
  * Validates the given bar valueColor against the sap.m.ValueColor type.
29
- * Normally sap.suite.ui.microchart.StackedBarMicroChartBar allows css colors, but for cards we limit this to sap.m.ValueColor.
46
+ * Normally sap.suite.ui.microchart.StackedBarMicroChartBar allows CSS colors, but for cards we limit this to sap.m.ValueColor.
30
47
  * That ensures that theming and the mobile rendering can work.
31
48
  * @param {string} sColor The color to validate.
32
49
  * @returns {string} The validated color.
@@ -45,6 +62,30 @@ sap.ui.define([
45
62
 
46
63
  return sColor;
47
64
  }
65
+ /**
66
+ * Prepares and validates the size for chart. Only size <code>S</code> and <code>Responsive</code> are allowed.
67
+ * If size is invalid - method fallbacks to size <code>Responsive</code>.
68
+ * @param {string} sSize The size.
69
+ * @returns {string} The validated size.
70
+ */
71
+ function prepareSize(sSize) {
72
+ if (!sSize) {
73
+ return Size.Responsive;
74
+ }
75
+
76
+ if (typeof sSize !== "string") {
77
+ return BindingHelper.reuse(sSize);
78
+ }
79
+
80
+ const bIsValid = sSize === Size.S || sSize === Size.Responsive;
81
+
82
+ if (!bIsValid) {
83
+ Log.error("The value for size is not correct. Only size 'S' and 'Responsive' are supported. Given '" + sSize + "'.", "sap.ui.integration.controls.Microchart");
84
+ return Size.Responsive;
85
+ }
86
+
87
+ return sSize;
88
+ }
48
89
 
49
90
  /**
50
91
  * Constructor for a new Microchart.
@@ -58,7 +99,7 @@ sap.ui.define([
58
99
  * @extends sap.ui.core.Control
59
100
  *
60
101
  * @author SAP SE
61
- * @version 1.123.1
102
+ * @version 1.124.0
62
103
  *
63
104
  * @constructor
64
105
  * @private
@@ -75,7 +116,15 @@ sap.ui.define([
75
116
  /**
76
117
  * The value color of the chart. Applicable only for Bullet microchart.
77
118
  */
78
- valueColor: { type: "sap.m.ValueColor", defaultValue: ValueColor.Neutral }
119
+ valueColor: { type: "sap.m.ValueColor", defaultValue: ValueColor.Neutral },
120
+ /**
121
+ * The minimal height of the chart.
122
+ */
123
+ height: { type: "sap.ui.core.CSSSize", defaultValue: "1rem" },
124
+ /**
125
+ * The size of the underlying chart.
126
+ */
127
+ size: { type: "sap.m.Size", defaultValue: Size.Responsive }
79
128
  },
80
129
  aggregations: {
81
130
  /**
@@ -84,39 +133,7 @@ sap.ui.define([
84
133
  chart: { type: "sap.ui.core.Control", multiple: false }
85
134
  }
86
135
  },
87
- renderer: {
88
- apiVersion: 2,
89
- render: function (oRm, oMicrochart) {
90
- var sValueClass = "sapUiIntMicrochartValue" + oMicrochart.getValueColor();
91
-
92
- oRm.openStart("div", oMicrochart)
93
- .class("sapUiIntMicrochartChartWrapper")
94
- .openEnd();
95
-
96
- // chart
97
- oRm.openStart("div")
98
- .class("sapUiIntMicrochartChart")
99
- .openEnd();
100
-
101
- oRm.openStart("div")
102
- .class("sapUiIntMicrochartChartInner")
103
- .openEnd()
104
- .renderControl(oMicrochart.getChart())
105
- .close("div");
106
-
107
- oRm.close("div");
108
-
109
- // value
110
- oRm.openStart("div")
111
- .class("sapMSLIInfo")
112
- .class(sValueClass)
113
- .openEnd()
114
- .text(oMicrochart.getDisplayValue())
115
- .close("div");
116
-
117
- oRm.close("div");
118
- }
119
- }
136
+ renderer: MicrochartRenderer
120
137
  });
121
138
 
122
139
  Microchart.loadDependencies = function () {
@@ -127,12 +144,30 @@ sap.ui.define([
127
144
  "sap/suite/ui/microchart/BulletMicroChart",
128
145
  "sap/suite/ui/microchart/BulletMicroChartData",
129
146
  "sap/suite/ui/microchart/StackedBarMicroChart",
130
- "sap/suite/ui/microchart/StackedBarMicroChartBar"
131
- ], function (_BulletMicroChart, _BulletMicroChartData, _StackedBarMicroChart, _StackedBarMicroChartBar) {
132
- BulletMicroChart = _BulletMicroChart;
133
- BulletMicroChartData = _BulletMicroChartData;
134
- StackedBarMicroChart = _StackedBarMicroChart;
135
- StackedBarMicroChartBar = _StackedBarMicroChartBar;
147
+ "sap/suite/ui/microchart/StackedBarMicroChartBar",
148
+ "sap/suite/ui/microchart/HarveyBallMicroChart",
149
+ "sap/suite/ui/microchart/HarveyBallMicroChartItem",
150
+ "sap/suite/ui/microchart/LineMicroChart",
151
+ "sap/suite/ui/microchart/LineMicroChartLine",
152
+ "sap/suite/ui/microchart/LineMicroChartPoint",
153
+ "sap/suite/ui/microchart/RadialMicroChart",
154
+ "sap/suite/ui/microchart/ColumnMicroChart",
155
+ "sap/suite/ui/microchart/ColumnMicroChartData",
156
+ "sap/suite/ui/microchart/ColumnMicroChartLabel"
157
+ ], function () {
158
+ BulletMicroChart = arguments[0];
159
+ BulletMicroChartData = arguments[1];
160
+ StackedBarMicroChart = arguments[2];
161
+ StackedBarMicroChartBar = arguments[3];
162
+ HarveyBallMicroChart = arguments[4];
163
+ HarveyBallMicroChartItem = arguments[5];
164
+ LineMicroChart = arguments[6];
165
+ LineMicroChartLine = arguments[7];
166
+ LineMicroChartPoint = arguments[8];
167
+ RadialMicroChart = arguments[9];
168
+ ColumnMicroChart = arguments[10];
169
+ ColumnMicroChartData = arguments[11];
170
+ ColumnMicroChartLabel = arguments[12];
136
171
  resolve();
137
172
  }, function (sErr) {
138
173
  reject(sErr);
@@ -147,71 +182,268 @@ sap.ui.define([
147
182
  /**
148
183
  * Creates new Microchart.
149
184
  * @param {object} oChartSettings Chart configuration from the manifest.
185
+ * @param {boolean} bIsForHeader The chart will be used in a card header.
150
186
  * @returns {sap.ui.integration.controls.Microchart} New Microchart.
151
187
  */
152
- Microchart.create = function (oChartSettings) {
153
- var oMicrochart,
154
- oChart;
188
+ Microchart.create = function (oChartSettings, bIsForHeader) {
189
+ var oChart,
190
+ sForceHeight = "1rem";
155
191
 
156
192
  if (oChartSettings.type === "Bullet") {
157
- var aThresholds = [];
193
+ oChart = Microchart._createBulletChart(oChartSettings);
194
+ } else if (oChartSettings.type === "StackedBar") {
195
+ oChart = Microchart._createStackedBarChart(oChartSettings);
196
+ } else if (oChartSettings.type === "HarveyBall") {
197
+ oChart = Microchart._createHarveyBallChart(oChartSettings);
198
+ sForceHeight = "3rem";
199
+ } else if (oChartSettings.type === "Line") {
200
+ oChart = Microchart._createLineChart(oChartSettings);
201
+ sForceHeight = "3rem";
202
+ } else if (oChartSettings.type === "Radial") {
203
+ oChart = Microchart._createRadialChart(oChartSettings);
204
+ sForceHeight = "2rem";
205
+ } else if (oChartSettings.type === "Column") {
206
+ oChart = Microchart._createColumnChart(oChartSettings);
207
+ sForceHeight = "3rem";
208
+ }
158
209
 
159
- if (oChartSettings.thresholds) {
160
- aThresholds = oChartSettings.thresholds.map(function (oThreshold) {
161
- return new BulletMicroChartData({
162
- value: oThreshold.value,
163
- color: oThreshold.color
164
- });
210
+ const oMicrochart = new Microchart({
211
+ valueColor: BindingHelper.reuse(oChartSettings.color),
212
+ size: prepareSize(oChartSettings.size),
213
+ displayValue: oChartSettings.displayValue,
214
+ chart: oChart,
215
+ height: sForceHeight,
216
+ visible: oChartSettings.visible
217
+ });
218
+
219
+ if (bIsForHeader) {
220
+ oMicrochart.addStyleClass("sapUiIntMicrochartInHeader");
221
+ }
222
+
223
+ return oMicrochart;
224
+ };
225
+
226
+ /**
227
+ * Creates new BulletChart based on the chart settings.
228
+ * @param {object} oChartSettings Chart configuration from the manifest.
229
+ * @returns {sap.suite.ui.microcharts.BulletMicroChart} new BulletMicroChart.
230
+ */
231
+ Microchart._createBulletChart = function (oChartSettings) {
232
+ var aThresholds = [];
233
+ if (oChartSettings.thresholds) {
234
+ aThresholds = oChartSettings.thresholds.map(function (oThreshold) {
235
+ return new BulletMicroChartData({
236
+ value: oThreshold.value,
237
+ color: oThreshold.color
165
238
  });
166
- }
239
+ });
240
+ }
241
+
242
+ return new BulletMicroChart({
243
+ size: prepareSize(oChartSettings.size),
244
+ minValue: oChartSettings.minValue,
245
+ maxValue: oChartSettings.maxValue,
246
+ targetValue: oChartSettings.target,
247
+ showTargetValue: !!oChartSettings.target,
248
+ scaleColor: "Light",
249
+ scale: oChartSettings.scale,
250
+ actual: new BulletMicroChartData({
251
+ value: oChartSettings.value,
252
+ color: BindingHelper.reuse(oChartSettings.color)
253
+ }),
254
+ thresholds: aThresholds
255
+ });
256
+ };
257
+
258
+ /**
259
+ * Creates new StackedBarChart based on the chart settings.
260
+ * @param {object} oChartSettings Chart configuration from the manifest.
261
+ * @returns {sap.suite.ui.microcharts.StackedBarChart } new StackedBarChart.
262
+ */
263
+ Microchart._createStackedBarChart = function (oChartSettings) {
264
+ var aBars = oChartSettings.bars.map(function (oBar) {
265
+ var vColor = validateBarValueColor(oBar.color);
266
+ return new StackedBarMicroChartBar({
267
+ value: oBar.value,
268
+ displayValue: oBar.displayValue,
269
+ valueColor: vColor
270
+ });
271
+ });
272
+
273
+ return new StackedBarMicroChart({
274
+ size: prepareSize(oChartSettings.size),
275
+ bars: aBars,
276
+ maxValue: oChartSettings.maxValue
277
+ });
278
+ };
167
279
 
168
- oChart = new BulletMicroChart({
169
- size: "Responsive",
170
- minValue: oChartSettings.minValue,
171
- maxValue: oChartSettings.maxValue,
172
- targetValue: oChartSettings.target,
173
- showTargetValue: !!oChartSettings.target,
174
- scaleColor: "Light",
175
- scale: oChartSettings.scale,
176
- actual: new BulletMicroChartData({
177
- value: oChartSettings.value,
178
- color: oChartSettings.color
179
- }),
180
- thresholds: aThresholds
280
+ /**
281
+ * Creates new HarveyBallChart based on the chart settings.
282
+ * @param {object} oChartSettings Chart configuration from the manifest.
283
+ * @returns {sap.suite.ui.microcharts.HarveyBallChart} new HarveyBallChart.
284
+ */
285
+ Microchart._createHarveyBallChart = function (oChartSettings) {
286
+ var vColor = validateBarValueColor(oChartSettings.color);
287
+ return new HarveyBallMicroChart({
288
+ size: prepareSize(oChartSettings.size),
289
+ total: oChartSettings.total,
290
+ totalScale: oChartSettings.totalScale,
291
+ alignContent: "Right",
292
+ items: [
293
+ new HarveyBallMicroChartItem({
294
+ fraction: oChartSettings.fraction,
295
+ fractionScale: oChartSettings.fractionScale,
296
+ color: BindingHelper.reuse(vColor),
297
+ fractionLabel: oChartSettings.fractionLabel,
298
+ formattedLabel: false
299
+ })
300
+ ]
181
301
  });
302
+ };
182
303
 
183
- oMicrochart = new Microchart({
184
- valueColor: oChartSettings.color,
185
- displayValue: oChartSettings.displayValue,
186
- chart: oChart,
187
- visible: oChartSettings.visible
304
+ /**
305
+ * Creates new LineChart based on the chart settings.
306
+ * @param {object} oChartSettings Chart configuration from the manifest.
307
+ * @returns {sap.suite.ui.microcharts.LineChart} new LineChart.
308
+ */
309
+ Microchart._createLineChart = function (oChartSettings) {
310
+ var vColor = validateBarValueColor(oChartSettings.color);
311
+ var oChart = new LineMicroChart({
312
+ size: prepareSize(oChartSettings.size),
313
+ color: BindingHelper.reuse(vColor),
314
+ maxXValue: oChartSettings.maxXValue,
315
+ minXValue: oChartSettings.minXValue,
316
+ maxYValue: oChartSettings.maxYValue,
317
+ minYValue: oChartSettings.minYValue,
318
+ threshold: oChartSettings.threshold,
319
+ leftTopLabel: oChartSettings.leftTopLabel,
320
+ leftBottomLabel: oChartSettings.leftBottomLabel,
321
+ rightTopLabel:oChartSettings.rightTopLabel,
322
+ rightBottomLabel:oChartSettings.rightBottomLabel
323
+ });
324
+
325
+ if (Array.isArray(oChartSettings.points)) {
326
+ // static points
327
+ oChartSettings.points.forEach(function (oPoint) {
328
+ oChart.addPoint(
329
+ new LineMicroChartPoint({
330
+ x: oPoint.x,
331
+ y: oPoint.y
332
+ })
333
+ );
334
+ });
335
+ } else if (oChartSettings.points?.path && oChartSettings.points?.template) {
336
+ oChart.bindAggregation("points", {
337
+ path: oChartSettings.points.path,
338
+ template: new LineMicroChartPoint(oChartSettings.points.template),
339
+ templateShareable: true
188
340
  });
189
341
  }
190
342
 
191
- if (oChartSettings.type === "StackedBar") {
192
- var aBars = oChartSettings.bars.map(function (oBar) {
193
- var vColor = validateBarValueColor(oBar.color);
194
- return new StackedBarMicroChartBar({
195
- value: oBar.value,
196
- displayValue: oBar.displayValue,
197
- valueColor: vColor
198
- });
343
+ if (Array.isArray(oChartSettings.lines)) {
344
+ // static columns with static points
345
+ oChartSettings.lines.forEach(function (oLine) {
346
+ var vColor = validateBarValueColor(oLine.color);
347
+ oChart.addLine(
348
+ new LineMicroChartLine({
349
+ color: vColor,
350
+ showPoints: oLine.showPoints,
351
+ type: oLine.lineType,
352
+ points: oLine.points.map(function (oPoint) {
353
+ return new LineMicroChartPoint({
354
+ x: oPoint.x,
355
+ y: oPoint.y
356
+ });
357
+ })
358
+ })
359
+ );
199
360
  });
200
-
201
- oChart = new StackedBarMicroChart({
202
- size: "Responsive",
203
- bars: aBars,
204
- maxValue: oChartSettings.maxValue
361
+ } else if (oChartSettings.lines?.path && oChartSettings.lines?.template) {
362
+ // dynamic lines with points
363
+ var oTemplateSettings = oChartSettings.lines.template;
364
+ var oLineTemplate = new LineMicroChartLine({
365
+ color: oTemplateSettings.color,
366
+ showPoints:oTemplateSettings.showPoints,
367
+ type: oTemplateSettings.lineType
205
368
  });
369
+ if (oTemplateSettings.points?.path && oTemplateSettings.points?.template) {
370
+ oLineTemplate.bindAggregation("points", {
371
+ path: oTemplateSettings.points.path,
372
+ template: new LineMicroChartPoint(oTemplateSettings.points.template),
373
+ templateShareable: true
374
+ });
375
+ }
206
376
 
207
- oMicrochart = new Microchart({
208
- displayValue: oChartSettings.displayValue,
209
- chart: oChart,
210
- visible: oChartSettings.visible
377
+ oChart.bindAggregation("lines", {
378
+ path: oChartSettings.lines.path,
379
+ template: oLineTemplate,
380
+ templateShareable: true
211
381
  });
382
+
383
+ } else {
384
+ Log.info("lines or points property is not properly configured for the LineMicroChart", "sap.ui.integration.controls.Microchart");
212
385
  }
386
+ return oChart;
387
+ };
213
388
 
214
- return oMicrochart;
389
+ /**
390
+ * Creates new RadialChart based on the chart settings.
391
+ * @param {object} oChartSettings Chart configuration from the manifest.
392
+ * @returns {sap.suite.ui.microcharts.RadialChart} new RadialChart.
393
+ */
394
+ Microchart._createRadialChart = function (oChartSettings) {
395
+ var vColor = validateBarValueColor(oChartSettings.color);
396
+ return new RadialMicroChart({
397
+ size: prepareSize(oChartSettings.size),
398
+ valueColor: BindingHelper.reuse(vColor),
399
+ total: oChartSettings.total,
400
+ showPercentageSymbol: oChartSettings.showPercentageSymbol,
401
+ percentage: oChartSettings.percentage,
402
+ fraction: oChartSettings.fraction,
403
+ alignContent: "Right"
404
+ });
405
+ };
406
+
407
+ /**
408
+ * Creates new ColumnChart based on the chart settings.
409
+ * @param {object} oChartSettings Chart configuration from the manifest.
410
+ * @returns {sap.suite.ui.microcharts.ColumnChart} new ColumnChart.
411
+ */
412
+ Microchart._createColumnChart = function (oChartSettings){
413
+ var mSettings = {
414
+ size: prepareSize(oChartSettings.size),
415
+ allowColumnLabels: oChartSettings.allowColumnLabels,
416
+ leftTopLabel: new ColumnMicroChartLabel({ label: oChartSettings.leftTopLabel }),
417
+ leftBottomLabel: new ColumnMicroChartLabel({ label: oChartSettings.leftBottomLabel }),
418
+ rightTopLabel: new ColumnMicroChartLabel({ label: oChartSettings.rightTopLabel }),
419
+ rightBottomLabel: new ColumnMicroChartLabel({ label: oChartSettings.rightBottomLabel })
420
+ };
421
+
422
+ var oChart = new ColumnMicroChart(mSettings);
423
+ if (Array.isArray(oChartSettings.columns)) {
424
+ // static columns
425
+ oChartSettings.columns.forEach(function (oColumn) {
426
+ var vColor = validateBarValueColor(oColumn.color);
427
+ oChart.addColumn(
428
+ new ColumnMicroChartData({
429
+ color: vColor,
430
+ label: oColumn.label,
431
+ displayValue: oColumn.displayValue,
432
+ value: oColumn.value
433
+ }
434
+ ));
435
+ });
436
+ } else if (oChartSettings.columns?.path && oChartSettings.columns?.template) {
437
+ // dynamic columns
438
+ oChart.bindAggregation("columns", {
439
+ path: oChartSettings.columns.path,
440
+ template: new ColumnMicroChartData(oChartSettings.columns.template),
441
+ templateShareable: true
442
+ });
443
+ } else {
444
+ Log.info("Columns property is not properly configured for the ColumnMicroChart", "sap.ui.integration.controls.Microchart");
445
+ }
446
+ return oChart;
215
447
  };
216
448
 
217
449
  return Microchart;
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @extends sap.ui.core.Control
33
33
  *
34
34
  * @author SAP SE
35
- * @version 1.123.1
35
+ * @version 1.124.0
36
36
  *
37
37
  * @constructor
38
38
  * @private
@@ -0,0 +1,64 @@
1
+ /*!
2
+ * OpenUI5
3
+ * (c) Copyright 2009-2024 SAP SE or an SAP affiliate company.
4
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
+ */
6
+
7
+ sap.ui.define([
8
+ "sap/m/library"
9
+ ], function(mLibrary) {
10
+ "use strict";
11
+
12
+ const Size = mLibrary.Size;
13
+
14
+ /**
15
+ * MicrochartRenderer renderer.
16
+ * @namespace
17
+ */
18
+ const MicrochartRenderer = {
19
+ apiVersion: 2
20
+ };
21
+
22
+ MicrochartRenderer.render = function (oRm, oMicrochart) {
23
+ const sValueClass = "sapUiIntMicrochartValue" + oMicrochart.getValueColor();
24
+
25
+ oRm.openStart("div", oMicrochart)
26
+ .class("sapUiIntMicrochartChartWrapper")
27
+ .openEnd();
28
+
29
+ // chart
30
+ oRm.openStart("div")
31
+ .class("sapUiIntMicrochartChart")
32
+ .class("sapUiIntMicrochartSize" + oMicrochart.getSize());
33
+
34
+ if (oMicrochart.getSize() === Size.Responsive) {
35
+ oRm.style("height", oMicrochart.getHeight());
36
+ }
37
+
38
+ oRm.openEnd();
39
+
40
+ oRm.openStart("div")
41
+ .class("sapUiIntMicrochartChartInner")
42
+ .openEnd()
43
+ .renderControl(oMicrochart.getChart())
44
+ .close("div");
45
+
46
+ oRm.close("div");
47
+
48
+ // value
49
+ const sDisplayValue = oMicrochart.getDisplayValue();
50
+ if (sDisplayValue) {
51
+ oRm.openStart("div")
52
+ .class("sapMSLIInfo")
53
+ .class(sValueClass)
54
+ .openEnd()
55
+ .text(sDisplayValue)
56
+ .close("div");
57
+ }
58
+
59
+ oRm.close("div");
60
+ };
61
+
62
+ return MicrochartRenderer;
63
+
64
+ }, /* bExport= */ true);
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * @extends sap.m.ObjectStatus
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.123.1
27
+ * @version 1.124.0
28
28
  *
29
29
  * @constructor
30
30
  * @private
@@ -41,7 +41,7 @@ sap.ui.define([
41
41
  * @extends sap.ui.core.Control
42
42
  *
43
43
  * @author SAP SE
44
- * @version 1.123.1
44
+ * @version 1.124.0
45
45
  *
46
46
  * @constructor
47
47
  * @ui5-restricted
@@ -143,20 +143,31 @@ sap.ui.define([
143
143
 
144
144
  Paginator.prototype._dataChanged = function() {
145
145
  var oCard = this.getCard(),
146
- oContent = oCard.getCardContent(),
147
- oList,
148
- iTotalCount,
149
- bInitialized;
146
+ oContent = oCard.getCardContent();
147
+
148
+ if (!oContent || !oContent.isA("sap.ui.integration.cards.BaseContent")) {
149
+ this.setPageCount(0);
150
+ return;
151
+ }
152
+
153
+ oContent.getLoadDependenciesPromise()
154
+ .then((bLoadSuccessful) => {
155
+ if (bLoadSuccessful) {
156
+ this._initFromContent(oContent);
157
+ }
158
+ });
159
+ };
150
160
 
151
- if (!oContent || !oContent.isA("sap.ui.integration.cards.BaseContent") || !oContent.hasData()) {
161
+ Paginator.prototype._initFromContent = function(oContent) {
162
+ if (!oContent.hasData()) {
152
163
  this.setPageCount(0);
153
164
  return;
154
165
  }
155
166
 
156
167
  this.setModel(oContent.getModel());
157
168
 
158
- oList = oContent.getAggregation("_content");
159
- bInitialized = EventProvider.hasListener(oList, "updateFinished", this._listUpdateFinishedHandler);
169
+ const oList = oContent.getAggregation("_content");
170
+ const bInitialized = EventProvider.hasListener(oList, "updateFinished", this._listUpdateFinishedHandler);
160
171
 
161
172
  if (this._hasAnimation() && !bInitialized) {
162
173
  oList.attachEvent("updateFinished", this._listUpdateFinishedHandler);
@@ -172,7 +183,7 @@ sap.ui.define([
172
183
  this._clearAnimation(this);
173
184
  }
174
185
 
175
- iTotalCount = this.getTotalCount() || oContent.getDataLength();
186
+ const iTotalCount = this.getTotalCount() || oContent.getDataLength();
176
187
 
177
188
  this.setPageCount(Math.ceil(iTotalCount / this.getPageSize()));
178
189
  this.setPageNumber(Math.min(Math.max(0, this.getPageNumber()), this._getLastPageNumber()));
@@ -136,7 +136,7 @@ sap.ui.define([
136
136
  * @alias sap.ui.integration.designtime.baseEditor.BaseEditor
137
137
  * @author SAP SE
138
138
  * @since 1.70.0
139
- * @version 1.123.1
139
+ * @version 1.124.0
140
140
  * @private
141
141
  * @experimental since 1.70.0
142
142
  * @ui5-restricted
@@ -37,7 +37,7 @@ sap.ui.define([
37
37
  * @alias sap.ui.integration.designtime.baseEditor.PropertyEditor
38
38
  * @author SAP SE
39
39
  * @since 1.73.0
40
- * @version 1.123.1
40
+ * @version 1.124.0
41
41
  * @private
42
42
  * @experimental since 1.73.0
43
43
  * @ui5-restricted
@@ -69,7 +69,7 @@ sap.ui.define([
69
69
  * @alias sap.ui.integration.designtime.baseEditor.PropertyEditors
70
70
  * @author SAP SE
71
71
  * @since 1.73.0
72
- * @version 1.123.1
72
+ * @version 1.124.0
73
73
  * @private
74
74
  * @experimental since 1.73.0
75
75
  * @ui5-restricted
@@ -50,7 +50,7 @@ sap.ui.define([
50
50
  * @alias sap.ui.integration.designtime.baseEditor.propertyEditor.BasePropertyEditor
51
51
  * @author SAP SE
52
52
  * @since 1.70
53
- * @version 1.123.1
53
+ * @version 1.124.0
54
54
  *
55
55
  * @private
56
56
  * @experimental 1.70
@@ -15,7 +15,7 @@ sap.ui.define([
15
15
  * @namespace sap.ui.integration.designtime.baseEditor.propertyEditor.PropertyEditorFactory
16
16
  *
17
17
  * @author SAP SE
18
- * @version 1.123.1
18
+ * @version 1.124.0
19
19
  *
20
20
  * @static
21
21
  * @since 1.75