@sapui5/sap.fe.templates 1.138.0 → 1.140.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 (85) hide show
  1. package/package.json +1 -1
  2. package/src/sap/fe/templates/.library +1 -1
  3. package/src/sap/fe/templates/AnalyticalListPage/manifest.json +1 -1
  4. package/src/sap/fe/templates/ListComponent.js +4 -1
  5. package/src/sap/fe/templates/ListComponent.ts +4 -0
  6. package/src/sap/fe/templates/ListReport/ListReport.view.xml +93 -62
  7. package/src/sap/fe/templates/ListReport/ListReportController.controller.js +57 -5
  8. package/src/sap/fe/templates/ListReport/ListReportController.controller.ts +58 -4
  9. package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.js +36 -8
  10. package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.ts +25 -11
  11. package/src/sap/fe/templates/ListReport/designtime/ListReport.designtime.js +3 -1
  12. package/src/sap/fe/templates/ListReport/designtime/ListReport.designtime.ts +2 -0
  13. package/src/sap/fe/templates/ListReport/manifest.json +1 -1
  14. package/src/sap/fe/templates/ObjectPage/Component.js +17 -22
  15. package/src/sap/fe/templates/ObjectPage/Component.ts +9 -9
  16. package/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +4 -5
  17. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +11 -54
  18. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.ts +13 -56
  19. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.js +21 -17
  20. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.ts +19 -14
  21. package/src/sap/fe/templates/ObjectPage/card/BaseCardContentProvider.js +1 -2
  22. package/src/sap/fe/templates/ObjectPage/card/BaseCardContentProvider.ts +0 -1
  23. package/src/sap/fe/templates/ObjectPage/card/Generator.js +1 -2
  24. package/src/sap/fe/templates/ObjectPage/card/Generator.ts +0 -1
  25. package/src/sap/fe/templates/ObjectPage/card/facets/HeaderContent.js +1 -2
  26. package/src/sap/fe/templates/ObjectPage/card/facets/HeaderContent.ts +0 -1
  27. package/src/sap/fe/templates/ObjectPage/card/facets/HeaderTitle.js +1 -2
  28. package/src/sap/fe/templates/ObjectPage/card/facets/HeaderTitle.ts +0 -1
  29. package/src/sap/fe/templates/ObjectPage/components/CollaborationDraft.js +16 -6
  30. package/src/sap/fe/templates/ObjectPage/components/CollaborationDraft.tsx +15 -5
  31. package/src/sap/fe/templates/ObjectPage/components/DraftToggle.js +30 -15
  32. package/src/sap/fe/templates/ObjectPage/components/DraftToggle.tsx +14 -4
  33. package/src/sap/fe/templates/ObjectPage/designtime/ObjectPage.designtime.js +3 -1
  34. package/src/sap/fe/templates/ObjectPage/designtime/ObjectPage.designtime.ts +2 -0
  35. package/src/sap/fe/templates/ObjectPage/manifest.json +1 -1
  36. package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.js +15 -1
  37. package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.ts +16 -0
  38. package/src/sap/fe/templates/ObjectPage/view/fragments/Actions.fragment.xml +25 -6
  39. package/src/sap/fe/templates/ObjectPage/view/fragments/Heading.fragment.xml +2 -2
  40. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderForm.fragment.xml +7 -2
  41. package/src/sap/fe/templates/library.js +1 -1
  42. package/src/sap/fe/templates/messagebundle.properties +5 -6
  43. package/src/sap/fe/templates/messagebundle_ar.properties +2 -2
  44. package/src/sap/fe/templates/messagebundle_bg.properties +2 -2
  45. package/src/sap/fe/templates/messagebundle_ca.properties +1 -1
  46. package/src/sap/fe/templates/messagebundle_cnr.properties +2 -2
  47. package/src/sap/fe/templates/messagebundle_cs.properties +1 -1
  48. package/src/sap/fe/templates/messagebundle_da.properties +2 -2
  49. package/src/sap/fe/templates/messagebundle_de.properties +1 -1
  50. package/src/sap/fe/templates/messagebundle_en.properties +2 -2
  51. package/src/sap/fe/templates/messagebundle_en_GB.properties +2 -2
  52. package/src/sap/fe/templates/messagebundle_en_US_saprigi.properties +2 -4
  53. package/src/sap/fe/templates/messagebundle_es.properties +2 -2
  54. package/src/sap/fe/templates/messagebundle_es_MX.properties +1 -1
  55. package/src/sap/fe/templates/messagebundle_et.properties +1 -1
  56. package/src/sap/fe/templates/messagebundle_fi.properties +2 -2
  57. package/src/sap/fe/templates/messagebundle_fr.properties +1 -1
  58. package/src/sap/fe/templates/messagebundle_fr_CA.properties +3 -3
  59. package/src/sap/fe/templates/messagebundle_hi.properties +1 -1
  60. package/src/sap/fe/templates/messagebundle_hr.properties +2 -2
  61. package/src/sap/fe/templates/messagebundle_hu.properties +2 -2
  62. package/src/sap/fe/templates/messagebundle_id.properties +1 -1
  63. package/src/sap/fe/templates/messagebundle_it.properties +2 -2
  64. package/src/sap/fe/templates/messagebundle_ja.properties +1 -1
  65. package/src/sap/fe/templates/messagebundle_kk.properties +1 -1
  66. package/src/sap/fe/templates/messagebundle_ko.properties +1 -1
  67. package/src/sap/fe/templates/messagebundle_lt.properties +1 -1
  68. package/src/sap/fe/templates/messagebundle_lv.properties +2 -2
  69. package/src/sap/fe/templates/messagebundle_mk.properties +1 -1
  70. package/src/sap/fe/templates/messagebundle_no.properties +1 -1
  71. package/src/sap/fe/templates/messagebundle_pl.properties +1 -1
  72. package/src/sap/fe/templates/messagebundle_pt.properties +1 -1
  73. package/src/sap/fe/templates/messagebundle_pt_PT.properties +1 -1
  74. package/src/sap/fe/templates/messagebundle_ro.properties +1 -1
  75. package/src/sap/fe/templates/messagebundle_sh.properties +2 -2
  76. package/src/sap/fe/templates/messagebundle_sk.properties +2 -2
  77. package/src/sap/fe/templates/messagebundle_sl.properties +1 -1
  78. package/src/sap/fe/templates/messagebundle_sr.properties +2 -2
  79. package/src/sap/fe/templates/messagebundle_sv.properties +1 -1
  80. package/src/sap/fe/templates/messagebundle_th.properties +2 -2
  81. package/src/sap/fe/templates/messagebundle_tr.properties +1 -1
  82. package/src/sap/fe/templates/messagebundle_uk.properties +1 -1
  83. package/src/sap/fe/templates/messagebundle_vi.properties +1 -1
  84. package/src/sap/fe/templates/messagebundle_zh_CN.properties +1 -1
  85. package/src/sap/fe/templates/messagebundle_zh_TW.properties +1 -1
@@ -5,7 +5,7 @@
5
5
  "type": "component",
6
6
  "i18n": "../messagebundle.properties",
7
7
  "applicationVersion": {
8
- "version": "1.138.0"
8
+ "version": "1.140.0"
9
9
  },
10
10
  "title": "List Report",
