@sapui5/sap.fe.templates 1.110.0 → 1.111.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 (142) hide show
  1. package/package.json +2 -20
  2. package/src/sap/fe/templates/.library +1 -1
  3. package/src/sap/fe/templates/AnalyticalListPage/Component-dbg.js +21 -0
  4. package/src/sap/fe/templates/AnalyticalListPage/Component.js +3 -18
  5. package/src/sap/fe/templates/AnalyticalListPage/Component.js.map +1 -0
  6. package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate-dbg.js +32 -0
  7. package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.js +3 -29
  8. package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.js.map +1 -0
  9. package/src/sap/fe/templates/AnalyticalListPage/manifest.json +1 -1
  10. package/src/sap/fe/templates/ListComponent-dbg.js +146 -0
  11. package/src/sap/fe/templates/ListComponent.js +3 -143
  12. package/src/sap/fe/templates/ListComponent.js.map +1 -0
  13. package/src/sap/fe/templates/ListReport/Component-dbg.js +77 -0
  14. package/src/sap/fe/templates/ListReport/Component.js +3 -74
  15. package/src/sap/fe/templates/ListReport/Component.js.map +1 -0
  16. package/src/sap/fe/templates/ListReport/ExtensionAPI-dbg.js +147 -0
  17. package/src/sap/fe/templates/ListReport/ExtensionAPI.js +3 -144
  18. package/src/sap/fe/templates/ListReport/ExtensionAPI.js.map +1 -0
  19. package/src/sap/fe/templates/ListReport/LRMessageStrip-dbg.js +191 -0
  20. package/src/sap/fe/templates/ListReport/LRMessageStrip.js +3 -193
  21. package/src/sap/fe/templates/ListReport/LRMessageStrip.js.map +1 -0
  22. package/src/sap/fe/templates/ListReport/ListReport.view.xml +1 -0
  23. package/src/sap/fe/templates/ListReport/ListReportController-dbg.controller.js +799 -0
  24. package/src/sap/fe/templates/ListReport/ListReportController.controller.js +3 -832
  25. package/src/sap/fe/templates/ListReport/ListReportController.controller.js.map +1 -0
  26. package/src/sap/fe/templates/ListReport/ListReportController.controller.ts +6 -24
  27. package/src/sap/fe/templates/ListReport/ListReportTemplating-dbg.js +40 -0
  28. package/src/sap/fe/templates/ListReport/ListReportTemplating.js +3 -37
  29. package/src/sap/fe/templates/ListReport/ListReportTemplating.js.map +1 -0
  30. package/src/sap/fe/templates/ListReport/controls/MultipleModeControl-dbg.js +375 -0
  31. package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.js +3 -378
  32. package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.js.map +1 -0
  33. package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.ts +10 -3
  34. package/src/sap/fe/templates/ListReport/manifest.json +1 -1
  35. package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation-dbg.js +53 -0
  36. package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.js +3 -50
  37. package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.js.map +1 -0
  38. package/src/sap/fe/templates/ListReport/overrides/Share-dbg.js +109 -0
  39. package/src/sap/fe/templates/ListReport/overrides/Share.js +3 -107
  40. package/src/sap/fe/templates/ListReport/overrides/Share.js.map +1 -0
  41. package/src/sap/fe/templates/ListReport/overrides/ViewState-dbg.js +481 -0
  42. package/src/sap/fe/templates/ListReport/overrides/ViewState.js +3 -428
  43. package/src/sap/fe/templates/ListReport/overrides/ViewState.js.map +1 -0
  44. package/src/sap/fe/templates/ListReport/overrides/ViewState.ts +164 -32
  45. package/src/sap/fe/templates/ListReport/view/fragments/CustomView.fragment.xml +0 -3
  46. package/src/sap/fe/templates/ListReport/view/fragments/MacroChart.fragment.xml +2 -0
  47. package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode-dbg.fragment.js +123 -0
  48. package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.js +29 -63
  49. package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.js.map +1 -0
  50. package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.ts +2 -2
  51. package/src/sap/fe/templates/ObjectPage/Component-dbg.js +150 -0
  52. package/src/sap/fe/templates/ObjectPage/Component.js +3 -148
  53. package/src/sap/fe/templates/ObjectPage/Component.js.map +1 -0
  54. package/src/sap/fe/templates/ObjectPage/ExtendPageDefinition-dbg.js +57 -0
  55. package/src/sap/fe/templates/ObjectPage/ExtendPageDefinition.js +3 -61
  56. package/src/sap/fe/templates/ObjectPage/ExtendPageDefinition.js.map +1 -0
  57. package/src/sap/fe/templates/ObjectPage/ExtensionAPI-dbg.js +222 -0
  58. package/src/sap/fe/templates/ObjectPage/ExtensionAPI.js +3 -243
  59. package/src/sap/fe/templates/ObjectPage/ExtensionAPI.js.map +1 -0
  60. package/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +2 -2
  61. package/src/sap/fe/templates/ObjectPage/ObjectPageController-dbg.controller.js +1413 -0
  62. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +3 -1534
  63. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js.map +1 -0
  64. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.ts +11 -14
  65. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating-dbg.js +851 -0
  66. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.js +3 -851
  67. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.js.map +1 -0
  68. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.ts +14 -4
  69. package/src/sap/fe/templates/ObjectPage/components/DraftHandlerButton-dbg.js +147 -0
  70. package/src/sap/fe/templates/ObjectPage/components/DraftHandlerButton.js +3 -144
  71. package/src/sap/fe/templates/ObjectPage/components/DraftHandlerButton.js.map +1 -0
  72. package/src/sap/fe/templates/ObjectPage/components/DraftHandlerButton.tsx +5 -6
  73. package/src/sap/fe/templates/ObjectPage/controls/StashableHBox-dbg.js +111 -0
  74. package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js +3 -108
  75. package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js.map +1 -0
  76. package/src/sap/fe/templates/ObjectPage/controls/StashableVBox-dbg.js +24 -0
  77. package/src/sap/fe/templates/ObjectPage/controls/StashableVBox.js +3 -21
  78. package/src/sap/fe/templates/ObjectPage/controls/StashableVBox.js.map +1 -0
  79. package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock-dbg.js +79 -0
  80. package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.js +3 -76
  81. package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.js.map +1 -0
  82. package/src/sap/fe/templates/ObjectPage/designtime/FlexBox-dbg.designtime.js +23 -0
  83. package/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.js +3 -20
  84. package/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.js.map +1 -0
  85. package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox-dbg.designtime.js +52 -0
  86. package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime.js +3 -49
  87. package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime.js.map +1 -0
  88. package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox-dbg.designtime.js +38 -0
  89. package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime.js +3 -35
  90. package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime.js.map +1 -0
  91. package/src/sap/fe/templates/ObjectPage/flexibility/ScrollableHeaderContainer.flexibility-dbg.js +28 -0
  92. package/src/sap/fe/templates/ObjectPage/flexibility/ScrollableHeaderContainer.flexibility.js +3 -29
  93. package/src/sap/fe/templates/ObjectPage/flexibility/ScrollableHeaderContainer.flexibility.js.map +1 -0
  94. package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility-dbg.js +19 -0
  95. package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.js +3 -16
  96. package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.js.map +1 -0
  97. package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility-dbg.js +15 -0
  98. package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.js +3 -12
  99. package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.js.map +1 -0
  100. package/src/sap/fe/templates/ObjectPage/manifest.json +1 -1
  101. package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation-dbg.js +54 -0
  102. package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.js +3 -51
  103. package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.js.map +1 -0
  104. package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting-dbg.js +36 -0
  105. package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.js +3 -33
  106. package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.js.map +1 -0
  107. package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler-dbg.js +16 -0
  108. package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.js +3 -13
  109. package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.js.map +1 -0
  110. package/src/sap/fe/templates/ObjectPage/overrides/Paginator-dbg.js +27 -0
  111. package/src/sap/fe/templates/ObjectPage/overrides/Paginator.js +3 -24
  112. package/src/sap/fe/templates/ObjectPage/overrides/Paginator.js.map +1 -0
  113. package/src/sap/fe/templates/ObjectPage/overrides/Share-dbg.js +276 -0
  114. package/src/sap/fe/templates/ObjectPage/overrides/Share.js +3 -293
  115. package/src/sap/fe/templates/ObjectPage/overrides/Share.js.map +1 -0
  116. package/src/sap/fe/templates/ObjectPage/overrides/ViewState-dbg.js +69 -0
  117. package/src/sap/fe/templates/ObjectPage/overrides/ViewState.js +3 -63
  118. package/src/sap/fe/templates/ObjectPage/overrides/ViewState.js.map +1 -0
  119. package/src/sap/fe/templates/ObjectPage/overrides/ViewState.ts +3 -0
  120. package/src/sap/fe/templates/ObjectPage/view/fragments/Actions.fragment.xml +2 -2
  121. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacetCustomContainer.fragment.xml +1 -2
  122. package/src/sap/fe/templates/ObjectPage/view/fragments/MacroChart.fragment.xml +2 -0
  123. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderContact.fragment.xml +2 -2
  124. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderForm.fragment.xml +12 -1
  125. package/src/sap/fe/templates/ObjectPage/view/fragments/Section.fragment.xml +0 -2
  126. package/src/sap/fe/templates/ObjectPage/view/fragments/SectionContent.fragment.xml +0 -2
  127. package/src/sap/fe/templates/ObjectPage/view/fragments/SectionContentLazyLoader.fragment.xml +0 -2
  128. package/src/sap/fe/templates/ObjectPage/view/fragments/SectionCustomSection.fragment.xml +2 -9
  129. package/src/sap/fe/templates/ObjectPage/view/fragments/SideContentCustomContainer.fragment.xml +1 -2
  130. package/src/sap/fe/templates/TableScroller-dbg.js +49 -0
  131. package/src/sap/fe/templates/TableScroller.js +3 -46
  132. package/src/sap/fe/templates/TableScroller.js.map +1 -0
  133. package/src/sap/fe/templates/designtime/library-preload.designtime.js +17 -0
  134. package/src/sap/fe/templates/designtime/library-preload.designtime.js.map +1 -0
  135. package/src/sap/fe/templates/library-dbg.js +66 -0
  136. package/src/sap/fe/templates/library-preload.js +236 -0
  137. package/src/sap/fe/templates/library-preload.js.map +1 -0
  138. package/src/sap/fe/templates/library.js +3 -56
  139. package/src/sap/fe/templates/library.js.map +1 -0
  140. package/src/sap/fe/templates/library.ts +4 -0
  141. package/src/sap/fe/templates/manifest.json +109 -0
  142. package/src/sap/fe/templates/messagebundle_fr.properties +1 -1
@@ -1,381 +1,6 @@
1
1
  /*!
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved
3
+ * (c) Copyright 2009-2023 SAP SE. All rights reserved
4
4
  */
