@sapui5/sap.fe.templates 1.143.0 → 1.145.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 (113) 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/ListReport/Component.js +2 -2
  5. package/src/sap/fe/templates/ListReport/Component.ts +2 -2
  6. package/src/sap/fe/templates/ListReport/ExtensionAPI.js +1 -1
  7. package/src/sap/fe/templates/ListReport/ExtensionAPI.ts +1 -1
  8. package/src/sap/fe/templates/ListReport/LRMessageStrip.js +2 -2
  9. package/src/sap/fe/templates/ListReport/LRMessageStrip.ts +2 -2
  10. package/src/sap/fe/templates/ListReport/ListReport.view.xml +1 -1
  11. package/src/sap/fe/templates/ListReport/ListReportController.controller.js +19 -34
  12. package/src/sap/fe/templates/ListReport/ListReportController.controller.ts +19 -33
  13. package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.js +22 -19
  14. package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.ts +23 -20
  15. package/src/sap/fe/templates/ListReport/manifest.json +1 -1
  16. package/src/sap/fe/templates/ListReport/overrides/MessageHandler.js +5 -2
  17. package/src/sap/fe/templates/ListReport/overrides/MessageHandler.ts +4 -2
  18. package/src/sap/fe/templates/ListReport/overrides/Share.js +1 -1
  19. package/src/sap/fe/templates/ListReport/overrides/Share.ts +1 -1
  20. package/src/sap/fe/templates/ListReport/overrides/ViewState.js +2 -3
  21. package/src/sap/fe/templates/ListReport/overrides/ViewState.ts +1 -2
  22. package/src/sap/fe/templates/ListReport/view/fragments/CollectionVisualization.fragment.xml +32 -0
  23. package/src/sap/fe/templates/ListReport/view/fragments/MacroChart.fragment.xml +1 -0
  24. package/src/sap/fe/templates/ListReport/view/fragments/Table.fragment.xml +8 -6
  25. package/src/sap/fe/templates/ObjectPage/Component.js +33 -23
  26. package/src/sap/fe/templates/ObjectPage/Component.ts +34 -25
  27. package/src/sap/fe/templates/ObjectPage/ExtensionAPI.js +74 -3
  28. package/src/sap/fe/templates/ObjectPage/ExtensionAPI.ts +84 -4
  29. package/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +4 -1
  30. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +149 -70
  31. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.ts +173 -93
  32. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.js +2 -71
  33. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.ts +0 -74
  34. package/src/sap/fe/templates/ObjectPage/card/actions/HeaderActions.js +6 -7
  35. package/src/sap/fe/templates/ObjectPage/card/actions/HeaderActions.ts +5 -6
  36. package/src/sap/fe/templates/ObjectPage/components/DraftToggle.js +107 -34
  37. package/src/sap/fe/templates/ObjectPage/components/DraftToggle.tsx +117 -42
  38. package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js +36 -30
  39. package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.ts +31 -26
  40. package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.js +10 -1
  41. package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.ts +15 -0
  42. package/src/sap/fe/templates/ObjectPage/designtime/ObjectPage.designtime.helper.js +22 -3
  43. package/src/sap/fe/templates/ObjectPage/designtime/ObjectPage.designtime.helper.ts +30 -1
  44. package/src/sap/fe/templates/ObjectPage/designtime/ObjectPage.designtime.js +5 -2
  45. package/src/sap/fe/templates/ObjectPage/designtime/ObjectPage.designtime.ts +7 -0
  46. package/src/sap/fe/templates/ObjectPage/manifest.json +6 -1
  47. package/src/sap/fe/templates/ObjectPage/overrides/CollaborationManager.js +2 -1
  48. package/src/sap/fe/templates/ObjectPage/overrides/CollaborationManager.ts +1 -0
  49. package/src/sap/fe/templates/ObjectPage/view/fragments/ExpandedHeading.fragment.xml +45 -7
  50. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderContent.fragment.xml +9 -14
  51. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacet.fragment.xml +1 -0
  52. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacetCustomContainer.fragment.xml +1 -0
  53. package/src/sap/fe/templates/ObjectPage/view/fragments/Heading.fragment.xml +36 -6
  54. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderAddress.fragment.xml +1 -1
  55. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderContact.fragment.xml +1 -1
  56. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderForm.fragment.xml +0 -1
  57. package/src/sap/fe/templates/ObjectPage/view/fragments/Section.fragment.xml +1 -0
  58. package/src/sap/fe/templates/ObjectPage/view/fragments/SectionContent.fragment.xml +86 -43
  59. package/src/sap/fe/templates/ObjectPage/view/fragments/SectionCustomSection.fragment.xml +6 -1
  60. package/src/sap/fe/templates/ObjectPage/view/fragments/SectionFormContent.fragment.xml +4 -3
  61. package/src/sap/fe/templates/ObjectPage/view/fragments/SectionMoreFormContent.fragment.xml +4 -3
  62. package/src/sap/fe/templates/ObjectPage/view/fragments/Table.fragment.xml +9 -7
  63. package/src/sap/fe/templates/library.js +1 -1
  64. package/src/sap/fe/templates/messagebundle.properties +21 -0
  65. package/src/sap/fe/templates/messagebundle_ar.properties +15 -1
  66. package/src/sap/fe/templates/messagebundle_bg.properties +14 -0
  67. package/src/sap/fe/templates/messagebundle_ca.properties +14 -0
  68. package/src/sap/fe/templates/messagebundle_cnr.properties +15 -1
  69. package/src/sap/fe/templates/messagebundle_cs.properties +14 -0
  70. package/src/sap/fe/templates/messagebundle_cy.properties +14 -0
  71. package/src/sap/fe/templates/messagebundle_da.properties +14 -0
  72. package/src/sap/fe/templates/messagebundle_de.properties +14 -0
  73. package/src/sap/fe/templates/messagebundle_el.properties +14 -0
  74. package/src/sap/fe/templates/messagebundle_en.properties +14 -0
  75. package/src/sap/fe/templates/messagebundle_en_GB.properties +14 -0
  76. package/src/sap/fe/templates/messagebundle_en_US_saprigi.properties +14 -0
  77. package/src/sap/fe/templates/messagebundle_es.properties +14 -0
  78. package/src/sap/fe/templates/messagebundle_es_MX.properties +14 -0
  79. package/src/sap/fe/templates/messagebundle_et.properties +14 -0
  80. package/src/sap/fe/templates/messagebundle_fi.properties +14 -0
  81. package/src/sap/fe/templates/messagebundle_fr.properties +14 -0
  82. package/src/sap/fe/templates/messagebundle_fr_CA.properties +17 -3
  83. package/src/sap/fe/templates/messagebundle_hi.properties +14 -0
  84. package/src/sap/fe/templates/messagebundle_hr.properties +14 -0
  85. package/src/sap/fe/templates/messagebundle_hu.properties +14 -0
  86. package/src/sap/fe/templates/messagebundle_id.properties +14 -0
  87. package/src/sap/fe/templates/messagebundle_it.properties +15 -1
  88. package/src/sap/fe/templates/messagebundle_iw.properties +15 -1
  89. package/src/sap/fe/templates/messagebundle_ja.properties +15 -1
  90. package/src/sap/fe/templates/messagebundle_kk.properties +14 -0
  91. package/src/sap/fe/templates/messagebundle_ko.properties +15 -1
  92. package/src/sap/fe/templates/messagebundle_lt.properties +16 -2
  93. package/src/sap/fe/templates/messagebundle_lv.properties +14 -0
  94. package/src/sap/fe/templates/messagebundle_mk.properties +14 -0
  95. package/src/sap/fe/templates/messagebundle_ms.properties +14 -0
  96. package/src/sap/fe/templates/messagebundle_nl.properties +14 -0
  97. package/src/sap/fe/templates/messagebundle_no.properties +14 -0
  98. package/src/sap/fe/templates/messagebundle_pl.properties +14 -0
  99. package/src/sap/fe/templates/messagebundle_pt.properties +14 -0
  100. package/src/sap/fe/templates/messagebundle_pt_PT.properties +14 -0
  101. package/src/sap/fe/templates/messagebundle_ro.properties +14 -0
  102. package/src/sap/fe/templates/messagebundle_ru.properties +14 -0
  103. package/src/sap/fe/templates/messagebundle_sh.properties +15 -1
  104. package/src/sap/fe/templates/messagebundle_sk.properties +14 -0
  105. package/src/sap/fe/templates/messagebundle_sl.properties +17 -3
  106. package/src/sap/fe/templates/messagebundle_sr.properties +15 -1
  107. package/src/sap/fe/templates/messagebundle_sv.properties +14 -0
  108. package/src/sap/fe/templates/messagebundle_th.properties +14 -0
  109. package/src/sap/fe/templates/messagebundle_tr.properties +14 -0
  110. package/src/sap/fe/templates/messagebundle_uk.properties +14 -0
  111. package/src/sap/fe/templates/messagebundle_vi.properties +16 -2
  112. package/src/sap/fe/templates/messagebundle_zh_CN.properties +14 -0
  113. package/src/sap/fe/templates/messagebundle_zh_TW.properties +14 -0
@@ -5,7 +5,7 @@ import type Share from "sap/fe/core/controllerextensions/Share";
5
5
  import type { ShareMetadata } from "sap/fe/core/controllerextensions/Share";
6
6
  import type { InternalModelContext } from "sap/fe/core/helpers/ModelHelper";
7
7
  import type FilterBar from "sap/fe/macros/controls/FilterBar";
8
- import type TableAPI from "sap/fe/macros/table/TableAPI";
8
+ import type TableAPI from "sap/fe/macros/Table";
9
9
  import type Controller from "sap/ui/core/mvc/Controller";
10
10
  import type View from "sap/ui/core/mvc/View";
11
11
  import HashChanger from "sap/ui/core/routing/HashChanger";
@@ -54,8 +54,7 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/helpers/KeepAliveHelper", "sap/fe/co
54
54
  aStateControls.push(oController._getMultiModeControl());
55
55
  }
56
56
  if (oController._hasMultiVisualizations()) {
57
- aStateControls.push(oController._getSegmentedButton(TemplateContentView.Chart));
58
- aStateControls.push(oController._getSegmentedButton(TemplateContentView.Table));
57
+ aStateControls.push(oController._getSegmentedButton());
59
58
  }
60
59
  aStateControls.push(oView.byId("fe::ListReport"));
61
60
  },
@@ -138,4 +137,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/helpers/KeepAliveHelper", "sap/fe/co
138
137
  };
139
138
  return ViewStateOverride;
140
139
  }, false);
