@openui5/sap.ui.integration 1.115.1 → 1.117.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 (150) hide show
  1. package/.reuse/dep5 +0 -5
  2. package/THIRDPARTY.txt +1 -7
  3. package/package.json +6 -6
  4. package/src/sap/ui/integration/.library +1 -1
  5. package/src/sap/ui/integration/ActionDefinition.js +1 -1
  6. package/src/sap/ui/integration/Designtime.js +1 -1
  7. package/src/sap/ui/integration/Extension.js +3 -3
  8. package/src/sap/ui/integration/Host.js +15 -1
  9. package/src/sap/ui/integration/cards/AdaptiveContent.js +1 -1
  10. package/src/sap/ui/integration/cards/AnalyticalContent.js +1 -1
  11. package/src/sap/ui/integration/cards/AnalyticsCloudContent.js +5 -1
  12. package/src/sap/ui/integration/cards/BaseContent.js +17 -4
  13. package/src/sap/ui/integration/cards/BaseListContent.js +1 -1
  14. package/src/sap/ui/integration/cards/CalendarContent.js +110 -78
  15. package/src/sap/ui/integration/cards/ComponentContent.js +1 -1
  16. package/src/sap/ui/integration/cards/Footer.js +1 -1
  17. package/src/sap/ui/integration/cards/Header.js +18 -3
  18. package/src/sap/ui/integration/cards/ListContent.js +11 -3
  19. package/src/sap/ui/integration/cards/NumericHeader.js +2 -1
  20. package/src/sap/ui/integration/cards/ObjectContent.js +15 -2
  21. package/src/sap/ui/integration/cards/TableContent.js +6 -2
  22. package/src/sap/ui/integration/cards/TimelineContent.js +1 -1
  23. package/src/sap/ui/integration/cards/WebPageContent.js +1 -1
  24. package/src/sap/ui/integration/cards/actions/CardActions.js +1 -1
  25. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputChoiceSet.js +1 -1
  26. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputDate.js +1 -1
  27. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputNumber.js +1 -1
  28. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputText.js +1 -1
  29. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputToggle.js +1 -1
  30. package/src/sap/ui/integration/cards/filters/BaseFilter.js +1 -1
  31. package/src/sap/ui/integration/cards/filters/DateRangeFilter.js +1 -1
  32. package/src/sap/ui/integration/cards/filters/FilterBar.js +1 -1
  33. package/src/sap/ui/integration/cards/filters/FilterBarFactory.js +1 -1
  34. package/src/sap/ui/integration/cards/filters/SearchFilter.js +1 -1
  35. package/src/sap/ui/integration/cards/filters/SelectFilter.js +1 -1
  36. package/src/sap/ui/integration/cards/list/MicrochartsResizeHelper.js +1 -1
  37. package/src/sap/ui/integration/controls/ActionsStrip.js +1 -1
  38. package/src/sap/ui/integration/controls/ActionsToolbar.js +1 -1
  39. package/src/sap/ui/integration/controls/BlockingMessage.js +4 -4
  40. package/src/sap/ui/integration/controls/LinkWithIcon.js +1 -1
  41. package/src/sap/ui/integration/controls/ListContentItem.js +16 -9
  42. package/src/sap/ui/integration/controls/ListContentItemRenderer.js +1 -1
  43. package/src/sap/ui/integration/controls/Microchart.js +5 -3
  44. package/src/sap/ui/integration/controls/MicrochartLegend.js +1 -1
  45. package/src/sap/ui/integration/controls/ObjectStatus.js +1 -1
  46. package/src/sap/ui/integration/controls/Paginator.js +3 -4
  47. package/src/sap/ui/integration/controls/PaginatorRenderer.js +1 -1
  48. package/src/sap/ui/integration/designtime/baseEditor/BaseEditor.js +1 -1
  49. package/src/sap/ui/integration/designtime/baseEditor/PropertyEditor.js +1 -1
  50. package/src/sap/ui/integration/designtime/baseEditor/PropertyEditors.js +1 -1
  51. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/BasePropertyEditor.js +1 -1
  52. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/PropertyEditorFactory.js +1 -1
  53. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/arrayEditor/ArrayEditor.js +1 -1
  54. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/booleanEditor/BooleanEditor.js +1 -1
  55. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/codeEditor/CodeEditor.js +1 -1
  56. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/dateEditor/DateEditor.js +1 -1
  57. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/dateTimeEditor/DateTimeEditor.js +1 -1
  58. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/enumStringEditor/EnumStringEditor.js +1 -1
  59. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/groupEditor/GroupEditor.js +1 -1
  60. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/iconEditor/IconEditor.js +1 -1
  61. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/iconEditor/IsInIconPool.validator.js +1 -1
  62. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/integerEditor/IntegerEditor.js +1 -1
  63. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/jsonEditor/JsonEditor.js +1 -1
  64. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/listEditor/ListEditor.js +1 -1
  65. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/mapEditor/MapEditor.js +1 -1
  66. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/multiSelectEditor/MultiSelectEditor.js +1 -1
  67. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/numberEditor/NumberEditor.js +1 -1
  68. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/objectArrayEditor/ObjectArrayEditor.js +1 -1
  69. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/selectEditor/SelectEditor.js +1 -1
  70. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/separatorEditor/SeparatorEditor.js +1 -1
  71. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/stringEditor/StringEditor.js +1 -1
  72. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/textAreaEditor/TextAreaEditor.js +1 -1
  73. package/src/sap/ui/integration/designtime/baseEditor/util/binding/ObjectBinding.js +1 -1
  74. package/src/sap/ui/integration/designtime/baseEditor/util/unset.js +1 -1
  75. package/src/sap/ui/integration/designtime/baseEditor/validator/IsBoolean.js +1 -1
  76. package/src/sap/ui/integration/designtime/baseEditor/validator/IsDate.js +1 -1
  77. package/src/sap/ui/integration/designtime/baseEditor/validator/IsInteger.js +1 -1
  78. package/src/sap/ui/integration/designtime/baseEditor/validator/IsNumber.js +1 -1
  79. package/src/sap/ui/integration/designtime/baseEditor/validator/IsSelectedKey.js +1 -1
  80. package/src/sap/ui/integration/designtime/baseEditor/validator/IsStringList.js +1 -1
  81. package/src/sap/ui/integration/designtime/baseEditor/validator/IsUniqueKey.js +1 -1
  82. package/src/sap/ui/integration/designtime/baseEditor/validator/IsUniqueList.js +1 -1
  83. package/src/sap/ui/integration/designtime/baseEditor/validator/IsValidBinding.js +1 -1
  84. package/src/sap/ui/integration/designtime/baseEditor/validator/MaxLength.js +1 -1
  85. package/src/sap/ui/integration/designtime/baseEditor/validator/NotABinding.js +1 -1
  86. package/src/sap/ui/integration/designtime/baseEditor/validator/ValidatorRegistry.js +1 -1
  87. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/complexMapEditor/ComplexMapEditor.js +1 -1
  88. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/destinationsEditor/DestinationsEditor.js +1 -1
  89. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/filtersEditor/FiltersEditor.js +1 -1
  90. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/iconEditor/IconEditor.js +1 -1
  91. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/parametersEditor/ParametersEditor.js +1 -1
  92. package/src/sap/ui/integration/designtime/editor/Card.js +1 -1
  93. package/src/sap/ui/integration/designtime/editor/CardEditor.js +1 -9
  94. package/src/sap/ui/integration/designtime/editor/CardPreview.js +37 -36
  95. package/src/sap/ui/integration/designtime/editor/css/CardPreview.css +30 -18
  96. package/src/sap/ui/integration/editor/Editor.js +52 -30
  97. package/src/sap/ui/integration/editor/EditorResourceBundles.js +2 -3
  98. package/src/sap/ui/integration/editor/Extension.js +2 -3
  99. package/src/sap/ui/integration/editor/Manifest.js +1 -1
  100. package/src/sap/ui/integration/editor/Settings.js +1 -1
  101. package/src/sap/ui/integration/editor/fields/BaseField.js +1 -1
  102. package/src/sap/ui/integration/editor/fields/BooleanField.js +1 -1
  103. package/src/sap/ui/integration/editor/fields/DateField.js +1 -1
  104. package/src/sap/ui/integration/editor/fields/DateTimeField.js +1 -1
  105. package/src/sap/ui/integration/editor/fields/DestinationField.js +2 -1
  106. package/src/sap/ui/integration/editor/fields/GroupField.js +1 -1
  107. package/src/sap/ui/integration/editor/fields/IntegerField.js +1 -1
  108. package/src/sap/ui/integration/editor/fields/NumberField.js +1 -1
  109. package/src/sap/ui/integration/editor/fields/ObjectField.js +5 -10
  110. package/src/sap/ui/integration/editor/fields/ObjectListField.js +1 -1
  111. package/src/sap/ui/integration/editor/fields/StringField.js +1 -1
  112. package/src/sap/ui/integration/editor/fields/StringListField.js +1 -1
  113. package/src/sap/ui/integration/editor/fields/fragment/Controller.js +1 -1
  114. package/src/sap/ui/integration/editor/fields/viz/ColorSelect.js +1 -1
  115. package/src/sap/ui/integration/editor/fields/viz/IconSelect.js +5 -4
  116. package/src/sap/ui/integration/editor/fields/viz/ShapeSelect.js +1 -1
  117. package/src/sap/ui/integration/editor/fields/viz/VizBase.js +1 -1
  118. package/src/sap/ui/integration/formatters/IconFormatter.js +12 -0
  119. package/src/sap/ui/integration/library.js +5 -4
  120. package/src/sap/ui/integration/model/ContextModel.js +1 -1
  121. package/src/sap/ui/integration/model/ObservableModel.js +1 -1
  122. package/src/sap/ui/integration/model/PagingModelListBinding.js +1 -1
  123. package/src/sap/ui/integration/schemas/sap-card.json +66 -2
  124. package/src/sap/ui/integration/util/BaseFactory.js +1 -1
  125. package/src/sap/ui/integration/util/BindingHelper.js +1 -1
  126. package/src/sap/ui/integration/util/BindingResolver.js +1 -1
  127. package/src/sap/ui/integration/util/CardObserver.js +1 -1
  128. package/src/sap/ui/integration/util/ContentFactory.js +1 -2
  129. package/src/sap/ui/integration/util/CsrfTokenHandler.js +1 -1
  130. package/src/sap/ui/integration/util/DataProvider.js +6 -8
  131. package/src/sap/ui/integration/util/DataProviderFactory.js +1 -1
  132. package/src/sap/ui/integration/util/Destinations.js +1 -1
  133. package/src/sap/ui/integration/util/Duration.js +104 -0
  134. package/src/sap/ui/integration/util/ErrorHandler.js +1 -1
  135. package/src/sap/ui/integration/util/ExtensionDataProvider.js +1 -1
  136. package/src/sap/ui/integration/util/Form.js +11 -5
  137. package/src/sap/ui/integration/util/HeaderFactory.js +1 -1
  138. package/src/sap/ui/integration/util/JSONBindingHelper.js +1 -1
  139. package/src/sap/ui/integration/util/LoadingProvider.js +1 -1
  140. package/src/sap/ui/integration/util/Manifest.js +19 -4
  141. package/src/sap/ui/integration/util/ManifestResolver.js +5 -1
  142. package/src/sap/ui/integration/util/RequestDataProvider.js +6 -2
  143. package/src/sap/ui/integration/util/ServiceDataProvider.js +1 -1
  144. package/src/sap/ui/integration/util/ServiceManager.js +1 -1
  145. package/src/sap/ui/integration/util/SkeletonCard.js +1 -1
  146. package/src/sap/ui/integration/util/Utils.js +1 -1
  147. package/src/sap/ui/integration/util/Validators.js +1 -1
  148. package/src/sap/ui/integration/util/loadCardEditor.js +3 -2
  149. package/src/sap/ui/integration/widgets/Card.js +98 -33
  150. package/ui5.yaml +1 -1
