@sapui5/sap.fe.templates 1.99.0 → 1.101.1

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 (137) hide show
  1. package/package.json +6 -5
  2. package/src/sap/fe/templates/.library +1 -2
  3. package/src/sap/fe/templates/AnalyticalListPage/Component.js +24 -12
  4. package/src/sap/fe/templates/AnalyticalListPage/Component.ts +6 -0
  5. package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.js +30 -32
  6. package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.ts +25 -0
  7. package/src/sap/fe/templates/Feedback.js +80 -0
  8. package/src/sap/fe/templates/Feedback.ts +67 -0
  9. package/src/sap/fe/templates/ListComponent.js +156 -118
  10. package/src/sap/fe/templates/ListComponent.ts +105 -0
  11. package/src/sap/fe/templates/ListReport/Component.js +82 -47
  12. package/src/sap/fe/templates/ListReport/Component.ts +39 -0
  13. package/src/sap/fe/templates/ListReport/ExtensionAPI.js +123 -112
  14. package/src/sap/fe/templates/ListReport/ExtensionAPI.ts +100 -0
  15. package/src/sap/fe/templates/ListReport/ListReport.view.xml +24 -22
  16. package/src/sap/fe/templates/ListReport/ListReportController.controller.js +1111 -1086
  17. package/src/sap/fe/templates/ListReport/ListReportController.controller.ts +1009 -0
  18. package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.js +54 -53
  19. package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.ts +55 -0
  20. package/src/sap/fe/templates/ListReport/overrides/Share.js +134 -137
  21. package/src/sap/fe/templates/ListReport/overrides/Share.ts +134 -0
  22. package/src/sap/fe/templates/ListReport/overrides/ViewState.js +443 -428
  23. package/src/sap/fe/templates/ListReport/overrides/ViewState.ts +413 -0
  24. package/src/sap/fe/templates/ListReport/view/fragments/CollectionVisualization.fragment.xml +25 -25
  25. package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.js +72 -0
  26. package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.ts +62 -0
  27. package/src/sap/fe/templates/ListReport/view/fragments/MultipleModeOld.fragment.xml +50 -0
  28. package/src/sap/fe/templates/ObjectPage/AnnotationHelper.js +478 -473
  29. package/src/sap/fe/templates/ObjectPage/AnnotationHelper.ts +511 -0
  30. package/src/sap/fe/templates/ObjectPage/Component.js +169 -149
  31. package/src/sap/fe/templates/ObjectPage/Component.ts +131 -0
  32. package/src/sap/fe/templates/ObjectPage/ExtensionAPI.js +140 -142
  33. package/src/sap/fe/templates/ObjectPage/ExtensionAPI.ts +116 -0
  34. package/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +6 -8
  35. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +1530 -1414
  36. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.ts +1442 -0
  37. package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js +136 -95
  38. package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.ts +84 -0
  39. package/src/sap/fe/templates/ObjectPage/controls/StashableVBox.js +24 -21
  40. package/src/sap/fe/templates/ObjectPage/controls/StashableVBox.ts +10 -0
  41. package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.js +98 -53
  42. package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.ts +50 -0
  43. package/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.js +20 -16
  44. package/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.ts +15 -0
  45. package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime.js +50 -47
  46. package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime.ts +47 -0
  47. package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime.js +34 -34
  48. package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime.ts +34 -0
  49. package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.js +15 -15
  50. package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.ts +13 -0
  51. package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.js +11 -11
  52. package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.ts +7 -0
  53. package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.js +55 -52
  54. package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.ts +57 -0
  55. package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.js +15 -17
  56. package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.ts +13 -0
  57. package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.js +13 -17
  58. package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.ts +14 -0
  59. package/src/sap/fe/templates/ObjectPage/overrides/Paginator.js +23 -21
  60. package/src/sap/fe/templates/ObjectPage/overrides/Paginator.ts +21 -0
  61. package/src/sap/fe/templates/ObjectPage/overrides/Share.js +310 -317
  62. package/src/sap/fe/templates/ObjectPage/overrides/Share.ts +316 -0
  63. package/src/sap/fe/templates/ObjectPage/overrides/ViewState.js +66 -57
  64. package/src/sap/fe/templates/ObjectPage/overrides/ViewState.ts +65 -0
  65. package/src/sap/fe/templates/ObjectPage/templating/ObjectPageTemplating.js +1 -1
  66. package/src/sap/fe/templates/ObjectPage/templating/ObjectPageTemplating.ts +1 -1
  67. package/src/sap/fe/templates/ObjectPage/view/fragments/Actions.fragment.xml +18 -24
  68. package/src/sap/fe/templates/ObjectPage/view/fragments/CollaborationDraft.fragment.xml +38 -0
  69. package/src/sap/fe/templates/ObjectPage/view/fragments/EditableHeaderFacet.fragment.xml +1 -1
  70. package/src/sap/fe/templates/ObjectPage/view/fragments/FooterContent.fragment.xml +4 -4
  71. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacet.fragment.xml +1 -0
  72. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacetCustomContainer.fragment.xml +1 -0
  73. package/src/sap/fe/templates/ObjectPage/view/fragments/SwitchDraftAndActiveObjectPopOver.fragment.xml +27 -0
  74. package/src/sap/fe/templates/RootContainer/controller/Fcl.controller.js +851 -815
  75. package/src/sap/fe/templates/RootContainer/controller/Fcl.controller.ts +795 -0
  76. package/src/sap/fe/templates/RootContainer/controller/NavContainer.controller.js +205 -187
  77. package/src/sap/fe/templates/RootContainer/controller/NavContainer.controller.ts +178 -0
  78. package/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController.js +484 -459
  79. package/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController.ts +438 -0
  80. package/src/sap/fe/templates/RootContainer/overrides/EditFlow.js +16 -14
  81. package/src/sap/fe/templates/RootContainer/overrides/EditFlow.ts +20 -0
  82. package/src/sap/fe/templates/TableScroller.js +45 -53
  83. package/src/sap/fe/templates/TableScroller.ts +48 -0
  84. package/src/sap/fe/templates/controls/Chart.fragment.xml +18 -17
  85. package/src/sap/fe/templates/controls/MacroChart.fragment.xml +22 -0
  86. package/src/sap/fe/templates/library.js +49 -63
  87. package/src/sap/fe/templates/library.ts +57 -0
  88. package/src/sap/fe/templates/messagebundle.properties +19 -7
  89. package/src/sap/fe/templates/messagebundle_ar.properties +6 -17
  90. package/src/sap/fe/templates/messagebundle_bg.properties +6 -17
  91. package/src/sap/fe/templates/messagebundle_ca.properties +6 -17
  92. package/src/sap/fe/templates/messagebundle_cs.properties +6 -17
  93. package/src/sap/fe/templates/messagebundle_cy.properties +6 -17
  94. package/src/sap/fe/templates/messagebundle_da.properties +6 -17
  95. package/src/sap/fe/templates/messagebundle_de.properties +6 -17
  96. package/src/sap/fe/templates/messagebundle_el.properties +6 -17
  97. package/src/sap/fe/templates/messagebundle_en.properties +6 -17
  98. package/src/sap/fe/templates/messagebundle_en_GB.properties +6 -17
  99. package/src/sap/fe/templates/messagebundle_en_US_sappsd.properties +0 -15
  100. package/src/sap/fe/templates/messagebundle_en_US_saprigi.properties +6 -17
  101. package/src/sap/fe/templates/messagebundle_en_US_saptrc.properties +6 -17
  102. package/src/sap/fe/templates/messagebundle_es.properties +6 -17
  103. package/src/sap/fe/templates/messagebundle_es_MX.properties +6 -17
  104. package/src/sap/fe/templates/messagebundle_et.properties +6 -17
  105. package/src/sap/fe/templates/messagebundle_fi.properties +6 -17
  106. package/src/sap/fe/templates/messagebundle_fr.properties +6 -17
  107. package/src/sap/fe/templates/messagebundle_fr_CA.properties +6 -17
  108. package/src/sap/fe/templates/messagebundle_hi.properties +6 -17
  109. package/src/sap/fe/templates/messagebundle_hr.properties +6 -17
  110. package/src/sap/fe/templates/messagebundle_hu.properties +6 -17
  111. package/src/sap/fe/templates/messagebundle_id.properties +6 -17
  112. package/src/sap/fe/templates/messagebundle_it.properties +6 -17
  113. package/src/sap/fe/templates/messagebundle_iw.properties +6 -17
  114. package/src/sap/fe/templates/messagebundle_ja.properties +6 -17
  115. package/src/sap/fe/templates/messagebundle_kk.properties +6 -17
  116. package/src/sap/fe/templates/messagebundle_ko.properties +6 -17
  117. package/src/sap/fe/templates/messagebundle_lt.properties +6 -17
  118. package/src/sap/fe/templates/messagebundle_lv.properties +6 -17
  119. package/src/sap/fe/templates/messagebundle_ms.properties +6 -17
  120. package/src/sap/fe/templates/messagebundle_nl.properties +6 -17
  121. package/src/sap/fe/templates/messagebundle_no.properties +6 -17
  122. package/src/sap/fe/templates/messagebundle_pl.properties +6 -17
  123. package/src/sap/fe/templates/messagebundle_pt.properties +6 -17
  124. package/src/sap/fe/templates/messagebundle_pt_PT.properties +6 -17
  125. package/src/sap/fe/templates/messagebundle_ro.properties +6 -17
  126. package/src/sap/fe/templates/messagebundle_ru.properties +6 -17
  127. package/src/sap/fe/templates/messagebundle_sh.properties +6 -17
  128. package/src/sap/fe/templates/messagebundle_sk.properties +6 -17
  129. package/src/sap/fe/templates/messagebundle_sl.properties +6 -17
  130. package/src/sap/fe/templates/messagebundle_sv.properties +6 -17
  131. package/src/sap/fe/templates/messagebundle_th.properties +6 -17
  132. package/src/sap/fe/templates/messagebundle_tr.properties +6 -17
  133. package/src/sap/fe/templates/messagebundle_uk.properties +6 -17
  134. package/src/sap/fe/templates/messagebundle_vi.properties +6 -17
  135. package/src/sap/fe/templates/messagebundle_zh_CN.properties +6 -17
  136. package/src/sap/fe/templates/messagebundle_zh_TW.properties +6 -17
  137. package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.xml +0 -49