141
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJOYXZUeXBlIiwiTmF2TGlicmFyeSIsIlZhcmlhbnRNYW5hZ2VtZW50VHlwZSIsIkNvcmVMaWJyYXJ5IiwiVmFyaWFudE1hbmFnZW1lbnQiLCJUZW1wbGF0ZUNvbnRlbnRWaWV3IiwiVmlld1N0YXRlT3ZlcnJpZGUiLCJhZGFwdEFwcGx5U3RhdGVOYXZQYXJhbXMiLCJvTmF2UGFyYW1ldGVyIiwiYXBwbHlWYXJpYW50RnJvbVVSTFBhcmFtcyIsImFwcGx5SW5pdGlhbFN0YXRlT25seSIsIm9uQmVmb3JlU3RhdGVBcHBsaWVkIiwiYVByb21pc2VzIiwibmF2aWdhdGlvblR5cGUiLCJvVmlldyIsImdldFZpZXciLCJvQ29udHJvbGxlciIsImdldENvbnRyb2xsZXIiLCJvRmlsdGVyQmFyIiwiX2dldEZpbHRlckJhckNvbnRyb2wiLCJhVGFibGVzIiwiX2dldENvbnRyb2xzIiwic2V0U3VzcGVuZFNlbGVjdGlvbiIsInB1c2giLCJ3YWl0Rm9ySW5pdGlhbGl6YXRpb24iLCJoeWJyaWQiLCJfY2xlYXJGaWx0ZXJDb25kaXRpb25zIiwiZm9yRWFjaCIsIm9UYWJsZSIsImluaXRpYWxpemVkIiwiYWRhcHRCaW5kaW5nUmVmcmVzaENvbnRyb2xzIiwiYUNvbnRyb2xzIiwiYmFzZSIsImFWaWV3Q29udHJvbHMiLCJhQ29udHJvbHNUb1JlZnJlc2giLCJLZWVwQWxpdmVIZWxwZXIiLCJnZXRDb250cm9sc0ZvclJlZnJlc2giLCJBcnJheSIsInByb3RvdHlwZSIsImFwcGx5IiwiYWRhcHRTdGF0ZUNvbnRyb2xzIiwiYVN0YXRlQ29udHJvbHMiLCJvRmlsdGVyQmFyVk0iLCJfZ2V0RmlsdGVyQmFyVk0iLCJfaXNNdWx0aU1vZGUiLCJfZ2V0TXVsdGlNb2RlQ29udHJvbCIsIl9oYXNNdWx0aVZpc3VhbGl6YXRpb25zIiwiX2dldFNlZ21lbnRlZEJ1dHRvbiIsIkNoYXJ0IiwiVGFibGUiLCJieUlkIiwicmV0cmlldmVBZGRpdGlvbmFsU3RhdGVzIiwibUFkZGl0aW9uYWxTdGF0ZXMiLCJzQWxwQ29udGVudFZpZXciLCJnZXRCaW5kaW5nQ29udGV4dCIsImdldFByb3BlcnR5IiwiYWxwQ29udGVudFZpZXciLCJhcHBseUFkZGl0aW9uYWxTdGF0ZXMiLCJvQWRkaXRpb25hbFN0YXRlcyIsIm9JbnRlcm5hbE1vZGVsQ29udGV4dCIsIkRldmljZSIsInN5c3RlbSIsImRlc2t0b3AiLCJIeWJyaWQiLCJnZXRNb2RlbCIsInNldFByb3BlcnR5IiwiZ2V0UGF0aCIsInZpZXciLCJ2YXJpYW50TWFuYWdlbWVudCIsInZpZXdEYXRhIiwiZ2V0Vmlld0RhdGEiLCJQYWdlIiwiQ29udHJvbCIsIl9nZXRGaWx0ZXJCYXJWYXJpYW50Q29udHJvbCIsIk5vbmUiLCJfZm5DbGVhclN0YXRlQmVmb3JleEFwcE5hdiIsIlN0YXRlVXRpbCIsInJldHJpZXZlRXh0ZXJuYWxTdGF0ZSIsInRoZW4iLCJvRXh0ZXJuYWxTdGF0ZSIsIm9Db25kaXRpb24iLCJmaWx0ZXIiLCJmaWVsZCIsImNvbmRpdGlvbiIsImNhdGNoIiwib0Vycm9yIiwiTG9nIiwiZXJyb3IiLCJhSXRlbXMiLCJvQ2xlYXJDb25kaXRpb25zIiwiYXBwbHlFeHRlcm5hbFN0YXRlIiwiaXRlbXMiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIlZpZXdTdGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCB0eXBlIFZpZXdTdGF0ZSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udHJvbGxlcmV4dGVuc2lvbnMvVmlld1N0YXRlXCI7XG5pbXBvcnQgdHlwZSB7IE5hdmlnYXRpb25QYXJhbWV0ZXIgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udHJvbGxlcmV4dGVuc2lvbnMvVmlld1N0YXRlXCI7XG5pbXBvcnQgS2VlcEFsaXZlSGVscGVyIGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0tlZXBBbGl2ZUhlbHBlclwiO1xuaW1wb3J0IHR5cGUgeyBJbnRlcm5hbE1vZGVsQ29udGV4dCB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL01vZGVsSGVscGVyXCI7XG5pbXBvcnQgQ29yZUxpYnJhcnkgZnJvbSBcInNhcC9mZS9jb3JlL2xpYnJhcnlcIjtcbmltcG9ydCB0eXBlIHsgUHJvcGVydHlJbmZvIH0gZnJvbSBcInNhcC9mZS9tYWNyb3MvRGVsZWdhdGVVdGlsXCI7XG5pbXBvcnQgTmF2TGlicmFyeSBmcm9tIFwic2FwL2ZlL25hdmlnYXRpb24vbGlicmFyeVwiO1xuaW1wb3J0IHR5cGUgeyBkZWZhdWx0IGFzIExpc3RSZXBvcnRDb250cm9sbGVyIH0gZnJvbSBcInNhcC9mZS90ZW1wbGF0ZXMvTGlzdFJlcG9ydC9MaXN0UmVwb3J0Q29udHJvbGxlci5jb250cm9sbGVyXCI7XG5pbXBvcnQgRGV2aWNlIGZyb20gXCJzYXAvdWkvRGV2aWNlXCI7XG5pbXBvcnQgdHlwZSBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgdHlwZSBVSTVFbGVtZW50IGZyb20gXCJzYXAvdWkvY29yZS9FbGVtZW50XCI7XG5pbXBvcnQgdHlwZSBWaWV3IGZyb20gXCJzYXAvdWkvY29yZS9tdmMvVmlld1wiO1xuaW1wb3J0IHR5cGUgVmFyaWFudE1hbmFnZW1lbnQgZnJvbSBcInNhcC91aS9mbC92YXJpYW50cy9WYXJpYW50TWFuYWdlbWVudFwiO1xuaW1wb3J0IHR5cGUgRmlsdGVyQmFyIGZyb20gXCJzYXAvdWkvbWRjL0ZpbHRlckJhclwiO1xuaW1wb3J0IHR5cGUgVGFibGUgZnJvbSBcInNhcC91aS9tZGMvVGFibGVcIjtcbmltcG9ydCBTdGF0ZVV0aWwgZnJvbSBcInNhcC91aS9tZGMvcDEzbi9TdGF0ZVV0aWxcIjtcblxudHlwZSBMUlZpZXdEYXRhID0ge1xuXHRjb250cm9sQ29uZmlndXJhdGlvbj86IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHVua25vd24+Pjtcblx0ZW50aXR5U2V0Pzogc3RyaW5nO1xuXHRjb250ZXh0UGF0aD86IHN0cmluZztcblx0dmFyaWFudE1hbmFnZW1lbnQ/OiBib29sZWFuO1xufTtcblxuY29uc3QgTmF2VHlwZSA9IE5hdkxpYnJhcnkuTmF2VHlwZSxcblx0VmFyaWFudE1hbmFnZW1lbnRUeXBlID0gQ29yZUxpYnJhcnkuVmFyaWFudE1hbmFnZW1lbnQsXG5cdFRlbXBsYXRlQ29udGVudFZpZXcgPSBDb3JlTGlicmFyeS5UZW1wbGF0ZUNvbnRlbnRWaWV3O1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10cy1jb21tZW50XG4vLyBAdHMtaWdub3JlXG5jb25zdCBWaWV3U3RhdGVPdmVycmlkZSA9IHtcblx0YWRhcHRBcHBseVN0YXRlTmF2UGFyYW1zOiBmdW5jdGlvbiAob05hdlBhcmFtZXRlcjogTmF2aWdhdGlvblBhcmFtZXRlcik6IHZvaWQge1xuXHRcdC8vIFNldCBhcHBseVZhcmlhbnRGcm9tVVJMUGFyYW1zIHRvIHRydWUgZm9yIExpc3RSZXBvcnRcblx0XHRvTmF2UGFyYW1ldGVyLmFwcGx5VmFyaWFudEZyb21VUkxQYXJhbXMgPSB0cnVlO1xuXHR9LFxuXHRhcHBseUluaXRpYWxTdGF0ZU9ubHk6IGZ1bmN0aW9uICgpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gdHJ1ZTtcblx0fSxcblx0b25CZWZvcmVTdGF0ZUFwcGxpZWQ6IGZ1bmN0aW9uIChcblx0XHR0aGlzOiBWaWV3U3RhdGUgJiB0eXBlb2YgVmlld1N0YXRlT3ZlcnJpZGUsXG5cdFx0YVByb21pc2VzOiBQcm9taXNlPHVua25vd24+W10sXG5cdFx0bmF2aWdhdGlvblR5cGU/OiBzdHJpbmdcblx0KTogdm9pZCB7XG5cdFx0Y29uc3Qgb1ZpZXcgPSB0aGlzLmdldFZpZXcoKSxcblx0XHRcdG9Db250cm9sbGVyID0gb1ZpZXcuZ2V0Q29udHJvbGxlcigpIGFzIExpc3RSZXBvcnRDb250cm9sbGVyLFxuXHRcdFx0b0ZpbHRlckJhciA9IG9Db250cm9sbGVyLl9nZXRGaWx0ZXJCYXJDb250cm9sKCksXG5cdFx0XHRhVGFibGVzID0gb0NvbnRyb2xsZXIuX2dldENvbnRyb2xzKFwidGFibGVcIikgYXMgVGFibGVbXTtcblx0XHRpZiAob0ZpbHRlckJhcikge1xuXHRcdFx0b0ZpbHRlckJhci5zZXRTdXNwZW5kU2VsZWN0aW9uKHRydWUpO1xuXHRcdFx0YVByb21pc2VzLnB1c2gob0ZpbHRlckJhci53YWl0Rm9ySW5pdGlhbGl6YXRpb24oKSk7XG5cdFx0XHQvL1RoaXMgaXMgcmVxdWlyZWQgdG8gcmVtb3ZlIGFueSBleGlzdGluZyBvciBkZWZhdWx0IGZpbHRlciBjb25kaXRpb25zIGJlZm9yZSByZXN0b3JpbmcgdGhlIGZpbHRlciBiYXIgc3RhdGUgaW4gaHlicmlkIG5hdmlnYXRpb24gbW9kZS5cblx0XHRcdGlmIChuYXZpZ2F0aW9uVHlwZSA9PT0gTmF2VHlwZS5oeWJyaWQpIHtcblx0XHRcdFx0dGhpcy5fY2xlYXJGaWx0ZXJDb25kaXRpb25zKG9GaWx0ZXJCYXIpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRhVGFibGVzLmZvckVhY2goZnVuY3Rpb24gKG9UYWJsZTogVGFibGUpOiB2b2lkIHtcblx0XHRcdGFQcm9taXNlcy5wdXNoKChvVGFibGUgYXMgdW5rbm93biBhcyB7IGluaXRpYWxpemVkOiAoKSA9PiBQcm9taXNlPHVua25vd24+IH0pLmluaXRpYWxpemVkKCkpO1xuXHRcdH0pO1xuXHR9LFxuXHRhZGFwdEJpbmRpbmdSZWZyZXNoQ29udHJvbHM6IGZ1bmN0aW9uICh0aGlzOiBWaWV3U3RhdGUsIGFDb250cm9sczogQ29udHJvbFtdKTogdm9pZCB7XG5cdFx0Y29uc3Qgb1ZpZXcgPSB0aGlzLmJhc2UuZ2V0VmlldygpLFxuXHRcdFx0b0NvbnRyb2xsZXIgPSBvVmlldy5nZXRDb250cm9sbGVyKCkgYXMgTGlzdFJlcG9ydENvbnRyb2xsZXIsXG5cdFx0XHRhVmlld0NvbnRyb2xzID0gb0NvbnRyb2xsZXIuX2dldENvbnRyb2xzKCksXG5cdFx0XHRhQ29udHJvbHNUb1JlZnJlc2ggPSBLZWVwQWxpdmVIZWxwZXIuZ2V0Q29udHJvbHNGb3JSZWZyZXNoKG9WaWV3LCBhVmlld0NvbnRyb2xzKTtcblxuXHRcdEFycmF5LnByb3RvdHlwZS5wdXNoLmFwcGx5KGFDb250cm9scywgYUNvbnRyb2xzVG9SZWZyZXNoKTtcblx0fSxcblx0YWRhcHRTdGF0ZUNvbnRyb2xzOiBmdW5jdGlvbiAodGhpczogVmlld1N0YXRlICYgdHlwZW9mIFZpZXdTdGF0ZU92ZXJyaWRlLCBhU3RhdGVDb250cm9sczogVUk1RWxlbWVudFtdKTogdm9pZCB7XG5cdFx0Y29uc3Qgb1ZpZXcgPSB0aGlzLmJhc2UuZ2V0VmlldygpLFxuXHRcdFx0b0NvbnRyb2xsZXIgPSBvVmlldy5nZXRDb250cm9sbGVyKCkgYXMgTGlzdFJlcG9ydENvbnRyb2xsZXI7XG5cdFx0Y29uc3Qgb0ZpbHRlckJhclZNID0gdGhpcy5fZ2V0RmlsdGVyQmFyVk0ob1ZpZXcpO1xuXHRcdGlmIChvRmlsdGVyQmFyVk0pIHtcblx0XHRcdGFTdGF0ZUNvbnRyb2xzLnB1c2gob0ZpbHRlckJhclZNKTtcblx0XHR9XG5cdFx0aWYgKG9Db250cm9sbGVyLl9pc011bHRpTW9kZSgpKSB7XG5cdFx0XHRhU3RhdGVDb250cm9scy5wdXNoKG9Db250cm9sbGVyLl9nZXRNdWx0aU1vZGVDb250cm9sKCkpO1xuXHRcdH1cblx0XHRpZiAob0NvbnRyb2xsZXIuX2hhc011bHRpVmlzdWFsaXphdGlvbnMoKSkge1xuXHRcdFx0YVN0YXRlQ29udHJvbHMucHVzaChvQ29udHJvbGxlci5fZ2V0U2VnbWVudGVkQnV0dG9uKFRlbXBsYXRlQ29udGVudFZpZXcuQ2hhcnQpISk7XG5cdFx0XHRhU3RhdGVDb250cm9scy5wdXNoKG9Db250cm9sbGVyLl9nZXRTZWdtZW50ZWRCdXR0b24oVGVtcGxhdGVDb250ZW50Vmlldy5UYWJsZSkhKTtcblx0XHR9XG5cdFx0YVN0YXRlQ29udHJvbHMucHVzaChvVmlldy5ieUlkKFwiZmU6Okxpc3RSZXBvcnRcIikhKTtcblx0fSxcblx0cmV0cmlldmVBZGRpdGlvbmFsU3RhdGVzOiBmdW5jdGlvbiAoXG5cdFx0dGhpczogVmlld1N0YXRlICYgdHlwZW9mIFZpZXdTdGF0ZU92ZXJyaWRlLFxuXHRcdG1BZGRpdGlvbmFsU3RhdGVzOiB7IGRhdGFMb2FkZWQ6IGJvb2xlYW47IGFscENvbnRlbnRWaWV3OiBzdHJpbmcgfVxuXHQpOiB2b2lkIHtcblx0XHRjb25zdCBvVmlldyA9IHRoaXMuZ2V0VmlldygpLFxuXHRcdFx0b0NvbnRyb2xsZXIgPSBvVmlldy5nZXRDb250cm9sbGVyKCkgYXMgTGlzdFJlcG9ydENvbnRyb2xsZXI7XG5cblx0XHRpZiAob0NvbnRyb2xsZXIuX2hhc011bHRpVmlzdWFsaXphdGlvbnMoKSkge1xuXHRcdFx0Y29uc3Qgc0FscENvbnRlbnRWaWV3ID0gb1ZpZXcuZ2V0QmluZGluZ0NvbnRleHQoXCJpbnRlcm5hbFwiKSEuZ2V0UHJvcGVydHkoXCJhbHBDb250ZW50Vmlld1wiKTtcblx0XHRcdG1BZGRpdGlvbmFsU3RhdGVzLmFscENvbnRlbnRWaWV3ID0gc0FscENvbnRlbnRWaWV3O1xuXHRcdH1cblx0fSxcblx0YXBwbHlBZGRpdGlvbmFsU3RhdGVzOiBmdW5jdGlvbiAoXG5cdFx0dGhpczogVmlld1N0YXRlICYgdHlwZW9mIFZpZXdTdGF0ZU92ZXJyaWRlLFxuXHRcdG9BZGRpdGlvbmFsU3RhdGVzPzogeyBkYXRhTG9hZGVkOiBib29sZWFuOyBhbHBDb250ZW50Vmlldz86IHN0cmluZyB9XG5cdCk6IHZvaWQge1xuXHRcdGNvbnN0IG9WaWV3ID0gdGhpcy5nZXRWaWV3KCksXG5cdFx0XHRvQ29udHJvbGxlciA9IG9WaWV3LmdldENvbnRyb2xsZXIoKSBhcyBMaXN0UmVwb3J0Q29udHJvbGxlcjtcblxuXHRcdGlmIChvQWRkaXRpb25hbFN0YXRlcykge1xuXHRcdFx0aWYgKG9Db250cm9sbGVyLl9oYXNNdWx0aVZpc3VhbGl6YXRpb25zKCkpIHtcblx0XHRcdFx0Y29uc3Qgb0ludGVybmFsTW9kZWxDb250ZXh0ID0gb1ZpZXcuZ2V0QmluZGluZ0NvbnRleHQoXCJpbnRlcm5hbFwiKSBhcyBJbnRlcm5hbE1vZGVsQ29udGV4dDtcblx0XHRcdFx0aWYgKCFEZXZpY2Uuc3lzdGVtLmRlc2t0b3AgJiYgb0FkZGl0aW9uYWxTdGF0ZXMuYWxwQ29udGVudFZpZXcgPT0gVGVtcGxhdGVDb250ZW50Vmlldy5IeWJyaWQpIHtcblx0XHRcdFx0XHRvQWRkaXRpb25hbFN0YXRlcy5hbHBDb250ZW50VmlldyA9IFRlbXBsYXRlQ29udGVudFZpZXcuQ2hhcnQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0XG5cdFx0XHRcdFx0LmdldE1vZGVsKClcblx0XHRcdFx0XHQuc2V0UHJvcGVydHkoYCR7b0ludGVybmFsTW9kZWxDb250ZXh0LmdldFBhdGgoKX0vYWxwQ29udGVudFZpZXdgLCBvQWRkaXRpb25hbFN0YXRlcy5hbHBDb250ZW50Vmlldyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9LFxuXHQvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBwcml2YXRlIGhlbHBlciAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXHQvKipcblx0ICogVmFyaWFudCBtYW5hZ2VtZW50IHVzZWQgYnkgZmlsdGVyIGJhci5cblx0ICogQHBhcmFtIHZpZXcgVmlldyBvZiB0aGUgTFIgZmlsdGVyIGJhclxuXHQgKiBAcmV0dXJucyBWYXJpYW50TWFuYWdlbWVudCBpZiB1c2VkXG5cdCAqL1xuXHRfZ2V0RmlsdGVyQmFyVk06ICh2aWV3OiBWaWV3KTogVmFyaWFudE1hbmFnZW1lbnQgfCB1bmRlZmluZWQgPT4ge1xuXHRcdGxldCB2YXJpYW50TWFuYWdlbWVudDtcblx0XHRjb25zdCB2aWV3RGF0YSA9IHZpZXcuZ2V0Vmlld0RhdGEoKSBhcyBMUlZpZXdEYXRhO1xuXHRcdHN3aXRjaCAodmlld0RhdGEudmFyaWFudE1hbmFnZW1lbnQpIHtcblx0XHRcdGNhc2UgVmFyaWFudE1hbmFnZW1lbnRUeXBlLlBhZ2U6XG5cdFx0XHRcdHZhcmlhbnRNYW5hZ2VtZW50ID0gdmlldy5ieUlkKFwiZmU6OlBhZ2VWYXJpYW50TWFuYWdlbWVudFwiKTtcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHRjYXNlIFZhcmlhbnRNYW5hZ2VtZW50VHlwZS5Db250cm9sOlxuXHRcdFx0XHR2YXJpYW50TWFuYWdlbWVudCA9ICh2aWV3LmdldENvbnRyb2xsZXIoKSBhcyBMaXN0UmVwb3J0Q29udHJvbGxlcikuX2dldEZpbHRlckJhclZhcmlhbnRDb250cm9sKCk7XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0Y2FzZSBWYXJpYW50TWFuYWdlbWVudFR5cGUuTm9uZTpcblx0XHRcdGRlZmF1bHQ6XG5cdFx0XHRcdGJyZWFrO1xuXHRcdH1cblx0XHRyZXR1cm4gdmFyaWFudE1hbmFnZW1lbnQgYXMgVmFyaWFudE1hbmFnZW1lbnQgfCB1bmRlZmluZWQ7XG5cdH0sXG5cblx0Lypcblx0ICogU2V0cyBmaWx0ZXJlZDogZmFsc2UgZmxhZyB0byBldmVyeSBmaWVsZCBzbyB0aGF0IGl0IGNhbiBiZSBjbGVhcmVkIG91dFxuXHQgKlxuXHQgKiBAcGFyYW0gb0ZpbHRlckJhciBmaWx0ZXJiYXIgY29udHJvbCBpcyB1c2VkIHRvIGRpc3BsYXkgZmlsdGVyIHByb3BlcnRpZXMgaW4gYSB1c2VyLWZyaWVuZGx5IG1hbm5lciB0byBwb3B1bGF0ZSB2YWx1ZXMgZm9yIGEgcXVlcnlcblx0ICogQHJldHVybnMgcHJvbWlzZSB3aGljaCB3aWxsIGJlIHJlc29sdmVkIHRvIG9iamVjdFxuXHQgKiBAcHJpdmF0ZVxuXHQgKi9cblx0X2ZuQ2xlYXJTdGF0ZUJlZm9yZXhBcHBOYXY6IGFzeW5jIGZ1bmN0aW9uIChvRmlsdGVyQmFyOiBGaWx0ZXJCYXIpOiBQcm9taXNlPHVua25vd24+IHtcblx0XHRyZXR1cm4gU3RhdGVVdGlsLnJldHJpZXZlRXh0ZXJuYWxTdGF0ZShvRmlsdGVyQmFyKVxuXHRcdFx0LnRoZW4oKG9FeHRlcm5hbFN0YXRlOiB7IGZpbHRlcjogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYm9vbGVhbj5bXT4gfSkgPT4ge1xuXHRcdFx0XHRjb25zdCBvQ29uZGl0aW9uID0gb0V4dGVybmFsU3RhdGUuZmlsdGVyO1xuXHRcdFx0XHRmb3IgKGNvbnN0IGZpZWxkIGluIG9Db25kaXRpb24pIHtcblx0XHRcdFx0XHRpZiAoZmllbGQgIT09IFwiJGVkaXRTdGF0ZVwiICYmIGZpZWxkICE9PSBcIiRzZWFyY2hcIiAmJiBvQ29uZGl0aW9uW2ZpZWxkXSkge1xuXHRcdFx0XHRcdFx0b0NvbmRpdGlvbltmaWVsZF0uZm9yRWFjaCgoY29uZGl0aW9uOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPikgPT4ge1xuXHRcdFx0XHRcdFx0XHRjb25kaXRpb25bXCJmaWx0ZXJlZFwiXSA9IGZhbHNlO1xuXHRcdFx0XHRcdFx0fSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiBvQ29uZGl0aW9uO1xuXHRcdFx0fSlcblx0XHRcdC5jYXRjaChmdW5jdGlvbiAob0Vycm9yOiB1bmtub3duKTogdm9pZCB7XG5cdFx0XHRcdExvZy5lcnJvcihcIkVycm9yIHdoaWxlIHJldHJpZXZpbmcgdGhlIGV4dGVybmFsIHN0YXRlXCIsIG9FcnJvciBhcyBzdHJpbmcpO1xuXHRcdFx0fSk7XG5cdH0sXG5cblx0X2NsZWFyRmlsdGVyQ29uZGl0aW9uczogYXN5bmMgZnVuY3Rpb24gKG9GaWx0ZXJCYXI6IEZpbHRlckJhcik6IFByb21pc2U8dW5rbm93bj4ge1xuXHRcdGNvbnN0IGFJdGVtczogUHJvcGVydHlJbmZvW10gPSBbXTtcblx0XHRyZXR1cm4gb0ZpbHRlckJhci53YWl0Rm9ySW5pdGlhbGl6YXRpb24oKS50aGVuKGFzeW5jICgpID0+IHtcblx0XHRcdGNvbnN0IG9DbGVhckNvbmRpdGlvbnMgPSBhd2FpdCB0aGlzLl9mbkNsZWFyU3RhdGVCZWZvcmV4QXBwTmF2KG9GaWx0ZXJCYXIpO1xuXHRcdFx0cmV0dXJuIFN0YXRlVXRpbC5hcHBseUV4dGVybmFsU3RhdGUob0ZpbHRlckJhciwge1xuXHRcdFx0XHRmaWx0ZXI6IG9DbGVhckNvbmRpdGlvbnMsXG5cdFx0XHRcdGl0ZW1zOiBhSXRlbXNcblx0XHRcdH0pO1xuXHRcdH0pO1xuXHR9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBWaWV3U3RhdGVPdmVycmlkZTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztFQXlCQSxNQUFNQSxPQUFPLEdBQUdDLFVBQVUsQ0FBQ0QsT0FBTztJQUNqQ0UscUJBQXFCLEdBQUdDLFdBQVcsQ0FBQ0MsaUJBQWlCO0lBQ3JEQyxtQkFBbUIsR0FBR0YsV0FBVyxDQUFDRSxtQkFBbUI7O0VBRXREO0VBQ0E7RUFDQSxNQUFNQyxpQkFBaUIsR0FBRztJQUN6QkMsd0JBQXdCLEVBQUUsU0FBQUEsQ0FBVUMsYUFBa0MsRUFBUTtNQUM3RTtNQUNBQSxhQUFhLENBQUNDLHlCQUF5QixHQUFHLElBQUk7SUFDL0MsQ0FBQztJQUNEQyxxQkFBcUIsRUFBRSxTQUFBQSxDQUFBLEVBQXFCO01BQzNDLE9BQU8sSUFBSTtJQUNaLENBQUM7SUFDREMsb0JBQW9CLEVBQUUsU0FBQUEsQ0FFckJDLFNBQTZCLEVBQzdCQyxjQUF1QixFQUNoQjtNQUNQLE1BQU1DLEtBQUssR0FBRyxJQUFJLENBQUNDLE9BQU8sQ0FBQyxDQUFDO1FBQzNCQyxXQUFXLEdBQUdGLEtBQUssQ0FBQ0csYUFBYSxDQUFDLENBQXlCO1FBQzNEQyxVQUFVLEdBQUdGLFdBQVcsQ0FBQ0csb0JBQW9CLENBQUMsQ0FBQztRQUMvQ0MsT0FBTyxHQUFHSixXQUFXLENBQUNLLFlBQVksQ0FBQyxPQUFPLENBQVk7TUFDdkQsSUFBSUgsVUFBVSxFQUFFO1FBQ2ZBLFVBQVUsQ0FBQ0ksbUJBQW1CLENBQUMsSUFBSSxDQUFDO1FBQ3BDVixTQUFTLENBQUNXLElBQUksQ0FBQ0wsVUFBVSxDQUFDTSxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7UUFDbEQ7UUFDQSxJQUFJWCxjQUFjLEtBQUtiLE9BQU8sQ0FBQ3lCLE1BQU0s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
140
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJOYXZUeXBlIiwiTmF2TGlicmFyeSIsIlZhcmlhbnRNYW5hZ2VtZW50VHlwZSIsIkNvcmVMaWJyYXJ5IiwiVmFyaWFudE1hbmFnZW1lbnQiLCJUZW1wbGF0ZUNvbnRlbnRWaWV3IiwiVmlld1N0YXRlT3ZlcnJpZGUiLCJhZGFwdEFwcGx5U3RhdGVOYXZQYXJhbXMiLCJvTmF2UGFyYW1ldGVyIiwiYXBwbHlWYXJpYW50RnJvbVVSTFBhcmFtcyIsImFwcGx5SW5pdGlhbFN0YXRlT25seSIsIm9uQmVmb3JlU3RhdGVBcHBsaWVkIiwiYVByb21pc2VzIiwibmF2aWdhdGlvblR5cGUiLCJvVmlldyIsImdldFZpZXciLCJvQ29udHJvbGxlciIsImdldENvbnRyb2xsZXIiLCJvRmlsdGVyQmFyIiwiX2dldEZpbHRlckJhckNvbnRyb2wiLCJhVGFibGVzIiwiX2dldENvbnRyb2xzIiwic2V0U3VzcGVuZFNlbGVjdGlvbiIsInB1c2giLCJ3YWl0Rm9ySW5pdGlhbGl6YXRpb24iLCJoeWJyaWQiLCJfY2xlYXJGaWx0ZXJDb25kaXRpb25zIiwiZm9yRWFjaCIsIm9UYWJsZSIsImluaXRpYWxpemVkIiwiYWRhcHRCaW5kaW5nUmVmcmVzaENvbnRyb2xzIiwiYUNvbnRyb2xzIiwiYmFzZSIsImFWaWV3Q29udHJvbHMiLCJhQ29udHJvbHNUb1JlZnJlc2giLCJLZWVwQWxpdmVIZWxwZXIiLCJnZXRDb250cm9sc0ZvclJlZnJlc2giLCJBcnJheSIsInByb3RvdHlwZSIsImFwcGx5IiwiYWRhcHRTdGF0ZUNvbnRyb2xzIiwiYVN0YXRlQ29udHJvbHMiLCJvRmlsdGVyQmFyVk0iLCJfZ2V0RmlsdGVyQmFyVk0iLCJfaXNNdWx0aU1vZGUiLCJfZ2V0TXVsdGlNb2RlQ29udHJvbCIsIl9oYXNNdWx0aVZpc3VhbGl6YXRpb25zIiwiX2dldFNlZ21lbnRlZEJ1dHRvbiIsImJ5SWQiLCJyZXRyaWV2ZUFkZGl0aW9uYWxTdGF0ZXMiLCJtQWRkaXRpb25hbFN0YXRlcyIsInNBbHBDb250ZW50VmlldyIsImdldEJpbmRpbmdDb250ZXh0IiwiZ2V0UHJvcGVydHkiLCJhbHBDb250ZW50VmlldyIsImFwcGx5QWRkaXRpb25hbFN0YXRlcyIsIm9BZGRpdGlvbmFsU3RhdGVzIiwib0ludGVybmFsTW9kZWxDb250ZXh0IiwiRGV2aWNlIiwic3lzdGVtIiwiZGVza3RvcCIsIkh5YnJpZCIsIkNoYXJ0IiwiZ2V0TW9kZWwiLCJzZXRQcm9wZXJ0eSIsImdldFBhdGgiLCJ2aWV3IiwidmFyaWFudE1hbmFnZW1lbnQiLCJ2aWV3RGF0YSIsImdldFZpZXdEYXRhIiwiUGFnZSIsIkNvbnRyb2wiLCJfZ2V0RmlsdGVyQmFyVmFyaWFudENvbnRyb2wiLCJOb25lIiwiX2ZuQ2xlYXJTdGF0ZUJlZm9yZXhBcHBOYXYiLCJTdGF0ZVV0aWwiLCJyZXRyaWV2ZUV4dGVybmFsU3RhdGUiLCJ0aGVuIiwib0V4dGVybmFsU3RhdGUiLCJvQ29uZGl0aW9uIiwiZmlsdGVyIiwiZmllbGQiLCJjb25kaXRpb24iLCJjYXRjaCIsIm9FcnJvciIsIkxvZyIsImVycm9yIiwiYUl0ZW1zIiwib0NsZWFyQ29uZGl0aW9ucyIsImFwcGx5RXh0ZXJuYWxTdGF0ZSIsIml0ZW1zIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJWaWV3U3RhdGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgdHlwZSBWaWV3U3RhdGUgZnJvbSBcInNhcC9mZS9jb3JlL2NvbnRyb2xsZXJleHRlbnNpb25zL1ZpZXdTdGF0ZVwiO1xuaW1wb3J0IHR5cGUgeyBOYXZpZ2F0aW9uUGFyYW1ldGVyIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnRyb2xsZXJleHRlbnNpb25zL1ZpZXdTdGF0ZVwiO1xuaW1wb3J0IEtlZXBBbGl2ZUhlbHBlciBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9LZWVwQWxpdmVIZWxwZXJcIjtcbmltcG9ydCB0eXBlIHsgSW50ZXJuYWxNb2RlbENvbnRleHQgfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9Nb2RlbEhlbHBlclwiO1xuaW1wb3J0IENvcmVMaWJyYXJ5IGZyb20gXCJzYXAvZmUvY29yZS9saWJyYXJ5XCI7XG5pbXBvcnQgdHlwZSB7IFByb3BlcnR5SW5mbyB9IGZyb20gXCJzYXAvZmUvbWFjcm9zL0RlbGVnYXRlVXRpbFwiO1xuaW1wb3J0IE5hdkxpYnJhcnkgZnJvbSBcInNhcC9mZS9uYXZpZ2F0aW9uL2xpYnJhcnlcIjtcbmltcG9ydCB0eXBlIHsgZGVmYXVsdCBhcyBMaXN0UmVwb3J0Q29udHJvbGxlciB9IGZyb20gXCJzYXAvZmUvdGVtcGxhdGVzL0xpc3RSZXBvcnQvTGlzdFJlcG9ydENvbnRyb2xsZXIuY29udHJvbGxlclwiO1xuaW1wb3J0IERldmljZSBmcm9tIFwic2FwL3VpL0RldmljZVwiO1xuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IHR5cGUgVUk1RWxlbWVudCBmcm9tIFwic2FwL3VpL2NvcmUvRWxlbWVudFwiO1xuaW1wb3J0IHR5cGUgVmlldyBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL1ZpZXdcIjtcbmltcG9ydCB0eXBlIFZhcmlhbnRNYW5hZ2VtZW50IGZyb20gXCJzYXAvdWkvZmwvdmFyaWFudHMvVmFyaWFudE1hbmFnZW1lbnRcIjtcbmltcG9ydCB0eXBlIEZpbHRlckJhciBmcm9tIFwic2FwL3VpL21kYy9GaWx0ZXJCYXJcIjtcbmltcG9ydCB0eXBlIFRhYmxlIGZyb20gXCJzYXAvdWkvbWRjL1RhYmxlXCI7XG5pbXBvcnQgU3RhdGVVdGlsIGZyb20gXCJzYXAvdWkvbWRjL3AxM24vU3RhdGVVdGlsXCI7XG5cbnR5cGUgTFJWaWV3RGF0YSA9IHtcblx0Y29udHJvbENvbmZpZ3VyYXRpb24/OiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj47XG5cdGVudGl0eVNldD86IHN0cmluZztcblx0Y29udGV4dFBhdGg/OiBzdHJpbmc7XG5cdHZhcmlhbnRNYW5hZ2VtZW50PzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IE5hdlR5cGUgPSBOYXZMaWJyYXJ5Lk5hdlR5cGUsXG5cdFZhcmlhbnRNYW5hZ2VtZW50VHlwZSA9IENvcmVMaWJyYXJ5LlZhcmlhbnRNYW5hZ2VtZW50LFxuXHRUZW1wbGF0ZUNvbnRlbnRWaWV3ID0gQ29yZUxpYnJhcnkuVGVtcGxhdGVDb250ZW50VmlldztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHMtY29tbWVudFxuLy8gQHRzLWlnbm9yZVxuY29uc3QgVmlld1N0YXRlT3ZlcnJpZGUgPSB7XG5cdGFkYXB0QXBwbHlTdGF0ZU5hdlBhcmFtczogZnVuY3Rpb24gKG9OYXZQYXJhbWV0ZXI6IE5hdmlnYXRpb25QYXJhbWV0ZXIpOiB2b2lkIHtcblx0XHQvLyBTZXQgYXBwbHlWYXJpYW50RnJvbVVSTFBhcmFtcyB0byB0cnVlIGZvciBMaXN0UmVwb3J0XG5cdFx0b05hdlBhcmFtZXRlci5hcHBseVZhcmlhbnRGcm9tVVJMUGFyYW1zID0gdHJ1ZTtcblx0fSxcblx0YXBwbHlJbml0aWFsU3RhdGVPbmx5OiBmdW5jdGlvbiAoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRydWU7XG5cdH0sXG5cdG9uQmVmb3JlU3RhdGVBcHBsaWVkOiBmdW5jdGlvbiAoXG5cdFx0dGhpczogVmlld1N0YXRlICYgdHlwZW9mIFZpZXdTdGF0ZU92ZXJyaWRlLFxuXHRcdGFQcm9taXNlczogUHJvbWlzZTx1bmtub3duPltdLFxuXHRcdG5hdmlnYXRpb25UeXBlPzogc3RyaW5nXG5cdCk6IHZvaWQge1xuXHRcdGNvbnN0IG9WaWV3ID0gdGhpcy5nZXRWaWV3KCksXG5cdFx0XHRvQ29udHJvbGxlciA9IG9WaWV3LmdldENvbnRyb2xsZXIoKSBhcyBMaXN0UmVwb3J0Q29udHJvbGxlcixcblx0XHRcdG9GaWx0ZXJCYXIgPSBvQ29udHJvbGxlci5fZ2V0RmlsdGVyQmFyQ29udHJvbCgpLFxuXHRcdFx0YVRhYmxlcyA9IG9Db250cm9sbGVyLl9nZXRDb250cm9scyhcInRhYmxlXCIpIGFzIFRhYmxlW107XG5cdFx0aWYgKG9GaWx0ZXJCYXIpIHtcblx0XHRcdG9GaWx0ZXJCYXIuc2V0U3VzcGVuZFNlbGVjdGlvbih0cnVlKTtcblx0XHRcdGFQcm9taXNlcy5wdXNoKG9GaWx0ZXJCYXIud2FpdEZvckluaXRpYWxpemF0aW9uKCkpO1xuXHRcdFx0Ly9UaGlzIGlzIHJlcXVpcmVkIHRvIHJlbW92ZSBhbnkgZXhpc3Rpbmcgb3IgZGVmYXVsdCBmaWx0ZXIgY29uZGl0aW9ucyBiZWZvcmUgcmVzdG9yaW5nIHRoZSBmaWx0ZXIgYmFyIHN0YXRlIGluIGh5YnJpZCBuYXZpZ2F0aW9uIG1vZGUuXG5cdFx0XHRpZiAobmF2aWdhdGlvblR5cGUgPT09IE5hdlR5cGUuaHlicmlkKSB7XG5cdFx0XHRcdHRoaXMuX2NsZWFyRmlsdGVyQ29uZGl0aW9ucyhvRmlsdGVyQmFyKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0YVRhYmxlcy5mb3JFYWNoKGZ1bmN0aW9uIChvVGFibGU6IFRhYmxlKTogdm9pZCB7XG5cdFx0XHRhUHJvbWlzZXMucHVzaCgob1RhYmxlIGFzIHVua25vd24gYXMgeyBpbml0aWFsaXplZDogKCkgPT4gUHJvbWlzZTx1bmtub3duPiB9KS5pbml0aWFsaXplZCgpKTtcblx0XHR9KTtcblx0fSxcblx0YWRhcHRCaW5kaW5nUmVmcmVzaENvbnRyb2xzOiBmdW5jdGlvbiAodGhpczogVmlld1N0YXRlLCBhQ29udHJvbHM6IENvbnRyb2xbXSk6IHZvaWQge1xuXHRcdGNvbnN0IG9WaWV3ID0gdGhpcy5iYXNlLmdldFZpZXcoKSxcblx0XHRcdG9Db250cm9sbGVyID0gb1ZpZXcuZ2V0Q29udHJvbGxlcigpIGFzIExpc3RSZXBvcnRDb250cm9sbGVyLFxuXHRcdFx0YVZpZXdDb250cm9scyA9IG9Db250cm9sbGVyLl9nZXRDb250cm9scygpLFxuXHRcdFx0YUNvbnRyb2xzVG9SZWZyZXNoID0gS2VlcEFsaXZlSGVscGVyLmdldENvbnRyb2xzRm9yUmVmcmVzaChvVmlldywgYVZpZXdDb250cm9scyk7XG5cblx0XHRBcnJheS5wcm90b3R5cGUucHVzaC5hcHBseShhQ29udHJvbHMsIGFDb250cm9sc1RvUmVmcmVzaCk7XG5cdH0sXG5cdGFkYXB0U3RhdGVDb250cm9sczogZnVuY3Rpb24gKHRoaXM6IFZpZXdTdGF0ZSAmIHR5cGVvZiBWaWV3U3RhdGVPdmVycmlkZSwgYVN0YXRlQ29udHJvbHM6IFVJNUVsZW1lbnRbXSk6IHZvaWQge1xuXHRcdGNvbnN0IG9WaWV3ID0gdGhpcy5iYXNlLmdldFZpZXcoKSxcblx0XHRcdG9Db250cm9sbGVyID0gb1ZpZXcuZ2V0Q29udHJvbGxlcigpIGFzIExpc3RSZXBvcnRDb250cm9sbGVyO1xuXHRcdGNvbnN0IG9GaWx0ZXJCYXJWTSA9IHRoaXMuX2dldEZpbHRlckJhclZNKG9WaWV3KTtcblx0XHRpZiAob0ZpbHRlckJhclZNKSB7XG5cdFx0XHRhU3RhdGVDb250cm9scy5wdXNoKG9GaWx0ZXJCYXJWTSk7XG5cdFx0fVxuXHRcdGlmIChvQ29udHJvbGxlci5faXNNdWx0aU1vZGUoKSkge1xuXHRcdFx0YVN0YXRlQ29udHJvbHMucHVzaChvQ29udHJvbGxlci5fZ2V0TXVsdGlNb2RlQ29udHJvbCgpKTtcblx0XHR9XG5cdFx0aWYgKG9Db250cm9sbGVyLl9oYXNNdWx0aVZpc3VhbGl6YXRpb25zKCkpIHtcblx0XHRcdGFTdGF0ZUNvbnRyb2xzLnB1c2gob0NvbnRyb2xsZXIuX2dldFNlZ21lbnRlZEJ1dHRvbigpISk7XG5cdFx0fVxuXHRcdGFTdGF0ZUNvbnRyb2xzLnB1c2gob1ZpZXcuYnlJZChcImZlOjpMaXN0UmVwb3J0XCIpISk7XG5cdH0sXG5cdHJldHJpZXZlQWRkaXRpb25hbFN0YXRlczogZnVuY3Rpb24gKFxuXHRcdHRoaXM6IFZpZXdTdGF0ZSAmIHR5cGVvZiBWaWV3U3RhdGVPdmVycmlkZSxcblx0XHRtQWRkaXRpb25hbFN0YXRlczogeyBkYXRhTG9hZGVkOiBib29sZWFuOyBhbHBDb250ZW50Vmlldzogc3RyaW5nIH1cblx0KTogdm9pZCB7XG5cdFx0Y29uc3Qgb1ZpZXcgPSB0aGlzLmdldFZpZXcoKSxcblx0XHRcdG9Db250cm9sbGVyID0gb1ZpZXcuZ2V0Q29udHJvbGxlcigpIGFzIExpc3RSZXBvcnRDb250cm9sbGVyO1xuXG5cdFx0aWYgKG9Db250cm9sbGVyLl9oYXNNdWx0aVZpc3VhbGl6YXRpb25zKCkpIHtcblx0XHRcdGNvbnN0IHNBbHBDb250ZW50VmlldyA9IG9WaWV3LmdldEJpbmRpbmdDb250ZXh0KFwiaW50ZXJuYWxcIikhLmdldFByb3BlcnR5KFwiYWxwQ29udGVudFZpZXdcIik7XG5cdFx0XHRtQWRkaXRpb25hbFN0YXRlcy5hbHBDb250ZW50VmlldyA9IHNBbHBDb250ZW50Vmlldztcblx0XHR9XG5cdH0sXG5cdGFwcGx5QWRkaXRpb25hbFN0YXRlczogZnVuY3Rpb24gKFxuXHRcdHRoaXM6IFZpZXdTdGF0ZSAmIHR5cGVvZiBWaWV3U3RhdGVPdmVycmlkZSxcblx0XHRvQWRkaXRpb25hbFN0YXRlcz86IHsgZGF0YUxvYWRlZDogYm9vbGVhbjsgYWxwQ29udGVudFZpZXc/OiBzdHJpbmcgfVxuXHQpOiB2b2lkIHtcblx0XHRjb25zdCBvVmlldyA9IHRoaXMuZ2V0VmlldygpLFxuXHRcdFx0b0NvbnRyb2xsZXIgPSBvVmlldy5nZXRDb250cm9sbGVyKCkgYXMgTGlzdFJlcG9ydENvbnRyb2xsZXI7XG5cblx0XHRpZiAob0FkZGl0aW9uYWxTdGF0ZXMpIHtcblx0XHRcdGlmIChvQ29udHJvbGxlci5faGFzTXVsdGlWaXN1YWxpemF0aW9ucygpKSB7XG5cdFx0XHRcdGNvbnN0IG9JbnRlcm5hbE1vZGVsQ29udGV4dCA9IG9WaWV3LmdldEJpbmRpbmdDb250ZXh0KFwiaW50ZXJuYWxcIikgYXMgSW50ZXJuYWxNb2RlbENvbnRleHQ7XG5cdFx0XHRcdGlmICghRGV2aWNlLnN5c3RlbS5kZXNrdG9wICYmIG9BZGRpdGlvbmFsU3RhdGVzLmFscENvbnRlbnRWaWV3ID09IFRlbXBsYXRlQ29udGVudFZpZXcuSHlicmlkKSB7XG5cdFx0XHRcdFx0b0FkZGl0aW9uYWxTdGF0ZXMuYWxwQ29udGVudFZpZXcgPSBUZW1wbGF0ZUNvbnRlbnRWaWV3LkNoYXJ0O1xuXHRcdFx0XHR9XG5cdFx0XHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dFxuXHRcdFx0XHRcdC5nZXRNb2RlbCgpXG5cdFx0XHRcdFx0LnNldFByb3BlcnR5KGAke29JbnRlcm5hbE1vZGVsQ29udGV4dC5nZXRQYXRoKCl9L2FscENvbnRlbnRWaWV3YCwgb0FkZGl0aW9uYWxTdGF0ZXMuYWxwQ29udGVudFZpZXcpO1xuXHRcdFx0fVxuXHRcdH1cblx0fSxcblx0LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogcHJpdmF0ZSBoZWxwZXIgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblx0LyoqXG5cdCAqIFZhcmlhbnQgbWFuYWdlbWVudCB1c2VkIGJ5IGZpbHRlciBiYXIuXG5cdCAqIEBwYXJhbSB2aWV3IFZpZXcgb2YgdGhlIExSIGZpbHRlciBiYXJcblx0ICogQHJldHVybnMgVmFyaWFudE1hbmFnZW1lbnQgaWYgdXNlZFxuXHQgKi9cblx0X2dldEZpbHRlckJhclZNOiAodmlldzogVmlldyk6IFZhcmlhbnRNYW5hZ2VtZW50IHwgdW5kZWZpbmVkID0+IHtcblx0XHRsZXQgdmFyaWFudE1hbmFnZW1lbnQ7XG5cdFx0Y29uc3Qgdmlld0RhdGEgPSB2aWV3LmdldFZpZXdEYXRhKCkgYXMgTFJWaWV3RGF0YTtcblx0XHRzd2l0Y2ggKHZpZXdEYXRhLnZhcmlhbnRNYW5hZ2VtZW50KSB7XG5cdFx0XHRjYXNlIFZhcmlhbnRNYW5hZ2VtZW50VHlwZS5QYWdlOlxuXHRcdFx0XHR2YXJpYW50TWFuYWdlbWVudCA9IHZpZXcuYnlJZChcImZlOjpQYWdlVmFyaWFudE1hbmFnZW1lbnRcIik7XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0Y2FzZSBWYXJpYW50TWFuYWdlbWVudFR5cGUuQ29udHJvbDpcblx0XHRcdFx0dmFyaWFudE1hbmFnZW1lbnQgPSAodmlldy5nZXRDb250cm9sbGVyKCkgYXMgTGlzdFJlcG9ydENvbnRyb2xsZXIpLl9nZXRGaWx0ZXJCYXJWYXJpYW50Q29udHJvbCgpO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdGNhc2UgVmFyaWFudE1hbmFnZW1lbnRUeXBlLk5vbmU6XG5cdFx0XHRkZWZhdWx0OlxuXHRcdFx0XHRicmVhaztcblx0XHR9XG5cdFx0cmV0dXJuIHZhcmlhbnRNYW5hZ2VtZW50IGFzIFZhcmlhbnRNYW5hZ2VtZW50IHwgdW5kZWZpbmVkO1xuXHR9LFxuXG5cdC8qXG5cdCAqIFNldHMgZmlsdGVyZWQ6IGZhbHNlIGZsYWcgdG8gZXZlcnkgZmllbGQgc28gdGhhdCBpdCBjYW4gYmUgY2xlYXJlZCBvdXRcblx0ICpcblx0ICogQHBhcmFtIG9GaWx0ZXJCYXIgZmlsdGVyYmFyIGNvbnRyb2wgaXMgdXNlZCB0byBkaXNwbGF5IGZpbHRlciBwcm9wZXJ0aWVzIGluIGEgdXNlci1mcmllbmRseSBtYW5uZXIgdG8gcG9wdWxhdGUgdmFsdWVzIGZvciBhIHF1ZXJ5XG5cdCAqIEByZXR1cm5zIHByb21pc2Ugd2hpY2ggd2lsbCBiZSByZXNvbHZlZCB0byBvYmplY3Rcblx0ICogQHByaXZhdGVcblx0ICovXG5cdF9mbkNsZWFyU3RhdGVCZWZvcmV4QXBwTmF2OiBhc3luYyBmdW5jdGlvbiAob0ZpbHRlckJhcjogRmlsdGVyQmFyKTogUHJvbWlzZTx1bmtub3duPiB7XG5cdFx0cmV0dXJuIFN0YXRlVXRpbC5yZXRyaWV2ZUV4dGVybmFsU3RhdGUob0ZpbHRlckJhcilcblx0XHRcdC50aGVuKChvRXh0ZXJuYWxTdGF0ZTogeyBmaWx0ZXI6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+W10+IH0pID0+IHtcblx0XHRcdFx0Y29uc3Qgb0NvbmRpdGlvbiA9IG9FeHRlcm5hbFN0YXRlLmZpbHRlcjtcblx0XHRcdFx0Zm9yIChjb25zdCBmaWVsZCBpbiBvQ29uZGl0aW9uKSB7XG5cdFx0XHRcdFx0aWYgKGZpZWxkICE9PSBcIiRlZGl0U3RhdGVcIiAmJiBmaWVsZCAhPT0gXCIkc2VhcmNoXCIgJiYgb0NvbmRpdGlvbltmaWVsZF0pIHtcblx0XHRcdFx0XHRcdG9Db25kaXRpb25bZmllbGRdLmZvckVhY2goKGNvbmRpdGlvbjogUmVjb3JkPHN0cmluZywgYm9vbGVhbj4pID0+IHtcblx0XHRcdFx0XHRcdFx0Y29uZGl0aW9uW1wiZmlsdGVyZWRcIl0gPSBmYWxzZTtcblx0XHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gb0NvbmRpdGlvbjtcblx0XHRcdH0pXG5cdFx0XHQuY2F0Y2goZnVuY3Rpb24gKG9FcnJvcjogdW5rbm93bik6IHZvaWQge1xuXHRcdFx0XHRMb2cuZXJyb3IoXCJFcnJvciB3aGlsZSByZXRyaWV2aW5nIHRoZSBleHRlcm5hbCBzdGF0ZVwiLCBvRXJyb3IgYXMgc3RyaW5nKTtcblx0XHRcdH0pO1xuXHR9LFxuXG5cdF9jbGVhckZpbHRlckNvbmRpdGlvbnM6IGFzeW5jIGZ1bmN0aW9uIChvRmlsdGVyQmFyOiBGaWx0ZXJCYXIpOiBQcm9taXNlPHVua25vd24+IHtcblx0XHRjb25zdCBhSXRlbXM6IFByb3BlcnR5SW5mb1tdID0gW107XG5cdFx0cmV0dXJuIG9GaWx0ZXJCYXIud2FpdEZvckluaXRpYWxpemF0aW9uKCkudGhlbihhc3luYyAoKSA9PiB7XG5cdFx0XHRjb25zdCBvQ2xlYXJDb25kaXRpb25zID0gYXdhaXQgdGhpcy5fZm5DbGVhclN0YXRlQmVmb3JleEFwcE5hdihvRmlsdGVyQmFyKTtcblx0XHRcdHJldHVybiBTdGF0ZVV0aWwuYXBwbHlFeHRlcm5hbFN0YXRlKG9GaWx0ZXJCYXIsIHtcblx0XHRcdFx0ZmlsdGVyOiBvQ2xlYXJDb25kaXRpb25zLFxuXHRcdFx0XHRpdGVtczogYUl0ZW1zXG5cdFx0XHR9KTtcblx0XHR9KTtcblx0fVxu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
@@ -77,8 +77,7 @@ const ViewStateOverride = {
77
77
  aStateControls.push(oController._getMultiModeControl());
78
78
  }
