@sapui5/sap.fe.templates 1.103.0 → 1.106.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.
- package/package.json +5 -6
- package/src/sap/fe/templates/.library +1 -1
- package/src/sap/fe/templates/AnalyticalListPage/Component.js +2 -2
- package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.js +2 -2
- package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.ts +1 -1
- package/src/sap/fe/templates/Feedback.js +1 -1
- package/src/sap/fe/templates/Feedback.ts +0 -3
- package/src/sap/fe/templates/ListComponent.js +2 -2
- package/src/sap/fe/templates/ListReport/Component.js +2 -2
- package/src/sap/fe/templates/ListReport/ExtensionAPI.js +5 -3
- package/src/sap/fe/templates/ListReport/ExtensionAPI.ts +2 -1
- package/src/sap/fe/templates/ListReport/ListReport.view.xml +12 -86
- package/src/sap/fe/templates/ListReport/ListReportController.controller.js +90 -429
- package/src/sap/fe/templates/ListReport/ListReportController.controller.ts +81 -392
- package/src/sap/fe/templates/ListReport/ListReportTemplating.js +1 -1
- package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.js +459 -0
- package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.ts +338 -0
- package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.js +16 -9
- package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.ts +15 -9
- package/src/sap/fe/templates/ListReport/overrides/Share.js +4 -12
- package/src/sap/fe/templates/ListReport/overrides/Share.ts +4 -12
- package/src/sap/fe/templates/ListReport/overrides/ViewState.js +23 -31
- package/src/sap/fe/templates/ListReport/overrides/ViewState.ts +27 -31
- package/src/sap/fe/templates/ListReport/view/fragments/Chart.fragment.xml +3 -0
- package/src/sap/fe/templates/ListReport/view/fragments/CollectionVisualization.fragment.xml +16 -5
- package/src/sap/fe/templates/{controls → ListReport/view/fragments}/MacroChart.fragment.xml +3 -2
- package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.js +20 -4
- package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.ts +80 -48
- package/src/sap/fe/templates/{controls → ListReport/view/fragments}/Table.fragment.xml +6 -6
- package/src/sap/fe/templates/ListReport/view/fragments/VariantManagement.fragment.xml +31 -0
- package/src/sap/fe/templates/ObjectPage/Component.js +9 -9
- package/src/sap/fe/templates/ObjectPage/Component.ts +10 -6
- package/src/sap/fe/templates/ObjectPage/ExtensionAPI.js +25 -12
- package/src/sap/fe/templates/ObjectPage/ExtensionAPI.ts +18 -5
- package/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +60 -151
- package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +195 -140
- package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.ts +103 -93
- package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.js +52 -22
- package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.ts +46 -25
- package/src/sap/fe/templates/ObjectPage/components/DraftHandlerButton.js +178 -0
- package/src/sap/fe/templates/ObjectPage/components/DraftHandlerButton.tsx +132 -0
- package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js +2 -2
- package/src/sap/fe/templates/ObjectPage/controls/StashableVBox.js +2 -2
- package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.js +2 -2
- package/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.js +1 -1
- package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime.js +1 -1
- package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime.js +1 -1
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.js +1 -1
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.js +1 -1
- package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.js +1 -1
- package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.ts +1 -1
- package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.js +1 -1
- package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.js +1 -1
- package/src/sap/fe/templates/ObjectPage/overrides/Paginator.js +1 -1
- package/src/sap/fe/templates/ObjectPage/overrides/Share.js +55 -29
- package/src/sap/fe/templates/ObjectPage/overrides/Share.ts +28 -29
- package/src/sap/fe/templates/ObjectPage/overrides/ViewState.js +1 -1
- package/src/sap/fe/templates/ObjectPage/view/fragments/Actions.fragment.xml +62 -62
- package/src/sap/fe/templates/ObjectPage/view/fragments/Chart.fragment.xml +13 -0
- package/src/sap/fe/templates/ObjectPage/view/fragments/EditableHeaderFacet.fragment.xml +10 -8
- package/src/sap/fe/templates/ObjectPage/view/fragments/FooterContent.fragment.xml +1 -1
- package/src/sap/fe/templates/ObjectPage/view/fragments/FormActionButtons.fragment.xml +5 -1
- package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderDataPoint.fragment.xml +1 -1
- package/src/sap/fe/templates/ObjectPage/view/fragments/Heading.fragment.xml +2 -2
- package/src/sap/fe/templates/ObjectPage/view/fragments/HeadingTitle.fragment.xml +11 -6
- package/src/sap/fe/templates/ObjectPage/view/fragments/MacroChart.fragment.xml +22 -0
- package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderForm.fragment.xml +7 -2
- package/src/sap/fe/templates/ObjectPage/view/fragments/Section.fragment.xml +8 -49
- package/src/sap/fe/templates/ObjectPage/view/fragments/SectionPresentationVisualization.fragment.xml +1 -1
- package/src/sap/fe/templates/ObjectPage/view/fragments/Table.fragment.xml +23 -0
- package/src/sap/fe/templates/RootContainer/controller/Fcl.controller.js +2 -2
- package/src/sap/fe/templates/RootContainer/controller/NavContainer.controller.js +2 -2
- package/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController.js +5 -5
- package/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController.ts +3 -3
- package/src/sap/fe/templates/RootContainer/overrides/EditFlow.js +1 -1
- package/src/sap/fe/templates/TableScroller.js +1 -1
- package/src/sap/fe/templates/library.js +4 -3
- package/src/sap/fe/templates/library.ts +2 -0
- package/src/sap/fe/templates/messagebundle.properties +2 -5
- package/src/sap/fe/templates/messagebundle_ar.properties +3 -12
- package/src/sap/fe/templates/messagebundle_bg.properties +2 -11
- package/src/sap/fe/templates/messagebundle_ca.properties +2 -11
- package/src/sap/fe/templates/messagebundle_cs.properties +3 -12
- package/src/sap/fe/templates/messagebundle_cy.properties +2 -11
- package/src/sap/fe/templates/messagebundle_da.properties +3 -12
- package/src/sap/fe/templates/messagebundle_de.properties +2 -11
- package/src/sap/fe/templates/messagebundle_el.properties +2 -11
- package/src/sap/fe/templates/messagebundle_en.properties +2 -11
- package/src/sap/fe/templates/messagebundle_en_GB.properties +2 -11
- package/src/sap/fe/templates/messagebundle_en_US_sappsd.properties +2 -11
- package/src/sap/fe/templates/messagebundle_en_US_saprigi.properties +2 -11
- package/src/sap/fe/templates/messagebundle_en_US_saptrc.properties +2 -11
- package/src/sap/fe/templates/messagebundle_es.properties +0 -9
- package/src/sap/fe/templates/messagebundle_es_MX.properties +2 -11
- package/src/sap/fe/templates/messagebundle_et.properties +0 -9
- package/src/sap/fe/templates/messagebundle_fi.properties +2 -11
- package/src/sap/fe/templates/messagebundle_fr.properties +3 -12
- package/src/sap/fe/templates/messagebundle_fr_CA.properties +2 -11
- package/src/sap/fe/templates/messagebundle_hi.properties +2 -11
- package/src/sap/fe/templates/messagebundle_hr.properties +2 -11
- package/src/sap/fe/templates/messagebundle_hu.properties +2 -11
- package/src/sap/fe/templates/messagebundle_id.properties +2 -11
- package/src/sap/fe/templates/messagebundle_it.properties +2 -11
- package/src/sap/fe/templates/messagebundle_iw.properties +2 -11
- package/src/sap/fe/templates/messagebundle_ja.properties +2 -11
- package/src/sap/fe/templates/messagebundle_kk.properties +2 -11
- package/src/sap/fe/templates/messagebundle_ko.properties +2 -11
- package/src/sap/fe/templates/messagebundle_lt.properties +2 -11
- package/src/sap/fe/templates/messagebundle_lv.properties +2 -11
- package/src/sap/fe/templates/messagebundle_ms.properties +2 -11
- package/src/sap/fe/templates/messagebundle_nl.properties +2 -11
- package/src/sap/fe/templates/messagebundle_no.properties +0 -9
- package/src/sap/fe/templates/messagebundle_pl.properties +0 -9
- package/src/sap/fe/templates/messagebundle_pt.properties +2 -11
- package/src/sap/fe/templates/messagebundle_pt_PT.properties +2 -11
- package/src/sap/fe/templates/messagebundle_ro.properties +0 -9
- package/src/sap/fe/templates/messagebundle_ru.properties +2 -11
- package/src/sap/fe/templates/messagebundle_sh.properties +2 -11
- package/src/sap/fe/templates/messagebundle_sk.properties +2 -11
- package/src/sap/fe/templates/messagebundle_sl.properties +2 -11
- package/src/sap/fe/templates/messagebundle_sv.properties +2 -11
- package/src/sap/fe/templates/messagebundle_th.properties +1 -10
- package/src/sap/fe/templates/messagebundle_tr.properties +2 -11
- package/src/sap/fe/templates/messagebundle_uk.properties +2 -11
- package/src/sap/fe/templates/messagebundle_vi.properties +0 -9
- package/src/sap/fe/templates/messagebundle_zh_CN.properties +0 -9
- package/src/sap/fe/templates/messagebundle_zh_TW.properties +2 -11
- package/src/sap/fe/templates/ListReport/view/fragments/MultipleModeOld.fragment.xml +0 -50
- package/src/sap/fe/templates/ObjectPage/handler/DraftHandler.js +0 -103
- package/src/sap/fe/templates/ObjectPage/handler/DraftHandler.ts +0 -97
- package/src/sap/fe/templates/ObjectPage/view/fragments/SwitchDraftAndActiveObjectPopOver.fragment.xml +0 -27
- package/src/sap/fe/templates/controls/Chart.fragment.xml +0 -25
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/base/Log", "sap/fe/core/BaseController", "sap/fe/core/CommonUtils", "sap/fe/core/controllerextensions/Placeholder", "sap/fe/core/helpers/ClassSupport", "sap/fe/macros/
|
|
5
|
+
sap.ui.define(["sap/base/Log", "sap/fe/core/BaseController", "sap/fe/core/CommonUtils", "sap/fe/core/controllerextensions/Placeholder", "sap/fe/core/helpers/ClassSupport", "sap/fe/macros/table/TableSizeHelper", "sap/ui/base/BindingParser", "sap/ui/core/routing/HashChanger", "sap/ui/model/json/JSONModel", "sap/ui/model/odata/v4/AnnotationHelper"], function (Log, BaseController, CommonUtils, Placeholder, ClassSupport, TableSizeHelper, BindingParser, HashChanger, JSONModel, AnnotationHelper) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
var _dec, _dec2, _class, _class2, _descriptor;
|
|
@@ -30,7 +30,7 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/BaseController", "sap/fe/core/Common
|
|
|
30
30
|
|
|
31
31
|
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
32
32
|
|
|
33
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf
|
|
33
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
34
34
|
|
|
35
35
|
function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }
|
|
36
36
|
|
|
@@ -57,7 +57,7 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/BaseController", "sap/fe/core/Common
|
|
|
57
57
|
var _proto = RootContainerBaseController.prototype;
|
|
58
58
|
|
|
59
59
|
_proto.onInit = function onInit() {
|
|
60
|
-
|
|
60
|
+
TableSizeHelper.init();
|
|
61
61
|
this._aHelperModels = [];
|
|
62
62
|
};
|
|
63
63
|
|
|
@@ -73,7 +73,7 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/BaseController", "sap/fe/core/Common
|
|
|
73
73
|
_proto.onExit = function onExit() {
|
|
74
74
|
this.getAppComponent().getRoutingService().detachAfterRouteMatched(this._onAfterRouteMatched, this);
|
|
75
75
|
this.oRouter = undefined;
|
|
76
|
-
|
|
76
|
+
TableSizeHelper.exit(); // Destroy all JSON models created dynamically for the views
|
|
77
77
|
|
|
78
78
|
this._aHelperModels.forEach(function (oModel) {
|
|
79
79
|
oModel.destroy();
|
|
@@ -572,4 +572,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/BaseController", "sap/fe/core/Common
|
|
|
572
572
|
})), _class2)) || _class);
|
|
573
573
|
return RootContainerBaseController;
|
|
574
574
|
}, false);
|
|
575
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlJvb3RDb250YWluZXJCYXNlQ29udHJvbGxlci50cyJdLCJuYW1lcyI6WyJib2R5IiwicmVjb3ZlciIsInJlc3VsdCIsImUiLCJ0aGVuIiwiUm9vdENvbnRhaW5lckJhc2VDb250cm9sbGVyIiwiZGVmaW5lVUk1Q2xhc3MiLCJ1c2luZ0V4dGVuc2lvbiIsIlBsYWNlaG9sZGVyIiwiYklzQ29tcHV0aW5nVGl0bGVIaWVyYWNoeSIsIm9uSW5pdCIsIlNpemVIZWxwZXIiLCJpbml0IiwiX2FIZWxwZXJNb2RlbHMiLCJnZXRQbGFjZWhvbGRlciIsIm9QbGFjZWhvbGRlciIsImF0dGFjaFJvdXRlTWF0Y2hlcnMiLCJnZXRBcHBDb21wb25lbnQiLCJnZXRSb3V0aW5nU2VydmljZSIsImF0dGFjaEFmdGVyUm91dGVNYXRjaGVkIiwiX29uQWZ0ZXJSb3V0ZU1hdGNoZWQiLCJvbkV4aXQiLCJkZXRhY2hBZnRlclJvdXRlTWF0Y2hlZCIsIm9Sb3V0ZXIiLCJ1bmRlZmluZWQiLCJleGl0IiwiZm9yRWFjaCIsIm9Nb2RlbCIsImRlc3Ryb3kiLCJnZXRSZXNvdXJjZUJ1bmRsZSIsImdldE93bmVyQ29tcG9uZW50IiwiZ2V0TW9kZWwiLCJnZXRSb3V0ZXIiLCJfY3JlYXRlSGVscGVyTW9kZWwiLCJKU09OTW9kZWwiLCJwdXNoIiwid2FpdEZvclJpZ2h0TW9zdFZpZXdSZWFkeSIsIm9FdmVudCIsIlByb21pc2UiLCJyZXNvbHZlIiwiYUNvbnRhaW5lcnMiLCJnZXRQYXJhbWV0ZXIiLCJhRkVDb250YWluZXJzIiwib0NvbnRhaW5lciIsIm9WaWV3IiwiZ2V0Q29tcG9uZW50SW5zdGFuY2UiLCJvQ29tcG9uZW50SW5zdGFuY2UiLCJnZXRSb290Q29udHJvbCIsImdldENvbnRyb2xsZXIiLCJwYWdlUmVhZHkiLCJvUmlnaHRNb3N0RkVWaWV3IiwibGVuZ3RoIiwiaXNQYWdlUmVhZHkiLCJhdHRhY2hFdmVudE9uY2UiLCJfb1JvdXRlTWF0Y2hlZFByb21pc2UiLCJvUm9vdENvbnRyb2wiLCJnZXRWaWV3IiwiZ2V0Q29udGVudCIsImdldEF1dG9Gb2N1cyIsInNldFByb3BlcnR5Iiwib0FwcENvbXBvbmVudCIsIl9zY3JvbGxUYWJsZXNUb0xhc3ROYXZpZ2F0ZWRJdGVtcyIsImdldEVudmlyb25tZW50Q2FwYWJpbGl0aWVzIiwiZ2V0Q2FwYWJpbGl0aWVzIiwiVVNoZWxsIiwiX2NvbXB1dGVUaXRsZUhpZXJhcmNoeSIsImJGb3JjZUZvY3VzIiwiZ2V0Um91dGVyUHJveHkiLCJpc0ZvY3VzRm9yY2VkIiwic2V0Rm9jdXNGb3JjZWQiLCJvblBhZ2VSZWFkeSIsImdldFBhcmVudCIsImZvcmNlRm9jdXMiLCJvbkNvbnRhaW5lclJlYWR5IiwiY2F0Y2giLCJvRXJyb3IiLCJMb2ciLCJlcnJvciIsImZpbmFsbHkiLCJfZ2V0VGl0bGVIaWVyYXJjaHlDYWNoZSIsIm9UaXRsZUhpZXJhcmNoeUNhY2hlIiwiX2NvbXB1dGVUaXRsZUluZm8iLCJ0aXRsZSIsInN1YnRpdGxlIiwic0ludGVudCIsImFQYXJ0cyIsInNwbGl0IiwiaW5kZXhPZiIsImludGVudCIsImljb24iLCJfZm9ybWF0VGl0bGUiLCJkaXNwbGF5TW9kZSIsInRpdGxlVmFsdWUiLCJ0aXRsZURlc2NyaXB0aW9uIiwiZm9ybWF0dGVkVGl0bGUiLCJfZmV0Y2hUaXRsZVZhbHVlIiwic1BhdGgiLCJvTWV0YU1vZGVsIiwiZ2V0TWV0YU1vZGVsIiwic01ldGFQYXRoIiwiZ2V0TWV0YVBhdGgiLCJvQmluZGluZ1ZpZXdDb250ZXh0IiwiY3JlYXRlQmluZGluZ0NvbnRleHQiLCJzVmFsdWVFeHByZXNzaW9uIiwiQW5ub3RhdGlvbkhlbHBlciIsImZvcm1hdCIsImdldE9iamVjdCIsImNvbnRleHQiLCJzVGV4dEV4cHJlc3Npb24iLCJvUHJvcGVydHlDb250ZXh0IiwiYVByb21pc2VzIiwib1ZhbHVlRXhwcmVzc2lvbiIsIkJpbmRpbmdQYXJzZXIiLCJjb21wbGV4UGFyc2VyIiwib1Byb21pc2VGb3JEaXNwbGF5TW9kZSIsIkNvbW1vblV0aWxzIiwiY29tcHV0ZURpc3BsYXlNb2RlIiwic1ZhbHVlUGF0aCIsInBhcnRzIiwicGF0aCIsImZuVmFsdWVGb3JtYXR0ZXIiLCJmb3JtYXR0ZXIiLCJvVmFsdWVCaW5kaW5nIiwiYmluZFByb3BlcnR5IiwiaW5pdGlhbGl6ZSIsIm9Qcm9taXNlRm9yVGl0bGVWYWx1ZSIsImZuQ2hhbmdlIiwic1RhcmdldFZhbHVlIiwiZ2V0U291cmNlIiwiZ2V0VmFsdWUiLCJkZXRhY2hDaGFuZ2UiLCJhdHRhY2hDaGFuZ2UiLCJvVGV4dEV4cHJlc3Npb24iLCJzVGV4dFBhdGgiLCJsYXN0SW5kZXhPZiIsInNsaWNlIiwiZm5UZXh0Rm9ybWF0dGVyIiwib1RleHRCaW5kaW5nIiwib1Byb21pc2VGb3JUaXRsZVRleHQiLCJzVGFyZ2V0VGV4dCIsImFsbCIsInRpdGxlSW5mbyIsIl9nZXRBcHBTcGVjaWZpY0hhc2giLCJIYXNoQ2hhbmdlciIsImdldEluc3RhbmNlIiwiaHJlZkZvckFwcFNwZWNpZmljSGFzaCIsIl9nZXRIYXNoIiwiZ2V0SGFzaCIsImdldFRpdGxlSW5mb0Zyb21QYXRoIiwic0VudGl0eVBhdGgiLCJzVHlwZU5hbWUiLCJzQXBwU3BlY2lmaWNIYXNoIiwic1RpdGxlIiwib1RpdGxlSW5mbyIsIl9lbnN1cmVIaWVyYXJjaHlFbGVtZW50c0FyZVN0cmluZ3MiLCJhSGllcmFyY2h5IiwiYUhpZXJhcmNoeVNoZWxsIiwibGV2ZWwiLCJvSGllcmFyY2h5Iiwib1NoZWxsSGllcmFyY2h5Iiwia2V5IiwiU3RyaW5nIiwiX2dldFRhcmdldFR5cGVGcm9tSGFzaCIsInNIYXNoIiwic1RhcmdldFR5cGUiLCJhUm91dGVzIiwiZ2V0TWFuaWZlc3RFbnRyeSIsImoiLCJvUm91dGUiLCJnZXRSb3V0ZSIsIm5hbWUiLCJtYXRjaCIsInNUYXJnZXQiLCJBcnJheSIsImlzQXJyYXkiLCJ0YXJnZXQiLCJnZXRUYXJnZXQiLCJfb09wdGlvbnMiLCJvQ29udGV4dCIsImdldEJpbmRpbmdDb250ZXh0Iiwib0N1cnJlbnRQYWdlIiwiYVRpdGxlSW5mb3JtYXRpb25Qcm9taXNlcyIsInNBcHBUaXRsZSIsImdldE1ldGFkYXRhIiwic0FwcFN1YlRpdGxlIiwiYXBwU3ViVGl0bGUiLCJvUGFnZVRpdGxlSW5mb3JtYXRpb24iLCJzTmV3UGF0aCIsIl9nZXRQYWdlVGl0bGVJbmZvcm1hdGlvbiIsImdldFBhdGgiLCJhUGF0aFBhcnRzIiwic2hpZnQiLCJwb3AiLCJzUGF0aFBhcnQiLCJzUGFyYW1ldGVyUGF0aCIsImJJc1BhcmFtZXRlcml6ZWQiLCJyZWplY3QiLCJhVGl0bGVJbmZvSGllcmFyY2h5IiwiYVRpdGxlSW5mb0hpZXJhcmNoeVNoZWxsIiwiZ2V0U2hlbGxTZXJ2aWNlcyIsInNldEhpZXJhcmNoeSIsInJldmVyc2UiLCJzZXRUaXRsZSIsInNFcnJvck1lc3NhZ2UiLCJjYWxjdWxhdGVMYXlvdXQiLCJpTmV4dEZDTExldmVsIiwic1Byb3Bvc2VkTGF5b3V0Iiwia2VlcEN1cnJlbnRMYXlvdXQiLCJvbkNvbnRleHRCb3VuZFRvVmlldyIsInNEZWVwZXN0UGF0aCIsImdldFByb3BlcnR5Iiwic1ZpZXdDb250ZXh0UGF0aCIsImRpc3BsYXlNZXNzYWdlUGFnZSIsIm1QYXJhbWV0ZXJzIiwidXBkYXRlVUlTdGF0ZUZvclZpZXciLCJGQ0xMZXZlbCIsIkJhc2VDb250cm9sbGVyIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7Ozs7Ozs7QUFnakJPLGtCQUFnQkEsSUFBaEIsRUFBc0JDLE9BQXRCLEVBQStCO0FBQ3JDLFFBQUk7QUFDSCxVQUFJQyxNQUFNLEdBQUdGLElBQUksRUFBakI7QUFDQSxLQUZELENBRUUsT0FBTUcsQ0FBTixFQUFTO0FBQ1YsYUFBT0YsT0FBTyxDQUFDRSxDQUFELENBQWQ7QUFDQTs7QUFDRCxRQUFJRCxNQUFNLElBQUlBLE1BQU0sQ0FBQ0UsSUFBckIsRUFBMkI7QUFDMUIsYUFBT0YsTUFBTSxDQUFDRSxJQUFQLENBQVksS0FBSyxDQUFqQixFQUFvQkgsT0FBcEIsQ0FBUDtBQUNBOztBQUNELFdB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Q0QsSyxDQUVEOzs7V0FDQTRMLGtCLEdBQUEsNEJBQW1CVCxhQUFuQixFQUF1Q1UsV0FBdkMsRUFBMkU7QUFDMUU7QUFDQSxhQUFPL0ssT0FBTyxDQUFDQyxPQUFSLENBQWdCLElBQWhCLENBQVA7QUFDQSxLLENBRUQ7OztXQUNBK0ssb0IsR0FBQSw4QkFBcUIxSyxLQUFyQixFQUFpQzJLLFFBQWpDLEVBQWdELENBQy9DO0FBQ0EsSzs7V0FDRDFKLGlDLEdBQUEsNkNBQTBDLENBQ3pDO0FBQ0EsSzs7O0lBdGR3QzJKLGM7Ozs7OztTQTRkM0JuTiwyQiIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgQmFzZUNvbnRyb2xsZXIgZnJvbSBcInNhcC9mZS9jb3JlL0Jhc2VDb250cm9sbGVyXCI7XG5pbXBvcnQgQ29tbW9uVXRpbHMgZnJvbSBcInNhcC9mZS9jb3JlL0NvbW1vblV0aWxzXCI7XG5pbXBvcnQgUGxhY2Vob2xkZXIgZnJvbSBcInNhcC9mZS9jb3JlL2NvbnRyb2xsZXJleHRlbnNpb25zL1BsYWNlaG9sZGVyXCI7XG5pbXBvcnQgeyBkZWZpbmVVSTVDbGFzcywgdXNpbmdFeHRlbnNpb24gfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCBTaXplSGVscGVyIGZyb20gXCJzYXAvZmUvbWFjcm9zL1NpemVIZWxwZXJcIjtcbmltcG9ydCBCaW5kaW5nUGFyc2VyIGZyb20gXCJzYXAvdWkvYmFzZS9CaW5kaW5nUGFyc2VyXCI7XG5pbXBvcnQgSGFzaENoYW5nZXIgZnJvbSBcInNhcC91aS9jb3JlL3JvdXRpbmcvSGFzaENoYW5nZXJcIjtcbmltcG9ydCB0eXBlIFJvdXRlciBmcm9tIFwic2FwL3VpL2NvcmUvcm91dGluZy9Sb3V0ZXJcIjtcbmltcG9ydCB0eXBlIENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9Db250ZXh0XCI7XG5pbXBvcnQgSlNPTk1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvanNvbi9KU09OTW9kZWxcIjtcbmltcG9ydCBBbm5vdGF0aW9uSGVscGVyIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvQW5ub3RhdGlvbkhlbHBlclwiO1xuaW1wb3J0IHR5cGUgUmVzb3VyY2VNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL3Jlc291cmNlL1Jlc291cmNlTW9kZWxcIjtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLnRlbXBsYXRlcy5Sb290Q29udGFpbmVyLmNvbnRyb2xsZXIuUm9vdENvbnRhaW5lckJhc2VDb250cm9sbGVyXCIpXG5jbGFzcyBSb290Q29udGFpbmVyQmFzZUNvbnRyb2xsZXIgZXh0ZW5kcyBCYXNlQ29udHJvbGxlciB7XG5cdEB1c2luZ0V4dGVuc2lvbihQbGFjZWhvbGRlcilcblx0b1BsYWNlaG9sZGVyITogUGxhY2Vob2xkZXI7XG5cdHByaXZhdGUgX2FIZWxwZXJNb2RlbHMhOiBhbnlbXTtcblx0cHJpdmF0ZSBvUm91dGVyPzogUm91dGVyO1xuXHRwcml2YXRlIF9vUm91dGVNYXRjaGVkUHJvbWlzZTogYW55O1xuXHRwcml2YXRlIG9UaXRsZUhpZXJhcmNoeUNhY2hlOiBhbnk7XG5cdHByaXZhdGUgYklzQ29tcHV0aW5nVGl0bGVIaWVyYWNoeTogYm9vbGVhbiA9IGZhbHNlO1xuXG5cdG9uSW5pdCgpIHtcblx0XHRTaXplSGVscGVyLmluaXQoKTtcblxuXHRcdHRoaXMuX2FIZWxwZXJNb2RlbHMgPSBbXTtcblx0fVxuXG5cdGdldFBsYWNlaG9sZGVyKCkge1xuXHRcdHJldHVybiB0aGlzLm9QbGFjZWhvbGRlcjtcblx0fVxuXHRhdHRhY2hSb3V0ZU1hdGNoZXJzKCkge1xuXHRcdHRoaXMub1BsYWNlaG9sZGVyLmF0dGFjaFJvdXRlTWF0Y2hlcnMoKTtcblx0XHR0aGlzLmdldEFwcENvbXBvbmVudCgpLmdldFJvdXRpbmdTZXJ2aWNlKCkuYXR0YWNoQWZ0ZXJSb3V0ZU1hdGNoZWQodGhpcy5fb25BZnRlclJvdXRlTWF0Y2hlZCwgdGhpcyk7XG5cdH1cblx0b25FeGl0KCkge1xuXHRcdHRoaXMuZ2V0QXBwQ29tcG9uZW50KCkuZ2V0Um91dGluZ1NlcnZpY2UoKS5kZXRhY2hBZnRlclJvdXRlTWF0Y2hlZCh0aGlzLl9vbkFmdGVyUm91dGVNYXRjaGVkLCB0aGlzKTtcblx0XHR0aGlzLm9Sb3V0ZXIgPSB1bmRlZmluZWQ7XG5cblx0XHRTaXplSGVscGVyLmV4aXQoKTtcblxuXHRcdC8vIERlc3Ryb3kgYWxsIEpTT04gbW9kZWxzIGNyZWF0ZWQgZHluYW1pY2FsbHkgZm9yIHRoZSB2aWV3c1xuXHRcdHRoaXMuX2FIZWxwZXJNb2RlbHMuZm9yRWFjaChmdW5jdGlvbiAob01vZGVsOiBhbnkpIHtcblx0XHRcdG9Nb2RlbC5kZXN0cm95KCk7XG5cdFx0fSk7XG5cdH1cblx0LyoqXG5cdCAqIENvbnZlbmllbmNlIG1ldGhvZCBmb3IgZ2V0dGluZyB0aGUgcmVzb3VyY2UgYnVuZGxlLlxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqIEByZXR1cm5zIFRoZSByZXNvdXJjZU1vZGVsIG9mIHRoZSBjb21wb25lbnRcblx0ICovXG5cdGdldFJlc291cmNlQnVuZGxlKCkge1xuXHRcdHJldHVybiAodGhpcy5nZXRPd25lckNvbXBvbmVudCgpLmdldE1vZGVsKFwiaTE4blwiKSBhcyBSZXNvdXJjZU1vZGVsKS5nZXRSZXNvdXJjZUJ1bmRsZSgpO1xuXHR9XG5cdGdldFJvdXRlcigpIHtcblx0XHRpZiAoIXRoaXMub1JvdXRlcikge1xuXHRcdFx0dGhpcy5vUm91dGVyID0gdGhpcy5nZXRBcHBDb21wb25lbnQoKS5nZXRSb3V0ZXIoKTtcblx0XHR9XG5cblx0XHRyZXR1cm4gdGhpcy5vUm91dGVyO1xuXHR9XG5cblx0X2NyZWF0ZUhlbHBlck1vZGVsKCkge1xuXHRcdC8vIFdlIGtlZXAgYSByZWZlcmVuY2Ugb24gdGhlIG1vZGVscyBjcmVhdGVkIGR5bmFtaWNhbGx5LCBhcyB0aGV5IGRvbid0IGdldCBkZXN0cm95ZWRcblx0XHQvLyBhdXRvbWF0aWNhbGx5IHdoZW4gdGhlIHZpZXcgaXMgZGVzdHJveWVkLlxuXHRcdC8vIFRoaXMgaXMgZG9uZSBkdXJpbmcgb25FeGl0XG5cdFx0Y29uc3Qgb01vZGVsID0gbmV3IEpTT05Nb2RlbCgpO1xuXHRcdHRoaXMuX2FIZWxwZXJNb2RlbHMucHVzaChvTW9kZWwpO1xuXG5cdFx0cmV0dXJuIG9Nb2RlbDtcblx0fVxuXG5cdC8qKlxuXHQgKiBGdW5jdGlvbiB3YWl0aW5nIGZvciB0aGUgUmlnaHQgbW9zdCB2aWV3IHRvIGJlIHJlYWR5LlxuXHQgKlxuXHQgKiBAbWVtYmVyb2Ygc2FwLmZlLnRlbXBsYXRlcy5Sb290Q29udGFpbmVyLmNvbnRyb2xsZXIuQmFzZUNvbnRyb2xsZXJcblx0ICogQHBhcmFtIG9FdmVudCBSZWZlcmVuY2UgYW4gRXZlbnQgcGFyYW1ldGVyIGNvbWluZyBmcm9tIHJvdXRlTWF0Y2hlZCBldmVudFxuXHQgKiBAcmV0dXJucyBBIHByb21pc2UgaW5kaWNhdGluZyB3aGVuIHRoZSByaWdodCBtb3N0IHZpZXcgaXMgcmVhZHlcblx0ICovXG5cdHdhaXRGb3JSaWdodE1vc3RWaWV3UmVhZHkob0V2ZW50OiBhbnkpIHtcblx0XHRyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmU6ICh2YWx1ZTogYW55KSA9PiB2b2lkKSB7XG5cdFx0XHRjb25zdCBhQ29udGFpbmVycyA9IG9FdmVudC5nZXRQYXJhbWV0ZXIoXCJ2aWV3c1wiKSxcblx0XHRcdFx0Ly8gVGhlcmUgY2FuIGFsc28gYmUgcmV1c2UgY29tcG9uZW50cyBpbiB0aGUgdmlldywgcmVtb3ZlIHRoZW0gYmVmb3JlIHByb2Nlc3NpbmcuXG5cdFx0XHRcdGFGRUNvbnRhaW5lcnM6IGFueVtdID0gW107XG5cdFx0XHRhQ29udGFpbmVycy5mb3JFYWNoKGZ1bmN0aW9uIChvQ29udGFpbmVyOiBhbnkpIHtcblx0XHRcdFx0bGV0IG9WaWV3ID0gb0NvbnRhaW5lcjtcblx0XHRcdFx0aWYgKG9Db250YWluZXIgJiYgb0NvbnRhaW5lci5nZXRDb21wb25lbnRJbnN0YW5jZSkge1xuXHRcdFx0XHRcdGNvbnN0IG9Db21wb25lbnRJbnN0YW5jZSA9IG9Db250YWluZXIuZ2V0Q29tcG9uZW50SW5zdGFuY2UoKTtcblx0XHRcdFx0XHRvVmlldyA9IG9Db21wb25lbnRJbnN0YW5jZS5nZXRSb290Q29udHJvbCgpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmIChvVmlldyAmJiBvVmlldy5nZXRDb250cm9sbGVyKCkgJiYgb1ZpZXcuZ2V0Q29udHJvbGxlcigpLnBhZ2VSZWFkeSkge1xuXHRcdFx0XHRcdGFGRUNvbnRhaW5lcnMucHVzaChvVmlldyk7XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdFx0Y29uc3Qgb1JpZ2h0TW9zdEZFVmlldyA9IGFGRUNvbnRhaW5lcnNbYUZFQ29udGFpbmVycy5sZW5ndGggLSAxXTtcblx0XHRcdGlmIChvUmlnaHRNb3N0RkVWaWV3ICYmIG9SaWdodE1vc3RGRVZpZXcuZ2V0Q29udHJvbGxlcigpLnBhZ2VSZWFkeS5pc1BhZ2VSZWFkeSgpKSB7XG5cdFx0XHRcdHJlc29sdmUob1JpZ2h0TW9zdEZFVmlldyk7XG5cdFx0XHR9IGVsc2UgaWYgKG9SaWdodE1vc3RGRVZpZXcpIHtcblx0XHRcdFx0b1JpZ2h0TW9zdEZFVmlldy5nZXRDb250cm9sbGVyKCkucGFnZVJlYWR5LmF0dGFjaEV2ZW50T25jZShcInBhZ2VSZWFkeVwiLCBmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdFx0cmVzb2x2ZShvUmlnaHRNb3N0RkVWaWV3KTtcblx0XHRcdFx0fSk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogQ2FsbGJhY2sgd2hlbiB0aGUgbmF2aWdhdGlvbiBpcyBkb25lLlxuXHQgKiAgLSB1cGRhdGUgdGhlIHNoZWxsIHRpdGxlLlxuXHQgKiAgLSB1cGRhdGUgdGFibGUgc2Nyb2xsLlxuXHQgKiAgLSBjYWxsIG9uUGFnZVJlYWR5IG9uIHRoZSByaWdodE1vc3RWaWV3LlxuXHQgKlxuXHQgKiBAcGFyYW0gb0V2ZW50XG5cdCAqIEBuYW1lIHNhcC5mZS50ZW1wbGF0ZXMuUm9vdENvbnRhaW5lci5jb250cm9sbGVyLkJhc2VDb250cm9sbGVyI19vbkFmdGVyUm91dGVNYXRjaGVkXG5cdCAqIEBtZW1iZXJvZiBzYXAuZmUudGVtcGxhdGVzLlJvb3RDb250YWluZXIuY29udHJvbGxlci5CYXNlQ29udHJvbGxlclxuXHQgKi9cblx0X29uQWZ0ZXJSb3V0ZU1hdGNoZWQob0V2ZW50OiBhbnkpIHtcblx0XHRpZiAoIXRoaXMuX29Sb3V0ZU1hdGNoZWRQcm9taXNlKSB7XG5cdFx0XHR0aGlzLl9vUm91dGVNYXRjaGVkUHJvbWlzZSA9IHRoaXMud2FpdEZvclJpZ2h0TW9zdFZpZXdSZWFkeShvRXZlbnQpXG5cdFx0XHRcdC50aGVuKChvVmlldzogYW55KSA9PiB7XG5cdFx0XHRcdFx0Ly8gVGhlIGF1dG9Gb2N1cyBpcyBpbml0aWFsbHkgZGlzYWJsZWQgb24gdGhlIG5hdkNvbnRhaW5lciBvciB0aGUgRkNMLCBzbyB0aGF0IHRoZSBmb2N1cyBzdGF5cyBvbiB0aGUgU2hlbGwgbWVudVxuXHRcdFx0XHRcdC8vIGV2ZW4gaWYgdGhlIGFwcCB0YWtlcyBhIGxvbmcgdGltZSB0byBsYXVuY2hcblx0XHRcdFx0XHQvLyBUaGUgZmlyc3QgdGltZSB0aGUgdmlldyBpcyBkaXNwbGF5ZWQsIHdlIG5lZWQgdG8gZW5hYmxlIHRoZSBhdXRvZm9jdXMgc28gdGhhdCBpdCdzIG1hbmFnZWQgcHJvcGVybHkgZHVyaW5nIG5hdmlnYXRpb25cblx0XHRcdFx0XHRjb25zdCBvUm9vdENvbnRyb2wgPSB0aGlzLmdldFZpZXcoKS5nZXRDb250ZW50KClbMF0gYXMgYW55O1xuXHRcdFx0XHRcdGlmIChvUm9vdENvbnRyb2wgJiYgb1Jvb3RDb250cm9sLmdldEF1dG9Gb2N1cyAmJiAhb1Jvb3RDb250cm9sLmdldEF1dG9Gb2N1cygpKSB7XG5cdFx0XHRcdFx0XHRvUm9vdENvbnRyb2wuc2V0UHJvcGVydHkoXCJhdXRvRm9jdXNcIiwgdHJ1ZSwgdHJ1ZSk7IC8vIERvIG5vdCBtYXJrIHRoZSBjb250YWluZXIgYXMgaW52YWxpZCwgb3RoZXJ3aXNlIGl0J3MgcmUtcmVuZGVyZWRcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRjb25zdCBvQXBwQ29tcG9uZW50ID0gdGhpcy5nZXRBcHBDb21wb25lbnQoKTtcblx0XHRcdFx0XHR0aGlzLl9zY3JvbGxUYWJsZXNUb0xhc3ROYXZpZ2F0ZWRJdGVtcygpO1xuXHRcdFx0XHRcdGlmIChvQXBwQ29tcG9uZW50LmdldEVudmlyb25tZW50Q2FwYWJpbGl0aWVzKCkuZ2V0Q2FwYWJpbGl0aWVzKCkuVVNoZWxsKSB7XG5cdFx0XHRcdFx0XHR0aGlzLl9jb21wdXRlVGl0bGVIaWVyYXJjaHkob1ZpZXcpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRjb25zdCBiRm9yY2VGb2N1cyA9IG9BcHBDb21wb25lbnQuZ2V0Um91dGVyUHJveHkoKS5pc0ZvY3VzRm9yY2VkKCk7XG5cdFx0XHRcdFx0b0FwcENvbXBvbmVudC5nZXRSb3V0ZXJQcm94eSgpLnNldEZvY3VzRm9yY2VkKGZhbHNlKTsgLy8gcmVzZXRcblx0XHRcdFx0XHRpZiAob1ZpZXcuZ2V0Q29udHJvbGxlcigpICYmIG9WaWV3LmdldENvbnRyb2xsZXIoKS5vblBhZ2VSZWFkeSAmJiBvVmlldy5nZXRQYXJlbnQoKS5vblBhZ2VSZWFkeSkge1xuXHRcdFx0XHRcdFx0b1ZpZXcuZ2V0UGFyZW50KCkub25QYWdlUmVhZHkoeyBmb3JjZUZvY3VzOiBiRm9yY2VGb2N1cyB9KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0aWYgKHRoaXMub25Db250YWluZXJSZWFkeSkge1xuXHRcdFx0XHRcdFx0dGhpcy5vbkNvbnRhaW5lclJlYWR5KCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKG9FcnJvcjogYW55KSB7XG5cdFx0XHRcdFx0TG9nLmVycm9yKFwiQW4gZXJyb3Igb2NjdXJzIHdoaWxlIGNvbXB1dGluZyB0aGUgdGl0bGUgaGllcmFyY2h5IGFuZCBjYWxsaW5nIGZvY3VzIG1ldGhvZFwiLCBvRXJyb3IpO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuZmluYWxseSgoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5fb1JvdXRlTWF0Y2hlZFByb21pc2UgPSBudWxsO1xuXHRcdFx0XHR9KTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogVGhpcyBmdW5jdGlvbiByZXR1cm5zIHRoZSBUaXRsZUhpZXJhcmNoeSBjYWNoZSAoIG9yIGluaXRpYWxpemVzIGl0IGlmIHVuZGVmaW5lZCkuXG5cdCAqXG5cdCAqIEBuYW1lIHNhcC5mZS50ZW1wbGF0ZXMuUm9vdENvbnRhaW5lci5jb250cm9sbGVyLkJhc2VDb250cm9sbGVyI19nZXRUaXRsZUhpZXJhcmNoeUNhY2hlXG5cdCAqIEBtZW1iZXJvZiBzYXAuZmUudGVtcGxhdGVzLlJvb3RDb250YWluZXIuY29udHJvbGxlci5CYXNlQ29udHJvbGxlclxuXHQgKiBAcmV0dXJucyAgVGhlIFRpdGxlSGllcmFyY2h5IGNhY2hlXG5cdCAqL1xuXHRfZ2V0VGl0bGVIaWVyYXJjaHlDYWNoZSgpIHtcblx0XHRpZiAoIXRoaXMub1RpdGxlSGllcmFyY2h5Q2FjaGUpIHtcblx0XHRcdHRoaXMub1RpdGxlSGllcmFyY2h5Q2FjaGUgPSB7fTtcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXMub1RpdGxlSGllcmFyY2h5Q2FjaGU7XG5cdH1cblxuXHQvKipcblx0ICogVGhpcyBmdW5jdGlvbiByZXR1cm5zIGEgdGl0bGVJbmZvIG9iamVjdC5cblx0ICpcblx0ICogQG1lbWJlcm9mIHNhcC5mZS50ZW1wbGF0ZXMuUm9vdENvbnRhaW5lci5jb250cm9sbGVyLkJhc2VDb250cm9sbGVyXG5cdCAqIEBwYXJhbSB0aXRsZVxuXHQgKiBAcGFyYW0gc3VidGl0bGVcblx0ICogQHBhcmFtIHNJbnRlbnQgVGhlIGludGVudCBwYXRoIHRvIGJlIHJlZGlyZWN0ZWQgdG9cblx0ICogQHJldHVybnMgVGhlIHRpdGxlIGluZm9ybWF0aW9uXG5cdCAqL1xuXHRfY29tcHV0ZVRpdGxlSW5mbyh0aXRsZTogYW55LCBzdWJ0aXRsZTogYW55LCBzSW50ZW50OiBhbnkpIHtcblx0XHRjb25zdCBhUGFydHMgPSBzSW50ZW50LnNwbGl0KFwiL1wiKTtcblx0XHRpZiAoYVBhcnRzW2FQYXJ0cy5sZW5ndGggLSAxXS5pbmRleE9mKFwiP1wiKSA9PT0gLTEpIHtcblx0XHRcdHNJbnRlbnQgKz0gXCI/cmVzdG9yZUhpc3Rvcnk9dHJ1ZVwiO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRzSW50ZW50ICs9IFwiJnJlc3RvcmVIaXN0b3J5PXRydWVcIjtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHRpdGxlOiB0aXRsZSxcblx0XHRcdHN1YnRpdGxlOiBzdWJ0aXRsZSxcblx0XHRcdGludGVudDogc0ludGVudCxcblx0XHRcdGljb246IFwiXCJcblx0XHR9O1xuXHR9XG5cdF9mb3JtYXRUaXRsZShkaXNwbGF5TW9kZTogc3RyaW5nLCB0aXRsZVZhbHVlOiBzdHJpbmcsIHRpdGxlRGVzY3JpcHRpb246IHN0cmluZyk6IHN0cmluZyB7XG5cdFx0bGV0IGZvcm1hdHRlZFRpdGxlID0gXCJcIjtcblx0XHRzd2l0Y2ggKGRpc3BsYXlNb2RlKSB7XG5cdFx0XHRjYXNlIFwiVmFsdWVcIjpcblx0XHRcdFx0Zm9ybWF0dGVkVGl0bGUgPSBgJHt0aXRsZVZhbHVlfWA7XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0Y2FzZSBcIlZhbHVlRGVzY3JpcHRpb25cIjpcblx0XHRcdFx0Zm9ybWF0dGVkVGl0bGUgPSBgJHt0aXRsZVZhbHVlfSAoJHt0aXRsZURlc2NyaXB0aW9ufSlgO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdGNhc2UgXCJEZXNjcmlwdGlvblZhbHVlXCI6XG5cdFx0XHRcdGZvcm1hdHRlZFRpdGxlID0gYCR7dGl0bGVEZXNjcmlwdGlvbn0gKCR7dGl0bGVWYWx1ZX0pYDtcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHRjYXNlIFwiRGVzY3JpcHRpb25cIjpcblx0XHRcdFx0Zm9ybWF0dGVkVGl0bGUgPSBgJHt0aXRsZURlc2NyaXB0aW9ufWA7XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0ZGVmYXVsdDpcblx0XHR9XG5cdFx0cmV0dXJuIGZvcm1hdHRlZFRpdGxlO1xuXHR9XG5cblx0LyoqXG5cdCAqIEZldGNoZXMgdGhlIHZhbHVlIG9mIHRoZSBIZWFkZXJJbmZvIHRpdGxlIGZvciBhIGdpdmVuIHBhdGguXG5cdCAqXG5cdCAqIEBwYXJhbSBzUGF0aCBUaGUgcGF0aCB0byB0aGUgZW50aXR5XG5cdCAqIEByZXR1cm5zIEEgcHJvbWlzZSBjb250YWluaW5nIHRoZSBmb3JtYXR0ZWQgdGl0bGUsIG9yIGFuIGVtcHR5IHN0cmluZyBpZiBubyBIZWFkZXJJbmZvIHRpdGxlIGFubm90YXRpb24gaXMgYXZhaWxhYmxlXG5cdCAqL1xuXHRhc3luYyBfZmV0Y2hUaXRsZVZhbHVlKHNQYXRoOiBzdHJpbmcpIHtcblx0XHRjb25zdCBvQXBwQ29tcG9uZW50ID0gdGhpcy5nZXRBcHBDb21wb25lbnQoKSxcblx0XHRcdG9Nb2RlbCA9IHRoaXMuZ2V0VmlldygpLmdldE1vZGVsKCksXG5cdFx0XHRvTWV0YU1vZGVsID0gb0FwcENvbXBvbmVudC5nZXRNZXRhTW9kZWwoKSxcblx0XHRcdHNNZXRhUGF0aCA9IG9NZXRhTW9kZWwuZ2V0TWV0YVBhdGgoc1BhdGgpLFxuXHRcdFx0b0JpbmRpbmdWaWV3Q29udGV4dCA9IG9Nb2RlbC5jcmVhdGVCaW5kaW5nQ29udGV4dChzUGF0aCksXG5cdFx0XHRzVmFsdWVFeHByZXNzaW9uID0gQW5ub3RhdGlvbkhlbHBlci5mb3JtYXQoXG5cdFx0XHRcdG9NZXRhTW9kZWwuZ2V0T2JqZWN0KGAke3NNZXRhUGF0aH0vQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkhlYWRlckluZm8vVGl0bGUvVmFsdWVgKSxcblx0XHRcdFx0eyBjb250ZXh0OiBvTWV0YU1vZGVsLmNyZWF0ZUJpbmRpbmdDb250ZXh0KFwiL1wiKSBhcyBDb250ZXh0IH1cblx0XHRcdCk7XG5cdFx0aWYgKCFzVmFsdWVFeHByZXNzaW9uKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKFwiXCIpO1xuXHRcdH1cblx0XHRjb25zdCBzVGV4dEV4cHJlc3Npb24gPSBBbm5vdGF0aW9uSGVscGVyLmZvcm1hdChcblx0XHRcdFx0b01ldGFNb2RlbC5nZXRPYmplY3QoXG5cdFx0XHRcdFx0YCR7c01ldGFQYXRofS9AY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuSGVhZGVySW5mby9UaXRsZS9WYWx1ZS8kUGF0aEBjb20uc2FwLnZvY2FidWxhcmllcy5Db21tb24udjEuVGV4dGBcblx0XHRcdFx0KSxcblx0XHRcdFx0eyBjb250ZXh0OiBvTWV0YU1vZGVsLmNyZWF0ZUJpbmRpbmdDb250ZXh0KFwiL1wiKSBhcyBDb250ZXh0IH1cblx0XHRcdCksXG5cdFx0XHRvUHJvcGVydHlDb250ZXh0ID0gb01ldGFNb2RlbC5nZXRPYmplY3QoYCR7c01ldGFQYXRofS9AY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuSGVhZGVySW5mby9UaXRsZS9WYWx1ZS8kUGF0aEBgKSxcblx0XHRcdGFQcm9taXNlczogUHJvbWlzZTx2b2lkPltdID0gW10sXG5cdFx0XHRvVmFsdWVFeHByZXNzaW9uID0gQmluZGluZ1BhcnNlci5jb21wbGV4UGFyc2VyKHNWYWx1ZUV4cHJlc3Npb24pLFxuXHRcdFx0b1Byb21pc2VGb3JEaXNwbGF5TW9kZSA9IG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xuXHRcdFx0XHRjb25zdCBkaXNwbGF5TW9kZSA9IENvbW1vblV0aWxzLmNvbXB1dGVEaXNwbGF5TW9kZShvUHJvcGVydHlDb250ZXh0KTtcblx0XHRcdFx0cmVzb2x2ZShkaXNwbGF5TW9kZSk7XG5cdFx0XHR9KTtcblx0XHRhUHJvbWlzZXMucHVzaChvUHJvbWlzZUZvckRpc3BsYXlNb2RlKTtcblx0XHRjb25zdCBzVmFsdWVQYXRoID0gb1ZhbHVlRXhwcmVzc2lvbi5wYXJ0cyA/IG9WYWx1ZUV4cHJlc3Npb24ucGFydHNbMF0ucGF0aCA6IG9WYWx1ZUV4cHJlc3Npb24ucGF0aCxcblx0XHRcdGZuVmFsdWVGb3JtYXR0ZXIgPSBvVmFsdWVFeHByZXNzaW9uLmZvcm1hdHRlcixcblx0XHRcdG9WYWx1ZUJpbmRpbmcgPSBvTW9kZWwuYmluZFByb3BlcnR5KHNWYWx1ZVBhdGgsIG9CaW5kaW5nVmlld0NvbnRleHQpO1xuXHRcdG9WYWx1ZUJpbmRpbmcuaW5pdGlhbGl6ZSgpO1xuXHRcdGNvbnN0IG9Qcm9taXNlRm9yVGl0bGVWYWx1ZSA9IG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xuXHRcdFx0Y29uc3QgZm5DaGFuZ2UgPSBmdW5jdGlvbiAob0V2ZW50OiBhbnkpIHtcblx0XHRcdFx0Y29uc3Qgc1RhcmdldFZhbHVlID0gZm5WYWx1ZUZvcm1hdHRlciA/IGZuVmFsdWVGb3JtYXR0ZXIob0V2ZW50LmdldFNvdXJjZSgpLmdldFZhbHVlKCkpIDogb0V2ZW50LmdldFNvdXJjZSgpLmdldFZhbHVlKCk7XG5cblx0XHRcdFx0b1ZhbHVlQmluZGluZy5kZXRhY2hDaGFuZ2UoZm5DaGFuZ2UpO1xuXHRcdFx0XHRyZXNvbHZlKHNUYXJnZXRWYWx1ZSk7XG5cdFx0XHR9O1xuXHRcdFx0b1ZhbHVlQmluZGluZy5hdHRhY2hDaGFuZ2UoZm5DaGFuZ2UpO1xuXHRcdH0pO1xuXHRcdGFQcm9taXNlcy5wdXNoKG9Qcm9taXNlRm9yVGl0bGVWYWx1ZSk7XG5cblx0XHRpZiAoc1RleHRFeHByZXNzaW9uKSB7XG5cdFx0XHRjb25zdCBvVGV4dEV4cHJlc3Npb24gPSBCaW5kaW5nUGFyc2VyLmNvbXBsZXhQYXJzZXIoc1RleHRFeHByZXNzaW9uKTtcblx0XHRcdGxldCBzVGV4dFBhdGggPSBvVGV4dEV4cHJlc3Npb24ucGFydHMgPyBvVGV4dEV4cHJlc3Npb24ucGFydHNbMF0ucGF0aCA6IG9UZXh0RXhwcmVzc2lvbi5wYXRoO1xuXHRcdFx0c1RleHRQYXRoID0gc1ZhbHVlUGF0aC5sYXN0SW5kZXhPZihcIi9cIikgPiAtMSA/IHNWYWx1ZVBhdGguc2xpY2UoMCwgc1ZhbHVlUGF0aC5sYXN0SW5kZXhPZihcIi9cIikpICsgXCIvXCIgKyBzVGV4dFBhdGggOiBzVGV4dFBhdGg7XG5cdFx0XHRjb25zdCBmblRleHRGb3JtYXR0ZXIgPSBvVGV4dEV4cHJlc3Npb24uZm9ybWF0dGVyLFxuXHRcdFx0XHRvVGV4dEJpbmRpbmcgPSBvTW9kZWwuYmluZFByb3BlcnR5KHNUZXh0UGF0aCwgb0JpbmRpbmdWaWV3Q29udGV4dCk7XG5cdFx0XHRvVGV4dEJpbmRpbmcuaW5pdGlhbGl6ZSgpO1xuXHRcdFx0Y29uc3Qgb1Byb21pc2VGb3JUaXRsZVRleHQgPSBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZTogKGRlc2NyaXB0aW9uOiBhbnkpID0+IHZvaWQpIHtcblx0XHRcdFx0Y29uc3QgZm5DaGFuZ2UgPSBmdW5jdGlvbiAob0V2ZW50OiBhbnkpIHtcblx0XHRcdFx0XHRjb25zdCBzVGFyZ2V0VGV4dCA9IGZuVGV4dEZvcm1hdHRlciA/IGZuVGV4dEZvcm1hdHRlcihvRXZlbnQuZ2V0U291cmNlKCkuZ2V0VmFsdWUoKSkgOiBvRXZlbnQuZ2V0U291cmNlKCkuZ2V0VmFsdWUoKTtcblxuXHRcdFx0XHRcdG9UZXh0QmluZGluZy5kZXRhY2hDaGFuZ2UoZm5DaGFuZ2UpO1xuXHRcdFx0XHRcdHJlc29sdmUoc1RhcmdldFRleHQpO1xuXHRcdFx0XHR9O1xuXG5cdFx0XHRcdG9UZXh0QmluZGluZy5hdHRhY2hDaGFuZ2UoZm5DaGFuZ2UpO1xuXHRcdFx0fSk7XG5cdFx0XHRhUHJvbWlzZXMucHVzaChvUHJvbWlzZUZvclRpdGxlVGV4dCk7XG5cdFx0fVxuXHRcdHRyeSB7XG5cdFx0XHRjb25zdCB0aXRsZUluZm86IGFueVtdID0gYXdhaXQgUHJvbWlzZS5hbGwoYVByb21pc2VzKTtcblx0XHRcdGxldCBmb3JtYXR0ZWRUaXRsZSA9IFwiXCI7XG5cdFx0XHRpZiAodHlwZW9mIHRpdGxlSW5mbyAhPT0gXCJzdHJpbmdcIikge1xuXHRcdFx0XHRmb3JtYXR0ZWRUaXRsZSA9IHRoaXMuX2Zvcm1hdFRpdGxlKHRpdGxlSW5mb1swXSwgdGl0bGVJbmZvWzFdLCB0aXRsZUluZm9bMl0pO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIGZvcm1hdHRlZFRpdGxlO1xuXHRcdH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcblx0XHRcdExvZy5lcnJvcihcIkVycm9yIHdoaWxlIGZldGNoaW5nIHRoZSB0aXRsZSBmcm9tIHRoZSBoZWFkZXIgaW5mbyA6XCIgKyBlcnJvcik7XG5cdFx0fVxuXHR9XG5cblx0X2dldEFwcFNwZWNpZmljSGFzaCgpIHtcblx0XHQvLyBIYXNoQ2hhbmdlZCBpc1NoZWxsTmF2aWdhdGlvbkhhc2hDaGFuZ2VyXG5cdFx0cmV0dXJuIChIYXNoQ2hhbmdlci5nZXRJbnN0YW5jZSgpIGFzIGFueSkuaHJlZkZvckFwcFNwZWNpZmljSGFzaFxuXHRcdFx0PyAoSGFzaENoYW5nZXIuZ2V0SW5zdGFuY2UoKSBhcyBhbnkpLmhyZWZGb3JBcHBTcGVjaWZpY0hhc2goXCJcIilcblx0XHRcdDogXCJcIjtcblx0fVxuXG5cdF9nZXRIYXNoKCkge1xuXHRcdHJldHVybiBIYXNoQ2hhbmdlci5nZXRJbnN0YW5jZSgpLmdldEhhc2goKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBUaGlzIGZ1bmN0aW9uIHJldHVybnMgdGl0bGVJbmZvcm1hdGlvbiBmcm9tIGEgcGF0aC5cblx0ICogSXQgdXBkYXRlcyB0aGUgY2FjaGUgdG8gc3RvcmUgVGl0bGUgSW5mb3JtYXRpb24gaWYgbmVjZXNzYXJ5XG5cdCAqXG5cdCAqIEBuYW1lIHNhcC5mZS50ZW1wbGF0ZXMuUm9vdENvbnRhaW5lci5jb250cm9sbGVyLkJhc2VDb250cm9sbGVyI2dldFRpdGxlSW5mb0Zyb21QYXRoXG5cdCAqIEBtZW1iZXJvZiBzYXAuZmUudGVtcGxhdGVzLlJvb3RDb250YWluZXIuY29udHJvbGxlci5CYXNlQ29udHJvbGxlclxuXHQgKiBAcGFyYW0geyp9IHNQYXRoIHBhdGggb2YgdGhlIGNvbnRleHQgdG8gcmV0cmlldmUgdGl0bGUgaW5mb3JtYXRpb24gZnJvbSBNZXRhTW9kZWxcblx0ICogQHJldHVybnMge1Byb21pc2V9ICBvVGl0bGVpbmZvcm1hdGlvbiByZXR1cm5lZCBhcyBwcm9taXNlXG5cdCAqL1xuXG5cdGdldFRpdGxlSW5mb0Zyb21QYXRoKHNQYXRoOiBhbnkpIHtcblx0XHRjb25zdCBvVGl0bGVIaWVyYXJjaHlDYWNoZSA9IHRoaXMuX2dldFRpdGxlSGllcmFyY2h5Q2FjaGUoKTtcblxuXHRcdGlmIChvVGl0bGVIaWVyYXJjaHlDYWNoZVtzUGF0aF0pIHtcblx0XHRcdC8vIFRoZSB0aXRsZSBpbmZvIGlzIGFscmVhZHkgc3RvcmVkIGluIHRoZSBjYWNoZVxuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZShvVGl0bGVIaWVyYXJjaHlDYWNoZVtzUGF0aF0pO1xuXHRcdH1cblxuXHRcdGNvbnN0IG9NZXRhTW9kZWwgPSB0aGlzLmdldEFwcENvbXBvbmVudCgpLmdldE1ldGFNb2RlbCgpO1xuXHRcdGNvbnN0IHNFbnRpdHlQYXRoID0gb01ldGFNb2RlbC5nZXRNZXRhUGF0aChzUGF0aCk7XG5cdFx0Y29uc3Qgc1R5cGVOYW1lID0gb01ldGFNb2RlbC5nZXRPYmplY3QoYCR7c0VudGl0eVBhdGh9L0Bjb20uc2FwLnZvY2FidWxhcmllcy5VSS52MS5IZWFkZXJJbmZvL1R5cGVOYW1lYCk7XG5cdFx0Y29uc3Qgc0FwcFNwZWNpZmljSGFzaCA9IHRoaXMuX2dldEFwcFNwZWNpZmljSGFzaCgpO1xuXHRcdGNvbnN0IHNJbnRlbnQgPSBzQXBwU3BlY2lmaWNIYXNoICsgc1BhdGguc2xpY2UoMSk7XG5cdFx0cmV0dXJuIHRoaXMuX2ZldGNoVGl0bGVWYWx1ZShzUGF0aCkudGhlbigoc1RpdGxlOiBhbnkpID0+IHtcblx0XHRcdGNvbnN0IG9UaXRsZUluZm8gPSB0aGlzLl9jb21wdXRlVGl0bGVJbmZvKHNUeXBlTmFtZSwgc1RpdGxlLCBzSW50ZW50KTtcblx0XHRcdG9UaXRsZUhpZXJhcmNoeUNhY2hlW3NQYXRoXSA9IG9UaXRsZUluZm87XG5cdFx0XHRyZXR1cm4gb1RpdGxlSW5mbztcblx0XHR9KTtcblx0fVxuXHQvKipcblx0ICogRW5zdXJlIHRoYXQgdGhlIHVzaGVsbCBzZXJ2aWNlIHJlY2VpdmVzIGFsbCBlbGVtZW50c1xuXHQgKiAodGl0bGUsIHN1YnRpdGxlLCBpbnRlbnQsIGljb24pIGFzIHN0cmluZ3MuXG5cdCAqXG5cdCAqIEFubm90YXRpb24gSGVhZGVySW5mbyBhbGxvd3MgZm9yIGJpbmRpbmcgb2YgdGl0bGUgYW5kIGRlc2NyaXB0aW9uXG5cdCAqICh3aGljaCBhcmUgdXNlZCBoZXJlIGFzIHRpdGxlIGFuZCBzdWJ0aXRsZSkgdG8gYW55IGVsZW1lbnQgaW4gdGhlIGVudGl0eVxuXHQgKiAoYmVpbmcgcG9zc2libHkgdHlwZXMgbGlrZSBib29sZWFuLCB0aW1lc3RhbXAsIGRvdWJsZSwgZXRjLilcblx0ICpcblx0ICogQ3JlYXRlcyBhIG5ldyBoaWVyYXJjaHkgYW5kIGNvbnZlcnRzIG5vbi1zdHJpbmcgdHlwZXMgdG8gc3RyaW5nLlxuXHQgKlxuXHQgKiBAcGFyYW0gYUhpZXJhcmNoeSBTaGVsbCB0aXRsZSBoaWVyYXJjaHlcblx0ICogQHJldHVybnMgQ29weSBvZiBzaGVsbCB0aXRsZSBoaWVyYXJjaHkgY29udGFpbmluZyBhbGwgZWxlbWVudHMgYXMgc3RyaW5nc1xuXHQgKi9cblx0X2Vuc3VyZUhpZXJhcmNoeUVsZW1lbnRzQXJlU3RyaW5ncyhhSGllcmFyY2h5OiBhbnkpIHtcblx0XHRjb25zdCBhSGllcmFyY2h5U2hlbGwgPSBbXTtcblx0XHRmb3IgKGNvbnN0IGxldmVsIGluIGFIaWVyYXJjaHkpIHtcblx0XHRcdGNvbnN0IG9IaWVyYXJjaHkgPSBhSGllcmFyY2h5W2xldmVsXTtcblx0XHRcdGNvbnN0IG9TaGVsbEhpZXJhcmNoeTogYW55ID0ge307XG5cdFx0XHRmb3IgKGNvbnN0IGtleSBpbiBvSGllcmFyY2h5KSB7XG5cdFx0XHRcdG9TaGVsbEhpZXJhcmNoeVtrZXldID0gdHlwZW9mIG9IaWVyYXJjaHlba2V5XSAhPT0gXCJzdHJpbmdcIiA/IFN0cmluZyhvSGllcmFyY2h5W2tleV0pIDogb0hpZXJhcmNoeVtrZXldO1xuXHRcdFx0fVxuXHRcdFx0YUhpZXJhcmNoeVNoZWxsLnB1c2gob1NoZWxsSGllcmFyY2h5KTtcblx0XHR9XG5cdFx0cmV0dXJuIGFIaWVyYXJjaHlTaGVsbDtcblx0fVxuXG5cdF9nZXRUYXJnZXRUeXBlRnJvbUhhc2goc0hhc2g6IGFueSkge1xuXHRcdGNvbnN0IG9BcHBDb21wb25lbnQgPSB0aGlzLmdldEFwcENvbXBvbmVudCgpO1xuXHRcdGxldCBzVGFyZ2V0VHlwZSA9IFwiXCI7XG5cblx0XHRjb25zdCBhUm91dGVzID0gb0FwcENvbXBvbmVudC5nZXRNYW5pZmVzdEVudHJ5KFwiL3NhcC51aTUvcm91dGluZy9yb3V0ZXNcIik7XG5cdFx0Zm9yIChsZXQgaiA9IDA7IGogPCBhUm91dGVzLmxlbmd0aDsgaisrKSB7XG5cdFx0XHRjb25zdCBvUm91dGUgPSBvQXBwQ29tcG9uZW50LmdldFJvdXRlcigpLmdldFJvdXRlKGFSb3V0ZXNbal0ubmFtZSk7XG5cdFx0XHRpZiAob1JvdXRlLm1hdGNoKHNIYXNoKSkge1xuXHRcdFx0XHRjb25zdCBzVGFyZ2V0ID0gQXJyYXkuaXNBcnJheShhUm91dGVzW2pdLnRhcmdldCkgPyBhUm91dGVzW2pdLnRhcmdldFswXSA6IGFSb3V0ZXNbal0udGFyZ2V0O1xuXHRcdFx0XHRzVGFyZ2V0VHlwZSA9IChvQXBwQ29tcG9uZW50LmdldFJvdXRlcigpLmdldFRhcmdldChzVGFyZ2V0KSBhcyBhbnkpLl9vT3B0aW9ucy5uYW1lO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdH1cblx0XHR9XG5cblx0XHRyZXR1cm4gc1RhcmdldFR5cGU7XG5cdH1cblxuXHQvKipcblx0ICogVGhpcyBmdW5jdGlvbiBpcyB1cGRhdGluZyB0aGUgc2hlbGwgdGl0bGUgYWZ0ZXIgZWFjaCBuYXZpZ2F0aW9uLlxuXHQgKlxuXHQgKiBAbWVtYmVyb2Ygc2FwLmZlLnRlbXBsYXRlcy5Sb290Q29udGFpbmVyLmNvbnRyb2xsZXIuQmFzZUNvbnRyb2xsZXJcblx0ICogQHBhcmFtIG9WaWV3IFRoZSBjdXJyZW50IHZpZXdcblx0ICogQHJldHVybnMgQSBQcm9taXNlIHRoYXQgaXMgcmVzb2x2ZWQgd2hlbiB0aGUgbWVudSBpcyBmaWxsZWQgcHJvcGVybHlcblx0ICovXG5cdF9jb21wdXRlVGl0bGVIaWVyYXJjaHkob1ZpZXc6IGFueSkge1xuXHRcdGNvbnN0IG9BcHBDb21wb25lbnQgPSB0aGlzLmdldEFwcENvbXBvbmVudCgpLFxuXHRcdFx0b0NvbnRleHQgPSBvVmlldy5nZXRCaW5kaW5nQ29udGV4dCgpLFxuXHRcdFx0b0N1cnJlbnRQYWdlID0gb1ZpZXcuZ2V0UGFyZW50KCksXG5cdFx0XHRhVGl0bGVJbmZvcm1hdGlvblByb21pc2VzID0gW10sXG5cdFx0XHRzQXBwU3BlY2lmaWNIYXNoID0gdGhpcy5fZ2V0QXBwU3BlY2lmaWNIYXNoKCksXG5cdFx0XHRzQXBwVGl0bGUgPSBvQXBwQ29tcG9uZW50LmdldE1ldGFkYXRhKCkuZ2V0TWFuaWZlc3RFbnRyeShcInNhcC5hcHBcIikudGl0bGUgfHwgXCJcIixcblx0XHRcdHNBcHBTdWJUaXRsZSA9IG9BcHBDb21wb25lbnQuZ2V0TWV0YWRhdGEoKS5nZXRNYW5pZmVzdEVudHJ5KFwic2FwLmFwcFwiKS5hcHBTdWJUaXRsZSB8fCBcIlwiO1xuXHRcdGxldCBvUGFnZVRpdGxlSW5mb3JtYXRpb246IGFueSwgc05ld1BhdGg7XG5cblx0XHRpZiAob0N1cnJlbnRQYWdlICYmIG9DdXJyZW50UGFnZS5fZ2V0UGFnZVRpdGxlSW5mb3JtYXRpb24pIHtcblx0XHRcdGlmIChvQ29udGV4dCkge1xuXHRcdFx0XHQvLyBJZiB0aGUgZmlyc3QgcGFnZSBvZiB0aGUgYXBwbGljYXRpb24gaXMgYSBMUiwgdXNlIHRoZSB0aXRsZSBhbmQgc3VidGl0bGUgZnJvbSB0aGUgbWFuaWZlc3Rcblx0XHRcdFx0aWYgKHRoaXMuX2dldFRhcmdldFR5cGVGcm9tSGFzaChcIlwiKSA9PT0gXCJzYXAuZmUudGVtcGxhdGVzLkxpc3RSZXBvcnRcIikge1xuXHRcdFx0XHRcdGFUaXRsZUluZm9ybWF0aW9uUHJvbWlzZXMucHVzaChQcm9taXNlLnJlc29sdmUodGhpcy5fY29tcHV0ZVRpdGxlSW5mbyhzQXBwVGl0bGUsIHNBcHBTdWJUaXRsZSwgc0FwcFNwZWNpZmljSGFzaCkpKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIFRoZW4gbWFuYWdlIG90aGVyIHBhZ2VzXG5cdFx0XHRcdHNOZXdQYXRoID0gb0NvbnRleHQuZ2V0UGF0aCgpO1xuXHRcdFx0XHRjb25zdCBhUGF0aFBhcnRzID0gc05ld1BhdGguc3BsaXQoXCIvXCIpO1xuXHRcdFx0XHRsZXQgc1BhdGggPSBcIlwiO1xuXG5cdFx0XHRcdGFQYXRoUGFydHMuc2hpZnQoKTsgLy8gUmVtb3ZlIHRoZSBmaXJzdCBzZWdtZW50IChlbXB0eSBzdHJpbmcpIGFzIGl0IGhhcyBiZWVuIG1hbmFnZWQgYWJvdmVcblx0XHRcdFx0YVBhdGhQYXJ0cy5wb3AoKTsgLy8gUmVtb3ZlIHRoZSBsYXN0IHNlZ21lbnQgYXMgaXQgY29ycmVzcG9uZHMgdG8gdGhlIGN1cnJlbnQgcGFnZSBhbmQgc2hvdWxkbid0IGFwcGVhciBpbiB0aGUgbWVudVxuXG5cdFx0XHRcdGFQYXRoUGFydHMuZm9yRWFjaCgoc1BhdGhQYXJ0OiBhbnkpID0+IHtcblx0XHRcdFx0XHRzUGF0aCArPSBgLyR7c1BhdGhQYXJ0fWA7XG5cdFx0XHRcdFx0Y29uc3Qgb01ldGFNb2RlbCA9IG9BcHBDb21wb25lbnQuZ2V0TWV0YU1vZGVsKCksXG5cdFx0XHRcdFx0XHRzUGFyYW1ldGVyUGF0aCA9IG9NZXRhTW9kZWwuZ2V0TWV0YVBhdGgoc1BhdGgpLFxuXHRcdFx0XHRcdFx0YklzUGFyYW1ldGVyaXplZCA9IG9NZXRhTW9kZWwuZ2V0T2JqZWN0KGAke3NQYXJhbWV0ZXJQYXRofS9AY29tLnNhcC52b2NhYnVsYXJpZXMuQ29tbW9uLnYxLlJlc3VsdENvbnRleHRgKTtcblx0XHRcdFx0XHRpZiAoIWJJc1BhcmFtZXRlcml6ZWQpIHtcblx0XHRcdFx0XHRcdGFUaXRsZUluZm9ybWF0aW9uUHJvbWlzZXMucHVzaCh0aGlzLmdldFRpdGxlSW5mb0Zyb21QYXRoKHNQYXRoKSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gQ3VycmVudCBwYWdlXG5cdFx0XHRvUGFnZVRpdGxlSW5mb3JtYXRpb24gPSBvQ3VycmVudFBhZ2UuX2dldFBhZ2VUaXRsZUluZm9ybWF0aW9uKCk7XG5cdFx0XHRvUGFnZVRpdGxlSW5mb3JtYXRpb24gPSB0aGlzLl9jb21wdXRlVGl0bGVJbmZvKFxuXHRcdFx0XHRvUGFnZVRpdGxlSW5mb3JtYXRpb24udGl0bGUsXG5cdFx0XHRcdG9QYWdlVGl0bGVJbmZvcm1hdGlvbi5zdWJ0aXRsZSxcblx0XHRcdFx0c0FwcFNwZWNpZmljSGFzaCArIHRoaXMuX2dldEhhc2goKVxuXHRcdFx0KTtcblxuXHRcdFx0aWYgKG9Db250ZXh0KSB7XG5cdFx0XHRcdHRoaXMuX2dldFRpdGxlSGllcmFyY2h5Q2FjaGUoKVtzTmV3UGF0aF0gPSBvUGFnZVRpdGxlSW5mb3JtYXRpb247XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHR0aGlzLl9nZXRUaXRsZUhpZXJhcmNoeUNhY2hlKClbc0FwcFNwZWNpZmljSGFzaF0gPSBvUGFnZVRpdGxlSW5mb3JtYXRpb247XG5cdFx0XHR9XG5cdFx0fSBlbHNlIHtcblx0XHRcdGFUaXRsZUluZm9ybWF0aW9uUHJvbWlzZXMucHVzaChQcm9taXNlLnJlamVjdChcIlRpdGxlIGluZm9ybWF0aW9uIG1pc3NpbmcgaW4gSGVhZGVySW5mb1wiKSk7XG5cdFx0fVxuXHRcdHJldHVybiBQcm9taXNlLmFsbChhVGl0bGVJbmZvcm1hdGlvblByb21pc2VzKVxuXHRcdFx0LnRoZW4oKGFUaXRsZUluZm9IaWVyYXJjaHk6IGFueVtdKSA9PiB7XG5cdFx0XHRcdC8vIHdvcmthcm91bmQgZm9yIHNoZWxsIHdoaWNoIGlzIGV4cGVjdGluZyBhbGwgZWxlbWVudHMgYmVpbmcgb2YgdHlwZSBzdHJpbmdcblx0XHRcdFx0Y29uc3QgYVRpdGxlSW5mb0hpZXJhcmNoeVNoZWxsID0gdGhpcy5fZW5zdXJlSGllcmFyY2h5RWxlbWVudHNBcmVTdHJpbmdzKGFUaXRsZUluZm9IaWVyYXJjaHkpLFxuXHRcdFx0XHRcdHNUaXRsZSA9IG9QYWdlVGl0bGVJbmZvcm1hdGlvbi50aXRsZTtcblx0XHRcdFx0b0FwcENvbXBvbmVudC5nZXRTaGVsbFNlcnZpY2VzKCkuc2V0SGllcmFyY2h5KGFUaXRsZUluZm9IaWVyYXJjaHlTaGVsbC5yZXZlcnNlKCkpO1xuXHRcdFx0XHRvQXBwQ29tcG9uZW50LmdldFNoZWxsU2VydmljZXMoKS5zZXRUaXRsZShzVGl0bGUpO1xuXHRcdFx0fSlcblx0XHRcdC5jYXRjaChmdW5jdGlvbiAoc0Vycm9yTWVzc2FnZTogYW55KSB7XG5cdFx0XHRcdExvZy5lcnJvcihzRXJyb3JNZXNzYWdlKTtcblx0XHRcdH0pXG5cdFx0XHQuZmluYWxseSgoKSA9PiB7XG5cdFx0XHRcdHRoaXMuYklzQ29tcHV0aW5nVGl0bGVIaWVyYWNoeSA9IGZhbHNlO1xuXHRcdFx0fSlcblx0XHRcdC5jYXRjaChmdW5jdGlvbiAoc0Vycm9yTWVzc2FnZTogYW55KSB7XG5cdFx0XHRcdExvZy5lcnJvcihzRXJyb3JNZXNzYWdlKTtcblx0XHRcdH0pO1xuXHR9XG5cblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuXHRjYWxjdWxhdGVMYXlvdXQoaU5leHRGQ0xMZXZlbDogbnVtYmVyLCBzSGFzaDogc3RyaW5nLCBzUHJvcG9zZWRMYXlvdXQ6IHN0cmluZyB8IHVuZGVmaW5lZCwga2VlcEN1cnJlbnRMYXlvdXQ6IGJvb2xlYW4gfCB1bmRlZmluZWQpIHtcblx0XHRyZXR1cm4gbnVsbDtcblx0fVxuXG5cdC8qKlxuXHQgKiBDYWxsYmFjayBhZnRlciBhIHZpZXcgaGFzIGJlZW4gYm91bmQgdG8gYSBjb250ZXh0LlxuXHQgKlxuXHQgKiBAcGFyYW0gb0NvbnRleHQgVGhlIGNvbnRleHQgdGhhdCBoYXMgYmVlbiBib3VuZCB0byBhIHZpZXdcblx0ICovXG5cdG9uQ29udGV4dEJvdW5kVG9WaWV3KG9Db250ZXh0OiBhbnkpIHtcblx0XHRpZiAob0NvbnRleHQpIHtcblx0XHRcdGNvbnN0IHNEZWVwZXN0UGF0aCA9IHRoaXMuZ2V0VmlldygpLmdldE1vZGVsKFwiaW50ZXJuYWxcIikuZ2V0UHJvcGVydHkoXCIvZGVlcGVzdFBhdGhcIiksXG5cdFx0XHRcdHNWaWV3Q29udGV4dFBhdGggPSBvQ29udGV4dC5nZXRQYXRoKCk7XG5cblx0XHRcdGlmICghc0RlZXBlc3RQYXRoIHx8IHNEZWVwZXN0UGF0aC5pbmRleE9mKHNWaWV3Q29udGV4dFBhdGgpICE9PSAwKSB7XG5cdFx0XHRcdC8vIFRoZXJlIHdhcyBubyBwcmV2aW91cyB2YWx1ZSBmb3IgdGhlIGRlZXBlc3QgcmVhY2hlZCBwYXRoLCBvciB0aGUgcGF0aFxuXHRcdFx0XHQvLyBmb3IgdGhlIHZpZXcgaXNuJ3QgYSBzdWJwYXRoIG9mIHRoZSBwcmV2aW91cyBkZWVwZXN0IHBhdGggLS0+IHVwZGF0ZVxuXHRcdFx0XHQodGhpcy5nZXRWaWV3KCkuZ2V0TW9kZWwoXCJpbnRlcm5hbFwiKSBhcyBKU09OTW9kZWwpLnNldFByb3BlcnR5KFwiL2RlZXBlc3RQYXRoXCIsIHNWaWV3Q29udGV4dFBhdGgsIHVuZGVmaW5lZCwgdHJ1ZSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuXHRkaXNwbGF5TWVzc2FnZVBhZ2Uoc0Vycm9yTWVzc2FnZTogYW55LCBtUGFyYW1ldGVyczogYW55KTogUHJvbWlzZTxib29sZWFuPiB7XG5cdFx0Ly8gVG8gYmUgb3ZlcnJpZGRlblxuXHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUodHJ1ZSk7XG5cdH1cblxuXHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG5cdHVwZGF0ZVVJU3RhdGVGb3JWaWV3KG9WaWV3OiBhbnksIEZDTExldmVsOiBhbnkpIHtcblx0XHQvLyBUbyBiZSBvdmVycmlkZW5cblx0fVxuXHRfc2Nyb2xsVGFibGVzVG9MYXN0TmF2aWdhdGVkSXRlbXMoKTogdm9pZCB7XG5cdFx0Ly8gVG8gYmUgb3ZlcnJpZGVuXG5cdH1cbn1cbmludGVyZmFjZSBSb290Q29udGFpbmVyQmFzZUNvbnRyb2xsZXIge1xuXHRvbkNvbnRhaW5lclJlYWR5PygpOiB2b2lkO1xufVxuXG5leHBvcnQgZGVmYXVsdCBSb290Q29udGFpbmVyQmFzZUNvbnRyb2xsZXI7XG4iXX0=
|
|
575
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJib2R5IiwicmVjb3ZlciIsInJlc3VsdCIsImUiLCJ0aGVuIiwiUm9vdENvbnRhaW5lckJhc2VDb250cm9sbGVyIiwiZGVmaW5lVUk1Q2xhc3MiLCJ1c2luZ0V4dGVuc2lvbiIsIlBsYWNlaG9sZGVyIiwiYklzQ29tcHV0aW5nVGl0bGVIaWVyYWNoeSIsIm9uSW5pdCIsIlRhYmxlU2l6ZUhlbHBlciIsImluaXQiLCJfYUhlbHBlck1vZGVscyIsImdldFBsYWNlaG9sZGVyIiwib1BsYWNlaG9sZGVyIiwiYXR0YWNoUm91dGVNYXRjaGVycyIsImdldEFwcENvbXBvbmVudCIsImdldFJvdXRpbmdTZXJ2aWNlIiwiYXR0YWNoQWZ0ZXJSb3V0ZU1hdGNoZWQiLCJfb25BZnRlclJvdXRlTWF0Y2hlZCIsIm9uRXhpdCIsImRldGFjaEFmdGVyUm91dGVNYXRjaGVkIiwib1JvdXRlciIsInVuZGVmaW5lZCIsImV4aXQiLCJmb3JFYWNoIiwib01vZGVsIiwiZGVzdHJveSIsImdldFJlc291cmNlQnVuZGxlIiwiZ2V0T3duZXJDb21wb25lbnQiLCJnZXRNb2RlbCIsImdldFJvdXRlciIsIl9jcmVhdGVIZWxwZXJNb2RlbCIsIkpTT05Nb2RlbCIsInB1c2giLCJ3YWl0Rm9yUmlnaHRNb3N0Vmlld1JlYWR5Iiwib0V2ZW50IiwiUHJvbWlzZSIsInJlc29sdmUiLCJhQ29udGFpbmVycyIsImdldFBhcmFtZXRlciIsImFGRUNvbnRhaW5lcnMiLCJvQ29udGFpbmVyIiwib1ZpZXciLCJnZXRDb21wb25lbnRJbnN0YW5jZSIsIm9Db21wb25lbnRJbnN0YW5jZSIsImdldFJvb3RDb250cm9sIiwiZ2V0Q29udHJvbGxlciIsInBhZ2VSZWFkeSIsIm9SaWdodE1vc3RGRVZpZXciLCJsZW5ndGgiLCJpc1BhZ2VSZWFkeSIsImF0dGFjaEV2ZW50T25jZSIsIl9vUm91dGVNYXRjaGVkUHJvbWlzZSIsIm9Sb290Q29udHJvbCIsImdldFZpZXciLCJnZXRDb250ZW50IiwiZ2V0QXV0b0ZvY3VzIiwic2V0UHJvcGVydHkiLCJvQXBwQ29tcG9uZW50IiwiX3Njcm9sbFRhYmxlc1RvTGFzdE5hdmlnYXRlZEl0ZW1zIiwiZ2V0RW52aXJvbm1lbnRDYXBhYmlsaXRpZXMiLCJnZXRDYXBhYmlsaXRpZXMiLCJVU2hlbGwiLCJfY29tcHV0ZVRpdGxlSGllcmFyY2h5IiwiYkZvcmNlRm9jdXMiLCJnZXRSb3V0ZXJQcm94eSIsImlzRm9jdXNGb3JjZWQiLCJzZXRGb2N1c0ZvcmNlZCIsIm9uUGFnZVJlYWR5IiwiZ2V0UGFyZW50IiwiZm9yY2VGb2N1cyIsIm9uQ29udGFpbmVyUmVhZHkiLCJjYXRjaCIsIm9FcnJvciIsIkxvZyIsImVycm9yIiwiZmluYWxseSIsIl9nZXRUaXRsZUhpZXJhcmNoeUNhY2hlIiwib1RpdGxlSGllcmFyY2h5Q2FjaGUiLCJfY29tcHV0ZVRpdGxlSW5mbyIsInRpdGxlIiwic3VidGl0bGUiLCJzSW50ZW50IiwiYVBhcnRzIiwic3BsaXQiLCJpbmRleE9mIiwiaW50ZW50IiwiaWNvbiIsIl9mb3JtYXRUaXRsZSIsImRpc3BsYXlNb2RlIiwidGl0bGVWYWx1ZSIsInRpdGxlRGVzY3JpcHRpb24iLCJmb3JtYXR0ZWRUaXRsZSIsIl9mZXRjaFRpdGxlVmFsdWUiLCJzUGF0aCIsIm9NZXRhTW9kZWwiLCJnZXRNZXRhTW9kZWwiLCJzTWV0YVBhdGgiLCJnZXRNZXRhUGF0aCIsIm9CaW5kaW5nVmlld0NvbnRleHQiLCJjcmVhdGVCaW5kaW5nQ29udGV4dCIsInNWYWx1ZUV4cHJlc3Npb24iLCJBbm5vdGF0aW9uSGVscGVyIiwiZm9ybWF0IiwiZ2V0T2JqZWN0IiwiY29udGV4dCIsInNUZXh0RXhwcmVzc2lvbiIsIm9Qcm9wZXJ0eUNvbnRleHQiLCJhUHJvbWlzZXMiLCJvVmFsdWVFeHByZXNzaW9uIiwiQmluZGluZ1BhcnNlciIsImNvbXBsZXhQYXJzZXIiLCJvUHJvbWlzZUZvckRpc3BsYXlNb2RlIiwiQ29tbW9uVXRpbHMiLCJjb21wdXRlRGlzcGxheU1vZGUiLCJzVmFsdWVQYXRoIiwicGFydHMiLCJwYXRoIiwiZm5WYWx1ZUZvcm1hdHRlciIsImZvcm1hdHRlciIsIm9WYWx1ZUJpbmRpbmciLCJiaW5kUHJvcGVydHkiLCJpbml0aWFsaXplIiwib1Byb21pc2VGb3JUaXRsZVZhbHVlIiwiZm5DaGFuZ2UiLCJzVGFyZ2V0VmFsdWUiLCJnZXRTb3VyY2UiLCJnZXRWYWx1ZSIsImRldGFjaENoYW5nZSIsImF0dGFjaENoYW5nZSIsIm9UZXh0RXhwcmVzc2lvbiIsInNUZXh0UGF0aCIsImxhc3RJbmRleE9mIiwic2xpY2UiLCJmblRleHRGb3JtYXR0ZXIiLCJvVGV4dEJpbmRpbmciLCJvUHJvbWlzZUZvclRpdGxlVGV4dCIsInNUYXJnZXRUZXh0IiwiYWxsIiwidGl0bGVJbmZvIiwiX2dldEFwcFNwZWNpZmljSGFzaCIsIkhhc2hDaGFuZ2VyIiwiZ2V0SW5zdGFuY2UiLCJocmVmRm9yQXBwU3BlY2lmaWNIYXNoIiwiX2dldEhhc2giLCJnZXRIYXNoIiwiZ2V0VGl0bGVJbmZvRnJvbVBhdGgiLCJzRW50aXR5UGF0aCIsInNUeXBlTmFtZSIsInNBcHBTcGVjaWZpY0hhc2giLCJzVGl0bGUiLCJvVGl0bGVJbmZvIiwiX2Vuc3VyZUhpZXJhcmNoeUVsZW1lbnRzQXJlU3RyaW5ncyIsImFIaWVyYXJjaHkiLCJhSGllcmFyY2h5U2hlbGwiLCJsZXZlbCIsIm9IaWVyYXJjaHkiLCJvU2hlbGxIaWVyYXJjaHkiLCJrZXkiLCJTdHJpbmciLCJfZ2V0VGFyZ2V0VHlwZUZyb21IYXNoIiwic0hhc2giLCJzVGFyZ2V0VHlwZSIsImFSb3V0ZXMiLCJnZXRNYW5pZmVzdEVudHJ5IiwiaiIsIm9Sb3V0ZSIsImdldFJvdXRlIiwibmFtZSIsIm1hdGNoIiwic1RhcmdldCIsIkFycmF5IiwiaXNBcnJheSIsInRhcmdldCIsImdldFRhcmdldCIsIl9vT3B0aW9ucyIsIm9Db250ZXh0IiwiZ2V0QmluZGluZ0NvbnRleHQiLCJvQ3VycmVudFBhZ2UiLCJhVGl0bGVJbmZvcm1hdGlvblByb21pc2VzIiwic0FwcFRpdGxlIiwiZ2V0TWV0YWRhdGEiLCJzQXBwU3ViVGl0bGUiLCJhcHBTdWJUaXRsZSIsIm9QYWdlVGl0bGVJbmZvcm1hdGlvbiIsInNOZXdQYXRoIiwiX2dldFBhZ2VUaXRsZUluZm9ybWF0aW9uIiwiZ2V0UGF0aCIsImFQYXRoUGFydHMiLCJzaGlmdCIsInBvcCIsInNQYXRoUGFydCIsInNQYXJhbWV0ZXJQYXRoIiwiYklzUGFyYW1ldGVyaXplZCIsInJlamVjdCIsImFUaXRsZUluZm9IaWVyYXJjaHkiLCJhVGl0bGVJbmZvSGllcmFyY2h5U2hlbGwiLCJnZXRTaGVsbFNlcnZpY2VzIiwic2V0SGllcmFyY2h5IiwicmV2ZXJzZSIsInNldFRpdGxlIiwic0Vycm9yTWVzc2FnZSIsImNhbGN1bGF0ZUxheW91dCIsImlOZXh0RkNMTGV2ZWwiLCJzUHJvcG9zZWRMYXlvdXQiLCJrZWVwQ3VycmVudExheW91dCIsIm9uQ29udGV4dEJvdW5kVG9WaWV3Iiwic0RlZXBlc3RQYXRoIiwiZ2V0UHJvcGVydHkiLCJzVmlld0NvbnRleHRQYXRoIiwiZGlzcGxheU1lc3NhZ2VQYWdlIiwibVBhcmFtZXRlcnMiLCJ1cGRhdGVVSVN0YXRlRm9yVmlldyIsIkZDTExldmVsIiwiQmFzZUNvbnRyb2xsZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIlJvb3RDb250YWluZXJCYXNlQ29udHJvbGxlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBCYXNlQ29udHJvbGxlciBmcm9tIFwic2FwL2ZlL2NvcmUvQmFzZUNvbnRyb2xsZXJcIjtcbmltcG9ydCBDb21tb25VdGlscyBmcm9tIFwic2FwL2ZlL2NvcmUvQ29tbW9uVXRpbHNcIjtcbmltcG9ydCBQbGFjZWhvbGRlciBmcm9tIFwic2FwL2ZlL2NvcmUvY29udHJvbGxlcmV4dGVuc2lvbnMvUGxhY2Vob2xkZXJcIjtcbmltcG9ydCB7IGRlZmluZVVJNUNsYXNzLCB1c2luZ0V4dGVuc2lvbiB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IFRhYmxlU2l6ZUhlbHBlciBmcm9tIFwic2FwL2ZlL21hY3Jvcy90YWJsZS9UYWJsZVNpemVIZWxwZXJcIjtcbmltcG9ydCBCaW5kaW5nUGFyc2VyIGZyb20gXCJzYXAvdWkvYmFzZS9CaW5kaW5nUGFyc2VyXCI7XG5pbXBvcnQgSGFzaENoYW5nZXIgZnJvbSBcInNhcC91aS9jb3JlL3JvdXRpbmcvSGFzaENoYW5nZXJcIjtcbmltcG9ydCB0eXBlIFJvdXRlciBmcm9tIFwic2FwL3VpL2NvcmUvcm91dGluZy9Sb3V0ZXJcIjtcbmltcG9ydCB0eXBlIENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9Db250ZXh0XCI7XG5pbXBvcnQgSlNPTk1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvanNvbi9KU09OTW9kZWxcIjtcbmltcG9ydCBBbm5vdGF0aW9uSGVscGVyIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvQW5ub3RhdGlvbkhlbHBlclwiO1xuaW1wb3J0IHR5cGUgUmVzb3VyY2VNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL3Jlc291cmNlL1Jlc291cmNlTW9kZWxcIjtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLnRlbXBsYXRlcy5Sb290Q29udGFpbmVyLmNvbnRyb2xsZXIuUm9vdENvbnRhaW5lckJhc2VDb250cm9sbGVyXCIpXG5jbGFzcyBSb290Q29udGFpbmVyQmFzZUNvbnRyb2xsZXIgZXh0ZW5kcyBCYXNlQ29udHJvbGxlciB7XG5cdEB1c2luZ0V4dGVuc2lvbihQbGFjZWhvbGRlcilcblx0b1BsYWNlaG9sZGVyITogUGxhY2Vob2xkZXI7XG5cdHByaXZhdGUgX2FIZWxwZXJNb2RlbHMhOiBhbnlbXTtcblx0cHJpdmF0ZSBvUm91dGVyPzogUm91dGVyO1xuXHRwcml2YXRlIF9vUm91dGVNYXRjaGVkUHJvbWlzZTogYW55O1xuXHRwcml2YXRlIG9UaXRsZUhpZXJhcmNoeUNhY2hlOiBhbnk7XG5cdHByaXZhdGUgYklzQ29tcHV0aW5nVGl0bGVIaWVyYWNoeTogYm9vbGVhbiA9IGZhbHNlO1xuXG5cdG9uSW5pdCgpIHtcblx0XHRUYWJsZVNpemVIZWxwZXIuaW5pdCgpO1xuXG5cdFx0dGhpcy5fYUhlbHBlck1vZGVscyA9IFtdO1xuXHR9XG5cblx0Z2V0UGxhY2Vob2xkZXIoKSB7XG5cdFx0cmV0dXJuIHRoaXMub1BsYWNlaG9sZGVyO1xuXHR9XG5cdGF0dGFjaFJvdXRlTWF0Y2hlcnMoKSB7XG5cdFx0dGhpcy5vUGxhY2Vob2xkZXIuYXR0YWNoUm91dGVNYXRjaGVycygpO1xuXHRcdHRoaXMuZ2V0QXBwQ29tcG9uZW50KCkuZ2V0Um91dGluZ1NlcnZpY2UoKS5hdHRhY2hBZnRlclJvdXRlTWF0Y2hlZCh0aGlzLl9vbkFmdGVyUm91dGVNYXRjaGVkLCB0aGlzKTtcblx0fVxuXHRvbkV4aXQoKSB7XG5cdFx0dGhpcy5nZXRBcHBDb21wb25lbnQoKS5nZXRSb3V0aW5nU2VydmljZSgpLmRldGFjaEFmdGVyUm91dGVNYXRjaGVkKHRoaXMuX29uQWZ0ZXJSb3V0ZU1hdGNoZWQsIHRoaXMpO1xuXHRcdHRoaXMub1JvdXRlciA9IHVuZGVmaW5lZDtcblxuXHRcdFRhYmxlU2l6ZUhlbHBlci5leGl0KCk7XG5cblx0XHQvLyBEZXN0cm95IGFsbCBKU09OIG1vZGVscyBjcmVhdGVkIGR5bmFtaWNhbGx5IGZvciB0aGUgdmlld3Ncblx0XHR0aGlzLl9hSGVscGVyTW9kZWxzLmZvckVhY2goZnVuY3Rpb24gKG9Nb2RlbDogYW55KSB7XG5cdFx0XHRvTW9kZWwuZGVzdHJveSgpO1xuXHRcdH0pO1xuXHR9XG5cdC8qKlxuXHQgKiBDb252ZW5pZW5jZSBtZXRob2QgZm9yIGdldHRpbmcgdGhlIHJlc291cmNlIGJ1bmRsZS5cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKiBAcmV0dXJucyBUaGUgcmVzb3VyY2VNb2RlbCBvZiB0aGUgY29tcG9uZW50XG5cdCAqL1xuXHRnZXRSZXNvdXJjZUJ1bmRsZSgpIHtcblx0XHRyZXR1cm4gKHRoaXMuZ2V0T3duZXJDb21wb25lbnQoKS5nZXRNb2RlbChcImkxOG5cIikgYXMgUmVzb3VyY2VNb2RlbCkuZ2V0UmVzb3VyY2VCdW5kbGUoKTtcblx0fVxuXHRnZXRSb3V0ZXIoKSB7XG5cdFx0aWYgKCF0aGlzLm9Sb3V0ZXIpIHtcblx0XHRcdHRoaXMub1JvdXRlciA9IHRoaXMuZ2V0QXBwQ29tcG9uZW50KCkuZ2V0Um91dGVyKCk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHRoaXMub1JvdXRlcjtcblx0fVxuXG5cdF9jcmVhdGVIZWxwZXJNb2RlbCgpIHtcblx0XHQvLyBXZSBrZWVwIGEgcmVmZXJlbmNlIG9uIHRoZSBtb2RlbHMgY3JlYXRlZCBkeW5hbWljYWxseSwgYXMgdGhleSBkb24ndCBnZXQgZGVzdHJveWVkXG5cdFx0Ly8gYXV0b21hdGljYWxseSB3aGVuIHRoZSB2aWV3IGlzIGRlc3Ryb3llZC5cblx0XHQvLyBUaGlzIGlzIGRvbmUgZHVyaW5nIG9uRXhpdFxuXHRcdGNvbnN0IG9Nb2RlbCA9IG5ldyBKU09OTW9kZWwoKTtcblx0XHR0aGlzLl9hSGVscGVyTW9kZWxzLnB1c2gob01vZGVsKTtcblxuXHRcdHJldHVybiBvTW9kZWw7XG5cdH1cblxuXHQvKipcblx0ICogRnVuY3Rpb24gd2FpdGluZyBmb3IgdGhlIFJpZ2h0IG1vc3QgdmlldyB0byBiZSByZWFkeS5cblx0ICpcblx0ICogQG1lbWJlcm9mIHNhcC5mZS50ZW1wbGF0ZXMuUm9vdENvbnRhaW5lci5jb250cm9sbGVyLkJhc2VDb250cm9sbGVyXG5cdCAqIEBwYXJhbSBvRXZlbnQgUmVmZXJlbmNlIGFuIEV2ZW50IHBhcmFtZXRlciBjb21pbmcgZnJvbSByb3V0ZU1hdGNoZWQgZXZlbnRcblx0ICogQHJldHVybnMgQSBwcm9taXNlIGluZGljYXRpbmcgd2hlbiB0aGUgcmlnaHQgbW9zdCB2aWV3IGlzIHJlYWR5XG5cdCAqL1xuXHR3YWl0Rm9yUmlnaHRNb3N0Vmlld1JlYWR5KG9FdmVudDogYW55KSB7XG5cdFx0cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xuXHRcdFx0Y29uc3QgYUNvbnRhaW5lcnMgPSBvRXZlbnQuZ2V0UGFyYW1ldGVyKFwidmlld3NcIiksXG5cdFx0XHRcdC8vIFRoZXJlIGNhbiBhbHNvIGJlIHJldXNlIGNvbXBvbmVudHMgaW4gdGhlIHZpZXcsIHJlbW92ZSB0aGVtIGJlZm9yZSBwcm9jZXNzaW5nLlxuXHRcdFx0XHRhRkVDb250YWluZXJzOiBhbnlbXSA9IFtdO1xuXHRcdFx0YUNvbnRhaW5lcnMuZm9yRWFjaChmdW5jdGlvbiAob0NvbnRhaW5lcjogYW55KSB7XG5cdFx0XHRcdGxldCBvVmlldyA9IG9Db250YWluZXI7XG5cdFx0XHRcdGlmIChvQ29udGFpbmVyICYmIG9Db250YWluZXIuZ2V0Q29tcG9uZW50SW5zdGFuY2UpIHtcblx0XHRcdFx0XHRjb25zdCBvQ29tcG9uZW50SW5zdGFuY2UgPSBvQ29udGFpbmVyLmdldENvbXBvbmVudEluc3RhbmNlKCk7XG5cdFx0XHRcdFx0b1ZpZXcgPSBvQ29tcG9uZW50SW5zdGFuY2UuZ2V0Um9vdENvbnRyb2woKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAob1ZpZXcgJiYgb1ZpZXcuZ2V0Q29udHJvbGxlcigpICYmIG9WaWV3LmdldENvbnRyb2xsZXIoKS5wYWdlUmVhZHkpIHtcblx0XHRcdFx0XHRhRkVDb250YWluZXJzLnB1c2gob1ZpZXcpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHRcdGNvbnN0IG9SaWdodE1vc3RGRVZpZXcgPSBhRkVDb250YWluZXJzW2FGRUNvbnRhaW5lcnMubGVuZ3RoIC0gMV07XG5cdFx0XHRpZiAob1JpZ2h0TW9zdEZFVmlldyAmJiBvUmlnaHRNb3N0RkVWaWV3LmdldENvbnRyb2xsZXIoKS5wYWdlUmVhZHkuaXNQYWdlUmVhZHkoKSkge1xuXHRcdFx0XHRyZXNvbHZlKG9SaWdodE1vc3RGRVZpZXcpO1xuXHRcdFx0fSBlbHNlIGlmIChvUmlnaHRNb3N0RkVWaWV3KSB7XG5cdFx0XHRcdG9SaWdodE1vc3RGRVZpZXcuZ2V0Q29udHJvbGxlcigpLnBhZ2VSZWFkeS5hdHRhY2hFdmVudE9uY2UoXCJwYWdlUmVhZHlcIiwgZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdHJlc29sdmUob1JpZ2h0TW9zdEZFVmlldyk7XG5cdFx0XHRcdH0pO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG5cblx0LyoqXG5cdCAqIENhbGxiYWNrIHdoZW4gdGhlIG5hdmlnYXRpb24gaXMgZG9uZS5cblx0ICogIC0gdXBkYXRlIHRoZSBzaGVsbCB0aXRsZS5cblx0ICogIC0gdXBkYXRlIHRhYmxlIHNjcm9sbC5cblx0ICogIC0gY2FsbCBvblBhZ2VSZWFkeSBvbiB0aGUgcmlnaHRNb3N0Vmlldy5cblx0ICpcblx0ICogQHBhcmFtIG9FdmVudFxuXHQgKiBAbmFtZSBzYXAuZmUudGVtcGxhdGVzLlJvb3RDb250YWluZXIuY29udHJvbGxlci5CYXNlQ29udHJvbGxlciNfb25BZnRlclJvdXRlTWF0Y2hlZFxuXHQgKiBAbWVtYmVyb2Ygc2FwLmZlLnRlbXBsYXRlcy5Sb290Q29udGFpbmVyLmNvbnRyb2xsZXIuQmFzZUNvbnRyb2xsZXJcblx0ICovXG5cdF9vbkFmdGVyUm91dGVNYXRjaGVkKG9FdmVudDogYW55KSB7XG5cdFx0aWYgKCF0aGlzLl9vUm91dGVNYXRjaGVkUHJvbWlzZSkge1xuXHRcdFx0dGhpcy5fb1JvdXRlTWF0Y2hlZFByb21pc2UgPSB0aGlzLndhaXRGb3JSaWdodE1vc3RWaWV3UmVhZHkob0V2ZW50KVxuXHRcdFx0XHQudGhlbigob1ZpZXc6IGFueSkgPT4ge1xuXHRcdFx0XHRcdC8vIFRoZSBhdXRvRm9jdXMgaXMgaW5pdGlhbGx5IGRpc2FibGVkIG9uIHRoZSBuYXZDb250YWluZXIgb3IgdGhlIEZDTCwgc28gdGhhdCB0aGUgZm9jdXMgc3RheXMgb24gdGhlIFNoZWxsIG1lbnVcblx0XHRcdFx0XHQvLyBldmVuIGlmIHRoZSBhcHAgdGFrZXMgYSBsb25nIHRpbWUgdG8gbGF1bmNoXG5cdFx0XHRcdFx0Ly8gVGhlIGZpcnN0IHRpbWUgdGhlIHZpZXcgaXMgZGlzcGxheWVkLCB3ZSBuZWVkIHRvIGVuYWJsZSB0aGUgYXV0b2ZvY3VzIHNvIHRoYXQgaXQncyBtYW5hZ2VkIHByb3Blcmx5IGR1cmluZyBuYXZpZ2F0aW9uXG5cdFx0XHRcdFx0Y29uc3Qgb1Jvb3RDb250cm9sID0gdGhpcy5nZXRWaWV3KCkuZ2V0Q29udGVudCgpWzBdIGFzIGFueTtcblx0XHRcdFx0XHRpZiAob1Jvb3RDb250cm9sICYmIG9Sb290Q29udHJvbC5nZXRBdXRvRm9jdXMgJiYgIW9Sb290Q29udHJvbC5nZXRBdXRvRm9jdXMoKSkge1xuXHRcdFx0XHRcdFx0b1Jvb3RDb250cm9sLnNldFByb3BlcnR5KFwiYXV0b0ZvY3VzXCIsIHRydWUsIHRydWUpOyAvLyBEbyBub3QgbWFyayB0aGUgY29udGFpbmVyIGFzIGludmFsaWQsIG90aGVyd2lzZSBpdCdzIHJlLXJlbmRlcmVkXG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Y29uc3Qgb0FwcENvbXBvbmVudCA9IHRoaXMuZ2V0QXBwQ29tcG9uZW50KCk7XG5cdFx0XHRcdFx0dGhpcy5fc2Nyb2xsVGFibGVzVG9MYXN0TmF2aWdhdGVkSXRlbXMoKTtcblx0XHRcdFx0XHRpZiAob0FwcENvbXBvbmVudC5nZXRFbnZpcm9ubWVudENhcGFiaWxpdGllcygpLmdldENhcGFiaWxpdGllcygpLlVTaGVsbCkge1xuXHRcdFx0XHRcdFx0dGhpcy5fY29tcHV0ZVRpdGxlSGllcmFyY2h5KG9WaWV3KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0Y29uc3QgYkZvcmNlRm9jdXMgPSBvQXBwQ29tcG9uZW50LmdldFJvdXRlclByb3h5KCkuaXNGb2N1c0ZvcmNlZCgpO1xuXHRcdFx0XHRcdG9BcHBDb21wb25lbnQuZ2V0Um91dGVyUHJveHkoKS5zZXRGb2N1c0ZvcmNlZChmYWxzZSk7IC8vIHJlc2V0XG5cdFx0XHRcdFx0aWYgKG9WaWV3LmdldENvbnRyb2xsZXIoKSAmJiBvVmlldy5nZXRDb250cm9sbGVyKCkub25QYWdlUmVhZHkgJiYgb1ZpZXcuZ2V0UGFyZW50KCkub25QYWdlUmVhZHkpIHtcblx0XHRcdFx0XHRcdG9WaWV3LmdldFBhcmVudCgpLm9uUGFnZVJlYWR5KHsgZm9yY2VGb2N1czogYkZvcmNlRm9jdXMgfSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGlmICh0aGlzLm9uQ29udGFpbmVyUmVhZHkpIHtcblx0XHRcdFx0XHRcdHRoaXMub25Db250YWluZXJSZWFkeSgpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdFx0LmNhdGNoKGZ1bmN0aW9uIChvRXJyb3I6IGFueSkge1xuXHRcdFx0XHRcdExvZy5lcnJvcihcIkFuIGVycm9yIG9jY3VycyB3aGlsZSBjb21wdXRpbmcgdGhlIHRpdGxlIGhpZXJhcmNoeSBhbmQgY2FsbGluZyBmb2N1cyBtZXRob2RcIiwgb0Vycm9yKTtcblx0XHRcdFx0fSlcblx0XHRcdFx0LmZpbmFsbHkoKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMuX29Sb3V0ZU1hdGNoZWRQcm9taXNlID0gbnVsbDtcblx0XHRcdFx0fSk7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIFRoaXMgZnVuY3Rpb24gcmV0dXJucyB0aGUgVGl0bGVIaWVyYXJjaHkgY2FjaGUgKCBvciBpbml0aWFsaXplcyBpdCBpZiB1bmRlZmluZWQpLlxuXHQgKlxuXHQgKiBAbmFtZSBzYXAuZmUudGVtcGxhdGVzLlJvb3RDb250YWluZXIuY29udHJvbGxlci5CYXNlQ29udHJvbGxlciNfZ2V0VGl0bGVIaWVyYXJjaHlDYWNoZVxuXHQgKiBAbWVtYmVyb2Ygc2FwLmZlLnRlbXBsYXRlcy5Sb290Q29udGFpbmVyLmNvbnRyb2xsZXIuQmFzZUNvbnRyb2xsZXJcblx0ICogQHJldHVybnMgIFRoZSBUaXRsZUhpZXJhcmNoeSBjYWNoZVxuXHQgKi9cblx0X2dldFRpdGxlSGllcmFyY2h5Q2FjaGUoKSB7XG5cdFx0aWYgKCF0aGlzLm9UaXRsZUhpZXJhcmNoeUNhY2hlKSB7XG5cdFx0XHR0aGlzLm9UaXRsZUhpZXJhcmNoeUNhY2hlID0ge307XG5cdFx0fVxuXHRcdHJldHVybiB0aGlzLm9UaXRsZUhpZXJhcmNoeUNhY2hlO1xuXHR9XG5cblx0LyoqXG5cdCAqIFRoaXMgZnVuY3Rpb24gcmV0dXJucyBhIHRpdGxlSW5mbyBvYmplY3QuXG5cdCAqXG5cdCAqIEBtZW1iZXJvZiBzYXAuZmUudGVtcGxhdGVzLlJvb3RDb250YWluZXIuY29udHJvbGxlci5CYXNlQ29udHJvbGxlclxuXHQgKiBAcGFyYW0gdGl0bGVcblx0ICogQHBhcmFtIHN1YnRpdGxlXG5cdCAqIEBwYXJhbSBzSW50ZW50IFRoZSBpbnRlbnQgcGF0aCB0byBiZSByZWRpcmVjdGVkIHRvXG5cdCAqIEByZXR1cm5zIFRoZSB0aXRsZSBpbmZvcm1hdGlvblxuXHQgKi9cblx0X2NvbXB1dGVUaXRsZUluZm8odGl0bGU6IGFueSwgc3VidGl0bGU6IGFueSwgc0ludGVudDogYW55KSB7XG5cdFx0Y29uc3QgYVBhcnRzID0gc0ludGVudC5zcGxpdChcIi9cIik7XG5cdFx0aWYgKGFQYXJ0c1thUGFydHMubGVuZ3RoIC0gMV0uaW5kZXhPZihcIj9cIikgPT09IC0xKSB7XG5cdFx0XHRzSW50ZW50ICs9IFwiP3Jlc3RvcmVIaXN0b3J5PXRydWVcIjtcblx0XHR9IGVsc2Uge1xuXHRcdFx0c0ludGVudCArPSBcIiZyZXN0b3JlSGlzdG9yeT10cnVlXCI7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHR0aXRsZTogdGl0bGUsXG5cdFx0XHRzdWJ0aXRsZTogc3VidGl0bGUsXG5cdFx0XHRpbnRlbnQ6IHNJbnRlbnQsXG5cdFx0XHRpY29uOiBcIlwiXG5cdFx0fTtcblx0fVxuXHRfZm9ybWF0VGl0bGUoZGlzcGxheU1vZGU6IHN0cmluZywgdGl0bGVWYWx1ZTogc3RyaW5nLCB0aXRsZURlc2NyaXB0aW9uOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdGxldCBmb3JtYXR0ZWRUaXRsZSA9IFwiXCI7XG5cdFx0c3dpdGNoIChkaXNwbGF5TW9kZSkge1xuXHRcdFx0Y2FzZSBcIlZhbHVlXCI6XG5cdFx0XHRcdGZvcm1hdHRlZFRpdGxlID0gYCR7dGl0bGVWYWx1ZX1gO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdGNhc2UgXCJWYWx1ZURlc2NyaXB0aW9uXCI6XG5cdFx0XHRcdGZvcm1hdHRlZFRpdGxlID0gYCR7dGl0bGVWYWx1ZX0gKCR7dGl0bGVEZXNjcmlwdGlvbn0pYDtcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHRjYXNlIFwiRGVzY3JpcHRpb25WYWx1ZVwiOlxuXHRcdFx0XHRmb3JtYXR0ZWRUaXRsZSA9IGAke3RpdGxlRGVzY3JpcHRpb259ICgke3RpdGxlVmFsdWV9KWA7XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0Y2FzZSBcIkRlc2NyaXB0aW9uXCI6XG5cdFx0XHRcdGZvcm1hdHRlZFRpdGxlID0gYCR7dGl0bGVEZXNjcmlwdGlvbn1gO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdGRlZmF1bHQ6XG5cdFx0fVxuXHRcdHJldHVybiBmb3JtYXR0ZWRUaXRsZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBGZXRjaGVzIHRoZSB2YWx1ZSBvZiB0aGUgSGVhZGVySW5mbyB0aXRsZSBmb3IgYSBnaXZlbiBwYXRoLlxuXHQgKlxuXHQgKiBAcGFyYW0gc1BhdGggVGhlIHBhdGggdG8gdGhlIGVudGl0eVxuXHQgKiBAcmV0dXJucyBBIHByb21pc2UgY29udGFpbmluZyB0aGUgZm9ybWF0dGVkIHRpdGxlLCBvciBhbiBlbXB0eSBzdHJpbmcgaWYgbm8gSGVhZGVySW5mbyB0aXRsZSBhbm5vdGF0aW9uIGlzIGF2YWlsYWJsZVxuXHQgKi9cblx0YXN5bmMgX2ZldGNoVGl0bGVWYWx1ZShzUGF0aDogc3RyaW5nKSB7XG5cdFx0Y29uc3Qgb0FwcENvbXBvbmVudCA9IHRoaXMuZ2V0QXBwQ29tcG9uZW50KCksXG5cdFx0XHRvTW9kZWwgPSB0aGlzLmdldFZpZXcoKS5nZXRNb2RlbCgpLFxuXHRcdFx0b01ldGFNb2RlbCA9IG9BcHBDb21wb25lbnQuZ2V0TWV0YU1vZGVsKCksXG5cdFx0XHRzTWV0YVBhdGggPSBvTWV0YU1vZGVsLmdldE1ldGFQYXRoKHNQYXRoKSxcblx0XHRcdG9CaW5kaW5nVmlld0NvbnRleHQgPSBvTW9kZWwuY3JlYXRlQmluZGluZ0NvbnRleHQoc1BhdGgpLFxuXHRcdFx0c1ZhbHVlRXhwcmVzc2lvbiA9IEFubm90YXRpb25IZWxwZXIuZm9ybWF0KFxuXHRcdFx0XHRvTWV0YU1vZGVsLmdldE9iamVjdChgJHtzTWV0YVBhdGh9L0Bjb20uc2FwLnZvY2FidWxhcmllcy5VSS52MS5IZWFkZXJJbmZvL1RpdGxlL1ZhbHVlYCksXG5cdFx0XHRcdHsgY29udGV4dDogb01ldGFNb2RlbC5jcmVhdGVCaW5kaW5nQ29udGV4dChcIi9cIikgYXMgQ29udGV4dCB9XG5cdFx0XHQpO1xuXHRcdGlmICghc1ZhbHVlRXhwcmVzc2lvbikge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZShcIlwiKTtcblx0XHR9XG5cdFx0Y29uc3Qgc1RleHRFeHByZXNzaW9uID0gQW5ub3RhdGlvbkhlbHBlci5mb3JtYXQoXG5cdFx0XHRcdG9NZXRhTW9kZWwuZ2V0T2JqZWN0KFxuXHRcdFx0XHRcdGAke3NNZXRhUGF0aH0vQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkhlYWRlckluZm8vVGl0bGUvVmFsdWUvJFBhdGhAY29tLnNhcC52b2NhYnVsYXJpZXMuQ29tbW9uLnYxLlRleHRgXG5cdFx0XHRcdCksXG5cdFx0XHRcdHsgY29udGV4dDogb01ldGFNb2RlbC5jcmVhdGVCaW5kaW5nQ29udGV4dChcIi9cIikgYXMgQ29udGV4dCB9XG5cdFx0XHQpLFxuXHRcdFx0b1Byb3BlcnR5Q29udGV4dCA9IG9NZXRhTW9kZWwuZ2V0T2JqZWN0KGAke3NNZXRhUGF0aH0vQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkhlYWRlckluZm8vVGl0bGUvVmFsdWUvJFBhdGhAYCksXG5cdFx0XHRhUHJvbWlzZXM6IFByb21pc2U8dm9pZD5bXSA9IFtdLFxuXHRcdFx0b1ZhbHVlRXhwcmVzc2lvbiA9IEJpbmRpbmdQYXJzZXIuY29tcGxleFBhcnNlcihzVmFsdWVFeHByZXNzaW9uKSxcblx0XHRcdG9Qcm9taXNlRm9yRGlzcGxheU1vZGUgPSBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZTogKHZhbHVlOiBhbnkpID0+IHZvaWQpIHtcblx0XHRcdFx0Y29uc3QgZGlzcGxheU1vZGUgPSBDb21tb25VdGlscy5jb21wdXRlRGlzcGxheU1vZGUob1Byb3BlcnR5Q29udGV4dCk7XG5cdFx0XHRcdHJlc29sdmUoZGlzcGxheU1vZGUpO1xuXHRcdFx0fSk7XG5cdFx0YVByb21pc2VzLnB1c2gob1Byb21pc2VGb3JEaXNwbGF5TW9kZSk7XG5cdFx0Y29uc3Qgc1ZhbHVlUGF0aCA9IG9WYWx1ZUV4cHJlc3Npb24ucGFydHMgPyBvVmFsdWVFeHByZXNzaW9uLnBhcnRzWzBdLnBhdGggOiBvVmFsdWVFeHByZXNzaW9uLnBhdGgsXG5cdFx0XHRmblZhbHVlRm9ybWF0dGVyID0gb1ZhbHVlRXhwcmVzc2lvbi5mb3JtYXR0ZXIsXG5cdFx0XHRvVmFsdWVCaW5kaW5nID0gb01vZGVsLmJpbmRQcm9wZXJ0eShzVmFsdWVQYXRoLCBvQmluZGluZ1ZpZXdDb250ZXh0KTtcblx0XHRvVmFsdWVCaW5kaW5nLmluaXRpYWxpemUoKTtcblx0XHRjb25zdCBvUHJvbWlzZUZvclRpdGxlVmFsdWUgPSBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZTogKHZhbHVlOiBhbnkpID0+IHZvaWQpIHtcblx0XHRcdGNvbnN0IGZuQ2hhbmdlID0gZnVuY3Rpb24gKG9FdmVudDogYW55KSB7XG5cdFx0XHRcdGNvbnN0IHNUYXJnZXRWYWx1ZSA9IGZuVmFsdWVGb3JtYXR0ZXIgPyBmblZhbHVlRm9ybWF0dGVyKG9FdmVudC5nZXRTb3VyY2UoKS5nZXRWYWx1ZSgpKSA6IG9FdmVudC5nZXRTb3VyY2UoKS5nZXRWYWx1ZSgpO1xuXG5cdFx0XHRcdG9WYWx1ZUJpbmRpbmcuZGV0YWNoQ2hhbmdlKGZuQ2hhbmdlKTtcblx0XHRcdFx0cmVzb2x2ZShzVGFyZ2V0VmFsdWUpO1xuXHRcdFx0fTtcblx0XHRcdG9WYWx1ZUJpbmRpbmcuYXR0YWNoQ2hhbmdlKGZuQ2hhbmdlKTtcblx0XHR9KTtcblx0XHRhUHJvbWlzZXMucHVzaChvUHJvbWlzZUZvclRpdGxlVmFsdWUpO1xuXG5cdFx0aWYgKHNUZXh0RXhwcmVzc2lvbikge1xuXHRcdFx0Y29uc3Qgb1RleHRFeHByZXNzaW9uID0gQmluZGluZ1BhcnNlci5jb21wbGV4UGFyc2VyKHNUZXh0RXhwcmVzc2lvbik7XG5cdFx0XHRsZXQgc1RleHRQYXRoID0gb1RleHRFeHByZXNzaW9uLnBhcnRzID8gb1RleHRFeHByZXNzaW9uLnBhcnRzWzBdLnBhdGggOiBvVGV4dEV4cHJlc3Npb24ucGF0aDtcblx0XHRcdHNUZXh0UGF0aCA9IHNWYWx1ZVBhdGgubGFzdEluZGV4T2YoXCIvXCIpID4gLTEgPyBzVmFsdWVQYXRoLnNsaWNlKDAsIHNWYWx1ZVBhdGgubGFzdEluZGV4T2YoXCIvXCIpKSArIFwiL1wiICsgc1RleHRQYXRoIDogc1RleHRQYXRoO1xuXHRcdFx0Y29uc3QgZm5UZXh0Rm9ybWF0dGVyID0gb1RleHRFeHByZXNzaW9uLmZvcm1hdHRlcixcblx0XHRcdFx0b1RleHRCaW5kaW5nID0gb01vZGVsLmJpbmRQcm9wZXJ0eShzVGV4dFBhdGgsIG9CaW5kaW5nVmlld0NvbnRleHQpO1xuXHRcdFx0b1RleHRCaW5kaW5nLmluaXRpYWxpemUoKTtcblx0XHRcdGNvbnN0IG9Qcm9taXNlRm9yVGl0bGVUZXh0ID0gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmU6IChkZXNjcmlwdGlvbjogYW55KSA9PiB2b2lkKSB7XG5cdFx0XHRcdGNvbnN0IGZuQ2hhbmdlID0gZnVuY3Rpb24gKG9FdmVudDogYW55KSB7XG5cdFx0XHRcdFx0Y29uc3Qgc1RhcmdldFRleHQgPSBmblRleHRGb3JtYXR0ZXIgPyBmblRleHRGb3JtYXR0ZXIob0V2ZW50LmdldFNvdXJjZSgpLmdldFZhbHVlKCkpIDogb0V2ZW50LmdldFNvdXJjZSgpLmdldFZhbHVlKCk7XG5cblx0XHRcdFx0XHRvVGV4dEJpbmRpbmcuZGV0YWNoQ2hhbmdlKGZuQ2hhbmdlKTtcblx0XHRcdFx0XHRyZXNvbHZlKHNUYXJnZXRUZXh0KTtcblx0XHRcdFx0fTtcblxuXHRcdFx0XHRvVGV4dEJpbmRpbmcuYXR0YWNoQ2hhbmdlKGZuQ2hhbmdlKTtcblx0XHRcdH0pO1xuXHRcdFx0YVByb21pc2VzLnB1c2gob1Byb21pc2VGb3JUaXRsZVRleHQpO1xuXHRcdH1cblx0XHR0cnkge1xuXHRcdFx0Y29uc3QgdGl0bGVJbmZvOiBhbnlbXSA9IGF3YWl0IFByb21pc2UuYWxsKGFQcm9taXNlcyk7XG5cdFx0XHRsZXQgZm9ybWF0dGVkVGl0bGUgPSBcIlwiO1xuXHRcdFx0aWYgKHR5cGVvZiB0aXRsZUluZm8gIT09IFwic3RyaW5nXCIpIHtcblx0XHRcdFx0Zm9ybWF0dGVkVGl0bGUgPSB0aGlzLl9mb3JtYXRUaXRsZSh0aXRsZUluZm9bMF0sIHRpdGxlSW5mb1sxXSwgdGl0bGVJbmZvWzJdKTtcblx0XHRcdH1cblx0XHRcdHJldHVybiBmb3JtYXR0ZWRUaXRsZTtcblx0XHR9IGNhdGNoIChlcnJvcjogYW55KSB7XG5cdFx0XHRMb2cuZXJyb3IoXCJFcnJvciB3aGlsZSBmZXRjaGluZyB0aGUgdGl0bGUgZnJvbSB0aGUgaGVhZGVyIGluZm8gOlwiICsgZXJyb3IpO1xuXHRcdH1cblx0fVxuXG5cdF9nZXRBcHBTcGVjaWZpY0hhc2goKSB7XG5cdFx0Ly8gSGFzaENoYW5nZWQgaXNTaGVsbE5hdmlnYXRpb25IYXNoQ2hhbmdlclxuXHRcdHJldHVybiAoSGFzaENoYW5nZXIuZ2V0SW5zdGFuY2UoKSBhcyBhbnkpLmhyZWZGb3JBcHBTcGVjaWZpY0hhc2hcblx0XHRcdD8gKEhhc2hDaGFuZ2VyLmdldEluc3RhbmNlKCkgYXMgYW55KS5ocmVmRm9yQXBwU3BlY2lmaWNIYXNoKFwiXCIpXG5cdFx0XHQ6IFwiXCI7XG5cdH1cblxuXHRfZ2V0SGFzaCgpIHtcblx0XHRyZXR1cm4gSGFzaENoYW5nZXIuZ2V0SW5zdGFuY2UoKS5nZXRIYXNoKCk7XG5cdH1cblxuXHQvKipcblx0ICogVGhpcyBmdW5jdGlvbiByZXR1cm5zIHRpdGxlSW5mb3JtYXRpb24gZnJvbSBhIHBhdGguXG5cdCAqIEl0IHVwZGF0ZXMgdGhlIGNhY2hlIHRvIHN0b3JlIFRpdGxlIEluZm9ybWF0aW9uIGlmIG5lY2Vzc2FyeVxuXHQgKlxuXHQgKiBAbmFtZSBzYXAuZmUudGVtcGxhdGVzLlJvb3RDb250YWluZXIuY29udHJvbGxlci5CYXNlQ29udHJvbGxlciNnZXRUaXRsZUluZm9Gcm9tUGF0aFxuXHQgKiBAbWVtYmVyb2Ygc2FwLmZlLnRlbXBsYXRlcy5Sb290Q29udGFpbmVyLmNvbnRyb2xsZXIuQmFzZUNvbnRyb2xsZXJcblx0ICogQHBhcmFtIHsqfSBzUGF0aCBwYXRoIG9mIHRoZSBjb250ZXh0IHRvIHJldHJpZXZlIHRpdGxlIGluZm9ybWF0aW9uIGZyb20gTWV0YU1vZGVsXG5cdCAqIEByZXR1cm5zIHtQcm9taXNlfSAgb1RpdGxlaW5mb3JtYXRpb24gcmV0dXJuZWQgYXMgcHJvbWlzZVxuXHQgKi9cblxuXHRnZXRUaXRsZUluZm9Gcm9tUGF0aChzUGF0aDogYW55KSB7XG5cdFx0Y29uc3Qgb1RpdGxlSGllcmFyY2h5Q2FjaGUgPSB0aGlzLl9nZXRUaXRsZUhpZXJhcmNoeUNhY2hlKCk7XG5cblx0XHRpZiAob1RpdGxlSGllcmFyY2h5Q2FjaGVbc1BhdGhdKSB7XG5cdFx0XHQvLyBUaGUgdGl0bGUgaW5mbyBpcyBhbHJlYWR5IHN0b3JlZCBpbiB0aGUgY2FjaGVcblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUob1RpdGxlSGllcmFyY2h5Q2FjaGVbc1BhdGhdKTtcblx0XHR9XG5cblx0XHRjb25zdCBvTWV0YU1vZGVsID0gdGhpcy5nZXRBcHBDb21wb25lbnQoKS5nZXRNZXRhTW9kZWwoKTtcblx0XHRjb25zdCBzRW50aXR5UGF0aCA9IG9NZXRhTW9kZWwuZ2V0TWV0YVBhdGgoc1BhdGgpO1xuXHRcdGNvbnN0IHNUeXBlTmFtZSA9IG9NZXRhTW9kZWwuZ2V0T2JqZWN0KGAke3NFbnRpdHlQYXRofS9AY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuSGVhZGVySW5mby9UeXBlTmFtZWApO1xuXHRcdGNvbnN0IHNBcHBTcGVjaWZpY0hhc2ggPSB0aGlzLl9nZXRBcHBTcGVjaWZpY0hhc2goKTtcblx0XHRjb25zdCBzSW50ZW50ID0gc0FwcFNwZWNpZmljSGFzaCArIHNQYXRoLnNsaWNlKDEpO1xuXHRcdHJldHVybiB0aGlzLl9mZXRjaFRpdGxlVmFsdWUoc1BhdGgpLnRoZW4oKHNUaXRsZTogYW55KSA9PiB7XG5cdFx0XHRjb25zdCBvVGl0bGVJbmZvID0gdGhpcy5fY29tcHV0ZVRpdGxlSW5mbyhzVHlwZU5hbWUsIHNUaXRsZSwgc0ludGVudCk7XG5cdFx0XHRvVGl0bGVIaWVyYXJjaHlDYWNoZVtzUGF0aF0gPSBvVGl0bGVJbmZvO1xuXHRcdFx0cmV0dXJuIG9UaXRsZUluZm87XG5cdFx0fSk7XG5cdH1cblx0LyoqXG5cdCAqIEVuc3VyZSB0aGF0IHRoZSB1c2hlbGwgc2VydmljZSByZWNlaXZlcyBhbGwgZWxlbWVudHNcblx0ICogKHRpdGxlLCBzdWJ0aXRsZSwgaW50ZW50LCBpY29uKSBhcyBzdHJpbmdzLlxuXHQgKlxuXHQgKiBBbm5vdGF0aW9uIEhlYWRlckluZm8gYWxsb3dzIGZvciBiaW5kaW5nIG9mIHRpdGxlIGFuZCBkZXNjcmlwdGlvblxuXHQgKiAod2hpY2ggYXJlIHVzZWQgaGVyZSBhcyB0aXRsZSBhbmQgc3VidGl0bGUpIHRvIGFueSBlbGVtZW50IGluIHRoZSBlbnRpdHlcblx0ICogKGJlaW5nIHBvc3NpYmx5IHR5cGVzIGxpa2UgYm9vbGVhbiwgdGltZXN0YW1wLCBkb3VibGUsIGV0Yy4pXG5cdCAqXG5cdCAqIENyZWF0ZXMgYSBuZXcgaGllcmFyY2h5IGFuZCBjb252ZXJ0cyBub24tc3RyaW5nIHR5cGVzIHRvIHN0cmluZy5cblx0ICpcblx0ICogQHBhcmFtIGFIaWVyYXJjaHkgU2hlbGwgdGl0bGUgaGllcmFyY2h5XG5cdCAqIEByZXR1cm5zIENvcHkgb2Ygc2hlbGwgdGl0bGUgaGllcmFyY2h5IGNvbnRhaW5pbmcgYWxsIGVsZW1lbnRzIGFzIHN0cmluZ3Ncblx0ICovXG5cdF9lbnN1cmVIaWVyYXJjaHlFbGVtZW50c0FyZVN0cmluZ3MoYUhpZXJhcmNoeTogYW55KSB7XG5cdFx0Y29uc3QgYUhpZXJhcmNoeVNoZWxsID0gW107XG5cdFx0Zm9yIChjb25zdCBsZXZlbCBpbiBhSGllcmFyY2h5KSB7XG5cdFx0XHRjb25zdCBvSGllcmFyY2h5ID0gYUhpZXJhcmNoeVtsZXZlbF07XG5cdFx0XHRjb25zdCBvU2hlbGxIaWVyYXJjaHk6IGFueSA9IHt9O1xuXHRcdFx0Zm9yIChjb25zdCBrZXkgaW4gb0hpZXJhcmNoeSkge1xuXHRcdFx0XHRvU2hlbGxIaWVyYXJjaHlba2V5XSA9IHR5cGVvZiBvSGllcmFyY2h5W2tleV0gIT09IFwic3RyaW5nXCIgPyBTdHJpbmcob0hpZXJhcmNoeVtrZXldKSA6IG9IaWVyYXJjaHlba2V5XTtcblx0XHRcdH1cblx0XHRcdGFIaWVyYXJjaHlTaGVsbC5wdXNoKG9TaGVsbEhpZXJhcmNoeSk7XG5cdFx0fVxuXHRcdHJldHVybiBhSGllcmFyY2h5U2hlbGw7XG5cdH1cblxuXHRfZ2V0VGFyZ2V0VHlwZUZyb21IYXNoKHNIYXNoOiBhbnkpIHtcblx0XHRjb25zdCBvQXBwQ29tcG9uZW50ID0gdGhpcy5nZXRBcHBDb21wb25lbnQoKTtcblx0XHRsZXQgc1RhcmdldFR5cGUgPSBcIlwiO1xuXG5cdFx0Y29uc3QgYVJvdXRlcyA9IG9BcHBDb21wb25lbnQuZ2V0TWFuaWZlc3RFbnRyeShcIi9zYXAudWk1L3JvdXRpbmcvcm91dGVzXCIpO1xuXHRcdGZvciAobGV0IGogPSAwOyBqIDwgYVJvdXRlcy5sZW5ndGg7IGorKykge1xuXHRcdFx0Y29uc3Qgb1JvdXRlID0gb0FwcENvbXBvbmVudC5nZXRSb3V0ZXIoKS5nZXRSb3V0ZShhUm91dGVzW2pdLm5hbWUpO1xuXHRcdFx0aWYgKG9Sb3V0ZS5tYXRjaChzSGFzaCkpIHtcblx0XHRcdFx0Y29uc3Qgc1RhcmdldCA9IEFycmF5LmlzQXJyYXkoYVJvdXRlc1tqXS50YXJnZXQpID8gYVJvdXRlc1tqXS50YXJnZXRbMF0gOiBhUm91dGVzW2pdLnRhcmdldDtcblx0XHRcdFx0c1RhcmdldFR5cGUgPSAob0FwcENvbXBvbmVudC5nZXRSb3V0ZXIoKS5nZXRUYXJnZXQoc1RhcmdldCkgYXMgYW55KS5fb09wdGlvbnMubmFtZTtcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHNUYXJnZXRUeXBlO1xuXHR9XG5cblx0LyoqXG5cdCAqIFRoaXMgZnVuY3Rpb24gaXMgdXBkYXRpbmcgdGhlIHNoZWxsIHRpdGxlIGFmdGVyIGVhY2ggbmF2aWdhdGlvbi5cblx0ICpcblx0ICogQG1lbWJlcm9mIHNhcC5mZS50ZW1wbGF0ZXMuUm9vdENvbnRhaW5lci5jb250cm9sbGVyLkJhc2VDb250cm9sbGVyXG5cdCAqIEBwYXJhbSBvVmlldyBUaGUgY3VycmVudCB2aWV3XG5cdCAqIEByZXR1cm5zIEEgUHJvbWlzZSB0aGF0IGlzIHJlc29sdmVkIHdoZW4gdGhlIG1lbnUgaXMgZmlsbGVkIHByb3Blcmx5XG5cdCAqL1xuXHRfY29tcHV0ZVRpdGxlSGllcmFyY2h5KG9WaWV3OiBhbnkpIHtcblx0XHRjb25zdCBvQXBwQ29tcG9uZW50ID0gdGhpcy5nZXRBcHBDb21wb25lbnQoKSxcblx0XHRcdG9Db250ZXh0ID0gb1ZpZXcuZ2V0QmluZGluZ0NvbnRleHQoKSxcblx0XHRcdG9DdXJyZW50UGFnZSA9IG9WaWV3LmdldFBhcmVudCgpLFxuXHRcdFx0YVRpdGxlSW5mb3JtYXRpb25Qcm9taXNlcyA9IFtdLFxuXHRcdFx0c0FwcFNwZWNpZmljSGFzaCA9IHRoaXMuX2dldEFwcFNwZWNpZmljSGFzaCgpLFxuXHRcdFx0c0FwcFRpdGxlID0gb0FwcENvbXBvbmVudC5nZXRNZXRhZGF0YSgpLmdldE1hbmlmZXN0RW50cnkoXCJzYXAuYXBwXCIpLnRpdGxlIHx8IFwiXCIsXG5cdFx0XHRzQXBwU3ViVGl0bGUgPSBvQXBwQ29tcG9uZW50LmdldE1ldGFkYXRhKCkuZ2V0TWFuaWZlc3RFbnRyeShcInNhcC5hcHBcIikuYXBwU3ViVGl0bGUgfHwgXCJcIjtcblx0XHRsZXQgb1BhZ2VUaXRsZUluZm9ybWF0aW9uOiBhbnksIHNOZXdQYXRoO1xuXG5cdFx0aWYgKG9DdXJyZW50UGFnZSAmJiBvQ3VycmVudFBhZ2UuX2dldFBhZ2VUaXRsZUluZm9ybWF0aW9uKSB7XG5cdFx0XHRpZiAob0NvbnRleHQpIHtcblx0XHRcdFx0Ly8gSWYgdGhlIGZpcnN0IHBhZ2Ugb2YgdGhlIGFwcGxpY2F0aW9uIGlzIGEgTFIsIHVzZSB0aGUgdGl0bGUgYW5kIHN1YnRpdGxlIGZyb20gdGhlIG1hbmlmZXN0XG5cdFx0XHRcdGlmICh0aGlzLl9nZXRUYXJnZXRUeXBlRnJvbUhhc2goXCJcIikgPT09IFwic2FwLmZlLnRlbXBsYXRlcy5MaXN0UmVwb3J0XCIpIHtcblx0XHRcdFx0XHRhVGl0bGVJbmZvcm1hdGlvblByb21pc2VzLnB1c2goUHJvbWlzZS5yZXNvbHZlKHRoaXMuX2NvbXB1dGVUaXRsZUluZm8oc0FwcFRpdGxlLCBzQXBwU3ViVGl0bGUsIHNBcHBTcGVjaWZpY0hhc2gpKSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBUaGVuIG1hbmFnZSBvdGhlciBwYWdlc1xuXHRcdFx0XHRzTmV3UGF0aCA9IG9Db250ZXh0LmdldFBhdGgoKTtcblx0XHRcdFx0Y29uc3QgYVBhdGhQYXJ0cyA9IHNOZXdQYXRoLnNwbGl0KFwiL1wiKTtcblx0XHRcdFx0bGV0IHNQYXRoID0gXCJcIjtcblxuXHRcdFx0XHRhUGF0aFBhcnRzLnNoaWZ0KCk7IC8vIFJlbW92ZSB0aGUgZmlyc3Qgc2VnbWVudCAoZW1wdHkgc3RyaW5nKSBhcyBpdCBoYXMgYmVlbiBtYW5hZ2VkIGFib3ZlXG5cdFx0XHRcdGFQYXRoUGFydHMucG9wKCk7IC8vIFJlbW92ZSB0aGUgbGFzdCBzZWdtZW50IGFzIGl0IGNvcnJlc3BvbmRzIHRvIHRoZSBjdXJyZW50IHBhZ2UgYW5kIHNob3VsZG4ndCBhcHBlYXIgaW4gdGhlIG1lbnVcblxuXHRcdFx0XHRhUGF0aFBhcnRzLmZvckVhY2goKHNQYXRoUGFydDogYW55KSA9PiB7XG5cdFx0XHRcdFx0c1BhdGggKz0gYC8ke3NQYXRoUGFydH1gO1xuXHRcdFx0XHRcdGNvbnN0IG9NZXRhTW9kZWwgPSBvQXBwQ29tcG9uZW50LmdldE1ldGFNb2RlbCgpLFxuXHRcdFx0XHRcdFx0c1BhcmFtZXRlclBhdGggPSBvTWV0YU1vZGVsLmdldE1ldGFQYXRoKHNQYXRoKSxcblx0XHRcdFx0XHRcdGJJc1BhcmFtZXRlcml6ZWQgPSBvTWV0YU1vZGVsLmdldE9iamVjdChgJHtzUGFyYW1ldGVyUGF0aH0vQGNvbS5zYXAudm9jYWJ1bGFyaWVzLkNvbW1vbi52MS5SZXN1bHRDb250ZXh0YCk7XG5cdFx0XHRcdFx0aWYgKCFiSXNQYXJhbWV0ZXJpemVkKSB7XG5cdFx0XHRcdFx0XHRhVGl0bGVJbmZvcm1hdGlvblByb21pc2VzLnB1c2godGhpcy5nZXRUaXRsZUluZm9Gcm9tUGF0aChzUGF0aCkpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSk7XG5cdFx0XHR9XG5cblx0XHRcdC8vIEN1cnJlbnQgcGFnZVxuXHRcdFx0b1BhZ2VUaXRsZUluZm9ybWF0aW9uID0gb0N1cnJlbnRQYWdlLl9nZXRQYWdlVGl0bGVJbmZvcm1hdGlvbigpO1xuXHRcdFx0b1BhZ2VUaXRsZUluZm9ybWF0aW9uID0gdGhpcy5fY29tcHV0ZVRpdGxlSW5mbyhcblx0XHRcdFx0b1BhZ2VUaXRsZUluZm9ybWF0aW9uLnRpdGxlLFxuXHRcdFx0XHRvUGFnZVRpdGxlSW5mb3JtYXRpb24uc3VidGl0bGUsXG5cdFx0XHRcdHNBcHBTcGVjaWZpY0hhc2ggKyB0aGlzLl9nZXRIYXNoKClcblx0XHRcdCk7XG5cblx0XHRcdGlmIChvQ29udGV4dCkge1xuXHRcdFx0XHR0aGlzLl9nZXRUaXRsZUhpZXJhcmNoeUNhY2hlKClbc05ld1BhdGhdID0gb1BhZ2VUaXRsZUluZm9ybWF0aW9uO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0dGhpcy5fZ2V0VGl0bGVIaWVyYXJjaHlDYWNoZSgpW3NBcHBTcGVjaWZpY0hhc2hdID0gb1BhZ2VUaXRsZUluZm9ybWF0aW9uO1xuXHRcdFx0fVxuXHRcdH0gZWxzZSB7XG5cdFx0XHRhVGl0bGVJbmZvcm1hdGlvblByb21pc2VzLnB1c2goUHJvbWlzZS5yZWplY3QoXCJUaXRsZSBpbmZvcm1hdGlvbiBtaXNzaW5nIGluIEhlYWRlckluZm9cIikpO1xuXHRcdH1cblx0XHRyZXR1cm4gUHJvbWlzZS5hbGwoYVRpdGxlSW5mb3JtYXRpb25Qcm9taXNlcylcblx0XHRcdC50aGVuKChhVGl0bGVJbmZvSGllcmFyY2h5OiBhbnlbXSkgPT4ge1xuXHRcdFx0XHQvLyB3b3JrYXJvdW5kIGZvciBzaGVsbCB3aGljaCBpcyBleHBlY3RpbmcgYWxsIGVsZW1lbnRzIGJlaW5nIG9mIHR5cGUgc3RyaW5nXG5cdFx0XHRcdGNvbnN0IGFUaXRsZUluZm9IaWVyYXJjaHlTaGVsbCA9IHRoaXMuX2Vuc3VyZUhpZXJhcmNoeUVsZW1lbnRzQXJlU3RyaW5ncyhhVGl0bGVJbmZvSGllcmFyY2h5KSxcblx0XHRcdFx0XHRzVGl0bGUgPSBvUGFnZVRpdGxlSW5mb3JtYXRpb24udGl0bGU7XG5cdFx0XHRcdG9BcHBDb21wb25lbnQuZ2V0U2hlbGxTZXJ2aWNlcygpLnNldEhpZXJhcmNoeShhVGl0bGVJbmZvSGllcmFyY2h5U2hlbGwucmV2ZXJzZSgpKTtcblx0XHRcdFx0b0FwcENvbXBvbmVudC5nZXRTaGVsbFNlcnZpY2VzKCkuc2V0VGl0bGUoc1RpdGxlKTtcblx0XHRcdH0pXG5cdFx0XHQuY2F0Y2goZnVuY3Rpb24gKHNFcnJvck1lc3NhZ2U6IGFueSkge1xuXHRcdFx0XHRMb2cuZXJyb3Ioc0Vycm9yTWVzc2FnZSk7XG5cdFx0XHR9KVxuXHRcdFx0LmZpbmFsbHkoKCkgPT4ge1xuXHRcdFx0XHR0aGlzLmJJc0NvbXB1dGluZ1RpdGxlSGllcmFjaHkgPSBmYWxzZTtcblx0XHRcdH0pXG5cdFx0XHQuY2F0Y2goZnVuY3Rpb24gKHNFcnJvck1lc3NhZ2U6IGFueSkge1xuXHRcdFx0XHRMb2cuZXJyb3Ioc0Vycm9yTWVzc2FnZSk7XG5cdFx0XHR9KTtcblx0fVxuXG5cdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcblx0Y2FsY3VsYXRlTGF5b3V0KGlOZXh0RkNMTGV2ZWw6IG51bWJlciwgc0hhc2g6IHN0cmluZywgc1Byb3Bvc2VkTGF5b3V0OiBzdHJpbmcgfCB1bmRlZmluZWQsIGtlZXBDdXJyZW50TGF5b3V0OiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG5cdFx0cmV0dXJuIG51bGw7XG5cdH1cblxuXHQvKipcblx0ICogQ2FsbGJhY2sgYWZ0ZXIgYSB2aWV3IGhhcyBiZWVuIGJvdW5kIHRvIGEgY29udGV4dC5cblx0ICpcblx0ICogQHBhcmFtIG9Db250ZXh0IFRoZSBjb250ZXh0IHRoYXQgaGFzIGJlZW4gYm91bmQgdG8gYSB2aWV3XG5cdCAqL1xuXHRvbkNvbnRleHRCb3VuZFRvVmlldyhvQ29udGV4dDogYW55KSB7XG5cdFx0aWYgKG9Db250ZXh0KSB7XG5cdFx0XHRjb25zdCBzRGVlcGVzdFBhdGggPSB0aGlzLmdldFZpZXcoKS5nZXRNb2RlbChcImludGVybmFsXCIpLmdldFByb3BlcnR5KFwiL2RlZXBlc3RQYXRoXCIpLFxuXHRcdFx0XHRzVmlld0NvbnRleHRQYXRoID0gb0NvbnRleHQuZ2V0UGF0aCgpO1xuXG5cdFx0XHRpZiAoIXNEZWVwZXN0UGF0aCB8fCBzRGVlcGVzdFBhdGguaW5kZXhPZihzVmlld0NvbnRleHRQYXRoKSAhPT0gMCkge1xuXHRcdFx0XHQvLyBUaGVyZSB3YXMgbm8gcHJldmlvdXMgdmFsdWUgZm9yIHRoZSBkZWVwZXN0IHJlYWNoZWQgcGF0aCwgb3IgdGhlIHBhdGhcblx0XHRcdFx0Ly8gZm9yIHRoZSB2aWV3IGlzbid0IGEgc3VicGF0aCBvZiB0aGUgcHJldmlvdXMgZGVlcGVzdCBwYXRoIC0tPiB1cGRhdGVcblx0XHRcdFx0KHRoaXMuZ2V0VmlldygpLmdldE1vZGVsKFwiaW50ZXJuYWxcIikgYXMgSlNPTk1vZGVsKS5zZXRQcm9wZXJ0eShcIi9kZWVwZXN0UGF0aFwiLCBzVmlld0NvbnRleHRQYXRoLCB1bmRlZmluZWQsIHRydWUpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcblx0ZGlzcGxheU1lc3NhZ2VQYWdlKHNFcnJvck1lc3NhZ2U6IGFueSwgbVBhcmFtZXRlcnM6IGFueSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuXHRcdC8vIFRvIGJlIG92ZXJyaWRkZW5cblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRydWUpO1xuXHR9XG5cblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuXHR1cGRhdGVVSVN0YXRlRm9yVmlldyhvVmlldzogYW55LCBGQ0xMZXZlbDogYW55KSB7XG5cdFx0Ly8gVG8gYmUgb3ZlcnJpZGVuXG5cdH1cblx0X3Njcm9sbFRhYmxlc1RvTGFzdE5hdmlnYXRlZEl0ZW1zKCk6IHZvaWQge1xuXHRcdC8vIFRvIGJlIG92ZXJyaWRlblxuXHR9XG59XG5pbnRlcmZhY2UgUm9vdENvbnRhaW5lckJhc2VDb250cm9sbGVyIHtcblx0b25Db250YWluZXJSZWFkeT8oKTogdm9pZDtcbn1cblxuZXhwb3J0IGRlZmF1bHQgUm9vdENvbnRhaW5lckJhc2VDb250cm9sbGVyO1xuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7Ozs7RUFrakJPLGdCQUFnQkEsSUFBaEIsRUFBc0JDLE9BQXRCLEVBQStC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
|
|
@@ -3,7 +3,7 @@ import BaseController from "sap/fe/core/BaseController";
|
|
|
3
3
|
import CommonUtils from "sap/fe/core/CommonUtils";
|
|
4
4
|
import Placeholder from "sap/fe/core/controllerextensions/Placeholder";
|
|
5
5
|
import { defineUI5Class, usingExtension } from "sap/fe/core/helpers/ClassSupport";
|
|
6
|
-
import
|
|
6
|
+
import TableSizeHelper from "sap/fe/macros/table/TableSizeHelper";
|
|
7
7
|
import BindingParser from "sap/ui/base/BindingParser";
|
|
8
8
|
import HashChanger from "sap/ui/core/routing/HashChanger";
|
|
9
9
|
import type Router from "sap/ui/core/routing/Router";
|
|
@@ -23,7 +23,7 @@ class RootContainerBaseController extends BaseController {
|
|
|
23
23
|
private bIsComputingTitleHierachy: boolean = false;
|
|
24
24
|
|
|
25
25
|
onInit() {
|
|
26
|
-
|
|
26
|
+
TableSizeHelper.init();
|
|
27
27
|
|
|
28
28
|
this._aHelperModels = [];
|
|
29
29
|
}
|
|
@@ -39,7 +39,7 @@ class RootContainerBaseController extends BaseController {
|
|
|
39
39
|
this.getAppComponent().getRoutingService().detachAfterRouteMatched(this._onAfterRouteMatched, this);
|
|
40
40
|
this.oRouter = undefined;
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
TableSizeHelper.exit();
|
|
43
43
|
|
|
44
44
|
// Destroy all JSON models created dynamically for the views
|
|
45
45
|
this._aHelperModels.forEach(function (oModel: any) {
|
|
@@ -17,4 +17,4 @@ sap.ui.define([], function () {
|
|
|
17
17
|
};
|
|
18
18
|
return EditFLowExtensionOverride;
|
|
19
19
|
}, false);
|
|
20
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJFZGl0Rkxvd0V4dGVuc2lvbk92ZXJyaWRlIiwic2V0Q3JlYXRpb25Nb2RlIiwiYkNyZWF0aW9uTW9kZSIsIm9VSU1vZGVsQ29udGV4dCIsImJhc2UiLCJnZXRWaWV3IiwiZ2V0QmluZGluZ0NvbnRleHQiLCJnZXRNb2RlbCIsInNldFByb3BlcnR5IiwiZ2V0UHJvZ3JhbW1pbmdNb2RlbCIsImdldFRyYW5zYWN0aW9uSGVscGVyIiwiX2JDcmVhdGVNb2RlIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJFZGl0Rmxvdy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSBJbnRlcm5hbEVkaXRGbG93IGZyb20gXCJzYXAvZmUvY29yZS9jb250cm9sbGVyZXh0ZW5zaW9ucy9JbnRlcm5hbEVkaXRGbG93XCI7XG5pbXBvcnQgdHlwZSBDb250ZXh0IGZyb20gXCJzYXAvdWkvbW9kZWwvQ29udGV4dFwiO1xuaW1wb3J0IHR5cGUgSlNPTk1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvanNvbi9KU09OTW9kZWxcIjtcblxuY29uc3QgRWRpdEZMb3dFeHRlbnNpb25PdmVycmlkZSA9IHtcblx0c2V0Q3JlYXRpb25Nb2RlOiBmdW5jdGlvbiAodGhpczogSW50ZXJuYWxFZGl0RmxvdywgYkNyZWF0aW9uTW9kZTogYW55KSB7XG5cdFx0Y29uc3Qgb1VJTW9kZWxDb250ZXh0ID0gdGhpcy5iYXNlLmdldFZpZXcoKS5nZXRCaW5kaW5nQ29udGV4dChcInVpXCIpIGFzIENvbnRleHQ7XG5cdFx0KG9VSU1vZGVsQ29udGV4dC5nZXRNb2RlbCgpIGFzIEpTT05Nb2RlbCkuc2V0UHJvcGVydHkoXCJjcmVhdGVNb2RlXCIsIGJDcmVhdGlvbk1vZGUsIG9VSU1vZGVsQ29udGV4dCwgdHJ1ZSk7XG5cdFx0aWYgKHRoaXMuZ2V0UHJvZ3JhbW1pbmdNb2RlbCgpID09PSBcIlN0aWNreVwiKSB7XG5cdFx0XHQob1VJTW9kZWxDb250ZXh0LmdldE1vZGVsKCkgYXMgSlNPTk1vZGVsKS5zZXRQcm9wZXJ0eShcblx0XHRcdFx0XCJjcmVhdGVNb2RlU3RpY2t5XCIsXG5cdFx0XHRcdHRoaXMuZ2V0VHJhbnNhY3Rpb25IZWxwZXIoKS5fYkNyZWF0ZU1vZGUsXG5cdFx0XHRcdG9VSU1vZGVsQ29udGV4dCxcblx0XHRcdFx0dHJ1ZVxuXHRcdFx0KTtcblx0XHR9XG5cdH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IEVkaXRGTG93RXh0ZW5zaW9uT3ZlcnJpZGU7XG4iXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7Ozs7RUFJQSxJQUFNQSx5QkFBeUIsR0FBRztJQUNqQ0MsZUFBZSxFQUFFLFVBQWtDQyxhQUFsQyxFQUFzRDtNQUN0RSxJQUFNQyxlQUFlLEdBQUcsS0FBS0MsSUFBTCxDQUFVQyxPQUFWLEdBQW9CQyxpQkFBcEIsQ0FBc0MsSUFBdEMsQ0FBeEI7TUFDQ0gsZUFBZSxDQUFDSSxRQUFoQixFQUFELENBQTBDQyxXQUExQyxDQUFzRCxZQUF0RCxFQUFvRU4sYUFBcEUsRUFBbUZDLGVBQW5GLEVBQW9HLElBQXBHOztNQUNBLElBQUksS0FBS00sbUJBQUwsT0FBK0IsUUFBbkMsRUFBNkM7UUFDM0NOLGVBQWUsQ0FBQ0ksUUFBaEIsRUFBRCxDQUEwQ0MsV0FBMUMsQ0FDQyxrQkFERCxFQUVDLEtBQUtFLG9CQUFMLEdBQTRCQyxZQUY3QixFQUdDUixlQUhELEVBSUMsSUFKRDtNQU1BO0lBQ0Q7RUFaZ0MsQ0FBbEM7U0FlZUgseUIifQ==
|
|
@@ -51,4 +51,4 @@ sap.ui.define([], function () {
|
|
|
51
51
|
};
|
|
52
52
|
return TableScroller;
|
|
53
53
|
}, false);
|
|
54
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUYWJsZVNjcm9sbGVyIiwic2Nyb2xsVGFibGVUb1JvdyIsIm9UYWJsZSIsInNSb3dQYXRoIiwib1RhYmxlUm93QmluZGluZyIsImdldFJvd0JpbmRpbmciLCJnZXRUYWJsZUNvbnRleHRzIiwiZGF0YSIsInRhYmxlVHlwZSIsImdldENvbnRleHRzIiwiZ2V0Q3VycmVudENvbnRleHRzIiwiZmluZEFuZFNjcm9sbCIsIm9UYWJsZVJvdyIsImZpbmQiLCJpdGVtIiwiZ2V0UGF0aCIsInNjcm9sbFRvSW5kZXgiLCJnZXRJbmRleCIsIm9UYWJsZVJvd0JpbmRpbmdDb250ZXh0cyIsImxlbmd0aCIsImdldExlbmd0aCIsInNvbWUiLCJjb250ZXh0IiwidW5kZWZpbmVkIiwiYXR0YWNoRXZlbnRPbmNlIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJUYWJsZVNjcm9sbGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IFRhYmxlU2Nyb2xsZXIgPSB7XG5cdC8qKlxuXHQgKiBTY3JvbGxzIGFuIE1EQyB0YWJsZSB0byBhIGdpdmVuIHJvdywgaWRlbnRpZmllZCBieSBpdHMgY29udGV4dCBwYXRoLlxuXHQgKiBJZiB0aGUgcm93IHdpdGggdGhlIHBhdGggY2FuJ3QgYmUgZm91bmQsIHRoZSB0YWJsZSBzdGF5cyB1bmNoYW5nZWQuXG5cdCAqXG5cdCAqIEBwYXJhbSBvVGFibGUgVGhlIHRhYmxlIHRvIGJlIHNjcm9sbGVkXG5cdCAqIEBwYXJhbSBzUm93UGF0aCBUaGUgcGF0aCBpZGVudGlmeWluZyB0aGUgcm93IHRvIHNjcm9sbCB0b1xuXHQgKi9cblx0c2Nyb2xsVGFibGVUb1JvdzogZnVuY3Rpb24gKG9UYWJsZTogYW55LCBzUm93UGF0aDogc3RyaW5nKSB7XG5cdFx0Y29uc3Qgb1RhYmxlUm93QmluZGluZyA9IG9UYWJsZS5nZXRSb3dCaW5kaW5nKCk7XG5cblx0XHRjb25zdCBnZXRUYWJsZUNvbnRleHRzID0gZnVuY3Rpb24gKCkge1xuXHRcdFx0aWYgKG9UYWJsZS5kYXRhKCkudGFibGVUeXBlID09PSBcIkdyaWRUYWJsZVwiKSB7XG5cdFx0XHRcdHJldHVybiBvVGFibGVSb3dCaW5kaW5nLmdldENvbnRleHRzKDApO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0cmV0dXJuIG9UYWJsZVJvd0JpbmRpbmcuZ2V0Q3VycmVudENvbnRleHRzKCk7XG5cdFx0XHR9XG5cdFx0fTtcblxuXHRcdGNvbnN0IGZpbmRBbmRTY3JvbGwgPSBmdW5jdGlvbiAoKSB7XG5cdFx0XHRjb25zdCBvVGFibGVSb3cgPSBnZXRUYWJsZUNvbnRleHRzKCkuZmluZChmdW5jdGlvbiAoaXRlbTogYW55KSB7XG5cdFx0XHRcdHJldHVybiBpdGVtICYmIGl0ZW0uZ2V0UGF0aCgpID09PSBzUm93UGF0aDtcblx0XHRcdH0pO1xuXHRcdFx0aWYgKG9UYWJsZVJvdykge1xuXHRcdFx0XHRvVGFibGUuc2Nyb2xsVG9JbmRleChvVGFibGVSb3cuZ2V0SW5kZXgoKSk7XG5cdFx0XHR9XG5cdFx0fTtcblxuXHRcdGlmIChvVGFibGVSb3dCaW5kaW5nKSB7XG5cdFx0XHRjb25zdCBvVGFibGVSb3dCaW5kaW5nQ29udGV4dHMgPSBnZXRUYWJsZUNvbnRleHRzKCk7XG5cblx0XHRcdGlmIChcblx0XHRcdFx0KG9UYWJsZVJvd0JpbmRpbmdDb250ZXh0cy5sZW5ndGggPT09IDAgJiYgb1RhYmxlUm93QmluZGluZy5nZXRMZW5ndGgoKSA+IDApIHx8XG5cdFx0XHRcdG9UYWJsZVJvd0JpbmRpbmdDb250ZXh0cy5zb21lKGZ1bmN0aW9uIChjb250ZXh0OiBhbnkpIHtcblx0XHRcdFx0XHRyZXR1cm4gY29udGV4dCA9PT0gdW5kZWZpbmVkO1xuXHRcdFx0XHR9KVxuXHRcdFx0KSB7XG5cdFx0XHRcdC8vIFRoZSBjb250ZXh0cyBhcmUgbm90IGxvYWRlZCB5ZXQgLS0+IHdhaXQgZm9yIGEgY2hhbmdlIGV2ZW50IGJlZm9yZSBzY3JvbGxpbmdcblx0XHRcdFx0b1RhYmxlUm93QmluZGluZy5hdHRhY2hFdmVudE9uY2UoXCJkYXRhUmVjZWl2ZWRcIiwgZmluZEFuZFNjcm9sbCk7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHQvLyBDb250ZXh0cyBhcmUgYWxyZWFkeSBsb2FkZWQgLS0+IHdlIGNhbiB0cnkgdG8gc2Nyb2xsIGltbWVkaWF0ZWx5XG5cdFx0XHRcdGZpbmRBbmRTY3JvbGwoKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IFRhYmxlU2Nyb2xsZXI7XG4iXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7Ozs7RUFBQSxJQUFNQSxhQUFhLEdBQUc7SUFDckI7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQ0MsZ0JBQWdCLEVBQUUsVUFBVUMsTUFBVixFQUF1QkMsUUFBdkIsRUFBeUM7TUFDMUQsSUFBTUMsZ0JBQWdCLEdBQUdGLE1BQU0sQ0FBQ0csYUFBUCxFQUF6Qjs7TUFFQSxJQUFNQyxnQkFBZ0IsR0FBRyxZQUFZO1FBQ3BDLElBQUlKLE1BQU0sQ0FBQ0ssSUFBUCxHQUFjQyxTQUFkLEtBQTRCLFdBQWhDLEVBQTZDO1VBQzVDLE9BQU9KLGdCQUFnQixDQUFDSyxXQUFqQixDQUE2QixDQUE3QixDQUFQO1FBQ0EsQ0FGRCxNQUVPO1VBQ04sT0FBT0wsZ0JBQWdCLENBQUNNLGtCQUFqQixFQUFQO1FBQ0E7TUFDRCxDQU5EOztNQVFBLElBQU1DLGFBQWEsR0FBRyxZQUFZO1FBQ2pDLElBQU1DLFNBQVMsR0FBR04sZ0JBQWdCLEdBQUdPLElBQW5CLENBQXdCLFVBQVVDLElBQVYsRUFBcUI7VUFDOUQsT0FBT0EsSUFBSSxJQUFJQSxJQUFJLENBQUNDLE9BQUwsT0FBbUJaLFFBQWxDO1FBQ0EsQ0FGaUIsQ0FBbEI7O1FBR0EsSUFBSVMsU0FBSixFQUFlO1VBQ2RWLE1BQU0sQ0FBQ2MsYUFBUCxDQUFxQkosU0FBUyxDQUFDSyxRQUFWLEVBQXJCO1FBQ0E7TUFDRCxDQVBEOztNQVNBLElBQUliLGdCQUFKLEVBQXNCO1FBQ3JCLElBQU1jLHdCQUF3QixHQUFHWixnQkFBZ0IsRUFBakQ7O1FBRUEsSUFDRVksd0JBQXdCLENBQUNDLE1BQXpCLEtBQW9DLENBQXBDLElBQXlDZixnQkFBZ0IsQ0FBQ2dCLFNBQWpCLEtBQStCLENBQXpFLElBQ0FGLHdCQUF3QixDQUFDRyxJQUF6QixDQUE4QixVQUFVQyxPQUFWLEVBQXdCO1VBQ3JELE9BQU9BLE9BQU8sS0FBS0MsU0FBbkI7UUFDQSxDQUZELENBRkQsRUFLRTtVQUNEO1VBQ0FuQixnQkFBZ0IsQ0FBQ29CLGVBQWpCLENBQWlDLGNBQWpDLEVBQWlEYixhQUFqRDtRQUNBLENBUkQsTUFRTztVQUNOO1VBQ0FBLGFBQWE7UUFDYjtNQUNEO0lBQ0Q7RUE1Q29CLENBQXRCO1NBK0NlWCxhIn0=
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/f/library", "sap/fe/common/library", "sap/fe/core/library", "sap/fe/macros/library", "sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment", "sap/ui/core/Core", "sap/ui/core/library"], function (_library, _library2, _library3, _library4, MultipleMode, Core, _library5) {
|
|
5
|
+
sap.ui.define(["sap/f/library", "sap/fe/common/library", "sap/fe/core/library", "sap/fe/macros/library", "sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment", "sap/fe/templates/ObjectPage/components/DraftHandlerButton", "sap/ui/core/Core", "sap/ui/core/library"], function (_library, _library2, _library3, _library4, MultipleMode, DraftHandlerButton, Core, _library5) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
/**
|
|
@@ -32,7 +32,7 @@ sap.ui.define(["sap/f/library", "sap/fe/common/library", "sap/fe/core/library",
|
|
|
32
32
|
controls: [],
|
|
33
33
|
elements: [],
|
|
34
34
|
// eslint-disable-next-line no-template-curly-in-string
|
|
35
|
-
version: "1.
|
|
35
|
+
version: "1.106.0",
|
|
36
36
|
noLibraryCSS: true
|
|
37
37
|
});
|
|
38
38
|
|
|
@@ -56,6 +56,7 @@ sap.ui.define(["sap/f/library", "sap/fe/common/library", "sap/fe/core/library",
|
|
|
56
56
|
Tabs: "Tabs"
|
|
57
57
|
};
|
|
58
58
|
MultipleMode.register();
|
|
59
|
+
DraftHandlerButton.register();
|
|
59
60
|
return thisLib;
|
|
60
61
|
}, false);
|
|
61
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ0aGlzTGliIiwiQ29yZSIsImluaXRMaWJyYXJ5IiwibmFtZSIsImRlcGVuZGVuY2llcyIsInR5cGVzIiwiaW50ZXJmYWNlcyIsImNvbnRyb2xzIiwiZWxlbWVudHMiLCJ2ZXJzaW9uIiwibm9MaWJyYXJ5Q1NTIiwiT2JqZWN0UGFnZSIsIlNlY3Rpb25MYXlvdXQiLCJQYWdlIiwiVGFicyIsIk11bHRpcGxlTW9kZSIsInJlZ2lzdGVyIiwiRHJhZnRIYW5kbGVyQnV0dG9uIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJsaWJyYXJ5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcInNhcC9mL2xpYnJhcnlcIjtcbmltcG9ydCBcInNhcC9mZS9jb21tb24vbGlicmFyeVwiO1xuaW1wb3J0IFwic2FwL2ZlL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IFwic2FwL2ZlL21hY3Jvcy9saWJyYXJ5XCI7XG5pbXBvcnQgTXVsdGlwbGVNb2RlIGZyb20gXCJzYXAvZmUvdGVtcGxhdGVzL0xpc3RSZXBvcnQvdmlldy9mcmFnbWVudHMvTXVsdGlwbGVNb2RlLmZyYWdtZW50XCI7XG5pbXBvcnQgRHJhZnRIYW5kbGVyQnV0dG9uIGZyb20gXCJzYXAvZmUvdGVtcGxhdGVzL09iamVjdFBhZ2UvY29tcG9uZW50cy9EcmFmdEhhbmRsZXJCdXR0b25cIjtcbmltcG9ydCBDb3JlIGZyb20gXCJzYXAvdWkvY29yZS9Db3JlXCI7XG5pbXBvcnQgXCJzYXAvdWkvY29yZS9saWJyYXJ5XCI7XG4vKipcbiAqIExpYnJhcnkgcHJvdmlkaW5nIHRoZSBvZmZpY2lhbCB0ZW1wbGF0ZXMgc3VwcG9ydGVkIGJ5IFNBUCBGaW9yaSBlbGVtZW50cy5cbiAqXG4gKiBAbmFtZXNwYWNlXG4gKiBAbmFtZSBzYXAuZmUudGVtcGxhdGVzXG4gKiBAcHVibGljXG4gKi9cblxuLyoqXG4gKiBAbmFtZXNwYWNlXG4gKiBAbmFtZSBzYXAuZmUudGVtcGxhdGVzLkxpc3RSZXBvcnRcbiAqIEBwdWJsaWNcbiAqL1xuXG4vKipcbiAqIEBuYW1lc3BhY2VcbiAqIEBuYW1lIHNhcC5mZS50ZW1wbGF0ZXMuT2JqZWN0UGFnZVxuICogQHB1YmxpY1xuICovXG5jb25zdCB0aGlzTGliID0gQ29yZS5pbml0TGlicmFyeSh7XG5cdG5hbWU6IFwic2FwLmZlLnRlbXBsYXRlc1wiLFxuXHRkZXBlbmRlbmNpZXM6IFtcInNhcC51aS5jb3JlXCIsIFwic2FwLmZlLmNvcmVcIiwgXCJzYXAuZmUubWFjcm9zXCIsIFwic2FwLmZlLmNvbW1vblwiLCBcInNhcC5mXCJdLFxuXHR0eXBlczogW1wic2FwLmZlLnRlbXBsYXRlcy5PYmplY3RQYWdlLlNlY3Rpb25MYXlvdXRcIl0sXG5cdGludGVyZmFjZXM6IFtdLFxuXHRjb250cm9sczogW10sXG5cdGVsZW1lbnRzOiBbXSxcblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXRlbXBsYXRlLWN1cmx5LWluLXN0cmluZ1xuXHR2ZXJzaW9uOiBcIiR7dmVyc2lvbn1cIixcblx0bm9MaWJyYXJ5Q1NTOiB0cnVlXG59KSBhcyBhbnk7XG5cbmlmICghdGhpc0xpYi5PYmplY3RQYWdlKSB7XG5cdHRoaXNMaWIuT2JqZWN0UGFnZSA9IHt9O1xufVxudGhpc0xpYi5PYmplY3RQYWdlLlNlY3Rpb25MYXlvdXQgPSB7XG5cdC8qKlxuXHQgKiBBbGwgc2VjdGlvbnMgYXJlIHNob3duIGluIG9uZSBwYWdlXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdFBhZ2U6IFwiUGFnZVwiLFxuXG5cdC8qKlxuXHQgKiBBbGwgdG9wLWxldmVsIHNlY3Rpb25zIGFyZSBzaG93biBpbiBhbiBvd24gdGFiXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdFRhYnM6IFwiVGFic1wiXG59O1xuXG5NdWx0aXBsZU1vZGUucmVnaXN0ZXIoKTtcbkRyYWZ0SGFuZGxlckJ1dHRvbi5yZWdpc3RlcigpO1xuXG5leHBvcnQgZGVmYXVsdCB0aGlzTGliO1xuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7O0VBUUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0VBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7RUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBQ0EsSUFBTUEsT0FBTyxHQUFHQyxJQUFJLENBQUNDLFdBQUwsQ0FBaUI7SUFDaENDLElBQUksRUFBRSxrQkFEMEI7SUFFaENDLFlBQVksRUFBRSxDQUFDLGFBQUQsRUFBZ0IsYUFBaEIsRUFBK0IsZUFBL0IsRUFBZ0QsZUFBaEQsRUFBaUUsT0FBakUsQ0FGa0I7SUFHaENDLEtBQUssRUFBRSxDQUFDLDJDQUFELENBSHlCO0lBSWhDQyxVQUFVLEVBQUUsRUFKb0I7SUFLaENDLFFBQVEsRUFBRSxFQUxzQjtJQU1oQ0MsUUFBUSxFQUFFLEVBTnNCO0lBT2hDO0lBQ0FDLE9BQU8sRUFBRSxZQVJ1QjtJQVNoQ0MsWUFBWSxFQUFFO0VBVGtCLENBQWpCLENBQWhCOztFQVlBLElBQUksQ0FBQ1YsT0FBTyxDQUFDVyxVQUFiLEVBQXlCO0lBQ3hCWCxPQUFPLENBQUNXLFVBQVIsR0FBcUIsRUFBckI7RUFDQTs7RUFDRFgsT0FBTyxDQUFDVyxVQUFSLENBQW1CQyxhQUFuQixHQUFtQztJQUNsQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0lBQ0NDLElBQUksRUFBRSxNQU40Qjs7SUFRbEM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtJQUNDQyxJQUFJLEVBQUU7RUFiNEIsQ0FBbkM7RUFnQkFDLFlBQVksQ0FBQ0MsUUFBYjtFQUNBQyxrQkFBa0IsQ0FBQ0QsUUFBbkI7U0FFZWhCLE8ifQ==
|
|
@@ -3,6 +3,7 @@ import "sap/fe/common/library";
|
|
|
3
3
|
import "sap/fe/core/library";
|
|
4
4
|
import "sap/fe/macros/library";
|
|
5
5
|
import MultipleMode from "sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment";
|
|
6
|
+
import DraftHandlerButton from "sap/fe/templates/ObjectPage/components/DraftHandlerButton";
|
|
6
7
|
import Core from "sap/ui/core/Core";
|
|
7
8
|
import "sap/ui/core/library";
|
|
8
9
|
/**
|
|
@@ -56,5 +57,6 @@ thisLib.ObjectPage.SectionLayout = {
|
|
|
56
57
|
};
|
|
57
58
|
|
|
58
59
|
MultipleMode.register();
|
|
60
|
+
DraftHandlerButton.register();
|
|
59
61
|
|
|
60
62
|
export default thisLib;
|
|
@@ -24,9 +24,6 @@ C_EDITFLOW_OBJECT_PAGE_SESSION_EXPIRED_DIALOG_TITLE=Session Expired
|
|
|
24
24
|
# YMSG, 150: Message in the 'Session Expired' Dialog
|
|
25
25
|
C_EDITFLOW_OBJECT_PAGE_SESSION_EXPIRED_DIALOG_MESSAGE=Your editing session has expired. Any unsaved changes have been lost.\nChoose OK to go back to the previous page.
|
|
26
26
|
|
|
27
|
-
# XBUT,15: Text for the 'Delete' Button
|
|
28
|
-
C_COMMON_DELETE=Delete
|
|
29
|
-
|
|
30
27
|
# XBUT,15: Text for the 'Related Apps' Button
|
|
31
28
|
T_OP_RELATED_APPS=Related Apps
|
|
32
29
|
|
|
@@ -202,11 +199,11 @@ T_KEYBOARD_SHORTCUT_SAVE_MAC = CMD+S
|
|
|
202
199
|
|
|
203
200
|
|
|
204
201
|
# XMSG,100: No Data Text when no filters are applied for the table and chart in the List Report
|
|
205
|
-
T_TABLE_AND_CHART_NO_DATA_TEXT=To start, set the relevant filters.
|
|
202
|
+
T_TABLE_AND_CHART_NO_DATA_TEXT=To start, set the relevant filters and choose "Go".
|
|
206
203
|
|
|
207
204
|
|
|
208
205
|
# XMSG,100: No Data Text when filters applied for the table and chart in the List Report and Object Page
|
|
209
|
-
T_TABLE_AND_CHART_NO_DATA_TEXT_WITH_FILTER=No data found. Try adjusting search or filter
|
|
206
|
+
T_TABLE_AND_CHART_NO_DATA_TEXT_WITH_FILTER=No data found. Try adjusting the search or filter parameters.
|
|
210
207
|
|
|
211
208
|
|
|
212
209
|
#------------Visual Filters -----------------
|
|
@@ -8,14 +8,12 @@ T_ANNOTATION_HELPER_DEFAULT_OBJECT_PAGE_HEADER_TITLE_NO_HEADER_INFO=(\u0643\u062
|
|
|
8
8
|
|
|
9
9
|
T_NEW_OBJECT=\u0627\u0644\u0643\u0627\u0626\u0646 \u0627\u0644\u062C\u062F\u064A\u062F
|
|
10
10
|
|
|
11
|
-
T_ANNOTATION_HELPER_DEFAULT_OBJECT_PAGE_HEADER_TITLE=\u062C\u062F\u064A\u062F
|
|
11
|
+
T_ANNOTATION_HELPER_DEFAULT_OBJECT_PAGE_HEADER_TITLE=\u062C\u062F\u064A\u062F
|
|
12
12
|
|
|
13
13
|
C_EDITFLOW_OBJECT_PAGE_SESSION_EXPIRED_DIALOG_TITLE=\u0627\u0646\u062A\u0647\u062A \u0635\u0644\u0627\u062D\u064A\u0629 \u0627\u0644\u062C\u0644\u0633\u0629
|
|
14
14
|
|
|
15
15
|
C_EDITFLOW_OBJECT_PAGE_SESSION_EXPIRED_DIALOG_MESSAGE=\u0627\u0646\u062A\u0647\u062A \u0635\u0644\u0627\u062D\u064A\u0629 \u062C\u0644\u0633\u0629 \u0627\u0644\u062A\u062D\u0631\u064A\u0631 \u0627\u0644\u062E\u0627\u0635\u0629 \u0628\u0643. \u062A\u0645 \u0641\u0642\u062F \u0623\u064A \u062A\u063A\u064A\u064A\u0631\u0627\u062A \u063A\u064A\u0631 \u0645\u062D\u0641\u0648\u0638\u0629.\n\u0627\u062E\u062A\u0631 '\u0645\u0648\u0627\u0641\u0642' \u0644\u0644\u0631\u062C\u0648\u0639 \u0625\u0644\u0649 \u0627\u0644\u0635\u0641\u062D\u0629 \u0627\u0644\u0633\u0627\u0628\u0642\u0629.
|
|
16
16
|
|
|
17
|
-
C_COMMON_OBJECT_PAGE_DELETE=\u062D\u0630\u0641
|
|
18
|
-
|
|
19
17
|
T_OP_RELATED_APPS=\u062A\u0637\u0628\u064A\u0642\u0627\u062A \u0630\u0627\u062A \u0635\u0644\u0629
|
|
20
18
|
|
|
21
19
|
T_COMMON_OBJECT_PAGE_APPLY_DRAFT=\u062A\u0637\u0628\u064A\u0642
|
|
@@ -80,13 +78,6 @@ T_STASHABLE_VBOX_RTA_HEADERCOLLECTIONFACET_MENU_ADD=\u0648\u0627\u062C\u0647\u06
|
|
|
80
78
|
T_STASHABLE_VBOX_RTA_HEADERCOLLECTIONFACET_MENU_ADD_PLURAL=\u0648\u0627\u062C\u0647\u0627\u062A \u0627\u0644\u0645\u0642\u062F\u0645\u0629
|
|
81
79
|
|
|
82
80
|
|
|
83
|
-
C_ROUTING_NAVIGATION_DISABLED_TITLE=\u0627\u0644\u062A\u0646\u0642\u0644 \u062D\u0627\u0644\u064A\u064B\u0627 \u063A\u064A\u0631 \u0645\u0645\u0643\u0646
|
|
84
|
-
|
|
85
|
-
C_TRANSACTION_HELPER_TRANSIENT_CONTEXT_DESCRIPTION=\u064A\u0645\u0643\u0646 \u062D\u062F\u0648\u062B \u0630\u0644\u0643 \u0625\u0630\u0627 \u0623\u062F\u062E\u0644\u062A \u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0627 \u064A\u0645\u0643\u0646 \u0642\u0628\u0648\u0644\u0647\u0627 \u0645\u0646 \u0627\u0644\u0646\u0638\u0627\u0645 \u0627\u0644\u062E\u0644\u0641\u064A \u0623\u0648 \u0644\u0623\u064A \u0633\u0628\u0628 \u062A\u0642\u0646\u064A\u060C \u0639\u0644\u0649 \u0633\u0628\u064A\u0644 \u0627\u0644\u0645\u062B\u0627\u0644\u060C \u0639\u062F\u0645 \u0627\u062A\u0635\u0627\u0644\u0643 \u0628\u0627\u0644\u0625\u0646\u062A\u0631\u0646\u062A \u0623\u0648 \u0639\u062F\u0645 \u062A\u0648\u0641\u0631 \u0645\u0643\u0648\u0646 \u0627\u0644\u0646\u0638\u0627\u0645 \u0627\u0644\u062E\u0644\u0641\u064A \u0623\u0648 \u062A\u0639\u0637\u0644 \u0646\u0638\u0627\u0645 \u0623\u0633\u0627\u0633\u064A. \u0644\u0644\u062A\u063A\u0644\u0628 \u0639\u0644\u0649 \u0647\u0630\u0627 \u0627\u0644\u0645\u0648\u0642\u0641\u060C \u064A\u0645\u0643\u0646\u0643 \u0625\u0645\u0627 \u062A\u0635\u062D\u064A\u062D \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0623\u0648 \u0645\u062D\u0627\u0648\u0644\u0629 \u0645\u0632\u0627\u0645\u0646\u062A\u0647\u0627 \u0645\u0639 \u0627\u0644\u0646\u0638\u0627\u0645 \u0627\u0644\u062E\u0644\u0641\u064A \u0645\u0631\u0629 \u0623\u062E\u0631\u0649 \u0623\u0648 \u062D\u0630\u0641\u0647\u0627 \u0625\u0630\u0627 \u0644\u0645 \u062A\u0639\u062F \u0647\u0646\u0627\u0643 \u062D\u0627\u062C\u0629 \u0625\u0644\u064A\u0647\u0627.
|
|
86
|
-
|
|
87
|
-
C_TRANSACTION_HELPER_TRANSIENT_CONTEXT_MESSAGE=\u062A\u0639\u0630\u0631\u062A \u0645\u0632\u0627\u0645\u0646\u0629 \u0627\u0644\u0625\u062F\u062E\u0627\u0644 \u0645\u0639 \u0627\u0644\u0646\u0638\u0627\u0645 \u0627\u0644\u062E\u0644\u0641\u064A.
|
|
88
|
-
|
|
89
|
-
|
|
90
81
|
T_COMMON_NAVIGATION_DISABLED_MULTIPLE_CONTEXTS=\u062D\u062F\u062F \u0628\u0646\u062F\u064B\u0627 \u0648\u0627\u062D\u062F\u064B\u0627 \u0641\u0642\u0637.
|
|
91
82
|
|
|
92
83
|
|
|
@@ -135,10 +126,10 @@ T_KEYBOARD_SHORTCUT_SAVE_MAC=CMD+S
|
|
|
135
126
|
|
|
136
127
|
|
|
137
128
|
|
|
138
|
-
T_TABLE_AND_CHART_NO_DATA_TEXT=\u0644\u0644\u0628\u062F\u0621\u060C \
|
|
129
|
+
T_TABLE_AND_CHART_NO_DATA_TEXT=\u0644\u0644\u0628\u062F\u0621\u060C \u0639\u064A\u0651\u0650\u0646 \u0639\u0648\u0627\u0645\u0644 \u0627\u0644\u062A\u0635\u0641\u064A\u0629 \u0630\u0627\u062A \u0627\u0644\u0635\u0644\u0629 \u0648\u0627\u062E\u062A\u0631 "\u0627\u0646\u062A\u0642\u0627\u0644".
|
|
139
130
|
|
|
140
131
|
|
|
141
|
-
T_TABLE_AND_CHART_NO_DATA_TEXT_WITH_FILTER=\u0644\
|
|
132
|
+
T_TABLE_AND_CHART_NO_DATA_TEXT_WITH_FILTER=\u0644\u0627 \u062A\u0648\u062C\u062F \u0628\u064A\u0627\u0646\u0627\u062A. \u062D\u0627\u0648\u0644 \u0636\u0628\u0637 \u0645\u0639\u0627\u0645\u0644\u0627\u062A \u0627\u0644\u0628\u062D\u062B \u0623\u0648 \u0627\u0644\u062A\u0635\u0641\u064A\u0629.
|
|
142
133
|
|
|
143
134
|
|
|
144
135
|
T_SEGMENTED_BUTTON_TOOLTIP_VISUAL=\u0639\u0648\u0627\u0645\u0644 \u062A\u0635\u0641\u064A\u0629 \u0645\u0631\u0626\u064A\u0629
|
|
@@ -14,8 +14,6 @@ C_EDITFLOW_OBJECT_PAGE_SESSION_EXPIRED_DIALOG_TITLE=\u0418\u0437\u0442\u0435\u04
|
|
|
14
14
|
|
|
15
15
|
C_EDITFLOW_OBJECT_PAGE_SESSION_EXPIRED_DIALOG_MESSAGE=\u0421\u0435\u0441\u0438\u044F\u0442\u0430 \u0437\u0430 \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u0430\u043D\u0435 \u0438\u0437\u0442\u0435\u0447\u0435. \u0412\u0441\u0438\u0447\u043A\u0438 \u043F\u0440\u043E\u043C\u0435\u043D\u0438 \u0441\u0430 \u0438\u0437\u0433\u0443\u0431\u0435\u043D\u0438.\n\u0417\u0430 \u0434\u0430 \u0441\u0435 \u0432\u044A\u0440\u043D\u0435\u0442\u0435 \u043A\u044A\u043C \u043F\u0440\u0435\u0434\u0438\u0448\u043D\u0430\u0442\u0430 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430, \u0438\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u041E\u041A.
|
|
16
16
|
|
|
17
|
-
C_COMMON_OBJECT_PAGE_DELETE=\u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043D\u0435
|
|
18
|
-
|
|
19
17
|
T_OP_RELATED_APPS=\u0421\u0432\u044A\u0440\u0437. \u043F\u0440\u0438\u043B\u043E\u0436.
|
|
20
18
|
|
|
21
19
|
T_COMMON_OBJECT_PAGE_APPLY_DRAFT=\u041F\u0440\u0438\u043B\u0430\u0433\u0430\u043D\u0435
|
|
@@ -80,13 +78,6 @@ T_STASHABLE_VBOX_RTA_HEADERCOLLECTIONFACET_MENU_ADD=\u0424\u0430\u0441\u0435\u04
|
|
|
80
78
|
T_STASHABLE_VBOX_RTA_HEADERCOLLECTIONFACET_MENU_ADD_PLURAL=\u0424\u0430\u0441\u0435\u0442\u043A\u0438 \u043D\u0430 \u0437\u0430\u0433\u043B\u0430\u0432\u0438\u0435
|
|
81
79
|
|
|
82
80
|
|
|
83
|
-
C_ROUTING_NAVIGATION_DISABLED_TITLE=\u0412 \u043C\u043E\u043C\u0435\u043D\u0442\u0430 \u043D\u0430\u0432\u0438\u0433\u0438\u0440\u0430\u043D\u0435\u0442\u043E \u0435 \u043D\u0435\u0432\u044A\u0437\u043C\u043E\u0436\u043D\u043E.
|
|
84
|
-
|
|
85
|
-
C_TRANSACTION_HELPER_TRANSIENT_CONTEXT_DESCRIPTION=\u041F\u0440\u0438\u0447\u0438\u043D\u0430\u0442\u0430 \u0437\u0430 \u0442\u043E\u0432\u0430 \u043C\u043E\u0436\u0435 \u0434\u0430 \u0435, \u0447\u0435 \u0441\u0442\u0435 \u0432\u044A\u0432\u0435\u043B\u0438 \u0434\u0430\u043D\u043D\u0438, \u043A\u043E\u0438\u0442\u043E \u0431\u0435\u043A\u0435\u043D\u0434\u044A\u0442 \u043D\u0435 \u043C\u043E\u0436\u0435 \u0434\u0430 \u043F\u0440\u0438\u0435\u043C\u0435, \u0438\u043B\u0438 \u0447\u0435 \u0438\u043C\u0430 \u0442\u0435\u0445\u043D\u0438\u0447\u0435\u0441\u043A\u0438 \u043F\u0440\u043E\u0431\u043B\u0435\u043C\: \u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440 \u043B\u0438\u043F\u0441\u0432\u0430 \u0432\u0440\u044A\u0437\u043A\u0430 \u0441 \u0438\u043D\u0442\u0435\u0440\u043D\u0435\u0442, \u043D\u044F\u043A\u043E\u0439 \u0431\u0435\u043A\u0435\u043D\u0434 \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442 \u043D\u0435 \u0435 \u0434\u043E\u0441\u0442\u044A\u043F\u0435\u043D \u0438\u043B\u0438 \u043D\u044F\u043A\u043E\u044F \u0431\u0430\u0437\u043E\u0432\u0430 \u0441\u0438\u0441\u0442\u0435\u043C\u0430 \u043D\u0435 \u0440\u0430\u0431\u043E\u0442\u0438. \u0417\u0430 \u0434\u0430 \u0441\u0435 \u0441\u043F\u0440\u0430\u0432\u0438\u0442\u0435 \u0441 \u0442\u0430\u0437\u0438 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044F, \u043C\u043E\u0436\u0435\u0442\u0435 \u0434\u0430 \u043A\u043E\u0440\u0438\u0433\u0438\u0440\u0430\u0442\u0435 \u0434\u0430\u043D\u043D\u0438\u0442\u0435, \u0434\u0430 \u043E\u043F\u0438\u0442\u0430\u0442\u0435 \u043E\u0442\u043D\u043E\u0432\u043E \u0434\u0430 \u0433\u0438 \u0441\u0438\u043D\u0445\u0440\u043E\u043D\u0438\u0437\u0438\u0440\u0430\u0442\u0435 \u0441 \u0431\u0435\u043A\u0435\u043D\u0434\u0430 \u0438\u043B\u0438 \u0434\u0430 \u0433\u0438 \u0438\u0437\u0442\u0440\u0438\u0435\u0442\u0435, \u0430\u043A\u043E \u0432\u0435\u0447\u0435 \u043D\u0435 \u0441\u0430 \u0432\u0438 \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u0438.
|
|
86
|
-
|
|
87
|
-
C_TRANSACTION_HELPER_TRANSIENT_CONTEXT_MESSAGE=\u0417\u0430\u043F\u0438\u0441\u044A\u0442 \u043D\u0435 \u043C\u043E\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0441\u0438\u043D\u0445\u0440\u043E\u043D\u0438\u0437\u0438\u0440\u0430 \u0441 \u0431\u0435\u043A\u0435\u043D\u0434\u0430.
|
|
88
|
-
|
|
89
|
-
|
|
90
81
|
T_COMMON_NAVIGATION_DISABLED_MULTIPLE_CONTEXTS=\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0441\u0430\u043C\u043E \u0435\u0434\u043D\u0430 \u043F\u043E\u0437\u0438\u0446\u0438\u044F.
|
|
91
82
|
|
|
92
83
|
|
|
@@ -135,10 +126,10 @@ T_KEYBOARD_SHORTCUT_SAVE_MAC=CMD+S
|
|
|
135
126
|
|
|
136
127
|
|
|
137
128
|
|
|
138
|
-
T_TABLE_AND_CHART_NO_DATA_TEXT=\u0417\u0430 \u0434\u0430 \
|
|
129
|
+
T_TABLE_AND_CHART_NO_DATA_TEXT=\u0417\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u043D\u0435\u0442\u0435, \u0437\u0430\u0434\u0430\u0439\u0442\u0435 \u0441\u044A\u043E\u0442\u0432\u0435\u0442\u043D\u0438 \u0444\u0438\u043B\u0442\u0440\u0438 \u0438 \u043D\u0430\u0442\u0438\u0441\u043D\u0435\u0442\u0435 "\u041D\u0430\u0447\u0430\u043B\u043E".
|
|
139
130
|
|
|
140
131
|
|
|
141
|
-
T_TABLE_AND_CHART_NO_DATA_TEXT_WITH_FILTER=\u041D\
|
|
132
|
+
T_TABLE_AND_CHART_NO_DATA_TEXT_WITH_FILTER=\u041D\u0435 \u0441\u0430 \u043D\u0430\u043C\u0435\u0440\u0435\u043D\u0438 \u0434\u0430\u043D\u043D\u0438. \u041A\u043E\u0440\u0438\u0433\u0438\u0440\u0430\u0439\u0442\u0435 \u0442\u044A\u0440\u0441\u0435\u043D\u0435\u0442\u043E \u0438\u043B\u0438 \u0444\u0438\u043B\u0442\u044A\u0440\u0430.
|
|
142
133
|
|
|
143
134
|
|
|
144
135
|
T_SEGMENTED_BUTTON_TOOLTIP_VISUAL=\u0412\u0438\u0437\u0443\u0430\u043B\u043D\u0438 \u0444\u0438\u043B\u0442\u0440\u0438
|
|
@@ -14,8 +14,6 @@ C_EDITFLOW_OBJECT_PAGE_SESSION_EXPIRED_DIALOG_TITLE=Sessi\u00F3 caducada
|
|
|
14
14
|
|
|
15
15
|
C_EDITFLOW_OBJECT_PAGE_SESSION_EXPIRED_DIALOG_MESSAGE=La sessi\u00F3 d'edici\u00F3 ha caducat. S'han perdut totes les modificacions sense desar.\nSeleccioneu D'acord per tornar a la p\u00E0gina anterior.
|
|
16
16
|
|
|
17
|
-
C_COMMON_OBJECT_PAGE_DELETE=Suprimir
|
|
18
|
-
|
|
19
17
|
T_OP_RELATED_APPS=Aplic.rel.
|
|
20
18
|
|
|
21
19
|
T_COMMON_OBJECT_PAGE_APPLY_DRAFT=Aplicar
|
|
@@ -80,13 +78,6 @@ T_STASHABLE_VBOX_RTA_HEADERCOLLECTIONFACET_MENU_ADD=Faceta de cap\u00E7alera
|
|
|
80
78
|
T_STASHABLE_VBOX_RTA_HEADERCOLLECTIONFACET_MENU_ADD_PLURAL=Facetes de cap\u00E7alera
|
|
81
79
|
|
|
82
80
|
|
|
83
|
-
C_ROUTING_NAVIGATION_DISABLED_TITLE=Actualment la navegaci\u00F3 no est\u00E0 disponible
|
|
84
|
-
|
|
85
|
-
C_TRANSACTION_HELPER_TRANSIENT_CONTEXT_DESCRIPTION=\u00C9s possible que hagueu introdu\u00EFt dades que el back end no pot acceptar o que hi hagi un motiu t\u00E8cnic. Per exemple, no esteu connectats a internet, un component de back end no est\u00E0 disponible o un sistema subjacent no funciona. Per solucionar aquesta situaci\u00F3 podeu corregir les dades, intentar sincronitzar-les de nou amb el back end o suprimir-les si ja no s\u00F3n necess\u00E0ries.
|
|
86
|
-
|
|
87
|
-
C_TRANSACTION_HELPER_TRANSIENT_CONTEXT_MESSAGE=L\u2019entrada no s\u2019ha pogut sincronitzar amb el back end.
|
|
88
|
-
|
|
89
|
-
|
|
90
81
|
T_COMMON_NAVIGATION_DISABLED_MULTIPLE_CONTEXTS=Seleccioneu nom\u00E9s un element.
|
|
91
82
|
|
|
92
83
|
|
|
@@ -135,10 +126,10 @@ T_KEYBOARD_SHORTCUT_SAVE_MAC=CMD+S
|
|
|
135
126
|
|
|
136
127
|
|
|
137
128
|
|
|
138
|
-
T_TABLE_AND_CHART_NO_DATA_TEXT=Per comen\u00E7ar, definiu els filtres rellevants.
|
|
129
|
+
T_TABLE_AND_CHART_NO_DATA_TEXT=Per comen\u00E7ar, definiu els filtres rellevants i seleccioneu "Anar".
|
|
139
130
|
|
|
140
131
|
|
|
141
|
-
T_TABLE_AND_CHART_NO_DATA_TEXT_WITH_FILTER=No
|
|
132
|
+
T_TABLE_AND_CHART_NO_DATA_TEXT_WITH_FILTER=No existeixen dades. Proveu d'ajustar la cerca o els par\u00E0metres de filtre.
|
|
142
133
|
|
|
143
134
|
|
|
144
135
|
T_SEGMENTED_BUTTON_TOOLTIP_VISUAL=Filtres visuals
|
|
@@ -8,14 +8,12 @@ T_ANNOTATION_HELPER_DEFAULT_OBJECT_PAGE_HEADER_TITLE_NO_HEADER_INFO=(Nezn\u00E1m
|
|
|
8
8
|
|
|
9
9
|
T_NEW_OBJECT=Nov\u00FD objekt
|
|
10
10
|
|
|
11
|
-
T_ANNOTATION_HELPER_DEFAULT_OBJECT_PAGE_HEADER_TITLE=Nov\
|
|
11
|
+
T_ANNOTATION_HELPER_DEFAULT_OBJECT_PAGE_HEADER_TITLE=Nov\u00E1
|
|
12
12
|
|
|
13
13
|
C_EDITFLOW_OBJECT_PAGE_SESSION_EXPIRED_DIALOG_TITLE=Relace vypr\u0161ela
|
|
14
14
|
|
|
15
15
|
C_EDITFLOW_OBJECT_PAGE_SESSION_EXPIRED_DIALOG_MESSAGE=Va\u0161e relace vypr\u0161ela. V\u0161echny neulo\u017Een\u00E9 zm\u011Bny se ztratily.\nPro n\u00E1vrat na p\u0159edchoz\u00ED str\u00E1nku zvolte OK.
|
|
16
16
|
|
|
17
|
-
C_COMMON_OBJECT_PAGE_DELETE=Odstranit
|
|
18
|
-
|
|
19
17
|
T_OP_RELATED_APPS=P\u0159\u00EDbuz.aplikace
|
|
20
18
|
|
|
21
19
|
T_COMMON_OBJECT_PAGE_APPLY_DRAFT=Pou\u017E\u00EDt
|
|
@@ -80,13 +78,6 @@ T_STASHABLE_VBOX_RTA_HEADERCOLLECTIONFACET_MENU_ADD=Fazeta hlavi\u010Dky
|
|
|
80
78
|
T_STASHABLE_VBOX_RTA_HEADERCOLLECTIONFACET_MENU_ADD_PLURAL=Fazety hlavi\u010Dky
|
|
81
79
|
|
|
82
80
|
|
|
83
|
-
C_ROUTING_NAVIGATION_DISABLED_TITLE=Navigace moment\u00E1ln\u011B nen\u00ED mo\u017En\u00E1
|
|
84
|
-
|
|
85
|
-
C_TRANSACTION_HELPER_TRANSIENT_CONTEXT_DESCRIPTION=To se m\u016F\u017Ee st\u00E1t, kdy\u017E jste zadali data, je\u017E nem\u016F\u017Ee backend akceptovat, nebo kdy\u017E jde o technick\u00FD probl\u00E9m, nap\u0159\u00EDklad nejste p\u0159ipojeni k internetu, komponenta backendu je nedostupn\u00E1 nebo z\u00E1kladn\u00ED syst\u00E9m je mimo provoz. Pro vy\u0159e\u0161en\u00ED t\u00E9to situace m\u016F\u017Eete bu\u010F opravit data, znovu se je pokusit synchronizovat s backendem nebo je odstranit, pokud je u\u017E nepot\u0159ebujete.
|
|
86
|
-
|
|
87
|
-
C_TRANSACTION_HELPER_TRANSIENT_CONTEXT_MESSAGE=Z\u00E1znam nebylo mo\u017En\u00E9 synchronizovat s backendem.
|
|
88
|
-
|
|
89
|
-
|
|
90
81
|
T_COMMON_NAVIGATION_DISABLED_MULTIPLE_CONTEXTS=Vyberte jen jednu polo\u017Eku.
|
|
91
82
|
|
|
92
83
|
|
|
@@ -135,10 +126,10 @@ T_KEYBOARD_SHORTCUT_SAVE_MAC=CMD+S
|
|
|
135
126
|
|
|
136
127
|
|
|
137
128
|
|
|
138
|
-
T_TABLE_AND_CHART_NO_DATA_TEXT=Pro spu\u0161t\u011Bn\u00ED nastavte relevantn\u00ED filtry.
|
|
129
|
+
T_TABLE_AND_CHART_NO_DATA_TEXT=Pro spu\u0161t\u011Bn\u00ED nastavte relevantn\u00ED filtry a zvolte \u201ESpustit\u201C.
|
|
139
130
|
|
|
140
131
|
|
|
141
|
-
T_TABLE_AND_CHART_NO_DATA_TEXT_WITH_FILTER=Data nenalezena. Upravte
|
|
132
|
+
T_TABLE_AND_CHART_NO_DATA_TEXT_WITH_FILTER=Data nenalezena. Upravte parametry hled\u00E1n\u00ED nebo filtru.
|
|
142
133
|
|
|
143
134
|
|
|
144
135
|
T_SEGMENTED_BUTTON_TOOLTIP_VISUAL=Vizu\u00E1ln\u00ED filtry
|