5
- sap.ui.define(["sap/base/Log", "sap/fe/core/CommonUtils", "sap/fe/core/helpers/ClassSupport", "sap/fe/core/helpers/MessageStrip", "sap/fe/macros/DelegateUtil", "sap/m/IconTabFilter", "sap/ui/core/Control", "sap/ui/core/Core", "sap/ui/fl/write/api/ControlPersonalizationWriteAPI", "sap/ui/model/json/JSONModel"], function (Log, CommonUtils, ClassSupport, MessageStrip, DelegateUtil, IconTabFilter, Control, Core, ControlPersonalizationWriteAPI, JSONModel) {
6
- "use strict";
7
-
8
- var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7;
9
- var property = ClassSupport.property;
10
- var event = ClassSupport.event;
11
- var defineUI5Class = ClassSupport.defineUI5Class;
12
- var association = ClassSupport.association;
13
- var aggregation = ClassSupport.aggregation;
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
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
16
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
17
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
18
- 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; }
19
- 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.'); }
20
- var BindingAction;
21
- (function (BindingAction) {
22
- BindingAction["Suspend"] = "suspendBinding";
23
- BindingAction["Resume"] = "resumeBinding";
24
- })(BindingAction || (BindingAction = {}));
25
- var MultipleModeControl = (_dec = defineUI5Class("sap.fe.templates.ListReport.controls.MultipleModeControl"), _dec2 = property({
26
- type: "boolean"
27
- }), _dec3 = property({
28
- type: "boolean",
29
- defaultValue: false
30
- }), _dec4 = property({
31
- type: "boolean",
32
- defaultValue: false
33
- }), _dec5 = aggregation({
34
- type: "sap.m.IconTabBar",
35
- multiple: false,
36
- isDefault: true
37
- }), _dec6 = association({
38
- type: "sap.ui.core.Control",
39
- multiple: true
40
- }), _dec7 = association({
41
- type: "sap.fe.core.controls.FilterBar",
42
- multiple: false
43
- }), _dec8 = event(), _dec(_class = (_class2 = /*#__PURE__*/function (_Control) {
44
- _inheritsLoose(MultipleModeControl, _Control);
45
- function MultipleModeControl() {
46
- var _this;
47
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
48
- args[_key] = arguments[_key];
49
- }
50
- _this = _Control.call.apply(_Control, [this].concat(args)) || this;
51
- _initializerDefineProperty(_this, "showCounts", _descriptor, _assertThisInitialized(_this));
52
- _initializerDefineProperty(_this, "freezeContent", _descriptor2, _assertThisInitialized(_this));
53
- _initializerDefineProperty(_this, "countsOutDated", _descriptor3, _assertThisInitialized(_this));
54
- _initializerDefineProperty(_this, "content", _descriptor4, _assertThisInitialized(_this));
55
- _initializerDefineProperty(_this, "innerControls", _descriptor5, _assertThisInitialized(_this));
56
- _initializerDefineProperty(_this, "filterControl", _descriptor6, _assertThisInitialized(_this));
57
- _initializerDefineProperty(_this, "select", _descriptor7, _assertThisInitialized(_this));
58
- return _this;
59
- }
60
- var _proto = MultipleModeControl.prototype;
61
- _proto.onBeforeRendering = function onBeforeRendering() {
62
- var _this2 = this;
63
- this.getTabsModel(); // Generate the model which is mandatory for some bindings
64
-
65
- var oFilterControl = this._getFilterControl();
66
- if (!oFilterControl) {
67
- // In case there's no filterbar, we have to update the counts in the tabs immediately
68
- this.setCountsOutDated(true);
69
- }
70
- var oFilterBarAPI = oFilterControl === null || oFilterControl === void 0 ? void 0 : oFilterControl.getParent();
71
- this.getAllInnerControls().forEach(function (oMacroAPI) {
72
- var _oMacroAPI$suspendBin;
73
- if (_this2.showCounts) {
74
- oMacroAPI.attachEvent("internalDataRequested", _this2._refreshTabsCount.bind(_this2));
75
- }
76
- (_oMacroAPI$suspendBin = oMacroAPI.suspendBinding) === null || _oMacroAPI$suspendBin === void 0 ? void 0 : _oMacroAPI$suspendBin.call(oMacroAPI);
77
- });
78
- if (oFilterBarAPI) {
79
- oFilterBarAPI.attachEvent("internalSearch", this._onSearch.bind(this));
80
- oFilterBarAPI.attachEvent("internalFilterChanged", this._onFilterChanged.bind(this));
81
- }
82
- };
83
- _proto.onAfterRendering = function onAfterRendering() {
84
- var _this$getSelectedInne, _this$getSelectedInne2;
85
- (_this$getSelectedInne = this.getSelectedInnerControl()) === null || _this$getSelectedInne === void 0 ? void 0 : (_this$getSelectedInne2 = _this$getSelectedInne.resumeBinding) === null || _this$getSelectedInne2 === void 0 ? void 0 : _this$getSelectedInne2.call(_this$getSelectedInne, !this.getProperty("freezeContent"));
86
- };
87
- MultipleModeControl.render = function render(oRm, oControl) {
88
- oRm.renderControl(oControl.content);
89
- }
90
-
91
- /**
92
- * Gets the model containing information related to the IconTabFilters.
93
- *
94
- * @returns {sap.ui.model.Model | undefined} The model
95
- */;
96
- _proto.getTabsModel = function getTabsModel() {
97
- var sTabsModel = "tabsInternal";
98
- var oContent = this.content;
99
- if (!oContent) {
100
- return undefined;
101
- }
102
- var oModel = oContent.getModel(sTabsModel);
103
- if (!oModel) {
104
- oModel = new JSONModel({});
105
- oContent.setModel(oModel, sTabsModel);
106
- }
107
- return oModel;
108
- }
109
-
110
- /**
111
- * Gets the inner control of the displayed tab.
112
- *
113
- * @returns {InnerControlType | undefined} The control
114
- */;
115
- _proto.getSelectedInnerControl = function getSelectedInnerControl() {
116
- var _this$content,
117
- _this3 = this;
118
- var oSelectedTab = (_this$content = this.content) === null || _this$content === void 0 ? void 0 : _this$content.getItems().find(function (oItem) {
119
- return oItem.getKey() === _this3.content.getSelectedKey();
120
- });
121
- return oSelectedTab ? this.getAllInnerControls().find(function (oMacroAPI) {
122
- return _this3._getTabFromInnerControl(oMacroAPI) === oSelectedTab;
123
- }) : undefined;
124
- }
125
-
126
- /**
127
- * Manages the binding of all inner controls when the selected IconTabFilter is changed.
128
- *
129
- * @param {sap.ui.base.Event} oEvent Event fired by the IconTabBar
130
- */;
131
- MultipleModeControl.handleTabChange = function handleTabChange(oEvent) {
132
- var _oMultiControl$_getVi, _oMultiControl$_getVi2;
133
- var oIconTabBar = oEvent.getSource();
134
- var oMultiControl = oIconTabBar.getParent();
135
- var mParameters = oEvent.getParameters();
136
- oMultiControl._setInnerBinding(true);
137
- var sPreviousSelectedKey = mParameters === null || mParameters === void 0 ? void 0 : mParameters.previousKey;
138
- var sSelectedKey = mParameters === null || mParameters === void 0 ? void 0 : mParameters.selectedKey;
139
- if (sSelectedKey && sPreviousSelectedKey !== sSelectedKey) {
140
- var oFilterBar = oMultiControl._getFilterControl();
141
- if (oFilterBar && !oMultiControl.getProperty("freezeContent")) {
142
- if (!oMultiControl.getSelectedInnerControl()) {
143
- //custom tab
144
- oMultiControl._refreshCustomView(oFilterBar.getFilterConditions(), "tabChanged");
145
- }
146
- }
147
- ControlPersonalizationWriteAPI.add({
148
- changes: [{
149
- changeSpecificData: {
150
- changeType: "selectIconTabBarFilter",
151
- content: {
152
- selectedKey: sSelectedKey,
153
- previousSelectedKey: sPreviousSelectedKey
154
- }
155
- },
156
- selectorElement: oIconTabBar
157
- }]
158
- });
159
- }
160
- (_oMultiControl$_getVi = oMultiControl._getViewController()) === null || _oMultiControl$_getVi === void 0 ? void 0 : (_oMultiControl$_getVi2 = _oMultiControl$_getVi.getExtensionAPI()) === null || _oMultiControl$_getVi2 === void 0 ? void 0 : _oMultiControl$_getVi2.updateAppState();
161
- oMultiControl.fireEvent("select", {
162
- iconTabBar: oIconTabBar,
163
- selectedKey: sSelectedKey,
164
- previousKey: sPreviousSelectedKey
165
- });
166
- }
167
-
168
- /**
169
- * Invalidates the content of all inner controls.
170
- */;
171
- _proto.invalidateContent = function invalidateContent() {
172
- this.setCountsOutDated(true);
173
- this.getAllInnerControls().forEach(function (oMacroAPI) {
174
- var _oMacroAPI$invalidate;
175
- (_oMacroAPI$invalidate = oMacroAPI.invalidateContent) === null || _oMacroAPI$invalidate === void 0 ? void 0 : _oMacroAPI$invalidate.call(oMacroAPI);
176
- });
177
- }
178
-
179
- /**
180
- * Sets the counts to out of date or up to date
181
- * If the counts are set to "out of date" and the selected IconTabFilter doesn't contain an inner control all inner controls are requested to get the new counts.
182
- *
183
- * @param {boolean} bValue Freeze or not the control
184
- */;
185
- _proto.setCountsOutDated = function setCountsOutDated() {
186
- var bValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
187
- this.setProperty("countsOutDated", bValue);
188
- // if the current tab is not configured with no inner Control
189
- // the tab counts must be manually refreshed since no Macro API will sent event internalDataRequested
190
- if (bValue && !this.getSelectedInnerControl()) {
191
- this._refreshTabsCount();
192
- }
193
- }
194
-
195
- /**
196
- * Freezes the content :
197
- * - content is frozen: the binding of the inner controls are suspended.
198
- * - content is unfrozen: the binding of inner control related to the selected IconTabFilter is resumed.
199
- *
200
- * @param {boolean} bValue Freeze or not the control
201
- */;
202
- _proto.setFreezeContent = function setFreezeContent(bValue) {
203
- this.setProperty("freezeContent", bValue);
204
- this._setInnerBinding();
205
- }
206
-
207
- /**
208
- * Updates the internal model with the properties that are not applicable on each IconTabFilter (containing inner control) according to the entityType of the filter control.
209
- *
210
- * @param oResourceBundle
211
- */;
212
- _proto._updateMultiTabNotApplicableFields = function _updateMultiTabNotApplicableFields(oResourceBundle) {
213
- var _this4 = this;
214
- var tabsModel = this.getTabsModel();
215
- var oFilterControl = this._getFilterControl();
216
- if (tabsModel && oFilterControl) {
217
- var results = {};
218
- this.getAllInnerControls().forEach(function (oMacroAPI) {
219
- var oTab = _this4._getTabFromInnerControl(oMacroAPI);
220
- if (oTab) {
221
- var _oMacroAPI$refreshNot;
222
- var sTabId = oTab.getKey();
223
- var mIgnoredFields = ((_oMacroAPI$refreshNot = oMacroAPI.refreshNotApplicableFields) === null || _oMacroAPI$refreshNot === void 0 ? void 0 : _oMacroAPI$refreshNot.call(oMacroAPI, oFilterControl)) || [];
224
- results[sTabId] = {
225
- notApplicable: {
226
- fields: mIgnoredFields,
227
- title: _this4._setTabMessageStrip({
228
- entityTypePath: oFilterControl.data("entityType"),
229
- ignoredFields: mIgnoredFields,
230
- resourceBundle: oResourceBundle,
231
- title: oTab.getText()
232
- })
233
- }
234
- };
235
- }
236
- });
237
- tabsModel.setData(results);
238
- }
239
- }
240
-
241
- /**
242
- * Gets the inner controls.
243
- *
244
- * @param {boolean} bOnlyForVisibleTab Should display only the visible controls
245
- * @returns {InnerControlType[]} An array of controls
246
- */;
247
- _proto.getAllInnerControls = function getAllInnerControls() {
248
- var _this5 = this;
249
- var bOnlyForVisibleTab = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
250
- return this.innerControls.reduce(function (aInnerControls, sInnerControl) {
251
- var oControl = Core.byId(sInnerControl);
252
- if (oControl) {
253
- aInnerControls.push(oControl);
254
- }
255
- return aInnerControls.filter(function (oInnerControl) {
256
- var _this5$_getTabFromInn;
257
- return !bOnlyForVisibleTab || ((_this5$_getTabFromInn = _this5._getTabFromInnerControl(oInnerControl)) === null || _this5$_getTabFromInn === void 0 ? void 0 : _this5$_getTabFromInn.getVisible());
258
- });
259
- }, []) || [];
260
- };
261
- _proto._getFilterControl = function _getFilterControl() {
262
- return Core.byId(this.filterControl);
263
- };
264
- _proto._getTabFromInnerControl = function _getTabFromInnerControl(oControl) {
265
- var sSupportedClass = IconTabFilter.getMetadata().getName();
266
- var oTab = oControl;
267
- if (oTab && !oTab.isA(sSupportedClass) && oTab.getParent) {
268
- oTab = oControl.getParent();
269
- }
270
- return oTab && oTab.isA(sSupportedClass) ? oTab : undefined;
271
- };
272
- _proto._getViewController = function _getViewController() {
273
- var oView = CommonUtils.getTargetView(this);
274
- return oView && oView.getController();
275
- };
276
- _proto._refreshCustomView = function _refreshCustomView(oFilterConditions, sRefreshCause) {
277
- var _this$_getViewControl, _this$_getViewControl2;
278
- (_this$_getViewControl = this._getViewController()) === null || _this$_getViewControl === void 0 ? void 0 : (_this$_getViewControl2 = _this$_getViewControl.onViewNeedsRefresh) === null || _this$_getViewControl2 === void 0 ? void 0 : _this$_getViewControl2.call(_this$_getViewControl, {
279
- filterConditions: oFilterConditions,
280
- currentTabId: this.content.getSelectedKey(),
281
- refreshCause: sRefreshCause
282
- });
283
- };
284
- _proto._refreshTabsCount = function _refreshTabsCount() {
285
- var _this$content2,
286
- _this6 = this;
287
- var sSelectedKey = (_this$content2 = this.content) === null || _this$content2 === void 0 ? void 0 : _this$content2.getSelectedKey();
288
- this.getAllInnerControls(true).forEach(function (oMacroAPI) {
289
- var oIconTabFilter = _this6._getTabFromInnerControl(oMacroAPI);
290
- if (oMacroAPI !== null && oMacroAPI !== void 0 && oMacroAPI.getCounts && (_this6.countsOutDated || sSelectedKey === (oIconTabFilter === null || oIconTabFilter === void 0 ? void 0 : oIconTabFilter.getKey()))) {
291
- if (oIconTabFilter && oIconTabFilter.setCount) {
292
- oIconTabFilter.setCount("...");
293
- oMacroAPI.getCounts().then(function (iCount) {
294
- return oIconTabFilter.setCount(iCount || "0");
295
- }).catch(function (oError) {
296
- Log.error("Error while requesting Counts for Control", oError);
297
- });
298
- }
299
- }
300
- });
301
- this.setCountsOutDated(false);
302
- };
303
- _proto._setInnerBinding = function _setInnerBinding() {
304
- var _this7 = this;
305
- var bRequestIfNotInitialized = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
306
- if (this.content) {
307
- this.getAllInnerControls().forEach(function (oMacroAPI) {
308
- var _oMacroAPI$sAction;
309
- var oIconTabFilter = _this7._getTabFromInnerControl(oMacroAPI);
310
- var bIsSelectedKey = (oIconTabFilter === null || oIconTabFilter === void 0 ? void 0 : oIconTabFilter.getKey()) === _this7.content.getSelectedKey();
311
- var sAction = bIsSelectedKey && !_this7.getProperty("freezeContent") ? BindingAction.Resume : BindingAction.Suspend;
312
- (_oMacroAPI$sAction = oMacroAPI[sAction]) === null || _oMacroAPI$sAction === void 0 ? void 0 : _oMacroAPI$sAction.call(oMacroAPI, sAction === BindingAction.Resume ? bRequestIfNotInitialized && bIsSelectedKey : undefined);
313
- });
314
- }
315
- };
316
- _proto._setTabMessageStrip = function _setTabMessageStrip(properties) {
317
- var sText = "";
318
- var aIgnoredFields = properties.ignoredFields;
319
- var oFilterControl = this._getFilterControl();
320
- if (oFilterControl && Array.isArray(aIgnoredFields) && aIgnoredFields.length > 0 && properties.title) {
321
- var aIgnoredLabels = MessageStrip.getLabels(aIgnoredFields, properties.entityTypePath, oFilterControl, properties.resourceBundle);
322
- sText = MessageStrip.getText(aIgnoredLabels, oFilterControl, properties.title, DelegateUtil.getLocalizedText);
323
- return sText;
324
- }
325
- };
326
- _proto._onSearch = function _onSearch(oEvent) {
327
- this.setCountsOutDated(true);
328
- this.setFreezeContent(false);
329
- if (this.getSelectedInnerControl()) {
330
- var _this$_getViewControl3;
331
- this._updateMultiTabNotApplicableFields((_this$_getViewControl3 = this._getViewController()) === null || _this$_getViewControl3 === void 0 ? void 0 : _this$_getViewControl3.oResourceBundle);
332
- } else {
333
- // custom tab
334
- this._refreshCustomView(oEvent.getParameter("conditions"), "search");
335
- }
336
- };
337
- _proto._onFilterChanged = function _onFilterChanged(oEvent) {
338
- if (oEvent.getParameter("conditionsBased")) {
339
- this.setFreezeContent(true);
340
- }
341
- };
342
- return MultipleModeControl;
343
- }(Control), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "showCounts", [_dec2], {
344
- configurable: true,
345
- enumerable: true,
346
- writable: true,
347
- initializer: null
348
- }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, "freezeContent", [_dec3], {
349
- configurable: true,
350
- enumerable: true,
351
- writable: true,
352
- initializer: null
353
- }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, "countsOutDated", [_dec4], {
354
- configurable: true,
355
- enumerable: true,
356
- writable: true,
357
- initializer: null
358
- }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, "content", [_dec5], {
359
- configurable: true,
360
- enumerable: true,
361
- writable: true,
362
- initializer: null
363
- }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, "innerControls", [_dec6], {
364
- configurable: true,
365
- enumerable: true,
366
- writable: true,
367
- initializer: null
368
- }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, "filterControl", [_dec7], {
369
- configurable: true,
370
- enumerable: true,
371
- writable: true,
372
- initializer: null
373
- }), _descriptor7 = _applyDecoratedDescriptor(_class2.prototype, "select", [_dec8], {
374
- configurable: true,
375
- enumerable: true,
376
- writable: true,
377
- initializer: null
378
- })), _class2)) || _class);
379
- return MultipleModeControl;
380
- }, false);
381
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCaW5kaW5nQWN0aW9uIiwiTXVsdGlwbGVNb2RlQ29udHJvbCIsImRlZmluZVVJNUNsYXNzIiwicHJvcGVydHkiLCJ0eXBlIiwiZGVmYXVsdFZhbHVlIiwiYWdncmVnYXRpb24iLCJtdWx0aXBsZSIsImlzRGVmYXVsdCIsImFzc29jaWF0aW9uIiwiZXZlbnQiLCJvbkJlZm9yZVJlbmRlcmluZyIsImdldFRhYnNNb2RlbCIsIm9GaWx0ZXJDb250cm9sIiwiX2dldEZpbHRlckNvbnRyb2wiLCJzZXRDb3VudHNPdXREYXRlZCIsIm9GaWx0ZXJCYXJBUEkiLCJnZXRQYXJlbnQiLCJnZXRBbGxJbm5lckNvbnRyb2xzIiwiZm9yRWFjaCIsIm9NYWNyb0FQSSIsInNob3dDb3VudHMiLCJhdHRhY2hFdmVudCIsIl9yZWZyZXNoVGFic0NvdW50IiwiYmluZCIsInN1c3BlbmRCaW5kaW5nIiwiX29uU2VhcmNoIiwiX29uRmlsdGVyQ2hhbmdlZCIsIm9uQWZ0ZXJSZW5kZXJpbmciLCJnZXRTZWxlY3RlZElubmVyQ29udHJvbCIsInJlc3VtZUJpbmRpbmciLCJnZXRQcm9wZXJ0eSIsInJlbmRlciIsIm9SbSIsIm9Db250cm9sIiwicmVuZGVyQ29udHJvbCIsImNvbnRlbnQiLCJzVGFic01vZGVsIiwib0NvbnRlbnQiLCJ1bmRlZmluZWQiLCJvTW9kZWwiLCJnZXRNb2RlbCIsIkpTT05Nb2RlbCIsInNldE1vZGVsIiwib1NlbGVjdGVkVGFiIiwiZ2V0SXRlbXMiLCJmaW5kIiwib0l0ZW0iLCJnZXRLZXkiLCJnZXRTZWxlY3RlZEtleSIsIl9nZXRUYWJGcm9tSW5uZXJDb250cm9sIiwiaGFuZGxlVGFiQ2hhbmdlIiwib0V2ZW50Iiwib0ljb25UYWJCYXIiLCJnZXRTb3VyY2UiLCJvTXVsdGlDb250cm9sIiwibVBhcmFtZXRlcnMiLCJnZXRQYXJhbWV0ZXJzIiwiX3NldElubmVyQmluZGluZyIsInNQcmV2aW91c1NlbGVjdGVkS2V5IiwicHJldmlvdXNLZXkiLCJzU2VsZWN0ZWRLZXkiLCJzZWxlY3RlZEtleSIsIm9GaWx0ZXJCYXIiLCJfcmVmcmVzaEN1c3RvbVZpZXciLCJnZXRGaWx0ZXJDb25kaXRpb25zIiwiQ29udHJvbFBlcnNvbmFsaXphdGlvbldyaXRlQVBJIiwiYWRkIiwiY2hhbmdlcyIsImNoYW5nZVNwZWNpZmljRGF0YSIsImNoYW5nZVR5cGUiLCJwcmV2aW91c1NlbGVjdGVkS2V5Iiwic2VsZWN0b3JFbGVtZW50IiwiX2dldFZpZXdDb250cm9sbGVyIiwiZ2V0RXh0ZW5zaW9uQVBJIiwidXBkYXRlQXBwU3RhdGUiLCJmaXJlRXZlbnQiLCJpY29uVGFiQmFyIiwiaW52YWxpZGF0ZUNvbnRlbnQiLCJiVmFsdWUiLCJzZXRQcm9wZXJ0eSIsInNldEZyZWV6ZUNvbnRlbnQiLCJfdXBkYXRlTXVsdGlUYWJOb3RBcHBsaWNhYmxlRmllbGRzIiwib1Jlc291cmNlQnVuZGxlIiwidGFic01vZGVsIiwicmVzdWx0cyIsIm9UYWIiLCJzVGFiSWQiLCJtSWdub3JlZEZpZWxkcyIsInJlZnJlc2hOb3RBcHBsaWNhYmxlRmllbGRzIiwibm90QXBwbGljYWJsZSIsImZpZWxkcyIsInRpdGxlIiwiX3NldFRhYk1lc3NhZ2VTdHJpcCIsImVudGl0eVR5cGVQYXRoIiwiZGF0YSIsImlnbm9yZWRGaWVsZHMiLCJyZXNvdXJjZUJ1bmRsZSIsImdldFRleHQiLCJzZXREYXRhIiwiYk9ubHlGb3JWaXNpYmxlVGFiIiwiaW5uZXJDb250cm9scyIsInJlZHVjZSIsImFJbm5lckNvbnRyb2xzIiwic0lubmVyQ29udHJvbCIsIkNvcmUiLCJieUlkIiwicHVzaCIsImZpbHRlciIsIm9Jbm5lckNvbnRyb2wiLCJnZXRWaXNpYmxlIiwiZmlsdGVyQ29udHJvbCIsInNTdXBwb3J0ZWRDbGFzcyIsIkljb25UYWJGaWx0ZXIiLCJnZXRNZXRhZGF0YSIsImdldE5hbWUiLCJpc0EiLCJvVmlldyIsIkNvbW1vblV0aWxzIiwiZ2V0VGFyZ2V0VmlldyIsImdldENvbnRyb2xsZXIiLCJvRmlsdGVyQ29uZGl0aW9ucyIsInNSZWZyZXNoQ2F1c2UiLCJvblZpZXdOZWVkc1JlZnJlc2giLCJmaWx0ZXJDb25kaXRpb25zIiwiY3VycmVudFRhYklkIiwicmVmcmVzaENhdXNlIiwib0ljb25UYWJGaWx0ZXIiLCJnZXRDb3VudHMiLCJjb3VudHNPdXREYXRlZCIsInNldENvdW50IiwidGhlbiIsImlDb3VudCIsImNhdGNoIiwib0Vycm9yIiwiTG9nIiwiZXJyb3IiLCJiUmVxdWVzdElmTm90SW5pdGlhbGl6ZWQiLCJiSXNTZWxlY3RlZEtleSIsInNBY3Rpb24iLCJSZXN1bWUiLCJTdXNwZW5kIiwicHJvcGVydGllcyIsInNUZXh0IiwiYUlnbm9yZWRGaWVsZHMiLCJBcnJheSIsImlzQXJyYXkiLCJsZW5ndGgiLCJhSWdub3JlZExhYmVscyIsIk1lc3NhZ2VTdHJpcCIsImdldExhYmVscyIsIkRlbGVnYXRlVXRpbCIsImdldExvY2FsaXplZFRleHQiLCJnZXRQYXJhbWV0ZXIiLCJDb250cm9sIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJNdWx0aXBsZU1vZGVDb250cm9sLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIFJlc291cmNlQnVuZGxlIGZyb20gXCJzYXAvYmFzZS9pMThuL1Jlc291cmNlQnVuZGxlXCI7XG5pbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBDb21tb25VdGlscyBmcm9tIFwic2FwL2ZlL2NvcmUvQ29tbW9uVXRpbHNcIjtcbmltcG9ydCB0eXBlIEZpbHRlckJhciBmcm9tIFwic2FwL2ZlL2NvcmUvY29udHJvbHMvRmlsdGVyQmFyXCI7XG5pbXBvcnQgeyBhZ2dyZWdhdGlvbiwgYXNzb2NpYXRpb24sIGRlZmluZVVJNUNsYXNzLCBldmVudCwgcHJvcGVydHkgfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCBNZXNzYWdlU3RyaXAgZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvTWVzc2FnZVN0cmlwXCI7XG5pbXBvcnQgRGVsZWdhdGVVdGlsIGZyb20gXCJzYXAvZmUvbWFjcm9zL0RlbGVnYXRlVXRpbFwiO1xuaW1wb3J0IE1hY3JvQVBJIGZyb20gXCJzYXAvZmUvbWFjcm9zL01hY3JvQVBJXCI7XG5pbXBvcnQgSWNvblRhYkJhciBmcm9tIFwic2FwL20vSWNvblRhYkJhclwiO1xuaW1wb3J0IEljb25UYWJGaWx0ZXIgZnJvbSBcInNhcC9tL0ljb25UYWJGaWx0ZXJcIjtcbmltcG9ydCB0eXBlIENvcmVFdmVudCBmcm9tIFwic2FwL3VpL2Jhc2UvRXZlbnRcIjtcbmltcG9ydCBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgQ29yZSBmcm9tIFwic2FwL3VpL2NvcmUvQ29yZVwiO1xuaW1wb3J0IFJlbmRlck1hbmFnZXIgZnJvbSBcInNhcC91aS9jb3JlL1JlbmRlck1hbmFnZXJcIjtcbmltcG9ydCBDb250cm9sUGVyc29uYWxpemF0aW9uV3JpdGVBUEkgZnJvbSBcInNhcC91aS9mbC93cml0ZS9hcGkvQ29udHJvbFBlcnNvbmFsaXphdGlvbldyaXRlQVBJXCI7XG5pbXBvcnQgSlNPTk1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvanNvbi9KU09OTW9kZWxcIjtcbmltcG9ydCBNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL01vZGVsXCI7XG5cbmV4cG9ydCB0eXBlIElubmVyQ29udHJvbFR5cGUgPSBNYWNyb0FQSSAmXG5cdFBhcnRpYWw8e1xuXHRcdHJlc3VtZUJpbmRpbmc6IEZ1bmN0aW9uO1xuXHRcdHN1c3BlbmRCaW5kaW5nOiBGdW5jdGlvbjtcblx0XHRnZXRDb3VudHM6IEZ1bmN0aW9uO1xuXHRcdHJlZnJlc2hOb3RBcHBsaWNhYmxlRmllbGRzOiBGdW5jdGlvbjtcblx0XHRpbnZhbGlkYXRlQ29udGVudDogRnVuY3Rpb247XG5cdH0+O1xuXG50eXBlIE1lc3NhZ2VTdHJpcFByb3BlcnRpZXMgPSB7XG5cdGVudGl0eVR5cGVQYXRoOiBzdHJpbmc7XG5cdGlnbm9yZWRGaWVsZHM6IGFueVtdO1xuXHRyZXNvdXJjZUJ1bmRsZTogUmVzb3VyY2VCdW5kbGU7XG5cdHRpdGxlOiBzdHJpbmc7XG59O1xuXG5lbnVtIEJpbmRpbmdBY3Rpb24ge1xuXHRTdXNwZW5kID0gXCJzdXNwZW5kQmluZGluZ1wiLFxuXHRSZXN1bWUgPSBcInJlc3VtZUJpbmRpbmdcIlxufVxuXG5AZGVmaW5lVUk1Q2xhc3MoXCJzYXAuZmUudGVtcGxhdGVzLkxpc3RSZXBvcnQuY29udHJvbHMuTXVsdGlwbGVNb2RlQ29udHJvbFwiKVxuY2xhc3MgTXVsdGlwbGVNb2RlQ29udHJvbCBleHRlbmRzIENvbnRyb2wge1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiB9KVxuXHRzaG93Q291bnRzITogYm9vbGVhbjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuXHRmcmVlemVDb250ZW50ITogYm9vbGVhbjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuXHRjb3VudHNPdXREYXRlZCE6IGJvb2xlYW47XG5cblx0QGFnZ3JlZ2F0aW9uKHsgdHlwZTogXCJzYXAubS5JY29uVGFiQmFyXCIsIG11bHRpcGxlOiBmYWxzZSwgaXNEZWZhdWx0OiB0cnVlIH0pXG5cdGNvbnRlbnQhOiBJY29uVGFiQmFyO1xuXG5cdEBhc3NvY2lhdGlvbih7IHR5cGU6IFwic2FwLnVpLmNvcmUuQ29udHJvbFwiLCBtdWx0aXBsZTogdHJ1ZSB9KVxuXHRpbm5lckNvbnRyb2xzITogc3RyaW5nW107XG5cblx0QGFzc29jaWF0aW9uKHsgdHlwZTogXCJzYXAuZmUuY29yZS5jb250cm9scy5GaWx0ZXJCYXJcIiwgbXVsdGlwbGU6IGZhbHNlIH0pXG5cdGZpbHRlckNvbnRyb2whOiBzdHJpbmc7XG5cblx0QGV2ZW50KClcblx0c2VsZWN0ITogRnVuY3Rpb247XG5cblx0b25CZWZvcmVSZW5kZXJpbmcoKSB7XG5cdFx0dGhpcy5nZXRUYWJzTW9kZWwoKTsgLy8gR2VuZXJhdGUgdGhlIG1vZGVsIHdoaWNoIGlzIG1hbmRhdG9yeSBmb3Igc29tZSBiaW5kaW5nc1xuXG5cdFx0Y29uc3Qgb0ZpbHRlckNvbnRyb2wgPSB0aGlzLl9nZXRGaWx0ZXJDb250cm9sKCk7XG5cdFx0aWYgKCFvRmlsdGVyQ29udHJvbCkge1xuXHRcdFx0Ly8gSW4gY2FzZSB0aGVyZSdzIG5vIGZpbHRlcmJhciwgd2UgaGF2ZSB0byB1cGRhdGUgdGhlIGNvdW50cyBpbiB0aGUgdGFicyBpbW1lZGlhdGVseVxuXHRcdFx0dGhpcy5zZXRDb3VudHNPdXREYXRlZCh0cnVlKTtcblx0XHR9XG5cdFx0Y29uc3Qgb0ZpbHRlckJhckFQSSA9IG9GaWx0ZXJDb250cm9sPy5nZXRQYXJlbnQoKTtcblx0XHR0aGlzLmdldEFsbElubmVyQ29udHJvbHMoKS5mb3JFYWNoKChvTWFjcm9BUEkpID0+IHtcblx0XHRcdGlmICh0aGlzLnNob3dDb3VudHMpIHtcblx0XHRcdFx0b01hY3JvQVBJLmF0dGFjaEV2ZW50KFwiaW50ZXJuYWxEYXRhUmVxdWVzdGVkXCIsIHRoaXMuX3JlZnJlc2hUYWJzQ291bnQuYmluZCh0aGlzKSk7XG5cdFx0XHR9XG5cdFx0XHRvTWFjcm9BUEkuc3VzcGVuZEJpbmRpbmc/LigpO1xuXHRcdH0pO1xuXHRcdGlmIChvRmlsdGVyQmFyQVBJKSB7XG5cdFx0XHRvRmlsdGVyQmFyQVBJLmF0dGFjaEV2ZW50KFwiaW50ZXJuYWxTZWFyY2hcIiwgdGhpcy5fb25TZWFyY2guYmluZCh0aGlzKSk7XG5cdFx0XHRvRmlsdGVyQmFyQVBJLmF0dGFjaEV2ZW50KFwiaW50ZXJuYWxGaWx0ZXJDaGFuZ2VkXCIsIHRoaXMuX29uRmlsdGVyQ2hhbmdlZC5iaW5kKHRoaXMpKTtcblx0XHR9XG5cdH1cblxuXHRvbkFmdGVyUmVuZGVyaW5nKCkge1xuXHRcdHRoaXMuZ2V0U2VsZWN0ZWRJbm5lckNvbnRyb2woKT8ucmVzdW1lQmluZGluZz8uKCF0aGlzLmdldFByb3BlcnR5KFwiZnJlZXplQ29udGVudFwiKSk7XG5cdH1cblxuXHRzdGF0aWMgcmVuZGVyKG9SbTogUmVuZGVyTWFuYWdlciwgb0NvbnRyb2w6IE11bHRpcGxlTW9kZUNvbnRyb2wpIHtcblx0XHRvUm0ucmVuZGVyQ29udHJvbChvQ29udHJvbC5jb250ZW50KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZXRzIHRoZSBtb2RlbCBjb250YWluaW5nIGluZm9ybWF0aW9uIHJlbGF0ZWQgdG8gdGhlIEljb25UYWJGaWx0ZXJzLlxuXHQgKlxuXHQgKiBAcmV0dXJucyB7c2FwLnVpLm1vZGVsLk1vZGVsIHwgdW5kZWZpbmVkfSBUaGUgbW9kZWxcblx0ICovXG5cdGdldFRhYnNNb2RlbCgpOiBNb2RlbCB8IHVuZGVmaW5lZCB7XG5cdFx0Y29uc3Qgc1RhYnNNb2RlbCA9IFwidGFic0ludGVybmFsXCI7XG5cdFx0Y29uc3Qgb0NvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7XG5cdFx0aWYgKCFvQ29udGVudCkge1xuXHRcdFx0cmV0dXJuIHVuZGVmaW5lZDtcblx0XHR9XG5cdFx0bGV0IG9Nb2RlbCA9IG9Db250ZW50LmdldE1vZGVsKHNUYWJzTW9kZWwpO1xuXHRcdGlmICghb01vZGVsKSB7XG5cdFx0XHRvTW9kZWwgPSBuZXcgSlNPTk1vZGVsKHt9KTtcblx0XHRcdG9Db250ZW50LnNldE1vZGVsKG9Nb2RlbCwgc1RhYnNNb2RlbCk7XG5cdFx0fVxuXHRcdHJldHVybiBvTW9kZWw7XG5cdH1cblxuXHQvKipcblx0ICogR2V0cyB0aGUgaW5uZXIgY29udHJvbCBvZiB0aGUgZGlzcGxheWVkIHRhYi5cblx0ICpcblx0ICogQHJldHVybnMge0lubmVyQ29udHJvbFR5cGUgfCB1bmRlZmluZWR9IFRoZSBjb250cm9sXG5cdCAqL1xuXHRnZXRTZWxlY3RlZElubmVyQ29udHJvbCgpOiBJbm5lckNvbnRyb2xUeXBlIHwgdW5kZWZpbmVkIHtcblx0XHRjb25zdCBvU2VsZWN0ZWRUYWIgPSB0aGlzLmNvbnRlbnQ/LmdldEl0ZW1zKCkuZmluZCgob0l0ZW0pID0+IChvSXRlbSBhcyBJY29uVGFiRmlsdGVyKS5nZXRLZXkoKSA9PT0gdGhpcy5jb250ZW50LmdldFNlbGVjdGVkS2V5KCkpO1xuXHRcdHJldHVybiBvU2VsZWN0ZWRUYWJcblx0XHRcdD8gdGhpcy5nZXRBbGxJbm5lckNvbnRyb2xzKCkuZmluZCgob01hY3JvQVBJKSA9PiB0aGlzLl9nZXRUYWJGcm9tSW5uZXJDb250cm9sKG9NYWNyb0FQSSkgPT09IG9TZWxlY3RlZFRhYilcblx0XHRcdDogdW5kZWZpbmVkO1xuXHR9XG5cblx0LyoqXG5cdCAqIE1hbmFnZXMgdGhlIGJpbmRpbmcgb2YgYWxsIGlubmVyIGNvbnRyb2xzIHdoZW4gdGhlIHNlbGVjdGVkIEljb25UYWJGaWx0ZXIgaXMgY2hhbmdlZC5cblx0ICpcblx0ICogQHBhcmFtIHtzYXAudWkuYmFzZS5FdmVudH0gb0V2ZW50IEV2ZW50IGZpcmVkIGJ5IHRoZSBJY29uVGFiQmFyXG5cdCAqL1xuXHRzdGF0aWMgaGFuZGxlVGFiQ2hhbmdlKG9FdmVudDogYW55KTogdm9pZCB7XG5cdFx0Y29uc3Qgb0ljb25UYWJCYXIgPSBvRXZlbnQuZ2V0U291cmNlKCk7XG5cdFx0Y29uc3Qgb011bHRpQ29udHJvbCA9IG9JY29uVGFiQmFyLmdldFBhcmVudCgpO1xuXG5cdFx0Y29uc3QgbVBhcmFtZXRlcnMgPSBvRXZlbnQuZ2V0UGFyYW1ldGVycygpO1xuXHRcdG9NdWx0aUNvbnRyb2wuX3NldElubmVyQmluZGluZyh0cnVlKTtcblx0XHRjb25zdCBzUHJldmlvdXNTZWxlY3RlZEtleSA9IG1QYXJhbWV0ZXJzPy5wcmV2aW91c0tleTtcblx0XHRjb25zdCBzU2VsZWN0ZWRLZXkgPSBtUGFyYW1ldGVycz8uc2VsZWN0ZWRLZXk7XG5cblx0XHRpZiAoc1NlbGVjdGVkS2V5ICYmIHNQcmV2aW91c1NlbGVjdGVkS2V5ICE9PSBzU2VsZWN0ZWRLZXkpIHtcblx0XHRcdGNvbnN0IG9GaWx0ZXJCYXIgPSBvTXVsdGlDb250cm9sLl9nZXRGaWx0ZXJDb250cm9sKCk7XG5cdFx0XHRpZiAob0ZpbHRlckJhciAmJiAhb011bHRpQ29udHJvbC5nZXRQcm9wZXJ0eShcImZyZWV6ZUNvbnRlbnRcIikpIHtcblx0XHRcdFx0aWYgKCFvTXVsdGlDb250cm9sLmdldFNlbGVjdGVkSW5uZXJDb250cm9sKCkpIHtcblx0XHRcdFx0XHQvL2N1c3RvbSB0YWJcblx0XHRcdFx0XHRvTXVsdGlDb250cm9sLl9yZWZyZXNoQ3VzdG9tVmlldyhvRmlsdGVyQmFyLmdldEZpbHRlckNvbmRpdGlvbnMoKSwgXCJ0YWJDaGFuZ2VkXCIpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRDb250cm9sUGVyc29uYWxpemF0aW9uV3JpdGVBUEkuYWRkKHtcblx0XHRcdFx0Y2hhbmdlczogW1xuXHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdGNoYW5nZVNwZWNpZmljRGF0YToge1xuXHRcdFx0XHRcdFx0XHRjaGFuZ2VUeXBlOiBcInNlbGVjdEljb25UYWJCYXJGaWx0ZXJcIixcblx0XHRcdFx0XHRcdFx0Y29udGVudDoge1xuXHRcdFx0XHRcdFx0XHRcdHNlbGVjdGVkS2V5OiBzU2VsZWN0ZWRLZXksXG5cdFx0XHRcdFx0XHRcdFx0cHJldmlvdXNTZWxlY3RlZEtleTogc1ByZXZpb3VzU2VsZWN0ZWRLZXlcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRcdHNlbGVjdG9yRWxlbWVudDogb0ljb25UYWJCYXJcblx0XHRcdFx0XHR9XG5cdFx0XHRcdF1cblx0XHRcdH0pO1xuXHRcdH1cblxuXHRcdG9NdWx0aUNvbnRyb2wuX2dldFZpZXdDb250cm9sbGVyKCk/LmdldEV4dGVuc2lvbkFQSSgpPy51cGRhdGVBcHBTdGF0ZSgpO1xuXG5cdFx0b011bHRpQ29udHJvbC5maXJlRXZlbnQoXCJzZWxlY3RcIiwge1xuXHRcdFx0aWNvblRhYkJhcjogb0ljb25UYWJCYXIsXG5cdFx0XHRzZWxlY3RlZEtleTogc1NlbGVjdGVkS2V5LFxuXHRcdFx0cHJldmlvdXNLZXk6IHNQcmV2aW91c1NlbGVjdGVkS2V5XG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogSW52YWxpZGF0ZXMgdGhlIGNvbnRlbnQgb2YgYWxsIGlubmVyIGNvbnRyb2xzLlxuXHQgKi9cblx0aW52YWxpZGF0ZUNvbnRlbnQoKSB7XG5cdFx0dGhpcy5zZXRDb3VudHNPdXREYXRlZCh0cnVlKTtcblx0XHR0aGlzLmdldEFsbElubmVyQ29udHJvbHMoKS5mb3JFYWNoKChvTWFjcm9BUEkpID0+IHtcblx0XHRcdG9NYWNyb0FQSS5pbnZhbGlkYXRlQ29udGVudD8uKCk7XG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogU2V0cyB0aGUgY291bnRzIHRvIG91dCBvZiBkYXRlIG9yIHVwIHRvIGRhdGVcblx0ICogSWYgdGhlIGNvdW50cyBhcmUgc2V0IHRvIFwib3V0IG9mIGRhdGVcIiBhbmQgdGhlIHNlbGVjdGVkIEljb25UYWJGaWx0ZXIgZG9lc24ndCBjb250YWluIGFuIGlubmVyIGNvbnRyb2wgYWxsIGlubmVyIGNvbnRyb2xzIGFyZSByZXF1ZXN0ZWQgdG8gZ2V0IHRoZSBuZXcgY291bnRzLlxuXHQgKlxuXHQgKiBAcGFyYW0ge2Jvb2xlYW59IGJWYWx1ZSBGcmVlemUgb3Igbm90IHRoZSBjb250cm9sXG5cdCAqL1xuXHRzZXRDb3VudHNPdXREYXRlZChiVmFsdWUgPSB0cnVlKSB7XG5cdFx0dGhpcy5zZXRQcm9wZXJ0eShcImNvdW50c091dERhdGVkXCIsIGJWYWx1ZSk7XG5cdFx0Ly8gaWYgdGhlIGN1cnJlbnQgdGFiIGlzIG5vdCBjb25maWd1cmVkIHdpdGggbm8gaW5uZXIgQ29udHJvbFxuXHRcdC8vIHRoZSB0YWIgY291bnRzIG11c3QgYmUgbWFudWFsbHkgcmVmcmVzaGVkIHNpbmNlIG5vIE1hY3JvIEFQSSB3aWxsIHNlbnQgZXZlbnQgaW50ZXJuYWxEYXRhUmVxdWVzdGVkXG5cdFx0aWYgKGJWYWx1ZSAmJiAhdGhpcy5nZXRTZWxlY3RlZElubmVyQ29udHJvbCgpKSB7XG5cdFx0XHR0aGlzLl9yZWZyZXNoVGFic0NvdW50KCk7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIEZyZWV6ZXMgdGhlIGNvbnRlbnQgOlxuXHQgKiAgLSBjb250ZW50IGlzIGZyb3plbjogdGhlIGJpbmRpbmcgb2YgdGhlIGlubmVyIGNvbnRyb2xzIGFyZSBzdXNwZW5kZWQuXG5cdCAqICAtIGNvbnRlbnQgaXMgdW5mcm96ZW46IHRoZSBiaW5kaW5nIG9mIGlubmVyIGNvbnRyb2wgcmVsYXRlZCB0byB0aGUgc2VsZWN0ZWQgSWNvblRhYkZpbHRlciBpcyByZXN1bWVkLlxuXHQgKlxuXHQgKiBAcGFyYW0ge2Jvb2xlYW59IGJWYWx1ZSBGcmVlemUgb3Igbm90IHRoZSBjb250cm9sXG5cdCAqL1xuXHRzZXRGcmVlemVDb250ZW50KGJWYWx1ZTogYm9vbGVhbikge1xuXHRcdHRoaXMuc2V0UHJvcGVydHkoXCJmcmVlemVDb250ZW50XCIsIGJWYWx1ZSk7XG5cdFx0dGhpcy5fc2V0SW5uZXJCaW5kaW5nKCk7XG5cdH1cblxuXHQvKipcblx0ICogVXBkYXRlcyB0aGUgaW50ZXJuYWwgbW9kZWwgd2l0aCB0aGUgcHJvcGVydGllcyB0aGF0IGFyZSBub3QgYXBwbGljYWJsZSBvbiBlYWNoIEljb25UYWJGaWx0ZXIgKGNvbnRhaW5pbmcgaW5uZXIgY29udHJvbCkgYWNjb3JkaW5nIHRvIHRoZSBlbnRpdHlUeXBlIG9mIHRoZSBmaWx0ZXIgY29udHJvbC5cblx0ICpcblx0ICogQHBhcmFtIG9SZXNvdXJjZUJ1bmRsZVxuXHQgKi9cblx0X3VwZGF0ZU11bHRpVGFiTm90QXBwbGljYWJsZUZpZWxkcyhvUmVzb3VyY2VCdW5kbGU6IFJlc291cmNlQnVuZGxlKSB7XG5cdFx0Y29uc3QgdGFic01vZGVsID0gdGhpcy5nZXRUYWJzTW9kZWwoKTtcblx0XHRjb25zdCBvRmlsdGVyQ29udHJvbCA9IHRoaXMuX2dldEZpbHRlckNvbnRyb2woKSBhcyBDb250cm9sO1xuXHRcdGlmICh0YWJzTW9kZWwgJiYgb0ZpbHRlckNvbnRyb2wpIHtcblx0XHRcdGNvbnN0IHJlc3VsdHM6IGFueSA9IHt9O1xuXHRcdFx0dGhpcy5nZXRBbGxJbm5lckNvbnRyb2xzKCkuZm9yRWFjaCgob01hY3JvQVBJKSA9PiB7XG5cdFx0XHRcdGNvbnN0IG9UYWIgPSB0aGlzLl9nZXRUYWJGcm9tSW5uZXJDb250cm9sKG9NYWNyb0FQSSk7XG5cdFx0XHRcdGlmIChvVGFiKSB7XG5cdFx0XHRcdFx0Y29uc3Qgc1RhYklkID0gb1RhYi5nZXRLZXkoKTtcblx0XHRcdFx0XHRjb25zdCBtSWdub3JlZEZpZWxkcyA9IG9NYWNyb0FQSS5yZWZyZXNoTm90QXBwbGljYWJsZUZpZWxkcz8uKG9GaWx0ZXJDb250cm9sKSB8fCBbXTtcblx0XHRcdFx0XHRyZXN1bHRzW3NUYWJJZF0gPSB7XG5cdFx0XHRcdFx0XHRub3RBcHBsaWNhYmxlOiB7XG5cdFx0XHRcdFx0XHRcdGZpZWxkczogbUlnbm9yZWRGaWVsZHMsXG5cdFx0XHRcdFx0XHRcdHRpdGxlOiB0aGlzLl9zZXRUYWJNZXNzYWdlU3RyaXAoe1xuXHRcdFx0XHRcdFx0XHRcdGVudGl0eVR5cGVQYXRoOiBvRmlsdGVyQ29udHJvbC5kYXRhKFwiZW50aXR5VHlwZVwiKSxcblx0XHRcdFx0XHRcdFx0XHRpZ25vcmVkRmllbGRzOiBtSWdub3JlZEZpZWxkcyxcblx0XHRcdFx0XHRcdFx0XHRyZXNvdXJjZUJ1bmRsZTogb1Jlc291cmNlQnVuZGxlLFxuXHRcdFx0XHRcdFx0XHRcdHRpdGxlOiBvVGFiLmdldFRleHQoKVxuXHRcdFx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH07XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdFx0KHRhYnNNb2RlbCBhcyBhbnkpLnNldERhdGEocmVzdWx0cyk7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIEdldHMgdGhlIGlubmVyIGNvbnRyb2xzLlxuXHQgKlxuXHQgKiBAcGFyYW0ge2Jvb2xlYW59IGJPbmx5Rm9yVmlzaWJsZVRhYiBTaG91bGQgZGlzcGxheSBvbmx5IHRoZSB2aXNpYmxlIGNvbnRyb2xzXG5cdCAqIEByZXR1cm5zIHtJbm5lckNvbnRyb2xUeXBlW119IEFuIGFycmF5IG9mIGNvbnRyb2xzXG5cdCAqL1xuXHRnZXRBbGxJbm5lckNvbnRyb2xzKGJPbmx5Rm9yVmlzaWJsZVRhYiA9IGZhbHNlKTogSW5uZXJDb250cm9sVHlwZVtdIHtcblx0XHRyZXR1cm4gKFxuXHRcdFx0dGhpcy5pbm5lckNvbnRyb2xzLnJlZHVjZSgoYUlubmVyQ29udHJvbHM6IElubmVyQ29udHJvbFR5cGVbXSwgc0lubmVyQ29udHJvbDogc3RyaW5nKSA9PiB7XG5cdFx0XHRcdGNvbnN0IG9Db250cm9sID0gQ29yZS5ieUlkKHNJbm5lckNvbnRyb2wpIGFzIElubmVyQ29udHJvbFR5cGU7XG5cdFx0XHRcdGlmIChvQ29udHJvbCkge1xuXHRcdFx0XHRcdGFJbm5lckNvbnRyb2xzLnB1c2gob0NvbnRyb2wpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiBhSW5uZXJDb250cm9scy5maWx0ZXIoXG5cdFx0XHRcdFx0KG9Jbm5lckNvbnRyb2wpID0+ICFiT25seUZvclZpc2libGVUYWIgfHwgdGhpcy5fZ2V0VGFiRnJvbUlubmVyQ29udHJvbChvSW5uZXJDb250cm9sKT8uZ2V0VmlzaWJsZSgpXG5cdFx0XHRcdCk7XG5cdFx0XHR9LCBbXSkgfHwgW11cblx0XHQpO1xuXHR9XG5cblx0X2dldEZpbHRlckNvbnRyb2woKTogRmlsdGVyQmFyIHwgdW5kZWZpbmVkIHtcblx0XHRyZXR1cm4gQ29yZS5ieUlkKHRoaXMuZmlsdGVyQ29udHJvbCkgYXMgRmlsdGVyQmFyIHwgdW5kZWZpbmVkO1xuXHR9XG5cblx0X2dldFRhYkZyb21Jbm5lckNvbnRyb2wob0NvbnRyb2w6IENvbnRyb2wpOiBJY29uVGFiRmlsdGVyIHwgdW5kZWZpbmVkIHtcblx0XHRjb25zdCBzU3VwcG9ydGVkQ2xhc3MgPSBJY29uVGFiRmlsdGVyLmdldE1ldGFkYXRhKCkuZ2V0TmFtZSgpO1xuXHRcdGxldCBvVGFiOiBhbnkgPSBvQ29udHJvbDtcblx0XHRpZiAob1RhYiAmJiAhb1RhYi5pc0Eoc1N1cHBvcnRlZENsYXNzKSAmJiBvVGFiLmdldFBhcmVudCkge1xuXHRcdFx0b1RhYiA9IG9Db250cm9sLmdldFBhcmVudCgpO1xuXHRcdH1cblx0XHRyZXR1cm4gb1RhYiAmJiBvVGFiLmlzQShzU3VwcG9ydGVkQ2xhc3MpID8gKG9UYWIgYXMgSWNvblRhYkZpbHRlcikgOiB1bmRlZmluZWQ7XG5cdH1cblxuXHRfZ2V0Vmlld0NvbnRyb2xsZXIoKSB7XG5cdFx0Y29uc3Qgb1ZpZXcgPSBDb21tb25VdGlscy5nZXRUYXJnZXRWaWV3KHRoaXMpO1xuXHRcdHJldHVybiBvVmlldyAmJiBvVmlldy5nZXRDb250cm9sbGVyKCk7XG5cdH1cblxuXHRfcmVmcmVzaEN1c3RvbVZpZXcob0ZpbHRlckNvbmRpdGlvbnM6IGFueSwgc1JlZnJlc2hDYXVzZTogc3RyaW5nKSB7XG5cdFx0KHRoaXMuX2dldFZpZXdDb250cm9sbGVyKCkgYXMgYW55KT8ub25WaWV3TmVlZHNSZWZyZXNoPy4oe1xuXHRcdFx0ZmlsdGVyQ29uZGl0aW9uczogb0ZpbHRlckNvbmRpdGlvbnMsXG5cdFx0XHRjdXJyZW50VGFiSWQ6IHRoaXMuY29udGVudC5nZXRTZWxlY3RlZEtleSgpLFxuXHRcdFx0cmVmcmVzaENhdXNlOiBzUmVmcmVzaENhdXNlXG5cdFx0fSk7XG5cdH1cblxuXHRfcmVmcmVzaFRhYnNDb3VudCgpOiB2b2lkIHtcblx0XHRjb25zdCBzU2VsZWN0ZWRLZXkgPSB0aGlzLmNvbnRlbnQ/LmdldFNlbGVjdGVkS2V5KCk7XG5cdFx0dGhpcy5nZXRBbGxJbm5lckNvbnRyb2xzKHRydWUpLmZvckVhY2goKG9NYWNyb0FQSSkgPT4ge1xuXHRcdFx0Y29uc3Qgb0ljb25UYWJGaWx0ZXIgPSB0aGlzLl9nZXRUYWJGcm9tSW5uZXJDb250cm9sKG9NYWNyb0FQSSk7XG5cdFx0XHRpZiAob01hY3JvQVBJPy5nZXRDb3VudHMgJiYgKHRoaXMuY291bnRzT3V0RGF0ZWQgfHwgc1NlbGVjdGVkS2V5ID09PSBvSWNvblRhYkZpbHRlcj8uZ2V0S2V5KCkpKSB7XG5cdFx0XHRcdGlmIChvSWNvblRhYkZpbHRlciAmJiBvSWNvblRhYkZpbHRlci5zZXRDb3VudCkge1xuXHRcdFx0XHRcdG9JY29uVGFiRmlsdGVyLnNldENvdW50KFwiLi4uXCIpO1xuXHRcdFx0XHRcdG9NYWNyb0FQSVxuXHRcdFx0XHRcdFx0LmdldENvdW50cygpXG5cdFx0XHRcdFx0XHQudGhlbigoaUNvdW50OiBzdHJpbmcpID0+IG9JY29uVGFiRmlsdGVyLnNldENvdW50KGlDb3VudCB8fCBcIjBcIikpXG5cdFx0XHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKG9FcnJvcjogYW55KSB7XG5cdFx0XHRcdFx0XHRcdExvZy5lcnJvcihcIkVycm9yIHdoaWxlIHJlcXVlc3RpbmcgQ291bnRzIGZvciBDb250cm9sXCIsIG9FcnJvcik7XG5cdFx0XHRcdFx0XHR9KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0pO1xuXHRcdHRoaXMuc2V0Q291bnRzT3V0RGF0ZWQoZmFsc2UpO1xuXHR9XG5cblx0X3NldElubmVyQmluZGluZyhiUmVxdWVzdElmTm90SW5pdGlhbGl6ZWQgPSBmYWxzZSkge1xuXHRcdGlmICh0aGlzLmNvbnRlbnQpIHtcblx0XHRcdHRoaXMuZ2V0QWxsSW5uZXJDb250cm9scygpLmZvckVhY2goKG9NYWNyb0FQSSkgPT4ge1xuXHRcdFx0XHRjb25zdCBvSWNvblRhYkZpbHRlciA9IHRoaXMuX2dldFRhYkZyb21Jbm5lckNvbnRyb2wob01hY3JvQVBJKTtcblx0XHRcdFx0Y29uc3QgYklzU2VsZWN0ZWRLZXkgPSBvSWNvblRhYkZpbHRlcj8uZ2V0S2V5KCkgPT09IHRoaXMuY29udGVudC5nZXRTZWxlY3RlZEtleSgpO1xuXHRcdFx0XHRjb25zdCBzQWN0aW9uID0gYklzU2VsZWN0ZWRLZXkgJiYgIXRoaXMuZ2V0UHJvcGVydHkoXCJmcmVlemVDb250ZW50XCIpID8gQmluZGluZ0FjdGlvbi5SZXN1bWUgOiBCaW5kaW5nQWN0aW9uLlN1c3BlbmQ7XG5cdFx0XHRcdG9NYWNyb0FQSVtzQWN0aW9uXT8uKHNBY3Rpb24gPT09IEJpbmRpbmdBY3Rpb24uUmVzdW1lID8gYlJlcXVlc3RJZk5vdEluaXRpYWxpemVkICYmIGJJc1NlbGVjdGVkS2V5IDogdW5kZWZpbmVkKTtcblx0XHRcdH0pO1xuXHRcdH1cblx0fVxuXG5cdF9zZXRUYWJNZXNzYWdlU3RyaXAocHJvcGVydGllczogTWVzc2FnZVN0cmlwUHJvcGVydGllcykge1xuXHRcdGxldCBzVGV4dCA9IFwiXCI7XG5cdFx0Y29uc3QgYUlnbm9yZWRGaWVsZHMgPSBwcm9wZXJ0aWVzLmlnbm9yZWRGaWVsZHM7XG5cdFx0Y29uc3Qgb0ZpbHRlckNvbnRyb2wgPSB0aGlzLl9nZXRGaWx0ZXJDb250cm9sKCkgYXMgQ29udHJvbDtcblx0XHRpZiAob0ZpbHRlckNvbnRyb2wgJiYgQXJyYXkuaXNBcnJheShhSWdub3JlZEZpZWxkcykgJiYgYUlnbm9yZWRGaWVsZHMubGVuZ3RoID4gMCAmJiBwcm9wZXJ0aWVzLnRpdGxlKSB7XG5cdFx0XHRjb25zdCBhSWdub3JlZExhYmVscyA9IE1lc3NhZ2VTdHJpcC5nZXRMYWJlbHMoXG5cdFx0XHRcdGFJZ25vcmVkRmllbGRzLFxuXHRcdFx0XHRwcm9wZXJ0aWVzLmVudGl0eVR5cGVQYXRoLFxuXHRcdFx0XHRvRmlsdGVyQ29udHJvbCxcblx0XHRcdFx0cHJvcGVydGllcy5yZXNvdXJjZUJ1bmRsZVxuXHRcdFx0KTtcblx0XHRcdHNUZXh0ID0gTWVzc2FnZVN0cmlwLmdldFRleHQoYUlnbm9yZWRMYWJlbHMsIG9GaWx0ZXJDb250cm9sLCBwcm9wZXJ0aWVzLnRpdGxlLCBEZWxlZ2F0ZVV0aWwuZ2V0TG9jYWxpemVkVGV4dCk7XG5cdFx0XHRyZXR1cm4gc1RleHQ7XG5cdFx0fVxuXHR9XG5cblx0X29uU2VhcmNoKG9FdmVudDogQ29yZUV2ZW50KTogdm9pZCB7XG5cdFx0dGhpcy5zZXRDb3VudHNPdXREYXRlZCh0cnVlKTtcblx0XHR0aGlzLnNldEZyZWV6ZUNvbnRlbnQoZmFsc2UpO1xuXHRcdGlmICh0aGlzLmdldFNlbGVjdGVkSW5uZXJDb250cm9sKCkpIHtcblx0XHRcdHRoaXMuX3VwZGF0ZU11bHRpVGFiTm90QXBwbGljYWJsZUZpZWxkcygodGhpcy5fZ2V0Vmlld0NvbnRyb2xsZXIoKSBhcyBhbnkpPy5vUmVzb3VyY2VCdW5kbGUpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHQvLyBjdXN0b20gdGFiXG5cdFx0XHR0aGlzLl9yZWZyZXNoQ3VzdG9tVmlldyhvRXZlbnQuZ2V0UGFyYW1ldGVyKFwiY29uZGl0aW9uc1wiKSwgXCJzZWFyY2hcIik7XG5cdFx0fVxuXHR9XG5cblx0X29uRmlsdGVyQ2hhbmdlZChvRXZlbnQ6IENvcmVFdmVudCk6IHZvaWQge1xuXHRcdGlmIChvRXZlbnQuZ2V0UGFyYW1ldGVyKFwiY29uZGl0aW9uc0Jhc2VkXCIpKSB7XG5cdFx0XHR0aGlzLnNldEZyZWV6ZUNvbnRlbnQodHJ1ZSk7XG5cdFx0fVxuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE11bHRpcGxlTW9kZUNvbnRyb2w7XG4iXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7TUFrQ0tBLGFBQWE7RUFBQSxXQUFiQSxhQUFhO0lBQWJBLGFBQWE7SUFBYkEsYUFBYTtFQUFBLEdBQWJBLGFBQWEsS0FBYkEsYUFBYTtFQUFBLElBTVpDLG1CQUFtQixXQUR4QkMsY0FBYyxDQUFDLDBEQUEwRCxDQUFDLFVBRXpFQyxRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFO0VBQVUsQ0FBQyxDQUFDLFVBRzdCRCxRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFLFNBQVM7SUFBRUMsWUFBWSxFQUFFO0VBQU0sQ0FBQyxDQUFDLFVBR2xERixRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFLFNBQVM7SUFBRUMsWUFBWSxFQUFFO0VBQU0sQ0FBQyxDQUFDLFVBR2xEQyxXQUFXLENBQUM7SUFBRUYs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
5
+ sap.ui.define(["sap/base/Log","sap/fe/core/CommonUtils","sap/fe/core/helpers/ClassSupport","sap/fe/core/helpers/MessageStrip","sap/fe/macros/DelegateUtil","sap/m/IconTabFilter","sap/ui/core/Control","sap/ui/core/Core","sap/ui/fl/write/api/ControlPersonalizationWriteAPI","sap/ui/model/json/JSONModel"],function(e,t,n,r,i,o,l,s,a,u){"use strict";var c,d,f,g,h,p,v,C,b,y,m,_,I,T,w,F,z;var S=n.property;var P=n.event;var A=n.defineUI5Class;var O=n.association;var B=n.aggregation;function D(e,t,n,r){if(!n)return;Object.defineProperty(e,t,{enumerable:n.enumerable,configurable:n.configurable,writable:n.writable,value:n.initializer?n.initializer.call(r):void 0})}function E(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function K(e,t){e.prototype=Object.create(t.prototype);e.prototype.constructor=e;M(e,t)}function M(e,t){M=Object.setPrototypeOf?Object.setPrototypeOf.bind():function e(t,n){t.__proto__=n;return t};return M(e,t)}function V(e,t,n,r,i){var o={};Object.keys(r).forEach(function(e){o[e]=r[e]});o.enumerable=!!o.enumerable;o.configurable=!!o.configurable;if("value"in o||o.initializer){o.writable=true}o=n.slice().reverse().reduce(function(n,r){return r(e,t,n)||n},o);if(i&&o.initializer!==void 0){o.value=o.initializer?o.initializer.call(i):void 0;o.initializer=undefined}if(o.initializer===void 0){Object.defineProperty(e,t,o);o=null}return o}function R(e,t){throw new Error("Decorating class property failed. Please ensure that "+"proposal-class-properties is enabled and runs after the decorators transform.")}var j;(function(e){e["Suspend"]="suspendBinding";e["Resume"]="resumeBinding"})(j||(j={}));let N=(c=A("sap.fe.templates.ListReport.controls.MultipleModeControl"),d=S({type:"boolean"}),f=S({type:"boolean",defaultValue:false}),g=S({type:"boolean",defaultValue:false}),h=B({type:"sap.m.IconTabBar",multiple:false,isDefault:true}),p=O({type:"sap.ui.core.Control",multiple:true}),v=O({type:"sap.fe.core.controls.FilterBar",multiple:false}),C=P(),c(b=(y=function(n){K(l,n);function l(){var e;for(var t=arguments.length,r=new Array(t),i=0;i<t;i++){r[i]=arguments[i]}e=n.call(this,...r)||this;D(e,"showCounts",m,E(e));D(e,"freezeContent",_,E(e));D(e,"countsOutDated",I,E(e));D(e,"content",T,E(e));D(e,"innerControls",w,E(e));D(e,"filterControl",F,E(e));D(e,"select",z,E(e));return e}var c=l.prototype;c.onBeforeRendering=function e(){this.getTabsModel();const t=this._getFilterControl();if(!t){this.setCountsOutDated(true)}const n=t===null||t===void 0?void 0:t.getParent();this.getAllInnerControls().forEach(e=>{var t;if(this.showCounts){e.attachEvent("internalDataRequested",this._refreshTabsCount.bind(this))}(t=e.suspendBinding)===null||t===void 0?void 0:t.call(e)});if(n){n.attachEvent("internalSearch",this._onSearch.bind(this));n.attachEvent("internalFilterChanged",this._onFilterChanged.bind(this))}};c.onAfterRendering=function e(){var t,n;(t=this.getSelectedInnerControl())===null||t===void 0?void 0:(n=t.resumeBinding)===null||n===void 0?void 0:n.call(t,!this.getProperty("freezeContent"))};l.render=function e(t,n){t.renderControl(n.content)};c.getTabsModel=function e(){const t="tabsInternal";const n=this.content;if(!n){return undefined}let r=n.getModel(t);if(!r){r=new u({});n.setModel(r,t)}return r};c.getSelectedInnerControl=function e(){var t;const n=(t=this.content)===null||t===void 0?void 0:t.getItems().find(e=>e.getKey()===this.content.getSelectedKey());return n?this.getAllInnerControls().find(e=>this._getTabFromInnerControl(e)===n):undefined};l.handleTabChange=function e(t){var n,r;const i=t.getSource();const o=i.getParent();const l=t.getParameters();o._setInnerBinding(true);const s=l===null||l===void 0?void 0:l.previousKey;const u=l===null||l===void 0?void 0:l.selectedKey;if(u&&s!==u){const e=o._getFilterControl();if(e&&!o.getProperty("freezeContent")){if(!o.getSelectedInnerControl()){o._refreshCustomView(e.getFilterConditions(),"tabChanged")}}a.add({changes:[{changeSpecificData:{changeType:"selectIconTabBarFilter",content:{selectedKey:u,previousSelectedKey:s}},selectorElement:i}]})}(n=o._getViewController())===null||n===void 0?void 0:(r=n.getExtensionAPI())===null||r===void 0?void 0:r.updateAppState();o.fireEvent("select",{iconTabBar:i,selectedKey:u,previousKey:s})};c.invalidateContent=function e(){this.setCountsOutDated(true);this.getAllInnerControls().forEach(e=>{var t;(t=e.invalidateContent)===null||t===void 0?void 0:t.call(e)})};c.setCountsOutDated=function e(){let t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:true;this.setProperty("countsOutDated",t);if(t&&!this.getSelectedInnerControl()){this._refreshTabsCount()}};c.setFreezeContent=function e(t){this.setProperty("freezeContent",t);this._setInnerBinding()};c._updateMultiTabNotApplicableFields=function e(t){const n=this.getTabsModel();const r=this._getFilterControl();if(n&&r){const e={};this.getAllInnerControls().forEach(n=>{const i=this._getTabFromInnerControl(n);if(i){var o;const l=i.getKey();const s=((o=n.refreshNotApplicableFields)===null||o===void 0?void 0:o.call(n,r))||[];e[l]={notApplicable:{fields:s,title:this._setTabMessageStrip({entityTypePath:r.data("entityType"),ignoredFields:s,resourceBundle:t,title:i.getText()})}}}});n.setData(e)}};c.getAllInnerControls=function e(){let t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;return this.innerControls.reduce((e,n)=>{const r=s.byId(n);if(r){e.push(r)}return e.filter(e=>{var n;return!t||((n=this._getTabFromInnerControl(e))===null||n===void 0?void 0:n.getVisible())})},[])||[]};c._getFilterControl=function e(){return s.byId(this.filterControl)};c._getTabFromInnerControl=function e(t){const n=o.getMetadata().getName();let r=t;if(r&&!r.isA(n)&&r.getParent){r=t.getParent()}return r&&r.isA(n)?r:undefined};c._getViewController=function e(){const n=t.getTargetView(this);return n&&n.getController()};c._refreshCustomView=function e(t,n){var r,i;(r=this._getViewController())===null||r===void 0?void 0:(i=r.onViewNeedsRefresh)===null||i===void 0?void 0:i.call(r,{filterConditions:t,currentTabId:this.content.getSelectedKey(),refreshCause:n})};c._refreshTabsCount=function t(n){var r,i;const o=n===null||n===void 0?void 0:n.getSource();const l=o?(r=this._getTabFromInnerControl(o))===null||r===void 0?void 0:r.getKey():(i=this.content)===null||i===void 0?void 0:i.getSelectedKey();this.getAllInnerControls(true).forEach(t=>{const n=this._getTabFromInnerControl(t);if(t!==null&&t!==void 0&&t.getCounts&&(this.countsOutDated||l===(n===null||n===void 0?void 0:n.getKey()))){if(n&&n.setCount){n.setCount("...");t.getCounts().then(e=>n.setCount(e||"0")).catch(function(t){e.error("Error while requesting Counts for Control",t)})}}});this.setCountsOutDated(false)};c._setInnerBinding=function e(){let t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.content){this.getAllInnerControls().forEach(e=>{var n;const r=this._getTabFromInnerControl(e);const i=(r===null||r===void 0?void 0:r.getKey())===this.content.getSelectedKey();const o=i&&!this.getProperty("freezeContent")?j.Resume:j.Suspend;(n=e[o])===null||n===void 0?void 0:n.call(e,o===j.Resume?t&&i:undefined)})}};c._setTabMessageStrip=function e(t){let n="";const o=t.ignoredFields;const l=this._getFilterControl();if(l&&Array.isArray(o)&&o.length>0&&t.title){const e=r.getLabels(o,t.entityTypePath,l,t.resourceBundle);n=r.getText(e,l,t.title,i.getLocalizedText);return n}};c._onSearch=function e(t){this.setCountsOutDated(true);this.setFreezeContent(false);if(this.getSelectedInnerControl()){var n;this._updateMultiTabNotApplicableFields((n=this._getViewController())===null||n===void 0?void 0:n.oResourceBundle)}else{this._refreshCustomView(t.getParameter("conditions"),"search")}};c._onFilterChanged=function e(t){if(t.getParameter("conditionsBased")){this.setFreezeContent(true)}};return l}(l),m=V(y.prototype,"showCounts",[d],{configurable:true,enumerable:true,writable:true,initializer:null}),_=V(y.prototype,"freezeContent",[f],{configurable:true,enumerable:true,writable:true,initializer:null}),I=V(y.prototype,"countsOutDated",[g],{configurable:true,enumerable:true,writable:true,initializer:null}),T=V(y.prototype,"content",[h],{configurable:true,enumerable:true,writable:true,initializer:null}),w=V(y.prototype,"innerControls",[p],{configurable:true,enumerable:true,writable:true,initializer:null}),F=V(y.prototype,"filterControl",[v],{configurable:true,enumerable:true,writable:true,initializer:null}),z=V(y.prototype,"select",[C],{configurable:true,enumerable:true,writable:true,initializer:null}),y))||b);return N},false);
6
+ //# sourceMappingURL=MultipleModeControl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultipleModeControl.js","names":["sap","ui","define","Log","CommonUtils","ClassSupport","MessageStrip","DelegateUtil","IconTabFilter","Control","Core","ControlPersonalizationWriteAPI","JSONModel","_dec","_dec2","_dec3","_dec4","_dec5","_dec6","_dec7","_dec8","_class","_class2","_descriptor","_descriptor2","_descriptor3","_descriptor4","_descriptor5","_descriptor6","_descriptor7","property","event","defineUI5Class","association","aggregation","_initializerDefineProperty","target","descriptor","context","Object","defineProperty","enumerable","configurable","writable","value","initializer","call","_assertThisInitialized","self","ReferenceError","_inheritsLoose","subClass","superClass","prototype","create","constructor","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_applyDecoratedDescriptor","decorators","desc","keys","forEach","key","slice","reverse","reduce","decorator","undefined","_initializerWarningHelper","Error","BindingAction","MultipleModeControl","type","defaultValue","multiple","isDefault","_Control","_this","_len","arguments","length","args","Array","_key","this","_proto","onBeforeRendering","getTabsModel","oFilterControl","_getFilterControl","setCountsOutDated","oFilterBarAPI","getParent","getAllInnerControls","oMacroAPI","_oMacroAPI$suspendBin","showCounts","attachEvent","_refreshTabsCount","suspendBinding","_onSearch","_onFilterChanged","onAfterRendering","_this$getSelectedInne","_this$getSelectedInne2","getSelectedInnerControl","resumeBinding","getProperty","render","oRm","oControl","renderControl","content","sTabsModel","oContent","oModel","getModel","setModel","_this$content","oSelectedTab","getItems","find","oItem","getKey","getSelectedKey","_getTabFromInnerControl","handleTabChange","oEvent","_oMultiControl$_getVi","_oMultiControl$_getVi2","oIconTabBar","getSource","oMultiControl","mParameters","getParameters","_setInnerBinding","sPreviousSelectedKey","previousKey","sSelectedKey","selectedKey","oFilterBar","_refreshCustomView","getFilterConditions","add","changes","changeSpecificData","changeType","previousSelectedKey","selectorElement","_getViewController","getExtensionAPI","updateAppState","fireEvent","iconTabBar","invalidateContent","_oMacroAPI$invalidate","bValue","setProperty","setFreezeContent","_updateMultiTabNotApplicableFields","oResourceBundle","tabsModel","results","oTab","_oMacroAPI$refreshNot","sTabId","mIgnoredFields","refreshNotApplicableFields","notApplicable","fields","title","_setTabMessageStrip","entityTypePath","data","ignoredFields","resourceBundle","getText","setData","bOnlyForVisibleTab","innerControls","aInnerControls","sInnerControl","byId","push","filter","oInnerControl","_this$_getTabFromInne","getVisible","filterControl","sSupportedClass","getMetadata","getName","isA","oView","getTargetView","getController","oFilterConditions","sRefreshCause","_this$_getViewControl","_this$_getViewControl2","onViewNeedsRefresh","filterConditions","currentTabId","refreshCause","tableEvent","_this$_getTabFromInne2","_this$content2","eventMacroAPI","targetKey","oIconTabFilter","getCounts","countsOutDated","setCount","then","iCount","catch","oError","error","bRequestIfNotInitialized","_oMacroAPI$sAction","bIsSelectedKey","sAction","Resume","Suspend","properties","sText","aIgnoredFields","isArray","aIgnoredLabels","getLabels","getLocalizedText","_this$_getViewControl3","getParameter"],"sources":["MultipleModeControl-dbg.js"],"mappings":"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"}
@@ -282,11 +282,18 @@ class MultipleModeControl extends Control {
282
282
  });
