@sapui5/sap.fe.templates 1.109.0 → 1.110.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/README.md +5 -1
  2. package/package.json +11 -8
  3. package/src/sap/fe/templates/.library +26 -27
  4. package/src/sap/fe/templates/AnalyticalListPage/Component.js +1 -7
  5. package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.js +1 -4
  6. package/src/sap/fe/templates/ListComponent.js +45 -62
  7. package/src/sap/fe/templates/ListComponent.ts +43 -43
  8. package/src/sap/fe/templates/ListReport/Component.js +11 -19
  9. package/src/sap/fe/templates/ListReport/Component.ts +6 -0
  10. package/src/sap/fe/templates/ListReport/ExtensionAPI.js +11 -37
  11. package/src/sap/fe/templates/ListReport/ExtensionAPI.ts +1 -1
  12. package/src/sap/fe/templates/ListReport/LRMessageStrip.js +196 -0
  13. package/src/sap/fe/templates/ListReport/LRMessageStrip.ts +216 -0
  14. package/src/sap/fe/templates/ListReport/ListReport.view.xml +31 -0
  15. package/src/sap/fe/templates/ListReport/ListReportController.controller.js +140 -247
  16. package/src/sap/fe/templates/ListReport/ListReportController.controller.ts +49 -14
  17. package/src/sap/fe/templates/ListReport/ListReportTemplating.js +2 -7
  18. package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.js +21 -108
  19. package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.js +9 -17
  20. package/src/sap/fe/templates/ListReport/overrides/Share.js +9 -25
  21. package/src/sap/fe/templates/ListReport/overrides/ViewState.js +51 -122
  22. package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.js +1 -23
  23. package/src/sap/fe/templates/ObjectPage/Component.js +19 -40
  24. package/src/sap/fe/templates/ObjectPage/Component.ts +9 -2
  25. package/src/sap/fe/templates/ObjectPage/ExtendPageDefinition.js +64 -0
  26. package/src/sap/fe/templates/ObjectPage/ExtendPageDefinition.ts +80 -0
  27. package/src/sap/fe/templates/ObjectPage/ExtensionAPI.js +21 -58
  28. package/src/sap/fe/templates/ObjectPage/ExtensionAPI.ts +4 -4
  29. package/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +2 -1
  30. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +173 -459
  31. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.ts +13 -18
  32. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.js +129 -208
  33. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.ts +62 -14
  34. package/src/sap/fe/templates/ObjectPage/components/DraftHandlerButton.js +1 -32
  35. package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js +9 -37
  36. package/src/sap/fe/templates/ObjectPage/controls/StashableVBox.js +1 -7
  37. package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.js +9 -31
  38. package/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.js +1 -1
  39. package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime.js +2 -4
  40. package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime.js +1 -1
  41. package/src/sap/fe/templates/ObjectPage/flexibility/ScrollableHeaderContainer.flexibility.js +4 -5
  42. package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.js +4 -4
  43. package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.ts +3 -3
  44. package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.js +4 -4
  45. package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.ts +3 -3
  46. package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.js +16 -21
  47. package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.ts +1 -1
  48. package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.js +19 -1
  49. package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.ts +21 -0
  50. package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.js +1 -1
  51. package/src/sap/fe/templates/ObjectPage/overrides/Paginator.js +4 -5
  52. package/src/sap/fe/templates/ObjectPage/overrides/Share.js +19 -69
  53. package/src/sap/fe/templates/ObjectPage/overrides/Share.ts +1 -1
  54. package/src/sap/fe/templates/ObjectPage/overrides/ViewState.js +5 -20
  55. package/src/sap/fe/templates/ObjectPage/view/fragments/Actions.fragment.xml +6 -6
  56. package/src/sap/fe/templates/ObjectPage/view/fragments/EditableHeaderFacet.fragment.xml +4 -3
  57. package/src/sap/fe/templates/ObjectPage/view/fragments/FooterContent.fragment.xml +3 -3
  58. package/src/sap/fe/templates/ObjectPage/view/fragments/FormActions.fragment.xml +1 -1
  59. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderContent.fragment.xml +1 -1
  60. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderDataPoint.fragment.xml +1 -1
  61. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacet.fragment.xml +4 -3
  62. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacetCustomContainer.fragment.xml +7 -5
  63. package/src/sap/fe/templates/ObjectPage/view/fragments/HeadingAvatar.fragment.xml +1 -1
  64. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderContact.fragment.xml +3 -2
  65. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderForm.fragment.xml +2 -1
  66. package/src/sap/fe/templates/ObjectPage/view/fragments/SideContentCustomContainer.fragment.xml +7 -7
  67. package/src/sap/fe/templates/TableScroller.js +1 -6
  68. package/src/sap/fe/templates/library.js +4 -7
  69. package/src/sap/fe/templates/library.ts +1 -2
  70. package/src/sap/fe/templates/messagebundle.properties +30 -29
  71. package/src/sap/fe/templates/messagebundle_bg.properties +2 -2
  72. package/src/sap/fe/templates/messagebundle_cs.properties +1 -1
  73. package/src/sap/fe/templates/messagebundle_en_US_sappsd.properties +1 -1
  74. package/src/sap/fe/templates/messagebundle_en_US_saprigi.properties +1 -1
  75. package/src/sap/fe/templates/messagebundle_en_US_saptrc.properties +1 -1
  76. package/src/sap/fe/templates/messagebundle_no.properties +3 -3
  77. package/src/sap/fe/templates/messagebundle_sl.properties +7 -7
  78. package/ui5.yaml +0 -1
  79. package/src/sap/fe/templates/Feedback.js +0 -80
  80. package/src/sap/fe/templates/Feedback.ts +0 -64
  81. package/src/sap/fe/templates/ObjectPage/view/fragments/FormActionButtons.fragment.xml +0 -82
  82. package/src/sap/fe/templates/RootContainer/overrides/EditFlow.js +0 -20
  83. package/src/sap/fe/templates/RootContainer/overrides/EditFlow.ts +0 -20
@@ -6,27 +6,18 @@ sap.ui.define(["sap/fe/core/buildingBlocks/BuildingBlock", "sap/fe/core/building
6
6
  "use strict";
7
7
 
8
8
  var _dec, _dec2, _class, _class2, _descriptor, _templateObject;
9
-
10
9
  var _exports = {};
11
10
  var xml = BuildingBlockRuntime.xml;
12
11
  var xmlAttribute = BuildingBlock.xmlAttribute;
13
12
  var defineBuildingBlock = BuildingBlock.defineBuildingBlock;
14
13
  var BuildingBlockBase = BuildingBlock.BuildingBlockBase;
15
-
16
14
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
17
-
18
15
  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 }); }
19
-
20
16
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
21
-
22
17
  function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
23
-
24
18
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
25
-
26
19
  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; }
27
-
28
20
  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.'); }