@@ -1,98 +1,139 @@
1
1
  /*!
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
- (c) Copyright 2009-2021 SAP SE. All rights reserved
4
-
3
+ * (c) Copyright 2009-2021 SAP SE. All rights reserved
5
4
  */
6
- sap.ui.define(
7
- ["sap/m/HBox", "sap/m/HBoxRenderer", "sap/ui/core/StashedControlSupport"],
8
- function(HBox, HBoxRenderer, StashedControlSupport) {
9
- "use strict";
10
-
11
- var StashableHBox = HBox.extend("sap.fe.templates.ObjectPage.controls.StashableHBox", {
12
- metadata: {
13
- properties: {
14
- /*
15
- * Title of the Header Facet. Not visible on the UI. Visible on the UI is the Title or Link control inside the items aggregation of the Header Facet.
16
- * Must always be in sync with the visible Title or Link control.
17
- */
18
- title: {
19
- type: "string"
20
- }
21
- },
22
- designtime: "sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime"
23
- },
24
- renderer: {
25
- render: function(oRm, oControl) {
26
- HBoxRenderer.render.apply(this, [oRm, oControl]);
27
- }
28
- }
29
- });
30
-
31
- /*
32
- * Set title of visible Title/Link control and own title property.
33
- */
34
- StashableHBox.prototype.setTitle = function(sTitle) {
35
- var oControl = this.getTitleControl();
36
- if (oControl) {
37
- oControl.setText(sTitle);
38
- }
39
- this.title = sTitle;
40
-
41
- return this;
42
- };
43
-
44
- /*
45
- * Return the title property.
46
- */
47
- StashableHBox.prototype.getTitle = function() {
48
- return this.title;
49
- };
50
-
51
- /*
52
- * In case of UI changes, Title/Link text needs to be set to new value after Header Facet control and inner controls are rendered.
53
- * Else: title property needs to be initialized.
54
- */
55
- StashableHBox.prototype.onAfterRendering = function() {
56
- if (this.title) {
57
- this.setTitle(this.title);
58
- } else {
59
- var oControl = this.getTitleControl();
60
- if (oControl) {
61
- this.title = oControl.getText();
62
- }
63
- }
64
- };
65
-
66
- /*
67
- * Retrieves Title/Link control from items aggregation.
68
- */
69
- StashableHBox.prototype.getTitleControl = function() {
70
- var aItems = [],
71
- content,
72
- i;
73
- if (this.getItems && this.getItems()[0] && this.getItems()[0].getItems) {
74
- aItems = this.getItems()[0].getItems();
75
- } else if (this.getItems && this.getItems()[0] && this.getItems()[0].getMicroChartTitle) {
76
- aItems = this.getItems()[0].getMicroChartTitle();
77
- }
78
- for (i = 0; i < aItems.length; i++) {
79
- if (aItems[i].isA("sap.m.Title") || aItems[i].isA("sap.m.Link")) {
80
- if (aItems[i].isA("sap.m.Title")) {
81
- // If a title was found, check if there is a link in the content aggregation
82
- content = aItems[i].getContent();
83
- if (content && content.isA("sap.m.Link")) {
84
- return content;
85
- }
86
- }
87
- return aItems[i];
88
- }
89
- }
90
- return null;
91
- };
92
-
93
- StashedControlSupport.mixInto(StashableHBox);
94
-
95
- return StashableHBox;
96
- },
97
- /* bExport= */ true
98
- );
5
+ sap.ui.define(["sap/fe/core/helpers/ClassSupport", "sap/m/HBox", "sap/ui/core/StashedControlSupport"], function (ClassSupport, HBox, StashedControlSupport) {
6
+ "use strict";
7
+
8
+ var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2;
9
+
10
+ var property = ClassSupport.property;
11
+ var defineUI5Class = ClassSupport.defineUI5Class;
12
+
13
+ function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }
14
+
15
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
16
+
17
+ function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
18
+
19
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
20
+
21
+ function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }
22
+
23
+ function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }
24
+
25
+ var StashableHBox = (_dec = defineUI5Class("sap.fe.templates.ObjectPage.controls.StashableHBox", {
26
+ designtime: "sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime"
27
+ }), _dec2 = property({
28
+ type: "string"
29
+ }), _dec3 = property({
30
+ type: "string"
31
+ }), _dec(_class = (_class2 = /*#__PURE__*/function (_HBox) {
32
+ _inheritsLoose(StashableHBox, _HBox);
33
+
34
+ function StashableHBox() {
35
+ var _this;
36
+
37
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
38
+ args[_key] = arguments[_key];
39
+ }
40
+
41
+ _this = _HBox.call.apply(_HBox, [this].concat(args)) || this;
42
+
43
+ _initializerDefineProperty(_this, "title", _descriptor, _assertThisInitialized(_this));
44
+
45
+ _initializerDefineProperty(_this, "fallbackTitle", _descriptor2, _assertThisInitialized(_this));
46
+
47
+ return _this;
48
+ }
49
+
50
+ var _proto = StashableHBox.prototype;
51
+
52
+ /*
53
+ * Set title of visible Title/Link control and own title property.
54
+ */
55
+ _proto.setTitle = function setTitle(sTitle) {
56
+ var oControl = this.getTitleControl();
57
+
58
+ if (oControl) {
59
+ oControl.setText(sTitle);
60
+ }
61
+
62
+ this.title = sTitle;
63
+ return this;
64
+ }
65
+ /*
66
+ * Return the title property.
67
+ */
68
+ ;
69
+
70
+ _proto.getTitle = function getTitle() {
71
+ return this.title || this.fallbackTitle;
72
+ }
73
+ /*
74
+ * In case of UI changes, Title/Link text needs to be set to new value after Header Facet control and inner controls are rendered.
75
+ * Else: title property needs to be initialized.
76
+ */
77
+ ;
78
+
79
+ _proto.onAfterRendering = function onAfterRendering() {
80
+ if (this.title) {
81
+ this.setTitle(this.title);
82
+ } else {
83
+ var oControl = this.getTitleControl();
84
+
85
+ if (oControl) {
86
+ this.title = oControl.getText();
87
+ }
88
+ }
89
+ }
90
+ /*
91
+ * Retrieves Title/Link control from items aggregation.
92
+ */
93
+ ;
94
+
95
+ _proto.getTitleControl = function getTitleControl() {
96
+ var aItems = [],
97
+ content,
98
+ i;
99
+
100
+ if (this.getItems && this.getItems()[0] && this.getItems()[0].getItems) {
101
+ aItems = this.getItems()[0].getItems();
102
+ } else if (this.getItems && this.getItems()[0] && this.getItems()[0].getMicroChartTitle) {
103
+ aItems = this.getItems()[0].getMicroChartTitle();
104
+ }
105
+
106
+ for (i = 0; i < aItems.length; i++) {
107
+ if (aItems[i].isA("sap.m.Title") || aItems[i].isA("sap.m.Link")) {
108
+ if (aItems[i].isA("sap.m.Title")) {
109
+ // If a title was found, check if there is a link in the content aggregation
110
+ content = aItems[i].getContent();
111
+
112
+ if (content && content.isA("sap.m.Link")) {
113
+ return content;
114
+ }
115
+ }
116
+
117
+ return aItems[i];
118
+ }
119
+ }
120
+
121
+ return null;
122
+ };
123
+
124
+ return StashableHBox;
125
+ }(HBox), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "title", [_dec2], {
126
+ configurable: true,
127
+ enumerable: true,
128
+ writable: true,
129
+ initializer: null
130
+ }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, "fallbackTitle", [_dec3], {
131
+ configurable: true,
132
+ enumerable: true,
133
+ writable: true,
134
+ initializer: null
135
+ })), _class2)) || _class);
136
+ StashedControlSupport.mixInto(StashableHBox);
137
+ return StashableHBox;
138
+ }, false);
139
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlN0YXNoYWJsZUhCb3gudHMiXSwibmFtZXMiOlsiU3Rhc2hhYmxlSEJveCIsImRlZmluZVVJNUNsYXNzIiwiZGVzaWdudGltZSIsInByb3BlcnR5IiwidHlwZSIsInNldFRpdGxlIiwic1RpdGxlIiwib0NvbnRyb2wiLCJnZXRUaXRsZUNvbnRyb2wiLCJzZXRUZXh0IiwidGl0bGUiLCJnZXRUaXRsZSIsImZhbGxiYWNrVGl0bGUiLCJvbkFmdGVyUmVuZGVyaW5nIiwiZ2V0VGV4dCIsImFJdGVtcyIsImNvbnRlbnQiLCJpIiwiZ2V0SXRlbXMiLCJnZXRNaWNyb0NoYXJ0VGl0bGUiLCJsZW5ndGgiLCJpc0EiLCJnZXRDb250ZW50IiwiSEJveCIsIlN0YXNoZWRDb250cm9sU3VwcG9ydCIsIm1peEludG8iXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUlNQSxhLFdBSExDLGNBQWMsQ0FBQyxvREFBRCxFQUF1RDtBQUNyRUMsSUFBQUEsVUFBVSxFQUFFO0FBRHlELEdBQXZELEMsVUFRYkMsUUFBUSxDQUFDO0FBQUVDLElBQUFBLElBQUksRUFBRTtBQUFSLEdBQUQsQyxVQUtSRCxRQUFRLENBQUM7QUFBRUMsSUFBQUEsSUFBSSxFQUFFO0FBQVIsR0FBRCxDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHVDtBQUNEO0FBQ0E7V0FDQ0MsUSxHQUFBLGtCQUFTQyxNQUFULEVBQXNCO0FBQ3JCLFVBQU1DLFFBQVEsR0FBRyxLQUFLQyxlQUFMLEVBQWpCOztBQUNBLFVBQUlELFFBQUosRUFBYztBQUNiQSxRQUFBQSxRQUFRLENBQUNFLE9BQVQsQ0FBaUJILE1BQWpCO0FBQ0E7O0FBQ0QsV0FBS0ksS0FBTCxHQUFhSixNQUFiO0FBRUEsYUFBTyxJQUFQO0FBQ0E7QUFFRDtBQUNEO0FBQ0E7OztXQUNDSyxRLEdBQUEsb0JBQVc7QUFDVixhQUFPLEtBQUtELEtBQUwsSUFBYyxLQUFLRSxhQUExQjtBQUNBO0FBRUQ7QUFDRDtBQUNBO0FBQ0E7OztXQUNDQyxnQixHQUFBLDRCQUFtQjtBQUNsQixVQUFJLEtBQUtILEtBQVQsRUFBZ0I7QUFDZixhQUFLTCxRQUFMLENBQWMsS0FBS0ssS0FBbkI7QUFDQSxPQUZELE1BRU87QUFDTixZQUFNSCxRQUFRLEdBQUcsS0FBS0MsZUFBTCxFQUFqQjs7QUFDQSxZQUFJRCxRQUFKLEVBQWM7QUFDYixlQUFLRyxLQUFMLEdBQWFILFFBQVEsQ0FBQ08sT0FBVCxFQUFiO0FBQ0E7QUFDRDtBQUNEO0FBRUQ7QUFDRDtBQUNBOzs7V0FDQ04sZSxHQUFBLDJCQUFrQjtBQUNqQixVQUFJTyxNQUFNLEdBQUcsRUFBYjtBQUFBLFVBQ0NDLE9BREQ7QUFBQSxVQUVDQyxDQUZEOztBQUdBLFVBQUksS0FBS0MsUUFBTCxJQUFpQixLQUFLQSxRQUFMLEdBQWdCLENBQWhCLENBQWpCLElBQXdDLEtBQUtBLFFBQUwsR0FBZ0IsQ0FBaEIsQ0FBRCxDQUE0QkEsUUFBdkUsRUFBaUY7QUFDaEZILFFBQUFBLE1BQU0sR0FBSSxLQUFLRyxRQUFMLEdBQWdCLENBQWhCLENBQUQsQ0FBNEJBLFFBQTVCLEVBQVQ7QUFDQSxPQUZELE1BRU8sSUFBSSxLQUFLQSxRQUFMLElBQWlCLEtBQUtBLFFBQUwsR0FBZ0IsQ0FBaEIsQ0FBakIsSUFBd0MsS0FBS0EsUUFBTCxHQUFnQixDQUFoQixDQUFELENBQTRCQyxrQkFBdkUsRUFBMkY7QUFDakdKLFFBQUFBLE1BQU0sR0FBSSxLQUFLRyxRQUFMLEdBQWdCLENBQWhCLENBQUQsQ0FBNEJDLGtCQUE1QixFQUFUO0FBQ0E7O0FBQ0QsV0FBS0YsQ0FBQyxHQUFHLENBQVQsRUFBWUEsQ0FBQyxHQUFHRixNQUFNLENBQUNLLE1BQXZCLEVBQStCSCxDQUFDLEVBQWhDLEVBQW9DO0FBQ25DLFlBQUlGLE1BQU0sQ0FBQ0UsQ0FBRCxDQUFOLENBQVVJLEdBQVYsQ0FBYyxhQUFkLEtBQWdDTixNQUFNLENBQUNFLENBQUQsQ0FBTixDQUFVSSxHQUFWLENBQWMsWUFBZCxDQUFwQyxFQUFpRTtBQUNoRSxjQUFJTixNQUFNLENBQUNFLENBQUQsQ0FBTixDQUFVSSxHQUFWLENBQWMsYUFBZCxDQUFKLEVBQWtDO0FBQ2pDO0FBQ0FMLFlBQUFBLE9BQU8sR0FBR0QsTUFBTSxDQUFDRSxDQUFELENBQU4sQ0FBVUssVUFBVixFQUFWOztBQUNBLGdCQUFJTixPQUFPLElBQUlBLE9BQU8sQ0FBQ0ssR0FBUixDQUFZLFlBQVosQ0FBZixFQUEwQztBQUN6QyxxQkFBT0wsT0FBUDtBQUNBO0FBQ0Q7O0FBQ0QsaUJBQU9ELE1BQU0sQ0FBQ0UsQ0FBRCxDQUFiO0FBQ0E7QUFDRDs7QUFDRCxhQUFPLElBQVA7QUFDQSxLOzs7SUF6RTBCTSxJOzs7Ozs7Ozs7OztBQTJFNUJDLEVBQUFBLHFCQUFxQixDQUFDQyxPQUF0QixDQUE4QnpCLGFBQTlCO1NBRWVBLGEiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlZmluZVVJNUNsYXNzLCBwcm9wZXJ0eSB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IEhCb3ggZnJvbSBcInNhcC9tL0hCb3hcIjtcbmltcG9ydCBTdGFzaGVkQ29udHJvbFN1cHBvcnQgZnJvbSBcInNhcC91aS9jb3JlL1N0YXNoZWRDb250cm9sU3VwcG9ydFwiO1xuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLnRlbXBsYXRlcy5PYmplY3RQYWdlLmNvbnRyb2xzLlN0YXNoYWJsZUhCb3hcIiwge1xuXHRkZXNpZ250aW1lOiBcInNhcC9mZS90ZW1wbGF0ZXMvT2JqZWN0UGFnZS9kZXNpZ250aW1lL1N0YXNoYWJsZUhCb3guZGVzaWdudGltZVwiXG59KVxuY2xhc3MgU3Rhc2hhYmxlSEJveCBleHRlbmRzIEhCb3gge1xuXHQvKlxuXHQgKiBUaXRsZSBvZiB0aGUgSGVhZGVyIEZhY2V0LiBOb3QgdmlzaWJsZSBvbiB0aGUgVUkuIFZpc2libGUgb24gdGhlIFVJIGlzIHRoZSBUaXRsZSBvciBMaW5rIGNvbnRyb2wgaW5zaWRlIHRoZSBpdGVtcyBhZ2dyZWdhdGlvbiBvZiB0aGUgSGVhZGVyIEZhY2V0LlxuXHQgKiBNdXN0IGFsd2F5cyBiZSBpbiBzeW5jIHdpdGggdGhlIHZpc2libGUgVGl0bGUgb3IgTGluayBjb250cm9sLlxuXHQgKi9cblx0QHByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiB9KVxuXHR0aXRsZSE6IHN0cmluZztcblx0Lypcblx0ICogRmFsbGJhY2sgdGl0bGUgdG8gYmUgZGlzcGxheWVkIGlmIG5vIHRpdGxlIGlzIGF2YWlsYWJsZSAob25seSBuZWVkZWQgZm9yIGRpc3BsYXlpbmcgc3Rhc2hlZCBoZWFkZXIgZmFjZXRzIGluIEZsZXggZGlhbG9nKVxuXHQgKi9cblx0QHByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiB9KVxuXHRmYWxsYmFja1RpdGxlITogc3RyaW5nO1xuXG5cdC8qXG5cdCAqIFNldCB0aXRsZSBvZiB2aXNpYmxlIFRpdGxlL0xpbmsgY29udHJvbCBhbmQgb3duIHRpdGxlIHByb3BlcnR5LlxuXHQgKi9cblx0c2V0VGl0bGUoc1RpdGxlOiBhbnkpIHtcblx0XHRjb25zdCBvQ29udHJvbCA9IHRoaXMuZ2V0VGl0bGVDb250cm9sKCk7XG5cdFx0aWYgKG9Db250cm9sKSB7XG5cdFx0XHRvQ29udHJvbC5zZXRUZXh0KHNUaXRsZSk7XG5cdFx0fVxuXHRcdHRoaXMudGl0bGUgPSBzVGl0bGU7XG5cblx0XHRyZXR1cm4gdGhpcztcblx0fVxuXG5cdC8qXG5cdCAqIFJldHVybiB0aGUgdGl0bGUgcHJvcGVydHkuXG5cdCAqL1xuXHRnZXRUaXRsZSgpIHtcblx0XHRyZXR1cm4gdGhpcy50aXRsZSB8fCB0aGlzLmZhbGxiYWNrVGl0bGU7XG5cdH1cblxuXHQvKlxuXHQgKiBJbiBjYXNlIG9mIFVJIGNoYW5nZXMsIFRpdGxlL0xpbmsgdGV4dCBuZWVkcyB0byBiZSBzZXQgdG8gbmV3IHZhbHVlIGFmdGVyIEhlYWRlciBGYWNldCBjb250cm9sIGFuZCBpbm5lciBjb250cm9scyBhcmUgcmVuZGVyZWQuXG5cdCAqIEVsc2U6IHRpdGxlIHByb3BlcnR5IG5lZWRzIHRvIGJlIGluaXRpYWxpemVkLlxuXHQgKi9cblx0b25BZnRlclJlbmRlcmluZygpIHtcblx0XHRpZiAodGhpcy50aXRsZSkge1xuXHRcdFx0dGhpcy5zZXRUaXRsZSh0aGlzLnRpdGxlKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0Y29uc3Qgb0NvbnRyb2wgPSB0aGlzLmdldFRpdGxlQ29udHJvbCgpO1xuXHRcdFx0aWYgKG9Db250cm9sKSB7XG5cdFx0XHRcdHRoaXMudGl0bGUgPSBvQ29udHJvbC5nZXRUZXh0KCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lypcblx0ICogUmV0cmlldmVzIFRpdGxlL0xpbmsgY29udHJvbCBmcm9tIGl0ZW1zIGFnZ3JlZ2F0aW9uLlxuXHQgKi9cblx0Z2V0VGl0bGVDb250cm9sKCkge1xuXHRcdGxldCBhSXRlbXMgPSBbXSxcblx0XHRcdGNvbnRlbnQsXG5cdFx0XHRpO1xuXHRcdGlmICh0aGlzLmdldEl0ZW1zICYmIHRoaXMuZ2V0SXRlbXMoKVswXSAmJiAodGhpcy5nZXRJdGVtcygpWzBdIGFzIGFueSkuZ2V0SXRlbXMpIHtcblx0XHRcdGFJdGVtcyA9ICh0aGlzLmdldEl0ZW1zKClbMF0gYXMgYW55KS5nZXRJdGVtcygpO1xuXHRcdH0gZWxzZSBpZiAodGhpcy5nZXRJdGVtcyAmJiB0aGlzLmdldEl0ZW1zKClbMF0gJiYgKHRoaXMuZ2V0SXRlbXMoKVswXSBhcyBhbnkpLmdldE1pY3JvQ2hhcnRUaXRsZSkge1xuXHRcdFx0YUl0ZW1zID0gKHRoaXMuZ2V0SXRlbXMoKVswXSBhcyBhbnkpLmdldE1pY3JvQ2hhcnRUaXRsZSgpO1xuXHRcdH1cblx0XHRmb3IgKGkgPSAwOyBpIDwgYUl0ZW1zLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRpZiAoYUl0ZW1zW2ldLmlzQShcInNhcC5tLlRpdGxlXCIpIHx8IGFJdGVtc1tpXS5pc0EoXCJzYXAubS5MaW5rXCIpKSB7XG5cdFx0XHRcdGlmIChhSXRlbXNbaV0uaXNBKFwic2FwLm0uVGl0bGVcIikpIHtcblx0XHRcdFx0XHQvLyBJZiBhIHRpdGxlIHdhcyBmb3VuZCwgY2hlY2sgaWYgdGhlcmUgaXMgYSBsaW5rIGluIHRoZSBjb250ZW50IGFnZ3JlZ2F0aW9uXG5cdFx0XHRcdFx0Y29udGVudCA9IGFJdGVtc1tpXS5nZXRDb250ZW50KCk7XG5cdFx0XHRcdFx0aWYgKGNvbnRlbnQgJiYgY29udGVudC5pc0EoXCJzYXAubS5MaW5rXCIpKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gY29udGVudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIGFJdGVtc1tpXTtcblx0XHRcdH1cblx0XHR9XG5cdFx0cmV0dXJuIG51bGw7XG5cdH1cbn1cblN0YXNoZWRDb250cm9sU3VwcG9ydC5taXhJbnRvKFN0YXNoYWJsZUhCb3gpO1xuXG5leHBvcnQgZGVmYXVsdCBTdGFzaGFibGVIQm94O1xuIl19
@@ -0,0 +1,84 @@
1
+ import { defineUI5Class, property } from "sap/fe/core/helpers/ClassSupport";
2
+ import HBox from "sap/m/HBox";
3
+ import StashedControlSupport from "sap/ui/core/StashedControlSupport";
4
+ @defineUI5Class("sap.fe.templates.ObjectPage.controls.StashableHBox", {
5
+ designtime: "sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime"
6
+ })
7
+ class StashableHBox extends HBox {
8
+ /*
9
+ * Title of the Header Facet. Not visible on the UI. Visible on the UI is the Title or Link control inside the items aggregation of the Header Facet.
10
+ * Must always be in sync with the visible Title or Link control.
11
+ */
12
+ @property({ type: "string" })
13
+ title!: string;
14
+ /*
15
+ * Fallback title to be displayed if no title is available (only needed for displaying stashed header facets in Flex dialog)
16
+ */
17
+ @property({ type: "string" })
18
+ fallbackTitle!: string;
19
+
20
+ /*
21
+ * Set title of visible Title/Link control and own title property.
22
+ */
23
+ setTitle(sTitle: any) {
24
+ const oControl = this.getTitleControl();
25
+ if (oControl) {
26
+ oControl.setText(sTitle);
27
+ }
28
+ this.title = sTitle;
29
+
30
+ return this;
31
+ }
32
+
33
+ /*
34
+ * Return the title property.
35
+ */
36
+ getTitle() {
37
+ return this.title || this.fallbackTitle;
38
+ }
39
+
40
+ /*
41
+ * In case of UI changes, Title/Link text needs to be set to new value after Header Facet control and inner controls are rendered.
42
+ * Else: title property needs to be initialized.
43
+ */
44
+ onAfterRendering() {
45
+ if (this.title) {
46
+ this.setTitle(this.title);
47
+ } else {
48
+ const oControl = this.getTitleControl();
49
+ if (oControl) {
50
+ this.title = oControl.getText();
51
+ }
52
+ }
53
+ }
54
+
55
+ /*
56
+ * Retrieves Title/Link control from items aggregation.
57
+ */
58
+ getTitleControl() {
59
+ let aItems = [],
60
+ content,
61
+ i;
62
+ if (this.getItems && this.getItems()[0] && (this.getItems()[0] as any).getItems) {
63
+ aItems = (this.getItems()[0] as any).getItems();
64
+ } else if (this.getItems && this.getItems()[0] && (this.getItems()[0] as any).getMicroChartTitle) {
65
+ aItems = (this.getItems()[0] as any).getMicroChartTitle();
66
+ }
67
+ for (i = 0; i < aItems.length; i++) {
68
+ if (aItems[i].isA("sap.m.Title") || aItems[i].isA("sap.m.Link")) {
69
+ if (aItems[i].isA("sap.m.Title")) {
70
+ // If a title was found, check if there is a link in the content aggregation
71
+ content = aItems[i].getContent();
72
+ if (content && content.isA("sap.m.Link")) {
73
+ return content;
74
+ }
75
+ }
76
+ return aItems[i];
77
+ }
78
+ }
79
+ return null;
80
+ }
81
+ }
82
+ StashedControlSupport.mixInto(StashableHBox);
83
+
84
+ export default StashableHBox;
@@ -1,27 +1,30 @@
1
1
  /*!
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
- (c) Copyright 2009-2021 SAP SE. All rights reserved
4
-
3
+ * (c) Copyright 2009-2021 SAP SE. All rights reserved
5
4
  */
