@sapui5/sap.fe.core 1.101.0 → 1.103.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 +5 -5
- package/src/sap/fe/core/.library +1 -1
- package/src/sap/fe/core/AppComponent.js +66 -30
- package/src/sap/fe/core/AppComponent.ts +68 -51
- package/src/sap/fe/core/AppStateHandler.js +13 -13
- package/src/sap/fe/core/AppStateHandler.ts +18 -18
- package/src/sap/fe/core/BaseController.js +11 -9
- package/src/sap/fe/core/BaseController.ts +15 -13
- package/src/sap/fe/core/CommonUtils.js +279 -188
- package/src/sap/fe/core/CommonUtils.ts +306 -215
- package/src/sap/fe/core/ExtensionAPI.js +25 -30
- package/src/sap/fe/core/ExtensionAPI.ts +37 -41
- package/src/sap/fe/core/PageController.js +12 -7
- package/src/sap/fe/core/PageController.ts +10 -5
- package/src/sap/fe/core/TemplateComponent.js +6 -6
- package/src/sap/fe/core/TemplateComponent.ts +11 -11
- package/src/sap/fe/core/TemplateModel.js +2 -2
- package/src/sap/fe/core/TemplateModel.ts +3 -3
- package/src/sap/fe/core/buildingBlocks/AttributeModel.js +1 -1
- package/src/sap/fe/core/buildingBlocks/AttributeModel.ts +1 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js +306 -78
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.ts +280 -70
- package/src/sap/fe/core/buildingBlocks/TraceInfo.js +27 -27
- package/src/sap/fe/core/buildingBlocks/TraceInfo.ts +28 -26
- package/src/sap/fe/core/{BusyLocker.js → controllerextensions/BusyLocker.js} +1 -1
- package/src/sap/fe/core/{BusyLocker.ts → controllerextensions/BusyLocker.ts} +7 -7
- package/src/sap/fe/core/controllerextensions/EditFlow.js +351 -229
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +321 -246
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +9 -9
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +10 -10
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +59 -34
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +71 -45
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +72 -72
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +82 -80
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +152 -131
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +171 -152
- package/src/sap/fe/core/controllerextensions/KPIManagement.js +66 -68
- package/src/sap/fe/core/controllerextensions/KPIManagement.ts +106 -123
- package/src/sap/fe/core/controllerextensions/MassEdit.js +11 -10
- package/src/sap/fe/core/controllerextensions/MassEdit.ts +31 -37
- package/src/sap/fe/core/controllerextensions/MessageHandler.js +21 -13
- package/src/sap/fe/core/controllerextensions/MessageHandler.ts +30 -15
- package/src/sap/fe/core/controllerextensions/PageReady.js +97 -25
- package/src/sap/fe/core/controllerextensions/PageReady.ts +94 -34
- package/src/sap/fe/core/controllerextensions/Paginator.js +19 -11
- package/src/sap/fe/core/controllerextensions/Paginator.ts +22 -14
- package/src/sap/fe/core/controllerextensions/Placeholder.js +4 -6
- package/src/sap/fe/core/controllerextensions/Placeholder.ts +12 -14
- package/src/sap/fe/core/controllerextensions/Routing.js +10 -11
- package/src/sap/fe/core/controllerextensions/Routing.ts +12 -13
- package/src/sap/fe/core/controllerextensions/Share.js +39 -21
- package/src/sap/fe/core/controllerextensions/Share.ts +45 -26
- package/src/sap/fe/core/controllerextensions/SideEffects.js +47 -51
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +58 -62
- package/src/sap/fe/core/controllerextensions/ViewState.js +75 -62
- package/src/sap/fe/core/controllerextensions/ViewState.ts +78 -63
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +105 -0
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.ts +99 -0
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js +360 -0
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/ActivitySync.ts +58 -112
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/CollaborationCommon.js +2 -2
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/CollaborationCommon.ts +7 -7
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.js +262 -0
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/Manage.ts +20 -21
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/ManageDialog.fragment.xml +0 -0
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/UserDetails.fragment.xml +5 -7
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +1631 -0
- package/src/sap/fe/core/{TransactionHelper.ts → controllerextensions/editFlow/TransactionHelper.ts} +270 -211
- package/src/sap/fe/core/controllerextensions/editFlow/draft.js +772 -0
- package/src/sap/fe/core/{actions → controllerextensions/editFlow}/draft.ts +240 -100
- package/src/sap/fe/core/controllerextensions/editFlow/operations.js +1199 -0
- package/src/sap/fe/core/{actions → controllerextensions/editFlow}/operations.ts +364 -229
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +188 -0
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +185 -0
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +626 -0
- package/src/sap/fe/core/{actions → controllerextensions/messageHandler}/messageHandling.ts +112 -69
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +937 -0
- package/src/sap/fe/core/{RouterProxy.ts → controllerextensions/routing/RouterProxy.ts} +72 -73
- package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +21 -18
- package/src/sap/fe/core/controls/Any.js +9 -5
- package/src/sap/fe/core/controls/Any.ts +10 -4
- package/src/sap/fe/core/controls/CommandExecution.js +21 -24
- package/src/sap/fe/core/controls/CommandExecution.ts +19 -24
- package/src/sap/fe/core/controls/ConditionalWrapper.js +2 -2
- package/src/sap/fe/core/controls/ConditionalWrapper.ts +3 -3
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +48 -43
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.ts +51 -46
- package/src/sap/fe/core/controls/CustomQuickViewPage.js +3 -2
- package/src/sap/fe/core/controls/CustomQuickViewPage.ts +3 -2
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossDraft.fragment.xml +11 -3
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +19 -9
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +14 -8
- package/src/sap/fe/core/controls/FieldWrapper.js +2 -2
- package/src/sap/fe/core/controls/FieldWrapper.ts +3 -3
- package/src/sap/fe/core/controls/FileWrapper.js +50 -3
- package/src/sap/fe/core/controls/FileWrapper.ts +45 -12
- package/src/sap/fe/core/controls/FilterBar.js +6 -2
- package/src/sap/fe/core/controls/FilterBar.ts +13 -9
- package/src/sap/fe/core/controls/FormElementWrapper.js +12 -2
- package/src/sap/fe/core/controls/FormElementWrapper.ts +14 -3
- package/src/sap/fe/core/controls/MassEditSelect.js +33 -0
- package/src/sap/fe/core/controls/MassEditSelect.ts +41 -0
- package/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +3 -3
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js +16 -12
- package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +20 -22
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +3 -3
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +8 -8
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +48 -48
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +71 -76
- package/src/sap/fe/core/controls/massEdit/MassEditDialog.fragment.xml +36 -65
- package/src/sap/fe/core/controls/massEdit/MassEditField.fragment.xml +107 -0
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +551 -36
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +605 -36
- package/src/sap/fe/core/converters/ConverterContext.js +26 -33
- package/src/sap/fe/core/converters/ConverterContext.ts +51 -60
- package/src/sap/fe/core/converters/ManifestSettings.js +2 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +17 -14
- package/src/sap/fe/core/converters/ManifestWrapper.js +59 -45
- package/src/sap/fe/core/converters/ManifestWrapper.ts +55 -45
- package/src/sap/fe/core/converters/MetaModelConverter.js +56 -67
- package/src/sap/fe/core/converters/MetaModelConverter.ts +183 -193
- package/src/sap/fe/core/converters/TemplateConverter.js +21 -20
- package/src/sap/fe/core/converters/TemplateConverter.ts +27 -24
- package/src/sap/fe/core/converters/annotations/DataField.js +73 -37
- package/src/sap/fe/core/converters/annotations/DataField.ts +121 -77
- package/src/sap/fe/core/converters/common/AnnotationConverter.js +1911 -1495
- package/src/sap/fe/core/converters/controls/Common/Action.js +51 -49
- package/src/sap/fe/core/converters/controls/Common/Action.ts +58 -54
- package/src/sap/fe/core/converters/controls/Common/Chart.js +22 -15
- package/src/sap/fe/core/converters/controls/Common/Chart.ts +29 -27
- package/src/sap/fe/core/converters/controls/Common/Criticality.js +3 -3
- package/src/sap/fe/core/converters/controls/Common/Criticality.ts +4 -4
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +28 -28
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +40 -36
- package/src/sap/fe/core/converters/controls/Common/Form.js +30 -34
- package/src/sap/fe/core/converters/controls/Common/Form.ts +48 -58
- package/src/sap/fe/core/converters/controls/Common/KPI.js +11 -11
- package/src/sap/fe/core/converters/controls/Common/KPI.ts +35 -39
- package/src/sap/fe/core/converters/controls/Common/Table.js +318 -244
- package/src/sap/fe/core/converters/controls/Common/Table.ts +368 -297
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +135 -125
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +162 -148
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +51 -45
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +79 -67
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +28 -26
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +46 -43
- package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.js +9 -9
- package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.ts +14 -13
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +67 -64
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +69 -66
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +92 -89
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +124 -120
- package/src/sap/fe/core/converters/helpers/Aggregation.js +11 -5
- package/src/sap/fe/core/converters/helpers/Aggregation.ts +25 -23
- package/src/sap/fe/core/converters/helpers/BindingHelper.js +31 -30
- package/src/sap/fe/core/converters/helpers/BindingHelper.ts +31 -29
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +4 -4
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.ts +9 -9
- package/src/sap/fe/core/converters/helpers/ID.js +46 -46
- package/src/sap/fe/core/converters/helpers/ID.ts +25 -25
- package/src/sap/fe/core/converters/helpers/Key.js +7 -7
- package/src/sap/fe/core/converters/helpers/Key.ts +7 -7
- package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.js +1 -1
- package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.ts +4 -4
- package/src/sap/fe/core/converters/objectPage/FormMenuActions.js +6 -6
- package/src/sap/fe/core/converters/objectPage/FormMenuActions.ts +10 -10
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +46 -62
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +54 -82
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +30 -29
- package/src/sap/fe/core/converters/templates/ListReportConverter.ts +40 -40
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +56 -55
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +65 -77
- package/src/sap/fe/core/designtime/AppComponent.designtime.js +6 -6
- package/src/sap/fe/core/designtime/AppComponent.designtime.ts +10 -8
- package/src/sap/fe/core/formatters/CollaborationFormatter.js +2 -2
- package/src/sap/fe/core/formatters/CollaborationFormatter.ts +3 -3
- package/src/sap/fe/core/formatters/FPMFormatter.js +5 -5
- package/src/sap/fe/core/formatters/FPMFormatter.ts +10 -10
- package/src/sap/fe/core/formatters/KPIFormatter.js +7 -7
- package/src/sap/fe/core/formatters/KPIFormatter.ts +10 -10
- package/src/sap/fe/core/formatters/StandardFormatter.js +89 -0
- package/src/sap/fe/core/formatters/StandardFormatter.ts +64 -0
- package/src/sap/fe/core/formatters/TableFormatter.js +83 -22
- package/src/sap/fe/core/formatters/TableFormatter.ts +80 -25
- package/src/sap/fe/core/formatters/ValueFormatter.js +8 -8
- package/src/sap/fe/core/formatters/ValueFormatter.ts +9 -9
- package/src/sap/fe/core/fpm/Component.js +2 -2
- package/src/sap/fe/core/fpm/Component.ts +1 -1
- package/src/sap/fe/core/helpers/AppStartupHelper.js +15 -15
- package/src/sap/fe/core/helpers/AppStartupHelper.ts +37 -40
- package/src/sap/fe/core/helpers/BindingToolkit.js +1809 -0
- package/src/sap/fe/core/helpers/{BindingExpression.ts → BindingToolkit.ts} +388 -285
- package/src/sap/fe/core/helpers/ClassSupport.js +20 -11
- package/src/sap/fe/core/helpers/ClassSupport.ts +15 -10
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +2 -2
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.ts +1 -1
- package/src/sap/fe/core/helpers/EditState.js +1 -6
- package/src/sap/fe/core/helpers/EditState.ts +5 -10
- package/src/sap/fe/core/helpers/ExcelFormatHelper.js +2 -2
- package/src/sap/fe/core/helpers/ExcelFormatHelper.ts +4 -4
- package/src/sap/fe/core/helpers/FPMHelper.js +3 -2
- package/src/sap/fe/core/helpers/FPMHelper.ts +10 -9
- package/src/sap/fe/core/helpers/KeepAliveHelper.js +31 -31
- package/src/sap/fe/core/helpers/KeepAliveHelper.ts +52 -56
- package/src/sap/fe/core/helpers/MassEditHelper.js +532 -264
- package/src/sap/fe/core/helpers/MassEditHelper.ts +560 -289
- package/src/sap/fe/core/helpers/ModelHelper.js +25 -25
- package/src/sap/fe/core/helpers/ModelHelper.ts +50 -58
- package/src/sap/fe/core/helpers/PasteHelper.js +3 -10
- package/src/sap/fe/core/helpers/PasteHelper.ts +20 -25
- package/src/sap/fe/core/helpers/SemanticDateOperators.js +1 -1
- package/src/sap/fe/core/helpers/SemanticDateOperators.ts +11 -11
- package/src/sap/fe/core/helpers/SemanticKeyHelper.js +3 -3
- package/src/sap/fe/core/helpers/SemanticKeyHelper.ts +8 -8
- package/src/sap/fe/core/helpers/StableIdHelper.js +16 -12
- package/src/sap/fe/core/helpers/StableIdHelper.ts +20 -16
- package/src/sap/fe/core/{Synchronization.js → helpers/Synchronization.js} +1 -1
- package/src/sap/fe/core/{Synchronization.ts → helpers/Synchronization.ts} +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx.js +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx.ts +8 -8
- package/src/sap/fe/core/library.js +51 -3
- package/src/sap/fe/core/library.ts +47 -0
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +3 -3
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +2 -2
- package/src/sap/fe/core/messagebundle.properties +151 -197
- package/src/sap/fe/core/messagebundle_ar.properties +36 -63
- package/src/sap/fe/core/messagebundle_bg.properties +36 -63
- package/src/sap/fe/core/messagebundle_ca.properties +36 -63
- package/src/sap/fe/core/messagebundle_cs.properties +36 -63
- package/src/sap/fe/core/messagebundle_cy.properties +36 -63
- package/src/sap/fe/core/messagebundle_da.properties +37 -64
- package/src/sap/fe/core/messagebundle_de.properties +36 -63
- package/src/sap/fe/core/messagebundle_el.properties +38 -65
- package/src/sap/fe/core/messagebundle_en.properties +37 -64
- package/src/sap/fe/core/messagebundle_en_GB.properties +37 -64
- package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +44 -73
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +37 -64
- package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +52 -81
- package/src/sap/fe/core/messagebundle_es.properties +36 -63
- package/src/sap/fe/core/messagebundle_es_MX.properties +36 -63
- package/src/sap/fe/core/messagebundle_et.properties +36 -63
- package/src/sap/fe/core/messagebundle_fi.properties +36 -63
- package/src/sap/fe/core/messagebundle_fr.properties +39 -66
- package/src/sap/fe/core/messagebundle_fr_CA.properties +36 -63
- package/src/sap/fe/core/messagebundle_hi.properties +36 -63
- package/src/sap/fe/core/messagebundle_hr.properties +36 -63
- package/src/sap/fe/core/messagebundle_hu.properties +35 -62
- package/src/sap/fe/core/messagebundle_id.properties +37 -64
- package/src/sap/fe/core/messagebundle_it.properties +54 -81
- package/src/sap/fe/core/messagebundle_iw.properties +36 -63
- package/src/sap/fe/core/messagebundle_ja.properties +36 -63
- package/src/sap/fe/core/messagebundle_kk.properties +36 -63
- package/src/sap/fe/core/messagebundle_ko.properties +36 -63
- package/src/sap/fe/core/messagebundle_lt.properties +36 -63
- package/src/sap/fe/core/messagebundle_lv.properties +36 -63
- package/src/sap/fe/core/messagebundle_ms.properties +37 -64
- package/src/sap/fe/core/messagebundle_nl.properties +37 -64
- package/src/sap/fe/core/messagebundle_no.properties +36 -63
- package/src/sap/fe/core/messagebundle_pl.properties +37 -64
- package/src/sap/fe/core/messagebundle_pt.properties +37 -64
- package/src/sap/fe/core/messagebundle_pt_PT.properties +36 -63
- package/src/sap/fe/core/messagebundle_ro.properties +36 -63
- package/src/sap/fe/core/messagebundle_ru.properties +36 -63
- package/src/sap/fe/core/messagebundle_sh.properties +36 -63
- package/src/sap/fe/core/messagebundle_sk.properties +36 -63
- package/src/sap/fe/core/messagebundle_sl.properties +38 -65
- package/src/sap/fe/core/messagebundle_sv.properties +36 -63
- package/src/sap/fe/core/messagebundle_th.properties +36 -63
- package/src/sap/fe/core/messagebundle_tr.properties +36 -63
- package/src/sap/fe/core/messagebundle_uk.properties +37 -64
- package/src/sap/fe/core/messagebundle_vi.properties +37 -64
- package/src/sap/fe/core/messagebundle_zh_CN.properties +36 -63
- package/src/sap/fe/core/messagebundle_zh_TW.properties +37 -64
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +2 -2
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.ts +5 -5
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +2 -2
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +14 -14
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +6 -3
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +12 -10
- package/src/sap/fe/core/services/NavigationServiceFactory.js +54 -45
- package/src/sap/fe/core/services/NavigationServiceFactory.ts +61 -49
- package/src/sap/fe/core/services/ResourceModelServiceFactory.js +2 -2
- package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +4 -4
- package/src/sap/fe/core/services/RoutingServiceFactory.js +63 -60
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +76 -73
- package/src/sap/fe/core/services/ShellServicesFactory.js +102 -71
- package/src/sap/fe/core/services/ShellServicesFactory.ts +109 -78
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +61 -61
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +102 -92
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +24 -18
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +53 -50
- package/src/sap/fe/core/support/CommonHelper.js +3 -2
- package/src/sap/fe/core/support/CommonHelper.ts +9 -13
- package/src/sap/fe/core/support/Diagnostics.js +1 -1
- package/src/sap/fe/core/support/Diagnostics.ts +5 -5
- package/src/sap/fe/core/templating/CommonFormatters.js +84 -0
- package/src/sap/fe/core/templating/CommonFormatters.ts +86 -0
- package/src/sap/fe/core/templating/CriticalityFormatters.js +31 -31
- package/src/sap/fe/core/templating/CriticalityFormatters.ts +42 -40
- package/src/sap/fe/core/templating/DataFieldFormatters.js +8 -8
- package/src/sap/fe/core/templating/DataFieldFormatters.ts +13 -10
- package/src/sap/fe/core/templating/DataModelPathHelper.js +16 -15
- package/src/sap/fe/core/templating/DataModelPathHelper.ts +42 -32
- package/src/sap/fe/core/templating/DisplayModeFormatter.js +1 -1
- package/src/sap/fe/core/templating/DisplayModeFormatter.ts +3 -4
- package/src/sap/fe/core/templating/EntitySetHelper.js +7 -15
- package/src/sap/fe/core/templating/EntitySetHelper.ts +14 -18
- package/src/sap/fe/core/templating/FieldControlHelper.js +35 -34
- package/src/sap/fe/core/templating/FieldControlHelper.ts +29 -46
- package/src/sap/fe/core/templating/FilterHelper.js +12 -11
- package/src/sap/fe/core/templating/FilterHelper.ts +17 -16
- package/src/sap/fe/core/templating/FilterTemplating.js +1 -1
- package/src/sap/fe/core/templating/FilterTemplating.ts +3 -3
- package/src/sap/fe/core/templating/PropertyFormatters.js +7 -7
- package/src/sap/fe/core/templating/PropertyFormatters.ts +21 -19
- package/src/sap/fe/core/templating/PropertyHelper.js +79 -56
- package/src/sap/fe/core/templating/PropertyHelper.ts +41 -27
- package/src/sap/fe/core/templating/UIFormatters.js +163 -97
- package/src/sap/fe/core/templating/UIFormatters.ts +210 -129
- package/src/sap/fe/core/type/DateTimeWithTimezone.js +47 -0
- package/src/sap/fe/core/type/DateTimeWithTimezone.ts +23 -0
- package/src/sap/fe/core/type/Email.js +2 -2
- package/src/sap/fe/core/type/Email.ts +2 -2
- package/src/sap/fe/core/AnnotationHelper.js +0 -331
- package/src/sap/fe/core/AnnotationHelper.ts +0 -321
- package/src/sap/fe/core/RouterProxy.js +0 -938
- package/src/sap/fe/core/TransactionHelper.js +0 -1577
- package/src/sap/fe/core/actions/collaboration/ActivitySync.js +0 -406
- package/src/sap/fe/core/actions/collaboration/Manage.js +0 -264
- package/src/sap/fe/core/actions/draft.js +0 -665
- package/src/sap/fe/core/actions/messageHandling.js +0 -579
- package/src/sap/fe/core/actions/nonDraft.js +0 -20
- package/src/sap/fe/core/actions/nonDraft.ts +0 -12
- package/src/sap/fe/core/actions/operations.js +0 -1096
- package/src/sap/fe/core/actions/sticky.js +0 -130
- package/src/sap/fe/core/actions/sticky.ts +0 -119
- package/src/sap/fe/core/formatters/CriticalityFormatter.js +0 -77
- package/src/sap/fe/core/formatters/CriticalityFormatter.ts +0 -58
- package/src/sap/fe/core/helpers/BindingExpression.js +0 -1729
|
@@ -4,10 +4,11 @@
|
|
|
4
4
|
import { aggregation, defineUI5Class, event, implementInterface, property } from "sap/fe/core/helpers/ClassSupport";
|
|
5
5
|
import SemanticDateOperators from "sap/fe/core/helpers/SemanticDateOperators";
|
|
6
6
|
import ManagedObjectObserver from "sap/ui/base/ManagedObjectObserver";
|
|
7
|
-
import Control from "sap/ui/core/Control";
|
|
8
|
-
import { IFormContent } from "sap/ui/core/library";
|
|
9
|
-
import RenderManager from "sap/ui/core/RenderManager";
|
|
10
|
-
import
|
|
7
|
+
import Control from "sap/ui/core/Control"; //import Control from "sap/ui/mdc/field/FieldBase";
|
|
8
|
+
import type { IFormContent } from "sap/ui/core/library";
|
|
9
|
+
import type RenderManager from "sap/ui/core/RenderManager";
|
|
10
|
+
import type { ConditionObject } from "sap/ui/mdc/condition/Condition";
|
|
11
|
+
import Condition from "sap/ui/mdc/condition/Condition";
|
|
11
12
|
import ConditionValidated from "sap/ui/mdc/enum/ConditionValidated";
|
|
12
13
|
import ConditionsType from "sap/ui/mdc/field/ConditionsType";
|
|
13
14
|
import JSONModel from "sap/ui/model/json/JSONModel";
|
|
@@ -50,8 +51,8 @@ export default class CustomFilterFieldContentWrapper extends Control implements
|
|
|
50
51
|
@event()
|
|
51
52
|
conditionsChange!: Function;
|
|
52
53
|
|
|
53
|
-
//
|
|
54
|
-
//
|
|
54
|
+
// Note: FieldBase might be used as base control (instead of Control) in a later version;
|
|
55
|
+
// in that case, you should add a 'change' event and bubble it to the corresponding handlers
|
|
55
56
|
|
|
56
57
|
private _filterModel: any;
|
|
57
58
|
private _conditionsObserver: any;
|
|
@@ -69,10 +70,10 @@ export default class CustomFilterFieldContentWrapper extends Control implements
|
|
|
69
70
|
/**
|
|
70
71
|
* Maps an array of filter values to an array of conditions.
|
|
71
72
|
*
|
|
72
|
-
* @param
|
|
73
|
-
* @param
|
|
73
|
+
* @param filterValues Array of filter value bindings or a filter value string
|
|
74
|
+
* @param [operator] The operator to be used (optional) - if not set, the default operator (EQ) will be used
|
|
74
75
|
* @private
|
|
75
|
-
* @returns
|
|
76
|
+
* @returns Array of filter conditions
|
|
76
77
|
*/
|
|
77
78
|
static _filterValuesToConditions(filterValues: any | any[], operator?: string): ConditionObject[] {
|
|
78
79
|
let formatOptions: FormatOptionsType = { operators: [] },
|
|
@@ -87,7 +88,7 @@ export default class CustomFilterFieldContentWrapper extends Control implements
|
|
|
87
88
|
formatOptions = { operators: [filterValues.operator] };
|
|
88
89
|
filterValues = filterValues.values;
|
|
89
90
|
} else if (filterValues !== undefined && typeof filterValues !== "object" && typeof filterValues !== "string") {
|
|
90
|
-
throw new Error(
|
|
91
|
+
throw new Error(`FilterUtils.js#_filterValuesToConditions: Unexpected type of input parameter vValues: ${typeof filterValues}`);
|
|
91
92
|
}
|
|
92
93
|
|
|
93
94
|
const conditionsType: any = new ConditionsType(formatOptions);
|
|
@@ -115,10 +116,10 @@ export default class CustomFilterFieldContentWrapper extends Control implements
|
|
|
115
116
|
/**
|
|
116
117
|
* Maps an array of conditions to a comma separated list of filter values.
|
|
117
118
|
*
|
|
118
|
-
* @param
|
|
119
|
-
* @param
|
|
119
|
+
* @param conditions Array of filter conditions
|
|
120
|
+
* @param formatOptions Format options that specifies a condition type
|
|
120
121
|
* @private
|
|
121
|
-
* @returns
|
|
122
|
+
* @returns Concatenated string of filter values
|
|
122
123
|
*/
|
|
123
124
|
static _conditionsToFilterModelString(conditions: object[], formatOptions: FormatOptionsType): string {
|
|
124
125
|
const conditionsType = new ConditionsType(formatOptions);
|
|
@@ -136,7 +137,7 @@ export default class CustomFilterFieldContentWrapper extends Control implements
|
|
|
136
137
|
/**
|
|
137
138
|
* Listens to filter model changes and updates wrapper property "conditions".
|
|
138
139
|
*
|
|
139
|
-
* @param
|
|
140
|
+
* @param changeEvent Event triggered by a filter model change
|
|
140
141
|
* @private
|
|
141
142
|
*/
|
|
142
143
|
_handleFilterModelChange(changeEvent: any): void {
|
|
@@ -148,7 +149,7 @@ export default class CustomFilterFieldContentWrapper extends Control implements
|
|
|
148
149
|
/**
|
|
149
150
|
* Listens to "conditions" changes and updates the filter model.
|
|
150
151
|
*
|
|
151
|
-
* @param
|
|
152
|
+
* @param conditions Event triggered by a "conditions" change
|
|
152
153
|
* @private
|
|
153
154
|
*/
|
|
154
155
|
_handleConditionsChange(conditions: any): void {
|
|
@@ -164,48 +165,57 @@ export default class CustomFilterFieldContentWrapper extends Control implements
|
|
|
164
165
|
this._conditionsObserver.observe(this, {
|
|
165
166
|
properties: ["conditions"]
|
|
166
167
|
});
|
|
168
|
+
this._filterModel = new JSONModel();
|
|
169
|
+
this._filterModel.attachPropertyChange(this._handleFilterModelChange, this);
|
|
170
|
+
this.setModel(this._filterModel, CustomFilterFieldContentWrapper.FILTER_MODEL_ALIAS);
|
|
167
171
|
}
|
|
168
172
|
|
|
169
173
|
/**
|
|
170
|
-
*
|
|
174
|
+
* Overrides {@link sap.ui.core.Control#clone Control.clone} to clone additional
|
|
175
|
+
* internal states.
|
|
171
176
|
*
|
|
172
|
-
* @param
|
|
173
|
-
* @
|
|
177
|
+
* @param [sIdSuffix] A suffix to be appended to the cloned control id
|
|
178
|
+
* @param [aLocalIds] An array of local IDs within the cloned hierarchy (internally used)
|
|
179
|
+
* @returns Reference to the newly created clone
|
|
180
|
+
* @protected
|
|
174
181
|
*/
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
182
|
+
clone(sIdSuffix: string | undefined, aLocalIds: string[] | undefined): this {
|
|
183
|
+
const clone = super.clone(sIdSuffix, aLocalIds);
|
|
184
|
+
// During cloning, the old model will be copied and overwrites any new model (same alias) that
|
|
185
|
+
// you introduce during init(); hence you need to overwrite it again by the new one that you've
|
|
186
|
+
// created during init() (i.e. clone._filterModel); that standard behaviour of super.clone()
|
|
187
|
+
// can't even be suppressed in an own constructor; for a detailed investigation of the cloning,
|
|
188
|
+
// please overwrite the setModel() method and check the list of callers and steps induced by them.
|
|
189
|
+
clone.setModel(clone._filterModel, CustomFilterFieldContentWrapper.FILTER_MODEL_ALIAS);
|
|
190
|
+
return clone;
|
|
179
191
|
}
|
|
180
192
|
|
|
181
193
|
/**
|
|
182
|
-
*
|
|
194
|
+
* Listens to property changes.
|
|
183
195
|
*
|
|
196
|
+
* @param changes Property changes
|
|
184
197
|
* @private
|
|
185
198
|
*/
|
|
186
|
-
|
|
187
|
-
if (
|
|
188
|
-
this.
|
|
189
|
-
this._filterModel.attachPropertyChange(this._handleFilterModelChange, this);
|
|
190
|
-
this.setModel(this._filterModel, CustomFilterFieldContentWrapper.FILTER_MODEL_ALIAS);
|
|
199
|
+
_observeChanges(changes: any): void {
|
|
200
|
+
if (changes.name === "conditions") {
|
|
201
|
+
this._handleConditionsChange(changes.current);
|
|
191
202
|
}
|
|
192
203
|
}
|
|
193
204
|
|
|
194
205
|
/**
|
|
195
206
|
* Gets the content of this wrapper control.
|
|
196
207
|
*
|
|
197
|
-
* @returns
|
|
208
|
+
* @returns The wrapper content
|
|
198
209
|
* @private
|
|
199
210
|
*/
|
|
200
211
|
getContent(): Control {
|
|
201
|
-
this._registerFilterModel();
|
|
202
212
|
return this.getAggregation("content") as Control;
|
|
203
213
|
}
|
|
204
214
|
|
|
205
215
|
/**
|
|
206
216
|
* Gets the value for control property 'conditions'.
|
|
207
217
|
*
|
|
208
|
-
* @returns
|
|
218
|
+
* @returns Array of filter conditions
|
|
209
219
|
* @private
|
|
210
220
|
*/
|
|
211
221
|
getConditions(): object[] {
|
|
@@ -215,17 +225,19 @@ export default class CustomFilterFieldContentWrapper extends Control implements
|
|
|
215
225
|
/**
|
|
216
226
|
* Sets the value for control property 'conditions'.
|
|
217
227
|
*
|
|
218
|
-
* @param
|
|
228
|
+
* @param [conditions] Array of filter conditions
|
|
229
|
+
* @returns Reference to this wrapper
|
|
219
230
|
* @private
|
|
220
231
|
*/
|
|
221
|
-
setConditions(conditions: object[]):
|
|
222
|
-
this.setProperty("conditions", conditions);
|
|
232
|
+
setConditions(conditions: object[]): this {
|
|
233
|
+
this.setProperty("conditions", conditions || []);
|
|
234
|
+
return this;
|
|
223
235
|
}
|
|
224
236
|
|
|
225
237
|
/**
|
|
226
238
|
* Gets the filter model alias 'filterValues'.
|
|
227
239
|
*
|
|
228
|
-
* @returns
|
|
240
|
+
* @returns The filter model
|
|
229
241
|
* @private
|
|
230
242
|
*/
|
|
231
243
|
getFilterModelAlias(): string {
|
|
@@ -236,11 +248,11 @@ export default class CustomFilterFieldContentWrapper extends Control implements
|
|
|
236
248
|
* Updates the property "conditions" with filter values
|
|
237
249
|
* sent by ExtensionAPI#setFilterValues().
|
|
238
250
|
*
|
|
239
|
-
* @param
|
|
240
|
-
* @param
|
|
251
|
+
* @param values The filter values
|
|
252
|
+
* @param [operator] The operator name
|
|
241
253
|
* @private
|
|
242
254
|
*/
|
|
243
|
-
updateConditionsByFilterValues(values: any, operator
|
|
255
|
+
updateConditionsByFilterValues(values: any, operator?: string): void {
|
|
244
256
|
const conditions = CustomFilterFieldContentWrapper._filterValuesToConditions(values, operator);
|
|
245
257
|
this.setConditions(conditions);
|
|
246
258
|
}
|
|
@@ -249,15 +261,10 @@ export default class CustomFilterFieldContentWrapper extends Control implements
|
|
|
249
261
|
* Updates filter model with conditions
|
|
250
262
|
* sent by the {@link sap.ui.mdc.FilterField FilterField}.
|
|
251
263
|
*
|
|
252
|
-
* @param
|
|
264
|
+
* @param conditions Array of filter conditions
|
|
253
265
|
* @private
|
|
254
266
|
*/
|
|
255
267
|
updateFilterModelByConditions(conditions: any[]): void {
|
|
256
|
-
// When the filter field is created via "Adapt Filter"
|
|
257
|
-
// this handler is fired before the filter model is created
|
|
258
|
-
// -> in general, create it, if needed!
|
|
259
|
-
// TODO: Consider using method Control#clone() to register filter model
|
|
260
|
-
this._registerFilterModel();
|
|
261
268
|
const operator = conditions[0]?.operator || "";
|
|
262
269
|
const formatOptions: FormatOptionsType = operator !== "" ? { operators: [operator] } : { operators: [] };
|
|
263
270
|
if (this.getBindingContext(CustomFilterFieldContentWrapper.FILTER_MODEL_ALIAS)) {
|
|
@@ -269,8 +276,6 @@ export default class CustomFilterFieldContentWrapper extends Control implements
|
|
|
269
276
|
}
|
|
270
277
|
}
|
|
271
278
|
|
|
272
|
-
// TODO: Check, if implementation of _setAriaLabelledBy() is needed ?
|
|
273
|
-
|
|
274
279
|
getAccessibilityInfo(): any {
|
|
275
280
|
const content = this.getContent();
|
|
276
281
|
return content?.getAccessibilityInfo?.() || {};
|
|
@@ -68,7 +68,7 @@ sap.ui.define(["sap/fe/core/CommonUtils", "sap/fe/core/helpers/ClassSupport", "s
|
|
|
68
68
|
},
|
|
69
69
|
params: oShellHash.params
|
|
70
70
|
};
|
|
71
|
-
var sQuickViewPageTitleLinkIntent = oNavArgs.target.semanticObject
|
|
71
|
+
var sQuickViewPageTitleLinkIntent = "".concat(oNavArgs.target.semanticObject, "-").concat(oNavArgs.target.action);
|
|
72
72
|
|
|
73
73
|
if (sQuickViewPageTitleLinkIntent && _this2.oCrossAppNavigator && _this2.oCrossAppNavigator.isNavigationSupported([sQuickViewPageTitleLinkIntent])) {
|
|
74
74
|
if (sQuickViewPageTitleLinkIntent && sQuickViewPageTitleLinkIntent !== "") {
|
|
@@ -96,6 +96,7 @@ sap.ui.define(["sap/fe/core/CommonUtils", "sap/fe/core/helpers/ClassSupport", "s
|
|
|
96
96
|
oShellHash = oShellServiceHelper.parseShellHash(sTargetHref);
|
|
97
97
|
} else {
|
|
98
98
|
oShellHash = oShellServiceHelper.parseShellHash(sQuickViewPageTitleLinkIntent);
|
|
99
|
+
oShellHash.params = oNavArgs.params;
|
|
99
100
|
}
|
|
100
101
|
}
|
|
101
102
|
} else {
|
|
@@ -167,4 +168,4 @@ sap.ui.define(["sap/fe/core/CommonUtils", "sap/fe/core/helpers/ClassSupport", "s
|
|
|
167
168
|
})), _class2)) || _class);
|
|
168
169
|
return CustomQuickViewPage;
|
|
169
170
|
}, false);
|
|
170
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkN1c3RvbVF1aWNrVmlld1BhZ2UudHMiXSwibmFtZXMiOlsiQ3VzdG9tUXVpY2tWaWV3UGFnZSIsImRlZmluZVVJNUNsYXNzIiwiYWdncmVnYXRpb24iLCJ0eXBlIiwibXVsdGlwbGUiLCJzaW5ndWxhck5hbWUiLCJpc0RlZmF1bHQiLCJvbkJlZm9yZVJlbmRlcmluZyIsIm9FdmVudCIsImdldFBhcmVudCIsImlzQSIsImdldFByb3BlcnR5Iiwic2V0Q3Jvc3NBcHBOYXZDYWxsYmFjayIsInNRdWlja1ZpZXdQYWdlVGl0bGVMaW5rSHJlZiIsIkRlbGVnYXRlVXRpbCIsImdldEN1c3RvbURhdGEiLCJvVmlldyIsIkNvbW1vblV0aWxzIiwiZ2V0VGFyZ2V0VmlldyIsIm9BcHBDb21wb25lbnQiLCJnZXRBcHBDb21wb25lbnQiLCJvU2hlbGxTZXJ2aWNlSGVscGVyIiwiZ2V0U2hlbGxTZXJ2aWNlcyIsIm9TaGVsbEhhc2giLCJwYXJzZVNoZWxsSGFzaCIsIm9OYXZBcmdzIiwidGFyZ2V0Iiwic2VtYW50aWNPYmplY3QiLCJhY3Rpb24iLCJwYXJhbXMiLCJzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudCIsIm9Dcm9zc0FwcE5hdmlnYXRvciIsImlzTmF2aWdhdGlvblN1cHBvcnRlZCIsInNUYXJnZXRIcmVmIiwib0xpbmtDb250cm9sIiwiX2FMaW5rcyIsImdldE1vZGVsIiwibGVuZ3RoIiwiaSIsImtleSIsImhyZWYiLCJLZWVwQWxpdmVIZWxwZXIiLCJzdG9yZUNvbnRyb2xSZWZyZXNoU3RyYXRlZ3lGb3JIYXNoIiwib0N1cnJlbnRTaGVsbEhhc2giLCJ3aW5kb3ciLCJsb2NhdGlvbiIsImhhc2giLCJhcHBTcGVjaWZpY1JvdXRlIiwib1BhZ2VDb250ZW50IiwiZ2V0UGFnZUNvbnRlbnQiLCJvRm9ybSIsImZvcm0iLCJfYUNvbnRlbnQiLCJjdXN0b21Db250ZW50IiwiZm9yRWFjaCIsIl9vQ29udGVudCIsIl9vQ29udGVudENsb25lIiwiY2xvbmUiLCJzZXRNb2RlbCIsInNldEJpbmRpbmdDb250ZXh0IiwiZ2V0QmluZGluZ0NvbnRleHQiLCJhZGRDb250ZW50Iiwic2V0VGltZW91dCIsInJlcmVuZGVyIiwiUXVpY2tWaWV3UGFnZSJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BTU1BLG1CLFdBRExDLGNBQWMsQ0FBQywwQ0FBRCxDLFVBRWJDLFdBQVcsQ0FBQztBQUFFQyxJQUFBQSxJQUFJLEVBQUUscUJBQVI7QUFBK0JDLElBQUFBLFFBQVEsRUFBRTtBQUF6QyxHQUFELEMsVUFFWEYsV0FBVyxDQUFDO0FBQUVDLElBQUFBLElBQUksRUFBRSxzQkFBUjtBQUFnQ0MsSUFBQUEsUUFBUSxFQUFFLElBQTFDO0FBQWdEQyxJQUFBQSxZQUFZLEVBQUUsT0FBOUQ7QUFBdUVDLElBQUFBLFNBQVMsRUFBRTtBQUFsRixHQUFELEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztXQUdaQyxpQixHQUFBLDJCQUFrQkMsTUFBbEIsRUFBK0I7QUFBQTs7QUFDOUIsVUFDQyxLQUFLQyxTQUFMLE1BQ0EsS0FBS0EsU0FBTCxHQUFpQkMsR0FBakIsQ0FBcUIseUNBQXJCLENBREEsSUFFQSxLQUFLRCxTQUFMLEdBQWlCRSxXQUFqQixDQUE2QixXQUE3QixNQUE4QyxJQUgvQyxFQUlFO0FBQ0QsYUFBS0Msc0JBQUwsQ0FBNEIsWUFBTTtBQUNqQyxjQUFNQywyQkFBMkIsR0FBSUMsWUFBWSxDQUFDQyxhQUFkLENBQW9DLE1BQXBDLEVBQTBDLFdBQTFDLENBQXBDO0FBQ0EsY0FBTUMsS0FBSyxHQUFHQyxXQUFXLENBQUNDLGFBQVosQ0FBMEIsTUFBMUIsQ0FBZDtBQUNBLGNBQU1DLGFBQWEsR0FBR0YsV0FBVyxDQUFDRyxlQUFaLENBQTRCSixLQUE1QixDQUF0QjtBQUNBLGNBQU1LLG1CQUFtQixHQUFHRixhQUFhLENBQUNHLGdCQUFkLEVBQTVCO0FBQ0EsY0FBSUMsVUFBVSxHQUFHRixtQkFBbUIsQ0FBQ0csY0FBcEIsQ0FBbUNYLDJCQUFu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LGlCQUFpQixDQUFDaEIsY0FEM0I7QUFFUEMsZ0JBQUFBLE1BQU0sRUFBRWUsaUJBQWlCLENBQUNmLE1BRm5CO0FBR1BtQixnQkFBQUEsZ0JBQWdCLEVBQUVKLGlCQUFpQixDQUFDSTtBQUg3QixlQURGO0FBTU5sQixjQUFBQSxNQUFNLEVBQUVjLGlCQUFpQixDQUFDZDtBQU5wQixhQUFQO0FBUUE7QUFDRCxTQXBFRDtBQXFFQTs7QUFDRCwrQkFBTXRCLGlCQUFOLFlBQXdCQyxNQUF4Qjs7QUFDQSxVQUFNd0MsWUFBWSxHQUFHLEtBQUtDLGNBQUwsRUFBckI7QUFDQSxVQUFNQyxLQUFLLEdBQUdGLFlBQVksQ0FBQ0csSUFBM0I7O0FBQ0EsVUFBSUQsS0FBSixFQUFXO0FBQ1YsWUFBTUUsU0FBUyxHQUFHLEtBQUtDLGFBQXZCOztBQUNBLFlBQUlELFNBQVMsSUFBSUEsU0FBUyxDQUFDZixNQUFWLEdBQW1CLENBQXBDLEVBQXVDO0FBQ3RDZSxVQUFBQSxTQUFTLENBQUNFLE9BQVYsQ0FBa0IsVUFBQ0MsU0FBRCxFQUFvQjtBQUNyQyxnQkFBTUMsY0FBYyxHQUFHRCxTQUFTLENBQUNFLEtBQVYsRUFBdkI7O0FBQ0FELFlBQUFBLGNBQWMsQ0FBQ0UsUUFBZixDQUF3QixNQUFJLENBQUN0QixRQUFMLEVBQXhCOztBQUNBb0IsWUFBQUEsY0FBYyxDQUFDRyxpQkFBZixDQUFpQyxNQUFJLENBQUNDLGlCQUFMLEVBQWpDOztBQUNBVixZQUFBQSxLQUFLLENBQUNXLFVBQU4sQ0FBaUJMLGNBQWpCO0FBQ0EsV0FMRDs7QUFNQU0sVUFBQUEsVUFBVSxDQUFDLFlBQVk7QUFDdEJaLFlBQUFBLEtBQUssQ0FBQ2EsUUFBTjtBQUNBLFdBRlMsRUFFUCxDQUZPLENBQVY7QUFHQTtBQUNEO0FBQ0QsSzs7O0lBbkdnQ0MsYTs7Ozs7Ozs7Ozs7U0EyR25CaEUsbUIiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBDb21tb25VdGlscyBmcm9tIFwic2FwL2ZlL2NvcmUvQ29tbW9uVXRpbHNcIjtcbmltcG9ydCB7IGFnZ3JlZ2F0aW9uLCBkZWZpbmVVSTVDbGFzcyB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IEtlZXBBbGl2ZUhlbHBlciBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9LZWVwQWxpdmVIZWxwZXJcIjtcbmltcG9ydCBEZWxlZ2F0ZVV0aWwgZnJvbSBcInNhcC9mZS9tYWNyb3MvRGVsZWdhdGVVdGlsXCI7XG5pbXBvcnQgUXVpY2tWaWV3UGFnZSBmcm9tIFwic2FwL20vUXVpY2tWaWV3UGFnZVwiO1xuaW1wb3J0IENvbnRyb2wgZnJvbSBcInNhcC91aS9jb3JlL0NvbnRyb2xcIjtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLmNvcmUuY29udHJvbHMuQ3VzdG9tUXVpY2tWaWV3UGFnZVwiKVxuY2xhc3MgQ3VzdG9tUXVpY2tWaWV3UGFnZSBleHRlbmRzIFF1aWNrVmlld1BhZ2Uge1xuXHRAYWdncmVnYXRpb24oeyB0eXBlOiBcInNhcC51aS5jb3JlLkNvbnRyb2xcIiwgbXVsdGlwbGU6IHRydWUgfSlcblx0Y3VzdG9tQ29udGVudCE6IENvbnRyb2xbXTtcblx0QGFnZ3JlZ2F0aW9uKHsgdHlwZTogXCJzYXAubS5RdWlja1ZpZXdHcm91cFwiLCBtdWx0aXBsZTogdHJ1ZSwgc2luZ3VsYXJOYW1lOiBcImdyb3VwXCIsIGlzRGVmYXVsdDogdHJ1ZSB9KVxuXHRncm91cHMhOiBDb250cm9sW107XG5cblx0b25CZWZvcmVSZW5kZXJpbmcob0V2ZW50OiBhbnkpIHtcblx0XHRpZiAoXG5cdFx0XHR0aGlzLmdldFBhcmVudCgpICYmXG5cdFx0XHR0aGlzLmdldFBhcmVudCgpLmlzQShcInNhcC5mZS5jb3JlLmNvbnRyb2xzLkNvbmRpdGlvbmFsV3JhcHBlclwiKSAmJlxuXHRcdFx0dGhpcy5nZXRQYXJlbnQoKS5nZXRQcm9wZXJ0eShcImNvbmRpdGlvblwiKSA9PT0gdHJ1ZVxuXHRcdCkge1xuXHRcdFx0dGhpcy5zZXRDcm9zc0FwcE5hdkNhbGxiYWNrKCgpID0+IHtcblx0XHRcdFx0Y29uc3Qgc1F1aWNrVmlld1BhZ2VUaXRsZUxpbmtIcmVmID0gKERlbGVnYXRlVXRpbC5nZXRDdXN0b21EYXRhIGFzIGFueSkodGhpcywgXCJ0aXRsZUxpbmtcIik7XG5cdFx0XHRcdGNvbnN0IG9WaWV3ID0gQ29tbW9uVXRpbHMuZ2V0VGFyZ2V0Vmlldyh0aGlzKTtcblx0XHRcdFx0Y29uc3Qgb0FwcENvbXBvbmVudCA9IENvbW1vblV0aWxzLmdldEFwcENvbXBvbmVudChvVmlldyk7XG5cdFx0XHRcdGNvbnN0IG9TaGVsbFNlcnZpY2VIZWxwZXIgPSBvQXBwQ29tcG9uZW50LmdldFNoZWxsU2VydmljZXMoKTtcblx0XHRcdFx0bGV0IG9TaGVsbEhhc2ggPSBvU2hlbGxTZXJ2aWNlSGVscGVyLnBhcnNlU2hlbGxIYXNoKHNRdWlja1ZpZXdQYWdlVGl0bGVMaW5rSHJlZik7XG5cdFx0XHRcdGNvbnN0IG9OYXZBcmdzID0ge1xuXHRcdFx0XHRcdHRhcmdldDoge1xuXHRcdFx0XHRcdFx0c2VtYW50aWNPYmplY3Q6IG9TaGVsbEhhc2guc2VtYW50aWNPYmplY3QsXG5cdFx0XHRcdFx0XHRhY3Rpb246IG9TaGVsbEhhc2guYWN0aW9uXG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRwYXJhbXM6IG9TaGVsbEhhc2gucGFyYW1zXG5cdFx0XHRcdH07XG5cdFx0XHRcdGNvbnN0IHNRdWlja1ZpZXdQYWdlVGl0bGVMaW5rSW50ZW50ID0gb05hdkFyZ3MudGFyZ2V0LnNlbWFudGljT2JqZWN0ICsgXCItXCIgKyBvTmF2QXJncy50YXJnZXQuYWN0aW9uO1xuXG5cdFx0XHRcdGlmIChcblx0XHRcdFx0XHRzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudCAmJlxuXHRcdFx0XHRcdHRoaXMub0Nyb3NzQXBwTmF2aWdhdG9yICYmXG5cdFx0XHRcdFx0dGhpcy5vQ3Jvc3NBcHBOYXZpZ2F0b3IuaXNOYXZpZ2F0aW9uU3VwcG9ydGVkKFtzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudF0pXG5cdFx0XHRcdCkge1xuXHRcdFx0XHRcdGlmIChzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudCAmJiBzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudCAhPT0gXCJcIikge1xuXHRcdFx0XHRcdFx0aWYgKHR5cGVvZiBzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudCA9PT0gXCJzdHJpbmdcIiAmJiBzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudCAhPT0gXCJcIikge1xuXHRcdFx0XHRcdFx0XHRsZXQgc1RhcmdldEhyZWY7XG5cdFx0XHRcdFx0XHRcdGxldCBvTGlua0NvbnRyb2wgPSB0aGlzLmdldFBhcmVudCgpO1xuXHRcdFx0XHRcdFx0XHR3aGlsZSAob0xpbmtDb250cm9sICYmICFvTGlua0NvbnRyb2wuaXNBKFwic2FwLnVpLm1kYy5MaW5rXCIpKSB7XG5cdFx0XHRcdFx0XHRcdFx0b0xpbmtDb250cm9sID0gb0xpbmtDb250cm9sLmdldFBhcmVudCgpO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdGNvbnN0IF9hTGlua3MgPSBvTGlua0NvbnRyb2wuZ2V0TW9kZWwoXCIkc2FwdWltZGNMaW5rXCIpLmdldFByb3BlcnR5KFwiL2xpbmtJdGVtc1wiKTtcblx0XHRcdFx0XHRcdFx0aWYgKF9hTGlua3MpIHtcblx0XHRcdFx0XHRcdFx0XHRpZiAoX2FMaW5rcy5sZW5ndGggPiAwKSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb3IgKGxldCBpID0gMDsgaSA8IF9hTGlua3MubGVuZ3RoOyBpKyspIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0aWYgKF9hTGlua3NbaV0ua2V5ID09PSBzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudCkge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHNUYXJnZXRIcmVmID0gX2FMaW5rc1tpXS5ocmVmO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0XHRpZiAoc1RhcmdldEhyZWYpIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0b1NoZWxsSGFzaCA9IG9TaGVsbFNlcnZpY2VIZWxwZXIucGFyc2VTaGVsbEhhc2goc1RhcmdldEhyZWYpO1xuXHRcdFx0XHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0b1NoZWxsSGFzaCA9IG9TaGVsbFNlcnZpY2VIZWxwZXIucGFyc2VTaGVsbEhhc2goc1F1aWNrVmlld1BhZ2VUaXRsZUxpbmtJbnRlbnQpO1xuXHRcdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0XHRvU2hlbGxIYXNoID0gb1NoZWxsU2VydmljZUhlbHBlci5wYXJzZVNoZWxsSGFzaChzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudCk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0S2VlcEFsaXZlSGVscGVyLnN0b3JlQ29udHJvbFJlZnJlc2hTdHJhdGVneUZvckhhc2gob1ZpZXcsIG9TaGVsbEhhc2gpO1xuXHRcdFx0XHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdFx0XHRcdHRhcmdldDoge1xuXHRcdFx0XHRcdFx0XHRcdFx0c2VtYW50aWNPYmplY3Q6IG9TaGVsbEhhc2guc2VtYW50aWNPYmplY3QsXG5cdFx0XHRcdFx0XHRcdFx0XHRhY3Rpb246IG9TaGVsbEhhc2guYWN0aW9uXG5cdFx0XHRcdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRcdFx0XHRwYXJhbXM6IG9TaGVsbEhhc2gucGFyYW1zXG5cdFx0XHRcdFx0XHRcdH07XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdGNvbnN0IG9DdXJyZW50U2hlbGxIYXNoID0gb1NoZWxsU2VydmljZUhlbHBlci5wYXJzZVNoZWxsSGFzaCh3aW5kb3cubG9jYXRpb24uaGFzaCk7XG5cdFx0XHRcdFx0S2VlcEFsaXZlSGVscGVyLnN0b3JlQ29udHJvbFJlZnJlc2hTdHJhdGVneUZvckhhc2gob1ZpZXcsIG9DdXJyZW50U2hlbGxIYXNoKTtcblxuXHRcdFx0XHRcdHJldHVybiB7XG5cdFx0XHRcdFx0XHR0YXJnZXQ6IHtcblx0XHRcdFx0XHRcdFx0c2VtYW50aWNPYmplY3Q6IG9DdXJyZW50U2hlbGxIYXNoLnNlbWFudGljT2JqZWN0LFxuXHRcdFx0XHRcdFx0XHRhY3Rpb246IG9DdXJyZW50U2hlbGxIYXNoLmFjdGlvbixcblx0XHRcdFx0XHRcdFx0YXBwU3BlY2lmaWNSb3V0ZTogb0N1cnJlbnRTaGVsbEhhc2guYXBwU3BlY2lmaWNSb3V0ZVxuXHRcdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRcdHBhcmFtczogb0N1cnJlbnRTaGVsbEhhc2gucGFyYW1zXG5cdFx0XHRcdFx0fTtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0fVxuXHRcdHN1cGVyLm9uQmVmb3JlUmVuZGVyaW5nKG9FdmVudCk7XG5cdFx0Y29uc3Qgb1BhZ2VDb250ZW50ID0gdGhpcy5nZXRQYWdlQ29udGVudCgpO1xuXHRcdGNvbnN0IG9Gb3JtID0gb1BhZ2VDb250ZW50LmZvcm07XG5cdFx0aWYgKG9Gb3JtKSB7XG5cdFx0XHRjb25zdCBfYUNvbnRlbnQgPSB0aGlzLmN1c3RvbUNvbnRlbnQ7XG5cdFx0XHRpZiAoX2FDb250ZW50ICYmIF9hQ29udGVudC5sZW5ndGggPiAwKSB7XG5cdFx0XHRcdF9hQ29udGVudC5mb3JFYWNoKChfb0NvbnRlbnQ6IGFueSkgPT4ge1xuXHRcdFx0XHRcdGNvbnN0IF9vQ29udGVudENsb25lID0gX29Db250ZW50LmNsb25lKCk7XG5cdFx0XHRcdFx0X29Db250ZW50Q2xvbmUuc2V0TW9kZWwodGhpcy5nZXRNb2RlbCgpKTtcblx0XHRcdFx0XHRfb0NvbnRlbnRDbG9uZS5zZXRCaW5kaW5nQ29udGV4dCh0aGlzLmdldEJpbmRpbmdDb250ZXh0KCkpO1xuXHRcdFx0XHRcdG9Gb3JtLmFkZENvbnRlbnQoX29Db250ZW50Q2xvbmUpO1xuXHRcdFx0XHR9KTtcblx0XHRcdFx0c2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdFx0b0Zvcm0ucmVyZW5kZXIoKTtcblx0XHRcdFx0fSwgMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5pbnRlcmZhY2UgQ3VzdG9tUXVpY2tWaWV3UGFnZSB7XG5cdC8vIFByaXZhdGUgaW4gVUk1XG5cdG9Dcm9zc0FwcE5hdmlnYXRvcjogYW55O1xuXHQvLyBQcml2YXRlIGluIFVJNVxuXHRnZXRQYWdlQ29udGVudCgpOiBhbnk7XG59XG5leHBvcnQgZGVmYXVsdCBDdXN0b21RdWlja1ZpZXdQYWdlO1xuIl19
|
|
171
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkN1c3RvbVF1aWNrVmlld1BhZ2UudHMiXSwibmFtZXMiOlsiQ3VzdG9tUXVpY2tWaWV3UGFnZSIsImRlZmluZVVJNUNsYXNzIiwiYWdncmVnYXRpb24iLCJ0eXBlIiwibXVsdGlwbGUiLCJzaW5ndWxhck5hbWUiLCJpc0RlZmF1bHQiLCJvbkJlZm9yZVJlbmRlcmluZyIsIm9FdmVudCIsImdldFBhcmVudCIsImlzQSIsImdldFByb3BlcnR5Iiwic2V0Q3Jvc3NBcHBOYXZDYWxsYmFjayIsInNRdWlja1ZpZXdQYWdlVGl0bGVMaW5rSHJlZiIsIkRlbGVnYXRlVXRpbCIsImdldEN1c3RvbURhdGEiLCJvVmlldyIsIkNvbW1vblV0aWxzIiwiZ2V0VGFyZ2V0VmlldyIsIm9BcHBDb21wb25lbnQiLCJnZXRBcHBDb21wb25lbnQiLCJvU2hlbGxTZXJ2aWNlSGVscGVyIiwiZ2V0U2hlbGxTZXJ2aWNlcyIsIm9TaGVsbEhhc2giLCJwYXJzZVNoZWxsSGFzaCIsIm9OYXZBcmdzIiwidGFyZ2V0Iiwic2VtYW50aWNPYmplY3QiLCJhY3Rpb24iLCJwYXJhbXMiLCJzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudCIsIm9Dcm9zc0FwcE5hdmlnYXRvciIsImlzTmF2aWdhdGlvblN1cHBvcnRlZCIsInNUYXJnZXRIcmVmIiwib0xpbmtDb250cm9sIiwiX2FMaW5rcyIsImdldE1vZGVsIiwibGVuZ3RoIiwiaSIsImtleSIsImhyZWYiLCJLZWVwQWxpdmVIZWxwZXIiLCJzdG9yZUNvbnRyb2xSZWZyZXNoU3RyYXRlZ3lGb3JIYXNoIiwib0N1cnJlbnRTaGVsbEhhc2giLCJ3aW5kb3ciLCJsb2NhdGlvbiIsImhhc2giLCJhcHBTcGVjaWZpY1JvdXRlIiwib1BhZ2VDb250ZW50IiwiZ2V0UGFnZUNvbnRlbnQiLCJvRm9ybSIsImZvcm0iLCJfYUNvbnRlbnQiLCJjdXN0b21Db250ZW50IiwiZm9yRWFjaCIsIl9vQ29udGVudCIsIl9vQ29udGVudENsb25lIiwiY2xvbmUiLCJzZXRNb2RlbCIsInNldEJpbmRpbmdDb250ZXh0IiwiZ2V0QmluZGluZ0NvbnRleHQiLCJhZGRDb250ZW50Iiwic2V0VGltZW91dCIsInJlcmVuZGVyIiwiUXVpY2tWaWV3UGFnZSJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BTU1BLG1CLFdBRExDLGNBQWMsQ0FBQywwQ0FBRCxDLFVBRWJDLFdBQVcsQ0FBQztBQUFFQyxJQUFBQSxJQUFJLEVBQUUscUJBQVI7QUFBK0JDLElBQUFBLFFBQVEsRUFBRTtBQUF6QyxHQUFELEMsVUFFWEYsV0FBVyxDQUFDO0FBQUVDLElBQUFBLElBQUksRUFBRSxzQkFBUjtBQUFnQ0MsSUFBQUEsUUFBUSxFQUFFLElBQTFDO0FBQWdEQyxJQUFBQSxZQUFZLEVBQUUsT0FBOUQ7QUFBdUVDLElBQUFBLFNBQVMsRUFBRTtBQUFsRixHQUFELEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztXQUdaQyxpQixHQUFBLDJCQUFrQkMsTUFBbEIsRUFBK0I7QUFBQTs7QUFDOUIsVUFDQyxLQUFLQyxTQUFMLE1BQ0EsS0FBS0EsU0FBTCxHQUFpQkMsR0FBakIsQ0FBcUIseUNBQXJCLENBREEsSUFFQSxLQUFLRCxTQUFMLEdBQWlCRSxXQUFqQixDQUE2QixXQUE3QixNQUE4QyxJQUgvQyxFQUlFO0FBQ0QsYUFBS0Msc0JBQUwsQ0FBNEIsWUFBTTtBQUNqQyxjQUFNQywyQkFBMkIsR0FBSUMsWUFBWSxDQUFDQyxhQUFkLENBQW9DLE1BQXBDLEVBQTBDLFdBQTFDLENBQXBDO0FBQ0EsY0FBTUMsS0FBSyxHQUFHQyxXQUFXLENBQUNDLGFBQVosQ0FBMEIsTUFBMUIsQ0FBZDtBQUNBLGNBQU1DLGFBQWEsR0FBR0YsV0FBVyxDQUFDRyxlQUFaLENBQTRCSixLQUE1QixDQUF0QjtBQUNBLGNBQU1LLG1CQUFtQixHQUFHRixhQUFhLENBQUNHLGdCQUFkLEVBQTVCO0FBQ0EsY0FBSUMsVUFBVSxHQUFHRixtQkFBbUIsQ0FBQ0csY0FBcEIsQ0FBbUNYLDJCQUFu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IENvbW1vblV0aWxzIGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IHsgYWdncmVnYXRpb24sIGRlZmluZVVJNUNsYXNzIH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgS2VlcEFsaXZlSGVscGVyIGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0tlZXBBbGl2ZUhlbHBlclwiO1xuaW1wb3J0IERlbGVnYXRlVXRpbCBmcm9tIFwic2FwL2ZlL21hY3Jvcy9EZWxlZ2F0ZVV0aWxcIjtcbmltcG9ydCBRdWlja1ZpZXdQYWdlIGZyb20gXCJzYXAvbS9RdWlja1ZpZXdQYWdlXCI7XG5pbXBvcnQgdHlwZSBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5cbkBkZWZpbmVVSTVDbGFzcyhcInNhcC5mZS5jb3JlLmNvbnRyb2xzLkN1c3RvbVF1aWNrVmlld1BhZ2VcIilcbmNsYXNzIEN1c3RvbVF1aWNrVmlld1BhZ2UgZXh0ZW5kcyBRdWlja1ZpZXdQYWdlIHtcblx0QGFnZ3JlZ2F0aW9uKHsgdHlwZTogXCJzYXAudWkuY29yZS5Db250cm9sXCIsIG11bHRpcGxlOiB0cnVlIH0pXG5cdGN1c3RvbUNvbnRlbnQhOiBDb250cm9sW107XG5cdEBhZ2dyZWdhdGlvbih7IHR5cGU6IFwic2FwLm0uUXVpY2tWaWV3R3JvdXBcIiwgbXVsdGlwbGU6IHRydWUsIHNpbmd1bGFyTmFtZTogXCJncm91cFwiLCBpc0RlZmF1bHQ6IHRydWUgfSlcblx0Z3JvdXBzITogQ29udHJvbFtdO1xuXG5cdG9uQmVmb3JlUmVuZGVyaW5nKG9FdmVudDogYW55KSB7XG5cdFx0aWYgKFxuXHRcdFx0dGhpcy5nZXRQYXJlbnQoKSAmJlxuXHRcdFx0dGhpcy5nZXRQYXJlbnQoKS5pc0EoXCJzYXAuZmUuY29yZS5jb250cm9scy5Db25kaXRpb25hbFdyYXBwZXJcIikgJiZcblx0XHRcdHRoaXMuZ2V0UGFyZW50KCkuZ2V0UHJvcGVydHkoXCJjb25kaXRpb25cIikgPT09IHRydWVcblx0XHQpIHtcblx0XHRcdHRoaXMuc2V0Q3Jvc3NBcHBOYXZDYWxsYmFjaygoKSA9PiB7XG5cdFx0XHRcdGNvbnN0IHNRdWlja1ZpZXdQYWdlVGl0bGVMaW5rSHJlZiA9IChEZWxlZ2F0ZVV0aWwuZ2V0Q3VzdG9tRGF0YSBhcyBhbnkpKHRoaXMsIFwidGl0bGVMaW5rXCIpO1xuXHRcdFx0XHRjb25zdCBvVmlldyA9IENvbW1vblV0aWxzLmdldFRhcmdldFZpZXcodGhpcyk7XG5cdFx0XHRcdGNvbnN0IG9BcHBDb21wb25lbnQgPSBDb21tb25VdGlscy5nZXRBcHBDb21wb25lbnQob1ZpZXcpO1xuXHRcdFx0XHRjb25zdCBvU2hlbGxTZXJ2aWNlSGVscGVyID0gb0FwcENvbXBvbmVudC5nZXRTaGVsbFNlcnZpY2VzKCk7XG5cdFx0XHRcdGxldCBvU2hlbGxIYXNoID0gb1NoZWxsU2VydmljZUhlbHBlci5wYXJzZVNoZWxsSGFzaChzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0hyZWYpO1xuXHRcdFx0XHRjb25zdCBvTmF2QXJncyA9IHtcblx0XHRcdFx0XHR0YXJnZXQ6IHtcblx0XHRcdFx0XHRcdHNlbWFudGljT2JqZWN0OiBvU2hlbGxIYXNoLnNlbWFudGljT2JqZWN0LFxuXHRcdFx0XHRcdFx0YWN0aW9uOiBvU2hlbGxIYXNoLmFjdGlvblxuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0cGFyYW1zOiBvU2hlbGxIYXNoLnBhcmFtc1xuXHRcdFx0XHR9O1xuXHRcdFx0XHRjb25zdCBzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudCA9IGAke29OYXZBcmdzLnRhcmdldC5zZW1hbnRpY09iamVjdH0tJHtvTmF2QXJncy50YXJnZXQuYWN0aW9ufWA7XG5cblx0XHRcdFx0aWYgKFxuXHRcdFx0XHRcdHNRdWlja1ZpZXdQYWdlVGl0bGVMaW5rSW50ZW50ICYmXG5cdFx0XHRcdFx0dGhpcy5vQ3Jvc3NBcHBOYXZpZ2F0b3IgJiZcblx0XHRcdFx0XHR0aGlzLm9Dcm9zc0FwcE5hdmlnYXRvci5pc05hdmlnYXRpb25TdXBwb3J0ZWQoW3NRdWlja1ZpZXdQYWdlVGl0bGVMaW5rSW50ZW50XSlcblx0XHRcdFx0KSB7XG5cdFx0XHRcdFx0aWYgKHNRdWlja1ZpZXdQYWdlVGl0bGVMaW5rSW50ZW50ICYmIHNRdWlja1ZpZXdQYWdlVGl0bGVMaW5rSW50ZW50ICE9PSBcIlwiKSB7XG5cdFx0XHRcdFx0XHRpZiAodHlwZW9mIHNRdWlja1ZpZXdQYWdlVGl0bGVMaW5rSW50ZW50ID09PSBcInN0cmluZ1wiICYmIHNRdWlja1ZpZXdQYWdlVGl0bGVMaW5rSW50ZW50ICE9PSBcIlwiKSB7XG5cdFx0XHRcdFx0XHRcdGxldCBzVGFyZ2V0SHJlZjtcblx0XHRcdFx0XHRcdFx0bGV0IG9MaW5rQ29udHJvbCA9IHRoaXMuZ2V0UGFyZW50KCk7XG5cdFx0XHRcdFx0XHRcdHdoaWxlIChvTGlua0NvbnRyb2wgJiYgIW9MaW5rQ29udHJvbC5pc0EoXCJzYXAudWkubWRjLkxpbmtcIikpIHtcblx0XHRcdFx0XHRcdFx0XHRvTGlua0NvbnRyb2wgPSBvTGlua0NvbnRyb2wuZ2V0UGFyZW50KCk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0Y29uc3QgX2FMaW5rcyA9IG9MaW5rQ29udHJvbC5nZXRNb2RlbChcIiRzYXB1aW1kY0xpbmtcIikuZ2V0UHJvcGVydHkoXCIvbGlua0l0ZW1zXCIpO1xuXHRcdFx0XHRcdFx0XHRpZiAoX2FMaW5rcykge1xuXHRcdFx0XHRcdFx0XHRcdGlmIChfYUxpbmtzLmxlbmd0aCA+IDApIHtcblx0XHRcdFx0XHRcdFx0XHRcdGZvciAobGV0IGkgPSAwOyBpIDwgX2FMaW5rcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRpZiAoX2FMaW5rc1tpXS5rZXkgPT09IHNRdWlja1ZpZXdQYWdlVGl0bGVMaW5rSW50ZW50KSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0c1RhcmdldEhyZWYgPSBfYUxpbmtzW2ldLmhyZWY7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdGlmIChzVGFyZ2V0SHJlZikge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRvU2hlbGxIYXNoID0gb1NoZWxsU2VydmljZUhlbHBlci5wYXJzZVNoZWxsSGFzaChzVGFyZ2V0SHJlZik7XG5cdFx0XHRcdFx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRvU2hlbGxIYXNoID0gb1NoZWxsU2VydmljZUhlbHBlci5wYXJzZVNoZWxsSGFzaChzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudCk7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdG9TaGVsbEhhc2gucGFyYW1zID0gb05hdkFyZ3MucGFyYW1zO1xuXHRcdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0XHRvU2hlbGxIYXNoID0gb1NoZWxsU2VydmljZUhlbHBlci5wYXJzZVNoZWxsSGFzaChzUXVpY2tWaWV3UGFnZVRpdGxlTGlua0ludGVudCk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0S2VlcEFsaXZlSGVscGVyLnN0b3JlQ29udHJvbFJlZnJlc2hTdHJhdGVneUZvckhhc2gob1ZpZXcsIG9TaGVsbEhhc2gpO1xuXHRcdFx0XHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdFx0XHRcdHRhcmdldDoge1xuXHRcdFx0XHRcdFx0XHRcdFx0c2VtYW50aWNPYmplY3Q6IG9TaGVsbEhhc2guc2VtYW50aWNPYmplY3QsXG5cdFx0XHRcdFx0XHRcdFx0XHRhY3Rpb246IG9TaGVsbEhhc2guYWN0aW9uXG5cdFx0XHRcdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRcdFx0XHRwYXJhbXM6IG9TaGVsbEhhc2gucGFyYW1zXG5cdFx0XHRcdFx0XHRcdH07XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdGNvbnN0IG9DdXJyZW50U2hlbGxIYXNoID0gb1NoZWxsU2VydmljZUhlbHBlci5wYXJzZVNoZWxsSGFzaCh3aW5kb3cubG9jYXRpb24uaGFzaCk7XG5cdFx0XHRcdFx0S2VlcEFsaXZlSGVscGVyLnN0b3JlQ29udHJvbFJlZnJlc2hTdHJhdGVneUZvckhhc2gob1ZpZXcsIG9DdXJyZW50U2hlbGxIYXNoKTtcblxuXHRcdFx0XHRcdHJldHVybiB7XG5cdFx0XHRcdFx0XHR0YXJnZXQ6IHtcblx0XHRcdFx0XHRcdFx0c2VtYW50aWNPYmplY3Q6IG9DdXJyZW50U2hlbGxIYXNoLnNlbWFudGljT2JqZWN0LFxuXHRcdFx0XHRcdFx0XHRhY3Rpb246IG9DdXJyZW50U2hlbGxIYXNoLmFjdGlvbixcblx0XHRcdFx0XHRcdFx0YXBwU3BlY2lmaWNSb3V0ZTogb0N1cnJlbnRTaGVsbEhhc2guYXBwU3BlY2lmaWNSb3V0ZVxuXHRcdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRcdHBhcmFtczogb0N1cnJlbnRTaGVsbEhhc2gucGFyYW1zXG5cdFx0XHRcdFx0fTtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0fVxuXHRcdHN1cGVyLm9uQmVmb3JlUmVuZGVyaW5nKG9FdmVudCk7XG5cdFx0Y29uc3Qgb1BhZ2VDb250ZW50ID0gdGhpcy5nZXRQYWdlQ29udGVudCgpO1xuXHRcdGNvbnN0IG9Gb3JtID0gb1BhZ2VDb250ZW50LmZvcm07XG5cdFx0aWYgKG9Gb3JtKSB7XG5cdFx0XHRjb25zdCBfYUNvbnRlbnQgPSB0aGlzLmN1c3RvbUNvbnRlbnQ7XG5cdFx0XHRpZiAoX2FDb250ZW50ICYmIF9hQ29udGVudC5sZW5ndGggPiAwKSB7XG5cdFx0XHRcdF9hQ29udGVudC5mb3JFYWNoKChfb0NvbnRlbnQ6IGFueSkgPT4ge1xuXHRcdFx0XHRcdGNvbnN0IF9vQ29udGVudENsb25lID0gX29Db250ZW50LmNsb25lKCk7XG5cdFx0XHRcdFx0X29Db250ZW50Q2xvbmUuc2V0TW9kZWwodGhpcy5nZXRNb2RlbCgpKTtcblx0XHRcdFx0XHRfb0NvbnRlbnRDbG9uZS5zZXRCaW5kaW5nQ29udGV4dCh0aGlzLmdldEJpbmRpbmdDb250ZXh0KCkpO1xuXHRcdFx0XHRcdG9Gb3JtLmFkZENvbnRlbnQoX29Db250ZW50Q2xvbmUpO1xuXHRcdFx0XHR9KTtcblx0XHRcdFx0c2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdFx0b0Zvcm0ucmVyZW5kZXIoKTtcblx0XHRcdFx0fSwgMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5pbnRlcmZhY2UgQ3VzdG9tUXVpY2tWaWV3UGFnZSB7XG5cdC8vIFByaXZhdGUgaW4gVUk1XG5cdG9Dcm9zc0FwcE5hdmlnYXRvcjogYW55O1xuXHQvLyBQcml2YXRlIGluIFVJNVxuXHRnZXRQYWdlQ29udGVudCgpOiBhbnk7XG59XG5leHBvcnQgZGVmYXVsdCBDdXN0b21RdWlja1ZpZXdQYWdlO1xuIl19
|
|
@@ -3,7 +3,7 @@ import { aggregation, defineUI5Class } from "sap/fe/core/helpers/ClassSupport";
|
|
|
3
3
|
import KeepAliveHelper from "sap/fe/core/helpers/KeepAliveHelper";
|
|
4
4
|
import DelegateUtil from "sap/fe/macros/DelegateUtil";
|
|
5
5
|
import QuickViewPage from "sap/m/QuickViewPage";
|
|
6
|
-
import Control from "sap/ui/core/Control";
|
|
6
|
+
import type Control from "sap/ui/core/Control";
|
|
7
7
|
|
|
8
8
|
@defineUI5Class("sap.fe.core.controls.CustomQuickViewPage")
|
|
9
9
|
class CustomQuickViewPage extends QuickViewPage {
|
|
@@ -31,7 +31,7 @@ class CustomQuickViewPage extends QuickViewPage {
|
|
|
31
31
|
},
|
|
32
32
|
params: oShellHash.params
|
|
33
33
|
};
|
|
34
|
-
const sQuickViewPageTitleLinkIntent = oNavArgs.target.semanticObject
|
|
34
|
+
const sQuickViewPageTitleLinkIntent = `${oNavArgs.target.semanticObject}-${oNavArgs.target.action}`;
|
|
35
35
|
|
|
36
36
|
if (
|
|
37
37
|
sQuickViewPageTitleLinkIntent &&
|
|
@@ -58,6 +58,7 @@ class CustomQuickViewPage extends QuickViewPage {
|
|
|
58
58
|
oShellHash = oShellServiceHelper.parseShellHash(sTargetHref);
|
|
59
59
|
} else {
|
|
60
60
|
oShellHash = oShellServiceHelper.parseShellHash(sQuickViewPageTitleLinkIntent);
|
|
61
|
+
oShellHash.params = oNavArgs.params;
|
|
61
62
|
}
|
|
62
63
|
}
|
|
63
64
|
} else {
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
<core:FragmentDefinition xmlns="sap.m" xmlns:core="sap.ui.core">
|
|
2
2
|
<Dialog title="{i18n>WARNING}" state="Warning" type="Message" contentWidth="22rem">
|
|
3
3
|
<content>
|
|
4
|
-
<Text
|
|
4
|
+
<Text
|
|
5
|
+
text="{= !%{HasActiveEntity} ? ${sap.fe.i18n>ST_DRAFT_DATALOSS_POPUP_MESSAGE_CREATE} : ${sap.fe.i18n>ST_DRAFT_DATALOSS_POPUP_MESSAGE_SAVE} }"
|
|
6
|
+
wrapping="true"
|
|
7
|
+
/>
|
|
5
8
|
<List
|
|
6
9
|
mode="SingleSelectLeft"
|
|
7
10
|
showSeparators="None"
|
|
@@ -18,8 +21,13 @@
|
|
|
18
21
|
<core:CustomData key="itemKey" value="draftDataLossOptionSave" />
|
|
19
22
|
</customData>
|
|
20
23
|
<VBox class="sapUiTinyMargin">
|
|
21
|
-
<Label
|
|
22
|
-
|
|
24
|
+
<Label
|
|
25
|
+
text="{= !%{HasActiveEntity} ? ${sap.fe.i18n>ST_DRAFT_DATALOSS_CREATE_ENTITY_RBL} : ${sap.fe.i18n>ST_DRAFT_DATALOSS_SAVE_DRAFT_RBL} }"
|
|
26
|
+
design="Bold"
|
|
27
|
+
/>
|
|
28
|
+
<Text
|
|
29
|
+
text="{= !%{HasActiveEntity} ? ${sap.fe.i18n>ST_DRAFT_DATALOSS_CREATE_ENTITY_TOL} : ${sap.fe.i18n>ST_DRAFT_DATALOSS_SAVE_DRAFT_TOL} }"
|
|
30
|
+
/>
|
|
23
31
|
</VBox>
|
|
24
32
|
</CustomListItem>
|
|
25
33
|
<CustomListItem>
|
|
@@ -50,8 +50,8 @@ sap.ui.define(["sap/base/Log", "sap/ui/core/Fragment", "sap/ui/core/util/XMLPrep
|
|
|
50
50
|
fnOnDataLossCancel();
|
|
51
51
|
dataLossPopup.close();
|
|
52
52
|
},
|
|
53
|
-
setDataLossPopup: function (
|
|
54
|
-
controller.dataLossPopup =
|
|
53
|
+
setDataLossPopup: function (inDataLossPopup) {
|
|
54
|
+
controller.dataLossPopup = inDataLossPopup;
|
|
55
55
|
}
|
|
56
56
|
};
|
|
57
57
|
var i18nModel = view.getModel("sap.fe.i18n");
|
|
@@ -81,9 +81,11 @@ sap.ui.define(["sap/base/Log", "sap/ui/core/Fragment", "sap/ui/core/util/XMLPrep
|
|
|
81
81
|
});
|
|
82
82
|
}).then(function (popup) {
|
|
83
83
|
dataLossPopup = popup;
|
|
84
|
+
popup.attachAfterOpen(function () {
|
|
85
|
+
selectAndFocusFirstEntry(dataLossPopup);
|
|
86
|
+
});
|
|
84
87
|
view.addDependent(dataLossPopup);
|
|
85
88
|
dataLossPopup.open();
|
|
86
|
-
selectAndFocusFirstEntry(dataLossPopup);
|
|
87
89
|
fragmentController.setDataLossPopup(dataLossPopup);
|
|
88
90
|
}).catch(function (error) {
|
|
89
91
|
Log.error("Error while opening the Discard Dialog fragment", error);
|
|
@@ -131,7 +133,7 @@ sap.ui.define(["sap/base/Log", "sap/ui/core/Fragment", "sap/ui/core/util/XMLPrep
|
|
|
131
133
|
if (controller.isA("sap.fe.templates.ObjectPage.ObjectPageController")) {
|
|
132
134
|
return controller._saveDocument(context);
|
|
133
135
|
} else {
|
|
134
|
-
controller.editFlow.saveDocument(context);
|
|
136
|
+
return controller.editFlow.saveDocument(context);
|
|
135
137
|
}
|
|
136
138
|
}
|
|
137
139
|
|
|
@@ -154,13 +156,21 @@ sap.ui.define(["sap/base/Log", "sap/ui/core/Fragment", "sap/ui/core/util/XMLPrep
|
|
|
154
156
|
// use it here for finding the correct list in the dialog.
|
|
155
157
|
var dataLossOptionsList = dataLossPopup.getContent().find(function (element) {
|
|
156
158
|
return element.data("listIdentifier") === "draftDataLossOptionsList";
|
|
157
|
-
});
|
|
159
|
+
}); // Preselect the first entry in the list
|
|
160
|
+
|
|
158
161
|
var firstListItemOption = dataLossOptionsList.getItems()[0];
|
|
159
|
-
dataLossOptionsList.setSelectedItem(firstListItemOption);
|
|
160
|
-
|
|
162
|
+
dataLossOptionsList.setSelectedItem(firstListItemOption); // By default set the focus on the first button of the dialog
|
|
163
|
+
|
|
164
|
+
dataLossPopup.getButtons()[0].focus();
|
|
161
165
|
}
|
|
162
166
|
|
|
163
167
|
_exports.selectAndFocusFirstEntry = selectAndFocusFirstEntry;
|
|
164
|
-
return
|
|
168
|
+
return {
|
|
169
|
+
performAfterDiscardorKeepDraft: performAfterDiscardorKeepDraft,
|
|
170
|
+
discardDraft: discardDraft,
|
|
171
|
+
saveDocument: saveDocument,
|
|
172
|
+
getSelectedKey: getSelectedKey,
|
|
173
|
+
selectAndFocusFirstEntry: selectAndFocusFirstEntry
|
|
174
|
+
};
|
|
165
175
|
}, false);
|
|
166
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkRhdGFMb3NzT3JEcmFmdERpc2NhcmRIYW5kbGVyLnRzIl0sIm5hbWVzIjpbIkRyYWZ0RGF0YUxvc3NPcHRpb25zIiwiZm5PbkRhdGFMb3NzQ29uZmlybWVkIiwiZm5PbkRhdGFMb3NzQ2FuY2VsIiwiZm5EYXRhTG9zc0NvbmZpcm1hdGlvbiIsIm9uRGF0YUxvc3NPayIsIm9uRGF0YUxvc3NDYW5jZWwiLCJjb250cm9sbGVyIiwic2tpcEJpbmRpbmdUb1ZpZXciLCJkYXRhTG9zc1BvcHVwIiwiZnJhZ21lbnROYW1lIiwidmlldyIsImdldFZpZXciLCJmcmFnbWVudENvbnRyb2xsZXIiLCJzZWxlY3RlZEtleSIsImdldFNlbGVjdGVkS2V5IiwiU2F2ZSIsInNhdmVEb2N1bWVudCIsInRoZW4iLCJjYXRjaCIsImVycm9yIiwiTG9nIiwiY2xvc2UiLCJLZWVwIiwiRGlzY2FyZCIsImRpc2NhcmREcmFmdCIsInNldERhdGFMb3NzUG9wdXAiLCJpMThuTW9kZWwiLCJnZXRNb2RlbCIsImxvY2FsVGhpc01vZGVsIiwiSlNPTk1vZGVsIiwicHJlcHJvY2Vzc29yU2V0dGluZ3MiLCJiaW5kaW5nQ29udGV4dHMiLCJjcmVhdGVCaW5kaW5nQ29udGV4dCIsIm1vZGVscyIsIm9wZW4iLCJzZWxlY3RBbmRGb2N1c0ZpcnN0RW50cnkiLCJkaWFsb2dGcmFnbWVudCIsIlhNTFRlbXBsYXRlUHJvY2Vzc29yIiwibG9hZFRlbXBsYXRlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJYTUxQcmVwcm9jZXNzb3IiLCJwcm9jZXNzIiwibmFtZSIsImZyYWdtZW50IiwiRnJhZ21lbnQiLCJsb2FkIiwiZGVmaW5pdGlvbiIsInBvcHVwIiwiYWRkRGVwZW5kZW50IiwicGVyZm9ybUFmdGVyRGlzY2FyZG9yS2VlcERyYWZ0IiwicHJvY2Vzc0Z1bmN0aW9uT25EYXRhbG9zc09rIiwicHJvY2Vzc0Z1bmN0aW9uT25EYXRhbG9zc0NhbmNlbCIsInJlamVjdCIsImRhdGFMb3NzUG9wdXBPayIsImNvbnRleHQiLCJyZXR1cm5WYWx1ZSIsImRhdGFMb3NzUG9wdXBDYW5jZWwiLCJnZXRCaW5kaW5nQ29udGV4dCIsInBhcmFtcyIsInNraXBCYWNrTmF2aWdhdGlvbiIsInNraXBEaXNjYXJkUG9wb3ZlciIsInVuZGVmaW5lZCIsImVkaXRGbG93IiwiY2FuY2VsRG9jdW1lbnQiLCJpc0EiLCJfc2F2ZURvY3VtZW50IiwiZGF0YUxvc3NPcHRpb25zTGlzdCIsImdldENvbnRlbnQiLCJmaW5kIiwiZWxlbWVudCIsImRhdGEiLCJnZXRTZWxlY3RlZEl0ZW0iLCJmaXJzdExpc3RJdGVtT3B0aW9uIiwiZ2V0SXRlbXMiLCJzZXRTZWxlY3RlZEl0ZW0iLCJmb2N1cyJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7O01BT0tBLG9COzthQUFBQSxvQjtBQUFBQSxJQUFBQSxvQjtBQUFBQSxJQUFBQSxvQjtBQUFBQSxJQUFBQSxvQjtLQUFBQSxvQixLQUFBQSxvQjs7QUFNTCxNQUFJQyxxQkFBSjtBQUNBLE1BQUlDLGtCQUFKOztBQUNBLFdBQVNDLHNCQUFULENBQWdDQyxZQUFoQyxFQUFtREMsZ0JBQW5ELEVBQTBFQyxVQUExRSxFQUEyRkMsaUJBQTNGLEVBQW1IO0FBQ2xIO0FBQ0E7QUFDQTtBQUNBLFFBQUlDLGFBQUo7QUFDQVAsSUFBQUEscUJBQXFCLEdBQUdHLFlBQXhCO0FBQ0FGLElBQUFBLGtCQUFrQixHQUFHRyxnQkFBckI7QUFDQSxRQUFNSSxZQUFZLEdBQUcsMkRBQXJCO0FBQ0EsUUFBTUMsSUFBSSxHQUFHSixVQUFVLENBQUNLLE9BQVgsRUFBYjtBQUNBLFFBQU1DLGtCQUF1QixHQUFHO0FBQy9CUixNQUFBQSxZQUFZLEVBQUUsWUFBWTtBQUN6QixZQUFNUyxXQUFXLEdBQUdDLGNBQWMsQ0FBQ04sYUFBRCxDQUFsQzs7QUFDQSxZQUFJSyxXQUFXLEtBQUtiLG9CQUFvQixDQUFDZSxJQUF6QyxFQUErQztBQUM5Q0MsVUFBQUEsWUFBWSxDQUFDVixVQUFELENBQVosQ0FDRVcsSUFERixDQUNP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bXBvcnQgQ3VzdG9tTGlzdEl0ZW0gZnJvbSBcInNhcC9tL0N1c3RvbUxpc3RJdGVtXCI7XG5pbXBvcnQgRGlhbG9nIGZyb20gXCJzYXAvbS9EaWFsb2dcIjtcbmltcG9ydCBMaXN0IGZyb20gXCJzYXAvbS9MaXN0XCI7XG5pbXBvcnQgRnJhZ21lbnQgZnJvbSBcInNhcC91aS9jb3JlL0ZyYWdtZW50XCI7XG5pbXBvcnQgWE1MUHJlcHJvY2Vzc29yIGZyb20gXCJzYXAvdWkvY29yZS91dGlsL1hNTFByZXByb2Nlc3NvclwiO1xuaW1wb3J0IFhNTFRlbXBsYXRlUHJvY2Vzc29yIGZyb20gXCJzYXAvdWkvY29yZS9YTUxUZW1wbGF0ZVByb2Nlc3NvclwiO1xuaW1wb3J0IEpTT05Nb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL2pzb24vSlNPTk1vZGVsXCI7XG5cbmVudW0gRHJhZnREYXRhTG9zc09wdGlvbnMge1xuXHRTYXZlID0gXCJkcmFmdERhdGFMb3NzT3B0aW9uU2F2ZVwiLFxuXHRLZWVwID0gXCJkcmFmdERhdGFMb3NzT3B0aW9uS2VlcFwiLFxuXHREaXNjYXJkID0gXCJkcmFmdERhdGFMb3NzT3B0aW9uRGlzY2FyZFwiXG59XG5cbmxldCBmbk9uRGF0YUxvc3NDb25maXJtZWQ6IEZ1bmN0aW9uO1xubGV0IGZuT25EYXRhTG9zc0NhbmNlbDogRnVuY3Rpb247XG5mdW5jdGlvbiBmbkRhdGFMb3NzQ29uZmlybWF0aW9uKG9uRGF0YUxvc3NPazogYW55LCBvbkRhdGFMb3NzQ2FuY2VsOiBhbnksIGNvbnRyb2xsZXI6IGFueSwgc2tpcEJpbmRpbmdUb1ZpZXc6IGFueSkge1xuXHQvLyBPcGVuIHRoZSBkYXRhIGxvc3MgcG9wdXAgYW5kIGFmdGVyIHByb2Nlc3NpbmcgdGhlIHNlbGVjdGVkIGZ1bmN0aW9uIGZpbmFsbHkgY2FsbFxuXHQvLyBvbkRhdGFMb3NzQ29uZmlybWVkIHdoaWNoIHJlc29sdmVzIHRoZSBwcm9taXNlIGFuZCBsZWFkcyB0byBwcm9jZXNzaW5nIG9mIHRoZSBvcmlnaW5hbGx5XG5cdC8vIHRyaWdnZXJlZCBhY3Rpb24gbGlrZSBlLmcuIGEgYmFjayBuYXZpZ2F0aW9uXG5cdGxldCBkYXRhTG9zc1BvcHVwOiBEaWFsb2c7XG5cdGZuT25EYXRhTG9zc0NvbmZpcm1lZCA9IG9uRGF0YUxvc3NPaztcblx0Zm5PbkRhdGFMb3NzQ2FuY2VsID0gb25EYXRhTG9zc0NhbmNlbDtcblx0Y29uc3QgZnJhZ21lbnROYW1lID0gXCJzYXAuZmUuY29yZS5jb250cm9scy5EYXRhTG9zc09yRHJhZnREaXNjYXJkLkRhdGFMb3NzRHJhZnRcIjtcblx0Y29uc3QgdmlldyA9IGNvbnRyb2xsZXIuZ2V0VmlldygpO1xuXHRjb25zdCBmcmFnbWVudENvbnRyb2xsZXI6IGFueSA9IHtcblx0XHRvbkRhdGFMb3NzT2s6IGZ1bmN0aW9uICgpIHtcblx0XHRcdGNvbnN0IHNlbGVjdGVkS2V5ID0gZ2V0U2VsZWN0ZWRLZXkoZGF0YUxvc3NQb3B1cCk7XG5cdFx0XHRpZiAoc2VsZWN0ZWRLZXkgPT09IERyYWZ0RGF0YUxvc3NPcHRpb25zLlNhdmUpIHtcblx0XHRcdFx0c2F2ZURvY3VtZW50KGNvbnRyb2xsZXIpXG5cdFx0XHRcdFx0LnRoZW4oZm5PbkRhdGFMb3NzQ29uZmlybWVkKVxuXHRcdFx0XHRcdC5jYXRjaChmdW5jdGlvbiAoZXJyb3I6IGFueSkge1xuXHRcdFx0XHRcdFx0TG9nLmVycm9yKFwiRXJyb3Igd2hpbGUgc2F2aW5nIGRvY3VtZW50XCIsIGVycm9yKTtcblx0XHRcdFx0XHR9KTtcblx0XHRcdFx0ZGF0YUxvc3NQb3B1cC5jbG9zZSgpO1xuXHRcdFx0fSBlbHNlIGlmIChzZWxlY3RlZEtleSA9PT0gRHJhZnREYXRhTG9zc09wdGlvbnMuS2VlcCkge1xuXHRcdFx0XHRmbk9uRGF0YUxvc3NDb25maXJtZWQoKTtcblx0XHRcdFx0ZGF0YUxvc3NQb3B1cC5jbG9zZSgpO1xuXHRcdFx0fSBlbHNlIGlmIChzZWxlY3RlZEtleSA9PT0gRHJhZnREYXRhTG9zc09wdGlvbnMuRGlzY2FyZCkge1xuXHRcdFx0XHRkaXNjYXJkRHJhZnQoY29udHJvbGxlciwgc2tpcEJpbmRpbmdUb1ZpZXcpXG5cdFx0XHRcdFx0LnRoZW4oZm5PbkRhdGFMb3NzQ29uZmlybWVkKVxuXHRcdFx0XHRcdC5jYXRjaChmdW5jdGlvbiAoZXJyb3I6IGFueSkge1xuXHRcdFx0XHRcdFx0TG9nLmVycm9yKFwiRXJyb3Igd2hpbGUgZGlzY2FyZGluZyBkcmFmdFwiLCBlcnJvcik7XG5cdFx0XHRcdFx0fSk7XG5cdFx0XHRcdGRhdGFMb3NzUG9wdXAuY2xvc2UoKTtcblx0XHRcdH1cblx0XHR9LFxuXHRcdG9uRGF0YUxvc3NDYW5jZWw6IGZ1bmN0aW9uICgpIHtcblx0XHRcdGZuT25EYXRhTG9zc0NhbmNlbCgpO1xuXHRcdFx0ZGF0YUxvc3NQb3B1cC5jbG9zZSgpO1xuXHRcdH0sXG5cdFx0c2V0RGF0YUxvc3NQb3B1cDogZnVuY3Rpb24gKGRhdGFMb3NzUG9wdXA6IERpYWxvZykge1xuXHRcdFx0Y29udHJvbGxlci5kYXRhTG9zc1BvcHVwID0gZGF0YUxvc3NQb3B1cDtcblx0XHR9XG5cdH07XG5cblx0Y29uc3QgaTE4bk1vZGVsID0gdmlldy5nZXRNb2RlbChcInNhcC5mZS5pMThuXCIpO1xuXHRjb25zdCBsb2NhbFRoaXNNb2RlbCA9IG5ldyBKU09OTW9kZWwoe30pLFxuXHRcdHByZXByb2Nlc3NvclNldHRpbmdzID0ge1xuXHRcdFx0YmluZGluZ0NvbnRleHRzOiB7XG5cdFx0XHRcdFwidGhpc1wiOiBsb2NhbFRoaXNNb2RlbC5jcmVhdGVCaW5kaW5nQ29udGV4dChcIi9cIilcblx0XHRcdH0sXG5cdFx0XHRtb2RlbHM6IHtcblx0XHRcdFx0XCJ0aGlzXCI6IGxvY2FsVGhpc01vZGVsLFxuXHRcdFx0XHRcImkxOG5cIjogaTE4bk1vZGVsXG5cdFx0XHR9XG5cdFx0fTtcblxuXHRpZiAoY29udHJvbGxlci5kYXRhTG9zc1BvcHVwKSB7XG5cdFx0ZGF0YUxvc3NQb3B1cCA9IGNvbnRyb2xsZXIuZGF0YUxvc3NQb3B1cDtcblx0XHRkYXRhTG9zc1BvcHVwLm9wZW4oKTtcblx0XHRzZWxlY3RBbmRGb2N1c0ZpcnN0RW50cnkoZGF0YUxvc3NQb3B1cCk7XG5cdH0gZWxzZSB7XG5cdFx0Y29uc3QgZGlhbG9nRnJhZ21lbnQgPSBYTUxUZW1wbGF0ZVByb2Nlc3Nvci5sb2FkVGVtcGxhdGUoZnJhZ21lbnROYW1lLCBcImZyYWdtZW50XCIpO1xuXHRcdFByb21pc2UucmVzb2x2ZShYTUxQcmVwcm9jZXNzb3IucHJvY2VzcyhkaWFsb2dGcmFnbWVudCwgeyBuYW1lOiBmcmFnbWVudE5hbWUgfSwgcHJlcHJvY2Vzc29yU2V0dGluZ3MpKVxuXHRcdFx0LnRoZW4oKGZyYWdtZW50KSA9PiB7XG5cdFx0XHRcdHJldHVybiBGcmFnbWVudC5sb2FkKHsgZGVmaW5pdGlvbjogZnJhZ21lbnQsIGNvbnRyb2xsZXI6IGZyYWdtZW50Q29udHJvbGxlciB9KTtcblx0XHRcdH0pXG5cdFx0XHQudGhlbigocG9wdXA6IGFueSkgPT4ge1xuXHRcdFx0XHRkYXRhTG9zc1BvcHVwID0gcG9wdXA7XG5cdFx0XHRcdHZpZXcuYWRkRGVwZW5kZW50KGRhdGFMb3NzUG9wdXApO1xuXHRcdFx0XHRkYXRhTG9zc1BvcHVwLm9wZW4oKTtcblx0XHRcdFx0c2VsZWN0QW5kRm9jdXNGaXJzdEVudHJ5KGRhdGFMb3NzUG9wdXApO1xuXHRcdFx0XHRmcmFnbWVudENvbnRyb2xsZXIuc2V0RGF0YUxvc3NQb3B1cChkYXRhTG9zc1BvcHVwKTtcblx0XHRcdH0pXG5cdFx0XHQuY2F0Y2goZnVuY3Rpb24gKGVycm9yOiBhbnkpIHtcblx0XHRcdFx0TG9nLmVycm9yKFwiRXJyb3Igd2hpbGUgb3BlbmluZyB0aGUgRGlzY2FyZCBEaWFsb2cgZnJhZ21lbnRcIiwgZXJyb3IpO1xuXHRcdFx0fSk7XG5cdH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBlcmZvcm1BZnRlckRpc2NhcmRvcktlZXBEcmFmdChcblx0cHJvY2Vzc0Z1bmN0aW9uT25EYXRhbG9zc09rOiBhbnksXG5cdHByb2Nlc3NGdW5jdGlvbk9uRGF0YWxvc3NDYW5jZWw6IGFueSxcblx0Y29udHJvbGxlcjogYW55LFxuXHRza2lwQmluZGluZ1RvVmlldzogYW55XG4pIHtcblx0Ly8gRGVwZW5kaW5nIG9uIGlmIHRoZSB1c2VyIGNsb3NlZCB0aGUgZGF0YSBsb3NzIHBvcHVwIHdpdGggT2sgb3IgQ2FuY2VsLFxuXHQvLyBleGVjdXRlIHRoZSBwcm92aWRlZCBmb2xsb3ctdXAgZnVuY3Rpb24gYW5kIHJlc29sdmUgb3IgcmVqZWN0IHRoZSBwcm9taXNlXG5cdHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZTogKHZhbHVlOiBhbnkpID0+IHZvaWQsIHJlamVjdDogKHJlYXNvbj86IGFueSkgPT4gdm9pZCkge1xuXHRcdGNvbnN0IGRhdGFMb3NzUG9wdXBPayA9IGZ1bmN0aW9uIChjb250ZXh0OiBhbnkpIHtcblx0XHRcdGNvbnN0IHJldHVyblZhbHVlID0gcHJvY2Vzc0Z1bmN0aW9uT25EYXRhbG9zc09rKGNvbnRleHQpO1xuXHRcdFx0cmVzb2x2ZShyZXR1cm5WYWx1ZSk7XG5cdFx0fTtcblx0XHRjb25zdCBkYXRhTG9zc1BvcHVwQ2FuY2VsID0gZnVuY3Rpb24gKCkge1xuXHRcdFx0cHJvY2Vzc0Z1bmN0aW9uT25EYXRhbG9zc0NhbmNlbCgpO1xuXHRcdFx0cmVqZWN0KCk7XG5cdFx0fTtcblx0XHRmbkRhdGFMb3NzQ29uZmlybWF0aW9uKGRhdGFMb3NzUG9wdXBPaywgZGF0YUxvc3NQb3B1cENhbmNlbCwgY29udHJvbGxlciwgc2tpcEJpbmRpbmdUb1ZpZXcpO1xuXHR9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRpc2NhcmREcmFmdChjb250cm9sbGVyOiBhbnksIHNraXBCaW5kaW5nVG9WaWV3OiBhbnkpIHtcblx0Y29uc3QgY29udGV4dCA9IGNvbnRyb2xsZXIuZ2V0VmlldygpLmdldEJpbmRpbmdDb250ZXh0KCk7XG5cdGNvbnN0IHBhcmFtcyA9IHtcblx0XHRza2lwQmFja05hdmlnYXRpb246IHRydWUsXG5cdFx0c2tpcERpc2NhcmRQb3BvdmVyOiB0cnVlLFxuXHRcdHNraXBCaW5kaW5nVG9WaWV3OiBza2lwQmluZGluZ1RvVmlldyAhPT0gdW5kZWZpbmVkID8gc2tpcEJpbmRpbmdUb1ZpZXcgOiB0cnVlXG5cdH07XG5cdHJldHVybiBjb250cm9sbGVyLmVkaXRGbG93LmNhbmNlbERvY3VtZW50KGNvbnRleHQsIHBhcmFtcyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzYXZlRG9jdW1lbnQoY29udHJvbGxlcjogYW55KSB7XG5cdGNvbnN0IGNvbnRleHQgPSBjb250cm9sbGVyLmdldFZpZXcoKS5nZXRCaW5kaW5nQ29udGV4dCgpO1xuXHQvLyBXZSBjaGVjayBpZiB3ZSBhcmUgb24gdGhlIE9QIGFuZCB0aGVuIGNhbGwgdGhlIGludGVybmFsIF9zYXZlRG9jdW1lbnQgZnJvbSB0aGUgT1AgY29udHJvbGxlclxuXHQvLyBzaW5jZSBoZXJlIHNvbWUgc3BlY2lhbCBoYW5kbGluZyBpcyBkb25lIGZvciBjcmVhdGlvblJvdyBiZWZvcmUgZWRpdEZsb3cuc2F2ZURvY3VtZW50IGlzIGNhbGxlZC5cblx0Ly8gSW4gY2FzZSBvZiBhIGN1c3RvbSBjb250cm9sbGVyIHdlIGRpcmVjdGx5IGNhbGwgc2F2ZURvY3VtZW50IGZyb20gdGhlIGVkaXRGbG93XG5cdGlmIChjb250cm9sbGVyLmlzQShcInNhcC5mZS50ZW1wbGF0ZXMuT2JqZWN0UGFnZS5PYmplY3RQYWdlQ29udHJvbGxlclwiKSkge1xuXHRcdHJldHVybiBjb250cm9sbGVyLl9zYXZlRG9jdW1lbnQoY29udGV4dCk7XG5cdH0gZWxzZSB7XG5cdFx0Y29udHJvbGxlci5lZGl0Rmxvdy5zYXZlRG9jdW1lbnQoY29udGV4dCk7XG5cdH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNlbGVjdGVkS2V5KGRhdGFMb3NzUG9wdXA6IERpYWxvZykge1xuXHQvLyBGb3Igbm90IHVzaW5nIGNvbnRyb2wgSURzIHdlIGludHJvZHVjZWQgY3VzdG9tRGF0YSBpbiB0aGUgZnJhZ21lbnQgYW5kXG5cdC8vIHVzZSBpdCBoZXJlIGZvciBmaW5kaW5nIHRoZSBjb3JyZWN0IGxpc3QgaW4gdGhlIGRpYWxvZyBhbmQgZm9yXG5cdC8vIGRldGVybWluaW5nIHRoZSBzZWxlY3RlZCBvcHRpb24gZnJvbSB0aGUgbGlzdFxuXHRjb25zdCBkYXRhTG9zc09wdGlvbnNMaXN0OiBMaXN0ID0gZGF0YUxvc3NQb3B1cFxuXHRcdC5nZXRDb250ZW50KClcblx0XHQuZmluZCgoZWxlbWVudCkgPT4gZWxlbWVudC5kYXRhKFwibGlzdElkZW50aWZpZXJcIikgPT09IFwiZHJhZnREYXRhTG9zc09wdGlvbnNMaXN0XCIpIGFzIExpc3Q7XG5cdHJldHVybiBkYXRhTG9zc09wdGlvbnNMaXN0LmdldFNlbGVjdGVkSXRlbSgpLmRhdGEoXCJpdGVtS2V5XCIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2VsZWN0QW5kRm9jdXNGaXJzdEVudHJ5KGRhdGFMb3NzUG9wdXA6IERpYWxvZykge1xuXHQvLyBGb3Igbm90IHVzaW5nIGNvbnRyb2wgSURzIHdlIGludHJvZHVjZWQgY3VzdG9tRGF0YSBpbiB0aGUgZnJhZ21lbnQgYW5kXG5cdC8vIHVzZSBpdCBoZXJlIGZvciBmaW5kaW5nIHRoZSBjb3JyZWN0IGxpc3QgaW4gdGhlIGRpYWxvZy5cblx0Y29uc3QgZGF0YUxvc3NPcHRpb25zTGlzdDogTGlzdCA9IGRhdGFMb3NzUG9wdXBcblx0XHQuZ2V0Q29udGVudCgpXG5cdFx0LmZpbmQoKGVsZW1lbnQpID0+IGVsZW1lbnQuZGF0YShcImxpc3RJZGVudGlmaWVyXCIpID09PSBcImRyYWZ0RGF0YUxvc3NPcHRpb25zTGlzdFwiKSBhcyBMaXN0O1xuXHRjb25zdCBmaXJzdExpc3RJdGVtT3B0aW9uOiBDdXN0b21MaXN0SXRlbSA9IGRhdGFMb3NzT3B0aW9uc0xpc3QuZ2V0SXRlbXMoKVswXSBhcyBDdXN0b21MaXN0SXRlbTtcblx0ZGF0YUxvc3NPcHRpb25zTGlzdC5zZXRTZWxlY3RlZEl0ZW0oZmlyc3RMaXN0SXRlbU9wdGlvbik7XG5cdGZpcnN0TGlzdEl0ZW1PcHRpb24uZm9jdXMoKTtcbn1cbiJdfQ==
|
|
176
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkRhdGFMb3NzT3JEcmFmdERpc2NhcmRIYW5kbGVyLnRzIl0sIm5hbWVzIjpbIkRyYWZ0RGF0YUxvc3NPcHRpb25zIiwiZm5PbkRhdGFMb3NzQ29uZmlybWVkIiwiZm5PbkRhdGFMb3NzQ2FuY2VsIiwiZm5EYXRhTG9zc0NvbmZpcm1hdGlvbiIsIm9uRGF0YUxvc3NPayIsIm9uRGF0YUxvc3NDYW5jZWwiLCJjb250cm9sbGVyIiwic2tpcEJpbmRpbmdUb1ZpZXciLCJkYXRhTG9zc1BvcHVwIiwiZnJhZ21lbnROYW1lIiwidmlldyIsImdldFZpZXciLCJmcmFnbWVudENvbnRyb2xsZXIiLCJzZWxlY3RlZEtleSIsImdldFNlbGVjdGVkS2V5IiwiU2F2ZSIsInNhdmVEb2N1bWVudCIsInRoZW4iLCJjYXRjaCIsImVycm9yIiwiTG9nIiwiY2xvc2UiLCJLZWVwIiwiRGlzY2FyZCIsImRpc2NhcmREcmFmdCIsInNldERhdGFMb3NzUG9wdXAiLCJpbkRhdGFMb3NzUG9wdXAiLCJpMThuTW9kZWwiLCJnZXRNb2RlbCIsImxvY2FsVGhpc01vZGVsIiwiSlNPTk1vZGVsIiwicHJlcHJvY2Vzc29yU2V0dGluZ3MiLCJiaW5kaW5nQ29udGV4dHMiLCJjcmVhdGVCaW5kaW5nQ29udGV4dCIsIm1vZGVscyIsIm9wZW4iLCJzZWxlY3RBbmRGb2N1c0ZpcnN0RW50cnkiLCJkaWFsb2dGcmFnbWVudCIsIlhNTFRlbXBsYXRlUHJvY2Vzc29yIiwibG9hZFRlbXBsYXRlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJYTUxQcmVwcm9jZXNzb3IiLCJwcm9jZXNzIiwibmFtZSIsImZyYWdtZW50IiwiRnJhZ21lbnQiLCJsb2FkIiwiZGVmaW5pdGlvbiIsInBvcHVwIiwiYXR0YWNoQWZ0ZXJPcGVuIiwiYWRkRGVwZW5kZW50IiwicGVyZm9ybUFmdGVyRGlzY2FyZG9yS2VlcERyYWZ0IiwicHJvY2Vzc0Z1bmN0aW9uT25EYXRhbG9zc09rIiwicHJvY2Vzc0Z1bmN0aW9uT25EYXRhbG9zc0NhbmNlbCIsInJlamVjdCIsImRhdGFMb3NzUG9wdXBPayIsImNvbnRleHQiLCJyZXR1cm5WYWx1ZSIsImRhdGFMb3NzUG9wdXBDYW5jZWwiLCJnZXRCaW5kaW5nQ29udGV4dCIsInBhcmFtcyIsInNraXBCYWNrTmF2aWdhdGlvbiIsInNraXBEaXNjYXJkUG9wb3ZlciIsInVuZGVmaW5lZCIsImVkaXRGbG93IiwiY2FuY2VsRG9jdW1lbnQiLCJpc0EiLCJfc2F2ZURvY3VtZW50IiwiZGF0YUxvc3NPcHRpb25zTGlzdCIsImdldENvbnRlbnQiLCJmaW5kIiwiZWxlbWVudCIsImRhdGEiLCJnZXRTZWxlY3RlZEl0ZW0iLCJmaXJzdExpc3RJdGVtT3B0aW9uIiwiZ2V0SXRlbXMiLCJzZXRTZWxlY3RlZEl0ZW0iLCJnZXRCdXR0b25zIiwiZm9jdXMiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7OztNQU9LQSxvQjs7YUFBQUEsb0I7QUFBQUEsSUFBQUEsb0I7QUFBQUEsSUFBQUEsb0I7QUFBQUEsSUFBQUEsb0I7S0FBQUEsb0IsS0FBQUEsb0I7O0FBTUwsTUFBSUMscUJBQUo7QUFDQSxNQUFJQyxrQkFBSjs7QUFDQSxXQUFTQyxzQkFBVCxDQUFnQ0MsWUFBaEMsRUFBbURDLGdCQUFuRCxFQUEwRUMsVUFBMUUsRUFBMkZDLGlCQUEzRixFQUFtSDtBQUNsSDtBQUNBO0FBQ0E7QUFDQSxRQUFJQyxhQUFKO0FBQ0FQLElBQUFBLHFCQUFxQixHQUFHRyxZQUF4QjtBQUNBRixJQUFBQSxrQkFBa0IsR0FBR0csZ0JBQXJCO0FBQ0EsUUFBTUksWUFBWSxHQUFHLDJEQUFyQjtBQUNBLFFBQU1DLElBQUksR0FBR0osVUFBVSxDQUFDSyxPQUFYLEVBQWI7QUFDQSxRQUFNQyxrQkFBdUIsR0FBRztBQUMvQlIsTUFBQUEsWUFBWSxFQUFFLFlBQVk7QUFDekIsWUFBTVMsV0FBVyxHQUFHQyxjQUFjLENBQUNOLGFBQUQsQ0FBbEM7O0FBQ0EsWUFBSUssV0FBVyxLQUFLYixvQkFBb0IsQ0FBQ2UsSUFBekMsRUFBK0M7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RixtQkFBcEMsRUFSK0QsQ0FTL0Q7O0FBQ0FuRSxJQUFBQSxhQUFhLENBQUNzRSxVQUFkLEdBQTJCLENBQTNCLEVBQThCQyxLQUE5QjtBQUNBOzs7U0FFYztBQUFFM0IsSUFBQUEsOEJBQThCLEVBQTlCQSw4QkFBRjtBQUFrQzVCLElBQUFBLFlBQVksRUFBWkEsWUFBbEM7QUFBZ0RSLElBQUFBLFlBQVksRUFBWkEsWUFBaEQ7QUFBOERGLElBQUFBLGNBQWMsRUFBZEEsY0FBOUQ7QUFBOEVzQixJQUFBQSx3QkFBd0IsRUFBeEJBO0FBQTlFLEciLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IHR5cGUgQ3VzdG9tTGlzdEl0ZW0gZnJvbSBcInNhcC9tL0N1c3RvbUxpc3RJdGVtXCI7XG5pbXBvcnQgdHlwZSBEaWFsb2cgZnJvbSBcInNhcC9tL0RpYWxvZ1wiO1xuaW1wb3J0IHR5cGUgTGlzdCBmcm9tIFwic2FwL20vTGlzdFwiO1xuaW1wb3J0IEZyYWdtZW50IGZyb20gXCJzYXAvdWkvY29yZS9GcmFnbWVudFwiO1xuaW1wb3J0IFhNTFByZXByb2Nlc3NvciBmcm9tIFwic2FwL3VpL2NvcmUvdXRpbC9YTUxQcmVwcm9jZXNzb3JcIjtcbmltcG9ydCBYTUxUZW1wbGF0ZVByb2Nlc3NvciBmcm9tIFwic2FwL3VpL2NvcmUvWE1MVGVtcGxhdGVQcm9jZXNzb3JcIjtcbmltcG9ydCBKU09OTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9qc29uL0pTT05Nb2RlbFwiO1xuXG5lbnVtIERyYWZ0RGF0YUxvc3NPcHRpb25zIHtcblx0U2F2ZSA9IFwiZHJhZnREYXRhTG9zc09wdGlvblNhdmVcIixcblx0S2VlcCA9IFwiZHJhZnREYXRhTG9zc09wdGlvbktlZXBcIixcblx0RGlzY2FyZCA9IFwiZHJhZnREYXRhTG9zc09wdGlvbkRpc2NhcmRcIlxufVxuXG5sZXQgZm5PbkRhdGFMb3NzQ29uZmlybWVkOiBGdW5jdGlvbjtcbmxldCBmbk9uRGF0YUxvc3NDYW5jZWw6IEZ1bmN0aW9uO1xuZnVuY3Rpb24gZm5EYXRhTG9zc0NvbmZpcm1hdGlvbihvbkRhdGFMb3NzT2s6IGFueSwgb25EYXRhTG9zc0NhbmNlbDogYW55LCBjb250cm9sbGVyOiBhbnksIHNraXBCaW5kaW5nVG9WaWV3OiBhbnkpIHtcblx0Ly8gT3BlbiB0aGUgZGF0YSBsb3NzIHBvcHVwIGFuZCBhZnRlciBwcm9jZXNzaW5nIHRoZSBzZWxlY3RlZCBmdW5jdGlvbiBmaW5hbGx5IGNhbGxcblx0Ly8gb25EYXRhTG9zc0NvbmZpcm1lZCB3aGljaCByZXNvbHZlcyB0aGUgcHJvbWlzZSBhbmQgbGVhZHMgdG8gcHJvY2Vzc2luZyBvZiB0aGUgb3JpZ2luYWxseVxuXHQvLyB0cmlnZ2VyZWQgYWN0aW9uIGxpa2UgZS5nLiBhIGJhY2sgbmF2aWdhdGlvblxuXHRsZXQgZGF0YUxvc3NQb3B1cDogRGlhbG9nO1xuXHRmbk9uRGF0YUxvc3NDb25maXJtZWQgPSBvbkRhdGFMb3NzT2s7XG5cdGZuT25EYXRhTG9zc0NhbmNlbCA9IG9uRGF0YUxvc3NDYW5jZWw7XG5cdGNvbnN0IGZyYWdtZW50TmFtZSA9IFwic2FwLmZlLmNvcmUuY29udHJvbHMuRGF0YUxvc3NPckRyYWZ0RGlzY2FyZC5EYXRhTG9zc0RyYWZ0XCI7XG5cdGNvbnN0IHZpZXcgPSBjb250cm9sbGVyLmdldFZpZXcoKTtcblx0Y29uc3QgZnJhZ21lbnRDb250cm9sbGVyOiBhbnkgPSB7XG5cdFx0b25EYXRhTG9zc09rOiBmdW5jdGlvbiAoKSB7XG5cdFx0XHRjb25zdCBzZWxlY3RlZEtleSA9IGdldFNlbGVjdGVkS2V5KGRhdGFMb3NzUG9wdXApO1xuXHRcdFx0aWYgKHNlbGVjdGVkS2V5ID09PSBEcmFmdERhdGFMb3NzT3B0aW9ucy5TYXZlKSB7XG5cdFx0XHRcdHNhdmVEb2N1bWVudChjb250cm9sbGVyKVxuXHRcdFx0XHRcdC50aGVuKGZuT25EYXRhTG9zc0NvbmZpcm1lZClcblx0XHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKGVycm9yOiBhbnkpIHtcblx0XHRcdFx0XHRcdExvZy5lcnJvcihcIkVycm9yIHdoaWxlIHNhdmluZyBkb2N1bWVudFwiLCBlcnJvcik7XG5cdFx0XHRcdFx0fSk7XG5cdFx0XHRcdGRhdGFMb3NzUG9wdXAuY2xvc2UoKTtcblx0XHRcdH0gZWxzZSBpZiAoc2VsZWN0ZWRLZXkgPT09IERyYWZ0RGF0YUxvc3NPcHRpb25zLktlZXApIHtcblx0XHRcdFx0Zm5PbkRhdGFMb3NzQ29uZmlybWVkKCk7XG5cdFx0XHRcdGRhdGFMb3NzUG9wdXAuY2xvc2UoKTtcblx0XHRcdH0gZWxzZSBpZiAoc2VsZWN0ZWRLZXkgPT09IERyYWZ0RGF0YUxvc3NPcHRpb25zLkRpc2NhcmQpIHtcblx0XHRcdFx0ZGlzY2FyZERyYWZ0KGNvbnRyb2xsZXIsIHNraXBCaW5kaW5nVG9WaWV3KVxuXHRcdFx0XHRcdC50aGVuKGZuT25EYXRhTG9zc0NvbmZpcm1lZClcblx0XHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKGVycm9yOiBhbnkpIHtcblx0XHRcdFx0XHRcdExvZy5lcnJvcihcIkVycm9yIHdoaWxlIGRpc2NhcmRpbmcgZHJhZnRcIiwgZXJyb3IpO1xuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRkYXRhTG9zc1BvcHVwLmNsb3NlKCk7XG5cdFx0XHR9XG5cdFx0fSxcblx0XHRvbkRhdGFMb3NzQ2FuY2VsOiBmdW5jdGlvbiAoKSB7XG5cdFx0XHRmbk9uRGF0YUxvc3NDYW5jZWwoKTtcblx0XHRcdGRhdGFMb3NzUG9wdXAuY2xvc2UoKTtcblx0XHR9LFxuXHRcdHNldERhdGFMb3NzUG9wdXA6IGZ1bmN0aW9uIChpbkRhdGFMb3NzUG9wdXA6IERpYWxvZykge1xuXHRcdFx0Y29udHJvbGxlci5kYXRhTG9zc1BvcHVwID0gaW5EYXRhTG9zc1BvcHVwO1xuXHRcdH1cblx0fTtcblxuXHRjb25zdCBpMThuTW9kZWwgPSB2aWV3LmdldE1vZGVsKFwic2FwLmZlLmkxOG5cIik7XG5cdGNvbnN0IGxvY2FsVGhpc01vZGVsID0gbmV3IEpTT05Nb2RlbCh7fSksXG5cdFx0cHJlcHJvY2Vzc29yU2V0dGluZ3MgPSB7XG5cdFx0XHRiaW5kaW5nQ29udGV4dHM6IHtcblx0XHRcdFx0XCJ0aGlzXCI6IGxvY2FsVGhpc01vZGVsLmNyZWF0ZUJpbmRpbmdDb250ZXh0KFwiL1wiKVxuXHRcdFx0fSxcblx0XHRcdG1vZGVsczoge1xuXHRcdFx0XHRcInRoaXNcIjogbG9jYWxUaGlzTW9kZWwsXG5cdFx0XHRcdFwiaTE4blwiOiBpMThuTW9kZWxcblx0XHRcdH1cblx0XHR9O1xuXG5cdGlmIChjb250cm9sbGVyLmRhdGFMb3NzUG9wdXApIHtcblx0XHRkYXRhTG9zc1BvcHVwID0gY29udHJvbGxlci5kYXRhTG9zc1BvcHVwO1xuXHRcdGRhdGFMb3NzUG9wdXAub3BlbigpO1xuXHRcdHNlbGVjdEFuZEZvY3VzRmlyc3RFbnRyeShkYXRhTG9zc1BvcHVwKTtcblx0fSBlbHNlIHtcblx0XHRjb25zdCBkaWFsb2dGcmFnbWVudCA9IFhNTFRlbXBsYXRlUHJvY2Vzc29yLmxvYWRUZW1wbGF0ZShmcmFnbWVudE5hbWUsIFwiZnJhZ21lbnRcIik7XG5cdFx0UHJvbWlzZS5yZXNvbHZlKFhNTFByZXByb2Nlc3Nvci5wcm9jZXNzKGRpYWxvZ0ZyYWdtZW50LCB7IG5hbWU6IGZyYWdtZW50TmFtZSB9LCBwcmVwcm9jZXNzb3JTZXR0aW5ncykpXG5cdFx0XHQudGhlbigoZnJhZ21lbnQpID0+IHtcblx0XHRcdFx0cmV0dXJuIEZyYWdtZW50LmxvYWQoeyBkZWZpbml0aW9uOiBmcmFnbWVudCwgY29udHJvbGxlcjogZnJhZ21lbnRDb250cm9sbGVyIH0pO1xuXHRcdFx0fSlcblx0XHRcdC50aGVuKChwb3B1cDogYW55KSA9PiB7XG5cdFx0XHRcdGRhdGFMb3NzUG9wdXAgPSBwb3B1cDtcblx0XHRcdFx0cG9wdXAuYXR0YWNoQWZ0ZXJPcGVuKCgpID0+IHtcblx0XHRcdFx0XHRzZWxlY3RBbmRGb2N1c0ZpcnN0RW50cnkoZGF0YUxvc3NQb3B1cCk7XG5cdFx0XHRcdH0pO1xuXHRcdFx0XHR2aWV3LmFkZERlcGVuZGVudChkYXRhTG9zc1BvcHVwKTtcblx0XHRcdFx0ZGF0YUxvc3NQb3B1cC5vcGVuKCk7XG5cdFx0XHRcdGZyYWdtZW50Q29udHJvbGxlci5zZXREYXRhTG9zc1BvcHVwKGRhdGFMb3NzUG9wdXApO1xuXHRcdFx0fSlcblx0XHRcdC5jYXRjaChmdW5jdGlvbiAoZXJyb3I6IGFueSkge1xuXHRcdFx0XHRMb2cuZXJyb3IoXCJFcnJvciB3aGlsZSBvcGVuaW5nIHRoZSBEaXNjYXJkIERpYWxvZyBmcmFnbWVudFwiLCBlcnJvcik7XG5cdFx0XHR9KTtcblx0fVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcGVyZm9ybUFmdGVyRGlzY2FyZG9yS2VlcERyYWZ0KFxuXHRwcm9jZXNzRnVuY3Rpb25PbkRhdGFsb3NzT2s6IGFueSxcblx0cHJvY2Vzc0Z1bmN0aW9uT25EYXRhbG9zc0NhbmNlbDogYW55LFxuXHRjb250cm9sbGVyOiBhbnksXG5cdHNraXBCaW5kaW5nVG9WaWV3OiBhbnlcbikge1xuXHQvLyBEZXBlbmRpbmcgb24gaWYgdGhlIHVzZXIgY2xvc2VkIHRoZSBkYXRhIGxvc3MgcG9wdXAgd2l0aCBPayBvciBDYW5jZWwsXG5cdC8vIGV4ZWN1dGUgdGhlIHByb3ZpZGVkIGZvbGxvdy11cCBmdW5jdGlvbiBhbmQgcmVzb2x2ZSBvciByZWplY3QgdGhlIHByb21pc2Vcblx0cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlOiAodmFsdWU6IGFueSkgPT4gdm9pZCwgcmVqZWN0OiAocmVhc29uPzogYW55KSA9PiB2b2lkKSB7XG5cdFx0Y29uc3QgZGF0YUxvc3NQb3B1cE9rID0gZnVuY3Rpb24gKGNvbnRleHQ6IGFueSkge1xuXHRcdFx0Y29uc3QgcmV0dXJuVmFsdWUgPSBwcm9jZXNzRnVuY3Rpb25PbkRhdGFsb3NzT2soY29udGV4dCk7XG5cdFx0XHRyZXNvbHZlKHJldHVyblZhbHVlKTtcblx0XHR9O1xuXHRcdGNvbnN0IGRhdGFMb3NzUG9wdXBDYW5jZWwgPSBmdW5jdGlvbiAoKSB7XG5cdFx0XHRwcm9jZXNzRnVuY3Rpb25PbkRhdGFsb3NzQ2FuY2VsKCk7XG5cdFx0XHRyZWplY3QoKTtcblx0XHR9O1xuXHRcdGZuRGF0YUxvc3NDb25maXJtYXRpb24oZGF0YUxvc3NQb3B1cE9rLCBkYXRhTG9zc1BvcHVwQ2FuY2VsLCBjb250cm9sbGVyLCBza2lwQmluZGluZ1RvVmlldyk7XG5cdH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGlzY2FyZERyYWZ0KGNvbnRyb2xsZXI6IGFueSwgc2tpcEJpbmRpbmdUb1ZpZXc6IGFueSkge1xuXHRjb25zdCBjb250ZXh0ID0gY29udHJvbGxlci5nZXRWaWV3KCkuZ2V0QmluZGluZ0NvbnRleHQoKTtcblx0Y29uc3QgcGFyYW1zID0ge1xuXHRcdHNraXBCYWNrTmF2aWdhdGlvbjogdHJ1ZSxcblx0XHRza2lwRGlzY2FyZFBvcG92ZXI6IHRydWUsXG5cdFx0c2tpcEJpbmRpbmdUb1ZpZXc6IHNraXBCaW5kaW5nVG9WaWV3ICE9PSB1bmRlZmluZWQgPyBza2lwQmluZGluZ1RvVmlldyA6IHRydWVcblx0fTtcblx0cmV0dXJuIGNvbnRyb2xsZXIuZWRpdEZsb3cuY2FuY2VsRG9jdW1lbnQoY29udGV4dCwgcGFyYW1zKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNhdmVEb2N1bWVudChjb250cm9sbGVyOiBhbnkpIHtcblx0Y29uc3QgY29udGV4dCA9IGNvbnRyb2xsZXIuZ2V0VmlldygpLmdldEJpbmRpbmdDb250ZXh0KCk7XG5cdC8vIFdlIGNoZWNrIGlmIHdlIGFyZSBvbiB0aGUgT1AgYW5kIHRoZW4gY2FsbCB0aGUgaW50ZXJuYWwgX3NhdmVEb2N1bWVudCBmcm9tIHRoZSBPUCBjb250cm9sbGVyXG5cdC8vIHNpbmNlIGhlcmUgc29tZSBzcGVjaWFsIGhhbmRsaW5nIGlzIGRvbmUgZm9yIGNyZWF0aW9uUm93IGJlZm9yZSBlZGl0Rmxvdy5zYXZlRG9jdW1lbnQgaXMgY2FsbGVkLlxuXHQvLyBJbiBjYXNlIG9mIGEgY3VzdG9tIGNvbnRyb2xsZXIgd2UgZGlyZWN0bHkgY2FsbCBzYXZlRG9jdW1lbnQgZnJvbSB0aGUgZWRpdEZsb3dcblx0aWYgKGNvbnRyb2xsZXIuaXNBKFwic2FwLmZlLnRlbXBsYXRlcy5PYmplY3RQYWdlLk9iamVjdFBhZ2VDb250cm9sbGVyXCIpKSB7XG5cdFx0cmV0dXJuIGNvbnRyb2xsZXIuX3NhdmVEb2N1bWVudChjb250ZXh0KTtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gY29udHJvbGxlci5lZGl0Rmxvdy5zYXZlRG9jdW1lbnQoY29udGV4dCk7XG5cdH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNlbGVjdGVkS2V5KGRhdGFMb3NzUG9wdXA6IERpYWxvZykge1xuXHQvLyBGb3Igbm90IHVzaW5nIGNvbnRyb2wgSURzIHdlIGludHJvZHVjZWQgY3VzdG9tRGF0YSBpbiB0aGUgZnJhZ21lbnQgYW5kXG5cdC8vIHVzZSBpdCBoZXJlIGZvciBmaW5kaW5nIHRoZSBjb3JyZWN0IGxpc3QgaW4gdGhlIGRpYWxvZyBhbmQgZm9yXG5cdC8vIGRldGVybWluaW5nIHRoZSBzZWxlY3RlZCBvcHRpb24gZnJvbSB0aGUgbGlzdFxuXHRjb25zdCBkYXRhTG9zc09wdGlvbnNMaXN0OiBMaXN0ID0gZGF0YUxvc3NQb3B1cFxuXHRcdC5nZXRDb250ZW50KClcblx0XHQuZmluZCgoZWxlbWVudCkgPT4gZWxlbWVudC5kYXRhKFwibGlzdElkZW50aWZpZXJcIikgPT09IFwiZHJhZnREYXRhTG9zc09wdGlvbnNMaXN0XCIpIGFzIExpc3Q7XG5cdHJldHVybiBkYXRhTG9zc09wdGlvbnNMaXN0LmdldFNlbGVjdGVkSXRlbSgpLmRhdGEoXCJpdGVtS2V5XCIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2VsZWN0QW5kRm9jdXNGaXJzdEVudHJ5KGRhdGFMb3NzUG9wdXA6IERpYWxvZykge1xuXHQvLyBGb3Igbm90IHVzaW5nIGNvbnRyb2wgSURzIHdlIGludHJvZHVjZWQgY3VzdG9tRGF0YSBpbiB0aGUgZnJhZ21lbnQgYW5kXG5cdC8vIHVzZSBpdCBoZXJlIGZvciBmaW5kaW5nIHRoZSBjb3JyZWN0IGxpc3QgaW4gdGhlIGRpYWxvZy5cblx0Y29uc3QgZGF0YUxvc3NPcHRpb25zTGlzdDogTGlzdCA9IGRhdGFMb3NzUG9wdXBcblx0XHQuZ2V0Q29udGVudCgpXG5cdFx0LmZpbmQoKGVsZW1lbnQpID0+IGVsZW1lbnQuZGF0YShcImxpc3RJZGVudGlmaWVyXCIpID09PSBcImRyYWZ0RGF0YUxvc3NPcHRpb25zTGlzdFwiKSBhcyBMaXN0O1xuXHQvLyBQcmVzZWxlY3QgdGhlIGZpcnN0IGVudHJ5IGluIHRoZSBsaXN0XG5cdGNvbnN0IGZpcnN0TGlzdEl0ZW1PcHRpb246IEN1c3RvbUxpc3RJdGVtID0gZGF0YUxvc3NPcHRpb25zTGlzdC5nZXRJdGVtcygpWzBdIGFzIEN1c3RvbUxpc3RJdGVtO1xuXHRkYXRhTG9zc09wdGlvbnNMaXN0LnNldFNlbGVjdGVkSXRlbShmaXJzdExpc3RJdGVtT3B0aW9uKTtcblx0Ly8gQnkgZGVmYXVsdCBzZXQgdGhlIGZvY3VzIG9uIHRoZSBmaXJzdCBidXR0b24gb2YgdGhlIGRpYWxvZ1xuXHRkYXRhTG9zc1BvcHVwLmdldEJ1dHRvbnMoKVswXS5mb2N1cygpO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7IHBlcmZvcm1BZnRlckRpc2NhcmRvcktlZXBEcmFmdCwgZGlzY2FyZERyYWZ0LCBzYXZlRG9jdW1lbnQsIGdldFNlbGVjdGVkS2V5LCBzZWxlY3RBbmRGb2N1c0ZpcnN0RW50cnkgfTtcbiJdfQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Log from "sap/base/Log";
|
|
2
|
-
import CustomListItem from "sap/m/CustomListItem";
|
|
3
|
-
import Dialog from "sap/m/Dialog";
|
|
4
|
-
import List from "sap/m/List";
|
|
2
|
+
import type CustomListItem from "sap/m/CustomListItem";
|
|
3
|
+
import type Dialog from "sap/m/Dialog";
|
|
4
|
+
import type List from "sap/m/List";
|
|
5
5
|
import Fragment from "sap/ui/core/Fragment";
|
|
6
6
|
import XMLPreprocessor from "sap/ui/core/util/XMLPreprocessor";
|
|
7
7
|
import XMLTemplateProcessor from "sap/ui/core/XMLTemplateProcessor";
|
|
@@ -50,8 +50,8 @@ function fnDataLossConfirmation(onDataLossOk: any, onDataLossCancel: any, contro
|
|
|
50
50
|
fnOnDataLossCancel();
|
|
51
51
|
dataLossPopup.close();
|
|
52
52
|
},
|
|
53
|
-
setDataLossPopup: function (
|
|
54
|
-
controller.dataLossPopup =
|
|
53
|
+
setDataLossPopup: function (inDataLossPopup: Dialog) {
|
|
54
|
+
controller.dataLossPopup = inDataLossPopup;
|
|
55
55
|
}
|
|
56
56
|
};
|
|
57
57
|
|
|
@@ -79,9 +79,11 @@ function fnDataLossConfirmation(onDataLossOk: any, onDataLossCancel: any, contro
|
|
|
79
79
|
})
|
|
80
80
|
.then((popup: any) => {
|
|
81
81
|
dataLossPopup = popup;
|
|
82
|
+
popup.attachAfterOpen(() => {
|
|
83
|
+
selectAndFocusFirstEntry(dataLossPopup);
|
|
84
|
+
});
|
|
82
85
|
view.addDependent(dataLossPopup);
|
|
83
86
|
dataLossPopup.open();
|
|
84
|
-
selectAndFocusFirstEntry(dataLossPopup);
|
|
85
87
|
fragmentController.setDataLossPopup(dataLossPopup);
|
|
86
88
|
})
|
|
87
89
|
.catch(function (error: any) {
|
|
@@ -129,7 +131,7 @@ export function saveDocument(controller: any) {
|
|
|
129
131
|
if (controller.isA("sap.fe.templates.ObjectPage.ObjectPageController")) {
|
|
130
132
|
return controller._saveDocument(context);
|
|
131
133
|
} else {
|
|
132
|
-
controller.editFlow.saveDocument(context);
|
|
134
|
+
return controller.editFlow.saveDocument(context);
|
|
133
135
|
}
|
|
134
136
|
}
|
|
135
137
|
|
|
@@ -149,7 +151,11 @@ export function selectAndFocusFirstEntry(dataLossPopup: Dialog) {
|
|
|
149
151
|
const dataLossOptionsList: List = dataLossPopup
|
|
150
152
|
.getContent()
|
|
151
153
|
.find((element) => element.data("listIdentifier") === "draftDataLossOptionsList") as List;
|
|
154
|
+
// Preselect the first entry in the list
|
|
152
155
|
const firstListItemOption: CustomListItem = dataLossOptionsList.getItems()[0] as CustomListItem;
|
|
153
156
|
dataLossOptionsList.setSelectedItem(firstListItemOption);
|
|
154
|
-
|
|
157
|
+
// By default set the focus on the first button of the dialog
|
|
158
|
+
dataLossPopup.getButtons()[0].focus();
|
|
155
159
|
}
|
|
160
|
+
|
|
161
|
+
export default { performAfterDiscardorKeepDraft, discardDraft, saveDocument, getSelectedKey, selectAndFocusFirstEntry };
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/
|
|
5
|
+
sap.ui.define(["sap/fe/core/helpers/ClassSupport", "sap/ui/core/Control"], function (ClassSupport, Control) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9;
|
|
@@ -212,4 +212,4 @@ sap.ui.define(["sap/ui/core/Control", "sap/fe/core/helpers/ClassSupport"], funct
|
|
|
212
212
|
})), _class2)) || _class);
|
|
213
213
|
return FieldWrapper;
|
|
214
214
|
}, false);
|
|
215
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
215
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZpZWxkV3JhcHBlci50cyJdLCJuYW1lcyI6WyJGaWVsZFdyYXBwZXIiLCJkZWZpbmVVSTVDbGFzcyIsImltcGxlbWVudEludGVyZmFjZSIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsImFzc29jaWF0aW9uIiwibXVsdGlwbGUiLCJzaW5ndWxhck5hbWUiLCJhZ2dyZWdhdGlvbiIsImlzRGVmYXVsdCIsImVuaGFuY2VBY2Nlc3NpYmlsaXR5U3RhdGUiLCJvRWxlbWVudCIsIm1BcmlhUHJvcHMiLCJvUGFyZW50IiwiZ2V0UGFyZW50IiwiZ2V0QWNjZXNzaWJpbGl0eUluZm8iLCJvQ29udGVudCIsImVkaXRNb2RlIiwiY29udGVudERpc3BsYXkiLCJjb250ZW50RWRpdCIsImxlbmd0aCIsIl9zZXRBcmlhTGFiZWxsZWRCeSIsImFkZEFyaWFMYWJlbGxlZEJ5IiwiYUFyaWFMYWJlbGxlZEJ5IiwiYXJpYUxhYmVsbGVkQnkiLCJpIiwic0lkIiwiYUFyaWFMYWJlbGxlZEJ5cyIsImdldEFyaWFMYWJlbGxlZEJ5IiwiaW5kZXhPZiIsIm9uQmVmb3JlUmVuZGVyaW5nIiwiYUNvbnRlbnRFZGl0IiwicmVuZGVyIiwib1JtIiwib0NvbnRyb2wiLCJvcGVuU3RhcnQiLCJzdHlsZSIsInRleHRBbGlnbiIsIndpZHRoIiwib3BlbkVuZCIsInJlbmRlckNvbnRyb2wiLCJjbG9zZSIsIkNvbnRyb2wiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUlNQSxZLFdBRExDLGNBQWMsQ0FBQyxtQ0FBRCxDLFVBRWJDLGtCQUFrQixDQUFDLDBCQUFELEMsVUFHbEJDLFFBQVEsQ0FBQztBQUFFQyxJQUFBQSxJQUFJLEVBQUU7QUFBUixHQUFELEMsVUFHUkQsUUFBUSxDQUFDO0FBQUVDLElBQUFBLElBQUksRUFBRSxxQkFBUjtBQUErQkMsSUFBQUEsWUFBWSxFQUFFO0FBQTdDLEdBQUQsQyxVQUdSRixRQUFRLENBQUM7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ZWdhdGlvbiwgYXNzb2NpYXRpb24sIGRlZmluZVVJNUNsYXNzLCBpbXBsZW1lbnRJbnRlcmZhY2UsIHByb3BlcnR5IH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IHR5cGUgeyBDU1NTaXplLCBJRm9ybUNvbnRlbnQsIFRleHRBbGlnbiB9IGZyb20gXCJzYXAvdWkvY29yZS9saWJyYXJ5XCI7XG5pbXBvcnQgdHlwZSBSZW5kZXJNYW5hZ2VyIGZyb20gXCJzYXAvdWkvY29yZS9SZW5kZXJNYW5hZ2VyXCI7XG5cbkBkZWZpbmVVSTVDbGFzcyhcInNhcC5mZS5jb3JlLmNvbnRyb2xzLkZpZWxkV3JhcHBlclwiKVxuY2xhc3MgRmllbGRXcmFwcGVyIGV4dGVuZHMgQ29udHJvbCBpbXBsZW1lbnRzIElGb3JtQ29udGVudCB7XG5cdEBpbXBsZW1lbnRJbnRlcmZhY2UoXCJzYXAudWkuY29yZS5JRm9ybUNvbnRlbnRcIilcblx0X19pbXBsZW1lbnRzX19zYXBfdWlfY29yZV9JRm9ybUNvbnRlbnQ6IGJvb2xlYW4gPSB0cnVlO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic2FwLnVpLmNvcmUuVGV4dEFsaWduXCIgfSlcblx0dGV4dEFsaWduITogVGV4dEFsaWduO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic2FwLnVpLmNvcmUuQ1NTU2l6ZVwiLCBkZWZhdWx0VmFsdWU6IG51bGwgfSlcblx0d2lkdGghOiBDU1NTaXplO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhblwiLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG5cdGZvcm1Eb05vdEFkanVzdFdpZHRoITogYm9vbGVhbjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiLCBkZWZhdWx0VmFsdWU6IFwiRGlzcGxheVwiIH0pXG5cdGVkaXRNb2RlITogc3RyaW5nO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhblwiLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG5cdHJlcXVpcmVkITogYm9vbGVhbjtcblxuXHQvKipcblx0ICogQXNzb2NpYXRpb24gdG8gY29udHJvbHMgLyBJRHMgdGhhdCBsYWJlbCB0aGlzIGNvbnRyb2wgKHNlZSBXQUktQVJJQSBhdHRyaWJ1dGUgYXJpYS1sYWJlbGxlZGJ5KS5cblx0ICovXG5cdEBhc3NvY2lhdGlvbih7IHR5cGU6IFwic2FwLnVpLmNvcmUuQ29udHJvbFwiLCBtdWx0aXBsZTogdHJ1ZSwgc2luZ3VsYXJOYW1lOiBcImFyaWFMYWJlbGxlZEJ5XCIgfSlcblx0YXJpYUxhYmVsbGVkQnkhOiBDb250cm9sW107XG5cblx0QGFnZ3JlZ2F0aW9uKHsgdHlwZTogXCJzYXAudWkuY29yZS5Db250cm9sXCIsIG11bHRpcGxlOiBmYWxzZSwgaXNEZWZhdWx0OiB0cnVlIH0pXG5cdGNvbnRlbnREaXNwbGF5ITogQ29udHJvbDtcblxuXHRAYWdncmVnYXRpb24oeyB0eXBlOiBcInNhcC51aS5jb3JlLkNvbnRyb2xcIiwgbXVsdGlwbGU6IHRydWUgfSlcblx0Y29udGVudEVkaXQhOiBDb250cm9sW107XG5cblx0ZW5oYW5jZUFjY2Vzc2liaWxpdHlTdGF0ZShvRWxlbWVudDogYW55LCBtQXJpYVByb3BzOiBhbnkpIHtcblx0XHRjb25zdCBvUGFyZW50ID0gdGhpcy5nZXRQYXJlbnQoKSBhcyBhbnk7XG5cblx0XHRpZiAob1BhcmVudCAmJiBvUGFyZW50LmVuaGFuY2VBY2Nlc3NpYmlsaXR5U3RhdGUpIHtcblx0XHRcdC8vIHVzZSBGaWVsZFdyYXBwZXIgYXMgY29udHJvbCwgYnV0IGFyaWEgcHJvcGVydGllcyBvZiByZW5kZXJlZCBpbm5lciBjb250cm9sLlxuXHRcdFx0b1BhcmVudC5lbmhhbmNlQWNjZXNzaWJpbGl0eVN0YXRlKHRoaXMsIG1BcmlhUHJvcHMpO1xuXHRcdH1cblxuXHRcdHJldHVybiBtQXJpYVByb3BzO1xuXHR9XG5cdGdldEFjY2Vzc2liaWxpdHlJbmZvKCkge1xuXHRcdGxldCBvQ29udGVudDtcblx0XHRpZiAodGhpcy5lZGl0TW9kZSA9PT0gXCJEaXNwbGF5XCIpIHtcblx0XHRcdG9Db250ZW50ID0gdGhpcy5jb250ZW50RGlzcGxheTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0b0NvbnRlbnQgPSB0aGlzLmNvbnRlbnRFZGl0Lmxlbmd0aCA/IHRoaXMuY29udGVudEVkaXRbMF0gOiBudWxsO1xuXHRcdH1cblx0XHRyZXR1cm4gb0NvbnRlbnQgJiYgb0NvbnRlbnQuZ2V0QWNjZXNzaWJpbGl0eUluZm8gPyBvQ29udGVudC5nZXRBY2Nlc3NpYmlsaXR5SW5mbygpIDoge307XG5cdH1cblxuXHRfc2V0QXJpYUxhYmVsbGVkQnkob0NvbnRlbnQ6IGFueSkge1xuXHRcdGlmIChvQ29udGVudCAmJiBvQ29udGVudC5hZGRBcmlhTGFiZWxsZWRCeSkge1xuXHRcdFx0Y29uc3QgYUFyaWFMYWJlbGxlZEJ5ID0gdGhpcy5hcmlhTGFiZWxsZWRCeTtcblxuXHRcdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBhQXJpYUxhYmVsbGVkQnkubGVuZ3RoOyBpKyspIHtcblx0XHRcdFx0Y29uc3Qgc0lkID0gYUFyaWFMYWJlbGxlZEJ5W2ldO1xuXHRcdFx0XHRjb25zdCBhQXJpYUxhYmVsbGVkQnlzID0gb0NvbnRlbnQuZ2V0QXJpYUxhYmVsbGVkQnkoKSB8fCBbXTtcblx0XHRcdFx0aWYgKGFBcmlhTGFiZWxsZWRCeXMuaW5kZXhPZihzSWQpID09PSAtMSkge1xuXHRcdFx0XHRcdG9Db250ZW50LmFkZEFyaWFMYWJlbGxlZEJ5KHNJZCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0b25CZWZvcmVSZW5kZXJpbmcoKSB7XG5cdFx0Ly8gYmVmb3JlIGNhbGxpbmcgdGhlIHJlbmRlcmVyIG9mIHRoZSBGaWVsZFdyYXBwZXIgcGFyZW50IGNvbnRyb2wgbWF5IGhhdmUgc2V0IGFyaWFMYWJlbGxlZEJ5XG5cdFx0Ly8gd2UgZW5zdXJlIGl0IGlzIHBhc3NlZCB0byBpdHMgaW5uZXIgY29udHJvbHNcblx0XHR0aGlzLl9zZXRBcmlhTGFiZWxsZWRCeSh0aGlzLmNvbnRlbnREaXNwbGF5KTtcblx0XHRjb25zdCBhQ29udGVudEVkaXQgPSB0aGlzLmNvbnRlbnRFZGl0O1xuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgYUNvbnRlbnRFZGl0Lmxlbmd0aDsgaSsrKSB7XG5cdFx0XHR0aGlzLl9zZXRBcmlhTGFiZWxsZWRCeShhQ29udGVudEVkaXRbaV0pO1xuXHRcdH1cblx0fVxuXHRzdGF0aWMgcmVuZGVyKG9SbTogUmVuZGVyTWFuYWdlciwgb0NvbnRyb2w6IEZpZWxkV3JhcHBlcikge1xuXHRcdG9SbS5vcGVuU3RhcnQoXCJkaXZcIiwgb0NvbnRyb2wpO1xuXHRcdG9SbS5zdHlsZShcInRleHQtYWxpZ25cIiwgb0NvbnRyb2wudGV4dEFsaWduKTtcblx0XHRpZiAob0NvbnRyb2wuZWRpdE1vZGUgPT09IFwiRGlzcGxheVwiKSB7XG5cdFx0XHRvUm0uc3R5bGUoXCJ3aWR0aFwiLCBvQ29udHJvbC53aWR0aCk7XG5cdFx0XHRvUm0ub3BlbkVuZCgpO1xuXHRcdFx0b1JtLnJlbmRlckNvbnRyb2wob0NvbnRyb2wuY29udGVudERpc3BsYXkpOyAvLyByZW5kZXIgdGhlIGNoaWxkIENvbnRyb2wgZm9yIGRpc3BsYXlcblx0XHR9IGVsc2Uge1xuXHRcdFx0Y29uc3QgYUNvbnRlbnRFZGl0ID0gb0NvbnRyb2wuY29udGVudEVkaXQ7XG5cblx0XHRcdC8vIGlmIChhQ29udGVudEVkaXQubGVuZ3RoID4gMSkge1xuXHRcdFx0Ly8gXHRvUm0uY2xhc3MoXCJzYXBVaU1kY0ZpZWxkQmFzZU1vcmVGaWVsZHNcIik7XG5cdFx0XHQvLyB9XG5cdFx0XHRvUm0uc3R5bGUoXCJ3aWR0aFwiLCBvQ29udHJvbC53aWR0aCk7XG5cdFx0XHRvUm0ub3BlbkVuZCgpO1xuXHRcdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBhQ29udGVudEVkaXQubGVuZ3RoOyBpKyspIHtcblx0XHRcdFx0Y29uc3Qgb0NvbnRlbnQgPSBhQ29udGVudEVkaXRbaV07IC8vIHJlbmRlciB0aGUgY2hpbGQgQ29udHJvbCAgZm9yIGVkaXRcblx0XHRcdFx0b1JtLnJlbmRlckNvbnRyb2wob0NvbnRlbnQpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRvUm0uY2xvc2UoXCJkaXZcIik7IC8vIGVuZCBvZiB0aGUgY29tcGxldGUgQ29udHJvbFxuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IEZpZWxkV3JhcHBlcjtcbiJdfQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import Control from "sap/ui/core/Control";
|
|
2
1
|
import { aggregation, association, defineUI5Class, implementInterface, property } from "sap/fe/core/helpers/ClassSupport";
|
|
3
|
-
import
|
|
4
|
-
import
|
|
2
|
+
import Control from "sap/ui/core/Control";
|
|
3
|
+
import type { CSSSize, IFormContent, TextAlign } from "sap/ui/core/library";
|
|
4
|
+
import type RenderManager from "sap/ui/core/RenderManager";
|
|
5
5
|
|
|
6
6
|
@defineUI5Class("sap.fe.core.controls.FieldWrapper")
|
|
7
7
|
class FieldWrapper extends Control implements IFormContent {
|