29
-
30
21
  var MultipleMode = (_dec = defineBuildingBlock({
31
22
  name: "MultipleMode",
32
23
  namespace: "sap.fe.templates.ListReport.view.fragments",
@@ -35,46 +26,33 @@ sap.ui.define(["sap/fe/core/buildingBlocks/BuildingBlock", "sap/fe/core/building
35
26
  type: "sap.ui.model.Context"
36
27
  }), _dec(_class = (_class2 = /*#__PURE__*/function (_BuildingBlockBase) {
37
28
  _inheritsLoose(MultipleMode, _BuildingBlockBase);
38
-
39
29
  function MultipleMode() {
40
30
  var _this;
41
-
42
31
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
43
32
  args[_key] = arguments[_key];
44
33
  }
45
-
46
34
  _this = _BuildingBlockBase.call.apply(_BuildingBlockBase, [this].concat(args)) || this;
47
-
48
35
  _initializerDefineProperty(_this, "converterContext", _descriptor, _assertThisInitialized(_this));
49
-
50
36
  return _this;
51
37
  }
52
-
53
38
  _exports = MultipleMode;
54
39
  var _proto = MultipleMode.prototype;
55
-
56
40
  _proto.getInnerControlsAPI = function getInnerControlsAPI() {
57
41
  var _this$converterContex;
58
-
59
42
  return ((_this$converterContex = this.converterContext) === null || _this$converterContex === void 0 ? void 0 : _this$converterContex.views.reduce(function (innerControls, view) {
60
43
  var innerControlId = view.tableControlId || view.chartControlId;
61
-
62
44
  if (innerControlId) {
63
45
  innerControls.push("".concat(innerControlId, "::").concat(view.tableControlId ? "Table" : "Chart"));
64
46
  }
65
-
66
47
  return innerControls;
67
48
  }, []).join(",")) || "";
68
49
  };
69
-
70
50
  _proto.getTemplate = function getTemplate() {
71
51
  var _this$converterContex2, _this$converterContex3, _this$converterContex4;
72
-
73
52
  return xml(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n\t\t\t<fe:MultipleModeControl\n\t\t\t\txmlns=\"sap.m\"\n\t\t\t\txmlns:fe=\"sap.fe.templates.ListReport.controls\"\n\t\t\t\txmlns:core=\"sap.ui.core\"\n\t\t\t\txmlns:macro=\"sap.fe.macros\"\n\t\t\t\tinnerControls=\"", "\"\n\t\t\t\tfilterControl=\"", "\"\n\t\t\t\tshowCounts=\"", "\"\n\t\t\t\tfreezeContent=\"", "\"\n\t\t\t\tid=\"", "::Control\"\n\t\t\t>\n\t\t\t\t<IconTabBar\n\t\t\t\tcore:require=\"{\n\t\t\t\t\tMULTICONTROL: 'sap/fe/templates/ListReport/controls/MultipleModeControl'\n\t\t\t\t}\"\n\t\t\t\t\texpandable=\"false\"\n\t\t\t\t\theaderMode=\"Inline\"\n\t\t\t\t\tid=\"", "\"\n\t\t\t\t\tstretchContentHeight=\"true\"\n\t\t\t\t\tselect=\"MULTICONTROL.handleTabChange($event)\"\n\t\t\t\t>\n\t\t\t\t\t<items>\n\t\t\t\t\t", "\n\t\t\t\t\t</items>\n\t\t\t\t</IconTabBar>\n\t\t\t</fe:MultipleModeControl>"])), this.getInnerControlsAPI(), this.converterContext.filterBarId, (_this$converterContex2 = this.converterContext.multiViewsControl) === null || _this$converterContex2 === void 0 ? void 0 : _this$converterContex2.showTabCounts, !!this.converterContext.filterBarId, (_this$converterContex3 = this.converterContext.multiViewsControl) === null || _this$converterContex3 === void 0 ? void 0 : _this$converterContex3.id, (_this$converterContex4 = this.converterContext.multiViewsControl) === null || _this$converterContex4 === void 0 ? void 0 : _this$converterContex4.id, this.converterContext.views.map(function (view, viewIdx) {
74
53
  return "<template:with path=\"converterContext>views/".concat(viewIdx, "/\" var=\"view\"\n\t\t\t\t\t\t\t\t\t\ttemplate:require=\"{\n\t\t\t\t\t\t\t\t\t\t\tID: 'sap/fe/core/helpers/StableIdHelper'\n\t\t\t\t\t\t\t\t\t\t}\"\n\t\t\t\t\t\t\t\t\t\txmlns:core=\"sap.ui.core\"\n\t\t\t\t\t\t\t\t\t\txmlns:template=\"http://schemas.sap.com/sapui5/extension/sap.ui.core.template/1\">\n\t\t\t\t\t\t\t\t<template:with path=\"view>presentation\" var=\"presentationContext\">\n\t\t\t\t\t\t\t\t<IconTabFilter\n\t\t\t\t\t\t\t\t\ttext=\"").concat(view.title, "\"\n\t\t\t\t\t\t\t\t\tkey=\"{= ID.generate([${view>tableControlId} || ${view>customTabId} || ${view>chartControlId}])}\"\n\t\t\t\t\t\t\t\t\tvisible=\"{view>visible}\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<content>\n\t\t\t\t\t\t\t\t\t\t<template:if test=\"{= ${view>type} === 'Custom'}\">\n\t\t\t\t\t\t\t\t\t\t\t<template:then>\n\t\t\t\t\t\t\t\t\t\t\t\t<core:Fragment fragmentName=\"sap.fe.templates.ListReport.view.fragments.CustomView\" type=\"XML\" />\n\t\t\t\t\t\t\t\t\t\t\t</template:then>\n\t\t\t\t\t\t\t\t\t\t\t<template:else>\n\t\t\t\t\t\t\t\t\t\t\t\t<MessageStrip\n\t\t\t\t\t\t\t\t\t\t\t\t\ttext=\"{= '{= (${tabsInternal>/' + (${view>tableControlId} || ${view>chartControlId}) + '/notApplicable/title} ) }' }\"\n\t\t\t\t\t\t\t\t\t\t\t\t\ttype=\"Information\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tshowIcon=\"true\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tshowCloseButton=\"true\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tclass=\"sapUiTinyMargin\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tvisible=\"{= '{= (${tabsInternal>/' + (${view>tableControlId} || ${view>chartControlId}) + '/notApplicable/fields} || []).length>0 }' }\"\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t</MessageStrip>\n\t\t\t\t\t\t\t\t\t\t\t\t<core:Fragment fragmentName=\"sap.fe.templates.ListReport.view.fragments.CollectionVisualization\" type=\"XML\" />\n\t\t\t\t\t\t\t\t\t\t\t</template:else>\n\t\t\t\t\t\t\t\t\t\t</template:if>\n\t\t\t\t\t\t\t\t\t</content>\n\t\t\t\t\t\t\t\t</IconTabFilter>\n\t\t\t\t\t\t\t</template:with></template:with>");
75
54
  }).join(""));
76
55
  };
77
-
78
56
  return MultipleMode;
79
57
  }(BuildingBlockBase), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "converterContext", [_dec2], {
80
58
  configurable: true,
@@ -85,4 +63,4 @@ sap.ui.define(["sap/fe/core/buildingBlocks/BuildingBlock", "sap/fe/core/building
85
63
  _exports = MultipleMode;
86
64
  return _exports;
87
65
  }, false);
88
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNdWx0aXBsZU1vZGUiLCJkZWZpbmVCdWlsZGluZ0Jsb2NrIiwibmFtZSIsIm5hbWVzcGFjZSIsImlzT3BlbiIsInhtbEF0dHJpYnV0ZSIsInR5cGUiLCJnZXRJbm5lckNvbnRyb2xzQVBJIiwiY29udmVydGVyQ29udGV4dCIsInZpZXdzIiwicmVkdWNlIiwiaW5uZXJDb250cm9scyIsInZpZXciLCJpbm5lckNvbnRyb2xJZCIsInRhYmxlQ29udHJvbElkIiwiY2hhcnRDb250cm9sSWQiLCJwdXNoIiwiam9pbiIsImdldFRlbXBsYXRlIiwieG1sIiwiZmlsdGVyQmFySWQiLCJtdWx0aVZpZXdzQ29udHJvbCIsInNob3dUYWJDb3VudHMiLCJpZCIsIm1hcCIsInZpZXdJZHgiLCJ0aXRsZSIsIkJ1aWxkaW5nQmxvY2tCYXNlIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJNdWx0aXBsZU1vZGUuZnJhZ21lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnVpbGRpbmdCbG9ja0Jhc2UsIGRlZmluZUJ1aWxkaW5nQmxvY2ssIHhtbEF0dHJpYnV0ZSB9IGZyb20gXCJzYXAvZmUvY29yZS9idWlsZGluZ0Jsb2Nrcy9CdWlsZGluZ0Jsb2NrXCI7XG5pbXBvcnQgeyB4bWwgfSBmcm9tIFwic2FwL2ZlL2NvcmUvYnVpbGRpbmdCbG9ja3MvQnVpbGRpbmdCbG9ja1J1bnRpbWVcIjtcbmltcG9ydCB0eXBlIHtcblx0TGlzdFJlcG9ydERlZmluaXRpb24sXG5cdFNpbmdsZUNoYXJ0Vmlld0RlZmluaXRpb24sXG5cdFNpbmdsZVRhYmxlVmlld0RlZmluaXRpb25cbn0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvdGVtcGxhdGVzL0xpc3RSZXBvcnRDb252ZXJ0ZXJcIjtcblxuQGRlZmluZUJ1aWxkaW5nQmxvY2soeyBuYW1lOiBcIk11bHRpcGxlTW9kZVwiLCBuYW1lc3BhY2U6IFwic2FwLmZlLnRlbXBsYXRlcy5MaXN0UmVwb3J0LnZpZXcuZnJhZ21lbnRzXCIsIGlzT3BlbjogdHJ1ZSB9KVxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTXVsdGlwbGVNb2RlIGV4dGVuZHMgQnVpbGRpbmdCbG9ja0Jhc2Uge1xuXHRAeG1sQXR0cmlidXRlKHsgdHlwZTogXCJzYXAudWkubW9kZWwuQ29udGV4dFwiIH0pXG5cdGNvbnZlcnRlckNvbnRleHQhOiBMaXN0UmVwb3J0RGVmaW5pdGlvbjtcblxuXHRnZXRJbm5lckNvbnRyb2xzQVBJKCkge1xuXHRcdHJldHVybiAoXG5cdFx0XHR0aGlzLmNvbnZlcnRlckNvbnRleHQ/LnZpZXdzXG5cdFx0XHRcdC5yZWR1Y2UoKGlubmVyQ29udHJvbHM6IHN0cmluZ1tdLCB2aWV3KSA9PiB7XG5cdFx0XHRcdFx0Y29uc3QgaW5uZXJDb250cm9sSWQgPVxuXHRcdFx0XHRcdFx0KHZpZXcgYXMgU2luZ2xlVGFibGVWaWV3RGVmaW5pdGlvbikudGFibGVDb250cm9sSWQgfHwgKHZpZXcgYXMgU2luZ2xlQ2hhcnRWaWV3RGVmaW5pdGlvbikuY2hhcnRDb250cm9sSWQ7XG5cdFx0XHRcdFx0aWYgKGlubmVyQ29udHJvbElkKSB7XG5cdFx0XHRcdFx0XHRpbm5lckNvbnRyb2xzLnB1c2goYCR7aW5uZXJDb250cm9sSWR9Ojokeyh2aWV3IGFzIFNpbmdsZVRhYmxlVmlld0RlZmluaXRpb24pLnRhYmxlQ29udHJvbElkID8gXCJUYWJsZVwiIDogXCJDaGFydFwifWApO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXR1cm4gaW5uZXJDb250cm9scztcblx0XHRcdFx0fSwgW10pXG5cdFx0XHRcdC5qb2luKFwiLFwiKSB8fCBcIlwiXG5cdFx0KTtcblx0fVxuXG5cdGdldFRlbXBsYXRlKCkge1xuXHRcdHJldHVybiB4bWxgXG5cdFx0XHQ8ZmU6TXVsdGlwbGVNb2RlQ29udHJvbFxuXHRcdFx0XHR4bWxucz1cInNhcC5tXCJcblx0XHRcdFx0eG1sbnM6ZmU9XCJzYXAuZmUudGVtcGxhdGVzLkxpc3RSZXBvcnQuY29udHJvbHNcIlxuXHRcdFx0XHR4bWxuczpjb3JlPVwic2FwLnVpLmNvcmVcIlxuXHRcdFx0XHR4bWxuczptYWNybz1cInNhcC5mZS5tYWNyb3NcIlxuXHRcdFx0XHRpbm5lckNvbnRyb2xzPVwiJHt0aGlzLmdldElubmVyQ29udHJvbHNBUEkoKX1cIlxuXHRcdFx0XHRmaWx0ZXJDb250cm9sPVwiJHt0aGlzLmNvbnZlcnRlckNvbnRleHQuZmlsdGVyQmFySWR9XCJcblx0XHRcdFx0c2hvd0NvdW50cz1cIiR7dGhpcy5jb252ZXJ0ZXJDb250ZXh0Lm11bHRpVmlld3NDb250cm9sPy5zaG93VGFiQ291bnRzfVwiXG5cdFx0XHRcdGZyZWV6ZUNvbnRlbnQ9XCIkeyEhdGhpcy5jb252ZXJ0ZXJDb250ZXh0LmZpbHRlckJhcklkfVwiXG5cdFx0XHRcdGlkPVwiJHt0aGlzLmNvbnZlcnRlckNvbnRleHQubXVsdGlWaWV3c0NvbnRyb2w/LmlkfTo6Q29udHJvbFwiXG5cdFx0XHQ+XG5cdFx0XHRcdDxJY29uVGFiQmFyXG5cdFx0XHRcdGNvcmU6cmVxdWlyZT1cIntcblx0XHRcdFx0XHRNVUxUSUNPTlRST0w6ICdzYXAvZmUvdGVtcGxhdGVzL0xpc3RSZXBvcnQvY29udHJvbHMvTXVsdGlwbGVNb2RlQ29udHJvbCdcblx0XHRcdFx0fVwiXG5cdFx0XHRcdFx0ZXhwYW5kYWJsZT1cImZhbHNlXCJcblx0XHRcdFx0XHRoZWFkZXJNb2RlPVwiSW5saW5lXCJcblx0XHRcdFx0XHRpZD1cIiR7dGhpcy5jb252ZXJ0ZXJDb250ZXh0Lm11bHRpVmlld3NDb250cm9sPy5pZH1cIlxuXHRcdFx0XHRcdHN0cmV0Y2hDb250ZW50SGVpZ2h0PVwidHJ1ZVwiXG5cdFx0XHRcdFx0c2VsZWN0PVwiTVVMVElDT05UUk9MLmhhbmRsZVRhYkNoYW5nZSgkZXZlbnQpXCJcblx0XHRcdFx0PlxuXHRcdFx0XHRcdDxpdGVtcz5cblx0XHRcdFx0XHQke3RoaXMuY29udmVydGVyQ29udGV4dC52aWV3c1xuXHRcdFx0XHRcdFx0Lm1hcCgodmlldywgdmlld0lkeCkgPT4ge1xuXHRcdFx0XHRcdFx0XHRyZXR1cm4gYDx0ZW1wbGF0ZTp3aXRoIHBhdGg9XCJjb252ZXJ0ZXJDb250ZXh0PnZpZXdzLyR7dmlld0lkeH0vXCIgdmFyPVwidmlld1wiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdHRlbXBsYXRlOnJlcXVpcmU9XCJ7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0SUQ6ICdzYXAvZmUvY29yZS9oZWxwZXJzL1N0YWJsZUlkSGVscGVyJ1xuXHRcdFx0XHRcdFx0XHRcdFx0XHR9XCJcblx0XHRcdFx0XHRcdFx0XHRcdFx0eG1sbnM6Y29yZT1cInNhcC51aS5jb3JlXCJcblx0XHRcdFx0XHRcdFx0XHRcdFx0eG1sbnM6dGVtcGxhdGU9XCJodHRwOi8vc2NoZW1hcy5zYXAuY29tL3NhcHVpNS9leHRlbnNpb24vc2FwLnVpLmNvcmUudGVtcGxhdGUvMVwiPlxuXHRcdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZTp3aXRoIHBhdGg9XCJ2aWV3PnByZXNlbnRhdGlvblwiIHZhcj1cInByZXNlbnRhdGlvbkNvbnRleHRcIj5cblx0XHRcdFx0XHRcdFx0XHQ8SWNvblRhYkZpbHRlclxuXHRcdFx0XHRcdFx0XHRcdFx0dGV4dD1cIiR7dmlldy50aXRsZX1cIlxuXHRcdFx0XHRcdFx0XHRcdFx0a2V5PVwiez0gSUQuZ2VuZXJhdGUoW1xcJHt2aWV3PnRhYmxlQ29udHJvbElkfSB8fCBcXCR7dmlldz5jdXN0b21UYWJJZH0gfHwgXFwke3ZpZXc+Y2hhcnRDb250cm9sSWR9XSl9XCJcblx0XHRcdFx0XHRcdFx0XHRcdHZpc2libGU9XCJ7dmlldz52aXNpYmxlfVwiXG5cdFx0XHRcdFx0XHRcdFx0PlxuXHRcdFx0XHRcdFx0XHRcdFx0PGNvbnRlbnQ+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZTppZiB0ZXN0PVwiez0gXFwke3ZpZXc+dHlwZX0gPT09ICdDdXN0b20nfVwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZTp0aGVuPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGNvcmU6RnJhZ21lbnQgZnJhZ21lbnROYW1lPVwic2FwLmZlLnRlbXBsYXRlcy5MaXN0UmVwb3J0LnZpZXcuZnJhZ21lbnRzLkN1c3RvbVZpZXdcIiB0eXBlPVwiWE1MXCIgLz5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L3RlbXBsYXRlOnRoZW4+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PHRlbXBsYXRlOmVsc2U+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8TWVzc2FnZVN0cmlwXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHRleHQ9XCJ7PSAnez0gKFxcJHt0YWJzSW50ZXJuYWw+LycgKyAoXFwke3ZpZXc+dGFibGVDb250cm9sSWR9IHx8IFxcJHt2aWV3PmNoYXJ0Q29udHJvbElkfSkgKyAnL25vdEFwcGxpY2FibGUvdGl0bGV9ICkgfScgfVwiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHR5cGU9XCJJbmZvcm1hdGlvblwiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHNob3dJY29uPVwidHJ1ZVwiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHNob3dDbG9zZUJ1dHRvbj1cInRydWVcIlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cInNhcFVpVGlueU1hcmdpblwiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHZpc2libGU9XCJ7PSAnez0gKFxcJHt0YWJzSW50ZXJuYWw+LycgKyAoXFwke3ZpZXc+dGFibGVDb250cm9sSWR9IHx8IFxcJHt2aWV3PmNoYXJ0Q29udHJvbElkfSkgKyAnL25vdEFwcGxpY2FibGUvZmllbGRzfSB8fCBbXSkubGVuZ3RoPjAgfScgfVwiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L01lc3NhZ2VTdHJpcD5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxjb3JlOkZyYWdtZW50IGZyYWdtZW50TmFtZT1cInNhcC5mZS50ZW1wbGF0ZXMuTGlzdFJlcG9ydC52aWV3LmZyYWdtZW50cy5Db2xsZWN0aW9uVmlzdWFsaXphdGlvblwiIHR5cGU9XCJYTUxcIiAvPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDwvdGVtcGxhdGU6ZWxzZT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PC90ZW1wbGF0ZTppZj5cblx0XHRcdFx0XHRcdFx0XHRcdDwvY29udGVudD5cblx0XHRcdFx0XHRcdFx0XHQ8L0ljb25UYWJGaWx0ZXI+XG5cdFx0XHRcdFx0XHRcdDwvdGVtcGxhdGU6d2l0aD48L3RlbXBsYXRlOndpdGg+YDtcblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0XHQuam9pbihcIlwiKX1cblx0XHRcdFx0XHQ8L2l0ZW1zPlxuXHRcdFx0XHQ8L0ljb25UYWJCYXI+XG5cdFx0XHQ8L2ZlOk11bHRpcGxlTW9kZUNvbnRyb2w+YDtcblx0fVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQVNxQkEsWSxXQURwQkMsbUJBQW1CLENBQUM7SUFBRUMsSUFBSSxFQUFFLGNBQVI7SUFBd0JDLFNBQVMsRUFBRSw0Q0FBbkM7SUFBaUZDLE1BQU0sRUFBRTtFQUF6RixDQUFELEMsVUFFbEJDLFlBQVksQ0FBQztJQUFFQyxJQUFJLEVBQUU7RUFBUixDQUFELEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1dBR2JDLG1CLEdBQUEsK0JBQXNCO01BQUE7O01BQ3JCLE9BQ0MsK0JBQUtDLGdCQUFMLGdGQUF1QkMsS0FBdkIsQ0FDRUMsTUFERixDQUNTLFVBQUNDLGFBQUQsRUFBMEJDLElBQTFCLEVBQW1DO1FBQzFDLElBQU1DLGNBQWMsR0FDbEJELElBQUQsQ0FBb0NFLGNBQXBDLElBQXVERixJQUFELENBQW9DRyxjQUQzRjs7UUFFQSxJQUFJRixjQUFKLEVBQW9CO1VBQ25CRixhQUFhLENBQUNLLElBQWQsV0FBc0JILGNBQXRCLGVBQTBDRCxJQUFELENBQW9DRSxjQUFwQyxHQUFxRCxPQUFyRCxHQUErRCxPQUF4RztRQUNBOztRQUNELE9BQU9ILGFBQVA7TUFDQSxDQVJGLEVBUUksRUFSSixFQVNFTSxJQVRGLENBU08sR0FUUCxNQVNlLEVBVmhCO0lBWUEsQzs7V0FFREMsVyxHQUFBLHVCQUFjO01BQUE7O01BQ2IsT0FBT0MsR0FBUCw4MkJBTW1CLEtBQUtaLG1CQUFMLEVBTm5CLEVBT21CLEtBQUtDLGdCQUFMLENBQXNCWSxXQVB6Qyw0QkFRZ0IsS0FBS1osZ0JBQUwsQ0FBc0JhLGlCQVJ0QywyREFRZ0IsdUJBQXlDQyxhQVJ6RCxFQVNtQixDQUFDLENBQUMsS0FBS2QsZ0JBQUwsQ0FBc0JZLFdBVDNDLDRCQVVRLEtBQUtaLGdCQUFMLENBQXNCYSxpQkFWOUIsMkRBVVEsdUJBQXlDRSxFQVZqRCw0QkFrQlMsS0FBS2YsZ0JBQUwsQ0FBc0JhLGlCQWxCL0IsMkRBa0JTLHVCQUF5Q0UsRUFsQmxELEVBdUJLLEtBQUtmLGdCQUFMLENBQXNCQyxLQUF0QixDQUNBZSxHQURBLENBQ0ksVUFBQ1osSUFBRCxFQUFPYSxPQUFQLEVBQW1CO1FBQ3ZCLDhEQUFzREEsT0FBdEQsMmNBUVViLElBQUksQ0FBQ2MsS0FSZjtNQWlDQSxDQW5DQSxFQW9DQVQsSUFwQ0EsQ0FvQ0ssRUFwQ0wsQ0F2Qkw7SUErREEsQzs7O0lBbkZ3Q1UsaUIifQ==
66
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNdWx0aXBsZU1vZGUiLCJkZWZpbmVCdWlsZGluZ0Jsb2NrIiwibmFtZSIsIm5hbWVzcGFjZSIsImlzT3BlbiIsInhtbEF0dHJpYnV0ZSIsInR5cGUiLCJnZXRJbm5lckNvbnRyb2xzQVBJIiwiY29udmVydGVyQ29udGV4dCIsInZpZXdzIiwicmVkdWNlIiwiaW5uZXJDb250cm9scyIsInZpZXciLCJpbm5lckNvbnRyb2xJZCIsInRhYmxlQ29udHJvbElkIiwiY2hhcnRDb250cm9sSWQiLCJwdXNoIiwiam9pbiIsImdldFRlbXBsYXRlIiwieG1sIiwiZmlsdGVyQmFySWQiLCJtdWx0aVZpZXdzQ29udHJvbCIsInNob3dUYWJDb3VudHMiLCJpZCIsIm1hcCIsInZpZXdJZHgiLCJ0aXRsZSIsIkJ1aWxkaW5nQmxvY2tCYXNlIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJNdWx0aXBsZU1vZGUuZnJhZ21lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnVpbGRpbmdCbG9ja0Jhc2UsIGRlZmluZUJ1aWxkaW5nQmxvY2ssIHhtbEF0dHJpYnV0ZSB9IGZyb20gXCJzYXAvZmUvY29yZS9idWlsZGluZ0Jsb2Nrcy9CdWlsZGluZ0Jsb2NrXCI7XG5pbXBvcnQgeyB4bWwgfSBmcm9tIFwic2FwL2ZlL2NvcmUvYnVpbGRpbmdCbG9ja3MvQnVpbGRpbmdCbG9ja1J1bnRpbWVcIjtcbmltcG9ydCB0eXBlIHtcblx0TGlzdFJlcG9ydERlZmluaXRpb24sXG5cdFNpbmdsZUNoYXJ0Vmlld0RlZmluaXRpb24sXG5cdFNpbmdsZVRhYmxlVmlld0RlZmluaXRpb25cbn0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvdGVtcGxhdGVzL0xpc3RSZXBvcnRDb252ZXJ0ZXJcIjtcblxuQGRlZmluZUJ1aWxkaW5nQmxvY2soeyBuYW1lOiBcIk11bHRpcGxlTW9kZVwiLCBuYW1lc3BhY2U6IFwic2FwLmZlLnRlbXBsYXRlcy5MaXN0UmVwb3J0LnZpZXcuZnJhZ21lbnRzXCIsIGlzT3BlbjogdHJ1ZSB9KVxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTXVsdGlwbGVNb2RlIGV4dGVuZHMgQnVpbGRpbmdCbG9ja0Jhc2Uge1xuXHRAeG1sQXR0cmlidXRlKHsgdHlwZTogXCJzYXAudWkubW9kZWwuQ29udGV4dFwiIH0pXG5cdGNvbnZlcnRlckNvbnRleHQhOiBMaXN0UmVwb3J0RGVmaW5pdGlvbjtcblxuXHRnZXRJbm5lckNvbnRyb2xzQVBJKCkge1xuXHRcdHJldHVybiAoXG5cdFx0XHR0aGlzLmNvbnZlcnRlckNvbnRleHQ/LnZpZXdzXG5cdFx0XHRcdC5yZWR1Y2UoKGlubmVyQ29udHJvbHM6IHN0cmluZ1tdLCB2aWV3KSA9PiB7XG5cdFx0XHRcdFx0Y29uc3QgaW5uZXJDb250cm9sSWQgPVxuXHRcdFx0XHRcdFx0KHZpZXcgYXMgU2luZ2xlVGFibGVWaWV3RGVmaW5pdGlvbikudGFibGVDb250cm9sSWQgfHwgKHZpZXcgYXMgU2luZ2xlQ2hhcnRWaWV3RGVmaW5pdGlvbikuY2hhcnRDb250cm9sSWQ7XG5cdFx0XHRcdFx0aWYgKGlubmVyQ29udHJvbElkKSB7XG5cdFx0XHRcdFx0XHRpbm5lckNvbnRyb2xzLnB1c2goYCR7aW5uZXJDb250cm9sSWR9Ojokeyh2aWV3IGFzIFNpbmdsZVRhYmxlVmlld0RlZmluaXRpb24pLnRhYmxlQ29udHJvbElkID8gXCJUYWJsZVwiIDogXCJDaGFydFwifWApO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXR1cm4gaW5uZXJDb250cm9scztcblx0XHRcdFx0fSwgW10pXG5cdFx0XHRcdC5qb2luKFwiLFwiKSB8fCBcIlwiXG5cdFx0KTtcblx0fVxuXG5cdGdldFRlbXBsYXRlKCkge1xuXHRcdHJldHVybiB4bWxgXG5cdFx0XHQ8ZmU6TXVsdGlwbGVNb2RlQ29udHJvbFxuXHRcdFx0XHR4bWxucz1cInNhcC5tXCJcblx0XHRcdFx0eG1sbnM6ZmU9XCJzYXAuZmUudGVtcGxhdGVzLkxpc3RSZXBvcnQuY29udHJvbHNcIlxuXHRcdFx0XHR4bWxuczpjb3JlPVwic2FwLnVpLmNvcmVcIlxuXHRcdFx0XHR4bWxuczptYWNybz1cInNhcC5mZS5tYWNyb3NcIlxuXHRcdFx0XHRpbm5lckNvbnRyb2xzPVwiJHt0aGlzLmdldElubmVyQ29udHJvbHNBUEkoKX1cIlxuXHRcdFx0XHRmaWx0ZXJDb250cm9sPVwiJHt0aGlzLmNvbnZlcnRlckNvbnRleHQuZmlsdGVyQmFySWR9XCJcblx0XHRcdFx0c2hvd0NvdW50cz1cIiR7dGhpcy5jb252ZXJ0ZXJDb250ZXh0Lm11bHRpVmlld3NDb250cm9sPy5zaG93VGFiQ291bnRzfVwiXG5cdFx0XHRcdGZyZWV6ZUNvbnRlbnQ9XCIkeyEhdGhpcy5jb252ZXJ0ZXJDb250ZXh0LmZpbHRlckJhcklkfVwiXG5cdFx0XHRcdGlkPVwiJHt0aGlzLmNvbnZlcnRlckNvbnRleHQubXVsdGlWaWV3c0NvbnRyb2w/LmlkfTo6Q29udHJvbFwiXG5cdFx0XHQ+XG5cdFx0XHRcdDxJY29uVGFiQmFyXG5cdFx0XHRcdGNvcmU6cmVxdWlyZT1cIntcblx0XHRcdFx0XHRNVUxUSUNPTlRST0w6ICdzYXAvZmUvdGVtcGxhdGVzL0xpc3RSZXBvcnQvY29udHJvbHMvTXVsdGlwbGVNb2RlQ29udHJvbCdcblx0XHRcdFx0fVwiXG5cdFx0XHRcdFx0ZXhwYW5kYWJsZT1cImZhbHNlXCJcblx0XHRcdFx0XHRoZWFkZXJNb2RlPVwiSW5saW5lXCJcblx0XHRcdFx0XHRpZD1cIiR7dGhpcy5jb252ZXJ0ZXJDb250ZXh0Lm11bHRpVmlld3NDb250cm9sPy5pZH1cIlxuXHRcdFx0XHRcdHN0cmV0Y2hDb250ZW50SGVpZ2h0PVwidHJ1ZVwiXG5cdFx0XHRcdFx0c2VsZWN0PVwiTVVMVElDT05UUk9MLmhhbmRsZVRhYkNoYW5nZSgkZXZlbnQpXCJcblx0XHRcdFx0PlxuXHRcdFx0XHRcdDxpdGVtcz5cblx0XHRcdFx0XHQke3RoaXMuY29udmVydGVyQ29udGV4dC52aWV3c1xuXHRcdFx0XHRcdFx0Lm1hcCgodmlldywgdmlld0lkeCkgPT4ge1xuXHRcdFx0XHRcdFx0XHRyZXR1cm4gYDx0ZW1wbGF0ZTp3aXRoIHBhdGg9XCJjb252ZXJ0ZXJDb250ZXh0PnZpZXdzLyR7dmlld0lkeH0vXCIgdmFyPVwidmlld1wiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdHRlbXBsYXRlOnJlcXVpcmU9XCJ7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0SUQ6ICdzYXAvZmUvY29yZS9oZWxwZXJzL1N0YWJsZUlkSGVscGVyJ1xuXHRcdFx0XHRcdFx0XHRcdFx0XHR9XCJcblx0XHRcdFx0XHRcdFx0XHRcdFx0eG1sbnM6Y29yZT1cInNhcC51aS5jb3JlXCJcblx0XHRcdFx0XHRcdFx0XHRcdFx0eG1sbnM6dGVtcGxhdGU9XCJodHRwOi8vc2NoZW1hcy5zYXAuY29tL3NhcHVpNS9leHRlbnNpb24vc2FwLnVpLmNvcmUudGVtcGxhdGUvMVwiPlxuXHRcdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZTp3aXRoIHBhdGg9XCJ2aWV3PnByZXNlbnRhdGlvblwiIHZhcj1cInByZXNlbnRhdGlvbkNvbnRleHRcIj5cblx0XHRcdFx0XHRcdFx0XHQ8SWNvblRhYkZpbHRlclxuXHRcdFx0XHRcdFx0XHRcdFx0dGV4dD1cIiR7dmlldy50aXRsZX1cIlxuXHRcdFx0XHRcdFx0XHRcdFx0a2V5PVwiez0gSUQuZ2VuZXJhdGUoW1xcJHt2aWV3PnRhYmxlQ29udHJvbElkfSB8fCBcXCR7dmlldz5jdXN0b21UYWJJZH0gfHwgXFwke3ZpZXc+Y2hhcnRDb250cm9sSWR9XSl9XCJcblx0XHRcdFx0XHRcdFx0XHRcdHZpc2libGU9XCJ7dmlldz52aXNpYmxlfVwiXG5cdFx0XHRcdFx0XHRcdFx0PlxuXHRcdFx0XHRcdFx0XHRcdFx0PGNvbnRlbnQ+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZTppZiB0ZXN0PVwiez0gXFwke3ZpZXc+dHlwZX0gPT09ICdDdXN0b20nfVwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZTp0aGVuPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGNvcmU6RnJhZ21lbnQgZnJhZ21lbnROYW1lPVwic2FwLmZlLnRlbXBsYXRlcy5MaXN0UmVwb3J0LnZpZXcuZnJhZ21lbnRzLkN1c3RvbVZpZXdcIiB0eXBlPVwiWE1MXCIgLz5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L3RlbXBsYXRlOnRoZW4+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PHRlbXBsYXRlOmVsc2U+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8TWVzc2FnZVN0cmlwXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHRleHQ9XCJ7PSAnez0gKFxcJHt0YWJzSW50ZXJuYWw+LycgKyAoXFwke3ZpZXc+dGFibGVDb250cm9sSWR9IHx8IFxcJHt2aWV3PmNoYXJ0Q29udHJvbElkfSkgKyAnL25vdEFwcGxpY2FibGUvdGl0bGV9ICkgfScgfVwiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHR5cGU9XCJJbmZvcm1hdGlvblwiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHNob3dJY29uPVwidHJ1ZVwiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHNob3dDbG9zZUJ1dHRvbj1cInRydWVcIlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cInNhcFVpVGlueU1hcmdpblwiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHZpc2libGU9XCJ7PSAnez0gKFxcJHt0YWJzSW50ZXJuYWw+LycgKyAoXFwke3ZpZXc+dGFibGVDb250cm9sSWR9IHx8IFxcJHt2aWV3PmNoYXJ0Q29udHJvbElkfSkgKyAnL25vdEFwcGxpY2FibGUvZmllbGRzfSB8fCBbXSkubGVuZ3RoPjAgfScgfVwiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L01lc3NhZ2VTdHJpcD5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxjb3JlOkZyYWdtZW50IGZyYWdtZW50TmFtZT1cInNhcC5mZS50ZW1wbGF0ZXMuTGlzdFJlcG9ydC52aWV3LmZyYWdtZW50cy5Db2xsZWN0aW9uVmlzdWFsaXphdGlvblwiIHR5cGU9XCJYTUxcIiAvPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDwvdGVtcGxhdGU6ZWxzZT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PC90ZW1wbGF0ZTppZj5cblx0XHRcdFx0XHRcdFx0XHRcdDwvY29udGVudD5cblx0XHRcdFx0XHRcdFx0XHQ8L0ljb25UYWJGaWx0ZXI+XG5cdFx0XHRcdFx0XHRcdDwvdGVtcGxhdGU6d2l0aD48L3RlbXBsYXRlOndpdGg+YDtcblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0XHQuam9pbihcIlwiKX1cblx0XHRcdFx0XHQ8L2l0ZW1zPlxuXHRcdFx0XHQ8L0ljb25UYWJCYXI+XG5cdFx0XHQ8L2ZlOk11bHRpcGxlTW9kZUNvbnRyb2w+YDtcblx0fVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztNQVNxQkEsWUFBWSxXQURoQ0MsbUJBQW1CLENBQUM7SUFBRUMsSUFBSSxFQUFFLGNBQWM7SUFBRUMsU0FBUyxFQUFFLDRDQUE0QztJQUFFQyxNQUFNLEVBQUU7RUFBSyxDQUFDLENBQUMsVUFFbkhDLFlBQVksQ0FBQztJQUFFQyxJQUFJLEVBQUU7RUFBdUIsQ0FBQyxDQUFDO0lBQUE7SUFBQTtNQUFBO01BQUE7UUFBQTtNQUFBO01BQUE7TUFBQTtNQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUEsT0FHL0NDLG1CQUFtQixHQUFuQiwrQkFBc0I7TUFBQTtNQUNyQixPQUNDLDhCQUFJLENBQUNDLGdCQUFnQiwwREFBckIsc0JBQXVCQyxLQUFLLENBQzFCQyxNQUFNLENBQUMsVUFBQ0MsYUFBdUIsRUFBRUMsSUFBSSxFQUFLO1FBQzFDLElBQU1DLGNBQWMsR0FDbEJELElBQUksQ0FBK0JFLGNBQWMsSUFBS0YsSUFBSSxDQUErQkcsY0FBYztRQUN6RyxJQUFJRixjQUFjLEVBQUU7VUFDbkJGLGFBQWEsQ0FBQ0ssSUFBSSxXQUFJSCxjQUFjLGVBQU1ELElBQUksQ0FBK0JFLGNBQWMsR0FBRyxPQUFPLEdBQUcsT0FBTyxFQUFHO1FBQ25IO1FBQ0EsT0FBT0gsYUFBYTtNQUNyQixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQ0xNLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSSxFQUFFO0lBRW5CLENBQUM7SUFBQSxPQUVEQyxXQUFXLEdBQVgsdUJBQWM7TUFBQTtNQUNiLE9BQU9DLEdBQUcsODJCQU1TLElBQUksQ0FBQ1osbUJBQW1CLEVBQUUsRUFDMUIsSUFBSSxDQUFDQyxnQkFBZ0IsQ0FBQ1ksV0FBVyw0QkFDcEMsSUFBSSxDQUFDWixnQkFBZ0IsQ0FBQ2EsaUJBQWlCLDJEQUF2Qyx1QkFBeUNDLGFBQWEsRUFDbkQsQ0FBQyxDQUFDLElBQUksQ0FBQ2QsZ0JBQWdCLENBQUNZLFdBQVcsNEJBQzlDLElBQUksQ0FBQ1osZ0JBQWdCLENBQUNhLGlCQUFpQiwyREFBdkMsdUJBQXlDRSxFQUFFLDRCQVExQyxJQUFJLENBQUNmLGdCQUFnQixDQUFDYSxpQkFBaUIsMkRBQXZDLHVCQUF5Q0UsRUFBRSxFQUsvQyxJQUFJLENBQUNmLGdCQUFnQixDQUFDQyxLQUFLLENBQzNCZSxHQUFHLENBQUMsVUFBQ1osSUFBSSxFQUFFYSxPQUFPLEVBQUs7UUFDdkIsOERBQXNEQSxPQUFPLDJjQVFuRGIsSUFBSSxDQUFDYyxLQUFLO01BeUJyQixDQUFDLENBQUMsQ0FDRFQsSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUlkLENBQUM7SUFBQTtFQUFBLEVBbkZ3Q1UsaUJBQWlCO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQSJ9
@@ -2,28 +2,21 @@
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
3
  * (c) Copyright 2009-2021 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/library", "sap/fe/core/TemplateComponent", "sap/fe/templates/library", "sap/ui/model/odata/v4/ODataListBinding"], function (Log, CommonUtils, ClassSupport, CoreLibrary, TemplateComponent, templateLib, ODataListBinding) {
5
+ sap.ui.define(["sap/base/Log", "sap/fe/core/CommonUtils", "sap/fe/core/helpers/ClassSupport", "sap/fe/core/library", "sap/fe/core/TemplateComponent", "sap/fe/templates/library", "sap/fe/templates/ObjectPage/ExtendPageDefinition", "sap/ui/model/odata/v4/ODataListBinding"], function (Log, CommonUtils, ClassSupport, CoreLibrary, TemplateComponent, templateLib, ExtendPageDefinition, ODataListBinding) {
6
6
  "use strict";
7
7
 
8
8
  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7;
9
-
9
+ var extendObjectPageDefinition = ExtendPageDefinition.extendObjectPageDefinition;
10
10
  var property = ClassSupport.property;
11
11
  var defineUI5Class = ClassSupport.defineUI5Class;
12
-
13
12
  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }
14
-
15
13
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
16
-
17
14
  function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
18
-
19
15
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
20
-
21
16
  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }
22
-
23
17
  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }
24
-
25
18
  var VariantManagement = CoreLibrary.VariantManagement,
26
- CreationMode = CoreLibrary.CreationMode;
19
+ CreationMode = CoreLibrary.CreationMode;
27
20
  var SectionLayout = templateLib.ObjectPage.SectionLayout;
28
21
  var ObjectPageComponent = (_dec = defineUI5Class("sap.fe.templates.ObjectPage.Component", {
29
22
  library: "sap.fe.templates",
@@ -49,66 +42,54 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/CommonUtils", "sap/fe/core/helpers/C
49
42
  type: "object"
50
43
  }), _dec(_class = (_class2 = /*#__PURE__*/function (_TemplateComponent) {
51
44
  _inheritsLoose(ObjectPageComponent, _TemplateComponent);
52
-
53
45
  function ObjectPageComponent() {
54
46
  var _this;
55
-
56
47
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
57
48
  args[_key] = arguments[_key];
58
49
  }
59
-
60
50
  _this = _TemplateComponent.call.apply(_TemplateComponent, [this].concat(args)) || this;
61
-
62
51
  _initializerDefineProperty(_this, "variantManagement", _descriptor, _assertThisInitialized(_this));
63
-
64
52
  _initializerDefineProperty(_this, "sectionLayout", _descriptor2, _assertThisInitialized(_this));
65
-
66
53
  _initializerDefineProperty(_this, "showRelatedApps", _descriptor3, _assertThisInitialized(_this));
67
-
68
54
  _initializerDefineProperty(_this, "additionalSemanticObjects", _descriptor4, _assertThisInitialized(_this));
69
-
70
55
  _initializerDefineProperty(_this, "editableHeaderContent", _descriptor5, _assertThisInitialized(_this));
71
-
72
56
  _initializerDefineProperty(_this, "showBreadCrumbs", _descriptor6, _assertThisInitialized(_this));
73
-
74
57
  _initializerDefineProperty(_this, "inboundParameters", _descriptor7, _assertThisInitialized(_this));
75
-
76
58
  _this.DeferredContextCreated = false;
77
59
  return _this;
78
60
  }
79
-
80
61
  var _proto = ObjectPageComponent.prototype;
81
-
82
62
  _proto.isContextExpected = function isContextExpected() {
83
63
  return true;
84
- } // TODO: this should be ideally be handled by the editflow/routing without the need to have this method in the
64
+ };
65
+ _proto.extendPageDefinition = function extendPageDefinition(pageDefinition, converterContext) {
66
+ return extendObjectPageDefinition(pageDefinition, converterContext);
67
+ }
68
+
69
+ // TODO: this should be ideally be handled by the editflow/routing without the need to have this method in the
85
70
  // object page - for now keep it here
86
71
  ;
87
-
88
72
  _proto.createDeferredContext = function createDeferredContext(sPath, oListBinding, bActionCreate) {
89
73
  var _this2 = this;
90
-
91
74
  if (!this.DeferredContextCreated) {
92
75
  this.DeferredContextCreated = true;
93
76
  var oParameters = {
94
- "$$groupId": "$auto.Heroes",
95
- "$$updateGroupId": "$auto"
96
- }; // In fullscreen mode, we recreate the list binding, as we don't want to have synchronization between views
77
+ $$groupId: "$auto.Heroes",
78
+ $$updateGroupId: "$auto"
79
+ };
80
+ // In fullscreen mode, we recreate the list binding, as we don't want to have synchronization between views
97
81
  // (it causes errors, e.g. pending changes due to creationRow)
98
-
99
82
  if (!oListBinding || oListBinding.isRelative() === false && !this.oAppComponent.getRootViewController().isFclEnabled()) {
100
83
  oListBinding = new ODataListBinding(this.getModel(), sPath.replace("(...)", ""), undefined, undefined, undefined, oParameters);
101
84
  }
102
-
103
85
  var oStartUpParams = this.oAppComponent && this.oAppComponent.getComponentData() && this.oAppComponent.getComponentData().startupParameters,
104
- oInboundParameters = this.getViewData().inboundParameters;
86
+ oInboundParameters = this.getViewData().inboundParameters;
105
87
  var createParams;
106
-
107
88
  if (oStartUpParams && oStartUpParams.preferredMode && oStartUpParams.preferredMode[0].indexOf("create") !== -1) {
108
89
  createParams = CommonUtils.getAdditionalParamsForCreate(oStartUpParams, oInboundParameters);
109
- } // for now wait until the view and the controller is created
110
-
90
+ }
111
91
 
92
+ // for now wait until the view and the controller is created
112
93
  this.getRootControl().getController().editFlow.createDocument(oListBinding, {
113
94
  creationMode: CreationMode.Sync,
114
95
  createAction: bActionCreate,
@@ -116,20 +97,18 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/CommonUtils", "sap/fe/core/helpers/C
116
97
  bFromDeferred: true
117
98
  }).finally(function () {
118
99
  _this2.DeferredContextCreated = false;
119
- }).catch(function () {// Do Nothing ?
100
+ }).catch(function () {
101
+ // Do Nothing ?
120
102
  });
121
103
  }
122
104
  };
123
-
124
105
  _proto.setVariantManagement = function setVariantManagement(sVariantManagement) {
125
106
  if (sVariantManagement === VariantManagement.Page) {
126
107
  Log.error("ObjectPage does not support Page-level variant management yet");
127
108
  sVariantManagement = VariantManagement.None;
128
109
  }
129
-
130
110
  this.setProperty("variantManagement", sVariantManagement);
131
111
  };
132
-
133
112
  return ObjectPageComponent;
134
113
  }(TemplateComponent), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "variantManagement", [_dec2], {
135
114
  configurable: true,
@@ -169,4 +148,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/CommonUtils", "sap/fe/core/helpers/C
169
148
  })), _class2)) || _class);
