@sapui5/sap.fe.templates 1.148.0 → 1.148.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.
@@ -2,10 +2,11 @@
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
3
  * (c) Copyright 2009-2026 SAP SE. All rights reserved
4
4
  */
5
- sap.ui.define(["sap/fe/base/ClassSupport", "sap/uxap/BlockBase", "sap/uxap/library"], function (ClassSupport, BlockBase, uxapLib) {
5
+ sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/CommonUtils", "sap/fe/core/converters/ManifestSettings", "sap/uxap/BlockBase", "sap/uxap/library"], function (ClassSupport, CommonUtils, ManifestSettings, BlockBase, uxapLib) {
6
6
  "use strict";
7
7
 
8
8
  var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2;
9
+ var CreationMode = ManifestSettings.CreationMode;
9
10
  var property = ClassSupport.property;
10
11
  var defineUI5Class = ClassSupport.defineUI5Class;
11
12
  var aggregation = ClassSupport.aggregation;
@@ -52,7 +53,12 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/uxap/BlockBase", "sap/uxap/libra
52
53
  _proto.onAfterRendering = function onAfterRendering(oEvent) {
53
54
  const subSection = this._oParentObjectPageSubSection;
54
55
  if (subSection.getBlocks().length === 1 && this.content && this.content.isA("sap.fe.macros.Table")) {
55
- if (this.content.getTableDefinition().control.rowCountMode === "Auto" && !subSection.hasStyleClass("sapUxAPObjectPageSubSectionFitContainer")) {
56
+ const view = CommonUtils.getTargetView(this);
57
+ const sectionLayout = view?.getViewData()?.sectionLayout;
58
+ const tableControl = this.content.getTableDefinition().control;
59
+ if (tableControl.rowCountMode === "Auto" && (
60
+ // Exclude CreationRow mode unless sectionLayout is Tabs: the fit-container style creates whitespace in the subsection in display mode when CreationRow is used in TableCreationOptions
61
+ tableControl.creationMode !== CreationMode.CreationRow || sectionLayout === "Tabs") && !subSection.hasStyleClass("sapUxAPObjectPageSubSectionFitContainer")) {
56
62
  subSection.addStyleClass("sapUxAPObjectPageSubSectionFitContainer");
57
63
  }
58
64
  }
@@ -85,4 +91,4 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/uxap/BlockBase", "sap/uxap/libra
85
91
  }), _class2)) || _class);
86
92
  return SubSectionBlock;
87
93
  }, false);
