@sap/open.fe 1.97.0 → 1.98.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 +275 -62
- package/packages/sap.fe.common/src/sap/fe/common/MessageButton.js +1 -1
- package/packages/sap.fe.common/src/sap/fe/common/MessagePopover-dbg.js +1 -0
- package/packages/sap.fe.common/src/sap/fe/common/MessagePopover.js +1 -1
- package/packages/sap.fe.common/src/sap/fe/common/library-dbg.js +1 -1
- package/packages/sap.fe.common/src/sap/fe/common/library-h2-preload.js +3 -3
- package/packages/sap.fe.common/src/sap/fe/common/library-preload.js +51 -46
- package/packages/sap.fe.common/src/sap/fe/common/library-preload.js.map +3 -3
- package/packages/sap.fe.common/src/sap/fe/common/library.js +1 -1
- package/packages/sap.fe.common/src/sap/fe/common/manifest.json +3 -3
- package/packages/sap.fe.common/src/sap/fe/common/resources.json +16 -8
- 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.xmlmeta.json +1 -1
- package/packages/sap.fe.common/test/sap/fe/common/relnotes/changes-1.98.json +18 -0
- 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/AppComponent-dbg.js +3 -1
- package/packages/sap.fe.core/src/sap/fe/core/AppComponent.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/AppStateHandler-dbg.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/AppStateHandler.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/CommonUtils-dbg.js +35 -15
- package/packages/sap.fe.core/src/sap/fe/core/CommonUtils.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/ExtensionAPI-dbg.js +13 -5
- package/packages/sap.fe.core/src/sap/fe/core/ExtensionAPI.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/PageController-dbg.js +8 -2
- package/packages/sap.fe.core/src/sap/fe/core/PageController.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/RouterProxy-dbg.js +26 -10
- package/packages/sap.fe.core/src/sap/fe/core/RouterProxy.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/TemplateComponent-dbg.js +13 -4
- package/packages/sap.fe.core/src/sap/fe/core/TemplateComponent.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/TransactionHelper-dbg.js +124 -39
- package/packages/sap.fe.core/src/sap/fe/core/TransactionHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/actions/draft-dbg.js +49 -22
- package/packages/sap.fe.core/src/sap/fe/core/actions/draft.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/actions/messageHandling-dbg.js +11 -8
- package/packages/sap.fe.core/src/sap/fe/core/actions/messageHandling.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/actions/operations-dbg.js +12 -8
- package/packages/sap.fe.core/src/sap/fe/core/actions/operations.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/EditFlow-dbg.js +196 -70
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/EditFlow.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalEditFlow-dbg.js +9 -2
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalEditFlow.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation-dbg.js +19 -17
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalRouting-dbg.js +39 -8
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalRouting.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/KPIManagement-dbg.js +114 -25
- 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 +112 -24
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MassEdit-dbg.js +80 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MassEdit.js +6 -0
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MessageHandler-dbg.js +5 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MessageHandler.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/PageReady-dbg.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/PageReady.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Paginator-dbg.js +34 -7
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Paginator.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Placeholder-dbg.js +5 -2
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Placeholder.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Routing-dbg.js +16 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Routing.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Share-dbg.js +19 -6
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Share.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/SideEffects-dbg.js +7 -7
- 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 +6 -5
- package/packages/sap.fe.core/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +2 -1
- package/packages/sap.fe.core/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler-dbg.js +6 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controls/FieldWrapper-dbg.js +9 -3
- package/packages/sap.fe.core/src/sap/fe/core/controls/FieldWrapper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controls/FormElementWrapper-dbg.js +0 -5
- package/packages/sap.fe.core/src/sap/fe/core/controls/FormElementWrapper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +1 -1
- package/packages/{sap.fe.macros/src/sap/fe/macros/massedit → sap.fe.core/src/sap/fe/core/controls/massEdit}/MassEditDialog.fragment.xml +6 -6
- package/packages/{sap.fe.macros/src/sap/fe/macros/massedit/MassEditRuntime-dbg.js → sap.fe.core/src/sap/fe/core/controls/massEdit/MassEditHandlers-dbg.js} +2 -2
- package/packages/{sap.fe.macros/src/sap/fe/macros/massedit/MassEditRuntime.js → sap.fe.core/src/sap/fe/core/controls/massEdit/MassEditHandlers.js} +0 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/ConverterContext-dbg.js +13 -1
- 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 +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestSettings-dbg.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestSettings.ts +3 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestWrapper-dbg.js +18 -7
- 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 +15 -6
- package/packages/sap.fe.core/src/sap/fe/core/converters/MetaModelConverter-dbg.js +62 -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 +60 -4
- package/packages/sap.fe.core/src/sap/fe/core/converters/annotations/DataField-dbg.js +3 -3
- 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 +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/common/AnnotationConverter-dbg.js +18 -10
- package/packages/sap.fe.core/src/sap/fe/core/converters/common/AnnotationConverter.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Action-dbg.js +10 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Action.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Action.ts +6 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Form-dbg.js +17 -9
- 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 +9 -3
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/KPI-dbg.js +69 -4
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/KPI.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/KPI.ts +72 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Table-dbg.js +172 -284
- 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 +228 -348
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/table/StandardActions-dbg.js +468 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +5 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +609 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/FilterBar-dbg.js +30 -13
- 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 +31 -12
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/VisualFilters-dbg.js +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ObjectPage/SubSection-dbg.js +14 -6
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +26 -5
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/Aggregation-dbg.js +8 -1
- 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/Aggregation.ts +9 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/IssueManager-dbg.js +4 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/IssueManager.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/IssueManager.ts +3 -0
- package/packages/sap.fe.core/src/sap/fe/core/designtime/AppComponent-dbg.designtime.js +8 -0
- package/packages/sap.fe.core/src/sap/fe/core/designtime/AppComponent.designtime.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/designtime/library-preload.designtime.js +1 -1
- 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/ValueFormatter-dbg.js +30 -5
- package/packages/sap.fe.core/src/sap/fe/core/formatters/ValueFormatter.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/formatters/ValueFormatter.ts +25 -3
- package/packages/sap.fe.core/src/sap/fe/core/fpm/manifest.json +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/helpers/AppStartupHelper-dbg.js +359 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/AppStartupHelper.js +5 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/AppStartupHelper.ts +388 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/BindingExpression-dbg.js +199 -111
- 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 +193 -102
- package/packages/sap.fe.core/src/sap/fe/core/helpers/KeepAliveHelper-dbg.js +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/helpers/KeepAliveHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/helpers/KeepAliveHelper.ts +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/helpers/MassEditHelper-dbg.js +679 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/MassEditHelper.js +6 -0
- package/packages/sap.fe.core/src/sap/fe/core/library-dbg.js +27 -1
- package/packages/sap.fe.core/src/sap/fe/core/library-h2-preload.js +23 -14
- package/packages/sap.fe.core/src/sap/fe/core/library-h2-preload.js.map +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/library-preload.js +477 -411
- 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 +47 -3
- package/packages/sap.fe.core/src/sap/fe/core/library-preload.support.js.map +3 -3
- package/packages/sap.fe.core/src/sap/fe/core/library.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/library.support.js +9 -3
- 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 +62 -0
- package/packages/sap.fe.core/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +5 -0
- package/packages/sap.fe.core/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +68 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle.properties +40 -5
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ar.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_bg.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ca.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_cs.properties +25 -3
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_cy.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_da.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_de.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_el.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en.properties +23 -1
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_GB.properties +23 -1
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_US_sappsd.properties +27 -1
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_US_saprigi.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_US_saptrc.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_es.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_es_MX.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_et.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_fi.properties +25 -3
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_fr.properties +25 -3
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_fr_CA.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_hi.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_hr.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_hu.properties +25 -3
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_id.properties +26 -4
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_it.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_iw.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ja.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_kk.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ko.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_lt.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_lv.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ms.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_nl.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_no.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_pl.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_pt.properties +25 -3
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_pt_PT.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ro.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ru.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sh.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sk.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sl.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sv.properties +25 -3
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_th.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_tr.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_uk.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_vi.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_zh_CN.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_zh_TW.properties +24 -2
- package/packages/sap.fe.core/src/sap/fe/core/resources.json +483 -235
- package/packages/sap.fe.core/src/sap/fe/core/services/AsyncComponentServiceFactory-dbg.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/AsyncComponentServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/EnvironmentServiceFactory-dbg.js +4 -3
- 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 +3 -0
- package/packages/sap.fe.core/src/sap/fe/core/services/RoutingServiceFactory-dbg.js +93 -346
- package/packages/sap.fe.core/src/sap/fe/core/services/RoutingServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/ShellServicesFactory-dbg.js +31 -2
- 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 +30 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/SideEffectsServiceFactory-dbg.js +8 -5
- 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 +11 -6
- package/packages/sap.fe.core/src/sap/fe/core/services/TemplatedViewServiceFactory-dbg.js +12 -3
- package/packages/sap.fe.core/src/sap/fe/core/services/TemplatedViewServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/support/InvalidAnnotationColumnKey.support.js +38 -0
- package/packages/sap.fe.core/src/sap/fe/core/support/InvalidAnnotationColumnKey.support.ts +18 -0
- package/packages/sap.fe.core/src/sap/fe/core/templating/DataModelPathHelper-dbg.js +10 -48
- 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 +14 -46
- package/packages/sap.fe.core/src/sap/fe/core/templating/DisplayModeFormatter-dbg.js +114 -0
- package/packages/sap.fe.core/src/sap/fe/core/templating/DisplayModeFormatter.js +5 -0
- package/packages/sap.fe.core/src/sap/fe/core/templating/DisplayModeFormatter.ts +86 -0
- package/packages/sap.fe.core/src/sap/fe/core/templating/FilterHelper-dbg.js +10 -7
- 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 +8 -6
- 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.ts +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/templating/UIFormatters-dbg.js +15 -110
- 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 +6 -73
- package/packages/sap.fe.core/test/sap/fe/core/designtime/api.json +1 -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/ControllerExtensionNavigationModel.js +5 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/model/CustomElementNavigationModel.js +105 -7
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/model/MacroNavigationModel.js +176 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/FCL/FclNavigationButtons/myViewTest.controller.js +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/chart/chartDefault/ChartDefault.controller.js +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/chart/chartDefault/ChartDefault.view.xml +0 -1
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/chart/chartQualifier/ChartQualifier.controller.js +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/chart/chartSelectionMode/ChartSelectionMode.controller.js +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldEdit/FieldEdit.controller.js +3 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldEvents/FieldEvents.controller.js +3 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldFormatOptions/FieldFormatOptions.controller.js +3 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldNavProp/FieldNavProp.controller.js +3 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/Component.js +36 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/FilterBarAnnotationDefaults.controller.js +35 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/FilterBarAnnotationDefaults.view.xml +58 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/localService/RootEntity.json +102 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/localService/ValueHelpEntity.js +11 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/localService/service.cds +97 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/manifest.json +72 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/Component.js +36 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/CustomFilter.js +36 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/CustomRatingFilter.fragment.xml +8 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/CustomRatingFilterOperator.fragment.xml +17 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/CustomRatingRangeFilter.fragment.xml +8 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/FilterBarCustoms.controller.js +42 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/FilterBarCustoms.view.xml +70 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/localService/RootEntity.json +107 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/localService/ValueHelpEntity.js +11 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/localService/service.cds +152 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/manifest.json +72 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/FilterBarDefault.controller.js +13 -6
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/FilterBarDefault.view.xml +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/localService/ChildEntity.json +15 -674
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/localService/MultiChildEntity.json +92 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/localService/RootEntity.json +10 -5
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/localService/service.cds +72 -19
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/Component.js +36 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/FilterBarSVandAnnotationDefaults.controller.js +35 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/FilterBarSVandAnnotationDefaults.view.xml +58 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/localService/RootEntity.json +102 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/localService/ValueHelpEntity.js +11 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/localService/service.cds +115 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/manifest.json +72 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBarAnnotationDefaults.html +37 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBarCustoms.html +37 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBarSVandAnnotationDefaults.html +37 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/Component.js +35 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/DetailPage.controller.js +5 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/DetailPage.view.xml +15 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/EntryPage.controller.js +43 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/EntryPage.view.xml +79 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/localService/ChildEntity.json +23 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/localService/RootEntity.json +41 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/localService/ValueHelpCurrencyEntity.json +5 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/localService/ValueHelpEntity.js +11 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/localService/service.cds +144 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/manifest.json +96 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/template/Component.js +9 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/template/EntryPage.controller.js +5 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/template/EntryPage.view.xml +14 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidanceFreestyle.html +69 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/i18n/i18n.properties +3 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/microchart/microChartDefault/MicroChartDefault.controller.js +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/microchart/microChartDynamicSize/MicroChartDynamicSize.controller.js +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/microchart/microChartHideOnNoData/MicroChartHideOnNoData.controller.js +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/microchart/microChartShowOnlyChart/MicroChartShowOnlyChart.controller.js +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableCustoms/Page.controller.js +4 -3
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableCustoms/Page.view.xml +36 -30
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableDefault/TableDefault.controller.js +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableEdit/TableEdit.controller.js +3 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableEdit/TableEdit.view.xml +30 -24
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility/Component.js +3 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility/OPExtend.controller.js +17 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility/localService/ChildEntity.json +9 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility/localService/service.cds +46 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility/manifest.json +24 -1
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility.html +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/CustomColumnAdaptation.fragment.xml +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/CustomColumnBuildingBlockField.fragment.xml +3 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/CustomColumnButton.fragment.xml +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/localService/service.cds +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/manifest.json +7 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customElementsOverview.md +4 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElement/customFormElementContent/Component.js +35 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElement/customFormElementContent/CustomFormElement1.fragment.xml +3 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElement/customFormElementContent/CustomFormElement2.fragment.xml +3 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElement/customFormElementContent/localService/RootEntity.json +9 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElement/customFormElementContent/localService/service.cds +136 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElement/customFormElementContent/manifest.json +90 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElementContent.html +36 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/{CustomHeaderFacetFormElement.fragment.xml → CustomHeaderFacetBuildingBlockFormElement.fragment.xml} +0 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/{CustomHeaderFacetFormElementEdit.fragment.xml → CustomHeaderFacetBuildingBlockFormElementEdit.fragment.xml} +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/CustomHeaderFacetBuildingBlockMicroChart.fragment.xml +10 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/CustomHeaderFacetBuildingBlockMicroChartEdit.fragment.xml +5 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/CustomHeaderFacetDataPointEdit.fragment.xml +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/CustomHeaderFacetMicroChartEdit.fragment.xml +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/localService/RootEntity.json +6 -1
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/localService/service.cds +30 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/manifest.json +13 -3
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customPage/customPageContent/CustomPage.view.xml +1 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSection/customSectionContent/CustomSection.fragment.xml +1 -7
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSection/customSectionContent/CustomSectionFormElementAndTable.fragment.xml +0 -1
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSection/customSectionContent/CustomSectionNavigation.fragment.xml +1 -7
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSectionContent.html +60 -27
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/Component.js +35 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/CustomSubSection1.fragment.xml +3 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/CustomSubSection2.fragment.xml +3 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/CustomSubSection3.fragment.xml +11 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/localService/ChildEntity.json +42 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/localService/RootEntity.json +9 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/localService/service.cds +139 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/manifest.json +104 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSectionContent.html +36 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/i18n/i18n.properties +3 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/BindingExpression-AnnotationExpression.spec.js +20 -6
- package/packages/sap.fe.core/test/sap/fe/core/jest/BindingExpression-AnnotationExpression.spec.ts +22 -6
- package/packages/sap.fe.core/test/sap/fe/core/jest/BindingExpression.spec.js +71 -23
- package/packages/sap.fe.core/test/sap/fe/core/jest/BindingExpression.spec.ts +97 -24
- package/packages/sap.fe.core/test/sap/fe/core/jest/TransactionHelper.spec.js +624 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/__snapshots__/TemplateConverter.spec.ts.snap +449 -140
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/EditFlow.spec.js +435 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/EditFlow.spec.ts +385 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/KPIManagement.spec.js +229 -2
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/KPIManagement.spec.ts +227 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MessageHandler.spec.js +235 -63
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MessageHandler.spec.ts +162 -40
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MessageHandling.spec.js +115 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MessageHandling.spec.ts +95 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/SideEffects.spec.js +1 -2
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/SideEffects.spec.ts +0 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/ViewState.spec.js +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/ViewState.spec.ts +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ConverterContext.spec.js +11 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ConverterContext.spec.ts +9 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/HeaderFacet.spec.js +18 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/HeaderFacet.spec.ts +25 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/KPI.spec.js +64 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/KPI.spec.ts +66 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ListReportConverter.spec.js +261 -20
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ListReportConverter.spec.ts +329 -19
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/MetaModelConverter.spec.js +79 -8
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/MetaModelConverter.spec.ts +128 -8
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ObjectPageConverter.spec.js +7 -7
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ObjectPageConverter.spec.ts +6 -6
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/SubSection.spec.js +22 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/SubSection.spec.ts +26 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/Table.spec.js +136 -244
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/Table.spec.ts +156 -376
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/TableStandardActions.spec.js +1267 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/TableStandardActions.spec.ts +2150 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/__snapshots__/KPI.spec.ts.snap +306 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/__snapshots__/MetaModelConverter.spec.ts.snap +57 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/__snapshots__/Table.spec.ts.snap +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/AnalyticalService.cds +137 -5
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/BindingExpression-AnnotationExpression.xml +13 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/HeaderFacets.cds +28 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/KPI.cds +191 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/MetaModelConverterContext.cds +20 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/ObjectPageConverter.cds +69 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/RoutingServiceFactory.cds +35 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/SideEffects.cds +26 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/Table.cds +98 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/TableNewActionOperationAvailableSticky.cds +22 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/TableTooltips.cds +43 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/formatters/ValueFormatters.spec.js +10 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/formatters/ValueFormatters.spec.ts +20 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/AppStartupHelper.spec.js +912 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/AppStartupHelper.spec.ts +981 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/__snapshots__/AppStartupHelper.spec.ts.snap +358 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/manifestmerger/ChangePageConfiguration.spec.js +242 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/manifestmerger/ChangePageConfiguration.spec.ts +297 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/manifestmerger/__snapshots__/ChangePageConfiguration.spec.ts.snap +289 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/services/RoutingServiceFactory.spec.js +292 -366
- package/packages/sap.fe.core/test/sap/fe/core/jest/services/RoutingServiceFactory.spec.ts +247 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/services/SideEffectsService.spec.js +14 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/services/SideEffectsService.spec.ts +19 -0
- package/packages/sap.fe.core/test/sap/fe/core/qunit/apps/generalTests.json +0 -12
- package/packages/sap.fe.core/test/sap/fe/core/relnotes/changes-1.98.json +363 -0
- 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.fragment.xml +5 -5
- package/packages/sap.fe.macros/src/sap/fe/macros/Chart.metadata-dbg.js +0 -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 +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/ChartAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/ChartDelegate-dbg.js +4 -4
- 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 +26 -24
- package/packages/sap.fe.macros/src/sap/fe/macros/CommonHelper.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FieldAPI-dbg.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FieldAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FieldBaseDelegate-dbg.js +90 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/FieldBaseDelegate.js +6 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBar.fragment.xml +7 -6
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBar.metadata-dbg.js +63 -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 +42 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarAPI.ts +76 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarDelegate-dbg.js +49 -6
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarDelegate.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterField-dbg.designtime.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/Form.fragment.xml +21 -17
- package/packages/sap.fe.macros/src/sap/fe/macros/Form.metadata-dbg.js +8 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/Form.metadata.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/MacroAPI-dbg.js +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/MacroAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/MacroMetadata-dbg.js +2 -2
- 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 +8 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/PhantomUtil.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/QuickViewForm.metadata-dbg.js +2 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/QuickViewForm.metadata.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/Share.metadata-dbg.js +11 -8
- package/packages/sap.fe.macros/src/sap/fe/macros/Share.metadata.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/SizeHelper-dbg.js +168 -35
- package/packages/sap.fe.macros/src/sap/fe/macros/SizeHelper.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/Table.fragment.xml +107 -109
- package/packages/sap.fe.macros/src/sap/fe/macros/Table.metadata-dbg.js +51 -65
- 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 +9 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/TableAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/TableAPI.ts +5 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/chart/ChartHelper-dbg.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/chart/ChartHelper.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/chart/ChartUtils-dbg.js +2 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/chart/ChartUtils.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldHelper-dbg.js +101 -16
- 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 +273 -71
- 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 +128 -32
- 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 +110 -16
- package/packages/sap.fe.macros/src/sap/fe/macros/field/QuickViewLinkContactContent.fragment.xml +11 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/field/QuickViewLinkDelegate-dbg.js +65 -84
- package/packages/sap.fe.macros/src/sap/fe/macros/field/QuickViewLinkDelegate.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/CustomFilter.fragment.xml +5 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/FilterUtils-dbg.js +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/filter/FilterUtils.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/form/DataFieldCollection.fragment.xml +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/fpm/CustomFormElement.fragment.xml +5 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/CollectionField.metadata-dbg.js +72 -12
- 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 +43 -14
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/DataPoint.fragment.xml +13 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/DataPoint.metadata-dbg.js +55 -8
- 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 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/Field.metadata-dbg.js +38 -65
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/Field.metadata.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/{FilterField.fragment.xml → internal/FilterField.fragment.xml} +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/{FilterField.metadata-dbg.js → internal/FilterField.metadata-dbg.js} +5 -5
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/FilterField.metadata.js +6 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/SituationsIndicator-dbg.js +96 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/SituationsIndicator.js +5 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/SituationsIndicator.ts +116 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/collectionField/MultiValueFieldDelegate-dbg.js +7 -15
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/collectionField/MultiValueFieldDelegate.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/FieldStructure.fragment.xml +4 -5
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/AmountWithCurrency.fragment.xml +5 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/DataPoint.fragment.xml +5 -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/File.fragment.xml +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/LabelSemanticKey.fragment.xml +5 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/Link.fragment.xml +11 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/LinkWithQuickViewForm.fragment.xml +1 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/LinkWrapper.fragment.xml +5 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/MdcFieldWithValueHelp.fragment.xml +48 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/ObjectIdentifier.fragment.xml +140 -18
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/ObjectStatus.fragment.xml +1 -0
- 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 +6 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/CheckBox.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/DatePicker.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/DateTimePicker.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/File.fragment.xml +14 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/Input.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/InputWithUnit.fragment.xml +3 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/InputWithValueHelp.fragment.xml +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/TextArea.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/TimePicker.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/helpers/DataPointTemplating-dbg.js +25 -9
- 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 +30 -16
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Formatter-dbg.js +154 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Formatter.js +5 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Formatter.ts +146 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Runtime-dbg.js +204 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Runtime.js +5 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Runtime.ts +215 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/TableDelegate-dbg.js +29 -8
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/TableDelegate.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/ValueHelp-dbg.designtime.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/ValueHelpContent.fragment.xml +0 -10
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/ValueListDialogTable.fragment.xml +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/ValueListHelper-dbg.js +151 -131
- 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 +24 -23
- package/packages/sap.fe.macros/src/sap/fe/macros/library-h2-preload.js.map +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/library-preload.js +209 -188
- 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/macroLibrary-dbg.js +7 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/macroLibrary.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 +36 -10
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ar.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_bg.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ca.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_cs.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_cy.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_da.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_de.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_el.properties +13 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_GB.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_US_sappsd.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_US_saprigi.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_US_saptrc.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_es.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_es_MX.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_et.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_fi.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_fr.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_fr_CA.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_hi.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_hr.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_hu.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_id.properties +14 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_it.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_iw.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ja.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_kk.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ko.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_lt.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_lv.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ms.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_nl.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_no.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_pl.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_pt.properties +13 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_pt_PT.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ro.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ru.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sh.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sk.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sl.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sv.properties +13 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_th.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_tr.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_uk.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_vi.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_zh_CN.properties +13 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_zh_TW.properties +12 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/resources.json +496 -354
- package/packages/sap.fe.macros/src/sap/fe/macros/table/Actions.fragment.xml +53 -57
- package/packages/sap.fe.macros/src/sap/fe/macros/table/Column.fragment.xml +1 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/table/ColumnContent.fragment.xml +38 -32
- package/packages/sap.fe.macros/src/sap/fe/macros/table/QuickFilterContainer-dbg.js +12 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/table/QuickFilterContainer.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/table/TableHelper-dbg.js +17 -91
- package/packages/sap.fe.macros/src/sap/fe/macros/table/TableHelper.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/table/TableRuntime-dbg.js +4 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/table/TableRuntime.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/table/Utils-dbg.js +9 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/table/Utils.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/table/delegates/ALPTableDelegateBaseMixin-dbg.js +3 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/table/delegates/ALPTableDelegateBaseMixin.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/table/delegates/TableDelegate-dbg.js +198 -71
- 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.fragment.xml +4 -4
- package/packages/sap.fe.macros/test/sap/fe/macros/designtime/api.json +58 -15
- 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 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartDelegate.spec.ts +1 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartHelper.spec.js +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartHelper.spec.ts +0 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartMacro.spec.js +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartMacro.spec.ts +0 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartUtils.spec.js +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartUtils.spec.ts +0 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/CollectionField.spec.js +21 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/CollectionField.spec.ts +20 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/CommonUtils.spec.js +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/CommonUtils.spec.ts +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/DatapointMacro.spec.js +19 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/DatapointMacro.spec.ts +12 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/DelegateUtil.spec.js +2 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldBaseDelegate.spec.js +111 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldMacroWithSemanticKey.spec.js +67 -3
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldMacroWithSemanticKey.spec.ts +81 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterBarDelegate.spec.js +4 -6
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterBarMacro.spec.js +52 -6
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterBarMacro.spec.ts +64 -7
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterField.spec.js +34 -4
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterField.spec.ts +46 -3
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/PhantomUtil.spec.js +43 -4
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/PhantomUtil.spec.ts +62 -3
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/QuickViewForm.spec.js +31 -5
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/QuickViewForm.spec.ts +25 -3
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/SimpleFieldMacro.spec.js +11 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/SimpleFieldMacro.spec.ts +9 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/TableMacro.spec.js +40 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/TableMacro.spec.ts +35 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/ChartMacro.spec.ts.snap +42 -42
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/CollectionField.spec.ts.snap +49 -7
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/DatapointMacro.spec.ts.snap +27 -11
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FieldMacroDataFieldTypes.spec.ts.snap +50 -44
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FieldMacroWithSemanticKey.spec.ts.snap +146 -56
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FieldMacroWithValueHelp.spec.ts.snap +16 -16
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FilterBarMacro.spec.ts.snap +774 -11
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FilterField.spec.ts.snap +70 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/MicroChart.spec.ts.snap +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/PhantomUtil.spec.ts.snap +70 -165
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/QuickViewForm.spec.ts.snap +39 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/SimpleFieldMacro.spec.ts.snap +287 -170
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/TableFieldLabel.spec.ts.snap +369 -213
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/CollectionField.cds +11 -3
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FieldMacroDataFieldTypes.cds +5 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FieldMacroWithSemanticKey.cds +17 -12
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FilterBarMacro.cds +18 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FilterBarMacroWithDefaultAnnotation.cds +155 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FilterBarMacroWithSVandAnnotation.cds +155 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FilterFieldMacro.cds +13 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/QuickViewForm.cds +36 -11
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/TableFieldLabel.cds +22 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/simpleFieldMacro.cds +8 -3
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldRuntime.spec.js +252 -61
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldRuntime.spec.ts +277 -67
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldTemplating.cds +93 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldTemplating.spec.js +118 -16
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldTemplating.spec.ts +143 -16
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/__snapshots__/FieldTemplating.spec.ts.snap +31 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/fragments/MyTestFragment.xml +3 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/fragments/MyTestSubFragment.xml +10 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/Actions.spec.js +14 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/Actions.spec.ts +13 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/__snapshots__/columnWidth.spec.ts.snap +131 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/columnWidth.spec.js +264 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/columnWidth.spec.ts +244 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/data/columnWidth.cds +238 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/TableDelegate.spec.js +33 -6
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/TableDelegate.spec.ts +40 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/ValueHelpTableDelegate.spec.js +61 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/ValueHelpTableDelegate.spec.ts +64 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/__snapshots__/TableDelegate.spec.ts.snap +1287 -32
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/data/tabledelegate.cds +1 -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/CommonHelper.qunit.js +284 -159
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FieldHelper.qunit.js +9 -9
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FieldHelperTemplate.qunit.js +2 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FormContainerTemplating.qunit.js +1 -0
- 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/FormTemplating.qunit.js +10 -5
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FormTemplatingTs.qunit.js +2 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/MacroMetadata.qunit.js +5 -5
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/MicroChartContainer.qunit.js +29 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/TableHelper.qunit.js +6 -26
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/TableHelperTemplate.qunit.js +3 -8
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/ValueListHelper.qunit.js +402 -18
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/fragments/FilterFieldMacro.fragment.xml +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/fragments/FilterFieldMacroMissingID.fragment.xml +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/fragments/TableMacro.fragment.xml +0 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/relnotes/changes-1.98.json +210 -0
- 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/NavigationHandler-dbg.js +70 -29
- package/packages/sap.fe.navigation/src/sap/fe/navigation/NavigationHandler.js +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-preload.js +6 -5
- package/packages/sap.fe.navigation/src/sap/fe/navigation/library-preload.js.map +3 -3
- 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 +5 -5
- 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.navigation/test/sap/fe/navigation/qunit/navigation/NavigationHandlerTest.qunit.js +4 -12
- 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-preload.js +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/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/chart/FEChartDelegate-dbg.js +2 -2
- package/packages/sap.fe.templates/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.js +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 +2 -2
- 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/ExtensionAPI-dbg.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/ExtensionAPI.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/ListReport.view.xml +2 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/ListReportController-dbg.controller.js +85 -85
- 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/overrides/IntentBasedNavigation-dbg.js +6 -2
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/MassEdit-dbg.js +96 -0
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/MassEdit.js +6 -0
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/Share-dbg.js +36 -21
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/Share.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/ViewState-dbg.js +53 -31
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/ViewState.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/resources.json +20 -11
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/AnnotationHelper-dbg.js +20 -0
- 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 +16 -14
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/Component.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ExtensionAPI-dbg.js +15 -0
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ExtensionAPI.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +103 -88
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ObjectPageController-dbg.controller.js +99 -72
- 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/manifest.json +2 -2
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/Paginator-dbg.js +12 -0
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/Paginator.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/Share-dbg.js +47 -43
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/Share.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/ViewState-dbg.js +0 -20
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/ViewState.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/resources.json +24 -24
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/Actions.fragment.xml +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/Section.fragment.xml +24 -5
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/SectionContent.fragment.xml +1 -4
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/SectionContentLazyLoader.fragment.xml +181 -0
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/SectionFormContent.fragment.xml +1 -0
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/SectionMoreFormContent.fragment.xml +1 -0
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController-dbg.js +133 -123
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/controls/Table.fragment.xml +1 -1
- 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 +8 -7
- package/packages/sap.fe.templates/src/sap/fe/templates/library-h2-preload.js.map +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/library-preload.js +34 -32
- 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 +13 -13
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle.properties +24 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_en_US_sappsd.properties +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_en_US_saprigi.properties +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_en_US_saptrc.properties +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_es.properties +8 -8
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_fr.properties +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_ja.properties +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_tr.properties +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/resources.json +126 -66
- 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 +1 -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/ViewState.spec.js +262 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/HeaderFacet.spec.js +2 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/HeaderFacet.spec.ts +1 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/Sections.spec.js +132 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/Sections.spec.ts +131 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/__snapshots__/HeaderFacet.spec.ts.snap +1 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/__snapshots__/Sections.spec.ts.snap +52 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/RootContainer/RootContainerBaseController.spec.js +229 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/RootContainer/RootContainerBaseController.spec.ts +157 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/RootContainer/__snapshots__/RootContainerBaseController.spec.ts.snap +218 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/data/RootContainerBaseController.cds +64 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/relnotes/changes-1.98.json +201 -0
- 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/JourneyRunner-dbg.js +8 -3
- package/packages/sap.fe.test/src/sap/fe/test/JourneyRunner.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/ListReport-dbg.js +8 -3
- package/packages/sap.fe.test/src/sap/fe/test/ListReport.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/ObjectPage-dbg.js +19 -11
- package/packages/sap.fe.test/src/sap/fe/test/ObjectPage.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/TemplatingTestUtils-dbg.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/TemplatingTestUtils.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/UI5MockHelper-dbg.js +211 -45
- package/packages/sap.fe.test/src/sap/fe/test/UI5MockHelper.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/UI5MockHelper.ts +103 -8
- package/packages/sap.fe.test/src/sap/fe/test/Utils-dbg.js +0 -12
- package/packages/sap.fe.test/src/sap/fe/test/Utils.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/api/BaseAPI-dbg.js +1 -7
- package/packages/sap.fe.test/src/sap/fe/test/api/BaseAPI.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/api/ChartAssertions-dbg.js +4 -4
- package/packages/sap.fe.test/src/sap/fe/test/api/ChartAssertions.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/api/KPICardActions-dbg.js +43 -0
- package/packages/sap.fe.test/src/sap/fe/test/api/KPICardActions.js +6 -0
- package/packages/sap.fe.test/src/sap/fe/test/api/KPICardAssertions-dbg.js +19 -15
- package/packages/sap.fe.test/src/sap/fe/test/api/KPICardAssertions.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/api/TableAssertions-dbg.js +11 -0
- package/packages/sap.fe.test/src/sap/fe/test/api/TableAssertions.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/builder/KPIBuilder-dbg.js +11 -2
- package/packages/sap.fe.test/src/sap/fe/test/builder/KPIBuilder.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/builder/MdcTableBuilder-dbg.js +22 -0
- package/packages/sap.fe.test/src/sap/fe/test/builder/MdcTableBuilder.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 +5 -4
- package/packages/sap.fe.test/src/sap/fe/test/library-h2-preload.js.map +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/library-preload.js +37 -23
- package/packages/sap.fe.test/src/sap/fe/test/library-preload.js.map +4 -4
- 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 +59 -34
- 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.test/test/sap/fe/test/mockserver/MockServer.js +98965 -71474
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar.d-dbg.js +0 -8
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar.d.js +0 -5
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar.d.ts +0 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/localService/CreditLimitDetails.json +0 -154
- package/packages/sap.fe.core/test/sap/fe/core/qunit/TransactionHelper.qunit.js +0 -77
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarHelper-dbg.js +0 -48
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarHelper.js +0 -6
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterField.metadata.js +0 -6
- package/packages/sap.fe.macros/src/sap/fe/macros/FormWrapper.fragment.xml +0 -26
- package/packages/sap.fe.macros/src/sap/fe/macros/massedit/MassEditHandler-dbg.js +0 -718
- package/packages/sap.fe.macros/src/sap/fe/macros/massedit/MassEditHandler.js +0 -6
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FilterBarHelper.qunit.js +0 -223
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/HeaderImage.fragment.xml +0 -24
|
@@ -23,10 +23,6 @@ sap.ui.define(["path", "sap/fe/core/converters/MetaModelConverter", "sap/fe/core
|
|
|
23
23
|
var sMetadataUrl = compileCDS(path.join(__dirname, "../data/ListReportConverter.cds"));
|
|
24
24
|
return Promise.resolve(getMetaModel(sMetadataUrl)).then(function (metaModel) {
|
|
25
25
|
convertedTypes = convertTypes(metaModel);
|
|
26
|
-
var sMetadataUrlAnalyticalService = compileCDS(path.join(__dirname, "../data/AnalyticalService.cds"));
|
|
27
|
-
return Promise.resolve(getMetaModel(sMetadataUrlAnalyticalService)).then(function (metaModelAnalyticalService) {
|
|
28
|
-
convertedTypesAnalyticalService = convertTypes(metaModelAnalyticalService);
|
|
29
|
-
});
|
|
30
26
|
});
|
|
31
27
|
} catch (e) {
|
|
32
28
|
return Promise.reject(e);
|
|
@@ -138,21 +134,6 @@ sap.ui.define(["path", "sap/fe/core/converters/MetaModelConverter", "sap/fe/core
|
|
|
138
134
|
var convertedPage = convertPage(converterContext);
|
|
139
135
|
expect(convertedPage.showPinnableToggle).toEqual(false);
|
|
140
136
|
});
|
|
141
|
-
it("#convertPage - will set showPinnableToggle to false when the LR table is analytical", function () {
|
|
142
|
-
var converterContext = getConverterContextForTest(convertedTypesAnalyticalService, {
|
|
143
|
-
converterType: TemplateType.ListReport,
|
|
144
|
-
entitySet: "TestEntity",
|
|
145
|
-
controlConfiguration: {
|
|
146
|
-
"@com.sap.vocabularies.UI.v1.LineItem": {
|
|
147
|
-
"tableSettings": {
|
|
148
|
-
"type": "AnalyticalTable"
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
});
|
|
153
|
-
var convertedPage = convertPage(converterContext);
|
|
154
|
-
expect(convertedPage.showPinnableToggle).toEqual(false);
|
|
155
|
-
});
|
|
156
137
|
it("#convertPage - check views (custom and based on annotations)", {
|
|
157
138
|
"references": [{
|
|
158
139
|
"type": "JIRA",
|
|
@@ -251,5 +232,265 @@ sap.ui.define(["path", "sap/fe/core/converters/MetaModelConverter", "sap/fe/core
|
|
|
251
232
|
});
|
|
252
233
|
});
|
|
253
234
|
});
|
|
235
|
+
describe("ListReportConverter with analytical service", function () {
|
|
236
|
+
var convertedTypes;
|
|
237
|
+
beforeAll(function () {
|
|
238
|
+
try {
|
|
239
|
+
var sMetadataUrl = compileCDS(path.join(__dirname, "../data/AnalyticalService.cds"));
|
|
240
|
+
return Promise.resolve(getMetaModel(sMetadataUrl)).then(function (metaModel) {
|
|
241
|
+
convertedTypes = convertTypes(metaModel);
|
|
242
|
+
});
|
|
243
|
+
} catch (e) {
|
|
244
|
+
return Promise.reject(e);
|
|
245
|
+
}
|
|
246
|
+
});
|
|
247
|
+
it("#convertPage - will set showPinnableToggle to false when the LR table is analytical", function () {
|
|
248
|
+
var converterContext = getConverterContextForTest(convertedTypes, {
|
|
249
|
+
converterType: TemplateType.ListReport,
|
|
250
|
+
entitySet: "TestEntity",
|
|
251
|
+
controlConfiguration: {
|
|
252
|
+
"@com.sap.vocabularies.UI.v1.LineItem": {
|
|
253
|
+
"tableSettings": {
|
|
254
|
+
"type": "AnalyticalTable"
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
});
|
|
259
|
+
var convertedPage = convertPage(converterContext);
|
|
260
|
+
expect(convertedPage.showPinnableToggle).toEqual(false);
|
|
261
|
+
});
|
|
262
|
+
it("#convertPage - will show basic search with analytical table when there is no list of allowed $apply transformations", {
|
|
263
|
+
"references": [{
|
|
264
|
+
"type": "JIRA",
|
|
265
|
+
"ID": "FIORITECHP1-19687"
|
|
266
|
+
}]
|
|
267
|
+
}, function () {
|
|
268
|
+
var converterContext = getConverterContextForTest(convertedTypes, {
|
|
269
|
+
converterType: TemplateType.ListReport,
|
|
270
|
+
entitySet: "TestEntity",
|
|
271
|
+
controlConfiguration: {
|
|
272
|
+
"@com.sap.vocabularies.UI.v1.LineItem": {
|
|
273
|
+
"tableSettings": {
|
|
274
|
+
"type": "AnalyticalTable"
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
});
|
|
279
|
+
var convertedPage = convertPage(converterContext);
|
|
280
|
+
expect(convertedPage.filterBar.hideBasicSearch).toEqual(false);
|
|
281
|
+
expect(convertedPage.views).toHaveLength(1);
|
|
282
|
+
var visualizations = convertedPage.views[0].presentation.visualizations;
|
|
283
|
+
expect(visualizations).toHaveLength(1);
|
|
284
|
+
var tableViz = visualizations[0];
|
|
285
|
+
expect(tableViz.enableAnalyticsSearch).toEqual(true);
|
|
286
|
+
});
|
|
287
|
+
it("#convertPage - will show basic search with analytical table when search is allowed as an $apply transformations", {
|
|
288
|
+
"references": [{
|
|
289
|
+
"type": "JIRA",
|
|
290
|
+
"ID": "FIORITECHP1-19687"
|
|
291
|
+
}]
|
|
292
|
+
}, function () {
|
|
293
|
+
var converterContext = getConverterContextForTest(convertedTypes, {
|
|
294
|
+
converterType: TemplateType.ListReport,
|
|
295
|
+
entitySet: "TestEntity2",
|
|
296
|
+
controlConfiguration: {
|
|
297
|
+
"@com.sap.vocabularies.UI.v1.LineItem": {
|
|
298
|
+
"tableSettings": {
|
|
299
|
+
"type": "AnalyticalTable"
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
});
|
|
304
|
+
var convertedPage = convertPage(converterContext);
|
|
305
|
+
expect(convertedPage.filterBar.hideBasicSearch).toEqual(false);
|
|
306
|
+
expect(convertedPage.views).toHaveLength(1);
|
|
307
|
+
var visualizations = convertedPage.views[0].presentation.visualizations;
|
|
308
|
+
expect(visualizations).toHaveLength(1);
|
|
309
|
+
var tableViz = visualizations[0];
|
|
310
|
+
expect(tableViz.enableAnalyticsSearch).toEqual(true);
|
|
311
|
+
});
|
|
312
|
+
it("#convertPage - will not show basic search with analytical table when search is not allowed as an $apply transformations", {
|
|
313
|
+
"references": [{
|
|
314
|
+
"type": "JIRA",
|
|
315
|
+
"ID": "FIORITECHP1-19687"
|
|
316
|
+
}]
|
|
317
|
+
}, function () {
|
|
318
|
+
var converterContext = getConverterContextForTest(convertedTypes, {
|
|
319
|
+
converterType: TemplateType.ListReport,
|
|
320
|
+
entitySet: "TestEntity3",
|
|
321
|
+
controlConfiguration: {
|
|
322
|
+
"@com.sap.vocabularies.UI.v1.LineItem": {
|
|
323
|
+
"tableSettings": {
|
|
324
|
+
"type": "AnalyticalTable"
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
});
|
|
329
|
+
var convertedPage = convertPage(converterContext);
|
|
330
|
+
expect(convertedPage.filterBar.hideBasicSearch).toEqual(true);
|
|
331
|
+
expect(convertedPage.views).toHaveLength(1);
|
|
332
|
+
var visualizations = convertedPage.views[0].presentation.visualizations;
|
|
333
|
+
expect(visualizations).toHaveLength(1);
|
|
334
|
+
var tableViz = visualizations[0];
|
|
335
|
+
expect(tableViz.enableAnalyticsSearch).toEqual(false);
|
|
336
|
+
});
|
|
337
|
+
it("#convertPage - will show basic search with grid table when search is not allowed as an $apply transformations", {
|
|
338
|
+
"references": [{
|
|
339
|
+
"type": "JIRA",
|
|
340
|
+
"ID": "FIORITECHP1-19687"
|
|
341
|
+
}]
|
|
342
|
+
}, function () {
|
|
343
|
+
var converterContext = getConverterContextForTest(convertedTypes, {
|
|
344
|
+
converterType: TemplateType.ListReport,
|
|
345
|
+
entitySet: "TestEntity3",
|
|
346
|
+
controlConfiguration: {
|
|
347
|
+
"@com.sap.vocabularies.UI.v1.LineItem": {
|
|
348
|
+
"tableSettings": {
|
|
349
|
+
"type": "GridTable"
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
});
|
|
354
|
+
var convertedPage = convertPage(converterContext);
|
|
355
|
+
expect(convertedPage.filterBar.hideBasicSearch).toEqual(false);
|
|
356
|
+
expect(convertedPage.views).toHaveLength(1);
|
|
357
|
+
var visualizations = convertedPage.views[0].presentation.visualizations;
|
|
358
|
+
expect(visualizations).toHaveLength(1);
|
|
359
|
+
var tableViz = visualizations[0];
|
|
360
|
+
expect(tableViz.enableAnalyticsSearch).toEqual(undefined);
|
|
361
|
+
});
|
|
362
|
+
it("#convertPage - will show basic search with several analytical table when search is allowed for at least one", {
|
|
363
|
+
"references": [{
|
|
364
|
+
"type": "JIRA",
|
|
365
|
+
"ID": "FIORITECHP1-19687"
|
|
366
|
+
}]
|
|
367
|
+
}, function () {
|
|
368
|
+
var converterContext = getConverterContextForTest(convertedTypes, {
|
|
369
|
+
converterType: TemplateType.ListReport,
|
|
370
|
+
entitySet: "TestEntity",
|
|
371
|
+
views: {
|
|
372
|
+
paths: [{
|
|
373
|
+
key: "tab1",
|
|
374
|
+
annotationPath: "com.sap.vocabularies.UI.v1.SelectionPresentationVariant#forEntity1"
|
|
375
|
+
}, {
|
|
376
|
+
key: "tab2",
|
|
377
|
+
entitySet: "TestEntity3",
|
|
378
|
+
annotationPath: "com.sap.vocabularies.UI.v1.SelectionPresentationVariant#forEntity3"
|
|
379
|
+
}]
|
|
380
|
+
},
|
|
381
|
+
"controlConfiguration": {
|
|
382
|
+
"@com.sap.vocabularies.UI.v1.LineItem#forEntity1": {
|
|
383
|
+
"tableSettings": {
|
|
384
|
+
"type": "AnalyticalTable"
|
|
385
|
+
}
|
|
386
|
+
},
|
|
387
|
+
"@com.sap.vocabularies.UI.v1.LineItem#forEntity3": {
|
|
388
|
+
"tableSettings": {
|
|
389
|
+
"type": "AnalyticalTable"
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
});
|
|
394
|
+
var convertedPage = convertPage(converterContext);
|
|
395
|
+
expect(convertedPage.filterBar.hideBasicSearch).toEqual(false);
|
|
396
|
+
expect(convertedPage.views).toHaveLength(2);
|
|
397
|
+
var visualizations1 = convertedPage.views[0].presentation.visualizations;
|
|
398
|
+
expect(visualizations1).toHaveLength(1);
|
|
399
|
+
var tableViz1 = visualizations1[0];
|
|
400
|
+
expect(tableViz1.enableAnalyticsSearch).toEqual(true);
|
|
401
|
+
var visualizations2 = convertedPage.views[1].presentation.visualizations;
|
|
402
|
+
expect(visualizations2).toHaveLength(1);
|
|
403
|
+
var tableViz2 = visualizations2[0];
|
|
404
|
+
expect(tableViz2.enableAnalyticsSearch).toEqual(false); // The second view doesn't allow search
|
|
405
|
+
});
|
|
406
|
+
it("#convertPage - will not show basic search with several analytical table when search is not allowed for any of them", {
|
|
407
|
+
"references": [{
|
|
408
|
+
"type": "JIRA",
|
|
409
|
+
"ID": "FIORITECHP1-19687"
|
|
410
|
+
}]
|
|
411
|
+
}, function () {
|
|
412
|
+
var converterContext = getConverterContextForTest(convertedTypes, {
|
|
413
|
+
converterType: TemplateType.ListReport,
|
|
414
|
+
entitySet: "TestEntity4",
|
|
415
|
+
views: {
|
|
416
|
+
paths: [{
|
|
417
|
+
key: "tab1",
|
|
418
|
+
annotationPath: "com.sap.vocabularies.UI.v1.SelectionPresentationVariant#forEntity4"
|
|
419
|
+
}, {
|
|
420
|
+
key: "tab2",
|
|
421
|
+
entitySet: "TestEntity3",
|
|
422
|
+
annotationPath: "com.sap.vocabularies.UI.v1.SelectionPresentationVariant#forEntity3"
|
|
423
|
+
}]
|
|
424
|
+
},
|
|
425
|
+
"controlConfiguration": {
|
|
426
|
+
"@com.sap.vocabularies.UI.v1.LineItem#forEntity4": {
|
|
427
|
+
"tableSettings": {
|
|
428
|
+
"type": "AnalyticalTable"
|
|
429
|
+
}
|
|
430
|
+
},
|
|
431
|
+
"@com.sap.vocabularies.UI.v1.LineItem#forEntity3": {
|
|
432
|
+
"tableSettings": {
|
|
433
|
+
"type": "AnalyticalTable"
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
});
|
|
438
|
+
var convertedPage = convertPage(converterContext);
|
|
439
|
+
expect(convertedPage.filterBar.hideBasicSearch).toEqual(true);
|
|
440
|
+
expect(convertedPage.views).toHaveLength(2);
|
|
441
|
+
var visualizations1 = convertedPage.views[0].presentation.visualizations;
|
|
442
|
+
expect(visualizations1).toHaveLength(1);
|
|
443
|
+
var tableViz1 = visualizations1[0];
|
|
444
|
+
expect(tableViz1.enableAnalyticsSearch).toEqual(false);
|
|
445
|
+
var visualizations2 = convertedPage.views[1].presentation.visualizations;
|
|
446
|
+
expect(visualizations2).toHaveLength(1);
|
|
447
|
+
var tableViz2 = visualizations2[0];
|
|
448
|
+
expect(tableViz2.enableAnalyticsSearch).toEqual(false);
|
|
449
|
+
});
|
|
450
|
+
it("#convertPage - will always show basic search with several tables if one is not analytical", {
|
|
451
|
+
"references": [{
|
|
452
|
+
"type": "JIRA",
|
|
453
|
+
"ID": "FIORITECHP1-19687"
|
|
454
|
+
}]
|
|
455
|
+
}, function () {
|
|
456
|
+
var converterContext = getConverterContextForTest(convertedTypes, {
|
|
457
|
+
converterType: TemplateType.ListReport,
|
|
458
|
+
entitySet: "TestEntity4",
|
|
459
|
+
views: {
|
|
460
|
+
paths: [{
|
|
461
|
+
key: "tab1",
|
|
462
|
+
annotationPath: "com.sap.vocabularies.UI.v1.SelectionPresentationVariant#forEntity4"
|
|
463
|
+
}, {
|
|
464
|
+
key: "tab2",
|
|
465
|
+
entitySet: "TestEntity3",
|
|
466
|
+
annotationPath: "com.sap.vocabularies.UI.v1.SelectionPresentationVariant#forEntity3"
|
|
467
|
+
}]
|
|
468
|
+
},
|
|
469
|
+
"controlConfiguration": {
|
|
470
|
+
"@com.sap.vocabularies.UI.v1.LineItem#forEntity4": {
|
|
471
|
+
"tableSettings": {
|
|
472
|
+
"type": "AnalyticalTable"
|
|
473
|
+
}
|
|
474
|
+
},
|
|
475
|
+
"@com.sap.vocabularies.UI.v1.LineItem#forEntity3": {
|
|
476
|
+
"tableSettings": {
|
|
477
|
+
"type": "ResponsiveTable"
|
|
478
|
+
}
|
|
479
|
+
}
|
|
480
|
+
}
|
|
481
|
+
});
|
|
482
|
+
var convertedPage = convertPage(converterContext);
|
|
483
|
+
expect(convertedPage.filterBar.hideBasicSearch).toEqual(false);
|
|
484
|
+
expect(convertedPage.views).toHaveLength(2);
|
|
485
|
+
var visualizations1 = convertedPage.views[0].presentation.visualizations;
|
|
486
|
+
expect(visualizations1).toHaveLength(1);
|
|
487
|
+
var tableViz1 = visualizations1[0];
|
|
488
|
+
expect(tableViz1.enableAnalyticsSearch).toEqual(false);
|
|
489
|
+
var visualizations2 = convertedPage.views[1].presentation.visualizations;
|
|
490
|
+
expect(visualizations2).toHaveLength(1);
|
|
491
|
+
var tableViz2 = visualizations2[0];
|
|
492
|
+
expect(tableViz2.enableAnalyticsSearch).toEqual(undefined); // Search works for the second table
|
|
493
|
+
});
|
|
494
|
+
});
|
|
254
495
|
}, false);
|
|
255
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxpc3RSZXBvcnRDb252ZXJ0ZXIuc3BlYy50cyJdLCJuYW1lcyI6WyJkZXNjcmliZSIsImNvbnZlcnRlZFR5cGVzIiwiY29udmVydGVkVHlwZXNBbmFseXRpY2FsU2VydmljZSIsImJlZm9yZUFsbCIsInNNZXRhZGF0YVVybCIsImNvbXBpbGVDRFMiLCJwYXRoIiwiam9pbiIsIl9fZGlybmFtZSIsImdldE1ldGFNb2RlbCIsIm1ldGFNb2RlbCIsImNvbnZlcnRUeXBlcyIsInNNZXRhZGF0YVVybEFuYWx5dGljYWxTZXJ2aWNlIiwibWV0YU1vZGVsQW5hbHl0aWNhbFNlcnZpY2UiLCJpdCIsImNvbnZlcnRlckNvbnRleHQiLCJnZXRDb252ZXJ0ZXJDb250ZXh0Rm9yVGVzdCIsImNvbnZlcnRlclR5cGUiLCJUZW1wbGF0ZVR5cGUiLCJMaXN0UmVwb3J0IiwiZW50aXR5U2V0IiwiaGVhZGVyQWN0aW9ucyIsImdldEhlYWRlckFjdGlvbnMiLCJleHBlY3QiLCJsZW5ndGgiLCJ0b0VxdWFsIiwiY29udGVudCIsImhlYWRlciIsImFjdGlvbnMiLCJQbGFjZW1lbnQiLCJBZnRlciIsIkJlZm9yZSIsInR5cGUiLCJrZXkiLCJlbmFibGVkIiwiY29udmVydGVkUGFnZSIsImNvbnZlcnRQYWdlIiwidXNlU2VtYW50aWNEYXRlUmFuZ2UiLCJjb250cm9sQ29uZmlndXJhdGlvbiIsInNob3dQaW5uYWJsZVRvZ2dsZSIsInZpZXdzIiwidGFibGVDb250cm9sSWQiLCJ0aXRsZSIsInNlbGVjdGlvblZhcmlhbnRQYXRoIiwiY3VzdG9tVGFiSWQiLCJmcmFnbWVudCIsImhhc011bHRpVmlzdWFsaXphdGlvbnMiLCJzZWxlY3Rpb25GaWVsZHMiLCJnZXRTZWxlY3Rpb25GaWVsZHMiLCJhdmFpbGFiaWxpdHkiLCJzZXR0aW5ncyJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7QUFhQUEsRUFBQUEsUUFBUSxDQUFDLHFCQUFELEVBQXdCLFlBQVc7QUFD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REc7QUFGOEI7QUFEMUI7QUFINkMsT0FBakIsQ0FBbkQ7QUFnQ0EsVUFBTVMsZUFBZSxHQUFHQyxrQkFBa0IsQ0FBQ2pDLGdCQUFELENBQTFDO0FBQ0FRLE1BQUFBLE1BQU0sQ0FBQ3dCLGVBQWUsQ0FBQ3ZCLE1BQWpCLENBQU4sQ0FBK0JDLE9BQS9CLENBQXVDLENBQXZDO0FBQ0FGLE1BQUFBLE1BQU0sQ0FBQ3dCLGVBQWUsQ0FBQyxDQUFELENBQWYsQ0FBbUJkLEdBQXBCLENBQU4sQ0FBK0JSLE9BQS9CLENBQXVDLFVBQXZDO0FBQ0FGLE1BQUFBLE1BQU0sQ0FBQ3dCLGVBQWUsQ0FBQyxDQUFELENBQWYsQ0FBbUJHLFFBQXBCLENBQU4sQ0FBb0N6QixPQUFwQyxDQUE0QztBQUMzQyxpQ0FBeUIsQ0FDeEI7QUFBRSxrQkFBUSxLQUFWO0FBQWlCLG9CQUFVLHlCQUEzQjtBQUFzRCxxQkFBVztBQUFqRSxTQUR3QixFQUV4QjtBQUFFLGtCQUFRLFVBQVY7QUFBc0Isc0JBQVksT0FBbEM7QUFBMkMscUJBQVc7QUFBdEQsU0FGd0IsRUFHeEI7QUFBRSxrQkFBUSxLQUFWO0FBQWlCLHNCQUFZLFNBQTdCO0FBQXdDLHFCQUFXO0FBQW5ELFNBSHdCO0FBRGtCLE9BQTVDO0FBT0EsS0FoREEsQ0FBRjtBQWtEQSxHQS9PTyxDQUFSIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb252ZXJ0ZXJPdXRwdXQgfSBmcm9tIFwiQHNhcC11eC9hbm5vdGF0aW9uLWNvbnZlcnRlclwiO1xuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IGNvbnZlcnRUeXBlcyB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01ldGFNb2RlbENvbnZlcnRlclwiO1xuaW1wb3J0IHsgVGVtcGxhdGVUeXBlIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvTWFuaWZlc3RTZXR0aW5nc1wiO1xuaW1wb3J0IHsgUGxhY2VtZW50IH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvaGVscGVycy9Db25maWd1cmFibGVPYmplY3RcIjtcbmltcG9ydCB7IGNvbXBpbGVDRFMsIGdldENvbnZlcnRlckNvbnRleHRGb3JUZXN0LCBnZXRNZXRhTW9kZWwgfSBmcm9tIFwic2FwL2ZlL3Rlc3QvSmVzdFRlbXBsYXRpbmdIZWxwZXJcIjtcbmltcG9ydCB7XG5cdGNvbnZlcnRQYWdlLFxuXHRDdXN0b21WaWV3RGVmaW5pdGlvbixcblx0Z2V0SGVhZGVyQWN0aW9ucyxcblx0U2luZ2xlVmlld0RlZmluaXRpb24sXG5cdFNpbmdsZVRhYmxlVmlld0RlZmluaXRpb25cbn0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvdGVtcGxhdGVzL0xpc3RSZXBvcnRDb252ZXJ0ZXJcIjtcbmltcG9ydCB7IGdldFNlbGVjdGlvbkZpZWxkcyB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL2NvbnRyb2xzL0xpc3RSZXBvcnQvRmlsdGVyQmFyXCI7XG5cbmRlc2NyaWJlKFwiTGlzdFJlcG9ydENvbnZlcnRlclwiLCBmdW5jdGlvbigpIHtcblx0bGV0IGNvbnZlcnRlZFR5cGVzOiBDb252ZXJ0ZXJPdXRwdXQ7XG5cdGxldCBjb252ZXJ0ZWRUeXBlc0FuYWx5dGljYWxTZXJ2aWNlOiBDb252ZXJ0ZXJPdXRwdXQ7XG5cblx0YmVmb3JlQWxsKGFzeW5jIGZ1bmN0aW9uKCkge1xuXHRcdGNvbnN0IHNNZXRhZGF0YVVybCA9IGNvbXBpbGVDRFMocGF0aC5qb2luKF9fZGlybmFtZSwgXCIuLi9kYXRhL0xpc3RSZXBvcnRDb252ZXJ0ZXIuY2RzXCIpKTtcblx0XHRjb25zdCBtZXRhTW9kZWwgPSBhd2FpdCBnZXRNZXRhTW9kZWwoc01ldGFkYXRhVXJsKTtcblx0XHRjb252ZXJ0ZWRUeXBlcyA9IGNvbnZlcnRUeXBlcyhtZXRhTW9kZWwpO1xuXHRcdGNvbnN0IHNNZXRhZGF0YVVybEFuYWx5dGljYWxTZXJ2aWNlID0gY29tcGlsZUNEUyhwYXRoLmpvaW4oX19kaXJuYW1lLCBcIi4uL2RhdGEvQW5hbHl0aWNhbFNlcnZpY2UuY2RzXCIpKTtcblx0XHRjb25zdCBtZXRhTW9kZWxBbmFseXRpY2FsU2VydmljZSA9IGF3YWl0IGdldE1ldGFNb2RlbChzTWV0YWRhdGFVcmxBbmFseXRpY2FsU2VydmljZSk7XG5cdFx0Y29udmVydGVkVHlwZXNBbmFseXRpY2FsU2VydmljZSA9IGNvbnZlcnRUeXBlcyhtZXRhTW9kZWxBbmFseXRpY2FsU2VydmljZSk7XG5cdH0pO1xuXG5cdGl0KFwiI2dldEhlYWRlckFjdGlvbnMgLSBjYW4gcmV0cmlldmUgdGhlIGhlYWRlciBhY3Rpb25zXCIsIGZ1bmN0aW9uKCkge1xuXHRcdGNvbnN0IGNvbnZlcnRlckNvbnRleHQgPSBnZXRDb252ZXJ0ZXJDb250ZXh0Rm9yVGVzdChjb252ZXJ0ZWRUeXBlcywge1xuXHRcdFx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQsXG5cdFx0XHRlbnRpdHlTZXQ6IFwiRHJhZnRFbnRpdHlcIlxuXHRcdH0pO1xuXHRcdGNvbnN0IGhlYWRlckFjdGlvbnMgPSBnZXRIZWFkZXJBY3Rpb25zKGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdGV4cGVjdChoZWFkZXJBY3Rpb25zLmxlbmd0aCkudG9FcXVhbCgwKTtcblx0fSk7XG5cdGl0KFxuXHRcdFwiI2dldEhlYWRlckFjdGlvbnMgLSBjYW4gYWRkIGN1c3RvbSBhY3Rpb25zXCIsXG5cdFx0e1xuXHRcdFx0XCJyZWZlcmVuY2VzXCI6IFtcblx0XHRcdFx0eyBcInR5cGVcIjogXCJCQ1BcIiwgXCJJRFwiOiBcIjIxODAwNzEyODRcIiB9LFxuXHRcdFx0XHR7IFwidHlwZVwiOiBcIkpJUkFcIiwgXCJJRFwiOiBcIkZJT1JJVEVDSFAxLTE2ODA4XCIgfVxuXHRcdFx0XVxuXHRcdH0sXG5cdFx0ZnVuY3Rpb24oKSB7XG5cdFx0XHRjb25zdCBjb252ZXJ0ZXJDb250ZXh0ID0gZ2V0Q29udmVydGVyQ29udGV4dEZvclRlc3QoY29udmVydGVkVHlwZXMsIHtcblx0XHRcdFx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQsXG5cdFx0XHRcdGVudGl0eVNldDogXCJEcmFmdEVudGl0eVwiLFxuXHRcdFx0XHRjb250ZW50OiB7XG5cdFx0XHRcdFx0aGVhZGVyOiB7XG5cdFx0XHRcdFx0XHRhY3Rpb25zOiB7XG5cdFx0XHRcdFx0XHRcdFwiY3VzdG9tSGVhZGVyQWN0aW9uXCI6IHtcblx0XHRcdFx0XHRcdFx0XHRcInByZXNzXCI6IFwiU2FsZXNPcmRlci5jdXN0b20uQ3VzdG9tQWN0aW9ucy5hbGVydFwiLFxuXHRcdFx0XHRcdFx0XHRcdFwidGV4dFwiOiBcIkFsZXJ0XCIsXG5cdFx0XHRcdFx0XHRcdFx0XCJwb3NpdGlvblwiOiB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcInBsYWNlbWVudFwiOiBQbGFjZW1lbnQuQWZ0ZXIsXG5cdFx0XHRcdFx0XHRcdFx0XHRcImFuY2hvclwiOiBcImhlYWRlcjJcIlxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRcdFx0XCJoZWFkZXIyXCI6IHtcblx0XHRcdFx0XHRcdFx0XHRcInByZXNzXCI6IFwiU2FsZXNPcmRlci5jdXN0b20uQ3VzdG9tQWN0aW9ucy5hY2NvdW50RGV0YWlsc1wiLFxuXHRcdFx0XHRcdFx0XHRcdFwiZW5hYmxlZFwiOiBcInt1aT4vaXNFZGl0YWJsZX1cIixcblx0XHRcdFx0XHRcdFx0XHRcInRleHRcIjogXCJEaXNwbGF5IGFjY291bnQgZGV0YWlsc1wiLFxuXHRcdFx0XHRcdFx0XHRcdFwicG9zaXRpb25cIjoge1xuXHRcdFx0XHRcdFx0XHRcdFx0XCJwbGFjZW1lbnRcIjogUGxhY2VtZW50LkJlZm9yZVxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0XHRjb25zdCBoZWFkZXJBY3Rpb25zID0gZ2V0SGVhZGVyQWN0aW9ucyhjb252ZXJ0ZXJDb250ZXh0KTtcblx0XHRcdGV4cGVjdChoZWFkZXJBY3Rpb25zLmxlbmd0aCkudG9FcXVhbCgyKTtcblx0XHRcdGV4cGVjdChoZWFkZXJBY3Rpb25zWzBdLnR5cGUpLnRvRXF1YWwoXCJEZWZhdWx0XCIpO1xuXHRcdFx0ZXhwZWN0KGhlYWRlckFjdGlvbnNbMF0ua2V5KS50b0VxdWFsKFwiaGVhZGVyMlwiKTtcblx0XHRcdGV4cGVjdChoZWFkZXJBY3Rpb25zWzBdLmVuYWJsZWQpLnRvRXF1YWwoXCJ7dWk+L2lzRWRpdGFibGV9XCIpO1xuXHRcdFx0ZXhwZWN0KGhlYWRlckFjdGlvbnNbMV0udHlwZSkudG9FcXVhbChcIkRlZmF1bHRcIik7XG5cdFx0XHRleHBlY3QoaGVhZGVyQWN0aW9uc1sxXS5rZXkpLnRvRXF1YWwoXCJjdXN0b21IZWFkZXJBY3Rpb25cIik7XG5cdFx0XHRleHBlY3QoaGVhZGVyQWN0aW9uc1sxXS5lbmFibGVkKS50b0VxdWFsKFwidHJ1ZVwiKTtcblx0XHR9XG5cdCk7XG5cdGl0KFxuXHRcdFwiI2NvbnZlcnRQYWdlIC0gd2lsbCBzZXQgdXNlU2VtYW50aWNSYW5nZVwiLFxuXHRcdHtcblx0XHRcdFwicmVmZXJlbmNlc1wiOiBbeyBcInR5cGVcIjogXCJCQ1BcIiwgXCJJRFwiOiBcIjIxODAwNzEyODRcIiB9XVxuXHRcdH0sXG5cdFx0ZnVuY3Rpb24oKSB7XG5cdFx0XHRsZXQgY29udmVydGVyQ29udGV4dCA9IGdldENvbnZlcnRlckNvbnRleHRGb3JUZXN0KGNvbnZlcnRlZFR5cGVzLCB7XG5cdFx0XHRcdGNvbnZlcnRlclR5cGU6IFRlbXBsYXRlVHlwZS5MaXN0UmVwb3J0LFxuXHRcdFx0XHRlbnRpdHlTZXQ6IFwiRHJhZnRFbnRpdHlcIlxuXHRcdFx0fSk7XG5cdFx0XHRsZXQgY29udmVydGVkUGFnZSA9IGNvbnZlcnRQYWdlKGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2UudXNlU2VtYW50aWNEYXRlUmFuZ2UpLnRvRXF1YWwodHJ1ZSk7XG5cdFx0XHRjb252ZXJ0ZXJDb250ZXh0ID0gZ2V0Q29udmVydGVyQ29udGV4dEZvclRlc3QoY29udmVydGVkVHlwZXMsIHtcblx0XHRcdFx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQsXG5cdFx0XHRcdGVudGl0eVNldDogXCJEcmFmdEVudGl0eVwiLFxuXHRcdFx0XHRjb250cm9sQ29uZmlndXJhdGlvbjoge1xuXHRcdFx0XHRcdFwiQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLlNlbGVjdGlvbkZpZWxkc1wiOiB7XG5cdFx0XHRcdFx0XHR1c2VTZW1hbnRpY0RhdGVSYW5nZTogZmFsc2Vcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdFx0Y29udmVydGVkUGFnZSA9IGNvbnZlcnRQYWdlKGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2UudXNlU2VtYW50aWNEYXRlUmFuZ2UpLnRvRXF1YWwoZmFsc2UpO1xuXHRcdH1cblx0KTtcblx0aXQoXCIjY29udmVydFBhZ2UgLSB3aWxsIHNldCBzaG93UGlubmFibGVUb2dnbGUgdG8gdHJ1ZSB3aGVuIHRoZSBMUiB0YWJsZSBpcyByZXNwb25zaXZlXCIsIGZ1bmN0aW9uKCkge1xuXHRcdGNvbnN0IGNvbnZlcnRlckNvbnRleHQgPSBnZXRDb252ZXJ0ZXJDb250ZXh0Rm9yVGVzdChjb252ZXJ0ZWRUeXBlcywge1xuXHRcdFx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQsXG5cdFx0XHRlbnRpdHlTZXQ6IFwiRHJhZnRFbnRpdHlcIixcblx0XHRcdGNvbnRyb2xDb25maWd1cmF0aW9uOiB7XG5cdFx0XHRcdFwiQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkxpbmVJdGVtXCI6IHtcblx0XHRcdFx0XHRcInRhYmxlU2V0dGluZ3NcIjoge1xuXHRcdFx0XHRcdFx0XCJ0eXBlXCI6IFwiUmVzcG9uc2l2ZVRhYmxlXCJcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9KTtcblx0XHRjb25zdCBjb252ZXJ0ZWRQYWdlID0gY29udmVydFBhZ2UoY29udmVydGVyQ29udGV4dCk7XG5cdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2Uuc2hvd1Bpbm5hYmxlVG9nZ2xlKS50b0VxdWFsKHRydWUpO1xuXHR9KTtcblxuXHRpdChcIiNjb252ZXJ0UGFnZSAtIHdpbGwgc2V0IHNob3dQaW5uYWJsZVRvZ2dsZSB0byBmYWxzZSB3aGVuIHRoZSBMUiB0YWJsZSBpcyBncmlkXCIsIGZ1bmN0aW9uKCkge1xuXHRcdGNvbnN0IGNvbnZlcnRlckNvbnRleHQgPSBnZXRDb252ZXJ0ZXJDb250ZXh0Rm9yVGVzdChjb252ZXJ0ZWRUeXBlcywge1xuXHRcdFx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQsXG5cdFx0XHRlbnRpdHlTZXQ6IFwiRHJhZnRFbnRpdHlcIixcblx0XHRcdGNvbnRyb2xDb25maWd1cmF0aW9uOiB7XG5cdFx0XHRcdFwiQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkxpbmVJdGVtXCI6IHtcblx0XHRcdFx0XHRcInRhYmxlU2V0dGluZ3NcIjoge1xuXHRcdFx0XHRcdFx0XCJ0eXBlXCI6IFwiR3JpZFRhYmxlXCJcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9KTtcblx0XHRjb25zdCBjb252ZXJ0ZWRQYWdlID0gY29udmVydFBhZ2UoY29udmVydGVyQ29udGV4dCk7XG5cdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2Uuc2hvd1Bpbm5hYmxlVG9nZ2xlKS50b0VxdWFsKGZhbHNlKTtcblx0fSk7XG5cdGl0KFwiI2NvbnZlcnRQYWdlIC0gd2lsbCBzZXQgc2hvd1Bpbm5hYmxlVG9nZ2xlIHRvIGZhbHNlIHdoZW4gdGhlIExSIHRhYmxlIGlzIGFuYWx5dGljYWxcIiwgZnVuY3Rpb24oKSB7XG5cdFx0Y29uc3QgY29udmVydGVyQ29udGV4dCA9IGdldENvbnZlcnRlckNvbnRleHRGb3JUZXN0KGNvbnZlcnRlZFR5cGVzQW5hbHl0aWNhbFNlcnZpY2UsIHtcblx0XHRcdGNvbnZlcnRlclR5cGU6IFRlbXBsYXRlVHlwZS5MaXN0UmVwb3J0LFxuXHRcdFx0ZW50aXR5U2V0OiBcIlRlc3RFbnRpdHlcIixcblx0XHRcdGNvbnRyb2xDb25maWd1cmF0aW9uOiB7XG5cdFx0XHRcdFwiQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkxpbmVJdGVtXCI6IHtcblx0XHRcdFx0XHRcInRhYmxlU2V0dGluZ3NcIjoge1xuXHRcdFx0XHRcdFx0XCJ0eXBlXCI6IFwiQW5hbHl0aWNhbFRhYmxlXCJcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9KTtcblx0XHRjb25zdCBjb252ZXJ0ZWRQYWdlID0gY29udmVydFBhZ2UoY29udmVydGVyQ29udGV4dCk7XG5cdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2Uuc2hvd1Bpbm5hYmxlVG9nZ2xlKS50b0VxdWFsKGZhbHNlKTtcblx0fSk7XG5cblx0aXQoXG5cdFx0XCIjY29udmVydFBhZ2UgLSBjaGVjayB2aWV3cyAoY3VzdG9tIGFuZCBiYXNlZCBvbiBhbm5vdGF0aW9ucylcIixcblx0XHR7XG5cdFx0XHRcInJlZmVyZW5jZXNcIjogW3sgXCJ0eXBlXCI6IFwiSklSQVwiLCBcIklEXCI6IFwiRklPUklURUNIUDEtMTk5MzVcIiB9XVxuXHRcdH0sXG5cdFx0ZnVuY3Rpb24oKSB7XG5cdFx0XHRjb25zdCBjb252ZXJ0ZXJDb250ZXh0ID0gZ2V0Q29udmVydGVyQ29udGV4dEZvclRlc3QoY29udmVydGVkVHlwZXMsIHtcblx0XHRcdFx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQsXG5cdFx0XHRcdGVudGl0eVNldDogXCJEcmFmdEVudGl0eVwiLFxuXHRcdFx0XHR2aWV3czoge1xuXHRcdFx0XHRcdFwicGF0aHNcIjogW1xuXHRcdFx0XHRcdFx0e1xuXHRcdFx0XHRcdFx0XHRcImtleVwiOiBcInRhYjFcIixcblx0XHRcdFx0XHRcdFx0XCJhbm5vdGF0aW9uUGF0aFwiOiBcImNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLlNlbGVjdGlvblByZXNlbnRhdGlvblZhcmlhbnQjQWxsXCJcblx0XHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRcdFwia2V5XCI6IFwidGFiMlwiLFxuXHRcdFx0XHRcdFx0XHRcImxhYmVsXCI6IFwiQ3VzdG9tIFZpZXdcIixcblx0XHRcdFx0XHRcdFx0XCJ0ZW1wbGF0ZVwiOiBcIkplc3QuY3VzdG9tLkN1c3RvbVZpZXdUYWJsZVwiXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XSxcblx0XHRcdFx0XHRcInNob3dDb3VudHNcIjogdHJ1ZVxuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHRcdGNvbnN0IGNvbnZlcnRlZFBhZ2UgPSBjb252ZXJ0UGFnZShjb252ZXJ0ZXJDb250ZXh0KTtcblx0XHRcdGV4cGVjdChjb252ZXJ0ZWRQYWdlLnZpZXdzLmxlbmd0aCkudG9FcXVhbCgyKTtcblx0XHRcdGV4cGVjdCgoY29udmVydGVkUGFnZS52aWV3c1swXSBhcyBTaW5nbGVUYWJsZVZpZXdEZWZpbml0aW9uKS50YWJsZUNvbnRyb2xJZCkudG9FcXVhbChcImZlOjp0YWJsZTo6dGFiMTo6TGluZUl0ZW1cIik7XG5cdFx0XHRleHBlY3QoY29udmVydGVkUGFnZS52aWV3c1swXS50aXRsZSkudG9FcXVhbChcIkFsbFwiKTtcblx0XHRcdGV4cGVjdCgoY29udmVydGVkUGFnZS52aWV3c1swXSBhcyBTaW5nbGVWaWV3RGVmaW5pdGlvbikuc2VsZWN0aW9uVmFyaWFudFBhdGgpLnRvRXF1YWwoXG5cdFx0XHRcdFwiY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuU2VsZWN0aW9uUHJlc2VudGF0aW9uVmFyaWFudCNBbGwvU2VsZWN0aW9uVmFyaWFudFwiXG5cdFx0XHQpO1xuXHRcdFx0Ly8gb3RoZXIgY2hlY2tzIG9uIHZpZXdzIGZyb20gYW5ub3RhdGlvbnMgYXJlIGNvbXBsZXRlZCBvbiB0aGUgdGVtcGxhdGUgY29udmVydGVyIHF1bml0IHRlc3RzLlxuXHRcdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2Uudmlld3NbMV0udGl0bGUpLnRvRXF1YWwoXCJDdXN0b20gVmlld1wiKTtcblx0XHRcdGV4cGVjdCgoY29udmVydGVkUGFnZS52aWV3c1sxXSBhcyBDdXN0b21WaWV3RGVmaW5pdGlvbikudHlwZSkudG9FcXVhbChcIkN1c3RvbVwiKTtcblx0XHRcdGV4cGVjdCgoY29udmVydGVkUGFnZS52aWV3c1sxXSBhcyBDdXN0b21WaWV3RGVmaW5pdGlvbikuY3VzdG9tVGFiSWQpLnRvRXF1YWwoXCJmZTo6Q3VzdG9tVGFiOjp0YWIyXCIpO1xuXHRcdFx0ZXhwZWN0KChjb252ZXJ0ZWRQYWdlLnZpZXdzWzFdIGFzIEN1c3RvbVZpZXdEZWZpbml0aW9uKS5mcmFnbWVudCkudG9FcXVhbChcIkplc3QuY3VzdG9tLkN1c3RvbVZpZXdUYWJsZVwiKTtcblx0XHRcdGV4cGVjdChjb252ZXJ0ZWRQYWdlLmhhc011bHRpVmlzdWFsaXphdGlvbnMpLnRvRXF1YWwoZmFsc2UpO1xuXHRcdH1cblx0KTtcblx0aXQoXCIjZ2V0U2VsZWN0aW9uRmllbGRzXCIsIGZ1bmN0aW9uKCkge1xuXHRcdGNvbnN0IGNvbnZlcnRlckNvbnRleHQgPSBnZXRDb252ZXJ0ZXJDb250ZXh0Rm9yVGVzdChjb252ZXJ0ZWRUeXBlcywge1xuXHRcdFx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQsXG5cdFx0XHRlbnRpdHlTZXQ6IFwiRHJhZnRFbnRpdHlcIlxuXHRcdH0pO1xuXHRcdGNvbnN0IHNlbGVjdGlvbkZpZWxkcyA9IGdldFNlbGVjdGlvbkZpZWxkcyhjb252ZXJ0ZXJDb250ZXh0KTtcblx0XHRleHBlY3Qoc2VsZWN0aW9uRmllbGRzLmxlbmd0aCkudG9FcXVhbCg2KTtcblx0XHRleHBlY3Qoc2VsZWN0aW9uRmllbGRzWzBdLmtleSkudG9FcXVhbChcIlByb3AxXCIpO1xuXHRcdGV4cGVjdChzZWxlY3Rpb25GaWVsZHNbNV0ua2V5KS50b0VxdWFsKFwiUHJvcDRcIik7XG5cdFx0ZXhwZWN0KHNlbGVjdGlvbkZpZWxkc1s1XS5hdmFpbGFiaWxpdHkpLnRvRXF1YWwoXCJBZGFwdGF0aW9uXCIpO1xuXHR9KTtcblxuXHRpdChcblx0XHRcIiNnZXRTZWxlY3Rpb25GaWVsZHMgLSBjYW4gYmUgdXNlZCB0byBkZWZpbmUgZGF0ZVJhbmdlU2V0dGluZ3NcIixcblx0XHR7XG5cdFx0XHRcInJlZmVyZW5jZXNcIjogW3sgXCJ0eXBlXCI6IFwiQkNQXCIsIFwiSURcIjogXCIyMTgwMDcxMjg0XCIgfV1cblx0XHR9LFxuXHRcdGZ1bmN0aW9uKCkge1xuXHRcdFx0Y29uc3QgY29udmVydGVyQ29udGV4dCA9IGdldENvbnZlcnRlckNvbnRleHRGb3JUZXN0KGNvbnZlcnRlZFR5cGVzLCB7XG5cdFx0XHRcdGNvbnZlcnRlclR5cGU6IFRlbXBsYXRlVHlwZS5MaXN0UmVwb3J0LFxuXHRcdFx0XHRlbnRpdHlTZXQ6IFwiRHJhZnRFbnRpdHlcIixcblx0XHRcdFx0Y29udHJvbENvbmZpZ3VyYXRpb246IHtcblx0XHRcdFx0XHRcIkBjb20uc2FwLnZvY2FidWxhcmllcy5VSS52MS5TZWxlY3Rpb25GaWVsZHNcIjoge1xuXHRcdFx0XHRcdFx0XCJ1c2VTZW1hbnRpY0RhdGVSYW5nZVwiOiB0cnVlLFxuXHRcdFx0XHRcdFx0XCJmaWx0ZXJGaWVsZHNcIjoge1xuXHRcdFx0XHRcdFx0XHRcIkRhdGVQcm9wXCI6IHtcblx0XHRcdFx0XHRcdFx0XHRcInNldHRpbmdzXCI6IHtcblx0XHRcdFx0XHRcdFx0XHRcdFwib3BlcmF0b3JDb25maWd1cmF0aW9uXCI6IFtcblx0XHRcdFx0XHRcdFx0XHRcdFx0e1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFwicGF0aFwiOiBcImtleVwiLFxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFwiZXF1YWxzXCI6IFwiVE9EQVksTEFTVFlFQVIsTkVYVFlFQVJcIixcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcImV4Y2x1ZGVcIjogdHJ1ZVxuXHRcdFx0XHRcdFx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdFx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XCJwYXRoXCI6IFwiY2F0ZWdvcnlcIixcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcImNvbnRhaW5zXCI6IFwiTU9OVEhcIixcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcImV4Y2x1ZGVcIjogdHJ1ZVxuXHRcdFx0XHRcdFx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdFx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XCJwYXRoXCI6IFwia2V5XCIsXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XCJjb250YWluc1wiOiBcIlFVQVJURVJcIixcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcImV4Y2x1ZGVcIjogdHJ1ZVxuXHRcdFx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0XHRdXG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHRcdGNvbnN0IHNlbGVjdGlvbkZpZWxkcyA9IGdldFNlbGVjdGlvbkZpZWxkcyhjb252ZXJ0ZXJDb250ZXh0KTtcblx0XHRcdGV4cGVjdChzZWxlY3Rpb25GaWVsZHMubGVuZ3RoKS50b0VxdWFsKDYpO1xuXHRcdFx0ZXhwZWN0KHNlbGVjdGlvbkZpZWxkc1syXS5rZXkpLnRvRXF1YWwoXCJEYXRlUHJvcFwiKTtcblx0XHRcdGV4cGVjdChzZWxlY3Rpb25GaWVsZHNbMl0uc2V0dGluZ3MpLnRvRXF1YWwoe1xuXHRcdFx0XHRcIm9wZXJhdG9yQ29uZmlndXJhdGlvblwiOiBbXG5cdFx0XHRcdFx0eyBcInBhdGhcIjogXCJrZXlcIiwgXCJlcXVhbHNcIjogXCJUT0RBWSxMQVNUWUVBUixORVhUWUVBUlwiLCBcImV4Y2x1ZGVcIjogdHJ1ZSB9LFxuXHRcdFx0XHRcdHsgXCJwYXRoXCI6IFwiY2F0ZWdvcnlcIiwgXCJjb250YWluc1wiOiBcIk1PTlRIXCIsIFwiZXhjbHVkZVwiOiB0cnVlIH0sXG5cdFx0XHRcdFx0eyBcInBhdGhcIjogXCJrZXlcIiwgXCJjb250YWluc1wiOiBcIlFVQVJURVJcIiwgXCJleGNsdWRlXCI6IHRydWUgfVxuXHRcdFx0XHRdXG5cdFx0XHR9KTtcblx0XHR9XG5cdCk7XG59KTtcbiJdfQ==
|
|
496
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxpc3RSZXBvcnRDb252ZXJ0ZXIuc3BlYy50cyJdLCJuYW1lcyI6WyJkZXNjcmliZSIsImNvbnZlcnRlZFR5cGVzIiwiY29udmVydGVkVHlwZXNBbmFseXRpY2FsU2VydmljZSIsImJlZm9yZUFsbCIsInNNZXRhZGF0YVVybCIsImNvbXBpbGVDRFMiLCJwYXRoIiwiam9pbiIsIl9fZGlybmFtZSIsImdldE1ldGFNb2RlbCIsIm1ldGFNb2RlbCIsImNvbnZlcnRUeXBlcyIsIml0IiwiY29udmVydGVyQ29udGV4dCIsImdldENvbnZlcnRlckNvbnRleHRGb3JUZXN0IiwiY29udmVydGVyVHlwZSIsIlRlbXBsYXRlVHlwZSIsIkxpc3RSZXBvcnQiLCJlbnRpdHlTZXQiLCJoZWFkZXJBY3Rpb25zIiwiZ2V0SGVhZGVyQWN0aW9ucyIsImV4cGVjdCIsImxlbmd0aCIsInRvRXF1YWwiLCJjb250ZW50IiwiaGVhZGVyIiwiYWN0aW9ucyIsIlBsYWNlbWVudCIsIkFmdGVyIiwiQmVmb3JlIiwidHlwZSIsImtleSIsImVuYWJsZWQiLCJjb252ZXJ0ZWRQYWdlIiwiY29udmVydFBhZ2UiLCJ1c2VTZW1hbnRpY0RhdGVSYW5nZSIsImNvbnRyb2xDb25maWd1cmF0aW9uIiwic2hvd1Bpbm5hYmxlVG9nZ2xlIiwidmlld3MiLCJ0YWJsZUNvbnRyb2xJZCIsInRpdGxlIiwic2VsZWN0aW9uVmFyaWFudFBhdGgiLCJjdXN0b21UYWJJZCIsImZyYWdtZW50IiwiaGFzTXVsdGlWaXN1YWxpemF0aW9ucyIsInNlbGVjdGlvbkZpZWxkcyIsImdldFNlbGVjdGlvbkZpZWxkcyIsImF2YWlsYWJpbGl0eSIsInNldHRpbmdzIiwiZmlsdGVyQmFyIiwiaGlkZUJhc2ljU2VhcmNoIiwidG9IYXZlTGVuZ3RoIiwidmlzdWFsaXphdGlvbnMiLCJwcmVzZW50YXRpb24iLCJ0YWJsZVZpeiIsImVuYWJsZUFuYWx5dGljc1NlYXJjaCIsInVuZGVmaW5lZCIsInBhdGhzIiwiYW5ub3RhdGlvblBh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QjtBQUNoQixzQkFBUTtBQURRO0FBRGlDO0FBTjVCO0FBaEIyQyxPQUFqQixDQUFuRDtBQTZCQSxVQUFNekIsYUFBYSxHQUFHQyxXQUFXLENBQUNyQixnQkFBRCxDQUFqQztBQUNBUSxNQUFBQSxNQUFNLENBQUNZLGFBQWEsQ0FBQ2dCLFNBQWQsQ0FBd0JDLGVBQXpCLENBQU4sQ0FBZ0QzQixPQUFoRCxDQUF3RCxLQUF4RDtBQUVBRixNQUFBQSxNQUFNLENBQUNZLGFBQWEsQ0FBQ0ssS0FBZixDQUFOLENBQTRCYSxZQUE1QixDQUF5QyxDQUF6QztBQUNBLFVBQU1RLGVBQWUsR0FBSTFCLGFBQWEsQ0FBQ0ssS0FBZCxDQUFvQixDQUFwQixDQUFELENBQXFEZSxZQUFyRCxDQUFrRUQsY0FBMUY7QUFDQS9CLE1BQUFBLE1BQU0sQ0FBQ3NDLGVBQUQsQ0FBTixDQUF3QlIsWUFBeEIsQ0FBcUMsQ0FBckM7QUFDQSxVQUFNUyxTQUFTLEdBQUdELGVBQWUsQ0FBQyxDQUFELENBQWpDO0FBQ0F0QyxNQUFBQSxNQUFNLENBQUN1QyxTQUFTLENBQUNMLHFCQUFYLENBQU4sQ0FBd0NoQyxPQUF4QyxDQUFnRCxLQUFoRDtBQUVBLFVBQU1zQyxlQUFlLEdBQUk1QixhQUFhLENBQUNLLEtBQWQsQ0FBb0IsQ0FBcEIsQ0FBRCxDQUFxRGUsWUFBckQsQ0FBa0VELGNBQTFGO0FBQ0EvQixNQUFBQSxNQUFNLENBQUN3QyxlQUFELENBQU4sQ0FBd0JWLFlBQXhCLENBQXFDLENBQXJDO0FBQ0EsVUFBTVcsU0FBUyxHQUFHRCxlQUFlLENBQUMsQ0FBRCxDQUFqQztBQUNBeEMsTUFBQUEsTUFBTSxDQUFDeUMsU0FBUyxDQUFDUCxxQkFBWCxDQUFOLENBQXdDaEMsT0FBeEMsQ0FBZ0RpQyxTQUFoRCxFQTFDVSxDQTBDa0Q7QUFDNUQsS0FyREEsQ0FBRjtBQXVEQSxHQXBVTyxDQUFSIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb252ZXJ0ZXJPdXRwdXQgfSBmcm9tIFwiQHNhcC11eC9hbm5vdGF0aW9uLWNvbnZlcnRlclwiO1xuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IGNvbnZlcnRUeXBlcyB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01ldGFNb2RlbENvbnZlcnRlclwiO1xuaW1wb3J0IHsgVGVtcGxhdGVUeXBlIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvTWFuaWZlc3RTZXR0aW5nc1wiO1xuaW1wb3J0IHsgUGxhY2VtZW50IH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvaGVscGVycy9Db25maWd1cmFibGVPYmplY3RcIjtcbmltcG9ydCB7IGNvbXBpbGVDRFMsIGdldENvbnZlcnRlckNvbnRleHRGb3JUZXN0LCBnZXRNZXRhTW9kZWwgfSBmcm9tIFwic2FwL2ZlL3Rlc3QvSmVzdFRlbXBsYXRpbmdIZWxwZXJcIjtcbmltcG9ydCB7XG5cdGNvbnZlcnRQYWdlLFxuXHRDdXN0b21WaWV3RGVmaW5pdGlvbixcblx0Z2V0SGVhZGVyQWN0aW9ucyxcblx0U2luZ2xlVmlld0RlZmluaXRpb24sXG5cdFNpbmdsZVRhYmxlVmlld0RlZmluaXRpb24sXG5cdEJhc2VTaW5nbGVWaWV3RGVmaW5pdGlvblxufSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy90ZW1wbGF0ZXMvTGlzdFJlcG9ydENvbnZlcnRlclwiO1xuaW1wb3J0IHsgZ2V0U2VsZWN0aW9uRmllbGRzIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvY29udHJvbHMvTGlzdFJlcG9ydC9GaWx0ZXJCYXJcIjtcbmltcG9ydCB7IFRhYmxlVmlzdWFsaXphdGlvbiB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL2NvbnRyb2xzL0NvbW1vbi9UYWJsZVwiO1xuXG5kZXNjcmliZShcIkxpc3RSZXBvcnRDb252ZXJ0ZXJcIiwgZnVuY3Rpb24oKSB7XG5cdGxldCBjb252ZXJ0ZWRUeXBlczogQ29udmVydGVyT3V0cHV0O1xuXHRsZXQgY29udmVydGVkVHlwZXNBbmFseXRpY2FsU2VydmljZTogQ29udmVydGVyT3V0cHV0O1xuXG5cdGJlZm9yZUFsbChhc3luYyBmdW5jdGlvbigpIHtcblx0XHRjb25zdCBzTWV0YWRhdGFVcmwgPSBjb21waWxlQ0RTKHBhdGguam9pbihfX2Rpcm5hbWUsIFwiLi4vZGF0YS9MaXN0UmVwb3J0Q29udmVydGVyLmNkc1wiKSk7XG5cdFx0Y29uc3QgbWV0YU1vZGVsID0gYXdhaXQgZ2V0TWV0YU1vZGVsKHNNZXRhZGF0YVVybCk7XG5cdFx0Y29udmVydGVkVHlwZXMgPSBjb252ZXJ0VHlwZXMobWV0YU1vZGVsKTtcblx0fSk7XG5cblx0aXQoXCIjZ2V0SGVhZGVyQWN0aW9ucyAtIGNhbiByZXRyaWV2ZSB0aGUgaGVhZGVyIGFjdGlvbnNcIiwgZnVuY3Rpb24oKSB7XG5cdFx0Y29uc3QgY29udmVydGVyQ29udGV4dCA9IGdldENvbnZlcnRlckNvbnRleHRGb3JUZXN0KGNvbnZlcnRlZFR5cGVzLCB7XG5cdFx0XHRjb252ZXJ0ZXJUeXBlOiBUZW1wbGF0ZVR5cGUuTGlzdFJlcG9ydCxcblx0XHRcdGVudGl0eVNldDogXCJEcmFmdEVudGl0eVwiXG5cdFx0fSk7XG5cdFx0Y29uc3QgaGVhZGVyQWN0aW9ucyA9IGdldEhlYWRlckFjdGlvbnMoY29udmVydGVyQ29udGV4dCk7XG5cdFx0ZXhwZWN0KGhlYWRlckFjdGlvbnMubGVuZ3RoKS50b0VxdWFsKDApO1xuXHR9KTtcblx0aXQoXG5cdFx0XCIjZ2V0SGVhZGVyQWN0aW9ucyAtIGNhbiBhZGQgY3VzdG9tIGFjdGlvbnNcIixcblx0XHR7XG5cdFx0XHRcInJlZmVyZW5jZXNcIjogW1xuXHRcdFx0XHR7IFwidHlwZVwiOiBcIkJDUFwiLCBcIklEXCI6IFwiMjE4MDA3MTI4NFwiIH0sXG5cdFx0XHRcdHsgXCJ0eXBlXCI6IFwiSklSQVwiLCBcIklEXCI6IFwiRklPUklURUNIUDEtMTY4MDhcIiB9XG5cdFx0XHRdXG5cdFx0fSxcblx0XHRmdW5jdGlvbigpIHtcblx0XHRcdGNvbnN0IGNvbnZlcnRlckNvbnRleHQgPSBnZXRDb252ZXJ0ZXJDb250ZXh0Rm9yVGVzdChjb252ZXJ0ZWRUeXBlcywge1xuXHRcdFx0XHRjb252ZXJ0ZXJUeXBlOiBUZW1wbGF0ZVR5cGUuTGlzdFJlcG9ydCxcblx0XHRcdFx0ZW50aXR5U2V0OiBcIkRyYWZ0RW50aXR5XCIsXG5cdFx0XHRcdGNvbnRlbnQ6IHtcblx0XHRcdFx0XHRoZWFkZXI6IHtcblx0XHRcdFx0XHRcdGFjdGlvbnM6IHtcblx0XHRcdFx0XHRcdFx0XCJjdXN0b21IZWFkZXJBY3Rpb25cIjoge1xuXHRcdFx0XHRcdFx0XHRcdFwicHJlc3NcIjogXCJTYWxlc09yZGVyLmN1c3RvbS5DdXN0b21BY3Rpb25zLmFsZXJ0XCIsXG5cdFx0XHRcdFx0XHRcdFx0XCJ0ZXh0XCI6IFwiQWxlcnRcIixcblx0XHRcdFx0XHRcdFx0XHRcInBvc2l0aW9uXCI6IHtcblx0XHRcdFx0XHRcdFx0XHRcdFwicGxhY2VtZW50XCI6IFBsYWNlbWVudC5BZnRlcixcblx0XHRcdFx0XHRcdFx0XHRcdFwiYW5jaG9yXCI6IFwiaGVhZGVyMlwiXG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdFx0XHRcImhlYWRlcjJcIjoge1xuXHRcdFx0XHRcdFx0XHRcdFwicHJlc3NcIjogXCJTYWxlc09yZGVyLmN1c3RvbS5DdXN0b21BY3Rpb25zLmFjY291bnREZXRhaWxzXCIsXG5cdFx0XHRcdFx0XHRcdFx0XCJlbmFibGVkXCI6IFwie3VpPi9pc0VkaXRhYmxlfVwiLFxuXHRcdFx0XHRcdFx0XHRcdFwidGV4dFwiOiBcIkRpc3BsYXkgYWNjb3VudCBkZXRhaWxzXCIsXG5cdFx0XHRcdFx0XHRcdFx0XCJwb3NpdGlvblwiOiB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcInBsYWNlbWVudFwiOiBQbGFjZW1lbnQuQmVmb3JlXG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHRcdGNvbnN0IGhlYWRlckFjdGlvbnMgPSBnZXRIZWFkZXJBY3Rpb25zKGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdFx0ZXhwZWN0KGhlYWRlckFjdGlvbnMubGVuZ3RoKS50b0VxdWFsKDIpO1xuXHRcdFx0ZXhwZWN0KGhlYWRlckFjdGlvbnNbMF0udHlwZSkudG9FcXVhbChcIkRlZmF1bHRcIik7XG5cdFx0XHRleHBlY3QoaGVhZGVyQWN0aW9uc1swXS5rZXkpLnRvRXF1YWwoXCJoZWFkZXIyXCIpO1xuXHRcdFx0ZXhwZWN0KGhlYWRlckFjdGlvbnNbMF0uZW5hYmxlZCkudG9FcXVhbChcInt1aT4vaXNFZGl0YWJsZX1cIik7XG5cdFx0XHRleHBlY3QoaGVhZGVyQWN0aW9uc1sxXS50eXBlKS50b0VxdWFsKFwiRGVmYXVsdFwiKTtcblx0XHRcdGV4cGVjdChoZWFkZXJBY3Rpb25zWzFdLmtleSkudG9FcXVhbChcImN1c3RvbUhlYWRlckFjdGlvblwiKTtcblx0XHRcdGV4cGVjdChoZWFkZXJBY3Rpb25zWzFdLmVuYWJsZWQpLnRvRXF1YWwoXCJ0cnVlXCIpO1xuXHRcdH1cblx0KTtcblx0aXQoXG5cdFx0XCIjY29udmVydFBhZ2UgLSB3aWxsIHNldCB1c2VTZW1hbnRpY1JhbmdlXCIsXG5cdFx0e1xuXHRcdFx0XCJyZWZlcmVuY2VzXCI6IFt7IFwidHlwZVwiOiBcIkJDUFwiLCBcIklEXCI6IFwiMjE4MDA3MTI4NFwiIH1dXG5cdFx0fSxcblx0XHRmdW5jdGlvbigpIHtcblx0XHRcdGxldCBjb252ZXJ0ZXJDb250ZXh0ID0gZ2V0Q29udmVydGVyQ29udGV4dEZvclRlc3QoY29udmVydGVkVHlwZXMsIHtcblx0XHRcdFx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQsXG5cdFx0XHRcdGVudGl0eVNldDogXCJEcmFmdEVudGl0eVwiXG5cdFx0XHR9KTtcblx0XHRcdGxldCBjb252ZXJ0ZWRQYWdlID0gY29udmVydFBhZ2UoY29udmVydGVyQ29udGV4dCk7XG5cdFx0XHRleHBlY3QoY29udmVydGVkUGFnZS51c2VTZW1hbnRpY0RhdGVSYW5nZSkudG9FcXVhbCh0cnVlKTtcblx0XHRcdGNvbnZlcnRlckNvbnRleHQgPSBnZXRDb252ZXJ0ZXJDb250ZXh0Rm9yVGVzdChjb252ZXJ0ZWRUeXBlcywge1xuXHRcdFx0XHRjb252ZXJ0ZXJUeXBlOiBUZW1wbGF0ZVR5cGUuTGlzdFJlcG9ydCxcblx0XHRcdFx0ZW50aXR5U2V0OiBcIkRyYWZ0RW50aXR5XCIsXG5cdFx0XHRcdGNvbnRyb2xDb25maWd1cmF0aW9uOiB7XG5cdFx0XHRcdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuU2VsZWN0aW9uRmllbGRzXCI6IHtcblx0XHRcdFx0XHRcdHVzZVNlbWFudGljRGF0ZVJhbmdlOiBmYWxzZVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0XHRjb252ZXJ0ZWRQYWdlID0gY29udmVydFBhZ2UoY29udmVydGVyQ29udGV4dCk7XG5cdFx0XHRleHBlY3QoY29udmVydGVkUGFnZS51c2VTZW1hbnRpY0RhdGVSYW5nZSkudG9FcXVhbChmYWxzZSk7XG5cdFx0fVxuXHQpO1xuXHRpdChcIiNjb252ZXJ0UGFnZSAtIHdpbGwgc2V0IHNob3dQaW5uYWJsZVRvZ2dsZSB0byB0cnVlIHdoZW4gdGhlIExSIHRhYmxlIGlzIHJlc3BvbnNpdmVcIiwgZnVuY3Rpb24oKSB7XG5cdFx0Y29uc3QgY29udmVydGVyQ29udGV4dCA9IGdldENvbnZlcnRlckNvbnRleHRGb3JUZXN0KGNvbnZlcnRlZFR5cGVzLCB7XG5cdFx0XHRjb252ZXJ0ZXJUeXBlOiBUZW1wbGF0ZVR5cGUuTGlzdFJlcG9ydCxcblx0XHRcdGVudGl0eVNldDogXCJEcmFmdEVudGl0eVwiLFxuXHRcdFx0Y29udHJvbENvbmZpZ3VyYXRpb246IHtcblx0XHRcdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuTGluZUl0ZW1cIjoge1xuXHRcdFx0XHRcdFwidGFibGVTZXR0aW5nc1wiOiB7XG5cdFx0XHRcdFx0XHRcInR5cGVcIjogXCJSZXNwb25zaXZlVGFibGVcIlxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0pO1xuXHRcdGNvbnN0IGNvbnZlcnRlZFBhZ2UgPSBjb252ZXJ0UGFnZShjb252ZXJ0ZXJDb250ZXh0KTtcblx0XHRleHBlY3QoY29udmVydGVkUGFnZS5zaG93UGlubmFibGVUb2dnbGUpLnRvRXF1YWwodHJ1ZSk7XG5cdH0pO1xuXG5cdGl0KFwiI2NvbnZlcnRQYWdlIC0gd2lsbCBzZXQgc2hvd1Bpbm5hYmxlVG9nZ2xlIHRvIGZhbHNlIHdoZW4gdGhlIExSIHRhYmxlIGlzIGdyaWRcIiwgZnVuY3Rpb24oKSB7XG5cdFx0Y29uc3QgY29udmVydGVyQ29udGV4dCA9IGdldENvbnZlcnRlckNvbnRleHRGb3JUZXN0KGNvbnZlcnRlZFR5cGVzLCB7XG5cdFx0XHRjb252ZXJ0ZXJUeXBlOiBUZW1wbGF0ZVR5cGUuTGlzdFJlcG9ydCxcblx0XHRcdGVudGl0eVNldDogXCJEcmFmdEVudGl0eVwiLFxuXHRcdFx0Y29udHJvbENvbmZpZ3VyYXRpb246IHtcblx0XHRcdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuTGluZUl0ZW1cIjoge1xuXHRcdFx0XHRcdFwidGFibGVTZXR0aW5nc1wiOiB7XG5cdFx0XHRcdFx0XHRcInR5cGVcIjogXCJHcmlkVGFibGVcIlxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0pO1xuXHRcdGNvbnN0IGNvbnZlcnRlZFBhZ2UgPSBjb252ZXJ0UGFnZShjb252ZXJ0ZXJDb250ZXh0KTtcblx0XHRleHBlY3QoY29udmVydGVkUGFnZS5zaG93UGlubmFibGVUb2dnbGUpLnRvRXF1YWwoZmFsc2UpO1xuXHR9KTtcblxuXHRpdChcblx0XHRcIiNjb252ZXJ0UGFnZSAtIGNoZWNrIHZpZXdzIChjdXN0b20gYW5kIGJhc2VkIG9uIGFubm90YXRpb25zKVwiLFxuXHRcdHtcblx0XHRcdFwicmVmZXJlbmNlc1wiOiBbeyBcInR5cGVcIjogXCJKSVJBXCIsIFwiSURcIjogXCJGSU9SSVRFQ0hQMS0xOTkzNVwiIH1dXG5cdFx0fSxcblx0XHRmdW5jdGlvbigpIHtcblx0XHRcdGNvbnN0IGNvbnZlcnRlckNvbnRleHQgPSBnZXRDb252ZXJ0ZXJDb250ZXh0Rm9yVGVzdChjb252ZXJ0ZWRUeXBlcywge1xuXHRcdFx0XHRjb252ZXJ0ZXJUeXBlOiBUZW1wbGF0ZVR5cGUuTGlzdFJlcG9ydCxcblx0XHRcdFx0ZW50aXR5U2V0OiBcIkRyYWZ0RW50aXR5XCIsXG5cdFx0XHRcdHZpZXdzOiB7XG5cdFx0XHRcdFx0XCJwYXRoc1wiOiBbXG5cdFx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRcdFwia2V5XCI6IFwidGFiMVwiLFxuXHRcdFx0XHRcdFx0XHRcImFubm90YXRpb25QYXRoXCI6IFwiY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuU2VsZWN0aW9uUHJlc2VudGF0aW9uVmFyaWFudCNBbGxcIlxuXHRcdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdFx0XCJrZXlcIjogXCJ0YWIyXCIsXG5cdFx0XHRcdFx0XHRcdFwibGFiZWxcIjogXCJDdXN0b20gVmlld1wiLFxuXHRcdFx0XHRcdFx0XHRcInRlbXBsYXRlXCI6IFwiSmVzdC5jdXN0b20uQ3VzdG9tVmlld1RhYmxlXCJcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRdLFxuXHRcdFx0XHRcdFwic2hvd0NvdW50c1wiOiB0cnVlXG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdFx0Y29uc3QgY29udmVydGVkUGFnZSA9IGNvbnZlcnRQYWdlKGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2Uudmlld3MubGVuZ3RoKS50b0VxdWFsKDIpO1xuXHRcdFx0ZXhwZWN0KChjb252ZXJ0ZWRQYWdlLnZpZXdzWzBdIGFzIFNpbmdsZVRhYmxlVmlld0RlZmluaXRpb24pLnRhYmxlQ29udHJvbElkKS50b0VxdWFsKFwiZmU6OnRhYmxlOjp0YWIxOjpMaW5lSXRlbVwiKTtcblx0XHRcdGV4cGVjdChjb252ZXJ0ZWRQYWdlLnZpZXdzWzBdLnRpdGxlKS50b0VxdWFsKFwiQWxsXCIpO1xuXHRcdFx0ZXhwZWN0KChjb252ZXJ0ZWRQYWdlLnZpZXdzWzBdIGFzIFNpbmdsZVZpZXdEZWZpbml0aW9uKS5zZWxlY3Rpb25WYXJpYW50UGF0aCkudG9FcXVhbChcblx0XHRcdFx0XCJjb20uc2FwLnZvY2FidWxhcmllcy5VSS52MS5TZWxlY3Rpb25QcmVzZW50YXRpb25WYXJpYW50I0FsbC9TZWxlY3Rpb25WYXJpYW50XCJcblx0XHRcdCk7XG5cdFx0XHQvLyBvdGhlciBjaGVja3Mgb24gdmlld3MgZnJvbSBhbm5vdGF0aW9ucyBhcmUgY29tcGxldGVkIG9uIHRoZSB0ZW1wbGF0ZSBjb252ZXJ0ZXIgcXVuaXQgdGVzdHMuXG5cdFx0XHRleHBlY3QoY29udmVydGVkUGFnZS52aWV3c1sxXS50aXRsZSkudG9FcXVhbChcIkN1c3RvbSBWaWV3XCIpO1xuXHRcdFx0ZXhwZWN0KChjb252ZXJ0ZWRQYWdlLnZpZXdzWzFdIGFzIEN1c3RvbVZpZXdEZWZpbml0aW9uKS50eXBlKS50b0VxdWFsKFwiQ3VzdG9tXCIpO1xuXHRcdFx0ZXhwZWN0KChjb252ZXJ0ZWRQYWdlLnZpZXdzWzFdIGFzIEN1c3RvbVZpZXdEZWZpbml0aW9uKS5jdXN0b21UYWJJZCkudG9FcXVhbChcImZlOjpDdXN0b21UYWI6OnRhYjJcIik7XG5cdFx0XHRleHBlY3QoKGNvbnZlcnRlZFBhZ2Uudmlld3NbMV0gYXMgQ3VzdG9tVmlld0RlZmluaXRpb24pLmZyYWdtZW50KS50b0VxdWFsKFwiSmVzdC5jdXN0b20uQ3VzdG9tVmlld1RhYmxlXCIpO1xuXHRcdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2UuaGFzTXVsdGlWaXN1YWxpemF0aW9ucykudG9FcXVhbChmYWxzZSk7XG5cdFx0fVxuXHQpO1xuXHRpdChcIiNnZXRTZWxlY3Rpb25GaWVsZHNcIiwgZnVuY3Rpb24oKSB7XG5cdFx0Y29uc3QgY29udmVydGVyQ29udGV4dCA9IGdldENvbnZlcnRlckNvbnRleHRGb3JUZXN0KGNvbnZlcnRlZFR5cGVzLCB7XG5cdFx0XHRjb252ZXJ0ZXJUeXBlOiBUZW1wbGF0ZVR5cGUuTGlzdFJlcG9ydCxcblx0XHRcdGVudGl0eVNldDogXCJEcmFmdEVudGl0eVwiXG5cdFx0fSk7XG5cdFx0Y29uc3Qgc2VsZWN0aW9uRmllbGRzID0gZ2V0U2VsZWN0aW9uRmllbGRzKGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdGV4cGVjdChzZWxlY3Rpb25GaWVsZHMubGVuZ3RoKS50b0VxdWFsKDYpO1xuXHRcdGV4cGVjdChzZWxlY3Rpb25GaWVsZHNbMF0ua2V5KS50b0VxdWFsKFwiUHJvcDFcIik7XG5cdFx0ZXhwZWN0KHNlbGVjdGlvbkZpZWxkc1s1XS5rZXkpLnRvRXF1YWwoXCJQcm9wNFwiKTtcblx0XHRleHBlY3Qoc2VsZWN0aW9uRmllbGRzWzVdLmF2YWlsYWJpbGl0eSkudG9FcXVhbChcIkFkYXB0YXRpb25cIik7XG5cdH0pO1xuXG5cdGl0KFxuXHRcdFwiI2dldFNlbGVjdGlvbkZpZWxkcyAtIGNhbiBiZSB1c2VkIHRvIGRlZmluZSBkYXRlUmFuZ2VTZXR0aW5nc1wiLFxuXHRcdHtcblx0XHRcdFwicmVmZXJlbmNlc1wiOiBbeyBcInR5cGVcIjogXCJCQ1BcIiwgXCJJRFwiOiBcIjIxODAwNzEyODRcIiB9XVxuXHRcdH0sXG5cdFx0ZnVuY3Rpb24oKSB7XG5cdFx0XHRjb25zdCBjb252ZXJ0ZXJDb250ZXh0ID0gZ2V0Q29udmVydGVyQ29udGV4dEZvclRlc3QoY29udmVydGVkVHlwZXMsIHtcblx0XHRcdFx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQsXG5cdFx0XHRcdGVudGl0eVNldDogXCJEcmFmdEVudGl0eVwiLFxuXHRcdFx0XHRjb250cm9sQ29uZmlndXJhdGlvbjoge1xuXHRcdFx0XHRcdFwiQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLlNlbGVjdGlvbkZpZWxkc1wiOiB7XG5cdFx0XHRcdFx0XHRcInVzZVNlbWFudGljRGF0ZVJhbmdlXCI6IHRydWUsXG5cdFx0XHRcdFx0XHRcImZpbHRlckZpZWxkc1wiOiB7XG5cdFx0XHRcdFx0XHRcdFwiRGF0ZVByb3BcIjoge1xuXHRcdFx0XHRcdFx0XHRcdFwic2V0dGluZ3NcIjoge1xuXHRcdFx0XHRcdFx0XHRcdFx0XCJvcGVyYXRvckNvbmZpZ3VyYXRpb25cIjogW1xuXHRcdFx0XHRcdFx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XCJwYXRoXCI6IFwia2V5XCIsXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XCJlcXVhbHNcIjogXCJUT0RBWSxMQVNUWUVBUixORVhUWUVBUlwiLFxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFwiZXhjbHVkZVwiOiB0cnVlXG5cdFx0XHRcdFx0XHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0XHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcInBhdGhcIjogXCJjYXRlZ29yeVwiLFxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFwiY29udGFpbnNcIjogXCJNT05USFwiLFxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFwiZXhjbHVkZVwiOiB0cnVlXG5cdFx0XHRcdFx0XHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0XHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcInBhdGhcIjogXCJrZXlcIixcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcImNvbnRhaW5zXCI6IFwiUVVBUlRFUlwiLFxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFwiZXhjbHVkZVwiOiB0cnVlXG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdF1cblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdFx0Y29uc3Qgc2VsZWN0aW9uRmllbGRzID0gZ2V0U2VsZWN0aW9uRmllbGRzKGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdFx0ZXhwZWN0KHNlbGVjdGlvbkZpZWxkcy5sZW5ndGgpLnRvRXF1YWwoNik7XG5cdFx0XHRleHBlY3Qoc2VsZWN0aW9uRmllbGRzWzJdLmtleSkudG9FcXVhbChcIkRhdGVQcm9wXCIpO1xuXHRcdFx0ZXhwZWN0KHNlbGVjdGlvbkZpZWxkc1syXS5zZXR0aW5ncykudG9FcXVhbCh7XG5cdFx0XHRcdFwib3BlcmF0b3JDb25maWd1cmF0aW9uXCI6IFtcblx0XHRcdFx0XHR7IFwicGF0aFwiOiBcImtleVwiLCBcImVxdWFsc1wiOiBcIlRPREFZLExBU1RZRUFSLE5FWFRZRUFSXCIsIFwiZXhjbHVkZVwiOiB0cnVlIH0sXG5cdFx0XHRcdFx0eyBcInBhdGhcIjogXCJjYXRlZ29yeVwiLCBcImNvbnRhaW5zXCI6IFwiTU9OVEhcIiwgXCJleGNsdWRlXCI6IHRydWUgfSxcblx0XHRcdFx0XHR7IFwicGF0aFwiOiBcImtleVwiLCBcImNvbnRhaW5zXCI6IFwiUVVBUlRFUlwiLCBcImV4Y2x1ZGVcIjogdHJ1ZSB9XG5cdFx0XHRcdF1cblx0XHRcdH0pO1xuXHRcdH1cblx0KTtcbn0pO1xuXG5kZXNjcmliZShcIkxpc3RSZXBvcnRDb252ZXJ0ZXIgd2l0aCBhbmFseXRpY2FsIHNlcnZpY2VcIiwgZnVuY3Rpb24oKSB7XG5cdGxldCBjb252ZXJ0ZWRUeXBlczogQ29udmVydGVyT3V0cHV0O1xuXG5cdGJlZm9yZUFsbChhc3luYyBmdW5jdGlvbigpIHtcblx0XHRjb25zdCBzTWV0YWRhdGFVcmwgPSBjb21waWxlQ0RTKHBhdGguam9pbihfX2Rpcm5hbWUsIFwiLi4vZGF0YS9BbmFseXRpY2FsU2VydmljZS5jZHNcIikpO1xuXHRcdGNvbnN0IG1ldGFNb2RlbCA9IGF3YWl0IGdldE1ldGFNb2RlbChzTWV0YWRhdGFVcmwpO1xuXHRcdGNvbnZlcnRlZFR5cGVzID0gY29udmVydFR5cGVzKG1ldGFNb2RlbCk7XG5cdH0pO1xuXG5cdGl0KFwiI2NvbnZlcnRQYWdlIC0gd2lsbCBzZXQgc2hvd1Bpbm5hYmxlVG9nZ2xlIHRvIGZhbHNlIHdoZW4gdGhlIExSIHRhYmxlIGlzIGFuYWx5dGljYWxcIiwgZnVuY3Rpb24oKSB7XG5cdFx0Y29uc3QgY29udmVydGVyQ29udGV4dCA9IGdldENvbnZlcnRlckNvbnRleHRGb3JUZXN0KGNvbnZlcnRlZFR5cGVzLCB7XG5cdFx0XHRjb252ZXJ0ZXJUeXBlOiBUZW1wbGF0ZVR5cGUuTGlzdFJlcG9ydCxcblx0XHRcdGVudGl0eVNldDogXCJUZXN0RW50aXR5XCIsXG5cdFx0XHRjb250cm9sQ29uZmlndXJhdGlvbjoge1xuXHRcdFx0XHRcIkBjb20uc2FwLnZvY2FidWxhcmllcy5VSS52MS5MaW5lSXRlbVwiOiB7XG5cdFx0XHRcdFx0XCJ0YWJsZVNldHRpbmdzXCI6IHtcblx0XHRcdFx0XHRcdFwidHlwZVwiOiBcIkFuYWx5dGljYWxUYWJsZVwiXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSk7XG5cdFx0Y29uc3QgY29udmVydGVkUGFnZSA9IGNvbnZlcnRQYWdlKGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdGV4cGVjdChjb252ZXJ0ZWRQYWdlLnNob3dQaW5uYWJsZVRvZ2dsZSkudG9FcXVhbChmYWxzZSk7XG5cdH0pO1xuXG5cdGl0KFxuXHRcdFwiI2NvbnZlcnRQYWdlIC0gd2lsbCBzaG93IGJhc2ljIHNlYXJjaCB3aXRoIGFuYWx5dGljYWwgdGFibGUgd2hlbiB0aGVyZSBpcyBubyBsaXN0IG9mIGFsbG93ZWQgJGFwcGx5IHRyYW5zZm9ybWF0aW9uc1wiLFxuXHRcdHtcblx0XHRcdFwicmVmZXJlbmNlc1wiOiBbXG5cdFx0XHRcdHtcblx0XHRcdFx0XHRcInR5cGVcIjogXCJKSVJBXCIsXG5cdFx0XHRcdFx0XCJJRFwiOiBcIkZJT1JJVEVDSFAxLTE5Njg3XCJcblx0XHRcdFx0fVxuXHRcdFx0XVxuXHRcdH0sXG5cdFx0ZnVuY3Rpb24oKSB7XG5cdFx0XHRjb25zdCBjb252ZXJ0ZXJDb250ZXh0ID0gZ2V0Q29udmVydGVyQ29udGV4dEZvclRlc3QoY29udmVydGVkVHlwZXMsIHtcblx0XHRcdFx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQsXG5cdFx0XHRcdGVudGl0eVNldDogXCJUZXN0RW50aXR5XCIsXG5cdFx0XHRcdGNvbnRyb2xDb25maWd1cmF0aW9uOiB7XG5cdFx0XHRcdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuTGluZUl0ZW1cIjoge1xuXHRcdFx0XHRcdFx0XCJ0YWJsZVNldHRpbmdzXCI6IHtcblx0XHRcdFx0XHRcdFx0XCJ0eXBlXCI6IFwiQW5hbHl0aWNhbFRhYmxlXCJcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdFx0Y29uc3QgY29udmVydGVkUGFnZSA9IGNvbnZlcnRQYWdlKGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2UuZmlsdGVyQmFyLmhpZGVCYXNpY1NlYXJjaCkudG9FcXVhbChmYWxzZSk7XG5cblx0XHRcdGV4cGVjdChjb252ZXJ0ZWRQYWdlLnZpZXdzKS50b0hhdmVMZW5ndGgoMSk7XG5cdFx0XHRjb25zdCB2aXN1YWxpemF0aW9ucyA9IChjb252ZXJ0ZWRQYWdlLnZpZXdzWzBdIGFzIEJhc2VTaW5nbGVWaWV3RGVmaW5pdGlvbikucHJlc2VudGF0aW9uLnZpc3VhbGl6YXRpb25zO1xuXHRcdFx0ZXhwZWN0KHZpc3VhbGl6YXRpb25zKS50b0hhdmVMZW5ndGgoMSk7XG5cdFx0XHRjb25zdCB0YWJsZVZpeiA9IHZpc3VhbGl6YXRpb25zWzBdIGFzIFRhYmxlVmlzdWFsaXphdGlvbjtcblx0XHRcdGV4cGVjdCh0YWJsZVZpei5lbmFibGVBbmFseXRpY3NTZWFyY2gpLnRvRXF1YWwodHJ1ZSk7XG5cdFx0fVxuXHQpO1xuXG5cdGl0KFxuXHRcdFwiI2NvbnZlcnRQYWdlIC0gd2lsbCBzaG93IGJhc2ljIHNlYXJjaCB3aXRoIGFuYWx5dGljYWwgdGFibGUgd2hlbiBzZWFyY2ggaXMgYWxsb3dlZCBhcyBhbiAkYXBwbHkgdHJhbnNmb3JtYXRpb25zXCIsXG5cdFx0e1xuXHRcdFx0XCJyZWZlcmVuY2VzXCI6IFtcblx0XHRcdFx0e1xuXHRcdFx0XHRcdFwidHlwZVwiOiBcIkpJUkFcIixcblx0XHRcdFx0XHRcIklEXCI6IFwiRklPUklURUNIUDEtMTk2ODdcIlxuXHRcdFx0XHR9XG5cdFx0XHRdXG5cdFx0fSxcblx0XHRmdW5jdGlvbigpIHtcblx0XHRcdGNvbnN0IGNvbnZlcnRlckNvbnRleHQgPSBnZXRDb252ZXJ0ZXJDb250ZXh0Rm9yVGVzdChjb252ZXJ0ZWRUeXBlcywge1xuXHRcdFx0XHRjb252ZXJ0ZXJUeXBlOiBUZW1wbGF0ZVR5cGUuTGlzdFJlcG9ydCxcblx0XHRcdFx0ZW50aXR5U2V0OiBcIlRlc3RFbnRpdHkyXCIsXG5cdFx0XHRcdGNvbnRyb2xDb25maWd1cmF0aW9uOiB7XG5cdFx0XHRcdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuTGluZUl0ZW1cIjoge1xuXHRcdFx0XHRcdFx0XCJ0YWJsZVNldHRpbmdzXCI6IHtcblx0XHRcdFx0XHRcdFx0XCJ0eXBlXCI6IFwiQW5hbHl0aWNhbFRhYmxlXCJcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdFx0Y29uc3QgY29udmVydGVkUGFnZSA9IGNvbnZlcnRQYWdlKGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2UuZmlsdGVyQmFyLmhpZGVCYXNpY1NlYXJjaCkudG9FcXVhbChmYWxzZSk7XG5cblx0XHRcdGV4cGVjdChjb252ZXJ0ZWRQYWdlLnZpZXdzKS50b0hhdmVMZW5ndGgoMSk7XG5cdFx0XHRjb25zdCB2aXN1YWxpemF0aW9ucyA9IChjb252ZXJ0ZWRQYWdlLnZpZXdzWzBdIGFzIEJhc2VTaW5nbGVWaWV3RGVmaW5pdGlvbikucHJlc2VudGF0aW9uLnZpc3VhbGl6YXRpb25zO1xuXHRcdFx0ZXhwZWN0KHZpc3VhbGl6YXRpb25zKS50b0hhdmVMZW5ndGgoMSk7XG5cdFx0XHRjb25zdCB0YWJsZVZpeiA9IHZpc3VhbGl6YXRpb25zWzBdIGFzIFRhYmxlVmlzdWFsaXphdGlvbjtcblx0XHRcdGV4cGVjdCh0YWJsZVZpei5lbmFibGVBbmFseXRpY3NTZWFyY2gpLnRvRXF1YWwodHJ1ZSk7XG5cdFx0fVxuXHQpO1xuXG5cdGl0KFxuXHRcdFwiI2NvbnZlcnRQYWdlIC0gd2lsbCBub3Qgc2hvdyBiYXNpYyBzZWFyY2ggd2l0aCBhbmFseXRpY2FsIHRhYmxlIHdoZW4gc2VhcmNoIGlzIG5vdCBhbGxvd2VkIGFzIGFuICRhcHBseSB0cmFuc2Zvcm1hdGlvbnNcIixcblx0XHR7XG5cdFx0XHRcInJlZmVyZW5jZXNcIjogW1xuXHRcdFx0XHR7XG5cdFx0XHRcdFx0XCJ0eXBlXCI6IFwiSklSQVwiLFxuXHRcdFx0XHRcdFwiSURcIjogXCJGSU9SSVRFQ0hQMS0xOTY4N1wiXG5cdFx0XHRcdH1cblx0XHRcdF1cblx0XHR9LFxuXHRcdGZ1bmN0aW9uKCkge1xuXHRcdFx0Y29uc3QgY29udmVydGVyQ29udGV4dCA9IGdldENvbnZlcnRlckNvbnRleHRGb3JUZXN0KGNvbnZlcnRlZFR5cGVzLCB7XG5cdFx0XHRcdGNvbnZlcnRlclR5cGU6IFRlbXBsYXRlVHlwZS5MaXN0UmVwb3J0LFxuXHRcdFx0XHRlbnRpdHlTZXQ6IFwiVGVzdEVudGl0eTNcIixcblx0XHRcdFx0Y29udHJvbENvbmZpZ3VyYXRpb246IHtcblx0XHRcdFx0XHRcIkBjb20uc2FwLnZvY2FidWxhcmllcy5VSS52MS5MaW5lSXRlbVwiOiB7XG5cdFx0XHRcdFx0XHRcInRhYmxlU2V0dGluZ3NcIjoge1xuXHRcdFx0XHRcdFx0XHRcInR5cGVcIjogXCJBbmFseXRpY2FsVGFibGVcIlxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0XHRjb25zdCBjb252ZXJ0ZWRQYWdlID0gY29udmVydFBhZ2UoY29udmVydGVyQ29udGV4dCk7XG5cdFx0XHRleHBlY3QoY29udmVydGVkUGFnZS5maWx0ZXJCYXIuaGlkZUJhc2ljU2VhcmNoKS50b0VxdWFsKHRydWUpO1xuXG5cdFx0XHRleHBlY3QoY29udmVydGVkUGFnZS52aWV3cykudG9IYXZlTGVuZ3RoKDEpO1xuXHRcdFx0Y29uc3QgdmlzdWFsaXphdGlvbnMgPSAoY29udmVydGVkUGFnZS52aWV3c1swXSBhcyBCYXNlU2luZ2xlVmlld0RlZmluaXRpb24pLnByZXNlbnRhdGlvbi52aXN1YWxpemF0aW9ucztcblx0XHRcdGV4cGVjdCh2aXN1YWxpemF0aW9ucykudG9IYXZlTGVuZ3RoKDEpO1xuXHRcdFx0Y29uc3QgdGFibGVWaXogPSB2aXN1YWxpemF0aW9uc1swXSBhcyBUYWJsZVZpc3VhbGl6YXRpb247XG5cdFx0XHRleHBlY3QodGFibGVWaXouZW5hYmxlQW5hbHl0aWNzU2VhcmNoKS50b0VxdWFsKGZhbHNlKTtcblx0XHR9XG5cdCk7XG5cblx0aXQoXG5cdFx0XCIjY29udmVydFBhZ2UgLSB3aWxsIHNob3cgYmFzaWMgc2VhcmNoIHdpdGggZ3JpZCB0YWJsZSB3aGVuIHNlYXJjaCBpcyBub3QgYWxsb3dlZCBhcyBhbiAkYXBwbHkgdHJhbnNmb3JtYXRpb25zXCIsXG5cdFx0e1xuXHRcdFx0XCJyZWZlcmVuY2VzXCI6IFtcblx0XHRcdFx0e1xuXHRcdFx0XHRcdFwidHlwZVwiOiBcIkpJUkFcIixcblx0XHRcdFx0XHRcIklEXCI6IFwiRklPUklURUNIUDEtMTk2ODdcIlxuXHRcdFx0XHR9XG5cdFx0XHRdXG5cdFx0fSxcblx0XHRmdW5jdGlvbigpIHtcblx0XHRcdGNvbnN0IGNvbnZlcnRlckNvbnRleHQgPSBnZXRDb252ZXJ0ZXJDb250ZXh0Rm9yVGVzdChjb252ZXJ0ZWRUeXBlcywge1xuXHRcdFx0XHRjb252ZXJ0ZXJUeXBlOiBUZW1wbGF0ZVR5cGUuTGlzdFJlcG9ydCxcblx0XHRcdFx0ZW50aXR5U2V0OiBcIlRlc3RFbnRpdHkzXCIsXG5cdFx0XHRcdGNvbnRyb2xDb25maWd1cmF0aW9uOiB7XG5cdFx0XHRcdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuTGluZUl0ZW1cIjoge1xuXHRcdFx0XHRcdFx0XCJ0YWJsZVNldHRpbmdzXCI6IHtcblx0XHRcdFx0XHRcdFx0XCJ0eXBlXCI6IFwiR3JpZFRhYmxlXCJcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdFx0Y29uc3QgY29udmVydGVkUGFnZSA9IGNvbnZlcnRQYWdlKGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2UuZmlsdGVyQmFyLmhpZGVCYXNpY1NlYXJjaCkudG9FcXVhbChmYWxzZSk7XG5cblx0XHRcdGV4cGVjdChjb252ZXJ0ZWRQYWdlLnZpZXdzKS50b0hhdmVMZW5ndGgoMSk7XG5cdFx0XHRjb25zdCB2aXN1YWxpemF0aW9ucyA9IChjb252ZXJ0ZWRQYWdlLnZpZXdzWzBdIGFzIEJhc2VTaW5nbGVWaWV3RGVmaW5pdGlvbikucHJlc2VudGF0aW9uLnZpc3VhbGl6YXRpb25zO1xuXHRcdFx0ZXhwZWN0KHZpc3VhbGl6YXRpb25zKS50b0hhdmVMZW5ndGgoMSk7XG5cdFx0XHRjb25zdCB0YWJsZVZpeiA9IHZpc3VhbGl6YXRpb25zWzBdIGFzIFRhYmxlVmlzdWFsaXphdGlvbjtcblx0XHRcdGV4cGVjdCh0YWJsZVZpei5lbmFibGVBbmFseXRpY3NTZWFyY2gpLnRvRXF1YWwodW5kZWZpbmVkKTtcblx0XHR9XG5cdCk7XG5cblx0aXQoXG5cdFx0XCIjY29udmVydFBhZ2UgLSB3aWxsIHNob3cgYmFzaWMgc2VhcmNoIHdpdGggc2V2ZXJhbCBhbmFseXRpY2FsIHRhYmxlIHdoZW4gc2VhcmNoIGlzIGFsbG93ZWQgZm9yIGF0IGxlYXN0IG9uZVwiLFxuXHRcdHtcblx0XHRcdFwicmVmZXJlbmNlc1wiOiBbXG5cdFx0XHRcdHtcblx0XHRcdFx0XHRcInR5cGVcIjogXCJKSVJBXCIsXG5cdFx0XHRcdFx0XCJJRFwiOiBcIkZJT1JJVEVDSFAxLTE5Njg3XCJcblx0XHRcdFx0fVxuXHRcdFx0XVxuXHRcdH0sXG5cdFx0ZnVuY3Rpb24oKSB7XG5cdFx0XHRjb25zdCBjb252ZXJ0ZXJDb250ZXh0ID0gZ2V0Q29udmVydGVyQ29udGV4dEZvclRlc3QoY29udmVydGVkVHlwZXMsIHtcblx0XHRcdFx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQsXG5cdFx0XHRcdGVudGl0eVNldDogXCJUZXN0RW50aXR5XCIsXG5cdFx0XHRcdHZpZXdzOiB7XG5cdFx0XHRcdFx0cGF0aHM6IFtcblx0XHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdFx0a2V5OiBcInRhYjFcIixcblx0XHRcdFx0XHRcdFx0YW5ub3RhdGlvblBhdGg6IFwiY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuU2VsZWN0aW9uUHJlc2VudGF0aW9uVmFyaWFudCNmb3JFbnRpdHkxXCJcblx0XHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRcdGtleTogXCJ0YWIyXCIsXG5cdFx0XHRcdFx0XHRcdGVudGl0eVNldDogXCJUZXN0RW50aXR5M1wiLFxuXHRcdFx0XHRcdFx0XHRhbm5vdGF0aW9uUGF0aDogXCJjb20uc2FwLnZvY2FidWxhcmllcy5VSS52MS5TZWxlY3Rpb25QcmVzZW50YXRpb25WYXJpYW50I2ZvckVudGl0eTNcIlxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdF1cblx0XHRcdFx0fSxcblx0XHRcdFx0XCJjb250cm9sQ29uZmlndXJhdGlvblwiOiB7XG5cdFx0XHRcdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuTGluZUl0ZW0jZm9yRW50aXR5MVwiOiB7XG5cdFx0XHRcdFx0XHRcInRhYmxlU2V0dGluZ3NcIjoge1xuXHRcdFx0XHRcdFx0XHRcInR5cGVcIjogXCJBbmFseXRpY2FsVGFibGVcIlxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuTGluZUl0ZW0jZm9yRW50aXR5M1wiOiB7XG5cdFx0XHRcdFx0XHRcInRhYmxlU2V0dGluZ3NcIjoge1xuXHRcdFx0XHRcdFx0XHRcInR5cGVcIjogXCJBbmFseXRpY2FsVGFibGVcIlxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0XHRjb25zdCBjb252ZXJ0ZWRQYWdlID0gY29udmVydFBhZ2UoY29udmVydGVyQ29udGV4dCk7XG5cdFx0XHRleHBlY3QoY29udmVydGVkUGFnZS5maWx0ZXJCYXIuaGlkZUJhc2ljU2VhcmNoKS50b0VxdWFsKGZhbHNlKTtcblxuXHRcdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2Uudmlld3MpLnRvSGF2ZUxlbmd0aCgyKTtcblx0XHRcdGNvbnN0IHZpc3VhbGl6YXRpb25zMSA9IChjb252ZXJ0ZWRQYWdlLnZpZXdzWzBdIGFzIEJhc2VTaW5nbGVWaWV3RGVmaW5pdGlvbikucHJlc2VudGF0aW9uLnZpc3VhbGl6YXRpb25zO1xuXHRcdFx0ZXhwZWN0KHZpc3VhbGl6YXRpb25zMSkudG9IYXZlTGVuZ3RoKDEpO1xuXHRcdFx0Y29uc3QgdGFibGVWaXoxID0gdmlzdWFsaXphdGlvbnMxWzBdIGFzIFRhYmxlVmlzdWFsaXphdGlvbjtcblx0XHRcdGV4cGVjdCh0YWJsZVZpejEuZW5hYmxlQW5hbHl0aWNzU2VhcmNoKS50b0VxdWFsKHRydWUpO1xuXG5cdFx0XHRjb25zdCB2aXN1YWxpemF0aW9uczIgPSAoY29udmVydGVkUGFnZS52aWV3c1sxXSBhcyBCYXNlU2luZ2xlVmlld0RlZmluaXRpb24pLnByZXNlbnRhdGlvbi52aXN1YWxpemF0aW9ucztcblx0XHRcdGV4cGVjdCh2aXN1YWxpemF0aW9uczIpLnRvSGF2ZUxlbmd0aCgxKTtcblx0XHRcdGNvbnN0IHRhYmxlVml6MiA9IHZpc3VhbGl6YXRpb25zMlswXSBhcyBUYWJsZVZpc3VhbGl6YXRpb247XG5cdFx0XHRleHBlY3QodGFibGVWaXoyLmVuYWJsZUFuYWx5dGljc1NlYXJjaCkudG9FcXVhbChmYWxzZSk7IC8vIFRoZSBzZWNvbmQgdmlldyBkb2Vzbid0IGFsbG93IHNlYXJjaFxuXHRcdH1cblx0KTtcblxuXHRpdChcblx0XHRcIiNjb252ZXJ0UGFnZSAtIHdpbGwgbm90IHNob3cgYmFzaWMgc2VhcmNoIHdpdGggc2V2ZXJhbCBhbmFseXRpY2FsIHRhYmxlIHdoZW4gc2VhcmNoIGlzIG5vdCBhbGxvd2VkIGZvciBhbnkgb2YgdGhlbVwiLFxuXHRcdHtcblx0XHRcdFwicmVmZXJlbmNlc1wiOiBbXG5cdFx0XHRcdHtcblx0XHRcdFx0XHRcInR5cGVcIjogXCJKSVJBXCIsXG5cdFx0XHRcdFx0XCJJRFwiOiBcIkZJT1JJVEVDSFAxLTE5Njg3XCJcblx0XHRcdFx0fVxuXHRcdFx0XVxuXHRcdH0sXG5cdFx0ZnVuY3Rpb24oKSB7XG5cdFx0XHRjb25zdCBjb252ZXJ0ZXJDb250ZXh0ID0gZ2V0Q29udmVydGVyQ29udGV4dEZvclRlc3QoY29udmVydGVkVHlwZXMsIHtcblx0XHRcdFx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlLkxpc3RSZXBvcnQsXG5cdFx0XHRcdGVudGl0eVNldDogXCJUZXN0RW50aXR5NFwiLFxuXHRcdFx0XHR2aWV3czoge1xuXHRcdFx0XHRcdHBhdGhzOiBbXG5cdFx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRcdGtleTogXCJ0YWIxXCIsXG5cdFx0XHRcdFx0XHRcdGFubm90YXRpb25QYXRoOiBcImNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLlNlbGVjdGlvblByZXNlbnRhdGlvblZhcmlhbnQjZm9yRW50aXR5NFwiXG5cdFx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdFx0e1xuXHRcdFx0XHRcdFx0XHRrZXk6IFwidGFiMlwiLFxuXHRcdFx0XHRcdFx0XHRlbnRpdHlTZXQ6IFwiVGVzdEVudGl0eTNcIixcblx0XHRcdFx0XHRcdFx0YW5ub3RhdGlvblBhdGg6IFwiY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuU2VsZWN0aW9uUHJlc2VudGF0aW9uVmFyaWFudCNmb3JFbnRpdHkzXCJcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRdXG5cdFx0XHRcdH0sXG5cdFx0XHRcdFwiY29udHJvbENvbmZpZ3VyYXRpb25cIjoge1xuXHRcdFx0XHRcdFwiQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkxpbmVJdGVtI2ZvckVudGl0eTRcIjoge1xuXHRcdFx0XHRcdFx0XCJ0YWJsZVNldHRpbmdzXCI6IHtcblx0XHRcdFx0XHRcdFx0XCJ0eXBlXCI6IFwiQW5hbHl0aWNhbFRhYmxlXCJcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdFwiQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkxpbmVJdGVtI2ZvckVudGl0eTNcIjoge1xuXHRcdFx0XHRcdFx0XCJ0YWJsZVNldHRpbmdzXCI6IHtcblx0XHRcdFx0XHRcdFx0XCJ0eXBlXCI6IFwiQW5hbHl0aWNhbFRhYmxlXCJcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdFx0Y29uc3QgY29udmVydGVkUGFnZSA9IGNvbnZlcnRQYWdlKGNvbnZlcnRlckNvbnRleHQpO1xuXHRcdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2UuZmlsdGVyQmFyLmhpZGVCYXNpY1NlYXJjaCkudG9FcXVhbCh0cnVlKTtcblxuXHRcdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2Uudmlld3MpLnRvSGF2ZUxlbmd0aCgyKTtcblx0XHRcdGNvbnN0IHZpc3VhbGl6YXRpb25zMSA9IChjb252ZXJ0ZWRQYWdlLnZpZXdzWzBdIGFzIEJhc2VTaW5nbGVWaWV3RGVmaW5pdGlvbikucHJlc2VudGF0aW9uLnZpc3VhbGl6YXRpb25zO1xuXHRcdFx0ZXhwZWN0KHZpc3VhbGl6YXRpb25zMSkudG9IYXZlTGVuZ3RoKDEpO1xuXHRcdFx0Y29uc3QgdGFibGVWaXoxID0gdmlzdWFsaXphdGlvbnMxWzBdIGFzIFRhYmxlVmlzdWFsaXphdGlvbjtcblx0XHRcdGV4cGVjdCh0YWJsZVZpejEuZW5hYmxlQW5hbHl0aWNzU2VhcmNoKS50b0VxdWFsKGZhbHNlKTtcblxuXHRcdFx0Y29uc3QgdmlzdWFsaXphdGlvbnMyID0gKGNvbnZlcnRlZFBhZ2Uudmlld3NbMV0gYXMgQmFzZVNpbmdsZVZpZXdEZWZpbml0aW9uKS5wcmVzZW50YXRpb24udmlzdWFsaXphdGlvbnM7XG5cdFx0XHRleHBlY3QodmlzdWFsaXphdGlvbnMyKS50b0hhdmVMZW5ndGgoMSk7XG5cdFx0XHRjb25zdCB0YWJsZVZpejIgPSB2aXN1YWxpemF0aW9uczJbMF0gYXMgVGFibGVWaXN1YWxpemF0aW9uO1xuXHRcdFx0ZXhwZWN0KHRhYmxlVml6Mi5lbmFibGVBbmFseXRpY3NTZWFyY2gpLnRvRXF1YWwoZmFsc2UpO1xuXHRcdH1cblx0KTtcblxuXHRpdChcblx0XHRcIiNjb252ZXJ0UGFnZSAtIHdpbGwgYWx3YXlzIHNob3cgYmFzaWMgc2VhcmNoIHdpdGggc2V2ZXJhbCB0YWJsZXMgaWYgb25lIGlzIG5vdCBhbmFseXRpY2FsXCIsXG5cdFx0e1xuXHRcdFx0XCJyZWZlcmVuY2VzXCI6IFtcblx0XHRcdFx0e1xuXHRcdFx0XHRcdFwidHlwZVwiOiBcIkpJUkFcIixcblx0XHRcdFx0XHRcIklEXCI6IFwiRklPUklURUNIUDEtMTk2ODdcIlxuXHRcdFx0XHR9XG5cdFx0XHRdXG5cdFx0fSxcblx0XHRmdW5jdGlvbigpIHtcblx0XHRcdGNvbnN0IGNvbnZlcnRlckNvbnRleHQgPSBnZXRDb252ZXJ0ZXJDb250ZXh0Rm9yVGVzdChjb252ZXJ0ZWRUeXBlcywge1xuXHRcdFx0XHRjb252ZXJ0ZXJUeXBlOiBUZW1wbGF0ZVR5cGUuTGlzdFJlcG9ydCxcblx0XHRcdFx0ZW50aXR5U2V0OiBcIlRlc3RFbnRpdHk0XCIsXG5cdFx0XHRcdHZpZXdzOiB7XG5cdFx0XHRcdFx0cGF0aHM6IFtcblx0XHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdFx0a2V5OiBcInRhYjFcIixcblx0XHRcdFx0XHRcdFx0YW5ub3RhdGlvblBhdGg6IFwiY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuU2VsZWN0aW9uUHJlc2VudGF0aW9uVmFyaWFudCNmb3JFbnRpdHk0XCJcblx0XHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRcdGtleTogXCJ0YWIyXCIsXG5cdFx0XHRcdFx0XHRcdGVudGl0eVNldDogXCJUZXN0RW50aXR5M1wiLFxuXHRcdFx0XHRcdFx0XHRhbm5vdGF0aW9uUGF0aDogXCJjb20uc2FwLnZvY2FidWxhcmllcy5VSS52MS5TZWxlY3Rpb25QcmVzZW50YXRpb25WYXJpYW50I2ZvckVudGl0eTNcIlxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdF1cblx0XHRcdFx0fSxcblx0XHRcdFx0XCJjb250cm9sQ29uZmlndXJhdGlvblwiOiB7XG5cdFx0XHRcdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuTGluZUl0ZW0jZm9yRW50aXR5NFwiOiB7XG5cdFx0XHRcdFx0XHRcInRhYmxlU2V0dGluZ3NcIjoge1xuXHRcdFx0XHRcdFx0XHRcInR5cGVcIjogXCJBbmFseXRpY2FsVGFibGVcIlxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuTGluZUl0ZW0jZm9yRW50aXR5M1wiOiB7XG5cdFx0XHRcdFx0XHRcInRhYmxlU2V0dGluZ3NcIjoge1xuXHRcdFx0XHRcdFx0XHRcInR5cGVcIjogXCJSZXNwb25zaXZlVGFibGVcIlxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0XHRjb25zdCBjb252ZXJ0ZWRQYWdlID0gY29udmVydFBhZ2UoY29udmVydGVyQ29udGV4dCk7XG5cdFx0XHRleHBlY3QoY29udmVydGVkUGFnZS5maWx0ZXJCYXIuaGlkZUJhc2ljU2VhcmNoKS50b0VxdWFsKGZhbHNlKTtcblxuXHRcdFx0ZXhwZWN0KGNvbnZlcnRlZFBhZ2Uudmlld3MpLnRvSGF2ZUxlbmd0aCgyKTtcblx0XHRcdGNvbnN0IHZpc3VhbGl6YXRpb25zMSA9IChjb252ZXJ0ZWRQYWdlLnZpZXdzWzBdIGFzIEJhc2VTaW5nbGVWaWV3RGVmaW5pdGlvbikucHJlc2VudGF0aW9uLnZpc3VhbGl6YXRpb25zO1xuXHRcdFx0ZXhwZWN0KHZpc3VhbGl6YXRpb25zMSkudG9IYXZlTGVuZ3RoKDEpO1xuXHRcdFx0Y29uc3QgdGFibGVWaXoxID0gdmlzdWFsaXphdGlvbnMxWzBdIGFzIFRhYmxlVmlzdWFsaXphdGlvbjtcblx0XHRcdGV4cGVjdCh0YWJsZVZpejEuZW5hYmxlQW5hbHl0aWNzU2VhcmNoKS50b0VxdWFsKGZhbHNlKTtcblxuXHRcdFx0Y29uc3QgdmlzdWFsaXphdGlvbnMyID0gKGNvbnZlcnRlZFBhZ2Uudmlld3NbMV0gYXMgQmFzZVNpbmdsZVZpZXdEZWZpbml0aW9uKS5wcmVzZW50YXRpb24udmlzdWFsaXphdGlvbnM7XG5cdFx0XHRleHBlY3QodmlzdWFsaXphdGlvbnMyKS50b0hhdmVMZW5ndGgoMSk7XG5cdFx0XHRjb25zdCB0YWJsZVZpejIgPSB2aXN1YWxpemF0aW9uczJbMF0gYXMgVGFibGVWaXN1YWxpemF0aW9uO1xuXHRcdFx0ZXhwZWN0KHRhYmxlVml6Mi5lbmFibGVBbmFseXRpY3NTZWFyY2gpLnRvRXF1YWwodW5kZWZpbmVkKTsgLy8gU2VhcmNoIHdvcmtzIGZvciB0aGUgc2Vjb25kIHRhYmxlXG5cdFx0fVxuXHQpO1xufSk7XG4iXX0=
|