11
11
  "tags": {
@@ -5,7 +5,7 @@
5
5
  sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/core/CommonUtils", "sap/fe/core/TemplateComponent", "sap/fe/core/helpers/ModelHelper", "sap/fe/core/library", "sap/fe/templates/ObjectPage/ExtendPageDefinition", "sap/fe/templates/library"], function (Log, ClassSupport, CommonUtils, TemplateComponent, ModelHelper, CoreLibrary, ExtendPageDefinition, templateLib) {
6
6
  "use strict";
7
7
 
8
- var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11;
8
+ var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10;
9
9
  var extendObjectPageDefinition = ExtendPageDefinition.extendObjectPageDefinition;
10
10
  var property = ClassSupport.property;
11
11
  var defineUI5Class = ClassSupport.defineUI5Class;
@@ -40,13 +40,10 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/core/CommonUt
40
40
  type: "boolean",
41
41
  defaultValue: false
42
42
  }), _dec9 = property({
43
- type: "boolean",
44
- defaultValue: true
45
- }), _dec10 = property({
46
43
  type: "object"
47
- }), _dec11 = property({
44
+ }), _dec10 = property({
48
45
  type: "boolean"
49
- }), _dec12 = property({
46
+ }), _dec11 = property({
50
47
  type: "boolean",
51
48
  defaultValue: false
52
49
  }), _dec(_class = (_class2 = /*#__PURE__*/function (_TemplateComponent) {
@@ -86,24 +83,24 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/core/CommonUt
86
83
  * Shows a text instead of an IllustratedMessage in the noData aggregation of Tables or Charts
87
84
  */
88
85
  _initializerDefineProperty(_this, "useTextForNoDataMessages", _descriptor7, _this);
89
- /**
90
- * Enables the BreadCrumbs features
91
- */
92
- _initializerDefineProperty(_this, "showBreadCrumbs", _descriptor8, _this);
93
86
  /**
94
87
  * Defines the properties which can be used for inbound Navigation
95
88
  */
96
- _initializerDefineProperty(_this, "inboundParameters", _descriptor9, _this);
89
+ _initializerDefineProperty(_this, "inboundParameters", _descriptor8, _this);
97
90
  /**
98
91
  * Defines if an object page should be opened in edit mode
99
92
  */
100
- _initializerDefineProperty(_this, "openInEditMode", _descriptor10, _this);
101
- _initializerDefineProperty(_this, "enableLazyLoading", _descriptor11, _this);
93
+ _initializerDefineProperty(_this, "openInEditMode", _descriptor9, _this);
94
+ _initializerDefineProperty(_this, "enableLazyLoading", _descriptor10, _this);
102
95
  _this.DeferredContextCreated = false;
103
96
  return _this;
104
97
  }
105
98
  _inheritsLoose(ObjectPageComponent, _TemplateComponent);
106
99
  var _proto = ObjectPageComponent.prototype;
100
+ _proto.init = function init() {
101
+ this.breadcrumbsHierarchyMode = this.breadcrumbsHierarchyMode ?? "objectNavigation";
102
+ _TemplateComponent.prototype.init.call(this);
103
+ };
107
104
  _proto.isContextExpected = function isContextExpected() {
108
105
  return true;
109
106
  };
@@ -167,6 +164,9 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/core/CommonUt
167
164
  const openInEditMode = this.getViewData().openInEditMode;
168
165
  return openInEditMode === true;
169
166
  };
167
+ _proto._getControllerName = function _getControllerName() {
168
+ return "sap.fe.templates.ObjectPage.ObjectPageController";
169
+ };
170
170
  return ObjectPageComponent;
171
171
  }(TemplateComponent), _descriptor = _applyDecoratedDescriptor(_class2.prototype, "variantManagement", [_dec2], {
172
172
  configurable: true,
@@ -203,22 +203,17 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/core/CommonUt
203
203
  enumerable: true,
204
204
  writable: true,
205
205
  initializer: null
206
- }), _descriptor8 = _applyDecoratedDescriptor(_class2.prototype, "showBreadCrumbs", [_dec9], {
207
- configurable: true,
208
- enumerable: true,
209
- writable: true,
210
- initializer: null
211
- }), _descriptor9 = _applyDecoratedDescriptor(_class2.prototype, "inboundParameters", [_dec10], {
206
+ }), _descriptor8 = _applyDecoratedDescriptor(_class2.prototype, "inboundParameters", [_dec9], {
212
207
  configurable: true,
213
208
  enumerable: true,
214
209
  writable: true,
215
210
  initializer: null
216
- }), _descriptor10 = _applyDecoratedDescriptor(_class2.prototype, "openInEditMode", [_dec11], {
211
+ }), _descriptor9 = _applyDecoratedDescriptor(_class2.prototype, "openInEditMode", [_dec10], {
217
212
  configurable: true,
218
213
  enumerable: true,
219
214
  writable: true,
220
215
  initializer: null
221
- }), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, "enableLazyLoading", [_dec12], {
216
+ }), _descriptor10 = _applyDecoratedDescriptor(_class2.prototype, "enableLazyLoading", [_dec11], {
222
217
  configurable: true,
223
218
  enumerable: true,
224
219
  writable: true,
@@ -226,4 +221,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/core/CommonUt
226
221
  }), _class2)) || _class);
227
222
  return ObjectPageComponent;
228
223
  }, false);