6
- sap.ui.define(
7
- ["sap/m/VBox", "sap/m/VBoxRenderer", "sap/ui/core/StashedControlSupport"],
8
- function(VBox, VBoxRenderer, StashedControlSupport) {
9
- "use strict";
5
+ sap.ui.define(["sap/fe/core/helpers/ClassSupport", "sap/m/VBox", "sap/ui/core/StashedControlSupport"], function (ClassSupport, VBox, StashedControlSupport) {
6
+ "use strict";
10
7
 
11
- var StashableVBox = VBox.extend("sap.fe.templates.ObjectPage.controls.StashableVBox", {
12
- metadata: {
13
- designtime: "sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime"
14
- },
15
- renderer: {
16
- render: function(oRm, oControl) {
17
- VBoxRenderer.render.apply(this, [oRm, oControl]);
18
- }
19
- }
20
- });
8
+ var _dec, _class;
21
9
 
22
- StashedControlSupport.mixInto(StashableVBox);
10
+ var defineUI5Class = ClassSupport.defineUI5Class;
23
11
 
24
- return StashableVBox;
25
- },
26
- /* bExport= */ true
27
- );
12
+ function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
13
+
14
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
15
+
16
+ var StashableVBox = (_dec = defineUI5Class("sap.fe.templates.ObjectPage.controls.StashableVBox", {
17
+ designtime: "sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime"
18
+ }), _dec(_class = /*#__PURE__*/function (_VBox) {
19
+ _inheritsLoose(StashableVBox, _VBox);
20
+
21
+ function StashableVBox() {
22
+ return _VBox.apply(this, arguments) || this;
23
+ }
24
+
25
+ return StashableVBox;
26
+ }(VBox)) || _class);
27
+ StashedControlSupport.mixInto(StashableVBox);
28
+ return StashableVBox;
29
+ }, false);
30
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlN0YXNoYWJsZVZCb3gudHMiXSwibmFtZXMiOlsiU3Rhc2hhYmxlVkJveCIsImRlZmluZVVJNUNsYXNzIiwiZGVzaWdudGltZSIsIlZCb3giLCJTdGFzaGVkQ29udHJvbFN1cHBvcnQiLCJtaXhJbnRvIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7TUFJTUEsYSxXQUhMQyxjQUFjLENBQUMsb0RBQUQsRUFBdUQ7QUFDckVDLElBQUFBLFVBQVUsRUFBRTtBQUR5RCxHQUF2RCxDOzs7Ozs7OztJQUdhQyxJO0FBQzVCQyxFQUFBQSxxQkFBcUIsQ0FBQ0MsT0FBdEIsQ0FBOEJMLGFBQTlCO1NBRWVBLGEiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlZmluZVVJNUNsYXNzIH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgVkJveCBmcm9tIFwic2FwL20vVkJveFwiO1xuaW1wb3J0IFN0YXNoZWRDb250cm9sU3VwcG9ydCBmcm9tIFwic2FwL3VpL2NvcmUvU3Rhc2hlZENvbnRyb2xTdXBwb3J0XCI7XG5AZGVmaW5lVUk1Q2xhc3MoXCJzYXAuZmUudGVtcGxhdGVzLk9iamVjdFBhZ2UuY29udHJvbHMuU3Rhc2hhYmxlVkJveFwiLCB7XG5cdGRlc2lnbnRpbWU6IFwic2FwL2ZlL3RlbXBsYXRlcy9PYmplY3RQYWdlL2Rlc2lnbnRpbWUvU3Rhc2hhYmxlVkJveC5kZXNpZ250aW1lXCJcbn0pXG5jbGFzcyBTdGFzaGFibGVWQm94IGV4dGVuZHMgVkJveCB7fVxuU3Rhc2hlZENvbnRyb2xTdXBwb3J0Lm1peEludG8oU3Rhc2hhYmxlVkJveCk7XG5cbmV4cG9ydCBkZWZhdWx0IFN0YXNoYWJsZVZCb3g7XG4iXX0=
@@ -0,0 +1,10 @@
1
+ import { defineUI5Class } from "sap/fe/core/helpers/ClassSupport";
2
+ import VBox from "sap/m/VBox";
3
+ import StashedControlSupport from "sap/ui/core/StashedControlSupport";
4
+ @defineUI5Class("sap.fe.templates.ObjectPage.controls.StashableVBox", {
5
+ designtime: "sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime"
6
+ })
7
+ class StashableVBox extends VBox {}
8
+ StashedControlSupport.mixInto(StashableVBox);
9
+
10
+ export default StashableVBox;
@@ -1,57 +1,102 @@
1
1
  /*!
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
- (c) Copyright 2009-2021 SAP SE. All rights reserved
4
-
3
+ * (c) Copyright 2009-2021 SAP SE. All rights reserved
5
4
  */
