@sapui5/sap.fe.core 1.113.0 → 1.115.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/sap/fe/core/.library +1 -1
- package/src/sap/fe/core/ActionRuntime-dbg.js +68 -5
- package/src/sap/fe/core/ActionRuntime.js +1 -1
- package/src/sap/fe/core/ActionRuntime.js.map +1 -1
- package/src/sap/fe/core/ActionRuntime.ts +120 -4
- package/src/sap/fe/core/AppComponent-dbg.js +8 -2
- package/src/sap/fe/core/AppComponent.js +1 -1
- package/src/sap/fe/core/AppComponent.js.map +1 -1
- package/src/sap/fe/core/AppComponent.ts +19 -3
- package/src/sap/fe/core/AppStateHandler-dbg.js +14 -10
- package/src/sap/fe/core/AppStateHandler.js +1 -1
- package/src/sap/fe/core/AppStateHandler.js.map +1 -1
- package/src/sap/fe/core/AppStateHandler.ts +17 -11
- package/src/sap/fe/core/BaseController-dbg.js +1 -1
- package/src/sap/fe/core/BaseController.ts +13 -2
- package/src/sap/fe/core/CommonUtils-dbg.js +74 -317
- package/src/sap/fe/core/CommonUtils.js +1 -1
- package/src/sap/fe/core/CommonUtils.js.map +1 -1
- package/src/sap/fe/core/CommonUtils.ts +96 -473
- package/src/sap/fe/core/ExtensionAPI-dbg.js +1 -1
- package/src/sap/fe/core/ExtensionAPI.ts +2 -2
- package/src/sap/fe/core/StateFilterToSelectionVariant-dbg.js +263 -0
- package/src/sap/fe/core/StateFilterToSelectionVariant.js +6 -0
- package/src/sap/fe/core/StateFilterToSelectionVariant.js.map +1 -0
- package/src/sap/fe/core/StateFilterToSelectionVariant.ts +316 -0
- package/src/sap/fe/core/TemplateComponent-dbg.js +1 -1
- package/src/sap/fe/core/TemplateComponent.ts +6 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase-dbg.js +10 -3
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.js +1 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.js.map +1 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.ts +8 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockSupport-dbg.js +1 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockSupport.ts +1 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor-dbg.js +8 -8
- package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor.js.map +1 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor.ts +7 -7
- package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlockFragment-dbg.js +1 -1
- package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlockFragment.ts +1 -1
- package/src/sap/fe/core/controllerextensions/EditFlow-dbg.js +68 -36
- package/src/sap/fe/core/controllerextensions/EditFlow.js +1 -1
- package/src/sap/fe/core/controllerextensions/EditFlow.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +83 -43
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation-dbg.js +12 -11
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +1 -1
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +17 -21
- package/src/sap/fe/core/controllerextensions/InternalRouting-dbg.js +233 -133
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +1 -1
- package/src/sap/fe/core/controllerextensions/InternalRouting.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +260 -145
- package/src/sap/fe/core/controllerextensions/MassEdit-dbg.js +1 -1
- package/src/sap/fe/core/controllerextensions/MassEdit.ts +3 -3
- package/src/sap/fe/core/controllerextensions/Routing-dbg.js +5 -3
- package/src/sap/fe/core/controllerextensions/Routing.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/Routing.ts +5 -4
- package/src/sap/fe/core/controllerextensions/Share-dbg.js +3 -2
- package/src/sap/fe/core/controllerextensions/Share.js +1 -1
- package/src/sap/fe/core/controllerextensions/Share.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/Share.ts +2 -1
- package/src/sap/fe/core/controllerextensions/SideEffects-dbg.js +19 -14
- package/src/sap/fe/core/controllerextensions/SideEffects.js +1 -1
- package/src/sap/fe/core/controllerextensions/SideEffects.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +25 -18
- package/src/sap/fe/core/controllerextensions/ViewState-dbg.js +40 -26
- package/src/sap/fe/core/controllerextensions/ViewState.js +1 -1
- package/src/sap/fe/core/controllerextensions/ViewState.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/ViewState.ts +59 -33
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync-dbg.js +8 -8
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.ts +23 -25
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon-dbg.js +7 -45
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.ts +5 -48
- package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog-dbg.js +2 -2
- package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.tsx +7 -3
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper-dbg.js +73 -90
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +88 -101
- package/src/sap/fe/core/controllerextensions/editFlow/draft-dbg.js +26 -4
- package/src/sap/fe/core/controllerextensions/editFlow/draft.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/draft.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/draft.ts +29 -3
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup-dbg.js +13 -10
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.ts +7 -20
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade-dbg.js +64 -4
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.ts +91 -8
- package/src/sap/fe/core/controllerextensions/editFlow/sticky-dbg.js +2 -4
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +3 -5
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling-dbg.js +9 -9
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +1 -1
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js.map +1 -1
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.ts +8 -8
- package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +2 -0
- package/src/sap/fe/core/controls/CommandExecution-dbg.js +4 -9
- package/src/sap/fe/core/controls/CommandExecution.js +1 -1
- package/src/sap/fe/core/controls/CommandExecution.js.map +1 -1
- package/src/sap/fe/core/controls/CommandExecution.ts +0 -8
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block-dbg.js +335 -0
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block.js +6 -0
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block.js.map +1 -0
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block.tsx +336 -0
- package/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +1 -0
- package/src/sap/fe/core/controls/filterbar/VisualFilter-dbg.js +3 -28
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js +1 -1
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js.map +1 -1
- package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +8 -29
- package/src/sap/fe/core/controls/filterbar/adapter/SelectionVariantToStateFilters-dbg.js +435 -0
- package/src/sap/fe/core/controls/filterbar/adapter/SelectionVariantToStateFilters.js +6 -0
- package/src/sap/fe/core/controls/filterbar/adapter/SelectionVariantToStateFilters.js.map +1 -0
- package/src/sap/fe/core/controls/filterbar/adapter/SelectionVariantToStateFilters.ts +532 -0
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils-dbg.js +30 -1
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +1 -1
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js.map +1 -1
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +38 -0
- package/src/sap/fe/core/converters/ManifestSettings-dbg.js +1 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +7 -5
- package/src/sap/fe/core/converters/MetaModelConverter-dbg.js +36 -4
- package/src/sap/fe/core/converters/MetaModelConverter.js +1 -1
- package/src/sap/fe/core/converters/MetaModelConverter.js.map +1 -1
- package/src/sap/fe/core/converters/MetaModelConverter.ts +45 -4
- package/src/sap/fe/core/converters/TemplateConverter-dbg.js +2 -3
- package/src/sap/fe/core/converters/TemplateConverter.js +1 -1
- package/src/sap/fe/core/converters/TemplateConverter.js.map +1 -1
- package/src/sap/fe/core/converters/TemplateConverter.ts +1 -6
- package/src/sap/fe/core/converters/annotations/DataField-dbg.js +18 -3
- package/src/sap/fe/core/converters/annotations/DataField.js +1 -1
- package/src/sap/fe/core/converters/annotations/DataField.js.map +1 -1
- package/src/sap/fe/core/converters/annotations/DataField.ts +18 -2
- package/src/sap/fe/core/converters/common/AnnotationConverter-dbg.js +679 -676
- package/src/sap/fe/core/converters/common/AnnotationConverter.js +1 -1
- package/src/sap/fe/core/converters/common/AnnotationConverter.js.map +1 -1
- package/src/sap/fe/core/converters/controls/Common/Chart-dbg.js +32 -20
- package/src/sap/fe/core/converters/controls/Common/Chart.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/Chart.js.map +1 -1
- package/src/sap/fe/core/converters/controls/Common/Chart.ts +30 -18
- package/src/sap/fe/core/converters/controls/Common/DataVisualization-dbg.js +4 -5
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.js.map +1 -1
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +6 -37
- package/src/sap/fe/core/converters/controls/Common/Table-dbg.js +100 -72
- package/src/sap/fe/core/converters/controls/Common/Table.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/Table.js.map +1 -1
- package/src/sap/fe/core/converters/controls/Common/Table.ts +146 -99
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions-dbg.js +37 -10
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js.map +1 -1
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +49 -16
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar-dbg.js +47 -18
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +1 -1
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js.map +1 -1
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +74 -20
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters-dbg.js +26 -9
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +1 -1
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js.map +1 -1
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +24 -8
- package/src/sap/fe/core/converters/helpers/Aggregation-dbg.js +28 -2
- package/src/sap/fe/core/converters/helpers/Aggregation.js +1 -1
- package/src/sap/fe/core/converters/helpers/Aggregation.js.map +1 -1
- package/src/sap/fe/core/converters/helpers/Aggregation.ts +28 -9
- package/src/sap/fe/core/converters/helpers/InsightsHelpers-dbg.js +39 -0
- package/src/sap/fe/core/converters/helpers/InsightsHelpers.js +6 -0
- package/src/sap/fe/core/converters/helpers/InsightsHelpers.js.map +1 -0
- package/src/sap/fe/core/converters/helpers/InsightsHelpers.ts +45 -0
- package/src/sap/fe/core/converters/templates/ListReportConverter-dbg.js +13 -15
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +1 -1
- package/src/sap/fe/core/converters/templates/ListReportConverter.js.map +1 -1
- package/src/sap/fe/core/converters/templates/ListReportConverter.ts +18 -54
- package/src/sap/fe/core/converters/templates/ObjectPageConverter-dbg.js +12 -12
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +1 -1
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js.map +1 -1
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +16 -11
- package/src/sap/fe/core/formatters/CollaborationFormatter-dbg.js +17 -33
- package/src/sap/fe/core/formatters/CollaborationFormatter.js +1 -1
- package/src/sap/fe/core/formatters/CollaborationFormatter.js.map +1 -1
- package/src/sap/fe/core/formatters/CollaborationFormatter.ts +27 -22
- package/src/sap/fe/core/formatters/ValueFormatter-dbg.js +5 -11
- package/src/sap/fe/core/formatters/ValueFormatter.js +1 -1
- package/src/sap/fe/core/formatters/ValueFormatter.js.map +1 -1
- package/src/sap/fe/core/formatters/ValueFormatter.ts +4 -25
- package/src/sap/fe/core/fpm/Component-dbg.js +3 -1
- package/src/sap/fe/core/fpm/Component.js +1 -1
- package/src/sap/fe/core/fpm/Component.js.map +1 -1
- package/src/sap/fe/core/fpm/Component.ts +3 -1
- package/src/sap/fe/core/fpm/manifest.json +1 -1
- package/src/sap/fe/core/helpers/BindingToolkit-dbg.js +74 -26
- package/src/sap/fe/core/helpers/BindingToolkit.js +1 -1
- package/src/sap/fe/core/helpers/BindingToolkit.js.map +1 -1
- package/src/sap/fe/core/helpers/BindingToolkit.ts +116 -33
- package/src/sap/fe/core/helpers/DeleteHelper-dbg.js +82 -37
- package/src/sap/fe/core/helpers/DeleteHelper.js +1 -1
- package/src/sap/fe/core/helpers/DeleteHelper.js.map +1 -1
- package/src/sap/fe/core/helpers/DeleteHelper.ts +109 -56
- package/src/sap/fe/core/helpers/KeepAliveHelper-dbg.js +1 -1
- package/src/sap/fe/core/helpers/KeepAliveHelper.ts +7 -5
- package/src/sap/fe/core/helpers/MassEditHelper-dbg.js +13 -3
- package/src/sap/fe/core/helpers/MassEditHelper.js +1 -1
- package/src/sap/fe/core/helpers/MassEditHelper.js.map +1 -1
- package/src/sap/fe/core/helpers/MassEditHelper.ts +28 -18
- package/src/sap/fe/core/helpers/MessageStrip-dbg.js +1 -1
- package/src/sap/fe/core/helpers/MessageStrip.ts +2 -1
- package/src/sap/fe/core/helpers/ModelHelper-dbg.js +1 -1
- package/src/sap/fe/core/helpers/ModelHelper.ts +3 -3
- package/src/sap/fe/core/helpers/RecommendationHelper-dbg.js +71 -0
- package/src/sap/fe/core/helpers/RecommendationHelper.js +6 -0
- package/src/sap/fe/core/helpers/RecommendationHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/RecommendationHelper.ts +94 -0
- package/src/sap/fe/core/helpers/ResourceModelHelper-dbg.js +5 -2
- package/src/sap/fe/core/helpers/ResourceModelHelper.js +1 -1
- package/src/sap/fe/core/helpers/ResourceModelHelper.js.map +1 -1
- package/src/sap/fe/core/helpers/ResourceModelHelper.ts +5 -0
- package/src/sap/fe/core/helpers/StableIdHelper-dbg.js +24 -2
- package/src/sap/fe/core/helpers/StableIdHelper.js +1 -1
- package/src/sap/fe/core/helpers/StableIdHelper.js.map +1 -1
- package/src/sap/fe/core/helpers/StableIdHelper.ts +23 -1
- package/src/sap/fe/core/helpers/TitleHelper-dbg.js +239 -0
- package/src/sap/fe/core/helpers/TitleHelper.js +6 -0
- package/src/sap/fe/core/helpers/TitleHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/TitleHelper.ts +295 -0
- package/src/sap/fe/core/jsx-runtime/ViewLoader-dbg.js +4 -1
- package/src/sap/fe/core/jsx-runtime/ViewLoader.js +1 -1
- package/src/sap/fe/core/jsx-runtime/ViewLoader.js.map +1 -1
- package/src/sap/fe/core/jsx-runtime/ViewLoader.tsx +3 -0
- package/src/sap/fe/core/jsx-runtime/jsx-control-dbg.js +41 -17
- package/src/sap/fe/core/jsx-runtime/jsx-control.js +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx-control.js.map +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx-control.ts +45 -21
- package/src/sap/fe/core/jsx-runtime/jsx-dbg.js +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx.ts +1 -0
- package/src/sap/fe/core/jsx-runtime/useMDXComponents-dbg.js +8 -4
- package/src/sap/fe/core/jsx-runtime/useMDXComponents.js +1 -1
- package/src/sap/fe/core/jsx-runtime/useMDXComponents.js.map +1 -1
- package/src/sap/fe/core/jsx-runtime/useMDXComponents.tsx +7 -2
- package/src/sap/fe/core/library-dbg.js +4 -3
- package/src/sap/fe/core/library-preload.js +91 -74
- package/src/sap/fe/core/library-preload.js.map +1 -1
- package/src/sap/fe/core/library.js +1 -1
- package/src/sap/fe/core/library.js.map +1 -1
- package/src/sap/fe/core/library.ts +1 -1
- package/src/sap/fe/core/manifest.json +1 -1
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration-dbg.js +4 -3
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +1 -1
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js.map +1 -1
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +3 -2
- package/src/sap/fe/core/messagebundle.properties +12 -8
- package/src/sap/fe/core/messagebundle_ar.properties +7 -5
- package/src/sap/fe/core/messagebundle_bg.properties +7 -5
- package/src/sap/fe/core/messagebundle_ca.properties +7 -5
- package/src/sap/fe/core/messagebundle_cs.properties +7 -5
- package/src/sap/fe/core/messagebundle_cy.properties +7 -5
- package/src/sap/fe/core/messagebundle_da.properties +7 -5
- package/src/sap/fe/core/messagebundle_de.properties +7 -5
- package/src/sap/fe/core/messagebundle_el.properties +7 -5
- package/src/sap/fe/core/messagebundle_en.properties +7 -5
- package/src/sap/fe/core/messagebundle_en_GB.properties +6 -4
- package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +7 -4
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +6 -4
- package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +7 -4
- package/src/sap/fe/core/messagebundle_es.properties +7 -5
- package/src/sap/fe/core/messagebundle_es_MX.properties +7 -5
- package/src/sap/fe/core/messagebundle_et.properties +7 -5
- package/src/sap/fe/core/messagebundle_fi.properties +7 -5
- package/src/sap/fe/core/messagebundle_fr.properties +7 -5
- package/src/sap/fe/core/messagebundle_fr_CA.properties +8 -6
- package/src/sap/fe/core/messagebundle_hi.properties +7 -5
- package/src/sap/fe/core/messagebundle_hr.properties +7 -5
- package/src/sap/fe/core/messagebundle_hu.properties +7 -5
- package/src/sap/fe/core/messagebundle_id.properties +7 -5
- package/src/sap/fe/core/messagebundle_it.properties +8 -6
- package/src/sap/fe/core/messagebundle_iw.properties +7 -5
- package/src/sap/fe/core/messagebundle_ja.properties +7 -5
- package/src/sap/fe/core/messagebundle_kk.properties +7 -5
- package/src/sap/fe/core/messagebundle_ko.properties +7 -5
- package/src/sap/fe/core/messagebundle_lt.properties +7 -5
- package/src/sap/fe/core/messagebundle_lv.properties +7 -5
- package/src/sap/fe/core/messagebundle_ms.properties +7 -5
- package/src/sap/fe/core/messagebundle_nl.properties +7 -5
- package/src/sap/fe/core/messagebundle_no.properties +7 -5
- package/src/sap/fe/core/messagebundle_pl.properties +7 -5
- package/src/sap/fe/core/messagebundle_pt.properties +7 -5
- package/src/sap/fe/core/messagebundle_pt_PT.properties +7 -5
- package/src/sap/fe/core/messagebundle_ro.properties +7 -5
- package/src/sap/fe/core/messagebundle_ru.properties +7 -5
- package/src/sap/fe/core/messagebundle_sh.properties +7 -5
- package/src/sap/fe/core/messagebundle_sk.properties +7 -5
- package/src/sap/fe/core/messagebundle_sl.properties +7 -5
- package/src/sap/fe/core/messagebundle_sv.properties +7 -5
- package/src/sap/fe/core/messagebundle_th.properties +7 -5
- package/src/sap/fe/core/messagebundle_tr.properties +7 -5
- package/src/sap/fe/core/messagebundle_uk.properties +7 -5
- package/src/sap/fe/core/messagebundle_vi.properties +7 -5
- package/src/sap/fe/core/messagebundle_zh_CN.properties +7 -5
- package/src/sap/fe/core/messagebundle_zh_TW.properties +7 -5
- package/src/sap/fe/core/operationsHelper-dbg.js +1 -1
- package/src/sap/fe/core/operationsHelper.ts +1 -1
- package/src/sap/fe/core/rootView/Fcl-dbg.controller.js +8 -2
- package/src/sap/fe/core/rootView/Fcl.controller.js +1 -1
- package/src/sap/fe/core/rootView/Fcl.controller.js.map +1 -1
- package/src/sap/fe/core/rootView/Fcl.controller.ts +8 -1
- package/src/sap/fe/core/rootView/NavContainer-dbg.controller.js +8 -2
- package/src/sap/fe/core/rootView/NavContainer.controller.js +1 -1
- package/src/sap/fe/core/rootView/NavContainer.controller.js.map +1 -1
- package/src/sap/fe/core/rootView/NavContainer.controller.ts +10 -3
- package/src/sap/fe/core/rootView/RootViewBaseController-dbg.js +16 -6
- package/src/sap/fe/core/rootView/RootViewBaseController.js +1 -1
- package/src/sap/fe/core/rootView/RootViewBaseController.js.map +1 -1
- package/src/sap/fe/core/rootView/RootViewBaseController.ts +10 -4
- package/src/sap/fe/core/services/EnvironmentServiceFactory-dbg.js +54 -5
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +1 -1
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +52 -6
- package/src/sap/fe/core/services/NavigationServiceFactory-dbg.js +31 -14
- package/src/sap/fe/core/services/NavigationServiceFactory.js +1 -1
- package/src/sap/fe/core/services/NavigationServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/NavigationServiceFactory.ts +15 -1
- package/src/sap/fe/core/services/RoutingServiceFactory-dbg.js +10 -4
- package/src/sap/fe/core/services/RoutingServiceFactory.js +1 -1
- package/src/sap/fe/core/services/RoutingServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +29 -7
- package/src/sap/fe/core/services/SideEffectsServiceFactory-dbg.js +5 -2
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +1 -1
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +9 -5
- package/src/sap/fe/core/services/TemplatedViewServiceFactory-dbg.js +1 -2
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js.map +1 -1
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +2 -18
- package/src/sap/fe/core/templating/CommonFormatters-dbg.js +8 -8
- package/src/sap/fe/core/templating/CommonFormatters.js.map +1 -1
- package/src/sap/fe/core/templating/CommonFormatters.ts +9 -9
- package/src/sap/fe/core/templating/CriticalityFormatters-dbg.js +1 -1
- package/src/sap/fe/core/templating/CriticalityFormatters.ts +2 -2
- package/src/sap/fe/core/templating/DataFieldFormatters-dbg.js +38 -2
- package/src/sap/fe/core/templating/DataFieldFormatters.js +1 -1
- package/src/sap/fe/core/templating/DataFieldFormatters.js.map +1 -1
- package/src/sap/fe/core/templating/DataFieldFormatters.ts +40 -0
- package/src/sap/fe/core/templating/FieldControlHelper-dbg.js +5 -6
- package/src/sap/fe/core/templating/FieldControlHelper.js +1 -1
- package/src/sap/fe/core/templating/FieldControlHelper.js.map +1 -1
- package/src/sap/fe/core/templating/FieldControlHelper.ts +13 -11
- package/src/sap/fe/core/templating/FilterHelper-dbg.js +13 -1
- package/src/sap/fe/core/templating/FilterHelper.js +1 -1
- package/src/sap/fe/core/templating/FilterHelper.js.map +1 -1
- package/src/sap/fe/core/templating/FilterHelper.ts +13 -1
- package/src/sap/fe/core/templating/PropertyHelper-dbg.js +1 -1
- package/src/sap/fe/core/templating/PropertyHelper.ts +7 -7
- package/src/sap/fe/core/templating/UIFormatters-dbg.js +5 -6
- package/src/sap/fe/core/templating/UIFormatters.js +1 -1
- package/src/sap/fe/core/templating/UIFormatters.js.map +1 -1
- package/src/sap/fe/core/templating/UIFormatters.ts +6 -7
- package/src/sap/fe/core/type/TypeUtil-dbg.js +2 -2
- package/src/sap/fe/core/type/TypeUtil.js +1 -1
- package/src/sap/fe/core/type/TypeUtil.js.map +1 -1
- package/src/sap/fe/core/type/TypeUtil.ts +2 -2
- package/src/sap/fe/core/controllerextensions/collaboration/Manage-dbg.js +0 -243
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.js +0 -6
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.js.map +0 -1
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.ts +0 -283
- package/src/sap/fe/core/controllerextensions/collaboration/ManageDialog.fragment.xml +0 -121
- package/src/sap/fe/core/controllerextensions/collaboration/UserDetails.fragment.xml +0 -11
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossDraft.fragment.xml +0 -59
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler-dbg.js +0 -171
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +0 -6
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js.map +0 -1
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +0 -184
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2023 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/base/Log","sap/fe/core/controllerextensions/editFlow/draft","sap/m/CheckBox","sap/m/MessageToast","sap/m/Text"],function(e,t,n,o,s){"use strict";var l={};let i;(function(e){e["deletableContexts"]="deletableContexts";e["draftsWithDeletableActive"]="draftsWithDeletableActive";e["createModeContexts"]="createModeContexts";e["unSavedContexts"]="unSavedContexts";e["draftsWithNonDeletableActive"]="draftsWithNonDeletableActive";e["draftsToDeleteBeforeActive"]="draftsToDeleteBeforeActive"})(i||(i={}));l.DeleteOptionTypes=i;let E;(function(e){e["CHECKBOX"]="checkBox";e["TEXT"]="text"})(E||(E={}));l.DeleteDialogContentControl=E;function r(e,t,n,o){o.forEach(e=>{const t=n.indexOf(e);if(t!==-1){n.splice(t,1)}});e.setProperty(t,[]);return[...n]}function a(e,t){let n=e.getProperty("selectedContexts")||[];if(t.type===i.deletableContexts){n=r(e,i.deletableContexts,n,e.getProperty(i.deletableContexts)||[]);n=r(e,i.createModeContexts,n,e.getProperty(i.createModeContexts)||[]);const t=e.getProperty(i.draftsWithDeletableActive)||[];const o=t.map(e=>e.draft);n=r(e,i.draftsWithDeletableActive,n,o)}else{const o=e.getProperty(t.type)||[];n=r(e,t.type,n,o)}e.setProperty("selectedContexts",n);e.setProperty("numberOfSelectedContexts",n.length)}function _(e,t,n,s){const{internalModelContext:l,entitySetName:i}=e;if(l){if(l.getProperty("deleteEnabled")!=undefined){t.forEach(e=>{if(e.selected){a(l,e)}})}l.setProperty("deleteEnabled",t.some(e=>!e.selected))}if(n.length===1){o.show(s.getText("C_TRANSACTION_HELPER_DELETE_TOAST_SINGULAR",undefined,i))}else{o.show(s.getText("C_TRANSACTION_HELPER_DELETE_TOAST_PLURAL",undefined,i))}}function T(e){const t=e.getObject()["DraftAdministrativeData"];return t&&t["InProcessByUser"]||""}function c(e,t,n){let o="";if(t===1&&n.length===1){const t=T(n[0]);o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_SINGLE_OBJECT_LOCKED",[t])}else if(n.length==1){const s=T(n[0]);o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_ONE_OBJECT_LOCKED",[t,s])}else if(n.length>1){o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_FEW_OBJECTS_LOCKED",[n.length,t])}return o}function f(e,t,n){let o="";if(n===t){if(t===1){o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_ONLY_DRAFT_OF_NON_DELETABLE_ACTIVE")}else{o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_ONLY_DRAFTS_OF_NON_DELETABLE_ACTIVE")}}else if(t===1){o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_DRAFT_OF_NON_DELETABLE_ACTIVE")}else{o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_DRAFTS_OF_NON_DELETABLE_ACTIVE")}return o}function C(e){const t=e.getObject()["DraftAdministrativeData"];let n="";if(t){n=t["LastChangedByUserDescription"]||t["LastChangedByUser"]||""}return n}function N(e,t,n,o){let s="",l="",i=false;if(t===1&&n.length===1){const t=C(n[0]);s=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_UNSAVED_CHANGES",[t]);i=true}else if(t===n.length){s=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_UNSAVED_CHANGES_MULTIPLE_OBJECTS");i=true}else if(o===n.length){if(n.length===1){const t=C(n[0]);s=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_UNSAVED_AND_FEW_OBJECTS_LOCKED_SINGULAR",[t])}else{s=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_UNSAVED_AND_FEW_OBJECTS_LOCKED_PLURAL")}i=true}else if(o>n.length){if(n.length===1){const t=C(n[0]);l=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_FEW_OBJECTS_UNSAVED_SINGULAR",[t])}else{l=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_FEW_OBJECTS_UNSAVED_PLURAL")}}return{infoTxt:s,optionTxt:l,optionWithoutTxt:i}}function A(e,t,n){const{numberOfSelectedContexts:o,lockedContexts:l=[],draftsWithNonDeletableActive:i=[]}=e;const E=o-(l.length+t-i.length);let r="";if(E>0&&(t===0||i.length===t)){if(l.length>0){if(E===1){r=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_ALL_REMAINING_NON_DELETABLE_SINGULAR")}else{r=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_ALL_REMAINING_NON_DELETABLE_PLURAL")}}else if(E===1){r=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_SINGLE_AND_ONE_OBJECT_NON_DELETABLE")}else{r=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_MULTIPLE_AND_ALL_OBJECT_NON_DELETABLE")}}else if(E===1){r=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_ONE_OBJECT_NON_DELETABLE",[o])}else if(E>1){r=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_FEW_OBJECTS_NON_DELETABLE",[E,o])}return r?new s({text:r}):undefined}function d(e,t){return t.reduce((e,t)=>t.selected&&t.type!==i.draftsToDeleteBeforeActive?e.concat(t.contexts):e,e)}function D(e){const t=[];return e.reduce((e,t)=>t.selected&&t.type===i.draftsToDeleteBeforeActive?e.concat(t.contexts):e,t)}function g(e,t,n,o,l,r){const{numberOfSelectedContexts:a,draftsWithDeletableActive:_,unSavedContexts:T,createModeContexts:c,lockedContexts:f,draftsWithNonDeletableActive:C}=e;let N="";if(_.length>0){const e=[];_.forEach(n=>{if(n.draft.getProperty("DraftAdministrativeData/InProcessByUser")){e.push(n.draft)}t.push(n.siblingInfo.targetContext)});if(e.length>0){r.push({type:i.draftsToDeleteBeforeActive,contexts:e,selected:true})}}if(c.length>0){c.forEach(e=>t.push(e))}if(f.length>0){N=h.getLockedObjectsText(o,a,f)||"";l.push(new s({text:N}))}const A=a!=n-C.length+f.length;const d=A&&h.getNonDeletableText(e,n,o);if(d){l.push(d)}if(T.length>0){const e=h.getUnsavedContextsText(o,a,T,n)||{};if(e.infoTxt){l.push(new s({text:e.infoTxt}))}if(e.optionTxt||e.optionWithoutTxt){r.push({type:i.unSavedContexts,contexts:T,text:e.optionTxt,selected:true,control:E.CHECKBOX})}}if(C.length>0){const e=h.getNonDeletableActivesOfDraftsText(o,C.length,n)||"";if(e){r.push({type:i.draftsWithNonDeletableActive,contexts:C,text:e,selected:true,control:n>0?E.CHECKBOX:E.TEXT})}}}function O(e,t){if(e.length===1){const n=e[0];if(n.text){t.push(new s({text:n.text}))}}else if(e.length>1){e.forEach(e=>{if(e.control==="text"&&e.text){t.push(new s({text:e.text}))}});e.forEach(e=>{if(e.control==="checkBox"&&e.text){t.push(new n({text:e.text,selected:true,select:function(t){const n=t.getSource();const o=n.getSelected();e.selected=o}}))}})}}function L(e,t,n,o){const{numberOfSelectedContexts:s,entitySetName:l,parentControl:r,description:a,lockedContexts:_,draftsWithNonDeletableActive:T,unSavedContexts:c}=e;const f=t.length+T.length+c.length;const C=s-(_.length+f-T.length);if(s===1&&s===t.length){const e=t[0].getObject();const s=r;const _=s&&s.getParent().getIdentifierColumn();let T;let c=[];if(_){const t=_?e[_]:undefined;const o=a&&a.path?e[a.path]:undefined;if(t){if(o&&a&&_!==a.path){c=[t+" ",o]}else{c=[t,""]}T=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO",c,l)}else{T=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTTITLE_SINGULAR",undefined,l)}}else{T=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTTITLE_SINGULAR",undefined,l)}o.push({type:i.deletableContexts,contexts:t,text:T,selected:true,control:E.TEXT})}else if(c.length!==f&&s>0&&(t.length>0||c.length>0&&T.length>0)){if(s>t.length&&C+_.length>0){let e="";if(f===1){e=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTTITLE_SINGULAR_NON_DELETABLE",undefined,l)}else{e=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTTITLE_PLURAL_NON_DELETABLE",undefined,l)}o.unshift({type:i.deletableContexts,contexts:t,text:e,selected:true,control:E.TEXT})}else{const e=f===1?n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTTITLE_SINGULAR",undefined,l):n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTTITLE_PLURAL",undefined,l);o.push({type:i.deletableContexts,contexts:t,text:e,selected:true,control:E.TEXT})}}}async function x(n,o,s,l,i,E){try{const r=h.getConfirmedDeletableContext([],n);const a=D(n);const{beforeDeleteCallBack:_,parentControl:T}=o;if(_){await _({contexts:r})}if(r&&r.length){try{const s=r.length===1?true:false;const _=[];await Promise.allSettled(a.map(function(n){try{return t.deleteDraft(n,i,s)}catch(t){e.error(`FE : core : DeleteHelper : Error while discrding draft with path : ${n.getPath()}`);_.push(t)}}));await Promise.all(r.map(function(e){if(E&&!e.getProperty("IsActiveEntity")){return t.deleteDraft(e,i,s)}return e.delete()}));h.afterDeleteProcess(o,n,r,l);if(_.length>0){throw Error(`FE : core : DeleteHelper : Errors on draft delete : ${_}`)}}catch(e){await s.showMessageDialog({control:T});throw e}}}catch(e){await s.showMessages();throw e}}async function I(e,n){const o=n.map(e=>{const n=e.getModel().getMetaModel().getMetaContext(e.getCanonicalPath());const o=n.getProperty("@Org.OData.Capabilities.V1.DeleteRestrictions/Deletable/$Path");const s=!o&&n.getProperty("@Org.OData.Capabilities.V1.DeleteRestrictions/Deletable")!==false;const l={context:e,isDraftRoot:!!n.getProperty("@com.sap.vocabularies.Common.v1.DraftRoot"),isDraftNode:!!n.getProperty("@com.sap.vocabularies.Common.v1.DraftNode"),isActive:true,hasActive:false,hasDraft:false,locked:false,deletable:o?e.getProperty(o):s,siblingPromise:Promise.resolve(undefined),siblingInfo:undefined,siblingDeletable:false};if(l.isDraftRoot){var i;l.locked=!!((i=e.getObject("DraftAdministrativeData"))!==null&&i!==void 0&&i.InProcessByUser);l.hasDraft=e.getProperty("HasDraftEntity")}if(l.isDraftRoot){l.isActive=e.getProperty("IsActiveEntity");l.hasActive=e.getProperty("HasActiveEntity");if(!l.isActive&&l.hasActive){l.siblingPromise=t.computeSiblingInformation(e,e).then(async e=>{l.siblingInfo=e;if(o){var t;l.siblingDeletable=await(e===null||e===void 0?void 0:(t=e.targetContext)===null||t===void 0?void 0:t.requestProperty(o))}else{l.siblingDeletable=s}})}}return l});await Promise.all(o.map(e=>e.siblingPromise));const s=[{key:"draftsWithDeletableActive",value:o.filter(e=>e.isDraftRoot&&!e.isActive&&e.hasActive&&e.siblingDeletable)},{key:"draftsWithNonDeletableActive",value:o.filter(e=>e.isDraftRoot&&!e.isActive&&e.hasActive&&!e.siblingDeletable)},{key:"lockedContexts",value:o.filter(e=>e.isDraftRoot&&e.isActive&&e.hasDraft&&e.locked)},{key:"unSavedContexts",value:o.filter(e=>e.isDraftRoot&&e.isActive&&e.hasDraft&&!e.locked)},{key:"deletableContexts",value:o.filter(e=>!e.isDraftRoot&&!e.isDraftNode&&e.deletable||e.isDraftRoot&&e.isActive&&!e.hasDraft&&e.deletable||e.isDraftRoot&&!e.isActive&&!e.hasActive||e.isDraftNode&&e.deletable)}];for(const{key:t,value:n}of s){e.setProperty(t,n.map(e=>t==="draftsWithDeletableActive"?{draft:e.context,siblingInfo:e.siblingInfo}:e.context))}}const h={getNonDeletableText:A,deleteConfirmHandler:x,updateOptionsForDeletableTexts:L,updateContentForDeleteDialog:O,updateDraftOptionsForDeletableTexts:g,getConfirmedDeletableContext:d,getLockedObjectsText:c,getUnsavedContextsText:N,getNonDeletableActivesOfDraftsText:f,afterDeleteProcess:_,updateDeleteInfoForSelectedContexts:I};return h},false);
|
|
5
|
+
sap.ui.define(["sap/base/Log","sap/fe/core/controllerextensions/editFlow/draft","sap/m/CheckBox","sap/m/MessageToast","sap/m/Text"],function(e,t,n,o,s){"use strict";var l;(function(e){e["deletableContexts"]="deletableContexts";e["draftsWithDeletableActive"]="draftsWithDeletableActive";e["unSavedContexts"]="unSavedContexts";e["draftsWithNonDeletableActive"]="draftsWithNonDeletableActive";e["draftsToDeleteBeforeActive"]="draftsToDeleteBeforeActive"})(l||(l={}));var i;(function(e){e["CHECKBOX"]="checkBox";e["TEXT"]="text"})(i||(i={}));function E(e,t,n,o){const s=[...n];o.forEach(e=>{const t=s.indexOf(e);if(t!==-1){s.splice(t,1)}});e.setProperty(t,[]);return s}function a(e,t){let n=e.getProperty("selectedContexts")||[];if(t.type===l.deletableContexts){n=E(e,l.deletableContexts,n,e.getProperty(l.deletableContexts)||[]);const t=e.getProperty(l.draftsWithDeletableActive)||[];const o=t.map(e=>e.draft);n=E(e,l.draftsWithDeletableActive,n,o)}else{const o=e.getProperty(t.type)||[];n=E(e,t.type,n,o)}e.setProperty("selectedContexts",n);e.setProperty("numberOfSelectedContexts",n.length)}function r(e,t,n,s,l){const{internalModelContext:i,entitySetName:E}=e;if(i){if(i.getProperty("deleteEnabled")!=undefined){t.forEach(e=>{if(e.selected){a(i,e)}})}i.setProperty("deleteEnabled",t.some(e=>!e.selected))}if(n.length===1){o.show(s.getText("C_TRANSACTION_HELPER_DELETE_TOAST_SINGULAR",undefined,E))}else{o.show(s.getText("C_TRANSACTION_HELPER_DELETE_TOAST_PLURAL",undefined,E))}R.setFocusAfterDelete(e.parentControl,n.length,l)}async function _(e,t,n){var o;const s=(o=e.getRowBinding())===null||o===void 0?void 0:o.getCount();const l=(s??0)+t;let i;if(n!==-1&&s!==undefined&&s>0){if(n===l-1){i=s-1}else{i=n-t+1}await e.focusRow(i,false)}else{e.focus()}}function T(e){const t=e.getObject()["DraftAdministrativeData"];return t&&t["InProcessByUser"]||""}function c(e,t,n){let o="";if(t===1&&n.length===1){const t=T(n[0]);o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_SINGLE_OBJECT_LOCKED",[t])}else if(n.length==1){const s=T(n[0]);o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_ONE_OBJECT_LOCKED",[t,s])}else if(n.length>1){o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_FEW_OBJECTS_LOCKED",[n.length,t])}return o}function f(e,t,n){let o="";if(n===t){if(t===1){o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_ONLY_DRAFT_OF_NON_DELETABLE_ACTIVE")}else{o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_ONLY_DRAFTS_OF_NON_DELETABLE_ACTIVE")}}else if(t===1){o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_DRAFT_OF_NON_DELETABLE_ACTIVE")}else{o=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_DRAFTS_OF_NON_DELETABLE_ACTIVE")}return o}function C(e){const t=e.getObject()["DraftAdministrativeData"];let n="";if(t){n=t["LastChangedByUserDescription"]||t["LastChangedByUser"]||""}return n}function N(e,t,n,o){let s="",l="",i=false;if(t===1&&n.length===1){const t=C(n[0]);s=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_UNSAVED_CHANGES",[t]);i=true}else if(t===n.length){s=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_UNSAVED_CHANGES_MULTIPLE_OBJECTS");i=true}else if(o===n.length){if(n.length===1){const t=C(n[0]);s=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_UNSAVED_AND_FEW_OBJECTS_LOCKED_SINGULAR",[t])}else{s=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_UNSAVED_AND_FEW_OBJECTS_LOCKED_PLURAL")}i=true}else if(o>n.length){if(n.length===1){const t=C(n[0]);l=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_FEW_OBJECTS_UNSAVED_SINGULAR",[t])}else{l=e.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_FEW_OBJECTS_UNSAVED_PLURAL")}}return{infoTxt:s,optionTxt:l,optionWithoutTxt:i}}function A(e,t,n){const{numberOfSelectedContexts:o,entitySetName:l,lockedContexts:i=[],draftsWithNonDeletableActive:E=[]}=e;const a=o-(i.length+t-E.length);let r="";if(a>0&&(t===0||E.length===t)){if(i.length>0){if(a===1){r=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_ALL_REMAINING_NON_DELETABLE_SINGULAR")}else{r=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_ALL_REMAINING_NON_DELETABLE_PLURAL")}}else if(a===1){r=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_SINGLE_AND_ONE_OBJECT_NON_DELETABLE",undefined,l)}else{r=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_MULTIPLE_AND_ALL_OBJECT_NON_DELETABLE",undefined,l)}}else if(a===1){r=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_ONE_OBJECT_NON_DELETABLE",[o],l)}else if(a>1){r=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_FEW_OBJECTS_NON_DELETABLE",[a,o],l)}return r?new s({text:r}):undefined}function d(e,t){return t.reduce((e,t)=>t.selected&&t.type!==l.draftsToDeleteBeforeActive?e.concat(t.contexts):e,e)}function D(e){const t=[];return e.reduce((e,t)=>t.selected&&t.type===l.draftsToDeleteBeforeActive?e.concat(t.contexts):e,t)}function g(e,t,n,o,E,a){const{numberOfSelectedContexts:r,draftsWithDeletableActive:_,unSavedContexts:T,lockedContexts:c,draftsWithNonDeletableActive:f}=e;let C="";if(_.length>0){const e=[];_.forEach(n=>{e.push(n.draft);t.push(n.siblingInfo.targetContext)});if(e.length>0){a.push({type:l.draftsToDeleteBeforeActive,contexts:e,selected:true})}}if(c.length>0){C=R.getLockedObjectsText(o,r,c)||"";E.push(new s({text:C}))}const N=r!=n-f.length+c.length;const A=N&&R.getNonDeletableText(e,n,o);if(A){E.push(A)}if(T.length>0){const e=R.getUnsavedContextsText(o,r,T,n)||{};if(e.infoTxt){E.push(new s({text:e.infoTxt}))}if(e.optionTxt||e.optionWithoutTxt){a.push({type:l.unSavedContexts,contexts:T,text:e.optionTxt,selected:true,control:i.CHECKBOX})}}if(f.length>0){const e=R.getNonDeletableActivesOfDraftsText(o,f.length,n)||"";if(e){a.push({type:l.draftsWithNonDeletableActive,contexts:f,text:e,selected:true,control:n>0?i.CHECKBOX:i.TEXT})}}}function O(e,t){if(e.length===1){const n=e[0];if(n.text){t.push(new s({text:n.text}))}}else if(e.length>1){e.forEach(e=>{if(e.control==="text"&&e.text){t.push(new s({text:e.text}))}});e.forEach(e=>{if(e.control==="checkBox"&&e.text){t.push(new n({text:e.text,selected:true,select:function(t){const n=t.getSource();const o=n.getSelected();e.selected=o}}))}})}}function L(e,t){const{draftsWithDeletableActive:n}=e;const o=n.find(e=>e.siblingInfo.targetContext===t);return o!==null&&o!==void 0&&o.draft?o.draft:t}function u(e,t,n){const{numberOfSelectedContexts:o,entitySetName:s,parentControl:E,description:a,lockedContexts:r,draftsWithNonDeletableActive:_,unSavedContexts:T}=e;const c=t.length+_.length+T.length;const f=o-(r.length+c-_.length);const C=[];if(o===1&&o===t.length){const o=E;const r=o&&o.getParent().getIdentifierColumn();let _;let T=[];if(r){const o=a&&a.path;let l=t[0];let i=l.getObject();if(!i||Object.keys(i).length===0){l=L(e,l);i=l.getObject()}const E=r?i[r]:undefined;const c=o&&i[o];if(E){if(c&&a&&r!==a.path){T=[E+" ",c]}else{T=[E,""]}_=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO",T,s)}else{_=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTTITLE_SINGULAR",undefined,s)}}else{_=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTTITLE_SINGULAR",undefined,s)}C.push({type:l.deletableContexts,contexts:t,text:_,selected:true,control:i.TEXT})}else if(T.length!==c&&o>0&&(t.length>0||T.length>0&&_.length>0)){if(o>t.length&&f+r.length>0){let e="";if(c===1){e=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTTITLE_SINGULAR_NON_DELETABLE",undefined,s)}else{e=n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTTITLE_PLURAL_NON_DELETABLE",undefined,s)}C.unshift({type:l.deletableContexts,contexts:t,text:e,selected:true,control:i.TEXT})}else{const e=c===1?n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTTITLE_SINGULAR",undefined,s):n.getText("C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTTITLE_PLURAL",undefined,s);C.push({type:l.deletableContexts,contexts:t,text:e,selected:true,control:i.TEXT})}}return C}async function I(n,o,s,l,i,E){try{const a=R.getConfirmedDeletableContext([],n);const r=a[a.length-1].getIndex()??-1;const _=D(n);const{beforeDeleteCallBack:T,parentControl:c}=o;if(T){await T({contexts:a})}if(a&&a.length){try{const s=a.length===1?true:false;const T=[];await Promise.allSettled(_.map(async function(n){try{return await t.deleteDraft(n,i,s)}catch(t){e.error(`FE : core : DeleteHelper : Error while discarding draft with path : ${n.getPath()}`);T.push(t)}}));await Promise.all(a.map(function(e){if(E&&!e.getProperty("IsActiveEntity")){return t.deleteDraft(e,i,s)}return e.delete()}));await R.afterDeleteProcess(o,n,a,l,r);if(T.length>0){throw Error(`FE : core : DeleteHelper : Errors on draft delete : ${T}`)}}catch(e){await s.showMessageDialog({control:c});throw e}}}catch(e){await s.showMessages();throw e}}async function x(e,n){const o=n.map(e=>{const n=e.getModel().getMetaModel().getMetaContext(e.getCanonicalPath());const o=n.getProperty("@Org.OData.Capabilities.V1.DeleteRestrictions/Deletable/$Path");const s=!o&&n.getProperty("@Org.OData.Capabilities.V1.DeleteRestrictions/Deletable")!==false;const l={context:e,isDraftRoot:!!n.getProperty("@com.sap.vocabularies.Common.v1.DraftRoot"),isDraftNode:!!n.getProperty("@com.sap.vocabularies.Common.v1.DraftNode"),isActive:true,hasActive:false,hasDraft:false,locked:false,deletable:o?e.getProperty(o):s,siblingPromise:Promise.resolve(undefined),siblingInfo:undefined,siblingDeletable:false};if(l.isDraftRoot){var i;l.locked=!!((i=e.getObject("DraftAdministrativeData"))!==null&&i!==void 0&&i.InProcessByUser);l.hasDraft=e.getProperty("HasDraftEntity")}if(l.isDraftRoot){l.isActive=e.getProperty("IsActiveEntity");l.hasActive=e.getProperty("HasActiveEntity");if(!l.isActive&&l.hasActive){l.siblingPromise=t.computeSiblingInformation(e,e).then(async e=>{l.siblingInfo=e;if(o){var t;l.siblingDeletable=await(e===null||e===void 0?void 0:(t=e.targetContext)===null||t===void 0?void 0:t.requestProperty(o))}else{l.siblingDeletable=s}})}}return l});await Promise.all(o.map(e=>e.siblingPromise));const s=[{key:"draftsWithDeletableActive",value:o.filter(e=>e.isDraftRoot&&!e.isActive&&e.hasActive&&e.siblingDeletable)},{key:"draftsWithNonDeletableActive",value:o.filter(e=>e.isDraftRoot&&!e.isActive&&e.hasActive&&!e.siblingDeletable)},{key:"lockedContexts",value:o.filter(e=>e.isDraftRoot&&e.isActive&&e.hasDraft&&e.locked)},{key:"unSavedContexts",value:o.filter(e=>e.isDraftRoot&&e.isActive&&e.hasDraft&&!e.locked)},{key:"deletableContexts",value:o.filter(e=>!e.isDraftRoot&&!e.isDraftNode&&e.deletable||e.isDraftRoot&&e.isActive&&!e.hasDraft&&e.deletable||e.isDraftRoot&&!e.isActive&&!e.hasActive||e.isDraftNode&&e.deletable)}];for(const{key:t,value:n}of s){e.setProperty(t,n.map(e=>t==="draftsWithDeletableActive"?{draft:e.context,siblingInfo:e.siblingInfo}:e.context))}}const R={getNonDeletableText:A,deleteConfirmHandler:I,getOptionsForDeletableTexts:u,updateContentForDeleteDialog:O,updateDraftOptionsForDeletableTexts:g,getConfirmedDeletableContext:d,getLockedObjectsText:c,getUnsavedContextsText:N,getNonDeletableActivesOfDraftsText:f,afterDeleteProcess:r,updateDeleteInfoForSelectedContexts:x,DeleteOptionTypes:l,DeleteDialogContentControl:i,setFocusAfterDelete:_};return R},false);
|
|
6
6
|
//# sourceMappingURL=DeleteHelper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeleteHelper.js","names":["sap","ui","define","Log","draft","CheckBox","MessageToast","Text","_exports","DeleteOptionTypes","DeleteDialogContentControl","getUpdatedSelections","internalModelContext","type","selectedContexts","contextsToRemove","forEach","context","idx","indexOf","splice","setProperty","clearSelectedContextsForOption","option","getProperty","deletableContexts","createModeContexts","draftSiblingPairs","draftsWithDeletableActive","drafts","map","contextPair","length","afterDeleteProcess","parameters","options","contexts","resourceModel","entitySetName","undefined","selected","some","show","getText","getLockedContextUser","lockedContext","draftAdminData","getObject","getLockedObjectsText","numberOfSelectedContexts","lockedContexts","retTxt","lockedUser","getNonDeletableActivesOfDraftsText","numberOfDrafts","totalDeletable","getUnSavedContextUser","unSavedContext","sLastChangedByUser","getUnsavedContextsText","unSavedContexts","infoTxt","optionTxt","optionWithoutTxt","lastChangedByUser","getNonDeletableText","mParameters","totalNumDeletableContexts","draftsWithNonDeletableActive","nonDeletableContexts","text","getConfirmedDeletableContext","reduce","result","draftsToDeleteBeforeActive","concat","getDraftsToDeleteBeforeActive","updateDraftOptionsForDeletableTexts","vContexts","items","lockedContextsTxt","deletableDraftInfo","push","siblingInfo","targetContext","deleteHelper","nonDeletableExists","nonDeletableTextCtrl","unsavedChangesTxts","control","CHECKBOX","nonDeletableActivesOfDraftsText","TEXT","updateContentForDeleteDialog","select","oEvent","checkBox","getSource","getSelected","updateOptionsForDeletableTexts","directDeletableContexts","parentControl","description","oLineContextData","oTable","sKey","getParent","getIdentifierColumn","txt","aParams","sKeyValue","sDescription","path","deletableOptionTxt","unshift","allDeletableTxt","async","deleteConfirmHandler","messageHandler","appComponent","draftEnabled","beforeDeleteCallBack","enableStrictHandling","draftErrors","Promise","allSettled","deleteDraft","e","error","getPath","all","delete","Error","showMessageDialog","oError","showMessages","updateDeleteInfoForSelectedContexts","contextInfos","metaContext","getModel","getMetaModel","getMetaContext","getCanonicalPath","deletablePath","staticDeletable","info","isDraftRoot","isDraftNode","isActive","hasActive","hasDraft","locked","deletable","siblingPromise","resolve","siblingDeletable","_context$getObject","InProcessByUser","computeSiblingInformation","then","siblingInformation","_siblingInformation$t","requestProperty","buckets","key","value","filter"],"sources":["DeleteHelper-dbg.js"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DeleteHelper.js","names":["sap","ui","define","Log","draft","CheckBox","MessageToast","Text","DeleteOptionTypes","DeleteDialogContentControl","getUpdatedSelections","internalModelContext","type","selectedContexts","contextsToRemove","retSelectedContexts","forEach","context","idx","indexOf","splice","setProperty","clearSelectedContextsForOption","option","getProperty","deletableContexts","draftSiblingPairs","draftsWithDeletableActive","drafts","map","contextPair","length","afterDeleteProcess","parameters","options","contexts","resourceModel","lastDeletedRowIndex","entitySetName","undefined","selected","some","show","getText","deleteHelper","setFocusAfterDelete","parentControl","async","table","deletedRowsCount","_table$getRowBinding","tableRowsCount","getRowBinding","getCount","originalTableRowsCount","nextFocusRowIndex","focusRow","focus","getLockedContextUser","lockedContext","draftAdminData","getObject","getLockedObjectsText","numberOfSelectedContexts","lockedContexts","retTxt","lockedUser","getNonDeletableActivesOfDraftsText","numberOfDrafts","totalDeletable","getUnSavedContextUser","unSavedContext","sLastChangedByUser","getUnsavedContextsText","unSavedContexts","infoTxt","optionTxt","optionWithoutTxt","lastChangedByUser","getNonDeletableText","mParameters","totalNumDeletableContexts","draftsWithNonDeletableActive","nonDeletableContexts","text","getConfirmedDeletableContext","reduce","result","draftsToDeleteBeforeActive","concat","getDraftsToDeleteBeforeActive","updateDraftOptionsForDeletableTexts","vContexts","items","lockedContextsTxt","deletableDraftInfo","push","siblingInfo","targetContext","nonDeletableExists","nonDeletableTextCtrl","unsavedChangesTxts","control","CHECKBOX","nonDeletableActivesOfDraftsText","TEXT","updateContentForDeleteDialog","select","oEvent","checkBox","getSource","getSelected","_getOriginalSelectedRecord","contextToDelete","ret","find","draftSiblingPair","getOptionsForDeletableTexts","directDeletableContexts","description","oTable","sKey","getParent","getIdentifierColumn","txt","aParams","descriptionPath","path","singleContext","oLineContextData","Object","keys","sKeyValue","sDescription","deletableOptionTxt","unshift","allDeletableTxt","deleteConfirmHandler","messageHandler","appComponent","draftEnabled","getIndex","beforeDeleteCallBack","enableStrictHandling","draftErrors","Promise","allSettled","deleteDraft","e","error","getPath","all","delete","Error","showMessageDialog","oError","showMessages","updateDeleteInfoForSelectedContexts","contextInfos","metaContext","getModel","getMetaModel","getMetaContext","getCanonicalPath","deletablePath","staticDeletable","info","isDraftRoot","isDraftNode","isActive","hasActive","hasDraft","locked","deletable","siblingPromise","resolve","siblingDeletable","_context$getObject","InProcessByUser","computeSiblingInformation","then","siblingInformation","_siblingInformation$t","requestProperty","buckets","key","value","filter"],"sources":["DeleteHelper-dbg.js"],"mappings":"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"}
|
|
@@ -11,19 +11,19 @@ import TableAPI from "sap/fe/macros/table/TableAPI";
|
|
|
11
11
|
import Event from "sap/ui/base/Event";
|
|
12
12
|
import Control from "sap/ui/core/Control";
|
|
13
13
|
import Table from "sap/ui/mdc/Table";
|
|
14
|
+
import ODataListBinding from "sap/ui/model/odata/v2/ODataListBinding";
|
|
14
15
|
import Context from "sap/ui/model/odata/v4/Context";
|
|
15
16
|
import { InternalModelContext } from "./ModelHelper";
|
|
16
17
|
|
|
17
|
-
|
|
18
|
+
enum DeleteOptionTypes {
|
|
18
19
|
deletableContexts = "deletableContexts",
|
|
19
20
|
draftsWithDeletableActive = "draftsWithDeletableActive",
|
|
20
|
-
createModeContexts = "createModeContexts",
|
|
21
21
|
unSavedContexts = "unSavedContexts",
|
|
22
22
|
draftsWithNonDeletableActive = "draftsWithNonDeletableActive",
|
|
23
23
|
draftsToDeleteBeforeActive = "draftsToDeleteBeforeActive"
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
enum DeleteDialogContentControl {
|
|
27
27
|
CHECKBOX = "checkBox",
|
|
28
28
|
TEXT = "text"
|
|
29
29
|
}
|
|
@@ -44,7 +44,6 @@ export type DeleteOption = {
|
|
|
44
44
|
export type ModelObjectProperties = {
|
|
45
45
|
deletableContexts: Context[];
|
|
46
46
|
unSavedContexts: Context[];
|
|
47
|
-
createModeContexts: Context[];
|
|
48
47
|
draftsWithNonDeletableActive: Context[];
|
|
49
48
|
lockedContexts: Context[];
|
|
50
49
|
draftsWithDeletableActive: DraftSiblingPair[];
|
|
@@ -70,7 +69,6 @@ export type DeleteParameters = {
|
|
|
70
69
|
beforeDeleteCallBack: Function;
|
|
71
70
|
deletableContexts: Context[];
|
|
72
71
|
unSavedContexts: Context[];
|
|
73
|
-
createModeContexts: Context[];
|
|
74
72
|
draftsWithNonDeletableActive: Context[];
|
|
75
73
|
lockedContexts: Context[];
|
|
76
74
|
draftsWithDeletableActive: DraftSiblingPair[];
|
|
@@ -88,15 +86,16 @@ function getUpdatedSelections(
|
|
|
88
86
|
selectedContexts: Context[],
|
|
89
87
|
contextsToRemove: Context[]
|
|
90
88
|
): Context[] {
|
|
89
|
+
const retSelectedContexts: Context[] = [...selectedContexts];
|
|
91
90
|
contextsToRemove.forEach((context: Context) => {
|
|
92
|
-
const idx =
|
|
91
|
+
const idx = retSelectedContexts.indexOf(context);
|
|
93
92
|
if (idx !== -1) {
|
|
94
|
-
|
|
93
|
+
retSelectedContexts.splice(idx, 1);
|
|
95
94
|
}
|
|
96
95
|
});
|
|
97
96
|
internalModelContext.setProperty(type, []);
|
|
98
97
|
|
|
99
|
-
return
|
|
98
|
+
return retSelectedContexts;
|
|
100
99
|
}
|
|
101
100
|
|
|
102
101
|
function clearSelectedContextsForOption(internalModelContext: InternalModelContext, option: DeleteOption) {
|
|
@@ -109,12 +108,6 @@ function clearSelectedContextsForOption(internalModelContext: InternalModelConte
|
|
|
109
108
|
selectedContexts,
|
|
110
109
|
internalModelContext.getProperty(DeleteOptionTypes.deletableContexts) || []
|
|
111
110
|
);
|
|
112
|
-
selectedContexts = getUpdatedSelections(
|
|
113
|
-
internalModelContext,
|
|
114
|
-
DeleteOptionTypes.createModeContexts,
|
|
115
|
-
selectedContexts,
|
|
116
|
-
internalModelContext.getProperty(DeleteOptionTypes.createModeContexts) || []
|
|
117
|
-
);
|
|
118
111
|
|
|
119
112
|
const draftSiblingPairs = internalModelContext.getProperty(DeleteOptionTypes.draftsWithDeletableActive) || [];
|
|
120
113
|
const drafts = draftSiblingPairs.map((contextPair: DraftSiblingPair) => {
|
|
@@ -134,7 +127,13 @@ function clearSelectedContextsForOption(internalModelContext: InternalModelConte
|
|
|
134
127
|
internalModelContext.setProperty("numberOfSelectedContexts", selectedContexts.length);
|
|
135
128
|
}
|
|
136
129
|
|
|
137
|
-
function afterDeleteProcess(
|
|
130
|
+
function afterDeleteProcess(
|
|
131
|
+
parameters: DeleteParameters,
|
|
132
|
+
options: DeleteOption[],
|
|
133
|
+
contexts: Context[],
|
|
134
|
+
resourceModel: ResourceModel,
|
|
135
|
+
lastDeletedRowIndex: number
|
|
136
|
+
) {
|
|
138
137
|
const { internalModelContext, entitySetName } = parameters;
|
|
139
138
|
if (internalModelContext) {
|
|
140
139
|
if (internalModelContext.getProperty("deleteEnabled") != undefined) {
|
|
@@ -157,6 +156,28 @@ function afterDeleteProcess(parameters: DeleteParameters, options: DeleteOption[
|
|
|
157
156
|
} else {
|
|
158
157
|
MessageToast.show(resourceModel.getText("C_TRANSACTION_HELPER_DELETE_TOAST_PLURAL", undefined, entitySetName));
|
|
159
158
|
}
|
|
159
|
+
|
|
160
|
+
deleteHelper.setFocusAfterDelete(parameters.parentControl as Table, contexts.length, lastDeletedRowIndex);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
async function setFocusAfterDelete(table: Table, deletedRowsCount: number, lastDeletedRowIndex: number) {
|
|
164
|
+
const tableRowsCount = (table.getRowBinding() as ODataListBinding)?.getCount();
|
|
165
|
+
const originalTableRowsCount = (tableRowsCount ?? 0) + deletedRowsCount;
|
|
166
|
+
let nextFocusRowIndex;
|
|
167
|
+
|
|
168
|
+
if (lastDeletedRowIndex !== -1 && tableRowsCount !== undefined && tableRowsCount > 0) {
|
|
169
|
+
//If the last row is deleted, move the focus to previous row to it
|
|
170
|
+
if (lastDeletedRowIndex === originalTableRowsCount - 1) {
|
|
171
|
+
nextFocusRowIndex = tableRowsCount - 1;
|
|
172
|
+
//For the normal scenario, move the focus to the next row
|
|
173
|
+
} else {
|
|
174
|
+
nextFocusRowIndex = lastDeletedRowIndex - deletedRowsCount + 1;
|
|
175
|
+
}
|
|
176
|
+
await table.focusRow(nextFocusRowIndex, false);
|
|
177
|
+
} else {
|
|
178
|
+
// For zero rows or default case, move focus to table
|
|
179
|
+
table.focus();
|
|
180
|
+
}
|
|
160
181
|
}
|
|
161
182
|
|
|
162
183
|
function getLockedContextUser(lockedContext: Context): string {
|
|
@@ -264,7 +285,7 @@ function getNonDeletableText(
|
|
|
264
285
|
totalNumDeletableContexts: number,
|
|
265
286
|
resourceModel: ResourceModel
|
|
266
287
|
): Text | undefined {
|
|
267
|
-
const { numberOfSelectedContexts, lockedContexts = [], draftsWithNonDeletableActive = [] } = mParameters;
|
|
288
|
+
const { numberOfSelectedContexts, entitySetName, lockedContexts = [], draftsWithNonDeletableActive = [] } = mParameters;
|
|
268
289
|
const nonDeletableContexts =
|
|
269
290
|
numberOfSelectedContexts - (lockedContexts.length + totalNumDeletableContexts - draftsWithNonDeletableActive.length);
|
|
270
291
|
let retTxt = "";
|
|
@@ -284,22 +305,33 @@ function getNonDeletableText(
|
|
|
284
305
|
}
|
|
285
306
|
} else if (nonDeletableContexts === 1) {
|
|
286
307
|
// Only pure non-deletable contexts exist single
|
|
287
|
-
retTxt = resourceModel.getText(
|
|
308
|
+
retTxt = resourceModel.getText(
|
|
309
|
+
"C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_SINGLE_AND_ONE_OBJECT_NON_DELETABLE",
|
|
310
|
+
undefined,
|
|
311
|
+
entitySetName
|
|
312
|
+
);
|
|
288
313
|
} else {
|
|
289
314
|
// Only pure non-deletable contexts exist multiple
|
|
290
|
-
retTxt = resourceModel.getText(
|
|
315
|
+
retTxt = resourceModel.getText(
|
|
316
|
+
"C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_MULTIPLE_AND_ALL_OBJECT_NON_DELETABLE",
|
|
317
|
+
undefined,
|
|
318
|
+
entitySetName
|
|
319
|
+
);
|
|
291
320
|
}
|
|
292
321
|
} else if (nonDeletableContexts === 1) {
|
|
293
322
|
// deletable and non-deletable exists together, single
|
|
294
|
-
retTxt = resourceModel.getText(
|
|
295
|
-
|
|
296
|
-
|
|
323
|
+
retTxt = resourceModel.getText(
|
|
324
|
+
"C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_ONE_OBJECT_NON_DELETABLE",
|
|
325
|
+
[numberOfSelectedContexts],
|
|
326
|
+
entitySetName
|
|
327
|
+
);
|
|
297
328
|
} else if (nonDeletableContexts > 1) {
|
|
298
329
|
// deletable and non-deletable exists together, multiple
|
|
299
|
-
retTxt = resourceModel.getText(
|
|
300
|
-
|
|
301
|
-
numberOfSelectedContexts
|
|
302
|
-
|
|
330
|
+
retTxt = resourceModel.getText(
|
|
331
|
+
"C_TRANSACTION_HELPER_CONFIRM_DELETE_WITH_OBJECTINFO_AND_FEW_OBJECTS_NON_DELETABLE",
|
|
332
|
+
[nonDeletableContexts, numberOfSelectedContexts],
|
|
333
|
+
entitySetName
|
|
334
|
+
);
|
|
303
335
|
}
|
|
304
336
|
|
|
305
337
|
return retTxt ? new Text({ text: retTxt }) : undefined;
|
|
@@ -326,24 +358,17 @@ function updateDraftOptionsForDeletableTexts(
|
|
|
326
358
|
items: Control[],
|
|
327
359
|
options: DeleteOption[]
|
|
328
360
|
) {
|
|
329
|
-
const {
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
unSavedContexts,
|
|
333
|
-
createModeContexts,
|
|
334
|
-
lockedContexts,
|
|
335
|
-
draftsWithNonDeletableActive
|
|
336
|
-
} = mParameters;
|
|
361
|
+
const { numberOfSelectedContexts, draftsWithDeletableActive, unSavedContexts, lockedContexts, draftsWithNonDeletableActive } =
|
|
362
|
+
mParameters;
|
|
363
|
+
|
|
337
364
|
let lockedContextsTxt = "";
|
|
338
365
|
|
|
339
366
|
// drafts with active
|
|
340
367
|
if (draftsWithDeletableActive.length > 0) {
|
|
341
368
|
const draftsToDeleteBeforeActive: Context[] = [];
|
|
342
369
|
draftsWithDeletableActive.forEach((deletableDraftInfo: DraftSiblingPair) => {
|
|
343
|
-
if
|
|
344
|
-
|
|
345
|
-
draftsToDeleteBeforeActive.push(deletableDraftInfo.draft);
|
|
346
|
-
}
|
|
370
|
+
// In either cases, if an own draft is locked or not the draft needs to be discarded before deleting active record.
|
|
371
|
+
draftsToDeleteBeforeActive.push(deletableDraftInfo.draft);
|
|
347
372
|
vContexts.push(deletableDraftInfo.siblingInfo.targetContext);
|
|
348
373
|
});
|
|
349
374
|
if (draftsToDeleteBeforeActive.length > 0) {
|
|
@@ -355,12 +380,6 @@ function updateDraftOptionsForDeletableTexts(
|
|
|
355
380
|
}
|
|
356
381
|
}
|
|
357
382
|
|
|
358
|
-
// create mode drafts
|
|
359
|
-
if (createModeContexts.length > 0) {
|
|
360
|
-
// create mode drafts
|
|
361
|
-
createModeContexts.forEach((context) => vContexts.push(context));
|
|
362
|
-
}
|
|
363
|
-
|
|
364
383
|
// items locked msg
|
|
365
384
|
if (lockedContexts.length > 0) {
|
|
366
385
|
lockedContextsTxt = deleteHelper.getLockedObjectsText(resourceModel, numberOfSelectedContexts, lockedContexts) || "";
|
|
@@ -443,12 +462,32 @@ function updateContentForDeleteDialog(options: DeleteOption[], items: Control[])
|
|
|
443
462
|
}
|
|
444
463
|
}
|
|
445
464
|
|
|
446
|
-
|
|
465
|
+
/**
|
|
466
|
+
* Get the selected record in UI for text rather than the context to delete.
|
|
467
|
+
*
|
|
468
|
+
* @param mParameters Delete parameters and information of selected contexts.
|
|
469
|
+
* @param contextToDelete Context to check.
|
|
470
|
+
* @returns Context for delete.
|
|
471
|
+
*/
|
|
472
|
+
function _getOriginalSelectedRecord(mParameters: DeleteParameters, contextToDelete: Context): Context {
|
|
473
|
+
const { draftsWithDeletableActive } = mParameters;
|
|
474
|
+
const ret = draftsWithDeletableActive.find((draftSiblingPair) => draftSiblingPair.siblingInfo.targetContext === contextToDelete);
|
|
475
|
+
return ret?.draft ? ret.draft : contextToDelete;
|
|
476
|
+
}
|
|
477
|
+
|
|
478
|
+
/**
|
|
479
|
+
* Get options possible for delete of selected contexts.
|
|
480
|
+
*
|
|
481
|
+
* @param mParameters Delete parameters and information of selected contexts.
|
|
482
|
+
* @param directDeletableContexts Contexts that can be deletable directly.
|
|
483
|
+
* @param resourceModel Resource model.
|
|
484
|
+
* @returns Options that are possible for selected records.
|
|
485
|
+
*/
|
|
486
|
+
function getOptionsForDeletableTexts(
|
|
447
487
|
mParameters: DeleteParameters,
|
|
448
488
|
directDeletableContexts: Context[],
|
|
449
|
-
resourceModel: ResourceModel
|
|
450
|
-
|
|
451
|
-
) {
|
|
489
|
+
resourceModel: ResourceModel
|
|
490
|
+
): DeleteOption[] {
|
|
452
491
|
const {
|
|
453
492
|
numberOfSelectedContexts,
|
|
454
493
|
entitySetName,
|
|
@@ -460,17 +499,25 @@ function updateOptionsForDeletableTexts(
|
|
|
460
499
|
} = mParameters;
|
|
461
500
|
const totalDeletable = directDeletableContexts.length + draftsWithNonDeletableActive.length + unSavedContexts.length;
|
|
462
501
|
const nonDeletableContexts = numberOfSelectedContexts - (lockedContexts.length + totalDeletable - draftsWithNonDeletableActive.length);
|
|
502
|
+
const options: DeleteOption[] = [];
|
|
463
503
|
|
|
464
504
|
if (numberOfSelectedContexts === 1 && numberOfSelectedContexts === directDeletableContexts.length) {
|
|
465
505
|
// single deletable context
|
|
466
|
-
const oLineContextData = directDeletableContexts[0].getObject();
|
|
467
506
|
const oTable = parentControl as Table;
|
|
468
507
|
const sKey = oTable && (oTable.getParent() as TableAPI).getIdentifierColumn();
|
|
469
508
|
let txt;
|
|
470
509
|
let aParams = [];
|
|
471
510
|
if (sKey) {
|
|
511
|
+
const descriptionPath = description && description.path;
|
|
512
|
+
let singleContext = directDeletableContexts[0];
|
|
513
|
+
let oLineContextData = singleContext.getObject();
|
|
514
|
+
if (!oLineContextData || Object.keys(oLineContextData).length === 0) {
|
|
515
|
+
// In case original selected record is draft(in UI). The Active record needs to be deleted(directDeletableContexts has active record), but data is not requested. We get data from the draft.
|
|
516
|
+
singleContext = _getOriginalSelectedRecord(mParameters, singleContext);
|
|
517
|
+
oLineContextData = singleContext.getObject();
|
|
518
|
+
}
|
|
472
519
|
const sKeyValue = sKey ? oLineContextData[sKey] : undefined;
|
|
473
|
-
const sDescription =
|
|
520
|
+
const sDescription = descriptionPath && oLineContextData[descriptionPath];
|
|
474
521
|
if (sKeyValue) {
|
|
475
522
|
if (sDescription && description && sKey !== description.path) {
|
|
476
523
|
aParams = [sKeyValue + " ", sDescription];
|
|
@@ -534,6 +581,8 @@ function updateOptionsForDeletableTexts(
|
|
|
534
581
|
});
|
|
535
582
|
}
|
|
536
583
|
}
|
|
584
|
+
|
|
585
|
+
return options;
|
|
537
586
|
}
|
|
538
587
|
|
|
539
588
|
async function deleteConfirmHandler(
|
|
@@ -546,6 +595,7 @@ async function deleteConfirmHandler(
|
|
|
546
595
|
) {
|
|
547
596
|
try {
|
|
548
597
|
const contexts = deleteHelper.getConfirmedDeletableContext([], options);
|
|
598
|
+
const lastDeletedRowIndex = contexts[contexts.length - 1].getIndex() ?? -1;
|
|
549
599
|
const draftsToDeleteBeforeActive = getDraftsToDeleteBeforeActive(options);
|
|
550
600
|
|
|
551
601
|
const { beforeDeleteCallBack, parentControl } = mParameters;
|
|
@@ -558,11 +608,11 @@ async function deleteConfirmHandler(
|
|
|
558
608
|
const enableStrictHandling = contexts.length === 1 ? true : false;
|
|
559
609
|
const draftErrors: unknown[] = [];
|
|
560
610
|
await Promise.allSettled(
|
|
561
|
-
draftsToDeleteBeforeActive.map(function (context: Context) {
|
|
611
|
+
draftsToDeleteBeforeActive.map(async function (context: Context) {
|
|
562
612
|
try {
|
|
563
|
-
return draft.deleteDraft(context, appComponent, enableStrictHandling);
|
|
613
|
+
return await draft.deleteDraft(context, appComponent, enableStrictHandling);
|
|
564
614
|
} catch (e: unknown) {
|
|
565
|
-
Log.error(`FE : core : DeleteHelper : Error while
|
|
615
|
+
Log.error(`FE : core : DeleteHelper : Error while discarding draft with path : ${context.getPath()}`);
|
|
566
616
|
draftErrors.push(e);
|
|
567
617
|
}
|
|
568
618
|
})
|
|
@@ -577,7 +627,7 @@ async function deleteConfirmHandler(
|
|
|
577
627
|
return context.delete();
|
|
578
628
|
})
|
|
579
629
|
);
|
|
580
|
-
deleteHelper.afterDeleteProcess(mParameters, options, contexts, resourceModel);
|
|
630
|
+
await deleteHelper.afterDeleteProcess(mParameters, options, contexts, resourceModel, lastDeletedRowIndex);
|
|
581
631
|
if (draftErrors.length > 0) {
|
|
582
632
|
throw Error(`FE : core : DeleteHelper : Errors on draft delete : ${draftErrors}`);
|
|
583
633
|
}
|
|
@@ -597,7 +647,7 @@ async function deleteConfirmHandler(
|
|
|
597
647
|
// Table Runtime Helpers:
|
|
598
648
|
|
|
599
649
|
/* refreshes data in internal model relevant for enablement of delete button according to selected contexts
|
|
600
|
-
relevant data are: deletableContexts, draftsWithDeletableActive, draftsWithNonDeletableActive,
|
|
650
|
+
relevant data are: deletableContexts, draftsWithDeletableActive, draftsWithNonDeletableActive, unSavedContexts, deleteEnabled
|
|
601
651
|
not relevant: lockedContexts
|
|
602
652
|
*/
|
|
603
653
|
async function updateDeleteInfoForSelectedContexts(internalModelContext: InternalModelContext, selectedContexts: Context[]) {
|
|
@@ -719,7 +769,7 @@ async function updateDeleteInfoForSelectedContexts(internalModelContext: Interna
|
|
|
719
769
|
const deleteHelper = {
|
|
720
770
|
getNonDeletableText,
|
|
721
771
|
deleteConfirmHandler,
|
|
722
|
-
|
|
772
|
+
getOptionsForDeletableTexts,
|
|
723
773
|
updateContentForDeleteDialog,
|
|
724
774
|
updateDraftOptionsForDeletableTexts,
|
|
725
775
|
getConfirmedDeletableContext,
|
|
@@ -727,7 +777,10 @@ const deleteHelper = {
|
|
|
727
777
|
getUnsavedContextsText,
|
|
728
778
|
getNonDeletableActivesOfDraftsText,
|
|
729
779
|
afterDeleteProcess,
|
|
730
|
-
updateDeleteInfoForSelectedContexts
|
|
780
|
+
updateDeleteInfoForSelectedContexts,
|
|
781
|
+
DeleteOptionTypes,
|
|
782
|
+
DeleteDialogContentControl,
|
|
783
|
+
setFocusAfterDelete
|
|
731
784
|
};
|
|
732
785
|
|
|
733
786
|
export default deleteHelper;
|
|
@@ -177,4 +177,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/helpers/KeepAliveRefreshTypes", "./M
|
|
|
177
177
|
};
|
|
178
178
|
return KeepAliveHelper;
|
|
179
179
|
}, false);
|
|
180
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZm5TaW1wbGlmeUVudGl0eVNldFBhdGgiLCJtZXRhTW9kZWwiLCJlbnRpdHlTZXRQYXRoVG9Vc2UiLCJlbnRpdHlTZXRQYXRoIiwiTW9kZWxIZWxwZXIiLCJnZXRFbnRpdHlTZXRQYXRoIiwiZW50aXR5U2V0IiwiaW5kZXhPZiIsImdldE9iamVjdCIsIl9mbklzQXBwbGljYWJsZSIsInByaW1hcnlQYXRoIiwia2V5Iiwic3RyYXRlZ3kiLCJSZWZyZXNoU3RyYXRlZ3lUeXBlIiwiSW5jbHVkaW5nRGVwZW5kZW50cyIsInN0YXJ0c1dpdGgiLCJfaXNQYXRoQXBwbGljYWJsZVRvQ29udGV4dFBhdGgiLCJjb250ZXh0UGF0aCIsInBhdGgiLCJjb250ZXh0UGF0aFRvQ2hlY2siLCJwYXRoVG9DaGVjayIsImdldENvbnRyb2xzRm9yUmVmcmVzaCIsInZpZXciLCJjb250cm9scyIsImNvbnRyb2xzRm9yUmVmcmVzaCIsImdldE1vZGVsIiwiZ2V0TWV0YU1vZGVsIiwiaW50ZXJuYWxNb2RlbCIsInJlZnJlc2hTdHJhdGVneSIsImdldFByb3BlcnR5IiwiUEFUSF9UT19TVE9SRSIsImZvckVhY2giLCJjb250cm9sIiwiZGF0YSIsInB1c2giLCJnZXRDb250cm9sUmVmcmVzaFN0cmF0ZWd5Rm9yQ29udGV4dFBhdGgiLCJzdHJhdGVneVRvQ2hlY2siLCJnZXRWaWV3UmVmcmVzaEluZm8iLCJ2aWV3RGF0YSIsImdldFZpZXdEYXRhIiwiS2VlcEFsaXZlSGVscGVyIiwiZ2V0UmVmcmVzaFN0cmF0ZWd5Rm9ySW50ZW50IiwicmVmcmVzaFN0cmF0ZWdpZXMiLCJzZW1hbnRpY09iamVjdCIsImFjdGlvbiIsInNvQWN0aW9uIiwiaW50ZW50cyIsInNvQWN0aW9uSW50ZW50TWF0Y2giLCJzb0ludGVudE1hdGNoIiwiZGVmYXVsdEJlaGF2aW9yIiwiX2ZlRGVmYXVsdCIsInN0b3JlQ29udHJvbFJlZnJlc2hTdHJhdGVneUZvckhhc2giLCJoYXNoIiwic2V0UHJvcGVydHkiLCJyZXN0b3JlVmlldyIsImludGVybmFsTW9kZWxDb250ZXh0IiwiZ2V0QmluZGluZ0NvbnRleHQiLCJjb250cm9sbGVyIiwiZ2V0Q29udHJvbGxlciIsInZpZXdTdGF0ZSIsInJlZnJlc2hCaW5kaW5ncyIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVmcmVzaFZpZXdCaW5kaW5ncyIsInRoZW4iLCJMb2ciLCJpbmZvIiwiZ2V0SWQiLCJjYXRjaCIsImVyciIsIndhcm5pbmciLCJvblJlc3RvcmUiLCJlcnJvciJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiS2VlcEFsaXZlSGVscGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IHR5cGUgeyBCYXNlTWFuaWZlc3RTZXR0aW5ncyB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01hbmlmZXN0U2V0dGluZ3NcIjtcbmltcG9ydCB0eXBlIHsgUmVmcmVzaFN0cmF0ZWdpZXMsIFNPQWN0aW9uLCBTT1JlZnJlc2hTdHJhdGVneSB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0tlZXBBbGl2ZVJlZnJlc2hUeXBlc1wiO1xuaW1wb3J0IHsgUEFUSF9UT19TVE9SRSwgUmVmcmVzaFN0cmF0ZWd5VHlwZSB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0tlZXBBbGl2ZVJlZnJlc2hUeXBlc1wiO1xuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IHR5cGUgVmlldyBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL1ZpZXdcIjtcbmltcG9ydCB0eXBlIEpTT05Nb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL2pzb24vSlNPTk1vZGVsXCI7XG5pbXBvcnQgdHlwZSBPRGF0YU1ldGFNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L09EYXRhTWV0YU1vZGVsXCI7XG5pbXBvcnQgdHlwZSB7IEludGVybmFsTW9kZWxDb250ZXh0IH0gZnJvbSBcIi4vTW9kZWxIZWxwZXJcIjtcbmltcG9ydCBNb2RlbEhlbHBlciBmcm9tIFwiLi9Nb2RlbEhlbHBlclwiO1xuXG4vLyBQcml2YXRlIGZ1bmN0aW9ucyAtIHN0YXJ0XG5jb25zdCBfZm5TaW1wbGlmeUVudGl0eVNldFBhdGggPSBmdW5jdGlvbiAobWV0YU1vZGVsOiBPRGF0YU1ldGFNb2RlbCwgZW50aXR5U2V0UGF0aFRvVXNlOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRjb25zdCBlbnRpdHlTZXRQYXRoID0gTW9kZWxIZWxwZXIuZ2V0RW50aXR5U2V0UGF0aChlbnRpdHlTZXRQYXRoVG9Vc2UpO1xuXHRjb25zdCBlbnRpdHlTZXQgPSBlbnRpdHlTZXRQYXRoLmluZGV4T2YoXCIkTmF2aWdhdGlvblByb3BlcnR5QmluZGluZ1wiKSA+IC0xICYmIG1ldGFNb2RlbC5nZXRPYmplY3QoZW50aXR5U2V0UGF0aCk7XG5cdHJldHVybiBlbnRpdHlTZXQgPyBgLyR7ZW50aXR5U2V0fWAgOiBlbnRpdHlTZXRQYXRoVG9Vc2U7XG59O1xuY29uc3QgX2ZuSXNBcHBsaWNhYmxlID0gZnVuY3Rpb24gKHByaW1hcnlQYXRoOiBzdHJpbmcsIGtleTogc3RyaW5nLCBzdHJhdGVneTogUmVmcmVzaFN0cmF0ZWd5VHlwZSk6IGJvb2xlYW4ge1xuXHRyZXR1cm4gcHJpbWFyeVBhdGggPT09IGtleSB8fCAoc3RyYXRlZ3kgPT09IFJlZnJlc2hTdHJhdGVneVR5cGUuSW5jbHVkaW5nRGVwZW5kZW50cyAmJiBwcmltYXJ5UGF0aC5zdGFydHNXaXRoKGtleSkpO1xufTtcbi8qKlxuICogQ2hlY2sgaWYgZ2l2ZW4gcGF0aCByZXNpZGVzIGluIHRoZSBjb250ZXh0IHBhdGggcHJvdmlkZWQuXG4gKlxuICogQHBhcmFtIG1ldGFNb2RlbCBNZXRhTW9kZWwgdG8gYmUgdXNlZFxuICogQHBhcmFtIGNvbnRleHRQYXRoIENvbnRleHQgcGF0aCB0byBiZSB1c2VkXG4gKiBAcGFyYW0gcGF0aCBQYXRoIHRvIGJlIHVzZWRcbiAqIEBwYXJhbSBzdHJhdGVneSBTdHJhdGVneSwgaXQgY291bGQgYmUgJ3NlbGYnIHwgJ2luY2x1ZGluZ0RlcGVuZGVudHMnXG4gKiBAcmV0dXJucyBSZXR1cm5zIHRydWUgaWYgdGhlIGNvbnRleHQgcGF0aCBpcyBhcHBsaWNhYmxlLlxuICovXG5jb25zdCBfaXNQYXRoQXBwbGljYWJsZVRvQ29udGV4dFBhdGggPSBmdW5jdGlvbiAoXG5cdG1ldGFNb2RlbDogT0RhdGFNZXRhTW9kZWwsXG5cdGNvbnRleHRQYXRoOiBzdHJpbmcsXG5cdHBhdGg6IHN0cmluZyxcblx0c3RyYXRlZ3k6IFJlZnJlc2hTdHJhdGVneVR5cGVcbik6IGJvb2xlYW4ge1xuXHRsZXQgY29udGV4dFBhdGhUb0NoZWNrID0gY29udGV4dFBhdGguc3RhcnRzV2l0aChcIi9cIikgPyBjb250ZXh0UGF0aCA6IGAvJHtjb250ZXh0UGF0aH1gLFxuXHRcdHBhdGhUb0NoZWNrID0gcGF0aC5zdGFydHNXaXRoKFwiL1wiKSA/IHBhdGggOiBgLyR7cGF0aH1gO1xuXHRpZiAoIV9mbklzQXBwbGljYWJsZShjb250ZXh0UGF0aFRvQ2hlY2ssIHBhdGhUb0NoZWNrLCBzdHJhdGVneSkpIHtcblx0XHRjb250ZXh0UGF0aFRvQ2hlY2sgPSBfZm5TaW1wbGlmeUVudGl0eVNldFBhdGgobWV0YU1vZGVsLCBjb250ZXh0UGF0aFRvQ2hlY2spO1xuXHRcdGlmICghX2ZuSXNBcHBsaWNhYmxlKGNvbnRleHRQYXRoVG9DaGVjaywgcGF0aFRvQ2hlY2ssIHN0cmF0ZWd5KSkge1xuXHRcdFx0cGF0aFRvQ2hlY2sgPSBfZm5TaW1wbGlmeUVudGl0eVNldFBhdGgobWV0YU1vZGVsLCBwYXRoVG9DaGVjayk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJldHVybiB0cnVlO1xuXHRcdH1cblx0fVxuXHRyZXR1cm4gX2ZuSXNBcHBsaWNhYmxlKGNvbnRleHRQYXRoVG9DaGVjaywgcGF0aFRvQ2hlY2ssIHN0cmF0ZWd5KTtcbn07XG4vLyBQcml2YXRlIGZ1bmN0aW9ucyAtIGVuZFxuLyoqXG4gKiBHZXQgY29udHJvbHMgdG8gcmVmcmVzaCBpbiBhIHZpZXcuXG4gKlxuICogQHBhcmFtIHZpZXcgVmlldyBvZiB0aGUgY29udHJvbHNcbiAqIEBwYXJhbSBjb250cm9scyBDb250ZXh0IHBhdGggdG8gYmUgdXNlZFxuICogQHJldHVybnMgUmV0dXJucyBjb250cm9scyB0aGF0IG5lZWQgdG8gYmUgcmVmcmVzaGVkLlxuICovXG5jb25zdCBnZXRDb250cm9sc0ZvclJlZnJlc2ggPSBmdW5jdGlvbiAodmlldzogVmlldywgY29udHJvbHM6IENvbnRyb2xbXSk6IENvbnRyb2xbXSB7XG5cdGNvbnN0IGNvbnRyb2xzRm9yUmVmcmVzaDogQ29udHJvbFtdID0gW107XG5cdGNvbnN0IG1ldGFNb2RlbCA9IHZpZXcuZ2V0TW9kZWwoKS5nZXRNZXRhTW9kZWwoKSBhcyBPRGF0YU1ldGFNb2RlbDtcblx0Y29uc3QgaW50ZXJuYWxNb2RlbCA9IHZpZXcuZ2V0TW9kZWwoXCJpbnRlcm5hbFwiKTtcblx0Y29uc3QgcmVmcmVzaFN0cmF0ZWd5ID0gaW50ZXJuYWxNb2RlbC5nZXRQcm9wZXJ0eShQQVRIX1RPX1NUT1JFKSB8fCB7fTtcblx0aWYgKGNvbnRyb2xzKSB7XG5cdFx0Y29udHJvbHMuZm9yRWFjaChmdW5jdGlvbiAoY29udHJvbCkge1xuXHRcdFx0Y29uc3QgY29udGV4dFBhdGggPSBjb250cm9sLmRhdGEoXCJ0YXJnZXRDb2xsZWN0aW9uUGF0aFwiKTtcblx0XHRcdGZvciAoY29uc3Qga2V5IGluIHJlZnJlc2hTdHJhdGVneSkge1xuXHRcdFx0XHRjb25zdCBzdHJhdGVneSA9IHJlZnJlc2hTdHJhdGVneVtrZXldO1xuXHRcdFx0XHRpZiAoY29udHJvbHNGb3JSZWZyZXNoLmluZGV4T2YoY29udHJvbCkgPT09IC0xICYmIF9pc1BhdGhBcHBsaWNhYmxlVG9Db250ZXh0UGF0aChtZXRhTW9kZWwsIGNvbnRleHRQYXRoLCBrZXksIHN0cmF0ZWd5KSkge1xuXHRcdFx0XHRcdGNvbnRyb2xzRm9yUmVmcmVzaC5wdXNoKGNvbnRyb2wpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblx0cmV0dXJuIGNvbnRyb2xzRm9yUmVmcmVzaDtcbn07XG4vKipcbiAqIEdldCByZWZyZXNoIHN0cmF0ZWd5IGZvciB0aGUgY29udHJvbCBmb3IgYSBjb250ZXh0IHBhdGguXG4gKlxuICogQHBhcmFtIGNvbnRyb2wgQ29udHJvbCBmcm9tIHdoaWNoIHJlZnJlc2ggaW5mbyBpcyBuZWVkZWRcbiAqIEBwYXJhbSBjb250ZXh0UGF0aCBDb250ZXh0UGF0aCBmb3IgcHJvcGVyaXRpZXNcbiAqIEByZXR1cm5zIFJldHVybnMgc3RyYXRlZ3kgZm9yIGNvbnRyb2wgcmVmcmVzaC5cbiAqL1xuY29uc3QgZ2V0Q29udHJvbFJlZnJlc2hTdHJhdGVneUZvckNvbnRleHRQYXRoID0gZnVuY3Rpb24gKGNvbnRyb2w6IENvbnRyb2wsIGNvbnRleHRQYXRoOiBzdHJpbmcpOiBSZWZyZXNoU3RyYXRlZ3lUeXBlIHwgdW5kZWZpbmVkIHtcblx0Y29uc3QgbWV0YU1vZGVsID0gY29udHJvbC5nZXRNb2RlbCgpLmdldE1ldGFNb2RlbCgpIGFzIE9EYXRhTWV0YU1vZGVsO1xuXHRjb25zdCBpbnRlcm5hbE1vZGVsID0gY29udHJvbC5nZXRNb2RlbChcImludGVybmFsXCIpO1xuXHRjb25zdCByZWZyZXNoU3RyYXRlZ3kgPSBpbnRlcm5hbE1vZGVsLmdldFByb3BlcnR5KFBBVEhfVE9fU1RPUkUpIHx8IHt9O1xuXHRsZXQgc3RyYXRlZ3k7XG5cdGlmIChjb250ZXh0UGF0aCkge1xuXHRcdGZvciAoY29uc3Qga2V5IGluIHJlZnJlc2hTdHJhdGVneSkge1xuXHRcdFx0Y29uc3Qgc3RyYXRlZ3lUb0NoZWNrID0gcmVmcmVzaFN0cmF0ZWd5W2tleV07XG5cdFx0XHRpZiAoX2lzUGF0aEFwcGxpY2FibGVUb0NvbnRleHRQYXRoKG1ldGFNb2RlbCwgY29udGV4dFBhdGgsIGtleSwgc3RyYXRlZ3lUb0NoZWNrKSkge1xuXHRcdFx0XHRzdHJhdGVneSA9IHN0cmF0ZWd5VG9DaGVjaztcblx0XHRcdFx0aWYgKHN0cmF0ZWd5ID09PSBcImluY2x1ZGluZ0RlcGVuZGVudHNcIikge1xuXHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdHJldHVybiBzdHJhdGVneTtcbn07XG4vKipcbiAqIEdldCByZWZyZXNoIGluZm8gZnJvbSB2aWV3LlxuICpcbiAqIEBwYXJhbSB2aWV3IFZpZXcgZnJvbSB3aGljaCByZWZyZXNoIGluZm8gaXMgbmVlZGVkXG4gKiBAcmV0dXJucyBSZXR1cm5zIHN0cmF0ZWd5IGZvciB2aWV3IHJlZnJlc2guXG4gKi9cbmNvbnN0IGdldFZpZXdSZWZyZXNoSW5mbyA9IGZ1bmN0aW9uICh2aWV3OiBWaWV3KTogUmVmcmVzaFN0cmF0ZWd5VHlwZSB8IHVuZGVmaW5lZCB7XG5cdGNvbnN0IHZpZXdEYXRhID0gdmlldy5nZXRWaWV3RGF0YSgpIGFzIEJhc2VNYW5pZmVzdFNldHRpbmdzLFxuXHRcdGNvbnRleHRQYXRoID0gdmlld0RhdGEgJiYgKHZpZXdEYXRhPy5jb250ZXh0UGF0aCB8fCBgLyR7dmlld0RhdGE/LmVudGl0eVNldH1gKTtcblx0cmV0dXJuIEtlZXBBbGl2ZUhlbHBlci5nZXRDb250cm9sUmVmcmVzaFN0cmF0ZWd5Rm9yQ29udGV4dFBhdGgodmlldywgY29udGV4dFBhdGgpO1xufTtcblxuLyoqXG4gKiBHZXQgcmVmcmVzaCBzdHJhdGVneSBmb3IgYW4gaW50ZW50LlxuICpcbiAqIEBwYXJhbSByZWZyZXNoU3RyYXRlZ2llcyBSZWZyZXNoU3RyYXRlZ2llcyB0byBjb25zaWRlclxuICogQHBhcmFtIHNlbWFudGljT2JqZWN0IE91dGJvdW5kIFNlbWFudGljIE9iamVjdFxuICogQHBhcmFtIGFjdGlvbiBPdXRib3VuZCBBY3Rpb25cbiAqIEByZXR1cm5zIFJldHVybnMgcmVmcmVzaCBzdHJhdGVnaWVzIHRvIHVzZSBmb3IgdGhlIGludGVudC5cbiAqL1xuY29uc3QgZ2V0UmVmcmVzaFN0cmF0ZWd5Rm9ySW50ZW50ID0gZnVuY3Rpb24gKFxuXHRyZWZyZXNoU3RyYXRlZ2llczogUmVmcmVzaFN0cmF0ZWdpZXMsXG5cdHNlbWFudGljT2JqZWN0Pzogc3RyaW5nLFxuXHRhY3Rpb24/OiBzdHJpbmdcbik6IFNPUmVmcmVzaFN0cmF0ZWd5IHwgdW5kZWZpbmVkIHtcblx0Y29uc3Qgc29BY3Rpb24gPSBzZW1hbnRpY09iamVjdCAmJiBhY3Rpb24gJiYgYCR7c2VtYW50aWNPYmplY3R9LSR7YWN0aW9ufWA7XG5cdGNvbnN0IGludGVudHMgPSByZWZyZXNoU3RyYXRlZ2llcy5pbnRlbnRzO1xuXHRjb25zdCBzb0FjdGlvbkludGVudE1hdGNoID0gaW50ZW50cyAmJiBzb0FjdGlvbiAmJiBpbnRlbnRzW3NvQWN0aW9uXTtcblx0Y29uc3Qgc29JbnRlbnRNYXRjaCA9ICFzb0FjdGlvbkludGVudE1hdGNoICYmIGludGVudHMgJiYgc2VtYW50aWNPYmplY3QgJiYgaW50ZW50c1tzZW1hbnRpY09iamVjdF07XG5cblx0cmV0dXJuIHNvQWN0aW9uSW50ZW50TWF0Y2ggfHwgc29JbnRlbnRNYXRjaCB8fCByZWZyZXNoU3RyYXRlZ2llcz8uZGVmYXVsdEJlaGF2aW9yIHx8IHJlZnJlc2hTdHJhdGVnaWVzPy5fZmVEZWZhdWx0O1xufTtcbi8qKlxuICogU3RvcmUgY29udHJvbCByZWZyZXNoIHN0cmF0ZWd5IGZvciBoYXNoIGluIHRoZSBpbnRlcm5hbCBtb2RlbC5cbiAqXG4gKiBAcGFyYW0gY29udHJvbCBDb250cm9sIGZvciB0aGUgcmVmcmVzaCBzdHJhdGVneVxuICogQHBhcmFtIGhhc2ggU2hlbGwgaGFzaCBvYmplY3RcbiAqL1xuY29uc3Qgc3RvcmVDb250cm9sUmVmcmVzaFN0cmF0ZWd5Rm9ySGFzaCA9IGZ1bmN0aW9uIChjb250cm9sOiBDb250cm9sLCBoYXNoOiBTT0FjdGlvbik6IHZvaWQge1xuXHRpZiAoY29udHJvbCAmJiBjb250cm9sLmdldE1vZGVsKFwidmlld0RhdGFcIikgJiYgY29udHJvbC5nZXRNb2RlbChcImludGVybmFsXCIpKSB7XG5cdFx0Y29uc3Qgdmlld0RhdGEgPSBjb250cm9sLmdldE1vZGVsKFwidmlld0RhdGFcIik7XG5cdFx0Y29uc3QgcmVmcmVzaFN0cmF0ZWdpZXM6IFJlZnJlc2hTdHJhdGVnaWVzID0gdmlld0RhdGEuZ2V0UHJvcGVydHkoUEFUSF9UT19TVE9SRSk7XG5cdFx0aWYgKHJlZnJlc2hTdHJhdGVnaWVzKSB7XG5cdFx0XHRjb25zdCBpbnRlcm5hbE1vZGVsID0gY29udHJvbC5nZXRNb2RlbChcImludGVybmFsXCIpO1xuXHRcdFx0Y29uc3QgcmVmcmVzaFN0cmF0ZWd5OiBTT1JlZnJlc2hTdHJhdGVneSB8IHVuZGVmaW5lZCA9IEtlZXBBbGl2ZUhlbHBlci5nZXRSZWZyZXNoU3RyYXRlZ3lGb3JJbnRlbnQoXG5cdFx0XHRcdHJlZnJlc2hTdHJhdGVnaWVzLFxuXHRcdFx0XHRoYXNoPy5zZW1hbnRpY09iamVjdCxcblx0XHRcdFx0aGFzaD8uYWN0aW9uXG5cdFx0XHQpO1xuXHRcdFx0KGludGVybmFsTW9kZWwgYXMgSlNPTk1vZGVsKS5zZXRQcm9wZXJ0eShQQVRIX1RPX1NUT1JFLCByZWZyZXNoU3RyYXRlZ3kpO1xuXHRcdH1cblx0fVxufTtcblxuLyoqXG4gKiBNZXRob2QgdG8gcmVmcmVzaCBhbmQgcmVzdG9yZSB0aGUgdmlldyBpZiBuZWNjZXNzYXJ5LlxuICpcbiAqIEBwYXJhbSB2aWV3IENvbnRyb2wgZm9yIHRoZSByZWZyZXNoIHN0cmF0ZWd5XG4gKiBAcmV0dXJucyBBIHByb21pc2UgYWZ0ZXIgdmlldyByZWZyZXNoIGFuZCByZXN0b3JlIGFyZSB0cmlnZ2VyZWRcbiAqL1xuY29uc3QgcmVzdG9yZVZpZXcgPSBmdW5jdGlvbiAodmlldzogVmlldyk6IFByb21pc2U8YW55PiB7XG5cdGNvbnN0IGludGVybmFsTW9kZWxDb250ZXh0ID0gdmlldy5nZXRCaW5kaW5nQ29udGV4dChcImludGVybmFsXCIpIGFzIEludGVybmFsTW9kZWxDb250ZXh0O1xuXHRjb25zdCBjb250cm9sbGVyID0gdmlldy5nZXRDb250cm9sbGVyKCk7XG5cdGNvbnN0IHZpZXdTdGF0ZSA9IChjb250cm9sbGVyIGFzIGFueSk/LnZpZXdTdGF0ZTtcblx0bGV0IHJlZnJlc2hCaW5kaW5ncyA9IFByb21pc2UucmVzb2x2ZSgpO1xuXHRpZiAoaW50ZXJuYWxNb2RlbENvbnRleHQgJiYgaW50ZXJuYWxNb2RlbENvbnRleHQuZ2V0UHJvcGVydHkoXCJyZXN0b3JlU3RhdHVzXCIpID09PSBcInBlbmRpbmdcIikge1xuXHRcdGlmICh2aWV3U3RhdGUucmVmcmVzaFZpZXdCaW5kaW5ncykge1xuXHRcdFx0cmVmcmVzaEJpbmRpbmdzID0gdmlld1N0YXRlLnJlZnJlc2hWaWV3QmluZGluZ3MoKTtcblx0XHRcdHJlZnJlc2hCaW5kaW5nc1xuXHRcdFx0XHQudGhlbihmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdFx0TG9nLmluZm8oYEZFIFY0OiBSZWZyZXNoIHdhcyB0cmlnZ2VyZWQgc3VjY2Vzc2Z1bGw6ICR7dmlldy5nZXRJZCgpfWApO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKGVycikge1xuXHRcdFx0XHRcdExvZy53YXJuaW5nKGBGRSBWNDogUmVmcmVzaCB3YXMgdW5zdWNjZXNzZnVsbDogJHt2aWV3LmdldElkKCl9YCwgZXJyKTtcblx0XHRcdFx0fSk7XG5cdFx0fVxuXHRcdHJlZnJlc2hCaW5kaW5ncyA9IHJlZnJlc2hCaW5kaW5nc1xuXHRcdFx0LnRoZW4oZnVuY3Rpb24gKCkge1xuXHRcdFx0XHR2aWV3U3RhdGUub25SZXN0b3JlKCk7XG5cdFx0XHRcdGludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KFwicmVzdG9yZVN0YXR1c1wiLCBcImRvbmVcIik7XG5cdFx0XHR9KVxuXHRcdFx0LmNhdGNoKGZ1bmN0aW9uIChlcnJvcikge1xuXHRcdFx0XHRMb2cud2FybmluZyhgRkUgVjQ6IFJlc3RvcmUgd2FzIHVuc3VjY2Vzc2Z1bGw6ICR7dmlldy5nZXRJZCgpfWAsIGVycm9yKTtcblx0XHRcdH0pO1xuXHR9XG5cdHJldHVybiByZWZyZXNoQmluZGluZ3M7XG59O1xuXG4vKipcbiAqIGhlbHBlciBjbGFzcyBmb3IgS2VlcEFsaXZlIGZlYXR1cmUgaW4gc2FwLmZlLlxuICovXG5jb25zdCBLZWVwQWxpdmVIZWxwZXIgPSB7XG5cdGdldENvbnRyb2xzRm9yUmVmcmVzaCxcblx0Z2V0Q29udHJvbFJlZnJlc2hTdHJhdGVneUZvckNvbnRleHRQYXRoLFxuXHRnZXRWaWV3UmVmcmVzaEluZm8sXG5cdGdldFJlZnJlc2hTdHJhdGVneUZvckludGVudCxcblx0c3RvcmVDb250cm9sUmVmcmVzaFN0cmF0ZWd5Rm9ySGFzaCxcblx0cmVzdG9yZVZpZXdcbn07XG5leHBvcnQgZGVmYXVsdCBLZWVwQWxpdmVIZWxwZXI7XG4iXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7Ozs7OztFQVdBO0VBQ0EsTUFBTUEsd0JBQXdCLEdBQUcsVUFBVUMsU0FBeUIsRUFBRUMsa0JBQTBCLEVBQVU7SUFDekcsTUFBTUMsYUFBYSxHQUFHQyxXQUFXLENBQUNDLGdCQUFnQixDQUFDSCxrQkFBa0IsQ0FBQztJQUN0RSxNQUFNSSxTQUFTLEdBQUdILGFBQWEsQ0FBQ0ksT0FBTyxDQUFDLDRCQUE0QixDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUlOLFNBQVMsQ0FBQ08sU0FBUyxDQUFDTCxhQUFhLENBQUM7SUFDaEgsT0FBT0csU0FBUyxHQUFJLElBQUdBLFNBQVUsRUFBQyxHQUFHSixrQkFBa0I7RUFDeEQsQ0FBQztFQUNELE1BQU1PLGVBQWUsR0FBRyxVQUFVQyxXQUFtQixFQUFFQyxHQUFXLEVBQUVDLFFBQTZCLEVBQVc7SUFDM0csT0FBT0YsV0FBVyxLQUFLQyxHQUFHLElBQUtDLFFBQVEsS0FBS0MsbUJBQW1CLENBQUNDLG1CQUFtQixJQUFJSixXQUFXLENBQUNLLFVBQVUsQ0FBQ0osR0FBRyxDQUFFO0VBQ3BILENBQUM7RUFDRDtBQUNBO0FB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
|
|
180
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZm5TaW1wbGlmeUVudGl0eVNldFBhdGgiLCJtZXRhTW9kZWwiLCJlbnRpdHlTZXRQYXRoVG9Vc2UiLCJlbnRpdHlTZXRQYXRoIiwiTW9kZWxIZWxwZXIiLCJnZXRFbnRpdHlTZXRQYXRoIiwiZW50aXR5U2V0IiwiaW5kZXhPZiIsImdldE9iamVjdCIsIl9mbklzQXBwbGljYWJsZSIsInByaW1hcnlQYXRoIiwia2V5Iiwic3RyYXRlZ3kiLCJSZWZyZXNoU3RyYXRlZ3lUeXBlIiwiSW5jbHVkaW5nRGVwZW5kZW50cyIsInN0YXJ0c1dpdGgiLCJfaXNQYXRoQXBwbGljYWJsZVRvQ29udGV4dFBhdGgiLCJjb250ZXh0UGF0aCIsInBhdGgiLCJjb250ZXh0UGF0aFRvQ2hlY2siLCJwYXRoVG9DaGVjayIsImdldENvbnRyb2xzRm9yUmVmcmVzaCIsInZpZXciLCJjb250cm9scyIsImNvbnRyb2xzRm9yUmVmcmVzaCIsImdldE1vZGVsIiwiZ2V0TWV0YU1vZGVsIiwiaW50ZXJuYWxNb2RlbCIsInJlZnJlc2hTdHJhdGVneSIsImdldFByb3BlcnR5IiwiUEFUSF9UT19TVE9SRSIsImZvckVhY2giLCJjb250cm9sIiwiZGF0YSIsInB1c2giLCJnZXRDb250cm9sUmVmcmVzaFN0cmF0ZWd5Rm9yQ29udGV4dFBhdGgiLCJzdHJhdGVneVRvQ2hlY2siLCJnZXRWaWV3UmVmcmVzaEluZm8iLCJ2aWV3RGF0YSIsImdldFZpZXdEYXRhIiwiS2VlcEFsaXZlSGVscGVyIiwiZ2V0UmVmcmVzaFN0cmF0ZWd5Rm9ySW50ZW50IiwicmVmcmVzaFN0cmF0ZWdpZXMiLCJzZW1hbnRpY09iamVjdCIsImFjdGlvbiIsInNvQWN0aW9uIiwiaW50ZW50cyIsInNvQWN0aW9uSW50ZW50TWF0Y2giLCJzb0ludGVudE1hdGNoIiwiZGVmYXVsdEJlaGF2aW9yIiwiX2ZlRGVmYXVsdCIsInN0b3JlQ29udHJvbFJlZnJlc2hTdHJhdGVneUZvckhhc2giLCJoYXNoIiwic2V0UHJvcGVydHkiLCJyZXN0b3JlVmlldyIsImludGVybmFsTW9kZWxDb250ZXh0IiwiZ2V0QmluZGluZ0NvbnRleHQiLCJjb250cm9sbGVyIiwiZ2V0Q29udHJvbGxlciIsInZpZXdTdGF0ZSIsInJlZnJlc2hCaW5kaW5ncyIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVmcmVzaFZpZXdCaW5kaW5ncyIsInRoZW4iLCJMb2ciLCJpbmZvIiwiZ2V0SWQiLCJjYXRjaCIsImVyciIsIndhcm5pbmciLCJvblJlc3RvcmUiLCJlcnJvciJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiS2VlcEFsaXZlSGVscGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IHsgRkVWaWV3IH0gZnJvbSBcInNhcC9mZS9jb3JlL0Jhc2VDb250cm9sbGVyXCI7XG5pbXBvcnQgdHlwZSB7IEJhc2VNYW5pZmVzdFNldHRpbmdzIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvTWFuaWZlc3RTZXR0aW5nc1wiO1xuaW1wb3J0IHR5cGUgeyBSZWZyZXNoU3RyYXRlZ2llcywgU09BY3Rpb24sIFNPUmVmcmVzaFN0cmF0ZWd5IH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvS2VlcEFsaXZlUmVmcmVzaFR5cGVzXCI7XG5pbXBvcnQgeyBQQVRIX1RPX1NUT1JFLCBSZWZyZXNoU3RyYXRlZ3lUeXBlIH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvS2VlcEFsaXZlUmVmcmVzaFR5cGVzXCI7XG5pbXBvcnQgdHlwZSBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgdHlwZSBWaWV3IGZyb20gXCJzYXAvdWkvY29yZS9tdmMvVmlld1wiO1xuaW1wb3J0IHR5cGUgSlNPTk1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvanNvbi9KU09OTW9kZWxcIjtcbmltcG9ydCB0eXBlIE9EYXRhTWV0YU1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFNZXRhTW9kZWxcIjtcbmltcG9ydCBPRGF0YU1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFNb2RlbFwiO1xuaW1wb3J0IHR5cGUgeyBJbnRlcm5hbE1vZGVsQ29udGV4dCB9IGZyb20gXCIuL01vZGVsSGVscGVyXCI7XG5pbXBvcnQgTW9kZWxIZWxwZXIgZnJvbSBcIi4vTW9kZWxIZWxwZXJcIjtcblxuLy8gUHJpdmF0ZSBmdW5jdGlvbnMgLSBzdGFydFxuY29uc3QgX2ZuU2ltcGxpZnlFbnRpdHlTZXRQYXRoID0gZnVuY3Rpb24gKG1ldGFNb2RlbDogT0RhdGFNZXRhTW9kZWwsIGVudGl0eVNldFBhdGhUb1VzZTogc3RyaW5nKTogc3RyaW5nIHtcblx0Y29uc3QgZW50aXR5U2V0UGF0aCA9IE1vZGVsSGVscGVyLmdldEVudGl0eVNldFBhdGgoZW50aXR5U2V0UGF0aFRvVXNlKTtcblx0Y29uc3QgZW50aXR5U2V0ID0gZW50aXR5U2V0UGF0aC5pbmRleE9mKFwiJE5hdmlnYXRpb25Qcm9wZXJ0eUJpbmRpbmdcIikgPiAtMSAmJiBtZXRhTW9kZWwuZ2V0T2JqZWN0KGVudGl0eVNldFBhdGgpO1xuXHRyZXR1cm4gZW50aXR5U2V0ID8gYC8ke2VudGl0eVNldH1gIDogZW50aXR5U2V0UGF0aFRvVXNlO1xufTtcbmNvbnN0IF9mbklzQXBwbGljYWJsZSA9IGZ1bmN0aW9uIChwcmltYXJ5UGF0aDogc3RyaW5nLCBrZXk6IHN0cmluZywgc3RyYXRlZ3k6IFJlZnJlc2hTdHJhdGVneVR5cGUpOiBib29sZWFuIHtcblx0cmV0dXJuIHByaW1hcnlQYXRoID09PSBrZXkgfHwgKHN0cmF0ZWd5ID09PSBSZWZyZXNoU3RyYXRlZ3lUeXBlLkluY2x1ZGluZ0RlcGVuZGVudHMgJiYgcHJpbWFyeVBhdGguc3RhcnRzV2l0aChrZXkpKTtcbn07XG4vKipcbiAqIENoZWNrIGlmIGdpdmVuIHBhdGggcmVzaWRlcyBpbiB0aGUgY29udGV4dCBwYXRoIHByb3ZpZGVkLlxuICpcbiAqIEBwYXJhbSBtZXRhTW9kZWwgTWV0YU1vZGVsIHRvIGJlIHVzZWRcbiAqIEBwYXJhbSBjb250ZXh0UGF0aCBDb250ZXh0IHBhdGggdG8gYmUgdXNlZFxuICogQHBhcmFtIHBhdGggUGF0aCB0byBiZSB1c2VkXG4gKiBAcGFyYW0gc3RyYXRlZ3kgU3RyYXRlZ3ksIGl0IGNvdWxkIGJlICdzZWxmJyB8ICdpbmNsdWRpbmdEZXBlbmRlbnRzJ1xuICogQHJldHVybnMgUmV0dXJucyB0cnVlIGlmIHRoZSBjb250ZXh0IHBhdGggaXMgYXBwbGljYWJsZS5cbiAqL1xuY29uc3QgX2lzUGF0aEFwcGxpY2FibGVUb0NvbnRleHRQYXRoID0gZnVuY3Rpb24gKFxuXHRtZXRhTW9kZWw6IE9EYXRhTWV0YU1vZGVsLFxuXHRjb250ZXh0UGF0aDogc3RyaW5nLFxuXHRwYXRoOiBzdHJpbmcsXG5cdHN0cmF0ZWd5OiBSZWZyZXNoU3RyYXRlZ3lUeXBlXG4pOiBib29sZWFuIHtcblx0bGV0IGNvbnRleHRQYXRoVG9DaGVjayA9IGNvbnRleHRQYXRoLnN0YXJ0c1dpdGgoXCIvXCIpID8gY29udGV4dFBhdGggOiBgLyR7Y29udGV4dFBhdGh9YCxcblx0XHRwYXRoVG9DaGVjayA9IHBhdGguc3RhcnRzV2l0aChcIi9cIikgPyBwYXRoIDogYC8ke3BhdGh9YDtcblx0aWYgKCFfZm5Jc0FwcGxpY2FibGUoY29udGV4dFBhdGhUb0NoZWNrLCBwYXRoVG9DaGVjaywgc3RyYXRlZ3kpKSB7XG5cdFx0Y29udGV4dFBhdGhUb0NoZWNrID0gX2ZuU2ltcGxpZnlFbnRpdHlTZXRQYXRoKG1ldGFNb2RlbCwgY29udGV4dFBhdGhUb0NoZWNrKTtcblx0XHRpZiAoIV9mbklzQXBwbGljYWJsZShjb250ZXh0UGF0aFRvQ2hlY2ssIHBhdGhUb0NoZWNrLCBzdHJhdGVneSkpIHtcblx0XHRcdHBhdGhUb0NoZWNrID0gX2ZuU2ltcGxpZnlFbnRpdHlTZXRQYXRoKG1ldGFNb2RlbCwgcGF0aFRvQ2hlY2spO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gdHJ1ZTtcblx0XHR9XG5cdH1cblx0cmV0dXJuIF9mbklzQXBwbGljYWJsZShjb250ZXh0UGF0aFRvQ2hlY2ssIHBhdGhUb0NoZWNrLCBzdHJhdGVneSk7XG59O1xuLy8gUHJpdmF0ZSBmdW5jdGlvbnMgLSBlbmRcbi8qKlxuICogR2V0IGNvbnRyb2xzIHRvIHJlZnJlc2ggaW4gYSB2aWV3LlxuICpcbiAqIEBwYXJhbSB2aWV3IFZpZXcgb2YgdGhlIGNvbnRyb2xzXG4gKiBAcGFyYW0gY29udHJvbHMgQ29udGV4dCBwYXRoIHRvIGJlIHVzZWRcbiAqIEByZXR1cm5zIFJldHVybnMgY29udHJvbHMgdGhhdCBuZWVkIHRvIGJlIHJlZnJlc2hlZC5cbiAqL1xuY29uc3QgZ2V0Q29udHJvbHNGb3JSZWZyZXNoID0gZnVuY3Rpb24gKHZpZXc6IEZFVmlldywgY29udHJvbHM6IENvbnRyb2xbXSk6IENvbnRyb2xbXSB7XG5cdGNvbnN0IGNvbnRyb2xzRm9yUmVmcmVzaDogQ29udHJvbFtdID0gW107XG5cdGNvbnN0IG1ldGFNb2RlbCA9IHZpZXcuZ2V0TW9kZWwoKS5nZXRNZXRhTW9kZWwoKTtcblx0Y29uc3QgaW50ZXJuYWxNb2RlbCA9IHZpZXcuZ2V0TW9kZWwoXCJpbnRlcm5hbFwiKTtcblx0Y29uc3QgcmVmcmVzaFN0cmF0ZWd5ID0gaW50ZXJuYWxNb2RlbC5nZXRQcm9wZXJ0eShQQVRIX1RPX1NUT1JFKSB8fCB7fTtcblx0aWYgKGNvbnRyb2xzKSB7XG5cdFx0Y29udHJvbHMuZm9yRWFjaChmdW5jdGlvbiAoY29udHJvbCkge1xuXHRcdFx0Y29uc3QgY29udGV4dFBhdGggPSBjb250cm9sLmRhdGEoXCJ0YXJnZXRDb2xsZWN0aW9uUGF0aFwiKTtcblx0XHRcdGZvciAoY29uc3Qga2V5IGluIHJlZnJlc2hTdHJhdGVneSkge1xuXHRcdFx0XHRjb25zdCBzdHJhdGVneSA9IHJlZnJlc2hTdHJhdGVneVtrZXldO1xuXHRcdFx0XHRpZiAoY29udHJvbHNGb3JSZWZyZXNoLmluZGV4T2YoY29udHJvbCkgPT09IC0xICYmIF9pc1BhdGhBcHBsaWNhYmxlVG9Db250ZXh0UGF0aChtZXRhTW9kZWwsIGNvbnRleHRQYXRoLCBrZXksIHN0cmF0ZWd5KSkge1xuXHRcdFx0XHRcdGNvbnRyb2xzRm9yUmVmcmVzaC5wdXNoKGNvbnRyb2wpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblx0cmV0dXJuIGNvbnRyb2xzRm9yUmVmcmVzaDtcbn07XG4vKipcbiAqIEdldCByZWZyZXNoIHN0cmF0ZWd5IGZvciB0aGUgY29udHJvbCBmb3IgYSBjb250ZXh0IHBhdGguXG4gKlxuICogQHBhcmFtIGNvbnRyb2wgQ29udHJvbCBmcm9tIHdoaWNoIHJlZnJlc2ggaW5mbyBpcyBuZWVkZWRcbiAqIEBwYXJhbSBjb250ZXh0UGF0aCBDb250ZXh0UGF0aCBmb3IgcHJvcGVyaXRpZXNcbiAqIEByZXR1cm5zIFJldHVybnMgc3RyYXRlZ3kgZm9yIGNvbnRyb2wgcmVmcmVzaC5cbiAqL1xuY29uc3QgZ2V0Q29udHJvbFJlZnJlc2hTdHJhdGVneUZvckNvbnRleHRQYXRoID0gZnVuY3Rpb24gKGNvbnRyb2w6IENvbnRyb2wsIGNvbnRleHRQYXRoOiBzdHJpbmcpOiBSZWZyZXNoU3RyYXRlZ3lUeXBlIHwgdW5kZWZpbmVkIHtcblx0Y29uc3QgbWV0YU1vZGVsID0gKGNvbnRyb2wuZ2V0TW9kZWwoKSBhcyBPRGF0YU1vZGVsKS5nZXRNZXRhTW9kZWwoKTtcblx0Y29uc3QgaW50ZXJuYWxNb2RlbCA9IGNvbnRyb2wuZ2V0TW9kZWwoXCJpbnRlcm5hbFwiKSBhcyBKU09OTW9kZWw7XG5cdGNvbnN0IHJlZnJlc2hTdHJhdGVneSA9IGludGVybmFsTW9kZWwuZ2V0UHJvcGVydHkoUEFUSF9UT19TVE9SRSkgfHwge307XG5cdGxldCBzdHJhdGVneTtcblx0aWYgKGNvbnRleHRQYXRoKSB7XG5cdFx0Zm9yIChjb25zdCBrZXkgaW4gcmVmcmVzaFN0cmF0ZWd5KSB7XG5cdFx0XHRjb25zdCBzdHJhdGVneVRvQ2hlY2sgPSByZWZyZXNoU3RyYXRlZ3lba2V5XTtcblx0XHRcdGlmIChfaXNQYXRoQXBwbGljYWJsZVRvQ29udGV4dFBhdGgobWV0YU1vZGVsLCBjb250ZXh0UGF0aCwga2V5LCBzdHJhdGVneVRvQ2hlY2spKSB7XG5cdFx0XHRcdHN0cmF0ZWd5ID0gc3RyYXRlZ3lUb0NoZWNrO1xuXHRcdFx0XHRpZiAoc3RyYXRlZ3kgPT09IFwiaW5jbHVkaW5nRGVwZW5kZW50c1wiKSB7XG5cdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0cmV0dXJuIHN0cmF0ZWd5O1xufTtcbi8qKlxuICogR2V0IHJlZnJlc2ggaW5mbyBmcm9tIHZpZXcuXG4gKlxuICogQHBhcmFtIHZpZXcgVmlldyBmcm9tIHdoaWNoIHJlZnJlc2ggaW5mbyBpcyBuZWVkZWRcbiAqIEByZXR1cm5zIFJldHVybnMgc3RyYXRlZ3kgZm9yIHZpZXcgcmVmcmVzaC5cbiAqL1xuY29uc3QgZ2V0Vmlld1JlZnJlc2hJbmZvID0gZnVuY3Rpb24gKHZpZXc6IFZpZXcpOiBSZWZyZXNoU3RyYXRlZ3lUeXBlIHwgdW5kZWZpbmVkIHtcblx0Y29uc3Qgdmlld0RhdGEgPSB2aWV3LmdldFZpZXdEYXRhKCkgYXMgQmFzZU1hbmlmZXN0U2V0dGluZ3MsXG5cdFx0Y29udGV4dFBhdGggPSB2aWV3RGF0YSAmJiAodmlld0RhdGE/LmNvbnRleHRQYXRoIHx8IGAvJHt2aWV3RGF0YT8uZW50aXR5U2V0fWApO1xuXHRyZXR1cm4gS2VlcEFsaXZlSGVscGVyLmdldENvbnRyb2xSZWZyZXNoU3RyYXRlZ3lGb3JDb250ZXh0UGF0aCh2aWV3LCBjb250ZXh0UGF0aCk7XG59O1xuXG4vKipcbiAqIEdldCByZWZyZXNoIHN0cmF0ZWd5IGZvciBhbiBpbnRlbnQuXG4gKlxuICogQHBhcmFtIHJlZnJlc2hTdHJhdGVnaWVzIFJlZnJlc2hTdHJhdGVnaWVzIHRvIGNvbnNpZGVyXG4gKiBAcGFyYW0gc2VtYW50aWNPYmplY3QgT3V0Ym91bmQgU2VtYW50aWMgT2JqZWN0XG4gKiBAcGFyYW0gYWN0aW9uIE91dGJvdW5kIEFjdGlvblxuICogQHJldHVybnMgUmV0dXJucyByZWZyZXNoIHN0cmF0ZWdpZXMgdG8gdXNlIGZvciB0aGUgaW50ZW50LlxuICovXG5jb25zdCBnZXRSZWZyZXNoU3RyYXRlZ3lGb3JJbnRlbnQgPSBmdW5jdGlvbiAoXG5cdHJlZnJlc2hTdHJhdGVnaWVzOiBSZWZyZXNoU3RyYXRlZ2llcyxcblx0c2VtYW50aWNPYmplY3Q/OiBzdHJpbmcsXG5cdGFjdGlvbj86IHN0cmluZ1xuKTogU09SZWZyZXNoU3RyYXRlZ3kgfCB1bmRlZmluZWQge1xuXHRjb25zdCBzb0FjdGlvbiA9IHNlbWFudGljT2JqZWN0ICYmIGFjdGlvbiAmJiBgJHtzZW1hbnRpY09iamVjdH0tJHthY3Rpb259YDtcblx0Y29uc3QgaW50ZW50cyA9IHJlZnJlc2hTdHJhdGVnaWVzLmludGVudHM7XG5cdGNvbnN0IHNvQWN0aW9uSW50ZW50TWF0Y2ggPSBpbnRlbnRzICYmIHNvQWN0aW9uICYmIGludGVudHNbc29BY3Rpb25dO1xuXHRjb25zdCBzb0ludGVudE1hdGNoID0gIXNvQWN0aW9uSW50ZW50TWF0Y2ggJiYgaW50ZW50cyAmJiBzZW1hbnRpY09iamVjdCAmJiBpbnRlbnRzW3NlbWFudGljT2JqZWN0XTtcblxuXHRyZXR1cm4gc29BY3Rpb25JbnRlbnRNYXRjaCB8fCBzb0ludGVudE1hdGNoIHx8IHJlZnJlc2hTdHJhdGVnaWVzPy5kZWZhdWx0QmVoYXZpb3IgfHwgcmVmcmVzaFN0cmF0ZWdpZXM/Ll9mZURlZmF1bHQ7XG59O1xuLyoqXG4gKiBTdG9yZSBjb250cm9sIHJlZnJlc2ggc3RyYXRlZ3kgZm9yIGhhc2ggaW4gdGhlIGludGVybmFsIG1vZGVsLlxuICpcbiAqIEBwYXJhbSBjb250cm9sIENvbnRyb2wgZm9yIHRoZSByZWZyZXNoIHN0cmF0ZWd5XG4gKiBAcGFyYW0gaGFzaCBTaGVsbCBoYXNoIG9iamVjdFxuICovXG5jb25zdCBzdG9yZUNvbnRyb2xSZWZyZXNoU3RyYXRlZ3lGb3JIYXNoID0gZnVuY3Rpb24gKGNvbnRyb2w6IENvbnRyb2wsIGhhc2g6IFNPQWN0aW9uKTogdm9pZCB7XG5cdGlmIChjb250cm9sICYmIGNvbnRyb2wuZ2V0TW9kZWwoXCJ2aWV3RGF0YVwiKSAmJiBjb250cm9sLmdldE1vZGVsKFwiaW50ZXJuYWxcIikpIHtcblx0XHRjb25zdCB2aWV3RGF0YSA9IGNvbnRyb2wuZ2V0TW9kZWwoXCJ2aWV3RGF0YVwiKSBhcyBKU09OTW9kZWw7XG5cdFx0Y29uc3QgcmVmcmVzaFN0cmF0ZWdpZXM6IFJlZnJlc2hTdHJhdGVnaWVzID0gdmlld0RhdGEuZ2V0UHJvcGVydHkoUEFUSF9UT19TVE9SRSk7XG5cdFx0aWYgKHJlZnJlc2hTdHJhdGVnaWVzKSB7XG5cdFx0XHRjb25zdCBpbnRlcm5hbE1vZGVsID0gY29udHJvbC5nZXRNb2RlbChcImludGVybmFsXCIpO1xuXHRcdFx0Y29uc3QgcmVmcmVzaFN0cmF0ZWd5OiBTT1JlZnJlc2hTdHJhdGVneSB8IHVuZGVmaW5lZCA9IEtlZXBBbGl2ZUhlbHBlci5nZXRSZWZyZXNoU3RyYXRlZ3lGb3JJbnRlbnQoXG5cdFx0XHRcdHJlZnJlc2hTdHJhdGVnaWVzLFxuXHRcdFx0XHRoYXNoPy5zZW1hbnRpY09iamVjdCxcblx0XHRcdFx0aGFzaD8uYWN0aW9uXG5cdFx0XHQpO1xuXHRcdFx0KGludGVybmFsTW9kZWwgYXMgSlNPTk1vZGVsKS5zZXRQcm9wZXJ0eShQQVRIX1RPX1NUT1JFLCByZWZyZXNoU3RyYXRlZ3kpO1xuXHRcdH1cblx0fVxufTtcblxuLyoqXG4gKiBNZXRob2QgdG8gcmVmcmVzaCBhbmQgcmVzdG9yZSB0aGUgdmlldyBpZiBuZWNjZXNzYXJ5LlxuICpcbiAqIEBwYXJhbSB2aWV3IENvbnRyb2wgZm9yIHRoZSByZWZyZXNoIHN0cmF0ZWd5XG4gKiBAcmV0dXJucyBBIHByb21pc2UgYWZ0ZXIgdmlldyByZWZyZXNoIGFuZCByZXN0b3JlIGFyZSB0cmlnZ2VyZWRcbiAqL1xuY29uc3QgcmVzdG9yZVZpZXcgPSBmdW5jdGlvbiAodmlldzogVmlldyk6IFByb21pc2U8YW55PiB7XG5cdGNvbnN0IGludGVybmFsTW9kZWxDb250ZXh0ID0gdmlldy5nZXRCaW5kaW5nQ29udGV4dChcImludGVybmFsXCIpIGFzIEludGVybmFsTW9kZWxDb250ZXh0O1xuXHRjb25zdCBjb250cm9sbGVyID0gdmlldy5nZXRDb250cm9sbGVyKCk7XG5cdGNvbnN0IHZpZXdTdGF0ZSA9IChjb250cm9sbGVyIGFzIGFueSk/LnZpZXdTdGF0ZTtcblx0bGV0IHJlZnJlc2hCaW5kaW5ncyA9IFByb21pc2UucmVzb2x2ZSgpO1xuXHRpZiAoaW50ZXJuYWxNb2RlbENvbnRleHQgJiYgaW50ZXJuYWxNb2RlbENvbnRleHQuZ2V0UHJvcGVydHkoXCJyZXN0b3JlU3RhdHVzXCIpID09PSBcInBlbmRpbmdcIikge1xuXHRcdGlmICh2aWV3U3RhdGUucmVmcmVzaFZpZXdCaW5kaW5ncykge1xuXHRcdFx0cmVmcmVzaEJpbmRpbmdzID0gdmlld1N0YXRlLnJlZnJlc2hWaWV3QmluZGluZ3MoKTtcblx0XHRcdHJlZnJlc2hCaW5kaW5nc1xuXHRcdFx0XHQudGhlbihmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdFx0TG9nLmluZm8oYEZFIFY0OiBSZWZyZXNoIHdhcyB0cmlnZ2VyZWQgc3VjY2Vzc2Z1bGw6ICR7dmlldy5nZXRJZCgpfWApO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKGVycikge1xuXHRcdFx0XHRcdExvZy53YXJuaW5nKGBGRSBWNDogUmVmcmVzaCB3YXMgdW5zdWNjZXNzZnVsbDogJHt2aWV3LmdldElkKCl9YCwgZXJyKTtcblx0XHRcdFx0fSk7XG5cdFx0fVxuXHRcdHJlZnJlc2hCaW5kaW5ncyA9IHJlZnJlc2hCaW5kaW5nc1xuXHRcdFx0LnRoZW4oZnVuY3Rpb24gKCkge1xuXHRcdFx0XHR2aWV3U3RhdGUub25SZXN0b3JlKCk7XG5cdFx0XHRcdGludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KFwicmVzdG9yZVN0YXR1c1wiLCBcImRvbmVcIik7XG5cdFx0XHR9KVxuXHRcdFx0LmNhdGNoKGZ1bmN0aW9uIChlcnJvcikge1xuXHRcdFx0XHRMb2cud2FybmluZyhgRkUgVjQ6IFJlc3RvcmUgd2FzIHVuc3VjY2Vzc2Z1bGw6ICR7dmlldy5nZXRJZCgpfWAsIGVycm9yKTtcblx0XHRcdH0pO1xuXHR9XG5cdHJldHVybiByZWZyZXNoQmluZGluZ3M7XG59O1xuXG4vKipcbiAqIGhlbHBlciBjbGFzcyBmb3IgS2VlcEFsaXZlIGZlYXR1cmUgaW4gc2FwLmZlLlxuICovXG5jb25zdCBLZWVwQWxpdmVIZWxwZXIgPSB7XG5cdGdldENvbnRyb2xzRm9yUmVmcmVzaCxcblx0Z2V0Q29udHJvbFJlZnJlc2hTdHJhdGVneUZvckNvbnRleHRQYXRoLFxuXHRnZXRWaWV3UmVmcmVzaEluZm8sXG5cdGdldFJlZnJlc2hTdHJhdGVneUZvckludGVudCxcblx0c3RvcmVDb250cm9sUmVmcmVzaFN0cmF0ZWd5Rm9ySGFzaCxcblx0cmVzdG9yZVZpZXdcbn07XG5leHBvcnQgZGVmYXVsdCBLZWVwQWxpdmVIZWxwZXI7XG4iXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7Ozs7OztFQWFBO0VBQ0EsTUFBTUEsd0JBQXdCLEdBQUcsVUFBVUMsU0FBeUIsRUFBRUMsa0JBQTBCLEVBQVU7SUFDekcsTUFBTUMsYUFBYSxHQUFHQyxXQUFXLENBQUNDLGdCQUFnQixDQUFDSCxrQkFBa0IsQ0FBQztJQUN0RSxNQUFNSSxTQUFTLEdBQUdILGFBQWEsQ0FBQ0ksT0FBTyxDQUFDLDRCQUE0QixDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUlOLFNBQVMsQ0FBQ08sU0FBUyxDQUFDTCxhQUFhLENBQUM7SUFDaEgsT0FBT0csU0FBUyxHQUFJLElBQUdBLFNBQVUsRUFBQyxHQUFHSixrQkFBa0I7RUFDeEQsQ0FBQztFQUNELE1BQU1PLGVBQWUsR0FBRyxVQUFVQyxXQUFtQixFQUFFQyxHQUFXLEVBQUVDLFFBQTZCLEVBQVc7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
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import Log from "sap/base/Log";
|
|
2
|
+
import { FEView } from "sap/fe/core/BaseController";
|
|
2
3
|
import type { BaseManifestSettings } from "sap/fe/core/converters/ManifestSettings";
|
|
3
4
|
import type { RefreshStrategies, SOAction, SORefreshStrategy } from "sap/fe/core/helpers/KeepAliveRefreshTypes";
|
|
4
5
|
import { PATH_TO_STORE, RefreshStrategyType } from "sap/fe/core/helpers/KeepAliveRefreshTypes";
|
|
@@ -6,6 +7,7 @@ import type Control from "sap/ui/core/Control";
|
|
|
6
7
|
import type View from "sap/ui/core/mvc/View";
|
|
7
8
|
import type JSONModel from "sap/ui/model/json/JSONModel";
|
|
8
9
|
import type ODataMetaModel from "sap/ui/model/odata/v4/ODataMetaModel";
|
|
10
|
+
import ODataModel from "sap/ui/model/odata/v4/ODataModel";
|
|
9
11
|
import type { InternalModelContext } from "./ModelHelper";
|
|
10
12
|
import ModelHelper from "./ModelHelper";
|
|
11
13
|
|
|
@@ -53,9 +55,9 @@ const _isPathApplicableToContextPath = function (
|
|
|
53
55
|
* @param controls Context path to be used
|
|
54
56
|
* @returns Returns controls that need to be refreshed.
|
|
55
57
|
*/
|
|
56
|
-
const getControlsForRefresh = function (view:
|
|
58
|
+
const getControlsForRefresh = function (view: FEView, controls: Control[]): Control[] {
|
|
57
59
|
const controlsForRefresh: Control[] = [];
|
|
58
|
-
const metaModel = view.getModel().getMetaModel()
|
|
60
|
+
const metaModel = view.getModel().getMetaModel();
|
|
59
61
|
const internalModel = view.getModel("internal");
|
|
60
62
|
const refreshStrategy = internalModel.getProperty(PATH_TO_STORE) || {};
|
|
61
63
|
if (controls) {
|
|
@@ -79,8 +81,8 @@ const getControlsForRefresh = function (view: View, controls: Control[]): Contro
|
|
|
79
81
|
* @returns Returns strategy for control refresh.
|
|
80
82
|
*/
|
|
81
83
|
const getControlRefreshStrategyForContextPath = function (control: Control, contextPath: string): RefreshStrategyType | undefined {
|
|
82
|
-
const metaModel = control.getModel().getMetaModel()
|
|
83
|
-
const internalModel = control.getModel("internal");
|
|
84
|
+
const metaModel = (control.getModel() as ODataModel).getMetaModel();
|
|
85
|
+
const internalModel = control.getModel("internal") as JSONModel;
|
|
84
86
|
const refreshStrategy = internalModel.getProperty(PATH_TO_STORE) || {};
|
|
85
87
|
let strategy;
|
|
86
88
|
if (contextPath) {
|
|
@@ -136,7 +138,7 @@ const getRefreshStrategyForIntent = function (
|
|
|
136
138
|
*/
|
|
137
139
|
const storeControlRefreshStrategyForHash = function (control: Control, hash: SOAction): void {
|
|
138
140
|
if (control && control.getModel("viewData") && control.getModel("internal")) {
|
|
139
|
-
const viewData = control.getModel("viewData");
|
|
141
|
+
const viewData = control.getModel("viewData") as JSONModel;
|
|
140
142
|
const refreshStrategies: RefreshStrategies = viewData.getProperty(PATH_TO_STORE);
|
|
141
143
|
if (refreshStrategies) {
|
|
142
144
|
const internalModel = control.getModel("internal");
|