229
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYXJpYW50TWFuYWdlbWVudCIsIkNvcmVMaWJyYXJ5IiwiQ3JlYXRpb25Nb2RlIiwiU2VjdGlvbkxheW91dCIsInRlbXBsYXRlTGliIiwiT2JqZWN0UGFnZSIsIk9iamVjdFBhZ2VDb21wb25lbnQiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJsaWJyYXJ5IiwibWFuaWZlc3QiLCJfZGVjMiIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsIk5vbmUiLCJfZGVjMyIsIlBhZ2UiLCJfZGVjNCIsIl9kZWM1IiwiX2RlYzYiLCJfZGVjNyIsIl9kZWM4IiwiX2RlYzkiLCJfZGVjMTAiLCJfZGVjMTEiLCJfZGVjMTIiLCJfY2xhc3MiLCJfY2xhc3MyIiwiX1RlbXBsYXRlQ29tcG9uZW50IiwiX3RoaXMiLCJfbGVuIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiYXJncyIsIkFycmF5IiwiX2tleSIsImNhbGwiLCJfaW5pdGlhbGl6ZXJEZWZpbmVQcm9wZXJ0eSIsIl9kZXNjcmlwdG9yIiwiX2Rlc2NyaXB0b3IyIiwiX2Rlc2NyaXB0b3IzIiwiX2Rlc2NyaXB0b3I0IiwiX2Rlc2NyaXB0b3I1IiwiX2Rlc2NyaXB0b3I2IiwiX2Rlc2NyaXB0b3I3IiwiX2Rlc2NyaXB0b3I4IiwiX2Rlc2NyaXB0b3I5IiwiX2Rlc2NyaXB0b3IxMCIsIl9kZXNjcmlwdG9yMTEiLCJEZWZlcnJlZENvbnRleHRDcmVhdGVkIiwiX2luaGVyaXRzTG9vc2UiLCJfcHJvdG8iLCJwcm90b3R5cGUiLCJpc0NvbnRleHRFeHBlY3RlZCIsImV4dGVuZFBhZ2VEZWZpbml0aW9uIiwicGFnZURlZmluaXRpb24iLCJjb252ZXJ0ZXJDb250ZXh0IiwiZXh0ZW5kT2JqZWN0UGFnZURlZmluaXRpb24iLCJjcmVhdGVEZWZlcnJlZENvbnRleHQiLCJzUGF0aCIsIm9MaXN0QmluZGluZyIsInBhcmVudENvbnRleHQiLCJkYXRhIiwiYkFjdGlvbkNyZWF0ZSIsIm9QYXJhbWV0ZXJzIiwiJCRncm91cElkIiwiJCR1cGRhdGVHcm91cElkIiwibWV0YU1vZGVsIiwiZ2V0TW9kZWwiLCJnZXRNZXRhTW9kZWwiLCJNb2RlbEhlbHBlciIsImlzQ29sbGFib3JhdGlvbkRyYWZ0U3VwcG9ydGVkIiwiJHNlbGVjdCIsImJpbmRMaXN0IiwicmVwbGFjZSIsInVuZGVmaW5lZCIsIm9TdGFydFVwUGFyYW1zIiwib0FwcENvbXBvbmVudCIsImdldENvbXBvbmVudERhdGEiLCJzdGFydHVwUGFyYW1ldGVycyIsIm9JbmJvdW5kUGFyYW1ldGVycyIsImdldFZpZXdEYXRhIiwiaW5ib3VuZFBhcmFtZXRlcnMiLCJjcmVhdGVQYXJhbXMiLCJwcmVmZXJyZWRNb2RlIiwiaW5jbHVkZXMiLCJPYmplY3QiLCJhc3NpZ24iLCJDb21tb25VdGlscyIsImdldEFkZGl0aW9uYWxQYXJhbXNGb3JDcmVhdGUiLCJnZXRSb290Q29udHJvbCIsImdldENvbnRyb2xsZXIiLCJlZGl0RmxvdyIsImNyZWF0ZURvY3VtZW50IiwiY3JlYXRpb25Nb2RlIiwiU3luYyIsImNyZWF0ZUFjdGlvbiIsImJGcm9tRGVmZXJyZWQiLCJzZWxlY3RlZENvbnRleHRzIiwiZmluYWxseSIsImNhdGNoIiwic2V0VmFyaWFudE1hbmFnZW1lbnQiLCJzVmFyaWFudE1hbmFnZW1lbnQiLCJMb2ciLCJlcnJvciIsInNldFByb3BlcnR5IiwiaXNPcGVuSW5FZGl0TW9kZSIsIm9wZW5JbkVkaXRNb2RlIiwiVGVtcGxhdGVDb21wb25lbnQiLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yIiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsIndyaXRhYmxlIiwiaW5pdGlhbGl6ZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIkNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCB7IGRlZmluZVVJNUNsYXNzLCBwcm9wZXJ0eSB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB0eXBlIHsgSW5ib3VuZFBhcmFtZXRlciB9IGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IENvbW1vblV0aWxzIGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IFRlbXBsYXRlQ29tcG9uZW50IGZyb20gXCJzYXAvZmUvY29yZS9UZW1wbGF0ZUNvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgQ29udmVydGVyQ29udGV4dCBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9Db252ZXJ0ZXJDb250ZXh0XCI7XG5pbXBvcnQgdHlwZSB7IE9iamVjdFBhZ2VEZWZpbml0aW9uIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvdGVtcGxhdGVzL09iamVjdFBhZ2VDb252ZXJ0ZXJcIjtcbmltcG9ydCBNb2RlbEhlbHBlciBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9Nb2RlbEhlbHBlclwiO1xuaW1wb3J0IENvcmVMaWJyYXJ5IGZyb20gXCJzYXAvZmUvY29yZS9saWJyYXJ5XCI7XG5pbXBvcnQgdHlwZSB7IEZpbmFsUGFnZURlZmluaXRpb24gfSBmcm9tIFwic2FwL2ZlL3RlbXBsYXRlcy9PYmplY3RQYWdlL0V4dGVuZFBhZ2VEZWZpbml0aW9uXCI7XG5pbXBvcnQgeyBleHRlbmRPYmplY3RQYWdlRGVmaW5pdGlvbiB9IGZyb20gXCJzYXAvZmUvdGVtcGxhdGVzL09iamVjdFBhZ2UvRXh0ZW5kUGFnZURlZmluaXRpb25cIjtcbmltcG9ydCB0ZW1wbGF0ZUxpYiBmcm9tIFwic2FwL2ZlL3RlbXBsYXRlcy9saWJyYXJ5XCI7XG5pbXBvcnQgdHlwZSBDb250ZXh0IGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvQ29udGV4dFwiO1xuaW1wb3J0IHR5cGUgT0RhdGFMaXN0QmluZGluZyBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L09EYXRhTGlzdEJpbmRpbmdcIjtcblxuY29uc3QgVmFyaWFudE1hbmFnZW1lbnQgPSBDb3JlTGlicmFyeS5WYXJpYW50TWFuYWdlbWVudCxcblx0Q3JlYXRpb25Nb2RlID0gQ29yZUxpYnJhcnkuQ3JlYXRpb25Nb2RlO1xuY29uc3QgU2VjdGlvbkxheW91dCA9IHRlbXBsYXRlTGliLk9iamVjdFBhZ2UuU2VjdGlvbkxheW91dDtcbkBkZWZpbmVVSTVDbGFzcyhcInNhcC5mZS50ZW1wbGF0ZXMuT2JqZWN0UGFnZS5Db21wb25lbnRcIiwgeyBsaWJyYXJ5OiBcInNhcC5mZS50ZW1wbGF0ZXNcIiwgbWFuaWZlc3Q6IFwianNvblwiIH0pXG5jbGFzcyBPYmplY3RQYWdlQ29tcG9uZW50IGV4dGVuZHMgVGVtcGxhdGVDb21wb25lbnQge1xuXHQvKipcblx0ICogRGVmaW5lcyBpZiBhbmQgb24gd2hpY2ggbGV2ZWwgdmFyaWFudHMgY2FuIGJlIGNvbmZpZ3VyZWQ6XG5cdCAqIFx0XHROb25lOiBubyB2YXJpYW50IGNvbmZpZ3VyYXRpb24gYXQgYWxsXG5cdCAqIFx0XHRQYWdlOiBvbmUgdmFyaWFudCBjb25maWd1cmF0aW9uIGZvciB0aGUgd2hvbGUgcGFnZVxuXHQgKiBcdFx0Q29udHJvbDogdmFyaWFudCBjb25maWd1cmF0aW9uIG9uIGNvbnRyb2wgbGV2ZWxcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzYXAuZmUuY29yZS5WYXJpYW50TWFuYWdlbWVudFwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogVmFyaWFudE1hbmFnZW1lbnQuTm9uZVxuXHR9KVxuXHR2YXJpYW50TWFuYWdlbWVudDogdHlwZW9mIFZhcmlhbnRNYW5hZ2VtZW50O1xuXG5cdC8qKlxuXHQgKiBEZWZpbmVzIGhvdyB0aGUgc2VjdGlvbnMgYXJlIHJlbmRlcmVkXG5cdCAqIFx0XHRQYWdlOiBhbGwgc2VjdGlvbnMgYXJlIHNob3duIG9uIG9uZSBwYWdlXG5cdCAqIFx0XHRUYWJzOiBlYWNoIHRvcC1sZXZlbCBzZWN0aW9uIGlzIHNob3duIGluIGFuIG93biB0YWJcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzYXAuZmUudGVtcGxhdGVzLk9iamVjdFBhZ2UuU2VjdGlvbkxheW91dFwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogU2VjdGlvbkxheW91dC5QYWdlXG5cdH0pXG5cdHNlY3Rpb25MYXlvdXQ6IHR5cGVvZiBTZWN0aW9uTGF5b3V0O1xuXG5cdC8qKlxuXHQgKiBFbmFibGVzIHRoZSByZWxhdGVkIGFwcHMgZmVhdHVyZXNcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJib29sZWFuXCIsXG5cdFx0ZGVmYXVsdFZhbHVlOiBmYWxzZVxuXHR9KVxuXHRzaG93UmVsYXRlZEFwcHMhOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBFbmFibGVzIHRoZSAnTWljcm9zb2Z0IFRlYW1zID4gQXMgQ2FyZCcgb3B0aW9uIGluIHRoZSAnU2hhcmUnIG1lbnVcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJvYmplY3RcIlxuXHR9KVxuXHRzaGFyZSE6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+PjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcIm9iamVjdFwiIH0pXG5cdGFkZGl0aW9uYWxTZW1hbnRpY09iamVjdHMhOiBvYmplY3Q7XG5cblx0LyoqXG5cdCAqIEVuYWJsZXMgdGhlIGVkaXRhYmxlIG9iamVjdCBwYWdlIGhlYWRlclxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIixcblx0XHRkZWZhdWx0VmFsdWU6IHRydWVcblx0fSlcblx0ZWRpdGFibGVIZWFkZXJDb250ZW50ITogYm9vbGVhbjtcblxuXHQvKipcblx0ICogU2hvd3MgYSB0ZXh0IGluc3RlYWQgb2YgYW4gSWxsdXN0cmF0ZWRNZXNzYWdlIGluIHRoZSBub0RhdGEgYWdncmVnYXRpb24gb2YgVGFibGVzIG9yIENoYXJ0c1xuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIixcblx0XHRkZWZhdWx0VmFsdWU6IGZhbHNlXG5cdH0pXG5cdHVzZVRleHRGb3JOb0RhdGFNZXNzYWdlcyE6IGJvb2xlYW47XG5cblx0LyoqXG5cdCAqIEVuYWJsZXMgdGhlIEJyZWFkQ3J1bWJzIGZlYXR1cmVzXG5cdCAqL1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYm9vbGVhblwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogdHJ1ZVxuXHR9KVxuXHRzaG93QnJlYWRDcnVtYnMhOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBEZWZpbmVzIHRoZSBwcm9wZXJ0aWVzIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBpbmJvdW5kIE5hdmlnYXRpb25cblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJvYmplY3RcIlxuXHR9KVxuXHRpbmJvdW5kUGFyYW1ldGVycyE6IG9iamVjdDtcblxuXHQvKipcblx0ICogRGVmaW5lcyBpZiBhbiBvYmplY3QgcGFnZSBzaG91bGQgYmUgb3BlbmVkIGluIGVkaXQgbW9kZVxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIlxuXHR9KVxuXHRvcGVuSW5FZGl0TW9kZTogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYm9vbGVhblwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogZmFsc2Vcblx0fSlcblx0ZW5hYmxlTGF6eUxvYWRpbmchOiBib29sZWFuO1xuXG5cdHByaXZhdGUgRGVmZXJyZWRDb250ZXh0Q3JlYXRlZCA9IGZhbHNlO1xuXG5cdGlzQ29udGV4dEV4cGVjdGVkKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0cnVlO1xuXHR9XG5cblx0ZXh0ZW5kUGFnZURlZmluaXRpb24ocGFnZURlZmluaXRpb246IE9iamVjdFBhZ2VEZWZpbml0aW9uLCBjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0KTogRmluYWxQYWdlRGVmaW5pdGlvbiB7XG5cdFx0cmV0dXJuIGV4dGVuZE9iamVjdFBhZ2VEZWZpbml0aW9uKHBhZ2VEZWZpbml0aW9uLCBjb252ZXJ0ZXJDb250ZXh0KTtcblx0fVxuXG5cdC8vIFRPRE86IHRoaXMgc2hvdWxkIGJlIGlkZWFsbHkgYmUgaGFuZGxlZCBieSB0aGUgZWRpdGZsb3cvcm91dGluZyB3aXRob3V0IHRoZSBuZWVkIHRvIGhhdmUgdGhpcyBtZXRob2QgaW4gdGhlXG5cdC8vIG9iamVjdCBwYWdlIC0gZm9yIG5vdyBrZWVwIGl0IGhlcmVcblx0Y3JlYXRlRGVmZXJyZWRDb250ZXh0KFxuXHRcdHNQYXRoOiBzdHJpbmcsXG5cdFx0b0xpc3RCaW5kaW5nOiBPRGF0YUxpc3RCaW5kaW5nIHwgdW5kZWZpbmVkLFxuXHRcdHBhcmVudENvbnRleHQ6IENvbnRleHQgfCB1bmRlZmluZWQsXG5cdFx0ZGF0YTogb2JqZWN0IHwgdW5kZWZpbmVkLFxuXHRcdGJBY3Rpb25DcmVhdGU6IGJvb2xlYW5cblx0KTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLkRlZmVycmVkQ29udGV4dENyZWF0ZWQpIHtcblx0XHRcdHRoaXMuRGVmZXJyZWRDb250ZXh0Q3JlYXRlZCA9IHRydWU7XG5cdFx0XHRjb25zdCBvUGFyYW1ldGVyczogeyAkJGdyb3VwSWQ6IHN0cmluZzsgJCR1cGRhdGVHcm91cElkOiBzdHJpbmc7ICRzZWxlY3Q/OiBzdHJpbmcgfSA9IHtcblx0XHRcdFx0JCRncm91cElkOiBcIiRhdXRvLkhlcm9lc1wiLFxuXHRcdFx0XHQkJHVwZGF0ZUdyb3VwSWQ6IFwiJGF1dG9cIlxuXHRcdFx0fTtcblx0XHRcdGNvbnN0IG1ldGFNb2RlbCA9IHRoaXMuZ2V0TW9kZWwoKS5nZXRNZXRhTW9kZWwoKTtcblx0XHRcdGlmIChNb2RlbEhlbHBlci5pc0NvbGxhYm9yYXRpb25EcmFmdFN1cHBvcnRlZChtZXRhTW9kZWwpKSB7XG5cdFx0XHRcdG9QYXJhbWV0ZXJzLiRzZWxlY3QgPSBcIkRyYWZ0QWRtaW5pc3RyYXRpdmVEYXRhL0RyYWZ0QWRtaW5pc3RyYXRpdmVVc2VyXCI7XG5cdFx0XHR9XG5cblx0XHRcdGlmICghb0xpc3RCaW5kaW5nKSB7XG5cdFx0XHRcdG9MaXN0QmluZGluZyA9IHRoaXMuZ2V0TW9kZWwoKS5iaW5kTGlzdChzUGF0aC5yZXBsYWNlKFwiKC4uLilcIiwgXCJcIiksIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIG9QYXJhbWV0ZXJzKTtcblx0XHRcdH1cblx0XHRcdGNvbnN0IG9TdGFydFVwUGFyYW1zID1cblx0XHRcdFx0XHR0aGlzLm9BcHBDb21wb25lbnQgJiYgdGhpcy5vQXBwQ29tcG9uZW50LmdldENvbXBvbmVudERhdGEoKSAmJiB0aGlzLm9BcHBDb21wb25lbnQuZ2V0Q29tcG9uZW50RGF0YSgpLnN0YXJ0dXBQYXJhbWV0ZXJzLFxuXHRcdFx0XHRvSW5ib3VuZFBhcmFtZXRlcnMgPSB0aGlzLmdldFZpZXdEYXRhKCkuaW5ib3VuZFBhcmFtZXRlcnMgYXMgUmVjb3JkPHN0cmluZywgSW5ib3VuZFBhcmFtZXRlcj4gfCB1bmRlZmluZWQ7XG5cdFx0XHRsZXQgY3JlYXRlUGFyYW1zO1xuXHRcdFx0aWYgKG9TdGFydFVwUGFyYW1zICYmIG9TdGFydFVwUGFyYW1zLnByZWZlcnJlZE1vZGUgJiYgb1N0YXJ0VXBQYXJhbXMucHJlZmVycmVkTW9kZVswXS5pbmNsdWRlcyhcImNyZWF0ZVwiKSkge1xuXHRcdFx0XHRjcmVhdGVQYXJhbXMgPSBPYmplY3QuYXNzaWduKHt9LCBkYXRhLCBDb21tb25VdGlscy5nZXRBZGRpdGlvbmFsUGFyYW1zRm9yQ3JlYXRlKG9TdGFydFVwUGFyYW1zLCBvSW5ib3VuZFBhcmFtZXRlcnMpKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdGNyZWF0ZVBhcmFtcyA9IGRhdGE7XG5cdFx0XHR9XG5cblx0XHRcdC8vIGZvciBub3cgd2FpdCB1bnRpbCB0aGUgdmlldyBhbmQgdGhlIGNvbnRyb2xsZXIgaXMgY3JlYXRlZFxuXHRcdFx0dGhpcy5nZXRSb290Q29udHJvbCgpXG5cdFx0XHRcdC5nZXRDb250cm9sbGVyKClcblx0XHRcdFx0LmVkaXRGbG93LmNyZWF0ZURvY3VtZW50KG9MaXN0QmluZGluZywge1xuXHRcdFx0XHRcdGNyZWF0aW9uTW9kZTogQ3JlYXRpb25Nb2RlLlN5bmMsXG5cdFx0XHRcdFx0Y3JlYXRlQWN0aW9uOiBiQWN0aW9uQ3JlYXRlLFxuXHRcdFx0XHRcdGRhdGE6IGNyZWF0ZVBhcmFtcyxcblx0XHRcdFx0XHRiRnJvbURlZmVycmVkOiB0cnVlLFxuXHRcdFx0XHRcdHNlbGVjdGVkQ29udGV4dHM6IHBhcmVudENvbnRleHQgPyBbcGFyZW50Q29udGV4dF0gOiB1bmRlZmluZWRcblx0XHRcdFx0fSlcblx0XHRcdFx0LmZpbmFsbHkoKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMuRGVmZXJyZWRDb250ZXh0Q3JlYXRlZCA9IGZhbHNlO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdC8vIERvIE5vdGhpbmcgP1xuXHRcdFx0XHR9KTtcblx0XHR9XG5cdH1cblxuXHRzZXRWYXJpYW50TWFuYWdlbWVudChzVmFyaWFudE1hbmFnZW1lbnQ6IHN0cmluZyk6IHZvaWQge1xuXHRcdGlmIChzVmFyaWFudE1hbmFnZW1lbnQgPT09IFZhcmlhbnRNYW5hZ2VtZW50LlBhZ2UpIHtcblx0XHRcdExvZy5lcnJvcihcIk9iamVjdFBhZ2UgZG9lcyBub3Qgc3VwcG9ydCBQYWdlLWxldmVsIHZhcmlhbnQgbWFuYWdlbWVudCB5ZXRcIik7XG5cdFx0XHRzVmFyaWFudE1hbmFnZW1lbnQgPSBWYXJpYW50TWFuYWdlbWVudC5Ob25lO1xuXHRcdH1cblxuXHRcdHRoaXMuc2V0UHJvcGVydHkoXCJ2YXJpYW50TWFuYWdlbWVudFwiLCBzVmFyaWFudE1hbmFnZW1lbnQpO1xuXHR9XG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiBvcGVuSW5FZGl0TW9kZSBpcyBkZWZpbmVkIGluIHRoZSBtYW5pZmVzdCBzZXR0aW5nc1xuXHQgKiBAcmV0dXJucyBhIGJvb2xlYW4gaW5kaWNhdGluZyBpZiBlZGl0IG1vZGUgaXMgc2V0IGZvciBhbiBvYmplY3QgcGFnZVxuXHQgKi9cblxuXHRpc09wZW5JbkVkaXRNb2RlKCk6IGJvb2xlYW4ge1xuXHRcdGNvbnN0IG9wZW5JbkVkaXRNb2RlID0gdGhpcy5nZXRWaWV3RGF0YSgpLm9wZW5JbkVkaXRNb2RlO1xuXHRcdHJldHVybiBvcGVuSW5FZGl0TW9kZSA9PT0gdHJ1ZTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBPYmplY3RQYWdlQ29tcG9uZW50O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0VBZUEsTUFBTUEsaUJBQWlCLEdBQUdDLFdBQVcsQ0FBQ0QsaUJBQWlCO0lBQ3RERSxZQUFZLEdBQUdELFdBQVcsQ0FBQ0MsWUFBWTtFQUN4QyxNQUFNQyxhQUFhLEdBQUdDLFdBQVcsQ0FBQ0MsVUFBVSxDQUFDRixhQUFhO0VBQUMsSUFFckRHLG1CQUFtQixJQUFBQyxJQUFBLEdBRHhCQyxjQUFjLENBQUMsdUNBQXVDLEVBQUU7SUFBRUMsT0FBTyxFQUFFLGtCQUFrQjtJQUFFQyxRQUFRLEVBQUU7RUFBTyxDQUFDLENBQUMsRUFBQUMsS0FBQSxHQVF6R0MsUUFBUSxDQUFDO0lBQ1RDLElBQUksRUFBRSwrQkFBK0I7SUFDckNDLFlBQVksRUFBRWQsaUJBQWlCLENBQUNlO0VBQ2pDLENBQUMsQ0FBQyxFQUFBQyxLQUFBLEdBUURKLFFBQVEsQ0FBQztJQUNUQyxJQUFJLEVBQUUsMkNBQTJDO0lBQ2pEQyxZQUFZLEVBQUVYLGFBQWEsQ0FBQ2M7RUFDN0IsQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FNRE4sUUFBUSxDQUFDO0lBQ1RDLElBQUksRUFBRSxTQUFTO0lBQ2ZDLFlBQVksRUFBRTtFQUNmLENBQUMsQ0FBQyxFQUFBSyxLQUFBLEdBTURQLFFBQVEsQ0FBQztJQUNUQyxJQUFJLEVBQUU7RUFDUCxDQUFDLENBQUMsRUFBQU8sS0FBQSxHQUdEUixRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFO0VBQVMsQ0FBQyxDQUFDLEVBQUFRLEtBQUEsR0FNNUJULFFBQVEsQ0FBQztJQUNUQyxJQUFJ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
224
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYXJpYW50TWFuYWdlbWVudCIsIkNvcmVMaWJyYXJ5IiwiQ3JlYXRpb25Nb2RlIiwiU2VjdGlvbkxheW91dCIsInRlbXBsYXRlTGliIiwiT2JqZWN0UGFnZSIsIk9iamVjdFBhZ2VDb21wb25lbnQiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJsaWJyYXJ5IiwibWFuaWZlc3QiLCJfZGVjMiIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsIk5vbmUiLCJfZGVjMyIsIlBhZ2UiLCJfZGVjNCIsIl9kZWM1IiwiX2RlYzYiLCJfZGVjNyIsIl9kZWM4IiwiX2RlYzkiLCJfZGVjMTAiLCJfZGVjMTEiLCJfY2xhc3MiLCJfY2xhc3MyIiwiX1RlbXBsYXRlQ29tcG9uZW50IiwiX3RoaXMiLCJfbGVuIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiYXJncyIsIkFycmF5IiwiX2tleSIsImNhbGwiLCJfaW5pdGlhbGl6ZXJEZWZpbmVQcm9wZXJ0eSIsIl9kZXNjcmlwdG9yIiwiX2Rlc2NyaXB0b3IyIiwiX2Rlc2NyaXB0b3IzIiwiX2Rlc2NyaXB0b3I0IiwiX2Rlc2NyaXB0b3I1IiwiX2Rlc2NyaXB0b3I2IiwiX2Rlc2NyaXB0b3I3IiwiX2Rlc2NyaXB0b3I4IiwiX2Rlc2NyaXB0b3I5IiwiX2Rlc2NyaXB0b3IxMCIsIkRlZmVycmVkQ29udGV4dENyZWF0ZWQiLCJfaW5oZXJpdHNMb29zZSIsIl9wcm90byIsInByb3RvdHlwZSIsImluaXQiLCJicmVhZGNydW1ic0hpZXJhcmNoeU1vZGUiLCJpc0NvbnRleHRFeHBlY3RlZCIsImV4dGVuZFBhZ2VEZWZpbml0aW9uIiwicGFnZURlZmluaXRpb24iLCJjb252ZXJ0ZXJDb250ZXh0IiwiZXh0ZW5kT2JqZWN0UGFnZURlZmluaXRpb24iLCJjcmVhdGVEZWZlcnJlZENvbnRleHQiLCJzUGF0aCIsIm9MaXN0QmluZGluZyIsInBhcmVudENvbnRleHQiLCJkYXRhIiwiYkFjdGlvbkNyZWF0ZSIsIm9QYXJhbWV0ZXJzIiwiJCRncm91cElkIiwiJCR1cGRhdGVHcm91cElkIiwibWV0YU1vZGVsIiwiZ2V0TW9kZWwiLCJnZXRNZXRhTW9kZWwiLCJNb2RlbEhlbHBlciIsImlzQ29sbGFib3JhdGlvbkRyYWZ0U3VwcG9ydGVkIiwiJHNlbGVjdCIsImJpbmRMaXN0IiwicmVwbGFjZSIsInVuZGVmaW5lZCIsIm9TdGFydFVwUGFyYW1zIiwib0FwcENvbXBvbmVudCIsImdldENvbXBvbmVudERhdGEiLCJzdGFydHVwUGFyYW1ldGVycyIsIm9JbmJvdW5kUGFyYW1ldGVycyIsImdldFZpZXdEYXRhIiwiaW5ib3VuZFBhcmFtZXRlcnMiLCJjcmVhdGVQYXJhbXMiLCJwcmVmZXJyZWRNb2RlIiwiaW5jbHVkZXMiLCJPYmplY3QiLCJhc3NpZ24iLCJDb21tb25VdGlscyIsImdldEFkZGl0aW9uYWxQYXJhbXNGb3JDcmVhdGUiLCJnZXRSb290Q29udHJvbCIsImdldENvbnRyb2xsZXIiLCJlZGl0RmxvdyIsImNyZWF0ZURvY3VtZW50IiwiY3JlYXRpb25Nb2RlIiwiU3luYyIsImNyZWF0ZUFjdGlvbiIsImJGcm9tRGVmZXJyZWQiLCJzZWxlY3RlZENvbnRleHRzIiwiZmluYWxseSIsImNhdGNoIiwic2V0VmFyaWFudE1hbmFnZW1lbnQiLCJzVmFyaWFudE1hbmFnZW1lbnQiLCJMb2ciLCJlcnJvciIsInNldFByb3BlcnR5IiwiaXNPcGVuSW5FZGl0TW9kZSIsIm9wZW5JbkVkaXRNb2RlIiwiX2dldENvbnRyb2xsZXJOYW1lIiwiVGVtcGxhdGVDb21wb25lbnQiLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yIiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsIndyaXRhYmxlIiwiaW5pdGlhbGl6ZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIkNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCB7IGRlZmluZVVJNUNsYXNzLCBwcm9wZXJ0eSB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB0eXBlIHsgSW5ib3VuZFBhcmFtZXRlciB9IGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IENvbW1vblV0aWxzIGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IFRlbXBsYXRlQ29tcG9uZW50IGZyb20gXCJzYXAvZmUvY29yZS9UZW1wbGF0ZUNvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgQ29udmVydGVyQ29udGV4dCBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9Db252ZXJ0ZXJDb250ZXh0XCI7XG5pbXBvcnQgdHlwZSB7IE9iamVjdFBhZ2VEZWZpbml0aW9uIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvdGVtcGxhdGVzL09iamVjdFBhZ2VDb252ZXJ0ZXJcIjtcbmltcG9ydCBNb2RlbEhlbHBlciBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9Nb2RlbEhlbHBlclwiO1xuaW1wb3J0IENvcmVMaWJyYXJ5IGZyb20gXCJzYXAvZmUvY29yZS9saWJyYXJ5XCI7XG5pbXBvcnQgdHlwZSB7IEZpbmFsUGFnZURlZmluaXRpb24gfSBmcm9tIFwic2FwL2ZlL3RlbXBsYXRlcy9PYmplY3RQYWdlL0V4dGVuZFBhZ2VEZWZpbml0aW9uXCI7XG5pbXBvcnQgeyBleHRlbmRPYmplY3RQYWdlRGVmaW5pdGlvbiB9IGZyb20gXCJzYXAvZmUvdGVtcGxhdGVzL09iamVjdFBhZ2UvRXh0ZW5kUGFnZURlZmluaXRpb25cIjtcbmltcG9ydCB0ZW1wbGF0ZUxpYiBmcm9tIFwic2FwL2ZlL3RlbXBsYXRlcy9saWJyYXJ5XCI7XG5pbXBvcnQgdHlwZSBDb250ZXh0IGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvQ29udGV4dFwiO1xuaW1wb3J0IHR5cGUgT0RhdGFMaXN0QmluZGluZyBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L09EYXRhTGlzdEJpbmRpbmdcIjtcblxuY29uc3QgVmFyaWFudE1hbmFnZW1lbnQgPSBDb3JlTGlicmFyeS5WYXJpYW50TWFuYWdlbWVudCxcblx0Q3JlYXRpb25Nb2RlID0gQ29yZUxpYnJhcnkuQ3JlYXRpb25Nb2RlO1xuY29uc3QgU2VjdGlvbkxheW91dCA9IHRlbXBsYXRlTGliLk9iamVjdFBhZ2UuU2VjdGlvbkxheW91dDtcbkBkZWZpbmVVSTVDbGFzcyhcInNhcC5mZS50ZW1wbGF0ZXMuT2JqZWN0UGFnZS5Db21wb25lbnRcIiwgeyBsaWJyYXJ5OiBcInNhcC5mZS50ZW1wbGF0ZXNcIiwgbWFuaWZlc3Q6IFwianNvblwiIH0pXG5jbGFzcyBPYmplY3RQYWdlQ29tcG9uZW50IGV4dGVuZHMgVGVtcGxhdGVDb21wb25lbnQge1xuXHQvKipcblx0ICogRGVmaW5lcyBpZiBhbmQgb24gd2hpY2ggbGV2ZWwgdmFyaWFudHMgY2FuIGJlIGNvbmZpZ3VyZWQ6XG5cdCAqIFx0XHROb25lOiBubyB2YXJpYW50IGNvbmZpZ3VyYXRpb24gYXQgYWxsXG5cdCAqIFx0XHRQYWdlOiBvbmUgdmFyaWFudCBjb25maWd1cmF0aW9uIGZvciB0aGUgd2hvbGUgcGFnZVxuXHQgKiBcdFx0Q29udHJvbDogdmFyaWFudCBjb25maWd1cmF0aW9uIG9uIGNvbnRyb2wgbGV2ZWxcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzYXAuZmUuY29yZS5WYXJpYW50TWFuYWdlbWVudFwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogVmFyaWFudE1hbmFnZW1lbnQuTm9uZVxuXHR9KVxuXHR2YXJpYW50TWFuYWdlbWVudDogdHlwZW9mIFZhcmlhbnRNYW5hZ2VtZW50O1xuXG5cdC8qKlxuXHQgKiBEZWZpbmVzIGhvdyB0aGUgc2VjdGlvbnMgYXJlIHJlbmRlcmVkXG5cdCAqIFx0XHRQYWdlOiBhbGwgc2VjdGlvbnMgYXJlIHNob3duIG9uIG9uZSBwYWdlXG5cdCAqIFx0XHRUYWJzOiBlYWNoIHRvcC1sZXZlbCBzZWN0aW9uIGlzIHNob3duIGluIGFuIG93biB0YWJcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzYXAuZmUudGVtcGxhdGVzLk9iamVjdFBhZ2UuU2VjdGlvbkxheW91dFwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogU2VjdGlvbkxheW91dC5QYWdlXG5cdH0pXG5cdHNlY3Rpb25MYXlvdXQ6IHR5cGVvZiBTZWN0aW9uTGF5b3V0O1xuXG5cdC8qKlxuXHQgKiBFbmFibGVzIHRoZSByZWxhdGVkIGFwcHMgZmVhdHVyZXNcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJib29sZWFuXCIsXG5cdFx0ZGVmYXVsdFZhbHVlOiBmYWxzZVxuXHR9KVxuXHRzaG93UmVsYXRlZEFwcHMhOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBFbmFibGVzIHRoZSAnTWljcm9zb2Z0IFRlYW1zID4gQXMgQ2FyZCcgb3B0aW9uIGluIHRoZSAnU2hhcmUnIG1lbnVcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJvYmplY3RcIlxuXHR9KVxuXHRzaGFyZSE6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+PjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcIm9iamVjdFwiIH0pXG5cdGFkZGl0aW9uYWxTZW1hbnRpY09iamVjdHMhOiBvYmplY3Q7XG5cblx0LyoqXG5cdCAqIEVuYWJsZXMgdGhlIGVkaXRhYmxlIG9iamVjdCBwYWdlIGhlYWRlclxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIixcblx0XHRkZWZhdWx0VmFsdWU6IHRydWVcblx0fSlcblx0ZWRpdGFibGVIZWFkZXJDb250ZW50ITogYm9vbGVhbjtcblxuXHQvKipcblx0ICogU2hvd3MgYSB0ZXh0IGluc3RlYWQgb2YgYW4gSWxsdXN0cmF0ZWRNZXNzYWdlIGluIHRoZSBub0RhdGEgYWdncmVnYXRpb24gb2YgVGFibGVzIG9yIENoYXJ0c1xuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIixcblx0XHRkZWZhdWx0VmFsdWU6IGZhbHNlXG5cdH0pXG5cdHVzZVRleHRGb3JOb0RhdGFNZXNzYWdlcyE6IGJvb2xlYW47XG5cblx0LyoqXG5cdCAqIERlZmluZXMgdGhlIHByb3BlcnRpZXMgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGluYm91bmQgTmF2aWdhdGlvblxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcIm9iamVjdFwiXG5cdH0pXG5cdGluYm91bmRQYXJhbWV0ZXJzITogb2JqZWN0O1xuXG5cdC8qKlxuXHQgKiBEZWZpbmVzIGlmIGFuIG9iamVjdCBwYWdlIHNob3VsZCBiZSBvcGVuZWQgaW4gZWRpdCBtb2RlXG5cdCAqL1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYm9vbGVhblwiXG5cdH0pXG5cdG9wZW5JbkVkaXRNb2RlOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJib29sZWFuXCIsXG5cdFx0ZGVmYXVsdFZhbHVlOiBmYWxzZVxuXHR9KVxuXHRlbmFibGVMYXp5TG9hZGluZyE6IGJvb2xlYW47XG5cblx0cHJpdmF0ZSBEZWZlcnJlZENvbnRleHRDcmVhdGVkID0gZmFsc2U7XG5cblx0aW5pdCgpOiB2b2lkIHtcblx0XHR0aGlzLmJyZWFkY3J1bWJzSGllcmFyY2h5TW9kZSA9IHRoaXMuYnJlYWRjcnVtYnNIaWVyYXJjaHlNb2RlID8/IFwib2JqZWN0TmF2aWdhdGlvblwiO1xuXHRcdHN1cGVyLmluaXQoKTtcblx0fVxuXG5cdGlzQ29udGV4dEV4cGVjdGVkKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0cnVlO1xuXHR9XG5cblx0ZXh0ZW5kUGFnZURlZmluaXRpb24ocGFnZURlZmluaXRpb246IE9iamVjdFBhZ2VEZWZpbml0aW9uLCBjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0KTogRmluYWxQYWdlRGVmaW5pdGlvbiB7XG5cdFx0cmV0dXJuIGV4dGVuZE9iamVjdFBhZ2VEZWZpbml0aW9uKHBhZ2VEZWZpbml0aW9uLCBjb252ZXJ0ZXJDb250ZXh0KTtcblx0fVxuXG5cdC8vIFRPRE86IHRoaXMgc2hvdWxkIGJlIGlkZWFsbHkgYmUgaGFuZGxlZCBieSB0aGUgZWRpdGZsb3cvcm91dGluZyB3aXRob3V0IHRoZSBuZWVkIHRvIGhhdmUgdGhpcyBtZXRob2QgaW4gdGhlXG5cdC8vIG9iamVjdCBwYWdlIC0gZm9yIG5vdyBrZWVwIGl0IGhlcmVcblx0Y3JlYXRlRGVmZXJyZWRDb250ZXh0KFxuXHRcdHNQYXRoOiBzdHJpbmcsXG5cdFx0b0xpc3RCaW5kaW5nOiBPRGF0YUxpc3RCaW5kaW5nIHwgdW5kZWZpbmVkLFxuXHRcdHBhcmVudENvbnRleHQ6IENvbnRleHQgfCB1bmRlZmluZWQsXG5cdFx0ZGF0YTogb2JqZWN0IHwgdW5kZWZpbmVkLFxuXHRcdGJBY3Rpb25DcmVhdGU6IGJvb2xlYW5cblx0KTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLkRlZmVycmVkQ29udGV4dENyZWF0ZWQpIHtcblx0XHRcdHRoaXMuRGVmZXJyZWRDb250ZXh0Q3JlYXRlZCA9IHRydWU7XG5cdFx0XHRjb25zdCBvUGFyYW1ldGVyczogeyAkJGdyb3VwSWQ6IHN0cmluZzsgJCR1cGRhdGVHcm91cElkOiBzdHJpbmc7ICRzZWxlY3Q/OiBzdHJpbmcgfSA9IHtcblx0XHRcdFx0JCRncm91cElkOiBcIiRhdXRvLkhlcm9lc1wiLFxuXHRcdFx0XHQkJHVwZGF0ZUdyb3VwSWQ6IFwiJGF1dG9cIlxuXHRcdFx0fTtcblx0XHRcdGNvbnN0IG1ldGFNb2RlbCA9IHRoaXMuZ2V0TW9kZWwoKS5nZXRNZXRhTW9kZWwoKTtcblx0XHRcdGlmIChNb2RlbEhlbHBlci5pc0NvbGxhYm9yYXRpb25EcmFmdFN1cHBvcnRlZChtZXRhTW9kZWwpKSB7XG5cdFx0XHRcdG9QYXJhbWV0ZXJzLiRzZWxlY3QgPSBcIkRyYWZ0QWRtaW5pc3RyYXRpdmVEYXRhL0RyYWZ0QWRtaW5pc3RyYXRpdmVVc2VyXCI7XG5cdFx0XHR9XG5cblx0XHRcdGlmICghb0xpc3RCaW5kaW5nKSB7XG5cdFx0XHRcdG9MaXN0QmluZGluZyA9IHRoaXMuZ2V0TW9kZWwoKS5iaW5kTGlzdChzUGF0aC5yZXBsYWNlKFwiKC4uLilcIiwgXCJcIiksIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIG9QYXJhbWV0ZXJzKTtcblx0XHRcdH1cblx0XHRcdGNvbnN0IG9TdGFydFVwUGFyYW1zID1cblx0XHRcdFx0XHR0aGlzLm9BcHBDb21wb25lbnQgJiYgdGhpcy5vQXBwQ29tcG9uZW50LmdldENvbXBvbmVudERhdGEoKSAmJiB0aGlzLm9BcHBDb21wb25lbnQuZ2V0Q29tcG9uZW50RGF0YSgpLnN0YXJ0dXBQYXJhbWV0ZXJzLFxuXHRcdFx0XHRvSW5ib3VuZFBhcmFtZXRlcnMgPSB0aGlzLmdldFZpZXdEYXRhKCkuaW5ib3VuZFBhcmFtZXRlcnMgYXMgUmVjb3JkPHN0cmluZywgSW5ib3VuZFBhcmFtZXRlcj4gfCB1bmRlZmluZWQ7XG5cdFx0XHRsZXQgY3JlYXRlUGFyYW1zO1xuXHRcdFx0aWYgKG9TdGFydFVwUGFyYW1zICYmIG9TdGFydFVwUGFyYW1zLnByZWZlcnJlZE1vZGUgJiYgb1N0YXJ0VXBQYXJhbXMucHJlZmVycmVkTW9kZVswXS5pbmNsdWRlcyhcImNyZWF0ZVwiKSkge1xuXHRcdFx0XHRjcmVhdGVQYXJhbXMgPSBPYmplY3QuYXNzaWduKHt9LCBkYXRhLCBDb21tb25VdGlscy5nZXRBZGRpdGlvbmFsUGFyYW1zRm9yQ3JlYXRlKG9TdGFydFVwUGFyYW1zLCBvSW5ib3VuZFBhcmFtZXRlcnMpKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdGNyZWF0ZVBhcmFtcyA9IGRhdGE7XG5cdFx0XHR9XG5cblx0XHRcdC8vIGZvciBub3cgd2FpdCB1bnRpbCB0aGUgdmlldyBhbmQgdGhlIGNvbnRyb2xsZXIgaXMgY3JlYXRlZFxuXHRcdFx0dGhpcy5nZXRSb290Q29udHJvbCgpXG5cdFx0XHRcdC5nZXRDb250cm9sbGVyKClcblx0XHRcdFx0LmVkaXRGbG93LmNyZWF0ZURvY3VtZW50KG9MaXN0QmluZGluZywge1xuXHRcdFx0XHRcdGNyZWF0aW9uTW9kZTogQ3JlYXRpb25Nb2RlLlN5bmMsXG5cdFx0XHRcdFx0Y3JlYXRlQWN0aW9uOiBiQWN0aW9uQ3JlYXRlLFxuXHRcdFx0XHRcdGRhdGE6IGNyZWF0ZVBhcmFtcyxcblx0XHRcdFx0XHRiRnJvbURlZmVycmVkOiB0cnVlLFxuXHRcdFx0XHRcdHNlbGVjdGVkQ29udGV4dHM6IHBhcmVudENvbnRleHQgPyBbcGFyZW50Q29udGV4dF0gOiB1bmRlZmluZWRcblx0XHRcdFx0fSlcblx0XHRcdFx0LmZpbmFsbHkoKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMuRGVmZXJyZWRDb250ZXh0Q3JlYXRlZCA9IGZhbHNlO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdC8vIERvIE5vdGhpbmcgP1xuXHRcdFx0XHR9KTtcblx0XHR9XG5cdH1cblxuXHRzZXRWYXJpYW50TWFuYWdlbWVudChzVmFyaWFudE1hbmFnZW1lbnQ6IHN0cmluZyk6IHZvaWQge1xuXHRcdGlmIChzVmFyaWFudE1hbmFnZW1lbnQgPT09IFZhcmlhbnRNYW5hZ2VtZW50LlBhZ2UpIHtcblx0XHRcdExvZy5lcnJvcihcIk9iamVjdFBhZ2UgZG9lcyBub3Qgc3VwcG9ydCBQYWdlLWxldmVsIHZhcmlhbnQgbWFuYWdlbWVudCB5ZXRcIik7XG5cdFx0XHRzVmFyaWFudE1hbmFnZW1lbnQgPSBWYXJpYW50TWFuYWdlbWVudC5Ob25lO1xuXHRcdH1cblxuXHRcdHRoaXMuc2V0UHJvcGVydHkoXCJ2YXJpYW50TWFuYWdlbWVudFwiLCBzVmFyaWFudE1hbmFnZW1lbnQpO1xuXHR9XG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiBvcGVuSW5FZGl0TW9kZSBpcyBkZWZpbmVkIGluIHRoZSBtYW5pZmVzdCBzZXR0aW5nc1xuXHQgKiBAcmV0dXJucyBhIGJvb2xlYW4gaW5kaWNhdGluZyBpZiBlZGl0IG1vZGUgaXMgc2V0IGZvciBhbiBvYmplY3QgcGFnZVxuXHQgKi9cblxuXHRpc09wZW5JbkVkaXRNb2RlKCk6IGJvb2xlYW4ge1xuXHRcdGNvbnN0IG9wZW5JbkVkaXRNb2RlID0gdGhpcy5nZXRWaWV3RGF0YSgpLm9wZW5JbkVkaXRNb2RlO1xuXHRcdHJldHVybiBvcGVuSW5FZGl0TW9kZSA9PT0gdHJ1ZTtcblx0fVxuXG5cdF9nZXRDb250cm9sbGVyTmFtZSgpOiBzdHJpbmcge1xuXHRcdHJldHVybiBcInNhcC5mZS50ZW1wbGF0ZXMuT2JqZWN0UGFnZS5PYmplY3RQYWdlQ29udHJvbGxlclwiO1xuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE9iamVjdFBhZ2VDb21wb25lbnQ7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7RUFlQSxNQUFNQSxpQkFBaUIsR0FBR0MsV0FBVyxDQUFDRCxpQkFBaUI7SUFDdERFLFlBQVksR0FBR0QsV0FBVyxDQUFDQyxZQUFZO0VBQ3hDLE1BQU1DLGFBQWEsR0FBR0MsV0FBVyxDQUFDQyxVQUFVLENBQUNGLGFBQWE7RUFBQyxJQUVyREcsbUJBQW1CLElBQUFDLElBQUEsR0FEeEJDLGNBQWMsQ0FBQyx1Q0FBdUMsRUFBRTtJQUFFQyxPQUFPLEVBQUUsa0JBQWtCO0lBQUVDLFFBQVEsRUFBRTtFQUFPLENBQUMsQ0FBQyxFQUFBQyxLQUFBLEdBUXpHQyxRQUFRLENBQUM7SUFDVEMsSUFBSSxFQUFFLCtCQUErQjtJQUNyQ0MsWUFBWSxFQUFFZCxpQkFBaUIsQ0FBQ2U7RUFDakMsQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FRREosUUFBUSxDQUFDO0lBQ1RDLElBQUksRUFBRSwyQ0FBMkM7SUFDakRDLFlBQVksRUFBRVgsYUFBYSxDQUFDYztFQUM3QixDQUFDLENBQUMsRUFBQUMsS0FBQSxHQU1ETixRQUFRLENBQUM7SUFDVEMsSUFBSSxFQUFFLFNBQVM7SUFDZkMsWUFBWSxFQUFFO0VBQ2YsQ0FBQyxDQUFDLEVBQUFLLEtBQUEsR0FNRFAsUUFBUSxDQUFDO0lBQ1RDLElB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
@@ -79,15 +79,6 @@ class ObjectPageComponent extends TemplateComponent {
79
79
  })
