@sapui5/sap.fe.macros 1.139.0 → 1.139.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/sap/fe/macros/.library +1 -1
- package/src/sap/fe/macros/Chart.js +1 -1
- package/src/sap/fe/macros/Chart.tsx +1 -1
- package/src/sap/fe/macros/RichTextEditor.js +1 -2
- package/src/sap/fe/macros/RichTextEditor.tsx +0 -1
- package/src/sap/fe/macros/ValueHelp.js +4 -28
- package/src/sap/fe/macros/ValueHelp.tsx +2 -42
- package/src/sap/fe/macros/chart/MdcChartTemplate.js +2 -4
- package/src/sap/fe/macros/chart/MdcChartTemplate.tsx +1 -4
- package/src/sap/fe/macros/controls/BuildingBlockObjectProperty.js +5 -1
- package/src/sap/fe/macros/controls/BuildingBlockObjectProperty.ts +4 -0
- package/src/sap/fe/macros/controls/FilterBar.js +39 -3
- package/src/sap/fe/macros/controls/FilterBar.ts +42 -1
- package/src/sap/fe/macros/controls/Section.js +3 -2
- package/src/sap/fe/macros/controls/Section.ts +2 -1
- package/src/sap/fe/macros/draftIndicator/DraftIndicator.js +2 -2
- package/src/sap/fe/macros/draftIndicator/DraftIndicator.tsx +1 -1
- package/src/sap/fe/macros/field/FieldBaseDelegate.js +13 -7
- package/src/sap/fe/macros/field/FieldBaseDelegate.ts +12 -8
- package/src/sap/fe/macros/field/FieldRuntime.js +38 -8
- package/src/sap/fe/macros/field/FieldRuntime.ts +65 -7
- package/src/sap/fe/macros/filter/FilterUtils.js +7 -1
- package/src/sap/fe/macros/filter/FilterUtils.ts +7 -0
- package/src/sap/fe/macros/form/Form.block.js +6 -2
- package/src/sap/fe/macros/form/Form.block.ts +4 -1
- package/src/sap/fe/macros/form/FormDelegate.js +20 -1
- package/src/sap/fe/macros/form/FormDelegate.ts +25 -0
- package/src/sap/fe/macros/internal/field/DisplayStyle.js +4 -2
- package/src/sap/fe/macros/internal/field/DisplayStyle.tsx +3 -1
- package/src/sap/fe/macros/internal/valuehelp/TableDelegate.js +4 -4
- package/src/sap/fe/macros/internal/valuehelp/TableDelegate.ts +3 -3
- package/src/sap/fe/macros/internal/valuehelp/ValueListHelper.js +5 -1
- package/src/sap/fe/macros/internal/valuehelp/ValueListHelper.ts +4 -0
- package/src/sap/fe/macros/library.js +1 -1
- package/src/sap/fe/macros/mdc/adapter/StateHelper.js +5 -5
- package/src/sap/fe/macros/mdc/adapter/StateHelper.ts +5 -4
- package/src/sap/fe/macros/table/MdcTableTemplate.js +3 -1
- package/src/sap/fe/macros/table/MdcTableTemplate.tsx +2 -1
- package/src/sap/fe/macros/table/Table.js +7 -1
- package/src/sap/fe/macros/table/Table.tsx +7 -1
- package/src/sap/fe/macros/table/TableAPI.js +8 -1
- package/src/sap/fe/macros/table/TableAPI.ts +15 -2
- package/src/sap/fe/macros/table/TableSizeHelper.js +3 -3
- package/src/sap/fe/macros/table/TableSizeHelper.ts +5 -2
- package/src/sap/fe/macros/table/TreeTable.js +7 -1
- package/src/sap/fe/macros/table/TreeTable.tsx +7 -1
- package/src/sap/fe/macros/table/delegates/TableDelegate.js +3 -2
- package/src/sap/fe/macros/table/delegates/TableDelegate.ts +10 -3
- package/src/sap/fe/macros/table/massEdit/MassEditDialog.js +10 -10
- package/src/sap/fe/macros/table/massEdit/MassEditDialog.tsx +11 -9
- package/src/sap/fe/macros/table/massEdit/MassEditDialogHelper.js +8 -8
- package/src/sap/fe/macros/table/massEdit/MassEditDialogHelper.tsx +7 -6
- package/src/sap/fe/macros/valuehelp/ValueHelpDelegate.js +27 -3
- package/src/sap/fe/macros/valuehelp/ValueHelpDelegate.ts +28 -2
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2025 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/buildingBlocks/BuildingBlock", "sap/fe/core/helpers/ModelHelper", "sap/fe/core/helpers/TypeGuards", "sap/fe/macros/field/FieldHelper", "sap/fe/macros/internal/valuehelp/ValueHelpTemplating", "sap/
|
|
5
|
+
sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/buildingBlocks/BuildingBlock", "sap/fe/core/helpers/ModelHelper", "sap/fe/core/helpers/TypeGuards", "sap/fe/macros/field/FieldHelper", "sap/fe/macros/internal/valuehelp/ValueHelpTemplating", "sap/ui/core/Element"], function (ClassSupport, BuildingBlock, ModelHelper, TypeGuards, FieldHelper, ValueHelpTemplating, UI5Element) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10;
|
|
@@ -118,35 +118,11 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/buildingBlocks/BuildingB
|
|
|
118
118
|
var _proto = ValueHelp.prototype;
|
|
119
119
|
_proto.onMetadataAvailable = function onMetadataAvailable() {
|
|
120
120
|
if (!this.content) {
|
|
121
|
-
this._getOwner()?.runAsOwner(
|
|
122
|
-
|
|
123
|
-
this.content = this.createContent();
|
|
124
|
-
const content = this.content;
|
|
125
|
-
const vhPayload = content?.getPayload?.();
|
|
126
|
-
const metaModel = this._getOwner()?.getMetaModel();
|
|
127
|
-
if (vhPayload && metaModel) {
|
|
128
|
-
const metaContextPath = this.getMetaPathObject(this.metaPath, this.contextPath);
|
|
129
|
-
const propertyPath = metaContextPath?.getPath();
|
|
130
|
-
await this._resolveValueHelpDescriptionPath(vhPayload, metaModel, propertyPath, content);
|
|
131
|
-
}
|
|
132
|
-
} catch (err) {
|
|
133
|
-
const errorMessage = err instanceof Error ? err : new Error(String(err));
|
|
134
|
-
Log.warning("Failed to create content or resolve description path", errorMessage, "sap.fe.macros.ValueHelp");
|
|
135
|
-
}
|
|
121
|
+
this._getOwner()?.runAsOwner(() => {
|
|
122
|
+
this.content = this.createContent();
|
|
136
123
|
});
|
|
137
124
|
}
|
|
138
125
|
};
|
|
139
|
-
_proto._resolveValueHelpDescriptionPath = async function _resolveValueHelpDescriptionPath(payload, metaModel, propertyPath, content) {
|
|
140
|
-
const valueListInfos = await ValueListHelper.getValueListInfo(undefined, propertyPath, payload, metaModel);
|
|
141
|
-
let qualifierForTypeahead = typeof content?.data === "function" ? content.data("valuelistForValidation") || "" : "";
|
|
142
|
-
if (qualifierForTypeahead === " ") {
|
|
143
|
-
qualifierForTypeahead = "";
|
|
144
|
-
}
|
|
145
|
-
const valueListInfo = qualifierForTypeahead ? valueListInfos.find(sub => sub.valueHelpQualifier === qualifierForTypeahead) || valueListInfos[0] : valueListInfos[0];
|
|
146
|
-
if (valueListInfo) {
|
|
147
|
-
ValueListHelper._addDescriptionInfosToPayload(payload, valueListInfo, metaModel);
|
|
148
|
-
}
|
|
149
|
-
};
|
|
150
126
|
_proto.createContent = function createContent() {
|
|
151
127
|
const metaContextPath = this.getMetaPathObject(this.metaPath, this.contextPath);
|
|
152
128
|
const metaModel = this._getOwner()?.getMetaModel(this.metaModel);
|
|
@@ -251,4 +227,4 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/buildingBlocks/BuildingB
|
|
|
251
227
|
_exports = ValueHelp;
|
|
252
228
|
return _exports;
|
|
253
229
|
}, false);
|
|
254
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYWx1ZUhlbHAiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJfZGVjMiIsImFzc29jaWF0aW9uIiwidHlwZSIsIl9kZWMzIiwicHJvcGVydHkiLCJfZGVjNCIsIl9kZWM1IiwiX2RlYzYiLCJfZGVjNyIsIl9kZWM4IiwiX2RlYzkiLCJfZGVjMTAiLCJfZGVjMTEiLCJfY2xhc3MiLCJfY2xhc3MyIiwiX0J1aWxkaW5nQmxvY2siLCJwcm9wcyIsIm90aGVycyIsIl90aGlzIiwiX2ZsZXhJZCIsImlkIiwiY2FsbCIsIl9pbml0aWFsaXplckRlZmluZVByb3BlcnR5IiwiX2Rlc2NyaXB0b3IiLCJfZGVzY3JpcHRvcjIiLCJfZGVzY3JpcHRvcjMiLCJfZGVzY3JpcHRvcjQiLCJfZGVzY3JpcHRvcjUiLCJfZGVzY3JpcHRvcjYiLCJfZGVzY3JpcHRvcjciLCJfZGVzY3JpcHRvcjgiLCJfZGVzY3JpcHRvcjkiLCJfZGVzY3JpcHRvcjEwIiwicmVxdWVzdEdyb3VwSWQiLCJjb2xsYWJvcmF0aW9uRW5hYmxlZCIsIl9leHBvcnRzIiwiX2luaGVyaXRzTG9vc2UiLCJnZXRWYWx1ZUhlbHBGb3JNZXRhUGF0aCIsInBhZ2VDb250cm9sbGVyIiwibWV0YVBhdGgiLCJjb250ZXh0UGF0aCIsIm1ldGFNb2RlbCIsInJlcXVpcmVzVmFsaWRhdGlvbiIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsImRlcGVuZGVudHMiLCJnZXRWaWV3IiwiZ2V0RGVwZW5kZW50cyIsInRhcmdldE1ldGFQYXRoIiwic3RhcnRzV2l0aCIsImZvdW5kRGVwIiwiZmluZCIsImNoaWxkIiwiaXNBIiwiY2hpbGRNZXRhUGF0aCIsImdldE1ldGFQYXRoIiwiY2hpbGRDb250ZXh0UGF0aCIsImdldENvbnRleHRQYXRoIiwiY2hpbGRUYXJnZXRQYXRoIiwidmFsdWVIZWxwIiwiZ2V0SWQiLCJpZFByZWZpeCIsImNyZWF0ZUlkIiwiYWRkRGVwZW5kZW50IiwiZ2V0Q29udGVudCIsInRhcmdldElkIiwiaW5uZXJWYWx1ZUhlbHAiLCJVSTVFbGVtZW50IiwiZ2V0RWxlbWVudEJ5SWQiLCJkZXN0cm95IiwiZ2V0UGFyZW50IiwiX3Byb3RvIiwicHJvdG90eXBlIiwib25NZXRhZGF0YUF2YWlsYWJsZSIsImNvbnRlbnQiLCJfZ2V0T3duZXIiLCJydW5Bc093bmVyIiwiY3JlYXRlQ29udGVudCIsInZoUGF5bG9hZCIsImdldFBheWxvYWQiLCJnZXRNZXRhTW9kZWwiLCJtZXRhQ29udGV4dFBhdGgiLCJnZXRNZXRhUGF0aE9iamVjdCIsInByb3BlcnR5UGF0aCIsImdldFBhdGgiLCJfcmVzb2x2ZVZhbHVlSGVscERlc2NyaXB0aW9uUGF0aCIsImVyciIsImVycm9yTWVzc2FnZSIsIkVycm9yIiwiU3RyaW5nIiwiTG9nIiwid2FybmluZyIsInBheWxvYWQiLCJ2YWx1ZUxpc3RJbmZvcyIsIlZhbHVlTGlzdEhlbHBlciIsImdldFZhbHVlTGlzdEluZm8iLCJxdWFsaWZpZXJGb3JUeXBlYWhlYWQiLCJkYXRhIiwidmFsdWVMaXN0SW5mbyIsInN1YiIsInZhbHVlSGVscFF1YWxpZmllciIsIl9hZGREZXNjcmlwdGlvbkluZm9zVG9QYXlsb2FkIiwiZW50aXR5U2V0T3JTaW5nbGV0b24iLCJnZXRDbG9zZXN0RW50aXR5U2V0IiwiaXNFbnRpdHlTZXQiLCJNb2RlbEhlbHBlciIsImlzQ29sbGFib3JhdGlvbkRyYWZ0U3VwcG9ydGVkIiwiY3JlYXRlQmluZGluZ0NvbnRleHQiLCJmaWx0ZXJGaWVsZFZhbHVlSGVscCIsIkZpZWxkSGVscGVyIiwidmFsdWVIZWxwUHJvcGVydHlGb3JGaWx0ZXJGaWVsZCIsInZhbHVlSGVscFByb3BlcnR5IiwidGVtcGxhdGVSZXN1bHQiLCJnZXRWYWx1ZUhlbHBUZW1wbGF0ZSIsInVzZVNlbWFudGljRGF0ZVJhbmdlIiwidXNlTXVsdGlWYWx1ZUZpZWxkIiwibmF2aWdhdGlvblByZWZpeCIsImNvbmRpdGlvbk1vZGVsIiwiQnVpbGRpbmdCbG9jayIsIl9hcHBseURlY29yYXRlZERlc2NyaXB0b3IiLCJjb25maWd1cmFibGUiLCJlbnVtZXJhYmxlIiwid3JpdGFibGUiLCJpbml0aWFsaXplciJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiVmFsdWVIZWxwLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEVuaGFuY2VXaXRoVUk1LCBQcm9wZXJ0aWVzT2YgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgeyBhc3NvY2lhdGlvbiwgZGVmaW5lVUk1Q2xhc3MsIHByb3BlcnR5IH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IEJ1aWxkaW5nQmxvY2sgZnJvbSBcInNhcC9mZS9jb3JlL2J1aWxkaW5nQmxvY2tzL0J1aWxkaW5nQmxvY2tcIjtcbmltcG9ydCBNb2RlbEhlbHBlciBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9Nb2RlbEhlbHBlclwiO1xuaW1wb3J0IHsgaXNFbnRpdHlTZXQgfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9UeXBlR3VhcmRzXCI7XG5pbXBvcnQgRmllbGRIZWxwZXIgZnJvbSBcInNhcC9mZS9tYWNyb3MvZmllbGQvRmllbGRIZWxwZXJcIjtcbmltcG9ydCB7IGdldFZhbHVlSGVscFRlbXBsYXRlIH0gZnJvbSBcInNhcC9mZS9tYWNyb3MvaW50ZXJuYWwvdmFsdWVoZWxwL1ZhbHVlSGVscFRlbXBsYXRpbmdcIjtcblxuaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgdHlwZSBQYWdlQ29udHJvbGxlciBmcm9tIFwic2FwL2ZlL2NvcmUvUGFnZUNvbnRyb2xsZXJcIjtcbmltcG9ydCB0eXBlIENvbnRyb2wgZnJvbSBcInNhcC91aS9jb3JlL0NvbnRyb2xcIjtcbmltcG9ydCBVSTVFbGVtZW50IGZyb20gXCJzYXAvdWkvY29yZS9FbGVtZW50XCI7XG5pbXBvcnQgdHlwZSBNRENWYWx1ZUhlbHAgZnJvbSBcInNhcC91aS9tZGMvVmFsdWVIZWxwXCI7XG5pbXBvcnQgdHlwZSBPRGF0YU1ldGFNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L09EYXRhTWV0YU1vZGVsXCI7XG5pbXBvcnQgdHlwZSB7IFZhbHVlSGVscFBheWxvYWQgfSBmcm9tIFwiLi9pbnRlcm5hbC92YWx1ZWhlbHAvVmFsdWVMaXN0SGVscGVyXCI7XG5pbXBvcnQgVmFsdWVMaXN0SGVscGVyIGZyb20gXCIuL2ludGVybmFsL3ZhbHVlaGVscC9WYWx1ZUxpc3RIZWxwZXJcIjtcblxuLyoqXG4gKiBCdWlsZGluZyBibG9jayBmb3IgY3JlYXRpbmcgYSBWYWx1ZUhlbHAgYmFzZWQgb24gdGhlIHByb3ZpZGVkIE9EYXRhIFY0IG1ldGFkYXRhLlxuICogQHByaXZhdGVcbiAqL1xuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLm1hY3Jvcy5WYWx1ZUhlbHBcIilcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFZhbHVlSGVscCBleHRlbmRzIEJ1aWxkaW5nQmxvY2s8TURDVmFsdWVIZWxwIHwgQ29udHJvbD4ge1xuXHQvKipcblx0ICogQSBwcmVmaXggdGhhdCBpcyBhZGRlZCB0byB0aGUgZ2VuZXJhdGVkIElEIG9mIHRoZSB2YWx1ZSBoZWxwLlxuXHQgKi9cblx0QGFzc29jaWF0aW9uKHsgdHlwZTogXCJzdHJpbmdcIiB9KVxuXHRpZFByZWZpeD86IHN0cmluZztcblxuXHQvKipcblx0ICogRGVmaW5lcyB0aGUgbWV0YWRhdGEgcGF0aCB0byB0aGUgcHJvcGVydHkuXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdG1ldGFQYXRoITogc3RyaW5nO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0Y29udGV4dFBhdGghOiBzdHJpbmc7XG5cblx0LyoqXG5cdCAqIEluZGljYXRvciB3aGV0aGVyIHRoZSB2YWx1ZSBoZWxwIGlzIGZvciBhIGZpbHRlciBmaWVsZC5cblx0ICovXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0Y29uZGl0aW9uTW9kZWwgPSBcIlwiO1xuXG5cdC8qKlxuXHQgKiBJbmRpY2F0ZXMgdGhhdCB0aGlzIGlzIGEgdmFsdWUgaGVscCBvZiBhIGZpbHRlciBmaWVsZC4gTmVjZXNzYXJ5IHRvIGRlY2lkZSBpZiBhXG5cdCAqIHZhbGlkYXRpb24gc2hvdWxkIG9jY3VyIG9uIHRoZSBiYWNrIGVuZCBvciBhbHJlYWR5IG9uIHRoZSBjbGllbnQuXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiB9KVxuXHRmaWx0ZXJGaWVsZFZhbHVlSGVscCA9IGZhbHNlO1xuXG5cdC8qKlxuXHQgKiBTcGVjaWZpZXMgdGhlIFNlbWF0aWMgRGF0ZSBSYW5nZSBvcHRpb24gZm9yIHRoZSBmaWx0ZXIgZmllbGQuXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiB9KVxuXHR1c2VTZW1hbnRpY0RhdGVSYW5nZSA9IHRydWU7XG5cblx0LyoqXG5cdCAqIFNwZWNpZmllcyB3aGV0aGVyIHRoZSBWYWx1ZUhlbHAgY2FuIGJlIHVzZWQgd2l0aCBhIE11bHRpVmFsdWVGaWVsZFxuXHQgKi9cblx0QHByb3BlcnR5KHsgdHlwZTogXCJib29sZWFuXCIgfSlcblx0dXNlTXVsdGlWYWx1ZUZpZWxkID0gZmFsc2U7XG5cblx0QHByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiB9KVxuXHRuYXZpZ2F0aW9uUHJlZml4Pzogc3RyaW5nO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhblwiIH0pXG5cdHJlcXVpcmVzVmFsaWRhdGlvbiA9IGZhbHNlO1xuXG5cdEBhc3NvY2lhdGlvbih7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuXHRfZmxleElkPzogc3RyaW5nO1xuXG5cdHJlcXVlc3RHcm91cElkOiBzdHJpbmcgfCB1bmRlZmluZWQgPSBcIiRhdXRvLldvcmtlcnNcIjtcblxuXHRjb2xsYWJvcmF0aW9uRW5hYmxlZCA9IGZhbHNlO1xuXG5cdHRhcmdldElkPzogc3RyaW5nO1xuXG5cdGNvbnN0cnVjdG9yKHByb3BzOiBQcm9wZXJ0aWVzT2Y8VmFsdWVIZWxwPiwgb3RoZXJzPzogUHJvcGVydGllc09mPFZhbHVlSGVscD4pIHtcblx0XHRpZiAocHJvcHMuX2ZsZXhJZCkge1xuXHRcdFx0cHJvcHMuaWQgPSBwcm9wcy5fZmxleElkICsgXCI6OkJsb2NrXCI7XG5cdFx0fVxuXHRcdHN1cGVyKHByb3BzLCBvdGhlcnMpO1xuXHR9XG5cblx0c3RhdGljIGdldFZhbHVlSGVscEZvck1ldGFQYXRoKFxuXHRcdHBhZ2VDb250cm9sbGVyOiBQYWdlQ29udHJvbGxlcixcblx0XHRtZXRhUGF0aDogc3RyaW5nLFxuXHRcdGNvbnRleHRQYXRoOiBzdHJpbmcgfCB1bmRlZmluZWQsXG5cdFx0bWV0YU1vZGVsOiBPRGF0YU1ldGFNb2RlbCB8IHVuZGVmaW5lZCxcblx0XHRyZXF1aXJlc1ZhbGlkYXRpb24gPSBmYWxzZVxuXHQpOiBWYWx1ZUhlbHAgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IGRlcGVuZGVudHMgPSBwYWdlQ29udHJvbGxlci5nZXRWaWV3KCk/LmdldERlcGVuZGVudHMoKTtcblx0XHRjb25zdCB0YXJnZXRNZXRhUGF0aCA9IG1ldGFQYXRoLnN0YXJ0c1dpdGgoXCIvXCIpID8gbWV0YVBhdGggOiBjb250ZXh0UGF0aCArIFwiL1wiICsgbWV0YVBhdGg7XG5cdFx0Y29uc3QgZm91bmREZXAgPSBkZXBlbmRlbnRzPy5maW5kKChjaGlsZCkgPT4ge1xuXHRcdFx0aWYgKGNoaWxkLmlzQTxFbmhhbmNlV2l0aFVJNTxWYWx1ZUhlbHA+PihcInNhcC5mZS5tYWNyb3MuVmFsdWVIZWxwXCIpICYmICFyZXF1aXJlc1ZhbGlkYXRpb24pIHtcblx0XHRcdFx0Y29uc3QgY2hpbGRNZXRhUGF0aCA9IGNoaWxkLmdldE1ldGFQYXRoKCk7XG5cdFx0XHRcdGNvbnN0IGNoaWxkQ29udGV4dFBhdGggPSBjaGlsZC5nZXRDb250ZXh0UGF0aCgpO1xuXHRcdFx0XHRjb25zdCBjaGlsZFRhcmdldFBhdGggPSBjaGlsZE1ldGFQYXRoLnN0YXJ0c1dpdGgoXCIvXCIpID8gY2hpbGRNZXRhUGF0aCA6IGNoaWxkQ29udGV4dFBhdGggKyBcIi9cIiArIGNoaWxkTWV0YVBhdGg7XG5cdFx0XHRcdHJldHVybiBjaGlsZFRhcmdldFBhdGggPT09IHRhcmdldE1ldGFQYXRoO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIGZhbHNlO1xuXHRcdH0pO1xuXHRcdGlmICghZm91bmREZXApIHtcblx0XHRcdGNvbnN0IHZhbHVlSGVscCA9IG5ldyBWYWx1ZUhlbHAoe1xuXHRcdFx0XHRtZXRhUGF0aDogbWV0YVBhdGgsXG5cdFx0XHRcdGNvbnRleHRQYXRoOiBjb250ZXh0UGF0aCxcblx0XHRcdFx0bWV0YU1vZGVsOiBtZXRhTW9kZWw/LmdldElkKCksXG5cdFx0XHRcdGlkUHJlZml4OiBwYWdlQ29udHJvbGxlci5nZXRWaWV3KCk/LmNyZWF0ZUlkKFwiRmllbGRWYWx1ZUhlbHBcIiksXG5cdFx0XHRcdHJlcXVpcmVzVmFsaWRhdGlvbjogcmVxdWlyZXNWYWxpZGF0aW9uXG5cdFx0XHR9KTtcblx0XHRcdHBhZ2VDb250cm9sbGVyLmdldFZpZXcoKS5hZGREZXBlbmRlbnQodmFsdWVIZWxwKTtcblx0XHRcdGlmICghdmFsdWVIZWxwLmdldENvbnRlbnQoKSAmJiB2YWx1ZUhlbHAudGFyZ2V0SWQpIHtcblx0XHRcdFx0Y29uc3QgaW5uZXJWYWx1ZUhlbHAgPSBVSTVFbGVtZW50LmdldEVsZW1lbnRCeUlkKHZhbHVlSGVscC50YXJnZXRJZCk7XG5cdFx0XHRcdHZhbHVlSGVscC5kZXN0cm95KCk7XG5cdFx0XHRcdHJldHVybiBpbm5lclZhbHVlSGVscD8uZ2V0UGFyZW50KCkgYXMgVmFsdWVIZWxwIHwgdW5kZWZpbmVkO1xuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gdmFsdWVIZWxwO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gZm91bmREZXAgYXMgVmFsdWVIZWxwIHwgdW5kZWZpbmVkO1xuXHRcdH1cblx0fVxuXG5cdG9uTWV0YWRhdGFBdmFpbGFibGUoKTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLmNvbnRlbnQpIHtcblx0XHRcdHRoaXMuX2dldE93bmVyKCk/LnJ1bkFzT3duZXIoYXN5bmMgKCkgPT4ge1xuXHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdHRoaXMuY29udGVudCA9IHRoaXMuY3JlYXRlQ29udGVudCgpO1xuXHRcdFx0XHRcdGNvbnN0IGNvbnRlbnQgPSB0aGlzLmNvbnRlbnQgYXMgTURDVmFsdWVIZWxwO1xuXHRcdFx0XHRcdGNvbnN0IHZoUGF5bG9hZCA9IGNvbnRlbnQ/LmdldFBheWxvYWQ/LigpIGFzIFZhbHVlSGVscFBheWxvYWQ7XG5cdFx0XHRcdFx0Y29uc3QgbWV0YU1vZGVsID0gdGhpcy5fZ2V0T3duZXIoKT8uZ2V0TWV0YU1vZGVsKCk7XG5cblx0XHRcdFx0XHRpZiAodmhQYXlsb2FkICYmIG1ldGFNb2RlbCkge1xuXHRcdFx0XHRcdFx0Y29uc3QgbWV0YUNvbnRleHRQYXRoID0gdGhpcy5nZXRNZXRhUGF0aE9iamVjdCh0aGlzLm1ldGFQYXRoLCB0aGlzLmNvbnRleHRQYXRoKTtcblx0XHRcdFx0XHRcdGNvbnN0IHByb3BlcnR5UGF0aCA9IG1ldGFDb250ZXh0UGF0aD8uZ2V0UGF0aCgpIGFzIHN0cmluZztcblx0XHRcdFx0XHRcdGF3YWl0IHRoaXMuX3Jlc29sdmVWYWx1ZUhlbHBEZXNjcmlwdGlvblBhdGgodmhQYXlsb2FkLCBtZXRhTW9kZWwsIHByb3BlcnR5UGF0aCwgY29udGVudCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9IGNhdGNoIChlcnIpIHtcblx0XHRcdFx0XHRjb25zdCBlcnJvck1lc3NhZ2UgPSBlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyciA6IG5ldyBFcnJvcihTdHJpbmcoZXJyKSk7XG5cdFx0XHRcdFx0TG9nLndhcm5pbmcoXCJGYWlsZWQgdG8gY3JlYXRlIGNvbnRlbnQgb3IgcmVzb2x2ZSBkZXNjcmlwdGlvbiBwYXRoXCIsIGVycm9yTWVzc2FnZSwgXCJzYXAuZmUubWFjcm9zLlZhbHVlSGVscFwiKTtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBhc3luYyBfcmVzb2x2ZVZhbHVlSGVscERlc2NyaXB0aW9uUGF0aChcblx0XHRwYXlsb2FkOiBWYWx1ZUhlbHBQYXlsb2FkLFxuXHRcdG1ldGFNb2RlbDogT0RhdGFNZXRhTW9kZWwsXG5cdFx0cHJvcGVydHlQYXRoOiBzdHJpbmcsXG5cdFx0Y29udGVudD86IENvbnRyb2wgfCBNRENWYWx1ZUhlbHBcblx0KTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0Y29uc3QgdmFsdWVMaXN0SW5mb3MgPSBhd2FpdCBWYWx1ZUxpc3RIZWxwZXIuZ2V0VmFsdWVMaXN0SW5mbyh1bmRlZmluZWQsIHByb3BlcnR5UGF0aCwgcGF5bG9hZCwgbWV0YU1vZGVsKTtcblxuXHRcdGxldCBxdWFsaWZpZXJGb3JUeXBlYWhlYWQgPSB0eXBlb2YgY29udGVudD8uZGF0YSA9PT0gXCJmdW5jdGlvblwiID8gY29udGVudC5kYXRhKFwidmFsdWVsaXN0Rm9yVmFsaWRhdGlvblwiKSB8fCBcIlwiIDogXCJcIjtcblxuXHRcdGlmIChxdWFsaWZpZXJGb3JUeXBlYWhlYWQgPT09IFwiIFwiKSB7XG5cdFx0XHRxdWFsaWZpZXJGb3JUeXBlYWhlYWQgPSBcIlwiO1xuXHRcdH1cblxuXHRcdGNvbnN0IHZhbHVlTGlzdEluZm8gPSBxdWFsaWZpZXJGb3JUeXBlYWhlYWRcblx0XHRcdD8gdmFsdWVMaXN0SW5mb3MuZmluZCgoc3ViKSA9PiBzdWIudmFsdWVIZWxwUXVhbGlmaWVyID09PSBxdWFsaWZpZXJGb3JUeXBlYWhlYWQpIHx8IHZhbHVlTGlzdEluZm9zWzBdXG5cdFx0XHQ6IHZhbHVlTGlzdEluZm9zWzBdO1xuXG5cdFx0aWYgKHZhbHVlTGlzdEluZm8pIHtcblx0XHRcdFZhbHVlTGlzdEhlbHBlci5fYWRkRGVzY3JpcHRpb25JbmZvc1RvUGF5bG9hZChwYXlsb2FkLCB2YWx1ZUxpc3RJbmZvLCBtZXRhTW9kZWwpO1xuXHRcdH1cblx0fVxuXG5cdGNyZWF0ZUNvbnRlbnQoKTogQ29udHJvbCB8IE1EQ1ZhbHVlSGVscCB8IHVuZGVmaW5lZCB7XG5cdFx0Y29uc3QgbWV0YUNvbnRleHRQYXRoID0gdGhpcy5nZXRNZXRhUGF0aE9iamVjdCh0aGlzLm1ldGFQYXRoLCB0aGlzLmNvbnRleHRQYXRoKTtcblx0XHRjb25zdCBtZXRhTW9kZWwgPSB0aGlzLl9nZXRPd25lcigpPy5nZXRNZXRhTW9kZWwodGhpcy5tZXRhTW9kZWwpO1xuXHRcdGlmIChtZXRhQ29udGV4dFBhdGggJiYgbWV0YU1vZGVsKSB7XG5cdFx0XHRjb25zdCBlbnRpdHlTZXRPclNpbmdsZXRvbiA9IG1ldGFDb250ZXh0UGF0aC5nZXRDbG9zZXN0RW50aXR5U2V0KCk7XG5cdFx0XHRpZiAoaXNFbnRpdHlTZXQoZW50aXR5U2V0T3JTaW5nbGV0b24pKSB7XG5cdFx0XHRcdHRoaXMuY29sbGFib3JhdGlvbkVuYWJsZWQgPSBNb2RlbEhlbHBlci5pc0NvbGxhYm9yYXRpb25EcmFmdFN1cHBvcnRlZChtZXRhTW9kZWwpO1xuXHRcdFx0fVxuXG5cdFx0XHRsZXQgbWV0YVBhdGggPSBtZXRhTW9kZWwuY3JlYXRlQmluZGluZ0NvbnRleHQobWV0YUNvbnRleHRQYXRoLmdldFBhdGgoKSk7XG5cdFx0XHRpZiAobWV0YVBhdGgpIHtcblx0XHRcdFx0aWYgKHRoaXMuZmlsdGVyRmllbGRWYWx1ZUhlbHApIHtcblx0XHRcdFx0XHRtZXRhUGF0aCA9IG1ldGFNb2RlbC5jcmVhdGVCaW5kaW5nQ29udGV4dChGaWVsZEhlbHBlci52YWx1ZUhlbHBQcm9wZXJ0eUZvckZpbHRlckZpZWxkKG1ldGFQYXRoKSkhO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdG1ldGFQYXRoID0gbWV0YU1vZGVsLmNyZWF0ZUJpbmRpbmdDb250ZXh0KEZpZWxkSGVscGVyLnZhbHVlSGVscFByb3BlcnR5KG1ldGFQYXRoKSkhO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGNvbnN0IGlkUHJlZml4ID0gdGhpcy5pZFByZWZpeCA/PyBcIlZhbHVlSGVscFwiO1xuXHRcdFx0XHRjb25zdCB0ZW1wbGF0ZVJlc3VsdCA9IGdldFZhbHVlSGVscFRlbXBsYXRlKG1ldGFQYXRoLCB7XG5cdFx0XHRcdFx0bWV0YVBhdGg6IG1ldGFNb2RlbC5jcmVhdGVCaW5kaW5nQ29udGV4dChtZXRhQ29udGV4dFBhdGguZ2V0UGF0aCgpKSEsXG5cdFx0XHRcdFx0Y29udGV4dFBhdGg6IG1ldGFNb2RlbC5jcmVhdGVCaW5kaW5nQ29udGV4dChtZXRhQ29udGV4dFBhdGguZ2V0Q29udGV4dFBhdGgoKSkhLFxuXHRcdFx0XHRcdGZpbHRlckZpZWxkVmFsdWVIZWxwOiB0aGlzLmZpbHRlckZpZWxkVmFsdWVIZWxwLFxuXHRcdFx0XHRcdHVzZVNlbWFudGljRGF0ZVJhbmdlOiB0aGlzLnVzZVNlbWFudGljRGF0ZVJhbmdlLFxuXHRcdFx0XHRcdHVzZU11bHRpVmFsdWVGaWVsZDogdGhpcy51c2VNdWx0aVZhbHVlRmllbGQsXG5cdFx0XHRcdFx0bmF2aWdhdGlvblByZWZpeDogdGhpcy5uYXZpZ2F0aW9uUHJlZml4LFxuXHRcdFx0XHRcdHJlcXVpcmVzVmFsaWRhdGlvbjogdGhpcy5yZXF1aXJlc1ZhbGlkYXRpb24sXG5cdFx0XHRcdFx0X2ZsZXhJZDogdGhpcy5fZmxleElkLFxuXHRcdFx0XHRcdGlkUHJlZml4OiBpZFByZWZpeCxcblx0XHRcdFx0XHRjb25kaXRpb25Nb2RlbDogdGhpcy5jb25kaXRpb25Nb2RlbCxcblx0XHRcdFx0XHRyZXF1ZXN0R3JvdXBJZDogdGhpcy5yZXF1ZXN0R3JvdXBJZCxcblx0XHRcdFx0XHRjb2xsYWJvcmF0aW9uRW5hYmxlZDogdGhpcy5jb2xsYWJvcmF0aW9uRW5hYmxlZFxuXHRcdFx0XHR9KTtcblx0XHRcdFx0aWYgKHR5cGVvZiB0ZW1wbGF0ZVJlc3VsdCA9PT0gXCJzdHJpbmdcIikge1xuXHRcdFx0XHRcdHRoaXMudGFyZ2V0SWQgPSB0ZW1wbGF0ZVJlc3VsdDtcblx0XHRcdFx0XHRyZXR1cm4gdW5kZWZpbmVkO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHJldHVybiB0ZW1wbGF0ZVJlc3VsdDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUJBO0FBQ0E7QUFDQTtBQUNBO0VBSEEsSUFLcUJBLFNBQVMsSUFBQUMsSUFBQSxHQUQ3QkMsY0FBYyxDQUFDLHlCQUF5QixDQUFDLEVBQUFDLEtBQUEsR0FLeENDLFdBQVcsQ0FBQztJQUFFQyxJQUFJLEVBQUU7RUFBUyxDQUFDLENBQUMsRUFBQUMsS0FBQSxHQU0vQkMsUUFBUSxDQUFDO0lBQUVGLElBQUksRUFBRTtFQUFTLENBQUMsQ0FBQyxFQUFBRyxLQUFBLEdBRzVCRCxRQUFRLENBQUM7SUFBRUYsSUFBSSxFQUFFO0VBQVMsQ0FBQyxDQUFDLEVBQUFJLEtBQUEsR0FNNUJGLFFBQVEsQ0FBQztJQUFFRixJQUFJLEVBQUU7RUFBUyxDQUFDLENBQUMsRUFBQUssS0FBQSxHQU81QkgsUUFBUSxDQUFDO0lBQUVGLElBQUksRUFBRTtFQUFVLENBQUMsQ0FBQyxFQUFBTSxLQUFBLEdBTTdCSixRQUFRLENBQUM7SUFBRUYsSUFBSSxFQUFFO0VBQVUsQ0FBQyxDQUFDLEVBQUFPLEtBQUEsR0FNN0JMLFFBQVEsQ0FBQztJQUFFRixJQUFJLEVBQUU7RUFBVSxDQUFDLENBQUMsRUFBQVEsS0FBQSxHQUc3Qk4sUUFBUSxDQUFDO0lBQUVGLElBQUksRUFBRTtFQUFTLENBQUMsQ0FBQyxFQUFBUyxNQUFBLEdBRzVCUCxRQUFRLENBQUM7SUFBRUYsSUFBSSxFQUFFO0VBQVUsQ0FBQyxDQUFDLEVBQUFVLE1BQUEsR0FHN0JYLFdBQVcsQ0FBQztJQUFFQyxJQUFJLEVBQUU7RUFBUyxDQUFDLENBQUMsRUFBQUosSUFBQSxDQUFBZSxNQUFBLElB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
|
|
230
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWYWx1ZUhlbHAiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJfZGVjMiIsImFzc29jaWF0aW9uIiwidHlwZSIsIl9kZWMzIiwicHJvcGVydHkiLCJfZGVjNCIsIl9kZWM1IiwiX2RlYzYiLCJfZGVjNyIsIl9kZWM4IiwiX2RlYzkiLCJfZGVjMTAiLCJfZGVjMTEiLCJfY2xhc3MiLCJfY2xhc3MyIiwiX0J1aWxkaW5nQmxvY2siLCJwcm9wcyIsIm90aGVycyIsIl90aGlzIiwiX2ZsZXhJZCIsImlkIiwiY2FsbCIsIl9pbml0aWFsaXplckRlZmluZVByb3BlcnR5IiwiX2Rlc2NyaXB0b3IiLCJfZGVzY3JpcHRvcjIiLCJfZGVzY3JpcHRvcjMiLCJfZGVzY3JpcHRvcjQiLCJfZGVzY3JpcHRvcjUiLCJfZGVzY3JpcHRvcjYiLCJfZGVzY3JpcHRvcjciLCJfZGVzY3JpcHRvcjgiLCJfZGVzY3JpcHRvcjkiLCJfZGVzY3JpcHRvcjEwIiwicmVxdWVzdEdyb3VwSWQiLCJjb2xsYWJvcmF0aW9uRW5hYmxlZCIsIl9leHBvcnRzIiwiX2luaGVyaXRzTG9vc2UiLCJnZXRWYWx1ZUhlbHBGb3JNZXRhUGF0aCIsInBhZ2VDb250cm9sbGVyIiwibWV0YVBhdGgiLCJjb250ZXh0UGF0aCIsIm1ldGFNb2RlbCIsInJlcXVpcmVzVmFsaWRhdGlvbiIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsImRlcGVuZGVudHMiLCJnZXRWaWV3IiwiZ2V0RGVwZW5kZW50cyIsInRhcmdldE1ldGFQYXRoIiwic3RhcnRzV2l0aCIsImZvdW5kRGVwIiwiZmluZCIsImNoaWxkIiwiaXNBIiwiY2hpbGRNZXRhUGF0aCIsImdldE1ldGFQYXRoIiwiY2hpbGRDb250ZXh0UGF0aCIsImdldENvbnRleHRQYXRoIiwiY2hpbGRUYXJnZXRQYXRoIiwidmFsdWVIZWxwIiwiZ2V0SWQiLCJpZFByZWZpeCIsImNyZWF0ZUlkIiwiYWRkRGVwZW5kZW50IiwiZ2V0Q29udGVudCIsInRhcmdldElkIiwiaW5uZXJWYWx1ZUhlbHAiLCJVSTVFbGVtZW50IiwiZ2V0RWxlbWVudEJ5SWQiLCJkZXN0cm95IiwiZ2V0UGFyZW50IiwiX3Byb3RvIiwicHJvdG90eXBlIiwib25NZXRhZGF0YUF2YWlsYWJsZSIsImNvbnRlbnQiLCJfZ2V0T3duZXIiLCJydW5Bc093bmVyIiwiY3JlYXRlQ29udGVudCIsIm1ldGFDb250ZXh0UGF0aCIsImdldE1ldGFQYXRoT2JqZWN0IiwiZ2V0TWV0YU1vZGVsIiwiZW50aXR5U2V0T3JTaW5nbGV0b24iLCJnZXRDbG9zZXN0RW50aXR5U2V0IiwiaXNFbnRpdHlTZXQiLCJNb2RlbEhlbHBlciIsImlzQ29sbGFib3JhdGlvbkRyYWZ0U3VwcG9ydGVkIiwiY3JlYXRlQmluZGluZ0NvbnRleHQiLCJnZXRQYXRoIiwiZmlsdGVyRmllbGRWYWx1ZUhlbHAiLCJGaWVsZEhlbHBlciIsInZhbHVlSGVscFByb3BlcnR5Rm9yRmlsdGVyRmllbGQiLCJ2YWx1ZUhlbHBQcm9wZXJ0eSIsInRlbXBsYXRlUmVzdWx0IiwiZ2V0VmFsdWVIZWxwVGVtcGxhdGUiLCJ1c2VTZW1hbnRpY0RhdGVSYW5nZSIsInVzZU11bHRpVmFsdWVGaWVsZCIsIm5hdmlnYXRpb25QcmVmaXgiLCJjb25kaXRpb25Nb2RlbCIsIkJ1aWxkaW5nQmxvY2siLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yIiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsIndyaXRhYmxlIiwiaW5pdGlhbGl6ZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIlZhbHVlSGVscC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBFbmhhbmNlV2l0aFVJNSwgUHJvcGVydGllc09mIH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IHsgYXNzb2NpYXRpb24sIGRlZmluZVVJNUNsYXNzLCBwcm9wZXJ0eSB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCBCdWlsZGluZ0Jsb2NrIGZyb20gXCJzYXAvZmUvY29yZS9idWlsZGluZ0Jsb2Nrcy9CdWlsZGluZ0Jsb2NrXCI7XG5pbXBvcnQgTW9kZWxIZWxwZXIgZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvTW9kZWxIZWxwZXJcIjtcbmltcG9ydCB7IGlzRW50aXR5U2V0IH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvVHlwZUd1YXJkc1wiO1xuaW1wb3J0IEZpZWxkSGVscGVyIGZyb20gXCJzYXAvZmUvbWFjcm9zL2ZpZWxkL0ZpZWxkSGVscGVyXCI7XG5pbXBvcnQgeyBnZXRWYWx1ZUhlbHBUZW1wbGF0ZSB9IGZyb20gXCJzYXAvZmUvbWFjcm9zL2ludGVybmFsL3ZhbHVlaGVscC9WYWx1ZUhlbHBUZW1wbGF0aW5nXCI7XG5cbmltcG9ydCB0eXBlIFBhZ2VDb250cm9sbGVyIGZyb20gXCJzYXAvZmUvY29yZS9QYWdlQ29udHJvbGxlclwiO1xuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IFVJNUVsZW1lbnQgZnJvbSBcInNhcC91aS9jb3JlL0VsZW1lbnRcIjtcbmltcG9ydCB0eXBlIE1EQ1ZhbHVlSGVscCBmcm9tIFwic2FwL3VpL21kYy9WYWx1ZUhlbHBcIjtcbmltcG9ydCB0eXBlIE9EYXRhTWV0YU1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFNZXRhTW9kZWxcIjtcblxuLyoqXG4gKiBCdWlsZGluZyBibG9jayBmb3IgY3JlYXRpbmcgYSBWYWx1ZUhlbHAgYmFzZWQgb24gdGhlIHByb3ZpZGVkIE9EYXRhIFY0IG1ldGFkYXRhLlxuICogQHByaXZhdGVcbiAqL1xuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLm1hY3Jvcy5WYWx1ZUhlbHBcIilcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFZhbHVlSGVscCBleHRlbmRzIEJ1aWxkaW5nQmxvY2s8TURDVmFsdWVIZWxwIHwgQ29udHJvbD4ge1xuXHQvKipcblx0ICogQSBwcmVmaXggdGhhdCBpcyBhZGRlZCB0byB0aGUgZ2VuZXJhdGVkIElEIG9mIHRoZSB2YWx1ZSBoZWxwLlxuXHQgKi9cblx0QGFzc29jaWF0aW9uKHsgdHlwZTogXCJzdHJpbmdcIiB9KVxuXHRpZFByZWZpeD86IHN0cmluZztcblxuXHQvKipcblx0ICogRGVmaW5lcyB0aGUgbWV0YWRhdGEgcGF0aCB0byB0aGUgcHJvcGVydHkuXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdG1ldGFQYXRoITogc3RyaW5nO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0Y29udGV4dFBhdGghOiBzdHJpbmc7XG5cblx0LyoqXG5cdCAqIEluZGljYXRvciB3aGV0aGVyIHRoZSB2YWx1ZSBoZWxwIGlzIGZvciBhIGZpbHRlciBmaWVsZC5cblx0ICovXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0Y29uZGl0aW9uTW9kZWwgPSBcIlwiO1xuXG5cdC8qKlxuXHQgKiBJbmRpY2F0ZXMgdGhhdCB0aGlzIGlzIGEgdmFsdWUgaGVscCBvZiBhIGZpbHRlciBmaWVsZC4gTmVjZXNzYXJ5IHRvIGRlY2lkZSBpZiBhXG5cdCAqIHZhbGlkYXRpb24gc2hvdWxkIG9jY3VyIG9uIHRoZSBiYWNrIGVuZCBvciBhbHJlYWR5IG9uIHRoZSBjbGllbnQuXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiB9KVxuXHRmaWx0ZXJGaWVsZFZhbHVlSGVscCA9IGZhbHNlO1xuXG5cdC8qKlxuXHQgKiBTcGVjaWZpZXMgdGhlIFNlbWF0aWMgRGF0ZSBSYW5nZSBvcHRpb24gZm9yIHRoZSBmaWx0ZXIgZmllbGQuXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiB9KVxuXHR1c2VTZW1hbnRpY0RhdGVSYW5nZSA9IHRydWU7XG5cblx0LyoqXG5cdCAqIFNwZWNpZmllcyB3aGV0aGVyIHRoZSBWYWx1ZUhlbHAgY2FuIGJlIHVzZWQgd2l0aCBhIE11bHRpVmFsdWVGaWVsZFxuXHQgKi9cblx0QHByb3BlcnR5KHsgdHlwZTogXCJib29sZWFuXCIgfSlcblx0dXNlTXVsdGlWYWx1ZUZpZWxkID0gZmFsc2U7XG5cblx0QHByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiB9KVxuXHRuYXZpZ2F0aW9uUHJlZml4Pzogc3RyaW5nO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhblwiIH0pXG5cdHJlcXVpcmVzVmFsaWRhdGlvbiA9IGZhbHNlO1xuXG5cdEBhc3NvY2lhdGlvbih7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuXHRfZmxleElkPzogc3RyaW5nO1xuXG5cdHJlcXVlc3RHcm91cElkOiBzdHJpbmcgfCB1bmRlZmluZWQgPSBcIiRhdXRvLldvcmtlcnNcIjtcblxuXHRjb2xsYWJvcmF0aW9uRW5hYmxlZCA9IGZhbHNlO1xuXG5cdHRhcmdldElkPzogc3RyaW5nO1xuXG5cdGNvbnN0cnVjdG9yKHByb3BzOiBQcm9wZXJ0aWVzT2Y8VmFsdWVIZWxwPiwgb3RoZXJzPzogUHJvcGVydGllc09mPFZhbHVlSGVscD4pIHtcblx0XHRpZiAocHJvcHMuX2ZsZXhJZCkge1xuXHRcdFx0cHJvcHMuaWQgPSBwcm9wcy5fZmxleElkICsgXCI6OkJsb2NrXCI7XG5cdFx0fVxuXHRcdHN1cGVyKHByb3BzLCBvdGhlcnMpO1xuXHR9XG5cblx0c3RhdGljIGdldFZhbHVlSGVscEZvck1ldGFQYXRoKFxuXHRcdHBhZ2VDb250cm9sbGVyOiBQYWdlQ29udHJvbGxlcixcblx0XHRtZXRhUGF0aDogc3RyaW5nLFxuXHRcdGNvbnRleHRQYXRoOiBzdHJpbmcgfCB1bmRlZmluZWQsXG5cdFx0bWV0YU1vZGVsOiBPRGF0YU1ldGFNb2RlbCB8IHVuZGVmaW5lZCxcblx0XHRyZXF1aXJlc1ZhbGlkYXRpb24gPSBmYWxzZVxuXHQpOiBWYWx1ZUhlbHAgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IGRlcGVuZGVudHMgPSBwYWdlQ29udHJvbGxlci5nZXRWaWV3KCk/LmdldERlcGVuZGVudHMoKTtcblx0XHRjb25zdCB0YXJnZXRNZXRhUGF0aCA9IG1ldGFQYXRoLnN0YXJ0c1dpdGgoXCIvXCIpID8gbWV0YVBhdGggOiBjb250ZXh0UGF0aCArIFwiL1wiICsgbWV0YVBhdGg7XG5cdFx0Y29uc3QgZm91bmREZXAgPSBkZXBlbmRlbnRzPy5maW5kKChjaGlsZCkgPT4ge1xuXHRcdFx0aWYgKGNoaWxkLmlzQTxFbmhhbmNlV2l0aFVJNTxWYWx1ZUhlbHA+PihcInNhcC5mZS5tYWNyb3MuVmFsdWVIZWxwXCIpICYmICFyZXF1aXJlc1ZhbGlkYXRpb24pIHtcblx0XHRcdFx0Y29uc3QgY2hpbGRNZXRhUGF0aCA9IGNoaWxkLmdldE1ldGFQYXRoKCk7XG5cdFx0XHRcdGNvbnN0IGNoaWxkQ29udGV4dFBhdGggPSBjaGlsZC5nZXRDb250ZXh0UGF0aCgpO1xuXHRcdFx0XHRjb25zdCBjaGlsZFRhcmdldFBhdGggPSBjaGlsZE1ldGFQYXRoLnN0YXJ0c1dpdGgoXCIvXCIpID8gY2hpbGRNZXRhUGF0aCA6IGNoaWxkQ29udGV4dFBhdGggKyBcIi9cIiArIGNoaWxkTWV0YVBhdGg7XG5cdFx0XHRcdHJldHVybiBjaGlsZFRhcmdldFBhdGggPT09IHRhcmdldE1ldGFQYXRoO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIGZhbHNlO1xuXHRcdH0pO1xuXHRcdGlmICghZm91bmREZXApIHtcblx0XHRcdGNvbnN0IHZhbHVlSGVscCA9IG5ldyBWYWx1ZUhlbHAoe1xuXHRcdFx0XHRtZXRhUGF0aDogbWV0YVBhdGgsXG5cdFx0XHRcdGNvbnRleHRQYXRoOiBjb250ZXh0UGF0aCxcblx0XHRcdFx0bWV0YU1vZGVsOiBtZXRhTW9kZWw/LmdldElkKCksXG5cdFx0XHRcdGlkUHJlZml4OiBwYWdlQ29udHJvbGxlci5nZXRWaWV3KCk/LmNyZWF0ZUlkKFwiRmllbGRWYWx1ZUhlbHBcIiksXG5cdFx0XHRcdHJlcXVpcmVzVmFsaWRhdGlvbjogcmVxdWlyZXNWYWxpZGF0aW9uXG5cdFx0XHR9KTtcblx0XHRcdHBhZ2VDb250cm9sbGVyLmdldFZpZXcoKS5hZGREZXBlbmRlbnQodmFsdWVIZWxwKTtcblx0XHRcdGlmICghdmFsdWVIZWxwLmdldENvbnRlbnQoKSAmJiB2YWx1ZUhlbHAudGFyZ2V0SWQpIHtcblx0XHRcdFx0Y29uc3QgaW5uZXJWYWx1ZUhlbHAgPSBVSTVFbGVtZW50LmdldEVsZW1lbnRCeUlkKHZhbHVlSGVscC50YXJnZXRJZCk7XG5cdFx0XHRcdHZhbHVlSGVscC5kZXN0cm95KCk7XG5cdFx0XHRcdHJldHVybiBpbm5lclZhbHVlSGVscD8uZ2V0UGFyZW50KCkgYXMgVmFsdWVIZWxwIHwgdW5kZWZpbmVkO1xuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gdmFsdWVIZWxwO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gZm91bmREZXAgYXMgVmFsdWVIZWxwIHwgdW5kZWZpbmVkO1xuXHRcdH1cblx0fVxuXG5cdG9uTWV0YWRhdGFBdmFpbGFibGUoKTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLmNvbnRlbnQpIHtcblx0XHRcdHRoaXMuX2dldE93bmVyKCk/LnJ1bkFzT3duZXIoKCkgPT4ge1xuXHRcdFx0XHR0aGlzLmNvbnRlbnQgPSB0aGlzLmNyZWF0ZUNvbnRlbnQoKTtcblx0XHRcdH0pO1xuXHRcdH1cblx0fVxuXG5cdGNyZWF0ZUNvbnRlbnQoKTogQ29udHJvbCB8IE1EQ1ZhbHVlSGVscCB8IHVuZGVmaW5lZCB7XG5cdFx0Y29uc3QgbWV0YUNvbnRleHRQYXRoID0gdGhpcy5nZXRNZXRhUGF0aE9iamVjdCh0aGlzLm1ldGFQYXRoLCB0aGlzLmNvbnRleHRQYXRoKTtcblx0XHRjb25zdCBtZXRhTW9kZWwgPSB0aGlzLl9nZXRPd25lcigpPy5nZXRNZXRhTW9kZWwodGhpcy5tZXRhTW9kZWwpO1xuXHRcdGlmIChtZXRhQ29udGV4dFBhdGggJiYgbWV0YU1vZGVsKSB7XG5cdFx0XHRjb25zdCBlbnRpdHlTZXRPclNpbmdsZXRvbiA9IG1ldGFDb250ZXh0UGF0aC5nZXRDbG9zZXN0RW50aXR5U2V0KCk7XG5cdFx0XHRpZiAoaXNFbnRpdHlTZXQoZW50aXR5U2V0T3JTaW5nbGV0b24pKSB7XG5cdFx0XHRcdHRoaXMuY29sbGFib3JhdGlvbkVuYWJsZWQgPSBNb2RlbEhlbHBlci5pc0NvbGxhYm9yYXRpb25EcmFmdFN1cHBvcnRlZChtZXRhTW9kZWwpO1xuXHRcdFx0fVxuXG5cdFx0XHRsZXQgbWV0YVBhdGggPSBtZXRhTW9kZWwuY3JlYXRlQmluZGluZ0NvbnRleHQobWV0YUNvbnRleHRQYXRoLmdldFBhdGgoKSk7XG5cdFx0XHRpZiAobWV0YVBhdGgpIHtcblx0XHRcdFx0aWYgKHRoaXMuZmlsdGVyRmllbGRWYWx1ZUhlbHApIHtcblx0XHRcdFx0XHRtZXRhUGF0aCA9IG1ldGFNb2RlbC5jcmVhdGVCaW5kaW5nQ29udGV4dChGaWVsZEhlbHBlci52YWx1ZUhlbHBQcm9wZXJ0eUZvckZpbHRlckZpZWxkKG1ldGFQYXRoKSkhO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdG1ldGFQYXRoID0gbWV0YU1vZGVsLmNyZWF0ZUJpbmRpbmdDb250ZXh0KEZpZWxkSGVscGVyLnZhbHVlSGVscFByb3BlcnR5KG1ldGFQYXRoKSkhO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGNvbnN0IGlkUHJlZml4ID0gdGhpcy5pZFByZWZpeCA/PyBcIlZhbHVlSGVscFwiO1xuXHRcdFx0XHRjb25zdCB0ZW1wbGF0ZVJlc3VsdCA9IGdldFZhbHVlSGVscFRlbXBsYXRlKG1ldGFQYXRoLCB7XG5cdFx0XHRcdFx0bWV0YVBhdGg6IG1ldGFNb2RlbC5jcmVhdGVCaW5kaW5nQ29udGV4dChtZXRhQ29udGV4dFBhdGguZ2V0UGF0aCgpKSEsXG5cdFx0XHRcdFx0Y29udGV4dFBhdGg6IG1ldGFNb2RlbC5jcmVhdGVCaW5kaW5nQ29udGV4dChtZXRhQ29udGV4dFBhdGguZ2V0Q29udGV4dFBhdGgoKSkhLFxuXHRcdFx0XHRcdGZpbHRlckZpZWxkVmFsdWVIZWxwOiB0aGlzLmZpbHRlckZpZWxkVmFsdWVIZWxwLFxuXHRcdFx0XHRcdHVzZVNlbWFudGljRGF0ZVJhbmdlOiB0aGlzLnVzZVNlbWFudGljRGF0ZVJhbmdlLFxuXHRcdFx0XHRcdHVzZU11bHRpVmFsdWVGaWVsZDogdGhpcy51c2VNdWx0aVZhbHVlRmllbGQsXG5cdFx0XHRcdFx0bmF2aWdhdGlvblByZWZpeDogdGhpcy5uYXZpZ2F0aW9uUHJlZml4LFxuXHRcdFx0XHRcdHJlcXVpcmVzVmFsaWRhdGlvbjogdGhpcy5yZXF1aXJlc1ZhbGlkYXRpb24sXG5cdFx0XHRcdFx0X2ZsZXhJZDogdGhpcy5fZmxleElkLFxuXHRcdFx0XHRcdGlkUHJlZml4OiBpZFByZWZpeCxcblx0XHRcdFx0XHRjb25kaXRpb25Nb2RlbDogdGhpcy5jb25kaXRpb25Nb2RlbCxcblx0XHRcdFx0XHRyZXF1ZXN0R3JvdXBJZDogdGhpcy5yZXF1ZXN0R3JvdXBJZCxcblx0XHRcdFx0XHRjb2xsYWJvcmF0aW9uRW5hYmxlZDogdGhpcy5jb2xsYWJvcmF0aW9uRW5hYmxlZFxuXHRcdFx0XHR9KTtcblx0XHRcdFx0aWYgKHR5cGVvZiB0ZW1wbGF0ZVJlc3VsdCA9PT0gXCJzdHJpbmdcIikge1xuXHRcdFx0XHRcdHRoaXMudGFyZ2V0SWQgPSB0ZW1wbGF0ZVJlc3VsdDtcblx0XHRcdFx0XHRyZXR1cm4gdW5kZWZpbmVkO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHJldHVybiB0ZW1wbGF0ZVJlc3VsdDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBY0E7QUFDQTtBQUNBO0FBQ0E7RUFIQSxJQUtxQkEsU0FBUyxJQUFBQyxJQUFBLEdBRDdCQyxjQUFjLENBQUMseUJBQXlCLENBQUMsRUFBQUMsS0FBQSxHQUt4Q0MsV0FBVyxDQUFDO0lBQUVDLElBQUksRUFBRTtF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
|
|
@@ -6,14 +6,11 @@ import { isEntitySet } from "sap/fe/core/helpers/TypeGuards";
|
|
|
6
6
|
import FieldHelper from "sap/fe/macros/field/FieldHelper";
|
|
7
7
|
import { getValueHelpTemplate } from "sap/fe/macros/internal/valuehelp/ValueHelpTemplating";
|
|
8
8
|
|
|
9
|
-
import Log from "sap/base/Log";
|
|
10
9
|
import type PageController from "sap/fe/core/PageController";
|
|
11
10
|
import type Control from "sap/ui/core/Control";
|
|
12
11
|
import UI5Element from "sap/ui/core/Element";
|
|
13
12
|
import type MDCValueHelp from "sap/ui/mdc/ValueHelp";
|
|
14
13
|
import type ODataMetaModel from "sap/ui/model/odata/v4/ODataMetaModel";
|
|
15
|
-
import type { ValueHelpPayload } from "./internal/valuehelp/ValueListHelper";
|
|
16
|
-
import ValueListHelper from "./internal/valuehelp/ValueListHelper";
|
|
17
14
|
|
|
18
15
|
/**
|
|
19
16
|
* Building block for creating a ValueHelp based on the provided OData V4 metadata.
|
|
@@ -125,49 +122,12 @@ export default class ValueHelp extends BuildingBlock<MDCValueHelp | Control> {
|
|
|
125
122
|
|
|
126
123
|
onMetadataAvailable(): void {
|
|
127
124
|
if (!this.content) {
|
|
128
|
-
this._getOwner()?.runAsOwner(
|
|
129
|
-
|
|
130
|
-
this.content = this.createContent();
|
|
131
|
-
const content = this.content as MDCValueHelp;
|
|
132
|
-
const vhPayload = content?.getPayload?.() as ValueHelpPayload;
|
|
133
|
-
const metaModel = this._getOwner()?.getMetaModel();
|
|
134
|
-
|
|
135
|
-
if (vhPayload && metaModel) {
|
|
136
|
-
const metaContextPath = this.getMetaPathObject(this.metaPath, this.contextPath);
|
|
137
|
-
const propertyPath = metaContextPath?.getPath() as string;
|
|
138
|
-
await this._resolveValueHelpDescriptionPath(vhPayload, metaModel, propertyPath, content);
|
|
139
|
-
}
|
|
140
|
-
} catch (err) {
|
|
141
|
-
const errorMessage = err instanceof Error ? err : new Error(String(err));
|
|
142
|
-
Log.warning("Failed to create content or resolve description path", errorMessage, "sap.fe.macros.ValueHelp");
|
|
143
|
-
}
|
|
125
|
+
this._getOwner()?.runAsOwner(() => {
|
|
126
|
+
this.content = this.createContent();
|
|
144
127
|
});
|
|
145
128
|
}
|
|
146
129
|
}
|
|
147
130
|
|
|
148
|
-
private async _resolveValueHelpDescriptionPath(
|
|
149
|
-
payload: ValueHelpPayload,
|
|
150
|
-
metaModel: ODataMetaModel,
|
|
151
|
-
propertyPath: string,
|
|
152
|
-
content?: Control | MDCValueHelp
|
|
153
|
-
): Promise<void> {
|
|
154
|
-
const valueListInfos = await ValueListHelper.getValueListInfo(undefined, propertyPath, payload, metaModel);
|
|
155
|
-
|
|
156
|
-
let qualifierForTypeahead = typeof content?.data === "function" ? content.data("valuelistForValidation") || "" : "";
|
|
157
|
-
|
|
158
|
-
if (qualifierForTypeahead === " ") {
|
|
159
|
-
qualifierForTypeahead = "";
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
const valueListInfo = qualifierForTypeahead
|
|
163
|
-
? valueListInfos.find((sub) => sub.valueHelpQualifier === qualifierForTypeahead) || valueListInfos[0]
|
|
164
|
-
: valueListInfos[0];
|
|
165
|
-
|
|
166
|
-
if (valueListInfo) {
|
|
167
|
-
ValueListHelper._addDescriptionInfosToPayload(payload, valueListInfo, metaModel);
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
|
|
171
131
|
createContent(): Control | MDCValueHelp | undefined {
|
|
172
132
|
const metaContextPath = this.getMetaPathObject(this.metaPath, this.contextPath);
|
|
173
133
|
const metaModel = this._getOwner()?.getMetaModel(this.metaModel);
|