88
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCbG9ja0Jhc2VGb3JtQWRqdXN0bWVudCIsInV4YXBMaWIiLCJTdWJTZWN0aW9uQmxvY2siLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJfZGVjMiIsInByb3BlcnR5IiwidHlwZSIsImdyb3VwIiwiZGVmYXVsdFZhbHVlIiwiX2RlYzMiLCJhZ2dyZWdhdGlvbiIsIm11bHRpcGxlIiwiX2NsYXNzIiwiX2NsYXNzMiIsIl9CbG9ja0Jhc2UiLCJfdGhpcyIsIl9sZW4iLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJhcmdzIiwiQXJyYXkiLCJfa2V5IiwiY2FsbCIsIl9pbml0aWFsaXplckRlZmluZVByb3BlcnR5IiwiX2Rlc2NyaXB0b3IiLCJfZGVzY3JpcHRvcjIiLCJfaW5oZXJpdHNMb29zZSIsIl9wcm90byIsInByb3RvdHlwZSIsImluaXQiLCJfYkNvbm5lY3RlZCIsIl9hcHBseUZvcm1BZGp1c3RtZW50Iiwic0Zvcm1BZGp1c3RtZW50IiwiZ2V0Rm9ybUFkanVzdG1lbnQiLCJvVmlldyIsIl9nZXRTZWxlY3RlZFZpZXdDb250ZW50Iiwib1BhcmVudCIsIl9vUGFyZW50T2JqZWN0UGFnZVN1YlNlY3Rpb24iLCJvRm9ybUFkanVzdG1lbnRGaWVsZHMiLCJOb25lIiwiX2NvbXB1dGVGb3JtQWRqdXN0bWVudEZpZWxkcyIsIl9vTGF5b3V0Q29uZmlnIiwiX2FkanVzdEZvcm0iLCJvbkFmdGVyUmVuZGVyaW5nIiwib0V2ZW50Iiwic3ViU2VjdGlvbiIsImdldEJsb2NrcyIsImNvbnRlbnQiLCJpc0EiLCJnZXRUYWJsZURlZmluaXRpb24iLCJjb250cm9sIiwicm93Q291bnRNb2RlIiwiaGFzU3R5bGVDbGFzcyIsImFkZFN0eWxlQ2xhc3MiLCJzZXRNb2RlIiwic01vZGUiLCJzZXRQcm9wZXJ0eSIsImNvbm5lY3RUb01vZGVscyIsImdldEFnZ3JlZ2F0aW9uIiwiQmxvY2tCYXNlIiwiX2FwcGx5RGVjb3JhdGVkRGVzY3JpcHRvciIsImNvbmZpZ3VyYWJsZSIsImVudW1lcmFibGUiLCJ3cml0YWJsZSIsImluaXRpYWxpemVyIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJTdWJTZWN0aW9uQmxvY2sudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWdncmVnYXRpb24sIGRlZmluZVVJNUNsYXNzLCBwcm9wZXJ0eSB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB0eXBlIFN1YlNlY3Rpb24gZnJvbSBcInNhcC9mZS9tYWNyb3MvY29udHJvbHMvc2VjdGlvbi9TdWJTZWN0aW9uXCI7XG5pbXBvcnQgdHlwZSBUYWJsZUFQSSBmcm9tIFwic2FwL2ZlL21hY3Jvcy9UYWJsZVwiO1xuaW1wb3J0IHR5cGUgTWFuYWdlZE9iamVjdCBmcm9tIFwic2FwL3VpL2Jhc2UvTWFuYWdlZE9iamVjdFwiO1xuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IEJsb2NrQmFzZSBmcm9tIFwic2FwL3V4YXAvQmxvY2tCYXNlXCI7XG5pbXBvcnQgdHlwZSB7IEJsb2NrQmFzZUNvbHVtbkxheW91dCB9IGZyb20gXCJzYXAvdXhhcC9saWJyYXJ5XCI7XG5pbXBvcnQgdXhhcExpYiBmcm9tIFwic2FwL3V4YXAvbGlicmFyeVwiO1xuY29uc3QgQmxvY2tCYXNlRm9ybUFkanVzdG1lbnQgPSB1eGFwTGliLkJsb2NrQmFzZUZvcm1BZGp1c3RtZW50O1xuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLnRlbXBsYXRlcy5PYmplY3RQYWdlLmNvbnRyb2xzLlN1YlNlY3Rpb25CbG9ja1wiKVxuY2xhc3MgU3ViU2VjdGlvbkJsb2NrIGV4dGVuZHMgQmxvY2tCYXNlIHtcblx0QHByb3BlcnR5KHsgdHlwZTogXCJzYXAudXhhcC5CbG9ja0Jhc2VDb2x1bW5MYXlvdXRcIiwgZ3JvdXA6IFwiQmVoYXZpb3JcIiwgZGVmYXVsdFZhbHVlOiBcIjRcIiB9KVxuXHRjb2x1bW5MYXlvdXQhOiBCbG9ja0Jhc2VDb2x1bW5MYXlvdXQ7XG5cblx0QGFnZ3JlZ2F0aW9uKHsgdHlwZTogXCJzYXAudWkuY29yZS5Db250cm9sXCIsIG11bHRpcGxlOiBmYWxzZSB9KVxuXHRjb250ZW50ITogQ29udHJvbDtcblxuXHRwcml2YXRlIF9vUGFyZW50T2JqZWN0UGFnZVN1YlNlY3Rpb24hOiB7IF9vTGF5b3V0Q29uZmlnOiB1bmtub3duIH07XG5cblx0aW5pdCgpOiB2b2lkIHtcblx0XHRzdXBlci5pbml0KCk7XG5cdFx0KHRoaXMgYXMgdW5rbm93biBhcyB7IF9iQ29ubmVjdGVkOiBib29sZWFuIH0pLl9iQ29ubmVjdGVkID0gdHJ1ZTtcblx0fVxuXG5cdF9hcHBseUZvcm1BZGp1c3RtZW50KCk6IHZvaWQge1xuXHRcdGNvbnN0IHNGb3JtQWRqdXN0bWVudCA9IHRoaXMuZ2V0Rm9ybUFkanVzdG1lbnQoKSxcblx0XHRcdG9WaWV3ID0gdGhpcy5fZ2V0U2VsZWN0ZWRWaWV3Q29udGVudCgpLFxuXHRcdFx0b1BhcmVudCA9IHRoaXMuX29QYXJlbnRPYmplY3RQYWdlU3ViU2VjdGlvbjtcblx0XHRsZXQgb0Zvcm1BZGp1c3RtZW50RmllbGRzO1xuXG5cdFx0aWYgKHNGb3JtQWRqdXN0bWVudCAhPT0gQmxvY2tCYXNlRm9ybUFkanVzdG1lbnQuTm9uZSAmJiBvVmlldyAmJiBvUGFyZW50KSB7XG5cdFx0XHRvRm9ybUFkanVzdG1lbnRGaWVsZHMgPSB0aGlzLl9jb21wdXRlRm9ybUFkanVzdG1lbnRGaWVsZHMoc0Zvcm1BZGp1c3RtZW50LCBvUGFyZW50Ll9vTGF5b3V0Q29uZmlnKTtcblxuXHRcdFx0dGhpcy5fYWRqdXN0Rm9ybShvVmlldywgb0Zvcm1BZGp1c3RtZW50RmllbGRzKTtcblx0XHR9XG5cdH1cblxuXHRvbkFmdGVyUmVuZGVyaW5nKG9FdmVudDogalF1ZXJ5LkV2ZW50KTogdm9pZCB8IHVuZGVmaW5lZCB7XG5cdFx0Y29uc3Qgc3ViU2VjdGlvbiA9IHRoaXMuX29QYXJlbnRPYmplY3RQYWdlU3ViU2VjdGlvbiBhcyB1bmtub3duIGFzIFN1YlNlY3Rpb247XG5cdFx0aWYgKHN1YlNlY3Rpb24uZ2V0QmxvY2tzKCkubGVuZ3RoID09PSAxICYmIHRoaXMuY29udGVudCAmJiB0aGlzLmNvbnRlbnQuaXNBPFRhYmxlQVBJPihcInNhcC5mZS5tYWNyb3MuVGFibGVcIikpIHtcblx0XHRcdGlmIChcblx0XHRcdFx0dGhpcy5jb250ZW50LmdldFRhYmxlRGVmaW5pdGlvbigpLmNvbnRyb2wucm93Q291bnRNb2RlID09PSBcIkF1dG9cIiAmJlxuXHRcdFx0XHQhc3ViU2VjdGlvbi5oYXNTdHlsZUNsYXNzKFwic2FwVXhBUE9iamVjdFBhZ2VTdWJTZWN0aW9uRml0Q29udGFpbmVyXCIpXG5cdFx0XHQpIHtcblx0XHRcdFx0c3ViU2VjdGlvbi5hZGRTdHlsZUNsYXNzKFwic2FwVXhBUE9iamVjdFBhZ2VTdWJTZWN0aW9uRml0Q29udGFpbmVyXCIpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRyZXR1cm4gc3VwZXIub25BZnRlclJlbmRlcmluZyhvRXZlbnQpO1xuXHR9XG5cblx0c2V0TW9kZShzTW9kZTogc3RyaW5nKTogdm9pZCB7XG5cdFx0dGhpcy5zZXRQcm9wZXJ0eShcIm1vZGVcIiwgc01vZGUpO1xuXHRcdC8vIE9QVElPTkFMOiB0aGlzLmludGVybmFsTW9kZWwuc2V0UHJvcGVydHkoXCIvbW9kZVwiLCBzTW9kZSk7XG5cdH1cblxuXHRjb25uZWN0VG9Nb2RlbHMoKTogdm9pZCB7XG5cdFx0Ly8gVmlldyBpcyBhbHJlYWR5IGNvbm5lY3RlZCB0byB0aGUgVUk1IG1vZGVsIHRyZWUsIGhlbmNlIG5vIGV4dHJhIGxvZ2ljIHJlcXVpcmVkIGhlcmVcblx0fVxuXG5cdC8vLyBTdWJTZWN0aW9uQmxvY2sgdXNlIGFnZ3JlZ2F0aW9uIGluc3RlYWQgb2YgYSB2aWV3LCBpLmUuIHJldHVybiB0aGF0IGFzIHRoZSB2aWV3IGNvbnRlbnRcblx0X2dldFNlbGVjdGVkVmlld0NvbnRlbnQoKTogTWFuYWdlZE9iamVjdCB8IE1hbmFnZWRPYmplY3RbXSB8IG51bGwge1xuXHRcdHJldHVybiB0aGlzLmdldEFnZ3JlZ2F0aW9uKFwiY29udGVudFwiKTtcblx0fVxufVxuXG5pbnRlcmZhY2UgU3ViU2VjdGlvbkJsb2NrIHtcblx0X2FkanVzdEZvcm0odmlldzogTWFuYWdlZE9iamVjdCB8IE1hbmFnZWRPYmplY3RbXSwgZm9ybUZpZWxkczogdW5rbm93bik6IHZvaWQ7XG5cdF9jb21wdXRlRm9ybUFkanVzdG1lbnRGaWVsZHMoc0Zvcm1BZGp1c3RtZW50OiBzdHJpbmcsIF9vTGF5b3V0Q29uZmlnOiB1bmtub3duKTogdW5rbm93bjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgU3ViU2VjdGlvbkJsb2NrO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0VBUUEsTUFBTUEsdUJBQXVCLEdBQUdDLE9BQU8sQ0FBQ0QsdUJBQXVCO0VBQUMsSUFFMURFLGVBQWUsSUFBQUMsSUFBQSxHQURwQkMsY0FBYyxDQUFDLHNEQUFzRCxDQUFDLEVBQUFDLEtBQUEsR0FFckVDLFFBQVEsQ0FBQztJQUFFQyxJQUFJLEVBQUUsZ0NBQWdDO0lBQUVDLEtBQUssRUFBRSxVQUFVO0lBQUVDLFlBQVksRUFBRTtFQUFJLENBQUMsQ0FBQyxFQUFBQyxLQUFBLEdBRzFGQyxXQUFXLENBQUM7SUFBRUosSUFBSSxFQUFFLHFCQUFxQjtJQUFFSyxRQUFRLEVBQUU7RUFBTSxDQUFDLENBQUMsRUFBQVQsSUFBQSxDQUFBVSxNQUFBLElBQUFDLE9BQUEsMEJBQUFDLFVBQUE7SUFBQSxTQUFBYixnQkFBQTtNQUFBLElBQUFjLEtBQUE7TUFBQSxTQUFBQyxJQUFBLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxFQUFBQyxJQUFBLE9BQUFDLEtBQUEsQ0FBQUosSUFBQSxHQUFBSyxJQUFBLE1BQUFBLElBQUEsR0FBQUwsSUFBQSxFQUFBSyxJQUFBO1FBQUFGLElBQUEsQ0FBQUUsSUFBQSxJQUFBSixTQUFBLENBQUFJLElBQUE7TUFBQTtNQUFBTixLQUFBLEdBQUFELFVBQUEsQ0FBQVEsSUFBQSxVQUFBSCxJQUFBO01BQUFJLDBCQUFBLENBQUFSLEtBQUEsa0JBQUFTLFdBQUEsRUFBQVQsS0FBQTtNQUFBUSwwQkFBQSxDQUFBUixLQUFBLGFBQUFVLFlBQUEsRUFBQVYsS0FBQTtNQUFBLE9BQUFBLEtBQUE7SUFBQTtJQUFBVyxjQUFBLENBQUF6QixlQUFBLEVBQUFhLFVBQUE7SUFBQSxJQUFBYSxNQUFBLEdBQUExQixlQUFBLENBQUEyQixTQUFBO0lBQUFELE1BQUEsQ0FLOURFLElBQUksR0FBSixTQUFBQSxJQUFJQSxDQUFBLEVBQVM7TUFDWmYsVUFBQSxDQUFBYyxTQUFBLENBQU1DLElBQUksQ0FBQVAsSUFBQTtNQUNULElBQUksQ0FBeUNRLFdBQVcsR0FBRyxJQUFJO0lBQ2pFLENBQUM7SUFBQUgsTUFBQSxDQUVESSxvQkFBb0IsR0FBcEIsU0FBQUEsb0JBQW9CQSxDQUFBLEVBQVM7TUFDNUIsTUFBTUMsZUFBZSxHQUFHLElBQUksQ0FBQ0MsaUJBQWlCLENBQUMsQ0FBQztRQUMvQ0MsS0FBSyxHQUFHLElBQUksQ0FBQ0MsdUJBQXVCLENBQUMsQ0FBQztRQUN0Q0MsT0FBTyxHQUFHLElBQUksQ0FBQ0MsNEJBQTRCO01BQzVDLElBQUlDLHFCQUFxQjtNQUV6QixJQUFJTixlQUFlLEtBQUtqQyx1QkFBdUIsQ0FBQ3dDLElBQUksSUFBSUwsS0FBSyxJQUFJRSxPQUFPLEVBQUU7UUFDekVFLHFCQUFxQixHQUFHLElBQUksQ0FBQ0UsNEJBQTRCLENBQUNSLGVBQWUsRUFBRUksT0FBTyxDQUFDSyxjQUFjLENBQUM7UUFFbEcsSUFBSSxDQUFDQyxXQUFXLENBQUNSLEtBQUssRUFBRUkscUJBQXFCLENBQUM7TUFDL0M7SUFDRCxDQUFDO0lBQUFYLE1BQUEsQ0FFRGdCLGdCQUFnQixHQUFoQixTQUFBQSxnQkFBZ0JBLENBQUNDLE1BQW9CLEVBQW9CO01BQ3hELE1BQU1DLFVBQVUsR0FBRyxJQUFJLENBQUNSLDRCQUFxRDtNQUM3RSxJQUFJUSxVQUFVLENBQUNDLFNBQVMsQ0FBQyxDQUFDLENBQUM1QixNQUFNLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQzZCLE9BQU8sSUFBSSxJQUFJLENBQUNBLE9BQU8sQ0FBQ0MsR0FBRyxDQUFXLHFCQUFxQixDQUFDLEVBQUU7UUFDN0csSUFDQyxJQUFJLENBQUNELE9BQU8sQ0FBQ0Usa0JBQWtCLENBQUMsQ0FBQyxDQUFDQyxPQUFPLENBQUNDLFlBQVksS0FBSyxNQUFNLElBQ2pFLENBQUNOLFVBQVUsQ0FBQ08sYUFBYSxDQUFDLHlDQUF5QyxDQUFDLEVBQ25FO1VBQ0RQLFVBQVUsQ0FBQ1EsYUFBYSxDQUFDLHlDQUF5QyxDQUFDO1FBQ3BFO01BQ0Q7TUFDQSxPQUFBdkMsVUFBQSxDQUFBYyxTQUFBLENBQWFlLGdCQUFnQixDQUFBckIsSUFBQSxPQUFDc0IsTUFBTTtJQUNyQyxDQUFDO0lBQUFqQixNQUFBLENBRUQyQixPQUFPLEdBQVAsU0FBQUEsT0FBT0EsQ0FBQ0MsS0FBYSxFQUFRO01BQzVCLElBQUksQ0FBQ0MsV0FBVyxDQUFDLE1BQU0sRUFBRUQsS0FBSyxDQUFDO01BQy9CO0lBQ0QsQ0FBQztJQUFBNUIsTUFBQSxDQUVEOEIsZUFBZSxHQUFmLFNBQUFBLGVBQWVBLENBQUEsRUFBUztNQUN2QjtJQUFBOztJQUdEO0lBQUE7SUFBQTlCLE1BQUEsQ0FDQVEsdUJBQXVCLEdBQXZCLFNBQUFBLHVCQUF1QkEsQ0FBQSxFQUEyQztNQUNqRSxPQUFPLElBQUksQ0FBQ3VCLGNBQWMsQ0FBQyxTQUFTLENBQUM7SUFDdEMsQ0FBQztJQUFBLE9BQUF6RCxlQUFBO0VBQUEsRUFwRDRCMEQsU0FBUyxHQUFBbkMsV0FBQSxHQUFBb0MseUJBQUEsQ0FBQS9DLE9BQUEsQ0FBQWUsU0FBQSxtQkFBQXhCLEtBQUE7SUFBQXlELFlBQUE7SUFBQUMsVUFBQTtJQUFBQyxRQUFBO0lBQUFDLFdBQUE7RUFBQSxJQUFBdkMsWUFBQSxHQUFBbUMseUJBQUEsQ0FBQS9DLE9BQUEsQ0FBQWUsU0FBQSxjQUFBbkIsS0FBQTtJQUFBb0QsWUFBQTtJQUFBQyxVQUFBO0lBQUFDLFFBQUE7SUFBQUMsV0FBQTtFQUFBLElBQUFuRCxPQUFBLE1BQUFELE1BQUE7RUFBQSxPQTREeEJYLGVBQWU7QUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
94
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCbG9ja0Jhc2VGb3JtQWRqdXN0bWVudCIsInV4YXBMaWIiLCJTdWJTZWN0aW9uQmxvY2siLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJfZGVjMiIsInByb3BlcnR5IiwidHlwZSIsImdyb3VwIiwiZGVmYXVsdFZhbHVlIiwiX2RlYzMiLCJhZ2dyZWdhdGlvbiIsIm11bHRpcGxlIiwiX2NsYXNzIiwiX2NsYXNzMiIsIl9CbG9ja0Jhc2UiLCJfdGhpcyIsIl9sZW4iLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJhcmdzIiwiQXJyYXkiLCJfa2V5IiwiY2FsbCIsIl9pbml0aWFsaXplckRlZmluZVByb3BlcnR5IiwiX2Rlc2NyaXB0b3IiLCJfZGVzY3JpcHRvcjIiLCJfaW5oZXJpdHNMb29zZSIsIl9wcm90byIsInByb3RvdHlwZSIsImluaXQiLCJfYkNvbm5lY3RlZCIsIl9hcHBseUZvcm1BZGp1c3RtZW50Iiwic0Zvcm1BZGp1c3RtZW50IiwiZ2V0Rm9ybUFkanVzdG1lbnQiLCJvVmlldyIsIl9nZXRTZWxlY3RlZFZpZXdDb250ZW50Iiwib1BhcmVudCIsIl9vUGFyZW50T2JqZWN0UGFnZVN1YlNlY3Rpb24iLCJvRm9ybUFkanVzdG1lbnRGaWVsZHMiLCJOb25lIiwiX2NvbXB1dGVGb3JtQWRqdXN0bWVudEZpZWxkcyIsIl9vTGF5b3V0Q29uZmlnIiwiX2FkanVzdEZvcm0iLCJvbkFmdGVyUmVuZGVyaW5nIiwib0V2ZW50Iiwic3ViU2VjdGlvbiIsImdldEJsb2NrcyIsImNvbnRlbnQiLCJpc0EiLCJ2aWV3IiwiQ29tbW9uVXRpbHMiLCJnZXRUYXJnZXRWaWV3Iiwic2VjdGlvbkxheW91dCIsImdldFZpZXdEYXRhIiwidGFibGVDb250cm9sIiwiZ2V0VGFibGVEZWZpbml0aW9uIiwiY29udHJvbCIsInJvd0NvdW50TW9kZSIsImNyZWF0aW9uTW9kZSIsIkNyZWF0aW9uTW9kZSIsIkNyZWF0aW9uUm93IiwiaGFzU3R5bGVDbGFzcyIsImFkZFN0eWxlQ2xhc3MiLCJzZXRNb2RlIiwic01vZGUiLCJzZXRQcm9wZXJ0eSIsImNvbm5lY3RUb01vZGVscyIsImdldEFnZ3JlZ2F0aW9uIiwiQmxvY2tCYXNlIiwiX2FwcGx5RGVjb3JhdGVkRGVzY3JpcHRvciIsImNvbmZpZ3VyYWJsZSIsImVudW1lcmFibGUiLCJ3cml0YWJsZSIsImluaXRpYWxpemVyIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJTdWJTZWN0aW9uQmxvY2sudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWdncmVnYXRpb24sIGRlZmluZVVJNUNsYXNzLCBwcm9wZXJ0eSB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCBDb21tb25VdGlscyBmcm9tIFwic2FwL2ZlL2NvcmUvQ29tbW9uVXRpbHNcIjtcbmltcG9ydCB7IENyZWF0aW9uTW9kZSwgdHlwZSBPYmplY3RQYWdlTWFuaWZlc3RTZXR0aW5ncyB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01hbmlmZXN0U2V0dGluZ3NcIjtcbmltcG9ydCB0eXBlIFN1YlNlY3Rpb24gZnJvbSBcInNhcC9mZS9tYWNyb3MvY29udHJvbHMvc2VjdGlvbi9TdWJTZWN0aW9uXCI7XG5pbXBvcnQgdHlwZSBUYWJsZUFQSSBmcm9tIFwic2FwL2ZlL21hY3Jvcy9UYWJsZVwiO1xuaW1wb3J0IHR5cGUgTWFuYWdlZE9iamVjdCBmcm9tIFwic2FwL3VpL2Jhc2UvTWFuYWdlZE9iamVjdFwiO1xuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IEJsb2NrQmFzZSBmcm9tIFwic2FwL3V4YXAvQmxvY2tCYXNlXCI7XG5pbXBvcnQgdHlwZSB7IEJsb2NrQmFzZUNvbHVtbkxheW91dCB9IGZyb20gXCJzYXAvdXhhcC9saWJyYXJ5XCI7XG5pbXBvcnQgdXhhcExpYiBmcm9tIFwic2FwL3V4YXAvbGlicmFyeVwiO1xuY29uc3QgQmxvY2tCYXNlRm9ybUFkanVzdG1lbnQgPSB1eGFwTGliLkJsb2NrQmFzZUZvcm1BZGp1c3RtZW50O1xuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLnRlbXBsYXRlcy5PYmplY3RQYWdlLmNvbnRyb2xzLlN1YlNlY3Rpb25CbG9ja1wiKVxuY2xhc3MgU3ViU2VjdGlvbkJsb2NrIGV4dGVuZHMgQmxvY2tCYXNlIHtcblx0QHByb3BlcnR5KHsgdHlwZTogXCJzYXAudXhhcC5CbG9ja0Jhc2VDb2x1bW5MYXlvdXRcIiwgZ3JvdXA6IFwiQmVoYXZpb3JcIiwgZGVmYXVsdFZhbHVlOiBcIjRcIiB9KVxuXHRjb2x1bW5MYXlvdXQhOiBCbG9ja0Jhc2VDb2x1bW5MYXlvdXQ7XG5cblx0QGFnZ3JlZ2F0aW9uKHsgdHlwZTogXCJzYXAudWkuY29yZS5Db250cm9sXCIsIG11bHRpcGxlOiBmYWxzZSB9KVxuXHRjb250ZW50ITogQ29udHJvbDtcblxuXHRwcml2YXRlIF9vUGFyZW50T2JqZWN0UGFnZVN1YlNlY3Rpb24hOiB7IF9vTGF5b3V0Q29uZmlnOiB1bmtub3duIH07XG5cblx0aW5pdCgpOiB2b2lkIHtcblx0XHRzdXBlci5pbml0KCk7XG5cdFx0KHRoaXMgYXMgdW5rbm93biBhcyB7IF9iQ29ubmVjdGVkOiBib29sZWFuIH0pLl9iQ29ubmVjdGVkID0gdHJ1ZTtcblx0fVxuXG5cdF9hcHBseUZvcm1BZGp1c3RtZW50KCk6IHZvaWQge1xuXHRcdGNvbnN0IHNGb3JtQWRqdXN0bWVudCA9IHRoaXMuZ2V0Rm9ybUFkanVzdG1lbnQoKSxcblx0XHRcdG9WaWV3ID0gdGhpcy5fZ2V0U2VsZWN0ZWRWaWV3Q29udGVudCgpLFxuXHRcdFx0b1BhcmVudCA9IHRoaXMuX29QYXJlbnRPYmplY3RQYWdlU3ViU2VjdGlvbjtcblx0XHRsZXQgb0Zvcm1BZGp1c3RtZW50RmllbGRzO1xuXG5cdFx0aWYgKHNGb3JtQWRqdXN0bWVudCAhPT0gQmxvY2tCYXNlRm9ybUFkanVzdG1lbnQuTm9uZSAmJiBvVmlldyAmJiBvUGFyZW50KSB7XG5cdFx0XHRvRm9ybUFkanVzdG1lbnRGaWVsZHMgPSB0aGlzLl9jb21wdXRlRm9ybUFkanVzdG1lbnRGaWVsZHMoc0Zvcm1BZGp1c3RtZW50LCBvUGFyZW50Ll9vTGF5b3V0Q29uZmlnKTtcblxuXHRcdFx0dGhpcy5fYWRqdXN0Rm9ybShvVmlldywgb0Zvcm1BZGp1c3RtZW50RmllbGRzKTtcblx0XHR9XG5cdH1cblxuXHRvbkFmdGVyUmVuZGVyaW5nKG9FdmVudDogalF1ZXJ5LkV2ZW50KTogdm9pZCB8IHVuZGVmaW5lZCB7XG5cdFx0Y29uc3Qgc3ViU2VjdGlvbiA9IHRoaXMuX29QYXJlbnRPYmplY3RQYWdlU3ViU2VjdGlvbiBhcyB1bmtub3duIGFzIFN1YlNlY3Rpb247XG5cdFx0aWYgKHN1YlNlY3Rpb24uZ2V0QmxvY2tzKCkubGVuZ3RoID09PSAxICYmIHRoaXMuY29udGVudCAmJiB0aGlzLmNvbnRlbnQuaXNBPFRhYmxlQVBJPihcInNhcC5mZS5tYWNyb3MuVGFibGVcIikpIHtcblx0XHRcdGNvbnN0IHZpZXcgPSBDb21tb25VdGlscy5nZXRUYXJnZXRWaWV3KHRoaXMpO1xuXHRcdFx0Y29uc3Qgc2VjdGlvbkxheW91dCA9ICh2aWV3Py5nZXRWaWV3RGF0YSgpIGFzIE9iamVjdFBhZ2VNYW5pZmVzdFNldHRpbmdzKT8uc2VjdGlvbkxheW91dDtcblx0XHRcdGNvbnN0IHRhYmxlQ29udHJvbCA9IHRoaXMuY29udGVudC5nZXRUYWJsZURlZmluaXRpb24oKS5jb250cm9sO1xuXG5cdFx0XHRpZiAoXG5cdFx0XHRcdHRhYmxlQ29udHJvbC5yb3dDb3VudE1vZGUgPT09IFwiQXV0b1wiICYmXG5cdFx0XHRcdC8vIEV4Y2x1ZGUgQ3JlYXRpb25Sb3cgbW9kZSB1bmxlc3Mgc2VjdGlvbkxheW91dCBpcyBUYWJzOiB0aGUgZml0LWNvbnRhaW5lciBzdHlsZSBjcmVhdGVzIHdoaXRlc3BhY2UgaW4gdGhlIHN1YnNlY3Rpb24gaW4gZGlzcGxheSBtb2RlIHdoZW4gQ3JlYXRpb25Sb3cgaXMgdXNlZCBpbiBUYWJsZUNyZWF0aW9uT3B0aW9uc1xuXHRcdFx0XHQodGFibGVDb250cm9sLmNyZWF0aW9uTW9kZSAhPT0gQ3JlYXRpb25Nb2RlLkNyZWF0aW9uUm93IHx8IHNlY3Rpb25MYXlvdXQgPT09IFwiVGFic1wiKSAmJlxuXHRcdFx0XHQhc3ViU2VjdGlvbi5oYXNTdHlsZUNsYXNzKFwic2FwVXhBUE9iamVjdFBhZ2VTdWJTZWN0aW9uRml0Q29udGFpbmVyXCIpXG5cdFx0XHQpIHtcblx0XHRcdFx0c3ViU2VjdGlvbi5hZGRTdHlsZUNsYXNzKFwic2FwVXhBUE9iamVjdFBhZ2VTdWJTZWN0aW9uRml0Q29udGFpbmVyXCIpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRyZXR1cm4gc3VwZXIub25BZnRlclJlbmRlcmluZyhvRXZlbnQpO1xuXHR9XG5cblx0c2V0TW9kZShzTW9kZTogc3RyaW5nKTogdm9pZCB7XG5cdFx0dGhpcy5zZXRQcm9wZXJ0eShcIm1vZGVcIiwgc01vZGUpO1xuXHRcdC8vIE9QVElPTkFMOiB0aGlzLmludGVybmFsTW9kZWwuc2V0UHJvcGVydHkoXCIvbW9kZVwiLCBzTW9kZSk7XG5cdH1cblxuXHRjb25uZWN0VG9Nb2RlbHMoKTogdm9pZCB7XG5cdFx0Ly8gVmlldyBpcyBhbHJlYWR5IGNvbm5lY3RlZCB0byB0aGUgVUk1IG1vZGVsIHRyZWUsIGhlbmNlIG5vIGV4dHJhIGxvZ2ljIHJlcXVpcmVkIGhlcmVcblx0fVxuXG5cdC8vLyBTdWJTZWN0aW9uQmxvY2sgdXNlIGFnZ3JlZ2F0aW9uIGluc3RlYWQgb2YgYSB2aWV3LCBpLmUuIHJldHVybiB0aGF0IGFzIHRoZSB2aWV3IGNvbnRlbnRcblx0X2dldFNlbGVjdGVkVmlld0NvbnRlbnQoKTogTWFuYWdlZE9iamVjdCB8IE1hbmFnZWRPYmplY3RbXSB8IG51bGwge1xuXHRcdHJldHVybiB0aGlzLmdldEFnZ3JlZ2F0aW9uKFwiY29udGVudFwiKTtcblx0fVxufVxuXG5pbnRlcmZhY2UgU3ViU2VjdGlvbkJsb2NrIHtcblx0X2FkanVzdEZvcm0odmlldzogTWFuYWdlZE9iamVjdCB8IE1hbmFnZWRPYmplY3RbXSwgZm9ybUZpZWxkczogdW5rbm93bik6IHZvaWQ7XG5cdF9jb21wdXRlRm9ybUFkanVzdG1lbnRGaWVsZHMoc0Zvcm1BZGp1c3RtZW50OiBzdHJpbmcsIF9vTGF5b3V0Q29uZmlnOiB1bmtub3duKTogdW5rbm93bjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgU3ViU2VjdGlvbkJsb2NrO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztFQVVBLE1BQU1BLHVCQUF1QixHQUFHQyxPQUFPLENBQUNELHVCQUF1QjtFQUFDLElBRTFERSxlQUFlLElBQUFDLElBQUEsR0FEcEJDLGNBQWMsQ0FBQyxzREFBc0QsQ0FBQyxFQUFBQyxLQUFBLEdBRXJFQyxRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFLGdDQUFnQztJQUFFQyxLQUFLLEVBQUUsVUFBVTtJQUFFQyxZQUFZLEVBQUU7RUFBSSxDQUFDLENBQUMsRUFBQUMsS0FBQSxHQUcxRkMsV0FBVyxDQUFDO0lBQUVKLElBQUksRUFBRSxxQkFBcUI7SUFBRUssUUFBUSxFQUFFO0VBQU0sQ0FBQyxDQUFDLEVBQUFULElBQUEsQ0FBQVUsTUFBQSxJQUFBQyxPQUFBLDBCQUFBQyxVQUFBO0lBQUEsU0FBQWIsZ0JBQUE7TUFBQSxJQUFBYyxLQUFBO01BQUEsU0FBQUMsSUFBQSxHQUFBQyxTQUFBLENBQUFDLE1BQUEsRUFBQUMsSUFBQSxPQUFBQyxLQUFBLENBQUFKLElBQUEsR0FBQUssSUFBQSxNQUFBQSxJQUFBLEdBQUFMLElBQUEsRUFBQUssSUFBQTtRQUFBRixJQUFBLENBQUFFLElBQUEsSUFBQUosU0FBQSxDQUFBSSxJQUFBO01BQUE7TUFBQU4sS0FBQSxHQUFBRCxVQUFBLENBQUFRLElBQUEsVUFBQUgsSUFBQTtNQUFBSSwwQkFBQSxDQUFBUixLQUFBLGtCQUFBUyxXQUFBLEVBQUFULEtBQUE7TUFBQVEsMEJBQUEsQ0FBQVIsS0FBQSxhQUFBVSxZQUFBLEVBQUFWLEtBQUE7TUFBQSxPQUFBQSxLQUFBO0lBQUE7SUFBQVcsY0FBQSxDQUFBekIsZUFBQSxFQUFBYSxVQUFBO0lBQUEsSUFBQWEsTUFBQSxHQUFBMUIsZUFBQSxDQUFBMkIsU0FBQTtJQUFBRCxNQUFBLENBSzlERSxJQUFJLEdBQUosU0FBQUEsSUFBSUEsQ0FBQSxFQUFTO01BQ1pmLFVBQUEsQ0FBQWMsU0FBQSxDQUFNQyxJQUFJLENBQUFQLElBQUE7TUFDVCxJQUFJLENBQXlDUSxXQUFXLEdBQUcsSUFBSTtJQUNqRSxDQUFDO0lBQUFILE1BQUEsQ0FFREksb0JBQW9CLEdBQXBCLFNBQUFBLG9CQUFvQkEsQ0FBQSxFQUFTO01BQzVCLE1BQU1DLGVBQWUsR0FBRyxJQUFJLENBQUNDLGlCQUFpQixDQUFDLENBQUM7UUFDL0NDLEtBQUssR0FBRyxJQUFJLENBQUNDLHVCQUF1QixDQUFDLENBQUM7UUFDdENDLE9BQU8sR0FBRyxJQUFJLENBQUNDLDRCQUE0QjtNQUM1QyxJQUFJQyxxQkFBcUI7TUFFekIsSUFBSU4sZUFBZSxLQUFLakMsdUJBQXVCLENBQUN3QyxJQUFJLElBQUlMLEtBQUssSUFBSUUsT0FBTyxFQUFFO1FBQ3pFRSxxQkFBcUIsR0FBRyxJQUFJLENBQUNFLDRCQUE0QixDQUFDUixlQUFlLEVBQUVJLE9BQU8sQ0FBQ0ssY0FBYyxDQUFDO1FBRWxHLElBQUksQ0FBQ0MsV0FBVyxDQUFDUixLQUFLLEVBQUVJLHFCQUFxQixDQUFDO01BQy9DO0lBQ0QsQ0FBQztJQUFBWCxNQUFBLENBRURnQixnQkFBZ0IsR0FBaEIsU0FBQUEsZ0JBQWdCQSxDQUFDQyxNQUFvQixFQUFvQjtNQUN4RCxNQUFNQyxVQUFVLEdBQUcsSUFBSSxDQUFDUiw0QkFBcUQ7TUFDN0UsSUFBSVEsVUFBVSxDQUFDQyxTQUFTLENBQUMsQ0FBQyxDQUFDNUIsTUFBTSxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUM2QixPQUFPLElBQUksSUFBSSxDQUFDQSxPQUFPLENBQUNDLEdBQUcsQ0FBVyxxQkFBcUIsQ0FBQyxFQUFFO1FBQzdHLE1BQU1DLElBQUksR0FBR0MsV0FBVyxDQUFDQyxhQUFhLENBQUMsSUFBSSxDQUFDO1FBQzVDLE1BQU1DLGFBQWEsR0FBSUgsSUFBSSxFQUFFSSxXQUFXLENBQUMsQ0FBQyxFQUFpQ0QsYUFBYTtRQUN4RixNQUFNRSxZQUFZLEdBQUcsSUFBSSxDQUFDUCxPQUFPLENBQUNRLGtCQUFrQixDQUFDLENBQUMsQ0FBQ0MsT0FBTztRQUU5RCxJQUNDRixZQUFZLENBQUNHLFlBQVksS0FBSyxNQUFNO1FBQ3BDO1FBQ0NILFlBQVksQ0FBQ0ksWUFBWSxLQUFLQyxZQUFZLENBQUNDLFdBQVcsSUFBSVIsYUFBYSxLQUFLLE1BQU0sQ0FBQyxJQUNwRixDQUFDUCxVQUFVLENBQUNnQixhQUFhLENBQUMseUNBQXlDLENBQUMsRUFDbkU7VUFDRGhCLFVBQVUsQ0FBQ2lCLGFBQWEsQ0FBQyx5Q0FBeUMsQ0FBQztRQUNwRTtNQUNEO01BQ0EsT0FBQWhELFVBQUEsQ0FBQWMsU0FBQSxDQUFhZSxnQkFBZ0IsQ0FBQXJCLElBQUEsT0FBQ3NCLE1BQU07SUFDckMsQ0FBQztJQUFBakIsTUFBQSxDQUVEb0MsT0FBTyxHQUFQLFNBQUFBLE9BQU9BLENBQUNDLEtBQWEsRUFBUTtNQUM1QixJQUFJLENBQUNDLFdBQVcsQ0FBQyxNQUFNLEVBQUVELEtBQUssQ0FBQztNQUMvQjtJQUNELENBQUM7SUFBQXJDLE1BQUEsQ0FFRHVDLGVBQWUsR0FBZixTQUFBQSxlQUFlQSxDQUFBLEVBQVM7TUFDdkI7SUFBQTs7SUFHRDtJQUFBO0lBQUF2QyxNQUFBLENBQ0FRLHVCQUF1QixHQUF2QixTQUFBQSx1QkFBdUJBLENBQUEsRUFBMkM7TUFDakUsT0FBTyxJQUFJLENBQUNnQyxjQUFjLENBQUMsU0FBUyxDQUFDO0lBQ3RDLENBQUM7SUFBQSxPQUFBbEUsZUFBQTtFQUFBLEVBMUQ0Qm1FLFNBQVMsR0FBQTVDLFdBQUEsR0FBQTZDLHlCQUFBLENBQUF4RCxPQUFBLENBQUFlLFNBQUEsbUJBQUF4QixLQUFBO0lBQUFrRSxZQUFBO0lBQUFDLFVBQUE7SUFBQUMsUUFBQTtJQUFBQyxXQUFBO0VBQUEsSUFBQWhELFlBQUEsR0FBQTRDLHlCQUFBLENBQUF4RCxPQUFBLENBQUFlLFNBQUEsY0FBQW5CLEtBQUE7SUFBQTZELFlBQUE7SUFBQUMsVUFBQTtJQUFBQyxRQUFBO0lBQUFDLFdBQUE7RUFBQSxJQUFBNUQsT0FBQSxNQUFBRCxNQUFBO0VBQUEsT0FrRXhCWCxlQUFlO0FBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -1,4 +1,6 @@
1
1
  import { aggregation, defineUI5Class, property } from "sap/fe/base/ClassSupport";
