@sapui5/sap.fe.core 1.124.2 → 1.126.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 +5 -1
- package/src/sap/fe/core/ActionRuntime.js +2 -2
- package/src/sap/fe/core/ActionRuntime.ts +4 -4
- package/src/sap/fe/core/AppComponent.js +2 -2
- package/src/sap/fe/core/AppComponent.ts +1 -1
- package/src/sap/fe/core/AppStateHandler.js +2 -2
- package/src/sap/fe/core/AppStateHandler.ts +1 -1
- package/src/sap/fe/core/BaseController.js +2 -2
- package/src/sap/fe/core/BaseController.ts +1 -1
- package/src/sap/fe/core/CommonUtils.js +3 -3
- package/src/sap/fe/core/CommonUtils.ts +12 -15
- package/src/sap/fe/core/ExtensionAPI.js +2 -2
- package/src/sap/fe/core/ExtensionAPI.ts +4 -3
- package/src/sap/fe/core/PageController.js +2 -2
- package/src/sap/fe/core/PageController.ts +1 -1
- package/src/sap/fe/core/ResourceModel.js +2 -2
- package/src/sap/fe/core/ResourceModel.ts +1 -1
- package/src/sap/fe/core/ReuseComponent.js +172 -0
- package/src/sap/fe/core/ReuseComponent.ts +165 -0
- package/src/sap/fe/core/TemplateComponent.js +2 -2
- package/src/sap/fe/core/TemplateComponent.ts +5 -1
- package/src/sap/fe/core/TemplateModel.js +2 -2
- package/src/sap/fe/core/TemplateModel.ts +1 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.js +92 -6
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.ts +90 -10
- package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockSupport.js +1 -1
- package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockSupport.ts +1 -1
- package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockTemplateProcessor.js +30 -3
- package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockTemplateProcessor.ts +28 -4
- package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockTemplatingBase.js +10 -16
- package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockTemplatingBase.ts +19 -16
- package/src/sap/fe/core/buildingBlocks/templating/RuntimeBuildingBlockFragment.js +3 -3
- package/src/sap/fe/core/buildingBlocks/templating/RuntimeBuildingBlockFragment.ts +5 -5
- package/src/sap/fe/core/controllerextensions/BaseControllerExtension.js +2 -2
- package/src/sap/fe/core/controllerextensions/BaseControllerExtension.ts +1 -1
- package/src/sap/fe/core/controllerextensions/CollaborativeDraft.js +17 -5
- package/src/sap/fe/core/controllerextensions/CollaborativeDraft.ts +14 -6
- package/src/sap/fe/core/controllerextensions/ContextSharing.js +2 -2
- package/src/sap/fe/core/controllerextensions/ContextSharing.ts +1 -1
- package/src/sap/fe/core/controllerextensions/EditFlow.js +57 -43
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +61 -46
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +2 -2
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +1 -1
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +8 -11
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +8 -16
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +10 -7
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +5 -5
- package/src/sap/fe/core/controllerextensions/KPIManagement.js +22 -18
- package/src/sap/fe/core/controllerextensions/KPIManagement.ts +28 -23
- package/src/sap/fe/core/controllerextensions/MessageHandler.js +4 -4
- package/src/sap/fe/core/controllerextensions/MessageHandler.ts +4 -1
- package/src/sap/fe/core/controllerextensions/PageReady.js +21 -15
- package/src/sap/fe/core/controllerextensions/PageReady.ts +29 -20
- package/src/sap/fe/core/controllerextensions/Paginator.js +2 -2
- package/src/sap/fe/core/controllerextensions/Paginator.ts +1 -1
- package/src/sap/fe/core/controllerextensions/Placeholder.js +12 -6
- package/src/sap/fe/core/controllerextensions/Placeholder.ts +15 -1
- package/src/sap/fe/core/controllerextensions/Recommendations.js +26 -8
- package/src/sap/fe/core/controllerextensions/Recommendations.ts +29 -3
- package/src/sap/fe/core/controllerextensions/Routing.js +5 -7
- package/src/sap/fe/core/controllerextensions/Routing.ts +4 -4
- package/src/sap/fe/core/controllerextensions/Share.js +4 -4
- package/src/sap/fe/core/controllerextensions/Share.ts +10 -6
- package/src/sap/fe/core/controllerextensions/SideEffects.js +20 -5
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +22 -2
- package/src/sap/fe/core/controllerextensions/Telemetry.js +2 -2
- package/src/sap/fe/core/controllerextensions/Telemetry.ts +1 -1
- package/src/sap/fe/core/controllerextensions/ViewState.js +79 -81
- package/src/sap/fe/core/controllerextensions/ViewState.ts +117 -105
- package/src/sap/fe/core/controllerextensions/cards/CollaborationManager.js +3 -3
- package/src/sap/fe/core/controllerextensions/cards/CollaborationManager.ts +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js +2 -2
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.ts +2 -2
- package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block.js +17 -8
- package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block.tsx +8 -2
- package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +10 -9
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +15 -10
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js +2 -2
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.ts +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.js +130 -158
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.ts +240 -275
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +2 -2
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +1 -1
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +46 -28
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.ts +60 -32
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +2 -2
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.ts +1 -1
- package/src/sap/fe/core/controllerextensions/viewState/IViewStateContributor.js +2 -2
- package/src/sap/fe/core/controllerextensions/viewState/IViewStateContributor.ts +27 -3
- package/src/sap/fe/core/controls/CommandExecution.js +2 -2
- package/src/sap/fe/core/controls/CommandExecution.ts +2 -2
- package/src/sap/fe/core/controls/ComponentLoader.js +3 -3
- package/src/sap/fe/core/controls/ComponentLoader.ts +2 -2
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block.js +3 -3
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block.tsx +2 -2
- package/src/sap/fe/core/controls/EventDelegateHook.js +2 -2
- package/src/sap/fe/core/controls/EventDelegateHook.ts +2 -2
- package/src/sap/fe/core/controls/FormElementWrapper.js +51 -6
- package/src/sap/fe/core/controls/FormElementWrapper.ts +43 -2
- package/src/sap/fe/core/controls/Recommendations/ConfirmRecommendationDialog.block.js +3 -3
- package/src/sap/fe/core/controls/Recommendations/ConfirmRecommendationDialog.block.tsx +3 -3
- package/src/sap/fe/core/converters/ConverterContext.js +4 -2
- package/src/sap/fe/core/converters/ConverterContext.ts +5 -2
- package/src/sap/fe/core/converters/ManifestSettings.js +8 -2
- package/src/sap/fe/core/converters/ManifestSettings.ts +25 -3
- package/src/sap/fe/core/converters/ManifestWrapper.js +12 -3
- package/src/sap/fe/core/converters/ManifestWrapper.ts +11 -1
- package/src/sap/fe/core/converters/MetaModelConverter.js +7 -6
- package/src/sap/fe/core/converters/MetaModelConverter.ts +6 -2
- package/src/sap/fe/core/converters/annotations/DataField.js +56 -16
- package/src/sap/fe/core/converters/annotations/DataField.ts +74 -25
- package/src/sap/fe/core/converters/common/AnnotationConverter.js +19 -18
- package/src/sap/fe/core/converters/controls/Common/Action.js +5 -5
- package/src/sap/fe/core/converters/controls/Common/Action.ts +14 -14
- package/src/sap/fe/core/converters/controls/Common/Chart.js +40 -7
- package/src/sap/fe/core/converters/controls/Common/Chart.ts +56 -20
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +8 -11
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +23 -27
- package/src/sap/fe/core/converters/controls/Common/Form.js +10 -3
- package/src/sap/fe/core/converters/controls/Common/Form.ts +13 -4
- package/src/sap/fe/core/converters/controls/Common/KPI.js +3 -2
- package/src/sap/fe/core/converters/controls/Common/KPI.ts +6 -2
- package/src/sap/fe/core/converters/controls/Common/Table.js +137 -48
- package/src/sap/fe/core/converters/controls/Common/Table.ts +174 -52
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +73 -21
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +91 -20
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +4 -4
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +2 -2
- package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.js +2 -2
- package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.ts +2 -2
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +3 -3
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +1 -1
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +17 -16
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +18 -17
- package/src/sap/fe/core/converters/helpers/InsightsHelpers.js +2 -2
- package/src/sap/fe/core/converters/helpers/InsightsHelpers.ts +1 -1
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +9 -9
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +12 -12
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +13 -7
- package/src/sap/fe/core/converters/templates/ListReportConverter.ts +12 -5
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +9 -73
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +4 -74
- package/src/sap/fe/core/designtime/AppComponent.designtime.js +5 -10
- package/src/sap/fe/core/designtime/AppComponent.designtime.ts +3 -12
- package/src/sap/fe/core/formatters/CriticalityFormatter.js +4 -7
- package/src/sap/fe/core/formatters/CriticalityFormatter.ts +3 -3
- package/src/sap/fe/core/formatters/FiscalFormat.js +5 -3
- package/src/sap/fe/core/formatters/FiscalFormat.ts +4 -2
- package/src/sap/fe/core/formatters/StandardFormatter.js +2 -2
- package/src/sap/fe/core/formatters/StandardFormatter.ts +3 -3
- package/src/sap/fe/core/fpm/Component.js +3 -3
- package/src/sap/fe/core/fpm/Component.ts +3 -3
- package/src/sap/fe/core/fpm/manifest.json +1 -1
- package/src/sap/fe/core/helpers/AdaptiveCardExpressionCompiler.js +2 -2
- package/src/sap/fe/core/helpers/AdaptiveCardExpressionCompiler.ts +1 -1
- package/src/sap/fe/core/helpers/BindingHelper.js +2 -2
- package/src/sap/fe/core/helpers/BindingHelper.ts +2 -2
- package/src/sap/fe/core/helpers/BindingToolkitEvaluator.js +2 -2
- package/src/sap/fe/core/helpers/BindingToolkitEvaluator.ts +2 -2
- package/src/sap/fe/core/helpers/DeleteHelper.js +7 -4
- package/src/sap/fe/core/helpers/DeleteHelper.ts +9 -3
- package/src/sap/fe/core/helpers/MetaModelFunction.js +5 -5
- package/src/sap/fe/core/helpers/MetaModelFunction.ts +2 -2
- package/src/sap/fe/core/helpers/MetaPath.js +9 -3
- package/src/sap/fe/core/helpers/MetaPath.ts +8 -2
- package/src/sap/fe/core/helpers/ModelHelper.js +149 -3
- package/src/sap/fe/core/helpers/ModelHelper.ts +202 -6
- package/src/sap/fe/core/helpers/StandardRecommendationHelper.js +3 -3
- package/src/sap/fe/core/helpers/StandardRecommendationHelper.ts +2 -2
- package/src/sap/fe/core/helpers/TitleHelper.js +4 -4
- package/src/sap/fe/core/helpers/TitleHelper.ts +4 -4
- package/src/sap/fe/core/library.js +4 -4
- package/src/sap/fe/core/library.ts +2 -1
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +11 -3
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +10 -2
- package/src/sap/fe/core/messagebundle.properties +8 -57
- package/src/sap/fe/core/messagebundle_ar.properties +2 -0
- package/src/sap/fe/core/messagebundle_bg.properties +2 -0
- package/src/sap/fe/core/messagebundle_ca.properties +2 -0
- package/src/sap/fe/core/messagebundle_cnr.properties +2 -0
- package/src/sap/fe/core/messagebundle_cs.properties +2 -0
- package/src/sap/fe/core/messagebundle_cy.properties +4 -2
- package/src/sap/fe/core/messagebundle_da.properties +2 -0
- package/src/sap/fe/core/messagebundle_de.properties +2 -0
- package/src/sap/fe/core/messagebundle_el.properties +2 -0
- package/src/sap/fe/core/messagebundle_en.properties +6 -57
- package/src/sap/fe/core/messagebundle_en_GB.properties +2 -0
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +3 -36
- package/src/sap/fe/core/messagebundle_es.properties +2 -0
- package/src/sap/fe/core/messagebundle_es_MX.properties +2 -0
- package/src/sap/fe/core/messagebundle_et.properties +2 -0
- package/src/sap/fe/core/messagebundle_fi.properties +2 -0
- package/src/sap/fe/core/messagebundle_fr.properties +2 -0
- package/src/sap/fe/core/messagebundle_fr_CA.properties +3 -1
- package/src/sap/fe/core/messagebundle_hi.properties +2 -0
- package/src/sap/fe/core/messagebundle_hr.properties +2 -0
- package/src/sap/fe/core/messagebundle_hu.properties +3 -1
- package/src/sap/fe/core/messagebundle_id.properties +2 -0
- package/src/sap/fe/core/messagebundle_it.properties +2 -0
- package/src/sap/fe/core/messagebundle_iw.properties +3 -1
- package/src/sap/fe/core/messagebundle_ja.properties +2 -0
- package/src/sap/fe/core/messagebundle_kk.properties +2 -0
- package/src/sap/fe/core/messagebundle_ko.properties +2 -0
- package/src/sap/fe/core/messagebundle_lt.properties +2 -0
- package/src/sap/fe/core/messagebundle_lv.properties +2 -0
- package/src/sap/fe/core/messagebundle_mk.properties +2 -0
- package/src/sap/fe/core/messagebundle_ms.properties +2 -0
- package/src/sap/fe/core/messagebundle_nl.properties +2 -0
- package/src/sap/fe/core/messagebundle_no.properties +2 -0
- package/src/sap/fe/core/messagebundle_pl.properties +2 -0
- package/src/sap/fe/core/messagebundle_pt.properties +2 -0
- package/src/sap/fe/core/messagebundle_pt_PT.properties +2 -0
- package/src/sap/fe/core/messagebundle_ro.properties +2 -0
- package/src/sap/fe/core/messagebundle_ru.properties +2 -0
- package/src/sap/fe/core/messagebundle_sh.properties +64 -62
- package/src/sap/fe/core/messagebundle_sk.properties +2 -0
- package/src/sap/fe/core/messagebundle_sl.properties +2 -0
- package/src/sap/fe/core/messagebundle_sr.properties +2 -0
- package/src/sap/fe/core/messagebundle_sv.properties +2 -0
- package/src/sap/fe/core/messagebundle_th.properties +2 -0
- package/src/sap/fe/core/messagebundle_tr.properties +2 -0
- package/src/sap/fe/core/messagebundle_uk.properties +3 -1
- package/src/sap/fe/core/messagebundle_vi.properties +2 -0
- package/src/sap/fe/core/messagebundle_zh_CN.properties +2 -0
- package/src/sap/fe/core/messagebundle_zh_TW.properties +2 -0
- package/src/sap/fe/core/operationsHelper.js +3 -3
- package/src/sap/fe/core/operationsHelper.ts +2 -2
- package/src/sap/fe/core/rootView/Fcl.controller.js +3 -3
- package/src/sap/fe/core/rootView/Fcl.controller.ts +2 -2
- package/src/sap/fe/core/rootView/NavContainer.controller.js +2 -2
- package/src/sap/fe/core/rootView/NavContainer.controller.ts +1 -1
- package/src/sap/fe/core/rootView/RootViewBaseController.js +114 -92
- package/src/sap/fe/core/rootView/RootViewBaseController.ts +120 -106
- package/src/sap/fe/core/services/CollaborativeToolsServiceFactory.js +2 -2
- package/src/sap/fe/core/services/CollaborativeToolsServiceFactory.ts +1 -1
- package/src/sap/fe/core/services/NavigationServiceFactory.js +6 -4
- package/src/sap/fe/core/services/NavigationServiceFactory.ts +4 -3
- package/src/sap/fe/core/services/RoutingServiceFactory.js +2 -2
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +1 -1
- package/src/sap/fe/core/services/ShellServicesFactory.js +1 -1
- package/src/sap/fe/core/services/ShellServicesFactory.ts +12 -2
- package/src/sap/fe/core/services/TelemetryServiceFactory.js +8 -2
- package/src/sap/fe/core/services/TelemetryServiceFactory.ts +7 -1
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +16 -9
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +22 -11
- package/src/sap/fe/core/services/ValueHelpHistoryServiceFactory.js +2 -2
- package/src/sap/fe/core/services/ValueHelpHistoryServiceFactory.ts +1 -1
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +2 -2
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.ts +1 -1
- package/src/sap/fe/core/templating/ActionHelper.js +2 -2
- package/src/sap/fe/core/templating/ActionHelper.ts +2 -2
- package/src/sap/fe/core/templating/CommonFormatters.js +2 -2
- package/src/sap/fe/core/templating/CommonFormatters.ts +3 -3
- package/src/sap/fe/core/templating/CriticalityFormatters.js +2 -2
- package/src/sap/fe/core/templating/CriticalityFormatters.ts +2 -2
- package/src/sap/fe/core/templating/DataFieldFormatters.js +4 -4
- package/src/sap/fe/core/templating/DataFieldFormatters.ts +2 -2
- package/src/sap/fe/core/templating/DataModelPathHelper.js +2 -2
- package/src/sap/fe/core/templating/DataModelPathHelper.ts +2 -2
- package/src/sap/fe/core/templating/EntityTypeHelper.js +2 -2
- package/src/sap/fe/core/templating/EntityTypeHelper.ts +2 -2
- package/src/sap/fe/core/templating/FieldControlHelper.js +2 -2
- package/src/sap/fe/core/templating/FieldControlHelper.ts +2 -2
- package/src/sap/fe/core/templating/SemanticObjectHelper.js +2 -2
- package/src/sap/fe/core/templating/SemanticObjectHelper.ts +2 -2
- package/src/sap/fe/core/templating/UIFormatters.js +7 -7
- package/src/sap/fe/core/templating/UIFormatters.ts +6 -6
- package/src/sap/fe/core/type/DateTimeWithTimezone.js +2 -2
- package/src/sap/fe/core/type/DateTimeWithTimezone.ts +1 -1
- package/src/sap/fe/core/type/Email.js +2 -2
- package/src/sap/fe/core/type/Email.ts +1 -1
- package/src/sap/fe/core/type/FiscalDate.js +2 -2
- package/src/sap/fe/core/type/FiscalDate.ts +1 -1
- package/src/sap/fe/core/type/InputMask.js +124 -0
- package/src/sap/fe/core/type/InputMask.ts +131 -0
- package/ui5.yaml +19 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations/_internal.js +0 -81
- package/src/sap/fe/core/controllerextensions/editFlow/operations/_internal.ts +0 -117
- package/src/sap/fe/core/helpers/AnnotationEnum.js +0 -33
- package/src/sap/fe/core/helpers/AnnotationEnum.ts +0 -21
- package/src/sap/fe/core/helpers/BindingToolkit.js +0 -1813
- package/src/sap/fe/core/helpers/BindingToolkit.ts +0 -2450
- package/src/sap/fe/core/helpers/ClassSupport.js +0 -584
- package/src/sap/fe/core/helpers/ClassSupport.ts +0 -697
- package/src/sap/fe/core/jsx-runtime/Fragment.js +0 -14
- package/src/sap/fe/core/jsx-runtime/Fragment.ts +0 -3
- package/src/sap/fe/core/jsx-runtime/ViewLoader.js +0 -93
- package/src/sap/fe/core/jsx-runtime/ViewLoader.tsx +0 -86
- package/src/sap/fe/core/jsx-runtime/jsx-control.js +0 -177
- package/src/sap/fe/core/jsx-runtime/jsx-control.ts +0 -197
- package/src/sap/fe/core/jsx-runtime/jsx-xml.js +0 -237
- package/src/sap/fe/core/jsx-runtime/jsx-xml.ts +0 -246
- package/src/sap/fe/core/jsx-runtime/jsx.js +0 -47
- package/src/sap/fe/core/jsx-runtime/jsx.ts +0 -71
- package/src/sap/fe/core/jsx-runtime/jsxs.js +0 -10
- package/src/sap/fe/core/jsx-runtime/jsxs.ts +0 -3
- package/src/sap/fe/core/jsx-runtime/useMDXComponents.js +0 -172
- package/src/sap/fe/core/jsx-runtime/useMDXComponents.tsx +0 -194
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import Log from "sap/base/Log";
|
|
2
2
|
import mergeObjects from "sap/base/util/merge";
|
|
3
3
|
import type DynamicPage from "sap/f/DynamicPage";
|
|
4
|
+
import { defineUI5Class, extensible, finalExtension, privateExtension, publicExtension } from "sap/fe/base/ClassSupport";
|
|
4
5
|
import type { FEView } from "sap/fe/core/BaseController";
|
|
5
|
-
import CommonUtils from "sap/fe/core/CommonUtils";
|
|
6
6
|
import type PageController from "sap/fe/core/PageController";
|
|
7
7
|
import type IViewStateContributor from "sap/fe/core/controllerextensions/viewState/IViewStateContributor";
|
|
8
|
-
import { defineUI5Class, extensible, finalExtension, privateExtension, publicExtension } from "sap/fe/core/helpers/ClassSupport";
|
|
9
|
-
import KeepAliveHelper from "sap/fe/core/helpers/KeepAliveHelper";
|
|
10
|
-
import ModelHelper from "sap/fe/core/helpers/ModelHelper";
|
|
11
8
|
import type FilterBarAPI from "sap/fe/macros/filterBar/FilterBarAPI";
|
|
12
9
|
import type SelectionVariant from "sap/fe/navigation/SelectionVariant";
|
|
13
10
|
import NavLibrary from "sap/fe/navigation/library";
|
|
@@ -30,9 +27,6 @@ import type FilterBarBase from "sap/ui/mdc/filterbar/FilterBarBase";
|
|
|
30
27
|
|
|
31
28
|
import type StateUtil from "sap/ui/mdc/p13n/StateUtil";
|
|
32
29
|
import type { PropertyInfo } from "sap/ui/mdc/util/PropertyHelper";
|
|
33
|
-
import type ODataV4Context from "sap/ui/model/odata/v4/Context";
|
|
34
|
-
import type ObjectPageLayout from "sap/uxap/ObjectPageLayout";
|
|
35
|
-
import type { MetaModelNavProperty } from "types/metamodel_types";
|
|
36
30
|
import type FclController from "../rootView/Fcl.controller";
|
|
37
31
|
import type NavContainerController from "../rootView/NavContainer.controller";
|
|
38
32
|
|
|
@@ -86,6 +80,9 @@ export type ControlState =
|
|
|
86
80
|
} & Record<string, unknown>)
|
|
87
81
|
| undefined;
|
|
88
82
|
|
|
83
|
+
export type NavParameters = {
|
|
84
|
+
navigationType?: string;
|
|
85
|
+
};
|
|
89
86
|
export type FilterBarState = {
|
|
90
87
|
filter?: Record<string, Array<object>>;
|
|
91
88
|
} & Record<string, unknown>;
|
|
@@ -93,18 +90,17 @@ export type FilterBarState = {
|
|
|
93
90
|
///////////////////////////////////////////////////////////////////
|
|
94
91
|
// methods to retrieve & apply states for the different controls //
|
|
95
92
|
///////////////////////////////////////////////////////////////////
|
|
96
|
-
type ControlStateHandler<T extends ManagedObject, K extends unknown | undefined> = {
|
|
97
|
-
retrieve
|
|
98
|
-
apply
|
|
93
|
+
export type ControlStateHandler<T extends ManagedObject, K extends unknown | undefined> = {
|
|
94
|
+
retrieve?: (oControl: T) => K | Promise<K>;
|
|
95
|
+
apply?: (oControl: T, controlState: K, navParameters?: NavigationParameter, skipMerge?: boolean) => Promise<void> | void;
|
|
99
96
|
refreshBinding?: (oControl: T) => void;
|
|
100
97
|
};
|
|
101
98
|
type ControlStateMap = {
|
|
102
99
|
"sap.ui.fl.variants.VariantManagement": ControlStateHandler<VariantManagement, { variantId: string | null }>;
|
|
103
100
|
"sap.fe.templates.ListReport.controls.MultipleModeControl": ControlStateHandler<MultipleModeControl, { selectedKey: string }>;
|
|
104
|
-
"sap.ui.mdc.FilterBar": ControlStateHandler<FilterBar, ControlState>;
|
|
105
101
|
"sap.ui.mdc.Table": ControlStateHandler<MDCTable, ControlState>;
|
|
102
|
+
"sap.ui.mdc.FilterBar": ControlStateHandler<FilterBar, ControlState>;
|
|
106
103
|
"sap.ui.mdc.Chart": ControlStateHandler<Chart, ControlState>;
|
|
107
|
-
"sap.uxap.ObjectPageLayout": ControlStateHandler<ObjectPageLayout, { selectedSection: string }>;
|
|
108
104
|
"sap.m.SegmentedButton": ControlStateHandler<SegmentedButton, { selectedKey: string }>;
|
|
109
105
|
"sap.m.Select": ControlStateHandler<Select, { selectedKey: string }>;
|
|
110
106
|
"sap.f.DynamicPage": ControlStateHandler<DynamicPage, { headerExpanded: boolean }>;
|
|
@@ -238,47 +234,6 @@ const _mControlStateHandlerMap: ControlStateMap = {
|
|
|
238
234
|
}
|
|
239
235
|
},
|
|
240
236
|
"sap.ui.mdc.Table": {
|
|
241
|
-
retrieve: async function (this: ViewState, table: MDCTable) {
|
|
242
|
-
const controlStateKey = this.getStateKey(table);
|
|
243
|
-
const tableState = await (await getStateUtil()).retrieveExternalState(table);
|
|
244
|
-
return this._getControlState(controlStateKey, tableState);
|
|
245
|
-
},
|
|
246
|
-
apply: async function (
|
|
247
|
-
this: ViewState,
|
|
248
|
-
table: MDCTable,
|
|
249
|
-
controlState: ControlState,
|
|
250
|
-
navParameters?: NavigationParameter,
|
|
251
|
-
skipMerge?: boolean
|
|
252
|
-
) {
|
|
253
|
-
try {
|
|
254
|
-
if (controlState) {
|
|
255
|
-
// Extra condition added to apply the diff state logic for mdc control
|
|
256
|
-
const isInitialStateApplicable = this._isInitialStatesApplicable(
|
|
257
|
-
controlState?.initialState,
|
|
258
|
-
table,
|
|
259
|
-
skipMerge,
|
|
260
|
-
navParameters?.navigationType !== NavType.hybrid
|
|
261
|
-
);
|
|
262
|
-
|
|
263
|
-
if (isInitialStateApplicable) {
|
|
264
|
-
if (controlState.initialState && !controlState.initialState?.supplementaryConfig) {
|
|
265
|
-
controlState.initialState.supplementaryConfig = {};
|
|
266
|
-
}
|
|
267
|
-
const oDiffState = await (
|
|
268
|
-
await getStateUtil()
|
|
269
|
-
).diffState(table, controlState.initialState as object, controlState.fullState as object);
|
|
270
|
-
return await (await getStateUtil()).applyExternalState(table, oDiffState);
|
|
271
|
-
} else {
|
|
272
|
-
if (!controlState.supplementaryConfig) {
|
|
273
|
-
controlState.supplementaryConfig = {};
|
|
274
|
-
}
|
|
275
|
-
return await (await getStateUtil()).applyExternalState(table, controlState?.fullState ?? controlState);
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
} catch (error) {
|
|
279
|
-
Log.error(error as string);
|
|
280
|
-
}
|
|
281
|
-
},
|
|
282
237
|
refreshBinding: function (oTable: MDCTable) {
|
|
283
238
|
const oTableBinding = oTable.getRowBinding();
|
|
284
239
|
if (oTableBinding) {
|
|
@@ -331,53 +286,6 @@ const _mControlStateHandlerMap: ControlStateMap = {
|
|
|
331
286
|
}
|
|
332
287
|
}
|
|
333
288
|
},
|
|
334
|
-
"sap.uxap.ObjectPageLayout": {
|
|
335
|
-
retrieve: function (oOPLayout: ObjectPageLayout): { selectedSection: string } {
|
|
336
|
-
return {
|
|
337
|
-
selectedSection: oOPLayout.getSelectedSection()
|
|
338
|
-
};
|
|
339
|
-
},
|
|
340
|
-
apply: function (this: ViewState, oOPLayout: ObjectPageLayout, oControlState?: { selectedSection: string }): void {
|
|
341
|
-
if (oControlState) {
|
|
342
|
-
oOPLayout.setSelectedSection(oControlState.selectedSection);
|
|
343
|
-
}
|
|
344
|
-
},
|
|
345
|
-
refreshBinding: function (oOPLayout: ObjectPageLayout) {
|
|
346
|
-
const oBindingContext = oOPLayout.getBindingContext() as ODataV4Context | undefined;
|
|
347
|
-
const oBinding = oBindingContext && oBindingContext.getBinding();
|
|
348
|
-
if (oBinding) {
|
|
349
|
-
const sMetaPath = ModelHelper.getMetaPathForContext(oBindingContext);
|
|
350
|
-
const sStrategy = KeepAliveHelper.getControlRefreshStrategyForContextPath(oOPLayout, sMetaPath);
|
|
351
|
-
if (sStrategy === "self") {
|
|
352
|
-
// Refresh main context and 1-1 navigation properties or OP
|
|
353
|
-
const oModel = oBindingContext.getModel(),
|
|
354
|
-
oMetaModel = oModel.getMetaModel(),
|
|
355
|
-
oNavigationProperties: Record<string, MetaModelNavProperty> =
|
|
356
|
-
(CommonUtils.getContextPathProperties(oMetaModel, sMetaPath, {
|
|
357
|
-
$kind: "NavigationProperty"
|
|
358
|
-
}) as Record<string, MetaModelNavProperty>) || {},
|
|
359
|
-
aNavPropertiesToRequest = Object.keys(oNavigationProperties).reduce(function (
|
|
360
|
-
aPrev: { $NavigationPropertyPath: string }[],
|
|
361
|
-
sNavProp: string
|
|
362
|
-
) {
|
|
363
|
-
if (oNavigationProperties[sNavProp].$isCollection !== true) {
|
|
364
|
-
aPrev.push({ $NavigationPropertyPath: sNavProp });
|
|
365
|
-
}
|
|
366
|
-
return aPrev;
|
|
367
|
-
}, []),
|
|
368
|
-
aProperties: ({ $NavigationPropertyPath: string } | { $PropertyPath: string })[] = [{ $PropertyPath: "*" }],
|
|
369
|
-
sGroupId = oBinding.getGroupId();
|
|
370
|
-
|
|
371
|
-
oBindingContext.requestSideEffects(aProperties.concat(aNavPropertiesToRequest), sGroupId);
|
|
372
|
-
} else if (sStrategy === "includingDependents") {
|
|
373
|
-
// Complete refresh
|
|
374
|
-
oBinding.refresh();
|
|
375
|
-
}
|
|
376
|
-
} else {
|
|
377
|
-
Log.info(`ObjectPage: ${oOPLayout.getId()} was not refreshed. No binding found!`);
|
|
378
|
-
}
|
|
379
|
-
}
|
|
380
|
-
},
|
|
381
289
|
"sap.m.SegmentedButton": {
|
|
382
290
|
retrieve: function (oSegmentedButton: SegmentedButton): { selectedKey: string } {
|
|
383
291
|
return {
|
|
@@ -493,6 +401,12 @@ class ViewState extends ControllerExtension {
|
|
|
493
401
|
|
|
494
402
|
_currentViewState?: Record<string, unknown>;
|
|
495
403
|
|
|
404
|
+
configOfStateApply?: {
|
|
405
|
+
skipMerge?: boolean | undefined;
|
|
406
|
+
navTypeParameters?: NavParameters;
|
|
407
|
+
state?: Record<string, unknown>;
|
|
408
|
+
};
|
|
409
|
+
|
|
496
410
|
private updateAppStateTimer: number | undefined;
|
|
497
411
|
|
|
498
412
|
/**
|
|
@@ -686,8 +600,33 @@ class ViewState extends ControllerExtension {
|
|
|
686
600
|
oControl.applyState
|
|
687
601
|
) {
|
|
688
602
|
aInternalControlStateHandler.push({
|
|
689
|
-
|
|
690
|
-
|
|
603
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
604
|
+
retrieve: async (_control) => oControl.retrieveState.bind(oControl)(),
|
|
605
|
+
|
|
606
|
+
apply: async (
|
|
607
|
+
_control: ManagedObject,
|
|
608
|
+
controlState: object,
|
|
609
|
+
oNavParameters: NavigationParameter | undefined,
|
|
610
|
+
skipMerge: boolean | undefined
|
|
611
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
612
|
+
) => {
|
|
613
|
+
const shouldApplyDiffState =
|
|
614
|
+
!this.invalidateInitialStateForApply.includes(oControl.getId()) &&
|
|
615
|
+
!this.controlsVariantIdUnavailable.includes(oControl.getId()) &&
|
|
616
|
+
oNavParameters?.navigationType !== NavType.hybrid &&
|
|
617
|
+
skipMerge !== true;
|
|
618
|
+
if (!controlState) {
|
|
619
|
+
if (oControl.applyLegacyState) {
|
|
620
|
+
oControl.applyLegacyState.bind(oControl)(
|
|
621
|
+
this.getControlState.bind(this),
|
|
622
|
+
oNavParameters,
|
|
623
|
+
shouldApplyDiffState
|
|
624
|
+
);
|
|
625
|
+
}
|
|
626
|
+
} else {
|
|
627
|
+
oControl.applyState.bind(oControl)(controlState, oNavParameters, shouldApplyDiffState);
|
|
628
|
+
}
|
|
629
|
+
}
|
|
691
630
|
});
|
|
692
631
|
} else {
|
|
693
632
|
for (const sType in _mControlStateHandlerMap) {
|
|
@@ -770,6 +709,10 @@ class ViewState extends ControllerExtension {
|
|
|
770
709
|
oCurrentState[mState.key] = mState.value;
|
|
771
710
|
return mergeObjects(oStates, oCurrentState);
|
|
772
711
|
}, {});
|
|
712
|
+
const prevState = this._currentViewState;
|
|
713
|
+
if (prevState && Object.keys(prevState).length > 0) {
|
|
714
|
+
this._addMissingState(oViewState, prevState);
|
|
715
|
+
}
|
|
773
716
|
const mAdditionalStates = await Promise.resolve(this._retrieveAdditionalStates());
|
|
774
717
|
if (mAdditionalStates && Object.keys(mAdditionalStates).length) {
|
|
775
718
|
oViewState[ADDITIONAL_STATES_KEY] = mAdditionalStates;
|
|
@@ -781,6 +724,19 @@ class ViewState extends ControllerExtension {
|
|
|
781
724
|
return this._iRetrievingStateCounter === 0 ? oViewState : undefined;
|
|
782
725
|
}
|
|
783
726
|
|
|
727
|
+
// To carry forward unapplied state lost due to lazy loading of controls.
|
|
728
|
+
//
|
|
729
|
+
// If user 1 changes a control's state in a lazy-loaded section and navigates away, then shares the URL with user 2,
|
|
730
|
+
// who doesn't visit the lazy-loaded section, the control's state is missed in the new app state.
|
|
731
|
+
// This ensures the full state from user 1 is preserved and transferred to user 3 when the URL is shared.
|
|
732
|
+
_addMissingState(oViewState: Record<string, unknown>, prevState: Record<string, unknown>): void {
|
|
733
|
+
for (const key in prevState) {
|
|
734
|
+
if (!(key in oViewState)) {
|
|
735
|
+
oViewState[key] = prevState[key];
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
}
|
|
739
|
+
|
|
784
740
|
/**
|
|
785
741
|
* Extend the map of additional states (not control bound) to be added to the current view state of the given view.
|
|
786
742
|
*
|
|
@@ -851,6 +807,22 @@ class ViewState extends ControllerExtension {
|
|
|
851
807
|
return true;
|
|
852
808
|
}
|
|
853
809
|
|
|
810
|
+
/**
|
|
811
|
+
* Retrieves the state of a specific control.
|
|
812
|
+
*
|
|
813
|
+
* @param control The managed control object whose state is to be retrieved.
|
|
814
|
+
* @returns - The state of the specified control.
|
|
815
|
+
*/
|
|
816
|
+
getControlState(control: ManagedObject): ControlState {
|
|
817
|
+
const oViewState = this._currentViewState;
|
|
818
|
+
let controlState: ControlState = {};
|
|
819
|
+
if (oViewState) {
|
|
820
|
+
const controlKey = this.getStateKey(control);
|
|
821
|
+
controlState = oViewState[controlKey] as Record<string, ControlState>;
|
|
822
|
+
}
|
|
823
|
+
return controlState;
|
|
824
|
+
}
|
|
825
|
+
|
|
854
826
|
/**
|
|
855
827
|
* Applies the given view state to this extensions view.
|
|
856
828
|
*
|
|
@@ -886,8 +858,14 @@ class ViewState extends ControllerExtension {
|
|
|
886
858
|
let oPromiseChain = Promise.resolve();
|
|
887
859
|
let hasVariantManagement = false;
|
|
888
860
|
this._currentViewState = oViewState;
|
|
861
|
+
|
|
862
|
+
this.configOfStateApply = this.configOfStateApply ?? {};
|
|
863
|
+
this.configOfStateApply.skipMerge = skipMerge;
|
|
864
|
+
this.configOfStateApply.navTypeParameters = oNavParameter;
|
|
865
|
+
this.configOfStateApply.state = oViewState;
|
|
866
|
+
|
|
889
867
|
/**
|
|
890
|
-
*
|
|
868
|
+
* This ensures that variantManagement control is applied first to calculate the initial state for delta logic
|
|
891
869
|
*/
|
|
892
870
|
const sortedAdaptStateControls = aControls.reduce((modifiedControls: ManagedObject[], control) => {
|
|
893
871
|
if (!control) {
|
|
@@ -1120,8 +1098,17 @@ class ViewState extends ControllerExtension {
|
|
|
1120
1098
|
if (this._currentViewState) {
|
|
1121
1099
|
const controlKey = this.getStateKey(stateContributor);
|
|
1122
1100
|
const controlState = this._currentViewState[controlKey];
|
|
1123
|
-
|
|
1124
|
-
|
|
1101
|
+
const navigationType = this.configOfStateApply?.navTypeParameters?.navigationType;
|
|
1102
|
+
const skipMerge = this.configOfStateApply?.skipMerge;
|
|
1103
|
+
if (controlState && controlState === this.configOfStateApply?.state?.[controlKey]) {
|
|
1104
|
+
// To check whether diffstate shuold be called or not to applyExternalState
|
|
1105
|
+
const shouldApplyDiffState =
|
|
1106
|
+
!this.invalidateInitialStateForApply.includes(stateContributor.getId()) &&
|
|
1107
|
+
!this.controlsVariantIdUnavailable.includes(stateContributor.getId()) &&
|
|
1108
|
+
navigationType !== NavType.hybrid &&
|
|
1109
|
+
skipMerge !== true;
|
|
1110
|
+
|
|
1111
|
+
stateContributor.applyState(controlState, undefined, shouldApplyDiffState);
|
|
1125
1112
|
} else {
|
|
1126
1113
|
this.updateAppStateDebounced();
|
|
1127
1114
|
}
|
|
@@ -1165,6 +1152,8 @@ class ViewState extends ControllerExtension {
|
|
|
1165
1152
|
let initialControlStates: object[] = [];
|
|
1166
1153
|
const variantControls: string[] = variantManagement?.getFor() ?? [];
|
|
1167
1154
|
|
|
1155
|
+
this.updateInitialState(variantControls);
|
|
1156
|
+
|
|
1168
1157
|
await Promise.all(
|
|
1169
1158
|
adaptControls
|
|
1170
1159
|
.filter(function (control) {
|
|
@@ -1215,6 +1204,29 @@ class ViewState extends ControllerExtension {
|
|
|
1215
1204
|
}
|
|
1216
1205
|
}
|
|
1217
1206
|
});
|
|
1207
|
+
this.updateInitialState(vmAssociatedControlsToReset);
|
|
1208
|
+
}
|
|
1209
|
+
|
|
1210
|
+
/**
|
|
1211
|
+
* Updates the initial state of the specified variant controls.
|
|
1212
|
+
*
|
|
1213
|
+
* @param variantControls An array of control IDs for which the initial state needs to be updated.
|
|
1214
|
+
* @returns A promise that resolves when the initial state update is complete.
|
|
1215
|
+
*/
|
|
1216
|
+
async updateInitialState(variantControls: string[]): Promise<void> {
|
|
1217
|
+
const viewControls: (ManagedObject | undefined)[] = this.stateContributors;
|
|
1218
|
+
await Promise.all(
|
|
1219
|
+
viewControls.map(async (control) => {
|
|
1220
|
+
const controlId: string = control?.getId() as string;
|
|
1221
|
+
if (
|
|
1222
|
+
variantControls.includes(controlId) &&
|
|
1223
|
+
control?.isA<IViewStateContributor<object>>("sap.fe.core.controllerextensions.viewState.IViewStateContributor") &&
|
|
1224
|
+
control.setInitialState
|
|
1225
|
+
) {
|
|
1226
|
+
await control.setInitialState();
|
|
1227
|
+
}
|
|
1228
|
+
})
|
|
1229
|
+
);
|
|
1218
1230
|
}
|
|
1219
1231
|
|
|
1220
1232
|
_isInitialStatesApplicable(
|
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2024 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/fe/
|
|
5
|
+
sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/CommonUtils", "sap/fe/core/controllerextensions/HookSupport", "sap/ui/core/mvc/ControllerExtension"], function (ClassSupport, CommonUtils, HookSupport, ControllerExtension) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _class, _class2;
|
|
9
9
|
var _exports = {};
|
|
10
|
+
var hookable = HookSupport.hookable;
|
|
10
11
|
var publicExtension = ClassSupport.publicExtension;
|
|
11
12
|
var methodOverride = ClassSupport.methodOverride;
|
|
12
13
|
var extensible = ClassSupport.extensible;
|
|
13
14
|
var defineUI5Class = ClassSupport.defineUI5Class;
|
|
14
|
-
var hookable = HookSupport.hookable;
|
|
15
15
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
16
16
|
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
17
17
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
@@ -77,4 +77,4 @@ sap.ui.define(["sap/fe/core/CommonUtils", "sap/fe/core/controllerextensions/Hook
|
|
|
77
77
|
_exports = CollaborationManagerExtension;
|
|
78
78
|
return _exports;
|
|
79
79
|
}, false);
|
|
80
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb2xsYWJvcmF0aW9uTWFuYWdlckV4dGVuc2lvbiIsImRlZmluZVVJNUNsYXNzIiwibWV0aG9kT3ZlcnJpZGUiLCJwdWJsaWNFeHRlbnNpb24iLCJleHRlbnNpYmxlIiwiaG9va2FibGUiLCJpbml0Iiwib25Jbml0IiwiZmVWaWV3IiwiYmFzZSIsImdldFZpZXciLCJhcHBDb21wb25lbnQiLCJDb21tb25VdGlscyIsImdldEFwcENvbXBvbmVudCIsImVudmlyb25tZW50Q2FwYWJpbGl0aWVzIiwiZ2V0U2VydmljZSIsInNlcnZpY2VFbmFibGVkIiwiZ2V0Q2FwYWJpbGl0aWVzIiwiSW5zaWdodHNTdXBwb3J0ZWQiLCJpc0luc2lnaHRzRW5hYmxlZCIsIm9uQWZ0ZXJCaW5kaW5nIiwiY29ubmVjdCIsImdldElkIiwiY2FyZHMiLCJjb2xsZWN0QXZhaWxhYmxlQ2FyZHMiLCJjYXJkT2JqZWN0IiwicmVkdWNlIiwiYWNjIiwiY3VyIiwiY2FyZCIsImlkIiwicGFyZW50QXBwSWQiLCJhZGRDYXJkc1RvQ29sbGFib3JhdGlvbk1hbmFnZXIiLCJvbkV4aXQiLCJ1bnJlZ2lzdGVyUHJvdmlkZXIiLCJnZXRDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2UiLCJQcm9taXNlIiwicmVzb2x2ZSIsIkNvbnRyb2xsZXJFeHRlbnNpb24iXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIkNvbGxhYm9yYXRpb25NYW5hZ2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlZmluZVVJNUNsYXNzLCBleHRlbnNpYmxlLCBtZXRob2RPdmVycmlkZSwgcHVibGljRXh0ZW5zaW9uIH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IHR5cGUgQXBwQ29tcG9uZW50IGZyb20gXCJzYXAvZmUvY29yZS9BcHBDb21wb25lbnRcIjtcbmltcG9ydCB0eXBlIHsgRkVWaWV3IH0gZnJvbSBcInNhcC9mZS9jb3JlL0Jhc2VDb250cm9sbGVyXCI7XG5pbXBvcnQgQ29tbW9uVXRpbHMgZnJvbSBcInNhcC9mZS9jb3JlL0NvbW1vblV0aWxzXCI7XG5pbXBvcnQgdHlwZSBQYWdlQ29udHJvbGxlciBmcm9tIFwic2FwL2ZlL2NvcmUvUGFnZUNvbnRyb2xsZXJcIjtcbmltcG9ydCB7IGhvb2thYmxlIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnRyb2xsZXJleHRlbnNpb25zL0hvb2tTdXBwb3J0XCI7XG5pbXBvcnQgdHlwZSB7IENvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZSwgV3JhcHBlZENhcmQgfSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvQ29sbGFib3JhdGlvbk1hbmFnZXJTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IHR5cGUgeyBFbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2UgfSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvRW52aXJvbm1lbnRTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IENvbnRyb2xsZXJFeHRlbnNpb24gZnJvbSBcInNhcC91aS9jb3JlL212Yy9Db250cm9sbGVyRXh0ZW5zaW9uXCI7XG4vKipcbiAqIEFuIGltcGxlbWVudGF0aW9uIGZvciBjb250cm9sbGVyIGV4dGVuc2lvbiB1c2VkIGludGVybmFsbHkgaW4gc2FwLmZlIGZvciBjZW50cmFsIGZ1bmN0aW9uYWxpdGllcyB0byBzZXJ2ZSBjb2xsYWJvcmF0aW9uIG1hbmFnZXIgdXNlIGNhc2VzLlxuICpcbiAqIEBzaW5jZSAxLjEyMC4wXG4gKi9cbkBkZWZpbmVVSTVDbGFzcyhcInNhcC5mZS5jb3JlLmNvbnRyb2xsZXJleHRlbnNpb25zLmNhcmRzLkNvbGxhYm9yYXRpb25NYW5hZ2VyXCIpXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb2xsYWJvcmF0aW9uTWFuYWdlckV4dGVuc2lvbiBleHRlbmRzIENvbnRyb2xsZXJFeHRlbnNpb24ge1xuXHRwcm90ZWN0ZWQgYmFzZSE6IFBhZ2VDb250cm9sbGVyO1xuXG5cdHByb3RlY3RlZCBmZVZpZXchOiBGRVZpZXc7XG5cblx0cHJpdmF0ZSBhcHBDb21wb25lbnQhOiBBcHBDb21wb25lbnQ7XG5cblx0cHJpdmF0ZSBzZXJ2aWNlRW5hYmxlZCE6IGJvb2xlYW47XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0c3VwZXIoKTtcblx0XHQodGhpcyBhcyB1bmtub3duIGFzIHsgaW5pdDogRnVuY3Rpb24gfSkuaW5pdCgpO1xuXHR9XG5cblx0QG1ldGhvZE92ZXJyaWRlKClcblx0YXN5bmMgb25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdHRoaXMuZmVWaWV3ID0gdGhpcy5iYXNlLmdldFZpZXcoKTtcblx0XHR0aGlzLmFwcENvbXBvbmVudCA9IENvbW1vblV0aWxzLmdldEFwcENvbXBvbmVudCh0aGlzLmZlVmlldyk7XG5cdFx0Y29uc3QgZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMgPSAoYXdhaXQgdGhpcy5hcHBDb21wb25lbnQuZ2V0U2VydmljZShcImVudmlyb25tZW50Q2FwYWJpbGl0aWVzXCIpKSBhcyBFbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2U7XG5cblx0XHR0aGlzLnNlcnZpY2VFbmFibGVkID0gdHJ1ZTtcblx0XHQvLyBPbmx5IGNvbm5lY3QgdG8gdGhlIENvbGxhYm9yYXRpb24gTWFuYWdlciBpZiBpdCBpcyBleHBsaWNpdGx5IGVuYWJsZWQgYW5kIHRoZSBzYXAuaW5zaWdodHMgbGlicmFyeSBpcyBsb2FkZWRcblx0XHRpZiAoXG5cdFx0XHQhdGhpcy5hcHBDb21wb25lbnRbXCJpc0NvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZUVuYWJsZWRcIl0oKSB8fFxuXHRcdFx0IWVudmlyb25tZW50Q2FwYWJpbGl0aWVzLmdldENhcGFiaWxpdGllcygpLkluc2lnaHRzU3VwcG9ydGVkIHx8XG5cdFx0XHQhKGF3YWl0IGVudmlyb25tZW50Q2FwYWJpbGl0aWVzLmlzSW5zaWdodHNFbmFibGVkKCkpXG5cdFx0KSB7XG5cdFx0XHR0aGlzLnNlcnZpY2VFbmFibGVkID0gZmFsc2U7XG5cdFx0fVxuXHR9XG5cblx0QG1ldGhvZE92ZXJyaWRlKFwiX3JvdXRpbmdcIilcblx0YXN5bmMgb25BZnRlckJpbmRpbmcoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0aWYgKHRoaXMuc2VydmljZUVuYWJsZWQgPT09IGZhbHNlKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXHRcdGF3YWl0IHRoaXMuZ2V0U2VydmljZSgpLmNvbm5lY3QodGhpcy5hcHBDb21wb25lbnQuZ2V0SWQoKSwgYXN5bmMgKCkgPT4ge1xuXHRcdFx0Y29uc3QgY2FyZHM6IFdyYXBwZWRDYXJkW10gPSBbXTtcblx0XHRcdGF3YWl0IHRoaXMuY29sbGVjdEF2YWlsYWJsZUNhcmRzKGNhcmRzKTtcblx0XHRcdGNvbnN0IGNhcmRPYmplY3QgPSBjYXJkcy5yZWR1Y2UoXG5cdFx0XHRcdChhY2MsIGN1cikgPT4ge1xuXHRcdFx0XHRcdGFjY1tjdXI/LmNhcmRbXCJzYXAuYXBwXCJdPy5pZF0gPSBjdXI7XG5cdFx0XHRcdFx0cmV0dXJuIGFjYztcblx0XHRcdFx0fSxcblx0XHRcdFx0e30gYXMgUmVjb3JkPHN0cmluZywgV3JhcHBlZENhcmQ+XG5cdFx0XHQpO1xuXG5cdFx0XHRjb25zdCBwYXJlbnRBcHBJZCA9IHRoaXMuYXBwQ29tcG9uZW50LmdldElkKCk7XG5cdFx0XHR0aGlzLmdldFNlcnZpY2UoKS5hZGRDYXJkc1RvQ29sbGFib3JhdGlvbk1hbmFnZXIoY2FyZE9iamVjdCwgcGFyZW50QXBwSWQpO1xuXHRcdH0pO1xuXHR9XG5cblx0LyoqXG5cdCAqIEF1dG9tYXRpYyB1bnJlZ2lzdGVyaW5nIG9uIGV4aXQgb2YgdGhlIGFwcGxpY2F0aW9uLlxuXHQgKlxuXHQgKi9cblx0QG1ldGhvZE92ZXJyaWRlKClcblx0b25FeGl0KCk6IHZvaWQge1xuXHRcdHRoaXMuZ2V0U2VydmljZSgpLnVucmVnaXN0ZXJQcm92aWRlcigpO1xuXHR9XG5cblx0Z2V0U2VydmljZSgpOiBDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2Uge1xuXHRcdHJldHVybiB0aGlzLmFwcENvbXBvbmVudC5nZXRDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2UoKTtcblx0fVxuXG5cdEBwdWJsaWNFeHRlbnNpb24oKVxuXHRAZXh0ZW5zaWJsZShcIkFmdGVyQXN5bmNcIilcblx0QGhvb2thYmxlKFwiYWZ0ZXJcIiwgdHJ1ZSlcblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuXHRhc3luYyBjb2xsZWN0QXZhaWxhYmxlQ2FyZHMoY2FyZHM6IFdyYXBwZWRDYXJkW10pOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG5cdH1cbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQUE7QUFBQTs7Ozs7Ozs7Ozs7Ozs7O01BZXFCQSw2QkFBNkI7RUFObEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUpBLE9BS0NDLGNBQWMsQ0FBQyw2REFBNkQsQ0FBQyxVQWU1RUMsY0FBYyxFQUFFLFVBaUJoQkEsY0FBYyxDQUFDLFVBQVUsQ0FBQyxVQXlCMUJBLGNBQWMsRUFBRSxVQVNoQkMsZUFBZSxFQUFFLFVBQ2pCQyxVQUFVLENBQUMsWUFBWSxDQUFDLFVBQ3hCQyxRQUFRLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQztJQUFBO0lBMUR4Qix5Q0FBYztNQUFBO01BQ2IsdUNBQU87TUFDUCw4QkFBd0NDLElBQUksRUFBRTtNQUFDO0lBQ2hEO0lBQUM7SUFBQTtJQUFBLE9BR0tDLE1BQU0sR0FEWix3QkFDOEI7TUFDN0IsSUFBSSxDQUFDQyxNQUFNLEdBQUcsSUFBSSxDQUFDQyxJQUFJLENBQUNDLE9BQU8sRUFBRTtNQUNqQyxJQUFJLENBQUNDLFlBQVksR0FBR0MsV0FBVyxDQUFDQyxlQUFlLENBQUMsSUFBSSxDQUFDTCxNQUFNLENBQUM7TUFDNUQsTUFBTU0sdUJBQXVCLEdBQUksTUFBTSxJQUFJLENBQUNILFlBQVksQ0FBQ0ksVUFBVSxDQUFDLHlCQUF5QixDQUFvQztNQUVqSSxJQUFJLENBQUNDLGNBQWMsR0FBRyxJQUFJO01BQzFCO01BQ0EsSUFDQyxDQUFDLElBQUksQ0FBQ0wsWUFBWSxDQUFDLHNDQUFzQyxDQUFDLEVBQUUsSUFDNUQsQ0FBQ0csdUJBQXVCLENBQUNHLGVBQWUsRUFBRSxDQUFDQyxpQkFBaUIsSUFDNUQsRUFBRSxNQUFNSix1QkFBdUIsQ0FBQ0ssaUJBQWlCLEVBQUUsQ0FBQyxFQUNuRDtRQUNELElBQUksQ0FBQ0gsY0FBYyxHQUFHLEtBQUs7TUFDNUI7SUFDRCxDQUFDO0lBQUEsT0FHS0ksY0FBYyxHQURwQixnQ0FDc0M7TUFDckMsSUFBSSxJQUFJLENBQUNKLGNBQWMsS0FBSyxLQUFLLEVBQUU7UUFDbEM7TUFDRDtNQUNBLE1BQU0sSUFBSSxDQUFDRCxVQUFVLEVBQUUsQ0FBQ00sT0FBTyxDQUFDLElBQUksQ0FBQ1YsWUFBWSxDQUFDVyxLQUFLLEVBQUUsRUFBRSxZQUFZO1FBQ3RFLE1BQU1DLEtBQW9CLEdBQUcsRUFBRTtRQUMvQixNQUFNLElBQUksQ0FBQ0MscUJBQXFCLENBQUNELEtBQUssQ0FBQztRQUN2QyxNQUFNRSxVQUFVLEdBQUdGLEtBQUssQ0FBQ0csTUFBTSxDQUM5QixDQUFDQyxHQUFHLEVBQUVDLEdBQUcsS0FBSztVQUFBO1VBQ2JELEdBQUcsQ0FBQ0MsR0FBRyxhQUFIQSxHQUFHLDJDQUFIQSxHQUFHLENBQUVDLElBQUksQ0FBQyxTQUFTLENBQUMscURBQXBCLGlCQUFzQkMsRUFBRSxDQUFDLEdBQUdGLEdBQUc7VUFDbkMsT0FBT0QsR0FBRztRQUNYLENBQUMsRUFDRCxDQUFDLENBQUMsQ0FDRjtRQUVELE1BQU1JLFdBQVcsR0FBRyxJQUFJLENBQUNwQixZQUFZLENBQUNXLEtBQUssRUFBRTtRQUM3QyxJQUFJLENBQUNQLFVBQVUsRUFBRSxDQUFDaUIsOEJBQThCLENBQUNQLFVBQVUsRUFBRU0sV0FBVyxDQUFDO01BQzFFLENBQUMsQ0FBQztJQUNIOztJQUVBO0FBQ0Q7QUFDQTtBQUNBLE9BSEM7SUFBQSxPQUtBRSxNQUFNLEdBRE4sa0JBQ2U7TUFDZCxJQUFJLENBQUNsQixVQUFVLEVBQUUsQ0FBQ21CLGtCQUFrQixFQUFFO0lBQ3ZDLENBQUM7SUFBQSxPQUVEbkIsVUFBVSxHQUFWLHNCQUEwQztNQUN6QyxPQUFPLElBQUksQ0FBQ0osWUFBWSxDQUFDd0IsOEJBQThCLEVBQUU7SUFDMUQsQ0FBQztJQUFBLE9BTUtYLHFCQUFxQixHQUozQixxQ0FJNEJELEtBQW9CLEVBQWlCO01BQ2hFLE9BQU9hLE9BQU8sQ0FBQ0MsT0FBTyxFQUFFO0lBQ3pCLENBQUM7SUFBQTtFQUFBLEVBdkV5REMsbUJBQW1CO0VBQUE7RUFBQTtBQUFBIn0=
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
+
import { defineUI5Class, extensible, methodOverride, publicExtension } from "sap/fe/base/ClassSupport";
|
|
1
2
|
import type AppComponent from "sap/fe/core/AppComponent";
|
|
2
3
|
import type { FEView } from "sap/fe/core/BaseController";
|
|
3
4
|
import CommonUtils from "sap/fe/core/CommonUtils";
|
|
4
5
|
import type PageController from "sap/fe/core/PageController";
|
|
5
6
|
import { hookable } from "sap/fe/core/controllerextensions/HookSupport";
|
|
6
|
-
import { defineUI5Class, extensible, methodOverride, publicExtension } from "sap/fe/core/helpers/ClassSupport";
|
|
7
7
|
import type { CollaborationManagerService, WrappedCard } from "sap/fe/core/services/CollaborationManagerServiceFactory";
|
|
8
8
|
import type { EnvironmentCapabilitiesService } from "sap/fe/core/services/EnvironmentServiceFactory";
|
|
9
9
|
import ControllerExtension from "sap/ui/core/mvc/ControllerExtension";
|
|
@@ -133,7 +133,7 @@ sap.ui.define(["sap/ui/core/Component", "sap/ui/core/Lib"], function (Component,
|
|
|
133
133
|
const shareAction = model.bindContext(`${shareActionName}(...)`, bindingContext);
|
|
134
134
|
shareAction.setParameter("Users", users);
|
|
135
135
|
shareAction.setParameter("ShareAll", true);
|
|
136
|
-
|
|
136
|
+
return shareAction.execute("$auto.Heroes");
|
|
137
137
|
}
|
|
138
138
|
_exports.shareObject = shareObject;
|
|
139
139
|
function getActivityKeyFromPath(path) {
|
|
@@ -144,4 +144,4 @@ sap.ui.define(["sap/ui/core/Component", "sap/ui/core/Lib"], function (Component,
|
|
|
144
144
|
_exports.CollaborationFieldGroupPrefix = CollaborationFieldGroupPrefix;
|
|
145
145
|
return _exports;
|
|
146
146
|
}, false);
|
|
147
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJVc2VyU3RhdHVzIiwiVXNlckVkaXRpbmdTdGF0ZSIsIkFjdGl2aXR5IiwiZm9ybWF0SW5pdGlhbHMiLCJmdWxsTmFtZSIsImFjYWRlbWljVGl0bGVzIiwiZm9yRWFjaCIsImFjYWRlbWljVGl0bGUiLCJyZXBsYWNlIiwiaW5pdGlhbHMiLCJwYXJ0cyIsInRyaW1TdGFydCIsInNwbGl0IiwibGVuZ3RoIiwic2hpZnQiLCJjaGFyQXQiLCJwb3AiLCJzdWJzdHJpbmciLCJ0b1VwcGVyQ2FzZSIsImdldFVzZXJDb2xvciIsIlVzZXJJRCIsImFjdGl2ZVVzZXJzIiwiaW52aXRlZFVzZXJzIiwidXNlciIsImZpbmQiLCJ1IiwiaWQiLCJjb2xvciIsImkiLCJmaW5kSW5kZXgiLCJnZXRBcHBDb21wb25lbnQiLCJvQ29udHJvbCIsImlzQSIsIm9Pd25lciIsIkNvbXBvbmVudCIsImdldE93bmVyQ29tcG9uZW50Rm9yIiwiZ2V0TWUiLCJ2aWV3Iiwic2hlbGxTZXJ2aWNlSGVscGVyIiwiZ2V0U2hlbGxTZXJ2aWNlcyIsIm5hbWUiLCJoYXNVU2hlbGwiLCJnZXRVc2VySW5pdGlhbHMiLCJnZXRVc2VyIiwiZ2V0SWQiLCJnZXRGdWxsTmFtZSIsIndpbmRvdyIsImFkdCIsInVzZXJJRCIsInVzZXJOYW1lIiwiZ2V0VGV4dCIsImluaXRpYWxOYW1lIiwibWUiLCJzdGF0dXMiLCJDdXJyZW50bHlFZGl0aW5nIiwidGV4dElkIiwib1Jlc291cmNlTW9kZWwiLCJMaWJyYXJ5IiwiZ2V0UmVzb3VyY2VCdW5kbGVGb3IiLCJhcmdzIiwiQ29sbGFib3JhdGlvblV0aWxzIiwic2hhcmVPYmplY3QiLCJiaW5kaW5nQ29udGV4dCIsInVzZXJzIiwibW9kZWwiLCJnZXRNb2RlbCIsIm1ldGFNb2RlbCIsImdldE1ldGFNb2RlbCIsImVudGl0eVNldCIsImdldE1ldGFQYXRoIiwiZ2V0UGF0aCIsInNoYXJlQWN0aW9uTmFtZSIsImdldE9iamVjdCIsInNoYXJlQWN0aW9uIiwiYmluZENvbnRleHQiLCJzZXRQYXJhbWV0ZXIiLCJleGVjdXRlIiwiZ2V0QWN0aXZpdHlLZXlGcm9tUGF0aCIsInBhdGgiLCJsYXN0SW5kZXhPZiIsIkNvbGxhYm9yYXRpb25GaWVsZEdyb3VwUHJlZml4Il0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJDb2xsYWJvcmF0aW9uQ29tbW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIEFwcENvbXBvbmVudCBmcm9tIFwic2FwL2ZlL2NvcmUvQXBwQ29tcG9uZW50XCI7XG5pbXBvcnQgQ29tcG9uZW50IGZyb20gXCJzYXAvdWkvY29yZS9Db21wb25lbnRcIjtcblxuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IExpYnJhcnkgZnJvbSBcInNhcC91aS9jb3JlL0xpYlwiO1xuaW1wb3J0IHR5cGUgVmlldyBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL1ZpZXdcIjtcbmltcG9ydCB0eXBlIENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9Db250ZXh0XCI7XG5cbi8vIEFEVCBQcmV2aWV3IHByb3ZpZGVzIHRoZSB1c2VyIG5hbWUgYW5kIGlkIGZvciBjb2xsYWJvcmF0aW9uIGRyYWZ0XG5kZWNsYXJlIGdsb2JhbCB7XG5cdGludGVyZmFjZSBXaW5kb3cge1xuXHRcdGFkdDoge1xuXHRcdFx0dXNlck5hbWU6IHN0cmluZztcblx0XHRcdHVzZXJJRDogc3RyaW5nO1xuXHRcdH07XG5cdH1cbn1cblxuZXhwb3J0IGVudW0gVXNlclN0YXR1cyB7XG5cdE5vdFlldEludml0ZWQgPSAwLFxuXHROb0NoYW5nZXNNYWRlID0gMSxcblx0Q2hhbmdlc01hZGUgPSAyLFxuXHRDdXJyZW50bHlFZGl0aW5nID0gM1xufVxuXG5leHBvcnQgZW51bSBVc2VyRWRpdGluZ1N0YXRlIHtcblx0Tm9DaGFuZ2VzID0gXCJOXCIsXG5cdEluUHJvZ3Jlc3MgPSBcIlBcIlxufVxuXG5leHBvcnQgdHlwZSBVc2VyID0ge1xuXHRpZDogc3RyaW5nO1xuXHRpbml0aWFscz86IHN0cmluZztcblx0bmFtZTogc3RyaW5nO1xuXHRjb2xvcj86IHN0cmluZztcblx0dHJhbnNpZW50PzogYm9vbGVhbjtcblx0c3RhdHVzPzogVXNlclN0YXR1cztcblx0bWU/OiBib29sZWFuO1xuXHRpbml0aWFsTmFtZT86IHN0cmluZztcbn07XG5cbi8vIGJhY2tlbmQgcmVwcmVzZW50YXRpb24gb2YgYSB1c2VyIGFjY29yZGluZyB0byBjb2xsYWJvcmF0aW9uIGRyYWZ0IHNwZWNcbmV4cG9ydCB0eXBlIEJhY2tlbmRVc2VyID0ge1xuXHRVc2VySUQ6IHN0cmluZztcblx0VXNlckFjY2Vzc1JvbGU6IHN0cmluZztcblx0VXNlckVkaXRpbmdTdGF0ZT86IFVzZXJFZGl0aW5nU3RhdGU7XG5cdFVzZXJEZXNjcmlwdGlvbj86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFVzZXJBY3Rpdml0eSA9IFVzZXIgJiB7XG5cdGtleT86IHN0cmluZztcbn07XG5cbmV4cG9ydCBlbnVtIEFjdGl2aXR5IHtcblx0Sm9pbiA9IFwiSk9JTlwiLFxuXHRKb2luRWNobyA9IFwiSk9JTkVDSE9cIixcblx0TGVhdmUgPSBcIkxFQVZFXCIsXG5cdENoYW5nZSA9IFwiQ0hBTkdFXCIsXG5cdENyZWF0ZSA9IFwiQ1JFQVRFXCIsXG5cdERlbGV0ZSA9IFwiREVMRVRFXCIsXG5cdEFjdGlvbiA9IFwiQUNUSU9OXCIsXG5cdExvY2sgPSBcIkxPQ0tcIixcblx0QWN0aXZhdGUgPSBcIkFDVElWQVRFXCIsXG5cdERpc2NhcmQgPSBcIkRJU0NBUkRcIixcblx0VW5sb2NrID0gXCJVTkxPQ0tcIlxufVxuXG5leHBvcnQgdHlwZSBNZXNzYWdlID0ge1xuXHR1c2VyRGVzY3JpcHRpb246IHN0cmluZztcblx0dXNlcklEOiBzdHJpbmc7XG5cdHVzZXJBY3Rpb246IHN0cmluZztcblx0Y2xpZW50QWN0aW9uOiBzdHJpbmc7XG5cdGNsaWVudFRyaWdnZXJlZEFjdGlvbk5hbWU/OiBzdHJpbmc7XG5cdGNsaWVudFJlZnJlc2hMaXN0QmluZGluZz86IHN0cmluZztcblx0Y2xpZW50UmVxdWVzdGVkUHJvcGVydGllcz86IHN0cmluZztcblx0Y2xpZW50Q29udGVudDogc3RyaW5nO1xufTtcblxuZnVuY3Rpb24gZm9ybWF0SW5pdGlhbHMoZnVsbE5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG5cdC8vIHJlbW92ZSB0aXRsZXMgLSB0aG9zZSBhcmUgdGhlIG9uZXMgZnJvbSBTLzQgdG8gYmUgY2hlY2tlZCBpZiB0aGVyZSBhcmUgb3RoZXJzXG5cdGNvbnN0IGFjYWRlbWljVGl0bGVzID0gW1wiRHIuXCIsIFwiUHJvZi5cIiwgXCJQcm9mLiBEci5cIiwgXCJCLkEuXCIsIFwiTUJBXCIsIFwiUGguRC5cIl07XG5cdGFjYWRlbWljVGl0bGVzLmZvckVhY2goZnVuY3Rpb24gKGFjYWRlbWljVGl0bGUpIHtcblx0XHRmdWxsTmFtZSA9IGZ1bGxOYW1lLnJlcGxhY2UoYWNhZGVtaWNUaXRsZSwgXCJcIik7XG5cdH0pO1xuXG5cdGxldCBpbml0aWFsczogc3RyaW5nO1xuXHRjb25zdCBwYXJ0cyA9IGZ1bGxOYW1lLnRyaW1TdGFydCgpLnNwbGl0KFwiIFwiKTtcblxuXHRpZiAocGFydHMubGVuZ3RoID4gMSkge1xuXHRcdGluaXRpYWxzID0gKHBhcnRzPy5zaGlmdCgpPy5jaGFyQXQoMCkgfHwgXCJcIikgKyBwYXJ0cy5wb3AoKT8uY2hhckF0KDApO1xuXHR9IGVsc2Uge1xuXHRcdGluaXRpYWxzID0gZnVsbE5hbWUuc3Vic3RyaW5nKDAsIDIpO1xuXHR9XG5cblx0cmV0dXJuIGluaXRpYWxzLnRvVXBwZXJDYXNlKCk7XG59XG5cbmZ1bmN0aW9uIGdldFVzZXJDb2xvcihVc2VySUQ6IHN0cmluZywgYWN0aXZlVXNlcnM6IFVzZXJbXSwgaW52aXRlZFVzZXJzOiBVc2VyW10pOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuXHQvLyBzZWFyY2ggaWYgdXNlciBpcyBrbm93blxuXHRjb25zdCB1c2VyID0gYWN0aXZlVXNlcnMuZmluZCgodSkgPT4gdS5pZCA9PT0gVXNlcklEKTtcblx0aWYgKHVzZXIpIHtcblx0XHRyZXR1cm4gdXNlci5jb2xvcjtcblx0fSBlbHNlIHtcblx0XHQvLyBzZWFyY2ggZm9yIG5leHQgZnJlZSBjb2xvclxuXHRcdGZvciAobGV0IGkgPSAxOyBpIDw9IDEwOyBpKyspIHtcblx0XHRcdGlmIChcblx0XHRcdFx0YWN0aXZlVXNlcnMuZmluZEluZGV4KCh1KSA9PiB1LmNvbG9yID09PSBgQWNjZW50JHtpfWApID09PSAtMSAmJlxuXHRcdFx0XHRpbnZpdGVkVXNlcnMuZmluZEluZGV4KCh1KSA9PiB1LmNvbG9yID09PSBgQWNjZW50JHtpfWApID09PSAtMVxuXHRcdFx0KSB7XG5cdFx0XHRcdHJldHVybiBgQWNjZW50JHtpfWA7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC8vIHRoaXMgc2VlbXMgdG8gYmUgYSBwb3B1bGFyIG9iamVjdCA6KSBmb3Igbm93IGp1c3QgcmV0dXJuIDEwIGZvciBhbGwuXG5cdFx0Ly8gZm9yIGludml0ZWQgd2Ugc2hvdWxkIHN0YXJ0IGZyb20gMSBhZ2FpbiBzbyB0aGUgY29sb3JzIGFyZSBkaWZmZXJlbnRcblx0XHRyZXR1cm4gXCJBY2NlbnQxMFwiO1xuXHR9XG59XG5cbi8vIGNvcGllZCBmcm9tIENvbW1vblV0aWxzLiBEdWUgdG8gYSBjeWNsZSBkZXBlbmRlbmN5IEkgY2FuJ3QgdXNlIENvbW1vblV0aWxzIGhlcmUuXG4vLyBUaGF0J3MgdG8gYmUgZml4ZWQuIHRoZSBkaXNjYXJkIHBvcG92ZXIgdGhpbmd5IHNob3VsZG4ndCBiZSBpbiB0aGUgY29tbW9uIHV0aWxzIGF0IGFsbFxuZnVuY3Rpb24gZ2V0QXBwQ29tcG9uZW50KG9Db250cm9sOiBDb250cm9sIHwgQ29tcG9uZW50KTogQXBwQ29tcG9uZW50IHtcblx0aWYgKG9Db250cm9sLmlzQTxBcHBDb21wb25lbnQ+KFwic2FwLmZlLmNvcmUuQXBwQ29tcG9uZW50XCIpKSB7XG5cdFx0cmV0dXJuIG9Db250cm9sO1xuXHR9XG5cdGNvbnN0IG9Pd25lciA9IENvbXBvbmVudC5nZXRPd25lckNvbXBvbmVudEZvcihvQ29udHJvbCk7XG5cdGlmICghb093bmVyKSB7XG5cdFx0cmV0dXJuIG9Db250cm9sIGFzIEFwcENvbXBvbmVudDtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gZ2V0QXBwQ29tcG9uZW50KG9Pd25lcik7XG5cdH1cbn1cblxuZnVuY3Rpb24gZ2V0TWUodmlldzogVmlldyk6IFVzZXIge1xuXHRjb25zdCBzaGVsbFNlcnZpY2VIZWxwZXIgPSBnZXRBcHBDb21wb25lbnQodmlldykuZ2V0U2hlbGxTZXJ2aWNlcygpO1xuXHRsZXQgaW5pdGlhbHMsIGlkLCBuYW1lO1xuXHRpZiAoc2hlbGxTZXJ2aWNlSGVscGVyPy5oYXNVU2hlbGwoKSkge1xuXHRcdGluaXRpYWxzID0gc2hlbGxTZXJ2aWNlSGVscGVyLmdldFVzZXJJbml0aWFscygpO1xuXHRcdGlkID0gc2hlbGxTZXJ2aWNlSGVscGVyLmdldFVzZXIoKS5nZXRJZCgpO1xuXHRcdG5hbWUgPSBzaGVsbFNlcnZpY2VIZWxwZXIuZ2V0VXNlcigpLmdldEZ1bGxOYW1lKCk7XG5cdH0gZWxzZSBpZiAod2luZG93LmFkdCkge1xuXHRcdC8vIGNoZWNrIGlmIHdlIGFyZSBpbiBBRFQgcHJldmlldywgaWYgc28gdXNlIHRoZSB1c2VyIHByb3ZpZGVkIGJ5IEFEVFxuXHRcdGlkID0gd2luZG93LmFkdC51c2VySUQ7XG5cdFx0bmFtZSA9IHdpbmRvdy5hZHQudXNlck5hbWU7XG5cdFx0aW5pdGlhbHMgPSBmb3JtYXRJbml0aWFscyhuYW1lKTtcblx0fSBlbHNlIHtcblx0XHR0aHJvdyBcIk5vIFNoZWxsLi4uIE5vIFVzZXJcIjtcblx0fVxuXG5cdHJldHVybiB7XG5cdFx0aW5pdGlhbHM6IGluaXRpYWxzLFxuXHRcdGlkOiBpZCxcblx0XHRuYW1lOiBnZXRUZXh0KFwiQ19DT0xMQUJPUkFUSU9ORFJBRlRfTUVcIiwgbmFtZSksXG5cdFx0aW5pdGlhbE5hbWU6IG5hbWUsXG5cdFx0Y29sb3I6IFwiQWNjZW50NlwiLCAvLyAgc2FtZSBjb2xvciBhcyBGTFAuLi5cblx0XHRtZTogdHJ1ZSxcblx0XHRzdGF0dXM6IFVzZXJTdGF0dXMuQ3VycmVudGx5RWRpdGluZ1xuXHR9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VGV4dCh0ZXh0SWQ6IHN0cmluZywgLi4uYXJnczogc3RyaW5nW10pOiBzdHJpbmcge1xuXHRjb25zdCBvUmVzb3VyY2VNb2RlbCA9IExpYnJhcnkuZ2V0UmVzb3VyY2VCdW5kbGVGb3IoXCJzYXAuZmUuY29yZVwiKSE7XG5cdHJldHVybiBvUmVzb3VyY2VNb2RlbC5nZXRUZXh0KHRleHRJZCwgYXJncyk7XG59XG5cbmV4cG9ydCBjb25zdCBDb2xsYWJvcmF0aW9uVXRpbHMgPSB7XG5cdGZvcm1hdEluaXRpYWxzOiBmb3JtYXRJbml0aWFscyxcblx0Z2V0VXNlckNvbG9yOiBnZXRVc2VyQ29sb3IsXG5cdGdldE1lOiBnZXRNZSxcblx0Z2V0QXBwQ29tcG9uZW50OiBnZXRBcHBDb21wb25lbnQsXG5cdGdldFRleHQ6IGdldFRleHRcbn07XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzaGFyZU9iamVjdChiaW5kaW5nQ29udGV4dDogQ29udGV4dCwgdXNlcnM6IEJhY2tlbmRVc2VyW10gPSBbXSk6IFByb21pc2U8dm9pZD4ge1xuXHRjb25zdCBtb2RlbCA9IGJpbmRpbmdDb250ZXh0LmdldE1vZGVsKCk7XG5cdGNvbnN0IG1ldGFNb2RlbCA9IG1vZGVsLmdldE1ldGFNb2RlbCgpO1xuXHRjb25zdCBlbnRpdHlTZXQgPSBtZXRhTW9kZWwuZ2V0TWV0YVBhdGgoYmluZGluZ0NvbnRleHQuZ2V0UGF0aCgpKTtcblx0Y29uc3Qgc2hhcmVBY3Rpb25OYW1lID0gbWV0YU1vZGVsLmdldE9iamVjdChgJHtlbnRpdHlTZXR9QGNvbS5zYXAudm9jYWJ1bGFyaWVzLkNvbW1vbi52MS5EcmFmdFJvb3QvU2hhcmVBY3Rpb25gKTtcblx0Y29uc3Qgc2hhcmVBY3Rpb24gPSBtb2RlbC5iaW5kQ29udGV4dChgJHtzaGFyZUFjdGlvbk5hbWV9KC4uLilgLCBiaW5kaW5nQ29udGV4dCk7XG5cdHNoYXJlQWN0aW9uLnNldFBhcmFtZXRlcihcIlVzZXJzXCIsIHVzZXJzKTtcblx0c2hhcmVBY3Rpb24uc2V0UGFyYW1ldGVyKFwiU2hhcmVBbGxcIiwgdHJ1ZSk7XG5cdGF3YWl0IHNoYXJlQWN0aW9uLmV4ZWN1dGUoXCIkYXV0by5IZXJvZXNcIik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBY3Rpdml0eUtleUZyb21QYXRoKHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG5cdHJldHVybiBwYXRoLnN1YnN0cmluZyhwYXRoLmxhc3RJbmRleE9mKFwiKFwiKSArIDEsIHBhdGgubGFzdEluZGV4T2YoXCIpXCIpKTtcbn1cblxuZXhwb3J0IGNvbnN0IENvbGxhYm9yYXRpb25GaWVsZEdyb3VwUHJlZml4ID0gXCJfQ29sbGFib3JhdGlvbkRyYWZ0X1wiO1xuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7OztNQWtCWUEsVUFBVTtFQUFBLFdBQVZBLFVBQVU7SUFBVkEsVUFBVSxDQUFWQSxVQUFVO0lBQVZBLFVBQVUsQ0FBVkEsVUFBVTtJQUFWQSxVQUFVLENBQVZBLFVBQVU7SUFBVkEsVUFBVSxDQUFWQSxVQUFVO0VBQUEsR0FBVkEsVUFBVSxLQUFWQSxVQUFVO0VBQUE7RUFBQSxJQU9WQyxnQkFBZ0I7RUFBQSxXQUFoQkEsZ0JBQWdCO0lBQWhCQSxnQkFBZ0I7SUFBaEJBLGdCQUFnQjtFQUFBLEdBQWhCQSxnQkFBZ0IsS0FBaEJBLGdCQUFnQjtFQUFBO0VBQUEsSUE0QmhCQyxRQUFRO0VBQUEsV0FBUkEsUUFBUTtJQUFSQSxRQUFRO0lBQVJBLFFBQVE7SUFBUkEsUUFBUTtJQUFSQSxRQUFRO0lBQVJBLFFBQVE7SUFBUkEsUUFBUTtJQUFSQSxRQUFRO0lBQVJBLFFBQVE7SUFBUkEsUUFBUTtJQUFSQSxRQUFRO0lBQVJBLFFBQVE7RUFBQSxHQUFSQSxRQUFR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
|
|
147
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJVc2VyU3RhdHVzIiwiVXNlckVkaXRpbmdTdGF0ZSIsIkFjdGl2aXR5IiwiZm9ybWF0SW5pdGlhbHMiLCJmdWxsTmFtZSIsImFjYWRlbWljVGl0bGVzIiwiZm9yRWFjaCIsImFjYWRlbWljVGl0bGUiLCJyZXBsYWNlIiwiaW5pdGlhbHMiLCJwYXJ0cyIsInRyaW1TdGFydCIsInNwbGl0IiwibGVuZ3RoIiwic2hpZnQiLCJjaGFyQXQiLCJwb3AiLCJzdWJzdHJpbmciLCJ0b1VwcGVyQ2FzZSIsImdldFVzZXJDb2xvciIsIlVzZXJJRCIsImFjdGl2ZVVzZXJzIiwiaW52aXRlZFVzZXJzIiwidXNlciIsImZpbmQiLCJ1IiwiaWQiLCJjb2xvciIsImkiLCJmaW5kSW5kZXgiLCJnZXRBcHBDb21wb25lbnQiLCJvQ29udHJvbCIsImlzQSIsIm9Pd25lciIsIkNvbXBvbmVudCIsImdldE93bmVyQ29tcG9uZW50Rm9yIiwiZ2V0TWUiLCJ2aWV3Iiwic2hlbGxTZXJ2aWNlSGVscGVyIiwiZ2V0U2hlbGxTZXJ2aWNlcyIsIm5hbWUiLCJoYXNVU2hlbGwiLCJnZXRVc2VySW5pdGlhbHMiLCJnZXRVc2VyIiwiZ2V0SWQiLCJnZXRGdWxsTmFtZSIsIndpbmRvdyIsImFkdCIsInVzZXJJRCIsInVzZXJOYW1lIiwiZ2V0VGV4dCIsImluaXRpYWxOYW1lIiwibWUiLCJzdGF0dXMiLCJDdXJyZW50bHlFZGl0aW5nIiwidGV4dElkIiwib1Jlc291cmNlTW9kZWwiLCJMaWJyYXJ5IiwiZ2V0UmVzb3VyY2VCdW5kbGVGb3IiLCJhcmdzIiwiQ29sbGFib3JhdGlvblV0aWxzIiwic2hhcmVPYmplY3QiLCJiaW5kaW5nQ29udGV4dCIsInVzZXJzIiwibW9kZWwiLCJnZXRNb2RlbCIsIm1ldGFNb2RlbCIsImdldE1ldGFNb2RlbCIsImVudGl0eVNldCIsImdldE1ldGFQYXRoIiwiZ2V0UGF0aCIsInNoYXJlQWN0aW9uTmFtZSIsImdldE9iamVjdCIsInNoYXJlQWN0aW9uIiwiYmluZENvbnRleHQiLCJzZXRQYXJhbWV0ZXIiLCJleGVjdXRlIiwiZ2V0QWN0aXZpdHlLZXlGcm9tUGF0aCIsInBhdGgiLCJsYXN0SW5kZXhPZiIsIkNvbGxhYm9yYXRpb25GaWVsZEdyb3VwUHJlZml4Il0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJDb2xsYWJvcmF0aW9uQ29tbW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIEFwcENvbXBvbmVudCBmcm9tIFwic2FwL2ZlL2NvcmUvQXBwQ29tcG9uZW50XCI7XG5pbXBvcnQgQ29tcG9uZW50IGZyb20gXCJzYXAvdWkvY29yZS9Db21wb25lbnRcIjtcblxuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IExpYnJhcnkgZnJvbSBcInNhcC91aS9jb3JlL0xpYlwiO1xuaW1wb3J0IHR5cGUgVmlldyBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL1ZpZXdcIjtcbmltcG9ydCB0eXBlIENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9Db250ZXh0XCI7XG5cbi8vIEFEVCBQcmV2aWV3IHByb3ZpZGVzIHRoZSB1c2VyIG5hbWUgYW5kIGlkIGZvciBjb2xsYWJvcmF0aW9uIGRyYWZ0XG5kZWNsYXJlIGdsb2JhbCB7XG5cdGludGVyZmFjZSBXaW5kb3cge1xuXHRcdGFkdDoge1xuXHRcdFx0dXNlck5hbWU6IHN0cmluZztcblx0XHRcdHVzZXJJRDogc3RyaW5nO1xuXHRcdH07XG5cdH1cbn1cblxuZXhwb3J0IGVudW0gVXNlclN0YXR1cyB7XG5cdE5vdFlldEludml0ZWQgPSAwLFxuXHROb0NoYW5nZXNNYWRlID0gMSxcblx0Q2hhbmdlc01hZGUgPSAyLFxuXHRDdXJyZW50bHlFZGl0aW5nID0gM1xufVxuXG5leHBvcnQgZW51bSBVc2VyRWRpdGluZ1N0YXRlIHtcblx0Tm9DaGFuZ2VzID0gXCJOXCIsXG5cdEluUHJvZ3Jlc3MgPSBcIlBcIlxufVxuXG5leHBvcnQgdHlwZSBVc2VyID0ge1xuXHRpZDogc3RyaW5nO1xuXHRpbml0aWFscz86IHN0cmluZztcblx0bmFtZTogc3RyaW5nO1xuXHRjb2xvcj86IHN0cmluZztcblx0dHJhbnNpZW50PzogYm9vbGVhbjtcblx0c3RhdHVzPzogVXNlclN0YXR1cztcblx0bWU/OiBib29sZWFuO1xuXHRpbml0aWFsTmFtZT86IHN0cmluZztcbn07XG5cbi8vIGJhY2tlbmQgcmVwcmVzZW50YXRpb24gb2YgYSB1c2VyIGFjY29yZGluZyB0byBjb2xsYWJvcmF0aW9uIGRyYWZ0IHNwZWNcbmV4cG9ydCB0eXBlIEJhY2tlbmRVc2VyID0ge1xuXHRVc2VySUQ6IHN0cmluZztcblx0VXNlckFjY2Vzc1JvbGU6IHN0cmluZztcblx0VXNlckVkaXRpbmdTdGF0ZT86IFVzZXJFZGl0aW5nU3RhdGU7XG5cdFVzZXJEZXNjcmlwdGlvbj86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFVzZXJBY3Rpdml0eSA9IFVzZXIgJiB7XG5cdGtleT86IHN0cmluZztcbn07XG5cbmV4cG9ydCBlbnVtIEFjdGl2aXR5IHtcblx0Sm9pbiA9IFwiSk9JTlwiLFxuXHRKb2luRWNobyA9IFwiSk9JTkVDSE9cIixcblx0TGVhdmUgPSBcIkxFQVZFXCIsXG5cdENoYW5nZSA9IFwiQ0hBTkdFXCIsXG5cdENyZWF0ZSA9IFwiQ1JFQVRFXCIsXG5cdERlbGV0ZSA9IFwiREVMRVRFXCIsXG5cdEFjdGlvbiA9IFwiQUNUSU9OXCIsXG5cdExvY2sgPSBcIkxPQ0tcIixcblx0QWN0aXZhdGUgPSBcIkFDVElWQVRFXCIsXG5cdERpc2NhcmQgPSBcIkRJU0NBUkRcIixcblx0VW5sb2NrID0gXCJVTkxPQ0tcIlxufVxuXG5leHBvcnQgdHlwZSBNZXNzYWdlID0ge1xuXHR1c2VyRGVzY3JpcHRpb246IHN0cmluZztcblx0dXNlcklEOiBzdHJpbmc7XG5cdHVzZXJBY3Rpb246IHN0cmluZztcblx0Y2xpZW50QWN0aW9uOiBzdHJpbmc7XG5cdGNsaWVudFRyaWdnZXJlZEFjdGlvbk5hbWU/OiBzdHJpbmc7XG5cdGNsaWVudFJlZnJlc2hMaXN0QmluZGluZz86IHN0cmluZztcblx0Y2xpZW50UmVxdWVzdGVkUHJvcGVydGllcz86IHN0cmluZztcblx0Y2xpZW50Q29udGVudDogc3RyaW5nO1xufTtcblxuZnVuY3Rpb24gZm9ybWF0SW5pdGlhbHMoZnVsbE5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG5cdC8vIHJlbW92ZSB0aXRsZXMgLSB0aG9zZSBhcmUgdGhlIG9uZXMgZnJvbSBTLzQgdG8gYmUgY2hlY2tlZCBpZiB0aGVyZSBhcmUgb3RoZXJzXG5cdGNvbnN0IGFjYWRlbWljVGl0bGVzID0gW1wiRHIuXCIsIFwiUHJvZi5cIiwgXCJQcm9mLiBEci5cIiwgXCJCLkEuXCIsIFwiTUJBXCIsIFwiUGguRC5cIl07XG5cdGFjYWRlbWljVGl0bGVzLmZvckVhY2goZnVuY3Rpb24gKGFjYWRlbWljVGl0bGUpIHtcblx0XHRmdWxsTmFtZSA9IGZ1bGxOYW1lLnJlcGxhY2UoYWNhZGVtaWNUaXRsZSwgXCJcIik7XG5cdH0pO1xuXG5cdGxldCBpbml0aWFsczogc3RyaW5nO1xuXHRjb25zdCBwYXJ0cyA9IGZ1bGxOYW1lLnRyaW1TdGFydCgpLnNwbGl0KFwiIFwiKTtcblxuXHRpZiAocGFydHMubGVuZ3RoID4gMSkge1xuXHRcdGluaXRpYWxzID0gKHBhcnRzPy5zaGlmdCgpPy5jaGFyQXQoMCkgfHwgXCJcIikgKyBwYXJ0cy5wb3AoKT8uY2hhckF0KDApO1xuXHR9IGVsc2Uge1xuXHRcdGluaXRpYWxzID0gZnVsbE5hbWUuc3Vic3RyaW5nKDAsIDIpO1xuXHR9XG5cblx0cmV0dXJuIGluaXRpYWxzLnRvVXBwZXJDYXNlKCk7XG59XG5cbmZ1bmN0aW9uIGdldFVzZXJDb2xvcihVc2VySUQ6IHN0cmluZywgYWN0aXZlVXNlcnM6IFVzZXJbXSwgaW52aXRlZFVzZXJzOiBVc2VyW10pOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuXHQvLyBzZWFyY2ggaWYgdXNlciBpcyBrbm93blxuXHRjb25zdCB1c2VyID0gYWN0aXZlVXNlcnMuZmluZCgodSkgPT4gdS5pZCA9PT0gVXNlcklEKTtcblx0aWYgKHVzZXIpIHtcblx0XHRyZXR1cm4gdXNlci5jb2xvcjtcblx0fSBlbHNlIHtcblx0XHQvLyBzZWFyY2ggZm9yIG5leHQgZnJlZSBjb2xvclxuXHRcdGZvciAobGV0IGkgPSAxOyBpIDw9IDEwOyBpKyspIHtcblx0XHRcdGlmIChcblx0XHRcdFx0YWN0aXZlVXNlcnMuZmluZEluZGV4KCh1KSA9PiB1LmNvbG9yID09PSBgQWNjZW50JHtpfWApID09PSAtMSAmJlxuXHRcdFx0XHRpbnZpdGVkVXNlcnMuZmluZEluZGV4KCh1KSA9PiB1LmNvbG9yID09PSBgQWNjZW50JHtpfWApID09PSAtMVxuXHRcdFx0KSB7XG5cdFx0XHRcdHJldHVybiBgQWNjZW50JHtpfWA7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC8vIHRoaXMgc2VlbXMgdG8gYmUgYSBwb3B1bGFyIG9iamVjdCA6KSBmb3Igbm93IGp1c3QgcmV0dXJuIDEwIGZvciBhbGwuXG5cdFx0Ly8gZm9yIGludml0ZWQgd2Ugc2hvdWxkIHN0YXJ0IGZyb20gMSBhZ2FpbiBzbyB0aGUgY29sb3JzIGFyZSBkaWZmZXJlbnRcblx0XHRyZXR1cm4gXCJBY2NlbnQxMFwiO1xuXHR9XG59XG5cbi8vIGNvcGllZCBmcm9tIENvbW1vblV0aWxzLiBEdWUgdG8gYSBjeWNsZSBkZXBlbmRlbmN5IEkgY2FuJ3QgdXNlIENvbW1vblV0aWxzIGhlcmUuXG4vLyBUaGF0J3MgdG8gYmUgZml4ZWQuIHRoZSBkaXNjYXJkIHBvcG92ZXIgdGhpbmd5IHNob3VsZG4ndCBiZSBpbiB0aGUgY29tbW9uIHV0aWxzIGF0IGFsbFxuZnVuY3Rpb24gZ2V0QXBwQ29tcG9uZW50KG9Db250cm9sOiBDb250cm9sIHwgQ29tcG9uZW50KTogQXBwQ29tcG9uZW50IHtcblx0aWYgKG9Db250cm9sLmlzQTxBcHBDb21wb25lbnQ+KFwic2FwLmZlLmNvcmUuQXBwQ29tcG9uZW50XCIpKSB7XG5cdFx0cmV0dXJuIG9Db250cm9sO1xuXHR9XG5cdGNvbnN0IG9Pd25lciA9IENvbXBvbmVudC5nZXRPd25lckNvbXBvbmVudEZvcihvQ29udHJvbCk7XG5cdGlmICghb093bmVyKSB7XG5cdFx0cmV0dXJuIG9Db250cm9sIGFzIEFwcENvbXBvbmVudDtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gZ2V0QXBwQ29tcG9uZW50KG9Pd25lcik7XG5cdH1cbn1cblxuZnVuY3Rpb24gZ2V0TWUodmlldzogVmlldyk6IFVzZXIge1xuXHRjb25zdCBzaGVsbFNlcnZpY2VIZWxwZXIgPSBnZXRBcHBDb21wb25lbnQodmlldykuZ2V0U2hlbGxTZXJ2aWNlcygpO1xuXHRsZXQgaW5pdGlhbHMsIGlkLCBuYW1lO1xuXHRpZiAoc2hlbGxTZXJ2aWNlSGVscGVyPy5oYXNVU2hlbGwoKSkge1xuXHRcdGluaXRpYWxzID0gc2hlbGxTZXJ2aWNlSGVscGVyLmdldFVzZXJJbml0aWFscygpO1xuXHRcdGlkID0gc2hlbGxTZXJ2aWNlSGVscGVyLmdldFVzZXIoKS5nZXRJZCgpO1xuXHRcdG5hbWUgPSBzaGVsbFNlcnZpY2VIZWxwZXIuZ2V0VXNlcigpLmdldEZ1bGxOYW1lKCk7XG5cdH0gZWxzZSBpZiAod2luZG93LmFkdCkge1xuXHRcdC8vIGNoZWNrIGlmIHdlIGFyZSBpbiBBRFQgcHJldmlldywgaWYgc28gdXNlIHRoZSB1c2VyIHByb3ZpZGVkIGJ5IEFEVFxuXHRcdGlkID0gd2luZG93LmFkdC51c2VySUQ7XG5cdFx0bmFtZSA9IHdpbmRvdy5hZHQudXNlck5hbWU7XG5cdFx0aW5pdGlhbHMgPSBmb3JtYXRJbml0aWFscyhuYW1lKTtcblx0fSBlbHNlIHtcblx0XHR0aHJvdyBcIk5vIFNoZWxsLi4uIE5vIFVzZXJcIjtcblx0fVxuXG5cdHJldHVybiB7XG5cdFx0aW5pdGlhbHM6IGluaXRpYWxzLFxuXHRcdGlkOiBpZCxcblx0XHRuYW1lOiBnZXRUZXh0KFwiQ19DT0xMQUJPUkFUSU9ORFJBRlRfTUVcIiwgbmFtZSksXG5cdFx0aW5pdGlhbE5hbWU6IG5hbWUsXG5cdFx0Y29sb3I6IFwiQWNjZW50NlwiLCAvLyAgc2FtZSBjb2xvciBhcyBGTFAuLi5cblx0XHRtZTogdHJ1ZSxcblx0XHRzdGF0dXM6IFVzZXJTdGF0dXMuQ3VycmVudGx5RWRpdGluZ1xuXHR9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VGV4dCh0ZXh0SWQ6IHN0cmluZywgLi4uYXJnczogc3RyaW5nW10pOiBzdHJpbmcge1xuXHRjb25zdCBvUmVzb3VyY2VNb2RlbCA9IExpYnJhcnkuZ2V0UmVzb3VyY2VCdW5kbGVGb3IoXCJzYXAuZmUuY29yZVwiKSE7XG5cdHJldHVybiBvUmVzb3VyY2VNb2RlbC5nZXRUZXh0KHRleHRJZCwgYXJncyk7XG59XG5cbmV4cG9ydCBjb25zdCBDb2xsYWJvcmF0aW9uVXRpbHMgPSB7XG5cdGZvcm1hdEluaXRpYWxzOiBmb3JtYXRJbml0aWFscyxcblx0Z2V0VXNlckNvbG9yOiBnZXRVc2VyQ29sb3IsXG5cdGdldE1lOiBnZXRNZSxcblx0Z2V0QXBwQ29tcG9uZW50OiBnZXRBcHBDb21wb25lbnQsXG5cdGdldFRleHQ6IGdldFRleHRcbn07XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzaGFyZU9iamVjdChiaW5kaW5nQ29udGV4dDogQ29udGV4dCwgdXNlcnM6IEJhY2tlbmRVc2VyW10gPSBbXSk6IFByb21pc2U8Q29udGV4dD4ge1xuXHRjb25zdCBtb2RlbCA9IGJpbmRpbmdDb250ZXh0LmdldE1vZGVsKCk7XG5cdGNvbnN0IG1ldGFNb2RlbCA9IG1vZGVsLmdldE1ldGFNb2RlbCgpO1xuXHRjb25zdCBlbnRpdHlTZXQgPSBtZXRhTW9kZWwuZ2V0TWV0YVBhdGgoYmluZGluZ0NvbnRleHQuZ2V0UGF0aCgpKTtcblx0Y29uc3Qgc2hhcmVBY3Rpb25OYW1lID0gbWV0YU1vZGVsLmdldE9iamVjdChgJHtlbnRpdHlTZXR9QGNvbS5zYXAudm9jYWJ1bGFyaWVzLkNvbW1vbi52MS5EcmFmdFJvb3QvU2hhcmVBY3Rpb25gKTtcblx0Y29uc3Qgc2hhcmVBY3Rpb24gPSBtb2RlbC5iaW5kQ29udGV4dChgJHtzaGFyZUFjdGlvbk5hbWV9KC4uLilgLCBiaW5kaW5nQ29udGV4dCk7XG5cdHNoYXJlQWN0aW9uLnNldFBhcmFtZXRlcihcIlVzZXJzXCIsIHVzZXJzKTtcblx0c2hhcmVBY3Rpb24uc2V0UGFyYW1ldGVyKFwiU2hhcmVBbGxcIiwgdHJ1ZSk7XG5cdHJldHVybiBzaGFyZUFjdGlvbi5leGVjdXRlKFwiJGF1dG8uSGVyb2VzXCIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWN0aXZpdHlLZXlGcm9tUGF0aChwYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRyZXR1cm4gcGF0aC5zdWJzdHJpbmcocGF0aC5sYXN0SW5kZXhPZihcIihcIikgKyAxLCBwYXRoLmxhc3RJbmRleE9mKFwiKVwiKSk7XG59XG5cbmV4cG9ydCBjb25zdCBDb2xsYWJvcmF0aW9uRmllbGRHcm91cFByZWZpeCA9IFwiX0NvbGxhYm9yYXRpb25EcmFmdF9cIjtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQUE7QUFBQTs7Ozs7TUFrQllBLFVBQVU7RUFBQSxXQUFWQSxVQUFVO0lBQVZBLFVBQVUsQ0FBVkEsVUFBVTtJQUFWQSxVQUFVLENBQVZBLFVBQVU7SUFBVkEsVUFBVSxDQUFWQSxVQUFVO0lBQVZBLFVBQVUsQ0FBVkEsVUFBVTtFQUFBLEdBQVZBLFVBQVUsS0FBVkEsVUFBVTtFQUFBO0VBQUEsSUFPVkMsZ0JBQWdCO0VBQUEsV0FBaEJBLGdCQUFnQjtJQUFoQkEsZ0JBQWdCO0lBQWhCQSxnQkFBZ0I7RUFBQSxHQUFoQkEsZ0JBQWdCLEtBQWhCQSxnQkFBZ0I7RUFBQTtFQUFBLElBNEJoQkMsUUFBUTtFQUFBLFdBQVJBLFFBQVE7SUFBUkEsUUFBUTtJQUFSQSxRQUFRO0lBQVJBLFFBQVE7SUFBUkEsUUFBUTtJQUFSQSxRQUFRO0lBQVJBLFFBQVE7SUFBUkEsUUFBUTtJQUFSQSxRQUFRO0lBQVJBLFFBQVE7SUFBUkEsUUFBUTtJQUFSQSxRQUFRO0VBQUEsR0FBUkEs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
|
|
@@ -170,7 +170,7 @@ export const CollaborationUtils = {
|
|
|
170
170
|
getText: getText
|
|
171
171
|
};
|
|
172
172
|
|
|
173
|
-
export async function shareObject(bindingContext: Context, users: BackendUser[] = []): Promise<
|
|
173
|
+
export async function shareObject(bindingContext: Context, users: BackendUser[] = []): Promise<Context> {
|
|
174
174
|
const model = bindingContext.getModel();
|
|
175
175
|
const metaModel = model.getMetaModel();
|
|
176
176
|
const entitySet = metaModel.getMetaPath(bindingContext.getPath());
|
|
@@ -178,7 +178,7 @@ export async function shareObject(bindingContext: Context, users: BackendUser[]
|
|
|
178
178
|
const shareAction = model.bindContext(`${shareActionName}(...)`, bindingContext);
|
|
179
179
|
shareAction.setParameter("Users", users);
|
|
180
180
|
shareAction.setParameter("ShareAll", true);
|
|
181
|
-
|
|
181
|
+
return shareAction.execute("$auto.Heroes");
|
|
182
182
|
}
|
|
183
183
|
|
|
184
184
|
export function getActivityKeyFromPath(path: string): string {
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2024 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/fe/
|
|
5
|
+
sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/buildingBlocks/templating/BuildingBlockSupport", "sap/fe/core/buildingBlocks/templating/RuntimeBuildingBlock", "sap/m/Bar", "sap/m/Button", "sap/m/Dialog", "sap/m/Title", "sap/ui/core/Lib", "sap/fe/base/jsx-runtime/jsx"], function (ClassSupport, BuildingBlockSupport, RuntimeBuildingBlock, Bar, Button, Dialog, Title, Library, _jsx) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17;
|
|
9
9
|
var _exports = {};
|
|
10
|
-
var defineReference = ClassSupport.defineReference;
|
|
11
10
|
var defineBuildingBlock = BuildingBlockSupport.defineBuildingBlock;
|
|
12
11
|
var blockAttribute = BuildingBlockSupport.blockAttribute;
|
|
12
|
+
var defineReference = ClassSupport.defineReference;
|
|
13
13
|
function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }
|
|
14
14
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
15
15
|
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
@@ -69,12 +69,21 @@ sap.ui.define(["sap/fe/core/buildingBlocks/templating/BuildingBlockSupport", "sa
|
|
|
69
69
|
type: "function"
|
|
70
70
|
}), _dec(_class = (_class2 = /*#__PURE__*/function (_RuntimeBuildingBlock) {
|
|
71
71
|
_inheritsLoose(OperationsDialogBlock, _RuntimeBuildingBlock);
|
|
72
|
-
|
|
72
|
+
/*
|
|
73
|
+
* The 'id' property of the dialog
|
|
74
|
+
*/
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* The 'title' property of the Dialog;
|
|
78
|
+
*/
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* The message object that is provided to this dialog
|
|
82
|
+
*/
|
|
83
|
+
|
|
84
|
+
function OperationsDialogBlock(props, _controlConfiguration, _visitorSettings) {
|
|
73
85
|
var _this;
|
|
74
|
-
|
|
75
|
-
args[_key] = arguments[_key];
|
|
76
|
-
}
|
|
77
|
-
_this = _RuntimeBuildingBlock.call(this, ...args) || this;
|
|
86
|
+
_this = _RuntimeBuildingBlock.call(this, props, _controlConfiguration, _visitorSettings) || this;
|
|
78
87
|
_initializerDefineProperty(_this, "id", _descriptor, _assertThisInitialized(_this));
|
|
79
88
|
_initializerDefineProperty(_this, "title", _descriptor2, _assertThisInitialized(_this));
|
|
80
89
|
_initializerDefineProperty(_this, "messageObject", _descriptor3, _assertThisInitialized(_this));
|
|
@@ -288,4 +297,4 @@ sap.ui.define(["sap/fe/core/buildingBlocks/templating/BuildingBlockSupport", "sa
|
|
|
288
297
|
_exports = OperationsDialogBlock;
|
|
289
298
|
return _exports;
|
|
290
299
|
}, false);
|
|
291
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtYWNyb1Jlc291cmNlQnVuZGxlIiwiTGlicmFyeSIsImdldFJlc291cmNlQnVuZGxlRm9yIiwiT3BlcmF0aW9uc0RpYWxvZ0Jsb2NrIiwiZGVmaW5lQnVpbGRpbmdCbG9jayIsIm5hbWUiLCJuYW1lc3BhY2UiLCJibG9ja0F0dHJpYnV0ZSIsInR5cGUiLCJpc1B1YmxpYyIsInJlcXVpcmVkIiwiZGVmaW5lUmVmZXJlbmNlIiwib3BlbiIsImdldENvbnRlbnQiLCJvcGVyYXRpb25zRGlhbG9nIiwiY3VycmVudCIsImdldEJlZ2luQnV0dG9uIiwiQnV0dG9uIiwicHJlc3MiLCJpc011bHRpQ29udGV4dDQxMiIsInJlc29sdmUiLCJtb2RlbCIsInN1Ym1pdEJhdGNoIiwiZ3JvdXBJZCIsInJlcXVlc3RTaWRlRWZmZWN0cyIsInN0cmljdEhhbmRsaW5nUHJvbWlzZXMiLCJmb3JFYWNoIiwic3RyaWN0SGFuZGxpbmdQcm9taXNlIiwic3RyaWN0SGFuZGxpbmdGYWlscyIsInN0cmljdEhhbmRsaW5nVXRpbGl0aWVzIiwic3RyaWN0SGFuZGxpbmdUcmFuc2l0aW9uRmFpbHMiLCJsZW5ndGgiLCJtZXNzYWdlSGFuZGxlciIsInJlbW92ZVRyYW5zaXRpb25NZXNzYWdlcyIsInN0cmljdEhhbmRsaW5nV2FybmluZ01lc3NhZ2VzIiwiaXM0MTJFeGVjdXRlZCIsIm1lc3NhZ2VEaWFsb2dNb2RlbCIsInNldERhdGEiLCJjbG9zZSIsInRleHQiLCJhY3Rpb25OYW1lIiwiZ2V0VGl0bGUiLCJzVGl0bGUiLCJnZXRUZXh0IiwiVGl0bGUiLCJnZXRFbmRCdXR0b24iLCJpc0dyb3VwZWQiLCJzaG93TWVzc2FnZUluZm8iLCJjYW5jZWxCdXR0b25UeHQiLCJpZCIsIm1lc3NhZ2VPYmplY3QiLCJvTWVzc2FnZVZpZXciLCJCYXIiLCJjb250ZW50TGVmdCIsIm9CYWNrQnV0dG9uIiwiY29udGVudE1pZGRsZSIsIlJ1bnRpbWVCdWlsZGluZ0Jsb2NrIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJPcGVyYXRpb25zRGlhbG9nLmJsb2NrLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBibG9ja0F0dHJpYnV0ZSwgZGVmaW5lQnVpbGRpbmdCbG9jayB9IGZyb20gXCJzYXAvZmUvY29yZS9idWlsZGluZ0Jsb2Nrcy90ZW1wbGF0aW5nL0J1aWxkaW5nQmxvY2tTdXBwb3J0XCI7XG5pbXBvcnQgUnVudGltZUJ1aWxkaW5nQmxvY2sgZnJvbSBcInNhcC9mZS9jb3JlL2J1aWxkaW5nQmxvY2tzL3RlbXBsYXRpbmcvUnVudGltZUJ1aWxkaW5nQmxvY2tcIjtcbmltcG9ydCB7IGRlZmluZVJlZmVyZW5jZSB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IHR5cGUgeyBSZWYgfSBmcm9tIFwic2FwL2ZlL2NvcmUvanN4LXJ1bnRpbWUvanN4XCI7XG5pbXBvcnQgQmFyIGZyb20gXCJzYXAvbS9CYXJcIjtcbmltcG9ydCBCdXR0b24gZnJvbSBcInNhcC9tL0J1dHRvblwiO1xuaW1wb3J0IERpYWxvZyBmcm9tIFwic2FwL20vRGlhbG9nXCI7XG5pbXBvcnQgVGl0bGUgZnJvbSBcInNhcC9tL1RpdGxlXCI7XG5pbXBvcnQgdHlwZSBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgTGlicmFyeSBmcm9tIFwic2FwL3VpL2NvcmUvTGliXCI7XG5pbXBvcnQgdHlwZSBNZXNzYWdlIGZyb20gXCJzYXAvdWkvY29yZS9tZXNzYWdlL01lc3NhZ2VcIjtcbmltcG9ydCB0eXBlIEpTT05Nb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL2pzb24vSlNPTk1vZGVsXCI7XG5pbXBvcnQgdHlwZSBPRGF0YU1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFNb2RlbFwiO1xuaW1wb3J0IHR5cGUgTWVzc2FnZUhhbmRsZXIgZnJvbSBcIi4uL01lc3NhZ2VIYW5kbGVyXCI7XG5cbnR5cGUgU3RyaWN0SGFuZGxpbmdQcm9taXNlID0ge1xuXHQvL1RPRE86IG1vdmUgdG8gc29tZXdoZXJlIGVsc2Vcblx0cmVzb2x2ZTogRnVuY3Rpb247XG5cdGdyb3VwSWQ6IHN0cmluZztcblx0cmVxdWVzdFNpZGVFZmZlY3RzPzogRnVuY3Rpb247XG59O1xuXG5leHBvcnQgdHlwZSBTdHJpY3RIYW5kbGluZ1V0aWxpdGllcyA9IHtcblx0Ly9UT0RPOiBtb3ZlIHRvIHNvbWV3aGVyZSBlbHNlXG5cdGlzNDEyRXhlY3V0ZWQ6IGJvb2xlYW47XG5cdHN0cmljdEhhbmRsaW5nVHJhbnNpdGlvbkZhaWxzOiBPYmplY3RbXTtcblx0c3RyaWN0SGFuZGxpbmdQcm9taXNlczogU3RyaWN0SGFuZGxpbmdQcm9taXNlW107XG5cdHN0cmljdEhhbmRsaW5nV2FybmluZ01lc3NhZ2VzOiBNZXNzYWdlW107XG5cdGRlbGF5U3VjY2Vzc01lc3NhZ2VzOiBNZXNzYWdlW107XG5cdHByb2Nlc3NlZE1lc3NhZ2VJZHM6IHN0cmluZ1tdO1xufTtcblxuY29uc3QgbWFjcm9SZXNvdXJjZUJ1bmRsZSA9IExpYnJhcnkuZ2V0UmVzb3VyY2VCdW5kbGVGb3IoXCJzYXAuZmUubWFjcm9zXCIpITtcbi8qKlxuICogS25vd24gbGltaXRhdGlvbnMgZm9yIHRoZSBmaXJzdCB0cnlvdXQgYXMgbWVudGlvbmVkIGluIGdpdCA1ODA2NDQyXG4gKiAgLSBmdW5jdGlvbmFsIGJsb2NrIGRlcGVuZGVuY3lcbiAqIFx0LSBxdWVzdGlvbmFibGUgcGFyYW1ldGVycyB3aWxsIGJlIHJlZmFjdG9yZWRcbiAqL1xuQGRlZmluZUJ1aWxkaW5nQmxvY2soe1xuXHRuYW1lOiBcIk9wZXJhdGlvbnNEaWFsb2dcIixcblx0bmFtZXNwYWNlOiBcInNhcC5mZS5jb3JlLmNvbnRyb2xsZXJleHRlbnNpb25zXCJcbn0pXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBPcGVyYXRpb25zRGlhbG9nQmxvY2sgZXh0ZW5kcyBSdW50aW1lQnVpbGRpbmdCbG9jayB7XG5cdC8qXG5cdCAqIFRoZSAnaWQnIHByb3BlcnR5IG9mIHRoZSBkaWFsb2dcblx0ICovXG5cdEBibG9ja0F0dHJpYnV0ZSh7IHR5cGU6IFwic3RyaW5nXCIsIGlzUHVibGljOiB0cnVlLCByZXF1aXJlZDogdHJ1ZSB9KVxuXHRwdWJsaWMgaWQhOiBzdHJpbmc7XG5cblx0LyoqXG5cdCAqIFRoZSAndGl0bGUnIHByb3BlcnR5IG9mIHRoZSBEaWFsb2c7XG5cdCAqL1xuXHRAYmxvY2tBdHRyaWJ1dGUoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdHB1YmxpYyB0aXRsZT86IHN0cmluZyA9IFwiRGlhbG9nIFN0YW5kYXJkIFRpdGxlXCI7XG5cblx0LyoqXG5cdCAqIFRoZSBtZXNzYWdlIG9iamVjdCB0aGF0IGlzIHByb3ZpZGVkIHRvIHRoaXMgZGlhbG9nXG5cdCAqL1xuXHRAYmxvY2tBdHRyaWJ1dGUoeyB0eXBlOiBcIm9iamVjdFwiLCByZXF1aXJlZDogdHJ1ZSB9KSAvL1RPRE86IGNyZWF0ZSB0aGUgdHlwZVxuXHRwdWJsaWMgbWVzc2FnZU9iamVjdCE6IHsgb01lc3NhZ2VWaWV3OiBDb250cm9sOyBvQmFja0J1dHRvbjogQnV0dG9uIH07XG5cblx0QGRlZmluZVJlZmVyZW5jZSgpXG5cdG9wZXJhdGlvbnNEaWFsb2chOiBSZWY8RGlhbG9nPjtcblxuXHRAYmxvY2tBdHRyaWJ1dGUoeyB0eXBlOiBcImJvb2xlYW5cIiwgcmVxdWlyZWQ6IHRydWUgfSlcblx0cHVibGljIGlzTXVsdGlDb250ZXh0NDEyPzogYm9vbGVhbjtcblxuXHRAYmxvY2tBdHRyaWJ1dGUoeyB0eXBlOiBcImZ1bmN0aW9uXCIgfSlcblx0cHVibGljIHJlcXVlc3RTaWRlRWZmZWN0cz86IEZ1bmN0aW9uO1xuXG5cdEBibG9ja0F0dHJpYnV0ZSh7IHR5cGU6IFwiZnVuY3Rpb25cIiB9KVxuXHRwdWJsaWMgcmVzb2x2ZT86IEZ1bmN0aW9uO1xuXG5cdEBibG9ja0F0dHJpYnV0ZSh7IHR5cGU6IFwib2JqZWN0XCIsIHJlcXVpcmVkOiB0cnVlIH0pXG5cdHB1YmxpYyBtb2RlbCE6IE9EYXRhTW9kZWw7XG5cblx0QGJsb2NrQXR0cmlidXRlKHsgdHlwZTogXCJzdHJpbmdcIiwgcmVxdWlyZWQ6IHRydWUgfSlcblx0cHVibGljIGdyb3VwSWQhOiBzdHJpbmc7XG5cblx0QGJsb2NrQXR0cmlidXRlKHsgdHlwZTogXCJzdHJpbmdcIiwgcmVxdWlyZWQ6IHRydWUgfSlcblx0cHVibGljIGFjdGlvbk5hbWUhOiBzdHJpbmc7XG5cblx0QGJsb2NrQXR0cmlidXRlKHsgdHlwZTogXCJzdHJpbmdcIiwgcmVxdWlyZWQ6IHRydWUgfSlcblx0cHVibGljIGNhbmNlbEJ1dHRvblR4dCE6IHN0cmluZztcblxuXHRAYmxvY2tBdHRyaWJ1dGUoeyB0eXBlOiBcIm9iamVjdFwiLCByZXF1aXJlZDogdHJ1ZSB9KVxuXHRwdWJsaWMgc3RyaWN0SGFuZGxpbmdQcm9taXNlcyE6IFN0cmljdEhhbmRsaW5nUHJvbWlzZVtdO1xuXG5cdEBibG9ja0F0dHJpYnV0ZSh7IHR5cGU6IFwib2JqZWN0XCIgfSlcblx0cHVibGljIHN0cmljdEhhbmRsaW5nVXRpbGl0aWVzPzogU3RyaWN0SGFuZGxpbmdVdGlsaXRpZXM7XG5cblx0QGJsb2NrQXR0cmlidXRlKHsgdHlwZTogXCJvYmplY3RcIiB9KVxuXHRwdWJsaWMgbWVzc2FnZUhhbmRsZXI/OiBNZXNzYWdlSGFuZGxlcjtcblxuXHRAYmxvY2tBdHRyaWJ1dGUoeyB0eXBlOiBcIm9iamVjdFwiLCByZXF1aXJlZDogdHJ1ZSB9KVxuXHRwdWJsaWMgbWVzc2FnZURpYWxvZ01vZGVsITogSlNPTk1vZGVsO1xuXG5cdEBibG9ja0F0dHJpYnV0ZSh7IHR5cGU6IFwiYm9vbGVhblwiIH0pXG5cdHB1YmxpYyBpc0dyb3VwZWQ/OiBib29sZWFuO1xuXG5cdEBibG9ja0F0dHJpYnV0ZSh7IHR5cGU6IFwiZnVuY3Rpb25cIiB9KVxuXHRwdWJsaWMgc2hvd01lc3NhZ2VJbmZvPzogRnVuY3Rpb247XG5cblx0cHVibGljIG9wZW4oKTogdm9pZCB7XG5cdFx0dGhpcy5nZXRDb250ZW50KCk7XG5cdFx0dGhpcy5vcGVyYXRpb25zRGlhbG9nLmN1cnJlbnQ/Lm9wZW4oKTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0QmVnaW5CdXR0b24oKTogQnV0dG9uIHtcblx0XHRyZXR1cm4gbmV3IEJ1dHRvbih7XG5cdFx0XHRwcmVzczogKCk6IHZvaWQgPT4ge1xuXHRcdFx0XHRpZiAoISh0aGlzLmlzTXVsdGlDb250ZXh0NDEyID8/IGZhbHNlKSkge1xuXHRcdFx0XHRcdHRoaXMucmVzb2x2ZT8uKHRydWUpO1xuXHRcdFx0XHRcdHRoaXMubW9kZWwuc3VibWl0QmF0Y2godGhpcy5ncm91cElkKTtcblx0XHRcdFx0XHRpZiAodGhpcy5yZXF1ZXN0U2lkZUVmZmVjdHMpIHtcblx0XHRcdFx0XHRcdHRoaXMucmVxdWVzdFNpZGVFZmZlY3RzKCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHRoaXMuc3RyaWN0SGFuZGxpbmdQcm9taXNlcy5mb3JFYWNoKChzdHJpY3RIYW5kbGluZ1Byb21pc2U6IFN0cmljdEhhbmRsaW5nUHJvbWlzZSkgPT4ge1xuXHRcdFx0XHRcdFx0c3RyaWN0SGFuZGxpbmdQcm9taXNlLnJlc29sdmUodHJ1ZSk7XG5cdFx0XHRcdFx0XHR0aGlzLm1vZGVsLnN1Ym1pdEJhdGNoKHN0cmljdEhhbmRsaW5nUHJvbWlzZS5ncm91cElkKTtcblx0XHRcdFx0XHRcdGlmIChzdHJpY3RIYW5kbGluZ1Byb21pc2UucmVxdWVzdFNpZGVFZmZlY3RzKSB7XG5cdFx0XHRcdFx0XHRcdHN0cmljdEhhbmRsaW5nUHJvbWlzZS5yZXF1ZXN0U2lkZUVmZmVjdHMoKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KTtcblx0XHRcdFx0XHRjb25zdCBzdHJpY3RIYW5kbGluZ0ZhaWxzID0gdGhpcy5zdHJpY3RIYW5kbGluZ1V0aWxpdGllcz8uc3RyaWN0SGFuZGxpbmdUcmFuc2l0aW9uRmFpbHM7XG5cdFx0XHRcdFx0aWYgKHN0cmljdEhhbmRsaW5nRmFpbHMgJiYgc3RyaWN0SGFuZGxpbmdGYWlscy5sZW5ndGggPiAwKSB7XG5cdFx0XHRcdFx0XHR0aGlzLm1lc3NhZ2VIYW5kbGVyPy5yZW1vdmVUcmFuc2l0aW9uTWVzc2FnZXMoKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0aWYgKHRoaXMuc3RyaWN0SGFuZGxpbmdVdGlsaXRpZXMpIHtcblx0XHRcdFx0XHRcdHRoaXMuc3RyaWN0SGFuZGxpbmdVdGlsaXRpZXMuc3RyaWN0SGFuZGxpbmdXYXJuaW5nTWVzc2FnZXMgPSBbXTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKHRoaXMuc3RyaWN0SGFuZGxpbmdVdGlsaXRpZXMpIHtcblx0XHRcdFx0XHR0aGlzLnN0cmljdEhhbmRsaW5nVXRpbGl0aWVzLmlzNDEyRXhlY3V0ZWQgPSB0cnVlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHRoaXMubWVzc2FnZURpYWxvZ01vZGVsLnNldERhdGEoe30pO1xuXHRcdFx0XHR0aGlzLmNsb3NlKCk7XG5cdFx0XHR9LFxuXHRcdFx0dHlwZTogXCJFbXBoYXNpemVkXCIsXG5cdFx0XHR0ZXh0OiB0aGlzLmFjdGlvbk5hbWVcblx0XHR9KTtcblx0fVxuXG5cdHByaXZhdGUgY2xvc2UoKTogdm9pZCB7XG5cdFx0dGhpcy5vcGVyYXRpb25zRGlhbG9nLmN1cnJlbnQ/LmNsb3NlKCk7XG5cdH1cblxuXHRwcml2YXRlIGdldFRpdGxlKCk6IFRpdGxlIHtcblx0XHRjb25zdCBzVGl0bGUgPSBtYWNyb1Jlc291cmNlQnVuZGxlLmdldFRleHQoXCJNX1dBUk5JTkdTXCIpO1xuXHRcdHJldHVybiBuZXcgVGl0bGUoeyB0ZXh0OiBzVGl0bGUgfSk7XG5cdH1cblxuXHRwcml2YXRlIGdldEVuZEJ1dHRvbigpOiBCdXR0b24ge1xuXHRcdHJldHVybiBuZXcgQnV0dG9uKHtcblx0XHRcdHByZXNzOiAoKTogdm9pZCA9PiB7XG5cdFx0XHRcdGlmICh0aGlzLnN0cmljdEhhbmRsaW5nVXRpbGl0aWVzKSB7XG5cdFx0XHRcdFx0dGhpcy5zdHJpY3RIYW5kbGluZ1V0aWxpdGllcy5zdHJpY3RIYW5kbGluZ1dhcm5pbmdNZXNzYWdlcyA9IFtdO1xuXHRcdFx0XHRcdHRoaXMuc3RyaWN0SGFuZGxpbmdVdGlsaXRpZXMuaXM0MTJFeGVjdXRlZCA9IGZhbHNlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICghKHRoaXMuaXNNdWx0aUNvbnRleHQ0MTIgPz8gZmFsc2UpKSB7XG5cdFx0XHRcdFx0dGhpcy5yZXNvbHZlIShmYWxzZSk7XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0dGhpcy5zdHJpY3RIYW5kbGluZ1Byb21pc2VzLmZvckVhY2goZnVuY3Rpb24gKHN0cmljdEhhbmRsaW5nUHJvbWlzZTogU3RyaWN0SGFuZGxpbmdQcm9taXNlKSB7XG5cdFx0XHRcdFx0XHRzdHJpY3RIYW5kbGluZ1Byb21pc2UucmVzb2x2ZShmYWxzZSk7XG5cdFx0XHRcdFx0fSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0dGhpcy5tZXNzYWdlRGlhbG9nTW9kZWwuc2V0RGF0YSh7fSk7XG5cdFx0XHRcdHRoaXMuY2xvc2UoKTtcblx0XHRcdFx0aWYgKHRoaXMuaXNHcm91cGVkID8/IGZhbHNlKSB7XG5cdFx0XHRcdFx0dGhpcy5zaG93TWVzc2FnZUluZm8hKCk7XG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cdFx0XHR0ZXh0OiB0aGlzLmNhbmNlbEJ1dHRvblR4dFxuXHRcdH0pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFRoZSBidWlsZGluZyBibG9jayByZW5kZXIgZnVuY3Rpb24uXG5cdCAqXG5cdCAqIEByZXR1cm5zIEFuIFhNTC1iYXNlZCBzdHJpbmcgd2l0aCB0aGUgZGVmaW5pdGlvbiBvZiB0aGUgZmllbGQgY29udHJvbFxuXHQgKi9cblx0Z2V0Q29udGVudCgpOiBEaWFsb2cge1xuXHRcdHJldHVybiAoXG5cdFx0XHQ8RGlhbG9nXG5cdFx0XHRcdGlkPXt0aGlzLmlkfVxuXHRcdFx0XHRyZWY9e3RoaXMub3BlcmF0aW9uc0RpYWxvZ31cblx0XHRcdFx0cmVzaXphYmxlPXt0cnVlfVxuXHRcdFx0XHRjb250ZW50PXt0aGlzLm1lc3NhZ2VPYmplY3Qub01lc3NhZ2VWaWV3fVxuXHRcdFx0XHRzdGF0ZT17XCJXYXJuaW5nXCJ9XG5cdFx0XHRcdGN1c3RvbUhlYWRlcj17XG5cdFx0XHRcdFx0bmV3IEJhcih7XG5cdFx0XHRcdFx0XHRjb250ZW50TGVmdDogW3RoaXMubWVzc2FnZU9iamVjdC5vQmFja0J1dHRvbl0sXG5cdFx0XHRcdFx0XHRjb250ZW50TWlkZGxlOiBbdGhpcy5nZXRUaXRsZSgpXVxuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdH1cblx0XHRcdFx0Y29udGVudEhlaWdodD17XCI1MCVcIn1cblx0XHRcdFx0Y29udGVudFdpZHRoPXtcIjUwJVwifVxuXHRcdFx0XHR2ZXJ0aWNhbFNjcm9sbGluZz17ZmFsc2V9XG5cdFx0XHRcdGJlZ2luQnV0dG9uPXt0aGlzLmdldEJlZ2luQnV0dG9uKCl9XG5cdFx0XHRcdGVuZEJ1dHRvbj17dGhpcy5nZXRFbmRCdXR0b24oKX1cblx0XHRcdD48L0RpYWxvZz5cblx0XHQpIGFzIERpYWxvZztcblx0fVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7RUFnQ0EsTUFBTUEsbUJBQW1CLEdBQUdDLE9BQU8sQ0FBQ0Msb0JBQW9CLENBQUMsZUFBZSxDQUFFO0VBQzFFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFKQSxJQVNxQkMscUJBQXFCLFdBSnpDQyxtQkFBbUIsQ0FBQztJQUNwQkMsSUFBSSxFQUFFLGtCQUFrQjtJQUN4QkMsU0FBUyxFQUFFO0VBQ1osQ0FBQyxDQUFDLFVBS0FDLGNBQWMsQ0FBQztJQUFFQyxJQUFJLEVBQUUsUUFBUTtJQUFFQyxRQUFRLEVBQUUsSUFBSTtJQUFFQyxRQUFRLEVBQUU7RUFBSyxDQUFDLENBQUMsVUFNbEVILGNBQWMsQ0FBQztJQUFFQyxJQUFJLEVBQUU7RUFBUyxDQUFDLENBQUMsVUFNbENELGNBQWMsQ0FBQztJQUFFQyxJQUFJLEVBQUUsUUFBUTtJQUFFRSxRQUFRLEVBQUU7RUFBSyxDQUFDLENBQUMsVUFHbERDLGVBQWUsRUFBRSxVQUdqQkosY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRSxTQUFTO0lBQUVFLFFBQVEsRUFBRTtFQUFLLENBQUMsQ0FBQyxVQUduREgsY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRTtFQUFXLENBQUMsQ0FBQyxVQUdwQ0QsY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRTtFQUFXLENBQUMsQ0FBQyxVQUdwQ0QsY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRSxRQUFRO0lBQUVFLFFBQVEsRUFBRTtFQUFLLENBQUMsQ0FBQyxXQUdsREgsY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRSxRQUFRO0lBQUVFLFFBQVEsRUFBRTtFQUFLLENBQUMsQ0FBQyxXQUdsREgsY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRSxRQUFRO0lBQUVFLFFBQVEsRUFBRTtFQUFLLENBQUMsQ0FBQyxXQUdsREgsY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRSxRQUFRO0lBQUVFLFFBQVEsRUFBRTtFQUFLLENBQUMsQ0FBQyxXQUdsREgsY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRSxRQUFRO0lBQUVFLFFBQVEsRUFBRTtFQUFLLENBQUMsQ0FBQyxXQUdsREgsY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRTtFQUFTLENBQUMsQ0FBQyxXQUdsQ0QsY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRTtFQUFTLENBQUMsQ0FBQyxXQUdsQ0QsY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRSxRQUFRO0lBQUVFLFFBQVEsRUFBRTtFQUFLLENBQUMsQ0FBQyxXQUdsREgsY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRTtFQUFVLENBQUMsQ0FBQyxXQUduQ0QsY0FBYyxDQUFDO0lBQUVDLElBQUksRUFBRTtFQUFXLENBQUMsQ0FBQztJQUFBO0lBQUE7TUFBQTtNQUFBO1FBQUE7TUFBQTtNQUFBO01BQUE7TUFBQTtNQUFBO01BQUE7TUFBQTtNQUFBO01BQUE7TUFBQTtNQUFB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UyxFQUFFLElBQUksQ0FBQzZCLFlBQVk7TUFBRyxFQUN0QjtJQUVaLENBQUM7SUFBQTtFQUFBLEVBaktpRFcsb0JBQW9CO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO01BQUEsT0FXOUMsdUJBQXVCO0lBQUE7RUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO0VBQUE7SUFBQTtJQUFBO0lBQUE7SUFBQTtFQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO0VBQUE7SUFBQTtJQUFBO0lBQUE7SUFBQTtFQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO0VBQUE7SUFBQTtJQUFBO0lBQUE7SUFBQTtFQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO0VBQUE7SUFBQTtJQUFBO0lBQUE7SUFBQTtFQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO0VBQUE7SUFBQTtJQUFBO0lBQUE7SUFBQTtFQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQSJ9
|
|
300
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtYWNyb1Jlc291cmNlQnVuZGxlIiwiTGlicmFyeSIsImdldFJlc291cmNlQnVuZGxlRm9yIiwiT3BlcmF0aW9uc0RpYWxvZ0Jsb2NrIiwiZGVmaW5lQnVpbGRpbmdCbG9jayIsIm5hbWUiLCJuYW1lc3BhY2UiLCJibG9ja0F0dHJpYnV0ZSIsInR5cGUiLCJpc1B1YmxpYyIsInJlcXVpcmVkIiwiZGVmaW5lUmVmZXJlbmNlIiwicHJvcHMiLCJfY29udHJvbENvbmZpZ3VyYXRpb24iLCJfdmlzaXRvclNldHRpbmdzIiwib3BlbiIsImdldENvbnRlbnQiLCJvcGVyYXRpb25zRGlhbG9nIiwiY3VycmVudCIsImdldEJlZ2luQnV0dG9uIiwiQnV0dG9uIiwicHJlc3MiLCJpc011bHRpQ29udGV4dDQxMiIsInJlc29sdmUiLCJtb2RlbCIsInN1Ym1pdEJhdGNoIiwiZ3JvdXBJZCIsInJlcXVlc3RTaWRlRWZmZWN0cyIsInN0cmljdEhhbmRsaW5nUHJvbWlzZXMiLCJmb3JFYWNoIiwic3RyaWN0SGFuZGxpbmdQcm9taXNlIiwic3RyaWN0SGFuZGxpbmdGYWlscyIsInN0cmljdEhhbmRsaW5nVXRpbGl0aWVzIiwic3RyaWN0SGFuZGxpbmdUcmFuc2l0aW9uRmFpbHMiLCJsZW5ndGgiLCJtZXNzYWdlSGFuZGxlciIsInJlbW92ZVRyYW5zaXRpb25NZXNzYWdlcyIsInN0cmljdEhhbmRsaW5nV2FybmluZ01lc3NhZ2VzIiwiaXM0MTJFeGVjdXRlZCIsIm1lc3NhZ2VEaWFsb2dNb2RlbCIsInNldERhdGEiLCJjbG9zZSIsInRleHQiLCJhY3Rpb25OYW1lIiwiZ2V0VGl0bGUiLCJzVGl0bGUiLCJnZXRUZXh0IiwiVGl0bGUiLCJnZXRFbmRCdXR0b24iLCJpc0dyb3VwZWQiLCJzaG93TWVzc2FnZUluZm8iLCJjYW5jZWxCdXR0b25UeHQiLCJpZCIsIm1lc3NhZ2VPYmplY3QiLCJvTWVzc2FnZVZpZXciLCJCYXIiLCJjb250ZW50TGVmdCIsIm9CYWNrQnV0dG9uIiwiY29udGVudE1pZGRsZSIsIlJ1bnRpbWVCdWlsZGluZ0Jsb2NrIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJPcGVyYXRpb25zRGlhbG9nLmJsb2NrLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFByb3BlcnRpZXNPZiB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB7IGRlZmluZVJlZmVyZW5jZSB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB0eXBlIHsgUmVmIH0gZnJvbSBcInNhcC9mZS9iYXNlL2pzeC1ydW50aW1lL2pzeFwiO1xuaW1wb3J0IHsgYmxvY2tBdHRyaWJ1dGUsIGRlZmluZUJ1aWxkaW5nQmxvY2sgfSBmcm9tIFwic2FwL2ZlL2NvcmUvYnVpbGRpbmdCbG9ja3MvdGVtcGxhdGluZy9CdWlsZGluZ0Jsb2NrU3VwcG9ydFwiO1xuaW1wb3J0IHR5cGUgeyBUZW1wbGF0ZVByb2Nlc3NvclNldHRpbmdzIH0gZnJvbSBcInNhcC9mZS9jb3JlL2J1aWxkaW5nQmxvY2tzL3RlbXBsYXRpbmcvQnVpbGRpbmdCbG9ja1RlbXBsYXRlUHJvY2Vzc29yXCI7XG5pbXBvcnQgUnVudGltZUJ1aWxkaW5nQmxvY2sgZnJvbSBcInNhcC9mZS9jb3JlL2J1aWxkaW5nQmxvY2tzL3RlbXBsYXRpbmcvUnVudGltZUJ1aWxkaW5nQmxvY2tcIjtcbmltcG9ydCBCYXIgZnJvbSBcInNhcC9tL0JhclwiO1xuaW1wb3J0IEJ1dHRvbiBmcm9tIFwic2FwL20vQnV0dG9uXCI7XG5pbXBvcnQgRGlhbG9nIGZyb20gXCJzYXAvbS9EaWFsb2dcIjtcbmltcG9ydCBUaXRsZSBmcm9tIFwic2FwL20vVGl0bGVcIjtcbmltcG9ydCB0eXBlIENvbnRyb2wgZnJvbSBcInNhcC91aS9jb3JlL0NvbnRyb2xcIjtcbmltcG9ydCBMaWJyYXJ5IGZyb20gXCJzYXAvdWkvY29yZS9MaWJcIjtcbmltcG9ydCB0eXBlIE1lc3NhZ2UgZnJvbSBcInNhcC91aS9jb3JlL21lc3NhZ2UvTWVzc2FnZVwiO1xuaW1wb3J0IHR5cGUgSlNPTk1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvanNvbi9KU09OTW9kZWxcIjtcbmltcG9ydCB0eXBlIE9EYXRhTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9PRGF0YU1vZGVsXCI7XG5pbXBvcnQgdHlwZSBNZXNzYWdlSGFuZGxlciBmcm9tIFwiLi4vTWVzc2FnZUhhbmRsZXJcIjtcblxudHlwZSBTdHJpY3RIYW5kbGluZ1Byb21pc2UgPSB7XG5cdC8vVE9ETzogbW92ZSB0byBzb21ld2hlcmUgZWxzZVxuXHRyZXNvbHZlOiBGdW5jdGlvbjtcblx0Z3JvdXBJZDogc3RyaW5nO1xuXHRyZXF1ZXN0U2lkZUVmZmVjdHM/OiBGdW5jdGlvbjtcbn07XG5cbmV4cG9ydCB0eXBlIFN0cmljdEhhbmRsaW5nVXRpbGl0aWVzID0ge1xuXHQvL1RPRE86IG1vdmUgdG8gc29tZXdoZXJlIGVsc2Vcblx0aXM0MTJFeGVjdXRlZDogYm9vbGVhbjtcblx0c3RyaWN0SGFuZGxpbmdUcmFuc2l0aW9uRmFpbHM6IE9iamVjdFtdO1xuXHRzdHJpY3RIYW5kbGluZ1Byb21pc2VzOiBTdHJpY3RIYW5kbGluZ1Byb21pc2VbXTtcblx0c3RyaWN0SGFuZGxpbmdXYXJuaW5nTWVzc2FnZXM6IE1lc3NhZ2VbXTtcblx0ZGVsYXlTdWNjZXNzTWVzc2FnZXM6IE1lc3NhZ2VbXTtcblx0cHJvY2Vzc2VkTWVzc2FnZUlkczogc3RyaW5nW107XG59O1xuXG5jb25zdCBtYWNyb1Jlc291cmNlQnVuZGxlID0gTGlicmFyeS5nZXRSZXNvdXJjZUJ1bmRsZUZvcihcInNhcC5mZS5tYWNyb3NcIikhO1xuLyoqXG4gKiBLbm93biBsaW1pdGF0aW9ucyBmb3IgdGhlIGZpcnN0IHRyeW91dCBhcyBtZW50aW9uZWQgaW4gZ2l0IDU4MDY0NDJcbiAqICAtIGZ1bmN0aW9uYWwgYmxvY2sgZGVwZW5kZW5jeVxuICogXHQtIHF1ZXN0aW9uYWJsZSBwYXJhbWV0ZXJzIHdpbGwgYmUgcmVmYWN0b3JlZFxuICovXG5AZGVmaW5lQnVpbGRpbmdCbG9jayh7XG5cdG5hbWU6IFwiT3BlcmF0aW9uc0RpYWxvZ1wiLFxuXHRuYW1lc3BhY2U6IFwic2FwLmZlLmNvcmUuY29udHJvbGxlcmV4dGVuc2lvbnNcIlxufSlcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE9wZXJhdGlvbnNEaWFsb2dCbG9jayBleHRlbmRzIFJ1bnRpbWVCdWlsZGluZ0Jsb2NrIHtcblx0Lypcblx0ICogVGhlICdpZCcgcHJvcGVydHkgb2YgdGhlIGRpYWxvZ1xuXHQgKi9cblx0QGJsb2NrQXR0cmlidXRlKHsgdHlwZTogXCJzdHJpbmdcIiwgaXNQdWJsaWM6IHRydWUsIHJlcXVpcmVkOiB0cnVlIH0pXG5cdHB1YmxpYyBpZCE6IHN0cmluZztcblxuXHQvKipcblx0ICogVGhlICd0aXRsZScgcHJvcGVydHkgb2YgdGhlIERpYWxvZztcblx0ICovXG5cdEBibG9ja0F0dHJpYnV0ZSh7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0cHVibGljIHRpdGxlPzogc3RyaW5nID0gXCJEaWFsb2cgU3RhbmRhcmQgVGl0bGVcIjtcblxuXHQvKipcblx0ICogVGhlIG1lc3NhZ2Ugb2JqZWN0IHRoYXQgaXMgcHJvdmlkZWQgdG8gdGhpcyBkaWFsb2dcblx0ICovXG5cdEBibG9ja0F0dHJpYnV0ZSh7IHR5cGU6IFwib2JqZWN0XCIsIHJlcXVpcmVkOiB0cnVlIH0pIC8vVE9ETzogY3JlYXRlIHRoZSB0eXBlXG5cdHB1YmxpYyBtZXNzYWdlT2JqZWN0ITogeyBvTWVzc2FnZVZpZXc6IENvbnRyb2w7IG9CYWNrQnV0dG9uOiBCdXR0b24gfTtcblxuXHRAZGVmaW5lUmVmZXJlbmNlKClcblx0b3BlcmF0aW9uc0RpYWxvZyE6IFJlZjxEaWFsb2c+O1xuXG5cdEBibG9ja0F0dHJpYnV0ZSh7IHR5cGU6IFwiYm9vbGVhblwiLCByZXF1aXJlZDogdHJ1ZSB9KVxuXHRwdWJsaWMgaXNNdWx0aUNvbnRleHQ0MTI/OiBib29sZWFuO1xuXG5cdEBibG9ja0F0dHJpYnV0ZSh7IHR5cGU6IFwiZnVuY3Rpb25cIiB9KVxuXHRwdWJsaWMgcmVxdWVzdFNpZGVFZmZlY3RzPzogRnVuY3Rpb247XG5cblx0QGJsb2NrQXR0cmlidXRlKHsgdHlwZTogXCJmdW5jdGlvblwiIH0pXG5cdHB1YmxpYyByZXNvbHZlPzogRnVuY3Rpb247XG5cblx0QGJsb2NrQXR0cmlidXRlKHsgdHlwZTogXCJvYmplY3RcIiwgcmVxdWlyZWQ6IHRydWUgfSlcblx0cHVibGljIG1vZGVsITogT0RhdGFNb2RlbDtcblxuXHRAYmxvY2tBdHRyaWJ1dGUoeyB0eXBlOiBcInN0cmluZ1wiLCByZXF1aXJlZDogdHJ1ZSB9KVxuXHRwdWJsaWMgZ3JvdXBJZCE6IHN0cmluZztcblxuXHRAYmxvY2tBdHRyaWJ1dGUoeyB0eXBlOiBcInN0cmluZ1wiLCByZXF1aXJlZDogdHJ1ZSB9KVxuXHRwdWJsaWMgYWN0aW9uTmFtZSE6IHN0cmluZztcblxuXHRAYmxvY2tBdHRyaWJ1dGUoeyB0eXBlOiBcInN0cmluZ1wiLCByZXF1aXJlZDogdHJ1ZSB9KVxuXHRwdWJsaWMgY2FuY2VsQnV0dG9uVHh0ITogc3RyaW5nO1xuXG5cdEBibG9ja0F0dHJpYnV0ZSh7IHR5cGU6IFwib2JqZWN0XCIsIHJlcXVpcmVkOiB0cnVlIH0pXG5cdHB1YmxpYyBzdHJpY3RIYW5kbGluZ1Byb21pc2VzITogU3RyaWN0SGFuZGxpbmdQcm9taXNlW107XG5cblx0QGJsb2NrQXR0cmlidXRlKHsgdHlwZTogXCJvYmplY3RcIiB9KVxuXHRwdWJsaWMgc3RyaWN0SGFuZGxpbmdVdGlsaXRpZXM/OiBTdHJpY3RIYW5kbGluZ1V0aWxpdGllcztcblxuXHRAYmxvY2tBdHRyaWJ1dGUoeyB0eXBlOiBcIm9iamVjdFwiIH0pXG5cdHB1YmxpYyBtZXNzYWdlSGFuZGxlcj86IE1lc3NhZ2VIYW5kbGVyO1xuXG5cdEBibG9ja0F0dHJpYnV0ZSh7IHR5cGU6IFwib2JqZWN0XCIsIHJlcXVpcmVkOiB0cnVlIH0pXG5cdHB1YmxpYyBtZXNzYWdlRGlhbG9nTW9kZWwhOiBKU09OTW9kZWw7XG5cblx0QGJsb2NrQXR0cmlidXRlKHsgdHlwZTogXCJib29sZWFuXCIgfSlcblx0cHVibGljIGlzR3JvdXBlZD86IGJvb2xlYW47XG5cblx0QGJsb2NrQXR0cmlidXRlKHsgdHlwZTogXCJmdW5jdGlvblwiIH0pXG5cdHB1YmxpYyBzaG93TWVzc2FnZUluZm8/OiBGdW5jdGlvbjtcblxuXHRjb25zdHJ1Y3Rvcihwcm9wczogUHJvcGVydGllc09mPE9wZXJhdGlvbnNEaWFsb2dCbG9jaz4sIF9jb250cm9sQ29uZmlndXJhdGlvbj86IHVua25vd24sIF92aXNpdG9yU2V0dGluZ3M/OiBUZW1wbGF0ZVByb2Nlc3NvclNldHRpbmdzKSB7XG5cdFx0c3VwZXIocHJvcHMsIF9jb250cm9sQ29uZmlndXJhdGlvbiwgX3Zpc2l0b3JTZXR0aW5ncyk7XG5cdH1cblxuXHRwdWJsaWMgb3BlbigpOiB2b2lkIHtcblx0XHR0aGlzLmdldENvbnRlbnQoKTtcblx0XHR0aGlzLm9wZXJhdGlvbnNEaWFsb2cuY3VycmVudD8ub3BlbigpO1xuXHR9XG5cblx0cHJpdmF0ZSBnZXRCZWdpbkJ1dHRvbigpOiBCdXR0b24ge1xuXHRcdHJldHVybiBuZXcgQnV0dG9uKHtcblx0XHRcdHByZXNzOiAoKTogdm9pZCA9PiB7XG5cdFx0XHRcdGlmICghKHRoaXMuaXNNdWx0aUNvbnRleHQ0MTIgPz8gZmFsc2UpKSB7XG5cdFx0XHRcdFx0dGhpcy5yZXNvbHZlPy4odHJ1ZSk7XG5cdFx0XHRcdFx0dGhpcy5tb2RlbC5zdWJtaXRCYXRjaCh0aGlzLmdyb3VwSWQpO1xuXHRcdFx0XHRcdGlmICh0aGlzLnJlcXVlc3RTaWRlRWZmZWN0cykge1xuXHRcdFx0XHRcdFx0dGhpcy5yZXF1ZXN0U2lkZUVmZmVjdHMoKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0dGhpcy5zdHJpY3RIYW5kbGluZ1Byb21pc2VzLmZvckVhY2goKHN0cmljdEhhbmRsaW5nUHJvbWlzZTogU3RyaWN0SGFuZGxpbmdQcm9taXNlKSA9PiB7XG5cdFx0XHRcdFx0XHRzdHJpY3RIYW5kbGluZ1Byb21pc2UucmVzb2x2ZSh0cnVlKTtcblx0XHRcdFx0XHRcdHRoaXMubW9kZWwuc3VibWl0QmF0Y2goc3RyaWN0SGFuZGxpbmdQcm9taXNlLmdyb3VwSWQpO1xuXHRcdFx0XHRcdFx0aWYgKHN0cmljdEhhbmRsaW5nUHJvbWlzZS5yZXF1ZXN0U2lkZUVmZmVjdHMpIHtcblx0XHRcdFx0XHRcdFx0c3RyaWN0SGFuZGxpbmdQcm9taXNlLnJlcXVlc3RTaWRlRWZmZWN0cygpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdGNvbnN0IHN0cmljdEhhbmRsaW5nRmFpbHMgPSB0aGlzLnN0cmljdEhhbmRsaW5nVXRpbGl0aWVzPy5zdHJpY3RIYW5kbGluZ1RyYW5zaXRpb25GYWlscztcblx0XHRcdFx0XHRpZiAoc3RyaWN0SGFuZGxpbmdGYWlscyAmJiBzdHJpY3RIYW5kbGluZ0ZhaWxzLmxlbmd0aCA+IDApIHtcblx0XHRcdFx0XHRcdHRoaXMubWVzc2FnZUhhbmRsZXI/LnJlbW92ZVRyYW5zaXRpb25NZXNzYWdlcygpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRpZiAodGhpcy5zdHJpY3RIYW5kbGluZ1V0aWxpdGllcykge1xuXHRcdFx0XHRcdFx0dGhpcy5zdHJpY3RIYW5kbGluZ1V0aWxpdGllcy5zdHJpY3RIYW5kbGluZ1dhcm5pbmdNZXNzYWdlcyA9IFtdO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAodGhpcy5zdHJpY3RIYW5kbGluZ1V0aWxpdGllcykge1xuXHRcdFx0XHRcdHRoaXMuc3RyaWN0SGFuZGxpbmdVdGlsaXRpZXMuaXM0MTJFeGVjdXRlZCA9IHRydWU7XG5cdFx0XHRcdH1cblx0XHRcdFx0dGhpcy5tZXNzYWdlRGlhbG9nTW9kZWwuc2V0RGF0YSh7fSk7XG5cdFx0XHRcdHRoaXMuY2xvc2UoKTtcblx0XHRcdH0sXG5cdFx0XHR0eXBlOiBcIkVtcGhhc2l6ZWRcIixcblx0XHRcdHRleHQ6IHRoaXMuYWN0aW9uTmFtZVxuXHRcdH0pO1xuXHR9XG5cblx0cHJpdmF0ZSBjbG9zZSgpOiB2b2lkIHtcblx0XHR0aGlzLm9wZXJhdGlvbnNEaWFsb2cuY3VycmVudD8uY2xvc2UoKTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0VGl0bGUoKTogVGl0bGUge1xuXHRcdGNvbnN0IHNUaXRsZSA9IG1hY3JvUmVzb3VyY2VCdW5kbGUuZ2V0VGV4dChcIk1fV0FSTklOR1NcIik7XG5cdFx0cmV0dXJuIG5ldyBUaXRsZSh7IHRleHQ6IHNUaXRsZSB9KTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0RW5kQnV0dG9uKCk6IEJ1dHRvbiB7XG5cdFx0cmV0dXJuIG5ldyBCdXR0b24oe1xuXHRcdFx0cHJlc3M6ICgpOiB2b2lkID0+IHtcblx0XHRcdFx0aWYgKHRoaXMuc3RyaWN0SGFuZGxpbmdVdGlsaXRpZXMpIHtcblx0XHRcdFx0XHR0aGlzLnN0cmljdEhhbmRsaW5nVXRpbGl0aWVzLnN0cmljdEhhbmRsaW5nV2FybmluZ01lc3NhZ2VzID0gW107XG5cdFx0XHRcdFx0dGhpcy5zdHJpY3RIYW5kbGluZ1V0aWxpdGllcy5pczQxMkV4ZWN1dGVkID0gZmFsc2U7XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKCEodGhpcy5pc011bHRpQ29udGV4dDQxMiA/PyBmYWxzZSkpIHtcblx0XHRcdFx0XHR0aGlzLnJlc29sdmUhKGZhbHNlKTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHR0aGlzLnN0cmljdEhhbmRsaW5nUHJvbWlzZXMuZm9yRWFjaChmdW5jdGlvbiAoc3RyaWN0SGFuZGxpbmdQcm9taXNlOiBTdHJpY3RIYW5kbGluZ1Byb21pc2UpIHtcblx0XHRcdFx0XHRcdHN0cmljdEhhbmRsaW5nUHJvbWlzZS5yZXNvbHZlKGZhbHNlKTtcblx0XHRcdFx0XHR9KTtcblx0XHRcdFx0fVxuXHRcdFx0XHR0aGlzLm1lc3NhZ2VEaWFsb2dNb2RlbC5zZXREYXRhKHt9KTtcblx0XHRcdFx0dGhpcy5jbG9zZSgpO1xuXHRcdFx0XHRpZiAodGhpcy5pc0dyb3VwZWQgPz8gZmFsc2UpIHtcblx0XHRcdFx0XHR0aGlzLnNob3dNZXNzYWdlSW5mbyEoKTtcblx0XHRcdFx0fVxuXHRcdFx0fSxcblx0XHRcdHRleHQ6IHRoaXMuY2FuY2VsQnV0dG9uVHh0XG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogVGhlIGJ1aWxkaW5nIGJsb2NrIHJlbmRlciBmdW5jdGlvbi5cblx0ICpcblx0ICogQHJldHVybnMgQW4gWE1MLWJhc2VkIHN0cmluZyB3aXRoIHRoZSBkZWZpbml0aW9uIG9mIHRoZSBmaWVsZCBjb250cm9sXG5cdCAqL1xuXHRnZXRDb250ZW50KCk6IERpYWxvZyB7XG5cdFx0cmV0dXJuIChcblx0XHRcdDxEaWFsb2dcblx0XHRcdFx0aWQ9e3RoaXMuaWR9XG5cdFx0XHRcdHJlZj17dGhpcy5vcGVyYXRpb25zRGlhbG9nfVxuXHRcdFx0XHRyZXNpemFibGU9e3RydWV9XG5cdFx0XHRcdGNvbnRlbnQ9e3RoaXMubWVzc2FnZU9iamVjdC5vTWVzc2FnZVZpZXd9XG5cdFx0XHRcdHN0YXRlPXtcIldhcm5pbmdcIn1cblx0XHRcdFx0Y3VzdG9tSGVhZGVyPXtcblx0XHRcdFx0XHRuZXcgQmFyKHtcblx0XHRcdFx0XHRcdGNvbnRlbnRMZWZ0OiBbdGhpcy5tZXNzYWdlT2JqZWN0Lm9CYWNrQnV0dG9uXSxcblx0XHRcdFx0XHRcdGNvbnRlbnRNaWRkbGU6IFt0aGlzLmdldFRpdGxlKCldXG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0fVxuXHRcdFx0XHRjb250ZW50SGVpZ2h0PXtcIjUwJVwifVxuXHRcdFx0XHRjb250ZW50V2lkdGg9e1wiNTAlXCJ9XG5cdFx0XHRcdHZlcnRpY2FsU2Nyb2xsaW5nPXtmYWxzZX1cblx0XHRcdFx0YmVnaW5CdXR0b249e3RoaXMuZ2V0QmVnaW5CdXR0b24oKX1cblx0XHRcdFx0ZW5kQnV0dG9uPXt0aGlzLmdldEVuZEJ1dHRvbigpfVxuXHRc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ZUFBZSxFQUFHO1VBQ3hCO1FBQ0QsQ0FBQztRQUNEUixJQUFJLEVBQUUsSUFBSSxDQUFDUztNQUNaLENBQUMsQ0FBQztJQUNIOztJQUVBO0FBQ0Q7QUFDQTtBQUNBO0FBQ0EsT0FKQztJQUFBLE9BS0FuQyxVQUFVLEdBQVYsc0JBQXFCO01BQ3BCLE9BQ0MsS0FBQyxNQUFNO1FBQ04sRUFBRSxFQUFFLElBQUksQ0FBQ29DLEVBQUc7UUFDWixHQUFHLEVBQUUsSUFBSSxDQUFDbkMsZ0JBQWlCO1FBQzNCLFNBQVMsRUFBRSxJQUFLO1FBQ2hCLE9BQU8sRUFBRSxJQUFJLENBQUNvQyxhQUFhLENBQUNDLFlBQWE7UUFDekMsS0FBSyxFQUFFLFNBQVU7UUFDakIsWUFBWSxFQUNYLElBQUlDLEdBQUcsQ0FBQztVQUNQQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUNILGFBQWEsQ0FBQ0ksV0FBVyxDQUFDO1VBQzdDQyxhQUFhLEVBQUUsQ0FBQyxJQUFJLENBQUNkLFFBQVEsRUFBRTtRQUNoQyxDQUFDLENBQ0Q7UUFDRCxhQUFhLEVBQUUsS0FBTTtRQUNyQixZQUFZLEVBQUUsS0FBTTtRQUNwQixpQkFBaUIsRUFBRSxLQUFNO1FBQ3pCLFdBQVcsRUFBRSxJQUFJLENBQUN6QixjQUFjLEVBQUc7UUFDbkMsU0FBUyxFQUFFLElBQUksQ0FBQzZCLFlBQVk7TUFBRyxFQUN0QjtJQUVaLENBQUM7SUFBQTtFQUFBLEVBcktpRFcsb0JBQW9CO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO01BQUEsT0FXOUMsdUJBQXVCO0lBQUE7RUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO0VBQUE7SUFBQTtJQUFBO0lBQUE7SUFBQTtFQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO0VBQUE7SUFBQTtJQUFBO0lBQUE7SUFBQTtFQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO0VBQUE7SUFBQTtJQUFBO0lBQUE7SUFBQTtFQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO0VBQUE7SUFBQTtJQUFBO0lBQUE7SUFBQTtFQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO0VBQUE7SUFBQTtJQUFBO0lBQUE7SUFBQTtFQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQSJ9
|