@openui5/sap.ui.integration 1.92.0 → 1.93.3

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 (172) hide show
  1. package/.reuse/dep5 +5 -0
  2. package/THIRDPARTY.txt +10 -1
  3. package/package.json +3 -3
  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 +1 -1
  8. package/src/sap/ui/integration/Host.js +16 -18
  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 +1 -1
  12. package/src/sap/ui/integration/cards/BaseContent.js +2 -2
  13. package/src/sap/ui/integration/cards/BaseListContent.js +1 -1
  14. package/src/sap/ui/integration/cards/CalendarContent.js +1 -1
  15. package/src/sap/ui/integration/cards/ComponentContent.js +21 -10
  16. package/src/sap/ui/integration/cards/Filter.js +1 -1
  17. package/src/sap/ui/integration/cards/Footer.js +126 -0
  18. package/src/sap/ui/integration/cards/Header.js +1 -1
  19. package/src/sap/ui/integration/cards/ListContent.js +19 -8
  20. package/src/sap/ui/integration/cards/ListContentRenderer.js +19 -9
  21. package/src/sap/ui/integration/cards/NumericHeader.js +1 -1
  22. package/src/sap/ui/integration/cards/ObjectContent.js +1 -1
  23. package/src/sap/ui/integration/cards/TableContent.js +1 -1
  24. package/src/sap/ui/integration/cards/TimelineContent.js +1 -1
  25. package/src/sap/ui/integration/cards/WebPageContent.js +1 -1
  26. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputChoiceSet.js +1 -1
  27. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputDate.js +1 -1
  28. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputNumber.js +1 -1
  29. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputText.js +1 -1
  30. package/src/sap/ui/integration/cards/adaptivecards/elements/UI5InputToggle.js +1 -1
  31. package/src/sap/ui/integration/controls/ActionsStrip.js +184 -0
  32. package/src/sap/ui/integration/controls/ActionsToolbar.js +1 -1
  33. package/src/sap/ui/integration/controls/ListContentItem.js +3 -1
  34. package/src/sap/ui/integration/controls/ListContentItemRenderer.js +93 -3
  35. package/src/sap/ui/integration/controls/Microchart.js +1 -1
  36. package/src/sap/ui/integration/controls/MicrochartLegend.js +1 -1
  37. package/src/sap/ui/integration/designtime/baseEditor/BaseEditor.js +2 -2
  38. package/src/sap/ui/integration/designtime/baseEditor/PropertyEditor.js +5 -1
  39. package/src/sap/ui/integration/designtime/baseEditor/PropertyEditors.js +1 -1
  40. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/BasePropertyEditor.js +8 -2
  41. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/PropertyEditorFactory.js +5 -3
  42. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/arrayEditor/ArrayEditor.js +2 -2
  43. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/booleanEditor/BooleanEditor.js +1 -1
  44. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/dateEditor/DateEditor.js +1 -1
  45. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/dateTimeEditor/DateTimeEditor.js +1 -1
  46. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/enumStringEditor/EnumStringEditor.js +1 -1
  47. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/groupEditor/GroupEditor.js +1 -1
  48. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/iconEditor/IconEditor.js +1 -1
  49. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/iconEditor/IsInIconPool.validator.js +1 -1
  50. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/integerEditor/IntegerEditor.js +1 -1
  51. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/jsonEditor/JsonEditor.js +1 -1
  52. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/listEditor/ListEditor.js +1 -1
  53. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/mapEditor/MapEditor.js +1 -1
  54. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/numberEditor/NumberEditor.js +1 -1
  55. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/selectEditor/SelectEditor.js +1 -1
  56. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/separatorEditor/SeparatorEditor.js +1 -1
  57. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/stringEditor/StringEditor.js +1 -1
  58. package/src/sap/ui/integration/designtime/baseEditor/propertyEditor/textAreaEditor/TextAreaEditor.js +1 -1
  59. package/src/sap/ui/integration/designtime/baseEditor/util/binding/ObjectBinding.js +1 -1
  60. package/src/sap/ui/integration/designtime/baseEditor/util/unset.js +1 -1
  61. package/src/sap/ui/integration/designtime/baseEditor/validator/IsBoolean.js +1 -1
  62. package/src/sap/ui/integration/designtime/baseEditor/validator/IsDate.js +1 -1
  63. package/src/sap/ui/integration/designtime/baseEditor/validator/IsInteger.js +1 -1
  64. package/src/sap/ui/integration/designtime/baseEditor/validator/IsNumber.js +1 -1
  65. package/src/sap/ui/integration/designtime/baseEditor/validator/IsSelectedKey.js +1 -1
  66. package/src/sap/ui/integration/designtime/baseEditor/validator/IsStringList.js +1 -1
  67. package/src/sap/ui/integration/designtime/baseEditor/validator/IsUniqueKey.js +1 -1
  68. package/src/sap/ui/integration/designtime/baseEditor/validator/IsUniqueList.js +1 -1
  69. package/src/sap/ui/integration/designtime/baseEditor/validator/IsValidBinding.js +1 -1
  70. package/src/sap/ui/integration/designtime/baseEditor/validator/MaxLength.js +1 -1
  71. package/src/sap/ui/integration/designtime/baseEditor/validator/NotABinding.js +1 -1
  72. package/src/sap/ui/integration/designtime/baseEditor/validator/ValidatorRegistry.js +1 -1
  73. package/src/sap/ui/integration/designtime/cardEditor/config/AppConfig.js +0 -69
  74. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/complexMapEditor/ComplexMapEditor.js +1 -1
  75. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/destinationsEditor/DestinationsEditor.js +1 -1
  76. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/iconEditor/IconEditor.js +1 -1
  77. package/src/sap/ui/integration/designtime/cardEditor/propertyEditor/parametersEditor/ParametersEditor.js +1 -1
  78. package/src/sap/ui/integration/designtime/editor/CardEditor.js +36 -14
  79. package/src/sap/ui/integration/designtime/editor/CardPreview.js +1 -1
  80. package/src/sap/ui/integration/designtime/editor/CardResourceBundles.js +1 -1
  81. package/src/sap/ui/integration/designtime/editor/fields/BaseField.js +27 -15
  82. package/src/sap/ui/integration/designtime/editor/fields/BooleanField.js +1 -1
  83. package/src/sap/ui/integration/designtime/editor/fields/DateField.js +1 -1
  84. package/src/sap/ui/integration/designtime/editor/fields/DateTimeField.js +1 -1
  85. package/src/sap/ui/integration/designtime/editor/fields/DestinationField.js +1 -1
  86. package/src/sap/ui/integration/designtime/editor/fields/IntegerField.js +3 -2
  87. package/src/sap/ui/integration/designtime/editor/fields/ListField.js +60 -60
  88. package/src/sap/ui/integration/designtime/editor/fields/NumberField.js +3 -2
  89. package/src/sap/ui/integration/designtime/editor/fields/Settings.js +1 -1
  90. package/src/sap/ui/integration/designtime/editor/fields/StringField.js +3 -4
  91. package/src/sap/ui/integration/designtime/editor/fields/viz/ColorSelect.js +2 -1
  92. package/src/sap/ui/integration/designtime/editor/fields/viz/IconSelect.js +1 -1
  93. package/src/sap/ui/integration/designtime/editor/fields/viz/ShapeSelect.js +1 -1
  94. package/src/sap/ui/integration/library.js +4 -4
  95. package/src/sap/ui/integration/messagebundle_ar.properties +69 -55
  96. package/src/sap/ui/integration/messagebundle_bg.properties +69 -55
  97. package/src/sap/ui/integration/messagebundle_ca.properties +69 -55
  98. package/src/sap/ui/integration/messagebundle_cs.properties +69 -55
  99. package/src/sap/ui/integration/messagebundle_cy.properties +69 -55
  100. package/src/sap/ui/integration/messagebundle_da.properties +69 -55
  101. package/src/sap/ui/integration/messagebundle_de.properties +69 -55
  102. package/src/sap/ui/integration/messagebundle_el.properties +69 -55
  103. package/src/sap/ui/integration/messagebundle_en.properties +69 -55
  104. package/src/sap/ui/integration/messagebundle_en_GB.properties +69 -55
  105. package/src/sap/ui/integration/messagebundle_en_US_sappsd.properties +69 -55
  106. package/src/sap/ui/integration/messagebundle_en_US_saptrc.properties +69 -55
  107. package/src/sap/ui/integration/messagebundle_es.properties +69 -55
  108. package/src/sap/ui/integration/messagebundle_es_MX.properties +69 -55
  109. package/src/sap/ui/integration/messagebundle_et.properties +69 -55
  110. package/src/sap/ui/integration/messagebundle_fi.properties +69 -55
  111. package/src/sap/ui/integration/messagebundle_fr.properties +69 -55
  112. package/src/sap/ui/integration/messagebundle_fr_CA.properties +69 -55
  113. package/src/sap/ui/integration/messagebundle_hi.properties +69 -55
  114. package/src/sap/ui/integration/messagebundle_hr.properties +69 -55
  115. package/src/sap/ui/integration/messagebundle_hu.properties +69 -55
  116. package/src/sap/ui/integration/messagebundle_id.properties +69 -55
  117. package/src/sap/ui/integration/messagebundle_it.properties +69 -55
  118. package/src/sap/ui/integration/messagebundle_iw.properties +69 -55
  119. package/src/sap/ui/integration/messagebundle_ja.properties +69 -55
  120. package/src/sap/ui/integration/messagebundle_kk.properties +69 -55
  121. package/src/sap/ui/integration/messagebundle_ko.properties +69 -55
  122. package/src/sap/ui/integration/messagebundle_lt.properties +69 -55
  123. package/src/sap/ui/integration/messagebundle_lv.properties +69 -55
  124. package/src/sap/ui/integration/messagebundle_ms.properties +69 -55
  125. package/src/sap/ui/integration/messagebundle_nl.properties +69 -55
  126. package/src/sap/ui/integration/messagebundle_no.properties +69 -55
  127. package/src/sap/ui/integration/messagebundle_pl.properties +69 -55
  128. package/src/sap/ui/integration/messagebundle_pt.properties +69 -55
  129. package/src/sap/ui/integration/messagebundle_pt_PT.properties +69 -55
  130. package/src/sap/ui/integration/messagebundle_ro.properties +69 -55
  131. package/src/sap/ui/integration/messagebundle_ru.properties +69 -55
  132. package/src/sap/ui/integration/messagebundle_sh.properties +69 -55
  133. package/src/sap/ui/integration/messagebundle_sk.properties +69 -55
  134. package/src/sap/ui/integration/messagebundle_sl.properties +69 -55
  135. package/src/sap/ui/integration/messagebundle_sv.properties +69 -55
  136. package/src/sap/ui/integration/messagebundle_th.properties +69 -55
  137. package/src/sap/ui/integration/messagebundle_tr.properties +69 -55
  138. package/src/sap/ui/integration/messagebundle_uk.properties +69 -55
  139. package/src/sap/ui/integration/messagebundle_vi.properties +69 -55
  140. package/src/sap/ui/integration/messagebundle_zh_CN.properties +69 -55
  141. package/src/sap/ui/integration/messagebundle_zh_TW.properties +69 -55
  142. package/src/sap/ui/integration/model/ContextModel.js +1 -1
  143. package/src/sap/ui/integration/model/ObservableModel.js +1 -1
  144. package/src/sap/ui/integration/schemas/sap-card.json +248 -155
  145. package/src/sap/ui/integration/themes/base/CalendarContent.less +4 -2
  146. package/src/sap/ui/integration/themes/base/ListContentItem.less +92 -19
  147. package/src/sap/ui/integration/themes/base/Microchart.less +1 -1
  148. package/src/sap/ui/integration/thirdparty/webcomponents/bundle.es5.js +1 -1
  149. package/src/sap/ui/integration/thirdparty/webcomponents/bundle.esm.js +1 -1
  150. package/src/sap/ui/integration/util/BaseFactory.js +1 -1
  151. package/src/sap/ui/integration/util/BindingHelper.js +1 -1
  152. package/src/sap/ui/integration/util/BindingResolver.js +2 -2
  153. package/src/sap/ui/integration/util/CacheAndRequestDataProvider.js +12 -7
  154. package/src/sap/ui/integration/util/CardActions.js +5 -2
  155. package/src/sap/ui/integration/util/CardObserver.js +1 -1
  156. package/src/sap/ui/integration/util/ContentFactory.js +1 -1
  157. package/src/sap/ui/integration/util/DataProvider.js +1 -1
  158. package/src/sap/ui/integration/util/DataProviderFactory.js +1 -1
  159. package/src/sap/ui/integration/util/Destinations.js +1 -1
  160. package/src/sap/ui/integration/util/ExtensionDataProvider.js +1 -1
  161. package/src/sap/ui/integration/util/FilterBarFactory.js +1 -1
  162. package/src/sap/ui/integration/util/HeaderFactory.js +1 -1
  163. package/src/sap/ui/integration/util/JSONBindingHelper.js +1 -1
  164. package/src/sap/ui/integration/util/LoadingProvider.js +6 -4
  165. package/src/sap/ui/integration/util/Manifest.js +1 -1
  166. package/src/sap/ui/integration/util/RequestDataProvider.js +1 -1
  167. package/src/sap/ui/integration/util/ServiceDataProvider.js +1 -1
  168. package/src/sap/ui/integration/util/ServiceManager.js +1 -1
  169. package/src/sap/ui/integration/util/Utils.js +1 -1
  170. package/src/sap/ui/integration/widgets/Card.js +20 -15
  171. package/src/sap/ui/integration/widgets/CardRenderer.js +12 -8
  172. package/src/sap/ui/integration/util/FooterFactory.js +0 -114