170
149
  return ObjectPageComponent;
171
150
  }, false);
172
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYXJpYW50TWFuYWdlbWVudCIsIkNvcmVMaWJyYXJ5IiwiQ3JlYXRpb25Nb2RlIiwiU2VjdGlvbkxheW91dCIsInRlbXBsYXRlTGliIiwiT2JqZWN0UGFnZSIsIk9iamVjdFBhZ2VDb21wb25lbnQiLCJkZWZpbmVVSTVDbGFzcyIsImxpYnJhcnkiLCJtYW5pZmVzdCIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsIkNvbnRyb2wiLCJQYWdlIiwiRGVmZXJyZWRDb250ZXh0Q3JlYXRlZCIsImlzQ29udGV4dEV4cGVjdGVkIiwiY3JlYXRlRGVmZXJyZWRDb250ZXh0Iiwic1BhdGgiLCJvTGlzdEJpbmRpbmciLCJiQWN0aW9uQ3JlYXRlIiwib1BhcmFtZXRlcnMiLCJpc1JlbGF0aXZlIiwib0FwcENvbXBvbmVudCIsImdldFJvb3RWaWV3Q29udHJvbGxlciIsImlzRmNsRW5hYmxlZCIsIk9EYXRhTGlzdEJpbmRpbmciLCJnZXRNb2RlbCIsInJlcGxhY2UiLCJ1bmRlZmluZWQiLCJvU3RhcnRVcFBhcmFtcyIsImdldENvbXBvbmVudERhdGEiLCJzdGFydHVwUGFyYW1ldGVycyIsIm9JbmJvdW5kUGFyYW1ldGVycyIsImdldFZpZXdEYXRhIiwiaW5ib3VuZFBhcmFtZXRlcnMiLCJjcmVhdGVQYXJhbXMiLCJwcmVmZXJyZWRNb2RlIiwiaW5kZXhPZiIsIkNvbW1vblV0aWxzIiwiZ2V0QWRkaXRpb25hbFBhcmFtc0ZvckNyZWF0ZSIsImdldFJvb3RDb250cm9sIiwiZ2V0Q29udHJvbGxlciIsImVkaXRGbG93IiwiY3JlYXRlRG9jdW1lbnQiLCJjcmVhdGlvbk1vZGUiLCJTeW5jIiwiY3JlYXRlQWN0aW9uIiwiZGF0YSIsImJGcm9tRGVmZXJyZWQiLCJmaW5hbGx5IiwiY2F0Y2giLCJzZXRWYXJpYW50TWFuYWdlbWVudCIsInNWYXJpYW50TWFuYWdlbWVudCIsIkxvZyIsImVycm9yIiwiTm9uZSIsInNldFByb3BlcnR5IiwiVGVtcGxhdGVDb21wb25lbnQiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIkNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBDb21tb25VdGlscywgeyBJbmJvdW5kUGFyYW1ldGVyIH0gZnJvbSBcInNhcC9mZS9jb3JlL0NvbW1vblV0aWxzXCI7XG5pbXBvcnQgeyBkZWZpbmVVSTVDbGFzcywgcHJvcGVydHkgfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCBDb3JlTGlicmFyeSBmcm9tIFwic2FwL2ZlL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IFRlbXBsYXRlQ29tcG9uZW50IGZyb20gXCJzYXAvZmUvY29yZS9UZW1wbGF0ZUNvbXBvbmVudFwiO1xuaW1wb3J0IHRlbXBsYXRlTGliIGZyb20gXCJzYXAvZmUvdGVtcGxhdGVzL2xpYnJhcnlcIjtcbmltcG9ydCBPRGF0YUxpc3RCaW5kaW5nIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFMaXN0QmluZGluZ1wiO1xuXG5jb25zdCBWYXJpYW50TWFuYWdlbWVudCA9IENvcmVMaWJyYXJ5LlZhcmlhbnRNYW5hZ2VtZW50LFxuXHRDcmVhdGlvbk1vZGUgPSBDb3JlTGlicmFyeS5DcmVhdGlvbk1vZGU7XG5jb25zdCBTZWN0aW9uTGF5b3V0ID0gdGVtcGxhdGVMaWIuT2JqZWN0UGFnZS5TZWN0aW9uTGF5b3V0O1xuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLnRlbXBsYXRlcy5PYmplY3RQYWdlLkNvbXBvbmVudFwiLCB7IGxpYnJhcnk6IFwic2FwLmZlLnRlbXBsYXRlc1wiLCBtYW5pZmVzdDogXCJqc29uXCIgfSlcbmNsYXNzIE9iamVjdFBhZ2VDb21wb25lbnQgZXh0ZW5kcyBUZW1wbGF0ZUNvbXBvbmVudCB7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIGlmIGFuZCBvbiB3aGljaCBsZXZlbCB2YXJpYW50cyBjYW4gYmUgY29uZmlndXJlZDpcblx0ICogXHRcdE5vbmU6IG5vIHZhcmlhbnQgY29uZmlndXJhdGlvbiBhdCBhbGxcblx0ICogXHRcdFBhZ2U6IG9uZSB2YXJpYW50IGNvbmZpZ3VyYXRpb24gZm9yIHRoZSB3aG9sZSBwYWdlXG5cdCAqIFx0XHRDb250cm9sOiB2YXJpYW50IGNvbmZpZ3VyYXRpb24gb24gY29udHJvbCBsZXZlbFxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcInNhcC5mZS5jb3JlLlZhcmlhbnRNYW5hZ2VtZW50XCIsXG5cdFx0ZGVmYXVsdFZhbHVlOiBWYXJpYW50TWFuYWdlbWVudC5Db250cm9sXG5cdH0pXG5cdHZhcmlhbnRNYW5hZ2VtZW50OiB0eXBlb2YgVmFyaWFudE1hbmFnZW1lbnQ7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIGhvdyB0aGUgc2VjdGlvbnMgYXJlIHJlbmRlcmVkXG5cdCAqIFx0XHRQYWdlOiBhbGwgc2VjdGlvbnMgYXJlIHNob3duIG9uIG9uZSBwYWdlXG5cdCAqIFx0XHRUYWJzOiBlYWNoIHRvcC1sZXZlbCBzZWN0aW9uIGlzIHNob3duIGluIGFuIG93biB0YWJcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzYXAuZmUudGVtcGxhdGVzLk9iamVjdFBhZ2UuU2VjdGlvbkxheW91dFwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogU2VjdGlvbkxheW91dC5QYWdlXG5cdH0pXG5cdHNlY3Rpb25MYXlvdXQ6IHR5cGVvZiBTZWN0aW9uTGF5b3V0O1xuXHQvKipcblx0ICogRW5hYmxlcyB0aGUgcmVsYXRlZCBhcHBzIGZlYXR1cmVzXG5cdCAqL1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYm9vbGVhblwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogZmFsc2Vcblx0fSlcblx0c2hvd1JlbGF0ZWRBcHBzITogYm9vbGVhbjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcIm9iamVjdFwiIH0pXG5cdGFkZGl0aW9uYWxTZW1hbnRpY09iamVjdHM6IGFueTtcblx0LyoqXG5cdCAqIEVuYWJsZXMgdGhlIGVkaXRhYmxlIG9iamVjdCBwYWdlIGhlYWRlclxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIixcblx0XHRkZWZhdWx0VmFsdWU6IHRydWVcblx0fSlcblx0ZWRpdGFibGVIZWFkZXJDb250ZW50ITogYm9vbGVhbjtcblx0LyoqXG5cdCAqIEVuYWJsZXMgdGhlIEJyZWFkQ3J1bWJzIGZlYXR1cmVzXG5cdCAqL1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYm9vbGVhblwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogdHJ1ZVxuXHR9KVxuXHRzaG93QnJlYWRDcnVtYnMhOiBib29sZWFuO1xuXHQvKipcblx0ICogRGVmaW5lcyB0aGUgcHJvcGVydGllcyB3aGljaCBjYW4gYmUgdXNlZCBmb3IgaW5ib3VuZCBOYXZpZ2F0aW9uXG5cdCAqL1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwib2JqZWN0XCJcblx0fSlcblx0aW5ib3VuZFBhcmFtZXRlcnM6IGFueTtcblx0cHJpdmF0ZSBEZWZlcnJlZENvbnRleHRDcmVhdGVkOiBCb29sZWFuID0gZmFsc2U7XG5cblx0aXNDb250ZXh0RXhwZWN0ZWQoKSB7XG5cdFx0cmV0dXJuIHRydWU7XG5cdH1cblxuXHQvLyBUT0RPOiB0aGlzIHNob3VsZCBiZSBpZGVhbGx5IGJlIGhhbmRsZWQgYnkgdGhlIGVkaXRmbG93L3JvdXRpbmcgd2l0aG91dCB0aGUgbmVlZCB0byBoYXZlIHRoaXMgbWV0aG9kIGluIHRoZVxuXHQvLyBvYmplY3QgcGFnZSAtIGZvciBub3cga2VlcCBpdCBoZXJlXG5cdGNyZWF0ZURlZmVycmVkQ29udGV4dChzUGF0aDogYW55LCBvTGlzdEJpbmRpbmc6IGFueSwgYkFjdGlvbkNyZWF0ZTogYW55KSB7XG5cdFx0aWYgKCF0aGlzLkRlZmVycmVkQ29udGV4dENyZWF0ZWQpIHtcblx0XHRcdHRoaXMuRGVmZXJyZWRDb250ZXh0Q3JlYXRlZCA9IHRydWU7XG5cdFx0XHRjb25zdCBvUGFyYW1ldGVycyA9IHtcblx0XHRcdFx0XCIkJGdyb3VwSWRcIjogXCIkYXV0by5IZXJvZXNcIixcblx0XHRcdFx0XCIkJHVwZGF0ZUdyb3VwSWRcIjogXCIkYXV0b1wiXG5cdFx0XHR9O1xuXHRcdFx0Ly8gSW4gZnVsbHNjcmVlbiBtb2RlLCB3ZSByZWNyZWF0ZSB0aGUgbGlzdCBiaW5kaW5nLCBhcyB3ZSBkb24ndCB3YW50IHRvIGhhdmUgc3luY2hyb25pemF0aW9uIGJldHdlZW4gdmlld3Ncblx0XHRcdC8vIChpdCBjYXVzZXMgZXJyb3JzLCBlLmcuIHBlbmRpbmcgY2hhbmdlcyBkdWUgdG8gY3JlYXRpb25Sb3cpXG5cdFx0XHRpZiAoXG5cdFx0XHRcdCFvTGlzdEJpbmRpbmcgfHxcblx0XHRcdFx0KG9MaXN0QmluZGluZy5pc1JlbGF0aXZlKCkgPT09IGZhbHNlICYmICEodGhpcy5vQXBwQ29tcG9uZW50LmdldFJvb3RWaWV3Q29udHJvbGxlcigpIGFzIGFueSkuaXNGY2xFbmFibGVkKCkpXG5cdFx0XHQpIHtcblx0XHRcdFx0b0xpc3RCaW5kaW5nID0gbmV3IChPRGF0YUxpc3RCaW5kaW5nIGFzIGFueSkoXG5cdFx0XHRcdFx0dGhpcy5nZXRNb2RlbCgpLFxuXHRcdFx0XHRcdHNQYXRoLnJlcGxhY2UoXCIoLi4uKVwiLCBcIlwiKSxcblx0XHRcdFx0XHR1bmRlZmluZWQsXG5cdFx0XHRcdFx0dW5kZWZpbmVkLFxuXHRcdFx0XHRcdHVuZGVmaW5lZCxcblx0XHRcdFx0XHRvUGFyYW1ldGVyc1xuXHRcdFx0XHQpO1xuXHRcdFx0fVxuXHRcdFx0Y29uc3Qgb1N0YXJ0VXBQYXJhbXMgPVxuXHRcdFx0XHRcdHRoaXMub0FwcENvbXBvbmVudCAmJiB0aGlzLm9BcHBDb21wb25lbnQuZ2V0Q29tcG9uZW50RGF0YSgpICYmIHRoaXMub0FwcENvbXBvbmVudC5nZXRDb21wb25lbnREYXRhKCkuc3RhcnR1cFBhcmFtZXRlcnMsXG5cdFx0XHRcdG9JbmJvdW5kUGFyYW1ldGVycyA9IHRoaXMuZ2V0Vmlld0RhdGEoKS5pbmJvdW5kUGFyYW1ldGVycyBhcyBSZWNvcmQ8c3RyaW5nLCBJbmJvdW5kUGFyYW1ldGVyPiB8IHVuZGVmaW5lZDtcblx0XHRcdGxldCBjcmVhdGVQYXJhbXM7XG5cdFx0XHRpZiAob1N0YXJ0VXBQYXJhbXMgJiYgb1N0YXJ0VXBQYXJhbXMucHJlZmVycmVkTW9kZSAmJiBvU3RhcnRVcFBhcmFtcy5wcmVmZXJyZWRNb2RlWzBdLmluZGV4T2YoXCJjcmVhdGVcIikgIT09IC0xKSB7XG5cdFx0XHRcdGNyZWF0ZVBhcmFtcyA9IENvbW1vblV0aWxzLmdldEFkZGl0aW9uYWxQYXJhbXNGb3JDcmVhdGUob1N0YXJ0VXBQYXJhbXMsIG9JbmJvdW5kUGFyYW1ldGVycyk7XG5cdFx0XHR9XG5cblx0XHRcdC8vIGZvciBub3cgd2FpdCB1bnRpbCB0aGUgdmlldyBhbmQgdGhlIGNvbnRyb2xsZXIgaXMgY3JlYXRlZFxuXHRcdFx0KHRoaXMuZ2V0Um9vdENvbnRyb2woKSBhcyBhbnkpXG5cdFx0XHRcdC5nZXRDb250cm9sbGVyKClcblx0XHRcdFx0LmVkaXRGbG93LmNyZWF0ZURvY3VtZW50KG9MaXN0QmluZGluZywge1xuXHRcdFx0XHRcdGNyZWF0aW9uTW9kZTogQ3JlYXRpb25Nb2RlLlN5bmMsXG5cdFx0XHRcdFx0Y3JlYXRlQWN0aW9uOiBiQWN0aW9uQ3JlYXRlLFxuXHRcdFx0XHRcdGRhdGE6IGNyZWF0ZVBhcmFtcyxcblx0XHRcdFx0XHRiRnJvbURlZmVycmVkOiB0cnVlXG5cdFx0XHRcdH0pXG5cdFx0XHRcdC5maW5hbGx5KCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLkRlZmVycmVkQ29udGV4dENyZWF0ZWQgPSBmYWxzZTtcblx0XHRcdFx0fSlcblx0XHRcdFx0LmNhdGNoKGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0XHQvLyBEbyBOb3RoaW5nID9cblx0XHRcdFx0fSk7XG5cdFx0fVxuXHR9XG5cblx0c2V0VmFyaWFudE1hbmFnZW1lbnQoc1ZhcmlhbnRNYW5hZ2VtZW50OiBhbnkpIHtcblx0XHRpZiAoc1ZhcmlhbnRNYW5hZ2VtZW50ID09PSBWYXJpYW50TWFuYWdlbWVudC5QYWdlKSB7XG5cdFx0XHRMb2cuZXJyb3IoXCJPYmplY3RQYWdlIGRvZXMgbm90IHN1cHBvcnQgUGFnZS1sZXZlbCB2YXJpYW50IG1hbmFnZW1lbnQgeWV0XCIpO1xuXHRcdFx0c1ZhcmlhbnRNYW5hZ2VtZW50ID0gVmFyaWFudE1hbmFnZW1lbnQuTm9uZTtcblx0XHR9XG5cblx0XHR0aGlzLnNldFByb3BlcnR5KFwidmFyaWFudE1hbmFnZW1lbnRcIiwgc1ZhcmlhbnRNYW5hZ2VtZW50KTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBPYmplY3RQYWdlQ29tcG9uZW50O1xuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFRQSxJQUFNQSxpQkFBaUIsR0FBR0MsV0FBVyxDQUFDRCxpQkFBdEM7RUFBQSxJQUNDRSxZQUFZLEdBQUdELFdBQVcsQ0FBQ0MsWUFENUI7RUFFQSxJQUFNQyxhQUFhLEdBQUdDLFdBQVcsQ0FBQ0MsVUFBWixDQUF1QkYsYUFBN0M7TUFFTUcsbUIsV0FETEMsY0FBYyxDQUFDLHVDQUFELEVBQTBDO0lBQUVDLE9BQU8sRUFBRSxrQkFBWDtJQUErQkMsUUFBUSxFQUFFO0VBQXpDLENBQTFDLEMsVUFRYkMsUUFBUSxDQUFDO0lBQ1RDLElBQUksRUFBRSwrQkFERztJQUVUQyxZQUFZLEVBQUVaLGlCQUFpQixDQUFDYTtFQUZ2QixDQUFELEMsVUFVUkgsUUFBUSxDQUFDO0lBQ1RDLElBQUksRUFBRSwyQ0FERztJQUVUQyxZQUFZLEVBQUVULGFBQWEsQ0FBQ1c7RUFGbkIsQ0FBRCxDLFVBUVJKLFFBQVEsQ0FBQztJQUNUQyxJQUFJLEVBQUUsU0FERztJQUVUQyxZQUFZLEVBQUU7RUFGTCxDQUFELEMsVUFNUkYsUUFBUSxDQUFDO0lBQUVDLElBQUksRUFBRTtFQUFSLENBQUQsQyxVQUtSRCxRQUFRLENBQUM7SUFDVEMsSUFBSSxFQUFFLFNBREc7SUFFVEMsWUFB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
151
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYXJpYW50TWFuYWdlbWVudCIsIkNvcmVMaWJyYXJ5IiwiQ3JlYXRpb25Nb2RlIiwiU2VjdGlvbkxheW91dCIsInRlbXBsYXRlTGliIiwiT2JqZWN0UGFnZSIsIk9iamVjdFBhZ2VDb21wb25lbnQiLCJkZWZpbmVVSTVDbGFzcyIsImxpYnJhcnkiLCJtYW5pZmVzdCIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsIkNvbnRyb2wiLCJQYWdlIiwiRGVmZXJyZWRDb250ZXh0Q3JlYXRlZCIsImlzQ29udGV4dEV4cGVjdGVkIiwiZXh0ZW5kUGFnZURlZmluaXRpb24iLCJwYWdlRGVmaW5pdGlvbiIsImNvbnZlcnRlckNvbnRleHQiLCJleHRlbmRPYmplY3RQYWdlRGVmaW5pdGlvbiIsImNyZWF0ZURlZmVycmVkQ29udGV4dCIsInNQYXRoIiwib0xpc3RCaW5kaW5nIiwiYkFjdGlvbkNyZWF0ZSIsIm9QYXJhbWV0ZXJzIiwiJCRncm91cElkIiwiJCR1cGRhdGVHcm91cElkIiwiaXNSZWxhdGl2ZSIsIm9BcHBDb21wb25lbnQiLCJnZXRSb290Vmlld0NvbnRyb2xsZXIiLCJpc0ZjbEVuYWJsZWQiLCJPRGF0YUxpc3RCaW5kaW5nIiwiZ2V0TW9kZWwiLCJyZXBsYWNlIiwidW5kZWZpbmVkIiwib1N0YXJ0VXBQYXJhbXMiLCJnZXRDb21wb25lbnREYXRhIiwic3RhcnR1cFBhcmFtZXRlcnMiLCJvSW5ib3VuZFBhcmFtZXRlcnMiLCJnZXRWaWV3RGF0YSIsImluYm91bmRQYXJhbWV0ZXJzIiwiY3JlYXRlUGFyYW1zIiwicHJlZmVycmVkTW9kZSIsImluZGV4T2YiLCJDb21tb25VdGlscyIsImdldEFkZGl0aW9uYWxQYXJhbXNGb3JDcmVhdGUiLCJnZXRSb290Q29udHJvbCIsImdldENvbnRyb2xsZXIiLCJlZGl0RmxvdyIsImNyZWF0ZURvY3VtZW50IiwiY3JlYXRpb25Nb2RlIiwiU3luYyIsImNyZWF0ZUFjdGlvbiIsImRhdGEiLCJiRnJvbURlZmVycmVkIiwiZmluYWxseSIsImNhdGNoIiwic2V0VmFyaWFudE1hbmFnZW1lbnQiLCJzVmFyaWFudE1hbmFnZW1lbnQiLCJMb2ciLCJlcnJvciIsIk5vbmUiLCJzZXRQcm9wZXJ0eSIsIlRlbXBsYXRlQ29tcG9uZW50Il0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJDb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgQ29tbW9uVXRpbHMsIHsgSW5ib3VuZFBhcmFtZXRlciB9IGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IENvbnZlcnRlckNvbnRleHQgZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvQ29udmVydGVyQ29udGV4dFwiO1xuaW1wb3J0IHsgT2JqZWN0UGFnZURlZmluaXRpb24gfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy90ZW1wbGF0ZXMvT2JqZWN0UGFnZUNvbnZlcnRlclwiO1xuaW1wb3J0IHsgZGVmaW5lVUk1Q2xhc3MsIHByb3BlcnR5IH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgQ29yZUxpYnJhcnkgZnJvbSBcInNhcC9mZS9jb3JlL2xpYnJhcnlcIjtcbmltcG9ydCBUZW1wbGF0ZUNvbXBvbmVudCBmcm9tIFwic2FwL2ZlL2NvcmUvVGVtcGxhdGVDb21wb25lbnRcIjtcbmltcG9ydCB0ZW1wbGF0ZUxpYiBmcm9tIFwic2FwL2ZlL3RlbXBsYXRlcy9saWJyYXJ5XCI7XG5pbXBvcnQgeyBleHRlbmRPYmplY3RQYWdlRGVmaW5pdGlvbiwgRmluYWxQYWdlRGVmaW5pdGlvbiB9IGZyb20gXCJzYXAvZmUvdGVtcGxhdGVzL09iamVjdFBhZ2UvRXh0ZW5kUGFnZURlZmluaXRpb25cIjtcbmltcG9ydCBPRGF0YUxpc3RCaW5kaW5nIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFMaXN0QmluZGluZ1wiO1xuXG5jb25zdCBWYXJpYW50TWFuYWdlbWVudCA9IENvcmVMaWJyYXJ5LlZhcmlhbnRNYW5hZ2VtZW50LFxuXHRDcmVhdGlvbk1vZGUgPSBDb3JlTGlicmFyeS5DcmVhdGlvbk1vZGU7XG5jb25zdCBTZWN0aW9uTGF5b3V0ID0gdGVtcGxhdGVMaWIuT2JqZWN0UGFnZS5TZWN0aW9uTGF5b3V0O1xuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLnRlbXBsYXRlcy5PYmplY3RQYWdlLkNvbXBvbmVudFwiLCB7IGxpYnJhcnk6IFwic2FwLmZlLnRlbXBsYXRlc1wiLCBtYW5pZmVzdDogXCJqc29uXCIgfSlcbmNsYXNzIE9iamVjdFBhZ2VDb21wb25lbnQgZXh0ZW5kcyBUZW1wbGF0ZUNvbXBvbmVudCB7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIGlmIGFuZCBvbiB3aGljaCBsZXZlbCB2YXJpYW50cyBjYW4gYmUgY29uZmlndXJlZDpcblx0ICogXHRcdE5vbmU6IG5vIHZhcmlhbnQgY29uZmlndXJhdGlvbiBhdCBhbGxcblx0ICogXHRcdFBhZ2U6IG9uZSB2YXJpYW50IGNvbmZpZ3VyYXRpb24gZm9yIHRoZSB3aG9sZSBwYWdlXG5cdCAqIFx0XHRDb250cm9sOiB2YXJpYW50IGNvbmZpZ3VyYXRpb24gb24gY29udHJvbCBsZXZlbFxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcInNhcC5mZS5jb3JlLlZhcmlhbnRNYW5hZ2VtZW50XCIsXG5cdFx0ZGVmYXVsdFZhbHVlOiBWYXJpYW50TWFuYWdlbWVudC5Db250cm9sXG5cdH0pXG5cdHZhcmlhbnRNYW5hZ2VtZW50OiB0eXBlb2YgVmFyaWFudE1hbmFnZW1lbnQ7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIGhvdyB0aGUgc2VjdGlvbnMgYXJlIHJlbmRlcmVkXG5cdCAqIFx0XHRQYWdlOiBhbGwgc2VjdGlvbnMgYXJlIHNob3duIG9uIG9uZSBwYWdlXG5cdCAqIFx0XHRUYWJzOiBlYWNoIHRvcC1sZXZlbCBzZWN0aW9uIGlzIHNob3duIGluIGFuIG93biB0YWJcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzYXAuZmUudGVtcGxhdGVzLk9iamVjdFBhZ2UuU2VjdGlvbkxheW91dFwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogU2VjdGlvbkxheW91dC5QYWdlXG5cdH0pXG5cdHNlY3Rpb25MYXlvdXQ6IHR5cGVvZiBTZWN0aW9uTGF5b3V0O1xuXHQvKipcblx0ICogRW5hYmxlcyB0aGUgcmVsYXRlZCBhcHBzIGZlYXR1cmVzXG5cdCAqL1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYm9vbGVhblwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogZmFsc2Vcblx0fSlcblx0c2hvd1JlbGF0ZWRBcHBzITogYm9vbGVhbjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcIm9iamVjdFwiIH0pXG5cdGFkZGl0aW9uYWxTZW1hbnRpY09iamVjdHM6IGFueTtcblx0LyoqXG5cdCAqIEVuYWJsZXMgdGhlIGVkaXRhYmxlIG9iamVjdCBwYWdlIGhlYWRlclxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIixcblx0XHRkZWZhdWx0VmFsdWU6IHRydWVcblx0fSlcblx0ZWRpdGFibGVIZWFkZXJDb250ZW50ITogYm9vbGVhbjtcblx0LyoqXG5cdCAqIEVuYWJsZXMgdGhlIEJyZWFkQ3J1bWJzIGZlYXR1cmVzXG5cdCAqL1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYm9vbGVhblwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogdHJ1ZVxuXHR9KVxuXHRzaG93QnJlYWRDcnVtYnMhOiBib29sZWFuO1xuXHQvKipcblx0ICogRGVmaW5lcyB0aGUgcHJvcGVydGllcyB3aGljaCBjYW4gYmUgdXNlZCBmb3IgaW5ib3VuZCBOYXZpZ2F0aW9uXG5cdCAqL1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwib2JqZWN0XCJcblx0fSlcblx0aW5ib3VuZFBhcmFtZXRlcnM6IGFueTtcblx0cHJpdmF0ZSBEZWZlcnJlZENvbnRleHRDcmVhdGVkOiBCb29sZWFuID0gZmFsc2U7XG5cblx0aXNDb250ZXh0RXhwZWN0ZWQoKSB7XG5cdFx0cmV0dXJuIHRydWU7XG5cdH1cblxuXHRleHRlbmRQYWdlRGVmaW5pdGlvbihwYWdlRGVmaW5pdGlvbjogT2JqZWN0UGFnZURlZmluaXRpb24sIGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQpOiBGaW5hbFBhZ2VEZWZpbml0aW9uIHtcblx0XHRyZXR1cm4gZXh0ZW5kT2JqZWN0UGFnZURlZmluaXRpb24ocGFnZURlZmluaXRpb24sIGNvbnZlcnRlckNvbnRleHQpO1xuXHR9XG5cblx0Ly8gVE9ETzogdGhpcyBzaG91bGQgYmUgaWRlYWxseSBiZSBoYW5kbGVkIGJ5IHRoZSBlZGl0Zmxvdy9yb3V0aW5nIHdpdGhvdXQgdGhlIG5lZWQgdG8gaGF2ZSB0aGlzIG1ldGhvZCBpbiB0aGVcblx0Ly8gb2JqZWN0IHBhZ2UgLSBmb3Igbm93IGtlZXAgaXQgaGVyZVxuXHRjcmVhdGVEZWZlcnJlZENvbnRleHQoc1BhdGg6IGFueSwgb0xpc3RCaW5kaW5nOiBhbnksIGJBY3Rpb25DcmVhdGU6IGFueSkge1xuXHRcdGlmICghdGhpcy5EZWZlcnJlZENvbnRleHRDcmVhdGVkKSB7XG5cdFx0XHR0aGlzLkRlZmVycmVkQ29udGV4dENyZWF0ZWQgPSB0cnVlO1xuXHRcdFx0Y29uc3Qgb1BhcmFtZXRlcnMgPSB7XG5cdFx0XHRcdCQkZ3JvdXBJZDogXCIkYXV0by5IZXJvZXNcIixcblx0XHRcdFx0JCR1cGRhdGVHcm91cElkOiBcIiRhdXRvXCJcblx0XHRcdH07XG5cdFx0XHQvLyBJbiBmdWxsc2NyZWVuIG1vZGUsIHdlIHJlY3JlYXRlIHRoZSBsaXN0IGJpbmRpbmcsIGFzIHdlIGRvbid0IHdhbnQgdG8gaGF2ZSBzeW5jaHJvbml6YXRpb24gYmV0d2VlbiB2aWV3c1xuXHRcdFx0Ly8gKGl0IGNhdXNlcyBlcnJvcnMsIGUuZy4gcGVuZGluZyBjaGFuZ2VzIGR1ZSB0byBjcmVhdGlvblJvdylcblx0XHRcdGlmIChcblx0XHRcdFx0IW9MaXN0QmluZGluZyB8fFxuXHRcdFx0XHQob0xpc3RCaW5kaW5nLmlzUmVsYXRpdmUoKSA9PT0gZmFsc2UgJiYgISh0aGlzLm9BcHBDb21wb25lbnQuZ2V0Um9vdFZpZXdDb250cm9sbGVyKCkgYXMgYW55KS5pc0ZjbEVuYWJsZWQoKSlcblx0XHRcdCkge1xuXHRcdFx0XHRvTGlzdEJpbmRpbmcgPSBuZXcgKE9EYXRhTGlzdEJpbmRpbmcgYXMgYW55KShcblx0XHRcdFx0XHR0aGlzLmdldE1vZGVsKCksXG5cdFx0XHRcdFx0c1BhdGgucmVwbGFjZShcIiguLi4pXCIsIFwiXCIpLFxuXHRcdFx0XHRcdHVuZGVmaW5lZCxcblx0XHRcdFx0XHR1bmRlZmluZWQsXG5cdFx0XHRcdFx0dW5kZWZpbmVkLFxuXHRcdFx0XHRcdG9QYXJhbWV0ZXJzXG5cdFx0XHRcdCk7XG5cdFx0XHR9XG5cdFx0XHRjb25zdCBvU3RhcnRVcFBhcmFtcyA9XG5cdFx0XHRcdFx0dGhpcy5vQXBwQ29tcG9uZW50ICYmIHRoaXMub0FwcENvbXBvbmVudC5nZXRDb21wb25lbnREYXRhKCkgJiYgdGhpcy5vQXBwQ29tcG9uZW50LmdldENvbXBvbmVudERhdGEoKS5zdGFydHVwUGFyYW1ldGVycyxcblx0XHRcdFx0b0luYm91bmRQYXJhbWV0ZXJzID0gdGhpcy5nZXRWaWV3RGF0YSgpLmluYm91bmRQYXJhbWV0ZXJzIGFzIFJlY29yZDxzdHJpbmcsIEluYm91bmRQYXJhbWV0ZXI+IHwgdW5kZWZpbmVkO1xuXHRcdFx0bGV0IGNyZWF0ZVBhcmFtcztcblx0XHRcdGlmIChvU3RhcnRVcFBhcmFtcyAmJiBvU3RhcnRVcFBhcmFtcy5wcmVmZXJyZWRNb2RlICYmIG9TdGFydFVwUGFyYW1zLnByZWZlcnJlZE1vZGVbMF0uaW5kZXhPZihcImNyZWF0ZVwiKSAhPT0gLTEpIHtcblx0XHRcdFx0Y3JlYXRlUGFyYW1zID0gQ29tbW9uVXRpbHMuZ2V0QWRkaXRpb25hbFBhcmFtc0ZvckNyZWF0ZShvU3RhcnRVcFBhcmFtcywgb0luYm91bmRQYXJhbWV0ZXJzKTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gZm9yIG5vdyB3YWl0IHVudGlsIHRoZSB2aWV3IGFuZCB0aGUgY29udHJvbGxlciBpcyBjcmVhdGVkXG5cdFx0XHQodGhpcy5nZXRSb290Q29udHJvbCgpIGFzIGFueSlcblx0XHRcdFx0LmdldENvbnRyb2xsZXIoKVxuXHRcdFx0XHQuZWRpdEZsb3cuY3JlYXRlRG9jdW1lbnQob0xpc3RCaW5kaW5nLCB7XG5cdFx0XHRcdFx0Y3JlYXRpb25Nb2RlOiBDcmVhdGlvbk1vZGUuU3luYyxcblx0XHRcdFx0XHRjcmVhdGVBY3Rpb246IGJBY3Rpb25DcmVhdGUsXG5cdFx0XHRcdFx0ZGF0YTogY3JlYXRlUGFyYW1zLFxuXHRcdFx0XHRcdGJGcm9tRGVmZXJyZWQ6IHRydWVcblx0XHRcdFx0fSlcblx0XHRcdFx0LmZpbmFsbHkoKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMuRGVmZXJyZWRDb250ZXh0Q3JlYXRlZCA9IGZhbHNlO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdC8vIERvIE5vdGhpbmcgP1xuXHRcdFx0XHR9KTtcblx0XHR9XG5cdH1cblxuXHRzZXRWYXJpYW50TWFuYWdlbWVudChzVmFyaWFudE1hbmFnZW1lbnQ6IGFueSkge1xuXHRcdGlmIChzVmFyaWFudE1hbmFnZW1lbnQgPT09IFZhcmlhbnRNYW5hZ2VtZW50LlBhZ2UpIHtcblx0XHRcdExvZy5lcnJvcihcIk9iamVjdFBhZ2UgZG9lcyBub3Qgc3VwcG9ydCBQYWdlLWxldmVsIHZhcmlhbnQgbWFuYWdlbWVudCB5ZXRcIik7XG5cdFx0XHRzVmFyaWFudE1hbmFnZW1lbnQgPSBWYXJpYW50TWFuYWdlbWVudC5Ob25lO1xuXHRcdH1cblxuXHRcdHRoaXMuc2V0UHJvcGVydHkoXCJ2YXJpYW50TWFuYWdlbWVudFwiLCBzVmFyaWFudE1hbmFnZW1lbnQpO1xuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE9iamVjdFBh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
@@ -1,9 +1,12 @@
1
1
  import Log from "sap/base/Log";