package/.reuse/dep5 CHANGED
@@ -457,11 +457,6 @@ Comment: these files belong to: UI5 Web Components
457
457
 
458
458
  # Outside of Libraries:
459
459
 
460
- Files: src/testsuite-utils/src/main/resources/META-INF/less/less.js
461
- Copyright: 2009-2014, Alexis Sellier <self@cloudhead.net>
462
- License: Apache-2.0
463
- Comment: these files belong to: LESS
464
-
465
460
  Files: lib/jsdoc/ui5/plugin.js
466
461
  Copyright:
467
462
  2009-2023 SAP SE or an SAP affiliate company and OpenUI5 contributors
package/THIRDPARTY.txt CHANGED
@@ -460,19 +460,13 @@ Contained in: src/sap.ui.webc.main/src/sap/ui/webc/main/thirdparty/*.*
460
460
 
461
461
  Outside of Libraries:
462
462
 
463
- Component: LESS, version: 1.6.3
464
- Copyright: 2009-2014, Alexis Sellier <self@cloudhead.net>
465
- License: Apache-2.0
466
- License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
467
- Contained in: src/testsuite-utils/src/main/resources/META-INF/less/less.js
468
-
469
463
  Component: JSDoc 3, version: 3.6.7
470
464
  Copyright: 2011-present Michael Mathews micmath@gmail.com and the contributors to JSDoc
471
465
  License: Apache-2.0
472
466
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
473
467
  Contained in: lib/jsdoc/ui5/plugin.js
474
468
 
475
- Component: SAP Theming Base Content, version: 11.3.0
469
+ Component: SAP Theming Base Content, version: 11.4.2
476
470
  Copyright: SAP SE or an SAP affiliate company and Theming Base Content contributors
477
471
  License: Apache-2.0
478
472
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.ui.integration",
3
- "version": "1.115.1",
3
+ "version": "1.117.0",
4
4
  "description": "OpenUI5 UI Library sap.ui.integration",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "Apache-2.0",
@@ -14,10 +14,10 @@
14
14
  "url": "https://github.com/SAP/openui5.git"
15
15
  },
16
16
  "dependencies": {
17
- "@openui5/sap.ui.core": "1.115.1",
18
- "@openui5/sap.f": "1.115.1",
19
- "@openui5/sap.m": "1.115.1",
20
- "@openui5/sap.ui.unified": "1.115.1",
21
- "@openui5/sap.ui.layout": "1.115.1"
17
+ "@openui5/sap.ui.core": "1.117.0",
18
+ "@openui5/sap.f": "1.117.0",
19
+ "@openui5/sap.m": "1.117.0",
20
+ "@openui5/sap.ui.unified": "1.117.0",
21
+ "@openui5/sap.ui.layout": "1.117.0"
22
22
  }
23
23
  }
@@ -6,7 +6,7 @@
6
6
  <copyright>OpenUI5
7
7
  * (c) Copyright 2009-2023 SAP SE or an SAP affiliate company.
8
8
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
9
- <version>1.115.1</version>
9
+ <version>1.117.0</version>
10
10
 
11
11
  <documentation>SAPUI5 library with integration-related controls.</documentation>
12
12
 
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  * @extends sap.ui.core.Element
29
29
  *
30
30
  * @author SAP SE
31
- * @version 1.115.1
31
+ * @version 1.117.0
32
32
  *
33
33
  * @constructor
34
34
  * @public
@@ -20,7 +20,7 @@ sap.ui.define([
20
20
  * @extends sap.ui.base.ManagedObject
21
21
  *
22
22
  * @author SAP SE
23
- * @version 1.115.1
23
+ * @version 1.117.0
24
24
  *
25
25
  * @constructor
26
26
  * @public
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @extends sap.ui.base.ManagedObject
27
27
  *
28
28
  * @author SAP SE
29
- * @version 1.115.1
29
+ * @version 1.117.0
30
30
  *
31
31
  * @constructor
32
32
  * @public
@@ -119,7 +119,7 @@ sap.ui.define([
119
119
  this._oCard = null;
120
120
  };
121
121
 
122
- /**
122
+ /*
123
123
  * See generated JSDoc
124
124
  */
