@sapui5/sap.fe.core 1.111.0 → 1.112.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/core/.library +1 -1
- package/src/sap/fe/core/ActionRuntime-dbg.js +4 -4
- package/src/sap/fe/core/ActionRuntime.js +1 -1
- package/src/sap/fe/core/ActionRuntime.js.map +1 -1
- package/src/sap/fe/core/ActionRuntime.ts +11 -11
- package/src/sap/fe/core/AppComponent-dbg.js +27 -5
- package/src/sap/fe/core/AppComponent.js +1 -1
- package/src/sap/fe/core/AppComponent.js.map +1 -1
- package/src/sap/fe/core/AppComponent.ts +58 -3
- package/src/sap/fe/core/AppStateHandler-dbg.js +5 -2
- package/src/sap/fe/core/AppStateHandler.js +1 -1
- package/src/sap/fe/core/AppStateHandler.js.map +1 -1
- package/src/sap/fe/core/AppStateHandler.ts +10 -1
- package/src/sap/fe/core/BaseController-dbg.js +1 -1
- package/src/sap/fe/core/BaseController.ts +2 -1
- package/src/sap/fe/core/CommonUtils-dbg.js +152 -365
- package/src/sap/fe/core/CommonUtils.js +1 -1
- package/src/sap/fe/core/CommonUtils.js.map +1 -1
- package/src/sap/fe/core/CommonUtils.ts +201 -478
- package/src/sap/fe/core/ExtensionAPI-dbg.js +2 -1
- package/src/sap/fe/core/ExtensionAPI.js +1 -1
- package/src/sap/fe/core/ExtensionAPI.js.map +1 -1
- package/src/sap/fe/core/ExtensionAPI.ts +9 -1
- package/src/sap/fe/core/PageController-dbg.js +26 -31
- package/src/sap/fe/core/PageController.js +1 -1
- package/src/sap/fe/core/PageController.js.map +1 -1
- package/src/sap/fe/core/PageController.ts +17 -3
- package/src/sap/fe/core/ResourceModel-dbg.js +71 -0
- package/src/sap/fe/core/ResourceModel.js +6 -0
- package/src/sap/fe/core/ResourceModel.js.map +1 -0
- package/src/sap/fe/core/ResourceModel.ts +67 -0
- package/src/sap/fe/core/TemplateComponent-dbg.js +1 -1
- package/src/sap/fe/core/TemplateComponent.ts +1 -0
- package/src/sap/fe/core/TemplateModel-dbg.js +1 -1
- package/src/sap/fe/core/TemplateModel.ts +6 -1
- package/src/sap/fe/core/buildingBlocks/AttributeModel-dbg.js +5 -7
- package/src/sap/fe/core/buildingBlocks/AttributeModel.js +1 -1
- package/src/sap/fe/core/buildingBlocks/AttributeModel.js.map +1 -1
- package/src/sap/fe/core/buildingBlocks/AttributeModel.ts +6 -5
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase-dbg.js +163 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.js +6 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.js.map +1 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.ts +169 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockSupport-dbg.js +88 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockSupport.js +6 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockSupport.js.map +1 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockSupport.ts +147 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor-dbg.js +905 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor.js +21 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor.js.map +1 -0
- package/src/sap/fe/core/buildingBlocks/{BuildingBlockRuntime.ts → BuildingBlockTemplateProcessor.ts} +279 -335
- package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlock-dbg.js +79 -0
- package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlock.js +15 -0
- package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlock.js.map +1 -0
- package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlock.ts +68 -0
- package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlockFragment-dbg.js +162 -0
- package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlockFragment.js +6 -0
- package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlockFragment.js.map +1 -0
- package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlockFragment.ts +181 -0
- package/src/sap/fe/core/buildingBlocks/TraceInfo-dbg.js +4 -2
- package/src/sap/fe/core/buildingBlocks/TraceInfo.js +1 -1
- package/src/sap/fe/core/buildingBlocks/TraceInfo.js.map +1 -1
- package/src/sap/fe/core/buildingBlocks/TraceInfo.ts +5 -3
- package/src/sap/fe/core/controllerextensions/EditFlow-dbg.js +890 -220
- package/src/sap/fe/core/controllerextensions/EditFlow.js +1 -1
- package/src/sap/fe/core/controllerextensions/EditFlow.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +974 -239
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation-dbg.js +24 -34
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +1 -1
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +71 -61
- package/src/sap/fe/core/controllerextensions/InternalRouting-dbg.js +14 -17
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +1 -1
- package/src/sap/fe/core/controllerextensions/InternalRouting.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +23 -17
- package/src/sap/fe/core/controllerextensions/KPIManagement-dbg.js +1 -1
- package/src/sap/fe/core/controllerextensions/KPIManagement.ts +2 -0
- package/src/sap/fe/core/controllerextensions/MassEdit-dbg.js +3 -3
- package/src/sap/fe/core/controllerextensions/MassEdit.js +1 -1
- package/src/sap/fe/core/controllerextensions/MassEdit.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/MassEdit.ts +2 -2
- package/src/sap/fe/core/controllerextensions/MessageHandler-dbg.js +2 -1
- package/src/sap/fe/core/controllerextensions/MessageHandler.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/MessageHandler.ts +2 -0
- package/src/sap/fe/core/controllerextensions/PageReady-dbg.js +1 -1
- package/src/sap/fe/core/controllerextensions/PageReady.ts +24 -0
- package/src/sap/fe/core/controllerextensions/Paginator-dbg.js +2 -1
- package/src/sap/fe/core/controllerextensions/Paginator.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/Paginator.ts +7 -0
- package/src/sap/fe/core/controllerextensions/Placeholder-dbg.js +1 -1
- package/src/sap/fe/core/controllerextensions/Placeholder.ts +8 -0
- package/src/sap/fe/core/controllerextensions/Share-dbg.js +8 -1
- package/src/sap/fe/core/controllerextensions/Share.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/Share.ts +11 -0
- package/src/sap/fe/core/controllerextensions/SideEffects-dbg.js +14 -13
- package/src/sap/fe/core/controllerextensions/SideEffects.js +1 -1
- package/src/sap/fe/core/controllerextensions/SideEffects.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +27 -27
- package/src/sap/fe/core/controllerextensions/ViewState-dbg.js +17 -8
- package/src/sap/fe/core/controllerextensions/ViewState.js +1 -1
- package/src/sap/fe/core/controllerextensions/ViewState.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/ViewState.ts +35 -14
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase-dbg.js +6 -5
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.ts +7 -4
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync-dbg.js +285 -82
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.ts +326 -89
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon-dbg.js +23 -2
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.ts +32 -3
- package/src/sap/fe/core/controllerextensions/collaboration/Manage-dbg.js +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.ts +2 -3
- package/src/sap/fe/core/controllerextensions/collaboration/ManageDialog.fragment.xml +17 -3
- package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block-dbg.js +65 -34
- package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block.js +1 -1
- package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block.tsx +33 -18
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper-dbg.js +45 -31
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +52 -42
- package/src/sap/fe/core/controllerextensions/editFlow/draft-dbg.js +44 -49
- package/src/sap/fe/core/controllerextensions/editFlow/draft.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/draft.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/draft.ts +43 -63
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations/_internal-dbg.js +77 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations/_internal.js +6 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations/_internal.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations/_internal.ts +114 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade-dbg.js +1505 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.js +6 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.ts +1985 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations-dbg.js +3 -1415
- package/src/sap/fe/core/controllerextensions/editFlow/operations.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations.ts +2 -1921
- package/src/sap/fe/core/controllerextensions/editFlow/sticky-dbg.js +10 -11
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +9 -13
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling-dbg.js +43 -41
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +1 -1
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.ts +44 -47
- package/src/sap/fe/core/controllerextensions/pageReady/DataQueryWatcher-dbg.js +12 -1
- package/src/sap/fe/core/controllerextensions/pageReady/DataQueryWatcher.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/pageReady/DataQueryWatcher.ts +19 -0
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy-dbg.js +12 -13
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +1 -1
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.ts +32 -13
- package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +4 -1
- package/src/sap/fe/core/controls/CommandExecution-dbg.js +16 -5
- package/src/sap/fe/core/controls/CommandExecution.js +1 -1
- package/src/sap/fe/core/controls/CommandExecution.js.map +1 -1
- package/src/sap/fe/core/controls/CommandExecution.ts +15 -3
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler-dbg.js +3 -2
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +1 -1
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js.map +1 -1
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +4 -1
- package/src/sap/fe/core/controls/FilterBar-dbg.js +1 -1
- package/src/sap/fe/core/controls/FilterBar.ts +5 -0
- package/src/sap/fe/core/controls/FormElementWrapper-dbg.js +1 -1
- package/src/sap/fe/core/controls/FormElementWrapper.ts +3 -0
- package/src/sap/fe/core/controls/filterbar/FilterContainer-dbg.js +1 -1
- package/src/sap/fe/core/controls/filterbar/FilterContainer.ts +7 -0
- package/src/sap/fe/core/controls/filterbar/VisualFilter-dbg.js +1 -1
- package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +4 -0
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer-dbg.js +1 -1
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +10 -0
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils-dbg.js +4 -3
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +1 -1
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js.map +1 -1
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +3 -2
- package/src/sap/fe/core/controls/massEdit/MassEditDialog.fragment.xml +0 -1
- package/src/sap/fe/core/controls/massEdit/MassEditField.fragment.xml +2 -0
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers-dbg.js +6 -1
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +1 -1
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js.map +1 -1
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +5 -0
- package/src/sap/fe/core/converters/ConverterContext-dbg.js +1 -1
- package/src/sap/fe/core/converters/ConverterContext.ts +2 -1
- package/src/sap/fe/core/converters/ManifestSettings-dbg.js +1 -8
- package/src/sap/fe/core/converters/ManifestSettings.js +1 -1
- package/src/sap/fe/core/converters/ManifestSettings.js.map +1 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +15 -6
- package/src/sap/fe/core/converters/ManifestWrapper-dbg.js +17 -1
- package/src/sap/fe/core/converters/ManifestWrapper.js +1 -1
- package/src/sap/fe/core/converters/ManifestWrapper.js.map +1 -1
- package/src/sap/fe/core/converters/ManifestWrapper.ts +16 -0
- package/src/sap/fe/core/converters/MetaModelConverter-dbg.js +61 -49
- package/src/sap/fe/core/converters/MetaModelConverter.js +1 -1
- package/src/sap/fe/core/converters/MetaModelConverter.js.map +1 -1
- package/src/sap/fe/core/converters/MetaModelConverter.ts +65 -51
- package/src/sap/fe/core/converters/TemplateConverter-dbg.js +2 -1
- package/src/sap/fe/core/converters/TemplateConverter.js.map +1 -1
- package/src/sap/fe/core/converters/TemplateConverter.ts +2 -1
- package/src/sap/fe/core/converters/annotations/DataField-dbg.js +65 -16
- package/src/sap/fe/core/converters/annotations/DataField.js +1 -1
- package/src/sap/fe/core/converters/annotations/DataField.js.map +1 -1
- package/src/sap/fe/core/converters/annotations/DataField.ts +62 -18
- package/src/sap/fe/core/converters/common/AnnotationConverter-dbg.js +1010 -957
- package/src/sap/fe/core/converters/common/AnnotationConverter.js +1 -1
- package/src/sap/fe/core/converters/common/AnnotationConverter.js.map +1 -1
- package/src/sap/fe/core/converters/controls/Common/Action-dbg.js +8 -8
- package/src/sap/fe/core/converters/controls/Common/Action.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/Action.js.map +1 -1
- package/src/sap/fe/core/converters/controls/Common/Action.ts +28 -26
- package/src/sap/fe/core/converters/controls/Common/Chart-dbg.js +95 -33
- package/src/sap/fe/core/converters/controls/Common/Chart.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/Chart.js.map +1 -1
- package/src/sap/fe/core/converters/controls/Common/Chart.ts +133 -49
- package/src/sap/fe/core/converters/controls/Common/DataVisualization-dbg.js +99 -62
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.js.map +1 -1
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +140 -75
- package/src/sap/fe/core/converters/controls/Common/Form-dbg.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/Form.ts +3 -3
- package/src/sap/fe/core/converters/controls/Common/KPI-dbg.js +6 -6
- package/src/sap/fe/core/converters/controls/Common/KPI.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/KPI.js.map +1 -1
- package/src/sap/fe/core/converters/controls/Common/KPI.ts +15 -15
- package/src/sap/fe/core/converters/controls/Common/Table-dbg.js +97 -69
- package/src/sap/fe/core/converters/controls/Common/Table.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/Table.js.map +1 -1
- package/src/sap/fe/core/converters/controls/Common/Table.ts +161 -137
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions-dbg.js +3 -3
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js.map +1 -1
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +10 -9
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar-dbg.js +48 -44
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +1 -1
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js.map +1 -1
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +130 -86
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters-dbg.js +34 -26
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +1 -1
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js.map +1 -1
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +62 -45
- package/src/sap/fe/core/converters/controls/ObjectPage/Avatar-dbg.js +1 -1
- package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.ts +1 -1
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet-dbg.js +6 -6
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +1 -1
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js.map +1 -1
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +5 -8
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection-dbg.js +34 -13
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +1 -1
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js.map +1 -1
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +54 -20
- package/src/sap/fe/core/converters/helpers/Aggregation-dbg.js +3 -1
- package/src/sap/fe/core/converters/helpers/Aggregation.js.map +1 -1
- package/src/sap/fe/core/converters/helpers/Aggregation.ts +8 -0
- package/src/sap/fe/core/converters/helpers/ConfigurableObject-dbg.js +7 -6
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +1 -1
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.js.map +1 -1
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.ts +19 -10
- package/src/sap/fe/core/converters/helpers/DataFieldHelper-dbg.js +1 -1
- package/src/sap/fe/core/converters/helpers/DataFieldHelper.ts +7 -2
- package/src/sap/fe/core/converters/helpers/ID-dbg.js +1 -1
- package/src/sap/fe/core/converters/helpers/ID.ts +2 -1
- package/src/sap/fe/core/converters/helpers/IssueManager-dbg.js +9 -8
- package/src/sap/fe/core/converters/helpers/IssueManager.js +1 -1
- package/src/sap/fe/core/converters/helpers/IssueManager.js.map +1 -1
- package/src/sap/fe/core/converters/helpers/IssueManager.ts +8 -7
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction-dbg.js +8 -7
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +1 -1
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js.map +1 -1
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +9 -6
- package/src/sap/fe/core/converters/templates/ListReportConverter-dbg.js +25 -33
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +1 -1
- package/src/sap/fe/core/converters/templates/ListReportConverter.js.map +1 -1
- package/src/sap/fe/core/converters/templates/ListReportConverter.ts +35 -35
- package/src/sap/fe/core/converters/templates/ObjectPageConverter-dbg.js +11 -4
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +1 -1
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js.map +1 -1
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +7 -1
- package/src/sap/fe/core/formatters/FPMFormatter-dbg.js +1 -1
- package/src/sap/fe/core/formatters/FPMFormatter.ts +1 -1
- package/src/sap/fe/core/formatters/FiscalFormat-dbg.js +2 -2
- package/src/sap/fe/core/formatters/FiscalFormat.ts +6 -1
- package/src/sap/fe/core/formatters/TableFormatter-dbg.js +2 -2
- package/src/sap/fe/core/formatters/TableFormatter.js +1 -1
- package/src/sap/fe/core/formatters/TableFormatter.js.map +1 -1
- package/src/sap/fe/core/formatters/TableFormatter.ts +1 -1
- package/src/sap/fe/core/formatters/ValueFormatter-dbg.js +5 -5
- package/src/sap/fe/core/formatters/ValueFormatter.js +1 -1
- package/src/sap/fe/core/formatters/ValueFormatter.js.map +1 -1
- package/src/sap/fe/core/formatters/ValueFormatter.ts +6 -4
- package/src/sap/fe/core/fpm/Component-dbg.js +1 -1
- package/src/sap/fe/core/fpm/Component.ts +1 -0
- package/src/sap/fe/core/fpm/manifest.json +1 -1
- package/src/sap/fe/core/helpers/AppStartupHelper-dbg.js +2 -2
- package/src/sap/fe/core/helpers/AppStartupHelper.js +1 -1
- package/src/sap/fe/core/helpers/AppStartupHelper.js.map +1 -1
- package/src/sap/fe/core/helpers/AppStartupHelper.ts +1 -1
- package/src/sap/fe/core/helpers/BindingToolkit-dbg.js +6 -6
- package/src/sap/fe/core/helpers/BindingToolkit.js.map +1 -1
- package/src/sap/fe/core/helpers/BindingToolkit.ts +8 -8
- package/src/sap/fe/core/helpers/ClassSupport-dbg.js +1 -1
- package/src/sap/fe/core/helpers/ClassSupport.js.map +1 -1
- package/src/sap/fe/core/helpers/ClassSupport.ts +1 -0
- package/src/sap/fe/core/helpers/DeleteHelper-dbg.js +93 -62
- package/src/sap/fe/core/helpers/DeleteHelper.js +1 -1
- package/src/sap/fe/core/helpers/DeleteHelper.js.map +1 -1
- package/src/sap/fe/core/helpers/DeleteHelper.ts +140 -185
- package/src/sap/fe/core/helpers/MassEditHelper-dbg.js +20 -18
- package/src/sap/fe/core/helpers/MassEditHelper.js +1 -1
- package/src/sap/fe/core/helpers/MassEditHelper.js.map +1 -1
- package/src/sap/fe/core/helpers/MassEditHelper.ts +22 -23
- package/src/sap/fe/core/helpers/MessageStrip-dbg.js +4 -5
- package/src/sap/fe/core/helpers/MessageStrip.js +1 -1
- package/src/sap/fe/core/helpers/MessageStrip.js.map +1 -1
- package/src/sap/fe/core/helpers/MessageStrip.ts +4 -4
- package/src/sap/fe/core/helpers/MetaModelFunction-dbg.js +354 -0
- package/src/sap/fe/core/helpers/MetaModelFunction.js +6 -0
- package/src/sap/fe/core/helpers/MetaModelFunction.js.map +1 -0
- package/src/sap/fe/core/helpers/MetaModelFunction.ts +408 -0
- package/src/sap/fe/core/helpers/ModelHelper-dbg.js +13 -13
- package/src/sap/fe/core/helpers/ModelHelper.js.map +1 -1
- package/src/sap/fe/core/helpers/ModelHelper.ts +13 -13
- package/src/sap/fe/core/helpers/PasteHelper-dbg.js +5 -5
- package/src/sap/fe/core/helpers/PasteHelper.js +1 -1
- package/src/sap/fe/core/helpers/PasteHelper.js.map +1 -1
- package/src/sap/fe/core/helpers/PasteHelper.ts +6 -10
- package/src/sap/fe/core/helpers/ResourceModelHelper-dbg.js +26 -0
- package/src/sap/fe/core/helpers/ResourceModelHelper.js +6 -0
- package/src/sap/fe/core/helpers/ResourceModelHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/ResourceModelHelper.ts +19 -0
- package/src/sap/fe/core/helpers/SemanticDateOperators-dbg.js +93 -18
- package/src/sap/fe/core/helpers/SemanticDateOperators.js +1 -1
- package/src/sap/fe/core/helpers/SemanticDateOperators.js.map +1 -1
- package/src/sap/fe/core/helpers/SemanticDateOperators.ts +70 -17
- package/src/sap/fe/core/helpers/SemanticKeyHelper-dbg.js +2 -2
- package/src/sap/fe/core/helpers/SemanticKeyHelper.js +1 -1
- package/src/sap/fe/core/helpers/SemanticKeyHelper.js.map +1 -1
- package/src/sap/fe/core/helpers/SemanticKeyHelper.ts +1 -1
- package/src/sap/fe/core/helpers/Synchronization-dbg.js +1 -1
- package/src/sap/fe/core/helpers/Synchronization.ts +2 -0
- package/src/sap/fe/core/helpers/TypeGuards-dbg.js +5 -1
- package/src/sap/fe/core/helpers/TypeGuards.js +1 -1
- package/src/sap/fe/core/helpers/TypeGuards.js.map +1 -1
- package/src/sap/fe/core/helpers/TypeGuards.ts +12 -1
- package/src/sap/fe/core/jsx-runtime/ViewLoader-dbg.js +2 -1
- package/src/sap/fe/core/jsx-runtime/ViewLoader.js.map +1 -1
- package/src/sap/fe/core/jsx-runtime/ViewLoader.tsx +6 -2
- package/src/sap/fe/core/jsx-runtime/jsx-control-dbg.js +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx-control.ts +3 -1
- package/src/sap/fe/core/jsx-runtime/useMDXComponents-dbg.js +3 -3
- package/src/sap/fe/core/jsx-runtime/useMDXComponents.js +1 -1
- package/src/sap/fe/core/jsx-runtime/useMDXComponents.js.map +1 -1
- package/src/sap/fe/core/jsx-runtime/useMDXComponents.tsx +1 -1
- package/src/sap/fe/core/library-dbg.js +2 -2
- package/src/sap/fe/core/library-preload.js +127 -125
- package/src/sap/fe/core/library-preload.js.map +1 -1
- package/src/sap/fe/core/library.js +1 -1
- package/src/sap/fe/core/library.ts +7 -0
- package/src/sap/fe/core/manifest.json +1 -1
- package/src/sap/fe/core/messagebundle.properties +33 -0
- package/src/sap/fe/core/messagebundle_ar.properties +12 -10
- package/src/sap/fe/core/messagebundle_bg.properties +11 -9
- package/src/sap/fe/core/messagebundle_ca.properties +11 -9
- package/src/sap/fe/core/messagebundle_cs.properties +11 -9
- package/src/sap/fe/core/messagebundle_cy.properties +11 -9
- package/src/sap/fe/core/messagebundle_da.properties +11 -9
- package/src/sap/fe/core/messagebundle_de.properties +3 -1
- package/src/sap/fe/core/messagebundle_el.properties +11 -9
- package/src/sap/fe/core/messagebundle_en.properties +3 -1
- package/src/sap/fe/core/messagebundle_en_GB.properties +2 -0
- package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +2 -0
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +20 -0
- package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +21 -3
- package/src/sap/fe/core/messagebundle_es.properties +11 -9
- package/src/sap/fe/core/messagebundle_es_MX.properties +11 -9
- package/src/sap/fe/core/messagebundle_et.properties +11 -9
- package/src/sap/fe/core/messagebundle_fi.properties +11 -9
- package/src/sap/fe/core/messagebundle_fr.properties +11 -9
- package/src/sap/fe/core/messagebundle_fr_CA.properties +3 -1
- package/src/sap/fe/core/messagebundle_hi.properties +2 -0
- package/src/sap/fe/core/messagebundle_hr.properties +11 -9
- package/src/sap/fe/core/messagebundle_hu.properties +11 -9
- package/src/sap/fe/core/messagebundle_id.properties +3 -1
- package/src/sap/fe/core/messagebundle_it.properties +11 -9
- package/src/sap/fe/core/messagebundle_iw.properties +11 -9
- package/src/sap/fe/core/messagebundle_ja.properties +11 -9
- package/src/sap/fe/core/messagebundle_kk.properties +11 -9
- package/src/sap/fe/core/messagebundle_ko.properties +2 -0
- package/src/sap/fe/core/messagebundle_lt.properties +11 -9
- package/src/sap/fe/core/messagebundle_lv.properties +2 -0
- package/src/sap/fe/core/messagebundle_ms.properties +12 -10
- package/src/sap/fe/core/messagebundle_nl.properties +12 -10
- package/src/sap/fe/core/messagebundle_no.properties +11 -9
- package/src/sap/fe/core/messagebundle_pl.properties +2 -0
- package/src/sap/fe/core/messagebundle_pt.properties +11 -9
- package/src/sap/fe/core/messagebundle_pt_PT.properties +11 -9
- package/src/sap/fe/core/messagebundle_ro.properties +3 -1
- package/src/sap/fe/core/messagebundle_ru.properties +3 -1
- package/src/sap/fe/core/messagebundle_sh.properties +11 -9
- package/src/sap/fe/core/messagebundle_sk.properties +11 -9
- package/src/sap/fe/core/messagebundle_sl.properties +11 -9
- package/src/sap/fe/core/messagebundle_sv.properties +2 -0
- package/src/sap/fe/core/messagebundle_th.properties +11 -9
- package/src/sap/fe/core/messagebundle_tr.properties +11 -9
- package/src/sap/fe/core/messagebundle_uk.properties +11 -9
- package/src/sap/fe/core/messagebundle_vi.properties +12 -10
- package/src/sap/fe/core/messagebundle_zh_CN.properties +2 -0
- package/src/sap/fe/core/messagebundle_zh_TW.properties +2 -0
- package/src/sap/fe/core/operationsHelper-dbg.js +70 -44
- package/src/sap/fe/core/operationsHelper.js +1 -1
- package/src/sap/fe/core/operationsHelper.js.map +1 -1
- package/src/sap/fe/core/operationsHelper.ts +88 -63
- package/src/sap/fe/core/rootView/Fcl-dbg.controller.js +1 -1
- package/src/sap/fe/core/rootView/Fcl.controller.ts +10 -0
- package/src/sap/fe/core/rootView/NavContainer-dbg.controller.js +2 -2
- package/src/sap/fe/core/rootView/NavContainer.controller.js +1 -1
- package/src/sap/fe/core/rootView/NavContainer.controller.js.map +1 -1
- package/src/sap/fe/core/rootView/NavContainer.controller.ts +5 -3
- package/src/sap/fe/core/rootView/RootViewBaseController-dbg.js +4 -3
- package/src/sap/fe/core/rootView/RootViewBaseController.js +1 -1
- package/src/sap/fe/core/rootView/RootViewBaseController.js.map +1 -1
- package/src/sap/fe/core/rootView/RootViewBaseController.ts +15 -5
- package/src/sap/fe/core/services/AsyncComponentServiceFactory-dbg.js +1 -1
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.ts +3 -1
- package/src/sap/fe/core/services/CacheHandlerServiceFactory-dbg.js +1 -1
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +15 -1
- package/src/sap/fe/core/services/EnvironmentServiceFactory-dbg.js +1 -1
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +4 -1
- package/src/sap/fe/core/services/NavigationServiceFactory-dbg.js +9 -1
- package/src/sap/fe/core/services/NavigationServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/NavigationServiceFactory.ts +19 -1
- package/src/sap/fe/core/services/ResourceModelServiceFactory-dbg.js +2 -2
- package/src/sap/fe/core/services/ResourceModelServiceFactory.js +1 -1
- package/src/sap/fe/core/services/ResourceModelServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +10 -3
- package/src/sap/fe/core/services/RoutingServiceFactory-dbg.js +3 -3
- package/src/sap/fe/core/services/RoutingServiceFactory.js +1 -1
- package/src/sap/fe/core/services/RoutingServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +29 -3
- package/src/sap/fe/core/services/ShellServicesFactory-dbg.js +1 -1
- package/src/sap/fe/core/services/ShellServicesFactory.ts +14 -2
- package/src/sap/fe/core/services/SideEffectsServiceFactory-dbg.js +448 -279
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +1 -1
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +502 -333
- package/src/sap/fe/core/services/TemplatedViewServiceFactory-dbg.js +18 -5
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +1 -1
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +41 -12
- package/src/sap/fe/core/support/Diagnostics-dbg.js +1 -1
- package/src/sap/fe/core/support/Diagnostics.ts +5 -0
- package/src/sap/fe/core/templating/DataModelPathHelper-dbg.js +185 -86
- package/src/sap/fe/core/templating/DataModelPathHelper.js +1 -1
- package/src/sap/fe/core/templating/DataModelPathHelper.js.map +1 -1
- package/src/sap/fe/core/templating/DataModelPathHelper.ts +190 -82
- package/src/sap/fe/core/templating/DisplayModeFormatter-dbg.js +1 -1
- package/src/sap/fe/core/templating/DisplayModeFormatter.ts +1 -1
- package/src/sap/fe/core/templating/EntitySetHelper-dbg.js +2 -3
- package/src/sap/fe/core/templating/EntitySetHelper.js +1 -1
- package/src/sap/fe/core/templating/EntitySetHelper.js.map +1 -1
- package/src/sap/fe/core/templating/EntitySetHelper.ts +1 -3
- package/src/sap/fe/core/templating/FilterHelper-dbg.js +3 -3
- package/src/sap/fe/core/templating/FilterHelper.js +1 -1
- package/src/sap/fe/core/templating/FilterHelper.js.map +1 -1
- package/src/sap/fe/core/templating/FilterHelper.ts +5 -3
- package/src/sap/fe/core/templating/PropertyHelper-dbg.js +1 -1
- package/src/sap/fe/core/templating/PropertyHelper.ts +2 -2
- package/src/sap/fe/core/templating/UIFormatters-dbg.js +1 -1
- package/src/sap/fe/core/templating/UIFormatters.ts +4 -0
- package/src/sap/fe/core/type/DateTimeWithTimezone-dbg.js +1 -1
- package/src/sap/fe/core/type/DateTimeWithTimezone.ts +2 -0
- package/src/sap/fe/core/type/FiscalDate-dbg.js +2 -2
- package/src/sap/fe/core/type/FiscalDate.js.map +1 -1
- package/src/sap/fe/core/type/FiscalDate.ts +2 -1
- package/src/sap/fe/core/type/TypeUtil-dbg.js +5 -10
- package/src/sap/fe/core/type/TypeUtil.js +1 -1
- package/src/sap/fe/core/type/TypeUtil.js.map +1 -1
- package/src/sap/fe/core/type/TypeUtil.ts +3 -6
- package/src/sap/fe/core/buildingBlocks/BuildingBlock-dbg.js +0 -410
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +0 -15
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.js.map +0 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.ts +0 -536
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFragment-dbg.js +0 -44
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFragment.js +0 -6
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFragment.js.map +0 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFragment.ts +0 -14
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime-dbg.js +0 -932
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js +0 -19
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js.map +0 -1
- package/src/sap/fe/core/controllerextensions/InternalEditFlow-dbg.js +0 -711
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +0 -6
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.js.map +0 -1
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +0 -863
- package/src/sap/fe/core/controls/ConditionalWrapper-dbg.js +0 -151
- package/src/sap/fe/core/controls/ConditionalWrapper.js +0 -6
- package/src/sap/fe/core/controls/ConditionalWrapper.js.map +0 -1
- package/src/sap/fe/core/controls/ConditionalWrapper.ts +0 -88
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper-dbg.js +0 -330
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +0 -6
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js.map +0 -1
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.ts +0 -292
- package/src/sap/fe/core/controls/CustomQuickViewPage-dbg.js +0 -126
- package/src/sap/fe/core/controls/CustomQuickViewPage.js +0 -6
- package/src/sap/fe/core/controls/CustomQuickViewPage.js.map +0 -1
- package/src/sap/fe/core/controls/CustomQuickViewPage.ts +0 -105
- package/src/sap/fe/core/controls/FieldWrapper-dbg.js +0 -194
- package/src/sap/fe/core/controls/FieldWrapper.js +0 -6
- package/src/sap/fe/core/controls/FieldWrapper.js.map +0 -1
- package/src/sap/fe/core/controls/FieldWrapper.ts +0 -121
- package/src/sap/fe/core/controls/FileWrapper-dbg.js +0 -280
- package/src/sap/fe/core/controls/FileWrapper.js +0 -6
- package/src/sap/fe/core/controls/FileWrapper.js.map +0 -1
- package/src/sap/fe/core/controls/FileWrapper.ts +0 -202
- package/src/sap/fe/core/helpers/SideEffectsHelper-dbg.js +0 -141
- package/src/sap/fe/core/helpers/SideEffectsHelper.js +0 -6
- package/src/sap/fe/core/helpers/SideEffectsHelper.js.map +0 -1
- package/src/sap/fe/core/helpers/SideEffectsHelper.ts +0 -129
|
@@ -71,6 +71,7 @@ sap.ui.define(["sap/fe/core/converters/controls/Common/Action", "sap/fe/core/con
|
|
|
71
71
|
* @param deleteHidden The value of the UI.DeleteHidden annotation on the entity set / type.
|
|
72
72
|
* @returns The binding expression for the 'visible' property of the Delete button.
|
|
73
73
|
*/
|
|
74
|
+
_exports.IMPORTANT_CRITICALITIES = IMPORTANT_CRITICALITIES;
|
|
74
75
|
function getDeleteButtonVisibility(converterContext, deleteHidden) {
|
|
75
76
|
const dataModelObjectPath = converterContext.getDataModelObjectPath(),
|
|
76
77
|
visitedNavigationPaths = dataModelObjectPath.navigationProperties.map(navProp => navProp.name),
|
|
@@ -283,7 +284,7 @@ sap.ui.define(["sap/fe/core/converters/controls/Common/Action", "sap/fe/core/con
|
|
|
283
284
|
headerDataFieldForIBNActions.filter(dataField => {
|
|
284
285
|
return IMPORTANT_CRITICALITIES.indexOf(dataField === null || dataField === void 0 ? void 0 : dataField.Criticality) === -1;
|
|
285
286
|
}).forEach(dataField => {
|
|
286
|
-
var _dataField$RequiresCo, _dataField$Inline, _dataField$Label, _dataField$annotation, _dataField$annotation2, _dataField$
|
|
287
|
+
var _dataField$RequiresCo, _dataField$Inline, _dataField$Label, _dataField$annotation, _dataField$annotation2, _dataField$Navigation;
|
|
287
288
|
if (((_dataField$RequiresCo = dataField.RequiresContext) === null || _dataField$RequiresCo === void 0 ? void 0 : _dataField$RequiresCo.valueOf()) === true) {
|
|
288
289
|
throw new Error(`RequiresContext property should not be true for header IBN action : ${dataField.Label}`);
|
|
289
290
|
}
|
|
@@ -298,7 +299,7 @@ sap.ui.define(["sap/fe/core/converters/controls/Common/Action", "sap/fe/core/con
|
|
|
298
299
|
text: (_dataField$Label = dataField.Label) === null || _dataField$Label === void 0 ? void 0 : _dataField$Label.toString(),
|
|
299
300
|
annotationPath: converterContext.getEntitySetBasedAnnotationPath(dataField.fullyQualifiedName),
|
|
300
301
|
buttonType: ButtonType.Ghost,
|
|
301
|
-
visible: compileExpression(not(equal(getExpressionFromAnnotation((_dataField$annotation = dataField.annotations) === null || _dataField$annotation === void 0 ? void 0 : (_dataField$annotation2 = _dataField$annotation.UI) === null || _dataField$annotation2 === void 0 ? void 0 :
|
|
302
|
+
visible: compileExpression(and(not(equal(getExpressionFromAnnotation((_dataField$annotation = dataField.annotations) === null || _dataField$annotation === void 0 ? void 0 : (_dataField$annotation2 = _dataField$annotation.UI) === null || _dataField$annotation2 === void 0 ? void 0 : _dataField$annotation2.Hidden), true)), not(equal(pathInModel("shellNavigationNotAvailable", "internal"), true)))),
|
|
302
303
|
enabled: dataField.NavigationAvailable !== undefined ? compileExpression(equal(getExpressionFromAnnotation((_dataField$Navigation = dataField.NavigationAvailable) === null || _dataField$Navigation === void 0 ? void 0 : _dataField$Navigation.valueOf()), true)) : true,
|
|
303
304
|
key: KeyHelper.generateKeyFromDataField(dataField),
|
|
304
305
|
isNavigable: true,
|
|
@@ -334,12 +335,12 @@ sap.ui.define(["sap/fe/core/converters/controls/Common/Action", "sap/fe/core/con
|
|
|
334
335
|
}
|
|
335
336
|
_exports.getHiddenHeaderActions = getHiddenHeaderActions;
|
|
336
337
|
function getFooterDefaultActions(viewLevel, converterContext) {
|
|
337
|
-
var
|
|
338
|
+
var _entitySet$annotation5, _entitySet$annotation6, _entitySet$annotation7, _entitySet$annotation8, _entitySet$annotation9;
|
|
338
339
|
const entitySet = converterContext.getEntitySet();
|
|
339
340
|
const entityType = converterContext.getEntityType();
|
|
340
341
|
const stickySessionSupported = ModelHelper.getStickySession(entitySet),
|
|
341
342
|
//for sticky app
|
|
342
|
-
entitySetDraftRoot = !ModelHelper.isSingleton(entitySet) && entitySet && (((
|
|
343
|
+
entitySetDraftRoot = !ModelHelper.isSingleton(entitySet) && entitySet && (((_entitySet$annotation5 = entitySet.annotations.Common) === null || _entitySet$annotation5 === void 0 ? void 0 : (_entitySet$annotation6 = _entitySet$annotation5.DraftRoot) === null || _entitySet$annotation6 === void 0 ? void 0 : _entitySet$annotation6.term) || ((_entitySet$annotation7 = entitySet.annotations) === null || _entitySet$annotation7 === void 0 ? void 0 : (_entitySet$annotation8 = _entitySet$annotation7.Session) === null || _entitySet$annotation8 === void 0 ? void 0 : (_entitySet$annotation9 = _entitySet$annotation8.StickySessionSupported) === null || _entitySet$annotation9 === void 0 ? void 0 : _entitySet$annotation9.term)),
|
|
343
344
|
conditionSave = Boolean(entitySetDraftRoot === "com.sap.vocabularies.Common.v1.DraftRoot" || stickySessionSupported && (stickySessionSupported === null || stickySessionSupported === void 0 ? void 0 : stickySessionSupported.SaveAction)),
|
|
344
345
|
conditionApply = viewLevel > 1,
|
|
345
346
|
conditionCancel = Boolean(entitySetDraftRoot === "com.sap.vocabularies.Common.v1.DraftRoot" || stickySessionSupported && (stickySessionSupported === null || stickySessionSupported === void 0 ? void 0 : stickySessionSupported.DiscardAction));
|
|
@@ -391,16 +392,16 @@ sap.ui.define(["sap/fe/core/converters/controls/Common/Action", "sap/fe/core/con
|
|
|
391
392
|
}
|
|
392
393
|
_exports.getFooterDefaultActions = getFooterDefaultActions;
|
|
393
394
|
function getDataFieldAnnotationAction(dataField, converterContext) {
|
|
394
|
-
var _dataField$
|
|
395
|
+
var _dataField$annotation3, _dataField$annotation4;
|
|
395
396
|
return {
|
|
396
397
|
type: ActionType.DataFieldForAction,
|
|
397
398
|
annotationPath: converterContext.getEntitySetBasedAnnotationPath(dataField.fullyQualifiedName),
|
|
398
399
|
key: KeyHelper.generateKeyFromDataField(dataField),
|
|
399
|
-
visible: compileExpression(not(equal(getExpressionFromAnnotation((_dataField$
|
|
400
|
+
visible: compileExpression(not(equal(getExpressionFromAnnotation((_dataField$annotation3 = dataField.annotations) === null || _dataField$annotation3 === void 0 ? void 0 : (_dataField$annotation4 = _dataField$annotation3.UI) === null || _dataField$annotation4 === void 0 ? void 0 : _dataField$annotation4.Hidden), true))),
|
|
400
401
|
enabled: getEnabledForAnnotationAction(converterContext, dataField.ActionTarget),
|
|
401
402
|
isNavigable: true
|
|
402
403
|
};
|
|
403
404
|
}
|
|
404
405
|
return _exports;
|
|
405
406
|
}, false);
|
|
406
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRJZGVudGlmaWNhdGlvbkRhdGFGaWVsZEZvckFjdGlvbnMiLCJlbnRpdHlUeXBlIiwiaXNEZXRlcm1pbmluZ0FjdGlvbiIsImFubm90YXRpb25zIiwiVUkiLCJJZGVudGlmaWNhdGlvbiIsImZpbHRlciIsImlkZW50aWZpY2F0aW9uRGF0YUZpZWxkIiwiSGlkZGVuIiwidmFsdWVPZiIsIiRUeXBlIiwiQm9vbGVhbiIsIkRldGVybWluaW5nIiwiQWN0aW9uVGFyZ2V0IiwiaXNCb3VuZCIsIkNvcmUiLCJPcGVyYXRpb25BdmFpbGFibGUiLCJnZXRJZGVudGlmaWNhdGlvbkRhdGFGaWVsZEZvcklCTkFjdGlvbnMiLCJJTVBPUlRBTlRfQ1JJVElDQUxJVElFUyIsImdldERlbGV0ZUJ1dHRvblZpc2liaWxpdHkiLCJjb252ZXJ0ZXJDb250ZXh0IiwiZGVsZXRlSGlkZGVuIiwiZGF0YU1vZGVsT2JqZWN0UGF0aCIsImdldERhdGFNb2RlbE9iamVjdFBhdGgiLCJ2aXNpdGVkTmF2aWdhdGlvblBhdGhzIiwibmF2aWdhdGlvblByb3BlcnRpZXMiLCJtYXAiLCJuYXZQcm9wIiwibmFtZSIsImRlbGV0ZUhpZGRlbkV4cHJlc3Npb24iLCJnZXRFeHByZXNzaW9uRnJvbUFubm90YXRpb24iLCJ1bmRlZmluZWQiLCJwYXRoIiwic2luZ2xldG9uUGF0aFZpc2l0b3IiLCJnZXRDb252ZXJ0ZWRUeXBlcyIsIm1hbmlmZXN0V3JhcHBlciIsImdldE1hbmlmZXN0V3JhcHBlciIsInZpZXdMZXZlbCIsImdldFZpZXdMZXZlbCIsImVkaXRhYmxlRXhwcmVzc2lvbiIsIklzRWRpdGFibGUiLCJub3QiLCJpZkVsc2UiLCJhbmQiLCJlcXVhbCIsImdldERlbGV0ZUJ1dHRvbkVuYWJsZWQiLCJpc0RlbGV0YWJsZSIsImlzUGFyZW50RGVsZXRhYmxlIiwiZW50aXR5U2V0IiwiZ2V0RW50aXR5U2V0IiwiaXNEcmFmdFJvb3QiLCJNb2RlbEhlbHBlciIsInJldCIsImNvbnN0YW50IiwicGF0aEluTW9kZWwiLCJnZXRFZGl0QnV0dG9uVmlzaWJpbGl0eSIsInJvb3RVcGRhdGVIaWRkZW4iLCJyb290Q29udmVydGVyQ29udGV4dCIsInVwZGF0ZUhpZGRlbiIsInJvb3RFbnRpdHlTZXQiLCJpc0ZDTEVuYWJsZWQiLCJpc0ZjbEVuYWJsZWQiLCJpc0RyYWZ0RW5hYmxlZCIsInJvb3RVcGRhdGVIaWRkZW5FeHByZXNzaW9uIiwiZ2V0SGlkZGVuRXhwcmVzc2lvbiIsImlzRHJhZnROb2RlIiwidXBkYXRlSGlkZGVuRXhwcmVzc2lvbiIsIm5vdEVkaXRhYmxlRXhwcmVzc2lvbiIsInJlc3VsdGFudEV4cHJlc3Npb24iLCJEcmFmdCIsIkhhc05vRHJhZnRGb3JDdXJyZW50VXNlciIsImdldEVkaXRCdXR0b25FbmFibGVkIiwidXBkYXRlUmVzdHJpY3Rpb25zIiwiaXNTdGlja3kiLCJlZGl0QWN0aW9uTmFtZSIsImlzU2luZ2xldG9uIiwiQ29tbW9uIiwiRHJhZnRSb290IiwiRWRpdEFjdGlvbiIsIlNlc3Npb24iLCJTdGlja3lTZXNzaW9uU3VwcG9ydGVkIiwiZWRpdEFjdGlvbkFubm90YXRpb25QYXRoIiwiZ2V0QWJzb2x1dGVBbm5vdGF0aW9uUGF0aCIsImVkaXRBY3Rpb24iLCJyZXNvbHZlQWJzb2x1dGVQYXRoIiwidGFyZ2V0IiwiY29tcGlsZUV4cHJlc3Npb24iLCJnZXRFbmFibGVkRm9yQW5ub3RhdGlvbkFjdGlvbiIsImdldEhlYWRlckRlZmF1bHRBY3Rpb25zIiwic0NvbnRleHRQYXRoIiwiZ2V0Q29udGV4dFBhdGgiLCJyb290RW50aXR5U2V0UGF0aCIsImdldFJvb3RFbnRpdHlTZXRQYXRoIiwiZ2V0Q29udmVydGVyQ29udGV4dEZvciIsImdldEVudGl0eVR5cGUiLCJyb290RW50aXR5VHlwZSIsInN0aWNreVNlc3Npb25TdXBwb3J0ZWQiLCJnZXRTdGlja3lTZXNzaW9uIiwiZHJhZnRSb290IiwiZ2V0RHJhZnRSb290IiwiZHJhZnROb2RlIiwiZ2V0RHJhZnROb2RlIiwiZW50aXR5RGVsZXRlUmVzdHJpY3Rpb25zIiwiQ2FwYWJpbGl0aWVzIiwiRGVsZXRlUmVzdHJpY3Rpb25zIiwiaXNVcGRhdGVIaWRkZW4iLCJpc1BhdGhEZWxldGFibGUiLCJwYXRoVmlzaXRvciIsIm5hdmlnYXRpb25QYXRocyIsInBhcmVudEVudGl0eVNldERlbGV0YWJsZSIsImlkZW50aWZpY2F0aW9uRmllbGRGb3JBY3Rpb25zIiwiY29weURhdGFGaWVsZCIsImdldENvcHlBY3Rpb24iLCJkYXRhRmllbGQiLCJkYXRhRmllbGRJc0NvcHlBY3Rpb24iLCJoZWFkZXJEYXRhRmllbGRGb3JBY3Rpb25zIiwiaGVhZGVyQWN0aW9ucyIsInB1c2giLCJ0eXBlIiwiQWN0aW9uVHlwZSIsIkRyYWZ0QWN0aW9ucyIsImtleSIsInVwZGF0YWJsZVByb3BlcnR5UGF0aCIsIlVwZGF0ZVJlc3RyaWN0aW9ucyIsIlVwZGF0YWJsZSIsIkNvbGxhYm9yYXRpb25BdmF0YXJzIiwiaW5kZXhPZiIsIkNyaXRpY2FsaXR5IiwiZm9yRWFjaCIsImdldERhdGFGaWVsZEFubm90YXRpb25BY3Rpb24iLCJQcmltYXJ5IiwidmlzaWJsZSIsImVuYWJsZWQiLCJEZWxldGFibGUiLCJnZXREZWxldGVIaWRkZW4iLCJTZWNvbmRhcnkiLCJwYXJlbnRFbnRpdHlEZWxldGVFbmFibGVkIiwiQ29weSIsInRleHQiLCJMYWJlbCIsInRvU3RyaW5nIiwiZ2V0TGlicmFyeVJlc291cmNlQnVuZGxlIiwiZ2V0VGV4dCIsImhlYWRlckRhdGFGaWVsZEZvcklCTkFjdGlvbnMiLCJSZXF1aXJlc0NvbnRleHQiLCJFcnJvciIsIklubGluZSIsIm9OYXZpZ2F0aW9uUGFyYW1zIiwic2VtYW50aWNPYmplY3RNYXBwaW5nIiwiZ2V0U2VtYW50aWNPYmplY3RNYXBwaW5nIiwiTWFwcGluZyIsIkRhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbiIsImFubm90YXRpb25QYXRoIiwiZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aCIsImZ1bGx5UXVhbGlmaWVkTmFtZSIsImJ1dHRvblR5cGUiLCJCdXR0b25UeXBlIiwiR2hvc3QiLCJOYXZpZ2F0aW9uQXZhaWxhYmxlIiwiS2V5SGVscGVyIiwiZ2VuZXJhdGVLZXlGcm9tRGF0YUZpZWxkIiwiaXNOYXZpZ2FibGUiLCJwcmVzcyIsImZuIiwiU2VtYW50aWNPYmplY3QiLCJBY3Rpb24iLCJjdXN0b21EYXRhIiwic2VtYW50aWNPYmplY3QiLCJhY3Rpb24iLCJnZXRIaWRkZW5IZWFkZXJBY3Rpb25zIiwiaGlkZGVuQWN0aW9ucyIsIkRlZmF1bHQiLCJnZXRGb290ZXJEZWZhdWx0QWN0aW9ucyIsImVudGl0eVNldERyYWZ0Um9vdCIsInRlcm0iLCJjb25kaXRpb25TYXZlIiwiU2F2ZUFjdGlvbiIsImNvbmRpdGlvbkFwcGx5IiwiY29uZGl0aW9uQ2FuY2VsIiwiRGlzY2FyZEFjdGlvbiIsImZvb3RlckRhdGFGaWVsZEZvckFjdGlvbnMiLCJmb290ZXJBY3Rpb25zIiwiZW50aXR5VHlwZU5hbWUiLCJEZWZhdWx0QXBwbHkiLCJwb3NpdGlvbiIsInBsYWNlbWVudCIsIlBsYWNlbWVudCIsIkVuZCIsIkRhdGFGaWVsZEZvckFjdGlvbiJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiSGVhZGVyQW5kRm9vdGVyQWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQWN0aW9uLCBFbnRpdHlTZXQsIEVudGl0eVR5cGUsIFByb3BlcnR5QW5ub3RhdGlvblZhbHVlIH0gZnJvbSBcIkBzYXAtdXgvdm9jYWJ1bGFyaWVzLXR5cGVzXCI7XG5pbXBvcnQgeyBDb21tb25Bbm5vdGF0aW9uVGVybXMgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvdm9jYWJ1bGFyaWVzL0NvbW1vblwiO1xuaW1wb3J0IHR5cGUgeyBEYXRhRmllbGRGb3JBY3Rpb25UeXBlcywgRGF0YUZpZWxkRm9ySW50ZW50QmFzZWROYXZpZ2F0aW9uVHlwZXMgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvdm9jYWJ1bGFyaWVzL1VJXCI7XG5pbXBvcnQgeyBVSUFubm90YXRpb25UeXBlcyB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlcy92b2NhYnVsYXJpZXMvVUlcIjtcbmltcG9ydCB7XG5cdEFubm90YXRpb25BY3Rpb24sXG5cdEJhc2VBY3Rpb24sXG5cdEJ1dHRvblR5cGUsXG5cdGRhdGFGaWVsZElzQ29weUFjdGlvbixcblx0Z2V0Q29weUFjdGlvbixcblx0Z2V0RW5hYmxlZEZvckFubm90YXRpb25BY3Rpb24sXG5cdGdldFNlbWFudGljT2JqZWN0TWFwcGluZ1xufSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9jb250cm9scy9Db21tb24vQWN0aW9uXCI7XG5pbXBvcnQgeyBQbGFjZW1lbnQgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9oZWxwZXJzL0NvbmZpZ3VyYWJsZU9iamVjdFwiO1xuaW1wb3J0IHsgS2V5SGVscGVyIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvaGVscGVycy9LZXlcIjtcbmltcG9ydCB7XG5cdGFuZCxcblx0QmluZGluZ1Rvb2xraXRFeHByZXNzaW9uLFxuXHRDb21waWxlZEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbixcblx0Y29tcGlsZUV4cHJlc3Npb24sXG5cdGNvbnN0YW50LFxuXHRlcXVhbCxcblx0Zm4sXG5cdGdldEV4cHJlc3Npb25Gcm9tQW5ub3RhdGlvbixcblx0aWZFbHNlLFxuXHRub3QsXG5cdHBhdGhJbk1vZGVsXG59IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0JpbmRpbmdUb29sa2l0XCI7XG5pbXBvcnQgTW9kZWxIZWxwZXIgZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvTW9kZWxIZWxwZXJcIjtcbmltcG9ydCB7IGlzUGF0aERlbGV0YWJsZSB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL0RhdGFNb2RlbFBhdGhIZWxwZXJcIjtcbmltcG9ydCBDb3JlIGZyb20gXCJzYXAvdWkvY29yZS9Db3JlXCI7XG5pbXBvcnQgdHlwZSBDb252ZXJ0ZXJDb250ZXh0IGZyb20gXCIuLi9Db252ZXJ0ZXJDb250ZXh0XCI7XG5pbXBvcnQgeyBEcmFmdCwgc2luZ2xldG9uUGF0aFZpc2l0b3IsIFVJIH0gZnJvbSBcIi4uL2hlbHBlcnMvQmluZGluZ0hlbHBlclwiO1xuaW1wb3J0IHsgQWN0aW9uVHlwZSB9IGZyb20gXCIuLi9NYW5pZmVzdFNldHRpbmdzXCI7XG5cbi8qKlxuICogUmV0cmlldmVzIGFsbCB0aGUgZGF0YSBmaWVsZCBmb3IgYWN0aW9ucyBmb3IgdGhlIGlkZW50aWZpY2F0aW9uIGFubm90YXRpb25cbiAqIFRoZXkgbXVzdCBiZVxuICogLSBOb3Qgc3RhdGljYWxseSBoaWRkZW5cbiAqIC0gRWl0aGVyIGxpbmtlZCB0byBhbiBVbmJvdW5kIGFjdGlvbiBvciB0byBhbiBhY3Rpb24gd2hpY2ggaGFzIGFuIE9wZXJhdGlvbkF2YWlsYWJsZSB0aGF0IGlzIG5vdCBzZXQgdG8gZmFsc2Ugc3RhdGljYWxseS5cbiAqXG4gKiBAcGFyYW0gZW50aXR5VHlwZSBUaGUgY3VycmVudCBlbnRpdHkgdHlwZVxuICogQHBhcmFtIGlzRGV0ZXJtaW5pbmdBY3Rpb24gVGhlIGZsYWcgd2hpY2ggZGVub3RlcyB3aGV0aGVyIG9yIG5vdCB0aGUgYWN0aW9uIGlzIGEgZGV0ZXJtaW5pbmcgYWN0aW9uXG4gKiBAcmV0dXJucyBBbiBhcnJheSBvZiBEYXRhRmllbGQgZm9yIGFjdGlvbiByZXNwZWN0aW5nIHRoZSBpbnB1dCBwYXJhbWV0ZXIgJ2lzRGV0ZXJtaW5pbmdBY3Rpb24nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRJZGVudGlmaWNhdGlvbkRhdGFGaWVsZEZvckFjdGlvbnMoZW50aXR5VHlwZTogRW50aXR5VHlwZSwgaXNEZXRlcm1pbmluZ0FjdGlvbjogYm9vbGVhbik6IERhdGFGaWVsZEZvckFjdGlvblR5cGVzW10ge1xuXHRyZXR1cm4gKGVudGl0eVR5cGUuYW5ub3RhdGlvbnM/LlVJPy5JZGVudGlmaWNhdGlvbj8uZmlsdGVyKChpZGVudGlmaWNhdGlvbkRhdGFGaWVsZCkgPT4ge1xuXHRcdHJldHVybiBpZGVudGlmaWNhdGlvbkRhdGFGaWVsZC5hbm5vdGF0aW9ucz8uVUk/LkhpZGRlbj8udmFsdWVPZigpICE9PSB0cnVlICYmXG5cdFx0XHRpZGVudGlmaWNhdGlvbkRhdGFGaWVsZC4kVHlwZSA9PT0gVUlBbm5vdGF0aW9uVHlwZXMuRGF0YUZpZWxkRm9yQWN0aW9uICYmXG5cdFx0XHRCb29sZWFuKGlkZW50aWZpY2F0aW9uRGF0YUZpZWxkLkRldGVybWluaW5nPy52YWx1ZU9mKCkpID09PSBpc0RldGVybWluaW5nQWN0aW9uICYmXG5cdFx0XHQoaWRlbnRpZmljYXRpb25EYXRhRmllbGQuQWN0aW9uVGFyZ2V0Py5pc0JvdW5kPy52YWx1ZU9mKCkgIT09IHRydWUgfHxcblx0XHRcdFx0aWRlbnRpZmljYXRpb25EYXRhRmllbGQ/LkFjdGlvblRhcmdldD8uYW5ub3RhdGlvbnM/LkNvcmU/Lk9wZXJhdGlvbkF2YWlsYWJsZT8udmFsdWVPZigpICE9PSBmYWxzZSlcblx0XHRcdD8gdHJ1ZVxuXHRcdFx0OiBmYWxzZTtcblx0fSkgfHwgW10pIGFzIERhdGFGaWVsZEZvckFjdGlvblR5cGVzW107XG59XG5cbi8qKlxuICogUmV0cmlldmUgYWxsIHRoZSBJQk4gYWN0aW9ucyBmb3IgdGhlIGlkZW50aWZpY2F0aW9uIGFubm90YXRpb24uXG4gKiBUaGV5IG11c3QgYmVcbiAqIC0gTm90IHN0YXRpY2FsbHkgaGlkZGVuLlxuICpcbiAqIEBwYXJhbSBlbnRpdHlUeXBlIFRoZSBjdXJyZW50IGVudGl0eXR5cGVcbiAqIEBwYXJhbSBpc0RldGVybWluaW5nQWN0aW9uIFdoZXRoZXIgb3Igbm90IHRoZSBhY3Rpb24gc2hvdWxkIGJlIGRldGVybWluaW5nXG4gKiBAcmV0dXJucyBBbiBhcnJheSBvZiBkYXRhIGZpZWxkIGZvciBhY3Rpb24gcmVzcGVjdGluZyB0aGUgaXNEZXRlcm1pbmluZ0FjdGlvbiBwcm9wZXJ0eS5cbiAqL1xuZnVuY3Rpb24gZ2V0SWRlbnRpZmljYXRpb25EYXRhRmllbGRGb3JJQk5BY3Rpb25zKFxuXHRlbnRpdHlUeXBlOiBFbnRpdHlUeXBlLFxuXHRpc0RldGVybWluaW5nQWN0aW9uOiBib29sZWFuXG4pOiBEYXRhRmllbGRGb3JJbnRlbnRCYXNlZE5hdmlnYXRpb25UeXBlc1tdIHtcblx0cmV0dXJuIChlbnRpdHlUeXBlLmFubm90YXRpb25zPy5VST8uSWRlbnRpZmljYXRpb24/LmZpbHRlcigoaWRlbnRpZmljYXRpb25EYXRhRmllbGQpID0+IHtcblx0XHRyZXR1cm4gaWRlbnRpZmljYXRpb25EYXRhRmllbGQuYW5ub3RhdGlvbnM/LlVJPy5IaWRkZW4/LnZhbHVlT2YoKSAhPT0gdHJ1ZSAmJlxuXHRcdFx0aWRlbnRpZmljYXRpb25EYXRhRmllbGQuJFR5cGUgPT09IFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbiAmJlxuXHRcdFx0Qm9vbGVhbihpZGVudGlmaWNhdGlvbkRhdGFGaWVsZC5EZXRlcm1pbmluZz8udmFsdWVPZigpKSA9PT0gaXNEZXRlcm1pbmluZ0FjdGlvblxuXHRcdFx0PyB0cnVlXG5cdFx0XHQ6IGZhbHNlO1xuXHR9KSB8fCBbXSkgYXMgRGF0YUZpZWxkRm9ySW50ZW50QmFzZWROYXZpZ2F0aW9uVHlwZXNbXTtcbn1cblxuY29uc3QgSU1QT1JUQU5UX0NSSVRJQ0FMSVRJRVMgPSBbXG5cdFwiVUkuQ3JpdGljYWxpdHlUeXBlL1ZlcnlQb3NpdGl2ZVwiLFxuXHRcIlVJLkNyaXRpY2FsaXR5VHlwZS9Qb3NpdGl2ZVwiLFxuXHRcIlVJLkNyaXRpY2FsaXR5VHlwZS9OZWdhdGl2ZVwiLFxuXHRcIlVJLkNyaXRpY2FsaXR5VHlwZS9WZXJ5TmVnYXRpdmVcIlxuXTtcblxuLyoqXG4gKiBNZXRob2QgdG8gZGV0ZXJtaW5lIHRoZSAndmlzaWJsZScgcHJvcGVydHkgYmluZGluZyBmb3IgdGhlIERlbGV0ZSBidXR0b24gb24gYW4gb2JqZWN0IHBhZ2UuXG4gKlxuICogQHBhcmFtIGNvbnZlcnRlckNvbnRleHQgSW5zdGFuY2Ugb2YgdGhlIGNvbnZlcnRlciBjb250ZXh0LlxuICogQHBhcmFtIGRlbGV0ZUhpZGRlbiBUaGUgdmFsdWUgb2YgdGhlIFVJLkRlbGV0ZUhpZGRlbiBhbm5vdGF0aW9uIG9uIHRoZSBlbnRpdHkgc2V0IC8gdHlwZS5cbiAqIEByZXR1cm5zIFRoZSBiaW5kaW5nIGV4cHJlc3Npb24gZm9yIHRoZSAndmlzaWJsZScgcHJvcGVydHkgb2YgdGhlIERlbGV0ZSBidXR0b24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXREZWxldGVCdXR0b25WaXNpYmlsaXR5KFxuXHRjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0LFxuXHRkZWxldGVIaWRkZW46IFByb3BlcnR5QW5ub3RhdGlvblZhbHVlPGJvb2xlYW4+IHwgdW5kZWZpbmVkXG4pOiBCaW5kaW5nVG9vbGtpdEV4cHJlc3Npb248Ym9vbGVhbj4ge1xuXHRjb25zdCBkYXRhTW9kZWxPYmplY3RQYXRoID0gY29udmVydGVyQ29udGV4dC5nZXREYXRhTW9kZWxPYmplY3RQYXRoKCksXG5cdFx0dmlzaXRlZE5hdmlnYXRpb25QYXRocyA9IGRhdGFNb2RlbE9iamVjdFBhdGgubmF2aWdhdGlvblByb3BlcnRpZXMubWFwKChuYXZQcm9wKSA9PiBuYXZQcm9wLm5hbWUpLFxuXHRcdC8vIFNldCBhYnNvbHV0ZSBiaW5kaW5nIHBhdGggZm9yIFNpbmdsZXRvbiByZWZlcmVuY2VzLCBvdGhlcndpc2UgdGhlIGNvbmZpZ3VyZWQgYW5ub3RhdGlvbiBwYXRoIGl0c2VsZi5cblx0XHQvLyBGb3IgZS5nLiAvY29tLnNhcC5uYW1lc3BhY2UuRW50aXR5Q29udGFpbmVyL1NpbmdsZXRvbi9Qcm9wZXJ0eSB0byAvU2luZ2xldG9uL1Byb3BlcnR5XG5cdFx0ZGVsZXRlSGlkZGVuRXhwcmVzc2lvbjogQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uPGJvb2xlYW4gfCB1bmRlZmluZWQ+ID0gZ2V0RXhwcmVzc2lvbkZyb21Bbm5vdGF0aW9uKFxuXHRcdFx0ZGVsZXRlSGlkZGVuLFxuXHRcdFx0dmlzaXRlZE5hdmlnYXRpb25QYXRocyxcblx0XHRcdHVuZGVmaW5lZCxcblx0XHRcdChwYXRoOiBzdHJpbmcpID0+IHNpbmdsZXRvblBhdGhWaXNpdG9yKHBhdGgsIGNvbnZlcnRlckNvbnRleHQuZ2V0Q29udmVydGVkVHlwZXMoKSwgW10pXG5cdFx0KSxcblx0XHRtYW5pZmVzdFdyYXBwZXIgPSBjb252ZXJ0ZXJDb250ZXh0LmdldE1hbmlmZXN0V3JhcHBlcigpLFxuXHRcdHZpZXdMZXZlbCA9IG1hbmlmZXN0V3JhcHBlci5nZXRWaWV3TGV2ZWwoKSxcblx0XHQvLyBEZWxldGUgYnV0dG9uIGlzIHZpc2libGVcblx0XHQvLyBJbiBPUCBcdFx0LS0+ICB3aGVuIG5vdCBpbiBlZGl0IG1vZGVcblx0XHQvLyBJbiBzdWItT1AgXHQtLT4gIHdoZW4gaW4gZWRpdCBtb2RlXG5cdFx0ZWRpdGFibGVFeHByZXNzaW9uOiBCaW5kaW5nVG9vbGtpdEV4cHJlc3Npb248Ym9vbGVhbj4gPSB2aWV3TGV2ZWwgPiAxID8gVUkuSXNFZGl0YWJsZSA6IG5vdChVSS5Jc0VkaXRhYmxlKTtcblxuXHQvLyBJZiBVSS5EZWxldGVIaWRkZW4gYW5ub3RhdGlvbiBvbiBlbnRpdHkgc2V0IG9yIHR5cGUgaXMgZWl0aGVyIG5vdCBkZWZpbmVkIG9yIGV4cGxpY2l0bHkgc2V0IHRvIGZhbHNlLFxuXHQvLyBEZWxldGUgYnV0dG9uIGlzIHZpc2libGUgYmFzZWQgb24gZWRpdGFibGVFeHByZXNzaW9uLlxuXHQvLyBlbHNlLFxuXHQvLyBEZWxldGUgYnV0dG9uIGlzIHZpc2libGUgYmFzZWQgb24gYm90aCBhbm5vdGF0aW9uIHBhdGggYW5kIGVkaXRhYmxlRXhwcmVzc2lvbi5cblx0cmV0dXJuIGlmRWxzZShcblx0XHRkZWxldGVIaWRkZW4gPT09IHVuZGVmaW5lZCB8fCBkZWxldGVIaWRkZW4udmFsdWVPZigpID09PSBmYWxzZSxcblx0XHRlZGl0YWJsZUV4cHJlc3Npb24sXG5cdFx0YW5kKGVkaXRhYmxlRXhwcmVzc2lvbiwgZXF1YWwoZGVsZXRlSGlkZGVuRXhwcmVzc2lvbiwgZmFsc2UpKVxuXHQpO1xufVxuXG4vKipcbiAqIE1ldGhvZCB0byBkZXRlcm1pbmUgdGhlICdlbmFibGVkJyBwcm9wZXJ0eSBiaW5kaW5nIGZvciB0aGUgRGVsZXRlIGJ1dHRvbiBvbiBhbiBvYmplY3QgcGFnZS5cbiAqXG4gKiBAcGFyYW0gaXNEZWxldGFibGUgVGhlIGRlbGV0ZSByZXN0cmljdGlvbiBjb25maWd1cmVkXG4gKiBAcGFyYW0gaXNQYXJlbnREZWxldGFibGUgVGhlIGRlbGV0ZSByZXN0cmljdGlvbiBjb25maWd1cmVkIG9uIHRoZSBwYXJlbnQgZW50aXR5XG4gKiBAcGFyYW0gY29udmVydGVyQ29udGV4dFxuICogQHJldHVybnMgVGhlIGJpbmRpbmcgZXhwcmVzc2lvbiBmb3IgdGhlICdlbmFibGVkJyBwcm9wZXJ0eSBvZiB0aGUgRGVsZXRlIGJ1dHRvblxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVsZXRlQnV0dG9uRW5hYmxlZChcblx0aXNEZWxldGFibGU6IFByb3BlcnR5QW5ub3RhdGlvblZhbHVlPEJvb2xlYW4+IHwgdW5kZWZpbmVkLFxuXHRpc1BhcmVudERlbGV0YWJsZTogQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uPGJvb2xlYW4+LFxuXHRjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0XG4pOiBCaW5kaW5nVG9vbGtpdEV4cHJlc3Npb248Ym9vbGVhbj4ge1xuXHRjb25zdCBlbnRpdHlTZXQgPSBjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVNldCgpLFxuXHRcdGlzRHJhZnRSb290ID0gTW9kZWxIZWxwZXIuaXNEcmFmdFJvb3QoZW50aXR5U2V0KTtcblxuXHRsZXQgcmV0ID0gaWZFbHNlKFxuXHRcdGlzUGFyZW50RGVsZXRhYmxlICE9PSB1bmRlZmluZWQsXG5cdFx0aXNQYXJlbnREZWxldGFibGUsXG5cdFx0aWZFbHNlKGlzRGVsZXRhYmxlICE9PSB1bmRlZmluZWQsIGVxdWFsKGlzRGVsZXRhYmxlLCB0cnVlKSwgY29uc3RhbnQodHJ1ZSkpXG5cdCk7XG5cblx0Ly8gZGVsZXRlIHNob3VsZCBiZSBkaXNhYmxlZCBmb3IgTG9ja2VkIG9iamVjdHNcblx0cmV0ID0gaXNEcmFmdFJvb3QgPyBhbmQocmV0LCBub3QocGF0aEluTW9kZWwoXCJEcmFmdEFkbWluaXN0cmF0aXZlRGF0YS9JblByb2Nlc3NCeVVzZXJcIikpKSA6IHJldDtcblxuXHRyZXR1cm4gcmV0O1xufVxuXG4vKipcbiAqIE1ldGhvZCB0byBkZXRlcm1pbmUgdGhlICd2aXNpYmxlJyBwcm9wZXJ0eSBiaW5kaW5nIGZvciB0aGUgRWRpdCBidXR0b24gb24gYW4gb2JqZWN0IHBhZ2UuXG4gKlxuICogQHBhcmFtIGNvbnZlcnRlckNvbnRleHQgSW5zdGFuY2Ugb2YgdGhlIGNvbnZlcnRlciBjb250ZXh0LlxuICogQHBhcmFtIHJvb3RVcGRhdGVIaWRkZW4gVGhlIHZhbHVlIG9mIHRoZSBVSS5VcGRhdGVIaWRkZW4gYW5ub3RhdGlvbiBvbiB0aGUgZW50aXR5IHNldCAvIHR5cGUuXG4gKiBAcGFyYW0gcm9vdENvbnZlcnRlckNvbnRleHRcbiAqIEBwYXJhbSB1cGRhdGVIaWRkZW5cbiAqIEBwYXJhbSB2aWV3TGV2ZWxcbiAqIEByZXR1cm5zIFRoZSBiaW5kaW5nIGV4cHJlc3Npb24gZm9yIHRoZSAndmlzaWJsZScgcHJvcGVydHkgb2YgdGhlIEVkaXQgYnV0dG9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RWRpdEJ1dHRvblZpc2liaWxpdHkoXG5cdGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQsXG5cdHJvb3RVcGRhdGVIaWRkZW46IFByb3BlcnR5QW5ub3RhdGlvblZhbHVlPGJvb2xlYW4+IHwgdW5kZWZpbmVkLFxuXHRyb290Q29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dCxcblx0dXBkYXRlSGlkZGVuPzogUHJvcGVydHlBbm5vdGF0aW9uVmFsdWU8Ym9vbGVhbj4gfCB1bmRlZmluZWQsXG5cdHZpZXdMZXZlbD86IG51bWJlciB8IHVuZGVmaW5lZFxuKTogQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uPGJvb2xlYW4+IHtcblx0Y29uc3Qgcm9vdEVudGl0eVNldCA9IHJvb3RDb252ZXJ0ZXJDb250ZXh0Py5nZXRFbnRpdHlTZXQoKSxcblx0XHRlbnRpdHlTZXQgPSBjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVNldCgpLFxuXHRcdGlzRkNMRW5hYmxlZCA9IGNvbnZlcnRlckNvbnRleHQuZ2V0TWFuaWZlc3RXcmFwcGVyKCkuaXNGY2xFbmFibGVkKCk7XG5cdGxldCBpc0RyYWZ0RW5hYmxlZDtcblx0Y29uc3Qgcm9vdFVwZGF0ZUhpZGRlbkV4cHJlc3Npb246IEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbjxib29sZWFuIHwgdW5kZWZpbmVkPiA9IGdldEhpZGRlbkV4cHJlc3Npb24oXG5cdFx0cm9vdENvbnZlcnRlckNvbnRleHQsXG5cdFx0cm9vdFVwZGF0ZUhpZGRlblxuXHQpO1xuXHRpZiAodmlld0xldmVsICYmIHZpZXdMZXZlbCA+IDEpIHtcblx0XHQvLyBpZiB2aWV3bGV2ZWwgPiAxIGNoZWNrIGlmIG5vZGUgaXMgZHJhZnQgZW5hYmxlZFxuXHRcdGlzRHJhZnRFbmFibGVkID0gTW9kZWxIZWxwZXIuaXNEcmFmdE5vZGUoZW50aXR5U2V0KTtcblx0fSBlbHNlIHtcblx0XHRpc0RyYWZ0RW5hYmxlZCA9IE1vZGVsSGVscGVyLmlzRHJhZnRSb290KHJvb3RFbnRpdHlTZXQpO1xuXHR9XG5cdGNvbnN0IHVwZGF0ZUhpZGRlbkV4cHJlc3Npb246IEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbjxib29sZWFuIHwgdW5kZWZpbmVkPiA9IGdldEhpZGRlbkV4cHJlc3Npb24ocm9vdENvbnZlcnRlckNvbnRleHQsIHVwZGF0ZUhpZGRlbik7XG5cblx0Y29uc3Qgbm90RWRpdGFibGVFeHByZXNzaW9uOiBCaW5kaW5nVG9vbGtpdEV4cHJlc3Npb248Ym9vbGVhbj4gPSBub3QoVUkuSXNFZGl0YWJsZSk7XG5cblx0Ly8gSWYgVUkuVXBkYXRlSGlkZGVuIGFubm90YXRpb24gb24gZW50aXR5IHNldCBvciB0eXBlIGlzIGVpdGhlciBub3QgZGVmaW5lZCBvciBleHBsaWNpdGx5IHNldCB0byBmYWxzZSxcblx0Ly8gRWRpdCBidXR0b24gaXMgdmlzaWJsZSBpbiBkaXNwbGF5IG1vZGUuXG5cdC8vIGVsc2UsXG5cdC8vIEVkaXQgYnV0dG9uIGlzIHZpc2libGUgYmFzZWQgb24gYm90aCBhbm5vdGF0aW9uIHBhdGggYW5kIGluIGRpc3BsYXkgbW9kZS5cblx0Y29uc3QgcmVzdWx0YW50RXhwcmVzc2lvbjogQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uPGJvb2xlYW4+ID0gaWZFbHNlKFxuXHRcdCh2aWV3TGV2ZWwgYXMgbnVtYmVyKSA+IDEsXG5cdFx0aWZFbHNlKFxuXHRcdFx0dXBkYXRlSGlkZGVuID09PSB1bmRlZmluZWQgfHwgdXBkYXRlSGlkZGVuLnZhbHVlT2YoKSA9PT0gZmFsc2UsXG5cdFx0XHRhbmQoXG5cdFx0XHRcdG5vdEVkaXRhYmxlRXhwcmVzc2lvbixcblx0XHRcdFx0ZXF1YWwocGF0aEluTW9kZWwoXCJyb290RWRpdFZpc2libGVcIiwgXCJpbnRlcm5hbFwiKSwgdHJ1ZSksXG5cdFx0XHRcdGlmRWxzZShpc0ZDTEVuYWJsZWQsIGVxdWFsKHBhdGhJbk1vZGVsKFwiL3Nob3dFZGl0QnV0dG9uXCIsIFwiZmNsaGVscGVyXCIpLCB0cnVlKSwgdHJ1ZSlcblx0XHRcdCksXG5cdFx0XHRhbmQoXG5cdFx0XHRcdG5vdEVkaXRhYmxlRXhwcmVzc2lvbixcblx0XHRcdFx0ZXF1YWwodXBkYXRlSGlkZGVuRXhwcmVzc2lvbiwgZmFsc2UpLFxuXHRcdFx0XHRlcXVhbChwYXRoSW5Nb2RlbChcInJvb3RFZGl0VmlzaWJsZVwiLCBcImludGVybmFsXCIpLCB0cnVlKSxcblx0XHRcdFx0aWZFbHNlKGlzRkNMRW5hYmxlZCwgZXF1YWwocGF0aEluTW9kZWwoXCIvc2hvd0VkaXRCdXR0b25cIiwgXCJmY2xoZWxwZXJcIiksIHRydWUpLCB0cnVlKVxuXHRcdFx0KVxuXHRcdCksXG5cdFx0aWZFbHNlKFxuXHRcdFx0cm9vdFVwZGF0ZUhpZGRlbiA9PT0gdW5kZWZpbmVkIHx8IHJvb3RVcGRhdGVIaWRkZW4udmFsdWVPZigpID09PSBmYWxzZSxcblx0XHRcdG5vdEVkaXRhYmxlRXhwcmVzc2lvbixcblx0XHRcdGFuZChub3RFZGl0YWJsZUV4cHJlc3Npb24sIGVxdWFsKHJvb3RVcGRhdGVIaWRkZW5FeHByZXNzaW9uLCBmYWxzZSkpXG5cdFx0KVxuXHQpO1xuXHRyZXR1cm4gaWZFbHNlKGlzRHJhZnRFbmFibGVkLCBhbmQocmVzdWx0YW50RXhwcmVzc2lvbiwgRHJhZnQuSGFzTm9EcmFmdEZvckN1cnJlbnRVc2VyKSwgcmVzdWx0YW50RXhwcmVzc2lvbik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRIaWRkZW5FeHByZXNzaW9uKGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQsIHVwZGF0ZUhpZGRlbjogUHJvcGVydHlBbm5vdGF0aW9uVmFsdWU8Ym9vbGVhbj4gfCB1bmRlZmluZWQpIHtcblx0Y29uc3QgZGF0YU1vZGVsT2JqZWN0UGF0aCA9IGNvbnZlcnRlckNvbnRleHQuZ2V0RGF0YU1vZGVsT2JqZWN0UGF0aCgpLFxuXHRcdHZpc2l0ZWROYXZpZ2F0aW9uUGF0aHMgPSBkYXRhTW9kZWxPYmplY3RQYXRoLm5hdmlnYXRpb25Qcm9wZXJ0aWVzLm1hcCgobmF2UHJvcCkgPT4gbmF2UHJvcC5uYW1lKSxcblx0XHQvLyBTZXQgYWJzb2x1dGUgYmluZGluZyBwYXRoIGZvciBTaW5nbGV0b24gcmVmZXJlbmNlcywgb3RoZXJ3aXNlIHRoZSBjb25maWd1cmVkIGFubm90YXRpb24gcGF0aCBpdHNlbGYuXG5cdFx0Ly8gRm9yIGUuZy4gL2NvbS5zYXAubmFtZXNwYWNlLkVudGl0eUNvbnRhaW5lci9TaW5nbGV0b24vUHJvcGVydHkgdG8gL1NpbmdsZXRvbi9Qcm9wZXJ0eVxuXHRcdHVwZGF0ZUhpZGRlbkV4cHJlc3Npb246IEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbjxib29sZWFuIHwgdW5kZWZpbmVkPiA9IGdldEV4cHJlc3Npb25Gcm9tQW5ub3RhdGlvbihcblx0XHRcdHVwZGF0ZUhpZGRlbixcblx0XHRcdHZpc2l0ZWROYXZpZ2F0aW9uUGF0aHMsXG5cdFx0XHR1bmRlZmluZWQsXG5cdFx0XHQocGF0aDogc3RyaW5nKSA9PiBzaW5nbGV0b25QYXRoVmlzaXRvcihwYXRoLCBjb252ZXJ0ZXJDb250ZXh0LmdldENvbnZlcnRlZFR5cGVzKCksIHZpc2l0ZWROYXZpZ2F0aW9uUGF0aHMpXG5cdFx0KTtcblx0cmV0dXJuIHVwZGF0ZUhpZGRlbkV4cHJlc3Npb247XG59XG4vKipcbiAqIE1ldGhvZCB0byBkZXRlcm1pbmUgdGhlICdlbmFibGVkJyBwcm9wZXJ0eSBiaW5kaW5nIGZvciB0aGUgRWRpdCBidXR0b24gb24gYW4gb2JqZWN0IHBhZ2UuXG4gKlxuICogQHBhcmFtIGNvbnZlcnRlckNvbnRleHQgSW5zdGFuY2Ugb2YgdGhlIGNvbnZlcnRlciBjb250ZXh0LlxuICogQHBhcmFtIHVwZGF0ZVJlc3RyaWN0aW9uc1xuICogQHBhcmFtIHZpZXdMZXZlbFxuICogQHJldHVybnMgVGhlIGJpbmRpbmcgZXhwcmVzc2lvbiBmb3IgdGhlICdlbmFibGVkJyBwcm9wZXJ0eSBvZiB0aGUgRWRpdCBidXR0b24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRFZGl0QnV0dG9uRW5hYmxlZChcblx0Y29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dCxcblx0dXBkYXRlUmVzdHJpY3Rpb25zPzogYW55LFxuXHR2aWV3TGV2ZWw/OiBudW1iZXIgfCB1bmRlZmluZWRcbik6IENvbXBpbGVkQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uIHtcblx0Y29uc3QgZW50aXR5U2V0ID0gY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlTZXQoKSxcblx0XHRpc0RyYWZ0Um9vdCA9IE1vZGVsSGVscGVyLmlzRHJhZnRSb290KGVudGl0eVNldCksXG5cdFx0aXNTdGlja3kgPSBNb2RlbEhlbHBlci5pc1N0aWNreShlbnRpdHlTZXQpO1xuXHRsZXQgZWRpdEFjdGlvbk5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblx0aWYgKGlzRHJhZnRSb290ICYmICFNb2RlbEhlbHBlci5pc1NpbmdsZXRvbihlbnRpdHlTZXQpKSB7XG5cdFx0ZWRpdEFjdGlvbk5hbWUgPSAoZW50aXR5U2V0IGFzIEVudGl0eVNldCk/LmFubm90YXRpb25zLkNvbW1vbj8uRHJhZnRSb290Py5FZGl0QWN0aW9uIGFzIHN0cmluZztcblx0fSBlbHNlIGlmIChpc1N0aWNreSAmJiAhTW9kZWxIZWxwZXIuaXNTaW5nbGV0b24oZW50aXR5U2V0KSkge1xuXHRcdGVkaXRBY3Rpb25OYW1lID0gKGVudGl0eVNldCBhcyBFbnRpdHlTZXQpPy5hbm5vdGF0aW9ucy5TZXNzaW9uPy5TdGlja3lTZXNzaW9uU3VwcG9ydGVkPy5FZGl0QWN0aW9uIGFzIHN0cmluZztcblx0fVxuXHRpZiAoZWRpdEFjdGlvbk5hbWUpIHtcblx0XHRjb25zdCBlZGl0QWN0aW9uQW5ub3RhdGlvblBhdGggPSBjb252ZXJ0ZXJDb250ZXh0LmdldEFic29sdXRlQW5ub3RhdGlvblBhdGgoZWRpdEFjdGlvbk5hbWUpO1xuXHRcdGNvbnN0IGVkaXRBY3Rpb24gPSBjb252ZXJ0ZXJDb250ZXh0LnJlc29sdmVBYnNvbHV0ZVBhdGgoZWRpdEFjdGlvbkFubm90YXRpb25QYXRoKS50YXJnZXQgYXMgQWN0aW9uIHwgbnVsbDtcblx0XHRpZiAoZWRpdEFjdGlvbj8uYW5ub3RhdGlvbnM/LkNvcmU/Lk9wZXJhdGlvbkF2YWlsYWJsZSA9PT0gbnVsbCkge1xuXHRcdFx0Ly8gV2UgZGlzYWJsZWQgYWN0aW9uIGFkdmVydGlzZW1lbnQgYnV0IGtlcHQgaXQgaW4gdGhlIGNvZGUgZm9yIHRoZSB0aW1lIGJlaW5nXG5cdFx0XHQvL3JldHVybiBcIns9ICR7I1wiICsgZWRpdEFjdGlvbk5hbWUgKyBcIn0gPyB0cnVlIDogZmFsc2UgfVwiO1xuXHRcdH0gZWxzZSBpZiAoKHZpZXdMZXZlbCBhcyBudW1iZXIpID4gMSkge1xuXHRcdFx0Ly8gRWRpdCBidXR0b24gaXMgZW5hYmxlZCBiYXNlZCBvbiB0aGUgdXBkYXRlIHJlc3RyaWN0aW9ucyBvZiB0aGUgc3ViLU9QXG5cdFx0XHRpZiAodXBkYXRlUmVzdHJpY3Rpb25zICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0cmV0dXJuIGNvbXBpbGVFeHByZXNzaW9uKFxuXHRcdFx0XHRcdGFuZChcblx0XHRcdFx0XHRcdGVxdWFsKGdldEV4cHJlc3Npb25Gcm9tQW5ub3RhdGlvbih1cGRhdGVSZXN0cmljdGlvbnMpLCB0cnVlKSxcblx0XHRcdFx0XHRcdGVxdWFsKHBhdGhJbk1vZGVsKFwicm9vdEVkaXRFbmFibGVkXCIsIFwiaW50ZXJuYWxcIiksIHRydWUpXG5cdFx0XHRcdFx0KVxuXHRcdFx0XHQpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0cmV0dXJuIGNvbXBpbGVFeHByZXNzaW9uKGVxdWFsKHBhdGhJbk1vZGVsKFwicm9vdEVkaXRFbmFibGVkXCIsIFwiaW50ZXJuYWxcIiksIHRydWUpKTtcblx0XHRcdH1cblx0XHR9IGVsc2Uge1xuXHRcdFx0cmV0dXJuIGdldEVuYWJsZWRGb3JBbm5vdGF0aW9uQWN0aW9uKGNvbnZlcnRlckNvbnRleHQsIGVkaXRBY3Rpb24gPz8gdW5kZWZpbmVkKTtcblx0XHR9XG5cdH1cblx0cmV0dXJuIFwidHJ1ZVwiO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SGVhZGVyRGVmYXVsdEFjdGlvbnMoY29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dCk6IEJhc2VBY3Rpb25bXSB7XG5cdGNvbnN0IHNDb250ZXh0UGF0aCA9IGNvbnZlcnRlckNvbnRleHQuZ2V0Q29udGV4dFBhdGgoKTtcblx0Y29uc3Qgcm9vdEVudGl0eVNldFBhdGggPSBNb2RlbEhlbHBlci5nZXRSb290RW50aXR5U2V0UGF0aChzQ29udGV4dFBhdGgpO1xuXHRjb25zdCByb290Q29udmVydGVyQ29udGV4dCA9IGNvbnZlcnRlckNvbnRleHQuZ2V0Q29udmVydGVyQ29udGV4dEZvcihcIi9cIiArIHJvb3RFbnRpdHlTZXRQYXRoKTtcblx0Y29uc3QgZW50aXR5U2V0ID0gY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlTZXQoKSxcblx0XHRlbnRpdHlUeXBlID0gY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlUeXBlKCksXG5cdFx0cm9vdEVudGl0eVNldCA9IHJvb3RDb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVNldCgpLFxuXHRcdHJvb3RFbnRpdHlUeXBlID0gcm9vdENvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5VHlwZSgpLFxuXHRcdHN0aWNreVNlc3Npb25TdXBwb3J0ZWQgPSBNb2RlbEhlbHBlci5nZXRTdGlja3lTZXNzaW9uKHJvb3RFbnRpdHlTZXQpLCAvL2ZvciBzdGlja3kgYXBwXG5cdFx0ZHJhZnRSb290ID0gTW9kZWxIZWxwZXIuZ2V0RHJhZnRSb290KHJvb3RFbnRpdHlTZXQpLCAvL2VudGl0eVNldCAmJiBlbnRpdHlTZXQuYW5ub3RhdGlvbnMuQ29tbW9uPy5EcmFmdFJvb3QsXG5cdFx0ZHJhZnROb2RlID0gTW9kZWxIZWxwZXIuZ2V0RHJhZnROb2RlKHJvb3RFbnRpdHlTZXQpLFxuXHRcdGVudGl0eURlbGV0ZVJlc3RyaWN0aW9ucyA9IGVudGl0eVNldCAmJiBlbnRpdHlTZXQuYW5ub3RhdGlvbnM/LkNhcGFiaWxpdGllcz8uRGVsZXRlUmVzdHJpY3Rpb25zLFxuXHRcdHJvb3RVcGRhdGVIaWRkZW4gPSBNb2RlbEhlbHBlci5pc1VwZGF0ZUhpZGRlbihyb290RW50aXR5U2V0LCByb290RW50aXR5VHlwZSksXG5cdFx0dXBkYXRlSGlkZGVuID0gcm9vdEVudGl0eVNldCAmJiAhTW9kZWxIZWxwZXIuaXNTaW5nbGV0b24ocm9vdEVudGl0eVNldCkgJiYgcm9vdFVwZGF0ZUhpZGRlbj8udmFsdWVPZigpLFxuXHRcdGRhdGFNb2RlbE9iamVjdFBhdGggPSBjb252ZXJ0ZXJDb250ZXh0LmdldERhdGFNb2RlbE9iamVjdFBhdGgoKSxcblx0XHRpc1BhcmVudERlbGV0YWJsZSA9IGlzUGF0aERlbGV0YWJsZShkYXRhTW9kZWxPYmplY3RQYXRoLCB7XG5cdFx0XHRwYXRoVmlzaXRvcjogKHBhdGg6IHN0cmluZywgbmF2aWdhdGlvblBhdGhzOiBzdHJpbmdbXSkgPT5cblx0XHRcdFx0c2luZ2xldG9uUGF0aFZpc2l0b3IocGF0aCwgY29udmVydGVyQ29udGV4dC5nZXRDb252ZXJ0ZWRUeXBlcygpLCBuYXZpZ2F0aW9uUGF0aHMpXG5cdFx0fSksXG5cdFx0cGFyZW50RW50aXR5U2V0RGVsZXRhYmxlID0gaXNQYXJlbnREZWxldGFibGUgPyBjb21waWxlRXhwcmVzc2lvbihpc1BhcmVudERlbGV0YWJsZSkgOiBpc1BhcmVudERlbGV0YWJsZSxcblx0XHRpZGVudGlmaWNhdGlvbkZpZWxkRm9yQWN0aW9ucyA9IGdldElkZW50aWZpY2F0aW9uRGF0YUZpZWxkRm9yQWN0aW9ucyhjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVR5cGUoKSwgZmFsc2UpO1xuXG5cdGNvbnN0IGNvcHlEYXRhRmllbGQgPVxuXHRcdGNvbnZlcnRlckNvbnRleHQuZ2V0TWFuaWZlc3RXcmFwcGVyKCkuZ2V0Vmlld0xldmVsKCkgPT09IDFcblx0XHRcdD8gZ2V0Q29weUFjdGlvbihcblx0XHRcdFx0XHRpZGVudGlmaWNhdGlvbkZpZWxkRm9yQWN0aW9ucy5maWx0ZXIoKGRhdGFGaWVsZCkgPT4ge1xuXHRcdFx0XHRcdFx0cmV0dXJuIGRhdGFGaWVsZElzQ29weUFjdGlvbihkYXRhRmllbGQpO1xuXHRcdFx0XHRcdH0pXG5cdFx0XHQgIClcblx0XHRcdDogdW5kZWZpbmVkO1xuXG5cdGNvbnN0IGhlYWRlckRhdGFGaWVsZEZvckFjdGlvbnMgPSBpZGVudGlmaWNhdGlvbkZpZWxkRm9yQWN0aW9ucy5maWx0ZXIoKGRhdGFGaWVsZCkgPT4ge1xuXHRcdHJldHVybiAhZGF0YUZpZWxkSXNDb3B5QWN0aW9uKGRhdGFGaWVsZCk7XG5cdH0pO1xuXG5cdC8vIEluaXRpYWxpemUgYWN0aW9ucyBhbmQgc3RhcnQgd2l0aCBkcmFmdCBhY3Rpb25zIGlmIGF2YWlsYWJsZSBzaW5jZSB0aGV5IHNob3VsZCBhcHBlYXIgaW4gdGhlIGZpcnN0XG5cdC8vIGxlZnRtb3N0IHBvc2l0aW9uIGluIHRoZSBhY3Rpb25zIGFyZWEgb2YgdGhlIE9QIGhlYWRlclxuXHQvLyBUaGlzIGlzIG1vcmUgbGlrZSBhIHBsYWNlaG9sZGVyIHRoYW4gYSBzaW5nbGUgYWN0aW9uLCBzaW5jZSB0aGlzIGNvbnRyb2xzIG5vdCBvbmx5IHRoZSB0ZW1wbGF0aW5nIG9mXG5cdC8vIHRoZSBidXR0b24gZm9yIHN3aXRjaGluZyBiZXR3ZWVuIGRyYWZ0IGFuZCBhY3RpdmUgZG9jdW1lbnQgdmVyc2lvbnMgYnV0IGFsc28gdGhlIGNvbnRyb2xzIGZvclxuXHQvLyB0aGUgY29sbGFib3JhdGl2ZSBkcmFmdCBmcmFnbWVudC5cblx0Y29uc3QgaGVhZGVyQWN0aW9uczogQmFzZUFjdGlvbltdID0gW107XG5cdGlmICghTW9kZWxIZWxwZXIuaXNTaW5nbGV0b24oZW50aXR5U2V0KSAmJiBkcmFmdFJvb3Q/LkVkaXRBY3Rpb24gJiYgdXBkYXRlSGlkZGVuICE9PSB0cnVlKSB7XG5cdFx0aGVhZGVyQWN0aW9ucy5wdXNoKHsgdHlwZTogQWN0aW9uVHlwZS5EcmFmdEFjdGlvbnMsIGtleTogXCJEcmFmdEFjdGlvbnNcIiB9KTtcblx0fVxuXG5cdGNvbnN0IHZpZXdMZXZlbCA9IGNvbnZlcnRlckNvbnRleHQuZ2V0TWFuaWZlc3RXcmFwcGVyKCkuZ2V0Vmlld0xldmVsKCk7XG5cdGNvbnN0IHVwZGF0YWJsZVByb3BlcnR5UGF0aCA9IHZpZXdMZXZlbCA+IDEgPyBlbnRpdHlTZXQ/LmFubm90YXRpb25zLkNhcGFiaWxpdGllcz8uVXBkYXRlUmVzdHJpY3Rpb25zPy5VcGRhdGFibGUgOiB1bmRlZmluZWQ7XG5cdGlmIChkcmFmdFJvb3QgfHwgZHJhZnROb2RlKSB7XG5cdFx0aGVhZGVyQWN0aW9ucy5wdXNoKHsgdHlwZTogQWN0aW9uVHlwZS5Db2xsYWJvcmF0aW9uQXZhdGFycywga2V5OiBcIkNvbGxhYm9yYXRpb25BdmF0YXJzXCIgfSk7XG5cdH1cblx0Ly8gVGhlbiBhZGQgdGhlIFwiQ3JpdGljYWxcIiBEYXRhRmllbGRGb3JBY3Rpb25zXG5cdGhlYWRlckRhdGFGaWVsZEZvckFjdGlvbnNcblx0XHQuZmlsdGVyKChkYXRhRmllbGQpID0+IHtcblx0XHRcdHJldHVybiBJTVBPUlRBTlRfQ1JJVElDQUxJVElFUy5pbmRleE9mKGRhdGFGaWVsZD8uQ3JpdGljYWxpdHkgYXMgc3RyaW5nKSA+IC0xO1xuXHRcdH0pXG5cdFx0LmZvckVhY2goKGRhdGFGaWVsZCkgPT4ge1xuXHRcdFx0aGVhZGVyQWN0aW9ucy5wdXNoKGdldERhdGFGaWVsZEFubm90YXRpb25BY3Rpb24oZGF0YUZpZWxkLCBjb252ZXJ0ZXJDb250ZXh0KSk7XG5cdFx0fSk7XG5cblx0Ly8gVGhlbiB0aGUgZWRpdCBhY3Rpb24gaWYgaXQgZXhpc3RzXG5cdGlmICgoZHJhZnRSb290Py5FZGl0QWN0aW9uIHx8IHN0aWNreVNlc3Npb25TdXBwb3J0ZWQ/LkVkaXRBY3Rpb24pICYmIHVwZGF0ZUhpZGRlbiAhPT0gdHJ1ZSkge1xuXHRcdGhlYWRlckFjdGlvbnMucHVzaCh7XG5cdFx0XHR0eXBlOiBBY3Rpb25UeXBlLlByaW1hcnksXG5cdFx0XHRrZXk6IFwiRWRpdEFjdGlvblwiLFxuXHRcdFx0dmlzaWJsZTogY29tcGlsZUV4cHJlc3Npb24oXG5cdFx0XHRcdGdldEVkaXRCdXR0b25WaXNpYmlsaXR5KFxuXHRcdFx0XHRcdGNvbnZlcnRlckNvbnRleHQsXG5cdFx0XHRcdFx0cm9vdFVwZGF0ZUhpZGRlbixcblx0XHRcdFx0XHRyb290Q29udmVydGVyQ29udGV4dCxcblx0XHRcdFx0XHRNb2RlbEhlbHBlci5pc1VwZGF0ZUhpZGRlbihlbnRpdHlTZXQsIGVudGl0eVR5cGUpLFxuXHRcdFx0XHRcdHZpZXdMZXZlbFxuXHRcdFx0XHQpXG5cdFx0XHQpLFxuXHRcdFx0ZW5hYmxlZDogZ2V0RWRpdEJ1dHRvbkVuYWJsZWQocm9vdENvbnZlcnRlckNvbnRleHQsIHVwZGF0YWJsZVByb3BlcnR5UGF0aCwgdmlld0xldmVsKVxuXHRcdH0pO1xuXHR9XG5cdC8vIFRoZW4gdGhlIGRlbGV0ZSBhY3Rpb24gaWYgd2UncmUgbm90IHN0YXRpY2FsbHkgbm90IGRlbGV0YWJsZVxuXHRpZiAoXG5cdFx0KHBhcmVudEVudGl0eVNldERlbGV0YWJsZSAmJiBwYXJlbnRFbnRpdHlTZXREZWxldGFibGUgIT09IFwiZmFsc2VcIikgfHxcblx0XHQoZW50aXR5RGVsZXRlUmVzdHJpY3Rpb25zPy5EZWxldGFibGU/LnZhbHVlT2YoKSAhPT0gZmFsc2UgJiYgcGFyZW50RW50aXR5U2V0RGVsZXRhYmxlICE9PSBcImZhbHNlXCIpXG5cdCkge1xuXHRcdGNvbnN0IGRlbGV0ZUhpZGRlbiA9IE1vZGVsSGVscGVyLmdldERlbGV0ZUhpZGRlbihlbnRpdHlTZXQsIGVudGl0eVR5cGUpIGFzIFByb3BlcnR5QW5ub3RhdGlvblZhbHVlPGJvb2xlYW4+O1xuXHRcdGhlYWRlckFjdGlvbnMucHVzaCh7XG5cdFx0XHR0eXBlOiBBY3Rpb25UeXBlLlNlY29uZGFyeSxcblx0XHRcdGtleTogXCJEZWxldGVBY3Rpb25cIixcblx0XHRcdHZpc2libGU6IGNvbXBpbGVFeHByZXNzaW9uKGdldERlbGV0ZUJ1dHRvblZpc2liaWxpdHkoY29udmVydGVyQ29udGV4dCwgZGVsZXRlSGlkZGVuKSksXG5cdFx0XHRlbmFibGVkOiBjb21waWxlRXhwcmVzc2lvbihnZXREZWxldGVCdXR0b25FbmFibGVkKGVudGl0eURlbGV0ZVJlc3RyaWN0aW9ucz8uRGVsZXRhYmxlLCBpc1BhcmVudERlbGV0YWJsZSwgY29udmVydGVyQ29udGV4dCkpLFxuXHRcdFx0cGFyZW50RW50aXR5RGVsZXRlRW5hYmxlZDogcGFyZW50RW50aXR5U2V0RGVsZXRhYmxlXG5cdFx0fSk7XG5cdH1cblxuXHRpZiAoY29weURhdGFGaWVsZCkge1xuXHRcdGhlYWRlckFjdGlvbnMucHVzaCh7XG5cdFx0XHQuLi5nZXREYXRhRmllbGRBbm5vdGF0aW9uQWN0aW9uKGNvcHlEYXRhRmllbGQsIGNvbnZlcnRlckNvbnRleHQpLFxuXHRcdFx0dHlwZTogQWN0aW9uVHlwZS5Db3B5LFxuXHRcdFx0dGV4dDogY29weURhdGFGaWVsZC5MYWJlbD8udG9TdHJpbmcoKSA/PyBDb3JlLmdldExpYnJhcnlSZXNvdXJjZUJ1bmRsZShcInNhcC5mZS5jb3JlXCIpLmdldFRleHQoXCJDX0NPTU1PTl9DT1BZXCIpXG5cdFx0fSk7XG5cdH1cblxuXHRjb25zdCBoZWFkZXJEYXRhRmllbGRGb3JJQk5BY3Rpb25zID0gZ2V0SWRlbnRpZmljYXRpb25EYXRhRmllbGRGb3JJQk5BY3Rpb25zKGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5VHlwZSgpLCBmYWxzZSk7XG5cblx0aGVhZGVyRGF0YUZpZWxkRm9ySUJOQWN0aW9uc1xuXHRcdC5maWx0ZXIoKGRhdGFGaWVsZCkgPT4ge1xuXHRcdFx0cmV0dXJuIElNUE9SVEFOVF9DUklUSUNBTElUSUVTLmluZGV4T2YoZGF0YUZpZWxkPy5Dcml0aWNhbGl0eSBhcyBzdHJpbmcpID09PSAtMTtcblx0XHR9KVxuXHRcdC5mb3JFYWNoKChkYXRhRmllbGQpID0+IHtcblx0XHRcdGlmIChkYXRhRmllbGQuUmVxdWlyZXNDb250ZXh0Py52YWx1ZU9mKCkgPT09IHRydWUpIHtcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKGBSZXF1aXJlc0NvbnRleHQgcHJvcGVydHkgc2hvdWxkIG5vdCBiZSB0cnVlIGZvciBoZWFkZXIgSUJOIGFjdGlvbiA6ICR7ZGF0YUZpZWxkLkxhYmVsfWApO1xuXHRcdFx0fVxuXHRcdFx0aWYgKGRhdGFGaWVsZC5JbmxpbmU/LnZhbHVlT2YoKSA9PT0gdHJ1ZSkge1xuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3IoYElubGluZSBwcm9wZXJ0eSBzaG91bGQgbm90IGJlIHRydWUgZm9yIGhlYWRlciBJQk4gYWN0aW9uIDogJHtkYXRhRmllbGQuTGFiZWx9YCk7XG5cdFx0XHR9XG5cdFx0XHRjb25zdCBvTmF2aWdhdGlvblBhcmFtcyA9IHtcblx0XHRcdFx0c2VtYW50aWNPYmplY3RNYXBwaW5nOiBnZXRTZW1hbnRpY09iamVjdE1hcHBpbmcoZGF0YUZpZWxkLk1hcHBpbmcpXG5cdFx0XHR9O1xuXG5cdFx0XHRoZWFkZXJBY3Rpb25zLnB1c2goe1xuXHRcdFx0XHR0eXBlOiBBY3Rpb25UeXBlLkRhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbixcblx0XHRcdFx0dGV4dDogZGF0YUZpZWxkLkxhYmVsPy50b1N0cmluZygpLFxuXHRcdFx0XHRhbm5vdGF0aW9uUGF0aDogY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlTZXRCYXNlZEFubm90YXRpb25QYXRoKGRhdGFGaWVsZC5mdWxseVF1YWxpZmllZE5hbWUpLFxuXHRcdFx0XHRidXR0b25UeXBlOiBCdXR0b25UeXBlLkdob3N0LFxuXHRcdFx0XHR2aXNpYmxlOiBjb21waWxlRXhwcmVzc2lvbihub3QoZXF1YWwoZ2V0RXhwcmVzc2lvbkZyb21Bbm5vdGF0aW9uKGRhdGFGaWVsZC5hbm5vdGF0aW9ucz8uVUk/LkhpZGRlbj8udmFsdWVPZigpKSwgdHJ1ZSkpKSxcblx0XHRcdFx0ZW5hYmxlZDpcblx0XHRcdFx0XHRkYXRhRmllbGQuTmF2aWdhdGlvbkF2YWlsYWJsZSAhPT0gdW5kZWZpbmVkXG5cdFx0XHRcdFx0XHQ/IGNvbXBpbGVFeHByZXNzaW9uKGVxdWFsKGdldEV4cHJlc3Npb25Gcm9tQW5ub3RhdGlvbihkYXRhRmllbGQuTmF2aWdhdGlvbkF2YWlsYWJsZT8udmFsdWVPZigpKSwgdHJ1ZSkpXG5cdFx0XHRcdFx0XHQ6IHRydWUsXG5cdFx0XHRcdGtleTogS2V5SGVscGVyLmdlbmVyYXRlS2V5RnJvbURhdGFGaWVsZChkYXRhRmllbGQpLFxuXHRcdFx0XHRpc05hdmlnYWJsZTogdHJ1ZSxcblx0XHRcdFx0cHJlc3M6IGNvbXBpbGVFeHByZXNzaW9uKFxuXHRcdFx0XHRcdGZuKFwiLl9pbnRlbnRCYXNlZE5hdmlnYXRpb24ubmF2aWdhdGVcIiwgW1xuXHRcdFx0XHRcdFx0Z2V0RXhwcmVzc2lvbkZyb21Bbm5vdGF0aW9uKGRhdGFGaWVsZC5TZW1hbnRpY09iamVjdCksXG5cdFx0XHRcdFx0XHRnZXRFeHByZXNzaW9uRnJvbUFubm90YXRpb24oZGF0YUZpZWxkLkFjdGlvbiksXG5cdFx0XHRcdFx0XHRvTmF2aWdhdGlvblBhcmFtc1xuXHRcdFx0XHRcdF0pXG5cdFx0XHRcdCksXG5cdFx0XHRcdGN1c3RvbURhdGE6IGNvbXBpbGVFeHByZXNzaW9uKHtcblx0XHRcdFx0XHRzZW1hbnRpY09iamVjdDogZ2V0RXhwcmVzc2lvbkZyb21Bbm5vdGF0aW9uKGRhdGFGaWVsZC5TZW1hbnRpY09iamVjdCksXG5cdFx0XHRcdFx0YWN0aW9uOiBnZXRFeHByZXNzaW9uRnJvbUFubm90YXRpb24oZGF0YUZpZWxkLkFjdGlvbilcblx0XHRcdFx0fSlcblx0XHRcdH0gYXMgQW5ub3RhdGlvbkFjdGlvbik7XG5cdFx0fSk7XG5cdC8vIEZpbmFsbHkgdGhlIG5vbiBjcml0aWNhbCBEYXRhRmllbGRGb3JBY3Rpb25zXG5cdGhlYWRlckRhdGFGaWVsZEZvckFjdGlvbnNcblx0XHQuZmlsdGVyKChkYXRhRmllbGQpID0+IHtcblx0XHRcdHJldHVybiBJTVBPUlRBTlRfQ1JJVElDQUxJVElFUy5pbmRleE9mKGRhdGFGaWVsZD8uQ3JpdGljYWxpdHkgYXMgc3RyaW5nKSA9PT0gLTE7XG5cdFx0fSlcblx0XHQuZm9yRWFjaCgoZGF0YUZpZWxkKSA9PiB7XG5cdFx0XHRoZWFkZXJBY3Rpb25zLnB1c2goZ2V0RGF0YUZpZWxkQW5ub3RhdGlvbkFjdGlvbihkYXRhRmllbGQsIGNvbnZlcnRlckNvbnRleHQpKTtcblx0XHR9KTtcblxuXHRyZXR1cm4gaGVhZGVyQWN0aW9ucztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEhpZGRlbkhlYWRlckFjdGlvbnMoY29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dCk6IEJhc2VBY3Rpb25bXSB7XG5cdGNvbnN0IGVudGl0eVR5cGUgPSBjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVR5cGUoKTtcblx0Y29uc3QgaGlkZGVuQWN0aW9ucyA9IChlbnRpdHlUeXBlLmFubm90YXRpb25zPy5VST8uSWRlbnRpZmljYXRpb24/LmZpbHRlcigoaWRlbnRpZmljYXRpb25EYXRhRmllbGQpID0+IHtcblx0XHRyZXR1cm4gaWRlbnRpZmljYXRpb25EYXRhRmllbGQ/LmFubm90YXRpb25zPy5VST8uSGlkZGVuPy52YWx1ZU9mKCkgPT09IHRydWU7XG5cdH0pIHx8IFtdKSBhcyBEYXRhRmllbGRGb3JBY3Rpb25UeXBlc1tdO1xuXHRyZXR1cm4gaGlkZGVuQWN0aW9ucy5tYXAoKGRhdGFGaWVsZCkgPT4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHR0eXBlOiBBY3Rpb25UeXBlLkRlZmF1bHQsXG5cdFx0XHRrZXk6IEtleUhlbHBlci5nZW5lcmF0ZUtleUZyb21EYXRhRmllbGQoZGF0YUZpZWxkKVxuXHRcdH07XG5cdH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rm9vdGVyRGVmYXVsdEFjdGlvbnModmlld0xldmVsOiBudW1iZXIsIGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQpOiBCYXNlQWN0aW9uW10ge1xuXHRjb25zdCBlbnRpdHlTZXQgPSBjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVNldCgpO1xuXHRjb25zdCBlbnRpdHlUeXBlID0gY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlUeXBlKCk7XG5cdGNvbnN0IHN0aWNreVNlc3Npb25TdXBwb3J0ZWQgPSBNb2RlbEhlbHBlci5nZXRTdGlja3lTZXNzaW9uKGVudGl0eVNldCksIC8vZm9yIHN0aWNreSBhcHBcblx0XHRlbnRpdHlTZXREcmFmdFJvb3QgPVxuXHRcdFx0IU1vZGVsSGVscGVyLmlzU2luZ2xldG9uKGVudGl0eVNldCkgJiZcblx0XHRcdGVudGl0eVNldCAmJlxuXHRcdFx0KChlbnRpdHlTZXQgYXMgRW50aXR5U2V0KS5hbm5vdGF0aW9ucy5Db21tb24/LkRyYWZ0Um9vdD8udGVybSB8fFxuXHRcdFx0XHQoZW50aXR5U2V0IGFzIEVudGl0eVNldCkuYW5ub3RhdGlvbnM/LlNlc3Npb24/LlN0aWNreVNlc3Npb25TdXBwb3J0ZWQ/LnRlcm0pLFxuXHRcdGNvbmRpdGlvblNhdmUgPSBCb29sZWFuKFxuXHRcdFx0ZW50aXR5U2V0RHJhZnRSb290ID09PSBDb21tb25Bbm5vdGF0aW9uVGVybXMuRHJhZnRSb290IHx8IChzdGlja3lTZXNzaW9uU3VwcG9ydGVkICYmIHN0aWNreVNlc3Npb25TdXBwb3J0ZWQ/LlNhdmVBY3Rpb24pXG5cdFx0KSxcblx0XHRjb25kaXRpb25BcHBseSA9IHZpZXdMZXZlbCA+IDEsXG5cdFx0Y29uZGl0aW9uQ2FuY2VsID0gQm9vbGVhbihcblx0XHRcdGVudGl0eVNldERyYWZ0Um9vdCA9PT0gQ29tbW9uQW5ub3RhdGlvblRlcm1zLkRyYWZ0Um9vdCB8fCAoc3RpY2t5U2Vzc2lvblN1cHBvcnRlZCAmJiBzdGlja3lTZXNzaW9uU3VwcG9ydGVkPy5EaXNjYXJkQWN0aW9uKVxuXHRcdCk7XG5cblx0Ly8gUmV0cmlldmUgYWxsIGRldGVybWluaW5nIGFjdGlvbnNcblx0Y29uc3QgZm9vdGVyRGF0YUZpZWxkRm9yQWN0aW9ucyA9IGdldElkZW50aWZpY2F0aW9uRGF0YUZpZWxkRm9yQWN0aW9ucyhjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVR5cGUoKSwgdHJ1ZSk7XG5cblx0Ly8gRmlyc3QgYWRkIHRoZSBcIkNyaXRpY2FsXCIgRGF0YUZpZWxkRm9yQWN0aW9uc1xuXHRjb25zdCBmb290ZXJBY3Rpb25zOiBCYXNlQWN0aW9uW10gPSBmb290ZXJEYXRhRmllbGRGb3JBY3Rpb25zXG5cdFx0LmZpbHRlcigoZGF0YUZpZWxkKSA9PiB7XG5cdFx0XHRyZXR1cm4gSU1QT1JUQU5UX0NSSVRJQ0FMSVRJRVMuaW5kZXhPZihkYXRhRmllbGQ/LkNyaXRpY2FsaXR5IGFzIHN0cmluZykgPiAtMTtcblx0XHR9KVxuXHRcdC5tYXAoKGRhdGFGaWVsZCkgPT4ge1xuXHRcdFx0cmV0dXJuIGdldERhdGFGaWVsZEFubm90YXRpb25BY3Rpb24oZGF0YUZpZWxkLCBjb252ZXJ0ZXJDb250ZXh0KTtcblx0XHR9KTtcblxuXHQvLyBUaGVuIHRoZSBzYXZlIGFjdGlvbiBpZiBpdCBleGlzdHNcblx0aWYgKGVudGl0eVNldD8uZW50aXR5VHlwZU5hbWUgPT09IGVudGl0eVR5cGU/LmZ1bGx5UXVhbGlmaWVkTmFtZSAmJiBjb25kaXRpb25TYXZlKSB7XG5cdFx0Zm9vdGVyQWN0aW9ucy5wdXNoKHsgdHlwZTogQWN0aW9uVHlwZS5QcmltYXJ5LCBrZXk6IFwiU2F2ZUFjdGlvblwiIH0pO1xuXHR9XG5cblx0Ly8gVGhlbiB0aGUgYXBwbHkgYWN0aW9uIGlmIGl0IGV4aXN0c1xuXHRpZiAoY29uZGl0aW9uQXBwbHkpIHtcblx0XHRmb290ZXJBY3Rpb25zLnB1c2goeyB0eXBlOiBBY3Rpb25UeXBlLkRlZmF1bHRBcHBseSwga2V5OiBcIkFwcGx5QWN0aW9uXCIgfSk7XG5cdH1cblxuXHQvLyBUaGVuIHRoZSBub24gY3JpdGljYWwgRGF0YUZpZWxkRm9yQWN0aW9uc1xuXHRmb290ZXJEYXRhRmllbGRGb3JBY3Rpb25zXG5cdFx0LmZpbHRlcigoZGF0YUZpZWxkKSA9PiB7XG5cdFx0XHRyZXR1cm4gSU1QT1JUQU5UX0NSSVRJQ0FMSVRJRVMuaW5kZXhPZihkYXRhRmllbGQ/LkNyaXRpY2FsaXR5IGFzIHN0cmluZykgPT09IC0xO1xuXHRcdH0pXG5cdFx0LmZvckVhY2goKGRhdGFGaWVsZCkgPT4ge1xuXHRcdFx0Zm9vdGVyQWN0aW9ucy5wdXNoKGdldERhdGFGaWVsZEFubm90YXRpb25BY3Rpb24oZGF0YUZpZWxkLCBjb252ZXJ0ZXJDb250ZXh0KSk7XG5cdFx0fSk7XG5cblx0Ly8gVGhlbiB0aGUgY2FuY2VsIGFjdGlvbiBpZiBpdCBleGlzdHNcblx0aWYgKGNvbmRpdGlvbkNhbmNlbCkge1xuXHRcdGZvb3RlckFjdGlvbnMucHVzaCh7XG5cdFx0XHR0eXBlOiBBY3Rpb25UeXBlLlNlY29uZGFyeSxcblx0XHRcdGtleTogXCJDYW5jZWxBY3Rpb25cIixcblx0XHRcdHBvc2l0aW9uOiB7IHBsYWNlbWVudDogUGxhY2VtZW50LkVuZCB9XG5cdFx0fSk7XG5cdH1cblx0cmV0dXJuIGZvb3RlckFjdGlvbnM7XG59XG5cbmZ1bmN0aW9uIGdldERhdGFGaWVsZEFubm90YXRpb25BY3Rpb24oZGF0YUZpZWxkOiBEYXRhRmllbGRGb3JBY3Rpb25UeXBlcywgY29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dCk6IEFubm90YXRpb25BY3Rpb24ge1xuXHRyZXR1cm4ge1xuXHRcdHR5cGU6IEFjdGlvblR5cGUuRGF0YUZpZWxkRm9yQWN0aW9uLFxuXHRcdGFubm90YXRpb25QYXRoOiBjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVNldEJhc2VkQW5ub3RhdGlvblBhdGgoZGF0YUZpZWxkLmZ1bGx5UXVhbGlmaWVkTmFtZSksXG5cdFx0a2V5OiBLZXlIZWxwZXIuZ2VuZXJhdGVLZXlGcm9tRGF0YUZpZWxkKGRhdGFGaWVsZCksXG5cdFx0dmlzaWJsZTogY29tcGlsZUV4cHJlc3Npb24obm90KGVxdWFsKGdldEV4cHJlc3Npb25Gcm9tQW5ub3RhdGlvbihkYXRhRmllbGQuYW5ub3RhdGlvbnM/LlVJPy5IaWRkZW4pLCB0cnVlKSkpLFxuXHRcdGVuYWJsZWQ6IGdldEVuYWJsZWRGb3JBbm5vdGF0aW9uQWN0aW9uKGNvbnZlcnRlckNvbnRleHQsIGRhdGFGaWVsZC5BY3Rpb25UYXJnZXQpLFxuXHRcdGlzTmF2aWdhYmxlOiB0cnVlXG5cdH0gYXMgQW5ub3RhdGlvbkFjdGlvbjtcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQUE7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFtQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFDTyxTQUFTQSxvQ0FBb0MsQ0FBQ0MsVUFBc0IsRUFBRUMsbUJBQTRCLEVBQTZCO0lBQUE7SUFDckksT0FBUSwwQkFBQUQsVUFBVSxDQUFDRSxXQUFXLG9GQUF0QixzQkFBd0JDLEVBQUUscUZBQTFCLHVCQUE0QkMsY0FBYywyREFBMUMsdUJBQTRDQyxNQUFNLENBQUVDLHVCQUF1QixJQUFLO01BQUE7TUFDdkYsT0FBTywwQkFBQUEsdUJBQXVCLENBQUNKLFdBQVcsb0ZBQW5DLHNCQUFxQ0MsRUFBRSxxRkFBdkMsdUJBQXlDSSxNQUFNLDJEQUEvQyx1QkFBaURDLE9BQU8sRUFBRSxNQUFLLElBQUksSUFDekVGLHVCQUF1QixDQUFDRyxLQUFLLG9EQUF5QyxJQUN0RUMsT0FBTywyQkFBQ0osdUJBQXVCLENBQUNLLFdBQVcsMkRBQW5DLHVCQUFxQ0gsT0FBTyxFQUFFLENBQUMsS0FBS1AsbUJBQW1CLEtBQzlFLDJCQUFBSyx1QkFBdUIsQ0FBQ00sWUFBWSxxRkFBcEMsdUJBQXNDQyxPQUFPLDJEQUE3Qyx1QkFBK0NMLE9BQU8sRUFBRSxNQUFLLElBQUksSUFDakUsQ0FBQUYsdUJBQXVCLGFBQXZCQSx1QkFBdUIsaURBQXZCQSx1QkFBdUIsQ0FBRU0sWUFBWSxxRkFBckMsdUJBQXVDVixXQUFXLHFGQUFsRCx1QkFBb0RZLElBQUksc0ZBQXhELHVCQUEwREMsa0JBQWtCLDREQUE1RSx3QkFBOEVQLE9BQU8sRUFBRSxNQUFLLEtBQUssQ0FBQyxHQUNqRyxJQUFJLEdBQ0osS0FBSztJQUNULENBQUMsQ0FBQyxLQUFJLEVBQUU7RUFDVDs7RUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFSQTtFQVNBLFNBQVNRLHVDQUF1QyxDQUMvQ2hCLFVBQXNCLEVBQ3RCQyxtQkFBNEIsRUFDZTtJQUFBO0lBQzNDLE9BQVEsMkJBQUFELFVBQVUsQ0FBQ0UsV0FBVyxxRkFBdEIsdUJBQXdCQyxFQUFFLHFGQUExQix1QkFBNEJDLGNBQWMsMkRBQTFDLHVCQUE0Q0MsTUFBTSxDQUFFQyx1QkFBdUIsSUFBSztNQUFBO01BQ3ZGLE9BQU8sNEJBQUFBLHVCQUF1QixDQUFDSixXQUFXLHVGQUFuQyx3QkFBcUNDLEVBQUUsdUZBQXZDLHdCQUF5Q0ksTUFBTSw0REFBL0Msd0JBQWlEQyxPQUFPLEVBQUUsTUFBSyxJQUFJLElBQ3pFRix1QkFBdUIsQ0FBQ0csS0FBSyxtRUFBd0QsSUFDckZDLE9BQU8sNEJBQUNKLHVCQUF1QixDQUFDSyxXQUFXLDREQUFuQyx3QkFBcUNILE9BQU8sRUFBRSxDQUFDLEtBQUtQLG1CQUFtQixHQUM3RSxJQUFJLEdBQ0osS0FBSztJQUNULENBQUMsQ0FBQyxLQUFJLEVBQUU7RUFDVDtFQUVBLE1BQU1nQix1QkFBdUIsR0FBRyxDQUMvQixpQ0FBaUMsRUFDakMsNkJBQTZCLEVBQzdCLDZCQUE2QixFQUM3QixpQ0FBaUMsQ0FDakM7O0VBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFDTyxTQUFTQyx5QkFBeUIsQ0FDeENDLGdCQUFrQyxFQUNsQ0MsWUFBMEQsRUFDdEI7SUFDcEMsTUFBTUMsbUJBQW1CLEdBQUdGLGdCQUFnQixDQUFDRyxzQkFBc0IsRUFBRTtNQUNwRUMsc0JBQXNCLEdBQUdGLG1CQUFtQixDQUFDRyxvQkFBb0IsQ0FBQ0MsR0FBRyxDQUFFQyxPQUFPLElBQUtBLE9BQU8sQ0FBQ0MsSUFBSSxDQUFDO01BQ2hHO01BQ0E7TUFDQUMsc0JBQXFFLEdBQUdDLDJCQUEyQixDQUNsR1QsWUFBWSxFQUNaRyxzQkFBc0IsRUFDdEJPLFNBQVMsRUFDUkMsSUFBWSxJQUFLQyxvQkFBb0IsQ0FBQ0QsSUFBSSxFQUFFWixnQkFBZ0IsQ0FBQ2MsaUJBQWlCLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FDdEY7TUFDREMsZUFBZSxHQUFHZixnQkFBZ0IsQ0FBQ2dCLGtCQUFrQixFQUFFO01BQ3ZEQyxTQUFTLEdBQUdGLGVBQWUsQ0FBQ0csWUFBWSxFQUFFO01BQzFDO01BQ0E7TUFDQTtNQUNBQyxrQkFBcUQsR0FBR0YsU0FBUyxHQUFHLENBQUMsR0FBR2pDLEVBQUUsQ0FBQ29DLFVBQVUsR0FBR0MsR0FBRyxDQUFDckMsRUFBRSxDQUFDb0MsVUFBVSxDQUFDOztJQUUzRztJQUNBO0lBQ0E7SUFDQTtJQUNBLE9BQU9FLE1BQU0sQ0FDWnJCLFlBQVksS0FBS1UsU0FBUyxJQUFJVixZQUFZLENBQUNaLE9BQU8sRUFBRSxLQUFLLEtBQUssRUFDOUQ4QixrQkFBa0IsRUFDbEJJLEdBQUcsQ0FBQ0osa0JBQWtCLEVBQUVLLEtBQUssQ0FBQ2Ysc0JBQXNCLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FDN0Q7RUFDRjs7RUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBUEE7RUFRTyxTQUFTZ0Isc0JBQXNCLENBQ3JDQyxXQUF5RCxFQUN6REMsaUJBQW9ELEVBQ3BEM0IsZ0JBQWtDLEVBQ0U7SUFDcEMsTUFBTTRCLFNBQVMsR0FBRzVCLGdCQUFnQixDQUFDNkIsWUFBWSxFQUFFO01BQ2hEQyxXQUFXLEdBQUdDLFdBQVcsQ0FBQ0QsV0FBVyxDQUFDRixTQUFTLENBQUM7SUFFakQsSUFBSUksR0FBRyxHQUFHVixNQUFNLENBQ2ZLLGlCQUFpQixLQUFLaEIsU0FBUyxFQUMvQmdCLGlCQUFpQixFQUNqQkwsTUFBTSxDQUFDSSxXQUFXLEtBQUtmLFNBQVMsRUFBRWEsS0FBSyxDQUFDRSxXQUFXLEVBQUUsSUFBSSxDQUFDLEVBQUVPLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUMzRTs7SUFFRDtJQUNBRCxHQUFHLEdBQUdGLFdBQVcsR0FBR1AsR0FBRyxDQUFDUyxHQUFHLEVBQUVYLEdBQUcsQ0FBQ2EsV0FBVyxDQUFDLHlDQUF5QyxDQUFDLENBQUMsQ0FBQyxHQUFHRixHQUFHO0lBRS9GLE9BQU9BLEdBQUc7RUFDWDs7RUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQVRBO0VBVU8sU0FBU0csdUJBQXVCLENBQ3RDbkMsZ0JBQWtDLEVBQ2xDb0MsZ0JBQThELEVBQzlEQyxvQkFBc0MsRUFDdENDLFlBQTJELEVBQzNEckIsU0FBOEIsRUFDTTtJQUNwQyxNQUFNc0IsYUFBYSxHQUFHRixvQkFBb0IsYUFBcEJBLG9CQUFvQix1QkFBcEJBLG9CQUFvQixDQUFFUixZQUFZLEVBQUU7TUFDekRELFNBQVMsR0FBRzVCLGdCQUFnQixDQUFDNkIsWUFBWSxFQUFFO01BQzNDVyxZQUFZLEdBQUd4QyxnQkFBZ0IsQ0FBQ2dCLGtCQUFrQixFQUFFLENBQUN5QixZQUFZLEVBQUU7SUFDcEUsSUFBSUMsY0FBYztJQUNsQixNQUFNQywwQkFBeUUsR0FBR0MsbUJBQW1CLENBQ3BHUCxvQkFBb0IsRUFDcEJELGdCQUFnQixDQUNoQjtJQUNELElBQUluQixTQUFTLElBQUlBLFNBQVMsR0FBRyxDQUFDLEVBQUU7TUFDL0I7TUFDQXlCLGNBQWMsR0FBR1gsV0FBVyxDQUFDYyxXQUFXLENBQUNqQixTQUFTLENBQUM7SUFDcEQsQ0FBQyxNQUFNO01BQ05jLGNBQWMsR0FBR1gsV0FBVyxDQUFDRCxXQUFXLENBQUNTLGFBQWEsQ0FBQztJQUN4RDtJQUNBLE1BQU1PLHNCQUFxRSxHQUFHRixtQkFBbUIsQ0FBQ1Asb0JBQW9CLEVBQUVDLFlBQVksQ0FBQztJQUVySSxNQUFNUyxxQkFBd0QsR0FBRzFCLEdBQUcsQ0FBQ3JDLEVBQUUsQ0FBQ29DLFVBQVUsQ0FBQzs7SUFFbkY7SUFDQTtJQUNBO0lBQ0E7SUFDQSxNQUFNNEIsbUJBQXNELEdBQUcxQixNQUFNLENBQ25FTCxTQUFTLEdBQWMsQ0FBQyxFQUN6QkssTUFBTSxDQUNMZ0IsWUFBWSxLQUFLM0IsU0FBUyxJQUFJMkIsWUFBWSxDQUFDakQsT0FBTyxFQUFFLEtBQUssS0FBSyxFQUM5RGtDLEdBQUcsQ0FDRndCLHFCQUFxQixFQUNyQnZCLEtBQUssQ0FBQ1UsV0FBVyxDQUFDLGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxFQUFFLElBQUksQ0FBQyxFQUN2RFosTUFBTSxDQUFDa0IsWUFBWSxFQUFFaEIsS0FBSyxDQUFDVSxXQUFXLENBQUMsaUJBQWlCLEVBQUUsV0FBVyxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQ3BGLEVBQ0RYLEdBQUcsQ0FDRndCLHFCQUFxQixFQUNyQnZCLEtBQUssQ0FBQ3NCLHNCQUFzQixFQUFFLEtBQUssQ0FBQyxFQUNwQ3RCLEtBQUssQ0FBQ1UsV0FBVyxDQUFDLGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxFQUFFLElBQUksQ0FBQyxFQUN2RFosTUFBTSxDQUFDa0IsWUFBWSxFQUFFaEIsS0FBSyxDQUFDVSxXQUFXLENBQUMsaUJBQWlCLEVBQUUsV0FBVyxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQ3BGLENBQ0QsRUFDRFosTUFBTSxDQUNMYyxnQkFBZ0IsS0FBS3pCLFNBQVMsSUFBSXlCLGdCQUFnQixDQUFDL0MsT0FBTyxFQUFFLEtBQUssS0FBSyxFQUN0RTBELHFCQUFxQixFQUNyQnhCLEdBQUcsQ0FBQ3dCLHFCQUFxQixFQUFFdkIsS0FBSyxDQUFDbUIsMEJBQTBCLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FDcEUsQ0FDRDtJQUNELE9BQU9yQixNQUFNLENBQUNvQixjQUFjLEVBQUVuQixHQUFHLENBQUN5QixtQkFBbUIsRUFBRUMsS0FBSyxDQUFDQyx3QkFBd0IsQ0FBQyxFQUFFRixtQkFBbUIsQ0FBQztFQUM3RztFQUFDO0VBRU0sU0FBU0osbUJBQW1CLENBQUM1QyxnQkFBa0MsRUFBRXNDLFlBQTBELEVBQUU7SUFDbkksTUFBTXBDLG1CQUFtQixHQUFHRixnQkFBZ0IsQ0FBQ0csc0JBQXNCLEVBQUU7TUFDcEVDLHNCQUFzQixHQUFHRixtQkFBbUIsQ0FBQ0csb0JBQW9CLENBQUNDLEdBQUcsQ0FBRUMsT0FBTyxJQUFLQSxPQUFPLENBQUNDLElBQUksQ0FBQztNQUNoRztNQUNBO01BQ0FzQyxzQkFBcUUsR0FBR3BDLDJCQUEyQixDQUNsRzRCLFlBQVksRUFDWmxDLHNCQUFzQixFQUN0Qk8sU0FBUyxFQUNSQyxJQUFZLElBQUtDLG9CQUFvQixDQUFDRCxJQUFJLEVBQUVaLGdCQUFnQixDQUFDYyxpQkFBaUIsRUFBRSxFQUFFVixzQkFBc0IsQ0FBQyxDQUMxRztJQUNGLE9BQU8wQyxzQkFBc0I7RUFDOUI7RUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBUEE7RUFRTyxTQUFTSyxvQkFBb0IsQ0FDbkNuRCxnQkFBa0MsRUFDbENvRCxrQkFBd0IsRUFDeEJuQyxTQUE4QixFQUNLO0lBQ25DLE1BQU1XLFNBQVMsR0FBRzVCLGdCQUFnQixDQUFDNkIsWUFBWSxFQUFFO01BQ2hEQyxXQUFXLEdBQUdDLFdBQVcsQ0FBQ0QsV0FBVyxDQUFDRixTQUFTLENBQUM7TUFDaER5QixRQUFRLEdBQUd0QixXQUFXLENBQUNzQixRQUFRLENBQUN6QixTQUFTLENBQUM7SUFDM0MsSUFBSTBCLGNBQWtDO0lBQ3RDLElBQUl4QixXQUFXLElBQUksQ0FBQ0MsV0FBVyxDQUFDd0IsV0FBVyxDQUFDM0IsU0FBUyxDQUFDLEVBQUU7TUFBQTtNQUN2RDBCLGNBQWMsR0FBSTFCLFNBQVMsYUFBVEEsU0FBUyw4Q0FBVEEsU0FBUyxDQUFnQjdDLFdBQVcsQ0FBQ3lFLE1BQU0saUZBQTVDLG9CQUE4Q0MsU0FBUywwREFBdkQsc0JBQXlEQyxVQUFvQjtJQUMvRixDQUFDLE1BQU0sSUFBSUwsUUFBUSxJQUFJLENBQUN0QixXQUFXLENBQUN3QixXQUFXLENBQUMzQixTQUFTLENBQUMsRUFBRTtNQUFBO01BQzNEMEIsY0FBYyxHQUFJMUIsU0FBUyxhQUFUQSxTQUFTLCtDQUFUQSxTQUFTLENBQWdCN0MsV0FBVyxDQUFDNEUsT0FBTyxrRkFBN0MscUJBQStDQyxzQkFBc0IsMERBQXJFLHNCQUF1RUYsVUFBb0I7SUFDN0c7SUFDQSxJQUFJSixjQUFjLEVBQUU7TUFBQTtNQUNuQixNQUFNTyx3QkFBd0IsR0FBRzdELGdCQUFnQixDQUFDOEQseUJBQXlCLENBQUNSLGNBQWMsQ0FBQztNQUMzRixNQUFNUyxVQUFVLEdBQUcvRCxnQkFBZ0IsQ0FBQ2dFLG1CQUFtQixDQUFDSCx3QkFBd0IsQ0FBQyxDQUFDSSxNQUF1QjtNQUN6RyxJQUFJLENBQUFGLFVBQVUsYUFBVkEsVUFBVSxnREFBVkEsVUFBVSxDQUFFaEYsV0FBVyxvRkFBdkIsc0JBQXlCWSxJQUFJLDJEQUE3Qix1QkFBK0JDLGtCQUFrQixNQUFLLElBQUksRUFBRTtRQUMvRDtRQUNBO01BQUEsQ0FDQSxNQUFNLElBQUtxQixTQUFTLEdBQWMsQ0FBQyxFQUFFO1FBQ3JDO1FBQ0EsSUFBSW1DLGtCQUFrQixLQUFLekMsU0FBUyxFQUFFO1VBQ3JDLE9BQU91RCxpQkFBaUIsQ0FDdkIzQyxHQUFHLENBQ0ZDLEtBQUssQ0FBQ2QsMkJBQTJCLENBQUMwQyxrQkFBa0IsQ0FBQyxFQUFFLElBQUksQ0FBQyxFQUM1RDVCLEtBQUssQ0FBQ1UsV0FBVyxDQUFDLGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUN2RCxDQUNEO1FBQ0YsQ0FBQyxNQUFNO1VBQ04sT0FBT2dDLGlCQUFpQixDQUFDMUMsS0FBSyxDQUFDVSxXQUFXLENBQUMsaUJBQWlCLEVBQUUsVUFBVSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDbEY7TUFDRCxDQUFDLE1BQU07UUFDTixPQUFPaUMsNkJBQTZCLENBQUNuRSxnQkFBZ0IsRUFBRStELFVBQVUsSUFBSXBELFNBQVMsQ0FBQztNQUNoRjtJQUNEO0lBQ0EsT0FBTyxNQUFNO0VBQ2Q7RUFBQztFQUVNLFNBQVN5RCx1QkFBdUIsQ0FBQ3BFLGdCQUFrQyxFQUFnQjtJQUFBO0lBQ3pGLE1BQU1xRSxZQUFZLEdBQUdyRSxnQkFBZ0IsQ0FBQ3NFLGNBQWMsRUFBRTtJQUN0RCxNQUFNQyxpQkFBaUIsR0FBR3hDLFdBQVcsQ0FBQ3lDLG9CQUFvQixDQUFDSCxZQUFZLENBQUM7SUFDeEUsTUFBTWhDLG9CQUFvQixHQUFHckMsZ0JBQWdCLENBQUN5RSxzQkFBc0IsQ0FBQyxHQUFHLEdBQUdGLGlCQUFpQixDQUFDO0lBQzdGLE1BQU0zQyxTQUFTLEdBQUc1QixnQkFBZ0IsQ0FBQzZCLFlBQVksRUFBRTtNQUNoRGhELFVBQVUsR0FBR21CLGdCQUFnQixDQUFDMEUsYUFBYSxFQUFFO01BQzdDbkMsYUFBYSxHQUFHRixvQkFBb0IsQ0FBQ1IsWUFBWSxFQUFFO01BQ25EOEMsY0FBYyxHQUFHdEMsb0JBQW9CLENBQUNxQyxhQUFhLEVBQUU7TUFDckRFLHNCQUFzQixHQUFHN0MsV0FBVyxDQUFDOEMsZ0JBQWdCLENBQUN0QyxhQUFhLENBQUM7TUFBRTtNQUN0RXVDLFNBQVMsR0FBRy9DLFdBQVcsQ0FBQ2dELFlBQVksQ0FBQ3hDLGFBQWEsQ0FBQztNQUFFO01BQ3JEeUMsU0FBUyxHQUFHakQsV0FBVyxDQUFDa0QsWUFBWSxDQUFDMUMsYUFBYSxDQUFDO01BQ25EMkMsd0JBQXdCLEdBQUd0RCxTQUFTLDhCQUFJQSxTQUFTLENBQUM3QyxXQUFXLG9GQUFyQixzQkFBdUJvRyxZQUFZLDJEQUFuQyx1QkFBcUNDLGtCQUFrQjtNQUMvRmhELGdCQUFnQixHQUFHTCxXQUFXLENBQUNzRCxjQUFjLENBQUM5QyxhQUFhLEVBQUVvQyxjQUFjLENBQUM7TUFDNUVyQyxZQUFZLEdBQUdDLGFBQWEsSUFBSSxDQUFDUixXQUFXLENBQUN3QixXQUFXLENBQUNoQixhQUFhLENBQUMsS0FBSUgsZ0JBQWdCLGFBQWhCQSxnQkFBZ0IsdUJBQWhCQSxnQkFBZ0IsQ0FBRS9DLE9BQU8sRUFBRTtNQUN0R2EsbUJBQW1CLEdBQUdGLGdCQUFnQixDQUFDRyxzQkFBc0IsRUFBRTtNQUMvRHdCLGlCQUFpQixHQUFHMkQsZUFBZSxDQUFDcEYsbUJBQW1CLEVBQUU7UUFDeERxRixXQUFXLEVBQUUsQ0FBQzNFLElBQVksRUFBRTRFLGVBQXlCLEtBQ3BEM0Usb0JBQW9CLENBQUNELElBQUksRUFBRVosZ0JBQWdCLENBQUNjLGlCQUFpQixFQUFFLEVBQUUwRSxlQUFlO01BQ2xGLENBQUMsQ0FBQztNQUNGQyx3QkFBd0IsR0FBRzlELGlCQUFpQixHQUFHdUMsaUJBQWlCLENBQUN2QyxpQkFBaUIsQ0FBQyxHQUFHQSxpQkFBaUI7TUFDdkcrRCw2QkFBNkIsR0FBRzlHLG9DQUFvQyxDQUFDb0IsZ0JBQWdCLENBQUMwRSxhQUFhLEVBQUUsRUFBRSxLQUFLLENBQUM7SUFFOUcsTUFBTWlCLGFBQWEsR0FDbEIzRixnQkFBZ0IsQ0FBQ2dCLGtCQUFrQixFQUFFLENBQUNFLFlBQVksRUFBRSxLQUFLLENBQUMsR0FDdkQwRSxhQUFhLENBQ2JGLDZCQUE2QixDQUFDeEcsTUFBTSxDQUFFMkcsU0FBUyxJQUFLO01BQ25ELE9BQU9DLHFCQUFxQixDQUFDRCxTQUFTLENBQUM7SUFDeEMsQ0FBQyxDQUFDLENBQ0QsR0FDRGxGLFNBQVM7SUFFYixNQUFNb0YseUJBQXlCLEdBQUdMLDZCQUE2QixDQUFDeEcsTUFBTSxDQUFFMkcsU0FBUyxJQUFLO01BQ3JGLE9BQU8sQ0FBQ0MscUJBQXFCLENBQUNELFNBQVMsQ0FBQztJQUN6QyxDQUFDLENBQUM7O0lBRUY7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBLE1BQU1HLGFBQTJCLEdBQUcsRUFBRTtJQUN0QyxJQUFJLENBQUNqRSxXQUFXLENBQUN3QixXQUFXLENBQUMzQixTQUFTLENBQUMsSUFBSWtELFNBQVMsYUFBVEEsU0FBUyxlQUFUQSxTQUFTLENBQUVwQixVQUFVLElBQUlwQixZQUFZLEtBQUssSUFBSSxFQUFFO01BQzFGMEQsYUFBYSxDQUFDQyxJQUFJLENBQUM7UUFBRUMsSUFBSSxFQUFFQyxVQUFVLENBQUNDLFlBQVk7UUFBRUMsR0FBRyxFQUFFO01BQWUsQ0FBQyxDQUFDO0lBQzNFO0lBRUEsTUFBTXBGLFNBQVMsR0FBR2pCLGdCQUFnQixDQUFDZ0Isa0JBQWtCLEVBQUUsQ0FBQ0UsWUFBWSxFQUFFO0lBQ3RFLE1BQU1vRixxQkFBcUIsR0FBR3JGLFNBQVMsR0FBRyxDQUFDLEdBQUdXLFNBQVMsYUFBVEEsU0FBUyxpREFBVEEsU0FBUyxDQUFFN0MsV0FBVyxDQUFDb0csWUFBWSxxRkFBbkMsdUJBQXFDb0Isa0JBQWtCLDJEQUF2RCx1QkFBeURDLFNBQVMsR0FBRzdGLFNBQVM7SUFDNUgsSUFBSW1FLFNBQVMsSUFBSUUsU0FBUyxFQUFFO01BQzNCZ0IsYUFBYSxDQUFDQyxJQUFJLENBQUM7UUFBRUMsSUFBSSxFQUFFQyxVQUFVLENBQUNNLG9CQUFvQjtRQUFFSixHQUFHLEVBQUU7TUFBdUIsQ0FBQyxDQUFDO0lBQzNGO0lBQ0E7SUFDQU4seUJBQXlCLENBQ3ZCN0csTUFBTSxDQUFFMkcsU0FBUyxJQUFLO01BQ3RCLE9BQU8vRix1QkFBdUIsQ0FBQzRHLE9BQU8sQ0FBQ2IsU0FBUyxhQUFUQSxTQUFTLHVCQUFUQSxTQUFTLENBQUVjLFdBQVcsQ0FBVyxHQUFHLENBQUMsQ0FBQztJQUM5RSxDQUFDLENBQUMsQ0FDREMsT0FBTyxDQUFFZixTQUFTLElBQUs7TUFDdkJHLGFBQWEsQ0FBQ0MsSUFBSSxDQUFDWSw0QkFBNEIsQ0FBQ2hCLFNBQVMsRUFBRTdGLGdCQUFnQixDQUFDLENBQUM7SUFDOUUsQ0FBQyxDQUFDOztJQUVIO0lBQ0EsSUFBSSxDQUFDOEUsU0FBUyxhQUFUQSxTQUFTLGVBQVRBLFNBQVMsQ0FBRXBCLFVBQVUsSUFBSWtCLHNCQUFzQixhQUF0QkEsc0JBQXNCLGVBQXRCQSxzQkFBc0IsQ0FBRWxCLFVBQVUsS0FBS3BCLFlBQVksS0FBSyxJQUFJLEVBQUU7TUFDM0YwRCxhQUFhLENBQUNDLElBQUksQ0FBQztRQUNsQkMsSUFBSSxFQUFFQyxVQUFVLENBQUNXLE9BQU87UUFDeEJULEdBQUcsRUFBRSxZQUFZO1FBQ2pCVSxPQUFPLEVBQUU3QyxpQkFBaUIsQ0FDekIvQix1QkFBdUIsQ0FDdEJuQyxnQkFBZ0IsRUFDaEJvQyxnQkFBZ0IsRUFDaEJDLG9CQUFvQixFQUNwQk4sV0FBVyxDQUFDc0QsY0FBYyxDQUFDekQsU0FBUyxFQUFFL0MsVUFBVSxDQUFDLEVBQ2pEb0MsU0FBUyxDQUNULENBQ0Q7UUFDRCtGLE9BQU8sRUFBRTdELG9CQUFvQixDQUFDZCxvQkFBb0IsRUFBRWlFLHFCQUFxQixFQUFFckYsU0FBUztNQUNyRixDQUFDLENBQUM7SUFDSDtJQUNBO0lBQ0EsSUFDRXdFLHdCQUF3QixJQUFJQSx3QkFBd0IsS0FBSyxPQUFPLElBQ2hFLENBQUFQLHdCQUF3QixhQUF4QkEsd0JBQXdCLGdEQUF4QkEsd0JBQXdCLENBQUUrQixTQUFTLDBEQUFuQyxzQkFBcUM1SCxPQUFPLEVBQUUsTUFBSyxLQUFLLElBQUlvRyx3QkFBd0IsS0FBSyxPQUFRLEVBQ2pHO01BQ0QsTUFBTXhGLFlBQVksR0FBRzhCLFdBQVcsQ0FBQ21GLGVBQWUsQ0FBQ3RGLFNBQVMsRUFBRS9DLFVBQVUsQ0FBcUM7TUFDM0dtSCxhQUFhLENBQUNDLElBQUksQ0FBQztRQUNsQkMsSUFBSSxFQUFFQyxVQUFVLENBQUNnQixTQUFTO1FBQzFCZCxHQUFHLEVBQUUsY0FBYztRQUNuQlUsT0FBTyxFQUFFN0MsaUJBQWlCLENBQUNuRSx5QkFBeUIsQ0FBQ0MsZ0JBQWdCLEVBQUVDLFlBQVksQ0FBQyxDQUFDO1FBQ3JGK0csT0FBTyxFQUFFOUMsaUJBQWlCLENBQUN6QyxzQkFBc0IsQ0FBQ3lELHdCQUF3QixhQUF4QkEsd0JBQXdCLHVCQUF4QkEsd0JBQXdCLENBQUUrQixTQUFTLEVBQUV0RixpQkFBaUIsRUFBRTNCLGdCQUFnQixDQUFDLENBQUM7UUFDNUhvSCx5QkFBeUIsRUFBRTNCO01BQzVCLENBQUMsQ0FBQztJQUNIO0lBRUEsSUFBSUUsYUFBYSxFQUFFO01BQUE7TUFDbEJLLGFBQWEsQ0FBQ0MsSUFBSSxDQUFDO1FBQ2xCLEdBQUdZLDRCQUE0QixDQUFDbEIsYUFBYSxFQUFFM0YsZ0JBQWdCLENBQUM7UUFDaEVrRyxJQUFJLEVBQUVDLFVBQVUsQ0FBQ2tCLElBQUk7UUFDckJDLElBQUksRUFBRSx5QkFBQTNCLGFBQWEsQ0FBQzRCLEtBQUsseURBQW5CLHFCQUFxQkMsUUFBUSxFQUFFLEtBQUk3SCxJQUFJLENBQUM4SCx3QkFBd0IsQ0FBQyxhQUFhLENBQUMsQ0FBQ0MsT0FBTyxDQUFDLGVBQWU7TUFDOUcsQ0FBQyxDQUFDO0lBQ0g7SUFFQSxNQUFNQyw0QkFBNEIsR0FBRzlILHVDQUF1QyxDQUFDRyxnQkFBZ0IsQ0FBQzBFLGFBQWEsRUFBRSxFQUFFLEtBQUssQ0FBQztJQUVySGlELDRCQUE0QixDQUMxQnpJLE1BQU0sQ0FBRTJHLFNBQVMsSUFBSztNQUN0QixPQUFPL0YsdUJBQXVCLENBQUM0RyxPQUFPLENBQUNiLFNBQVMsYUFBVEEsU0FBUyx1QkFBVEEsU0FBUyxDQUFFYyxXQUFXLENBQVcsS0FBSyxDQUFDLENBQUM7SUFDaEYsQ0FBQyxDQUFDLENBQ0RDLE9BQU8sQ0FBRWYsU0FBUyxJQUFLO01BQUE7TUFDdkIsSUFBSSwwQkFBQUEsU0FBUyxDQUFDK0IsZUFBZSwwREFBekIsc0JBQTJCdkksT0FBTyxFQUFFLE1BQUssSUFBSSxFQUFFO1FBQ2xELE1BQU0sSUFBSXdJLEtBQUssQ0FBRSx1RUFBc0VoQyxTQUFTLENBQUMwQixLQUFNLEVBQUMsQ0FBQztNQUMxRztNQUNBLElBQUksc0JBQUExQixTQUFTLENBQUNpQyxNQUFNLHNEQUFoQixrQkFBa0J6SSxPQUFPLEVBQUUsTUFBSyxJQUFJLEVBQUU7UUFDekMsTUFBTSxJQUFJd0ksS0FBSyxDQUFFLDhEQUE2RGhDLFNBQVMsQ0FBQzBCLEtBQU0sRUFBQyxDQUFDO01BQ2pHO01BQ0EsTUFBTVEsaUJBQWlCLEdBQUc7UUFDekJDLHFCQUFxQixFQUFFQyx3QkFBd0IsQ0FBQ3BDLFNBQVMsQ0FBQ3FDLE9BQU87TUFDbEUsQ0FBQztNQUVEbEMsYUFBYSxDQUFDQyxJQUFJLENBQUM7UUFDbEJDLElBQUksRUFBRUMsVUFBVSxDQUFDZ0MsaUNBQWlDO1FBQ2xEYixJQUFJLHNCQUFFekIsU0FBUyxDQUFDMEIsS0FBSyxxREFBZixpQkFBaUJDLFFBQVEsRUFBRTtRQUNqQ1ksY0FBYyxFQUFFcEksZ0JBQWdCLENBQUNxSSwrQkFBK0IsQ0FBQ3hDLFNBQVMsQ0FBQ3lDLGtCQUFrQixDQUFDO1FBQzlGQyxVQUFVLEVBQUVDLFVBQVUsQ0FBQ0MsS0FBSztRQUM1QjFCLE9BQU8sRUFBRTdDLGlCQUFpQixDQUFDN0MsR0FBRyxDQUFDRyxLQUFLLENBQUNkLDJCQUEyQiwwQkFBQ21GLFNBQVMsQ0FBQzlHLFdBQVcsb0ZBQXJCLHNCQUF1QkMsRUFBRSxxRkFBekIsdUJBQTJCSSxNQUFNLDJEQUFqQyx1QkFBbUNDLE9BQU8sRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN2SDJILE9BQU8sRUFDTm5CLFNBQVMsQ0FBQzZDLG1CQUFtQixLQUFLL0gsU0FBUyxHQUN4Q3VELGlCQUFpQixDQUFDMUMsS0FBSyxDQUFDZCwyQkFBMkIsMEJBQUNtRixTQUFTLENBQUM2QyxtQkFBbUIsMERBQTdCLHNCQUErQnJKLE9BQU8sRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsR0FDckcsSUFBSTtRQUNSZ0gsR0FBRyxFQUFFc0MsU0FBUyxDQUFDQyx3QkFBd0IsQ0FBQy9DLFNBQVMsQ0FBQztRQUNsRGdELFdBQVcsRUFBRSxJQUFJO1FBQ2pCQyxLQUFLLEVBQUU1RSxpQkFBaUIsQ0FDdkI2RSxFQUFFLENBQUMsa0NBQWtDLEVBQUUsQ0FDdENySSwyQkFBMkIsQ0FBQ21GLFNBQVMsQ0FBQ21ELGNBQWMsQ0FBQyxFQUNyRHRJLDJCQUEyQixDQUFDbUYsU0FBUyxDQUFDb0QsTUFBTSxDQUFDLEVBQzdDbEIsaUJBQWlCLENBQ2pCLENBQUMsQ0FDRjtRQUNEbUIsVUFBVSxFQUFFaEYsaUJBQWlCLENBQUM7VUFDN0JpRixjQUFjLEVBQUV6SSwyQkFBMkIsQ0FBQ21GLFNBQVMsQ0FBQ21ELGNBQWMsQ0FBQztVQUNyRUksTUFBTSxFQUFFMUksMkJBQTJCLENBQUNtRixTQUFTLENBQUNvRCxNQUFNO1FBQ3JELENBQUM7TUFDRixDQUFDLENBQXFCO0lBQ3ZCLENBQUMsQ0FBQztJQUNIO0lBQ0FsRCx5QkFBeUIsQ0FDdkI3RyxNQUFNLENBQUUyRyxTQUFTLElBQUs7TUFDdEIsT0FBTy9GLHVCQUF1QixDQUFDNEcsT0FBTyxDQUFDYixTQUFTLGFBQVRBLFNBQVMsdUJBQVRBLFNBQVMsQ0FBRWMsV0FBVyxDQUFXLEtBQUssQ0FBQyxDQUFDO0lBQ2hGLENBQUMsQ0FBQyxDQUNEQyxPQUFPLENBQUVmLFNBQVMsSUFBSztNQUN2QkcsYUFBYSxDQUFDQyxJQUFJLENBQUNZLDRCQUE0QixDQUFDaEIsU0FBUyxFQUFFN0YsZ0JBQWdCLENBQUMsQ0FBQztJQUM5RSxDQUFDLENBQUM7SUFFSCxPQUFPZ0csYUFBYTtFQUNyQjtFQUFDO0VBRU0sU0FBU3FELHNCQUFzQixDQUFDckosZ0JBQWtDLEVBQWdCO0lBQUE7SUFDeEYsTUFBTW5CLFVBQVUsR0FBR21CLGdCQUFnQixDQUFDMEUsYUFBYSxFQUFFO0lBQ25ELE1BQU00RSxhQUFhLEdBQUksMkJBQUF6SyxVQUFVLENBQUNFLFdBQVcscUZBQXRCLHVCQUF3QkMsRUFBRSxxRkFBMUIsdUJBQTRCQyxjQUFjLDJEQUExQyx1QkFBNENDLE1BQU0sQ0FBRUMsdUJBQXVCLElBQUs7TUFBQTtNQUN0RyxPQUFPLENBQUFBLHVCQUF1QixhQUF2QkEsdUJBQXVCLGtEQUF2QkEsdUJBQXVCLENBQUVKLFdBQVcsdUZBQXBDLHdCQUFzQ0MsRUFBRSx1RkFBeEMsd0JBQTBDSSxNQUFNLDREQUFoRCx3QkFBa0RDLE9BQU8sRUFBRSxNQUFLLElBQUk7SUFDNUUsQ0FBQyxDQUFDLEtBQUksRUFBZ0M7SUFDdEMsT0FBT2lLLGFBQWEsQ0FBQ2hKLEdBQUcsQ0FBRXVGLFNBQVMsSUFBSztNQUN2QyxPQUFPO1FBQ05LLElBQUksRUFBRUMsVUFBVSxDQUFDb0QsT0FBTztRQUN4QmxELEdBQUcsRUFBRXNDLFNBQVMsQ0FBQ0Msd0JBQXdCLENBQUMvQyxTQUFTO01BQ2xELENBQUM7SUFDRixDQUFDLENBQUM7RUFDSDtFQUFDO0VBRU0sU0FBUzJELHVCQUF1QixDQUFDdkksU0FBaUIsRUFBRWpCLGdCQUFrQyxFQUFnQjtJQUFBO0lBQzVHLE1BQU00QixTQUFTLEdBQUc1QixnQkFBZ0IsQ0FBQzZCLFlBQVksRUFBRTtJQUNqRCxNQUFNaEQsVUFBVSxHQUFHbUIsZ0JBQWdCLENBQUMwRSxhQUFhLEVBQUU7SUFDbkQsTUFBTUUsc0JBQXNCLEdBQUc3QyxXQUFXLENBQUM4QyxnQkFBZ0IsQ0FBQ2pELFNBQVMsQ0FBQztNQUFFO01BQ3ZFNkgsa0JBQWtCLEdBQ2pCLENBQUMxSCxXQUFXLENBQUN3QixXQUFXLENBQUMzQixTQUFTLENBQUMsSUFDbkNBLFNBQVMsS0FDUix5QkFBQ0EsU0FBUyxDQUFlN0MsV0FBVyxDQUFDeUUsTUFBTSxrRkFBM0MscUJBQTZDQyxTQUFTLDBEQUF0RCxzQkFBd0RpRyxJQUFJLHNCQUMzRDlILFNBQVMsQ0FBZTdDLFdBQVcsMEVBQXBDLGFBQXNDNEUsT0FBTyxtRkFBN0Msc0JBQStDQyxzQkFBc0IsMERBQXJFLHNCQUF1RThGLElBQUksRUFBQztNQUM5RUMsYUFBYSxHQUFHcEssT0FBTyxDQUN0QmtLLGtCQUFrQiwrQ0FBb0MsSUFBSzdFLHNCQUFzQixLQUFJQSxzQkFBc0IsYUFBdEJBLHNCQUFzQix1QkFBdEJBLHNCQUFzQixDQUFFZ0YsVUFBVSxDQUFDLENBQ3hIO01BQ0RDLGNBQWMsR0FBRzVJLFNBQVMsR0FBRyxDQUFDO01BQzlCNkksZUFBZSxHQUFHdkssT0FBTyxDQUN4QmtLLGtCQUFrQiwrQ0FBb0MsSUFBSzdFLHNCQUFzQixLQUFJQSxzQkFBc0IsYUFBdEJBLHNCQUFzQix1QkFBdEJBLHNCQUFzQixDQUFFbUYsYUFBYSxDQUFDLENBQzNIOztJQUVGO0lBQ0EsTUFBTUMseUJBQXlCLEdBQUdwTCxvQ0FBb0MsQ0FBQ29CLGdCQUFnQixDQUFDMEUsYUFBYSxFQUFFLEVBQUUsSUFBSSxDQUFDOztJQUU5RztJQUNBLE1BQU11RixhQUEyQixHQUFHRCx5QkFBeUIsQ0FDM0Q5SyxNQUFNLENBQUUyRyxTQUFTLElBQUs7TUFDdEIsT0FBTy9GLHVCQUF1QixDQUFDNEcsT0FBTyxDQUFDYixTQUFTLGFBQVRBLFNBQVMsdUJBQVRBLFNBQVMsQ0FBRWMsV0FBVyxDQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQzlFLENBQUMsQ0FBQyxDQUNEckcsR0FBRyxDQUFFdUYsU0FBUyxJQUFLO01BQ25CLE9BQU9nQiw0QkFBNEIsQ0FBQ2hCLFNBQVMsRUFBRTdGLGdCQUFnQixDQUFDO0lBQ2pFLENBQUMsQ0FBQzs7SUFFSDtJQUNBLElBQUksQ0FBQTRCLFNBQVMsYUFBVEEsU0FBUyx1QkFBVEEsU0FBUyxDQUFFc0ksY0FBYyxPQUFLckwsVUFBVSxhQUFWQSxVQUFVLHVCQUFWQSxVQUFVLENBQUV5SixrQkFBa0IsS0FBSXFCLGFBQWEsRUFBRTtNQUNsRk0sYUFBYSxDQUFDaEUsSUFBSSxDQUFDO1FBQUVDLElBQUksRUFBRUMsVUFBVSxDQUFDVyxPQUFPO1FBQUVULEdBQUcsRUFBRTtNQUFhLENBQUMsQ0FBQztJQUNwRTs7SUFFQTtJQUNBLElBQUl3RCxjQUFjLEVBQUU7TUFDbkJJLGFBQWEsQ0FBQ2hFLElBQUksQ0FBQztRQUFFQyxJQUFJLEVBQUVDLFVBQVUsQ0FBQ2dFLFlBQVk7UUFBRTlELEdBQUcsRUFBRTtNQUFjLENBQUMsQ0FBQztJQUMxRTs7SUFFQTtJQUNBMkQseUJBQXlCLENBQ3ZCOUssTUFBTSxDQUFFMkcsU0FBUyxJQUFLO01BQ3RCLE9BQU8vRix1QkFBdUIsQ0FBQzRHLE9BQU8sQ0FBQ2IsU0FBUyxhQUFUQSxTQUFTLHVCQUFUQSxTQUFTLENBQUVjLFdBQVcsQ0FBVyxLQUFLLENBQUMsQ0FBQztJQUNoRixDQUFDLENBQUMsQ0FDREMsT0FBTyxDQUFFZixTQUFTLElBQUs7TUFDdkJvRSxhQUFhLENBQUNoRSxJQUFJLENBQUNZLDRCQUE0QixDQUFDaEIsU0FBUyxFQUFFN0YsZ0JBQWdCLENBQUMsQ0FBQztJQUM5RSxDQUFDLENBQUM7O0lBRUg7SUFDQSxJQUFJOEosZUFBZSxFQUFFO01BQ3BCRyxhQUFhLENBQUNoRSxJQUFJLENBQUM7UUFDbEJDLElBQUksRUFBRUMsVUFBVSxDQUFDZ0IsU0FBUztRQUMxQmQsR0FBRyxFQUFFLGNBQWM7UUFDbkIrRCxRQUFRLEVBQUU7VUFBRUMsU0FBUyxFQUFFQyxTQUFTLENBQUNDO1FBQUk7TUFDdEMsQ0FBQyxDQUFDO0lBQ0g7SUFDQSxPQUFPTixhQUFhO0VBQ3JCO0VBQUM7RUFFRCxTQUFTcEQsNEJBQTRCLENBQUNoQixTQUFrQyxFQUFFN0YsZ0JBQWtDLEVBQW9CO0lBQUE7SUFDL0gsT0FBTztNQUNOa0csSUFBSSxFQUFFQyxVQUFVLENBQUNxRSxrQkFBa0I7TUFDbkNwQyxjQUFjLEVBQUVwSSxnQkFBZ0IsQ0FBQ3FJLCtCQUErQixDQUFDeEMsU0FBUyxDQUFDeUMsa0JBQWtCLENBQUM7TUFDOUZqQyxHQUFHLEVBQUVzQyxTQUFTLENBQUNDLHdCQUF3QixDQUFDL0MsU0FBUyxDQUFDO01BQ2xEa0IsT0FBTyxFQUFFN0MsaUJBQWlCLENBQUM3QyxHQUFHLENBQUNHLEtBQUssQ0FBQ2QsMkJBQTJCLDJCQUFDbUYsU0FBUyxDQUFDOUcsV0FBVyxxRkFBckIsdUJBQXVCQyxFQUFFLDJEQUF6Qix1QkFBMkJJLE1BQU0sQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7TUFDNUc0SCxPQUFPLEVBQUU3Qyw2QkFBNkIsQ0FBQ25FLGdCQUFnQixFQUFFNkYsU0FBUyxDQUFDcEcsWUFBWSxDQUFDO01BQ2hGb0osV0FBVyxFQUFFO0lBQ2QsQ0FBQztFQUNGO0VBQUM7QUFBQSJ9
|
|
407
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRJZGVudGlmaWNhdGlvbkRhdGFGaWVsZEZvckFjdGlvbnMiLCJlbnRpdHlUeXBlIiwiaXNEZXRlcm1pbmluZ0FjdGlvbiIsImFubm90YXRpb25zIiwiVUkiLCJJZGVudGlmaWNhdGlvbiIsImZpbHRlciIsImlkZW50aWZpY2F0aW9uRGF0YUZpZWxkIiwiSGlkZGVuIiwidmFsdWVPZiIsIiRUeXBlIiwiQm9vbGVhbiIsIkRldGVybWluaW5nIiwiQWN0aW9uVGFyZ2V0IiwiaXNCb3VuZCIsIkNvcmUiLCJPcGVyYXRpb25BdmFpbGFibGUiLCJnZXRJZGVudGlmaWNhdGlvbkRhdGFGaWVsZEZvcklCTkFjdGlvbnMiLCJJTVBPUlRBTlRfQ1JJVElDQUxJVElFUyIsImdldERlbGV0ZUJ1dHRvblZpc2liaWxpdHkiLCJjb252ZXJ0ZXJDb250ZXh0IiwiZGVsZXRlSGlkZGVuIiwiZGF0YU1vZGVsT2JqZWN0UGF0aCIsImdldERhdGFNb2RlbE9iamVjdFBhdGgiLCJ2aXNpdGVkTmF2aWdhdGlvblBhdGhzIiwibmF2aWdhdGlvblByb3BlcnRpZXMiLCJtYXAiLCJuYXZQcm9wIiwibmFtZSIsImRlbGV0ZUhpZGRlbkV4cHJlc3Npb24iLCJnZXRFeHByZXNzaW9uRnJvbUFubm90YXRpb24iLCJ1bmRlZmluZWQiLCJwYXRoIiwic2luZ2xldG9uUGF0aFZpc2l0b3IiLCJnZXRDb252ZXJ0ZWRUeXBlcyIsIm1hbmlmZXN0V3JhcHBlciIsImdldE1hbmlmZXN0V3JhcHBlciIsInZpZXdMZXZlbCIsImdldFZpZXdMZXZlbCIsImVkaXRhYmxlRXhwcmVzc2lvbiIsIklzRWRpdGFibGUiLCJub3QiLCJpZkVsc2UiLCJhbmQiLCJlcXVhbCIsImdldERlbGV0ZUJ1dHRvbkVuYWJsZWQiLCJpc0RlbGV0YWJsZSIsImlzUGFyZW50RGVsZXRhYmxlIiwiZW50aXR5U2V0IiwiZ2V0RW50aXR5U2V0IiwiaXNEcmFmdFJvb3QiLCJNb2RlbEhlbHBlciIsInJldCIsImNvbnN0YW50IiwicGF0aEluTW9kZWwiLCJnZXRFZGl0QnV0dG9uVmlzaWJpbGl0eSIsInJvb3RVcGRhdGVIaWRkZW4iLCJyb290Q29udmVydGVyQ29udGV4dCIsInVwZGF0ZUhpZGRlbiIsInJvb3RFbnRpdHlTZXQiLCJpc0ZDTEVuYWJsZWQiLCJpc0ZjbEVuYWJsZWQiLCJpc0RyYWZ0RW5hYmxlZCIsInJvb3RVcGRhdGVIaWRkZW5FeHByZXNzaW9uIiwiZ2V0SGlkZGVuRXhwcmVzc2lvbiIsImlzRHJhZnROb2RlIiwidXBkYXRlSGlkZGVuRXhwcmVzc2lvbiIsIm5vdEVkaXRhYmxlRXhwcmVzc2lvbiIsInJlc3VsdGFudEV4cHJlc3Npb24iLCJEcmFmdCIsIkhhc05vRHJhZnRGb3JDdXJyZW50VXNlciIsImdldEVkaXRCdXR0b25FbmFibGVkIiwidXBkYXRlUmVzdHJpY3Rpb25zIiwiaXNTdGlja3kiLCJlZGl0QWN0aW9uTmFtZSIsImlzU2luZ2xldG9uIiwiQ29tbW9uIiwiRHJhZnRSb290IiwiRWRpdEFjdGlvbiIsIlNlc3Npb24iLCJTdGlja3lTZXNzaW9uU3VwcG9ydGVkIiwiZWRpdEFjdGlvbkFubm90YXRpb25QYXRoIiwiZ2V0QWJzb2x1dGVBbm5vdGF0aW9uUGF0aCIsImVkaXRBY3Rpb24iLCJyZXNvbHZlQWJzb2x1dGVQYXRoIiwidGFyZ2V0IiwiY29tcGlsZUV4cHJlc3Npb24iLCJnZXRFbmFibGVkRm9yQW5ub3RhdGlvbkFjdGlvbiIsImdldEhlYWRlckRlZmF1bHRBY3Rpb25zIiwic0NvbnRleHRQYXRoIiwiZ2V0Q29udGV4dFBhdGgiLCJyb290RW50aXR5U2V0UGF0aCIsImdldFJvb3RFbnRpdHlTZXRQYXRoIiwiZ2V0Q29udmVydGVyQ29udGV4dEZvciIsImdldEVudGl0eVR5cGUiLCJyb290RW50aXR5VHlwZSIsInN0aWNreVNlc3Npb25TdXBwb3J0ZWQiLCJnZXRTdGlja3lTZXNzaW9uIiwiZHJhZnRSb290IiwiZ2V0RHJhZnRSb290IiwiZHJhZnROb2RlIiwiZ2V0RHJhZnROb2RlIiwiZW50aXR5RGVsZXRlUmVzdHJpY3Rpb25zIiwiQ2FwYWJpbGl0aWVzIiwiRGVsZXRlUmVzdHJpY3Rpb25zIiwiaXNVcGRhdGVIaWRkZW4iLCJpc1BhdGhEZWxldGFibGUiLCJwYXRoVmlzaXRvciIsIm5hdmlnYXRpb25QYXRocyIsInBhcmVudEVudGl0eVNldERlbGV0YWJsZSIsImlkZW50aWZpY2F0aW9uRmllbGRGb3JBY3Rpb25zIiwiY29weURhdGFGaWVsZCIsImdldENvcHlBY3Rpb24iLCJkYXRhRmllbGQiLCJkYXRhRmllbGRJc0NvcHlBY3Rpb24iLCJoZWFkZXJEYXRhRmllbGRGb3JBY3Rpb25zIiwiaGVhZGVyQWN0aW9ucyIsInB1c2giLCJ0eXBlIiwiQWN0aW9uVHlwZSIsIkRyYWZ0QWN0aW9ucyIsImtleSIsInVwZGF0YWJsZVByb3BlcnR5UGF0aCIsIlVwZGF0ZVJlc3RyaWN0aW9ucyIsIlVwZGF0YWJsZSIsIkNvbGxhYm9yYXRpb25BdmF0YXJzIiwiaW5kZXhPZiIsIkNyaXRpY2FsaXR5IiwiZm9yRWFjaCIsImdldERhdGFGaWVsZEFubm90YXRpb25BY3Rpb24iLCJQcmltYXJ5IiwidmlzaWJsZSIsImVuYWJsZWQiLCJEZWxldGFibGUiLCJnZXREZWxldGVIaWRkZW4iLCJTZWNvbmRhcnkiLCJwYXJlbnRFbnRpdHlEZWxldGVFbmFibGVkIiwiQ29weSIsInRleHQiLCJMYWJlbCIsInRvU3RyaW5nIiwiZ2V0TGlicmFyeVJlc291cmNlQnVuZGxlIiwiZ2V0VGV4dCIsImhlYWRlckRhdGFGaWVsZEZvcklCTkFjdGlvbnMiLCJSZXF1aXJlc0NvbnRleHQiLCJFcnJvciIsIklubGluZSIsIm9OYXZpZ2F0aW9uUGFyYW1zIiwic2VtYW50aWNPYmplY3RNYXBwaW5nIiwiZ2V0U2VtYW50aWNPYmplY3RNYXBwaW5nIiwiTWFwcGluZyIsIkRhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbiIsImFubm90YXRpb25QYXRoIiwiZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aCIsImZ1bGx5UXVhbGlmaWVkTmFtZSIsImJ1dHRvblR5cGUiLCJCdXR0b25UeXBlIiwiR2hvc3QiLCJOYXZpZ2F0aW9uQXZhaWxhYmxlIiwiS2V5SGVscGVyIiwiZ2VuZXJhdGVLZXlGcm9tRGF0YUZpZWxkIiwiaXNOYXZpZ2FibGUiLCJwcmVzcyIsImZuIiwiU2VtYW50aWNPYmplY3QiLCJBY3Rpb24iLCJjdXN0b21EYXRhIiwic2VtYW50aWNPYmplY3QiLCJhY3Rpb24iLCJnZXRIaWRkZW5IZWFkZXJBY3Rpb25zIiwiaGlkZGVuQWN0aW9ucyIsIkRlZmF1bHQiLCJnZXRGb290ZXJEZWZhdWx0QWN0aW9ucyIsImVudGl0eVNldERyYWZ0Um9vdCIsInRlcm0iLCJjb25kaXRpb25TYXZlIiwiU2F2ZUFjdGlvbiIsImNvbmRpdGlvbkFwcGx5IiwiY29uZGl0aW9uQ2FuY2VsIiwiRGlzY2FyZEFjdGlvbiIsImZvb3RlckRhdGFGaWVsZEZvckFjdGlvbnMiLCJmb290ZXJBY3Rpb25zIiwiZW50aXR5VHlwZU5hbWUiLCJEZWZhdWx0QXBwbHkiLCJwb3NpdGlvbiIsInBsYWNlbWVudCIsIlBsYWNlbWVudCIsIkVuZCIsIkRhdGFGaWVsZEZvckFjdGlvbiJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiSGVhZGVyQW5kRm9vdGVyQWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQWN0aW9uLCBFbnRpdHlTZXQsIEVudGl0eVR5cGUsIFByb3BlcnR5QW5ub3RhdGlvblZhbHVlIH0gZnJvbSBcIkBzYXAtdXgvdm9jYWJ1bGFyaWVzLXR5cGVzXCI7XG5pbXBvcnQgeyBDb21tb25Bbm5vdGF0aW9uVGVybXMgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvdm9jYWJ1bGFyaWVzL0NvbW1vblwiO1xuaW1wb3J0IHR5cGUgeyBEYXRhRmllbGRGb3JBY3Rpb25UeXBlcywgRGF0YUZpZWxkRm9ySW50ZW50QmFzZWROYXZpZ2F0aW9uVHlwZXMgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvdm9jYWJ1bGFyaWVzL1VJXCI7XG5pbXBvcnQgeyBVSUFubm90YXRpb25UeXBlcyB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlcy92b2NhYnVsYXJpZXMvVUlcIjtcbmltcG9ydCB0eXBlIHsgQW5ub3RhdGlvbkFjdGlvbiwgQmFzZUFjdGlvbiB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL2NvbnRyb2xzL0NvbW1vbi9BY3Rpb25cIjtcbmltcG9ydCB7XG5cdEJ1dHRvblR5cGUsXG5cdGRhdGFGaWVsZElzQ29weUFjdGlvbixcblx0Z2V0Q29weUFjdGlvbixcblx0Z2V0RW5hYmxlZEZvckFubm90YXRpb25BY3Rpb24sXG5cdGdldFNlbWFudGljT2JqZWN0TWFwcGluZ1xufSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9jb250cm9scy9Db21tb24vQWN0aW9uXCI7XG5pbXBvcnQgeyBQbGFjZW1lbnQgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9oZWxwZXJzL0NvbmZpZ3VyYWJsZU9iamVjdFwiO1xuaW1wb3J0IHsgS2V5SGVscGVyIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvaGVscGVycy9LZXlcIjtcbmltcG9ydCB7XG5cdGFuZCxcblx0QmluZGluZ1Rvb2xraXRFeHByZXNzaW9uLFxuXHRDb21waWxlZEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbixcblx0Y29tcGlsZUV4cHJlc3Npb24sXG5cdGNvbnN0YW50LFxuXHRlcXVhbCxcblx0Zm4sXG5cdGdldEV4cHJlc3Npb25Gcm9tQW5ub3RhdGlvbixcblx0aWZFbHNlLFxuXHRub3QsXG5cdHBhdGhJbk1vZGVsXG59IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0JpbmRpbmdUb29sa2l0XCI7XG5pbXBvcnQgTW9kZWxIZWxwZXIgZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvTW9kZWxIZWxwZXJcIjtcbmltcG9ydCB7IGlzUGF0aERlbGV0YWJsZSB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL0RhdGFNb2RlbFBhdGhIZWxwZXJcIjtcbmltcG9ydCBDb3JlIGZyb20gXCJzYXAvdWkvY29yZS9Db3JlXCI7XG5pbXBvcnQgdHlwZSBDb252ZXJ0ZXJDb250ZXh0IGZyb20gXCIuLi9Db252ZXJ0ZXJDb250ZXh0XCI7XG5pbXBvcnQgeyBEcmFmdCwgc2luZ2xldG9uUGF0aFZpc2l0b3IsIFVJIH0gZnJvbSBcIi4uL2hlbHBlcnMvQmluZGluZ0hlbHBlclwiO1xuaW1wb3J0IHsgQWN0aW9uVHlwZSB9IGZyb20gXCIuLi9NYW5pZmVzdFNldHRpbmdzXCI7XG5cbi8qKlxuICogUmV0cmlldmVzIGFsbCB0aGUgZGF0YSBmaWVsZCBmb3IgYWN0aW9ucyBmb3IgdGhlIGlkZW50aWZpY2F0aW9uIGFubm90YXRpb25cbiAqIFRoZXkgbXVzdCBiZVxuICogLSBOb3Qgc3RhdGljYWxseSBoaWRkZW5cbiAqIC0gRWl0aGVyIGxpbmtlZCB0byBhbiBVbmJvdW5kIGFjdGlvbiBvciB0byBhbiBhY3Rpb24gd2hpY2ggaGFzIGFuIE9wZXJhdGlvbkF2YWlsYWJsZSB0aGF0IGlzIG5vdCBzZXQgdG8gZmFsc2Ugc3RhdGljYWxseS5cbiAqXG4gKiBAcGFyYW0gZW50aXR5VHlwZSBUaGUgY3VycmVudCBlbnRpdHkgdHlwZVxuICogQHBhcmFtIGlzRGV0ZXJtaW5pbmdBY3Rpb24gVGhlIGZsYWcgd2hpY2ggZGVub3RlcyB3aGV0aGVyIG9yIG5vdCB0aGUgYWN0aW9uIGlzIGEgZGV0ZXJtaW5pbmcgYWN0aW9uXG4gKiBAcmV0dXJucyBBbiBhcnJheSBvZiBEYXRhRmllbGQgZm9yIGFjdGlvbiByZXNwZWN0aW5nIHRoZSBpbnB1dCBwYXJhbWV0ZXIgJ2lzRGV0ZXJtaW5pbmdBY3Rpb24nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRJZGVudGlmaWNhdGlvbkRhdGFGaWVsZEZvckFjdGlvbnMoZW50aXR5VHlwZTogRW50aXR5VHlwZSwgaXNEZXRlcm1pbmluZ0FjdGlvbjogYm9vbGVhbik6IERhdGFGaWVsZEZvckFjdGlvblR5cGVzW10ge1xuXHRyZXR1cm4gKGVudGl0eVR5cGUuYW5ub3RhdGlvbnM/LlVJPy5JZGVudGlmaWNhdGlvbj8uZmlsdGVyKChpZGVudGlmaWNhdGlvbkRhdGFGaWVsZCkgPT4ge1xuXHRcdHJldHVybiBpZGVudGlmaWNhdGlvbkRhdGFGaWVsZC5hbm5vdGF0aW9ucz8uVUk/LkhpZGRlbj8udmFsdWVPZigpICE9PSB0cnVlICYmXG5cdFx0XHRpZGVudGlmaWNhdGlvbkRhdGFGaWVsZC4kVHlwZSA9PT0gVUlBbm5vdGF0aW9uVHlwZXMuRGF0YUZpZWxkRm9yQWN0aW9uICYmXG5cdFx0XHRCb29sZWFuKGlkZW50aWZpY2F0aW9uRGF0YUZpZWxkLkRldGVybWluaW5nPy52YWx1ZU9mKCkpID09PSBpc0RldGVybWluaW5nQWN0aW9uICYmXG5cdFx0XHQoaWRlbnRpZmljYXRpb25EYXRhRmllbGQuQWN0aW9uVGFyZ2V0Py5pc0JvdW5kPy52YWx1ZU9mKCkgIT09IHRydWUgfHxcblx0XHRcdFx0aWRlbnRpZmljYXRpb25EYXRhRmllbGQ/LkFjdGlvblRhcmdldD8uYW5ub3RhdGlvbnM/LkNvcmU/Lk9wZXJhdGlvbkF2YWlsYWJsZT8udmFsdWVPZigpICE9PSBmYWxzZSlcblx0XHRcdD8gdHJ1ZVxuXHRcdFx0OiBmYWxzZTtcblx0fSkgfHwgW10pIGFzIERhdGFGaWVsZEZvckFjdGlvblR5cGVzW107XG59XG5cbi8qKlxuICogUmV0cmlldmUgYWxsIHRoZSBJQk4gYWN0aW9ucyBmb3IgdGhlIGlkZW50aWZpY2F0aW9uIGFubm90YXRpb24uXG4gKiBUaGV5IG11c3QgYmVcbiAqIC0gTm90IHN0YXRpY2FsbHkgaGlkZGVuLlxuICpcbiAqIEBwYXJhbSBlbnRpdHlUeXBlIFRoZSBjdXJyZW50IGVudGl0eXR5cGVcbiAqIEBwYXJhbSBpc0RldGVybWluaW5nQWN0aW9uIFdoZXRoZXIgb3Igbm90IHRoZSBhY3Rpb24gc2hvdWxkIGJlIGRldGVybWluaW5nXG4gKiBAcmV0dXJucyBBbiBhcnJheSBvZiBkYXRhIGZpZWxkIGZvciBhY3Rpb24gcmVzcGVjdGluZyB0aGUgaXNEZXRlcm1pbmluZ0FjdGlvbiBwcm9wZXJ0eS5cbiAqL1xuZnVuY3Rpb24gZ2V0SWRlbnRpZmljYXRpb25EYXRhRmllbGRGb3JJQk5BY3Rpb25zKFxuXHRlbnRpdHlUeXBlOiBFbnRpdHlUeXBlLFxuXHRpc0RldGVybWluaW5nQWN0aW9uOiBib29sZWFuXG4pOiBEYXRhRmllbGRGb3JJbnRlbnRCYXNlZE5hdmlnYXRpb25UeXBlc1tdIHtcblx0cmV0dXJuIChlbnRpdHlUeXBlLmFubm90YXRpb25zPy5VST8uSWRlbnRpZmljYXRpb24/LmZpbHRlcigoaWRlbnRpZmljYXRpb25EYXRhRmllbGQpID0+IHtcblx0XHRyZXR1cm4gaWRlbnRpZmljYXRpb25EYXRhRmllbGQuYW5ub3RhdGlvbnM/LlVJPy5IaWRkZW4/LnZhbHVlT2YoKSAhPT0gdHJ1ZSAmJlxuXHRcdFx0aWRlbnRpZmljYXRpb25EYXRhRmllbGQuJFR5cGUgPT09IFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbiAmJlxuXHRcdFx0Qm9vbGVhbihpZGVudGlmaWNhdGlvbkRhdGFGaWVsZC5EZXRlcm1pbmluZz8udmFsdWVPZigpKSA9PT0gaXNEZXRlcm1pbmluZ0FjdGlvblxuXHRcdFx0PyB0cnVlXG5cdFx0XHQ6IGZhbHNlO1xuXHR9KSB8fCBbXSkgYXMgRGF0YUZpZWxkRm9ySW50ZW50QmFzZWROYXZpZ2F0aW9uVHlwZXNbXTtcbn1cblxuZXhwb3J0IGNvbnN0IElNUE9SVEFOVF9DUklUSUNBTElUSUVTID0gW1xuXHRcIlVJLkNyaXRpY2FsaXR5VHlwZS9WZXJ5UG9zaXRpdmVcIixcblx0XCJVSS5Dcml0aWNhbGl0eVR5cGUvUG9zaXRpdmVcIixcblx0XCJVSS5Dcml0aWNhbGl0eVR5cGUvTmVnYXRpdmVcIixcblx0XCJVSS5Dcml0aWNhbGl0eVR5cGUvVmVyeU5lZ2F0aXZlXCJcbl07XG5cbi8qKlxuICogTWV0aG9kIHRvIGRldGVybWluZSB0aGUgJ3Zpc2libGUnIHByb3BlcnR5IGJpbmRpbmcgZm9yIHRoZSBEZWxldGUgYnV0dG9uIG9uIGFuIG9iamVjdCBwYWdlLlxuICpcbiAqIEBwYXJhbSBjb252ZXJ0ZXJDb250ZXh0IEluc3RhbmNlIG9mIHRoZSBjb252ZXJ0ZXIgY29udGV4dC5cbiAqIEBwYXJhbSBkZWxldGVIaWRkZW4gVGhlIHZhbHVlIG9mIHRoZSBVSS5EZWxldGVIaWRkZW4gYW5ub3RhdGlvbiBvbiB0aGUgZW50aXR5IHNldCAvIHR5cGUuXG4gKiBAcmV0dXJucyBUaGUgYmluZGluZyBleHByZXNzaW9uIGZvciB0aGUgJ3Zpc2libGUnIHByb3BlcnR5IG9mIHRoZSBEZWxldGUgYnV0dG9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVsZXRlQnV0dG9uVmlzaWJpbGl0eShcblx0Y29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dCxcblx0ZGVsZXRlSGlkZGVuOiBQcm9wZXJ0eUFubm90YXRpb25WYWx1ZTxib29sZWFuPiB8IHVuZGVmaW5lZFxuKTogQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uPGJvb2xlYW4+IHtcblx0Y29uc3QgZGF0YU1vZGVsT2JqZWN0UGF0aCA9IGNvbnZlcnRlckNvbnRleHQuZ2V0RGF0YU1vZGVsT2JqZWN0UGF0aCgpLFxuXHRcdHZpc2l0ZWROYXZpZ2F0aW9uUGF0aHMgPSBkYXRhTW9kZWxPYmplY3RQYXRoLm5hdmlnYXRpb25Qcm9wZXJ0aWVzLm1hcCgobmF2UHJvcCkgPT4gbmF2UHJvcC5uYW1lKSxcblx0XHQvLyBTZXQgYWJzb2x1dGUgYmluZGluZyBwYXRoIGZvciBTaW5nbGV0b24gcmVmZXJlbmNlcywgb3RoZXJ3aXNlIHRoZSBjb25maWd1cmVkIGFubm90YXRpb24gcGF0aCBpdHNlbGYuXG5cdFx0Ly8gRm9yIGUuZy4gL2NvbS5zYXAubmFtZXNwYWNlLkVudGl0eUNvbnRhaW5lci9TaW5nbGV0b24vUHJvcGVydHkgdG8gL1NpbmdsZXRvbi9Qcm9wZXJ0eVxuXHRcdGRlbGV0ZUhpZGRlbkV4cHJlc3Npb246IEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbjxib29sZWFuIHwgdW5kZWZpbmVkPiA9IGdldEV4cHJlc3Npb25Gcm9tQW5ub3RhdGlvbihcblx0XHRcdGRlbGV0ZUhpZGRlbixcblx0XHRcdHZpc2l0ZWROYXZpZ2F0aW9uUGF0aHMsXG5cdFx0XHR1bmRlZmluZWQsXG5cdFx0XHQocGF0aDogc3RyaW5nKSA9PiBzaW5nbGV0b25QYXRoVmlzaXRvcihwYXRoLCBjb252ZXJ0ZXJDb250ZXh0LmdldENvbnZlcnRlZFR5cGVzKCksIFtdKVxuXHRcdCksXG5cdFx0bWFuaWZlc3RXcmFwcGVyID0gY29udmVydGVyQ29udGV4dC5nZXRNYW5pZmVzdFdyYXBwZXIoKSxcblx0XHR2aWV3TGV2ZWwgPSBtYW5pZmVzdFdyYXBwZXIuZ2V0Vmlld0xldmVsKCksXG5cdFx0Ly8gRGVsZXRlIGJ1dHRvbiBpcyB2aXNpYmxlXG5cdFx0Ly8gSW4gT1AgXHRcdC0tPiAgd2hlbiBub3QgaW4gZWRpdCBtb2RlXG5cdFx0Ly8gSW4gc3ViLU9QIFx0LS0+ICB3aGVuIGluIGVkaXQgbW9kZVxuXHRcdGVkaXRhYmxlRXhwcmVzc2lvbjogQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uPGJvb2xlYW4+ID0gdmlld0xldmVsID4gMSA/IFVJLklzRWRpdGFibGUgOiBub3QoVUkuSXNFZGl0YWJsZSk7XG5cblx0Ly8gSWYgVUkuRGVsZXRlSGlkZGVuIGFubm90YXRpb24gb24gZW50aXR5IHNldCBvciB0eXBlIGlzIGVpdGhlciBub3QgZGVmaW5lZCBvciBleHBsaWNpdGx5IHNldCB0byBmYWxzZSxcblx0Ly8gRGVsZXRlIGJ1dHRvbiBpcyB2aXNpYmxlIGJhc2VkIG9uIGVkaXRhYmxlRXhwcmVzc2lvbi5cblx0Ly8gZWxzZSxcblx0Ly8gRGVsZXRlIGJ1dHRvbiBpcyB2aXNpYmxlIGJhc2VkIG9uIGJvdGggYW5ub3RhdGlvbiBwYXRoIGFuZCBlZGl0YWJsZUV4cHJlc3Npb24uXG5cdHJldHVybiBpZkVsc2UoXG5cdFx0ZGVsZXRlSGlkZGVuID09PSB1bmRlZmluZWQgfHwgZGVsZXRlSGlkZGVuLnZhbHVlT2YoKSA9PT0gZmFsc2UsXG5cdFx0ZWRpdGFibGVFeHByZXNzaW9uLFxuXHRcdGFuZChlZGl0YWJsZUV4cHJlc3Npb24sIGVxdWFsKGRlbGV0ZUhpZGRlbkV4cHJlc3Npb24sIGZhbHNlKSlcblx0KTtcbn1cblxuLyoqXG4gKiBNZXRob2QgdG8gZGV0ZXJtaW5lIHRoZSAnZW5hYmxlZCcgcHJvcGVydHkgYmluZGluZyBmb3IgdGhlIERlbGV0ZSBidXR0b24gb24gYW4gb2JqZWN0IHBhZ2UuXG4gKlxuICogQHBhcmFtIGlzRGVsZXRhYmxlIFRoZSBkZWxldGUgcmVzdHJpY3Rpb24gY29uZmlndXJlZFxuICogQHBhcmFtIGlzUGFyZW50RGVsZXRhYmxlIFRoZSBkZWxldGUgcmVzdHJpY3Rpb24gY29uZmlndXJlZCBvbiB0aGUgcGFyZW50IGVudGl0eVxuICogQHBhcmFtIGNvbnZlcnRlckNvbnRleHRcbiAqIEByZXR1cm5zIFRoZSBiaW5kaW5nIGV4cHJlc3Npb24gZm9yIHRoZSAnZW5hYmxlZCcgcHJvcGVydHkgb2YgdGhlIERlbGV0ZSBidXR0b25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldERlbGV0ZUJ1dHRvbkVuYWJsZWQoXG5cdGlzRGVsZXRhYmxlOiBQcm9wZXJ0eUFubm90YXRpb25WYWx1ZTxCb29sZWFuPiB8IHVuZGVmaW5lZCxcblx0aXNQYXJlbnREZWxldGFibGU6IEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbjxib29sZWFuPixcblx0Y29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dFxuKTogQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uPGJvb2xlYW4+IHtcblx0Y29uc3QgZW50aXR5U2V0ID0gY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlTZXQoKSxcblx0XHRpc0RyYWZ0Um9vdCA9IE1vZGVsSGVscGVyLmlzRHJhZnRSb290KGVudGl0eVNldCk7XG5cblx0bGV0IHJldCA9IGlmRWxzZShcblx0XHRpc1BhcmVudERlbGV0YWJsZSAhPT0gdW5kZWZpbmVkLFxuXHRcdGlzUGFyZW50RGVsZXRhYmxlLFxuXHRcdGlmRWxzZShpc0RlbGV0YWJsZSAhPT0gdW5kZWZpbmVkLCBlcXVhbChpc0RlbGV0YWJsZSwgdHJ1ZSksIGNvbnN0YW50KHRydWUpKVxuXHQpO1xuXG5cdC8vIGRlbGV0ZSBzaG91bGQgYmUgZGlzYWJsZWQgZm9yIExvY2tlZCBvYmplY3RzXG5cdHJldCA9IGlzRHJhZnRSb290ID8gYW5kKHJldCwgbm90KHBhdGhJbk1vZGVsKFwiRHJhZnRBZG1pbmlzdHJhdGl2ZURhdGEvSW5Qcm9jZXNzQnlVc2VyXCIpKSkgOiByZXQ7XG5cblx0cmV0dXJuIHJldDtcbn1cblxuLyoqXG4gKiBNZXRob2QgdG8gZGV0ZXJtaW5lIHRoZSAndmlzaWJsZScgcHJvcGVydHkgYmluZGluZyBmb3IgdGhlIEVkaXQgYnV0dG9uIG9uIGFuIG9iamVjdCBwYWdlLlxuICpcbiAqIEBwYXJhbSBjb252ZXJ0ZXJDb250ZXh0IEluc3RhbmNlIG9mIHRoZSBjb252ZXJ0ZXIgY29udGV4dC5cbiAqIEBwYXJhbSByb290VXBkYXRlSGlkZGVuIFRoZSB2YWx1ZSBvZiB0aGUgVUkuVXBkYXRlSGlkZGVuIGFubm90YXRpb24gb24gdGhlIGVudGl0eSBzZXQgLyB0eXBlLlxuICogQHBhcmFtIHJvb3RDb252ZXJ0ZXJDb250ZXh0XG4gKiBAcGFyYW0gdXBkYXRlSGlkZGVuXG4gKiBAcGFyYW0gdmlld0xldmVsXG4gKiBAcmV0dXJucyBUaGUgYmluZGluZyBleHByZXNzaW9uIGZvciB0aGUgJ3Zpc2libGUnIHByb3BlcnR5IG9mIHRoZSBFZGl0IGJ1dHRvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEVkaXRCdXR0b25WaXNpYmlsaXR5KFxuXHRjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0LFxuXHRyb290VXBkYXRlSGlkZGVuOiBQcm9wZXJ0eUFubm90YXRpb25WYWx1ZTxib29sZWFuPiB8IHVuZGVmaW5lZCxcblx0cm9vdENvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQsXG5cdHVwZGF0ZUhpZGRlbj86IFByb3BlcnR5QW5ub3RhdGlvblZhbHVlPGJvb2xlYW4+IHwgdW5kZWZpbmVkLFxuXHR2aWV3TGV2ZWw/OiBudW1iZXIgfCB1bmRlZmluZWRcbik6IEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbjxib29sZWFuPiB7XG5cdGNvbnN0IHJvb3RFbnRpdHlTZXQgPSByb290Q29udmVydGVyQ29udGV4dD8uZ2V0RW50aXR5U2V0KCksXG5cdFx0ZW50aXR5U2V0ID0gY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlTZXQoKSxcblx0XHRpc0ZDTEVuYWJsZWQgPSBjb252ZXJ0ZXJDb250ZXh0LmdldE1hbmlmZXN0V3JhcHBlcigpLmlzRmNsRW5hYmxlZCgpO1xuXHRsZXQgaXNEcmFmdEVuYWJsZWQ7XG5cdGNvbnN0IHJvb3RVcGRhdGVIaWRkZW5FeHByZXNzaW9uOiBCaW5kaW5nVG9vbGtpdEV4cHJlc3Npb248Ym9vbGVhbiB8IHVuZGVmaW5lZD4gPSBnZXRIaWRkZW5FeHByZXNzaW9uKFxuXHRcdHJvb3RDb252ZXJ0ZXJDb250ZXh0LFxuXHRcdHJvb3RVcGRhdGVIaWRkZW5cblx0KTtcblx0aWYgKHZpZXdMZXZlbCAmJiB2aWV3TGV2ZWwgPiAxKSB7XG5cdFx0Ly8gaWYgdmlld2xldmVsID4gMSBjaGVjayBpZiBub2RlIGlzIGRyYWZ0IGVuYWJsZWRcblx0XHRpc0RyYWZ0RW5hYmxlZCA9IE1vZGVsSGVscGVyLmlzRHJhZnROb2RlKGVudGl0eVNldCk7XG5cdH0gZWxzZSB7XG5cdFx0aXNEcmFmdEVuYWJsZWQgPSBNb2RlbEhlbHBlci5pc0RyYWZ0Um9vdChyb290RW50aXR5U2V0KTtcblx0fVxuXHRjb25zdCB1cGRhdGVIaWRkZW5FeHByZXNzaW9uOiBCaW5kaW5nVG9vbGtpdEV4cHJlc3Npb248Ym9vbGVhbiB8IHVuZGVmaW5lZD4gPSBnZXRIaWRkZW5FeHByZXNzaW9uKHJvb3RDb252ZXJ0ZXJDb250ZXh0LCB1cGRhdGVIaWRkZW4pO1xuXG5cdGNvbnN0IG5vdEVkaXRhYmxlRXhwcmVzc2lvbjogQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uPGJvb2xlYW4+ID0gbm90KFVJLklzRWRpdGFibGUpO1xuXG5cdC8vIElmIFVJLlVwZGF0ZUhpZGRlbiBhbm5vdGF0aW9uIG9uIGVudGl0eSBzZXQgb3IgdHlwZSBpcyBlaXRoZXIgbm90IGRlZmluZWQgb3IgZXhwbGljaXRseSBzZXQgdG8gZmFsc2UsXG5cdC8vIEVkaXQgYnV0dG9uIGlzIHZpc2libGUgaW4gZGlzcGxheSBtb2RlLlxuXHQvLyBlbHNlLFxuXHQvLyBFZGl0IGJ1dHRvbiBpcyB2aXNpYmxlIGJhc2VkIG9uIGJvdGggYW5ub3RhdGlvbiBwYXRoIGFuZCBpbiBkaXNwbGF5IG1vZGUuXG5cdGNvbnN0IHJlc3VsdGFudEV4cHJlc3Npb246IEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbjxib29sZWFuPiA9IGlmRWxzZShcblx0XHQodmlld0xldmVsIGFzIG51bWJlcikgPiAxLFxuXHRcdGlmRWxzZShcblx0XHRcdHVwZGF0ZUhpZGRlbiA9PT0gdW5kZWZpbmVkIHx8IHVwZGF0ZUhpZGRlbi52YWx1ZU9mKCkgPT09IGZhbHNlLFxuXHRcdFx0YW5kKFxuXHRcdFx0XHRub3RFZGl0YWJsZUV4cHJlc3Npb24sXG5cdFx0XHRcdGVxdWFsKHBhdGhJbk1vZGVsKFwicm9vdEVkaXRWaXNpYmxlXCIsIFwiaW50ZXJuYWxcIiksIHRydWUpLFxuXHRcdFx0XHRpZkVsc2UoaXNGQ0xFbmFibGVkLCBlcXVhbChwYXRoSW5Nb2RlbChcIi9zaG93RWRpdEJ1dHRvblwiLCBcImZjbGhlbHBlclwiKSwgdHJ1ZSksIHRydWUpXG5cdFx0XHQpLFxuXHRcdFx0YW5kKFxuXHRcdFx0XHRub3RFZGl0YWJsZUV4cHJlc3Npb24sXG5cdFx0XHRcdGVxdWFsKHVwZGF0ZUhpZGRlbkV4cHJlc3Npb24sIGZhbHNlKSxcblx0XHRcdFx0ZXF1YWwocGF0aEluTW9kZWwoXCJyb290RWRpdFZpc2libGVcIiwgXCJpbnRlcm5hbFwiKSwgdHJ1ZSksXG5cdFx0XHRcdGlmRWxzZShpc0ZDTEVuYWJsZWQsIGVxdWFsKHBhdGhJbk1vZGVsKFwiL3Nob3dFZGl0QnV0dG9uXCIsIFwiZmNsaGVscGVyXCIpLCB0cnVlKSwgdHJ1ZSlcblx0XHRcdClcblx0XHQpLFxuXHRcdGlmRWxzZShcblx0XHRcdHJvb3RVcGRhdGVIaWRkZW4gPT09IHVuZGVmaW5lZCB8fCByb290VXBkYXRlSGlkZGVuLnZhbHVlT2YoKSA9PT0gZmFsc2UsXG5cdFx0XHRub3RFZGl0YWJsZUV4cHJlc3Npb24sXG5cdFx0XHRhbmQobm90RWRpdGFibGVFeHByZXNzaW9uLCBlcXVhbChyb290VXBkYXRlSGlkZGVuRXhwcmVzc2lvbiwgZmFsc2UpKVxuXHRcdClcblx0KTtcblx0cmV0dXJuIGlmRWxzZShpc0RyYWZ0RW5hYmxlZCwgYW5kKHJlc3VsdGFudEV4cHJlc3Npb24sIERyYWZ0Lkhhc05vRHJhZnRGb3JDdXJyZW50VXNlciksIHJlc3VsdGFudEV4cHJlc3Npb24pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SGlkZGVuRXhwcmVzc2lvbihjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0LCB1cGRhdGVIaWRkZW46IFByb3BlcnR5QW5ub3RhdGlvblZhbHVlPGJvb2xlYW4+IHwgdW5kZWZpbmVkKSB7XG5cdGNvbnN0IGRhdGFNb2RlbE9iamVjdFBhdGggPSBjb252ZXJ0ZXJDb250ZXh0LmdldERhdGFNb2RlbE9iamVjdFBhdGgoKSxcblx0XHR2aXNpdGVkTmF2aWdhdGlvblBhdGhzID0gZGF0YU1vZGVsT2JqZWN0UGF0aC5uYXZpZ2F0aW9uUHJvcGVydGllcy5tYXAoKG5hdlByb3ApID0+IG5hdlByb3AubmFtZSksXG5cdFx0Ly8gU2V0IGFic29sdXRlIGJpbmRpbmcgcGF0aCBmb3IgU2luZ2xldG9uIHJlZmVyZW5jZXMsIG90aGVyd2lzZSB0aGUgY29uZmlndXJlZCBhbm5vdGF0aW9uIHBhdGggaXRzZWxmLlxuXHRcdC8vIEZvciBlLmcuIC9jb20uc2FwLm5hbWVzcGFjZS5FbnRpdHlDb250YWluZXIvU2luZ2xldG9uL1Byb3BlcnR5IHRvIC9TaW5nbGV0b24vUHJvcGVydHlcblx0XHR1cGRhdGVIaWRkZW5FeHByZXNzaW9uOiBCaW5kaW5nVG9vbGtpdEV4cHJlc3Npb248Ym9vbGVhbiB8IHVuZGVmaW5lZD4gPSBnZXRFeHByZXNzaW9uRnJvbUFubm90YXRpb24oXG5cdFx0XHR1cGRhdGVIaWRkZW4sXG5cdFx0XHR2aXNpdGVkTmF2aWdhdGlvblBhdGhzLFxuXHRcdFx0dW5kZWZpbmVkLFxuXHRcdFx0KHBhdGg6IHN0cmluZykgPT4gc2luZ2xldG9uUGF0aFZpc2l0b3IocGF0aCwgY29udmVydGVyQ29udGV4dC5nZXRDb252ZXJ0ZWRUeXBlcygpLCB2aXNpdGVkTmF2aWdhdGlvblBhdGhzKVxuXHRcdCk7XG5cdHJldHVybiB1cGRhdGVIaWRkZW5FeHByZXNzaW9uO1xufVxuLyoqXG4gKiBNZXRob2QgdG8gZGV0ZXJtaW5lIHRoZSAnZW5hYmxlZCcgcHJvcGVydHkgYmluZGluZyBmb3IgdGhlIEVkaXQgYnV0dG9uIG9uIGFuIG9iamVjdCBwYWdlLlxuICpcbiAqIEBwYXJhbSBjb252ZXJ0ZXJDb250ZXh0IEluc3RhbmNlIG9mIHRoZSBjb252ZXJ0ZXIgY29udGV4dC5cbiAqIEBwYXJhbSB1cGRhdGVSZXN0cmljdGlvbnNcbiAqIEBwYXJhbSB2aWV3TGV2ZWxcbiAqIEByZXR1cm5zIFRoZSBiaW5kaW5nIGV4cHJlc3Npb24gZm9yIHRoZSAnZW5hYmxlZCcgcHJvcGVydHkgb2YgdGhlIEVkaXQgYnV0dG9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RWRpdEJ1dHRvbkVuYWJsZWQoXG5cdGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQsXG5cdHVwZGF0ZVJlc3RyaWN0aW9ucz86IGFueSxcblx0dmlld0xldmVsPzogbnVtYmVyIHwgdW5kZWZpbmVkXG4pOiBDb21waWxlZEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbiB7XG5cdGNvbnN0IGVudGl0eVNldCA9IGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5U2V0KCksXG5cdFx0aXNEcmFmdFJvb3QgPSBNb2RlbEhlbHBlci5pc0RyYWZ0Um9vdChlbnRpdHlTZXQpLFxuXHRcdGlzU3RpY2t5ID0gTW9kZWxIZWxwZXIuaXNTdGlja3koZW50aXR5U2V0KTtcblx0bGV0IGVkaXRBY3Rpb25OYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cdGlmIChpc0RyYWZ0Um9vdCAmJiAhTW9kZWxIZWxwZXIuaXNTaW5nbGV0b24oZW50aXR5U2V0KSkge1xuXHRcdGVkaXRBY3Rpb25OYW1lID0gKGVudGl0eVNldCBhcyBFbnRpdHlTZXQpPy5hbm5vdGF0aW9ucy5Db21tb24/LkRyYWZ0Um9vdD8uRWRpdEFjdGlvbiBhcyBzdHJpbmc7XG5cdH0gZWxzZSBpZiAoaXNTdGlja3kgJiYgIU1vZGVsSGVscGVyLmlzU2luZ2xldG9uKGVudGl0eVNldCkpIHtcblx0XHRlZGl0QWN0aW9uTmFtZSA9IChlbnRpdHlTZXQgYXMgRW50aXR5U2V0KT8uYW5ub3RhdGlvbnMuU2Vzc2lvbj8uU3RpY2t5U2Vzc2lvblN1cHBvcnRlZD8uRWRpdEFjdGlvbiBhcyBzdHJpbmc7XG5cdH1cblx0aWYgKGVkaXRBY3Rpb25OYW1lKSB7XG5cdFx0Y29uc3QgZWRpdEFjdGlvbkFubm90YXRpb25QYXRoID0gY29udmVydGVyQ29udGV4dC5nZXRBYnNvbHV0ZUFubm90YXRpb25QYXRoKGVkaXRBY3Rpb25OYW1lKTtcblx0XHRjb25zdCBlZGl0QWN0aW9uID0gY29udmVydGVyQ29udGV4dC5yZXNvbHZlQWJzb2x1dGVQYXRoKGVkaXRBY3Rpb25Bbm5vdGF0aW9uUGF0aCkudGFyZ2V0IGFzIEFjdGlvbiB8IG51bGw7XG5cdFx0aWYgKGVkaXRBY3Rpb24/LmFubm90YXRpb25zPy5Db3JlPy5PcGVyYXRpb25BdmFpbGFibGUgPT09IG51bGwpIHtcblx0XHRcdC8vIFdlIGRpc2FibGVkIGFjdGlvbiBhZHZlcnRpc2VtZW50IGJ1dCBrZXB0IGl0IGluIHRoZSBjb2RlIGZvciB0aGUgdGltZSBiZWluZ1xuXHRcdFx0Ly9yZXR1cm4gXCJ7PSAkeyNcIiArIGVkaXRBY3Rpb25OYW1lICsgXCJ9ID8gdHJ1ZSA6IGZhbHNlIH1cIjtcblx0XHR9IGVsc2UgaWYgKCh2aWV3TGV2ZWwgYXMgbnVtYmVyKSA+IDEpIHtcblx0XHRcdC8vIEVkaXQgYnV0dG9uIGlzIGVuYWJsZWQgYmFzZWQgb24gdGhlIHVwZGF0ZSByZXN0cmljdGlvbnMgb2YgdGhlIHN1Yi1PUFxuXHRcdFx0aWYgKHVwZGF0ZVJlc3RyaWN0aW9ucyAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRcdHJldHVybiBjb21waWxlRXhwcmVzc2lvbihcblx0XHRcdFx0XHRhbmQoXG5cdFx0XHRcdFx0XHRlcXVhbChnZXRFeHByZXNzaW9uRnJvbUFubm90YXRpb24odXBkYXRlUmVzdHJpY3Rpb25zKSwgdHJ1ZSksXG5cdFx0XHRcdFx0XHRlcXVhbChwYXRoSW5Nb2RlbChcInJvb3RFZGl0RW5hYmxlZFwiLCBcImludGVybmFsXCIpLCB0cnVlKVxuXHRcdFx0XHRcdClcblx0XHRcdFx0KTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHJldHVybiBjb21waWxlRXhwcmVzc2lvbihlcXVhbChwYXRoSW5Nb2RlbChcInJvb3RFZGl0RW5hYmxlZFwiLCBcImludGVybmFsXCIpLCB0cnVlKSk7XG5cdFx0XHR9XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJldHVybiBnZXRFbmFibGVkRm9yQW5ub3RhdGlvbkFjdGlvbihjb252ZXJ0ZXJDb250ZXh0LCBlZGl0QWN0aW9uID8/IHVuZGVmaW5lZCk7XG5cdFx0fVxuXHR9XG5cdHJldHVybiBcInRydWVcIjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEhlYWRlckRlZmF1bHRBY3Rpb25zKGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQpOiBCYXNlQWN0aW9uW10ge1xuXHRjb25zdCBzQ29udGV4dFBhdGggPSBjb252ZXJ0ZXJDb250ZXh0LmdldENvbnRleHRQYXRoKCk7XG5cdGNvbnN0IHJvb3RFbnRpdHlTZXRQYXRoID0gTW9kZWxIZWxwZXIuZ2V0Um9vdEVudGl0eVNldFBhdGgoc0NvbnRleHRQYXRoKTtcblx0Y29uc3Qgcm9vdENvbnZlcnRlckNvbnRleHQgPSBjb252ZXJ0ZXJDb250ZXh0LmdldENvbnZlcnRlckNvbnRleHRGb3IoXCIvXCIgKyByb290RW50aXR5U2V0UGF0aCk7XG5cdGNvbnN0IGVudGl0eVNldCA9IGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5U2V0KCksXG5cdFx0ZW50aXR5VHlwZSA9IGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5VHlwZSgpLFxuXHRcdHJvb3RFbnRpdHlTZXQgPSByb290Q29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlTZXQoKSxcblx0XHRyb290RW50aXR5VHlwZSA9IHJvb3RDb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVR5cGUoKSxcblx0XHRzdGlja3lTZXNzaW9uU3VwcG9ydGVkID0gTW9kZWxIZWxwZXIuZ2V0U3RpY2t5U2Vzc2lvbihyb290RW50aXR5U2V0KSwgLy9mb3Igc3RpY2t5IGFwcFxuXHRcdGRyYWZ0Um9vdCA9IE1vZGVsSGVscGVyLmdldERyYWZ0Um9vdChyb290RW50aXR5U2V0KSwgLy9lbnRpdHlTZXQgJiYgZW50aXR5U2V0LmFubm90YXRpb25zLkNvbW1vbj8uRHJhZnRSb290LFxuXHRcdGRyYWZ0Tm9kZSA9IE1vZGVsSGVscGVyLmdldERyYWZ0Tm9kZShyb290RW50aXR5U2V0KSxcblx0XHRlbnRpdHlEZWxldGVSZXN0cmljdGlvbnMgPSBlbnRpdHlTZXQgJiYgZW50aXR5U2V0LmFubm90YXRpb25zPy5DYXBhYmlsaXRpZXM/LkRlbGV0ZVJlc3RyaWN0aW9ucyxcblx0XHRyb290VXBkYXRlSGlkZGVuID0gTW9kZWxIZWxwZXIuaXNVcGRhdGVIaWRkZW4ocm9vdEVudGl0eVNldCwgcm9vdEVudGl0eVR5cGUpLFxuXHRcdHVwZGF0ZUhpZGRlbiA9IHJvb3RFbnRpdHlTZXQgJiYgIU1vZGVsSGVscGVyLmlzU2luZ2xldG9uKHJvb3RFbnRpdHlTZXQpICYmIHJvb3RVcGRhdGVIaWRkZW4/LnZhbHVlT2YoKSxcblx0XHRkYXRhTW9kZWxPYmplY3RQYXRoID0gY29udmVydGVyQ29udGV4dC5nZXREYXRhTW9kZWxPYmplY3RQYXRoKCksXG5cdFx0aXNQYXJlbnREZWxldGFibGUgPSBpc1BhdGhEZWxldGFibGUoZGF0YU1vZGVsT2JqZWN0UGF0aCwge1xuXHRcdFx0cGF0aFZpc2l0b3I6IChwYXRoOiBzdHJpbmcsIG5hdmlnYXRpb25QYXRoczogc3RyaW5nW10pID0+XG5cdFx0XHRcdHNpbmdsZXRvblBhdGhWaXNpdG9yKHBhdGgsIGNvbnZlcnRlckNvbnRleHQuZ2V0Q29udmVydGVkVHlwZXMoKSwgbmF2aWdhdGlvblBhdGhzKVxuXHRcdH0pLFxuXHRcdHBhcmVudEVudGl0eVNldERlbGV0YWJsZSA9IGlzUGFyZW50RGVsZXRhYmxlID8gY29tcGlsZUV4cHJlc3Npb24oaXNQYXJlbnREZWxldGFibGUpIDogaXNQYXJlbnREZWxldGFibGUsXG5cdFx0aWRlbnRpZmljYXRpb25GaWVsZEZvckFjdGlvbnMgPSBnZXRJZGVudGlmaWNhdGlvbkRhdGFGaWVsZEZvckFjdGlvbnMoY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlUeXBlKCksIGZhbHNlKTtcblxuXHRjb25zdCBjb3B5RGF0YUZpZWxkID1cblx0XHRjb252ZXJ0ZXJDb250ZXh0LmdldE1hbmlmZXN0V3JhcHBlcigpLmdldFZpZXdMZXZlbCgpID09PSAxXG5cdFx0XHQ/IGdldENvcHlBY3Rpb24oXG5cdFx0XHRcdFx0aWRlbnRpZmljYXRpb25GaWVsZEZvckFjdGlvbnMuZmlsdGVyKChkYXRhRmllbGQpID0+IHtcblx0XHRcdFx0XHRcdHJldHVybiBkYXRhRmllbGRJc0NvcHlBY3Rpb24oZGF0YUZpZWxkKTtcblx0XHRcdFx0XHR9KVxuXHRcdFx0ICApXG5cdFx0XHQ6IHVuZGVmaW5lZDtcblxuXHRjb25zdCBoZWFkZXJEYXRhRmllbGRGb3JBY3Rpb25zID0gaWRlbnRpZmljYXRpb25GaWVsZEZvckFjdGlvbnMuZmlsdGVyKChkYXRhRmllbGQpID0+IHtcblx0XHRyZXR1cm4gIWRhdGFGaWVsZElzQ29weUFjdGlvbihkYXRhRmllbGQpO1xuXHR9KTtcblxuXHQvLyBJbml0aWFsaXplIGFjdGlvbnMgYW5kIHN0YXJ0IHdpdGggZHJhZnQgYWN0aW9ucyBpZiBhdmFpbGFibGUgc2luY2UgdGhleSBzaG91bGQgYXBwZWFyIGluIHRoZSBmaXJzdFxuXHQvLyBsZWZ0bW9zdCBwb3NpdGlvbiBpbiB0aGUgYWN0aW9ucyBhcmVhIG9mIHRoZSBPUCBoZWFkZXJcblx0Ly8gVGhpcyBpcyBtb3JlIGxpa2UgYSBwbGFjZWhvbGRlciB0aGFuIGEgc2luZ2xlIGFjdGlvbiwgc2luY2UgdGhpcyBjb250cm9scyBub3Qgb25seSB0aGUgdGVtcGxhdGluZyBvZlxuXHQvLyB0aGUgYnV0dG9uIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBkcmFmdCBhbmQgYWN0aXZlIGRvY3VtZW50IHZlcnNpb25zIGJ1dCBhbHNvIHRoZSBjb250cm9scyBmb3Jcblx0Ly8gdGhlIGNvbGxhYm9yYXRpdmUgZHJhZnQgZnJhZ21lbnQuXG5cdGNvbnN0IGhlYWRlckFjdGlvbnM6IEJhc2VBY3Rpb25bXSA9IFtdO1xuXHRpZiAoIU1vZGVsSGVscGVyLmlzU2luZ2xldG9uKGVudGl0eVNldCkgJiYgZHJhZnRSb290Py5FZGl0QWN0aW9uICYmIHVwZGF0ZUhpZGRlbiAhPT0gdHJ1ZSkge1xuXHRcdGhlYWRlckFjdGlvbnMucHVzaCh7IHR5cGU6IEFjdGlvblR5cGUuRHJhZnRBY3Rpb25zLCBrZXk6IFwiRHJhZnRBY3Rpb25zXCIgfSk7XG5cdH1cblxuXHRjb25zdCB2aWV3TGV2ZWwgPSBjb252ZXJ0ZXJDb250ZXh0LmdldE1hbmlmZXN0V3JhcHBlcigpLmdldFZpZXdMZXZlbCgpO1xuXHRjb25zdCB1cGRhdGFibGVQcm9wZXJ0eVBhdGggPSB2aWV3TGV2ZWwgPiAxID8gZW50aXR5U2V0Py5hbm5vdGF0aW9ucy5DYXBhYmlsaXRpZXM/LlVwZGF0ZVJlc3RyaWN0aW9ucz8uVXBkYXRhYmxlIDogdW5kZWZpbmVkO1xuXHRpZiAoZHJhZnRSb290IHx8IGRyYWZ0Tm9kZSkge1xuXHRcdGhlYWRlckFjdGlvbnMucHVzaCh7IHR5cGU6IEFjdGlvblR5cGUuQ29sbGFib3JhdGlvbkF2YXRhcnMsIGtleTogXCJDb2xsYWJvcmF0aW9uQXZhdGFyc1wiIH0pO1xuXHR9XG5cdC8vIFRoZW4gYWRkIHRoZSBcIkNyaXRpY2FsXCIgRGF0YUZpZWxkRm9yQWN0aW9uc1xuXHRoZWFkZXJEYXRhRmllbGRGb3JBY3Rpb25zXG5cdFx0LmZpbHRlcigoZGF0YUZpZWxkKSA9PiB7XG5cdFx0XHRyZXR1cm4gSU1QT1JUQU5UX0NSSVRJQ0FMSVRJRVMuaW5kZXhPZihkYXRhRmllbGQ/LkNyaXRpY2FsaXR5IGFzIHN0cmluZykgPiAtMTtcblx0XHR9KVxuXHRcdC5mb3JFYWNoKChkYXRhRmllbGQpID0+IHtcblx0XHRcdGhlYWRlckFjdGlvbnMucHVzaChnZXREYXRhRmllbGRBbm5vdGF0aW9uQWN0aW9uKGRhdGFGaWVsZCwgY29udmVydGVyQ29udGV4dCkpO1xuXHRcdH0pO1xuXG5cdC8vIFRoZW4gdGhlIGVkaXQgYWN0aW9uIGlmIGl0IGV4aXN0c1xuXHRpZiAoKGRyYWZ0Um9vdD8uRWRpdEFjdGlvbiB8fCBzdGlja3lTZXNzaW9uU3VwcG9ydGVkPy5FZGl0QWN0aW9uKSAmJiB1cGRhdGVIaWRkZW4gIT09IHRydWUpIHtcblx0XHRoZWFkZXJBY3Rpb25zLnB1c2goe1xuXHRcdFx0dHlwZTogQWN0aW9uVHlwZS5QcmltYXJ5LFxuXHRcdFx0a2V5OiBcIkVkaXRBY3Rpb25cIixcblx0XHRcdHZpc2libGU6IGNvbXBpbGVFeHByZXNzaW9uKFxuXHRcdFx0XHRnZXRFZGl0QnV0dG9uVmlzaWJpbGl0eShcblx0XHRcdFx0XHRjb252ZXJ0ZXJDb250ZXh0LFxuXHRcdFx0XHRcdHJvb3RVcGRhdGVIaWRkZW4sXG5cdFx0XHRcdFx0cm9vdENvbnZlcnRlckNvbnRleHQsXG5cdFx0XHRcdFx0TW9kZWxIZWxwZXIuaXNVcGRhdGVIaWRkZW4oZW50aXR5U2V0LCBlbnRpdHlUeXBlKSxcblx0XHRcdFx0XHR2aWV3TGV2ZWxcblx0XHRcdFx0KVxuXHRcdFx0KSxcblx0XHRcdGVuYWJsZWQ6IGdldEVkaXRCdXR0b25FbmFibGVkKHJvb3RDb252ZXJ0ZXJDb250ZXh0LCB1cGRhdGFibGVQcm9wZXJ0eVBhdGgsIHZpZXdMZXZlbClcblx0XHR9KTtcblx0fVxuXHQvLyBUaGVuIHRoZSBkZWxldGUgYWN0aW9uIGlmIHdlJ3JlIG5vdCBzdGF0aWNhbGx5IG5vdCBkZWxldGFibGVcblx0aWYgKFxuXHRcdChwYXJlbnRFbnRpdHlTZXREZWxldGFibGUgJiYgcGFyZW50RW50aXR5U2V0RGVsZXRhYmxlICE9PSBcImZhbHNlXCIpIHx8XG5cdFx0KGVudGl0eURlbGV0ZVJlc3RyaWN0aW9ucz8uRGVsZXRhYmxlPy52YWx1ZU9mKCkgIT09IGZhbHNlICYmIHBhcmVudEVudGl0eVNldERlbGV0YWJsZSAhPT0gXCJmYWxzZVwiKVxuXHQpIHtcblx0XHRjb25zdCBkZWxldGVIaWRkZW4gPSBNb2RlbEhlbHBlci5nZXREZWxldGVIaWRkZW4oZW50aXR5U2V0LCBlbnRpdHlUeXBlKSBhcyBQcm9wZXJ0eUFubm90YXRpb25WYWx1ZTxib29sZWFuPjtcblx0XHRoZWFkZXJBY3Rpb25zLnB1c2goe1xuXHRcdFx0dHlwZTogQWN0aW9uVHlwZS5TZWNvbmRhcnksXG5cdFx0XHRrZXk6IFwiRGVsZXRlQWN0aW9uXCIsXG5cdFx0XHR2aXNpYmxlOiBjb21waWxlRXhwcmVzc2lvbihnZXREZWxldGVCdXR0b25WaXNpYmlsaXR5KGNvbnZlcnRlckNvbnRleHQsIGRlbGV0ZUhpZGRlbikpLFxuXHRcdFx0ZW5hYmxlZDogY29tcGlsZUV4cHJlc3Npb24oZ2V0RGVsZXRlQnV0dG9uRW5hYmxlZChlbnRpdHlEZWxldGVSZXN0cmljdGlvbnM/LkRlbGV0YWJsZSwgaXNQYXJlbnREZWxldGFibGUsIGNvbnZlcnRlckNvbnRleHQpKSxcblx0XHRcdHBhcmVudEVudGl0eURlbGV0ZUVuYWJsZWQ6IHBhcmVudEVudGl0eVNldERlbGV0YWJsZVxuXHRcdH0pO1xuXHR9XG5cblx0aWYgKGNvcHlEYXRhRmllbGQpIHtcblx0XHRoZWFkZXJBY3Rpb25zLnB1c2goe1xuXHRcdFx0Li4uZ2V0RGF0YUZpZWxkQW5ub3RhdGlvbkFjdGlvbihjb3B5RGF0YUZpZWxkLCBjb252ZXJ0ZXJDb250ZXh0KSxcblx0XHRcdHR5cGU6IEFjdGlvblR5cGUuQ29weSxcblx0XHRcdHRleHQ6IGNvcHlEYXRhRmllbGQuTGFiZWw/LnRvU3RyaW5nKCkgPz8gQ29yZS5nZXRMaWJyYXJ5UmVzb3VyY2VCdW5kbGUoXCJzYXAuZmUuY29yZVwiKS5nZXRUZXh0KFwiQ19DT01NT05fQ09QWVwiKVxuXHRcdH0pO1xuXHR9XG5cblx0Y29uc3QgaGVhZGVyRGF0YUZpZWxkRm9ySUJOQWN0aW9ucyA9IGdldElkZW50aWZpY2F0aW9uRGF0YUZpZWxkRm9ySUJOQWN0aW9ucyhjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVR5cGUoKSwgZmFsc2UpO1xuXG5cdGhlYWRlckRhdGFGaWVsZEZvcklCTkFjdGlvbnNcblx0XHQuZmlsdGVyKChkYXRhRmllbGQpID0+IHtcblx0XHRcdHJldHVybiBJTVBPUlRBTlRfQ1JJVElDQUxJVElFUy5pbmRleE9mKGRhdGFGaWVsZD8uQ3JpdGljYWxpdHkgYXMgc3RyaW5nKSA9PT0gLTE7XG5cdFx0fSlcblx0XHQuZm9yRWFjaCgoZGF0YUZpZWxkKSA9PiB7XG5cdFx0XHRpZiAoZGF0YUZpZWxkLlJlcXVpcmVzQ29udGV4dD8udmFsdWVPZigpID09PSB0cnVlKSB7XG5cdFx0XHRcdHRocm93IG5ldyBFcnJvcihgUmVxdWlyZXNDb250ZXh0IHByb3BlcnR5IHNob3VsZCBub3QgYmUgdHJ1ZSBmb3IgaGVhZGVyIElCTiBhY3Rpb24gOiAke2RhdGFGaWVsZC5MYWJlbH1gKTtcblx0XHRcdH1cblx0XHRcdGlmIChkYXRhRmllbGQuSW5saW5lPy52YWx1ZU9mKCkgPT09IHRydWUpIHtcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbmxpbmUgcHJvcGVydHkgc2hvdWxkIG5vdCBiZSB0cnVlIGZvciBoZWFkZXIgSUJOIGFjdGlvbiA6ICR7ZGF0YUZpZWxkLkxhYmVsfWApO1xuXHRcdFx0fVxuXHRcdFx0Y29uc3Qgb05hdmlnYXRpb25QYXJhbXMgPSB7XG5cdFx0XHRcdHNlbWFudGljT2JqZWN0TWFwcGluZzogZ2V0U2VtYW50aWNPYmplY3RNYXBwaW5nKGRhdGFGaWVsZC5NYXBwaW5nKVxuXHRcdFx0fTtcblxuXHRcdFx0aGVhZGVyQWN0aW9ucy5wdXNoKHtcblx0XHRcdFx0dHlwZTogQWN0aW9uVHlwZS5EYXRhRmllbGRGb3JJbnRlbnRCYXNlZE5hdmlnYXRpb24sXG5cdFx0XHRcdHRleHQ6IGRhdGFGaWVsZC5MYWJlbD8udG9TdHJpbmcoKSxcblx0XHRcdFx0YW5ub3RhdGlvblBhdGg6IGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aChkYXRhRmllbGQuZnVsbHlRdWFsaWZpZWROYW1lKSxcblx0XHRcdFx0YnV0dG9uVHlwZTogQnV0dG9uVHlwZS5HaG9zdCxcblx0XHRcdFx0dmlzaWJsZTogY29tcGlsZUV4cHJlc3Npb24oXG5cdFx0XHRcdFx0YW5kKFxuXHRcdFx0XHRcdFx0bm90KGVxdWFsKGdldEV4cHJlc3Npb25Gcm9tQW5ub3RhdGlvbihkYXRhRmllbGQuYW5ub3RhdGlvbnM/LlVJPy5IaWRkZW4pLCB0cnVlKSksXG5cdFx0XHRcdFx0XHRub3QoZXF1YWwocGF0aEluTW9kZWwoXCJzaGVsbE5hdmlnYXRpb25Ob3RBdmFpbGFibGVcIiwgXCJpbnRlcm5hbFwiKSwgdHJ1ZSkpXG5cdFx0XHRcdFx0KVxuXHRcdFx0XHQpLFxuXHRcdFx0XHRlbmFibGVkOlxuXHRcdFx0XHRcdGRhdGFGaWVsZC5OYXZpZ2F0aW9uQXZhaWxhYmxlICE9PSB1bmRlZmluZWRcblx0XHRcdFx0XHRcdD8gY29tcGlsZUV4cHJlc3Npb24oZXF1YWwoZ2V0RXhwcmVzc2lvbkZyb21Bbm5vdGF0aW9uKGRhdGFGaWVsZC5OYXZpZ2F0aW9uQXZhaWxhYmxlPy52YWx1ZU9mKCkpLCB0cnVlKSlcblx0XHRcdFx0XHRcdDogdHJ1ZSxcblx0XHRcdFx0a2V5OiBLZXlIZWxwZXIuZ2VuZXJhdGVLZXlGcm9tRGF0YUZpZWxkKGRhdGFGaWVsZCksXG5cdFx0XHRcdGlzTmF2aWdhYmxlOiB0cnVlLFxuXHRcdFx0XHRwcmVzczogY29tcGlsZUV4cHJlc3Npb24oXG5cdFx0XHRcdFx0Zm4oXCIuX2ludGVudEJhc2VkTmF2aWdhdGlvbi5uYXZpZ2F0ZVwiLCBbXG5cdFx0XHRcdFx0XHRnZXRFeHByZXNzaW9uRnJvbUFubm90YXRpb24oZGF0YUZpZWxkLlNlbWFudGljT2JqZWN0KSxcblx0XHRcdFx0XHRcdGdldEV4cHJlc3Npb25Gcm9tQW5ub3RhdGlvbihkYXRhRmllbGQuQWN0aW9uKSxcblx0XHRcdFx0XHRcdG9OYXZpZ2F0aW9uUGFyYW1zXG5cdFx0XHRcdFx0XSlcblx0XHRcdFx0KSxcblx0XHRcdFx0Y3VzdG9tRGF0YTogY29tcGlsZUV4cHJlc3Npb24oe1xuXHRcdFx0XHRcdHNlbWFudGljT2JqZWN0OiBnZXRFeHByZXNzaW9uRnJvbUFubm90YXRpb24oZGF0YUZpZWxkLlNlbWFudGljT2JqZWN0KSxcblx0XHRcdFx0XHRhY3Rpb246IGdldEV4cHJlc3Npb25Gcm9tQW5ub3RhdGlvbihkYXRhRmllbGQuQWN0aW9uKVxuXHRcdFx0XHR9KVxuXHRcdFx0fSBhcyBBbm5vdGF0aW9uQWN0aW9uKTtcblx0XHR9KTtcblx0Ly8gRmluYWxseSB0aGUgbm9uIGNyaXRpY2FsIERhdGFGaWVsZEZvckFjdGlvbnNcblx0aGVhZGVyRGF0YUZpZWxkRm9yQWN0aW9uc1xuXHRcdC5maWx0ZXIoKGRhdGFGaWVsZCkgPT4ge1xuXHRcdFx0cmV0dXJuIElNUE9SVEFOVF9DUklUSUNBTElUSUVTLmluZGV4T2YoZGF0YUZpZWxkPy5Dcml0aWNhbGl0eSBhcyBzdHJpbmcpID09PSAtMTtcblx0XHR9KVxuXHRcdC5mb3JFYWNoKChkYXRhRmllbGQpID0+IHtcblx0XHRcdGhlYWRlckFjdGlvbnMucHVzaChnZXREYXRhRmllbGRBbm5vdGF0aW9uQWN0aW9uKGRhdGFGaWVsZCwgY29udmVydGVyQ29udGV4dCkpO1xuXHRcdH0pO1xuXG5cdHJldHVybiBoZWFkZXJBY3Rpb25zO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SGlkZGVuSGVhZGVyQWN0aW9ucyhjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0KTogQmFzZUFjdGlvbltdIHtcblx0Y29uc3QgZW50aXR5VHlwZSA9IGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5VHlwZSgpO1xuXHRjb25zdCBoaWRkZW5BY3Rpb25zID0gKGVudGl0eVR5cGUuYW5ub3RhdGlvbnM/LlVJPy5JZGVudGlmaWNhdGlvbj8uZmlsdGVyKChpZGVudGlmaWNhdGlvbkRhdGFGaWVsZCkgPT4ge1xuXHRcdHJldHVybiBpZGVudGlmaWNhdGlvbkRhdGFGaWVsZD8uYW5ub3RhdGlvbnM/LlVJPy5IaWRkZW4/LnZhbHVlT2YoKSA9PT0gdHJ1ZTtcblx0fSkgfHwgW10pIGFzIERhdGFGaWVsZEZvckFjdGlvblR5cGVzW107XG5cdHJldHVybiBoaWRkZW5BY3Rpb25zLm1hcCgoZGF0YUZpZWxkKSA9PiB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdHR5cGU6IEFjdGlvblR5cGUuRGVmYXVsdCxcblx0XHRcdGtleTogS2V5SGVscGVyLmdlbmVyYXRlS2V5RnJvbURhdGFGaWVsZChkYXRhRmllbGQpXG5cdFx0fTtcblx0fSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGb290ZXJEZWZhdWx0QWN0aW9ucyh2aWV3TGV2ZWw6IG51bWJlciwgY29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dCk6IEJhc2VBY3Rpb25bXSB7XG5cdGNvbnN0IGVudGl0eVNldCA9IGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5U2V0KCk7XG5cdGNvbnN0IGVudGl0eVR5cGUgPSBjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVR5cGUoKTtcblx0Y29uc3Qgc3RpY2t5U2Vzc2lvblN1cHBvcnRlZCA9IE1vZGVsSGVscGVyLmdldFN0aWNreVNlc3Npb24oZW50aXR5U2V0KSwgLy9mb3Igc3RpY2t5IGFwcFxuXHRcdGVudGl0eVNldERyYWZ0Um9vdCA9XG5cdFx0XHQhTW9kZWxIZWxwZXIuaXNTaW5nbGV0b24oZW50aXR5U2V0KSAmJlxuXHRcdFx0ZW50aXR5U2V0ICYmXG5cdFx0XHQoZW50aXR5U2V0LmFubm90YXRpb25zLkNvbW1vbj8uRHJhZnRSb290Py50ZXJtIHx8IGVudGl0eVNldC5hbm5vdGF0aW9ucz8uU2Vzc2lvbj8uU3RpY2t5U2Vzc2lvblN1cHBvcnRlZD8udGVybSksXG5cdFx0Y29uZGl0aW9uU2F2ZSA9IEJvb2xlYW4oXG5cdFx0XHRlbnRpdHlTZXREcmFmdFJvb3QgPT09IENvbW1vbkFubm90YXRpb25UZXJtcy5EcmFmdFJvb3QgfHwgKHN0aWNreVNlc3Npb25TdXBwb3J0ZWQgJiYgc3RpY2t5U2Vzc2lvblN1cHBvcnRlZD8uU2F2ZUFjdGlvbilcblx0XHQpLFxuXHRcdGNvbmRpdGlvbkFwcGx5ID0gdmlld0xldmVsID4gMSxcblx0XHRjb25kaXRpb25DYW5jZWwgPSBCb29sZWFuKFxuXHRcdFx0ZW50aXR5U2V0RHJhZnRSb290ID09PSBDb21tb25Bbm5vdGF0aW9uVGVybXMuRHJhZnRSb290IHx8IChzdGlja3lTZXNzaW9uU3VwcG9ydGVkICYmIHN0aWNreVNlc3Npb25TdXBwb3J0ZWQ/LkRpc2NhcmRBY3Rpb24pXG5cdFx0KTtcblxuXHQvLyBSZXRyaWV2ZSBhbGwgZGV0ZXJtaW5pbmcgYWN0aW9uc1xuXHRjb25zdCBmb290ZXJEYXRhRmllbGRGb3JBY3Rpb25zID0gZ2V0SWRlbnRpZmljYXRpb25EYXRhRmllbGRGb3JBY3Rpb25zKGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5VHlwZSgpLCB0cnVlKTtcblxuXHQvLyBGaXJzdCBhZGQgdGhlIFwiQ3JpdGljYWxcIiBEYXRhRmllbGRGb3JBY3Rpb25zXG5cdGNvbnN0IGZvb3RlckFjdGlvbnM6IEJhc2VBY3Rpb25bXSA9IGZvb3RlckRhdGFGaWVsZEZvckFjdGlvbnNcblx0XHQuZmlsdGVyKChkYXRhRmllbGQpID0+IHtcblx0XHRcdHJldHVybiBJTVBPUlRBTlRfQ1JJVElDQUxJVElFUy5pbmRleE9mKGRhdGFGaWVsZD8uQ3JpdGljYWxpdHkgYXMgc3RyaW5nKSA+IC0xO1xuXHRcdH0pXG5cdFx0Lm1hcCgoZGF0YUZpZWxkKSA9PiB7XG5cdFx0XHRyZXR1cm4gZ2V0RGF0YUZpZWxkQW5ub3RhdGlvbkFjdGlvbihkYXRhRmllbGQsIGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdH0pO1xuXG5cdC8vIFRoZW4gdGhlIHNhdmUgYWN0aW9uIGlmIGl0IGV4aXN0c1xuXHRpZiAoZW50aXR5U2V0Py5lbnRpdHlUeXBlTmFtZSA9PT0gZW50aXR5VHlwZT8uZnVsbHlRdWFsaWZpZWROYW1lICYmIGNvbmRpdGlvblNhdmUpIHtcblx0XHRmb290ZXJBY3Rpb25zLnB1c2goeyB0eXBlOiBBY3Rpb25UeXBlLlByaW1hcnksIGtleTogXCJTYXZlQWN0aW9uXCIgfSk7XG5cdH1cblxuXHQvLyBUaGVuIHRoZSBhcHBseSBhY3Rpb24gaWYgaXQgZXhpc3RzXG5cdGlmIChjb25kaXRpb25BcHBseSkge1xuXHRcdGZvb3RlckFjdGlvbnMucHVzaCh7IHR5cGU6IEFjdGlvblR5cGUuRGVmYXVsdEFwcGx5LCBrZXk6IFwiQXBwbHlBY3Rpb25cIiB9KTtcblx0fVxuXG5cdC8vIFRoZW4gdGhlIG5vbiBjcml0aWNhbCBEYXRhRmllbGRGb3JBY3Rpb25zXG5cdGZvb3RlckRhdGFGaWVsZEZvckFjdGlvbnNcblx0XHQuZmlsdGVyKChkYXRhRmllbGQpID0+IHtcblx0XHRcdHJldHVybiBJTVBPUlRBTlRfQ1JJVElDQUxJVElFUy5pbmRleE9mKGRhdGFGaWVsZD8uQ3JpdGljYWxpdHkgYXMgc3RyaW5nKSA9PT0gLTE7XG5cdFx0fSlcblx0XHQuZm9yRWFjaCgoZGF0YUZpZWxkKSA9PiB7XG5cdFx0XHRmb290ZXJBY3Rpb25zLnB1c2goZ2V0RGF0YUZpZWxkQW5ub3RhdGlvbkFjdGlvbihkYXRhRmllbGQsIGNvbnZlcnRlckNvbnRleHQpKTtcblx0XHR9KTtcblxuXHQvLyBUaGVuIHRoZSBjYW5jZWwgYWN0aW9uIGlmIGl0IGV4aXN0c1xuXHRpZiAoY29uZGl0aW9uQ2FuY2VsKSB7XG5cdFx0Zm9vdGVyQWN0aW9ucy5wdXNoKHtcblx0XHRcdHR5cGU6IEFjdGlvblR5cGUuU2Vjb25kYXJ5LFxuXHRcdFx0a2V5OiBcIkNhbmNlbEFjdGlvblwiLFxuXHRcdFx0cG9zaXRpb246IHsgcGxhY2VtZW50OiBQbGFjZW1lbnQuRW5kIH1cblx0XHR9KTtcblx0fVxuXHRyZXR1cm4gZm9vdGVyQWN0aW9ucztcbn1cblxuZnVuY3Rpb24gZ2V0RGF0YUZpZWxkQW5ub3RhdGlvbkFjdGlvbihkYXRhRmllbGQ6IERhdGFGaWVsZEZvckFjdGlvblR5cGVzLCBjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0KTogQW5ub3RhdGlvbkFjdGlvbiB7XG5cdHJldHVybiB7XG5cdFx0dHlwZTogQWN0aW9uVHlwZS5EYXRhRmllbGRGb3JBY3Rpb24sXG5cdFx0YW5ub3RhdGlvblBhdGg6IGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aChkYXRhRmllbGQuZnVsbHlRdWFsaWZpZWROYW1lKSxcblx0XHRrZXk6IEtleUhlbHBlci5nZW5lcmF0ZUtleUZyb21EYXRhRmllbGQoZGF0YUZpZWxkKSxcblx0XHR2aXNpYmxlOiBjb21waWxlRXhwcmVzc2lvbihub3QoZXF1YWwoZ2V0RXhwcmVzc2lvbkZyb21Bbm5vdGF0aW9uKGRhdGFGaWVsZC5hbm5vdGF0aW9ucz8uVUk/LkhpZGRlbiksIHRydWUpKSksXG5cdFx0ZW5hYmxlZDogZ2V0RW5hYmxlZEZvckFubm90YXRpb25BY3Rpb24oY29udmVydGVyQ29udGV4dCwgZGF0YUZpZWxkLkFjdGlvblRhcmdldCksXG5cdFx0aXNOYXZpZ2FibGU6IHRydWVcblx0fSBhcyBBbm5vdGF0aW9uQWN0aW9uO1xufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWtDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUNPLFNBQVNBLG9DQUFvQyxDQUFDQyxVQUFzQixFQUFFQyxtQkFBNEIsRUFBNkI7SUFBQTtJQUNySSxPQUFRLDBCQUFBRCxVQUFVLENBQUNFLFdBQVcsb0ZBQXRCLHNCQUF3QkMsRUFBRSxxRkFBMUIsdUJBQTRCQyxjQUFjLDJEQUExQyx1QkFBNENDLE1BQU0sQ0FBRUMsdUJBQXVCLElBQUs7TUFBQTtNQUN2RixPQUFPLDBCQUFBQSx1QkFBdUIsQ0FBQ0osV0FBVyxvRkFBbkMsc0JBQXFDQyxFQUFFLHFGQUF2Qyx1QkFBeUNJLE1BQU0sMkRBQS9DLHVCQUFpREMsT0FBTyxFQUFFLE1BQUssSUFBSSxJQUN6RUYsdUJBQXVCLENBQUNHLEtBQUssb0RBQXlDLElBQ3RFQyxPQUFPLDJCQUFDSix1QkFBdUIsQ0FBQ0ssV0FBVywyREFBbkMsdUJBQXFDSCxPQUFPLEVBQUUsQ0FBQyxLQUFLUCxtQkFBbUIsS0FDOUUsMkJBQUFLLHVCQUF1QixDQUFDTSxZQUFZLHFGQUFwQyx1QkFBc0NDLE9BQU8sMkRBQTdDLHVCQUErQ0wsT0FBTyxFQUFFLE1BQUssSUFBSSxJQUNqRSxDQUFBRix1QkFBdUIsYUFBdkJBLHVCQUF1QixpREFBdkJBLHVCQUF1QixDQUFFTSxZQUFZLHFGQUFyQyx1QkFBdUNWLFdBQVcscUZBQWxELHVCQUFvRFksSUFBSSxzRkFBeEQsdUJBQTBEQyxrQkFBa0IsNERBQTVFLHdCQUE4RVAsT0FBTyxFQUFFLE1BQUssS0FBSyxDQUFDLEdB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
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2023 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/fe/core/converters/controls/Common/Action","sap/fe/core/converters/helpers/ConfigurableObject","sap/fe/core/converters/helpers/Key","sap/fe/core/helpers/BindingToolkit","sap/fe/core/helpers/ModelHelper","sap/fe/core/templating/DataModelPathHelper","sap/ui/core/Core","../helpers/BindingHelper","../ManifestSettings"],function(e,t,i,n,o,a,l,r,d){"use strict";var v={};var
|
|
5
|
+
sap.ui.define(["sap/fe/core/converters/controls/Common/Action","sap/fe/core/converters/helpers/ConfigurableObject","sap/fe/core/converters/helpers/Key","sap/fe/core/helpers/BindingToolkit","sap/fe/core/helpers/ModelHelper","sap/fe/core/templating/DataModelPathHelper","sap/ui/core/Core","../helpers/BindingHelper","../ManifestSettings"],function(e,t,i,n,o,a,l,r,d){"use strict";var v={};var s=d.ActionType;var u=r.UI;var c=r.singletonPathVisitor;var f=r.Draft;var p=a.isPathDeletable;var y=n.pathInModel;var g=n.not;var b=n.ifElse;var E=n.getExpressionFromAnnotation;var h=n.fn;var A=n.equal;var m=n.constant;var D=n.compileExpression;var C=n.and;var S=i.KeyHelper;var I=t.Placement;var O=e.getSemanticObjectMapping;var T=e.getEnabledForAnnotationAction;var P=e.getCopyAction;var B=e.dataFieldIsCopyAction;var F=e.ButtonType;function N(e,t){var i,n,o;return((i=e.annotations)===null||i===void 0?void 0:(n=i.UI)===null||n===void 0?void 0:(o=n.Identification)===null||o===void 0?void 0:o.filter(e=>{var i,n,o,a,l,r,d,v,s,u;return((i=e.annotations)===null||i===void 0?void 0:(n=i.UI)===null||n===void 0?void 0:(o=n.Hidden)===null||o===void 0?void 0:o.valueOf())!==true&&e.$Type==="com.sap.vocabularies.UI.v1.DataFieldForAction"&&Boolean((a=e.Determining)===null||a===void 0?void 0:a.valueOf())===t&&(((l=e.ActionTarget)===null||l===void 0?void 0:(r=l.isBound)===null||r===void 0?void 0:r.valueOf())!==true||(e===null||e===void 0?void 0:(d=e.ActionTarget)===null||d===void 0?void 0:(v=d.annotations)===null||v===void 0?void 0:(s=v.Core)===null||s===void 0?void 0:(u=s.OperationAvailable)===null||u===void 0?void 0:u.valueOf())!==false)?true:false}))||[]}v.getIdentificationDataFieldForActions=N;function U(e,t){var i,n,o;return((i=e.annotations)===null||i===void 0?void 0:(n=i.UI)===null||n===void 0?void 0:(o=n.Identification)===null||o===void 0?void 0:o.filter(e=>{var i,n,o,a;return((i=e.annotations)===null||i===void 0?void 0:(n=i.UI)===null||n===void 0?void 0:(o=n.Hidden)===null||o===void 0?void 0:o.valueOf())!==true&&e.$Type==="com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation"&&Boolean((a=e.Determining)===null||a===void 0?void 0:a.valueOf())===t?true:false}))||[]}const H=["UI.CriticalityType/VeryPositive","UI.CriticalityType/Positive","UI.CriticalityType/Negative","UI.CriticalityType/VeryNegative"];v.IMPORTANT_CRITICALITIES=H;function M(e,t){const i=e.getDataModelObjectPath(),n=i.navigationProperties.map(e=>e.name),o=E(t,n,undefined,t=>c(t,e.getConvertedTypes(),[])),a=e.getManifestWrapper(),l=a.getViewLevel(),r=l>1?u.IsEditable:g(u.IsEditable);return b(t===undefined||t.valueOf()===false,r,C(r,A(o,false)))}v.getDeleteButtonVisibility=M;function k(e,t,i){const n=i.getEntitySet(),a=o.isDraftRoot(n);let l=b(t!==undefined,t,b(e!==undefined,A(e,true),m(true)));l=a?C(l,g(y("DraftAdministrativeData/InProcessByUser"))):l;return l}v.getDeleteButtonEnabled=k;function R(e,t,i,n,a){const l=i===null||i===void 0?void 0:i.getEntitySet(),r=e.getEntitySet(),d=e.getManifestWrapper().isFclEnabled();let v;const s=x(i,t);if(a&&a>1){v=o.isDraftNode(r)}else{v=o.isDraftRoot(l)}const c=x(i,n);const p=g(u.IsEditable);const E=b(a>1,b(n===undefined||n.valueOf()===false,C(p,A(y("rootEditVisible","internal"),true),b(d,A(y("/showEditButton","fclhelper"),true),true)),C(p,A(c,false),A(y("rootEditVisible","internal"),true),b(d,A(y("/showEditButton","fclhelper"),true),true))),b(t===undefined||t.valueOf()===false,p,C(p,A(s,false))));return b(v,C(E,f.HasNoDraftForCurrentUser),E)}v.getEditButtonVisibility=R;function x(e,t){const i=e.getDataModelObjectPath(),n=i.navigationProperties.map(e=>e.name),o=E(t,n,undefined,t=>c(t,e.getConvertedTypes(),n));return o}v.getHiddenExpression=x;function V(e,t,i){const n=e.getEntitySet(),a=o.isDraftRoot(n),l=o.isSticky(n);let r;if(a&&!o.isSingleton(n)){var d,v;r=n===null||n===void 0?void 0:(d=n.annotations.Common)===null||d===void 0?void 0:(v=d.DraftRoot)===null||v===void 0?void 0:v.EditAction}else if(l&&!o.isSingleton(n)){var s,u;r=n===null||n===void 0?void 0:(s=n.annotations.Session)===null||s===void 0?void 0:(u=s.StickySessionSupported)===null||u===void 0?void 0:u.EditAction}if(r){var c,f;const n=e.getAbsoluteAnnotationPath(r);const o=e.resolveAbsolutePath(n).target;if((o===null||o===void 0?void 0:(c=o.annotations)===null||c===void 0?void 0:(f=c.Core)===null||f===void 0?void 0:f.OperationAvailable)===null){}else if(i>1){if(t!==undefined){return D(C(A(E(t),true),A(y("rootEditEnabled","internal"),true)))}else{return D(A(y("rootEditEnabled","internal"),true))}}else{return T(e,o??undefined)}}return"true"}v.getEditButtonEnabled=V;function j(e){var t,i,n,a,r;const d=e.getContextPath();const v=o.getRootEntitySetPath(d);const u=e.getConverterContextFor("/"+v);const f=e.getEntitySet(),b=e.getEntityType(),m=u.getEntitySet(),I=u.getEntityType(),T=o.getStickySession(m),x=o.getDraftRoot(m),j=o.getDraftNode(m),w=f&&((t=f.annotations)===null||t===void 0?void 0:(i=t.Capabilities)===null||i===void 0?void 0:i.DeleteRestrictions),L=o.isUpdateHidden(m,I),W=m&&!o.isSingleton(m)&&(L===null||L===void 0?void 0:L.valueOf()),$=e.getDataModelObjectPath(),_=p($,{pathVisitor:(t,i)=>c(t,e.getConvertedTypes(),i)}),q=_?D(_):_,Q=N(e.getEntityType(),false);const G=e.getManifestWrapper().getViewLevel()===1?P(Q.filter(e=>B(e))):undefined;const Y=Q.filter(e=>!B(e));const z=[];if(!o.isSingleton(f)&&x!==null&&x!==void 0&&x.EditAction&&W!==true){z.push({type:s.DraftActions,key:"DraftActions"})}const J=e.getManifestWrapper().getViewLevel();const X=J>1?f===null||f===void 0?void 0:(n=f.annotations.Capabilities)===null||n===void 0?void 0:(a=n.UpdateRestrictions)===null||a===void 0?void 0:a.Updatable:undefined;if(x||j){z.push({type:s.CollaborationAvatars,key:"CollaborationAvatars"})}Y.filter(e=>H.indexOf(e===null||e===void 0?void 0:e.Criticality)>-1).forEach(t=>{z.push(K(t,e))});if((x!==null&&x!==void 0&&x.EditAction||T!==null&&T!==void 0&&T.EditAction)&&W!==true){z.push({type:s.Primary,key:"EditAction",visible:D(R(e,L,u,o.isUpdateHidden(f,b),J)),enabled:V(u,X,J)})}if(q&&q!=="false"||(w===null||w===void 0?void 0:(r=w.Deletable)===null||r===void 0?void 0:r.valueOf())!==false&&q!=="false"){const t=o.getDeleteHidden(f,b);z.push({type:s.Secondary,key:"DeleteAction",visible:D(M(e,t)),enabled:D(k(w===null||w===void 0?void 0:w.Deletable,_,e)),parentEntityDeleteEnabled:q})}if(G){var Z;z.push({...K(G,e),type:s.Copy,text:((Z=G.Label)===null||Z===void 0?void 0:Z.toString())??l.getLibraryResourceBundle("sap.fe.core").getText("C_COMMON_COPY")})}const ee=U(e.getEntityType(),false);ee.filter(e=>H.indexOf(e===null||e===void 0?void 0:e.Criticality)===-1).forEach(t=>{var i,n,o,a,l,r;if(((i=t.RequiresContext)===null||i===void 0?void 0:i.valueOf())===true){throw new Error(`RequiresContext property should not be true for header IBN action : ${t.Label}`)}if(((n=t.Inline)===null||n===void 0?void 0:n.valueOf())===true){throw new Error(`Inline property should not be true for header IBN action : ${t.Label}`)}const d={semanticObjectMapping:O(t.Mapping)};z.push({type:s.DataFieldForIntentBasedNavigation,text:(o=t.Label)===null||o===void 0?void 0:o.toString(),annotationPath:e.getEntitySetBasedAnnotationPath(t.fullyQualifiedName),buttonType:F.Ghost,visible:D(C(g(A(E((a=t.annotations)===null||a===void 0?void 0:(l=a.UI)===null||l===void 0?void 0:l.Hidden),true)),g(A(y("shellNavigationNotAvailable","internal"),true)))),enabled:t.NavigationAvailable!==undefined?D(A(E((r=t.NavigationAvailable)===null||r===void 0?void 0:r.valueOf()),true)):true,key:S.generateKeyFromDataField(t),isNavigable:true,press:D(h("._intentBasedNavigation.navigate",[E(t.SemanticObject),E(t.Action),d])),customData:D({semanticObject:E(t.SemanticObject),action:E(t.Action)})})});Y.filter(e=>H.indexOf(e===null||e===void 0?void 0:e.Criticality)===-1).forEach(t=>{z.push(K(t,e))});return z}v.getHeaderDefaultActions=j;function w(e){var t,i,n;const o=e.getEntityType();const a=((t=o.annotations)===null||t===void 0?void 0:(i=t.UI)===null||i===void 0?void 0:(n=i.Identification)===null||n===void 0?void 0:n.filter(e=>{var t,i,n;return(e===null||e===void 0?void 0:(t=e.annotations)===null||t===void 0?void 0:(i=t.UI)===null||i===void 0?void 0:(n=i.Hidden)===null||n===void 0?void 0:n.valueOf())===true}))||[];return a.map(e=>({type:s.Default,key:S.generateKeyFromDataField(e)}))}v.getHiddenHeaderActions=w;function L(e,t){var i,n,a,l,r;const d=t.getEntitySet();const v=t.getEntityType();const u=o.getStickySession(d),c=!o.isSingleton(d)&&d&&(((i=d.annotations.Common)===null||i===void 0?void 0:(n=i.DraftRoot)===null||n===void 0?void 0:n.term)||((a=d.annotations)===null||a===void 0?void 0:(l=a.Session)===null||l===void 0?void 0:(r=l.StickySessionSupported)===null||r===void 0?void 0:r.term)),f=Boolean(c==="com.sap.vocabularies.Common.v1.DraftRoot"||u&&(u===null||u===void 0?void 0:u.SaveAction)),p=e>1,y=Boolean(c==="com.sap.vocabularies.Common.v1.DraftRoot"||u&&(u===null||u===void 0?void 0:u.DiscardAction));const g=N(t.getEntityType(),true);const b=g.filter(e=>H.indexOf(e===null||e===void 0?void 0:e.Criticality)>-1).map(e=>K(e,t));if((d===null||d===void 0?void 0:d.entityTypeName)===(v===null||v===void 0?void 0:v.fullyQualifiedName)&&f){b.push({type:s.Primary,key:"SaveAction"})}if(p){b.push({type:s.DefaultApply,key:"ApplyAction"})}g.filter(e=>H.indexOf(e===null||e===void 0?void 0:e.Criticality)===-1).forEach(e=>{b.push(K(e,t))});if(y){b.push({type:s.Secondary,key:"CancelAction",position:{placement:I.End}})}return b}v.getFooterDefaultActions=L;function K(e,t){var i,n;return{type:s.DataFieldForAction,annotationPath:t.getEntitySetBasedAnnotationPath(e.fullyQualifiedName),key:S.generateKeyFromDataField(e),visible:D(g(A(E((i=e.annotations)===null||i===void 0?void 0:(n=i.UI)===null||n===void 0?void 0:n.Hidden),true))),enabled:T(t,e.ActionTarget),isNavigable:true}}return v},false);
|
|
6
6
|
//# sourceMappingURL=HeaderAndFooterAction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeaderAndFooterAction.js","names":["sap","ui","define","Action","ConfigurableObject","Key","BindingToolkit","ModelHelper","DataModelPathHelper","Core","BindingHelper","ManifestSettings","_exports","ActionType","UI","singletonPathVisitor","Draft","isPathDeletable","pathInModel","not","ifElse","getExpressionFromAnnotation","fn","equal","constant","compileExpression","and","KeyHelper","Placement","getSemanticObjectMapping","getEnabledForAnnotationAction","getCopyAction","dataFieldIsCopyAction","ButtonType","getIdentificationDataFieldForActions","entityType","isDeterminingAction","_entityType$annotatio","_entityType$annotatio2","_entityType$annotatio3","annotations","Identification","filter","identificationDataField","_identificationDataFi","_identificationDataFi2","_identificationDataFi3","_identificationDataFi4","_identificationDataFi5","_identificationDataFi6","_identificationDataFi7","_identificationDataFi8","_identificationDataFi9","_identificationDataFi10","Hidden","valueOf","$Type","Boolean","Determining","ActionTarget","isBound","OperationAvailable","getIdentificationDataFieldForIBNActions","_entityType$annotatio4","_entityType$annotatio5","_entityType$annotatio6","_identificationDataFi11","_identificationDataFi12","_identificationDataFi13","_identificationDataFi14","IMPORTANT_CRITICALITIES","getDeleteButtonVisibility","converterContext","deleteHidden","dataModelObjectPath","getDataModelObjectPath","visitedNavigationPaths","navigationProperties","map","navProp","name","deleteHiddenExpression","undefined","path","getConvertedTypes","manifestWrapper","getManifestWrapper","viewLevel","getViewLevel","editableExpression","IsEditable","getDeleteButtonEnabled","isDeletable","isParentDeletable","entitySet","getEntitySet","isDraftRoot","ret","getEditButtonVisibility","rootUpdateHidden","rootConverterContext","updateHidden","rootEntitySet","isFCLEnabled","isFclEnabled","isDraftEnabled","rootUpdateHiddenExpression","getHiddenExpression","isDraftNode","updateHiddenExpression","notEditableExpression","resultantExpression","HasNoDraftForCurrentUser","getEditButtonEnabled","updateRestrictions","isSticky","editActionName","isSingleton","_annotations$Common","_annotations$Common$D","Common","DraftRoot","EditAction","_annotations$Session","_annotations$Session$","Session","StickySessionSupported","_editAction$annotatio","_editAction$annotatio2","editActionAnnotationPath","getAbsoluteAnnotationPath","editAction","resolveAbsolutePath","target","getHeaderDefaultActions","_entitySet$annotation","_entitySet$annotation2","_entitySet$annotation3","_entitySet$annotation4","_entityDeleteRestrict","sContextPath","getContextPath","rootEntitySetPath","getRootEntitySetPath","getConverterContextFor","getEntityType","rootEntityType","stickySessionSupported","getStickySession","draftRoot","getDraftRoot","draftNode","getDraftNode","entityDeleteRestrictions","Capabilities","DeleteRestrictions","isUpdateHidden","pathVisitor","navigationPaths","parentEntitySetDeletable","identificationFieldForActions","copyDataField","dataField","headerDataFieldForActions","headerActions","push","type","DraftActions","key","updatablePropertyPath","UpdateRestrictions","Updatable","CollaborationAvatars","indexOf","Criticality","forEach","getDataFieldAnnotationAction","Primary","visible","enabled","Deletable","getDeleteHidden","Secondary","parentEntityDeleteEnabled","_copyDataField$Label","Copy","text","Label","toString","getLibraryResourceBundle","getText","headerDataFieldForIBNActions","_dataField$RequiresCo","_dataField$Inline","_dataField$Label","_dataField$annotation","_dataField$annotation2","_dataField$annotation3","_dataField$Navigation","RequiresContext","Error","Inline","oNavigationParams","semanticObjectMapping","Mapping","DataFieldForIntentBasedNavigation","annotationPath","getEntitySetBasedAnnotationPath","fullyQualifiedName","buttonType","Ghost","NavigationAvailable","generateKeyFromDataField","isNavigable","press","SemanticObject","customData","semanticObject","action","getHiddenHeaderActions","_entityType$annotatio7","_entityType$annotatio8","_entityType$annotatio9","hiddenActions","_identificationDataFi15","_identificationDataFi16","_identificationDataFi17","Default","getFooterDefaultActions","_annotations$Common2","_annotations$Common2$","_annotations","_annotations$Session2","_annotations$Session3","entitySetDraftRoot","term","conditionSave","SaveAction","conditionApply","conditionCancel","DiscardAction","footerDataFieldForActions","footerActions","entityTypeName","DefaultApply","position","placement","End","_dataField$annotation4","_dataField$annotation5","DataFieldForAction"],"sources":["HeaderAndFooterAction-dbg.js"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HeaderAndFooterAction.js","names":["sap","ui","define","Action","ConfigurableObject","Key","BindingToolkit","ModelHelper","DataModelPathHelper","Core","BindingHelper","ManifestSettings","_exports","ActionType","UI","singletonPathVisitor","Draft","isPathDeletable","pathInModel","not","ifElse","getExpressionFromAnnotation","fn","equal","constant","compileExpression","and","KeyHelper","Placement","getSemanticObjectMapping","getEnabledForAnnotationAction","getCopyAction","dataFieldIsCopyAction","ButtonType","getIdentificationDataFieldForActions","entityType","isDeterminingAction","_entityType$annotatio","_entityType$annotatio2","_entityType$annotatio3","annotations","Identification","filter","identificationDataField","_identificationDataFi","_identificationDataFi2","_identificationDataFi3","_identificationDataFi4","_identificationDataFi5","_identificationDataFi6","_identificationDataFi7","_identificationDataFi8","_identificationDataFi9","_identificationDataFi10","Hidden","valueOf","$Type","Boolean","Determining","ActionTarget","isBound","OperationAvailable","getIdentificationDataFieldForIBNActions","_entityType$annotatio4","_entityType$annotatio5","_entityType$annotatio6","_identificationDataFi11","_identificationDataFi12","_identificationDataFi13","_identificationDataFi14","IMPORTANT_CRITICALITIES","getDeleteButtonVisibility","converterContext","deleteHidden","dataModelObjectPath","getDataModelObjectPath","visitedNavigationPaths","navigationProperties","map","navProp","name","deleteHiddenExpression","undefined","path","getConvertedTypes","manifestWrapper","getManifestWrapper","viewLevel","getViewLevel","editableExpression","IsEditable","getDeleteButtonEnabled","isDeletable","isParentDeletable","entitySet","getEntitySet","isDraftRoot","ret","getEditButtonVisibility","rootUpdateHidden","rootConverterContext","updateHidden","rootEntitySet","isFCLEnabled","isFclEnabled","isDraftEnabled","rootUpdateHiddenExpression","getHiddenExpression","isDraftNode","updateHiddenExpression","notEditableExpression","resultantExpression","HasNoDraftForCurrentUser","getEditButtonEnabled","updateRestrictions","isSticky","editActionName","isSingleton","_annotations$Common","_annotations$Common$D","Common","DraftRoot","EditAction","_annotations$Session","_annotations$Session$","Session","StickySessionSupported","_editAction$annotatio","_editAction$annotatio2","editActionAnnotationPath","getAbsoluteAnnotationPath","editAction","resolveAbsolutePath","target","getHeaderDefaultActions","_entitySet$annotation","_entitySet$annotation2","_entitySet$annotation3","_entitySet$annotation4","_entityDeleteRestrict","sContextPath","getContextPath","rootEntitySetPath","getRootEntitySetPath","getConverterContextFor","getEntityType","rootEntityType","stickySessionSupported","getStickySession","draftRoot","getDraftRoot","draftNode","getDraftNode","entityDeleteRestrictions","Capabilities","DeleteRestrictions","isUpdateHidden","pathVisitor","navigationPaths","parentEntitySetDeletable","identificationFieldForActions","copyDataField","dataField","headerDataFieldForActions","headerActions","push","type","DraftActions","key","updatablePropertyPath","UpdateRestrictions","Updatable","CollaborationAvatars","indexOf","Criticality","forEach","getDataFieldAnnotationAction","Primary","visible","enabled","Deletable","getDeleteHidden","Secondary","parentEntityDeleteEnabled","_copyDataField$Label","Copy","text","Label","toString","getLibraryResourceBundle","getText","headerDataFieldForIBNActions","_dataField$RequiresCo","_dataField$Inline","_dataField$Label","_dataField$annotation","_dataField$annotation2","_dataField$Navigation","RequiresContext","Error","Inline","oNavigationParams","semanticObjectMapping","Mapping","DataFieldForIntentBasedNavigation","annotationPath","getEntitySetBasedAnnotationPath","fullyQualifiedName","buttonType","Ghost","NavigationAvailable","generateKeyFromDataField","isNavigable","press","SemanticObject","customData","semanticObject","action","getHiddenHeaderActions","_entityType$annotatio7","_entityType$annotatio8","_entityType$annotatio9","hiddenActions","_identificationDataFi15","_identificationDataFi16","_identificationDataFi17","Default","getFooterDefaultActions","_entitySet$annotation5","_entitySet$annotation6","_entitySet$annotation7","_entitySet$annotation8","_entitySet$annotation9","entitySetDraftRoot","term","conditionSave","SaveAction","conditionApply","conditionCancel","DiscardAction","footerDataFieldForActions","footerActions","entityTypeName","DefaultApply","position","placement","End","_dataField$annotation3","_dataField$annotation4","DataFieldForAction"],"sources":["HeaderAndFooterAction-dbg.js"],"mappings":"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"}
|
|
@@ -2,9 +2,8 @@ import type { Action, EntitySet, EntityType, PropertyAnnotationValue } from "@sa
|
|
|
2
2
|
import { CommonAnnotationTerms } from "@sap-ux/vocabularies-types/vocabularies/Common";
|
|
3
3
|
import type { DataFieldForActionTypes, DataFieldForIntentBasedNavigationTypes } from "@sap-ux/vocabularies-types/vocabularies/UI";
|
|
4
4
|
import { UIAnnotationTypes } from "@sap-ux/vocabularies-types/vocabularies/UI";
|
|
5
|
+
import type { AnnotationAction, BaseAction } from "sap/fe/core/converters/controls/Common/Action";
|
|
5
6
|
import {
|
|
6
|
-
AnnotationAction,
|
|
7
|
-
BaseAction,
|
|
8
7
|
ButtonType,
|
|
9
8
|
dataFieldIsCopyAction,
|
|
10
9
|
getCopyAction,
|
|
@@ -77,7 +76,7 @@ function getIdentificationDataFieldForIBNActions(
|
|
|
77
76
|
}) || []) as DataFieldForIntentBasedNavigationTypes[];
|
|
78
77
|
}
|
|
79
78
|
|
|
80
|
-
const IMPORTANT_CRITICALITIES = [
|
|
79
|
+
export const IMPORTANT_CRITICALITIES = [
|
|
81
80
|
"UI.CriticalityType/VeryPositive",
|
|
82
81
|
"UI.CriticalityType/Positive",
|
|
83
82
|
"UI.CriticalityType/Negative",
|
|
@@ -396,7 +395,12 @@ export function getHeaderDefaultActions(converterContext: ConverterContext): Bas
|
|
|
396
395
|
text: dataField.Label?.toString(),
|
|
397
396
|
annotationPath: converterContext.getEntitySetBasedAnnotationPath(dataField.fullyQualifiedName),
|
|
398
397
|
buttonType: ButtonType.Ghost,
|
|
399
|
-
visible: compileExpression(
|
|
398
|
+
visible: compileExpression(
|
|
399
|
+
and(
|
|
400
|
+
not(equal(getExpressionFromAnnotation(dataField.annotations?.UI?.Hidden), true)),
|
|
401
|
+
not(equal(pathInModel("shellNavigationNotAvailable", "internal"), true))
|
|
402
|
+
)
|
|
403
|
+
),
|
|
400
404
|
enabled:
|
|
401
405
|
dataField.NavigationAvailable !== undefined
|
|
402
406
|
? compileExpression(equal(getExpressionFromAnnotation(dataField.NavigationAvailable?.valueOf()), true))
|
|
@@ -448,8 +452,7 @@ export function getFooterDefaultActions(viewLevel: number, converterContext: Con
|
|
|
448
452
|
entitySetDraftRoot =
|
|
449
453
|
!ModelHelper.isSingleton(entitySet) &&
|
|
450
454
|
entitySet &&
|
|
451
|
-
(
|
|
452
|
-
(entitySet as EntitySet).annotations?.Session?.StickySessionSupported?.term),
|
|
455
|
+
(entitySet.annotations.Common?.DraftRoot?.term || entitySet.annotations?.Session?.StickySessionSupported?.term),
|
|
453
456
|
conditionSave = Boolean(
|
|
454
457
|
entitySetDraftRoot === CommonAnnotationTerms.DraftRoot || (stickySessionSupported && stickySessionSupported?.SaveAction)
|
|
455
458
|
),
|