@@ -5,6 +5,7 @@
5
5
  */
6
6
  sap.ui.define([
7
7
  "./CardRenderer",
8
+ "../cards/Footer",
8
9
  "../controls/ActionsToolbar",
9
10
  "sap/ui/base/Interface",
10
11
  "sap/ui/thirdparty/jquery",
@@ -14,7 +15,6 @@ sap.ui.define([
14
15
  "sap/base/Log",
15
16
  "sap/base/util/merge",
16
17
  "sap/base/util/deepEqual",
17
- "sap/base/util/isPlainObject",
18
18
  "sap/ui/integration/util/DataProviderFactory",
19
19
  "sap/m/HBox",
20
20
  "sap/ui/core/Icon",
@@ -30,7 +30,6 @@ sap.ui.define([
30
30
  "sap/ui/integration/util/Destinations",
31
31
  "sap/ui/integration/util/LoadingProvider",
32
32
  "sap/ui/integration/util/HeaderFactory",
33
- "sap/ui/integration/util/FooterFactory",
34
33
  "sap/ui/integration/util/ContentFactory",
35
34
  "sap/ui/integration/util/BindingResolver",
36
35
  "sap/ui/integration/formatters/IconFormatter",
@@ -39,6 +38,7 @@ sap.ui.define([
39
38
  "sap/ui/integration/util/CardObserver"
40
39
  ], function (
41
40
  CardRenderer,
41
+ Footer,
42
42
  ActionsToolbar,
43
43
  Interface,
44
44
  jQuery,
@@ -48,7 +48,6 @@ sap.ui.define([
48
48
  Log,
49
49
  merge,
50
50
  deepEqual,
51
- isPlainObject,
52
51
  DataProviderFactory,
53
52
  HBox,
54
53
  Icon,
@@ -64,7 +63,6 @@ sap.ui.define([
64
63
  Destinations,
65
64
  LoadingProvider,
66
65
  HeaderFactory,
67
- FooterFactory,
68
66
  ContentFactory,
69
67
  BindingResolver,
70
68
  IconFormatter,
@@ -80,8 +78,8 @@ sap.ui.define([
80
78
  DATA: "/sap.card/data",
81
79
  HEADER: "/sap.card/header",
82
80
  HEADER_POSITION: "/sap.card/headerPosition",
83
- FOOTER: "/sap.card/footer",
84
81
  CONTENT: "/sap.card/content",
82
+ FOOTER: "/sap.card/footer",
85
83
  SERVICES: "/sap.ui5/services",
86
84
  APP_TYPE: "/sap.app/type",
87
85
  PARAMS: "/sap.card/configuration/parameters",
@@ -161,7 +159,7 @@ sap.ui.define([
161
159
  * @extends sap.f.CardBase
162
160
  *
163
161
  * @author SAP SE
164
- * @version 1.92.0
162
+ * @version 1.93.3
165
163
  * @public
166
164
  * @constructor
167
165
  * @see {@link topic:5b46b03f024542ba802d99d67bc1a3f4 Cards}
@@ -385,6 +383,7 @@ sap.ui.define([
385
383
  CardBase.prototype.init.call(this);
386
384
 
387
385
  this.setAggregation("_loadingProvider", new LoadingProvider());
386
+ this.setModel(new JSONModel()); // always create a default model to isolate the card from a propagated default model
388
387
  this.setModel(new JSONModel(), "parameters");
389
388
  this.setModel(new JSONModel(), "filters");
390
389
  this.setModel(new ContextModel(), "context");
@@ -403,14 +402,18 @@ sap.ui.define([
403
402
  * @experimental since 1.79
404
403
  * @public
405
404
  * @author SAP SE
406
- * @version 1.92.0
405
+ * @version 1.93.3
406
+ * @borrows sap.ui.integration.widgets.Card#getDomRef as getDomRef
407
+ * @borrows sap.ui.integration.widgets.Card#setVisible as setVisible
407
408
  * @borrows sap.ui.integration.widgets.Card#getParameters as getParameters
408
409
  * @borrows sap.ui.integration.widgets.Card#getCombinedParameters as getCombinedParameters
409
410
  * @borrows sap.ui.integration.widgets.Card#getManifestEntry as getManifestEntry
410
411
  * @borrows sap.ui.integration.widgets.Card#resolveDestination as resolveDestination
411
412
  * @borrows sap.ui.integration.widgets.Card#request as request
413
+ * @borrows sap.ui.integration.widgets.Card#refresh as refresh
412
414
  * @borrows sap.ui.integration.widgets.Card#showMessage as showMessage
413
415
  * @borrows sap.ui.integration.widgets.Card#getBaseUrl as getBaseUrl
416
+ * @borrows sap.ui.integration.widgets.Card#getRuntimeUrl as getRuntimeUrl
414
417
  * @borrows sap.ui.integration.widgets.Card#getTranslatedText as getTranslatedText
415
418
  * @borrows sap.ui.integration.widgets.Card#getModel as getModel
416
419
  * @borrows sap.ui.integration.widgets.Card#triggerAction as triggerAction
@@ -424,13 +427,17 @@ sap.ui.define([
424
427
  * @borrows sap.ui.integration.widgets.Card#hideLoadingPlaceholders as hideLoadingPlaceholders
425
428
  */
426
429
  this._oLimitedInterface = new Interface(this, [
430
+ "getDomRef",
431
+ "setVisible",
427
432
  "getParameters",
428
433
  "getCombinedParameters",
429
434
  "getManifestEntry",
430
435
  "resolveDestination",
431
436
  "request",
437
+ "refresh",
432
438
  "showMessage",
433
439
  "getBaseUrl",
440
+ "getRuntimeUrl",
434
441
  "getTranslatedText",
435
442
  "getModel",
436
443
  "triggerAction",
@@ -1437,11 +1444,6 @@ sap.ui.define([
1437
1444
  this.setAggregation("_filterBar", oFilterBar);
1438
1445
  };
1439
1446
 
1440
- /**
1441
- * Lazily load and create a footer
1442
- *
1443
- * @private
1444
- */
1445
1447
  Card.prototype._applyFooterManifestSettings = function () {
1446
1448
  var oFooter = this.createFooter();
1447
1449
 
@@ -1528,10 +1530,13 @@ sap.ui.define([
1528
1530
  };
1529
1531
 
1530
1532
  Card.prototype.createFooter = function () {
1531
- var oManifestFooter = this._oCardManifest.get(MANIFEST_PATHS.FOOTER),
1532
- oFooterFactory = new FooterFactory(this);
1533
+ var oManifestFooter = this._oCardManifest.get(MANIFEST_PATHS.FOOTER);
1534
+
1535
+ if (!oManifestFooter) {
1536
+ return null;
1537
+ }
1533
1538
 
1534
- return oFooterFactory.create(oManifestFooter);
1539
+ return Footer.create(this, oManifestFooter);
1535
1540
  };
1536
1541
 
1537
1542
  Card.prototype.getContentManifest = function () {
@@ -29,14 +29,17 @@ sap.ui.define([
29
29
  if (oCardManifest && oCardManifest.get(MANIFEST_PATHS.TYPE) && oCardManifest.get(MANIFEST_PATHS.TYPE).toLowerCase() === "analytical") {
30
30
  oRm.class("sapUiIntCardAnalytical");
31
31
  }
32
+
33
+ if (oCard.getAggregation("_footer")) {
34
+ oRm.class("sapUiIntCardWithFooter");
35
+ }
32
36
  },
33
37
 
34
38
  /**
35
39
  * @override
36
40
  */
37
41
  renderContentSection: function (oRm, oCard) {
38
- var oFilterBar = oCard.getAggregation("_filterBar"),
39
- oFooter = oCard.getAggregation("_footer"); // move to sap.f.CardRenderer
42
+ var oFilterBar = oCard.getAggregation("_filterBar");
40
43
 
41
44
  if (oFilterBar) {
42
45
  oRm.openStart("div")
@@ -49,15 +52,16 @@ sap.ui.define([
49
52
  }
50
53
 
51
54
  FCardRenderer.renderContentSection.apply(this, arguments);
55
+ },
52
56
 
53
- if (oFooter) {
54
- oRm.openStart("div")
55
- .class("sapFCardFooter")
56
- .openEnd();
57
+ /**
58
+ * @override
59
+ */
60
+ renderFooterSection: function (oRm, oCard) {
61
+ var oFooter = oCard.getAggregation("_footer");
57
62
 
63
+ if (oFooter) {
58
64
  oRm.renderControl(oFooter);
59
-
60
- oRm.close("div");
61
65
  }
62
66
  }
63
67
  });
@@ -1,114 +0,0 @@
1
- /*!
2
- * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
4
- * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
- */
6
- sap.ui.define([
7
- "./BaseFactory",
8
- "./CardActions",
9
- "sap/ui/integration/library",
10
- "sap/m/Button",
11
- "sap/m/OverflowToolbarButton",
12
- "sap/m/OverflowToolbar",
13
- "sap/m/OverflowToolbarLayoutData",
14
- "sap/m/ToolbarSpacer"
15
- ], function (
16
- BaseFactory,
17
- CardActions,
18
- library,
19
- Button,
20
- OverflowToolbarButton,
21
- OverflowToolbar,
22
- OverflowToolbarLayoutData,
23
- ToolbarSpacer
24
- ) {
25
- "use strict";
26
-
27
- var ActionArea = library.CardActionArea;
28
-
29
-
30
- /**
31
- * Constructor for a new <code>FooterFactory</code>.
32
- *
33
- * @class
34
- *
35
- * @extends sap.ui.integration.util.BaseFactory
36
- *
37
- * @author SAP SE
38
- * @version 1.92.0
39
- *
40
- * @constructor
41
- * @private
42
- * @alias sap.ui.integration.util.FooterFactory
43
- */
44
- var FooterFactory = BaseFactory.extend("sap.ui.integration.util.FooterFactory");
45
-
46
- FooterFactory.prototype.create = function (mConfiguration) {
47
- if (!mConfiguration || !mConfiguration.toolbar) {
48
- return null;
49
- }
50
-
51
- //@todo what should be the default button type
52
- var oToolbar = new OverflowToolbar(),
53
- oCard = this._oCard,
54
- oActions = new CardActions({
55
- card: oCard
56
- }),
57
- bHasSpacer;
58
-
59
- mConfiguration = this.createBindingInfos(mConfiguration, oCard.getBindingNamespaces());
60
-
61
- mConfiguration.toolbar.forEach(function (mConfig) {
62
- if (mConfig.type === "ToolbarSpacer") {
63
- bHasSpacer = true;
64
- oToolbar.addContent(new ToolbarSpacer());
65
- return;
66
- }
67
-
68
- var aActions = mConfig.actions,
69
- oOverflow = new OverflowToolbarLayoutData({
70
- group: mConfig.group,
71
- priority: mConfig.overflowPriority
72
- }),
73
- mButtonSettings,
74
- oButton,
75
- sTooltip = mConfig.tooltip;
76
-
77
- if (!sTooltip && mConfig.icon) {
78
- sTooltip = mConfig.text;
79
- }
80
-
81
- mButtonSettings = {
82
- type: mConfig.buttonType,
83
- text: mConfig.text,
84
- icon: mConfig.icon,
85
- tooltip: sTooltip
86
- };
87
-
88
- if (mConfig.icon) {
89
- oButton = new OverflowToolbarButton(mButtonSettings);
90
- } else {
91
- oButton = new Button(mButtonSettings);
92
- }
93
-
94
- oButton.setLayoutData(oOverflow);
95
-
96
- oActions.attach({
97
- area: ActionArea.Footer,
98
- control: oButton,
99
- actions: aActions,
100
- enabledPropertyName: "enabled"
101
- });
102
-
103
- oToolbar.addContent(oButton);
104
- });
105
-
106
- if (!bHasSpacer) {
107
- oToolbar.insertContent(new ToolbarSpacer(), 0);
108
- }
109
-
110
- return oToolbar;
111
- };
112
-
113
- return FooterFactory;
114
- });