2
2
  import CommonUtils, { InboundParameter } from "sap/fe/core/CommonUtils";
3
+ import ConverterContext from "sap/fe/core/converters/ConverterContext";
4
+ import { ObjectPageDefinition } from "sap/fe/core/converters/templates/ObjectPageConverter";
3
5
  import { defineUI5Class, property } from "sap/fe/core/helpers/ClassSupport";
4
6
  import CoreLibrary from "sap/fe/core/library";
5
7
  import TemplateComponent from "sap/fe/core/TemplateComponent";
6
8
  import templateLib from "sap/fe/templates/library";
9
+ import { extendObjectPageDefinition, FinalPageDefinition } from "sap/fe/templates/ObjectPage/ExtendPageDefinition";
7
10
  import ODataListBinding from "sap/ui/model/odata/v4/ODataListBinding";
8
11
 
9
12
  const VariantManagement = CoreLibrary.VariantManagement,
@@ -72,14 +75,18 @@ class ObjectPageComponent extends TemplateComponent {
72
75
  return true;
73
76
  }
74
77
 
78
+ extendPageDefinition(pageDefinition: ObjectPageDefinition, converterContext: ConverterContext): FinalPageDefinition {
79
+ return extendObjectPageDefinition(pageDefinition, converterContext);
80
+ }
81
+
75
82
  // TODO: this should be ideally be handled by the editflow/routing without the need to have this method in the
