@sapui5/sap.fe.core 1.113.0 → 1.115.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 +68 -5
- 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 +120 -4
- package/src/sap/fe/core/AppComponent-dbg.js +8 -2
- 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 +19 -3
- package/src/sap/fe/core/AppStateHandler-dbg.js +14 -10
- 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 +17 -11
- package/src/sap/fe/core/BaseController-dbg.js +1 -1
- package/src/sap/fe/core/BaseController.ts +13 -2
- package/src/sap/fe/core/CommonUtils-dbg.js +74 -317
- 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 +96 -473
- package/src/sap/fe/core/ExtensionAPI-dbg.js +1 -1
- package/src/sap/fe/core/ExtensionAPI.ts +2 -2
- package/src/sap/fe/core/StateFilterToSelectionVariant-dbg.js +263 -0
- package/src/sap/fe/core/StateFilterToSelectionVariant.js +6 -0
- package/src/sap/fe/core/StateFilterToSelectionVariant.js.map +1 -0
- package/src/sap/fe/core/StateFilterToSelectionVariant.ts +316 -0
- package/src/sap/fe/core/TemplateComponent-dbg.js +1 -1
- package/src/sap/fe/core/TemplateComponent.ts +6 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase-dbg.js +10 -3
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.js +1 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.js.map +1 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.ts +8 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockSupport-dbg.js +1 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockSupport.ts +1 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor-dbg.js +8 -8
- package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor.js.map +1 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor.ts +7 -7
- package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlockFragment-dbg.js +1 -1
- package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlockFragment.ts +1 -1
- package/src/sap/fe/core/controllerextensions/EditFlow-dbg.js +68 -36
- 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 +83 -43
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation-dbg.js +12 -11
- 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 +17 -21
- package/src/sap/fe/core/controllerextensions/InternalRouting-dbg.js +233 -133
- 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 +260 -145
- package/src/sap/fe/core/controllerextensions/MassEdit-dbg.js +1 -1
- package/src/sap/fe/core/controllerextensions/MassEdit.ts +3 -3
- package/src/sap/fe/core/controllerextensions/Routing-dbg.js +5 -3
- package/src/sap/fe/core/controllerextensions/Routing.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/Routing.ts +5 -4
- package/src/sap/fe/core/controllerextensions/Share-dbg.js +3 -2
- package/src/sap/fe/core/controllerextensions/Share.js +1 -1
- package/src/sap/fe/core/controllerextensions/Share.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/Share.ts +2 -1
- package/src/sap/fe/core/controllerextensions/SideEffects-dbg.js +19 -14
- 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 +25 -18
- package/src/sap/fe/core/controllerextensions/ViewState-dbg.js +40 -26
- 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 +59 -33
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync-dbg.js +8 -8
- 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 +23 -25
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon-dbg.js +7 -45
- 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 +5 -48
- package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog-dbg.js +2 -2
- package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.tsx +7 -3
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper-dbg.js +73 -90
- 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 +88 -101
- package/src/sap/fe/core/controllerextensions/editFlow/draft-dbg.js +26 -4
- 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 +29 -3
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup-dbg.js +13 -10
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.ts +7 -20
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade-dbg.js +64 -4
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.ts +91 -8
- package/src/sap/fe/core/controllerextensions/editFlow/sticky-dbg.js +2 -4
- 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 +3 -5
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling-dbg.js +9 -9
- 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 +8 -8
- package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +2 -0
- package/src/sap/fe/core/controls/CommandExecution-dbg.js +4 -9
- 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 +0 -8
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block-dbg.js +335 -0
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block.js +6 -0
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block.js.map +1 -0
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block.tsx +336 -0
- package/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +1 -0
- package/src/sap/fe/core/controls/filterbar/VisualFilter-dbg.js +3 -28
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js +1 -1
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js.map +1 -1
- package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +8 -29
- package/src/sap/fe/core/controls/filterbar/adapter/SelectionVariantToStateFilters-dbg.js +435 -0
- package/src/sap/fe/core/controls/filterbar/adapter/SelectionVariantToStateFilters.js +6 -0
- package/src/sap/fe/core/controls/filterbar/adapter/SelectionVariantToStateFilters.js.map +1 -0
- package/src/sap/fe/core/controls/filterbar/adapter/SelectionVariantToStateFilters.ts +532 -0
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils-dbg.js +30 -1
- 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 +38 -0
- package/src/sap/fe/core/converters/ManifestSettings-dbg.js +1 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +7 -5
- package/src/sap/fe/core/converters/MetaModelConverter-dbg.js +36 -4
- 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 +45 -4
- package/src/sap/fe/core/converters/TemplateConverter-dbg.js +2 -3
- package/src/sap/fe/core/converters/TemplateConverter.js +1 -1
- package/src/sap/fe/core/converters/TemplateConverter.js.map +1 -1
- package/src/sap/fe/core/converters/TemplateConverter.ts +1 -6
- package/src/sap/fe/core/converters/annotations/DataField-dbg.js +18 -3
- 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 +18 -2
- package/src/sap/fe/core/converters/common/AnnotationConverter-dbg.js +679 -676
- 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/Chart-dbg.js +32 -20
- 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 +30 -18
- package/src/sap/fe/core/converters/controls/Common/DataVisualization-dbg.js +4 -5
- 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 +6 -37
- package/src/sap/fe/core/converters/controls/Common/Table-dbg.js +100 -72
- 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 +146 -99
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions-dbg.js +37 -10
- 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 +49 -16
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar-dbg.js +47 -18
- 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 +74 -20
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters-dbg.js +26 -9
- 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 +24 -8
- package/src/sap/fe/core/converters/helpers/Aggregation-dbg.js +28 -2
- package/src/sap/fe/core/converters/helpers/Aggregation.js +1 -1
- package/src/sap/fe/core/converters/helpers/Aggregation.js.map +1 -1
- package/src/sap/fe/core/converters/helpers/Aggregation.ts +28 -9
- package/src/sap/fe/core/converters/helpers/InsightsHelpers-dbg.js +39 -0
- package/src/sap/fe/core/converters/helpers/InsightsHelpers.js +6 -0
- package/src/sap/fe/core/converters/helpers/InsightsHelpers.js.map +1 -0
- package/src/sap/fe/core/converters/helpers/InsightsHelpers.ts +45 -0
- package/src/sap/fe/core/converters/templates/ListReportConverter-dbg.js +13 -15
- 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 +18 -54
- package/src/sap/fe/core/converters/templates/ObjectPageConverter-dbg.js +12 -12
- 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 +16 -11
- package/src/sap/fe/core/formatters/CollaborationFormatter-dbg.js +17 -33
- package/src/sap/fe/core/formatters/CollaborationFormatter.js +1 -1
- package/src/sap/fe/core/formatters/CollaborationFormatter.js.map +1 -1
- package/src/sap/fe/core/formatters/CollaborationFormatter.ts +27 -22
- package/src/sap/fe/core/formatters/ValueFormatter-dbg.js +5 -11
- 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 +4 -25
- package/src/sap/fe/core/fpm/Component-dbg.js +3 -1
- package/src/sap/fe/core/fpm/Component.js +1 -1
- package/src/sap/fe/core/fpm/Component.js.map +1 -1
- package/src/sap/fe/core/fpm/Component.ts +3 -1
- package/src/sap/fe/core/fpm/manifest.json +1 -1
- package/src/sap/fe/core/helpers/BindingToolkit-dbg.js +74 -26
- package/src/sap/fe/core/helpers/BindingToolkit.js +1 -1
- package/src/sap/fe/core/helpers/BindingToolkit.js.map +1 -1
- package/src/sap/fe/core/helpers/BindingToolkit.ts +116 -33
- package/src/sap/fe/core/helpers/DeleteHelper-dbg.js +82 -37
- 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 +109 -56
- package/src/sap/fe/core/helpers/KeepAliveHelper-dbg.js +1 -1
- package/src/sap/fe/core/helpers/KeepAliveHelper.ts +7 -5
- package/src/sap/fe/core/helpers/MassEditHelper-dbg.js +13 -3
- 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 +28 -18
- package/src/sap/fe/core/helpers/MessageStrip-dbg.js +1 -1
- package/src/sap/fe/core/helpers/MessageStrip.ts +2 -1
- package/src/sap/fe/core/helpers/ModelHelper-dbg.js +1 -1
- package/src/sap/fe/core/helpers/ModelHelper.ts +3 -3
- package/src/sap/fe/core/helpers/RecommendationHelper-dbg.js +71 -0
- package/src/sap/fe/core/helpers/RecommendationHelper.js +6 -0
- package/src/sap/fe/core/helpers/RecommendationHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/RecommendationHelper.ts +94 -0
- package/src/sap/fe/core/helpers/ResourceModelHelper-dbg.js +5 -2
- package/src/sap/fe/core/helpers/ResourceModelHelper.js +1 -1
- package/src/sap/fe/core/helpers/ResourceModelHelper.js.map +1 -1
- package/src/sap/fe/core/helpers/ResourceModelHelper.ts +5 -0
- package/src/sap/fe/core/helpers/StableIdHelper-dbg.js +24 -2
- package/src/sap/fe/core/helpers/StableIdHelper.js +1 -1
- package/src/sap/fe/core/helpers/StableIdHelper.js.map +1 -1
- package/src/sap/fe/core/helpers/StableIdHelper.ts +23 -1
- package/src/sap/fe/core/helpers/TitleHelper-dbg.js +239 -0
- package/src/sap/fe/core/helpers/TitleHelper.js +6 -0
- package/src/sap/fe/core/helpers/TitleHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/TitleHelper.ts +295 -0
- package/src/sap/fe/core/jsx-runtime/ViewLoader-dbg.js +4 -1
- package/src/sap/fe/core/jsx-runtime/ViewLoader.js +1 -1
- package/src/sap/fe/core/jsx-runtime/ViewLoader.js.map +1 -1
- package/src/sap/fe/core/jsx-runtime/ViewLoader.tsx +3 -0
- package/src/sap/fe/core/jsx-runtime/jsx-control-dbg.js +41 -17
- package/src/sap/fe/core/jsx-runtime/jsx-control.js +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx-control.js.map +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx-control.ts +45 -21
- package/src/sap/fe/core/jsx-runtime/jsx-dbg.js +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx.ts +1 -0
- package/src/sap/fe/core/jsx-runtime/useMDXComponents-dbg.js +8 -4
- 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 +7 -2
- package/src/sap/fe/core/library-dbg.js +4 -3
- package/src/sap/fe/core/library-preload.js +91 -74
- 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.js.map +1 -1
- package/src/sap/fe/core/library.ts +1 -1
- package/src/sap/fe/core/manifest.json +1 -1
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration-dbg.js +4 -3
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +1 -1
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js.map +1 -1
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +3 -2
- package/src/sap/fe/core/messagebundle.properties +12 -8
- package/src/sap/fe/core/messagebundle_ar.properties +7 -5
- package/src/sap/fe/core/messagebundle_bg.properties +7 -5
- package/src/sap/fe/core/messagebundle_ca.properties +7 -5
- package/src/sap/fe/core/messagebundle_cs.properties +7 -5
- package/src/sap/fe/core/messagebundle_cy.properties +7 -5
- package/src/sap/fe/core/messagebundle_da.properties +7 -5
- package/src/sap/fe/core/messagebundle_de.properties +7 -5
- package/src/sap/fe/core/messagebundle_el.properties +7 -5
- package/src/sap/fe/core/messagebundle_en.properties +7 -5
- package/src/sap/fe/core/messagebundle_en_GB.properties +6 -4
- package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +7 -4
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +6 -4
- package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +7 -4
- package/src/sap/fe/core/messagebundle_es.properties +7 -5
- package/src/sap/fe/core/messagebundle_es_MX.properties +7 -5
- package/src/sap/fe/core/messagebundle_et.properties +7 -5
- package/src/sap/fe/core/messagebundle_fi.properties +7 -5
- package/src/sap/fe/core/messagebundle_fr.properties +7 -5
- package/src/sap/fe/core/messagebundle_fr_CA.properties +8 -6
- package/src/sap/fe/core/messagebundle_hi.properties +7 -5
- package/src/sap/fe/core/messagebundle_hr.properties +7 -5
- package/src/sap/fe/core/messagebundle_hu.properties +7 -5
- package/src/sap/fe/core/messagebundle_id.properties +7 -5
- package/src/sap/fe/core/messagebundle_it.properties +8 -6
- package/src/sap/fe/core/messagebundle_iw.properties +7 -5
- package/src/sap/fe/core/messagebundle_ja.properties +7 -5
- package/src/sap/fe/core/messagebundle_kk.properties +7 -5
- package/src/sap/fe/core/messagebundle_ko.properties +7 -5
- package/src/sap/fe/core/messagebundle_lt.properties +7 -5
- package/src/sap/fe/core/messagebundle_lv.properties +7 -5
- package/src/sap/fe/core/messagebundle_ms.properties +7 -5
- package/src/sap/fe/core/messagebundle_nl.properties +7 -5
- package/src/sap/fe/core/messagebundle_no.properties +7 -5
- package/src/sap/fe/core/messagebundle_pl.properties +7 -5
- package/src/sap/fe/core/messagebundle_pt.properties +7 -5
- package/src/sap/fe/core/messagebundle_pt_PT.properties +7 -5
- package/src/sap/fe/core/messagebundle_ro.properties +7 -5
- package/src/sap/fe/core/messagebundle_ru.properties +7 -5
- package/src/sap/fe/core/messagebundle_sh.properties +7 -5
- package/src/sap/fe/core/messagebundle_sk.properties +7 -5
- package/src/sap/fe/core/messagebundle_sl.properties +7 -5
- package/src/sap/fe/core/messagebundle_sv.properties +7 -5
- package/src/sap/fe/core/messagebundle_th.properties +7 -5
- package/src/sap/fe/core/messagebundle_tr.properties +7 -5
- package/src/sap/fe/core/messagebundle_uk.properties +7 -5
- package/src/sap/fe/core/messagebundle_vi.properties +7 -5
- package/src/sap/fe/core/messagebundle_zh_CN.properties +7 -5
- package/src/sap/fe/core/messagebundle_zh_TW.properties +7 -5
- package/src/sap/fe/core/operationsHelper-dbg.js +1 -1
- package/src/sap/fe/core/operationsHelper.ts +1 -1
- package/src/sap/fe/core/rootView/Fcl-dbg.controller.js +8 -2
- package/src/sap/fe/core/rootView/Fcl.controller.js +1 -1
- package/src/sap/fe/core/rootView/Fcl.controller.js.map +1 -1
- package/src/sap/fe/core/rootView/Fcl.controller.ts +8 -1
- package/src/sap/fe/core/rootView/NavContainer-dbg.controller.js +8 -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 +10 -3
- package/src/sap/fe/core/rootView/RootViewBaseController-dbg.js +16 -6
- 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 +10 -4
- package/src/sap/fe/core/services/EnvironmentServiceFactory-dbg.js +54 -5
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +1 -1
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +52 -6
- package/src/sap/fe/core/services/NavigationServiceFactory-dbg.js +31 -14
- package/src/sap/fe/core/services/NavigationServiceFactory.js +1 -1
- package/src/sap/fe/core/services/NavigationServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/NavigationServiceFactory.ts +15 -1
- package/src/sap/fe/core/services/RoutingServiceFactory-dbg.js +10 -4
- 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 -7
- package/src/sap/fe/core/services/SideEffectsServiceFactory-dbg.js +5 -2
- 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 +9 -5
- package/src/sap/fe/core/services/TemplatedViewServiceFactory-dbg.js +1 -2
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +2 -18
- package/src/sap/fe/core/templating/CommonFormatters-dbg.js +8 -8
- package/src/sap/fe/core/templating/CommonFormatters.js.map +1 -1
- package/src/sap/fe/core/templating/CommonFormatters.ts +9 -9
- package/src/sap/fe/core/templating/CriticalityFormatters-dbg.js +1 -1
- package/src/sap/fe/core/templating/CriticalityFormatters.ts +2 -2
- package/src/sap/fe/core/templating/DataFieldFormatters-dbg.js +38 -2
- package/src/sap/fe/core/templating/DataFieldFormatters.js +1 -1
- package/src/sap/fe/core/templating/DataFieldFormatters.js.map +1 -1
- package/src/sap/fe/core/templating/DataFieldFormatters.ts +40 -0
- package/src/sap/fe/core/templating/FieldControlHelper-dbg.js +5 -6
- package/src/sap/fe/core/templating/FieldControlHelper.js +1 -1
- package/src/sap/fe/core/templating/FieldControlHelper.js.map +1 -1
- package/src/sap/fe/core/templating/FieldControlHelper.ts +13 -11
- package/src/sap/fe/core/templating/FilterHelper-dbg.js +13 -1
- 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 +13 -1
- package/src/sap/fe/core/templating/PropertyHelper-dbg.js +1 -1
- package/src/sap/fe/core/templating/PropertyHelper.ts +7 -7
- package/src/sap/fe/core/templating/UIFormatters-dbg.js +5 -6
- package/src/sap/fe/core/templating/UIFormatters.js +1 -1
- package/src/sap/fe/core/templating/UIFormatters.js.map +1 -1
- package/src/sap/fe/core/templating/UIFormatters.ts +6 -7
- package/src/sap/fe/core/type/TypeUtil-dbg.js +2 -2
- 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 +2 -2
- package/src/sap/fe/core/controllerextensions/collaboration/Manage-dbg.js +0 -243
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.js +0 -6
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.js.map +0 -1
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.ts +0 -283
- package/src/sap/fe/core/controllerextensions/collaboration/ManageDialog.fragment.xml +0 -121
- package/src/sap/fe/core/controllerextensions/collaboration/UserDetails.fragment.xml +0 -11
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossDraft.fragment.xml +0 -59
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler-dbg.js +0 -171
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +0 -6
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js.map +0 -1
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +0 -184
|
@@ -2,7 +2,7 @@
|
|
|
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/base/Log", "sap/fe/core/converters/annotations/DataField", "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/templating/DataModelPathHelper", "sap/ui/core/Core", "../../helpers/Aggregation", "../../helpers/ID", "../../ManifestSettings"], function (Log, DataField, Action, ConfigurableObject, Key, BindingToolkit, DataModelPathHelper, Core, Aggregation, ID, ManifestSettings) {
|
|
5
|
+
sap.ui.define(["sap/base/Log", "sap/fe/core/converters/annotations/DataField", "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/templating/DataModelPathHelper", "sap/ui/core/Core", "../../helpers/Aggregation", "../../helpers/ID", "../../helpers/InsightsHelpers", "../../ManifestSettings"], function (Log, DataField, Action, ConfigurableObject, Key, BindingToolkit, DataModelPathHelper, Core, Aggregation, ID, InsightsHelpers, ManifestSettings) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
var _exports = {};
|
|
@@ -10,6 +10,7 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/converters/annotations/DataField", "
|
|
|
10
10
|
var VariantManagementType = ManifestSettings.VariantManagementType;
|
|
11
11
|
var TemplateType = ManifestSettings.TemplateType;
|
|
12
12
|
var ActionType = ManifestSettings.ActionType;
|
|
13
|
+
var getInsightsVisibility = InsightsHelpers.getInsightsVisibility;
|
|
13
14
|
var getFilterBarID = ID.getFilterBarID;
|
|
14
15
|
var getChartID = ID.getChartID;
|
|
15
16
|
var AggregationHelper = Aggregation.AggregationHelper;
|
|
@@ -130,6 +131,24 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/converters/annotations/DataField", "
|
|
|
130
131
|
var _viewConfiguration$an;
|
|
131
132
|
return (viewConfiguration === null || viewConfiguration === void 0 ? void 0 : (_viewConfiguration$an = viewConfiguration.annotationPath) === null || _viewConfiguration$an === void 0 ? void 0 : _viewConfiguration$an.indexOf(`@${"com.sap.vocabularies.UI.v1.SelectionPresentationVariant"}`)) !== -1 ? viewConfiguration === null || viewConfiguration === void 0 ? void 0 : viewConfiguration.annotationPath : undefined;
|
|
132
133
|
}
|
|
134
|
+
function getAggregatablePropertiesObject(aggProp) {
|
|
135
|
+
let obj;
|
|
136
|
+
if (aggProp !== null && aggProp !== void 0 && aggProp.Property) {
|
|
137
|
+
var _Property;
|
|
138
|
+
obj = {
|
|
139
|
+
Property: {
|
|
140
|
+
$PropertyPath: aggProp === null || aggProp === void 0 ? void 0 : (_Property = aggProp.Property) === null || _Property === void 0 ? void 0 : _Property.value
|
|
141
|
+
}
|
|
142
|
+
};
|
|
143
|
+
} else {
|
|
144
|
+
obj = {
|
|
145
|
+
Property: {
|
|
146
|
+
$PropertyPath: aggProp === null || aggProp === void 0 ? void 0 : aggProp.name
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
return obj;
|
|
151
|
+
}
|
|
133
152
|
/**
|
|
134
153
|
* Create the ChartVisualization configuration that will be used to display a chart using the Chart building block.
|
|
135
154
|
*
|
|
@@ -138,11 +157,12 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/converters/annotations/DataField", "
|
|
|
138
157
|
* @param converterContext The converter context
|
|
139
158
|
* @param doNotCheckApplySupported Flag that indicates whether ApplySupported needs to be checked or not
|
|
140
159
|
* @param viewConfiguration
|
|
160
|
+
* @param isInsightsEnabled Flag that indicates whether insights enabled
|
|
141
161
|
* @returns The chart visualization based on the annotation
|
|
142
162
|
*/
|
|
143
|
-
function createChartVisualization(chartAnnotation, visualizationPath, converterContext, doNotCheckApplySupported, viewConfiguration) {
|
|
163
|
+
function createChartVisualization(chartAnnotation, visualizationPath, converterContext, doNotCheckApplySupported, viewConfiguration, isInsightsEnabled) {
|
|
144
164
|
var _chartAnnotation$Titl;
|
|
145
|
-
const aggregationHelper = new AggregationHelper(converterContext.getEntityType(), converterContext);
|
|
165
|
+
const aggregationHelper = new AggregationHelper(converterContext.getEntityType(), converterContext, true); // passing the last parameter as true to consider the old annotations i.e. Aggregation.Aggregatable for backward compatibility in case of chart
|
|
146
166
|
if (!doNotCheckApplySupported && !aggregationHelper.isAnalyticsSupported()) {
|
|
147
167
|
throw new Error("ApplySupported is not added to the annotations");
|
|
148
168
|
}
|
|
@@ -198,22 +218,13 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/converters/annotations/DataField", "
|
|
|
198
218
|
mApplySupported.$Type = "Org.OData.Aggregation.V1.ApplySupportedType";
|
|
199
219
|
mApplySupported.AggregatableProperties = [];
|
|
200
220
|
mApplySupported.GroupableProperties = [];
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
const obj = {
|
|
204
|
-
$Type: (_aAggProps$i = aAggProps[i]) === null || _aAggProps$i === void 0 ? void 0 : _aAggProps$i.$Type,
|
|
205
|
-
Property: {
|
|
206
|
-
$PropertyPath: (_aAggProps$i2 = aAggProps[i]) === null || _aAggProps$i2 === void 0 ? void 0 : (_aAggProps$i2$Propert = _aAggProps$i2.Property) === null || _aAggProps$i2$Propert === void 0 ? void 0 : _aAggProps$i2$Propert.value
|
|
207
|
-
}
|
|
208
|
-
};
|
|
209
|
-
mApplySupported.AggregatableProperties.push(obj);
|
|
221
|
+
if (aAggProps) {
|
|
222
|
+
mApplySupported.AggregatableProperties = aAggProps.map(prop => getAggregatablePropertiesObject(prop));
|
|
210
223
|
}
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
};
|
|
216
|
-
mApplySupported.GroupableProperties.push(obj);
|
|
224
|
+
if (aGrpProps) {
|
|
225
|
+
mApplySupported.GroupableProperties = aGrpProps.map(prop => ({
|
|
226
|
+
["$PropertyPath"]: prop.value
|
|
227
|
+
}));
|
|
217
228
|
}
|
|
218
229
|
const chartActions = getChartActions(chartAnnotation, visualizationPath, converterContext);
|
|
219
230
|
let [navigationPropertyPath /*, annotationPath*/] = visualizationPath.split("@");
|
|
@@ -268,7 +279,8 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/converters/annotations/DataField", "
|
|
|
268
279
|
transAgg: mTransAggregations,
|
|
269
280
|
applySupported: mApplySupported,
|
|
270
281
|
selectionPresentationVariantPath: mSelectionPresentationVariantPath,
|
|
271
|
-
variantManagement: findVariantManagement(p13nMode, variantManagement)
|
|
282
|
+
variantManagement: findVariantManagement(p13nMode, variantManagement),
|
|
283
|
+
isInsightsEnabled: (isInsightsEnabled ?? false) && getInsightsVisibility("Analytical", converterContext, visualizationPath)
|
|
272
284
|
};
|
|
273
285
|
}
|
|
274
286
|
/**
|
|
@@ -335,4 +347,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/converters/annotations/DataField", "
|
|
|
335
347
|
_exports.createBlankChartVisualization = createBlankChartVisualization;
|
|
336
348
|
return _exports;
|
|
337
349
|
}, false);
|
|
338
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRDaGFydEFjdGlvbnNGcm9tQW5ub3RhdGlvbnMiLCJjaGFydEFubm90YXRpb24iLCJ2aXN1YWxpemF0aW9uUGF0aCIsImNvbnZlcnRlckNvbnRleHQiLCJjaGFydEFjdGlvbnMiLCJhQWN0aW9ucyIsIkFjdGlvbnMiLCJmb3JFYWNoIiwiZGF0YUZpZWxkIiwiY2hhcnRBY3Rpb24iLCJpc0RhdGFGaWVsZEZvckFjdGlvbkFic3RyYWN0IiwiSW5saW5lIiwiRGV0ZXJtaW5pbmciLCJrZXkiLCJLZXlIZWxwZXIiLCJnZW5lcmF0ZUtleUZyb21EYXRhRmllbGQiLCIkVHlwZSIsIkFjdGlvblRhcmdldCIsImlzQm91bmQiLCJ0eXBlIiwiQWN0aW9uVHlwZSIsIkRhdGFGaWVsZEZvckFjdGlvbiIsImFubm90YXRpb25QYXRoIiwiZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aCIsImZ1bGx5UXVhbGlmaWVkTmFtZSIsInZpc2libGUiLCJnZXRDb21waWxlRXhwcmVzc2lvbkZvckFjdGlvbiIsIkRhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbiIsImlzTmF2aWdhYmxlIiwicHVzaCIsImdldENoYXJ0QWN0aW9ucyIsImFBbm5vdGF0aW9uQWN0aW9ucyIsIm1hbmlmZXN0QWN0aW9ucyIsImdldEFjdGlvbnNGcm9tTWFuaWZlc3QiLCJnZXRNYW5pZmVzdENvbnRyb2xDb25maWd1cmF0aW9uIiwiYWN0aW9ucyIsImFjdGlvbk92ZXJ3cml0ZUNvbmZpZyIsImVuYWJsZWQiLCJPdmVycmlkZVR5cGUiLCJvdmVyd3JpdGUiLCJlbmFibGVPblNlbGVjdCIsImNvbW1hbmQiLCJpbnNlcnRDdXN0b21FbGVtZW50cyIsImNvbW1hbmRBY3Rpb25zIiwiZ2V0UDEzbk1vZGUiLCJtYW5pZmVzdFdyYXBwZXIiLCJnZXRNYW5pZmVzdFdyYXBwZXIiLCJjaGFydE1hbmlmZXN0U2V0dGluZ3MiLCJ2YXJpYW50TWFuYWdlbWVudCIsImdldFZhcmlhbnRNYW5hZ2VtZW50IiwiYVBlcnNvbmFsaXphdGlvbiIsInBlcnNvbmFsaXphdGlvbiIsImNoYXJ0U2V0dGluZ3MiLCJpc0NvbnRyb2xWYXJpYW50IiwiVmFyaWFudE1hbmFnZW1lbnRUeXBlIiwiQ29udHJvbCIsInVuZGVmaW5lZCIsIml0ZW0iLCJzb3J0IiwiZmlsdGVyIiwiam9pbiIsImNoZWNrRm9yU1BWIiwidmlld0NvbmZpZ3VyYXRpb24iLCJpbmRleE9mIiwiY3JlYXRlQ2hhcnRWaXN1YWxpemF0aW9uIiwiZG9Ob3RDaGVja0FwcGx5U3VwcG9ydGVkIiwiYWdncmVnYXRpb25IZWxwZXIiLCJBZ2dyZWdhdGlvbkhlbHBlciIsImdldEVudGl0eVR5cGUiLCJpc0FuYWx5dGljc1N1cHBvcnRlZCIsIkVycm9yIiwiYVRyYW5zQWdncmVnYXRpb25zIiwiZ2V0VHJhbnNBZ2dyZWdhdGlvbnMiLCJhQ3VzdG9tQWdncmVnYXRlcyIsImdldEN1c3RvbUFnZ3JlZ2F0ZURlZmluaXRpb25zIiwicGFnZU1hbmlmZXN0U2V0dGluZ3MiLCJwMTNuTW9kZSIsIkxvZyIsIndhcm5pbmciLCJtQ3VzdG9tQWdncmVnYXRlcyIsIm1TZWxlY3Rpb25QcmVzZW50YXRpb25WYXJpYW50UGF0aCIsImVudGl0eVR5cGUiLCJjdXN0b21BZ2dyZWdhdGUiLCJhQ29udGV4dERlZmluaW5nUHJvcGVydGllcyIsImFubm90YXRpb25zIiwiQWdncmVnYXRpb24iLCJDb250ZXh0RGVmaW5pbmdQcm9wZXJ0aWVzIiwicXVhbGlmaWVyIiwicmVsYXRlZEN1c3RvbUFnZ3JlZ2F0ZVByb3BlcnR5IiwiZW50aXR5UHJvcGVydGllcyIsImZpbmQiLCJwcm9wZXJ0eSIsIm5hbWUiLCJsYWJlbCIsIkNvbW1vbiIsIkxhYmVsIiwidG9TdHJpbmciLCJzb3J0YWJsZSIsInNvcnRPcmRlciIsImNvbnRleHREZWZpbmluZ1Byb3BlcnR5IiwibWFwIiwib0N0eERlZlByb3BlcnR5IiwidmFsdWUiLCJtVHJhbnNBZ2dyZWdhdGlvbnMiLCJvUmVzb3VyY2VCdW5kbGVDb3JlIiwiQ29yZSIsImdldExpYnJhcnlSZXNvdXJjZUJ1bmRsZSIsImkiLCJsZW5ndGgiLCJOYW1lIiwicHJvcGVydHlQYXRoIiwiQWdncmVnYXRhYmxlUHJvcGVydHkiLCJ2YWx1ZU9mIiwiYWdncmVnYXRpb25NZXRob2QiLCJBZ2dyZWdhdGlvbk1ldGhvZCIsImdldFRleHQiLCJjdXN0b20iLCJhQWdnUHJvcHMiLCJnZXRBZ2dyZWdhdGFibGVQcm9wZXJ0aWVzIiwiYUdycFByb3BzIiwiZ2V0R3JvdXBhYmxlUHJvcGVydGllcyIsIm1BcHBseVN1cHBvcnRlZCIsIkFnZ3JlZ2F0YWJsZVByb3BlcnRpZXMiLCJHcm91cGFibGVQcm9wZXJ0aWVzIiwib2JqIiwiUHJvcGVydHkiLCIkUHJvcGVydHlQYXRoIiwibmF2aWdhdGlvblByb3BlcnR5UGF0aCIsInNwbGl0IiwibGFzdEluZGV4T2YiLCJzdWJzdHIiLCJ0aXRsZSIsIlRpdGxlIiwiZGF0YU1vZGVsUGF0aCIsImdldERhdGFNb2RlbE9iamVjdFBhdGgiLCJpc0VudGl0eVNldCIsImVudGl0eU5hbWUiLCJ0YXJnZXRFbnRpdHlTZXQiLCJzdGFydGluZ0VudGl0eVNldCIsInNGaWx0ZXJiYXJJZCIsImdldEZpbHRlckJhcklEIiwiZ2V0Q29udGV4dFBhdGgiLCJvVml6UHJvcGVydGllcyIsImxlZ2VuZEdyb3VwIiwibGF5b3V0IiwicG9zaXRpb24iLCJhdXRvQmluZE9uSW5pdCIsImdldFRlbXBsYXRlVHlwZSIsIlRlbXBsYXRlVHlwZSIsIk9iamVjdFBhZ2UiLCJMaXN0UmVwb3J0IiwiQW5hbHl0aWNhbExpc3RQYWdlIiwiaGFzTXVsdGlwbGVWaXN1YWxpemF0aW9ucyIsIm9uU2VnbWVudGVkQnV0dG9uUHJlc3NlZCIsImFsbG93ZWRUcmFuc2Zvcm1hdGlvbnMiLCJnZXRBbGxvd2VkVHJhbnNmb3JtYXRpb25zIiwiZW5hYmxlU2VhcmNoIiwiVmlzdWFsaXphdGlvblR5cGUiLCJDaGFydCIsImlkIiwiZ2V0Q2hhcnRJRCIsImNvbGxlY3Rpb24iLCJnZXRUYXJnZXRPYmplY3RQYXRoIiwibmF2aWdhdGlvblBhdGgiLCJnZXRBYnNvbHV0ZUFubm90YXRpb25QYXRoIiwiZmlsdGVySWQiLCJ2aXpQcm9wZXJ0aWVzIiwiSlNPTiIsInN0cmluZ2lmeSIsImN1c3RvbUFnZyIsInRyYW5zQWdnIiwiYXBwbHlTdXBwb3J0ZWQiLCJzZWxlY3Rpb25QcmVzZW50YXRpb25WYXJpYW50UGF0aCIsImZpbmRWYXJpYW50TWFuYWdlbWVudCIsIk5vbmUiLCJjb21waWxlRXhwcmVzc2lvbiIsIm5vdCIsImVxdWFsIiwiZ2V0RXhwcmVzc2lvbkZyb21Bbm5vdGF0aW9uIiwiVUkiLCJIaWRkZW4iLCJnZXRSZWxhdGl2ZU1vZGVsUGF0aEZ1bmN0aW9uIiwiY3JlYXRlQmxhbmtDaGFydFZpc3VhbGl6YXRpb24iLCJ2aXN1YWxpemF0aW9uIiwibXVsdGlWaWV3cyJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiQ2hhcnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQcm9wZXJ0eVBhdGggfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXNcIjtcbmltcG9ydCB0eXBlIHsgQWdncmVnYXRhYmxlUHJvcGVydHlUeXBlLCBBZ2dyZWdhdGlvbk1ldGhvZCB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlcy92b2NhYnVsYXJpZXMvQWdncmVnYXRpb25cIjtcbmltcG9ydCB7IEFnZ3JlZ2F0aW9uQW5ub3RhdGlvblR5cGVzIH0gZnJvbSBcIkBzYXAtdXgvdm9jYWJ1bGFyaWVzLXR5cGVzL3ZvY2FidWxhcmllcy9BZ2dyZWdhdGlvblwiO1xuaW1wb3J0IHsgQ2hhcnQsIERhdGFGaWVsZEFic3RyYWN0VHlwZXMsIFVJQW5ub3RhdGlvblRlcm1zLCBVSUFubm90YXRpb25UeXBlcyB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlcy92b2NhYnVsYXJpZXMvVUlcIjtcbmltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IHsgaXNEYXRhRmllbGRGb3JBY3Rpb25BYnN0cmFjdCB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL2Fubm90YXRpb25zL0RhdGFGaWVsZFwiO1xuaW1wb3J0IHR5cGUge1xuXHRBbm5vdGF0aW9uQWN0aW9uLFxuXHRCYXNlQWN0aW9uLFxuXHRDb21iaW5lZEFjdGlvbixcblx0Q3VzdG9tQWN0aW9uLFxuXHRPdmVycmlkZVR5cGVBY3Rpb25cbn0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvY29udHJvbHMvQ29tbW9uL0FjdGlvblwiO1xuaW1wb3J0IHsgZ2V0QWN0aW9uc0Zyb21NYW5pZmVzdCB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL2NvbnRyb2xzL0NvbW1vbi9BY3Rpb25cIjtcbmltcG9ydCB7IGluc2VydEN1c3RvbUVsZW1lbnRzLCBPdmVycmlkZVR5cGUgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9oZWxwZXJzL0NvbmZpZ3VyYWJsZU9iamVjdFwiO1xuaW1wb3J0IHsgS2V5SGVscGVyIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvaGVscGVycy9LZXlcIjtcbmltcG9ydCB7IGNvbXBpbGVFeHByZXNzaW9uLCBlcXVhbCwgZ2V0RXhwcmVzc2lvbkZyb21Bbm5vdGF0aW9uLCBub3QgfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9CaW5kaW5nVG9vbGtpdFwiO1xuaW1wb3J0IHsgZ2V0VGFyZ2V0T2JqZWN0UGF0aCB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL0RhdGFNb2RlbFBhdGhIZWxwZXJcIjtcbmltcG9ydCBDb3JlIGZyb20gXCJzYXAvdWkvY29yZS9Db3JlXCI7XG5pbXBvcnQgdHlwZSB7IEV4cGFuZFBhdGhUeXBlLCBNZXRhTW9kZWxUeXBlIH0gZnJvbSBcInR5cGVzL21ldGFtb2RlbF90eXBlc1wiO1xuaW1wb3J0IHR5cGUgQ29udmVydGVyQ29udGV4dCBmcm9tIFwiLi4vLi4vQ29udmVydGVyQ29udGV4dFwiO1xuaW1wb3J0IHsgQWdncmVnYXRpb25IZWxwZXIgfSBmcm9tIFwiLi4vLi4vaGVscGVycy9BZ2dyZWdhdGlvblwiO1xuaW1wb3J0IHsgZ2V0Q2hhcnRJRCwgZ2V0RmlsdGVyQmFySUQgfSBmcm9tIFwiLi4vLi4vaGVscGVycy9JRFwiO1xuaW1wb3J0IHR5cGUgeyBDaGFydE1hbmlmZXN0Q29uZmlndXJhdGlvbiwgVmlld1BhdGhDb25maWd1cmF0aW9uIH0gZnJvbSBcIi4uLy4uL01hbmlmZXN0U2V0dGluZ3NcIjtcbmltcG9ydCB7IEFjdGlvblR5cGUsIFRlbXBsYXRlVHlwZSwgVmFyaWFudE1hbmFnZW1lbnRUeXBlLCBWaXN1YWxpemF0aW9uVHlwZSB9IGZyb20gXCIuLi8uLi9NYW5pZmVzdFNldHRpbmdzXCI7XG5pbXBvcnQgdHlwZSBNYW5pZmVzdFdyYXBwZXIgZnJvbSBcIi4uLy4uL01hbmlmZXN0V3JhcHBlclwiO1xuXG50eXBlIENoYXJ0QXBwbHlTdXBwb3J0ZWQgPSB7XG5cdCRUeXBlOiBzdHJpbmc7XG5cdGVuYWJsZVNlYXJjaDogYm9vbGVhbjtcblx0QWdncmVnYXRhYmxlUHJvcGVydGllczogdW5rbm93bltdO1xuXHRHcm91cGFibGVQcm9wZXJ0aWVzOiB1bmtub3duW107XG59O1xuLyoqXG4gKiBAdHlwZWRlZiBDaGFydFZpc3VhbGl6YXRpb25cbiAqL1xuZXhwb3J0IHR5cGUgQ2hhcnRWaXN1YWxpemF0aW9uID0ge1xuXHR0eXBlOiBWaXN1YWxpemF0aW9uVHlwZS5DaGFydDtcblx0aWQ6IHN0cmluZztcblx0Y29sbGVjdGlvbjogc3RyaW5nO1xuXHRlbnRpdHlOYW1lOiBzdHJpbmc7XG5cdHBlcnNvbmFsaXphdGlvbj86IHN0cmluZztcblx0bmF2aWdhdGlvblBhdGg6IHN0cmluZztcblx0YW5ub3RhdGlvblBhdGg6IHN0cmluZztcblx0ZmlsdGVySWQ/OiBzdHJpbmc7XG5cdHZpelByb3BlcnRpZXM6IHN0cmluZztcblx0YWN0aW9uczogQmFzZUFjdGlvbltdO1xuXHRjb21tYW5kQWN0aW9uczogUmVjb3JkPHN0cmluZywgQ3VzdG9tQWN0aW9uPjtcblx0dGl0bGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblx0YXV0b0JpbmRPbkluaXQ6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cdG9uU2VnbWVudGVkQnV0dG9uUHJlc3NlZDogc3RyaW5nO1xuXHR2aXNpYmxlOiBzdHJpbmc7XG5cdGN1c3RvbUFnZzogb2JqZWN0O1xuXHR0cmFuc0FnZzogb2JqZWN0O1xuXHRhcHBseVN1cHBvcnRlZDogQ2hhcnRBcHBseVN1cHBvcnRlZDtcblx0bXVsdGlWaWV3cz86IGJvb2xlYW47XG5cdHZhcmlhbnRNYW5hZ2VtZW50OiBWYXJpYW50TWFuYWdlbWVudFR5cGU7XG5cdHNlbGVjdGlvblByZXNlbnRhdGlvblZhcmlhbnRQYXRoPzogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBNZXRob2QgdG8gcmV0cmlldmUgYWxsIGNoYXJ0IGFjdGlvbnMgZnJvbSBhbm5vdGF0aW9ucy5cbiAqXG4gKiBAcGFyYW0gY2hhcnRBbm5vdGF0aW9uXG4gKiBAcGFyYW0gdmlzdWFsaXphdGlvblBhdGhcbiAqIEBwYXJhbSBjb252ZXJ0ZXJDb250ZXh0XG4gKiBAcmV0dXJucyBUaGUgY2hhcnQgYWN0aW9ucyBmcm9tIHRoZSBhbm5vdGF0aW9uXG4gKi9cbmZ1bmN0aW9uIGdldENoYXJ0QWN0aW9uc0Zyb21Bbm5vdGF0aW9ucyhcblx0Y2hhcnRBbm5vdGF0aW9uOiBDaGFydCxcblx0dmlzdWFsaXphdGlvblBhdGg6IHN0cmluZyxcblx0Y29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dFxuKTogQmFzZUFjdGlvbltdIHtcblx0Y29uc3QgY2hhcnRBY3Rpb25zOiBCYXNlQWN0aW9uW10gPSBbXTtcblx0aWYgKGNoYXJ0QW5ub3RhdGlvbikge1xuXHRcdGNvbnN0IGFBY3Rpb25zID0gY2hhcnRBbm5vdGF0aW9uLkFjdGlvbnMgfHwgW107XG5cdFx0YUFjdGlvbnMuZm9yRWFjaCgoZGF0YUZpZWxkOiBEYXRhRmllbGRBYnN0cmFjdFR5cGVzKSA9PiB7XG5cdFx0XHRsZXQgY2hhcnRBY3Rpb246IEFubm90YXRpb25BY3Rpb24gfCB1bmRlZmluZWQ7XG5cdFx0XHRpZiAoaXNEYXRhRmllbGRGb3JBY3Rpb25BYnN0cmFjdChkYXRhRmllbGQpICYmICFkYXRhRmllbGQuSW5saW5lICYmICFkYXRhRmllbGQuRGV0ZXJtaW5pbmcpIHtcblx0XHRcdFx0Y29uc3Qga2V5ID0gS2V5SGVscGVyLmdlbmVyYXRlS2V5RnJvbURhdGFGaWVsZChkYXRhRmllbGQpO1xuXHRcdFx0XHRzd2l0Y2ggKGRhdGFGaWVsZC4kVHlwZSkge1xuXHRcdFx0XHRcdGNhc2UgVUlBbm5vdGF0aW9uVHlwZXMuRGF0YUZpZWxkRm9yQWN0aW9uOlxuXHRcdFx0XHRcdFx0aWYgKCFkYXRhRmllbGQuQWN0aW9uVGFyZ2V0Py5pc0JvdW5kKSB7XG5cdFx0XHRcdFx0XHRcdGNoYXJ0QWN0aW9uID0ge1xuXHRcdFx0XHRcdFx0XHRcdHR5cGU6IEFjdGlvblR5cGUuRGF0YUZpZWxkRm9yQWN0aW9uLFxuXHRcdFx0XHRcdFx0XHRcdGFubm90YXRpb25QYXRoOiBjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVNldEJhc2VkQW5ub3RhdGlvblBhdGgoZGF0YUZpZWxkLmZ1bGx5UXVhbGlmaWVkTmFtZSksXG5cdFx0XHRcdFx0XHRcdFx0a2V5OiBrZXksXG5cdFx0XHRcdFx0XHRcdFx0dmlzaWJsZTogZ2V0Q29tcGlsZUV4cHJlc3Npb25Gb3JBY3Rpb24oZGF0YUZpZWxkLCBjb252ZXJ0ZXJDb250ZXh0KVxuXHRcdFx0XHRcdFx0XHR9O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdFx0XHRjYXNlIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbjpcblx0XHRcdFx0XHRcdGNoYXJ0QWN0aW9uID0ge1xuXHRcdFx0XHRcdFx0XHR0eXBlOiBBY3Rpb25UeXBlLkRhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbixcblx0XHRcdFx0XHRcdFx0YW5ub3RhdGlvblBhdGg6IGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aChkYXRhRmllbGQuZnVsbHlRdWFsaWZpZWROYW1lKSxcblx0XHRcdFx0XHRcdFx0a2V5OiBrZXksXG5cdFx0XHRcdFx0XHRcdHZpc2libGU6IGdldENvbXBpbGVFeHByZXNzaW9uRm9yQWN0aW9uKGRhdGFGaWVsZCwgY29udmVydGVyQ29udGV4dCksXG5cdFx0XHRcdFx0XHRcdGlzTmF2aWdhYmxlOiB0cnVlXG5cdFx0XHRcdFx0XHR9O1xuXHRcdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdGlmIChjaGFydEFjdGlvbikge1xuXHRcdFx0XHRjaGFydEFjdGlvbnMucHVzaChjaGFydEFjdGlvbik7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblx0cmV0dXJuIGNoYXJ0QWN0aW9ucztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldENoYXJ0QWN0aW9ucyhjaGFydEFubm90YXRpb246IENoYXJ0LCB2aXN1YWxpemF0aW9uUGF0aDogc3RyaW5nLCBjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0KTogQ29tYmluZWRBY3Rpb24ge1xuXHRjb25zdCBhQW5ub3RhdGlvbkFjdGlvbnM6IEJhc2VBY3Rpb25bXSA9IGdldENoYXJ0QWN0aW9uc0Zyb21Bbm5vdGF0aW9ucyhjaGFydEFubm90YXRpb24sIHZpc3VhbGl6YXRpb25QYXRoLCBjb252ZXJ0ZXJDb250ZXh0KTtcblx0Y29uc3QgbWFuaWZlc3RBY3Rpb25zID0gZ2V0QWN0aW9uc0Zyb21NYW5pZmVzdChcblx0XHRjb252ZXJ0ZXJDb250ZXh0LmdldE1hbmlmZXN0Q29udHJvbENvbmZpZ3VyYXRpb24odmlzdWFsaXphdGlvblBhdGgpLmFjdGlvbnMsXG5cdFx0Y29udmVydGVyQ29udGV4dCxcblx0XHRhQW5ub3RhdGlvbkFjdGlvbnNcblx0KTtcblx0Y29uc3QgYWN0aW9uT3ZlcndyaXRlQ29uZmlnOiBPdmVycmlkZVR5cGVBY3Rpb24gPSB7XG5cdFx0ZW5hYmxlZDogT3ZlcnJpZGVUeXBlLm92ZXJ3cml0ZSxcblx0XHRlbmFibGVPblNlbGVjdDogT3ZlcnJpZGVUeXBlLm92ZXJ3cml0ZSxcblx0XHR2aXNpYmxlOiBPdmVycmlkZVR5cGUub3ZlcndyaXRlLFxuXHRcdGNvbW1hbmQ6IE92ZXJyaWRlVHlwZS5vdmVyd3JpdGVcblx0fTtcblx0Y29uc3QgY2hhcnRBY3Rpb25zID0gaW5zZXJ0Q3VzdG9tRWxlbWVudHMoYUFubm90YXRpb25BY3Rpb25zLCBtYW5pZmVzdEFjdGlvbnMuYWN0aW9ucywgYWN0aW9uT3ZlcndyaXRlQ29uZmlnKTtcblx0cmV0dXJuIHtcblx0XHRhY3Rpb25zOiBjaGFydEFjdGlvbnMsXG5cdFx0Y29tbWFuZEFjdGlvbnM6IG1hbmlmZXN0QWN0aW9ucy5jb21tYW5kQWN0aW9uc1xuXHR9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UDEzbk1vZGUodmlzdWFsaXphdGlvblBhdGg6IHN0cmluZywgY29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG5cdGNvbnN0IG1hbmlmZXN0V3JhcHBlcjogTWFuaWZlc3RXcmFwcGVyID0gY29udmVydGVyQ29udGV4dC5nZXRNYW5pZmVzdFdyYXBwZXIoKTtcblx0Y29uc3QgY2hhcnRNYW5pZmVzdFNldHRpbmdzOiBDaGFydE1hbmlmZXN0Q29uZmlndXJhdGlvbiA9IGNvbnZlcnRlckNvbnRleHQuZ2V0TWFuaWZlc3RDb250cm9sQ29uZmlndXJhdGlvbih2aXN1YWxpemF0aW9uUGF0aCk7XG5cdGNvbnN0IHZhcmlhbnRNYW5hZ2VtZW50OiBWYXJpYW50TWFuYWdlbWVudFR5cGUgPSBtYW5pZmVzdFdyYXBwZXIuZ2V0VmFyaWFudE1hbmFnZW1lbnQoKTtcblx0Y29uc3QgYVBlcnNvbmFsaXphdGlvbjogc3RyaW5nW10gPSBbXTtcblx0Ly8gUGVyc29uYWxpemF0aW9uIGNvbmZpZ3VyZWQgaW4gbWFuaWZlc3QuXG5cdGNvbnN0IHBlcnNvbmFsaXphdGlvbjogYW55ID0gY2hhcnRNYW5pZmVzdFNldHRpbmdzPy5jaGFydFNldHRpbmdzPy5wZXJzb25hbGl6YXRpb247XG5cdGNvbnN0IGlzQ29udHJvbFZhcmlhbnQgPSB2YXJpYW50TWFuYWdlbWVudCA9PT0gVmFyaWFudE1hbmFnZW1lbnRUeXBlLkNvbnRyb2wgPyB0cnVlIDogZmFsc2U7XG5cdC8vIGlmIHBlcnNvbmFsaXphdGlvbiBpcyBzZXQgdG8gZmFsc2UgZG8gbm90IHNob3cgYW55IG9wdGlvblxuXHRpZiAoKHBlcnNvbmFsaXphdGlvbiAhPT0gdW5kZWZpbmVkICYmICFwZXJzb25hbGl6YXRpb24pIHx8IHBlcnNvbmFsaXphdGlvbiA9PSBcImZhbHNlXCIpIHtcblx0XHRyZXR1cm4gdW5kZWZpbmVkO1xuXHR9XG5cdHN3aXRjaCAodHJ1ZSkge1xuXHRcdGNhc2UgdHlwZW9mIHBlcnNvbmFsaXphdGlvbiA9PT0gXCJvYmplY3RcIjpcblx0XHRcdC8vIFNwZWNpZmljIHBlcnNvbmFsaXphdGlvbiBvcHRpb25zIGVuYWJsZWQgaW4gbWFuaWZlc3QuIFVzZSB0aGVtIGFzIGlzLlxuXHRcdFx0aWYgKHBlcnNvbmFsaXphdGlvbi50eXBlKSB7XG5cdFx0XHRcdGFQZXJzb25hbGl6YXRpb24ucHVzaChcIlR5cGVcIik7XG5cdFx0XHR9XG5cdFx0XHRpZiAocGVyc29uYWxpemF0aW9uLml0ZW0pIHtcblx0XHRcdFx0YVBlcnNvbmFsaXphdGlvbi5wdXNoKFwiSXRlbVwiKTtcblx0XHRcdH1cblx0XHRcdGlmIChwZXJzb25hbGl6YXRpb24uc29ydCkge1xuXHRcdFx0XHRhUGVyc29uYWxpemF0aW9uLnB1c2goXCJTb3J0XCIpO1xuXHRcdFx0fVxuXHRcdFx0aWYgKHBlcnNvbmFsaXphdGlvbi5maWx0ZXIpIHtcblx0XHRcdFx0YVBlcnNvbmFsaXphdGlvbi5wdXNoKFwiRmlsdGVyXCIpO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIGFQZXJzb25hbGl6YXRpb24uam9pbihcIixcIik7XG5cdFx0Y2FzZSBpc0NvbnRyb2xWYXJpYW50OlxuXHRcdGNhc2UgISFwZXJzb25hbGl6YXRpb246XG5cdFx0XHQvLyBtYW5pZmVzdCBoYXMgcGVyc29uYWxpemF0aW9uIGNvbmZpZ3VyZWQsIGNoZWNrIGlmIGl0J3MgdHJ1ZVxuXHRcdFx0Ly8gaWYgbWFuaWZlc3QgZG9lc24ndCBoYXZlIHBlcnNvbmFsaXphdGlvbiwgY2hlY2sgZm9yIHZhcmlhbnQgbWFuYWdlbWVudCBpcyBzZXQgdG8gY29udHJvbFxuXHRcdFx0cmV0dXJuIFwiU29ydCxUeXBlLEl0ZW0sRmlsdGVyXCI7XG5cdFx0ZGVmYXVsdDpcblx0XHRcdC8vIGlmIG1hbmlmZXN0IGRvZXNuJ3QgaGF2ZSBwZXJzb25hbGl6YXRpb24sIHNob3cgZGVmYXVsdCBvcHRpb25zIHdpdGhvdXQgZmlsdGVyXG5cdFx0XHRyZXR1cm4gXCJTb3J0LFR5cGUsSXRlbVwiO1xuXHR9XG59XG5leHBvcnQgdHlwZSBDaGFydEN1c3RvbUFnZ3JlZ2F0ZSA9IHtcblx0bmFtZTogc3RyaW5nO1xuXHRsYWJlbDogc3RyaW5nO1xuXHRzb3J0YWJsZTogYm9vbGVhbjtcblx0c29ydE9yZGVyOiBcImJvdGhcIjtcblx0Y29udGV4dERlZmluaW5nUHJvcGVydHk6IHN0cmluZ1tdO1xufTtcblxuZXhwb3J0IHR5cGUgVHJhbnNBZ2cgPSB7XG5cdG5hbWU6IHN0cmluZztcblx0cHJvcGVydHlQYXRoOiBzdHJpbmc7XG5cdGFnZ3JlZ2F0aW9uTWV0aG9kOiBBZ2dyZWdhdGlvbk1ldGhvZDtcblx0bGFiZWw6IHN0cmluZztcblx0c29ydGFibGU6IGJvb2xlYW47XG5cdHNvcnRPcmRlcjogXCJib3RoXCI7XG5cdGN1c3RvbTogYm9vbGVhbjtcbn07XG4vLyBjaGVjayBpZiBhbm5vYXRhdGlvbiBwYXRoIGhhcyBTUFYgYW5kIHN0b3JlIHRoZSBwYXRoXG5mdW5jdGlvbiBjaGVja0ZvclNQVih2aWV3Q29uZmlndXJhdGlvbjogVmlld1BhdGhDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkKSB7XG5cdHJldHVybiB2aWV3Q29uZmlndXJhdGlvbj8uYW5ub3RhdGlvblBhdGg/LmluZGV4T2YoYEAke1VJQW5ub3RhdGlvblRlcm1zLlNlbGVjdGlvblByZXNlbnRhdGlvblZhcmlhbnR9YCkgIT09IC0xXG5cdFx0PyB2aWV3Q29uZmlndXJhdGlvbj8uYW5ub3RhdGlvblBhdGhcblx0XHQ6IHVuZGVmaW5lZDtcbn1cbi8qKlxuICogQ3JlYXRlIHRoZSBDaGFydFZpc3VhbGl6YXRpb24gY29uZmlndXJhdGlvbiB0aGF0IHdpbGwgYmUgdXNlZCB0byBkaXNwbGF5IGEgY2hhcnQgdXNpbmcgdGhlIENoYXJ0IGJ1aWxkaW5nIGJsb2NrLlxuICpcbiAqIEBwYXJhbSBjaGFydEFubm90YXRpb24gVGhlIHRhcmdldGVkIGNoYXJ0IGFubm90YXRpb25cbiAqIEBwYXJhbSB2aXN1YWxpemF0aW9uUGF0aCBUaGUgcGF0aCBvZiB0aGUgdmlzdWFsaXphdGlvbiBhbm5vdGF0aW9uXG4gKiBAcGFyYW0gY29udmVydGVyQ29udGV4dCBUaGUgY29udmVydGVyIGNvbnRleHRcbiAqIEBwYXJhbSBkb05vdENoZWNrQXBwbHlTdXBwb3J0ZWQgRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIEFwcGx5U3VwcG9ydGVkIG5lZWRzIHRvIGJlIGNoZWNrZWQgb3Igbm90XG4gKiBAcGFyYW0gdmlld0NvbmZpZ3VyYXRpb25cbiAqIEByZXR1cm5zIFRoZSBjaGFydCB2aXN1YWxpemF0aW9uIGJhc2VkIG9uIHRoZSBhbm5vdGF0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVDaGFydFZpc3VhbGl6YXRpb24oXG5cdGNoYXJ0QW5ub3RhdGlvbjogQ2hhcnQsXG5cdHZpc3VhbGl6YXRpb25QYXRoOiBzdHJpbmcsXG5cdGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQsXG5cdGRvTm90Q2hlY2tBcHBseVN1cHBvcnRlZD86IGJvb2xlYW4sXG5cdHZpZXdDb25maWd1cmF0aW9uPzogVmlld1BhdGhDb25maWd1cmF0aW9uXG4pOiBDaGFydFZpc3VhbGl6YXRpb24ge1xuXHRjb25zdCBhZ2dyZWdhdGlvbkhlbHBlciA9IG5ldyBBZ2dyZWdhdGlvbkhlbHBlcihjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVR5cGUoKSwgY29udmVydGVyQ29udGV4dCk7XG5cdGlmICghZG9Ob3RDaGVja0FwcGx5U3VwcG9ydGVkICYmICFhZ2dyZWdhdGlvbkhlbHBlci5pc0FuYWx5dGljc1N1cHBvcnRlZCgpKSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKFwiQXBwbHlTdXBwb3J0ZWQgaXMgbm90IGFkZGVkIHRvIHRoZSBhbm5vdGF0aW9uc1wiKTtcblx0fVxuXHRjb25zdCBhVHJhbnNBZ2dyZWdhdGlvbnMgPSBhZ2dyZWdhdGlvbkhlbHBlci5nZXRUcmFuc0FnZ3JlZ2F0aW9ucygpO1xuXHRjb25zdCBhQ3VzdG9tQWdncmVnYXRlcyA9IGFnZ3JlZ2F0aW9uSGVscGVyLmdldEN1c3RvbUFnZ3JlZ2F0ZURlZmluaXRpb25zKCk7XG5cdGNvbnN0IHBhZ2VNYW5pZmVzdFNldHRpbmdzOiBNYW5pZmVzdFdyYXBwZXIgPSBjb252ZXJ0ZXJDb250ZXh0LmdldE1hbmlmZXN0V3JhcHBlcigpO1xuXHRjb25zdCB2YXJpYW50TWFuYWdlbWVudDogVmFyaWFudE1hbmFnZW1lbnRUeXBlID0gcGFnZU1hbmlmZXN0U2V0dGluZ3MuZ2V0VmFyaWFudE1hbmFnZW1lbnQoKTtcblx0Y29uc3QgcDEzbk1vZGU6IHN0cmluZyB8IHVuZGVmaW5lZCA9IGdldFAxM25Nb2RlKHZpc3VhbGl6YXRpb25QYXRoLCBjb252ZXJ0ZXJDb250ZXh0KTtcblx0aWYgKHAxM25Nb2RlID09PSB1bmRlZmluZWQgJiYgdmFyaWFudE1hbmFnZW1lbnQgPT09IFwiQ29udHJvbFwiKSB7XG5cdFx0TG9nLndhcm5pbmcoXCJWYXJpYW50IE1hbmFnZW1lbnQgY2Fubm90IGJlIGVuYWJsZWQgd2hlbiBwZXJzb25hbGl6YXRpb24gaXMgZGlzYWJsZWRcIik7XG5cdH1cblx0Y29uc3QgbUN1c3RvbUFnZ3JlZ2F0ZXMgPSB7fSBhcyBhbnk7XG5cdC8vIGNoZWNrIGlmIGFubm9hdGF0aW9uIHBhdGggaGFzIFNQViBhbmQgc3RvcmUgdGhlIHBhdGhcblx0Y29uc3QgbVNlbGVjdGlvblByZXNlbnRhdGlvblZhcmlhbnRQYXRoOiBzdHJpbmcgfCB1bmRlZmluZWQgPSBjaGVja0ZvclNQVih2aWV3Q29uZmlndXJhdGlvbik7XG5cdGlmIChhQ3VzdG9tQWdncmVnYXRlcykge1xuXHRcdGNvbnN0IGVudGl0eVR5cGUgPSBhZ2dyZWdhdGlvbkhlbHBlci5nZXRFbnRpdHlUeXBlKCk7XG5cdFx0Zm9yIChjb25zdCBjdXN0b21BZ2dyZWdhdGUgb2YgYUN1c3RvbUFnZ3JlZ2F0ZXMpIHtcblx0XHRcdGNvbnN0IGFDb250ZXh0RGVmaW5pbmdQcm9wZXJ0aWVzID0gY3VzdG9tQWdncmVnYXRlPy5hbm5vdGF0aW9ucz8uQWdncmVnYXRpb24/LkNvbnRleHREZWZpbmluZ1Byb3BlcnRpZXM7XG5cdFx0XHRjb25zdCBxdWFsaWZpZXIgPSBjdXN0b21BZ2dyZWdhdGU/LnF1YWxpZmllcjtcblx0XHRcdGNvbnN0IHJlbGF0ZWRDdXN0b21BZ2dyZWdhdGVQcm9wZXJ0eSA9IHF1YWxpZmllciAmJiBlbnRpdHlUeXBlLmVudGl0eVByb3BlcnRpZXMuZmluZCgocHJvcGVydHkpID0+IHByb3BlcnR5Lm5hbWUgPT09IHF1YWxpZmllcik7XG5cdFx0XHRjb25zdCBsYWJlbCA9IHJlbGF0ZWRDdXN0b21BZ2dyZWdhdGVQcm9wZXJ0eSAmJiByZWxhdGVkQ3VzdG9tQWdncmVnYXRlUHJvcGVydHk/LmFubm90YXRpb25zPy5Db21tb24/LkxhYmVsPy50b1N0cmluZygpO1xuXHRcdFx0bUN1c3RvbUFnZ3JlZ2F0ZXNbcXVhbGlmaWVyXSA9IHtcblx0XHRcdFx0bmFtZTogcXVhbGlmaWVyLFxuXHRcdFx0XHRsYWJlbDogbGFiZWwgfHwgYEN1c3RvbSBBZ2dyZWdhdGUgKCR7cXVhbGlmaWVyfSlgLFxuXHRcdFx0XHRzb3J0YWJsZTogdHJ1ZSxcblx0XHRcdFx0c29ydE9yZGVyOiBcImJvdGhcIixcblx0XHRcdFx0Y29udGV4dERlZmluaW5nUHJvcGVydHk6IGFDb250ZXh0RGVmaW5pbmdQcm9wZXJ0aWVzXG5cdFx0XHRcdFx0PyBhQ29udGV4dERlZmluaW5nUHJvcGVydGllcy5tYXAoKG9DdHhEZWZQcm9wZXJ0eSkgPT4ge1xuXHRcdFx0XHRcdFx0XHRyZXR1cm4gb0N0eERlZlByb3BlcnR5LnZhbHVlO1xuXHRcdFx0XHRcdCAgfSlcblx0XHRcdFx0XHQ6IFtdXG5cdFx0XHR9O1xuXHRcdH1cblx0fVxuXG5cdGNvbnN0IG1UcmFuc0FnZ3JlZ2F0aW9uczogUmVjb3JkPHN0cmluZywgVHJhbnNBZ2c+ID0ge307XG5cdGNvbnN0IG9SZXNvdXJjZUJ1bmRsZUNvcmUgPSBDb3JlLmdldExpYnJhcnlSZXNvdXJjZUJ1bmRsZShcInNhcC5mZS5jb3JlXCIpO1xuXHRpZiAoYVRyYW5zQWdncmVnYXRpb25zKSB7XG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBhVHJhbnNBZ2dyZWdhdGlvbnMubGVuZ3RoOyBpKyspIHtcblx0XHRcdG1UcmFuc0FnZ3JlZ2F0aW9uc1thVHJhbnNBZ2dyZWdhdGlvbnNbaV0uTmFtZV0gPSB7XG5cdFx0XHRcdG5hbWU6IGFUcmFuc0FnZ3JlZ2F0aW9uc1tpXS5OYW1lLFxuXHRcdFx0XHRwcm9wZXJ0eVBhdGg6IGFUcmFuc0FnZ3JlZ2F0aW9uc1tpXS5BZ2dyZWdhdGFibGVQcm9wZXJ0eS52YWx1ZU9mKCkudmFsdWUsXG5cdFx0XHRcdGFnZ3JlZ2F0aW9uTWV0aG9kOiBhVHJhbnNBZ2dyZWdhdGlvbnNbaV0uQWdncmVnYXRpb25NZXRob2QsXG5cdFx0XHRcdGxhYmVsOiBhVHJhbnNBZ2dyZWdhdGlvbnNbaV0/LmFubm90YXRpb25zPy5Db21tb24/LkxhYmVsXG5cdFx0XHRcdFx0PyBhVHJhbnNBZ2dyZWdhdGlvbnNbaV0/LmFubm90YXRpb25zPy5Db21tb24/LkxhYmVsLnRvU3RyaW5nKClcblx0XHRcdFx0XHQ6IGAke29SZXNvdXJjZUJ1bmRsZUNvcmUuZ2V0VGV4dChcIkFHR1JFR0FUQUJMRV9QUk9QRVJUWVwiKX0gKCR7YVRyYW5zQWdncmVnYXRpb25zW2ldLk5hbWV9KWAsXG5cdFx0XHRcdHNvcnRhYmxlOiB0cnVlLFxuXHRcdFx0XHRzb3J0T3JkZXI6IFwiYm90aFwiLFxuXHRcdFx0XHRjdXN0b206IGZhbHNlXG5cdFx0XHR9O1xuXHRcdH1cblx0fVxuXG5cdGNvbnN0IGFBZ2dQcm9wcyA9IGFnZ3JlZ2F0aW9uSGVscGVyLmdldEFnZ3JlZ2F0YWJsZVByb3BlcnRpZXMoKTtcblx0Y29uc3QgYUdycFByb3BzID0gYWdncmVnYXRpb25IZWxwZXIuZ2V0R3JvdXBhYmxlUHJvcGVydGllcygpO1xuXHRjb25zdCBtQXBwbHlTdXBwb3J0ZWQgPSB7fSBhcyBDaGFydEFwcGx5U3VwcG9ydGVkO1xuXHRtQXBwbHlTdXBwb3J0ZWQuJFR5cGUgPSBBZ2dyZWdhdGlvbkFubm90YXRpb25UeXBlcy5BcHBseVN1cHBvcnRlZFR5cGU7XG5cdG1BcHBseVN1cHBvcnRlZC5BZ2dyZWdhdGFibGVQcm9wZXJ0aWVzID0gW107XG5cdG1BcHBseVN1cHBvcnRlZC5Hcm91cGFibGVQcm9wZXJ0aWVzID0gW107XG5cblx0Zm9yIChsZXQgaSA9IDA7IGFBZ2dQcm9wcyAmJiBpIDwgYUFnZ1Byb3BzLmxlbmd0aDsgaSsrKSB7XG5cdFx0Y29uc3Qgb2JqOiBNZXRhTW9kZWxUeXBlPEFnZ3JlZ2F0YWJsZVByb3BlcnR5VHlwZT4gPSB7XG5cdFx0XHQkVHlwZTogYUFnZ1Byb3BzW2ldPy4kVHlwZSxcblx0XHRcdFByb3BlcnR5OiB7XG5cdFx0XHRcdCRQcm9wZXJ0eVBhdGg6IGFBZ2dQcm9wc1tpXT8uUHJvcGVydHk/LnZhbHVlXG5cdFx0XHR9XG5cdFx0fTtcblxuXHRcdG1BcHBseVN1cHBvcnRlZC5BZ2dyZWdhdGFibGVQcm9wZXJ0aWVzLnB1c2gob2JqKTtcblx0fVxuXG5cdGZvciAobGV0IGkgPSAwOyBhR3JwUHJvcHMgJiYgaSA8IGFHcnBQcm9wcy5sZW5ndGg7IGkrKykge1xuXHRcdGNvbnN0IG9iajogRXhwYW5kUGF0aFR5cGU8UHJvcGVydHlQYXRoPiA9IHsgJFByb3BlcnR5UGF0aDogYUdycFByb3BzW2ldPy52YWx1ZSB9O1xuXG5cdFx0bUFwcGx5U3VwcG9ydGVkLkdyb3VwYWJsZVByb3BlcnRpZXMucHVzaChvYmopO1xuXHR9XG5cblx0Y29uc3QgY2hhcnRBY3Rpb25zID0gZ2V0Q2hhcnRBY3Rpb25zKGNoYXJ0QW5ub3RhdGlvbiwgdmlzdWFsaXphdGlvblBhdGgsIGNvbnZlcnRlckNvbnRleHQpO1xuXHRsZXQgW25hdmlnYXRpb25Qcm9wZXJ0eVBhdGggLyosIGFubm90YXRpb25QYXRoKi9dID0gdmlzdWFsaXphdGlvblBhdGguc3BsaXQoXCJAXCIpO1xuXHRpZiAobmF2aWdhdGlvblByb3BlcnR5UGF0aC5sYXN0SW5kZXhPZihcIi9cIikgPT09IG5hdmlnYXRpb25Qcm9wZXJ0eVBhdGgubGVuZ3RoIC0gMSkge1xuXHRcdC8vIERyb3AgdHJhaWxpbmcgc2xhc2hcblx0XHRuYXZpZ2F0aW9uUHJvcGVydHlQYXRoID0gbmF2aWdhdGlvblByb3BlcnR5UGF0aC5zdWJzdHIoMCwgbmF2aWdhdGlvblByb3BlcnR5UGF0aC5sZW5ndGggLSAxKTtcblx0fVxuXHRjb25zdCB0aXRsZSA9IGNoYXJ0QW5ub3RhdGlvbi5UaXRsZT8udG9TdHJpbmcoKSB8fCBcIlwiOyAvLyByZWFkIHRpdGxlIGZyb20gY2hhcnQgYW5ub3RhdGlvblxuXHRjb25zdCBkYXRhTW9kZWxQYXRoID0gY29udmVydGVyQ29udGV4dC5nZXREYXRhTW9kZWxPYmplY3RQYXRoKCk7XG5cdGNvbnN0IGlzRW50aXR5U2V0OiBib29sZWFuID0gbmF2aWdhdGlvblByb3BlcnR5UGF0aC5sZW5ndGggPT09IDA7XG5cdGNvbnN0IGVudGl0eU5hbWU6IHN0cmluZyA9IGRhdGFNb2RlbFBhdGgudGFyZ2V0RW50aXR5U2V0ID8gZGF0YU1vZGVsUGF0aC50YXJnZXRFbnRpdHlTZXQubmFtZSA6IGRhdGFNb2RlbFBhdGguc3RhcnRpbmdFbnRpdHlTZXQubmFtZTtcblx0Y29uc3Qgc0ZpbHRlcmJhcklkID0gaXNFbnRpdHlTZXQgPyBnZXRGaWx0ZXJCYXJJRChjb252ZXJ0ZXJDb250ZXh0LmdldENvbnRleHRQYXRoKCkpIDogdW5kZWZpbmVkO1xuXHRjb25zdCBvVml6UHJvcGVydGllcyA9IHtcblx0XHRsZWdlbmRHcm91cDoge1xuXHRcdFx0bGF5b3V0OiB7XG5cdFx0XHRcdHBvc2l0aW9uOiBcImJvdHRvbVwiXG5cdFx0XHR9XG5cdFx0fVxuXHR9O1xuXHRsZXQgYXV0b0JpbmRPbkluaXQ6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cdGlmIChjb252ZXJ0ZXJDb250ZXh0LmdldFRlbXBsYXRlVHlwZSgpID09PSBUZW1wbGF0ZVR5cGUuT2JqZWN0UGFnZSkge1xuXHRcdGF1dG9CaW5kT25Jbml0ID0gdHJ1ZTtcblx0fSBlbHNlIGlmIChcblx0XHRjb252ZXJ0ZXJDb250ZXh0LmdldFRlbXBsYXRlVHlwZSgpID09PSBUZW1wbGF0ZVR5cGUuTGlzdFJlcG9ydCB8fFxuXHRcdGNvbnZlcnRlckNvbnRleHQuZ2V0VGVtcGxhdGVUeXBlKCkgPT09IFRlbXBsYXRlVHlwZS5BbmFseXRpY2FsTGlzdFBhZ2Vcblx0KSB7XG5cdFx0YXV0b0JpbmRPbkluaXQgPSBmYWxzZTtcblx0fVxuXHRjb25zdCBoYXNNdWx0aXBsZVZpc3VhbGl6YXRpb25zID1cblx0XHRjb252ZXJ0ZXJDb250ZXh0LmdldE1hbmlmZXN0V3JhcHBlcigpLmhhc011bHRpcGxlVmlzdWFsaXphdGlvbnMoKSB8fFxuXHRcdGNvbnZlcnRlckNvbnRleHQuZ2V0VGVtcGxhdGVUeXBlKCkgPT09IFRlbXBsYXRlVHlwZS5BbmFseXRpY2FsTGlzdFBhZ2U7XG5cdGNvbnN0IG9uU2VnbWVudGVkQnV0dG9uUHJlc3NlZCA9IGhhc011bHRpcGxlVmlzdWFsaXphdGlvbnMgPyBcIi5oYW5kbGVycy5vblNlZ21lbnRlZEJ1dHRvblByZXNzZWRcIiA6IFwiXCI7XG5cdGNvbnN0IHZpc2libGUgPSBoYXNNdWx0aXBsZVZpc3VhbGl6YXRpb25zID8gXCJ7PSAke3BhZ2VJbnRlcm5hbD5hbHBDb250ZW50Vmlld30gIT09ICdUYWJsZSd9XCIgOiBcInRydWVcIjtcblx0Y29uc3QgYWxsb3dlZFRyYW5zZm9ybWF0aW9ucyA9IGFnZ3JlZ2F0aW9uSGVscGVyLmdldEFsbG93ZWRUcmFuc2Zvcm1hdGlvbnMoKTtcblx0bUFwcGx5U3VwcG9ydGVkLmVuYWJsZVNlYXJjaCA9IGFsbG93ZWRUcmFuc2Zvcm1hdGlvbnMgPyBhbGxvd2VkVHJhbnNmb3JtYXRpb25zLmluZGV4T2YoXCJzZWFyY2hcIikgPj0gMCA6IHRydWU7XG5cdGxldCBxdWFsaWZpZXIgPSBcIlwiO1xuXHRpZiAoY2hhcnRBbm5vdGF0aW9uLmZ1bGx5UXVhbGlmaWVkTmFtZS5zcGxpdChcIiNcIikubGVuZ3RoID4gMSkge1xuXHRcdHF1YWxpZmllciA9IGNoYXJ0QW5ub3RhdGlvbi5mdWxseVF1YWxpZmllZE5hbWUuc3BsaXQoXCIjXCIpWzFdO1xuXHR9XG5cdHJldHVybiB7XG5cdFx0dHlwZTogVmlzdWFsaXphdGlvblR5cGUuQ2hhcnQsXG5cdFx0aWQ6IHF1YWxpZmllclxuXHRcdFx0PyBnZXRDaGFydElEKGlzRW50aXR5U2V0ID8gZW50aXR5TmFtZSA6IG5hdmlnYXRpb25Qcm9wZXJ0eVBhdGgsIHF1YWxpZmllciwgVmlzdWFsaXphdGlvblR5cGUuQ2hhcnQpXG5cdFx0XHQ6IGdldENoYXJ0SUQoaXNFbnRpdHlTZXQgPyBlbnRpdHlOYW1lIDogbmF2aWdhdGlvblByb3BlcnR5UGF0aCwgVmlzdWFsaXphdGlvblR5cGUuQ2hhcnQpLFxuXHRcdGNvbGxlY3Rpb246IGdldFRhcmdldE9iamVjdFBhdGgoY29udmVydGVyQ29udGV4dC5nZXREYXRhTW9kZWxPYmplY3RQYXRoKCkpLFxuXHRcdGVudGl0eU5hbWU6IGVudGl0eU5hbWUsXG5cdFx0cGVyc29uYWxpemF0aW9uOiBnZXRQMTNuTW9kZSh2aXN1YWxpemF0aW9uUGF0aCwgY29udmVydGVyQ29udGV4dCksXG5cdFx0bmF2aWdhdGlvblBhdGg6IG5hdmlnYXRpb25Qcm9wZXJ0eVBhdGgsXG5cdFx0YW5ub3RhdGlvblBhdGg6IGNvbnZlcnRlckNvbnRleHQuZ2V0QWJzb2x1dGVBbm5vdGF0aW9uUGF0aCh2aXN1YWxpemF0aW9uUGF0aCksXG5cdFx0ZmlsdGVySWQ6IHNGaWx0ZXJiYXJJZCxcblx0XHR2aXpQcm9wZXJ0aWVzOiBKU09OLnN0cmluZ2lmeShvVml6UHJvcGVydGllcyksXG5cdFx0YWN0aW9uczogY2hhcnRBY3Rpb25zLmFjdGlvbnMsXG5cdFx0Y29tbWFuZEFjdGlvbnM6IGNoYXJ0QWN0aW9ucy5jb21tYW5kQWN0aW9ucyxcblx0XHR0aXRsZTogdGl0bGUsXG5cdFx0YXV0b0JpbmRPbkluaXQ6IGF1dG9CaW5kT25Jbml0LFxuXHRcdG9uU2VnbWVudGVkQnV0dG9uUHJlc3NlZDogb25TZWdtZW50ZWRCdXR0b25QcmVzc2VkLFxuXHRcdHZpc2libGU6IHZpc2libGUsXG5cdFx0Y3VzdG9tQWdnOiBtQ3VzdG9tQWdncmVnYXRlcyxcblx0XHR0cmFuc0FnZzogbVRyYW5zQWdncmVnYXRpb25zLFxuXHRcdGFwcGx5U3VwcG9ydGVkOiBtQXBwbHlTdXBwb3J0ZWQsXG5cdFx0c2VsZWN0aW9uUHJlc2VudGF0aW9uVmFyaWFudFBhdGg6IG1TZWxlY3Rpb25QcmVzZW50YXRpb25WYXJpYW50UGF0aCxcblx0XHR2YXJpYW50TWFuYWdlbWVudDogZmluZFZhcmlhbnRNYW5hZ2VtZW50KHAxM25Nb2RlLCB2YXJpYW50TWFuYWdlbWVudClcblx0fTtcbn1cbi8qKlxuICogTWV0aG9kIHRvIGRldGVybWluZSB0aGUgdmFyaWFudCBtYW5hZ2VtZW50LlxuICpcbiAqIEBwYXJhbSBwMTNuTW9kZVxuICogQHBhcmFtIHZhcmlhbnRNYW5hZ2VtZW50XG4gKiBAcmV0dXJucyBUaGUgdmFyaWFudCBtYW5hZ2VtZW50IGZvciB0aGUgY2hhcnRcbiAqL1xuZnVuY3Rpb24gZmluZFZhcmlhbnRNYW5hZ2VtZW50KHAxM25Nb2RlOiBzdHJpbmcgfCB1bmRlZmluZWQsIHZhcmlhbnRNYW5hZ2VtZW50OiBWYXJpYW50TWFuYWdlbWVudFR5cGUpIHtcblx0cmV0dXJuIHZhcmlhbnRNYW5hZ2VtZW50ID09PSBcIkNvbnRyb2xcIiAmJiAhcDEzbk1vZGUgPyBWYXJpYW50TWFuYWdlbWVudFR5cGUuTm9uZSA6IHZhcmlhbnRNYW5hZ2VtZW50O1xufVxuXG4vKipcbiAqIE1ldGhvZCB0byBnZXQgY29tcGlsZSBleHByZXNzaW9uIGZvciBEYXRhRmllbGRGb3JBY3Rpb24gYW5kIERhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbi5cbiAqXG4gKiBAcGFyYW0gZGF0YUZpZWxkXG4gKiBAcGFyYW0gY29udmVydGVyQ29udGV4dFxuICogQHJldHVybnMgQ29tcGlsZSBleHByZXNzaW9uIGZvciBEYXRhRmllbGRGb3JBY3Rpb24gYW5kIERhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvblxuICovXG5mdW5jdGlvbiBnZXRDb21waWxlRXhwcmVzc2lvbkZvckFjdGlvbihkYXRhRmllbGQ6IERhdGFGaWVsZEFic3RyYWN0VHlwZXMsIGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQpIHtcblx0cmV0dXJuIGNvbXBpbGVFeHByZXNzaW9uKFxuXHRcdG5vdChcblx0XHRcdGVxdWFsKFxuXHRcdFx0XHRnZXRFeHByZXNzaW9uRnJvbUFubm90YXRpb24oXG5cdFx0XHRcdFx0ZGF0YUZpZWxkLmFubm90YXRpb25zPy5VST8uSGlkZGVuLFxuXHRcdFx0XHRcdFtdLFxuXHRcdFx0XHRcdHVuZGVmaW5lZCxcblx0XHRcdFx0XHRjb252ZXJ0ZXJDb250ZXh0LmdldFJlbGF0aXZlTW9kZWxQYXRoRnVuY3Rpb24oKVxuXHRcdFx0XHQpLFxuXHRcdFx0XHR0cnVlXG5cdFx0XHQpXG5cdFx0KVxuXHQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQmxhbmtDaGFydFZpc3VhbGl6YXRpb24oY29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dCk6IENoYXJ0VmlzdWFsaXphdGlvbiB7XG5cdGNvbnN0IGhhc011bHRpcGxlVmlzdWFsaXphdGlvbnMgPVxuXHRcdGNvbnZlcnRlckNvbnRleHQuZ2V0TWFuaWZlc3RXcmFwcGVyKCkuaGFzTXVsdGlwbGVWaXN1YWxpemF0aW9ucygpIHx8XG5cdFx0Y29udmVydGVyQ29udGV4dC5nZXRUZW1wbGF0ZVR5cGUoKSA9PT0gVGVtcGxhdGVUeXBlLkFuYWx5dGljYWxMaXN0UGFnZTtcblx0Y29uc3QgZGF0YU1vZGVsUGF0aCA9IGNvbnZlcnRlckNvbnRleHQuZ2V0RGF0YU1vZGVsT2JqZWN0UGF0aCgpO1xuXHRjb25zdCBlbnRpdHlOYW1lID0gZGF0YU1vZGVsUGF0aC50YXJnZXRFbnRpdHlTZXQgPyBkYXRhTW9kZWxQYXRoLnRhcmdldEVudGl0eVNldC5uYW1lIDogZGF0YU1vZGVsUGF0aC5zdGFydGluZ0VudGl0eVNldC5uYW1lO1xuXG5cdGNvbnN0IHZpc3VhbGl6YXRpb246IENoYXJ0VmlzdWFsaXphdGlvbiA9IHtcblx0XHR0eXBlOiBWaXN1YWxpemF0aW9uVHlwZS5DaGFydCxcblx0XHRpZDogZ2V0Q2hhcnRJRChlbnRpdHlOYW1lLCBWaXN1YWxpemF0aW9uVHlwZS5DaGFydCksXG5cdFx0ZW50aXR5TmFtZTogZW50aXR5TmFtZSxcblx0XHR0aXRsZTogXCJcIixcblx0XHRjb2xsZWN0aW9uOiBcIlwiLFxuXHRcdHBlcnNvbmFsaXphdGlvbjogdW5kZWZpbmVkLFxuXHRcdG5hdmlnYXRpb25QYXRoOiBcIlwiLFxuXHRcdGFubm90YXRpb25QYXRoOiBcIlwiLFxuXHRcdHZpelByb3BlcnRpZXM6IEpTT04uc3RyaW5naWZ5KHtcblx0XHRcdGxlZ2VuZEdyb3VwOiB7XG5cdFx0XHRcdGxheW91dDoge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBcImJvdHRvbVwiXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9KSxcblx0XHRhY3Rpb25zOiBbXSxcblx0XHRjb21tYW5kQWN0aW9uczoge30sXG5cdFx0YXV0b0JpbmRPbkluaXQ6IGZhbHNlLFxuXHRcdG9uU2VnbWVudGVkQnV0dG9uUHJlc3NlZDogXCJcIixcblx0XHR2aXNpYmxlOiBoYXNNdWx0aXBsZVZpc3VhbGl6YXRpb25zID8gXCJ7PSAke3BhZ2VJbnRlcm5hbD5hbHBDb250ZW50Vmlld30gIT09ICdUYWJsZSd9XCIgOiBcInRydWVcIixcblx0XHRjdXN0b21BZ2c6IHt9LFxuXHRcdHRyYW5zQWdnOiB7fSxcblx0XHRhcHBseVN1cHBvcnRlZDoge1xuXHRcdFx0JFR5cGU6IFwiT3JnLk9EYXRhLkFnZ3JlZ2F0aW9uLlYxLkFwcGx5U3VwcG9ydGVkVHlwZVwiLFxuXHRcdFx0QWdncmVnYXRhYmxlUHJvcGVydGllczogW10sXG5cdFx0XHRHcm91cGFibGVQcm9wZXJ0aWVzOiBbXSxcblx0XHRcdGVuYWJsZVNlYXJjaDogZmFsc2Vcblx0XHR9LFxuXHRcdG11bHRpVmlld3M6IGZhbHNlLFxuXHRcdHZhcmlhbnRNYW5hZ2VtZW50OiBWYXJpYW50TWFuYWdlbWVudFR5cGUuTm9uZVxuXHR9O1xuXG5cdHJldHVybiB2aXN1YWxpemF0aW9uO1xufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBNERBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFDQSxTQUFTQSw4QkFBOEIsQ0FDdENDLGVBQXNCLEVBQ3RCQyxpQkFBeUIsRUFDekJDLGdCQUFrQyxFQUNuQjtJQUNmLE1BQU1DLFlBQTBCLEdBQUcsRUFBRTtJQUNyQyxJQUFJSCxlQUFlLEVBQUU7TUFDcEIsTUFBTUksUUFBUSxHQUFHSixlQUFlLENBQUNLLE9BQU8sSUFBSSxFQUFFO01BQzlDRCxRQUFRLENBQUNFLE9BQU8sQ0FBRUMsU0FB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
|
|
350
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRDaGFydEFjdGlvbnNGcm9tQW5ub3RhdGlvbnMiLCJjaGFydEFubm90YXRpb24iLCJ2aXN1YWxpemF0aW9uUGF0aCIsImNvbnZlcnRlckNvbnRleHQiLCJjaGFydEFjdGlvbnMiLCJhQWN0aW9ucyIsIkFjdGlvbnMiLCJmb3JFYWNoIiwiZGF0YUZpZWxkIiwiY2hhcnRBY3Rpb24iLCJpc0RhdGFGaWVsZEZvckFjdGlvbkFic3RyYWN0IiwiSW5saW5lIiwiRGV0ZXJtaW5pbmciLCJrZXkiLCJLZXlIZWxwZXIiLCJnZW5lcmF0ZUtleUZyb21EYXRhRmllbGQiLCIkVHlwZSIsIkFjdGlvblRhcmdldCIsImlzQm91bmQiLCJ0eXBlIiwiQWN0aW9uVHlwZSIsIkRhdGFGaWVsZEZvckFjdGlvbiIsImFubm90YXRpb25QYXRoIiwiZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aCIsImZ1bGx5UXVhbGlmaWVkTmFtZSIsInZpc2libGUiLCJnZXRDb21waWxlRXhwcmVzc2lvbkZvckFjdGlvbiIsIkRhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbiIsImlzTmF2aWdhYmxlIiwicHVzaCIsImdldENoYXJ0QWN0aW9ucyIsImFBbm5vdGF0aW9uQWN0aW9ucyIsIm1hbmlmZXN0QWN0aW9ucyIsImdldEFjdGlvbnNGcm9tTWFuaWZlc3QiLCJnZXRNYW5pZmVzdENvbnRyb2xDb25maWd1cmF0aW9uIiwiYWN0aW9ucyIsImFjdGlvbk92ZXJ3cml0ZUNvbmZpZyIsImVuYWJsZWQiLCJPdmVycmlkZVR5cGUiLCJvdmVyd3JpdGUiLCJlbmFibGVPblNlbGVjdCIsImNvbW1hbmQiLCJpbnNlcnRDdXN0b21FbGVtZW50cyIsImNvbW1hbmRBY3Rpb25zIiwiZ2V0UDEzbk1vZGUiLCJtYW5pZmVzdFdyYXBwZXIiLCJnZXRNYW5pZmVzdFdyYXBwZXIiLCJjaGFydE1hbmlmZXN0U2V0dGluZ3MiLCJ2YXJpYW50TWFuYWdlbWVudCIsImdldFZhcmlhbnRNYW5hZ2VtZW50IiwiYVBlcnNvbmFsaXphdGlvbiIsInBlcnNvbmFsaXphdGlvbiIsImNoYXJ0U2V0dGluZ3MiLCJpc0NvbnRyb2xWYXJpYW50IiwiVmFyaWFudE1hbmFnZW1lbnRUeXBlIiwiQ29udHJvbCIsInVuZGVmaW5lZCIsIml0ZW0iLCJzb3J0IiwiZmlsdGVyIiwiam9pbiIsImNoZWNrRm9yU1BWIiwidmlld0NvbmZpZ3VyYXRpb24iLCJpbmRleE9mIiwiZ2V0QWdncmVnYXRhYmxlUHJvcGVydGllc09iamVjdCIsImFnZ1Byb3AiLCJvYmoiLCJQcm9wZXJ0eSIsIiRQcm9wZXJ0eVBhdGgiLCJ2YWx1ZSIsIm5hbWUiLCJjcmVhdGVDaGFydFZpc3VhbGl6YXRpb24iLCJkb05vdENoZWNrQXBwbHlTdXBwb3J0ZWQiLCJpc0luc2lnaHRzRW5hYmxlZCIsImFnZ3JlZ2F0aW9uSGVscGVyIiwiQWdncmVnYXRpb25IZWxwZXIiLCJnZXRFbnRpdHlUeXBlIiwiaXNBbmFseXRpY3NTdXBwb3J0ZWQiLCJFcnJvciIsImFUcmFuc0FnZ3JlZ2F0aW9ucyIsImdldFRyYW5zQWdncmVnYXRpb25zIiwiYUN1c3RvbUFnZ3JlZ2F0ZXMiLCJnZXRDdXN0b21BZ2dyZWdhdGVEZWZpbml0aW9ucyIsInBhZ2VNYW5pZmVzdFNldHRpbmdzIiwicDEzbk1vZGUiLCJMb2ciLCJ3YXJuaW5nIiwibUN1c3RvbUFnZ3JlZ2F0ZXMiLCJtU2VsZWN0aW9uUHJlc2VudGF0aW9uVmFyaWFudFBhdGgiLCJlbnRpdHlUeXBlIiwiY3VzdG9tQWdncmVnYXRlIiwiYUNvbnRleHREZWZpbmluZ1Byb3BlcnRpZXMiLCJhbm5vdGF0aW9ucyIsIkFnZ3JlZ2F0aW9uIiwiQ29udGV4dERlZmluaW5nUHJvcGVydGllcyIsInF1YWxpZmllciIsInJlbGF0ZWRDdXN0b21BZ2dyZWdhdGVQcm9wZXJ0eSIsImVudGl0eVByb3BlcnRpZXMiLCJmaW5kIiwicHJvcGVydHkiLCJsYWJlbCIsIkNvbW1vbiIsIkxhYmVsIiwidG9TdHJpbmciLCJzb3J0YWJsZSIsInNvcnRPcmRlciIsImNvbnRleHREZWZpbmluZ1Byb3BlcnR5IiwibWFwIiwib0N0eERlZlByb3BlcnR5IiwibVRyYW5zQWdncmVnYXRpb25zIiwib1Jlc291cmNlQnVuZGxlQ29yZSIsIkNvcmUiLCJnZXRMaWJyYXJ5UmVzb3VyY2VCdW5kbGUiLCJpIiwibGVuZ3RoIiwiTmFtZSIsInByb3BlcnR5UGF0aCIsIkFnZ3JlZ2F0YWJsZVByb3BlcnR5IiwidmFsdWVPZiIsImFnZ3JlZ2F0aW9uTWV0aG9kIiwiQWdncmVnYXRpb25NZXRob2QiLCJnZXRUZXh0IiwiY3VzdG9tIiwiYUFnZ1Byb3BzIiwiZ2V0QWdncmVnYXRhYmxlUHJvcGVydGllcyIsImFHcnBQcm9wcyIsImdldEdyb3VwYWJsZVByb3BlcnRpZXMiLCJtQXBwbHlTdXBwb3J0ZWQiLCJBZ2dyZWdhdGFibGVQcm9wZXJ0aWVzIiwiR3JvdXBhYmxlUHJvcGVydGllcyIsInByb3AiLCJuYXZpZ2F0aW9uUHJvcGVydHlQYXRoIiwic3BsaXQiLCJsYXN0SW5kZXhPZiIsInN1YnN0ciIsInRpdGxlIiwiVGl0bGUiLCJkYXRhTW9kZWxQYXRoIiwiZ2V0RGF0YU1vZGVsT2JqZWN0UGF0aCIsImlzRW50aXR5U2V0IiwiZW50aXR5TmFtZSIsInRhcmdldEVudGl0eVNldCIsInN0YXJ0aW5nRW50aXR5U2V0Iiwic0ZpbHRlcmJhcklkIiwiZ2V0RmlsdGVyQmFySUQiLCJnZXRDb250ZXh0UGF0aCIsIm9WaXpQcm9wZXJ0aWVzIiwibGVnZW5kR3JvdXAiLCJsYXlvdXQiLCJwb3NpdGlvbiIsImF1dG9CaW5kT25Jbml0IiwiZ2V0VGVtcGxhdGVUeXBlIiwiVGVtcGxhdGVUeXBlIiwiT2JqZWN0UGFnZSIsIkxpc3RSZXBvcnQiLCJBbmFseXRpY2FsTGlzdFBhZ2UiLCJoYXNNdWx0aXBsZVZpc3VhbGl6YXRpb25zIiwib25TZWdtZW50ZWRCdXR0b25QcmVzc2VkIiwiYWxsb3dlZFRyYW5zZm9ybWF0aW9ucyIsImdldEFsbG93ZWRUcmFuc2Zvcm1hdGlvbnMiLCJlbmFibGVTZWFyY2giLCJWaXN1YWxpemF0aW9uVHlwZSIsIkNoYXJ0IiwiaWQiLCJnZXRDaGFydElEIiwiY29sbGVjdGlvbiIsImdldFRhcmdldE9iamVjdFBhdGgiLCJuYXZpZ2F0aW9uUGF0aCIsImdldEFic29sdXRlQW5ub3RhdGlvblBhdGgiLCJmaWx0ZXJJZCIsInZpelByb3BlcnRpZXMiLCJKU09OIiwic3RyaW5naWZ5IiwiY3VzdG9tQWdnIiwidHJhbnNBZ2ciLCJhcHBseVN1cHBvcnRlZCIsInNlbGVjdGlvblByZXNlbnRhdGlvblZhcmlhbnRQYXRoIiwiZmluZFZhcmlhbnRNYW5hZ2VtZW50IiwiZ2V0SW5zaWdodHNWaXNpYmlsaXR5IiwiTm9uZSIsImNvbXBpbGVFeHByZXNzaW9uIiwibm90IiwiZXF1YWwiLCJnZXRFeHByZXNzaW9uRnJvbUFubm90YXRpb24iLCJVSSIsIkhpZGRlbiIsImdldFJlbGF0aXZlTW9kZWxQYXRoRnVuY3Rpb24iLCJjcmVhdGVCbGFua0NoYXJ0VmlzdWFsaXphdGlvbiIsInZpc3VhbGl6YXRpb24iLCJtdWx0aVZpZXdzIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJDaGFydC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFByb3BlcnR5IH0gZnJvbSBcIkBzYXAtdXgvdm9jYWJ1bGFyaWVzLXR5cGVzXCI7XG5pbXBvcnQgdHlwZSB7IEFnZ3JlZ2F0YWJsZVByb3BlcnR5VHlwZSwgQWdncmVnYXRpb25NZXRob2QgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvdm9jYWJ1bGFyaWVzL0FnZ3JlZ2F0aW9uXCI7XG5pbXBvcnQgeyBBZ2dyZWdhdGlvbkFubm90YXRpb25UeXBlcyB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlcy92b2NhYnVsYXJpZXMvQWdncmVnYXRpb25cIjtcbmltcG9ydCB7IENoYXJ0LCBEYXRhRmllbGRBYnN0cmFjdFR5cGVzLCBVSUFubm90YXRpb25UZXJtcywgVUlBbm5vdGF0aW9uVHlwZXMgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvdm9jYWJ1bGFyaWVzL1VJXCI7XG5pbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCB7IGlzRGF0YUZpZWxkRm9yQWN0aW9uQWJzdHJhY3QgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9hbm5vdGF0aW9ucy9EYXRhRmllbGRcIjtcbmltcG9ydCB0eXBlIHtcblx0QW5ub3RhdGlvbkFjdGlvbixcblx0QmFzZUFjdGlvbixcblx0Q29tYmluZWRBY3Rpb24sXG5cdEN1c3RvbUFjdGlvbixcblx0T3ZlcnJpZGVUeXBlQWN0aW9uXG59IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL2NvbnRyb2xzL0NvbW1vbi9BY3Rpb25cIjtcbmltcG9ydCB7IGdldEFjdGlvbnNGcm9tTWFuaWZlc3QgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9jb250cm9scy9Db21tb24vQWN0aW9uXCI7XG5pbXBvcnQgeyBpbnNlcnRDdXN0b21FbGVtZW50cywgT3ZlcnJpZGVUeXBlIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvaGVscGVycy9Db25maWd1cmFibGVPYmplY3RcIjtcbmltcG9ydCB7IEtleUhlbHBlciB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL2hlbHBlcnMvS2V5XCI7XG5pbXBvcnQgeyBjb21waWxlRXhwcmVzc2lvbiwgZXF1YWwsIGdldEV4cHJlc3Npb25Gcm9tQW5ub3RhdGlvbiwgbm90IH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvQmluZGluZ1Rvb2xraXRcIjtcbmltcG9ydCB7IGdldFRhcmdldE9iamVjdFBhdGggfSBmcm9tIFwic2FwL2ZlL2NvcmUvdGVtcGxhdGluZy9EYXRhTW9kZWxQYXRoSGVscGVyXCI7XG5pbXBvcnQgQ29yZSBmcm9tIFwic2FwL3VpL2NvcmUvQ29yZVwiO1xuaW1wb3J0IHR5cGUgQ29udmVydGVyQ29udGV4dCBmcm9tIFwiLi4vLi4vQ29udmVydGVyQ29udGV4dFwiO1xuaW1wb3J0IHsgQWdncmVnYXRpb25IZWxwZXIgfSBmcm9tIFwiLi4vLi4vaGVscGVycy9BZ2dyZWdhdGlvblwiO1xuaW1wb3J0IHsgZ2V0Q2hhcnRJRCwgZ2V0RmlsdGVyQmFySUQgfSBmcm9tIFwiLi4vLi4vaGVscGVycy9JRFwiO1xuaW1wb3J0IHsgZ2V0SW5zaWdodHNWaXNpYmlsaXR5IH0gZnJvbSBcIi4uLy4uL2hlbHBlcnMvSW5zaWdodHNIZWxwZXJzXCI7XG5pbXBvcnQgdHlwZSB7IENoYXJ0TWFuaWZlc3RDb25maWd1cmF0aW9uLCBWaWV3UGF0aENvbmZpZ3VyYXRpb24gfSBmcm9tIFwiLi4vLi4vTWFuaWZlc3RTZXR0aW5nc1wiO1xuaW1wb3J0IHsgQWN0aW9uVHlwZSwgVGVtcGxhdGVUeXBlLCBWYXJpYW50TWFuYWdlbWVudFR5cGUsIFZpc3VhbGl6YXRpb25UeXBlIH0gZnJvbSBcIi4uLy4uL01hbmlmZXN0U2V0dGluZ3NcIjtcbmltcG9ydCB0eXBlIE1hbmlmZXN0V3JhcHBlciBmcm9tIFwiLi4vLi4vTWFuaWZlc3RXcmFwcGVyXCI7XG5cbnR5cGUgQ2hhcnRBcHBseVN1cHBvcnRlZCA9IHtcblx0JFR5cGU6IHN0cmluZztcblx0ZW5hYmxlU2VhcmNoOiBib29sZWFuO1xuXHRBZ2dyZWdhdGFibGVQcm9wZXJ0aWVzOiB1bmtub3duW107XG5cdEdyb3VwYWJsZVByb3BlcnRpZXM6IHVua25vd25bXTtcbn07XG4vKipcbiAqIEB0eXBlZGVmIENoYXJ0VmlzdWFsaXphdGlvblxuICovXG5leHBvcnQgdHlwZSBDaGFydFZpc3VhbGl6YXRpb24gPSB7XG5cdHR5cGU6IFZpc3VhbGl6YXRpb25UeXBlLkNoYXJ0O1xuXHRpZDogc3RyaW5nO1xuXHRjb2xsZWN0aW9uOiBzdHJpbmc7XG5cdGVudGl0eU5hbWU6IHN0cmluZztcblx0cGVyc29uYWxpemF0aW9uPzogc3RyaW5nO1xuXHRuYXZpZ2F0aW9uUGF0aDogc3RyaW5nO1xuXHRhbm5vdGF0aW9uUGF0aDogc3RyaW5nO1xuXHRmaWx0ZXJJZD86IHN0cmluZztcblx0dml6UHJvcGVydGllczogc3RyaW5nO1xuXHRhY3Rpb25zOiBCYXNlQWN0aW9uW107XG5cdGNvbW1hbmRBY3Rpb25zOiBSZWNvcmQ8c3RyaW5nLCBDdXN0b21BY3Rpb24+O1xuXHR0aXRsZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXHRhdXRvQmluZE9uSW5pdDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblx0b25TZWdtZW50ZWRCdXR0b25QcmVzc2VkOiBzdHJpbmc7XG5cdHZpc2libGU6IHN0cmluZztcblx0Y3VzdG9tQWdnOiBvYmplY3Q7XG5cdHRyYW5zQWdnOiBvYmplY3Q7XG5cdGFwcGx5U3VwcG9ydGVkOiBDaGFydEFwcGx5U3VwcG9ydGVkO1xuXHRtdWx0aVZpZXdzPzogYm9vbGVhbjtcblx0dmFyaWFudE1hbmFnZW1lbnQ6IFZhcmlhbnRNYW5hZ2VtZW50VHlwZTtcblx0c2VsZWN0aW9uUHJlc2VudGF0aW9uVmFyaWFudFBhdGg/OiBzdHJpbmc7XG5cdGlzSW5zaWdodHNFbmFibGVkPzogYm9vbGVhbjtcbn07XG5cbi8qKlxuICogTWV0aG9kIHRvIHJldHJpZXZlIGFsbCBjaGFydCBhY3Rpb25zIGZyb20gYW5ub3RhdGlvbnMuXG4gKlxuICogQHBhcmFtIGNoYXJ0QW5ub3RhdGlvblxuICogQHBhcmFtIHZpc3VhbGl6YXRpb25QYXRoXG4gKiBAcGFyYW0gY29udmVydGVyQ29udGV4dFxuICogQHJldHVybnMgVGhlIGNoYXJ0IGFjdGlvbnMgZnJvbSB0aGUgYW5ub3RhdGlvblxuICovXG5mdW5jdGlvbiBnZXRDaGFydEFjdGlvbnNGcm9tQW5ub3RhdGlvbnMoXG5cdGNoYXJ0QW5ub3RhdGlvbjogQ2hhcnQsXG5cdHZpc3VhbGl6YXRpb25QYXRoOiBzdHJpbmcsXG5cdGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHRcbik6IEJhc2VBY3Rpb25bXSB7XG5cdGNvbnN0IGNoYXJ0QWN0aW9uczogQmFzZUFjdGlvbltdID0gW107XG5cdGlmIChjaGFydEFubm90YXRpb24pIHtcblx0XHRjb25zdCBhQWN0aW9ucyA9IGNoYXJ0QW5ub3RhdGlvbi5BY3Rpb25zIHx8IFtdO1xuXHRcdGFBY3Rpb25zLmZvckVhY2goKGRhdGFGaWVsZDogRGF0YUZpZWxkQWJzdHJhY3RUeXBlcykgPT4ge1xuXHRcdFx0bGV0IGNoYXJ0QWN0aW9uOiBBbm5vdGF0aW9uQWN0aW9uIHwgdW5kZWZpbmVkO1xuXHRcdFx0aWYgKGlzRGF0YUZpZWxkRm9yQWN0aW9uQWJzdHJhY3QoZGF0YUZpZWxkKSAmJiAhZGF0YUZpZWxkLklubGluZSAmJiAhZGF0YUZpZWxkLkRldGVybWluaW5nKSB7XG5cdFx0XHRcdGNvbnN0IGtleSA9IEtleUhlbHBlci5nZW5lcmF0ZUtleUZyb21EYXRhRmllbGQoZGF0YUZpZWxkKTtcblx0XHRcdFx0c3dpdGNoIChkYXRhRmllbGQuJFR5cGUpIHtcblx0XHRcdFx0XHRjYXNlIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZEZvckFjdGlvbjpcblx0XHRcdFx0XHRcdGlmICghZGF0YUZpZWxkLkFjdGlvblRhcmdldD8uaXNCb3VuZCkge1xuXHRcdFx0XHRcdFx0XHRjaGFydEFjdGlvbiA9IHtcblx0XHRcdFx0XHRcdFx0XHR0eXBlOiBBY3Rpb25UeXBlLkRhdGFGaWVsZEZvckFjdGlvbixcblx0XHRcdFx0XHRcdFx0XHRhbm5vdGF0aW9uUGF0aDogY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlTZXRCYXNlZEFubm90YXRpb25QYXRoKGRhdGFGaWVsZC5mdWxseVF1YWxpZmllZE5hbWUpLFxuXHRcdFx0XHRcdFx0XHRcdGtleToga2V5LFxuXHRcdFx0XHRcdFx0XHRcdHZpc2libGU6IGdldENvbXBpbGVFeHByZXNzaW9uRm9yQWN0aW9uKGRhdGFGaWVsZCwgY29udmVydGVyQ29udGV4dClcblx0XHRcdFx0XHRcdFx0fTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdGJyZWFrO1xuXG5cdFx0XHRcdFx0Y2FzZSBVSUFubm90YXRpb25UeXBlcy5EYXRhRmllbGRGb3JJbnRlbnRCYXNlZE5hdmlnYXRpb246XG5cdFx0XHRcdFx0XHRjaGFydEFjdGlvbiA9IHtcblx0XHRcdFx0XHRcdFx0dHlwZTogQWN0aW9uVHlwZS5EYXRhRmllbGRGb3JJbnRlbnRCYXNlZE5hdmlnYXRpb24sXG5cdFx0XHRcdFx0XHRcdGFubm90YXRpb25QYXRoOiBjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVNldEJhc2VkQW5ub3RhdGlvblBhdGgoZGF0YUZpZWxkLmZ1bGx5UXVhbGlmaWVkTmFtZSksXG5cdFx0XHRcdFx0XHRcdGtleToga2V5LFxuXHRcdFx0XHRcdFx0XHR2aXNpYmxlOiBnZXRDb21waWxlRXhwcmVzc2lvbkZvckFjdGlvbihkYXRhRmllbGQsIGNvbnZlcnRlckNvbnRleHQpLFxuXHRcdFx0XHRcdFx0XHRpc05hdmlnYWJsZTogdHJ1ZVxuXHRcdFx0XHRcdFx0fTtcblx0XHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRpZiAoY2hhcnRBY3Rpb24pIHtcblx0XHRcdFx0Y2hhcnRBY3Rpb25zLnB1c2goY2hhcnRBY3Rpb24pO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG5cdHJldHVybiBjaGFydEFjdGlvbnM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDaGFydEFjdGlvbnMoY2hhcnRBbm5vdGF0aW9uOiBDaGFydCwgdmlzdWFsaXphdGlvblBhdGg6IHN0cmluZywgY29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dCk6IENvbWJpbmVkQWN0aW9uIHtcblx0Y29uc3QgYUFubm90YXRpb25BY3Rpb25zOiBCYXNlQWN0aW9uW10gPSBnZXRDaGFydEFjdGlvbnNGcm9tQW5ub3RhdGlvbnMoY2hhcnRBbm5vdGF0aW9uLCB2aXN1YWxpemF0aW9uUGF0aCwgY29udmVydGVyQ29udGV4dCk7XG5cdGNvbnN0IG1hbmlmZXN0QWN0aW9ucyA9IGdldEFjdGlvbnNGcm9tTWFuaWZlc3QoXG5cdFx0Y29udmVydGVyQ29udGV4dC5nZXRNYW5pZmVzdENvbnRyb2xDb25maWd1cmF0aW9uKHZpc3VhbGl6YXRpb25QYXRoKS5hY3Rpb25zLFxuXHRcdGNvbnZlcnRlckNvbnRleHQsXG5cdFx0YUFubm90YXRpb25BY3Rpb25zXG5cdCk7XG5cdGNvbnN0IGFjdGlvbk92ZXJ3cml0ZUNvbmZpZzogT3ZlcnJpZGVUeXBlQWN0aW9uID0ge1xuXHRcdGVuYWJsZWQ6IE92ZXJyaWRlVHlwZS5vdmVyd3JpdGUsXG5cdFx0ZW5hYmxlT25TZWxlY3Q6IE92ZXJyaWRlVHlwZS5vdmVyd3JpdGUsXG5cdFx0dmlzaWJsZTogT3ZlcnJpZGVUeXBlLm92ZXJ3cml0ZSxcblx0XHRjb21tYW5kOiBPdmVycmlkZVR5cGUub3ZlcndyaXRlXG5cdH07XG5cdGNvbnN0IGNoYXJ0QWN0aW9ucyA9IGluc2VydEN1c3RvbUVsZW1lbnRzKGFBbm5vdGF0aW9uQWN0aW9ucywgbWFuaWZlc3RBY3Rpb25zLmFjdGlvbnMsIGFjdGlvbk92ZXJ3cml0ZUNvbmZpZyk7XG5cdHJldHVybiB7XG5cdFx0YWN0aW9uczogY2hhcnRBY3Rpb25zLFxuXHRcdGNvbW1hbmRBY3Rpb25zOiBtYW5pZmVzdEFjdGlvbnMuY29tbWFuZEFjdGlvbnNcblx0fTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFAxM25Nb2RlKHZpc3VhbGl6YXRpb25QYXRoOiBzdHJpbmcsIGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuXHRjb25zdCBtYW5pZmVzdFdyYXBwZXI6IE1hbmlmZXN0V3JhcHBlciA9IGNvbnZlcnRlckNvbnRleHQuZ2V0TWFuaWZlc3RXcmFwcGVyKCk7XG5cdGNvbnN0IGNoYXJ0TWFuaWZlc3RTZXR0aW5nczogQ2hhcnRNYW5pZmVzdENvbmZpZ3VyYXRpb24gPSBjb252ZXJ0ZXJDb250ZXh0LmdldE1hbmlmZXN0Q29udHJvbENvbmZpZ3VyYXRpb24odmlzdWFsaXphdGlvblBhdGgpO1xuXHRjb25zdCB2YXJpYW50TWFuYWdlbWVudDogVmFyaWFudE1hbmFnZW1lbnRUeXBlID0gbWFuaWZlc3RXcmFwcGVyLmdldFZhcmlhbnRNYW5hZ2VtZW50KCk7XG5cdGNvbnN0IGFQZXJzb25hbGl6YXRpb246IHN0cmluZ1tdID0gW107XG5cdC8vIFBlcnNvbmFsaXphdGlvbiBjb25maWd1cmVkIGluIG1hbmlmZXN0LlxuXHRjb25zdCBwZXJzb25hbGl6YXRpb246IGFueSA9IGNoYXJ0TWFuaWZlc3RTZXR0aW5ncz8uY2hhcnRTZXR0aW5ncz8ucGVyc29uYWxpemF0aW9uO1xuXHRjb25zdCBpc0NvbnRyb2xWYXJpYW50ID0gdmFyaWFudE1hbmFnZW1lbnQgPT09IFZhcmlhbnRNYW5hZ2VtZW50VHlwZS5Db250cm9sID8gdHJ1ZSA6IGZhbHNlO1xuXHQvLyBpZiBwZXJzb25hbGl6YXRpb24gaXMgc2V0IHRvIGZhbHNlIGRvIG5vdCBzaG93IGFueSBvcHRpb25cblx0aWYgKChwZXJzb25hbGl6YXRpb24gIT09IHVuZGVmaW5lZCAmJiAhcGVyc29uYWxpemF0aW9uKSB8fCBwZXJzb25hbGl6YXRpb24gPT0gXCJmYWxzZVwiKSB7XG5cdFx0cmV0dXJuIHVuZGVmaW5lZDtcblx0fVxuXHRzd2l0Y2ggKHRydWUpIHtcblx0XHRjYXNlIHR5cGVvZiBwZXJzb25hbGl6YXRpb24gPT09IFwib2JqZWN0XCI6XG5cdFx0XHQvLyBTcGVjaWZpYyBwZXJzb25hbGl6YXRpb24gb3B0aW9ucyBlbmFibGVkIGluIG1hbmlmZXN0LiBVc2UgdGhlbSBhcyBpcy5cblx0XHRcdGlmIChwZXJzb25hbGl6YXRpb24udHlwZSkge1xuXHRcdFx0XHRhUGVyc29uYWxpemF0aW9uLnB1c2goXCJUeXBlXCIpO1xuXHRcdFx0fVxuXHRcdFx0aWYgKHBlcnNvbmFsaXphdGlvbi5pdGVtKSB7XG5cdFx0XHRcdGFQZXJzb25hbGl6YXRpb24ucHVzaChcIkl0ZW1cIik7XG5cdFx0XHR9XG5cdFx0XHRpZiAocGVyc29uYWxpemF0aW9uLnNvcnQpIHtcblx0XHRcdFx0YVBlcnNvbmFsaXphdGlvbi5wdXNoKFwiU29ydFwiKTtcblx0XHRcdH1cblx0XHRcdGlmIChwZXJzb25hbGl6YXRpb24uZmlsdGVyKSB7XG5cdFx0XHRcdGFQZXJzb25hbGl6YXRpb24ucHVzaChcIkZpbHRlclwiKTtcblx0XHRcdH1cblx0XHRcdHJldHVybiBhUGVyc29uYWxpemF0aW9uLmpvaW4oXCIsXCIpO1xuXHRcdGNhc2UgaXNDb250cm9sVmFyaWFudDpcblx0XHRjYXNlICEhcGVyc29uYWxpemF0aW9uOlxuXHRcdFx0Ly8gbWFuaWZlc3QgaGFzIHBlcnNvbmFsaXphdGlvbiBjb25maWd1cmVkLCBjaGVjayBpZiBpdCdzIHRydWVcblx0XHRcdC8vIGlmIG1hbmlmZXN0IGRvZXNuJ3QgaGF2ZSBwZXJzb25hbGl6YXRpb24sIGNoZWNrIGZvciB2YXJpYW50IG1hbmFnZW1lbnQgaXMgc2V0IHRvIGNvbnRyb2xcblx0XHRcdHJldHVybiBcIlNvcnQsVHlwZSxJdGVtLEZpbHRlclwiO1xuXHRcdGRlZmF1bHQ6XG5cdFx0XHQvLyBpZiBtYW5pZmVzdCBkb2Vzbid0IGhhdmUgcGVyc29uYWxpemF0aW9uLCBzaG93IGRlZmF1bHQgb3B0aW9ucyB3aXRob3V0IGZpbHRlclxuXHRcdFx0cmV0dXJuIFwiU29ydCxUeXBlLEl0ZW1cIjtcblx0fVxufVxuZXhwb3J0IHR5cGUgQ2hhcnRDdXN0b21BZ2dyZWdhdGUgPSB7XG5cdG5hbWU6IHN0cmluZztcblx0bGFiZWw6IHN0cmluZztcblx0c29ydGFibGU6IGJvb2xlYW47XG5cdHNvcnRPcmRlcjogXCJib3RoXCI7XG5cdGNvbnRleHREZWZpbmluZ1Byb3BlcnR5OiBzdHJpbmdbXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRyYW5zQWdnID0ge1xuXHRuYW1lOiBzdHJpbmc7XG5cdHByb3BlcnR5UGF0aDogc3RyaW5nO1xuXHRhZ2dyZWdhdGlvbk1ldGhvZDogQWdncmVnYXRpb25NZXRob2Q7XG5cdGxhYmVsOiBzdHJpbmc7XG5cdHNvcnRhYmxlOiBib29sZWFuO1xuXHRzb3J0T3JkZXI6IFwiYm90aFwiO1xuXHRjdXN0b206IGJvb2xlYW47XG59O1xuLy8gY2hlY2sgaWYgYW5ub2F0YXRpb24gcGF0aCBoYXMgU1BWIGFuZCBzdG9yZSB0aGUgcGF0aFxuZnVuY3Rpb24gY2hlY2tGb3JTUFYodmlld0NvbmZpZ3VyYXRpb246IFZpZXdQYXRoQ29uZmlndXJhdGlvbiB8IHVuZGVmaW5lZCkge1xuXHRyZXR1cm4gdmlld0NvbmZpZ3VyYXRpb24/LmFubm90YXRpb25QYXRoPy5pbmRleE9mKGBAJHtVSUFubm90YXRpb25UZXJtcy5TZWxlY3Rpb25QcmVzZW50YXRpb25WYXJpYW50fWApICE9PSAtMVxuXHRcdD8gdmlld0NvbmZpZ3VyYXRpb24/LmFubm90YXRpb25QYXRoXG5cdFx0OiB1bmRlZmluZWQ7XG59XG5mdW5jdGlvbiBnZXRBZ2dyZWdhdGFibGVQcm9wZXJ0aWVzT2JqZWN0KGFnZ1Byb3A6IEFnZ3JlZ2F0YWJsZVByb3BlcnR5VHlwZSB8IFByb3BlcnR5KSB7XG5cdGxldCBvYmo7XG5cdGlmICgoYWdnUHJvcCBhcyBBZ2dyZWdhdGFibGVQcm9wZXJ0eVR5cGUpPy5Qcm9wZXJ0eSkge1xuXHRcdG9iaiA9IHtcblx0XHRcdFByb3BlcnR5OiB7XG5cdFx0XHRcdCRQcm9wZXJ0eVBhdGg6IChhZ2dQcm9wIGFzIEFnZ3JlZ2F0YWJsZVByb3BlcnR5VHlwZSk/LlByb3BlcnR5Py52YWx1ZVxuXHRcdFx0fVxuXHRcdH07XG5cdH0gZWxzZSB7XG5cdFx0b2JqID0ge1xuXHRcdFx0UHJvcGVydHk6IHtcblx0XHRcdFx0JFByb3BlcnR5UGF0aDogKGFnZ1Byb3AgYXMgUHJvcGVydHkpPy5uYW1lXG5cdFx0XHR9XG5cdFx0fTtcblx0fVxuXHRyZXR1cm4gb2JqO1xufVxuLyoqXG4gKiBDcmVhdGUgdGhlIENoYXJ0VmlzdWFsaXphdGlvbiBjb25maWd1cmF0aW9uIHRoYXQgd2lsbCBiZSB1c2VkIHRvIGRpc3BsYXkgYSBjaGFydCB1c2luZyB0aGUgQ2hhcnQgYnVpbGRpbmcgYmxvY2suXG4gKlxuICogQHBhcmFtIGNoYXJ0QW5ub3RhdGlvbiBUaGUgdGFyZ2V0ZWQgY2hhcnQgYW5ub3RhdGlvblxuICogQHBhcmFtIHZpc3VhbGl6YXRpb25QYXRoIFRoZSBwYXRoIG9mIHRoZSB2aXN1YWxpemF0aW9uIGFubm90YXRpb25cbiAqIEBwYXJhbSBjb252ZXJ0ZXJDb250ZXh0IFRoZSBjb252ZXJ0ZXIgY29udGV4dFxuICogQHBhcmFtIGRvTm90Q2hlY2tBcHBseVN1cHBvcnRlZCBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgQXBwbHlTdXBwb3J0ZWQgbmVlZHMgdG8gYmUgY2hlY2tlZCBvciBub3RcbiAqIEBwYXJhbSB2aWV3Q29uZmlndXJhdGlvblxuICogQHBhcmFtIGlzSW5zaWdodHNFbmFibGVkIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciBpbnNpZ2h0cyBlbmFibGVkXG4gKiBAcmV0dXJucyBUaGUgY2hhcnQgdmlzdWFsaXphdGlvbiBiYXNlZCBvbiB0aGUgYW5ub3RhdGlvblxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQ2hhcnRWaXN1YWxpemF0aW9uKFxuXHRjaGFydEFubm90YXRpb246IENoYXJ0LFxuXHR2aXN1YWxpemF0aW9uUGF0aDogc3RyaW5nLFxuXHRjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0LFxuXHRkb05vdENoZWNrQXBwbHlTdXBwb3J0ZWQ/OiBib29sZWFuLFxuXHR2aWV3Q29uZmlndXJhdGlvbj86IFZpZXdQYXRoQ29uZmlndXJhdGlvbixcblx0aXNJbnNpZ2h0c0VuYWJsZWQ/OiBib29sZWFuXG4pOiBDaGFydFZpc3VhbGl6YXRpb24ge1xuXHRjb25zdCBhZ2dyZWdhdGlvbkhlbHBlciA9IG5ldyBBZ2dyZWdhdGlvbkhlbHBlcihjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVR5cGUoKSwgY29udmVydGVyQ29udGV4dCwgdHJ1ZSk7IC8vIHBhc3NpbmcgdGhlIGxhc3QgcGFyYW1ldGVyIGFzIHRydWUgdG8gY29uc2lkZXIgdGhlIG9sZCBhbm5vdGF0aW9ucyBpLmUuIEFnZ3JlZ2F0aW9uLkFnZ3JlZ2F0YWJsZSBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBpbiBjYXNlIG9mIGNoYXJ0XG5cdGlmICghZG9Ob3RDaGVja0FwcGx5U3VwcG9ydGVkICYmICFhZ2dyZWdhdGlvbkhlbHBlci5pc0FuYWx5dGljc1N1cHBvcnRlZCgpKSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKFwiQXBwbHlTdXBwb3J0ZWQgaXMgbm90IGFkZGVkIHRvIHRoZSBhbm5vdGF0aW9uc1wiKTtcblx0fVxuXHRjb25zdCBhVHJhbnNBZ2dyZWdhdGlvbnMgPSBhZ2dyZWdhdGlvbkhlbHBlci5nZXRUcmFuc0FnZ3JlZ2F0aW9ucygpO1xuXHRjb25zdCBhQ3VzdG9tQWdncmVnYXRlcyA9IGFnZ3JlZ2F0aW9uSGVscGVyLmdldEN1c3RvbUFnZ3JlZ2F0ZURlZmluaXRpb25zKCk7XG5cdGNvbnN0IHBhZ2VNYW5pZmVzdFNldHRpbmdzOiBNYW5pZmVzdFdyYXBwZXIgPSBjb252ZXJ0ZXJDb250ZXh0LmdldE1hbmlmZXN0V3JhcHBlcigpO1xuXHRjb25zdCB2YXJpYW50TWFuYWdlbWVudDogVmFyaWFudE1hbmFnZW1lbnRUeXBlID0gcGFnZU1hbmlmZXN0U2V0dGluZ3MuZ2V0VmFyaWFudE1hbmFnZW1lbnQoKTtcblx0Y29uc3QgcDEzbk1vZGU6IHN0cmluZyB8IHVuZGVmaW5lZCA9IGdldFAxM25Nb2RlKHZpc3VhbGl6YXRpb25QYXRoLCBjb252ZXJ0ZXJDb250ZXh0KTtcblx0aWYgKHAxM25Nb2RlID09PSB1bmRlZmluZWQgJiYgdmFyaWFudE1hbmFnZW1lbnQgPT09IFwiQ29udHJvbFwiKSB7XG5cdFx0TG9nLndhcm5pbmcoXCJWYXJpYW50IE1hbmFnZW1lbnQgY2Fubm90IGJlIGVuYWJsZWQgd2hlbiBwZXJzb25hbGl6YXRpb24gaXMgZGlzYWJsZWRcIik7XG5cdH1cblx0Y29uc3QgbUN1c3RvbUFnZ3JlZ2F0ZXMgPSB7fSBhcyBhbnk7XG5cdC8vIGNoZWNrIGlmIGFubm9hdGF0aW9uIHBhdGggaGFzIFNQViBhbmQgc3RvcmUgdGhlIHBhdGhcblx0Y29uc3QgbVNlbGVjdGlvblByZXNlbnRhdGlvblZhcmlhbnRQYXRoOiBzdHJpbmcgfCB1bmRlZmluZWQgPSBjaGVja0ZvclNQVih2aWV3Q29uZmlndXJhdGlvbik7XG5cdGlmIChhQ3VzdG9tQWdncmVnYXRlcykge1xuXHRcdGNvbnN0IGVudGl0eVR5cGUgPSBhZ2dyZWdhdGlvbkhlbHBlci5nZXRFbnRpdHlUeXBlKCk7XG5cdFx0Zm9yIChjb25zdCBjdXN0b21BZ2dyZWdhdGUgb2YgYUN1c3RvbUFnZ3JlZ2F0ZXMpIHtcblx0XHRcdGNvbnN0IGFDb250ZXh0RGVmaW5pbmdQcm9wZXJ0aWVzID0gY3VzdG9tQWdncmVnYXRlPy5hbm5vdGF0aW9ucz8uQWdncmVnYXRpb24/LkNvbnRleHREZWZpbmluZ1Byb3BlcnRpZXM7XG5cdFx0XHRjb25zdCBxdWFsaWZpZXIgPSBjdXN0b21BZ2dyZWdhdGU/LnF1YWxpZmllcjtcblx0XHRcdGNvbnN0IHJlbGF0ZWRDdXN0b21BZ2dyZWdhdGVQcm9wZXJ0eSA9IHF1YWxpZmllciAmJiBlbnRpdHlUeXBlLmVudGl0eVByb3BlcnRpZXMuZmluZCgocHJvcGVydHkpID0+IHByb3BlcnR5Lm5hbWUgPT09IHF1YWxpZmllcik7XG5cdFx0XHRjb25zdCBsYWJlbCA9IHJlbGF0ZWRDdXN0b21BZ2dyZWdhdGVQcm9wZXJ0eSAmJiByZWxhdGVkQ3VzdG9tQWdncmVnYXRlUHJvcGVydHk/LmFubm90YXRpb25zPy5Db21tb24/LkxhYmVsPy50b1N0cmluZygpO1xuXHRcdFx0bUN1c3RvbUFnZ3JlZ2F0ZXNbcXVhbGlmaWVyXSA9IHtcblx0XHRcdFx0bmFtZTogcXVhbGlmaWVyLFxuXHRcdFx0XHRsYWJlbDogbGFiZWwgfHwgYEN1c3RvbSBBZ2dyZWdhdGUgKCR7cXVhbGlmaWVyfSlgLFxuXHRcdFx0XHRzb3J0YWJsZTogdHJ1ZSxcblx0XHRcdFx0c29ydE9yZGVyOiBcImJvdGhcIixcblx0XHRcdFx0Y29udGV4dERlZmluaW5nUHJvcGVydHk6IGFDb250ZXh0RGVmaW5pbmdQcm9wZXJ0aWVzXG5cdFx0XHRcdFx0PyBhQ29udGV4dERlZmluaW5nUHJvcGVydGllcy5tYXAoKG9DdHhEZWZQcm9wZXJ0eSkgPT4ge1xuXHRcdFx0XHRcdFx0XHRyZXR1cm4gb0N0eERlZlByb3BlcnR5LnZhbHVlO1xuXHRcdFx0XHRcdCAgfSlcblx0XHRcdFx0XHQ6IFtdXG5cdFx0XHR9O1xuXHRcdH1cblx0fVxuXG5cdGNvbnN0IG1UcmFuc0FnZ3JlZ2F0aW9uczogUmVjb3JkPHN0cmluZywgVHJhbnNBZ2c+ID0ge307XG5cdGNvbnN0IG9SZXNvdXJjZUJ1bmRsZUNvcmUgPSBDb3JlLmdldExpYnJhcnlSZXNvdXJjZUJ1bmRsZShcInNhcC5mZS5jb3JlXCIpO1xuXHRpZiAoYVRyYW5zQWdncmVnYXRpb25zKSB7XG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBhVHJhbnNBZ2dyZWdhdGlvbnMubGVuZ3RoOyBpKyspIHtcblx0XHRcdG1UcmFuc0FnZ3JlZ2F0aW9uc1thVHJhbnNBZ2dyZWdhdGlvbnNbaV0uTmFtZV0gPSB7XG5cdFx0XHRcdG5hbWU6IGFUcmFuc0FnZ3JlZ2F0aW9uc1tpXS5OYW1lLFxuXHRcdFx0XHRwcm9wZXJ0eVBhdGg6IGFUcmFuc0FnZ3JlZ2F0aW9uc1tpXS5BZ2dyZWdhdGFibGVQcm9wZXJ0eS52YWx1ZU9mKCkudmFsdWUsXG5cdFx0XHRcdGFnZ3JlZ2F0aW9uTWV0aG9kOiBhVHJhbnNBZ2dyZWdhdGlvbnNbaV0uQWdncmVnYXRpb25NZXRob2QsXG5cdFx0XHRcdGxhYmVsOiBhVHJhbnNBZ2dyZWdhdGlvbnNbaV0/LmFubm90YXRpb25zPy5Db21tb24/LkxhYmVsXG5cdFx0XHRcdFx0PyBhVHJhbnNBZ2dyZWdhdGlvbnNbaV0/LmFubm90YXRpb25zPy5Db21tb24/LkxhYmVsLnRvU3RyaW5nKClcblx0XHRcdFx0XHQ6IGAke29SZXNvdXJjZUJ1bmRsZUNvcmUuZ2V0VGV4dChcIkFHR1JFR0FUQUJMRV9QUk9QRVJUWVwiKX0gKCR7YVRyYW5zQWdncmVnYXRpb25zW2ldLk5hbWV9KWAsXG5cdFx0XHRcdHNvcnRhYmxlOiB0cnVlLFxuXHRcdFx0XHRzb3J0T3JkZXI6IFwiYm90aFwiLFxuXHRcdFx0XHRjdXN0b206IGZhbHNlXG5cdFx0XHR9O1xuXHRcdH1cblx0fVxuXG5cdGNvbnN0IGFBZ2dQcm9wcyA9IGFnZ3JlZ2F0aW9uSGVscGVyLmdldEFnZ3JlZ2F0YWJsZVByb3BlcnRpZXMoKTtcblx0Y29uc3QgYUdycFByb3BzID0gYWdncmVnYXRpb25IZWxwZXIuZ2V0R3JvdXBhYmxlUHJvcGVydGllcygpO1xuXHRjb25zdCBtQXBwbHlTdXBwb3J0ZWQgPSB7fSBhcyBDaGFydEFwcGx5U3VwcG9ydGVkO1xuXHRtQXBwbHlTdXBwb3J0ZWQuJFR5cGUgPSBBZ2dyZWdhdGlvbkFubm90YXRpb25UeXBlcy5BcHBseVN1cHBvcnRlZFR5cGU7XG5cdG1BcHBseVN1cHBvcnRlZC5BZ2dyZWdhdGFibGVQcm9wZXJ0aWVzID0gW107XG5cdG1BcHBseVN1cHBvcnRlZC5Hcm91cGFibGVQcm9wZXJ0aWVzID0gW107XG5cblx0aWYgKGFBZ2dQcm9wcykge1xuXHRcdG1BcHBseVN1cHBvcnRlZC5BZ2dyZWdhdGFibGVQcm9wZXJ0aWVzID0gYUFnZ1Byb3BzLm1hcCgocHJvcCkgPT4gZ2V0QWdncmVnYXRhYmxlUHJvcGVydGllc09iamVjdChwcm9wKSk7XG5cdH1cblxuXHRpZiAoYUdycFByb3BzKSB7XG5cdFx0bUFwcGx5U3VwcG9ydGVkLkdyb3VwYWJsZVByb3BlcnRpZXMgPSBhR3JwUHJvcHMubWFwKChwcm9wKSA9PiAoeyBbXCIkUHJvcGVydHlQYXRoXCJdOiBwcm9wLnZhbHVlIH0pKTtcblx0fVxuXG5cdGNvbnN0IGNoYXJ0QWN0aW9ucyA9IGdldENoYXJ0QWN0aW9ucyhjaGFydEFubm90YXRpb24sIHZpc3VhbGl6YXRpb25QYXRoLCBjb252ZXJ0ZXJDb250ZXh0KTtcblx0bGV0IFtuYXZpZ2F0aW9uUHJvcGVydHlQYXRoIC8qLCBhbm5vdGF0aW9uUGF0aCovXSA9IHZpc3VhbGl6YXRpb25QYXRoLnNwbGl0KFwiQFwiKTtcblx0aWYgKG5hdmlnYXRpb25Qcm9wZXJ0eVBhdGgubGFzdEluZGV4T2YoXCIvXCIpID09PSBuYXZpZ2F0aW9uUHJvcGVydHlQYXRoLmxlbmd0aCAtIDEpIHtcblx0XHQvLyBEcm9wIHRyYWlsaW5nIHNsYXNoXG5cdFx0bmF2aWdhdGlvblByb3BlcnR5UGF0aCA9IG5hdmlnYXRpb25Qcm9wZXJ0eVBhdGguc3Vic3RyKDAsIG5hdmlnYXRpb25Qcm9wZXJ0eVBhdGgubGVuZ3RoIC0gMSk7XG5cdH1cblx0Y29uc3QgdGl0bGUgPSBjaGFydEFubm90YXRpb24uVGl0bGU/LnRvU3RyaW5nKCkgfHwgXCJcIjsgLy8gcmVhZCB0aXRsZSBmcm9tIGNoYXJ0IGFubm90YXRpb25cblx0Y29uc3QgZGF0YU1vZGVsUGF0aCA9IGNvbnZlcnRlckNvbnRleHQuZ2V0RGF0YU1vZGVsT2JqZWN0UGF0aCgpO1xuXHRjb25zdCBpc0VudGl0eVNldDogYm9vbGVhbiA9IG5hdmlnYXRpb25Qcm9wZXJ0eVBhdGgubGVuZ3RoID09PSAwO1xuXHRjb25zdCBlbnRpdHlOYW1lOiBzdHJpbmcgPSBkYXRhTW9kZWxQYXRoLnRhcmdldEVudGl0eVNldCA/IGRhdGFNb2RlbFBhdGgudGFyZ2V0RW50aXR5U2V0Lm5hbWUgOiBkYXRhTW9kZWxQYXRoLnN0YXJ0aW5nRW50aXR5U2V0Lm5hbWU7XG5cdGNvbnN0IHNGaWx0ZXJiYXJJZCA9IGlzRW50aXR5U2V0ID8gZ2V0RmlsdGVyQmFySUQoY29udmVydGVyQ29udGV4dC5nZXRDb250ZXh0UGF0aCgpKSA6IHVuZGVmaW5lZDtcblx0Y29uc3Qgb1ZpelByb3BlcnRpZXMgPSB7XG5cdFx0bGVnZW5kR3JvdXA6IHtcblx0XHRcdGxheW91dDoge1xuXHRcdFx0XHRwb3NpdGlvbjogXCJib3R0b21cIlxuXHRcdFx0fVxuXHRcdH1cblx0fTtcblx0bGV0IGF1dG9CaW5kT25Jbml0OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXHRpZiAoY29udmVydGVyQ29udGV4dC5nZXRUZW1wbGF0ZVR5cGUoKSA9PT0gVGVtcGxhdGVUeXBlLk9iamVjdFBhZ2UpIHtcblx0XHRhdXRvQmluZE9uSW5pdCA9IHRydWU7XG5cdH0gZWxzZSBpZiAoXG5cdFx0Y29udmVydGVyQ29udGV4dC5nZXRUZW1wbGF0ZVR5cGUoKSA9PT0gVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQgfHxcblx0XHRjb252ZXJ0ZXJDb250ZXh0LmdldFRlbXBsYXRlVHlwZSgpID09PSBUZW1wbGF0ZVR5cGUuQW5hbHl0aWNhbExpc3RQYWdlXG5cdCkge1xuXHRcdGF1dG9CaW5kT25Jbml0ID0gZmFsc2U7XG5cdH1cblx0Y29uc3QgaGFzTXVsdGlwbGVWaXN1YWxpemF0aW9ucyA9XG5cdFx0Y29udmVydGVyQ29udGV4dC5nZXRNYW5pZmVzdFdyYXBwZXIoKS5oYXNNdWx0aXBsZVZpc3VhbGl6YXRpb25zKCkgfHxcblx0XHRjb252ZXJ0ZXJDb250ZXh0LmdldFRlbXBsYXRlVHlwZSgpID09PSBUZW1wbGF0ZVR5cGUuQW5hbHl0aWNhbExpc3RQYWdlO1xuXHRjb25zdCBvblNlZ21lbnRlZEJ1dHRvblByZXNzZWQgPSBoYXNNdWx0aXBsZVZpc3VhbGl6YXRpb25zID8gXCIuaGFuZGxlcnMub25TZWdtZW50ZWRCdXR0b25QcmVzc2VkXCIgOiBcIlwiO1xuXHRjb25zdCB2aXNpYmxlID0gaGFzTXVsdGlwbGVWaXN1YWxpemF0aW9ucyA/IFwiez0gJHtwYWdlSW50ZXJuYWw+YWxwQ29udGVudFZpZXd9ICE9PSAnVGFibGUnfVwiIDogXCJ0cnVlXCI7XG5cdGNvbnN0IGFsbG93ZWRUcmFuc2Zvcm1hdGlvbnMgPSBhZ2dyZWdhdGlvbkhlbHBlci5nZXRBbGxvd2VkVHJhbnNmb3JtYXRpb25zKCk7XG5cdG1BcHBseVN1cHBvcnRlZC5lbmFibGVTZWFyY2ggPSBhbGxvd2VkVHJhbnNmb3JtYXRpb25zID8gYWxsb3dlZFRyYW5zZm9ybWF0aW9ucy5pbmRleE9mKFwic2VhcmNoXCIpID49IDAgOiB0cnVlO1xuXHRsZXQgcXVhbGlmaWVyID0gXCJcIjtcblx0aWYgKGNoYXJ0QW5ub3RhdGlvbi5mdWxseVF1YWxpZmllZE5hbWUuc3BsaXQoXCIjXCIpLmxlbmd0aCA+IDEpIHtcblx0XHRxdWFsaWZpZXIgPSBjaGFydEFubm90YXRpb24uZnVsbHlRdWFsaWZpZWROYW1lLnNwbGl0KFwiI1wiKVsxXTtcblx0fVxuXHRyZXR1cm4ge1xuXHRcdHR5cGU6IFZpc3VhbGl6YXRpb25UeXBlLkNoYXJ0LFxuXHRcdGlkOiBxdWFsaWZpZXJcblx0XHRcdD8gZ2V0Q2hhcnRJRChpc0VudGl0eVNldCA/IGVudGl0eU5hbWUgOiBuYXZpZ2F0aW9uUHJvcGVydHlQYXRoLCBxdWFsaWZpZXIsIFZpc3VhbGl6YXRpb25UeXBlLkNoYXJ0KVxuXHRcdFx0OiBnZXRDaGFydElEKGlzRW50aXR5U2V0ID8gZW50aXR5TmFtZSA6IG5hdmlnYXRpb25Qcm9wZXJ0eVBhdGgsIFZpc3VhbGl6YXRpb25UeXBlLkNoYXJ0KSxcblx0XHRjb2xsZWN0aW9uOiBnZXRUYXJnZXRPYmplY3RQYXRoKGNvbnZlcnRlckNvbnRleHQuZ2V0RGF0YU1vZGVsT2JqZWN0UGF0aCgpKSxcblx0XHRlbnRpdHlOYW1lOiBlbnRpdHlOYW1lLFxuXHRcdHBlcnNvbmFsaXphdGlvbjogZ2V0UDEzbk1vZGUodmlzdWFsaXphdGlvblBhdGgsIGNvbnZlcnRlckNvbnRleHQpLFxuXHRcdG5hdmlnYXRpb25QYXRoOiBuYXZpZ2F0aW9uUHJvcGVydHlQYXRoLFxuXHRcdGFubm90YXRpb25QYXRoOiBjb252ZXJ0ZXJDb250ZXh0LmdldEFic29sdXRlQW5ub3RhdGlvblBhdGgodmlzdWFsaXphdGlvblBhdGgpLFxuXHRcdGZpbHRlcklkOiBzRmlsdGVyYmFySWQsXG5cdFx0dml6UHJvcGVydGllczogSlNPTi5zdHJpbmdpZnkob1ZpelByb3BlcnRpZXMpLFxuXHRcdGFjdGlvbnM6IGNoYXJ0QWN0aW9ucy5hY3Rpb25zLFxuXHRcdGNvbW1hbmRBY3Rpb25zOiBjaGFydEFjdGlvbnMuY29tbWFuZEFjdGlvbnMsXG5cdFx0dGl0bGU6IHRpdGxlLFxuXHRcdGF1dG9CaW5kT25Jbml0OiBhdXRvQmluZE9uSW5pdCxcblx0XHRvblNlZ21lbnRlZEJ1dHRvblByZXNzZWQ6IG9uU2VnbWVudGVkQnV0dG9uUHJlc3NlZCxcblx0XHR2aXNpYmxlOiB2aXNpYmxlLFxuXHRcdGN1c3RvbUFnZzogbUN1c3RvbUFnZ3JlZ2F0ZXMsXG5cdFx0dHJhbnNBZ2c6IG1UcmFuc0FnZ3JlZ2F0aW9ucyxcblx0XHRhcHBseVN1cHBvcnRlZDogbUFwcGx5U3VwcG9ydGVkLFxuXHRcdHNlbGVjdGlvblByZXNlbnRhdGlvblZhcmlhbnRQYXRoOiBtU2VsZWN0aW9uUHJlc2VudGF0aW9uVmFyaWFudFBhdGgsXG5cdFx0dmFyaWFudE1hbmFnZW1lbnQ6IGZpbmRWYXJpYW50TWFuYWdlbWVudChwMTNuTW9kZSwgdmFyaWFudE1hbmFnZW1lbnQpLFxuXHRcdGlzSW5zaWdodHNFbmFibGVkOiAoaXNJbnNpZ2h0c0VuYWJsZWQgPz8gZmFsc2UpICYmIGdldEluc2lnaHRzVmlzaWJpbGl0eShcIkFuYWx5dGljYWxcIiwgY29udmVydGVyQ29udGV4dCwgdmlzdWFsaXphdGlvblBhdGgpXG5cdH07XG59XG4vKipcbiAqIE1ldGhvZCB0byBkZXRlcm1pbmUgdGhlIHZhcmlhbnQgbWFuYWdlbWVudC5cbiAqXG4gKiBAcGFyYW0gcDEzbk1vZGVcbiAqIEBwYXJhbSB2YXJpYW50TWFuYWdlbWVudFxuICogQHJldHVybnMgVGhlIHZhcmlhbnQgbWFuYWdlbWVudCBmb3IgdGhlIGNoYXJ0XG4gKi9cbmZ1bmN0aW9uIGZpbmRWYXJpYW50TWFuYWdlbWVudChwMTNuTW9kZTogc3RyaW5nIHwgdW5kZWZpbmVkLCB2YXJpYW50TWFuYWdlbWVudDogVmFyaWFudE1hbmFnZW1lbnRUeXBlKSB7XG5cdHJldHVybiB2YXJpYW50TWFuYWdlbWVudCA9PT0gXCJDb250cm9sXCIgJiYgIXAxM25Nb2RlID8gVmFyaWFudE1hbmFnZW1lbnRUeXBlLk5vbmUgOiB2YXJpYW50TWFuYWdlbWVudDtcbn1cblxuLyoqXG4gKiBNZXRob2QgdG8gZ2V0IGNvbXBpbGUgZXhwcmVzc2lvbiBmb3IgRGF0YUZpZWxkRm9yQWN0aW9uIGFuZCBEYXRhRmllbGRGb3JJbnRlbnRCYXNlZE5hdmlnYXRpb24uXG4gKlxuICogQHBhcmFtIGRhdGFGaWVsZFxuICogQHBhcmFtIGNvbnZlcnRlckNvbnRleHRcbiAqIEByZXR1cm5zIENvbXBpbGUgZXhwcmVzc2lvbiBmb3IgRGF0YUZpZWxkRm9yQWN0aW9uIGFuZCBEYXRhRmllbGRGb3JJbnRlbnRCYXNlZE5hdmlnYXRpb25cbiAqL1xuZnVuY3Rpb24gZ2V0Q29tcGlsZUV4cHJlc3Npb25Gb3JBY3Rpb24oZGF0YUZpZWxkOiBEYXRhRmllbGRBYnN0cmFjdFR5cGVzLCBjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0KSB7XG5cdHJldHVybiBjb21waWxlRXhwcmVzc2lvbihcblx0XHRub3QoXG5cdFx0XHRlcXVhbChcblx0XHRcdFx0Z2V0RXhwcmVzc2lvbkZyb21Bbm5vdGF0aW9uKFxuXHRcdFx0XHRcdGRhdGFGaWVsZC5hbm5vdGF0aW9ucz8uVUk/LkhpZGRlbixcblx0XHRcdFx0XHRbXSxcblx0XHRcdFx0XHR1bmRlZmluZWQsXG5cdFx0XHRcdFx0Y29udmVydGVyQ29udGV4dC5nZXRSZWxhdGl2ZU1vZGVsUGF0aEZ1bmN0aW9uKClcblx0XHRcdFx0KSxcblx0XHRcdFx0dHJ1ZVxuXHRcdFx0KVxuXHRcdClcblx0KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUJsYW5rQ2hhcnRWaXN1YWxpemF0aW9uKGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQpOiBDaGFydFZpc3VhbGl6YXRpb24ge1xuXHRjb25zdCBoYXNNdWx0aXBsZVZpc3VhbGl6YXRpb25zID1cblx0XHRjb252ZXJ0ZXJDb250ZXh0LmdldE1hbmlmZXN0V3JhcHBlcigpLmhhc011bHRpcGxlVmlzdWFsaXphdGlvbnMoKSB8fFxuXHRcdGNvbnZlcnRlckNvbnRleHQuZ2V0VGVtcGxhdGVUeXBlKCkgPT09IFRlbXBsYXRlVHlwZS5BbmFseXRpY2FsTGlzdFBhZ2U7XG5cdGNvbnN0IGRhdGFNb2RlbFBhdGggPSBjb252ZXJ0ZXJDb250ZXh0LmdldERhdGFNb2RlbE9iamVjdFBhdGgoKTtcblx0Y29uc3QgZW50aXR5TmFtZSA9IGRhdGFNb2RlbFBhdGgudGFyZ2V0RW50aXR5U2V0ID8gZGF0YU1vZGVsUGF0aC50YXJnZXRFbnRpdHlTZXQubmFtZSA6IGRhdGFNb2RlbFBhdGguc3RhcnRpbmdFbnRpdHlTZXQubmFtZTtcblxuXHRjb25zdCB2aXN1YWxpemF0aW9uOiBDaGFydFZpc3VhbGl6YXRpb24gPSB7XG5cdFx0dHlwZTogVmlzdWFsaXphdGlvblR5cGUuQ2hhcnQsXG5cdFx0aWQ6IGdldENoYXJ0SUQoZW50aXR5TmFtZSwgVmlzdWFsaXphdGlvblR5cGUuQ2hhcnQpLFxuXHRcdGVudGl0eU5hbWU6IGVudGl0eU5hbWUsXG5cdFx0dGl0bGU6IFwiXCIsXG5cdFx0Y29sbGVjdGlvbjogXCJcIixcblx0XHRwZXJzb25hbGl6YXRpb246IHVuZGVmaW5lZCxcblx0XHRuYXZpZ2F0aW9uUGF0aDogXCJcIixcblx0XHRhbm5vdGF0aW9uUGF0aDogXCJcIixcblx0XHR2aXpQcm9wZXJ0aWVzOiBKU09OLnN0cmluZ2lmeSh7XG5cdFx0XHRsZWdlbmRHcm91cDoge1xuXHRcdFx0XHRsYXlvdXQ6IHtcblx0XHRcdFx0XHRwb3NpdGlvbjogXCJib3R0b21cIlxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSksXG5cdFx0YWN0aW9uczogW10sXG5cdFx0Y29tbWFuZEFjdGlvbnM6IHt9LFxuXHRcdGF1dG9CaW5kT25Jbml0OiBmYWxzZSxcblx0XHRvblNlZ21lbnRlZEJ1dHRvblByZXNzZWQ6IFwiXCIsXG5cdFx0dmlzaWJsZTogaGFzTXVsdGlwbGVWaXN1YWxpemF0aW9ucyA/IFwiez0gJHtwYWdlSW50ZXJuYWw+YWxwQ29udGVudFZpZXd9ICE9PSAnVGFibGUnfVwiIDogXCJ0cnVlXCIsXG5cdFx0Y3VzdG9tQWdnOiB7fSxcblx0XHR0cmFuc0FnZzoge30sXG5cdFx0YXBwbHlTdXBwb3J0ZWQ6IHtcblx0XHRcdCRUeXBlOiBcIk9yZy5PRGF0YS5BZ2dyZWdhdGlvbi5WMS5BcHBseVN1cHBvcnRlZFR5cGVcIixcblx0XHRcdEFnZ3JlZ2F0YWJsZVByb3BlcnRpZXM6IFtdLFxuXHRcdFx0R3JvdXBhYmxlUHJvcGVydGllczogW10sXG5cdFx0XHRlbmFibGVTZWFyY2g6IGZhbHNlXG5cdFx0fSxcblx0XHRtdWx0aVZpZXdzOiBmYWxzZSxcblx0XHR2YXJpYW50TWFuYWdlbWVudDogVmFyaWFudE1hbmFnZW1lbnRUeXBlLk5vbmVcblx0fTtcblxuXHRyZXR1cm4gdmlzdWFsaXphdGlvbjtcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQUE7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUE2REE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUNBLFNBQVNBLDhCQUE4QixDQUN0Q0MsZUFBc0IsRUFDdEJDLGlCQUF5QixFQUN6QkMsZ0JBQWtDLEVBQ25CO0lBQ2YsTUFBTUMsWUFBMEIsR0FBRyxFQUFFO0lBQ3JDLElBQUlILGVBQWUsRUFBRTtNQUNwQixNQUFNSSxRQUFRLEdBQUdKLGVBQWUsQ0FBQ0ssT0FBTyxJQUFJLEVBQUU7TUFDOUNELFFBQVEsQ0FBQ0UsT0FBTyxDQUFFQyxTQUFpQyxJQUFLO1FBQUE7UUFDdkQsSUFBSUMsV0FBeUM7UUFDN0MsSUFBSUMsNEJBQTRCLENBQUNGLFNBQVMsQ0FBQyxJQUFJLENBQUNBLFNBQVMsQ0FBQ0csTUFBTSxJQUFJLENBQUNILFNBQVMsQ0FBQ0ksV0FBVyxFQUFFO1VBQzNGLE1BQU1DLEdBQUcsR0FBR0MsU0FBUyxDQUFDQyx3QkFBd0IsQ0FBQ1AsU0FBUyxDQUFDO1VBQ3pELFFBQVFBLFNBQVMsQ0FBQ1EsS0FBSztZQUN0Qjtj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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/base/Log","sap/fe/core/converters/annotations/DataField","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/templating/DataModelPathHelper","sap/ui/core/Core","../../helpers/Aggregation","../../helpers/ID","../../ManifestSettings"],function(t,e,n,a,o,i,r,l,
|
|
5
|
+
sap.ui.define(["sap/base/Log","sap/fe/core/converters/annotations/DataField","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/templating/DataModelPathHelper","sap/ui/core/Core","../../helpers/Aggregation","../../helpers/ID","../../helpers/InsightsHelpers","../../ManifestSettings"],function(t,e,n,a,o,i,r,s,l,g,c,p){"use strict";var u={};var d=p.VisualizationType;var v=p.VariantManagementType;var f=p.TemplateType;var m=p.ActionType;var y=c.getInsightsVisibility;var h=g.getFilterBarID;var P=g.getChartID;var b=l.AggregationHelper;var A=r.getTargetObjectPath;var T=i.not;var S=i.getExpressionFromAnnotation;var C=i.equal;var M=i.compileExpression;var O=o.KeyHelper;var I=a.OverrideType;var D=a.insertCustomElements;var E=n.getActionsFromManifest;var F=e.isDataFieldForActionAbstract;function V(t,e,n){const a=[];if(t){const e=t.Actions||[];e.forEach(t=>{var e;let o;if(F(t)&&!t.Inline&&!t.Determining){const a=O.generateKeyFromDataField(t);switch(t.$Type){case"com.sap.vocabularies.UI.v1.DataFieldForAction":if(!((e=t.ActionTarget)!==null&&e!==void 0&&e.isBound)){o={type:m.DataFieldForAction,annotationPath:n.getEntitySetBasedAnnotationPath(t.fullyQualifiedName),key:a,visible:x(t,n)}}break;case"com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation":o={type:m.DataFieldForIntentBasedNavigation,annotationPath:n.getEntitySetBasedAnnotationPath(t.fullyQualifiedName),key:a,visible:x(t,n),isNavigable:true};break}}if(o){a.push(o)}})}return a}function N(t,e,n){const a=V(t,e,n);const o=E(n.getManifestControlConfiguration(e).actions,n,a);const i={enabled:I.overwrite,enableOnSelect:I.overwrite,visible:I.overwrite,command:I.overwrite};const r=D(a,o.actions,i);return{actions:r,commandActions:o.commandActions}}u.getChartActions=N;function w(t,e){var n;const a=e.getManifestWrapper();const o=e.getManifestControlConfiguration(t);const i=a.getVariantManagement();const r=[];const s=o===null||o===void 0?void 0:(n=o.chartSettings)===null||n===void 0?void 0:n.personalization;const l=i===v.Control?true:false;if(s!==undefined&&!s||s=="false"){return undefined}switch(true){case typeof s==="object":if(s.type){r.push("Type")}if(s.item){r.push("Item")}if(s.sort){r.push("Sort")}if(s.filter){r.push("Filter")}return r.join(",");case l:case!!s:return"Sort,Type,Item,Filter";default:return"Sort,Type,Item"}}u.getP13nMode=w;function B(t){var e;return(t===null||t===void 0?void 0:(e=t.annotationPath)===null||e===void 0?void 0:e.indexOf(`@${"com.sap.vocabularies.UI.v1.SelectionPresentationVariant"}`))!==-1?t===null||t===void 0?void 0:t.annotationPath:undefined}function $(t){let e;if(t!==null&&t!==void 0&&t.Property){var n;e={Property:{$PropertyPath:t===null||t===void 0?void 0:(n=t.Property)===null||n===void 0?void 0:n.value}}}else{e={Property:{$PropertyPath:t===null||t===void 0?void 0:t.name}}}return e}function z(e,n,a,o,i,r){var l;const g=new b(a.getEntityType(),a,true);if(!o&&!g.isAnalyticsSupported()){throw new Error("ApplySupported is not added to the annotations")}const c=g.getTransAggregations();const p=g.getCustomAggregateDefinitions();const u=a.getManifestWrapper();const v=u.getVariantManagement();const m=w(n,a);if(m===undefined&&v==="Control"){t.warning("Variant Management cannot be enabled when personalization is disabled")}const T={};const S=B(i);if(p){const t=g.getEntityType();for(const e of p){var C,M,O,I,D;const n=e===null||e===void 0?void 0:(C=e.annotations)===null||C===void 0?void 0:(M=C.Aggregation)===null||M===void 0?void 0:M.ContextDefiningProperties;const a=e===null||e===void 0?void 0:e.qualifier;const o=a&&t.entityProperties.find(t=>t.name===a);const i=o&&(o===null||o===void 0?void 0:(O=o.annotations)===null||O===void 0?void 0:(I=O.Common)===null||I===void 0?void 0:(D=I.Label)===null||D===void 0?void 0:D.toString());T[a]={name:a,label:i||`Custom Aggregate (${a})`,sortable:true,sortOrder:"both",contextDefiningProperty:n?n.map(t=>t.value):[]}}}const E={};const F=s.getLibraryResourceBundle("sap.fe.core");if(c){for(let t=0;t<c.length;t++){var V,z,x,G,j,k;E[c[t].Name]={name:c[t].Name,propertyPath:c[t].AggregatableProperty.valueOf().value,aggregationMethod:c[t].AggregationMethod,label:(V=c[t])!==null&&V!==void 0&&(z=V.annotations)!==null&&z!==void 0&&(x=z.Common)!==null&&x!==void 0&&x.Label?(G=c[t])===null||G===void 0?void 0:(j=G.annotations)===null||j===void 0?void 0:(k=j.Common)===null||k===void 0?void 0:k.Label.toString():`${F.getText("AGGREGATABLE_PROPERTY")} (${c[t].Name})`,sortable:true,sortOrder:"both",custom:false}}}const R=g.getAggregatableProperties();const H=g.getGroupableProperties();const Q={};Q.$Type="Org.OData.Aggregation.V1.ApplySupportedType";Q.AggregatableProperties=[];Q.GroupableProperties=[];if(R){Q.AggregatableProperties=R.map(t=>$(t))}if(H){Q.GroupableProperties=H.map(t=>({["$PropertyPath"]:t.value}))}const U=N(e,n,a);let[W]=n.split("@");if(W.lastIndexOf("/")===W.length-1){W=W.substr(0,W.length-1)}const K=((l=e.Title)===null||l===void 0?void 0:l.toString())||"";const q=a.getDataModelObjectPath();const J=W.length===0;const Y=q.targetEntitySet?q.targetEntitySet.name:q.startingEntitySet.name;const _=J?h(a.getContextPath()):undefined;const X={legendGroup:{layout:{position:"bottom"}}};let Z;if(a.getTemplateType()===f.ObjectPage){Z=true}else if(a.getTemplateType()===f.ListReport||a.getTemplateType()===f.AnalyticalListPage){Z=false}const tt=a.getManifestWrapper().hasMultipleVisualizations()||a.getTemplateType()===f.AnalyticalListPage;const et=tt?".handlers.onSegmentedButtonPressed":"";const nt=tt?"{= ${pageInternal>alpContentView} !== 'Table'}":"true";const at=g.getAllowedTransformations();Q.enableSearch=at?at.indexOf("search")>=0:true;let ot="";if(e.fullyQualifiedName.split("#").length>1){ot=e.fullyQualifiedName.split("#")[1]}return{type:d.Chart,id:ot?P(J?Y:W,ot,d.Chart):P(J?Y:W,d.Chart),collection:A(a.getDataModelObjectPath()),entityName:Y,personalization:w(n,a),navigationPath:W,annotationPath:a.getAbsoluteAnnotationPath(n),filterId:_,vizProperties:JSON.stringify(X),actions:U.actions,commandActions:U.commandActions,title:K,autoBindOnInit:Z,onSegmentedButtonPressed:et,visible:nt,customAgg:T,transAgg:E,applySupported:Q,selectionPresentationVariantPath:S,variantManagement:L(m,v),isInsightsEnabled:(r??false)&&y("Analytical",a,n)}}u.createChartVisualization=z;function L(t,e){return e==="Control"&&!t?v.None:e}function x(t,e){var n,a;return M(T(C(S((n=t.annotations)===null||n===void 0?void 0:(a=n.UI)===null||a===void 0?void 0:a.Hidden,[],undefined,e.getRelativeModelPathFunction()),true)))}function G(t){const e=t.getManifestWrapper().hasMultipleVisualizations()||t.getTemplateType()===f.AnalyticalListPage;const n=t.getDataModelObjectPath();const a=n.targetEntitySet?n.targetEntitySet.name:n.startingEntitySet.name;const o={type:d.Chart,id:P(a,d.Chart),entityName:a,title:"",collection:"",personalization:undefined,navigationPath:"",annotationPath:"",vizProperties:JSON.stringify({legendGroup:{layout:{position:"bottom"}}}),actions:[],commandActions:{},autoBindOnInit:false,onSegmentedButtonPressed:"",visible:e?"{= ${pageInternal>alpContentView} !== 'Table'}":"true",customAgg:{},transAgg:{},applySupported:{$Type:"Org.OData.Aggregation.V1.ApplySupportedType",AggregatableProperties:[],GroupableProperties:[],enableSearch:false},multiViews:false,variantManagement:v.None};return o}u.createBlankChartVisualization=G;return u},false);
|
|
6
6
|
//# sourceMappingURL=Chart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chart.js","names":["sap","ui","define","Log","DataField","Action","ConfigurableObject","Key","BindingToolkit","DataModelPathHelper","Core","Aggregation","ID","ManifestSettings","_exports","VisualizationType","VariantManagementType","TemplateType","ActionType","getFilterBarID","getChartID","AggregationHelper","getTargetObjectPath","not","getExpressionFromAnnotation","equal","compileExpression","KeyHelper","OverrideType","insertCustomElements","getActionsFromManifest","isDataFieldForActionAbstract","getChartActionsFromAnnotations","chartAnnotation","visualizationPath","converterContext","chartActions","aActions","Actions","forEach","dataField","_dataField$ActionTarg","chartAction","Inline","Determining","key","generateKeyFromDataField","$Type","ActionTarget","isBound","type","DataFieldForAction","annotationPath","getEntitySetBasedAnnotationPath","fullyQualifiedName","visible","getCompileExpressionForAction","DataFieldForIntentBasedNavigation","isNavigable","push","getChartActions","aAnnotationActions","manifestActions","getManifestControlConfiguration","actions","actionOverwriteConfig","enabled","overwrite","enableOnSelect","command","commandActions","getP13nMode","_chartManifestSetting","manifestWrapper","getManifestWrapper","chartManifestSettings","variantManagement","getVariantManagement","aPersonalization","personalization","chartSettings","isControlVariant","Control","undefined","item","sort","filter","join","checkForSPV","viewConfiguration","_viewConfiguration$an","indexOf","createChartVisualization","doNotCheckApplySupported","_chartAnnotation$Titl","aggregationHelper","getEntityType","isAnalyticsSupported","Error","aTransAggregations","getTransAggregations","aCustomAggregates","getCustomAggregateDefinitions","pageManifestSettings","p13nMode","warning","mCustomAggregates","mSelectionPresentationVariantPath","entityType","customAggregate","_customAggregate$anno","_customAggregate$anno2","_relatedCustomAggrega","_relatedCustomAggrega2","_relatedCustomAggrega3","aContextDefiningProperties","annotations","ContextDefiningProperties","qualifier","relatedCustomAggregateProperty","entityProperties","find","property","name","label","Common","Label","toString","sortable","sortOrder","contextDefiningProperty","map","oCtxDefProperty","value","mTransAggregations","oResourceBundleCore","getLibraryResourceBundle","i","length","_aTransAggregations$i","_aTransAggregations$i2","_aTransAggregations$i3","_aTransAggregations$i4","_aTransAggregations$i5","_aTransAggregations$i6","Name","propertyPath","AggregatableProperty","valueOf","aggregationMethod","AggregationMethod","getText","custom","aAggProps","getAggregatableProperties","aGrpProps","getGroupableProperties","mApplySupported","AggregatableProperties","GroupableProperties","_aAggProps$i","_aAggProps$i2","_aAggProps$i2$Propert","obj","Property","$PropertyPath","_aGrpProps$i","navigationPropertyPath","split","lastIndexOf","substr","title","Title","dataModelPath","getDataModelObjectPath","isEntitySet","entityName","targetEntitySet","startingEntitySet","sFilterbarId","getContextPath","oVizProperties","legendGroup","layout","position","autoBindOnInit","getTemplateType","ObjectPage","ListReport","AnalyticalListPage","hasMultipleVisualizations","onSegmentedButtonPressed","allowedTransformations","getAllowedTransformations","enableSearch","Chart","id","collection","navigationPath","getAbsoluteAnnotationPath","filterId","vizProperties","JSON","stringify","customAgg","transAgg","applySupported","selectionPresentationVariantPath","findVariantManagement","None","_dataField$annotation","_dataField$annotation2","UI","Hidden","getRelativeModelPathFunction","createBlankChartVisualization","visualization","multiViews"],"sources":["Chart-dbg.js"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Chart.js","names":["sap","ui","define","Log","DataField","Action","ConfigurableObject","Key","BindingToolkit","DataModelPathHelper","Core","Aggregation","ID","InsightsHelpers","ManifestSettings","_exports","VisualizationType","VariantManagementType","TemplateType","ActionType","getInsightsVisibility","getFilterBarID","getChartID","AggregationHelper","getTargetObjectPath","not","getExpressionFromAnnotation","equal","compileExpression","KeyHelper","OverrideType","insertCustomElements","getActionsFromManifest","isDataFieldForActionAbstract","getChartActionsFromAnnotations","chartAnnotation","visualizationPath","converterContext","chartActions","aActions","Actions","forEach","dataField","_dataField$ActionTarg","chartAction","Inline","Determining","key","generateKeyFromDataField","$Type","ActionTarget","isBound","type","DataFieldForAction","annotationPath","getEntitySetBasedAnnotationPath","fullyQualifiedName","visible","getCompileExpressionForAction","DataFieldForIntentBasedNavigation","isNavigable","push","getChartActions","aAnnotationActions","manifestActions","getManifestControlConfiguration","actions","actionOverwriteConfig","enabled","overwrite","enableOnSelect","command","commandActions","getP13nMode","_chartManifestSetting","manifestWrapper","getManifestWrapper","chartManifestSettings","variantManagement","getVariantManagement","aPersonalization","personalization","chartSettings","isControlVariant","Control","undefined","item","sort","filter","join","checkForSPV","viewConfiguration","_viewConfiguration$an","indexOf","getAggregatablePropertiesObject","aggProp","obj","Property","_Property","$PropertyPath","value","name","createChartVisualization","doNotCheckApplySupported","isInsightsEnabled","_chartAnnotation$Titl","aggregationHelper","getEntityType","isAnalyticsSupported","Error","aTransAggregations","getTransAggregations","aCustomAggregates","getCustomAggregateDefinitions","pageManifestSettings","p13nMode","warning","mCustomAggregates","mSelectionPresentationVariantPath","entityType","customAggregate","_customAggregate$anno","_customAggregate$anno2","_relatedCustomAggrega","_relatedCustomAggrega2","_relatedCustomAggrega3","aContextDefiningProperties","annotations","ContextDefiningProperties","qualifier","relatedCustomAggregateProperty","entityProperties","find","property","label","Common","Label","toString","sortable","sortOrder","contextDefiningProperty","map","oCtxDefProperty","mTransAggregations","oResourceBundleCore","getLibraryResourceBundle","i","length","_aTransAggregations$i","_aTransAggregations$i2","_aTransAggregations$i3","_aTransAggregations$i4","_aTransAggregations$i5","_aTransAggregations$i6","Name","propertyPath","AggregatableProperty","valueOf","aggregationMethod","AggregationMethod","getText","custom","aAggProps","getAggregatableProperties","aGrpProps","getGroupableProperties","mApplySupported","AggregatableProperties","GroupableProperties","prop","navigationPropertyPath","split","lastIndexOf","substr","title","Title","dataModelPath","getDataModelObjectPath","isEntitySet","entityName","targetEntitySet","startingEntitySet","sFilterbarId","getContextPath","oVizProperties","legendGroup","layout","position","autoBindOnInit","getTemplateType","ObjectPage","ListReport","AnalyticalListPage","hasMultipleVisualizations","onSegmentedButtonPressed","allowedTransformations","getAllowedTransformations","enableSearch","Chart","id","collection","navigationPath","getAbsoluteAnnotationPath","filterId","vizProperties","JSON","stringify","customAgg","transAgg","applySupported","selectionPresentationVariantPath","findVariantManagement","None","_dataField$annotation","_dataField$annotation2","UI","Hidden","getRelativeModelPathFunction","createBlankChartVisualization","visualization","multiViews"],"sources":["Chart-dbg.js"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Property } from "@sap-ux/vocabularies-types";
|
|
2
2
|
import type { AggregatablePropertyType, AggregationMethod } from "@sap-ux/vocabularies-types/vocabularies/Aggregation";
|
|
3
3
|
import { AggregationAnnotationTypes } from "@sap-ux/vocabularies-types/vocabularies/Aggregation";
|
|
4
4
|
import { Chart, DataFieldAbstractTypes, UIAnnotationTerms, UIAnnotationTypes } from "@sap-ux/vocabularies-types/vocabularies/UI";
|
|
@@ -17,10 +17,10 @@ import { KeyHelper } from "sap/fe/core/converters/helpers/Key";
|
|
|
17
17
|
import { compileExpression, equal, getExpressionFromAnnotation, not } from "sap/fe/core/helpers/BindingToolkit";
|
|
18
18
|
import { getTargetObjectPath } from "sap/fe/core/templating/DataModelPathHelper";
|
|
19
19
|
import Core from "sap/ui/core/Core";
|
|
20
|
-
import type { ExpandPathType, MetaModelType } from "types/metamodel_types";
|
|
21
20
|
import type ConverterContext from "../../ConverterContext";
|
|
22
21
|
import { AggregationHelper } from "../../helpers/Aggregation";
|
|
23
22
|
import { getChartID, getFilterBarID } from "../../helpers/ID";
|
|
23
|
+
import { getInsightsVisibility } from "../../helpers/InsightsHelpers";
|
|
24
24
|
import type { ChartManifestConfiguration, ViewPathConfiguration } from "../../ManifestSettings";
|
|
25
25
|
import { ActionType, TemplateType, VariantManagementType, VisualizationType } from "../../ManifestSettings";
|
|
26
26
|
import type ManifestWrapper from "../../ManifestWrapper";
|
|
@@ -56,6 +56,7 @@ export type ChartVisualization = {
|
|
|
56
56
|
multiViews?: boolean;
|
|
57
57
|
variantManagement: VariantManagementType;
|
|
58
58
|
selectionPresentationVariantPath?: string;
|
|
59
|
+
isInsightsEnabled?: boolean;
|
|
59
60
|
};
|
|
60
61
|
|
|
61
62
|
/**
|
|
@@ -190,6 +191,23 @@ function checkForSPV(viewConfiguration: ViewPathConfiguration | undefined) {
|
|
|
190
191
|
? viewConfiguration?.annotationPath
|
|
191
192
|
: undefined;
|
|
192
193
|
}
|
|
194
|
+
function getAggregatablePropertiesObject(aggProp: AggregatablePropertyType | Property) {
|
|
195
|
+
let obj;
|
|
196
|
+
if ((aggProp as AggregatablePropertyType)?.Property) {
|
|
197
|
+
obj = {
|
|
198
|
+
Property: {
|
|
199
|
+
$PropertyPath: (aggProp as AggregatablePropertyType)?.Property?.value
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
} else {
|
|
203
|
+
obj = {
|
|
204
|
+
Property: {
|
|
205
|
+
$PropertyPath: (aggProp as Property)?.name
|
|
206
|
+
}
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
return obj;
|
|
210
|
+
}
|
|
193
211
|
/**
|
|
194
212
|
* Create the ChartVisualization configuration that will be used to display a chart using the Chart building block.
|
|
195
213
|
*
|
|
@@ -198,6 +216,7 @@ function checkForSPV(viewConfiguration: ViewPathConfiguration | undefined) {
|
|
|
198
216
|
* @param converterContext The converter context
|
|
199
217
|
* @param doNotCheckApplySupported Flag that indicates whether ApplySupported needs to be checked or not
|
|
200
218
|
* @param viewConfiguration
|
|
219
|
+
* @param isInsightsEnabled Flag that indicates whether insights enabled
|
|
201
220
|
* @returns The chart visualization based on the annotation
|
|
202
221
|
*/
|
|
203
222
|
export function createChartVisualization(
|
|
@@ -205,9 +224,10 @@ export function createChartVisualization(
|
|
|
205
224
|
visualizationPath: string,
|
|
206
225
|
converterContext: ConverterContext,
|
|
207
226
|
doNotCheckApplySupported?: boolean,
|
|
208
|
-
viewConfiguration?: ViewPathConfiguration
|
|
227
|
+
viewConfiguration?: ViewPathConfiguration,
|
|
228
|
+
isInsightsEnabled?: boolean
|
|
209
229
|
): ChartVisualization {
|
|
210
|
-
const aggregationHelper = new AggregationHelper(converterContext.getEntityType(), converterContext);
|
|
230
|
+
const aggregationHelper = new AggregationHelper(converterContext.getEntityType(), converterContext, true); // passing the last parameter as true to consider the old annotations i.e. Aggregation.Aggregatable for backward compatibility in case of chart
|
|
211
231
|
if (!doNotCheckApplySupported && !aggregationHelper.isAnalyticsSupported()) {
|
|
212
232
|
throw new Error("ApplySupported is not added to the annotations");
|
|
213
233
|
}
|
|
@@ -268,21 +288,12 @@ export function createChartVisualization(
|
|
|
268
288
|
mApplySupported.AggregatableProperties = [];
|
|
269
289
|
mApplySupported.GroupableProperties = [];
|
|
270
290
|
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
$Type: aAggProps[i]?.$Type,
|
|
274
|
-
Property: {
|
|
275
|
-
$PropertyPath: aAggProps[i]?.Property?.value
|
|
276
|
-
}
|
|
277
|
-
};
|
|
278
|
-
|
|
279
|
-
mApplySupported.AggregatableProperties.push(obj);
|
|
291
|
+
if (aAggProps) {
|
|
292
|
+
mApplySupported.AggregatableProperties = aAggProps.map((prop) => getAggregatablePropertiesObject(prop));
|
|
280
293
|
}
|
|
281
294
|
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
mApplySupported.GroupableProperties.push(obj);
|
|
295
|
+
if (aGrpProps) {
|
|
296
|
+
mApplySupported.GroupableProperties = aGrpProps.map((prop) => ({ ["$PropertyPath"]: prop.value }));
|
|
286
297
|
}
|
|
287
298
|
|
|
288
299
|
const chartActions = getChartActions(chartAnnotation, visualizationPath, converterContext);
|
|
@@ -345,7 +356,8 @@ export function createChartVisualization(
|
|
|
345
356
|
transAgg: mTransAggregations,
|
|
346
357
|
applySupported: mApplySupported,
|
|
347
358
|
selectionPresentationVariantPath: mSelectionPresentationVariantPath,
|
|
348
|
-
variantManagement: findVariantManagement(p13nMode, variantManagement)
|
|
359
|
+
variantManagement: findVariantManagement(p13nMode, variantManagement),
|
|
360
|
+
isInsightsEnabled: (isInsightsEnabled ?? false) && getInsightsVisibility("Analytical", converterContext, visualizationPath)
|
|
349
361
|
};
|
|
350
362
|
}
|
|
351
363
|
/**
|