@sap/open.fe 1.96.0 → 1.97.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 +57 -42
- package/packages/sap.fe.common/src/sap/fe/common/MessageButton.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 +2 -2
- package/packages/sap.fe.common/src/sap/fe/common/library-preload.js +4 -4
- 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 +4 -4
- 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.core/src/sap/fe/core/.library +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/.theming +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/AnnotationHelper-dbg.js +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/AnnotationHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/CommonUtils-dbg.js +59 -274
- package/packages/sap.fe.core/src/sap/fe/core/CommonUtils.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/RouterProxy-dbg.js +52 -64
- 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 +2 -2
- 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 +18 -22
- package/packages/sap.fe.core/src/sap/fe/core/TransactionHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/actions/messageHandling-dbg.js +80 -4
- 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 +42 -23
- 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 +36 -21
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/EditFlow.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation-dbg.js +9 -3
- 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 +20 -50
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalRouting.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MessageHandler-dbg.js +222 -102
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MessageHandler.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/ViewState-dbg.js +33 -6
- package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/ViewState.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controls/CustomQuickViewPage-dbg.js +109 -111
- package/packages/sap.fe.core/src/sap/fe/core/controls/CustomQuickViewPage.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar.d-dbg.js +8 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar.d.js +5 -0
- package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar.d.ts +0 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestSettings-dbg.js +2 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestSettings.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestSettings.ts +4 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/MetaModelConverter-dbg.js +10 -1
- 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 +9 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/annotations/DataField-dbg.js +2 -2
- 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 +67 -40
- 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 +6 -3
- 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 -3
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Form-dbg.js +57 -18
- 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 +51 -13
- package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Table-dbg.js +130 -19
- 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 +139 -18
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/ID-dbg.js +9 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/ID.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/ID.ts +4 -0
- package/packages/sap.fe.core/src/sap/fe/core/converters/templates/ListReportConverter-dbg.js +18 -7
- package/packages/sap.fe.core/src/sap/fe/core/converters/templates/ListReportConverter.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/converters/templates/ListReportConverter.ts +17 -12
- package/packages/sap.fe.core/src/sap/fe/core/designtime/AppComponent-dbg.designtime.js +2 -1
- 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 +2 -2
- package/packages/sap.fe.core/src/sap/fe/core/formatters/TableFormatter-dbg.js +27 -4
- package/packages/sap.fe.core/src/sap/fe/core/formatters/TableFormatter.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/formatters/TableFormatter.ts +20 -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/KeepAliveHelper-dbg.js +211 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/KeepAliveHelper.js +5 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/KeepAliveHelper.ts +202 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/KeepAliveRefreshTypes-dbg.js +32 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/KeepAliveRefreshTypes.js +5 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/KeepAliveRefreshTypes.ts +36 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/ModelHelper-dbg.js +51 -0
- package/packages/sap.fe.core/src/sap/fe/core/helpers/ModelHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/library-dbg.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/library-h2-preload.js +10 -9
- package/packages/sap.fe.core/src/sap/fe/core/library-h2-preload.js.map +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/library-preload.js +232 -228
- 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.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/manifest.json +10 -10
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle.properties +15 -1
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ar.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_bg.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ca.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_cs.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_cy.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_da.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_de.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_el.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_GB.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_US_sappsd.properties +6 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_US_saprigi.properties +11 -1
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_US_saptrc.properties +11 -1
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_es.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_es_MX.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_et.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_fi.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_fr.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_fr_CA.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_hi.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_hr.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_hu.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_id.properties +11 -1
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_it.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_iw.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ja.properties +19 -9
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_kk.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ko.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_lt.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_lv.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ms.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_nl.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_no.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_pl.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_pt.properties +11 -1
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_pt_PT.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ro.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ru.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sh.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sk.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sl.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sv.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_th.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_tr.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_uk.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_vi.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_zh_CN.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/messagebundle_zh_TW.properties +10 -0
- package/packages/sap.fe.core/src/sap/fe/core/resources.json +200 -121
- package/packages/sap.fe.core/src/sap/fe/core/services/RoutingServiceFactory-dbg.js +30 -19
- package/packages/sap.fe.core/src/sap/fe/core/services/RoutingServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/TemplatedViewServiceFactory-dbg.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/services/TemplatedViewServiceFactory.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/templating/EntitySetHelper-dbg.js +80 -7
- package/packages/sap.fe.core/src/sap/fe/core/templating/EntitySetHelper.js +1 -1
- package/packages/sap.fe.core/src/sap/fe/core/templating/EntitySetHelper.ts +42 -2
- 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.xmlmeta.json +1 -1
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/buildingBlockOverview.md +4 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/chart/chartDefault/ChartDefault.view.xml +1 -0
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/viewState/manifest.json +2 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/CustomColumnAdaptation.fragment.xml +13 -10
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/CustomColumnButton.fragment.xml +7 -4
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/localService/service.cds +1 -2
- package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/manifest.json +1 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/CommonUtils.spec.js +119 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/__snapshots__/TemplateConverter.spec.ts.snap +285 -4
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MessageHandler.spec.js +121 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MessageHandler.spec.ts +79 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/ViewState.spec.js +147 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/ViewState.spec.ts +96 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/Table.spec.js +51 -18
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/Table.spec.ts +109 -17
- package/packages/sap.fe.core/test/sap/fe/core/jest/converters/__snapshots__/MetaModelConverter.spec.ts.snap +66 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/EntitySetHelper.cds +33 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/EntitySetHelperMainEntitySortableFalse.cds +12 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/data/TableGetSelectionMode.cds +8 -8
- package/packages/sap.fe.core/test/sap/fe/core/jest/formatters/TableFormatters.spec.js +68 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/formatters/TableFormatters.spec.ts +38 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/KeepAliveHelper.spec.js +483 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/KeepAliveHelper.spec.ts +376 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/KeepAliveHelperTestData/ControlRefreshStrategyTests.js +101 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/KeepAliveHelperTestData/ControlRefreshStrategyTests.ts +105 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/KeepAliveHelperTestData/ControlsForRefreshTests.js +103 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/KeepAliveHelperTestData/ControlsForRefreshTests.ts +106 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/KeepAliveHelperTestData/RefreshStrategyForIntentTests.js +118 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/KeepAliveHelperTestData/RefreshStrategyForIntentTests.ts +118 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/KeepAliveHelperTestData/StoreStrategyTests.js +101 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/KeepAliveHelperTestData/StoreStrategyTests.ts +102 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/ModelHelper.spec.js +118 -1
- package/packages/sap.fe.core/test/sap/fe/core/jest/services/RoutingServiceFactory.spec.js +70 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/templating/EntitySetHelper.spec.js +89 -0
- package/packages/sap.fe.core/test/sap/fe/core/jest/templating/EntitySetHelper.spec.ts +73 -0
- package/packages/sap.fe.core/test/sap/fe/core/qunit/TemplatingExpressions.qunit.js +4 -2
- package/packages/sap.fe.core/test/sap/fe/core/qunit/apps/generalTests.json +6 -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/ChartDelegate-dbg.js +15 -5
- 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 +9 -5
- package/packages/sap.fe.macros/src/sap/fe/macros/CommonHelper.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/DelegateUtil-dbg.js +30 -11
- package/packages/sap.fe.macros/src/sap/fe/macros/DelegateUtil.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FieldAPI-dbg.js +3 -5
- package/packages/sap.fe.macros/src/sap/fe/macros/FieldAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FieldAPI.ts +3 -5
- package/packages/sap.fe.macros/src/sap/fe/macros/FieldValueHelpDelegate-dbg.js +17 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/FieldValueHelpDelegate.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarAPI-dbg.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarAPI.ts +1 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarDelegate-dbg.js +4 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarDelegate.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/FlexibleColumnLayoutActions.fragment.xml +6 -15
- package/packages/sap.fe.macros/src/sap/fe/macros/FormContainer.fragment.xml +14 -12
- package/packages/sap.fe.macros/src/sap/fe/macros/PhantomUtil-dbg.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/PhantomUtil.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/Table.fragment.xml +2 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/Table.metadata-dbg.js +12 -1
- 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 +15 -8
- package/packages/sap.fe.macros/src/sap/fe/macros/TableAPI.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/TableAPI.ts +10 -0
- 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/field/FieldHelper-dbg.js +81 -9
- 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 +13 -3
- 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 +5 -5
- 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 +4 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/field/QuickViewLinkContactContent.fragment.xml +1 -7
- package/packages/sap.fe.macros/src/sap/fe/macros/field/QuickViewLinkDelegate-dbg.js +5 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/field/QuickViewLinkDelegate.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/field/QuickViewLinkForContact.fragment.xml +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/formcontainer/FormContainerRuntime-dbg.js +46 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/formcontainer/FormContainerRuntime.js +6 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/Field.fragment.xml +17 -8
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/FieldStructure.fragment.xml +26 -16
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/File.fragment.xml +1 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/helpers/DataPointTemplating-dbg.js +4 -13
- 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 +10 -10
- package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/TableDelegate-dbg.js +5 -3
- 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/ValueListHelper-dbg.js +72 -8
- 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 +12 -11
- 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 +93 -91
- package/packages/sap.fe.macros/src/sap/fe/macros/library-preload.js.map +4 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/library.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/manifest.json +9 -9
- package/packages/sap.fe.macros/src/sap/fe/macros/massedit/MassEditRuntime-dbg.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/massedit/MassEditRuntime.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle.properties +5 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ar.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_bg.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ca.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_cs.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_cy.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_da.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_de.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_el.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en.properties +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_GB.properties +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_US_sappsd.properties +3 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_es.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_es_MX.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_et.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_fi.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_fr.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_fr_CA.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_hi.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_hr.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_hu.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_id.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_it.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_iw.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ja.properties +3 -3
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_kk.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ko.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_lt.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_lv.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ms.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_nl.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_no.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_pl.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_pt.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_pt_PT.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ro.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ru.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sh.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sk.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sl.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sv.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_th.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_tr.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_uk.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_vi.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_zh_CN.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_zh_TW.properties +2 -2
- package/packages/sap.fe.macros/src/sap/fe/macros/microchart/fragments/MicroChartTitle.fragment.xml +21 -11
- package/packages/sap.fe.macros/src/sap/fe/macros/microchart/fragments/RadialMicroChart.fragment.xml +2 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/resources.json +149 -110
- package/packages/sap.fe.macros/src/sap/fe/macros/table/Actions.fragment.xml +3 -0
- package/packages/sap.fe.macros/src/sap/fe/macros/table/ColumnContent.fragment.xml +70 -29
- package/packages/sap.fe.macros/src/sap/fe/macros/table/TableHelper-dbg.js +53 -36
- package/packages/sap.fe.macros/src/sap/fe/macros/table/TableHelper.js +1 -1
- package/packages/sap.fe.macros/src/sap/fe/macros/table/Utils-dbg.js +1 -1
- 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/TableDelegate-dbg.js +3 -4
- package/packages/sap.fe.macros/src/sap/fe/macros/table/delegates/TableDelegate.js +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/designtime/api.json +2 -2
- 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.xmlmeta.json +1 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartDelegate.spec.js +844 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartDelegate.spec.ts +833 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartHelper.spec.js +495 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartHelper.spec.ts +440 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartUtils.spec.js +469 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartUtils.spec.ts +448 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/CommonUtils.spec.js +94 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/CommonUtils.spec.ts +70 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/DatapointMacro.spec.js +12 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/DatapointMacro.spec.ts +11 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/DelegateUtil.spec.js +61 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldHelper.spec.js +46 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldHelper.spec.ts +30 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldMacroDataFieldTypes.spec.js +13 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldMacroDataFieldTypes.spec.ts +11 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FormElement.spec.js +66 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/FormElement.spec.ts +35 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/SimpleFieldMacro.spec.js +48 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/SimpleFieldMacro.spec.ts +56 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/TableFieldLabel.spec.js +68 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/TableFieldLabel.spec.ts +65 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/ChartDelegate.spec.ts.snap +82 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/DatapointMacro.spec.ts.snap +23 -5
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FieldHelper.spec.ts.snap +47 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FieldMacroDataFieldTypes.spec.ts.snap +52 -3
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FormElement.spec.ts.snap +25 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/QuickViewForm.spec.ts.snap +0 -3
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/SimpleFieldMacro.spec.ts.snap +69 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/TableFieldLabel.spec.ts.snap +451 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FieldHelper.xml +68 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/Table.cds +13 -1
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/TableFieldLabel.cds +152 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldRuntime.spec.js +116 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldRuntime.spec.ts +115 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/form/FormElement.spec.js +86 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/form/FormElement.spec.ts +54 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/form/__snapshots__/FormElement.spec.ts.snap +33 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/Actions.spec.js +154 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/Actions.spec.ts +128 -0
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/TableDelegate.spec.js +7 -2
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/TableDelegate.spec.ts +23 -12
- package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/__snapshots__/TableDelegate.spec.ts.snap +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/FieldHelperTemplate.qunit.js +1 -1
- 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/TableHelper.qunit.js +108 -1
- package/packages/sap.fe.navigation/src/sap/fe/navigation/.library +1 -1
- package/packages/sap.fe.navigation/src/sap/fe/navigation/.theming +1 -1
- package/packages/sap.fe.navigation/src/sap/fe/navigation/library-dbg.js +1 -1
- package/packages/sap.fe.navigation/src/sap/fe/navigation/library-h2-preload.js +2 -2
- package/packages/sap.fe.navigation/src/sap/fe/navigation/library-preload.js +2 -2
- package/packages/sap.fe.navigation/src/sap/fe/navigation/library.js +1 -1
- package/packages/sap.fe.navigation/src/sap/fe/navigation/manifest.json +3 -3
- package/packages/sap.fe.navigation/test/sap/fe/navigation/designtime/api.json +1 -1
- package/packages/sap.fe.navigation/test/sap/fe/navigation/designtime/apiref/api.json +1 -1
- package/packages/sap.fe.navigation/test/sap/fe/navigation/designtime/codeassistance/Library.xmlmeta.json +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/.library +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/.theming +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library-dbg.js +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library-h2-preload.js +2 -2
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library-preload.js +4 -4
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library-preload.js.map +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library.js +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/manifest.json +3 -3
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/resources.json +3 -3
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/view/PlaceholderALP.fragment.html +1 -1
- package/packages/sap.fe.placeholder/src/sap/fe/placeholder/view/PlaceholderOVP.fragment.html +1 -1
- package/packages/sap.fe.placeholder/test/sap/fe/placeholder/designtime/api.json +1 -1
- package/packages/sap.fe.placeholder/test/sap/fe/placeholder/designtime/apiref/api.json +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/.library +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/.theming +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/AnalyticalListPage/manifest.json +2 -2
- package/packages/sap.fe.templates/src/sap/fe/templates/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/ListReport.view.xml +2 -2
- package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/ListReportController-dbg.controller.js +91 -60
- 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/ViewState-dbg.js +31 -5
- 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 +5 -5
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/AnnotationHelper-dbg.js +2 -2
- 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 +18 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/Component.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ObjectPageController-dbg.controller.js +114 -85
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/controls/StashableHBox-dbg.js +8 -0
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/manifest.json +2 -2
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/ViewState-dbg.js +23 -3
- 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 +15 -15
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/templating/ObjectPageTemplating-dbg.js +6 -5
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/templating/ObjectPageTemplating.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/templating/ObjectPageTemplating.ts +6 -4
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/HeaderDataPointTitle.fragment.xml +26 -16
- package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderForm.fragment.xml +5 -5
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/Fcl-dbg.controller.js +63 -9
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/Fcl.controller.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/NavContainer-dbg.controller.js +54 -32
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/NavContainer.controller.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController-dbg.js +24 -21
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController.js +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/view/Fcl.view.xml +2 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/view/NavContainer.view.xml +1 -1
- package/packages/sap.fe.templates/src/sap/fe/templates/controls/Table.fragment.xml +2 -0
- 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 -9
- 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 +23 -30
- 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/resources.json +51 -60
- 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.xmlmeta.json +1 -1
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/HeaderFacet.spec.js +95 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/HeaderFacet.spec.ts +66 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/ObjectPageHeaderForm.spec.js +134 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/ObjectPageHeaderForm.spec.ts +94 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/__snapshots__/HeaderFacet.spec.ts.snap +61 -0
- package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/__snapshots__/ObjectPageHeaderForm.spec.ts.snap +53 -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/FCLView-dbg.js +0 -6
- package/packages/sap.fe.test/src/sap/fe/test/FCLView.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/Flexibility-dbg.js +14 -3
- package/packages/sap.fe.test/src/sap/fe/test/Flexibility.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/JestTemplatingHelper-dbg.js +85 -8
- package/packages/sap.fe.test/src/sap/fe/test/JestTemplatingHelper.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/JestTemplatingHelper.ts +54 -2
- package/packages/sap.fe.test/src/sap/fe/test/ListReport-dbg.js +0 -11
- 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 +0 -38
- package/packages/sap.fe.test/src/sap/fe/test/ObjectPage.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/TemplatePage-dbg.js +0 -12
- package/packages/sap.fe.test/src/sap/fe/test/TemplatePage.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/UI5MockHelper-dbg.js +22 -1
- package/packages/sap.fe.test/src/sap/fe/test/UI5MockHelper.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/UI5MockHelper.ts +14 -0
- package/packages/sap.fe.test/src/sap/fe/test/api/BaseAPI-dbg.js +21 -0
- package/packages/sap.fe.test/src/sap/fe/test/api/DialogAPI-dbg.js +9 -5
- package/packages/sap.fe.test/src/sap/fe/test/api/DialogAPI.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/api/DialogActions-dbg.js +18 -5
- package/packages/sap.fe.test/src/sap/fe/test/api/DialogActions.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/api/DialogAssertions-dbg.js +25 -5
- package/packages/sap.fe.test/src/sap/fe/test/api/DialogAssertions.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/api/EditState-dbg.js +9 -0
- package/packages/sap.fe.test/src/sap/fe/test/api/EditState.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/api/FilterBarActions-dbg.js +38 -4
- package/packages/sap.fe.test/src/sap/fe/test/api/FilterBarActions.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/api/FormAssertions-dbg.js +33 -4
- package/packages/sap.fe.test/src/sap/fe/test/api/FormAssertions.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/api/TableActions-dbg.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 +3 -3
- package/packages/sap.fe.test/src/sap/fe/test/library-preload.js +23 -16
- package/packages/sap.fe.test/src/sap/fe/test/library-preload.js.map +3 -3
- package/packages/sap.fe.test/src/sap/fe/test/library.js +1 -1
- package/packages/sap.fe.test/src/sap/fe/test/manifest.json +3 -3
- package/packages/sap.fe.test/src/sap/fe/test/resources.json +36 -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.jsmeta.json +1 -1
- package/packages/sap.fe.test/test/sap/fe/test/designtime/codeassistance/Library.xmlmeta.json +1 -1
- package/packages/sap.fe.common/test/sap/fe/common/relnotes/changes-1.96.json +0 -49
- package/packages/sap.fe.core/test/sap/fe/core/relnotes/changes-1.96.json +0 -189
- package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FieldRuntime.qunit.js +0 -73
- package/packages/sap.fe.macros/test/sap/fe/macros/relnotes/changes-1.96.json +0 -160
- package/packages/sap.fe.placeholder/test/sap/fe/placeholder/relnote/changes-1.96.json +0 -17
- package/packages/sap.fe.templates/src/sap/fe/templates/controls/OverflowToolbarButtonHover-dbg.js +0 -26
- package/packages/sap.fe.templates/src/sap/fe/templates/controls/OverflowToolbarButtonHover.js +0 -6
- package/packages/sap.fe.templates/test/sap/fe/templates/relnotes/changes-1.96.json +0 -153
|
@@ -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/common/AnnotationConverter","../helpers/StableIdHelper"],function(A,S){"use strict";var _={};var g=S.generate;function c(o,a){var b=typeof Symbol!=="undefined"&&o[Symbol.iterator]||o["@@iterator"];if(!b){if(Array.isArray(o)||(b=j(o))||a&&o&&typeof o.length==="number"){if(b)o=b;var i=0;var F=function(){};return{s:F,n:function(){if(i>=o.length)return{done:true};return{done:false,value:o[i++]};},e:function(e){throw e;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var n=true,P=false,Q;return{s:function(){b=b.call(o);},n:function(){var e=b.next();n=e.done;return e;},e:function(e){P=true;Q=e;},f:function(){try{if(!n&&b.return!=null)b.return();}finally{if(P)throw Q;}}};}function d(o,a,b){if(a in o){Object.defineProperty(o,a,{value:b,enumerable:true,configurable:true,writable:true});}else{o[a]=b;}return o;}function f(a,i){return m(a)||l(a,i)||j(a,i)||h();}function h(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function j(o,a){if(!o)return;if(typeof o==="string")return k(o,a);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return k(o,a);}function k(a,b){if(b==null||b>a.length)b=a.length;for(var i=0,e=new Array(b);i<b;i++){e[i]=a[i];}return e;}function l(a,i){var b=a==null?null:typeof Symbol!=="undefined"&&a[Symbol.iterator]||a["@@iterator"];if(b==null)return;var e=[];var n=true;var o=false;var F,P;try{for(b=b.call(a);!(n=(F=b.next()).done);n=true){e.push(F.value);if(i&&e.length===i)break;}}catch(Q){o=true;P=Q;}finally{try{if(!n&&b["return"]!=null)b["return"]();}finally{if(o)throw P;}}return e;}function m(a){if(Array.isArray(a))return a;}var V={"Org.OData.Capabilities.V1":"Capabilities","Org.OData.Core.V1":"Core","Org.OData.Measures.V1":"Measures","com.sap.vocabularies.Common.v1":"Common","com.sap.vocabularies.UI.v1":"UI","com.sap.vocabularies.Session.v1":"Session","com.sap.vocabularies.Analytics.v1":"Analytics","com.sap.vocabularies.PersonalData.v1":"PersonalData","com.sap.vocabularies.Communication.v1":"Communication"};var D={Chart:true,MicroChart:true,UShell:true,IntentBasedNavigation:true};_.DefaultEnvironmentCapabilities=D;function p(a,b,e,i,o){var n;var F=e+"/"+b;var P=typeof a;if(a===null){n={type:"Null",Null:null};}else if(P==="string"){n={type:"String",String:a};}else if(P==="boolean"){n={type:"Bool",Bool:a};}else if(P==="number"){n={type:"Int",Int:a};}else if(Array.isArray(a)){n={type:"Collection",Collection:a.map(function(Q,R){return r(Q,F+"/"+R,i,o);})};if(a.length>0){if(a[0].hasOwnProperty("$PropertyPath")){n.Collection.type="PropertyPath";}else if(a[0].hasOwnProperty("$Path")){n.Collection.type="Path";}else if(a[0].hasOwnProperty("$NavigationPropertyPath")){n.Collection.type="NavigationPropertyPath";}else if(a[0].hasOwnProperty("$AnnotationPath")){n.Collection.type="AnnotationPath";}else if(a[0].hasOwnProperty("$Type")){n.Collection.type="Record";}else if(a[0].hasOwnProperty("$If")){n.Collection.type="If";}else if(a[0].hasOwnProperty("$Or")){n.Collection.type="Or";}else if(a[0].hasOwnProperty("$And")){n.Collection.type="And";}else if(a[0].hasOwnProperty("$Eq")){n.Collection.type="Eq";}else if(a[0].hasOwnProperty("$Ne")){n.Collection.type="Ne";}else if(a[0].hasOwnProperty("$Not")){n.Collection.type="Not";}else if(a[0].hasOwnProperty("$Gt")){n.Collection.type="Gt";}else if(a[0].hasOwnProperty("$Ge")){n.Collection.type="Ge";}else if(a[0].hasOwnProperty("$Lt")){n.Collection.type="Lt";}else if(a[0].hasOwnProperty("$Le")){n.Collection.type="Le";}else if(a[0].hasOwnProperty("$Apply")){n.Collection.type="Apply";}else if(typeof a[0]==="object"){n.Collection.type="Record";}else{n.Collection.type="String";}}}else if(a.$Path!==undefined){n={type:"Path",Path:a.$Path};}else if(a.$Decimal!==undefined){n={type:"Decimal",Decimal:parseFloat(a.$Decimal)};}else if(a.$PropertyPath!==undefined){n={type:"PropertyPath",PropertyPath:a.$PropertyPath};}else if(a.$NavigationPropertyPath!==undefined){n={type:"NavigationPropertyPath",NavigationPropertyPath:a.$NavigationPropertyPath};}else if(a.$If!==undefined){n={type:"If",If:a.$If};}else if(a.$And!==undefined){n={type:"And",And:a.$And};}else if(a.$Or!==undefined){n={type:"Or",Or:a.$Or};}else if(a.$Not!==undefined){n={type:"Not",Not:a.$Not};}else if(a.$Eq!==undefined){n={type:"Eq",Eq:a.$Eq};}else if(a.$Ne!==undefined){n={type:"Ne",Ne:a.$Ne};}else if(a.$Gt!==undefined){n={type:"Gt",Gt:a.$Gt};}else if(a.$Ge!==undefined){n={type:"Ge",Ge:a.$Ge};}else if(a.$Lt!==undefined){n={type:"Lt",Lt:a.$Lt};}else if(a.$Le!==undefined){n={type:"Le",Le:a.$Le};}else if(a.$Apply!==undefined){n={type:"Apply",Apply:a.$Apply,Function:a.$Function};}else if(a.$AnnotationPath!==undefined){n={type:"AnnotationPath",AnnotationPath:a.$AnnotationPath};}else if(a.$EnumMember!==undefined){n={type:"EnumMember",EnumMember:q(a.$EnumMember.split("/")[0])+"/"+a.$EnumMember.split("/")[1]};}else if(a.$Type){n={type:"Record",Record:r(a,e,i,o)};}else{n={type:"Record",Record:r(a,e,i,o)};}return{name:b,value:n};}function q(a){var b=a.split("@"),e=f(b,2),i=e[0],n=e[1];if(!n){n=i;i="";}else{i+="@";}var o=n.lastIndexOf(".");return i+V[n.substr(0,o)]+"."+n.substr(o+1);}function r(a,b,e,o){var i={};var n=typeof a;if(a===null){i={type:"Null",Null:null};}else if(n==="string"){i={type:"String",String:a};}else if(n==="boolean"){i={type:"Bool",Bool:a};}else if(n==="number"){i={type:"Int",Int:a};}else if(a.$AnnotationPath!==undefined){i={type:"AnnotationPath",AnnotationPath:a.$AnnotationPath};}else if(a.$Path!==undefined){i={type:"Path",Path:a.$Path};}else if(a.$Decimal!==undefined){i={type:"Decimal",Decimal:parseFloat(a.$Decimal)};}else if(a.$PropertyPath!==undefined){i={type:"PropertyPath",PropertyPath:a.$PropertyPath};}else if(a.$If!==undefined){i={type:"If",If:a.$If};}else if(a.$And!==undefined){i={type:"And",And:a.$And};}else if(a.$Or!==undefined){i={type:"Or",Or:a.$Or};}else if(a.$Not!==undefined){i={type:"Not",Not:a.$Not};}else if(a.$Eq!==undefined){i={type:"Eq",Eq:a.$Eq};}else if(a.$Ne!==undefined){i={type:"Ne",Ne:a.$Ne};}else if(a.$Gt!==undefined){i={type:"Gt",Gt:a.$Gt};}else if(a.$Ge!==undefined){i={type:"Ge",Ge:a.$Ge};}else if(a.$Lt!==undefined){i={type:"Lt",Lt:a.$Lt};}else if(a.$Le!==undefined){i={type:"Le",Le:a.$Le};}else if(a.$Apply!==undefined){i={type:"Apply",Apply:a.$Apply,Function:a.$Function};}else if(a.$NavigationPropertyPath!==undefined){i={type:"NavigationPropertyPath",NavigationPropertyPath:a.$NavigationPropertyPath};}else if(a.$EnumMember!==undefined){i={type:"EnumMember",EnumMember:q(a.$EnumMember.split("/")[0])+"/"+a.$EnumMember.split("/")[1]};}else if(Array.isArray(a)){var F=i;F.collection=a.map(function(R,T){return r(R,b+"/"+T,e,o);});if(a.length>0){if(a[0].hasOwnProperty("$PropertyPath")){F.collection.type="PropertyPath";}else if(a[0].hasOwnProperty("$Path")){F.collection.type="Path";}else if(a[0].hasOwnProperty("$NavigationPropertyPath")){F.collection.type="NavigationPropertyPath";}else if(a[0].hasOwnProperty("$AnnotationPath")){F.collection.type="AnnotationPath";}else if(a[0].hasOwnProperty("$Type")){F.collection.type="Record";}else if(a[0].hasOwnProperty("$If")){F.collection.type="If";}else if(a[0].hasOwnProperty("$And")){F.collection.type="And";}else if(a[0].hasOwnProperty("$Or")){F.collection.type="Or";}else if(a[0].hasOwnProperty("$Eq")){F.collection.type="Eq";}else if(a[0].hasOwnProperty("$Ne")){F.collection.type="Ne";}else if(a[0].hasOwnProperty("$Not")){F.collection.type="Not";}else if(a[0].hasOwnProperty("$Gt")){F.collection.type="Gt";}else if(a[0].hasOwnProperty("$Ge")){F.collection.type="Ge";}else if(a[0].hasOwnProperty("$Lt")){F.collection.type="Lt";}else if(a[0].hasOwnProperty("$Le")){F.collection.type="Le";}else if(a[0].hasOwnProperty("$Apply")){F.collection.type="Apply";}else if(typeof a[0]==="object"){F.collection.type="Record";}else{F.collection.type="String";}}}else{if(a.$Type){var P=a.$Type;i.type=P;}var Q=[];Object.keys(a).forEach(function(R){if(R!=="$Type"&&R!=="$If"&&R!=="$Apply"&&R!=="$And"&&R!=="$Or"&&R!=="$Ne"&&R!=="$Gt"&&R!=="$Ge"&&R!=="$Lt"&&R!=="$Le"&&R!=="$Not"&&R!=="$Eq"&&!R.startsWith("@")){Q.push(p(a[R],R,b,e,o));}else if(R.startsWith("@")){w(d({},R,a[R]),b,e,o);}});i.propertyValues=Q;}return i;}function s(a,b){if(!b.hasOwnProperty(a)){b[a]={target:a,annotations:[]};}return b[a];}function t(a){return a.filter(function(R){if(R.Target&&R.Target.$AnnotationPath){return R.Target.$AnnotationPath.indexOf("@com.sap.vocabularies.UI.v1.Chart")===-1;}else{return true;}});}function u(a){return a.filter(function(R){return R.$Type!=="com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation";});}function v(a){return a.filter(function(R){return R.$AnnotationPath!=="@com.sap.vocabularies.UI.v1.Chart";});}function w(a,b,e,o){if(Object.keys(a).length===0){return;}var i=s(b,e);if(!o.MicroChart){delete a["@com.sap.vocabularies.UI.v1.Chart"];}var n=function(P){var Q=a[P];switch(P){case"@com.sap.vocabularies.UI.v1.HeaderFacets":if(!o.MicroChart){Q=t(Q);a[P]=Q;}break;case"@com.sap.vocabularies.UI.v1.Identification":if(!o.IntentBasedNavigation){Q=u(Q);a[P]=Q;}break;case"@com.sap.vocabularies.UI.v1.LineItem":if(!o.IntentBasedNavigation){Q=u(Q);a[P]=Q;}if(!o.MicroChart){Q=t(Q);a[P]=Q;}break;case"@com.sap.vocabularies.UI.v1.FieldGroup":if(!o.IntentBasedNavigation){Q.Data=u(Q.Data);a[P]=Q;}if(!o.MicroChart){Q.Data=t(Q.Data);a[P]=Q;}break;case"@com.sap.vocabularies.UI.v1.PresentationVariant":if(!o.Chart&&Q.Visualizations){Q.Visualizations=v(Q.Visualizations);a[P]=Q;}break;default:break;}var R=i;var T=P.split("@");if(T.length>2){R=s(b+"@"+T[1],e);P=T[2];}else{P=T[1];}var U=P.split("#");var W=U[1];P=U[0];var X={term:"".concat(P),qualifier:W};var Y=b+"@"+X.term;if(W){Y+="#"+W;}var Z=false;var $=typeof Q;if(Q===null){X.value={type:"Bool",Bool:Q};}else if($==="string"){X.value={type:"String",String:Q};}else if($==="boolean"){X.value={type:"Bool",Bool:Q};}else if($==="number"){X.value={type:"Int",Int:Q};}else if(Q.$If!==undefined){X.value={type:"If",If:Q.$If};}else if(Q.$And!==undefined){X.value={type:"And",And:Q.$And};}else if(Q.$Or!==undefined){X.value={type:"Or",Or:Q.$Or};}else if(Q.$Not!==undefined){X.value={type:"Not",Not:Q.$Not};}else if(Q.$Eq!==undefined){X.value={type:"Eq",Eq:Q.$Eq};}else if(Q.$Ne!==undefined){X.value={type:"Ne",Ne:Q.$Ne};}else if(Q.$Gt!==undefined){X.value={type:"Gt",Gt:Q.$Gt};}else if(Q.$Ge!==undefined){X.value={type:"Ge",Ge:Q.$Ge};}else if(Q.$Lt!==undefined){X.value={type:"Lt",Lt:Q.$Lt};}else if(Q.$Le!==undefined){X.value={type:"Le",Le:Q.$Le};}else if(Q.$Apply!==undefined){X.value={type:"Apply",Apply:Q.$Apply,Function:Q.$Function};}else if(Q.$Path!==undefined){X.value={type:"Path",Path:Q.$Path};}else if(Q.$AnnotationPath!==undefined){X.value={type:"AnnotationPath",AnnotationPath:Q.$AnnotationPath};}else if(Q.$Decimal!==undefined){X.value={type:"Decimal",Decimal:parseFloat(Q.$Decimal)};}else if(Q.$EnumMember!==undefined){X.value={type:"EnumMember",EnumMember:q(Q.$EnumMember.split("/")[0])+"/"+Q.$EnumMember.split("/")[1]};}else if(Array.isArray(Q)){Z=true;X.collection=Q.map(function(e1,f1){return r(e1,Y+"/"+f1,e,o);});if(Q.length>0){if(Q[0].hasOwnProperty("$PropertyPath")){X.collection.type="PropertyPath";}else if(Q[0].hasOwnProperty("$Path")){X.collection.type="Path";}else if(Q[0].hasOwnProperty("$NavigationPropertyPath")){X.collection.type="NavigationPropertyPath";}else if(Q[0].hasOwnProperty("$AnnotationPath")){X.collection.type="AnnotationPath";}else if(Q[0].hasOwnProperty("$Type")){X.collection.type="Record";}else if(Q[0].hasOwnProperty("$If")){X.collection.type="If";}else if(Q[0].hasOwnProperty("$Or")){X.collection.type="Or";}else if(Q[0].hasOwnProperty("$Eq")){X.collection.type="Eq";}else if(Q[0].hasOwnProperty("$Ne")){X.collection.type="Ne";}else if(Q[0].hasOwnProperty("$Not")){X.collection.type="Not";}else if(Q[0].hasOwnProperty("$Gt")){X.collection.type="Gt";}else if(Q[0].hasOwnProperty("$Ge")){X.collection.type="Ge";}else if(Q[0].hasOwnProperty("$Lt")){X.collection.type="Lt";}else if(Q[0].hasOwnProperty("$Le")){X.collection.type="Le";}else if(Q[0].hasOwnProperty("$And")){X.collection.type="And";}else if(Q[0].hasOwnProperty("$Apply")){X.collection.type="Apply";}else if(typeof Q[0]==="object"){X.collection.type="Record";}else{X.collection.type="String";}}}else{var a1={propertyValues:[]};if(Q.$Type){var b1=Q.$Type;a1.type="".concat(b1);}var c1=[];for(var d1 in Q){if(d1!=="$Type"&&!d1.startsWith("@")){c1.push(p(Q[d1],d1,Y,e,o));}else if(d1.startsWith("@")){w(d({},d1,Q[d1]),Y,e,o);}}a1.propertyValues=c1;X.record=a1;}X.isCollection=Z;R.annotations.push(X);F=P;};for(var F in a){n(F);}}function x(a,e,b){var i={_type:"Property",name:b,fullyQualifiedName:"".concat(e.fullyQualifiedName,"/").concat(b),type:a.$Type,maxLength:a.$MaxLength,precision:a.$Precision,scale:a.$Scale,nullable:a.$Nullable};return i;}function y(n,e,a){var b=[];if(n.$ReferentialConstraint){b=Object.keys(n.$ReferentialConstraint).map(function(o){return{sourceTypeName:e.name,sourceProperty:o,targetTypeName:n.$Type,targetProperty:n.$ReferentialConstraint[o]};});}var i={_type:"NavigationProperty",name:a,fullyQualifiedName:"".concat(e.fullyQualifiedName,"/").concat(a),partner:n.$Partner,isCollection:n.$isCollection?n.$isCollection:false,containsTarget:n.$ContainsTarget,targetTypeName:n.$Type,referentialConstraint:b};return i;}function z(e,a,b){var i={_type:"EntitySet",name:a,navigationPropertyBinding:{},entityTypeName:e.$Type,fullyQualifiedName:"".concat(b,"/").concat(a)};return i;}function B(a,b,e){var i={_type:"Singleton",name:b,navigationPropertyBinding:{},typeName:a.$Type,fullyQualifiedName:"".concat(e,"/").concat(b),nullable:true};return i;}function C(e,i,n){var o={_type:"ComplexType",name:i.replace(n+".",""),fullyQualifiedName:i,properties:[],navigationProperties:[]};var F=Object.keys(e).filter(function(a){if(a!="$Key"&&a!="$kind"){return e[a].$kind==="Property";}}).sort(function(a,b){return a>b?1:-1;}).map(function(a){return x(e[a],o,a);});o.properties=F;var P=Object.keys(e).filter(function(a){if(a!="$Key"&&a!="$kind"){return e[a].$kind==="NavigationProperty";}}).sort(function(a,b){return a>b?1:-1;}).map(function(a){return y(e[a],o,a);});o.navigationProperties=P;return o;}function E(e,o){if(!e.$Key&&e.$BaseType){return E(o["".concat(e.$BaseType)],o);}return e.$Key||[];}function G(e,a,n,b){var i=E(e,b);var o={_type:"EntityType",name:a.replace(n+".",""),fullyQualifiedName:a,keys:[],entityProperties:[],navigationProperties:[]};var F=Object.keys(e).filter(function(Q){if(Q!="$Key"&&Q!="$kind"){return e[Q].$kind==="Property";}}).map(function(Q){return x(e[Q],o,Q);});var P=Object.keys(e).filter(function(Q){if(Q!="$Key"&&Q!="$kind"){return e[Q].$kind==="NavigationProperty";}}).map(function(Q){return y(e[Q],o,Q);});o.keys=i.map(function(Q){return F.find(function(R){return R.name===Q;});}).filter(function(Q){return Q!==undefined;});o.entityProperties=F;o.navigationProperties=P;return o;}function H(a,b,n,e){var i="";var o="".concat(a);var F=a.substr(n.length+1);if(b.$IsBound){var P=b.$Parameter[0];i=P.$Type;if(P.$isCollection===true){o="".concat(a,"(Collection(").concat(i,"))");}else{o="".concat(a,"(").concat(i,")");}}else{o="".concat(e,"/").concat(F);}var Q=b.$Parameter||[];return{_type:"Action",name:F,fullyQualifiedName:o,isBound:b.$IsBound,sourceType:i,returnType:b.$ReturnType?b.$ReturnType.$Type:"",parameters:Q.map(function(R){return{_type:"ActionParameter",isEntitySet:R.$Type===b.$EntitySetPath,fullyQualifiedName:"".concat(o,"/").concat(R.$Name),type:R.$Type};})};}function I(o){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:D;var i=o.getObject("/$");var n={};var F=[];var P=[];var Q=[];var R=[];var T=i.$EntityContainer;var U="";var W=Object.keys(i).filter(function(a){return i[a].$kind==="Schema";});if(W&&W.length>0){U=W[0].substr(0,W[0].length-1);}else if(F&&F.length){U=F[0].fullyQualifiedName.replace(F[0].name,"");U=U.substr(0,U.length-1);}Object.keys(i).forEach(function(a){if(a!=="$kind"){switch(i[a].$kind){case"EntityType":var b=G(i[a],a,U,i);if(i.$Annotations[b.fullyQualifiedName]&&i.$Annotations[b.fullyQualifiedName]["@com.sap.vocabularies.UI.v1.FilterFacets"]){i.$Annotations[b.fullyQualifiedName]["@com.sap.vocabularies.UI.v1.FilterFacets"].forEach(function(d1){d1.ID=d1.ID||g([{Facet:d1}]);});}b.entityProperties.forEach(function(d1){if(!i.$Annotations[d1.fullyQualifiedName]){i.$Annotations[d1.fullyQualifiedName]={};}if(!i.$Annotations[d1.fullyQualifiedName]["@com.sap.vocabularies.UI.v1.DataFieldDefault"]){i.$Annotations[d1.fullyQualifiedName]["@com.sap.vocabularies.UI.v1.DataFieldDefault"]={$Type:"com.sap.vocabularies.UI.v1.DataField",Value:{$Path:d1.name}};}});F.push(b);break;case"ComplexType":var c1=C(i[a],a,U);R.push(c1);break;}}});var X=i[T];Object.keys(X).forEach(function(a){if(a!=="$kind"){switch(X[a].$kind){case"EntitySet":var b=z(X[a],a,T);P.push(b);break;case"Singleton":var c1=B(X[a],a,T);Q.push(c1);break;}}});var Y={};if(T){Y={name:T.replace(U+".",""),fullyQualifiedName:T};}P.forEach(function(a){var b=X[a.name].$NavigationPropertyBinding;if(b){Object.keys(b).forEach(function(c1){var d1=P.find(function(e1){return e1.name===b[c1];});if(d1){a.navigationPropertyBinding[c1]=d1;}});}});var Z=Object.keys(i).filter(function(a){return Array.isArray(i[a])&&i[a].length>0&&i[a][0].$kind==="Action";}).reduce(function(a,b){var Z=i[b];Z.forEach(function(c1){a.push(H(b,c1,U,T));});return a;},[]);for(var $ in i.$Annotations){w(i.$Annotations[$],$,n,e);}var a1=Object.keys(n).sort(function(a,b){return a.length>=b.length?1:-1;}).map(function(a){return n[a];});var b1=[];return{identification:"metamodelResult",version:"4.0",schema:{entityContainer:Y,entitySets:P,entityTypes:F,complexTypes:R,singletons:Q,associations:[],actions:Z,namespace:U,annotations:{"metamodelResult":a1}},references:b1};}_.prepareEntityTypes=I;var M={};function J(o,a){var b=o.id;if(!M.hasOwnProperty(b)){var e=I(o,a);M[b]=A.convertTypes(e);}return M[b];}_.convertTypes=J;function K(o){delete M[o.id];}_.deleteModelCacheData=K;function L(o){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var a=J(o.getModel());var P=o.getPath();var b=P.split("/");var e=a.entitySets.find(function(j1){return j1.name===b[1];});var n=b.slice(2).join("/");var F=[e];while(n&&n.length>0&&n.startsWith("$NavigationPropertyBinding")){var Q;var R=n.split("/");var T=0;var U=void 0,W=void 0;R=R.slice(1);while(!U&&R.length>T&&R[T]!=="$NavigationPropertyBinding"){W=R.slice(0,T+1).join("/");U=e&&e.navigationPropertyBinding[W];T++;}if(!U){W=R[0];}var X=((Q=W)===null||Q===void 0?void 0:Q.split("/"))||[];var Y=e&&e.entityType;var Z=c(X),$;try{var a1=function(){var j1=$.value;var k1=Y&&Y.navigationProperties.find(function(l1){return l1.name===j1;});if(k1){F.push(k1);Y=k1.targetType;}else{return"break";}};for(Z.s();!($=Z.n()).done;){var b1=a1();if(b1==="break")break;}}catch(c1){Z.e(c1);}finally{Z.f();}e=e&&U||e&&e.navigationPropertyBinding[R[0]];if(e){F.push(e);}n=R.slice(X.length||1).join("/");}if(n.startsWith("$Type")){n=b.slice(3).join("/");}if(e&&n.length){var d1=e.entityType.resolvePath(n,i);if(d1){if(i){d1.visitedObjects=F.concat(d1.visitedObjects);}}else if(e.entityType&&e.entityType.actions){var e1=e.entityType&&e.entityType.actions;var f1=n.split("/");if(e1[f1[0]]){var g1=e1[f1[0]];if(f1[1]&&g1.parameters){var h1=f1[1];var i1=g1.parameters.find(function(j1){return j1.fullyQualifiedName.endsWith("/"+h1);});return i1;}else if(n.length===1){return g1;}}}return d1;}else{if(i){return{target:e,visitedObjects:F};}return e;}}_.convertMetaModelContext=L;function N(o,e){var a=L(o,true);var b;if(e&&e.getPath()!=="/"){b=N(e);}return O(a,b);}_.getInvolvedDataModelObjects=N;function O(a,b){var e=a.visitedObjects.filter(function(X){return X&&X.hasOwnProperty("_type")&&X._type!=="EntityType";});if(a.target&&a.target.hasOwnProperty("_type")&&a.target._type!=="EntityType"){e.push(a.target);}var n=[];var o=e[0];var F=o;var P=o.entityType;var i=1;var Q;var R=[];while(i<e.length){Q=e[i++];if(Q._type==="NavigationProperty"){R.push(Q.name);n.push(Q);P=Q.targetType;if(F&&F.navigationPropertyBinding.hasOwnProperty(R.join("/"))){F=F.navigationPropertyBinding[Q.name];R=[];}else{F=undefined;}}if(Q._type==="EntitySet"){F=Q;P=F.entityType;}}if(b&&b.startingEntitySet!==o){var T=e.indexOf(b.startingEntitySet);if(T!==-1){var U=e.slice(0,T);b.startingEntitySet=o;b.navigationProperties=U.filter(function(X){return X._type==="NavigationProperty";}).concat(b.navigationProperties);}}var W={startingEntitySet:o,targetEntitySet:F,targetEntityType:P,targetObject:a.target,navigationProperties:n,contextLocation:b};if(!W.contextLocation){W.contextLocation=W;}return W;}_.getInvolvedDataModelObjectFromPath=O;return _;},false);
|
|
5
|
+
sap.ui.define(["sap/fe/core/converters/common/AnnotationConverter","../helpers/StableIdHelper"],function(A,S){"use strict";var _={};var g=S.generate;function c(o,a){var b=typeof Symbol!=="undefined"&&o[Symbol.iterator]||o["@@iterator"];if(!b){if(Array.isArray(o)||(b=j(o))||a&&o&&typeof o.length==="number"){if(b)o=b;var i=0;var F=function(){};return{s:F,n:function(){if(i>=o.length)return{done:true};return{done:false,value:o[i++]};},e:function(e){throw e;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var n=true,P=false,Q;return{s:function(){b=b.call(o);},n:function(){var e=b.next();n=e.done;return e;},e:function(e){P=true;Q=e;},f:function(){try{if(!n&&b.return!=null)b.return();}finally{if(P)throw Q;}}};}function d(o,a,b){if(a in o){Object.defineProperty(o,a,{value:b,enumerable:true,configurable:true,writable:true});}else{o[a]=b;}return o;}function f(a,i){return m(a)||l(a,i)||j(a,i)||h();}function h(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function j(o,a){if(!o)return;if(typeof o==="string")return k(o,a);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return k(o,a);}function k(a,b){if(b==null||b>a.length)b=a.length;for(var i=0,e=new Array(b);i<b;i++){e[i]=a[i];}return e;}function l(a,i){var b=a==null?null:typeof Symbol!=="undefined"&&a[Symbol.iterator]||a["@@iterator"];if(b==null)return;var e=[];var n=true;var o=false;var F,P;try{for(b=b.call(a);!(n=(F=b.next()).done);n=true){e.push(F.value);if(i&&e.length===i)break;}}catch(Q){o=true;P=Q;}finally{try{if(!n&&b["return"]!=null)b["return"]();}finally{if(o)throw P;}}return e;}function m(a){if(Array.isArray(a))return a;}var V={"Org.OData.Capabilities.V1":"Capabilities","Org.OData.Core.V1":"Core","Org.OData.Measures.V1":"Measures","com.sap.vocabularies.Common.v1":"Common","com.sap.vocabularies.UI.v1":"UI","com.sap.vocabularies.Session.v1":"Session","com.sap.vocabularies.Analytics.v1":"Analytics","com.sap.vocabularies.PersonalData.v1":"PersonalData","com.sap.vocabularies.Communication.v1":"Communication"};var D={Chart:true,MicroChart:true,UShell:true,IntentBasedNavigation:true};_.DefaultEnvironmentCapabilities=D;function p(a,b,e,i,o){var n;var F=e+"/"+b;var P=typeof a;if(a===null){n={type:"Null",Null:null};}else if(P==="string"){n={type:"String",String:a};}else if(P==="boolean"){n={type:"Bool",Bool:a};}else if(P==="number"){n={type:"Int",Int:a};}else if(Array.isArray(a)){n={type:"Collection",Collection:a.map(function(Q,R){return r(Q,F+"/"+R,i,o);})};if(a.length>0){if(a[0].hasOwnProperty("$PropertyPath")){n.Collection.type="PropertyPath";}else if(a[0].hasOwnProperty("$Path")){n.Collection.type="Path";}else if(a[0].hasOwnProperty("$NavigationPropertyPath")){n.Collection.type="NavigationPropertyPath";}else if(a[0].hasOwnProperty("$AnnotationPath")){n.Collection.type="AnnotationPath";}else if(a[0].hasOwnProperty("$Type")){n.Collection.type="Record";}else if(a[0].hasOwnProperty("$If")){n.Collection.type="If";}else if(a[0].hasOwnProperty("$Or")){n.Collection.type="Or";}else if(a[0].hasOwnProperty("$And")){n.Collection.type="And";}else if(a[0].hasOwnProperty("$Eq")){n.Collection.type="Eq";}else if(a[0].hasOwnProperty("$Ne")){n.Collection.type="Ne";}else if(a[0].hasOwnProperty("$Not")){n.Collection.type="Not";}else if(a[0].hasOwnProperty("$Gt")){n.Collection.type="Gt";}else if(a[0].hasOwnProperty("$Ge")){n.Collection.type="Ge";}else if(a[0].hasOwnProperty("$Lt")){n.Collection.type="Lt";}else if(a[0].hasOwnProperty("$Le")){n.Collection.type="Le";}else if(a[0].hasOwnProperty("$Apply")){n.Collection.type="Apply";}else if(typeof a[0]==="object"){n.Collection.type="Record";}else{n.Collection.type="String";}}}else if(a.$Path!==undefined){n={type:"Path",Path:a.$Path};}else if(a.$Decimal!==undefined){n={type:"Decimal",Decimal:parseFloat(a.$Decimal)};}else if(a.$PropertyPath!==undefined){n={type:"PropertyPath",PropertyPath:a.$PropertyPath};}else if(a.$NavigationPropertyPath!==undefined){n={type:"NavigationPropertyPath",NavigationPropertyPath:a.$NavigationPropertyPath};}else if(a.$If!==undefined){n={type:"If",If:a.$If};}else if(a.$And!==undefined){n={type:"And",And:a.$And};}else if(a.$Or!==undefined){n={type:"Or",Or:a.$Or};}else if(a.$Not!==undefined){n={type:"Not",Not:a.$Not};}else if(a.$Eq!==undefined){n={type:"Eq",Eq:a.$Eq};}else if(a.$Ne!==undefined){n={type:"Ne",Ne:a.$Ne};}else if(a.$Gt!==undefined){n={type:"Gt",Gt:a.$Gt};}else if(a.$Ge!==undefined){n={type:"Ge",Ge:a.$Ge};}else if(a.$Lt!==undefined){n={type:"Lt",Lt:a.$Lt};}else if(a.$Le!==undefined){n={type:"Le",Le:a.$Le};}else if(a.$Apply!==undefined){n={type:"Apply",Apply:a.$Apply,Function:a.$Function};}else if(a.$AnnotationPath!==undefined){n={type:"AnnotationPath",AnnotationPath:a.$AnnotationPath};}else if(a.$EnumMember!==undefined){n={type:"EnumMember",EnumMember:q(a.$EnumMember.split("/")[0])+"/"+a.$EnumMember.split("/")[1]};}else if(a.$Type){n={type:"Record",Record:r(a,e,i,o)};}else{n={type:"Record",Record:r(a,e,i,o)};}return{name:b,value:n};}function q(a){var b=a.split("@"),e=f(b,2),i=e[0],n=e[1];if(!n){n=i;i="";}else{i+="@";}var o=n.lastIndexOf(".");return i+V[n.substr(0,o)]+"."+n.substr(o+1);}function r(a,b,e,o){var i={};var n=typeof a;if(a===null){i={type:"Null",Null:null};}else if(n==="string"){i={type:"String",String:a};}else if(n==="boolean"){i={type:"Bool",Bool:a};}else if(n==="number"){i={type:"Int",Int:a};}else if(a.$AnnotationPath!==undefined){i={type:"AnnotationPath",AnnotationPath:a.$AnnotationPath};}else if(a.$Path!==undefined){i={type:"Path",Path:a.$Path};}else if(a.$Decimal!==undefined){i={type:"Decimal",Decimal:parseFloat(a.$Decimal)};}else if(a.$PropertyPath!==undefined){i={type:"PropertyPath",PropertyPath:a.$PropertyPath};}else if(a.$If!==undefined){i={type:"If",If:a.$If};}else if(a.$And!==undefined){i={type:"And",And:a.$And};}else if(a.$Or!==undefined){i={type:"Or",Or:a.$Or};}else if(a.$Not!==undefined){i={type:"Not",Not:a.$Not};}else if(a.$Eq!==undefined){i={type:"Eq",Eq:a.$Eq};}else if(a.$Ne!==undefined){i={type:"Ne",Ne:a.$Ne};}else if(a.$Gt!==undefined){i={type:"Gt",Gt:a.$Gt};}else if(a.$Ge!==undefined){i={type:"Ge",Ge:a.$Ge};}else if(a.$Lt!==undefined){i={type:"Lt",Lt:a.$Lt};}else if(a.$Le!==undefined){i={type:"Le",Le:a.$Le};}else if(a.$Apply!==undefined){i={type:"Apply",Apply:a.$Apply,Function:a.$Function};}else if(a.$NavigationPropertyPath!==undefined){i={type:"NavigationPropertyPath",NavigationPropertyPath:a.$NavigationPropertyPath};}else if(a.$EnumMember!==undefined){i={type:"EnumMember",EnumMember:q(a.$EnumMember.split("/")[0])+"/"+a.$EnumMember.split("/")[1]};}else if(Array.isArray(a)){var F=i;F.collection=a.map(function(R,T){return r(R,b+"/"+T,e,o);});if(a.length>0){if(a[0].hasOwnProperty("$PropertyPath")){F.collection.type="PropertyPath";}else if(a[0].hasOwnProperty("$Path")){F.collection.type="Path";}else if(a[0].hasOwnProperty("$NavigationPropertyPath")){F.collection.type="NavigationPropertyPath";}else if(a[0].hasOwnProperty("$AnnotationPath")){F.collection.type="AnnotationPath";}else if(a[0].hasOwnProperty("$Type")){F.collection.type="Record";}else if(a[0].hasOwnProperty("$If")){F.collection.type="If";}else if(a[0].hasOwnProperty("$And")){F.collection.type="And";}else if(a[0].hasOwnProperty("$Or")){F.collection.type="Or";}else if(a[0].hasOwnProperty("$Eq")){F.collection.type="Eq";}else if(a[0].hasOwnProperty("$Ne")){F.collection.type="Ne";}else if(a[0].hasOwnProperty("$Not")){F.collection.type="Not";}else if(a[0].hasOwnProperty("$Gt")){F.collection.type="Gt";}else if(a[0].hasOwnProperty("$Ge")){F.collection.type="Ge";}else if(a[0].hasOwnProperty("$Lt")){F.collection.type="Lt";}else if(a[0].hasOwnProperty("$Le")){F.collection.type="Le";}else if(a[0].hasOwnProperty("$Apply")){F.collection.type="Apply";}else if(typeof a[0]==="object"){F.collection.type="Record";}else{F.collection.type="String";}}}else{if(a.$Type){var P=a.$Type;i.type=P;}var Q=[];Object.keys(a).forEach(function(R){if(R!=="$Type"&&R!=="$If"&&R!=="$Apply"&&R!=="$And"&&R!=="$Or"&&R!=="$Ne"&&R!=="$Gt"&&R!=="$Ge"&&R!=="$Lt"&&R!=="$Le"&&R!=="$Not"&&R!=="$Eq"&&!R.startsWith("@")){Q.push(p(a[R],R,b,e,o));}else if(R.startsWith("@")){w(d({},R,a[R]),b,e,o);}});i.propertyValues=Q;}return i;}function s(a,b){if(!b.hasOwnProperty(a)){b[a]={target:a,annotations:[]};}return b[a];}function t(a){return a.filter(function(R){if(R.Target&&R.Target.$AnnotationPath){return R.Target.$AnnotationPath.indexOf("@com.sap.vocabularies.UI.v1.Chart")===-1;}else{return true;}});}function u(a){return a.filter(function(R){return R.$Type!=="com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation";});}function v(a){return a.filter(function(R){return R.$AnnotationPath!=="@com.sap.vocabularies.UI.v1.Chart";});}function w(a,b,e,o){if(Object.keys(a).length===0){return;}var i=s(b,e);if(!o.MicroChart){delete a["@com.sap.vocabularies.UI.v1.Chart"];}var n=function(P){var Q=a[P];switch(P){case"@com.sap.vocabularies.UI.v1.HeaderFacets":if(!o.MicroChart){Q=t(Q);a[P]=Q;}break;case"@com.sap.vocabularies.UI.v1.Identification":if(!o.IntentBasedNavigation){Q=u(Q);a[P]=Q;}break;case"@com.sap.vocabularies.UI.v1.LineItem":if(!o.IntentBasedNavigation){Q=u(Q);a[P]=Q;}if(!o.MicroChart){Q=t(Q);a[P]=Q;}break;case"@com.sap.vocabularies.UI.v1.FieldGroup":if(!o.IntentBasedNavigation){Q.Data=u(Q.Data);a[P]=Q;}if(!o.MicroChart){Q.Data=t(Q.Data);a[P]=Q;}break;case"@com.sap.vocabularies.UI.v1.PresentationVariant":if(!o.Chart&&Q.Visualizations){Q.Visualizations=v(Q.Visualizations);a[P]=Q;}break;default:break;}var R=i;var T=P.split("@");if(T.length>2){R=s(b+"@"+T[1],e);P=T[2];}else{P=T[1];}var U=P.split("#");var W=U[1];P=U[0];var X={term:"".concat(P),qualifier:W};var Y=b+"@"+X.term;if(W){Y+="#"+W;}var Z=false;var $=typeof Q;if(Q===null){X.value={type:"Bool",Bool:Q};}else if($==="string"){X.value={type:"String",String:Q};}else if($==="boolean"){X.value={type:"Bool",Bool:Q};}else if($==="number"){X.value={type:"Int",Int:Q};}else if(Q.$If!==undefined){X.value={type:"If",If:Q.$If};}else if(Q.$And!==undefined){X.value={type:"And",And:Q.$And};}else if(Q.$Or!==undefined){X.value={type:"Or",Or:Q.$Or};}else if(Q.$Not!==undefined){X.value={type:"Not",Not:Q.$Not};}else if(Q.$Eq!==undefined){X.value={type:"Eq",Eq:Q.$Eq};}else if(Q.$Ne!==undefined){X.value={type:"Ne",Ne:Q.$Ne};}else if(Q.$Gt!==undefined){X.value={type:"Gt",Gt:Q.$Gt};}else if(Q.$Ge!==undefined){X.value={type:"Ge",Ge:Q.$Ge};}else if(Q.$Lt!==undefined){X.value={type:"Lt",Lt:Q.$Lt};}else if(Q.$Le!==undefined){X.value={type:"Le",Le:Q.$Le};}else if(Q.$Apply!==undefined){X.value={type:"Apply",Apply:Q.$Apply,Function:Q.$Function};}else if(Q.$Path!==undefined){X.value={type:"Path",Path:Q.$Path};}else if(Q.$AnnotationPath!==undefined){X.value={type:"AnnotationPath",AnnotationPath:Q.$AnnotationPath};}else if(Q.$Decimal!==undefined){X.value={type:"Decimal",Decimal:parseFloat(Q.$Decimal)};}else if(Q.$EnumMember!==undefined){X.value={type:"EnumMember",EnumMember:q(Q.$EnumMember.split("/")[0])+"/"+Q.$EnumMember.split("/")[1]};}else if(Array.isArray(Q)){Z=true;X.collection=Q.map(function(e1,f1){return r(e1,Y+"/"+f1,e,o);});if(Q.length>0){if(Q[0].hasOwnProperty("$PropertyPath")){X.collection.type="PropertyPath";}else if(Q[0].hasOwnProperty("$Path")){X.collection.type="Path";}else if(Q[0].hasOwnProperty("$NavigationPropertyPath")){X.collection.type="NavigationPropertyPath";}else if(Q[0].hasOwnProperty("$AnnotationPath")){X.collection.type="AnnotationPath";}else if(Q[0].hasOwnProperty("$Type")){X.collection.type="Record";}else if(Q[0].hasOwnProperty("$If")){X.collection.type="If";}else if(Q[0].hasOwnProperty("$Or")){X.collection.type="Or";}else if(Q[0].hasOwnProperty("$Eq")){X.collection.type="Eq";}else if(Q[0].hasOwnProperty("$Ne")){X.collection.type="Ne";}else if(Q[0].hasOwnProperty("$Not")){X.collection.type="Not";}else if(Q[0].hasOwnProperty("$Gt")){X.collection.type="Gt";}else if(Q[0].hasOwnProperty("$Ge")){X.collection.type="Ge";}else if(Q[0].hasOwnProperty("$Lt")){X.collection.type="Lt";}else if(Q[0].hasOwnProperty("$Le")){X.collection.type="Le";}else if(Q[0].hasOwnProperty("$And")){X.collection.type="And";}else if(Q[0].hasOwnProperty("$Apply")){X.collection.type="Apply";}else if(typeof Q[0]==="object"){X.collection.type="Record";}else{X.collection.type="String";}}}else{var a1={propertyValues:[]};if(Q.$Type){var b1=Q.$Type;a1.type="".concat(b1);}var c1=[];for(var d1 in Q){if(d1!=="$Type"&&!d1.startsWith("@")){c1.push(p(Q[d1],d1,Y,e,o));}else if(d1.startsWith("@")){w(d({},d1,Q[d1]),Y,e,o);}}a1.propertyValues=c1;X.record=a1;}X.isCollection=Z;R.annotations.push(X);F=P;};for(var F in a){n(F);}}function x(a,e,b){var i={_type:"Property",name:b,fullyQualifiedName:"".concat(e.fullyQualifiedName,"/").concat(b),type:a.$Type,maxLength:a.$MaxLength,precision:a.$Precision,scale:a.$Scale,nullable:a.$Nullable};return i;}function y(n,e,a){var b=[];if(n.$ReferentialConstraint){b=Object.keys(n.$ReferentialConstraint).map(function(o){return{sourceTypeName:e.name,sourceProperty:o,targetTypeName:n.$Type,targetProperty:n.$ReferentialConstraint[o]};});}var i={_type:"NavigationProperty",name:a,fullyQualifiedName:"".concat(e.fullyQualifiedName,"/").concat(a),partner:n.$Partner,isCollection:n.$isCollection?n.$isCollection:false,containsTarget:n.$ContainsTarget,targetTypeName:n.$Type,referentialConstraint:b};return i;}function z(e,a,b){var i={_type:"EntitySet",name:a,navigationPropertyBinding:{},entityTypeName:e.$Type,fullyQualifiedName:"".concat(b,"/").concat(a)};return i;}function B(a,b,e){var i={_type:"Singleton",name:b,navigationPropertyBinding:{},typeName:a.$Type,fullyQualifiedName:"".concat(e,"/").concat(b),nullable:true};return i;}function C(e,i,n){var o={_type:"ComplexType",name:i.replace(n+".",""),fullyQualifiedName:i,properties:[],navigationProperties:[]};var F=Object.keys(e).filter(function(a){if(a!="$Key"&&a!="$kind"){return e[a].$kind==="Property";}}).sort(function(a,b){return a>b?1:-1;}).map(function(a){return x(e[a],o,a);});o.properties=F;var P=Object.keys(e).filter(function(a){if(a!="$Key"&&a!="$kind"){return e[a].$kind==="NavigationProperty";}}).sort(function(a,b){return a>b?1:-1;}).map(function(a){return y(e[a],o,a);});o.navigationProperties=P;return o;}function E(e,o){if(!e.$Key&&e.$BaseType){return E(o["".concat(e.$BaseType)],o);}return e.$Key||[];}function G(e,a,n,b){var i=E(e,b);var o={_type:"EntityType",name:a.replace(n+".",""),fullyQualifiedName:a,keys:[],entityProperties:[],navigationProperties:[]};var F=Object.keys(e).filter(function(Q){if(Q!="$Key"&&Q!="$kind"){return e[Q].$kind==="Property";}}).map(function(Q){return x(e[Q],o,Q);});var P=Object.keys(e).filter(function(Q){if(Q!="$Key"&&Q!="$kind"){return e[Q].$kind==="NavigationProperty";}}).map(function(Q){return y(e[Q],o,Q);});o.keys=i.map(function(Q){return F.find(function(R){return R.name===Q;});}).filter(function(Q){return Q!==undefined;});o.entityProperties=F;o.navigationProperties=P;return o;}function H(a,b,n,e){var i="";var o="".concat(a);var F=a.substr(n.length+1);if(b.$IsBound){var P=b.$Parameter[0];i=P.$Type;if(P.$isCollection===true){o="".concat(a,"(Collection(").concat(i,"))");}else{o="".concat(a,"(").concat(i,")");}}else{o="".concat(e,"/").concat(F);}var Q=b.$Parameter||[];return{_type:"Action",name:F,fullyQualifiedName:o,isBound:b.$IsBound,isFunction:false,sourceType:i,returnType:b.$ReturnType?b.$ReturnType.$Type:"",parameters:Q.map(function(R){return{_type:"ActionParameter",isEntitySet:R.$Type===b.$EntitySetPath,fullyQualifiedName:"".concat(o,"/").concat(R.$Name),type:R.$Type};})};}function I(o){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:D;var i=o.getObject("/$");var n={};var F=[];var P=[];var Q=[];var R=[];var T=i.$EntityContainer;var U="";var W=Object.keys(i).filter(function(a){return i[a].$kind==="Schema";});if(W&&W.length>0){U=W[0].substr(0,W[0].length-1);}else if(F&&F.length){U=F[0].fullyQualifiedName.replace(F[0].name,"");U=U.substr(0,U.length-1);}Object.keys(i).forEach(function(a){if(a!=="$kind"){switch(i[a].$kind){case"EntityType":var b=G(i[a],a,U,i);if(i.$Annotations[b.fullyQualifiedName]&&i.$Annotations[b.fullyQualifiedName]["@com.sap.vocabularies.UI.v1.FilterFacets"]){i.$Annotations[b.fullyQualifiedName]["@com.sap.vocabularies.UI.v1.FilterFacets"].forEach(function(d1){d1.ID=d1.ID||g([{Facet:d1}]);});}b.entityProperties.forEach(function(d1){if(!i.$Annotations[d1.fullyQualifiedName]){i.$Annotations[d1.fullyQualifiedName]={};}if(!i.$Annotations[d1.fullyQualifiedName]["@com.sap.vocabularies.UI.v1.DataFieldDefault"]){i.$Annotations[d1.fullyQualifiedName]["@com.sap.vocabularies.UI.v1.DataFieldDefault"]={$Type:"com.sap.vocabularies.UI.v1.DataField",Value:{$Path:d1.name}};}});F.push(b);break;case"ComplexType":var c1=C(i[a],a,U);R.push(c1);break;}}});var X=i[T];Object.keys(X).forEach(function(a){if(a!=="$kind"){switch(X[a].$kind){case"EntitySet":var b=z(X[a],a,T);P.push(b);break;case"Singleton":var c1=B(X[a],a,T);Q.push(c1);break;}}});var Y={};if(T){Y={name:T.replace(U+".",""),fullyQualifiedName:T};}P.forEach(function(a){var b=X[a.name].$NavigationPropertyBinding;if(b){Object.keys(b).forEach(function(c1){var d1=P.find(function(e1){return e1.name===b[c1];});if(d1){a.navigationPropertyBinding[c1]=d1;}});}});var Z=Object.keys(i).filter(function(a){return Array.isArray(i[a])&&i[a].length>0&&i[a][0].$kind==="Action";}).reduce(function(a,b){var Z=i[b];Z.forEach(function(c1){a.push(H(b,c1,U,T));});return a;},[]);for(var $ in i.$Annotations){w(i.$Annotations[$],$,n,e);}var a1=Object.keys(n).sort(function(a,b){return a.length>=b.length?1:-1;}).map(function(a){return n[a];});var b1=[];return{identification:"metamodelResult",version:"4.0",schema:{entityContainer:Y,entitySets:P,entityTypes:F,complexTypes:R,singletons:Q,associations:[],associationSets:[],actions:Z,namespace:U,annotations:{"metamodelResult":a1}},references:b1};}_.prepareEntityTypes=I;var M={};function J(o,a){var b=o.id;if(!M.hasOwnProperty(b)){var e=I(o,a);M[b]=A.convertTypes(e);}return M[b];}_.convertTypes=J;function K(o){delete M[o.id];}_.deleteModelCacheData=K;function L(o){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var a=J(o.getModel());var P=o.getPath();var b=P.split("/");var e=a.entitySets.find(function(j1){return j1.name===b[1];});if(!e){e=a.singletons.find(function(j1){return j1.name===b[1];});}var n=b.slice(2).join("/");var F=[e];while(n&&n.length>0&&n.startsWith("$NavigationPropertyBinding")){var Q;var R=n.split("/");var T=0;var U=void 0,W=void 0;R=R.slice(1);while(!U&&R.length>T&&R[T]!=="$NavigationPropertyBinding"){W=R.slice(0,T+1).join("/");U=e&&e.navigationPropertyBinding[W];T++;}if(!U){W=R[0];}var X=((Q=W)===null||Q===void 0?void 0:Q.split("/"))||[];var Y=e&&e.entityType;var Z=c(X),$;try{var a1=function(){var j1=$.value;var k1=Y&&Y.navigationProperties.find(function(l1){return l1.name===j1;});if(k1){F.push(k1);Y=k1.targetType;}else{return"break";}};for(Z.s();!($=Z.n()).done;){var b1=a1();if(b1==="break")break;}}catch(c1){Z.e(c1);}finally{Z.f();}e=e&&U||e&&e.navigationPropertyBinding[R[0]];if(e){F.push(e);}n=R.slice(X.length||1).join("/");}if(n.startsWith("$Type")){n=b.slice(3).join("/");}if(e&&n.length){var d1=e.entityType.resolvePath(n,i);if(d1){if(i){d1.visitedObjects=F.concat(d1.visitedObjects);}}else if(e.entityType&&e.entityType.actions){var e1=e.entityType&&e.entityType.actions;var f1=n.split("/");if(e1[f1[0]]){var g1=e1[f1[0]];if(f1[1]&&g1.parameters){var h1=f1[1];var i1=g1.parameters.find(function(j1){return j1.fullyQualifiedName.endsWith("/"+h1);});return i1;}else if(n.length===1){return g1;}}}return d1;}else{if(i){return{target:e,visitedObjects:F};}return e;}}_.convertMetaModelContext=L;function N(o,e){var a=L(o,true);var b;if(e&&e.getPath()!=="/"){b=N(e);}return O(a,b);}_.getInvolvedDataModelObjects=N;function O(a,b){var e=a.visitedObjects.filter(function(X){return X&&X.hasOwnProperty("_type")&&X._type!=="EntityType";});if(a.target&&a.target.hasOwnProperty("_type")&&a.target._type!=="EntityType"){e.push(a.target);}var n=[];var o=e[0];var F=o;var P=o.entityType;var i=1;var Q;var R=[];while(i<e.length){Q=e[i++];if(Q._type==="NavigationProperty"){R.push(Q.name);n.push(Q);P=Q.targetType;if(F&&F.navigationPropertyBinding.hasOwnProperty(R.join("/"))){F=F.navigationPropertyBinding[Q.name];R=[];}else{F=undefined;}}if(Q._type==="EntitySet"){F=Q;P=F.entityType;}}if(b&&b.startingEntitySet!==o){var T=e.indexOf(b.startingEntitySet);if(T!==-1){var U=e.slice(0,T);b.startingEntitySet=o;b.navigationProperties=U.filter(function(X){return X._type==="NavigationProperty";}).concat(b.navigationProperties);}}var W={startingEntitySet:o,targetEntitySet:F,targetEntityType:P,targetObject:a.target,navigationProperties:n,contextLocation:b};if(!W.contextLocation){W.contextLocation=W;}return W;}_.getInvolvedDataModelObjectFromPath=O;return _;},false);
|
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
ConverterOutput,
|
|
7
7
|
EntitySet as _EntitySet,
|
|
8
8
|
EntityType as _EntityType,
|
|
9
|
+
Singleton as _Singleton,
|
|
9
10
|
NavigationProperty as _NavigationProperty
|
|
10
11
|
} from "@sap-ux/annotation-converter";
|
|
11
12
|
import {
|
|
@@ -765,6 +766,7 @@ function prepareAction(actionName: string, actionRawData: MetaModelAction, names
|
|
|
765
766
|
name: actionShortName,
|
|
766
767
|
fullyQualifiedName: actionFQN,
|
|
767
768
|
isBound: actionRawData.$IsBound,
|
|
769
|
+
isFunction: false,
|
|
768
770
|
sourceType: actionEntityType,
|
|
769
771
|
returnType: actionRawData.$ReturnType ? actionRawData.$ReturnType.$Type : "",
|
|
770
772
|
parameters: parameters.map(param => {
|
|
@@ -906,6 +908,7 @@ export function prepareEntityTypes(
|
|
|
906
908
|
complexTypes,
|
|
907
909
|
singletons,
|
|
908
910
|
associations: [],
|
|
911
|
+
associationSets: [],
|
|
909
912
|
actions,
|
|
910
913
|
namespace,
|
|
911
914
|
annotations: {
|
|
@@ -943,7 +946,12 @@ export function convertMetaModelContext(oMetaModelContext: Context<ODataMetaMode
|
|
|
943
946
|
const sPath = oMetaModelContext.getPath();
|
|
944
947
|
|
|
945
948
|
const aPathSplit = sPath.split("/");
|
|
946
|
-
let targetEntitySet: _EntitySet = oConverterOutput.entitySets.find(
|
|
949
|
+
let targetEntitySet: _EntitySet | _Singleton = oConverterOutput.entitySets.find(
|
|
950
|
+
entitySet => entitySet.name === aPathSplit[1]
|
|
951
|
+
) as _EntitySet;
|
|
952
|
+
if (!targetEntitySet) {
|
|
953
|
+
targetEntitySet = oConverterOutput.singletons.find(singleton => singleton.name === aPathSplit[1]) as _Singleton;
|
|
954
|
+
}
|
|
947
955
|
let relativePath = aPathSplit.slice(2).join("/");
|
|
948
956
|
|
|
949
957
|
const localObjects: any[] = [targetEntitySet];
|
|
@@ -303,7 +303,7 @@ sap.ui.define(["sap/fe/core/templating/UIFormatters", "sap/fe/core/templating/Pr
|
|
|
303
303
|
additionalProperties: {}
|
|
304
304
|
};
|
|
305
305
|
|
|
306
|
-
if (dataField.$Type === "com.sap.vocabularies.UI.v1.DataField" && dataField.Value) {
|
|
306
|
+
if ((dataField.$Type === "com.sap.vocabularies.UI.v1.DataField" || dataField.$Type === "com.sap.vocabularies.UI.v1.DataFieldWithUrl") && dataField.Value) {
|
|
307
307
|
var property = dataField.Value;
|
|
308
308
|
relatedProperties = collectRelatedProperties(property.path, property.$target, converterContext, false, tableType, relatedProperties);
|
|
309
309
|
|
|
@@ -382,4 +382,4 @@ sap.ui.define(["sap/fe/core/templating/UIFormatters", "sap/fe/core/templating/Pr
|
|
|
382
382
|
_exports.getDataFieldDataType = getDataFieldDataType;
|
|
383
383
|
return _exports;
|
|
384
384
|
}, false);
|
|
385
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkRhdGFGaWVsZC50cyJdLCJuYW1lcyI6WyJpc0RhdGFGaWVsZEZvckFjdGlvbkFic3RyYWN0IiwiZGF0YUZpZWxkIiwiaGFzT3duUHJvcGVydHkiLCJpc0RhdGFGaWVsZFR5cGVzIiwiaXNEYXRhRmllbGRBbHdheXNIaWRkZW4iLCJhbm5vdGF0aW9ucyIsIlVJIiwiSGlkZGVuIiwidmFsdWVPZiIsIlZhbHVlIiwiJHRhcmdldCIsImdldFNlbWFudGljT2JqZWN0UGF0aCIsImNvbnZlcnRlckNvbnRleHQiLCJvYmplY3QiLCJwcm9wZXJ0eSIsIkNvbW1vbiIsIlNlbWFudGljT2JqZWN0IiwidW5kZWZpbmVkIiwiZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aCIsImZ1bGx5UXVhbGlmaWVkTmFtZSIsImlzUHJvcGVydHkiLCJfZ2V0TmF2aWdhdGlvblBhdGhQcmVmaXgiLCJwYXRoIiwiaW5kZXhPZiIsInN1YnN0cmluZyIsImxhc3RJbmRleE9mIiwiX2NvbGxlY3RBZGRpdGlvbmFsUHJvcGVydGllc0ZvckFuYWx5dGljYWxUYWJsZSIsInRhcmdldCIsIm5hdmlnYXRpb25QYXRoUHJlZml4IiwidGFibGVUeXBlIiwicmVsYXRlZFByb3BlcnRpZXMiLCJoaWRkZW5Bbm5vdGF0aW9uIiwiX3R5cGUiLCJoaWRkZW5Bbm5vdGF0aW9uUHJvcGVydHlQYXRoIiwiYWRkaXRpb25hbFByb3BlcnRpZXMiLCJjb2xsZWN0UmVsYXRlZFByb3BlcnRpZXMiLCJpZ25vcmVTZWxmIiwicHJvcGVydGllcyIsIl9wdXNoVW5pcXVlIiwia2V5IiwidmFsdWUiLCJPYmplY3QiLCJrZXlzIiwiX2FwcGVuZFRlbXBsYXRlIiwiZXhwb3J0U2V0dGluZ3NUZW1wbGF0ZSIsInRleHRBbm5vdGF0aW9uIiwiVGV4dCIsInZhbHVlSW5kZXgiLCJ0YXJnZXRWYWx1ZSIsImN1cnJlbmN5T3JVb01JbmRleCIsImV4cG9ydFNldHRpbmdzV3JhcHBpbmciLCJkYXRhTW9kZWxPYmplY3RQYXRoIiwiZ2V0RGF0YU1vZGVsT2JqZWN0UGF0aCIsInRleHRBbm5vdGF0aW9uUHJvcGVydHlQYXRoIiwiZGlzcGxheU1vZGUiLCJnZXREaXNwbGF5TW9kZSIsImRlc2NyaXB0aW9uSW5kZXgiLCJ2aXN1YWxTZXR0aW5nc1RvQmVFeGNsdWRlZCIsImN1cnJlbmN5T3JVb01Qcm9wZXJ0eSIsImdldEFzc29jaWF0ZWRDdXJyZW5jeVByb3BlcnR5IiwiZ2V0QXNzb2NpYXRlZFVuaXRQcm9wZXJ0eSIsImN1cnJlbmN5T3JVbml0QW5ub3RhdGlvbiIsIk1lYXN1cmVzIiwiSVNPQ3VycmVuY3kiLCJVbml0IiwibmFtZSIsIlRhcmdldCIsIlZpc3VhbGl6YXRpb24iLCJkYXRhUG9pbnRQcm9wZXJ0eSIsIlRhcmdldFZhbHVlIiwiTWF4aW11bVZhbHVlIiwidG9TdHJpbmciLCJEYXRhRmllbGREZWZhdWx0IiwiJFR5cGUiLCJkYXRhUG9pbnREZWZhdWx0UHJvcGVydHkiLCJleHBvcnRTZXR0aW5nc0NvbnRhY3RQcm9wZXJ0eSIsImZuIiwibGVuZ3RoIiwiY29sbGVjdFJlbGF0ZWRQcm9wZXJ0aWVzUmVjdXJzaXZlbHkiLCJEYXRhIiwiZm9yRWFjaCIsImlubmVyRGF0YUZpZWxkIiwiZ2V0RGF0YUZpZWxkRGF0YVR5cGUiLCJvRGF0YUZpZWxkIiwic0RhdGFUeXBlIiwidHlwZSIsInNEYXRhVHlwZUZvckRhdGFGaWVsZEZvckFubm90YXRpb24iLCIkUGF0aCJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7OztBQXlCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLFdBQVNBLDRCQUFULENBQXNDQyxTQUF0QyxFQUF1SDtBQUM3SCxXQUFRQSxTQUFELENBQStDQyxjQUEvQyxDQUE4RCxRQUE5RCxDQUFQO0FBQ0E7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7QUFDTyxXQUFTQyxnQkFBVCxDQUEwQkYsU0FBMUIsRUFBMEY7QUFDaEcsV0FBUUEsU0FBRCxDQUE4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T0FEaEQsOEVBQ0EsaUJBQXVFRCxLQUR2RSwwREFDQSxzQkFBOEVDLE9BQTlFLENBQXNGMkUsSUFEdEYsQ0FERDtBQUdBLFdBSk0sTUFJQTtBQUNOO0FBQ0FELFlBQUFBLFNBQVMsR0FBR25FLFNBQVo7QUFDQTtBQUNELFNBWEQsTUFXTztBQUNObUUsVUFBQUEsU0FBUyxHQUFHbkUsU0FBWjtBQUNBOztBQUNEO0FBN0JGOztBQWdDQSxXQUFPbUUsU0FBUDtBQUNBLEdBbkNNIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRDb21tdW5pY2F0aW9uQW5ub3RhdGlvblR5cGVzLFxuXHRDb250YWN0LFxuXHREYXRhRmllbGQsXG5cdERhdGFGaWVsZEFic3RyYWN0VHlwZXMsXG5cdERhdGFGaWVsZEZvckFjdGlvbkFic3RyYWN0VHlwZXMsXG5cdERhdGFGaWVsZEZvckFubm90YXRpb24sXG5cdERhdGFGaWVsZFR5cGVzLFxuXHREYXRhUG9pbnQsXG5cdFVJQW5ub3RhdGlvblR5cGVzXG59IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlc1wiO1xuaW1wb3J0ICogYXMgRWRtIGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlcy9kaXN0L0VkbVwiO1xuaW1wb3J0IHsgZ2V0RGlzcGxheU1vZGUsIFByb3BlcnR5T3JQYXRoIH0gZnJvbSBcInNhcC9mZS9jb3JlL3RlbXBsYXRpbmcvVUlGb3JtYXR0ZXJzXCI7XG5pbXBvcnQgeyBQcm9wZXJ0eSB9IGZyb20gXCJAc2FwLXV4L2Fubm90YXRpb24tY29udmVydGVyXCI7XG5pbXBvcnQgeyBnZXRBc3NvY2lhdGVkQ3VycmVuY3lQcm9wZXJ0eSwgZ2V0QXNzb2NpYXRlZFVuaXRQcm9wZXJ0eSwgaXNQcm9wZXJ0eSB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL1Byb3BlcnR5SGVscGVyXCI7XG5pbXBvcnQgQ29udmVydGVyQ29udGV4dCBmcm9tIFwiLi4vQ29udmVydGVyQ29udGV4dFwiO1xuaW1wb3J0IHsgVGFibGVUeXBlIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvY29udHJvbHMvQ29tbW9uL1RhYmxlXCI7XG5cbmV4cG9ydCB0eXBlIENvbXBsZXhQcm9wZXJ0eUluZm8gPSB7XG5cdHByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIFByb3BlcnR5Pjtcblx0YWRkaXRpb25hbFByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIFByb3BlcnR5Pjtcblx0ZXhwb3J0U2V0dGluZ3NUZW1wbGF0ZT86IHN0cmluZztcblx0ZXhwb3J0U2V0dGluZ3NXcmFwcGluZz86IGJvb2xlYW47XG5cdGV4cG9ydFNldHRpbmdzQ29udGFjdFByb3BlcnR5Pzogc3RyaW5nO1xuXHR2aXN1YWxTZXR0aW5nc1RvQmVFeGNsdWRlZD86IHN0cmluZztcbn07XG5cbi8qKlxuICogSWRlbnRpZmllcyBpZiB0aGUgZ2l2ZW4gZGF0YUZpZWxkQWJzdHJhY3QgdGhhdCBpcyBwYXNzZWQgaXMgYSBcIkRhdGFGaWVsZEZvckFjdGlvbkFic3RyYWN0XCIuXG4gKiBEYXRhRmllbGRGb3JBY3Rpb25BYnN0cmFjdCBoYXMgYW4gaW5saW5lIGFjdGlvbiBkZWZpbmVkLlxuICpcbiAqIEBwYXJhbSB7RGF0YUZpZWxkQWJzdHJhY3RUeXBlc30gZGF0YUZpZWxkIERhdGEgZmllbGQgdG8gYmUgZXZhbHVhdGVkXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVmFsaWRhdGVzIHRoYXQgZGF0YUZpZWxkIGlzIGEgRGF0YUZpZWxkRm9yQWN0aW9uQWJzdHJhY3RUeXBlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0RhdGFGaWVsZEZvckFjdGlvbkFic3RyYWN0KGRhdGFGaWVsZDogRGF0YUZpZWxkQWJzdHJhY3RUeXBlcyk6IGRhdGFGaWVsZCBpcyBEYXRhRmllbGRGb3JBY3Rpb25BYnN0cmFjdFR5cGVzIHtcblx0cmV0dXJuIChkYXRhRmllbGQgYXMgRGF0YUZpZWxkRm9yQWN0aW9uQWJzdHJhY3RUeXBlcykuaGFzT3duUHJvcGVydHkoXCJBY3Rpb25cIik7XG59XG5cbi8qKlxuICogSWRlbnRpZmllcyBpZiB0aGUgZ2l2ZW4gZGF0YUZpZWxkQWJzdHJhY3QgdGhhdCBpcyBwYXNzZWQgaXMgYSBcIkRhdGFGaWVsZFwiLlxuICogRGF0YUZpZWxkIGhhcyBhIHZhbHVlIGRlZmluZWQuXG4gKlxuICogQHBhcmFtIHtEYXRhRmllbGRBYnN0cmFjdFR5cGVzfSBkYXRhRmllbGQgRGF0YSBmaWVsZCB0byBiZSBldmFsdWF0ZWRcbiAqIEByZXR1cm5zIHtib29sZWFufSBWYWxpZGF0ZSB0aGF0IGRhdGFGaWVsZCBpcyBhIERhdGFGaWVsZFR5cGVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0RhdGFGaWVsZFR5cGVzKGRhdGFGaWVsZDogRGF0YUZpZWxkQWJzdHJhY3RUeXBlcyk6IGRhdGFGaWVsZCBpcyBEYXRhRmllbGRUeXBlcyB7XG5cdHJldHVybiAoZGF0YUZpZWxkIGFzIERhdGFGaWVsZFR5cGVzKS5oYXNPd25Qcm9wZXJ0eShcIlZhbHVlXCIpO1xufVxuXG4vKipcbiAqIFJldHVybnMgd2hldGhlciBnaXZlbiBkYXRhIGZpZWxkIGhhcyBhIHN0YXRpYyBoaWRkZW4gYW5ub3RhdGlvbi5cbiAqXG4gKiBAcGFyYW0ge0RhdGFGaWVsZEFic3RyYWN0VHlwZXN9IGRhdGFGaWVsZCBUaGUgZGF0YWZpZWxkIHRvIGNoZWNrXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gYHRydWVgIGlmIGRhdGFmaWVsZCBvciByZWZlcmVuY2VkIHByb3BlcnR5IGhhcyBhIHN0YXRpYyBIaWRkZW4gYW5ub3RhdGlvbiwgZmFsc2UgZWxzZVxuICogQHByaXZhdGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRGF0YUZpZWxkQWx3YXlzSGlkZGVuKGRhdGFGaWVsZDogRGF0YUZpZWxkQWJzdHJhY3RUeXBlcyk6IGJvb2xlYW4ge1xuXHRyZXR1cm4gKFxuXHRcdGRhdGFGaWVsZC5hbm5vdGF0aW9ucz8uVUk/LkhpZGRlbj8udmFsdWVPZigpID09PSB0cnVlIHx8XG5cdFx0KGlzRGF0YUZpZWxkVHlwZXMoZGF0YUZpZWxkKSAmJiBkYXRhRmllbGQuVmFsdWU/LiR0YXJnZXQ/LmFubm90YXRpb25zPy5VST8uSGlkZGVuID09PSB0cnVlKVxuXHQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2VtYW50aWNPYmplY3RQYXRoKGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQsIG9iamVjdDogYW55KTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcblx0aWYgKHR5cGVvZiBvYmplY3QgPT09IFwib2JqZWN0XCIpIHtcblx0XHRpZiAoaXNEYXRhRmllbGRUeXBlcyhvYmplY3QpICYmIG9iamVjdC5WYWx1ZT8uJHRhcmdldCkge1xuXHRcdFx0Y29uc3QgcHJvcGVydHkgPSBvYmplY3QuVmFsdWU/LiR0YXJnZXQ7XG5cdFx0XHRpZiAocHJvcGVydHk/LmFubm90YXRpb25zPy5Db21tb24/LlNlbWFudGljT2JqZWN0ICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0cmV0dXJuIGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aChwcm9wZXJ0eT8uZnVsbHlRdWFsaWZpZWROYW1lKTtcblx0XHRcdH1cblx0XHR9IGVsc2UgaWYgKGlzUHJvcGVydHkob2JqZWN0KSkge1xuXHRcdFx0aWYgKG9iamVjdD8uYW5ub3RhdGlvbnM/LkNvbW1vbj8uU2VtYW50aWNPYmplY3QgIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0XHRyZXR1cm4gY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlTZXRCYXNlZEFubm90YXRpb25QYXRoKG9iamVjdD8uZnVsbHlRdWFsaWZpZWROYW1lKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0cmV0dXJuIHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBuYXZpZ2F0aW9uIHBhdGggcHJlZml4IGZvciBhIHByb3BlcnR5IHBhdGguXG4gKlxuICogQHBhcmFtIHBhdGggVGhlIHByb3BlcnR5IHBhdGggRm9yIGUuZy4gL0VudGl0eVR5cGUvTmF2aWdhdGlvbi9Qcm9wZXJ0eVxuICogQHJldHVybnMge3N0cmluZ30gVGhlIG5hdmlnYXRpb24gcGF0aCBwcmVmaXggRm9yIGUuZy4gL0VudGl0eVR5cGUvTmF2aWdhdGlvbi9cbiAqL1xuZnVuY3Rpb24gX2dldE5hdmlnYXRpb25QYXRoUHJlZml4KHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG5cdHJldHVybiBwYXRoLmluZGV4T2YoXCIvXCIpID4gLTEgPyBwYXRoLnN1YnN0cmluZygwLCBwYXRoLmxhc3RJbmRleE9mKFwiL1wiKSArIDEpIDogXCJcIjtcbn1cblxuLyoqXG4gKiBDb2xsZWN0IGFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgdGhlIEFMUCB0YWJsZSB1c2UtY2FzZS5cbiAqXG4gKiBGb3IgZS5nLiBJZiBVSS5IaWRkZW4gcG9pbnRzIHRvIGEgcHJvcGVydHksIGluY2x1ZGUgdGhpcyBwcm9wZXJ0eSBpbiB0aGUgYWRkaXRpb25hbFByb3BlcnRpZXMgb2YgQ29tcGxleFByb3BlcnR5SW5mbyBvYmplY3QuXG4gKiBAcGFyYW0gdGFyZ2V0IFByb3BlcnR5IG9yIERhdGFGaWVsZCBiZWluZyBwcm9jZXNzZWRcbiAqIEBwYXJhbSBuYXZpZ2F0aW9uUGF0aFByZWZpeCBOYXZpZ2F0aW9uIHBhdGggcHJlZml4LCBhcHBsaWNhYmxlIGluIGNhc2Ugb2YgbmF2aWdhdGlvbiBwcm9wZXJ0aWVzLlxuICogQHBhcmFtIHRhYmxlVHlwZSBUYWJsZSB0eXBlLlxuICogQHBhcmFtIHJlbGF0ZWRQcm9wZXJ0aWVzIFRoZSByZWxhdGVkIHByb3BlcnRpZXMgaWRlbnRpZmllZCBzbyBmYXIuXG4gKiBAcmV0dXJucyB7Q29tcGxleFByb3BlcnR5SW5mb30gVGhlIHJlbGF0ZWQgcHJvcGVydGllcyBpZGVudGlmaWVkLlxuICovXG5mdW5jdGlvbiBfY29sbGVjdEFkZGl0aW9uYWxQcm9wZXJ0aWVzRm9yQW5hbHl0aWNhbFRhYmxlKFxuXHR0YXJnZXQ6IEVkbS5QcmltaXRpdmVUeXBlLFxuXHRuYXZpZ2F0aW9uUGF0aFByZWZpeDogc3RyaW5nLFxuXHR0YWJsZVR5cGU6IFRhYmxlVHlwZSxcblx0cmVsYXRlZFByb3BlcnRpZXM6IENvbXBsZXhQcm9wZXJ0eUluZm9cbik6IENvbXBsZXhQcm9wZXJ0eUluZm8ge1xuXHRpZiAodGFibGVUeXBlID09PSBcIkFuYWx5dGljYWxUYWJsZVwiKSB7XG5cdFx0Y29uc3QgaGlkZGVuQW5ub3RhdGlvbiA9IHRhcmdldC5hbm5vdGF0aW9ucz8uVUk/LkhpZGRlbjtcblx0XHRpZiAoaGlkZGVuQW5ub3RhdGlvbj8ucGF0aCAmJiBoaWRkZW5Bbm5vdGF0aW9uLiR0YXJnZXQ/Ll90eXBlID09PSBcIlByb3BlcnR5XCIpIHtcblx0XHRcdGNvbnN0IGhpZGRlbkFubm90YXRpb25Qcm9wZXJ0eVBhdGggPSBuYXZpZ2F0aW9uUGF0aFByZWZpeCArIGhpZGRlbkFubm90YXRpb24ucGF0aDtcblx0XHRcdC8vIFRoaXMgcHJvcGVydHkgc2hvdWxkIGJlIGFkZGVkIHRvIGFkZGl0aW9uYWxQcm9wZXJ0aWVzIG1hcCBmb3IgdGhlIEFMUCB0YWJsZSB1c2UtY2FzZS5cblx0XHRcdHJlbGF0ZWRQcm9wZXJ0aWVzLmFkZGl0aW9uYWxQcm9wZXJ0aWVzW2hpZGRlbkFubm90YXRpb25Qcm9wZXJ0eVBhdGhdID0gaGlkZGVuQW5ub3RhdGlvbi4kdGFyZ2V0O1xuXHRcdH1cblx0fVxuXHRyZXR1cm4gcmVsYXRlZFByb3BlcnRpZXM7XG59XG5cbi8qKlxuICogQ29sbGVjdCByZWxhdGVkIHByb3BlcnRpZXMgZnJvbSBhIHByb3BlcnR5J3MgYW5ub3RhdGlvbnMuXG4gKlxuICogQHBhcmFtIHBhdGggVGhlIHByb3BlcnR5IHBhdGhcbiAqIEBwYXJhbSBwcm9wZXJ0eSBUaGUgcHJvcGVydHkgdG8gYmUgY29uc2lkZXJlZFxuICogQHBhcmFtIGNvbnZlcnRlckNvbnRleHQgVGhlIGNvbnZlcnRlciBjb250ZXh0XG4gKiBAcGFyYW0gaWdub3JlU2VsZiBXaGV0aGVyIHRvIGV4Y2x1ZGUgdGhlIHNhbWUgcHJvcGVydHkgZnJvbSByZWxhdGVkIHByb3BlcnRpZXMuXG4gKiBAcGFyYW0gdGFibGVUeXBlIFRoZSB0YWJsZSB0eXBlLlxuICogQHBhcmFtIHJlbGF0ZWRQcm9wZXJ0aWVzIFRoZSByZWxhdGVkIHByb3BlcnRpZXMgaWRlbnRpZmllZCBzbyBmYXIuXG4gKiBAcmV0dXJucyB7Q29tcGxleFByb3BlcnR5SW5mb30gVGhlIHJlbGF0ZWQgcHJvcGVydGllcyBpZGVudGlmaWVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29sbGVjdFJlbGF0ZWRQcm9wZXJ0aWVzKFxuXHRwYXRoOiBzdHJpbmcsXG5cdHByb3BlcnR5OiBFZG0uUHJpbWl0aXZlVHlwZSxcblx0Y29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dCxcblx0aWdub3JlU2VsZjogYm9vbGVhbixcblx0dGFibGVUeXBlOiBUYWJsZVR5cGUsXG5cdHJlbGF0ZWRQcm9wZXJ0aWVzOiBDb21wbGV4UHJvcGVydHlJbmZvID0geyBwcm9wZXJ0aWVzOiB7fSwgYWRkaXRpb25hbFByb3BlcnRpZXM6IHt9IH1cbik6IENvbXBsZXhQcm9wZXJ0eUluZm8ge1xuXHQvKipcblx0ICogSGVscGVyIHRvIHB1c2ggdW5pcXVlIHJlbGF0ZWQgcHJvcGVydGllcy5cblx0ICpcblx0ICogQHBhcmFtIGtleSBUaGUgcHJvcGVydHkgcGF0aFxuXHQgKiBAcGFyYW0gdmFsdWUgVGhlIHByb3BlcnRpZXMgb2JqZWN0IGNvbnRhaW5pbmcgdmFsdWUgcHJvcGVydHksIGRlc2NyaXB0aW9uIHByb3BlcnR5Li4uXG5cdCAqIEByZXR1cm5zIEluZGV4IGF0IHdoaWNoIHRoZSBwcm9wZXJ0eSBpcyBhdmFpbGFibGVcblx0ICovXG5cdGZ1bmN0aW9uIF9wdXNoVW5pcXVlKGtleTogc3RyaW5nLCB2YWx1ZTogUHJvcGVydHkpOiBudW1iZXIge1xuXHRcdGlmICghcmVsYXRlZFByb3BlcnRpZXMucHJvcGVydGllcy5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG5cdFx0XHRyZWxhdGVkUHJvcGVydGllcy5wcm9wZXJ0aWVzW2tleV0gPSB2YWx1ZTtcblx0XHR9XG5cdFx0cmV0dXJuIE9iamVjdC5rZXlzKHJlbGF0ZWRQcm9wZXJ0aWVzLnByb3BlcnRpZXMpLmluZGV4T2Yoa2V5KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBIZWxwZXIgdG8gYXBwZW5kIHRoZSBleHBvcnQgc2V0dGluZ3MgdGVtcGxhdGUgd2l0aCBhIGZvcm1hdHRlZCB0ZXh0LlxuXHQgKlxuXHQgKiBAcGFyYW0gdmFsdWUgRm9ybWF0dGVkIHRleHRcblx0ICovXG5cdGZ1bmN0aW9uIF9hcHBlbmRUZW1wbGF0ZSh2YWx1ZTogc3RyaW5nKSB7XG5cdFx0cmVsYXRlZFByb3BlcnRpZXMuZXhwb3J0U2V0dGluZ3NUZW1wbGF0ZSA9IHJlbGF0ZWRQcm9wZXJ0aWVzLmV4cG9ydFNldHRpbmdzVGVtcGxhdGVcblx0XHRcdD8gYCR7cmVsYXRlZFByb3BlcnRpZXMuZXhwb3J0U2V0dGluZ3NUZW1wbGF0ZX0ke3ZhbHVlfWBcblx0XHRcdDogYCR7dmFsdWV9YDtcblx0fVxuXG5cdGlmIChwYXRoICYmIHByb3BlcnR5KSB7XG5cdFx0Y29uc3QgbmF2aWdhdGlvblBhdGhQcmVmaXggPSBfZ2V0TmF2aWdhdGlvblBhdGhQcmVmaXgocGF0aCk7XG5cblx0XHQvLyBDaGVjayBmb3IgVGV4dCBhbm5vdGF0aW9uLlxuXHRcdGNvbnN0IHRleHRBbm5vdGF0aW9uID0gcHJvcGVydHkuYW5ub3RhdGlvbnM/LkNvbW1vbj8uVGV4dDtcblx0XHRsZXQgdmFsdWVJbmRleDogbnVtYmVyO1xuXHRcdGxldCB0YXJnZXRWYWx1ZTogc3RyaW5nO1xuXHRcdGxldCBjdXJyZW5jeU9yVW9NSW5kZXg6IG51bWJlcjtcblxuXHRcdGlmIChyZWxhdGVkUHJvcGVydGllcy5leHBvcnRTZXR0aW5nc1RlbXBsYXRlKSB7XG5cdFx0XHQvLyBGaWVsZEdyb3VwIHVzZS1jYXNlLiBOZWVkIHRvIGFkZCBlYWNoIEZpZWxkIGluIG5ldyBsaW5lLlxuXHRcdFx0X2FwcGVuZFRlbXBsYXRlKFwiXFxuXCIpO1xuXHRcdFx0cmVsYXRlZFByb3BlcnRpZXMuZXhwb3J0U2V0dGluZ3NXcmFwcGluZyA9IHRydWU7XG5cdFx0fVxuXG5cdFx0aWYgKHRleHRBbm5vdGF0aW9uPy5wYXRoICYmIHRleHRBbm5vdGF0aW9uPy4kdGFyZ2V0KSB7XG5cdFx0XHQvLyBDaGVjayBmb3IgVGV4dCBBcnJhbmdlbWVudC5cblx0XHRcdGNvbnN0IGRhdGFNb2RlbE9iamVjdFBhdGggPSBjb252ZXJ0ZXJDb250ZXh0LmdldERhdGFNb2RlbE9iamVjdFBhdGgoKTtcblx0XHRcdGNvbnN0IHRleHRBbm5vdGF0aW9uUHJvcGVydHlQYXRoID0gbmF2aWdhdGlvblBhdGhQcmVmaXggKyB0ZXh0QW5ub3RhdGlvbi5wYXRoO1xuXHRcdFx0Y29uc3QgZGlzcGxheU1vZGUgPSBnZXREaXNwbGF5TW9kZShwcm9wZXJ0eSBhcyBQcm9wZXJ0eU9yUGF0aDxQcm9wZXJ0eT4sIGRhdGFNb2RlbE9iamVjdFBhdGgpO1xuXHRcdFx0bGV0IGRlc2NyaXB0aW9uSW5kZXg6IG51bWJlcjtcblx0XHRcdHN3aXRjaCAoZGlzcGxheU1vZGUpIHtcblx0XHRcdFx0Y2FzZSBcIlZhbHVlXCI6XG5cdFx0XHRcdFx0dmFsdWVJbmRleCA9IF9wdXNoVW5pcXVlKHBhdGgsIHByb3BlcnR5KTtcblx0XHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske3ZhbHVlSW5kZXh9fWApO1xuXHRcdFx0XHRcdHJlbGF0ZWRQcm9wZXJ0aWVzLnZpc3VhbFNldHRpbmdzVG9CZUV4Y2x1ZGVkID0gdGV4dEFubm90YXRpb25Qcm9wZXJ0eVBhdGg7XG5cdFx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdFx0Y2FzZSBcIkRlc2NyaXB0aW9uXCI6XG5cdFx0XHRcdFx0Ly8gS2VlcCB2YWx1ZSB3aGVuIGV4cG9ydGluZyAoc3BsaXQgbW9kZSkgb24gdGV4dCBBcnJhbmdlbWVudCBkZWZpbmVkIGFzICNUZXh0T25seSAoT25seSB2YWx1ZXMgYXJlIGV4cGVjdGVkIG9uIHBhc3RlIGZyb20gRXhjZWwgZnVuY3Rpb25hbGl0eSlcblx0XHRcdFx0XHRfcHVzaFVuaXF1ZShwYXRoLCBwcm9wZXJ0eSk7XG5cdFx0XHRcdFx0ZGVzY3JpcHRpb25JbmRleCA9IF9wdXNoVW5pcXVlKHRleHRBbm5vdGF0aW9uUHJvcGVydHlQYXRoLCB0ZXh0QW5ub3RhdGlvbi4kdGFyZ2V0KTtcblx0XHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske2Rlc2NyaXB0aW9uSW5kZXh9fWApO1xuXHRcdFx0XHRcdHJlbGF0ZWRQcm9wZXJ0aWVzLnZpc3VhbFNldHRpbmdzVG9CZUV4Y2x1ZGVkID0gcGF0aDtcblx0XHRcdFx0XHRicmVhaztcblxuXHRcdFx0XHRjYXNlIFwiVmFsdWVEZXNjcmlwdGlvblwiOlxuXHRcdFx0XHRcdHZhbHVlSW5kZXggPSBfcHVzaFVuaXF1ZShwYXRoLCBwcm9wZXJ0eSk7XG5cdFx0XHRcdFx0ZGVzY3JpcHRpb25JbmRleCA9IF9wdXNoVW5pcXVlKHRleHRBbm5vdGF0aW9uUHJvcGVydHlQYXRoLCB0ZXh0QW5ub3RhdGlvbi4kdGFyZ2V0KTtcblx0XHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske3ZhbHVlSW5kZXh9fSAoeyR7ZGVzY3JpcHRpb25JbmRleH19KWApO1xuXHRcdFx0XHRcdGJyZWFrO1xuXG5cdFx0XHRcdGNhc2UgXCJEZXNjcmlwdGlvblZhbHVlXCI6XG5cdFx0XHRcdFx0dmFsdWVJbmRleCA9IF9wdXNoVW5pcXVlKHBhdGgsIHByb3BlcnR5KTtcblx0XHRcdFx0XHRkZXNjcmlwdGlvbkluZGV4ID0gX3B1c2hVbmlxdWUodGV4dEFubm90YXRpb25Qcm9wZXJ0eVBhdGgsIHRleHRBbm5vdGF0aW9uLiR0YXJnZXQpO1xuXHRcdFx0XHRcdF9hcHBlbmRUZW1wbGF0ZShgeyR7ZGVzY3JpcHRpb25JbmRleH19ICh7JHt2YWx1ZUluZGV4fX0pYCk7XG5cdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHR9XG5cdFx0fSBlbHNlIHtcblx0XHRcdC8vIENoZWNrIGZvciBmaWVsZCBjb250YWluaW5nIEN1cnJlbmN5IE9yIFVuaXQgUHJvcGVydGllcy5cblx0XHRcdGNvbnN0IGN1cnJlbmN5T3JVb01Qcm9wZXJ0eSA9IGdldEFzc29jaWF0ZWRDdXJyZW5jeVByb3BlcnR5KHByb3BlcnR5KSB8fCBnZXRBc3NvY2lhdGVkVW5pdFByb3BlcnR5KHByb3BlcnR5KTtcblx0XHRcdGNvbnN0IGN1cnJlbmN5T3JVbml0QW5ub3RhdGlvbiA9IHByb3BlcnR5Py5hbm5vdGF0aW9ucz8uTWVhc3VyZXM/LklTT0N1cnJlbmN5IHx8IHByb3BlcnR5Py5hbm5vdGF0aW9ucz8uTWVhc3VyZXM/LlVuaXQ7XG5cdFx0XHRpZiAoY3VycmVuY3lPclVvTVByb3BlcnR5ICYmIGN1cnJlbmN5T3JVbml0QW5ub3RhdGlvbj8uJHRhcmdldCkge1xuXHRcdFx0XHR2YWx1ZUluZGV4ID0gX3B1c2hVbmlxdWUocGF0aCwgcHJvcGVydHkpO1xuXHRcdFx0XHRjdXJyZW5jeU9yVW9NSW5kZXggPSBfcHVzaFVuaXF1ZShjdXJyZW5jeU9yVW9NUHJvcGVydHkubmFtZSwgY3VycmVuY3lPclVuaXRBbm5vdGF0aW9uLiR0YXJnZXQpO1xuXHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske3ZhbHVlSW5kZXh9fSAgeyR7Y3VycmVuY3lPclVvTUluZGV4fX1gKTtcblx0XHRcdH0gZWxzZSBpZiAocHJvcGVydHkuVGFyZ2V0Py4kdGFyZ2V0Py5WaXN1YWxpemF0aW9uKSB7XG5cdFx0XHRcdGNvbnN0IGRhdGFQb2ludFByb3BlcnR5OiBFZG0uUHJpbWl0aXZlVHlwZSA9IHByb3BlcnR5LlRhcmdldC4kdGFyZ2V0LlZhbHVlLiR0YXJnZXQ7XG5cdFx0XHRcdHZhbHVlSW5kZXggPSBfcHVzaFVuaXF1ZShwYXRoLCBkYXRhUG9pbnRQcm9wZXJ0eSk7XG5cdFx0XHRcdC8vIE5ldyBmYWtlIHByb3BlcnR5IGNyZWF0ZWQgZm9yIHRoZSBSYXRpbmcvUHJvZ3Jlc3MgVGFyZ2V0IFZhbHVlLiBJdCdsbCBiZSB1c2VkIGZvciB0aGUgZXhwb3J0IG9uIHNwbGl0IG1vZGUuXG5cdFx0XHRcdF9wdXNoVW5pcXVlKHByb3BlcnR5LlRhcmdldC52YWx1ZSwgcHJvcGVydHkuVGFyZ2V0LiR0YXJnZXQpO1xuXHRcdFx0XHR0YXJnZXRWYWx1ZSA9IChwcm9wZXJ0eS5UYXJnZXQuJHRhcmdldC5UYXJnZXRWYWx1ZSB8fCBwcm9wZXJ0eS5UYXJnZXQuJHRhcmdldC5NYXhpbXVtVmFsdWUpLnRvU3RyaW5nKCk7XG5cdFx0XHRcdF9hcHBlbmRUZW1wbGF0ZShgeyR7dmFsdWVJbmRleH19LyR7dGFyZ2V0VmFsdWV9YCk7XG5cdFx0XHR9IGVsc2UgaWYgKHByb3BlcnR5LmFubm90YXRpb25zPy5VST8uRGF0YUZpZWxkRGVmYXVsdD8uVGFyZ2V0Py4kdGFyZ2V0Py4kVHlwZSA9PT0gVUlBbm5vdGF0aW9uVHlwZXMuRGF0YVBvaW50VHlwZSkge1xuXHRcdFx0XHQvLyBEYXRhUG9pbnQgdXNlLWNhc2UgdXNpbmcgRGF0YUZpZWxkRGVmYXVsdC5cblx0XHRcdFx0Y29uc3QgZGF0YVBvaW50RGVmYXVsdFByb3BlcnR5OiBFZG0uUHJpbWl0aXZlVHlwZSA9IHByb3BlcnR5LmFubm90YXRpb25zLlVJLkRhdGFGaWVsZERlZmF1bHQ7XG5cdFx0XHRcdHZhbHVlSW5kZXggPSBfcHVzaFVuaXF1ZShwYXRoLCBwcm9wZXJ0eSk7XG5cdFx0XHRcdC8vIE5ldyBmYWtlIHByb3BlcnR5IGNyZWF0ZWQgZm9yIHRoZSBSYXRpbmcvUHJvZ3Jlc3MgVGFyZ2V0IFZhbHVlLiBJdCdsbCBiZSB1c2VkIGZvciB0aGUgZXhwb3J0IG9uIHNwbGl0IG1vZGUuXG5cdFx0XHRcdF9wdXNoVW5pcXVlKGRhdGFQb2ludERlZmF1bHRQcm9wZXJ0eS5UYXJnZXQudmFsdWUsIHByb3BlcnR5KTtcblx0XHRcdFx0dGFyZ2V0VmFsdWUgPSAoXG5cdFx0XHRcdFx0ZGF0YVBvaW50RGVmYXVsdFByb3BlcnR5LlRhcmdldC4kdGFyZ2V0LlRhcmdldFZhbHVlIHx8IGRhdGFQb2ludERlZmF1bHRQcm9wZXJ0eS5UYXJnZXQuJHRhcmdldC5UYXJnZXRWYWx1ZS5NYXhpbXVtVmFsdWVcblx0XHRcdFx0KS50b1N0cmluZygpO1xuXHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske3ZhbHVlSW5kZXh9fS8ke3RhcmdldFZhbHVlfWApO1xuXHRcdFx0fSBlbHNlIGlmIChwcm9wZXJ0eS5UYXJnZXQ/LiR0YXJnZXQ/LiRUeXBlID09PSBcImNvbS5zYXAudm9jYWJ1bGFyaWVzLkNvbW11bmljYXRpb24udjEuQ29udGFjdFR5cGVcIikge1xuXHRcdFx0XHRyZWxhdGVkUHJvcGVydGllcy5leHBvcnRTZXR0aW5nc0NvbnRhY3RQcm9wZXJ0eSA9XG5cdFx0XHRcdFx0cHJvcGVydHkuVGFyZ2V0LnZhbHVlLnN1YnN0cmluZygwLCBwcm9wZXJ0eS5UYXJnZXQudmFsdWUuaW5kZXhPZihcIi9cIikgKyAxKSArIHByb3BlcnR5LlRhcmdldC4kdGFyZ2V0LmZuPy5wYXRoO1xuXHRcdFx0XHR2YWx1ZUluZGV4ID0gX3B1c2hVbmlxdWUocGF0aCwgcHJvcGVydHkuVGFyZ2V0LiR0YXJnZXQuZm4uJHRhcmdldCk7XG5cdFx0XHRcdF9hcHBlbmRUZW1wbGF0ZShgeyR7dmFsdWVJbmRleH19YCk7XG5cdFx0XHR9IGVsc2UgaWYgKCFpZ25vcmVTZWxmKSB7XG5cdFx0XHRcdC8vIENvbGxlY3QgdW5kZXJseWluZyBwcm9wZXJ0eVxuXHRcdFx0XHR2YWx1ZUluZGV4ID0gX3B1c2hVbmlxdWUocGF0aCwgcHJvcGVydHkpO1xuXHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske3ZhbHVlSW5kZXh9fWApO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHJlbGF0ZWRQcm9wZXJ0aWVzID0gX2NvbGxlY3RBZGRpdGlvbmFsUHJvcGVydGllc0ZvckFuYWx5dGljYWxUYWJsZShwcm9wZXJ0eSwgbmF2aWdhdGlvblBhdGhQcmVmaXgsIHRhYmxlVHlwZSwgcmVsYXRlZFByb3BlcnRpZXMpO1xuXHRcdGlmIChPYmplY3Qua2V5cyhyZWxhdGVkUHJvcGVydGllcy5hZGRpdGlvbmFsUHJvcGVydGllcykubGVuZ3RoID4gMCAmJiBPYmplY3Qua2V5cyhyZWxhdGVkUHJvcGVydGllcy5wcm9wZXJ0aWVzKS5sZW5ndGggPT09IDApIHtcblx0XHRcdC8vIENvbGxlY3QgdW5kZXJseWluZyBwcm9wZXJ0eSBpZiBub3QgY29sbGVjdGVkIGFscmVhZHkuXG5cdFx0XHQvLyBUaGlzIGlzIHRvIGVuc3VyZSB0aGF0IGFkZGl0aW9uYWxQcm9wZXJ0aWVzIGFyZSBtYWRlIGF2YWlsYWJsZSBvbmx5IHRvIGNvbXBsZXggcHJvcGVydHkgaW5mb3MuXG5cdFx0XHR2YWx1ZUluZGV4ID0gX3B1c2hVbmlxdWUocGF0aCwgcHJvcGVydHkpO1xuXHRcdFx0X2FwcGVuZFRlbXBsYXRlKGB7JHt2YWx1ZUluZGV4fX1gKTtcblx0XHR9XG5cdH1cblxuXHRyZXR1cm4gcmVsYXRlZFByb3BlcnRpZXM7XG59XG5cbi8qKlxuICogQ29sbGVjdCBwcm9wZXJ0aWVzIGNvbnN1bWVkIGJ5IGEgRGF0YSBGaWVsZC5cbiAqIFRoaXMgaXMgZm9yIHBvcHVsYXRpbmcgdGhlIENvbXBsZXhQcm9wZXJ0eUluZm9zIG9mIHRoZSB0YWJsZSBkZWxlZ2F0ZS5cbiAqXG4gKiBAcGFyYW0ge0RhdGFGaWVsZEFic3RyYWN0VHlwZXN9IGRhdGFGaWVsZCBUaGUgRGF0YSBGaWVsZCBmb3Igd2hpY2ggdGhlIHByb3BlcnRpZXMgbmVlZCB0byBiZSBpZGVudGlmaWVkLlxuICogQHBhcmFtIGNvbnZlcnRlckNvbnRleHQgVGhlIGNvbnZlcnRlciBjb250ZXh0LlxuICogQHBhcmFtIHtUYWJsZVR5cGV9IHRhYmxlVHlwZSBUaGUgdGFibGUgdHlwZS5cbiAqIEBwYXJhbSB7Q29tcGxleFByb3BlcnR5SW5mb30gcmVsYXRlZFByb3BlcnRpZXMgVGhlIHByb3BlcnRpZXMgaWRlbnRpZmllZCBzbyBmYXIuXG4gKiBAcmV0dXJucyB7Q29tcGxleFByb3BlcnR5SW5mb30gVGhlIHByb3BlcnRpZXMgcmVsYXRlZCB0byB0aGUgRGF0YSBGaWVsZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbGxlY3RSZWxhdGVkUHJvcGVydGllc1JlY3Vyc2l2ZWx5KFxuXHRkYXRhRmllbGQ6IERhdGFGaWVsZEFic3RyYWN0VHlwZXMsXG5cdGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQsXG5cdHRhYmxlVHlwZTogVGFibGVUeXBlLFxuXHRyZWxhdGVkUHJvcGVydGllczogQ29tcGxleFByb3BlcnR5SW5mbyA9IHsgcHJvcGVydGllczoge30sIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7fSB9XG4pOiBDb21wbGV4UHJvcGVydHlJbmZvIHtcblx0aWYgKGRhdGFGaWVsZC4kVHlwZSA9PT0gVUlBbm5vdGF0aW9uVHlwZXMuRGF0YUZpZWxkICYmIGRhdGFGaWVsZC5WYWx1ZSkge1xuXHRcdGNvbnN0IHByb3BlcnR5ID0gZGF0YUZpZWxkLlZhbHVlO1xuXHRcdHJlbGF0ZWRQcm9wZXJ0aWVzID0gY29sbGVjdFJlbGF0ZWRQcm9wZXJ0aWVzKFxuXHRcdFx0cHJvcGVydHkucGF0aCxcblx0XHRcdHByb3BlcnR5LiR0YXJnZXQsXG5cdFx0XHRjb252ZXJ0ZXJDb250ZXh0LFxuXHRcdFx0ZmFsc2UsXG5cdFx0XHR0YWJsZVR5cGUsXG5cdFx0XHRyZWxhdGVkUHJvcGVydGllc1xuXHRcdCk7XG5cdFx0Y29uc3QgbmF2aWdhdGlvblBhdGhQcmVmaXggPSBfZ2V0TmF2aWdhdGlvblBhdGhQcmVmaXgocHJvcGVydHkucGF0aCk7XG5cdFx0cmVsYXRlZFByb3BlcnRpZXMgPSBfY29sbGVjdEFkZGl0aW9uYWxQcm9wZXJ0aWVzRm9yQW5hbHl0aWNhbFRhYmxlKGRhdGFGaWVsZCwgbmF2aWdhdGlvblBhdGhQcmVmaXgsIHRhYmxlVHlwZSwgcmVsYXRlZFByb3BlcnRpZXMpO1xuXHR9IGVsc2UgaWYgKGRhdGFGaWVsZC4kVHlwZSA9PT0gVUlBbm5vdGF0aW9uVHlwZXMuRGF0YUZpZWxkRm9yQW5ub3RhdGlvbikge1xuXHRcdHN3aXRjaCAoZGF0YUZpZWxkLlRhcmdldD8uJHRhcmdldD8uJFR5cGUpIHtcblx0XHRcdGNhc2UgVUlBbm5vdGF0aW9uVHlwZXMuRmllbGRHcm91cFR5cGU6XG5cdFx0XHRcdGRhdGFGaWVsZC5UYXJnZXQuJHRhcmdldC5EYXRhPy5mb3JFYWNoKChpbm5lckRhdGFGaWVsZDogRGF0YUZpZWxkQWJzdHJhY3RUeXBlcykgPT4ge1xuXHRcdFx0XHRcdHJlbGF0ZWRQcm9wZXJ0aWVzID0gY29sbGVjdFJlbGF0ZWRQcm9wZXJ0aWVzUmVjdXJzaXZlbHkoaW5uZXJEYXRhRmllbGQsIGNvbnZlcnRlckNvbnRleHQsIHRhYmxlVHlwZSwgcmVsYXRlZFByb3BlcnRpZXMpO1xuXHRcdFx0XHR9KTtcblx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdGNhc2UgVUlBbm5vdGF0aW9uVHlwZXMuRGF0YVBvaW50VHlwZTpcblx0XHRcdFx0cmVsYXRlZFByb3BlcnRpZXMgPSBjb2xsZWN0UmVsYXRlZFByb3BlcnRpZXMoXG5cdFx0XHRcdFx0ZGF0YUZpZWxkLlRhcmdldC4kdGFyZ2V0LlZhbHVlLnBhdGgsXG5cdFx0XHRcdFx0ZGF0YUZpZWxkLFxuXHRcdFx0XHRcdGNvbnZlcnRlckNvbnRleHQsXG5cdFx0XHRcdFx0ZmFsc2UsXG5cdFx0XHRcdFx0dGFibGVUeXBlLFxuXHRcdFx0XHRcdHJlbGF0ZWRQcm9wZXJ0aWVzXG5cdFx0XHRcdCk7XG5cdFx0XHRcdGJyZWFrO1xuXG5cdFx0XHRjYXNlIFwiY29tLnNhcC52b2NhYnVsYXJpZXMuQ29tbXVuaWNhdGlvbi52MS5Db250YWN0VHlwZVwiOlxuXHRcdFx0XHRyZWxhdGVkUHJvcGVydGllcyA9IGNvbGxlY3RSZWxhdGVkUHJvcGVydGllcyhcblx0XHRcdFx0XHRkYXRhRmllbGQuVGFyZ2V0LnZhbHVlLFxuXHRcdFx0XHRcdGRhdGFGaWVsZCxcblx0XHRcdFx0XHRjb252ZXJ0ZXJDb250ZXh0LFxuXHRcdFx0XHRcdGZhbHNlLFxuXHRcdFx0XHRcdHRhYmxlVHlwZSxcblx0XHRcdFx0XHRyZWxhdGVkUHJvcGVydGllc1xuXHRcdFx0XHQpO1xuXHRcdFx0XHRicmVhaztcblx0XHR9XG5cdH1cblxuXHRyZXR1cm4gcmVsYXRlZFByb3BlcnRpZXM7XG59XG5cbmV4cG9ydCBjb25zdCBnZXREYXRhRmllbGREYXRhVHlwZSA9IGZ1bmN0aW9uKG9EYXRhRmllbGQ6IERhdGFGaWVsZEFic3RyYWN0VHlwZXMgfCBQcm9wZXJ0eSk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG5cdGxldCBzRGF0YVR5cGU6IHN0cmluZyB8IHVuZGVmaW5lZCA9IChvRGF0YUZpZWxkIGFzIERhdGFGaWVsZEFic3RyYWN0VHlwZXMpLiRUeXBlO1xuXHRzd2l0Y2ggKHNEYXRhVHlwZSkge1xuXHRcdGNhc2UgVUlBbm5vdGF0aW9uVHlwZXMuRGF0YUZpZWxkRm9yQWN0aW9uOlxuXHRcdGNhc2UgVUlBbm5vdGF0aW9uVHlwZXMuRGF0YUZpZWxkRm9ySW50ZW50QmFzZWROYXZpZ2F0aW9uOlxuXHRcdFx0c0RhdGFUeXBlID0gdW5kZWZpbmVkO1xuXHRcdFx0YnJlYWs7XG5cblx0XHRjYXNlIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZDpcblx0XHRjYXNlIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZFdpdGhOYXZpZ2F0aW9uUGF0aDpcblx0XHRjYXNlIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZFdpdGhVcmw6XG5cdFx0XHRzRGF0YVR5cGUgPSAob0RhdGFGaWVsZCBhcyBEYXRhRmllbGQpPy5WYWx1ZT8uJHRhcmdldD8udHlwZTtcblx0XHRcdGJyZWFrO1xuXG5cdFx0Y2FzZSBVSUFubm90YXRpb25UeXBlcy5EYXRhRmllbGRGb3JBbm5vdGF0aW9uOlxuXHRcdGRlZmF1bHQ6XG5cdFx0XHRjb25zdCBzRGF0YVR5cGVGb3JEYXRhRmllbGRGb3JBbm5vdGF0aW9uID0gKG9EYXRhRmllbGQgYXMgRGF0YUZpZWxkRm9yQW5ub3RhdGlvbikuVGFyZ2V0Py4kdGFyZ2V0LiRUeXBlO1xuXHRcdFx0aWYgKHNEYXRhVHlwZUZvckRhdGFGaWVsZEZvckFubm90YXRpb24pIHtcblx0XHRcdFx0aWYgKChvRGF0YUZpZWxkIGFzIERhdGFGaWVsZEZvckFubm90YXRpb24pLlRhcmdldD8uJHRhcmdldC4kVHlwZSA9PT0gQ29tbXVuaWNhdGlvbkFubm90YXRpb25UeXBlcy5Db250YWN0VHlwZSkge1xuXHRcdFx0XHRcdHNEYXRhVHlwZSA9ICgoKG9EYXRhRmllbGQgYXMgRGF0YUZpZWxkRm9yQW5ub3RhdGlvbikuVGFyZ2V0Py4kdGFyZ2V0IGFzIENvbnRhY3QpPy5mbiBhcyBhbnkpLiR0YXJnZXQ/LnR5cGU7XG5cdFx0XHRcdH0gZWxzZSBpZiAoKG9EYXRhRmllbGQgYXMgRGF0YUZpZWxkRm9yQW5ub3RhdGlvbikuVGFyZ2V0Py4kdGFyZ2V0LiRUeXBlID09PSBVSUFubm90YXRpb25UeXBlcy5EYXRhUG9pbnRUeXBlKSB7XG5cdFx0XHRcdFx0c0RhdGFUeXBlID1cblx0XHRcdFx0XHRcdCgob0RhdGFGaWVsZCBhcyBEYXRhRmllbGRGb3JBbm5vdGF0aW9uKS5UYXJnZXQ/LiR0YXJnZXQgYXMgRGF0YVBvaW50KT8uVmFsdWU/LiRQYXRoPy4kVHlwZSB8fFxuXHRcdFx0XHRcdFx0KChvRGF0YUZpZWxkIGFzIERhdGFGaWVsZEZvckFubm90YXRpb24pLlRhcmdldD8uJHRhcmdldCBhcyBEYXRhUG9pbnQpPy5WYWx1ZT8uJHRhcmdldC50eXBlO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdC8vIGUuZy4gRmllbGRHcm91cCBvciBDaGFydFxuXHRcdFx0XHRcdHNEYXRhVHlwZSA9IHVuZGVmaW5lZDtcblx0XHRcdFx0fVxuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0c0RhdGFUeXBlID0gdW5kZWZpbmVkO1xuXHRcdFx0fVxuXHRcdFx0YnJlYWs7XG5cdH1cblxuXHRyZXR1cm4gc0RhdGFUeXBlO1xufTtcbiJdfQ==
|
|
385
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkRhdGFGaWVsZC50cyJdLCJuYW1lcyI6WyJpc0RhdGFGaWVsZEZvckFjdGlvbkFic3RyYWN0IiwiZGF0YUZpZWxkIiwiaGFzT3duUHJvcGVydHkiLCJpc0RhdGFGaWVsZFR5cGVzIiwiaXNEYXRhRmllbGRBbHdheXNIaWRkZW4iLCJhbm5vdGF0aW9ucyIsIlVJIiwiSGlkZGVuIiwidmFsdWVPZiIsIlZhbHVlIiwiJHRhcmdldCIsImdldFNlbWFudGljT2JqZWN0UGF0aCIsImNvbnZlcnRlckNvbnRleHQiLCJvYmplY3QiLCJwcm9wZXJ0eSIsIkNvbW1vbiIsIlNlbWFudGljT2JqZWN0IiwidW5kZWZpbmVkIiwiZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aCIsImZ1bGx5UXVhbGlmaWVkTmFtZSIsImlzUHJvcGVydHkiLCJfZ2V0TmF2aWdhdGlvblBhdGhQcmVmaXgiLCJwYXRoIiwiaW5kZXhPZiIsInN1YnN0cmluZyIsImxhc3RJbmRleE9mIiwiX2NvbGxlY3RBZGRpdGlvbmFsUHJvcGVydGllc0ZvckFuYWx5dGljYWxUYWJsZSIsInRhcmdldCIsIm5hdmlnYXRpb25QYXRoUHJlZml4IiwidGFibGVUeXBlIiwicmVsYXRlZFByb3BlcnRpZXMiLCJoaWRkZW5Bbm5vdGF0aW9uIiwiX3R5cGUiLCJoaWRkZW5Bbm5vdGF0aW9uUHJvcGVydHlQYXRoIiwiYWRkaXRpb25hbFByb3BlcnRpZXMiLCJjb2xsZWN0UmVsYXRlZFByb3BlcnRpZXMiLCJpZ25vcmVTZWxmIiwicHJvcGVydGllcyIsIl9wdXNoVW5pcXVlIiwia2V5IiwidmFsdWUiLCJPYmplY3QiLCJrZXlzIiwiX2FwcGVuZFRlbXBsYXRlIiwiZXhwb3J0U2V0dGluZ3NUZW1wbGF0ZSIsInRleHRBbm5vdGF0aW9uIiwiVGV4dCIsInZhbHVlSW5kZXgiLCJ0YXJnZXRWYWx1ZSIsImN1cnJlbmN5T3JVb01JbmRleCIsImV4cG9ydFNldHRpbmdzV3JhcHBpbmciLCJkYXRhTW9kZWxPYmplY3RQYXRoIiwiZ2V0RGF0YU1vZGVsT2JqZWN0UGF0aCIsInRleHRBbm5vdGF0aW9uUHJvcGVydHlQYXRoIiwiZGlzcGxheU1vZGUiLCJnZXREaXNwbGF5TW9kZSIsImRlc2NyaXB0aW9uSW5kZXgiLCJ2aXN1YWxTZXR0aW5nc1RvQmVFeGNsdWRlZCIsImN1cnJlbmN5T3JVb01Qcm9wZXJ0eSIsImdldEFzc29jaWF0ZWRDdXJyZW5jeVByb3BlcnR5IiwiZ2V0QXNzb2NpYXRlZFVuaXRQcm9wZXJ0eSIsImN1cnJlbmN5T3JVbml0QW5ub3RhdGlvbiIsIk1lYXN1cmVzIiwiSVNPQ3VycmVuY3kiLCJVbml0IiwibmFtZSIsIlRhcmdldCIsIlZpc3VhbGl6YXRpb24iLCJkYXRhUG9pbnRQcm9wZXJ0eSIsIlRhcmdldFZhbHVlIiwiTWF4aW11bVZhbHVlIiwidG9TdHJpbmciLCJEYXRhRmllbGREZWZhdWx0IiwiJFR5cGUiLCJkYXRhUG9pbnREZWZhdWx0UHJvcGVydHkiLCJleHBvcnRTZXR0aW5nc0NvbnRhY3RQcm9wZXJ0eSIsImZuIiwibGVuZ3RoIiwiY29sbGVjdFJlbGF0ZWRQcm9wZXJ0aWVzUmVjdXJzaXZlbHkiLCJEYXRhIiwiZm9yRWFjaCIsImlubmVyRGF0YUZpZWxkIiwiZ2V0RGF0YUZpZWxkRGF0YVR5cGUiLCJvRGF0YUZpZWxkIiwic0RhdGFUeXBlIiwidHlwZSIsInNEYXRhVHlwZUZvckRhdGFGaWVsZEZvckFubm90YXRpb24iLCIkUGF0aCJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7OztBQXlCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLFdBQVNBLDRCQUFULENBQXNDQyxTQUF0QyxFQUF1SDtBQUM3SCxXQUFRQSxTQUFELENBQStDQyxjQUEvQyxDQUE4RCxRQUE5RCxDQUFQO0FBQ0E7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7QUFDTyxXQUFTQyxnQkFBVCxDQUEwQkYsU0FBMUIsRUFBMEY7QUFDaEcsV0FBUUEsU0FBRCxDQUE4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Q0VVLFVBQUQsQ0FBdUNqQixNQUR4QyxpRUFDQyxTQUErQ3hELE9BRGhELDhFQUNBLGlCQUF1RUQsS0FEdkUsMERBQ0Esc0JBQThFQyxPQUE5RSxDQUFzRjJFLElBRHRGLENBREQ7QUFHQSxXQUpNLE1BSUE7QUFDTjtBQUNBRCxZQUFBQSxTQUFTLEdBQUduRSxTQUFaO0FBQ0E7QUFDRCxTQVhELE1BV087QUFDTm1FLFVBQUFBLFNBQVMsR0FBR25FLFNBQVo7QUFDQTs7QUFDRDtBQTdCRjs7QUFnQ0EsV0FBT21FLFNBQVA7QUFDQSxHQW5DTSIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcblx0Q29tbXVuaWNhdGlvbkFubm90YXRpb25UeXBlcyxcblx0Q29udGFjdCxcblx0RGF0YUZpZWxkLFxuXHREYXRhRmllbGRBYnN0cmFjdFR5cGVzLFxuXHREYXRhRmllbGRGb3JBY3Rpb25BYnN0cmFjdFR5cGVzLFxuXHREYXRhRmllbGRGb3JBbm5vdGF0aW9uLFxuXHREYXRhRmllbGRUeXBlcyxcblx0RGF0YVBvaW50LFxuXHRVSUFubm90YXRpb25UeXBlc1xufSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXNcIjtcbmltcG9ydCAqIGFzIEVkbSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvZGlzdC9FZG1cIjtcbmltcG9ydCB7IGdldERpc3BsYXlNb2RlLCBQcm9wZXJ0eU9yUGF0aCB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL1VJRm9ybWF0dGVyc1wiO1xuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tIFwiQHNhcC11eC9hbm5vdGF0aW9uLWNvbnZlcnRlclwiO1xuaW1wb3J0IHsgZ2V0QXNzb2NpYXRlZEN1cnJlbmN5UHJvcGVydHksIGdldEFzc29jaWF0ZWRVbml0UHJvcGVydHksIGlzUHJvcGVydHkgfSBmcm9tIFwic2FwL2ZlL2NvcmUvdGVtcGxhdGluZy9Qcm9wZXJ0eUhlbHBlclwiO1xuaW1wb3J0IENvbnZlcnRlckNvbnRleHQgZnJvbSBcIi4uL0NvbnZlcnRlckNvbnRleHRcIjtcbmltcG9ydCB7IFRhYmxlVHlwZSB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL2NvbnRyb2xzL0NvbW1vbi9UYWJsZVwiO1xuXG5leHBvcnQgdHlwZSBDb21wbGV4UHJvcGVydHlJbmZvID0ge1xuXHRwcm9wZXJ0aWVzOiBSZWNvcmQ8c3RyaW5nLCBQcm9wZXJ0eT47XG5cdGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBSZWNvcmQ8c3RyaW5nLCBQcm9wZXJ0eT47XG5cdGV4cG9ydFNldHRpbmdzVGVtcGxhdGU/OiBzdHJpbmc7XG5cdGV4cG9ydFNldHRpbmdzV3JhcHBpbmc/OiBib29sZWFuO1xuXHRleHBvcnRTZXR0aW5nc0NvbnRhY3RQcm9wZXJ0eT86IHN0cmluZztcblx0dmlzdWFsU2V0dGluZ3NUb0JlRXhjbHVkZWQ/OiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIElkZW50aWZpZXMgaWYgdGhlIGdpdmVuIGRhdGFGaWVsZEFic3RyYWN0IHRoYXQgaXMgcGFzc2VkIGlzIGEgXCJEYXRhRmllbGRGb3JBY3Rpb25BYnN0cmFjdFwiLlxuICogRGF0YUZpZWxkRm9yQWN0aW9uQWJzdHJhY3QgaGFzIGFuIGlubGluZSBhY3Rpb24gZGVmaW5lZC5cbiAqXG4gKiBAcGFyYW0ge0RhdGFGaWVsZEFic3RyYWN0VHlwZXN9IGRhdGFGaWVsZCBEYXRhIGZpZWxkIHRvIGJlIGV2YWx1YXRlZFxuICogQHJldHVybnMge2Jvb2xlYW59IFZhbGlkYXRlcyB0aGF0IGRhdGFGaWVsZCBpcyBhIERhdGFGaWVsZEZvckFjdGlvbkFic3RyYWN0VHlwZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNEYXRhRmllbGRGb3JBY3Rpb25BYnN0cmFjdChkYXRhRmllbGQ6IERhdGFGaWVsZEFic3RyYWN0VHlwZXMpOiBkYXRhRmllbGQgaXMgRGF0YUZpZWxkRm9yQWN0aW9uQWJzdHJhY3RUeXBlcyB7XG5cdHJldHVybiAoZGF0YUZpZWxkIGFzIERhdGFGaWVsZEZvckFjdGlvbkFic3RyYWN0VHlwZXMpLmhhc093blByb3BlcnR5KFwiQWN0aW9uXCIpO1xufVxuXG4vKipcbiAqIElkZW50aWZpZXMgaWYgdGhlIGdpdmVuIGRhdGFGaWVsZEFic3RyYWN0IHRoYXQgaXMgcGFzc2VkIGlzIGEgXCJEYXRhRmllbGRcIi5cbiAqIERhdGFGaWVsZCBoYXMgYSB2YWx1ZSBkZWZpbmVkLlxuICpcbiAqIEBwYXJhbSB7RGF0YUZpZWxkQWJzdHJhY3RUeXBlc30gZGF0YUZpZWxkIERhdGEgZmllbGQgdG8gYmUgZXZhbHVhdGVkXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVmFsaWRhdGUgdGhhdCBkYXRhRmllbGQgaXMgYSBEYXRhRmllbGRUeXBlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gaXNEYXRhRmllbGRUeXBlcyhkYXRhRmllbGQ6IERhdGFGaWVsZEFic3RyYWN0VHlwZXMpOiBkYXRhRmllbGQgaXMgRGF0YUZpZWxkVHlwZXMge1xuXHRyZXR1cm4gKGRhdGFGaWVsZCBhcyBEYXRhRmllbGRUeXBlcykuaGFzT3duUHJvcGVydHkoXCJWYWx1ZVwiKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHdoZXRoZXIgZ2l2ZW4gZGF0YSBmaWVsZCBoYXMgYSBzdGF0aWMgaGlkZGVuIGFubm90YXRpb24uXG4gKlxuICogQHBhcmFtIHtEYXRhRmllbGRBYnN0cmFjdFR5cGVzfSBkYXRhRmllbGQgVGhlIGRhdGFmaWVsZCB0byBjaGVja1xuICogQHJldHVybnMge2Jvb2xlYW59IGB0cnVlYCBpZiBkYXRhZmllbGQgb3IgcmVmZXJlbmNlZCBwcm9wZXJ0eSBoYXMgYSBzdGF0aWMgSGlkZGVuIGFubm90YXRpb24sIGZhbHNlIGVsc2VcbiAqIEBwcml2YXRlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0RhdGFGaWVsZEFsd2F5c0hpZGRlbihkYXRhRmllbGQ6IERhdGFGaWVsZEFic3RyYWN0VHlwZXMpOiBib29sZWFuIHtcblx0cmV0dXJuIChcblx0XHRkYXRhRmllbGQuYW5ub3RhdGlvbnM/LlVJPy5IaWRkZW4/LnZhbHVlT2YoKSA9PT0gdHJ1ZSB8fFxuXHRcdChpc0RhdGFGaWVsZFR5cGVzKGRhdGFGaWVsZCkgJiYgZGF0YUZpZWxkLlZhbHVlPy4kdGFyZ2V0Py5hbm5vdGF0aW9ucz8uVUk/LkhpZGRlbiA9PT0gdHJ1ZSlcblx0KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNlbWFudGljT2JqZWN0UGF0aChjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0LCBvYmplY3Q6IGFueSk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG5cdGlmICh0eXBlb2Ygb2JqZWN0ID09PSBcIm9iamVjdFwiKSB7XG5cdFx0aWYgKGlzRGF0YUZpZWxkVHlwZXMob2JqZWN0KSAmJiBvYmplY3QuVmFsdWU/LiR0YXJnZXQpIHtcblx0XHRcdGNvbnN0IHByb3BlcnR5ID0gb2JqZWN0LlZhbHVlPy4kdGFyZ2V0O1xuXHRcdFx0aWYgKHByb3BlcnR5Py5hbm5vdGF0aW9ucz8uQ29tbW9uPy5TZW1hbnRpY09iamVjdCAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRcdHJldHVybiBjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVNldEJhc2VkQW5ub3RhdGlvblBhdGgocHJvcGVydHk/LmZ1bGx5UXVhbGlmaWVkTmFtZSk7XG5cdFx0XHR9XG5cdFx0fSBlbHNlIGlmIChpc1Byb3BlcnR5KG9iamVjdCkpIHtcblx0XHRcdGlmIChvYmplY3Q/LmFubm90YXRpb25zPy5Db21tb24/LlNlbWFudGljT2JqZWN0ICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0cmV0dXJuIGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aChvYmplY3Q/LmZ1bGx5UXVhbGlmaWVkTmFtZSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdHJldHVybiB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgbmF2aWdhdGlvbiBwYXRoIHByZWZpeCBmb3IgYSBwcm9wZXJ0eSBwYXRoLlxuICpcbiAqIEBwYXJhbSBwYXRoIFRoZSBwcm9wZXJ0eSBwYXRoIEZvciBlLmcuIC9FbnRpdHlUeXBlL05hdmlnYXRpb24vUHJvcGVydHlcbiAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBuYXZpZ2F0aW9uIHBhdGggcHJlZml4IEZvciBlLmcuIC9FbnRpdHlUeXBlL05hdmlnYXRpb24vXG4gKi9cbmZ1bmN0aW9uIF9nZXROYXZpZ2F0aW9uUGF0aFByZWZpeChwYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRyZXR1cm4gcGF0aC5pbmRleE9mKFwiL1wiKSA+IC0xID8gcGF0aC5zdWJzdHJpbmcoMCwgcGF0aC5sYXN0SW5kZXhPZihcIi9cIikgKyAxKSA6IFwiXCI7XG59XG5cbi8qKlxuICogQ29sbGVjdCBhZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIHRoZSBBTFAgdGFibGUgdXNlLWNhc2UuXG4gKlxuICogRm9yIGUuZy4gSWYgVUkuSGlkZGVuIHBvaW50cyB0byBhIHByb3BlcnR5LCBpbmNsdWRlIHRoaXMgcHJvcGVydHkgaW4gdGhlIGFkZGl0aW9uYWxQcm9wZXJ0aWVzIG9mIENvbXBsZXhQcm9wZXJ0eUluZm8gb2JqZWN0LlxuICogQHBhcmFtIHRhcmdldCBQcm9wZXJ0eSBvciBEYXRhRmllbGQgYmVpbmcgcHJvY2Vzc2VkXG4gKiBAcGFyYW0gbmF2aWdhdGlvblBhdGhQcmVmaXggTmF2aWdhdGlvbiBwYXRoIHByZWZpeCwgYXBwbGljYWJsZSBpbiBjYXNlIG9mIG5hdmlnYXRpb24gcHJvcGVydGllcy5cbiAqIEBwYXJhbSB0YWJsZVR5cGUgVGFibGUgdHlwZS5cbiAqIEBwYXJhbSByZWxhdGVkUHJvcGVydGllcyBUaGUgcmVsYXRlZCBwcm9wZXJ0aWVzIGlkZW50aWZpZWQgc28gZmFyLlxuICogQHJldHVybnMge0NvbXBsZXhQcm9wZXJ0eUluZm99IFRoZSByZWxhdGVkIHByb3BlcnRpZXMgaWRlbnRpZmllZC5cbiAqL1xuZnVuY3Rpb24gX2NvbGxlY3RBZGRpdGlvbmFsUHJvcGVydGllc0ZvckFuYWx5dGljYWxUYWJsZShcblx0dGFyZ2V0OiBFZG0uUHJpbWl0aXZlVHlwZSxcblx0bmF2aWdhdGlvblBhdGhQcmVmaXg6IHN0cmluZyxcblx0dGFibGVUeXBlOiBUYWJsZVR5cGUsXG5cdHJlbGF0ZWRQcm9wZXJ0aWVzOiBDb21wbGV4UHJvcGVydHlJbmZvXG4pOiBDb21wbGV4UHJvcGVydHlJbmZvIHtcblx0aWYgKHRhYmxlVHlwZSA9PT0gXCJBbmFseXRpY2FsVGFibGVcIikge1xuXHRcdGNvbnN0IGhpZGRlbkFubm90YXRpb24gPSB0YXJnZXQuYW5ub3RhdGlvbnM/LlVJPy5IaWRkZW47XG5cdFx0aWYgKGhpZGRlbkFubm90YXRpb24/LnBhdGggJiYgaGlkZGVuQW5ub3RhdGlvbi4kdGFyZ2V0Py5fdHlwZSA9PT0gXCJQcm9wZXJ0eVwiKSB7XG5cdFx0XHRjb25zdCBoaWRkZW5Bbm5vdGF0aW9uUHJvcGVydHlQYXRoID0gbmF2aWdhdGlvblBhdGhQcmVmaXggKyBoaWRkZW5Bbm5vdGF0aW9uLnBhdGg7XG5cdFx0XHQvLyBUaGlzIHByb3BlcnR5IHNob3VsZCBiZSBhZGRlZCB0byBhZGRpdGlvbmFsUHJvcGVydGllcyBtYXAgZm9yIHRoZSBBTFAgdGFibGUgdXNlLWNhc2UuXG5cdFx0XHRyZWxhdGVkUHJvcGVydGllcy5hZGRpdGlvbmFsUHJvcGVydGllc1toaWRkZW5Bbm5vdGF0aW9uUHJvcGVydHlQYXRoXSA9IGhpZGRlbkFubm90YXRpb24uJHRhcmdldDtcblx0XHR9XG5cdH1cblx0cmV0dXJuIHJlbGF0ZWRQcm9wZXJ0aWVzO1xufVxuXG4vKipcbiAqIENvbGxlY3QgcmVsYXRlZCBwcm9wZXJ0aWVzIGZyb20gYSBwcm9wZXJ0eSdzIGFubm90YXRpb25zLlxuICpcbiAqIEBwYXJhbSBwYXRoIFRoZSBwcm9wZXJ0eSBwYXRoXG4gKiBAcGFyYW0gcHJvcGVydHkgVGhlIHByb3BlcnR5IHRvIGJlIGNvbnNpZGVyZWRcbiAqIEBwYXJhbSBjb252ZXJ0ZXJDb250ZXh0IFRoZSBjb252ZXJ0ZXIgY29udGV4dFxuICogQHBhcmFtIGlnbm9yZVNlbGYgV2hldGhlciB0byBleGNsdWRlIHRoZSBzYW1lIHByb3BlcnR5IGZyb20gcmVsYXRlZCBwcm9wZXJ0aWVzLlxuICogQHBhcmFtIHRhYmxlVHlwZSBUaGUgdGFibGUgdHlwZS5cbiAqIEBwYXJhbSByZWxhdGVkUHJvcGVydGllcyBUaGUgcmVsYXRlZCBwcm9wZXJ0aWVzIGlkZW50aWZpZWQgc28gZmFyLlxuICogQHJldHVybnMge0NvbXBsZXhQcm9wZXJ0eUluZm99IFRoZSByZWxhdGVkIHByb3BlcnRpZXMgaWRlbnRpZmllZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbGxlY3RSZWxhdGVkUHJvcGVydGllcyhcblx0cGF0aDogc3RyaW5nLFxuXHRwcm9wZXJ0eTogRWRtLlByaW1pdGl2ZVR5cGUsXG5cdGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQsXG5cdGlnbm9yZVNlbGY6IGJvb2xlYW4sXG5cdHRhYmxlVHlwZTogVGFibGVUeXBlLFxuXHRyZWxhdGVkUHJvcGVydGllczogQ29tcGxleFByb3BlcnR5SW5mbyA9IHsgcHJvcGVydGllczoge30sIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7fSB9XG4pOiBDb21wbGV4UHJvcGVydHlJbmZvIHtcblx0LyoqXG5cdCAqIEhlbHBlciB0byBwdXNoIHVuaXF1ZSByZWxhdGVkIHByb3BlcnRpZXMuXG5cdCAqXG5cdCAqIEBwYXJhbSBrZXkgVGhlIHByb3BlcnR5IHBhdGhcblx0ICogQHBhcmFtIHZhbHVlIFRoZSBwcm9wZXJ0aWVzIG9iamVjdCBjb250YWluaW5nIHZhbHVlIHByb3BlcnR5LCBkZXNjcmlwdGlvbiBwcm9wZXJ0eS4uLlxuXHQgKiBAcmV0dXJucyBJbmRleCBhdCB3aGljaCB0aGUgcHJvcGVydHkgaXMgYXZhaWxhYmxlXG5cdCAqL1xuXHRmdW5jdGlvbiBfcHVzaFVuaXF1ZShrZXk6IHN0cmluZywgdmFsdWU6IFByb3BlcnR5KTogbnVtYmVyIHtcblx0XHRpZiAoIXJlbGF0ZWRQcm9wZXJ0aWVzLnByb3BlcnRpZXMuaGFzT3duUHJvcGVydHkoa2V5KSkge1xuXHRcdFx0cmVsYXRlZFByb3BlcnRpZXMucHJvcGVydGllc1trZXldID0gdmFsdWU7XG5cdFx0fVxuXHRcdHJldHVybiBPYmplY3Qua2V5cyhyZWxhdGVkUHJvcGVydGllcy5wcm9wZXJ0aWVzKS5pbmRleE9mKGtleSk7XG5cdH1cblxuXHQvKipcblx0ICogSGVscGVyIHRvIGFwcGVuZCB0aGUgZXhwb3J0IHNldHRpbmdzIHRlbXBsYXRlIHdpdGggYSBmb3JtYXR0ZWQgdGV4dC5cblx0ICpcblx0ICogQHBhcmFtIHZhbHVlIEZvcm1hdHRlZCB0ZXh0XG5cdCAqL1xuXHRmdW5jdGlvbiBfYXBwZW5kVGVtcGxhdGUodmFsdWU6IHN0cmluZykge1xuXHRcdHJlbGF0ZWRQcm9wZXJ0aWVzLmV4cG9ydFNldHRpbmdzVGVtcGxhdGUgPSByZWxhdGVkUHJvcGVydGllcy5leHBvcnRTZXR0aW5nc1RlbXBsYXRlXG5cdFx0XHQ/IGAke3JlbGF0ZWRQcm9wZXJ0aWVzLmV4cG9ydFNldHRpbmdzVGVtcGxhdGV9JHt2YWx1ZX1gXG5cdFx0XHQ6IGAke3ZhbHVlfWA7XG5cdH1cblxuXHRpZiAocGF0aCAmJiBwcm9wZXJ0eSkge1xuXHRcdGNvbnN0IG5hdmlnYXRpb25QYXRoUHJlZml4ID0gX2dldE5hdmlnYXRpb25QYXRoUHJlZml4KHBhdGgpO1xuXG5cdFx0Ly8gQ2hlY2sgZm9yIFRleHQgYW5ub3RhdGlvbi5cblx0XHRjb25zdCB0ZXh0QW5ub3RhdGlvbiA9IHByb3BlcnR5LmFubm90YXRpb25zPy5Db21tb24/LlRleHQ7XG5cdFx0bGV0IHZhbHVlSW5kZXg6IG51bWJlcjtcblx0XHRsZXQgdGFyZ2V0VmFsdWU6IHN0cmluZztcblx0XHRsZXQgY3VycmVuY3lPclVvTUluZGV4OiBudW1iZXI7XG5cblx0XHRpZiAocmVsYXRlZFByb3BlcnRpZXMuZXhwb3J0U2V0dGluZ3NUZW1wbGF0ZSkge1xuXHRcdFx0Ly8gRmllbGRHcm91cCB1c2UtY2FzZS4gTmVlZCB0byBhZGQgZWFjaCBGaWVsZCBpbiBuZXcgbGluZS5cblx0XHRcdF9hcHBlbmRUZW1wbGF0ZShcIlxcblwiKTtcblx0XHRcdHJlbGF0ZWRQcm9wZXJ0aWVzLmV4cG9ydFNldHRpbmdzV3JhcHBpbmcgPSB0cnVlO1xuXHRcdH1cblxuXHRcdGlmICh0ZXh0QW5ub3RhdGlvbj8ucGF0aCAmJiB0ZXh0QW5ub3RhdGlvbj8uJHRhcmdldCkge1xuXHRcdFx0Ly8gQ2hlY2sgZm9yIFRleHQgQXJyYW5nZW1lbnQuXG5cdFx0XHRjb25zdCBkYXRhTW9kZWxPYmplY3RQYXRoID0gY29udmVydGVyQ29udGV4dC5nZXREYXRhTW9kZWxPYmplY3RQYXRoKCk7XG5cdFx0XHRjb25zdCB0ZXh0QW5ub3RhdGlvblByb3BlcnR5UGF0aCA9IG5hdmlnYXRpb25QYXRoUHJlZml4ICsgdGV4dEFubm90YXRpb24ucGF0aDtcblx0XHRcdGNvbnN0IGRpc3BsYXlNb2RlID0gZ2V0RGlzcGxheU1vZGUocHJvcGVydHkgYXMgUHJvcGVydHlPclBhdGg8UHJvcGVydHk+LCBkYXRhTW9kZWxPYmplY3RQYXRoKTtcblx0XHRcdGxldCBkZXNjcmlwdGlvbkluZGV4OiBudW1iZXI7XG5cdFx0XHRzd2l0Y2ggKGRpc3BsYXlNb2RlKSB7XG5cdFx0XHRcdGNhc2UgXCJWYWx1ZVwiOlxuXHRcdFx0XHRcdHZhbHVlSW5kZXggPSBfcHVzaFVuaXF1ZShwYXRoLCBwcm9wZXJ0eSk7XG5cdFx0XHRcdFx0X2FwcGVuZFRlbXBsYXRlKGB7JHt2YWx1ZUluZGV4fX1gKTtcblx0XHRcdFx0XHRyZWxhdGVkUHJvcGVydGllcy52aXN1YWxTZXR0aW5nc1RvQmVFeGNsdWRlZCA9IHRleHRBbm5vdGF0aW9uUHJvcGVydHlQYXRoO1xuXHRcdFx0XHRcdGJyZWFrO1xuXG5cdFx0XHRcdGNhc2UgXCJEZXNjcmlwdGlvblwiOlxuXHRcdFx0XHRcdC8vIEtlZXAgdmFsdWUgd2hlbiBleHBvcnRpbmcgKHNwbGl0IG1vZGUpIG9uIHRleHQgQXJyYW5nZW1lbnQgZGVmaW5lZCBhcyAjVGV4dE9ubHkgKE9ubHkgdmFsdWVzIGFyZSBleHBlY3RlZCBvbiBwYXN0ZSBmcm9tIEV4Y2VsIGZ1bmN0aW9uYWxpdHkpXG5cdFx0XHRcdFx0X3B1c2hVbmlxdWUocGF0aCwgcHJvcGVydHkpO1xuXHRcdFx0XHRcdGRlc2NyaXB0aW9uSW5kZXggPSBfcHVzaFVuaXF1ZSh0ZXh0QW5ub3RhdGlvblByb3BlcnR5UGF0aCwgdGV4dEFubm90YXRpb24uJHRhcmdldCk7XG5cdFx0XHRcdFx0X2FwcGVuZFRlbXBsYXRlKGB7JHtkZXNjcmlwdGlvbkluZGV4fX1gKTtcblx0XHRcdFx0XHRyZWxhdGVkUHJvcGVydGllcy52aXN1YWxTZXR0aW5nc1RvQmVFeGNsdWRlZCA9IHBhdGg7XG5cdFx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdFx0Y2FzZSBcIlZhbHVlRGVzY3JpcHRpb25cIjpcblx0XHRcdFx0XHR2YWx1ZUluZGV4ID0gX3B1c2hVbmlxdWUocGF0aCwgcHJvcGVydHkpO1xuXHRcdFx0XHRcdGRlc2NyaXB0aW9uSW5kZXggPSBfcHVzaFVuaXF1ZSh0ZXh0QW5ub3RhdGlvblByb3BlcnR5UGF0aCwgdGV4dEFubm90YXRpb24uJHRhcmdldCk7XG5cdFx0XHRcdFx0X2FwcGVuZFRlbXBsYXRlKGB7JHt2YWx1ZUluZGV4fX0gKHske2Rlc2NyaXB0aW9uSW5kZXh9fSlgKTtcblx0XHRcdFx0XHRicmVhaztcblxuXHRcdFx0XHRjYXNlIFwiRGVzY3JpcHRpb25WYWx1ZVwiOlxuXHRcdFx0XHRcdHZhbHVlSW5kZXggPSBfcHVzaFVuaXF1ZShwYXRoLCBwcm9wZXJ0eSk7XG5cdFx0XHRcdFx0ZGVzY3JpcHRpb25JbmRleCA9IF9wdXNoVW5pcXVlKHRleHRBbm5vdGF0aW9uUHJvcGVydHlQYXRoLCB0ZXh0QW5ub3RhdGlvbi4kdGFyZ2V0KTtcblx0XHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske2Rlc2NyaXB0aW9uSW5kZXh9fSAoeyR7dmFsdWVJbmRleH19KWApO1xuXHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0fVxuXHRcdH0gZWxzZSB7XG5cdFx0XHQvLyBDaGVjayBmb3IgZmllbGQgY29udGFpbmluZyBDdXJyZW5jeSBPciBVbml0IFByb3BlcnRpZXMuXG5cdFx0XHRjb25zdCBjdXJyZW5jeU9yVW9NUHJvcGVydHkgPSBnZXRBc3NvY2lhdGVkQ3VycmVuY3lQcm9wZXJ0eShwcm9wZXJ0eSkgfHwgZ2V0QXNzb2NpYXRlZFVuaXRQcm9wZXJ0eShwcm9wZXJ0eSk7XG5cdFx0XHRjb25zdCBjdXJyZW5jeU9yVW5pdEFubm90YXRpb24gPSBwcm9wZXJ0eT8uYW5ub3RhdGlvbnM/Lk1lYXN1cmVzPy5JU09DdXJyZW5jeSB8fCBwcm9wZXJ0eT8uYW5ub3RhdGlvbnM/Lk1lYXN1cmVzPy5Vbml0O1xuXHRcdFx0aWYgKGN1cnJlbmN5T3JVb01Qcm9wZXJ0eSAmJiBjdXJyZW5jeU9yVW5pdEFubm90YXRpb24/LiR0YXJnZXQpIHtcblx0XHRcdFx0dmFsdWVJbmRleCA9IF9wdXNoVW5pcXVlKHBhdGgsIHByb3BlcnR5KTtcblx0XHRcdFx0Y3VycmVuY3lPclVvTUluZGV4ID0gX3B1c2hVbmlxdWUoY3VycmVuY3lPclVvTVByb3BlcnR5Lm5hbWUsIGN1cnJlbmN5T3JVbml0QW5ub3RhdGlvbi4kdGFyZ2V0KTtcblx0XHRcdFx0X2FwcGVuZFRlbXBsYXRlKGB7JHt2YWx1ZUluZGV4fX0gIHske2N1cnJlbmN5T3JVb01JbmRleH19YCk7XG5cdFx0XHR9IGVsc2UgaWYgKHByb3BlcnR5LlRhcmdldD8uJHRhcmdldD8uVmlzdWFsaXphdGlvbikge1xuXHRcdFx0XHRjb25zdCBkYXRhUG9pbnRQcm9wZXJ0eTogRWRtLlByaW1pdGl2ZVR5cGUgPSBwcm9wZXJ0eS5UYXJnZXQuJHRhcmdldC5WYWx1ZS4kdGFyZ2V0O1xuXHRcdFx0XHR2YWx1ZUluZGV4ID0gX3B1c2hVbmlxdWUocGF0aCwgZGF0YVBvaW50UHJvcGVydHkpO1xuXHRcdFx0XHQvLyBOZXcgZmFrZSBwcm9wZXJ0eSBjcmVhdGVkIGZvciB0aGUgUmF0aW5nL1Byb2dyZXNzIFRhcmdldCBWYWx1ZS4gSXQnbGwgYmUgdXNlZCBmb3IgdGhlIGV4cG9ydCBvbiBzcGxpdCBtb2RlLlxuXHRcdFx0XHRfcHVzaFVuaXF1ZShwcm9wZXJ0eS5UYXJnZXQudmFsdWUsIHByb3BlcnR5LlRhcmdldC4kdGFyZ2V0KTtcblx0XHRcdFx0dGFyZ2V0VmFsdWUgPSAocHJvcGVydHkuVGFyZ2V0LiR0YXJnZXQuVGFyZ2V0VmFsdWUgfHwgcHJvcGVydHkuVGFyZ2V0LiR0YXJnZXQuTWF4aW11bVZhbHVlKS50b1N0cmluZygpO1xuXHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske3ZhbHVlSW5kZXh9fS8ke3RhcmdldFZhbHVlfWApO1xuXHRcdFx0fSBlbHNlIGlmIChwcm9wZXJ0eS5hbm5vdGF0aW9ucz8uVUk/LkRhdGFGaWVsZERlZmF1bHQ/LlRhcmdldD8uJHRhcmdldD8uJFR5cGUgPT09IFVJQW5ub3RhdGlvblR5cGVzLkRhdGFQb2ludFR5cGUpIHtcblx0XHRcdFx0Ly8gRGF0YVBvaW50IHVzZS1jYXNlIHVzaW5nIERhdGFGaWVsZERlZmF1bHQuXG5cdFx0XHRcdGNvbnN0IGRhdGFQb2ludERlZmF1bHRQcm9wZXJ0eTogRWRtLlByaW1pdGl2ZVR5cGUgPSBwcm9wZXJ0eS5hbm5vdGF0aW9ucy5VSS5EYXRhRmllbGREZWZhdWx0O1xuXHRcdFx0XHR2YWx1ZUluZGV4ID0gX3B1c2hVbmlxdWUocGF0aCwgcHJvcGVydHkpO1xuXHRcdFx0XHQvLyBOZXcgZmFrZSBwcm9wZXJ0eSBjcmVhdGVkIGZvciB0aGUgUmF0aW5nL1Byb2dyZXNzIFRhcmdldCBWYWx1ZS4gSXQnbGwgYmUgdXNlZCBmb3IgdGhlIGV4cG9ydCBvbiBzcGxpdCBtb2RlLlxuXHRcdFx0XHRfcHVzaFVuaXF1ZShkYXRhUG9pbnREZWZhdWx0UHJvcGVydHkuVGFyZ2V0LnZhbHVlLCBwcm9wZXJ0eSk7XG5cdFx0XHRcdHRhcmdldFZhbHVlID0gKFxuXHRcdFx0XHRcdGRhdGFQb2ludERlZmF1bHRQcm9wZXJ0eS5UYXJnZXQuJHRhcmdldC5UYXJnZXRWYWx1ZSB8fCBkYXRhUG9pbnREZWZhdWx0UHJvcGVydHkuVGFyZ2V0LiR0YXJnZXQuVGFyZ2V0VmFsdWUuTWF4aW11bVZhbHVlXG5cdFx0XHRcdCkudG9TdHJpbmcoKTtcblx0XHRcdFx0X2FwcGVuZFRlbXBsYXRlKGB7JHt2YWx1ZUluZGV4fX0vJHt0YXJnZXRWYWx1ZX1gKTtcblx0XHRcdH0gZWxzZSBpZiAocHJvcGVydHkuVGFyZ2V0Py4kdGFyZ2V0Py4kVHlwZSA9PT0gXCJjb20uc2FwLnZvY2FidWxhcmllcy5Db21tdW5pY2F0aW9uLnYxLkNvbnRhY3RUeXBlXCIpIHtcblx0XHRcdFx0cmVsYXRlZFByb3BlcnRpZXMuZXhwb3J0U2V0dGluZ3NDb250YWN0UHJvcGVydHkgPVxuXHRcdFx0XHRcdHByb3BlcnR5LlRhcmdldC52YWx1ZS5zdWJzdHJpbmcoMCwgcHJvcGVydHkuVGFyZ2V0LnZhbHVlLmluZGV4T2YoXCIvXCIpICsgMSkgKyBwcm9wZXJ0eS5UYXJnZXQuJHRhcmdldC5mbj8ucGF0aDtcblx0XHRcdFx0dmFsdWVJbmRleCA9IF9wdXNoVW5pcXVlKHBhdGgsIHByb3BlcnR5LlRhcmdldC4kdGFyZ2V0LmZuLiR0YXJnZXQpO1xuXHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske3ZhbHVlSW5kZXh9fWApO1xuXHRcdFx0fSBlbHNlIGlmICghaWdub3JlU2VsZikge1xuXHRcdFx0XHQvLyBDb2xsZWN0IHVuZGVybHlpbmcgcHJvcGVydHlcblx0XHRcdFx0dmFsdWVJbmRleCA9IF9wdXNoVW5pcXVlKHBhdGgsIHByb3BlcnR5KTtcblx0XHRcdFx0X2FwcGVuZFRlbXBsYXRlKGB7JHt2YWx1ZUluZGV4fX1gKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRyZWxhdGVkUHJvcGVydGllcyA9IF9jb2xsZWN0QWRkaXRpb25hbFByb3BlcnRpZXNGb3JBbmFseXRpY2FsVGFibGUocHJvcGVydHksIG5hdmlnYXRpb25QYXRoUHJlZml4LCB0YWJsZVR5cGUsIHJlbGF0ZWRQcm9wZXJ0aWVzKTtcblx0XHRpZiAoT2JqZWN0LmtleXMocmVsYXRlZFByb3BlcnRpZXMuYWRkaXRpb25hbFByb3BlcnRpZXMpLmxlbmd0aCA+IDAgJiYgT2JqZWN0LmtleXMocmVsYXRlZFByb3BlcnRpZXMucHJvcGVydGllcykubGVuZ3RoID09PSAwKSB7XG5cdFx0XHQvLyBDb2xsZWN0IHVuZGVybHlpbmcgcHJvcGVydHkgaWYgbm90IGNvbGxlY3RlZCBhbHJlYWR5LlxuXHRcdFx0Ly8gVGhpcyBpcyB0byBlbnN1cmUgdGhhdCBhZGRpdGlvbmFsUHJvcGVydGllcyBhcmUgbWFkZSBhdmFpbGFibGUgb25seSB0byBjb21wbGV4IHByb3BlcnR5IGluZm9zLlxuXHRcdFx0dmFsdWVJbmRleCA9IF9wdXNoVW5pcXVlKHBhdGgsIHByb3BlcnR5KTtcblx0XHRcdF9hcHBlbmRUZW1wbGF0ZShgeyR7dmFsdWVJbmRleH19YCk7XG5cdFx0fVxuXHR9XG5cblx0cmV0dXJuIHJlbGF0ZWRQcm9wZXJ0aWVzO1xufVxuXG4vKipcbiAqIENvbGxlY3QgcHJvcGVydGllcyBjb25zdW1lZCBieSBhIERhdGEgRmllbGQuXG4gKiBUaGlzIGlzIGZvciBwb3B1bGF0aW5nIHRoZSBDb21wbGV4UHJvcGVydHlJbmZvcyBvZiB0aGUgdGFibGUgZGVsZWdhdGUuXG4gKlxuICogQHBhcmFtIHtEYXRhRmllbGRBYnN0cmFjdFR5cGVzfSBkYXRhRmllbGQgVGhlIERhdGEgRmllbGQgZm9yIHdoaWNoIHRoZSBwcm9wZXJ0aWVzIG5lZWQgdG8gYmUgaWRlbnRpZmllZC5cbiAqIEBwYXJhbSBjb252ZXJ0ZXJDb250ZXh0IFRoZSBjb252ZXJ0ZXIgY29udGV4dC5cbiAqIEBwYXJhbSB7VGFibGVUeXBlfSB0YWJsZVR5cGUgVGhlIHRhYmxlIHR5cGUuXG4gKiBAcGFyYW0ge0NvbXBsZXhQcm9wZXJ0eUluZm99IHJlbGF0ZWRQcm9wZXJ0aWVzIFRoZSBwcm9wZXJ0aWVzIGlkZW50aWZpZWQgc28gZmFyLlxuICogQHJldHVybnMge0NvbXBsZXhQcm9wZXJ0eUluZm99IFRoZSBwcm9wZXJ0aWVzIHJlbGF0ZWQgdG8gdGhlIERhdGEgRmllbGQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb2xsZWN0UmVsYXRlZFByb3BlcnRpZXNSZWN1cnNpdmVseShcblx0ZGF0YUZpZWxkOiBEYXRhRmllbGRBYnN0cmFjdFR5cGVzLFxuXHRjb252ZXJ0ZXJDb250ZXh0OiBDb252ZXJ0ZXJDb250ZXh0LFxuXHR0YWJsZVR5cGU6IFRhYmxlVHlwZSxcblx0cmVsYXRlZFByb3BlcnRpZXM6IENvbXBsZXhQcm9wZXJ0eUluZm8gPSB7IHByb3BlcnRpZXM6IHt9LCBhZGRpdGlvbmFsUHJvcGVydGllczoge30gfVxuKTogQ29tcGxleFByb3BlcnR5SW5mbyB7XG5cdGlmICgoZGF0YUZpZWxkLiRUeXBlID09PSBVSUFubm90YXRpb25UeXBlcy5EYXRhRmllbGQgfHwgZGF0YUZpZWxkLiRUeXBlID09PSBVSUFubm90YXRpb25UeXBlcy5EYXRhRmllbGRXaXRoVXJsKSAmJiBkYXRhRmllbGQuVmFsdWUpIHtcblx0XHRjb25zdCBwcm9wZXJ0eSA9IGRhdGFGaWVsZC5WYWx1ZTtcblx0XHRyZWxhdGVkUHJvcGVydGllcyA9IGNvbGxlY3RSZWxhdGVkUHJvcGVydGllcyhcblx0XHRcdHByb3BlcnR5LnBhdGgsXG5cdFx0XHRwcm9wZXJ0eS4kdGFyZ2V0LFxuXHRcdFx0Y29udmVydGVyQ29udGV4dCxcblx0XHRcdGZhbHNlLFxuXHRcdFx0dGFibGVUeXBlLFxuXHRcdFx0cmVsYXRlZFByb3BlcnRpZXNcblx0XHQpO1xuXHRcdGNvbnN0IG5hdmlnYXRpb25QYXRoUHJlZml4ID0gX2dldE5hdmlnYXRpb25QYXRoUHJlZml4KHByb3BlcnR5LnBhdGgpO1xuXHRcdHJlbGF0ZWRQcm9wZXJ0aWVzID0gX2NvbGxlY3RBZGRpdGlvbmFsUHJvcGVydGllc0ZvckFuYWx5dGljYWxUYWJsZShkYXRhRmllbGQsIG5hdmlnYXRpb25QYXRoUHJlZml4LCB0YWJsZVR5cGUsIHJlbGF0ZWRQcm9wZXJ0aWVzKTtcblx0fSBlbHNlIGlmIChkYXRhRmllbGQuJFR5cGUgPT09IFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZEZvckFubm90YXRpb24pIHtcblx0XHRzd2l0Y2ggKGRhdGFGaWVsZC5UYXJnZXQ/LiR0YXJnZXQ/LiRUeXBlKSB7XG5cdFx0XHRjYXNlIFVJQW5ub3RhdGlvblR5cGVzLkZpZWxkR3JvdXBUeXBlOlxuXHRcdFx0XHRkYXRhRmllbGQuVGFyZ2V0LiR0YXJnZXQuRGF0YT8uZm9yRWFjaCgoaW5uZXJEYXRhRmllbGQ6IERhdGFGaWVsZEFic3RyYWN0VHlwZXMpID0+IHtcblx0XHRcdFx0XHRyZWxhdGVkUHJvcGVydGllcyA9IGNvbGxlY3RSZWxhdGVkUHJvcGVydGllc1JlY3Vyc2l2ZWx5KGlubmVyRGF0YUZpZWxkLCBjb252ZXJ0ZXJDb250ZXh0LCB0YWJsZVR5cGUsIHJlbGF0ZWRQcm9wZXJ0aWVzKTtcblx0XHRcdFx0fSk7XG5cdFx0XHRcdGJyZWFrO1xuXG5cdFx0XHRjYXNlIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFQb2ludFR5cGU6XG5cdFx0XHRcdHJlbGF0ZWRQcm9wZXJ0aWVzID0gY29sbGVjdFJlbGF0ZWRQcm9wZXJ0aWVzKFxuXHRcdFx0XHRcdGRhdGFGaWVsZC5UYXJnZXQuJHRhcmdldC5WYWx1ZS5wYXRoLFxuXHRcdFx0XHRcdGRhdGFGaWVsZCxcblx0XHRcdFx0XHRjb252ZXJ0ZXJDb250ZXh0LFxuXHRcdFx0XHRcdGZhbHNlLFxuXHRcdFx0XHRcdHRhYmxlVHlwZSxcblx0XHRcdFx0XHRyZWxhdGVkUHJvcGVydGllc1xuXHRcdFx0XHQpO1xuXHRcdFx0XHRicmVhaztcblxuXHRcdFx0Y2FzZSBcImNvbS5zYXAudm9jYWJ1bGFyaWVzLkNvbW11bmljYXRpb24udjEuQ29udGFjdFR5cGVcIjpcblx0XHRcdFx0cmVsYXRlZFByb3BlcnRpZXMgPSBjb2xsZWN0UmVsYXRlZFByb3BlcnRpZXMoXG5cdFx0XHRcdFx0ZGF0YUZpZWxkLlRhcmdldC52YWx1ZSxcblx0XHRcdFx0XHRkYXRhRmllbGQsXG5cdFx0XHRcdFx0Y29udmVydGVyQ29udGV4dCxcblx0XHRcdFx0XHRmYWxzZSxcblx0XHRcdFx0XHR0YWJsZVR5cGUsXG5cdFx0XHRcdFx0cmVsYXRlZFByb3BlcnRpZXNcblx0XHRcdFx0KTtcblx0XHRcdFx0YnJlYWs7XG5cdFx0fVxuXHR9XG5cblx0cmV0dXJuIHJlbGF0ZWRQcm9wZXJ0aWVzO1xufVxuXG5leHBvcnQgY29uc3QgZ2V0RGF0YUZpZWxkRGF0YVR5cGUgPSBmdW5jdGlvbihvRGF0YUZpZWxkOiBEYXRhRmllbGRBYnN0cmFjdFR5cGVzIHwgUHJvcGVydHkpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuXHRsZXQgc0RhdGFUeXBlOiBzdHJpbmcgfCB1bmRlZmluZWQgPSAob0RhdGFGaWVsZCBhcyBEYXRhRmllbGRBYnN0cmFjdFR5cGVzKS4kVHlwZTtcblx0c3dpdGNoIChzRGF0YVR5cGUpIHtcblx0XHRjYXNlIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZEZvckFjdGlvbjpcblx0XHRjYXNlIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZEZvckludGVudEJhc2VkTmF2aWdhdGlvbjpcblx0XHRcdHNEYXRhVHlwZSA9IHVuZGVmaW5lZDtcblx0XHRcdGJyZWFrO1xuXG5cdFx0Y2FzZSBVSUFubm90YXRpb25UeXBlcy5EYXRhRmllbGQ6XG5cdFx0Y2FzZSBVSUFubm90YXRpb25UeXBlcy5EYXRhRmllbGRXaXRoTmF2aWdhdGlvblBhdGg6XG5cdFx0Y2FzZSBVSUFubm90YXRpb25UeXBlcy5EYXRhRmllbGRXaXRoVXJsOlxuXHRcdFx0c0RhdGFUeXBlID0gKG9EYXRhRmllbGQgYXMgRGF0YUZpZWxkKT8uVmFsdWU/LiR0YXJnZXQ/LnR5cGU7XG5cdFx0XHRicmVhaztcblxuXHRcdGNhc2UgVUlBbm5vdGF0aW9uVHlwZXMuRGF0YUZpZWxkRm9yQW5ub3RhdGlvbjpcblx0XHRkZWZhdWx0OlxuXHRcdFx0Y29uc3Qgc0RhdGFUeXBlRm9yRGF0YUZpZWxkRm9yQW5ub3RhdGlvbiA9IChvRGF0YUZpZWxkIGFzIERhdGFGaWVsZEZvckFubm90YXRpb24pLlRhcmdldD8uJHRhcmdldC4kVHlwZTtcblx0XHRcdGlmIChzRGF0YVR5cGVGb3JEYXRhRmllbGRGb3JBbm5vdGF0aW9uKSB7XG5cdFx0XHRcdGlmICgob0RhdGFGaWVsZCBhcyBEYXRhRmllbGRGb3JBbm5vdGF0aW9uKS5UYXJnZXQ/LiR0YXJnZXQuJFR5cGUgPT09IENvbW11bmljYXRpb25Bbm5vdGF0aW9uVHlwZXMuQ29udGFjdFR5cGUpIHtcblx0XHRcdFx0XHRzRGF0YVR5cGUgPSAoKChvRGF0YUZpZWxkIGFzIERhdGFGaWVsZEZvckFubm90YXRpb24pLlRhcmdldD8uJHRhcmdldCBhcyBDb250YWN0KT8uZm4gYXMgYW55KS4kdGFyZ2V0Py50eXBlO1xuXHRcdFx0XHR9IGVsc2UgaWYgKChvRGF0YUZpZWxkIGFzIERhdGFGaWVsZEZvckFubm90YXRpb24pLlRhcmdldD8uJHRhcmdldC4kVHlwZSA9PT0gVUlBbm5vdGF0aW9uVHlwZXMuRGF0YVBvaW50VHlwZSkge1xuXHRcdFx0XHRcdHNEYXRhVHlwZSA9XG5cdFx0XHRcdFx0XHQoKG9EYXRhRmllbGQgYXMgRGF0YUZpZWxkRm9yQW5ub3RhdGlvbikuVGFyZ2V0Py4kdGFyZ2V0IGFzIERhdGFQb2ludCk/LlZhbHVlPy4kUGF0aD8uJFR5cGUgfHxcblx0XHRcdFx0XHRcdCgob0RhdGFGaWVsZCBhcyBEYXRhRmllbGRGb3JBbm5vdGF0aW9uKS5UYXJnZXQ/LiR0YXJnZXQgYXMgRGF0YVBvaW50KT8uVmFsdWU/LiR0YXJnZXQudHlwZTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHQvLyBlLmcuIEZpZWxkR3JvdXAgb3IgQ2hhcnRcblx0XHRcdFx0XHRzRGF0YVR5cGUgPSB1bmRlZmluZWQ7XG5cdFx0XHRcdH1cblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHNEYXRhVHlwZSA9IHVuZGVmaW5lZDtcblx0XHRcdH1cblx0XHRcdGJyZWFrO1xuXHR9XG5cblx0cmV0dXJuIHNEYXRhVHlwZTtcbn07XG4iXX0=
|
|
@@ -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/templating/UIFormatters","sap/fe/core/templating/PropertyHelper"],function(U,P){"use strict";var _={};var i=P.isProperty;var g=P.getAssociatedUnitProperty;var a=P.getAssociatedCurrencyProperty;var b=U.getDisplayMode;function c(n){return n.hasOwnProperty("Action");}_.isDataFieldForActionAbstract=c;function d(n){return n.hasOwnProperty("Value");}_.isDataFieldTypes=d;function e(n){var o,p,q,r,s,t,u;return((o=n.annotations)===null||o===void 0?void 0:(p=o.UI)===null||p===void 0?void 0:(q=p.Hidden)===null||q===void 0?void 0:q.valueOf())===true||d(n)&&((r=n.Value)===null||r===void 0?void 0:(s=r.$target)===null||s===void 0?void 0:(t=s.annotations)===null||t===void 0?void 0:(u=t.UI)===null||u===void 0?void 0:u.Hidden)===true;}_.isDataFieldAlwaysHidden=e;function f(n,o){if(typeof o==="object"){var p;if(d(o)&&(p=o.Value)!==null&&p!==void 0&&p.$target){var q,r,s;var t=(q=o.Value)===null||q===void 0?void 0:q.$target;if((t===null||t===void 0?void 0:(r=t.annotations)===null||r===void 0?void 0:(s=r.Common)===null||s===void 0?void 0:s.SemanticObject)!==undefined){return n.getEntitySetBasedAnnotationPath(t===null||t===void 0?void 0:t.fullyQualifiedName);}}else if(i(o)){var u,v;if((o===null||o===void 0?void 0:(u=o.annotations)===null||u===void 0?void 0:(v=u.Common)===null||v===void 0?void 0:v.SemanticObject)!==undefined){return n.getEntitySetBasedAnnotationPath(o===null||o===void 0?void 0:o.fullyQualifiedName);}}}return undefined;}_.getSemanticObjectPath=f;function h(p){return p.indexOf("/")>-1?p.substring(0,p.lastIndexOf("/")+1):"";}function j(t,n,o,r){if(o==="AnalyticalTable"){var p,q,s;var u=(p=t.annotations)===null||p===void 0?void 0:(q=p.UI)===null||q===void 0?void 0:q.Hidden;if(u!==null&&u!==void 0&&u.path&&((s=u.$target)===null||s===void 0?void 0:s._type)==="Property"){var v=n+u.path;r.additionalProperties[v]=u.$target;}}return r;}function k(p,n,o,q,t){var r=arguments.length>5&&arguments[5]!==undefined?arguments[5]:{properties:{},additionalProperties:{}};function s($,a1){if(!r.properties.hasOwnProperty($)){r.properties[$]=a1;}return Object.keys(r.properties).indexOf($);}function u($){r.exportSettingsTemplate=r.exportSettingsTemplate?"".concat(r.exportSettingsTemplate).concat($):"".concat($);}if(p&&n){var v,w;var x=h(p);var y=(v=n.annotations)===null||v===void 0?void 0:(w=v.Common)===null||w===void 0?void 0:w.Text;var z;var A;var B;if(r.exportSettingsTemplate){u("\n");r.exportSettingsWrapping=true;}if(y!==null&&y!==void 0&&y.path&&y!==null&&y!==void 0&&y.$target){var C=o.getDataModelObjectPath();var D=x+y.path;var E=b(n,C);var F;switch(E){case"Value":z=s(p,n);u("{".concat(z,"}"));r.visualSettingsToBeExcluded=D;break;case"Description":s(p,n);F=s(D,y.$target);u("{".concat(F,"}"));r.visualSettingsToBeExcluded=p;break;case"ValueDescription":z=s(p,n);F=s(D,y.$target);u("{".concat(z,"} ({").concat(F,"})"));break;case"DescriptionValue":z=s(p,n);F=s(D,y.$target);u("{".concat(F,"} ({").concat(z,"})"));break;}}else{var G,H,I,J,K,L,M,N,O,Q,R,S,T;var V=a(n)||g(n);var W=(n===null||n===void 0?void 0:(G=n.annotations)===null||G===void 0?void 0:(H=G.Measures)===null||H===void 0?void 0:H.ISOCurrency)||(n===null||n===void 0?void 0:(I=n.annotations)===null||I===void 0?void 0:(J=I.Measures)===null||J===void 0?void 0:J.Unit);if(V&&W!==null&&W!==void 0&&W.$target){z=s(p,n);B=s(V.name,W.$target);u("{".concat(z,"} {").concat(B,"}"));}else if((K=n.Target)!==null&&K!==void 0&&(L=K.$target)!==null&&L!==void 0&&L.Visualization){var X=n.Target.$target.Value.$target;z=s(p,X);s(n.Target.value,n.Target.$target);A=(n.Target.$target.TargetValue||n.Target.$target.MaximumValue).toString();u("{".concat(z,"}/").concat(A));}else if(((M=n.annotations)===null||M===void 0?void 0:(N=M.UI)===null||N===void 0?void 0:(O=N.DataFieldDefault)===null||O===void 0?void 0:(Q=O.Target)===null||Q===void 0?void 0:(R=Q.$target)===null||R===void 0?void 0:R.$Type)==="com.sap.vocabularies.UI.v1.DataPointType"){var Y=n.annotations.UI.DataFieldDefault;z=s(p,n);s(Y.Target.value,n);A=(Y.Target.$target.TargetValue||Y.Target.$target.TargetValue.MaximumValue).toString();u("{".concat(z,"}/").concat(A));}else if(((S=n.Target)===null||S===void 0?void 0:(T=S.$target)===null||T===void 0?void 0:T.$Type)==="com.sap.vocabularies.Communication.v1.ContactType"){var Z;r.exportSettingsContactProperty=n.Target.value.substring(0,n.Target.value.indexOf("/")+1)+((Z=n.Target.$target.fn)===null||Z===void 0?void 0:Z.path);z=s(p,n.Target.$target.fn.$target);u("{".concat(z,"}"));}else if(!q){z=s(p,n);u("{".concat(z,"}"));}}r=j(n,x,t,r);if(Object.keys(r.additionalProperties).length>0&&Object.keys(r.properties).length===0){z=s(p,n);u("{".concat(z,"}"));}}return r;}_.collectRelatedProperties=k;function l(n,o,t){var p,q,r;var s=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{properties:{},additionalProperties:{}};if(n.$Type==="com.sap.vocabularies.UI.v1.DataField"&&n.Value){var u=n.Value;s=k(u.path,u.$target,o,false,t,s);var v=h(u.path);s=j(n,v,t,s);}else if(n.$Type==="com.sap.vocabularies.UI.v1.DataFieldForAnnotation"){switch((p=n.Target)===null||p===void 0?void 0:(q=p.$target)===null||q===void 0?void 0:q.$Type){case"com.sap.vocabularies.UI.v1.FieldGroupType":(r=n.Target.$target.Data)===null||r===void 0?void 0:r.forEach(function(w){s=l(w,o,t,s);});break;case"com.sap.vocabularies.UI.v1.DataPointType":s=k(n.Target.$target.Value.path,n,o,false,t,s);break;case"com.sap.vocabularies.Communication.v1.ContactType":s=k(n.Target.value,n,o,false,t,s);break;}}return s;}_.collectRelatedPropertiesRecursively=l;var m=function(D){var n,o,p;var s=D.$Type;switch(s){case"com.sap.vocabularies.UI.v1.DataFieldForAction":case"com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation":s=undefined;break;case"com.sap.vocabularies.UI.v1.DataField":case"com.sap.vocabularies.UI.v1.DataFieldWithNavigationPath":case"com.sap.vocabularies.UI.v1.DataFieldWithUrl":s=D===null||D===void 0?void 0:(n=D.Value)===null||n===void 0?void 0:(o=n.$target)===null||o===void 0?void 0:o.type;break;case"com.sap.vocabularies.UI.v1.DataFieldForAnnotation":default:var q=(p=D.Target)===null||p===void 0?void 0:p.$target.$Type;if(q){var r,t;if(((r=D.Target)===null||r===void 0?void 0:r.$target.$Type)==="com.sap.vocabularies.Communication.v1.ContactType"){var u,v,w;s=(u=((v=D.Target)===null||v===void 0?void 0:(w=v.$target)===null||w===void 0?void 0:w.fn).$target)===null||u===void 0?void 0:u.type;}else if(((t=D.Target)===null||t===void 0?void 0:t.$target.$Type)==="com.sap.vocabularies.UI.v1.DataPointType"){var x,y,z,A,B,C,E;s=((x=D.Target)===null||x===void 0?void 0:(y=x.$target)===null||y===void 0?void 0:(z=y.Value)===null||z===void 0?void 0:(A=z.$Path)===null||A===void 0?void 0:A.$Type)||((B=D.Target)===null||B===void 0?void 0:(C=B.$target)===null||C===void 0?void 0:(E=C.Value)===null||E===void 0?void 0:E.$target.type);}else{s=undefined;}}else{s=undefined;}break;}return s;};_.getDataFieldDataType=m;return _;},false);
|
|
5
|
+
sap.ui.define(["sap/fe/core/templating/UIFormatters","sap/fe/core/templating/PropertyHelper"],function(U,P){"use strict";var _={};var i=P.isProperty;var g=P.getAssociatedUnitProperty;var a=P.getAssociatedCurrencyProperty;var b=U.getDisplayMode;function c(n){return n.hasOwnProperty("Action");}_.isDataFieldForActionAbstract=c;function d(n){return n.hasOwnProperty("Value");}_.isDataFieldTypes=d;function e(n){var o,p,q,r,s,t,u;return((o=n.annotations)===null||o===void 0?void 0:(p=o.UI)===null||p===void 0?void 0:(q=p.Hidden)===null||q===void 0?void 0:q.valueOf())===true||d(n)&&((r=n.Value)===null||r===void 0?void 0:(s=r.$target)===null||s===void 0?void 0:(t=s.annotations)===null||t===void 0?void 0:(u=t.UI)===null||u===void 0?void 0:u.Hidden)===true;}_.isDataFieldAlwaysHidden=e;function f(n,o){if(typeof o==="object"){var p;if(d(o)&&(p=o.Value)!==null&&p!==void 0&&p.$target){var q,r,s;var t=(q=o.Value)===null||q===void 0?void 0:q.$target;if((t===null||t===void 0?void 0:(r=t.annotations)===null||r===void 0?void 0:(s=r.Common)===null||s===void 0?void 0:s.SemanticObject)!==undefined){return n.getEntitySetBasedAnnotationPath(t===null||t===void 0?void 0:t.fullyQualifiedName);}}else if(i(o)){var u,v;if((o===null||o===void 0?void 0:(u=o.annotations)===null||u===void 0?void 0:(v=u.Common)===null||v===void 0?void 0:v.SemanticObject)!==undefined){return n.getEntitySetBasedAnnotationPath(o===null||o===void 0?void 0:o.fullyQualifiedName);}}}return undefined;}_.getSemanticObjectPath=f;function h(p){return p.indexOf("/")>-1?p.substring(0,p.lastIndexOf("/")+1):"";}function j(t,n,o,r){if(o==="AnalyticalTable"){var p,q,s;var u=(p=t.annotations)===null||p===void 0?void 0:(q=p.UI)===null||q===void 0?void 0:q.Hidden;if(u!==null&&u!==void 0&&u.path&&((s=u.$target)===null||s===void 0?void 0:s._type)==="Property"){var v=n+u.path;r.additionalProperties[v]=u.$target;}}return r;}function k(p,n,o,q,t){var r=arguments.length>5&&arguments[5]!==undefined?arguments[5]:{properties:{},additionalProperties:{}};function s($,a1){if(!r.properties.hasOwnProperty($)){r.properties[$]=a1;}return Object.keys(r.properties).indexOf($);}function u($){r.exportSettingsTemplate=r.exportSettingsTemplate?"".concat(r.exportSettingsTemplate).concat($):"".concat($);}if(p&&n){var v,w;var x=h(p);var y=(v=n.annotations)===null||v===void 0?void 0:(w=v.Common)===null||w===void 0?void 0:w.Text;var z;var A;var B;if(r.exportSettingsTemplate){u("\n");r.exportSettingsWrapping=true;}if(y!==null&&y!==void 0&&y.path&&y!==null&&y!==void 0&&y.$target){var C=o.getDataModelObjectPath();var D=x+y.path;var E=b(n,C);var F;switch(E){case"Value":z=s(p,n);u("{".concat(z,"}"));r.visualSettingsToBeExcluded=D;break;case"Description":s(p,n);F=s(D,y.$target);u("{".concat(F,"}"));r.visualSettingsToBeExcluded=p;break;case"ValueDescription":z=s(p,n);F=s(D,y.$target);u("{".concat(z,"} ({").concat(F,"})"));break;case"DescriptionValue":z=s(p,n);F=s(D,y.$target);u("{".concat(F,"} ({").concat(z,"})"));break;}}else{var G,H,I,J,K,L,M,N,O,Q,R,S,T;var V=a(n)||g(n);var W=(n===null||n===void 0?void 0:(G=n.annotations)===null||G===void 0?void 0:(H=G.Measures)===null||H===void 0?void 0:H.ISOCurrency)||(n===null||n===void 0?void 0:(I=n.annotations)===null||I===void 0?void 0:(J=I.Measures)===null||J===void 0?void 0:J.Unit);if(V&&W!==null&&W!==void 0&&W.$target){z=s(p,n);B=s(V.name,W.$target);u("{".concat(z,"} {").concat(B,"}"));}else if((K=n.Target)!==null&&K!==void 0&&(L=K.$target)!==null&&L!==void 0&&L.Visualization){var X=n.Target.$target.Value.$target;z=s(p,X);s(n.Target.value,n.Target.$target);A=(n.Target.$target.TargetValue||n.Target.$target.MaximumValue).toString();u("{".concat(z,"}/").concat(A));}else if(((M=n.annotations)===null||M===void 0?void 0:(N=M.UI)===null||N===void 0?void 0:(O=N.DataFieldDefault)===null||O===void 0?void 0:(Q=O.Target)===null||Q===void 0?void 0:(R=Q.$target)===null||R===void 0?void 0:R.$Type)==="com.sap.vocabularies.UI.v1.DataPointType"){var Y=n.annotations.UI.DataFieldDefault;z=s(p,n);s(Y.Target.value,n);A=(Y.Target.$target.TargetValue||Y.Target.$target.TargetValue.MaximumValue).toString();u("{".concat(z,"}/").concat(A));}else if(((S=n.Target)===null||S===void 0?void 0:(T=S.$target)===null||T===void 0?void 0:T.$Type)==="com.sap.vocabularies.Communication.v1.ContactType"){var Z;r.exportSettingsContactProperty=n.Target.value.substring(0,n.Target.value.indexOf("/")+1)+((Z=n.Target.$target.fn)===null||Z===void 0?void 0:Z.path);z=s(p,n.Target.$target.fn.$target);u("{".concat(z,"}"));}else if(!q){z=s(p,n);u("{".concat(z,"}"));}}r=j(n,x,t,r);if(Object.keys(r.additionalProperties).length>0&&Object.keys(r.properties).length===0){z=s(p,n);u("{".concat(z,"}"));}}return r;}_.collectRelatedProperties=k;function l(n,o,t){var p,q,r;var s=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{properties:{},additionalProperties:{}};if((n.$Type==="com.sap.vocabularies.UI.v1.DataField"||n.$Type==="com.sap.vocabularies.UI.v1.DataFieldWithUrl")&&n.Value){var u=n.Value;s=k(u.path,u.$target,o,false,t,s);var v=h(u.path);s=j(n,v,t,s);}else if(n.$Type==="com.sap.vocabularies.UI.v1.DataFieldForAnnotation"){switch((p=n.Target)===null||p===void 0?void 0:(q=p.$target)===null||q===void 0?void 0:q.$Type){case"com.sap.vocabularies.UI.v1.FieldGroupType":(r=n.Target.$target.Data)===null||r===void 0?void 0:r.forEach(function(w){s=l(w,o,t,s);});break;case"com.sap.vocabularies.UI.v1.DataPointType":s=k(n.Target.$target.Value.path,n,o,false,t,s);break;case"com.sap.vocabularies.Communication.v1.ContactType":s=k(n.Target.value,n,o,false,t,s);break;}}return s;}_.collectRelatedPropertiesRecursively=l;var m=function(D){var n,o,p;var s=D.$Type;switch(s){case"com.sap.vocabularies.UI.v1.DataFieldForAction":case"com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation":s=undefined;break;case"com.sap.vocabularies.UI.v1.DataField":case"com.sap.vocabularies.UI.v1.DataFieldWithNavigationPath":case"com.sap.vocabularies.UI.v1.DataFieldWithUrl":s=D===null||D===void 0?void 0:(n=D.Value)===null||n===void 0?void 0:(o=n.$target)===null||o===void 0?void 0:o.type;break;case"com.sap.vocabularies.UI.v1.DataFieldForAnnotation":default:var q=(p=D.Target)===null||p===void 0?void 0:p.$target.$Type;if(q){var r,t;if(((r=D.Target)===null||r===void 0?void 0:r.$target.$Type)==="com.sap.vocabularies.Communication.v1.ContactType"){var u,v,w;s=(u=((v=D.Target)===null||v===void 0?void 0:(w=v.$target)===null||w===void 0?void 0:w.fn).$target)===null||u===void 0?void 0:u.type;}else if(((t=D.Target)===null||t===void 0?void 0:t.$target.$Type)==="com.sap.vocabularies.UI.v1.DataPointType"){var x,y,z,A,B,C,E;s=((x=D.Target)===null||x===void 0?void 0:(y=x.$target)===null||y===void 0?void 0:(z=y.Value)===null||z===void 0?void 0:(A=z.$Path)===null||A===void 0?void 0:A.$Type)||((B=D.Target)===null||B===void 0?void 0:(C=B.$target)===null||C===void 0?void 0:(E=C.Value)===null||E===void 0?void 0:E.$target.type);}else{s=undefined;}}else{s=undefined;}break;}return s;};_.getDataFieldDataType=m;return _;},false);
|
|
@@ -271,7 +271,7 @@ export function collectRelatedPropertiesRecursively(
|
|
|
271
271
|
tableType: TableType,
|
|
272
272
|
relatedProperties: ComplexPropertyInfo = { properties: {}, additionalProperties: {} }
|
|
273
273
|
): ComplexPropertyInfo {
|
|
274
|
-
if (dataField.$Type === UIAnnotationTypes.DataField && dataField.Value) {
|
|
274
|
+
if ((dataField.$Type === UIAnnotationTypes.DataField || dataField.$Type === UIAnnotationTypes.DataFieldWithUrl) && dataField.Value) {
|
|
275
275
|
const property = dataField.Value;
|
|
276
276
|
relatedProperties = collectRelatedProperties(
|
|
277
277
|
property.path,
|