@sapui5/sap.fe.macros 1.139.0 → 1.139.4
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/coreUI/CreateDialog.js +2 -2
- package/src/sap/fe/macros/coreUI/CreateDialog.tsx +1 -1
- package/src/sap/fe/macros/coreUI/OperationParameterDialog.js +8 -8
- package/src/sap/fe/macros/coreUI/OperationParameterDialog.tsx +7 -7
- 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/filterBar/FilterBarAPI.js +5 -3
- package/src/sap/fe/macros/filterBar/FilterBarAPI.ts +13 -3
- package/src/sap/fe/macros/filterBar/mixin/FilterBarAPIStateHandler.js +4 -3
- package/src/sap/fe/macros/filterBar/mixin/FilterBarAPIStateHandler.ts +3 -2
- 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/helpers/DataPointTemplating.js +6 -2
- package/src/sap/fe/macros/internal/helpers/DataPointTemplating.ts +5 -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 +15 -5
- package/src/sap/fe/macros/mdc/adapter/StateHelper.ts +21 -5
- 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
- package/src/sap/fe/macros/visualfilters/VisualFilter.js +20 -2
- package/src/sap/fe/macros/visualfilters/VisualFilter.tsx +28 -6
|
@@ -9,13 +9,19 @@ import type {
|
|
|
9
9
|
} from "@sap-ux/vocabularies-types/vocabularies/UI";
|
|
10
10
|
import Log from "sap/base/Log";
|
|
11
11
|
import deepClone from "sap/base/util/deepClone";
|
|
12
|
-
import {
|
|
12
|
+
import {
|
|
13
|
+
compileExpression,
|
|
14
|
+
isPathInModelExpression,
|
|
15
|
+
resolveBindingString,
|
|
16
|
+
type CompiledBindingToolkitExpression
|
|
17
|
+
} from "sap/fe/base/BindingToolkit";
|
|
13
18
|
import type { PropertiesOf, XMLEventHolder } from "sap/fe/base/ClassSupport";
|
|
14
19
|
import { aggregation, defineUI5Class, event, implementInterface, mixin, property, xmlEventHandler } from "sap/fe/base/ClassSupport";
|
|
15
20
|
import jsx from "sap/fe/base/jsx-runtime/jsx";
|
|
16
21
|
import CommonUtils from "sap/fe/core/CommonUtils";
|
|
17
22
|
import type IRowBindingInterface from "sap/fe/core/IRowBindingInterface";
|
|
18
23
|
import type PageController from "sap/fe/core/PageController";
|
|
24
|
+
import type ResourceModel from "sap/fe/core/ResourceModel";
|
|
19
25
|
import type BuildingBlock from "sap/fe/core/buildingBlocks/BuildingBlock";
|
|
20
26
|
import { parseXMLString, xml } from "sap/fe/core/buildingBlocks/templating/BuildingBlockTemplateProcessor";
|
|
21
27
|
import NotApplicableContextDialog from "sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog";
|
|
@@ -48,6 +54,7 @@ import { type DisplayMode } from "sap/fe/core/templating/DisplayModeFormatter";
|
|
|
48
54
|
import * as UIFormatters from "sap/fe/core/templating/UIFormatters";
|
|
49
55
|
import type { CollectionBindingInfo, EventHandler } from "sap/fe/macros/CollectionBindingInfo";
|
|
50
56
|
import MacroAPI from "sap/fe/macros/MacroAPI";
|
|
57
|
+
import type FilterBar from "sap/fe/macros/controls/FilterBar";
|
|
51
58
|
import type ISingleSectionContributor from "sap/fe/macros/controls/section/ISingleSectionContributor";
|
|
52
59
|
import type { ConsumerData } from "sap/fe/macros/controls/section/ISingleSectionContributor";
|
|
53
60
|
import * as FieldTemplating from "sap/fe/macros/field/FieldTemplating";
|
|
@@ -93,7 +100,6 @@ import { TitleLevel } from "sap/ui/core/library";
|
|
|
93
100
|
import Message from "sap/ui/core/message/Message";
|
|
94
101
|
import type MessageType from "sap/ui/core/message/MessageType";
|
|
95
102
|
import XMLPreprocessor from "sap/ui/core/util/XMLPreprocessor";
|
|
96
|
-
import type FilterBar from "sap/ui/mdc/FilterBar";
|
|
97
103
|
import type {
|
|
98
104
|
default as MDCTable,
|
|
99
105
|
MDCTablePropertyInfo as PropertyInfo,
|
|
@@ -1524,6 +1530,13 @@ class TableAPI extends MacroAPI implements ISingleSectionContributor, IRowBindin
|
|
|
1524
1530
|
}
|
|
1525
1531
|
): Promise<unknown> {
|
|
1526
1532
|
parameters.model = oEvent.getSource().getModel() as ODataModel;
|
|
1533
|
+
const labelExpression = resolveBindingString(parameters.label, "string");
|
|
1534
|
+
if (isPathInModelExpression(labelExpression) && (labelExpression.modelName === "i18n" || labelExpression.modelName === "@i18n")) {
|
|
1535
|
+
//resolveBindingString(parameters.label, "string")
|
|
1536
|
+
parameters.label =
|
|
1537
|
+
(oEvent.getSource().getModel(labelExpression.modelName) as ResourceModel).getProperty(labelExpression.path) ??
|
|
1538
|
+
parameters.label;
|
|
1539
|
+
}
|
|
1527
1540
|
let executeAction = true;
|
|
1528
1541
|
if (parameters.notApplicableContexts && parameters.notApplicableContexts.length > 0) {
|
|
1529
1542
|
// If we have non applicable contexts, we need to open a dialog to ask the user if he wants to continue
|
|
@@ -115,10 +115,10 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/helpers/SizeHelper", "sap/fe/core/he
|
|
|
115
115
|
* @returns {object} Object containing the width of the label and the width of the property.
|
|
116
116
|
*/
|
|
117
117
|
|
|
118
|
-
getWidthForDataField: function (dataField, showDataFieldsLabel, properties, convertedMetaData, widthIncludingColumnHeader) {
|
|
118
|
+
getWidthForDataField: function (dataField, showDataFieldsLabel, properties, convertedMetaData, widthIncludingColumnHeader, dataModelObjectPath) {
|
|
119
119
|
const oTargetedProperty = dataField.Value?.$target,
|
|
120
120
|
oTextArrangementTarget = oTargetedProperty?.annotations?.Common?.Text,
|
|
121
|
-
displayMode = getDisplayMode(dataField.Value?.$target);
|
|
121
|
+
displayMode = getDisplayMode(dataField.Value?.$target, dataModelObjectPath.targetEntityType);
|
|
122
122
|
let nPropertyWidth = 0,
|
|
123
123
|
fLabelWidth = 0;
|
|
124
124
|
if (oTargetedProperty) {
|
|
@@ -145,4 +145,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/helpers/SizeHelper", "sap/fe/core/he
|
|
|
145
145
|
};
|
|
146
146
|
return TableSizeHelper;
|
|
147
147
|
}, false);
|
|
148
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUYWJsZVNpemVIZWxwZXIiLCJnZXRNRENDb2x1bW5XaWR0aEZyb21EYXRhRmllbGQiLCJkYXRhRmllbGQiLCJwcm9wZXJ0aWVzIiwiY29udmVydGVkTWV0YURhdGEiLCJ3aWR0aEluY2x1ZGluZ0NvbHVtbkhlYWRlciIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInByb3BlcnR5IiwiZmluZCIsInByb3AiLCJhbm5vdGF0aW9uUGF0aCIsInJlc29sdmVQYXRoIiwidGFyZ2V0IiwiZnVsbHlRdWFsaWZpZWROYW1lIiwiZ2V0TURDQ29sdW1uV2lkdGhGcm9tUHJvcGVydHkiLCJpc1NvcnRhYmxlQ29sdW1uIiwiaXNDb2x1bW5SZXF1aXJlZCIsIm1XaWR0aENhbGN1bGF0aW9uIiwiT2JqZWN0IiwiYXNzaWduIiwiaGVhZGVyR2FwIiwiZ2FwIiwidHJ1bmNhdGVMYWJlbCIsImV4Y2x1ZGVQcm9wZXJ0aWVzIiwicmVxdWlyZWQiLCJ2aXN1YWxTZXR0aW5ncyIsIndpZHRoQ2FsY3VsYXRpb24iLCJ0eXBlcyIsInByb3BlcnR5SW5mb3MiLCJtYXAiLCJwcm9wTmFtZSIsIl9wcm9wZXJ0eSIsImtleSIsInByb3BlcnR5VHlwZUNvbmZpZyIsImRhdGFUeXBlIiwidHlwZUNvbmZpZyIsIlR5cGVNYXAiLCJnZXRUeXBlQ29uZmlnIiwiZm9ybWF0T3B0aW9ucyIsImNvbnN0cmFpbnRzIiwidHlwZUluc3RhbmNlIiwiZmlsdGVyIiwiaXRlbSIsInNpemUiLCJUYWJsZVV0aWwiLCJjYWxjQ29sdW1uV2lkdGgiLCJsYWJlbCIsIkxvZyIsImVycm9yIiwicGFyc2VGbG9hdCIsInJlcGxhY2UiLCJnZXRXaWR0aEZvckRhdGFGaWVsZEZvckFubm90YXRpb24iLCJzaG93RGF0YUZpZWxkc0xhYmVsIiwib1RhcmdldGVkUHJvcGVydHkiLCJpc0Fubm90YXRpb25PZlR5cGUiLCJUYXJnZXQiLCIkdGFyZ2V0IiwiblByb3BlcnR5V2lkdGgiLCJmTGFiZWxXaWR0aCIsIlZpc3VhbGl6YXRpb24iLCJuYlN0YXJzIiwiVGFyZ2V0VmFsdWUiLCJwYXJzZUludCIsInNMYWJlbCIsIkxhYmVsIiwidG9TdHJpbmciLCJTaXplSGVscGVyIiwiZ2V0QnV0dG9uV2lkdGgiLCJpc1BhdGhBbm5vdGF0aW9uRXhwcmVzc2lvbiIsImZuIiwibGFiZWxXaWR0aCIsInByb3BlcnR5V2lkdGgiLCJnZXRXaWR0aEZvckRhdGFGaWVsZCIsIlZhbHVlIiwib1RleHRBcnJhbmdlbWVudFRhcmdldCIsImFubm90YXRpb25zIiwiQ29tbW9uIiwiVGV4dCIsImRpc3BsYXlNb2RlIiwiZ2V0RGlzcGxheU1vZGUiLCIkVHlwZSJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiVGFibGVTaXplSGVscGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUHJvcGVydHksIFNlcnZpY2VPYmplY3QgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXNcIjtcbmltcG9ydCB0eXBlIHsgQ29udmVydGVkTWV0YWRhdGEgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvRWRtXCI7XG5pbXBvcnQgdHlwZSB7IENvbnRhY3RUeXBlIH0gZnJvbSBcIkBzYXAtdXgvdm9jYWJ1bGFyaWVzLXR5cGVzL3ZvY2FidWxhcmllcy9Db21tdW5pY2F0aW9uXCI7XG5pbXBvcnQgeyBDb21tdW5pY2F0aW9uQW5ub3RhdGlvblR5cGVzIH0gZnJvbSBcIkBzYXAtdXgvdm9jYWJ1bGFyaWVzLXR5cGVzL3ZvY2FidWxhcmllcy9Db21tdW5pY2F0aW9uXCI7XG5pbXBvcnQgdHlwZSB7XG5cdERhdGFGaWVsZCxcblx0RGF0YUZpZWxkRm9yQWN0aW9uLFxuXHREYXRhRmllbGRGb3JBbm5vdGF0aW9uLFxuXHREYXRhRmllbGRGb3JJbnRlbnRCYXNlZE5hdmlnYXRpb24sXG5cdERhdGFQb2ludFR5cGVcbn0gZnJvbSBcIkBzYXAtdXgvdm9jYWJ1bGFyaWVzLXR5cGVzL3ZvY2FidWxhcmllcy9VSVwiO1xuaW1wb3J0IHsgVUlBbm5vdGF0aW9uVHlwZXMgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvdm9jYWJ1bGFyaWVzL1VJXCI7XG5pbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBTaXplSGVscGVyIGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL1NpemVIZWxwZXJcIjtcbmltcG9ydCB7IGlzQW5ub3RhdGlvbk9mVHlwZSwgaXNQYXRoQW5ub3RhdGlvbkV4cHJlc3Npb24gfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9UeXBlR3VhcmRzXCI7XG5pbXBvcnQgeyBnZXREaXNwbGF5TW9kZSB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL0Rpc3BsYXlNb2RlRm9ybWF0dGVyXCI7XG5pbXBvcnQgdHlwZSB7IEVuaGFuY2VkRkVQcm9wZXJ0eUluZm8gfSBmcm9tIFwic2FwL2ZlL21hY3Jvcy90YWJsZS9UYWJsZUFQSVwiO1xuaW1wb3J0IFRhYmxlVXRpbCBmcm9tIFwic2FwL20vdGFibGUvVXRpbFwiO1xuaW1wb3J0IHR5cGUgVHlwZUNvbmZpZyBmcm9tIFwic2FwL3VpL21kYy9UeXBlQ29uZmlnXCI7XG5pbXBvcnQgVHlwZU1hcCBmcm9tIFwic2FwL3VpL21kYy9vZGF0YS92NC9UeXBlTWFwXCI7XG5cbmNvbnN0IFRhYmxlU2l6ZUhlbHBlciA9IHtcblx0LyoqXG5cdCAqIE1ldGhvZCB0byBjYWxjdWxhdGUgdGhlIHdpZHRoIG9mIHRoZSBNRENDb2x1bW4uXG5cdCAqIEBwYXJhbSBkYXRhRmllbGQgVGhlIFByb3BlcnR5IG9yIFByb3BlcnR5SW5mbyBPYmplY3QgZm9yIHdoaWNoIHRoZSB3aWR0aCB3aWxsIGJlIGNhbGN1bGF0ZWQuXG5cdCAqIEBwYXJhbSBwcm9wZXJ0aWVzIEFuIGFycmF5IGNvbnRhaW5pbmcgYWxsIHByb3BlcnR5IGRlZmluaXRpb25zIChvcHRpb25hbClcblx0ICogQHBhcmFtIGNvbnZlcnRlZE1ldGFEYXRhXG5cdCAqIEBwYXJhbSB3aWR0aEluY2x1ZGluZ0NvbHVtbkhlYWRlciBJbmRpY2F0ZXMgaWYgdGhlIGxhYmVsIHNob3VsZCBiZSBhIHBhcnQgb2YgdGhlIHdpZHRoIGNhbGN1bGF0aW9uXG5cdCAqIEBwcml2YXRlXG5cdCAqIEBhbGlhcyBzYXAuZmUubWFjcm9zLlRhYmxlU2l6ZUhlbHBlclxuXHQgKiBAcmV0dXJucyBUaGUgd2lkdGggb2YgdGhlIGNvbHVtbi5cblx0ICovXG5cdGdldE1EQ0NvbHVtbldpZHRoRnJvbURhdGFGaWVsZDogZnVuY3Rpb24gKFxuXHRcdGRhdGFGaWVsZDogRGF0YUZpZWxkIHwgUHJvcGVydHkgfCB1bmRlZmluZWQsXG5cdFx0cHJvcGVydGllczogRW5oYW5jZWRGRVByb3BlcnR5SW5mb1tdLFxuXHRcdGNvbnZlcnRlZE1ldGFEYXRhOiBDb252ZXJ0ZWRNZXRhZGF0YSxcblx0XHR3aWR0aEluY2x1ZGluZ0NvbHVtbkhlYWRlciA9IGZhbHNlXG5cdCk6IG51bWJlciB7XG5cdFx0Y29uc3QgcHJvcGVydHkgPSBwcm9wZXJ0aWVzLmZpbmQoXG5cdFx0XHQocHJvcCkgPT5cblx0XHRcdFx0cHJvcC5hbm5vdGF0aW9uUGF0aCAmJlxuXHRcdFx0XHRjb252ZXJ0ZWRNZXRhRGF0YS5yZXNvbHZlUGF0aDxTZXJ2aWNlT2JqZWN0Pihwcm9wLmFubm90YXRpb25QYXRoKT8udGFyZ2V0Py5mdWxseVF1YWxpZmllZE5hbWUgPT09XG5cdFx0XHRcdFx0ZGF0YUZpZWxkPy5mdWxseVF1YWxpZmllZE5hbWVcblx0XHQpO1xuXHRcdHJldHVybiBwcm9wZXJ0eSA/IHRoaXMuZ2V0TURDQ29sdW1uV2lkdGhGcm9tUHJvcGVydHkocHJvcGVydHksIHByb3BlcnRpZXMsIHdpZHRoSW5jbHVkaW5nQ29sdW1uSGVhZGVyKSA6IDA7XG5cdH0sXG5cblx0LyoqXG5cdCAqICBNZXRob2QgdG8gY2FsY3VsYXRlIHRoZSB3aWR0aCBvZiB0aGUgTURDQ29sdW1uLlxuXHQgKiBAcGFyYW0gcHJvcGVydHkgVGhlIFByb3BlcnR5SW5mbyBvYmplY3QgZm9yIHdoaWNoIHRoZSB3aWR0aCBpcyBjYWxjdWxhdGVkXG5cdCAqIEBwYXJhbSBwcm9wZXJ0aWVzICBBbiBhcnJheSBjb250YWluaW5nIGFsbCBwcm9wZXJ0eSBkZWZpbml0aW9ucyAob3B0aW9uYWwpXG5cdCAqIEBwYXJhbSB3aWR0aEluY2x1ZGluZ0NvbHVtbkhlYWRlciBJbmRpY2F0ZXMgaWYgdGhlIGxhYmVsIGlzIHBhcnQgb2YgdGhlIHdpZHRoIGNhbGN1bGF0aW9uXG5cdCAqIEBwYXJhbSBpc1NvcnRhYmxlQ29sdW1uIEluZGljYXRlcyBpZiB0aGUgY29sdW1uIGlzIHNvcnRhYmxlXG5cdCAqIEBwYXJhbSBpc0NvbHVtblJlcXVpcmVkIEluZGljYXRlcyBpZiB0aGUgY29sdW1uIGlzIHJlcXVpcmVkXG5cdCAqIEByZXR1cm5zIFRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLlxuXHQgKi9cblx0Z2V0TURDQ29sdW1uV2lkdGhGcm9tUHJvcGVydHk6IGZ1bmN0aW9uIChcblx0XHRwcm9wZXJ0eTogRW5oYW5jZWRGRVByb3BlcnR5SW5mbyxcblx0XHRwcm9wZXJ0aWVzOiBFbmhhbmNlZEZFUHJvcGVydHlJbmZvW10sXG5cdFx0d2lkdGhJbmNsdWRpbmdDb2x1bW5IZWFkZXIgPSBmYWxzZSxcblx0XHRpc1NvcnRhYmxlQ29sdW1uID0gZmFsc2UsXG5cdFx0aXNDb2x1bW5SZXF1aXJlZCA9IGZhbHNlXG5cdCk6IG51bWJlciB7XG5cdFx0Y29uc3QgbVdpZHRoQ2FsY3VsYXRpb24gPSBPYmplY3QuYXNzaWduKFxuXHRcdFx0e1xuXHRcdFx0XHRoZWFkZXJHYXA6IHdpZHRoSW5jbHVkaW5nQ29sdW1uSGVhZGVyICYmIGlzU29ydGFibGVDb2x1bW4sXG5cdFx0XHRcdGdhcDogMCxcblx0XHRcdFx0dHJ1bmNhdGVMYWJlbDogIXdpZHRoSW5jbHVkaW5nQ29sdW1uSGVhZGVyLFxuXHRcdFx0XHRleGNsdWRlUHJvcGVydGllczogW10sXG5cdFx0XHRcdHJlcXVpcmVkOiBpc0NvbHVtblJlcXVpcmVkXG5cdFx0XHR9LFxuXHRcdFx0cHJvcGVydHkudmlzdWFsU2V0dGluZ3M/LndpZHRoQ2FsY3VsYXRpb25cblx0XHQpO1xuXG5cdFx0bGV0IHR5cGVzO1xuXHRcdGlmIChwcm9wZXJ0eS5wcm9wZXJ0eUluZm9zPy5sZW5ndGgpIHtcblx0XHRcdHR5cGVzID0gcHJvcGVydHkucHJvcGVydHlJbmZvc1xuXHRcdFx0XHQubWFwKChwcm9wTmFtZSkgPT4ge1xuXHRcdFx0XHRcdGNvbnN0IHByb3AgPSBwcm9wZXJ0aWVzLmZpbmQoKF9wcm9wZXJ0eSkgPT4gX3Byb3BlcnR5LmtleSA9PT0gcHJvcE5hbWUpO1xuXHRcdFx0XHRcdC8vYWRkIHRoZSB0eXBlQ29uZmlnIHRvIHRoZSBwcm9wZXJ0aWVzIGFzIGl0J3Mgbm90IGF2YWlsYWJsZSBpbiB0aGUgdGFibGUgdmFsdWUgaGVscFxuXHRcdFx0XHRcdGNvbnN0IHByb3BlcnR5VHlwZUNvbmZpZyA9XG5cdFx0XHRcdFx0XHRwcm9wICYmIHByb3AuZGF0YVR5cGUgJiYgIXByb3AudHlwZUNvbmZpZ1xuXHRcdFx0XHRcdFx0XHQ/IFR5cGVNYXAuZ2V0VHlwZUNvbmZpZyhwcm9wLmRhdGFUeXBlLCBwcm9wLmZvcm1hdE9wdGlvbnMsIHByb3AuY29uc3RyYWludHMpXG5cdFx0XHRcdFx0XHRcdDogbnVsbDtcblx0XHRcdFx0XHRyZXR1cm4gcHJvcGVydHlUeXBlQ29uZmlnID8gcHJvcGVydHlUeXBlQ29uZmlnLnR5cGVJbnN0YW5jZSA6IHByb3A/LnR5cGVDb25maWc/LnR5cGVJbnN0YW5jZTtcblx0XHRcdFx0fSlcblx0XHRcdFx0LmZpbHRlcigoaXRlbSkgPT4gaXRlbSk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGxldCBwcm9wZXJ0eVR5cGVDb25maWc6IFR5cGVDb25maWcgfCBudWxsID0gbnVsbDtcblx0XHRcdC8vYWRkIHRoZSB0eXBlQ29uZmlnIHRvIHRoZSBwcm9wZXJ0aWVzIGFzIGl0J3Mgbm90IGF2YWlsYWJsZSBpbiB0aGUgdGFibGUgdmFsdWUgaGVscFxuXHRcdFx0aWYgKHByb3BlcnR5LmRhdGFUeXBlICYmICFwcm9wZXJ0eS50eXBlQ29uZmlnKSB7XG5cdFx0XHRcdHByb3BlcnR5VHlwZUNvbmZpZyA9IFR5cGVNYXAuZ2V0VHlwZUNvbmZpZyhwcm9wZXJ0eS5kYXRhVHlwZSwgcHJvcGVydHkuZm9ybWF0T3B0aW9ucywgcHJvcGVydHkuY29uc3RyYWludHMpO1xuXHRcdFx0fVxuXHRcdFx0aWYgKHByb3BlcnR5LnR5cGVDb25maWc/LnR5cGVJbnN0YW5jZSB8fCBwcm9wZXJ0eVR5cGVDb25maWcpIHtcblx0XHRcdFx0dHlwZXMgPSBwcm9wZXJ0eVR5cGVDb25maWcgPyBbcHJvcGVydHlUeXBlQ29uZmlnLnR5cGVJbnN0YW5jZV0gOiBbcHJvcGVydHkudHlwZUNvbmZpZz8udHlwZUluc3RhbmNlXTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Y29uc3Qgc2l6ZSA9IHR5cGVzID8gVGFibGVVdGlsLmNhbGNDb2x1bW5XaWR0aCh0eXBlcywgcHJvcGVydHkubGFiZWwsIG1XaWR0aENhbGN1bGF0aW9uKSA6IG51bGw7XG5cdFx0aWYgKCFzaXplKSB7XG5cdFx0XHRMb2cuZXJyb3IoYENhbm5vdCBjb21wdXRlIHRoZSBjb2x1bW4gd2lkdGggZm9yIHByb3BlcnR5OiAke3Byb3BlcnR5LmtleX1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHNpemUgPyBwYXJzZUZsb2F0KHNpemUucmVwbGFjZShcIlJlbVwiLCBcIlwiKSkgOiAwO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBNZXRob2QgdG8gY2FsY3VsYXRlIHRoZSAgd2lkdGggb2YgYSBEYXRhRmllbGRBbm5vdGF0aW9uIG9iamVjdCBjb250YWluZWQgaW4gYSBmaWVsZEdyb3VwLlxuXHQgKiBAcGFyYW0gZGF0YUZpZWxkIERhdGFGaWVsZEFubm90YXRpb24gb2JqZWN0LlxuXHQgKiBAcGFyYW0gd2lkdGhJbmNsdWRpbmdDb2x1bW5IZWFkZXIgSW5kaWNhdGVzIGlmIHRoZSBjb2x1bW4gaGVhZGVyIHNob3VsZCBiZSBhIHBhcnQgb2YgdGhlIHdpZHRoIGNhbGN1bGF0aW9uLlxuXHQgKiBAcGFyYW0gcHJvcGVydGllcyBBcnJheSBjb250YWluaW5nIGFsbCBQcm9wZXJ0eUluZm8gb2JqZWN0cy5cblx0ICogQHBhcmFtIGNvbnZlcnRlZE1ldGFEYXRhXG5cdCAqIEBwYXJhbSBzaG93RGF0YUZpZWxkc0xhYmVsIExhYmVsIGlzIGRpc3BsYXllZCBpbnNpZGUgdGhlIGZpZWxkXG5cdCAqIEBwcml2YXRlXG5cdCAqIEBhbGlhcyBzYXAuZmUubWFjcm9zLlRhYmxlU2l6ZUhlbHBlclxuXHQgKiBAcmV0dXJucyBPYmplY3QgY29udGFpbmluZyB0aGUgd2lkdGggb2YgdGhlIGxhYmVsIGFuZCB0aGUgd2lkdGggb2YgdGhlIHByb3BlcnR5LlxuXHQgKi9cblx0Z2V0V2lkdGhGb3JEYXRhRmllbGRGb3JBbm5vdGF0aW9uOiBmdW5jdGlvbiAoXG5cdFx0ZGF0YUZpZWxkOiBEYXRhRmllbGRGb3JBbm5vdGF0aW9uIHwgRGF0YUZpZWxkRm9yQWN0aW9uIHwgRGF0YUZpZWxkRm9ySW50ZW50QmFzZWROYXZpZ2F0aW9uIHwgdW5kZWZpbmVkLFxuXHRcdHdpZHRoSW5jbHVkaW5nQ29sdW1uSGVhZGVyPzogYm9vbGVhbixcblx0XHRwcm9wZXJ0aWVzPzogRW5oYW5jZWRGRVByb3BlcnR5SW5mb1tdLFxuXHRcdGNvbnZlcnRlZE1ldGFEYXRhPzogQ29udmVydGVkTWV0YWRhdGEsXG5cdFx0c2hvd0RhdGFGaWVsZHNMYWJlbCA9IGZhbHNlXG5cdCk6IHsgbGFiZWxXaWR0aDogbnVtYmVyOyBwcm9wZXJ0eVdpZHRoOiBudW1iZXIgfSB7XG5cdFx0Y29uc3Qgb1RhcmdldGVkUHJvcGVydHkgPSBpc0Fubm90YXRpb25PZlR5cGU8RGF0YUZpZWxkRm9yQW5ub3RhdGlvbj4oZGF0YUZpZWxkLCBVSUFubm90YXRpb25UeXBlcy5EYXRhRmllbGRGb3JBbm5vdGF0aW9uKVxuXHRcdFx0PyAoZGF0YUZpZWxkPy5UYXJnZXQ/LiR0YXJnZXQgYXMgRGF0YVBvaW50VHlwZSB8IENvbnRhY3RUeXBlIHwgdW5kZWZpbmVkKVxuXHRcdFx0OiB1bmRlZmluZWQ7XG5cdFx0bGV0IG5Qcm9wZXJ0eVdpZHRoID0gMCxcblx0XHRcdGZMYWJlbFdpZHRoID0gMDtcblx0XHRpZiAoaXNBbm5vdGF0aW9uT2ZUeXBlPERhdGFQb2ludFR5cGU+KG9UYXJnZXRlZFByb3BlcnR5LCBVSUFubm90YXRpb25UeXBlcy5EYXRhUG9pbnRUeXBlKSAmJiBvVGFyZ2V0ZWRQcm9wZXJ0eT8uVmlzdWFsaXphdGlvbikge1xuXHRcdFx0c3dpdGNoIChvVGFyZ2V0ZWRQcm9wZXJ0eS5WaXN1YWxpemF0aW9uKSB7XG5cdFx0XHRcdGNhc2UgXCJVSS5WaXN1YWxpemF0aW9uVHlwZS9SYXRpbmdcIjpcblx0XHRcdFx0XHRjb25zdCBuYlN0YXJzID0gb1RhcmdldGVkUHJvcGVydHkuVGFyZ2V0VmFsdWU7XG5cdFx0XHRcdFx0blByb3BlcnR5V2lkdGggPSBwYXJzZUludChuYlN0YXJzLCAxMCkgKiAxLjM3NTtcblx0XHRcdFx0XHRicmVhaztcblx0XHRcdFx0Y2FzZSBcIlVJLlZpc3VhbGl6YXRpb25UeXBlL1Byb2dyZXNzXCI6XG5cdFx0XHRcdGRlZmF1bHQ6XG5cdFx0XHRcdFx0blByb3BlcnR5V2lkdGggPSA1O1xuXHRcdFx0fVxuXHRcdFx0Y29uc3Qgc0xhYmVsID0gb1RhcmdldGVkUHJvcGVydHkgPyAob1RhcmdldGVkUHJvcGVydHkgYXMgeyBsYWJlbD86IHN0cmluZyB9KS5sYWJlbCA6IGRhdGFGaWVsZD8uTGFiZWw/LnRvU3RyaW5nKCkgfHwgXCJcIjtcblx0XHRcdGZMYWJlbFdpZHRoID0gc2hvd0RhdGFGaWVsZHNMYWJlbCAmJiBzTGFiZWwgPyBTaXplSGVscGVyLmdldEJ1dHRvbldpZHRoKHNMYWJlbCkgOiAwO1xuXHRcdH0gZWxzZSBpZiAoXG5cdFx0XHRjb252ZXJ0ZWRNZXRhRGF0YSAmJlxuXHRcdFx0cHJvcGVydGllcyAmJlxuXHRcdFx0aXNBbm5vdGF0aW9uT2ZUeXBlPENvbnRhY3RUeXBlPihvVGFyZ2V0ZWRQcm9wZXJ0eSwgQ29tbXVuaWNhdGlvbkFubm90YXRpb25UeXBlcy5Db250YWN0VHlwZSkgJiZcblx0XHRcdGlzUGF0aEFubm90YXRpb25FeHByZXNzaW9uKG9UYXJnZXRlZFByb3BlcnR5LmZuKVxuXHRcdCkge1xuXHRcdFx0blByb3BlcnR5V2lkdGggPSB0aGlzLmdldE1EQ0NvbHVtbldpZHRoRnJvbURhdGFGaWVsZChcblx0XHRcdFx0b1RhcmdldGVkUHJvcGVydHkuZm4uJHRhcmdldCxcblx0XHRcdFx0cHJvcGVydGllcyxcblx0XHRcdFx0Y29udmVydGVkTWV0YURhdGEsXG5cdFx0XHRcdHdpZHRoSW5jbHVkaW5nQ29sdW1uSGVhZGVyXG5cdFx0XHQpO1xuXHRcdH1cblx0XHRyZXR1cm4geyBsYWJlbFdpZHRoOiBmTGFiZWxXaWR0aCwgcHJvcGVydHlXaWR0aDogblByb3BlcnR5V2lkdGggfTtcblx0fSxcblxuXHQvKipcblx0ICogTWV0aG9kIHRvIGNhbGN1bGF0ZSB0aGUgd2lkdGggb2YgYSBEYXRhRmllbGQgb2JqZWN0LlxuXHQgKiBAcGFyYW0gZGF0YUZpZWxkIERhdGFGaWVsZEFubm90YXRpb24gb2JqZWN0LlxuXHQgKiBAcGFyYW0gc2hvd0RhdGFGaWVsZHNMYWJlbCBMYWJlbCBpcyBkaXNwbGF5ZWQgaW5zaWRlIHRoZSBmaWVsZC5cblx0ICogQHBhcmFtIHByb3BlcnRpZXMgQXJyYXkgY29udGFpbmluZyBhbGwgUHJvcGVydHlJbmZvIG9iamVjdHMuXG5cdCAqIEBwYXJhbSBjb252ZXJ0ZWRNZXRhRGF0YSBDb250ZXh0IE9iamVjdCBvZiB0aGUgcGFyZW50IHByb3BlcnR5LlxuXHQgKiBAcHJpdmF0ZVxuXHQgKiBAYWxpYXMgc2FwLmZlLm1hY3Jvcy5UYWJsZVNpemVIZWxwZXJcblx0ICogQHJldHVybnMge29iamVjdH0gT2JqZWN0IGNvbnRhaW5pbmcgdGhlIHdpZHRoIG9mIHRoZSBsYWJlbCBhbmQgdGhlIHdpZHRoIG9mIHRoZSBwcm9wZXJ0eS5cblx0ICovXG5cblx0Z2V0V2lkdGhGb3JEYXRhRmllbGQ6IGZ1bmN0aW9uIChcblx0XHRkYXRhRmllbGQ6IERhdGFGaWVsZCxcblx0XHRzaG93RGF0YUZpZWxkc0xhYmVsOiBib29sZWFuLFxuXHRcdHByb3BlcnRpZXM6IEVuaGFuY2VkRkVQcm9wZXJ0eUluZm9bXSxcblx0XHRjb252ZXJ0ZWRNZXRhRGF0YTogQ29udmVydGVkTWV0YWRhdGEsXG5cdFx0d2lkdGhJbmNsdWRpbmdDb2x1bW5IZWFkZXI6IGJvb2xlYW5cblx0KTogeyBsYWJlbFdpZHRoOiBudW1iZXI7IHByb3BlcnR5V2lkdGg6IG51bWJlciB9IHtcblx0XHRjb25zdCBvVGFyZ2V0ZWRQcm9wZXJ0eSA9IGRhdGFGaWVsZC5WYWx1ZT8uJHRhcmdldCxcblx0XHRcdG9UZXh0QXJyYW5nZW1lbnRUYXJnZXQgPSBvVGFyZ2V0ZWRQcm9wZXJ0eT8uYW5ub3RhdGlvbnM/LkNvbW1vbj8uVGV4dCxcblx0XHRcdGRpc3BsYXlNb2RlID0gZ2V0RGlzcGxheU1vZGUoZGF0YUZpZWxkLlZhbHVlPy4kdGFyZ2V0KTtcblxuXHRcdGxldCBuUHJvcGVydHlXaWR0aCA9IDAsXG5cdFx0XHRmTGFiZWxXaWR0aCA9IDA7XG5cdFx0aWYgKG9UYXJnZXRlZFByb3BlcnR5KSB7XG5cdFx0XHRzd2l0Y2ggKGRpc3BsYXlNb2RlKSB7XG5cdFx0XHRcdGNhc2UgXCJEZXNjcmlwdGlvblwiOlxuXHRcdFx0XHRcdG5Qcm9wZXJ0eVdpZHRoID1cblx0XHRcdFx0XHRcdHRoaXMuZ2V0TURDQ29sdW1uV2lkdGhGcm9tRGF0YUZpZWxkKFxuXHRcdFx0XHRcdFx0XHRvVGV4dEFycmFuZ2VtZW50VGFyZ2V0LiR0YXJnZXQsXG5cdFx0XHRcdFx0XHRcdHByb3BlcnRpZXMsXG5cdFx0XHRcdFx0XHRcdGNvbnZlcnRlZE1ldGFEYXRhLFxuXHRcdFx0XHRcdFx0XHR3aWR0aEluY2x1ZGluZ0NvbHVtbkhlYWRlclxuXHRcdFx0XHRcdFx0KSAtIDE7XG5cdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdGNhc2UgXCJEZXNjcmlwdGlvblZhbHVlXCI6XG5cdFx0XHRcdGNhc2UgXCJWYWx1ZURlc2NyaXB0aW9uXCI6XG5cdFx0XHRcdGNhc2UgXCJWYWx1ZVwiOlxuXHRcdFx0XHRkZWZhdWx0OlxuXHRcdFx0XHRcdG5Qcm9wZXJ0eVdpZHRoID1cblx0XHRcdFx0XHRcdHRoaXMuZ2V0TURDQ29sdW1uV2lkdGhGcm9tRGF0YUZpZWxkKG9UYXJnZXRlZFByb3BlcnR5LCBwcm9wZXJ0aWVzLCBjb252ZXJ0ZWRNZXRhRGF0YSwgd2lkdGhJbmNsdWRpbmdDb2x1bW5IZWFkZXIpIC1cblx0XHRcdFx0XHRcdDE7XG5cdFx0XHR9XG5cdFx0XHRjb25zdCBzTGFiZWwgPSBkYXRhRmllbGQuTGFiZWwgPyBkYXRhRmllbGQuTGFiZWwgOiBvVGFyZ2V0ZWRQcm9wZXJ0eS5sYWJlbDtcblx0XHRcdGZMYWJlbFdpZHRoID0gc2hvd0RhdGFGaWVsZHNMYWJlbCAmJiBzTGFiZWwgPyBTaXplSGVscGVyLmdldEJ1dHRvbldpZHRoKHNMYWJlbCkgOiAwO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRMb2cuZXJyb3IoYENhbm5vdCBjb21wdXRlIHdpZHRoIGZvciB0eXBlIG9iamVjdDogJHtkYXRhRmllbGQuJFR5cGV9YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7IGxhYmVsV2lkdGg6IGZMYWJlbFdpZHRoLCBwcm9wZXJ0eVdpZHRoOiBuUHJvcGVydHlXaWR0aCB9O1xuXHR9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBUYWJsZVNpemVIZWxwZXI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7RUFxQkEsTUFBTUEsZUFBZSxHQUFHO0lBQ3ZCO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0lBQ0NDLDhCQUE4QixFQUFFLFNBQUFBLENBQy9CQyxTQUEyQyxFQUMzQ0MsVUFBb0MsRUFDcENDLGlCQUFvQyxFQUUzQjtNQUFBLElBRFRDLDBCQUEwQixHQUFBQyxTQUFBLENBQUFDLE1BQUEs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
|
|
148
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUYWJsZVNpemVIZWxwZXIiLCJnZXRNRENDb2x1bW5XaWR0aEZyb21EYXRhRmllbGQiLCJkYXRhRmllbGQiLCJwcm9wZXJ0aWVzIiwiY29udmVydGVkTWV0YURhdGEiLCJ3aWR0aEluY2x1ZGluZ0NvbHVtbkhlYWRlciIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInByb3BlcnR5IiwiZmluZCIsInByb3AiLCJhbm5vdGF0aW9uUGF0aCIsInJlc29sdmVQYXRoIiwidGFyZ2V0IiwiZnVsbHlRdWFsaWZpZWROYW1lIiwiZ2V0TURDQ29sdW1uV2lkdGhGcm9tUHJvcGVydHkiLCJpc1NvcnRhYmxlQ29sdW1uIiwiaXNDb2x1bW5SZXF1aXJlZCIsIm1XaWR0aENhbGN1bGF0aW9uIiwiT2JqZWN0IiwiYXNzaWduIiwiaGVhZGVyR2FwIiwiZ2FwIiwidHJ1bmNhdGVMYWJlbCIsImV4Y2x1ZGVQcm9wZXJ0aWVzIiwicmVxdWlyZWQiLCJ2aXN1YWxTZXR0aW5ncyIsIndpZHRoQ2FsY3VsYXRpb24iLCJ0eXBlcyIsInByb3BlcnR5SW5mb3MiLCJtYXAiLCJwcm9wTmFtZSIsIl9wcm9wZXJ0eSIsImtleSIsInByb3BlcnR5VHlwZUNvbmZpZyIsImRhdGFUeXBlIiwidHlwZUNvbmZpZyIsIlR5cGVNYXAiLCJnZXRUeXBlQ29uZmlnIiwiZm9ybWF0T3B0aW9ucyIsImNvbnN0cmFpbnRzIiwidHlwZUluc3RhbmNlIiwiZmlsdGVyIiwiaXRlbSIsInNpemUiLCJUYWJsZVV0aWwiLCJjYWxjQ29sdW1uV2lkdGgiLCJsYWJlbCIsIkxvZyIsImVycm9yIiwicGFyc2VGbG9hdCIsInJlcGxhY2UiLCJnZXRXaWR0aEZvckRhdGFGaWVsZEZvckFubm90YXRpb24iLCJzaG93RGF0YUZpZWxkc0xhYmVsIiwib1RhcmdldGVkUHJvcGVydHkiLCJpc0Fubm90YXRpb25PZlR5cGUiLCJUYXJnZXQiLCIkdGFyZ2V0IiwiblByb3BlcnR5V2lkdGgiLCJmTGFiZWxXaWR0aCIsIlZpc3VhbGl6YXRpb24iLCJuYlN0YXJzIiwiVGFyZ2V0VmFsdWUiLCJwYXJzZUludCIsInNMYWJlbCIsIkxhYmVsIiwidG9TdHJpbmciLCJTaXplSGVscGVyIiwiZ2V0QnV0dG9uV2lkdGgiLCJpc1BhdGhBbm5vdGF0aW9uRXhwcmVzc2lvbiIsImZuIiwibGFiZWxXaWR0aCIsInByb3BlcnR5V2lkdGgiLCJnZXRXaWR0aEZvckRhdGFGaWVsZCIsImRhdGFNb2RlbE9iamVjdFBhdGgiLCJWYWx1ZSIsIm9UZXh0QXJyYW5nZW1lbnRUYXJnZXQiLCJhbm5vdGF0aW9ucyIsIkNvbW1vbiIsIlRleHQiLCJkaXNwbGF5TW9kZSIsImdldERpc3BsYXlNb2RlIiwidGFyZ2V0RW50aXR5VHlwZSIsIiRUeXBlIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJUYWJsZVNpemVIZWxwZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQcm9wZXJ0eSwgU2VydmljZU9iamVjdCB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlc1wiO1xuaW1wb3J0IHR5cGUgeyBDb252ZXJ0ZWRNZXRhZGF0YSB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlcy9FZG1cIjtcbmltcG9ydCB0eXBlIHsgQ29udGFjdFR5cGUgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvdm9jYWJ1bGFyaWVzL0NvbW11bmljYXRpb25cIjtcbmltcG9ydCB7IENvbW11bmljYXRpb25Bbm5vdGF0aW9uVHlwZXMgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvdm9jYWJ1bGFyaWVzL0NvbW11bmljYXRpb25cIjtcbmltcG9ydCB0eXBlIHtcblx0RGF0YUZpZWxkLFxuXHREYXRhRmllbGRBYnN0cmFjdFR5cGVzLFxuXHREYXRhRmllbGRGb3JBY3Rpb24sXG5cdERhdGFGaWVsZEZvckFubm90YXRpb24sXG5cdERhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbixcblx0RGF0YVBvaW50VHlwZVxufSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvdm9jYWJ1bGFyaWVzL1VJXCI7XG5pbXBvcnQgeyBVSUFubm90YXRpb25UeXBlcyB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlcy92b2NhYnVsYXJpZXMvVUlcIjtcbmltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IFNpemVIZWxwZXIgZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvU2l6ZUhlbHBlclwiO1xuaW1wb3J0IHsgaXNBbm5vdGF0aW9uT2ZUeXBlLCBpc1BhdGhBbm5vdGF0aW9uRXhwcmVzc2lvbiB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL1R5cGVHdWFyZHNcIjtcbmltcG9ydCB0eXBlIHsgRGF0YU1vZGVsT2JqZWN0UGF0aCB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL0RhdGFNb2RlbFBhdGhIZWxwZXJcIjtcbmltcG9ydCB7IGdldERpc3BsYXlNb2RlIH0gZnJvbSBcInNhcC9mZS9jb3JlL3RlbXBsYXRpbmcvRGlzcGxheU1vZGVGb3JtYXR0ZXJcIjtcbmltcG9ydCB0eXBlIHsgRW5oYW5jZWRGRVByb3BlcnR5SW5mbyB9IGZyb20gXCJzYXAvZmUvbWFjcm9zL3RhYmxlL1RhYmxlQVBJXCI7XG5pbXBvcnQgVGFibGVVdGlsIGZyb20gXCJzYXAvbS90YWJsZS9VdGlsXCI7XG5pbXBvcnQgdHlwZSBUeXBlQ29uZmlnIGZyb20gXCJzYXAvdWkvbWRjL1R5cGVDb25maWdcIjtcbmltcG9ydCBUeXBlTWFwIGZyb20gXCJzYXAvdWkvbWRjL29kYXRhL3Y0L1R5cGVNYXBcIjtcblxuY29uc3QgVGFibGVTaXplSGVscGVyID0ge1xuXHQvKipcblx0ICogTWV0aG9kIHRvIGNhbGN1bGF0ZSB0aGUgd2lkdGggb2YgdGhlIE1EQ0NvbHVtbi5cblx0ICogQHBhcmFtIGRhdGFGaWVsZCBUaGUgUHJvcGVydHkgb3IgUHJvcGVydHlJbmZvIE9iamVjdCBmb3Igd2hpY2ggdGhlIHdpZHRoIHdpbGwgYmUgY2FsY3VsYXRlZC5cblx0ICogQHBhcmFtIHByb3BlcnRpZXMgQW4gYXJyYXkgY29udGFpbmluZyBhbGwgcHJvcGVydHkgZGVmaW5pdGlvbnMgKG9wdGlvbmFsKVxuXHQgKiBAcGFyYW0gY29udmVydGVkTWV0YURhdGFcblx0ICogQHBhcmFtIHdpZHRoSW5jbHVkaW5nQ29sdW1uSGVhZGVyIEluZGljYXRlcyBpZiB0aGUgbGFiZWwgc2hvdWxkIGJlIGEgcGFydCBvZiB0aGUgd2lkdGggY2FsY3VsYXRpb25cblx0ICogQHByaXZhdGVcblx0ICogQGFsaWFzIHNhcC5mZS5tYWNyb3MuVGFibGVTaXplSGVscGVyXG5cdCAqIEByZXR1cm5zIFRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLlxuXHQgKi9cblx0Z2V0TURDQ29sdW1uV2lkdGhGcm9tRGF0YUZpZWxkOiBmdW5jdGlvbiAoXG5cdFx0ZGF0YUZpZWxkOiBEYXRhRmllbGQgfCBQcm9wZXJ0eSB8IHVuZGVmaW5lZCxcblx0XHRwcm9wZXJ0aWVzOiBFbmhhbmNlZEZFUHJvcGVydHlJbmZvW10sXG5cdFx0Y29udmVydGVkTWV0YURhdGE6IENvbnZlcnRlZE1ldGFkYXRhLFxuXHRcdHdpZHRoSW5jbHVkaW5nQ29sdW1uSGVhZGVyID0gZmFsc2Vcblx0KTogbnVtYmVyIHtcblx0XHRjb25zdCBwcm9wZXJ0eSA9IHByb3BlcnRpZXMuZmluZChcblx0XHRcdChwcm9wKSA9PlxuXHRcdFx0XHRwcm9wLmFubm90YXRpb25QYXRoICYmXG5cdFx0XHRcdGNvbnZlcnRlZE1ldGFEYXRhLnJlc29sdmVQYXRoPFNlcnZpY2VPYmplY3Q+KHByb3AuYW5ub3RhdGlvblBhdGgpPy50YXJnZXQ/LmZ1bGx5UXVhbGlmaWVkTmFtZSA9PT1cblx0XHRcdFx0XHRkYXRhRmllbGQ/LmZ1bGx5UXVhbGlmaWVkTmFtZVxuXHRcdCk7XG5cdFx0cmV0dXJuIHByb3BlcnR5ID8gdGhpcy5nZXRNRENDb2x1bW5XaWR0aEZyb21Qcm9wZXJ0eShwcm9wZXJ0eSwgcHJvcGVydGllcywgd2lkdGhJbmNsdWRpbmdDb2x1bW5IZWFkZXIpIDogMDtcblx0fSxcblxuXHQvKipcblx0ICogIE1ldGhvZCB0byBjYWxjdWxhdGUgdGhlIHdpZHRoIG9mIHRoZSBNRENDb2x1bW4uXG5cdCAqIEBwYXJhbSBwcm9wZXJ0eSBUaGUgUHJvcGVydHlJbmZvIG9iamVjdCBmb3Igd2hpY2ggdGhlIHdpZHRoIGlzIGNhbGN1bGF0ZWRcblx0ICogQHBhcmFtIHByb3BlcnRpZXMgIEFuIGFycmF5IGNvbnRhaW5pbmcgYWxsIHByb3BlcnR5IGRlZmluaXRpb25zIChvcHRpb25hbClcblx0ICogQHBhcmFtIHdpZHRoSW5jbHVkaW5nQ29sdW1uSGVhZGVyIEluZGljYXRlcyBpZiB0aGUgbGFiZWwgaXMgcGFydCBvZiB0aGUgd2lkdGggY2FsY3VsYXRpb25cblx0ICogQHBhcmFtIGlzU29ydGFibGVDb2x1bW4gSW5kaWNhdGVzIGlmIHRoZSBjb2x1bW4gaXMgc29ydGFibGVcblx0ICogQHBhcmFtIGlzQ29sdW1uUmVxdWlyZWQgSW5kaWNhdGVzIGlmIHRoZSBjb2x1bW4gaXMgcmVxdWlyZWRcblx0ICogQHJldHVybnMgVGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uXG5cdCAqL1xuXHRnZXRNRENDb2x1bW5XaWR0aEZyb21Qcm9wZXJ0eTogZnVuY3Rpb24gKFxuXHRcdHByb3BlcnR5OiBFbmhhbmNlZEZFUHJvcGVydHlJbmZvLFxuXHRcdHByb3BlcnRpZXM6IEVuaGFuY2VkRkVQcm9wZXJ0eUluZm9bXSxcblx0XHR3aWR0aEluY2x1ZGluZ0NvbHVtbkhlYWRlciA9IGZhbHNlLFxuXHRcdGlzU29ydGFibGVDb2x1bW4gPSBmYWxzZSxcblx0XHRpc0NvbHVtblJlcXVpcmVkID0gZmFsc2Vcblx0KTogbnVtYmVyIHtcblx0XHRjb25zdCBtV2lkdGhDYWxjdWxhdGlvbiA9IE9iamVjdC5hc3NpZ24oXG5cdFx0XHR7XG5cdFx0XHRcdGhlYWRlckdhcDogd2lkdGhJbmNsdWRpbmdDb2x1bW5IZWFkZXIgJiYgaXNTb3J0YWJsZUNvbHVtbixcblx0XHRcdFx0Z2FwOiAwLFxuXHRcdFx0XHR0cnVuY2F0ZUxhYmVsOiAhd2lkdGhJbmNsdWRpbmdDb2x1bW5IZWFkZXIsXG5cdFx0XHRcdGV4Y2x1ZGVQcm9wZXJ0aWVzOiBbXSxcblx0XHRcdFx0cmVxdWlyZWQ6IGlzQ29sdW1uUmVxdWlyZWRcblx0XHRcdH0sXG5cdFx0XHRwcm9wZXJ0eS52aXN1YWxTZXR0aW5ncz8ud2lkdGhDYWxjdWxhdGlvblxuXHRcdCk7XG5cblx0XHRsZXQgdHlwZXM7XG5cdFx0aWYgKHByb3BlcnR5LnByb3BlcnR5SW5mb3M/Lmxlbmd0aCkge1xuXHRcdFx0dHlwZXMgPSBwcm9wZXJ0eS5wcm9wZXJ0eUluZm9zXG5cdFx0XHRcdC5tYXAoKHByb3BOYW1lKSA9PiB7XG5cdFx0XHRcdFx0Y29uc3QgcHJvcCA9IHByb3BlcnRpZXMuZmluZCgoX3Byb3BlcnR5KSA9PiBfcHJvcGVydHkua2V5ID09PSBwcm9wTmFtZSk7XG5cdFx0XHRcdFx0Ly9hZGQgdGhlIHR5cGVDb25maWcgdG8gdGhlIHByb3BlcnRpZXMgYXMgaXQncyBub3QgYXZhaWxhYmxlIGluIHRoZSB0YWJsZSB2YWx1ZSBoZWxwXG5cdFx0XHRcdFx0Y29uc3QgcHJvcGVydHlUeXBlQ29uZmlnID1cblx0XHRcdFx0XHRcdHByb3AgJiYgcHJvcC5kYXRhVHlwZSAmJiAhcHJvcC50eXBlQ29uZmlnXG5cdFx0XHRcdFx0XHRcdD8gVHlwZU1hcC5nZXRUeXBlQ29uZmlnKHByb3AuZGF0YVR5cGUsIHByb3AuZm9ybWF0T3B0aW9ucywgcHJvcC5jb25zdHJhaW50cylcblx0XHRcdFx0XHRcdFx0OiBudWxsO1xuXHRcdFx0XHRcdHJldHVybiBwcm9wZXJ0eVR5cGVDb25maWcgPyBwcm9wZXJ0eVR5cGVDb25maWcudHlwZUluc3RhbmNlIDogcHJvcD8udHlwZUNvbmZpZz8udHlwZUluc3RhbmNlO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuZmlsdGVyKChpdGVtKSA9PiBpdGVtKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0bGV0IHByb3BlcnR5VHlwZUNvbmZpZzogVHlwZUNvbmZpZyB8IG51bGwgPSBudWxsO1xuXHRcdFx0Ly9hZGQgdGhlIHR5cGVDb25maWcgdG8gdGhlIHByb3BlcnRpZXMgYXMgaXQncyBub3QgYXZhaWxhYmxlIGluIHRoZSB0YWJsZSB2YWx1ZSBoZWxwXG5cdFx0XHRpZiAocHJvcGVydHkuZGF0YVR5cGUgJiYgIXByb3BlcnR5LnR5cGVDb25maWcpIHtcblx0XHRcdFx0cHJvcGVydHlUeXBlQ29uZmlnID0gVHlwZU1hcC5nZXRUeXBlQ29uZmlnKHByb3BlcnR5LmRhdGFUeXBlLCBwcm9wZXJ0eS5mb3JtYXRPcHRpb25zLCBwcm9wZXJ0eS5jb25zdHJhaW50cyk7XG5cdFx0XHR9XG5cdFx0XHRpZiAocHJvcGVydHkudHlwZUNvbmZpZz8udHlwZUluc3RhbmNlIHx8IHByb3BlcnR5VHlwZUNvbmZpZykge1xuXHRcdFx0XHR0eXBlcyA9IHByb3BlcnR5VHlwZUNvbmZpZyA/IFtwcm9wZXJ0eVR5cGVDb25maWcudHlwZUluc3RhbmNlXSA6IFtwcm9wZXJ0eS50eXBlQ29uZmlnPy50eXBlSW5zdGFuY2VdO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRjb25zdCBzaXplID0gdHlwZXMgPyBUYWJsZVV0aWwuY2FsY0NvbHVtbldpZHRoKHR5cGVzLCBwcm9wZXJ0eS5sYWJlbCwgbVdpZHRoQ2FsY3VsYXRpb24pIDogbnVsbDtcblx0XHRpZiAoIXNpemUpIHtcblx0XHRcdExvZy5lcnJvcihgQ2Fubm90IGNvbXB1dGUgdGhlIGNvbHVtbiB3aWR0aCBmb3IgcHJvcGVydHk6ICR7cHJvcGVydHkua2V5fWApO1xuXHRcdH1cblx0XHRyZXR1cm4gc2l6ZSA/IHBhcnNlRmxvYXQoc2l6ZS5yZXBsYWNlKFwiUmVtXCIsIFwiXCIpKSA6IDA7XG5cdH0sXG5cblx0LyoqXG5cdCAqIE1ldGhvZCB0byBjYWxjdWxhdGUgdGhlICB3aWR0aCBvZiBhIERhdGFGaWVsZEFubm90YXRpb24gb2JqZWN0IGNvbnRhaW5lZCBpbiBhIGZpZWxkR3JvdXAuXG5cdCAqIEBwYXJhbSBkYXRhRmllbGQgRGF0YUZpZWxkQW5ub3RhdGlvbiBvYmplY3QuXG5cdCAqIEBwYXJhbSB3aWR0aEluY2x1ZGluZ0NvbHVtbkhlYWRlciBJbmRpY2F0ZXMgaWYgdGhlIGNvbHVtbiBoZWFkZXIgc2hvdWxkIGJlIGEgcGFydCBvZiB0aGUgd2lkdGggY2FsY3VsYXRpb24uXG5cdCAqIEBwYXJhbSBwcm9wZXJ0aWVzIEFycmF5IGNvbnRhaW5pbmcgYWxsIFByb3BlcnR5SW5mbyBvYmplY3RzLlxuXHQgKiBAcGFyYW0gY29udmVydGVkTWV0YURhdGFcblx0ICogQHBhcmFtIHNob3dEYXRhRmllbGRzTGFiZWwgTGFiZWwgaXMgZGlzcGxheWVkIGluc2lkZSB0aGUgZmllbGRcblx0ICogQHByaXZhdGVcblx0ICogQGFsaWFzIHNhcC5mZS5tYWNyb3MuVGFibGVTaXplSGVscGVyXG5cdCAqIEByZXR1cm5zIE9iamVjdCBjb250YWluaW5nIHRoZSB3aWR0aCBvZiB0aGUgbGFiZWwgYW5kIHRoZSB3aWR0aCBvZiB0aGUgcHJvcGVydHkuXG5cdCAqL1xuXHRnZXRXaWR0aEZvckRhdGFGaWVsZEZvckFubm90YXRpb246IGZ1bmN0aW9uIChcblx0XHRkYXRhRmllbGQ6IERhdGFGaWVsZEZvckFubm90YXRpb24gfCBEYXRhRmllbGRGb3JBY3Rpb24gfCBEYXRhRmllbGRGb3JJbnRlbnRCYXNlZE5hdmlnYXRpb24gfCB1bmRlZmluZWQsXG5cdFx0d2lkdGhJbmNsdWRpbmdDb2x1bW5IZWFkZXI/OiBib29sZWFuLFxuXHRcdHByb3BlcnRpZXM/OiBFbmhhbmNlZEZFUHJvcGVydHlJbmZvW10sXG5cdFx0Y29udmVydGVkTWV0YURhdGE/OiBDb252ZXJ0ZWRNZXRhZGF0YSxcblx0XHRzaG93RGF0YUZpZWxkc0xhYmVsID0gZmFsc2Vcblx0KTogeyBsYWJlbFdpZHRoOiBudW1iZXI7IHByb3BlcnR5V2lkdGg6IG51bWJlciB9IHtcblx0XHRjb25zdCBvVGFyZ2V0ZWRQcm9wZXJ0eSA9IGlzQW5ub3RhdGlvbk9mVHlwZTxEYXRhRmllbGRGb3JBbm5vdGF0aW9uPihkYXRhRmllbGQsIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZEZvckFubm90YXRpb24pXG5cdFx0XHQ/IChkYXRhRmllbGQ/LlRhcmdldD8uJHRhcmdldCBhcyBEYXRhUG9pbnRUeXBlIHwgQ29udGFjdFR5cGUgfCB1bmRlZmluZWQpXG5cdFx0XHQ6IHVuZGVmaW5lZDtcblx0XHRsZXQgblByb3BlcnR5V2lkdGggPSAwLFxuXHRcdFx0ZkxhYmVsV2lkdGggPSAwO1xuXHRcdGlmIChpc0Fubm90YXRpb25PZlR5cGU8RGF0YVBvaW50VHlwZT4ob1RhcmdldGVkUHJvcGVydHksIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFQb2ludFR5cGUpICYmIG9UYXJnZXRlZFByb3BlcnR5Py5WaXN1YWxpemF0aW9uKSB7XG5cdFx0XHRzd2l0Y2ggKG9UYXJnZXRlZFByb3BlcnR5LlZpc3VhbGl6YXRpb24pIHtcblx0XHRcdFx0Y2FzZSBcIlVJLlZpc3VhbGl6YXRpb25UeXBlL1JhdGluZ1wiOlxuXHRcdFx0XHRcdGNvbnN0IG5iU3RhcnMgPSBvVGFyZ2V0ZWRQcm9wZXJ0eS5UYXJnZXRWYWx1ZTtcblx0XHRcdFx0XHRuUHJvcGVydHlXaWR0aCA9IHBhcnNlSW50KG5iU3RhcnMsIDEwKSAqIDEuMzc1O1xuXHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHRjYXNlIFwiVUkuVmlzdWFsaXphdGlvblR5cGUvUHJvZ3Jlc3NcIjpcblx0XHRcdFx0ZGVmYXVsdDpcblx0XHRcdFx0XHRuUHJvcGVydHlXaWR0aCA9IDU7XG5cdFx0XHR9XG5cdFx0XHRjb25zdCBzTGFiZWwgPSBvVGFyZ2V0ZWRQcm9wZXJ0eSA/IChvVGFyZ2V0ZWRQcm9wZXJ0eSBhcyB7IGxhYmVsPzogc3RyaW5nIH0pLmxhYmVsIDogZGF0YUZpZWxkPy5MYWJlbD8udG9TdHJpbmcoKSB8fCBcIlwiO1xuXHRcdFx0ZkxhYmVsV2lkdGggPSBzaG93RGF0YUZpZWxkc0xhYmVsICYmIHNMYWJlbCA/IFNpemVIZWxwZXIuZ2V0QnV0dG9uV2lkdGgoc0xhYmVsKSA6IDA7XG5cdFx0fSBlbHNlIGlmIChcblx0XHRcdGNvbnZlcnRlZE1ldGFEYXRhICYmXG5cdFx0XHRwcm9wZXJ0aWVzICYmXG5cdFx0XHRpc0Fubm90YXRpb25PZlR5cGU8Q29udGFjdFR5cGU+KG9UYXJnZXRlZFByb3BlcnR5LCBDb21tdW5pY2F0aW9uQW5ub3RhdGlvblR5cGVzLkNvbnRhY3RUeXBlKSAmJlxuXHRcdFx0aXNQYXRoQW5ub3RhdGlvbkV4cHJlc3Npb24ob1RhcmdldGVkUHJvcGVydHkuZm4pXG5cdFx0KSB7XG5cdFx0XHRuUHJvcGVydHlXaWR0aCA9IHRoaXMuZ2V0TURDQ29sdW1uV2lkdGhGcm9tRGF0YUZpZWxkKFxuXHRcdFx0XHRvVGFyZ2V0ZWRQcm9wZXJ0eS5mbi4kdGFyZ2V0LFxuXHRcdFx0XHRwcm9wZXJ0aWVzLFxuXHRcdFx0XHRjb252ZXJ0ZWRNZXRhRGF0YSxcblx0XHRcdFx0d2lkdGhJbmNsdWRpbmdDb2x1bW5IZWFkZXJcblx0XHRcdCk7XG5cdFx0fVxuXHRcdHJldHVybiB7IGxhYmVsV2lkdGg6IGZMYWJlbFdpZHRoLCBwcm9wZXJ0eVdpZHRoOiBuUHJvcGVydHlXaWR0aCB9O1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBNZXRob2QgdG8gY2FsY3VsYXRlIHRoZSB3aWR0aCBvZiBhIERhdGFGaWVsZCBvYmplY3QuXG5cdCAqIEBwYXJhbSBkYXRhRmllbGQgRGF0YUZpZWxkQW5ub3RhdGlvbiBvYmplY3QuXG5cdCAqIEBwYXJhbSBzaG93RGF0YUZpZWxkc0xhYmVsIExhYmVsIGlzIGRpc3BsYXllZCBpbnNpZGUgdGhlIGZpZWxkLlxuXHQgKiBAcGFyYW0gcHJvcGVydGllcyBBcnJheSBjb250YWluaW5nIGFsbCBQcm9wZXJ0eUluZm8gb2JqZWN0cy5cblx0ICogQHBhcmFtIGNvbnZlcnRlZE1ldGFEYXRhIENvbnRleHQgT2JqZWN0IG9mIHRoZSBwYXJlbnQgcHJvcGVydHkuXG5cdCAqIEBwcml2YXRlXG5cdCAqIEBhbGlhcyBzYXAuZmUubWFjcm9zLlRhYmxlU2l6ZUhlbHBlclxuXHQgKiBAcmV0dXJucyB7b2JqZWN0fSBPYmplY3QgY29udGFpbmluZyB0aGUgd2lkdGggb2YgdGhlIGxhYmVsIGFuZCB0aGUgd2lkdGggb2YgdGhlIHByb3BlcnR5LlxuXHQgKi9cblxuXHRnZXRXaWR0aEZvckRhdGFGaWVsZDogZnVuY3Rpb24gKFxuXHRcdGRhdGFGaWVsZDogRGF0YUZpZWxkLFxuXHRcdHNob3dEYXRhRmllbGRzTGFiZWw6IGJvb2xlYW4sXG5cdFx0cHJvcGVydGllczogRW5oYW5jZWRGRVByb3BlcnR5SW5mb1tdLFxuXHRcdGNvbnZlcnRlZE1ldGFEYXRhOiBDb252ZXJ0ZWRNZXRhZGF0YSxcblx0XHR3aWR0aEluY2x1ZGluZ0NvbHVtbkhlYWRlcjogYm9vbGVhbixcblx0XHRkYXRhTW9kZWxPYmplY3RQYXRoOiBEYXRhTW9kZWxPYmplY3RQYXRoPFByb3BlcnR5IHwgRGF0YUZpZWxkQWJzdHJhY3RUeXBlcyB8IERhdGFQb2ludFR5cGU+XG5cdCk6IHsgbGFiZWxXaWR0aDogbnVtYmVyOyBwcm9wZXJ0eVdpZHRoOiBudW1iZXIgfSB7XG5cdFx0Y29uc3Qgb1RhcmdldGVkUHJvcGVydHkgPSBkYXRhRmllbGQuVmFsdWU/LiR0YXJnZXQsXG5cdFx0XHRvVGV4dEFycmFuZ2VtZW50VGFyZ2V0ID0gb1RhcmdldGVkUHJvcGVydHk/LmFubm90YXRpb25zPy5Db21tb24/LlRleHQsXG5cdFx0XHRkaXNwbGF5TW9kZSA9IGdldERpc3BsYXlNb2RlKGRhdGFGaWVsZC5WYWx1ZT8uJHRhcmdldCwgZGF0YU1vZGVsT2JqZWN0UGF0aC50YXJnZXRFbnRpdHlUeXBlKTtcblxuXHRcdGxldCBuUHJvcGVydHlXaWR0aCA9IDAsXG5cdFx0XHRmTGFiZWxXaWR0aCA9IDA7XG5cdFx0aWYgKG9UYXJnZXRlZFByb3BlcnR5KSB7XG5cdFx0XHRzd2l0Y2ggKGRpc3BsYXlNb2RlKSB7XG5cdFx0XHRcdGNhc2UgXCJEZXNjcmlwdGlvblwiOlxuXHRcdFx0XHRcdG5Qcm9wZXJ0eVdpZHRoID1cblx0XHRcdFx0XHRcdHRoaXMuZ2V0TURDQ29sdW1uV2lkdGhGcm9tRGF0YUZpZWxkKFxuXHRcdFx0XHRcdFx0XHRvVGV4dEFycmFuZ2VtZW50VGFyZ2V0LiR0YXJnZXQsXG5cdFx0XHRcdFx0XHRcdHByb3BlcnRpZXMsXG5cdFx0XHRcdFx0XHRcdGNvbnZlcnRlZE1ldGFEYXRhLFxuXHRcdFx0XHRcdFx0XHR3aWR0aEluY2x1ZGluZ0NvbHVtbkhlYWRlclxuXHRcdFx0XHRcdFx0KSAtIDE7XG5cdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdGNhc2UgXCJEZXNjcmlwdGlvblZhbHVlXCI6XG5cdFx0XHRcdGNhc2UgXCJWYWx1ZURlc2NyaXB0aW9uXCI6XG5cdFx0XHRcdGNhc2UgXCJWYWx1ZVwiOlxuXHRcdFx0XHRkZWZhdWx0OlxuXHRcdFx0XHRcdG5Qcm9wZXJ0eVdpZHRoID1cblx0XHRcdFx0XHRcdHRoaXMuZ2V0TURDQ29sdW1uV2lkdGhGcm9tRGF0YUZpZWxkKG9UYXJnZXRlZFByb3BlcnR5LCBwcm9wZXJ0aWVzLCBjb252ZXJ0ZWRNZXRhRGF0YSwgd2lkdGhJbmNsdWRpbmdDb2x1bW5IZWFkZXIpIC1cblx0XHRcdFx0XHRcdDE7XG5cdFx0XHR9XG5cdFx0XHRjb25zdCBzTGFiZWwgPSBkYXRhRmllbGQuTGFiZWwgPyBkYXRhRmllbGQuTGFiZWwgOiBvVGFyZ2V0ZWRQcm9wZXJ0eS5sYWJlbDtcblx0XHRcdGZMYWJlbFdpZHRoID0gc2hvd0RhdGFGaWVsZHNMYWJlbCAmJiBzTGFiZWwgPyBTaXplSGVscGVyLmdldEJ1dHRvbldpZHRoKHNMYWJlbCkgOiAwO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRMb2cuZXJyb3IoYENhbm5vdCBjb21wdXRlIHdpZHRoIGZvciB0eXBlIG9iamVjdDogJHtkYXRhRmllbGQuJFR5cGV9YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7IGxhYmVsV2lkdGg6IGZMYWJlbFdpZHRoLCBwcm9wZXJ0eVdpZHRoOiBuUHJvcGVydHlXaWR0aCB9O1xuXHR9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBUYWJsZVNpemVIZWxwZXI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7RUF1QkEsTUFBTUEsZUFBZSxHQUFHO0lBQ3ZCO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0lBQ0NDLDhCQUE4QixFQUFFLFNBQUFBLENBQy9CQyxTQUEyQyxFQUMzQ0MsVUFBb0MsRUFDcENDLGlCQUFvQyxFQUUzQjtNQUFBLElBRFRDLDBCQUEwQixHQUFBQyxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxLQUFLO01BRWxDLE1BQU1HLFFBQVEsR0FBR04sVUFBVSxDQUFDTyxJQUFJLENBQzlCQyxJQUFJLElBQ0pBLElBQUksQ0FBQ0MsY0FBYyxJQUNuQlIsaUJBQWlCLENBQUNTLFdBQVcsQ0FBZ0JGLElBQUksQ0FBQ0MsY0FBYyxDQUFDLEVBQUVFLE1BQU0sRUFBRUMsa0JBQWtCLEtBQzVGYixTQUFTLEVBQUVhLGtCQUNkLENBQUM7TUFDRCxPQUFPTixRQUFRLEdBQUcsSUFBSSxDQUFDTyw2QkFBNkIsQ0FBQ1AsUUFBUSxFQUFFTixVQUFVLEVBQUVFLDBCQUEwQixDQUFDLEdBQUcsQ0FBQztJQUMzRyxDQUFDO0lBRUQ7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0lBQ0NXLDZCQUE2QixFQUFFLFNBQUFBLENBQzlCUCxRQUFnQyxFQUNoQ04sVUFBb0MsRUFJM0I7TUFBQSxJQUhURSwwQkFBMEIsR0FBQUMsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQUUsU0FBQSxHQUFBRixTQUFBLE1BQUcsS0FBSztNQUFBLElBQ2xDVyxnQkFBZ0IsR0FBQVgsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQUUsU0FBQSxHQUFBRixTQUFBLE1BQUcsS0FBSztNQUFBLElBQ3hCWSxnQkFB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
|
|
@@ -4,6 +4,7 @@ import type { ContactType } from "@sap-ux/vocabularies-types/vocabularies/Commun
|
|
|
4
4
|
import { CommunicationAnnotationTypes } from "@sap-ux/vocabularies-types/vocabularies/Communication";
|
|
5
5
|
import type {
|
|
6
6
|
DataField,
|
|
7
|
+
DataFieldAbstractTypes,
|
|
7
8
|
DataFieldForAction,
|
|
8
9
|
DataFieldForAnnotation,
|
|
9
10
|
DataFieldForIntentBasedNavigation,
|
|
@@ -13,6 +14,7 @@ import { UIAnnotationTypes } from "@sap-ux/vocabularies-types/vocabularies/UI";
|
|
|
13
14
|
import Log from "sap/base/Log";
|
|
14
15
|
import SizeHelper from "sap/fe/core/helpers/SizeHelper";
|
|
15
16
|
import { isAnnotationOfType, isPathAnnotationExpression } from "sap/fe/core/helpers/TypeGuards";
|
|
17
|
+
import type { DataModelObjectPath } from "sap/fe/core/templating/DataModelPathHelper";
|
|
16
18
|
import { getDisplayMode } from "sap/fe/core/templating/DisplayModeFormatter";
|
|
17
19
|
import type { EnhancedFEPropertyInfo } from "sap/fe/macros/table/TableAPI";
|
|
18
20
|
import TableUtil from "sap/m/table/Util";
|
|
@@ -169,11 +171,12 @@ const TableSizeHelper = {
|
|
|
169
171
|
showDataFieldsLabel: boolean,
|
|
170
172
|
properties: EnhancedFEPropertyInfo[],
|
|
171
173
|
convertedMetaData: ConvertedMetadata,
|
|
172
|
-
widthIncludingColumnHeader: boolean
|
|
174
|
+
widthIncludingColumnHeader: boolean,
|
|
175
|
+
dataModelObjectPath: DataModelObjectPath<Property | DataFieldAbstractTypes | DataPointType>
|
|
173
176
|
): { labelWidth: number; propertyWidth: number } {
|
|
174
177
|
const oTargetedProperty = dataField.Value?.$target,
|
|
175
178
|
oTextArrangementTarget = oTargetedProperty?.annotations?.Common?.Text,
|
|
176
|
-
displayMode = getDisplayMode(dataField.Value?.$target);
|
|
179
|
+
displayMode = getDisplayMode(dataField.Value?.$target, dataModelObjectPath.targetEntityType);
|
|
177
180
|
|
|
178
181
|
let nPropertyWidth = 0,
|
|
179
182
|
fLabelWidth = 0;
|
|
@@ -48,6 +48,12 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/buildingBlocks/templatin
|
|
|
48
48
|
_inheritsLoose(TreeTable, _BuildingBlockWithTem);
|
|
49
49
|
var _proto = TreeTable.prototype;
|
|
50
50
|
_proto._fireEvent = function _fireEvent(ui5Event, _controller, eventId) {
|
|
51
|
+
const actions = this.getAggregation("actions");
|
|
52
|
+
if (actions) {
|
|
53
|
+
const action = actions.find(a => ui5Event.getParameter("id").endsWith("::" + a.getKey()));
|
|
54
|
+
action?.fireEvent(eventId, ui5Event.getParameters());
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
51
57
|
this.fireEvent(eventId, ui5Event.getParameters());
|
|
52
58
|
};
|
|
53
59
|
_proto.getLayoutData = function getLayoutData() {
|
|
@@ -161,4 +167,4 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/buildingBlocks/templatin
|
|
|
161
167
|
_exports = TreeTable;
|
|
162
168
|
return _exports;
|
|
163
169
|
}, false);
|
|
164
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUcmVlVGFibGUiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJjb252ZXJ0QnVpbGRpbmdCbG9ja01ldGFkYXRhIiwiVHJlZVRhYmxlQmxvY2siLCJfZGVjMiIsInhtbEV2ZW50SGFuZGxlciIsIl9jbGFzcyIsIl9jbGFzczIiLCJfQnVpbGRpbmdCbG9ja1dpdGhUZW0iLCJwcm9wcyIsIm90aGVycyIsIl90aGlzIiwiY2FsbCIsImNyZWF0ZVByb3h5TWV0aG9kcyIsIl9leHBvcnRzIiwiX2luaGVyaXRzTG9vc2UiLCJfcHJvdG8iLCJwcm90b3R5cGUiLCJfZmlyZUV2ZW50IiwidWk1RXZlbnQiLCJfY29udHJvbGxlciIsImV2ZW50SWQiLCJmaXJlRXZlbnQiLCJnZXRQYXJhbWV0ZXJzIiwiZ2V0TGF5b3V0RGF0YSIsIkZsZXhJdGVtRGF0YSIsIm1heFdpZHRoIiwic2V0TWV0YVBhdGgiLCJtZXRhUGF0aCIsInNldFByb3BlcnR5IiwiZ2V0TWV0YVBhdGgiLCJnZXRQcm9wZXJ0eSIsInNldElnbm9yZWRGaWVsZHMiLCJpZ25vcmVkRmllbGRzIiwiZ2V0SWdub3JlZEZpZWxkcyIsImFkZENvbHVtbiIsImNvbHVtbiIsImFkZEFnZ3JlZ2F0aW9uIiwicmVtb3ZlQ29sdW1uIiwicmVtb3ZlQWdncmVnYXRpb24iLCJhZGRBY3Rpb24iLCJhY3Rpb24iLCJyZW1vdmVBY3Rpb24iLCJjcmVhdGVDb250ZW50Iiwib3duZXIiLCJzaG91bGRSZWJpbmQiLCJjb250ZW50IiwiZ2V0Um93QmluZGluZyIsImdldEN1cnJlbnRDb250ZXh0cyIsImxlbmd0aCIsInJlYmluZCIsIkJ1aWxkaW5nQmxvY2tXaXRoVGVtcGxhdGluZyIsIl9hcHBseURlY29yYXRlZERlc2NyaXB0b3IiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIlRyZWVUYWJsZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb252ZXJ0Q29udGV4dFRvU3RyaW5nIH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IHsgZGVmaW5lVUk1Q2xhc3MsIHhtbEV2ZW50SGFuZGxlciwgdHlwZSBFbmhhbmNlV2l0aFVJNSwgdHlwZSBQcm9wZXJ0aWVzT2YgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgdHlwZSBQYWdlQ29udHJvbGxlciBmcm9tIFwic2FwL2ZlL2NvcmUvUGFnZUNvbnRyb2xsZXJcIjtcbmltcG9ydCB0eXBlIFRlbXBsYXRlQ29tcG9uZW50IGZyb20gXCJzYXAvZmUvY29yZS9UZW1wbGF0ZUNvbXBvbmVudFwiO1xuaW1wb3J0IHsgY29udmVydEJ1aWxkaW5nQmxvY2tNZXRhZGF0YSB9IGZyb20gXCJzYXAvZmUvY29yZS9idWlsZGluZ0Jsb2Nrcy90ZW1wbGF0aW5nL0J1aWxkaW5nQmxvY2tTdXBwb3J0XCI7XG5pbXBvcnQgQnVpbGRpbmdCbG9ja1dpdGhUZW1wbGF0aW5nIGZyb20gXCJzYXAvZmUvbWFjcm9zL2NvbnRyb2xzL0J1aWxkaW5nQmxvY2tXaXRoVGVtcGxhdGluZ1wiO1xuaW1wb3J0IHR5cGUgQWN0aW9uIGZyb20gXCJzYXAvZmUvbWFjcm9zL3RhYmxlL0FjdGlvblwiO1xuaW1wb3J0IHR5cGUgQ29sdW1uIGZyb20gXCJzYXAvZmUvbWFjcm9zL3RhYmxlL0NvbHVtblwiO1xuaW1wb3J0IHR5cGUgVGFibGVBUEkgZnJvbSBcInNhcC9mZS9tYWNyb3MvdGFibGUvVGFibGVBUElcIjtcbmltcG9ydCBUcmVlVGFibGVCbG9jayBmcm9tIFwic2FwL2ZlL21hY3Jvcy90YWJsZS9UcmVlVGFibGUuYmxvY2tcIjtcbmltcG9ydCBGbGV4SXRlbURhdGEgZnJvbSBcInNhcC9tL0ZsZXhJdGVtRGF0YVwiO1xuaW1wb3J0IHR5cGUgVUk1RXZlbnQgZnJvbSBcInNhcC91aS9iYXNlL0V2ZW50XCI7XG5pbXBvcnQgdHlwZSB7ICRDb250cm9sU2V0dGluZ3MgfSBmcm9tIFwic2FwL3VpL21kYy9Db250cm9sXCI7XG5cbi8qKlxuICogQnVpbGRpbmcgYmxvY2sgdXNlZCB0byBjcmVhdGUgYSB0YWJsZSBiYXNlZCBvbiB0aGUgbWV0YWRhdGEgcHJvdmlkZWQgYnkgT0RhdGEgVjQuXG4gKiA8YnI+XG4gKiBVc3VhbGx5LCBhIExpbmVJdGVtLCBQcmVzZW50YXRpb25WYXJpYW50IG9yIFNlbGVjdGlvblByZXNlbnRhdGlvblZhcmlhbnQgYW5ub3RhdGlvbiBpcyBleHBlY3RlZCwgYnV0IHRoZSBUYWJsZSBidWlsZGluZyBibG9jayBjYW4gYWxzbyBiZSB1c2VkIHRvIGRpc3BsYXkgYW4gRW50aXR5U2V0LlxuICogPGJyPlxuICogSWYgYSBQcmVzZW50YXRpb25WYXJpYW50IGlzIHNwZWNpZmllZCwgdGhlbiBpdCBtdXN0IGhhdmUgVUkuTGluZUl0ZW0gYXMgdGhlIGZpcnN0IHByb3BlcnR5IG9mIHRoZSBWaXN1YWxpemF0aW9ucy5cbiAqIDxicj5cbiAqIElmIGEgU2VsZWN0aW9uUHJlc2VudGF0aW9uVmFyaWFudCBpcyBzcGVjaWZpZWQsIHRoZW4gaXQgbXVzdCBjb250YWluIGEgdmFsaWQgUHJlc2VudGF0aW9uVmFyaWFudCB0aGF0IGFsc28gaGFzIGEgVUkuTGluZUl0ZW0gYXMgdGhlIGZpcnN0IHByb3BlcnR5IG9mIHRoZSBWaXN1YWxpemF0aW9ucy5cbiAqXG4gKiBVc2FnZSBleGFtcGxlOlxuICogPHByZT5cbiAqIHNhcC51aS5yZXF1aXJlKFtcInNhcC9mZS9tYWNyb3MvdGFibGUvVHJlZVRhYmxlXCJdLCBmdW5jdGlvbihUcmVlVGFibGUpIHtcbiAqIFx0IC4uLlxuICogXHQgbmV3IFRyZWVUYWJsZShcIm15VGFibGVcIiwge21ldGFQYXRoOlwiQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkxpbmVJdGVtXCJ9KVxuICogfSlcbiAqIDwvcHJlPlxuICpcbiAqIFRoaXMgaXMgY3VycmVudGx5IGFuIGV4cGVyaW1lbnRhbCBBUEkgYmVjYXVzZSB0aGUgc3RydWN0dXJlIG9mIHRoZSBnZW5lcmF0ZWQgY29udGVudCB3aWxsIGNoYW5nZSB0byBjb21lIGNsb3NlciB0byB0aGUgVGFibGUgdGhhdCB5b3UgZ2V0IG91dCBvZiB0ZW1wbGF0ZXMuXG4gKiBUaGUgcHVibGljIG1ldGhvZCBhbmQgcHJvcGVydHkgd2lsbCBub3QgY2hhbmdlIGJ1dCB0aGUgaW50ZXJuYWwgc3RydWN0dXJlIHdpbGwgc28gYmUgY2FyZWZ1bCBvbiB5b3VyIHVzYWdlLlxuICogQHB1YmxpY1xuICogQGV4cGVyaW1lbnRhbFxuICogQHNpbmNlIDEuMTI1LjBcbiAqIEBtaXhlcyBzYXAuZmUubWFjcm9zLlRyZWVUYWJsZVxuICovXG5AZGVmaW5lVUk1Q2xhc3MoXCJzYXAuZmUubWFjcm9zLnRhYmxlLlRyZWVUYWJsZVwiLCBjb252ZXJ0QnVpbGRpbmdCbG9ja01ldGFkYXRhKFRyZWVUYWJsZUJsb2NrKSlcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFRyZWVUYWJsZSBleHRlbmRzIEJ1aWxkaW5nQmxvY2tXaXRoVGVtcGxhdGluZyB7XG5cdGNvbnN0cnVjdG9yKHByb3BzPzogQ29udmVydENvbnRleHRUb1N0cmluZzxQcm9wZXJ0aWVzT2Y8VHJlZVRhYmxlQmxvY2s+PiAmICRDb250cm9sU2V0dGluZ3MsIG90aGVycz86ICRDb250cm9sU2V0dGluZ3MpIHtcblx0XHRzdXBlcihwcm9wcywgb3RoZXJzKTtcblx0XHR0aGlzLmNyZWF0ZVByb3h5TWV0aG9kcyhbXG5cdFx0XHRcImdldFNlbGVjdGVkQ29udGV4dHNcIixcblx0XHRcdFwiYWRkTWVzc2FnZVwiLFxuXHRcdFx0XCJyZW1vdmVNZXNzYWdlXCIsXG5cdFx0XHRcInJlZnJlc2hcIixcblx0XHRcdFwiZ2V0UHJlc2VudGF0aW9uVmFyaWFudFwiLFxuXHRcdFx0XCJzZXRQcmVzZW50YXRpb25WYXJpYW50XCIsXG5cdFx0XHRcImdldEN1cnJlbnRWYXJpYW50S2V5XCIsXG5cdFx0XHRcInNldEN1cnJlbnRWYXJpYW50S2V5XCIsXG5cdFx0XHRcImdldFNlbGVjdGlvblZhcmlhbnRcIixcblx0XHRcdFwic2V0U2VsZWN0aW9uVmFyaWFudFwiXG5cdFx0XSk7XG5cdH1cblxuXHRAeG1sRXZlbnRIYW5kbGVyKClcblx0X2ZpcmVFdmVudCh1aTVFdmVudDogVUk1RXZlbnQsIF9jb250cm9sbGVyOiBQYWdlQ29udHJvbGxlciwgZXZlbnRJZDogc3RyaW5nKTogdm9pZCB7XG5cdFx0dGhpcy5maXJlRXZlbnQoZXZlbnRJZCwgdWk1RXZlbnQuZ2V0UGFyYW1ldGVycygpKTtcblx0fVxuXG5cdGdldExheW91dERhdGEoKTogRmxleEl0ZW1EYXRhIHtcblx0XHRyZXR1cm4gbmV3IEZsZXhJdGVtRGF0YSh7IG1heFdpZHRoOiBcIjEwMCVcIiB9KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBTZXRzIHRoZSBwYXRoIHRvIHRoZSBtZXRhZGF0YSB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIGdlbmVyYXRlIHRoZSB0YWJsZS5cblx0ICogQHBhcmFtIG1ldGFQYXRoIFRoZSBwYXRoIHRvIHRoZSBtZXRhZGF0YVxuXHQgKiBAcmV0dXJucyBSZWZlcmVuY2UgdG8gdGhpcyBpbiBvcmRlciB0byBhbGxvdyBtZXRob2QgY2hhaW5pbmdcblx0ICogQGV4cGVyaW1lbnRhbFxuXHQgKiBAc2luY2UgMS4xMjUuMFxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRzZXRNZXRhUGF0aChtZXRhUGF0aDogc3RyaW5nKTogdGhpcyB7XG5cdFx0cmV0dXJuIHRoaXMuc2V0UHJvcGVydHkoXCJtZXRhUGF0aFwiLCBtZXRhUGF0aCk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0cyB0aGUgcGF0aCB0byB0aGUgbWV0YWRhdGEgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBnZW5lcmF0ZSB0aGUgdGFibGUuXG5cdCAqIEByZXR1cm5zIFRoZSBwYXRoIHRvIHRoZSBtZXRhZGF0YVxuXHQgKiBAZXhwZXJpbWVudGFsXG5cdCAqIEBzaW5jZSAxLjEyNS4wXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdGdldE1ldGFQYXRoKCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0UHJvcGVydHkoXCJtZXRhUGF0aFwiKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBTZXRzIHRoZSBmaWVsZHMgdGhhdCBzaG91bGQgYmUgaWdub3JlZCB3aGVuIGdlbmVyYXRpbmcgdGhlIHRhYmxlLlxuXHQgKiBAcGFyYW0gaWdub3JlZEZpZWxkcyBUaGUgZmllbGRzIHRvIGlnbm9yZVxuXHQgKiBAcmV0dXJucyBSZWZlcmVuY2UgdG8gdGhpcyBpbiBvcmRlciB0byBhbGxvdyBtZXRob2QgY2hhaW5pbmdcblx0ICogQGV4cGVyaW1lbnRhbFxuXHQgKiBAc2luY2UgMS4xMjUuMFxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRzZXRJZ25vcmVkRmllbGRzKGlnbm9yZWRGaWVsZHM6IHN0cmluZyk6IHRoaXMge1xuXHRcdHJldHVybiB0aGlzLnNldFByb3BlcnR5KFwiaWdub3JlZEZpZWxkc1wiLCBpZ25vcmVkRmllbGRzKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZXQgdGhlIGZpZWxkcyB0aGF0IHNob3VsZCBiZSBpZ25vcmVkIHdoZW4gZ2VuZXJhdGluZyB0aGUgdGFibGUuXG5cdCAqIEByZXR1cm5zIFRoZSB2YWx1ZSBvZiB0aGUgaWdub3JlZEZpZWxkcyBwcm9wZXJ0eVxuXHQgKiBAZXhwZXJpbWVudGFsXG5cdCAqIEBzaW5jZSAxLjEyNS4wXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdGdldElnbm9yZWRGaWVsZHMoKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gdGhpcy5nZXRQcm9wZXJ0eShcImlnbm9yZWRGaWVsZHNcIik7XG5cdH1cblxuXHQvKipcblx0ICogQWRkcyBhIGNvbHVtbiB0byB0aGUgdGFibGUuXG5cdCAqIEBwYXJhbSBjb2x1bW4gVGhlIGNvbHVtbiB0byBhZGRcblx0ICogQHJldHVybnMgUmVmZXJlbmNlIHRvIHRoaXMgaW4gb3JkZXIgdG8gYWxsb3cgbWV0aG9kIGNoYWluaW5nXG5cdCAqIEBleHBlcmltZW50YWxcblx0ICogQHNpbmNlIDEuMTI0LjBcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0YWRkQ29sdW1uKGNvbHVtbjogQ29sdW1uKTogdGhpcyB7XG5cdFx0cmV0dXJuIHRoaXMuYWRkQWdncmVnYXRpb24oXCJjb2x1bW5zXCIsIGNvbHVtbik7XG5cdH1cblxuXHQvKipcblx0ICogUmVtb3ZlcyBhIGNvbHVtbiBmcm9tIHRoZSB0YWJsZS5cblx0ICogQHBhcmFtIGNvbHVtbiBUaGUgY29sdW1uIHRvIHJlbW92ZSwgb3IgaXRzIGluZGV4IG9yIElEXG5cdCAqIEByZXR1cm5zIFRoZSByZW1vdmVkIGNvbHVtbiBvciBudWxsXG5cdCAqIEBleHBlcmltZW50YWxcblx0ICogQHNpbmNlIDEuMTI1LjBcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0cmVtb3ZlQ29sdW1uKGNvbHVtbjogbnVtYmVyIHwgc3RyaW5nIHwgQ29sdW1uKTogQ29sdW1uIHwgbnVsbCB7XG5cdFx0cmV0dXJuIHRoaXMucmVtb3ZlQWdncmVnYXRpb24oXCJjb2x1bW5zXCIsIGNvbHVtbikgYXMgQ29sdW1uIHwgbnVsbDtcblx0fVxuXG5cdC8qKlxuXHQgKiBBZGRzIGFuIGFjdGlvbiB0byB0aGUgdGFibGUuXG5cdCAqIEBwYXJhbSBhY3Rpb24gVGhlIGFjdGlvbiB0byBhZGRcblx0ICogQHJldHVybnMgUmVmZXJlbmNlIHRvIHRoaXMgaW4gb3JkZXIgdG8gYWxsb3cgbWV0aG9kIGNoYWluaW5nXG5cdCAqIEBleHBlcmltZW50YWxcblx0ICogQHNpbmNlIDEuMTI1LjBcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0YWRkQWN0aW9uKGFjdGlvbjogQWN0aW9uKTogdGhpcyB7XG5cdFx0cmV0dXJuIHRoaXMuYWRkQWdncmVnYXRpb24oXCJhY3Rpb25zXCIsIGFjdGlvbik7XG5cdH1cblxuXHQvKipcblx0ICogUmVtb3ZlcyBhbiBhY3Rpb24gZnJvbSB0aGUgdGFibGUuXG5cdCAqIEBwYXJhbSBhY3Rpb24gVGhlIGFjdGlvbiB0byByZW1vdmUsIG9yIGl0cyBpbmRleCBvciBJRFxuXHQgKiBAcmV0dXJucyBUaGUgcmVtb3ZlZCBhY3Rpb24gb3IgbnVsbFxuXHQgKiBAZXhwZXJpbWVudGFsXG5cdCAqIEBzaW5jZSAxLjEyNS4wXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdHJlbW92ZUFjdGlvbihhY3Rpb246IG51bWJlciB8IHN0cmluZyB8IEFjdGlvbik6IEFjdGlvbiB8IG51bGwge1xuXHRcdHJldHVybiB0aGlzLnJlbW92ZUFnZ3JlZ2F0aW9uKFwiYWN0aW9uc1wiLCBhY3Rpb24pIGFzIEFjdGlvbiB8IG51bGw7XG5cdH1cblxuXHRhc3luYyBjcmVhdGVDb250ZW50KG93bmVyOiBFbmhhbmNlV2l0aFVJNTxUZW1wbGF0ZUNvbXBvbmVudD4pOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRjb25zdCBzaG91bGRSZWJpbmQgPSAodGhpcy5jb250ZW50IGFzIFRhYmxlQVBJKT8uY29udGVudC5nZXRSb3dCaW5kaW5nKCk/LmdldEN1cnJlbnRDb250ZXh0cygpLmxlbmd0aCA+IDA7XG5cdFx0YXdhaXQgc3VwZXIuY3JlYXRlQ29udGVudChvd25lcik7XG5cdFx0aWYgKHNob3VsZFJlYmluZCkge1xuXHRcdFx0KHRoaXMuY29udGVudCBhcyBUYWJsZUFQSSk/LmNvbnRlbnQucmViaW5kPy4oKTtcblx0XHR9XG5cdH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0VBY0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBdkJBLElBeUJxQkEsU0FBUyxJQUFBQyxJQUFBLEdBRDdCQyxjQUFjLENBQUMsK0JBQStCLEVBQUVDLDRCQUE0QixDQUFDQyxjQUFjLENBQUMsQ0FBQyxFQUFBQyxLQUFBLEdBa0I1RkMsZUFBZSxDQUFDLENBQUMsRUFBQUwsSUFBQSxDQUFBTSxNQUFBLElBQUFDLE9BQUEs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
|
|
170
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUcmVlVGFibGUiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJjb252ZXJ0QnVpbGRpbmdCbG9ja01ldGFkYXRhIiwiVHJlZVRhYmxlQmxvY2siLCJfZGVjMiIsInhtbEV2ZW50SGFuZGxlciIsIl9jbGFzcyIsIl9jbGFzczIiLCJfQnVpbGRpbmdCbG9ja1dpdGhUZW0iLCJwcm9wcyIsIm90aGVycyIsIl90aGlzIiwiY2FsbCIsImNyZWF0ZVByb3h5TWV0aG9kcyIsIl9leHBvcnRzIiwiX2luaGVyaXRzTG9vc2UiLCJfcHJvdG8iLCJwcm90b3R5cGUiLCJfZmlyZUV2ZW50IiwidWk1RXZlbnQiLCJfY29udHJvbGxlciIsImV2ZW50SWQiLCJhY3Rpb25zIiwiZ2V0QWdncmVnYXRpb24iLCJhY3Rpb24iLCJmaW5kIiwiYSIsImdldFBhcmFtZXRlciIsImVuZHNXaXRoIiwiZ2V0S2V5IiwiZmlyZUV2ZW50IiwiZ2V0UGFyYW1ldGVycyIsImdldExheW91dERhdGEiLCJGbGV4SXRlbURhdGEiLCJtYXhXaWR0aCIsInNldE1ldGFQYXRoIiwibWV0YVBhdGgiLCJzZXRQcm9wZXJ0eSIsImdldE1ldGFQYXRoIiwiZ2V0UHJvcGVydHkiLCJzZXRJZ25vcmVkRmllbGRzIiwiaWdub3JlZEZpZWxkcyIsImdldElnbm9yZWRGaWVsZHMiLCJhZGRDb2x1bW4iLCJjb2x1bW4iLCJhZGRBZ2dyZWdhdGlvbiIsInJlbW92ZUNvbHVtbiIsInJlbW92ZUFnZ3JlZ2F0aW9uIiwiYWRkQWN0aW9uIiwicmVtb3ZlQWN0aW9uIiwiY3JlYXRlQ29udGVudCIsIm93bmVyIiwic2hvdWxkUmViaW5kIiwiY29udGVudCIsImdldFJvd0JpbmRpbmciLCJnZXRDdXJyZW50Q29udGV4dHMiLCJsZW5ndGgiLCJyZWJpbmQiLCJCdWlsZGluZ0Jsb2NrV2l0aFRlbXBsYXRpbmciLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yIiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJUcmVlVGFibGUudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29udmVydENvbnRleHRUb1N0cmluZyB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB7IGRlZmluZVVJNUNsYXNzLCB4bWxFdmVudEhhbmRsZXIsIHR5cGUgRW5oYW5jZVdpdGhVSTUsIHR5cGUgUHJvcGVydGllc09mIH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IHR5cGUgUGFnZUNvbnRyb2xsZXIgZnJvbSBcInNhcC9mZS9jb3JlL1BhZ2VDb250cm9sbGVyXCI7XG5pbXBvcnQgdHlwZSBUZW1wbGF0ZUNvbXBvbmVudCBmcm9tIFwic2FwL2ZlL2NvcmUvVGVtcGxhdGVDb21wb25lbnRcIjtcbmltcG9ydCB7IGNvbnZlcnRCdWlsZGluZ0Jsb2NrTWV0YWRhdGEgfSBmcm9tIFwic2FwL2ZlL2NvcmUvYnVpbGRpbmdCbG9ja3MvdGVtcGxhdGluZy9CdWlsZGluZ0Jsb2NrU3VwcG9ydFwiO1xuaW1wb3J0IEJ1aWxkaW5nQmxvY2tXaXRoVGVtcGxhdGluZyBmcm9tIFwic2FwL2ZlL21hY3Jvcy9jb250cm9scy9CdWlsZGluZ0Jsb2NrV2l0aFRlbXBsYXRpbmdcIjtcbmltcG9ydCB0eXBlIEFjdGlvbiBmcm9tIFwic2FwL2ZlL21hY3Jvcy90YWJsZS9BY3Rpb25cIjtcbmltcG9ydCB0eXBlIENvbHVtbiBmcm9tIFwic2FwL2ZlL21hY3Jvcy90YWJsZS9Db2x1bW5cIjtcbmltcG9ydCB0eXBlIFRhYmxlQVBJIGZyb20gXCJzYXAvZmUvbWFjcm9zL3RhYmxlL1RhYmxlQVBJXCI7XG5pbXBvcnQgVHJlZVRhYmxlQmxvY2sgZnJvbSBcInNhcC9mZS9tYWNyb3MvdGFibGUvVHJlZVRhYmxlLmJsb2NrXCI7XG5pbXBvcnQgRmxleEl0ZW1EYXRhIGZyb20gXCJzYXAvbS9GbGV4SXRlbURhdGFcIjtcbmltcG9ydCB0eXBlIFVJNUV2ZW50IGZyb20gXCJzYXAvdWkvYmFzZS9FdmVudFwiO1xuaW1wb3J0IHR5cGUgeyAkQ29udHJvbFNldHRpbmdzIH0gZnJvbSBcInNhcC91aS9tZGMvQ29udHJvbFwiO1xuXG4vKipcbiAqIEJ1aWxkaW5nIGJsb2NrIHVzZWQgdG8gY3JlYXRlIGEgdGFibGUgYmFzZWQgb24gdGhlIG1ldGFkYXRhIHByb3ZpZGVkIGJ5IE9EYXRhIFY0LlxuICogPGJyPlxuICogVXN1YWxseSwgYSBMaW5lSXRlbSwgUHJlc2VudGF0aW9uVmFyaWFudCBvciBTZWxlY3Rpb25QcmVzZW50YXRpb25WYXJpYW50IGFubm90YXRpb24gaXMgZXhwZWN0ZWQsIGJ1dCB0aGUgVGFibGUgYnVpbGRpbmcgYmxvY2sgY2FuIGFsc28gYmUgdXNlZCB0byBkaXNwbGF5IGFuIEVudGl0eVNldC5cbiAqIDxicj5cbiAqIElmIGEgUHJlc2VudGF0aW9uVmFyaWFudCBpcyBzcGVjaWZpZWQsIHRoZW4gaXQgbXVzdCBoYXZlIFVJLkxpbmVJdGVtIGFzIHRoZSBmaXJzdCBwcm9wZXJ0eSBvZiB0aGUgVmlzdWFsaXphdGlvbnMuXG4gKiA8YnI+XG4gKiBJZiBhIFNlbGVjdGlvblByZXNlbnRhdGlvblZhcmlhbnQgaXMgc3BlY2lmaWVkLCB0aGVuIGl0IG11c3QgY29udGFpbiBhIHZhbGlkIFByZXNlbnRhdGlvblZhcmlhbnQgdGhhdCBhbHNvIGhhcyBhIFVJLkxpbmVJdGVtIGFzIHRoZSBmaXJzdCBwcm9wZXJ0eSBvZiB0aGUgVmlzdWFsaXphdGlvbnMuXG4gKlxuICogVXNhZ2UgZXhhbXBsZTpcbiAqIDxwcmU+XG4gKiBzYXAudWkucmVxdWlyZShbXCJzYXAvZmUvbWFjcm9zL3RhYmxlL1RyZWVUYWJsZVwiXSwgZnVuY3Rpb24oVHJlZVRhYmxlKSB7XG4gKiBcdCAuLi5cbiAqIFx0IG5ldyBUcmVlVGFibGUoXCJteVRhYmxlXCIsIHttZXRhUGF0aDpcIkBjb20uc2FwLnZvY2FidWxhcmllcy5VSS52MS5MaW5lSXRlbVwifSlcbiAqIH0pXG4gKiA8L3ByZT5cbiAqXG4gKiBUaGlzIGlzIGN1cnJlbnRseSBhbiBleHBlcmltZW50YWwgQVBJIGJlY2F1c2UgdGhlIHN0cnVjdHVyZSBvZiB0aGUgZ2VuZXJhdGVkIGNvbnRlbnQgd2lsbCBjaGFuZ2UgdG8gY29tZSBjbG9zZXIgdG8gdGhlIFRhYmxlIHRoYXQgeW91IGdldCBvdXQgb2YgdGVtcGxhdGVzLlxuICogVGhlIHB1YmxpYyBtZXRob2QgYW5kIHByb3BlcnR5IHdpbGwgbm90IGNoYW5nZSBidXQgdGhlIGludGVybmFsIHN0cnVjdHVyZSB3aWxsIHNvIGJlIGNhcmVmdWwgb24geW91ciB1c2FnZS5cbiAqIEBwdWJsaWNcbiAqIEBleHBlcmltZW50YWxcbiAqIEBzaW5jZSAxLjEyNS4wXG4gKiBAbWl4ZXMgc2FwLmZlLm1hY3Jvcy5UcmVlVGFibGVcbiAqL1xuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLm1hY3Jvcy50YWJsZS5UcmVlVGFibGVcIiwgY29udmVydEJ1aWxkaW5nQmxvY2tNZXRhZGF0YShUcmVlVGFibGVCbG9jaykpXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUcmVlVGFibGUgZXh0ZW5kcyBCdWlsZGluZ0Jsb2NrV2l0aFRlbXBsYXRpbmcge1xuXHRjb25zdHJ1Y3Rvcihwcm9wcz86IENvbnZlcnRDb250ZXh0VG9TdHJpbmc8UHJvcGVydGllc09mPFRyZWVUYWJsZUJsb2NrPj4gJiAkQ29udHJvbFNldHRpbmdzLCBvdGhlcnM/OiAkQ29udHJvbFNldHRpbmdzKSB7XG5cdFx0c3VwZXIocHJvcHMsIG90aGVycyk7XG5cdFx0dGhpcy5jcmVhdGVQcm94eU1ldGhvZHMoW1xuXHRcdFx0XCJnZXRTZWxlY3RlZENvbnRleHRzXCIsXG5cdFx0XHRcImFkZE1lc3NhZ2VcIixcblx0XHRcdFwicmVtb3ZlTWVzc2FnZVwiLFxuXHRcdFx0XCJyZWZyZXNoXCIsXG5cdFx0XHRcImdldFByZXNlbnRhdGlvblZhcmlhbnRcIixcblx0XHRcdFwic2V0UHJlc2VudGF0aW9uVmFyaWFudFwiLFxuXHRcdFx0XCJnZXRDdXJyZW50VmFyaWFudEtleVwiLFxuXHRcdFx0XCJzZXRDdXJyZW50VmFyaWFudEtleVwiLFxuXHRcdFx0XCJnZXRTZWxlY3Rpb25WYXJpYW50XCIsXG5cdFx0XHRcInNldFNlbGVjdGlvblZhcmlhbnRcIlxuXHRcdF0pO1xuXHR9XG5cblx0QHhtbEV2ZW50SGFuZGxlcigpXG5cdF9maXJlRXZlbnQodWk1RXZlbnQ6IFVJNUV2ZW50PHsgaWQ6IHN0cmluZyB9PiwgX2NvbnRyb2xsZXI6IFBhZ2VDb250cm9sbGVyLCBldmVudElkOiBzdHJpbmcpOiB2b2lkIHtcblx0XHRjb25zdCBhY3Rpb25zID0gdGhpcy5nZXRBZ2dyZWdhdGlvbihcImFjdGlvbnNcIikgYXMgRW5oYW5jZVdpdGhVSTU8QWN0aW9uPltdIHwgdW5kZWZpbmVkO1xuXHRcdGlmIChhY3Rpb25zKSB7XG5cdFx0XHRjb25zdCBhY3Rpb24gPSBhY3Rpb25zLmZpbmQoKGEpID0+IHVpNUV2ZW50LmdldFBhcmFtZXRlcihcImlkXCIpLmVuZHNXaXRoKFwiOjpcIiArIGEuZ2V0S2V5KCkpKTtcblx0XHRcdGFjdGlvbj8uZmlyZUV2ZW50KGV2ZW50SWQsIHVpNUV2ZW50LmdldFBhcmFtZXRlcnMoKSk7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXHRcdHRoaXMuZmlyZUV2ZW50KGV2ZW50SWQsIHVpNUV2ZW50LmdldFBhcmFtZXRlcnMoKSk7XG5cdH1cblxuXHRnZXRMYXlvdXREYXRhKCk6IEZsZXhJdGVtRGF0YSB7XG5cdFx0cmV0dXJuIG5ldyBGbGV4SXRlbURhdGEoeyBtYXhXaWR0aDogXCIxMDAlXCIgfSk7XG5cdH1cblxuXHQvKipcblx0ICogU2V0cyB0aGUgcGF0aCB0byB0aGUgbWV0YWRhdGEgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBnZW5lcmF0ZSB0aGUgdGFibGUuXG5cdCAqIEBwYXJhbSBtZXRhUGF0aCBUaGUgcGF0aCB0byB0aGUgbWV0YWRhdGFcblx0ICogQHJldHVybnMgUmVmZXJlbmNlIHRvIHRoaXMgaW4gb3JkZXIgdG8gYWxsb3cgbWV0aG9kIGNoYWluaW5nXG5cdCAqIEBleHBlcmltZW50YWxcblx0ICogQHNpbmNlIDEuMTI1LjBcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0c2V0TWV0YVBhdGgobWV0YVBhdGg6IHN0cmluZyk6IHRoaXMge1xuXHRcdHJldHVybiB0aGlzLnNldFByb3BlcnR5KFwibWV0YVBhdGhcIiwgbWV0YVBhdGgpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEdldHMgdGhlIHBhdGggdG8gdGhlIG1ldGFkYXRhIHRoYXQgc2hvdWxkIGJlIHVzZWQgdG8gZ2VuZXJhdGUgdGhlIHRhYmxlLlxuXHQgKiBAcmV0dXJucyBUaGUgcGF0aCB0byB0aGUgbWV0YWRhdGFcblx0ICogQGV4cGVyaW1lbnRhbFxuXHQgKiBAc2luY2UgMS4xMjUuMFxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRnZXRNZXRhUGF0aCgpOiBzdHJpbmcge1xuXHRcdHJldHVybiB0aGlzLmdldFByb3BlcnR5KFwibWV0YVBhdGhcIik7XG5cdH1cblxuXHQvKipcblx0ICogU2V0cyB0aGUgZmllbGRzIHRoYXQgc2hvdWxkIGJlIGlnbm9yZWQgd2hlbiBnZW5lcmF0aW5nIHRoZSB0YWJsZS5cblx0ICogQHBhcmFtIGlnbm9yZWRGaWVsZHMgVGhlIGZpZWxkcyB0byBpZ25vcmVcblx0ICogQHJldHVybnMgUmVmZXJlbmNlIHRvIHRoaXMgaW4gb3JkZXIgdG8gYWxsb3cgbWV0aG9kIGNoYWluaW5nXG5cdCAqIEBleHBlcmltZW50YWxcblx0ICogQHNpbmNlIDEuMTI1LjBcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0c2V0SWdub3JlZEZpZWxkcyhpZ25vcmVkRmllbGRzOiBzdHJpbmcpOiB0aGlzIHtcblx0XHRyZXR1cm4gdGhpcy5zZXRQcm9wZXJ0eShcImlnbm9yZWRGaWVsZHNcIiwgaWdub3JlZEZpZWxkcyk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0IHRoZSBmaWVsZHMgdGhhdCBzaG91bGQgYmUgaWdub3JlZCB3aGVuIGdlbmVyYXRpbmcgdGhlIHRhYmxlLlxuXHQgKiBAcmV0dXJucyBUaGUgdmFsdWUgb2YgdGhlIGlnbm9yZWRGaWVsZHMgcHJvcGVydHlcblx0ICogQGV4cGVyaW1lbnRhbFxuXHQgKiBAc2luY2UgMS4xMjUuMFxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRnZXRJZ25vcmVkRmllbGRzKCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0UHJvcGVydHkoXCJpZ25vcmVkRmllbGRzXCIpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEFkZHMgYSBjb2x1bW4gdG8gdGhlIHRhYmxlLlxuXHQgKiBAcGFyYW0gY29sdW1uIFRoZSBjb2x1bW4gdG8gYWRkXG5cdCAqIEByZXR1cm5zIFJlZmVyZW5jZSB0byB0aGlzIGluIG9yZGVyIHRvIGFsbG93IG1ldGhvZCBjaGFpbmluZ1xuXHQgKiBAZXhwZXJpbWVudGFsXG5cdCAqIEBzaW5jZSAxLjEyNC4wXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdGFkZENvbHVtbihjb2x1bW46IENvbHVtbik6IHRoaXMge1xuXHRcdHJldHVybiB0aGlzLmFkZEFnZ3JlZ2F0aW9uKFwiY29sdW1uc1wiLCBjb2x1bW4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJlbW92ZXMgYSBjb2x1bW4gZnJvbSB0aGUgdGFibGUuXG5cdCAqIEBwYXJhbSBjb2x1bW4gVGhlIGNvbHVtbiB0byByZW1vdmUsIG9yIGl0cyBpbmRleCBvciBJRFxuXHQgKiBAcmV0dXJucyBUaGUgcmVtb3ZlZCBjb2x1bW4gb3IgbnVsbFxuXHQgKiBAZXhwZXJpbWVudGFsXG5cdCAqIEBzaW5jZSAxLjEyNS4wXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdHJlbW92ZUNvbHVtbihjb2x1bW46IG51bWJlciB8IHN0cmluZyB8IENvbHVtbik6IENvbHVtbiB8IG51bGwge1xuXHRcdHJldHVybiB0aGlzLnJlbW92ZUFnZ3JlZ2F0aW9uKFwiY29sdW1uc1wiLCBjb2x1bW4pIGFzIENvbHVtbiB8IG51bGw7XG5cdH1cblxuXHQvKipcblx0ICogQWRkcyBhbiBhY3Rpb24gdG8gdGhlIHRhYmxlLlxuXHQgKiBAcGFyYW0gYWN0aW9uIFRoZSBhY3Rpb24gdG8gYWRkXG5cdCAqIEByZXR1cm5zIFJlZmVyZW5jZSB0byB0aGlzIGluIG9yZGVyIHRvIGFsbG93IG1ldGhvZCBjaGFpbmluZ1xuXHQgKiBAZXhwZXJpbWVudGFsXG5cdCAqIEBzaW5jZSAxLjEyNS4wXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdGFkZEFjdGlvbihhY3Rpb246IEFjdGlvbik6IHRoaXMge1xuXHRcdHJldHVybiB0aGlzLmFkZEFnZ3JlZ2F0aW9uKFwiYWN0aW9uc1wiLCBhY3Rpb24pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJlbW92ZXMgYW4gYWN0aW9uIGZyb20gdGhlIHRhYmxlLlxuXHQgKiBAcGFyYW0gYWN0aW9uIFRoZSBhY3Rpb24gdG8gcmVtb3ZlLCBvciBpdHMgaW5kZXggb3IgSURcblx0ICogQHJldHVybnMgVGhlIHJlbW92ZWQgYWN0aW9uIG9yIG51bGxcblx0ICogQGV4cGVyaW1lbnRhbFxuXHQgKiBAc2luY2UgMS4xMjUuMFxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRyZW1vdmVBY3Rpb24oYWN0aW9uOiBudW1iZXIgfCBzdHJpbmcgfCBBY3Rpb24pOiBBY3Rpb24gfCBudWxsIHtcblx0XHRyZXR1cm4gdGhpcy5yZW1vdmVBZ2dyZWdhdGlvbihcImFjdGlvbnNcIiwgYWN0aW9uKSBhcyBBY3Rpb24gfCBudWxsO1xuXHR9XG5cblx0YXN5bmMgY3JlYXRlQ29udGVudChvd25lcjogRW5oYW5jZVdpdGhVSTU8VGVtcGxhdGVDb21wb25lbnQ+KTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0Y29uc3Qgc2hvdWxkUmViaW5kID0gKHRoaXMuY29udGVudCBhcyBUYWJsZUFQSSk/LmNvbnRlbnQuZ2V0Um93QmluZGluZygpPy5nZXRDdXJyZW50Q29udGV4dHMoKS5sZW5ndGggPiAwO1xuXHRcdGF3YWl0IHN1cGVyLmNyZWF0ZUNvbnRlbnQob3duZXIpO1xuXHRcdGlmIChzaG91bGRSZWJpbmQpIHtcblx0XHRcdCh0aGlzLmNvbnRlbnQgYXMgVGFibGVBUEkpPy5jb250ZW50LnJlYmluZD8uKCk7XG5cdFx0fVxuXHR9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztFQWNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQXZCQSxJQXlCcUJBLFNBQVMsSUFBQUMsSUFBQSxHQUQ3QkMsY0FBYyxDQUFDLCtCQUErQixFQUFFQyw0QkFBNEIsQ0FBQ0MsY0FBYyxDQUFDLENBQUMsRUFBQUMsS0FBQSxHQWtCNUZDLGVBQWUsQ0FBQyxDQUFDLEVBQUFMLElBQUEsQ0FBQU0sTUFBQSxJQUFBQyxPQUFBLDBCQUFBQyxxQkFBQTtJQWhCbEIsU0FBQVQsVUFBWVUsS0FBK0UsRUFBRUMsTUFBeUIsRUFBRTtNQUFBLElBQUFDLEtBQUE7TUFDdkhBLEtBQUEsR0FBQUgscUJBQUEsQ0FBQUksSUFBQSxPQUFNSCxLQUFLLEVBQUVDLE1BQU0sQ0FBQztNQUNwQkMsS0FBQSxDQUFLRSxrQkFBa0IsQ0FBQyxDQUN2QixxQkFBcUIsRUFDckIsWUFBWSxFQUNaLGVBQWUsRUFDZixTQUFTLEVBQ1Qsd0JBQXdCLEVBQ3hCLHdCQUF3QixFQUN4QixzQkFBc0IsRUFDdEIsc0JBQXNCLEVBQ3RCLHFCQUFxQixFQUNyQixxQkFBcUIsQ0FDckIsQ0FBQztNQUFDLE9BQUFGLEtBQUE7SUFDSjtJQUFDRyxRQUFBLEdBQUFmLFNBQUE7SUFBQWdCLGNBQUEsQ0FBQWhCLFNBQUEsRUFBQVMscUJBQUE7SUFBQSxJQUFBUSxNQUFBLEdBQUFqQixTQUFBLENBQUFrQixTQUFBO0lBQUFELE1BQUEsQ0FHREUsVUFBVSxHQURWLFNBQ0FBLFVBQVVBLENBQUNDLFFBQWtDLEVBQUVDLFdBQTJCLEVBQUVDLE9BQWUsRUFBUTtNQUNsRyxNQUFNQyxPQUFP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
|
|
@@ -55,7 +55,13 @@ export default class TreeTable extends BuildingBlockWithTemplating {
|
|
|
55
55
|
}
|
|
56
56
|
|
|
57
57
|
@xmlEventHandler()
|
|
58
|
-
_fireEvent(ui5Event: UI5Event
|
|
58
|
+
_fireEvent(ui5Event: UI5Event<{ id: string }>, _controller: PageController, eventId: string): void {
|
|
59
|
+
const actions = this.getAggregation("actions") as EnhanceWithUI5<Action>[] | undefined;
|
|
60
|
+
if (actions) {
|
|
61
|
+
const action = actions.find((a) => ui5Event.getParameter("id").endsWith("::" + a.getKey()));
|
|
62
|
+
action?.fireEvent(eventId, ui5Event.getParameters());
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
59
65
|
this.fireEvent(eventId, ui5Event.getParameters());
|
|
60
66
|
}
|
|
61
67
|
|