76
83
  // object page - for now keep it here
77
84
  createDeferredContext(sPath: any, oListBinding: any, bActionCreate: any) {
78
85
  if (!this.DeferredContextCreated) {
79
86
  this.DeferredContextCreated = true;
80
87
  const oParameters = {
81
- "$$groupId": "$auto.Heroes",
82
- "$$updateGroupId": "$auto"
88
+ $$groupId: "$auto.Heroes",
89
+ $$updateGroupId: "$auto"
83
90
  };
84
91
  // In fullscreen mode, we recreate the list binding, as we don't want to have synchronization between views
85
92
  // (it causes errors, e.g. pending changes due to creationRow)
@@ -0,0 +1,64 @@
1
+ /*!
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ * (c) Copyright 2009-2021 SAP SE. All rights reserved
4
+ */
5
+ sap.ui.define(["sap/fe/templates/ObjectPage/ObjectPageTemplating"], function (ObjectPageTemplating) {
6
+ "use strict";
7
+
8
+ var _exports = {};
9
+ var getPressExpressionForPrimaryAction = ObjectPageTemplating.getPressExpressionForPrimaryAction;
10
+ var getEditCommandExecutionVisible = ObjectPageTemplating.getEditCommandExecutionVisible;
11
+ var getEditCommandExecutionEnabled = ObjectPageTemplating.getEditCommandExecutionEnabled;
12
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
13
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
14
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
15
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
16
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
17
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
18
+ var extendObjectPageDefinition = function (pageDefinition, converterContext) {
19
+ var convertedPageDefinition = pageDefinition;
20
+ convertedPageDefinition.primaryAction = getPrimaryAction(converterContext, pageDefinition.header.actions, pageDefinition.footerActions);
21
+ return convertedPageDefinition;
22
+ };
23
+
24
+ /**
25
+ * Method to get the expression for the execute event of the forward action.
26
+ * Generates primaryActionExpression to be executed on the keyboard shortcut Ctrl+Enter with the
27
+ * forward flow (priority is the semantic positive action OR if that's not there, then the primary action).
28
+ *
29
+ * @param converterContext The converter context
30
+ * @param headerActions An array containing all the actions for this ObjectPage header
31
+ * @param footerActions An array containing all the actions for this ObjectPage footer
32
+ * @returns Binding expression or function string
33
+ */
34
+ _exports.extendObjectPageDefinition = extendObjectPageDefinition;
35
+ var getPrimaryAction = function (converterContext, headerActions, footerActions) {
36
+ var primaryActionExpression = "";
37
+ var aActions = [].concat(_toConsumableArray(headerActions), _toConsumableArray(footerActions));
38
+ var getBindingExp = function (sExpression) {
39
+ if (sExpression && sExpression.indexOf("{=") > -1) {
40
+ return sExpression.replace("{=", "(").slice(0, -1) + ")";
41
+ }
42
+ return sExpression;
43
+ };
44
+ var aSemanticPositiveActions = aActions.filter(function (oAction) {
45
+ if (oAction !== null && oAction !== void 0 && oAction.annotationPath) {
46
+ var targetObject = converterContext.getConverterContextFor(oAction === null || oAction === void 0 ? void 0 : oAction.annotationPath).getDataModelObjectPath().targetObject;
47
+ if (targetObject !== null && targetObject !== void 0 && targetObject.Criticality && (targetObject === null || targetObject === void 0 ? void 0 : targetObject.Criticality) === "UI.CriticalityType/Positive") {
48
+ return true;
49
+ }
50
+ }
51
+ });
52
+ var oEntitySet = converterContext.getEntitySet();
53
+ if (aSemanticPositiveActions.length > 0) {
54
+ var _aSemanticPositiveAct, _aSemanticPositiveAct2;
55
+ primaryActionExpression = getPressExpressionForPrimaryAction(aSemanticPositiveActions[0].annotationPath && converterContext.getConverterContextFor(aSemanticPositiveActions[0].annotationPath).getDataModelObjectPath().targetObject, oEntitySet === null || oEntitySet === void 0 ? void 0 : oEntitySet.name, aSemanticPositiveActions[0], getBindingExp((_aSemanticPositiveAct = aSemanticPositiveActions[0].visible) !== null && _aSemanticPositiveAct !== void 0 ? _aSemanticPositiveAct : "true"), getBindingExp((_aSemanticPositiveAct2 = aSemanticPositiveActions[0].enabled) !== null && _aSemanticPositiveAct2 !== void 0 ? _aSemanticPositiveAct2 : "true"), getBindingExp(getEditCommandExecutionVisible(headerActions)), getBindingExp(getEditCommandExecutionEnabled(headerActions)));
56
+ } else {
57
+ primaryActionExpression = getPressExpressionForPrimaryAction(null, oEntitySet === null || oEntitySet === void 0 ? void 0 : oEntitySet.name, null, "false", "false", getBindingExp(getEditCommandExecutionVisible(headerActions)), getBindingExp(getEditCommandExecutionEnabled(headerActions)));
58
+ }
59
+ return primaryActionExpression;
60
+ };
61
+ _exports.getPrimaryAction = getPrimaryAction;
62
+ return _exports;
63
+ }, false);
64
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJleHRlbmRPYmplY3RQYWdlRGVmaW5pdGlvbiIsInBhZ2VEZWZpbml0aW9uIiwiY29udmVydGVyQ29udGV4dCIsImNvbnZlcnRlZFBhZ2VEZWZpbml0aW9uIiwicHJpbWFyeUFjdGlvbiIsImdldFByaW1hcnlBY3Rpb24iLCJoZWFkZXIiLCJhY3Rpb25zIiwiZm9vdGVyQWN0aW9ucyIsImhlYWRlckFjdGlvbnMiLCJwcmltYXJ5QWN0aW9uRXhwcmVzc2lvbiIsImFBY3Rpb25zIiwiZ2V0QmluZGluZ0V4cCIsInNFeHByZXNzaW9uIiwiaW5kZXhPZiIsInJlcGxhY2UiLCJzbGljZSIsImFTZW1hbnRpY1Bvc2l0aXZlQWN0aW9ucyIsImZpbHRlciIsIm9BY3Rpb24iLCJhbm5vdGF0aW9uUGF0aCIsInRhcmdldE9iamVjdCIsImdldENvbnZlcnRlckNvbnRleHRGb3IiLCJnZXREYXRhTW9kZWxPYmplY3RQYXRoIiwiQ3JpdGljYWxpdHkiLCJvRW50aXR5U2V0IiwiZ2V0RW50aXR5U2V0IiwibGVuZ3RoIiwiZ2V0UHJlc3NFeHByZXNzaW9uRm9yUHJpbWFyeUFjdGlvbiIsIm5hbWUiLCJ2aXNpYmxlIiwiZW5hYmxlZCIsImdldEVkaXRDb21tYW5kRXhlY3V0aW9uVmlzaWJsZSIsImdldEVkaXRDb21tYW5kRXhlY3V0aW9uRW5hYmxlZCJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiRXh0ZW5kUGFnZURlZmluaXRpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBCYXNlQWN0aW9uIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvY29udHJvbHMvQ29tbW9uL0FjdGlvblwiO1xuaW1wb3J0IENvbnZlcnRlckNvbnRleHQgZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvQ29udmVydGVyQ29udGV4dFwiO1xuaW1wb3J0IHsgT2JqZWN0UGFnZURlZmluaXRpb24gfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy90ZW1wbGF0ZXMvT2JqZWN0UGFnZUNvbnZlcnRlclwiO1xuaW1wb3J0IHR5cGUgeyBDb21waWxlZEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbiB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0JpbmRpbmdUb29sa2l0XCI7XG5pbXBvcnQge1xuXHRnZXRFZGl0Q29tbWFuZEV4ZWN1dGlvbkVuYWJsZWQsXG5cdGdldEVkaXRDb21tYW5kRXhlY3V0aW9uVmlzaWJsZSxcblx0Z2V0UHJlc3NFeHByZXNzaW9uRm9yUHJpbWFyeUFjdGlvblxufSBmcm9tIFwic2FwL2ZlL3RlbXBsYXRlcy9PYmplY3RQYWdlL09iamVjdFBhZ2VUZW1wbGF0aW5nXCI7XG5cbmV4cG9ydCB0eXBlIEZpbmFsUGFnZURlZmluaXRpb24gPSBPYmplY3RQYWdlRGVmaW5pdGlvbiAmIHtcblx0cHJpbWFyeUFjdGlvbjogc3RyaW5nO1xufTtcblxuZXhwb3J0IGNvbnN0IGV4dGVuZE9iamVjdFBhZ2VEZWZpbml0aW9uID0gZnVuY3Rpb24gKFxuXHRwYWdlRGVmaW5pdGlvbjogT2JqZWN0UGFnZURlZmluaXRpb24sXG5cdGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHRcbik6IEZpbmFsUGFnZURlZmluaXRpb24ge1xuXHRjb25zdCBjb252ZXJ0ZWRQYWdlRGVmaW5pdGlvbiA9IHBhZ2VEZWZpbml0aW9uIGFzIEZpbmFsUGFnZURlZmluaXRpb247XG5cdGNvbnZlcnRlZFBhZ2VEZWZpbml0aW9uLnByaW1hcnlBY3Rpb24gPSBnZXRQcmltYXJ5QWN0aW9uKGNvbnZlcnRlckNvbnRleHQsIHBhZ2VEZWZpbml0aW9uLmhlYWRlci5hY3Rpb25zLCBwYWdlRGVmaW5pdGlvbi5mb290ZXJBY3Rpb25zKTtcblx0cmV0dXJuIGNvbnZlcnRlZFBhZ2VEZWZpbml0aW9uO1xufTtcblxuLyoqXG4gKiBNZXRob2QgdG8gZ2V0IHRoZSBleHByZXNzaW9uIGZvciB0aGUgZXhlY3V0ZSBldmVudCBvZiB0aGUgZm9yd2FyZCBhY3Rpb24uXG4gKiBHZW5lcmF0ZXMgcHJpbWFyeUFjdGlvbkV4cHJlc3Npb24gdG8gYmUgZXhlY3V0ZWQgb24gdGhlIGtleWJvYXJkIHNob3J0Y3V0IEN0cmwrRW50ZXIgd2l0aCB0aGVcbiAqIGZvcndhcmQgZmxvdyAocHJpb3JpdHkgaXMgdGhlIHNlbWFudGljIHBvc2l0aXZlIGFjdGlvbiBPUiBpZiB0aGF0J3Mgbm90IHRoZXJlLCB0aGVuIHRoZSBwcmltYXJ5IGFjdGlvbikuXG4gKlxuICogQHBhcmFtIGNvbnZlcnRlckNvbnRleHQgVGhlIGNvbnZlcnRlciBjb250ZXh0XG4gKiBAcGFyYW0gaGVhZGVyQWN0aW9ucyBBbiBhcnJheSBjb250YWluaW5nIGFsbCB0aGUgYWN0aW9ucyBmb3IgdGhpcyBPYmplY3RQYWdlIGhlYWRlclxuICogQHBhcmFtIGZvb3RlckFjdGlvbnMgQW4gYXJyYXkgY29udGFpbmluZyBhbGwgdGhlIGFjdGlvbnMgZm9yIHRoaXMgT2JqZWN0UGFnZSBmb290ZXJcbiAqIEByZXR1cm5zICBCaW5kaW5nIGV4cHJlc3Npb24gb3IgZnVuY3Rpb24gc3RyaW5nXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRQcmltYXJ5QWN0aW9uID0gZnVuY3Rpb24gKFxuXHRjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0LFxuXHRoZWFkZXJBY3Rpb25zOiBCYXNlQWN0aW9uW10sXG5cdGZvb3RlckFjdGlvbnM6IEJhc2VBY3Rpb25bXVxuKTogc3RyaW5nIHtcblx0bGV0IHByaW1hcnlBY3Rpb25FeHByZXNzaW9uID0gXCJcIjtcblx0Y29uc3QgYUFjdGlvbnMgPSBbLi4uaGVhZGVyQWN0aW9ucywgLi4uZm9vdGVyQWN0aW9uc107XG5cblx0Y29uc3QgZ2V0QmluZGluZ0V4cCA9IGZ1bmN0aW9uIChzRXhwcmVzc2lvbjogQ29tcGlsZWRCaW5kaW5nVG9vbGtpdEV4cHJlc3Npb24gfCBzdHJpbmcpIHtcblx0XHRpZiAoc0V4cHJlc3Npb24gJiYgc0V4cHJlc3Npb24uaW5kZXhPZihcIns9XCIpID4gLTEpIHtcblx0XHRcdHJldHVybiBzRXhwcmVzc2lvbi5yZXBsYWNlKFwiez1cIiwgXCIoXCIpLnNsaWNlKDAsIC0xKSArIFwiKVwiO1xuXHRcdH1cblx0XHRyZXR1cm4gc0V4cHJlc3Npb247XG5cdH07XG5cdGNvbnN0IGFTZW1hbnRpY1Bvc2l0aXZlQWN0aW9ucyA9IGFBY3Rpb25zLmZpbHRlcigob0FjdGlvbikgPT4ge1xuXHRcdGlmIChvQWN0aW9uPy5hbm5vdGF0aW9uUGF0aCkge1xuXHRcdFx0Y29uc3QgdGFyZ2V0T2JqZWN0ID0gY29udmVydGVyQ29udGV4dC5nZXRDb252ZXJ0ZXJDb250ZXh0Rm9yKG9BY3Rpb24/LmFubm90YXRpb25QYXRoKS5nZXREYXRhTW9kZWxPYmplY3RQYXRoKCkudGFyZ2V0T2JqZWN0O1xuXHRcdFx0aWYgKHRhcmdldE9iamVjdD8uQ3JpdGljYWxpdHkgJiYgdGFyZ2V0T2JqZWN0Py5Dcml0aWNhbGl0eSA9PT0gXCJVSS5Dcml0aWNhbGl0eVR5cGUvUG9zaXRpdmVcIikge1xuXHRcdFx0XHRyZXR1cm4gdHJ1ZTtcblx0XHRcdH1cblx0XHR9XG5cdH0pO1xuXHRjb25zdCBvRW50aXR5U2V0ID0gY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlTZXQoKTtcblx0aWYgKGFTZW1hbnRpY1Bvc2l0aXZlQWN0aW9ucy5sZW5ndGggPiAwKSB7XG5cdFx0cHJpbWFyeUFjdGlvbkV4cHJlc3Npb24gPSBnZXRQcmVzc0V4cHJlc3Npb25Gb3JQcmltYXJ5QWN0aW9uKFxuXHRcdFx0YVNlbWFudGljUG9zaXRpdmVBY3Rpb25zWzBdLmFubm90YXRpb25QYXRoICYmXG5cdFx0XHRcdGNvbnZlcnRlckNvbnRleHQuZ2V0Q29udmVydGVyQ29udGV4dEZvcihhU2VtYW50aWNQb3NpdGl2ZUFjdGlvbnNbMF0uYW5ub3RhdGlvblBhdGgpLmdldERhdGFNb2RlbE9iamVjdFBhdGgoKS50YXJnZXRPYmplY3QsXG5cdFx0XHRvRW50aXR5U2V0Py5uYW1lLFxuXHRcdFx0YVNlbWFudGljUG9zaXRpdmVBY3Rpb25zWzBdLFxuXHRcdFx0Z2V0QmluZGluZ0V4cChhU2VtYW50aWNQb3NpdGl2ZUFjdGlvbnNbMF0udmlzaWJsZSA/PyBcInRydWVcIiksXG5cdFx0XHRnZXRCaW5kaW5nRXhwKGFTZW1hbnRpY1Bvc2l0aXZlQWN0aW9uc1swXS5lbmFibGVkID8/IFwidHJ1ZVwiKSxcblx0XHRcdGdldEJpbmRpbmdFeHAoZ2V0RWRpdENvbW1hbmRFeGVjdXRpb25WaXNpYmxlKGhlYWRlckFjdGlvbnMpKSxcblx0XHRcdGdldEJpbmRpbmdFeHAoZ2V0RWRpdENvbW1hbmRFeGVjdXRpb25FbmFibGVkKGhlYWRlckFjdGlvbnMpKVxuXHRcdCk7XG5cdH0gZWxzZSB7XG5cdFx0cHJpbWFyeUFjdGlvbkV4cHJlc3Npb24gPSBnZXRQcmVzc0V4cHJlc3Npb25Gb3JQcmltYXJ5QWN0aW9uKFxuXHRcdFx0bnVsbCxcblx0XHRcdG9FbnRpdHlTZXQ/Lm5hbWUsXG5cdFx0XHRudWxsLFxuXHRcdFx0XCJmYWxzZVwiLFxuXHRcdFx0XCJmYWxzZVwiLFxuXHRcdFx0Z2V0QmluZGluZ0V4cChnZXRFZGl0Q29tbWFuZEV4ZWN1dGlvblZpc2libGUoaGVhZGVyQWN0aW9ucykpLFxuXHRcdFx0Z2V0QmluZGluZ0V4cChnZXRFZGl0Q29tbWFuZEV4ZWN1dGlvbkVuYWJsZWQoaGVhZGVyQWN0aW9ucykpXG5cdFx0KTtcblx0fVxuXHRyZXR1cm4gcHJpbWFyeUFjdGlvbkV4cHJlc3Npb247XG59O1xuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNPLElBQU1BLDBCQUEwQixHQUFHLFVBQ3pDQyxjQUFvQyxFQUNwQ0MsZ0JBQWtDLEVBQ1o7SUFDdEIsSUFBTUMsdUJBQXVCLEdBQUdGLGNBQXFDO0lBQ3JFRSx1QkFBdUIsQ0FBQ0MsYUFBYSxHQUFHQyxnQkFBZ0IsQ0FBQ0gsZ0JBQWdCLEVBQUVELGNBQWMsQ0FBQ0ssTUFBTSxDQUFDQyxPQUFPLEVBQUVOLGNBQWMsQ0FBQ08sYUFBYSxDQUFDO0lBQ3ZJ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
@@ -0,0 +1,80 @@
1
+ import type { BaseAction } from "sap/fe/core/converters/controls/Common/Action";
2
+ import ConverterContext from "sap/fe/core/converters/ConverterContext";
3
+ import { ObjectPageDefinition } from "sap/fe/core/converters/templates/ObjectPageConverter";
4
+ import type { CompiledBindingToolkitExpression } from "sap/fe/core/helpers/BindingToolkit";
5
+ import {
6
+ getEditCommandExecutionEnabled,
7
+ getEditCommandExecutionVisible,
8
+ getPressExpressionForPrimaryAction
9
+ } from "sap/fe/templates/ObjectPage/ObjectPageTemplating";
10
+
11
+ export type FinalPageDefinition = ObjectPageDefinition & {
12
+ primaryAction: string;
13
+ };
14
+
15
+ export const extendObjectPageDefinition = function (
16
+ pageDefinition: ObjectPageDefinition,
17
+ converterContext: ConverterContext
18
+ ): FinalPageDefinition {
19
+ const convertedPageDefinition = pageDefinition as FinalPageDefinition;
20
+ convertedPageDefinition.primaryAction = getPrimaryAction(converterContext, pageDefinition.header.actions, pageDefinition.footerActions);
21
+ return convertedPageDefinition;
22
+ };
23
+
24
+ /**
25
+ * Method to get the expression for the execute event of the forward action.
26
+ * Generates primaryActionExpression to be executed on the keyboard shortcut Ctrl+Enter with the
27
+ * forward flow (priority is the semantic positive action OR if that's not there, then the primary action).
28
+ *
29
+ * @param converterContext The converter context
30
+ * @param headerActions An array containing all the actions for this ObjectPage header
31
+ * @param footerActions An array containing all the actions for this ObjectPage footer
32
+ * @returns Binding expression or function string
33
+ */
34
+ export const getPrimaryAction = function (
35
+ converterContext: ConverterContext,
36
+ headerActions: BaseAction[],
37
+ footerActions: BaseAction[]
38
+ ): string {
39
+ let primaryActionExpression = "";
40
+ const aActions = [...headerActions, ...footerActions];
41
+
42
+ const getBindingExp = function (sExpression: CompiledBindingToolkitExpression | string) {
43
+ if (sExpression && sExpression.indexOf("{=") > -1) {
44
+ return sExpression.replace("{=", "(").slice(0, -1) + ")";
45
+ }
46
+ return sExpression;
47
+ };
48
+ const aSemanticPositiveActions = aActions.filter((oAction) => {
49
+ if (oAction?.annotationPath) {
50
+ const targetObject = converterContext.getConverterContextFor(oAction?.annotationPath).getDataModelObjectPath().targetObject;
51
+ if (targetObject?.Criticality && targetObject?.Criticality === "UI.CriticalityType/Positive") {
52
+ return true;
53
+ }
54
+ }
55
+ });
56
+ const oEntitySet = converterContext.getEntitySet();
57
+ if (aSemanticPositiveActions.length > 0) {
58
+ primaryActionExpression = getPressExpressionForPrimaryAction(
59
+ aSemanticPositiveActions[0].annotationPath &&
60
+ converterContext.getConverterContextFor(aSemanticPositiveActions[0].annotationPath).getDataModelObjectPath().targetObject,
61
+ oEntitySet?.name,
62
+ aSemanticPositiveActions[0],
63
+ getBindingExp(aSemanticPositiveActions[0].visible ?? "true"),
64
+ getBindingExp(aSemanticPositiveActions[0].enabled ?? "true"),
65
+ getBindingExp(getEditCommandExecutionVisible(headerActions)),
66
+ getBindingExp(getEditCommandExecutionEnabled(headerActions))
67
+ );
68
+ } else {
69
+ primaryActionExpression = getPressExpressionForPrimaryAction(
70
+ null,
71
+ oEntitySet?.name,
72
+ null,
73
+ "false",
74
+ "false",
75
+ getBindingExp(getEditCommandExecutionVisible(headerActions)),
76
+ getBindingExp(getEditCommandExecutionEnabled(headerActions))
77
+ );
78
+ }
79
+ return primaryActionExpression;
80
+ };