@sapui5/sap.fe.macros 1.142.0 → 1.142.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/Field.js +5 -5
- package/src/sap/fe/macros/Field.ts +5 -3
- package/src/sap/fe/macros/FooterContent.js +3 -2
- package/src/sap/fe/macros/FooterContent.tsx +2 -10
- package/src/sap/fe/macros/MessageButton.js +3 -3
- package/src/sap/fe/macros/MessageButton.tsx +3 -2
- package/src/sap/fe/macros/Page.js +8 -4
- package/src/sap/fe/macros/Page.tsx +13 -4
- package/src/sap/fe/macros/RichTextEditor.js +12 -14
- package/src/sap/fe/macros/RichTextEditor.tsx +10 -13
- package/src/sap/fe/macros/ai/EasyFillDialog.js +2 -1
- package/src/sap/fe/macros/ai/EasyFillDialog.tsx +1 -0
- package/src/sap/fe/macros/ai/SummarizationButton.js +6 -4
- package/src/sap/fe/macros/ai/SummarizationButton.tsx +5 -3
- package/src/sap/fe/macros/chart/Action.js +19 -7
- package/src/sap/fe/macros/chart/Action.ts +8 -0
- package/src/sap/fe/macros/chart/ChartDelegate.js +13 -2
- package/src/sap/fe/macros/chart/ChartDelegate.ts +20 -1
- package/src/sap/fe/macros/chart/MdcChartTemplate.js +8 -6
- package/src/sap/fe/macros/chart/MdcChartTemplate.tsx +13 -22
- package/src/sap/fe/macros/controls/FilterBar.js +1 -1
- package/src/sap/fe/macros/controls/FilterBar.ts +8 -1
- package/src/sap/fe/macros/controls/TextLink.js +15 -1
- package/src/sap/fe/macros/controls/TextLink.tsx +19 -0
- package/src/sap/fe/macros/coreUI/OperationParameterDialog.js +23 -18
- package/src/sap/fe/macros/coreUI/OperationParameterDialog.tsx +27 -25
- package/src/sap/fe/macros/field/FieldRuntimeHelper.js +4 -2
- package/src/sap/fe/macros/field/FieldRuntimeHelper.ts +7 -7
- package/src/sap/fe/macros/field/FieldTemplating.js +8 -3
- package/src/sap/fe/macros/field/FieldTemplating.ts +7 -2
- package/src/sap/fe/macros/filterBar/FilterBar.block.js +10 -1
- package/src/sap/fe/macros/filterBar/FilterBar.block.tsx +10 -0
- package/src/sap/fe/macros/form/FormContainer.block.js +9 -8
- package/src/sap/fe/macros/form/FormContainer.block.ts +10 -7
- package/src/sap/fe/macros/internal/field/EditStyle.js +11 -6
- package/src/sap/fe/macros/internal/field/EditStyle.tsx +7 -3
- package/src/sap/fe/macros/internal/valuehelp/AdditionalValueFormatter.js +36 -7
- package/src/sap/fe/macros/internal/valuehelp/AdditionalValueFormatter.ts +35 -6
- package/src/sap/fe/macros/internal/valuehelp/AdditionalValueHelper.js +54 -1
- package/src/sap/fe/macros/internal/valuehelp/AdditionalValueHelper.ts +59 -0
- package/src/sap/fe/macros/library.js +5 -6
- package/src/sap/fe/macros/{library.ts → library.tsx} +1 -1
- package/src/sap/fe/macros/messagebundle.properties +6 -0
- package/src/sap/fe/macros/messages/MessageButton.js +21 -12
- package/src/sap/fe/macros/messages/MessageButton.ts +21 -11
- package/src/sap/fe/macros/multivaluefield/MultiValueFieldDelegate.js +4 -3
- package/src/sap/fe/macros/multivaluefield/MultiValueFieldDelegate.ts +5 -2
- package/src/sap/fe/macros/quickView/QuickView.js +5 -4
- package/src/sap/fe/macros/quickView/QuickView.tsx +10 -3
- package/src/sap/fe/macros/table/ActionsTemplating.js +6 -5
- package/src/sap/fe/macros/table/ActionsTemplating.tsx +4 -4
- package/src/sap/fe/macros/table/MdcTableTemplate.js +27 -10
- package/src/sap/fe/macros/table/MdcTableTemplate.tsx +31 -4
- package/src/sap/fe/macros/table/Table.block.js +3 -1
- package/src/sap/fe/macros/table/Table.block.tsx +7 -4
- package/src/sap/fe/macros/table/TableAPI.js +49 -28
- package/src/sap/fe/macros/table/TableAPI.ts +58 -32
- package/src/sap/fe/macros/table/TableEventHandlerProvider.js +6 -4
- package/src/sap/fe/macros/table/TableEventHandlerProvider.ts +6 -3
- package/src/sap/fe/macros/table/delegates/TableDelegate.js +3 -3
- package/src/sap/fe/macros/table/delegates/TableDelegate.ts +3 -4
- package/src/sap/fe/macros/table/massEdit/MassEditDialog.js +41 -15
- package/src/sap/fe/macros/table/massEdit/MassEditDialog.tsx +41 -22
- package/src/sap/fe/macros/table/mixin/TableHierarchy.js +6 -6
- package/src/sap/fe/macros/table/mixin/TableHierarchy.ts +5 -5
- package/src/sap/fe/macros/valuehelp/ValueHelpDelegate.js +5 -3
- package/src/sap/fe/macros/valuehelp/ValueHelpDelegate.ts +7 -4
|
@@ -22,13 +22,7 @@ import Log from "sap/base/Log";
|
|
|
22
22
|
import deepClone from "sap/base/util/deepClone";
|
|
23
23
|
import merge from "sap/base/util/merge";
|
|
24
24
|
import uid from "sap/base/util/uid";
|
|
25
|
-
import {
|
|
26
|
-
notEqual,
|
|
27
|
-
pathInModel,
|
|
28
|
-
resolveBindingString,
|
|
29
|
-
type BindingToolkitExpression,
|
|
30
|
-
type CompiledBindingToolkitExpression
|
|
31
|
-
} from "sap/fe/base/BindingToolkit";
|
|
25
|
+
import { notEqual, pathInModel, type BindingToolkitExpression, type CompiledBindingToolkitExpression } from "sap/fe/base/BindingToolkit";
|
|
32
26
|
import type { CommandProperties } from "sap/fe/base/jsx-runtime/jsx";
|
|
33
27
|
import CommonUtils from "sap/fe/core/CommonUtils";
|
|
34
28
|
import { escapeXMLAttributeValue } from "sap/fe/core/buildingBlocks/templating/BuildingBlockTemplateProcessor";
|
|
@@ -213,6 +207,7 @@ type ActionProperties = {
|
|
|
213
207
|
menu?: string[];
|
|
214
208
|
group?: number;
|
|
215
209
|
overflowGroup?: number;
|
|
210
|
+
priority?: OverflowToolbarPriority;
|
|
216
211
|
};
|
|
217
212
|
|
|
218
213
|
type ToolbarAction = MenuItem | ActionToolbarAction | undefined;
|
|
@@ -307,7 +302,8 @@ function getExtraParams(chartBlock: ChartBlock, visualizationPath: string | unde
|
|
|
307
302
|
},
|
|
308
303
|
undefined,
|
|
309
304
|
action.group,
|
|
310
|
-
action.overflowGroup
|
|
305
|
+
action.overflowGroup,
|
|
306
|
+
action.priority
|
|
311
307
|
);
|
|
312
308
|
}
|
|
313
309
|
});
|
|
@@ -336,7 +332,8 @@ function getActionProperties(
|
|
|
336
332
|
position?: object,
|
|
337
333
|
menu?: string[],
|
|
338
334
|
group?: number,
|
|
339
|
-
overflowGroup?: number
|
|
335
|
+
overflowGroup?: number,
|
|
336
|
+
priority?: OverflowToolbarPriority
|
|
340
337
|
): ActionProperties {
|
|
341
338
|
const actionProperties: ActionProperties = {
|
|
342
339
|
key,
|
|
@@ -355,6 +352,9 @@ function getActionProperties(
|
|
|
355
352
|
if (menu) {
|
|
356
353
|
actionProperties.menu = menu;
|
|
357
354
|
}
|
|
355
|
+
if (priority !== undefined) {
|
|
356
|
+
actionProperties.priority = priority;
|
|
357
|
+
}
|
|
358
358
|
|
|
359
359
|
return actionProperties;
|
|
360
360
|
}
|
|
@@ -482,11 +482,10 @@ function getDynamicMeasures(
|
|
|
482
482
|
};
|
|
483
483
|
dynamicMeasure.propertyPath = aggregatedProperty.AggregatableProperty.value;
|
|
484
484
|
dynamicMeasure.aggregationMethod = aggregatedProperty.AggregationMethod.toString();
|
|
485
|
-
dynamicMeasure.label =
|
|
485
|
+
dynamicMeasure.label =
|
|
486
486
|
aggregatedProperty.annotations?.Common?.Label?.toString() ??
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
);
|
|
487
|
+
aggregatedProperty.AggregatableProperty.$target?.annotations?.Common?.Label?.toString() ??
|
|
488
|
+
"";
|
|
490
489
|
setChartMeasureAttributes(chart.MeasureAttributes, entitySetPath, dynamicMeasure, chartBlock);
|
|
491
490
|
measures.push(dynamicMeasure);
|
|
492
491
|
}
|
|
@@ -1021,15 +1020,7 @@ function getItems(chartBlock: ChartBlock): string | string[] {
|
|
|
1021
1020
|
}
|
|
1022
1021
|
|
|
1023
1022
|
function getItem(item: MeasureType | DimensionType, prefix: string, type: string): string {
|
|
1024
|
-
return
|
|
1025
|
-
<MdcChartItem
|
|
1026
|
-
id={item.id}
|
|
1027
|
-
propertyKey={prefix + item.key}
|
|
1028
|
-
type={type}
|
|
1029
|
-
label={resolveBindingString(item.label as string, "string")}
|
|
1030
|
-
role={item.role}
|
|
1031
|
-
/>
|
|
1032
|
-
);
|
|
1023
|
+
return <MdcChartItem id={item.id} propertyKey={prefix + item.key} type={type} label={item.label} role={item.role} />;
|
|
1033
1024
|
}
|
|
1034
1025
|
|
|
1035
1026
|
function getToolbarActions(chartBlock: ChartBlock): ToolbarAction[] {
|
|
@@ -275,4 +275,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/core/helpers/
|
|
|
275
275
|
}), _class2)) || _class);
|
|
276
276
|
return FilterBar;
|
|
277
277
|
}, false);
|
|
278
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWSVNVQUxfRklMVEVSX0NPTlRBSU5FUiIsIkZJTFRFUl9DT05UQUlORVIiLCJGaWx0ZXJCYXIiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJfZGVjMiIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsIl9kZWMzIiwiX2RlYzQiLCJhc3NvY2lhdGlvbiIsIm11bHRpcGxlIiwiX2NsYXNzIiwiX2NsYXNzMiIsIl9NZGNGaWx0ZXJCYXIiLCJpZE9yUHJvcHMiLCJzZXR0aW5ncyIsIl90aGlzIiwicHJvcGVydHlJbmZvIiwiY2FsbCIsIl9pbml0aWFsaXplckRlZmluZVByb3BlcnR5IiwiX2Rlc2NyaXB0b3IiLCJfZGVzY3JpcHRvcjIiLCJfZGVzY3JpcHRvcjMiLCJfaXNJbml0aWFsaXplZCIsIl9pbml0aWFsaXplU3RhdHVzIiwiX2luaGVyaXRzTG9vc2UiLCJfcHJvdG8iLCJwcm90b3R5cGUiLCJfaW5pdGlhbGl6ZWRQcm9taXNlS2VlcGVyIiwiUHJvbWlzZUtlZXBlciIsImluaXRpYWxpemVkV2l0aE1ldGFkYXRhIiwid2FpdEZvck1vZGVsVG9CZVNldCIsInJlc29sdmUiLCJnZXRNb2RlbCIsIm1vZGVsSXNTZXRQcm9taXNlS2VlcGVyIiwiZm5DaGVja0FuZFJlc2V0IiwiZSIsImZpbHRlcmJhciIsImdldFNvdXJjZSIsImRldGFjaE1vZGVsQ29udGV4dENoYW5nZSIsImF0dGFjaE1vZGVsQ29udGV4dENoYW5nZSIsInByb21pc2UiLCJpc0luaXRpYWxpemVkIiwid2hlbkluaXRpYWxpemVkIiwic2V0VG9nZ2xlQ29udHJvbCIsInZUb2dnbGUiLCJfb1NlZ21lbnRlZEJ1dHRvbiIsIkVsZW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsInRvZ2dsZUNvbnRyb2wiLCJkZXRhY2hFdmVudCIsIl90b2dnbGVMYXlvdXQiLCJiaW5kIiwiYXR0YWNoRXZlbnQiLCJzZXRBc3NvY2lhdGlvbiIsIndhaXRGb3JJbml0aWFsaXphdGlvbiIsInRoZW4iLCJ0YXJnZXRLZXkiLCJnZXRTZWxlY3RlZEtleSIsIl9vRmlsdGVyQmFyTGF5b3V0IiwiaXNBIiwiX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQiLCJWaXN1YWxGaWx0ZXJDb250YWluZXIiLCJzZXRTaG93QWRhcHRGaWx0ZXJzQnV0dG9uIiwib0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQiLCJvRmlsdGVySXRlbXMiLCJnZXRGaWx0ZXJJdGVtcyIsImFGaWx0ZXJGaWVsZHMiLCJnZXRBbGxGaWx0ZXJGaWVsZHMiLCJhU29ydGVkRmlsdGVyRmllbGRzIiwiZ2V0U29ydGVkRmlsdGVyRmllbGRzIiwiYUJ1dHRvbnMiLCJnZXRBbGxCdXR0b25zIiwiYVZpc3VhbEZpbHRlckZpZWxkcyIsImdldEFsbFZpc3VhbEZpbHRlckZpZWxkcyIsInNldEFsbEZpbHRlckZpZWxkcyIsImZvckVhY2giLCJvRmlsdGVyRmllbGQiLCJpSW5kZXgiLCJyZW1vdmVGaWx0ZXJGaWVsZCIsImluc2VydEZpbHRlckZpZWxkIiwib0J1dHRvbiIsInJlbW92ZUJ1dHRvbiIsImFkZEJ1dHRvbiIsInNldEFnZ3JlZ2F0aW9uIiwiaW52YWxpZGF0ZSIsImNhdGNoIiwiZXJyb3IiLCJMb2ciLCJhRmlsdGVySXRlbXMiLCJhRmlsdGVySWRzIiwib0ZpbHRlckl0ZW0iLCJwdXNoIiwiZ2V0SWQiLCJzb3J0IiwiYUZpcnN0SXRlbSIsImFTZWNvbmRJdGVtIiwic0ZpcnN0SXRlbVZGSWQiLCJzU2Vjb25kSXRlbVZGSWQiLCJnZXRDb250ZW50Iiwib0lubmVyQ29udHJvbCIsImluZGV4T2YiLCJfY3JlYXRlSW5uZXJMYXlvdXQiLCJGaWx0ZXJDb250YWluZXIiLCJfY0xheW91dEl0ZW0iLCJGaWx0ZXJJdGVtTGF5b3V0IiwiZ2V0SW5uZXIiLCJhZGRTdHlsZUNsYXNzIiwiX2FkZEJ1dHRvbnMiLCJvSW5uZXJMYXlvdXQiLCJvRmlsdGVyQ29udGFpbmVySW5uZXJMYXlvdXRFdmVudERlbGVnYXRlIiwib25CZWZvcmVSZW5kZXJpbmciLCJpbml0aWFsTGF5b3V0IiwicmVtb3ZlRXZlbnREZWxlZ2F0ZSIsImFkZEV2ZW50RGVsZWdhdGUiLCJleGl0IiwiZ2V0U2VnbWVudGVkQnV0dG9uIiwiZW5hYmxlUmVxdWVzdHMiLCJlbmFibGUiLCJkaWZmU3RhdGUiLCJzZXRTdXNwZW5kU2VsZWN0aW9uIiwiX2VuYWJsZVZpc3VhbEZpbHRlckNoYXJ0QmluZGluZ3MiLCJfZ2V0RmlsdGVyTGF5b3V0QnlUeXBlIiwibGF5b3V0Q2xhc3NOYW1lIiwicmV0RmlsdGVyTGF5b3V0IiwidW5kZWZpbmVkIiwidmlzdWFsRmlsdGVyTGF5b3V0IiwiZW5hYmxlQ2hhcnRCaW5kaW5nIiwiY29tcGFjdEZpbHRlckxheW91dCIsInZpc3VhbEZpbHRlcnMiLCJWaXN1YWxGaWx0ZXJVdGlscyIsIk1kY0ZpbHRlckJhciIsIl9hcHBseURlY29yYXRlZERlc2NyaXB0b3IiLCJjb25maWd1cmFibGUiLCJlbnVtZXJhYmxlIiwid3JpdGFibGUiLCJpbml0aWFsaXplciJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiRmlsdGVyQmFyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IHR5cGUgeyBQcm9wZXJ0aWVzT2YgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgeyBhc3NvY2lhdGlvbiwgZGVmaW5lVUk1Q2xhc3MsIHByb3BlcnR5IH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IFByb21pc2VLZWVwZXIgZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvUHJvbWlzZUtlZXBlclwiO1xuaW1wb3J0IEZpbHRlckNvbnRhaW5lciBmcm9tIFwic2FwL2ZlL21hY3Jvcy9jb250cm9scy9maWx0ZXJiYXIvRmlsdGVyQ29udGFpbmVyXCI7XG5pbXBvcnQgVmlzdWFsRmlsdGVyQ29udGFpbmVyIGZyb20gXCJzYXAvZmUvbWFjcm9zL2NvbnRyb2xzL2ZpbHRlcmJhci9WaXN1YWxGaWx0ZXJDb250YWluZXJcIjtcbmltcG9ydCB0eXBlIFZpc3VhbEZpbHRlciBmcm9tIFwic2FwL2ZlL21hY3Jvcy92aXN1YWxmaWx0ZXJzL1Zpc3VhbEZpbHRlclwiO1xuaW1wb3J0IHR5cGUgQnV0dG9uIGZyb20gXCJzYXAvbS9CdXR0b25cIjtcbmltcG9ydCB0eXBlIFNlZ21lbnRlZEJ1dHRvbiBmcm9tIFwic2FwL20vU2VnbWVudGVkQnV0dG9uXCI7XG5pbXBvcnQgdHlwZSB7IE1hbmFnZWRPYmplY3QkTW9kZWxDb250ZXh0Q2hhbmdlRXZlbnQgfSBmcm9tIFwic2FwL3VpL2Jhc2UvTWFuYWdlZE9iamVjdFwiO1xuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IHsgZGVmYXVsdCBhcyBFbGVtZW50IH0gZnJvbSBcInNhcC91aS9jb3JlL0VsZW1lbnRcIjtcbmltcG9ydCB0eXBlIHsgJEZpbHRlckJhclNldHRpbmdzIH0gZnJvbSBcInNhcC91aS9tZGMvRmlsdGVyQmFyXCI7XG5pbXBvcnQgTWRjRmlsdGVyQmFyIGZyb20gXCJzYXAvdWkvbWRjL0ZpbHRlckJhclwiO1xuaW1wb3J0IHR5cGUgRmlsdGVyRmllbGQgZnJvbSBcInNhcC91aS9tZGMvRmlsdGVyRmllbGRcIjtcbmltcG9ydCB0eXBlIElGaWx0ZXJDb250YWluZXIgZnJvbSBcInNhcC91aS9tZGMvZmlsdGVyYmFyL0lGaWx0ZXJDb250YWluZXJcIjtcbmltcG9ydCBGaWx0ZXJJdGVtTGF5b3V0IGZyb20gXCJzYXAvdWkvbWRjL2ZpbHRlcmJhci9hbGlnbmVkL0ZpbHRlckl0ZW1MYXlvdXRcIjtcbmltcG9ydCB7IHR5cGUgRXh0ZXJuYWxTdGF0ZVR5cGUgfSBmcm9tIFwiLi4vdmFsdWVoZWxwL1ZhbHVlSGVscERlbGVnYXRlXCI7XG5pbXBvcnQgVmlzdWFsRmlsdGVyVXRpbHMgZnJvbSBcIi4vZmlsdGVyYmFyL3V0aWxzL1Zpc3VhbEZpbHRlclV0aWxzXCI7XG5cbmNvbnN0IFZJU1VBTF9GSUxURVJfQ09OVEFJTkVSID0gXCJzYXAuZmUubWFjcm9zLmNvbnRyb2xzLmZpbHRlcmJhci5WaXN1YWxGaWx0ZXJDb250YWluZXJcIixcblx0RklMVEVSX0NPTlRBSU5FUiA9IFwic2FwLmZlLm1hY3Jvcy5jb250cm9scy5maWx0ZXJiYXIuRmlsdGVyQ29udGFpbmVyXCI7XG50eXBlIENvbnRhaW5lclR5cGUgPSB0eXBlb2YgVklTVUFMX0ZJTFRFUl9DT05UQUlORVIgfCB0eXBlb2YgRklMVEVSX0NPTlRBSU5FUjtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLm1hY3Jvcy5jb250cm9scy5GaWx0ZXJCYXJcIilcbmNsYXNzIEZpbHRlckJhciBleHRlbmRzIE1kY0ZpbHRlckJhciB7XG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIsIGRlZmF1bHRWYWx1ZTogXCJjb21wYWN0XCIgfSlcblx0aW5pdGlhbExheW91dCE6IHN0cmluZztcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuXHRkaXNhYmxlRHJhZnRFZGl0U3RhdGVGaWx0ZXIhOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBDb250cm9sIHdoaWNoIGFsbG93cyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gdmlzdWFsIGFuZCBub3JtYWwgZmlsdGVyIGxheW91dHNcblx0ICovXG5cdEBhc3NvY2lhdGlvbih7XG5cdFx0dHlwZTogXCJzYXAubS5TZWdtZW50ZWRCdXR0b25cIixcblx0XHRtdWx0aXBsZTogZmFsc2Vcblx0fSlcblx0dG9nZ2xlQ29udHJvbCE6IHN0cmluZztcblxuXHRjb25zdHJ1Y3RvcihpZE9yUHJvcHM/OiBQcm9wZXJ0aWVzT2Y8RmlsdGVyQmFyPiAmICRGaWx0ZXJCYXJTZXR0aW5ncywgc2V0dGluZ3M/OiBQcm9wZXJ0aWVzT2Y8RmlsdGVyQmFyPiAmICRGaWx0ZXJCYXJTZXR0aW5ncykge1xuXHRcdGRlbGV0ZSBpZE9yUHJvcHM/LnByb3BlcnR5SW5mbztcblx0XHRkZWxldGUgc2V0dGluZ3M/LnByb3BlcnR5SW5mbztcblx0XHRzdXBlcihpZE9yUHJvcHMgYXMgdW5rbm93biBhcyBzdHJpbmcsIHNldHRpbmdzKTtcblx0XHR0aGlzLl9pbml0aWFsaXplU3RhdHVzKCk7XG5cdH1cblxuXHRwcml2YXRlIGFzeW5jIF9pbml0aWFsaXplU3RhdHVzKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdC8vIFByb21pc2Uga2VlcGVyIHRvIGhvbGQgdGhlIHByb2Nlc3MuXG5cdFx0dGhpcy5faW5pdGlhbGl6ZWRQcm9taXNlS2VlcGVyID0gbmV3IFByb21pc2VLZWVwZXI8dm9pZD4oKTtcblxuXHRcdC8vIEF3YWl0c1xuXHRcdGF3YWl0IHRoaXMuaW5pdGlhbGl6ZWRXaXRoTWV0YWRhdGEoKTtcblx0XHRhd2FpdCB0aGlzLndhaXRGb3JNb2RlbFRvQmVTZXQoKTtcblxuXHRcdHRoaXMuX2luaXRpYWxpemVkUHJvbWlzZUtlZXBlci5yZXNvbHZlKCk7XG5cdFx0dGhpcy5faXNJbml0aWFsaXplZCA9IHRydWU7XG5cdH1cblxuXHRwcml2YXRlIGFzeW5jIHdhaXRGb3JNb2RlbFRvQmVTZXQoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0aWYgKHRoaXMuZ2V0TW9kZWwoKSkge1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblx0XHQvLyB3YWl0IGZvciBkZWFmYXVsdCBtb2RlbCB0byBiZSBzZXQuXG5cdFx0Y29uc3QgbW9kZWxJc1NldFByb21pc2VLZWVwZXIgPSBuZXcgUHJvbWlzZUtlZXBlcjx2b2lkPigpO1xuXHRcdGNvbnN0IGZuQ2hlY2tBbmRSZXNldCA9IChlOiBNYW5hZ2VkT2JqZWN0JE1vZGVsQ29udGV4dENoYW5nZUV2ZW50KTogdm9pZCA9PiB7XG5cdFx0XHRjb25zdCBmaWx0ZXJiYXIgPSBlLmdldFNvdXJjZSgpO1xuXHRcdFx0aWYgKGZpbHRlcmJhci5nZXRNb2RlbCgpKSB7XG5cdFx0XHRcdC8vIGRlZmF1bHQgbW9kZWwgaXMgc2V0LlxuXHRcdFx0XHRmaWx0ZXJiYXIuZGV0YWNoTW9kZWxDb250ZXh0Q2hhbmdlKGZuQ2hlY2tBbmRSZXNldCk7XG5cdFx0XHRcdG1vZGVsSXNTZXRQcm9taXNlS2VlcGVyPy5yZXNvbHZlKCk7XG5cdFx0XHR9XG5cdFx0fTtcblx0XHR0aGlzLmF0dGFjaE1vZGVsQ29udGV4dENoYW5nZShmbkNoZWNrQW5kUmVzZXQpO1xuXHRcdHJldHVybiBtb2RlbElzU2V0UHJvbWlzZUtlZXBlci5wcm9taXNlO1xuXHR9XG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiB0aGUgRmlsdGVyQmFyIGlzIGZ1bGx5IGluaXRpYWxpemVkLlxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBGaWx0ZXJCYXIgaXMgaW5pdGlhbGl6ZWQsIGZhbHNlIG90aGVyd2lzZS5cblx0ICovXG5cdGlzSW5pdGlhbGl6ZWQoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuICEhdGhpcy5faXNJbml0aWFsaXplZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBBc3luYyBlcXVpdmFsZW50IG9mICdpc0luaXRpYWxpemVkJyB0byBwZXJmb3JtIGZpbHRlciBiYXIgaW50ZXJhY3Rpb25zIGFmdGVyIHRoZSBmaWx0ZXIgYmFyIGlzIHJlYWR5LlxuXHQgKiBAcmV0dXJucyBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgZmlsdGVyIGJhciBpcyBpbml0aWFsaXplZC5cblx0ICovXG5cdGFzeW5jIHdoZW5Jbml0aWFsaXplZCgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRyZXR1cm4gdGhpcy5faW5pdGlhbGl6ZWRQcm9taXNlS2VlcGVyPy5wcm9taXNlO1xuXHR9XG5cblx0cHJpdmF0ZSBfaW5pdGlhbGl6ZWRQcm9taXNlS2VlcGVyPzogUHJvbWlzZUtlZXBlcjx2b2lkPjtcblxuXHRwcml2YXRlIF9pc0luaXRpYWxpemVkID0gZmFsc2U7XG5cblx0cHJpdmF0ZSBfb1NlZ21lbnRlZEJ1dHRvbj86IFNlZ21lbnRlZEJ1dHRvbjtcblxuXHRwcml2YXRlIF9vU2Vjb25kYXJ5RmlsdGVyQmFyTGF5b3V0PzogSUZpbHRlckNvbnRhaW5lcjtcblxuXHRwcml2YXRlIF9vRmlsdGVyQmFyTGF5b3V0ITogSUZpbHRlckNvbnRhaW5lcjtcblxuXHRwcml2YXRlIF9jTGF5b3V0SXRlbTogdHlwZW9mIEZpbHRlckl0ZW1MYXlvdXQ7XG5cblx0c2V0VG9nZ2xlQ29udHJvbCh2VG9nZ2xlOiBzdHJpbmcgfCBTZWdtZW50ZWRCdXR0b24pOiB2b2lkIHtcblx0XHRpZiAodHlwZW9mIHZUb2dnbGUgPT09IFwic3RyaW5nXCIpIHtcblx0XHRcdHRoaXMuX29TZWdtZW50ZWRCdXR0b24gPSBFbGVtZW50LmdldEVsZW1lbnRCeUlkKHZUb2dnbGUpIGFzIFNlZ21lbnRlZEJ1dHRvbjtcblx0XHR9IGVsc2Uge1xuXHRcdFx0dGhpcy5fb1NlZ21lbnRlZEJ1dHRvbiA9IHZUb2dnbGU7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMudG9nZ2xlQ29udHJvbCAmJiB0aGlzLl9vU2VnbWVudGVkQnV0dG9uKSB7XG5cdFx0XHR0aGlzLl9vU2VnbWVudGVkQnV0dG9uLmRldGFjaEV2ZW50KFwic2VsZWN0aW9uQ2hhbmdlXCIsIHRoaXMuX3RvZ2dsZUxheW91dC5iaW5kKHRoaXMpKTtcblx0XHR9XG5cdFx0aWYgKHRoaXMuX29TZWdtZW50ZWRCdXR0b24pIHtcblx0XHRcdHRoaXMuX29TZWdtZW50ZWRCdXR0b24uYXR0YWNoRXZlbnQoXCJzZWxlY3Rpb25DaGFuZ2VcIiwgdGhpcy5fdG9nZ2xlTGF5b3V0LmJpbmQodGhpcykpO1xuXHRcdH1cblx0XHR0aGlzLnNldEFzc29jaWF0aW9uKFwidG9nZ2xlQ29udHJvbFwiLCB2VG9nZ2xlLCB0cnVlKTtcblx0fVxuXG5cdF90b2dnbGVMYXlvdXQoKTogdm9pZCB7XG5cdFx0Ly8gU2luY2UgcHJpbWFyeSBsYXlvdXQgaXMgYWx3YXlzIGNvbXBhY3Rcblx0XHQvLyBoZW5jZSBzZXQgdGhlIHNlY29uZGFyeSBsYXlvdXQgYXMgdmlzdWFsIGZpbHRlciBvbmx5IGZvciB0aGUgZmlyc3QgdGltZSBvbmx5XG5cdFx0dGhpcy53YWl0Rm9ySW5pdGlhbGl6YXRpb24oKVxuXHRcdFx0LnRoZW4oKCkgPT4ge1xuXHRcdFx0XHRjb25zdCB0YXJnZXRLZXkgPSB0aGlzLl9vU2VnbWVudGVkQnV0dG9uPy5nZXRTZWxlY3RlZEtleSgpO1xuXHRcdFx0XHRpZiAoXG5cdFx0XHRcdFx0KHRhcmdldEtleSA9PT0gXCJ2aXN1YWxcIiAmJlxuXHRcdFx0XHRcdFx0dGhpcy5fb0ZpbHRlckJhckxheW91dD8uaXNBPFZpc3VhbEZpbHRlckNvbnRhaW5lcj4oXCJzYXAuZmUubWFjcm9zLmNvbnRyb2xzLmZpbHRlcmJhci5WaXN1YWxGaWx0ZXJDb250YWluZXJcIikpIHx8XG5cdFx0XHRcdFx0KHRhcmdldEtleSA9PT0gXCJjb21wYWN0XCIgJiZcblx0XHRcdFx0XHRcdCF0aGlzLl9vRmlsdGVyQmFyTGF5b3V0Py5pc0E8VmlzdWFsRmlsdGVyQ29udGFpbmVyPihcInNhcC5mZS5tYWNyb3MuY29udHJvbHMuZmlsdGVyYmFyLlZpc3VhbEZpbHRlckNvbnRhaW5lclwiKSlcblx0XHRcdFx0KSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICghdGhpcy5fb1NlY29uZGFyeUZpbHRlckJhckxheW91dCkge1xuXHRcdFx0XHRcdHRoaXMuX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQgPSBuZXcgVmlzdWFsRmlsdGVyQ29udGFpbmVyKCkgYXMgdW5rbm93biBhcyBJRmlsdGVyQ29udGFpbmVyO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gZG8gbm90IHNob3cgQWRhcHQgRmlsdGVycyBCdXR0b24gZm9yIHZpc3VhbCBsYXlvdXRcblx0XHRcdFx0aWYgKHRoaXMuX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQ/LmlzQTxWaXN1YWxGaWx0ZXJDb250YWluZXI+KFwic2FwLmZlLm1hY3Jvcy5jb250cm9scy5maWx0ZXJiYXIuVmlzdWFsRmlsdGVyQ29udGFpbmVyXCIpKSB7XG5cdFx0XHRcdFx0dGhpcy5zZXRTaG93QWRhcHRGaWx0ZXJzQnV0dG9uKGZhbHNlKTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHR0aGlzLnNldFNob3dBZGFwdEZpbHRlcnNCdXR0b24odHJ1ZSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBnZXQgYWxsIGZpbHRlciBmaWVsZHMgYW5kIGJ1dHRvbiBvZiB0aGUgY3VycmVudCBsYXlvdXRcblx0XHRcdFx0Y29uc3Qgb0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQgPSB0aGlzLl9vRmlsdGVyQmFyTGF5b3V0O1xuXHRcdFx0XHRjb25zdCBvRmlsdGVySXRlbXMgPSB0aGlzLmdldEZpbHRlckl0ZW1zKCk7XG5cdFx0XHRcdGNvbnN0IGFGaWx0ZXJGaWVsZHMgPSBvQ3VycmVudEZpbHRlckJhckxheW91dC5nZXRBbGxGaWx0ZXJGaWVsZHMoKTtcblx0XHRcdFx0Y29uc3QgYVNvcnRlZEZpbHRlckZpZWxkcyA9IHRoaXMuZ2V0U29ydGVkRmlsdGVyRmllbGRzKG9GaWx0ZXJJdGVtcywgYUZpbHRlckZpZWxkcyk7XG5cdFx0XHRcdGNvbnN0IGFCdXR0b25zID0gb0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQuZ2V0QWxsQnV0dG9ucygpO1xuXHRcdFx0XHRjb25zdCBhVmlzdWFsRmlsdGVyRmllbGRzID1cblx0XHRcdFx0XHRvQ3VycmVudEZpbHRlckJhckxheW91dC5nZXRBbGxWaXN1YWxGaWx0ZXJGaWVsZHMgJiZcblx0XHRcdFx0XHQob0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQuZ2V0QWxsVmlzdWFsRmlsdGVyRmllbGRzKCkgYXMgUmVjb3JkPHN0cmluZywgVmlzdWFsRmlsdGVyPiB8IHVuZGVmaW5lZCk7XG5cdFx0XHRcdGlmICh0aGlzLl9vU2Vjb25kYXJ5RmlsdGVyQmFyTGF5b3V0Py5pc0E8VmlzdWFsRmlsdGVyQ29udGFpbmVyPihcInNhcC5mZS5tYWNyb3MuY29udHJvbHMuZmlsdGVyYmFyLlZpc3VhbEZpbHRlckNvbnRhaW5lclwiKSkge1xuXHRcdFx0XHRcdHRoaXMuX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQuc2V0QWxsRmlsdGVyRmllbGRzKGFTb3J0ZWRGaWx0ZXJGaWVsZHMsIGFWaXN1YWxGaWx0ZXJGaWVsZHMpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC8vIHVzZSBzZWNvbmRhcnkgZmlsdGVyIGJhciBsYXlvdXQgYXMgbmV3IGxheW91dFxuXHRcdFx0XHR0aGlzLl9vRmlsdGVyQmFyTGF5b3V0ID0gdGhpcy5fb1NlY29uZGFyeUZpbHRlckJhckxheW91dCE7XG5cblx0XHRcdFx0Ly8gaW5zZXJ0IGFsbCBmaWx0ZXIgZmllbGRzIGZyb20gY3VycmVudCBsYXlvdXQgdG8gbmV3IGxheW91dFxuXHRcdFx0XHRhRmlsdGVyRmllbGRzLmZvckVhY2goKG9GaWx0ZXJGaWVsZDogRmlsdGVyRmllbGQsIGlJbmRleDogbnVtYmVyKSA9PiB7XG5cdFx0XHRcdFx0b0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQucmVtb3ZlRmlsdGVyRmllbGQob0ZpbHRlckZpZWxkKTtcblx0XHRcdFx0XHR0aGlzLl9vRmlsdGVyQmFyTGF5b3V0Lmluc2VydEZpbHRlckZpZWxkKG9GaWx0ZXJGaWVsZCwgaUluZGV4KTtcblx0XHRcdFx0fSk7XG5cdFx0XHRcdC8vIGluc2VydCBhbGwgYnV0dG9ucyBmcm9tIHRoZSBjdXJyZW50IGxheW91dCB0byB0aGUgbmV3IGxheW91dFxuXHRcdFx0XHRhQnV0dG9ucy5mb3JFYWNoKChvQnV0dG9uOiBCdXR0b24pID0+IHtcblx0XHRcdFx0XHRvQ3VycmVudEZpbHRlckJhckxheW91dC5yZW1vdmVCdXR0b24ob0J1dHRvbik7XG5cdFx0XHRcdFx0dGhpcy5fb0ZpbHRlckJhckxheW91dC5hZGRCdXR0b24ob0J1dHRvbik7XG5cdFx0XHRcdH0pO1xuXG5cdFx0XHRcdC8vIHNldCB0aGUgY3VycmVudCBmaWx0ZXIgYmFyIGxheW91dCB0byB0aGUgc2Vjb25kYXJ5IG9uZVxuXHRcdFx0XHR0aGlzLl9vU2Vjb25kYXJ5RmlsdGVyQmFyTGF5b3V0ID0gb0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQ7XG5cblx0XHRcdFx0Ly8gdXBkYXRlIHRoZSBsYXlvdXQgYWdncmVnYXRpb24gb2YgdGhlIGZpbHRlciBiYXIgYW5kIHJlcmVuZGVyIHRoZSBzYW1lLlxuXHRcdFx0XHR0aGlzLnNldEFnZ3JlZ2F0aW9uKFwibGF5b3V0XCIsIHRoaXMuX29GaWx0ZXJCYXJMYXlvdXQsIHRydWUpO1xuXHRcdFx0XHR0aGlzLl9vRmlsdGVyQmFyTGF5b3V0LmludmFsaWRhdGUoKTtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fSlcblx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IHtcblx0XHRcdFx0TG9nLmVycm9yKGVycm9yKTtcblx0XHRcdH0pO1xuXHR9XG5cblx0Z2V0U29ydGVkRmlsdGVyRmllbGRzKGFGaWx0ZXJJdGVtczogRmlsdGVyRmllbGRbXSwgYUZpbHRlckZpZWxkczogRmlsdGVyRmllbGRbXSk6IEZpbHRlckZpZWxkW10ge1xuXHRcdGNvbnN0IGFGaWx0ZXJJZHM6IHN0cmluZ1tdID0gW107XG5cdFx0YUZpbHRlckl0ZW1zLmZvckVhY2goZnVuY3Rpb24gKG9GaWx0ZXJJdGVtOiBGaWx0ZXJGaWVsZCkge1xuXHRcdFx0YUZpbHRlcklkcy5wdXNoKG9GaWx0ZXJJdGVtLmdldElkKCkpO1xuXHRcdH0pO1xuXHRcdGFGaWx0ZXJGaWVsZHMuc29ydChmdW5jdGlvbiAoYUZpcnN0SXRlbTogRmlsdGVyRmllbGQsIGFTZWNvbmRJdGVtOiBGaWx0ZXJGaWVsZCkge1xuXHRcdFx0bGV0IHNGaXJzdEl0ZW1WRklkLCBzU2Vjb25kSXRlbVZGSWQ7XG5cdFx0XHQoYUZpcnN0SXRlbS5nZXRDb250ZW50KCkgYXMgdW5rbm93biBhcyBDb250cm9sW10pLmZvckVhY2goZnVuY3Rpb24gKG9Jbm5lckNvbnRyb2w6IENvbnRyb2wpIHtcblx0XHRcdFx0aWYgKG9Jbm5lckNvbnRyb2wuaXNBPEZpbHRlckZpZWxkPihcInNhcC51aS5tZGMuRmlsdGVyRmllbGRcIikpIHtcblx0XHRcdFx0XHRzRmlyc3RJdGVtVkZJZCA9IG9Jbm5lckNvbnRyb2wuZ2V0SWQoKTtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0XHQoYVNlY29uZEl0ZW0uZ2V0Q29udGVudCgpIGFzIHVua25vd24gYXMgQ29udHJvbFtdKS5mb3JFYWNoKGZ1bmN0aW9uIChvSW5uZXJDb250cm9sOiBDb250cm9sKSB7XG5cdFx0XHRcdGlmIChvSW5uZXJDb250cm9sLmlzQTxGaWx0ZXJGaWVsZD4oXCJzYXAudWkubWRjLkZpbHRlckZpZWxkXCIpKSB7XG5cdFx0XHRcdFx0c1NlY29uZEl0ZW1WRklkID0gb0lubmVyQ29udHJvbC5nZXRJZCgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHRcdHJldHVybiBhRmlsdGVySWRzLmluZGV4T2Yoc0ZpcnN0SXRlbVZGSWQgPz8gXCJcIikgLSBhRmlsdGVySWRzLmluZGV4T2Yoc1NlY29uZEl0ZW1WRklkID8/IFwiXCIpO1xuXHRcdH0pO1xuXHRcdHJldHVybiBhRmlsdGVyRmllbGRzO1xuXHR9XG5cblx0X2NyZWF0ZUlubmVyTGF5b3V0KCk6IHZvaWQge1xuXHRcdHRoaXMuX29GaWx0ZXJCYXJMYXlvdXQgPSBuZXcgRmlsdGVyQ29udGFpbmVyKCk7XG5cdFx0dGhpcy5fY0xheW91dEl0ZW0gPSBGaWx0ZXJJdGVtTGF5b3V0O1xuXHRcdHRoaXMuX29GaWx0ZXJCYXJMYXlvdXQuZ2V0SW5uZXIoKS5hZGRTdHlsZUNsYXNzKFwic2FwVWlNZGNGaWx0ZXJCYXJCYXNlQUZMYXlvdXRcIik7XG5cdFx0dGhpcy5fYWRkQnV0dG9ucygpO1xuXG5cdFx0Ly8gVE9ETzogQ2hlY2sgd2l0aCBNREMgaWYgdGhlcmUgaXMgYSBiZXR0ZXIgd2F5IHRvIGxvYWQgdmlzdWFsIGZpbHRlciBvbiB0aGUgYmFzaXMgb2YgY29udHJvbCBwcm9wZXJ0eVxuXHRcdC8vIF9jcmVhdGVJbm5lckxheW91dCBpcyBjYWxsZWQgb24gSW5pdCBieSB0aGUgZmlsdGVyIGJhciBiYXNlLlxuXHRcdC8vIFRoaXMgbWVhbiB0aGF0IHdlIGRvIG5vdCBoYXZlIGFjY2VzcyB0byB0aGUgY29udHJvbCBwcm9wZXJ0aWVzIHlldFxuXHRcdC8vIGFuZCBoZW5jZSB3ZSBjYW5ub3QgZGVjaWRlIG9uIHRoZSBiYXNpcyBvZiBjb250cm9sIHByb3BlcnRpZXMgd2hldGhlciBpbml0aWFsIGxheW91dCBzaG91bGQgYmUgY29tcGFjdCBvciB2aXN1YWxcblx0XHQvLyBBcyBhIHJlc3VsdCB3ZSBoYXZlIHRvIGRvIHRoaXMgd29ya2Fyb3VuZCB0byBhbHdheXMgbG9hZCB0aGUgY29tcGFjdCBsYXlvdXQgYnkgZGVmYXVsdFxuXHRcdC8vIEFuZCB0b29nbGUgdGhlIHNhbWUgaW4gY2FzZSB0aGUgaW5pdGlhbExheW91dCB3YXMgc3VwcG9zZWQgdG8gYmUgdmlzdWFsIGZpbHRlcnMuXG5cdFx0Y29uc3Qgb0lubmVyTGF5b3V0ID0gdGhpcy5fb0ZpbHRlckJhckxheW91dC5nZXRJbm5lcigpO1xuXHRcdGNvbnN0IG9GaWx0ZXJDb250YWluZXJJbm5lckxheW91dEV2ZW50RGVsZWdhdGUgPSB7XG5cdFx0XHRvbkJlZm9yZVJlbmRlcmluZzogKCk6IHZvaWQgPT4ge1xuXHRcdFx0XHRpZiAodGhpcy5pbml0aWFsTGF5b3V0ID09PSBcInZpc3VhbFwiKSB7XG5cdFx0XHRcdFx0dGhpcy5fdG9nZ2xlTGF5b3V0KCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0b0lubmVyTGF5b3V0LnJlbW92ZUV2ZW50RGVsZWdhdGUob0ZpbHRlckNvbnRhaW5lcklubmVyTGF5b3V0RXZlbnREZWxlZ2F0ZSk7XG5cdFx0XHR9XG5cdFx0fTtcblx0XHRvSW5uZXJMYXlvdXQuYWRkRXZlbnREZWxlZ2F0ZShvRmlsdGVyQ29udGFpbmVySW5uZXJMYXlvdXRFdmVudERlbGVnYXRlKTtcblxuXHRcdHRoaXMuc2V0QWdncmVnYXRpb24oXCJsYXlvdXRcIiwgdGhpcy5fb0ZpbHRlckJhckxheW91dCwgdHJ1ZSk7XG5cdH1cblxuXHRleGl0KCk6IHZvaWQge1xuXHRcdHN1cGVyLmV4aXQoKTtcblx0XHQvLyBTb21ldGltZXMgdXBvbiBleHRlcm5hbCBuYXZpZ2F0aW9uIHRoaXMuX1NlZ21lbnRlZEJ1dHRvbiBpcyBhbHJlYWR5IGRlc3Ryb3llZFxuXHRcdC8vIHNvIGNoZWNrIGlmIGl0IGV4aXN0cyBhbmQgdGhlbiBvbmx5IHJlbW92ZSBzdHVmZlxuXHRcdGlmICh0aGlzLl9vU2VnbWVudGVkQnV0dG9uKSB7XG5cdFx0XHR0aGlzLl9vU2VnbWVudGVkQnV0dG9uLmRldGFjaEV2ZW50KFwic2VsZWN0aW9uQ2hhbmdlXCIsIHRoaXMuX3RvZ2dsZUxheW91dCk7XG5cdFx0XHRkZWxldGUgdGhpcy5fb1NlZ21lbnRlZEJ1dHRvbjtcblx0XHR9XG5cdH1cblxuXHRnZXRTZWdtZW50ZWRCdXR0b24oKTogU2VnbWVudGVkQnV0dG9uIHwgdW5kZWZpbmVkIHtcblx0XHRyZXR1cm4gdGhpcy5fb1NlZ21lbnRlZEJ1dHRvbjtcblx0fVxuXG5cdC8qKlxuXHQgKiBFbmFibGUgb3IgZGlzYWJsZSByZXF1ZXN0cyB0aGF0IGFyZSBpbml0aWF0ZWQgYnkgdGhlIEZpbHRlckJhci5cblx0ICpcblx0ICogVG8gYmUgdXNlZCB0byBzdXNwZW5kIG9yIHJlc3VtZSByZXF1ZXN0cyh0YWJsZSBvciB2aXN1YWwgZmlsdGVycykgd2hlbiB0aGUgZmlsdGVyIGJhciBpcyBiZWluZyBtb2RpZmllZCBvciB3aGVuIHRoZSB1c2VyIGlzIHByb2dyYW1tYXRpY2FsbHkgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgZmlsdGVyIGNvbnRyb2xzLlxuXHQgKiBUaGlzIG1ldGhvZCBpcyBhbHNvIHVzZWQgdG8gY29udHJvbCB3aGV0aGVyIHRoZSB2aXN1YWwgZmlsdGVyIGNoYXJ0IGJpbmRpbmcgc2hvdWxkIGJlIHJlc3VtZWQvc3VzcGVuZGVkIGJhc2VkIG9uIHRoZSBkaWZmIHN0YXRlLCBhbmQgcmVzdW1lZCBhZnRlciBjb25kaXRvbiBtb2RlbCB1cGRhdGUuXG5cdCAqIEBwYXJhbSBlbmFibGUgRW5hYmxlIG9yIGRpc2FibGUgcmVxdWVzdHNcblx0ICogQHBhcmFtIGRpZmZTdGF0ZSBJZiB0aGVyZSBpcyBhIGRpZmZlcm5jZSBpbiB0aGUgZXh0ZXJuYWwgc3RhdGUgdGhhdCBuZWVkcyB0byBiZSBjb25zaWRlcmVkIGZvciB2aXN1YWwgZmlsdGVyIGluLXBhcmFtZXRlcnNcblx0ICovXG5cdGVuYWJsZVJlcXVlc3RzKGVuYWJsZTogYm9vbGVhbiwgZGlmZlN0YXRlPzogRXh0ZXJuYWxTdGF0ZVR5cGUpOiB2b2lkIHtcblx0XHR0aGlzLnNldFN1c3BlbmRTZWxlY3Rpb24oIWVuYWJsZSk7XG5cdFx0Ly8gV2UgbmVlZCB0byBlbmFibGUgb3IgZGlzYWJsZSB0aGUgdmlzdWFsIGZpbHRlciBjaGFydCBiaW5kaW5ncyBiYXNlZCBvbiBkaWZmIHN0YXRlLlxuXHRcdHRoaXMuX2VuYWJsZVZpc3VhbEZpbHRlckNoYXJ0QmluZGluZ3MoZW5hYmxlLCBkaWZmU3RhdGUpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEdldCB0aGUgZmlsdGVyIGxheW91dCBieSBpdHMgdHlwZS5cblx0ICogQHBhcmFtIGxheW91dENsYXNzTmFtZSBUaGUgY2xhc3MgbmFtZSBvZiB0aGUgZmlsdGVyIGxheW91dCB0byBiZSByZXR1cm5lZC5cblx0ICogQHRlbXBsYXRlIFQgVGhlIHR5cGUgb2YgdGhlIGZpbHRlciBsYXlvdXQgdG8gYmUgcmV0dXJuZWQuXG5cdCAqIEB0eXBlZGVmIHtJRmlsdGVyQ29udGFpbmVyfSBUIFRoZSB0eXBlIG9mIHRoZSBmaWx0ZXIgbGF5b3V0IHRvIGJlIHJldHVybmVkXG5cdCAqIEByZXR1cm5zIENvcnJlc3BvbmRpbmcgZmlsdGVyIGxheW91dCBpZiBpdCBleGlzdHMsIG90aGVyd2lzZSB1bmRlZmluZWQuXG5cdCAqL1xuXHRfZ2V0RmlsdGVyTGF5b3V0QnlUeXBlPFQgZXh0ZW5kcyBJRmlsdGVyQ29udGFpbmVyPihsYXlvdXRDbGFzc05hbWU6IENvbnRhaW5lclR5cGUpOiBUIHwgdW5kZWZpbmVkIHtcblx0XHRjb25zdCByZXRGaWx0ZXJMYXlvdXQgPSB0aGlzLl9vRmlsdGVyQmFyTGF5b3V0LmlzQTxUPihsYXlvdXRDbGFzc05hbWUpID8gdGhpcy5fb0ZpbHRlckJhckxheW91dCA6IHVuZGVmaW5lZDtcblx0XHRyZXR1cm4gIXJldEZpbHRlckxheW91dCAmJiB0aGlzLl9vU2Vjb25kYXJ5RmlsdGVyQmFyTGF5b3V0Py5pc0E8VD4obGF5b3V0Q2xhc3NOYW1lKVxuXHRcdFx0PyB0aGlzLl9vU2Vjb25kYXJ5RmlsdGVyQmFyTGF5b3V0XG5cdFx0XHQ6IHJldEZpbHRlckxheW91dDtcblx0fVxuXG5cdF9lbmFibGVWaXN1YWxGaWx0ZXJDaGFydEJpbmRpbmdzKGVuYWJsZTogYm9vbGVhbiwgZGlmZlN0YXRlPzogRXh0ZXJuYWxTdGF0ZVR5cGUpOiB2b2lkIHtcblx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10cy1jb21tZW50XG5cdFx0Ly8gQHRzLWlnbm9yZVxuXHRcdGNvbnN0IHZpc3VhbEZpbHRlckxheW91dCA9IHRoaXMuX2dldEZpbHRlckxheW91dEJ5VHlwZTxWaXN1YWxGaWx0ZXJDb250YWluZXI+KFZJU1VBTF9GSUxURVJfQ09OVEFJTkVSKTtcblx0XHRpZiAodmlzdWFsRmlsdGVyTGF5b3V0KSB7XG5cdFx0XHR2aXN1YWxGaWx0ZXJMYXlvdXQuZW5hYmxlQ2hhcnRCaW5kaW5nKGVuYWJsZSwgZGlmZlN0YXRlKTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHQvLyBJZiBpbml0aWFsIGxheW91dCBpcyBjb21wYWN0LCB3ZSBkb24ndCBoYXZlIHRoZSB2aXN1YWwgZmlsdGVyIGxheW91dChjb250YWluZXIpIGF2YWlsYWJsZSB5ZXQgdW50aWwgdGhlIHVzZXIgdG9nZ2xlcyB0byB2aXN1YWwgZmlsdGVyIGxheW91dC5cblx0XHQvLyBTbyB3ZSBuZWVkIHRvIGNoZWNrIGlmIHRoZSBjb21wYWN0IGZpbHRlciBsYXlvdXQgaGFzIHZpc3VhbCBmaWx0ZXJzIGFuZCBlbmFibGUvZGlzYWJsZSB0aGUgY2hhcnQgYmluZGluZyBmb3IgdGhvc2UgdmlzdWFsIGZpbHRlcnMuXG5cdFx0Y29uc3QgY29tcGFjdEZpbHRlckxheW91dCA9IHRoaXMuX2dldEZpbHRlckxheW91dEJ5VHlwZTxGaWx0ZXJDb250YWluZXI+KEZJTFRFUl9DT05UQUlORVIpO1xuXHRcdGlmIChjb21wYWN0RmlsdGVyTGF5b3V0KSB7XG5cdFx0XHRjb25zdCB2aXN1YWxGaWx0ZXJzID0gY29tcGFjdEZpbHRlckxheW91dC5nZXRBbGxWaXN1YWxGaWx0ZXJGaWVsZHMoKTtcblx0XHRcdGlmICh2aXN1YWxGaWx0ZXJzKSB7XG5cdFx0XHRcdFZpc3VhbEZpbHRlclV0aWxzLmVuYWJsZUNoYXJ0QmluZGluZyh2aXN1YWxGaWx0ZXJzLCBlbmFibGUsIGRpZmZTdGF0ZSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5pbnRlcmZhY2UgRmlsdGVyQmFyIHtcblx0X2FkZEJ1dHRvbnMoKTogdm9pZDtcbn1cbmV4cG9ydCBkZWZhdWx0IEZpbHRlckJhcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztFQW9CQSxNQUFNQSx1QkFBdUIsR0FBRyx3REFBd0Q7SUFDdkZDLGdCQUFnQixHQUFHLGtEQUFrRDtFQUFDLElBSWpFQyxTQUFTLElBQUFDLElBQUEsR0FEZEMsY0FBYyxDQUFDLGtDQUFrQyxDQUFDLEVBQUFDLEtBQUEsR0FFakRDLFFBQVEsQ0FBQztJQUFFQyxJQUFJLEVBQUUsUUFBUTtJQUFFQyxZQUFZLEVBQUU7RUFBVSxDQUFDLENBQUMsRUFBQUMsS0FBQSxHQUdyREgsUUFBUSxDQUFDO0lBQUVDLElBQUksRUFBRSxTQUFTO0lBQUVDLFlBQVksRUFBRTtFQUFNLENBQUMsQ0FBQyxFQUFBRSxLQUFBLEdBTWxEQyxXQUFXLENBQUM7SUFDWkosSUFBSSxFQUFFLHVCQUF1QjtJQUM3QkssUUFBUSxFQUFFO0VBQ1gsQ0FBQyxDQUFDLEVBQUFULElBQUEsQ0FBQVUsTUFBQSxJQUFB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
|
|
278
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWSVNVQUxfRklMVEVSX0NPTlRBSU5FUiIsIkZJTFRFUl9DT05UQUlORVIiLCJGaWx0ZXJCYXIiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJfZGVjMiIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsIl9kZWMzIiwiX2RlYzQiLCJhc3NvY2lhdGlvbiIsIm11bHRpcGxlIiwiX2NsYXNzIiwiX2NsYXNzMiIsIl9NZGNGaWx0ZXJCYXIiLCJpZE9yUHJvcHMiLCJzZXR0aW5ncyIsIl90aGlzIiwicHJvcGVydHlJbmZvIiwiY2FsbCIsIl9pbml0aWFsaXplckRlZmluZVByb3BlcnR5IiwiX2Rlc2NyaXB0b3IiLCJfZGVzY3JpcHRvcjIiLCJfZGVzY3JpcHRvcjMiLCJfaXNJbml0aWFsaXplZCIsIl9pbml0aWFsaXplU3RhdHVzIiwiX2luaGVyaXRzTG9vc2UiLCJfcHJvdG8iLCJwcm90b3R5cGUiLCJfaW5pdGlhbGl6ZWRQcm9taXNlS2VlcGVyIiwiUHJvbWlzZUtlZXBlciIsImluaXRpYWxpemVkV2l0aE1ldGFkYXRhIiwid2FpdEZvck1vZGVsVG9CZVNldCIsInJlc29sdmUiLCJnZXRNb2RlbCIsIm1vZGVsSXNTZXRQcm9taXNlS2VlcGVyIiwiZm5DaGVja0FuZFJlc2V0IiwiZSIsImZpbHRlcmJhciIsImdldFNvdXJjZSIsImRldGFjaE1vZGVsQ29udGV4dENoYW5nZSIsImF0dGFjaE1vZGVsQ29udGV4dENoYW5nZSIsInByb21pc2UiLCJpc0luaXRpYWxpemVkIiwid2hlbkluaXRpYWxpemVkIiwic2V0VG9nZ2xlQ29udHJvbCIsInZUb2dnbGUiLCJfb1NlZ21lbnRlZEJ1dHRvbiIsIkVsZW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsInRvZ2dsZUNvbnRyb2wiLCJkZXRhY2hFdmVudCIsIl90b2dnbGVMYXlvdXQiLCJiaW5kIiwiYXR0YWNoRXZlbnQiLCJzZXRBc3NvY2lhdGlvbiIsIndhaXRGb3JJbml0aWFsaXphdGlvbiIsInRoZW4iLCJ0YXJnZXRLZXkiLCJnZXRTZWxlY3RlZEtleSIsIl9vRmlsdGVyQmFyTGF5b3V0IiwiaXNBIiwiX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQiLCJWaXN1YWxGaWx0ZXJDb250YWluZXIiLCJzZXRTaG93QWRhcHRGaWx0ZXJzQnV0dG9uIiwib0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQiLCJvRmlsdGVySXRlbXMiLCJnZXRGaWx0ZXJJdGVtcyIsImFGaWx0ZXJGaWVsZHMiLCJnZXRBbGxGaWx0ZXJGaWVsZHMiLCJhU29ydGVkRmlsdGVyRmllbGRzIiwiZ2V0U29ydGVkRmlsdGVyRmllbGRzIiwiYUJ1dHRvbnMiLCJnZXRBbGxCdXR0b25zIiwiYVZpc3VhbEZpbHRlckZpZWxkcyIsImdldEFsbFZpc3VhbEZpbHRlckZpZWxkcyIsInNldEFsbEZpbHRlckZpZWxkcyIsImZvckVhY2giLCJvRmlsdGVyRmllbGQiLCJpSW5kZXgiLCJyZW1vdmVGaWx0ZXJGaWVsZCIsImluc2VydEZpbHRlckZpZWxkIiwib0J1dHRvbiIsInJlbW92ZUJ1dHRvbiIsImFkZEJ1dHRvbiIsInNldEFnZ3JlZ2F0aW9uIiwiaW52YWxpZGF0ZSIsImNhdGNoIiwiZXJyb3IiLCJMb2ciLCJhRmlsdGVySXRlbXMiLCJhRmlsdGVySWRzIiwib0ZpbHRlckl0ZW0iLCJwdXNoIiwiZ2V0SWQiLCJzb3J0IiwiYUZpcnN0SXRlbSIsImFTZWNvbmRJdGVtIiwic0ZpcnN0SXRlbVZGSWQiLCJzU2Vjb25kSXRlbVZGSWQiLCJnZXRDb250ZW50Iiwib0lubmVyQ29udHJvbCIsImluZGV4T2YiLCJfY3JlYXRlSW5uZXJMYXlvdXQiLCJGaWx0ZXJDb250YWluZXIiLCJfY0xheW91dEl0ZW0iLCJGaWx0ZXJJdGVtTGF5b3V0IiwiZ2V0SW5uZXIiLCJhZGRTdHlsZUNsYXNzIiwiX2FkZEJ1dHRvbnMiLCJvSW5uZXJMYXlvdXQiLCJvRmlsdGVyQ29udGFpbmVySW5uZXJMYXlvdXRFdmVudERlbGVnYXRlIiwib25CZWZvcmVSZW5kZXJpbmciLCJpbml0aWFsTGF5b3V0IiwicmVtb3ZlRXZlbnREZWxlZ2F0ZSIsImFkZEV2ZW50RGVsZWdhdGUiLCJleGl0IiwiZ2V0U2VnbWVudGVkQnV0dG9uIiwiZW5hYmxlUmVxdWVzdHMiLCJlbmFibGUiLCJkaWZmU3RhdGUiLCJzZXRTdXNwZW5kU2VsZWN0aW9uIiwiX2VuYWJsZVZpc3VhbEZpbHRlckNoYXJ0QmluZGluZ3MiLCJfZ2V0RmlsdGVyTGF5b3V0QnlUeXBlIiwibGF5b3V0Q2xhc3NOYW1lIiwicmV0RmlsdGVyTGF5b3V0IiwidW5kZWZpbmVkIiwidmlzdWFsRmlsdGVyTGF5b3V0IiwiZW5hYmxlQ2hhcnRCaW5kaW5nIiwiY29tcGFjdEZpbHRlckxheW91dCIsInZpc3VhbEZpbHRlcnMiLCJWaXN1YWxGaWx0ZXJVdGlscyIsIk1kY0ZpbHRlckJhciIsIl9hcHBseURlY29yYXRlZERlc2NyaXB0b3IiLCJjb25maWd1cmFibGUiLCJlbnVtZXJhYmxlIiwid3JpdGFibGUiLCJpbml0aWFsaXplciJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiRmlsdGVyQmFyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IHR5cGUgeyBQcm9wZXJ0aWVzT2YgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgeyBhc3NvY2lhdGlvbiwgZGVmaW5lVUk1Q2xhc3MsIHByb3BlcnR5IH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IFByb21pc2VLZWVwZXIgZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvUHJvbWlzZUtlZXBlclwiO1xuaW1wb3J0IEZpbHRlckNvbnRhaW5lciBmcm9tIFwic2FwL2ZlL21hY3Jvcy9jb250cm9scy9maWx0ZXJiYXIvRmlsdGVyQ29udGFpbmVyXCI7XG5pbXBvcnQgVmlzdWFsRmlsdGVyQ29udGFpbmVyIGZyb20gXCJzYXAvZmUvbWFjcm9zL2NvbnRyb2xzL2ZpbHRlcmJhci9WaXN1YWxGaWx0ZXJDb250YWluZXJcIjtcbmltcG9ydCB0eXBlIFZpc3VhbEZpbHRlciBmcm9tIFwic2FwL2ZlL21hY3Jvcy92aXN1YWxmaWx0ZXJzL1Zpc3VhbEZpbHRlclwiO1xuaW1wb3J0IHR5cGUgQnV0dG9uIGZyb20gXCJzYXAvbS9CdXR0b25cIjtcbmltcG9ydCB0eXBlIFNlZ21lbnRlZEJ1dHRvbiBmcm9tIFwic2FwL20vU2VnbWVudGVkQnV0dG9uXCI7XG5pbXBvcnQgdHlwZSB7IE1hbmFnZWRPYmplY3QkTW9kZWxDb250ZXh0Q2hhbmdlRXZlbnQgfSBmcm9tIFwic2FwL3VpL2Jhc2UvTWFuYWdlZE9iamVjdFwiO1xuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IHsgZGVmYXVsdCBhcyBFbGVtZW50IH0gZnJvbSBcInNhcC91aS9jb3JlL0VsZW1lbnRcIjtcbmltcG9ydCB0eXBlIHsgJEZpbHRlckJhclNldHRpbmdzIH0gZnJvbSBcInNhcC91aS9tZGMvRmlsdGVyQmFyXCI7XG5pbXBvcnQgTWRjRmlsdGVyQmFyIGZyb20gXCJzYXAvdWkvbWRjL0ZpbHRlckJhclwiO1xuaW1wb3J0IHR5cGUgRmlsdGVyRmllbGQgZnJvbSBcInNhcC91aS9tZGMvRmlsdGVyRmllbGRcIjtcbmltcG9ydCB0eXBlIElGaWx0ZXJDb250YWluZXIgZnJvbSBcInNhcC91aS9tZGMvZmlsdGVyYmFyL0lGaWx0ZXJDb250YWluZXJcIjtcbmltcG9ydCBGaWx0ZXJJdGVtTGF5b3V0IGZyb20gXCJzYXAvdWkvbWRjL2ZpbHRlcmJhci9hbGlnbmVkL0ZpbHRlckl0ZW1MYXlvdXRcIjtcbmltcG9ydCB7IHR5cGUgRXh0ZXJuYWxTdGF0ZVR5cGUgfSBmcm9tIFwiLi4vdmFsdWVoZWxwL1ZhbHVlSGVscERlbGVnYXRlXCI7XG5pbXBvcnQgVmlzdWFsRmlsdGVyVXRpbHMgZnJvbSBcIi4vZmlsdGVyYmFyL3V0aWxzL1Zpc3VhbEZpbHRlclV0aWxzXCI7XG5cbmNvbnN0IFZJU1VBTF9GSUxURVJfQ09OVEFJTkVSID0gXCJzYXAuZmUubWFjcm9zLmNvbnRyb2xzLmZpbHRlcmJhci5WaXN1YWxGaWx0ZXJDb250YWluZXJcIixcblx0RklMVEVSX0NPTlRBSU5FUiA9IFwic2FwLmZlLm1hY3Jvcy5jb250cm9scy5maWx0ZXJiYXIuRmlsdGVyQ29udGFpbmVyXCI7XG50eXBlIENvbnRhaW5lclR5cGUgPSB0eXBlb2YgVklTVUFMX0ZJTFRFUl9DT05UQUlORVIgfCB0eXBlb2YgRklMVEVSX0NPTlRBSU5FUjtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLm1hY3Jvcy5jb250cm9scy5GaWx0ZXJCYXJcIilcbmNsYXNzIEZpbHRlckJhciBleHRlbmRzIE1kY0ZpbHRlckJhciB7XG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIsIGRlZmF1bHRWYWx1ZTogXCJjb21wYWN0XCIgfSlcblx0aW5pdGlhbExheW91dCE6IHN0cmluZztcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuXHRkaXNhYmxlRHJhZnRFZGl0U3RhdGVGaWx0ZXIhOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBDb250cm9sIHdoaWNoIGFsbG93cyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gdmlzdWFsIGFuZCBub3JtYWwgZmlsdGVyIGxheW91dHNcblx0ICovXG5cdEBhc3NvY2lhdGlvbih7XG5cdFx0dHlwZTogXCJzYXAubS5TZWdtZW50ZWRCdXR0b25cIixcblx0XHRtdWx0aXBsZTogZmFsc2Vcblx0fSlcblx0dG9nZ2xlQ29udHJvbCE6IHN0cmluZztcblxuXHRjb25zdHJ1Y3Rvcihcblx0XHRpZE9yUHJvcHM/OiBQcm9wZXJ0aWVzT2Y8RmlsdGVyQmFyPiAmXG5cdFx0XHQkRmlsdGVyQmFyU2V0dGluZ3MgJiB7XG5cdFx0XHRcdGFkYXB0RmlsdGVyc1RleHQ/OiBzdHJpbmc7XG5cdFx0XHRcdGFkYXB0RmlsdGVyc1RleHROb25aZXJvPzogc3RyaW5nO1xuXHRcdFx0fSxcblx0XHRzZXR0aW5ncz86IFByb3BlcnRpZXNPZjxGaWx0ZXJCYXI+ICYgJEZpbHRlckJhclNldHRpbmdzXG5cdCkge1xuXHRcdGRlbGV0ZSBpZE9yUHJvcHM/LnByb3BlcnR5SW5mbztcblx0XHRkZWxldGUgc2V0dGluZ3M/LnByb3BlcnR5SW5mbztcblx0XHRzdXBlcihpZE9yUHJvcHMgYXMgdW5rbm93biBhcyBzdHJpbmcsIHNldHRpbmdzKTtcblx0XHR0aGlzLl9pbml0aWFsaXplU3RhdHVzKCk7XG5cdH1cblxuXHRwcml2YXRlIGFzeW5jIF9pbml0aWFsaXplU3RhdHVzKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdC8vIFByb21pc2Uga2VlcGVyIHRvIGhvbGQgdGhlIHByb2Nlc3MuXG5cdFx0dGhpcy5faW5pdGlhbGl6ZWRQcm9taXNlS2VlcGVyID0gbmV3IFByb21pc2VLZWVwZXI8dm9pZD4oKTtcblxuXHRcdC8vIEF3YWl0c1xuXHRcdGF3YWl0IHRoaXMuaW5pdGlhbGl6ZWRXaXRoTWV0YWRhdGEoKTtcblx0XHRhd2FpdCB0aGlzLndhaXRGb3JNb2RlbFRvQmVTZXQoKTtcblxuXHRcdHRoaXMuX2luaXRpYWxpemVkUHJvbWlzZUtlZXBlci5yZXNvbHZlKCk7XG5cdFx0dGhpcy5faXNJbml0aWFsaXplZCA9IHRydWU7XG5cdH1cblxuXHRwcml2YXRlIGFzeW5jIHdhaXRGb3JNb2RlbFRvQmVTZXQoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0aWYgKHRoaXMuZ2V0TW9kZWwoKSkge1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblx0XHQvLyB3YWl0IGZvciBkZWFmYXVsdCBtb2RlbCB0byBiZSBzZXQuXG5cdFx0Y29uc3QgbW9kZWxJc1NldFByb21pc2VLZWVwZXIgPSBuZXcgUHJvbWlzZUtlZXBlcjx2b2lkPigpO1xuXHRcdGNvbnN0IGZuQ2hlY2tBbmRSZXNldCA9IChlOiBNYW5hZ2VkT2JqZWN0JE1vZGVsQ29udGV4dENoYW5nZUV2ZW50KTogdm9pZCA9PiB7XG5cdFx0XHRjb25zdCBmaWx0ZXJiYXIgPSBlLmdldFNvdXJjZSgpO1xuXHRcdFx0aWYgKGZpbHRlcmJhci5nZXRNb2RlbCgpKSB7XG5cdFx0XHRcdC8vIGRlZmF1bHQgbW9kZWwgaXMgc2V0LlxuXHRcdFx0XHRmaWx0ZXJiYXIuZGV0YWNoTW9kZWxDb250ZXh0Q2hhbmdlKGZuQ2hlY2tBbmRSZXNldCk7XG5cdFx0XHRcdG1vZGVsSXNTZXRQcm9taXNlS2VlcGVyPy5yZXNvbHZlKCk7XG5cdFx0XHR9XG5cdFx0fTtcblx0XHR0aGlzLmF0dGFjaE1vZGVsQ29udGV4dENoYW5nZShmbkNoZWNrQW5kUmVzZXQpO1xuXHRcdHJldHVybiBtb2RlbElzU2V0UHJvbWlzZUtlZXBlci5wcm9taXNlO1xuXHR9XG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiB0aGUgRmlsdGVyQmFyIGlzIGZ1bGx5IGluaXRpYWxpemVkLlxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBGaWx0ZXJCYXIgaXMgaW5pdGlhbGl6ZWQsIGZhbHNlIG90aGVyd2lzZS5cblx0ICovXG5cdGlzSW5pdGlhbGl6ZWQoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuICEhdGhpcy5faXNJbml0aWFsaXplZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBBc3luYyBlcXVpdmFsZW50IG9mICdpc0luaXRpYWxpemVkJyB0byBwZXJmb3JtIGZpbHRlciBiYXIgaW50ZXJhY3Rpb25zIGFmdGVyIHRoZSBmaWx0ZXIgYmFyIGlzIHJlYWR5LlxuXHQgKiBAcmV0dXJucyBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgZmlsdGVyIGJhciBpcyBpbml0aWFsaXplZC5cblx0ICovXG5cdGFzeW5jIHdoZW5Jbml0aWFsaXplZCgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRyZXR1cm4gdGhpcy5faW5pdGlhbGl6ZWRQcm9taXNlS2VlcGVyPy5wcm9taXNlO1xuXHR9XG5cblx0cHJpdmF0ZSBfaW5pdGlhbGl6ZWRQcm9taXNlS2VlcGVyPzogUHJvbWlzZUtlZXBlcjx2b2lkPjtcblxuXHRwcml2YXRlIF9pc0luaXRpYWxpemVkID0gZmFsc2U7XG5cblx0cHJpdmF0ZSBfb1NlZ21lbnRlZEJ1dHRvbj86IFNlZ21lbnRlZEJ1dHRvbjtcblxuXHRwcml2YXRlIF9vU2Vjb25kYXJ5RmlsdGVyQmFyTGF5b3V0PzogSUZpbHRlckNvbnRhaW5lcjtcblxuXHRwcml2YXRlIF9vRmlsdGVyQmFyTGF5b3V0ITogSUZpbHRlckNvbnRhaW5lcjtcblxuXHRwcml2YXRlIF9jTGF5b3V0SXRlbTogdHlwZW9mIEZpbHRlckl0ZW1MYXlvdXQ7XG5cblx0c2V0VG9nZ2xlQ29udHJvbCh2VG9nZ2xlOiBzdHJpbmcgfCBTZWdtZW50ZWRCdXR0b24pOiB2b2lkIHtcblx0XHRpZiAodHlwZW9mIHZUb2dnbGUgPT09IFwic3RyaW5nXCIpIHtcblx0XHRcdHRoaXMuX29TZWdtZW50ZWRCdXR0b24gPSBFbGVtZW50LmdldEVsZW1lbnRCeUlkKHZUb2dnbGUpIGFzIFNlZ21lbnRlZEJ1dHRvbjtcblx0XHR9IGVsc2Uge1xuXHRcdFx0dGhpcy5fb1NlZ21lbnRlZEJ1dHRvbiA9IHZUb2dnbGU7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMudG9nZ2xlQ29udHJvbCAmJiB0aGlzLl9vU2VnbWVudGVkQnV0dG9uKSB7XG5cdFx0XHR0aGlzLl9vU2VnbWVudGVkQnV0dG9uLmRldGFjaEV2ZW50KFwic2VsZWN0aW9uQ2hhbmdlXCIsIHRoaXMuX3RvZ2dsZUxheW91dC5iaW5kKHRoaXMpKTtcblx0XHR9XG5cdFx0aWYgKHRoaXMuX29TZWdtZW50ZWRCdXR0b24pIHtcblx0XHRcdHRoaXMuX29TZWdtZW50ZWRCdXR0b24uYXR0YWNoRXZlbnQoXCJzZWxlY3Rpb25DaGFuZ2VcIiwgdGhpcy5fdG9nZ2xlTGF5b3V0LmJpbmQodGhpcykpO1xuXHRcdH1cblx0XHR0aGlzLnNldEFzc29jaWF0aW9uKFwidG9nZ2xlQ29udHJvbFwiLCB2VG9nZ2xlLCB0cnVlKTtcblx0fVxuXG5cdF90b2dnbGVMYXlvdXQoKTogdm9pZCB7XG5cdFx0Ly8gU2luY2UgcHJpbWFyeSBsYXlvdXQgaXMgYWx3YXlzIGNvbXBhY3Rcblx0XHQvLyBoZW5jZSBzZXQgdGhlIHNlY29uZGFyeSBsYXlvdXQgYXMgdmlzdWFsIGZpbHRlciBvbmx5IGZvciB0aGUgZmlyc3QgdGltZSBvbmx5XG5cdFx0dGhpcy53YWl0Rm9ySW5pdGlhbGl6YXRpb24oKVxuXHRcdFx0LnRoZW4oKCkgPT4ge1xuXHRcdFx0XHRjb25zdCB0YXJnZXRLZXkgPSB0aGlzLl9vU2VnbWVudGVkQnV0dG9uPy5nZXRTZWxlY3RlZEtleSgpO1xuXHRcdFx0XHRpZiAoXG5cdFx0XHRcdFx0KHRhcmdldEtleSA9PT0gXCJ2aXN1YWxcIiAmJlxuXHRcdFx0XHRcdFx0dGhpcy5fb0ZpbHRlckJhckxheW91dD8uaXNBPFZpc3VhbEZpbHRlckNvbnRhaW5lcj4oXCJzYXAuZmUubWFjcm9zLmNvbnRyb2xzLmZpbHRlcmJhci5WaXN1YWxGaWx0ZXJDb250YWluZXJcIikpIHx8XG5cdFx0XHRcdFx0KHRhcmdldEtleSA9PT0gXCJjb21wYWN0XCIgJiZcblx0XHRcdFx0XHRcdCF0aGlzLl9vRmlsdGVyQmFyTGF5b3V0Py5pc0E8VmlzdWFsRmlsdGVyQ29udGFpbmVyPihcInNhcC5mZS5tYWNyb3MuY29udHJvbHMuZmlsdGVyYmFyLlZpc3VhbEZpbHRlckNvbnRhaW5lclwiKSlcblx0XHRcdFx0KSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICghdGhpcy5fb1NlY29uZGFyeUZpbHRlckJhckxheW91dCkge1xuXHRcdFx0XHRcdHRoaXMuX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQgPSBuZXcgVmlzdWFsRmlsdGVyQ29udGFpbmVyKCkgYXMgdW5rbm93biBhcyBJRmlsdGVyQ29udGFpbmVyO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gZG8gbm90IHNob3cgQWRhcHQgRmlsdGVycyBCdXR0b24gZm9yIHZpc3VhbCBsYXlvdXRcblx0XHRcdFx0aWYgKHRoaXMuX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQ/LmlzQTxWaXN1YWxGaWx0ZXJDb250YWluZXI+KFwic2FwLmZlLm1hY3Jvcy5jb250cm9scy5maWx0ZXJiYXIuVmlzdWFsRmlsdGVyQ29udGFpbmVyXCIpKSB7XG5cdFx0XHRcdFx0dGhpcy5zZXRTaG93QWRhcHRGaWx0ZXJzQnV0dG9uKGZhbHNlKTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHR0aGlzLnNldFNob3dBZGFwdEZpbHRlcnNCdXR0b24odHJ1ZSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBnZXQgYWxsIGZpbHRlciBmaWVsZHMgYW5kIGJ1dHRvbiBvZiB0aGUgY3VycmVudCBsYXlvdXRcblx0XHRcdFx0Y29uc3Qgb0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQgPSB0aGlzLl9vRmlsdGVyQmFyTGF5b3V0O1xuXHRcdFx0XHRjb25zdCBvRmlsdGVySXRlbXMgPSB0aGlzLmdldEZpbHRlckl0ZW1zKCk7XG5cdFx0XHRcdGNvbnN0IGFGaWx0ZXJGaWVsZHMgPSBvQ3VycmVudEZpbHRlckJhckxheW91dC5nZXRBbGxGaWx0ZXJGaWVsZHMoKTtcblx0XHRcdFx0Y29uc3QgYVNvcnRlZEZpbHRlckZpZWxkcyA9IHRoaXMuZ2V0U29ydGVkRmlsdGVyRmllbGRzKG9GaWx0ZXJJdGVtcywgYUZpbHRlckZpZWxkcyk7XG5cdFx0XHRcdGNvbnN0IGFCdXR0b25zID0gb0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQuZ2V0QWxsQnV0dG9ucygpO1xuXHRcdFx0XHRjb25zdCBhVmlzdWFsRmlsdGVyRmllbGRzID1cblx0XHRcdFx0XHRvQ3VycmVudEZpbHRlckJhckxheW91dC5nZXRBbGxWaXN1YWxGaWx0ZXJGaWVsZHMgJiZcblx0XHRcdFx0XHQob0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQuZ2V0QWxsVmlzdWFsRmlsdGVyRmllbGRzKCkgYXMgUmVjb3JkPHN0cmluZywgVmlzdWFsRmlsdGVyPiB8IHVuZGVmaW5lZCk7XG5cdFx0XHRcdGlmICh0aGlzLl9vU2Vjb25kYXJ5RmlsdGVyQmFyTGF5b3V0Py5pc0E8VmlzdWFsRmlsdGVyQ29udGFpbmVyPihcInNhcC5mZS5tYWNyb3MuY29udHJvbHMuZmlsdGVyYmFyLlZpc3VhbEZpbHRlckNvbnRhaW5lclwiKSkge1xuXHRcdFx0XHRcdHRoaXMuX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQuc2V0QWxsRmlsdGVyRmllbGRzKGFTb3J0ZWRGaWx0ZXJGaWVsZHMsIGFWaXN1YWxGaWx0ZXJGaWVsZHMpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC8vIHVzZSBzZWNvbmRhcnkgZmlsdGVyIGJhciBsYXlvdXQgYXMgbmV3IGxheW91dFxuXHRcdFx0XHR0aGlzLl9vRmlsdGVyQmFyTGF5b3V0ID0gdGhpcy5fb1NlY29uZGFyeUZpbHRlckJhckxheW91dCE7XG5cblx0XHRcdFx0Ly8gaW5zZXJ0IGFsbCBmaWx0ZXIgZmllbGRzIGZyb20gY3VycmVudCBsYXlvdXQgdG8gbmV3IGxheW91dFxuXHRcdFx0XHRhRmlsdGVyRmllbGRzLmZvckVhY2goKG9GaWx0ZXJGaWVsZDogRmlsdGVyRmllbGQsIGlJbmRleDogbnVtYmVyKSA9PiB7XG5cdFx0XHRcdFx0b0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQucmVtb3ZlRmlsdGVyRmllbGQob0ZpbHRlckZpZWxkKTtcblx0XHRcdFx0XHR0aGlzLl9vRmlsdGVyQmFyTGF5b3V0Lmluc2VydEZpbHRlckZpZWxkKG9GaWx0ZXJGaWVsZCwgaUluZGV4KTtcblx0XHRcdFx0fSk7XG5cdFx0XHRcdC8vIGluc2VydCBhbGwgYnV0dG9ucyBmcm9tIHRoZSBjdXJyZW50IGxheW91dCB0byB0aGUgbmV3IGxheW91dFxuXHRcdFx0XHRhQnV0dG9ucy5mb3JFYWNoKChvQnV0dG9uOiBCdXR0b24pID0+IHtcblx0XHRcdFx0XHRvQ3VycmVudEZpbHRlckJhckxheW91dC5yZW1vdmVCdXR0b24ob0J1dHRvbik7XG5cdFx0XHRcdFx0dGhpcy5fb0ZpbHRlckJhckxheW91dC5hZGRCdXR0b24ob0J1dHRvbik7XG5cdFx0XHRcdH0pO1xuXG5cdFx0XHRcdC8vIHNldCB0aGUgY3VycmVudCBmaWx0ZXIgYmFyIGxheW91dCB0byB0aGUgc2Vjb25kYXJ5IG9uZVxuXHRcdFx0XHR0aGlzLl9vU2Vjb25kYXJ5RmlsdGVyQmFyTGF5b3V0ID0gb0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQ7XG5cblx0XHRcdFx0Ly8gdXBkYXRlIHRoZSBsYXlvdXQgYWdncmVnYXRpb24gb2YgdGhlIGZpbHRlciBiYXIgYW5kIHJlcmVuZGVyIHRoZSBzYW1lLlxuXHRcdFx0XHR0aGlzLnNldEFnZ3JlZ2F0aW9uKFwibGF5b3V0XCIsIHRoaXMuX29GaWx0ZXJCYXJMYXlvdXQsIHRydWUpO1xuXHRcdFx0XHR0aGlzLl9vRmlsdGVyQmFyTGF5b3V0LmludmFsaWRhdGUoKTtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fSlcblx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IHtcblx0XHRcdFx0TG9nLmVycm9yKGVycm9yKTtcblx0XHRcdH0pO1xuXHR9XG5cblx0Z2V0U29ydGVkRmlsdGVyRmllbGRzKGFGaWx0ZXJJdGVtczogRmlsdGVyRmllbGRbXSwgYUZpbHRlckZpZWxkczogRmlsdGVyRmllbGRbXSk6IEZpbHRlckZpZWxkW10ge1xuXHRcdGNvbnN0IGFGaWx0ZXJJZHM6IHN0cmluZ1tdID0gW107XG5cdFx0YUZpbHRlckl0ZW1zLmZvckVhY2goZnVuY3Rpb24gKG9GaWx0ZXJJdGVtOiBGaWx0ZXJGaWVsZCkge1xuXHRcdFx0YUZpbHRlcklkcy5wdXNoKG9GaWx0ZXJJdGVtLmdldElkKCkpO1xuXHRcdH0pO1xuXHRcdGFGaWx0ZXJGaWVsZHMuc29ydChmdW5jdGlvbiAoYUZpcnN0SXRlbTogRmlsdGVyRmllbGQsIGFTZWNvbmRJdGVtOiBGaWx0ZXJGaWVsZCkge1xuXHRcdFx0bGV0IHNGaXJzdEl0ZW1WRklkLCBzU2Vjb25kSXRlbVZGSWQ7XG5cdFx0XHQoYUZpcnN0SXRlbS5nZXRDb250ZW50KCkgYXMgdW5rbm93biBhcyBDb250cm9sW10pLmZvckVhY2goZnVuY3Rpb24gKG9Jbm5lckNvbnRyb2w6IENvbnRyb2wpIHtcblx0XHRcdFx0aWYgKG9Jbm5lckNvbnRyb2wuaXNBPEZpbHRlckZpZWxkPihcInNhcC51aS5tZGMuRmlsdGVyRmllbGRcIikpIHtcblx0XHRcdFx0XHRzRmlyc3RJdGVtVkZJZCA9IG9Jbm5lckNvbnRyb2wuZ2V0SWQoKTtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0XHQoYVNlY29uZEl0ZW0uZ2V0Q29udGVudCgpIGFzIHVua25vd24gYXMgQ29udHJvbFtdKS5mb3JFYWNoKGZ1bmN0aW9uIChvSW5uZXJDb250cm9sOiBDb250cm9sKSB7XG5cdFx0XHRcdGlmIChvSW5uZXJDb250cm9sLmlzQTxGaWx0ZXJGaWVsZD4oXCJzYXAudWkubWRjLkZpbHRlckZpZWxkXCIpKSB7XG5cdFx0XHRcdFx0c1NlY29uZEl0ZW1WRklkID0gb0lubmVyQ29udHJvbC5nZXRJZCgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHRcdHJldHVybiBhRmlsdGVySWRzLmluZGV4T2Yoc0ZpcnN0SXRlbVZGSWQgPz8gXCJcIikgLSBhRmlsdGVySWRzLmluZGV4T2Yoc1NlY29uZEl0ZW1WRklkID8/IFwiXCIpO1xuXHRcdH0pO1xuXHRcdHJldHVybiBhRmlsdGVyRmllbGRzO1xuXHR9XG5cblx0X2NyZWF0ZUlubmVyTGF5b3V0KCk6IHZvaWQge1xuXHRcdHRoaXMuX29GaWx0ZXJCYXJMYXlvdXQgPSBuZXcgRmlsdGVyQ29udGFpbmVyKCk7XG5cdFx0dGhpcy5fY0xheW91dEl0ZW0gPSBGaWx0ZXJJdGVtTGF5b3V0O1xuXHRcdHRoaXMuX29GaWx0ZXJCYXJMYXlvdXQuZ2V0SW5uZXIoKS5hZGRTdHlsZUNsYXNzKFwic2FwVWlNZGNGaWx0ZXJCYXJCYXNlQUZMYXlvdXRcIik7XG5cdFx0dGhpcy5fYWRkQnV0dG9ucygpO1xuXG5cdFx0Ly8gVE9ETzogQ2hlY2sgd2l0aCBNREMgaWYgdGhlcmUgaXMgYSBiZXR0ZXIgd2F5IHRvIGxvYWQgdmlzdWFsIGZpbHRlciBvbiB0aGUgYmFzaXMgb2YgY29udHJvbCBwcm9wZXJ0eVxuXHRcdC8vIF9jcmVhdGVJbm5lckxheW91dCBpcyBjYWxsZWQgb24gSW5pdCBieSB0aGUgZmlsdGVyIGJhciBiYXNlLlxuXHRcdC8vIFRoaXMgbWVhbiB0aGF0IHdlIGRvIG5vdCBoYXZlIGFjY2VzcyB0byB0aGUgY29udHJvbCBwcm9wZXJ0aWVzIHlldFxuXHRcdC8vIGFuZCBoZW5jZSB3ZSBjYW5ub3QgZGVjaWRlIG9uIHRoZSBiYXNpcyBvZiBjb250cm9sIHByb3BlcnRpZXMgd2hldGhlciBpbml0aWFsIGxheW91dCBzaG91bGQgYmUgY29tcGFjdCBvciB2aXN1YWxcblx0XHQvLyBBcyBhIHJlc3VsdCB3ZSBoYXZlIHRvIGRvIHRoaXMgd29ya2Fyb3VuZCB0byBhbHdheXMgbG9hZCB0aGUgY29tcGFjdCBsYXlvdXQgYnkgZGVmYXVsdFxuXHRcdC8vIEFuZCB0b29nbGUgdGhlIHNhbWUgaW4gY2FzZSB0aGUgaW5pdGlhbExheW91dCB3YXMgc3VwcG9zZWQgdG8gYmUgdmlzdWFsIGZpbHRlcnMuXG5cdFx0Y29uc3Qgb0lubmVyTGF5b3V0ID0gdGhpcy5fb0ZpbHRlckJhckxheW91dC5nZXRJbm5lcigpO1xuXHRcdGNvbnN0IG9GaWx0ZXJDb250YWluZXJJbm5lckxheW91dEV2ZW50RGVsZWdhdGUgPSB7XG5cdFx0XHRvbkJlZm9yZVJlbmRlcmluZzogKCk6IHZvaWQgPT4ge1xuXHRcdFx0XHRpZiAodGhpcy5pbml0aWFsTGF5b3V0ID09PSBcInZpc3VhbFwiKSB7XG5cdFx0XHRcdFx0dGhpcy5fdG9nZ2xlTGF5b3V0KCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0b0lubmVyTGF5b3V0LnJlbW92ZUV2ZW50RGVsZWdhdGUob0ZpbHRlckNvbnRhaW5lcklubmVyTGF5b3V0RXZlbnREZWxlZ2F0ZSk7XG5cdFx0XHR9XG5cdFx0fTtcblx0XHRvSW5uZXJMYXlvdXQuYWRkRXZlbnREZWxlZ2F0ZShvRmlsdGVyQ29udGFpbmVySW5uZXJMYXlvdXRFdmVudERlbGVnYXRlKTtcblxuXHRcdHRoaXMuc2V0QWdncmVnYXRpb24oXCJsYXlvdXRcIiwgdGhpcy5fb0ZpbHRlckJhckxheW91dCwgdHJ1ZSk7XG5cdH1cblxuXHRleGl0KCk6IHZvaWQge1xuXHRcdHN1cGVyLmV4aXQoKTtcblx0XHQvLyBTb21ldGltZXMgdXBvbiBleHRlcm5hbCBuYXZpZ2F0aW9uIHRoaXMuX1NlZ21lbnRlZEJ1dHRvbiBpcyBhbHJlYWR5IGRlc3Ryb3llZFxuXHRcdC8vIHNvIGNoZWNrIGlmIGl0IGV4aXN0cyBhbmQgdGhlbiBvbmx5IHJlbW92ZSBzdHVmZlxuXHRcdGlmICh0aGlzLl9vU2VnbWVudGVkQnV0dG9uKSB7XG5cdFx0XHR0aGlzLl9vU2VnbWVudGVkQnV0dG9uLmRldGFjaEV2ZW50KFwic2VsZWN0aW9uQ2hhbmdlXCIsIHRoaXMuX3RvZ2dsZUxheW91dCk7XG5cdFx0XHRkZWxldGUgdGhpcy5fb1NlZ21lbnRlZEJ1dHRvbjtcblx0XHR9XG5cdH1cblxuXHRnZXRTZWdtZW50ZWRCdXR0b24oKTogU2VnbWVudGVkQnV0dG9uIHwgdW5kZWZpbmVkIHtcblx0XHRyZXR1cm4gdGhpcy5fb1NlZ21lbnRlZEJ1dHRvbjtcblx0fVxuXG5cdC8qKlxuXHQgKiBFbmFibGUgb3IgZGlzYWJsZSByZXF1ZXN0cyB0aGF0IGFyZSBpbml0aWF0ZWQgYnkgdGhlIEZpbHRlckJhci5cblx0ICpcblx0ICogVG8gYmUgdXNlZCB0byBzdXNwZW5kIG9yIHJlc3VtZSByZXF1ZXN0cyh0YWJsZSBvciB2aXN1YWwgZmlsdGVycykgd2hlbiB0aGUgZmlsdGVyIGJhciBpcyBiZWluZyBtb2RpZmllZCBvciB3aGVuIHRoZSB1c2VyIGlzIHByb2dyYW1tYXRpY2FsbHkgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgZmlsdGVyIGNvbnRyb2xzLlxuXHQgKiBUaGlzIG1ldGhvZCBpcyBhbHNvIHVzZWQgdG8gY29udHJvbCB3aGV0aGVyIHRoZSB2aXN1YWwgZmlsdGVyIGNoYXJ0IGJpbmRpbmcgc2hvdWxkIGJlIHJlc3VtZWQvc3VzcGVuZGVkIGJhc2VkIG9uIHRoZSBkaWZmIHN0YXRlLCBhbmQgcmVzdW1lZCBhZnRlciBjb25kaXRvbiBtb2RlbCB1cGRhdGUuXG5cdCAqIEBwYXJhbSBlbmFibGUgRW5hYmxlIG9yIGRpc2FibGUgcmVxdWVzdHNcblx0ICogQHBhcmFtIGRpZmZTdGF0ZSBJZiB0aGVyZSBpcyBhIGRpZmZlcm5jZSBpbiB0aGUgZXh0ZXJuYWwgc3RhdGUgdGhhdCBuZWVkcyB0byBiZSBjb25zaWRlcmVkIGZvciB2aXN1YWwgZmlsdGVyIGluLXBhcmFtZXRlcnNcblx0ICovXG5cdGVuYWJsZVJlcXVlc3RzKGVuYWJsZTogYm9vbGVhbiwgZGlmZlN0YXRlPzogRXh0ZXJuYWxTdGF0ZVR5cGUpOiB2b2lkIHtcblx0XHR0aGlzLnNldFN1c3BlbmRTZWxlY3Rpb24oIWVuYWJsZSk7XG5cdFx0Ly8gV2UgbmVlZCB0byBlbmFibGUgb3IgZGlzYWJsZSB0aGUgdmlzdWFsIGZpbHRlciBjaGFydCBiaW5kaW5ncyBiYXNlZCBvbiBkaWZmIHN0YXRlLlxuXHRcdHRoaXMuX2VuYWJsZVZpc3VhbEZpbHRlckNoYXJ0QmluZGluZ3MoZW5hYmxlLCBkaWZmU3RhdGUpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEdldCB0aGUgZmlsdGVyIGxheW91dCBieSBpdHMgdHlwZS5cblx0ICogQHBhcmFtIGxheW91dENsYXNzTmFtZSBUaGUgY2xhc3MgbmFtZSBvZiB0aGUgZmlsdGVyIGxheW91dCB0byBiZSByZXR1cm5lZC5cblx0ICogQHRlbXBsYXRlIFQgVGhlIHR5cGUgb2YgdGhlIGZpbHRlciBsYXlvdXQgdG8gYmUgcmV0dXJuZWQuXG5cdCAqIEB0eXBlZGVmIHtJRmlsdGVyQ29udGFpbmVyfSBUIFRoZSB0eXBlIG9mIHRoZSBmaWx0ZXIgbGF5b3V0IHRvIGJlIHJldHVybmVkXG5cdCAqIEByZXR1cm5zIENvcnJlc3BvbmRpbmcgZmlsdGVyIGxheW91dCBpZiBpdCBleGlzdHMsIG90aGVyd2lzZSB1bmRlZmluZWQuXG5cdCAqL1xuXHRfZ2V0RmlsdGVyTGF5b3V0QnlUeXBlPFQgZXh0ZW5kcyBJRmlsdGVyQ29udGFpbmVyPihsYXlvdXRDbGFzc05hbWU6IENvbnRhaW5lclR5cGUpOiBUIHwgdW5kZWZpbmVkIHtcblx0XHRjb25zdCByZXRGaWx0ZXJMYXlvdXQgPSB0aGlzLl9vRmlsdGVyQmFyTGF5b3V0LmlzQTxUPihsYXlvdXRDbGFzc05hbWUpID8gdGhpcy5fb0ZpbHRlckJhckxheW91dCA6IHVuZGVmaW5lZDtcblx0XHRyZXR1cm4gIXJldEZpbHRlckxheW91dCAmJiB0aGlzLl9vU2Vjb25kYXJ5RmlsdGVyQmFyTGF5b3V0Py5pc0E8VD4obGF5b3V0Q2xhc3NOYW1lKVxuXHRcdFx0PyB0aGlzLl9vU2Vjb25kYXJ5RmlsdGVyQmFyTGF5b3V0XG5cdFx0XHQ6IHJldEZpbHRlckxheW91dDtcblx0fVxuXG5cdF9lbmFibGVWaXN1YWxGaWx0ZXJDaGFydEJpbmRpbmdzKGVuYWJsZTogYm9vbGVhbiwgZGlmZlN0YXRlPzogRXh0ZXJuYWxTdGF0ZVR5cGUpOiB2b2lkIHtcblx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10cy1jb21tZW50XG5cdFx0Ly8gQHRzLWlnbm9yZVxuXHRcdGNvbnN0IHZpc3VhbEZpbHRlckxheW91dCA9IHRoaXMuX2dldEZpbHRlckxheW91dEJ5VHlwZTxWaXN1YWxGaWx0ZXJDb250YWluZXI+KFZJU1VBTF9GSUxURVJfQ09OVEFJTkVSKTtcblx0XHRpZiAodmlzdWFsRmlsdGVyTGF5b3V0KSB7XG5cdFx0XHR2aXN1YWxGaWx0ZXJMYXlvdXQuZW5hYmxlQ2hhcnRCaW5kaW5nKGVuYWJsZSwgZGlmZlN0YXRlKTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHQvLyBJZiBpbml0aWFsIGxheW91dCBpcyBjb21wYWN0LCB3ZSBkb24ndCBoYXZlIHRoZSB2aXN1YWwgZmlsdGVyIGxheW91dChjb250YWluZXIpIGF2YWlsYWJsZSB5ZXQgdW50aWwgdGhlIHVzZXIgdG9nZ2xlcyB0byB2aXN1YWwgZmlsdGVyIGxheW91dC5cblx0XHQvLyBTbyB3ZSBuZWVkIHRvIGNoZWNrIGlmIHRoZSBjb21wYWN0IGZpbHRlciBsYXlvdXQgaGFzIHZpc3VhbCBmaWx0ZXJzIGFuZCBlbmFibGUvZGlzYWJsZSB0aGUgY2hhcnQgYmluZGluZyBmb3IgdGhvc2UgdmlzdWFsIGZpbHRlcnMuXG5cdFx0Y29uc3QgY29tcGFjdEZpbHRlckxheW91dCA9IHRoaXMuX2dldEZpbHRlckxheW91dEJ5VHlwZTxGaWx0ZXJDb250YWluZXI+KEZJTFRFUl9DT05UQUlORVIpO1xuXHRcdGlmIChjb21wYWN0RmlsdGVyTGF5b3V0KSB7XG5cdFx0XHRjb25zdCB2aXN1YWxGaWx0ZXJzID0gY29tcGFjdEZpbHRlckxheW91dC5nZXRBbGxWaXN1YWxGaWx0ZXJGaWVsZHMoKTtcblx0XHRcdGlmICh2aXN1YWxGaWx0ZXJzKSB7XG5cdFx0XHRcdFZpc3VhbEZpbHRlclV0aWxzLmVuYWJsZUNoYXJ0QmluZGluZyh2aXN1YWxGaWx0ZXJzLCBlbmFibGUsIGRpZmZTdGF0ZSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5pbnRlcmZhY2UgRmlsdGVyQmFyIHtcblx0X2FkZEJ1dHRvbnMoKTogdm9pZDtcbn1cbmV4cG9ydCBkZWZhdWx0IEZpbHRlckJhcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztFQW9CQSxNQUFNQSx1QkFBdUIsR0FBRyx3REFBd0Q7SUFDdkZDLGdCQUFnQixHQUFHLGtEQUFrRDtFQUFDLElBSWpFQyxTQUFTLElBQUFDLElBQUEsR0FEZEMsY0FBYyxDQUFDLGtDQUFrQyxDQUFDLEVBQUFDLEtBQUEsR0FFakRDLFFBQVEsQ0FBQztJQUFFQyxJQUFJLEVBQUUsUUFBUTtJQUFFQyxZQUFZLEVBQUU7RUFBVSxDQUFDLENBQUMsRUFBQUMsS0FBQSxHQUdyREgsUUFBUSxDQUFDO0lBQUVDLElBQUksRUFBRSxTQUFTO0lBQUVDLFlBQVksRUFBRTtFQUFNLENBQUMs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
|
|
@@ -39,7 +39,14 @@ class FilterBar extends MdcFilterBar {
|
|
|
39
39
|
})
|
|
40
40
|
toggleControl!: string;
|
|
41
41
|
|
|
42
|
-
constructor(
|
|
42
|
+
constructor(
|
|
43
|
+
idOrProps?: PropertiesOf<FilterBar> &
|
|
44
|
+
$FilterBarSettings & {
|
|
45
|
+
adaptFiltersText?: string;
|
|
46
|
+
adaptFiltersTextNonZero?: string;
|
|
47
|
+
},
|
|
48
|
+
settings?: PropertiesOf<FilterBar> & $FilterBarSettings
|
|
49
|
+
) {
|
|
43
50
|
delete idOrProps?.propertyInfo;
|
|
44
51
|
delete settings?.propertyInfo;
|
|
45
52
|
super(idOrProps as unknown as string, settings);
|
|
@@ -75,6 +75,20 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/buildingBlocks/BuildingB
|
|
|
75
75
|
this.setProperty("showAsLink", showAsLink);
|
|
76
76
|
this.updateContent();
|
|
77
77
|
}
|
|
78
|
+
};
|
|
79
|
+
_proto._setAriaLabelledBy = function _setAriaLabelledBy(content) {
|
|
80
|
+
if (content && content.addAriaLabelledBy) {
|
|
81
|
+
const ariaLabelledBy = this.ariaLabelledBy;
|
|
82
|
+
for (const id of ariaLabelledBy) {
|
|
83
|
+
const ariaLabelledBys = content.getAriaLabelledBy() || [];
|
|
84
|
+
if (!ariaLabelledBys.includes(id)) {
|
|
85
|
+
content.addAriaLabelledBy(id);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
_proto.onBeforeRendering = function onBeforeRendering() {
|
|
91
|
+
this._setAriaLabelledBy(this.content);
|
|
78
92
|
}
|
|
79
93
|
|
|
80
94
|
/**
|
|
@@ -146,4 +160,4 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/buildingBlocks/BuildingB
|
|
|
146
160
|
_exports = TextLink;
|
|
147
161
|
return _exports;
|
|
148
162
|
}, false);
|
|
149
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUZXh0TGluayIsIl9kZWMiLCJkZWZpbmVVSTVDbGFzcyIsIl9kZWMyIiwicHJvcGVydHkiLCJ0eXBlIiwiZGVmYXVsdFZhbHVlIiwiX2RlYzMiLCJyZXF1aXJlZCIsIl9kZWM0IiwiX2RlYzUiLCJfZGVjNiIsIl9kZWM3IiwiZXZlbnQiLCJfY2xhc3MiLCJfY2xhc3MyIiwiX0J1aWxkaW5nQmxvY2siLCJwcm9wZXJ0aWVzIiwib3RoZXJzIiwiX3RoaXMiLCJjYWxsIiwiX2luaXRpYWxpemVyRGVmaW5lUHJvcGVydHkiLCJfZGVzY3JpcHRvciIsIl9kZXNjcmlwdG9yMiIsIl9kZXNjcmlwdG9yMyIsIl9kZXNjcmlwdG9yNCIsIl9kZXNjcmlwdG9yNSIsIl9kZXNjcmlwdG9yNiIsInVwZGF0ZUNvbnRlbnQiLCJfZXhwb3J0cyIsIl9pbmhlcml0c0xvb3NlIiwiX3Byb3RvIiwicHJvdG90eXBlIiwic2V0U2VtYW50aWNPYmplY3QiLCJzZW1hbnRpY09iamVjdCIsInNlbWFudGljT2JqZWN0c0xpc3QiLCJhdmFpbGFibGVTZW1hbnRpY09iamVjdHNUb1VzZXIiLCJnZXRNb2RlbCIsImdldE9iamVjdCIsInN0YXJ0c1dpdGgiLCJKU09OIiwicGFyc2UiLCJzZXRTaG93QXNMaW5rIiwiU2VtYW50aWNPYmplY3RIZWxwZXIiLCJnZXRSZWFjaGFibGVTZW1hbnRpY09iamVjdHNTZXR0aW5ncyIsInNlbWFudGljT2JqZWN0c0V4cHJlc3Npb25MaXN0IiwicXVhbGlmaWVyTWFwIiwiaGFzUmVhY2hhYmxlU3RhdGljU2VtYW50aWNPYmplY3QiLCJzaG93QXNMaW5rIiwic2V0UHJvcGVydHkiLCJzZXRUZXh0IiwidGV4dCIsImNvbnRlbnQiLCJjcmVhdGVDb250ZW50IiwiX2pzeCIsIkxpbmsiLCJ3cmFwcGluZyIsImVtcHR5SW5kaWNhdG9yTW9kZSIsInByZXNzIiwicHJlc3NFdmVudCIsImZpcmVFdmVudCIsImFjY2Vzc2libGVSb2xlIiwiTGlua0FjY2Vzc2libGVSb2xlIiwiQnV0dG9uIiwiVGV4dCIsImRlc3Ryb3kiLCJCdWlsZGluZ0Jsb2NrIiwiX2FwcGx5RGVjb3JhdGVkRGVzY3JpcHRvciIsImNvbmZpZ3VyYWJsZSIsImVudW1lcmFibGUiLCJ3cml0YWJsZSIsImluaXRpYWxpemVyIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJUZXh0TGluay50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQcm9wZXJ0aWVzT2YgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgeyBkZWZpbmVVSTVDbGFzcywgZXZlbnQsIHByb3BlcnR5IH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IEJ1aWxkaW5nQmxvY2sgZnJvbSBcInNhcC9mZS9jb3JlL2J1aWxkaW5nQmxvY2tzL0J1aWxkaW5nQmxvY2tcIjtcbmltcG9ydCAqIGFzIFNlbWFudGljT2JqZWN0SGVscGVyIGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL1NlbWFudGljT2JqZWN0SGVscGVyXCI7XG5pbXBvcnQgTGluaywgeyB0eXBlIExpbmskUHJlc3NFdmVudCB9IGZyb20gXCJzYXAvbS9MaW5rXCI7XG5pbXBvcnQgVGV4dCBmcm9tIFwic2FwL20vVGV4dFwiO1xuaW1wb3J0IHsgTGlua0FjY2Vzc2libGVSb2xlIH0gZnJvbSBcInNhcC9tL2xpYnJhcnlcIjtcbmltcG9ydCB0eXBlIHsgJENvbnRyb2xTZXR0aW5ncyB9IGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5cbkBkZWZpbmVVSTVDbGFzcyhcInNhcC5mZS5tYWNyb3MuY29udHJvbHMuVGV4dExpbmtcIilcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFRleHRMaW5rIGV4dGVuZHMgQnVpbGRpbmdCbG9jazxUZXh0IHwgTGluaz4ge1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuXHRzaG93QXNMaW5rPzogYm9vbGVhbjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiLCByZXF1aXJlZDogZmFsc2UgfSlcblx0c2VtYW50aWNPYmplY3QhOiBzdHJpbmc7XG5cblx0QHByb3BlcnR5KHsgdHlwZTogXCJib29sZWFuXCIsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcblx0d3JhcHBpbmchOiBib29sZWFuO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIsIHJlcXVpcmVkOiBmYWxzZSB9KVxuXHR0ZXh0ITogc3RyaW5nO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIsIHJlcXVpcmVkOiBmYWxzZSB9KVxuXHRlbXB0eUluZGljYXRvck1vZGUhOiBzdHJpbmc7XG5cblx0QGV2ZW50KClcblx0cHJlc3M/OiAoZXZlbnQ6IExpbmskUHJlc3NFdmVudCkgPT4gdm9pZDtcblxuXHRjb25zdHJ1Y3Rvcihwcm9wZXJ0aWVzOiAkQ29udHJvbFNldHRpbmdzICYgUHJvcGVydGllc09mPFRleHRMaW5rPiwgb3RoZXJzPzogJENvbnRyb2xTZXR0aW5ncykge1xuXHRcdHN1cGVyKHByb3BlcnRpZXMsIG90aGVycyk7XG5cblx0XHR0aGlzLnVwZGF0ZUNvbnRlbnQoKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBTZXR0ZXIgZm9yIHRoZSBzZW1hbnRpY09iamVjdCBwcm9wZXJ0eS5cblx0ICogQHBhcmFtIHNlbWFudGljT2JqZWN0XG5cdCAqL1xuXHRzZXRTZW1hbnRpY09iamVjdChzZW1hbnRpY09iamVjdDogc3RyaW5nIHwgdW5kZWZpbmVkKTogdm9pZCB7XG5cdFx0aWYgKHNlbWFudGljT2JqZWN0KSB7XG5cdFx0XHRsZXQgc2VtYW50aWNPYmplY3RzTGlzdDogc3RyaW5nW10gPSBbXTtcblx0XHRcdHRoaXMuc2VtYW50aWNPYmplY3QgPSBzZW1hbnRpY09iamVjdDtcblx0XHRcdGNvbnN0IGF2YWlsYWJsZVNlbWFudGljT2JqZWN0c1RvVXNlcjogc3RyaW5nW10gPSB0aGlzLmdldE1vZGVsKFwiaW50ZXJuYWxcIik/LmdldE9iamVjdChcIi9zZW1hbnRpY09iamVjdHNcIikgPz8gW107XG5cdFx0XHRzZW1hbnRpY09iamVjdHNMaXN0ID0gc2VtYW50aWNPYmplY3Quc3RhcnRzV2l0aChcIltcIikgPyBKU09OLnBhcnNlKHNlbWFudGljT2JqZWN0KSA6IFtzZW1hbnRpY09iamVjdF07XG5cdFx0XHR0aGlzLnNldFNob3dBc0xpbmsoXG5cdFx0XHRcdFNlbWFudGljT2JqZWN0SGVscGVyLmdldFJlYWNoYWJsZVNlbWFudGljT2JqZWN0c1NldHRpbmdzKGF2YWlsYWJsZVNlbWFudGljT2JqZWN0c1RvVXNlciwge1xuXHRcdFx0XHRcdHNlbWFudGljT2JqZWN0c0xpc3Q6IHNlbWFudGljT2JqZWN0c0xpc3QsXG5cdFx0XHRcdFx0c2VtYW50aWNPYmplY3RzRXhwcmVzc2lvbkxpc3Q6IFtdLFxuXHRcdFx0XHRcdHF1YWxpZmllck1hcDoge31cblx0XHRcdFx0fSkuaGFzUmVhY2hhYmxlU3RhdGljU2VtYW50aWNPYmplY3Rcblx0XHRcdCk7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIFNldHRlciBmb3IgdGhlIHNob3dBc0xpbmsgcHJvcGVydHkuXG5cdCAqIEBwYXJhbSBzaG93QXNMaW5rXG5cdCAqL1xuXHRzZXRTaG93QXNMaW5rKHNob3dBc0xpbms6IGJvb2xlYW4pOiB2b2lkIHtcblx0XHRpZiAoc2hvd0FzTGluayAhPT0gdGhpcy5zaG93QXNMaW5rKSB7XG5cdFx0XHR0aGlzLnNldFByb3BlcnR5KFwic2hvd0FzTGlua1wiLCBzaG93QXNMaW5rKTtcblx0XHRcdHRoaXMudXBkYXRlQ29udGVudCgpO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBTZXR0ZXIgZm9yIHRoZSB0ZXh0IHByb3BlcnR5LlxuXHQgKiBAcGFyYW0gdGV4dFxuXHQgKi9cblx0c2V0VGV4dCh0ZXh0OiBzdHJpbmcpOiB2b2lkIHtcblx0XHQvLyBpbiBjYXNlIHRoZSB0ZXh0IGlzIHNldCBhZnRlciB0aGUgaW5uZXIgY29udHJvbCBjcmVhdGlvbiB3ZSBuZWVkIHRvIGZvcndhcmQgaXRcblx0XHR0aGlzLnNldFByb3BlcnR5KFwidGV4dFwiLCB0ZXh0KTtcblx0XHR0aGlzLmNvbnRlbnQ/LnNldFRleHQodGV4dCk7XG5cdH1cblxuXHRjcmVhdGVDb250ZW50KCk6IFRleHQgfCBMaW5rIHtcblx0XHRpZiAodGhpcy5zaG93QXNMaW5rID09PSB0cnVlKSB7XG5cdFx0XHRyZXR1cm4gKFxuXHRcdFx0XHQ8TGlua1xuXHRcdFx0XHRcdHRleHQ9e3RoaXMudGV4dH1cblx0XHRcdFx0XHR3cmFwcGluZz17dGhpcy53cmFwcGluZ31cblx0XHRcdFx0XHRlbXB0eUluZGljYXRvck1vZGU9e3RoaXMuZW1wdHlJbmRpY2F0b3JNb2RlfVxuXHRcdFx0XHRcdHByZXNzPXsocHJlc3NFdmVudCk6IHZvaWQgPT4ge1xuXHRcdFx0XHRcdFx0dGhpcy5maXJlRXZlbnQoXCJwcmVzc1wiLCBwcmVzc0V2ZW50KTtcblx0XHRcdFx0XHR9fVxuXHRcdFx0XHRcdGFjY2Vzc2libGVSb2xlPXtMaW5rQWNjZXNzaWJsZVJvbGUuQnV0dG9ufVxuXHRcdFx0XHQvPlxuXHRcdFx0KTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmV0dXJuIDxUZXh0IHRleHQ9e3RoaXMudGV4dH0gd3JhcHBpbmc9e3RoaXMud3JhcHBpbmd9IGVtcHR5SW5kaWNhdG9yTW9kZT17dGhpcy5lbXB0eUluZGljYXRvck1vZGV9IC8+O1xuXHRcdH1cblx0fVxuXG5cdHVwZGF0ZUNvbnRlbnQoKTogdm9pZCB7XG5cdFx0aWYgKHRoaXMuY29udGVudCkge1xuXHRcdFx0dGhpcy5jb250ZW50LmRlc3Ryb3koKTtcblx0XHR9XG5cdFx0dGhpcy5jb250ZW50ID0gdGhpcy5jcmVhdGVDb250ZW50KCk7XG5cdH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BVXFCQSxRQUFRLElBQUFDLElBQUEsR0FENUJDLGNBQWMsQ0FBQyxpQ0FBaUMsQ0FBQyxFQUFB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
|
|
163
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUZXh0TGluayIsIl9kZWMiLCJkZWZpbmVVSTVDbGFzcyIsIl9kZWMyIiwicHJvcGVydHkiLCJ0eXBlIiwiZGVmYXVsdFZhbHVlIiwiX2RlYzMiLCJyZXF1aXJlZCIsIl9kZWM0IiwiX2RlYzUiLCJfZGVjNiIsIl9kZWM3IiwiZXZlbnQiLCJfY2xhc3MiLCJfY2xhc3MyIiwiX0J1aWxkaW5nQmxvY2siLCJwcm9wZXJ0aWVzIiwib3RoZXJzIiwiX3RoaXMiLCJjYWxsIiwiX2luaXRpYWxpemVyRGVmaW5lUHJvcGVydHkiLCJfZGVzY3JpcHRvciIsIl9kZXNjcmlwdG9yMiIsIl9kZXNjcmlwdG9yMyIsIl9kZXNjcmlwdG9yNCIsIl9kZXNjcmlwdG9yNSIsIl9kZXNjcmlwdG9yNiIsInVwZGF0ZUNvbnRlbnQiLCJfZXhwb3J0cyIsIl9pbmhlcml0c0xvb3NlIiwiX3Byb3RvIiwicHJvdG90eXBlIiwic2V0U2VtYW50aWNPYmplY3QiLCJzZW1hbnRpY09iamVjdCIsInNlbWFudGljT2JqZWN0c0xpc3QiLCJhdmFpbGFibGVTZW1hbnRpY09iamVjdHNUb1VzZXIiLCJnZXRNb2RlbCIsImdldE9iamVjdCIsInN0YXJ0c1dpdGgiLCJKU09OIiwicGFyc2UiLCJzZXRTaG93QXNMaW5rIiwiU2VtYW50aWNPYmplY3RIZWxwZXIiLCJnZXRSZWFjaGFibGVTZW1hbnRpY09iamVjdHNTZXR0aW5ncyIsInNlbWFudGljT2JqZWN0c0V4cHJlc3Npb25MaXN0IiwicXVhbGlmaWVyTWFwIiwiaGFzUmVhY2hhYmxlU3RhdGljU2VtYW50aWNPYmplY3QiLCJzaG93QXNMaW5rIiwic2V0UHJvcGVydHkiLCJfc2V0QXJpYUxhYmVsbGVkQnkiLCJjb250ZW50IiwiYWRkQXJpYUxhYmVsbGVkQnkiLCJhcmlhTGFiZWxsZWRCeSIsImlkIiwiYXJpYUxhYmVsbGVkQnlzIiwiZ2V0QXJpYUxhYmVsbGVkQnkiLCJpbmNsdWRlcyIsIm9uQmVmb3JlUmVuZGVyaW5nIiwic2V0VGV4dCIsInRleHQiLCJjcmVhdGVDb250ZW50IiwiX2pzeCIsIkxpbmsiLCJ3cmFwcGluZyIsImVtcHR5SW5kaWNhdG9yTW9kZSIsInByZXNzIiwicHJlc3NFdmVudCIsImZpcmVFdmVudCIsImFjY2Vzc2libGVSb2xlIiwiTGlua0FjY2Vzc2libGVSb2xlIiwiQnV0dG9uIiwiVGV4dCIsImRlc3Ryb3kiLCJCdWlsZGluZ0Jsb2NrIiwiX2FwcGx5RGVjb3JhdGVkRGVzY3JpcHRvciIsImNvbmZpZ3VyYWJsZSIsImVudW1lcmFibGUiLCJ3cml0YWJsZSIsImluaXRpYWxpemVyIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJUZXh0TGluay50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQcm9wZXJ0aWVzT2YgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgeyBkZWZpbmVVSTVDbGFzcywgZXZlbnQsIHByb3BlcnR5IH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IEJ1aWxkaW5nQmxvY2sgZnJvbSBcInNhcC9mZS9jb3JlL2J1aWxkaW5nQmxvY2tzL0J1aWxkaW5nQmxvY2tcIjtcbmltcG9ydCAqIGFzIFNlbWFudGljT2JqZWN0SGVscGVyIGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL1NlbWFudGljT2JqZWN0SGVscGVyXCI7XG5pbXBvcnQgTGluaywgeyB0eXBlIExpbmskUHJlc3NFdmVudCB9IGZyb20gXCJzYXAvbS9MaW5rXCI7XG5pbXBvcnQgVGV4dCBmcm9tIFwic2FwL20vVGV4dFwiO1xuaW1wb3J0IHsgTGlua0FjY2Vzc2libGVSb2xlIH0gZnJvbSBcInNhcC9tL2xpYnJhcnlcIjtcbmltcG9ydCB0eXBlIENvbnRyb2wgZnJvbSBcInNhcC91aS9jb3JlL0NvbnRyb2xcIjtcbmltcG9ydCB0eXBlIHsgJENvbnRyb2xTZXR0aW5ncyB9IGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5cbnR5cGUgQ29udHJvbFdpdGhBY2Nlc3NpYmlsaXR5ID0gQ29udHJvbCAmIHsgYWRkQXJpYUxhYmVsbGVkQnk/OiAoaWQ6IHN0cmluZykgPT4gdm9pZDsgZ2V0QXJpYUxhYmVsbGVkQnk6ICgpID0+IHN0cmluZ1tdIH07XG5cbkBkZWZpbmVVSTVDbGFzcyhcInNhcC5mZS5tYWNyb3MuY29udHJvbHMuVGV4dExpbmtcIilcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFRleHRMaW5rIGV4dGVuZHMgQnVpbGRpbmdCbG9jazxUZXh0IHwgTGluaz4ge1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuXHRzaG93QXNMaW5rPzogYm9vbGVhbjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiLCByZXF1aXJlZDogZmFsc2UgfSlcblx0c2VtYW50aWNPYmplY3QhOiBzdHJpbmc7XG5cblx0QHByb3BlcnR5KHsgdHlwZTogXCJib29sZWFuXCIsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcblx0d3JhcHBpbmchOiBib29sZWFuO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIsIHJlcXVpcmVkOiBmYWxzZSB9KVxuXHR0ZXh0ITogc3RyaW5nO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIsIHJlcXVpcmVkOiBmYWxzZSB9KVxuXHRlbXB0eUluZGljYXRvck1vZGUhOiBzdHJpbmc7XG5cblx0QGV2ZW50KClcblx0cHJlc3M/OiAoZXZlbnQ6IExpbmskUHJlc3NFdmVudCkgPT4gdm9pZDtcblxuXHRjb25zdHJ1Y3Rvcihwcm9wZXJ0aWVzOiAkQ29udHJvbFNldHRpbmdzICYgUHJvcGVydGllc09mPFRleHRMaW5rPiwgb3RoZXJzPzogJENvbnRyb2xTZXR0aW5ncykge1xuXHRcdHN1cGVyKHByb3BlcnRpZXMsIG90aGVycyk7XG5cblx0XHR0aGlzLnVwZGF0ZUNvbnRlbnQoKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBTZXR0ZXIgZm9yIHRoZSBzZW1hbnRpY09iamVjdCBwcm9wZXJ0eS5cblx0ICogQHBhcmFtIHNlbWFudGljT2JqZWN0XG5cdCAqL1xuXHRzZXRTZW1hbnRpY09iamVjdChzZW1hbnRpY09iamVjdDogc3RyaW5nIHwgdW5kZWZpbmVkKTogdm9pZCB7XG5cdFx0aWYgKHNlbWFudGljT2JqZWN0KSB7XG5cdFx0XHRsZXQgc2VtYW50aWNPYmplY3RzTGlzdDogc3RyaW5nW10gPSBbXTtcblx0XHRcdHRoaXMuc2VtYW50aWNPYmplY3QgPSBzZW1hbnRpY09iamVjdDtcblx0XHRcdGNvbnN0IGF2YWlsYWJsZVNlbWFudGljT2JqZWN0c1RvVXNlcjogc3RyaW5nW10gPSB0aGlzLmdldE1vZGVsKFwiaW50ZXJuYWxcIik/LmdldE9iamVjdChcIi9zZW1hbnRpY09iamVjdHNcIikgPz8gW107XG5cdFx0XHRzZW1hbnRpY09iamVjdHNMaXN0ID0gc2VtYW50aWNPYmplY3Quc3RhcnRzV2l0aChcIltcIikgPyBKU09OLnBhcnNlKHNlbWFudGljT2JqZWN0KSA6IFtzZW1hbnRpY09iamVjdF07XG5cdFx0XHR0aGlzLnNldFNob3dBc0xpbmsoXG5cdFx0XHRcdFNlbWFudGljT2JqZWN0SGVscGVyLmdldFJlYWNoYWJsZVNlbWFudGljT2JqZWN0c1NldHRpbmdzKGF2YWlsYWJsZVNlbWFudGljT2JqZWN0c1RvVXNlciwge1xuXHRcdFx0XHRcdHNlbWFudGljT2JqZWN0c0xpc3Q6IHNlbWFudGljT2JqZWN0c0xpc3QsXG5cdFx0XHRcdFx0c2VtYW50aWNPYmplY3RzRXhwcmVzc2lvbkxpc3Q6IFtdLFxuXHRcdFx0XHRcdHF1YWxpZmllck1hcDoge31cblx0XHRcdFx0fSkuaGFzUmVhY2hhYmxlU3RhdGljU2VtYW50aWNPYmplY3Rcblx0XHRcdCk7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIFNldHRlciBmb3IgdGhlIHNob3dBc0xpbmsgcHJvcGVydHkuXG5cdCAqIEBwYXJhbSBzaG93QXNMaW5rXG5cdCAqL1xuXHRzZXRTaG93QXNMaW5rKHNob3dBc0xpbms6IGJvb2xlYW4pOiB2b2lkIHtcblx0XHRpZiAoc2hvd0FzTGluayAhPT0gdGhpcy5zaG93QXNMaW5rKSB7XG5cdFx0XHR0aGlzLnNldFByb3BlcnR5KFwic2hvd0FzTGlua1wiLCBzaG93QXNMaW5rKTtcblx0XHRcdHRoaXMudXBkYXRlQ29udGVudCgpO1xuXHRcdH1cblx0fVxuXG5cdF9zZXRBcmlhTGFiZWxsZWRCeShjb250ZW50PzogQ29udHJvbFdpdGhBY2Nlc3NpYmlsaXR5KTogdm9pZCB7XG5cdFx0aWYgKGNvbnRlbnQgJiYgY29udGVudC5hZGRBcmlhTGFiZWxsZWRCeSkge1xuXHRcdFx0Y29uc3QgYXJpYUxhYmVsbGVkQnkgPSB0aGlzLmFyaWFMYWJlbGxlZEJ5O1xuXHRcdFx0Zm9yIChjb25zdCBpZCBvZiBhcmlhTGFiZWxsZWRCeSkge1xuXHRcdFx0XHRjb25zdCBhcmlhTGFiZWxsZWRCeXMgPSBjb250ZW50LmdldEFyaWFMYWJlbGxlZEJ5KCkgfHwgW107XG5cdFx0XHRcdGlmICghYXJpYUxhYmVsbGVkQnlzLmluY2x1ZGVzKGlkKSkge1xuXHRcdFx0XHRcdGNvbnRlbnQuYWRkQXJpYUxhYmVsbGVkQnkoaWQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0b25CZWZvcmVSZW5kZXJpbmcoKTogdm9pZCB7XG5cdFx0dGhpcy5fc2V0QXJpYUxhYmVsbGVkQnkodGhpcy5jb250ZW50IGFzIHVua25vd24gYXMgQ29udHJvbFdpdGhBY2Nlc3NpYmlsaXR5KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBTZXR0ZXIgZm9yIHRoZSB0ZXh0IHByb3BlcnR5LlxuXHQgKiBAcGFyYW0gdGV4dFxuXHQgKi9cblx0c2V0VGV4dCh0ZXh0OiBzdHJpbmcpOiB2b2lkIHtcblx0XHQvLyBpbiBjYXNlIHRoZSB0ZXh0IGlzIHNldCBhZnRlciB0aGUgaW5uZXIgY29udHJvbCBjcmVhdGlvbiB3ZSBuZWVkIHRvIGZvcndhcmQgaXRcblx0XHR0aGlzLnNldFByb3BlcnR5KFwidGV4dFwiLCB0ZXh0KTtcblx0XHR0aGlzLmNvbnRlbnQ/LnNldFRleHQodGV4dCk7XG5cdH1cblxuXHRjcmVhdGVDb250ZW50KCk6IFRleHQgfCBMaW5rIHtcblx0XHRpZiAodGhpcy5zaG93QXNMaW5rID09PSB0cnVlKSB7XG5cdFx0XHRyZXR1cm4gKFxuXHRcdFx0XHQ8TGlua1xuXHRcdFx0XHRcdHRleHQ9e3RoaXMudGV4dH1cblx0XHRcdFx0XHR3cmFwcGluZz17dGhpcy53cmFwcGluZ31cblx0XHRcdFx0XHRlbXB0eUluZGljYXRvck1vZGU9e3RoaXMuZW1wdHlJbmRpY2F0b3JNb2RlfVxuXHRcdFx0XHRcdHByZXNzPXsocHJlc3NFdmVudCk6IHZvaWQgPT4ge1xuXHRcdFx0XHRcdFx0dGhpcy5maXJlRXZlbnQoXCJwcmVzc1wiLCBwcmVzc0V2ZW50KTtcblx0XHRcdFx0XHR9fVxuXHRcdFx0XHRcdGFjY2Vzc2libGVSb2xlPXtMaW5rQWNjZXNzaWJsZVJvbGUuQnV0dG9ufVxuXHRcdFx0XHQvPlxuXHRcdFx0KTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmV0dXJuIDxUZXh0IHRleHQ9e3RoaXMudGV4dH0gd3JhcHBpbmc9e3RoaXMud3JhcHBpbmd9IGVtcHR5SW5kaWNhdG9yTW9kZT17dGhpcy5lbXB0eUluZGljYXRvck1vZGV9IC8+O1xuXHRcdH1cblx0fVxuXG5cdHVwZGF0ZUNvbnRlbnQoKTogdm9pZCB7XG5cdFx0aWYgKHRoaXMuY29udGVudCkge1xuXHRcdFx0dGhpcy5jb250ZW50LmRlc3Ryb3koKTtcblx0XHR9XG5cdFx0dGhpcy5jb250ZW50ID0gdGhpcy5jcmVhdGVDb250ZW50KCk7XG5cdH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BYXFCQSxRQUFRLElBQUFDLElBQUEsR0FENUJDLGNBQWMsQ0FBQyxpQ0FBaUMsQ0FBQyxFQUFBQyxLQUFBLEdBRWhEQyxRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFLFNBQVM7SUFBRUMsWUFBWSxFQUFFO0VBQU0sQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FHbERILFFBQVEsQ0FBQztJQUFFQyxJQUFJLEVBQUUsUUFBUTtJQUFFRyxRQUFRLEVBQUU7RUFBTSxDQUFDLENBQUMsRUFBQUMsS0FBQSxHQUc3Q0wsUUFBUSxDQUFDO0lBQUVDLElBQUksRUFBRSxTQUFTO0lBQUVDLFlBQVksRUFBRTtFQUFNLENBQUMsQ0FBQyxFQUFBSSxLQUFBLEdBR2xETixRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFLFFBQVE7SUFBRUcsUUFBUSxFQUFFO0VBQU0sQ0FBQyxDQUFDLEVBQUFHLEtBQUEsR0FHN0NQLFFBQVEsQ0FBQztJQUFFQyxJQUFJLEVBQUUsUUFBUTtJQUFFRyxRQUFRLEVBQUU7RUFBTSxDQUFDLENBQUMsRUFBQUksS0FBQSxHQUc3Q0MsS0FBSyxDQUFDLENBQUMsRUFBQVosSUFBQSxDQUFBYSxNQUFBLElBQUFDLE9BQUEsMEJBQUFDLGNBQUE7SUFHUixTQUFBaEIsU0FBWWlCLFVBQXFELEVBQUVDLE1BQXlCLEVBQUU7TUFBQSxJQUFBQyxLQUFBO01BQzdGQSxLQUFBLEdBQUFILGNBQUEsQ0FBQUksSUFBQSxPQUFNSCxVQUFVLEVBQUVDLE1BQU0sQ0FBQztNQUFDRywwQkFBQSxDQUFBRixLQUFBLGdCQUFBRyxXQUFBLEVBQUFILEtBQUE7TUFBQUUsMEJBQUEsQ0FBQUYsS0FBQSxvQkFBQUksWUFBQSxFQUFBSixLQUFBO01BQUFFLDBCQUFBLENBQUFGLEtBQUEsY0FBQUssWUFBQSxFQUFBTCxLQUFBO01BQUFFLDBCQUFBLENBQUFGLEtBQUEsVUFBQU0sWUFBQSxFQUFBTixLQUFBO01BQUFFLDBCQUFBLENBQUFGLEtBQUEsd0JBQUFPLFlBQUEsRUFBQVAsS0FBQTtNQUFBRSwwQkFBQSxDQUFBRixLQUFBLFdBQUFRLFlBQUEsRUFBQVIsS0FBQTtNQUUxQkEsS0FBQSxDQUFLUyxhQUFhLENBQUMsQ0FBQztNQUFDLE9BQUFULEtBQUE7SUFDdEI7O0lBRUE7QUFDRDtBQUNBO0FBQ0E7SUFIQ1UsUUFBQSxHQUFBN0IsUUFBQTtJQUFBOEIsY0FBQSxDQUFBOUIsUUFBQSxFQUFBZ0IsY0FBQTtJQUFBLElBQUFlLE1BQUEsR0FBQS9CLFFBQUEsQ0FBQWdDLFNBQUE7SUFBQUQsTUFBQSxDQUlBRSxpQkFBaUIsR0FBakIsU0FBQUEsaUJBQWlCQSxDQUFDQyxjQUFrQyxFQUFRO01BQzNELElBQUlBLGNBQWMsRUFBRTtRQUNuQixJQUFJQyxtQkFBNkIsR0FBRyxFQUFFO1FBQ3RDLElBQUksQ0FBQ0QsY0FBYyxHQUFHQSxjQUFjO1FBQ3BDLE1BQU1FLDhCQUF3QyxHQUFHLElBQUksQ0FBQ0MsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFQyxTQUFTLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFO1FBQy9HSCxtQkFBbUIsR0FBR0QsY0FBYyxDQUFDSyxVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUdDLElBQUksQ0FBQ0MsS0FBSyxDQUFDUCxjQUFjLENBQUMsR0FBRyxDQUFDQSxjQUFjLENBQUM7UUFDcEcsSUFBSSxDQUFDUSxhQUFhLENBQ2pCQyxvQkFBb0IsQ0FBQ0MsbUNBQW1DLENBQUNSLDhCQUE4QixFQUFFO1VBQ3hGRCxtQkFBbUIsRUFBRUEsbUJBQW1CO1VBQ3hDVSw2QkFBNkIsRUFBRSxFQUFFO1VBQ2pDQyxZQUFZLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQ0MsZ0NBQ0osQ0FBQztNQUNGO0lBQ0Q7O0lBRUE7QUFDRDtBQUNBO0FBQ0EsT0FIQztJQUFBaEIsTUFBQSxDQUlBVyxhQUFhLEdBQWIsU0FBQUEsYUFBYUEsQ0FBQ00sVUFBbUIsRUFBUTtNQUN4QyxJQUFJQSxVQUFVLEtBQUssSUFBSSxDQUFDQSxVQUFVLEVBQUU7UUFDbkMsSUFBSSxDQUFDQyxXQUFXLENBQUMsWUFBWSxFQUFFRCxVQUFVLENBQUM7UUFDMUMsSUFBSSxDQUFDcEIsYUFBYSxDQUFDLENBQUM7TUFDckI7SUFDRCxDQUFDO0lBQUFHLE1BQUEsQ0FFRG1CLGtCQUFrQixHQUFsQixTQUFBQSxrQkFBa0JBLENBQUNDLE9BQWtDLEVBQVE7TUFDNUQsSUFBSUEsT0FBTyxJQUFJQSxPQUFPLENBQUNDLGlCQUFpQixFQUFFO1FBQ3pDLE1BQU1DLGNBQWMsR0FBRyxJQUFJLENBQUNBLGNBQWM7UUFDMUMsS0FBSyxNQUFNQyxFQUFFLElBQUlELGNBQWMsRUFBRTtVQUNoQyxNQUFNRSxlQUFlLEdBQUdKLE9BQU8sQ0FBQ0ssaUJBQWlCLENBQUMsQ0FBQyxJQUFJLEVBQUU7VUFDekQsSUFBSSxDQUFDRCxlQUFlLENBQUNFLFFBQVEsQ0FBQ0gsRUFBRSxDQUFDLEVBQUU7WUFDbENILE9BQU8sQ0FBQ0MsaUJBQWlCLENBQUNFLEVBQUUsQ0FBQztVQUM5QjtRQUNEO01BQ0Q7SUFDRCxDQUFDO0lBQUF2QixNQUFBLENBRUQyQixpQkFBaUIsR0FBakIsU0FBQUEsaUJBQWlCQSxDQUFBLEVBQVM7TUFDekIsSUFBSSxDQUFDUixrQkFBa0IsQ0FBQyxJQUFJLENBQUNDLE9BQThDLENBQUM7SUFDN0U7O0lBRUE7QUFDRDtBQUNBO0FBQ0EsT0FIQztJQUFBcEIsTUFBQSxDQUlBNEIsT0FBTyxHQUFQLFNBQUFBLE9BQU9BLENBQUNDLElBQVksRUFBUTtNQUMzQjtNQUNBLElBQUksQ0FBQ1gsV0FBVyxDQUFDLE1BQU0sRUFBRVcsSUFBSSxDQUFDO01BQzlCLElBQUksQ0FBQ1QsT0FBTyxFQUFFUSxPQUFPLENBQUNDLElBQUksQ0FBQztJQUM1QixDQUFDO0lBQUE3QixNQUFBLENBRUQ4QixhQUFhLEdBQWIsU0FBQUEsYUFBYUEsQ0FBQSxFQUFnQjtNQUM1QixJQUFJLElBQUksQ0FBQ2IsVUFBVSxLQUFLLElBQUksRUFBRTtRQUM3QixPQUNDYyxJQUFBLENBQUNDLElBQUk7VUFDSkgsSUFBSSxFQUFFLElBQUksQ0FBQ0EsSUFBSztVQUNoQkksUUFBUSxFQUFFLElBQUksQ0FBQ0EsUUFBUztVQUN4QkMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDQSxrQkFBbUI7VUFDNUNDLEtBQUssRUFBR0MsVUFBVSxJQUFXO1lBQzVCLElBQUksQ0FBQ0MsU0FBUyxDQUFDLE9BQU8sRUFBRUQsVUFBVSxDQUFDO1VBQ3BDLENBQUU7VUFDRkUsY0FBYyxFQUFFQyxrQkFBa0IsQ0FBQ0M7UUFBTyxDQUMxQyxDQUFDO01BRUosQ0FBQyxNQUFNO1FBQ04sT0FBT1QsSUFBQSxDQUFDVSxJQUFJO1VBQUNaLElBQUksRUFBRSxJQUFJLENBQUNBLElBQUs7VUFBQ0ksUUFBUSxFQUFFLElBQUksQ0FBQ0EsUUFBUztVQUFDQyxrQkFBa0IsRUFBRSxJQUFJLENBQUNBO1FBQW1CLENBQUUsQ0FBQztNQUN2RztJQUNELENBQUM7SUFBQWxDLE1BQUEsQ0FFREgsYUFBYSxHQUFiLFNBQUFBLGFBQWFBLENBQUEsRUFBUztNQUNyQixJQUFJLElBQUksQ0FBQ3VCLE9BQU8sRUFBRTtRQUNqQixJQUFJLENBQUNBLE9BQU8sQ0FBQ3NCLE9BQU8sQ0FBQyxDQUFDO01BQ3ZCO01BQ0EsSUFBSSxDQUFDdEIsT0FBTyxHQUFHLElBQUksQ0FBQ1UsYUFBYSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUFBLE9BQUE3RCxRQUFBO0VBQUEsRUF6R29DMEUsYUFBYSxHQUFBcEQsV0FBQSxHQUFBcUQseUJBQUEsQ0FBQTVELE9BQUEsQ0FBQWlCLFNBQUEsaUJBQUE3QixLQUFBO0lBQUF5RSxZQUFBO0lBQUFDLFVBQUE7SUFBQUMsUUFBQTtJQUFBQyxXQUFBO0VBQUEsSUFBQXhELFlBQUEsR0FBQW9ELHlCQUFBLENBQUE1RCxPQUFBLENBQUFpQixTQUFBLHFCQUFBekIsS0FBQTtJQUFBcUUsWUFBQTtJQUFBQyxVQUFBO0lBQUFDLFFBQUE7SUFBQUMsV0FBQTtFQUFBLElBQUF2RCxZQUFBLEdBQUFtRCx5QkFBQSxDQUFBNUQsT0FBQSxDQUFBaUIsU0FBQSxlQUFBdkIsS0FBQTtJQUFBbUUsWUFBQTtJQUFBQyxVQUFBO0lBQUFDLFFBQUE7SUFBQUMsV0FBQTtFQUFBLElBQUF0RCxZQUFBLEdBQUFrRCx5QkFBQSxDQUFBNUQsT0FBQSxDQUFBaUIsU0FBQSxXQUFBdEIsS0FBQTtJQUFBa0UsWUFBQTtJQUFBQyxVQUFBO0lBQUFDLFFBQUE7SUFBQUMsV0FBQTtFQUFBLElBQUFyRCxZQUFBLEdBQUFpRCx5QkFBQSxDQUFBNUQsT0FBQSxDQUFBaUIsU0FBQSx5QkFBQXJCLEtBQUE7SUFBQWlFLFlBQUE7SUFBQUMsVUFBQTtJQUFBQyxRQUFBO0lBQUFDLFdBQUE7RUFBQSxJQUFBcEQsWUFBQSxHQUFBZ0QseUJBQUEsQ0FBQTVELE9BQUEsQ0FBQWlCLFNBQUEsWUFBQXBCLEtBQUE7SUFBQWdFLFlBQUE7SUFBQUMsVUFBQTtJQUFBQyxRQUFBO0lBQUFDLFdBQUE7RUFBQSxJQUFBaEUsT0FBQSxNQUFBRCxNQUFBO0VBQUFlLFFBQUEsR0FBQTdCLFFBQUE7RUFBQSxPQUFBNkIsUUFBQTtBQUFBIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -5,8 +5,11 @@ import * as SemanticObjectHelper from "sap/fe/core/templating/SemanticObjectHelp
|
|
|
5
5
|
import Link, { type Link$PressEvent } from "sap/m/Link";
|
|
6
6
|
import Text from "sap/m/Text";
|
|
7
7
|
import { LinkAccessibleRole } from "sap/m/library";
|
|
8
|
+
import type Control from "sap/ui/core/Control";
|
|
8
9
|
import type { $ControlSettings } from "sap/ui/core/Control";
|
|
9
10
|
|
|
11
|
+
type ControlWithAccessibility = Control & { addAriaLabelledBy?: (id: string) => void; getAriaLabelledBy: () => string[] };
|
|
12
|
+
|
|
10
13
|
@defineUI5Class("sap.fe.macros.controls.TextLink")
|
|
11
14
|
export default class TextLink extends BuildingBlock<Text | Link> {
|
|
12
15
|
@property({ type: "boolean", defaultValue: false })
|
|
@@ -64,6 +67,22 @@ export default class TextLink extends BuildingBlock<Text | Link> {
|
|
|
64
67
|
}
|
|
65
68
|
}
|
|
66
69
|
|
|
70
|
+
_setAriaLabelledBy(content?: ControlWithAccessibility): void {
|
|
71
|
+
if (content && content.addAriaLabelledBy) {
|
|
72
|
+
const ariaLabelledBy = this.ariaLabelledBy;
|
|
73
|
+
for (const id of ariaLabelledBy) {
|
|
74
|
+
const ariaLabelledBys = content.getAriaLabelledBy() || [];
|
|
75
|
+
if (!ariaLabelledBys.includes(id)) {
|
|
76
|
+
content.addAriaLabelledBy(id);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
onBeforeRendering(): void {
|
|
83
|
+
this._setAriaLabelledBy(this.content as unknown as ControlWithAccessibility);
|
|
84
|
+
}
|
|
85
|
+
|
|
67
86
|
/**
|
|
68
87
|
* Setter for the text property.
|
|
69
88
|
* @param text
|