80
80
  useTextForNoDataMessages!: boolean;
81
81
 
82
- /**
83
- * Enables the BreadCrumbs features
84
- */
85
- @property({
86
- type: "boolean",
87
- defaultValue: true
88
- })
89
- showBreadCrumbs!: boolean;
90
-
91
82
  /**
92
83
  * Defines the properties which can be used for inbound Navigation
93
84
  */
@@ -112,6 +103,11 @@ class ObjectPageComponent extends TemplateComponent {
112
103
 
113
104
  private DeferredContextCreated = false;
114
105
 
106
+ init(): void {
107
+ this.breadcrumbsHierarchyMode = this.breadcrumbsHierarchyMode ?? "objectNavigation";
108
+ super.init();
109
+ }
110
+
115
111
  isContextExpected(): boolean {
116
112
  return true;
117
113
  }
@@ -190,6 +186,10 @@ class ObjectPageComponent extends TemplateComponent {
190
186
  const openInEditMode = this.getViewData().openInEditMode;
191
187
  return openInEditMode === true;
192
188
  }
189
+
190
+ _getControllerName(): string {
191
+ return "sap.fe.templates.ObjectPage.ObjectPageController";
192
+ }
193
193
  }
194
194
 
195
195
  export default ObjectPageComponent;
@@ -14,7 +14,7 @@
14
14
  xmlns:macroShare="sap.fe.macros.share"