79
79
  if (oController._hasMultiVisualizations()) {
80
- aStateControls.push(oController._getSegmentedButton(TemplateContentView.Chart)!);
81
- aStateControls.push(oController._getSegmentedButton(TemplateContentView.Table)!);
80
+ aStateControls.push(oController._getSegmentedButton()!);
82
81
  }
83
82
  aStateControls.push(oView.byId("fe::ListReport")!);
84
83
  },
@@ -2,13 +2,45 @@
2
2
  xmlns="sap.fe.templates.controls"
3
3
  xmlns:m="sap.m"
4
4
  xmlns:core="sap.ui.core"
5
+ xmlns:contentSwitcher="sap.fe.macros.contentSwitcher"
5
6
  xmlns:template="http://schemas.sap.com/sapui5/extension/sap.ui.core.template/1"
7
+ template:require="{
8
+ COMMON: 'sap/fe/macros/CommonHelper'
9
+ }"
6
10
  >
7
11
  <template:if test="{= ${converterContext>hasMultiVisualizations} }">
8
12
  <template:then>
9
13
  <m:VBox fitContainer="true" alignItems="Stretch" alignContent="Stretch" justifyContent="Start" renderType="Div">
10
14
  <template:repeat list="{converterContext>views}" var="view">
11
15
  <template:with path="view>primaryVisualization" var="presentationContext">
