@sap/open.fe 1.99.0 → 1.100.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/packages/sap.fe.common/src/sap/fe/common/.library +1 -1
- package/packages/sap.fe.common/src/sap/fe/common/.theming +1 -1
- package/packages/sap.fe.common/src/sap/fe/common/MessageButton-dbg.js +1748 -1813
- package/packages/sap.fe.common/src/sap/fe/common/MessageButton.js +2 -3
- package/packages/sap.fe.common/src/sap/fe/common/MessageButton.ts +1801 -0
- package/packages/sap.fe.common/src/sap/fe/common/MessageFilter-dbg.js +77 -32
- package/packages/sap.fe.common/src/sap/fe/common/MessageFilter.js +2 -3
- package/packages/sap.fe.common/src/sap/fe/common/MessageFilter.ts +26 -0
- package/packages/sap.fe.common/src/sap/fe/common/MessagePopover-dbg.js +43 -53
- package/packages/sap.fe.common/src/sap/fe/common/MessagePopover.js +2 -3
- package/packages/sap.fe.common/src/sap/fe/common/MessagePopover.ts +39 -0
- package/packages/sap.fe.common/src/sap/fe/common/library-dbg.js +31 -38
- package/packages/sap.fe.common/src/sap/fe/common/library-h2-preload.js +8 -9
- package/packages/sap.fe.common/src/sap/fe/common/library-h2-preload.js.map +3 -3
- package/packages/sap.fe.common/src/sap/fe/common/library-preload.js +23 -71
- package/packages/sap.fe.common/src/sap/fe/common/library-preload.js.map +4 -4
- package/packages/sap.fe.common/src/sap/fe/common/library.js +4 -5
- package/packages/sap.fe.common/src/sap/fe/common/library.ts +35 -0
- package/packages/sap.fe.common/src/sap/fe/common/manifest.json +3 -3
- package/packages/sap.fe.common/src/sap/fe/common/resources.json +54 -32
- package/packages/sap.fe.common/test/sap/fe/common/designtime/api.json +1 -1
- package/packages/sap.fe.common/test/sap/fe/common/designtime/apiref/api.json +1 -1
- package/packages/sap.fe.common/test/sap/fe/common/designtime/codeassistance/Library.jsmeta.json +1 -1
- package/packages/sap.fe.common/test/sap/fe/common/designtime/codeassistance/Library.xmlmeta.json +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/.library +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/.theming +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/AnnotationHelper-dbg.js +1 -69
- package/packages/sap.fe.core/src/sap/fe/core/AnnotationHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/AnnotationHelper.ts +0 -70
- package/packages/sap.fe.core/src/sap/fe/core/AppComponent-dbg.js +388 -399
- package/packages/sap.fe.core/src/sap/fe/core/AppComponent.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/AppComponent.ts +403 -0
- package/packages/sap.fe.core/src/sap/fe/core/AppStateHandler-dbg.js +127 -158
- package/packages/sap.fe.core/src/sap/fe/core/AppStateHandler.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/BaseController-dbg.js +82 -58
- package/packages/sap.fe.core/src/sap/fe/core/BaseController.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/BaseController.ts +68 -0
- package/packages/sap.fe.core/src/sap/fe/core/CommonUtils-dbg.js +111 -20
- package/packages/sap.fe.core/src/sap/fe/core/CommonUtils.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/CommonUtils.ts +131 -32
- package/packages/sap.fe.core/src/sap/fe/core/ExtensionAPI-dbg.js +278 -274
- package/packages/sap.fe.core/src/sap/fe/core/ExtensionAPI.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/ExtensionAPI.ts +250 -0
- package/packages/sap.fe.core/src/sap/fe/core/PageController-dbg.js +157 -29
- package/packages/sap.fe.core/src/sap/fe/core/PageController.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/PageController.ts +60 -32
- package/packages/sap.fe.core/src/sap/fe/core/RouterProxy-dbg.js +694 -756
- package/packages/sap.fe.core/src/sap/fe/core/RouterProxy.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/RouterProxy.ts +11 -9
- package/packages/sap.fe.core/src/sap/fe/core/Synchronization-dbg.js +21 -31
- package/packages/sap.fe.core/src/sap/fe/core/Synchronization.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/TemplateComponent-dbg.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/TemplateComponent.ts +10 -3
- package/packages/sap.fe.core/src/sap/fe/core/TemplateModel-dbg.js +20 -38
- package/packages/sap.fe.core/src/sap/fe/core/TemplateModel.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/TemplateModel.ts +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/TransactionHelper-dbg.js +1354 -1370
- package/packages/sap.fe.core/src/sap/fe/core/TransactionHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/TransactionHelper.ts +33 -22
- package/packages/sap.fe.core/src/sap/fe/core/actions/collaboration/ActivitySync-dbg.js +392 -0
- package/packages/sap.fe.core/src/sap/fe/core/actions/collaboration/ActivitySync.js +5 -0
- package/packages/sap.fe.core/src/sap/fe/core/actions/collaboration/ActivitySync.ts +355 -0
- package/packages/sap.fe.core/src/sap/fe/core/actions/collaboration/CollaborationCommon-dbg.js +136 -0
- package/packages/sap.fe.core/src/sap/fe/core/actions/collaboration/CollaborationCommon.js +5 -0
- package/packages/sap.fe.core/src/sap/fe/core/actions/collaboration/CollaborationCommon.ts +119 -0
- package/packages/sap.fe.core/src/sap/fe/core/actions/collaboration/Manage-dbg.js +262 -0
- package/packages/sap.fe.core/src/sap/fe/core/actions/collaboration/Manage.js +5 -0
- package/packages/sap.fe.core/src/sap/fe/core/actions/collaboration/Manage.ts +244 -0
- package/packages/sap.fe.core/src/sap/fe/core/actions/collaboration/ManageDialog.fragment.xml +103 -0
- package/packages/sap.fe.core/src/sap/fe/core/actions/collaboration/UserDetails.fragment.xml +13 -0
- package/packages/sap.fe.core/src/sap/fe/core/actions/draft-dbg.js +30 -68
- package/packages/sap.fe.core/src/sap/fe/core/actions/draft.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/actions/draft.ts +44 -71
- package/packages/sap.fe.core/src/sap/fe/core/actions/messageHandling-dbg.js +55 -36
- package/packages/sap.fe.core/src/sap/fe/core/actions/messageHandling.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/actions/messageHandling.ts +66 -46
- package/packages/sap.fe.core/src/sap/fe/core/actions/operations-dbg.js +34 -15
- package/packages/sap.fe.core/src/sap/fe/core/actions/operations.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/actions/operations.ts +48 -18
- package/packages/sap.fe.core/src/sap/fe/core/actions/sticky-dbg.js +17 -4
- package/packages/sap.fe.core/src/sap/fe/core/actions/sticky.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/actions/sticky.ts +21 -4
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata-dbg.js +69 -66
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.ts +65 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/EditFlow-dbg.js +1593 -1669
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/EditFlow.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/EditFlow.ts +1672 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/IntentBasedNavigation-dbg.js +79 -54
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +61 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalEditFlow-dbg.js +718 -779
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalEditFlow.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +783 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation-dbg.js +796 -816
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +803 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalRouting-dbg.js +1004 -1005
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalRouting.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalRouting.ts +978 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/KPIManagement-dbg.js +487 -521
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/KPIManagement.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/KPIManagement.ts +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MassEdit-dbg.js +141 -169
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MassEdit.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MassEdit.ts +156 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MessageHandler-dbg.js +233 -244
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MessageHandler.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MessageHandler.ts +225 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/PageReady-dbg.js +301 -336
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/PageReady.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/PageReady.ts +12 -10
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Paginator-dbg.js +188 -175
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Paginator.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Paginator.ts +163 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Placeholder-dbg.js +157 -149
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Placeholder.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Placeholder.ts +151 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Routing-dbg.js +144 -125
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Routing.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Routing.ts +132 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/RoutingListener-dbg.js +7 -6
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/RoutingListener.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/RoutingListener.ts +3 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Share-dbg.js +230 -268
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Share.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Share.ts +231 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/SideEffects-dbg.js +592 -633
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/SideEffects.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/SideEffects.ts +8 -7
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/ViewState-dbg.js +788 -806
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/ViewState.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/ViewState.ts +805 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/controls/ActionPartial.fragment.xml +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/controls/CommandExecution-dbg.js +67 -66
- package/packages/sap.fe.core/src/sap/fe/core/controls/CommandExecution.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/CommandExecution.ts +72 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/ConditionalWrapper-dbg.js +90 -75
- package/packages/sap.fe.core/src/sap/fe/core/controls/ConditionalWrapper.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/ConditionalWrapper.ts +83 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/CustomQuickViewPage-dbg.js +130 -125
- package/packages/sap.fe.core/src/sap/fe/core/controls/CustomQuickViewPage.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/CustomQuickViewPage.ts +126 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler-dbg.js +103 -112
- package/packages/sap.fe.core/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +101 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/FieldWrapper-dbg.js +122 -135
- package/packages/sap.fe.core/src/sap/fe/core/controls/FieldWrapper.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/FieldWrapper.ts +115 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/FilterBar-dbg.js +162 -159
- package/packages/sap.fe.core/src/sap/fe/core/controls/FilterBar.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/FilterBar.ts +143 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/FormElementWrapper-dbg.js +45 -39
- package/packages/sap.fe.core/src/sap/fe/core/controls/FormElementWrapper.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/FormElementWrapper.ts +40 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/MultiValueParameterDelegate-dbg.js +37 -42
- package/packages/sap.fe.core/src/sap/fe/core/controls/MultiValueParameterDelegate.js +1 -2
- package/packages/sap.fe.core/src/sap/fe/core/controls/MultiValueParameterDelegate.ts +31 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar/FilterContainer-dbg.js +126 -116
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar/FilterContainer.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar/FilterContainer.ts +98 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar/VisualFilter-dbg.js +241 -255
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar/VisualFilter.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar/VisualFilter.ts +245 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar/VisualFilterContainer-dbg.js +150 -141
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +125 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils-dbg.js +335 -322
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +337 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/massEdit/MassEditHandlers-dbg.js +74 -74
- package/packages/sap.fe.core/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +70 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/ConverterContext-dbg.js +348 -379
- package/packages/sap.fe.core/src/sap/fe/core/converters/ConverterContext.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/ConverterContext.ts +19 -16
- package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestSettings-dbg.js +12 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestSettings.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestSettings.ts +12 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestWrapper-dbg.js +354 -378
- package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestWrapper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestWrapper.ts +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/MetaModelConverter-dbg.js +6 -4
- package/packages/sap.fe.core/src/sap/fe/core/converters/MetaModelConverter.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/MetaModelConverter.ts +5 -2
- package/packages/sap.fe.core/src/sap/fe/core/converters/TemplateConverter-dbg.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/TemplateConverter.ts +2 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/annotations/DataField-dbg.js +26 -12
- package/packages/sap.fe.core/src/sap/fe/core/converters/annotations/DataField.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/annotations/DataField.ts +37 -13
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Form-dbg.js +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Form.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Form.ts +4 -2
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/KPI-dbg.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/KPI.ts +3 -2
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Table-dbg.js +130 -23
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Table.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Table.ts +134 -29
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/table/StandardActions-dbg.js +118 -53
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +156 -93
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/FilterBar-dbg.js +161 -207
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +148 -206
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/Aggregation-dbg.js +115 -133
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/Aggregation.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/BindingHelper-dbg.js +20 -6
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/BindingHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/BindingHelper.ts +16 -4
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/ConfigurableObject-dbg.js +12 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/ConfigurableObject.ts +11 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/Key-dbg.js +42 -57
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/Key.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/Key.ts +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction-dbg.js +25 -4
- package/packages/sap.fe.core/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +20 -3
- package/packages/sap.fe.core/src/sap/fe/core/converters/templates/ListReportConverter-dbg.js +10 -4
- package/packages/sap.fe.core/src/sap/fe/core/converters/templates/ListReportConverter.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/templates/ListReportConverter.ts +15 -4
- package/packages/sap.fe.core/src/sap/fe/core/converters/templates/ObjectPageConverter-dbg.js +7 -5
- package/packages/sap.fe.core/src/sap/fe/core/converters/templates/ObjectPageConverter.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +5 -1
- package/packages/sap.fe.core/src/sap/fe/core/designtime/AppComponent-dbg.designtime.js +92 -98
- package/packages/sap.fe.core/src/sap/fe/core/designtime/AppComponent.designtime.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/designtime/AppComponent.designtime.ts +91 -0
- package/packages/sap.fe.core/src/sap/fe/core/designtime/library-preload.designtime.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/designtime/library-preload.designtime.js.map +3 -3
- package/packages/sap.fe.core/src/sap/fe/core/formatters/CollaborationFormatter-dbg.js +104 -0
- package/packages/sap.fe.core/src/sap/fe/core/formatters/CollaborationFormatter.js +5 -0
- package/packages/sap.fe.core/src/sap/fe/core/formatters/CollaborationFormatter.ts +60 -0
- package/packages/sap.fe.core/src/sap/fe/core/formatters/TableFormatter-dbg.js +53 -2
- package/packages/sap.fe.core/src/sap/fe/core/formatters/TableFormatter.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/formatters/TableFormatter.ts +51 -0
- package/packages/sap.fe.core/src/sap/fe/core/fpm/Component-dbg.js +50 -54
- package/packages/sap.fe.core/src/sap/fe/core/fpm/Component.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/fpm/Component.ts +48 -0
- package/packages/sap.fe.core/src/sap/fe/core/fpm/manifest.json +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/fpm/resources.json +7 -3
- package/packages/sap.fe.core/src/sap/fe/core/helpers/AppStartupHelper-dbg.js +323 -309
- package/packages/sap.fe.core/src/sap/fe/core/helpers/AppStartupHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/helpers/AppStartupHelper.ts +363 -337
- package/packages/sap.fe.core/src/sap/fe/core/helpers/BindingExpression-dbg.js +7 -7
- package/packages/sap.fe.core/src/sap/fe/core/helpers/BindingExpression.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/helpers/BindingExpression.ts +7 -7
- package/packages/sap.fe.core/src/sap/fe/core/helpers/ClassSupport-dbg.js +186 -62
- package/packages/sap.fe.core/src/sap/fe/core/helpers/ClassSupport.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/helpers/ClassSupport.ts +168 -52
- package/packages/sap.fe.core/src/sap/fe/core/helpers/DynamicAnnotationPathHelper-dbg.js +5 -4
- package/packages/sap.fe.core/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.ts +1 -5
- package/packages/sap.fe.core/src/sap/fe/core/helpers/FPMHelper-dbg.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/helpers/FPMHelper.ts +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/helpers/MassEditHelper-dbg.js +601 -684
- package/packages/sap.fe.core/src/sap/fe/core/helpers/MassEditHelper.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/helpers/MassEditHelper.ts +699 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/ModelHelper-dbg.js +25 -1
- package/packages/sap.fe.core/src/sap/fe/core/helpers/ModelHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/helpers/ModelHelper.ts +23 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/SemanticDateOperators-dbg.js +5 -1
- package/packages/sap.fe.core/src/sap/fe/core/helpers/SemanticDateOperators.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/helpers/SemanticDateOperators.ts +4 -0
- package/packages/sap.fe.core/src/sap/fe/core/library-dbg.js +426 -451
- package/packages/sap.fe.core/src/sap/fe/core/library-h2-preload.js +36 -32
- package/packages/sap.fe.core/src/sap/fe/core/library-h2-preload.js.map +3 -3
- package/packages/sap.fe.core/src/sap/fe/core/library-preload.js +644 -738
- package/packages/sap.fe.core/src/sap/fe/core/library-preload.js.map +4 -4
- package/packages/sap.fe.core/src/sap/fe/core/library-preload.support.js +24 -35
- package/packages/sap.fe.core/src/sap/fe/core/library-preload.support.js.map +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/library.js +2 -3
- package/packages/sap.fe.core/src/sap/fe/core/library.support.js +22 -33
- package/packages/sap.fe.core/src/sap/fe/core/library.support.ts +23 -0
- package/packages/sap.fe.core/src/sap/fe/core/library.ts +420 -0
- package/packages/sap.fe.core/src/sap/fe/core/manifest.json +10 -10
- package/packages/sap.fe.core/src/sap/fe/core/manifestMerger/ChangePageConfiguration-dbg.js +5 -3
- package/packages/sap.fe.core/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +4 -1
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle.properties +22 -5
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ar.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_bg.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ca.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_cs.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_cy.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_da.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_de.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_el.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_GB.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_US_sappsd.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_US_saprigi.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_US_saptrc.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_es.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_es_MX.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_et.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_fi.properties +28 -8
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_fr.properties +28 -8
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_fr_CA.properties +29 -9
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_hi.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_hr.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_hu.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_id.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_it.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_iw.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ja.properties +26 -6
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_kk.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ko.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_lt.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_lv.properties +28 -8
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ms.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_nl.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_no.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_pl.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_pt.properties +28 -8
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_pt_PT.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ro.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ru.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sh.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sk.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sl.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sv.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_th.properties +26 -6
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_tr.properties +30 -10
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_uk.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_vi.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_zh_CN.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_zh_TW.properties +27 -7
- package/packages/sap.fe.core/src/sap/fe/core/resources.json +745 -384
- package/packages/sap.fe.core/src/sap/fe/core/services/AsyncComponentServiceFactory-dbg.js +45 -71
- package/packages/sap.fe.core/src/sap/fe/core/services/AsyncComponentServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/CacheHandlerServiceFactory-dbg.js +154 -192
- package/packages/sap.fe.core/src/sap/fe/core/services/CacheHandlerServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +4 -4
- package/packages/sap.fe.core/src/sap/fe/core/services/EnvironmentServiceFactory-dbg.js +66 -92
- package/packages/sap.fe.core/src/sap/fe/core/services/EnvironmentServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/EnvironmentServiceFactory.ts +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/NavigationServiceFactory-dbg.js +284 -339
- package/packages/sap.fe.core/src/sap/fe/core/services/NavigationServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/NavigationServiceFactory.ts +10 -13
- package/packages/sap.fe.core/src/sap/fe/core/services/ResourceModelServiceFactory-dbg.js +67 -102
- package/packages/sap.fe.core/src/sap/fe/core/services/ResourceModelServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/ResourceModelServiceFactory.ts +5 -2
- package/packages/sap.fe.core/src/sap/fe/core/services/RoutingServiceFactory-dbg.js +754 -814
- package/packages/sap.fe.core/src/sap/fe/core/services/RoutingServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/RoutingServiceFactory.ts +13 -13
- package/packages/sap.fe.core/src/sap/fe/core/services/ShellServicesFactory-dbg.js +649 -736
- package/packages/sap.fe.core/src/sap/fe/core/services/ShellServicesFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/ShellServicesFactory.ts +7 -4
- package/packages/sap.fe.core/src/sap/fe/core/services/SideEffectsServiceFactory-dbg.js +567 -592
- package/packages/sap.fe.core/src/sap/fe/core/services/SideEffectsServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/SideEffectsServiceFactory.ts +22 -3
- package/packages/sap.fe.core/src/sap/fe/core/services/TemplatedViewServiceFactory-dbg.js +354 -386
- package/packages/sap.fe.core/src/sap/fe/core/services/TemplatedViewServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +21 -14
- package/packages/sap.fe.core/src/sap/fe/core/services/view/TemplatingErrorPage-dbg.controller.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/view/TemplatingErrorPage.controller.ts +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/support/CommonHelper-dbg.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/support/CommonHelper.ts +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/support/Diagnostics-dbg.js +36 -48
- package/packages/sap.fe.core/src/sap/fe/core/support/Diagnostics.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/templating/DataModelPathHelper-dbg.js +93 -85
- package/packages/sap.fe.core/src/sap/fe/core/templating/DataModelPathHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/templating/DataModelPathHelper.ts +104 -95
- package/packages/sap.fe.core/src/sap/fe/core/templating/FilterHelper-dbg.js +25 -32
- package/packages/sap.fe.core/src/sap/fe/core/templating/FilterHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/templating/FilterHelper.ts +36 -35
- package/packages/sap.fe.core/src/sap/fe/core/templating/PropertyHelper-dbg.js +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/templating/PropertyHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/templating/PropertyHelper.ts +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/templating/UIFormatters-dbg.js +32 -26
- package/packages/sap.fe.core/src/sap/fe/core/templating/UIFormatters.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/templating/UIFormatters.ts +37 -24
- package/packages/sap.fe.core/test/sap/fe/core/designtime/api.json +1664 -1
- package/packages/sap.fe.core/test/sap/fe/core/designtime/apiref/api.json +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/designtime/codeassistance/Library.jsmeta.json +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/designtime/codeassistance/Library.jstemplates.json +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/designtime/codeassistance/Library.xmlmeta.json +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/model/MacroNavigationModel.js +59 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldDisplay/localService/RootEntity.json +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldMessages/Component.js +33 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldMessages/FieldMessages.controller.js +34 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldMessages/FieldMessages.view.xml +18 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldMessages/localService/Entities.json +6 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldMessages/localService/service.cds +6 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldMessages/manifest.json +68 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/fieldMessages.html +37 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/FilterBarSVandAnnotationDefaults.controller.js +1 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableCustoms/Page.controller.js +7 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableCustoms/Page.view.xml +9 -3
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableCustoms/localService/RootEntity.js +23 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableCustoms/localService/RootEntity.ts +11 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableCustoms/localService/service.cds +11 -23
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableMessages/Component.js +40 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableMessages/TableMessages.controller.js +35 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableMessages/TableMessages.view.xml +21 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableMessages/localService/RootEntity.json +82 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableMessages/localService/service.cds +82 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableMessages/manifest.json +78 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/tableMessages.html +37 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility/localService/ChildEntity.json +5 -4
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/manifest.json +3 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/view/App.view.xml +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/AnnotationHelper.spec.js +1 -169
- package/packages/sap.fe.core/test/sap/fe/core/jest/AnnotationHelper.spec.ts +0 -212
- package/packages/sap.fe.core/test/sap/fe/core/jest/CommonUtils.spec.js +2305 -119
- package/packages/sap.fe.core/test/sap/fe/core/jest/CommonUtils.spec.ts +2206 -67
- package/packages/sap.fe.core/test/sap/fe/core/jest/FilterUtils.spec.js +40 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/FilterUtils.spec.ts +34 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/FlexibleColumnLayout.spec.js +114 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/FlexibleColumnLayout.spec.ts +114 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/Paginators.spec.js +113 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/Paginators.spec.ts +78 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/RouterProxy.spec.js +599 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/RouterProxy.spec.ts +614 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/TemplateConverter.spec.js +23 -5
- package/packages/sap.fe.core/test/sap/fe/core/jest/TemplateConverter.spec.ts +26 -14
- package/packages/sap.fe.core/test/sap/fe/core/jest/TransactionHelper.spec.js +87 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/TransactionHelper.spec.ts +82 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/VisualFilterUtils.spec.js +124 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/VisualFilterUtils.spec.ts +141 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/__snapshots__/TemplateConverter.spec.ts.snap +34768 -67
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/collaboration/ActivitySync.spec.js +170 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/collaboration/ActivitySync.spec.ts +155 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/collaboration/CollaborationCommon.spec.js +101 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/collaboration/CollaborationCommon.spec.ts +94 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/collaboration/Manage.spec.js +82 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/collaboration/Manage.spec.ts +77 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/draft.spec.js +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/draft.spec.ts +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/messageHandling.spec.js +7 -2
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/messageHandling.spec.ts +7 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/operations.spec.js +104 -2
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/operations.spec.ts +96 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/sticky.spec.js +83 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/actions/sticky.spec.ts +79 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/appcomponent.spec.js +72 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/appcomponent.spec.ts +64 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/EditFlow.spec.js +619 -3
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/EditFlow.spec.ts +668 -5
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/InternalEditFlow.spec.js +297 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/InternalEditFlow.spec.ts +276 -6
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/InternalIntentBasedNavigation.spec.js +149 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/InternalIntentBasedNavigation.spec.ts +142 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/InternalRouting.spec.js +776 -182
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/InternalRouting.spec.ts +181 -3
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/KPIManagement.spec.js +19 -43
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MassEdit.spec.js +2 -18
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MassEdit.spec.ts +8 -6
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MessageHandler.spec.js +5 -27
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MessageHandler.spec.ts +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/Routing.spec.js +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/Routing.spec.ts +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/Share.spec.js +86 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/Share.spec.ts +80 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/SideEffects.spec.js +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/SideEffects.spec.ts +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/ViewState.spec.js +2 -18
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/ViewState.spec.ts +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/controls/DataLossOrDraftDiscardHandler.spec.js +45 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controls/DataLossOrDraftDiscardHandler.spec.ts +29 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controls/FilterBar.spec.js +51 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/controls/FilterBar.spec.ts +47 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/controls/__snapshots__/FilterBar.spec.ts.snap +3 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ConverterContext.spec.js +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ConverterContext.spec.ts +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/Filter.spec.js +25 -36
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/Filter.spec.ts +26 -36
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ListReportConverter.spec.js +3 -3
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ListReportConverter.spec.ts +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/MetaModelConverter.spec.js +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/MetaModelConverter.spec.ts +6 -5
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/Table.spec.js +133 -9
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/Table.spec.ts +171 -8
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/TableStandardActions.spec.js +174 -210
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/TableStandardActions.spec.ts +294 -230
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/__snapshots__/Filter.spec.ts.snap +3 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/controls/Chart.spec.js +237 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/controls/Chart.spec.ts +246 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/controls/DataVisualization.spec.js +9993 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/controls/DataVisualization.spec.ts +11352 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/controls/Table.spec.js +460 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/controls/Table.spec.ts +543 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/controls/TableAnalytics.spec.js +616 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/controls/TableAnalytics.spec.ts +711 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/controls/manifest.json +887 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/objectPage/HeaderAndFooterAction.spec.js +393 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/objectPage/HeaderAndFooterAction.spec.ts +434 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/DataConverter.js +31 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/DataConverter.ts +12 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/Filter.cds +27 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/MassEditHelper.cds +12 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/OKRA/manifest.json +150 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/OKRA/metadata.xml +365 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/OKRA/metadata_groupable_options.xml +96 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/OKRA/metadata_textArrangement.xml +102 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/OKRA/metadata_withPV.xml +359 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/Table.cds +89 -27
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/TemplatingTestData.js +421 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/TemplatingTestData.ts +413 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/aggregatedSD/metadata.xml +3767 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/dsr/manifest.json +185 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/dsr/metadata.xml +1534 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/manifest.json +887 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/salesOrderMetadata_qunit.xml +4995 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/formatters/CollaborationFormatters.spec.js +48 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/formatters/CollaborationFormatters.spec.ts +48 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/formatters/TableFormatters.spec.js +131 -51
- package/packages/sap.fe.core/test/sap/fe/core/jest/formatters/TableFormatters.spec.ts +81 -31
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/AppStartupHelper.spec.js +13 -7
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/AppStartupHelper.spec.ts +12 -6
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/MassEditHelper.spec.js +17 -3
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/MassEditHelper.spec.ts +24 -7
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/ModelHelper.spec.js +61 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/ModelHelper.spec.ts +59 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/PasteHelper.spec.js +3 -3
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/PasteHelper.spec.ts +1 -2
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/SemanticDateOperators.spec.js +4 -4
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/SemanticDateOperators.spec.ts +6 -3
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/StableIdHelper.spec.js +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/StableIdHelper.spec.ts +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/__snapshots__/AppStartupHelper.spec.ts.snap +19 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/__snapshots__/MassEditHelper.spec.ts.snap +0 -73
- package/packages/sap.fe.core/test/sap/fe/core/jest/manifestmerger/ChangePageConfiguration.spec.js +11 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/manifestmerger/ChangePageConfiguration.spec.ts +15 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/manifestmerger/__snapshots__/ChangePageConfiguration.spec.ts.snap +30 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/services/SideEffectsService.spec.js +49 -5
- package/packages/sap.fe.core/test/sap/fe/core/jest/services/SideEffectsService.spec.ts +60 -5
- package/packages/sap.fe.core/test/sap/fe/core/jest/templating/DataModelPathHelper.spec.js +384 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/templating/DataModelPathHelper.spec.ts +427 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/templating/PropertyHelper.spec.js +132 -2
- package/packages/sap.fe.core/test/sap/fe/core/jest/templating/PropertyHelper.spec.ts +156 -2
- package/packages/sap.fe.core/test/sap/fe/core/jest/templating/UIFormatters.spec.js +273 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/templating/UIFormatters.spec.ts +402 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/templating/ValueHelpTemplating.spec.js +45 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/templating/ValueHelpTemplating.spec.ts +40 -0
- package/packages/sap.fe.core/test/sap/fe/core/qunit/TemplatingExpressions.qunit.js +2 -1
- package/packages/sap.fe.core/test/sap/fe/core/qunit/apps/generalTests.json +0 -102
- package/packages/sap.fe.core/test/sap/fe/core/relnotes/changes-1.100.json +326 -0
- package/packages/sap.fe.core/test/sap/fe/core/relnotes/changes-1.99.json +0 -22
- package/packages/sap.fe.macros/src/sap/fe/macros/.library +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/.theming +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/Chart.metadata-dbg.js +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/Chart.metadata.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/ChartAPI-dbg.js +22 -43
- package/packages/sap.fe.macros/src/sap/fe/macros/ChartAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/ChartAPI.ts +3 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/ChartDelegate-dbg.js +14 -24
- package/packages/sap.fe.macros/src/sap/fe/macros/ChartDelegate.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/CommonHelper-dbg.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/DraftIndicator.fragment.xml +3 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/Field.fragment.xml +16 -18
- package/packages/sap.fe.macros/src/sap/fe/macros/FieldAPI-dbg.js +162 -100
- package/packages/sap.fe.macros/src/sap/fe/macros/FieldAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FieldAPI.ts +93 -16
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBar.fragment.xml +2 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBar.metadata-dbg.js +16 -8
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBar.metadata.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarAPI-dbg.js +58 -83
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarAPI.ts +16 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarDelegate-dbg.js +112 -192
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarDelegate.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/Form.metadata-dbg.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/Form.metadata.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FormAPI-dbg.js +4 -20
- package/packages/sap.fe.macros/src/sap/fe/macros/FormAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FormContainer.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FormContainerAPI-dbg.js +10 -31
- package/packages/sap.fe.macros/src/sap/fe/macros/FormContainerAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/MacroAPI-dbg.js +147 -162
- package/packages/sap.fe.macros/src/sap/fe/macros/MacroAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/MacroAPI.ts +32 -8
- package/packages/sap.fe.macros/src/sap/fe/macros/MacroMetadata-dbg.js +5 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/MacroMetadata.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/PhantomUtil-dbg.js +56 -74
- package/packages/sap.fe.macros/src/sap/fe/macros/PhantomUtil.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/Table.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/Table.metadata-dbg.js +90 -39
- package/packages/sap.fe.macros/src/sap/fe/macros/Table.metadata.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/TableAPI-dbg.js +284 -251
- package/packages/sap.fe.macros/src/sap/fe/macros/TableAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/TableAPI.ts +126 -14
- package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldHelper-dbg.js +38 -101
- package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldHelper.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldRuntime-dbg.js +68 -6
- package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldRuntime.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldTemplating-dbg.js +72 -12
- package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldTemplating.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldTemplating.ts +67 -10
- package/packages/sap.fe.macros/src/sap/fe/macros/field/QuickViewLinkDelegate-dbg.js +5 -12
- package/packages/sap.fe.macros/src/sap/fe/macros/field/QuickViewLinkDelegate.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/DraftEditState.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/FilterFieldHelper-dbg.js +1 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/FilterFieldHelper.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/FilterUtils-dbg.js +62 -39
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/FilterUtils.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/type/MultiValue-dbg.js +104 -50
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/type/MultiValue.js +2 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/type/MultiValue.ts +68 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/type/Range-dbg.js +83 -35
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/type/Range.js +2 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/type/Range.ts +66 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/type/Value-dbg.js +327 -216
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/type/Value.js +2 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/type/Value.ts +303 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/CollaborationAvatar.fragment.xml +15 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/CollectionField.metadata-dbg.js +14 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/CollectionField.metadata.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/CollectionField.metadata.ts +18 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/DataPoint.fragment.xml +12 -29
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/DataPoint.metadata-dbg.js +9 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/DataPoint.metadata.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/Field.fragment.xml +1 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/Field.metadata-dbg.js +529 -533
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/Field.metadata.js +2 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/Field.metadata.ts +568 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/FilterField.fragment.xml +0 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/SituationsIndicator-dbg.js +3 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/SituationsIndicator.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/SituationsIndicator.ts +3 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/FieldContent.fragment.xml +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/FieldStructure.fragment.xml +13 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/DataPoint.fragment.xml +4 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/ExpandableText.fragment.xml +1 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/LabelSemanticKey.fragment.xml +1 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/Link.fragment.xml +38 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/LinkWithQuickViewForm.fragment.xml +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/LinkWrapper.fragment.xml +3 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/MdcFieldWithValueHelp.fragment.xml +1 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/ObjectIdentifier.fragment.xml +55 -11
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/SemanticKeyWithDraftIndicator.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/Text.fragment.xml +3 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/DatePicker.fragment.xml +9 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/DateTimePicker.fragment.xml +9 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/Input.fragment.xml +12 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/InputWithUnit.fragment.xml +26 -5
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/InputWithValueHelp.fragment.xml +10 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/RatingIndicator.fragment.xml +9 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/TimePicker.fragment.xml +9 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/fragments/ObjectIdentifierContent.fragment.xml +4 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/helpers/DataPointTemplating-dbg.js +31 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/helpers/DataPointTemplating.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/helpers/DataPointTemplating.ts +20 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Runtime-dbg.js +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Runtime.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Runtime.ts +7 -9
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/ValueListHelper-dbg.js +90 -118
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/ValueListHelper.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/library-dbg.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/library-h2-preload.js +13 -12
- package/packages/sap.fe.macros/src/sap/fe/macros/library-h2-preload.js.map +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/library-preload.js +185 -214
- package/packages/sap.fe.macros/src/sap/fe/macros/library-preload.js.map +4 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/library.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/manifest.json +9 -9
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle.properties +4 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ar.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_bg.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ca.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_cs.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_cy.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_da.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_de.properties +4 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_el.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_GB.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_US_sappsd.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_US_saprigi.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_US_saptrc.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_es.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_es_MX.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_et.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_fi.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_fr.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_fr_CA.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_hi.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_hr.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_hu.properties +4 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_id.properties +4 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_it.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_iw.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ja.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_kk.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ko.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_lt.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_lv.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ms.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_nl.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_no.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_pl.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_pt.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_pt_PT.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ro.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ru.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sh.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sk.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sl.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sv.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_th.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_tr.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_uk.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_vi.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_zh_CN.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_zh_TW.properties +3 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/resources.json +273 -199
- package/packages/sap.fe.macros/src/sap/fe/macros/table/Actions.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/table/Column.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/table/ColumnContent.fragment.xml +2 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/table/CreationRow.fragment.xml +13 -20
- package/packages/sap.fe.macros/src/sap/fe/macros/table/CustomColumn.fragment.xml +1 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/table/TableHelper-dbg.js +5 -110
- package/packages/sap.fe.macros/src/sap/fe/macros/table/TableHelper.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/table/delegates/TableDelegate-dbg.js +98 -78
- package/packages/sap.fe.macros/src/sap/fe/macros/table/delegates/TableDelegate.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/valuehelp/ValueHelpFilterBar.metadata-dbg.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/valuehelp/ValueHelpFilterBar.metadata.js +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/designtime/api.json +211 -10
- package/packages/sap.fe.macros/test/sap/fe/macros/designtime/apiref/api.json +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/designtime/codeassistance/Library.jsmeta.json +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/designtime/codeassistance/Library.xmlmeta.json +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartDelegate.spec.js +1 -45
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartDelegate.spec.ts +0 -60
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldAPI.spec.js +78 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldAPI.spec.ts +71 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldMacroDataFieldTypes.spec.js +35 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldMacroDataFieldTypes.spec.ts +44 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterBarDelegate.spec.js +0 -76
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterBarMacro.spec.js +27 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterBarMacro.spec.ts +28 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterFieldHelper.spec.js +10 -12
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterFieldHelper.spec.ts +10 -10
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterUtils.spec.js +129 -15
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/MacroAPI.spec.js +13 -39
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/MacroAPI.spec.ts +2 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/RetrieveTextFromValueList.spec.js +119 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/RetrieveTextFromValueList.spec.ts +113 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/Table.spec.js +166 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/Table.spec.ts +190 -3
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/TableAPI.spec.js +457 -389
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/TableAPI.spec.ts +504 -425
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/TableMacro.spec.js +104 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/TableMacro.spec.ts +158 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/ChartDelegate.spec.ts.snap +0 -6
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/DatapointMacro.spec.ts.snap +5 -5
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FieldMacroDataFieldTypes.spec.ts.snap +114 -25
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FieldMacroWithSemanticKey.spec.ts.snap +40 -40
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FieldMacroWithValueHelp.spec.ts.snap +4 -8
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FilterBarMacro.spec.ts.snap +19 -19
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FilterField.spec.ts.snap +3 -5
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/QuickViewForm.spec.ts.snap +12 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/SimpleFieldMacro.spec.ts.snap +89 -90
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/Table.spec.ts.snap +1314 -58
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/TableMacro.spec.ts.snap +459 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FieldMacroDataFieldTypes.cds +18 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/QuickViewForm.cds +6 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/Table.cds +107 -106
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/TableAPI.cds +197 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldRuntime.spec.js +33 -4
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldRuntime.spec.ts +30 -4
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldTemplating.spec.js +72 -29
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldTemplating.spec.ts +86 -18
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/__snapshots__/columnWidth.spec.ts.snap +51 -27
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/columnWidth.spec.js +55 -9
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/columnWidth.spec.ts +46 -6
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/data/columnWidth.cds +28 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/TableDelegate.spec.js +170 -43
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/TableDelegate.spec.ts +131 -15
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/__snapshots__/TableDelegate.spec.ts.snap +90 -53
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/tsx/TestTSX.spec.tsx +2 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/index.json +0 -5
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FieldHelper.qunit.js +1 -99
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FormElementTemplating.qunit.js +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/MacroMetadata.qunit.js +4 -4
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/TableHelper.qunit.js +4 -4
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/ValueHelpTemplating.qunit.js +15 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/ValueListHelper.qunit.js +265 -106
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/metadata/simpleMetadata.js +38 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/relnotes/changes-1.100.json +372 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/relnotes/changes-1.99.json +0 -11
- package/packages/sap.fe.navigation/src/sap/fe/navigation/.library +1 -1
- package/packages/sap.fe.navigation/src/sap/fe/navigation/.theming +1 -1
- package/packages/sap.fe.navigation/src/sap/fe/navigation/library-dbg.js +1 -1
- package/packages/sap.fe.navigation/src/sap/fe/navigation/library-h2-preload.js +2 -2
- package/packages/sap.fe.navigation/src/sap/fe/navigation/library-h2-preload.js.map +2 -2
- package/packages/sap.fe.navigation/src/sap/fe/navigation/library-preload.js +2 -2
- package/packages/sap.fe.navigation/src/sap/fe/navigation/library-preload.js.map +2 -2
- package/packages/sap.fe.navigation/src/sap/fe/navigation/library.js +1 -1
- package/packages/sap.fe.navigation/src/sap/fe/navigation/manifest.json +3 -3
- package/packages/sap.fe.navigation/src/sap/fe/navigation/resources.json +8 -8
- package/packages/sap.fe.navigation/test/sap/fe/navigation/designtime/api.json +1 -1
- package/packages/sap.fe.navigation/test/sap/fe/navigation/designtime/apiref/api.json +1 -1
- package/packages/sap.fe.navigation/test/sap/fe/navigation/designtime/codeassistance/Library.xmlmeta.json +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/.library +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/.theming +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library-dbg.js +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library-h2-preload.js +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library-h2-preload.js.map +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library-preload.js +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library-preload.js.map +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library.js +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/manifest.json +3 -3
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/resources.json +27 -27
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/base/css_variables.source.less +316 -15
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/base/resources.json +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_belize/css_variables.less +315 -14
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_belize/css_variables.source.less +315 -14
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_belize/resources.json +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_belize_hcb/css_variables.less +316 -15
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_belize_hcb/css_variables.source.less +316 -15
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_belize_hcb/resources.json +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_belize_hcw/css_variables.less +316 -15
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_belize_hcw/css_variables.source.less +316 -15
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_belize_hcw/resources.json +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_belize_plus/css_variables.less +315 -14
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_belize_plus/css_variables.source.less +315 -14
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_belize_plus/resources.json +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_fiori_3/css_variables.less +317 -16
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_fiori_3/css_variables.source.less +317 -16
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_fiori_3/resources.json +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_fiori_3_dark/css_variables.less +317 -16
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_fiori_3_dark/css_variables.source.less +317 -16
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_fiori_3_dark/resources.json +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_fiori_3_hcb/css_variables.less +316 -15
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_fiori_3_hcb/css_variables.source.less +316 -15
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_fiori_3_hcb/resources.json +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_fiori_3_hcw/css_variables.less +316 -15
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_fiori_3_hcw/css_variables.source.less +316 -15
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_fiori_3_hcw/resources.json +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_horizon/css_variables.less +400 -99
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_horizon/css_variables.source.less +400 -99
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/themes/sap_horizon/resources.json +2 -2
- package/packages/sap.fe.placeholder/test/sap/fe/placeholder/designtime/api.json +1 -1
- package/packages/sap.fe.placeholder/test/sap/fe/placeholder/designtime/apiref/api.json +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/.library +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/.theming +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/AnalyticalListPage/manifest.json +2 -2
- package/packages/sap.fe.templates/src/sap/fe/templates/AnalyticalListPage/resources.json +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ListComponent-dbg.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ListComponent.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/Component-dbg.js +7 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/Component.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/ListReport.view.xml +22 -21
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/ListReportController-dbg.controller.js +13 -18
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/ListReportController.controller.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/manifest.json +2 -2
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/resources.json +7 -7
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.xml +3 -3
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/AnnotationHelper-dbg.js +50 -9
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/AnnotationHelper.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/Component-dbg.js +1 -12
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/Component.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +5 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ObjectPageController-dbg.controller.js +50 -17
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/controls/StashableHBox-dbg.js +7 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/designtime/FlexBox-dbg.designtime.js +3 -0
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/manifest.json +2 -2
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/resources.json +19 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/CollaborationDraft.fragment.xml +36 -0
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/EditableHeaderFacet.fragment.xml +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacet.fragment.xml +1 -0
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacetCustomContainer.fragment.xml +1 -0
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/Fcl-dbg.controller.js +3 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/Fcl.controller.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/NavContainer-dbg.controller.js +3 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/NavContainer.controller.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/designtime/library-preload.designtime.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/designtime/library-preload.designtime.js.map +2 -2
- package/packages/sap.fe.templates/src/sap/fe/templates/library-dbg.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/library-h2-preload.js +4 -3
- package/packages/sap.fe.templates/src/sap/fe/templates/library-h2-preload.js.map +2 -2
- package/packages/sap.fe.templates/src/sap/fe/templates/library-preload.js +22 -21
- package/packages/sap.fe.templates/src/sap/fe/templates/library-preload.js.map +4 -4
- package/packages/sap.fe.templates/src/sap/fe/templates/library.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/manifest.json +14 -14
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_ar.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_bg.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_ca.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_cs.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_cy.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_da.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_de.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_el.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_en.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_en_GB.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_en_US_sappsd.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_en_US_saprigi.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_en_US_saptrc.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_es.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_es_MX.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_et.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_fi.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_fr.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_fr_CA.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_hi.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_hr.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_hu.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_id.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_it.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_iw.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_ja.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_kk.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_ko.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_lt.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_lv.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_ms.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_nl.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_no.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_pl.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_pt.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_pt_PT.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_ro.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_ru.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_sh.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_sk.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_sl.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_sv.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_th.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_tr.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_uk.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_vi.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_zh_CN.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_zh_TW.properties +0 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/resources.json +115 -89
- package/packages/sap.fe.templates/test/sap/fe/templates/demokit/apps/itelo/webapp/manifest.json +1 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/designtime/api.json +353 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/designtime/apiref/api.json +1 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/designtime/codeassistance/Library.jsmeta.json +1 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/designtime/codeassistance/Library.xmlmeta.json +1 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ListReport/overrides/IntentBasedNavigation.spec.js +1 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ListReport/overrides/IntentBasedNavigation.spec.ts +3 -3
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ListReport/overrides/Share.spec.js +1 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ListReport/overrides/Share.spec.ts +4 -4
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ListReport/overrides/ViewState.spec.js +1 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ListReport/overrides/ViewState.spec.ts +2 -2
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/ObjectPageHeaderForm.spec.js +2 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/ObjectPageHeaderForm.spec.ts +2 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/__snapshots__/HeaderFacet.spec.ts.snap +7 -7
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/RootContainer/RootContainerBaseController.spec.js +30 -61
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/RootContainer/RootContainerBaseController.spec.ts +1 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/relnotes/changes-1.100.json +192 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/relnotes/changes-1.99.json +0 -11
- package/packages/sap.fe.test/src/sap/fe/test/.library +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/.theming +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/FeMocks-dbg.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/FeMocks.ts +8 -8
- package/packages/sap.fe.test/src/sap/fe/test/JestTemplatingHelper-dbg.js +6 -4
- package/packages/sap.fe.test/src/sap/fe/test/JestTemplatingHelper.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/JestTemplatingHelper.ts +10 -6
- package/packages/sap.fe.test/src/sap/fe/test/UI5MockHelper-dbg.js +126 -203
- package/packages/sap.fe.test/src/sap/fe/test/UI5MockHelper.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/UI5MockHelper.ts +17 -2
- package/packages/sap.fe.test/src/sap/fe/test/api/FilterBarAPI-dbg.js +9 -1
- package/packages/sap.fe.test/src/sap/fe/test/api/FilterBarAPI.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/library-dbg.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/library-h2-preload.js +2 -2
- package/packages/sap.fe.test/src/sap/fe/test/library-h2-preload.js.map +2 -2
- package/packages/sap.fe.test/src/sap/fe/test/library-preload.js +9 -18
- package/packages/sap.fe.test/src/sap/fe/test/library-preload.js.map +3 -3
- package/packages/sap.fe.test/src/sap/fe/test/library.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/manifest.json +3 -3
- package/packages/sap.fe.test/src/sap/fe/test/resources.json +18 -18
- package/packages/sap.fe.test/test/sap/fe/test/designtime/api.json +1 -1
- package/packages/sap.fe.test/test/sap/fe/test/designtime/apiref/api.json +1 -1
- package/packages/sap.fe.test/test/sap/fe/test/designtime/codeassistance/Library.xmlmeta.json +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FormTemplatingTs.qunit.js +0 -271
|
@@ -2,10 +2,10 @@
|
|
|
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/fe/core/helpers/ClassSupport", "sap/fe/core/helpers/PasteHelper", "sap/m/MessageBox", "sap/base/Log", "./MacroAPI", "sap/fe/macros/DelegateUtil"], function (ClassSupport, PasteHelper, MessageBox, Log, MacroAPI, DelegateUtil) {
|
|
5
|
+
sap.ui.define(["sap/fe/core/helpers/ClassSupport", "sap/fe/core/helpers/PasteHelper", "sap/m/MessageBox", "sap/base/Log", "./MacroAPI", "sap/fe/macros/DelegateUtil", "sap/ui/core/message/Message"], function (ClassSupport, PasteHelper, MessageBox, Log, MacroAPI, DelegateUtil, Message) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
|
-
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17, _descriptor18;
|
|
8
|
+
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17, _descriptor18, _descriptor19;
|
|
9
9
|
|
|
10
10
|
var Event = ClassSupport.Event;
|
|
11
11
|
var Property = ClassSupport.Property;
|
|
@@ -15,28 +15,12 @@ sap.ui.define(["sap/fe/core/helpers/ClassSupport", "sap/fe/core/helpers/PasteHel
|
|
|
15
15
|
|
|
16
16
|
function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }
|
|
17
17
|
|
|
18
|
-
function
|
|
19
|
-
|
|
20
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
21
|
-
|
|
22
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
18
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
23
19
|
|
|
24
20
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
25
21
|
|
|
26
22
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
27
23
|
|
|
28
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
29
|
-
|
|
30
|
-
function _possibleConstructorReturn(self, call) { if (call && (typeof call === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
31
|
-
|
|
32
|
-
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
33
|
-
|
|
34
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
35
|
-
|
|
36
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
37
|
-
|
|
38
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
39
|
-
|
|
40
24
|
function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }
|
|
41
25
|
|
|
42
26
|
function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }
|
|
@@ -91,57 +75,57 @@ sap.ui.define(["sap/fe/core/helpers/ClassSupport", "sap/fe/core/helpers/PasteHel
|
|
|
91
75
|
defaultValue: true
|
|
92
76
|
}), _dec16 = Property({
|
|
93
77
|
type: "string"
|
|
78
|
+
}), _dec17 = Property({
|
|
79
|
+
type: "string"
|
|
94
80
|
}), _dec(_class = (_class2 = /*#__PURE__*/function (_MacroAPI) {
|
|
95
81
|
_inherits(TableAPI, _MacroAPI);
|
|
96
82
|
|
|
97
|
-
var _super = _createSuper(TableAPI);
|
|
98
|
-
|
|
99
83
|
function TableAPI(mSettings) {
|
|
100
84
|
var _this;
|
|
101
85
|
|
|
102
|
-
_classCallCheck(this, TableAPI);
|
|
103
|
-
|
|
104
86
|
for (var _len = arguments.length, others = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
105
87
|
others[_key - 1] = arguments[_key];
|
|
106
88
|
}
|
|
107
89
|
|
|
108
|
-
_this =
|
|
90
|
+
_this = _MacroAPI.call.apply(_MacroAPI, [this, mSettings].concat(others)) || this;
|
|
109
91
|
|
|
110
|
-
_initializerDefineProperty(
|
|
92
|
+
_initializerDefineProperty(_this, "tableDefinition", _descriptor, _assertThisInitialized(_this));
|
|
111
93
|
|
|
112
|
-
_initializerDefineProperty(
|
|
94
|
+
_initializerDefineProperty(_this, "readOnly", _descriptor2, _assertThisInitialized(_this));
|
|
113
95
|
|
|
114
|
-
_initializerDefineProperty(
|
|
96
|
+
_initializerDefineProperty(_this, "id", _descriptor3, _assertThisInitialized(_this));
|
|
115
97
|
|
|
116
|
-
_initializerDefineProperty(
|
|
98
|
+
_initializerDefineProperty(_this, "busy", _descriptor4, _assertThisInitialized(_this));
|
|
117
99
|
|
|
118
|
-
_initializerDefineProperty(
|
|
100
|
+
_initializerDefineProperty(_this, "type", _descriptor5, _assertThisInitialized(_this));
|
|
119
101
|
|
|
120
|
-
_initializerDefineProperty(
|
|
102
|
+
_initializerDefineProperty(_this, "enableExport", _descriptor6, _assertThisInitialized(_this));
|
|
121
103
|
|
|
122
|
-
_initializerDefineProperty(
|
|
104
|
+
_initializerDefineProperty(_this, "enablePaste", _descriptor7, _assertThisInitialized(_this));
|
|
123
105
|
|
|
124
|
-
_initializerDefineProperty(
|
|
106
|
+
_initializerDefineProperty(_this, "enableFullScreen", _descriptor8, _assertThisInitialized(_this));
|
|
125
107
|
|
|
126
|
-
_initializerDefineProperty(
|
|
108
|
+
_initializerDefineProperty(_this, "filterBar", _descriptor9, _assertThisInitialized(_this));
|
|
127
109
|
|
|
128
|
-
_initializerDefineProperty(
|
|
110
|
+
_initializerDefineProperty(_this, "selectionMode", _descriptor10, _assertThisInitialized(_this));
|
|
129
111
|
|
|
130
|
-
_initializerDefineProperty(
|
|
112
|
+
_initializerDefineProperty(_this, "header", _descriptor11, _assertThisInitialized(_this));
|
|
131
113
|
|
|
132
|
-
_initializerDefineProperty(
|
|
114
|
+
_initializerDefineProperty(_this, "enableAutoColumnWidth", _descriptor12, _assertThisInitialized(_this));
|
|
133
115
|
|
|
134
|
-
_initializerDefineProperty(
|
|
116
|
+
_initializerDefineProperty(_this, "headerVisible", _descriptor13, _assertThisInitialized(_this));
|
|
135
117
|
|
|
136
|
-
_initializerDefineProperty(
|
|
118
|
+
_initializerDefineProperty(_this, "rowPress", _descriptor14, _assertThisInitialized(_this));
|
|
137
119
|
|
|
138
|
-
_initializerDefineProperty(
|
|
120
|
+
_initializerDefineProperty(_this, "stateChanged", _descriptor15, _assertThisInitialized(_this));
|
|
139
121
|
|
|
140
|
-
_initializerDefineProperty(
|
|
122
|
+
_initializerDefineProperty(_this, "personalization", _descriptor16, _assertThisInitialized(_this));
|
|
141
123
|
|
|
142
|
-
_initializerDefineProperty(
|
|
124
|
+
_initializerDefineProperty(_this, "variantManagement", _descriptor17, _assertThisInitialized(_this));
|
|
143
125
|
|
|
144
|
-
_initializerDefineProperty(
|
|
126
|
+
_initializerDefineProperty(_this, "menu", _descriptor18, _assertThisInitialized(_this));
|
|
127
|
+
|
|
128
|
+
_initializerDefineProperty(_this, "selectionChange", _descriptor19, _assertThisInitialized(_this));
|
|
145
129
|
|
|
146
130
|
if (_this.content) {
|
|
147
131
|
_this.content.attachEvent("selectionChange", {}, _this.onTableSelectionChange, _assertThisInitialized(_this));
|
|
@@ -150,232 +134,276 @@ sap.ui.define(["sap/fe/core/helpers/ClassSupport", "sap/fe/core/helpers/PasteHel
|
|
|
150
134
|
return _this;
|
|
151
135
|
}
|
|
152
136
|
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
137
|
+
var _proto = TableAPI.prototype;
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* Gets contexts from the table that have been selected by the user.
|
|
141
|
+
*
|
|
142
|
+
* @returns Contexts of the rows selected by the user
|
|
143
|
+
*
|
|
144
|
+
* @public
|
|
145
|
+
*/
|
|
146
|
+
_proto.getSelectedContexts = function getSelectedContexts() {
|
|
147
|
+
return this.content.getSelectedContexts();
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Adds a message to the table.
|
|
151
|
+
*
|
|
152
|
+
* The message applies to the whole table and not to an individual table row.
|
|
153
|
+
*
|
|
154
|
+
* @param {object} [parameters] The parameters to create the message
|
|
155
|
+
* @param {sap.ui.core.MessageType} parameters.type Message type
|
|
156
|
+
* @param {string} parameters.message Message text
|
|
157
|
+
* @param {string} parameters.description Message description
|
|
158
|
+
* @param {boolean} parameters.persistent True if the message is persistent
|
|
159
|
+
* @returns {string} The ID of the message
|
|
160
|
+
*
|
|
161
|
+
* @public
|
|
162
|
+
*/
|
|
163
|
+
;
|
|
164
|
+
|
|
165
|
+
_proto.addMessage = function addMessage(parameters) {
|
|
166
|
+
var msgManager = this._getMessageManager();
|
|
167
|
+
|
|
168
|
+
var oTable = this.content;
|
|
169
|
+
var oMessage = new Message({
|
|
170
|
+
target: oTable.getRowBinding().getResolvedPath(),
|
|
171
|
+
type: parameters.type,
|
|
172
|
+
message: parameters.message,
|
|
173
|
+
processor: oTable.getModel(),
|
|
174
|
+
description: parameters.description,
|
|
175
|
+
persistent: parameters.persistent
|
|
176
|
+
});
|
|
177
|
+
msgManager.addMessages(oMessage);
|
|
178
|
+
return oMessage.getId();
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Removes a message from the table.
|
|
182
|
+
*
|
|
183
|
+
* @param {string} id The id of the message
|
|
184
|
+
*
|
|
185
|
+
* @public
|
|
186
|
+
*/
|
|
187
|
+
;
|
|
188
|
+
|
|
189
|
+
_proto.removeMessage = function removeMessage(id) {
|
|
190
|
+
var msgManager = this._getMessageManager();
|
|
191
|
+
|
|
192
|
+
var messages = msgManager.getMessageModel().getData();
|
|
193
|
+
var result = messages.find(function (e) {
|
|
194
|
+
return e.id === id;
|
|
195
|
+
});
|
|
196
|
+
|
|
197
|
+
if (result) {
|
|
198
|
+
msgManager.removeMessages(result);
|
|
189
199
|
}
|
|
190
|
-
}
|
|
191
|
-
key: "onPaste",
|
|
192
|
-
value: function onPaste(oEvent, oController) {
|
|
193
|
-
// If paste is disable or if we're not in edit mode, we can't paste anything
|
|
194
|
-
if (!this.tableDefinition.control.enablePaste || !this.getModel("ui").getProperty("/isEditable")) {
|
|
195
|
-
return;
|
|
196
|
-
}
|
|
200
|
+
};
|
|
197
201
|
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
key: "onBeforeExport",
|
|
216
|
-
value: function onBeforeExport(oEvent) {
|
|
217
|
-
var _oEvent$getParameters;
|
|
218
|
-
|
|
219
|
-
var isSplitMode = oEvent.getParameters().userExportSettings.splitCells,
|
|
220
|
-
isRLTLanguage = sap.ui.getCore().getConfiguration().getRTL(),
|
|
221
|
-
oTableController = oEvent.getSource(),
|
|
222
|
-
oExportColumns = (_oEvent$getParameters = oEvent.getParameters().exportSettings.workbook) === null || _oEvent$getParameters === void 0 ? void 0 : _oEvent$getParameters.columns,
|
|
223
|
-
oTableColumns = this.tableDefinition.columns;
|
|
224
|
-
TableAPI.updateExportSettings(oExportColumns, oTableColumns, oTableController, isSplitMode, isRLTLanguage);
|
|
202
|
+
_proto._getMessageManager = function _getMessageManager() {
|
|
203
|
+
return sap.ui.getCore().getMessageManager();
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* An event triggered when the selection in the table changes.
|
|
207
|
+
*
|
|
208
|
+
* @public
|
|
209
|
+
*/
|
|
210
|
+
;
|
|
211
|
+
|
|
212
|
+
_proto.onTableRowPress = function onTableRowPress(oEvent, oController, oContext, mParameters) {
|
|
213
|
+
// In the case of an analytical table, if we're trying to navigate to a context corresponding to a visual group or grand total
|
|
214
|
+
// --> Cancel navigation
|
|
215
|
+
if (oContext && oContext.isA("sap.ui.model.odata.v4.Context") && typeof oContext.getProperty("@$ui5.node.isExpanded") === "boolean") {
|
|
216
|
+
return false;
|
|
217
|
+
} else {
|
|
218
|
+
oController._routing.navigateForwardToContext(oContext, mParameters);
|
|
225
219
|
}
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
* @returns {boolean} Whether to render visible the messageStrip
|
|
232
|
-
*/
|
|
233
|
-
|
|
234
|
-
}, {
|
|
235
|
-
key: "onDataStateChange",
|
|
236
|
-
value:
|
|
237
|
-
/**
|
|
238
|
-
* This event handles the DataState of the DataStateIndicator plugin from MDC on a table.
|
|
239
|
-
* It's fired when new error messages are sent from the backend to update row highlighting.
|
|
240
|
-
*
|
|
241
|
-
* @name onDataStateChange
|
|
242
|
-
* @param {object} oEvent Event object
|
|
243
|
-
*/
|
|
244
|
-
function onDataStateChange(oEvent) {
|
|
245
|
-
var oDataStateIndicator = oEvent.getSource();
|
|
246
|
-
var aFilteredMessages = oEvent.getParameter("filteredMessages");
|
|
247
|
-
|
|
248
|
-
if (aFilteredMessages) {
|
|
249
|
-
var oInternalModel = oDataStateIndicator.getModel("internal");
|
|
250
|
-
oInternalModel.setProperty("filteredMessages", aFilteredMessages, oDataStateIndicator.getBindingContext("internal"));
|
|
251
|
-
}
|
|
220
|
+
};
|
|
221
|
+
|
|
222
|
+
_proto.onInternalDataReceived = function onInternalDataReceived(oEvent) {
|
|
223
|
+
if (oEvent.getParameter("error")) {
|
|
224
|
+
this.getController().messageHandler.showMessageDialog();
|
|
252
225
|
}
|
|
253
|
-
}
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
pageController.massEdit.openMassEditDialog(oTable);
|
|
260
|
-
} else {
|
|
261
|
-
Log.warning("The Controller is not enhanced with Mass Edit functionality");
|
|
262
|
-
}
|
|
226
|
+
};
|
|
227
|
+
|
|
228
|
+
_proto.onPaste = function onPaste(oEvent, oController) {
|
|
229
|
+
// If paste is disable or if we're not in edit mode, we can't paste anything
|
|
230
|
+
if (!this.tableDefinition.control.enablePaste || !this.getModel("ui").getProperty("/isEditable")) {
|
|
231
|
+
return;
|
|
263
232
|
}
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
233
|
+
|
|
234
|
+
var aRawPastedData = oEvent.getParameter("data"),
|
|
235
|
+
oTable = oEvent.getSource();
|
|
236
|
+
var oResourceModel;
|
|
237
|
+
|
|
238
|
+
if (oTable.getEnablePaste() === true) {
|
|
239
|
+
PasteHelper.pasteData(aRawPastedData, oTable, oController);
|
|
240
|
+
} else {
|
|
241
|
+
oResourceModel = sap.ui.getCore().getLibraryResourceBundle("sap.fe.core");
|
|
242
|
+
MessageBox.error(oResourceModel.getText("T_OP_CONTROLLER_SAPFE_PASTE_DISABLED_MESSAGE"), {
|
|
243
|
+
title: oResourceModel.getText("C_COMMON_SAPFE_ERROR")
|
|
244
|
+
});
|
|
268
245
|
}
|
|
269
|
-
}
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
246
|
+
} // This event will allow us to intercept the export before is triggered to cover specific cases
|
|
247
|
+
// that couldn't be addressed on the propertyInfos for each column.
|
|
248
|
+
// e.g. Fixed Target Value for the datapoints
|
|
249
|
+
;
|
|
250
|
+
|
|
251
|
+
_proto.onBeforeExport = function onBeforeExport(oEvent) {
|
|
252
|
+
var _exportSettings$workb;
|
|
253
|
+
|
|
254
|
+
var isSplitMode = oEvent.getParameters().userExportSettings.splitCells,
|
|
255
|
+
isRLTLanguage = sap.ui.getCore().getConfiguration().getRTL(),
|
|
256
|
+
oTableController = oEvent.getSource(),
|
|
257
|
+
oExportColumns = (_exportSettings$workb = oEvent.getParameters().exportSettings.workbook) === null || _exportSettings$workb === void 0 ? void 0 : _exportSettings$workb.columns,
|
|
258
|
+
oTableColumns = this.tableDefinition.columns;
|
|
259
|
+
TableAPI.updateExportSettings(oExportColumns, oTableColumns, oTableController, isSplitMode, isRLTLanguage);
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Handles the MDC DataStateIndicator plugin to display messageStrip on a table.
|
|
263
|
+
* @param oMessage
|
|
264
|
+
* @param oTable
|
|
265
|
+
* @name dataStateFilter
|
|
266
|
+
* @returns {boolean} Whether to render visible the messageStrip
|
|
267
|
+
*/
|
|
268
|
+
;
|
|
269
|
+
|
|
270
|
+
TableAPI.dataStateIndicatorFilter = function dataStateIndicatorFilter(oMessage, oTable) {
|
|
271
|
+
var _oTable$getBindingCon;
|
|
272
|
+
|
|
273
|
+
var sTableContextBindingPath = (_oTable$getBindingCon = oTable.getBindingContext()) === null || _oTable$getBindingCon === void 0 ? void 0 : _oTable$getBindingCon.getPath();
|
|
274
|
+
var sTableRowBinding = (sTableContextBindingPath ? sTableContextBindingPath + "/" : "") + oTable.getRowBinding().getPath();
|
|
275
|
+
return sTableRowBinding === oMessage.getTarget() ? true : false;
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* This event handles the DataState of the DataStateIndicator plugin from MDC on a table.
|
|
279
|
+
* It's fired when new error messages are sent from the backend to update row highlighting.
|
|
280
|
+
*
|
|
281
|
+
* @name onDataStateChange
|
|
282
|
+
* @param {object} oEvent Event object
|
|
283
|
+
*/
|
|
284
|
+
;
|
|
285
|
+
|
|
286
|
+
_proto.onDataStateChange = function onDataStateChange(oEvent) {
|
|
287
|
+
var oDataStateIndicator = oEvent.getSource();
|
|
288
|
+
var aFilteredMessages = oEvent.getParameter("filteredMessages");
|
|
289
|
+
|
|
290
|
+
if (aFilteredMessages) {
|
|
291
|
+
var oInternalModel = oDataStateIndicator.getModel("internal");
|
|
292
|
+
oInternalModel.setProperty("filteredMessages", aFilteredMessages, oDataStateIndicator.getBindingContext("internal"));
|
|
277
293
|
}
|
|
278
|
-
}
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
} //Modify exported value when using Communication.Contact dataFieldForAnnotation
|
|
313
|
-
//contact>fn property should be exported
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
if (oColumn.exportContactProperty && column.propertyInfos) {
|
|
317
|
-
var _column$propertyInfos, _column$propertyInfos2, _column$propertyInfos3, _oColumn$propertyInfo;
|
|
318
|
-
|
|
319
|
-
if (((_column$propertyInfos = column.propertyInfos) === null || _column$propertyInfos === void 0 ? void 0 : _column$propertyInfos.length) === 1 && ((_column$propertyInfos2 = column.propertyInfos) === null || _column$propertyInfos2 === void 0 ? void 0 : _column$propertyInfos2.toString()) === oColumnExport.property.toString()) {
|
|
320
|
-
oColumnExport.property = oColumn.exportContactProperty;
|
|
321
|
-
oColumnExport.label = oColumn.label;
|
|
322
|
-
} else if (((_column$propertyInfos3 = column.propertyInfos) === null || _column$propertyInfos3 === void 0 ? void 0 : _column$propertyInfos3.length) > 1 && (_oColumn$propertyInfo = oColumn.propertyInfos) !== null && _oColumn$propertyInfo !== void 0 && _oColumn$propertyInfo.some(function (prop) {
|
|
323
|
-
return oColumnExport.property.includes(prop);
|
|
324
|
-
}) && Array.isArray(oColumnExport.property)) {
|
|
325
|
-
var _oColumnExport$proper;
|
|
326
|
-
|
|
327
|
-
oColumnExport.property = (_oColumnExport$proper = oColumnExport.property) === null || _oColumnExport$proper === void 0 ? void 0 : _oColumnExport$proper.map(function (property) {
|
|
328
|
-
var _oColumn$propertyInfo2;
|
|
329
|
-
|
|
330
|
-
return (_oColumn$propertyInfo2 = oColumn.propertyInfos) !== null && _oColumn$propertyInfo2 !== void 0 && _oColumn$propertyInfo2.some(function (prop) {
|
|
331
|
-
return prop === property;
|
|
332
|
-
}) ? oColumn.exportContactProperty : property;
|
|
333
|
-
});
|
|
334
|
-
}
|
|
294
|
+
};
|
|
295
|
+
|
|
296
|
+
TableAPI.updateExportSettings = function updateExportSettings(oExportColumns, oColumns, oTableController, isSplitMode, isRLTLanguage) {
|
|
297
|
+
oExportColumns.forEach(function (oColumnExport) {
|
|
298
|
+
// aExportLabels will contain labels from a FieldGroup, a text annotation and a DataPoint
|
|
299
|
+
// These labels will be used for child properties (simple properties) from complexProperty
|
|
300
|
+
// Unit/currency properties will be dismiss as it could be used in several datafields.
|
|
301
|
+
var aExportLabels = [];
|
|
302
|
+
var isUnit = oColumns.some(function (column) {
|
|
303
|
+
var sUnit = column.unit;
|
|
304
|
+
return sUnit === oColumnExport.property || sUnit === "Property::" + oColumnExport.property;
|
|
305
|
+
});
|
|
306
|
+
oColumns === null || oColumns === void 0 ? void 0 : oColumns.forEach(function (column) {
|
|
307
|
+
var oColumn = column;
|
|
308
|
+
|
|
309
|
+
if (isSplitMode) {
|
|
310
|
+
// Create Exporting labels array
|
|
311
|
+
var FieldGroupLabel = TableAPI._getFieldGroupExportLabel(oColumnExport, oColumn, oTableController);
|
|
312
|
+
|
|
313
|
+
if (FieldGroupLabel) {
|
|
314
|
+
aExportLabels.unshift(FieldGroupLabel);
|
|
315
|
+
} // For a text annotation, export label template used is <value> - <description> and for a DataPoint <datapointValue> - <TargetValue>.
|
|
316
|
+
// In both cases internationalization is needed
|
|
317
|
+
|
|
318
|
+
|
|
319
|
+
var dataFieldDescriptionLabel = TableAPI._getDataFieldDescriptionLabel(oColumnExport, oColumn, oTableController, isUnit);
|
|
320
|
+
|
|
321
|
+
if (dataFieldDescriptionLabel) {
|
|
322
|
+
aExportLabels.unshift(dataFieldDescriptionLabel);
|
|
323
|
+
} //Add TargetValue on dummy created property when exporting on split mode
|
|
324
|
+
|
|
325
|
+
|
|
326
|
+
if (oColumn.isDataPointFakeTargetProperty && oColumn.relativePath === oColumnExport.property) {
|
|
327
|
+
oColumnExport.property = [oColumnExport.property];
|
|
335
328
|
}
|
|
336
|
-
}
|
|
337
|
-
|
|
329
|
+
} //Modify exported value when using Communication.Contact dataFieldForAnnotation
|
|
330
|
+
//contact>fn property should be exported
|
|
338
331
|
|
|
339
|
-
if (aExportLabels.length > 1) {
|
|
340
|
-
// Remove duplicate labels (e.g. FieldGroup label is the same as the label of one of the properties)
|
|
341
|
-
aExportLabels = aExportLabels.filter(function (label, index) {
|
|
342
|
-
if (aExportLabels.indexOf(label) == index) {
|
|
343
|
-
return label;
|
|
344
|
-
}
|
|
345
|
-
});
|
|
346
|
-
} // Check if a RTL language if used and if so we need to reverse labels
|
|
347
332
|
|
|
333
|
+
if (oColumn.exportContactProperty && column.propertyInfos) {
|
|
334
|
+
var _column$propertyInfos, _column$propertyInfos2, _column$propertyInfos3, _oColumn$propertyInfo;
|
|
348
335
|
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
336
|
+
if (((_column$propertyInfos = column.propertyInfos) === null || _column$propertyInfos === void 0 ? void 0 : _column$propertyInfos.length) === 1 && ((_column$propertyInfos2 = column.propertyInfos) === null || _column$propertyInfos2 === void 0 ? void 0 : _column$propertyInfos2.toString()) === oColumnExport.property.toString()) {
|
|
337
|
+
oColumnExport.property = oColumn.exportContactProperty;
|
|
338
|
+
oColumnExport.label = oColumn.label;
|
|
339
|
+
} else if (((_column$propertyInfos3 = column.propertyInfos) === null || _column$propertyInfos3 === void 0 ? void 0 : _column$propertyInfos3.length) > 1 && (_oColumn$propertyInfo = oColumn.propertyInfos) !== null && _oColumn$propertyInfo !== void 0 && _oColumn$propertyInfo.some(function (prop) {
|
|
340
|
+
return oColumnExport.property.includes(prop);
|
|
341
|
+
}) && Array.isArray(oColumnExport.property)) {
|
|
342
|
+
var _oColumnExport$proper;
|
|
343
|
+
|
|
344
|
+
oColumnExport.property = (_oColumnExport$proper = oColumnExport.property) === null || _oColumnExport$proper === void 0 ? void 0 : _oColumnExport$proper.map(function (property) {
|
|
345
|
+
var _oColumn$propertyInfo2;
|
|
352
346
|
|
|
353
|
-
|
|
347
|
+
return (_oColumn$propertyInfo2 = oColumn.propertyInfos) !== null && _oColumn$propertyInfo2 !== void 0 && _oColumn$propertyInfo2.some(function (prop) {
|
|
348
|
+
return prop === property;
|
|
349
|
+
}) ? oColumn.exportContactProperty : property;
|
|
350
|
+
});
|
|
351
|
+
}
|
|
352
|
+
}
|
|
354
353
|
});
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
354
|
+
aExportLabels.push(DelegateUtil.getLocalizedText(oColumnExport.label, oTableController));
|
|
355
|
+
|
|
356
|
+
if (aExportLabels.length > 1) {
|
|
357
|
+
// Remove duplicate labels (e.g. FieldGroup label is the same as the label of one of the properties)
|
|
358
|
+
aExportLabels = aExportLabels.filter(function (label, index) {
|
|
359
|
+
if (aExportLabels.indexOf(label) == index) {
|
|
360
|
+
return label;
|
|
361
|
+
}
|
|
362
|
+
});
|
|
363
|
+
} // Check if a RTL language if used and if so we need to reverse labels
|
|
361
364
|
|
|
362
|
-
if ((oColumnExport.columnId.indexOf("::FieldGroup::") !== -1 || (_oColumn$exportSettin = oColumn.exportSettings) !== null && _oColumn$exportSettin !== void 0 && _oColumn$exportSettin.fieldLabel && oColumnExport.columnId.indexOf("__column") !== -1) && ((_oColumn$propertyInfo3 = oColumn.propertyInfos) !== null && _oColumn$propertyInfo3 !== void 0 && _oColumn$propertyInfo3.includes(oColumnExport.property) || (_oColumn$propertyInfo4 = oColumn.propertyInfos) !== null && _oColumn$propertyInfo4 !== void 0 && _oColumn$propertyInfo4.includes("Property::" + oColumnExport.property))) {
|
|
363
|
-
var _oColumn$exportSettin2;
|
|
364
365
|
|
|
365
|
-
|
|
366
|
-
|
|
366
|
+
if (isRLTLanguage) {
|
|
367
|
+
aExportLabels.reverse();
|
|
367
368
|
}
|
|
369
|
+
|
|
370
|
+
oColumnExport.label = aExportLabels.join(" - ");
|
|
371
|
+
});
|
|
372
|
+
return oExportColumns;
|
|
373
|
+
};
|
|
374
|
+
|
|
375
|
+
TableAPI._getFieldGroupExportLabel = function _getFieldGroupExportLabel(oColumnExport, oColumn, oTableController) {
|
|
376
|
+
var _oColumn$exportSettin, _oColumn$propertyInfo3, _oColumn$propertyInfo4;
|
|
377
|
+
|
|
378
|
+
if ((oColumnExport.columnId.indexOf("::FieldGroup::") !== -1 || (_oColumn$exportSettin = oColumn.exportSettings) !== null && _oColumn$exportSettin !== void 0 && _oColumn$exportSettin.fieldLabel && oColumnExport.columnId.indexOf("__column") !== -1) && ((_oColumn$propertyInfo3 = oColumn.propertyInfos) !== null && _oColumn$propertyInfo3 !== void 0 && _oColumn$propertyInfo3.includes(oColumnExport.property) || (_oColumn$propertyInfo4 = oColumn.propertyInfos) !== null && _oColumn$propertyInfo4 !== void 0 && _oColumn$propertyInfo4.includes("Property::" + oColumnExport.property))) {
|
|
379
|
+
var _oColumn$exportSettin2;
|
|
380
|
+
|
|
381
|
+
var label = ((_oColumn$exportSettin2 = oColumn.exportSettings) === null || _oColumn$exportSettin2 === void 0 ? void 0 : _oColumn$exportSettin2.fieldLabel) || oColumn.label;
|
|
382
|
+
return DelegateUtil.getLocalizedText(label, oTableController);
|
|
368
383
|
}
|
|
369
|
-
}
|
|
370
|
-
key: "_getDataFieldDescriptionLabel",
|
|
371
|
-
value: function _getDataFieldDescriptionLabel(oColumnExport, oColumn, oTableController, isUnit) {
|
|
372
|
-
var _oColumn$propertyInfo5, _oColumn$propertyInfo6, _oColumn$propertyInfo7, _oColumn$relativePath;
|
|
384
|
+
};
|
|
373
385
|
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
386
|
+
TableAPI._getDataFieldDescriptionLabel = function _getDataFieldDescriptionLabel(oColumnExport, oColumn, oTableController, isUnit) {
|
|
387
|
+
var _oColumn$propertyInfo5, _oColumn$propertyInfo6, _oColumn$propertyInfo7, _oColumn$relativePath;
|
|
388
|
+
|
|
389
|
+
if (oColumn.propertyInfos && ((_oColumn$propertyInfo5 = oColumn.propertyInfos) === null || _oColumn$propertyInfo5 === void 0 ? void 0 : _oColumn$propertyInfo5.length) > 1 && !isUnit && ((_oColumn$propertyInfo6 = oColumn.propertyInfos) !== null && _oColumn$propertyInfo6 !== void 0 && _oColumn$propertyInfo6.includes(oColumnExport.property) || (_oColumn$propertyInfo7 = oColumn.propertyInfos) !== null && _oColumn$propertyInfo7 !== void 0 && _oColumn$propertyInfo7.includes("Property::" + oColumnExport.property)) && ((_oColumn$relativePath = oColumn.relativePath) === null || _oColumn$relativePath === void 0 ? void 0 : _oColumn$relativePath.indexOf("@com.sap.vocabularies.UI.v1.FieldGroup")) === -1) {
|
|
390
|
+
return DelegateUtil.getLocalizedText(oColumn.label, oTableController);
|
|
377
391
|
}
|
|
378
|
-
}
|
|
392
|
+
};
|
|
393
|
+
|
|
394
|
+
_proto.onMassEditButtonPressed = function onMassEditButtonPressed(oEvent, pageController) {
|
|
395
|
+
var oTable = this.content;
|
|
396
|
+
|
|
397
|
+
if (pageController && pageController.massEdit) {
|
|
398
|
+
pageController.massEdit.openMassEditDialog(oTable);
|
|
399
|
+
} else {
|
|
400
|
+
Log.warning("The Controller is not enhanced with Mass Edit functionality");
|
|
401
|
+
}
|
|
402
|
+
};
|
|
403
|
+
|
|
404
|
+
_proto.onTableSelectionChange = function onTableSelectionChange(oEvent) {
|
|
405
|
+
this.fireEvent("selectionChange", oEvent.getParameters());
|
|
406
|
+
};
|
|
379
407
|
|
|
380
408
|
return TableAPI;
|
|
381
409
|
}(MacroAPI), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "tableDefinition", [_dec2], {
|
|
@@ -463,7 +491,12 @@ sap.ui.define(["sap/fe/core/helpers/ClassSupport", "sap/fe/core/helpers/PasteHel
|
|
|
463
491
|
enumerable: true,
|
|
464
492
|
writable: true,
|
|
465
493
|
initializer: null
|
|
466
|
-
}), _descriptor18 = _applyDecoratedDescriptor(_class2.prototype, "
|
|
494
|
+
}), _descriptor18 = _applyDecoratedDescriptor(_class2.prototype, "menu", [_dec17], {
|
|
495
|
+
configurable: true,
|
|
496
|
+
enumerable: true,
|
|
497
|
+
writable: true,
|
|
498
|
+
initializer: null
|
|
499
|
+
}), _descriptor19 = _applyDecoratedDescriptor(_class2.prototype, "selectionChange", [Event], {
|
|
467
500
|
configurable: true,
|
|
468
501
|
enumerable: true,
|
|
469
502
|
writable: true,
|
|
@@ -471,4 +504,4 @@ sap.ui.define(["sap/fe/core/helpers/ClassSupport", "sap/fe/core/helpers/PasteHel
|
|
|
471
504
|
}), _applyDecoratedDescriptor(_class2.prototype, "onTableRowPress", [EventHandler], Object.getOwnPropertyDescriptor(_class2.prototype, "onTableRowPress"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, "onInternalDataReceived", [EventHandler], Object.getOwnPropertyDescriptor(_class2.prototype, "onInternalDataReceived"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, "onPaste", [EventHandler], Object.getOwnPropertyDescriptor(_class2.prototype, "onPaste"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, "onBeforeExport", [EventHandler], Object.getOwnPropertyDescriptor(_class2.prototype, "onBeforeExport"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, "onDataStateChange", [EventHandler], Object.getOwnPropertyDescriptor(_class2.prototype, "onDataStateChange"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, "onMassEditButtonPressed", [EventHandler], Object.getOwnPropertyDescriptor(_class2.prototype, "onMassEditButtonPressed"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, "onTableSelectionChange", [EventHandler], Object.getOwnPropertyDescriptor(_class2.prototype, "onTableSelectionChange"), _class2.prototype)), _class2)) || _class);
|
|
472
505
|
return TableAPI;
|
|
473
506
|
}, false);
|
|
474
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRhYmxlQVBJLnRzIl0sIm5hbWVzIjpbIlRhYmxlQVBJIiwiQVBJQ2xhc3MiLCJNYWNyb0NvbnRleHQiLCJQcm9wZXJ0eSIsInR5cGUiLCJkZWZhdWx0VmFsdWUiLCJtU2V0dGluZ3MiLCJvdGhlcnMiLCJjb250ZW50IiwiYXR0YWNoRXZlbnQiLCJvblRhYmxlU2VsZWN0aW9uQ2hhbmdlIiwiZ2V0U2VsZWN0ZWRDb250ZXh0cyIsIm9FdmVudCIsIm9Db250cm9sbGVyIiwib0NvbnRleHQiLCJtUGFyYW1ldGVycyIsImlzQSIsImdldFByb3BlcnR5IiwiX3JvdXRpbmciLCJuYXZpZ2F0ZUZvcndhcmRUb0NvbnRleHQiLCJnZXRQYXJhbWV0ZXIiLCJnZXRDb250cm9sbGVyIiwibWVzc2FnZUhhbmRsZXIiLCJzaG93TWVzc2FnZURpYWxvZyIsInRhYmxlRGVmaW5pdGlvbiIsImNvbnRyb2wiLCJlbmFibGVQYXN0ZSIsImdldE1vZGVsIiwiYVJhd1Bhc3RlZERhdGEiLCJvVGFibGUiLCJnZXRTb3VyY2UiLCJvUmVzb3VyY2VNb2RlbCIsImdldEVuYWJsZVBhc3RlIiwiUGFzdGVIZWxwZXIiLCJwYXN0ZURhdGEiLCJzYXAiLCJ1aSIsImdldENvcmUiLCJnZXRMaWJyYXJ5UmVzb3VyY2VCdW5kbGUiLCJNZXNzYWdlQm94IiwiZXJyb3IiLCJnZXRUZXh0IiwidGl0bGUiLCJpc1NwbGl0TW9kZSIsImdldFBhcmFtZXRlcnMiLCJ1c2VyRXhwb3J0U2V0dGluZ3MiLCJzcGxpdENlbGxzIiwiaXNSTFRMYW5ndWFnZSIsImdldENvbmZpZ3VyYXRpb24iLCJnZXRSVEwiLCJvVGFibGVDb250cm9sbGVyIiwib0V4cG9ydENvbHVtbnMiLCJleHBvcnRTZXR0aW5ncyIsIndvcmtib29rIiwiY29sdW1ucyIsIm9UYWJsZUNvbHVtbnMiLCJ1cGRhdGVFeHBvcnRTZXR0aW5ncyIsIm9EYXRhU3RhdGVJbmRpY2F0b3IiLCJhRmlsdGVyZWRNZXNzYWdlcyIsIm9JbnRlcm5hbE1vZGVsIiwic2V0UHJvcGVydHkiLCJnZXRCaW5kaW5nQ29udGV4dCIsInBhZ2VDb250cm9sbGVyIiwibWFzc0VkaXQiLCJvcGVuTWFzc0VkaXREaWFsb2ciLCJMb2ciLCJ3YXJuaW5nIiwiZmlyZUV2ZW50Iiwib01lc3NhZ2UiLCJzVGFibGVDb250ZXh0QmluZGluZ1BhdGgiLCJnZXRQYXRoIiwic1RhYmxlUm93QmluZGluZyIsImdldFJvd0JpbmRpbmciLCJnZXRUYXJnZXQiLCJvQ29sdW1ucyIsImZvckVhY2giLCJvQ29sdW1uRXhwb3J0IiwiYUV4cG9ydExhYmVscyIsImNvbHVtbiIsIm9Db2x1bW4iLCJpc1VuaXQiLCJzb21lIiwidW5pdCIsInByb3BlcnR5IiwiRmllbGRHcm91cExhYmVsIiwiX2dldEZpZWxkR3JvdXBFeHBvcnRMYWJlbCIsInVuc2hpZnQiLCJkYXRhRmllbGREZXNjcmlwdGlvbkxhYmVsIiwiX2dldERhdGFGaWVsZERlc2NyaXB0aW9uTGFiZWwiLCJpc0RhdGFQb2ludEZha2VUYXJnZXRQcm9wZXJ0eSIsInJlbGF0aXZlUGF0aCIsImV4cG9ydENvbnRhY3RQcm9wZXJ0eSIsInByb3BlcnR5SW5mb3MiLCJsZW5ndGgiLCJ0b1N0cmluZyIsImxhYmVsIiwicHJvcCIsImluY2x1ZGVzIiwiQXJyYXkiLCJpc0FycmF5IiwibWFwIiwicHVzaCIsIkRlbGVnYXRlVXRpbCIsImdldExvY2FsaXplZFRleHQiLCJmaWx0ZXIiLCJpbmRleCIsImluZGV4T2YiLCJyZXZlcnNlIiwiam9pbiIsImNvbHVtbklkIiwiZmllbGRMYWJlbCIsIk1hY3JvQVBJIiwiRXZlbnQiLCJFdmVudEhhbmRsZXIiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUEwRkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtNQUVNQSxRLFdBRExDLFFBQVEsQ0FBQyx3QkFBRCxD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QywwQkFBQUQsT0FBTyxDQUFDYSxhQUFSLDBFQUF1QkssUUFBdkIsQ0FBZ0NyQixhQUFhLENBQUNPLFFBQTlDLCtCQUNBSixPQUFPLENBQUNhLGFBRFIsbURBQ0EsdUJBQXVCSyxRQUF2QixDQUFnQyxlQUFlckIsYUFBYSxDQUFDTyxRQUE3RCxDQUpELEtBS0EsMEJBQUFKLE9BQU8sQ0FBQ1csWUFBUixnRkFBc0JnQixPQUF0QixDQUE4Qix3Q0FBOUIsT0FBNEUsQ0FBQyxDQU45RSxFQU9FO0FBQ0QsaUJBQU9KLFlBQVksQ0FBQ0MsZ0JBQWIsQ0FBOEJ4QixPQUFPLENBQUNnQixLQUF0QyxFQUF1RDdDLGdCQUF2RCxDQUFQO0FBQ0E7QUFDRDs7OztJQXBYcUI2RCxROzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztnRkF5SHJCQyxLOzs7OztvRkFVQUEsSzs7Ozs7Ozs7Ozs7Ozs7O3VGQWdEQUEsSzs7Ozs7dUVBR0FDLFksc0tBZUFBLFksOEpBTUFBLFksc0pBd0JBQSxZLGdLQWtDQUEsWSx5S0FnSEFBLFksOEtBU0FBLFk7U0FNYWpILFEiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFQSUNsYXNzLCBFdmVudEhhbmRsZXIsIE1hY3JvQ29udGV4dCwgUHJvcGVydHksIEV2ZW50LCBQcm9wZXJ0aWVzT2YgfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCBQYXN0ZUhlbHBlciBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9QYXN0ZUhlbHBlclwiO1xuaW1wb3J0IE1lc3NhZ2VCb3ggZnJvbSBcInNhcC9tL01lc3NhZ2VCb3hcIjtcbmltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IFBhZ2VDb250cm9sbGVyIGZyb20gXCJzYXAvZmUvY29yZS9QYWdlQ29udHJvbGxlclwiO1xuaW1wb3J0IHsgQW5ub3RhdGlvblRhYmxlQ29sdW1uLCBUYWJsZUNvbHVtbiwgVGFibGVWaXN1YWxpemF0aW9uIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvY29udHJvbHMvQ29tbW9uL1RhYmxlXCI7XG5pbXBvcnQgTWFjcm9BUEkgZnJvbSBcIi4vTWFjcm9BUElcIjtcbmltcG9ydCB7IERlbGVnYXRlVXRpbCB9IGZyb20gXCJzYXAvZmUvbWFjcm9zXCI7XG5pbXBvcnQgQ29udGV4dCBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L0NvbnRleHRcIjtcbmltcG9ydCBSZXNvdXJjZUJ1bmRsZSBmcm9tIFwic2FwL2Jhc2UvaTE4bi9SZXNvdXJjZUJ1bmRsZVwiO1xuaW1wb3J0IFRhYmxlIGZyb20gXCJzYXAvdWkvbWRjL1RhYmxlXCI7XG5cbi8qKlxuICogRGVmaW5pdGlvbiBvZiBhIGN1c3RvbSBhY3Rpb24gdG8gYmUgdXNlZCBpbnNpZGUgdGhlIHRhYmxlIHRvb2xiYXJcbiAqXG4gKiBAYWxpYXMgc2FwLmZlLm1hY3Jvcy50YWJsZS5BY3Rpb25cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IHR5cGUgQWN0aW9uID0ge1xuXHQvKipcblx0ICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGFjdGlvblxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRrZXk6IHN0cmluZztcblx0LyoqXG5cdCAqIFRoZSB0ZXh0IHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQgZm9yIHRoaXMgYWN0aW9uXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdHRleHQ6IHN0cmluZztcblx0LyoqXG5cdCAqIFJlZmVyZW5jZSB0byB0aGUga2V5IG9mIGFub3RoZXIgYWN0aW9uIGFscmVhZHkgZGlzcGxheWVkIGluIHRoZSB0b29sYmFyIHRvIHByb3Blcmx5IHBsYWNlIHRoaXMgb25lXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdGFuY2hvcj86IHN0cmluZztcblx0LyoqXG5cdCAqIERlZmluZXMgd2hlcmUgdGhpcyBhY3Rpb24gc2hvdWxkIGJlIHBsYWNlZCByZWxhdGl2ZSB0byB0aGUgZGVmaW5lZCBhbmNob3Jcblx0ICpcblx0ICogQWxsb3dlZCB2YWx1ZXMgYXJlIGBCZWZvcmVgIGFuZCBgQWZ0ZXJgXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdHBsYWNlbWVudD86IHN0cmluZztcblxuXHQvKipcblx0ICogRXZlbnQgaGFuZGxlciB0byBiZSBjYWxsZWQgd2hlbiB0aGUgdXNlciBjaG9vc2VzIHRoZSBhY3Rpb25cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0cHJlc3M6IHN0cmluZztcbn07XG5cbi8qKlxuICogRGVmaW5pdGlvbiBvZiBhIGN1c3RvbSBjb2x1bW4gdG8gYmUgdXNlZCBpbnNpZGUgdGhlIHRhYmxlLlxuICpcbiAqIFRoZSB0ZW1wbGF0ZSBmb3IgdGhlIGNvbHVtbiBoYXMgdG8gYmUgcHJvdmlkZWQgYXMgdGhlIGRlZmF1bHQgYWdncmVnYXRpb25cbiAqXG4gKiBAYWxpYXMgc2FwLmZlLm1hY3Jvcy50YWJsZS5Db2x1bW5cbiAqIEBwdWJsaWNcbiAqIEBleHBlcmltZW50YWxcbiAqL1xuZXhwb3J0IHR5cGUgQ29sdW1uID0ge1xuXHQvKipcblx0ICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGNvbHVtblxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRrZXk6IHN0cmluZztcblx0LyoqXG5cdCAqIFRoZSB0ZXh0IHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQgZm9yIHRoaXMgY29sdW1uIGhlYWRlclxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRoZWFkZXI6IHN0cmluZztcblx0LyoqXG5cdCAqIFJlZmVyZW5jZSB0byB0aGUga2V5IG9mIGFub3RoZXIgY29sdW1uIGFscmVhZHkgZGlzcGxheWVkIGluIHRoZSB0YWJsZSB0byBwcm9wZXJseSBwbGFjZSB0aGlzIG9uZVxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRhbmNob3I/OiBzdHJpbmc7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIHdoZXJlIHRoaXMgY29sdW1uIHNob3VsZCBiZSBwbGFjZWQgcmVsYXRpdmUgdG8gdGhlIGRlZmluZWQgYW5jaG9yXG5cdCAqXG5cdCAqIEFsbG93ZWQgdmFsdWVzIGFyZSBgQmVmb3JlYCBhbmQgYEFmdGVyYFxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRwbGFjZW1lbnQ/OiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIEJ1aWxkaW5nIGJsb2NrIHVzZWQgdG8gY3JlYXRlIGEgdGFibGUgYmFzZWQgb24gdGhlIG1ldGFkYXRhIHByb3ZpZGVkIGJ5IE9EYXRhIFY0LlxuICogPGJyPlxuICogVXN1YWxseSwgYSBMaW5lSXRlbSBvciBQcmVzZW50YXRpb25WYXJpYW50IGFubm90YXRpb24gaXMgZXhwZWN0ZWQsIGJ1dCB0aGUgVGFibGUgYnVpbGRpbmcgYmxvY2sgY2FuIGFsc28gYmUgdXNlZCB0byBkaXNwbGF5IGFuIEVudGl0eVNldC5cbiAqXG4gKlxuICogVXNhZ2UgZXhhbXBsZTpcbiAqIDxwcmU+XG4gKiAmbHQ7bWFjcm86VGFibGUgaWQ9XCJNeVRhYmxlXCIgbWV0YVBhdGg9XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuTGluZUl0ZW1cIiAvJmd0O1xuICogPC9wcmU+XG4gKlxuICogQGFsaWFzIHNhcC5mZS5tYWNyb3MuVGFibGVcbiAqIEBwdWJsaWNcbiAqL1xuQEFQSUNsYXNzKFwic2FwLmZlLm1hY3Jvcy5UYWJsZUFQSVwiKVxuY2xhc3MgVGFibGVBUEkgZXh0ZW5kcyBNYWNyb0FQSSB7XG5cdGNvbnN0cnVjdG9yKG1TZXR0aW5ncz86IFByb3BlcnRpZXNPZjxUYWJsZUFQST4sIC4uLm90aGVyczogYW55W10pIHtcblx0XHRzdXBlcihtU2V0dGluZ3MgYXMgYW55LCAuLi5vdGhlcnMpO1xuXG5cdFx0aWYgKHRoaXMuY29udGVudCkge1xuXHRcdFx0dGhpcy5jb250ZW50LmF0dGFjaEV2ZW50KFwic2VsZWN0aW9uQ2hhbmdlXCIsIHt9LCB0aGlzLm9uVGFibGVTZWxlY3Rpb25DaGFuZ2UsIHRoaXMpO1xuXHRcdH1cblx0fVxuXG5cdEBNYWNyb0NvbnRleHQoKVxuXHR0YWJsZURlZmluaXRpb24hOiBUYWJsZVZpc3VhbGl6YXRpb247XG5cblx0LyoqXG5cdCAqIEFuIGV4cHJlc3Npb24gdGhhdCBhbGxvd3MgeW91IHRvIGNvbnRyb2wgdGhlICdyZWFkLW9ubHknIHN0YXRlIG9mIHRoZSB0YWJsZS5cblx0ICpcblx0ICogSWYgeW91IGRvIG5vdCBzZXQgYW55IGV4cHJlc3Npb24sIFNBUCBGaW9yaSBlbGVtZW50cyBob29rcyBpbnRvIHRoZSBzdGFuZGFyZCBsaWZlY3ljbGUgdG8gZGV0ZXJtaW5lIHRoZSBjdXJyZW50IHN0YXRlLlxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRAUHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiB9KVxuXHRyZWFkT25seSE6IGJvb2xlYW47XG5cblx0LyoqXG5cdCAqIFRoZSBpZGVudGlmaWVyIG9mIHRoZSB0YWJsZSBjb250cm9sLlxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRAUHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdGlkITogc3RyaW5nO1xuXG5cdC8qKlxuXHQgKiBBbiBleHByZXNzaW9uIHRoYXQgYWxsb3dzIHlvdSB0byBjb250cm9sIHRoZSAnYnVzeScgc3RhdGUgb2YgdGhlIHRhYmxlLlxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRAUHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuXHRidXN5ITogYm9vbGVhbjtcblxuXHQvKipcblx0ICogRGVmaW5lcyB0aGUgdHlwZSBvZiB0YWJsZSB0aGF0IHdpbGwgYmUgdXNlZCBieSB0aGUgbWFjcm8gdG8gcmVuZGVyIHRoZSBkYXRhLlxuXHQgKlxuXHQgKiBBbGxvd2VkIHZhbHVlcyBhcmUgYEdyaWRUYWJsZWAgYW5kIGBSZXNwb25zaXZlVGFibGVgXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEBQcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIsIGRlZmF1bHRWYWx1ZTogXCJSZXNwb25zaXZlVGFibGVcIiB9KVxuXHR0eXBlITogc3RyaW5nO1xuXG5cdC8qKlxuXHQgKiBDb250cm9scyBpZiB0aGUgZXhwb3J0IGZ1bmN0aW9uYWxpdHkgb2YgdGhlIHRhYmxlIGlzIGVuYWJsZWQgb3Igbm90LlxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRAUHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiwgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG5cdGVuYWJsZUV4cG9ydCE6IGJvb2xlYW47XG5cblx0LyoqXG5cdCAqIENvbnRyb2xzIGlmIHRoZSBwYXN0ZSBmdW5jdGlvbmFsaXR5IG9mIHRoZSB0YWJsZSBpcyBlbmFibGVkIG9yIG5vdC5cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QFByb3BlcnR5KHsgdHlwZTogXCJib29sZWFuXCIsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcblx0ZW5hYmxlUGFzdGUhOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBDb250cm9scyB3aGV0aGVyIHRoZSB0YWJsZSBjYW4gYmUgb3BlbmVkIGluIGZ1bGxzY3JlZW4gbW9kZSBvciBub3QuXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEBQcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhblwiLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG5cdGVuYWJsZUZ1bGxTY3JlZW4hOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBJZCBvZiB0aGUgRmlsdGVyQmFyIGJ1aWxkaW5nIGJsb2NrIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFibGUuXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEBQcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0ZmlsdGVyQmFyITogc3RyaW5nO1xuXG5cdC8qKlxuXHQgKiBEZWZpbmVzIHRoZSBzZWxlY3Rpb24gbW9kZSB0byBiZSB1c2VkIGJ5IHRoZSB0YWJsZS5cblx0ICpcblx0ICogQWxsb3dlZCB2YWx1ZXMgYXJlIGBOb25lYCwgYFNpbmdsZWAsIGBNdWx0aWAgb3IgYEF1dG9gXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEBQcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0c2VsZWN0aW9uTW9kZSE6IHN0cmluZztcblxuXHQvKipcblx0ICogU3BlY2lmaWVzIHRoZSBoZWFkZXIgdGV4dCB0aGF0IGlzIHNob3duIGluIHRoZSB0YWJsZS5cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QFByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiB9KVxuXHRoZWFkZXIhOiBzdHJpbmc7XG5cblx0LyoqXG5cdCAqIFNwZWNpZmllcyB0aGUgaGVhZGVyIHRleHQgdGhhdCBpcyBzaG93biBpbiB0aGUgdGFibGUuXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEBQcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhblwiLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG5cdGVuYWJsZUF1dG9Db2x1bW5XaWR0aCE6IGJvb2xlYW47XG5cblx0LyoqXG5cdCAqIENvbnRyb2xzIGlmIHRoZSBoZWFkZXIgdGV4dCBzaG91bGQgYmUgc2hvd24gb3Igbm90LlxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRAUHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiwgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG5cdGhlYWRlclZpc2libGUhOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBBbiBldmVudCB0cmlnZ2VyZWQgd2hlbiB0aGUgdXNlciBjaG9vc2VzIGEgcm93OyB0aGUgZXZlbnQgY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgd2hpY2ggcm93IHdhcyBjaG9zZW4uXG5cdCAqXG5cdCAqIFlvdSBjYW4gc2V0IHRoaXMgaW4gb3JkZXIgdG8gaGFuZGxlIHRoZSBuYXZpZ2F0aW9uIG1hbnVhbGx5LlxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRARXZlbnRcblx0cm93UHJlc3MhOiBGdW5jdGlvbjtcblxuXHQvKipcblx0ICogQW4gZXZlbnQgdHJpZ2dlcmVkIHdoZW4gdGhlIFRhYmxlIFN0YXRlIGNoYW5nZXMuXG5cdCAqXG5cdCAqIFlvdSBjYW4gc2V0IHRoaXMgaW4gb3JkZXIgdG8gc3RvcmUgdGhlIHRhYmxlIHN0YXRlIGluIHRoZSBhcHBzdGF0ZS5cblx0ICpcblx0ICogQHByaXZhdGVcblx0ICovXG5cdEBFdmVudFxuXHRzdGF0ZUNoYW5nZWQhOiBGdW5jdGlvbjtcblxuXHQvKipcblx0ICogQ29udHJvbHMgd2hpY2ggb3B0aW9ucyBzaG91bGQgYmUgZW5hYmxlZCBmb3IgdGhlIHRhYmxlIHBlcnNvbmFsaXphdGlvbiBkaWFsb2cuXG5cdCAqXG5cdCAqIElmIGl0IGlzIHNldCB0byBgdHJ1ZWAsIGFsbCBwb3NzaWJsZSBvcHRpb25zIGZvciB0aGlzIGtpbmQgb2YgdGFibGUgYXJlIGVuYWJsZWQuPGJyLz5cblx0ICogSWYgaXQgaXMgc2V0IHRvIGBmYWxzZWAsIHBlcnNvbmFsaXphdGlvbiBpcyBkaXNhYmxlZC48YnIvPlxuXHQgKjxici8+XG5cdCAqIFlvdSBjYW4gYWxzbyBwcm92aWRlIGEgbW9yZSBncmFudWxhciBjb250cm9sIGZvciB0aGUgcGVyc29uYWxpemF0aW9uIGJ5IHByb3ZpZGluZyBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IHdpdGggdGhlIG9wdGlvbnMgeW91IHdhbnQgdG8gYmUgYXZhaWxhYmxlLjxici8+XG5cdCAqIEF2YWlsYWJsZSBvcHRpb25zIGFyZTo8YnIvPlxuXHQgKiAgLSBTb3J0PGJyLz5cblx0ICogIC0gQ29sdW1uPGJyLz5cblx0ICogIC0gRmlsdGVyPGJyLz5cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QFByb3BlcnR5KHsgdHlwZTogXCJib29sZWFufHN0cmluZ1wiLCBkZWZhdWx0VmFsdWU6IHRydWUgfSlcblx0cGVyc29uYWxpemF0aW9uITogYm9vbGVhbiB8IHN0cmluZztcblxuXHQvKipcblx0ICogQ29udHJvbHMgdGhlIGtpbmQgb2YgdmFyaWFudCBtYW5hZ2VtZW50IHRoYXQgc2hvdWxkIGJlIGVuYWJsZWQgZm9yIHRoZSB0YWJsZS5cblx0ICpcblx0ICogQWxsb3dlZCB2YWx1ZXMgYXJlIGBQYWdlYCwgYENvbnRyb2xgIGFuZCBgTm9uZWAuPGJyLz5cblx0ICogSWYgdGhlIHRhYmxlIGlzIHVzZWQgd2l0aGluIGEgU0FQIEZpb3JpIGVsZW1lbnRzIHRlbXBsYXRlLCB0aGUgZGVmYXVsdCB2YWx1ZSB3aWxsIGJlIHRha2VuIGZyb20gdGhlIGN1cnJlbnQgcGFnZSB2YXJpYW50IG1hbmFnZW1lbnQuPGJyLz5cblx0ICogT3RoZXJ3aXNlIGl0J3MgYE5vbmVgLlxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRAUHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdHZhcmlhbnRNYW5hZ2VtZW50ITogc3RyaW5nO1xuXG5cdC8qKlxuXHQgKiBHZXRzIGNvbnRleHRzIGZyb20gdGhlIHRhYmxlIHRoYXQgaGF2ZSBiZWVuIHNlbGVjdGVkIGJ5IHRoZSB1c2VyLlxuXHQgKlxuXHQgKiBAcmV0dXJucyBDb250ZXh0cyBvZiB0aGUgcm93cyBzZWxlY3RlZCBieSB0aGUgdXNlclxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRnZXRTZWxlY3RlZENvbnRleHRzKCk6IENvbnRleHRbXSB7XG5cdFx0cmV0dXJuICgodGhpcy5jb250ZW50IGFzIGFueSkgYXMgVGFibGUpLmdldFNlbGVjdGVkQ29udGV4dHMoKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBBbiBldmVudCB0cmlnZ2VyZWQgd2hlbiB0aGUgc2VsZWN0aW9uIGluIHRoZSB0YWJsZSBjaGFuZ2VzLlxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRARXZlbnRcblx0c2VsZWN0aW9uQ2hhbmdlITogRnVuY3Rpb247XG5cblx0QEV2ZW50SGFuZGxlclxuXHRvblRhYmxlUm93UHJlc3Mob0V2ZW50OiBVSTVFdmVudCwgb0NvbnRyb2xsZXI6IFBhZ2VDb250cm9sbGVyLCBvQ29udGV4dDogQ29udGV4dCwgbVBhcmFtZXRlcnM6IGFueSkge1xuXHRcdC8vIEluIHRoZSBjYXNlIG9mIGFuIGFuYWx5dGljYWwgdGFibGUsIGlmIHdlJ3JlIHRyeWluZyB0byBuYXZpZ2F0ZSB0byBhIGNvbnRleHQgY29ycmVzcG9uZGluZyB0byBhIHZpc3VhbCBncm91cCBvciBncmFuZCB0b3RhbFxuXHRcdC8vIC0tPiBDYW5jZWwgbmF2aWdhdGlvblxuXHRcdGlmIChcblx0XHRcdG9Db250ZXh0ICYmXG5cdFx0XHRvQ29udGV4dC5pc0EoXCJzYXAudWkubW9kZWwub2RhdGEudjQuQ29udGV4dFwiKSAmJlxuXHRcdFx0dHlwZW9mIG9Db250ZXh0LmdldFByb3BlcnR5KFwiQCR1aTUubm9kZS5pc0V4cGFuZGVkXCIpID09PSBcImJvb2xlYW5cIlxuXHRcdCkge1xuXHRcdFx0cmV0dXJuIGZhbHNlO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHQob0NvbnRyb2xsZXIgYXMgYW55KS5fcm91dGluZy5uYXZpZ2F0ZUZvcndhcmRUb0NvbnRleHQob0NvbnRleHQsIG1QYXJhbWV0ZXJzKTtcblx0XHR9XG5cdH1cblxuXHRARXZlbnRIYW5kbGVyXG5cdG9uSW50ZXJuYWxEYXRhUmVjZWl2ZWQob0V2ZW50OiBVSTVFdmVudCkge1xuXHRcdGlmIChvRXZlbnQuZ2V0UGFyYW1ldGVyKFwiZXJyb3JcIikpIHtcblx0XHRcdHRoaXMuZ2V0Q29udHJvbGxlcigpLm1lc3NhZ2VIYW5kbGVyLnNob3dNZXNzYWdlRGlhbG9nKCk7XG5cdFx0fVxuXHR9XG5cdEBFdmVudEhhbmRsZXJcblx0b25QYXN0ZShvRXZlbnQ6IFVJNUV2ZW50LCBvQ29udHJvbGxlcjogUGFnZUNvbnRyb2xsZXIpIHtcblx0XHQvLyBJZiBwYXN0ZSBpcyBkaXNhYmxlIG9yIGlmIHdlJ3JlIG5vdCBpbiBlZGl0IG1vZGUsIHdlIGNhbid0IHBhc3RlIGFueXRoaW5nXG5cdFx0aWYgKCF0aGlzLnRhYmxlRGVmaW5pdGlvbi5jb250cm9sLmVuYWJsZVBhc3RlIHx8ICF0aGlzLmdldE1vZGVsKFwidWlcIikuZ2V0UHJvcGVydHkoXCIvaXNFZGl0YWJsZVwiKSkge1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblxuXHRcdGNvbnN0IGFSYXdQYXN0ZWREYXRhID0gb0V2ZW50LmdldFBhcmFtZXRlcihcImRhdGFcIiksXG5cdFx0XHRvVGFibGUgPSBvRXZlbnQuZ2V0U291cmNlKCk7XG5cdFx0bGV0IG9SZXNvdXJjZU1vZGVsO1xuXG5cdFx0aWYgKG9UYWJsZS5nZXRFbmFibGVQYXN0ZSgpID09PSB0cnVlKSB7XG5cdFx0XHRQYXN0ZUhlbHBlci5wYXN0ZURhdGEoYVJhd1Bhc3RlZERhdGEsIG9UYWJsZSwgb0NvbnRyb2xsZXIpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRvUmVzb3VyY2VNb2RlbCA9IHNhcC51aS5nZXRDb3JlKCkuZ2V0TGlicmFyeVJlc291cmNlQnVuZGxlKFwic2FwLmZlLmNvcmVcIikgYXMgUmVzb3VyY2VCdW5kbGU7XG5cdFx0XHRNZXNzYWdlQm94LmVycm9yKG9SZXNvdXJjZU1vZGVsLmdldFRleHQoXCJUX09QX0NPTlRST0xMRVJfU0FQRkVfUEFTVEVfRElTQUJMRURfTUVTU0FHRVwiKSwge1xuXHRcdFx0XHR0aXRsZTogb1Jlc291cmNlTW9kZWwuZ2V0VGV4dChcIkNfQ09NTU9OX1NBUEZFX0VSUk9SXCIpXG5cdFx0XHR9KTtcblx0XHR9XG5cdH1cblxuXHQvLyBUaGlzIGV2ZW50IHdpbGwgYWxsb3cgdXMgdG8gaW50ZXJjZXB0IHRoZSBleHBvcnQgYmVmb3JlIGlzIHRyaWdnZXJlZCB0byBjb3ZlciBzcGVjaWZpYyBjYXNlc1xuXHQvLyB0aGF0IGNvdWxkbid0IGJlIGFkZHJlc3NlZCBvbiB0aGUgcHJvcGVydHlJbmZvcyBmb3IgZWFjaCBjb2x1bW4uXG5cdC8vIGUuZy4gRml4ZWQgVGFyZ2V0IFZhbHVlIGZvciB0aGUgZGF0YXBvaW50c1xuXHRARXZlbnRIYW5kbGVyXG5cdG9uQmVmb3JlRXhwb3J0KG9FdmVudDogVUk1RXZlbnQpIHtcblx0XHRjb25zdCBpc1NwbGl0TW9kZSA9IG9FdmVudC5nZXRQYXJhbWV0ZXJzKCkudXNlckV4cG9ydFNldHRpbmdzLnNwbGl0Q2VsbHMsXG5cdFx0XHRpc1JMVExhbmd1YWdlID0gc2FwLnVpXG5cdFx0XHRcdC5nZXRDb3JlKClcblx0XHRcdFx0LmdldENvbmZpZ3VyYXRpb24oKVxuXHRcdFx0XHQuZ2V0UlRMKCksXG5cdFx0XHRvVGFibGVDb250cm9sbGVyID0gb0V2ZW50LmdldFNvdXJjZSgpLFxuXHRcdFx0b0V4cG9ydENvbHVtbnMgPSBvRXZlbnQuZ2V0UGFyYW1ldGVycygpLmV4cG9ydFNldHRpbmdzLndvcmtib29rPy5jb2x1bW5zLFxuXHRcdFx0b1RhYmxlQ29sdW1ucyA9IHRoaXMudGFibGVEZWZpbml0aW9uLmNvbHVtbnM7XG5cblx0XHRUYWJsZUFQSS51cGRhdGVFeHBvcnRTZXR0aW5ncyhvRXhwb3J0Q29sdW1ucywgb1RhYmxlQ29sdW1ucywgb1RhYmxlQ29udHJvbGxlciwgaXNTcGxpdE1vZGUsIGlzUkxUTGFuZ3VhZ2UpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEhhbmRsZXMgdGhlIE1EQyBEYXRhU3RhdGVJbmRpY2F0b3IgcGx1Z2luIHRvIGRpc3BsYXkgbWVzc2FnZVN0cmlwIG9uIGEgdGFibGUuXG5cdCAqIEBwYXJhbSBvTWVzc2FnZVxuXHQgKiBAcGFyYW0gb1RhYmxlXG5cdCAqIEBuYW1lIGRhdGFTdGF0ZUZpbHRlclxuXHQgKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciB0byByZW5kZXIgdmlzaWJsZSB0aGUgbWVzc2FnZVN0cmlwXG5cdCAqL1xuXHRzdGF0aWMgZGF0YVN0YXRlSW5kaWNhdG9yRmlsdGVyKG9NZXNzYWdlOiBhbnksIG9UYWJsZTogYW55KTogYm9vbGVhbiB7XG5cdFx0Y29uc3Qgc1RhYmxlQ29udGV4dEJpbmRpbmdQYXRoID0gb1RhYmxlLmdldEJpbmRpbmdDb250ZXh0KCk/LmdldFBhdGgoKTtcblx0XHRjb25zdCBzVGFibGVSb3dCaW5kaW5nID0gKHNUYWJsZUNvbnRleHRCaW5kaW5nUGF0aCA/IHNUYWJsZUNvbnRleHRCaW5kaW5nUGF0aCArIFwiL1wiIDogXCJcIikgKyBvVGFibGUuZ2V0Um93QmluZGluZygpLmdldFBhdGgoKTtcblx0XHRyZXR1cm4gc1RhYmxlUm93QmluZGluZyA9PT0gb01lc3NhZ2UuZ2V0VGFyZ2V0KCkgPyB0cnVlIDogZmFsc2U7XG5cdH1cblxuXHQvKipcblx0ICogVGhpcyBldmVudCBoYW5kbGVzIHRoZSBEYXRhU3RhdGUgb2YgdGhlIERhdGFTdGF0ZUluZGljYXRvciBwbHVnaW4gZnJvbSBNREMgb24gYSB0YWJsZS5cblx0ICogSXQncyBmaXJlZCB3aGVuIG5ldyBlcnJvciBtZXNzYWdlcyBhcmUgc2VudCBmcm9tIHRoZSBiYWNrZW5kIHRvIHVwZGF0ZSByb3cgaGlnaGxpZ2h0aW5nLlxuXHQgKlxuXHQgKiBAbmFtZSBvbkRhdGFTdGF0ZUNoYW5nZVxuXHQgKiBAcGFyYW0ge29iamVjdH0gb0V2ZW50IEV2ZW50IG9iamVjdFxuXHQgKi9cblx0QEV2ZW50SGFuZGxlclxuXHRvbkRhdGFTdGF0ZUNoYW5nZShvRXZlbnQ6IFVJNUV2ZW50KSB7XG5cdFx0Y29uc3Qgb0RhdGFTdGF0ZUluZGljYXRvciA9IG9FdmVudC5nZXRTb3VyY2UoKTtcblx0XHRjb25zdCBhRmlsdGVyZWRNZXNzYWdlcyA9IG9FdmVudC5nZXRQYXJhbWV0ZXIoXCJmaWx0ZXJlZE1lc3NhZ2VzXCIpO1xuXHRcdGlmIChhRmlsdGVyZWRNZXNzYWdlcykge1xuXHRcdFx0Y29uc3Qgb0ludGVybmFsTW9kZWwgPSBvRGF0YVN0YXRlSW5kaWNhdG9yLmdldE1vZGVsKFwiaW50ZXJuYWxcIik7XG5cdFx0XHRvSW50ZXJuYWxNb2RlbC5zZXRQcm9wZXJ0eShcImZpbHRlcmVkTWVzc2FnZXNcIiwgYUZpbHRlcmVkTWVzc2FnZXMsIG9EYXRhU3RhdGVJbmRpY2F0b3IuZ2V0QmluZGluZ0NvbnRleHQoXCJpbnRlcm5hbFwiKSk7XG5cdFx0fVxuXHR9XG5cblx0c3RhdGljIHVwZGF0ZUV4cG9ydFNldHRpbmdzKFxuXHRcdG9FeHBvcnRDb2x1bW5zOiBhbnksXG5cdFx0b0NvbHVtbnM6IFRhYmxlQ29sdW1uW10sXG5cdFx0b1RhYmxlQ29udHJvbGxlcjogUGFnZUNvbnRyb2xsZXIsXG5cdFx0aXNTcGxpdE1vZGU6IGJvb2xlYW4sXG5cdFx0aXNSTFRMYW5ndWFnZTogYm9vbGVhblxuXHQpOiBhbnkge1xuXHRcdG9FeHBvcnRDb2x1bW5zLmZvckVhY2goKG9Db2x1bW5FeHBvcnQ6IGFueSkgPT4ge1xuXHRcdFx0bGV0IGFFeHBvcnRMYWJlbHM6IHN0cmluZ1tdID0gW107XG5cdFx0XHRvQ29sdW1ucz8uZm9yRWFjaChjb2x1bW4gPT4ge1xuXHRcdFx0XHRjb25zdCBvQ29sdW1uID0gY29sdW1uIGFzIEFubm90YXRpb25UYWJsZUNvbHVtbjtcblx0XHRcdFx0aWYgKGlzU3BsaXRNb2RlKSB7XG5cdFx0XHRcdFx0Ly8gYUV4cG9ydExhYmVscyB3aWxsIGNvbnRhaW4gbGFiZWxzIGZyb20gYSBGaWVsZEdyb3VwLCBhIHRleHQgYW5ub3RhdGlvbiBhbmQgYSBEYXRhUG9pbnRcblx0XHRcdFx0XHQvLyBUaGVzZSBsYWJlbHMgd2lsbCBiZSB1c2VkIGZvciBjaGlsZCBwcm9wZXJ0aWVzIChzaW1wbGUgcHJvcGVydGllcykgZnJvbSBjb21wbGV4UHJvcGVydHlcblx0XHRcdFx0XHQvLyBVbml0L2N1cnJlbmN5IHByb3BlcnRpZXMgd2lsbCBiZSBkaXNtaXNzIGFzIGl0IGNvdWxkIGJlIHVzZWQgaW4gc2V2ZXJhbCBkYXRhZmllbGRzLlxuXHRcdFx0XHRcdGNvbnN0IGlzVW5pdCA9IG9Db2x1bW5zLnNvbWUoY29sdW1uID0+IChjb2x1bW4gYXMgQW5ub3RhdGlvblRhYmxlQ29sdW1uKS51bml0ID09PSBvQ29sdW1uRXhwb3J0LnByb3BlcnR5KTtcblx0XHRcdFx0XHQvLyBDcmVhdGUgRXhwb3J0aW5nIGxhYmVscyBhcnJheVxuXHRcdFx0XHRcdGNvbnN0IEZpZWxkR3JvdXBMYWJlbCA9IFRhYmxlQVBJLl9nZXRGaWVsZEdyb3VwRXhwb3J0TGFiZWwob0NvbHVtbkV4cG9ydCwgb0NvbHVtbiwgb1RhYmxlQ29udHJvbGxlcik7XG5cdFx0XHRcdFx0aWYgKEZpZWxkR3JvdXBMYWJlbCkge1xuXHRcdFx0XHRcdFx0YUV4cG9ydExhYmVscy51bnNoaWZ0KEZpZWxkR3JvdXBMYWJlbCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC8vIEZvciBhIHRleHQgYW5ub3RhdGlvbiwgZXhwb3J0IGxhYmVsIHRlbXBsYXRlIHVzZWQgaXMgPHZhbHVlPiAtIDxkZXNjcmlwdGlvbj4gYW5kIGZvciBhIERhdGFQb2ludCA8ZGF0YXBvaW50VmFsdWU+IC0gPFRhcmdldFZhbHVlPi5cblx0XHRcdFx0XHQvLyBJbiBib3RoIGNhc2VzIGludGVybmF0aW9uYWxpemF0aW9uIGlzIG5lZWRlZFxuXHRcdFx0XHRcdGNvbnN0IGRhdGFGaWVsZERlc2NyaXB0aW9uTGFiZWwgPSBUYWJsZUFQSS5fZ2V0RGF0YUZpZWxkRGVzY3JpcHRpb25MYWJlbChcblx0XHRcdFx0XHRcdG9Db2x1bW5FeHBvcnQsXG5cdFx0XHRcdFx0XHRvQ29sdW1uLFxuXHRcdFx0XHRcdFx0b1RhYmxlQ29udHJvbGxlcixcblx0XHRcdFx0XHRcdGlzVW5pdFxuXHRcdFx0XHRcdCk7XG5cdFx0XHRcdFx0aWYgKGRhdGFGaWVsZERlc2NyaXB0aW9uTGFiZWwpIHtcblx0XHRcdFx0XHRcdGFFeHBvcnRMYWJlbHMudW5zaGlmdChkYXRhRmllbGREZXNjcmlwdGlvbkxhYmVsKTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQvL0FkZCBUYXJnZXRWYWx1ZSBvbiBkdW1teSBjcmVhdGVkIHByb3BlcnR5IHdoZW4gIGV4cG9ydGluZyBvbiBzcGxpdCBtb2RlXG5cdFx0XHRcdFx0aWYgKG9Db2x1bW4uaXNEYXRhUG9pbnRGYWtlVGFyZ2V0UHJvcGVydHkgJiYgb0NvbHVtbi5yZWxhdGl2ZVBhdGggPT09IG9Db2x1bW5FeHBvcnQucHJvcGVydHkpIHtcblx0XHRcdFx0XHRcdG9Db2x1bW5FeHBvcnQucHJvcGVydHkgPSBbb0NvbHVtbkV4cG9ydC5wcm9wZXJ0eV07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC8vTW9kaWZ5IGV4cG9ydGVkIHZhbHVlIHdoZW4gdXNpbmcgQ29tbXVuaWNhdGlvbi5Db250YWN0IGRhdGFGaWVsZEZvckFubm90YXRpb25cblx0XHRcdFx0Ly9jb250YWN0PmZuIHByb3BlcnR5IHNob3VsZCBiZSBleHBvcnRlZFxuXHRcdFx0XHRpZiAob0NvbHVtbi5leHBvcnRDb250YWN0UHJvcGVydHkgJiYgY29sdW1uLnByb3BlcnR5SW5mb3MpIHtcblx0XHRcdFx0XHRpZiAoY29sdW1uLnByb3BlcnR5SW5mb3M/Lmxlbmd0aCA9PT0gMSAmJiBjb2x1bW4ucHJvcGVydHlJbmZvcz8udG9TdHJpbmcoKSA9PT0gb0NvbHVtbkV4cG9ydC5wcm9wZXJ0eS50b1N0cmluZygpKSB7XG5cdFx0XHRcdFx0XHRvQ29sdW1uRXhwb3J0LnByb3BlcnR5ID0gb0NvbHVtbi5leHBvcnRDb250YWN0UHJvcGVydHk7XG5cdFx0XHRcdFx0XHRvQ29sdW1uRXhwb3J0LmxhYmVsID0gb0NvbHVtbi5sYWJlbDtcblx0XHRcdFx0XHR9IGVsc2UgaWYgKFxuXHRcdFx0XHRcdFx0Y29sdW1uLnByb3BlcnR5SW5mb3M/Lmxlbmd0aCA+IDEgJiZcblx0XHRcdFx0XHRcdG9Db2x1bW4ucHJvcGVydHlJbmZvcz8uc29tZShwcm9wID0+IG9Db2x1bW5FeHBvcnQucHJvcGVydHkuaW5jbHVkZXMocHJvcCkpICYmXG5cdFx0XHRcdFx0XHRBcnJheS5pc0FycmF5KG9Db2x1bW5FeHBvcnQucHJvcGVydHkpXG5cdFx0XHRcdFx0KSB7XG5cdFx0XHRcdFx0XHRvQ29sdW1uRXhwb3J0LnByb3BlcnR5ID0gb0NvbHVtbkV4cG9ydC5wcm9wZXJ0eT8ubWFwKChwcm9wZXJ0eTogc3RyaW5nKSA9PiB7XG5cdFx0XHRcdFx0XHRcdHJldHVybiBvQ29sdW1uLnByb3BlcnR5SW5mb3M/LnNvbWUocHJvcCA9PiBwcm9wID09PSBwcm9wZXJ0eSkgPyBvQ29sdW1uLmV4cG9ydENvbnRhY3RQcm9wZXJ0eSA6IHByb3BlcnR5O1xuXHRcdFx0XHRcdFx0fSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHRcdGFFeHBvcnRMYWJlbHMucHVzaChEZWxlZ2F0ZVV0aWwuZ2V0TG9jYWxpemVkVGV4dChvQ29sdW1uRXhwb3J0LmxhYmVsLCBvVGFibGVDb250cm9sbGVyKSk7XG5cdFx0XHRpZiAoYUV4cG9ydExhYmVscy5sZW5ndGggPiAxKSB7XG5cdFx0XHRcdC8vIFJlbW92ZSBkdXBsaWNhdGUgbGFiZWxzIChlLmcuIEZpZWxkR3JvdXAgbGFiZWwgaXMgdGhlIHNhbWUgYXMgdGhlIGxhYmVsIG9mIG9uZSBvZiB0aGUgcHJvcGVydGllcylcblx0XHRcdFx0YUV4cG9ydExhYmVscyA9IGFFeHBvcnRMYWJlbHMuZmlsdGVyKGZ1bmN0aW9uKGxhYmVsLCBpbmRleCkge1xuXHRcdFx0XHRcdGlmIChhRXhwb3J0TGFiZWxzLmluZGV4T2YobGFiZWwpID09IGluZGV4KSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gbGFiZWw7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KTtcblx0XHRcdH1cblx0XHRcdC8vIENoZWNrIGlmIGEgUlRMIGxhbmd1YWdlIGlmIHVzZWQgYW5kIGlmIHNvIHdlIG5lZWQgdG8gcmV2ZXJzZSBsYWJlbHNcblx0XHRcdGlmIChpc1JMVExhbmd1YWdlKSB7XG5cdFx0XHRcdGFFeHBvcnRMYWJlbHMucmV2ZXJzZSgpO1xuXHRcdFx0fVxuXHRcdFx0b0NvbHVtbkV4cG9ydC5sYWJlbCA9IGFFeHBvcnRMYWJlbHMuam9pbihcIiAtIFwiKTtcblx0XHR9KTtcblx0XHRyZXR1cm4gb0V4cG9ydENvbHVtbnM7XG5cdH1cblxuXHRzdGF0aWMgX2dldEZpZWxkR3JvdXBFeHBvcnRMYWJlbChvQ29sdW1uRXhwb3J0OiBhbnksIG9Db2x1bW46IEFubm90YXRpb25UYWJsZUNvbHVtbiwgb1RhYmxlQ29udHJvbGxlcjogUGFnZUNvbnRyb2xsZXIpIHtcblx0XHRpZiAoXG5cdFx0XHQob0NvbHVtbkV4cG9ydC5jb2x1bW5JZC5pbmRleE9mKFwiOjpGaWVsZEdyb3VwOjpcIikgIT09IC0xIHx8XG5cdFx0XHRcdChvQ29sdW1uLmV4cG9ydFNldHRpbmdzPy5maWVsZExhYmVsICYmIG9Db2x1bW5FeHBvcnQuY29sdW1uSWQuaW5kZXhPZihcIl9fY29sdW1uXCIpICE9PSAtMSkpICYmXG5cdFx0XHQob0NvbHVtbi5wcm9wZXJ0eUluZm9zPy5pbmNsdWRlcyhvQ29sdW1uRXhwb3J0LnByb3BlcnR5KSB8fFxuXHRcdFx0XHRvQ29sdW1uLnByb3BlcnR5SW5mb3M/LmluY2x1ZGVzKFwiUHJvcGVydHk6OlwiICsgb0NvbHVtbkV4cG9ydC5wcm9wZXJ0eSkpXG5cdFx0KSB7XG5cdFx0XHRjb25zdCBsYWJlbCA9IG9Db2x1bW4uZXhwb3J0U2V0dGluZ3M/LmZpZWxkTGFiZWwgfHwgb0NvbHVtbi5sYWJlbDtcblx0XHRcdHJldHVybiBEZWxlZ2F0ZVV0aWwuZ2V0TG9jYWxpemVkVGV4dChsYWJlbCBhcyBzdHJpbmcsIG9UYWJsZUNvbnRyb2xsZXIpO1xuXHRcdH1cblx0fVxuXG5cdHN0YXRpYyBfZ2V0RGF0YUZpZWxkRGVzY3JpcHRpb25MYWJlbChcblx0XHRvQ29sdW1uRXhwb3J0OiBhbnksXG5cdFx0b0NvbHVtbjogQW5ub3RhdGlvblRhYmxlQ29sdW1uLFxuXHRcdG9UYWJsZUNvbnRyb2xsZXI6IFBhZ2VDb250cm9sbGVyLFxuXHRcdGlzVW5pdDogYm9vbGVhblxuXHQpIHtcblx0XHRpZiAoXG5cdFx0XHRvQ29sdW1uLnByb3BlcnR5SW5mb3MgJiZcblx0XHRcdG9Db2x1bW4ucHJvcGVydHlJbmZvcz8ubGVuZ3RoID4gMSAmJlxuXHRcdFx0IWlzVW5pdCAmJlxuXHRcdFx0KG9Db2x1bW4ucHJvcGVydHlJbmZvcz8uaW5jbHVkZXMob0NvbHVtbkV4cG9ydC5wcm9wZXJ0eSkgfHxcblx0XHRcdFx0b0NvbHVtbi5wcm9wZXJ0eUluZm9zPy5pbmNsdWRlcyhcIlByb3BlcnR5OjpcIiArIG9Db2x1bW5FeHBvcnQucHJvcGVydHkpKSAmJlxuXHRcdFx0b0NvbHVtbi5yZWxhdGl2ZVBhdGg/LmluZGV4T2YoXCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuRmllbGRHcm91cFwiKSA9PT0gLTFcblx0XHQpIHtcblx0XHRcdHJldHVybiBEZWxlZ2F0ZVV0aWwuZ2V0TG9jYWxpemVkVGV4dChvQ29sdW1uLmxhYmVsIGFzIHN0cmluZywgb1RhYmxlQ29udHJvbGxlcik7XG5cdFx0fVxuXHR9XG5cdEBFdmVudEhhbmRsZXJcblx0b25NYXNzRWRpdEJ1dHRvblByZXNzZWQob0V2ZW50OiBVSTVFdmVudCwgcGFnZUNvbnRyb2xsZXI6IGFueSkge1xuXHRcdGNvbnN0IG9UYWJsZSA9IHRoaXMuY29udGVudDtcblx0XHRpZiAocGFnZUNvbnRyb2xsZXIgJiYgcGFnZUNvbnRyb2xsZXIubWFzc0VkaXQpIHtcblx0XHRcdHBhZ2VDb250cm9sbGVyLm1hc3NFZGl0Lm9wZW5NYXNzRWRpdERpYWxvZyhvVGFibGUpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRMb2cud2FybmluZyhcIlRoZSBDb250cm9sbGVyIGlzIG5vdCBlbmhhbmNlZCB3aXRoIE1hc3MgRWRpdCBmdW5jdGlvbmFsaXR5XCIpO1xuXHRcdH1cblx0fVxuXHRARXZlbnRIYW5kbGVyXG5cdG9uVGFibGVTZWxlY3Rpb25DaGFuZ2Uob0V2ZW50OiBVSTVFdmVudCkge1xuXHRcdHRoaXMuZmlyZUV2ZW50KFwic2VsZWN0aW9uQ2hhbmdlXCIsIG9FdmVudC5nZXRQYXJhbWV0ZXJzKCkpO1xuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFRhYmxlQVBJO1xuIl19
|
|
507
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRhYmxlQVBJLnRzIl0sIm5hbWVzIjpbIlRhYmxlQVBJIiwiQVBJQ2xhc3MiLCJNYWNyb0NvbnRleHQiLCJQcm9wZXJ0eSIsInR5cGUiLCJkZWZhdWx0VmFsdWUiLCJtU2V0dGluZ3MiLCJvdGhlcnMiLCJjb250ZW50IiwiYXR0YWNoRXZlbnQiLCJvblRhYmxlU2VsZWN0aW9uQ2hhbmdlIiwiZ2V0U2VsZWN0ZWRDb250ZXh0cyIsImFkZE1lc3NhZ2UiLCJwYXJhbWV0ZXJzIiwibXNnTWFuYWdlciIsIl9nZXRNZXNzYWdlTWFuYWdlciIsIm9UYWJsZSIsIm9NZXNzYWdlIiwiTWVzc2FnZSIsInRhcmdldCIsImdldFJvd0JpbmRpbmciLCJnZXRSZXNvbHZlZFBhdGgiLCJtZXNzYWdlIiwicHJvY2Vzc29yIiwiZ2V0TW9kZWwiLCJkZXNjcmlwdGlvbiIsInBlcnNpc3RlbnQiLCJhZGRNZXNzYWdlcyIsImdldElkIiwicmVtb3ZlTWVzc2FnZSIsImlkIiwibWVzc2FnZXMiLCJnZXRNZXNzYWdlTW9kZWwiLCJnZXREYXRhIiwicmVzdWx0IiwiZmluZCIsImUiLCJyZW1vdmVNZXNzYWdlcyIsInNhcCIsInVpIiwiZ2V0Q29yZSIsImdldE1lc3NhZ2VNYW5hZ2VyIiwib25UYWJsZVJvd1ByZXNzIiwib0V2ZW50Iiwib0NvbnRyb2xsZXIiLCJvQ29udGV4dCIsIm1QYXJhbWV0ZXJzIiwiaXNBIiwiZ2V0UHJvcGVydHkiLCJfcm91dGluZyIsIm5hdmlnYXRlRm9yd2FyZFRvQ29udGV4dCIsIm9uSW50ZXJuYWxEYXRhUmVjZWl2ZWQiLCJnZXRQYXJhbWV0ZXIiLCJnZXRDb250cm9sbGVyIiwibWVzc2FnZUhhbmRsZXIiLCJzaG93TWVzc2FnZURpYWxvZyIsIm9uUGFzdGUiLCJ0YWJsZURlZmluaXRpb24iLCJjb250cm9sIiwiZW5hYmxlUGFzdGUiLCJhUmF3UGFzdGVkRGF0YSIsImdldFNvdXJjZSIsIm9SZXNvdXJjZU1vZGVsIiwiZ2V0RW5hYmxlUGFzdGUiLCJQYXN0ZUhlbHBlciIsInBhc3RlRGF0YSIsImdldExpYnJhcnlSZXNvdXJjZUJ1bmRsZSIsIk1lc3NhZ2VCb3giLCJlcnJvciIsImdldFRleHQiLCJ0aXRsZSIsIm9uQmVmb3JlRXhwb3J0IiwiaXNTcGxpdE1vZGUiLCJnZXRQYXJhbWV0ZXJzIiwidXNlckV4cG9ydFNldHRpbmdzIiwic3BsaXRDZWxscyIsImlzUkxUTGFuZ3VhZ2UiLCJnZXRDb25maWd1cmF0aW9uIiwiZ2V0UlRMIiwib1RhYmxlQ29udHJvbGxlciIsIm9FeHBvcnRDb2x1bW5zIiwiZXhwb3J0U2V0dGluZ3MiLCJ3b3JrYm9vayIsImNvbHVtbnMiLCJvVGFibGVDb2x1bW5zIiwidXBkYXRlRXhwb3J0U2V0dGluZ3MiLCJkYXRhU3RhdGVJbmRpY2F0b3JGaWx0ZXIiLCJzVGFibGVDb250ZXh0QmluZGluZ1BhdGgiLCJnZXRCaW5kaW5nQ29udGV4dCIsImdldFBhdGgiLCJzVGFibGVSb3dCaW5kaW5nIiwiZ2V0VGFyZ2V0Iiwib25EYXRhU3RhdGVDaGFuZ2UiLCJvRGF0YVN0YXRlSW5kaWNhdG9yIiwiYUZpbHRlcmVkTWVzc2FnZXMiLCJvSW50ZXJuYWxNb2RlbCIsInNldFByb3BlcnR5Iiwib0NvbHVtbnMiLCJmb3JFYWNoIiwib0NvbHVtbkV4cG9ydCIsImFFeHBvcnRMYWJlbHMiLCJpc1VuaXQiLCJzb21lIiwiY29sdW1uIiwic1VuaXQiLCJ1bml0IiwicHJvcGVydHkiLCJvQ29sdW1uIiwiRmllbGRHcm91cExhYmVsIiwiX2dldEZpZWxkR3JvdXBFeHBvcnRMYWJlbCIsInVuc2hpZnQiLCJkYXRhRmllbGREZXNjcmlwdGlvbkxhYmVsIiwiX2dldERhdGFGaWVsZERlc2NyaXB0aW9uTGFiZWwiLCJpc0RhdGFQb2ludEZha2VUYXJnZXRQcm9wZXJ0eSIsInJlbGF0aXZlUGF0aCIsImV4cG9ydENvbnRhY3RQcm9wZXJ0eSIsInByb3BlcnR5SW5mb3MiLCJsZW5ndGgiLCJ0b1N0cmluZyIsImxhYmVsIiwicHJvcCIsImluY2x1ZGVzIiwiQXJyYXkiLCJpc0FycmF5IiwibWFwIiwicHVzaCIsIkRlbGVnYXRlVXRpbCIsImdldExvY2FsaXplZFRleHQiLCJmaWx0ZXIiLCJpbmRleCIsImluZGV4T2YiLCJyZXZlcnNlIiwiam9pbiIsImNvbHVtbklkIiwiZmllbGRMYWJlbCIsIm9uTWFzc0VkaXRCdXR0b25QcmVzc2VkIiwicGFnZUNvbnRyb2xsZXIiLCJtYXNzRWRpdCIsIm9wZW5NYXNzRWRpdERpYWxvZyIsIkxvZyIsIndhcm5pbmciLCJmaXJlRXZlbnQiLCJNYWNyb0FQSSIsIkV2ZW50IiwiRXZlbnRIYW5kbGVyIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFzSUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtNQUVNQSxRLFdBRExDLFFBQVEsQ0FBQyx3QkFBRCxDLFVBVVBDLFlBQVksRSxVQVVaQyxRQUFRLENBQUM7QUFBRUMsSUFBQUEsSUFBSSxFQUFFO0FBQVIsR0FBRCxDLFVBUVJELFFBQVEsQ0FBQztBQUFFQyxJQUFBQSxJQUFJLEVBQUU7QUFBUixHQUFELEMsVUFRUkQsUUFBUSxDQUFDO0FBQUVDLElBQUFBLElBQUksRUFBRSxTQUFSO0FBQW1CQyxJQUFBQSxZQUFZLEVBQUU7QUFBakMsR0FBRCxDLFVBVVJGLFFBQVEsQ0FBQztBQUFFQyxJQUFBQSxJQUFJLEVBQUUsUUFBUjtBQUFrQkMsSUFBQUEsWUFBWSxFQUFFO0FBQWhDLEdBQUQsQyxVQVFSRixRQUFRLENBQUM7QUFBRUMsSUFBQUEsSUFBSSxFQUFFLFNBQVI7QUFBbUJDLElBQUFBLFlBQVksRUFBRTtBQUFqQyxHQUFELEMsVUFRUkYsUUFBUSxDQUFDO0FBQUVDLElBQUFBLElBQUksRUFBRSxTQUFSO0FBQW1CQyxJQUFBQSxZQUFZLEVBQUU7QUFBakMsR0FBRCxDLFVBUVJGLFFBQVEsQ0FBQztBQUFFQyxJQUFBQSxJQUFJLEVBQUUsU0FBUjtBQUFtQkMs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QUFDTjJILFFBQUFBLEdBQUcsQ0FBQ0MsT0FBSixDQUFZLDZEQUFaO0FBQ0E7QUFDRCxLOztXQUVEbEksc0IsR0FEQSxnQ0FDdUJpQyxNQUR2QixFQUN5QztBQUN4QyxXQUFLa0csU0FBTCxDQUFlLGlCQUFmLEVBQWtDbEcsTUFBTSxDQUFDOEIsYUFBUCxFQUFsQztBQUNBLEs7OztJQXJjcUJxRSxROzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztnRkF5SHJCQyxLOzs7OztvRkFVQUEsSzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7dUZBNEdBQSxLOzs7Ozt1RUFHQUMsWSxzS0FlQUEsWSw4SkFNQUEsWSxzSkF3QkFBLFksZ0tBa0NBQSxZLHlLQXdIQUEsWSw4S0FTQUEsWTtTQU1haEosUSIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBJQ2xhc3MsIEV2ZW50SGFuZGxlciwgTWFjcm9Db250ZXh0LCBQcm9wZXJ0eSwgRXZlbnQsIFByb3BlcnRpZXNPZiB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IFBhc3RlSGVscGVyIGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL1Bhc3RlSGVscGVyXCI7XG5pbXBvcnQgTWVzc2FnZUJveCBmcm9tIFwic2FwL20vTWVzc2FnZUJveFwiO1xuaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgUGFnZUNvbnRyb2xsZXIgZnJvbSBcInNhcC9mZS9jb3JlL1BhZ2VDb250cm9sbGVyXCI7XG5pbXBvcnQgeyBBbm5vdGF0aW9uVGFibGVDb2x1bW4sIFRhYmxlQ29sdW1uLCBUYWJsZVZpc3VhbGl6YXRpb24gfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9jb250cm9scy9Db21tb24vVGFibGVcIjtcbmltcG9ydCBNYWNyb0FQSSBmcm9tIFwiLi9NYWNyb0FQSVwiO1xuaW1wb3J0IHsgRGVsZWdhdGVVdGlsIH0gZnJvbSBcInNhcC9mZS9tYWNyb3NcIjtcbmltcG9ydCBDb250ZXh0IGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvQ29udGV4dFwiO1xuaW1wb3J0IFJlc291cmNlQnVuZGxlIGZyb20gXCJzYXAvYmFzZS9pMThuL1Jlc291cmNlQnVuZGxlXCI7XG5pbXBvcnQgVGFibGUgZnJvbSBcInNhcC91aS9tZGMvVGFibGVcIjtcbmltcG9ydCBNZXNzYWdlIGZyb20gXCJzYXAvdWkvY29yZS9tZXNzYWdlL01lc3NhZ2VcIjtcbmltcG9ydCB7IE1lc3NhZ2VUeXBlIH0gZnJvbSBcInNhcC91aS9jb3JlL2xpYnJhcnlcIjtcbmltcG9ydCBVSTVFdmVudCBmcm9tIFwic2FwL3VpL2Jhc2UvRXZlbnRcIjtcbmltcG9ydCBEYXRhU3RhdGVJbmRpY2F0b3IgZnJvbSBcInNhcC9tL3BsdWdpbnMvRGF0YVN0YXRlSW5kaWNhdG9yXCI7XG5pbXBvcnQgSlNPTk1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvanNvbi9KU09OTW9kZWxcIjtcblxuLyoqXG4gKiBEZWZpbml0aW9uIG9mIGEgY3VzdG9tIGFjdGlvbiB0byBiZSB1c2VkIGluc2lkZSB0aGUgdGFibGUgdG9vbGJhclxuICpcbiAqIEBhbGlhcyBzYXAuZmUubWFjcm9zLnRhYmxlLkFjdGlvblxuICogQHB1YmxpY1xuICovXG5leHBvcnQgdHlwZSBBY3Rpb24gPSB7XG5cdC8qKlxuXHQgKiBVbmlxdWUgaWRlbnRpZmllciBvZiB0aGUgYWN0aW9uXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdGtleTogc3RyaW5nO1xuXHQvKipcblx0ICogVGhlIHRleHQgdGhhdCB3aWxsIGJlIGRpc3BsYXllZCBmb3IgdGhpcyBhY3Rpb25cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0dGV4dDogc3RyaW5nO1xuXHQvKipcblx0ICogUmVmZXJlbmNlIHRvIHRoZSBrZXkgb2YgYW5vdGhlciBhY3Rpb24gYWxyZWFkeSBkaXNwbGF5ZWQgaW4gdGhlIHRvb2xiYXIgdG8gcHJvcGVybHkgcGxhY2UgdGhpcyBvbmVcblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0YW5jaG9yPzogc3RyaW5nO1xuXHQvKipcblx0ICogRGVmaW5lcyB3aGVyZSB0aGlzIGFjdGlvbiBzaG91bGQgYmUgcGxhY2VkIHJlbGF0aXZlIHRvIHRoZSBkZWZpbmVkIGFuY2hvclxuXHQgKlxuXHQgKiBBbGxvd2VkIHZhbHVlcyBhcmUgYEJlZm9yZWAgYW5kIGBBZnRlcmBcblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0cGxhY2VtZW50Pzogc3RyaW5nO1xuXG5cdC8qKlxuXHQgKiBFdmVudCBoYW5kbGVyIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSB1c2VyIGNob29zZXMgdGhlIGFjdGlvblxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRwcmVzczogc3RyaW5nO1xuXG5cdC8qKlxuXHQgKiBEZWZpbmVzIGlmIHRoZSBhY3Rpb24gcmVxdWlyZXMgYSBzZWxlY3Rpb24uXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdHJlcXVpcmVzU2VsZWN0aW9uPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIEFjdGlvbkdyb3VwID0ge1xuXHQvKipcblx0ICogRGVmaW5lcyBuZXN0ZWQgYWN0aW9uc1xuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRhY3Rpb25zOiBBY3Rpb25bXTtcblxuXHQvKipcblx0ICogVGhlIHRleHQgdGhhdCB3aWxsIGJlIGRpc3BsYXllZCBmb3IgdGhpcyBhY3Rpb24gZ3JvdXBcblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0dGV4dDogc3RyaW5nO1xuXG5cdC8qKlxuXHQgKiBEZWZpbmVzIHdoZXJlIHRoaXMgYWN0aW9uIGdyb3VwIHNob3VsZCBiZSBwbGFjZWQgcmVsYXRpdmUgdG8gdGhlIGRlZmluZWQgYW5jaG9yXG5cdCAqXG5cdCAqIEFsbG93ZWQgdmFsdWVzIGFyZSBgQmVmb3JlYCBhbmQgYEFmdGVyYFxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRwbGFjZW1lbnQ/OiBzdHJpbmc7XG5cblx0LyoqXG5cdCAqIFJlZmVyZW5jZSB0byB0aGUga2V5IG9mIGFub3RoZXIgYWN0aW9uIG9yIGFjdGlvbiBncm91cCBhbHJlYWR5IGRpc3BsYXllZCBpbiB0aGUgdG9vbGJhciB0byBwcm9wZXJseSBwbGFjZSB0aGlzIG9uZVxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRhbmNob3I/OiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIERlZmluaXRpb24gb2YgYSBjdXN0b20gY29sdW1uIHRvIGJlIHVzZWQgaW5zaWRlIHRoZSB0YWJsZS5cbiAqXG4gKiBUaGUgdGVtcGxhdGUgZm9yIHRoZSBjb2x1bW4gaGFzIHRvIGJlIHByb3ZpZGVkIGFzIHRoZSBkZWZhdWx0IGFnZ3JlZ2F0aW9uXG4gKlxuICogQGFsaWFzIHNhcC5mZS5tYWNyb3MudGFibGUuQ29sdW1uXG4gKiBAcHVibGljXG4gKiBAZXhwZXJpbWVudGFsXG4gKi9cbmV4cG9ydCB0eXBlIENvbHVtbiA9IHtcblx0LyoqXG5cdCAqIFVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBjb2x1bW5cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0a2V5OiBzdHJpbmc7XG5cdC8qKlxuXHQgKiBUaGUgdGV4dCB0aGF0IHdpbGwgYmUgZGlzcGxheWVkIGZvciB0aGlzIGNvbHVtbiBoZWFkZXJcblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0aGVhZGVyOiBzdHJpbmc7XG5cdC8qKlxuXHQgKiBSZWZlcmVuY2UgdG8gdGhlIGtleSBvZiBhbm90aGVyIGNvbHVtbiBhbHJlYWR5IGRpc3BsYXllZCBpbiB0aGUgdGFibGUgdG8gcHJvcGVybHkgcGxhY2UgdGhpcyBvbmVcblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0YW5jaG9yPzogc3RyaW5nO1xuXHQvKipcblx0ICogRGVmaW5lcyB3aGVyZSB0aGlzIGNvbHVtbiBzaG91bGQgYmUgcGxhY2VkIHJlbGF0aXZlIHRvIHRoZSBkZWZpbmVkIGFuY2hvclxuXHQgKlxuXHQgKiBBbGxvd2VkIHZhbHVlcyBhcmUgYEJlZm9yZWAgYW5kIGBBZnRlcmBcblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0cGxhY2VtZW50Pzogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBCdWlsZGluZyBibG9jayB1c2VkIHRvIGNyZWF0ZSBhIHRhYmxlIGJhc2VkIG9uIHRoZSBtZXRhZGF0YSBwcm92aWRlZCBieSBPRGF0YSBWNC5cbiAqIDxicj5cbiAqIFVzdWFsbHksIGEgTGluZUl0ZW0gb3IgUHJlc2VudGF0aW9uVmFyaWFudCBhbm5vdGF0aW9uIGlzIGV4cGVjdGVkLCBidXQgdGhlIFRhYmxlIGJ1aWxkaW5nIGJsb2NrIGNhbiBhbHNvIGJlIHVzZWQgdG8gZGlzcGxheSBhbiBFbnRpdHlTZXQuXG4gKlxuICpcbiAqIFVzYWdlIGV4YW1wbGU6XG4gKiA8cHJlPlxuICogJmx0O21hY3JvOlRhYmxlIGlkPVwiTXlUYWJsZVwiIG1ldGFQYXRoPVwiQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkxpbmVJdGVtXCIgLyZndDtcbiAqIDwvcHJlPlxuICpcbiAqIEBhbGlhcyBzYXAuZmUubWFjcm9zLlRhYmxlXG4gKiBAcHVibGljXG4gKi9cbkBBUElDbGFzcyhcInNhcC5mZS5tYWNyb3MuVGFibGVBUElcIilcbmNsYXNzIFRhYmxlQVBJIGV4dGVuZHMgTWFjcm9BUEkge1xuXHRjb25zdHJ1Y3RvcihtU2V0dGluZ3M/OiBQcm9wZXJ0aWVzT2Y8VGFibGVBUEk+LCAuLi5vdGhlcnM6IGFueVtdKSB7XG5cdFx0c3VwZXIobVNldHRpbmdzIGFzIGFueSwgLi4ub3RoZXJzKTtcblxuXHRcdGlmICh0aGlzLmNvbnRlbnQpIHtcblx0XHRcdHRoaXMuY29udGVudC5hdHRhY2hFdmVudChcInNlbGVjdGlvbkNoYW5nZVwiLCB7fSwgdGhpcy5vblRhYmxlU2VsZWN0aW9uQ2hhbmdlLCB0aGlzKTtcblx0XHR9XG5cdH1cblxuXHRATWFjcm9Db250ZXh0KClcblx0dGFibGVEZWZpbml0aW9uITogVGFibGVWaXN1YWxpemF0aW9uO1xuXG5cdC8qKlxuXHQgKiBBbiBleHByZXNzaW9uIHRoYXQgYWxsb3dzIHlvdSB0byBjb250cm9sIHRoZSAncmVhZC1vbmx5JyBzdGF0ZSBvZiB0aGUgdGFibGUuXG5cdCAqXG5cdCAqIElmIHlvdSBkbyBub3Qgc2V0IGFueSBleHByZXNzaW9uLCBTQVAgRmlvcmkgZWxlbWVudHMgaG9va3MgaW50byB0aGUgc3RhbmRhcmQgbGlmZWN5Y2xlIHRvIGRldGVybWluZSB0aGUgY3VycmVudCBzdGF0ZS5cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QFByb3BlcnR5KHsgdHlwZTogXCJib29sZWFuXCIgfSlcblx0cmVhZE9ubHkhOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBUaGUgaWRlbnRpZmllciBvZiB0aGUgdGFibGUgY29udHJvbC5cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QFByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiB9KVxuXHRpZCE6IHN0cmluZztcblxuXHQvKipcblx0ICogQW4gZXhwcmVzc2lvbiB0aGF0IGFsbG93cyB5b3UgdG8gY29udHJvbCB0aGUgJ2J1c3knIHN0YXRlIG9mIHRoZSB0YWJsZS5cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QFByb3BlcnR5KHsgdHlwZTogXCJib29sZWFuXCIsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcblx0YnVzeSE6IGJvb2xlYW47XG5cblx0LyoqXG5cdCAqIERlZmluZXMgdGhlIHR5cGUgb2YgdGFibGUgdGhhdCB3aWxsIGJlIHVzZWQgYnkgdGhlIG1hY3JvIHRvIHJlbmRlciB0aGUgZGF0YS5cblx0ICpcblx0ICogQWxsb3dlZCB2YWx1ZXMgYXJlIGBHcmlkVGFibGVgIGFuZCBgUmVzcG9uc2l2ZVRhYmxlYFxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRAUHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiLCBkZWZhdWx0VmFsdWU6IFwiUmVzcG9uc2l2ZVRhYmxlXCIgfSlcblx0dHlwZSE6IHN0cmluZztcblxuXHQvKipcblx0ICogQ29udHJvbHMgaWYgdGhlIGV4cG9ydCBmdW5jdGlvbmFsaXR5IG9mIHRoZSB0YWJsZSBpcyBlbmFibGVkIG9yIG5vdC5cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QFByb3BlcnR5KHsgdHlwZTogXCJib29sZWFuXCIsIGRlZmF1bHRWYWx1ZTogdHJ1ZSB9KVxuXHRlbmFibGVFeHBvcnQhOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBDb250cm9scyBpZiB0aGUgcGFzdGUgZnVuY3Rpb25hbGl0eSBvZiB0aGUgdGFibGUgaXMgZW5hYmxlZCBvciBub3QuXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEBQcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhblwiLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG5cdGVuYWJsZVBhc3RlITogYm9vbGVhbjtcblxuXHQvKipcblx0ICogQ29udHJvbHMgd2hldGhlciB0aGUgdGFibGUgY2FuIGJlIG9wZW5lZCBpbiBmdWxsc2NyZWVuIG1vZGUgb3Igbm90LlxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRAUHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuXHRlbmFibGVGdWxsU2NyZWVuITogYm9vbGVhbjtcblxuXHQvKipcblx0ICogSWQgb2YgdGhlIEZpbHRlckJhciBidWlsZGluZyBibG9jayBhc3NvY2lhdGVkIHdpdGggdGhlIHRhYmxlLlxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRAUHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdGZpbHRlckJhciE6IHN0cmluZztcblxuXHQvKipcblx0ICogRGVmaW5lcyB0aGUgc2VsZWN0aW9uIG1vZGUgdG8gYmUgdXNlZCBieSB0aGUgdGFibGUuXG5cdCAqXG5cdCAqIEFsbG93ZWQgdmFsdWVzIGFyZSBgTm9uZWAsIGBTaW5nbGVgLCBgTXVsdGlgIG9yIGBBdXRvYFxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRAUHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdHNlbGVjdGlvbk1vZGUhOiBzdHJpbmc7XG5cblx0LyoqXG5cdCAqIFNwZWNpZmllcyB0aGUgaGVhZGVyIHRleHQgdGhhdCBpcyBzaG93biBpbiB0aGUgdGFibGUuXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEBQcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0aGVhZGVyITogc3RyaW5nO1xuXG5cdC8qKlxuXHQgKiBTcGVjaWZpZXMgdGhlIGhlYWRlciB0ZXh0IHRoYXQgaXMgc2hvd24gaW4gdGhlIHRhYmxlLlxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRAUHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuXHRlbmFibGVBdXRvQ29sdW1uV2lkdGghOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBDb250cm9scyBpZiB0aGUgaGVhZGVyIHRleHQgc2hvdWxkIGJlIHNob3duIG9yIG5vdC5cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QFByb3BlcnR5KHsgdHlwZTogXCJib29sZWFuXCIsIGRlZmF1bHRWYWx1ZTogdHJ1ZSB9KVxuXHRoZWFkZXJWaXNpYmxlITogYm9vbGVhbjtcblxuXHQvKipcblx0ICogQW4gZXZlbnQgdHJpZ2dlcmVkIHdoZW4gdGhlIHVzZXIgY2hvb3NlcyBhIHJvdzsgdGhlIGV2ZW50IGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHdoaWNoIHJvdyB3YXMgY2hvc2VuLlxuXHQgKlxuXHQgKiBZb3UgY2FuIHNldCB0aGlzIGluIG9yZGVyIHRvIGhhbmRsZSB0aGUgbmF2aWdhdGlvbiBtYW51YWxseS5cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QEV2ZW50XG5cdHJvd1ByZXNzITogRnVuY3Rpb247XG5cblx0LyoqXG5cdCAqIEFuIGV2ZW50IHRyaWdnZXJlZCB3aGVuIHRoZSBUYWJsZSBTdGF0ZSBjaGFuZ2VzLlxuXHQgKlxuXHQgKiBZb3UgY2FuIHNldCB0aGlzIGluIG9yZGVyIHRvIHN0b3JlIHRoZSB0YWJsZSBzdGF0ZSBpbiB0aGUgYXBwc3RhdGUuXG5cdCAqXG5cdCAqIEBwcml2YXRlXG5cdCAqL1xuXHRARXZlbnRcblx0c3RhdGVDaGFuZ2VkITogRnVuY3Rpb247XG5cblx0LyoqXG5cdCAqIENvbnRyb2xzIHdoaWNoIG9wdGlvbnMgc2hvdWxkIGJlIGVuYWJsZWQgZm9yIHRoZSB0YWJsZSBwZXJzb25hbGl6YXRpb24gZGlhbG9nLlxuXHQgKlxuXHQgKiBJZiBpdCBpcyBzZXQgdG8gYHRydWVgLCBhbGwgcG9zc2libGUgb3B0aW9ucyBmb3IgdGhpcyBraW5kIG9mIHRhYmxlIGFyZSBlbmFibGVkLjxici8+XG5cdCAqIElmIGl0IGlzIHNldCB0byBgZmFsc2VgLCBwZXJzb25hbGl6YXRpb24gaXMgZGlzYWJsZWQuPGJyLz5cblx0ICo8YnIvPlxuXHQgKiBZb3UgY2FuIGFsc28gcHJvdmlkZSBhIG1vcmUgZ3JhbnVsYXIgY29udHJvbCBmb3IgdGhlIHBlcnNvbmFsaXphdGlvbiBieSBwcm92aWRpbmcgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCB3aXRoIHRoZSBvcHRpb25zIHlvdSB3YW50IHRvIGJlIGF2YWlsYWJsZS48YnIvPlxuXHQgKiBBdmFpbGFibGUgb3B0aW9ucyBhcmU6PGJyLz5cblx0ICogIC0gU29ydDxici8+XG5cdCAqICAtIENvbHVtbjxici8+XG5cdCAqICAtIEZpbHRlcjxici8+XG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEBQcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhbnxzdHJpbmdcIiwgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG5cdHBlcnNvbmFsaXphdGlvbiE6IGJvb2xlYW4gfCBzdHJpbmc7XG5cblx0LyoqXG5cdCAqIENvbnRyb2xzIHRoZSBraW5kIG9mIHZhcmlhbnQgbWFuYWdlbWVudCB0aGF0IHNob3VsZCBiZSBlbmFibGVkIGZvciB0aGUgdGFibGUuXG5cdCAqXG5cdCAqIEFsbG93ZWQgdmFsdWVzIGFyZSBgUGFnZWAsIGBDb250cm9sYCBhbmQgYE5vbmVgLjxici8+XG5cdCAqIElmIHRoZSB0YWJsZSBpcyB1c2VkIHdpdGhpbiBhIFNBUCBGaW9yaSBlbGVtZW50cyB0ZW1wbGF0ZSwgdGhlIGRlZmF1bHQgdmFsdWUgd2lsbCBiZSB0YWtlbiBmcm9tIHRoZSBjdXJyZW50IHBhZ2UgdmFyaWFudCBtYW5hZ2VtZW50Ljxici8+XG5cdCAqIE90aGVyd2lzZSBpdCdzIGBOb25lYC5cblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QFByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiB9KVxuXHR2YXJpYW50TWFuYWdlbWVudCE6IHN0cmluZztcblxuXHQvKipcblx0ICogR3JvdXBzIG1lbnUgYWN0aW9ucyBieSBrZXkuXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEBQcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0bWVudT86IHN0cmluZztcblxuXHQvKipcblx0ICogR2V0cyBjb250ZXh0cyBmcm9tIHRoZSB0YWJsZSB0aGF0IGhhdmUgYmVlbiBzZWxlY3RlZCBieSB0aGUgdXNlci5cblx0ICpcblx0ICogQHJldHVybnMgQ29udGV4dHMgb2YgdGhlIHJvd3Mgc2VsZWN0ZWQgYnkgdGhlIHVzZXJcblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Z2V0U2VsZWN0ZWRDb250ZXh0cygpOiBDb250ZXh0W10ge1xuXHRcdHJldHVybiAodGhpcy5jb250ZW50IGFzIGFueSkuZ2V0U2VsZWN0ZWRDb250ZXh0cygpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEFkZHMgYSBtZXNzYWdlIHRvIHRoZSB0YWJsZS5cblx0ICpcblx0ICogVGhlIG1lc3NhZ2UgYXBwbGllcyB0byB0aGUgd2hvbGUgdGFibGUgYW5kIG5vdCB0byBhbiBpbmRpdmlkdWFsIHRhYmxlIHJvdy5cblx0ICpcblx0ICogQHBhcmFtIHtvYmplY3R9IFtwYXJhbWV0ZXJzXSBUaGUgcGFyYW1ldGVycyB0byBjcmVhdGUgdGhlIG1lc3NhZ2Vcblx0ICogQHBhcmFtIHtzYXAudWkuY29yZS5NZXNzYWdlVHlwZX0gcGFyYW1ldGVycy50eXBlIE1lc3NhZ2UgdHlwZVxuXHQgKiBAcGFyYW0ge3N0cmluZ30gcGFyYW1ldGVycy5tZXNzYWdlIE1lc3NhZ2UgdGV4dFxuXHQgKiBAcGFyYW0ge3N0cmluZ30gcGFyYW1ldGVycy5kZXNjcmlwdGlvbiBNZXNzYWdlIGRlc2NyaXB0aW9uXG5cdCAqIEBwYXJhbSB7Ym9vbGVhbn0gcGFyYW1ldGVycy5wZXJzaXN0ZW50IFRydWUgaWYgdGhlIG1lc3NhZ2UgaXMgcGVyc2lzdGVudFxuXHQgKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgSUQgb2YgdGhlIG1lc3NhZ2Vcblx0ICpcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0YWRkTWVzc2FnZShwYXJhbWV0ZXJzOiB7IHR5cGU/OiBNZXNzYWdlVHlwZTsgbWVzc2FnZT86IHN0cmluZzsgZGVzY3JpcHRpb24/OiBzdHJpbmc7IHBlcnNpc3RlbnQ/OiBib29sZWFuIH0pOiBzdHJpbmcge1xuXHRcdGNvbnN0IG1zZ01hbmFnZXIgPSB0aGlzLl9nZXRNZXNzYWdlTWFuYWdlcigpO1xuXG5cdFx0Y29uc3Qgb1RhYmxlID0gKHRoaXMuY29udGVudCBhcyBhbnkpIGFzIFRhYmxlO1xuXG5cdFx0Y29uc3Qgb01lc3NhZ2UgPSBuZXcgTWVzc2FnZSh7XG5cdFx0XHR0YXJnZXQ6IG9UYWJsZS5nZXRSb3dCaW5kaW5nKCkuZ2V0UmVzb2x2ZWRQYXRoKCksXG5cdFx0XHR0eXBlOiBwYXJhbWV0ZXJzLnR5cGUsXG5cdFx0XHRtZXNzYWdlOiBwYXJhbWV0ZXJzLm1lc3NhZ2UsXG5cdFx0XHRwcm9jZXNzb3I6IG9UYWJsZS5nZXRNb2RlbCgpLFxuXHRcdFx0ZGVzY3JpcHRpb246IHBhcmFtZXRlcnMuZGVzY3JpcHRpb24sXG5cdFx0XHRwZXJzaXN0ZW50OiBwYXJhbWV0ZXJzLnBlcnNpc3RlbnRcblx0XHR9KTtcblxuXHRcdG1zZ01hbmFnZXIuYWRkTWVzc2FnZXMob01lc3NhZ2UpO1xuXHRcdHJldHVybiBvTWVzc2FnZS5nZXRJZCgpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJlbW92ZXMgYSBtZXNzYWdlIGZyb20gdGhlIHRhYmxlLlxuXHQgKlxuXHQgKiBAcGFyYW0ge3N0cmluZ30gaWQgVGhlIGlkIG9mIHRoZSBtZXNzYWdlXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdHJlbW92ZU1lc3NhZ2UoaWQ6IHN0cmluZykge1xuXHRcdGNvbnN0IG1zZ01hbmFnZXIgPSB0aGlzLl9nZXRNZXNzYWdlTWFuYWdlcigpO1xuXHRcdGNvbnN0IG1lc3NhZ2VzID0gbXNnTWFuYWdlci5nZXRNZXNzYWdlTW9kZWwoKS5nZXREYXRhKCk7XG5cdFx0Y29uc3QgcmVzdWx0ID0gbWVzc2FnZXMuZmluZCgoZTogYW55KSA9PiBlLmlkID09PSBpZCk7XG5cdFx0aWYgKHJlc3VsdCkge1xuXHRcdFx0bXNnTWFuYWdlci5yZW1vdmVNZXNzYWdlcyhyZXN1bHQpO1xuXHRcdH1cblx0fVxuXG5cdF9nZXRNZXNzYWdlTWFuYWdlcigpIHtcblx0XHRyZXR1cm4gc2FwLnVpLmdldENvcmUoKS5nZXRNZXNzYWdlTWFuYWdlcigpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEFuIGV2ZW50IHRyaWdnZXJlZCB3aGVuIHRoZSBzZWxlY3Rpb24gaW4gdGhlIHRhYmxlIGNoYW5nZXMuXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEBFdmVudFxuXHRzZWxlY3Rpb25DaGFuZ2UhOiBGdW5jdGlvbjtcblxuXHRARXZlbnRIYW5kbGVyXG5cdG9uVGFibGVSb3dQcmVzcyhvRXZlbnQ6IFVJNUV2ZW50LCBvQ29udHJvbGxlcjogUGFnZUNvbnRyb2xsZXIsIG9Db250ZXh0OiBDb250ZXh0LCBtUGFyYW1ldGVyczogYW55KSB7XG5cdFx0Ly8gSW4gdGhlIGNhc2Ugb2YgYW4gYW5hbHl0aWNhbCB0YWJsZSwgaWYgd2UncmUgdHJ5aW5nIHRvIG5hdmlnYXRlIHRvIGEgY29udGV4dCBjb3JyZXNwb25kaW5nIHRvIGEgdmlzdWFsIGdyb3VwIG9yIGdyYW5kIHRvdGFsXG5cdFx0Ly8gLS0+IENhbmNlbCBuYXZpZ2F0aW9uXG5cdFx0aWYgKFxuXHRcdFx0b0NvbnRleHQgJiZcblx0XHRcdG9Db250ZXh0LmlzQShcInNhcC51aS5tb2RlbC5vZGF0YS52NC5Db250ZXh0XCIpICYmXG5cdFx0XHR0eXBlb2Ygb0NvbnRleHQuZ2V0UHJvcGVydHkoXCJAJHVpNS5ub2RlLmlzRXhwYW5kZWRcIikgPT09IFwiYm9vbGVhblwiXG5cdFx0KSB7XG5cdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0fSBlbHNlIHtcblx0XHRcdChvQ29udHJvbGxlciBhcyBhbnkpLl9yb3V0aW5nLm5hdmlnYXRlRm9yd2FyZFRvQ29udGV4dChvQ29udGV4dCwgbVBhcmFtZXRlcnMpO1xuXHRcdH1cblx0fVxuXG5cdEBFdmVudEhhbmRsZXJcblx0b25JbnRlcm5hbERhdGFSZWNlaXZlZChvRXZlbnQ6IFVJNUV2ZW50KSB7XG5cdFx0aWYgKG9FdmVudC5nZXRQYXJhbWV0ZXIoXCJlcnJvclwiKSkge1xuXHRcdFx0dGhpcy5nZXRDb250cm9sbGVyKCkubWVzc2FnZUhhbmRsZXIuc2hvd01lc3NhZ2VEaWFsb2coKTtcblx0XHR9XG5cdH1cblx0QEV2ZW50SGFuZGxlclxuXHRvblBhc3RlKG9FdmVudDogVUk1RXZlbnQsIG9Db250cm9sbGVyOiBQYWdlQ29udHJvbGxlcikge1xuXHRcdC8vIElmIHBhc3RlIGlzIGRpc2FibGUgb3IgaWYgd2UncmUgbm90IGluIGVkaXQgbW9kZSwgd2UgY2FuJ3QgcGFzdGUgYW55dGhpbmdcblx0XHRpZiAoIXRoaXMudGFibGVEZWZpbml0aW9uLmNvbnRyb2wuZW5hYmxlUGFzdGUgfHwgIXRoaXMuZ2V0TW9kZWwoXCJ1aVwiKS5nZXRQcm9wZXJ0eShcIi9pc0VkaXRhYmxlXCIpKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0Y29uc3QgYVJhd1Bhc3RlZERhdGEgPSBvRXZlbnQuZ2V0UGFyYW1ldGVyKFwiZGF0YVwiKSxcblx0XHRcdG9UYWJsZSA9IG9FdmVudC5nZXRTb3VyY2UoKSBhcyBUYWJsZTtcblx0XHRsZXQgb1Jlc291cmNlTW9kZWw7XG5cblx0XHRpZiAob1RhYmxlLmdldEVuYWJsZVBhc3RlKCkgPT09IHRydWUpIHtcblx0XHRcdFBhc3RlSGVscGVyLnBhc3RlRGF0YShhUmF3UGFzdGVkRGF0YSwgb1RhYmxlLCBvQ29udHJvbGxlcik7XG5cdFx0fSBlbHNlIHtcblx0XHRcdG9SZXNvdXJjZU1vZGVsID0gc2FwLnVpLmdldENvcmUoKS5nZXRMaWJyYXJ5UmVzb3VyY2VCdW5kbGUoXCJzYXAuZmUuY29yZVwiKSBhcyBSZXNvdXJjZUJ1bmRsZTtcblx0XHRcdE1lc3NhZ2VCb3guZXJyb3Iob1Jlc291cmNlTW9kZWwuZ2V0VGV4dChcIlRfT1BfQ09OVFJPTExFUl9TQVBGRV9QQVNURV9ESVNBQkxFRF9NRVNTQUdFXCIpLCB7XG5cdFx0XHRcdHRpdGxlOiBvUmVzb3VyY2VNb2RlbC5nZXRUZXh0KFwiQ19DT01NT05fU0FQRkVfRVJST1JcIilcblx0XHRcdH0pO1xuXHRcdH1cblx0fVxuXG5cdC8vIFRoaXMgZXZlbnQgd2lsbCBhbGxvdyB1cyB0byBpbnRlcmNlcHQgdGhlIGV4cG9ydCBiZWZvcmUgaXMgdHJpZ2dlcmVkIHRvIGNvdmVyIHNwZWNpZmljIGNhc2VzXG5cdC8vIHRoYXQgY291bGRuJ3QgYmUgYWRkcmVzc2VkIG9uIHRoZSBwcm9wZXJ0eUluZm9zIGZvciBlYWNoIGNvbHVtbi5cblx0Ly8gZS5nLiBGaXhlZCBUYXJnZXQgVmFsdWUgZm9yIHRoZSBkYXRhcG9pbnRzXG5cdEBFdmVudEhhbmRsZXJcblx0b25CZWZvcmVFeHBvcnQob0V2ZW50OiBVSTVFdmVudCkge1xuXHRcdGNvbnN0IGlzU3BsaXRNb2RlID0gKG9FdmVudC5nZXRQYXJhbWV0ZXJzKCkgYXMgYW55KS51c2VyRXhwb3J0U2V0dGluZ3Muc3BsaXRDZWxscyxcblx0XHRcdGlzUkxUTGFuZ3VhZ2UgPSBzYXAudWlcblx0XHRcdFx0LmdldENvcmUoKVxuXHRcdFx0XHQuZ2V0Q29uZmlndXJhdGlvbigpXG5cdFx0XHRcdC5nZXRSVEwoKSxcblx0XHRcdG9UYWJsZUNvbnRyb2xsZXIgPSBvRXZlbnQuZ2V0U291cmNlKCkgYXMgUGFnZUNvbnRyb2xsZXIsXG5cdFx0XHRvRXhwb3J0Q29sdW1ucyA9IChvRXZlbnQuZ2V0UGFyYW1ldGVycygpIGFzIGFueSkuZXhwb3J0U2V0dGluZ3Mud29ya2Jvb2s/LmNvbHVtbnMsXG5cdFx0XHRvVGFibGVDb2x1bW5zID0gdGhpcy50YWJsZURlZmluaXRpb24uY29sdW1ucztcblxuXHRcdFRhYmxlQVBJLnVwZGF0ZUV4cG9ydFNldHRpbmdzKG9FeHBvcnRDb2x1bW5zLCBvVGFibGVDb2x1bW5zLCBvVGFibGVDb250cm9sbGVyLCBpc1NwbGl0TW9kZSwgaXNSTFRMYW5ndWFnZSk7XG5cdH1cblxuXHQvKipcblx0ICogSGFuZGxlcyB0aGUgTURDIERhdGFTdGF0ZUluZGljYXRvciBwbHVnaW4gdG8gZGlzcGxheSBtZXNzYWdlU3RyaXAgb24gYSB0YWJsZS5cblx0ICogQHBhcmFtIG9NZXNzYWdlXG5cdCAqIEBwYXJhbSBvVGFibGVcblx0ICogQG5hbWUgZGF0YVN0YXRlRmlsdGVyXG5cdCAqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIHRvIHJlbmRlciB2aXNpYmxlIHRoZSBtZXNzYWdlU3RyaXBcblx0ICovXG5cdHN0YXRpYyBkYXRhU3RhdGVJbmRpY2F0b3JGaWx0ZXIob01lc3NhZ2U6IGFueSwgb1RhYmxlOiBhbnkpOiBib29sZWFuIHtcblx0XHRjb25zdCBzVGFibGVDb250ZXh0QmluZGluZ1BhdGggPSBvVGFibGUuZ2V0QmluZGluZ0NvbnRleHQoKT8uZ2V0UGF0aCgpO1xuXHRcdGNvbnN0IHNUYWJsZVJvd0JpbmRpbmcgPSAoc1RhYmxlQ29udGV4dEJpbmRpbmdQYXRoID8gc1RhYmxlQ29udGV4dEJpbmRpbmdQYXRoICsgXCIvXCIgOiBcIlwiKSArIG9UYWJsZS5nZXRSb3dCaW5kaW5nKCkuZ2V0UGF0aCgpO1xuXHRcdHJldHVybiBzVGFibGVSb3dCaW5kaW5nID09PSBvTWVzc2FnZS5nZXRUYXJnZXQoKSA/IHRydWUgOiBmYWxzZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBUaGlzIGV2ZW50IGhhbmRsZXMgdGhlIERhdGFTdGF0ZSBvZiB0aGUgRGF0YVN0YXRlSW5kaWNhdG9yIHBsdWdpbiBmcm9tIE1EQyBvbiBhIHRhYmxlLlxuXHQgKiBJdCdzIGZpcmVkIHdoZW4gbmV3IGVycm9yIG1lc3NhZ2VzIGFyZSBzZW50IGZyb20gdGhlIGJhY2tlbmQgdG8gdXBkYXRlIHJvdyBoaWdobGlnaHRpbmcuXG5cdCAqXG5cdCAqIEBuYW1lIG9uRGF0YVN0YXRlQ2hhbmdlXG5cdCAqIEBwYXJhbSB7b2JqZWN0fSBvRXZlbnQgRXZlbnQgb2JqZWN0XG5cdCAqL1xuXHRARXZlbnRIYW5kbGVyXG5cdG9uRGF0YVN0YXRlQ2hhbmdlKG9FdmVudDogVUk1RXZlbnQpIHtcblx0XHRjb25zdCBvRGF0YVN0YXRlSW5kaWNhdG9yID0gb0V2ZW50LmdldFNvdXJjZSgpIGFzIERhdGFTdGF0ZUluZGljYXRvcjtcblx0XHRjb25zdCBhRmlsdGVyZWRNZXNzYWdlcyA9IG9FdmVudC5nZXRQYXJhbWV0ZXIoXCJmaWx0ZXJlZE1lc3NhZ2VzXCIpO1xuXHRcdGlmIChhRmlsdGVyZWRNZXNzYWdlcykge1xuXHRcdFx0Y29uc3Qgb0ludGVybmFsTW9kZWwgPSBvRGF0YVN0YXRlSW5kaWNhdG9yLmdldE1vZGVsKFwiaW50ZXJuYWxcIikgYXMgSlNPTk1vZGVsO1xuXHRcdFx0b0ludGVybmFsTW9kZWwuc2V0UHJvcGVydHkoXCJmaWx0ZXJlZE1lc3NhZ2VzXCIsIGFGaWx0ZXJlZE1lc3NhZ2VzLCBvRGF0YVN0YXRlSW5kaWNhdG9yLmdldEJpbmRpbmdDb250ZXh0KFwiaW50ZXJuYWxcIikgYXMgQ29udGV4dCk7XG5cdFx0fVxuXHR9XG5cblx0c3RhdGljIHVwZGF0ZUV4cG9ydFNldHRpbmdzKFxuXHRcdG9FeHBvcnRDb2x1bW5zOiBhbnksXG5cdFx0b0NvbHVtbnM6IFRhYmxlQ29sdW1uW10sXG5cdFx0b1RhYmxlQ29udHJvbGxlcjogUGFnZUNvbnRyb2xsZXIsXG5cdFx0aXNTcGxpdE1vZGU6IGJvb2xlYW4sXG5cdFx0aXNSTFRMYW5ndWFnZTogYm9vbGVhblxuXHQpOiBhbnkge1xuXHRcdG9FeHBvcnRDb2x1bW5zLmZvckVhY2goKG9Db2x1bW5FeHBvcnQ6IGFueSkgPT4ge1xuXHRcdFx0Ly8gYUV4cG9ydExhYmVscyB3aWxsIGNvbnRhaW4gbGFiZWxzIGZyb20gYSBGaWVsZEdyb3VwLCBhIHRleHQgYW5ub3RhdGlvbiBhbmQgYSBEYXRhUG9pbnRcblx0XHRcdC8vIFRoZXNlIGxhYmVscyB3aWxsIGJlIHVzZWQgZm9yIGNoaWxkIHByb3BlcnRpZXMgKHNpbXBsZSBwcm9wZXJ0aWVzKSBmcm9tIGNvbXBsZXhQcm9wZXJ0eVxuXHRcdFx0Ly8gVW5pdC9jdXJyZW5jeSBwcm9wZXJ0aWVzIHdpbGwgYmUgZGlzbWlzcyBhcyBpdCBjb3VsZCBiZSB1c2VkIGluIHNldmVyYWwgZGF0YWZpZWxkcy5cblx0XHRcdGxldCBhRXhwb3J0TGFiZWxzOiBzdHJpbmdbXSA9IFtdO1xuXHRcdFx0Y29uc3QgaXNVbml0ID0gb0NvbHVtbnMuc29tZShjb2x1bW4gPT4ge1xuXHRcdFx0XHRjb25zdCBzVW5pdCA9IChjb2x1bW4gYXMgQW5ub3RhdGlvblRhYmxlQ29sdW1uKS51bml0O1xuXHRcdFx0XHRyZXR1cm4gc1VuaXQgPT09IG9Db2x1bW5FeHBvcnQucHJvcGVydHkgfHwgc1VuaXQgPT09IFwiUHJvcGVydHk6OlwiICsgb0NvbHVtbkV4cG9ydC5wcm9wZXJ0eTtcblx0XHRcdH0pO1xuXG5cdFx0XHRvQ29sdW1ucz8uZm9yRWFjaChjb2x1bW4gPT4ge1xuXHRcdFx0XHRjb25zdCBvQ29sdW1uID0gY29sdW1uIGFzIEFubm90YXRpb25UYWJsZUNvbHVtbjtcblx0XHRcdFx0aWYgKGlzU3BsaXRNb2RlKSB7XG5cdFx0XHRcdFx0Ly8gQ3JlYXRlIEV4cG9ydGluZyBsYWJlbHMgYXJyYXlcblx0XHRcdFx0XHRjb25zdCBGaWVsZEdyb3VwTGFiZWwgPSBUYWJsZUFQSS5fZ2V0RmllbGRHcm91cEV4cG9ydExhYmVsKG9Db2x1bW5FeHBvcnQsIG9Db2x1bW4sIG9UYWJsZUNvbnRyb2xsZXIpO1xuXHRcdFx0XHRcdGlmIChGaWVsZEdyb3VwTGFiZWwpIHtcblx0XHRcdFx0XHRcdGFFeHBvcnRMYWJlbHMudW5zaGlmdChGaWVsZEdyb3VwTGFiZWwpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQvLyBGb3IgYSB0ZXh0IGFubm90YXRpb24sIGV4cG9ydCBsYWJlbCB0ZW1wbGF0ZSB1c2VkIGlzIDx2YWx1ZT4gLSA8ZGVzY3JpcHRpb24+IGFuZCBmb3IgYSBEYXRhUG9pbnQgPGRhdGFwb2ludFZhbHVlPiAtIDxUYXJnZXRWYWx1ZT4uXG5cdFx0XHRcdFx0Ly8gSW4gYm90aCBjYXNlcyBpbnRlcm5hdGlvbmFsaXphdGlvbiBpcyBuZWVkZWRcblx0XHRcdFx0XHRjb25zdCBkYXRhRmllbGREZXNjcmlwdGlvbkxhYmVsID0gVGFibGVBUEkuX2dldERhdGFGaWVsZERlc2NyaXB0aW9uTGFiZWwoXG5cdFx0XHRcdFx0XHRvQ29sdW1uRXhwb3J0LFxuXHRcdFx0XHRcdFx0b0NvbHVtbixcblx0XHRcdFx0XHRcdG9UYWJsZUNvbnRyb2xsZXIsXG5cdFx0XHRcdFx0XHRpc1VuaXRcblx0XHRcdFx0XHQpO1xuXHRcdFx0XHRcdGlmIChkYXRhRmllbGREZXNjcmlwdGlvbkxhYmVsKSB7XG5cdFx0XHRcdFx0XHRhRXhwb3J0TGFiZWxzLnVuc2hpZnQoZGF0YUZpZWxkRGVzY3JpcHRpb25MYWJlbCk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ly9BZGQgVGFyZ2V0VmFsdWUgb24gZHVtbXkgY3JlYXRlZCBwcm9wZXJ0eSB3aGVuICBleHBvcnRpbmcgb24gc3BsaXQgbW9kZVxuXHRcdFx0XHRcdGlmIChvQ29sdW1uLmlzRGF0YVBvaW50RmFrZVRhcmdldFByb3BlcnR5ICYmIG9Db2x1bW4ucmVsYXRpdmVQYXRoID09PSBvQ29sdW1uRXhwb3J0LnByb3BlcnR5KSB7XG5cdFx0XHRcdFx0XHRvQ29sdW1uRXhwb3J0LnByb3BlcnR5ID0gW29Db2x1bW5FeHBvcnQucHJvcGVydHldO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQvL01vZGlmeSBleHBvcnRlZCB2YWx1ZSB3aGVuIHVzaW5nIENvbW11bmljYXRpb24uQ29udGFjdCBkYXRhRmllbGRGb3JBbm5vdGF0aW9uXG5cdFx0XHRcdC8vY29udGFjdD5mbiBwcm9wZXJ0eSBzaG91bGQgYmUgZXhwb3J0ZWRcblx0XHRcdFx0aWYgKG9Db2x1bW4uZXhwb3J0Q29udGFjdFByb3BlcnR5ICYmIGNvbHVtbi5wcm9wZXJ0eUluZm9zKSB7XG5cdFx0XHRcdFx0aWYgKGNvbHVtbi5wcm9wZXJ0eUluZm9zPy5sZW5ndGggPT09IDEgJiYgY29sdW1uLnByb3BlcnR5SW5mb3M/LnRvU3RyaW5nKCkgPT09IG9Db2x1bW5FeHBvcnQucHJvcGVydHkudG9TdHJpbmcoKSkge1xuXHRcdFx0XHRcdFx0b0NvbHVtbkV4cG9ydC5wcm9wZXJ0eSA9IG9Db2x1bW4uZXhwb3J0Q29udGFjdFByb3BlcnR5O1xuXHRcdFx0XHRcdFx0b0NvbHVtbkV4cG9ydC5sYWJlbCA9IG9Db2x1bW4ubGFiZWw7XG5cdFx0XHRcdFx0fSBlbHNlIGlmIChcblx0XHRcdFx0XHRcdGNvbHVtbi5wcm9wZXJ0eUluZm9zPy5sZW5ndGggPiAxICYmXG5cdFx0XHRcdFx0XHRvQ29sdW1uLnByb3BlcnR5SW5mb3M/LnNvbWUocHJvcCA9PiBvQ29sdW1uRXhwb3J0LnByb3BlcnR5LmluY2x1ZGVzKHByb3ApKSAmJlxuXHRcdFx0XHRcdFx0QXJyYXkuaXNBcnJheShvQ29sdW1uRXhwb3J0LnByb3BlcnR5KVxuXHRcdFx0XHRcdCkge1xuXHRcdFx0XHRcdFx0b0NvbHVtbkV4cG9ydC5wcm9wZXJ0eSA9IG9Db2x1bW5FeHBvcnQucHJvcGVydHk/Lm1hcCgocHJvcGVydHk6IHN0cmluZykgPT4ge1xuXHRcdFx0XHRcdFx0XHRyZXR1cm4gb0NvbHVtbi5wcm9wZXJ0eUluZm9zPy5zb21lKHByb3AgPT4gcHJvcCA9PT0gcHJvcGVydHkpID8gb0NvbHVtbi5leHBvcnRDb250YWN0UHJvcGVydHkgOiBwcm9wZXJ0eTtcblx0XHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0XHRhRXhwb3J0TGFiZWxzLnB1c2goRGVsZWdhdGVVdGlsLmdldExvY2FsaXplZFRleHQob0NvbHVtbkV4cG9ydC5sYWJlbCwgb1RhYmxlQ29udHJvbGxlcikpO1xuXHRcdFx0aWYgKGFFeHBvcnRMYWJlbHMubGVuZ3RoID4gMSkge1xuXHRcdFx0XHQvLyBSZW1vdmUgZHVwbGljYXRlIGxhYmVscyAoZS5nLiBGaWVsZEdyb3VwIGxhYmVsIGlzIHRoZSBzYW1lIGFzIHRoZSBsYWJlbCBvZiBvbmUgb2YgdGhlIHByb3BlcnRpZXMpXG5cdFx0XHRcdGFFeHBvcnRMYWJlbHMgPSBhRXhwb3J0TGFiZWxzLmZpbHRlcihmdW5jdGlvbihsYWJlbCwgaW5kZXgpIHtcblx0XHRcdFx0XHRpZiAoYUV4cG9ydExhYmVscy5pbmRleE9mKGxhYmVsKSA9PSBpbmRleCkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIGxhYmVsO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSk7XG5cdFx0XHR9XG5cdFx0XHQvLyBDaGVjayBpZiBhIFJUTCBsYW5ndWFnZSBpZiB1c2VkIGFuZCBpZiBzbyB3ZSBuZWVkIHRvIHJldmVyc2UgbGFiZWxzXG5cdFx0XHRpZiAoaXNSTFRMYW5ndWFnZSkge1xuXHRcdFx0XHRhRXhwb3J0TGFiZWxzLnJldmVyc2UoKTtcblx0XHRcdH1cblx0XHRcdG9Db2x1bW5FeHBvcnQubGFiZWwgPSBhRXhwb3J0TGFiZWxzLmpvaW4oXCIgLSBcIik7XG5cdFx0fSk7XG5cdFx0cmV0dXJuIG9FeHBvcnRDb2x1bW5zO1xuXHR9XG5cblx0c3RhdGljIF9nZXRGaWVsZEdyb3VwRXhwb3J0TGFiZWwoXG5cdFx0b0NvbHVtbkV4cG9ydDogYW55LFxuXHRcdG9Db2x1bW46IEFubm90YXRpb25UYWJsZUNvbHVtbixcblx0XHRvVGFibGVDb250cm9sbGVyOiBQYWdlQ29udHJvbGxlclxuXHQpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuXHRcdGlmIChcblx0XHRcdChvQ29sdW1uRXhwb3J0LmNvbHVtbklkLmluZGV4T2YoXCI6OkZpZWxkR3JvdXA6OlwiKSAhPT0gLTEgfHxcblx0XHRcdFx0KG9Db2x1bW4uZXhwb3J0U2V0dGluZ3M/LmZpZWxkTGFiZWwgJiYgb0NvbHVtbkV4cG9ydC5jb2x1bW5JZC5pbmRleE9mKFwiX19jb2x1bW5cIikgIT09IC0xKSkgJiZcblx0XHRcdChvQ29sdW1uLnByb3BlcnR5SW5mb3M/LmluY2x1ZGVzKG9Db2x1bW5FeHBvcnQucHJvcGVydHkpIHx8XG5cdFx0XHRcdG9Db2x1bW4ucHJvcGVydHlJbmZvcz8uaW5jbHVkZXMoXCJQcm9wZXJ0eTo6XCIgKyBvQ29sdW1uRXhwb3J0LnByb3BlcnR5KSlcblx0XHQpIHtcblx0XHRcdGNvbnN0IGxhYmVsID0gb0NvbHVtbi5leHBvcnRTZXR0aW5ncz8uZmllbGRMYWJlbCB8fCBvQ29sdW1uLmxhYmVsO1xuXHRcdFx0cmV0dXJuIERlbGVnYXRlVXRpbC5nZXRMb2NhbGl6ZWRUZXh0KGxhYmVsIGFzIHN0cmluZywgb1RhYmxlQ29udHJvbGxlcik7XG5cdFx0fVxuXHR9XG5cblx0c3RhdGljIF9nZXREYXRhRmllbGREZXNjcmlwdGlvbkxhYmVsKFxuXHRcdG9Db2x1bW5FeHBvcnQ6IGFueSxcblx0XHRvQ29sdW1uOiBBbm5vdGF0aW9uVGFibGVDb2x1bW4sXG5cdFx0b1RhYmxlQ29udHJvbGxlcjogUGFnZUNvbnRyb2xsZXIsXG5cdFx0aXNVbml0OiBib29sZWFuXG5cdCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG5cdFx0aWYgKFxuXHRcdFx0b0NvbHVtbi5wcm9wZXJ0eUluZm9zICYmXG5cdFx0XHRvQ29sdW1uLnByb3BlcnR5SW5mb3M/Lmxlbmd0aCA+IDEgJiZcblx0XHRcdCFpc1VuaXQgJiZcblx0XHRcdChvQ29sdW1uLnByb3BlcnR5SW5mb3M/LmluY2x1ZGVzKG9Db2x1bW5FeHBvcnQucHJvcGVydHkpIHx8XG5cdFx0XHRcdG9Db2x1bW4ucHJvcGVydHlJbmZvcz8uaW5jbHVkZXMoXCJQcm9wZXJ0eTo6XCIgKyBvQ29sdW1uRXhwb3J0LnByb3BlcnR5KSkgJiZcblx0XHRcdG9Db2x1bW4ucmVsYXRpdmVQYXRoPy5pbmRleE9mKFwiQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkZpZWxkR3JvdXBcIikgPT09IC0xXG5cdFx0KSB7XG5cdFx0XHRyZXR1cm4gRGVsZWdhdGVVdGlsLmdldExvY2FsaXplZFRleHQob0NvbHVtbi5sYWJlbCBhcyBzdHJpbmcsIG9UYWJsZUNvbnRyb2xsZXIpO1xuXHRcdH1cblx0fVxuXHRARXZlbnRIYW5kbGVyXG5cdG9uTWFzc0VkaXRCdXR0b25QcmVzc2VkKG9FdmVudDogVUk1RXZlbnQsIHBhZ2VDb250cm9sbGVyOiBhbnkpIHtcblx0XHRjb25zdCBvVGFibGUgPSB0aGlzLmNvbnRlbnQ7XG5cdFx0aWYgKHBhZ2VDb250cm9sbGVyICYmIHBhZ2VDb250cm9sbGVyLm1hc3NFZGl0KSB7XG5cdFx0XHRwYWdlQ29udHJvbGxlci5tYXNzRWRpdC5vcGVuTWFzc0VkaXREaWFsb2cob1RhYmxlKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0TG9nLndhcm5pbmcoXCJUaGUgQ29udHJvbGxlciBpcyBub3QgZW5oYW5jZWQgd2l0aCBNYXNzIEVkaXQgZnVuY3Rpb25hbGl0eVwiKTtcblx0XHR9XG5cdH1cblx0QEV2ZW50SGFuZGxlclxuXHRvblRhYmxlU2VsZWN0aW9uQ2hhbmdlKG9FdmVudDogVUk1RXZlbnQpIHtcblx0XHR0aGlzLmZpcmVFdmVudChcInNlbGVjdGlvbkNoYW5nZVwiLCBvRXZlbnQuZ2V0UGFyYW1ldGVycygpKTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBUYWJsZUFQSTtcbiJdfQ==
|