@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
|
@@ -3,13 +3,20 @@
|
|
|
3
3
|
(c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
4
|
|
|
5
5
|
*/
|
|
6
|
-
sap.ui.define(["sap/ui/core/Control", "sap/ui/base/ManagedObjectObserver"], function(
|
|
6
|
+
sap.ui.define(["sap/ui/core/Control", "sap/ui/base/ManagedObjectObserver", "sap/ui/core/TextAlign"], function(
|
|
7
|
+
Control,
|
|
8
|
+
ManagedObjectObserver,
|
|
9
|
+
TextAlign
|
|
10
|
+
) {
|
|
7
11
|
"use strict";
|
|
8
12
|
|
|
9
13
|
return Control.extend("sap.fe.core.controls.FieldWrapper", {
|
|
10
14
|
metadata: {
|
|
11
15
|
interfaces: ["sap.ui.core.IFormContent"],
|
|
12
16
|
properties: {
|
|
17
|
+
textAlign: {
|
|
18
|
+
type: "sap.ui.core.TextAlign"
|
|
19
|
+
},
|
|
13
20
|
width: {
|
|
14
21
|
type: "sap.ui.core.CSSSize",
|
|
15
22
|
defaultValue: null
|
|
@@ -92,9 +99,9 @@ sap.ui.define(["sap/ui/core/Control", "sap/ui/base/ManagedObjectObserver"], func
|
|
|
92
99
|
apiVersion: 2,
|
|
93
100
|
render: function(oRm, oControl) {
|
|
94
101
|
oRm.openStart("div", oControl);
|
|
102
|
+
oRm.style("text-align", oControl.getTextAlign());
|
|
95
103
|
if (oControl.getEditMode() === "Display") {
|
|
96
104
|
oRm.style("width", oControl.getWidth());
|
|
97
|
-
oRm.style("display", "inline-block");
|
|
98
105
|
oRm.openEnd();
|
|
99
106
|
var oContentDisplayControl = oControl.getContentDisplay();
|
|
100
107
|
// we only check empty trigger if the control doesnt display anything when there is no value
|
|
@@ -136,7 +143,6 @@ sap.ui.define(["sap/ui/core/Control", "sap/ui/base/ManagedObjectObserver"], func
|
|
|
136
143
|
// oRm.class("sapUiMdcFieldBaseMoreFields");
|
|
137
144
|
// }
|
|
138
145
|
oRm.style("width", oControl.getWidth());
|
|
139
|
-
oRm.style("display", "inline-block");
|
|
140
146
|
oRm.openEnd();
|
|
141
147
|
for (var i = 0; i < aContentEdit.length; i++) {
|
|
142
148
|
var oContent = aContentEdit[i]; // render the child Control for edit
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
(c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
4
|
|
|
5
5
|
*/
|
|
6
|
-
sap.ui.define(["sap/ui/core/Control","sap/ui/base/ManagedObjectObserver"],function(C,M){"use strict";return C.extend("sap.fe.core.controls.FieldWrapper",{metadata:{interfaces:["sap.ui.core.IFormContent"],properties:{width:{type:"sap.ui.core.CSSSize",defaultValue:null},formDoNotAdjustWidth:{type:"boolean",defaultValue:false},editMode:{type:"string",defaultValue:"Display"},emptyIndicatorTrigger:{type:"string",defaultValue:""},required:{type:"boolean",defaultValue:false}},associations:{ariaLabelledBy:{type:"sap.ui.core.Control",multiple:true,singularName:"ariaLabelledBy"}},defaultAggregation:"contentDisplay",aggregations:{contentDisplay:{type:"sap.ui.core.Control",multiple:false},contentEdit:{type:"sap.ui.core.Control",multiple:true}}},enhanceAccessibilityState:function(e,a){var p=this.getParent();if(p&&p.enhanceAccessibilityState){p.enhanceAccessibilityState(this,a);}return a;},getAccessibilityInfo:function(){var c;if(this.getEditMode()==="Display"){c=this.getContentDisplay();}else{c=this.getContentEdit().length?this.getContentEdit()[0]:null;}return c&&c.getAccessibilityInfo?c.getAccessibilityInfo():{};},_setAriaLabelledBy:function(c){if(c&&c.addAriaLabelledBy){var a=this.getAriaLabelledBy();for(var i=0;i<a.length;i++){var I=a[i];var A=c.getAriaLabelledBy()||[];if(A.indexOf(I)===-1){c.addAriaLabelledBy(I);}}}},onBeforeRendering:function(){this._setAriaLabelledBy(this.getContentDisplay());var c=this.getContentEdit();for(var i=0;i<c.length;i++){this._setAriaLabelledBy(c[i]);}},renderer:{apiVersion:2,render:function(r,c){r.openStart("div",c);if(c.getEditMode()==="Display"){r.style("width",c.getWidth());r.
|
|
6
|
+
sap.ui.define(["sap/ui/core/Control","sap/ui/base/ManagedObjectObserver","sap/ui/core/TextAlign"],function(C,M,T){"use strict";return C.extend("sap.fe.core.controls.FieldWrapper",{metadata:{interfaces:["sap.ui.core.IFormContent"],properties:{textAlign:{type:"sap.ui.core.TextAlign"},width:{type:"sap.ui.core.CSSSize",defaultValue:null},formDoNotAdjustWidth:{type:"boolean",defaultValue:false},editMode:{type:"string",defaultValue:"Display"},emptyIndicatorTrigger:{type:"string",defaultValue:""},required:{type:"boolean",defaultValue:false}},associations:{ariaLabelledBy:{type:"sap.ui.core.Control",multiple:true,singularName:"ariaLabelledBy"}},defaultAggregation:"contentDisplay",aggregations:{contentDisplay:{type:"sap.ui.core.Control",multiple:false},contentEdit:{type:"sap.ui.core.Control",multiple:true}}},enhanceAccessibilityState:function(e,a){var p=this.getParent();if(p&&p.enhanceAccessibilityState){p.enhanceAccessibilityState(this,a);}return a;},getAccessibilityInfo:function(){var c;if(this.getEditMode()==="Display"){c=this.getContentDisplay();}else{c=this.getContentEdit().length?this.getContentEdit()[0]:null;}return c&&c.getAccessibilityInfo?c.getAccessibilityInfo():{};},_setAriaLabelledBy:function(c){if(c&&c.addAriaLabelledBy){var a=this.getAriaLabelledBy();for(var i=0;i<a.length;i++){var I=a[i];var A=c.getAriaLabelledBy()||[];if(A.indexOf(I)===-1){c.addAriaLabelledBy(I);}}}},onBeforeRendering:function(){this._setAriaLabelledBy(this.getContentDisplay());var c=this.getContentEdit();for(var i=0;i<c.length;i++){this._setAriaLabelledBy(c[i]);}},renderer:{apiVersion:2,render:function(r,c){r.openStart("div",c);r.style("text-align",c.getTextAlign());if(c.getEditMode()==="Display"){r.style("width",c.getWidth());r.openEnd();var o=c.getContentDisplay();var h=["sap.m.ObjectStatus","sap.m.RatingIndicator","sap.m.ProgressIndicator","sap.fe.core.controls.FormElementWrapper"];var b=h.every(function(B){return!o.isA(B);});if(b&&o&&!c.getEmptyIndicatorTrigger()){var R=sap.ui.getCore().getLibraryResourceBundle("sap.fe.core");r.openStart("span");r.class("sapUiPseudoInvisibleText");r.openEnd();r.text(R.getText("T_FIELDWRAPPER_NO_VALUE"));r.close("span");r.openStart("span");r.attr("aria-hidden","true");r.attr("emptyindicator",R.getText("T_FIELDWRAPPER_EMPTY_INDICATOR"));r.class("sapMText");r.class("sapUiSelectable");r.class("sapMTextMaxWidth");r.class("sapUiMdcFieldBaseEmpty");r.openEnd();r.close("span");}else{r.renderControl(c.getContentDisplay());}}else{var a=c.getContentEdit();r.style("width",c.getWidth());r.openEnd();for(var i=0;i<a.length;i++){var d=a[i];r.renderControl(d);}}r.close("div");}}});});
|
|
@@ -33,11 +33,6 @@ sap.ui.define(["sap/ui/core/Control", "sap/ui/Device"], function(Control, Device
|
|
|
33
33
|
oRm.openStart("div", oControl);
|
|
34
34
|
oRm.style("min-height", "1rem");
|
|
35
35
|
oRm.style("width", oControl.getWidth());
|
|
36
|
-
if (Device.browser.msie) {
|
|
37
|
-
oRm.style("display", "block");
|
|
38
|
-
} else {
|
|
39
|
-
oRm.style("display", "inline-block");
|
|
40
|
-
}
|
|
41
36
|
oRm.openEnd();
|
|
42
37
|
oRm.renderControl(oControl.getContent()); // render the child Control
|
|
43
38
|
oRm.close("div"); // end of the complete Control
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
(c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
4
|
|
|
5
5
|
*/
|
|
6
|
-
sap.ui.define(["sap/ui/core/Control","sap/ui/Device"],function(C,D){"use strict";return C.extend("sap.fe.core.controls.FormElementWrapper",{metadata:{interfaces:["sap.ui.core.IFormContent"],properties:{width:{type:"sap.ui.core.CSSSize",defaultValue:null},formDoNotAdjustWidth:{type:"boolean",defaultValue:false}},defaultAggregation:"content",aggregations:{content:{type:"sap.ui.core.Control",multiple:false}}},getAccessibilityInfo:function(){var c=this.getContent();return c&&c.getAccessibilityInfo?c.getAccessibilityInfo():{};},renderer:{apiVersion:2,render:function(r,c){r.openStart("div",c);r.style("min-height","1rem");r.style("width",c.getWidth());
|
|
6
|
+
sap.ui.define(["sap/ui/core/Control","sap/ui/Device"],function(C,D){"use strict";return C.extend("sap.fe.core.controls.FormElementWrapper",{metadata:{interfaces:["sap.ui.core.IFormContent"],properties:{width:{type:"sap.ui.core.CSSSize",defaultValue:null},formDoNotAdjustWidth:{type:"boolean",defaultValue:false}},defaultAggregation:"content",aggregations:{content:{type:"sap.ui.core.Control",multiple:false}}},getAccessibilityInfo:function(){var c=this.getContent();return c&&c.getAccessibilityInfo?c.getAccessibilityInfo():{};},renderer:{apiVersion:2,render:function(r,c){r.openStart("div",c);r.style("min-height","1rem");r.style("width",c.getWidth());r.openEnd();r.renderControl(c.getContent());r.close("div");}}});});
|
package/packages/sap.fe.core/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml
CHANGED
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
<template:with path="key>" helper="COMMON.getPathToKey" var="immutableKey">
|
|
22
22
|
<Label text="{= ${immutableKey>@com.sap.vocabularies.Common.v1.Label}}" />
|
|
23
23
|
<mdc:Field
|
|
24
|
-
delegate="{name:
|
|
24
|
+
delegate="{name:'sap/fe/macros/FieldBaseDelegate', payload:{retrieveTextFromValueList:true}}"
|
|
25
25
|
id="{= ID.generate(['CreateDialog', ${entitySet>@sapui.name}, ${immutableKey>@sapui.name}]) }"
|
|
26
26
|
value="{immutableKey>@@MODEL.format}"
|
|
27
27
|
width="100%"
|
|
@@ -42,9 +42,9 @@
|
|
|
42
42
|
</Label>
|
|
43
43
|
<ComboBox
|
|
44
44
|
id="{= ID.generate(['MED_', ${dataField>entitySet}, ${dataField>dataProperty}]) }"
|
|
45
|
-
core:require="{
|
|
45
|
+
core:require="{MassEditHandlers: 'sap/fe/core/controls/massEdit/MassEditHandlers'}"
|
|
46
46
|
items="{= '{path : \'fieldsInfo>/values/' + ${dataField>dataProperty} + '\'}' }"
|
|
47
|
-
change="
|
|
47
|
+
change="MassEditHandlers.handleMassEditChange($event)"
|
|
48
48
|
selectedKey="{dataField>defaultSelectionPath}"
|
|
49
49
|
visible="{dataField>visible}"
|
|
50
50
|
>
|
|
@@ -56,10 +56,10 @@
|
|
|
56
56
|
</layoutData>
|
|
57
57
|
</ComboBox>
|
|
58
58
|
<ComboBox
|
|
59
|
-
core:require="{
|
|
59
|
+
core:require="{MassEditHandlers: 'sap/fe/core/controls/massEdit/MassEditHandlers'}"
|
|
60
60
|
id="{= ID.generate(['MED_', ${dataField>entitySet}, ${dataField>unitProperty}]) }"
|
|
61
61
|
items="{= '{path : \'fieldsInfo>/unitData/' + ${dataField>unitProperty} + '\'}' }"
|
|
62
|
-
change="
|
|
62
|
+
change="MassEditHandlers.handleMassEditChange($event)"
|
|
63
63
|
selectedKey="{dataField>defaultSelectionUnitPath}"
|
|
64
64
|
visible="{dataField>visible}"
|
|
65
65
|
>
|
|
@@ -83,9 +83,9 @@
|
|
|
83
83
|
</Label>
|
|
84
84
|
<ComboBox
|
|
85
85
|
id="{= ID.generate(['MED_', ${dataField>entitySet}, ${dataField>dataProperty}]) }"
|
|
86
|
-
core:require="{
|
|
86
|
+
core:require="{MassEditHandlers: 'sap/fe/core/controls/massEdit/MassEditHandlers'}"
|
|
87
87
|
items="{= '{path : \'fieldsInfo>/values/' + ${dataField>dataProperty} + '\'}' }"
|
|
88
|
-
change="
|
|
88
|
+
change="MassEditHandlers.handleMassEditChange($event)"
|
|
89
89
|
selectedKey="{dataField>defaultSelectionPath}"
|
|
90
90
|
visible="{dataField>visible}"
|
|
91
91
|
>
|
|
@@ -14,7 +14,7 @@ sap.ui.define(
|
|
|
14
14
|
* @private
|
|
15
15
|
* @experimental This module is only for internal/experimental use!
|
|
16
16
|
*/
|
|
17
|
-
var
|
|
17
|
+
var MassEditHandlers = {
|
|
18
18
|
handleMassEditChange: function(oEvent) {
|
|
19
19
|
var oSource = oEvent && oEvent.getSource();
|
|
20
20
|
var aParams = oSource && oSource.getSelectedKey() && oSource.getSelectedKey().split("/");
|
|
@@ -73,7 +73,7 @@ sap.ui.define(
|
|
|
73
73
|
}
|
|
74
74
|
};
|
|
75
75
|
|
|
76
|
-
return
|
|
76
|
+
return MassEditHandlers;
|
|
77
77
|
},
|
|
78
78
|
/* bExport= */ true
|
|
79
79
|
);
|
|
File without changes
|
|
@@ -411,6 +411,18 @@ sap.ui.define(["sap/fe/core/converters/MetaModelConverter", "sap/fe/core/templat
|
|
|
411
411
|
value: function getDiagnostics() {
|
|
412
412
|
return this.diagnostics;
|
|
413
413
|
}
|
|
414
|
+
/**
|
|
415
|
+
* Retrieve the target from an absolute path.
|
|
416
|
+
*
|
|
417
|
+
* @param {string} path The path we want to get the target
|
|
418
|
+
* @returns {ConverterContext}
|
|
419
|
+
*/
|
|
420
|
+
|
|
421
|
+
}, {
|
|
422
|
+
key: "resolveAbsolutePath",
|
|
423
|
+
value: function resolveAbsolutePath(path) {
|
|
424
|
+
return this.convertedTypes.resolvePath(path);
|
|
425
|
+
}
|
|
414
426
|
/**
|
|
415
427
|
* Retrieve a new converter context, scoped for a different context path.
|
|
416
428
|
*
|
|
@@ -511,4 +523,4 @@ sap.ui.define(["sap/fe/core/converters/MetaModelConverter", "sap/fe/core/templat
|
|
|
511
523
|
|
|
512
524
|
return ConverterContext;
|
|
513
525
|
}, false);
|
|
514
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvbnZlcnRlckNvbnRleHQudHMiXSwibmFtZXMiOlsiaXNBbm5vdGF0aW9uVGVybSIsInZBbm5vdGF0aW9uUGF0aCIsImlzU2VydmljZU9iamVjdCIsIm9iamVjdFBhcnQiLCJoYXNPd25Qcm9wZXJ0eSIsImdldERhdGFNb2RlbFBhdGhGb3JFbnRpdHlTZXQiLCJyZXNvbHZlZE1ldGFQYXRoIiwicm9vdEVudGl0eVNldCIsImN1cnJlbnRFbnRpdHlTZXQiLCJwcmV2aW91c0VudGl0eVNldCIsImN1cnJlbnRFbnRpdHlUeXBlIiwibmF2aWdhdGVkUGF0aHMiLCJuYXZpZ2F0aW9uUHJvcGVydGllcyIsIm9iamVjdFBhdGgiLCJmb3JFYWNoIiwiX3R5cGUiLCJwdXNoIiwibmFtZSIsInRhcmdldFR5cGUiLCJuYXZpZ2F0aW9uUHJvcGVydHlCaW5kaW5nIiwiam9pbiIsInVuZGVmaW5lZCIsImVudGl0eVR5cGUiLCJkYXRhTW9kZWxQYXRoIiwic3RhcnRpbmdFbnRpdHlTZXQiLCJ0YXJnZXRFbnRpdHlUeXBlIiwidGFyZ2V0RW50aXR5U2V0IiwiY29udGV4dExvY2F0aW9uIiwidGFyZ2V0T2JqZWN0IiwidGFyZ2V0IiwiQ29udmVydGVyQ29udGV4dCIsImNvbnZlcnRlZFR5cGVzIiwibWFuaWZlc3RTZXR0aW5ncyIsImRpYWdub3N0aWNzIiwibWVyZ2VGbiIsInRhcmdldERhdGFNb2RlbFBhdGgiLCJtYW5pZmVzdFdyYXBwZXIiLCJNYW5pZmVzdFdyYXBwZXIiLCJiYXNlQ29udGV4dFBhdGgiLCJnZXRUYXJnZXRPYmplY3RQYXRoIiwiZnVsbHlRdWFsaWZpZWROYW1lIiwiZW50aXR5VHlwZXMiLCJmaW5kIiwic3RhcnRzV2l0aCIsInJlcGxhY2VBbm5vdGF0aW9uIiwicmVwbGFjZSIsImFubm90YXRpb24iLCJhbm5vdGF0aW9uUGF0aCIsIl9nZXRFbnRpdHlUeXBlRnJvbUZ1bGx5UXVhbGlmaWVkTmFtZSIsIkVycm9yIiwiZ2V0Q29udHJvbENvbmZpZ3VyYXRpb24iLCJzQW5ub3RhdGlvblBhdGgiLCJlbnRpdHlDb250YWluZXIiLCJzaW5nbGV0b25zIiwic2luZ2xldG9uIiwicGFyYW1ldGVyRW50aXR5VHlwZSIsImlzUGFyYW1ldGVyaXplZCIsImFubm90YXRpb25zIiwiQ29tbW9uIiwiUmVzdWx0Q29udGV4dCIsImluZGV4T2YiLCJyZXNvbHZlUGF0aCIsInN0YXJ0aW5nRW50aXR5VHlwZSIsImNvbmNhdCIsImkiLCJjdXJyZW50T2JqZWN0IiwidmlzaXRlZE9iamVjdHMiLCJuYXZPYmplY3QiLCJsZW5ndGgiLCJuYXZQYXRoIiwib3V0RGF0YU1vZGVsUGF0aCIsImNvbnZlcnRlckNvbnRleHQiLCJnZXRUZW1wbGF0ZVR5cGUiLCJlbnRpdHlUeXBlRlFOIiwibWF0Y2giLCJyZXBsYWNlZEFubm90YXRpb25QYXRoIiwic3Vic3RyIiwiY29udGV4dFBhdGgiLCJ0YXJnZXRQYXRoIiwidm9jYWJ1bGFyeU5hbWUiLCJhbm5vdGF0aW9uVGVybSIsImFubm90YXRpb25Tb3VyY2VzIiwiZ2V0RW50aXR5VHlwZSIsIm91dEFubm90YXRpb25zIiwiYW5ub3RhdGlvblNvdXJjZSIsIk9iamVjdCIsImtleXMiLCJmaWx0ZXIiLCJ0ZXJtIiwicmVkdWNlIiwicHJldmlvdXNWYWx1ZSIsImtleSIsInNQYXRoIiwiZW5oYW5jZWRQYXRoIiwiZW5oYW5jZURhdGFNb2RlbFBhdGgiLCJnZXRDb250ZXh0UmVsYXRpdmVUYXJnZXRPYmplY3RQYXRoIiwic0VudGl0eVNldE5hbWUiLCJvTWV0YU1vZGVsQ29udGV4dCIsIm9NZXRhTW9kZWwiLCJpc0EiLCJnZXRNb2RlbCIsIm9Db252ZXJ0ZXJPdXRwdXQiLCJjb252ZXJ0VHlwZXMiLCJlbnRpdHlTZXRzIiwiZW50aXR5U2V0Il0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUE2QkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTUEsZ0JBQWdCLEdBQUcsVUFBU0MsZUFBVCxFQUFnRztB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N0QsbUJBQUwsRUFBMEI7QUFDekJBLFVBQUFBLG1CQUFtQixHQUFHO0FBQ3JCWCxZQUFBQSxpQkFBaUIsRUFBRUUsZUFERTtBQUVyQmQsWUFBQUEsb0JBQW9CLEVBQUUsRUFGRDtBQUdyQmMsWUFBQUEsZUFBZSxFQUFFQSxlQUhJO0FBSXJCRCxZQUFBQSxnQkFBZ0IsRUFBRUMsZUFBZSxDQUFDSixVQUpiO0FBS3JCTSxZQUFBQSxZQUFZLEVBQUVGO0FBTE8sV0FBdEI7QUFPQTs7QUFDRCxlQUFPLElBQUlJLGdCQUFKLENBQXFCdUUsZ0JBQXJCLEVBQXVDckUsZ0JBQXZDLEVBQXlEQyxXQUF6RCxFQUFzRUMsT0FBdEUsRUFBK0VDLG1CQUEvRSxDQUFQO0FBQ0E7Ozs7OztTQUdhTCxnQiIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW5ub3RhdGlvblRlcm0gfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXNcIjtcbmltcG9ydCB7XG5cdEFueUFubm90YXRpb24sXG5cdENvbnZlcnRlck91dHB1dCxcblx0RW50aXR5U2V0LFxuXHRFbnRpdHlUeXBlLFxuXHRFbnRpdHlDb250YWluZXIsXG5cdE5hdmlnYXRpb25Qcm9wZXJ0eSxcblx0U2VydmljZU9iamVjdCxcblx0U2luZ2xldG9uLFxuXHRSZXNvbHV0aW9uVGFyZ2V0LFxuXHRTZXJ2aWNlT2JqZWN0QW5kQW5ub3RhdGlvblxufSBmcm9tIFwiQHNhcC11eC9hbm5vdGF0aW9uLWNvbnZlcnRlclwiO1xuaW1wb3J0IHsgQmFzZU1hbmlmZXN0U2V0dGluZ3MsIFRlbXBsYXRlVHlwZSB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01hbmlmZXN0U2V0dGluZ3NcIjtcbmltcG9ydCB7IENvbnRleHQsIE9EYXRhTWV0YU1vZGVsIH0gZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NFwiO1xuaW1wb3J0IHsgY29udmVydFR5cGVzLCBSZXNvbHZlZFRhcmdldCB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01ldGFNb2RlbENvbnZlcnRlclwiO1xuaW1wb3J0IHsgSURpYWdub3N0aWNzIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvVGVtcGxhdGVDb252ZXJ0ZXJcIjtcbmltcG9ydCB7XG5cdERhdGFNb2RlbE9iamVjdFBhdGgsXG5cdGVuaGFuY2VEYXRhTW9kZWxQYXRoLFxuXHRnZXRDb250ZXh0UmVsYXRpdmVUYXJnZXRPYmplY3RQYXRoLFxuXHRnZXRUYXJnZXRPYmplY3RQYXRoXG59IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL0RhdGFNb2RlbFBhdGhIZWxwZXJcIjtcbmltcG9ydCB7IEVudGl0eVR5cGVBbm5vdGF0aW9ucyB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlcy90eXBlcy9nZW5lcmF0ZWQvRWRtX1R5cGVzXCI7XG5pbXBvcnQgTWFuaWZlc3RXcmFwcGVyIGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01hbmlmZXN0V3JhcHBlclwiO1xuXG5leHBvcnQgdHlwZSBSZXNvbHZlZEFubm90YXRpb25Db250ZXh0ID0ge1xuXHRhbm5vdGF0aW9uOiBBbnlBbm5vdGF0aW9uO1xuXHRjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0O1xufTtcblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciBhbiBvYmplY3QgaXMgYW4gYW5ub3RhdGlvbiB0ZXJtLlxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfEFubm90YXRpb25UZXJtPG9iamVjdD59IHZBbm5vdGF0aW9uUGF0aFxuICogQHJldHVybnMge2Jvb2xlYW59XG4gKi9cbmNvbnN0IGlzQW5ub3RhdGlvblRlcm0gPSBmdW5jdGlvbih2QW5ub3RhdGlvblBhdGg6IHN0cmluZyB8IEFubm90YXRpb25UZXJtPGFueT4pOiB2QW5ub3RhdGlvblBhdGggaXMgQW5ub3RhdGlvblRlcm08YW55PiB7XG5cdHJldHVybiB0eXBlb2YgdkFubm90YXRpb25QYXRoID09PSBcIm9iamVjdFwiO1xufTtcblxuZnVuY3Rpb24gaXNTZXJ2aWNlT2JqZWN0KG9iamVjdFBhcnQ6IFNlcnZpY2VPYmplY3RBbmRBbm5vdGF0aW9uKTogb2JqZWN0UGFydCBpcyBTZXJ2aWNlT2JqZWN0IHtcblx0cmV0dXJuIG9iamVjdFBhcnQgJiYgb2JqZWN0UGFydC5oYXNPd25Qcm9wZXJ0eShcIl90eXBlXCIpO1xufVxuXG5jb25zdCBnZXREYXRhTW9kZWxQYXRoRm9yRW50aXR5U2V0ID0gZnVuY3Rpb24ocmVzb2x2ZWRNZXRhUGF0aDogUmVzb2x1dGlvblRhcmdldDxhbnk+KTogRGF0YU1vZGVsT2JqZWN0UGF0aCB7XG5cdGxldCByb290RW50aXR5U2V0OiBFbnRpdHlTZXQgfCB1bmRlZmluZWQ7XG5cdGxldCBjdXJyZW50RW50aXR5U2V0OiBFbnRpdHlTZXQgfCB1bmRlZmluZWQ7XG5cdGxldCBwcmV2aW91c0VudGl0eVNldDogRW50aXR5U2V0IHwgdW5kZWZpbmVkO1xuXHRsZXQgY3VycmVudEVudGl0eVR5cGU6IEVudGl0eVR5cGUgfCB1bmRlZmluZWQ7XG5cdGxldCBuYXZpZ2F0ZWRQYXRoczogc3RyaW5nW10gPSBbXTtcblx0Y29uc3QgbmF2aWdhdGlvblByb3BlcnRpZXM6IE5hdmlnYXRpb25Qcm9wZXJ0eVtdID0gW107XG5cdHJlc29sdmVkTWV0YVBhdGgub2JqZWN0UGF0aC5mb3JFYWNoKChvYmplY3RQYXJ0OiBTZXJ2aWNlT2JqZWN0QW5kQW5ub3RhdGlvbikgPT4ge1xuXHRcdGlmIChpc1NlcnZpY2VPYmplY3Qob2JqZWN0UGFydCkpIHtcblx0XHRcdHN3aXRjaCAob2JqZWN0UGFydC5fdHlwZSkge1xuXHRcdFx0XHRjYXNlIFwiTmF2aWdhdGlvblByb3BlcnR5XCI6XG5cdFx0XHRcdFx0bmF2aWdhdGVkUGF0aHMucHVzaChvYmplY3RQYXJ0Lm5hbWUpO1xuXHRcdFx0XHRcdG5hdmlnYXRpb25Qcm9wZXJ0aWVzLnB1c2gob2JqZWN0UGFydCk7XG5cdFx0XHRcdFx0Y3VycmVudEVudGl0eVR5cGUgPSBvYmplY3RQYXJ0LnRhcmdldFR5cGU7XG5cdFx0XHRcdFx0aWYgKHByZXZpb3VzRW50aXR5U2V0ICYmIHByZXZpb3VzRW50aXR5U2V0Lm5hdmlnYXRpb25Qcm9wZXJ0eUJpbmRpbmcuaGFzT3duUHJvcGVydHkobmF2aWdhdGVkUGF0aHMuam9pbihcIi9cIikpKSB7XG5cdFx0XHRcdFx0XHRjdXJyZW50RW50aXR5U2V0ID0gcHJldmlvdXNFbnRpdHlTZXQubmF2aWdhdGlvblByb3BlcnR5QmluZGluZ1tuYXZpZ2F0ZWRQYXRocy5qb2luKFwiL1wiKV07XG5cdFx0XHRcdFx0XHRwcmV2aW91c0VudGl0eVNldCA9IGN1cnJlbnRFbnRpdHlTZXQ7XG5cdFx0XHRcdFx0XHRuYXZpZ2F0ZWRQYXRocyA9IFtdO1xuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRjdXJyZW50RW50aXR5U2V0ID0gdW5kZWZpbmVkO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRicmVhaztcblx0XHRcdFx0Y2FzZSBcIkVudGl0eVNldFwiOlxuXHRcdFx0XHRcdGlmIChyb290RW50aXR5U2V0ID09PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0XHRcdHJvb3RFbnRpdHlTZXQgPSBvYmplY3RQYXJ0O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRjdXJyZW50RW50aXR5U2V0ID0gb2JqZWN0UGFydDtcblx0XHRcdFx0XHRwcmV2aW91c0VudGl0eVNldCA9IGN1cnJlbnRFbnRpdHlTZXQ7XG5cdFx0XHRcdFx0Y3VycmVudEVudGl0eVR5cGUgPSBjdXJyZW50RW50aXR5U2V0Py5lbnRpdHlUeXBlO1xuXHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHRkZWZhdWx0OlxuXHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0fVxuXHRcdH1cblx0fSk7XG5cdGNvbnN0IGRhdGFNb2RlbFBhdGg6IERhdGFNb2RlbE9iamVjdFBhdGggPSB7XG5cdFx0c3RhcnRpbmdFbnRpdHlTZXQ6IHJvb3RFbnRpdHlTZXQgYXMgRW50aXR5U2V0LFxuXHRcdHRhcmdldEVudGl0eVR5cGU6IGN1cnJlbnRFbnRpdHlUeXBlIGFzIEVudGl0eVR5cGUsXG5cdFx0dGFyZ2V0RW50aXR5U2V0OiBjdXJyZW50RW50aXR5U2V0LFxuXHRcdG5hdmlnYXRpb25Qcm9wZXJ0aWVzOiBuYXZpZ2F0aW9uUHJvcGVydGllcyxcblx0XHRjb250ZXh0TG9jYXRpb246IHVuZGVmaW5lZCxcblx0XHR0YXJnZXRPYmplY3Q6IHJlc29sdmVkTWV0YVBhdGgudGFyZ2V0XG5cdH07XG5cdGRhdGFNb2RlbFBhdGguY29udGV4dExvY2F0aW9uID0gZGF0YU1vZGVsUGF0aDtcblx0cmV0dXJuIGRhdGFNb2RlbFBhdGg7XG59O1xuXG4vKipcbiAqIENyZWF0ZSBhIENvbnZlcnRlckNvbnRleHQgb2JqZWN0IHRoYXQgd2lsbCBiZSB1c2VkIHdpdGhpbiB0aGUgY29udmVydGVycy5cbiAqXG4gKiBAcGFyYW0ge0NvbnZlcnRlck91dHB1dH0gb0NvbnZlcnRlZFR5cGVzIFRoZSBjb252ZXJ0ZWQgYW5ub3RhdGlvbiBhbmQgc2VydmljZSB0eXBlc1xuICogQHBhcmFtIHtCYXNlTWFuaWZlc3RTZXR0aW5nc30gb01hbmlmZXN0U2V0dGluZ3MgVGhlIG1hbmlmZXN0U2V0dGluZ3MgdGhhdCBhcHBsaWVzIHRvIHRoaXMgcGFnZVxuICogQHBhcmFtIHtUZW1wbGF0ZVR5cGV9IHRlbXBsYXRlVHlwZSBUaGUgdHlwZSBvZiB0ZW1wbGF0ZSB3ZSdyZSBsb29raW5nIGF0IHJpZ2h0IG5vd1xuICogQHBhcmFtIHtJU2hlbGxTZXJ2aWNlc1Byb3h5fSBzaGVsbFNlcnZpY2VzIFRoZSBjdXJyZW50IGluc3RhbmNlIG9mIHRoZSBzaGVsbHNlcnZpY2VcbiAqIEBwYXJhbSB7SURpYWdub3N0aWNzfSBkaWFnbm9zdGljcyBUaGUgZGlhZ25vc3RpY3Mgc2hpbVxuICogQHBhcmFtIHtGdW5jdGlvbn0gbWVyZ2VGbiBUaGUgZnVuY3Rpb24gdG8gYmUgdXNlZCB0byBwZXJmb20gc29tZSBkZWVwIG1lcmdlcyBiZXR3ZWVuIG9iamVjdFxuICogQHBhcmFtIHtEYXRhTW9kZWxPYmplY3RQYXRofSB0YXJnZXREYXRhTW9kZWxQYXRoIFRoZSBnbG9iYWwgcGF0aCB0byByZWFjaCB0aGUgZW50aXR5U2V0XG4gKlxuICogQHJldHVybnMge0NvbnZlcnRlckNvbnRleHR9IEEgY29udmVydGVyIGNvbnRleHQgZm9yIHRoZSBjb252ZXJ0ZXJzXG4gKi9cbmNsYXNzIENvbnZlcnRlckNvbnRleHQge1xuXHRwcml2YXRlIG1hbmlmZXN0V3JhcHBlcjogTWFuaWZlc3RXcmFwcGVyO1xuXHRwcml2YXRlIGJhc2VDb250ZXh0UGF0aDogc3RyaW5nO1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdHByaXZhdGUgY29udmVydGVkVHlwZXM6IENvbnZlcnRlck91dHB1dCxcblx0XHRwcml2YXRlIG1hbmlmZXN0U2V0dGluZ3M6IEJhc2VNYW5pZmVzdFNldHRpbmdzLFxuXHRcdHByaXZhdGUgZGlhZ25vc3RpY3M6IElEaWFnbm9zdGljcyxcblx0XHRwcml2YXRlIG1lcmdlRm46IEZ1bmN0aW9uLFxuXHRcdHByaXZhdGUgdGFyZ2V0RGF0YU1vZGVsUGF0aDogRGF0YU1vZGVsT2JqZWN0UGF0aFxuXHQpIHtcblx0XHR0aGlzLm1hbmlmZXN0V3JhcHBlciA9IG5ldyBNYW5pZmVzdFdyYXBwZXIodGhpcy5tYW5pZmVzdFNldHRpbmdzLCBtZXJnZUZuKTtcblx0XHR0aGlzLmJhc2VDb250ZXh0UGF0aCA9IGdldFRhcmdldE9iamVjdFBhdGgodGhpcy50YXJnZXREYXRhTW9kZWxQYXRoKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZSB0aGUgcHJvcGVydHkgYmFzZWQgb24gdGhlIHBhdGguXG5cdCAqXG5cdCAqIEBwYXJhbSBmdWxseVF1YWxpZmllZE5hbWUgVGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lXG5cdCAqIEByZXR1cm5zIHtQcm9wZXJ0eX0gVGhlIHByb3BlcnR5IEVudGl0eVR5cGUgYmFzZWRcblx0ICovXG5cdHByaXZhdGUgX2dldEVudGl0eVR5cGVGcm9tRnVsbHlRdWFsaWZpZWROYW1lKGZ1bGx5UXVhbGlmaWVkTmFtZTogc3RyaW5nKTogRW50aXR5VHlwZSB8IHVuZGVmaW5lZCB7XG5cdFx0Y29uc3QgdGFyZ2V0RW50aXR5VHlwZSA9IHRoaXMuY29udmVydGVkVHlwZXMuZW50aXR5VHlwZXMuZmluZChlbnRpdHlUeXBlID0+IHtcblx0XHRcdGlmIChmdWxseVF1YWxpZmllZE5hbWUuc3RhcnRzV2l0aChlbnRpdHlUeXBlLmZ1bGx5UXVhbGlmaWVkTmFtZSkpIHtcblx0XHRcdFx0Y29uc3QgcmVwbGFjZUFubm90YXRpb24gPSBmdWxseVF1YWxpZmllZE5hbWUucmVwbGFjZShlbnRpdHlUeXBlLmZ1bGx5UXVhbGlmaWVkTmFtZSwgXCJcIik7XG5cdFx0XHRcdHJldHVybiByZXBsYWNlQW5ub3RhdGlvbi5zdGFydHNXaXRoKFwiL1wiKSB8fCByZXBsYWNlQW5ub3RhdGlvbi5zdGFydHNXaXRoKFwiQFwiKTtcblx0XHRcdH1cblx0XHRcdHJldHVybiBmYWxzZTtcblx0XHR9KTtcblx0XHRyZXR1cm4gdGFyZ2V0RW50aXR5VHlwZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZSB0aGUgZW50aXR5VHlwZSBhc3NvY2lhdGVkIHdpdGggYW4gYW5ub3RhdGlvbiBvYmplY3QuXG5cdCAqXG5cdCAqIEBwYXJhbSBhbm5vdGF0aW9uIFRoZSBhbm5vdGF0aW9uIG9iamVjdCBmb3Igd2hpY2ggd2Ugd2FudCB0byBmaW5kIHRoZSBlbnRpdHlUeXBlXG5cdCAqIEByZXR1cm5zIHtFbnRpdHlUeXBlfSBUaGUgRW50aXR5VHlwZSB0aGUgYW5ub3RhdGlvbiByZWZlcnMgdG9cblx0ICovXG5cdGdldEFubm90YXRpb25FbnRpdHlUeXBlKGFubm90YXRpb24/OiBBbm5vdGF0aW9uVGVybTxhbnk+KTogRW50aXR5VHlwZSB7XG5cdFx0aWYgKGFubm90YXRpb24pIHtcblx0XHRcdGNvbnN0IGFubm90YXRpb25QYXRoID0gYW5ub3RhdGlvbi5mdWxseVF1YWxpZmllZE5hbWU7XG5cdFx0XHRjb25zdCB0YXJnZXRFbnRpdHlUeXBlID0gdGhpcy5fZ2V0RW50aXR5VHlwZUZyb21GdWxseVF1YWxpZmllZE5hbWUoYW5ub3RhdGlvblBhdGgpO1xuXHRcdFx0aWYgKCF0YXJnZXRFbnRpdHlUeXBlKSB7XG5cdFx0XHRcdHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCBmaW5kIEVudGl0eSBUeXBlIGZvciBcIiArIGFubm90YXRpb24uZnVsbHlRdWFsaWZpZWROYW1lKTtcblx0XHRcdH1cblx0XHRcdHJldHVybiB0YXJnZXRFbnRpdHlUeXBlO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gdGhpcy50YXJnZXREYXRhTW9kZWxQYXRoLnRhcmdldEVudGl0eVR5cGU7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlIHRoZSBtYW5pZmVzdCBzZXR0aW5ncyBkZWZpbmVkIGZvciBhIHNwZWNpZmljIGNvbnRyb2wgd2l0aGluIGNvbnRyb2xDb25maWd1cmF0aW9uLlxuXHQgKlxuXHQgKiBAcGFyYW0gdkFubm90YXRpb25QYXRoIFRoZSBhbm5vdGF0aW9uIHBhdGggb3Igb2JqZWN0IHRvIGV2YWx1YXRlXG5cdCAqIEByZXR1cm5zIFRoZSBjb250cm9sIGNvbmZpZ3VyYXRpb24gZm9yIHRoYXQgc3BlY2lmaWMgYW5udG9hdGlvbiBwYXRoIGlmIGl0IGV4aXN0c1xuXHQgKi9cblx0Z2V0TWFuaWZlc3RDb250cm9sQ29uZmlndXJhdGlvbih2QW5ub3RhdGlvblBhdGg6IHN0cmluZyB8IEFubm90YXRpb25UZXJtPGFueT4pOiBhbnkge1xuXHRcdGlmIChpc0Fubm90YXRpb25UZXJtKHZBbm5vdGF0aW9uUGF0aCkpIHtcblx0XHRcdHJldHVybiB0aGlzLm1hbmlmZXN0V3JhcHBlci5nZXRDb250cm9sQ29uZmlndXJhdGlvbihcblx0XHRcdFx0dkFubm90YXRpb25QYXRoLmZ1bGx5UXVhbGlmaWVkTmFtZS5yZXBsYWNlKHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC50YXJnZXRFbnRpdHlUeXBlLmZ1bGx5UXVhbGlmaWVkTmFtZSwgXCJcIilcblx0XHRcdCk7XG5cdFx0fVxuXHRcdHJldHVybiB0aGlzLm1hbmlmZXN0V3JhcHBlci5nZXRDb250cm9sQ29uZmlndXJhdGlvbih2QW5ub3RhdGlvblBhdGgpO1xuXHR9XG5cblx0LyoqXG5cdCAqIENyZWF0ZSBhbiBhYnNvbHV0ZSBhbm5vdGF0aW9uIHBhdGggYmFzZWQgb24gdGhlIGN1cnJlbnQgbWV0YSBtb2RlbCBjb250ZXh0LlxuXHQgKlxuXHQgKiBAcGFyYW0gc0Fubm90YXRpb25QYXRoIFRoZSByZWxhdGl2ZSBhbm5vdGF0aW9uIHBhdGhcblx0ICogQHJldHVybnMgVGhlIGNvcnJlY3QgYW5ub3RhdGlvbiBwYXRoIGJhc2VkIG9uIHRoZSBjdXJyZW50IGNvbnRleHRcblx0ICovXG5cdGdldEFic29sdXRlQW5ub3RhdGlvblBhdGgoc0Fubm90YXRpb25QYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdGlmICghc0Fubm90YXRpb25QYXRoKSB7XG5cdFx0XHRyZXR1cm4gc0Fubm90YXRpb25QYXRoO1xuXHRcdH1cblx0XHRpZiAoc0Fubm90YXRpb25QYXRoWzBdID09PSBcIi9cIikge1xuXHRcdFx0cmV0dXJuIHNBbm5vdGF0aW9uUGF0aDtcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXMuYmFzZUNvbnRleHRQYXRoICsgXCIvXCIgKyBzQW5ub3RhdGlvblBhdGg7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmUgdGhlIGN1cnJlbnQgZW50aXR5U2V0LlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUaGUgY3VycmVudCBFbnRpdHlTZXQgaWYgaXQgZXhpc3RzLlxuXHQgKi9cblx0Z2V0RW50aXR5U2V0KCk6IEVudGl0eVNldCB8IHVuZGVmaW5lZCB7XG5cdFx0cmV0dXJuIHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC50YXJnZXRFbnRpdHlTZXQ7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmUgdGhlIGNvbnRleHQgcGF0aC5cblx0ICpcblx0ICogQHJldHVybnMgVGhlIGNvbnRleHQgcGF0aCBvZiB0aGUgY29udmVydGVyLlxuXHQgKi9cblx0Z2V0Q29udGV4dFBhdGgoKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gdGhpcy5iYXNlQ29udGV4dFBhdGg7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmUgdGhlIGN1cnJlbnQgZGF0YSBtb2RlbCBvYmplY3QgcGF0aC5cblx0ICpcblx0ICogQHJldHVybnMgVGhlIGN1cnJlbnQgZGF0YSBtb2RlbCBvYmplY3QgcGF0aFxuXHQgKi9cblx0Z2V0RGF0YU1vZGVsT2JqZWN0UGF0aCgpOiBEYXRhTW9kZWxPYmplY3RQYXRoIHtcblx0XHRyZXR1cm4gdGhpcy50YXJnZXREYXRhTW9kZWxQYXRoO1xuXHR9XG5cblx0LyoqXG5cdCAqIEdldCB0aGUgRW50aXR5Q29udGFpbmVyLlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUaGUgY3VycmVudCBzZXJ2aWNlIEVudGl0eUNvbnRhaW5lclxuXHQgKi9cblx0Z2V0RW50aXR5Q29udGFpbmVyKCk6IEVudGl0eUNvbnRhaW5lciB7XG5cdFx0cmV0dXJuIHRoaXMuY29udmVydGVkVHlwZXMuZW50aXR5Q29udGFpbmVyO1xuXHR9XG5cblx0LyoqXG5cdCAqIEdldCB0aGUgRW50aXR5VHlwZSBiYXNlZCBvbiB0aGUgZnVsbHkgcXVhbGlmaWVkIG5hbWUuXG5cdCAqXG5cdCAqIEByZXR1cm5zIFRoZSBjdXJyZW50IEVudGl0eVR5cGUuXG5cdCAqL1xuXHRnZXRFbnRpdHlUeXBlKCk6IEVudGl0eVR5cGUge1xuXHRcdHJldHVybiB0aGlzLnRhcmdldERhdGFNb2RlbFBhdGgudGFyZ2V0RW50aXR5VHlwZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZXRzIGEgc2luZ2xldG9uIGJhc2VkIG9uIHRoZSBmdWxseSBxdWFsaWZpZWQgbmFtZS5cblx0ICpcblx0ICogQHBhcmFtIHtzdHJpbmd9IGZ1bGx5UXVhbGlmaWVkTmFtZSBUaGUgZnVsbHkgcXVhbGlmaWVkIG5hbWUgb2YgdGhlIHNpbmdsZXRvblxuXHQgKiBAcmV0dXJucyB7U2luZ2xldG9uIHwgdW5kZWZpbmVkfSBUaGUgc2luZ2xldG9uIGluc3RhbmNlLlxuXHQgKi9cblx0Z2V0U2luZ2xldG9uKGZ1bGx5UXVhbGlmaWVkTmFtZTogc3RyaW5nKTogU2luZ2xldG9uIHwgdW5kZWZpbmVkIHtcblx0XHRyZXR1cm4gdGhpcy5jb252ZXJ0ZWRUeXBlcy5zaW5nbGV0b25zLmZpbmQoc2luZ2xldG9uID0+IHNpbmdsZXRvbi5mdWxseVF1YWxpZmllZE5hbWUgPT09IGZ1bGx5UXVhbGlmaWVkTmFtZSk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0cyB0aGUgZW50aXR5IHR5cGUgb2YgdGhlIHBhcmFtZXRlciBpbiBjYXNlIG9mIGEgcGFyYW1ldGVyaXplZCBzZXJ2aWNlLlxuXHQgKiBAcmV0dXJucyB7RW50aXR5VHlwZX0gVGhlIGVudGl0eSB0eXBlIG9mIHRoZSBwYXJhbWV0ZXJcblx0ICovXG5cdGdldFBhcmFtZXRlckVudGl0eVR5cGUoKTogRW50aXR5VHlwZSB7XG5cdFx0Y29uc3QgcGFyYW1ldGVyRW50aXR5VHlwZSA9IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC5zdGFydGluZ0VudGl0eVNldC5lbnRpdHlUeXBlO1xuXHRcdGNvbnN0IGlzUGFyYW1ldGVyaXplZCA9ICEhcGFyYW1ldGVyRW50aXR5VHlwZS5hbm5vdGF0aW9ucz8uQ29tbW9uPy5SZXN1bHRDb250ZXh0O1xuXHRcdHJldHVybiAoaXNQYXJhbWV0ZXJpemVkICYmIHBhcmFtZXRlckVudGl0eVR5cGUpIGFzIEVudGl0eVR5cGU7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmVzIGFuIGFubm90YXRpb24gZnJvbSBhbiBlbnRpdHkgdHlwZSBiYXNlZCBvbiBhbm5vdGF0aW9uIHBhdGguXG5cdCAqXG5cdCAqIEBwYXJhbSBhbm5vdGF0aW9uUGF0aCBUaGUgYW5ub3RhdGlvbiBwYXRoIHRvIGJlIGV2YWx1YXRlZFxuXHQgKiBAcmV0dXJucyBUaGUgdGFyZ2V0IGFubm90YXRpb24gcGF0aCBhcyB3ZWxsIGFzIGEgY29udmVydGVyIGNvbnRleHQgdG8gZ28gd2l0aCBpdFxuXHQgKi9cblx0Z2V0RW50aXR5VHlwZUFubm90YXRpb24oYW5ub3RhdGlvblBhdGg6IHN0cmluZyk6IFJlc29sdmVkQW5ub3RhdGlvbkNvbnRleHQge1xuXHRcdGlmIChhbm5vdGF0aW9uUGF0aC5pbmRleE9mKFwiQFwiKSA9PT0gLTEpIHtcblx0XHRcdGFubm90YXRpb25QYXRoID0gXCJAXCIgKyBhbm5vdGF0aW9uUGF0aDtcblx0XHR9XG5cdFx0Y29uc3QgdGFyZ2V0T2JqZWN0OiBSZXNvbHZlZFRhcmdldCA9IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC50YXJnZXRFbnRpdHlUeXBlLnJlc29sdmVQYXRoKGFubm90YXRpb25QYXRoLCB0cnVlKTtcblxuXHRcdGxldCByb290RW50aXR5U2V0ID0gdGhpcy50YXJnZXREYXRhTW9kZWxQYXRoLnRhcmdldEVudGl0eVNldDtcblx0XHRsZXQgY3VycmVudEVudGl0eVR5cGUgPSB0aGlzLnRhcmdldERhdGFNb2RlbFBhdGgudGFyZ2V0RW50aXR5VHlwZTtcblx0XHRjb25zdCBzdGFydGluZ0VudGl0eVR5cGUgPSB0aGlzLnRhcmdldERhdGFNb2RlbFBhdGguc3RhcnRpbmdFbnRpdHlTZXQuZW50aXR5VHlwZTtcblx0XHRjb25zdCBuYXZpZ2F0aW9uUHJvcGVydGllcyA9IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC5uYXZpZ2F0aW9uUHJvcGVydGllcy5jb25jYXQoKTtcblx0XHRsZXQgaSA9IDE7XG5cdFx0bGV0IGN1cnJlbnRPYmplY3Q7XG5cdFx0bGV0IG5hdmlnYXRlZFBhdGhzID0gW107XG5cdFx0Y29uc3QgdmlzaXRlZE9iamVjdHMgPSB0YXJnZXRPYmplY3QudmlzaXRlZE9iamVjdHM7XG5cdFx0Ly8gSW4gY2FzZSBvZiBwYXJhbWV0ZXJpemVkIHNlcnZpY2Vcblx0XHRpZiAoIXJvb3RFbnRpdHlTZXQgJiYgc3RhcnRpbmdFbnRpdHlUeXBlLmFubm90YXRpb25zLkNvbW1vbj8uUmVzdWx0Q29udGV4dCkge1xuXHRcdFx0cm9vdEVudGl0eVNldCA9IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC5zdGFydGluZ0VudGl0eVNldDtcblx0XHRcdHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC5uYXZpZ2F0aW9uUHJvcGVydGllcy5mb3JFYWNoKGZ1bmN0aW9uKG5hdk9iamVjdCkge1xuXHRcdFx0XHRuYXZpZ2F0ZWRQYXRocy5wdXNoKG5hdk9iamVjdC5uYW1lKTtcblx0XHRcdH0pO1xuXHRcdH1cblx0XHR3aGlsZSAoaSA8IHZpc2l0ZWRPYmplY3RzLmxlbmd0aCkge1xuXHRcdFx0Y3VycmVudE9iamVjdCA9IHZpc2l0ZWRPYmplY3RzW2krK107XG5cdFx0XHRpZiAoY3VycmVudE9iamVjdC5fdHlwZSA9PT0gXCJOYXZpZ2F0aW9uUHJvcGVydHlcIikge1xuXHRcdFx0XHRuYXZpZ2F0ZWRQYXRocy5wdXNoKGN1cnJlbnRPYmplY3QubmFtZSk7XG5cdFx0XHRcdG5hdmlnYXRpb25Qcm9wZXJ0aWVzLnB1c2goY3VycmVudE9iamVjdCBhcyBOYXZpZ2F0aW9uUHJvcGVydHkpO1xuXHRcdFx0XHRjdXJyZW50RW50aXR5VHlwZSA9IChjdXJyZW50T2JqZWN0IGFzIE5hdmlnYXRpb25Qcm9wZXJ0eSkudGFyZ2V0VHlwZTtcblx0XHRcdFx0aWYgKHJvb3RFbnRpdHlTZXQgJiYgcm9vdEVudGl0eVNldC5uYXZpZ2F0aW9uUHJvcGVydHlCaW5kaW5nLmhhc093blByb3BlcnR5KG5hdmlnYXRlZFBhdGhzLmpvaW4oXCIvXCIpKSkge1xuXHRcdFx0XHRcdGNvbnN0IG5hdlBhdGggPSBuYXZpZ2F0ZWRQYXRocy5qb2luKFwiL1wiKTtcblx0XHRcdFx0XHRyb290RW50aXR5U2V0ID1cblx0XHRcdFx0XHRcdHJvb3RFbnRpdHlTZXQubmF2aWdhdGlvblByb3BlcnR5QmluZGluZ1tjdXJyZW50T2JqZWN0Lm5hbWVdIHx8IHJvb3RFbnRpdHlTZXQubmF2aWdhdGlvblByb3BlcnR5QmluZGluZ1tuYXZQYXRoXTtcblx0XHRcdFx0XHRuYXZpZ2F0ZWRQYXRocyA9IFtdO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHJvb3RFbnRpdHlTZXQgPSB1bmRlZmluZWQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdGlmIChjdXJyZW50T2JqZWN0Ll90eXBlID09PSBcIkVudGl0eVNldFwiKSB7XG5cdFx0XHRcdHJvb3RFbnRpdHlTZXQgPSBjdXJyZW50T2JqZWN0IGFzIEVudGl0eVNldDtcblx0XHRcdFx0Y3VycmVudEVudGl0eVR5cGUgPSByb290RW50aXR5U2V0LmVudGl0eVR5cGU7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdGNvbnN0IG91dERhdGFNb2RlbFBhdGggPSB7XG5cdFx0XHRzdGFydGluZ0VudGl0eVNldDogdGhpcy50YXJnZXREYXRhTW9kZWxQYXRoLnN0YXJ0aW5nRW50aXR5U2V0LFxuXHRcdFx0dGFyZ2V0RW50aXR5U2V0OiByb290RW50aXR5U2V0LFxuXHRcdFx0dGFyZ2V0RW50aXR5VHlwZTogY3VycmVudEVudGl0eVR5cGUsXG5cdFx0XHR0YXJnZXRPYmplY3Q6IG5hdmlnYXRpb25Qcm9wZXJ0aWVzW25hdmlnYXRpb25Qcm9wZXJ0aWVzLmxlbmd0aCAtIDFdLFxuXHRcdFx0bmF2aWdhdGlvblByb3BlcnRpZXMsXG5cdFx0XHRjb250ZXh0TG9jYXRpb246IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC5jb250ZXh0TG9jYXRpb25cblx0XHR9O1xuXHRcdHJldHVybiB7XG5cdFx0XHRhbm5vdGF0aW9uOiB0YXJnZXRPYmplY3QudGFyZ2V0IGFzIEFueUFubm90YXRpb24sXG5cdFx0XHRjb252ZXJ0ZXJDb250ZXh0OiBuZXcgQ29udmVydGVyQ29udGV4dChcblx0XHRcdFx0dGhpcy5jb252ZXJ0ZWRUeXBlcyxcblx0XHRcdFx0dGhpcy5tYW5pZmVzdFNldHRpbmdzLFxuXHRcdFx0XHR0aGlzLmRpYWdub3N0aWNzLFxuXHRcdFx0XHR0aGlzLm1lcmdlRm4sXG5cdFx0XHRcdG91dERhdGFNb2RlbFBhdGhcblx0XHRcdClcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlIHRoZSB0eXBlIG9mIHRlbXBsYXRlIHdlJ3JlIHdvcmtpbmcgb24gKGUuZy4gTGlzdFJlcG9ydCAvIE9iamVjdFBhZ2UgLyAuLi4pLlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUaGUgY3VycmVudCB0ZW5wbGF0ZSB0eXBlXG5cdCAqL1xuXHRnZXRUZW1wbGF0ZVR5cGUoKTogVGVtcGxhdGVUeXBlIHtcblx0XHRyZXR1cm4gdGhpcy5tYW5pZmVzdFdyYXBwZXIuZ2V0VGVtcGxhdGVUeXBlKCk7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmUgYSByZWxhdGl2ZSBhbm5vdGF0aW9uIHBhdGggYmV0d2VlbiBhbiBhbm5vdGF0aW9uIHBhdGggYW5kIGFuIGVudGl0eSB0eXBlLlxuXHQgKlxuXHQgKiBAcGFyYW0gYW5ub3RhdGlvblBhdGhcblx0ICogQHBhcmFtIGVudGl0eVR5cGVcblx0ICogQHJldHVybnMgVGhlIHJlbGF0aXZlIGFubnRvdGF0aW9uIHBhdGguXG5cdCAqL1xuXHRnZXRSZWxhdGl2ZUFubm90YXRpb25QYXRoKGFubm90YXRpb25QYXRoOiBzdHJpbmcsIGVudGl0eVR5cGU6IEVudGl0eVR5cGUpOiBzdHJpbmcge1xuXHRcdHJldHVybiBhbm5vdGF0aW9uUGF0aC5yZXBsYWNlKGVudGl0eVR5cGUuZnVsbHlRdWFsaWZpZWROYW1lLCBcIlwiKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBUcmFuc2Zvcm0gYW4gZW50aXR5VHlwZSBiYXNlZCBwYXRoIHRvIGFuIGVudGl0eVNldCBiYXNlZCBvbmUgKHVpNSB0ZW1wbGF0aW5nIGdlbmVyYWxseSBleHBlY3QgYW4gZW50aXR5U2V0QmFzZWRQYXRoKS5cblx0ICpcblx0ICogQHBhcmFtIGFubm90YXRpb25QYXRoXG5cdCAqIEByZXR1cm5zIFRoZSBFbnRpdHlTZXQgYmFzZWQgYW5ub3RhdGlvbiBwYXRoXG5cdCAqL1xuXHRnZXRFbnRpdHlTZXRCYXNlZEFubm90YXRpb25QYXRoKGFubm90YXRpb25QYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdGlmICghYW5ub3RhdGlvblBhdGgpIHtcblx0XHRcdHJldHVybiBhbm5vdGF0aW9uUGF0aDtcblx0XHR9XG5cdFx0Y29uc3QgZW50aXR5VHlwZUZRTiA9IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC50YXJnZXRFbnRpdHlUeXBlLmZ1bGx5UXVhbGlmaWVkTmFtZTtcblx0XHRpZiAoXG5cdFx0XHR0aGlzLnRhcmdldERhdGFNb2RlbFBhdGgudGFyZ2V0RW50aXR5U2V0IHx8XG5cdFx0XHQoKHRoaXMuYmFzZUNvbnRleHRQYXRoLnN0YXJ0c1dpdGgoXCIvXCIpICYmIHRoaXMuYmFzZUNvbnRleHRQYXRoLm1hdGNoKC9cXC8vZykpIHx8IFtdKS5sZW5ndGggPiAxXG5cdFx0KSB7XG5cdFx0XHRsZXQgcmVwbGFjZWRBbm5vdGF0aW9uUGF0aCA9IGFubm90YXRpb25QYXRoLnJlcGxhY2UoZW50aXR5VHlwZUZRTiwgXCIvXCIpO1xuXHRcdFx0aWYgKHJlcGxhY2VkQW5ub3RhdGlvblBhdGgubGVuZ3RoID4gMiAmJiByZXBsYWNlZEFubm90YXRpb25QYXRoWzBdID09PSBcIi9cIiAmJiByZXBsYWNlZEFubm90YXRpb25QYXRoWzFdID09PSBcIi9cIikge1xuXHRcdFx0XHRyZXBsYWNlZEFubm90YXRpb25QYXRoID0gcmVwbGFjZWRBbm5vdGF0aW9uUGF0aC5zdWJzdHIoMSk7XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gdGhpcy5iYXNlQ29udGV4dFBhdGggKyByZXBsYWNlZEFubm90YXRpb25QYXRoO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gXCIvXCIgKyBhbm5vdGF0aW9uUGF0aDtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmUgdGhlIG1hbmlmZXN0IHdyYXBwZXIgZm9yIHRoZSBjdXJyZW50IGNvbnRleHQuXG5cdCAqXG5cdCAqIEByZXR1cm5zIFRoZSBjdXJyZW50IG1hbmlmZXN0IHdyYXBwZXJcblx0ICovXG5cdGdldE1hbmlmZXN0V3JhcHBlcigpOiBNYW5pZmVzdFdyYXBwZXIge1xuXHRcdHJldHVybiB0aGlzLm1hbmlmZXN0V3JhcHBlcjtcblx0fVxuXG5cdGdldERpYWdub3N0aWNzKCk6IElEaWFnbm9zdGljcyB7XG5cdFx0cmV0dXJuIHRoaXMuZGlhZ25vc3RpY3M7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmUgYSBuZXcgY29udmVydGVyIGNvbnRleHQsIHNjb3BlZCBmb3IgYSBkaWZmZXJlbnQgY29udGV4dCBwYXRoLlxuXHQgKlxuXHQgKiBAcGFyYW0ge3N0cmluZ30gY29udGV4dFBhdGggVGhlIHBhdGggd2Ugd2FudCB0byBvcmNoZXN0cmF0ZSB0aGUgY29udmVydGVyIGNvbnRleHQgYXJvdW5kXG5cdCAqIEByZXR1cm5zIHtDb252ZXJ0ZXJDb250ZXh0fVxuXHQgKi9cblx0Z2V0Q29udmVydGVyQ29udGV4dEZvcjxUPihjb250ZXh0UGF0aDogc3RyaW5nKTogQ29udmVydGVyQ29udGV4dCB7XG5cdFx0Y29uc3QgcmVzb2x2ZWRNZXRhUGF0aDogUmVzb2x1dGlvblRhcmdldDxUPiA9IHRoaXMuY29udmVydGVkVHlwZXMucmVzb2x2ZVBhdGgoY29udGV4dFBhdGgpO1xuXHRcdGNvbnN0IHRhcmdldFBhdGggPSBnZXREYXRhTW9kZWxQYXRoRm9yRW50aXR5U2V0KHJlc29sdmVkTWV0YVBhdGgpO1xuXHRcdHJldHVybiBuZXcgQ29udmVydGVyQ29udGV4dCh0aGlzLmNvbnZlcnRlZFR5cGVzLCB0aGlzLm1hbmlmZXN0U2V0dGluZ3MsIHRoaXMuZGlhZ25vc3RpY3MsIHRoaXMubWVyZ2VGbiwgdGFyZ2V0UGF0aCk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0IGFsbCBhbm5vdGF0aW9ucyBvZiBhIGdpdmVuIHRlcm0gYW5kIHZvY2FidWxhcnkgb24gYW4gZW50aXR5IHR5cGVcblx0ICogKG9yIG9uIHRoZSBjdXJyZW50IGVudGl0eSB0eXBlIGlmIGVudGl0eVR5cGUgaXNuJ3Qgc3BlY2lmaWVkKS5cblx0ICpcblx0ICogQHBhcmFtIHZvY2FidWxhcnlOYW1lXG5cdCAqIEBwYXJhbSBhbm5vdGF0aW9uVGVybVxuXHQgKiBAcGFyYW0gW2Fubm90YXRpb25Tb3VyY2VzXVxuXHQgKiBAcmV0dXJucyBBbGwgdGhlIGFubm90YXRpb24gZm9yIGEgc3BlY2lmaWMgdGVybSBhbmQgdm9jYWJ1bGFyeSBmcm9tIGFuIGVudGl0eSB0eXBlXG5cdCAqL1xuXHRnZXRBbm5vdGF0aW9uc0J5VGVybShcblx0XHR2b2NhYnVsYXJ5TmFtZToga2V5b2YgRW50aXR5VHlwZUFubm90YXRpb25zLFxuXHRcdGFubm90YXRpb25UZXJtOiBzdHJpbmcsXG5cdFx0YW5ub3RhdGlvblNvdXJjZXM6IChTZXJ2aWNlT2JqZWN0IHwgdW5kZWZpbmVkKVtdID0gW3RoaXMuZ2V0RW50aXR5VHlwZSgpXVxuXHQpOiBBbm5vdGF0aW9uVGVybTxhbnk+W10ge1xuXHRcdGxldCBvdXRBbm5vdGF0aW9uczogQW5ub3RhdGlvblRlcm08YW55PltdID0gW107XG5cdFx0YW5ub3RhdGlvblNvdXJjZXMuZm9yRWFjaChhbm5vdGF0aW9uU291cmNlID0+IHtcblx0XHRcdGlmIChhbm5vdGF0aW9uU291cmNlKSB7XG5cdFx0XHRcdGNvbnN0IGFubm90YXRpb25zOiBSZWNvcmQ8c3RyaW5nLCBBbm5vdGF0aW9uVGVybTxhbnk+PiA9IGFubm90YXRpb25Tb3VyY2U/LmFubm90YXRpb25zW3ZvY2FidWxhcnlOYW1lXSB8fCB7fTtcblx0XHRcdFx0aWYgKGFubm90YXRpb25zKSB7XG5cdFx0XHRcdFx0b3V0QW5ub3RhdGlvbnMgPSBPYmplY3Qua2V5cyhhbm5vdGF0aW9ucylcblx0XHRcdFx0XHRcdC5maWx0ZXIoYW5ub3RhdGlvbiA9PiBhbm5vdGF0aW9uc1thbm5vdGF0aW9uXS50ZXJtID09PSBhbm5vdGF0aW9uVGVybSlcblx0XHRcdFx0XHRcdC5yZWR1Y2UoKHByZXZpb3VzVmFsdWU6IEFubm90YXRpb25UZXJtPGFueT5bXSwga2V5OiBzdHJpbmcpID0+IHtcblx0XHRcdFx0XHRcdFx0cHJldmlvdXNWYWx1ZS5wdXNoKGFubm90YXRpb25zW2tleV0pO1xuXHRcdFx0XHRcdFx0XHRyZXR1cm4gcHJldmlvdXNWYWx1ZTtcblx0XHRcdFx0XHRcdH0sIG91dEFubm90YXRpb25zKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0pO1xuXHRcdHJldHVybiBvdXRBbm5vdGF0aW9ucztcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgdGhlIHJlbGF0aXZlIG1vZGVsIHBhdGggYmFzZWQgb24gdGhlIGN1cnJlbnQgY29udGV4dCBwYXRoLlxuXHQgKlxuXHQgKiBAcmV0dXJucyB7c3RyaW5nfHVuZGVmaW5lZH0gVGhlIHJlbGF0aXZlIG1vZGVsIHBhdGggb3IgdW5kZWZpbmVkIGlmIHRoZSBwYXRoIGlzIG5vdCByZXNvbHZlYWJsZVxuXHQgKi9cblx0Z2V0UmVsYXRpdmVNb2RlbFBhdGhGdW5jdGlvbigpOiBGdW5jdGlvbiB7XG5cdFx0Y29uc3QgdGFyZ2V0RGF0YU1vZGVsUGF0aCA9IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aDtcblx0XHRyZXR1cm4gZnVuY3Rpb24oc1BhdGg6IHN0cmluZykge1xuXHRcdFx0Y29uc3QgZW5oYW5jZWRQYXRoID0gZW5oYW5jZURhdGFNb2RlbFBhdGgodGFyZ2V0RGF0YU1vZGVsUGF0aCwgc1BhdGgpO1xuXHRcdFx0cmV0dXJuIGdldENvbnRleHRSZWxhdGl2ZVRhcmdldE9iamVjdFBhdGgoZW5oYW5jZWRQYXRoLCB0cnVlKTtcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIENyZWF0ZSB0aGUgY29udmVydGVyIGNvbnRleHQgbmVjZXNzYXJ5IGZvciBhIG1hY3JvIGJhc2VkIG9uIGEgbWV0YW1vZGVsIGNvbnRleHQuXG5cdCAqIEBwYXJhbSBzRW50aXR5U2V0TmFtZVxuXHQgKiBAcGFyYW0gb01ldGFNb2RlbENvbnRleHRcblx0ICogQHBhcmFtIGRpYWdub3N0aWNzXG5cdCAqIEBwYXJhbSBtZXJnZUZuXG5cdCAqIEBwYXJhbSB0YXJnZXREYXRhTW9kZWxQYXRoXG5cdCAqIEBwYXJhbSBtYW5pZmVzdFNldHRpbmdzXG5cdCAqIEByZXR1cm5zIHtDb252ZXJ0ZXJDb250ZXh0fSBUaGUgY3VycmVudCBjb252ZXJ0ZXIgY29udGV4dFxuXHQgKi9cblx0c3RhdGljIGNyZWF0ZUNvbnZlcnRlckNvbnRleHRGb3JNYWNybyhcblx0XHRzRW50aXR5U2V0TmFtZTogc3RyaW5nLFxuXHRcdG9NZXRhTW9kZWxDb250ZXh0OiBDb250ZXh0IHwgT0RhdGFNZXRhTW9kZWwsXG5cdFx0ZGlhZ25vc3RpY3M6IElEaWFnbm9zdGljcyxcblx0XHRtZXJnZUZuOiBGdW5jdGlvbixcblx0XHR0YXJnZXREYXRhTW9kZWxQYXRoOiBEYXRhTW9kZWxPYmplY3RQYXRoIHwgdW5kZWZpbmVkLFxuXHRcdG1hbmlmZXN0U2V0dGluZ3M6IEJhc2VNYW5pZmVzdFNldHRpbmdzID0ge30gYXMgQmFzZU1hbmlmZXN0U2V0dGluZ3Ncblx0KTogQ29udmVydGVyQ29udGV4dCB7XG5cdFx0Y29uc3Qgb01ldGFNb2RlbDogT0RhdGFNZXRhTW9kZWwgPSBvTWV0YU1vZGVsQ29udGV4dC5pc0EoXCJzYXAudWkubW9kZWwub2RhdGEudjQuT0RhdGFNZXRhTW9kZWxcIilcblx0XHRcdD8gKG9NZXRhTW9kZWxDb250ZXh0IGFzIE9EYXRhTWV0YU1vZGVsKVxuXHRcdFx0OiAoKChvTWV0YU1vZGVsQ29udGV4dCBhcyBDb250ZXh0KS5nZXRNb2RlbCgpIGFzIHVua25vd24pIGFzIE9EYXRhTWV0YU1vZGVsKTtcblx0XHRjb25zdCBvQ29udmVydGVyT3V0cHV0ID0gY29udmVydFR5cGVzKG9NZXRhTW9kZWwpO1xuXHRcdGNvbnN0IHRhcmdldEVudGl0eVNldCA9IG9Db252ZXJ0ZXJPdXRwdXQuZW50aXR5U2V0cy5maW5kKGVudGl0eVNldCA9PiBlbnRpdHlTZXQubmFtZSA9PT0gc0VudGl0eVNldE5hbWUpIGFzIEVudGl0eVNldDtcblx0XHRpZiAoIXRhcmdldERhdGFNb2RlbFBhdGgpIHtcblx0XHRcdHRhcmdldERhdGFNb2RlbFBhdGggPSB7XG5cdFx0XHRcdHN0YXJ0aW5nRW50aXR5U2V0OiB0YXJnZXRFbnRpdHlTZXQsXG5cdFx0XHRcdG5hdmlnYXRpb25Qcm9wZXJ0aWVzOiBbXSxcblx0XHRcdFx0dGFyZ2V0RW50aXR5U2V0OiB0YXJnZXRFbnRpdHlTZXQsXG5cdFx0XHRcdHRhcmdldEVudGl0eVR5cGU6IHRhcmdldEVudGl0eVNldC5lbnRpdHlUeXBlLFxuXHRcdFx0XHR0YXJnZXRPYmplY3Q6IHRhcmdldEVudGl0eVNldFxuXHRcdFx0fTtcblx0XHR9XG5cdFx0cmV0dXJuIG5ldyBDb252ZXJ0ZXJDb250ZXh0KG9Db252ZXJ0ZXJPdXRwdXQsIG1hbmlmZXN0U2V0dGluZ3MsIGRpYWdub3N0aWNzLCBtZXJnZUZuLCB0YXJnZXREYXRhTW9kZWxQYXRoKTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBDb252ZXJ0ZXJDb250ZXh0O1xuIl19
|
|
526
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvbnZlcnRlckNvbnRleHQudHMiXSwibmFtZXMiOlsiaXNBbm5vdGF0aW9uVGVybSIsInZBbm5vdGF0aW9uUGF0aCIsImlzU2VydmljZU9iamVjdCIsIm9iamVjdFBhcnQiLCJoYXNPd25Qcm9wZXJ0eSIsImdldERhdGFNb2RlbFBhdGhGb3JFbnRpdHlTZXQiLCJyZXNvbHZlZE1ldGFQYXRoIiwicm9vdEVudGl0eVNldCIsImN1cnJlbnRFbnRpdHlTZXQiLCJwcmV2aW91c0VudGl0eVNldCIsImN1cnJlbnRFbnRpdHlUeXBlIiwibmF2aWdhdGVkUGF0aHMiLCJuYXZpZ2F0aW9uUHJvcGVydGllcyIsIm9iamVjdFBhdGgiLCJmb3JFYWNoIiwiX3R5cGUiLCJwdXNoIiwibmFtZSIsInRhcmdldFR5cGUiLCJuYXZpZ2F0aW9uUHJvcGVydHlCaW5kaW5nIiwiam9pbiIsInVuZGVmaW5lZCIsImVudGl0eVR5cGUiLCJkYXRhTW9kZWxQYXRoIiwic3RhcnRpbmdFbnRpdHlTZXQiLCJ0YXJnZXRFbnRpdHlUeXBlIiwidGFyZ2V0RW50aXR5U2V0IiwiY29udGV4dExvY2F0aW9uIiwidGFyZ2V0T2JqZWN0IiwidGFyZ2V0IiwiQ29udmVydGVyQ29udGV4dCIsImNvbnZlcnRlZFR5cGVzIiwibWFuaWZlc3RTZXR0aW5ncyIsImRpYWdub3N0aWNzIiwibWVyZ2VGbiIsInRhcmdldERhdGFNb2RlbFBhdGgiLCJtYW5pZmVzdFdyYXBwZXIiLCJNYW5pZmVzdFdyYXBwZXIiLCJiYXNlQ29udGV4dFBhdGgiLCJnZXRUYXJnZXRPYmplY3RQYXRoIiwiZnVsbHlRdWFsaWZpZWROYW1lIiwiZW50aXR5VHlwZXMiLCJmaW5kIiwic3RhcnRzV2l0aCIsInJlcGxhY2VBbm5vdGF0aW9uIiwicmVwbGFjZSIsImFubm90YXRpb24iLCJhbm5vdGF0aW9uUGF0aCIsIl9nZXRFbnRpdHlUeXBlRnJvbUZ1bGx5UXVhbGlmaWVkTmFtZSIsIkVycm9yIiwiZ2V0Q29udHJvbENvbmZpZ3VyYXRpb24iLCJzQW5ub3RhdGlvblBhdGgiLCJlbnRpdHlDb250YWluZXIiLCJzaW5nbGV0b25zIiwic2luZ2xldG9uIiwicGFyYW1ldGVyRW50aXR5VHlwZSIsImlzUGFyYW1ldGVyaXplZCIsImFubm90YXRpb25zIiwiQ29tbW9uIiwiUmVzdWx0Q29udGV4dCIsImluZGV4T2YiLCJyZXNvbHZlUGF0aCIsInN0YXJ0aW5nRW50aXR5VHlwZSIsImNvbmNhdCIsImkiLCJjdXJyZW50T2JqZWN0IiwidmlzaXRlZE9iamVjdHMiLCJuYXZPYmplY3QiLCJsZW5ndGgiLCJuYXZQYXRoIiwib3V0RGF0YU1vZGVsUGF0aCIsImNvbnZlcnRlckNvbnRleHQiLCJnZXRUZW1wbGF0ZVR5cGUiLCJlbnRpdHlUeXBlRlFOIiwibWF0Y2giLCJyZXBsYWNlZEFubm90YXRpb25QYXRoIiwic3Vic3RyIiwicGF0aCIsImNvbnRleHRQYXRoIiwidGFyZ2V0UGF0aCIsInZvY2FidWxhcnlOYW1lIiwiYW5ub3RhdGlvblRlcm0iLCJhbm5vdGF0aW9uU291cmNlcyIsImdldEVudGl0eVR5cGUiLCJvdXRBbm5vdGF0aW9ucyIsImFubm90YXRpb25Tb3VyY2UiLCJPYmplY3QiLCJrZXlzIiwiZmlsdGVyIiwidGVybSIsInJlZHVjZSIsInByZXZpb3VzVmFsdWUiLCJrZXkiLCJzUGF0aCIsImVuaGFuY2VkUGF0aCIsImVuaGFuY2VEYXRhTW9kZWxQYXRoIiwiZ2V0Q29udGV4dFJlbGF0aXZlVGFyZ2V0T2JqZWN0UGF0aCIsInNFbnRpdHlTZXROYW1lIiwib01ldGFNb2RlbENvbnRleHQiLCJvTWV0YU1vZGVsIiwiaXNBIiwiZ2V0TW9kZWwiLCJvQ29udmVydGVyT3V0cHV0IiwiY29udmVydFR5cGVzIiwiZW50aXR5U2V0cyIsImVudGl0eVNldCJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7O0FBNkJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU1BLGdCQUFnQixHQUFHLFVBQVNDLGVBQVQs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Z0JBQWdCLENBQUNFLFVBQWpCLENBQTRCOUQsSUFBNUIsQ0FBaUMsVUFBQStELFNBQVM7QUFBQSxpQkFBSUEsU0FBUyxDQUFDeEYsSUFBVixLQUFtQmdGLGNBQXZCO0FBQUEsU0FBMUMsQ0FBeEI7O0FBQ0EsWUFBSSxDQUFDOUQsbUJBQUwsRUFBMEI7QUFDekJBLFVBQUFBLG1CQUFtQixHQUFHO0FBQ3JCWCxZQUFBQSxpQkFBaUIsRUFBRUUsZUFERTtBQUVyQmQsWUFBQUEsb0JBQW9CLEVBQUUsRUFGRDtBQUdyQmMsWUFBQUEsZUFBZSxFQUFFQSxlQUhJO0FBSXJCRCxZQUFBQSxnQkFBZ0IsRUFBRUMsZUFBZSxDQUFDSixVQUpiO0FBS3JCTSxZQUFBQSxZQUFZLEVBQUVGO0FBTE8sV0FBdEI7QUFPQTs7QUFDRCxlQUFPLElBQUlJLGdCQUFKLENBQXFCd0UsZ0JBQXJCLEVBQXVDdEUsZ0JBQXZDLEVBQXlEQyxXQUF6RCxFQUFzRUMsT0FBdEUsRUFBK0VDLG1CQUEvRSxDQUFQO0FBQ0E7Ozs7OztTQUdhTCxnQiIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW5ub3RhdGlvblRlcm0gfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXNcIjtcbmltcG9ydCB7XG5cdEFueUFubm90YXRpb24sXG5cdENvbnZlcnRlck91dHB1dCxcblx0RW50aXR5U2V0LFxuXHRFbnRpdHlUeXBlLFxuXHRFbnRpdHlDb250YWluZXIsXG5cdE5hdmlnYXRpb25Qcm9wZXJ0eSxcblx0U2VydmljZU9iamVjdCxcblx0U2luZ2xldG9uLFxuXHRSZXNvbHV0aW9uVGFyZ2V0LFxuXHRTZXJ2aWNlT2JqZWN0QW5kQW5ub3RhdGlvblxufSBmcm9tIFwiQHNhcC11eC9hbm5vdGF0aW9uLWNvbnZlcnRlclwiO1xuaW1wb3J0IHsgQmFzZU1hbmlmZXN0U2V0dGluZ3MsIFRlbXBsYXRlVHlwZSB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01hbmlmZXN0U2V0dGluZ3NcIjtcbmltcG9ydCB7IENvbnRleHQsIE9EYXRhTWV0YU1vZGVsIH0gZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NFwiO1xuaW1wb3J0IHsgY29udmVydFR5cGVzLCBSZXNvbHZlZFRhcmdldCB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01ldGFNb2RlbENvbnZlcnRlclwiO1xuaW1wb3J0IHsgSURpYWdub3N0aWNzIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvVGVtcGxhdGVDb252ZXJ0ZXJcIjtcbmltcG9ydCB7XG5cdERhdGFNb2RlbE9iamVjdFBhdGgsXG5cdGVuaGFuY2VEYXRhTW9kZWxQYXRoLFxuXHRnZXRDb250ZXh0UmVsYXRpdmVUYXJnZXRPYmplY3RQYXRoLFxuXHRnZXRUYXJnZXRPYmplY3RQYXRoXG59IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL0RhdGFNb2RlbFBhdGhIZWxwZXJcIjtcbmltcG9ydCB7IEVudGl0eVR5cGVBbm5vdGF0aW9ucyB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlcy90eXBlcy9nZW5lcmF0ZWQvRWRtX1R5cGVzXCI7XG5pbXBvcnQgTWFuaWZlc3RXcmFwcGVyIGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01hbmlmZXN0V3JhcHBlclwiO1xuXG5leHBvcnQgdHlwZSBSZXNvbHZlZEFubm90YXRpb25Db250ZXh0ID0ge1xuXHRhbm5vdGF0aW9uOiBBbnlBbm5vdGF0aW9uO1xuXHRjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0O1xufTtcblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciBhbiBvYmplY3QgaXMgYW4gYW5ub3RhdGlvbiB0ZXJtLlxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfEFubm90YXRpb25UZXJtPG9iamVjdD59IHZBbm5vdGF0aW9uUGF0aFxuICogQHJldHVybnMge2Jvb2xlYW59XG4gKi9cbmNvbnN0IGlzQW5ub3RhdGlvblRlcm0gPSBmdW5jdGlvbih2QW5ub3RhdGlvblBhdGg6IHN0cmluZyB8IEFubm90YXRpb25UZXJtPGFueT4pOiB2QW5ub3RhdGlvblBhdGggaXMgQW5ub3RhdGlvblRlcm08YW55PiB7XG5cdHJldHVybiB0eXBlb2YgdkFubm90YXRpb25QYXRoID09PSBcIm9iamVjdFwiO1xufTtcblxuZnVuY3Rpb24gaXNTZXJ2aWNlT2JqZWN0KG9iamVjdFBhcnQ6IFNlcnZpY2VPYmplY3RBbmRBbm5vdGF0aW9uKTogb2JqZWN0UGFydCBpcyBTZXJ2aWNlT2JqZWN0IHtcblx0cmV0dXJuIG9iamVjdFBhcnQgJiYgb2JqZWN0UGFydC5oYXNPd25Qcm9wZXJ0eShcIl90eXBlXCIpO1xufVxuXG5jb25zdCBnZXREYXRhTW9kZWxQYXRoRm9yRW50aXR5U2V0ID0gZnVuY3Rpb24ocmVzb2x2ZWRNZXRhUGF0aDogUmVzb2x1dGlvblRhcmdldDxhbnk+KTogRGF0YU1vZGVsT2JqZWN0UGF0aCB7XG5cdGxldCByb290RW50aXR5U2V0OiBFbnRpdHlTZXQgfCB1bmRlZmluZWQ7XG5cdGxldCBjdXJyZW50RW50aXR5U2V0OiBFbnRpdHlTZXQgfCB1bmRlZmluZWQ7XG5cdGxldCBwcmV2aW91c0VudGl0eVNldDogRW50aXR5U2V0IHwgdW5kZWZpbmVkO1xuXHRsZXQgY3VycmVudEVudGl0eVR5cGU6IEVudGl0eVR5cGUgfCB1bmRlZmluZWQ7XG5cdGxldCBuYXZpZ2F0ZWRQYXRoczogc3RyaW5nW10gPSBbXTtcblx0Y29uc3QgbmF2aWdhdGlvblByb3BlcnRpZXM6IE5hdmlnYXRpb25Qcm9wZXJ0eVtdID0gW107XG5cdHJlc29sdmVkTWV0YVBhdGgub2JqZWN0UGF0aC5mb3JFYWNoKChvYmplY3RQYXJ0OiBTZXJ2aWNlT2JqZWN0QW5kQW5ub3RhdGlvbikgPT4ge1xuXHRcdGlmIChpc1NlcnZpY2VPYmplY3Qob2JqZWN0UGFydCkpIHtcblx0XHRcdHN3aXRjaCAob2JqZWN0UGFydC5fdHlwZSkge1xuXHRcdFx0XHRjYXNlIFwiTmF2aWdhdGlvblByb3BlcnR5XCI6XG5cdFx0XHRcdFx0bmF2aWdhdGVkUGF0aHMucHVzaChvYmplY3RQYXJ0Lm5hbWUpO1xuXHRcdFx0XHRcdG5hdmlnYXRpb25Qcm9wZXJ0aWVzLnB1c2gob2JqZWN0UGFydCk7XG5cdFx0XHRcdFx0Y3VycmVudEVudGl0eVR5cGUgPSBvYmplY3RQYXJ0LnRhcmdldFR5cGU7XG5cdFx0XHRcdFx0aWYgKHByZXZpb3VzRW50aXR5U2V0ICYmIHByZXZpb3VzRW50aXR5U2V0Lm5hdmlnYXRpb25Qcm9wZXJ0eUJpbmRpbmcuaGFzT3duUHJvcGVydHkobmF2aWdhdGVkUGF0aHMuam9pbihcIi9cIikpKSB7XG5cdFx0XHRcdFx0XHRjdXJyZW50RW50aXR5U2V0ID0gcHJldmlvdXNFbnRpdHlTZXQubmF2aWdhdGlvblByb3BlcnR5QmluZGluZ1tuYXZpZ2F0ZWRQYXRocy5qb2luKFwiL1wiKV07XG5cdFx0XHRcdFx0XHRwcmV2aW91c0VudGl0eVNldCA9IGN1cnJlbnRFbnRpdHlTZXQ7XG5cdFx0XHRcdFx0XHRuYXZpZ2F0ZWRQYXRocyA9IFtdO1xuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRjdXJyZW50RW50aXR5U2V0ID0gdW5kZWZpbmVkO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRicmVhaztcblx0XHRcdFx0Y2FzZSBcIkVudGl0eVNldFwiOlxuXHRcdFx0XHRcdGlmIChyb290RW50aXR5U2V0ID09PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0XHRcdHJvb3RFbnRpdHlTZXQgPSBvYmplY3RQYXJ0O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRjdXJyZW50RW50aXR5U2V0ID0gb2JqZWN0UGFydDtcblx0XHRcdFx0XHRwcmV2aW91c0VudGl0eVNldCA9IGN1cnJlbnRFbnRpdHlTZXQ7XG5cdFx0XHRcdFx0Y3VycmVudEVudGl0eVR5cGUgPSBjdXJyZW50RW50aXR5U2V0Py5lbnRpdHlUeXBlO1xuXHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHRkZWZhdWx0OlxuXHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0fVxuXHRcdH1cblx0fSk7XG5cdGNvbnN0IGRhdGFNb2RlbFBhdGg6IERhdGFNb2RlbE9iamVjdFBhdGggPSB7XG5cdFx0c3RhcnRpbmdFbnRpdHlTZXQ6IHJvb3RFbnRpdHlTZXQgYXMgRW50aXR5U2V0LFxuXHRcdHRhcmdldEVudGl0eVR5cGU6IGN1cnJlbnRFbnRpdHlUeXBlIGFzIEVudGl0eVR5cGUsXG5cdFx0dGFyZ2V0RW50aXR5U2V0OiBjdXJyZW50RW50aXR5U2V0LFxuXHRcdG5hdmlnYXRpb25Qcm9wZXJ0aWVzOiBuYXZpZ2F0aW9uUHJvcGVydGllcyxcblx0XHRjb250ZXh0TG9jYXRpb246IHVuZGVmaW5lZCxcblx0XHR0YXJnZXRPYmplY3Q6IHJlc29sdmVkTWV0YVBhdGgudGFyZ2V0XG5cdH07XG5cdGRhdGFNb2RlbFBhdGguY29udGV4dExvY2F0aW9uID0gZGF0YU1vZGVsUGF0aDtcblx0cmV0dXJuIGRhdGFNb2RlbFBhdGg7XG59O1xuXG4vKipcbiAqIENyZWF0ZSBhIENvbnZlcnRlckNvbnRleHQgb2JqZWN0IHRoYXQgd2lsbCBiZSB1c2VkIHdpdGhpbiB0aGUgY29udmVydGVycy5cbiAqXG4gKiBAcGFyYW0ge0NvbnZlcnRlck91dHB1dH0gb0NvbnZlcnRlZFR5cGVzIFRoZSBjb252ZXJ0ZWQgYW5ub3RhdGlvbiBhbmQgc2VydmljZSB0eXBlc1xuICogQHBhcmFtIHtCYXNlTWFuaWZlc3RTZXR0aW5nc30gb01hbmlmZXN0U2V0dGluZ3MgVGhlIG1hbmlmZXN0U2V0dGluZ3MgdGhhdCBhcHBsaWVzIHRvIHRoaXMgcGFnZVxuICogQHBhcmFtIHtUZW1wbGF0ZVR5cGV9IHRlbXBsYXRlVHlwZSBUaGUgdHlwZSBvZiB0ZW1wbGF0ZSB3ZSdyZSBsb29raW5nIGF0IHJpZ2h0IG5vd1xuICogQHBhcmFtIHtJU2hlbGxTZXJ2aWNlc1Byb3h5fSBzaGVsbFNlcnZpY2VzIFRoZSBjdXJyZW50IGluc3RhbmNlIG9mIHRoZSBzaGVsbHNlcnZpY2VcbiAqIEBwYXJhbSB7SURpYWdub3N0aWNzfSBkaWFnbm9zdGljcyBUaGUgZGlhZ25vc3RpY3Mgc2hpbVxuICogQHBhcmFtIHtGdW5jdGlvbn0gbWVyZ2VGbiBUaGUgZnVuY3Rpb24gdG8gYmUgdXNlZCB0byBwZXJmb20gc29tZSBkZWVwIG1lcmdlcyBiZXR3ZWVuIG9iamVjdFxuICogQHBhcmFtIHtEYXRhTW9kZWxPYmplY3RQYXRofSB0YXJnZXREYXRhTW9kZWxQYXRoIFRoZSBnbG9iYWwgcGF0aCB0byByZWFjaCB0aGUgZW50aXR5U2V0XG4gKlxuICogQHJldHVybnMge0NvbnZlcnRlckNvbnRleHR9IEEgY29udmVydGVyIGNvbnRleHQgZm9yIHRoZSBjb252ZXJ0ZXJzXG4gKi9cbmNsYXNzIENvbnZlcnRlckNvbnRleHQge1xuXHRwcml2YXRlIG1hbmlmZXN0V3JhcHBlcjogTWFuaWZlc3RXcmFwcGVyO1xuXHRwcml2YXRlIGJhc2VDb250ZXh0UGF0aDogc3RyaW5nO1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdHByaXZhdGUgY29udmVydGVkVHlwZXM6IENvbnZlcnRlck91dHB1dCxcblx0XHRwcml2YXRlIG1hbmlmZXN0U2V0dGluZ3M6IEJhc2VNYW5pZmVzdFNldHRpbmdzLFxuXHRcdHByaXZhdGUgZGlhZ25vc3RpY3M6IElEaWFnbm9zdGljcyxcblx0XHRwcml2YXRlIG1lcmdlRm46IEZ1bmN0aW9uLFxuXHRcdHByaXZhdGUgdGFyZ2V0RGF0YU1vZGVsUGF0aDogRGF0YU1vZGVsT2JqZWN0UGF0aFxuXHQpIHtcblx0XHR0aGlzLm1hbmlmZXN0V3JhcHBlciA9IG5ldyBNYW5pZmVzdFdyYXBwZXIodGhpcy5tYW5pZmVzdFNldHRpbmdzLCBtZXJnZUZuKTtcblx0XHR0aGlzLmJhc2VDb250ZXh0UGF0aCA9IGdldFRhcmdldE9iamVjdFBhdGgodGhpcy50YXJnZXREYXRhTW9kZWxQYXRoKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZSB0aGUgcHJvcGVydHkgYmFzZWQgb24gdGhlIHBhdGguXG5cdCAqXG5cdCAqIEBwYXJhbSBmdWxseVF1YWxpZmllZE5hbWUgVGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lXG5cdCAqIEByZXR1cm5zIHtQcm9wZXJ0eX0gVGhlIHByb3BlcnR5IEVudGl0eVR5cGUgYmFzZWRcblx0ICovXG5cdHByaXZhdGUgX2dldEVudGl0eVR5cGVGcm9tRnVsbHlRdWFsaWZpZWROYW1lKGZ1bGx5UXVhbGlmaWVkTmFtZTogc3RyaW5nKTogRW50aXR5VHlwZSB8IHVuZGVmaW5lZCB7XG5cdFx0Y29uc3QgdGFyZ2V0RW50aXR5VHlwZSA9IHRoaXMuY29udmVydGVkVHlwZXMuZW50aXR5VHlwZXMuZmluZChlbnRpdHlUeXBlID0+IHtcblx0XHRcdGlmIChmdWxseVF1YWxpZmllZE5hbWUuc3RhcnRzV2l0aChlbnRpdHlUeXBlLmZ1bGx5UXVhbGlmaWVkTmFtZSkpIHtcblx0XHRcdFx0Y29uc3QgcmVwbGFjZUFubm90YXRpb24gPSBmdWxseVF1YWxpZmllZE5hbWUucmVwbGFjZShlbnRpdHlUeXBlLmZ1bGx5UXVhbGlmaWVkTmFtZSwgXCJcIik7XG5cdFx0XHRcdHJldHVybiByZXBsYWNlQW5ub3RhdGlvbi5zdGFydHNXaXRoKFwiL1wiKSB8fCByZXBsYWNlQW5ub3RhdGlvbi5zdGFydHNXaXRoKFwiQFwiKTtcblx0XHRcdH1cblx0XHRcdHJldHVybiBmYWxzZTtcblx0XHR9KTtcblx0XHRyZXR1cm4gdGFyZ2V0RW50aXR5VHlwZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZSB0aGUgZW50aXR5VHlwZSBhc3NvY2lhdGVkIHdpdGggYW4gYW5ub3RhdGlvbiBvYmplY3QuXG5cdCAqXG5cdCAqIEBwYXJhbSBhbm5vdGF0aW9uIFRoZSBhbm5vdGF0aW9uIG9iamVjdCBmb3Igd2hpY2ggd2Ugd2FudCB0byBmaW5kIHRoZSBlbnRpdHlUeXBlXG5cdCAqIEByZXR1cm5zIHtFbnRpdHlUeXBlfSBUaGUgRW50aXR5VHlwZSB0aGUgYW5ub3RhdGlvbiByZWZlcnMgdG9cblx0ICovXG5cdGdldEFubm90YXRpb25FbnRpdHlUeXBlKGFubm90YXRpb24/OiBBbm5vdGF0aW9uVGVybTxhbnk+KTogRW50aXR5VHlwZSB7XG5cdFx0aWYgKGFubm90YXRpb24pIHtcblx0XHRcdGNvbnN0IGFubm90YXRpb25QYXRoID0gYW5ub3RhdGlvbi5mdWxseVF1YWxpZmllZE5hbWU7XG5cdFx0XHRjb25zdCB0YXJnZXRFbnRpdHlUeXBlID0gdGhpcy5fZ2V0RW50aXR5VHlwZUZyb21GdWxseVF1YWxpZmllZE5hbWUoYW5ub3RhdGlvblBhdGgpO1xuXHRcdFx0aWYgKCF0YXJnZXRFbnRpdHlUeXBlKSB7XG5cdFx0XHRcdHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCBmaW5kIEVudGl0eSBUeXBlIGZvciBcIiArIGFubm90YXRpb24uZnVsbHlRdWFsaWZpZWROYW1lKTtcblx0XHRcdH1cblx0XHRcdHJldHVybiB0YXJnZXRFbnRpdHlUeXBlO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gdGhpcy50YXJnZXREYXRhTW9kZWxQYXRoLnRhcmdldEVudGl0eVR5cGU7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlIHRoZSBtYW5pZmVzdCBzZXR0aW5ncyBkZWZpbmVkIGZvciBhIHNwZWNpZmljIGNvbnRyb2wgd2l0aGluIGNvbnRyb2xDb25maWd1cmF0aW9uLlxuXHQgKlxuXHQgKiBAcGFyYW0gdkFubm90YXRpb25QYXRoIFRoZSBhbm5vdGF0aW9uIHBhdGggb3Igb2JqZWN0IHRvIGV2YWx1YXRlXG5cdCAqIEByZXR1cm5zIFRoZSBjb250cm9sIGNvbmZpZ3VyYXRpb24gZm9yIHRoYXQgc3BlY2lmaWMgYW5udG9hdGlvbiBwYXRoIGlmIGl0IGV4aXN0c1xuXHQgKi9cblx0Z2V0TWFuaWZlc3RDb250cm9sQ29uZmlndXJhdGlvbih2QW5ub3RhdGlvblBhdGg6IHN0cmluZyB8IEFubm90YXRpb25UZXJtPGFueT4pOiBhbnkge1xuXHRcdGlmIChpc0Fubm90YXRpb25UZXJtKHZBbm5vdGF0aW9uUGF0aCkpIHtcblx0XHRcdHJldHVybiB0aGlzLm1hbmlmZXN0V3JhcHBlci5nZXRDb250cm9sQ29uZmlndXJhdGlvbihcblx0XHRcdFx0dkFubm90YXRpb25QYXRoLmZ1bGx5UXVhbGlmaWVkTmFtZS5yZXBsYWNlKHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC50YXJnZXRFbnRpdHlUeXBlLmZ1bGx5UXVhbGlmaWVkTmFtZSwgXCJcIilcblx0XHRcdCk7XG5cdFx0fVxuXHRcdHJldHVybiB0aGlzLm1hbmlmZXN0V3JhcHBlci5nZXRDb250cm9sQ29uZmlndXJhdGlvbih2QW5ub3RhdGlvblBhdGgpO1xuXHR9XG5cblx0LyoqXG5cdCAqIENyZWF0ZSBhbiBhYnNvbHV0ZSBhbm5vdGF0aW9uIHBhdGggYmFzZWQgb24gdGhlIGN1cnJlbnQgbWV0YSBtb2RlbCBjb250ZXh0LlxuXHQgKlxuXHQgKiBAcGFyYW0gc0Fubm90YXRpb25QYXRoIFRoZSByZWxhdGl2ZSBhbm5vdGF0aW9uIHBhdGhcblx0ICogQHJldHVybnMgVGhlIGNvcnJlY3QgYW5ub3RhdGlvbiBwYXRoIGJhc2VkIG9uIHRoZSBjdXJyZW50IGNvbnRleHRcblx0ICovXG5cdGdldEFic29sdXRlQW5ub3RhdGlvblBhdGgoc0Fubm90YXRpb25QYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdGlmICghc0Fubm90YXRpb25QYXRoKSB7XG5cdFx0XHRyZXR1cm4gc0Fubm90YXRpb25QYXRoO1xuXHRcdH1cblx0XHRpZiAoc0Fubm90YXRpb25QYXRoWzBdID09PSBcIi9cIikge1xuXHRcdFx0cmV0dXJuIHNBbm5vdGF0aW9uUGF0aDtcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXMuYmFzZUNvbnRleHRQYXRoICsgXCIvXCIgKyBzQW5ub3RhdGlvblBhdGg7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmUgdGhlIGN1cnJlbnQgZW50aXR5U2V0LlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUaGUgY3VycmVudCBFbnRpdHlTZXQgaWYgaXQgZXhpc3RzLlxuXHQgKi9cblx0Z2V0RW50aXR5U2V0KCk6IEVudGl0eVNldCB8IHVuZGVmaW5lZCB7XG5cdFx0cmV0dXJuIHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC50YXJnZXRFbnRpdHlTZXQ7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmUgdGhlIGNvbnRleHQgcGF0aC5cblx0ICpcblx0ICogQHJldHVybnMgVGhlIGNvbnRleHQgcGF0aCBvZiB0aGUgY29udmVydGVyLlxuXHQgKi9cblx0Z2V0Q29udGV4dFBhdGgoKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gdGhpcy5iYXNlQ29udGV4dFBhdGg7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmUgdGhlIGN1cnJlbnQgZGF0YSBtb2RlbCBvYmplY3QgcGF0aC5cblx0ICpcblx0ICogQHJldHVybnMgVGhlIGN1cnJlbnQgZGF0YSBtb2RlbCBvYmplY3QgcGF0aFxuXHQgKi9cblx0Z2V0RGF0YU1vZGVsT2JqZWN0UGF0aCgpOiBEYXRhTW9kZWxPYmplY3RQYXRoIHtcblx0XHRyZXR1cm4gdGhpcy50YXJnZXREYXRhTW9kZWxQYXRoO1xuXHR9XG5cblx0LyoqXG5cdCAqIEdldCB0aGUgRW50aXR5Q29udGFpbmVyLlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUaGUgY3VycmVudCBzZXJ2aWNlIEVudGl0eUNvbnRhaW5lclxuXHQgKi9cblx0Z2V0RW50aXR5Q29udGFpbmVyKCk6IEVudGl0eUNvbnRhaW5lciB7XG5cdFx0cmV0dXJuIHRoaXMuY29udmVydGVkVHlwZXMuZW50aXR5Q29udGFpbmVyO1xuXHR9XG5cblx0LyoqXG5cdCAqIEdldCB0aGUgRW50aXR5VHlwZSBiYXNlZCBvbiB0aGUgZnVsbHkgcXVhbGlmaWVkIG5hbWUuXG5cdCAqXG5cdCAqIEByZXR1cm5zIFRoZSBjdXJyZW50IEVudGl0eVR5cGUuXG5cdCAqL1xuXHRnZXRFbnRpdHlUeXBlKCk6IEVudGl0eVR5cGUge1xuXHRcdHJldHVybiB0aGlzLnRhcmdldERhdGFNb2RlbFBhdGgudGFyZ2V0RW50aXR5VHlwZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZXRzIGEgc2luZ2xldG9uIGJhc2VkIG9uIHRoZSBmdWxseSBxdWFsaWZpZWQgbmFtZS5cblx0ICpcblx0ICogQHBhcmFtIHtzdHJpbmd9IGZ1bGx5UXVhbGlmaWVkTmFtZSBUaGUgZnVsbHkgcXVhbGlmaWVkIG5hbWUgb2YgdGhlIHNpbmdsZXRvblxuXHQgKiBAcmV0dXJucyB7U2luZ2xldG9uIHwgdW5kZWZpbmVkfSBUaGUgc2luZ2xldG9uIGluc3RhbmNlLlxuXHQgKi9cblx0Z2V0U2luZ2xldG9uKGZ1bGx5UXVhbGlmaWVkTmFtZTogc3RyaW5nKTogU2luZ2xldG9uIHwgdW5kZWZpbmVkIHtcblx0XHRyZXR1cm4gdGhpcy5jb252ZXJ0ZWRUeXBlcy5zaW5nbGV0b25zLmZpbmQoc2luZ2xldG9uID0+IHNpbmdsZXRvbi5mdWxseVF1YWxpZmllZE5hbWUgPT09IGZ1bGx5UXVhbGlmaWVkTmFtZSk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0cyB0aGUgZW50aXR5IHR5cGUgb2YgdGhlIHBhcmFtZXRlciBpbiBjYXNlIG9mIGEgcGFyYW1ldGVyaXplZCBzZXJ2aWNlLlxuXHQgKiBAcmV0dXJucyB7RW50aXR5VHlwZX0gVGhlIGVudGl0eSB0eXBlIG9mIHRoZSBwYXJhbWV0ZXJcblx0ICovXG5cdGdldFBhcmFtZXRlckVudGl0eVR5cGUoKTogRW50aXR5VHlwZSB7XG5cdFx0Y29uc3QgcGFyYW1ldGVyRW50aXR5VHlwZSA9IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC5zdGFydGluZ0VudGl0eVNldC5lbnRpdHlUeXBlO1xuXHRcdGNvbnN0IGlzUGFyYW1ldGVyaXplZCA9ICEhcGFyYW1ldGVyRW50aXR5VHlwZS5hbm5vdGF0aW9ucz8uQ29tbW9uPy5SZXN1bHRDb250ZXh0O1xuXHRcdHJldHVybiAoaXNQYXJhbWV0ZXJpemVkICYmIHBhcmFtZXRlckVudGl0eVR5cGUpIGFzIEVudGl0eVR5cGU7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmVzIGFuIGFubm90YXRpb24gZnJvbSBhbiBlbnRpdHkgdHlwZSBiYXNlZCBvbiBhbm5vdGF0aW9uIHBhdGguXG5cdCAqXG5cdCAqIEBwYXJhbSBhbm5vdGF0aW9uUGF0aCBUaGUgYW5ub3RhdGlvbiBwYXRoIHRvIGJlIGV2YWx1YXRlZFxuXHQgKiBAcmV0dXJucyBUaGUgdGFyZ2V0IGFubm90YXRpb24gcGF0aCBhcyB3ZWxsIGFzIGEgY29udmVydGVyIGNvbnRleHQgdG8gZ28gd2l0aCBpdFxuXHQgKi9cblx0Z2V0RW50aXR5VHlwZUFubm90YXRpb24oYW5ub3RhdGlvblBhdGg6IHN0cmluZyk6IFJlc29sdmVkQW5ub3RhdGlvbkNvbnRleHQge1xuXHRcdGlmIChhbm5vdGF0aW9uUGF0aC5pbmRleE9mKFwiQFwiKSA9PT0gLTEpIHtcblx0XHRcdGFubm90YXRpb25QYXRoID0gXCJAXCIgKyBhbm5vdGF0aW9uUGF0aDtcblx0XHR9XG5cdFx0Y29uc3QgdGFyZ2V0T2JqZWN0OiBSZXNvbHZlZFRhcmdldCA9IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC50YXJnZXRFbnRpdHlUeXBlLnJlc29sdmVQYXRoKGFubm90YXRpb25QYXRoLCB0cnVlKTtcblxuXHRcdGxldCByb290RW50aXR5U2V0ID0gdGhpcy50YXJnZXREYXRhTW9kZWxQYXRoLnRhcmdldEVudGl0eVNldDtcblx0XHRsZXQgY3VycmVudEVudGl0eVR5cGUgPSB0aGlzLnRhcmdldERhdGFNb2RlbFBhdGgudGFyZ2V0RW50aXR5VHlwZTtcblx0XHRjb25zdCBzdGFydGluZ0VudGl0eVR5cGUgPSB0aGlzLnRhcmdldERhdGFNb2RlbFBhdGguc3RhcnRpbmdFbnRpdHlTZXQuZW50aXR5VHlwZTtcblx0XHRjb25zdCBuYXZpZ2F0aW9uUHJvcGVydGllcyA9IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC5uYXZpZ2F0aW9uUHJvcGVydGllcy5jb25jYXQoKTtcblx0XHRsZXQgaSA9IDE7XG5cdFx0bGV0IGN1cnJlbnRPYmplY3Q7XG5cdFx0bGV0IG5hdmlnYXRlZFBhdGhzID0gW107XG5cdFx0Y29uc3QgdmlzaXRlZE9iamVjdHMgPSB0YXJnZXRPYmplY3QudmlzaXRlZE9iamVjdHM7XG5cdFx0Ly8gSW4gY2FzZSBvZiBwYXJhbWV0ZXJpemVkIHNlcnZpY2Vcblx0XHRpZiAoIXJvb3RFbnRpdHlTZXQgJiYgc3RhcnRpbmdFbnRpdHlUeXBlLmFubm90YXRpb25zLkNvbW1vbj8uUmVzdWx0Q29udGV4dCkge1xuXHRcdFx0cm9vdEVudGl0eVNldCA9IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC5zdGFydGluZ0VudGl0eVNldDtcblx0XHRcdHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC5uYXZpZ2F0aW9uUHJvcGVydGllcy5mb3JFYWNoKGZ1bmN0aW9uKG5hdk9iamVjdCkge1xuXHRcdFx0XHRuYXZpZ2F0ZWRQYXRocy5wdXNoKG5hdk9iamVjdC5uYW1lKTtcblx0XHRcdH0pO1xuXHRcdH1cblx0XHR3aGlsZSAoaSA8IHZpc2l0ZWRPYmplY3RzLmxlbmd0aCkge1xuXHRcdFx0Y3VycmVudE9iamVjdCA9IHZpc2l0ZWRPYmplY3RzW2krK107XG5cdFx0XHRpZiAoY3VycmVudE9iamVjdC5fdHlwZSA9PT0gXCJOYXZpZ2F0aW9uUHJvcGVydHlcIikge1xuXHRcdFx0XHRuYXZpZ2F0ZWRQYXRocy5wdXNoKGN1cnJlbnRPYmplY3QubmFtZSk7XG5cdFx0XHRcdG5hdmlnYXRpb25Qcm9wZXJ0aWVzLnB1c2goY3VycmVudE9iamVjdCBhcyBOYXZpZ2F0aW9uUHJvcGVydHkpO1xuXHRcdFx0XHRjdXJyZW50RW50aXR5VHlwZSA9IChjdXJyZW50T2JqZWN0IGFzIE5hdmlnYXRpb25Qcm9wZXJ0eSkudGFyZ2V0VHlwZTtcblx0XHRcdFx0aWYgKHJvb3RFbnRpdHlTZXQgJiYgcm9vdEVudGl0eVNldC5uYXZpZ2F0aW9uUHJvcGVydHlCaW5kaW5nLmhhc093blByb3BlcnR5KG5hdmlnYXRlZFBhdGhzLmpvaW4oXCIvXCIpKSkge1xuXHRcdFx0XHRcdGNvbnN0IG5hdlBhdGggPSBuYXZpZ2F0ZWRQYXRocy5qb2luKFwiL1wiKTtcblx0XHRcdFx0XHRyb290RW50aXR5U2V0ID1cblx0XHRcdFx0XHRcdHJvb3RFbnRpdHlTZXQubmF2aWdhdGlvblByb3BlcnR5QmluZGluZ1tjdXJyZW50T2JqZWN0Lm5hbWVdIHx8IHJvb3RFbnRpdHlTZXQubmF2aWdhdGlvblByb3BlcnR5QmluZGluZ1tuYXZQYXRoXTtcblx0XHRcdFx0XHRuYXZpZ2F0ZWRQYXRocyA9IFtdO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHJvb3RFbnRpdHlTZXQgPSB1bmRlZmluZWQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdGlmIChjdXJyZW50T2JqZWN0Ll90eXBlID09PSBcIkVudGl0eVNldFwiKSB7XG5cdFx0XHRcdHJvb3RFbnRpdHlTZXQgPSBjdXJyZW50T2JqZWN0IGFzIEVudGl0eVNldDtcblx0XHRcdFx0Y3VycmVudEVudGl0eVR5cGUgPSByb290RW50aXR5U2V0LmVudGl0eVR5cGU7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdGNvbnN0IG91dERhdGFNb2RlbFBhdGggPSB7XG5cdFx0XHRzdGFydGluZ0VudGl0eVNldDogdGhpcy50YXJnZXREYXRhTW9kZWxQYXRoLnN0YXJ0aW5nRW50aXR5U2V0LFxuXHRcdFx0dGFyZ2V0RW50aXR5U2V0OiByb290RW50aXR5U2V0LFxuXHRcdFx0dGFyZ2V0RW50aXR5VHlwZTogY3VycmVudEVudGl0eVR5cGUsXG5cdFx0XHR0YXJnZXRPYmplY3Q6IG5hdmlnYXRpb25Qcm9wZXJ0aWVzW25hdmlnYXRpb25Qcm9wZXJ0aWVzLmxlbmd0aCAtIDFdLFxuXHRcdFx0bmF2aWdhdGlvblByb3BlcnRpZXMsXG5cdFx0XHRjb250ZXh0TG9jYXRpb246IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC5jb250ZXh0TG9jYXRpb25cblx0XHR9O1xuXHRcdHJldHVybiB7XG5cdFx0XHRhbm5vdGF0aW9uOiB0YXJnZXRPYmplY3QudGFyZ2V0IGFzIEFueUFubm90YXRpb24sXG5cdFx0XHRjb252ZXJ0ZXJDb250ZXh0OiBuZXcgQ29udmVydGVyQ29udGV4dChcblx0XHRcdFx0dGhpcy5jb252ZXJ0ZWRUeXBlcyxcblx0XHRcdFx0dGhpcy5tYW5pZmVzdFNldHRpbmdzLFxuXHRcdFx0XHR0aGlzLmRpYWdub3N0aWNzLFxuXHRcdFx0XHR0aGlzLm1lcmdlRm4sXG5cdFx0XHRcdG91dERhdGFNb2RlbFBhdGhcblx0XHRcdClcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlIHRoZSB0eXBlIG9mIHRlbXBsYXRlIHdlJ3JlIHdvcmtpbmcgb24gKGUuZy4gTGlzdFJlcG9ydCAvIE9iamVjdFBhZ2UgLyAuLi4pLlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUaGUgY3VycmVudCB0ZW5wbGF0ZSB0eXBlXG5cdCAqL1xuXHRnZXRUZW1wbGF0ZVR5cGUoKTogVGVtcGxhdGVUeXBlIHtcblx0XHRyZXR1cm4gdGhpcy5tYW5pZmVzdFdyYXBwZXIuZ2V0VGVtcGxhdGVUeXBlKCk7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmUgYSByZWxhdGl2ZSBhbm5vdGF0aW9uIHBhdGggYmV0d2VlbiBhbiBhbm5vdGF0aW9uIHBhdGggYW5kIGFuIGVudGl0eSB0eXBlLlxuXHQgKlxuXHQgKiBAcGFyYW0gYW5ub3RhdGlvblBhdGhcblx0ICogQHBhcmFtIGVudGl0eVR5cGVcblx0ICogQHJldHVybnMgVGhlIHJlbGF0aXZlIGFubnRvdGF0aW9uIHBhdGguXG5cdCAqL1xuXHRnZXRSZWxhdGl2ZUFubm90YXRpb25QYXRoKGFubm90YXRpb25QYXRoOiBzdHJpbmcsIGVudGl0eVR5cGU6IEVudGl0eVR5cGUpOiBzdHJpbmcge1xuXHRcdHJldHVybiBhbm5vdGF0aW9uUGF0aC5yZXBsYWNlKGVudGl0eVR5cGUuZnVsbHlRdWFsaWZpZWROYW1lLCBcIlwiKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBUcmFuc2Zvcm0gYW4gZW50aXR5VHlwZSBiYXNlZCBwYXRoIHRvIGFuIGVudGl0eVNldCBiYXNlZCBvbmUgKHVpNSB0ZW1wbGF0aW5nIGdlbmVyYWxseSBleHBlY3QgYW4gZW50aXR5U2V0QmFzZWRQYXRoKS5cblx0ICpcblx0ICogQHBhcmFtIGFubm90YXRpb25QYXRoXG5cdCAqIEByZXR1cm5zIFRoZSBFbnRpdHlTZXQgYmFzZWQgYW5ub3RhdGlvbiBwYXRoXG5cdCAqL1xuXHRnZXRFbnRpdHlTZXRCYXNlZEFubm90YXRpb25QYXRoKGFubm90YXRpb25QYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdGlmICghYW5ub3RhdGlvblBhdGgpIHtcblx0XHRcdHJldHVybiBhbm5vdGF0aW9uUGF0aDtcblx0XHR9XG5cdFx0Y29uc3QgZW50aXR5VHlwZUZRTiA9IHRoaXMudGFyZ2V0RGF0YU1vZGVsUGF0aC50YXJnZXRFbnRpdHlUeXBlLmZ1bGx5UXVhbGlmaWVkTmFtZTtcblx0XHRpZiAoXG5cdFx0XHR0aGlzLnRhcmdldERhdGFNb2RlbFBhdGgudGFyZ2V0RW50aXR5U2V0IHx8XG5cdFx0XHQoKHRoaXMuYmFzZUNvbnRleHRQYXRoLnN0YXJ0c1dpdGgoXCIvXCIpICYmIHRoaXMuYmFzZUNvbnRleHRQYXRoLm1hdGNoKC9cXC8vZykpIHx8IFtdKS5sZW5ndGggPiAxXG5cdFx0KSB7XG5cdFx0XHRsZXQgcmVwbGFjZWRBbm5vdGF0aW9uUGF0aCA9IGFubm90YXRpb25QYXRoLnJlcGxhY2UoZW50aXR5VHlwZUZRTiwgXCIvXCIpO1xuXHRcdFx0aWYgKHJlcGxhY2VkQW5ub3RhdGlvblBhdGgubGVuZ3RoID4gMiAmJiByZXBsYWNlZEFubm90YXRpb25QYXRoWzBdID09PSBcIi9cIiAmJiByZXBsYWNlZEFubm90YXRpb25QYXRoWzFdID09PSBcIi9cIikge1xuXHRcdFx0XHRyZXBsYWNlZEFubm90YXRpb25QYXRoID0gcmVwbGFjZWRBbm5vdGF0aW9uUGF0aC5zdWJzdHIoMSk7XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gdGhpcy5iYXNlQ29udGV4dFBhdGggKyByZXBsYWNlZEFubm90YXRpb25QYXRoO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gXCIvXCIgKyBhbm5vdGF0aW9uUGF0aDtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmUgdGhlIG1hbmlmZXN0IHdyYXBwZXIgZm9yIHRoZSBjdXJyZW50IGNvbnRleHQuXG5cdCAqXG5cdCAqIEByZXR1cm5zIFRoZSBjdXJyZW50IG1hbmlmZXN0IHdyYXBwZXJcblx0ICovXG5cdGdldE1hbmlmZXN0V3JhcHBlcigpOiBNYW5pZmVzdFdyYXBwZXIge1xuXHRcdHJldHVybiB0aGlzLm1hbmlmZXN0V3JhcHBlcjtcblx0fVxuXG5cdGdldERpYWdub3N0aWNzKCk6IElEaWFnbm9zdGljcyB7XG5cdFx0cmV0dXJuIHRoaXMuZGlhZ25vc3RpY3M7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmUgdGhlIHRhcmdldCBmcm9tIGFuIGFic29sdXRlIHBhdGguXG5cdCAqXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSBwYXRoIFRoZSBwYXRoIHdlIHdhbnQgdG8gZ2V0IHRoZSB0YXJnZXRcblx0ICogQHJldHVybnMge0NvbnZlcnRlckNvbnRleHR9XG5cdCAqL1xuXHRyZXNvbHZlQWJzb2x1dGVQYXRoPFQ+KHBhdGg6IHN0cmluZyk6IFJlc29sdXRpb25UYXJnZXQ8VD4ge1xuXHRcdHJldHVybiB0aGlzLmNvbnZlcnRlZFR5cGVzLnJlc29sdmVQYXRoKHBhdGgpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlIGEgbmV3IGNvbnZlcnRlciBjb250ZXh0LCBzY29wZWQgZm9yIGEgZGlmZmVyZW50IGNvbnRleHQgcGF0aC5cblx0ICpcblx0ICogQHBhcmFtIHtzdHJpbmd9IGNvbnRleHRQYXRoIFRoZSBwYXRoIHdlIHdhbnQgdG8gb3JjaGVzdHJhdGUgdGhlIGNvbnZlcnRlciBjb250ZXh0IGFyb3VuZFxuXHQgKiBAcmV0dXJucyB7Q29udmVydGVyQ29udGV4dH1cblx0ICovXG5cdGdldENvbnZlcnRlckNvbnRleHRGb3I8VD4oY29udGV4dFBhdGg6IHN0cmluZyk6IENvbnZlcnRlckNvbnRleHQge1xuXHRcdGNvbnN0IHJlc29sdmVkTWV0YVBhdGg6IFJlc29sdXRpb25UYXJnZXQ8VD4gPSB0aGlzLmNvbnZlcnRlZFR5cGVzLnJlc29sdmVQYXRoKGNvbnRleHRQYXRoKTtcblx0XHRjb25zdCB0YXJnZXRQYXRoID0gZ2V0RGF0YU1vZGVsUGF0aEZvckVudGl0eVNldChyZXNvbHZlZE1ldGFQYXRoKTtcblx0XHRyZXR1cm4gbmV3IENvbnZlcnRlckNvbnRleHQodGhpcy5jb252ZXJ0ZWRUeXBlcywgdGhpcy5tYW5pZmVzdFNldHRpbmdzLCB0aGlzLmRpYWdub3N0aWNzLCB0aGlzLm1lcmdlRm4sIHRhcmdldFBhdGgpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEdldCBhbGwgYW5ub3RhdGlvbnMgb2YgYSBnaXZlbiB0ZXJtIGFuZCB2b2NhYnVsYXJ5IG9uIGFuIGVudGl0eSB0eXBlXG5cdCAqIChvciBvbiB0aGUgY3VycmVudCBlbnRpdHkgdHlwZSBpZiBlbnRpdHlUeXBlIGlzbid0IHNwZWNpZmllZCkuXG5cdCAqXG5cdCAqIEBwYXJhbSB2b2NhYnVsYXJ5TmFtZVxuXHQgKiBAcGFyYW0gYW5ub3RhdGlvblRlcm1cblx0ICogQHBhcmFtIFthbm5vdGF0aW9uU291cmNlc11cblx0ICogQHJldHVybnMgQWxsIHRoZSBhbm5vdGF0aW9uIGZvciBhIHNwZWNpZmljIHRlcm0gYW5kIHZvY2FidWxhcnkgZnJvbSBhbiBlbnRpdHkgdHlwZVxuXHQgKi9cblx0Z2V0QW5ub3RhdGlvbnNCeVRlcm0oXG5cdFx0dm9jYWJ1bGFyeU5hbWU6IGtleW9mIEVudGl0eVR5cGVBbm5vdGF0aW9ucyxcblx0XHRhbm5vdGF0aW9uVGVybTogc3RyaW5nLFxuXHRcdGFubm90YXRpb25Tb3VyY2VzOiAoU2VydmljZU9iamVjdCB8IHVuZGVmaW5lZClbXSA9IFt0aGlzLmdldEVudGl0eVR5cGUoKV1cblx0KTogQW5ub3RhdGlvblRlcm08YW55PltdIHtcblx0XHRsZXQgb3V0QW5ub3RhdGlvbnM6IEFubm90YXRpb25UZXJtPGFueT5bXSA9IFtdO1xuXHRcdGFubm90YXRpb25Tb3VyY2VzLmZvckVhY2goYW5ub3RhdGlvblNvdXJjZSA9PiB7XG5cdFx0XHRpZiAoYW5ub3RhdGlvblNvdXJjZSkge1xuXHRcdFx0XHRjb25zdCBhbm5vdGF0aW9uczogUmVjb3JkPHN0cmluZywgQW5ub3RhdGlvblRlcm08YW55Pj4gPSBhbm5vdGF0aW9uU291cmNlPy5hbm5vdGF0aW9uc1t2b2NhYnVsYXJ5TmFtZV0gfHwge307XG5cdFx0XHRcdGlmIChhbm5vdGF0aW9ucykge1xuXHRcdFx0XHRcdG91dEFubm90YXRpb25zID0gT2JqZWN0LmtleXMoYW5ub3RhdGlvbnMpXG5cdFx0XHRcdFx0XHQuZmlsdGVyKGFubm90YXRpb24gPT4gYW5ub3RhdGlvbnNbYW5ub3RhdGlvbl0udGVybSA9PT0gYW5ub3RhdGlvblRlcm0pXG5cdFx0XHRcdFx0XHQucmVkdWNlKChwcmV2aW91c1ZhbHVlOiBBbm5vdGF0aW9uVGVybTxhbnk+W10sIGtleTogc3RyaW5nKSA9PiB7XG5cdFx0XHRcdFx0XHRcdHByZXZpb3VzVmFsdWUucHVzaChhbm5vdGF0aW9uc1trZXldKTtcblx0XHRcdFx0XHRcdFx0cmV0dXJuIHByZXZpb3VzVmFsdWU7XG5cdFx0XHRcdFx0XHR9LCBvdXRBbm5vdGF0aW9ucyk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9KTtcblx0XHRyZXR1cm4gb3V0QW5ub3RhdGlvbnM7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmVzIHRoZSByZWxhdGl2ZSBtb2RlbCBwYXRoIGJhc2VkIG9uIHRoZSBjdXJyZW50IGNvbnRleHQgcGF0aC5cblx0ICpcblx0ICogQHJldHVybnMge3N0cmluZ3x1bmRlZmluZWR9IFRoZSByZWxhdGl2ZSBtb2RlbCBwYXRoIG9yIHVuZGVmaW5lZCBpZiB0aGUgcGF0aCBpcyBub3QgcmVzb2x2ZWFibGVcblx0ICovXG5cdGdldFJlbGF0aXZlTW9kZWxQYXRoRnVuY3Rpb24oKTogRnVuY3Rpb24ge1xuXHRcdGNvbnN0IHRhcmdldERhdGFNb2RlbFBhdGggPSB0aGlzLnRhcmdldERhdGFNb2RlbFBhdGg7XG5cdFx0cmV0dXJuIGZ1bmN0aW9uKHNQYXRoOiBzdHJpbmcpIHtcblx0XHRcdGNvbnN0IGVuaGFuY2VkUGF0aCA9IGVuaGFuY2VEYXRhTW9kZWxQYXRoKHRhcmdldERhdGFNb2RlbFBhdGgsIHNQYXRoKTtcblx0XHRcdHJldHVybiBnZXRDb250ZXh0UmVsYXRpdmVUYXJnZXRPYmplY3RQYXRoKGVuaGFuY2VkUGF0aCwgdHJ1ZSk7XG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDcmVhdGUgdGhlIGNvbnZlcnRlciBjb250ZXh0IG5lY2Vzc2FyeSBmb3IgYSBtYWNybyBiYXNlZCBvbiBhIG1ldGFtb2RlbCBjb250ZXh0LlxuXHQgKiBAcGFyYW0gc0VudGl0eVNldE5hbWVcblx0ICogQHBhcmFtIG9NZXRhTW9kZWxDb250ZXh0XG5cdCAqIEBwYXJhbSBkaWFnbm9zdGljc1xuXHQgKiBAcGFyYW0gbWVyZ2VGblxuXHQgKiBAcGFyYW0gdGFyZ2V0RGF0YU1vZGVsUGF0aFxuXHQgKiBAcGFyYW0gbWFuaWZlc3RTZXR0aW5nc1xuXHQgKiBAcmV0dXJucyB7Q29udmVydGVyQ29udGV4dH0gVGhlIGN1cnJlbnQgY29udmVydGVyIGNvbnRleHRcblx0ICovXG5cdHN0YXRpYyBjcmVhdGVDb252ZXJ0ZXJDb250ZXh0Rm9yTWFjcm8oXG5cdFx0c0VudGl0eVNldE5hbWU6IHN0cmluZyxcblx0XHRvTWV0YU1vZGVsQ29udGV4dDogQ29udGV4dCB8IE9EYXRhTWV0YU1vZGVsLFxuXHRcdGRpYWdub3N0aWNzOiBJRGlhZ25vc3RpY3MsXG5cdFx0bWVyZ2VGbjogRnVuY3Rpb24sXG5cdFx0dGFyZ2V0RGF0YU1vZGVsUGF0aDogRGF0YU1vZGVsT2JqZWN0UGF0aCB8IHVuZGVmaW5lZCxcblx0XHRtYW5pZmVzdFNldHRpbmdzOiBCYXNlTWFuaWZlc3RTZXR0aW5ncyA9IHt9IGFzIEJhc2VNYW5pZmVzdFNldHRpbmdzXG5cdCk6IENvbnZlcnRlckNvbnRleHQge1xuXHRcdGNvbnN0IG9NZXRhTW9kZWw6IE9EYXRhTWV0YU1vZGVsID0gb01ldGFNb2RlbENvbnRleHQuaXNBKFwic2FwLnVpLm1vZGVsLm9kYXRhLnY0Lk9EYXRhTWV0YU1vZGVsXCIpXG5cdFx0XHQ/IChvTWV0YU1vZGVsQ29udGV4dCBhcyBPRGF0YU1ldGFNb2RlbClcblx0XHRcdDogKCgob01ldGFNb2RlbENvbnRleHQgYXMgQ29udGV4dCkuZ2V0TW9kZWwoKSBhcyB1bmtub3duKSBhcyBPRGF0YU1ldGFNb2RlbCk7XG5cdFx0Y29uc3Qgb0NvbnZlcnRlck91dHB1dCA9IGNvbnZlcnRUeXBlcyhvTWV0YU1vZGVsKTtcblx0XHRjb25zdCB0YXJnZXRFbnRpdHlTZXQgPSBvQ29udmVydGVyT3V0cHV0LmVudGl0eVNldHMuZmluZChlbnRpdHlTZXQgPT4gZW50aXR5U2V0Lm5hbWUgPT09IHNFbnRpdHlTZXROYW1lKSBhcyBFbnRpdHlTZXQ7XG5cdFx0aWYgKCF0YXJnZXREYXRhTW9kZWxQYXRoKSB7XG5cdFx0XHR0YXJnZXREYXRhTW9kZWxQYXRoID0ge1xuXHRcdFx0XHRzdGFydGluZ0VudGl0eVNldDogdGFyZ2V0RW50aXR5U2V0LFxuXHRcdFx0XHRuYXZpZ2F0aW9uUHJvcGVydGllczogW10sXG5cdFx0XHRcdHRhcmdldEVudGl0eVNldDogdGFyZ2V0RW50aXR5U2V0LFxuXHRcdFx0XHR0YXJnZXRFbnRpdHlUeXBlOiB0YXJnZXRFbnRpdHlTZXQuZW50aXR5VHlwZSxcblx0XHRcdFx0dGFyZ2V0T2JqZWN0OiB0YXJnZXRFbnRpdHlTZXRcblx0XHRcdH07XG5cdFx0fVxuXHRcdHJldHVybiBuZXcgQ29udmVydGVyQ29udGV4dChvQ29udmVydGVyT3V0cHV0LCBtYW5pZmVzdFNldHRpbmdzLCBkaWFnbm9zdGljcywgbWVyZ2VGbiwgdGFyZ2V0RGF0YU1vZGVsUGF0aCk7XG5cdH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgQ29udmVydGVyQ29udGV4dDtcbiJdfQ==
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/fe/core/converters/MetaModelConverter","sap/fe/core/templating/DataModelPathHelper","sap/fe/core/converters/ManifestWrapper"],function(M,D,a){"use strict";var g=D.getTargetObjectPath;var b=D.getContextRelativeTargetObjectPath;var e=D.enhanceDataModelPath;var c=M.convertTypes;function _(i,l){if(!(i instanceof l)){throw new TypeError("Cannot call a class as a function");}}function d(t,p){for(var i=0;i<p.length;i++){var l=p[i];l.enumerable=l.enumerable||false;l.configurable=true;if("value"in l)l.writable=true;Object.defineProperty(t,l.key,l);}}function f(i,p,s){if(p)d(i.prototype,p);if(s)d(i,s);return i;}var h=function(A){return typeof A==="object";};function j(o){return o&&o.hasOwnProperty("_type");}var k=function(r){var i;var l;var p;var m;var n=[];var o=[];r.objectPath.forEach(function(s){var t;if(j(s)){switch(s._type){case"NavigationProperty":n.push(s.name);o.push(s);m=s.targetType;if(p&&p.navigationPropertyBinding.hasOwnProperty(n.join("/"))){l=p.navigationPropertyBinding[n.join("/")];p=l;n=[];}else{l=undefined;}break;case"EntitySet":if(i===undefined){i=s;}l=s;p=l;m=(t=l)===null||t===void 0?void 0:t.entityType;break;default:break;}}});var q={startingEntitySet:i,targetEntityType:m,targetEntitySet:l,navigationProperties:o,contextLocation:undefined,targetObject:r.target};q.contextLocation=q;return q;};var C=function(){function C(i,m,l,n,t){_(this,C);this.convertedTypes=i;this.manifestSettings=m;this.diagnostics=l;this.mergeFn=n;this.targetDataModelPath=t;this.manifestWrapper=new a(this.manifestSettings,n);this.baseContextPath=g(this.targetDataModelPath);}f(C,[{key:"_getEntityTypeFromFullyQualifiedName",value:function l(i){var t=this.convertedTypes.entityTypes.find(function(m){if(i.startsWith(m.fullyQualifiedName)){var r=i.replace(m.fullyQualifiedName,"");return r.startsWith("/")||r.startsWith("@");}return false;});return t;}},{key:"getAnnotationEntityType",value:function m(i){if(i){var l=i.fullyQualifiedName;var t=this._getEntityTypeFromFullyQualifiedName(l);if(!t){throw new Error("Cannot find Entity Type for "+i.fullyQualifiedName);}return t;}else{return this.targetDataModelPath.targetEntityType;}}},{key:"getManifestControlConfiguration",value:function i(A){if(h(A)){return this.manifestWrapper.getControlConfiguration(A.fullyQualifiedName.replace(this.targetDataModelPath.targetEntityType.fullyQualifiedName,""));}return this.manifestWrapper.getControlConfiguration(A);}},{key:"getAbsoluteAnnotationPath",value:function i(A){if(!A){return A;}if(A[0]==="/"){return A;}return this.baseContextPath+"/"+A;}},{key:"getEntitySet",value:function i(){return this.targetDataModelPath.targetEntitySet;}},{key:"getContextPath",value:function i(){return this.baseContextPath;}},{key:"getDataModelObjectPath",value:function i(){return this.targetDataModelPath;}},{key:"getEntityContainer",value:function i(){return this.convertedTypes.entityContainer;}},{key:"getEntityType",value:function i(){return this.targetDataModelPath.targetEntityType;}},{key:"getSingleton",value:function l(i){return this.convertedTypes.singletons.find(function(s){return s.fullyQualifiedName===i;});}},{key:"getParameterEntityType",value:function n(){var i,l;var p=this.targetDataModelPath.startingEntitySet.entityType;var m=!!((i=p.annotations)!==null&&i!==void 0&&(l=i.Common)!==null&&l!==void 0&&l.ResultContext);return m&&p;}},{key:"getEntityTypeAnnotation",value:function x(l){var m;if(l.indexOf("@")===-1){l="@"+l;}var t=this.targetDataModelPath.targetEntityType.resolvePath(l,true);var r=this.targetDataModelPath.targetEntitySet;var n=this.targetDataModelPath.targetEntityType;var s=this.targetDataModelPath.startingEntitySet.entityType;var o=this.targetDataModelPath.navigationProperties.concat();var i=1;var p;var q=[];var v=t.visitedObjects;if(!r&&(m=s.annotations.Common)!==null&&m!==void 0&&m.ResultContext){r=this.targetDataModelPath.startingEntitySet;this.targetDataModelPath.navigationProperties.forEach(function(y){q.push(y.name);});}while(i<v.length){p=v[i++];if(p._type==="NavigationProperty"){q.push(p.name);o.push(p);n=p.targetType;if(r&&r.navigationPropertyBinding.hasOwnProperty(q.join("/"))){var u=q.join("/");r=r.navigationPropertyBinding[p.name]||r.navigationPropertyBinding[u];q=[];}else{r=undefined;}}if(p._type==="EntitySet"){r=p;n=r.entityType;}}var w={startingEntitySet:this.targetDataModelPath.startingEntitySet,targetEntitySet:r,targetEntityType:n,targetObject:o[o.length-1],navigationProperties:o,contextLocation:this.targetDataModelPath.contextLocation};return{annotation:t.target,converterContext:new C(this.convertedTypes,this.manifestSettings,this.diagnostics,this.mergeFn,w)};}},{key:"getTemplateType",value:function i(){return this.manifestWrapper.getTemplateType();}},{key:"getRelativeAnnotationPath",value:function m(i,l){return i.replace(l.fullyQualifiedName,"");}},{key:"getEntitySetBasedAnnotationPath",value:function m(i){if(!i){return i;}var l=this.targetDataModelPath.targetEntityType.fullyQualifiedName;if(this.targetDataModelPath.targetEntitySet||(this.baseContextPath.startsWith("/")&&this.baseContextPath.match(/\//g)||[]).length>1){var r=i.replace(l,"/");if(r.length>2&&r[0]==="/"&&r[1]==="/"){r=r.substr(1);}return this.baseContextPath+r;}else{return"/"+i;}}},{key:"getManifestWrapper",value:function i(){return this.manifestWrapper;}},{key:"getDiagnostics",value:function i(){return this.diagnostics;}},{key:"getConverterContextFor",value:function l(i){var r=this.convertedTypes.resolvePath(i);var t=k(r);return new C(this.convertedTypes,this.manifestSettings,this.diagnostics,this.mergeFn,t);}},{key:"getAnnotationsByTerm",value:function m(v,i){var l=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[this.getEntityType()];var o=[];l.forEach(function(n){if(n){var p=(n===null||n===void 0?void 0:n.annotations[v])||{};if(p){o=Object.keys(p).filter(function(q){return p[q].term===i;}).reduce(function(q,r){q.push(p[r]);return q;},o);}}});return o;}},{key:"getRelativeModelPathFunction",value:function i(){var t=this.targetDataModelPath;return function(p){var l=e(t,p);return b(l,true);};}}],[{key:"createConverterContextForMacro",value:function r(E,m,i,l,t){var n=arguments.length>5&&arguments[5]!==undefined?arguments[5]:{};var o=m.isA("sap.ui.model.odata.v4.ODataMetaModel")?m:m.getModel();var p=c(o);var q=p.entitySets.find(function(s){return s.name===E;});if(!t){t={startingEntitySet:q,navigationProperties:[],targetEntitySet:q,targetEntityType:q.entityType,targetObject:q};}return new C(p,n,i,l,t);}}]);return C;}();return C;},false);
|
|
5
|
+
sap.ui.define(["sap/fe/core/converters/MetaModelConverter","sap/fe/core/templating/DataModelPathHelper","sap/fe/core/converters/ManifestWrapper"],function(M,D,a){"use strict";var g=D.getTargetObjectPath;var b=D.getContextRelativeTargetObjectPath;var e=D.enhanceDataModelPath;var c=M.convertTypes;function _(i,l){if(!(i instanceof l)){throw new TypeError("Cannot call a class as a function");}}function d(t,p){for(var i=0;i<p.length;i++){var l=p[i];l.enumerable=l.enumerable||false;l.configurable=true;if("value"in l)l.writable=true;Object.defineProperty(t,l.key,l);}}function f(i,p,s){if(p)d(i.prototype,p);if(s)d(i,s);return i;}var h=function(A){return typeof A==="object";};function j(o){return o&&o.hasOwnProperty("_type");}var k=function(r){var i;var l;var p;var m;var n=[];var o=[];r.objectPath.forEach(function(s){var t;if(j(s)){switch(s._type){case"NavigationProperty":n.push(s.name);o.push(s);m=s.targetType;if(p&&p.navigationPropertyBinding.hasOwnProperty(n.join("/"))){l=p.navigationPropertyBinding[n.join("/")];p=l;n=[];}else{l=undefined;}break;case"EntitySet":if(i===undefined){i=s;}l=s;p=l;m=(t=l)===null||t===void 0?void 0:t.entityType;break;default:break;}}});var q={startingEntitySet:i,targetEntityType:m,targetEntitySet:l,navigationProperties:o,contextLocation:undefined,targetObject:r.target};q.contextLocation=q;return q;};var C=function(){function C(i,m,l,n,t){_(this,C);this.convertedTypes=i;this.manifestSettings=m;this.diagnostics=l;this.mergeFn=n;this.targetDataModelPath=t;this.manifestWrapper=new a(this.manifestSettings,n);this.baseContextPath=g(this.targetDataModelPath);}f(C,[{key:"_getEntityTypeFromFullyQualifiedName",value:function l(i){var t=this.convertedTypes.entityTypes.find(function(m){if(i.startsWith(m.fullyQualifiedName)){var r=i.replace(m.fullyQualifiedName,"");return r.startsWith("/")||r.startsWith("@");}return false;});return t;}},{key:"getAnnotationEntityType",value:function m(i){if(i){var l=i.fullyQualifiedName;var t=this._getEntityTypeFromFullyQualifiedName(l);if(!t){throw new Error("Cannot find Entity Type for "+i.fullyQualifiedName);}return t;}else{return this.targetDataModelPath.targetEntityType;}}},{key:"getManifestControlConfiguration",value:function i(A){if(h(A)){return this.manifestWrapper.getControlConfiguration(A.fullyQualifiedName.replace(this.targetDataModelPath.targetEntityType.fullyQualifiedName,""));}return this.manifestWrapper.getControlConfiguration(A);}},{key:"getAbsoluteAnnotationPath",value:function i(A){if(!A){return A;}if(A[0]==="/"){return A;}return this.baseContextPath+"/"+A;}},{key:"getEntitySet",value:function i(){return this.targetDataModelPath.targetEntitySet;}},{key:"getContextPath",value:function i(){return this.baseContextPath;}},{key:"getDataModelObjectPath",value:function i(){return this.targetDataModelPath;}},{key:"getEntityContainer",value:function i(){return this.convertedTypes.entityContainer;}},{key:"getEntityType",value:function i(){return this.targetDataModelPath.targetEntityType;}},{key:"getSingleton",value:function l(i){return this.convertedTypes.singletons.find(function(s){return s.fullyQualifiedName===i;});}},{key:"getParameterEntityType",value:function n(){var i,l;var p=this.targetDataModelPath.startingEntitySet.entityType;var m=!!((i=p.annotations)!==null&&i!==void 0&&(l=i.Common)!==null&&l!==void 0&&l.ResultContext);return m&&p;}},{key:"getEntityTypeAnnotation",value:function x(l){var m;if(l.indexOf("@")===-1){l="@"+l;}var t=this.targetDataModelPath.targetEntityType.resolvePath(l,true);var r=this.targetDataModelPath.targetEntitySet;var n=this.targetDataModelPath.targetEntityType;var s=this.targetDataModelPath.startingEntitySet.entityType;var o=this.targetDataModelPath.navigationProperties.concat();var i=1;var p;var q=[];var v=t.visitedObjects;if(!r&&(m=s.annotations.Common)!==null&&m!==void 0&&m.ResultContext){r=this.targetDataModelPath.startingEntitySet;this.targetDataModelPath.navigationProperties.forEach(function(y){q.push(y.name);});}while(i<v.length){p=v[i++];if(p._type==="NavigationProperty"){q.push(p.name);o.push(p);n=p.targetType;if(r&&r.navigationPropertyBinding.hasOwnProperty(q.join("/"))){var u=q.join("/");r=r.navigationPropertyBinding[p.name]||r.navigationPropertyBinding[u];q=[];}else{r=undefined;}}if(p._type==="EntitySet"){r=p;n=r.entityType;}}var w={startingEntitySet:this.targetDataModelPath.startingEntitySet,targetEntitySet:r,targetEntityType:n,targetObject:o[o.length-1],navigationProperties:o,contextLocation:this.targetDataModelPath.contextLocation};return{annotation:t.target,converterContext:new C(this.convertedTypes,this.manifestSettings,this.diagnostics,this.mergeFn,w)};}},{key:"getTemplateType",value:function i(){return this.manifestWrapper.getTemplateType();}},{key:"getRelativeAnnotationPath",value:function m(i,l){return i.replace(l.fullyQualifiedName,"");}},{key:"getEntitySetBasedAnnotationPath",value:function m(i){if(!i){return i;}var l=this.targetDataModelPath.targetEntityType.fullyQualifiedName;if(this.targetDataModelPath.targetEntitySet||(this.baseContextPath.startsWith("/")&&this.baseContextPath.match(/\//g)||[]).length>1){var r=i.replace(l,"/");if(r.length>2&&r[0]==="/"&&r[1]==="/"){r=r.substr(1);}return this.baseContextPath+r;}else{return"/"+i;}}},{key:"getManifestWrapper",value:function i(){return this.manifestWrapper;}},{key:"getDiagnostics",value:function i(){return this.diagnostics;}},{key:"resolveAbsolutePath",value:function r(p){return this.convertedTypes.resolvePath(p);}},{key:"getConverterContextFor",value:function l(i){var r=this.convertedTypes.resolvePath(i);var t=k(r);return new C(this.convertedTypes,this.manifestSettings,this.diagnostics,this.mergeFn,t);}},{key:"getAnnotationsByTerm",value:function m(v,i){var l=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[this.getEntityType()];var o=[];l.forEach(function(n){if(n){var p=(n===null||n===void 0?void 0:n.annotations[v])||{};if(p){o=Object.keys(p).filter(function(q){return p[q].term===i;}).reduce(function(q,r){q.push(p[r]);return q;},o);}}});return o;}},{key:"getRelativeModelPathFunction",value:function i(){var t=this.targetDataModelPath;return function(p){var l=e(t,p);return b(l,true);};}}],[{key:"createConverterContextForMacro",value:function r(E,m,i,l,t){var n=arguments.length>5&&arguments[5]!==undefined?arguments[5]:{};var o=m.isA("sap.ui.model.odata.v4.ODataMetaModel")?m:m.getModel();var p=c(o);var q=p.entitySets.find(function(s){return s.name===E;});if(!t){t={startingEntitySet:q,navigationProperties:[],targetEntitySet:q,targetEntityType:q.entityType,targetObject:q};}return new C(p,n,i,l,t);}}]);return C;}();return C;},false);
|
|
@@ -375,6 +375,16 @@ class ConverterContext {
|
|
|
375
375
|
return this.diagnostics;
|
|
376
376
|
}
|
|
377
377
|
|
|
378
|
+
/**
|
|
379
|
+
* Retrieve the target from an absolute path.
|
|
380
|
+
*
|
|
381
|
+
* @param {string} path The path we want to get the target
|
|
382
|
+
* @returns {ConverterContext}
|
|
383
|
+
*/
|
|
384
|
+
resolveAbsolutePath<T>(path: string): ResolutionTarget<T> {
|
|
385
|
+
return this.convertedTypes.resolvePath(path);
|
|
386
|
+
}
|
|
387
|
+
|
|
378
388
|
/**
|
|
379
389
|
* Retrieve a new converter context, scoped for a different context path.
|
|
380
390
|
*
|
|
@@ -88,4 +88,4 @@ sap.ui.define([], function () {
|
|
|
88
88
|
_exports.SelectionMode = SelectionMode;
|
|
89
89
|
return _exports;
|
|
90
90
|
}, false);
|
|
91
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1hbmlmZXN0U2V0dGluZ3MudHMiXSwibmFtZXMiOlsiVGVtcGxhdGVUeXBlIiwiQWN0aW9uVHlwZSIsIlZpc3VhbGl6YXRpb25UeXBlIiwiVmFyaWFudE1hbmFnZW1lbnRUeXBlIiwiQ3JlYXRpb25Nb2RlIiwiQXZhaWxhYmlsaXR5VHlwZSIsIkhvcml6b250YWxBbGlnbiIsIlNlbGVjdGlvbk1vZGUiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7OztNQUdZQSxZOzthQUFBQSxZO0FBQUFBLElBQUFBLFk7QUFBQUEsSUFBQUEsWTtBQUFBQSxJQUFBQSxZO0tBQUFBLFksS0FBQUEsWTs7O01BTUFDLFU7O2FBQUFBLFU7QUFBQUEsSUFBQUEsVTtBQUFBQSxJQUFBQSxVO0FBQUFBLElBQUFBLFU7QUFBQUEsSUFBQUEsVTtBQUFBQSxJQUFBQSxVO0FBQUFBLElBQUFBLFU7QUFBQUEsSUFBQUEsVTtBQUFBQSxJQUFBQSxVO0FBQUFBLElBQUFBLFU7QUFBQUEsSUFBQUEsVTtLQUFBQSxVLEtBQUFBLFU7OztNQWtCQUMsaUI7O2FBQUFBLGlCO0FBQUFBLElBQUFBLGlCO0FBQUFBLElBQUFBLGlCO0tBQUFBLGlCLEtBQUFBLGlCOzs7TUFLQUMscUI7O2FBQUFBLHFCO0FBQUFBLElBQUFBLHFCO0FBQUFBLElBQUFBLHFCO0FBQUFBLElBQUFBLHFCO0tBQUFBLHFCLEtBQUFBLHFCOzs7TUFXQUMsWTs7YUFBQUEsWTtBQUFBQSxJQUFBQSxZO0FBQUFBLElBQUFBLFk7QUFBQUEsSUFBQUEsWTtLQUFBQSxZLEtBQUFBLFk7OztNQU1BQyxnQjs7YUFBQUEsZ0I7QUFBQUEsSUFBQUEsZ0I7QUFBQUEsSUFBQUEsZ0I7QUFBQUEsSUFBQUEsZ0I7S0FBQUEsZ0IsS0FBQUEsZ0I7OztNQU1BQyxlOzthQUFBQSxlO0FBQUFBLElBQUFBLGU7QUFBQUEsSUFBQUEsZTtBQUFBQSxJQUFBQSxlO0tBQUFBLGUsS0FBQUEsZTs7O01BeVVBQyxhOzthQUFBQSxhO0FBQUFBLElBQUFBLGE7QUFBQUEsSUFBQUEsYTtBQUFBQSxJQUFBQSxhO0FBQUFBLElBQUFBLGE7S0FBQUEsYSxLQUFBQSxhIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25maWd1cmFibGVSZWNvcmQsIFBvc2l0aW9uLCBQb3NpdGlvbmFibGUgfSBmcm9tIFwiLi9oZWxwZXJzL0NvbmZpZ3VyYWJsZU9iamVjdFwiO1xuaW1wb3J0IHsgRmxleFNldHRpbmdzLCBIZWFkZXJGYWNldFR5cGUgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9jb250cm9scy9PYmplY3RQYWdlL0hlYWRlckZhY2V0XCI7XG5pbXBvcnQgeyBCaW5kaW5nRXhwcmVzc2lvbiB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0JpbmRpbmdFeHByZXNzaW9uXCI7XG5pbXBvcnQgeyBUYWJsZVR5cGUgfSBmcm9tIFwiLi9jb250cm9scy9Db21tb24vVGFibGVcIjtcblxuZXhwb3J0IGVudW0gVGVtcGxhdGVUeXBlIHtcblx0TGlzdFJlcG9ydCA9IFwiTGlzdFJlcG9ydFwiLFxuXHRPYmplY3RQYWdlID0gXCJPYmplY3RQYWdlXCIsXG5cdEFuYWx5dGljYWxMaXN0UGFnZSA9IFwiQW5hbHl0aWNhbExpc3RQYWdlXCJcbn1cblxuZXhwb3J0IGVudW0gQWN0aW9uVHlwZSB7XG5cdERhdGFGaWVsZEZvckFjdGlvbiA9IFwiRm9yQWN0aW9uXCIsXG5cdERhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbiA9IFwiRm9yTmF2aWdhdGlvblwiLFxuXHREZWZhdWx0ID0gXCJEZWZhdWx0XCIsXG5cdFByaW1hcnkgPSBcIlByaW1hcnlcIixcblx0U2Vjb25kYXJ5ID0gXCJTZWNvbmRhcnlcIixcblx0U3dpdGNoVG9BY3RpdmVPYmplY3QgPSBcIlN3aXRjaFRvQWN0aXZlT2JqZWN0XCIsXG5cdFN3aXRjaFRvRHJhZnRPYmplY3QgPSBcIlN3aXRjaFRvRHJhZnRPYmplY3RcIixcblx0RGVmYXVsdEFwcGx5ID0gXCJEZWZhdWx0QXBwbHlcIixcblx0TWVudSA9IFwiTWVudVwiLFxuXHRTaG93Rm9ybURldGFpbHMgPSBcIlNob3dGb3JtRGV0YWlsc1wiXG59XG5cbmV4cG9ydCB0eXBlIE1hbmlmZXN0U2lkZUNvbnRlbnQgPSB7XG5cdHRlbXBsYXRlOiBzdHJpbmc7XG5cdGVxdWFsU3BsaXQ/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IGVudW0gVmlzdWFsaXphdGlvblR5cGUge1xuXHRUYWJsZSA9IFwiVGFibGVcIixcblx0Q2hhcnQgPSBcIkNoYXJ0XCJcbn1cblxuZXhwb3J0IGVudW0gVmFyaWFudE1hbmFnZW1lbnRUeXBlIHtcblx0UGFnZSA9IFwiUGFnZVwiLFxuXHRDb250cm9sID0gXCJDb250cm9sXCIsXG5cdE5vbmUgPSBcIk5vbmVcIlxufVxuXG5leHBvcnQgdHlwZSBDb250ZW50RGVuc2l0aWVzVHlwZSA9IHtcblx0Y29tcGFjdD86IGJvb2xlYW47XG5cdGNvenk/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IGVudW0gQ3JlYXRpb25Nb2RlIHtcblx0TmV3UGFnZSA9IFwiTmV3UGFnZVwiLFxuXHRJbmxpbmUgPSBcIklubGluZVwiLFxuXHRDcmVhdGlvblJvdyA9IFwiQ3JlYXRpb25Sb3dcIlxufVxuXG5leHBvcnQgZW51bSBBdmFpbGFiaWxpdHlUeXBlIHtcblx0RGVmYXVsdCA9IFwiRGVmYXVsdFwiLFxuXHRBZGFwdGF0aW9uID0gXCJBZGFwdGF0aW9uXCIsXG5cdEhpZGRlbiA9IFwiSGlkZGVuXCJcbn1cblxuZXhwb3J0IGVudW0gSG9yaXpvbnRhbEFsaWduIHtcblx0RW5kID0gXCJFbmRcIixcblx0QmVnaW4gPSBcIkJlZ2luXCIsXG5cdENlbnRlciA9IFwiQ2VudGVyXCJcbn1cblxuZXhwb3J0IHR5cGUgVGFibGVDb2x1bW5TZXR0aW5ncyA9IHtcblx0bWljcm9DaGFydFNpemU/OiBzdHJpbmc7XG5cdHNob3dNaWNyb0NoYXJ0TGFiZWw/OiBib29sZWFuO1xufTtcblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGZvcm1hdCBvcHRpb25zIGZvciBtdWx0aWxpbmUgdGV4dCBmaWVsZHMgb24gYSBmb3JtIG9yIGluIGEgdGFibGVcbiAqL1xuZXhwb3J0IHR5cGUgRm9ybWF0T3B0aW9uc1R5cGUgPSB7XG5cdGhhc0RyYWZ0SW5kaWNhdG9yPzogYm9vbGVhbjtcblx0c2VtYW50aWNrZXlzPzogc3RyaW5nW107XG5cdHRleHRMaW5lc0VkaXQ/OiBudW1iZXI7XG5cdHRleHRNYXhDaGFyYWN0ZXJzRGlzcGxheT86IG51bWJlcjtcblx0dGV4dEV4cGFuZEJlaGF2aW9yRGlzcGxheT86IHN0cmluZztcbn07XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvZiBhIEtQSSBpbiB0aGUgbWFuaWZlc3RcbiAqL1xuZXhwb3J0IHR5cGUgS1BJQ29uZmlndXJhdGlvbiA9IHtcblx0bW9kZWw/OiBzdHJpbmc7XG5cdGVudGl0eVNldDogc3RyaW5nO1xuXHRxdWFsaWZpZXI6IHN0cmluZztcbn07XG5cbi8qKlxuICogQHR5cGVkZWYgQmFzZU1hbmlmZXN0U2V0dGluZ3NcbiAqL1xuZXhwb3J0IHR5cGUgQmFzZU1hbmlmZXN0U2V0dGluZ3MgPSB7XG5cdGNvbnRlbnQ/OiB7XG5cdFx0aGVhZGVyPzoge1xuXHRcdFx0ZmFjZXRzPzogQ29uZmlndXJhYmxlUmVjb3JkPE1hbmlmZXN0SGVhZGVyRmFjZXQ+O1xuXHRcdFx0YWN0aW9ucz86IENvbmZpZ3VyYWJsZVJlY29yZDxNYW5pZmVzdEFjdGlvbj47XG5cdFx0fTtcblx0XHRmb290ZXI/OiB7XG5cdFx0XHRhY3Rpb25zPzogQ29uZmlndXJhYmxlUmVjb3JkPE1hbmlmZXN0QWN0aW9uPjtcblx0XHR9O1xuXHR9O1xuXHRjb250cm9sQ29uZmlndXJhdGlvbj86IHtcblx0XHRbYW5ub3RhdGlvblBhdGg6IHN0cmluZ106IENvbnRyb2xNYW5pZmVzdENvbmZpZ3VyYXRpb247XG5cdH0gJiB7XG5cdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuTGluZUl0ZW1cIj86IFRhYmxlTWFuaWZlc3RDb25maWd1cmF0aW9uO1xuXHRcdFwiQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkZhY2V0c1wiPzogRmFjZXRzQ29udHJvbENvbmZpZ3VyYXRpb247XG5cdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuSGVhZGVyRmFjZXRzXCI/OiBIZWFkZXJGYWNldHNDb250cm9sQ29uZmlndXJhdGlvbjtcblx0XHRcIkBjb20uc2FwLnZvY2FidWxhcmllcy5VSS52MS5TZWxlY3Rpb25GaWVsZHNcIj86IEZpbHRlck1hbmlmZXN0Q29uZmlndXJhdGlvbjtcblx0fTtcblx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlO1xuXHRlbnRpdHlTZXQ6IHN0cmluZztcblx0bmF2aWdhdGlvbj86IHtcblx0XHRbbmF2aWdhdGlvblBhdGg6IHN0cmluZ106IE5hdmlnYXRpb25TZXR0aW5nc0NvbmZpZ3VyYXRpb247XG5cdH07XG5cdHZpZXdMZXZlbD86IG51bWJlcjtcblx0ZmNsRW5hYmxlZD86IGJvb2xlYW47XG5cdGNvbnRleHRQYXRoPzogc3RyaW5nO1xuXHR2YXJpYW50TWFuYWdlbWVudD86IFZhcmlhbnRNYW5hZ2VtZW50VHlwZTtcblx0ZGVmYXVsdFRlbXBsYXRlQW5ub3RhdGlvblBhdGg/OiBzdHJpbmc7XG5cdGNvbnRlbnREZW5zaXRpZXM/OiBDb250ZW50RGVuc2l0aWVzVHlwZTtcblx0c2hlbGxDb250ZW50RGVuc2l0eT86IHN0cmluZztcblx0aXNEZXNrdG9wPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIE5hdmlnYXRpb25UYXJnZXRDb25maWd1cmF0aW9uID0ge1xuXHRvdXRib3VuZD86IHN0cmluZztcblx0b3V0Ym91bmREZXRhaWw/OiB7XG5cdFx0c2VtYW50aWNPYmplY3Q6IHN0cmluZztcblx0XHRhY3Rpb246IHN0cmluZztcblx0XHRwYXJhbWV0ZXJzPzogYW55O1xuXHR9O1xuXHRyb3V0ZT86IHN0cmluZztcbn07XG5cbi8qKlxuICogQHR5cGVkZWYgTmF2aWdhdGlvblNldHRpbmdzQ29uZmlndXJhdGlvblxuICovXG5leHBvcnQgdHlwZSBOYXZpZ2F0aW9uU2V0dGluZ3NDb25maWd1cmF0aW9uID0ge1xuXHRjcmVhdGU/OiBOYXZpZ2F0aW9uVGFyZ2V0Q29uZmlndXJhdGlvbjtcblx0ZGV0YWlsPzogTmF2aWdhdGlvblRhcmdldENvbmZpZ3VyYXRpb247XG5cdGRpc3BsYXk/OiB7XG5cdFx0b3V0Ym91bmQ/OiBzdHJpbmc7XG5cdFx0dGFyZ2V0Pzogc3RyaW5nOyAvLyBmb3IgY29tcGF0aWJpbGl0eVxuXHRcdHJvdXRlPzogc3RyaW5nO1xuXHR9O1xufTtcblxudHlwZSBIZWFkZXJGYWNldHNDb250cm9sQ29uZmlndXJhdGlvbiA9IHtcblx0ZmFjZXRzOiBDb25maWd1cmFibGVSZWNvcmQ8TWFuaWZlc3RIZWFkZXJGYWNldD47XG59O1xuXG50eXBlIEZhY2V0c0NvbnRyb2xDb25maWd1cmF0aW9uID0ge1xuXHRzZWN0aW9uczogQ29uZmlndXJhYmxlUmVjb3JkPE1hbmlmZXN0U2VjdGlvbj47XG59O1xuXG50eXBlIE1hbmlmZXN0Rm9ybUVsZW1lbnQgPSBQb3NpdGlvbmFibGUgJiB7XG5cdHRlbXBsYXRlOiBzdHJpbmc7XG5cdGxhYmVsPzogc3RyaW5nO1xuXHRmb3JtYXRPcHRpb25zPzogRm9ybWF0T3B0aW9uc1R5cGU7XG59O1xuXG5leHBvcnQgdHlwZSBGb3JtTWFuaWZlc3RDb25maWd1cmF0aW9uID0ge1xuXHRmaWVsZHM6IENvbmZpZ3VyYWJsZVJlY29yZDxNYW5pZmVzdEZvcm1FbGVtZW50Pjtcbn07XG5cbmV4cG9ydCB0eXBlIENvbnRyb2xNYW5pZmVzdENvbmZpZ3VyYXRpb24gPVxuXHR8IFRhYmxlTWFuaWZlc3RDb25maWd1cmF0aW9uXG5cdHwgQ2hhcnRNYW5pZmVzdENvbmZpZ3VyYXRpb25cblx0fCBGYWNldHNDb250cm9sQ29uZmlndXJhdGlvblxuXHR8IEhlYWRlckZhY2V0c0NvbnRyb2xDb25maWd1cmF0aW9uXG5cdHwgRm9ybU1hbmlmZXN0Q29uZmlndXJhdGlvblxuXHR8IEZpbHRlck1hbmlmZXN0Q29uZmlndXJhdGlvbjtcblxuLyoqIE9iamVjdCBQYWdlICoqL1xuXG5leHBvcnQgdHlwZSBPYmplY3RQYWdlTWFuaWZlc3RTZXR0aW5ncyA9IEJhc2VNYW5pZmVzdFNldHRpbmdzICYge1xuXHRjb250ZW50Pzoge1xuXHRcdGhlYWRlcj86IHtcblx0XHRcdHZpc2libGU/OiBib29sZWFuO1xuXHRcdFx0YW5jaG9yQmFyVmlzaWJsZT86IGJvb2xlYW47XG5cdFx0XHRmYWNldHM/OiBDb25maWd1cmFibGVSZWNvcmQ8TWFuaWZlc3RIZWFkZXJGYWNldD47XG5cdFx0fTtcblx0XHRib2R5Pzoge1xuXHRcdFx0c2VjdGlvbnM/OiBDb25maWd1cmFibGVSZWNvcmQ8TWFuaWZlc3RTZWN0aW9uPjtcblx0XHR9O1xuXHR9O1xuXHRlZGl0YWJsZUhlYWRlckNvbnRlbnQ6IGJvb2xlYW47XG5cdHNlY3Rpb25MYXlvdXQ6IFwiVGFic1wiIHwgXCJQYWdlXCI7XG59O1xuXG4vKipcbiAqIEB0eXBlZGVmIE1hbmlmZXN0SGVhZGVyRmFjZXRcbiAqL1xuZXhwb3J0IHR5cGUgTWFuaWZlc3RIZWFkZXJGYWNldCA9IHtcblx0dHlwZT86IEhlYWRlckZhY2V0VHlwZTtcblx0bmFtZT86IHN0cmluZztcblx0dGVtcGxhdGU/OiBzdHJpbmc7XG5cdHBvc2l0aW9uPzogUG9zaXRpb247XG5cdHZpc2libGU/OiBCaW5kaW5nRXhwcmVzc2lvbjxib29sZWFuPjtcblx0dGl0bGU/OiBzdHJpbmc7XG5cdHN1YlRpdGxlPzogc3RyaW5nO1xuXHRzdGFzaGVkPzogYm9vbGVhbjtcblx0ZmxleFNldHRpbmdzPzogRmxleFNldHRpbmdzO1xuXHRyZXF1ZXN0R3JvdXBJZD86IHN0cmluZztcblx0dGVtcGxhdGVFZGl0Pzogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBAdHlwZWRlZiBNYW5pZmVzdFNlY3Rpb25cbiAqL1xuZXhwb3J0IHR5cGUgTWFuaWZlc3RTZWN0aW9uID0ge1xuXHR0aXRsZT86IHN0cmluZztcblx0aWQ/OiBzdHJpbmc7XG5cdG5hbWU/OiBzdHJpbmc7XG5cdHZpc2libGU/OiBCaW5kaW5nRXhwcmVzc2lvbjxib29sZWFuPjtcblx0cG9zaXRpb24/OiBQb3NpdGlvbjtcblx0dGVtcGxhdGU/OiBzdHJpbmc7XG5cdHN1YlNlY3Rpb25zPzogUmVjb3JkPHN0cmluZywgTWFuaWZlc3RTdWJTZWN0aW9uPjtcblx0YWN0aW9ucz86IFJlY29yZDxzdHJpbmcsIE1hbmlmZXN0QWN0aW9uPjtcbn07XG5cbmV4cG9ydCB0eXBlIE1hbmlmZXN0U3ViU2VjdGlvbiA9IHtcblx0aWQ/OiBzdHJpbmc7XG5cdG5hbWU/OiBzdHJpbmc7XG5cdHRlbXBsYXRlPzogc3RyaW5nO1xuXHR0aXRsZT86IHN0cmluZztcblx0cG9zaXRpb24/OiBQb3NpdGlvbjtcblx0dmlzaWJsZT86IEJpbmRpbmdFeHByZXNzaW9uPGJvb2xlYW4+O1xuXHRhY3Rpb25zPzogUmVjb3JkPHN0cmluZywgTWFuaWZlc3RBY3Rpb24+O1xuXHRzaWRlQ29udGVudD86IE1hbmlmZXN0U2lkZUNvbnRlbnQ7XG59O1xuXG4vKiogTGlzdCBSZXBvcnQgKiovXG5cbmV4cG9ydCB0eXBlIExpc3RSZXBvcnRNYW5pZmVzdFNldHRpbmdzID0gQmFzZU1hbmlmZXN0U2V0dGluZ3MgJiB7XG5cdGluaXRpYWxMb2FkPzogYm9vbGVhbjtcblx0dmlld3M/OiBNdWx0aXBsZVZpZXdzQ29uZmlndXJhdGlvbjtcblx0a2V5UGVyZm9ybWFuY2VJbmRpY2F0b3JzPzoge1xuXHRcdFtrcGlOYW1lOiBzdHJpbmddOiBLUElDb25maWd1cmF0aW9uO1xuXHR9O1xufTtcblxuZXhwb3J0IHR5cGUgVmlld1BhdGhDb25maWd1cmF0aW9uID0gU2luZ2xlVmlld1BhdGhDb25maWd1cmF0aW9uIHwgQ29tYmluZWRWaWV3UGF0aENvbmZpZ3VyYXRpb247XG5cbmV4cG9ydCB0eXBlIFZpZXdDb25maWd1cmF0aW9uID0gVmlld1BhdGhDb25maWd1cmF0aW9uIHwgQ3VzdG9tVmlld1RlbXBsYXRlQ29uZmlndXJhdGlvbjtcblxuZXhwb3J0IHR5cGUgQ3VzdG9tVmlld1RlbXBsYXRlQ29uZmlndXJhdGlvbiA9IHtcblx0a2V5Pzogc3RyaW5nO1xuXHRsYWJlbDogc3RyaW5nO1xuXHR0ZW1wbGF0ZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgU2luZ2xlVmlld1BhdGhDb25maWd1cmF0aW9uID0ge1xuXHRrZWVwUHJldmlvdXNQcmVzb25hbGl6YXRpb24/OiBib29sZWFuO1xuXHRrZXk/OiBzdHJpbmc7XG5cdGVudGl0eVNldD86IHN0cmluZztcblx0YW5ub3RhdGlvblBhdGg6IHN0cmluZztcblx0Y29udGV4dFBhdGg/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBDb21iaW5lZFZpZXdQYXRoQ29uZmlndXJhdGlvbiA9IHtcblx0cHJpbWFyeTogU2luZ2xlVmlld1BhdGhDb25maWd1cmF0aW9uW107XG5cdHNlY29uZGFyeTogU2luZ2xlVmlld1BhdGhDb25maWd1cmF0aW9uW107XG5cdGRlZmF1bHRQYXRoPzogXCJib3RoXCIgfCBcInByaW1hcnlcIiB8IFwic2Vjb25kYXJ5XCI7XG5cdGtleT86IHN0cmluZztcbn07XG5cbi8qKlxuICogQHR5cGVkZWYgTXVsdGlwbGVWaWV3c0NvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IHR5cGUgTXVsdGlwbGVWaWV3c0NvbmZpZ3VyYXRpb24gPSB7XG5cdHBhdGhzOiBWaWV3Q29uZmlndXJhdGlvbltdO1xuXHRzaG93Q291bnRzPzogYm9vbGVhbjtcbn07XG5cbi8qKiBGaWx0ZXIgQ29uZmlndXJhdGlvbiAqKi9cblxuLyoqIEB0eXBlZGVmIEZpbHRlck1hbmlmZXN0Q29uZmlndXJhdGlvbiAqKi9cbmV4cG9ydCB0eXBlIEZpbHRlck1hbmlmZXN0Q29uZmlndXJhdGlvbiA9IHtcblx0ZmlsdGVyRmllbGRzPzogUmVjb3JkPHN0cmluZywgRmlsdGVyRmllbGRNYW5pZmVzdENvbmZpZ3VyYXRpb24+O1xuXHRuYXZpZ2F0aW9uUHJvcGVydGllcz86IHN0cmluZ1tdO1xuXHR1c2VTZW1hbnRpY0RhdGVSYW5nZT86IGJvb2xlYW47XG5cdGluaXRpYWxMYXlvdXQ/OiBzdHJpbmc7XG5cdGxheW91dD86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEZpbHRlckZpZWxkTWFuaWZlc3RDb25maWd1cmF0aW9uID0gUG9zaXRpb25hYmxlICYge1xuXHRsYWJlbD86IHN0cmluZztcblx0dGVtcGxhdGU/OiBzdHJpbmc7XG5cdGF2YWlsYWJpbGl0eT86IEF2YWlsYWJpbGl0eVR5cGU7XG5cdHNldHRpbmdzPzogRmlsdGVyU2V0dGluZ3M7XG5cdHZpc3VhbEZpbHRlcj86IHZpc3VhbEZpbHRlckNvbmZpZ3VyYXRpb247XG59O1xuXG5leHBvcnQgdHlwZSB2aXN1YWxGaWx0ZXJDb25maWd1cmF0aW9uID0ge1xuXHR2YWx1ZUxpc3Q/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBPcGVyYXRvckNvbmZpZ3VyYXRpb24gPSB7XG5cdHBhdGg6IHN0cmluZztcblx0ZXF1YWxzPzogc3RyaW5nO1xuXHRjb250YWlucz86IHN0cmluZztcblx0ZXhjbHVkZTogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIERlZmF1bHRPcGVyYXRvciA9IHtcblx0b3BlcmF0b3I6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEZpbHRlclNldHRpbmdzID0ge1xuXHRvcGVyYXRvckNvbmZpZ3VyYXRpb24/OiBPcGVyYXRvckNvbmZpZ3VyYXRpb25bXTtcblx0ZGVmYXVsdFZhbHVlcz86IERlZmF1bHRPcGVyYXRvcltdO1xufTtcblxuLyoqIENoYXJ0IENvbmZpZ3VyYXRpb24gKiovXG5cbmV4cG9ydCB0eXBlIENoYXJ0UGVyc29uYWxpemF0aW9uTWFuaWZlc3RTZXR0aW5ncyA9XG5cdHwgYm9vbGVhblxuXHR8IHtcblx0XHRcdHNvcnQ6IGJvb2xlYW47XG5cdFx0XHR0eXBlOiBib29sZWFuO1xuXHRcdFx0aXRlbTogYm9vbGVhbjtcblx0ICB9O1xuXG5leHBvcnQgdHlwZSBDaGFydE1hbmlmZXN0Q29uZmlndXJhdGlvbiA9IHtcblx0Y2hhcnRTZXR0aW5nczoge1xuXHRcdHBlcnNvbmFsaXphdGlvbjogQ2hhcnRQZXJzb25hbGl6YXRpb25NYW5pZmVzdFNldHRpbmdzO1xuXHR9O1xufTtcblxuZXhwb3J0IHR5cGUgQWN0aW9uQWZ0ZXJFeGVjdXRpb25Db25maWd1cmF0aW9uID0ge1xuXHRuYXZpZ2F0ZVRvSW5zdGFuY2U/OiBib29sZWFuO1xuXHRlbmFibGVBdXRvU2Nyb2xsPzogYm9vbGVhbjtcbn07XG5cbi8qKiBUYWJsZSBDb25maWd1cmF0aW9uICoqL1xuXG4vKipcbiAqIEB0eXBlZGVmIE1hbmlmZXN0QWN0aW9uXG4gKi9cbmV4cG9ydCB0eXBlIE1hbmlmZXN0QWN0aW9uID0ge1xuXHRtZW51Pzogc3RyaW5nW107XG5cdHZpc2libGU/OiBzdHJpbmc7XG5cdGVuYWJsZWQ/OiBzdHJpbmc7XG5cdHBvc2l0aW9uPzogUG9zaXRpb247XG5cdHByZXNzPzogc3RyaW5nO1xuXHR0ZXh0Pzogc3RyaW5nO1xuXHRfX25vV3JhcD86IGJvb2xlYW47XG5cdGVuYWJsZU9uU2VsZWN0Pzogc3RyaW5nO1xuXHRkZWZhdWx0VmFsdWVzRnVuY3Rpb24/OiBzdHJpbmc7XG5cdHJlcXVpcmVzU2VsZWN0aW9uPzogYm9vbGVhbjtcblx0YWZ0ZXJFeGVjdXRpb24/OiBBY3Rpb25BZnRlckV4ZWN1dGlvbkNvbmZpZ3VyYXRpb247XG5cdGlubGluZT86IGJvb2xlYW47XG5cdGRldGVybWluaW5nPzogYm9vbGVhbjtcblx0ZmFjZXROYW1lPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgTWFuaWZlc3RUYWJsZUNvbHVtbk92ZXJyaWRlID0gUG9zaXRpb25hYmxlICYge1xuXHR3aWR0aD86IHN0cmluZztcblx0aG9yaXpvbnRhbEFsaWduPzogSG9yaXpvbnRhbEFsaWduO1xuXHRhZnRlckV4ZWN1dGlvbj86IEFjdGlvbkFmdGVyRXhlY3V0aW9uQ29uZmlndXJhdGlvbjtcblx0c2V0dGluZ3M/OiBUYWJsZUNvbHVtblNldHRpbmdzO1xuXHRmb3JtYXRPcHRpb25zPzogRm9ybWF0T3B0aW9uc1R5cGU7XG5cdHNob3dEYXRhRmllbGRzTGFiZWw/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgTWFuaWZlc3RUYWJsZUNvbHVtbiA9IFBvc2l0aW9uYWJsZSAmIHtcblx0aGVhZGVyOiBzdHJpbmc7XG5cdHdpZHRoPzogc3RyaW5nO1xuXHRzaG93RGF0YUZpZWxkc0xhYmVsPzogYm9vbGVhbjtcblx0dHlwZT86IHN0cmluZztcblx0aG9yaXpvbnRhbEFsaWduPzogSG9yaXpvbnRhbEFsaWduO1xuXHR0ZW1wbGF0ZTogc3RyaW5nO1xuXHRhZnRlckV4ZWN1dGlvbj86IEFjdGlvbkFmdGVyRXhlY3V0aW9uQ29uZmlndXJhdGlvbjtcblx0YXZhaWxhYmlsaXR5PzogQXZhaWxhYmlsaXR5VHlwZTtcblx0c2V0dGluZ3M/OiBUYWJsZUNvbHVtblNldHRpbmdzO1xuXHRmb3JtYXRPcHRpb25zPzogRm9ybWF0T3B0aW9uc1R5cGU7XG5cdHByb3BlcnRpZXM/OiBzdHJpbmdbXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRhYmxlTWFuaWZlc3RDb25maWd1cmF0aW9uID0ge1xuXHR0YWJsZVNldHRpbmdzPzogVGFibGVNYW5pZmVzdFNldHRpbmdzQ29uZmlndXJhdGlvbjtcblx0YWN0aW9ucz86IFJlY29yZDxzdHJpbmcsIE1hbmlmZXN0QWN0aW9uPjtcblx0Y29sdW1ucz86IFJlY29yZDxzdHJpbmcsIE1hbmlmZXN0VGFibGVDb2x1bW4gfCBNYW5pZmVzdFRhYmxlQ29sdW1uT3ZlcnJpZGU+O1xufTtcblxuZXhwb3J0IGVudW0gU2VsZWN0aW9uTW9kZSB7XG5cdEF1dG8gPSBcIkF1dG9cIixcblx0Tm9uZSA9IFwiTm9uZVwiLFxuXHRNdWx0aSA9IFwiTXVsdGlcIixcblx0U2luZ2xlID0gXCJTaW5nbGVcIlxufVxuXG5leHBvcnQgdHlwZSBUYWJsZVBlcnNvbmFsaXphdGlvbkNvbmZpZ3VyYXRpb24gPVxuXHR8IGJvb2xlYW5cblx0fCB7XG5cdFx0XHRzb3J0OiBib29sZWFuO1xuXHRcdFx0Y29sdW1uOiBib29sZWFuO1xuXHRcdFx0ZmlsdGVyOiBib29sZWFuO1xuXHRcdFx0Z3JvdXA6IGJvb2xlYW47XG5cdFx0XHRhZ2dyZWdhdGU6IGJvb2xlYW47XG5cdCAgfTtcblxuZXhwb3J0IHR5cGUgVGFibGVNYW5pZmVzdFNldHRpbmdzQ29uZmlndXJhdGlvbiA9IHtcblx0Y3JlYXRpb25Nb2RlPzoge1xuXHRcdGRpc2FibGVBZGRSb3dCdXR0b25Gb3JFbXB0eURhdGE/OiBib29sZWFuO1xuXHRcdGN1c3RvbVZhbGlkYXRpb25GdW5jdGlvbj86IHN0cmluZztcblx0XHRjcmVhdGVBdEVuZD86IGJvb2xlYW47XG5cdFx0bmFtZT86IENyZWF0aW9uTW9kZTtcblx0fTtcblx0ZW5hYmxlRXhwb3J0PzogYm9vbGVhbjtcblx0cXVpY2tWYXJpYW50U2VsZWN0aW9uPzoge1xuXHRcdHBhdGhzOiBbXG5cdFx0XHR7XG5cdFx0XHRcdGFubm90YXRpb25QYXRoOiBzdHJpbmc7XG5cdFx0XHR9XG5cdFx0XTtcblx0XHRoaWRlVGFibGVUaXRsZT86IGJvb2xlYW47XG5cdFx0c2hvd0NvdW50cz86IGJvb2xlYW47XG5cdH07XG5cdHBlcnNvbmFsaXphdGlvbj86IFRhYmxlUGVyc29uYWxpemF0aW9uQ29uZmlndXJhdGlvbjtcblx0LyoqXG5cdCAqIERlZmluZXMgaG93IG1hbnkgaXRlbXMgaW4gYSB0YWJsZSBjYW4gYmUgc2VsZWN0ZWQuIFlvdSBoYXZlIHRoZSBmb2xsb3dpbmcgb3B0aW9uczpcblx0ICogPT4gYnkgZGVmaW5pbmcgJ05vbmUnIHlvdSBjYW4gZnVsbHkgZGlzYWJsZSB0aGUgbGlzdCBzZWxlY3Rpb25cblx0ICogPT4gYnkgZGVmaW5pbmcgJ1NpbmdsZScgeW91IGFsbG93IG9ubHkgb25lIGl0ZW0gdG8gYmUgc2VsZWN0ZWRcblx0ICogPT4gYnkgZGVmaW5pbmcgJ011bHRpJyB5b3UgYWxsb3cgc2V2ZXJhbCBpdGVtcyB0byBiZSBzZWxlY3RlZFxuXHQgKiA9PiBieSB1c2luZyAnQXV0bycgeW91IGxlYXZlIHRoZSBkZWZhdWx0IGRlZmluaXRpb24gJ05vbmUnLCBleGNlcHQgaWYgdGhlcmUgaXMgYW4gYWN0aW9uIHRoYXQgcmVxdWlyZXMgYSBzZWxlY3Rpb24gKHN1Y2ggYXMgZGVsZXRpbmcsIG9yIElCTilcblx0ICovXG5cdHNlbGVjdGlvbk1vZGU/OiBTZWxlY3Rpb25Nb2RlO1xuXHR0eXBlPzogVGFibGVUeXBlO1xuXHRjb25kZW5zZWRUYWJsZUxheW91dD86IGJvb2xlYW47XG5cdHNlbGVjdEFsbD86IGJvb2xlYW47XG5cdHNlbGVjdGlvbkxpbWl0PzogbnVtYmVyO1xuXHRlbmFibGVQYXN0ZT86IGJvb2xlYW47XG5cdGVuYWJsZUZ1bGxTY3JlZW4/OiBib29sZWFuO1xuXHRlbmFibGVNYXNzRWRpdD86IGJvb2xlYW47XG59O1xuIl19
|
|
91
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1hbmlmZXN0U2V0dGluZ3MudHMiXSwibmFtZXMiOlsiVGVtcGxhdGVUeXBlIiwiQWN0aW9uVHlwZSIsIlZpc3VhbGl6YXRpb25UeXBlIiwiVmFyaWFudE1hbmFnZW1lbnRUeXBlIiwiQ3JlYXRpb25Nb2RlIiwiQXZhaWxhYmlsaXR5VHlwZSIsIkhvcml6b250YWxBbGlnbiIsIlNlbGVjdGlvbk1vZGUiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7OztNQUdZQSxZOzthQUFBQSxZO0FBQUFBLElBQUFBLFk7QUFBQUEsSUFBQUEsWTtBQUFBQSxJQUFBQSxZO0tBQUFBLFksS0FBQUEsWTs7O01BTUFDLFU7O2FBQUFBLFU7QUFBQUEsSUFBQUEsVTtBQUFBQSxJQUFBQSxVO0FBQUFBLElBQUFBLFU7QUFBQUEsSUFBQUEsVTtBQUFBQSxJQUFBQSxVO0FBQUFBLElBQUFBLFU7QUFBQUEsSUFBQUEsVTtBQUFBQSxJQUFBQSxVO0FBQUFBLElBQUFBLFU7QUFBQUEsSUFBQUEsVTtLQUFBQSxVLEtBQUFBLFU7OztNQWtCQUMsaUI7O2FBQUFBLGlCO0FBQUFBLElBQUFBLGlCO0FBQUFBLElBQUFBLGlCO0tBQUFBLGlCLEtBQUFBLGlCOzs7TUFLQUMscUI7O2FBQUFBLHFCO0FBQUFBLElBQUFBLHFCO0FBQUFBLElBQUFBLHFCO0FBQUFBLElBQUFBLHFCO0tBQUFBLHFCLEtBQUFBLHFCOzs7TUFXQUMsWTs7YUFBQUEsWTtBQUFBQSxJQUFBQSxZO0FBQUFBLElBQUFBLFk7QUFBQUEsSUFBQUEsWTtLQUFBQSxZLEtBQUFBLFk7OztNQU1BQyxnQjs7YUFBQUEsZ0I7QUFBQUEsSUFBQUEsZ0I7QUFBQUEsSUFBQUEsZ0I7QUFBQUEsSUFBQUEsZ0I7S0FBQUEsZ0IsS0FBQUEsZ0I7OztNQU1BQyxlOzthQUFBQSxlO0FBQUFBLElBQUFBLGU7QUFBQUEsSUFBQUEsZTtBQUFBQSxJQUFBQSxlO0tBQUFBLGUsS0FBQUEsZTs7O01BNFVBQyxhOzthQUFBQSxhO0FBQUFBLElBQUFBLGE7QUFBQUEsSUFBQUEsYTtBQUFBQSxJQUFBQSxhO0FBQUFBLElBQUFBLGE7S0FBQUEsYSxLQUFBQSxhIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25maWd1cmFibGVSZWNvcmQsIFBvc2l0aW9uLCBQb3NpdGlvbmFibGUgfSBmcm9tIFwiLi9oZWxwZXJzL0NvbmZpZ3VyYWJsZU9iamVjdFwiO1xuaW1wb3J0IHsgRmxleFNldHRpbmdzLCBIZWFkZXJGYWNldFR5cGUgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9jb250cm9scy9PYmplY3RQYWdlL0hlYWRlckZhY2V0XCI7XG5pbXBvcnQgeyBCaW5kaW5nRXhwcmVzc2lvbiB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0JpbmRpbmdFeHByZXNzaW9uXCI7XG5pbXBvcnQgeyBUYWJsZVR5cGUgfSBmcm9tIFwiLi9jb250cm9scy9Db21tb24vVGFibGVcIjtcblxuZXhwb3J0IGVudW0gVGVtcGxhdGVUeXBlIHtcblx0TGlzdFJlcG9ydCA9IFwiTGlzdFJlcG9ydFwiLFxuXHRPYmplY3RQYWdlID0gXCJPYmplY3RQYWdlXCIsXG5cdEFuYWx5dGljYWxMaXN0UGFnZSA9IFwiQW5hbHl0aWNhbExpc3RQYWdlXCJcbn1cblxuZXhwb3J0IGVudW0gQWN0aW9uVHlwZSB7XG5cdERhdGFGaWVsZEZvckFjdGlvbiA9IFwiRm9yQWN0aW9uXCIsXG5cdERhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbiA9IFwiRm9yTmF2aWdhdGlvblwiLFxuXHREZWZhdWx0ID0gXCJEZWZhdWx0XCIsXG5cdFByaW1hcnkgPSBcIlByaW1hcnlcIixcblx0U2Vjb25kYXJ5ID0gXCJTZWNvbmRhcnlcIixcblx0U3dpdGNoVG9BY3RpdmVPYmplY3QgPSBcIlN3aXRjaFRvQWN0aXZlT2JqZWN0XCIsXG5cdFN3aXRjaFRvRHJhZnRPYmplY3QgPSBcIlN3aXRjaFRvRHJhZnRPYmplY3RcIixcblx0RGVmYXVsdEFwcGx5ID0gXCJEZWZhdWx0QXBwbHlcIixcblx0TWVudSA9IFwiTWVudVwiLFxuXHRTaG93Rm9ybURldGFpbHMgPSBcIlNob3dGb3JtRGV0YWlsc1wiXG59XG5cbmV4cG9ydCB0eXBlIE1hbmlmZXN0U2lkZUNvbnRlbnQgPSB7XG5cdHRlbXBsYXRlOiBzdHJpbmc7XG5cdGVxdWFsU3BsaXQ/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IGVudW0gVmlzdWFsaXphdGlvblR5cGUge1xuXHRUYWJsZSA9IFwiVGFibGVcIixcblx0Q2hhcnQgPSBcIkNoYXJ0XCJcbn1cblxuZXhwb3J0IGVudW0gVmFyaWFudE1hbmFnZW1lbnRUeXBlIHtcblx0UGFnZSA9IFwiUGFnZVwiLFxuXHRDb250cm9sID0gXCJDb250cm9sXCIsXG5cdE5vbmUgPSBcIk5vbmVcIlxufVxuXG5leHBvcnQgdHlwZSBDb250ZW50RGVuc2l0aWVzVHlwZSA9IHtcblx0Y29tcGFjdD86IGJvb2xlYW47XG5cdGNvenk/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IGVudW0gQ3JlYXRpb25Nb2RlIHtcblx0TmV3UGFnZSA9IFwiTmV3UGFnZVwiLFxuXHRJbmxpbmUgPSBcIklubGluZVwiLFxuXHRDcmVhdGlvblJvdyA9IFwiQ3JlYXRpb25Sb3dcIlxufVxuXG5leHBvcnQgZW51bSBBdmFpbGFiaWxpdHlUeXBlIHtcblx0RGVmYXVsdCA9IFwiRGVmYXVsdFwiLFxuXHRBZGFwdGF0aW9uID0gXCJBZGFwdGF0aW9uXCIsXG5cdEhpZGRlbiA9IFwiSGlkZGVuXCJcbn1cblxuZXhwb3J0IGVudW0gSG9yaXpvbnRhbEFsaWduIHtcblx0RW5kID0gXCJFbmRcIixcblx0QmVnaW4gPSBcIkJlZ2luXCIsXG5cdENlbnRlciA9IFwiQ2VudGVyXCJcbn1cblxuZXhwb3J0IHR5cGUgVGFibGVDb2x1bW5TZXR0aW5ncyA9IHtcblx0bWljcm9DaGFydFNpemU/OiBzdHJpbmc7XG5cdHNob3dNaWNyb0NoYXJ0TGFiZWw/OiBib29sZWFuO1xufTtcblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGZvcm1hdCBvcHRpb25zIGZvciBtdWx0aWxpbmUgdGV4dCBmaWVsZHMgb24gYSBmb3JtIG9yIGluIGEgdGFibGVcbiAqL1xuZXhwb3J0IHR5cGUgRm9ybWF0T3B0aW9uc1R5cGUgPSB7XG5cdGhhc0RyYWZ0SW5kaWNhdG9yPzogYm9vbGVhbjtcblx0c2VtYW50aWNrZXlzPzogc3RyaW5nW107XG5cdHRleHRMaW5lc0VkaXQ/OiBudW1iZXI7XG5cdHRleHRNYXhDaGFyYWN0ZXJzRGlzcGxheT86IG51bWJlcjtcblx0dGV4dEV4cGFuZEJlaGF2aW9yRGlzcGxheT86IHN0cmluZztcbn07XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvZiBhIEtQSSBpbiB0aGUgbWFuaWZlc3RcbiAqL1xuZXhwb3J0IHR5cGUgS1BJQ29uZmlndXJhdGlvbiA9IHtcblx0bW9kZWw/OiBzdHJpbmc7XG5cdGVudGl0eVNldDogc3RyaW5nO1xuXHRxdWFsaWZpZXI6IHN0cmluZztcblx0ZGV0YWlsTmF2aWdhdGlvbj86IHN0cmluZztcbn07XG5cbi8qKlxuICogQHR5cGVkZWYgQmFzZU1hbmlmZXN0U2V0dGluZ3NcbiAqL1xuZXhwb3J0IHR5cGUgQmFzZU1hbmlmZXN0U2V0dGluZ3MgPSB7XG5cdGNvbnRlbnQ/OiB7XG5cdFx0aGVhZGVyPzoge1xuXHRcdFx0ZmFjZXRzPzogQ29uZmlndXJhYmxlUmVjb3JkPE1hbmlmZXN0SGVhZGVyRmFjZXQ+O1xuXHRcdFx0YWN0aW9ucz86IENvbmZpZ3VyYWJsZVJlY29yZDxNYW5pZmVzdEFjdGlvbj47XG5cdFx0fTtcblx0XHRmb290ZXI/OiB7XG5cdFx0XHRhY3Rpb25zPzogQ29uZmlndXJhYmxlUmVjb3JkPE1hbmlmZXN0QWN0aW9uPjtcblx0XHR9O1xuXHR9O1xuXHRjb250cm9sQ29uZmlndXJhdGlvbj86IHtcblx0XHRbYW5ub3RhdGlvblBhdGg6IHN0cmluZ106IENvbnRyb2xNYW5pZmVzdENvbmZpZ3VyYXRpb247XG5cdH0gJiB7XG5cdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuTGluZUl0ZW1cIj86IFRhYmxlTWFuaWZlc3RDb25maWd1cmF0aW9uO1xuXHRcdFwiQGNvbS5zYXAudm9jYWJ1bGFyaWVzLlVJLnYxLkZhY2V0c1wiPzogRmFjZXRzQ29udHJvbENvbmZpZ3VyYXRpb247XG5cdFx0XCJAY29tLnNhcC52b2NhYnVsYXJpZXMuVUkudjEuSGVhZGVyRmFjZXRzXCI/OiBIZWFkZXJGYWNldHNDb250cm9sQ29uZmlndXJhdGlvbjtcblx0XHRcIkBjb20uc2FwLnZvY2FidWxhcmllcy5VSS52MS5TZWxlY3Rpb25GaWVsZHNcIj86IEZpbHRlck1hbmlmZXN0Q29uZmlndXJhdGlvbjtcblx0fTtcblx0Y29udmVydGVyVHlwZTogVGVtcGxhdGVUeXBlO1xuXHRlbnRpdHlTZXQ6IHN0cmluZztcblx0bmF2aWdhdGlvbj86IHtcblx0XHRbbmF2aWdhdGlvblBhdGg6IHN0cmluZ106IE5hdmlnYXRpb25TZXR0aW5nc0NvbmZpZ3VyYXRpb247XG5cdH07XG5cdHZpZXdMZXZlbD86IG51bWJlcjtcblx0ZmNsRW5hYmxlZD86IGJvb2xlYW47XG5cdGNvbnRleHRQYXRoPzogc3RyaW5nO1xuXHR2YXJpYW50TWFuYWdlbWVudD86IFZhcmlhbnRNYW5hZ2VtZW50VHlwZTtcblx0ZGVmYXVsdFRlbXBsYXRlQW5ub3RhdGlvblBhdGg/OiBzdHJpbmc7XG5cdGNvbnRlbnREZW5zaXRpZXM/OiBDb250ZW50RGVuc2l0aWVzVHlwZTtcblx0c2hlbGxDb250ZW50RGVuc2l0eT86IHN0cmluZztcblx0aXNEZXNrdG9wPzogYm9vbGVhbjtcblx0aXNQaG9uZT86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBOYXZpZ2F0aW9uVGFyZ2V0Q29uZmlndXJhdGlvbiA9IHtcblx0b3V0Ym91bmQ/OiBzdHJpbmc7XG5cdG91dGJvdW5kRGV0YWlsPzoge1xuXHRcdHNlbWFudGljT2JqZWN0OiBzdHJpbmc7XG5cdFx0YWN0aW9uOiBzdHJpbmc7XG5cdFx0cGFyYW1ldGVycz86IGFueTtcblx0fTtcblx0cm91dGU/OiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIEB0eXBlZGVmIE5hdmlnYXRpb25TZXR0aW5nc0NvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IHR5cGUgTmF2aWdhdGlvblNldHRpbmdzQ29uZmlndXJhdGlvbiA9IHtcblx0Y3JlYXRlPzogTmF2aWdhdGlvblRhcmdldENvbmZpZ3VyYXRpb247XG5cdGRldGFpbD86IE5hdmlnYXRpb25UYXJnZXRDb25maWd1cmF0aW9uO1xuXHRkaXNwbGF5Pzoge1xuXHRcdG91dGJvdW5kPzogc3RyaW5nO1xuXHRcdHRhcmdldD86IHN0cmluZzsgLy8gZm9yIGNvbXBhdGliaWxpdHlcblx0XHRyb3V0ZT86IHN0cmluZztcblx0fTtcbn07XG5cbnR5cGUgSGVhZGVyRmFjZXRzQ29udHJvbENvbmZpZ3VyYXRpb24gPSB7XG5cdGZhY2V0czogQ29uZmlndXJhYmxlUmVjb3JkPE1hbmlmZXN0SGVhZGVyRmFjZXQ+O1xufTtcblxudHlwZSBGYWNldHNDb250cm9sQ29uZmlndXJhdGlvbiA9IHtcblx0c2VjdGlvbnM6IENvbmZpZ3VyYWJsZVJlY29yZDxNYW5pZmVzdFNlY3Rpb24+O1xufTtcblxudHlwZSBNYW5pZmVzdEZvcm1FbGVtZW50ID0gUG9zaXRpb25hYmxlICYge1xuXHR0ZW1wbGF0ZTogc3RyaW5nO1xuXHRsYWJlbD86IHN0cmluZztcblx0Zm9ybWF0T3B0aW9ucz86IEZvcm1hdE9wdGlvbnNUeXBlO1xufTtcblxuZXhwb3J0IHR5cGUgRm9ybU1hbmlmZXN0Q29uZmlndXJhdGlvbiA9IHtcblx0ZmllbGRzOiBDb25maWd1cmFibGVSZWNvcmQ8TWFuaWZlc3RGb3JtRWxlbWVudD47XG59O1xuXG5leHBvcnQgdHlwZSBDb250cm9sTWFuaWZlc3RDb25maWd1cmF0aW9uID1cblx0fCBUYWJsZU1hbmlmZXN0Q29uZmlndXJhdGlvblxuXHR8IENoYXJ0TWFuaWZlc3RDb25maWd1cmF0aW9uXG5cdHwgRmFjZXRzQ29udHJvbENvbmZpZ3VyYXRpb25cblx0fCBIZWFkZXJGYWNldHNDb250cm9sQ29uZmlndXJhdGlvblxuXHR8IEZvcm1NYW5pZmVzdENvbmZpZ3VyYXRpb25cblx0fCBGaWx0ZXJNYW5pZmVzdENvbmZpZ3VyYXRpb247XG5cbi8qKiBPYmplY3QgUGFnZSAqKi9cblxuZXhwb3J0IHR5cGUgT2JqZWN0UGFnZU1hbmlmZXN0U2V0dGluZ3MgPSBCYXNlTWFuaWZlc3RTZXR0aW5ncyAmIHtcblx0Y29udGVudD86IHtcblx0XHRoZWFkZXI/OiB7XG5cdFx0XHR2aXNpYmxlPzogYm9vbGVhbjtcblx0XHRcdGFuY2hvckJhclZpc2libGU/OiBib29sZWFuO1xuXHRcdFx0ZmFjZXRzPzogQ29uZmlndXJhYmxlUmVjb3JkPE1hbmlmZXN0SGVhZGVyRmFjZXQ+O1xuXHRcdH07XG5cdFx0Ym9keT86IHtcblx0XHRcdHNlY3Rpb25zPzogQ29uZmlndXJhYmxlUmVjb3JkPE1hbmlmZXN0U2VjdGlvbj47XG5cdFx0fTtcblx0fTtcblx0ZWRpdGFibGVIZWFkZXJDb250ZW50OiBib29sZWFuO1xuXHRzZWN0aW9uTGF5b3V0OiBcIlRhYnNcIiB8IFwiUGFnZVwiO1xufTtcblxuLyoqXG4gKiBAdHlwZWRlZiBNYW5pZmVzdEhlYWRlckZhY2V0XG4gKi9cbmV4cG9ydCB0eXBlIE1hbmlmZXN0SGVhZGVyRmFjZXQgPSB7XG5cdHR5cGU/OiBIZWFkZXJGYWNldFR5cGU7XG5cdG5hbWU/OiBzdHJpbmc7XG5cdHRlbXBsYXRlPzogc3RyaW5nO1xuXHRwb3NpdGlvbj86IFBvc2l0aW9uO1xuXHR2aXNpYmxlPzogQmluZGluZ0V4cHJlc3Npb248Ym9vbGVhbj47XG5cdHRpdGxlPzogc3RyaW5nO1xuXHRzdWJUaXRsZT86IHN0cmluZztcblx0c3Rhc2hlZD86IGJvb2xlYW47XG5cdGZsZXhTZXR0aW5ncz86IEZsZXhTZXR0aW5ncztcblx0cmVxdWVzdEdyb3VwSWQ/OiBzdHJpbmc7XG5cdHRlbXBsYXRlRWRpdD86IHN0cmluZztcbn07XG5cbi8qKlxuICogQHR5cGVkZWYgTWFuaWZlc3RTZWN0aW9uXG4gKi9cbmV4cG9ydCB0eXBlIE1hbmlmZXN0U2VjdGlvbiA9IHtcblx0dGl0bGU/OiBzdHJpbmc7XG5cdGlkPzogc3RyaW5nO1xuXHRuYW1lPzogc3RyaW5nO1xuXHR2aXNpYmxlPzogQmluZGluZ0V4cHJlc3Npb248Ym9vbGVhbj47XG5cdHBvc2l0aW9uPzogUG9zaXRpb247XG5cdHRlbXBsYXRlPzogc3RyaW5nO1xuXHRzdWJTZWN0aW9ucz86IFJlY29yZDxzdHJpbmcsIE1hbmlmZXN0U3ViU2VjdGlvbj47XG5cdGFjdGlvbnM/OiBSZWNvcmQ8c3RyaW5nLCBNYW5pZmVzdEFjdGlvbj47XG59O1xuXG5leHBvcnQgdHlwZSBNYW5pZmVzdFN1YlNlY3Rpb24gPSB7XG5cdGlkPzogc3RyaW5nO1xuXHRuYW1lPzogc3RyaW5nO1xuXHR0ZW1wbGF0ZT86IHN0cmluZztcblx0dGl0bGU/OiBzdHJpbmc7XG5cdHBvc2l0aW9uPzogUG9zaXRpb247XG5cdHZpc2libGU/OiBCaW5kaW5nRXhwcmVzc2lvbjxib29sZWFuPjtcblx0YWN0aW9ucz86IFJlY29yZDxzdHJpbmcsIE1hbmlmZXN0QWN0aW9uPjtcblx0c2lkZUNvbnRlbnQ/OiBNYW5pZmVzdFNpZGVDb250ZW50O1xufTtcblxuLyoqIExpc3QgUmVwb3J0ICoqL1xuXG5leHBvcnQgdHlwZSBMaXN0UmVwb3J0TWFuaWZlc3RTZXR0aW5ncyA9IEJhc2VNYW5pZmVzdFNldHRpbmdzICYge1xuXHRpbml0aWFsTG9hZD86IGJvb2xlYW47XG5cdHZpZXdzPzogTXVsdGlwbGVWaWV3c0NvbmZpZ3VyYXRpb247XG5cdGtleVBlcmZvcm1hbmNlSW5kaWNhdG9ycz86IHtcblx0XHRba3BpTmFtZTogc3RyaW5nXTogS1BJQ29uZmlndXJhdGlvbjtcblx0fTtcbn07XG5cbmV4cG9ydCB0eXBlIFZpZXdQYXRoQ29uZmlndXJhdGlvbiA9IFNpbmdsZVZpZXdQYXRoQ29uZmlndXJhdGlvbiB8IENvbWJpbmVkVmlld1BhdGhDb25maWd1cmF0aW9uO1xuXG5leHBvcnQgdHlwZSBWaWV3Q29uZmlndXJhdGlvbiA9IFZpZXdQYXRoQ29uZmlndXJhdGlvbiB8IEN1c3RvbVZpZXdUZW1wbGF0ZUNvbmZpZ3VyYXRpb247XG5cbmV4cG9ydCB0eXBlIEN1c3RvbVZpZXdUZW1wbGF0ZUNvbmZpZ3VyYXRpb24gPSB7XG5cdGtleT86IHN0cmluZztcblx0bGFiZWw6IHN0cmluZztcblx0dGVtcGxhdGU6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFNpbmdsZVZpZXdQYXRoQ29uZmlndXJhdGlvbiA9IHtcblx0a2VlcFByZXZpb3VzUHJlc29uYWxpemF0aW9uPzogYm9vbGVhbjtcblx0a2V5Pzogc3RyaW5nO1xuXHRlbnRpdHlTZXQ/OiBzdHJpbmc7XG5cdGFubm90YXRpb25QYXRoOiBzdHJpbmc7XG5cdGNvbnRleHRQYXRoPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgQ29tYmluZWRWaWV3UGF0aENvbmZpZ3VyYXRpb24gPSB7XG5cdHByaW1hcnk6IFNpbmdsZVZpZXdQYXRoQ29uZmlndXJhdGlvbltdO1xuXHRzZWNvbmRhcnk6IFNpbmdsZVZpZXdQYXRoQ29uZmlndXJhdGlvbltdO1xuXHRkZWZhdWx0UGF0aD86IFwiYm90aFwiIHwgXCJwcmltYXJ5XCIgfCBcInNlY29uZGFyeVwiO1xuXHRrZXk/OiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIEB0eXBlZGVmIE11bHRpcGxlVmlld3NDb25maWd1cmF0aW9uXG4gKi9cbmV4cG9ydCB0eXBlIE11bHRpcGxlVmlld3NDb25maWd1cmF0aW9uID0ge1xuXHRwYXRoczogVmlld0NvbmZpZ3VyYXRpb25bXTtcblx0c2hvd0NvdW50cz86IGJvb2xlYW47XG59O1xuXG4vKiogRmlsdGVyIENvbmZpZ3VyYXRpb24gKiovXG5cbi8qKiBAdHlwZWRlZiBGaWx0ZXJNYW5pZmVzdENvbmZpZ3VyYXRpb24gKiovXG5leHBvcnQgdHlwZSBGaWx0ZXJNYW5pZmVzdENvbmZpZ3VyYXRpb24gPSB7XG5cdGZpbHRlckZpZWxkcz86IFJlY29yZDxzdHJpbmcsIEZpbHRlckZpZWxkTWFuaWZlc3RDb25maWd1cmF0aW9uPjtcblx0bmF2aWdhdGlvblByb3BlcnRpZXM/OiBzdHJpbmdbXTtcblx0dXNlU2VtYW50aWNEYXRlUmFuZ2U/OiBib29sZWFuO1xuXHRpbml0aWFsTGF5b3V0Pzogc3RyaW5nO1xuXHRsYXlvdXQ/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBGaWx0ZXJGaWVsZE1hbmlmZXN0Q29uZmlndXJhdGlvbiA9IFBvc2l0aW9uYWJsZSAmIHtcblx0dHlwZT86IHN0cmluZztcblx0bGFiZWw/OiBzdHJpbmc7XG5cdHRlbXBsYXRlPzogc3RyaW5nO1xuXHRhdmFpbGFiaWxpdHk/OiBBdmFpbGFiaWxpdHlUeXBlO1xuXHRzZXR0aW5ncz86IEZpbHRlclNldHRpbmdzO1xuXHR2aXN1YWxGaWx0ZXI/OiB2aXN1YWxGaWx0ZXJDb25maWd1cmF0aW9uO1xufTtcblxuZXhwb3J0IHR5cGUgdmlzdWFsRmlsdGVyQ29uZmlndXJhdGlvbiA9IHtcblx0dmFsdWVMaXN0Pzogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgT3BlcmF0b3JDb25maWd1cmF0aW9uID0ge1xuXHRwYXRoOiBzdHJpbmc7XG5cdGVxdWFscz86IHN0cmluZztcblx0Y29udGFpbnM/OiBzdHJpbmc7XG5cdGV4Y2x1ZGU6IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBEZWZhdWx0T3BlcmF0b3IgPSB7XG5cdG9wZXJhdG9yOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBGaWx0ZXJTZXR0aW5ncyA9IHtcblx0b3BlcmF0b3JDb25maWd1cmF0aW9uPzogT3BlcmF0b3JDb25maWd1cmF0aW9uW107XG5cdGRlZmF1bHRWYWx1ZXM/OiBEZWZhdWx0T3BlcmF0b3JbXTtcbn07XG5cbi8qKiBDaGFydCBDb25maWd1cmF0aW9uICoqL1xuXG5leHBvcnQgdHlwZSBDaGFydFBlcnNvbmFsaXphdGlvbk1hbmlmZXN0U2V0dGluZ3MgPVxuXHR8IGJvb2xlYW5cblx0fCB7XG5cdFx0XHRzb3J0OiBib29sZWFuO1xuXHRcdFx0dHlwZTogYm9vbGVhbjtcblx0XHRcdGl0ZW06IGJvb2xlYW47XG5cdCAgfTtcblxuZXhwb3J0IHR5cGUgQ2hhcnRNYW5pZmVzdENvbmZpZ3VyYXRpb24gPSB7XG5cdGNoYXJ0U2V0dGluZ3M6IHtcblx0XHRwZXJzb25hbGl6YXRpb246IENoYXJ0UGVyc29uYWxpemF0aW9uTWFuaWZlc3RTZXR0aW5ncztcblx0fTtcbn07XG5cbmV4cG9ydCB0eXBlIEFjdGlvbkFmdGVyRXhlY3V0aW9uQ29uZmlndXJhdGlvbiA9IHtcblx0bmF2aWdhdGVUb0luc3RhbmNlPzogYm9vbGVhbjtcblx0ZW5hYmxlQXV0b1Njcm9sbD86IGJvb2xlYW47XG59O1xuXG4vKiogVGFibGUgQ29uZmlndXJhdGlvbiAqKi9cblxuLyoqXG4gKiBAdHlwZWRlZiBNYW5pZmVzdEFjdGlvblxuICovXG5leHBvcnQgdHlwZSBNYW5pZmVzdEFjdGlvbiA9IHtcblx0bWVudT86IHN0cmluZ1tdO1xuXHR2aXNpYmxlPzogc3RyaW5nO1xuXHRlbmFibGVkPzogc3RyaW5nO1xuXHRwb3NpdGlvbj86IFBvc2l0aW9uO1xuXHRwcmVzcz86IHN0cmluZztcblx0dGV4dD86IHN0cmluZztcblx0X19ub1dyYXA/OiBib29sZWFuO1xuXHRlbmFibGVPblNlbGVjdD86IHN0cmluZztcblx0ZGVmYXVsdFZhbHVlc0Z1bmN0aW9uPzogc3RyaW5nO1xuXHRyZXF1aXJlc1NlbGVjdGlvbj86IGJvb2xlYW47XG5cdGFmdGVyRXhlY3V0aW9uPzogQWN0aW9uQWZ0ZXJFeGVjdXRpb25Db25maWd1cmF0aW9uO1xuXHRpbmxpbmU/OiBib29sZWFuO1xuXHRkZXRlcm1pbmluZz86IGJvb2xlYW47XG5cdGZhY2V0TmFtZT86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIE1hbmlmZXN0VGFibGVDb2x1bW5PdmVycmlkZSA9IFBvc2l0aW9uYWJsZSAmIHtcblx0d2lkdGg/OiBzdHJpbmc7XG5cdGhvcml6b250YWxBbGlnbj86IEhvcml6b250YWxBbGlnbjtcblx0YWZ0ZXJFeGVjdXRpb24/OiBBY3Rpb25BZnRlckV4ZWN1dGlvbkNvbmZpZ3VyYXRpb247XG5cdHNldHRpbmdzPzogVGFibGVDb2x1bW5TZXR0aW5ncztcblx0Zm9ybWF0T3B0aW9ucz86IEZvcm1hdE9wdGlvbnNUeXBlO1xuXHRzaG93RGF0YUZpZWxkc0xhYmVsPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIE1hbmlmZXN0VGFibGVDb2x1bW4gPSBQb3NpdGlvbmFibGUgJiB7XG5cdGhlYWRlcjogc3RyaW5nO1xuXHR3aWR0aD86IHN0cmluZztcblx0c2hvd0RhdGFGaWVsZHNMYWJlbD86IGJvb2xlYW47XG5cdHR5cGU/OiBzdHJpbmc7XG5cdGhvcml6b250YWxBbGlnbj86IEhvcml6b250YWxBbGlnbjtcblx0dGVtcGxhdGU6IHN0cmluZztcblx0YWZ0ZXJFeGVjdXRpb24/OiBBY3Rpb25BZnRlckV4ZWN1dGlvbkNvbmZpZ3VyYXRpb247XG5cdGF2YWlsYWJpbGl0eT86IEF2YWlsYWJpbGl0eVR5cGU7XG5cdHNldHRpbmdzPzogVGFibGVDb2x1bW5TZXR0aW5ncztcblx0Zm9ybWF0T3B0aW9ucz86IEZvcm1hdE9wdGlvbnNUeXBlO1xuXHRwcm9wZXJ0aWVzPzogc3RyaW5nW107XG59O1xuXG5leHBvcnQgdHlwZSBUYWJsZU1hbmlmZXN0Q29uZmlndXJhdGlvbiA9IHtcblx0dGFibGVTZXR0aW5ncz86IFRhYmxlTWFuaWZlc3RTZXR0aW5nc0NvbmZpZ3VyYXRpb247XG5cdGFjdGlvbnM/OiBSZWNvcmQ8c3RyaW5nLCBNYW5pZmVzdEFjdGlvbj47XG5cdGNvbHVtbnM/OiBSZWNvcmQ8c3RyaW5nLCBNYW5pZmVzdFRhYmxlQ29sdW1uIHwgTWFuaWZlc3RUYWJsZUNvbHVtbk92ZXJyaWRlPjtcbn07XG5cbmV4cG9ydCBlbnVtIFNlbGVjdGlvbk1vZGUge1xuXHRBdXRvID0gXCJBdXRvXCIsXG5cdE5vbmUgPSBcIk5vbmVcIixcblx0TXVsdGkgPSBcIk11bHRpXCIsXG5cdFNpbmdsZSA9IFwiU2luZ2xlXCJcbn1cblxuZXhwb3J0IHR5cGUgVGFibGVQZXJzb25hbGl6YXRpb25Db25maWd1cmF0aW9uID1cblx0fCBib29sZWFuXG5cdHwge1xuXHRcdFx0c29ydDogYm9vbGVhbjtcblx0XHRcdGNvbHVtbjogYm9vbGVhbjtcblx0XHRcdGZpbHRlcjogYm9vbGVhbjtcblx0XHRcdGdyb3VwOiBib29sZWFuO1xuXHRcdFx0YWdncmVnYXRlOiBib29sZWFuO1xuXHQgIH07XG5cbmV4cG9ydCB0eXBlIFRhYmxlTWFuaWZlc3RTZXR0aW5nc0NvbmZpZ3VyYXRpb24gPSB7XG5cdGNyZWF0aW9uTW9kZT86IHtcblx0XHRkaXNhYmxlQWRkUm93QnV0dG9uRm9yRW1wdHlEYXRhPzogYm9vbGVhbjtcblx0XHRjdXN0b21WYWxpZGF0aW9uRnVuY3Rpb24/OiBzdHJpbmc7XG5cdFx0Y3JlYXRlQXRFbmQ/OiBib29sZWFuO1xuXHRcdG5hbWU/OiBDcmVhdGlvbk1vZGU7XG5cdH07XG5cdGVuYWJsZUV4cG9ydD86IGJvb2xlYW47XG5cdHF1aWNrVmFyaWFudFNlbGVjdGlvbj86IHtcblx0XHRwYXRoczogW1xuXHRcdFx0e1xuXHRcdFx0XHRhbm5vdGF0aW9uUGF0aDogc3RyaW5nO1xuXHRcdFx0fVxuXHRcdF07XG5cdFx0aGlkZVRhYmxlVGl0bGU/OiBib29sZWFuO1xuXHRcdHNob3dDb3VudHM/OiBib29sZWFuO1xuXHR9O1xuXHRwZXJzb25hbGl6YXRpb24/OiBUYWJsZVBlcnNvbmFsaXphdGlvbkNvbmZpZ3VyYXRpb247XG5cdC8qKlxuXHQgKiBEZWZpbmVzIGhvdyBtYW55IGl0ZW1zIGluIGEgdGFibGUgY2FuIGJlIHNlbGVjdGVkLiBZb3UgaGF2ZSB0aGUgZm9sbG93aW5nIG9wdGlvbnM6XG5cdCAqID0+IGJ5IGRlZmluaW5nICdOb25lJyB5b3UgY2FuIGZ1bGx5IGRpc2FibGUgdGhlIGxpc3Qgc2VsZWN0aW9uXG5cdCAqID0+IGJ5IGRlZmluaW5nICdTaW5nbGUnIHlvdSBhbGxvdyBvbmx5IG9uZSBpdGVtIHRvIGJlIHNlbGVjdGVkXG5cdCAqID0+IGJ5IGRlZmluaW5nICdNdWx0aScgeW91IGFsbG93IHNldmVyYWwgaXRlbXMgdG8gYmUgc2VsZWN0ZWRcblx0ICogPT4gYnkgdXNpbmcgJ0F1dG8nIHlvdSBsZWF2ZSB0aGUgZGVmYXVsdCBkZWZpbml0aW9uICdOb25lJywgZXhjZXB0IGlmIHRoZXJlIGlzIGFuIGFjdGlvbiB0aGF0IHJlcXVpcmVzIGEgc2VsZWN0aW9uIChzdWNoIGFzIGRlbGV0aW5nLCBvciBJQk4pXG5cdCAqL1xuXHRzZWxlY3Rpb25Nb2RlPzogU2VsZWN0aW9uTW9kZTtcblx0dHlwZT86IFRhYmxlVHlwZTtcblx0Y29uZGVuc2VkVGFibGVMYXlvdXQ/OiBib29sZWFuO1xuXHRzZWxlY3RBbGw/OiBib29sZWFuO1xuXHRzZWxlY3Rpb25MaW1pdD86IG51bWJlcjtcblx0ZW5hYmxlUGFzdGU/OiBib29sZWFuO1xuXHRlbmFibGVGdWxsU2NyZWVuPzogYm9vbGVhbjtcblx0ZW5hYmxlTWFzc0VkaXQ/OiBib29sZWFuO1xufTtcbiJdfQ==
|
|
@@ -84,6 +84,7 @@ export type KPIConfiguration = {
|
|
|
84
84
|
model?: string;
|
|
85
85
|
entitySet: string;
|
|
86
86
|
qualifier: string;
|
|
87
|
+
detailNavigation?: string;
|
|
87
88
|
};
|
|
88
89
|
|
|
89
90
|
/**
|
|
@@ -120,6 +121,7 @@ export type BaseManifestSettings = {
|
|
|
120
121
|
contentDensities?: ContentDensitiesType;
|
|
121
122
|
shellContentDensity?: string;
|
|
122
123
|
isDesktop?: boolean;
|
|
124
|
+
isPhone?: boolean;
|
|
123
125
|
};
|
|
124
126
|
|
|
125
127
|
export type NavigationTargetConfiguration = {
|
|
@@ -285,6 +287,7 @@ export type FilterManifestConfiguration = {
|
|
|
285
287
|
};
|
|
286
288
|
|
|
287
289
|
export type FilterFieldManifestConfiguration = Positionable & {
|
|
290
|
+
type?: string;
|
|
288
291
|
label?: string;
|
|
289
292
|
template?: string;
|
|
290
293
|
availability?: AvailabilityType;
|