283
283
  }
284
284
 
285
- _refreshTabsCount(): void {
286
- const sSelectedKey = this.content?.getSelectedKey();
285
+ _refreshTabsCount(tableEvent?: CoreEvent): void {
286
+ // If the refresh is triggered by an event (internalDataRequested)
287
+ // we cannot use the selected key as reference since table can be refreshed by SideEffects
288
+ // so the table could be into a different tab -> we use the source of the event to find the targeted tab
289
+ // If not triggered by an event -> refresh at least the counts of the current MacroAPI
290
+ // In any case if the counts are set to Outdated for the MultipleModeControl all the counts are refreshed
291
+ const eventMacroAPI = tableEvent?.getSource() as MacroAPI;
292
+ const targetKey = eventMacroAPI ? this._getTabFromInnerControl(eventMacroAPI)?.getKey() : this.content?.getSelectedKey();
293
+
287
294
  this.getAllInnerControls(true).forEach((oMacroAPI) => {
288
295
  const oIconTabFilter = this._getTabFromInnerControl(oMacroAPI);
289
- if (oMacroAPI?.getCounts && (this.countsOutDated || sSelectedKey === oIconTabFilter?.getKey())) {
296
+ if (oMacroAPI?.getCounts && (this.countsOutDated || targetKey === oIconTabFilter?.getKey())) {
290
297
  if (oIconTabFilter && oIconTabFilter.setCount) {
291
298
  oIconTabFilter.setCount("...");
292
299
  oMacroAPI
@@ -4,7 +4,7 @@
4
4
  "id": "sap.fe.templates.ListReport",
5
5
  "type": "component",
6
6
  "applicationVersion": {
7
- "version": "${project.version}"
7
+ "version": "1.111.0"
8
8
  },
9
9
  "title": "List Report",
10
10
  "tags": {
@@ -0,0 +1,53 @@
1
+ /*!
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ * (c) Copyright 2009-2023 SAP SE. All rights reserved
4
+ */
5
+ sap.ui.define(["sap/fe/core/CommonUtils"], function (CommonUtils) {
6
+ "use strict";
7
+
8
+ const IntentBasedNavigationOverride = {
9
+ adaptNavigationContext: function (oSelectionVariant, oTargetInfo) {
10
+ const oView = this.getView(),
11
+ oController = oView.getController(),
12
+ oFilterBar = oController._getFilterBarControl();
13
+ // Adding filter bar values to the navigation does not make sense if no context has been selected.
14
+ // Hence only consider filter bar values when SelectionVariant is not empty
15
+ if (oFilterBar && !oSelectionVariant.isEmpty()) {
16
+ const oViewData = oView.getViewData(),
17
+ sRootPath = oViewData.fullContextPath;
18
+ let oFilterBarConditions = Object.assign({}, this.base.getView().getController().filterBarConditions);
19
+ let aParameters = [];
20
+ if (oViewData.contextPath) {
21
+ const oMetaModel = oView.getModel().getMetaModel(),
22
+ oParameterInfo = CommonUtils.getParameterInfo(oMetaModel, oViewData.contextPath),
23
+ oParamProperties = oParameterInfo.parameterProperties;
24
+ aParameters = oParamProperties && Object.keys(oParamProperties) || [];
25
+ }
26
+ oFilterBarConditions = oController._intentBasedNavigation.prepareFiltersForExternalNavigation(oFilterBarConditions, sRootPath, aParameters);
27
+ const oMultipleModeControl = oController._getMultiModeControl();
28
+ if (oMultipleModeControl) {
29
+ // Do we need to exclude Fields (multi tables mode with multi entity sets)?
30
+ const oTabsModel = oMultipleModeControl.getTabsModel();
31
+ if (oTabsModel) {
32
+ var _oMultipleModeControl;
33
+ const aIgnoredFieldsForTab = oTabsModel.getProperty(`/${(_oMultipleModeControl = oMultipleModeControl.content) === null || _oMultipleModeControl === void 0 ? void 0 : _oMultipleModeControl.getSelectedKey()}/notApplicable/fields`);
34
+ if (Array.isArray(aIgnoredFieldsForTab) && aIgnoredFieldsForTab.length > 0) {
35
+ aIgnoredFieldsForTab.forEach(function (sProperty) {
36
+ delete oFilterBarConditions.filterConditions[sProperty];
37
+ });
38
+ }
39
+ }
40
+ }
41
+
42
+ // TODO: move this also into the intent based navigation controller extension
43
+ CommonUtils.addExternalStateFiltersToSelectionVariant(oSelectionVariant, oFilterBarConditions, oTargetInfo, oFilterBar);
44
+ delete oTargetInfo.propertiesWithoutConflict;
45
+ }
46
+ },
47
+ getEntitySet: function () {
48
+ return this.base.getCurrentEntitySet();
49
+ }
50
+ };
51
+ return IntentBasedNavigationOverride;
52
+ }, false);
53
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJJbnRlbnRCYXNlZE5hdmlnYXRpb25PdmVycmlkZSIsImFkYXB0TmF2aWdhdGlvbkNvbnRleHQiLCJvU2VsZWN0aW9uVmFyaWFudCIsIm9UYXJnZXRJbmZvIiwib1ZpZXciLCJnZXRWaWV3Iiwib0NvbnRyb2xsZXIiLCJnZXRDb250cm9sbGVyIiwib0ZpbHRlckJhciIsIl9nZXRGaWx0ZXJCYXJDb250cm9sIiwiaXNFbXB0eSIsIm9WaWV3RGF0YSIsImdldFZpZXdEYXRhIiwic1Jvb3RQYXRoIiwiZnVsbENvbnRleHRQYXRoIiwib0ZpbHRlckJhckNvbmRpdGlvbnMiLCJPYmplY3QiLCJhc3NpZ24iLCJiYXNlIiwiZmlsdGVyQmFyQ29uZGl0aW9ucyIsImFQYXJhbWV0ZXJzIiwiY29udGV4dFBhdGgiLCJvTWV0YU1vZGVsIiwiZ2V0TW9kZWwiLCJnZXRNZXRhTW9kZWwiLCJvUGFyYW1ldGVySW5mbyIsIkNvbW1vblV0aWxzIiwiZ2V0UGFyYW1ldGVySW5mbyIsIm9QYXJhbVByb3BlcnRpZXMiLCJwYXJhbWV0ZXJQcm9wZXJ0aWVzIiwia2V5cyIsIl9pbnRlbnRCYXNlZE5hdmlnYXRpb24iLCJwcmVwYXJlRmlsdGVyc0ZvckV4dGVybmFsTmF2aWdhdGlvbiIsIm9NdWx0aXBsZU1vZGVDb250cm9sIiwiX2dldE11bHRpTW9kZUNvbnRyb2wiLCJvVGFic01vZGVsIiwiZ2V0VGFic01vZGVsIiwiYUlnbm9yZWRGaWVsZHNGb3JUYWIiLCJnZXRQcm9wZXJ0eSIsImNvbnRlbnQiLCJnZXRTZWxlY3RlZEtleSIsIkFycmF5IiwiaXNBcnJheSIsImxlbmd0aCIsImZvckVhY2giLCJzUHJvcGVydHkiLCJmaWx0ZXJDb25kaXRpb25zIiwiYWRkRXh0ZXJuYWxTdGF0ZUZpbHRlcnNUb1NlbGVjdGlvblZhcmlhbnQiLCJwcm9wZXJ0aWVzV2l0aG91dENvbmZsaWN0IiwiZ2V0RW50aXR5U2V0IiwiZ2V0Q3VycmVudEVudGl0eVNldCJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiSW50ZW50QmFzZWROYXZpZ2F0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBDb21tb25VdGlscyBmcm9tIFwic2FwL2ZlL2NvcmUvQ29tbW9uVXRpbHNcIjtcbmltcG9ydCB0eXBlIEludGVudEJhc2VkTmF2aWdhdGlvbiBmcm9tIFwic2FwL2ZlL2NvcmUvY29udHJvbGxlcmV4dGVuc2lvbnMvSW50ZW50QmFzZWROYXZpZ2F0aW9uXCI7XG5pbXBvcnQgdHlwZSBMaXN0UmVwb3J0Q29udHJvbGxlciBmcm9tIFwic2FwL2ZlL3RlbXBsYXRlcy9MaXN0UmVwb3J0L0xpc3RSZXBvcnRDb250cm9sbGVyLmNvbnRyb2xsZXJcIjtcbmltcG9ydCBPRGF0YU1ldGFNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L09EYXRhTWV0YU1vZGVsXCI7XG5cbmNvbnN0IEludGVudEJhc2VkTmF2aWdhdGlvbk92ZXJyaWRlID0ge1xuXHRhZGFwdE5hdmlnYXRpb25Db250ZXh0OiBmdW5jdGlvbiAodGhpczogSW50ZW50QmFzZWROYXZpZ2F0aW9uLCBvU2VsZWN0aW9uVmFyaWFudDogYW55LCBvVGFyZ2V0SW5mbzogYW55KSB7XG5cdFx0Y29uc3Qgb1ZpZXcgPSB0aGlzLmdldFZpZXcoKSxcblx0XHRcdG9Db250cm9sbGVyID0gb1ZpZXcuZ2V0Q29udHJvbGxlcigpIGFzIExpc3RSZXBvcnRDb250cm9sbGVyLFxuXHRcdFx0b0ZpbHRlckJhciA9IG9Db250cm9sbGVyLl9nZXRGaWx0ZXJCYXJDb250cm9sKCk7XG5cdFx0Ly8gQWRkaW5nIGZpbHRlciBiYXIgdmFsdWVzIHRvIHRoZSBuYXZpZ2F0aW9uIGRvZXMgbm90IG1ha2Ugc2Vuc2UgaWYgbm8gY29udGV4dCBoYXMgYmVlbiBzZWxlY3RlZC5cblx0XHQvLyBIZW5jZSBvbmx5IGNvbnNpZGVyIGZpbHRlciBiYXIgdmFsdWVzIHdoZW4gU2VsZWN0aW9uVmFyaWFudCBpcyBub3QgZW1wdHlcblx0XHRpZiAob0ZpbHRlckJhciAmJiAhb1NlbGVjdGlvblZhcmlhbnQuaXNFbXB0eSgpKSB7XG5cdFx0XHRjb25zdCBvVmlld0RhdGEgPSBvVmlldy5nZXRWaWV3RGF0YSgpIGFzIGFueSxcblx0XHRcdFx0c1Jvb3RQYXRoID0gb1ZpZXdEYXRhLmZ1bGxDb250ZXh0UGF0aDtcblx0XHRcdGxldCBvRmlsdGVyQmFyQ29uZGl0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sICh0aGlzLmJhc2UuZ2V0VmlldygpLmdldENvbnRyb2xsZXIoKSBhcyBhbnkpLmZpbHRlckJhckNvbmRpdGlvbnMpO1xuXHRcdFx0bGV0IGFQYXJhbWV0ZXJzOiBhbnlbXSA9IFtdO1xuXG5cdFx0XHRpZiAob1ZpZXdEYXRhLmNvbnRleHRQYXRoKSB7XG5cdFx0XHRcdGNvbnN0IG9NZXRhTW9kZWwgPSBvVmlldy5nZXRNb2RlbCgpLmdldE1ldGFNb2RlbCgpIGFzIE9EYXRhTWV0YU1vZGVsLFxuXHRcdFx0XHRcdG9QYXJhbWV0ZXJJbmZvID0gQ29tbW9uVXRpbHMuZ2V0UGFyYW1ldGVySW5mbyhvTWV0YU1vZGVsLCBvVmlld0RhdGEuY29udGV4dFBhdGgpLFxuXHRcdFx0XHRcdG9QYXJhbVByb3BlcnRpZXMgPSBvUGFyYW1ldGVySW5mby5wYXJhbWV0ZXJQcm9wZXJ0aWVzO1xuXHRcdFx0XHRhUGFyYW1ldGVycyA9IChvUGFyYW1Qcm9wZXJ0aWVzICYmIE9iamVjdC5rZXlzKG9QYXJhbVByb3BlcnRpZXMpKSB8fCBbXTtcblx0XHRcdH1cblxuXHRcdFx0b0ZpbHRlckJhckNvbmRpdGlvbnMgPSBvQ29udHJvbGxlci5faW50ZW50QmFzZWROYXZpZ2F0aW9uLnByZXBhcmVGaWx0ZXJzRm9yRXh0ZXJuYWxOYXZpZ2F0aW9uKFxuXHRcdFx0XHRvRmlsdGVyQmFyQ29uZGl0aW9ucyxcblx0XHRcdFx0c1Jvb3RQYXRoLFxuXHRcdFx0XHRhUGFyYW1ldGVyc1xuXHRcdFx0KTtcblxuXHRcdFx0Y29uc3Qgb011bHRpcGxlTW9kZUNvbnRyb2wgPSBvQ29udHJvbGxlci5fZ2V0TXVsdGlNb2RlQ29udHJvbCgpO1xuXHRcdFx0aWYgKG9NdWx0aXBsZU1vZGVDb250cm9sKSB7XG5cdFx0XHRcdC8vIERvIHdlIG5lZWQgdG8gZXhjbHVkZSBGaWVsZHMgKG11bHRpIHRhYmxlcyBtb2RlIHdpdGggbXVsdGkgZW50aXR5IHNldHMpP1xuXHRcdFx0XHRjb25zdCBvVGFic01vZGVsID0gb011bHRpcGxlTW9kZUNvbnRyb2wuZ2V0VGFic01vZGVsKCk7XG5cdFx0XHRcdGlmIChvVGFic01vZGVsKSB7XG5cdFx0XHRcdFx0Y29uc3QgYUlnbm9yZWRGaWVsZHNGb3JUYWIgPSBvVGFic01vZGVsLmdldFByb3BlcnR5KFxuXHRcdFx0XHRcdFx0YC8ke29NdWx0aXBsZU1vZGVDb250cm9sLmNvbnRlbnQ/LmdldFNlbGVjdGVkS2V5KCl9L25vdEFwcGxpY2FibGUvZmllbGRzYFxuXHRcdFx0XHRcdCk7XG5cdFx0XHRcdFx0aWYgKEFycmF5LmlzQXJyYXkoYUlnbm9yZWRGaWVsZHNGb3JUYWIpICYmIGFJZ25vcmVkRmllbGRzRm9yVGFiLmxlbmd0aCA+IDApIHtcblx0XHRcdFx0XHRcdGFJZ25vcmVkRmllbGRzRm9yVGFiLmZvckVhY2goZnVuY3Rpb24gKHNQcm9wZXJ0eTogYW55KSB7XG5cdFx0XHRcdFx0XHRcdGRlbGV0ZSBvRmlsdGVyQmFyQ29uZGl0aW9ucy5maWx0ZXJDb25kaXRpb25zW3NQcm9wZXJ0eV07XG5cdFx0XHRcdFx0XHR9KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gVE9ETzogbW92ZSB0aGlzIGFsc28gaW50byB0aGUgaW50ZW50IGJhc2VkIG5hdmlnYXRpb24gY29udHJvbGxlciBleHRlbnNpb25cblx0XHRcdENvbW1vblV0aWxzLmFkZEV4dGVybmFsU3RhdGVGaWx0ZXJzVG9TZWxlY3Rpb25WYXJpYW50KG9TZWxlY3Rpb25WYXJpYW50LCBvRmlsdGVyQmFyQ29uZGl0aW9ucywgb1RhcmdldEluZm8sIG9GaWx0ZXJCYXIpO1xuXHRcdFx0ZGVsZXRlIG9UYXJnZXRJbmZvLnByb3BlcnRpZXNXaXRob3V0Q29uZmxpY3Q7XG5cdFx0fVxuXHR9LFxuXHRnZXRFbnRpdHlTZXQ6IGZ1bmN0aW9uICh0aGlzOiBJbnRlbnRCYXNlZE5hdmlnYXRpb24pIHtcblx0XHRyZXR1cm4gKHRoaXMuYmFzZSBhcyBhbnkpLmdldEN1cnJlbnRFbnRpdHlTZXQoKTtcblx0fVxufTtcblxuZXhwb3J0IGRlZmF1bHQgSW50ZW50QmFzZWROYXZpZ2F0aW9uT3ZlcnJpZGU7XG4iXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7Ozs7RUFLQSxNQUFNQSw2QkFBNkIsR0FBRztJQUNyQ0Msc0JBQXNCLEVBQUUsVUFBdUNDLGlCQUFzQixFQUFFQyxXQUFnQixFQUFFO01BQ3hHLE1BQU1DLEtBQUssR0FBRyxJQUFJLENBQUNDLE9BQU8sRUFBRTtRQUMzQkMsV0FBVyxHQUFHRixLQUFLLENBQUNHLGFBQWEsRUFBMEI7UUFDM0RDLFVBQVUsR0FBR0YsV0FBVyxDQUFDRyxvQkFBb0IsRUFBRTtNQUNoRDtNQUNBO01BQ0EsSUFBSUQsVUFBVSxJQUFJLENBQUNOLGlCQUFpQixDQUFDUSxPQUFPLEVBQUUsRUFBRTtRQUMvQyxNQUFNQyxTQUFTLEdBQUdQLEtBQUssQ0FBQ1EsV0FBVyxFQUFTO1VBQzNDQyxTQUFTLEdBQUdGLFNBQVMsQ0FBQ0csZUFBZTtRQUN0QyxJQUFJQyxvQkFBb0IsR0FBR0MsTUFBTSxDQUFDQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUcsSUFBSSxDQUFDQyxJQUFJLENBQUNiLE9BQU8sRUFBRSxDQUFDRSxhQUFhLEVBQUUsQ0FBU1ksbUJBQW1CLENBQUM7UUFDOUcsSUFBSUMsV0FBa0IsR0FBRyxFQUFFO1FBRTNCLElBQUlULFNBQVMsQ0FBQ1UsV0FBVyxFQUFFO1VBQzFCLE1BQU1DLFVBQVUsR0FBR2xCLEtBQUssQ0FBQ21CLFFBQVEsRUFBRSxDQUFDQyxZQUFZLEVBQW9CO1lBQ25FQyxjQUFjLEdBQUdDLFdBQVcsQ0FBQ0MsZ0JBQWdCLENBQUNMLFVBQVUsRUFBRVgsU0FBUyxDQUFDVSxXQUFXLENBQUM7WUFDaEZPLGdCQUFnQixHQUFHSCxjQUFjLENBQUNJLG1CQUFtQjtVQUN0RFQsV0FBVyxHQUFJUSxnQkFBZ0IsSUFBSVosTUFBTSxDQUFDYyxJQUFJLENBQUNGLGdCQUFnQixDQUFDLElBQUssRUFBRTtRQUN4RTtRQUVBYixvQkFBb0IsR0FBR1QsV0FBVyxDQUFDeUIsc0JBQXNCLENBQUNDLG1DQUFtQyxDQUM1RmpCLG9CQUFvQixFQUNwQkYsU0FBUyxFQUNUTyxXQUFXLENBQ1g7UUFFRCxNQUFNYSxvQkFBb0IsR0FBRzNCLFdBQVcsQ0FBQzRCLG9CQUFvQixFQUFFO1FBQy9ELElBQUlELG9CQUFvQixFQUFFO1VBQ3pCO1VBQ0EsTUFBTUUsVUFBVSxHQUFHRixvQkFBb0IsQ0FBQ0csWUFBWSxFQUFFO1VBQ3RELElBQUlELFVBQVUsRUFBRTtZQUFBO1lBQ2YsTUFBTUUsb0JBQW9CLEdBQUdGLFVBQVUsQ0FBQ0csV0FBVyxDQUNqRCxJQUFDLHlCQUFFTCxvQkFBb0IsQ0FBQ00sT0FBTywwREFBNUIsc0JBQThCQyxjQUFjLEVBQUcsdUJBQXNCLENBQ3pFO1lBQ0QsSUFBSUMsS0FBSyxDQUFDQyxPQUFPLENBQUNMLG9CQUFvQixDQUFDLElBQUlBLG9CQUFvQixDQUFDTSxNQUFNLEdBQUcsQ0FBQyxFQUFFO2NBQzNFTixvQkFBb0IsQ0FBQ08sT0FBTyxDQUFDLFVBQVVDLFNBQWMsRUFBRTtnQkFDdEQsT0FBTzlCLG9CQUFvQixDQUFDK0IsZ0JBQWdCLENBQUNELFNBQVMsQ0FBQztjQUN4RCxDQUFDLENBQUM7WUFDSDtVQUNEO1FBQ0Q7O1FBRUE7UUFDQW5CLFdBQVcsQ0FBQ3FCLHlDQUF5QyxDQUFDN0MsaUJBQWlCLEVBQUVhLG9CQUFvQixFQUFFWixXQUFXLEVBQUVLLFVBQVUsQ0FBQztRQUN2SCxPQUFPTCxXQUFXLENBQUM2Qyx5QkFBeUI7TUFDN0M7SUFDRCxDQUFDO0lBQ0RDLFlBQVksRUFBRSxZQUF1QztNQUNwRCxPQUFRLElBQUksQ0FBQy9CLElBQUksQ0FBU2dDLG1CQUFtQixFQUFFO0lBQ2hEO0VBQ0QsQ0FBQztFQUFDLE9BRWFsRCw2QkFBNkI7QUFBQSJ9