16
+ <template:if test="{= ${view>contentSwitcherId}}">
17
+ <template:then>
18
+ <contentSwitcher:ContentSwitcher id="{view>contentSwitcherId}" selectedKey="{pageInternal>alpContentView}">
19
+ <template:if test="{= COMMON.isDesktop() }">
20
+ <template:then>
21
+ <contentSwitcher:ContentSwitcherItem
22
+ text="{sap.fe.i18n>M_COMMON_HYBRID_SEGMENTED_BUTTON_ITEM_TOOLTIP}"
23
+ icon="sap-icon://chart-table-view"
24
+ key="Hybrid"
25
+ showAll="true"
26
+ />
27
+ </template:then>
28
+ </template:if>
29
+ <contentSwitcher:ContentSwitcherItem
30
+ text="{sap.fe.i18n>M_COMMON_CHART_SEGMENTED_BUTTON_ITEM_TOOLTIP}"
31
+ icon="sap-icon://bar-chart"
32
+ key="Chart"
33
+ controlToSwitch="{view>chartControlId}::Chart"
34
+ />
35
+ <contentSwitcher:ContentSwitcherItem
36
+ text="{sap.fe.i18n>M_COMMON_TABLE_SEGMENTED_BUTTON_ITEM_TOOLTIP}"
37
+ icon="sap-icon://table-view"
38
+ key="Table"
39
+ controlToSwitch="{view>tableControlId}::Table"
40
+ />
41
+ </contentSwitcher:ContentSwitcher>
42
+ </template:then>
43
+ </template:if>
12
44
  <template:repeat list="{presentationContext>visualizations}" var="visualizationDefinition">