2
+ import CommonUtils from "sap/fe/core/CommonUtils";
3
+ import { CreationMode, type ObjectPageManifestSettings } from "sap/fe/core/converters/ManifestSettings";
2
4
  import type SubSection from "sap/fe/macros/controls/section/SubSection";
3
5
  import type TableAPI from "sap/fe/macros/Table";
4
6
  import type ManagedObject from "sap/ui/base/ManagedObject";
@@ -38,8 +40,14 @@ class SubSectionBlock extends BlockBase {
38
40
  onAfterRendering(oEvent: jQuery.Event): void | undefined {
39
41
  const subSection = this._oParentObjectPageSubSection as unknown as SubSection;
40
42
  if (subSection.getBlocks().length === 1 && this.content && this.content.isA<TableAPI>("sap.fe.macros.Table")) {
43
+ const view = CommonUtils.getTargetView(this);
44
+ const sectionLayout = (view?.getViewData() as ObjectPageManifestSettings)?.sectionLayout;
45
+ const tableControl = this.content.getTableDefinition().control;
46
+
41
47
  if (
42
- this.content.getTableDefinition().control.rowCountMode === "Auto" &&
48
+ tableControl.rowCountMode === "Auto" &&
49
+ // Exclude CreationRow mode unless sectionLayout is Tabs: the fit-container style creates whitespace in the subsection in display mode when CreationRow is used in TableCreationOptions
50
+ (tableControl.creationMode !== CreationMode.CreationRow || sectionLayout === "Tabs") &&
43
51
  !subSection.hasStyleClass("sapUxAPObjectPageSubSectionFitContainer")
44
52
  ) {
45
53
  subSection.addStyleClass("sapUxAPObjectPageSubSectionFitContainer");
@@ -4,7 +4,7 @@
4
4
  "id": "sap.fe.templates.ObjectPage",
5
5
  "type": "component",
6
6
  "applicationVersion": {
7
- "version": "1.148.0"
7
+ "version": "1.148.1"
8
8
  },
9
9
  "title": "Object Page",
10
10
  "tags": {
@@ -80,7 +80,7 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/CommonUtils", "sap/fe/core/helpers/K
80
80
  // Skip navigation and polling on subsequent loads - only restore section during initial load
81
81
  // This prevents overriding user's manual tab selection when state is restored later
82
82
  const controllerWithFlag = controller;
83
- if (controllerWithFlag.hasInitialLoadCompleted === true) {
83
+ if (controllerWithFlag.skipViewStateSectionRestore === true) {
84
84
  return;
85
85
  }
86
86
 
@@ -236,4 +236,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/CommonUtils", "sap/fe/core/helpers/K
236
236
  };
237
237
  return ViewStateExtensionOverride;
238
238
  }, false);
239
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYXJpYW50TWFuYWdlbWVudCIsIkNvcmVMaWJyYXJ5Iiwib3BDb250cm9sSGFuZGxlcnMiLCJyZXRyaWV2ZSIsIm9PUExheW91dCIsImNvbnRyb2xsZXIiLCJnZXRWaWV3IiwiZ2V0Q29udHJvbGxlciIsInRhcmdldFN1YlNlY3Rpb24iLCJzZWxlY3RlZFNlY3Rpb24iLCJnZXRTZWxlY3RlZFNlY3Rpb24iLCJzZWxlY3RlZFN1YlNlY3Rpb24iLCJnZXRJZCIsImFwcGx5Iiwib3BMYXlvdXQiLCJjb250cm9sU3RhdGUiLCJvcFNlY3Rpb25Ub1NlbGVjdCIsImdldFNlY3Rpb25zIiwiZmluZCIsInNlY3Rpb24iLCJpc1N1YlNlY3Rpb25JZCIsImJ5SWQiLCJpc0EiLCJuYXZpZ2F0aW9uVGFyZ2V0IiwiaXNOYXZpZ2F0aW5nVG9TdWJTZWN0aW9uIiwiZ2V0VGFyZ2V0U2VjdGlvbklkIiwicyIsImdldFN1YlNlY3Rpb25zIiwic29tZSIsInNzIiwicGFnZVJlYWR5Iiwid2FpdFBhZ2VSZWFkeSIsInRoZW4iLCJ0YXJnZXRTZWN0aW9uSWQiLCJwZXJmb3JtTmF2aWdhdGlvbiIsImdldERvbVJlZiIsImN1cnJlbnRTZWN0aW9uIiwibG9jYWxJZCIsImdldExvY2FsSWQiLCJnZXRFeHRlbnNpb25BUEkiLCJuYXZpZ2F0ZVRvU3ViU2VjdGlvbiIsInNjcm9sbFRvU2VjdGlvbiIsImdldFZpc2libGUiLCJjb250cm9sbGVyV2l0aEZsYWciLCJoYXNJbml0aWFsTG9hZENvbXBsZXRlZCIsInBvbGxGb3JTZWN0aW9uU3RhYmlsaXR5Iiwib25SZXNldERldGVjdGVkIiwiZ3VhcmRDaGVjayIsImNhdGNoIiwicmVmcmVzaEJpbmRpbmciLCJvQmluZGluZ0NvbnRleHQiLCJnZXRCaW5kaW5nQ29udGV4dCIsIm9CaW5kaW5nIiwiZ2V0QmluZGluZyIsInNNZXRhUGF0aCIsIk1vZGVsSGVscGVyIiwiZ2V0TWV0YVBhdGhGb3JDb250ZXh0Iiwic1N0cmF0ZWd5IiwiS2VlcEFsaXZlSGVscGVyIiwiZ2V0Q29udHJvbFJlZnJlc2hTdHJhdGVneUZvckNvbnRleHRQYXRoIiwib01vZGVsIiwiZ2V0TW9kZWwiLCJvTWV0YU1vZGVsIiwiZ2V0TWV0YU1vZGVsIiwib05hdmlnYXRpb25Qcm9wZXJ0aWVzIiwiQ29tbW9uVXRpbHMiLCJnZXRDb250ZXh0UGF0aFByb3BlcnRpZXMiLCIka2luZCIsImFOYXZQcm9wZXJ0aWVzVG9SZXF1ZXN0IiwiT2JqZWN0Iiwia2V5cyIsInJlZHVjZSIsImFQcmV2Iiwic05hdlByb3AiLCIkaXNDb2xsZWN0aW9uIiwicHVzaCIsIiROYXZpZ2F0aW9uUHJvcGVydHlQYXRoIiwiYVByb3BlcnRpZXMiLCIkUHJvcGVydHlQYXRoIiwic0dyb3VwSWQiLCJnZXRHcm91cElkIiwicmVxdWVzdFNpZGVFZmZlY3RzIiwiY29uY2F0IiwicmVmcmVzaCIsIkxvZyIsImluZm8iLCJWaWV3U3RhdGVFeHRlbnNpb25PdmVycmlkZSIsIl9nZXRPYmplY3RQYWdlTGF5b3V0IiwidmlldyIsIl9nZXRPYmplY3RQYWdlTGF5b3V0Q29udHJvbCIsIl9nZXRPUFN0YXRlSGFuZGxlciIsImNvbnRyb2wiLCJ2aWV3T1AiLCJjYWxsIiwiX2dldE9QUmVmcmVzaEhhbmRsZXIiLCJhZGFwdENvbnRyb2xTdGF0ZUhhbmRsZXIiLCJjb250cm9sU3RhdGVIYW5kbGVycyIsIm9wU3RhdGVIYW5kbGVyIiwiYWRhcHRCaW5kaW5nUmVmcmVzaEhhbmRsZXIiLCJjb250cm9sUmVmcmVzaEhhbmRsZXJzIiwiYXBwbHlJbml0aWFsU3RhdGVPbmx5IiwiYWRhcHRTdGF0ZUNvbnRyb2xzIiwiYVN0YXRlQ29udHJvbHMiLCJvVmlldyIsImJhc2UiLCJvVmlld0RhdGEiLCJnZXRWaWV3RGF0YSIsInZhcmlhbnRNYW5hZ2VtZW50IiwiQ29udHJvbCIsIlBhZ2UiLCJOb25lIiwiRXJyb3IiLCJhZGFwdEJpbmRpbmdSZWZyZXNoQ29udHJvbHMiLCJhQ29udHJvbHMiLCJzUmVmcmVzaFN0cmF0ZWd5IiwiZ2V0Vmlld1JlZnJlc2hJbmZvIiwib0NvbnRyb2xsZXIiLCJhQ29udHJvbHNUb1JlZnJlc2giLCJvT2JqZWN0UGFnZUNvbnRyb2wiLCJhVmlld0NvbnRyb2xzIiwiX2ZpbmRUYWJsZXMiLCJnZXRDb250cm9sc0ZvclJlZnJlc2giLCJhUHJldkNvbnRyb2xzIiwib0NvbnRyb2wiLCJpbmNsdWRlcyJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiVmlld1N0YXRlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IENvbW1vblV0aWxzIGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IHR5cGUgVmlld1N0YXRlIGZyb20gXCJzYXAvZmUvY29yZS9jb250cm9sbGVyZXh0ZW5zaW9ucy9WaWV3U3RhdGVcIjtcbmltcG9ydCB7IHR5cGUgQ29udHJvbFN0YXRlSGFuZGxlciB9IGZyb20gXCJzYXAvZmUvY29yZS9jb250cm9sbGVyZXh0ZW5zaW9ucy9WaWV3U3RhdGVcIjtcbmltcG9ydCBLZWVwQWxpdmVIZWxwZXIgZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvS2VlcEFsaXZlSGVscGVyXCI7XG5pbXBvcnQgTW9kZWxIZWxwZXIgZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvTW9kZWxIZWxwZXJcIjtcbmltcG9ydCBDb3JlTGlicmFyeSBmcm9tIFwic2FwL2ZlL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IHsgcG9sbEZvclNlY3Rpb25TdGFiaWxpdHkgfSBmcm9tIFwic2FwL2ZlL3RlbXBsYXRlcy9PYmplY3RQYWdlL2hlbHBlcnMvU2VjdGlvbk5hdmlnYXRpb25IZWxwZXJcIjtcbmltcG9ydCB0eXBlIE9iamVjdFBhZ2VDb250cm9sbGVyIGZyb20gXCJzYXAvZmUvdGVtcGxhdGVzL09iamVjdFBhZ2UvT2JqZWN0UGFnZUNvbnRyb2xsZXIuY29udHJvbGxlclwiO1xuaW1wb3J0IHR5cGUgTWFuYWdlZE9iamVjdCBmcm9tIFwic2FwL3VpL2Jhc2UvTWFuYWdlZE9iamVjdFwiO1xuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IHR5cGUgT0RhdGFWNENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9Db250ZXh0XCI7XG5pbXBvcnQgdHlwZSBPYmplY3RQYWdlTGF5b3V0IGZyb20gXCJzYXAvdXhhcC9PYmplY3RQYWdlTGF5b3V0XCI7XG5pbXBvcnQgdHlwZSBPYmplY3RQYWdlU2VjdGlvbiBmcm9tIFwic2FwL3V4YXAvT2JqZWN0UGFnZVNlY3Rpb25cIjtcbmltcG9ydCB0eXBlIHsgTWV0YU1vZGVsTmF2UHJvcGVydHkgfSBmcm9tIFwidHlwZXMvbWV0YW1vZGVsX3R5cGVzXCI7XG5cbmNvbnN0IFZhcmlhbnRNYW5hZ2VtZW50ID0gQ29yZUxpYnJhcnkuVmFyaWFudE1hbmFnZW1lbnQ7XG5leHBvcnQgdHlwZSBPYmplY3RQYWdlU3RhdGUgPSB7IHNlbGVjdGVkU2VjdGlvbjogc3RyaW5nIHwgbnVsbDsgc2VsZWN0ZWRTdWJTZWN0aW9uPzogc3RyaW5nIHwgbnVsbCB9O1xuXG5jb25zdCBvcENvbnRyb2xIYW5kbGVycyA9IHtcblx0cmV0cmlldmU6IGZ1bmN0aW9uICh0aGlzOiBWaWV3U3RhdGUsIG9PUExheW91dDogT2JqZWN0UGFnZUxheW91dCk6IE9iamVjdFBhZ2VTdGF0ZSB7XG5cdFx0Y29uc3QgY29udHJvbGxlciA9IHRoaXMuZ2V0VmlldygpLmdldENvbnRyb2xsZXIoKSBhcyBPYmplY3RQYWdlQ29udHJvbGxlcjtcblx0XHQvLyBHZXQgc3Vic2VjdGlvbiBmcm9tIGNvbnRyb2xsZXIncyBzdG9yZWQgdGFyZ2V0IHN1YnNlY3Rpb24gKHNldCBieSBvbk5hdmlnYXRlQ2hhbmdlIG9yIHRhcmdldENvbnRyb2xJZCBuYXZpZ2F0aW9uKVxuXHRcdGNvbnN0IHRhcmdldFN1YlNlY3Rpb24gPSAoY29udHJvbGxlciBhcyB1bmtub3duIGFzIHsgdGFyZ2V0U3ViU2VjdGlvbj86IHsgZ2V0SWQ6ICgpID0+IHN0cmluZyB9IH0pLnRhcmdldFN1YlNlY3Rpb247XG5cdFx0Y29uc3Qgc2VsZWN0ZWRTZWN0aW9uID0gb09QTGF5b3V0LmdldFNlbGVjdGVkU2VjdGlvbigpO1xuXHRcdGNvbnN0IHNlbGVjdGVkU3ViU2VjdGlvbiA9IHRhcmdldFN1YlNlY3Rpb24/LmdldElkKCkgPz8gbnVsbDtcblx0XHRyZXR1cm4ge1xuXHRcdFx0c2VsZWN0ZWRTZWN0aW9uLFxuXHRcdFx0c2VsZWN0ZWRTdWJTZWN0aW9uXG5cdFx0fTtcblx0fSxcblx0YXBwbHk6IGZ1bmN0aW9uIChcblx0XHR0aGlzOiBWaWV3U3RhdGUsXG5cdFx0b3BMYXlvdXQ6IE9iamVjdFBhZ2VMYXlvdXQsXG5cdFx0Y29udHJvbFN0YXRlPzogeyBzZWxlY3RlZFNlY3Rpb246IHN0cmluZyB8IG51bGw7IHNlbGVjdGVkU3ViU2VjdGlvbj86IHN0cmluZyB8IG51bGwgfVxuXHQpOiB2b2lkIHtcblx0XHRjb25zdCBzZWxlY3RlZFNlY3Rpb24gPSBjb250cm9sU3RhdGU/LnNlbGVjdGVkU2VjdGlvbjtcblx0XHRjb25zdCBzZWxlY3RlZFN1YlNlY3Rpb24gPSBjb250cm9sU3RhdGU/LnNlbGVjdGVkU3ViU2VjdGlvbjtcblxuXHRcdGlmICghc2VsZWN0ZWRTZWN0aW9uKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0Ly8gQ2hlY2sgaWYgdGhlIHNlbGVjdGVkIHNlY3Rpb24gaXMgYSBzZWN0aW9uIG9yIHN1YnNlY3Rpb25cblx0XHRjb25zdCBvcFNlY3Rpb25Ub1NlbGVjdCA9IG9wTGF5b3V0LmdldFNlY3Rpb25zKCkuZmluZCgoc2VjdGlvbjogT2JqZWN0UGFnZVNlY3Rpb24pID0+IHNlY3Rpb24uZ2V0SWQoKSA9PT0gc2VsZWN0ZWRTZWN0aW9uKTtcblx0XHRjb25zdCBpc1N1YlNlY3Rpb25JZCA9ICFvcFNlY3Rpb25Ub1NlbGVjdCAmJiB0aGlzLmdldFZpZXcoKS5ieUlkKHNlbGVjdGVkU2VjdGlvbik/LmlzQShcInNhcC51eGFwLk9iamVjdFBhZ2VTdWJTZWN0aW9uXCIpO1xuXHRcdGNvbnN0IGNvbnRyb2xsZXIgPSB0aGlzLmdldFZpZXcoKS5nZXRDb250cm9sbGVyKCkgYXMgT2JqZWN0UGFnZUNvbnRyb2xsZXI7XG5cblx0XHQvLyBEZXRlcm1pbmUgdGhlIHRhcmdldCB0byBuYXZpZ2F0ZSB0bzogcHJlZmVyIHN1YnNlY3Rpb24gaWYgYXZhaWxhYmxlXG5cdFx0Y29uc3QgbmF2aWdhdGlvblRhcmdldCA9IHNlbGVjdGVkU3ViU2VjdGlvbiA/PyBzZWxlY3RlZFNlY3Rpb247XG5cdFx0Y29uc3QgaXNOYXZpZ2F0aW5nVG9TdWJTZWN0aW9uID0gISFzZWxlY3RlZFN1YlNlY3Rpb24gfHwgaXNTdWJTZWN0aW9uSWQ7XG5cblx0XHQvLyBEZXRlcm1pbmUgdGFyZ2V0IHNlY3Rpb24gSUQgZm9yIGNvbXBhcmlzb24gIChuZWVkZWQgYmVmb3JlIHBhZ2VSZWFkeSlcblx0XHRjb25zdCBnZXRUYXJnZXRTZWN0aW9uSWQgPSAoKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+IHtcblx0XHRcdGlmIChpc1N1YlNlY3Rpb25JZCkge1xuXHRcdFx0XHRyZXR1cm4gb3BMYXlvdXRcblx0XHRcdFx0XHQuZ2V0U2VjdGlvbnMoKVxuXHRcdFx0XHRcdC5maW5kKChzKSA9PiBzLmdldFN1YlNlY3Rpb25zKCkuc29tZSgoc3MpID0+IHNzLmdldElkKCkgPT09IG5hdmlnYXRpb25UYXJnZXQpKVxuXHRcdFx0XHRcdD8uZ2V0SWQoKTtcblx0XHRcdH1cblx0XHRcdHJldHVybiBzZWxlY3RlZFNlY3Rpb247XG5cdFx0fTtcblxuXHRcdC8vIFdhaXQgZm9yIHBhZ2VSZWFkeSwgdGhlbiBuYXZpZ2F0ZSBhbmQgcG9sbCBmb3IgVVggcnVsZXMgcmVzZXRcblx0XHRjb250cm9sbGVyLnBhZ2VSZWFkeVxuXHRcdFx0LndhaXRQYWdlUmVhZHkoKVxuXHRcdFx0LnRoZW4oYXN5bmMgKCkgPT4ge1xuXHRcdFx0XHRjb25zdCB0YXJnZXRTZWN0aW9uSWQgPSBnZXRUYXJnZXRTZWN0aW9uSWQoKTtcblxuXHRcdFx0XHQvLyBTa2lwIGlmIG5vIHZhbGlkIHRhcmdldCBzZWN0aW9uIChlLmcuLCBzdWJzZWN0aW9uJ3MgcGFyZW50IG5vIGxvbmdlciBleGlzdHMpXG5cdFx0XHRcdC8vIG9yIGFscmVhZHkgb24gdGFyZ2V0IHNlY3Rpb24gLSBubyBuYXZpZ2F0aW9uIG9yIHBvbGxpbmcgbmVlZGVkXG5cdFx0XHRcdGlmICghdGFyZ2V0U2VjdGlvbklkIHx8IG9wTGF5b3V0LmdldFNlbGVjdGVkU2VjdGlvbigpID09PSB0YXJnZXRTZWN0aW9uSWQpIHtcblx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRjb25zdCBwZXJmb3JtTmF2aWdhdGlvbiA9ICgpOiB2b2lkID0+IHtcblx0XHRcdFx0XHQvLyBHdWFyZDogZG9uJ3QgbmF2aWdhdGUgaWYgT2JqZWN0UGFnZUxheW91dCBoYXMgYmVlbiBkZXN0cm95ZWRcblx0XHRcdFx0XHRpZiAoIW9wTGF5b3V0LmdldERvbVJlZigpKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ly8gR3VhcmQ6IGRvbid0IG5hdmlnYXRlIGlmIGFscmVhZHkgb24gdGFyZ2V0IHNlY3Rpb25cblx0XHRcdFx0XHRjb25zdCBjdXJyZW50U2VjdGlvbiA9IG9wTGF5b3V0LmdldFNlbGVjdGVkU2VjdGlvbigpO1xuXHRcdFx0XHRcdGlmIChjdXJyZW50U2VjdGlvbiA9PT0gdGFyZ2V0U2VjdGlvbklkKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0aWYgKGlzTmF2aWdhdGluZ1RvU3ViU2VjdGlvbikge1xuXHRcdFx0XHRcdFx0Ly8gRm9yIHN1YnNlY3Rpb24gbmF2aWdhdGlvbiwgdXNlIG5hdmlnYXRlVG9TdWJTZWN0aW9uIHdoaWNoIGhhbmRsZXMgcGFyZW50IHNlY3Rpb24gYWN0aXZhdGlvblxuXHRcdFx0XHRcdFx0Y29uc3QgbG9jYWxJZCA9IGNvbnRyb2xsZXIuZ2V0VmlldygpLmdldExvY2FsSWQobmF2aWdhdGlvblRhcmdldCk7XG5cdFx0XHRcdFx0XHRpZiAobG9jYWxJZCkge1xuXHRcdFx0XHRcdFx0XHRjb250cm9sbGVyLmdldEV4dGVuc2lvbkFQSSgpLm5hdmlnYXRlVG9TdWJTZWN0aW9uKGxvY2FsSWQpO1xuXHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0b3BMYXlvdXQuc2Nyb2xsVG9TZWN0aW9uKG5hdmlnYXRpb25UYXJnZXQsIDApO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0gZWxzZSBpZiAob3BTZWN0aW9uVG9TZWxlY3QgJiYgb3BTZWN0aW9uVG9TZWxlY3QuZ2V0VmlzaWJsZSgpID09PSB0cnVlKSB7XG5cdFx0XHRcdFx0XHQvLyBGb3Igc2VjdGlvbiBJRHMsIG5hdmlnYXRlIGlmIHNlY3Rpb24gaXMgdmlzaWJsZVxuXHRcdFx0XHRcdFx0b3BMYXlvdXQuc2Nyb2xsVG9TZWN0aW9uKHNlbGVjdGVkU2VjdGlvbiwgMCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9O1xuXG5cdFx0XHRcdC8vIFNraXAgbmF2aWdhdGlvbiBhbmQgcG9sbGluZyBvbiBzdWJzZXF1ZW50IGxvYWRzIC0gb25seSByZXN0b3JlIHNlY3Rpb24gZHVyaW5nIGluaXRpYWwgbG9hZFxuXHRcdFx0XHQvLyBUaGlzIHByZXZlbnRzIG92ZXJyaWRpbmcgdXNlcidzIG1hbnVhbCB0YWIgc2VsZWN0aW9uIHdoZW4gc3RhdGUgaXMgcmVzdG9yZWQgbGF0ZXJcblx0XHRcdFx0Y29uc3QgY29udHJvbGxlcldpdGhGbGFnID0gY29udHJvbGxlciBhcyB1bmtub3duIGFzIHsgaGFzSW5pdGlhbExvYWRDb21wbGV0ZWQ/OiBib29sZWFuIH07XG5cdFx0XHRcdGlmIChjb250cm9sbGVyV2l0aEZsYWcuaGFzSW5pdGlhbExvYWRDb21wbGV0ZWQgPT09IHRydWUpIHtcblx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBOYXZpZ2F0ZSBpbW1lZGlhdGVseVxuXHRcdFx0XHRwZXJmb3JtTmF2aWdhdGlvbigpO1xuXG5cdFx0XHRcdC8vIFNraXAgcG9sbGluZyBpZiBhbHJlYWR5IG9uIHRhcmdldCBzZWN0aW9uXG5cdFx0XHRcdGlmIChvcExheW91dC5nZXRTZWxlY3RlZFNlY3Rpb24oKSA9PT0gdGFyZ2V0U2VjdGlvbklkKSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gUG9sbCB0byBkZXRlY3QgVVggcnVsZXMgcmVzZXQgZHVyaW5nIGluaXRpYWwgbG9hZFxuXHRcdFx0XHQvLyBVc2VzIHNoYXJlZCB1dGlsaXR5IGZyb20gaGVscGVycy9TZWN0aW9uTmF2aWdhdGlvbkhlbHBlci50c1xuXHRcdFx0XHRhd2FpdCBwb2xsRm9yU2VjdGlvblN0YWJpbGl0eSh7XG5cdFx0XHRcdFx0Z2V0U2VsZWN0ZWRTZWN0aW9uOiAoKSA9PiBvcExheW91dC5nZXRTZWxlY3RlZFNlY3Rpb24oKSxcblx0XHRcdFx0XHR0YXJnZXRTZWN0aW9uSWQsXG5cdFx0XHRcdFx0b25SZXNldERldGVjdGVkOiBwZXJmb3JtTmF2aWdhdGlvbixcblx0XHRcdFx0XHRndWFyZENoZWNrOiAoKSA9PiAhIW9wTGF5b3V0LmdldERvbVJlZigpXG5cdFx0XHRcdH0pO1xuXHRcdFx0XHRyZXR1cm47IC8vIFJlcXVpcmVkIGJ5IGxpbnRlciBydWxlIHByb21pc2UvYWx3YXlzLXJldHVyblxuXHRcdFx0fSlcblx0XHRcdC5jYXRjaCgoKSA9PiB7XG5cdFx0XHRcdC8vIFZpZXdTdGF0ZTogT2JqZWN0UGFnZUxheW91dCBzZWN0aW9uIHN0YXRlIGNvdWxkbid0IGJlIGFwcGxpZWRcblx0XHRcdFx0Ly8gRG9uJ3QgcmUtdGhyb3cgLSBhbGxvdyBwYWdlIHRvIGNvbnRpbnVlIGV2ZW4gaWYgbmF2aWdhdGlvbiBmYWlsc1xuXHRcdFx0fSk7XG5cdH0sXG5cdHJlZnJlc2hCaW5kaW5nOiBmdW5jdGlvbiAob09QTGF5b3V0OiBPYmplY3RQYWdlTGF5b3V0KTogdm9pZCB7XG5cdFx0Y29uc3Qgb0JpbmRpbmdDb250ZXh0ID0gb09QTGF5b3V0LmdldEJpbmRpbmdDb250ZXh0KCkgYXMgT0RhdGFWNENvbnRleHQgfCB1bmRlZmluZWQ7XG5cdFx0Y29uc3Qgb0JpbmRpbmcgPSBvQmluZGluZ0NvbnRleHQgJiYgb0JpbmRpbmdDb250ZXh0LmdldEJpbmRpbmcoKTtcblx0XHRpZiAob0JpbmRpbmcpIHtcblx0XHRcdGNvbnN0IHNNZXRhUGF0aCA9IE1vZGVsSGVscGVyLmdldE1ldGFQYXRoRm9yQ29udGV4dChvQmluZGluZ0NvbnRleHQpO1xuXHRcdFx0Y29uc3Qgc1N0cmF0ZWd5ID0gS2VlcEFsaXZlSGVscGVyLmdldENvbnRyb2xSZWZyZXNoU3RyYXRlZ3lGb3JDb250ZXh0UGF0aChvT1BMYXlvdXQsIHNNZXRhUGF0aCk7XG5cdFx0XHRpZiAoc1N0cmF0ZWd5ID09PSBcInNlbGZcIikge1xuXHRcdFx0XHQvLyBSZWZyZXNoIG1haW4gY29udGV4dCBhbmQgMS0xIG5hdmlnYXRpb24gcHJvcGVydGllcyBvciBPUFxuXHRcdFx0XHRjb25zdCBvTW9kZWwgPSBvQmluZGluZ0NvbnRleHQuZ2V0TW9kZWwoKSxcblx0XHRcdFx0XHRvTWV0YU1vZGVsID0gb01vZGVsLmdldE1ldGFNb2RlbCgpLFxuXHRcdFx0XHRcdG9OYXZpZ2F0aW9uUHJvcGVydGllczogUmVjb3JkPHN0cmluZywgTWV0YU1vZGVsTmF2UHJvcGVydHk+ID1cblx0XHRcdFx0XHRcdChDb21tb25VdGlscy5nZXRDb250ZXh0UGF0aFByb3BlcnRpZXMob01ldGFNb2RlbCwgc01ldGFQYXRoLCB7XG5cdFx0XHRcdFx0XHRcdCRraW5kOiBcIk5hdmlnYXRpb25Qcm9wZXJ0eVwiXG5cdFx0XHRcdFx0XHR9KSBhcyBSZWNvcmQ8c3RyaW5nLCBNZXRhTW9kZWxOYXZQcm9wZXJ0eT4pIHx8IHt9LFxuXHRcdFx0XHRcdGFOYXZQcm9wZXJ0aWVzVG9SZXF1ZXN0ID0gT2JqZWN0LmtleXMob05hdmlnYXRpb25Qcm9wZXJ0aWVzKS5yZWR1Y2UoZnVuY3Rpb24gKFxuXHRcdFx0XHRcdFx0YVByZXY6IHsgJE5hdmlnYXRpb25Qcm9wZXJ0eVBhdGg6IHN0cmluZyB9W10sXG5cdFx0XHRcdFx0XHRzTmF2UHJvcDogc3RyaW5nXG5cdFx0XHRcdFx0KSB7XG5cdFx0XHRcdFx0XHRpZiAob05hdmlnYXRpb25Qcm9wZXJ0aWVzW3NOYXZQcm9wXS4kaXNDb2xsZWN0aW9uICE9PSB0cnVlKSB7XG5cdFx0XHRcdFx0XHRcdGFQcmV2LnB1c2goeyAkTmF2aWdhdGlvblByb3BlcnR5UGF0aDogc05hdlByb3AgfSk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRyZXR1cm4gYVByZXY7XG5cdFx0XHRcdFx0fSwgW10pLFxuXHRcdFx0XHRcdGFQcm9wZXJ0aWVzOiAoeyAkTmF2aWdhdGlvblByb3BlcnR5UGF0aDogc3RyaW5nIH0gfCB7ICRQcm9wZXJ0eVBhdGg6IHN0cmluZyB9KVtdID0gW3sgJFByb3BlcnR5UGF0aDogXCIqXCIgfV0sXG5cdFx0XHRcdFx0c0dyb3VwSWQgPSBvQmluZGluZy5nZXRHcm91cElkKCk7XG5cblx0XHRcdFx0b0JpbmRpbmdDb250ZXh0LnJlcXVlc3RTaWRlRWZmZWN0cyhhUHJvcGVydGllcy5jb25jYXQoYU5hdlByb3BlcnRpZXNUb1JlcXVlc3QpLCBzR3JvdXBJZCk7XG5cdFx0XHR9IGVsc2UgaWYgKHNTdHJhdGVneSA9PT0gXCJpbmNsdWRpbmdEZXBlbmRlbnRzXCIpIHtcblx0XHRcdFx0Ly8gQ29tcGxldGUgcmVmcmVzaFxuXHRcdFx0XHRvQmluZGluZy5yZWZyZXNoKCk7XG5cdFx0XHR9XG5cdFx0fSBlbHNlIHtcblx0XHRcdExvZy5pbmZvKGBPYmplY3RQYWdlOiAke29PUExheW91dC5nZXRJZCgpfSB3YXMgbm90IHJlZnJlc2hlZC4gTm8gYmluZGluZyBmb3VuZCFgKTtcblx0XHR9XG5cdH1cbn07XG5cbmNvbnN0IFZpZXdTdGF0ZUV4dGVuc2lvbk92ZXJyaWRlID0ge1xuXHRfZ2V0T2JqZWN0UGFnZUxheW91dDogZnVuY3Rpb24gKHRoaXM6IFZpZXdTdGF0ZSk6IE9iamVjdFBhZ2VMYXlvdXQge1xuXHRcdGNvbnN0IHZpZXcgPSB0aGlzLmdldFZpZXcoKTtcblx0XHRjb25zdCBjb250cm9sbGVyID0gdmlldy5nZXRDb250cm9sbGVyKCkgYXMgT2JqZWN0UGFnZUNvbnRyb2xsZXI7XG5cdFx0cmV0dXJuIGNvbnRyb2xsZXIuX2dldE9iamVjdFBhZ2VMYXlvdXRDb250cm9sKCk7XG5cdH0sXG5cblx0LyoqXG5cdCAqIEdldCB0aGUgc3RhdGUgaGFuZGxlciBmb3IgT2JqZWN0UGFnZUxheW91dCBpbiB2aWV3LlxuXHQgKiBAcGFyYW0gY29udHJvbCBUaGUgY29udHJvbCBmb3Igc3RhdGUgaW50ZXJhY3Rpb25cblx0ICogQHJldHVybnMgU3RhdGUgaGFuZGxlclxuXHQgKi9cblx0X2dldE9QU3RhdGVIYW5kbGVyOiBmdW5jdGlvbiAoXG5cdFx0dGhpczogVmlld1N0YXRlLFxuXHRcdGNvbnRyb2w6IE1hbmFnZWRPYmplY3Rcblx0KTogQ29udHJvbFN0YXRlSGFuZGxlcjxPYmplY3RQYWdlTGF5b3V0LCBPYmplY3RQYWdlU3RhdGU+IHwgdW5kZWZpbmVkIHtcblx0XHRjb25zdCB2aWV3T1AgPSBWaWV3U3RhdGVFeHRlbnNpb25PdmVycmlkZS5fZ2V0T2JqZWN0UGFnZUxheW91dC5jYWxsKHRoaXMpO1xuXHRcdGlmICh2aWV3T1AgPT09IGNvbnRyb2wpIHtcblx0XHRcdHJldHVybiB7XG5cdFx0XHRcdHJldHJpZXZlOiBvcENvbnRyb2xIYW5kbGVycy5yZXRyaWV2ZSxcblx0XHRcdFx0YXBwbHk6IG9wQ29udHJvbEhhbmRsZXJzLmFwcGx5XG5cdFx0XHR9O1xuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogR2V0IHRoZSByZWZyZXNoIGhhbmRsZXIgZm9yIE9iamVjdFBhZ2VMYXlvdXQgaW4gdmlldy5cblx0ICogQHBhcmFtIGNvbnRyb2wgVGhlIGNvbnRyb2wgYmVpbmcgcmVmcmVzaGVkXG5cdCAqIEByZXR1cm5zIFJlZnJlc2ggaGFuZGxlclxuXHQgKi9cblx0X2dldE9QUmVmcmVzaEhhbmRsZXI6IGZ1bmN0aW9uIChcblx0XHR0aGlzOiBWaWV3U3RhdGUsXG5cdFx0Y29udHJvbDogTWFuYWdlZE9iamVjdFxuXHQpOiBDb250cm9sU3RhdGVIYW5kbGVyPE9iamVjdFBhZ2VMYXlvdXQsIE9iamVjdFBhZ2VTdGF0ZT4gfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IHZpZXdPUCA9IFZpZXdTdGF0ZUV4dGVuc2lvbk92ZXJyaWRlLl9nZXRPYmplY3RQYWdlTGF5b3V0LmNhbGwodGhpcyk7XG5cdFx0aWYgKHZpZXdPUCA9PT0gY29udHJvbCkge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0cmVmcmVzaEJpbmRpbmc6IG9wQ29udHJvbEhhbmRsZXJzLnJlZnJlc2hCaW5kaW5nXG5cdFx0XHR9O1xuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogUGFzcyB0aGUgc3RhdGUgaGFuZGxlcnMgb2Ygb2JqZWN0IHBhZ2UgdmlldyBhY2NvcmRpbmcgdG8gdGhlIGNvbnRyb2wgaW4gY29uY2Vybi5cblx0ICogQHBhcmFtIGNvbnRyb2wgVGhlIGNvbnRyb2wgZm9yIHN0YXRlIGludGVyYWN0aW9uXG5cdCAqIEBwYXJhbSBjb250cm9sU3RhdGVIYW5kbGVycyBTdGF0ZSBoYW5kbGVyc1xuXHQgKi9cblx0YWRhcHRDb250cm9sU3RhdGVIYW5kbGVyOiBmdW5jdGlvbiAoXG5cdFx0dGhpczogVmlld1N0YXRlLFxuXHRcdGNvbnRyb2w6IE1hbmFnZWRPYmplY3QsXG5cdFx0Y29udHJvbFN0YXRlSGFuZGxlcnM6IENvbnRyb2xTdGF0ZUhhbmRsZXI8T2JqZWN0UGFnZUxheW91dCwgT2JqZWN0UGFnZVN0YXRlPltdXG5cdCk6IHZvaWQge1xuXHRcdGNvbnN0IG9wU3RhdGVIYW5kbGVyID0gVmlld1N0YXRlRXh0ZW5zaW9uT3ZlcnJpZGUuX2dldE9QU3RhdGVIYW5kbGVyLmNhbGwodGhpcywgY29udHJvbCk7XG5cdFx0aWYgKG9wU3RhdGVIYW5kbGVyKSB7XG5cdFx0XHRjb250cm9sU3RhdGVIYW5kbGVycy5wdXNoKG9wU3RhdGVIYW5kbGVyKTtcblx0XHR9XG5cdH0sXG5cblx0LyoqXG5cdCAqIFBhc3MgdGhlIHJlZnJlc2ggaGFuZGxlcnMgb2Ygb2JqZWN0IHBhZ2UgdmlldyBhY2NvcmRpbmcgdG8gdGhlIGNvbnRyb2wgYmVpbmcgcmVmcmVzaGVkLlxuXHQgKiBAcGFyYW0gY29udHJvbCBUaGUgY29udHJvbCBiZWluZyByZWZyZXNoZWRcblx0ICogQHBhcmFtIGNvbnRyb2xSZWZyZXNoSGFuZGxlcnMgUmVmcmVzaCBoYW5kbGVyc1xuXHQgKi9cblx0YWRhcHRCaW5kaW5nUmVmcmVzaEhhbmRsZXI6IGZ1bmN0aW9uIChcblx0XHR0aGlzOiBWaWV3U3RhdGUsXG5cdFx0Y29udHJvbDogTWFuYWdlZE9iamVjdCxcblx0XHRjb250cm9sUmVmcmVzaEhhbmRsZXJzOiBDb250cm9sU3RhdGVIYW5kbGVyPE9iamVjdFBhZ2VMYXlvdXQsIE9iamVjdFBhZ2VTdGF0ZT5cblx0KTogdm9pZCB7XG5cdFx0Y29uc3Qgb3BTdGF0ZUhhbmRsZXIgPSBWaWV3U3RhdGVFeHRlbnNpb25PdmVycmlkZS5fZ2V0T1BSZWZyZXNoSGFuZGxlci5jYWxsKHRoaXMsIGNvbnRyb2wpO1xuXHRcdGlmIChvcFN0YXRlSGFuZGxlcikge1xuXHRcdFx0Y29udHJvbFJlZnJlc2hIYW5kbGVycy5yZWZyZXNoQmluZGluZyA9IG9wU3RhdGVIYW5kbGVyLnJlZnJlc2hCaW5kaW5nO1xuXHRcdH1cblx0fSxcblxuXHRhcHBseUluaXRpYWxTdGF0ZU9ubHk6IGZ1bmN0aW9uICgpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gZmFsc2U7XG5cdH0sXG5cdGFkYXB0U3RhdGVDb250cm9sczogZnVuY3Rpb24gKHRoaXM6IFZpZXdTdGF0ZSwgYVN0YXRlQ29udHJvbHM6IENvbnRyb2xbXSk6IHZvaWQge1xuXHRcdGNvbnN0IG9WaWV3ID0gdGhpcy5iYXNlLmdldFZpZXcoKSxcblx0XHRcdG9WaWV3RGF0YSA9IG9WaWV3LmdldFZpZXdEYXRhKCk7XG5cdFx0c3dpdGNoIChvVmlld0RhdGEudmFyaWFudE1hbmFnZW1lbnQpIHtcblx0XHRcdGNhc2UgVmFyaWFudE1hbmFnZW1lbnQuQ29udHJvbDpcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHRjYXNlIFZhcmlhbnRNYW5hZ2VtZW50LlBhZ2U6XG5cdFx0XHRjYXNlIFZhcmlhbnRNYW5hZ2VtZW50Lk5vbmU6XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0ZGVmYXVsdDpcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKGB1bmhhbmRsZWQgdmFyaWFudCBzZXR0aW5nOiAke29WaWV3RGF0YS52YXJpYW50TWFuYWdlbWVudH1gKTtcblx0XHR9XG5cblx0XHRhU3RhdGVDb250cm9scy5wdXNoKG9WaWV3LmJ5SWQoXCJmZTo6T2JqZWN0UGFnZVwiKSBhcyBDb250cm9sKTtcblx0fSxcblx0YWRhcHRCaW5kaW5nUmVmcmVzaENvbnRyb2xzOiBmdW5jdGlvbiAodGhpczogVmlld1N0YXRlLCBhQ29udHJvbHM6IENvbnRyb2xbXSk6IENvbnRyb2xbXSB7XG5cdFx0Y29uc3Qgb1ZpZXcgPSB0aGlzLmJhc2UuZ2V0VmlldygpLFxuXHRcdFx0c1JlZnJlc2hTdHJhdGVneSA9IEtlZXBBbGl2ZUhlbHBlci5nZXRWaWV3UmVmcmVzaEluZm8ob1ZpZXcpLFxuXHRcdFx0b0NvbnRyb2xsZXIgPSBvVmlldy5nZXRDb250cm9sbGVyKCk7XG5cdFx0bGV0IGFDb250cm9sc1RvUmVmcmVzaDogQ29udHJvbFtdID0gW107XG5cblx0XHRpZiAoc1JlZnJlc2hTdHJhdGVneSkge1xuXHRcdFx0Y29uc3Qgb09iamVjdFBhZ2VDb250cm9sID0gKG9Db250cm9sbGVyIGFzIE9iamVjdFBhZ2VDb250cm9sbGVyKS5fZ2V0T2JqZWN0UGFnZUxheW91dENvbnRyb2woKTtcblx0XHRcdGFDb250cm9sc1RvUmVmcmVzaC5wdXNoKG9PYmplY3RQYWdlQ29udHJvbCk7XG5cdFx0fVxuXHRcdGlmIChzUmVmcmVzaFN0cmF0ZWd5ICE9PSBcImluY2x1ZGluZ0RlcGVuZGVudHNcIikge1xuXHRcdFx0Y29uc3QgYVZpZXdDb250cm9scyA9IChvQ29udHJvbGxlciBhcyBPYmplY3RQYWdlQ29udHJvbGxlcikuX2ZpbmRUYWJsZXMoKTtcblx0XHRcdGFDb250cm9sc1RvUmVmcmVzaCA9IGFDb250cm9sc1RvUmVmcmVzaC5jb25jYXQoS2VlcEFsaXZlSGVscGVyLmdldENvbnRyb2xzRm9yUmVmcmVzaChvVmlldywgYVZpZXdDb250cm9scykgfHwgW10pO1xuXHRcdH1cblx0XHRyZXR1cm4gYUNvbnRyb2xzVG9SZWZyZXNoLnJlZHVjZShmdW5jdGlvbiAoYVByZXZDb250cm9scywgb0NvbnRyb2wpIHtcblx0XHRcdGlmICghYVByZXZDb250cm9scy5pbmNsdWRlcyhvQ29udHJvbCkpIHtcblx0XHRcdFx0YVByZXZDb250cm9scy5wdXNoKG9Db250cm9sKTtcblx0XHRcdH1cblx0XHRcdHJldHVybiBhUHJldkNvbnRyb2xzO1xuXHRcdH0sIGFDb250cm9scyk7XG5cdH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IFZpZXdTdGF0ZUV4dGVuc2lvbk92ZXJyaWRlO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztFQWdCQSxNQUFNQSxpQkFBaUIsR0FBR0MsV0FBVyxDQUFDRCxpQkFBaUI7RUFHdkQsTUFBTUUsaUJBQWlCLEdBQUc7SUFDekJDLFFBQVEsRUFBRSxTQUFBQSxDQUEyQkMsU0FBMkIsRUFBbUI7TUFDbEYsTUFBTUMsVUFBVSxHQUFHLElBQUksQ0FBQ0MsT0FBTyxDQUFDLENBQUMsQ0FBQ0MsYUFBYSxDQUFDLENBQXlCO01BQ3pFO01BQ0EsTUFBTUMsZ0JBQWdCLEdBQUlILFVBQVUsQ0FBK0RHLGdCQUFnQjtNQUNuSCxNQUFNQyxlQUFlLEdBQUdMLFNBQVMsQ0FBQ00sa0JBQWtCLENBQUMsQ0FBQztNQUN0RCxNQUFNQyxrQkFBa0IsR0FB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
239
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYXJpYW50TWFuYWdlbWVudCIsIkNvcmVMaWJyYXJ5Iiwib3BDb250cm9sSGFuZGxlcnMiLCJyZXRyaWV2ZSIsIm9PUExheW91dCIsImNvbnRyb2xsZXIiLCJnZXRWaWV3IiwiZ2V0Q29udHJvbGxlciIsInRhcmdldFN1YlNlY3Rpb24iLCJzZWxlY3RlZFNlY3Rpb24iLCJnZXRTZWxlY3RlZFNlY3Rpb24iLCJzZWxlY3RlZFN1YlNlY3Rpb24iLCJnZXRJZCIsImFwcGx5Iiwib3BMYXlvdXQiLCJjb250cm9sU3RhdGUiLCJvcFNlY3Rpb25Ub1NlbGVjdCIsImdldFNlY3Rpb25zIiwiZmluZCIsInNlY3Rpb24iLCJpc1N1YlNlY3Rpb25JZCIsImJ5SWQiLCJpc0EiLCJuYXZpZ2F0aW9uVGFyZ2V0IiwiaXNOYXZpZ2F0aW5nVG9TdWJTZWN0aW9uIiwiZ2V0VGFyZ2V0U2VjdGlvbklkIiwicyIsImdldFN1YlNlY3Rpb25zIiwic29tZSIsInNzIiwicGFnZVJlYWR5Iiwid2FpdFBhZ2VSZWFkeSIsInRoZW4iLCJ0YXJnZXRTZWN0aW9uSWQiLCJwZXJmb3JtTmF2aWdhdGlvbiIsImdldERvbVJlZiIsImN1cnJlbnRTZWN0aW9uIiwibG9jYWxJZCIsImdldExvY2FsSWQiLCJnZXRFeHRlbnNpb25BUEkiLCJuYXZpZ2F0ZVRvU3ViU2VjdGlvbiIsInNjcm9sbFRvU2VjdGlvbiIsImdldFZpc2libGUiLCJjb250cm9sbGVyV2l0aEZsYWciLCJza2lwVmlld1N0YXRlU2VjdGlvblJlc3RvcmUiLCJwb2xsRm9yU2VjdGlvblN0YWJpbGl0eSIsIm9uUmVzZXREZXRlY3RlZCIsImd1YXJkQ2hlY2siLCJjYXRjaCIsInJlZnJlc2hCaW5kaW5nIiwib0JpbmRpbmdDb250ZXh0IiwiZ2V0QmluZGluZ0NvbnRleHQiLCJvQmluZGluZyIsImdldEJpbmRpbmciLCJzTWV0YVBhdGgiLCJNb2RlbEhlbHBlciIsImdldE1ldGFQYXRoRm9yQ29udGV4dCIsInNTdHJhdGVneSIsIktlZXBBbGl2ZUhlbHBlciIsImdldENvbnRyb2xSZWZyZXNoU3RyYXRlZ3lGb3JDb250ZXh0UGF0aCIsIm9Nb2RlbCIsImdldE1vZGVsIiwib01ldGFNb2RlbCIsImdldE1ldGFNb2RlbCIsIm9OYXZpZ2F0aW9uUHJvcGVydGllcyIsIkNvbW1vblV0aWxzIiwiZ2V0Q29udGV4dFBhdGhQcm9wZXJ0aWVzIiwiJGtpbmQiLCJhTmF2UHJvcGVydGllc1RvUmVxdWVzdCIsIk9iamVjdCIsImtleXMiLCJyZWR1Y2UiLCJhUHJldiIsInNOYXZQcm9wIiwiJGlzQ29sbGVjdGlvbiIsInB1c2giLCIkTmF2aWdhdGlvblByb3BlcnR5UGF0aCIsImFQcm9wZXJ0aWVzIiwiJFByb3BlcnR5UGF0aCIsInNHcm91cElkIiwiZ2V0R3JvdXBJZCIsInJlcXVlc3RTaWRlRWZmZWN0cyIsImNvbmNhdCIsInJlZnJlc2giLCJMb2ciLCJpbmZvIiwiVmlld1N0YXRlRXh0ZW5zaW9uT3ZlcnJpZGUiLCJfZ2V0T2JqZWN0UGFnZUxheW91dCIsInZpZXciLCJfZ2V0T2JqZWN0UGFnZUxheW91dENvbnRyb2wiLCJfZ2V0T1BTdGF0ZUhhbmRsZXIiLCJjb250cm9sIiwidmlld09QIiwiY2FsbCIsIl9nZXRPUFJlZnJlc2hIYW5kbGVyIiwiYWRhcHRDb250cm9sU3RhdGVIYW5kbGVyIiwiY29udHJvbFN0YXRlSGFuZGxlcnMiLCJvcFN0YXRlSGFuZGxlciIsImFkYXB0QmluZGluZ1JlZnJlc2hIYW5kbGVyIiwiY29udHJvbFJlZnJlc2hIYW5kbGVycyIsImFwcGx5SW5pdGlhbFN0YXRlT25seSIsImFkYXB0U3RhdGVDb250cm9scyIsImFTdGF0ZUNvbnRyb2xzIiwib1ZpZXciLCJiYXNlIiwib1ZpZXdEYXRhIiwiZ2V0Vmlld0RhdGEiLCJ2YXJpYW50TWFuYWdlbWVudCIsIkNvbnRyb2wiLCJQYWdlIiwiTm9uZSIsIkVycm9yIiwiYWRhcHRCaW5kaW5nUmVmcmVzaENvbnRyb2xzIiwiYUNvbnRyb2xzIiwic1JlZnJlc2hTdHJhdGVneSIsImdldFZpZXdSZWZyZXNoSW5mbyIsIm9Db250cm9sbGVyIiwiYUNvbnRyb2xzVG9SZWZyZXNoIiwib09iamVjdFBhZ2VDb250cm9sIiwiYVZpZXdDb250cm9scyIsIl9maW5kVGFibGVzIiwiZ2V0Q29udHJvbHNGb3JSZWZyZXNoIiwiYVByZXZDb250cm9scyIsIm9Db250cm9sIiwiaW5jbHVkZXMiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIlZpZXdTdGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBDb21tb25VdGlscyBmcm9tIFwic2FwL2ZlL2NvcmUvQ29tbW9uVXRpbHNcIjtcbmltcG9ydCB0eXBlIFZpZXdTdGF0ZSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udHJvbGxlcmV4dGVuc2lvbnMvVmlld1N0YXRlXCI7XG5pbXBvcnQgeyB0eXBlIENvbnRyb2xTdGF0ZUhhbmRsZXIgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udHJvbGxlcmV4dGVuc2lvbnMvVmlld1N0YXRlXCI7XG5pbXBvcnQgS2VlcEFsaXZlSGVscGVyIGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0tlZXBBbGl2ZUhlbHBlclwiO1xuaW1wb3J0IE1vZGVsSGVscGVyIGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL01vZGVsSGVscGVyXCI7XG5pbXBvcnQgQ29yZUxpYnJhcnkgZnJvbSBcInNhcC9mZS9jb3JlL2xpYnJhcnlcIjtcbmltcG9ydCB7IHBvbGxGb3JTZWN0aW9uU3RhYmlsaXR5IH0gZnJvbSBcInNhcC9mZS90ZW1wbGF0ZXMvT2JqZWN0UGFnZS9oZWxwZXJzL1NlY3Rpb25OYXZpZ2F0aW9uSGVscGVyXCI7XG5pbXBvcnQgdHlwZSBPYmplY3RQYWdlQ29udHJvbGxlciBmcm9tIFwic2FwL2ZlL3RlbXBsYXRlcy9PYmplY3RQYWdlL09iamVjdFBhZ2VDb250cm9sbGVyLmNvbnRyb2xsZXJcIjtcbmltcG9ydCB0eXBlIE1hbmFnZWRPYmplY3QgZnJvbSBcInNhcC91aS9iYXNlL01hbmFnZWRPYmplY3RcIjtcbmltcG9ydCB0eXBlIENvbnRyb2wgZnJvbSBcInNhcC91aS9jb3JlL0NvbnRyb2xcIjtcbmltcG9ydCB0eXBlIE9EYXRhVjRDb250ZXh0IGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvQ29udGV4dFwiO1xuaW1wb3J0IHR5cGUgT2JqZWN0UGFnZUxheW91dCBmcm9tIFwic2FwL3V4YXAvT2JqZWN0UGFnZUxheW91dFwiO1xuaW1wb3J0IHR5cGUgT2JqZWN0UGFnZVNlY3Rpb24gZnJvbSBcInNhcC91eGFwL09iamVjdFBhZ2VTZWN0aW9uXCI7XG5pbXBvcnQgdHlwZSB7IE1ldGFNb2RlbE5hdlByb3BlcnR5IH0gZnJvbSBcInR5cGVzL21ldGFtb2RlbF90eXBlc1wiO1xuXG5jb25zdCBWYXJpYW50TWFuYWdlbWVudCA9IENvcmVMaWJyYXJ5LlZhcmlhbnRNYW5hZ2VtZW50O1xuZXhwb3J0IHR5cGUgT2JqZWN0UGFnZVN0YXRlID0geyBzZWxlY3RlZFNlY3Rpb246IHN0cmluZyB8IG51bGw7IHNlbGVjdGVkU3ViU2VjdGlvbj86IHN0cmluZyB8IG51bGwgfTtcblxuY29uc3Qgb3BDb250cm9sSGFuZGxlcnMgPSB7XG5cdHJldHJpZXZlOiBmdW5jdGlvbiAodGhpczogVmlld1N0YXRlLCBvT1BMYXlvdXQ6IE9iamVjdFBhZ2VMYXlvdXQpOiBPYmplY3RQYWdlU3RhdGUge1xuXHRcdGNvbnN0IGNvbnRyb2xsZXIgPSB0aGlzLmdldFZpZXcoKS5nZXRDb250cm9sbGVyKCkgYXMgT2JqZWN0UGFnZUNvbnRyb2xsZXI7XG5cdFx0Ly8gR2V0IHN1YnNlY3Rpb24gZnJvbSBjb250cm9sbGVyJ3Mgc3RvcmVkIHRhcmdldCBzdWJzZWN0aW9uIChzZXQgYnkgb25OYXZpZ2F0ZUNoYW5nZSBvciB0YXJnZXRDb250cm9sSWQgbmF2aWdhdGlvbilcblx0XHRjb25zdCB0YXJnZXRTdWJTZWN0aW9uID0gKGNvbnRyb2xsZXIgYXMgdW5rbm93biBhcyB7IHRhcmdldFN1YlNlY3Rpb24/OiB7IGdldElkOiAoKSA9PiBzdHJpbmcgfSB9KS50YXJnZXRTdWJTZWN0aW9uO1xuXHRcdGNvbnN0IHNlbGVjdGVkU2VjdGlvbiA9IG9PUExheW91dC5nZXRTZWxlY3RlZFNlY3Rpb24oKTtcblx0XHRjb25zdCBzZWxlY3RlZFN1YlNlY3Rpb24gPSB0YXJnZXRTdWJTZWN0aW9uPy5nZXRJZCgpID8/IG51bGw7XG5cdFx0cmV0dXJuIHtcblx0XHRcdHNlbGVjdGVkU2VjdGlvbixcblx0XHRcdHNlbGVjdGVkU3ViU2VjdGlvblxuXHRcdH07XG5cdH0sXG5cdGFwcGx5OiBmdW5jdGlvbiAoXG5cdFx0dGhpczogVmlld1N0YXRlLFxuXHRcdG9wTGF5b3V0OiBPYmplY3RQYWdlTGF5b3V0LFxuXHRcdGNvbnRyb2xTdGF0ZT86IHsgc2VsZWN0ZWRTZWN0aW9uOiBzdHJpbmcgfCBudWxsOyBzZWxlY3RlZFN1YlNlY3Rpb24/OiBzdHJpbmcgfCBudWxsIH1cblx0KTogdm9pZCB7XG5cdFx0Y29uc3Qgc2VsZWN0ZWRTZWN0aW9uID0gY29udHJvbFN0YXRlPy5zZWxlY3RlZFNlY3Rpb247XG5cdFx0Y29uc3Qgc2VsZWN0ZWRTdWJTZWN0aW9uID0gY29udHJvbFN0YXRlPy5zZWxlY3RlZFN1YlNlY3Rpb247XG5cblx0XHRpZiAoIXNlbGVjdGVkU2VjdGlvbikge1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblxuXHRcdC8vIENoZWNrIGlmIHRoZSBzZWxlY3RlZCBzZWN0aW9uIGlzIGEgc2VjdGlvbiBvciBzdWJzZWN0aW9uXG5cdFx0Y29uc3Qgb3BTZWN0aW9uVG9TZWxlY3QgPSBvcExheW91dC5nZXRTZWN0aW9ucygpLmZpbmQoKHNlY3Rpb246IE9iamVjdFBhZ2VTZWN0aW9uKSA9PiBzZWN0aW9uLmdldElkKCkgPT09IHNlbGVjdGVkU2VjdGlvbik7XG5cdFx0Y29uc3QgaXNTdWJTZWN0aW9uSWQgPSAhb3BTZWN0aW9uVG9TZWxlY3QgJiYgdGhpcy5nZXRWaWV3KCkuYnlJZChzZWxlY3RlZFNlY3Rpb24pPy5pc0EoXCJzYXAudXhhcC5PYmplY3RQYWdlU3ViU2VjdGlvblwiKTtcblx0XHRjb25zdCBjb250cm9sbGVyID0gdGhpcy5nZXRWaWV3KCkuZ2V0Q29udHJvbGxlcigpIGFzIE9iamVjdFBhZ2VDb250cm9sbGVyO1xuXG5cdFx0Ly8gRGV0ZXJtaW5lIHRoZSB0YXJnZXQgdG8gbmF2aWdhdGUgdG86IHByZWZlciBzdWJzZWN0aW9uIGlmIGF2YWlsYWJsZVxuXHRcdGNvbnN0IG5hdmlnYXRpb25UYXJnZXQgPSBzZWxlY3RlZFN1YlNlY3Rpb24gPz8gc2VsZWN0ZWRTZWN0aW9uO1xuXHRcdGNvbnN0IGlzTmF2aWdhdGluZ1RvU3ViU2VjdGlvbiA9ICEhc2VsZWN0ZWRTdWJTZWN0aW9uIHx8IGlzU3ViU2VjdGlvbklkO1xuXG5cdFx0Ly8gRGV0ZXJtaW5lIHRhcmdldCBzZWN0aW9uIElEIGZvciBjb21wYXJpc29uICAobmVlZGVkIGJlZm9yZSBwYWdlUmVhZHkpXG5cdFx0Y29uc3QgZ2V0VGFyZ2V0U2VjdGlvbklkID0gKCk6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG5cdFx0XHRpZiAoaXNTdWJTZWN0aW9uSWQpIHtcblx0XHRcdFx0cmV0dXJuIG9wTGF5b3V0XG5cdFx0XHRcdFx0LmdldFNlY3Rpb25zKClcblx0XHRcdFx0XHQuZmluZCgocykgPT4gcy5nZXRTdWJTZWN0aW9ucygpLnNvbWUoKHNzKSA9PiBzcy5nZXRJZCgpID09PSBuYXZpZ2F0aW9uVGFyZ2V0KSlcblx0XHRcdFx0XHQ/LmdldElkKCk7XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gc2VsZWN0ZWRTZWN0aW9uO1xuXHRcdH07XG5cblx0XHQvLyBXYWl0IGZvciBwYWdlUmVhZHksIHRoZW4gbmF2aWdhdGUgYW5kIHBvbGwgZm9yIFVYIHJ1bGVzIHJlc2V0XG5cdFx0Y29udHJvbGxlci5wYWdlUmVhZHlcblx0XHRcdC53YWl0UGFnZVJlYWR5KClcblx0XHRcdC50aGVuKGFzeW5jICgpID0+IHtcblx0XHRcdFx0Y29uc3QgdGFyZ2V0U2VjdGlvbklkID0gZ2V0VGFyZ2V0U2VjdGlvbklkKCk7XG5cblx0XHRcdFx0Ly8gU2tpcCBpZiBubyB2YWxpZCB0YXJnZXQgc2VjdGlvbiAoZS5nLiwgc3Vic2VjdGlvbidzIHBhcmVudCBubyBsb25nZXIgZXhpc3RzKVxuXHRcdFx0XHQvLyBvciBhbHJlYWR5IG9uIHRhcmdldCBzZWN0aW9uIC0gbm8gbmF2aWdhdGlvbiBvciBwb2xsaW5nIG5lZWRlZFxuXHRcdFx0XHRpZiAoIXRhcmdldFNlY3Rpb25JZCB8fCBvcExheW91dC5nZXRTZWxlY3RlZFNlY3Rpb24oKSA9PT0gdGFyZ2V0U2VjdGlvbklkKSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Y29uc3QgcGVyZm9ybU5hdmlnYXRpb24gPSAoKTogdm9pZCA9PiB7XG5cdFx0XHRcdFx0Ly8gR3VhcmQ6IGRvbid0IG5hdmlnYXRlIGlmIE9iamVjdFBhZ2VMYXlvdXQgaGFzIGJlZW4gZGVzdHJveWVkXG5cdFx0XHRcdFx0aWYgKCFvcExheW91dC5nZXREb21SZWYoKSkge1xuXHRcdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC8vIEd1YXJkOiBkb24ndCBuYXZpZ2F0ZSBpZiBhbHJlYWR5IG9uIHRhcmdldCBzZWN0aW9uXG5cdFx0XHRcdFx0Y29uc3QgY3VycmVudFNlY3Rpb24gPSBvcExheW91dC5nZXRTZWxlY3RlZFNlY3Rpb24oKTtcblx0XHRcdFx0XHRpZiAoY3VycmVudFNlY3Rpb24gPT09IHRhcmdldFNlY3Rpb25JZCkge1xuXHRcdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdGlmIChpc05hdmlnYXRpbmdUb1N1YlNlY3Rpb24pIHtcblx0XHRcdFx0XHRcdC8vIEZvciBzdWJzZWN0aW9uIG5hdmlnYXRpb24sIHVzZSBuYXZpZ2F0ZVRvU3ViU2VjdGlvbiB3aGljaCBoYW5kbGVzIHBhcmVudCBzZWN0aW9uIGFjdGl2YXRpb25cblx0XHRcdFx0XHRcdGNvbnN0IGxvY2FsSWQgPSBjb250cm9sbGVyLmdldFZpZXcoKS5nZXRMb2NhbElkKG5hdmlnYXRpb25UYXJnZXQpO1xuXHRcdFx0XHRcdFx0aWYgKGxvY2FsSWQpIHtcblx0XHRcdFx0XHRcdFx0Y29udHJvbGxlci5nZXRFeHRlbnNpb25BUEkoKS5uYXZpZ2F0ZVRvU3ViU2VjdGlvbihsb2NhbElkKTtcblx0XHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRcdG9wTGF5b3V0LnNjcm9sbFRvU2VjdGlvbihuYXZpZ2F0aW9uVGFyZ2V0LCAwKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9IGVsc2UgaWYgKG9wU2VjdGlvblRvU2VsZWN0ICYmIG9wU2VjdGlvblRvU2VsZWN0LmdldFZpc2libGUoKSA9PT0gdHJ1ZSkge1xuXHRcdFx0XHRcdFx0Ly8gRm9yIHNlY3Rpb24gSURzLCBuYXZpZ2F0ZSBpZiBzZWN0aW9uIGlzIHZpc2libGVcblx0XHRcdFx0XHRcdG9wTGF5b3V0LnNjcm9sbFRvU2VjdGlvbihzZWxlY3RlZFNlY3Rpb24sIDApO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fTtcblxuXHRcdFx0XHQvLyBTa2lwIG5hdmlnYXRpb24gYW5kIHBvbGxpbmcgb24gc3Vic2VxdWVudCBsb2FkcyAtIG9ubHkgcmVzdG9yZSBzZWN0aW9uIGR1cmluZyBpbml0aWFsIGxvYWRcblx0XHRcdFx0Ly8gVGhpcyBwcmV2ZW50cyBvdmVycmlkaW5nIHVzZXIncyBtYW51YWwgdGFiIHNlbGVjdGlvbiB3aGVuIHN0YXRlIGlzIHJlc3RvcmVkIGxhdGVyXG5cdFx0XHRcdGNvbnN0IGNvbnRyb2xsZXJXaXRoRmxhZyA9IGNvbnRyb2xsZXIgYXMgdW5rbm93biBhcyB7IHNraXBWaWV3U3RhdGVTZWN0aW9uUmVzdG9yZT86IGJvb2xlYW4gfTtcblx0XHRcdFx0aWYgKGNvbnRyb2xsZXJXaXRoRmxhZy5za2lwVmlld1N0YXRlU2VjdGlvblJlc3RvcmUgPT09IHRydWUpIHtcblx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBOYXZpZ2F0ZSBpbW1lZGlhdGVseVxuXHRcdFx0XHRwZXJmb3JtTmF2aWdhdGlvbigpO1xuXG5cdFx0XHRcdC8vIFNraXAgcG9sbGluZyBpZiBhbHJlYWR5IG9uIHRhcmdldCBzZWN0aW9uXG5cdFx0XHRcdGlmIChvcExheW91dC5nZXRTZWxlY3RlZFNlY3Rpb24oKSA9PT0gdGFyZ2V0U2VjdGlvbklkKSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gUG9sbCB0byBkZXRlY3QgVVggcnVsZXMgcmVzZXQgZHVyaW5nIGluaXRpYWwgbG9hZFxuXHRcdFx0XHQvLyBVc2VzIHNoYXJlZCB1dGlsaXR5IGZyb20gaGVscGVycy9TZWN0aW9uTmF2aWdhdGlvbkhlbHBlci50c1xuXHRcdFx0XHRhd2FpdCBwb2xsRm9yU2VjdGlvblN0YWJpbGl0eSh7XG5cdFx0XHRcdFx0Z2V0U2VsZWN0ZWRTZWN0aW9uOiAoKSA9PiBvcExheW91dC5nZXRTZWxlY3RlZFNlY3Rpb24oKSxcblx0XHRcdFx0XHR0YXJnZXRTZWN0aW9uSWQsXG5cdFx0XHRcdFx0b25SZXNldERldGVjdGVkOiBwZXJmb3JtTmF2aWdhdGlvbixcblx0XHRcdFx0XHRndWFyZENoZWNrOiAoKSA9PiAhIW9wTGF5b3V0LmdldERvbVJlZigpXG5cdFx0XHRcdH0pO1xuXHRcdFx0XHRyZXR1cm47IC8vIFJlcXVpcmVkIGJ5IGxpbnRlciBydWxlIHByb21pc2UvYWx3YXlzLXJldHVyblxuXHRcdFx0fSlcblx0XHRcdC5jYXRjaCgoKSA9PiB7XG5cdFx0XHRcdC8vIFZpZXdTdGF0ZTogT2JqZWN0UGFnZUxheW91dCBzZWN0aW9uIHN0YXRlIGNvdWxkbid0IGJlIGFwcGxpZWRcblx0XHRcdFx0Ly8gRG9uJ3QgcmUtdGhyb3cgLSBhbGxvdyBwYWdlIHRvIGNvbnRpbnVlIGV2ZW4gaWYgbmF2aWdhdGlvbiBmYWlsc1xuXHRcdFx0fSk7XG5cdH0sXG5cdHJlZnJlc2hCaW5kaW5nOiBmdW5jdGlvbiAob09QTGF5b3V0OiBPYmplY3RQYWdlTGF5b3V0KTogdm9pZCB7XG5cdFx0Y29uc3Qgb0JpbmRpbmdDb250ZXh0ID0gb09QTGF5b3V0LmdldEJpbmRpbmdDb250ZXh0KCkgYXMgT0RhdGFWNENvbnRleHQgfCB1bmRlZmluZWQ7XG5cdFx0Y29uc3Qgb0JpbmRpbmcgPSBvQmluZGluZ0NvbnRleHQgJiYgb0JpbmRpbmdDb250ZXh0LmdldEJpbmRpbmcoKTtcblx0XHRpZiAob0JpbmRpbmcpIHtcblx0XHRcdGNvbnN0IHNNZXRhUGF0aCA9IE1vZGVsSGVscGVyLmdldE1ldGFQYXRoRm9yQ29udGV4dChvQmluZGluZ0NvbnRleHQpO1xuXHRcdFx0Y29uc3Qgc1N0cmF0ZWd5ID0gS2VlcEFsaXZlSGVscGVyLmdldENvbnRyb2xSZWZyZXNoU3RyYXRlZ3lGb3JDb250ZXh0UGF0aChvT1BMYXlvdXQsIHNNZXRhUGF0aCk7XG5cdFx0XHRpZiAoc1N0cmF0ZWd5ID09PSBcInNlbGZcIikge1xuXHRcdFx0XHQvLyBSZWZyZXNoIG1haW4gY29udGV4dCBhbmQgMS0xIG5hdmlnYXRpb24gcHJvcGVydGllcyBvciBPUFxuXHRcdFx0XHRjb25zdCBvTW9kZWwgPSBvQmluZGluZ0NvbnRleHQuZ2V0TW9kZWwoKSxcblx0XHRcdFx0XHRvTWV0YU1vZGVsID0gb01vZGVsLmdldE1ldGFNb2RlbCgpLFxuXHRcdFx0XHRcdG9OYXZpZ2F0aW9uUHJvcGVydGllczogUmVjb3JkPHN0cmluZywgTWV0YU1vZGVsTmF2UHJvcGVydHk+ID1cblx0XHRcdFx0XHRcdChDb21tb25VdGlscy5nZXRDb250ZXh0UGF0aFByb3BlcnRpZXMob01ldGFNb2RlbCwgc01ldGFQYXRoLCB7XG5cdFx0XHRcdFx0XHRcdCRraW5kOiBcIk5hdmlnYXRpb25Qcm9wZXJ0eVwiXG5cdFx0XHRcdFx0XHR9KSBhcyBSZWNvcmQ8c3RyaW5nLCBNZXRhTW9kZWxOYXZQcm9wZXJ0eT4pIHx8IHt9LFxuXHRcdFx0XHRcdGFOYXZQcm9wZXJ0aWVzVG9SZXF1ZXN0ID0gT2JqZWN0LmtleXMob05hdmlnYXRpb25Qcm9wZXJ0aWVzKS5yZWR1Y2UoZnVuY3Rpb24gKFxuXHRcdFx0XHRcdFx0YVByZXY6IHsgJE5hdmlnYXRpb25Qcm9wZXJ0eVBhdGg6IHN0cmluZyB9W10sXG5cdFx0XHRcdFx0XHRzTmF2UHJvcDogc3RyaW5nXG5cdFx0XHRcdFx0KSB7XG5cdFx0XHRcdFx0XHRpZiAob05hdmlnYXRpb25Qcm9wZXJ0aWVzW3NOYXZQcm9wXS4kaXNDb2xsZWN0aW9uICE9PSB0cnVlKSB7XG5cdFx0XHRcdFx0XHRcdGFQcmV2LnB1c2goeyAkTmF2aWdhdGlvblByb3BlcnR5UGF0aDogc05hdlByb3AgfSk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRyZXR1cm4gYVByZXY7XG5cdFx0XHRcdFx0fSwgW10pLFxuXHRcdFx0XHRcdGFQcm9wZXJ0aWVzOiAoeyAkTmF2aWdhdGlvblByb3BlcnR5UGF0aDogc3RyaW5nIH0gfCB7ICRQcm9wZXJ0eVBhdGg6IHN0cmluZyB9KVtdID0gW3sgJFByb3BlcnR5UGF0aDogXCIqXCIgfV0sXG5cdFx0XHRcdFx0c0dyb3VwSWQgPSBvQmluZGluZy5nZXRHcm91cElkKCk7XG5cblx0XHRcdFx0b0JpbmRpbmdDb250ZXh0LnJlcXVlc3RTaWRlRWZmZWN0cyhhUHJvcGVydGllcy5jb25jYXQoYU5hdlByb3BlcnRpZXNUb1JlcXVlc3QpLCBzR3JvdXBJZCk7XG5cdFx0XHR9IGVsc2UgaWYgKHNTdHJhdGVneSA9PT0gXCJpbmNsdWRpbmdEZXBlbmRlbnRzXCIpIHtcblx0XHRcdFx0Ly8gQ29tcGxldGUgcmVmcmVzaFxuXHRcdFx0XHRvQmluZGluZy5yZWZyZXNoKCk7XG5cdFx0XHR9XG5cdFx0fSBlbHNlIHtcblx0XHRcdExvZy5pbmZvKGBPYmplY3RQYWdlOiAke29PUExheW91dC5nZXRJZCgpfSB3YXMgbm90IHJlZnJlc2hlZC4gTm8gYmluZGluZyBmb3VuZCFgKTtcblx0XHR9XG5cdH1cbn07XG5cbmNvbnN0IFZpZXdTdGF0ZUV4dGVuc2lvbk92ZXJyaWRlID0ge1xuXHRfZ2V0T2JqZWN0UGFnZUxheW91dDogZnVuY3Rpb24gKHRoaXM6IFZpZXdTdGF0ZSk6IE9iamVjdFBhZ2VMYXlvdXQge1xuXHRcdGNvbnN0IHZpZXcgPSB0aGlzLmdldFZpZXcoKTtcblx0XHRjb25zdCBjb250cm9sbGVyID0gdmlldy5nZXRDb250cm9sbGVyKCkgYXMgT2JqZWN0UGFnZUNvbnRyb2xsZXI7XG5cdFx0cmV0dXJuIGNvbnRyb2xsZXIuX2dldE9iamVjdFBhZ2VMYXlvdXRDb250cm9sKCk7XG5cdH0sXG5cblx0LyoqXG5cdCAqIEdldCB0aGUgc3RhdGUgaGFuZGxlciBmb3IgT2JqZWN0UGFnZUxheW91dCBpbiB2aWV3LlxuXHQgKiBAcGFyYW0gY29udHJvbCBUaGUgY29udHJvbCBmb3Igc3RhdGUgaW50ZXJhY3Rpb25cblx0ICogQHJldHVybnMgU3RhdGUgaGFuZGxlclxuXHQgKi9cblx0X2dldE9QU3RhdGVIYW5kbGVyOiBmdW5jdGlvbiAoXG5cdFx0dGhpczogVmlld1N0YXRlLFxuXHRcdGNvbnRyb2w6IE1hbmFnZWRPYmplY3Rcblx0KTogQ29udHJvbFN0YXRlSGFuZGxlcjxPYmplY3RQYWdlTGF5b3V0LCBPYmplY3RQYWdlU3RhdGU+IHwgdW5kZWZpbmVkIHtcblx0XHRjb25zdCB2aWV3T1AgPSBWaWV3U3RhdGVFeHRlbnNpb25PdmVycmlkZS5fZ2V0T2JqZWN0UGFnZUxheW91dC5jYWxsKHRoaXMpO1xuXHRcdGlmICh2aWV3T1AgPT09IGNvbnRyb2wpIHtcblx0XHRcdHJldHVybiB7XG5cdFx0XHRcdHJldHJpZXZlOiBvcENvbnRyb2xIYW5kbGVycy5yZXRyaWV2ZSxcblx0XHRcdFx0YXBwbHk6IG9wQ29udHJvbEhhbmRsZXJzLmFwcGx5XG5cdFx0XHR9O1xuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogR2V0IHRoZSByZWZyZXNoIGhhbmRsZXIgZm9yIE9iamVjdFBhZ2VMYXlvdXQgaW4gdmlldy5cblx0ICogQHBhcmFtIGNvbnRyb2wgVGhlIGNvbnRyb2wgYmVpbmcgcmVmcmVzaGVkXG5cdCAqIEByZXR1cm5zIFJlZnJlc2ggaGFuZGxlclxuXHQgKi9cblx0X2dldE9QUmVmcmVzaEhhbmRsZXI6IGZ1bmN0aW9uIChcblx0XHR0aGlzOiBWaWV3U3RhdGUsXG5cdFx0Y29udHJvbDogTWFuYWdlZE9iamVjdFxuXHQpOiBDb250cm9sU3RhdGVIYW5kbGVyPE9iamVjdFBhZ2VMYXlvdXQsIE9iamVjdFBhZ2VTdGF0ZT4gfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IHZpZXdPUCA9IFZpZXdTdGF0ZUV4dGVuc2lvbk92ZXJyaWRlLl9nZXRPYmplY3RQYWdlTGF5b3V0LmNhbGwodGhpcyk7XG5cdFx0aWYgKHZpZXdPUCA9PT0gY29udHJvbCkge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0cmVmcmVzaEJpbmRpbmc6IG9wQ29udHJvbEhhbmRsZXJzLnJlZnJlc2hCaW5kaW5nXG5cdFx0XHR9O1xuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogUGFzcyB0aGUgc3RhdGUgaGFuZGxlcnMgb2Ygb2JqZWN0IHBhZ2UgdmlldyBhY2NvcmRpbmcgdG8gdGhlIGNvbnRyb2wgaW4gY29uY2Vybi5cblx0ICogQHBhcmFtIGNvbnRyb2wgVGhlIGNvbnRyb2wgZm9yIHN0YXRlIGludGVyYWN0aW9uXG5cdCAqIEBwYXJhbSBjb250cm9sU3RhdGVIYW5kbGVycyBTdGF0ZSBoYW5kbGVyc1xuXHQgKi9cblx0YWRhcHRDb250cm9sU3RhdGVIYW5kbGVyOiBmdW5jdGlvbiAoXG5cdFx0dGhpczogVmlld1N0YXRlLFxuXHRcdGNvbnRyb2w6IE1hbmFnZWRPYmplY3QsXG5cdFx0Y29udHJvbFN0YXRlSGFuZGxlcnM6IENvbnRyb2xTdGF0ZUhhbmRsZXI8T2JqZWN0UGFnZUxheW91dCwgT2JqZWN0UGFnZVN0YXRlPltdXG5cdCk6IHZvaWQge1xuXHRcdGNvbnN0IG9wU3RhdGVIYW5kbGVyID0gVmlld1N0YXRlRXh0ZW5zaW9uT3ZlcnJpZGUuX2dldE9QU3RhdGVIYW5kbGVyLmNhbGwodGhpcywgY29udHJvbCk7XG5cdFx0aWYgKG9wU3RhdGVIYW5kbGVyKSB7XG5cdFx0XHRjb250cm9sU3RhdGVIYW5kbGVycy5wdXNoKG9wU3RhdGVIYW5kbGVyKTtcblx0XHR9XG5cdH0sXG5cblx0LyoqXG5cdCAqIFBhc3MgdGhlIHJlZnJlc2ggaGFuZGxlcnMgb2Ygb2JqZWN0IHBhZ2UgdmlldyBhY2NvcmRpbmcgdG8gdGhlIGNvbnRyb2wgYmVpbmcgcmVmcmVzaGVkLlxuXHQgKiBAcGFyYW0gY29udHJvbCBUaGUgY29udHJvbCBiZWluZyByZWZyZXNoZWRcblx0ICogQHBhcmFtIGNvbnRyb2xSZWZyZXNoSGFuZGxlcnMgUmVmcmVzaCBoYW5kbGVyc1xuXHQgKi9cblx0YWRhcHRCaW5kaW5nUmVmcmVzaEhhbmRsZXI6IGZ1bmN0aW9uIChcblx0XHR0aGlzOiBWaWV3U3RhdGUsXG5cdFx0Y29udHJvbDogTWFuYWdlZE9iamVjdCxcblx0XHRjb250cm9sUmVmcmVzaEhhbmRsZXJzOiBDb250cm9sU3RhdGVIYW5kbGVyPE9iamVjdFBhZ2VMYXlvdXQsIE9iamVjdFBhZ2VTdGF0ZT5cblx0KTogdm9pZCB7XG5cdFx0Y29uc3Qgb3BTdGF0ZUhhbmRsZXIgPSBWaWV3U3RhdGVFeHRlbnNpb25PdmVycmlkZS5fZ2V0T1BSZWZyZXNoSGFuZGxlci5jYWxsKHRoaXMsIGNvbnRyb2wpO1xuXHRcdGlmIChvcFN0YXRlSGFuZGxlcikge1xuXHRcdFx0Y29udHJvbFJlZnJlc2hIYW5kbGVycy5yZWZyZXNoQmluZGluZyA9IG9wU3RhdGVIYW5kbGVyLnJlZnJlc2hCaW5kaW5nO1xuXHRcdH1cblx0fSxcblxuXHRhcHBseUluaXRpYWxTdGF0ZU9ubHk6IGZ1bmN0aW9uICgpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gZmFsc2U7XG5cdH0sXG5cdGFkYXB0U3RhdGVDb250cm9sczogZnVuY3Rpb24gKHRoaXM6IFZpZXdTdGF0ZSwgYVN0YXRlQ29udHJvbHM6IENvbnRyb2xbXSk6IHZvaWQge1xuXHRcdGNvbnN0IG9WaWV3ID0gdGhpcy5iYXNlLmdldFZpZXcoKSxcblx0XHRcdG9WaWV3RGF0YSA9IG9WaWV3LmdldFZpZXdEYXRhKCk7XG5cdFx0c3dpdGNoIChvVmlld0RhdGEudmFyaWFudE1hbmFnZW1lbnQpIHtcblx0XHRcdGNhc2UgVmFyaWFudE1hbmFnZW1lbnQuQ29udHJvbDpcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHRjYXNlIFZhcmlhbnRNYW5hZ2VtZW50LlBhZ2U6XG5cdFx0XHRjYXNlIFZhcmlhbnRNYW5hZ2VtZW50Lk5vbmU6XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0ZGVmYXVsdDpcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKGB1bmhhbmRsZWQgdmFyaWFudCBzZXR0aW5nOiAke29WaWV3RGF0YS52YXJpYW50TWFuYWdlbWVudH1gKTtcblx0XHR9XG5cblx0XHRhU3RhdGVDb250cm9scy5wdXNoKG9WaWV3LmJ5SWQoXCJmZTo6T2JqZWN0UGFnZVwiKSBhcyBDb250cm9sKTtcblx0fSxcblx0YWRhcHRCaW5kaW5nUmVmcmVzaENvbnRyb2xzOiBmdW5jdGlvbiAodGhpczogVmlld1N0YXRlLCBhQ29udHJvbHM6IENvbnRyb2xbXSk6IENvbnRyb2xbXSB7XG5cdFx0Y29uc3Qgb1ZpZXcgPSB0aGlzLmJhc2UuZ2V0VmlldygpLFxuXHRcdFx0c1JlZnJlc2hTdHJhdGVneSA9IEtlZXBBbGl2ZUhlbHBlci5nZXRWaWV3UmVmcmVzaEluZm8ob1ZpZXcpLFxuXHRcdFx0b0NvbnRyb2xsZXIgPSBvVmlldy5nZXRDb250cm9sbGVyKCk7XG5cdFx0bGV0IGFDb250cm9sc1RvUmVmcmVzaDogQ29udHJvbFtdID0gW107XG5cblx0XHRpZiAoc1JlZnJlc2hTdHJhdGVneSkge1xuXHRcdFx0Y29uc3Qgb09iamVjdFBhZ2VDb250cm9sID0gKG9Db250cm9sbGVyIGFzIE9iamVjdFBhZ2VDb250cm9sbGVyKS5fZ2V0T2JqZWN0UGFnZUxheW91dENvbnRyb2woKTtcblx0XHRcdGFDb250cm9sc1RvUmVmcmVzaC5wdXNoKG9PYmplY3RQYWdlQ29udHJvbCk7XG5cdFx0fVxuXHRcdGlmIChzUmVmcmVzaFN0cmF0ZWd5ICE9PSBcImluY2x1ZGluZ0RlcGVuZGVudHNcIikge1xuXHRcdFx0Y29uc3QgYVZpZXdDb250cm9scyA9IChvQ29udHJvbGxlciBhcyBPYmplY3RQYWdlQ29udHJvbGxlcikuX2ZpbmRUYWJsZXMoKTtcblx0XHRcdGFDb250cm9sc1RvUmVmcmVzaCA9IGFDb250cm9sc1RvUmVmcmVzaC5jb25jYXQoS2VlcEFsaXZlSGVscGVyLmdldENvbnRyb2xzRm9yUmVmcmVzaChvVmlldywgYVZpZXdDb250cm9scykgfHwgW10pO1xuXHRcdH1cblx0XHRyZXR1cm4gYUNvbnRyb2xzVG9SZWZyZXNoLnJlZHVjZShmdW5jdGlvbiAoYVByZXZDb250cm9scywgb0NvbnRyb2wpIHtcblx0XHRcdGlmICghYVByZXZDb250cm9scy5pbmNsdWRlcyhvQ29udHJvbCkpIHtcblx0XHRcdFx0YVByZXZDb250cm9scy5wdXNoKG9Db250cm9sKTtcblx0XHRcdH1cblx0XHRcdHJldHVybiBhUHJldkNvbnRyb2xzO1xuXHRcdH0sIGFDb250cm9scyk7XG5cdH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IFZpZXdTdGF0ZUV4dGVuc2lvbk92ZXJyaWRlO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztFQWdCQSxNQUFNQSxpQkFBaUIsR0FBR0MsV0FBVyxDQUFDRCxpQkFBaUI7RUFHdkQsTUFBTUUsaUJBQWlCLEdBQUc7SUFDekJDLFFBQVEsRUFBRSxTQUFBQSxDQUEyQkMsU0FBMkIsRUFBbUI7TUFDbEYsTUFBTUMsVUFBVSxHQUFHLElBQUksQ0FBQ0MsT0FBTyxDQUFDLENBQUMsQ0FBQ0MsYUFBYSxDQUFDLENBQXlCO01BQ3pFO01BQ0EsTUFBTUMsZ0JBQWdCLEdBQUlILFVBQVUsQ0FBK0RHLGdCQUFnQjtNQUNuSCxNQUFNQyxlQUFlLEdBQUdMLFNBQVMsQ0FBQ00sa0JBQWtCLENBQUMsQ0FBQztNQUN0RCxNQUFN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
@@ -101,8 +101,8 @@ const opControlHandlers = {
101
101
 
102
102
  // Skip navigation and polling on subsequent loads - only restore section during initial load
103
103
  // This prevents overriding user's manual tab selection when state is restored later
104
- const controllerWithFlag = controller as unknown as { hasInitialLoadCompleted?: boolean };
105
- if (controllerWithFlag.hasInitialLoadCompleted === true) {
104
+ const controllerWithFlag = controller as unknown as { skipViewStateSectionRestore?: boolean };
105
+ if (controllerWithFlag.skipViewStateSectionRestore === true) {
106
106
  return;
107
107
  }
108
108
 
@@ -36,7 +36,7 @@ sap.ui.define(["sap/f/library", "sap/fe/core/library", "sap/fe/macros/library",
36
36
  controls: [],
37
37
  elements: [],
38
38
  // eslint-disable-next-line no-template-curly-in-string
39
- version: "1.148.0",
39
+ version: "1.148.1",
40
40
  noLibraryCSS: true
41
41
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
42
42
  });