15
15
  xmlns:fclMacro="sap.fe.macros.fcl"
16
16
  xmlns:internalMacro="sap.fe.macros.internal"
17
- controllerName="sap.fe.templates.ObjectPage.ObjectPageController"
17
+ controllerName="{converterContext>controllerName}"
18
18
  template:require="{
19
19
  MODEL: 'sap/ui/model/odata/v4/AnnotationHelper',
20
20
  OP: 'sap/fe/templates/ObjectPage/ObjectPageTemplating',
@@ -144,10 +144,9 @@
144
144
  <core:Fragment fragmentName="sap.fe.templates.ObjectPage.view.fragments.Actions" type="XML" />
145
145
  </uxap:actions>
146
146
  <uxap:breadcrumbs>
147
- <Breadcrumbs
148
- visible="{= OP.getVisibleExpressionForBreadcrumbs(${viewData>/}) }"
149
- modelContextChange=".setBreadcrumbLinks(${$source>/})"
150
- id="fe::Breadcrumbs"
147
+ <macro:Breadcrumbs
148
+ visible="{= UI.getVisibleExpressionForBreadcrumbs(${viewData>/}) }"
149
+ hierarchyMode="{viewData>/breadcrumbsHierarchyMode}"
151
150
  />
152
151
  </uxap:breadcrumbs>
153
152
  </uxap:ObjectPageDynamicHeaderTitle>