13
45
  <m:MessageStrip
14
46
  text="{= '{parts:[{path:\'internal>controls/ignoredFields' + (${visualizationDefinition>collection}) + (${visualizationDefinition>type}) + '\'}, {value: \'' + (${visualizationDefinition>type} === 'Chart') + '\'},{value: ' + (${visualizationDefinition>type} === 'Chart' ? JSON.stringify(${visualizationDefinition>applySupported}) : '\'\'') + '}], formatter: \'.formatters.setALPControlMessageStrip\'}'}"
@@ -21,5 +21,6 @@
21
21
  variantSelected=".handlers.onVariantSelected"
22
22
  filterBar="{converterContext>filterBarId}"
23
23
  segmentedButtonPressed=".handlers.onSegmentedButtonPressed"
24
+ contentSwitcher="{view>contentSwitcherId}"
24
25
  />
25
26
  </core:FragmentDefinition>
@@ -1,5 +1,5 @@
1
1
  <core:FragmentDefinition
2
- xmlns:macro="sap.fe.macros.internal"
2
+ xmlns:macros="sap.fe.macros"
3
3
  xmlns:macrosTable="sap.fe.macros.table"
4
4
  xmlns:macrosFPM="sap.fe.macros.fpm"
5
5
  xmlns:core="sap.ui.core"
@@ -8,7 +8,8 @@
8
8
  TABLEHELPER: 'sap/fe/macros/table/TableHelper'
9
9
  }"
10
10
  >
11
- <macro:Table
11
+ <macros:Table
12
+ templateType="{viewData>/converterType}"
12
13
  id="{visualizationDefinition>annotation/apiId}"
13
14
  contentId="{visualizationDefinition>annotation/id}"
14
15
  metaPath="{presentationContext>annotationPath}"
@@ -32,8 +33,9 @@
32
33
  variantManagement="{visualizationDefinition>annotation/variantManagement}"
33
34
  readOnly="{visualizationDefinition>control/readOnly}"
34
35
  ignoredFields="{visualizationDefinition>control/ignoredFields}"
36
+ contentSwitcher="{view>contentSwitcherId}"
35
37
  >
36
- <macro:columns>
38
+ <macros:columns>
37
39
  <template:repeat list="{visualizationDefinition>columns}" var="column">
38
40
  <template:if test="{= ${column>type} === 'Default' }">
39
41
  <macrosTable:Column key="{column>key}">
@@ -45,13 +47,13 @@
45
47
  <macrosFPM:childCustomData>
46
48
  <core:CustomData
47
49
  key="AssociatedProperties"
48
- value="{= TABLEHELPER.createBindingToLoadProperties(${column>properties})}"
50
+ value="{= TABLEHELPER.createBindingToLoadProperties(${column>loadedProperties})}"
49
51
  />
50
52
  </macrosFPM:childCustomData>
51
53
  </macrosFPM:CustomFragment>
52
54
  </macrosTable:Column>
53
55
  </template:if>
54
56
  </template:repeat>
55
- </macro:columns>
56
- </macro:Table>
57
+ </macros:columns>
58
+ </macros:Table>
57
59
  </core:FragmentDefinition>
@@ -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, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10;
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;
9
9
  var extendObjectPageDefinition = ExtendPageDefinition.extendObjectPageDefinition;
10
10
  var property = ClassSupport.property;
11
11
  var defineUI5Class = ClassSupport.defineUI5Class;
@@ -45,7 +45,10 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/core/CommonUt
45
45
  type: "boolean"