125
125
  Extension.prototype.setActions = function (aActions) {
@@ -226,7 +226,7 @@ sap.ui.define([
226
226
  * @private
227
227
  */
228
228
  Extension.prototype._setCard = function (oCard, oCardInterface) {
229
- this._oCard = oCard;
229
+ this._oCard = oCard; // @ui5-restricted sap.insights.CardExtension
230
230
  this._oCardInterface = oCardInterface;
231
231
  };
232
232
 
@@ -31,7 +31,7 @@ sap.ui.define([
31
31
  * @extends sap.ui.core.Element
32
32
  *
33
33
  * @author SAP SE
34
- * @version 1.115.1
34
+ * @version 1.117.0
35
35
  *
36
36
  * @constructor
37
37
  * @public
@@ -170,6 +170,20 @@ sap.ui.define([
170
170
  }
171
171
  },
172
172
 
173
+ /**
174
+ * Fired when the card is initially ready for the first time.
175
+ * Will not be fired for consecutive refreshes or data changes.
176
+ * @experimental since 1.116
177
+ */
178
+ cardInitialized: {
179
+ parameters: {
180
+ /**
181
+ * The card.
182
+ */
183
+ card: { type: "sap.ui.core.Control" }
184
+ }
185
+ },
186
+
173
187
  /**
174
188
  * Fired when a message from channels like navigator.serviceWorker is received.
175
189
  * @experimental since 1.91
@@ -37,7 +37,7 @@ sap.ui.define([
37
37
  * @extends sap.ui.integration.cards.BaseContent
38
38
  *
39
39
  * @author SAP SE
40
- * @version 1.115.1
40
+ * @version 1.117.0
41
41
  *
42
42
  * @constructor
43
43
  * @private
@@ -92,7 +92,7 @@ sap.ui.define([
92
92
  * @extends sap.ui.integration.cards.BaseContent
93
93
  *
94
94
  * @author SAP SE
95
- * @version 1.115.1
95
+ * @version 1.117.0
96
96
  *
97
97
  * @constructor
98
98
  * @private
@@ -38,7 +38,7 @@ sap.ui.define([
38
38
  * @extends sap.ui.integration.cards.BaseContent
39
39
  *
40
40
  * @author SAP SE
41
- * @version 1.115.1
41
+ * @version 1.117.0
42
42
  *
43
43
  * @constructor
44
44
  * @private
@@ -110,6 +110,10 @@ sap.ui.define([
110
110
  * @private
111
111
  */
112
112
  AnalyticsCloudContent.prototype.onAfterRendering = function () {
113
+ if (this.getAggregation("_blockingMessage")) {
114
+ return;
115
+ }
116
+
113
117
  this._createHighchart();
114
118
  };
115
119
 
@@ -69,7 +69,7 @@ sap.ui.define([
69
69
  * @extends sap.ui.core.Control
70
70
  *
71
71
  * @author SAP SE
72
- * @version 1.115.1
72
+ * @version 1.117.0
73
73
  *
74
74
  * @constructor
75
75
  * @private
@@ -358,7 +358,7 @@ sap.ui.define([
358
358
  * @param {string} sMessage The message.
359
359
  * @param {sap.ui.core.MessageType} sType Type of the message.
360
360
  * @private
361
- * @ui5-restricted
361
+ * @ui5-restricted sap.ui.integration
362
362
  */
363
363
  BaseContent.prototype.showMessage = function (sMessage, sType) {
364
364
  var oMessagePopup = this._getMessageContainer();
@@ -383,6 +383,17 @@ sap.ui.define([
383
383
  }
384
384
  };
385
385
 
386
+ /**
387
+ * Hides the message previously shown by showMessage.
388
+ *
389
+ * @private
390
+ * @ui5-restricted sap.ui.integration
391
+ */
392
+ BaseContent.prototype.hideMessage = function () {
393
+ var oMessagePopup = this._getMessageContainer();
394
+ oMessagePopup.destroyItems();
395
+ };
396
+
386
397
  BaseContent.prototype.showBlockingMessage = function (mSettings) {
387
398
  this.destroyAggregation("_blockingMessage");
388
399
  this.setAggregation("_blockingMessage", BlockingMessage.create(mSettings, this.getCardInstance()));
@@ -414,7 +425,7 @@ sap.ui.define([
414
425
  * Show 'No Data' blocking message in the content. If there is configuration in the manifest, it will be applied.
415
426
  * @protected
416
427
  * @param {object} oSettings 'No Data' settings
417
- * @param {sap.m.IllustratedMessageType} oSettings.illustrationType Illustration type
428
+ * @param {sap.m.IllustratedMessageType|string} oSettings.illustrationType Illustration type
418
429
  * @param {sap.m.IllustratedMessageSize} [oSettings.illustrationSize=sap.m.IllustratedMessageSize.Auto] Illustration size
419
430
  * @param {string} oSettings.title Title
420
431
  * @param {string} [oSettings.description] Description
@@ -422,9 +433,11 @@ sap.ui.define([
422
433
  BaseContent.prototype.showNoDataMessage = function (oSettings) {
423
434
  var oNoDataConfiguration = this.getNoDataConfiguration() || {};
424
435
 
436
+ oNoDataConfiguration = BindingResolver.resolveValue(oNoDataConfiguration, this.getCardInstance());
437
+
425
438
  var oMessageSettings = {
426
439
  type: CardBlockingMessageType.NoData,
427
- illustrationType: IllustratedMessageType[oNoDataConfiguration.type] || oSettings.illustrationType,
440
+ illustrationType: IllustratedMessageType[oNoDataConfiguration.type] || oNoDataConfiguration.type || oSettings.illustrationType,
428
441
  illustrationSize: IllustratedMessageSize[oNoDataConfiguration.size] || oSettings.illustrationSize,
429
442
  title: oNoDataConfiguration.title || oSettings.title,
430
443
  description: oNoDataConfiguration.description || oSettings.description
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @extends sap.ui.integration.cards.BaseContent
34
34
  *
35
35
  * @author SAP SE
36
- * @version 1.115.1
36
+ * @version 1.117.0
37
37
  *
38
38
  * @constructor
39
39
  * @private
@@ -79,7 +79,7 @@ sap.ui.define([
79
79
  * @extends sap.ui.integration.cards.BaseContent
80
80
  *
81
81
  * @author SAP SE
82
- * @version 1.115.1
82
+ * @version 1.117.0
83
83
  *
84
84
  * @constructor
85
85
  * @private
@@ -117,11 +117,20 @@ sap.ui.define([
117
117
  * @private
118
118
  * @param {int} iMonth The selected month, which month the calendar should display.
119
119
  */
120
+
120
121
  CalendarContent.prototype.changeMonth = function (iMonth) {
121
- this._oCalendar._getMonthPicker().setMonth(iMonth);
122
- this._oCalendar._selectMonth();
122
+ var oCal = this._oCalendar,
123
+ oSelectedDate = this._oCalendar.getSelectedDates()[0],
124
+ iSelectedYear,
125
+ oDateToFocus;
126
+
127
+ iSelectedYear = oSelectedDate.getStartDate().getFullYear();
128
+ oDateToFocus = new Date(iSelectedYear, iMonth, 1);
129
+
130
+ oCal.focusDate(oDateToFocus);
123
131
  this.invalidate();
124
- this.getCardInstance().fireStateChanged();
132
+ // This stateChange is needed when data (such as appointments or special dates) needs to be updated without having a delay like fetching data.
133
+ this.getCardInstance().scheduleFireStateChanged();
125
134
  };
126
135
 
127
136
  /**
@@ -140,11 +149,6 @@ sap.ui.define([
140
149
  oCal.destroySelectedDates();
141
150
  oCal.addAggregation('selectedDates', oDateRange);
142
151
  this._oFocusedDate = oCal.getSelectedDates()[0] ? oCal.getSelectedDates()[0] : null;
143
- oCal.addSelectedDate(oDateRange);
144
-
145
- oCal._getYearPicker().setYear(oDate.getFullYear());
146
- oCal._getYearPicker().fireSelect();
147
- oCal._selectYear();
148
152
 
149
153
  this.changeMonth(oDate.getMonth());
150
154
 
@@ -339,65 +343,37 @@ sap.ui.define([
339
343
  }
340
344
  };
341
345
 
342
- /**
343
- * @override
344
- */
345
- CalendarContent.prototype.getStaticConfiguration = function () {
346
- var oConfiguration = this.getParsedConfiguration(),
347
- aAppointments = this.getAppointments(),
348
- aSpecialDates = this._oCalendar.getSpecialDates(),
349
- sLegendId = this._oCalendar.getLegend(),
350
- oLegend = Core.byId(sLegendId),
351
- aLegendItems = oLegend.getItems(),
352
- aLegendAppointmentItems = oLegend.getAppointmentItems(),
353
- oFocusedDate = this._oCalendar.getSelectedDates()[0] ?
354
- this._oCalendar.getSelectedDates()[0].getStartDate() :
355
- null,
356
- oSelectededDate = this._oCalendar.getSelectedDates()[0] ? this._oCalendar.getSelectedDates()[0] : null,
357
- oSelectedDateEnd = oSelectededDate.getStartDate ? oSelectededDate.getStartDate().getTime() + 86400000 : null,
358
- oSelectedJsStartDate = oSelectededDate.getStartDate(),
359
- iMaxItems = oConfiguration.maxItems,
360
- iMaxLegendItems = oConfiguration.maxLegendItems,
361
- sNoItemsText = oConfiguration.noItemsText,
362
- aResolvedItems = [],
363
- aResolvedSpecialDates = [],
364
- aResolvedLegendItems = [],
365
- bMoreItems = false,
366
- sFocusedDateISO;
346
+ CalendarContent.prototype._getStaticConfigurationLegendItems = function (aLegendItems, aLegendAppointmentItems, oConfiguration, oLegend) {
347
+ var aResolvedLegendItems = [];
348
+ aLegendItems.forEach(function (oItem, i) {
349
+ var aTemplateKeys = Object.keys(oConfiguration.legendItem.template),
350
+ singleAssembledItem = {};
367
351
 
368
- sFocusedDateISO = oFocusedDate ? oFocusedDate.toISOString() : null;
369
- sFocusedDateISO = sFocusedDateISO ? sFocusedDateISO : oConfiguration.date;
352
+ aTemplateKeys.forEach(function(sKey) {
353
+ var oBindingInfo = BindingHelper.prependRelativePaths(oConfiguration.legendItem.template[sKey], oLegend.getBindingPath("items") + "/" + i);
370
354
 
371
- aAppointments.forEach(function (oItem, i) {
372
- var oStartDate = oItem.getStartDate(),
373
- oEndDate = oItem.getEndDate(),
374
- aTemplateKeys,
375
- singleAssembledItem,
376
- bAppInDaY = oStartDate >= oSelectedJsStartDate && oStartDate <= oSelectedDateEnd,
377
- bAppEndsInDay = oEndDate >= oSelectedJsStartDate && oEndDate <= oSelectedDateEnd,
378
- bDayInApp = oStartDate <= oSelectedJsStartDate && oEndDate > oSelectedDateEnd,
379
- bIncludeAppointment = bAppInDaY || bAppEndsInDay || bDayInApp;
355
+ singleAssembledItem[sKey] = BindingResolver.resolveValue(oBindingInfo, this);
356
+ }.bind(this));
357
+ aResolvedLegendItems.push(singleAssembledItem);
358
+ }.bind(this));
380
359
 
381
- if (bIncludeAppointment) {
382
- aTemplateKeys = Object.keys(oConfiguration.item.template);
360
+ aLegendAppointmentItems.forEach(function (oItem, i) {
361
+ var aTemplateKeys = Object.keys(oConfiguration.legendItem.template),
383
362
  singleAssembledItem = {};
384
363
 
385
- aTemplateKeys.forEach(function(sKey) {
386
- var oBindingInfo = BindingHelper.prependRelativePaths(oConfiguration.item.template[sKey], this.getBindingPath("appointments") + "/" + i);
364
+ aTemplateKeys.forEach(function(sKey) {
365
+ var oBindingInfo = BindingHelper.prependRelativePaths(oConfiguration.legendItem.template[sKey], oLegend.getBindingPath("items") + "/" + i);
387
366
 
388
- singleAssembledItem[sKey] = BindingResolver.resolveValue(oBindingInfo, this);
389
- }.bind(this));
390
- singleAssembledItem.startDate = new Date(singleAssembledItem.startDate).toISOString();
391
- if (singleAssembledItem.endDate) {
392
- singleAssembledItem.endDate = new Date(singleAssembledItem.endDate).toISOString();
393
- }
394
- aResolvedItems.push(singleAssembledItem);
395
- if (aResolvedItems.length > oConfiguration.maxItems) {
396
- bMoreItems = true;
397
- }
398
- }
367
+ singleAssembledItem[sKey] = BindingResolver.resolveValue(oBindingInfo, this);
368
+ }.bind(this));
369
+ aResolvedLegendItems.push(singleAssembledItem);
399
370
  }.bind(this));
400
371
 
372
+ return aResolvedLegendItems;
373
+ };
374
+
375
+ CalendarContent.prototype._getStaticConfigurationSpecialDates = function (aSpecialDates, oConfiguration) {
376
+ var aResolvedSpecialDates = [];
401
377
  aSpecialDates.forEach(function (oItem, i) {
402
378
  var oCal = this._oCalendar,
403
379
  oStartDate = oItem.getStartDate(),
@@ -433,32 +409,88 @@ sap.ui.define([
433
409
  aResolvedSpecialDates.push(oResolvedDate);
434
410
  }
435
411
  }.bind(this));
412
+ return aResolvedSpecialDates;
413
+ };
436
414
 
437
- aLegendItems.forEach(function (oItem, i) {
438
- var aTemplateKeys = Object.keys(oConfiguration.legendItem.template),
415
+ CalendarContent.prototype._getStaticConfigurationAppointments = function (aAppointments, oSelectedJSStartDate, oSelectedDateEnd, oConfiguration) {
416
+ var aResolvedItems = [],
417
+ bMoreItems = false;
418
+
419
+ aAppointments.forEach(function (oItem, i) {
420
+ var oStartDate = oItem.getStartDate(),
421
+ oEndDate = oItem.getEndDate(),
422
+ aTemplateKeys,
423
+ singleAssembledItem,
424
+ bAppInDay = oStartDate >= oSelectedJSStartDate && oStartDate <= oSelectedDateEnd,
425
+ bAppEndsInDay = oEndDate >= oSelectedJSStartDate && oEndDate <= oSelectedDateEnd,
426
+ bDayInApp = oStartDate <= oSelectedJSStartDate && oEndDate > oSelectedDateEnd,
427
+ bIncludeAppointment = bAppInDay || bAppEndsInDay || bDayInApp;
428
+
429
+ if (bIncludeAppointment) {
430
+ aTemplateKeys = Object.keys(oConfiguration.item.template);
439
431
  singleAssembledItem = {};
440
432
 
441
- aTemplateKeys.forEach(function(sKey) {
442
- var oBindingInfo = BindingHelper.prependRelativePaths(oConfiguration.legendItem.template[sKey], oLegend.getBindingPath("items") + "/" + i);
433
+ aTemplateKeys.forEach(function(sKey) {
434
+ var oBindingInfo = BindingHelper.prependRelativePaths(oConfiguration.item.template[sKey], this.getBindingPath("appointments") + "/" + i);
443
435
 
444
- singleAssembledItem[sKey] = BindingResolver.resolveValue(oBindingInfo, this);
445
- }.bind(this));
446
- aResolvedLegendItems.push(singleAssembledItem);
436
+ singleAssembledItem[sKey] = BindingResolver.resolveValue(oBindingInfo, this);
437
+ }.bind(this));
438
+ singleAssembledItem.startDate = new Date(singleAssembledItem.startDate).toISOString();
439
+ if (singleAssembledItem.endDate) {
440
+ singleAssembledItem.endDate = new Date(singleAssembledItem.endDate).toISOString();
441
+ }
442
+ aResolvedItems.push(singleAssembledItem);
443
+ if (aResolvedItems.length > oConfiguration.maxItems) {
444
+ bMoreItems = true;
445
+ }
446
+ }
447
447
  }.bind(this));
448
448
 
449
- aLegendAppointmentItems.forEach(function (oItem, i) {
450
- var aTemplateKeys = Object.keys(oConfiguration.legendItem.template),
451
- singleAssembledItem = {};
449
+ return {
450
+ resolvedItems: aResolvedItems,
451
+ moreItems: bMoreItems
452
+ };
453
+ };
452
454
 
453
- aTemplateKeys.forEach(function(sKey) {
454
- var oBindingInfo = BindingHelper.prependRelativePaths(oConfiguration.legendItem.template[sKey], oLegend.getBindingPath("items") + "/" + i);
455
+ /**
456
+ * @override
457
+ */
458
+ CalendarContent.prototype.getStaticConfiguration = function () {
459
+ var oConfiguration = this.getParsedConfiguration(),
460
+ aAppointments = this.getAppointments(),
461
+ aSpecialDates = this._oCalendar.getSpecialDates(),
462
+ sLegendId = this._oCalendar.getLegend(),
463
+ oLegend = Core.byId(sLegendId),
464
+ aLegendItems = oLegend.getItems(),
465
+ aLegendAppointmentItems = oLegend.getAppointmentItems(),
466
+ oFocusedDate = this._oCalendar.getSelectedDates()[0] ?
467
+ this._oCalendar.getSelectedDates()[0].getStartDate() :
468
+ null,
469
+ iMillisecondsInDay = 86400000,
470
+ oSelectededDate = this._oCalendar.getSelectedDates()[0] ? this._oCalendar.getSelectedDates()[0] : null,
471
+ oSelectedDateEnd = oSelectededDate.getStartDate ? oSelectededDate.getStartDate().getTime() + iMillisecondsInDay : null,
472
+ oSelectedJSStartDate = oSelectededDate.getStartDate(),
473
+ iMaxItems = oConfiguration.maxItems,
474
+ iMaxLegendItems = oConfiguration.maxLegendItems,
475
+ sNoItemsText = oConfiguration.noItemsText,
476
+ bMoreItems = false,
477
+ oStaticConfiguration = {},
478
+ aResolvedAndMoreItems,
479
+ aResolvedSpecialDates,
480
+ aResolvedLegendItems,
481
+ aResolvedItems,
482
+ sFocusedDateISO;
455
483
 
456
- singleAssembledItem[sKey] = BindingResolver.resolveValue(oBindingInfo, this);
457
- }.bind(this));
458
- aResolvedLegendItems.push(singleAssembledItem);
459
- }.bind(this));
484
+ sFocusedDateISO = oFocusedDate ? oFocusedDate.toISOString() : null;
485
+ sFocusedDateISO = sFocusedDateISO ? sFocusedDateISO : oConfiguration.date;
486
+
487
+ aResolvedAndMoreItems = this._getStaticConfigurationAppointments(aAppointments, oSelectedJSStartDate, oSelectedDateEnd, oConfiguration);
488
+ aResolvedItems = aResolvedAndMoreItems.resolvedItems;
489
+ bMoreItems = aResolvedAndMoreItems.moreItems;
490
+
491
+ aResolvedSpecialDates = this._getStaticConfigurationSpecialDates(aSpecialDates, oConfiguration);
460
492
 
461
- var oStaticConfiguration = {};
493
+ aResolvedLegendItems = this._getStaticConfigurationLegendItems(aLegendItems, aLegendAppointmentItems, oConfiguration, oLegend);
462
494
 
463
495
  oStaticConfiguration.items = aResolvedItems;
464
496
  oStaticConfiguration.specialDates = aResolvedSpecialDates;
@@ -875,7 +907,7 @@ sap.ui.define([
875
907
  oCalLastRenderedDate;
876
908
 
877
909
  oCalLastDateInMonth.setDate(oCalLastDateInMonth.getDate() - 1); // move a day backwards
878
- oCalLastRenderedDate = CalendarUtils._getFirstDateOfWeek(oCalLastDateInMonth); // get first date of the last displayed week
910
+ oCalLastRenderedDate = CalendarUtils._getFirstDateOfWeek(oCalLastDateInMonth);
879
911
  oCalLastRenderedDate.setDate(oCalLastRenderedDate.getDate() + 6); // move to the end of the week
880
912
 
881
913
  oCardActions.fireAction(this, "MonthChange", {
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @extends sap.ui.integration.cards.BaseContent
36
36
  *
37
37
  * @author SAP SE
38
- * @version 1.115.1
38
+ * @version 1.117.0
39
39
  *
40
40
  * @experimental
41
41
  * @constructor
@@ -31,7 +31,7 @@ sap.ui.define([
31
31
  * @extends sap.ui.core.Control
32
32
  *
33
33
  * @author SAP SE
34
- * @version 1.115.1
34
+ * @version 1.117.0
35
35
  *
36
36
  * @constructor
37
37
  * @ui5-restricted
@@ -13,7 +13,8 @@ sap.ui.define([
13
13
  "sap/ui/integration/util/BindingHelper",
14
14
  "sap/ui/integration/util/BindingResolver",
15
15
  "sap/ui/integration/util/LoadingProvider",
16
- "sap/ui/integration/util/Utils"
16
+ "sap/ui/integration/util/Utils",
17
+ "sap/ui/integration/formatters/IconFormatter"
17
18
  ], function (
18
19
  Core,
19
20
  JSONModel,
@@ -24,7 +25,8 @@ sap.ui.define([
24
25
  BindingHelper,
25
26
  BindingResolver,
26
27
  LoadingProvider,
27
- Utils
28
+ Utils,
29
+ IconFormatter
28
30
  ) {
29
31
  "use strict";
30
32
 
@@ -42,7 +44,7 @@ sap.ui.define([
42
44
  * @extends sap.f.cards.Header
43
45
  *
44
46
  * @author SAP SE
45
- * @version 1.115.1
47
+ * @version 1.117.0
46
48
  *
47
49
  * @constructor
48
50
  * @private
@@ -66,6 +68,7 @@ sap.ui.define([
66
68
 
67
69
  if (mConfiguration.status && mConfiguration.status.text && !mConfiguration.status.text.format) {
68
70
  mSettings.statusText = mConfiguration.status.text;
71
+ mSettings.statusVisible = mConfiguration.status.visible;
69
72
  }
70
73
 
71
74
  if (mConfiguration.icon) {
@@ -91,6 +94,7 @@ sap.ui.define([
91
94
  FHeader.call(this, sId, mSettings);
92
95
 
93
96
  this._oConfiguration = mConfiguration;
97
+ this._oIconFormatter = oIconFormatter;
94
98
  },
95
99
 
96
100
  metadata: {
@@ -150,6 +154,13 @@ sap.ui.define([
150
154
  }
151
155
  };
152
156
 
157
+ /**
158
+ * @override
159
+ */
160
+ Header.prototype.shouldShowIcon = function () {
161
+ return this.getIconVisible() && this.getIconSrc() !== IconFormatter.SRC_FOR_HIDDEN_ICON;
162
+ };
163
+
153
164
  /**
154
165
  * @override
155
166
  */
@@ -223,6 +234,10 @@ sap.ui.define([
223
234
  oConfiguration.status.text = oBindingInfo;
224
235
  }
225
236
 
237
+ if (oConfiguration.icon && oConfiguration.icon.src) {
238
+ oConfiguration.icon.src = this._oIconFormatter.formatSrc(BindingResolver.resolveValue(oConfiguration.icon.src, this));
239
+ }
240
+
226
241
  return oConfiguration;
227
242
  };
228
243
 
@@ -70,7 +70,7 @@ sap.ui.define([
70
70
  * @extends sap.ui.integration.cards.BaseListContent
71
71
  *
72
72
  * @author SAP SE
73
- * @version 1.115.1
73
+ * @version 1.117.0
74
74
  *
75
75
  * @constructor
76
76
  * @private
@@ -191,7 +191,13 @@ sap.ui.define([
191
191
  items: aResolvedItems
192
192
  };
193
193
  } else {
194
- aResolvedItems.push(BindingResolver.resolveValue(oConfiguration.item, this, oItem.getBindingContext().getPath()));
194
+ var oResolvedItem = BindingResolver.resolveValue(oConfiguration.item, this, oItem.getBindingContext().getPath());
195
+
196
+ if (oResolvedItem.icon && oResolvedItem.icon.src) {
197
+ oResolvedItem.icon.src = this._oIconFormatter.formatSrc(oResolvedItem.icon.src);
198
+ }
199
+
200
+ aResolvedItems.push(oResolvedItem);
195
201
  }
196
202
  }.bind(this));
197
203
 
@@ -294,6 +300,7 @@ sap.ui.define([
294
300
  mSettings = {
295
301
  title: mItem.title && (mItem.title.value || mItem.title),
296
302
  description: mItem.description && (mItem.description.value || mItem.description),
303
+ descriptionVisible: mItem.description ? mItem.description.visible : undefined,
297
304
  highlight: mItem.highlight,
298
305
  highlightText: mItem.highlightText,
299
306
  info: mItem.info && mItem.info.value,
@@ -390,7 +397,8 @@ sap.ui.define([
390
397
  chart: oChart.getChart(),
391
398
  colorsLoad: function () {
392
399
  this.fireEvent(LEGEND_COLORS_LOAD);
393
- }.bind(this)
400
+ }.bind(this),
401
+ visible: oChartSettings.visible
394
402
  });
395
403
 
396
404
  oLegend.initItemsTitles(oChartSettings.bars, this.getBindingContext().getPath());
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @extends sap.f.cards.NumericHeader
36
36
  *
37
37
  * @author SAP SE
38
- * @version 1.115.1
38
+ * @version 1.117.0
39
39
  *
40
40
  * @constructor
41
41
  * @private
@@ -59,6 +59,7 @@ sap.ui.define([
59
59
 
60
60
  if (mConfiguration.status && mConfiguration.status.text && !mConfiguration.status.text.format) {
61
61
  mSettings.statusText = mConfiguration.status.text;
62
+ mSettings.statusVisible = mConfiguration.status.visible;
62
63
  }
63
64
 
64
65
  extend(mSettings, {