@sapui5/sap.fe.macros 1.141.2 → 1.143.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/sap/fe/macros/.library +1 -1
- package/src/sap/fe/macros/Breadcrumbs.js +4 -10
- package/src/sap/fe/macros/Breadcrumbs.tsx +2 -8
- package/src/sap/fe/macros/Chart.js +34 -23
- package/src/sap/fe/macros/Chart.tsx +25 -11
- package/src/sap/fe/macros/CollaborativeDraftHandler.js +47 -36
- package/src/sap/fe/macros/CollaborativeDraftHandler.tsx +50 -31
- package/src/sap/fe/macros/CollectionBindingInfo.js +8 -2
- package/src/sap/fe/macros/CollectionBindingInfo.ts +11 -6
- package/src/sap/fe/macros/CommonHelper.js +14 -24
- package/src/sap/fe/macros/CommonHelper.ts +18 -25
- package/src/sap/fe/macros/ConditionalSwitch.js +1 -2
- package/src/sap/fe/macros/ConditionalSwitch.tsx +0 -1
- package/src/sap/fe/macros/ConditionalSwitchProperty.js +1 -3
- package/src/sap/fe/macros/ConditionalSwitchProperty.tsx +0 -2
- package/src/sap/fe/macros/Field.js +34 -17
- package/src/sap/fe/macros/Field.ts +64 -32
- package/src/sap/fe/macros/FooterContent.js +7 -3
- package/src/sap/fe/macros/FooterContent.tsx +8 -13
- package/src/sap/fe/macros/KPITag.js +6 -6
- package/src/sap/fe/macros/KPITag.tsx +8 -6
- package/src/sap/fe/macros/MacroAPI.js +4 -3
- package/src/sap/fe/macros/MacroAPI.ts +3 -3
- package/src/sap/fe/macros/MessageButton.js +4 -3
- package/src/sap/fe/macros/MessageButton.tsx +7 -3
- package/src/sap/fe/macros/MicroChart.js +12 -7
- package/src/sap/fe/macros/MicroChart.tsx +9 -3
- package/src/sap/fe/macros/MultiValueField.js +22 -36
- package/src/sap/fe/macros/MultiValueField.tsx +34 -66
- package/src/sap/fe/macros/RichTextEditor.js +3 -4
- package/src/sap/fe/macros/RichTextEditor.tsx +2 -3
- package/src/sap/fe/macros/Share.js +7 -7
- package/src/sap/fe/macros/Share.tsx +9 -6
- package/src/sap/fe/macros/Status.js +39 -11
- package/src/sap/fe/macros/Status.tsx +25 -5
- package/src/sap/fe/macros/ValueHelp.js +5 -2
- package/src/sap/fe/macros/ValueHelp.tsx +5 -0
- 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/EasyFilterBar.js +7 -34
- package/src/sap/fe/macros/ai/EasyFilterBar.tsx +6 -35
- package/src/sap/fe/macros/ai/EasyFilterDataFetcher.js +31 -7
- package/src/sap/fe/macros/ai/EasyFilterDataFetcher.ts +33 -6
- 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 +25 -2
- package/src/sap/fe/macros/chart/Action.ts +13 -0
- package/src/sap/fe/macros/chart/ActionGroup.js +25 -2
- package/src/sap/fe/macros/chart/ActionGroup.ts +13 -0
- package/src/sap/fe/macros/chart/ChartDelegate.js +29 -8
- package/src/sap/fe/macros/chart/ChartDelegate.ts +46 -14
- package/src/sap/fe/macros/chart/MdcChartTemplate.js +58 -12
- package/src/sap/fe/macros/chart/MdcChartTemplate.tsx +75 -13
- package/src/sap/fe/macros/chart/OverflowGroup.js +62 -0
- package/src/sap/fe/macros/chart/OverflowGroup.ts +22 -0
- package/src/sap/fe/macros/controls/BuildingBlockObjectProperty.js +7 -7
- package/src/sap/fe/macros/controls/BuildingBlockObjectProperty.ts +3 -2
- package/src/sap/fe/macros/controls/FileWrapper.js +11 -5
- package/src/sap/fe/macros/controls/FileWrapper.ts +10 -4
- 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/NumberWithUnitOrCurrency.js +3 -1
- package/src/sap/fe/macros/controls/NumberWithUnitOrCurrency.tsx +2 -0
- package/src/sap/fe/macros/controls/RadioButtons.js +18 -5
- package/src/sap/fe/macros/controls/RadioButtons.tsx +10 -1
- package/src/sap/fe/macros/coreUI/CreateDialog.js +3 -3
- package/src/sap/fe/macros/coreUI/CreateDialog.tsx +2 -2
- package/src/sap/fe/macros/coreUI/OperationParameterDialog.js +40 -12
- package/src/sap/fe/macros/coreUI/OperationParameterDialog.tsx +48 -9
- package/src/sap/fe/macros/draftIndicator/DraftIndicator.js +4 -2
- package/src/sap/fe/macros/draftIndicator/DraftIndicator.tsx +3 -1
- package/src/sap/fe/macros/field/FieldFormatOptions.js +4 -4
- package/src/sap/fe/macros/field/FieldFormatOptions.ts +2 -2
- package/src/sap/fe/macros/field/FieldHelper.js +4 -3
- package/src/sap/fe/macros/field/FieldHelper.ts +7 -1
- package/src/sap/fe/macros/field/FieldRuntime.js +44 -9
- package/src/sap/fe/macros/field/FieldRuntime.ts +72 -8
- package/src/sap/fe/macros/field/FieldRuntimeHelper.js +3 -34
- package/src/sap/fe/macros/field/FieldRuntimeHelper.ts +28 -53
- package/src/sap/fe/macros/field/FieldTemplating.js +5 -4
- package/src/sap/fe/macros/field/FieldTemplating.ts +6 -4
- package/src/sap/fe/macros/filter/FilterFieldHelper.js +6 -4
- package/src/sap/fe/macros/filter/FilterFieldHelper.ts +7 -2
- package/src/sap/fe/macros/filter/FilterUtils.js +130 -40
- package/src/sap/fe/macros/filter/FilterUtils.ts +167 -45
- package/src/sap/fe/macros/filterBar/ExtendedSemanticDateOperators.js +2 -2
- package/src/sap/fe/macros/filterBar/ExtendedSemanticDateOperators.ts +1 -1
- package/src/sap/fe/macros/filterBar/FilterBar.block.js +4 -3
- package/src/sap/fe/macros/filterBar/FilterBar.block.tsx +19 -8
- package/src/sap/fe/macros/filterBar/FilterBarAPI.js +15 -9
- package/src/sap/fe/macros/filterBar/FilterBarAPI.ts +36 -17
- package/src/sap/fe/macros/filterBar/FilterBarDelegate.js +21 -10
- package/src/sap/fe/macros/filterBar/FilterBarDelegate.ts +81 -63
- package/src/sap/fe/macros/filterBar/UOMValidationDelegate.js +376 -0
- package/src/sap/fe/macros/filterBar/UOMValidationDelegate.ts +463 -0
- 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 +27 -2
- package/src/sap/fe/macros/form/Form.block.ts +31 -11
- package/src/sap/fe/macros/form/FormActionButtons.fragment.xml +13 -3
- package/src/sap/fe/macros/form/FormContainer.block.js +110 -63
- package/src/sap/fe/macros/form/FormContainer.block.ts +121 -64
- package/src/sap/fe/macros/formatters/TableFormatter.js +13 -10
- package/src/sap/fe/macros/formatters/TableFormatter.ts +11 -9
- package/src/sap/fe/macros/formatters/VisualFilterFormatter.js +6 -4
- package/src/sap/fe/macros/formatters/VisualFilterFormatter.ts +5 -5
- package/src/sap/fe/macros/inlineEdit/InlineEdit.js +5 -5
- package/src/sap/fe/macros/inlineEdit/InlineEdit.ts +4 -4
- package/src/sap/fe/macros/insights/InsightsService.js +3 -2
- package/src/sap/fe/macros/insights/InsightsService.ts +2 -1
- package/src/sap/fe/macros/internal/DataPoint.js +7 -8
- package/src/sap/fe/macros/internal/DataPoint.tsx +6 -9
- package/src/sap/fe/macros/internal/field/DisplayStyle.js +8 -6
- package/src/sap/fe/macros/internal/field/DisplayStyle.tsx +7 -8
- package/src/sap/fe/macros/internal/field/EditStyle.js +9 -20
- package/src/sap/fe/macros/internal/field/EditStyle.tsx +17 -41
- package/src/sap/fe/macros/internal/field/FieldBlockStructure.js +2 -2
- package/src/sap/fe/macros/internal/field/FieldBlockStructure.tsx +1 -1
- package/src/sap/fe/macros/internal/field/FieldStructure.js +1 -2
- package/src/sap/fe/macros/internal/field/FieldStructure.tsx +0 -2
- package/src/sap/fe/macros/internal/field/FieldStructureHelper.js +7 -7
- package/src/sap/fe/macros/internal/field/FieldStructureHelper.ts +17 -11
- 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/AdditionalValueFormatter.js +9 -6
- package/src/sap/fe/macros/internal/valuehelp/AdditionalValueFormatter.ts +7 -5
- package/src/sap/fe/macros/internal/valuehelp/TableDelegate.js +4 -4
- package/src/sap/fe/macros/internal/valuehelp/TableDelegate.ts +6 -6
- package/src/sap/fe/macros/internal/valuehelp/ValueListDialogTable.fragment.xml +5 -2
- package/src/sap/fe/macros/internal/valuehelp/ValueListHelper.js +2 -2
- package/src/sap/fe/macros/internal/valuehelp/ValueListHelper.ts +2 -1
- package/src/sap/fe/macros/library.js +5 -6
- package/src/sap/fe/macros/{library.ts → library.tsx} +3 -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/messagebundle.properties +13 -5
- package/src/sap/fe/macros/messagebundle_ar.properties +12 -3
- package/src/sap/fe/macros/messagebundle_bg.properties +13 -4
- package/src/sap/fe/macros/messagebundle_ca.properties +12 -3
- package/src/sap/fe/macros/messagebundle_cnr.properties +12 -3
- package/src/sap/fe/macros/messagebundle_cs.properties +11 -2
- package/src/sap/fe/macros/messagebundle_cy.properties +12 -3
- package/src/sap/fe/macros/messagebundle_da.properties +12 -3
- package/src/sap/fe/macros/messagebundle_de.properties +16 -7
- package/src/sap/fe/macros/messagebundle_el.properties +13 -4
- package/src/sap/fe/macros/messagebundle_en.properties +13 -4
- package/src/sap/fe/macros/messagebundle_en_GB.properties +13 -4
- package/src/sap/fe/macros/messagebundle_en_US_saprigi.properties +13 -4
- package/src/sap/fe/macros/messagebundle_es.properties +12 -3
- package/src/sap/fe/macros/messagebundle_es_MX.properties +12 -3
- package/src/sap/fe/macros/messagebundle_et.properties +12 -3
- package/src/sap/fe/macros/messagebundle_fi.properties +12 -3
- package/src/sap/fe/macros/messagebundle_fr.properties +12 -3
- package/src/sap/fe/macros/messagebundle_fr_CA.properties +12 -3
- package/src/sap/fe/macros/messagebundle_hi.properties +12 -3
- package/src/sap/fe/macros/messagebundle_hr.properties +13 -4
- package/src/sap/fe/macros/messagebundle_hu.properties +12 -3
- package/src/sap/fe/macros/messagebundle_id.properties +18 -9
- package/src/sap/fe/macros/messagebundle_it.properties +12 -3
- package/src/sap/fe/macros/messagebundle_iw.properties +12 -3
- package/src/sap/fe/macros/messagebundle_ja.properties +12 -3
- package/src/sap/fe/macros/messagebundle_kk.properties +11 -2
- package/src/sap/fe/macros/messagebundle_ko.properties +13 -4
- package/src/sap/fe/macros/messagebundle_lt.properties +12 -3
- package/src/sap/fe/macros/messagebundle_lv.properties +12 -3
- package/src/sap/fe/macros/messagebundle_mk.properties +12 -3
- package/src/sap/fe/macros/messagebundle_ms.properties +12 -3
- package/src/sap/fe/macros/messagebundle_nl.properties +12 -3
- package/src/sap/fe/macros/messagebundle_no.properties +12 -3
- package/src/sap/fe/macros/messagebundle_pl.properties +12 -3
- package/src/sap/fe/macros/messagebundle_pt.properties +12 -3
- package/src/sap/fe/macros/messagebundle_pt_PT.properties +12 -3
- package/src/sap/fe/macros/messagebundle_ro.properties +13 -4
- package/src/sap/fe/macros/messagebundle_ru.properties +12 -3
- package/src/sap/fe/macros/messagebundle_sh.properties +12 -3
- package/src/sap/fe/macros/messagebundle_sk.properties +12 -3
- package/src/sap/fe/macros/messagebundle_sl.properties +13 -4
- package/src/sap/fe/macros/messagebundle_sr.properties +12 -3
- package/src/sap/fe/macros/messagebundle_sv.properties +12 -3
- package/src/sap/fe/macros/messagebundle_th.properties +11 -2
- package/src/sap/fe/macros/messagebundle_tr.properties +12 -3
- package/src/sap/fe/macros/messagebundle_uk.properties +12 -3
- package/src/sap/fe/macros/messagebundle_vi.properties +13 -4
- package/src/sap/fe/macros/messagebundle_zh_CN.properties +12 -3
- package/src/sap/fe/macros/messagebundle_zh_TW.properties +12 -3
- 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 +7 -3
- package/src/sap/fe/macros/multivaluefield/MultiValueFieldDelegate.ts +8 -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/richtexteditor/ButtonGroup.js +2 -2
- package/src/sap/fe/macros/richtexteditor/ButtonGroup.ts +2 -2
- package/src/sap/fe/macros/table/Action.js +21 -5
- package/src/sap/fe/macros/table/Action.ts +14 -4
- package/src/sap/fe/macros/table/ActionGroup.js +15 -2
- package/src/sap/fe/macros/table/ActionGroup.ts +8 -0
- package/src/sap/fe/macros/table/ActionGroupOverride.js +14 -2
- package/src/sap/fe/macros/table/ActionGroupOverride.ts +7 -0
- package/src/sap/fe/macros/table/ActionOverride.js +14 -2
- package/src/sap/fe/macros/table/ActionOverride.ts +7 -0
- package/src/sap/fe/macros/table/ActionsTemplating.js +16 -2
- package/src/sap/fe/macros/table/ActionsTemplating.tsx +15 -0
- package/src/sap/fe/macros/table/Column.js +3 -2
- package/src/sap/fe/macros/table/Column.ts +1 -1
- package/src/sap/fe/macros/table/MdcTableTemplate.js +96 -18
- package/src/sap/fe/macros/table/MdcTableTemplate.tsx +136 -17
- package/src/sap/fe/macros/table/OverflowGroups.js +59 -0
- package/src/sap/fe/macros/table/OverflowGroups.ts +27 -0
- package/src/sap/fe/macros/table/Table.block.js +74 -30
- package/src/sap/fe/macros/table/Table.block.tsx +77 -14
- package/src/sap/fe/macros/table/TableAPI.js +175 -132
- package/src/sap/fe/macros/table/TableAPI.ts +67 -30
- package/src/sap/fe/macros/table/TableDefinition.js +20 -3
- package/src/sap/fe/macros/table/TableDefinition.ts +18 -2
- package/src/sap/fe/macros/table/TableEventHandlerProvider.js +6 -3
- package/src/sap/fe/macros/table/TableEventHandlerProvider.ts +12 -9
- package/src/sap/fe/macros/table/TableHelper.js +5 -2
- package/src/sap/fe/macros/table/TableHelper.ts +5 -2
- package/src/sap/fe/macros/table/TableRuntime.js +25 -13
- package/src/sap/fe/macros/table/TableRuntime.ts +31 -17
- package/src/sap/fe/macros/table/TableSizeHelper.js +4 -4
- package/src/sap/fe/macros/table/TableSizeHelper.ts +6 -11
- package/src/sap/fe/macros/table/Utils.js +9 -3
- package/src/sap/fe/macros/table/Utils.ts +14 -8
- package/src/sap/fe/macros/table/delegates/TableDelegate.js +72 -29
- package/src/sap/fe/macros/table/delegates/TableDelegate.ts +114 -123
- 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/massEdit/MassEditDialogHelper.js +15 -6
- package/src/sap/fe/macros/table/massEdit/MassEditDialogHelper.tsx +14 -5
- package/src/sap/fe/macros/table/massEdit/MassEditField.js +1 -1
- package/src/sap/fe/macros/table/massEdit/MassEditField.tsx +3 -6
- package/src/sap/fe/macros/table/mixin/ContextMenuHandler.js +2 -3
- package/src/sap/fe/macros/table/mixin/ContextMenuHandler.ts +3 -2
- package/src/sap/fe/macros/table/mixin/EmptyRowsHandler.js +42 -14
- package/src/sap/fe/macros/table/mixin/EmptyRowsHandler.ts +49 -19
- package/src/sap/fe/macros/table/mixin/TableAPIStateHandler.js +7 -9
- package/src/sap/fe/macros/table/mixin/TableAPIStateHandler.ts +7 -8
- package/src/sap/fe/macros/table/mixin/TableExport.js +1 -1
- package/src/sap/fe/macros/table/mixin/TableExport.ts +3 -3
- package/src/sap/fe/macros/table/mixin/TableHierarchy.js +3 -4
- package/src/sap/fe/macros/table/mixin/TableHierarchy.ts +2 -3
- package/src/sap/fe/macros/table/uploadTable/UploadTableRuntime.js +5 -4
- package/src/sap/fe/macros/table/uploadTable/UploadTableRuntime.ts +6 -3
- package/src/sap/fe/macros/valuehelp/ValueHelpDelegate.js +17 -10
- package/src/sap/fe/macros/valuehelp/ValueHelpDelegate.ts +24 -9
- package/src/sap/fe/macros/visualfilters/InteractiveChartHelper.js +4 -4
- package/src/sap/fe/macros/visualfilters/InteractiveChartHelper.ts +3 -3
- package/src/sap/fe/macros/visualfilters/VisualFilter.js +20 -2
- package/src/sap/fe/macros/visualfilters/VisualFilter.tsx +28 -6
- package/src/sap/fe/macros/visualfilters/VisualFilterRuntime.js +6 -3
- package/src/sap/fe/macros/visualfilters/VisualFilterRuntime.ts +4 -3
- package/src/sap/fe/macros/visualfilters/fragments/InteractiveCharts.js +3 -3
- package/src/sap/fe/macros/visualfilters/fragments/InteractiveCharts.tsx +10 -4
- package/src/sap/fe/macros/visualfilters/fragments/InteractiveDonutChart.fragment.xml +1 -1
|
@@ -187,10 +187,16 @@ class FileWrapper extends FieldWrapper {
|
|
|
187
187
|
}
|
|
188
188
|
|
|
189
189
|
getUploadUrl(): string {
|
|
190
|
-
// set upload url as canonical url for NavigationProperties
|
|
191
|
-
// this is a workaround as some backends cannot resolve NavigationsProperties for stream types
|
|
192
190
|
const context = this.getBindingContext() as Context;
|
|
193
|
-
|
|
191
|
+
if (context && this.uploadUrl) {
|
|
192
|
+
// If the backend did not explicitly set AddressViaNavigationPath, we need to use the canonical path for upload
|
|
193
|
+
if (context.getModel().getMetaModel().getObject("/@com.sap.vocabularies.Common.v1.AddressViaNavigationPath") === true) {
|
|
194
|
+
return this.uploadUrl;
|
|
195
|
+
} else {
|
|
196
|
+
return this.uploadUrl.replace(context.getPath(), context.getCanonicalPath());
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
return "";
|
|
194
200
|
}
|
|
195
201
|
|
|
196
202
|
setUIBusy(busy: boolean): void {
|
|
@@ -226,7 +232,7 @@ class FileWrapper extends FieldWrapper {
|
|
|
226
232
|
innerDivMinWidth = "3rem";
|
|
227
233
|
} else {
|
|
228
234
|
// Depending on display or edit mode we have to reserve some space for the file upload and delete button (2rem each + 1rem margin)
|
|
229
|
-
innerDivMaxWidth = CommonUtils.getIsEditable(fileWrapper as unknown as ManagedObject) ? "calc(100% -
|
|
235
|
+
innerDivMaxWidth = CommonUtils.getIsEditable(fileWrapper as unknown as ManagedObject) ? "calc(100% - 6rem)" : "100%";
|
|
230
236
|
innerDivMinWidth = "4.5rem";
|
|
231
237
|
}
|
|
232
238
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2025 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/macros/controls/filterbar/FilterContainer", "sap/fe/macros/controls/filterbar/VisualFilterContainer", "sap/ui/core/Element", "sap/ui/mdc/FilterBar", "sap/ui/mdc/filterbar/aligned/FilterItemLayout", "./filterbar/utils/VisualFilterUtils"], function (Log, ClassSupport, FilterContainer, VisualFilterContainer, Element, MdcFilterBar, FilterItemLayout, VisualFilterUtils) {
|
|
5
|
+
sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/core/helpers/PromiseKeeper", "sap/fe/macros/controls/filterbar/FilterContainer", "sap/fe/macros/controls/filterbar/VisualFilterContainer", "sap/ui/core/Element", "sap/ui/mdc/FilterBar", "sap/ui/mdc/filterbar/aligned/FilterItemLayout", "./filterbar/utils/VisualFilterUtils"], function (Log, ClassSupport, PromiseKeeper, FilterContainer, VisualFilterContainer, Element, MdcFilterBar, FilterItemLayout, VisualFilterUtils) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
var _dec, _dec2, _dec3, _dec4, _class, _class2, _descriptor, _descriptor2, _descriptor3;
|
|
@@ -44,11 +44,47 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/macros/contro
|
|
|
44
44
|
_inheritsLoose(FilterBar, _MdcFilterBar);
|
|
45
45
|
var _proto = FilterBar.prototype;
|
|
46
46
|
_proto._initializeStatus = async function _initializeStatus() {
|
|
47
|
-
|
|
47
|
+
// Promise keeper to hold the process.
|
|
48
|
+
this._initializedPromiseKeeper = new PromiseKeeper();
|
|
49
|
+
|
|
50
|
+
// Awaits
|
|
51
|
+
await this.initializedWithMetadata();
|
|
52
|
+
await this.waitForModelToBeSet();
|
|
53
|
+
this._initializedPromiseKeeper.resolve();
|
|
48
54
|
this._isInitialized = true;
|
|
49
55
|
};
|
|
56
|
+
_proto.waitForModelToBeSet = async function waitForModelToBeSet() {
|
|
57
|
+
if (this.getModel()) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
// wait for deafault model to be set.
|
|
61
|
+
const modelIsSetPromiseKeeper = new PromiseKeeper();
|
|
62
|
+
const fnCheckAndReset = e => {
|
|
63
|
+
const filterbar = e.getSource();
|
|
64
|
+
if (filterbar.getModel()) {
|
|
65
|
+
// default model is set.
|
|
66
|
+
filterbar.detachModelContextChange(fnCheckAndReset);
|
|
67
|
+
modelIsSetPromiseKeeper?.resolve();
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
this.attachModelContextChange(fnCheckAndReset);
|
|
71
|
+
return modelIsSetPromiseKeeper.promise;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Checks if the FilterBar is fully initialized.
|
|
76
|
+
* @returns True if the FilterBar is initialized, false otherwise.
|
|
77
|
+
*/;
|
|
50
78
|
_proto.isInitialized = function isInitialized() {
|
|
51
79
|
return !!this._isInitialized;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Async equivalent of 'isInitialized' to perform filter bar interactions after the filter bar is ready.
|
|
84
|
+
* @returns Promise that resolves when the filter bar is initialized.
|
|
85
|
+
*/;
|
|
86
|
+
_proto.whenInitialized = async function whenInitialized() {
|
|
87
|
+
return this._initializedPromiseKeeper?.promise;
|
|
52
88
|
};
|
|
53
89
|
_proto.setToggleControl = function setToggleControl(vToggle) {
|
|
54
90
|
if (typeof vToggle === "string") {
|
|
@@ -239,4 +275,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/ClassSupport", "sap/fe/macros/contro
|
|
|
239
275
|
}), _class2)) || _class);
|
|
240
276
|
return FilterBar;
|
|
241
277
|
}, false);
|
|
242
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWSVNVQUxfRklMVEVSX0NPTlRBSU5FUiIsIkZJTFRFUl9DT05UQUlORVIiLCJGaWx0ZXJCYXIiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJfZGVjMiIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsIl9kZWMzIiwiX2RlYzQiLCJhc3NvY2lhdGlvbiIsIm11bHRpcGxlIiwiX2NsYXNzIiwiX2NsYXNzMiIsIl9NZGNGaWx0ZXJCYXIiLCJpZE9yUHJvcHMiLCJzZXR0aW5ncyIsIl90aGlzIiwicHJvcGVydHlJbmZvIiwiY2FsbCIsIl9pbml0aWFsaXplckRlZmluZVByb3BlcnR5IiwiX2Rlc2NyaXB0b3IiLCJfZGVzY3JpcHRvcjIiLCJfZGVzY3JpcHRvcjMiLCJfaXNJbml0aWFsaXplZCIsIl9pbml0aWFsaXplU3RhdHVzIiwiX2luaGVyaXRzTG9vc2UiLCJfcHJvdG8iLCJwcm90b3R5cGUiLCJ3YWl0Rm9ySW5pdGlhbGl6YXRpb24iLCJpc0luaXRpYWxpemVkIiwic2V0VG9nZ2xlQ29udHJvbCIsInZUb2dnbGUiLCJfb1NlZ21lbnRlZEJ1dHRvbiIsIkVsZW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsInRvZ2dsZUNvbnRyb2wiLCJkZXRhY2hFdmVudCIsIl90b2dnbGVMYXlvdXQiLCJiaW5kIiwiYXR0YWNoRXZlbnQiLCJzZXRBc3NvY2lhdGlvbiIsInRoZW4iLCJ0YXJnZXRLZXkiLCJnZXRTZWxlY3RlZEtleSIsIl9vRmlsdGVyQmFyTGF5b3V0IiwiaXNBIiwiX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQiLCJWaXN1YWxGaWx0ZXJDb250YWluZXIiLCJzZXRTaG93QWRhcHRGaWx0ZXJzQnV0dG9uIiwib0N1cnJlbnRGaWx0ZXJCYXJMYXlvdXQiLCJvRmlsdGVySXRlbXMiLCJnZXRGaWx0ZXJJdGVtcyIsImFGaWx0ZXJGaWVsZHMiLCJnZXRBbGxGaWx0ZXJGaWVsZHMiLCJhU29ydGVkRmlsdGVyRmllbGRzIiwiZ2V0U29ydGVkRmlsdGVyRmllbGRzIiwiYUJ1dHRvbnMiLCJnZXRBbGxCdXR0b25zIiwiYVZpc3VhbEZpbHRlckZpZWxkcyIsImdldEFsbFZpc3VhbEZpbHRlckZpZWxkcyIsInNldEFsbEZpbHRlckZpZWxkcyIsImZvckVhY2giLCJvRmlsdGVyRmllbGQiLCJpSW5kZXgiLCJyZW1vdmVGaWx0ZXJGaWVsZCIsImluc2VydEZpbHRlckZpZWxkIiwib0J1dHRvbiIsInJlbW92ZUJ1dHRvbiIsImFkZEJ1dHRvbiIsInNldEFnZ3JlZ2F0aW9uIiwiaW52YWxpZGF0ZSIsImNhdGNoIiwiZXJyb3IiLCJMb2ciLCJhRmlsdGVySXRlbXMiLCJhRmlsdGVySWRzIiwib0ZpbHRlckl0ZW0iLCJwdXNoIiwiZ2V0SWQiLCJzb3J0IiwiYUZpcnN0SXRlbSIsImFTZWNvbmRJdGVtIiwic0ZpcnN0SXRlbVZGSWQiLCJzU2Vjb25kSXRlbVZGSWQiLCJnZXRDb250ZW50Iiwib0lubmVyQ29udHJvbCIsImluZGV4T2YiLCJfY3JlYXRlSW5uZXJMYXlvdXQiLCJGaWx0ZXJDb250YWluZXIiLCJfY0xheW91dEl0ZW0iLCJGaWx0ZXJJdGVtTGF5b3V0IiwiZ2V0SW5uZXIiLCJhZGRTdHlsZUNsYXNzIiwiX2FkZEJ1dHRvbnMiLCJvSW5uZXJMYXlvdXQiLCJvRmlsdGVyQ29udGFpbmVySW5uZXJMYXlvdXRFdmVudERlbGVnYXRlIiwib25CZWZvcmVSZW5kZXJpbmciLCJpbml0aWFsTGF5b3V0IiwicmVtb3ZlRXZlbnREZWxlZ2F0ZSIsImFkZEV2ZW50RGVsZWdhdGUiLCJleGl0IiwiZ2V0U2VnbWVudGVkQnV0dG9uIiwiZW5hYmxlUmVxdWVzdHMiLCJlbmFibGUiLCJkaWZmU3RhdGUiLCJzZXRTdXNwZW5kU2VsZWN0aW9uIiwiX2VuYWJsZVZpc3VhbEZpbHRlckNoYXJ0QmluZGluZ3MiLCJfZ2V0RmlsdGVyTGF5b3V0QnlUeXBlIiwibGF5b3V0Q2xhc3NOYW1lIiwicmV0RmlsdGVyTGF5b3V0IiwidW5kZWZpbmVkIiwidmlzdWFsRmlsdGVyTGF5b3V0IiwiZW5hYmxlQ2hhcnRCaW5kaW5nIiwiY29tcGFjdEZpbHRlckxheW91dCIsInZpc3VhbEZpbHRlcnMiLCJWaXN1YWxGaWx0ZXJVdGlscyIsIk1kY0ZpbHRlckJhciIsIl9hcHBseURlY29yYXRlZERlc2NyaXB0b3IiLCJjb25maWd1cmFibGUiLCJlbnVtZXJhYmxlIiwid3JpdGFibGUiLCJpbml0aWFsaXplciJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiRmlsdGVyQmFyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IHR5cGUgeyBQcm9wZXJ0aWVzT2YgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgeyBhc3NvY2lhdGlvbiwgZGVmaW5lVUk1Q2xhc3MsIHByb3BlcnR5IH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IEZpbHRlckNvbnRhaW5lciBmcm9tIFwic2FwL2ZlL21hY3Jvcy9jb250cm9scy9maWx0ZXJiYXIvRmlsdGVyQ29udGFpbmVyXCI7XG5pbXBvcnQgVmlzdWFsRmlsdGVyQ29udGFpbmVyIGZyb20gXCJzYXAvZmUvbWFjcm9zL2NvbnRyb2xzL2ZpbHRlcmJhci9WaXN1YWxGaWx0ZXJDb250YWluZXJcIjtcbmltcG9ydCB0eXBlIFZpc3VhbEZpbHRlciBmcm9tIFwic2FwL2ZlL21hY3Jvcy92aXN1YWxmaWx0ZXJzL1Zpc3VhbEZpbHRlclwiO1xuaW1wb3J0IHR5cGUgQnV0dG9uIGZyb20gXCJzYXAvbS9CdXR0b25cIjtcbmltcG9ydCB0eXBlIFNlZ21lbnRlZEJ1dHRvbiBmcm9tIFwic2FwL20vU2VnbWVudGVkQnV0dG9uXCI7XG5pbXBvcnQgdHlwZSBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgeyBkZWZhdWx0IGFzIEVsZW1lbnQgfSBmcm9tIFwic2FwL3VpL2NvcmUvRWxlbWVudFwiO1xuaW1wb3J0IHR5cGUgeyAkRmlsdGVyQmFyU2V0dGluZ3MgfSBmcm9tIFwic2FwL3VpL21kYy9GaWx0ZXJCYXJcIjtcbmltcG9ydCBNZGNGaWx0ZXJCYXIgZnJvbSBcInNhcC91aS9tZGMvRmlsdGVyQmFyXCI7XG5pbXBvcnQgdHlwZSBGaWx0ZXJGaWVsZCBmcm9tIFwic2FwL3VpL21kYy9GaWx0ZXJGaWVsZFwiO1xuaW1wb3J0IHR5cGUgSUZpbHRlckNvbnRhaW5lciBmcm9tIFwic2FwL3VpL21kYy9maWx0ZXJiYXIvSUZpbHRlckNvbnRhaW5lclwiO1xuaW1wb3J0IEZpbHRlckl0ZW1MYXlvdXQgZnJvbSBcInNhcC91aS9tZGMvZmlsdGVyYmFyL2FsaWduZWQvRmlsdGVySXRlbUxheW91dFwiO1xuaW1wb3J0IHsgdHlwZSBFeHRlcm5hbFN0YXRlVHlwZSB9IGZyb20gXCIuLi92YWx1ZWhlbHAvVmFsdWVIZWxwRGVsZWdhdGVcIjtcbmltcG9ydCBWaXN1YWxGaWx0ZXJVdGlscyBmcm9tIFwiLi9maWx0ZXJiYXIvdXRpbHMvVmlzdWFsRmlsdGVyVXRpbHNcIjtcblxuY29uc3QgVklTVUFMX0ZJTFRFUl9DT05UQUlORVIgPSBcInNhcC5mZS5tYWNyb3MuY29udHJvbHMuZmlsdGVyYmFyLlZpc3VhbEZpbHRlckNvbnRhaW5lclwiLFxuXHRGSUxURVJfQ09OVEFJTkVSID0gXCJzYXAuZmUubWFjcm9zLmNvbnRyb2xzLmZpbHRlcmJhci5GaWx0ZXJDb250YWluZXJcIjtcbnR5cGUgQ29udGFpbmVyVHlwZSA9IHR5cGVvZiBWSVNVQUxfRklMVEVSX0NPTlRBSU5FUiB8IHR5cGVvZiBGSUxURVJfQ09OVEFJTkVSO1xuXG5AZGVmaW5lVUk1Q2xhc3MoXCJzYXAuZmUubWFjcm9zLmNvbnRyb2xzLkZpbHRlckJhclwiKVxuY2xhc3MgRmlsdGVyQmFyIGV4dGVuZHMgTWRjRmlsdGVyQmFyIHtcblx0QHByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiwgZGVmYXVsdFZhbHVlOiBcImNvbXBhY3RcIiB9KVxuXHRpbml0aWFsTGF5b3V0ITogc3RyaW5nO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhblwiLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG5cdGRpc2FibGVEcmFmdEVkaXRTdGF0ZUZpbHRlciE6IGJvb2xlYW47XG5cblx0LyoqXG5cdCAqIENvbnRyb2wgd2hpY2ggYWxsb3dzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiB2aXN1YWwgYW5kIG5vcm1hbCBmaWx0ZXIgbGF5b3V0c1xuXHQgKi9cblx0QGFzc29jaWF0aW9uKHtcblx0XHR0eXBlOiBcInNhcC5tLlNlZ21lbnRlZEJ1dHRvblwiLFxuXHRcdG11bHRpcGxlOiBmYWxzZVxuXHR9KVxuXHR0b2dnbGVDb250cm9sITogc3RyaW5nO1xuXG5cdGNvbnN0cnVjdG9yKGlkT3JQcm9wcz86IFByb3BlcnRpZXNPZjxGaWx0ZXJCYXI+ICYgJEZpbHRlckJhclNldHRpbmdzLCBzZXR0aW5ncz86IFByb3BlcnRpZXNPZjxGaWx0ZXJCYXI+ICYgJEZpbHRlckJhclNldHRpbmdzKSB7XG5cdFx0ZGVsZXRlIGlkT3JQcm9wcz8ucHJvcGVydHlJbmZvO1xuXHRcdGRlbGV0ZSBzZXR0aW5ncz8ucHJvcGVydHlJbmZvO1xuXHRcdHN1cGVyKGlkT3JQcm9wcyBhcyB1bmtub3duIGFzIHN0cmluZywgc2V0dGluZ3MpO1xuXHRcdHRoaXMuX2luaXRpYWxpemVTdGF0dXMoKTtcblx0fVxuXG5cdHByaXZhdGUgYXN5bmMgX2luaXRpYWxpemVTdGF0dXMoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0YXdhaXQgdGhpcy53YWl0Rm9ySW5pdGlhbGl6YXRpb24oKTtcblx0XHR0aGlzLl9pc0luaXRpYWxpemVkID0gdHJ1ZTtcblx0fVxuXG5cdGlzSW5pdGlhbGl6ZWQoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuICEhdGhpcy5faXNJbml0aWFsaXplZDtcblx0fVxuXG5cdHByaXZhdGUgX2lzSW5pdGlhbGl6ZWQgPSBmYWxzZTtcblxuXHRwcml2YXRlIF9vU2VnbWVudGVkQnV0dG9uPzogU2VnbWVudGVkQnV0dG9uO1xuXG5cdHByaXZhdGUgX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQ/OiBJRmlsdGVyQ29udGFpbmVyO1xuXG5cdHByaXZhdGUgX29GaWx0ZXJCYXJMYXlvdXQhOiBJRmlsdGVyQ29udGFpbmVyO1xuXG5cdHByaXZhdGUgX2NMYXlvdXRJdGVtOiB0eXBlb2YgRmlsdGVySXRlbUxheW91dDtcblxuXHRzZXRUb2dnbGVDb250cm9sKHZUb2dnbGU6IHN0cmluZyB8IFNlZ21lbnRlZEJ1dHRvbik6IHZvaWQge1xuXHRcdGlmICh0eXBlb2YgdlRvZ2dsZSA9PT0gXCJzdHJpbmdcIikge1xuXHRcdFx0dGhpcy5fb1NlZ21lbnRlZEJ1dHRvbiA9IEVsZW1lbnQuZ2V0RWxlbWVudEJ5SWQodlRvZ2dsZSkgYXMgU2VnbWVudGVkQnV0dG9uO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLl9vU2VnbWVudGVkQnV0dG9uID0gdlRvZ2dsZTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy50b2dnbGVDb250cm9sICYmIHRoaXMuX29TZWdtZW50ZWRCdXR0b24pIHtcblx0XHRcdHRoaXMuX29TZWdtZW50ZWRCdXR0b24uZGV0YWNoRXZlbnQoXCJzZWxlY3Rpb25DaGFuZ2VcIiwgdGhpcy5fdG9nZ2xlTGF5b3V0LmJpbmQodGhpcykpO1xuXHRcdH1cblx0XHRpZiAodGhpcy5fb1NlZ21lbnRlZEJ1dHRvbikge1xuXHRcdFx0dGhpcy5fb1NlZ21lbnRlZEJ1dHRvbi5hdHRhY2hFdmVudChcInNlbGVjdGlvbkNoYW5nZVwiLCB0aGlzLl90b2dnbGVMYXlvdXQuYmluZCh0aGlzKSk7XG5cdFx0fVxuXHRcdHRoaXMuc2V0QXNzb2NpYXRpb24oXCJ0b2dnbGVDb250cm9sXCIsIHZUb2dnbGUsIHRydWUpO1xuXHR9XG5cblx0X3RvZ2dsZUxheW91dCgpOiB2b2lkIHtcblx0XHQvLyBTaW5jZSBwcmltYXJ5IGxheW91dCBpcyBhbHdheXMgY29tcGFjdFxuXHRcdC8vIGhlbmNlIHNldCB0aGUgc2Vjb25kYXJ5IGxheW91dCBhcyB2aXN1YWwgZmlsdGVyIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIG9ubHlcblx0XHR0aGlzLndhaXRGb3JJbml0aWFsaXphdGlvbigpXG5cdFx0XHQudGhlbigoKSA9PiB7XG5cdFx0XHRcdGNvbnN0IHRhcmdldEtleSA9IHRoaXMuX29TZWdtZW50ZWRCdXR0b24/LmdldFNlbGVjdGVkS2V5KCk7XG5cdFx0XHRcdGlmIChcblx0XHRcdFx0XHQodGFyZ2V0S2V5ID09PSBcInZpc3VhbFwiICYmXG5cdFx0XHRcdFx0XHR0aGlzLl9vRmlsdGVyQmFyTGF5b3V0Py5pc0E8VmlzdWFsRmlsdGVyQ29udGFpbmVyPihcInNhcC5mZS5tYWNyb3MuY29udHJvbHMuZmlsdGVyYmFyLlZpc3VhbEZpbHRlckNvbnRhaW5lclwiKSkgfHxcblx0XHRcdFx0XHQodGFyZ2V0S2V5ID09PSBcImNvbXBhY3RcIiAmJlxuXHRcdFx0XHRcdFx0IXRoaXMuX29GaWx0ZXJCYXJMYXlvdXQ/LmlzQTxWaXN1YWxGaWx0ZXJDb250YWluZXI+KFwic2FwLmZlLm1hY3Jvcy5jb250cm9scy5maWx0ZXJiYXIuVmlzdWFsRmlsdGVyQ29udGFpbmVyXCIpKVxuXHRcdFx0XHQpIHtcblx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKCF0aGlzLl9vU2Vjb25kYXJ5RmlsdGVyQmFyTGF5b3V0KSB7XG5cdFx0XHRcdFx0dGhpcy5fb1NlY29uZGFyeUZpbHRlckJhckxheW91dCA9IG5ldyBWaXN1YWxGaWx0ZXJDb250YWluZXIoKSBhcyB1bmtub3duIGFzIElGaWx0ZXJDb250YWluZXI7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBkbyBub3Qgc2hvdyBBZGFwdCBGaWx0ZXJzIEJ1dHRvbiBmb3IgdmlzdWFsIGxheW91dFxuXHRcdFx0XHRpZiAodGhpcy5fb1NlY29uZGFyeUZpbHRlckJhckxheW91dD8uaXNBPFZpc3VhbEZpbHRlckNvbnRhaW5lcj4oXCJzYXAuZmUubWFjcm9zLmNvbnRyb2xzLmZpbHRlcmJhci5WaXN1YWxGaWx0ZXJDb250YWluZXJcIikpIHtcblx0XHRcdFx0XHR0aGlzLnNldFNob3dBZGFwdEZpbHRlcnNCdXR0b24oZmFsc2UpO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHRoaXMuc2V0U2hvd0FkYXB0RmlsdGVyc0J1dHRvbih0cnVlKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIGdldCBhbGwgZmlsdGVyIGZpZWxkcyBhbmQgYnV0dG9uIG9mIHRoZSBjdXJyZW50IGxheW91dFxuXHRcdFx0XHRjb25zdCBvQ3VycmVudEZpbHRlckJhckxheW91dCA9IHRoaXMuX29GaWx0ZXJCYXJMYXlvdXQ7XG5cdFx0XHRcdGNvbnN0IG9GaWx0ZXJJdGVtcyA9IHRoaXMuZ2V0RmlsdGVySXRlbXMoKTtcblx0XHRcdFx0Y29uc3QgYUZpbHRlckZpZWxkcyA9IG9DdXJyZW50RmlsdGVyQmFyTGF5b3V0LmdldEFsbEZpbHRlckZpZWxkcygpO1xuXHRcdFx0XHRjb25zdCBhU29ydGVkRmlsdGVyRmllbGRzID0gdGhpcy5nZXRTb3J0ZWRGaWx0ZXJGaWVsZHMob0ZpbHRlckl0ZW1zLCBhRmlsdGVyRmllbGRzKTtcblx0XHRcdFx0Y29uc3QgYUJ1dHRvbnMgPSBvQ3VycmVudEZpbHRlckJhckxheW91dC5nZXRBbGxCdXR0b25zKCk7XG5cdFx0XHRcdGNvbnN0IGFWaXN1YWxGaWx0ZXJGaWVsZHMgPVxuXHRcdFx0XHRcdG9DdXJyZW50RmlsdGVyQmFyTGF5b3V0LmdldEFsbFZpc3VhbEZpbHRlckZpZWxkcyAmJlxuXHRcdFx0XHRcdChvQ3VycmVudEZpbHRlckJhckxheW91dC5nZXRBbGxWaXN1YWxGaWx0ZXJGaWVsZHMoKSBhcyBSZWNvcmQ8c3RyaW5nLCBWaXN1YWxGaWx0ZXI+IHwgdW5kZWZpbmVkKTtcblx0XHRcdFx0aWYgKHRoaXMuX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQ/LmlzQTxWaXN1YWxGaWx0ZXJDb250YWluZXI+KFwic2FwLmZlLm1hY3Jvcy5jb250cm9scy5maWx0ZXJiYXIuVmlzdWFsRmlsdGVyQ29udGFpbmVyXCIpKSB7XG5cdFx0XHRcdFx0dGhpcy5fb1NlY29uZGFyeUZpbHRlckJhckxheW91dC5zZXRBbGxGaWx0ZXJGaWVsZHMoYVNvcnRlZEZpbHRlckZpZWxkcywgYVZpc3VhbEZpbHRlckZpZWxkcyk7XG5cdFx0XHRcdH1cblx0XHRcdFx0Ly8gdXNlIHNlY29uZGFyeSBmaWx0ZXIgYmFyIGxheW91dCBhcyBuZXcgbGF5b3V0XG5cdFx0XHRcdHRoaXMuX29GaWx0ZXJCYXJMYXlvdXQgPSB0aGlzLl9vU2Vjb25kYXJ5RmlsdGVyQmFyTGF5b3V0ITtcblxuXHRcdFx0XHQvLyBpbnNlcnQgYWxsIGZpbHRlciBmaWVsZHMgZnJvbSBjdXJyZW50IGxheW91dCB0byBuZXcgbGF5b3V0XG5cdFx0XHRcdGFGaWx0ZXJGaWVsZHMuZm9yRWFjaCgob0ZpbHRlckZpZWxkOiBGaWx0ZXJGaWVsZCwgaUluZGV4OiBudW1iZXIpID0+IHtcblx0XHRcdFx0XHRvQ3VycmVudEZpbHRlckJhckxheW91dC5yZW1vdmVGaWx0ZXJGaWVsZChvRmlsdGVyRmllbGQpO1xuXHRcdFx0XHRcdHRoaXMuX29GaWx0ZXJCYXJMYXlvdXQuaW5zZXJ0RmlsdGVyRmllbGQob0ZpbHRlckZpZWxkLCBpSW5kZXgpO1xuXHRcdFx0XHR9KTtcblx0XHRcdFx0Ly8gaW5zZXJ0IGFsbCBidXR0b25zIGZyb20gdGhlIGN1cnJlbnQgbGF5b3V0IHRvIHRoZSBuZXcgbGF5b3V0XG5cdFx0XHRcdGFCdXR0b25zLmZvckVhY2goKG9CdXR0b246IEJ1dHRvbikgPT4ge1xuXHRcdFx0XHRcdG9DdXJyZW50RmlsdGVyQmFyTGF5b3V0LnJlbW92ZUJ1dHRvbihvQnV0dG9uKTtcblx0XHRcdFx0XHR0aGlzLl9vRmlsdGVyQmFyTGF5b3V0LmFkZEJ1dHRvbihvQnV0dG9uKTtcblx0XHRcdFx0fSk7XG5cblx0XHRcdFx0Ly8gc2V0IHRoZSBjdXJyZW50IGZpbHRlciBiYXIgbGF5b3V0IHRvIHRoZSBzZWNvbmRhcnkgb25lXG5cdFx0XHRcdHRoaXMuX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQgPSBvQ3VycmVudEZpbHRlckJhckxheW91dDtcblxuXHRcdFx0XHQvLyB1cGRhdGUgdGhlIGxheW91dCBhZ2dyZWdhdGlvbiBvZiB0aGUgZmlsdGVyIGJhciBhbmQgcmVyZW5kZXIgdGhlIHNhbWUuXG5cdFx0XHRcdHRoaXMuc2V0QWdncmVnYXRpb24oXCJsYXlvdXRcIiwgdGhpcy5fb0ZpbHRlckJhckxheW91dCwgdHJ1ZSk7XG5cdFx0XHRcdHRoaXMuX29GaWx0ZXJCYXJMYXlvdXQuaW52YWxpZGF0ZSgpO1xuXHRcdFx0XHRyZXR1cm47XG5cdFx0XHR9KVxuXHRcdFx0LmNhdGNoKChlcnJvcikgPT4ge1xuXHRcdFx0XHRMb2cuZXJyb3IoZXJyb3IpO1xuXHRcdFx0fSk7XG5cdH1cblxuXHRnZXRTb3J0ZWRGaWx0ZXJGaWVsZHMoYUZpbHRlckl0ZW1zOiBGaWx0ZXJGaWVsZFtdLCBhRmlsdGVyRmllbGRzOiBGaWx0ZXJGaWVsZFtdKTogRmlsdGVyRmllbGRbXSB7XG5cdFx0Y29uc3QgYUZpbHRlcklkczogc3RyaW5nW10gPSBbXTtcblx0XHRhRmlsdGVySXRlbXMuZm9yRWFjaChmdW5jdGlvbiAob0ZpbHRlckl0ZW06IEZpbHRlckZpZWxkKSB7XG5cdFx0XHRhRmlsdGVySWRzLnB1c2gob0ZpbHRlckl0ZW0uZ2V0SWQoKSk7XG5cdFx0fSk7XG5cdFx0YUZpbHRlckZpZWxkcy5zb3J0KGZ1bmN0aW9uIChhRmlyc3RJdGVtOiBGaWx0ZXJGaWVsZCwgYVNlY29uZEl0ZW06IEZpbHRlckZpZWxkKSB7XG5cdFx0XHRsZXQgc0ZpcnN0SXRlbVZGSWQsIHNTZWNvbmRJdGVtVkZJZDtcblx0XHRcdChhRmlyc3RJdGVtLmdldENvbnRlbnQoKSBhcyB1bmtub3duIGFzIENvbnRyb2xbXSkuZm9yRWFjaChmdW5jdGlvbiAob0lubmVyQ29udHJvbDogQ29udHJvbCkge1xuXHRcdFx0XHRpZiAob0lubmVyQ29udHJvbC5pc0E8RmlsdGVyRmllbGQ+KFwic2FwLnVpLm1kYy5GaWx0ZXJGaWVsZFwiKSkge1xuXHRcdFx0XHRcdHNGaXJzdEl0ZW1WRklkID0gb0lubmVyQ29udHJvbC5nZXRJZCgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHRcdChhU2Vjb25kSXRlbS5nZXRDb250ZW50KCkgYXMgdW5rbm93biBhcyBDb250cm9sW10pLmZvckVhY2goZnVuY3Rpb24gKG9Jbm5lckNvbnRyb2w6IENvbnRyb2wpIHtcblx0XHRcdFx0aWYgKG9Jbm5lckNvbnRyb2wuaXNBPEZpbHRlckZpZWxkPihcInNhcC51aS5tZGMuRmlsdGVyRmllbGRcIikpIHtcblx0XHRcdFx0XHRzU2Vjb25kSXRlbVZGSWQgPSBvSW5uZXJDb250cm9sLmdldElkKCk7XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdFx0cmV0dXJuIGFGaWx0ZXJJZHMuaW5kZXhPZihzRmlyc3RJdGVtVkZJZCA/PyBcIlwiKSAtIGFGaWx0ZXJJZHMuaW5kZXhPZihzU2Vjb25kSXRlbVZGSWQgPz8gXCJcIik7XG5cdFx0fSk7XG5cdFx0cmV0dXJuIGFGaWx0ZXJGaWVsZHM7XG5cdH1cblxuXHRfY3JlYXRlSW5uZXJMYXlvdXQoKTogdm9pZCB7XG5cdFx0dGhpcy5fb0ZpbHRlckJhckxheW91dCA9IG5ldyBGaWx0ZXJDb250YWluZXIoKTtcblx0XHR0aGlzLl9jTGF5b3V0SXRlbSA9IEZpbHRlckl0ZW1MYXlvdXQ7XG5cdFx0dGhpcy5fb0ZpbHRlckJhckxheW91dC5nZXRJbm5lcigpLmFkZFN0eWxlQ2xhc3MoXCJzYXBVaU1kY0ZpbHRlckJhckJhc2VBRkxheW91dFwiKTtcblx0XHR0aGlzLl9hZGRCdXR0b25zKCk7XG5cblx0XHQvLyBUT0RPOiBDaGVjayB3aXRoIE1EQyBpZiB0aGVyZSBpcyBhIGJldHRlciB3YXkgdG8gbG9hZCB2aXN1YWwgZmlsdGVyIG9uIHRoZSBiYXNpcyBvZiBjb250cm9sIHByb3BlcnR5XG5cdFx0Ly8gX2NyZWF0ZUlubmVyTGF5b3V0IGlzIGNhbGxlZCBvbiBJbml0IGJ5IHRoZSBmaWx0ZXIgYmFyIGJhc2UuXG5cdFx0Ly8gVGhpcyBtZWFuIHRoYXQgd2UgZG8gbm90IGhhdmUgYWNjZXNzIHRvIHRoZSBjb250cm9sIHByb3BlcnRpZXMgeWV0XG5cdFx0Ly8gYW5kIGhlbmNlIHdlIGNhbm5vdCBkZWNpZGUgb24gdGhlIGJhc2lzIG9mIGNvbnRyb2wgcHJvcGVydGllcyB3aGV0aGVyIGluaXRpYWwgbGF5b3V0IHNob3VsZCBiZSBjb21wYWN0IG9yIHZpc3VhbFxuXHRcdC8vIEFzIGEgcmVzdWx0IHdlIGhhdmUgdG8gZG8gdGhpcyB3b3JrYXJvdW5kIHRvIGFsd2F5cyBsb2FkIHRoZSBjb21wYWN0IGxheW91dCBieSBkZWZhdWx0XG5cdFx0Ly8gQW5kIHRvb2dsZSB0aGUgc2FtZSBpbiBjYXNlIHRoZSBpbml0aWFsTGF5b3V0IHdhcyBzdXBwb3NlZCB0byBiZSB2aXN1YWwgZmlsdGVycy5cblx0XHRjb25zdCBvSW5uZXJMYXlvdXQgPSB0aGlzLl9vRmlsdGVyQmFyTGF5b3V0LmdldElubmVyKCk7XG5cdFx0Y29uc3Qgb0ZpbHRlckNvbnRhaW5lcklubmVyTGF5b3V0RXZlbnREZWxlZ2F0ZSA9IHtcblx0XHRcdG9uQmVmb3JlUmVuZGVyaW5nOiAoKTogdm9pZCA9PiB7XG5cdFx0XHRcdGlmICh0aGlzLmluaXRpYWxMYXlvdXQgPT09IFwidmlzdWFsXCIpIHtcblx0XHRcdFx0XHR0aGlzLl90b2dnbGVMYXlvdXQoKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRvSW5uZXJMYXlvdXQucmVtb3ZlRXZlbnREZWxlZ2F0ZShvRmlsdGVyQ29udGFpbmVySW5uZXJMYXlvdXRFdmVudERlbGVnYXRlKTtcblx0XHRcdH1cblx0XHR9O1xuXHRcdG9Jbm5lckxheW91dC5hZGRFdmVudERlbGVnYXRlKG9GaWx0ZXJDb250YWluZXJJbm5lckxheW91dEV2ZW50RGVsZWdhdGUpO1xuXG5cdFx0dGhpcy5zZXRBZ2dyZWdhdGlvbihcImxheW91dFwiLCB0aGlzLl9vRmlsdGVyQmFyTGF5b3V0LCB0cnVlKTtcblx0fVxuXG5cdGV4aXQoKTogdm9pZCB7XG5cdFx0c3VwZXIuZXhpdCgpO1xuXHRcdC8vIFNvbWV0aW1lcyB1cG9uIGV4dGVybmFsIG5hdmlnYXRpb24gdGhpcy5fU2VnbWVudGVkQnV0dG9uIGlzIGFscmVhZHkgZGVzdHJveWVkXG5cdFx0Ly8gc28gY2hlY2sgaWYgaXQgZXhpc3RzIGFuZCB0aGVuIG9ubHkgcmVtb3ZlIHN0dWZmXG5cdFx0aWYgKHRoaXMuX29TZWdtZW50ZWRCdXR0b24pIHtcblx0XHRcdHRoaXMuX29TZWdtZW50ZWRCdXR0b24uZGV0YWNoRXZlbnQoXCJzZWxlY3Rpb25DaGFuZ2VcIiwgdGhpcy5fdG9nZ2xlTGF5b3V0KTtcblx0XHRcdGRlbGV0ZSB0aGlzLl9vU2VnbWVudGVkQnV0dG9uO1xuXHRcdH1cblx0fVxuXG5cdGdldFNlZ21lbnRlZEJ1dHRvbigpOiBTZWdtZW50ZWRCdXR0b24gfCB1bmRlZmluZWQge1xuXHRcdHJldHVybiB0aGlzLl9vU2VnbWVudGVkQnV0dG9uO1xuXHR9XG5cblx0LyoqXG5cdCAqIEVuYWJsZSBvciBkaXNhYmxlIHJlcXVlc3RzIHRoYXQgYXJlIGluaXRpYXRlZCBieSB0aGUgRmlsdGVyQmFyLlxuXHQgKlxuXHQgKiBUbyBiZSB1c2VkIHRvIHN1c3BlbmQgb3IgcmVzdW1lIHJlcXVlc3RzKHRhYmxlIG9yIHZpc3VhbCBmaWx0ZXJzKSB3aGVuIHRoZSBmaWx0ZXIgYmFyIGlzIGJlaW5nIG1vZGlmaWVkIG9yIHdoZW4gdGhlIHVzZXIgaXMgcHJvZ3JhbW1hdGljYWxseSBpbnRlcmFjdGluZyB3aXRoIHRoZSBmaWx0ZXIgY29udHJvbHMuXG5cdCAqIFRoaXMgbWV0aG9kIGlzIGFsc28gdXNlZCB0byBjb250cm9sIHdoZXRoZXIgdGhlIHZpc3VhbCBmaWx0ZXIgY2hhcnQgYmluZGluZyBzaG91bGQgYmUgcmVzdW1lZC9zdXNwZW5kZWQgYmFzZWQgb24gdGhlIGRpZmYgc3RhdGUsIGFuZCByZXN1bWVkIGFmdGVyIGNvbmRpdG9uIG1vZGVsIHVwZGF0ZS5cblx0ICogQHBhcmFtIGVuYWJsZSBFbmFibGUgb3IgZGlzYWJsZSByZXF1ZXN0c1xuXHQgKiBAcGFyYW0gZGlmZlN0YXRlIElmIHRoZXJlIGlzIGEgZGlmZmVybmNlIGluIHRoZSBleHRlcm5hbCBzdGF0ZSB0aGF0IG5lZWRzIHRvIGJlIGNvbnNpZGVyZWQgZm9yIHZpc3VhbCBmaWx0ZXIgaW4tcGFyYW1ldGVyc1xuXHQgKi9cblx0ZW5hYmxlUmVxdWVzdHMoZW5hYmxlOiBib29sZWFuLCBkaWZmU3RhdGU/OiBFeHRlcm5hbFN0YXRlVHlwZSk6IHZvaWQge1xuXHRcdHRoaXMuc2V0U3VzcGVuZFNlbGVjdGlvbighZW5hYmxlKTtcblx0XHQvLyBXZSBuZWVkIHRvIGVuYWJsZSBvciBkaXNhYmxlIHRoZSB2aXN1YWwgZmlsdGVyIGNoYXJ0IGJpbmRpbmdzIGJhc2VkIG9uIGRpZmYgc3RhdGUuXG5cdFx0dGhpcy5fZW5hYmxlVmlzdWFsRmlsdGVyQ2hhcnRCaW5kaW5ncyhlbmFibGUsIGRpZmZTdGF0ZSk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0IHRoZSBmaWx0ZXIgbGF5b3V0IGJ5IGl0cyB0eXBlLlxuXHQgKiBAcGFyYW0gbGF5b3V0Q2xhc3NOYW1lIFRoZSBjbGFzcyBuYW1lIG9mIHRoZSBmaWx0ZXIgbGF5b3V0IHRvIGJlIHJldHVybmVkLlxuXHQgKiBAdGVtcGxhdGUgVCBUaGUgdHlwZSBvZiB0aGUgZmlsdGVyIGxheW91dCB0byBiZSByZXR1cm5lZC5cblx0ICogQHR5cGVkZWYge0lGaWx0ZXJDb250YWluZXJ9IFQgVGhlIHR5cGUgb2YgdGhlIGZpbHRlciBsYXlvdXQgdG8gYmUgcmV0dXJuZWRcblx0ICogQHJldHVybnMgQ29ycmVzcG9uZGluZyBmaWx0ZXIgbGF5b3V0IGlmIGl0IGV4aXN0cywgb3RoZXJ3aXNlIHVuZGVmaW5lZC5cblx0ICovXG5cdF9nZXRGaWx0ZXJMYXlvdXRCeVR5cGU8VCBleHRlbmRzIElGaWx0ZXJDb250YWluZXI+KGxheW91dENsYXNzTmFtZTogQ29udGFpbmVyVHlwZSk6IFQgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IHJldEZpbHRlckxheW91dCA9IHRoaXMuX29GaWx0ZXJCYXJMYXlvdXQuaXNBPFQ+KGxheW91dENsYXNzTmFtZSkgPyB0aGlzLl9vRmlsdGVyQmFyTGF5b3V0IDogdW5kZWZpbmVkO1xuXHRcdHJldHVybiAhcmV0RmlsdGVyTGF5b3V0ICYmIHRoaXMuX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXQ/LmlzQTxUPihsYXlvdXRDbGFzc05hbWUpXG5cdFx0XHQ/IHRoaXMuX29TZWNvbmRhcnlGaWx0ZXJCYXJMYXlvdXRcblx0XHRcdDogcmV0RmlsdGVyTGF5b3V0O1xuXHR9XG5cblx0X2VuYWJsZVZpc3VhbEZpbHRlckNoYXJ0QmluZGluZ3MoZW5hYmxlOiBib29sZWFuLCBkaWZmU3RhdGU/OiBFeHRlcm5hbFN0YXRlVHlwZSk6IHZvaWQge1xuXHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWNvbW1lbnRcblx0XHQvLyBAdHMtaWdub3JlXG5cdFx0Y29uc3QgdmlzdWFsRmlsdGVyTGF5b3V0ID0gdGhpcy5fZ2V0RmlsdGVyTGF5b3V0QnlUeXBlPFZpc3VhbEZpbHRlckNvbnRhaW5lcj4oVklTVUFMX0ZJTFRFUl9DT05UQUlORVIpO1xuXHRcdGlmICh2aXN1YWxGaWx0ZXJMYXlvdXQpIHtcblx0XHRcdHZpc3VhbEZpbHRlckxheW91dC5lbmFibGVDaGFydEJpbmRpbmcoZW5hYmxlLCBkaWZmU3RhdGUpO1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblxuXHRcdC8vIElmIGluaXRpYWwgbGF5b3V0IGlzIGNvbXBhY3QsIHdlIGRvbid0IGhhdmUgdGhlIHZpc3VhbCBmaWx0ZXIgbGF5b3V0KGNvbnRhaW5lcikgYXZhaWxhYmxlIHlldCB1bnRpbCB0aGUgdXNlciB0b2dnbGVzIHRvIHZpc3VhbCBmaWx0ZXIgbGF5b3V0LlxuXHRcdC8vIFNvIHdlIG5lZWQgdG8gY2hlY2sgaWYgdGhlIGNvbXBhY3QgZmlsdGVyIGxheW91dCBoYXMgdmlzdWFsIGZpbHRlcnMgYW5kIGVuYWJsZS9kaXNhYmxlIHRoZSBjaGFydCBiaW5kaW5nIGZvciB0aG9zZSB2aXN1YWwgZmlsdGVycy5cblx0XHRjb25zdCBjb21wYWN0RmlsdGVyTGF5b3V0ID0gdGhpcy5fZ2V0RmlsdGVyTGF5b3V0QnlUeXBlPEZpbHRlckNvbnRhaW5lcj4oRklMVEVSX0NPTlRBSU5FUik7XG5cdFx0aWYgKGNvbXBhY3RGaWx0ZXJMYXlvdXQpIHtcblx0XHRcdGNvbnN0IHZpc3VhbEZpbHRlcnMgPSBjb21wYWN0RmlsdGVyTGF5b3V0LmdldEFsbFZpc3VhbEZpbHRlckZpZWxkcygpO1xuXHRcdFx0aWYgKHZpc3VhbEZpbHRlcnMpIHtcblx0XHRcdFx0VmlzdWFsRmlsdGVyVXRpbHMuZW5hYmxlQ2hhcnRCaW5kaW5nKHZpc3VhbEZpbHRlcnMsIGVuYWJsZSwgZGlmZlN0YXRlKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbmludGVyZmFjZSBGaWx0ZXJCYXIge1xuXHRfYWRkQnV0dG9ucygpOiB2b2lkO1xufVxuZXhwb3J0IGRlZmF1bHQgRmlsdGVyQmFyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0VBa0JBLE1BQU1BLHVCQUF1QixHQUFHLHdEQUF3RDtJQUN2RkMsZ0JBQWdCLEdBQUcsa0RBQWtEO0VBQUMsSUFJakVDLFNBQVMsSUFBQUMsSUFBQSxHQURkQyxjQUFjLENBQUMsa0NBQWtDLENBQUMsRUFBQUMsS0FBQSxHQUVqREMsUUFBUSxDQUFDO0lBQUVDLElBQUksRUFBRSxRQUFRO0lBQUVDLFlBQVksRUFBRTtFQUFVLENBQUMsQ0FBQyxFQUFBQyxLQUFBLEdBR3JESCxRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFLFNBQVM7SUFBRUMsWUFBWSxFQUFFO0VBQU0sQ0FBQyxDQUFDLEVBQUFFLEtBQUEsR0FNbERDLFdBQVcsQ0FBQztJQUNaSixJQUFJLEVBQUUsdUJBQXVCO0lBQzdCSyxRQUFRLEVBQUU7RUFDWCxDQUFDLENB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R2tFLFNBQVM7TUFDM0csT0FBTyxDQUFDRCxlQUFlLElBQUksSUFBSSxDQUFDL0QsMEJBQTBCLEVBQUVELEdBQUcsQ0FBSStELGVBQWUsQ0FBQyxHQUNoRixJQUFJLENBQUM5RCwwQkFBMEIsR0FDL0IrRCxlQUFlO0lBQ25CLENBQUM7SUFBQW5GLE1BQUEsQ0FFRGdGLGdDQUFnQyxHQUFoQyxTQUFBQSxnQ0FBZ0NBLENBQUNILE1BQWUsRUFBRUMsU0FBNkIsRUFBUTtNQUN0RjtNQUNBO01BQ0EsTUFBTU8sa0JBQWtCLEdBQUcsSUFBSSxDQUFDSixzQkFBc0IsQ0FBd0I3Ryx1QkFBdUIsQ0FBQztNQUN0RyxJQUFJaUgsa0JBQWtCLEVBQUU7UUFDdkJBLGtCQUFrQixDQUFDQyxrQkFBa0IsQ0FBQ1QsTUFBTSxFQUFFQyxTQUFTLENBQUM7UUFDeEQ7TUFDRDs7TUFFQTtNQUNBO01BQ0EsTUFBTVMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDTixzQkFBc0IsQ0FBa0I1RyxnQkFBZ0IsQ0FBQztNQUMxRixJQUFJa0gsbUJBQW1CLEVBQUU7UUFDeEIsTUFBTUMsYUFBYSxHQUFHRCxtQkFBbUIsQ0FBQ3RELHdCQUF3QixDQUFDLENBQUM7UUFDcEUsSUFBSXVELGFBQWEsRUFBRTtVQUNsQkMsaUJBQWlCLENBQUNILGtCQUFrQixDQUFDRSxhQUFhLEVBQUVYLE1BQU0sRUFBRUMsU0FBUyxDQUFDO1FBQ3ZFO01BQ0Q7SUFDRCxDQUFDO0lBQUEsT0FBQXhHLFNBQUE7RUFBQSxFQXRPc0JvSCxZQUFZLEdBQUFoRyxXQUFBLEdBQUFpRyx5QkFBQSxDQUFBekcsT0FBQSxDQUFBZSxTQUFBLG9CQUFBeEIsS0FBQTtJQUFBbUgsWUFBQTtJQUFBQyxVQUFBO0lBQUFDLFFBQUE7SUFBQUMsV0FBQTtFQUFBLElBQUFwRyxZQUFBLEdBQUFnRyx5QkFBQSxDQUFBekcsT0FBQSxDQUFBZSxTQUFBLGtDQUFBcEIsS0FBQTtJQUFBK0csWUFBQTtJQUFBQyxVQUFBO0lBQUFDLFFBQUE7SUFBQUMsV0FBQTtFQUFBLElBQUFuRyxZQUFBLEdBQUErRix5QkFBQSxDQUFBekcsT0FBQSxDQUFBZSxTQUFBLG9CQUFBbkIsS0FBQTtJQUFBOEcsWUFBQTtJQUFBQyxVQUFBO0lBQUFDLFFBQUE7SUFBQUMsV0FBQTtFQUFBLElBQUE3RyxPQUFBLE1BQUFELE1BQUE7RUFBQSxPQTJPckJYLFNBQVM7QUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
|
|
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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
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import Log from "sap/base/Log";
|
|
2
2
|
import type { PropertiesOf } from "sap/fe/base/ClassSupport";
|
|
3
3
|
import { association, defineUI5Class, property } from "sap/fe/base/ClassSupport";
|
|
4
|
+
import PromiseKeeper from "sap/fe/core/helpers/PromiseKeeper";
|
|
4
5
|
import FilterContainer from "sap/fe/macros/controls/filterbar/FilterContainer";
|
|
5
6
|
import VisualFilterContainer from "sap/fe/macros/controls/filterbar/VisualFilterContainer";
|
|
6
7
|
import type VisualFilter from "sap/fe/macros/visualfilters/VisualFilter";
|
|
7
8
|
import type Button from "sap/m/Button";
|
|
8
9
|
import type SegmentedButton from "sap/m/SegmentedButton";
|
|
10
|
+
import type { ManagedObject$ModelContextChangeEvent } from "sap/ui/base/ManagedObject";
|
|
9
11
|
import type Control from "sap/ui/core/Control";
|
|
10
12
|
import { default as Element } from "sap/ui/core/Element";
|
|
11
13
|
import type { $FilterBarSettings } from "sap/ui/mdc/FilterBar";
|
|
@@ -45,14 +47,53 @@ class FilterBar extends MdcFilterBar {
|
|
|
45
47
|
}
|
|
46
48
|
|
|
47
49
|
private async _initializeStatus(): Promise<void> {
|
|
48
|
-
|
|
50
|
+
// Promise keeper to hold the process.
|
|
51
|
+
this._initializedPromiseKeeper = new PromiseKeeper<void>();
|
|
52
|
+
|
|
53
|
+
// Awaits
|
|
54
|
+
await this.initializedWithMetadata();
|
|
55
|
+
await this.waitForModelToBeSet();
|
|
56
|
+
|
|
57
|
+
this._initializedPromiseKeeper.resolve();
|
|
49
58
|
this._isInitialized = true;
|
|
50
59
|
}
|
|
51
60
|
|
|
61
|
+
private async waitForModelToBeSet(): Promise<void> {
|
|
62
|
+
if (this.getModel()) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
// wait for deafault model to be set.
|
|
66
|
+
const modelIsSetPromiseKeeper = new PromiseKeeper<void>();
|
|
67
|
+
const fnCheckAndReset = (e: ManagedObject$ModelContextChangeEvent): void => {
|
|
68
|
+
const filterbar = e.getSource();
|
|
69
|
+
if (filterbar.getModel()) {
|
|
70
|
+
// default model is set.
|
|
71
|
+
filterbar.detachModelContextChange(fnCheckAndReset);
|
|
72
|
+
modelIsSetPromiseKeeper?.resolve();
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
this.attachModelContextChange(fnCheckAndReset);
|
|
76
|
+
return modelIsSetPromiseKeeper.promise;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Checks if the FilterBar is fully initialized.
|
|
81
|
+
* @returns True if the FilterBar is initialized, false otherwise.
|
|
82
|
+
*/
|
|
52
83
|
isInitialized(): boolean {
|
|
53
84
|
return !!this._isInitialized;
|
|
54
85
|
}
|
|
55
86
|
|
|
87
|
+
/**
|
|
88
|
+
* Async equivalent of 'isInitialized' to perform filter bar interactions after the filter bar is ready.
|
|
89
|
+
* @returns Promise that resolves when the filter bar is initialized.
|
|
90
|
+
*/
|
|
91
|
+
async whenInitialized(): Promise<void> {
|
|
92
|
+
return this._initializedPromiseKeeper?.promise;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
private _initializedPromiseKeeper?: PromiseKeeper<void>;
|
|
96
|
+
|
|
56
97
|
private _isInitialized = false;
|
|
57
98
|
|
|
58
99
|
private _oSegmentedButton?: SegmentedButton;
|
|
@@ -18,9 +18,11 @@ sap.ui.define(["sap/fe/base/BuildingBlockBase", "sap/fe/base/ClassSupport", "sap
|
|
|
18
18
|
type: "string"
|
|
19
19
|
}), _dec3 = property({
|
|
20
20
|
type: "string",
|
|
21
|
+
group: "Data",
|
|
21
22
|
bindToState: true
|
|
22
23
|
}), _dec4 = property({
|
|
23
24
|
type: "string",
|
|
25
|
+
group: "Data",
|
|
24
26
|
bindToState: true
|
|
25
27
|
}), _dec(_class = (_class2 = /*#__PURE__*/function (_BuildingBlockBase) {
|
|
26
28
|
function NumberWithUnitOrCurrency(propertiesOrId, properties) {
|
|
@@ -84,4 +86,4 @@ sap.ui.define(["sap/fe/base/BuildingBlockBase", "sap/fe/base/ClassSupport", "sap
|
|
|
84
86
|
_exports = NumberWithUnitOrCurrency;
|
|
85
87
|
return _exports;
|
|
86
88
|
}, false);
|
|
87
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJOdW1iZXJXaXRoVW5pdE9yQ3VycmVuY3kiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJfZGVjMiIsInByb3BlcnR5IiwidHlwZSIsIl9kZWMzIiwiZ3JvdXAiLCJiaW5kVG9TdGF0ZSIsIl9kZWM0IiwiX2NsYXNzIiwiX2NsYXNzMiIsIl9CdWlsZGluZ0Jsb2NrQmFzZSIsInByb3BlcnRpZXNPcklkIiwicHJvcGVydGllcyIsIl90aGlzIiwiY2FsbCIsIl9pbml0aWFsaXplckRlZmluZVByb3BlcnR5IiwiX2Rlc2NyaXB0b3IiLCJfZGVzY3JpcHRvcjIiLCJfZGVzY3JpcHRvcjMiLCJzdGF0ZSIsInZpc2libGUiLCJzaG91bGRCZVZpc2libGUiLCJudW1iZXIiLCJjb250ZW50IiwiY3JlYXRlQ29udGVudCIsIl9leHBvcnRzIiwiX2luaGVyaXRzTG9vc2UiLCJfcHJvdG8iLCJwcm90b3R5cGUiLCJvblN0YXRlQ2hhbmdlIiwiY2hhbmdlZEtleXMiLCJpbmNsdWRlcyIsInZhbHVlIiwidHJpbSIsIl9qc3hzIiwiSEJveCIsInJlbmRlclR5cGUiLCJqdXN0aWZ5Q29udGVudCIsImNsYXNzIiwiYmluZFN0YXRlIiwiY2hpbGRyZW4iLCJfanN4IiwiVGV4dCIsInRleHREaXJlY3Rpb24iLCJ3cmFwcGluZyIsInRleHRBbGlnbiIsInRleHQiLCJ3aWR0aCIsIkJ1aWxkaW5nQmxvY2tCYXNlIiwiX2FwcGx5RGVjb3JhdGVkRGVzY3JpcHRvciIsImNvbmZpZ3VyYWJsZSIsImVudW1lcmFibGUiLCJ3cml0YWJsZSIsImluaXRpYWxpemVyIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJOdW1iZXJXaXRoVW5pdE9yQ3VycmVuY3kudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCdWlsZGluZ0Jsb2NrQmFzZSBmcm9tIFwic2FwL2ZlL2Jhc2UvQnVpbGRpbmdCbG9ja0Jhc2VcIjtcbmltcG9ydCB7IGRlZmluZVVJNUNsYXNzLCBwcm9wZXJ0eSwgdHlwZSBQcm9wZXJ0aWVzT2YgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgSEJveCBmcm9tIFwic2FwL20vSEJveFwiO1xuaW1wb3J0IFRleHQgZnJvbSBcInNhcC9tL1RleHRcIjtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLm1hY3Jvcy5jb250cm9scy5OdW1iZXJXaXRoVW5pdE9yQ3VycmVuY3lcIilcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE51bWJlcldpdGhVbml0T3JDdXJyZW5jeSBleHRlbmRzIEJ1aWxkaW5nQmxvY2tCYXNlPFxuXHRIQm94LFxuXHR7IG51bWJlcjogc3RyaW5nOyB1bml0T3JDdXJyZW5jeTogc3RyaW5nOyB2aXNpYmxlOiBib29sZWFuIH1cbj4ge1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwic3RyaW5nXCJcblx0fSlcblx0cHVibGljIGlkITogc3RyaW5nO1xuXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzdHJpbmdcIixcblx0XHRncm91cDogXCJEYXRhXCIsXG5cdFx0YmluZFRvU3RhdGU6IHRydWVcblx0fSlcblx0cHVibGljIG51bWJlciE6IHN0cmluZyB8IG51bWJlcjtcblxuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwic3RyaW5nXCIsXG5cdFx0Z3JvdXA6IFwiRGF0YVwiLFxuXHRcdGJpbmRUb1N0YXRlOiB0cnVlXG5cdH0pXG5cdHB1YmxpYyB1bml0T3JDdXJyZW5jeSE6IHN0cmluZztcblxuXHRjb25zdHJ1Y3Rvcihwcm9wZXJ0aWVzT3JJZDogc3RyaW5nIHwgUHJvcGVydGllc09mPE51bWJlcldpdGhVbml0T3JDdXJyZW5jeT4sIHByb3BlcnRpZXM/OiBQcm9wZXJ0aWVzT2Y8TnVtYmVyV2l0aFVuaXRPckN1cnJlbmN5Pikge1xuXHRcdHN1cGVyKHByb3BlcnRpZXNPcklkLCBwcm9wZXJ0aWVzKTtcblx0XHR0aGlzLnN0YXRlLnZpc2libGUgPSB0aGlzLnNob3VsZEJlVmlzaWJsZSh0aGlzLnN0YXRlLm51bWJlcik7XG5cdFx0dGhpcy5jb250ZW50ID0gdGhpcy5jcmVhdGVDb250ZW50KCk7XG5cdH1cblxuXHRvblN0YXRlQ2hhbmdlKGNoYW5nZWRLZXlzOiBzdHJpbmdbXSk6IHZvaWQge1xuXHRcdGlmIChjaGFuZ2VkS2V5cz8uaW5jbHVkZXMoXCJudW1iZXJcIikpIHtcblx0XHRcdHRoaXMuc3RhdGUudmlzaWJsZSA9IHRoaXMuc2hvdWxkQmVWaXNpYmxlKHRoaXMuc3RhdGUubnVtYmVyKTtcblx0XHR9XG5cdH1cblxuXHRwcml2YXRlIHNob3VsZEJlVmlzaWJsZSh2YWx1ZTogdW5rbm93bik6IGJvb2xlYW4ge1xuXHRcdHJldHVybiAodHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiICYmIHZhbHVlLnRyaW0oKSAhPT0gXCJcIikgfHwgKHR5cGVvZiB2YWx1ZSA9PT0gXCJudW1iZXJcIiAmJiB2YWx1ZSAhPT0gMCk7XG5cdH1cblxuXHRjcmVhdGVDb250ZW50KCk6IEhCb3gge1xuXHRcdHJldHVybiAoXG5cdFx0XHQ8SEJveCByZW5kZXJUeXBlPVwiQmFyZVwiIGp1c3RpZnlDb250ZW50PVwiRW5kXCIgY2xhc3M9XCJzYXBGZUNvbnRyb2xzVW5pdEN1cnJlbmN5SGJveFwiIHZpc2libGU9e3RoaXMuYmluZFN0YXRlKFwidmlzaWJsZVwiKX0+XG5cdFx0XHRcdDxUZXh0IHRleHREaXJlY3Rpb249XCJMVFJcIiB3cmFwcGluZz1cImZhbHNlXCIgdGV4dEFsaWduPVwiRW5kXCIgdGV4dD17dGhpcy5iaW5kU3RhdGUoXCJudW1iZXJcIil9PjwvVGV4dD5cblx0XHRcdFx0PFRleHQgdGV4dERpcmVjdGlvbj1cIkxUUlwiIHdyYXBwaW5nPVwiZmFsc2VcIiB0ZXh0QWxpZ249XCJFbmRcIiB0ZXh0PXt0aGlzLmJpbmRTdGF0ZShcInVuaXRPckN1cnJlbmN5XCIpfSB3aWR0aD1cIjMuM2VtXCI+PC9UZXh0PlxuXHRcdFx0PC9IQm94PlxuXHRcdCk7XG5cdH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7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
|
|
@@ -15,12 +15,14 @@ export default class NumberWithUnitOrCurrency extends BuildingBlockBase<
|
|
|
15
15
|
|
|
16
16
|
@property({
|
|
17
17
|
type: "string",
|
|
18
|
+
group: "Data",
|
|
18
19
|
bindToState: true
|
|
19
20
|
})
|
|
20
21
|
public number!: string | number;
|
|
21
22
|
|
|
22
23
|
@property({
|
|
23
24
|
type: "string",
|
|
25
|
+
group: "Data",
|
|
24
26
|
bindToState: true
|
|
25
27
|
})
|
|
26
28
|
public unitOrCurrency!: string;
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
sap.ui.define(["sap/fe/base/BindingToolkit", "sap/fe/base/ClassSupport", "sap/fe/core/CommonUtils", "sap/fe/core/buildingBlocks/BuildingBlock", "sap/m/RadioButton", "sap/m/RadioButtonGroup", "sap/ui/core/CustomData", "sap/fe/base/jsx-runtime/jsx"], function (BindingToolkit, ClassSupport, CommonUtils, BuildingBlock, RadioButton, RadioButtonGroup, CustomData, _jsx) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
|
-
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11;
|
|
8
|
+
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12;
|
|
9
9
|
var _exports = {};
|
|
10
10
|
var property = ClassSupport.property;
|
|
11
11
|
var defineUI5Class = ClassSupport.defineUI5Class;
|
|
@@ -38,8 +38,12 @@ sap.ui.define(["sap/fe/base/BindingToolkit", "sap/fe/base/ClassSupport", "sap/fe
|
|
|
38
38
|
}), _dec10 = property({
|
|
39
39
|
type: "boolean"
|
|
40
40
|
}), _dec11 = property({
|
|
41
|
-
type: "string"
|
|
41
|
+
type: "string",
|
|
42
|
+
isBindingInfo: true
|
|
42
43
|
}), _dec12 = property({
|
|
44
|
+
type: "string",
|
|
45
|
+
isBindingInfo: true
|
|
46
|
+
}), _dec13 = property({
|
|
43
47
|
type: "string"
|
|
44
48
|
}), _dec(_class = (_class2 = /*#__PURE__*/function (_BuildingBlock) {
|
|
45
49
|
function RadioButtons(properties, others) {
|
|
@@ -62,7 +66,8 @@ sap.ui.define(["sap/fe/base/BindingToolkit", "sap/fe/base/ClassSupport", "sap/fe
|
|
|
62
66
|
_initializerDefineProperty(_this, "radioButtonKeyProperty", _descriptor8, _this);
|
|
63
67
|
_initializerDefineProperty(_this, "horizontalLayout", _descriptor9, _this);
|
|
64
68
|
_initializerDefineProperty(_this, "enabledExpression", _descriptor10, _this);
|
|
65
|
-
_initializerDefineProperty(_this, "
|
|
69
|
+
_initializerDefineProperty(_this, "editableExpression", _descriptor11, _this);
|
|
70
|
+
_initializerDefineProperty(_this, "width", _descriptor12, _this);
|
|
66
71
|
_this.content = _this.createContent();
|
|
67
72
|
return _this;
|
|
68
73
|
}
|
|
@@ -165,6 +170,7 @@ sap.ui.define(["sap/fe/base/BindingToolkit", "sap/fe/base/ClassSupport", "sap/fe
|
|
|
165
170
|
const radioButtonGroup = _jsx(RadioButtonGroup, {
|
|
166
171
|
buttons: buttonsBindingContext,
|
|
167
172
|
select: this.onRadioButtonSelect.bind(this),
|
|
173
|
+
editable: this.editableExpression,
|
|
168
174
|
enabled: this.enabledExpression,
|
|
169
175
|
fieldGroupIds: this.fieldGroupIds,
|
|
170
176
|
ariaLabelledBy: this.ariaLabelledBy,
|
|
@@ -236,7 +242,14 @@ sap.ui.define(["sap/fe/base/BindingToolkit", "sap/fe/base/ClassSupport", "sap/fe
|
|
|
236
242
|
initializer: function () {
|
|
237
243
|
return "";
|
|
238
244
|
}
|
|
239
|
-
}), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, "
|
|
245
|
+
}), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, "editableExpression", [_dec12], {
|
|
246
|
+
configurable: true,
|
|
247
|
+
enumerable: true,
|
|
248
|
+
writable: true,
|
|
249
|
+
initializer: function () {
|
|
250
|
+
return "";
|
|
251
|
+
}
|
|
252
|
+
}), _descriptor12 = _applyDecoratedDescriptor(_class2.prototype, "width", [_dec13], {
|
|
240
253
|
configurable: true,
|
|
241
254
|
enumerable: true,
|
|
242
255
|
writable: true,
|
|
@@ -247,4 +260,4 @@ sap.ui.define(["sap/fe/base/BindingToolkit", "sap/fe/base/ClassSupport", "sap/fe
|
|
|
247
260
|
_exports = RadioButtons;
|
|
248
261
|
return _exports;
|
|
249
262
|
}, false);
|
|
250
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSYWRpb0J1dHRvbnMiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJfZGVjMiIsInByb3BlcnR5IiwidHlwZSIsIl9kZWMzIiwiX2RlYzQiLCJfZGVjNSIsImRlZmF1bHRWYWx1ZSIsIl9kZWM2IiwiX2RlYzciLCJiaW5kVG9TdGF0ZSIsIl9kZWM4IiwiaXNCaW5kaW5nSW5mbyIsIl9kZWM5IiwiX2RlYzEwIiwiX2RlYzExIiwiX2RlYzEyIiwiX2NsYXNzIiwiX2NsYXNzMiIsIl9CdWlsZGluZ0Jsb2NrIiwicHJvcGVydGllcyIsIm90aGVycyIsIl90aGlzIiwiY2FsbCIsIl9pbml0aWFsaXplckRlZmluZVByb3BlcnR5IiwiX2Rlc2NyaXB0b3IiLCJfZGVzY3JpcHRvcjIiLCJfZGVzY3JpcHRvcjMiLCJfZGVzY3JpcHRvcjQiLCJfZGVzY3JpcHRvcjUiLCJfZGVzY3JpcHRvcjYiLCJfZGVzY3JpcHRvcjciLCJfZGVzY3JpcHRvcjgiLCJfZGVzY3JpcHRvcjkiLCJfZGVzY3JpcHRvcjEwIiwiX2Rlc2NyaXB0b3IxMSIsImNvbnRlbnQiLCJjcmVhdGVDb250ZW50IiwiX2V4cG9ydHMiLCJfaW5oZXJpdHNMb29zZSIsIl9wcm90byIsInByb3RvdHlwZSIsIm9uUmFkaW9CdXR0b25TZWxlY3QiLCJldmVudCIsInJhZGlvQnV0dG9uR3JvdXAiLCJnZXRTb3VyY2UiLCJzZWxlY3RlZEluZGV4IiwiZ2V0UGFyYW1ldGVyIiwidW5kZWZpbmVkIiwic2VsZWN0ZWRSYWRpb0J1dHRvbktleSIsImdldEJ1dHRvbnMiLCJnZXRDdXN0b21EYXRhIiwiZ2V0VmFsdWUiLCJzZXRQcm9wZXJ0eSIsIkNvbW1vblV0aWxzIiwiZ2V0VGFyZ2V0VmlldyIsImdldENvbnRyb2xsZXIiLCJfc2lkZUVmZmVjdHMiLCJoYW5kbGVGaWVsZENoYW5nZSIsImJpbmRQcm9wZXJ0eSIsIm5hbWUiLCJiaW5kaW5nSW5mbyIsImZvcm1hdHRlciIsInRhcmdldFR5cGUiLCJzZXRWYWx1ZSIsIm5ld1ZhbHVlIiwidmFsdWUiLCJyYWRpb0J1dHRvbnMiLCJsZW5ndGgiLCJyYWRpb0J1dHRvbkluZGV4IiwicmFkaW9CdXR0b24iLCJrZXlDdXN0b21EYXRhIiwiZ2V0QmluZGluZyIsInNldFNlbGVjdGVkSW5kZXgiLCJidXR0b25zQmluZGluZ0NvbnRleHQiLCJwb3NzaWJsZVZhbHVlcyIsImJpbmRTdGF0ZSIsInJhZGlvQnV0dG9uVGV4dFByb3BlcnR5IiwicGF0aEluTW9kZWwiLCJyYWRpb0J1dHRvbktleVByb3BlcnR5IiwicGF0aCIsImZpeGVkVmFsdWVzUGF0aCIsInBhcmFtZXRlcnMiLCIkY291bnQiLCJldmVudHMiLCJkYXRhUmVjZWl2ZWQiLCJldiIsImNvdW50IiwiZ2V0Q291bnQiLCJob3Jpem9udGFsTGF5b3V0Iiwic2V0Q29sdW1ucyIsImdldFNlbGVjdGVkSW5kZXgiLCJiaW5kIiwiX2pzeCIsIlJhZGlvQnV0dG9uR3JvdXAiLCJidXR0b25zIiwic2VsZWN0IiwiZW5hYmxlZCIsImVuYWJsZWRFeHByZXNzaW9uIiwiZmllbGRHcm91cElkcyIsImFyaWFMYWJlbGxlZEJ5Iiwid2lkdGgiLCJjb2x1bW5zIiwiY2hpbGRyZW4iLCJSYWRpb0J1dHRvbiIsInRleHQiLCJjdXN0b21EYXRhIiwiQ3VzdG9tRGF0YSIsImNsYXNzIiwidG9vbHRpcCIsIkJ1aWxkaW5nQmxvY2siLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yIiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsIndyaXRhYmxlIiwiaW5pdGlhbGl6ZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIlJhZGlvQnV0dG9ucy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQcmltaXRpdmVUeXBlIH0gZnJvbSBcInNhcC9mZS9iYXNlL0JpbmRpbmdUb29sa2l0XCI7XG5pbXBvcnQgeyBwYXRoSW5Nb2RlbCB9IGZyb20gXCJzYXAvZmUvYmFzZS9CaW5kaW5nVG9vbGtpdFwiO1xuaW1wb3J0IHR5cGUgeyBQcm9wZXJ0aWVzT2YgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgeyBkZWZpbmVVSTVDbGFzcywgcHJvcGVydHkgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgQ29tbW9uVXRpbHMgZnJvbSBcInNhcC9mZS9jb3JlL0NvbW1vblV0aWxzXCI7XG5pbXBvcnQgQnVpbGRpbmdCbG9jayBmcm9tIFwic2FwL2ZlL2NvcmUvYnVpbGRpbmdCbG9ja3MvQnVpbGRpbmdCbG9ja1wiO1xuaW1wb3J0IFJhZGlvQnV0dG9uIGZyb20gXCJzYXAvbS9SYWRpb0J1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBSYWRpb0J1dHRvbkdyb3VwJFNlbGVjdEV2ZW50IH0gZnJvbSBcInNhcC9tL1JhZGlvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCBSYWRpb0J1dHRvbkdyb3VwIGZyb20gXCJzYXAvbS9SYWRpb0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgdHlwZSBFdmVudCBmcm9tIFwic2FwL3VpL2Jhc2UvRXZlbnRcIjtcbmltcG9ydCB0eXBlIHsgQWdncmVnYXRpb25CaW5kaW5nSW5mbywgUHJvcGVydHlCaW5kaW5nSW5mbyB9IGZyb20gXCJzYXAvdWkvYmFzZS9NYW5hZ2VkT2JqZWN0XCI7XG5pbXBvcnQgdHlwZSB7ICRDb250cm9sU2V0dGluZ3MgfSBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IEN1c3RvbURhdGEgZnJvbSBcInNhcC91aS9jb3JlL0N1c3RvbURhdGFcIjtcbmltcG9ydCB0eXBlIFByb3BlcnR5QmluZGluZyBmcm9tIFwic2FwL3VpL21vZGVsL1Byb3BlcnR5QmluZGluZ1wiO1xuaW1wb3J0IHR5cGUgT0RhdGFMaXN0QmluZGluZyBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L09EYXRhTGlzdEJpbmRpbmdcIjtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLm1hY3Jvcy5jb250cm9scy5SYWRpb0J1dHRvbnNcIilcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJhZGlvQnV0dG9ucyBleHRlbmRzIEJ1aWxkaW5nQmxvY2s8UmFkaW9CdXR0b25Hcm91cCwgeyBwb3NzaWJsZVZhbHVlczogeyB0ZXh0OiBzdHJpbmc7IGtleTogbnVtYmVyIH1bXSB9PiB7XG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzdHJpbmdcIlxuXHR9KVxuXHRwdWJsaWMgaWQhOiBzdHJpbmc7XG5cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcInN0cmluZ1tdXCJcblx0fSlcblx0cHVibGljIGZpZWxkR3JvdXBJZHM/OiBzdHJpbmdbXTtcblxuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwic3RyaW5nXCJcblx0fSlcblx0cHVibGljIHJlcXVpcmVkRXhwcmVzc2lvbj86IHN0cmluZztcblxuXHQvLyBXZSB1c2UgdHlwZSAncmF3JyBoZXJlIGJlY2F1c2Ugb3RoZXJ3aXNlIHRoZSBiaW5kaW5nIHdpbGwgcmVmdXNlIHRvIHVwZGF0ZSB0aGUgdmFsdWUsIGFzIGl0IGRvZXNuJ3Qga25vdyBob3cgdG8gY29udmVydCBmcm9tIGFueSB0byBzdHJpbmdcblx0Ly8gU2V0dGluZyBpdCB0byByYXcgbWFrZSBzdXJlIHRoYXQgbm8gY29udmVyc2lvbiBpcyBhdHRlbXB0ZWQgd2hpY2ggdGhlbiB3b3Jrc1xuXHQvLyBEZWZhdWx0IHZhbHVlIGlzIHNldCB0byBudWxsIHRvIGFsbG93IGhhdmluZyBhIHJhZGlvIGJ1dHRvbiBwb2ludGluZyB0byBhIGBudWxsYCB2YWx1ZVxuXHRAcHJvcGVydHkoeyB0eXBlOiBcImFueVwiLCBkZWZhdWx0VmFsdWU6IG51bGwgfSlcblx0cHVibGljIHZhbHVlITogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbjtcblxuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwic3RyaW5nXCJcblx0fSlcblx0cHVibGljIGZpeGVkVmFsdWVzUGF0aCE6IGB7JHtzdHJpbmd9fWA7XG5cblx0LyoqXG5cdCAqIEFuIGFycmF5IG9mIHBvc3NpYmxlLCBmaXhlZCB2YWx1ZSBsaXN0IG9iamVjdFxuXHQgKiBJZiB0aGlzIHByb3BlcnR5IGlzIHVzZWQsIHRoZSBmaXhlZFZhbHVlc1BhdGggcHJvcGVydHkgaXMgaWdub3JlZC5cblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJvYmplY3RcIixcblx0XHRiaW5kVG9TdGF0ZTogdHJ1ZVxuXHR9KVxuXHRwdWJsaWMgcG9zc2libGVWYWx1ZXM/OiB7IGtleTogUHJpbWl0aXZlVHlwZTsgdGV4dDogc3RyaW5nIH1bXTtcblxuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYW55XCIsXG5cdFx0aXNCaW5kaW5nSW5mbzogdHJ1ZVxuXHR9KVxuXHRwdWJsaWMgcmFkaW9CdXR0b25UZXh0UHJvcGVydHk6IFByb3BlcnR5QmluZGluZ0luZm87XG5cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImFueVwiLFxuXHRcdGlzQmluZGluZ0luZm86IHRydWVcblx0fSlcblx0cHVibGljIHJhZGlvQnV0dG9uS2V5UHJvcGVydHk6IFByb3BlcnR5QmluZGluZ0luZm87XG5cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIlxuXHR9KVxuXHRwdWJsaWMgaG9yaXpvbnRhbExheW91dCA9IGZhbHNlO1xuXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzdHJpbmdcIlxuXHR9KVxuXHRwdWJsaWMgZW5hYmxlZEV4cHJlc3Npb24gPSBcIlwiO1xuXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzdHJpbmdcIlxuXHR9KVxuXHRwdWJsaWMgd2lkdGggPSBcIjEwMCVcIjtcblxuXHRjb25zdHJ1Y3Rvcihwcm9wZXJ0aWVzOiAkQ29udHJvbFNldHRpbmdzICYgUHJvcGVydGllc09mPFJhZGlvQnV0dG9ucz4sIG90aGVycz86ICRDb250cm9sU2V0dGluZ3MpIHtcblx0XHRzdXBlcihwcm9wZXJ0aWVzLCBvdGhlcnMpO1xuXHRcdHRoaXMuY29udGVudCA9IHRoaXMuY3JlYXRlQ29udGVudCgpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEV2ZW50IGhhbmRsZXIgZm9yIHRoZSBSYWRpb0J1dHRvbkdyb3VwJ3Mgc2VsZWN0IGV2ZW50LlxuXHQgKiBXZSBuZWVkIHRvIHBhcnNlIGZyb20gdGhlIHJhZGlvIGJ1dHRvbiBncm91cCBpbmRleCB0byB0aGUgbW9kZWwgdmFsdWUuXG5cdCAqIEBwYXJhbSBldmVudFxuXHQgKi9cblx0b25SYWRpb0J1dHRvblNlbGVjdChldmVudDogUmFkaW9CdXR0b25Hcm91cCRTZWxlY3RFdmVudCk6IHZvaWQge1xuXHRcdGNvbnN0IHJhZGlvQnV0dG9uR3JvdXA6IFJhZGlvQnV0dG9uR3JvdXAgPSBldmVudC5nZXRTb3VyY2UoKTtcblx0XHRjb25zdCBzZWxlY3RlZEluZGV4ID0gZXZlbnQuZ2V0UGFyYW1ldGVyKFwic2VsZWN0ZWRJbmRleFwiKTtcblx0XHRpZiAoc2VsZWN0ZWRJbmRleCAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRjb25zdCBzZWxlY3RlZFJhZGlvQnV0dG9uS2V5OiBzdHJpbmcgPSByYWRpb0J1dHRvbkdyb3VwPy5nZXRCdXR0b25zKClbc2VsZWN0ZWRJbmRleF0uZ2V0Q3VzdG9tRGF0YSgpWzBdLmdldFZhbHVlKCk7XG5cdFx0XHQvLyBOb3cgd2UgaGF2ZSB0aGUgdmFsdWUgPT4gd3JpdGUgaXQgdG8gdGhlIG1vZGVsIVxuXHRcdFx0dGhpcy5zZXRQcm9wZXJ0eShcInZhbHVlXCIsIHNlbGVjdGVkUmFkaW9CdXR0b25LZXkpO1xuXHRcdFx0Q29tbW9uVXRpbHMuZ2V0VGFyZ2V0VmlldyhyYWRpb0J1dHRvbkdyb3VwKT8uZ2V0Q29udHJvbGxlcigpPy5fc2lkZUVmZmVjdHM/LmhhbmRsZUZpZWxkQ2hhbmdlKGV2ZW50LCB0cnVlKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogVGhlIHZhbHVlIHByb3BlcnR5IHR5cGUgbmVlZHMgdG8gYmUgaW5pdGlhbGx5ICdhbnknIGJ1dCBoYXMgdG8gYmUgY2hhbmdlZCB0byAncmF3JyB0byBhdm9pZCBwYXJzaW5nIGVycm9ycy5cblx0ICogQHBhcmFtIG5hbWVcblx0ICogQHBhcmFtIGJpbmRpbmdJbmZvXG5cdCAqIEByZXR1cm5zIFRoaXNcblx0ICovXG5cdGJpbmRQcm9wZXJ0eShuYW1lOiBzdHJpbmcsIGJpbmRpbmdJbmZvOiBQcm9wZXJ0eUJpbmRpbmdJbmZvKTogdGhpcyB7XG5cdFx0aWYgKG5hbWUgPT09IFwidmFsdWVcIiAmJiAhYmluZGluZ0luZm8uZm9ybWF0dGVyKSB7XG5cdFx0XHQvLyBub3QgaWYgYSBmb3JtYXR0ZXIgaXMgdXNlZCwgYXMgdGhpcyBuZWVkcyB0byBiZSBleGVjdXRlZFxuXHRcdFx0YmluZGluZ0luZm8udGFyZ2V0VHlwZSA9IFwicmF3XCI7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHN1cGVyLmJpbmRQcm9wZXJ0eShuYW1lLCBiaW5kaW5nSW5mbyk7XG5cdH1cblxuXHQvKipcblx0ICogVGhpcyBpcyBiZWluZyBjYWxsZWQgd2hlbiB0aGUgbW9kZWwgZmV0Y2hlcyB0aGUgZGF0YSBmcm9tIHRoZSBiYWNrZW5kIG9yIHdoZW4gd2UgY2FsbCBpdCBkaXJlY3RseS5cblx0ICogV2UgbmVlZCB0byBwYXJzZSBmcm9tIHRoZSBtb2RlbCB2YWx1ZSB0byB0aGUgcmFkaW8gYnV0dG9uIGdyb3VwIGluZGV4LlxuXHQgKiBAcGFyYW0gbmV3VmFsdWVcblx0ICovXG5cdHNldFZhbHVlKG5ld1ZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuKTogdm9pZCB7XG5cdFx0dGhpcy52YWx1ZSA9IG5ld1ZhbHVlO1xuXHRcdGlmICh0aGlzLmNvbnRlbnQpIHtcblx0XHRcdC8vIENvbXB1dGUgdGhlIG5ldyByYWRpbyBidXR0b24gaW5kZXhcblx0XHRcdGNvbnN0IHJhZGlvQnV0dG9ucyA9IHRoaXMuY29udGVudC5nZXRCdXR0b25zKCk7XG5cdFx0XHRpZiAocmFkaW9CdXR0b25zLmxlbmd0aCAhPSAwKSB7XG5cdFx0XHRcdGxldCByYWRpb0J1dHRvbkluZGV4ID0gMDtcblx0XHRcdFx0Zm9yIChjb25zdCByYWRpb0J1dHRvbiBvZiByYWRpb0J1dHRvbnMpIHtcblx0XHRcdFx0XHRjb25zdCBrZXlDdXN0b21EYXRhID0gKHJhZGlvQnV0dG9uLmdldEN1c3RvbURhdGEoKVswXS5nZXRCaW5kaW5nKFwidmFsdWVcIikgYXMgUHJvcGVydHlCaW5kaW5nIHwgdW5kZWZpbmVkKT8uZ2V0VmFsdWUoKTtcblx0XHRcdFx0XHRpZiAoa2V5Q3VzdG9tRGF0YSA9PT0gbmV3VmFsdWUpIHtcblx0XHRcdFx0XHRcdHRoaXMuY29udGVudC5zZXRTZWxlY3RlZEluZGV4KHJhZGlvQnV0dG9uSW5kZXgpO1xuXHRcdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyYWRpb0J1dHRvbkluZGV4Kys7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC8vIElmIG5vIHZhbHVlIGNvdWxkIGJlIGZvdW5kIG9yIGlmIHRoZSByYWRpbyBidXR0b24gYWdncmVnYXRpb24gd2FzIGVtcHR5LCB3aGljaCBjYW4gaGFwcGVuIGR1ZSB0b1xuXHRcdFx0Ly8gYSB2ZXJ5IGVhcmx5IGNhbGwgb2Ygc2V0VmFsdWUsIHNldCB0aGUgc2VsZWN0ZWQgdG8gaW5kZXggdG8gLTEgd2hpY2ggcmVzdWx0cyBpbiBOTyByYWRpbyBidXR0b24gdG8gYmUgc2VsZWN0ZWQuXG5cdFx0XHR0aGlzLmNvbnRlbnQuc2V0U2VsZWN0ZWRJbmRleCgtMSk7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIFRoZSBidWlsZGluZyBibG9jayByZW5kZXIgZnVuY3Rpb24uXG5cdCAqIEByZXR1cm5zIFRoZSByYWRpbyBidXR0b24gZ3JvdXBcblx0ICovXG5cdGNyZWF0ZUNvbnRlbnQoKTogUmFkaW9CdXR0b25Hcm91cCB7XG5cdFx0Ly8gU2V0dGluZyB1cCB0aGUgYmluZGluZyBzbyB0aGF0IHdlIGNhbiBhY2Nlc3MgJGNvdW50IGZvciBnZXR0aW5nIHRoZSBudW1iZXJcblx0XHQvLyBvZiBlbnRyaWVzIGluIHRoZSBmaXhlZCB2YWx1ZSBsaXN0IGFuZCBzZXQgdGhpcyBhcyBudW1iZXIgb2YgcmFkaW8gYnV0dG9uIGNvbHVtbnNcblx0XHQvLyBpbiBjYXNlIGhvcml6b250YWwgbGF5b3V0IGlzIGNvbmZpZ3VyZWRcblx0XHRsZXQgYnV0dG9uc0JpbmRpbmdDb250ZXh0OiBBZ2dyZWdhdGlvbkJpbmRpbmdJbmZvIHwgdW5kZWZpbmVkO1xuXHRcdGlmICh0aGlzLnBvc3NpYmxlVmFsdWVzKSB7XG5cdFx0XHRidXR0b25zQmluZGluZ0NvbnRleHQgPSB0aGlzLmJpbmRTdGF0ZShcInBvc3NpYmxlVmFsdWVzXCIpO1xuXHRcdFx0dGhpcy5yYWRpb0J1dHRvblRleHRQcm9wZXJ0eSA9IHBhdGhJbk1vZGVsKFwidGV4dFwiLCBcIiRjb21wb25lbnRTdGF0ZVwiKTtcblx0XHRcdHRoaXMucmFkaW9CdXR0b25LZXlQcm9wZXJ0eSA9IHBhdGhJbk1vZGVsKFwia2V5XCIsIFwiJGNvbXBvbmVudFN0YXRlXCIpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRidXR0b25zQmluZGluZ0NvbnRleHQgPSB7XG5cdFx0XHRcdHBhdGg6IGAke3RoaXMuZml4ZWRWYWx1ZXNQYXRofWAsXG5cdFx0XHRcdHBhcmFtZXRlcnM6IHsgJGNvdW50OiB0cnVlIH0sXG5cdFx0XHRcdGV2ZW50czoge1xuXHRcdFx0XHRcdGRhdGFSZWNlaXZlZDogKGV2OiBFdmVudCk6IHZvaWQgPT4ge1xuXHRcdFx0XHRcdFx0Y29uc3QgY291bnQ6IG51bWJlciB8IHVuZGVmaW5lZCA9IChldi5nZXRTb3VyY2UoKSBhcyB1bmtub3duIGFzIE9EYXRhTGlzdEJpbmRpbmcpPy5nZXRDb3VudCgpO1xuXHRcdFx0XHRcdFx0aWYgKGNvdW50ICE9PSB1bmRlZmluZWQgJiYgdGhpcy5ob3Jpem9udGFsTGF5b3V0KSB7XG5cdFx0XHRcdFx0XHRcdHJhZGlvQnV0dG9uR3JvdXAuc2V0Q29sdW1ucyhjb3VudCk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHQvLyBDaGVjayBpZiB0aGVyZSBpcyBhIHZhbHVlIHN0b3JlZCBmcm9tIHRoZSBpbml0aWFsaXphdGlvbiBidXQgdGhlIHJhZGlvXG5cdFx0XHRcdFx0XHQvLyBidXR0b24gc2VsZWN0aW9uIGhhcyBub3QgeWV0IGJlZW4gZG9uZSBhbmQgZG8gdGhpcyBub3dcblx0XHRcdFx0XHRcdGlmICh0aGlzLnZhbHVlICE9PSB1bmRlZmluZWQgJiYgcmFkaW9CdXR0b25Hcm91cC5nZXRTZWxlY3RlZEluZGV4KCkgPT09IC0xKSB7XG5cdFx0XHRcdFx0XHRcdHRoaXMuc2V0VmFsdWUodGhpcy52YWx1ZSBhcyBzdHJpbmcpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fTtcblx0XHR9XG5cblx0XHR0aGlzLm9uUmFkaW9CdXR0b25TZWxlY3QuYmluZCh0aGlzKTtcblx0XHRjb25zdCByYWRpb0J1dHRvbkdyb3VwID0gKFxuXHRcdFx0PFJhZGlvQnV0dG9uR3JvdXBcblx0XHRcdFx0YnV0dG9ucz17YnV0dG9uc0JpbmRpbmdDb250ZXh0fVxuXHRcdFx0XHRzZWxlY3Q9e3RoaXMub25SYWRpb0J1dHRvblNlbGVjdC5iaW5kKHRoaXMpfVxuXHRcdFx0XHRlbmFibGVkPXt0aGlzLmVuYWJsZWRFeHByZXNzaW9ufVxuXHRcdFx0XHRmaWVsZEdyb3VwSWRzPXt0aGlzLmZpZWxkR3JvdXBJZHN9XG5cdFx0XHRcdGFyaWFMYWJlbGxlZEJ5PXt0aGlzLmFyaWFMYWJlbGxlZEJ5fVxuXHRcdFx0XHR3aWR0aD17dGhpcy53aWR0aH1cblx0XHRcdFx0Y29sdW1ucz17dGhpcy5wb3NzaWJsZVZhbHVlcz8ubGVuZ3RoID8/IDF9XG5cdFx0XHQ+XG5cdFx0XHRcdDxSYWRpb0J1dHRvblxuXHRcdFx0XHRcdHRleHQ9e3RoaXMucmFkaW9CdXR0b25UZXh0UHJvcGVydHl9XG5cdFx0XHRcdFx0Y3VzdG9tRGF0YT17PEN1c3RvbURhdGEga2V5PXtcImtleVwifSB2YWx1ZT17dGhpcy5yYWRpb0J1dHRvbktleVByb3BlcnR5fSAvPn1cblx0XHRcdFx0XHRjbGFzcz1cInNhcFVpU21hbGxNYXJnaW5FbmRcIlxuXHRcdFx0XHRcdHRvb2x0aXA9e3RoaXMucmFkaW9CdXR0b25UZXh0UHJvcGVydHl9XG5cdFx0XHRcdC8+XG5cdFx0XHQ8L1JhZGlvQnV0dG9uR3JvdXA+XG5cdFx0KSBhcyBSYWRpb0J1dHRvbkdyb3VwO1xuXG5cdFx0cmV0dXJuIHJhZGlvQnV0dG9uR3JvdXA7XG5cdH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFpQnFCQSxZQUFZLElBQUFDLElBQUEsR0FEaENDLGNBQWMsQ0FBQyxxQ0FBcUMsQ0FBQyxFQUFBQyxLQUFBLEdBRXBEQyxRQUFRLENBQUM7SUFDVEMsSUFBSSxFQUFFO0VBQ1AsQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FHREYsUUFBUSxDQUFDO0lBQ1RDLElBQUksRUFBRTtFQUNQLENBQUMsQ0FBQyxFQUFBRSxLQUFBLEdBR0RILFFBQVEsQ0FBQztJQUNUQyxJQUFJLEVBQUU7RUFDUCxDQUFDLENBQUMsRUFBQUcsS0FBQSxHQU1ESixRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFLEtBQUs7SUFBRUksWUFBWSxFQUFFO0VBQUssQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FHN0NOLFFBQVEsQ0FBQztJQUNUQyxJQUFJLEVBQUU7RUFDUCxDQUFDLENBQUMsRUFBQU0sS0FBQSxHQU9EUCxRQUFRLENBQUM7SUFDVEMsSUFBSSxFQUFFLFFBQVE7SUFDZE8sV0FBVyxFQUFFO0VBQ2QsQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FHRFQsUUFBUSxDQUFDO0lBQ1RDLElBQUksRUFBRSxLQUFLO0lBQ1hTLGFBQWEsRUFBRTtFQUNoQixDQUFDLENBQUMsRUFBQUMsS0FBQSxHQUdEWCxRQUFRLENBQUM7SUFDVEMsSUFBSSxFQUFFLEtBQUs7SUFDWFMsYUFBYSxFQUFFO0VBQ2hCLENBQUMsQ0FBQyxFQUFBRSxNQUFBLEdBR0RaLFFBQVEsQ0FBQztJQUNUQyxJQUFJLEVBQUU7RUFDUCxDQUFDLENBQUMsRUFB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
|
|
263
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSYWRpb0J1dHRvbnMiLCJfZGVjIiwiZGVmaW5lVUk1Q2xhc3MiLCJfZGVjMiIsInByb3BlcnR5IiwidHlwZSIsIl9kZWMzIiwiX2RlYzQiLCJfZGVjNSIsImRlZmF1bHRWYWx1ZSIsIl9kZWM2IiwiX2RlYzciLCJiaW5kVG9TdGF0ZSIsIl9kZWM4IiwiaXNCaW5kaW5nSW5mbyIsIl9kZWM5IiwiX2RlYzEwIiwiX2RlYzExIiwiX2RlYzEyIiwiX2RlYzEzIiwiX2NsYXNzIiwiX2NsYXNzMiIsIl9CdWlsZGluZ0Jsb2NrIiwicHJvcGVydGllcyIsIm90aGVycyIsIl90aGlzIiwiY2FsbCIsIl9pbml0aWFsaXplckRlZmluZVByb3BlcnR5IiwiX2Rlc2NyaXB0b3IiLCJfZGVzY3JpcHRvcjIiLCJfZGVzY3JpcHRvcjMiLCJfZGVzY3JpcHRvcjQiLCJfZGVzY3JpcHRvcjUiLCJfZGVzY3JpcHRvcjYiLCJfZGVzY3JpcHRvcjciLCJfZGVzY3JpcHRvcjgiLCJfZGVzY3JpcHRvcjkiLCJfZGVzY3JpcHRvcjEwIiwiX2Rlc2NyaXB0b3IxMSIsIl9kZXNjcmlwdG9yMTIiLCJjb250ZW50IiwiY3JlYXRlQ29udGVudCIsIl9leHBvcnRzIiwiX2luaGVyaXRzTG9vc2UiLCJfcHJvdG8iLCJwcm90b3R5cGUiLCJvblJhZGlvQnV0dG9uU2VsZWN0IiwiZXZlbnQiLCJyYWRpb0J1dHRvbkdyb3VwIiwiZ2V0U291cmNlIiwic2VsZWN0ZWRJbmRleCIsImdldFBhcmFtZXRlciIsInVuZGVmaW5lZCIsInNlbGVjdGVkUmFkaW9CdXR0b25LZXkiLCJnZXRCdXR0b25zIiwiZ2V0Q3VzdG9tRGF0YSIsImdldFZhbHVlIiwic2V0UHJvcGVydHkiLCJDb21tb25VdGlscyIsImdldFRhcmdldFZpZXciLCJnZXRDb250cm9sbGVyIiwiX3NpZGVFZmZlY3RzIiwiaGFuZGxlRmllbGRDaGFuZ2UiLCJiaW5kUHJvcGVydHkiLCJuYW1lIiwiYmluZGluZ0luZm8iLCJmb3JtYXR0ZXIiLCJ0YXJnZXRUeXBlIiwic2V0VmFsdWUiLCJuZXdWYWx1ZSIsInZhbHVlIiwicmFkaW9CdXR0b25zIiwibGVuZ3RoIiwicmFkaW9CdXR0b25JbmRleCIsInJhZGlvQnV0dG9uIiwia2V5Q3VzdG9tRGF0YSIsImdldEJpbmRpbmciLCJzZXRTZWxlY3RlZEluZGV4IiwiYnV0dG9uc0JpbmRpbmdDb250ZXh0IiwicG9zc2libGVWYWx1ZXMiLCJiaW5kU3RhdGUiLCJyYWRpb0J1dHRvblRleHRQcm9wZXJ0eSIsInBhdGhJbk1vZGVsIiwicmFkaW9CdXR0b25LZXlQcm9wZXJ0eSIsInBhdGgiLCJmaXhlZFZhbHVlc1BhdGgiLCJwYXJhbWV0ZXJzIiwiJGNvdW50IiwiZXZlbnRzIiwiZGF0YVJlY2VpdmVkIiwiZXYiLCJjb3VudCIsImdldENvdW50IiwiaG9yaXpvbnRhbExheW91dCIsInNldENvbHVtbnMiLCJnZXRTZWxlY3RlZEluZGV4IiwiYmluZCIsIl9qc3giLCJSYWRpb0J1dHRvbkdyb3VwIiwiYnV0dG9ucyIsInNlbGVjdCIsImVkaXRhYmxlIiwiZWRpdGFibGVFeHByZXNzaW9uIiwiZW5hYmxlZCIsImVuYWJsZWRFeHByZXNzaW9uIiwiZmllbGRHcm91cElkcyIsImFyaWFMYWJlbGxlZEJ5Iiwid2lkdGgiLCJjb2x1bW5zIiwiY2hpbGRyZW4iLCJSYWRpb0J1dHRvbiIsInRleHQiLCJjdXN0b21EYXRhIiwiQ3VzdG9tRGF0YSIsImNsYXNzIiwidG9vbHRpcCIsIkJ1aWxkaW5nQmxvY2siLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yIiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsIndyaXRhYmxlIiwiaW5pdGlhbGl6ZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIlJhZGlvQnV0dG9ucy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQcmltaXRpdmVUeXBlIH0gZnJvbSBcInNhcC9mZS9iYXNlL0JpbmRpbmdUb29sa2l0XCI7XG5pbXBvcnQgeyBwYXRoSW5Nb2RlbCB9IGZyb20gXCJzYXAvZmUvYmFzZS9CaW5kaW5nVG9vbGtpdFwiO1xuaW1wb3J0IHR5cGUgeyBQcm9wZXJ0aWVzT2YgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgeyBkZWZpbmVVSTVDbGFzcywgcHJvcGVydHkgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgQ29tbW9uVXRpbHMgZnJvbSBcInNhcC9mZS9jb3JlL0NvbW1vblV0aWxzXCI7XG5pbXBvcnQgQnVpbGRpbmdCbG9jayBmcm9tIFwic2FwL2ZlL2NvcmUvYnVpbGRpbmdCbG9ja3MvQnVpbGRpbmdCbG9ja1wiO1xuaW1wb3J0IFJhZGlvQnV0dG9uIGZyb20gXCJzYXAvbS9SYWRpb0J1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBSYWRpb0J1dHRvbkdyb3VwJFNlbGVjdEV2ZW50IH0gZnJvbSBcInNhcC9tL1JhZGlvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCBSYWRpb0J1dHRvbkdyb3VwIGZyb20gXCJzYXAvbS9SYWRpb0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgdHlwZSBFdmVudCBmcm9tIFwic2FwL3VpL2Jhc2UvRXZlbnRcIjtcbmltcG9ydCB0eXBlIHsgQWdncmVnYXRpb25CaW5kaW5nSW5mbywgUHJvcGVydHlCaW5kaW5nSW5mbyB9IGZyb20gXCJzYXAvdWkvYmFzZS9NYW5hZ2VkT2JqZWN0XCI7XG5pbXBvcnQgdHlwZSB7ICRDb250cm9sU2V0dGluZ3MgfSBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IEN1c3RvbURhdGEgZnJvbSBcInNhcC91aS9jb3JlL0N1c3RvbURhdGFcIjtcbmltcG9ydCB0eXBlIFByb3BlcnR5QmluZGluZyBmcm9tIFwic2FwL3VpL21vZGVsL1Byb3BlcnR5QmluZGluZ1wiO1xuaW1wb3J0IHR5cGUgT0RhdGFMaXN0QmluZGluZyBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L09EYXRhTGlzdEJpbmRpbmdcIjtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLm1hY3Jvcy5jb250cm9scy5SYWRpb0J1dHRvbnNcIilcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJhZGlvQnV0dG9ucyBleHRlbmRzIEJ1aWxkaW5nQmxvY2s8UmFkaW9CdXR0b25Hcm91cCwgeyBwb3NzaWJsZVZhbHVlczogeyB0ZXh0OiBzdHJpbmc7IGtleTogbnVtYmVyIH1bXSB9PiB7XG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzdHJpbmdcIlxuXHR9KVxuXHRwdWJsaWMgaWQhOiBzdHJpbmc7XG5cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcInN0cmluZ1tdXCJcblx0fSlcblx0cHVibGljIGZpZWxkR3JvdXBJZHM/OiBzdHJpbmdbXTtcblxuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwic3RyaW5nXCJcblx0fSlcblx0cHVibGljIHJlcXVpcmVkRXhwcmVzc2lvbj86IHN0cmluZztcblxuXHQvLyBXZSB1c2UgdHlwZSAncmF3JyBoZXJlIGJlY2F1c2Ugb3RoZXJ3aXNlIHRoZSBiaW5kaW5nIHdpbGwgcmVmdXNlIHRvIHVwZGF0ZSB0aGUgdmFsdWUsIGFzIGl0IGRvZXNuJ3Qga25vdyBob3cgdG8gY29udmVydCBmcm9tIGFueSB0byBzdHJpbmdcblx0Ly8gU2V0dGluZyBpdCB0byByYXcgbWFrZSBzdXJlIHRoYXQgbm8gY29udmVyc2lvbiBpcyBhdHRlbXB0ZWQgd2hpY2ggdGhlbiB3b3Jrc1xuXHQvLyBEZWZhdWx0IHZhbHVlIGlzIHNldCB0byBudWxsIHRvIGFsbG93IGhhdmluZyBhIHJhZGlvIGJ1dHRvbiBwb2ludGluZyB0byBhIGBudWxsYCB2YWx1ZVxuXHRAcHJvcGVydHkoeyB0eXBlOiBcImFueVwiLCBkZWZhdWx0VmFsdWU6IG51bGwgfSlcblx0cHVibGljIHZhbHVlITogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbjtcblxuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwic3RyaW5nXCJcblx0fSlcblx0cHVibGljIGZpeGVkVmFsdWVzUGF0aCE6IGB7JHtzdHJpbmd9fWA7XG5cblx0LyoqXG5cdCAqIEFuIGFycmF5IG9mIHBvc3NpYmxlLCBmaXhlZCB2YWx1ZSBsaXN0IG9iamVjdFxuXHQgKiBJZiB0aGlzIHByb3BlcnR5IGlzIHVzZWQsIHRoZSBmaXhlZFZhbHVlc1BhdGggcHJvcGVydHkgaXMgaWdub3JlZC5cblx0ICovXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJvYmplY3RcIixcblx0XHRiaW5kVG9TdGF0ZTogdHJ1ZVxuXHR9KVxuXHRwdWJsaWMgcG9zc2libGVWYWx1ZXM/OiB7IGtleTogUHJpbWl0aXZlVHlwZTsgdGV4dDogc3RyaW5nIH1bXTtcblxuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYW55XCIsXG5cdFx0aXNCaW5kaW5nSW5mbzogdHJ1ZVxuXHR9KVxuXHRwdWJsaWMgcmFkaW9CdXR0b25UZXh0UHJvcGVydHk6IFByb3BlcnR5QmluZGluZ0luZm87XG5cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImFueVwiLFxuXHRcdGlzQmluZGluZ0luZm86IHRydWVcblx0fSlcblx0cHVibGljIHJhZGlvQnV0dG9uS2V5UHJvcGVydHk6IFByb3BlcnR5QmluZGluZ0luZm87XG5cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcImJvb2xlYW5cIlxuXHR9KVxuXHRwdWJsaWMgaG9yaXpvbnRhbExheW91dCA9IGZhbHNlO1xuXG5cdEBwcm9wZXJ0eSh7XG5cdFx0dHlwZTogXCJzdHJpbmdcIixcblx0XHRpc0JpbmRpbmdJbmZvOiB0cnVlXG5cdH0pXG5cdHB1YmxpYyBlbmFibGVkRXhwcmVzc2lvbiA9IFwiXCI7XG5cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcInN0cmluZ1wiLFxuXHRcdGlzQmluZGluZ0luZm86IHRydWVcblx0fSlcblx0cHVibGljIGVkaXRhYmxlRXhwcmVzc2lvbiA9IFwiXCI7XG5cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcInN0cmluZ1wiXG5cdH0pXG5cdHB1YmxpYyB3aWR0aCA9IFwiMTAwJVwiO1xuXG5cdGNvbnN0cnVjdG9yKHByb3BlcnRpZXM6ICRDb250cm9sU2V0dGluZ3MgJiBQcm9wZXJ0aWVzT2Y8UmFkaW9CdXR0b25zPiwgb3RoZXJzPzogJENvbnRyb2xTZXR0aW5ncykge1xuXHRcdHN1cGVyKHByb3BlcnRpZXMsIG90aGVycyk7XG5cdFx0dGhpcy5jb250ZW50ID0gdGhpcy5jcmVhdGVDb250ZW50KCk7XG5cdH1cblxuXHQvKipcblx0ICogRXZlbnQgaGFuZGxlciBmb3IgdGhlIFJhZGlvQnV0dG9uR3JvdXAncyBzZWxlY3QgZXZlbnQuXG5cdCAqIFdlIG5lZWQgdG8gcGFyc2UgZnJvbSB0aGUgcmFkaW8gYnV0dG9uIGdyb3VwIGluZGV4IHRvIHRoZSBtb2RlbCB2YWx1ZS5cblx0ICogQHBhcmFtIGV2ZW50XG5cdCAqL1xuXHRvblJhZGlvQnV0dG9uU2VsZWN0KGV2ZW50OiBSYWRpb0J1dHRvbkdyb3VwJFNlbGVjdEV2ZW50KTogdm9pZCB7XG5cdFx0Y29uc3QgcmFkaW9CdXR0b25Hcm91cDogUmFkaW9CdXR0b25Hcm91cCA9IGV2ZW50LmdldFNvdXJjZSgpO1xuXHRcdGNvbnN0IHNlbGVjdGVkSW5kZXggPSBldmVudC5nZXRQYXJhbWV0ZXIoXCJzZWxlY3RlZEluZGV4XCIpO1xuXHRcdGlmIChzZWxlY3RlZEluZGV4ICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdGNvbnN0IHNlbGVjdGVkUmFkaW9CdXR0b25LZXk6IHN0cmluZyA9IHJhZGlvQnV0dG9uR3JvdXA/LmdldEJ1dHRvbnMoKVtzZWxlY3RlZEluZGV4XS5nZXRDdXN0b21EYXRhKClbMF0uZ2V0VmFsdWUoKTtcblx0XHRcdC8vIE5vdyB3ZSBoYXZlIHRoZSB2YWx1ZSA9PiB3cml0ZSBpdCB0byB0aGUgbW9kZWwhXG5cdFx0XHR0aGlzLnNldFByb3BlcnR5KFwidmFsdWVcIiwgc2VsZWN0ZWRSYWRpb0J1dHRvbktleSk7XG5cdFx0XHRDb21tb25VdGlscy5nZXRUYXJnZXRWaWV3KHJhZGlvQnV0dG9uR3JvdXApPy5nZXRDb250cm9sbGVyKCk/Ll9zaWRlRWZmZWN0cz8uaGFuZGxlRmllbGRDaGFuZ2UoZXZlbnQsIHRydWUpO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBUaGUgdmFsdWUgcHJvcGVydHkgdHlwZSBuZWVkcyB0byBiZSBpbml0aWFsbHkgJ2FueScgYnV0IGhhcyB0byBiZSBjaGFuZ2VkIHRvICdyYXcnIHRvIGF2b2lkIHBhcnNpbmcgZXJyb3JzLlxuXHQgKiBAcGFyYW0gbmFtZVxuXHQgKiBAcGFyYW0gYmluZGluZ0luZm9cblx0ICogQHJldHVybnMgVGhpc1xuXHQgKi9cblx0YmluZFByb3BlcnR5KG5hbWU6IHN0cmluZywgYmluZGluZ0luZm86IFByb3BlcnR5QmluZGluZ0luZm8pOiB0aGlzIHtcblx0XHRpZiAobmFtZSA9PT0gXCJ2YWx1ZVwiICYmICFiaW5kaW5nSW5mby5mb3JtYXR0ZXIpIHtcblx0XHRcdC8vIG5vdCBpZiBhIGZvcm1hdHRlciBpcyB1c2VkLCBhcyB0aGlzIG5lZWRzIHRvIGJlIGV4ZWN1dGVkXG5cdFx0XHRiaW5kaW5nSW5mby50YXJnZXRUeXBlID0gXCJyYXdcIjtcblx0XHR9XG5cblx0XHRyZXR1cm4gc3VwZXIuYmluZFByb3BlcnR5KG5hbWUsIGJpbmRpbmdJbmZvKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBUaGlzIGlzIGJlaW5nIGNhbGxlZCB3aGVuIHRoZSBtb2RlbCBmZXRjaGVzIHRoZSBkYXRhIGZyb20gdGhlIGJhY2tlbmQgb3Igd2hlbiB3ZSBjYWxsIGl0IGRpcmVjdGx5LlxuXHQgKiBXZSBuZWVkIHRvIHBhcnNlIGZyb20gdGhlIG1vZGVsIHZhbHVlIHRvIHRoZSByYWRpbyBidXR0b24gZ3JvdXAgaW5kZXguXG5cdCAqIEBwYXJhbSBuZXdWYWx1ZVxuXHQgKi9cblx0c2V0VmFsdWUobmV3VmFsdWU6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4pOiB2b2lkIHtcblx0XHR0aGlzLnZhbHVlID0gbmV3VmFsdWU7XG5cdFx0aWYgKHRoaXMuY29udGVudCkge1xuXHRcdFx0Ly8gQ29tcHV0ZSB0aGUgbmV3IHJhZGlvIGJ1dHRvbiBpbmRleFxuXHRcdFx0Y29uc3QgcmFkaW9CdXR0b25zID0gdGhpcy5jb250ZW50LmdldEJ1dHRvbnMoKTtcblx0XHRcdGlmIChyYWRpb0J1dHRvbnMubGVuZ3RoICE9IDApIHtcblx0XHRcdFx0bGV0IHJhZGlvQnV0dG9uSW5kZXggPSAwO1xuXHRcdFx0XHRmb3IgKGNvbnN0IHJhZGlvQnV0dG9uIG9mIHJhZGlvQnV0dG9ucykge1xuXHRcdFx0XHRcdGNvbnN0IGtleUN1c3RvbURhdGEgPSAocmFkaW9CdXR0b24uZ2V0Q3VzdG9tRGF0YSgpWzBdLmdldEJpbmRpbmcoXCJ2YWx1ZVwiKSBhcyBQcm9wZXJ0eUJpbmRpbmcgfCB1bmRlZmluZWQpPy5nZXRWYWx1ZSgpO1xuXHRcdFx0XHRcdGlmIChrZXlDdXN0b21EYXRhID09PSBuZXdWYWx1ZSkge1xuXHRcdFx0XHRcdFx0dGhpcy5jb250ZW50LnNldFNlbGVjdGVkSW5kZXgocmFkaW9CdXR0b25JbmRleCk7XG5cdFx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHJhZGlvQnV0dG9uSW5kZXgrKztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0Ly8gSWYgbm8gdmFsdWUgY291bGQgYmUgZm91bmQgb3IgaWYgdGhlIHJhZGlvIGJ1dHRvbiBhZ2dyZWdhdGlvbiB3YXMgZW1wdHksIHdoaWNoIGNhbiBoYXBwZW4gZHVlIHRvXG5cdFx0XHQvLyBhIHZlcnkgZWFybHkgY2FsbCBvZiBzZXRWYWx1ZSwgc2V0IHRoZSBzZWxlY3RlZCB0byBpbmRleCB0byAtMSB3aGljaCByZXN1bHRzIGluIE5PIHJhZGlvIGJ1dHRvbiB0byBiZSBzZWxlY3RlZC5cblx0XHRcdHRoaXMuY29udGVudC5zZXRTZWxlY3RlZEluZGV4KC0xKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogVGhlIGJ1aWxkaW5nIGJsb2NrIHJlbmRlciBmdW5jdGlvbi5cblx0ICogQHJldHVybnMgVGhlIHJhZGlvIGJ1dHRvbiBncm91cFxuXHQgKi9cblx0Y3JlYXRlQ29udGVudCgpOiBSYWRpb0J1dHRvbkdyb3VwIHtcblx0XHQvLyBTZXR0aW5nIHVwIHRoZSBiaW5kaW5nIHNvIHRoYXQgd2UgY2FuIGFjY2VzcyAkY291bnQgZm9yIGdldHRpbmcgdGhlIG51bWJlclxuXHRcdC8vIG9mIGVudHJpZXMgaW4gdGhlIGZpeGVkIHZhbHVlIGxpc3QgYW5kIHNldCB0aGlzIGFzIG51bWJlciBvZiByYWRpbyBidXR0b24gY29sdW1uc1xuXHRcdC8vIGluIGNhc2UgaG9yaXpvbnRhbCBsYXlvdXQgaXMgY29uZmlndXJlZFxuXHRcdGxldCBidXR0b25zQmluZGluZ0NvbnRleHQ6IEFnZ3JlZ2F0aW9uQmluZGluZ0luZm8gfCB1bmRlZmluZWQ7XG5cdFx0aWYgKHRoaXMucG9zc2libGVWYWx1ZXMpIHtcblx0XHRcdGJ1dHRvbnNCaW5kaW5nQ29udGV4dCA9IHRoaXMuYmluZFN0YXRlKFwicG9zc2libGVWYWx1ZXNcIik7XG5cdFx0XHR0aGlzLnJhZGlvQnV0dG9uVGV4dFByb3BlcnR5ID0gcGF0aEluTW9kZWwoXCJ0ZXh0XCIsIFwiJGNvbXBvbmVudFN0YXRlXCIpO1xuXHRcdFx0dGhpcy5yYWRpb0J1dHRvbktleVByb3BlcnR5ID0gcGF0aEluTW9kZWwoXCJrZXlcIiwgXCIkY29tcG9uZW50U3RhdGVcIik7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGJ1dHRvbnNCaW5kaW5nQ29udGV4dCA9IHtcblx0XHRcdFx0cGF0aDogYCR7dGhpcy5maXhlZFZhbHVlc1BhdGh9YCxcblx0XHRcdFx0cGFyYW1ldGVyczogeyAkY291bnQ6IHRydWUgfSxcblx0XHRcdFx0ZXZlbnRzOiB7XG5cdFx0XHRcdFx0ZGF0YVJlY2VpdmVkOiAoZXY6IEV2ZW50KTogdm9pZCA9PiB7XG5cdFx0XHRcdFx0XHRjb25zdCBjb3VudDogbnVtYmVyIHwgdW5kZWZpbmVkID0gKGV2LmdldFNvdXJjZSgpIGFzIHVua25vd24gYXMgT0RhdGFMaXN0QmluZGluZyk/LmdldENvdW50KCk7XG5cdFx0XHRcdFx0XHRpZiAoY291bnQgIT09IHVuZGVmaW5lZCAmJiB0aGlzLmhvcml6b250YWxMYXlvdXQpIHtcblx0XHRcdFx0XHRcdFx0cmFkaW9CdXR0b25Hcm91cC5zZXRDb2x1bW5zKGNvdW50KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdC8vIENoZWNrIGlmIHRoZXJlIGlzIGEgdmFsdWUgc3RvcmVkIGZyb20gdGhlIGluaXRpYWxpemF0aW9uIGJ1dCB0aGUgcmFkaW9cblx0XHRcdFx0XHRcdC8vIGJ1dHRvbiBzZWxlY3Rpb24gaGFzIG5vdCB5ZXQgYmVlbiBkb25lIGFuZCBkbyB0aGlzIG5vd1xuXHRcdFx0XHRcdFx0aWYgKHRoaXMudmFsdWUgIT09IHVuZGVmaW5lZCAmJiByYWRpb0J1dHRvbkdyb3VwLmdldFNlbGVjdGVkSW5kZXgoKSA9PT0gLTEpIHtcblx0XHRcdFx0XHRcdFx0dGhpcy5zZXRWYWx1ZSh0aGlzLnZhbHVlIGFzIHN0cmluZyk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9O1xuXHRcdH1cblxuXHRcdHRoaXMub25SYWRpb0J1dHRvblNlbGVjdC5iaW5kKHRoaXMpO1xuXG5cdFx0Y29uc3QgcmFkaW9CdXR0b25Hcm91cCA9IChcblx0XHRcdDxSYWRpb0J1dHRvbkdyb3VwXG5cdFx0XHRcdGJ1dHRvbnM9e2J1dHRvbnNCaW5kaW5nQ29udGV4dH1cblx0XHRcdFx0c2VsZWN0PXt0aGlzLm9uUmFkaW9CdXR0b25TZWxlY3QuYmluZCh0aGlzKX1cblx0XHRcdFx0ZWRpdGFibGU9e3RoaXMuZWRpdGFibGVFeHByZXNzaW9ufVxuXHRcdFx0XHRlbmFibGVkPXt0aGlzLmVuYWJsZWRFeHByZXNzaW9ufVxuXHRcdFx0XHRmaWVsZEdyb3VwSWRzPXt0aGlzLmZpZWxkR3JvdXBJZHN9XG5cdFx0XHRcdGFyaWFMYWJlbGxlZEJ5PXt0aGlzLmFyaWFMYWJlbGxlZEJ5fVxuXHRcdFx0XHR3aWR0aD17dGhpcy53aWR0aH1cblx0XHRcdFx0Y29sdW1ucz17dGhpcy5wb3NzaWJsZVZhbHVlcz8ubGVuZ3RoID8/IDF9XG5cdFx0XHQ+XG5cdFx0XHRcdDxSYWRpb0J1dHRvblxuXHRcdFx0XHRcdHRleHQ9e3RoaXMucmFkaW9CdXR0b25UZXh0UHJvcGVydHl9XG5cdFx0XHRcdFx0Y3VzdG9tRGF0YT17PEN1c3RvbURhdGEga2V5PXtcImtleVwifSB2YWx1ZT17dGhpcy5yYWRpb0J1dHRvbktleVByb3BlcnR5fSAvPn1cblx0XHRcdFx0XHRjbGFzcz1cInNhcFVpU21hbGxNYXJnaW5FbmRcIlxuXHRcdFx0XHRcdHRvb2x0aXA9e3RoaXMucmFkaW9CdXR0b25UZXh0UHJvcGVydHl9XG5cdFx0XHRcdC8+XG5cdFx0XHQ8L1JhZGlvQnV0dG9uR3JvdXA+XG5cdFx0KSBhcyBSYWRpb0J1dHRvbkdyb3VwO1xuXG5cdFx0cmV0dXJuIHJhZGlvQnV0dG9uR3JvdXA7XG5cdH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFpQnFCQSxZQUFZLElBQUFDLElBQUEsR0FEaENDLGNBQWMsQ0FBQyxxQ0FBcUMsQ0FBQyxFQUFBQyxLQUFBLEdBRXBEQyxRQUFRLENBQUM7SUFDVEMsSUFBSSxFQUFFO0VBQ1AsQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FHREYsUUFBUSxDQUFDO0lBQ1RDLElBQUksRUFBRTtFQUNQLENBQUMsQ0FBQyxFQUFBRSxLQUFBLEdBR0RILFFBQVEsQ0FBQztJQUNUQyxJQUFJLEVBQUU7RUFDUCxDQUFDLENBQUMsRUFBQUcsS0FBQSxHQU1ESixRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFLEtBQUs7SUFBRUksWUFBWSxFQUFFO0VBQUssQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FHN0NOLFFBQVEsQ0FBQztJQUNUQyxJQUFJLEVBQUU7RUFDUCxDQUFDLENBQUMsRUFBQU0sS0FBQSxHQU9EUCxRQUFRLENBQUM7SUFDVEMsSUFBSSxFQUFFLFFBQVE7SUFDZE8sV0FBVyxFQUFF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
|
|
@@ -70,10 +70,17 @@ export default class RadioButtons extends BuildingBlock<RadioButtonGroup, { poss
|
|
|
70
70
|
public horizontalLayout = false;
|
|
71
71
|
|
|
72
72
|
@property({
|
|
73
|
-
type: "string"
|
|
73
|
+
type: "string",
|
|
74
|
+
isBindingInfo: true
|
|
74
75
|
})
|
|
75
76
|
public enabledExpression = "";
|
|
76
77
|
|
|
78
|
+
@property({
|
|
79
|
+
type: "string",
|
|
80
|
+
isBindingInfo: true
|
|
81
|
+
})
|
|
82
|
+
public editableExpression = "";
|
|
83
|
+
|
|
77
84
|
@property({
|
|
78
85
|
type: "string"
|
|
79
86
|
})
|
|
@@ -176,10 +183,12 @@ export default class RadioButtons extends BuildingBlock<RadioButtonGroup, { poss
|
|
|
176
183
|
}
|
|
177
184
|
|
|
178
185
|
this.onRadioButtonSelect.bind(this);
|
|
186
|
+
|
|
179
187
|
const radioButtonGroup = (
|
|
180
188
|
<RadioButtonGroup
|
|
181
189
|
buttons={buttonsBindingContext}
|
|
182
190
|
select={this.onRadioButtonSelect.bind(this)}
|
|
191
|
+
editable={this.editableExpression}
|
|
183
192
|
enabled={this.enabledExpression}
|
|
184
193
|
fieldGroupIds={this.fieldGroupIds}
|
|
185
194
|
ariaLabelledBy={this.ariaLabelledBy}
|