46
46
  }), _dec11 = property({
47
47
  type: "boolean",
48
- defaultValue: false
48
+ defaultValue: undefined
49
+ }), _dec12 = property({
50
+ type: "boolean",
51
+ defaultValue: undefined
49
52
  }), _dec(_class = (_class2 = /*#__PURE__*/function (_TemplateComponent) {
50
53
  function ObjectPageComponent() {
51
54
  var _this;
@@ -92,6 +95,7 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/core/CommonUt
92
95
  */
93
96
  _initializerDefineProperty(_this, "openInEditMode", _descriptor9, _this);
94
97
  _initializerDefineProperty(_this, "enableLazyLoading", _descriptor10, _this);
98
+ _initializerDefineProperty(_this, "disableObjectPageRequestOptimization", _descriptor11, _this);
95
99
  _this.DeferredContextCreated = false;
96
100
  return _this;
97
101
  }
@@ -111,36 +115,37 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/core/CommonUt
111
115
  // TODO: this should be ideally be handled by the editflow/routing without the need to have this method in the
112
116
  // object page - for now keep it here
113
117
  ;
114
- _proto.createDeferredContext = function createDeferredContext(sPath, oListBinding, parentContext, data, bActionCreate) {
118
+ _proto.createDeferredContext = function createDeferredContext(sPath, parameters, bActionCreate) {
115
119
  if (!this.DeferredContextCreated) {
116
120
  this.DeferredContextCreated = true;
117
- const oParameters = {
118
- $$groupId: "$auto.Heroes",
119
- $$updateGroupId: "$auto"
120
- };
121
- const metaModel = this.getModel().getMetaModel();
122
- if (ModelHelper.isCollaborationDraftSupported(metaModel)) {
123
- oParameters.$select = "DraftAdministrativeData/DraftAdministrativeUser";
121
+ if (!parameters.listBinding || parameters.listBinding.getUpdateGroupId() === CommonUtils.INLINEEDIT_UPDATEGROUPID) {
122
+ const oParameters = {
123
+ $$groupId: "$auto.Heroes",
124
+ $$updateGroupId: "$auto"
125
+ };
126
+ const metaModel = this.getModel().getMetaModel();
127
+ if (ModelHelper.isCollaborationDraftSupported(metaModel)) {
128
+ oParameters.$select = "DraftAdministrativeData/DraftAdministrativeUser";
129
+ }
130
+ parameters.listBinding = this.getModel().bindList(sPath.replace("(...)", ""), undefined, undefined, undefined, oParameters);
124
131
  }
125
- if (!oListBinding) {
126
- oListBinding = this.getModel().bindList(sPath.replace("(...)", ""), undefined, undefined, undefined, oParameters);
127
- }
128
- const oStartUpParams = this.oAppComponent && this.oAppComponent.getComponentData() && this.oAppComponent.getComponentData().startupParameters,
129
- oInboundParameters = this.getViewData().inboundParameters;
130
- let createParams;
131
- if (oStartUpParams && oStartUpParams.preferredMode && oStartUpParams.preferredMode[0].includes("create")) {
132
- createParams = Object.assign({}, data, CommonUtils.getAdditionalParamsForCreate(oStartUpParams, oInboundParameters));
132
+ const oStartUpParams = this.oAppComponent?.getComponentData()?.startupParameters;
133
+ let dataForCreate;
134
+ if (oStartUpParams?.preferredMode?.[0].includes("create") === true) {
135
+ const oInboundParameters = this.getViewData().inboundParameters;
136
+ dataForCreate = Object.assign({}, parameters.data, CommonUtils.getAdditionalParamsForCreate(oStartUpParams, oInboundParameters));
133
137
  } else {
134
- createParams = data;
138
+ dataForCreate = parameters.data;
135
139
  }
136
140
 
137
141
  // for now wait until the view and the controller is created
138
- this.getRootControl().getController().editFlow.createDocument(oListBinding, {
142
+ this.getRootControl().getController().editFlow.createDocument(parameters.listBinding, {
139
143
  creationMode: CreationMode.Sync,
140
144
  createAction: bActionCreate,
141
- data: createParams,
145
+ data: dataForCreate,
142
146
  bFromDeferred: true,
143
- selectedContexts: parentContext ? [parentContext] : undefined
147
+ selectedContexts: parameters.parentContext ? [parameters.parentContext] : undefined,
148
+ requestAtLeast: parameters.requestAtLeast
144
149
  }).finally(() => {
145
150
  this.DeferredContextCreated = false;
146
151
  }).catch(function () {
@@ -218,7 +223,12 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/core/CommonUt
218
223
  enumerable: true,
219
224
  writable: true,
220
225
  initializer: null
226
+ }), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, "disableObjectPageRequestOptimization", [_dec12], {
227
+ configurable: true,
228
+ enumerable: true,
229
+ writable: true,
230
+ initializer: null
221
231
  }), _class2)) || _class);
222
232
  return ObjectPageComponent;
223
233
  }, false);
224
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYXJpYW50TWFuYWdlbWVudCIsIkNvcmVMaWJyYXJ5IiwiQ3JlYXRpb25Nb2RlIiwiU2VjdGlvbkxheW91dCIsInRlbXBsYXRlTGliIiwiT2JqZWN0UGFnZSIsIk9iamVjdFBhZ2VDb21wb25lbnQiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJsaWJyYXJ5IiwibWFuaWZlc3QiLCJfZGVjMiIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsIk5vbmUiLCJfZGVjMyIsIlBhZ2UiLCJfZGVjNCIsIl9kZWM1IiwiX2RlYzYiLCJfZGVjNyIsIl9kZWM4IiwiX2RlYzkiLCJfZGVjMTAiLCJfZGVjMTEiLCJfY2xhc3MiLCJfY2xhc3MyIiwiX1RlbXBsYXRlQ29tcG9uZW50IiwiX3RoaXMiLCJfbGVuIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiYXJncyIsIkFycmF5IiwiX2tleSIsImNhbGwiLCJfaW5pdGlhbGl6ZXJEZWZpbmVQcm9wZXJ0eSIsIl9kZXNjcmlwdG9yIiwiX2Rlc2NyaXB0b3IyIiwiX2Rlc2NyaXB0b3IzIiwiX2Rlc2NyaXB0b3I0IiwiX2Rlc2NyaXB0b3I1IiwiX2Rlc2NyaXB0b3I2IiwiX2Rlc2NyaXB0b3I3IiwiX2Rlc2NyaXB0b3I4IiwiX2Rlc2NyaXB0b3I5IiwiX2Rlc2NyaXB0b3IxMCIsIkRlZmVycmVkQ29udGV4dENyZWF0ZWQiLCJfaW5oZXJpdHNMb29zZSIsIl9wcm90byIsInByb3RvdHlwZSIsImluaXQiLCJicmVhZGNydW1ic0hpZXJhcmNoeU1vZGUiLCJpc0NvbnRleHRFeHBlY3RlZCIsImV4dGVuZFBhZ2VEZWZpbml0aW9uIiwicGFnZURlZmluaXRpb24iLCJjb252ZXJ0ZXJDb250ZXh0IiwiZXh0ZW5kT2JqZWN0UGFnZURlZmluaXRpb24iLCJjcmVhdGVEZWZlcnJlZENvbnRleHQiLCJzUGF0aCIsIm9MaXN0QmluZGluZyIsInBhcmVudENvbnRleHQiLCJkYXRhIiwiYkFjdGlvbkNyZWF0ZSIsIm9QYXJhbWV0ZXJzIiwiJCRncm91cElkIiwiJCR1cGRhdGVHcm91cElkIiwibWV0YU1vZGVsIiwiZ2V0TW9kZWwiLCJnZXRNZXRhTW9kZWwiLCJNb2RlbEhlbHBlciIsImlzQ29sbGFib3JhdGlvbkRyYWZ0U3VwcG9ydGVkIiwiJHNlbGVjdCIsImJpbmRMaXN0IiwicmVwbGFjZSIsInVuZGVmaW5lZCIsIm9TdGFydFVwUGFyYW1zIiwib0FwcENvbXBvbmVudCIsImdldENvbXBvbmVudERhdGEiLCJzdGFydHVwUGFyYW1ldGVycyIsIm9JbmJvdW5kUGFyYW1ldGVycyIsImdldFZpZXdEYXRhIiwiaW5ib3VuZFBhcmFtZXRlcnMiLCJjcmVhdGVQYXJhbXMiLCJwcmVmZXJyZWRNb2RlIiwiaW5jbHVkZXMiLCJPYmplY3QiLCJhc3NpZ24iLCJDb21tb25VdGlscyIsImdldEFkZGl0aW9uYWxQYXJhbXNGb3JDcmVhdGUiLCJnZXRSb290Q29udHJvbCIsImdldENvbnRyb2xsZXIiLCJlZGl0RmxvdyIsImNyZWF0ZURvY3VtZW50IiwiY3JlYXRpb25Nb2RlIiwiU3luYyIsImNyZWF0ZUFjdGlvbiIsImJGcm9tRGVmZXJyZWQiLCJzZWxlY3RlZENvbnRleHRzIiwiZmluYWxseSIsImNhdGNoIiwic2V0VmFyaWFudE1hbmFnZW1lbnQiLCJzVmFyaWFudE1hbmFnZW1lbnQiLCJMb2ciLCJlcnJvciIsInNldFByb3BlcnR5IiwiaXNPcGVuSW5FZGl0TW9kZSIsIm9wZW5JbkVkaXRNb2RlIiwiX2dldENvbnRyb2xsZXJOYW1lIiwiVGVtcGxhdGVDb21wb25lbnQiLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yIiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsIndyaXRhYmxlIiwiaW5pdGlhbGl6ZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIkNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCB7IGRlZmluZVVJNUNsYXNzLCBwcm9wZXJ0eSB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB0eXBlIHsgSW5ib3VuZFBhcmFtZXRlciB9IGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IENvbW1vblV0aWxzIGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IFRlbXBsYXRlQ29tcG9uZW50IGZyb20gXCJzYXAvZmUvY29yZS9UZW1wbGF0ZUNvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgQ29udmVydGVyQ29udGV4dCBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9Db252ZXJ0ZXJDb250ZXh0XCI7XG5pbXBvcnQgdHlwZSB7IE9iamVjdFBhZ2VEZWZpbml0aW9uIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvdGVtcGxhdGVzL09iamVjdFBhZ2VDb252ZXJ0ZXJcIjtcbmltcG9ydCBNb2RlbEhlbHBlciBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9Nb2RlbEhlbHBlclwiO1xuaW1wb3J0IENvcmVMaWJyYXJ5IGZyb20gXCJzYXAvZmUvY29yZS9saWJyYXJ5XCI7XG5pbXBvcnQgdHlwZSB7IEZpbmFsUGFnZURlZmluaXRpb24gfSBmcm9tIFwic2FwL2ZlL3RlbXBsYXRlcy9PYmplY3RQYWdlL0V4dGVuZFBhZ2VEZWZpbml0aW9uXCI7XG5pbXBvcnQgeyBleHRlbmRPYmplY3RQYWdlRGVmaW5pdGlvbiB9IGZyb20gXCJzYXAvZmUvdGVtcGxhdGVzL09iamVjdFBhZ2UvRXh0ZW5kUGFnZURlZmluaXRpb25cIjtcbmltcG9ydCB0ZW1wbGF0ZUxpYiBmcm9tIFwic2FwL2ZlL3RlbXBsYXRlcy9saWJyYXJ5XCI7XG5pbXBvcnQgdHlwZSBDb250ZXh0IGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvQ29udGV4dFwiO1xuaW1wb3J0IHR5cGUgT0RhdGFMaXN0QmluZGluZyBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L09EYXRhTGlzdEJpbmRpbmdcIjtcblxuY29uc3QgVmFyaWFudE1hbmFnZW1lbnQgPSBDb3JlTGlicmFyeS5WYXJpYW50TWFuYWdlbWVudCxcblx0Q3JlYXRpb25Nb2RlID0gQ29yZUxpYnJhcnkuQ3JlYXRpb25Nb2RlO1xuY29uc3QgU2VjdGlvbkxheW91dCA9IHRlbXBsYXRlTGliLk9iamVjdFBhZ2UuU2VjdGlvbkxheW91dDtcbkBkZWZpbmVVSTVDbGFzcyhcInNhcC5mZS50ZW1wbGF0ZXMuT2JqZWN0UGFnZS5Db21wb25lbnRcIiwgeyBsaWJyYXJ5OiBcInNhcC5mZS50ZW1wbGF0ZXNcIiwgbWFuaWZlc3Q6IFwianNvblwiIH0pXG5jbGFzcyBPYmplY3RQYWdlQ29tcG9uZW50IGV4dGVuZHMgVGVtcGxhdGVDb21wb25lbnQge1xuXHQvKipcblx0ICogRGVmaW5lcyBpZiBhbmQgb24gd2hpY2ggbGV2ZWwgdmFyaWFudHMgY2FuIGJlIGNvbmZpZ3VyZWQ6XG5cdCAqIFx0XHROb25lOiBubyB2YXJpYW50IGNvbmZpZ3VyYXRpb24gYXQgYWxsXG5cdCAqIFx0XHRQYWdlOiBvbmUgdmFyaWFudCBjb25maWd1cmF0aW9uIGZvciB0aGUgd2hvbGUgcGFnZVxuXHQgKiBcdFx0Q29udHJvbDogdmFyaWFudCBjb25maWd1cmF0aW9uIG9uIGNvbnRyb2wgbGV2ZWxcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzYXAuZmUuY29yZS5WYXJpYW50TWFuYWdlbWVudFwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogVmFyaWFudE1hbmFnZW1lbnQuTm9uZVxuXHR9KVxuXHR2YXJpYW50TWFuYWdlbWVudDogdHlwZW9mIFZhcmlhbnRNYW5hZ2VtZW50O1xuXG5cdC8qKlxuXHQgKiBEZWZpbmVzIGhvdyB0aGUgc2VjdGlvbnMgYXJlIHJlbmRlcmVkXG5cdCAqIFx0XHRQYWdlOiBhbGwgc2VjdGlvbnMgYXJlIHNob3duIG9uIG9uZSBwYWdlXG5cdCAqIFx0XHRUYWJzOiBlYWNoIHRvcC1sZXZlbCBzZWN0aW9uIGlzIHNob3duIGluIGFuIG93biB0YWJcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzYXAuZmUudGVtcGxhdGVzLk9iamVjdFBhZ2UuU2VjdGlvbkxheW91dFwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogU2VjdGlvbkxheW91dC5QYWdlXG5cdH0pXG5cdHNlY3Rpb25MYXlvdXQ6IHR5cGVvZiBTZWN0aW9uTGF5b3V0O1xuXG5cdC8qKlxuXHQgKiBFbmFibGVzIHRoZSByZWxhdGVkIGFwcHMgZmVhdHVyZXNcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJib29sZWFuXCIsXG5cdFx0ZGVmYXVsdFZhbHVlOiBmYWxzZVxuXHR9KVxuXHRzaG93UmVsYXRlZEFwcHMhOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBFbmFibGVzIHRoZSAnTWljcm9zb2Z0IFRlYW1zID4gQXMgQ2FyZCcgb3B0aW9uIGluIHRoZSAnU2hhcmUnIG1lbnVcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJvYmplY3RcIlxuXHR9KVxuXHRzaGFyZSE6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+PjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcIm9iamVjdFwiIH0pXG5cdGFkZGl0aW9uYWxTZW1hbnRpY09iamVjdHMhOiBvYmplY3Q7XG5cblx0LyoqXG5cdCAqIEVuYWJsZXMgdGhlIGVkaXRhYmxlIG9iamVjdCBwYWdlIGhlYWRlclxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIixcblx0XHRkZWZhdWx0VmFsdWU6IHRydWVcblx0fSlcblx0ZWRpdGFibGVIZWFkZXJDb250ZW50ITogYm9vbGVhbjtcblxuXHQvKipcblx0ICogU2hvd3MgYSB0ZXh0IGluc3RlYWQgb2YgYW4gSWxsdXN0cmF0ZWRNZXNzYWdlIGluIHRoZSBub0RhdGEgYWdncmVnYXRpb24gb2YgVGFibGVzIG9yIENoYXJ0c1xuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIixcblx0XHRkZWZhdWx0VmFsdWU6IGZhbHNlXG5cdH0pXG5cdHVzZVRleHRGb3JOb0RhdGFNZXNzYWdlcyE6IGJvb2xlYW47XG5cblx0LyoqXG5cdCAqIERlZmluZXMgdGhlIHByb3BlcnRpZXMgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGluYm91bmQgTmF2aWdhdGlvblxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcIm9iamVjdFwiXG5cdH0pXG5cdGluYm91bmRQYXJhbWV0ZXJzITogb2JqZWN0O1xuXG5cdC8qKlxuXHQgKiBEZWZpbmVzIGlmIGFuIG9iamVjdCBwYWdlIHNob3VsZCBiZSBvcGVuZWQgaW4gZWRpdCBtb2RlXG5cdCAqL1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYm9vbGVhblwiXG5cdH0pXG5cdG9wZW5JbkVkaXRNb2RlOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJib29sZWFuXCIsXG5cdFx0ZGVmYXVsdFZhbHVlOiBmYWxzZVxuXHR9KVxuXHRlbmFibGVMYXp5TG9hZGluZyE6IGJvb2xlYW47XG5cblx0cHJpdmF0ZSBEZWZlcnJlZENvbnRleHRDcmVhdGVkID0gZmFsc2U7XG5cblx0aW5pdCgpOiB2b2lkIHtcblx0XHR0aGlzLmJyZWFkY3J1bWJzSGllcmFyY2h5TW9kZSA9IHRoaXMuYnJlYWRjcnVtYnNIaWVyYXJjaHlNb2RlID8/IFwib2JqZWN0TmF2aWdhdGlvblwiO1xuXHRcdHN1cGVyLmluaXQoKTtcblx0fVxuXG5cdGlzQ29udGV4dEV4cGVjdGVkKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0cnVlO1xuXHR9XG5cblx0ZXh0ZW5kUGFnZURlZmluaXRpb24ocGFnZURlZmluaXRpb246IE9iamVjdFBhZ2VEZWZpbml0aW9uLCBjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0KTogRmluYWxQYWdlRGVmaW5pdGlvbiB7XG5cdFx0cmV0dXJuIGV4dGVuZE9iamVjdFBhZ2VEZWZpbml0aW9uKHBhZ2VEZWZpbml0aW9uLCBjb252ZXJ0ZXJDb250ZXh0KTtcblx0fVxuXG5cdC8vIFRPRE86IHRoaXMgc2hvdWxkIGJlIGlkZWFsbHkgYmUgaGFuZGxlZCBieSB0aGUgZWRpdGZsb3cvcm91dGluZyB3aXRob3V0IHRoZSBuZWVkIHRvIGhhdmUgdGhpcyBtZXRob2QgaW4gdGhlXG5cdC8vIG9iamVjdCBwYWdlIC0gZm9yIG5vdyBrZWVwIGl0IGhlcmVcblx0Y3JlYXRlRGVmZXJyZWRDb250ZXh0KFxuXHRcdHNQYXRoOiBzdHJpbmcsXG5cdFx0b0xpc3RCaW5kaW5nOiBPRGF0YUxpc3RCaW5kaW5nIHwgdW5kZWZpbmVkLFxuXHRcdHBhcmVudENvbnRleHQ6IENvbnRleHQgfCB1bmRlZmluZWQsXG5cdFx0ZGF0YTogb2JqZWN0IHwgdW5kZWZpbmVkLFxuXHRcdGJBY3Rpb25DcmVhdGU6IGJvb2xlYW5cblx0KTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLkRlZmVycmVkQ29udGV4dENyZWF0ZWQpIHtcblx0XHRcdHRoaXMuRGVmZXJyZWRDb250ZXh0Q3JlYXRlZCA9IHRydWU7XG5cdFx0XHRjb25zdCBvUGFyYW1ldGVyczogeyAkJGdyb3VwSWQ6IHN0cmluZzsgJCR1cGRhdGVHcm91cElkOiBzdHJpbmc7ICRzZWxlY3Q/OiBzdHJpbmcgfSA9IHtcblx0XHRcdFx0JCRncm91cElkOiBcIiRhdXRvLkhlcm9lc1wiLFxuXHRcdFx0XHQkJHVwZGF0ZUdyb3VwSWQ6IFwiJGF1dG9cIlxuXHRcdFx0fTtcblx0XHRcdGNvbnN0IG1ldGFNb2RlbCA9IHRoaXMuZ2V0TW9kZWwoKS5nZXRNZXRhTW9kZWwoKTtcblx0XHRcdGlmIChNb2RlbEhlbHBlci5pc0NvbGxhYm9yYXRpb25EcmFmdFN1cHBvcnRlZChtZXRhTW9kZWwpKSB7XG5cdFx0XHRcdG9QYXJhbWV0ZXJzLiRzZWxlY3QgPSBcIkRyYWZ0QWRtaW5pc3RyYXRpdmVEYXRhL0RyYWZ0QWRtaW5pc3RyYXRpdmVVc2VyXCI7XG5cdFx0XHR9XG5cblx0XHRcdGlmICghb0xpc3RCaW5kaW5nKSB7XG5cdFx0XHRcdG9MaXN0QmluZGluZyA9IHRoaXMuZ2V0TW9kZWwoKS5iaW5kTGlzdChzUGF0aC5yZXBsYWNlKFwiKC4uLilcIiwgXCJcIiksIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIG9QYXJhbWV0ZXJzKTtcblx0XHRcdH1cblx0XHRcdGNvbnN0IG9TdGFydFVwUGFyYW1zID1cblx0XHRcdFx0XHR0aGlzLm9BcHBDb21wb25lbnQgJiYgdGhpcy5vQXBwQ29tcG9uZW50LmdldENvbXBvbmVudERhdGEoKSAmJiB0aGlzLm9BcHBDb21wb25lbnQuZ2V0Q29tcG9uZW50RGF0YSgpLnN0YXJ0dXBQYXJhbWV0ZXJzLFxuXHRcdFx0XHRvSW5ib3VuZFBhcmFtZXRlcnMgPSB0aGlzLmdldFZpZXdEYXRhKCkuaW5ib3VuZFBhcmFtZXRlcnMgYXMgUmVjb3JkPHN0cmluZywgSW5ib3VuZFBhcmFtZXRlcj4gfCB1bmRlZmluZWQ7XG5cdFx0XHRsZXQgY3JlYXRlUGFyYW1zO1xuXHRcdFx0aWYgKG9TdGFydFVwUGFyYW1zICYmIG9TdGFydFVwUGFyYW1zLnByZWZlcnJlZE1vZGUgJiYgb1N0YXJ0VXBQYXJhbXMucHJlZmVycmVkTW9kZVswXS5pbmNsdWRlcyhcImNyZWF0ZVwiKSkge1xuXHRcdFx0XHRjcmVhdGVQYXJhbXMgPSBPYmplY3QuYXNzaWduKHt9LCBkYXRhLCBDb21tb25VdGlscy5nZXRBZGRpdGlvbmFsUGFyYW1zRm9yQ3JlYXRlKG9TdGFydFVwUGFyYW1zLCBvSW5ib3VuZFBhcmFtZXRlcnMpKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdGNyZWF0ZVBhcmFtcyA9IGRhdGE7XG5cdFx0XHR9XG5cblx0XHRcdC8vIGZvciBub3cgd2FpdCB1bnRpbCB0aGUgdmlldyBhbmQgdGhlIGNvbnRyb2xsZXIgaXMgY3JlYXRlZFxuXHRcdFx0dGhpcy5nZXRSb290Q29udHJvbCgpXG5cdFx0XHRcdC5nZXRDb250cm9sbGVyKClcblx0XHRcdFx0LmVkaXRGbG93LmNyZWF0ZURvY3VtZW50KG9MaXN0QmluZGluZywge1xuXHRcdFx0XHRcdGNyZWF0aW9uTW9kZTogQ3JlYXRpb25Nb2RlLlN5bmMsXG5cdFx0XHRcdFx0Y3JlYXRlQWN0aW9uOiBiQWN0aW9uQ3JlYXRlLFxuXHRcdFx0XHRcdGRhdGE6IGNyZWF0ZVBhcmFtcyxcblx0XHRcdFx0XHRiRnJvbURlZmVycmVkOiB0cnVlLFxuXHRcdFx0XHRcdHNlbGVjdGVkQ29udGV4dHM6IHBhcmVudENvbnRleHQgPyBbcGFyZW50Q29udGV4dF0gOiB1bmRlZmluZWRcblx0XHRcdFx0fSlcblx0XHRcdFx0LmZpbmFsbHkoKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMuRGVmZXJyZWRDb250ZXh0Q3JlYXRlZCA9IGZhbHNlO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdC8vIERvIE5vdGhpbmcgP1xuXHRcdFx0XHR9KTtcblx0XHR9XG5cdH1cblxuXHRzZXRWYXJpYW50TWFuYWdlbWVudChzVmFyaWFudE1hbmFnZW1lbnQ6IHN0cmluZyk6IHZvaWQge1xuXHRcdGlmIChzVmFyaWFudE1hbmFnZW1lbnQgPT09IFZhcmlhbnRNYW5hZ2VtZW50LlBhZ2UpIHtcblx0XHRcdExvZy5lcnJvcihcIk9iamVjdFBhZ2UgZG9lcyBub3Qgc3VwcG9ydCBQYWdlLWxldmVsIHZhcmlhbnQgbWFuYWdlbWVudCB5ZXRcIik7XG5cdFx0XHRzVmFyaWFudE1hbmFnZW1lbnQgPSBWYXJpYW50TWFuYWdlbWVudC5Ob25lO1xuXHRcdH1cblxuXHRcdHRoaXMuc2V0UHJvcGVydHkoXCJ2YXJpYW50TWFuYWdlbWVudFwiLCBzVmFyaWFudE1hbmFnZW1lbnQpO1xuXHR9XG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiBvcGVuSW5FZGl0TW9kZSBpcyBkZWZpbmVkIGluIHRoZSBtYW5pZmVzdCBzZXR0aW5nc1xuXHQgKiBAcmV0dXJucyBhIGJvb2xlYW4gaW5kaWNhdGluZyBpZiBlZGl0IG1vZGUgaXMgc2V0IGZvciBhbiBvYmplY3QgcGFnZVxuXHQgKi9cblxuXHRpc09wZW5JbkVkaXRNb2RlKCk6IGJvb2xlYW4ge1xuXHRcdGNvbnN0IG9wZW5JbkVkaXRNb2RlID0gdGhpcy5nZXRWaWV3RGF0YSgpLm9wZW5JbkVkaXRNb2RlO1xuXHRcdHJldHVybiBvcGVuSW5FZGl0TW9kZSA9PT0gdHJ1ZTtcblx0fVxuXG5cdF9nZXRDb250cm9sbGVyTmFtZSgpOiBzdHJpbmcge1xuXHRcdHJldHVybiBcInNhcC5mZS50ZW1wbGF0ZXMuT2JqZWN0UGFnZS5PYmplY3RQYWdlQ29udHJvbGxlclwiO1xuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE9iamVjdFBhZ2VDb21wb25lbnQ7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7RUFlQSxNQUFNQSxpQkFBaUIsR0FBR0MsV0FBVyxDQUFDRCxpQkFBaUI7SUFDdERFLFlBQVksR0FBR0QsV0FBVyxDQUFDQyxZQUFZO0VBQ3hDLE1BQU1DLGFBQWEsR0FBR0MsV0FBVyxDQUFDQyxVQUFVLENBQUNGLGFBQWE7RUFBQyxJQUVyREcsbUJBQW1CLElBQUFDLElBQUEsR0FEeEJDLGNBQWMsQ0FBQyx1Q0FBdUMsRUFBRTtJQUFFQyxPQUFPLEVBQUUsa0JBQWtCO0lBQUVDLFFBQVEsRUFBRTtFQUFPLENBQUMsQ0FBQyxFQUFBQyxLQUFBLEdBUXpHQyxRQUFRLENBQUM7SUFDVEMsSUFBSSxFQUFFLCtCQUErQjtJQUNyQ0MsWUFBWSxFQUFFZCxpQkFBaUIsQ0FBQ2U7RUFDakMsQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FRREosUUFBUSxDQUFDO0lBQ1RDLElBQUksRUFBRSwyQ0FBMkM7SUFDakRDLFlBQVksRUFBRVgsYUFBYSxDQUFDYztFQUM3QixDQUFDLENBQUMsRUFBQUMsS0FBQSxHQU1ETixRQUFRLENBQUM7SUFDVEMsSUFBSSxFQUFFLFNBQVM7SUFDZkMsWUFBWSxFQUFFO0VBQ2YsQ0FBQyxDQUFDLEVBQUFLLEtBQUEsR0FNRFAsUUFBUSxDQUFDO0lBQ1RDLElB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
234
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYXJpYW50TWFuYWdlbWVudCIsIkNvcmVMaWJyYXJ5IiwiQ3JlYXRpb25Nb2RlIiwiU2VjdGlvbkxheW91dCIsInRlbXBsYXRlTGliIiwiT2JqZWN0UGFnZSIsIk9iamVjdFBhZ2VDb21wb25lbnQiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJsaWJyYXJ5IiwibWFuaWZlc3QiLCJfZGVjMiIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsIk5vbmUiLCJfZGVjMyIsIlBhZ2UiLCJfZGVjNCIsIl9kZWM1IiwiX2RlYzYiLCJfZGVjNyIsIl9kZWM4IiwiX2RlYzkiLCJfZGVjMTAiLCJfZGVjMTEiLCJ1bmRlZmluZWQiLCJfZGVjMTIiLCJfY2xhc3MiLCJfY2xhc3MyIiwiX1RlbXBsYXRlQ29tcG9uZW50IiwiX3RoaXMiLCJfbGVuIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiYXJncyIsIkFycmF5IiwiX2tleSIsImNhbGwiLCJfaW5pdGlhbGl6ZXJEZWZpbmVQcm9wZXJ0eSIsIl9kZXNjcmlwdG9yIiwiX2Rlc2NyaXB0b3IyIiwiX2Rlc2NyaXB0b3IzIiwiX2Rlc2NyaXB0b3I0IiwiX2Rlc2NyaXB0b3I1IiwiX2Rlc2NyaXB0b3I2IiwiX2Rlc2NyaXB0b3I3IiwiX2Rlc2NyaXB0b3I4IiwiX2Rlc2NyaXB0b3I5IiwiX2Rlc2NyaXB0b3IxMCIsIl9kZXNjcmlwdG9yMTEiLCJEZWZlcnJlZENvbnRleHRDcmVhdGVkIiwiX2luaGVyaXRzTG9vc2UiLCJfcHJvdG8iLCJwcm90b3R5cGUiLCJpbml0IiwiYnJlYWRjcnVtYnNIaWVyYXJjaHlNb2RlIiwiaXNDb250ZXh0RXhwZWN0ZWQiLCJleHRlbmRQYWdlRGVmaW5pdGlvbiIsInBhZ2VEZWZpbml0aW9uIiwiY29udmVydGVyQ29udGV4dCIsImV4dGVuZE9iamVjdFBhZ2VEZWZpbml0aW9uIiwiY3JlYXRlRGVmZXJyZWRDb250ZXh0Iiwic1BhdGgiLCJwYXJhbWV0ZXJzIiwiYkFjdGlvbkNyZWF0ZSIsImxpc3RCaW5kaW5nIiwiZ2V0VXBkYXRlR3JvdXBJZCIsIkNvbW1vblV0aWxzIiwiSU5MSU5FRURJVF9VUERBVEVHUk9VUElEIiwib1BhcmFtZXRlcnMiLCIkJGdyb3VwSWQiLCIkJHVwZGF0ZUdyb3VwSWQiLCJtZXRhTW9kZWwiLCJnZXRNb2RlbCIsImdldE1ldGFNb2RlbCIsIk1vZGVsSGVscGVyIiwiaXNDb2xsYWJvcmF0aW9uRHJhZnRTdXBwb3J0ZWQiLCIkc2VsZWN0IiwiYmluZExpc3QiLCJyZXBsYWNlIiwib1N0YXJ0VXBQYXJhbXMiLCJvQXBwQ29tcG9uZW50IiwiZ2V0Q29tcG9uZW50RGF0YSIsInN0YXJ0dXBQYXJhbWV0ZXJzIiwiZGF0YUZvckNyZWF0ZSIsInByZWZlcnJlZE1vZGUiLCJpbmNsdWRlcyIsIm9JbmJvdW5kUGFyYW1ldGVycyIsImdldFZpZXdEYXRhIiwiaW5ib3VuZFBhcmFtZXRlcnMiLCJPYmplY3QiLCJhc3NpZ24iLCJkYXRhIiwiZ2V0QWRkaXRpb25hbFBhcmFtc0ZvckNyZWF0ZSIsImdldFJvb3RDb250cm9sIiwiZ2V0Q29udHJvbGxlciIsImVkaXRGbG93IiwiY3JlYXRlRG9jdW1lbnQiLCJjcmVhdGlvbk1vZGUiLCJTeW5jIiwiY3JlYXRlQWN0aW9uIiwiYkZyb21EZWZlcnJlZCIsInNlbGVjdGVkQ29udGV4dHMiLCJwYXJlbnRDb250ZXh0IiwicmVxdWVzdEF0TGVhc3QiLCJmaW5hbGx5IiwiY2F0Y2giLCJzZXRWYXJpYW50TWFuYWdlbWVudCIsInNWYXJpYW50TWFuYWdlbWVudCIsIkxvZyIsImVycm9yIiwic2V0UHJvcGVydHkiLCJpc09wZW5JbkVkaXRNb2RlIiwib3BlbkluRWRpdE1vZGUiLCJfZ2V0Q29udHJvbGxlck5hbWUiLCJUZW1wbGF0ZUNvbXBvbmVudCIsIl9hcHBseURlY29yYXRlZERlc2NyaXB0b3IiLCJjb25maWd1cmFibGUiLCJlbnVtZXJhYmxlIiwid3JpdGFibGUiLCJpbml0aWFsaXplciJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiQ29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IHsgZGVmaW5lVUk1Q2xhc3MsIHByb3BlcnR5IH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IHR5cGUgeyBJbmJvdW5kUGFyYW1ldGVyIH0gZnJvbSBcInNhcC9mZS9jb3JlL0NvbW1vblV0aWxzXCI7XG5pbXBvcnQgQ29tbW9uVXRpbHMgZnJvbSBcInNhcC9mZS9jb3JlL0NvbW1vblV0aWxzXCI7XG5pbXBvcnQgVGVtcGxhdGVDb21wb25lbnQgZnJvbSBcInNhcC9mZS9jb3JlL1RlbXBsYXRlQ29tcG9uZW50XCI7XG5pbXBvcnQgdHlwZSBDb252ZXJ0ZXJDb250ZXh0IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL0NvbnZlcnRlckNvbnRleHRcIjtcbmltcG9ydCB0eXBlIHsgT2JqZWN0UGFnZURlZmluaXRpb24gfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy90ZW1wbGF0ZXMvT2JqZWN0UGFnZUNvbnZlcnRlclwiO1xuaW1wb3J0IE1vZGVsSGVscGVyIGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL01vZGVsSGVscGVyXCI7XG5pbXBvcnQgQ29yZUxpYnJhcnkgZnJvbSBcInNhcC9mZS9jb3JlL2xpYnJhcnlcIjtcbmltcG9ydCB0eXBlIHsgRmluYWxQYWdlRGVmaW5pdGlvbiB9IGZyb20gXCJzYXAvZmUvdGVtcGxhdGVzL09iamVjdFBhZ2UvRXh0ZW5kUGFnZURlZmluaXRpb25cIjtcbmltcG9ydCB7IGV4dGVuZE9iamVjdFBhZ2VEZWZpbml0aW9uIH0gZnJvbSBcInNhcC9mZS90ZW1wbGF0ZXMvT2JqZWN0UGFnZS9FeHRlbmRQYWdlRGVmaW5pdGlvblwiO1xuaW1wb3J0IHRlbXBsYXRlTGliIGZyb20gXCJzYXAvZmUvdGVtcGxhdGVzL2xpYnJhcnlcIjtcbmltcG9ydCB0eXBlIENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9Db250ZXh0XCI7XG5pbXBvcnQgdHlwZSBPRGF0YUxpc3RCaW5kaW5nIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFMaXN0QmluZGluZ1wiO1xuXG5jb25zdCBWYXJpYW50TWFuYWdlbWVudCA9IENvcmVMaWJyYXJ5LlZhcmlhbnRNYW5hZ2VtZW50LFxuXHRDcmVhdGlvbk1vZGUgPSBDb3JlTGlicmFyeS5DcmVhdGlvbk1vZGU7XG5jb25zdCBTZWN0aW9uTGF5b3V0ID0gdGVtcGxhdGVMaWIuT2JqZWN0UGFnZS5TZWN0aW9uTGF5b3V0O1xuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLnRlbXBsYXRlcy5PYmplY3RQYWdlLkNvbXBvbmVudFwiLCB7IGxpYnJhcnk6IFwic2FwLmZlLnRlbXBsYXRlc1wiLCBtYW5pZmVzdDogXCJqc29uXCIgfSlcbmNsYXNzIE9iamVjdFBhZ2VDb21wb25lbnQgZXh0ZW5kcyBUZW1wbGF0ZUNvbXBvbmVudCB7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIGlmIGFuZCBvbiB3aGljaCBsZXZlbCB2YXJpYW50cyBjYW4gYmUgY29uZmlndXJlZDpcblx0ICogXHRcdE5vbmU6IG5vIHZhcmlhbnQgY29uZmlndXJhdGlvbiBhdCBhbGxcblx0ICogXHRcdFBhZ2U6IG9uZSB2YXJpYW50IGNvbmZpZ3VyYXRpb24gZm9yIHRoZSB3aG9sZSBwYWdlXG5cdCAqIFx0XHRDb250cm9sOiB2YXJpYW50IGNvbmZpZ3VyYXRpb24gb24gY29udHJvbCBsZXZlbFxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcInNhcC5mZS5jb3JlLlZhcmlhbnRNYW5hZ2VtZW50XCIsXG5cdFx0ZGVmYXVsdFZhbHVlOiBWYXJpYW50TWFuYWdlbWVudC5Ob25lXG5cdH0pXG5cdHZhcmlhbnRNYW5hZ2VtZW50OiB0eXBlb2YgVmFyaWFudE1hbmFnZW1lbnQ7XG5cblx0LyoqXG5cdCAqIERlZmluZXMgaG93IHRoZSBzZWN0aW9ucyBhcmUgcmVuZGVyZWRcblx0ICogXHRcdFBhZ2U6IGFsbCBzZWN0aW9ucyBhcmUgc2hvd24gb24gb25lIHBhZ2Vcblx0ICogXHRcdFRhYnM6IGVhY2ggdG9wLWxldmVsIHNlY3Rpb24gaXMgc2hvd24gaW4gYW4gb3duIHRhYlxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcInNhcC5mZS50ZW1wbGF0ZXMuT2JqZWN0UGFnZS5TZWN0aW9uTGF5b3V0XCIsXG5cdFx0ZGVmYXVsdFZhbHVlOiBTZWN0aW9uTGF5b3V0LlBhZ2Vcblx0fSlcblx0c2VjdGlvbkxheW91dDogdHlwZW9mIFNlY3Rpb25MYXlvdXQ7XG5cblx0LyoqXG5cdCAqIEVuYWJsZXMgdGhlIHJlbGF0ZWQgYXBwcyBmZWF0dXJlc1xuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIixcblx0XHRkZWZhdWx0VmFsdWU6IGZhbHNlXG5cdH0pXG5cdHNob3dSZWxhdGVkQXBwcyE6IGJvb2xlYW47XG5cblx0LyoqXG5cdCAqIEVuYWJsZXMgdGhlICdNaWNyb3NvZnQgVGVhbXMgPiBBcyBDYXJkJyBvcHRpb24gaW4gdGhlICdTaGFyZScgbWVudVxuXHQgKi9cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcIm9iamVjdFwiXG5cdH0pXG5cdHNoYXJlITogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYm9vbGVhbj4+O1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwib2JqZWN0XCIgfSlcblx0YWRkaXRpb25hbFNlbWFudGljT2JqZWN0cyE6IG9iamVjdDtcblxuXHQvKipcblx0ICogRW5hYmxlcyB0aGUgZWRpdGFibGUgb2JqZWN0IHBhZ2UgaGVhZGVyXG5cdCAqL1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYm9vbGVhblwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogdHJ1ZVxuXHR9KVxuXHRlZGl0YWJsZUhlYWRlckNvbnRlbnQhOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBTaG93cyBhIHRleHQgaW5zdGVhZCBvZiBhbiBJbGx1c3RyYXRlZE1lc3NhZ2UgaW4gdGhlIG5vRGF0YSBhZ2dyZWdhdGlvbiBvZiBUYWJsZXMgb3IgQ2hhcnRzXG5cdCAqL1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYm9vbGVhblwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogZmFsc2Vcblx0fSlcblx0dXNlVGV4dEZvck5vRGF0YU1lc3NhZ2VzITogYm9vbGVhbjtcblxuXHQvKipcblx0ICogRGVmaW5lcyB0aGUgcHJvcGVydGllcyB3aGljaCBjYW4gYmUgdXNlZCBmb3IgaW5ib3VuZCBOYXZpZ2F0aW9uXG5cdCAqL1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwib2JqZWN0XCJcblx0fSlcblx0aW5ib3VuZFBhcmFtZXRlcnMhOiBvYmplY3Q7XG5cblx0LyoqXG5cdCAqIERlZmluZXMgaWYgYW4gb2JqZWN0IHBhZ2Ugc2hvdWxkIGJlIG9wZW5lZCBpbiBlZGl0IG1vZGVcblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJib29sZWFuXCJcblx0fSlcblx0b3BlbkluRWRpdE1vZGU6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIixcblx0XHRkZWZhdWx0VmFsdWU6IHVuZGVmaW5lZFxuXHR9KVxuXHRlbmFibGVMYXp5TG9hZGluZzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYm9vbGVhblwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogdW5kZWZpbmVkXG5cdH0pXG5cdGRpc2FibGVPYmplY3RQYWdlUmVxdWVzdE9wdGltaXphdGlvbjogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuXHRwcml2YXRlIERlZmVycmVkQ29udGV4dENyZWF0ZWQgPSBmYWxzZTtcblxuXHRpbml0KCk6IHZvaWQge1xuXHRcdHRoaXMuYnJlYWRjcnVtYnNIaWVyYXJjaHlNb2RlID0gdGhpcy5icmVhZGNydW1ic0hpZXJhcmNoeU1vZGUgPz8gXCJvYmplY3ROYXZpZ2F0aW9uXCI7XG5cdFx0c3VwZXIuaW5pdCgpO1xuXHR9XG5cblx0aXNDb250ZXh0RXhwZWN0ZWQoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRydWU7XG5cdH1cblxuXHRleHRlbmRQYWdlRGVmaW5pdGlvbihwYWdlRGVmaW5pdGlvbjogT2JqZWN0UGFnZURlZmluaXRpb24sIGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQpOiBGaW5hbFBhZ2VEZWZpbml0aW9uIHtcblx0XHRyZXR1cm4gZXh0ZW5kT2JqZWN0UGFnZURlZmluaXRpb24ocGFnZURlZmluaXRpb24sIGNvbnZlcnRlckNvbnRleHQpO1xuXHR9XG5cblx0Ly8gVE9ETzogdGhpcyBzaG91bGQgYmUgaWRlYWxseSBiZSBoYW5kbGVkIGJ5IHRoZSBlZGl0Zmxvdy9yb3V0aW5nIHdpdGhvdXQgdGhlIG5lZWQgdG8gaGF2ZSB0aGlzIG1ldGhvZCBpbiB0aGVcblx0Ly8gb2JqZWN0IHBhZ2UgLSBmb3Igbm93IGtlZXAgaXQgaGVyZVxuXHRjcmVhdGVEZWZlcnJlZENvbnRleHQoXG5cdFx0c1BhdGg6IHN0cmluZyxcblx0XHRwYXJhbWV0ZXJzOiB7IGxpc3RCaW5kaW5nPzogT0RhdGFMaXN0QmluZGluZzsgcGFyZW50Q29udGV4dD86IENvbnRleHQ7IGRhdGE/OiBvYmplY3Q7IHJlcXVlc3RBdExlYXN0Pzogc3RyaW5nW10gfSxcblx0XHRiQWN0aW9uQ3JlYXRlOiBib29sZWFuXG5cdCk6IHZvaWQge1xuXHRcdGlmICghdGhpcy5EZWZlcnJlZENvbnRleHRDcmVhdGVkKSB7XG5cdFx0XHR0aGlzLkRlZmVycmVkQ29udGV4dENyZWF0ZWQgPSB0cnVlO1xuXG5cdFx0XHRpZiAoIXBhcmFtZXRlcnMubGlzdEJpbmRpbmcgfHwgcGFyYW1ldGVycy5saXN0QmluZGluZy5nZXRVcGRhdGVHcm91cElkKCkgPT09IENvbW1vblV0aWxzLklOTElORUVESVRfVVBEQVRFR1JPVVBJRCkge1xuXHRcdFx0XHRjb25zdCBvUGFyYW1ldGVyczogeyAkJGdyb3VwSWQ6IHN0cmluZzsgJCR1cGRhdGVHcm91cElkOiBzdHJpbmc7ICRzZWxlY3Q/OiBzdHJpbmcgfSA9IHtcblx0XHRcdFx0XHQkJGdyb3VwSWQ6IFwiJGF1dG8uSGVyb2VzXCIsXG5cdFx0XHRcdFx0JCR1cGRhdGVHcm91cElkOiBcIiRhdXRvXCJcblx0XHRcdFx0fTtcblx0XHRcdFx0Y29uc3QgbWV0YU1vZGVsID0gdGhpcy5nZXRNb2RlbCgpLmdldE1ldGFNb2RlbCgpO1xuXHRcdFx0XHRpZiAoTW9kZWxIZWxwZXIuaXNDb2xsYWJvcmF0aW9uRHJhZnRTdXBwb3J0ZWQobWV0YU1vZGVsKSkge1xuXHRcdFx0XHRcdG9QYXJhbWV0ZXJzLiRzZWxlY3QgPSBcIkRyYWZ0QWRtaW5pc3RyYXRpdmVEYXRhL0RyYWZ0QWRtaW5pc3RyYXRpdmVVc2VyXCI7XG5cdFx0XHRcdH1cblx0XHRcdFx0cGFyYW1ldGVycy5saXN0QmluZGluZyA9IHRoaXMuZ2V0TW9kZWwoKS5iaW5kTGlzdChzUGF0aC5yZXBsYWNlKFwiKC4uLilcIiwgXCJcIiksIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIG9QYXJhbWV0ZXJzKTtcblx0XHRcdH1cblxuXHRcdFx0Y29uc3Qgb1N0YXJ0VXBQYXJhbXMgPSB0aGlzLm9BcHBDb21wb25lbnQ/LmdldENvbXBvbmVudERhdGEoKT8uc3RhcnR1cFBhcmFtZXRlcnM7XG5cdFx0XHRsZXQgZGF0YUZvckNyZWF0ZTtcblx0XHRcdGlmIChvU3RhcnRVcFBhcmFtcz8ucHJlZmVycmVkTW9kZT8uWzBdLmluY2x1ZGVzKFwiY3JlYXRlXCIpID09PSB0cnVlKSB7XG5cdFx0XHRcdGNvbnN0IG9JbmJvdW5kUGFyYW1ldGVycyA9IHRoaXMuZ2V0Vmlld0RhdGEoKS5pbmJvdW5kUGFyYW1ldGVycyBhcyBSZWNvcmQ8c3RyaW5nLCBJbmJvdW5kUGFyYW1ldGVyPiB8IHVuZGVmaW5lZDtcblx0XHRcdFx0ZGF0YUZvckNyZWF0ZSA9IE9iamVjdC5hc3NpZ24oXG5cdFx0XHRcdFx0e30sXG5cdFx0XHRcdFx0cGFyYW1ldGVycy5kYXRhLFxuXHRcdFx0XHRcdENvbW1vblV0aWxzLmdldEFkZGl0aW9uYWxQYXJhbXNGb3JDcmVhdGUob1N0YXJ0VXBQYXJhbXMsIG9JbmJvdW5kUGFyYW1ldGVycylcblx0XHRcdFx0KTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdGRhdGFGb3JDcmVhdGUgPSBwYXJhbWV0ZXJzLmRhdGE7XG5cdFx0XHR9XG5cblx0XHRcdC8vIGZvciBub3cgd2FpdCB1bnRpbCB0aGUgdmlldyBhbmQgdGhlIGNvbnRyb2xsZXIgaXMgY3JlYXRlZFxuXHRcdFx0dGhpcy5nZXRSb290Q29udHJvbCgpXG5cdFx0XHRcdC5nZXRDb250cm9sbGVyKClcblx0XHRcdFx0LmVkaXRGbG93LmNyZWF0ZURvY3VtZW50KHBhcmFtZXRlcnMubGlzdEJpbmRpbmcsIHtcblx0XHRcdFx0XHRjcmVhdGlvbk1vZGU6IENyZWF0aW9uTW9kZS5TeW5jLFxuXHRcdFx0XHRcdGNyZWF0ZUFjdGlvbjogYkFjdGlvbkNyZWF0ZSxcblx0XHRcdFx0XHRkYXRhOiBkYXRhRm9yQ3JlYXRlLFxuXHRcdFx0XHRcdGJGcm9tRGVmZXJyZWQ6IHRydWUsXG5cdFx0XHRcdFx0c2VsZWN0ZWRDb250ZXh0czogcGFyYW1ldGVycy5wYXJlbnRDb250ZXh0ID8gW3BhcmFtZXRlcnMucGFyZW50Q29udGV4dF0gOiB1bmRlZmluZWQsXG5cdFx0XHRcdFx0cmVxdWVzdEF0TGVhc3Q6IHBhcmFtZXRlcnMucmVxdWVzdEF0TGVhc3Rcblx0XHRcdFx0fSlcblx0XHRcdFx0LmZpbmFsbHkoKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMuRGVmZXJyZWRDb250ZXh0Q3JlYXRlZCA9IGZhbHNlO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdC8vIERvIE5vdGhpbmcgP1xuXHRcdFx0XHR9KTtcblx0XHR9XG5cdH1cblxuXHRzZXRWYXJpYW50TWFuYWdlbWVudChzVmFyaWFudE1hbmFnZW1lbnQ6IHN0cmluZyk6IHZvaWQge1xuXHRcdGlmIChzVmFyaWFudE1hbmFnZW1lbnQgPT09IFZhcmlhbnRNYW5hZ2VtZW50LlBhZ2UpIHtcblx0XHRcdExvZy5lcnJvcihcIk9iamVjdFBhZ2UgZG9lcyBub3Qgc3VwcG9ydCBQYWdlLWxldmVsIHZhcmlhbnQgbWFuYWdlbWVudCB5ZXRcIik7XG5cdFx0XHRzVmFyaWFudE1hbmFnZW1lbnQgPSBWYXJpYW50TWFuYWdlbWVudC5Ob25lO1xuXHRcdH1cblxuXHRcdHRoaXMuc2V0UHJvcGVydHkoXCJ2YXJpYW50TWFuYWdlbWVudFwiLCBzVmFyaWFudE1hbmFnZW1lbnQpO1xuXHR9XG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiBvcGVuSW5FZGl0TW9kZSBpcyBkZWZpbmVkIGluIHRoZSBtYW5pZmVzdCBzZXR0aW5nc1xuXHQgKiBAcmV0dXJucyBhIGJvb2xlYW4gaW5kaWNhdGluZyBpZiBlZGl0IG1vZGUgaXMgc2V0IGZvciBhbiBvYmplY3QgcGFnZVxuXHQgKi9cblxuXHRpc09wZW5JbkVkaXRNb2RlKCk6IGJvb2xlYW4ge1xuXHRcdGNvbnN0IG9wZW5JbkVkaXRNb2RlID0gdGhpcy5nZXRWaWV3RGF0YSgpLm9wZW5JbkVkaXRNb2RlO1xuXHRcdHJldHVybiBvcGVuSW5FZGl0TW9kZSA9PT0gdHJ1ZTtcblx0fVxuXG5cdF9nZXRDb250cm9sbGVyTmFtZSgpOiBzdHJpbmcge1xuXHRcdHJldHVybiBcInNhcC5mZS50ZW1wbGF0ZXMuT2JqZWN0UGFnZS5PYmplY3RQYWdlQ29udHJvbGxlclwiO1xuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE9iamVjdFBhZ2VDb21wb25lbnQ7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7RUFlQSxNQUFNQSxpQkFBaUIsR0FBR0MsV0FBVyxDQUFDRCxpQkFBaUI7SUFDdERFLFlBQVksR0FBR0QsV0FBVyxDQUFDQyxZQUFZO0VBQ3hDLE1BQU1DLGFBQWEsR0FBR0MsV0FBVyxDQUFDQyxVQUFVLENB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
@@ -97,9 +97,15 @@ class ObjectPageComponent extends TemplateComponent {
97
97
 
98
98
  @property({
99
99
  type: "boolean",
100
- defaultValue: false
100
+ defaultValue: undefined
101
101
  })
102
- enableLazyLoading!: boolean;
102
+ enableLazyLoading: boolean | undefined;
103
+
104
+ @property({
105
+ type: "boolean",
106
+ defaultValue: undefined
107
+ })
108
+ disableObjectPageRequestOptimization: boolean | undefined;
103
109
 
104
110
  private DeferredContextCreated = false;
105
111
 
@@ -120,44 +126,47 @@ class ObjectPageComponent extends TemplateComponent {
120
126
  // object page - for now keep it here
121
127
  createDeferredContext(
122
128
  sPath: string,
123
- oListBinding: ODataListBinding | undefined,
124
- parentContext: Context | undefined,
125
- data: object | undefined,
129
+ parameters: { listBinding?: ODataListBinding; parentContext?: Context; data?: object; requestAtLeast?: string[] },
126
130
  bActionCreate: boolean
127
131
  ): void {
128
132
  if (!this.DeferredContextCreated) {
129
133
  this.DeferredContextCreated = true;
130
- const oParameters: { $$groupId: string; $$updateGroupId: string; $select?: string } = {
131
- $$groupId: "$auto.Heroes",
132
- $$updateGroupId: "$auto"
133
- };
134
- const metaModel = this.getModel().getMetaModel();
135
- if (ModelHelper.isCollaborationDraftSupported(metaModel)) {
136
- oParameters.$select = "DraftAdministrativeData/DraftAdministrativeUser";
137
- }
138
134
 
139
- if (!oListBinding) {
140
- oListBinding = this.getModel().bindList(sPath.replace("(...)", ""), undefined, undefined, undefined, oParameters);
135
+ if (!parameters.listBinding || parameters.listBinding.getUpdateGroupId() === CommonUtils.INLINEEDIT_UPDATEGROUPID) {
136
+ const oParameters: { $$groupId: string; $$updateGroupId: string; $select?: string } = {
137
+ $$groupId: "$auto.Heroes",
138
+ $$updateGroupId: "$auto"
139
+ };
140
+ const metaModel = this.getModel().getMetaModel();
141
+ if (ModelHelper.isCollaborationDraftSupported(metaModel)) {
142
+ oParameters.$select = "DraftAdministrativeData/DraftAdministrativeUser";
143
+ }
144
+ parameters.listBinding = this.getModel().bindList(sPath.replace("(...)", ""), undefined, undefined, undefined, oParameters);
141
145
  }
142
- const oStartUpParams =
143
- this.oAppComponent && this.oAppComponent.getComponentData() && this.oAppComponent.getComponentData().startupParameters,
144
- oInboundParameters = this.getViewData().inboundParameters as Record<string, InboundParameter> | undefined;
145
- let createParams;
146
- if (oStartUpParams && oStartUpParams.preferredMode && oStartUpParams.preferredMode[0].includes("create")) {
147
- createParams = Object.assign({}, data, CommonUtils.getAdditionalParamsForCreate(oStartUpParams, oInboundParameters));
146
+
147
+ const oStartUpParams = this.oAppComponent?.getComponentData()?.startupParameters;
148
+ let dataForCreate;
149
+ if (oStartUpParams?.preferredMode?.[0].includes("create") === true) {
150
+ const oInboundParameters = this.getViewData().inboundParameters as Record<string, InboundParameter> | undefined;
151
+ dataForCreate = Object.assign(
152
+ {},
153
+ parameters.data,
154
+ CommonUtils.getAdditionalParamsForCreate(oStartUpParams, oInboundParameters)
155
+ );
148
156
  } else {
149
- createParams = data;
157
+ dataForCreate = parameters.data;
150
158
  }
151
159
 
152
160
  // for now wait until the view and the controller is created
153
161
  this.getRootControl()
154
162
  .getController()
155
- .editFlow.createDocument(oListBinding, {
163
+ .editFlow.createDocument(parameters.listBinding, {
156
164
  creationMode: CreationMode.Sync,
157
165
  createAction: bActionCreate,
158
- data: createParams,
166
+ data: dataForCreate,
159
167
  bFromDeferred: true,
160
- selectedContexts: parentContext ? [parentContext] : undefined
168
+ selectedContexts: parameters.parentContext ? [parameters.parentContext] : undefined,
169
+ requestAtLeast: parameters.requestAtLeast
161
170
  })
162
171
  .finally(() => {
163
172
  this.DeferredContextCreated = false;