@sap/open.fe 1.97.0 → 1.98.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (873) hide show
  1. package/package.json +1 -1
  2. package/packages/sap.fe.common/src/sap/fe/common/.library +1 -1
  3. package/packages/sap.fe.common/src/sap/fe/common/.theming +1 -1
  4. package/packages/sap.fe.common/src/sap/fe/common/MessageButton-dbg.js +275 -62
  5. package/packages/sap.fe.common/src/sap/fe/common/MessageButton.js +1 -1
  6. package/packages/sap.fe.common/src/sap/fe/common/MessagePopover-dbg.js +1 -0
  7. package/packages/sap.fe.common/src/sap/fe/common/MessagePopover.js +1 -1
  8. package/packages/sap.fe.common/src/sap/fe/common/library-dbg.js +1 -1
  9. package/packages/sap.fe.common/src/sap/fe/common/library-h2-preload.js +3 -3
  10. package/packages/sap.fe.common/src/sap/fe/common/library-preload.js +51 -46
  11. package/packages/sap.fe.common/src/sap/fe/common/library-preload.js.map +3 -3
  12. package/packages/sap.fe.common/src/sap/fe/common/library.js +1 -1
  13. package/packages/sap.fe.common/src/sap/fe/common/manifest.json +3 -3
  14. package/packages/sap.fe.common/src/sap/fe/common/resources.json +16 -8
  15. package/packages/sap.fe.common/test/sap/fe/common/designtime/api.json +1 -1
  16. package/packages/sap.fe.common/test/sap/fe/common/designtime/apiref/api.json +1 -1
  17. package/packages/sap.fe.common/test/sap/fe/common/designtime/codeassistance/Library.xmlmeta.json +1 -1
  18. package/packages/sap.fe.common/test/sap/fe/common/relnotes/changes-1.98.json +18 -0
  19. package/packages/sap.fe.core/src/sap/fe/core/.library +1 -1
  20. package/packages/sap.fe.core/src/sap/fe/core/.theming +1 -1
  21. package/packages/sap.fe.core/src/sap/fe/core/AppComponent-dbg.js +3 -1
  22. package/packages/sap.fe.core/src/sap/fe/core/AppComponent.js +1 -1
  23. package/packages/sap.fe.core/src/sap/fe/core/AppStateHandler-dbg.js +1 -1
  24. package/packages/sap.fe.core/src/sap/fe/core/AppStateHandler.js +1 -1
  25. package/packages/sap.fe.core/src/sap/fe/core/CommonUtils-dbg.js +35 -15
  26. package/packages/sap.fe.core/src/sap/fe/core/CommonUtils.js +1 -1
  27. package/packages/sap.fe.core/src/sap/fe/core/ExtensionAPI-dbg.js +13 -5
  28. package/packages/sap.fe.core/src/sap/fe/core/ExtensionAPI.js +1 -1
  29. package/packages/sap.fe.core/src/sap/fe/core/PageController-dbg.js +8 -2
  30. package/packages/sap.fe.core/src/sap/fe/core/PageController.js +1 -1
  31. package/packages/sap.fe.core/src/sap/fe/core/RouterProxy-dbg.js +26 -10
  32. package/packages/sap.fe.core/src/sap/fe/core/RouterProxy.js +1 -1
  33. package/packages/sap.fe.core/src/sap/fe/core/TemplateComponent-dbg.js +13 -4
  34. package/packages/sap.fe.core/src/sap/fe/core/TemplateComponent.js +1 -1
  35. package/packages/sap.fe.core/src/sap/fe/core/TransactionHelper-dbg.js +124 -39
  36. package/packages/sap.fe.core/src/sap/fe/core/TransactionHelper.js +1 -1
  37. package/packages/sap.fe.core/src/sap/fe/core/actions/draft-dbg.js +49 -22
  38. package/packages/sap.fe.core/src/sap/fe/core/actions/draft.js +1 -1
  39. package/packages/sap.fe.core/src/sap/fe/core/actions/messageHandling-dbg.js +11 -8
  40. package/packages/sap.fe.core/src/sap/fe/core/actions/messageHandling.js +1 -1
  41. package/packages/sap.fe.core/src/sap/fe/core/actions/operations-dbg.js +12 -8
  42. package/packages/sap.fe.core/src/sap/fe/core/actions/operations.js +1 -1
  43. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/EditFlow-dbg.js +196 -70
  44. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/EditFlow.js +1 -1
  45. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalEditFlow-dbg.js +9 -2
  46. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalEditFlow.js +1 -1
  47. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation-dbg.js +19 -17
  48. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +1 -1
  49. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalRouting-dbg.js +39 -8
  50. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/InternalRouting.js +1 -1
  51. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/KPIManagement-dbg.js +114 -25
  52. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/KPIManagement.js +1 -1
  53. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/KPIManagement.ts +112 -24
  54. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MassEdit-dbg.js +80 -0
  55. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MassEdit.js +6 -0
  56. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MessageHandler-dbg.js +5 -1
  57. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/MessageHandler.js +1 -1
  58. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/PageReady-dbg.js +1 -1
  59. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/PageReady.js +1 -1
  60. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Paginator-dbg.js +34 -7
  61. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Paginator.js +1 -1
  62. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Placeholder-dbg.js +5 -2
  63. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Placeholder.js +1 -1
  64. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Routing-dbg.js +16 -1
  65. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Routing.js +1 -1
  66. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Share-dbg.js +19 -6
  67. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/Share.js +1 -1
  68. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/SideEffects-dbg.js +7 -7
  69. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/SideEffects.js +1 -1
  70. package/packages/sap.fe.core/src/sap/fe/core/controllerextensions/SideEffects.ts +6 -5
  71. package/packages/sap.fe.core/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +2 -1
  72. package/packages/sap.fe.core/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler-dbg.js +6 -3
  73. package/packages/sap.fe.core/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +1 -1
  74. package/packages/sap.fe.core/src/sap/fe/core/controls/FieldWrapper-dbg.js +9 -3
  75. package/packages/sap.fe.core/src/sap/fe/core/controls/FieldWrapper.js +1 -1
  76. package/packages/sap.fe.core/src/sap/fe/core/controls/FormElementWrapper-dbg.js +0 -5
  77. package/packages/sap.fe.core/src/sap/fe/core/controls/FormElementWrapper.js +1 -1
  78. package/packages/sap.fe.core/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +1 -1
  79. package/packages/{sap.fe.macros/src/sap/fe/macros/massedit → sap.fe.core/src/sap/fe/core/controls/massEdit}/MassEditDialog.fragment.xml +6 -6
  80. package/packages/{sap.fe.macros/src/sap/fe/macros/massedit/MassEditRuntime-dbg.js → sap.fe.core/src/sap/fe/core/controls/massEdit/MassEditHandlers-dbg.js} +2 -2
  81. package/packages/{sap.fe.macros/src/sap/fe/macros/massedit/MassEditRuntime.js → sap.fe.core/src/sap/fe/core/controls/massEdit/MassEditHandlers.js} +0 -0
  82. package/packages/sap.fe.core/src/sap/fe/core/converters/ConverterContext-dbg.js +13 -1
  83. package/packages/sap.fe.core/src/sap/fe/core/converters/ConverterContext.js +1 -1
  84. package/packages/sap.fe.core/src/sap/fe/core/converters/ConverterContext.ts +10 -0
  85. package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestSettings-dbg.js +1 -1
  86. package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestSettings.ts +3 -0
  87. package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestWrapper-dbg.js +18 -7
  88. package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestWrapper.js +1 -1
  89. package/packages/sap.fe.core/src/sap/fe/core/converters/ManifestWrapper.ts +15 -6
  90. package/packages/sap.fe.core/src/sap/fe/core/converters/MetaModelConverter-dbg.js +62 -4
  91. package/packages/sap.fe.core/src/sap/fe/core/converters/MetaModelConverter.js +1 -1
  92. package/packages/sap.fe.core/src/sap/fe/core/converters/MetaModelConverter.ts +60 -4
  93. package/packages/sap.fe.core/src/sap/fe/core/converters/annotations/DataField-dbg.js +3 -3
  94. package/packages/sap.fe.core/src/sap/fe/core/converters/annotations/DataField.js +1 -1
  95. package/packages/sap.fe.core/src/sap/fe/core/converters/annotations/DataField.ts +1 -1
  96. package/packages/sap.fe.core/src/sap/fe/core/converters/common/AnnotationConverter-dbg.js +18 -10
  97. package/packages/sap.fe.core/src/sap/fe/core/converters/common/AnnotationConverter.js +1 -1
  98. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Action-dbg.js +10 -1
  99. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Action.js +1 -1
  100. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Action.ts +6 -0
  101. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Form-dbg.js +17 -9
  102. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Form.js +1 -1
  103. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Form.ts +9 -3
  104. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/KPI-dbg.js +69 -4
  105. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/KPI.js +1 -1
  106. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/KPI.ts +72 -0
  107. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Table-dbg.js +172 -284
  108. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Table.js +1 -1
  109. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/Table.ts +228 -348
  110. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/table/StandardActions-dbg.js +468 -0
  111. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +5 -0
  112. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +609 -0
  113. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/FilterBar-dbg.js +30 -13
  114. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +1 -1
  115. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +31 -12
  116. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/VisualFilters-dbg.js +2 -2
  117. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +1 -1
  118. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +1 -1
  119. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ObjectPage/SubSection-dbg.js +14 -6
  120. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +1 -1
  121. package/packages/sap.fe.core/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +26 -5
  122. package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/Aggregation-dbg.js +8 -1
  123. package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/Aggregation.js +1 -1
  124. package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/Aggregation.ts +9 -1
  125. package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/IssueManager-dbg.js +4 -1
  126. package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/IssueManager.js +1 -1
  127. package/packages/sap.fe.core/src/sap/fe/core/converters/helpers/IssueManager.ts +3 -0
  128. package/packages/sap.fe.core/src/sap/fe/core/designtime/AppComponent-dbg.designtime.js +8 -0
  129. package/packages/sap.fe.core/src/sap/fe/core/designtime/AppComponent.designtime.js +1 -1
  130. package/packages/sap.fe.core/src/sap/fe/core/designtime/library-preload.designtime.js +1 -1
  131. package/packages/sap.fe.core/src/sap/fe/core/designtime/library-preload.designtime.js.map +3 -3
  132. package/packages/sap.fe.core/src/sap/fe/core/formatters/ValueFormatter-dbg.js +30 -5
  133. package/packages/sap.fe.core/src/sap/fe/core/formatters/ValueFormatter.js +1 -1
  134. package/packages/sap.fe.core/src/sap/fe/core/formatters/ValueFormatter.ts +25 -3
  135. package/packages/sap.fe.core/src/sap/fe/core/fpm/manifest.json +2 -2
  136. package/packages/sap.fe.core/src/sap/fe/core/helpers/AppStartupHelper-dbg.js +359 -0
  137. package/packages/sap.fe.core/src/sap/fe/core/helpers/AppStartupHelper.js +5 -0
  138. package/packages/sap.fe.core/src/sap/fe/core/helpers/AppStartupHelper.ts +388 -0
  139. package/packages/sap.fe.core/src/sap/fe/core/helpers/BindingExpression-dbg.js +199 -111
  140. package/packages/sap.fe.core/src/sap/fe/core/helpers/BindingExpression.js +1 -1
  141. package/packages/sap.fe.core/src/sap/fe/core/helpers/BindingExpression.ts +193 -102
  142. package/packages/sap.fe.core/src/sap/fe/core/helpers/KeepAliveHelper-dbg.js +2 -2
  143. package/packages/sap.fe.core/src/sap/fe/core/helpers/KeepAliveHelper.js +1 -1
  144. package/packages/sap.fe.core/src/sap/fe/core/helpers/KeepAliveHelper.ts +1 -1
  145. package/packages/sap.fe.core/src/sap/fe/core/helpers/MassEditHelper-dbg.js +679 -0
  146. package/packages/sap.fe.core/src/sap/fe/core/helpers/MassEditHelper.js +6 -0
  147. package/packages/sap.fe.core/src/sap/fe/core/library-dbg.js +27 -1
  148. package/packages/sap.fe.core/src/sap/fe/core/library-h2-preload.js +23 -14
  149. package/packages/sap.fe.core/src/sap/fe/core/library-h2-preload.js.map +2 -2
  150. package/packages/sap.fe.core/src/sap/fe/core/library-preload.js +477 -411
  151. package/packages/sap.fe.core/src/sap/fe/core/library-preload.js.map +4 -4
  152. package/packages/sap.fe.core/src/sap/fe/core/library-preload.support.js +47 -3
  153. package/packages/sap.fe.core/src/sap/fe/core/library-preload.support.js.map +3 -3
  154. package/packages/sap.fe.core/src/sap/fe/core/library.js +1 -1
  155. package/packages/sap.fe.core/src/sap/fe/core/library.support.js +9 -3
  156. package/packages/sap.fe.core/src/sap/fe/core/manifest.json +10 -10
  157. package/packages/sap.fe.core/src/sap/fe/core/manifestMerger/ChangePageConfiguration-dbg.js +62 -0
  158. package/packages/sap.fe.core/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +5 -0
  159. package/packages/sap.fe.core/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +68 -0
  160. package/packages/sap.fe.core/src/sap/fe/core/messagebundle.properties +40 -5
  161. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ar.properties +24 -2
  162. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_bg.properties +24 -2
  163. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ca.properties +24 -2
  164. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_cs.properties +25 -3
  165. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_cy.properties +24 -2
  166. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_da.properties +24 -2
  167. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_de.properties +24 -2
  168. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_el.properties +24 -2
  169. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en.properties +23 -1
  170. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_GB.properties +23 -1
  171. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_US_sappsd.properties +27 -1
  172. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_US_saprigi.properties +24 -2
  173. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_en_US_saptrc.properties +24 -2
  174. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_es.properties +24 -2
  175. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_es_MX.properties +24 -2
  176. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_et.properties +24 -2
  177. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_fi.properties +25 -3
  178. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_fr.properties +25 -3
  179. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_fr_CA.properties +24 -2
  180. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_hi.properties +24 -2
  181. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_hr.properties +24 -2
  182. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_hu.properties +25 -3
  183. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_id.properties +26 -4
  184. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_it.properties +24 -2
  185. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_iw.properties +24 -2
  186. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ja.properties +24 -2
  187. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_kk.properties +24 -2
  188. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ko.properties +24 -2
  189. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_lt.properties +24 -2
  190. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_lv.properties +24 -2
  191. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ms.properties +24 -2
  192. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_nl.properties +24 -2
  193. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_no.properties +24 -2
  194. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_pl.properties +24 -2
  195. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_pt.properties +25 -3
  196. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_pt_PT.properties +24 -2
  197. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ro.properties +24 -2
  198. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_ru.properties +24 -2
  199. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sh.properties +24 -2
  200. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sk.properties +24 -2
  201. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sl.properties +24 -2
  202. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_sv.properties +25 -3
  203. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_th.properties +24 -2
  204. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_tr.properties +24 -2
  205. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_uk.properties +24 -2
  206. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_vi.properties +24 -2
  207. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_zh_CN.properties +24 -2
  208. package/packages/sap.fe.core/src/sap/fe/core/messagebundle_zh_TW.properties +24 -2
  209. package/packages/sap.fe.core/src/sap/fe/core/resources.json +483 -235
  210. package/packages/sap.fe.core/src/sap/fe/core/services/AsyncComponentServiceFactory-dbg.js +1 -1
  211. package/packages/sap.fe.core/src/sap/fe/core/services/AsyncComponentServiceFactory.js +1 -1
  212. package/packages/sap.fe.core/src/sap/fe/core/services/EnvironmentServiceFactory-dbg.js +4 -3
  213. package/packages/sap.fe.core/src/sap/fe/core/services/EnvironmentServiceFactory.js +1 -1
  214. package/packages/sap.fe.core/src/sap/fe/core/services/EnvironmentServiceFactory.ts +3 -0
  215. package/packages/sap.fe.core/src/sap/fe/core/services/RoutingServiceFactory-dbg.js +93 -346
  216. package/packages/sap.fe.core/src/sap/fe/core/services/RoutingServiceFactory.js +1 -1
  217. package/packages/sap.fe.core/src/sap/fe/core/services/ShellServicesFactory-dbg.js +31 -2
  218. package/packages/sap.fe.core/src/sap/fe/core/services/ShellServicesFactory.js +1 -1
  219. package/packages/sap.fe.core/src/sap/fe/core/services/ShellServicesFactory.ts +30 -1
  220. package/packages/sap.fe.core/src/sap/fe/core/services/SideEffectsServiceFactory-dbg.js +8 -5
  221. package/packages/sap.fe.core/src/sap/fe/core/services/SideEffectsServiceFactory.js +1 -1
  222. package/packages/sap.fe.core/src/sap/fe/core/services/SideEffectsServiceFactory.ts +11 -6
  223. package/packages/sap.fe.core/src/sap/fe/core/services/TemplatedViewServiceFactory-dbg.js +12 -3
  224. package/packages/sap.fe.core/src/sap/fe/core/services/TemplatedViewServiceFactory.js +1 -1
  225. package/packages/sap.fe.core/src/sap/fe/core/support/InvalidAnnotationColumnKey.support.js +38 -0
  226. package/packages/sap.fe.core/src/sap/fe/core/support/InvalidAnnotationColumnKey.support.ts +18 -0
  227. package/packages/sap.fe.core/src/sap/fe/core/templating/DataModelPathHelper-dbg.js +10 -48
  228. package/packages/sap.fe.core/src/sap/fe/core/templating/DataModelPathHelper.js +1 -1
  229. package/packages/sap.fe.core/src/sap/fe/core/templating/DataModelPathHelper.ts +14 -46
  230. package/packages/sap.fe.core/src/sap/fe/core/templating/DisplayModeFormatter-dbg.js +114 -0
  231. package/packages/sap.fe.core/src/sap/fe/core/templating/DisplayModeFormatter.js +5 -0
  232. package/packages/sap.fe.core/src/sap/fe/core/templating/DisplayModeFormatter.ts +86 -0
  233. package/packages/sap.fe.core/src/sap/fe/core/templating/FilterHelper-dbg.js +10 -7
  234. package/packages/sap.fe.core/src/sap/fe/core/templating/FilterHelper.js +1 -1
  235. package/packages/sap.fe.core/src/sap/fe/core/templating/FilterHelper.ts +8 -6
  236. package/packages/sap.fe.core/src/sap/fe/core/templating/PropertyHelper-dbg.js +2 -2
  237. package/packages/sap.fe.core/src/sap/fe/core/templating/PropertyHelper.ts +1 -1
  238. package/packages/sap.fe.core/src/sap/fe/core/templating/UIFormatters-dbg.js +15 -110
  239. package/packages/sap.fe.core/src/sap/fe/core/templating/UIFormatters.js +1 -1
  240. package/packages/sap.fe.core/src/sap/fe/core/templating/UIFormatters.ts +6 -73
  241. package/packages/sap.fe.core/test/sap/fe/core/designtime/api.json +1 -1
  242. package/packages/sap.fe.core/test/sap/fe/core/designtime/apiref/api.json +1 -1
  243. package/packages/sap.fe.core/test/sap/fe/core/designtime/codeassistance/Library.jsmeta.json +1 -1
  244. package/packages/sap.fe.core/test/sap/fe/core/designtime/codeassistance/Library.jstemplates.json +1 -1
  245. package/packages/sap.fe.core/test/sap/fe/core/designtime/codeassistance/Library.xmlmeta.json +1 -1
  246. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/model/ControllerExtensionNavigationModel.js +5 -0
  247. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/model/CustomElementNavigationModel.js +105 -7
  248. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/model/MacroNavigationModel.js +176 -0
  249. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/FCL/FclNavigationButtons/myViewTest.controller.js +2 -2
  250. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/chart/chartDefault/ChartDefault.controller.js +2 -2
  251. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/chart/chartDefault/ChartDefault.view.xml +0 -1
  252. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/chart/chartQualifier/ChartQualifier.controller.js +2 -2
  253. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/chart/chartSelectionMode/ChartSelectionMode.controller.js +2 -2
  254. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldEdit/FieldEdit.controller.js +3 -2
  255. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldEvents/FieldEvents.controller.js +3 -2
  256. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldFormatOptions/FieldFormatOptions.controller.js +3 -2
  257. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/field/fieldNavProp/FieldNavProp.controller.js +3 -2
  258. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/Component.js +36 -0
  259. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/FilterBarAnnotationDefaults.controller.js +35 -0
  260. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/FilterBarAnnotationDefaults.view.xml +58 -0
  261. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/localService/RootEntity.json +102 -0
  262. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/localService/ValueHelpEntity.js +11 -0
  263. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/localService/service.cds +97 -0
  264. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarAnnotationDefaults/manifest.json +72 -0
  265. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/Component.js +36 -0
  266. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/CustomFilter.js +36 -0
  267. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/CustomRatingFilter.fragment.xml +8 -0
  268. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/CustomRatingFilterOperator.fragment.xml +17 -0
  269. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/CustomRatingRangeFilter.fragment.xml +8 -0
  270. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/FilterBarCustoms.controller.js +42 -0
  271. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/FilterBarCustoms.view.xml +70 -0
  272. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/localService/RootEntity.json +107 -0
  273. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/localService/ValueHelpEntity.js +11 -0
  274. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/localService/service.cds +152 -0
  275. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarCustoms/manifest.json +72 -0
  276. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/FilterBarDefault.controller.js +13 -6
  277. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/FilterBarDefault.view.xml +1 -1
  278. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/localService/ChildEntity.json +15 -674
  279. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/localService/MultiChildEntity.json +92 -0
  280. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/localService/RootEntity.json +10 -5
  281. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/localService/service.cds +72 -19
  282. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/Component.js +36 -0
  283. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/FilterBarSVandAnnotationDefaults.controller.js +35 -0
  284. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/FilterBarSVandAnnotationDefaults.view.xml +58 -0
  285. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/localService/RootEntity.json +102 -0
  286. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/localService/ValueHelpEntity.js +11 -0
  287. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/localService/service.cds +115 -0
  288. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarSVandAnnotationDefaults/manifest.json +72 -0
  289. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBarAnnotationDefaults.html +37 -0
  290. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBarCustoms.html +37 -0
  291. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBarSVandAnnotationDefaults.html +37 -0
  292. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/Component.js +35 -0
  293. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/DetailPage.controller.js +5 -0
  294. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/DetailPage.view.xml +15 -0
  295. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/EntryPage.controller.js +43 -0
  296. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/EntryPage.view.xml +79 -0
  297. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/localService/ChildEntity.json +23 -0
  298. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/localService/RootEntity.json +41 -0
  299. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/localService/ValueHelpCurrencyEntity.json +5 -0
  300. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/localService/ValueHelpEntity.js +11 -0
  301. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/localService/service.cds +144 -0
  302. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/manifest.json +96 -0
  303. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/template/Component.js +9 -0
  304. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/template/EntryPage.controller.js +5 -0
  305. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidance/guidanceFreestyle/template/EntryPage.view.xml +14 -0
  306. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/guidanceFreestyle.html +69 -0
  307. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/i18n/i18n.properties +3 -0
  308. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/microchart/microChartDefault/MicroChartDefault.controller.js +2 -2
  309. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/microchart/microChartDynamicSize/MicroChartDynamicSize.controller.js +2 -2
  310. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/microchart/microChartHideOnNoData/MicroChartHideOnNoData.controller.js +2 -2
  311. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/microchart/microChartShowOnlyChart/MicroChartShowOnlyChart.controller.js +2 -2
  312. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableCustoms/Page.controller.js +4 -3
  313. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableCustoms/Page.view.xml +36 -30
  314. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableDefault/TableDefault.controller.js +2 -2
  315. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableEdit/TableEdit.controller.js +3 -2
  316. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/table/tableEdit/TableEdit.view.xml +30 -24
  317. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility/Component.js +3 -0
  318. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility/OPExtend.controller.js +17 -2
  319. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility/localService/ChildEntity.json +9 -0
  320. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility/localService/service.cds +46 -0
  321. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility/manifest.json +24 -1
  322. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/controllerExtensions/basicExtensibility.html +2 -2
  323. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/CustomColumnAdaptation.fragment.xml +1 -1
  324. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/CustomColumnBuildingBlockField.fragment.xml +3 -0
  325. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/CustomColumnButton.fragment.xml +2 -2
  326. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/localService/service.cds +2 -2
  327. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customColumn/customColumnContent/manifest.json +7 -0
  328. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customElementsOverview.md +4 -0
  329. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElement/customFormElementContent/Component.js +35 -0
  330. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElement/customFormElementContent/CustomFormElement1.fragment.xml +3 -0
  331. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElement/customFormElementContent/CustomFormElement2.fragment.xml +3 -0
  332. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElement/customFormElementContent/localService/RootEntity.json +9 -0
  333. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElement/customFormElementContent/localService/service.cds +136 -0
  334. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElement/customFormElementContent/manifest.json +90 -0
  335. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customFormElementContent.html +36 -0
  336. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/{CustomHeaderFacetFormElement.fragment.xml → CustomHeaderFacetBuildingBlockFormElement.fragment.xml} +0 -0
  337. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/{CustomHeaderFacetFormElementEdit.fragment.xml → CustomHeaderFacetBuildingBlockFormElementEdit.fragment.xml} +1 -1
  338. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/CustomHeaderFacetBuildingBlockMicroChart.fragment.xml +10 -0
  339. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/CustomHeaderFacetBuildingBlockMicroChartEdit.fragment.xml +5 -0
  340. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/CustomHeaderFacetDataPointEdit.fragment.xml +2 -2
  341. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/CustomHeaderFacetMicroChartEdit.fragment.xml +2 -2
  342. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/localService/RootEntity.json +6 -1
  343. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/localService/service.cds +30 -2
  344. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customHeaderFacet/customHeaderFacetContent/manifest.json +13 -3
  345. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customPage/customPageContent/CustomPage.view.xml +1 -2
  346. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSection/customSectionContent/CustomSection.fragment.xml +1 -7
  347. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSection/customSectionContent/CustomSectionFormElementAndTable.fragment.xml +0 -1
  348. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSection/customSectionContent/CustomSectionNavigation.fragment.xml +1 -7
  349. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSectionContent.html +60 -27
  350. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/Component.js +35 -0
  351. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/CustomSubSection1.fragment.xml +3 -0
  352. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/CustomSubSection2.fragment.xml +3 -0
  353. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/CustomSubSection3.fragment.xml +11 -0
  354. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/localService/ChildEntity.json +42 -0
  355. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/localService/RootEntity.json +9 -0
  356. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/localService/service.cds +139 -0
  357. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSection/customSubSectionContent/manifest.json +104 -0
  358. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/customSubSectionContent.html +36 -0
  359. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/customElements/i18n/i18n.properties +3 -0
  360. package/packages/sap.fe.core/test/sap/fe/core/jest/BindingExpression-AnnotationExpression.spec.js +20 -6
  361. package/packages/sap.fe.core/test/sap/fe/core/jest/BindingExpression-AnnotationExpression.spec.ts +22 -6
  362. package/packages/sap.fe.core/test/sap/fe/core/jest/BindingExpression.spec.js +71 -23
  363. package/packages/sap.fe.core/test/sap/fe/core/jest/BindingExpression.spec.ts +97 -24
  364. package/packages/sap.fe.core/test/sap/fe/core/jest/TransactionHelper.spec.js +624 -0
  365. package/packages/sap.fe.core/test/sap/fe/core/jest/__snapshots__/TemplateConverter.spec.ts.snap +449 -140
  366. package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/EditFlow.spec.js +435 -0
  367. package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/EditFlow.spec.ts +385 -0
  368. package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/KPIManagement.spec.js +229 -2
  369. package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/KPIManagement.spec.ts +227 -0
  370. package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MessageHandler.spec.js +235 -63
  371. package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MessageHandler.spec.ts +162 -40
  372. package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MessageHandling.spec.js +115 -0
  373. package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/MessageHandling.spec.ts +95 -0
  374. package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/SideEffects.spec.js +1 -2
  375. package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/SideEffects.spec.ts +0 -1
  376. package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/ViewState.spec.js +2 -2
  377. package/packages/sap.fe.core/test/sap/fe/core/jest/controllerextensions/ViewState.spec.ts +2 -2
  378. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ConverterContext.spec.js +11 -1
  379. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ConverterContext.spec.ts +9 -0
  380. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/HeaderFacet.spec.js +18 -1
  381. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/HeaderFacet.spec.ts +25 -1
  382. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/KPI.spec.js +64 -1
  383. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/KPI.spec.ts +66 -0
  384. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ListReportConverter.spec.js +261 -20
  385. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ListReportConverter.spec.ts +329 -19
  386. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/MetaModelConverter.spec.js +79 -8
  387. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/MetaModelConverter.spec.ts +128 -8
  388. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ObjectPageConverter.spec.js +7 -7
  389. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/ObjectPageConverter.spec.ts +6 -6
  390. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/SubSection.spec.js +22 -1
  391. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/SubSection.spec.ts +26 -1
  392. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/Table.spec.js +136 -244
  393. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/Table.spec.ts +156 -376
  394. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/TableStandardActions.spec.js +1267 -0
  395. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/TableStandardActions.spec.ts +2150 -0
  396. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/__snapshots__/KPI.spec.ts.snap +306 -0
  397. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/__snapshots__/MetaModelConverter.spec.ts.snap +57 -0
  398. package/packages/sap.fe.core/test/sap/fe/core/jest/converters/__snapshots__/Table.spec.ts.snap +1 -1
  399. package/packages/sap.fe.core/test/sap/fe/core/jest/data/AnalyticalService.cds +137 -5
  400. package/packages/sap.fe.core/test/sap/fe/core/jest/data/BindingExpression-AnnotationExpression.xml +13 -0
  401. package/packages/sap.fe.core/test/sap/fe/core/jest/data/HeaderFacets.cds +28 -0
  402. package/packages/sap.fe.core/test/sap/fe/core/jest/data/KPI.cds +191 -0
  403. package/packages/sap.fe.core/test/sap/fe/core/jest/data/MetaModelConverterContext.cds +20 -0
  404. package/packages/sap.fe.core/test/sap/fe/core/jest/data/ObjectPageConverter.cds +69 -1
  405. package/packages/sap.fe.core/test/sap/fe/core/jest/data/RoutingServiceFactory.cds +35 -0
  406. package/packages/sap.fe.core/test/sap/fe/core/jest/data/SideEffects.cds +26 -1
  407. package/packages/sap.fe.core/test/sap/fe/core/jest/data/Table.cds +98 -0
  408. package/packages/sap.fe.core/test/sap/fe/core/jest/data/TableNewActionOperationAvailableSticky.cds +22 -0
  409. package/packages/sap.fe.core/test/sap/fe/core/jest/data/TableTooltips.cds +43 -0
  410. package/packages/sap.fe.core/test/sap/fe/core/jest/formatters/ValueFormatters.spec.js +10 -1
  411. package/packages/sap.fe.core/test/sap/fe/core/jest/formatters/ValueFormatters.spec.ts +20 -0
  412. package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/AppStartupHelper.spec.js +912 -0
  413. package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/AppStartupHelper.spec.ts +981 -0
  414. package/packages/sap.fe.core/test/sap/fe/core/jest/helpers/__snapshots__/AppStartupHelper.spec.ts.snap +358 -0
  415. package/packages/sap.fe.core/test/sap/fe/core/jest/manifestmerger/ChangePageConfiguration.spec.js +242 -0
  416. package/packages/sap.fe.core/test/sap/fe/core/jest/manifestmerger/ChangePageConfiguration.spec.ts +297 -0
  417. package/packages/sap.fe.core/test/sap/fe/core/jest/manifestmerger/__snapshots__/ChangePageConfiguration.spec.ts.snap +289 -0
  418. package/packages/sap.fe.core/test/sap/fe/core/jest/services/RoutingServiceFactory.spec.js +292 -366
  419. package/packages/sap.fe.core/test/sap/fe/core/jest/services/RoutingServiceFactory.spec.ts +247 -0
  420. package/packages/sap.fe.core/test/sap/fe/core/jest/services/SideEffectsService.spec.js +14 -1
  421. package/packages/sap.fe.core/test/sap/fe/core/jest/services/SideEffectsService.spec.ts +19 -0
  422. package/packages/sap.fe.core/test/sap/fe/core/qunit/apps/generalTests.json +0 -12
  423. package/packages/sap.fe.core/test/sap/fe/core/relnotes/changes-1.98.json +363 -0
  424. package/packages/sap.fe.macros/src/sap/fe/macros/.library +1 -1
  425. package/packages/sap.fe.macros/src/sap/fe/macros/.theming +1 -1
  426. package/packages/sap.fe.macros/src/sap/fe/macros/Chart.fragment.xml +5 -5
  427. package/packages/sap.fe.macros/src/sap/fe/macros/Chart.metadata-dbg.js +0 -2
  428. package/packages/sap.fe.macros/src/sap/fe/macros/Chart.metadata.js +1 -1
  429. package/packages/sap.fe.macros/src/sap/fe/macros/ChartAPI-dbg.js +1 -1
  430. package/packages/sap.fe.macros/src/sap/fe/macros/ChartAPI.js +1 -1
  431. package/packages/sap.fe.macros/src/sap/fe/macros/ChartDelegate-dbg.js +4 -4
  432. package/packages/sap.fe.macros/src/sap/fe/macros/ChartDelegate.js +1 -1
  433. package/packages/sap.fe.macros/src/sap/fe/macros/CommonHelper-dbg.js +26 -24
  434. package/packages/sap.fe.macros/src/sap/fe/macros/CommonHelper.js +1 -1
  435. package/packages/sap.fe.macros/src/sap/fe/macros/FieldAPI-dbg.js +1 -1
  436. package/packages/sap.fe.macros/src/sap/fe/macros/FieldAPI.js +1 -1
  437. package/packages/sap.fe.macros/src/sap/fe/macros/FieldBaseDelegate-dbg.js +90 -0
  438. package/packages/sap.fe.macros/src/sap/fe/macros/FieldBaseDelegate.js +6 -0
  439. package/packages/sap.fe.macros/src/sap/fe/macros/FilterBar.fragment.xml +7 -6
  440. package/packages/sap.fe.macros/src/sap/fe/macros/FilterBar.metadata-dbg.js +63 -8
  441. package/packages/sap.fe.macros/src/sap/fe/macros/FilterBar.metadata.js +1 -1
  442. package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarAPI-dbg.js +42 -4
  443. package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarAPI.js +1 -1
  444. package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarAPI.ts +76 -1
  445. package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarDelegate-dbg.js +49 -6
  446. package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarDelegate.js +1 -1
  447. package/packages/sap.fe.macros/src/sap/fe/macros/FilterField-dbg.designtime.js +1 -1
  448. package/packages/sap.fe.macros/src/sap/fe/macros/Form.fragment.xml +21 -17
  449. package/packages/sap.fe.macros/src/sap/fe/macros/Form.metadata-dbg.js +8 -0
  450. package/packages/sap.fe.macros/src/sap/fe/macros/Form.metadata.js +1 -1
  451. package/packages/sap.fe.macros/src/sap/fe/macros/MacroAPI-dbg.js +2 -2
  452. package/packages/sap.fe.macros/src/sap/fe/macros/MacroAPI.js +1 -1
  453. package/packages/sap.fe.macros/src/sap/fe/macros/MacroMetadata-dbg.js +2 -2
  454. package/packages/sap.fe.macros/src/sap/fe/macros/MacroMetadata.js +1 -1
  455. package/packages/sap.fe.macros/src/sap/fe/macros/PhantomUtil-dbg.js +8 -3
  456. package/packages/sap.fe.macros/src/sap/fe/macros/PhantomUtil.js +1 -1
  457. package/packages/sap.fe.macros/src/sap/fe/macros/QuickViewForm.metadata-dbg.js +2 -1
  458. package/packages/sap.fe.macros/src/sap/fe/macros/QuickViewForm.metadata.js +1 -1
  459. package/packages/sap.fe.macros/src/sap/fe/macros/Share.metadata-dbg.js +11 -8
  460. package/packages/sap.fe.macros/src/sap/fe/macros/Share.metadata.js +1 -1
  461. package/packages/sap.fe.macros/src/sap/fe/macros/SizeHelper-dbg.js +168 -35
  462. package/packages/sap.fe.macros/src/sap/fe/macros/SizeHelper.js +1 -1
  463. package/packages/sap.fe.macros/src/sap/fe/macros/Table.fragment.xml +107 -109
  464. package/packages/sap.fe.macros/src/sap/fe/macros/Table.metadata-dbg.js +51 -65
  465. package/packages/sap.fe.macros/src/sap/fe/macros/Table.metadata.js +1 -1
  466. package/packages/sap.fe.macros/src/sap/fe/macros/TableAPI-dbg.js +9 -4
  467. package/packages/sap.fe.macros/src/sap/fe/macros/TableAPI.js +1 -1
  468. package/packages/sap.fe.macros/src/sap/fe/macros/TableAPI.ts +5 -2
  469. package/packages/sap.fe.macros/src/sap/fe/macros/chart/ChartHelper-dbg.js +1 -1
  470. package/packages/sap.fe.macros/src/sap/fe/macros/chart/ChartHelper.js +1 -1
  471. package/packages/sap.fe.macros/src/sap/fe/macros/chart/ChartUtils-dbg.js +2 -1
  472. package/packages/sap.fe.macros/src/sap/fe/macros/chart/ChartUtils.js +1 -1
  473. package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldHelper-dbg.js +101 -16
  474. package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldHelper.js +1 -1
  475. package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldRuntime-dbg.js +273 -71
  476. package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldRuntime.js +1 -1
  477. package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldTemplating-dbg.js +128 -32
  478. package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldTemplating.js +1 -1
  479. package/packages/sap.fe.macros/src/sap/fe/macros/field/FieldTemplating.ts +110 -16
  480. package/packages/sap.fe.macros/src/sap/fe/macros/field/QuickViewLinkContactContent.fragment.xml +11 -4
  481. package/packages/sap.fe.macros/src/sap/fe/macros/field/QuickViewLinkDelegate-dbg.js +65 -84
  482. package/packages/sap.fe.macros/src/sap/fe/macros/field/QuickViewLinkDelegate.js +1 -1
  483. package/packages/sap.fe.macros/src/sap/fe/macros/filter/CustomFilter.fragment.xml +5 -0
  484. package/packages/sap.fe.macros/src/sap/fe/macros/filter/FilterUtils-dbg.js +2 -2
  485. package/packages/sap.fe.macros/src/sap/fe/macros/filter/FilterUtils.js +1 -1
  486. package/packages/sap.fe.macros/src/sap/fe/macros/form/DataFieldCollection.fragment.xml +2 -2
  487. package/packages/sap.fe.macros/src/sap/fe/macros/fpm/CustomFormElement.fragment.xml +5 -1
  488. package/packages/sap.fe.macros/src/sap/fe/macros/internal/CollectionField.metadata-dbg.js +72 -12
  489. package/packages/sap.fe.macros/src/sap/fe/macros/internal/CollectionField.metadata.js +1 -1
  490. package/packages/sap.fe.macros/src/sap/fe/macros/internal/CollectionField.metadata.ts +43 -14
  491. package/packages/sap.fe.macros/src/sap/fe/macros/internal/DataPoint.fragment.xml +13 -2
  492. package/packages/sap.fe.macros/src/sap/fe/macros/internal/DataPoint.metadata-dbg.js +55 -8
  493. package/packages/sap.fe.macros/src/sap/fe/macros/internal/DataPoint.metadata.js +1 -1
  494. package/packages/sap.fe.macros/src/sap/fe/macros/internal/Field.fragment.xml +1 -3
  495. package/packages/sap.fe.macros/src/sap/fe/macros/internal/Field.metadata-dbg.js +38 -65
  496. package/packages/sap.fe.macros/src/sap/fe/macros/internal/Field.metadata.js +1 -1
  497. package/packages/sap.fe.macros/src/sap/fe/macros/{FilterField.fragment.xml → internal/FilterField.fragment.xml} +2 -2
  498. package/packages/sap.fe.macros/src/sap/fe/macros/{FilterField.metadata-dbg.js → internal/FilterField.metadata-dbg.js} +5 -5
  499. package/packages/sap.fe.macros/src/sap/fe/macros/internal/FilterField.metadata.js +6 -0
  500. package/packages/sap.fe.macros/src/sap/fe/macros/internal/SituationsIndicator-dbg.js +96 -0
  501. package/packages/sap.fe.macros/src/sap/fe/macros/internal/SituationsIndicator.js +5 -0
  502. package/packages/sap.fe.macros/src/sap/fe/macros/internal/SituationsIndicator.ts +116 -0
  503. package/packages/sap.fe.macros/src/sap/fe/macros/internal/collectionField/MultiValueFieldDelegate-dbg.js +7 -15
  504. package/packages/sap.fe.macros/src/sap/fe/macros/internal/collectionField/MultiValueFieldDelegate.js +1 -1
  505. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/FieldStructure.fragment.xml +4 -5
  506. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/AmountWithCurrency.fragment.xml +5 -1
  507. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/DataPoint.fragment.xml +5 -1
  508. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/ExpandableText.fragment.xml +1 -0
  509. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/File.fragment.xml +2 -2
  510. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/LabelSemanticKey.fragment.xml +5 -3
  511. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/Link.fragment.xml +11 -3
  512. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/LinkWithQuickViewForm.fragment.xml +1 -0
  513. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/LinkWrapper.fragment.xml +5 -4
  514. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/MdcFieldWithValueHelp.fragment.xml +48 -0
  515. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/ObjectIdentifier.fragment.xml +140 -18
  516. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/ObjectStatus.fragment.xml +1 -0
  517. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/SemanticKeyWithDraftIndicator.fragment.xml +1 -1
  518. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/displayStyle/Text.fragment.xml +6 -3
  519. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/CheckBox.fragment.xml +1 -1
  520. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/DatePicker.fragment.xml +1 -1
  521. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/DateTimePicker.fragment.xml +1 -1
  522. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/File.fragment.xml +14 -4
  523. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/Input.fragment.xml +1 -1
  524. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/InputWithUnit.fragment.xml +3 -3
  525. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/InputWithValueHelp.fragment.xml +2 -2
  526. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/TextArea.fragment.xml +1 -1
  527. package/packages/sap.fe.macros/src/sap/fe/macros/internal/field/editStyle/TimePicker.fragment.xml +1 -1
  528. package/packages/sap.fe.macros/src/sap/fe/macros/internal/helpers/DataPointTemplating-dbg.js +25 -9
  529. package/packages/sap.fe.macros/src/sap/fe/macros/internal/helpers/DataPointTemplating.js +1 -1
  530. package/packages/sap.fe.macros/src/sap/fe/macros/internal/helpers/DataPointTemplating.ts +30 -16
  531. package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Formatter-dbg.js +154 -0
  532. package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Formatter.js +5 -0
  533. package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Formatter.ts +146 -0
  534. package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Runtime-dbg.js +204 -0
  535. package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Runtime.js +5 -0
  536. package/packages/sap.fe.macros/src/sap/fe/macros/internal/situations/Runtime.ts +215 -0
  537. package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/TableDelegate-dbg.js +29 -8
  538. package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/TableDelegate.js +1 -1
  539. package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/ValueHelp-dbg.designtime.js +1 -1
  540. package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/ValueHelpContent.fragment.xml +0 -10
  541. package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/ValueListDialogTable.fragment.xml +2 -2
  542. package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/ValueListHelper-dbg.js +151 -131
  543. package/packages/sap.fe.macros/src/sap/fe/macros/internal/valuehelp/ValueListHelper.js +1 -1
  544. package/packages/sap.fe.macros/src/sap/fe/macros/library-dbg.js +1 -1
  545. package/packages/sap.fe.macros/src/sap/fe/macros/library-h2-preload.js +24 -23
  546. package/packages/sap.fe.macros/src/sap/fe/macros/library-h2-preload.js.map +1 -1
  547. package/packages/sap.fe.macros/src/sap/fe/macros/library-preload.js +209 -188
  548. package/packages/sap.fe.macros/src/sap/fe/macros/library-preload.js.map +4 -4
  549. package/packages/sap.fe.macros/src/sap/fe/macros/library.js +1 -1
  550. package/packages/sap.fe.macros/src/sap/fe/macros/macroLibrary-dbg.js +7 -4
  551. package/packages/sap.fe.macros/src/sap/fe/macros/macroLibrary.js +1 -1
  552. package/packages/sap.fe.macros/src/sap/fe/macros/manifest.json +9 -9
  553. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle.properties +36 -10
  554. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ar.properties +12 -0
  555. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_bg.properties +12 -0
  556. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ca.properties +12 -0
  557. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_cs.properties +12 -0
  558. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_cy.properties +12 -0
  559. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_da.properties +12 -0
  560. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_de.properties +12 -0
  561. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_el.properties +13 -1
  562. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en.properties +12 -0
  563. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_GB.properties +12 -0
  564. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_US_sappsd.properties +12 -0
  565. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_US_saprigi.properties +12 -0
  566. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_en_US_saptrc.properties +12 -0
  567. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_es.properties +12 -0
  568. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_es_MX.properties +12 -0
  569. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_et.properties +12 -0
  570. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_fi.properties +12 -0
  571. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_fr.properties +12 -0
  572. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_fr_CA.properties +12 -0
  573. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_hi.properties +12 -0
  574. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_hr.properties +12 -0
  575. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_hu.properties +12 -0
  576. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_id.properties +14 -2
  577. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_it.properties +12 -0
  578. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_iw.properties +12 -0
  579. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ja.properties +12 -0
  580. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_kk.properties +12 -0
  581. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ko.properties +12 -0
  582. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_lt.properties +12 -0
  583. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_lv.properties +12 -0
  584. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ms.properties +12 -0
  585. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_nl.properties +12 -0
  586. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_no.properties +12 -0
  587. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_pl.properties +12 -0
  588. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_pt.properties +13 -1
  589. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_pt_PT.properties +12 -0
  590. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ro.properties +12 -0
  591. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_ru.properties +12 -0
  592. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sh.properties +12 -0
  593. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sk.properties +12 -0
  594. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sl.properties +12 -0
  595. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_sv.properties +13 -1
  596. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_th.properties +12 -0
  597. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_tr.properties +12 -0
  598. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_uk.properties +12 -0
  599. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_vi.properties +12 -0
  600. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_zh_CN.properties +13 -1
  601. package/packages/sap.fe.macros/src/sap/fe/macros/messagebundle_zh_TW.properties +12 -0
  602. package/packages/sap.fe.macros/src/sap/fe/macros/resources.json +496 -354
  603. package/packages/sap.fe.macros/src/sap/fe/macros/table/Actions.fragment.xml +53 -57
  604. package/packages/sap.fe.macros/src/sap/fe/macros/table/Column.fragment.xml +1 -0
  605. package/packages/sap.fe.macros/src/sap/fe/macros/table/ColumnContent.fragment.xml +38 -32
  606. package/packages/sap.fe.macros/src/sap/fe/macros/table/QuickFilterContainer-dbg.js +12 -3
  607. package/packages/sap.fe.macros/src/sap/fe/macros/table/QuickFilterContainer.js +1 -1
  608. package/packages/sap.fe.macros/src/sap/fe/macros/table/TableHelper-dbg.js +17 -91
  609. package/packages/sap.fe.macros/src/sap/fe/macros/table/TableHelper.js +1 -1
  610. package/packages/sap.fe.macros/src/sap/fe/macros/table/TableRuntime-dbg.js +4 -1
  611. package/packages/sap.fe.macros/src/sap/fe/macros/table/TableRuntime.js +1 -1
  612. package/packages/sap.fe.macros/src/sap/fe/macros/table/Utils-dbg.js +9 -4
  613. package/packages/sap.fe.macros/src/sap/fe/macros/table/Utils.js +1 -1
  614. package/packages/sap.fe.macros/src/sap/fe/macros/table/delegates/ALPTableDelegateBaseMixin-dbg.js +3 -3
  615. package/packages/sap.fe.macros/src/sap/fe/macros/table/delegates/ALPTableDelegateBaseMixin.js +1 -1
  616. package/packages/sap.fe.macros/src/sap/fe/macros/table/delegates/TableDelegate-dbg.js +198 -71
  617. package/packages/sap.fe.macros/src/sap/fe/macros/table/delegates/TableDelegate.js +1 -1
  618. package/packages/sap.fe.macros/src/sap/fe/macros/valuehelp/ValueHelpFilterBar.fragment.xml +4 -4
  619. package/packages/sap.fe.macros/test/sap/fe/macros/designtime/api.json +58 -15
  620. package/packages/sap.fe.macros/test/sap/fe/macros/designtime/apiref/api.json +1 -1
  621. package/packages/sap.fe.macros/test/sap/fe/macros/designtime/codeassistance/Library.jsmeta.json +1 -1
  622. package/packages/sap.fe.macros/test/sap/fe/macros/designtime/codeassistance/Library.xmlmeta.json +1 -1
  623. package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartDelegate.spec.js +1 -1
  624. package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartDelegate.spec.ts +1 -2
  625. package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartHelper.spec.js +1 -1
  626. package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartHelper.spec.ts +0 -2
  627. package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartMacro.spec.js +1 -1
  628. package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartMacro.spec.ts +0 -2
  629. package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartUtils.spec.js +1 -1
  630. package/packages/sap.fe.macros/test/sap/fe/macros/jest/ChartUtils.spec.ts +0 -2
  631. package/packages/sap.fe.macros/test/sap/fe/macros/jest/CollectionField.spec.js +21 -1
  632. package/packages/sap.fe.macros/test/sap/fe/macros/jest/CollectionField.spec.ts +20 -0
  633. package/packages/sap.fe.macros/test/sap/fe/macros/jest/CommonUtils.spec.js +1 -1
  634. package/packages/sap.fe.macros/test/sap/fe/macros/jest/CommonUtils.spec.ts +1 -1
  635. package/packages/sap.fe.macros/test/sap/fe/macros/jest/DatapointMacro.spec.js +19 -1
  636. package/packages/sap.fe.macros/test/sap/fe/macros/jest/DatapointMacro.spec.ts +12 -0
  637. package/packages/sap.fe.macros/test/sap/fe/macros/jest/DelegateUtil.spec.js +2 -2
  638. package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldBaseDelegate.spec.js +111 -0
  639. package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldMacroWithSemanticKey.spec.js +67 -3
  640. package/packages/sap.fe.macros/test/sap/fe/macros/jest/FieldMacroWithSemanticKey.spec.ts +81 -1
  641. package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterBarDelegate.spec.js +4 -6
  642. package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterBarMacro.spec.js +52 -6
  643. package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterBarMacro.spec.ts +64 -7
  644. package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterField.spec.js +34 -4
  645. package/packages/sap.fe.macros/test/sap/fe/macros/jest/FilterField.spec.ts +46 -3
  646. package/packages/sap.fe.macros/test/sap/fe/macros/jest/PhantomUtil.spec.js +43 -4
  647. package/packages/sap.fe.macros/test/sap/fe/macros/jest/PhantomUtil.spec.ts +62 -3
  648. package/packages/sap.fe.macros/test/sap/fe/macros/jest/QuickViewForm.spec.js +31 -5
  649. package/packages/sap.fe.macros/test/sap/fe/macros/jest/QuickViewForm.spec.ts +25 -3
  650. package/packages/sap.fe.macros/test/sap/fe/macros/jest/SimpleFieldMacro.spec.js +11 -1
  651. package/packages/sap.fe.macros/test/sap/fe/macros/jest/SimpleFieldMacro.spec.ts +9 -0
  652. package/packages/sap.fe.macros/test/sap/fe/macros/jest/TableMacro.spec.js +40 -0
  653. package/packages/sap.fe.macros/test/sap/fe/macros/jest/TableMacro.spec.ts +35 -0
  654. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/ChartMacro.spec.ts.snap +42 -42
  655. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/CollectionField.spec.ts.snap +49 -7
  656. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/DatapointMacro.spec.ts.snap +27 -11
  657. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FieldMacroDataFieldTypes.spec.ts.snap +50 -44
  658. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FieldMacroWithSemanticKey.spec.ts.snap +146 -56
  659. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FieldMacroWithValueHelp.spec.ts.snap +16 -16
  660. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FilterBarMacro.spec.ts.snap +774 -11
  661. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/FilterField.spec.ts.snap +70 -2
  662. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/MicroChart.spec.ts.snap +1 -1
  663. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/PhantomUtil.spec.ts.snap +70 -165
  664. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/QuickViewForm.spec.ts.snap +39 -0
  665. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/SimpleFieldMacro.spec.ts.snap +287 -170
  666. package/packages/sap.fe.macros/test/sap/fe/macros/jest/__snapshots__/TableFieldLabel.spec.ts.snap +369 -213
  667. package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/CollectionField.cds +11 -3
  668. package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FieldMacroDataFieldTypes.cds +5 -0
  669. package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FieldMacroWithSemanticKey.cds +17 -12
  670. package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FilterBarMacro.cds +18 -1
  671. package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FilterBarMacroWithDefaultAnnotation.cds +155 -0
  672. package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FilterBarMacroWithSVandAnnotation.cds +155 -0
  673. package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/FilterFieldMacro.cds +13 -1
  674. package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/QuickViewForm.cds +36 -11
  675. package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/TableFieldLabel.cds +22 -1
  676. package/packages/sap.fe.macros/test/sap/fe/macros/jest/data/simpleFieldMacro.cds +8 -3
  677. package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldRuntime.spec.js +252 -61
  678. package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldRuntime.spec.ts +277 -67
  679. package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldTemplating.cds +93 -1
  680. package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldTemplating.spec.js +118 -16
  681. package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/FieldTemplating.spec.ts +143 -16
  682. package/packages/sap.fe.macros/test/sap/fe/macros/jest/field/__snapshots__/FieldTemplating.spec.ts.snap +31 -0
  683. package/packages/sap.fe.macros/test/sap/fe/macros/jest/fragments/MyTestFragment.xml +3 -0
  684. package/packages/sap.fe.macros/test/sap/fe/macros/jest/fragments/MyTestSubFragment.xml +10 -0
  685. package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/Actions.spec.js +14 -2
  686. package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/Actions.spec.ts +13 -1
  687. package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/__snapshots__/columnWidth.spec.ts.snap +131 -0
  688. package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/columnWidth.spec.js +264 -0
  689. package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/columnWidth.spec.ts +244 -0
  690. package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/data/columnWidth.cds +238 -0
  691. package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/TableDelegate.spec.js +33 -6
  692. package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/TableDelegate.spec.ts +40 -2
  693. package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/ValueHelpTableDelegate.spec.js +61 -0
  694. package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/ValueHelpTableDelegate.spec.ts +64 -0
  695. package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/__snapshots__/TableDelegate.spec.ts.snap +1287 -32
  696. package/packages/sap.fe.macros/test/sap/fe/macros/jest/table/delegates/data/tabledelegate.cds +1 -1
  697. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/index.json +0 -5
  698. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/CommonHelper.qunit.js +284 -159
  699. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FieldHelper.qunit.js +9 -9
  700. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FieldHelperTemplate.qunit.js +2 -2
  701. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FormContainerTemplating.qunit.js +1 -0
  702. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FormElementTemplating.qunit.js +1 -1
  703. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FormTemplating.qunit.js +10 -5
  704. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FormTemplatingTs.qunit.js +2 -2
  705. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/MacroMetadata.qunit.js +5 -5
  706. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/MicroChartContainer.qunit.js +29 -0
  707. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/TableHelper.qunit.js +6 -26
  708. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/TableHelperTemplate.qunit.js +3 -8
  709. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/ValueListHelper.qunit.js +402 -18
  710. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/fragments/FilterFieldMacro.fragment.xml +1 -1
  711. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/fragments/FilterFieldMacroMissingID.fragment.xml +1 -1
  712. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/fragments/TableMacro.fragment.xml +0 -2
  713. package/packages/sap.fe.macros/test/sap/fe/macros/relnotes/changes-1.98.json +210 -0
  714. package/packages/sap.fe.navigation/src/sap/fe/navigation/.library +1 -1
  715. package/packages/sap.fe.navigation/src/sap/fe/navigation/.theming +1 -1
  716. package/packages/sap.fe.navigation/src/sap/fe/navigation/NavigationHandler-dbg.js +70 -29
  717. package/packages/sap.fe.navigation/src/sap/fe/navigation/NavigationHandler.js +1 -1
  718. package/packages/sap.fe.navigation/src/sap/fe/navigation/library-dbg.js +1 -1
  719. package/packages/sap.fe.navigation/src/sap/fe/navigation/library-h2-preload.js +2 -2
  720. package/packages/sap.fe.navigation/src/sap/fe/navigation/library-preload.js +6 -5
  721. package/packages/sap.fe.navigation/src/sap/fe/navigation/library-preload.js.map +3 -3
  722. package/packages/sap.fe.navigation/src/sap/fe/navigation/library.js +1 -1
  723. package/packages/sap.fe.navigation/src/sap/fe/navigation/manifest.json +3 -3
  724. package/packages/sap.fe.navigation/src/sap/fe/navigation/resources.json +5 -5
  725. package/packages/sap.fe.navigation/test/sap/fe/navigation/designtime/api.json +1 -1
  726. package/packages/sap.fe.navigation/test/sap/fe/navigation/designtime/apiref/api.json +1 -1
  727. package/packages/sap.fe.navigation/test/sap/fe/navigation/designtime/codeassistance/Library.xmlmeta.json +1 -1
  728. package/packages/sap.fe.navigation/test/sap/fe/navigation/qunit/navigation/NavigationHandlerTest.qunit.js +4 -12
  729. package/packages/sap.fe.placeholder/src/sap/fe/placeholder/.library +1 -1
  730. package/packages/sap.fe.placeholder/src/sap/fe/placeholder/.theming +1 -1
  731. package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library-dbg.js +1 -1
  732. package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library-h2-preload.js +2 -2
  733. package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library-preload.js +2 -2
  734. package/packages/sap.fe.placeholder/src/sap/fe/placeholder/library.js +1 -1
  735. package/packages/sap.fe.placeholder/src/sap/fe/placeholder/manifest.json +3 -3
  736. package/packages/sap.fe.placeholder/test/sap/fe/placeholder/designtime/api.json +1 -1
  737. package/packages/sap.fe.placeholder/test/sap/fe/placeholder/designtime/apiref/api.json +1 -1
  738. package/packages/sap.fe.templates/src/sap/fe/templates/.library +1 -1
  739. package/packages/sap.fe.templates/src/sap/fe/templates/.theming +1 -1
  740. package/packages/sap.fe.templates/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate-dbg.js +2 -2
  741. package/packages/sap.fe.templates/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.js +1 -1
  742. package/packages/sap.fe.templates/src/sap/fe/templates/AnalyticalListPage/manifest.json +2 -2
  743. package/packages/sap.fe.templates/src/sap/fe/templates/AnalyticalListPage/resources.json +2 -2
  744. package/packages/sap.fe.templates/src/sap/fe/templates/ListComponent-dbg.js +1 -1
  745. package/packages/sap.fe.templates/src/sap/fe/templates/ListComponent.js +1 -1
  746. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/ExtensionAPI-dbg.js +1 -1
  747. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/ExtensionAPI.js +1 -1
  748. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/ListReport.view.xml +2 -1
  749. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/ListReportController-dbg.controller.js +85 -85
  750. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/ListReportController.controller.js +1 -1
  751. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/manifest.json +2 -2
  752. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation-dbg.js +6 -2
  753. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.js +1 -1
  754. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/MassEdit-dbg.js +96 -0
  755. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/MassEdit.js +6 -0
  756. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/Share-dbg.js +36 -21
  757. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/Share.js +1 -1
  758. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/ViewState-dbg.js +53 -31
  759. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/overrides/ViewState.js +1 -1
  760. package/packages/sap.fe.templates/src/sap/fe/templates/ListReport/resources.json +20 -11
  761. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/AnnotationHelper-dbg.js +20 -0
  762. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/AnnotationHelper.js +1 -1
  763. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/Component-dbg.js +16 -14
  764. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/Component.js +1 -1
  765. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ExtensionAPI-dbg.js +15 -0
  766. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ExtensionAPI.js +1 -1
  767. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +103 -88
  768. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ObjectPageController-dbg.controller.js +99 -72
  769. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +1 -1
  770. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/manifest.json +2 -2
  771. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/Paginator-dbg.js +12 -0
  772. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/Paginator.js +1 -1
  773. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/Share-dbg.js +47 -43
  774. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/Share.js +1 -1
  775. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/ViewState-dbg.js +0 -20
  776. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/overrides/ViewState.js +1 -1
  777. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/resources.json +24 -24
  778. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/Actions.fragment.xml +1 -1
  779. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/Section.fragment.xml +24 -5
  780. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/SectionContent.fragment.xml +1 -4
  781. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/SectionContentLazyLoader.fragment.xml +181 -0
  782. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/SectionFormContent.fragment.xml +1 -0
  783. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/SectionMoreFormContent.fragment.xml +1 -0
  784. package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController-dbg.js +133 -123
  785. package/packages/sap.fe.templates/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController.js +1 -1
  786. package/packages/sap.fe.templates/src/sap/fe/templates/controls/Table.fragment.xml +1 -1
  787. package/packages/sap.fe.templates/src/sap/fe/templates/library-dbg.js +1 -1
  788. package/packages/sap.fe.templates/src/sap/fe/templates/library-h2-preload.js +8 -7
  789. package/packages/sap.fe.templates/src/sap/fe/templates/library-h2-preload.js.map +1 -1
  790. package/packages/sap.fe.templates/src/sap/fe/templates/library-preload.js +34 -32
  791. package/packages/sap.fe.templates/src/sap/fe/templates/library-preload.js.map +4 -4
  792. package/packages/sap.fe.templates/src/sap/fe/templates/library.js +1 -1
  793. package/packages/sap.fe.templates/src/sap/fe/templates/manifest.json +13 -13
  794. package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle.properties +24 -1
  795. package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_en_US_sappsd.properties +1 -1
  796. package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_en_US_saprigi.properties +1 -1
  797. package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_en_US_saptrc.properties +1 -1
  798. package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_es.properties +8 -8
  799. package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_fr.properties +1 -1
  800. package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_ja.properties +1 -1
  801. package/packages/sap.fe.templates/src/sap/fe/templates/messagebundle_tr.properties +1 -1
  802. package/packages/sap.fe.templates/src/sap/fe/templates/resources.json +126 -66
  803. package/packages/sap.fe.templates/test/sap/fe/templates/demokit/apps/itelo/webapp/manifest.json +1 -1
  804. package/packages/sap.fe.templates/test/sap/fe/templates/designtime/api.json +1 -1
  805. package/packages/sap.fe.templates/test/sap/fe/templates/designtime/apiref/api.json +1 -1
  806. package/packages/sap.fe.templates/test/sap/fe/templates/designtime/codeassistance/Library.jsmeta.json +1 -1
  807. package/packages/sap.fe.templates/test/sap/fe/templates/designtime/codeassistance/Library.xmlmeta.json +1 -1
  808. package/packages/sap.fe.templates/test/sap/fe/templates/jest/ListReport/overrides/ViewState.spec.js +262 -0
  809. package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/HeaderFacet.spec.js +2 -1
  810. package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/HeaderFacet.spec.ts +1 -0
  811. package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/Sections.spec.js +132 -0
  812. package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/Sections.spec.ts +131 -0
  813. package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/__snapshots__/HeaderFacet.spec.ts.snap +1 -0
  814. package/packages/sap.fe.templates/test/sap/fe/templates/jest/ObjectPage/view/fragments/__snapshots__/Sections.spec.ts.snap +52 -0
  815. package/packages/sap.fe.templates/test/sap/fe/templates/jest/RootContainer/RootContainerBaseController.spec.js +229 -0
  816. package/packages/sap.fe.templates/test/sap/fe/templates/jest/RootContainer/RootContainerBaseController.spec.ts +157 -0
  817. package/packages/sap.fe.templates/test/sap/fe/templates/jest/RootContainer/__snapshots__/RootContainerBaseController.spec.ts.snap +218 -0
  818. package/packages/sap.fe.templates/test/sap/fe/templates/jest/data/RootContainerBaseController.cds +64 -0
  819. package/packages/sap.fe.templates/test/sap/fe/templates/relnotes/changes-1.98.json +201 -0
  820. package/packages/sap.fe.test/src/sap/fe/test/.library +1 -1
  821. package/packages/sap.fe.test/src/sap/fe/test/.theming +1 -1
  822. package/packages/sap.fe.test/src/sap/fe/test/JourneyRunner-dbg.js +8 -3
  823. package/packages/sap.fe.test/src/sap/fe/test/JourneyRunner.js +1 -1
  824. package/packages/sap.fe.test/src/sap/fe/test/ListReport-dbg.js +8 -3
  825. package/packages/sap.fe.test/src/sap/fe/test/ListReport.js +1 -1
  826. package/packages/sap.fe.test/src/sap/fe/test/ObjectPage-dbg.js +19 -11
  827. package/packages/sap.fe.test/src/sap/fe/test/ObjectPage.js +1 -1
  828. package/packages/sap.fe.test/src/sap/fe/test/TemplatingTestUtils-dbg.js +1 -1
  829. package/packages/sap.fe.test/src/sap/fe/test/TemplatingTestUtils.js +1 -1
  830. package/packages/sap.fe.test/src/sap/fe/test/UI5MockHelper-dbg.js +211 -45
  831. package/packages/sap.fe.test/src/sap/fe/test/UI5MockHelper.js +1 -1
  832. package/packages/sap.fe.test/src/sap/fe/test/UI5MockHelper.ts +103 -8
  833. package/packages/sap.fe.test/src/sap/fe/test/Utils-dbg.js +0 -12
  834. package/packages/sap.fe.test/src/sap/fe/test/Utils.js +1 -1
  835. package/packages/sap.fe.test/src/sap/fe/test/api/BaseAPI-dbg.js +1 -7
  836. package/packages/sap.fe.test/src/sap/fe/test/api/BaseAPI.js +1 -1
  837. package/packages/sap.fe.test/src/sap/fe/test/api/ChartAssertions-dbg.js +4 -4
  838. package/packages/sap.fe.test/src/sap/fe/test/api/ChartAssertions.js +1 -1
  839. package/packages/sap.fe.test/src/sap/fe/test/api/KPICardActions-dbg.js +43 -0
  840. package/packages/sap.fe.test/src/sap/fe/test/api/KPICardActions.js +6 -0
  841. package/packages/sap.fe.test/src/sap/fe/test/api/KPICardAssertions-dbg.js +19 -15
  842. package/packages/sap.fe.test/src/sap/fe/test/api/KPICardAssertions.js +1 -1
  843. package/packages/sap.fe.test/src/sap/fe/test/api/TableAssertions-dbg.js +11 -0
  844. package/packages/sap.fe.test/src/sap/fe/test/api/TableAssertions.js +1 -1
  845. package/packages/sap.fe.test/src/sap/fe/test/builder/KPIBuilder-dbg.js +11 -2
  846. package/packages/sap.fe.test/src/sap/fe/test/builder/KPIBuilder.js +1 -1
  847. package/packages/sap.fe.test/src/sap/fe/test/builder/MdcTableBuilder-dbg.js +22 -0
  848. package/packages/sap.fe.test/src/sap/fe/test/builder/MdcTableBuilder.js +1 -1
  849. package/packages/sap.fe.test/src/sap/fe/test/library-dbg.js +1 -1
  850. package/packages/sap.fe.test/src/sap/fe/test/library-h2-preload.js +5 -4
  851. package/packages/sap.fe.test/src/sap/fe/test/library-h2-preload.js.map +1 -1
  852. package/packages/sap.fe.test/src/sap/fe/test/library-preload.js +37 -23
  853. package/packages/sap.fe.test/src/sap/fe/test/library-preload.js.map +4 -4
  854. package/packages/sap.fe.test/src/sap/fe/test/library.js +1 -1
  855. package/packages/sap.fe.test/src/sap/fe/test/manifest.json +3 -3
  856. package/packages/sap.fe.test/src/sap/fe/test/resources.json +59 -34
  857. package/packages/sap.fe.test/test/sap/fe/test/designtime/api.json +1 -1
  858. package/packages/sap.fe.test/test/sap/fe/test/designtime/apiref/api.json +1 -1
  859. package/packages/sap.fe.test/test/sap/fe/test/designtime/codeassistance/Library.xmlmeta.json +1 -1
  860. package/packages/sap.fe.test/test/sap/fe/test/mockserver/MockServer.js +98965 -71474
  861. package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar.d-dbg.js +0 -8
  862. package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar.d.js +0 -5
  863. package/packages/sap.fe.core/src/sap/fe/core/controls/filterbar.d.ts +0 -0
  864. package/packages/sap.fe.core/test/sap/fe/core/fpmExplorer/topics/buildingBlocks/filterBar/filterBarDefault/localService/CreditLimitDetails.json +0 -154
  865. package/packages/sap.fe.core/test/sap/fe/core/qunit/TransactionHelper.qunit.js +0 -77
  866. package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarHelper-dbg.js +0 -48
  867. package/packages/sap.fe.macros/src/sap/fe/macros/FilterBarHelper.js +0 -6
  868. package/packages/sap.fe.macros/src/sap/fe/macros/FilterField.metadata.js +0 -6
  869. package/packages/sap.fe.macros/src/sap/fe/macros/FormWrapper.fragment.xml +0 -26
  870. package/packages/sap.fe.macros/src/sap/fe/macros/massedit/MassEditHandler-dbg.js +0 -718
  871. package/packages/sap.fe.macros/src/sap/fe/macros/massedit/MassEditHandler.js +0 -6
  872. package/packages/sap.fe.macros/test/sap/fe/macros/qunit/macros/FilterBarHelper.qunit.js +0 -223
  873. package/packages/sap.fe.templates/src/sap/fe/templates/ObjectPage/view/fragments/HeaderImage.fragment.xml +0 -24