5
+ sap.ui.define(["sap/fe/core/helpers/ClassSupport", "sap/uxap/BlockBase", "sap/uxap/library"], function (ClassSupport, BlockBase, uxapLib) {
6
+ "use strict";
6
7
 
7
- sap.ui.define(["sap/uxap/BlockBase"], function(BlockBase) {
8
- "use strict";
9
-
10
- var SubSectionBlock = BlockBase.extend("sap.fe.templates.ObjectPage.controls.SubSectionBlock", {
11
- metadata: {
12
- properties: {
13
- columnLayout: { type: "sap.uxap.BlockBaseColumnLayout", group: "Behavior", defaultValue: 4 }
14
- },
15
- aggregations: {
16
- content: {
17
- type: "sap.ui.core.Control",
18
- multiple: false
19
- }
20
- }
21
- }
22
- });
23
-
24
- SubSectionBlock.prototype.init = function() {
25
- BlockBase.prototype.init.apply(this, arguments);
26
- this._bConnected = true;
27
- };
28
-
29
- SubSectionBlock.prototype._applyFormAdjustment = function() {
30
- var sFormAdjustment = this.getFormAdjustment(),
31
- oView = this._getSelectedViewContent(),
32
- oParent = this._oParentObjectPageSubSection,
33
- oFormAdjustmentFields;
34
-
35
- if (sFormAdjustment !== sap.uxap.BlockBaseFormAdjustment.None && oView && oParent) {
36
- oFormAdjustmentFields = this._computeFormAdjustmentFields(sFormAdjustment, oParent._oLayoutConfig);
37
-
38
- this._adjustForm(oView, oFormAdjustmentFields);
39
- }
40
- };
41
-
42
- SubSectionBlock.prototype.setMode = function(sMode) {
43
- this.setProperty("mode", sMode);
44
- // OPTIONAL: this.internalModel.setProperty("/mode", sMode);
45
- };
46
-
47
- /// View is already connected to the UI5 model tree, hence no extra logic required here
48
- SubSectionBlock.prototype.connectToModels = function() {};
49
-
50
- /// SubSectionBlock use aggregation instead of a view, i.e. return that as the view content
51
- SubSectionBlock.prototype._getSelectedViewContent = function() {
52
- var oContent = this.getAggregation("content");
53
- return oContent;
54
- };
55
-
56
- return SubSectionBlock;
57
- });
8
+ var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2;
9
+
10
+ var property = ClassSupport.property;
11
+ var defineUI5Class = ClassSupport.defineUI5Class;
12
+ var aggregation = ClassSupport.aggregation;
13
+
14
+ function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }
15
+
16
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
17
+
18
+ function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
19
+
20
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
21
+
22
+ function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }
23
+
24
+ function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }
25
+
26
+ var BlockBaseFormAdjustment = uxapLib.BlockBaseFormAdjustment;
27
+ var SubSectionBlock = (_dec = defineUI5Class("sap.fe.templates.ObjectPage.controls.SubSectionBlock"), _dec2 = property({
28
+ type: "sap.uxap.BlockBaseColumnLayout",
29
+ group: "Behavior",
30
+ defaultValue: 4
31
+ }), _dec3 = aggregation({
32
+ type: "sap.ui.core.Control",
33
+ multiple: false
34
+ }), _dec(_class = (_class2 = /*#__PURE__*/function (_BlockBase) {
35
+ _inheritsLoose(SubSectionBlock, _BlockBase);
36
+
37
+ function SubSectionBlock() {
38
+ var _this;
39
+
40
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
41
+ args[_key] = arguments[_key];
42
+ }
43
+
44
+ _this = _BlockBase.call.apply(_BlockBase, [this].concat(args)) || this;
45
+
46
+ _initializerDefineProperty(_this, "columnLayout", _descriptor, _assertThisInitialized(_this));
47
+
48
+ _initializerDefineProperty(_this, "content", _descriptor2, _assertThisInitialized(_this));
49
+
50
+ return _this;
51
+ }
52
+
53
+ var _proto = SubSectionBlock.prototype;
54
+
55
+ _proto.init = function init() {
56
+ _BlockBase.prototype.init.call(this);
57
+
58
+ this._bConnected = true;
59
+ };
60
+
61
+ _proto._applyFormAdjustment = function _applyFormAdjustment() {
62
+ var sFormAdjustment = this.getFormAdjustment(),
63
+ oView = this._getSelectedViewContent(),
64
+ oParent = this._oParentObjectPageSubSection;
65
+
66
+ var oFormAdjustmentFields;
67
+
68
+ if (sFormAdjustment !== BlockBaseFormAdjustment.None && oView && oParent) {
69
+ oFormAdjustmentFields = this._computeFormAdjustmentFields(sFormAdjustment, oParent._oLayoutConfig);
70
+
71
+ this._adjustForm(oView, oFormAdjustmentFields);
72
+ }
73
+ };
74
+
75
+ _proto.setMode = function setMode(sMode) {
76
+ this.setProperty("mode", sMode); // OPTIONAL: this.internalModel.setProperty("/mode", sMode);
77
+ };
78
+
79
+ _proto.connectToModels = function connectToModels() {// View is already connected to the UI5 model tree, hence no extra logic required here
80
+ } /// SubSectionBlock use aggregation instead of a view, i.e. return that as the view content
81
+ ;
82
+
83
+ _proto._getSelectedViewContent = function _getSelectedViewContent() {
84
+ var oContent = this.getAggregation("content");
85
+ return oContent;
86
+ };
87
+
88
+ return SubSectionBlock;
89
+ }(BlockBase), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "columnLayout", [_dec2], {
90
+ configurable: true,
91
+ enumerable: true,
92
+ writable: true,
93
+ initializer: null
94
+ }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, "content", [_dec3], {
95
+ configurable: true,
96
+ enumerable: true,
97
+ writable: true,
98
+ initializer: null
99
+ })), _class2)) || _class);
100
+ return SubSectionBlock;
101
+ }, false);
102
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlN1YlNlY3Rpb25CbG9jay50cyJdLCJuYW1lcyI6WyJCbG9ja0Jhc2VGb3JtQWRqdXN0bWVudCIsInV4YXBMaWIiLCJTdWJTZWN0aW9uQmxvY2siLCJkZWZpbmVVSTVDbGFzcyIsInByb3BlcnR5IiwidHlwZSIsImdyb3VwIiwiZGVmYXVsdFZhbHVlIiwiYWdncmVnYXRpb24iLCJtdWx0aXBsZSIsImluaXQiLCJfYkNvbm5lY3RlZCIsIl9hcHBseUZvcm1BZGp1c3RtZW50Iiwic0Zvcm1BZGp1c3RtZW50IiwiZ2V0Rm9ybUFkanVzdG1lbnQiLCJvVmlldyIsIl9nZXRTZWxlY3RlZFZpZXdDb250ZW50Iiwib1BhcmVudCIsIl9vUGFyZW50T2JqZWN0UGFnZVN1YlNlY3Rpb24iLCJvRm9ybUFkanVzdG1lbnRGaWVsZHMiLCJOb25lIiwiX2NvbXB1dGVGb3JtQWRqdXN0bWVudEZpZWxkcyIsIl9vTGF5b3V0Q29uZmlnIiwiX2FkanVzdEZvcm0iLCJzZXRNb2RlIiwic01vZGUiLCJzZXRQcm9wZXJ0eSIsImNvbm5lY3RUb01vZGVscyIsIm9Db250ZW50IiwiZ2V0QWdncmVnYXRpb24iLCJCbG9ja0Jhc2UiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxNQUFNQSx1QkFBdUIsR0FBR0MsT0FBTyxDQUFDRCx1QkFBeEM7TUFFTUUsZSxXQURMQyxjQUFjLENBQUMsc0RBQUQsQyxVQUViQyxRQUFRLENBQUM7QUFBRUMsSUFBQUEsSUFBSSxFQUFFLGdDQUFSO0FBQTBDQyxJQUFBQSxLQUFLLEVBQUUsVUFBakQ7QUFBNkRDLElBQUFBLFlBQVksRUFBRTtBQUEzRSxHQUFELEMsVUFHUkMsV0FBVyxDQUFDO0FBQUVILElBQUFBLElBQUksRUFBRSxxQkFBUjtBQUErQkksSUFBQUEsUUFBUSxFQUFFO0FBQXpDLEdBQUQsQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1dBR1pDLEksR0FBQSxnQkFBTztBQUNOLDJCQUFNQSxJQUFOOztBQUNDLFVBQUQsQ0FBY0MsV0FBZCxHQUE0QixJQUE1QjtBQUNBLEs7O1dBQ0RDLG9CLEdBQUEsZ0NBQXVCO0FBQ3RCLFVBQU1DLGVBQWUsR0FBRyxLQUFLQyxpQkFBTCxFQUF4QjtBQUFBLFVBQ0NDLEtBQUssR0FBRyxLQUFLQyx1QkFBTCxFQURUO0FBQUEsVUFFQ0MsT0FBTyxHQUFHLEtBQUtDLDRCQUZoQjs7QUFHQSxVQUFJQyxxQkFBSjs7QUFFQSxVQUFJTixlQUFlLEtBQUtiLHVCQUF1QixDQUFDb0IsSUFBNUMsSUFBb0RMLEtBQXBELElBQTZERSxPQUFqRSxFQUEwRTtBQUN6RUUsUUFBQUEscUJBQXFCLEdBQUcsS0FBS0UsNEJBQUwsQ0FBa0NSLGVBQWxDLEVBQW1ESSxPQUFPLENBQUNLLGNBQTNELENBQXhCOztBQUVBLGFBQUtDLFdBQUwsQ0FBaUJSLEtBQWpCLEVBQXdCSSxxQkFBeEI7QUFDQTtBQUNELEs7O1dBQ0RLLE8sR0FBQSxpQkFBUUMsS0FBUixFQUFvQjtBQUNuQixXQUFLQyxXQUFMLENBQWlCLE1BQWpCLEVBQXlCRCxLQUF6QixFQURtQixDQUVuQjtBQUNBLEs7O1dBRURFLGUsR0FBQSwyQkFBa0IsQ0FDakI7QUFDQSxLLENBQ0Q7OztXQUNBWCx1QixHQUFBLG1DQUEwQjtBQUN6QixVQUFNWSxRQUFRLEdBQUcsS0FBS0MsY0FBTCxDQUFvQixTQUFwQixDQUFqQjtBQUNBLGFBQU9ELFFBQVA7QUFDQSxLOzs7SUFuQzRCRSxTOzs7Ozs7Ozs7OztTQTJDZjVCLGUiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFnZ3JlZ2F0aW9uLCBkZWZpbmVVSTVDbGFzcywgcHJvcGVydHkgfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgQmxvY2tCYXNlIGZyb20gXCJzYXAvdXhhcC9CbG9ja0Jhc2VcIjtcbmltcG9ydCB1eGFwTGliLCB7IEJsb2NrQmFzZUNvbHVtbkxheW91dCB9IGZyb20gXCJzYXAvdXhhcC9saWJyYXJ5XCI7XG5jb25zdCBCbG9ja0Jhc2VGb3JtQWRqdXN0bWVudCA9IHV4YXBMaWIuQmxvY2tCYXNlRm9ybUFkanVzdG1lbnQ7XG5AZGVmaW5lVUk1Q2xhc3MoXCJzYXAuZmUudGVtcGxhdGVzLk9iamVjdFBhZ2UuY29udHJvbHMuU3ViU2VjdGlvbkJsb2NrXCIpXG5jbGFzcyBTdWJTZWN0aW9uQmxvY2sgZXh0ZW5kcyBCbG9ja0Jhc2Uge1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcInNhcC51eGFwLkJsb2NrQmFzZUNvbHVtbkxheW91dFwiLCBncm91cDogXCJCZWhhdmlvclwiLCBkZWZhdWx0VmFsdWU6IDQgfSlcblx0Y29sdW1uTGF5b3V0ITogQmxvY2tCYXNlQ29sdW1uTGF5b3V0O1xuXG5cdEBhZ2dyZWdhdGlvbih7IHR5cGU6IFwic2FwLnVpLmNvcmUuQ29udHJvbFwiLCBtdWx0aXBsZTogZmFsc2UgfSlcblx0Y29udGVudCE6IENvbnRyb2w7XG5cdHByaXZhdGUgX29QYXJlbnRPYmplY3RQYWdlU3ViU2VjdGlvbiE6IGFueTtcblx0aW5pdCgpIHtcblx0XHRzdXBlci5pbml0KCk7XG5cdFx0KHRoaXMgYXMgYW55KS5fYkNvbm5lY3RlZCA9IHRydWU7XG5cdH1cblx0X2FwcGx5Rm9ybUFkanVzdG1lbnQoKSB7XG5cdFx0Y29uc3Qgc0Zvcm1BZGp1c3RtZW50ID0gdGhpcy5nZXRGb3JtQWRqdXN0bWVudCgpLFxuXHRcdFx0b1ZpZXcgPSB0aGlzLl9nZXRTZWxlY3RlZFZpZXdDb250ZW50KCksXG5cdFx0XHRvUGFyZW50ID0gdGhpcy5fb1BhcmVudE9iamVjdFBhZ2VTdWJTZWN0aW9uO1xuXHRcdGxldCBvRm9ybUFkanVzdG1lbnRGaWVsZHM7XG5cblx0XHRpZiAoc0Zvcm1BZGp1c3RtZW50ICE9PSBCbG9ja0Jhc2VGb3JtQWRqdXN0bWVudC5Ob25lICYmIG9WaWV3ICYmIG9QYXJlbnQpIHtcblx0XHRcdG9Gb3JtQWRqdXN0bWVudEZpZWxkcyA9IHRoaXMuX2NvbXB1dGVGb3JtQWRqdXN0bWVudEZpZWxkcyhzRm9ybUFkanVzdG1lbnQsIG9QYXJlbnQuX29MYXlvdXRDb25maWcpO1xuXG5cdFx0XHR0aGlzLl9hZGp1c3RGb3JtKG9WaWV3LCBvRm9ybUFkanVzdG1lbnRGaWVsZHMpO1xuXHRcdH1cblx0fVxuXHRzZXRNb2RlKHNNb2RlOiBhbnkpIHtcblx0XHR0aGlzLnNldFByb3BlcnR5KFwibW9kZVwiLCBzTW9kZSk7XG5cdFx0Ly8gT1BUSU9OQUw6IHRoaXMuaW50ZXJuYWxNb2RlbC5zZXRQcm9wZXJ0eShcIi9tb2RlXCIsIHNNb2RlKTtcblx0fVxuXG5cdGNvbm5lY3RUb01vZGVscygpIHtcblx0XHQvLyBWaWV3IGlzIGFscmVhZHkgY29ubmVjdGVkIHRvIHRoZSBVSTUgbW9kZWwgdHJlZSwgaGVuY2Ugbm8gZXh0cmEgbG9naWMgcmVxdWlyZWQgaGVyZVxuXHR9XG5cdC8vLyBTdWJTZWN0aW9uQmxvY2sgdXNlIGFnZ3JlZ2F0aW9uIGluc3RlYWQgb2YgYSB2aWV3LCBpLmUuIHJldHVybiB0aGF0IGFzIHRoZSB2aWV3IGNvbnRlbnRcblx0X2dldFNlbGVjdGVkVmlld0NvbnRlbnQoKSB7XG5cdFx0Y29uc3Qgb0NvbnRlbnQgPSB0aGlzLmdldEFnZ3JlZ2F0aW9uKFwiY29udGVudFwiKTtcblx0XHRyZXR1cm4gb0NvbnRlbnQ7XG5cdH1cbn1cblxuaW50ZXJmYWNlIFN1YlNlY3Rpb25CbG9jayB7XG5cdF9hZGp1c3RGb3JtKHZpZXc6IGFueSwgZm9ybUZpZWxkczogYW55KTogdm9pZDtcblx0X2NvbXB1dGVGb3JtQWRqdXN0bWVudEZpZWxkcyhzRm9ybUFkanVzdG1lbnQ6IGFueSwgX29MYXlvdXRDb25maWc6IGFueSk6IGFueTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgU3ViU2VjdGlvbkJsb2NrO1xuIl19
@@ -0,0 +1,50 @@
1
+ import { aggregation, defineUI5Class, property } from "sap/fe/core/helpers/ClassSupport";
2
+ import Control from "sap/ui/core/Control";
3
+ import BlockBase from "sap/uxap/BlockBase";
4
+ import uxapLib, { BlockBaseColumnLayout } from "sap/uxap/library";
5
+ const BlockBaseFormAdjustment = uxapLib.BlockBaseFormAdjustment;
6
+ @defineUI5Class("sap.fe.templates.ObjectPage.controls.SubSectionBlock")
7
+ class SubSectionBlock extends BlockBase {
8
+ @property({ type: "sap.uxap.BlockBaseColumnLayout", group: "Behavior", defaultValue: 4 })
9
+ columnLayout!: BlockBaseColumnLayout;
10
+
11
+ @aggregation({ type: "sap.ui.core.Control", multiple: false })
12
+ content!: Control;
13
+ private _oParentObjectPageSubSection!: any;
14
+ init() {
15
+ super.init();
16
+ (this as any)._bConnected = true;
17
+ }
18
+ _applyFormAdjustment() {
19
+ const sFormAdjustment = this.getFormAdjustment(),
20
+ oView = this._getSelectedViewContent(),
21
+ oParent = this._oParentObjectPageSubSection;
22
+ let oFormAdjustmentFields;
23
+
24
+ if (sFormAdjustment !== BlockBaseFormAdjustment.None && oView && oParent) {
25
+ oFormAdjustmentFields = this._computeFormAdjustmentFields(sFormAdjustment, oParent._oLayoutConfig);
26
+
27
+ this._adjustForm(oView, oFormAdjustmentFields);
28
+ }
29
+ }
30
+ setMode(sMode: any) {
31
+ this.setProperty("mode", sMode);
32
+ // OPTIONAL: this.internalModel.setProperty("/mode", sMode);
33
+ }
34
+
35
+ connectToModels() {
36
+ // View is already connected to the UI5 model tree, hence no extra logic required here
37
+ }
38
+ /// SubSectionBlock use aggregation instead of a view, i.e. return that as the view content
39
+ _getSelectedViewContent() {
40
+ const oContent = this.getAggregation("content");
41
+ return oContent;
42
+ }
43
+ }
44
+
45
+ interface SubSectionBlock {
46
+ _adjustForm(view: any, formFields: any): void;
47
+ _computeFormAdjustmentFields(sFormAdjustment: any, _oLayoutConfig: any): any;
48
+ }
49
+
50
+ export default SubSectionBlock;