@@ -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,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);
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,R=false,T;return{s:function(){b=b.call(o);},n:function(){var e=b.next();n=e.done;return e;},e:function(e){R=true;T=e;},f:function(){try{if(!n&&b.return!=null)b.return();}finally{if(R)throw T;}}};}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,R;try{for(b=b.call(a);!(n=(F=b.next()).done);n=true){e.push(F.value);if(i&&e.length===i)break;}}catch(T){o=true;R=T;}finally{try{if(!n&&b["return"]!=null)b["return"]();}finally{if(o)throw R;}}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,Situations:false};_.DefaultEnvironmentCapabilities=D;function p(a,b,e,i,o){var n;var F=e+"/"+b;var R=typeof a;if(a===null){n={type:"Null",Null:null};}else if(R==="string"){n={type:"String",String:a};}else if(R==="boolean"){n={type:"Bool",Bool:a};}else if(R==="number"){n={type:"Int",Int:a};}else if(Array.isArray(a)){n={type:"Collection",Collection:a.map(function(T,U){return r(T,F+"/"+U,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(U,W){return r(U,b+"/"+W,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 R=a.$Type;i.type=R;}var T=[];Object.keys(a).forEach(function(U){if(U!=="$Type"&&U!=="$If"&&U!=="$Apply"&&U!=="$And"&&U!=="$Or"&&U!=="$Ne"&&U!=="$Gt"&&U!=="$Ge"&&U!=="$Lt"&&U!=="$Le"&&U!=="$Not"&&U!=="$Eq"&&!U.startsWith("@")){T.push(p(a[U],U,b,e,o));}else if(U.startsWith("@")){w(d({},U,a[U]),b,e,o);}});i.propertyValues=T;}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(R){var T=a[R];switch(R){case"@com.sap.vocabularies.UI.v1.HeaderFacets":if(!o.MicroChart){T=t(T);a[R]=T;}break;case"@com.sap.vocabularies.UI.v1.Identification":if(!o.IntentBasedNavigation){T=u(T);a[R]=T;}break;case"@com.sap.vocabularies.UI.v1.LineItem":if(!o.IntentBasedNavigation){T=u(T);a[R]=T;}if(!o.MicroChart){T=t(T);a[R]=T;}break;case"@com.sap.vocabularies.UI.v1.FieldGroup":if(!o.IntentBasedNavigation){T.Data=u(T.Data);a[R]=T;}if(!o.MicroChart){T.Data=t(T.Data);a[R]=T;}break;case"@com.sap.vocabularies.UI.v1.PresentationVariant":if(!o.Chart&&T.Visualizations){T.Visualizations=v(T.Visualizations);a[R]=T;}break;default:break;}var U=i;var W=R.split("@");if(W.length>2){U=s(b+"@"+W[1],e);R=W[2];}else{R=W[1];}var X=R.split("#");var Y=X[1];R=X[0];var Z={term:"".concat(R),qualifier:Y};var $=b+"@"+Z.term;if(Y){$+="#"+Y;}var a1=false;var b1=typeof T;if(T===null){Z.value={type:"Bool",Bool:T};}else if(b1==="string"){Z.value={type:"String",String:T};}else if(b1==="boolean"){Z.value={type:"Bool",Bool:T};}else if(b1==="number"){Z.value={type:"Int",Int:T};}else if(T.$If!==undefined){Z.value={type:"If",If:T.$If};}else if(T.$And!==undefined){Z.value={type:"And",And:T.$And};}else if(T.$Or!==undefined){Z.value={type:"Or",Or:T.$Or};}else if(T.$Not!==undefined){Z.value={type:"Not",Not:T.$Not};}else if(T.$Eq!==undefined){Z.value={type:"Eq",Eq:T.$Eq};}else if(T.$Ne!==undefined){Z.value={type:"Ne",Ne:T.$Ne};}else if(T.$Gt!==undefined){Z.value={type:"Gt",Gt:T.$Gt};}else if(T.$Ge!==undefined){Z.value={type:"Ge",Ge:T.$Ge};}else if(T.$Lt!==undefined){Z.value={type:"Lt",Lt:T.$Lt};}else if(T.$Le!==undefined){Z.value={type:"Le",Le:T.$Le};}else if(T.$Apply!==undefined){Z.value={type:"Apply",Apply:T.$Apply,Function:T.$Function};}else if(T.$Path!==undefined){Z.value={type:"Path",Path:T.$Path};}else if(T.$AnnotationPath!==undefined){Z.value={type:"AnnotationPath",AnnotationPath:T.$AnnotationPath};}else if(T.$Decimal!==undefined){Z.value={type:"Decimal",Decimal:parseFloat(T.$Decimal)};}else if(T.$EnumMember!==undefined){Z.value={type:"EnumMember",EnumMember:q(T.$EnumMember.split("/")[0])+"/"+T.$EnumMember.split("/")[1]};}else if(Array.isArray(T)){a1=true;Z.collection=T.map(function(g1,h1){return r(g1,$+"/"+h1,e,o);});if(T.length>0){if(T[0].hasOwnProperty("$PropertyPath")){Z.collection.type="PropertyPath";}else if(T[0].hasOwnProperty("$Path")){Z.collection.type="Path";}else if(T[0].hasOwnProperty("$NavigationPropertyPath")){Z.collection.type="NavigationPropertyPath";}else if(T[0].hasOwnProperty("$AnnotationPath")){Z.collection.type="AnnotationPath";}else if(T[0].hasOwnProperty("$Type")){Z.collection.type="Record";}else if(T[0].hasOwnProperty("$If")){Z.collection.type="If";}else if(T[0].hasOwnProperty("$Or")){Z.collection.type="Or";}else if(T[0].hasOwnProperty("$Eq")){Z.collection.type="Eq";}else if(T[0].hasOwnProperty("$Ne")){Z.collection.type="Ne";}else if(T[0].hasOwnProperty("$Not")){Z.collection.type="Not";}else if(T[0].hasOwnProperty("$Gt")){Z.collection.type="Gt";}else if(T[0].hasOwnProperty("$Ge")){Z.collection.type="Ge";}else if(T[0].hasOwnProperty("$Lt")){Z.collection.type="Lt";}else if(T[0].hasOwnProperty("$Le")){Z.collection.type="Le";}else if(T[0].hasOwnProperty("$And")){Z.collection.type="And";}else if(T[0].hasOwnProperty("$Apply")){Z.collection.type="Apply";}else if(typeof T[0]==="object"){Z.collection.type="Record";}else{Z.collection.type="String";}}}else{var c1={propertyValues:[]};if(T.$Type){var d1=T.$Type;c1.type="".concat(d1);}var e1=[];for(var f1 in T){if(f1!=="$Type"&&!f1.startsWith("@")){e1.push(p(T[f1],f1,$,e,o));}else if(f1.startsWith("@")){w(d({},f1,T[f1]),$,e,o);}}c1.propertyValues=e1;Z.record=c1;}Z.isCollection=a1;U.annotations.push(Z);F=R;};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(a,b,n){var e={_type:"TypeDefinition",name:b.replace(n+".",""),fullyQualifiedName:b,underlyingType:a.$UnderlyingType};return e;}function E(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 R=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=R;return o;}function G(e,o){if(!e.$Key&&e.$BaseType){return G(o["".concat(e.$BaseType)],o);}return e.$Key||[];}function H(e,a,n,b){var i=G(e,b);var o={_type:"EntityType",name:a.replace(n+".",""),fullyQualifiedName:a,keys:[],entityProperties:[],navigationProperties:[]};var F=Object.keys(e).filter(function(T){if(T!="$Key"&&T!="$kind"){return e[T].$kind==="Property";}}).map(function(T){return x(e[T],o,T);});var R=Object.keys(e).filter(function(T){if(T!="$Key"&&T!="$kind"){return e[T].$kind==="NavigationProperty";}}).map(function(T){return y(e[T],o,T);});o.keys=i.map(function(T){return F.find(function(U){return U.name===T;});}).filter(function(T){return T!==undefined;});o.entityProperties=F;o.navigationProperties=R;return o;}function I(a,b,n,e){var i="";var o="".concat(a);var F=a.substr(n.length+1);if(b.$IsBound){var R=b.$Parameter[0];i=R.$Type;if(R.$isCollection===true){o="".concat(a,"(Collection(").concat(i,"))");}else{o="".concat(a,"(").concat(i,")");}}else{o="".concat(e,"/").concat(F);}var T=b.$Parameter||[];return{_type:"Action",name:F,fullyQualifiedName:o,isBound:b.$IsBound,isFunction:false,sourceType:i,returnType:b.$ReturnType?b.$ReturnType.$Type:"",parameters:T.map(function(U){return{_type:"ActionParameter",isEntitySet:U.$Type===b.$EntitySetPath,fullyQualifiedName:"".concat(o,"/").concat(U.$Name),type:U.$Type};})};}function J(o){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:D;var i=o.getObject("/$");var n={};var F=[];var R=[];var T=[];var U=[];var W=[];var X=i.$EntityContainer;var Y="";var Z=Object.keys(i).filter(function(a){return i[a].$kind==="Schema";});if(Z&&Z.length>0){Y=Z[0].substr(0,Z[0].length-1);}else if(F&&F.length){Y=F[0].fullyQualifiedName.replace(F[0].name,"");Y=Y.substr(0,Y.length-1);}Object.keys(i).forEach(function(a){if(a!=="$kind"){switch(i[a].$kind){case"EntityType":var b=H(i[a],a,Y,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(h1){h1.ID=h1.ID||g([{Facet:h1}]);});}b.entityProperties.forEach(function(h1){if(!i.$Annotations[h1.fullyQualifiedName]){i.$Annotations[h1.fullyQualifiedName]={};}if(!i.$Annotations[h1.fullyQualifiedName]["@com.sap.vocabularies.UI.v1.DataFieldDefault"]){i.$Annotations[h1.fullyQualifiedName]["@com.sap.vocabularies.UI.v1.DataFieldDefault"]={$Type:"com.sap.vocabularies.UI.v1.DataField",Value:{$Path:h1.name}};}});F.push(b);break;case"ComplexType":var f1=E(i[a],a,Y);U.push(f1);break;case"TypeDefinition":var g1=C(i[a],a,Y);W.push(g1);break;}}});var $=i[X];Object.keys($).forEach(function(a){if(a!=="$kind"){switch($[a].$kind){case"EntitySet":var b=z($[a],a,X);R.push(b);break;case"Singleton":var f1=B($[a],a,X);T.push(f1);break;}}});var a1={};if(X){a1={name:X.replace(Y+".",""),fullyQualifiedName:X};}R.forEach(function(a){var b=$[a.name].$NavigationPropertyBinding;if(b){Object.keys(b).forEach(function(f1){var g1=R.find(function(h1){return h1.name===b[f1];});if(g1){a.navigationPropertyBinding[f1]=g1;}});}});var b1=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 b1=i[b];b1.forEach(function(f1){a.push(I(b,f1,Y,X));});return a;},[]);for(var c1 in i.$Annotations){w(i.$Annotations[c1],c1,n,e);}var d1=Object.keys(n).sort(function(a,b){return a.length>=b.length?1:-1;}).map(function(a){return n[a];});var e1=[];return{identification:"metamodelResult",version:"4.0",schema:{entityContainer:a1,entitySets:R,entityTypes:F,complexTypes:U,typeDefinitions:W,singletons:T,associations:[],associationSets:[],actions:b1,namespace:Y,annotations:{"metamodelResult":d1}},references:e1};}_.prepareEntityTypes=J;var M={};function K(o,a){var b=o.id;if(!M.hasOwnProperty(b)){var e=J(o,a);if(a&&a.Situations){M[b]=L(A.convertTypes(e));}else{M[b]=A.convertTypes(e);}}return M[b];}_.convertTypes=K;function L(a){a.entityTypes.forEach(function(e){var b=e.navigationProperties.find(function(n){return n.name==="SAP__Situation"||n.name==="_SAP__Situation";});if(b){e.annotations.FE={Situations:{term:"com.sap.vocabularies.FioriElements.v1.Situations",type:"Path",path:b.name,$target:b}};}});return a;}function N(o){delete M[o.id];}_.deleteModelCacheData=N;function O(o){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var a=K(o.getModel());var b=o.getPath();var e=b.split("/");var n=a.entitySets.find(function(l1){return l1.name===e[1];});if(!n){n=a.singletons.find(function(l1){return l1.name===e[1];});}var F=e.slice(2).join("/");var R=[n];while(F&&F.length>0&&F.startsWith("$NavigationPropertyBinding")){var T;var U=F.split("/");var W=0;var X=void 0,Y=void 0;U=U.slice(1);while(!X&&U.length>W&&U[W]!=="$NavigationPropertyBinding"){Y=U.slice(0,W+1).join("/");X=n&&n.navigationPropertyBinding[Y];W++;}if(!X){Y=U[0];}var Z=((T=Y)===null||T===void 0?void 0:T.split("/"))||[];var $=n&&n.entityType;var a1=c(Z),b1;try{var c1=function(){var l1=b1.value;var m1=$&&$.navigationProperties.find(function(n1){return n1.name===l1;});if(m1){R.push(m1);$=m1.targetType;}else{return"break";}};for(a1.s();!(b1=a1.n()).done;){var d1=c1();if(d1==="break")break;}}catch(e1){a1.e(e1);}finally{a1.f();}n=n&&X||n&&n.navigationPropertyBinding[U[0]];if(n){R.push(n);}U=U.slice(Z.length||1);if(U.length&&U[0]==="$"){U.shift();}F=U.join("/");}if(F.startsWith("$Type")){F=e.slice(3).join("/");}if(n&&F.length){var f1=n.entityType.resolvePath(F,i);if(f1){if(i){f1.visitedObjects=R.concat(f1.visitedObjects);}}else if(n.entityType&&n.entityType.actions){var g1=n.entityType&&n.entityType.actions;var h1=F.split("/");if(g1[h1[0]]){var i1=g1[h1[0]];if(h1[1]&&i1.parameters){var j1=h1[1];var k1=i1.parameters.find(function(l1){return l1.fullyQualifiedName.endsWith("/"+j1);});return k1;}else if(F.length===1){return i1;}}}return f1;}else{if(i){return{target:n,visitedObjects:R};}return n;}}_.convertMetaModelContext=O;function P(o,e){var a=O(o,true);var b;if(e&&e.getPath()!=="/"){b=P(e);}return Q(a,b);}_.getInvolvedDataModelObjects=P;function Q(a,b){var e=a.visitedObjects.filter(function(Z){return Z&&Z.hasOwnProperty("_type")&&Z._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 R=o.entityType;var i=1;var T;var U=[];while(i<e.length){T=e[i++];if(T._type==="NavigationProperty"){U.push(T.name);n.push(T);R=T.targetType;if(F&&F.navigationPropertyBinding.hasOwnProperty(U.join("/"))){F=F.navigationPropertyBinding[T.name];U=[];}else{F=undefined;}}if(T._type==="EntitySet"){F=T;R=F.entityType;}}if(b&&b.startingEntitySet!==o){var W=e.indexOf(b.startingEntitySet);if(W!==-1){var X=e.slice(0,W);b.startingEntitySet=o;b.navigationProperties=X.filter(function(Z){return Z._type==="NavigationProperty";}).concat(b.navigationProperties);}}var Y={startingEntitySet:o,targetEntitySet:F,targetEntityType:R,targetObject:a.target,navigationProperties:n,contextLocation:b};if(!Y.contextLocation){Y.contextLocation=Y;}return Y;}_.getInvolvedDataModelObjectFromPath=Q;return _;},false);
@@ -19,7 +19,8 @@ import {
19
19
  Action,
20
20
  Reference,
21
21
  EntityContainer,
22
- Singleton
22
+ Singleton,
23
+ TypeDefinition
23
24
  } from "@sap-ux/vocabularies-types/dist/Parser";
24
25
  import { Context } from "sap/ui/model";
25
26
  import { DataModelObjectPath } from "sap/fe/core/templating/DataModelPathHelper";
@@ -42,13 +43,15 @@ export type EnvironmentCapabilities = {
42
43
  MicroChart: boolean;
43
44
  UShell: boolean;
44
45
  IntentBasedNavigation: boolean;
46
+ Situations: boolean;
45
47
  };
46
48
 
47
49
  export const DefaultEnvironmentCapabilities = {
48
50
  Chart: true,
49
51
  MicroChart: true,
50
52
  UShell: true,
51
- IntentBasedNavigation: true
53
+ IntentBasedNavigation: true,
54
+ Situations: false
52
55
  };
53
56
 
54
57
  type MetaModelAction = {
@@ -663,6 +666,16 @@ function prepareSingleton(singletonDefinition: any, singletonName: string, entit
663
666
  return singletonObject;
664
667
  }
665
668
 
669
+ function prepareTypeDefinition(typeDefinition: any, typeName: string, namespace: string): TypeDefinition {
670
+ const typeObject: TypeDefinition = {
671
+ _type: "TypeDefinition",
672
+ name: typeName.replace(namespace + ".", ""),
673
+ fullyQualifiedName: typeName,
674
+ underlyingType: typeDefinition.$UnderlyingType
675
+ };
676
+ return typeObject;
677
+ }
678
+
666
679
  function prepareComplexType(complexTypeDefinition: any, complexTypeName: string, namespace: string): ComplexType {
667
680
  const complexTypeObject: ComplexType = {
668
681
  _type: "ComplexType",
@@ -790,6 +803,7 @@ export function prepareEntityTypes(
790
803
  const entitySets: EntitySet[] = [];
791
804
  const singletons: Singleton[] = [];
792
805
  const complexTypes: ComplexType[] = [];
806
+ const typeDefinitions: TypeDefinition[] = [];
793
807
  const entityContainerName = oMetaModelData.$EntityContainer;
794
808
  let namespace = "";
795
809
  const schemaKeys = Object.keys(oMetaModelData).filter(metamodelKey => oMetaModelData[metamodelKey].$kind === "Schema");
@@ -838,6 +852,10 @@ export function prepareEntityTypes(
838
852
  const complexType = prepareComplexType(oMetaModelData[sObjectName], sObjectName, namespace);
839
853
  complexTypes.push(complexType);
840
854
  break;
855
+ case "TypeDefinition":
856
+ const typeDefinition = prepareTypeDefinition(oMetaModelData[sObjectName], sObjectName, namespace);
857
+ typeDefinitions.push(typeDefinition);
858
+ break;
841
859
  }
842
860
  }
843
861
  });
@@ -906,6 +924,7 @@ export function prepareEntityTypes(
906
924
  entitySets,
907
925
  entityTypes,
908
926
  complexTypes,
927
+ typeDefinitions,
909
928
  singletons,
910
929
  associations: [],
911
930
  associationSets: [],
@@ -932,11 +951,42 @@ export function convertTypes(oMetaModel: ODataMetaModel, oCapabilities?: Environ
932
951
  const sMetaModelId = (oMetaModel as any).id;
933
952
  if (!mMetaModelMap.hasOwnProperty(sMetaModelId)) {
934
953
  const parsedOutput = prepareEntityTypes(oMetaModel, oCapabilities);
935
- mMetaModelMap[sMetaModelId] = AnnotationConverter.convertTypes(parsedOutput);
954
+ if (oCapabilities && oCapabilities.Situations) {
955
+ // Only Experimental Feature!
956
+ mMetaModelMap[sMetaModelId] = addSyntheticAnnotations(AnnotationConverter.convertTypes(parsedOutput));
957
+ } else {
958
+ mMetaModelMap[sMetaModelId] = AnnotationConverter.convertTypes(parsedOutput);
959
+ }
936
960
  }
937
961
  return (mMetaModelMap[sMetaModelId] as any) as ConverterOutput;
938
962
  }
939
963
 
964
+ function addSyntheticAnnotations(metaModel: ParserOutput) {
965
+ // [Situations POC] Determine mixed-in situations navigation property.
966
+ // This will probably happen either
967
+ // - by a fixed navigation property name ("SAP__Situation"), or
968
+ // - by an entity type annotation that declares the navigation property to use (similar to com.sap.vocabularies.Common.v1.Messages)
969
+ //
970
+ // For now, we add an 'invented' annotation "com.sap.vocabularies.FioriElements.v1.Situations" consisting of a path to the situations navigation property
971
+ ((metaModel as any) as ConverterOutput).entityTypes.forEach(entityType => {
972
+ const situationsNavProp = entityType.navigationProperties.find(
973
+ navProp => navProp.name === "SAP__Situation" || navProp.name === "_SAP__Situation"
974
+ );
975
+
976
+ if (situationsNavProp) {
977
+ (entityType.annotations as any).FE = {
978
+ Situations: {
979
+ term: "com.sap.vocabularies.FioriElements.v1.Situations",
980
+ type: "Path",
981
+ path: situationsNavProp.name,
982
+ $target: situationsNavProp
983
+ }
984
+ };
985
+ }
986
+ });
987
+ return metaModel;
988
+ }
989
+
940
990
  export function deleteModelCacheData(oMetaModel: ODataMetaModel) {
941
991
  delete mMetaModelMap[(oMetaModel as any).id];
942
992
  }
@@ -990,7 +1040,13 @@ export function convertMetaModelContext(oMetaModelContext: Context<ODataMetaMode
990
1040
  localObjects.push(targetEntitySet);
991
1041
  }
992
1042
  // Re-calculating the relative path
993
- relativePath = relativeSplit.slice(aNavProps.length || 1).join("/");
1043
+ // As each navigation name is enclosed between '$NavigationPropertyBinding' and '$' (to be able to access the entityset easily in the metamodel)
1044
+ // we need to remove the closing '$' to be able to switch to the next navigation
1045
+ relativeSplit = relativeSplit.slice(aNavProps.length || 1);
1046
+ if (relativeSplit.length && relativeSplit[0] === "$") {
1047
+ relativeSplit.shift();
1048
+ }
1049
+ relativePath = relativeSplit.join("/");
994
1050
  }
995
1051
  if (relativePath.startsWith("$Type")) {
996
1052
  // We're anyway going to look on the entityType...
@@ -2,14 +2,14 @@
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 (UIFormatters, PropertyHelper) {
5
+ sap.ui.define(["sap/fe/core/templating/DisplayModeFormatter", "sap/fe/core/templating/PropertyHelper"], function (DisplayModeFormatter, PropertyHelper) {
6
6
  "use strict";
7
7
 
8
8
  var _exports = {};
9
9
  var isProperty = PropertyHelper.isProperty;
10
10
  var getAssociatedUnitProperty = PropertyHelper.getAssociatedUnitProperty;
11
11
  var getAssociatedCurrencyProperty = PropertyHelper.getAssociatedCurrencyProperty;
12
- var getDisplayMode = UIFormatters.getDisplayMode;
12
+ var getDisplayMode = DisplayModeFormatter.getDisplayMode;
13
13
 
14
14
  /**
15
15
  * Identifies if the given dataFieldAbstract that is passed is a "DataFieldForActionAbstract".
@@ -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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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=
385
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkRhdGFGaWVsZC50cyJdLCJuYW1lcyI6WyJpc0RhdGFGaWVsZEZvckFjdGlvbkFic3RyYWN0IiwiZGF0YUZpZWxkIiwiaGFzT3duUHJvcGVydHkiLCJpc0RhdGFGaWVsZFR5cGVzIiwiaXNEYXRhRmllbGRBbHdheXNIaWRkZW4iLCJhbm5vdGF0aW9ucyIsIlVJIiwiSGlkZGVuIiwidmFsdWVPZiIsIlZhbHVlIiwiJHRhcmdldCIsImdldFNlbWFudGljT2JqZWN0UGF0aCIsImNvbnZlcnRlckNvbnRleHQiLCJvYmplY3QiLCJwcm9wZXJ0eSIsIkNvbW1vbiIsIlNlbWFudGljT2JqZWN0IiwidW5kZWZpbmVkIiwiZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aCIsImZ1bGx5UXVhbGlmaWVkTmFtZSIsImlzUHJvcGVydHkiLCJfZ2V0TmF2aWdhdGlvblBhdGhQcmVmaXgiLCJwYXRoIiwiaW5kZXhPZiIsInN1YnN0cmluZyIsImxhc3RJbmRleE9mIiwiX2NvbGxlY3RBZGRpdGlvbmFsUHJvcGVydGllc0ZvckFuYWx5dGljYWxUYWJsZSIsInRhcmdldCIsIm5hdmlnYXRpb25QYXRoUHJlZml4IiwidGFibGVUeXBlIiwicmVsYXRlZFByb3BlcnRpZXMiLCJoaWRkZW5Bbm5vdGF0aW9uIiwiX3R5cGUiLCJoaWRkZW5Bbm5vdGF0aW9uUHJvcGVydHlQYXRoIiwiYWRkaXRpb25hbFByb3BlcnRpZXMiLCJjb2xsZWN0UmVsYXRlZFByb3BlcnRpZXMiLCJpZ25vcmVTZWxmIiwicHJvcGVydGllcyIsIl9wdXNoVW5pcXVlIiwia2V5IiwidmFsdWUiLCJPYmplY3QiLCJrZXlzIiwiX2FwcGVuZFRlbXBsYXRlIiwiZXhwb3J0U2V0dGluZ3NUZW1wbGF0ZSIsInRleHRBbm5vdGF0aW9uIiwiVGV4dCIsInZhbHVlSW5kZXgiLCJ0YXJnZXRWYWx1ZSIsImN1cnJlbmN5T3JVb01JbmRleCIsImV4cG9ydFNldHRpbmdzV3JhcHBpbmciLCJkYXRhTW9kZWxPYmplY3RQYXRoIiwiZ2V0RGF0YU1vZGVsT2JqZWN0UGF0aCIsInRleHRBbm5vdGF0aW9uUHJvcGVydHlQYXRoIiwiZGlzcGxheU1vZGUiLCJnZXREaXNwbGF5TW9kZSIsImRlc2NyaXB0aW9uSW5kZXgiLCJ2aXN1YWxTZXR0aW5nc1RvQmVFeGNsdWRlZCIsImN1cnJlbmN5T3JVb01Qcm9wZXJ0eSIsImdldEFzc29jaWF0ZWRDdXJyZW5jeVByb3BlcnR5IiwiZ2V0QXNzb2NpYXRlZFVuaXRQcm9wZXJ0eSIsImN1cnJlbmN5T3JVbml0QW5ub3RhdGlvbiIsIk1lYXN1cmVzIiwiSVNPQ3VycmVuY3kiLCJVbml0IiwibmFtZSIsIlRhcmdldCIsIlZpc3VhbGl6YXRpb24iLCJkYXRhUG9pbnRQcm9wZXJ0eSIsIlRhcmdldFZhbHVlIiwiTWF4aW11bVZhbHVlIiwidG9TdHJpbmciLCJEYXRhRmllbGREZWZhdWx0IiwiJFR5cGUiLCJkYXRhUG9pbnREZWZhdWx0UHJvcGVydHkiLCJleHBvcnRTZXR0aW5nc0NvbnRhY3RQcm9wZXJ0eSIsImZuIiwibGVuZ3RoIiwiY29sbGVjdFJlbGF0ZWRQcm9wZXJ0aWVzUmVjdXJzaXZlbHkiLCJEYXRhIiwiZm9yRWFjaCIsImlubmVyRGF0YUZpZWxkIiwiZ2V0RGF0YUZpZWxkRGF0YVR5cGUiLCJvRGF0YUZpZWxkIiwic0RhdGFUeXBlIiwidHlwZSIsInNEYXRhVHlwZUZvckRhdGFGaWVsZEZvckFubm90YXRpb24iLCIkUGF0aCJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7OztBQXlCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLFdBQVNBLDRCQUFULENBQXNDQyxTQUF0QyxFQUF1SDtBQUM3SCxXQUFRQSxTQUFELENBQStDQyxjQUEvQyxDQUE4RCxRQUE5RCxDQUFQO0FBQ0E7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7QUFDTyxXQUFTQyxnQkFBVCxDQUEwQkYsU0FBMUIsRUFBMEY7QUFDaEcsV0FBUUEsU0FBRCxDQUE4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Q0VVLFVBQUQsQ0FBdUNqQixNQUR4QyxpRUFDQyxTQUErQ3hELE9BRGhELDhFQUNBLGlCQUF1RUQsS0FEdkUsMERBQ0Esc0JBQThFQyxPQUE5RSxDQUFzRjJFLElBRHRGLENBREQ7QUFHQSxXQUpNLE1BSUE7QUFDTjtBQUNBRCxZQUFBQSxTQUFTLEdBQUduRSxTQUFaO0FBQ0E7QUFDRCxTQVhELE1BV087QUFDTm1FLFVBQUFBLFNBQVMsR0FBR25FLFNBQVo7QUFDQTs7QUFDRDtBQTdCRjs7QUFnQ0EsV0FBT21FLFNBQVA7QUFDQSxHQW5DTSIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcblx0Q29tbXVuaWNhdGlvbkFubm90YXRpb25UeXBlcyxcblx0Q29udGFjdCxcblx0RGF0YUZpZWxkLFxuXHREYXRhRmllbGRBYnN0cmFjdFR5cGVzLFxuXHREYXRhRmllbGRGb3JBY3Rpb25BYnN0cmFjdFR5cGVzLFxuXHREYXRhRmllbGRGb3JBbm5vdGF0aW9uLFxuXHREYXRhRmllbGRUeXBlcyxcblx0RGF0YVBvaW50LFxuXHRVSUFubm90YXRpb25UeXBlc1xufSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXNcIjtcbmltcG9ydCAqIGFzIEVkbSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXMvZGlzdC9FZG1cIjtcbmltcG9ydCB7IGdldERpc3BsYXlNb2RlLCBQcm9wZXJ0eU9yUGF0aCB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL0Rpc3BsYXlNb2RlRm9ybWF0dGVyXCI7XG5pbXBvcnQgeyBQcm9wZXJ0eSB9IGZyb20gXCJAc2FwLXV4L2Fubm90YXRpb24tY29udmVydGVyXCI7XG5pbXBvcnQgeyBnZXRBc3NvY2lhdGVkQ3VycmVuY3lQcm9wZXJ0eSwgZ2V0QXNzb2NpYXRlZFVuaXRQcm9wZXJ0eSwgaXNQcm9wZXJ0eSB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL1Byb3BlcnR5SGVscGVyXCI7XG5pbXBvcnQgQ29udmVydGVyQ29udGV4dCBmcm9tIFwiLi4vQ29udmVydGVyQ29udGV4dFwiO1xuaW1wb3J0IHsgVGFibGVUeXBlIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvY29udHJvbHMvQ29tbW9uL1RhYmxlXCI7XG5cbmV4cG9ydCB0eXBlIENvbXBsZXhQcm9wZXJ0eUluZm8gPSB7XG5cdHByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIFByb3BlcnR5Pjtcblx0YWRkaXRpb25hbFByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIFByb3BlcnR5Pjtcblx0ZXhwb3J0U2V0dGluZ3NUZW1wbGF0ZT86IHN0cmluZztcblx0ZXhwb3J0U2V0dGluZ3NXcmFwcGluZz86IGJvb2xlYW47XG5cdGV4cG9ydFNldHRpbmdzQ29udGFjdFByb3BlcnR5Pzogc3RyaW5nO1xuXHR2aXN1YWxTZXR0aW5nc1RvQmVFeGNsdWRlZD86IHN0cmluZztcbn07XG5cbi8qKlxuICogSWRlbnRpZmllcyBpZiB0aGUgZ2l2ZW4gZGF0YUZpZWxkQWJzdHJhY3QgdGhhdCBpcyBwYXNzZWQgaXMgYSBcIkRhdGFGaWVsZEZvckFjdGlvbkFic3RyYWN0XCIuXG4gKiBEYXRhRmllbGRGb3JBY3Rpb25BYnN0cmFjdCBoYXMgYW4gaW5saW5lIGFjdGlvbiBkZWZpbmVkLlxuICpcbiAqIEBwYXJhbSB7RGF0YUZpZWxkQWJzdHJhY3RUeXBlc30gZGF0YUZpZWxkIERhdGEgZmllbGQgdG8gYmUgZXZhbHVhdGVkXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVmFsaWRhdGVzIHRoYXQgZGF0YUZpZWxkIGlzIGEgRGF0YUZpZWxkRm9yQWN0aW9uQWJzdHJhY3RUeXBlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0RhdGFGaWVsZEZvckFjdGlvbkFic3RyYWN0KGRhdGFGaWVsZDogRGF0YUZpZWxkQWJzdHJhY3RUeXBlcyk6IGRhdGFGaWVsZCBpcyBEYXRhRmllbGRGb3JBY3Rpb25BYnN0cmFjdFR5cGVzIHtcblx0cmV0dXJuIChkYXRhRmllbGQgYXMgRGF0YUZpZWxkRm9yQWN0aW9uQWJzdHJhY3RUeXBlcykuaGFzT3duUHJvcGVydHkoXCJBY3Rpb25cIik7XG59XG5cbi8qKlxuICogSWRlbnRpZmllcyBpZiB0aGUgZ2l2ZW4gZGF0YUZpZWxkQWJzdHJhY3QgdGhhdCBpcyBwYXNzZWQgaXMgYSBcIkRhdGFGaWVsZFwiLlxuICogRGF0YUZpZWxkIGhhcyBhIHZhbHVlIGRlZmluZWQuXG4gKlxuICogQHBhcmFtIHtEYXRhRmllbGRBYnN0cmFjdFR5cGVzfSBkYXRhRmllbGQgRGF0YSBmaWVsZCB0byBiZSBldmFsdWF0ZWRcbiAqIEByZXR1cm5zIHtib29sZWFufSBWYWxpZGF0ZSB0aGF0IGRhdGFGaWVsZCBpcyBhIERhdGFGaWVsZFR5cGVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0RhdGFGaWVsZFR5cGVzKGRhdGFGaWVsZDogRGF0YUZpZWxkQWJzdHJhY3RUeXBlcyk6IGRhdGFGaWVsZCBpcyBEYXRhRmllbGRUeXBlcyB7XG5cdHJldHVybiAoZGF0YUZpZWxkIGFzIERhdGFGaWVsZFR5cGVzKS5oYXNPd25Qcm9wZXJ0eShcIlZhbHVlXCIpO1xufVxuXG4vKipcbiAqIFJldHVybnMgd2hldGhlciBnaXZlbiBkYXRhIGZpZWxkIGhhcyBhIHN0YXRpYyBoaWRkZW4gYW5ub3RhdGlvbi5cbiAqXG4gKiBAcGFyYW0ge0RhdGFGaWVsZEFic3RyYWN0VHlwZXN9IGRhdGFGaWVsZCBUaGUgZGF0YWZpZWxkIHRvIGNoZWNrXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gYHRydWVgIGlmIGRhdGFmaWVsZCBvciByZWZlcmVuY2VkIHByb3BlcnR5IGhhcyBhIHN0YXRpYyBIaWRkZW4gYW5ub3RhdGlvbiwgZmFsc2UgZWxzZVxuICogQHByaXZhdGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRGF0YUZpZWxkQWx3YXlzSGlkZGVuKGRhdGFGaWVsZDogRGF0YUZpZWxkQWJzdHJhY3RUeXBlcyk6IGJvb2xlYW4ge1xuXHRyZXR1cm4gKFxuXHRcdGRhdGFGaWVsZC5hbm5vdGF0aW9ucz8uVUk/LkhpZGRlbj8udmFsdWVPZigpID09PSB0cnVlIHx8XG5cdFx0KGlzRGF0YUZpZWxkVHlwZXMoZGF0YUZpZWxkKSAmJiBkYXRhRmllbGQuVmFsdWU/LiR0YXJnZXQ/LmFubm90YXRpb25zPy5VST8uSGlkZGVuID09PSB0cnVlKVxuXHQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2VtYW50aWNPYmplY3RQYXRoKGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQsIG9iamVjdDogYW55KTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcblx0aWYgKHR5cGVvZiBvYmplY3QgPT09IFwib2JqZWN0XCIpIHtcblx0XHRpZiAoaXNEYXRhRmllbGRUeXBlcyhvYmplY3QpICYmIG9iamVjdC5WYWx1ZT8uJHRhcmdldCkge1xuXHRcdFx0Y29uc3QgcHJvcGVydHkgPSBvYmplY3QuVmFsdWU/LiR0YXJnZXQ7XG5cdFx0XHRpZiAocHJvcGVydHk/LmFubm90YXRpb25zPy5Db21tb24/LlNlbWFudGljT2JqZWN0ICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0cmV0dXJuIGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5U2V0QmFzZWRBbm5vdGF0aW9uUGF0aChwcm9wZXJ0eT8uZnVsbHlRdWFsaWZpZWROYW1lKTtcblx0XHRcdH1cblx0XHR9IGVsc2UgaWYgKGlzUHJvcGVydHkob2JqZWN0KSkge1xuXHRcdFx0aWYgKG9iamVjdD8uYW5ub3RhdGlvbnM/LkNvbW1vbj8uU2VtYW50aWNPYmplY3QgIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0XHRyZXR1cm4gY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlTZXRCYXNlZEFubm90YXRpb25QYXRoKG9iamVjdD8uZnVsbHlRdWFsaWZpZWROYW1lKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0cmV0dXJuIHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBuYXZpZ2F0aW9uIHBhdGggcHJlZml4IGZvciBhIHByb3BlcnR5IHBhdGguXG4gKlxuICogQHBhcmFtIHBhdGggVGhlIHByb3BlcnR5IHBhdGggRm9yIGUuZy4gL0VudGl0eVR5cGUvTmF2aWdhdGlvbi9Qcm9wZXJ0eVxuICogQHJldHVybnMge3N0cmluZ30gVGhlIG5hdmlnYXRpb24gcGF0aCBwcmVmaXggRm9yIGUuZy4gL0VudGl0eVR5cGUvTmF2aWdhdGlvbi9cbiAqL1xuZnVuY3Rpb24gX2dldE5hdmlnYXRpb25QYXRoUHJlZml4KHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG5cdHJldHVybiBwYXRoLmluZGV4T2YoXCIvXCIpID4gLTEgPyBwYXRoLnN1YnN0cmluZygwLCBwYXRoLmxhc3RJbmRleE9mKFwiL1wiKSArIDEpIDogXCJcIjtcbn1cblxuLyoqXG4gKiBDb2xsZWN0IGFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgdGhlIEFMUCB0YWJsZSB1c2UtY2FzZS5cbiAqXG4gKiBGb3IgZS5nLiBJZiBVSS5IaWRkZW4gcG9pbnRzIHRvIGEgcHJvcGVydHksIGluY2x1ZGUgdGhpcyBwcm9wZXJ0eSBpbiB0aGUgYWRkaXRpb25hbFByb3BlcnRpZXMgb2YgQ29tcGxleFByb3BlcnR5SW5mbyBvYmplY3QuXG4gKiBAcGFyYW0gdGFyZ2V0IFByb3BlcnR5IG9yIERhdGFGaWVsZCBiZWluZyBwcm9jZXNzZWRcbiAqIEBwYXJhbSBuYXZpZ2F0aW9uUGF0aFByZWZpeCBOYXZpZ2F0aW9uIHBhdGggcHJlZml4LCBhcHBsaWNhYmxlIGluIGNhc2Ugb2YgbmF2aWdhdGlvbiBwcm9wZXJ0aWVzLlxuICogQHBhcmFtIHRhYmxlVHlwZSBUYWJsZSB0eXBlLlxuICogQHBhcmFtIHJlbGF0ZWRQcm9wZXJ0aWVzIFRoZSByZWxhdGVkIHByb3BlcnRpZXMgaWRlbnRpZmllZCBzbyBmYXIuXG4gKiBAcmV0dXJucyB7Q29tcGxleFByb3BlcnR5SW5mb30gVGhlIHJlbGF0ZWQgcHJvcGVydGllcyBpZGVudGlmaWVkLlxuICovXG5mdW5jdGlvbiBfY29sbGVjdEFkZGl0aW9uYWxQcm9wZXJ0aWVzRm9yQW5hbHl0aWNhbFRhYmxlKFxuXHR0YXJnZXQ6IEVkbS5QcmltaXRpdmVUeXBlLFxuXHRuYXZpZ2F0aW9uUGF0aFByZWZpeDogc3RyaW5nLFxuXHR0YWJsZVR5cGU6IFRhYmxlVHlwZSxcblx0cmVsYXRlZFByb3BlcnRpZXM6IENvbXBsZXhQcm9wZXJ0eUluZm9cbik6IENvbXBsZXhQcm9wZXJ0eUluZm8ge1xuXHRpZiAodGFibGVUeXBlID09PSBcIkFuYWx5dGljYWxUYWJsZVwiKSB7XG5cdFx0Y29uc3QgaGlkZGVuQW5ub3RhdGlvbiA9IHRhcmdldC5hbm5vdGF0aW9ucz8uVUk/LkhpZGRlbjtcblx0XHRpZiAoaGlkZGVuQW5ub3RhdGlvbj8ucGF0aCAmJiBoaWRkZW5Bbm5vdGF0aW9uLiR0YXJnZXQ/Ll90eXBlID09PSBcIlByb3BlcnR5XCIpIHtcblx0XHRcdGNvbnN0IGhpZGRlbkFubm90YXRpb25Qcm9wZXJ0eVBhdGggPSBuYXZpZ2F0aW9uUGF0aFByZWZpeCArIGhpZGRlbkFubm90YXRpb24ucGF0aDtcblx0XHRcdC8vIFRoaXMgcHJvcGVydHkgc2hvdWxkIGJlIGFkZGVkIHRvIGFkZGl0aW9uYWxQcm9wZXJ0aWVzIG1hcCBmb3IgdGhlIEFMUCB0YWJsZSB1c2UtY2FzZS5cblx0XHRcdHJlbGF0ZWRQcm9wZXJ0aWVzLmFkZGl0aW9uYWxQcm9wZXJ0aWVzW2hpZGRlbkFubm90YXRpb25Qcm9wZXJ0eVBhdGhdID0gaGlkZGVuQW5ub3RhdGlvbi4kdGFyZ2V0O1xuXHRcdH1cblx0fVxuXHRyZXR1cm4gcmVsYXRlZFByb3BlcnRpZXM7XG59XG5cbi8qKlxuICogQ29sbGVjdCByZWxhdGVkIHByb3BlcnRpZXMgZnJvbSBhIHByb3BlcnR5J3MgYW5ub3RhdGlvbnMuXG4gKlxuICogQHBhcmFtIHBhdGggVGhlIHByb3BlcnR5IHBhdGhcbiAqIEBwYXJhbSBwcm9wZXJ0eSBUaGUgcHJvcGVydHkgdG8gYmUgY29uc2lkZXJlZFxuICogQHBhcmFtIGNvbnZlcnRlckNvbnRleHQgVGhlIGNvbnZlcnRlciBjb250ZXh0XG4gKiBAcGFyYW0gaWdub3JlU2VsZiBXaGV0aGVyIHRvIGV4Y2x1ZGUgdGhlIHNhbWUgcHJvcGVydHkgZnJvbSByZWxhdGVkIHByb3BlcnRpZXMuXG4gKiBAcGFyYW0gdGFibGVUeXBlIFRoZSB0YWJsZSB0eXBlLlxuICogQHBhcmFtIHJlbGF0ZWRQcm9wZXJ0aWVzIFRoZSByZWxhdGVkIHByb3BlcnRpZXMgaWRlbnRpZmllZCBzbyBmYXIuXG4gKiBAcmV0dXJucyB7Q29tcGxleFByb3BlcnR5SW5mb30gVGhlIHJlbGF0ZWQgcHJvcGVydGllcyBpZGVudGlmaWVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29sbGVjdFJlbGF0ZWRQcm9wZXJ0aWVzKFxuXHRwYXRoOiBzdHJpbmcsXG5cdHByb3BlcnR5OiBFZG0uUHJpbWl0aXZlVHlwZSxcblx0Y29udmVydGVyQ29udGV4dDogQ29udmVydGVyQ29udGV4dCxcblx0aWdub3JlU2VsZjogYm9vbGVhbixcblx0dGFibGVUeXBlOiBUYWJsZVR5cGUsXG5cdHJlbGF0ZWRQcm9wZXJ0aWVzOiBDb21wbGV4UHJvcGVydHlJbmZvID0geyBwcm9wZXJ0aWVzOiB7fSwgYWRkaXRpb25hbFByb3BlcnRpZXM6IHt9IH1cbik6IENvbXBsZXhQcm9wZXJ0eUluZm8ge1xuXHQvKipcblx0ICogSGVscGVyIHRvIHB1c2ggdW5pcXVlIHJlbGF0ZWQgcHJvcGVydGllcy5cblx0ICpcblx0ICogQHBhcmFtIGtleSBUaGUgcHJvcGVydHkgcGF0aFxuXHQgKiBAcGFyYW0gdmFsdWUgVGhlIHByb3BlcnRpZXMgb2JqZWN0IGNvbnRhaW5pbmcgdmFsdWUgcHJvcGVydHksIGRlc2NyaXB0aW9uIHByb3BlcnR5Li4uXG5cdCAqIEByZXR1cm5zIEluZGV4IGF0IHdoaWNoIHRoZSBwcm9wZXJ0eSBpcyBhdmFpbGFibGVcblx0ICovXG5cdGZ1bmN0aW9uIF9wdXNoVW5pcXVlKGtleTogc3RyaW5nLCB2YWx1ZTogUHJvcGVydHkpOiBudW1iZXIge1xuXHRcdGlmICghcmVsYXRlZFByb3BlcnRpZXMucHJvcGVydGllcy5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG5cdFx0XHRyZWxhdGVkUHJvcGVydGllcy5wcm9wZXJ0aWVzW2tleV0gPSB2YWx1ZTtcblx0XHR9XG5cdFx0cmV0dXJuIE9iamVjdC5rZXlzKHJlbGF0ZWRQcm9wZXJ0aWVzLnByb3BlcnRpZXMpLmluZGV4T2Yoa2V5KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBIZWxwZXIgdG8gYXBwZW5kIHRoZSBleHBvcnQgc2V0dGluZ3MgdGVtcGxhdGUgd2l0aCBhIGZvcm1hdHRlZCB0ZXh0LlxuXHQgKlxuXHQgKiBAcGFyYW0gdmFsdWUgRm9ybWF0dGVkIHRleHRcblx0ICovXG5cdGZ1bmN0aW9uIF9hcHBlbmRUZW1wbGF0ZSh2YWx1ZTogc3RyaW5nKSB7XG5cdFx0cmVsYXRlZFByb3BlcnRpZXMuZXhwb3J0U2V0dGluZ3NUZW1wbGF0ZSA9IHJlbGF0ZWRQcm9wZXJ0aWVzLmV4cG9ydFNldHRpbmdzVGVtcGxhdGVcblx0XHRcdD8gYCR7cmVsYXRlZFByb3BlcnRpZXMuZXhwb3J0U2V0dGluZ3NUZW1wbGF0ZX0ke3ZhbHVlfWBcblx0XHRcdDogYCR7dmFsdWV9YDtcblx0fVxuXG5cdGlmIChwYXRoICYmIHByb3BlcnR5KSB7XG5cdFx0Y29uc3QgbmF2aWdhdGlvblBhdGhQcmVmaXggPSBfZ2V0TmF2aWdhdGlvblBhdGhQcmVmaXgocGF0aCk7XG5cblx0XHQvLyBDaGVjayBmb3IgVGV4dCBhbm5vdGF0aW9uLlxuXHRcdGNvbnN0IHRleHRBbm5vdGF0aW9uID0gcHJvcGVydHkuYW5ub3RhdGlvbnM/LkNvbW1vbj8uVGV4dDtcblx0XHRsZXQgdmFsdWVJbmRleDogbnVtYmVyO1xuXHRcdGxldCB0YXJnZXRWYWx1ZTogc3RyaW5nO1xuXHRcdGxldCBjdXJyZW5jeU9yVW9NSW5kZXg6IG51bWJlcjtcblxuXHRcdGlmIChyZWxhdGVkUHJvcGVydGllcy5leHBvcnRTZXR0aW5nc1RlbXBsYXRlKSB7XG5cdFx0XHQvLyBGaWVsZEdyb3VwIHVzZS1jYXNlLiBOZWVkIHRvIGFkZCBlYWNoIEZpZWxkIGluIG5ldyBsaW5lLlxuXHRcdFx0X2FwcGVuZFRlbXBsYXRlKFwiXFxuXCIpO1xuXHRcdFx0cmVsYXRlZFByb3BlcnRpZXMuZXhwb3J0U2V0dGluZ3NXcmFwcGluZyA9IHRydWU7XG5cdFx0fVxuXG5cdFx0aWYgKHRleHRBbm5vdGF0aW9uPy5wYXRoICYmIHRleHRBbm5vdGF0aW9uPy4kdGFyZ2V0KSB7XG5cdFx0XHQvLyBDaGVjayBmb3IgVGV4dCBBcnJhbmdlbWVudC5cblx0XHRcdGNvbnN0IGRhdGFNb2RlbE9iamVjdFBhdGggPSBjb252ZXJ0ZXJDb250ZXh0LmdldERhdGFNb2RlbE9iamVjdFBhdGgoKTtcblx0XHRcdGNvbnN0IHRleHRBbm5vdGF0aW9uUHJvcGVydHlQYXRoID0gbmF2aWdhdGlvblBhdGhQcmVmaXggKyB0ZXh0QW5ub3RhdGlvbi5wYXRoO1xuXHRcdFx0Y29uc3QgZGlzcGxheU1vZGUgPSBnZXREaXNwbGF5TW9kZShwcm9wZXJ0eSBhcyBQcm9wZXJ0eU9yUGF0aDxQcm9wZXJ0eT4sIGRhdGFNb2RlbE9iamVjdFBhdGgpO1xuXHRcdFx0bGV0IGRlc2NyaXB0aW9uSW5kZXg6IG51bWJlcjtcblx0XHRcdHN3aXRjaCAoZGlzcGxheU1vZGUpIHtcblx0XHRcdFx0Y2FzZSBcIlZhbHVlXCI6XG5cdFx0XHRcdFx0dmFsdWVJbmRleCA9IF9wdXNoVW5pcXVlKHBhdGgsIHByb3BlcnR5KTtcblx0XHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske3ZhbHVlSW5kZXh9fWApO1xuXHRcdFx0XHRcdHJlbGF0ZWRQcm9wZXJ0aWVzLnZpc3VhbFNldHRpbmdzVG9CZUV4Y2x1ZGVkID0gdGV4dEFubm90YXRpb25Qcm9wZXJ0eVBhdGg7XG5cdFx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdFx0Y2FzZSBcIkRlc2NyaXB0aW9uXCI6XG5cdFx0XHRcdFx0Ly8gS2VlcCB2YWx1ZSB3aGVuIGV4cG9ydGluZyAoc3BsaXQgbW9kZSkgb24gdGV4dCBBcnJhbmdlbWVudCBkZWZpbmVkIGFzICNUZXh0T25seSAoT25seSB2YWx1ZXMgYXJlIGV4cGVjdGVkIG9uIHBhc3RlIGZyb20gRXhjZWwgZnVuY3Rpb25hbGl0eSlcblx0XHRcdFx0XHRfcHVzaFVuaXF1ZShwYXRoLCBwcm9wZXJ0eSk7XG5cdFx0XHRcdFx0ZGVzY3JpcHRpb25JbmRleCA9IF9wdXNoVW5pcXVlKHRleHRBbm5vdGF0aW9uUHJvcGVydHlQYXRoLCB0ZXh0QW5ub3RhdGlvbi4kdGFyZ2V0KTtcblx0XHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske2Rlc2NyaXB0aW9uSW5kZXh9fWApO1xuXHRcdFx0XHRcdHJlbGF0ZWRQcm9wZXJ0aWVzLnZpc3VhbFNldHRpbmdzVG9CZUV4Y2x1ZGVkID0gcGF0aDtcblx0XHRcdFx0XHRicmVhaztcblxuXHRcdFx0XHRjYXNlIFwiVmFsdWVEZXNjcmlwdGlvblwiOlxuXHRcdFx0XHRcdHZhbHVlSW5kZXggPSBfcHVzaFVuaXF1ZShwYXRoLCBwcm9wZXJ0eSk7XG5cdFx0XHRcdFx0ZGVzY3JpcHRpb25JbmRleCA9IF9wdXNoVW5pcXVlKHRleHRBbm5vdGF0aW9uUHJvcGVydHlQYXRoLCB0ZXh0QW5ub3RhdGlvbi4kdGFyZ2V0KTtcblx0XHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske3ZhbHVlSW5kZXh9fSAoeyR7ZGVzY3JpcHRpb25JbmRleH19KWApO1xuXHRcdFx0XHRcdGJyZWFrO1xuXG5cdFx0XHRcdGNhc2UgXCJEZXNjcmlwdGlvblZhbHVlXCI6XG5cdFx0XHRcdFx0dmFsdWVJbmRleCA9IF9wdXNoVW5pcXVlKHBhdGgsIHByb3BlcnR5KTtcblx0XHRcdFx0XHRkZXNjcmlwdGlvbkluZGV4ID0gX3B1c2hVbmlxdWUodGV4dEFubm90YXRpb25Qcm9wZXJ0eVBhdGgsIHRleHRBbm5vdGF0aW9uLiR0YXJnZXQpO1xuXHRcdFx0XHRcdF9hcHBlbmRUZW1wbGF0ZShgeyR7ZGVzY3JpcHRpb25JbmRleH19ICh7JHt2YWx1ZUluZGV4fX0pYCk7XG5cdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHR9XG5cdFx0fSBlbHNlIHtcblx0XHRcdC8vIENoZWNrIGZvciBmaWVsZCBjb250YWluaW5nIEN1cnJlbmN5IE9yIFVuaXQgUHJvcGVydGllcy5cblx0XHRcdGNvbnN0IGN1cnJlbmN5T3JVb01Qcm9wZXJ0eSA9IGdldEFzc29jaWF0ZWRDdXJyZW5jeVByb3BlcnR5KHByb3BlcnR5KSB8fCBnZXRBc3NvY2lhdGVkVW5pdFByb3BlcnR5KHByb3BlcnR5KTtcblx0XHRcdGNvbnN0IGN1cnJlbmN5T3JVbml0QW5ub3RhdGlvbiA9IHByb3BlcnR5Py5hbm5vdGF0aW9ucz8uTWVhc3VyZXM/LklTT0N1cnJlbmN5IHx8IHByb3BlcnR5Py5hbm5vdGF0aW9ucz8uTWVhc3VyZXM/LlVuaXQ7XG5cdFx0XHRpZiAoY3VycmVuY3lPclVvTVByb3BlcnR5ICYmIGN1cnJlbmN5T3JVbml0QW5ub3RhdGlvbj8uJHRhcmdldCkge1xuXHRcdFx0XHR2YWx1ZUluZGV4ID0gX3B1c2hVbmlxdWUocGF0aCwgcHJvcGVydHkpO1xuXHRcdFx0XHRjdXJyZW5jeU9yVW9NSW5kZXggPSBfcHVzaFVuaXF1ZShjdXJyZW5jeU9yVW9NUHJvcGVydHkubmFtZSwgY3VycmVuY3lPclVuaXRBbm5vdGF0aW9uLiR0YXJnZXQpO1xuXHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske3ZhbHVlSW5kZXh9fSAgeyR7Y3VycmVuY3lPclVvTUluZGV4fX1gKTtcblx0XHRcdH0gZWxzZSBpZiAocHJvcGVydHkuVGFyZ2V0Py4kdGFyZ2V0Py5WaXN1YWxpemF0aW9uKSB7XG5cdFx0XHRcdGNvbnN0IGRhdGFQb2ludFByb3BlcnR5OiBFZG0uUHJpbWl0aXZlVHlwZSA9IHByb3BlcnR5LlRhcmdldC4kdGFyZ2V0LlZhbHVlLiR0YXJnZXQ7XG5cdFx0XHRcdHZhbHVlSW5kZXggPSBfcHVzaFVuaXF1ZShwYXRoLCBkYXRhUG9pbnRQcm9wZXJ0eSk7XG5cdFx0XHRcdC8vIE5ldyBmYWtlIHByb3BlcnR5IGNyZWF0ZWQgZm9yIHRoZSBSYXRpbmcvUHJvZ3Jlc3MgVGFyZ2V0IFZhbHVlLiBJdCdsbCBiZSB1c2VkIGZvciB0aGUgZXhwb3J0IG9uIHNwbGl0IG1vZGUuXG5cdFx0XHRcdF9wdXNoVW5pcXVlKHByb3BlcnR5LlRhcmdldC52YWx1ZSwgcHJvcGVydHkuVGFyZ2V0LiR0YXJnZXQpO1xuXHRcdFx0XHR0YXJnZXRWYWx1ZSA9IChwcm9wZXJ0eS5UYXJnZXQuJHRhcmdldC5UYXJnZXRWYWx1ZSB8fCBwcm9wZXJ0eS5UYXJnZXQuJHRhcmdldC5NYXhpbXVtVmFsdWUpLnRvU3RyaW5nKCk7XG5cdFx0XHRcdF9hcHBlbmRUZW1wbGF0ZShgeyR7dmFsdWVJbmRleH19LyR7dGFyZ2V0VmFsdWV9YCk7XG5cdFx0XHR9IGVsc2UgaWYgKHByb3BlcnR5LmFubm90YXRpb25zPy5VST8uRGF0YUZpZWxkRGVmYXVsdD8uVGFyZ2V0Py4kdGFyZ2V0Py4kVHlwZSA9PT0gVUlBbm5vdGF0aW9uVHlwZXMuRGF0YVBvaW50VHlwZSkge1xuXHRcdFx0XHQvLyBEYXRhUG9pbnQgdXNlLWNhc2UgdXNpbmcgRGF0YUZpZWxkRGVmYXVsdC5cblx0XHRcdFx0Y29uc3QgZGF0YVBvaW50RGVmYXVsdFByb3BlcnR5OiBFZG0uUHJpbWl0aXZlVHlwZSA9IHByb3BlcnR5LmFubm90YXRpb25zLlVJLkRhdGFGaWVsZERlZmF1bHQ7XG5cdFx0XHRcdHZhbHVlSW5kZXggPSBfcHVzaFVuaXF1ZShwYXRoLCBwcm9wZXJ0eSk7XG5cdFx0XHRcdC8vIE5ldyBmYWtlIHByb3BlcnR5IGNyZWF0ZWQgZm9yIHRoZSBSYXRpbmcvUHJvZ3Jlc3MgVGFyZ2V0IFZhbHVlLiBJdCdsbCBiZSB1c2VkIGZvciB0aGUgZXhwb3J0IG9uIHNwbGl0IG1vZGUuXG5cdFx0XHRcdF9wdXNoVW5pcXVlKGRhdGFQb2ludERlZmF1bHRQcm9wZXJ0eS5UYXJnZXQudmFsdWUsIHByb3BlcnR5KTtcblx0XHRcdFx0dGFyZ2V0VmFsdWUgPSAoXG5cdFx0XHRcdFx0ZGF0YVBvaW50RGVmYXVsdFByb3BlcnR5LlRhcmdldC4kdGFyZ2V0LlRhcmdldFZhbHVlIHx8IGRhdGFQb2ludERlZmF1bHRQcm9wZXJ0eS5UYXJnZXQuJHRhcmdldC5UYXJnZXRWYWx1ZS5NYXhpbXVtVmFsdWVcblx0XHRcdFx0KS50b1N0cmluZygpO1xuXHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske3ZhbHVlSW5kZXh9fS8ke3RhcmdldFZhbHVlfWApO1xuXHRcdFx0fSBlbHNlIGlmIChwcm9wZXJ0eS5UYXJnZXQ/LiR0YXJnZXQ/LiRUeXBlID09PSBcImNvbS5zYXAudm9jYWJ1bGFyaWVzLkNvbW11bmljYXRpb24udjEuQ29udGFjdFR5cGVcIikge1xuXHRcdFx0XHRyZWxhdGVkUHJvcGVydGllcy5leHBvcnRTZXR0aW5nc0NvbnRhY3RQcm9wZXJ0eSA9XG5cdFx0XHRcdFx0cHJvcGVydHkuVGFyZ2V0LnZhbHVlLnN1YnN0cmluZygwLCBwcm9wZXJ0eS5UYXJnZXQudmFsdWUuaW5kZXhPZihcIi9cIikgKyAxKSArIHByb3BlcnR5LlRhcmdldC4kdGFyZ2V0LmZuPy5wYXRoO1xuXHRcdFx0XHR2YWx1ZUluZGV4ID0gX3B1c2hVbmlxdWUocGF0aCwgcHJvcGVydHkuVGFyZ2V0LiR0YXJnZXQuZm4uJHRhcmdldCk7XG5cdFx0XHRcdF9hcHBlbmRUZW1wbGF0ZShgeyR7dmFsdWVJbmRleH19YCk7XG5cdFx0XHR9IGVsc2UgaWYgKCFpZ25vcmVTZWxmKSB7XG5cdFx0XHRcdC8vIENvbGxlY3QgdW5kZXJseWluZyBwcm9wZXJ0eVxuXHRcdFx0XHR2YWx1ZUluZGV4ID0gX3B1c2hVbmlxdWUocGF0aCwgcHJvcGVydHkpO1xuXHRcdFx0XHRfYXBwZW5kVGVtcGxhdGUoYHske3ZhbHVlSW5kZXh9fWApO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHJlbGF0ZWRQcm9wZXJ0aWVzID0gX2NvbGxlY3RBZGRpdGlvbmFsUHJvcGVydGllc0ZvckFuYWx5dGljYWxUYWJsZShwcm9wZXJ0eSwgbmF2aWdhdGlvblBhdGhQcmVmaXgsIHRhYmxlVHlwZSwgcmVsYXRlZFByb3BlcnRpZXMpO1xuXHRcdGlmIChPYmplY3Qua2V5cyhyZWxhdGVkUHJvcGVydGllcy5hZGRpdGlvbmFsUHJvcGVydGllcykubGVuZ3RoID4gMCAmJiBPYmplY3Qua2V5cyhyZWxhdGVkUHJvcGVydGllcy5wcm9wZXJ0aWVzKS5sZW5ndGggPT09IDApIHtcblx0XHRcdC8vIENvbGxlY3QgdW5kZXJseWluZyBwcm9wZXJ0eSBpZiBub3QgY29sbGVjdGVkIGFscmVhZHkuXG5cdFx0XHQvLyBUaGlzIGlzIHRvIGVuc3VyZSB0aGF0IGFkZGl0aW9uYWxQcm9wZXJ0aWVzIGFyZSBtYWRlIGF2YWlsYWJsZSBvbmx5IHRvIGNvbXBsZXggcHJvcGVydHkgaW5mb3MuXG5cdFx0XHR2YWx1ZUluZGV4ID0gX3B1c2hVbmlxdWUocGF0aCwgcHJvcGVydHkpO1xuXHRcdFx0X2FwcGVuZFRlbXBsYXRlKGB7JHt2YWx1ZUluZGV4fX1gKTtcblx0XHR9XG5cdH1cblxuXHRyZXR1cm4gcmVsYXRlZFByb3BlcnRpZXM7XG59XG5cbi8qKlxuICogQ29sbGVjdCBwcm9wZXJ0aWVzIGNvbnN1bWVkIGJ5IGEgRGF0YSBGaWVsZC5cbiAqIFRoaXMgaXMgZm9yIHBvcHVsYXRpbmcgdGhlIENvbXBsZXhQcm9wZXJ0eUluZm9zIG9mIHRoZSB0YWJsZSBkZWxlZ2F0ZS5cbiAqXG4gKiBAcGFyYW0ge0RhdGFGaWVsZEFic3RyYWN0VHlwZXN9IGRhdGFGaWVsZCBUaGUgRGF0YSBGaWVsZCBmb3Igd2hpY2ggdGhlIHByb3BlcnRpZXMgbmVlZCB0byBiZSBpZGVudGlmaWVkLlxuICogQHBhcmFtIGNvbnZlcnRlckNvbnRleHQgVGhlIGNvbnZlcnRlciBjb250ZXh0LlxuICogQHBhcmFtIHtUYWJsZVR5cGV9IHRhYmxlVHlwZSBUaGUgdGFibGUgdHlwZS5cbiAqIEBwYXJhbSB7Q29tcGxleFByb3BlcnR5SW5mb30gcmVsYXRlZFByb3BlcnRpZXMgVGhlIHByb3BlcnRpZXMgaWRlbnRpZmllZCBzbyBmYXIuXG4gKiBAcmV0dXJucyB7Q29tcGxleFByb3BlcnR5SW5mb30gVGhlIHByb3BlcnRpZXMgcmVsYXRlZCB0byB0aGUgRGF0YSBGaWVsZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbGxlY3RSZWxhdGVkUHJvcGVydGllc1JlY3Vyc2l2ZWx5KFxuXHRkYXRhRmllbGQ6IERhdGFGaWVsZEFic3RyYWN0VHlwZXMsXG5cdGNvbnZlcnRlckNvbnRleHQ6IENvbnZlcnRlckNvbnRleHQsXG5cdHRhYmxlVHlwZTogVGFibGVUeXBlLFxuXHRyZWxhdGVkUHJvcGVydGllczogQ29tcGxleFByb3BlcnR5SW5mbyA9IHsgcHJvcGVydGllczoge30sIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7fSB9XG4pOiBDb21wbGV4UHJvcGVydHlJbmZvIHtcblx0aWYgKChkYXRhRmllbGQuJFR5cGUgPT09IFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZCB8fCBkYXRhRmllbGQuJFR5cGUgPT09IFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZFdpdGhVcmwpICYmIGRhdGFGaWVsZC5WYWx1ZSkge1xuXHRcdGNvbnN0IHByb3BlcnR5ID0gZGF0YUZpZWxkLlZhbHVlO1xuXHRcdHJlbGF0ZWRQcm9wZXJ0aWVzID0gY29sbGVjdFJlbGF0ZWRQcm9wZXJ0aWVzKFxuXHRcdFx0cHJvcGVydHkucGF0aCxcblx0XHRcdHByb3BlcnR5LiR0YXJnZXQsXG5cdFx0XHRjb252ZXJ0ZXJDb250ZXh0LFxuXHRcdFx0ZmFsc2UsXG5cdFx0XHR0YWJsZVR5cGUsXG5cdFx0XHRyZWxhdGVkUHJvcGVydGllc1xuXHRcdCk7XG5cdFx0Y29uc3QgbmF2aWdhdGlvblBhdGhQcmVmaXggPSBfZ2V0TmF2aWdhdGlvblBhdGhQcmVmaXgocHJvcGVydHkucGF0aCk7XG5cdFx0cmVsYXRlZFByb3BlcnRpZXMgPSBfY29sbGVjdEFkZGl0aW9uYWxQcm9wZXJ0aWVzRm9yQW5hbHl0aWNhbFRhYmxlKGRhdGFGaWVsZCwgbmF2aWdhdGlvblBhdGhQcmVmaXgsIHRhYmxlVHlwZSwgcmVsYXRlZFByb3BlcnRpZXMpO1xuXHR9IGVsc2UgaWYgKGRhdGFGaWVsZC4kVHlwZSA9PT0gVUlBbm5vdGF0aW9uVHlwZXMuRGF0YUZpZWxkRm9yQW5ub3RhdGlvbikge1xuXHRcdHN3aXRjaCAoZGF0YUZpZWxkLlRhcmdldD8uJHRhcmdldD8uJFR5cGUpIHtcblx0XHRcdGNhc2UgVUlBbm5vdGF0aW9uVHlwZXMuRmllbGRHcm91cFR5cGU6XG5cdFx0XHRcdGRhdGFGaWVsZC5UYXJnZXQuJHRhcmdldC5EYXRhPy5mb3JFYWNoKChpbm5lckRhdGFGaWVsZDogRGF0YUZpZWxkQWJzdHJhY3RUeXBlcykgPT4ge1xuXHRcdFx0XHRcdHJlbGF0ZWRQcm9wZXJ0aWVzID0gY29sbGVjdFJlbGF0ZWRQcm9wZXJ0aWVzUmVjdXJzaXZlbHkoaW5uZXJEYXRhRmllbGQsIGNvbnZlcnRlckNvbnRleHQsIHRhYmxlVHlwZSwgcmVsYXRlZFByb3BlcnRpZXMpO1xuXHRcdFx0XHR9KTtcblx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdGNhc2UgVUlBbm5vdGF0aW9uVHlwZXMuRGF0YVBvaW50VHlwZTpcblx0XHRcdFx0cmVsYXRlZFByb3BlcnRpZXMgPSBjb2xsZWN0UmVsYXRlZFByb3BlcnRpZXMoXG5cdFx0XHRcdFx0ZGF0YUZpZWxkLlRhcmdldC4kdGFyZ2V0LlZhbHVlLnBhdGgsXG5cdFx0XHRcdFx0ZGF0YUZpZWxkLFxuXHRcdFx0XHRcdGNvbnZlcnRlckNvbnRleHQsXG5cdFx0XHRcdFx0ZmFsc2UsXG5cdFx0XHRcdFx0dGFibGVUeXBlLFxuXHRcdFx0XHRcdHJlbGF0ZWRQcm9wZXJ0aWVzXG5cdFx0XHRcdCk7XG5cdFx0XHRcdGJyZWFrO1xuXG5cdFx0XHRjYXNlIFwiY29tLnNhcC52b2NhYnVsYXJpZXMuQ29tbXVuaWNhdGlvbi52MS5Db250YWN0VHlwZVwiOlxuXHRcdFx0XHRyZWxhdGVkUHJvcGVydGllcyA9IGNvbGxlY3RSZWxhdGVkUHJvcGVydGllcyhcblx0XHRcdFx0XHRkYXRhRmllbGQuVGFyZ2V0LnZhbHVlLFxuXHRcdFx0XHRcdGRhdGFGaWVsZCxcblx0XHRcdFx0XHRjb252ZXJ0ZXJDb250ZXh0LFxuXHRcdFx0XHRcdGZhbHNlLFxuXHRcdFx0XHRcdHRhYmxlVHlwZSxcblx0XHRcdFx0XHRyZWxhdGVkUHJvcGVydGllc1xuXHRcdFx0XHQpO1xuXHRcdFx0XHRicmVhaztcblx0XHR9XG5cdH1cblxuXHRyZXR1cm4gcmVsYXRlZFByb3BlcnRpZXM7XG59XG5cbmV4cG9ydCBjb25zdCBnZXREYXRhRmllbGREYXRhVHlwZSA9IGZ1bmN0aW9uKG9EYXRhRmllbGQ6IERhdGFGaWVsZEFic3RyYWN0VHlwZXMgfCBQcm9wZXJ0eSk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG5cdGxldCBzRGF0YVR5cGU6IHN0cmluZyB8IHVuZGVmaW5lZCA9IChvRGF0YUZpZWxkIGFzIERhdGFGaWVsZEFic3RyYWN0VHlwZXMpLiRUeXBlO1xuXHRzd2l0Y2ggKHNEYXRhVHlwZSkge1xuXHRcdGNhc2UgVUlBbm5vdGF0aW9uVHlwZXMuRGF0YUZpZWxkRm9yQWN0aW9uOlxuXHRcdGNhc2UgVUlBbm5vdGF0aW9uVHlwZXMuRGF0YUZpZWxkRm9ySW50ZW50QmFzZWROYXZpZ2F0aW9uOlxuXHRcdFx0c0RhdGFUeXBlID0gdW5kZWZpbmVkO1xuXHRcdFx0YnJlYWs7XG5cblx0XHRjYXNlIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZDpcblx0XHRjYXNlIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZFdpdGhOYXZpZ2F0aW9uUGF0aDpcblx0XHRjYXNlIFVJQW5ub3RhdGlvblR5cGVzLkRhdGFGaWVsZFdpdGhVcmw6XG5cdFx0XHRzRGF0YVR5cGUgPSAob0RhdGFGaWVsZCBhcyBEYXRhRmllbGQpPy5WYWx1ZT8uJHRhcmdldD8udHlwZTtcblx0XHRcdGJyZWFrO1xuXG5cdFx0Y2FzZSBVSUFubm90YXRpb25UeXBlcy5EYXRhRmllbGRGb3JBbm5vdGF0aW9uOlxuXHRcdGRlZmF1bHQ6XG5cdFx0XHRjb25zdCBzRGF0YVR5cGVGb3JEYXRhRmllbGRGb3JBbm5vdGF0aW9uID0gKG9EYXRhRmllbGQgYXMgRGF0YUZpZWxkRm9yQW5ub3RhdGlvbikuVGFyZ2V0Py4kdGFyZ2V0LiRUeXBlO1xuXHRcdFx0aWYgKHNEYXRhVHlwZUZvckRhdGFGaWVsZEZvckFubm90YXRpb24pIHtcblx0XHRcdFx0aWYgKChvRGF0YUZpZWxkIGFzIERhdGFGaWVsZEZvckFubm90YXRpb24pLlRhcmdldD8uJHRhcmdldC4kVHlwZSA9PT0gQ29tbXVuaWNhdGlvbkFubm90YXRpb25UeXBlcy5Db250YWN0VHlwZSkge1xuXHRcdFx0XHRcdHNEYXRhVHlwZSA9ICgoKG9EYXRhRmllbGQgYXMgRGF0YUZpZWxkRm9yQW5ub3RhdGlvbikuVGFyZ2V0Py4kdGFyZ2V0IGFzIENvbnRhY3QpPy5mbiBhcyBhbnkpLiR0YXJnZXQ/LnR5cGU7XG5cdFx0XHRcdH0gZWxzZSBpZiAoKG9EYXRhRmllbGQgYXMgRGF0YUZpZWxkRm9yQW5ub3RhdGlvbikuVGFyZ2V0Py4kdGFyZ2V0LiRUeXBlID09PSBVSUFubm90YXRpb25UeXBlcy5EYXRhUG9pbnRUeXBlKSB7XG5cdFx0XHRcdFx0c0RhdGFUeXBlID1cblx0XHRcdFx0XHRcdCgob0RhdGFGaWVsZCBhcyBEYXRhRmllbGRGb3JBbm5vdGF0aW9uKS5UYXJnZXQ/LiR0YXJnZXQgYXMgRGF0YVBvaW50KT8uVmFsdWU/LiRQYXRoPy4kVHlwZSB8fFxuXHRcdFx0XHRcdFx0KChvRGF0YUZpZWxkIGFzIERhdGFGaWVsZEZvckFubm90YXRpb24pLlRhcmdldD8uJHRhcmdldCBhcyBEYXRhUG9pbnQpPy5WYWx1ZT8uJHRhcmdldC50eXBlO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdC8vIGUuZy4gRmllbGRHcm91cCBvciBDaGFydFxuXHRcdFx0XHRcdHNEYXRhVHlwZSA9IHVuZGVmaW5lZDtcblx0XHRcdFx0fVxuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0c0RhdGFUeXBlID0gdW5kZWZpbmVkO1xuXHRcdFx0fVxuXHRcdFx0YnJlYWs7XG5cdH1cblxuXHRyZXR1cm4gc0RhdGFUeXBlO1xufTtcbiJdfQ==
@@ -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.$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);
5
+ sap.ui.define(["sap/fe/core/templating/DisplayModeFormatter","sap/fe/core/templating/PropertyHelper"],function(D,P){"use strict";var _={};var i=P.isProperty;var g=P.getAssociatedUnitProperty;var a=P.getAssociatedCurrencyProperty;var b=D.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 E=x+y.path;var F=b(n,C);var G;switch(F){case"Value":z=s(p,n);u("{".concat(z,"}"));r.visualSettingsToBeExcluded=E;break;case"Description":s(p,n);G=s(E,y.$target);u("{".concat(G,"}"));r.visualSettingsToBeExcluded=p;break;case"ValueDescription":z=s(p,n);G=s(E,y.$target);u("{".concat(z,"} ({").concat(G,"})"));break;case"DescriptionValue":z=s(p,n);G=s(E,y.$target);u("{".concat(G,"} ({").concat(z,"})"));break;}}else{var H,I,J,K,L,M,N,O,Q,R,S,T,U;var V=a(n)||g(n);var W=(n===null||n===void 0?void 0:(H=n.annotations)===null||H===void 0?void 0:(I=H.Measures)===null||I===void 0?void 0:I.ISOCurrency)||(n===null||n===void 0?void 0:(J=n.annotations)===null||J===void 0?void 0:(K=J.Measures)===null||K===void 0?void 0:K.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((L=n.Target)!==null&&L!==void 0&&(M=L.$target)!==null&&M!==void 0&&M.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(((N=n.annotations)===null||N===void 0?void 0:(O=N.UI)===null||O===void 0?void 0:(Q=O.DataFieldDefault)===null||Q===void 0?void 0:(R=Q.Target)===null||R===void 0?void 0:(S=R.$target)===null||S===void 0?void 0:S.$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(((T=n.Target)===null||T===void 0?void 0:(U=T.$target)===null||U===void 0?void 0:U.$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(o){var n,p,q;var s=o.$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=o===null||o===void 0?void 0:(n=o.Value)===null||n===void 0?void 0:(p=n.$target)===null||p===void 0?void 0:p.type;break;case"com.sap.vocabularies.UI.v1.DataFieldForAnnotation":default:var r=(q=o.Target)===null||q===void 0?void 0:q.$target.$Type;if(r){var t,u;if(((t=o.Target)===null||t===void 0?void 0:t.$target.$Type)==="com.sap.vocabularies.Communication.v1.ContactType"){var v,w,x;s=(v=((w=o.Target)===null||w===void 0?void 0:(x=w.$target)===null||x===void 0?void 0:x.fn).$target)===null||v===void 0?void 0:v.type;}else if(((u=o.Target)===null||u===void 0?void 0:u.$target.$Type)==="com.sap.vocabularies.UI.v1.DataPointType"){var y,z,A,B,C,E,F;s=((y=o.Target)===null||y===void 0?void 0:(z=y.$target)===null||z===void 0?void 0:(A=z.Value)===null||A===void 0?void 0:(B=A.$Path)===null||B===void 0?void 0:B.$Type)||((C=o.Target)===null||C===void 0?void 0:(E=C.$target)===null||E===void 0?void 0:(F=E.Value)===null||F===void 0?void 0:F.$target.type);}else{s=undefined;}}else{s=undefined;}break;}return s;};_.getDataFieldDataType=m;return _;},false);
@@ -10,7 +10,7 @@ import {
10
10
  UIAnnotationTypes
11
11
  } from "@sap-ux/vocabularies-types";
12
12
  import * as Edm from "@sap-ux/vocabularies-types/dist/Edm";
13
- import { getDisplayMode, PropertyOrPath } from "sap/fe/core/templating/UIFormatters";
13
+ import { getDisplayMode, PropertyOrPath } from "sap/fe/core/templating/DisplayModeFormatter";
14
14
  import { Property } from "@sap-ux/annotation-converter";
15
15
  import { getAssociatedCurrencyProperty, getAssociatedUnitProperty, isProperty } from "sap/fe/core/templating/PropertyHelper";
16
16
  import ConverterContext from "../ConverterContext";