@sapui5/sap.fe.core 1.110.0 → 1.111.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 (654) hide show
  1. package/README.md +0 -4
  2. package/package.json +2 -23
  3. package/src/sap/fe/core/.library +1 -1
  4. package/src/sap/fe/core/ActionRuntime-dbg.js +182 -0
  5. package/src/sap/fe/core/ActionRuntime.js +3 -181
  6. package/src/sap/fe/core/ActionRuntime.js.map +1 -0
  7. package/src/sap/fe/core/ActionRuntime.ts +3 -5
  8. package/src/sap/fe/core/AppComponent-dbg.js +435 -0
  9. package/src/sap/fe/core/AppComponent.js +3 -439
  10. package/src/sap/fe/core/AppComponent.js.map +1 -0
  11. package/src/sap/fe/core/AppComponent.ts +0 -3
  12. package/src/sap/fe/core/AppStateHandler-dbg.js +200 -0
  13. package/src/sap/fe/core/AppStateHandler.js +3 -227
  14. package/src/sap/fe/core/AppStateHandler.js.map +1 -0
  15. package/src/sap/fe/core/BaseController-dbg.js +76 -0
  16. package/src/sap/fe/core/BaseController.js +3 -73
  17. package/src/sap/fe/core/BaseController.js.map +1 -0
  18. package/src/sap/fe/core/CommonUtils-dbg.js +2135 -0
  19. package/src/sap/fe/core/CommonUtils.js +3 -2296
  20. package/src/sap/fe/core/CommonUtils.js.map +1 -0
  21. package/src/sap/fe/core/CommonUtils.ts +34 -28
  22. package/src/sap/fe/core/ExtensionAPI-dbg.js +273 -0
  23. package/src/sap/fe/core/ExtensionAPI.js +3 -280
  24. package/src/sap/fe/core/ExtensionAPI.js.map +1 -0
  25. package/src/sap/fe/core/PageController-dbg.js +203 -0
  26. package/src/sap/fe/core/PageController.js +3 -200
  27. package/src/sap/fe/core/PageController.js.map +1 -0
  28. package/src/sap/fe/core/TemplateComponent-dbg.js +218 -0
  29. package/src/sap/fe/core/TemplateComponent.js +3 -216
  30. package/src/sap/fe/core/TemplateComponent.js.map +1 -0
  31. package/src/sap/fe/core/TemplateModel-dbg.js +75 -0
  32. package/src/sap/fe/core/TemplateModel.js +3 -72
  33. package/src/sap/fe/core/TemplateModel.js.map +1 -0
  34. package/src/sap/fe/core/buildingBlocks/AttributeModel-dbg.js +57 -0
  35. package/src/sap/fe/core/buildingBlocks/AttributeModel.js +3 -54
  36. package/src/sap/fe/core/buildingBlocks/AttributeModel.js.map +1 -0
  37. package/src/sap/fe/core/buildingBlocks/BuildingBlock-dbg.js +410 -0
  38. package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +11 -355
  39. package/src/sap/fe/core/buildingBlocks/BuildingBlock.js.map +1 -0
  40. package/src/sap/fe/core/buildingBlocks/BuildingBlock.ts +118 -52
  41. package/src/sap/fe/core/buildingBlocks/BuildingBlockFormatter-dbg.js +14 -0
  42. package/src/sap/fe/core/buildingBlocks/BuildingBlockFormatter.js +3 -11
  43. package/src/sap/fe/core/buildingBlocks/BuildingBlockFormatter.js.map +1 -0
  44. package/src/sap/fe/core/buildingBlocks/BuildingBlockFragment-dbg.js +44 -0
  45. package/src/sap/fe/core/buildingBlocks/BuildingBlockFragment.js +3 -40
  46. package/src/sap/fe/core/buildingBlocks/BuildingBlockFragment.js.map +1 -0
  47. package/src/sap/fe/core/buildingBlocks/BuildingBlockFragment.ts +3 -0
  48. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime-dbg.js +932 -0
  49. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js +16 -1292
  50. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js.map +1 -0
  51. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.ts +40 -42
  52. package/src/sap/fe/core/buildingBlocks/TraceInfo-dbg.js +434 -0
  53. package/src/sap/fe/core/buildingBlocks/TraceInfo.js +3 -481
  54. package/src/sap/fe/core/buildingBlocks/TraceInfo.js.map +1 -0
  55. package/src/sap/fe/core/buildingBlocks/TraceInfo.ts +5 -5
  56. package/src/sap/fe/core/controllerextensions/BusyLocker-dbg.js +92 -0
  57. package/src/sap/fe/core/controllerextensions/BusyLocker.js +3 -89
  58. package/src/sap/fe/core/controllerextensions/BusyLocker.js.map +1 -0
  59. package/src/sap/fe/core/controllerextensions/EditFlow-dbg.js +1659 -0
  60. package/src/sap/fe/core/controllerextensions/EditFlow.js +3 -1868
  61. package/src/sap/fe/core/controllerextensions/EditFlow.js.map +1 -0
  62. package/src/sap/fe/core/controllerextensions/EditFlow.ts +180 -125
  63. package/src/sap/fe/core/controllerextensions/Feedback-dbg.js +70 -0
  64. package/src/sap/fe/core/controllerextensions/Feedback.js +3 -67
  65. package/src/sap/fe/core/controllerextensions/Feedback.js.map +1 -0
  66. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation-dbg.js +83 -0
  67. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +3 -84
  68. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js.map +1 -0
  69. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +6 -8
  70. package/src/sap/fe/core/controllerextensions/InternalEditFlow-dbg.js +711 -0
  71. package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +3 -707
  72. package/src/sap/fe/core/controllerextensions/InternalEditFlow.js.map +1 -0
  73. package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +79 -48
  74. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation-dbg.js +791 -0
  75. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +3 -696
  76. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js.map +1 -0
  77. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +107 -7
  78. package/src/sap/fe/core/controllerextensions/InternalRouting-dbg.js +984 -0
  79. package/src/sap/fe/core/controllerextensions/InternalRouting.js +3 -996
  80. package/src/sap/fe/core/controllerextensions/InternalRouting.js.map +1 -0
  81. package/src/sap/fe/core/controllerextensions/InternalRouting.ts +43 -23
  82. package/src/sap/fe/core/controllerextensions/KPIManagement-dbg.js +1013 -0
  83. package/src/sap/fe/core/controllerextensions/KPIManagement.js +3 -1011
  84. package/src/sap/fe/core/controllerextensions/KPIManagement.js.map +1 -0
  85. package/src/sap/fe/core/controllerextensions/KPIManagement.ts +12 -10
  86. package/src/sap/fe/core/controllerextensions/MassEdit-dbg.js +135 -0
  87. package/src/sap/fe/core/controllerextensions/MassEdit.js +3 -133
  88. package/src/sap/fe/core/controllerextensions/MassEdit.js.map +1 -0
  89. package/src/sap/fe/core/controllerextensions/MassEdit.ts +1 -1
  90. package/src/sap/fe/core/controllerextensions/MessageHandler-dbg.js +221 -0
  91. package/src/sap/fe/core/controllerextensions/MessageHandler.js +3 -224
  92. package/src/sap/fe/core/controllerextensions/MessageHandler.js.map +1 -0
  93. package/src/sap/fe/core/controllerextensions/PageReady-dbg.js +254 -0
  94. package/src/sap/fe/core/controllerextensions/PageReady.js +3 -279
  95. package/src/sap/fe/core/controllerextensions/PageReady.js.map +1 -0
  96. package/src/sap/fe/core/controllerextensions/PageReady.ts +2 -2
  97. package/src/sap/fe/core/controllerextensions/Paginator-dbg.js +169 -0
  98. package/src/sap/fe/core/controllerextensions/Paginator.js +3 -174
  99. package/src/sap/fe/core/controllerextensions/Paginator.js.map +1 -0
  100. package/src/sap/fe/core/controllerextensions/Paginator.ts +4 -5
  101. package/src/sap/fe/core/controllerextensions/Placeholder-dbg.js +132 -0
  102. package/src/sap/fe/core/controllerextensions/Placeholder.js +3 -130
  103. package/src/sap/fe/core/controllerextensions/Placeholder.js.map +1 -0
  104. package/src/sap/fe/core/controllerextensions/Routing-dbg.js +138 -0
  105. package/src/sap/fe/core/controllerextensions/Routing.js +3 -135
  106. package/src/sap/fe/core/controllerextensions/Routing.js.map +1 -0
  107. package/src/sap/fe/core/controllerextensions/RoutingListener-dbg.js +10 -0
  108. package/src/sap/fe/core/controllerextensions/RoutingListener.js +3 -7
  109. package/src/sap/fe/core/controllerextensions/RoutingListener.js.map +1 -0
  110. package/src/sap/fe/core/controllerextensions/Share-dbg.js +317 -0
  111. package/src/sap/fe/core/controllerextensions/Share.js +3 -356
  112. package/src/sap/fe/core/controllerextensions/Share.js.map +1 -0
  113. package/src/sap/fe/core/controllerextensions/Share.ts +6 -1
  114. package/src/sap/fe/core/controllerextensions/SideEffects-dbg.js +553 -0
  115. package/src/sap/fe/core/controllerextensions/SideEffects.js +3 -651
  116. package/src/sap/fe/core/controllerextensions/SideEffects.js.map +1 -0
  117. package/src/sap/fe/core/controllerextensions/SideEffects.ts +411 -553
  118. package/src/sap/fe/core/controllerextensions/ViewState-dbg.js +903 -0
  119. package/src/sap/fe/core/controllerextensions/ViewState.js +3 -967
  120. package/src/sap/fe/core/controllerextensions/ViewState.js.map +1 -0
  121. package/src/sap/fe/core/controllerextensions/ViewState.ts +90 -41
  122. package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase-dbg.js +99 -0
  123. package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +3 -96
  124. package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js.map +1 -0
  125. package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync-dbg.js +314 -0
  126. package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js +3 -336
  127. package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js.map +1 -0
  128. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon-dbg.js +152 -0
  129. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js +3 -161
  130. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js.map +1 -0
  131. package/src/sap/fe/core/controllerextensions/collaboration/Manage-dbg.js +243 -0
  132. package/src/sap/fe/core/controllerextensions/collaboration/Manage.js +3 -302
  133. package/src/sap/fe/core/controllerextensions/collaboration/Manage.js.map +1 -0
  134. package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block-dbg.js +252 -0
  135. package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block.js +6 -0
  136. package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block.js.map +1 -0
  137. package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block.tsx +188 -0
  138. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper-dbg.js +1196 -0
  139. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +3 -1479
  140. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js.map +1 -0
  141. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +239 -289
  142. package/src/sap/fe/core/controllerextensions/editFlow/draft-dbg.js +689 -0
  143. package/src/sap/fe/core/controllerextensions/editFlow/draft.js +3 -785
  144. package/src/sap/fe/core/controllerextensions/editFlow/draft.js.map +1 -0
  145. package/src/sap/fe/core/controllerextensions/editFlow/draft.ts +134 -142
  146. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup-dbg.js +236 -0
  147. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js +3 -287
  148. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js.map +1 -0
  149. package/src/sap/fe/core/controllerextensions/editFlow/operations-dbg.js +1422 -0
  150. package/src/sap/fe/core/controllerextensions/editFlow/operations.js +3 -1598
  151. package/src/sap/fe/core/controllerextensions/editFlow/operations.js.map +1 -0
  152. package/src/sap/fe/core/controllerextensions/editFlow/operations.ts +40 -24
  153. package/src/sap/fe/core/controllerextensions/editFlow/sticky-dbg.js +185 -0
  154. package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +3 -214
  155. package/src/sap/fe/core/controllerextensions/editFlow/sticky.js.map +1 -0
  156. package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +4 -5
  157. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling-dbg.js +1219 -0
  158. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +3 -1213
  159. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js.map +1 -0
  160. package/src/sap/fe/core/controllerextensions/pageReady/DataQueryWatcher-dbg.js +304 -0
  161. package/src/sap/fe/core/controllerextensions/pageReady/DataQueryWatcher.js +3 -339
  162. package/src/sap/fe/core/controllerextensions/pageReady/DataQueryWatcher.js.map +1 -0
  163. package/src/sap/fe/core/controllerextensions/routing/NavigationReason-dbg.js +15 -0
  164. package/src/sap/fe/core/controllerextensions/routing/NavigationReason.js +6 -0
  165. package/src/sap/fe/core/controllerextensions/routing/NavigationReason.js.map +1 -0
  166. package/src/sap/fe/core/controllerextensions/routing/NavigationReason.ts +6 -0
  167. package/src/sap/fe/core/controllerextensions/routing/RouterProxy-dbg.js +798 -0
  168. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +3 -799
  169. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js.map +1 -0
  170. package/src/sap/fe/core/controls/Any-dbg.js +32 -0
  171. package/src/sap/fe/core/controls/Any.js +3 -29
  172. package/src/sap/fe/core/controls/Any.js.map +1 -0
  173. package/src/sap/fe/core/controls/AnyElement-dbg.js +29 -0
  174. package/src/sap/fe/core/controls/AnyElement.js +3 -26
  175. package/src/sap/fe/core/controls/AnyElement.js.map +1 -0
  176. package/src/sap/fe/core/controls/CommandExecution-dbg.js +72 -0
  177. package/src/sap/fe/core/controls/CommandExecution.js +3 -69
  178. package/src/sap/fe/core/controls/CommandExecution.js.map +1 -0
  179. package/src/sap/fe/core/controls/ConditionalWrapper-dbg.js +151 -0
  180. package/src/sap/fe/core/controls/ConditionalWrapper.js +3 -148
  181. package/src/sap/fe/core/controls/ConditionalWrapper.js.map +1 -0
  182. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper-dbg.js +330 -0
  183. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +3 -328
  184. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js.map +1 -0
  185. package/src/sap/fe/core/controls/CustomQuickViewPage-dbg.js +126 -0
  186. package/src/sap/fe/core/controls/CustomQuickViewPage.js +3 -124
  187. package/src/sap/fe/core/controls/CustomQuickViewPage.js.map +1 -0
  188. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler-dbg.js +170 -0
  189. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +3 -171
  190. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js.map +1 -0
  191. package/src/sap/fe/core/controls/FieldWrapper-dbg.js +194 -0
  192. package/src/sap/fe/core/controls/FieldWrapper.js +3 -191
  193. package/src/sap/fe/core/controls/FieldWrapper.js.map +1 -0
  194. package/src/sap/fe/core/controls/FileWrapper-dbg.js +280 -0
  195. package/src/sap/fe/core/controls/FileWrapper.js +3 -277
  196. package/src/sap/fe/core/controls/FileWrapper.js.map +1 -0
  197. package/src/sap/fe/core/controls/FilterBar-dbg.js +167 -0
  198. package/src/sap/fe/core/controls/FilterBar.js +3 -166
  199. package/src/sap/fe/core/controls/FilterBar.js.map +1 -0
  200. package/src/sap/fe/core/controls/FormElementWrapper-dbg.js +92 -0
  201. package/src/sap/fe/core/controls/FormElementWrapper.js +3 -89
  202. package/src/sap/fe/core/controls/FormElementWrapper.js.map +1 -0
  203. package/src/sap/fe/core/controls/MassEditSelect-dbg.js +33 -0
  204. package/src/sap/fe/core/controls/MassEditSelect.js +3 -30
  205. package/src/sap/fe/core/controls/MassEditSelect.js.map +1 -0
  206. package/src/sap/fe/core/controls/MultiValueParameterDelegate-dbg.js +37 -0
  207. package/src/sap/fe/core/controls/MultiValueParameterDelegate.js +3 -34
  208. package/src/sap/fe/core/controls/MultiValueParameterDelegate.js.map +1 -0
  209. package/src/sap/fe/core/controls/filterbar/FilterContainer-dbg.js +119 -0
  210. package/src/sap/fe/core/controls/filterbar/FilterContainer.js +3 -121
  211. package/src/sap/fe/core/controls/filterbar/FilterContainer.js.map +1 -0
  212. package/src/sap/fe/core/controls/filterbar/VisualFilter-dbg.js +267 -0
  213. package/src/sap/fe/core/controls/filterbar/VisualFilter.js +3 -264
  214. package/src/sap/fe/core/controls/filterbar/VisualFilter.js.map +1 -0
  215. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer-dbg.js +150 -0
  216. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +3 -150
  217. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js.map +1 -0
  218. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils-dbg.js +310 -0
  219. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +3 -307
  220. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js.map +1 -0
  221. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +1 -1
  222. package/src/sap/fe/core/controls/massEdit/MassEditHandlers-dbg.js +491 -0
  223. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +3 -504
  224. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js.map +1 -0
  225. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +2 -2
  226. package/src/sap/fe/core/converters/ConverterContext-dbg.js +403 -0
  227. package/src/sap/fe/core/converters/ConverterContext.js +3 -406
  228. package/src/sap/fe/core/converters/ConverterContext.js.map +1 -0
  229. package/src/sap/fe/core/converters/ManifestSettings-dbg.js +88 -0
  230. package/src/sap/fe/core/converters/ManifestSettings.js +3 -84
  231. package/src/sap/fe/core/converters/ManifestSettings.js.map +1 -0
  232. package/src/sap/fe/core/converters/ManifestSettings.ts +3 -1
  233. package/src/sap/fe/core/converters/ManifestWrapper-dbg.js +402 -0
  234. package/src/sap/fe/core/converters/ManifestWrapper.js +3 -406
  235. package/src/sap/fe/core/converters/ManifestWrapper.js.map +1 -0
  236. package/src/sap/fe/core/converters/MetaModelConverter-dbg.js +1161 -0
  237. package/src/sap/fe/core/converters/MetaModelConverter.js +3 -1225
  238. package/src/sap/fe/core/converters/MetaModelConverter.js.map +1 -0
  239. package/src/sap/fe/core/converters/MetaModelConverter.ts +193 -199
  240. package/src/sap/fe/core/converters/TemplateConverter-dbg.js +89 -0
  241. package/src/sap/fe/core/converters/TemplateConverter.js +3 -86
  242. package/src/sap/fe/core/converters/TemplateConverter.js.map +1 -0
  243. package/src/sap/fe/core/converters/annotations/DataField-dbg.js +396 -0
  244. package/src/sap/fe/core/converters/annotations/DataField.js +3 -394
  245. package/src/sap/fe/core/converters/annotations/DataField.js.map +1 -0
  246. package/src/sap/fe/core/converters/annotations/DataField.ts +5 -5
  247. package/src/sap/fe/core/converters/common/AnnotationConverter-dbg.js +1948 -0
  248. package/src/sap/fe/core/converters/common/AnnotationConverter.js +3 -1868
  249. package/src/sap/fe/core/converters/common/AnnotationConverter.js.map +1 -0
  250. package/src/sap/fe/core/converters/controls/Common/Action-dbg.js +424 -0
  251. package/src/sap/fe/core/converters/controls/Common/Action.js +3 -446
  252. package/src/sap/fe/core/converters/controls/Common/Action.js.map +1 -0
  253. package/src/sap/fe/core/converters/controls/Common/Action.ts +31 -14
  254. package/src/sap/fe/core/converters/controls/Common/Chart-dbg.js +276 -0
  255. package/src/sap/fe/core/converters/controls/Common/Chart.js +3 -260
  256. package/src/sap/fe/core/converters/controls/Common/Chart.js.map +1 -0
  257. package/src/sap/fe/core/converters/controls/Common/Chart.ts +52 -7
  258. package/src/sap/fe/core/converters/controls/Common/Criticality-dbg.js +42 -0
  259. package/src/sap/fe/core/converters/controls/Common/Criticality.js +3 -39
  260. package/src/sap/fe/core/converters/controls/Common/Criticality.js.map +1 -0
  261. package/src/sap/fe/core/converters/controls/Common/DataVisualization-dbg.js +247 -0
  262. package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +3 -242
  263. package/src/sap/fe/core/converters/controls/Common/DataVisualization.js.map +1 -0
  264. package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +1 -1
  265. package/src/sap/fe/core/converters/controls/Common/Form-dbg.js +229 -0
  266. package/src/sap/fe/core/converters/controls/Common/Form.js +3 -234
  267. package/src/sap/fe/core/converters/controls/Common/Form.js.map +1 -0
  268. package/src/sap/fe/core/converters/controls/Common/KPI-dbg.js +374 -0
  269. package/src/sap/fe/core/converters/controls/Common/KPI.js +3 -371
  270. package/src/sap/fe/core/converters/controls/Common/KPI.js.map +1 -0
  271. package/src/sap/fe/core/converters/controls/Common/Table-dbg.js +2596 -0
  272. package/src/sap/fe/core/converters/controls/Common/Table.js +3 -2527
  273. package/src/sap/fe/core/converters/controls/Common/Table.js.map +1 -0
  274. package/src/sap/fe/core/converters/controls/Common/Table.ts +214 -77
  275. package/src/sap/fe/core/converters/controls/Common/table/StandardActions-dbg.js +522 -0
  276. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +3 -527
  277. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js.map +1 -0
  278. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +51 -50
  279. package/src/sap/fe/core/converters/controls/ListReport/FilterBar-dbg.js +786 -0
  280. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +3 -845
  281. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js.map +1 -0
  282. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +0 -64
  283. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters-dbg.js +291 -0
  284. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +3 -316
  285. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js.map +1 -0
  286. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +30 -12
  287. package/src/sap/fe/core/converters/controls/ObjectPage/Avatar-dbg.js +56 -0
  288. package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.js +3 -53
  289. package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.js.map +1 -0
  290. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet-dbg.js +438 -0
  291. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +3 -431
  292. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js.map +1 -0
  293. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection-dbg.js +597 -0
  294. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +3 -630
  295. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js.map +1 -0
  296. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +1 -1
  297. package/src/sap/fe/core/converters/helpers/Aggregation-dbg.js +204 -0
  298. package/src/sap/fe/core/converters/helpers/Aggregation.js +3 -204
  299. package/src/sap/fe/core/converters/helpers/Aggregation.js.map +1 -0
  300. package/src/sap/fe/core/converters/helpers/BindingHelper-dbg.js +100 -0
  301. package/src/sap/fe/core/converters/helpers/BindingHelper.js +3 -99
  302. package/src/sap/fe/core/converters/helpers/BindingHelper.js.map +1 -0
  303. package/src/sap/fe/core/converters/helpers/ConfigurableObject-dbg.js +199 -0
  304. package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +3 -199
  305. package/src/sap/fe/core/converters/helpers/ConfigurableObject.js.map +1 -0
  306. package/src/sap/fe/core/converters/helpers/DataFieldHelper-dbg.js +143 -0
  307. package/src/sap/fe/core/converters/helpers/DataFieldHelper.js +3 -140
  308. package/src/sap/fe/core/converters/helpers/DataFieldHelper.js.map +1 -0
  309. package/src/sap/fe/core/converters/helpers/DataFieldHelper.ts +2 -1
  310. package/src/sap/fe/core/converters/helpers/ID-dbg.js +92 -0
  311. package/src/sap/fe/core/converters/helpers/ID.js +3 -89
  312. package/src/sap/fe/core/converters/helpers/ID.js.map +1 -0
  313. package/src/sap/fe/core/converters/helpers/IssueManager-dbg.js +62 -0
  314. package/src/sap/fe/core/converters/helpers/IssueManager.js +3 -59
  315. package/src/sap/fe/core/converters/helpers/IssueManager.js.map +1 -0
  316. package/src/sap/fe/core/converters/helpers/Key-dbg.js +62 -0
  317. package/src/sap/fe/core/converters/helpers/Key.js +3 -59
  318. package/src/sap/fe/core/converters/helpers/Key.js.map +1 -0
  319. package/src/sap/fe/core/converters/helpers/Key.ts +1 -1
  320. package/src/sap/fe/core/converters/helpers/SelectionVariantHelper-dbg.js +80 -0
  321. package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.js +3 -77
  322. package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.js.map +1 -0
  323. package/src/sap/fe/core/converters/objectPage/FormMenuActions-dbg.js +142 -0
  324. package/src/sap/fe/core/converters/objectPage/FormMenuActions.js +3 -139
  325. package/src/sap/fe/core/converters/objectPage/FormMenuActions.js.map +1 -0
  326. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction-dbg.js +406 -0
  327. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +3 -422
  328. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js.map +1 -0
  329. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +132 -111
  330. package/src/sap/fe/core/converters/templates/ListReportConverter-dbg.js +557 -0
  331. package/src/sap/fe/core/converters/templates/ListReportConverter.js +3 -589
  332. package/src/sap/fe/core/converters/templates/ListReportConverter.js.map +1 -0
  333. package/src/sap/fe/core/converters/templates/ObjectPageConverter-dbg.js +474 -0
  334. package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +3 -477
  335. package/src/sap/fe/core/converters/templates/ObjectPageConverter.js.map +1 -0
  336. package/src/sap/fe/core/designtime/AppComponent-dbg.designtime.js +103 -0
  337. package/src/sap/fe/core/designtime/AppComponent.designtime.js +3 -100
  338. package/src/sap/fe/core/designtime/AppComponent.designtime.js.map +1 -0
  339. package/src/sap/fe/core/designtime/library-preload.designtime.js +7 -0
  340. package/src/sap/fe/core/designtime/library-preload.designtime.js.map +1 -0
  341. package/src/sap/fe/core/formatters/CollaborationFormatter-dbg.js +95 -0
  342. package/src/sap/fe/core/formatters/CollaborationFormatter.js +3 -92
  343. package/src/sap/fe/core/formatters/CollaborationFormatter.js.map +1 -0
  344. package/src/sap/fe/core/formatters/FPMFormatter-dbg.js +46 -0
  345. package/src/sap/fe/core/formatters/FPMFormatter.js +3 -44
  346. package/src/sap/fe/core/formatters/FPMFormatter.js.map +1 -0
  347. package/src/sap/fe/core/formatters/FPMFormatter.ts +3 -2
  348. package/src/sap/fe/core/formatters/FiscalFormat-dbg.js +343 -0
  349. package/src/sap/fe/core/formatters/FiscalFormat.js +6 -0
  350. package/src/sap/fe/core/formatters/FiscalFormat.js.map +1 -0
  351. package/src/sap/fe/core/formatters/FiscalFormat.ts +319 -0
  352. package/src/sap/fe/core/formatters/KPIFormatter-dbg.js +86 -0
  353. package/src/sap/fe/core/formatters/KPIFormatter.js +3 -83
  354. package/src/sap/fe/core/formatters/KPIFormatter.js.map +1 -0
  355. package/src/sap/fe/core/formatters/StandardFormatter-dbg.js +80 -0
  356. package/src/sap/fe/core/formatters/StandardFormatter.js +3 -78
  357. package/src/sap/fe/core/formatters/StandardFormatter.js.map +1 -0
  358. package/src/sap/fe/core/formatters/TableFormatter-dbg.js +276 -0
  359. package/src/sap/fe/core/formatters/TableFormatter.js +3 -275
  360. package/src/sap/fe/core/formatters/TableFormatter.js.map +1 -0
  361. package/src/sap/fe/core/formatters/TableFormatter.ts +1 -1
  362. package/src/sap/fe/core/formatters/TableFormatterTypes-dbg.js +20 -0
  363. package/src/sap/fe/core/formatters/TableFormatterTypes.js +3 -17
  364. package/src/sap/fe/core/formatters/TableFormatterTypes.js.map +1 -0
  365. package/src/sap/fe/core/formatters/ValueFormatter-dbg.js +172 -0
  366. package/src/sap/fe/core/formatters/ValueFormatter.js +3 -161
  367. package/src/sap/fe/core/formatters/ValueFormatter.js.map +1 -0
  368. package/src/sap/fe/core/formatters/ValueFormatter.ts +25 -8
  369. package/src/sap/fe/core/fpm/Component-dbg.js +94 -0
  370. package/src/sap/fe/core/fpm/Component.js +3 -91
  371. package/src/sap/fe/core/fpm/Component.js.map +1 -0
  372. package/src/sap/fe/core/fpm/manifest.json +1 -1
  373. package/src/sap/fe/core/helpers/AnnotationEnum-dbg.js +30 -0
  374. package/src/sap/fe/core/helpers/AnnotationEnum.js +3 -36
  375. package/src/sap/fe/core/helpers/AnnotationEnum.js.map +1 -0
  376. package/src/sap/fe/core/helpers/AppStartupHelper-dbg.js +334 -0
  377. package/src/sap/fe/core/helpers/AppStartupHelper.js +3 -335
  378. package/src/sap/fe/core/helpers/AppStartupHelper.js.map +1 -0
  379. package/src/sap/fe/core/helpers/BindingToolkit-dbg.js +1739 -0
  380. package/src/sap/fe/core/helpers/BindingToolkit.js +3 -1611
  381. package/src/sap/fe/core/helpers/BindingToolkit.js.map +1 -0
  382. package/src/sap/fe/core/helpers/BindingToolkit.ts +277 -97
  383. package/src/sap/fe/core/helpers/ClassSupport-dbg.js +421 -0
  384. package/src/sap/fe/core/helpers/ClassSupport.js +3 -420
  385. package/src/sap/fe/core/helpers/ClassSupport.js.map +1 -0
  386. package/src/sap/fe/core/helpers/ClassSupport.ts +13 -15
  387. package/src/sap/fe/core/helpers/DeleteHelper-dbg.js +526 -0
  388. package/src/sap/fe/core/helpers/DeleteHelper.js +3 -618
  389. package/src/sap/fe/core/helpers/DeleteHelper.js.map +1 -0
  390. package/src/sap/fe/core/helpers/DeleteHelper.ts +116 -134
  391. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper-dbg.js +55 -0
  392. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +3 -52
  393. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js.map +1 -0
  394. package/src/sap/fe/core/helpers/EditState-dbg.js +80 -0
  395. package/src/sap/fe/core/helpers/EditState.js +3 -77
  396. package/src/sap/fe/core/helpers/EditState.js.map +1 -0
  397. package/src/sap/fe/core/helpers/ExcelFormatHelper-dbg.js +55 -0
  398. package/src/sap/fe/core/helpers/ExcelFormatHelper.js +3 -52
  399. package/src/sap/fe/core/helpers/ExcelFormatHelper.js.map +1 -0
  400. package/src/sap/fe/core/helpers/FPMHelper-dbg.js +55 -0
  401. package/src/sap/fe/core/helpers/FPMHelper.js +3 -52
  402. package/src/sap/fe/core/helpers/FPMHelper.js.map +1 -0
  403. package/src/sap/fe/core/helpers/KeepAliveHelper-dbg.js +180 -0
  404. package/src/sap/fe/core/helpers/KeepAliveHelper.js +3 -177
  405. package/src/sap/fe/core/helpers/KeepAliveHelper.js.map +1 -0
  406. package/src/sap/fe/core/helpers/KeepAliveRefreshTypes-dbg.js +28 -0
  407. package/src/sap/fe/core/helpers/KeepAliveRefreshTypes.js +3 -25
  408. package/src/sap/fe/core/helpers/KeepAliveRefreshTypes.js.map +1 -0
  409. package/src/sap/fe/core/helpers/LoaderUtils-dbg.js +29 -0
  410. package/src/sap/fe/core/helpers/LoaderUtils.js +3 -30
  411. package/src/sap/fe/core/helpers/LoaderUtils.js.map +1 -0
  412. package/src/sap/fe/core/helpers/MassEditHelper-dbg.js +1229 -0
  413. package/src/sap/fe/core/helpers/MassEditHelper.js +3 -1309
  414. package/src/sap/fe/core/helpers/MassEditHelper.js.map +1 -0
  415. package/src/sap/fe/core/helpers/MassEditHelper.ts +6 -6
  416. package/src/sap/fe/core/helpers/MessageStrip-dbg.js +65 -0
  417. package/src/sap/fe/core/helpers/MessageStrip.js +3 -62
  418. package/src/sap/fe/core/helpers/MessageStrip.js.map +1 -0
  419. package/src/sap/fe/core/helpers/ModelHelper-dbg.js +489 -0
  420. package/src/sap/fe/core/helpers/ModelHelper.js +3 -503
  421. package/src/sap/fe/core/helpers/ModelHelper.js.map +1 -0
  422. package/src/sap/fe/core/helpers/ModelHelper.ts +13 -36
  423. package/src/sap/fe/core/helpers/PasteHelper-dbg.js +174 -0
  424. package/src/sap/fe/core/helpers/PasteHelper.js +3 -185
  425. package/src/sap/fe/core/helpers/PasteHelper.js.map +1 -0
  426. package/src/sap/fe/core/helpers/SemanticDateOperators-dbg.js +371 -0
  427. package/src/sap/fe/core/helpers/SemanticDateOperators.js +3 -368
  428. package/src/sap/fe/core/helpers/SemanticDateOperators.js.map +1 -0
  429. package/src/sap/fe/core/helpers/SemanticKeyHelper-dbg.js +70 -0
  430. package/src/sap/fe/core/helpers/SemanticKeyHelper.js +3 -67
  431. package/src/sap/fe/core/helpers/SemanticKeyHelper.js.map +1 -0
  432. package/src/sap/fe/core/helpers/SideEffectsHelper-dbg.js +141 -0
  433. package/src/sap/fe/core/helpers/SideEffectsHelper.js +3 -137
  434. package/src/sap/fe/core/helpers/SideEffectsHelper.js.map +1 -0
  435. package/src/sap/fe/core/helpers/SideEffectsHelper.ts +3 -2
  436. package/src/sap/fe/core/helpers/StableIdHelper-dbg.js +204 -0
  437. package/src/sap/fe/core/helpers/StableIdHelper.js +3 -208
  438. package/src/sap/fe/core/helpers/StableIdHelper.js.map +1 -0
  439. package/src/sap/fe/core/helpers/Synchronization-dbg.js +35 -0
  440. package/src/sap/fe/core/helpers/Synchronization.js +3 -33
  441. package/src/sap/fe/core/helpers/Synchronization.js.map +1 -0
  442. package/src/sap/fe/core/helpers/ToES6Promise-dbg.js +29 -0
  443. package/src/sap/fe/core/helpers/ToES6Promise.js +3 -26
  444. package/src/sap/fe/core/helpers/ToES6Promise.js.map +1 -0
  445. package/src/sap/fe/core/helpers/TypeGuards-dbg.js +20 -0
  446. package/src/sap/fe/core/helpers/TypeGuards.js +3 -19
  447. package/src/sap/fe/core/helpers/TypeGuards.js.map +1 -0
  448. package/src/sap/fe/core/helpers/TypeGuards.ts +5 -1
  449. package/src/sap/fe/core/jsx-runtime/Fragment-dbg.js +14 -0
  450. package/src/sap/fe/core/jsx-runtime/Fragment.js +3 -11
  451. package/src/sap/fe/core/jsx-runtime/Fragment.js.map +1 -0
  452. package/src/sap/fe/core/jsx-runtime/ViewLoader-dbg.js +76 -0
  453. package/src/sap/fe/core/jsx-runtime/ViewLoader.js +3 -86
  454. package/src/sap/fe/core/jsx-runtime/ViewLoader.js.map +1 -0
  455. package/src/sap/fe/core/jsx-runtime/jsx-control-dbg.js +124 -0
  456. package/src/sap/fe/core/jsx-runtime/jsx-control.js +3 -98
  457. package/src/sap/fe/core/jsx-runtime/jsx-control.js.map +1 -0
  458. package/src/sap/fe/core/jsx-runtime/jsx-control.ts +43 -17
  459. package/src/sap/fe/core/jsx-runtime/jsx-dbg.js +41 -0
  460. package/src/sap/fe/core/jsx-runtime/jsx-xml-dbg.js +94 -0
  461. package/src/sap/fe/core/jsx-runtime/jsx-xml.js +3 -90
  462. package/src/sap/fe/core/jsx-runtime/jsx-xml.js.map +1 -0
  463. package/src/sap/fe/core/jsx-runtime/jsx-xml.ts +1 -1
  464. package/src/sap/fe/core/jsx-runtime/jsx.js +3 -28
  465. package/src/sap/fe/core/jsx-runtime/jsx.js.map +1 -0
  466. package/src/sap/fe/core/jsx-runtime/jsx.ts +19 -1
  467. package/src/sap/fe/core/jsx-runtime/jsxs-dbg.js +10 -0
  468. package/src/sap/fe/core/jsx-runtime/jsxs.js +3 -7
  469. package/src/sap/fe/core/jsx-runtime/jsxs.js.map +1 -0
  470. package/src/sap/fe/core/jsx-runtime/useMDXComponents-dbg.js +154 -0
  471. package/src/sap/fe/core/jsx-runtime/useMDXComponents.js +3 -153
  472. package/src/sap/fe/core/jsx-runtime/useMDXComponents.js.map +1 -0
  473. package/src/sap/fe/core/library-dbg.js +437 -0
  474. package/src/sap/fe/core/library-preload.js +900 -0
  475. package/src/sap/fe/core/library-preload.js.map +1 -0
  476. package/src/sap/fe/core/library-preload.support.js +177 -0
  477. package/src/sap/fe/core/library-preload.support.js.map +1 -0
  478. package/src/sap/fe/core/library.js +3 -461
  479. package/src/sap/fe/core/library.js.map +1 -0
  480. package/src/sap/fe/core/library.support.js +1 -1
  481. package/src/sap/fe/core/library.ts +12 -25
  482. package/src/sap/fe/core/manifest.json +100 -0
  483. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration-dbg.js +99 -0
  484. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +3 -96
  485. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js.map +1 -0
  486. package/src/sap/fe/core/messagebundle.properties +6 -0
  487. package/src/sap/fe/core/messagebundle_ar.properties +22 -0
  488. package/src/sap/fe/core/messagebundle_bg.properties +22 -0
  489. package/src/sap/fe/core/messagebundle_ca.properties +22 -0
  490. package/src/sap/fe/core/messagebundle_cs.properties +22 -0
  491. package/src/sap/fe/core/messagebundle_cy.properties +22 -0
  492. package/src/sap/fe/core/messagebundle_da.properties +22 -0
  493. package/src/sap/fe/core/messagebundle_de.properties +22 -0
  494. package/src/sap/fe/core/messagebundle_el.properties +22 -0
  495. package/src/sap/fe/core/messagebundle_en.properties +22 -0
  496. package/src/sap/fe/core/messagebundle_en_GB.properties +22 -0
  497. package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +22 -0
  498. package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +4 -0
  499. package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +4 -0
  500. package/src/sap/fe/core/messagebundle_es.properties +22 -0
  501. package/src/sap/fe/core/messagebundle_es_MX.properties +22 -0
  502. package/src/sap/fe/core/messagebundle_et.properties +22 -0
  503. package/src/sap/fe/core/messagebundle_fi.properties +22 -0
  504. package/src/sap/fe/core/messagebundle_fr.properties +22 -0
  505. package/src/sap/fe/core/messagebundle_fr_CA.properties +22 -0
  506. package/src/sap/fe/core/messagebundle_hi.properties +22 -0
  507. package/src/sap/fe/core/messagebundle_hr.properties +23 -1
  508. package/src/sap/fe/core/messagebundle_hu.properties +22 -0
  509. package/src/sap/fe/core/messagebundle_id.properties +22 -0
  510. package/src/sap/fe/core/messagebundle_it.properties +22 -0
  511. package/src/sap/fe/core/messagebundle_iw.properties +22 -0
  512. package/src/sap/fe/core/messagebundle_ja.properties +22 -0
  513. package/src/sap/fe/core/messagebundle_kk.properties +22 -0
  514. package/src/sap/fe/core/messagebundle_ko.properties +22 -0
  515. package/src/sap/fe/core/messagebundle_lt.properties +22 -0
  516. package/src/sap/fe/core/messagebundle_lv.properties +22 -0
  517. package/src/sap/fe/core/messagebundle_ms.properties +22 -0
  518. package/src/sap/fe/core/messagebundle_nl.properties +22 -0
  519. package/src/sap/fe/core/messagebundle_no.properties +22 -0
  520. package/src/sap/fe/core/messagebundle_pl.properties +22 -0
  521. package/src/sap/fe/core/messagebundle_pt.properties +22 -0
  522. package/src/sap/fe/core/messagebundle_pt_PT.properties +22 -0
  523. package/src/sap/fe/core/messagebundle_ro.properties +22 -0
  524. package/src/sap/fe/core/messagebundle_ru.properties +22 -0
  525. package/src/sap/fe/core/messagebundle_sh.properties +22 -0
  526. package/src/sap/fe/core/messagebundle_sk.properties +22 -0
  527. package/src/sap/fe/core/messagebundle_sl.properties +22 -0
  528. package/src/sap/fe/core/messagebundle_sv.properties +22 -0
  529. package/src/sap/fe/core/messagebundle_th.properties +22 -0
  530. package/src/sap/fe/core/messagebundle_tr.properties +22 -0
  531. package/src/sap/fe/core/messagebundle_uk.properties +22 -0
  532. package/src/sap/fe/core/messagebundle_vi.properties +22 -0
  533. package/src/sap/fe/core/messagebundle_zh_CN.properties +22 -0
  534. package/src/sap/fe/core/messagebundle_zh_TW.properties +22 -0
  535. package/src/sap/fe/core/operationsHelper-dbg.js +155 -0
  536. package/src/sap/fe/core/operationsHelper.js +3 -205
  537. package/src/sap/fe/core/operationsHelper.js.map +1 -0
  538. package/src/sap/fe/core/operationsHelper.ts +14 -68
  539. package/src/sap/fe/core/rootView/Fcl-dbg.controller.js +837 -0
  540. package/src/sap/fe/core/rootView/Fcl.controller.js +3 -855
  541. package/src/sap/fe/core/rootView/Fcl.controller.js.map +1 -0
  542. package/src/sap/fe/core/rootView/NavContainer-dbg.controller.js +190 -0
  543. package/src/sap/fe/core/rootView/NavContainer.controller.js +3 -190
  544. package/src/sap/fe/core/rootView/NavContainer.controller.js.map +1 -0
  545. package/src/sap/fe/core/rootView/RootViewBaseController-dbg.js +506 -0
  546. package/src/sap/fe/core/rootView/RootViewBaseController.js +3 -538
  547. package/src/sap/fe/core/rootView/RootViewBaseController.js.map +1 -0
  548. package/src/sap/fe/core/rootView/RootViewBaseController.ts +3 -4
  549. package/src/sap/fe/core/services/AsyncComponentServiceFactory-dbg.js +60 -0
  550. package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +3 -60
  551. package/src/sap/fe/core/services/AsyncComponentServiceFactory.js.map +1 -0
  552. package/src/sap/fe/core/services/CacheHandlerServiceFactory-dbg.js +196 -0
  553. package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +3 -219
  554. package/src/sap/fe/core/services/CacheHandlerServiceFactory.js.map +1 -0
  555. package/src/sap/fe/core/services/EnvironmentServiceFactory-dbg.js +80 -0
  556. package/src/sap/fe/core/services/EnvironmentServiceFactory.js +3 -82
  557. package/src/sap/fe/core/services/EnvironmentServiceFactory.js.map +1 -0
  558. package/src/sap/fe/core/services/NavigationServiceFactory-dbg.js +320 -0
  559. package/src/sap/fe/core/services/NavigationServiceFactory.js +3 -320
  560. package/src/sap/fe/core/services/NavigationServiceFactory.js.map +1 -0
  561. package/src/sap/fe/core/services/ResourceModelServiceFactory-dbg.js +91 -0
  562. package/src/sap/fe/core/services/ResourceModelServiceFactory.js +3 -89
  563. package/src/sap/fe/core/services/ResourceModelServiceFactory.js.map +1 -0
  564. package/src/sap/fe/core/services/RoutingServiceFactory-dbg.js +817 -0
  565. package/src/sap/fe/core/services/RoutingServiceFactory.js +3 -847
  566. package/src/sap/fe/core/services/RoutingServiceFactory.js.map +1 -0
  567. package/src/sap/fe/core/services/RoutingServiceFactory.ts +6 -3
  568. package/src/sap/fe/core/services/ShellServicesFactory-dbg.js +732 -0
  569. package/src/sap/fe/core/services/ShellServicesFactory.js +3 -752
  570. package/src/sap/fe/core/services/ShellServicesFactory.js.map +1 -0
  571. package/src/sap/fe/core/services/SideEffectsServiceFactory-dbg.js +569 -0
  572. package/src/sap/fe/core/services/SideEffectsServiceFactory.js +3 -599
  573. package/src/sap/fe/core/services/SideEffectsServiceFactory.js.map +1 -0
  574. package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +3 -3
  575. package/src/sap/fe/core/services/TemplatedViewServiceFactory-dbg.js +355 -0
  576. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +3 -387
  577. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js.map +1 -0
  578. package/src/sap/fe/core/services/view/TemplatingErrorPage-dbg.controller.js +37 -0
  579. package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +3 -34
  580. package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js.map +1 -0
  581. package/src/sap/fe/core/support/AnnotationIssue.support.js +4 -4
  582. package/src/sap/fe/core/support/CollectionFacetMissingID.support.js +3 -3
  583. package/src/sap/fe/core/support/CollectionFacetUnsupportedLevel.support.js +3 -3
  584. package/src/sap/fe/core/support/CommonHelper-dbg.js +63 -0
  585. package/src/sap/fe/core/support/CommonHelper.js +3 -60
  586. package/src/sap/fe/core/support/CommonHelper.js.map +1 -0
  587. package/src/sap/fe/core/support/Diagnostics-dbg.js +44 -0
  588. package/src/sap/fe/core/support/Diagnostics.js +3 -49
  589. package/src/sap/fe/core/support/Diagnostics.js.map +1 -0
  590. package/src/sap/fe/core/support/InvalidAnnotationColumnKey.support.js +3 -3
  591. package/src/sap/fe/core/templating/CommonFormatters-dbg.js +70 -0
  592. package/src/sap/fe/core/templating/CommonFormatters.js +3 -66
  593. package/src/sap/fe/core/templating/CommonFormatters.js.map +1 -0
  594. package/src/sap/fe/core/templating/CommonFormatters.ts +9 -3
  595. package/src/sap/fe/core/templating/CriticalityFormatters-dbg.js +136 -0
  596. package/src/sap/fe/core/templating/CriticalityFormatters.js +3 -133
  597. package/src/sap/fe/core/templating/CriticalityFormatters.js.map +1 -0
  598. package/src/sap/fe/core/templating/DataFieldFormatters-dbg.js +58 -0
  599. package/src/sap/fe/core/templating/DataFieldFormatters.js +3 -55
  600. package/src/sap/fe/core/templating/DataFieldFormatters.js.map +1 -0
  601. package/src/sap/fe/core/templating/DataModelPathHelper-dbg.js +363 -0
  602. package/src/sap/fe/core/templating/DataModelPathHelper.js +3 -372
  603. package/src/sap/fe/core/templating/DataModelPathHelper.js.map +1 -0
  604. package/src/sap/fe/core/templating/DataModelPathHelper.ts +17 -8
  605. package/src/sap/fe/core/templating/DisplayModeFormatter-dbg.js +56 -0
  606. package/src/sap/fe/core/templating/DisplayModeFormatter.js +3 -124
  607. package/src/sap/fe/core/templating/DisplayModeFormatter.js.map +1 -0
  608. package/src/sap/fe/core/templating/DisplayModeFormatter.ts +0 -47
  609. package/src/sap/fe/core/templating/EntitySetHelper-dbg.js +68 -0
  610. package/src/sap/fe/core/templating/EntitySetHelper.js +3 -81
  611. package/src/sap/fe/core/templating/EntitySetHelper.js.map +1 -0
  612. package/src/sap/fe/core/templating/FieldControlHelper-dbg.js +77 -0
  613. package/src/sap/fe/core/templating/FieldControlHelper.js +3 -74
  614. package/src/sap/fe/core/templating/FieldControlHelper.js.map +1 -0
  615. package/src/sap/fe/core/templating/FilterHelper-dbg.js +346 -0
  616. package/src/sap/fe/core/templating/FilterHelper.js +3 -339
  617. package/src/sap/fe/core/templating/FilterHelper.js.map +1 -0
  618. package/src/sap/fe/core/templating/FilterHelper.ts +2 -21
  619. package/src/sap/fe/core/templating/FilterTemplating-dbg.js +62 -0
  620. package/src/sap/fe/core/templating/FilterTemplating.js +3 -59
  621. package/src/sap/fe/core/templating/FilterTemplating.js.map +1 -0
  622. package/src/sap/fe/core/templating/PropertyFormatters-dbg.js +93 -0
  623. package/src/sap/fe/core/templating/PropertyFormatters.js +3 -90
  624. package/src/sap/fe/core/templating/PropertyFormatters.js.map +1 -0
  625. package/src/sap/fe/core/templating/PropertyHelper-dbg.js +340 -0
  626. package/src/sap/fe/core/templating/PropertyHelper.js +3 -337
  627. package/src/sap/fe/core/templating/PropertyHelper.js.map +1 -0
  628. package/src/sap/fe/core/templating/SemanticObjectHelper-dbg.js +91 -0
  629. package/src/sap/fe/core/templating/SemanticObjectHelper.js +3 -43
  630. package/src/sap/fe/core/templating/SemanticObjectHelper.js.map +1 -0
  631. package/src/sap/fe/core/templating/SemanticObjectHelper.ts +45 -1
  632. package/src/sap/fe/core/templating/UIFormatters-dbg.js +498 -0
  633. package/src/sap/fe/core/templating/UIFormatters.js +3 -544
  634. package/src/sap/fe/core/templating/UIFormatters.js.map +1 -0
  635. package/src/sap/fe/core/templating/UIFormatters.ts +60 -110
  636. package/src/sap/fe/core/type/DateTimeWithTimezone-dbg.js +35 -0
  637. package/src/sap/fe/core/type/DateTimeWithTimezone.js +3 -33
  638. package/src/sap/fe/core/type/DateTimeWithTimezone.js.map +1 -0
  639. package/src/sap/fe/core/type/EDM-dbg.js +84 -0
  640. package/src/sap/fe/core/type/EDM.js +6 -0
  641. package/src/sap/fe/core/type/EDM.js.map +1 -0
  642. package/src/sap/fe/core/type/EDM.ts +70 -0
  643. package/src/sap/fe/core/type/Email-dbg.js +29 -0
  644. package/src/sap/fe/core/type/Email.js +3 -26
  645. package/src/sap/fe/core/type/Email.js.map +1 -0
  646. package/src/sap/fe/core/type/FiscalDate-dbg.js +174 -0
  647. package/src/sap/fe/core/type/FiscalDate.js +6 -0
  648. package/src/sap/fe/core/type/FiscalDate.js.map +1 -0
  649. package/src/sap/fe/core/type/FiscalDate.ts +179 -0
  650. package/src/sap/fe/core/type/TypeUtil-dbg.js +58 -0
  651. package/src/sap/fe/core/type/TypeUtil.js +3 -55
  652. package/src/sap/fe/core/type/TypeUtil.js.map +1 -0
  653. package/src/sap/fe/core/type/TypeUtil.ts +1 -0
  654. package/src/.eslintrc +0 -7
package/README.md CHANGED
@@ -4,10 +4,6 @@
4
4
 
5
5
  Runtime resources of the [SAPUI5](https://sapui5.hana.ondemand.com) Library **sap.fe.core**.
6
6
 
7
- ## SAP Internal
8
-
9
- **This library is restricted for use by SAP internal projects only.**
10
-
11
7
  ## Usage
12
8
 
13
9
  Refrain from installing this package using npm, Yarn or similar package managers.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sapui5/sap.fe.core",
3
- "version": "1.110.0",
3
+ "version": "1.111.0",
4
4
  "description": "SAPUI5 Library sap.fe.core",
5
5
  "keywords": [
6
6
  "sapui5",
@@ -8,26 +8,5 @@
8
8
  ],
9
9
  "homepage": "https://sap.github.io/ui5-tooling/pages/SAPUI5/",
10
10
  "license": "SEE LICENSE IN LICENSE.txt",
11
- "author": "SAP SE (https://www.sap.com)",
12
- "scripts": {
13
- "build-dts": "tsc --project tsconfig-dts.json",
14
- "build-local": "tsc --project tsconfig-local.json && copyfiles -u 5 \"../../lib/annotation-converter-ui5/ui5-dist/**/*.js\" dist-local/src && copyfiles ui5.yaml dist-local",
15
- "copy-dependency": "copyfiles -u 5 \"../../lib/annotation-converter-ui5/ui5-dist/**/*.js\" target/classes/META-INF/resources",
16
- "prepare-npm-sources": "copyfiles -u 5 \"../../lib/annotation-converter-ui5/ui5-dist/**/*.js\" target/npm-sources/src && babel target/npm-sources/src --out-dir target/npm-sources/src --extensions \".ts,.tsx\" --config-file ../../.babelrc && babel target/npm-sources/src --out-dir target/npm-sources/src --extensions \".mdx\" --config-file ../../.babelrc-next",
17
- "prepare-ts-class-doc": "ts-node ../../lib/docbuilder/prepareTSClassDoc sap.fe.core",
18
- "prepare-ui5-build-sources": "copyfiles -u 5 \"../../lib/annotation-converter-ui5/ui5-dist/**/*.js\" target/ui5-build-tmp/src && babel target/ui5-build-tmp/src --out-dir target/ui5-build-tmp/src --extensions \".ts,.tsx\" --config-file ../../.babelrc && babel target/ui5-build-tmp/src --out-dir target/ui5-build-tmp/src --extensions \".mdx\" --config-file ../../.babelrc-next && babel target/ui5-build-tmp/test --out-dir target/ui5-build-tmp/test --extensions \".ts,.tsx\" --config-file ../../.babelrc && babel target/ui5-build-tmp/test --out-dir target/ui5-build-tmp/test --extensions \".mdx\" --config-file ../../.babelrc-next",
19
- "test": "jest --maxWorkers=4",
20
- "test-refs": "jest --runInBand --config jest.config-refs.js",
21
- "test-updateSnapshots": "jest --maxWorkers=4 -u",
22
- "watch-local": "pnpm run build-local && tsc --project tsconfig-local.json --watch"
23
- },
24
- "devDependencies": {
25
- "@babel/cli": "^7.14.8",
26
- "@babel/core": "^7.20.5",
27
- "@types/node": "14.10.1",
28
- "@ui5/cli": "^2.14.0",
29
- "copyfiles": "2.2.0",
30
- "ts-node": "^10.8.1",
31
- "typescript": "4.7.4"
32
- }
11
+ "author": "SAP SE (https://www.sap.com)"
33
12
  }
@@ -6,7 +6,7 @@
6
6
  SAP UI development toolkit for HTML5 (SAPUI5)
7
7
  (c) Copyright 2009-2021 SAP SE. All rights reserved
8
8
  </copyright>
9
- <version>1.110.0</version>
9
+ <version>1.111.0</version>
10
10
 
11
11
  <documentation>UI5 library: sap.fe.core</documentation>
12
12
 
@@ -0,0 +1,182 @@
1
+ /*!
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ * (c) Copyright 2009-2023 SAP SE. All rights reserved
4
+ */
5
+ sap.ui.define(["sap/base/util/merge", "sap/fe/core/CommonUtils", "sap/fe/core/helpers/BindingToolkit", "sap/fe/core/helpers/ModelHelper", "./controls/AnyElement", "./converters/ConverterContext", "./converters/objectPage/HeaderAndFooterAction"], function (merge, CommonUtils, BindingToolkit, ModelHelper, AnyElement, ConverterContext, HeaderAndFooterAction) {
6
+ "use strict";
7
+
8
+ var getHiddenExpression = HeaderAndFooterAction.getHiddenExpression;
9
+ var getEditButtonEnabled = HeaderAndFooterAction.getEditButtonEnabled;
10
+ var transformRecursively = BindingToolkit.transformRecursively;
11
+ var equal = BindingToolkit.equal;
12
+ var constant = BindingToolkit.constant;
13
+ var compileExpression = BindingToolkit.compileExpression;
14
+ const ActionRuntime = {
15
+ /**
16
+ * Sets the action enablement.
17
+ *
18
+ * @function
19
+ * @name setActionEnablement
20
+ * @param oInternalModelContext Object containing the context model
21
+ * @param oActionOperationAvailableMap Map containing the operation availability of actions
22
+ * @param aSelectedContexts Array containing selected contexts of the chart
23
+ * @param sControl Control name
24
+ * @returns The action enablement promises
25
+ * @ui5-restricted
26
+ */
27
+ setActionEnablement: function (oInternalModelContext, oActionOperationAvailableMap, aSelectedContexts, sControl) {
28
+ const aPromises = [];
29
+ for (const sAction in oActionOperationAvailableMap) {
30
+ let aRequestPromises = [];
31
+ oInternalModelContext.setProperty(sAction, false);
32
+ const sProperty = oActionOperationAvailableMap[sAction];
33
+ for (let i = 0; i < aSelectedContexts.length; i++) {
34
+ const oSelectedContext = aSelectedContexts[i];
35
+ if (oSelectedContext) {
36
+ const oContextData = oSelectedContext.getObject();
37
+ if (sControl === "chart") {
38
+ if (sProperty === null && !!oContextData[`#${sAction}`] || oSelectedContext.getObject(sProperty)) {
39
+ //look for action advertisement if present and its value is not null
40
+ oInternalModelContext.setProperty(sAction, true);
41
+ break;
42
+ }
43
+ } else if (sControl === "table") {
44
+ aRequestPromises = this._setActionEnablementForTable(oSelectedContext, oInternalModelContext, sAction, sProperty, aRequestPromises);
45
+ }
46
+ }
47
+ }
48
+ if (sControl === "table") {
49
+ if (!aSelectedContexts.length) {
50
+ oInternalModelContext.setProperty(`dynamicActions/${sAction}`, {
51
+ bEnabled: false,
52
+ aApplicable: [],
53
+ aNotApplicable: []
54
+ });
55
+ aPromises.push(CommonUtils.setContextsBasedOnOperationAvailable(oInternalModelContext, []));
56
+ } else if (aSelectedContexts.length && typeof sProperty === "string") {
57
+ // When all property values have been retrieved, set
58
+ // The applicable and not-applicable selected contexts for each action and
59
+ // The enabled property of the dynamic action in internal model context.
60
+ aPromises.push(CommonUtils.setContextsBasedOnOperationAvailable(oInternalModelContext, aRequestPromises));
61
+ }
62
+ }
63
+ }
64
+ return Promise.all(aPromises);
65
+ },
66
+ setActionEnablementAfterPatch: function (oView, oListBinding, oInternalModelContext) {
67
+ const oInternalModelContextData = oInternalModelContext === null || oInternalModelContext === void 0 ? void 0 : oInternalModelContext.getObject();
68
+ const oControls = (oInternalModelContextData === null || oInternalModelContextData === void 0 ? void 0 : oInternalModelContextData.controls) || {};
69
+ for (const sKey in oControls) {
70
+ if (oControls[sKey] && oControls[sKey].controlId) {
71
+ const oTable = oView.byId(sKey);
72
+ if (oTable && oTable.isA("sap.ui.mdc.Table")) {
73
+ const oRowBinding = oTable.getRowBinding();
74
+ if (oRowBinding == oListBinding) {
75
+ ActionRuntime.setActionEnablement(oTable.getBindingContext("internal"), JSON.parse(oTable.data("operationAvailableMap").customData), oTable.getSelectedContexts(), "table");
76
+ }
77
+ }
78
+ }
79
+ }
80
+ },
81
+ updateEditButtonVisibilityAndEnablement(oView) {
82
+ var _oView$getViewData;
83
+ const iViewLevel = (_oView$getViewData = oView.getViewData()) === null || _oView$getViewData === void 0 ? void 0 : _oView$getViewData.viewLevel;
84
+ if (iViewLevel > 1) {
85
+ var _oContext$getModel, _oContext$getModel$ge, _annotations$UI, _annotations$UI$Updat;
86
+ const oContext = oView.getBindingContext();
87
+ const oAppComponent = CommonUtils.getAppComponent(oView);
88
+ const sMetaPath = ModelHelper.getMetaPathForContext(oContext);
89
+ const sEntitySet = ModelHelper.getRootEntitySetPath(sMetaPath);
90
+ const metaContext = oContext === null || oContext === void 0 ? void 0 : (_oContext$getModel = oContext.getModel()) === null || _oContext$getModel === void 0 ? void 0 : (_oContext$getModel$ge = _oContext$getModel.getMetaModel()) === null || _oContext$getModel$ge === void 0 ? void 0 : _oContext$getModel$ge.getContext(oContext === null || oContext === void 0 ? void 0 : oContext.getPath());
91
+ const converterContext = ConverterContext === null || ConverterContext === void 0 ? void 0 : ConverterContext.createConverterContextForMacro(sEntitySet, metaContext, oAppComponent.getDiagnostics(), merge, undefined);
92
+ const entitySet = converterContext.getEntitySet();
93
+ const entityType = converterContext.getEntityType();
94
+ let updateHidden;
95
+ //Find the Update Hidden of the root entity set and bind the property to AnyElement, any changes in the path of the root UpdateHidden will be updated via the property, internal model context is updated based on the property
96
+ const bUpdateHidden = entitySet && !ModelHelper.isSingleton(entitySet) && ((_annotations$UI = entitySet.annotations.UI) === null || _annotations$UI === void 0 ? void 0 : (_annotations$UI$Updat = _annotations$UI.UpdateHidden) === null || _annotations$UI$Updat === void 0 ? void 0 : _annotations$UI$Updat.valueOf());
97
+ if (bUpdateHidden !== true) {
98
+ updateHidden = ModelHelper.isUpdateHidden(entitySet, entityType);
99
+ }
100
+ //Find the operation available property of the root edit configuration and fetch the property using AnyElement
101
+ const sEditEnableBinding = getEditButtonEnabled(converterContext, undefined);
102
+ const draftRootPath = ModelHelper.getDraftRootPath(oContext);
103
+ const sStickyRootPath = ModelHelper.getStickyRootPath(oContext);
104
+ const sPath = draftRootPath || sStickyRootPath;
105
+ const oInternalModelContext = oView.getBindingContext("internal");
106
+ if (sPath) {
107
+ const oRootContext = oView.getModel().bindContext(sPath).getBoundContext();
108
+ if (updateHidden !== undefined) {
109
+ const sHiddenExpression = compileExpression(equal(getHiddenExpression(converterContext, updateHidden), false));
110
+ this.updateEditModelContext(sHiddenExpression, oView, oRootContext, "rootEditVisible", oInternalModelContext);
111
+ }
112
+ if (sEditEnableBinding) {
113
+ this.updateEditModelContext(sEditEnableBinding, oView, oRootContext, "rootEditEnabled", oInternalModelContext);
114
+ }
115
+ }
116
+ }
117
+ },
118
+ updateEditModelContext: function (sBindingExpression, oView, oRootContext, sProperty, oInternalModelContext) {
119
+ if (sBindingExpression) {
120
+ var _oHiddenElement$getMo, _oHiddenElement$getMo2, _oHiddenElement$getBi;
121
+ const oHiddenElement = new AnyElement({
122
+ anyText: sBindingExpression
123
+ });
124
+ oHiddenElement.setBindingContext(null);
125
+ oView.addDependent(oHiddenElement);
126
+ oHiddenElement.getBinding("anyText");
127
+ const oContext = (_oHiddenElement$getMo = oHiddenElement.getModel()) === null || _oHiddenElement$getMo === void 0 ? void 0 : (_oHiddenElement$getMo2 = _oHiddenElement$getMo.bindContext(oRootContext.getPath(), oRootContext, {
128
+ $$groupId: "$auto.Heroes"
129
+ })) === null || _oHiddenElement$getMo2 === void 0 ? void 0 : _oHiddenElement$getMo2.getBoundContext();
130
+ oHiddenElement.setBindingContext(oContext);
131
+ oHiddenElement === null || oHiddenElement === void 0 ? void 0 : (_oHiddenElement$getBi = oHiddenElement.getBinding("anyText")) === null || _oHiddenElement$getBi === void 0 ? void 0 : _oHiddenElement$getBi.attachChange(oEvent => {
132
+ const oNewValue = oEvent.getSource().getExternalValue();
133
+ oInternalModelContext.setProperty(sProperty, oNewValue);
134
+ });
135
+ }
136
+ },
137
+ _setActionEnablementForTable: function (oSelectedContext, oInternalModelContext, sAction, sProperty, aRequestPromises) {
138
+ // Reset all properties before computation
139
+ oInternalModelContext.setProperty(`dynamicActions/${sAction}`, {
140
+ bEnabled: false,
141
+ aApplicable: [],
142
+ aNotApplicable: []
143
+ });
144
+ // Note that non dynamic actions are not processed here. They are enabled because
145
+ // one or more are selected and the second part of the condition in the templating
146
+ // is then undefined and thus the button takes the default enabling, which is true!
147
+ const aApplicable = [],
148
+ aNotApplicable = [],
149
+ sDynamicActionEnabledPath = `${oInternalModelContext.getPath()}/dynamicActions/${sAction}/bEnabled`;
150
+ if (typeof sProperty === "object" && sProperty !== null && sProperty !== undefined) {
151
+ if (oSelectedContext) {
152
+ const oContextData = oSelectedContext.getObject();
153
+ const oTransformedBinding = transformRecursively(sProperty, "PathInModel",
154
+ // eslint-disable-next-line no-loop-func
155
+ function (oBindingExpression) {
156
+ return oContextData ? constant(oContextData[oBindingExpression.path]) : constant(false);
157
+ }, true);
158
+ const sResult = compileExpression(oTransformedBinding);
159
+ if (sResult === "true") {
160
+ oInternalModelContext.getModel().setProperty(sDynamicActionEnabledPath, true);
161
+ aApplicable.push(oSelectedContext);
162
+ } else {
163
+ aNotApplicable.push(oSelectedContext);
164
+ }
165
+ }
166
+ CommonUtils.setDynamicActionContexts(oInternalModelContext, sAction, aApplicable, aNotApplicable);
167
+ } else {
168
+ const oContextData = oSelectedContext === null || oSelectedContext === void 0 ? void 0 : oSelectedContext.getObject();
169
+ if (sProperty === null && !!oContextData[`#${sAction}`]) {
170
+ //look for action advertisement if present and its value is not null
171
+ oInternalModelContext.getModel().setProperty(sDynamicActionEnabledPath, true);
172
+ } else if (oSelectedContext !== undefined) {
173
+ // Collect promises to retrieve singleton or normal property value asynchronously
174
+ aRequestPromises.push(CommonUtils.requestProperty(oSelectedContext, sAction, sProperty, sDynamicActionEnabledPath));
175
+ }
176
+ }
177
+ return aRequestPromises;
178
+ }
179
+ };
180
+ return ActionRuntime;
181
+ }, false);
182
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBY3Rpb25SdW50aW1lIiwic2V0QWN0aW9uRW5hYmxlbWVudCIsIm9JbnRlcm5hbE1vZGVsQ29udGV4dCIsIm9BY3Rpb25PcGVyYXRpb25BdmFpbGFibGVNYXAiLCJhU2VsZWN0ZWRDb250ZXh0cyIsInNDb250cm9sIiwiYVByb21pc2VzIiwic0FjdGlvbiIsImFSZXF1ZXN0UHJvbWlzZXMiLCJzZXRQcm9wZXJ0eSIsInNQcm9wZXJ0eSIsImkiLCJsZW5ndGgiLCJvU2VsZWN0ZWRDb250ZXh0Iiwib0NvbnRleHREYXRhIiwiZ2V0T2JqZWN0IiwiX3NldEFjdGlvbkVuYWJsZW1lbnRGb3JUYWJsZSIsImJFbmFibGVkIiwiYUFwcGxpY2FibGUiLCJhTm90QXBwbGljYWJsZSIsInB1c2giLCJDb21tb25VdGlscyIsInNldENvbnRleHRzQmFzZWRPbk9wZXJhdGlvbkF2YWlsYWJsZSIsIlByb21pc2UiLCJhbGwiLCJzZXRBY3Rpb25FbmFibGVtZW50QWZ0ZXJQYXRjaCIsIm9WaWV3Iiwib0xpc3RCaW5kaW5nIiwib0ludGVybmFsTW9kZWxDb250ZXh0RGF0YSIsIm9Db250cm9scyIsImNvbnRyb2xzIiwic0tleSIsImNvbnRyb2xJZCIsIm9UYWJsZSIsImJ5SWQiLCJpc0EiLCJvUm93QmluZGluZyIsImdldFJvd0JpbmRpbmciLCJnZXRCaW5kaW5nQ29udGV4dCIsIkpTT04iLCJwYXJzZSIsImRhdGEiLCJjdXN0b21EYXRhIiwiZ2V0U2VsZWN0ZWRDb250ZXh0cyIsInVwZGF0ZUVkaXRCdXR0b25WaXNpYmlsaXR5QW5kRW5hYmxlbWVudCIsImlWaWV3TGV2ZWwiLCJnZXRWaWV3RGF0YSIsInZpZXdMZXZlbCIsIm9Db250ZXh0Iiwib0FwcENvbXBvbmVudCIsImdldEFwcENvbXBvbmVudCIsInNNZXRhUGF0aCIsIk1vZGVsSGVscGVyIiwiZ2V0TWV0YVBhdGhGb3JDb250ZXh0Iiwic0VudGl0eVNldCIsImdldFJvb3RFbnRpdHlTZXRQYXRoIiwibWV0YUNvbnRleHQiLCJnZXRNb2RlbCIsImdldE1ldGFNb2RlbCIsImdldENvbnRleHQiLCJnZXRQYXRoIiwiY29udmVydGVyQ29udGV4dCIsIkNvbnZlcnRlckNvbnRleHQiLCJjcmVhdGVDb252ZXJ0ZXJDb250ZXh0Rm9yTWFjcm8iLCJnZXREaWFnbm9zdGljcyIsIm1lcmdlIiwidW5kZWZpbmVkIiwiZW50aXR5U2V0IiwiZ2V0RW50aXR5U2V0IiwiZW50aXR5VHlwZSIsImdldEVudGl0eVR5cGUiLCJ1cGRhdGVIaWRkZW4iLCJiVXBkYXRlSGlkZGVuIiwiaXNTaW5nbGV0b24iLCJhbm5vdGF0aW9ucyIsIlVJIiwiVXBkYXRlSGlkZGVuIiwidmFsdWVPZiIsImlzVXBkYXRlSGlkZGVuIiwic0VkaXRFbmFibGVCaW5kaW5nIiwiZ2V0RWRpdEJ1dHRvbkVuYWJsZWQiLCJkcmFmdFJvb3RQYXRoIiwiZ2V0RHJhZnRSb290UGF0aCIsInNTdGlja3lSb290UGF0aCIsImdldFN0aWNreVJvb3RQYXRoIiwic1BhdGgiLCJvUm9vdENvbnRleHQiLCJiaW5kQ29udGV4dCIsImdldEJvdW5kQ29udGV4dCIsInNIaWRkZW5FeHByZXNzaW9uIiwiY29tcGlsZUV4cHJlc3Npb24iLCJlcXVhbCIsImdldEhpZGRlbkV4cHJlc3Npb24iLCJ1cGRhdGVFZGl0TW9kZWxDb250ZXh0Iiwic0JpbmRpbmdFeHByZXNzaW9uIiwib0hpZGRlbkVsZW1lbnQiLCJBbnlFbGVtZW50IiwiYW55VGV4dCIsInNldEJpbmRpbmdDb250ZXh0IiwiYWRkRGVwZW5kZW50IiwiZ2V0QmluZGluZyIsIiQkZ3JvdXBJZCIsImF0dGFjaENoYW5nZSIsIm9FdmVudCIsIm9OZXdWYWx1ZSIsImdldFNvdXJjZSIsImdldEV4dGVybmFsVmFsdWUiLCJzRHluYW1pY0FjdGlvbkVuYWJsZWRQYXRoIiwib1RyYW5zZm9ybWVkQmluZGluZyIsInRyYW5zZm9ybVJlY3Vyc2l2ZWx5Iiwib0JpbmRpbmdFeHByZXNzaW9uIiwiY29uc3RhbnQiLCJwYXRoIiwic1Jlc3VsdCIsInNldER5bmFtaWNBY3Rpb25Db250ZXh0cyIsInJlcXVlc3RQcm9wZXJ0eSJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiQWN0aW9uUnVudGltZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEVudGl0eVNldCwgUHJpbWl0aXZlVHlwZSB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlc1wiO1xuaW1wb3J0IG1lcmdlIGZyb20gXCJzYXAvYmFzZS91dGlsL21lcmdlXCI7XG5pbXBvcnQgdHlwZSB7IF9SZXF1ZXN0ZWRQcm9wZXJ0eSB9IGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IENvbW1vblV0aWxzIGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IHR5cGUgeyBQYXRoSW5Nb2RlbEV4cHJlc3Npb24gfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9CaW5kaW5nVG9vbGtpdFwiO1xuaW1wb3J0IHsgY29tcGlsZUV4cHJlc3Npb24sIGNvbnN0YW50LCBlcXVhbCwgdHJhbnNmb3JtUmVjdXJzaXZlbHkgfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9CaW5kaW5nVG9vbGtpdFwiO1xuaW1wb3J0IHR5cGUgeyBJbnRlcm5hbE1vZGVsQ29udGV4dCB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL01vZGVsSGVscGVyXCI7XG5pbXBvcnQgTW9kZWxIZWxwZXIgZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvTW9kZWxIZWxwZXJcIjtcbmltcG9ydCB0eXBlIEV2ZW50IGZyb20gXCJzYXAvdWkvYmFzZS9FdmVudFwiO1xuaW1wb3J0IHR5cGUgVmlldyBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL1ZpZXdcIjtcbmltcG9ydCB0eXBlIFRhYmxlIGZyb20gXCJzYXAvdWkvbWRjL1RhYmxlXCI7XG5pbXBvcnQgdHlwZSBQcm9wZXJ0eUJpbmRpbmcgZnJvbSBcInNhcC91aS9tb2RlbC9Qcm9wZXJ0eUJpbmRpbmdcIjtcbmltcG9ydCB0eXBlIHsgT0RhdGFMaXN0QmluZGluZywgVjRDb250ZXh0IH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uLy4uL3R5cGVzL2V4dGVuc2lvbl90eXBlc1wiO1xuaW1wb3J0IEFueUVsZW1lbnQgZnJvbSBcIi4vY29udHJvbHMvQW55RWxlbWVudFwiO1xuaW1wb3J0IENvbnZlcnRlckNvbnRleHQgZnJvbSBcIi4vY29udmVydGVycy9Db252ZXJ0ZXJDb250ZXh0XCI7XG5pbXBvcnQgdHlwZSB7IEJhc2VNYW5pZmVzdFNldHRpbmdzIH0gZnJvbSBcIi4vY29udmVydGVycy9NYW5pZmVzdFNldHRpbmdzXCI7XG5pbXBvcnQgeyBnZXRFZGl0QnV0dG9uRW5hYmxlZCwgZ2V0SGlkZGVuRXhwcmVzc2lvbiB9IGZyb20gXCIuL2NvbnZlcnRlcnMvb2JqZWN0UGFnZS9IZWFkZXJBbmRGb290ZXJBY3Rpb25cIjtcblxuY29uc3QgQWN0aW9uUnVudGltZSA9IHtcblx0LyoqXG5cdCAqIFNldHMgdGhlIGFjdGlvbiBlbmFibGVtZW50LlxuXHQgKlxuXHQgKiBAZnVuY3Rpb25cblx0ICogQG5hbWUgc2V0QWN0aW9uRW5hYmxlbWVudFxuXHQgKiBAcGFyYW0gb0ludGVybmFsTW9kZWxDb250ZXh0IE9iamVjdCBjb250YWluaW5nIHRoZSBjb250ZXh0IG1vZGVsXG5cdCAqIEBwYXJhbSBvQWN0aW9uT3BlcmF0aW9uQXZhaWxhYmxlTWFwIE1hcCBjb250YWluaW5nIHRoZSBvcGVyYXRpb24gYXZhaWxhYmlsaXR5IG9mIGFjdGlvbnNcblx0ICogQHBhcmFtIGFTZWxlY3RlZENvbnRleHRzIEFycmF5IGNvbnRhaW5pbmcgc2VsZWN0ZWQgY29udGV4dHMgb2YgdGhlIGNoYXJ0XG5cdCAqIEBwYXJhbSBzQ29udHJvbCBDb250cm9sIG5hbWVcblx0ICogQHJldHVybnMgVGhlIGFjdGlvbiBlbmFibGVtZW50IHByb21pc2VzXG5cdCAqIEB1aTUtcmVzdHJpY3RlZFxuXHQgKi9cblx0c2V0QWN0aW9uRW5hYmxlbWVudDogZnVuY3Rpb24gKFxuXHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dDogSW50ZXJuYWxNb2RlbENvbnRleHQsXG5cdFx0b0FjdGlvbk9wZXJhdGlvbkF2YWlsYWJsZU1hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPixcblx0XHRhU2VsZWN0ZWRDb250ZXh0czogVjRDb250ZXh0W10sXG5cdFx0c0NvbnRyb2w6IHN0cmluZ1xuXHQpIHtcblx0XHRjb25zdCBhUHJvbWlzZXMgPSBbXTtcblx0XHRmb3IgKGNvbnN0IHNBY3Rpb24gaW4gb0FjdGlvbk9wZXJhdGlvbkF2YWlsYWJsZU1hcCkge1xuXHRcdFx0bGV0IGFSZXF1ZXN0UHJvbWlzZXM6IFByb21pc2U8X1JlcXVlc3RlZFByb3BlcnR5PltdID0gW107XG5cdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoc0FjdGlvbiwgZmFsc2UpO1xuXHRcdFx0Y29uc3Qgc1Byb3BlcnR5ID0gb0FjdGlvbk9wZXJhdGlvbkF2YWlsYWJsZU1hcFtzQWN0aW9uXTtcblx0XHRcdGZvciAobGV0IGkgPSAwOyBpIDwgYVNlbGVjdGVkQ29udGV4dHMubGVuZ3RoOyBpKyspIHtcblx0XHRcdFx0Y29uc3Qgb1NlbGVjdGVkQ29udGV4dCA9IGFTZWxlY3RlZENvbnRleHRzW2ldO1xuXHRcdFx0XHRpZiAob1NlbGVjdGVkQ29udGV4dCkge1xuXHRcdFx0XHRcdGNvbnN0IG9Db250ZXh0RGF0YSA9IG9TZWxlY3RlZENvbnRleHQuZ2V0T2JqZWN0KCkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG5cdFx0XHRcdFx0aWYgKHNDb250cm9sID09PSBcImNoYXJ0XCIpIHtcblx0XHRcdFx0XHRcdGlmICgoc1Byb3BlcnR5ID09PSBudWxsICYmICEhb0NvbnRleHREYXRhW2AjJHtzQWN0aW9ufWBdKSB8fCBvU2VsZWN0ZWRDb250ZXh0LmdldE9iamVjdChzUHJvcGVydHkpKSB7XG5cdFx0XHRcdFx0XHRcdC8vbG9vayBmb3IgYWN0aW9uIGFkdmVydGlzZW1lbnQgaWYgcHJlc2VudCBhbmQgaXRzIHZhbHVlIGlzIG5vdCBudWxsXG5cdFx0XHRcdFx0XHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dC5zZXRQcm9wZXJ0eShzQWN0aW9uLCB0cnVlKTtcblx0XHRcdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fSBlbHNlIGlmIChzQ29udHJvbCA9PT0gXCJ0YWJsZVwiKSB7XG5cdFx0XHRcdFx0XHRhUmVxdWVzdFByb21pc2VzID0gdGhpcy5fc2V0QWN0aW9uRW5hYmxlbWVudEZvclRhYmxlKFxuXHRcdFx0XHRcdFx0XHRvU2VsZWN0ZWRDb250ZXh0LFxuXHRcdFx0XHRcdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQsXG5cdFx0XHRcdFx0XHRcdHNBY3Rpb24sXG5cdFx0XHRcdFx0XHRcdHNQcm9wZXJ0eSxcblx0XHRcdFx0XHRcdFx0YVJlcXVlc3RQcm9taXNlc1xuXHRcdFx0XHRcdFx0KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdGlmIChzQ29udHJvbCA9PT0gXCJ0YWJsZVwiKSB7XG5cdFx0XHRcdGlmICghYVNlbGVjdGVkQ29udGV4dHMubGVuZ3RoKSB7XG5cdFx0XHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KGBkeW5hbWljQWN0aW9ucy8ke3NBY3Rpb259YCwge1xuXHRcdFx0XHRcdFx0YkVuYWJsZWQ6IGZhbHNlLFxuXHRcdFx0XHRcdFx0YUFwcGxpY2FibGU6IFtdLFxuXHRcdFx0XHRcdFx0YU5vdEFwcGxpY2FibGU6IFtdXG5cdFx0XHRcdFx0fSk7XG5cdFx0XHRcdFx0YVByb21pc2VzLnB1c2goQ29tbW9uVXRpbHMuc2V0Q29udGV4dHNCYXNlZE9uT3BlcmF0aW9uQXZhaWxhYmxlKG9JbnRlcm5hbE1vZGVsQ29udGV4dCwgW10pKTtcblx0XHRcdFx0fSBlbHNlIGlmIChhU2VsZWN0ZWRDb250ZXh0cy5sZW5ndGggJiYgdHlwZW9mIHNQcm9wZXJ0eSA9PT0gXCJzdHJpbmdcIikge1xuXHRcdFx0XHRcdC8vIFdoZW4gYWxsIHByb3BlcnR5IHZhbHVlcyBoYXZlIGJlZW4gcmV0cmlldmVkLCBzZXRcblx0XHRcdFx0XHQvLyBUaGUgYXBwbGljYWJsZSBhbmQgbm90LWFwcGxpY2FibGUgc2VsZWN0ZWQgY29udGV4dHMgZm9yIGVhY2ggYWN0aW9uIGFuZFxuXHRcdFx0XHRcdC8vIFRoZSBlbmFibGVkIHByb3BlcnR5IG9mIHRoZSBkeW5hbWljIGFjdGlvbiBpbiBpbnRlcm5hbCBtb2RlbCBjb250ZXh0LlxuXHRcdFx0XHRcdGFQcm9taXNlcy5wdXNoKENvbW1vblV0aWxzLnNldENvbnRleHRzQmFzZWRPbk9wZXJhdGlvbkF2YWlsYWJsZShvSW50ZXJuYWxNb2RlbENvbnRleHQsIGFSZXF1ZXN0UHJvbWlzZXMpKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRyZXR1cm4gUHJvbWlzZS5hbGwoYVByb21pc2VzKTtcblx0fSxcblx0c2V0QWN0aW9uRW5hYmxlbWVudEFmdGVyUGF0Y2g6IGZ1bmN0aW9uIChvVmlldzogVmlldywgb0xpc3RCaW5kaW5nOiBPRGF0YUxpc3RCaW5kaW5nLCBvSW50ZXJuYWxNb2RlbENvbnRleHQ6IEludGVybmFsTW9kZWxDb250ZXh0KSB7XG5cdFx0Y29uc3Qgb0ludGVybmFsTW9kZWxDb250ZXh0RGF0YSA9IG9JbnRlcm5hbE1vZGVsQ29udGV4dD8uZ2V0T2JqZWN0KCkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG5cdFx0Y29uc3Qgb0NvbnRyb2xzID0gKG9JbnRlcm5hbE1vZGVsQ29udGV4dERhdGE/LmNvbnRyb2xzIHx8IHt9KSBhcyBSZWNvcmQ8c3RyaW5nLCB7IGNvbnRyb2xJZD86IHN0cmluZyB9Pjtcblx0XHRmb3IgKGNvbnN0IHNLZXkgaW4gb0NvbnRyb2xzKSB7XG5cdFx0XHRpZiAob0NvbnRyb2xzW3NLZXldICYmIG9Db250cm9sc1tzS2V5XS5jb250cm9sSWQpIHtcblx0XHRcdFx0Y29uc3Qgb1RhYmxlID0gb1ZpZXcuYnlJZChzS2V5KTtcblx0XHRcdFx0aWYgKG9UYWJsZSAmJiBvVGFibGUuaXNBPFRhYmxlPihcInNhcC51aS5tZGMuVGFibGVcIikpIHtcblx0XHRcdFx0XHRjb25zdCBvUm93QmluZGluZyA9IG9UYWJsZS5nZXRSb3dCaW5kaW5nKCk7XG5cdFx0XHRcdFx0aWYgKG9Sb3dCaW5kaW5nID09IG9MaXN0QmluZGluZykge1xuXHRcdFx0XHRcdFx0QWN0aW9uUnVudGltZS5zZXRBY3Rpb25FbmFibGVtZW50KFxuXHRcdFx0XHRcdFx0XHRvVGFibGUuZ2V0QmluZGluZ0NvbnRleHQoXCJpbnRlcm5hbFwiKSBhcyBJbnRlcm5hbE1vZGVsQ29udGV4dCxcblx0XHRcdFx0XHRcdFx0SlNPTi5wYXJzZShvVGFibGUuZGF0YShcIm9wZXJhdGlvbkF2YWlsYWJsZU1hcFwiKS5jdXN0b21EYXRhKSxcblx0XHRcdFx0XHRcdFx0b1RhYmxlLmdldFNlbGVjdGVkQ29udGV4dHMoKSBhcyBWNENvbnRleHRbXSxcblx0XHRcdFx0XHRcdFx0XCJ0YWJsZVwiXG5cdFx0XHRcdFx0XHQpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fSxcblxuXHR1cGRhdGVFZGl0QnV0dG9uVmlzaWJpbGl0eUFuZEVuYWJsZW1lbnQob1ZpZXc6IFZpZXcpIHtcblx0XHRjb25zdCBpVmlld0xldmVsID0gKG9WaWV3LmdldFZpZXdEYXRhKCkgYXMgQmFzZU1hbmlmZXN0U2V0dGluZ3MpPy52aWV3TGV2ZWw7XG5cdFx0aWYgKChpVmlld0xldmVsIGFzIG51bWJlcikgPiAxKSB7XG5cdFx0XHRjb25zdCBvQ29udGV4dCA9IG9WaWV3LmdldEJpbmRpbmdDb250ZXh0KCkgYXMgVjRDb250ZXh0O1xuXHRcdFx0Y29uc3Qgb0FwcENvbXBvbmVudCA9IENvbW1vblV0aWxzLmdldEFwcENvbXBvbmVudChvVmlldyk7XG5cdFx0XHRjb25zdCBzTWV0YVBhdGggPSBNb2RlbEhlbHBlci5nZXRNZXRhUGF0aEZvckNvbnRleHQob0NvbnRleHQpO1xuXHRcdFx0Y29uc3Qgc0VudGl0eVNldCA9IE1vZGVsSGVscGVyLmdldFJvb3RFbnRpdHlTZXRQYXRoKHNNZXRhUGF0aCk7XG5cdFx0XHRjb25zdCBtZXRhQ29udGV4dCA9IG9Db250ZXh0Py5nZXRNb2RlbCgpPy5nZXRNZXRhTW9kZWwoKT8uZ2V0Q29udGV4dChvQ29udGV4dD8uZ2V0UGF0aCgpKTtcblx0XHRcdGNvbnN0IGNvbnZlcnRlckNvbnRleHQgPSBDb252ZXJ0ZXJDb250ZXh0Py5jcmVhdGVDb252ZXJ0ZXJDb250ZXh0Rm9yTWFjcm8oXG5cdFx0XHRcdHNFbnRpdHlTZXQsXG5cdFx0XHRcdG1ldGFDb250ZXh0LFxuXHRcdFx0XHRvQXBwQ29tcG9uZW50LmdldERpYWdub3N0aWNzKCksXG5cdFx0XHRcdG1lcmdlLFxuXHRcdFx0XHR1bmRlZmluZWRcblx0XHRcdCk7XG5cdFx0XHRjb25zdCBlbnRpdHlTZXQgPSBjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVNldCgpO1xuXHRcdFx0Y29uc3QgZW50aXR5VHlwZSA9IGNvbnZlcnRlckNvbnRleHQuZ2V0RW50aXR5VHlwZSgpO1xuXHRcdFx0bGV0IHVwZGF0ZUhpZGRlbjtcblx0XHRcdC8vRmluZCB0aGUgVXBkYXRlIEhpZGRlbiBvZiB0aGUgcm9vdCBlbnRpdHkgc2V0IGFuZCBiaW5kIHRoZSBwcm9wZXJ0eSB0byBBbnlFbGVtZW50LCBhbnkgY2hhbmdlcyBpbiB0aGUgcGF0aCBvZiB0aGUgcm9vdCBVcGRhdGVIaWRkZW4gd2lsbCBiZSB1cGRhdGVkIHZpYSB0aGUgcHJvcGVydHksIGludGVybmFsIG1vZGVsIGNvbnRleHQgaXMgdXBkYXRlZCBiYXNlZCBvbiB0aGUgcHJvcGVydHlcblx0XHRcdGNvbnN0IGJVcGRhdGVIaWRkZW4gPVxuXHRcdFx0XHRlbnRpdHlTZXQgJiYgIU1vZGVsSGVscGVyLmlzU2luZ2xldG9uKGVudGl0eVNldCkgJiYgKGVudGl0eVNldCBhcyBFbnRpdHlTZXQpLmFubm90YXRpb25zLlVJPy5VcGRhdGVIaWRkZW4/LnZhbHVlT2YoKTtcblx0XHRcdGlmIChiVXBkYXRlSGlkZGVuICE9PSB0cnVlKSB7XG5cdFx0XHRcdHVwZGF0ZUhpZGRlbiA9IE1vZGVsSGVscGVyLmlzVXBkYXRlSGlkZGVuKGVudGl0eVNldCwgZW50aXR5VHlwZSk7XG5cdFx0XHR9XG5cdFx0XHQvL0ZpbmQgdGhlIG9wZXJhdGlvbiBhdmFpbGFibGUgcHJvcGVydHkgb2YgdGhlIHJvb3QgZWRpdCBjb25maWd1cmF0aW9uIGFuZCBmZXRjaCB0aGUgcHJvcGVydHkgdXNpbmcgQW55RWxlbWVudFxuXHRcdFx0Y29uc3Qgc0VkaXRFbmFibGVCaW5kaW5nID0gZ2V0RWRpdEJ1dHRvbkVuYWJsZWQoY29udmVydGVyQ29udGV4dCwgdW5kZWZpbmVkKTtcblx0XHRcdGNvbnN0IGRyYWZ0Um9vdFBhdGggPSBNb2RlbEhlbHBlci5nZXREcmFmdFJvb3RQYXRoKG9Db250ZXh0KTtcblx0XHRcdGNvbnN0IHNTdGlja3lSb290UGF0aCA9IE1vZGVsSGVscGVyLmdldFN0aWNreVJvb3RQYXRoKG9Db250ZXh0KTtcblx0XHRcdGNvbnN0IHNQYXRoID0gZHJhZnRSb290UGF0aCB8fCBzU3RpY2t5Um9vdFBhdGg7XG5cdFx0XHRjb25zdCBvSW50ZXJuYWxNb2RlbENvbnRleHQgPSBvVmlldy5nZXRCaW5kaW5nQ29udGV4dChcImludGVybmFsXCIpIGFzIEludGVybmFsTW9kZWxDb250ZXh0O1xuXHRcdFx0aWYgKHNQYXRoKSB7XG5cdFx0XHRcdGNvbnN0IG9Sb290Q29udGV4dCA9IG9WaWV3LmdldE1vZGVsKCkuYmluZENvbnRleHQoc1BhdGgpLmdldEJvdW5kQ29udGV4dCgpIGFzIFY0Q29udGV4dDtcblx0XHRcdFx0aWYgKHVwZGF0ZUhpZGRlbiAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRcdFx0Y29uc3Qgc0hpZGRlbkV4cHJlc3Npb24gPSBjb21waWxlRXhwcmVzc2lvbihlcXVhbChnZXRIaWRkZW5FeHByZXNzaW9uKGNvbnZlcnRlckNvbnRleHQsIHVwZGF0ZUhpZGRlbiksIGZhbHNlKSk7XG5cdFx0XHRcdFx0dGhpcy51cGRhdGVFZGl0TW9kZWxDb250ZXh0KHNIaWRkZW5FeHByZXNzaW9uLCBvVmlldywgb1Jvb3RDb250ZXh0LCBcInJvb3RFZGl0VmlzaWJsZVwiLCBvSW50ZXJuYWxNb2RlbENvbnRleHQpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmIChzRWRpdEVuYWJsZUJpbmRpbmcpIHtcblx0XHRcdFx0XHR0aGlzLnVwZGF0ZUVkaXRNb2RlbENvbnRleHQoc0VkaXRFbmFibGVCaW5kaW5nLCBvVmlldywgb1Jvb3RDb250ZXh0LCBcInJvb3RFZGl0RW5hYmxlZFwiLCBvSW50ZXJuYWxNb2RlbENvbnRleHQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9LFxuXG5cdHVwZGF0ZUVkaXRNb2RlbENvbnRleHQ6IGZ1bmN0aW9uIChcblx0XHRzQmluZGluZ0V4cHJlc3Npb246IHN0cmluZyB8IHVuZGVmaW5lZCxcblx0XHRvVmlldzogVmlldyxcblx0XHRvUm9vdENvbnRleHQ6IFY0Q29udGV4dCxcblx0XHRzUHJvcGVydHk6IHN0cmluZyxcblx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQ6IEludGVybmFsTW9kZWxDb250ZXh0XG5cdCkge1xuXHRcdGlmIChzQmluZGluZ0V4cHJlc3Npb24pIHtcblx0XHRcdGNvbnN0IG9IaWRkZW5FbGVtZW50ID0gbmV3IEFueUVsZW1lbnQoeyBhbnlUZXh0OiBzQmluZGluZ0V4cHJlc3Npb24gfSk7XG5cdFx0XHRvSGlkZGVuRWxlbWVudC5zZXRCaW5kaW5nQ29udGV4dChudWxsKTtcblx0XHRcdG9WaWV3LmFkZERlcGVuZGVudChvSGlkZGVuRWxlbWVudCk7XG5cdFx0XHRvSGlkZGVuRWxlbWVudC5nZXRCaW5kaW5nKFwiYW55VGV4dFwiKTtcblx0XHRcdGNvbnN0IG9Db250ZXh0ID0gb0hpZGRlbkVsZW1lbnRcblx0XHRcdFx0LmdldE1vZGVsKClcblx0XHRcdFx0Py5iaW5kQ29udGV4dChvUm9vdENvbnRleHQuZ2V0UGF0aCgpLCBvUm9vdENvbnRleHQsIHsgJCRncm91cElkOiBcIiRhdXRvLkhlcm9lc1wiIH0pXG5cdFx0XHRcdD8uZ2V0Qm91bmRDb250ZXh0KCk7XG5cdFx0XHRvSGlkZGVuRWxlbWVudC5zZXRCaW5kaW5nQ29udGV4dChvQ29udGV4dCk7XG5cdFx0XHRvSGlkZGVuRWxlbWVudD8uZ2V0QmluZGluZyhcImFueVRleHRcIik/LmF0dGFjaENoYW5nZSgob0V2ZW50OiBFdmVudCkgPT4ge1xuXHRcdFx0XHRjb25zdCBvTmV3VmFsdWUgPSAob0V2ZW50LmdldFNvdXJjZSgpIGFzIFByb3BlcnR5QmluZGluZykuZ2V0RXh0ZXJuYWxWYWx1ZSgpO1xuXHRcdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoc1Byb3BlcnR5LCBvTmV3VmFsdWUpO1xuXHRcdFx0fSk7XG5cdFx0fVxuXHR9LFxuXG5cdF9zZXRBY3Rpb25FbmFibGVtZW50Rm9yVGFibGU6IGZ1bmN0aW9uIChcblx0XHRvU2VsZWN0ZWRDb250ZXh0OiBWNENvbnRleHQgfCB1bmRlZmluZWQsXG5cdFx0b0ludGVybmFsTW9kZWxDb250ZXh0OiBJbnRlcm5hbE1vZGVsQ29udGV4dCxcblx0XHRzQWN0aW9uOiBzdHJpbmcsXG5cdFx0c1Byb3BlcnR5OiBzdHJpbmcsXG5cdFx0YVJlcXVlc3RQcm9taXNlczogUHJvbWlzZTxfUmVxdWVzdGVkUHJvcGVydHk+W11cblx0KSB7XG5cdFx0Ly8gUmVzZXQgYWxsIHByb3BlcnRpZXMgYmVmb3JlIGNvbXB1dGF0aW9uXG5cdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KGBkeW5hbWljQWN0aW9ucy8ke3NBY3Rpb259YCwge1xuXHRcdFx0YkVuYWJsZWQ6IGZhbHNlLFxuXHRcdFx0YUFwcGxpY2FibGU6IFtdLFxuXHRcdFx0YU5vdEFwcGxpY2FibGU6IFtdXG5cdFx0fSk7XG5cdFx0Ly8gTm90ZSB0aGF0IG5vbiBkeW5hbWljIGFjdGlvbnMgYXJlIG5vdCBwcm9jZXNzZWQgaGVyZS4gVGhleSBhcmUgZW5hYmxlZCBiZWNhdXNlXG5cdFx0Ly8gb25lIG9yIG1vcmUgYXJlIHNlbGVjdGVkIGFuZCB0aGUgc2Vjb25kIHBhcnQgb2YgdGhlIGNvbmRpdGlvbiBpbiB0aGUgdGVtcGxhdGluZ1xuXHRcdC8vIGlzIHRoZW4gdW5kZWZpbmVkIGFuZCB0aHVzIHRoZSBidXR0b24gdGFrZXMgdGhlIGRlZmF1bHQgZW5hYmxpbmcsIHdoaWNoIGlzIHRydWUhXG5cdFx0Y29uc3QgYUFwcGxpY2FibGUgPSBbXSxcblx0XHRcdGFOb3RBcHBsaWNhYmxlID0gW10sXG5cdFx0XHRzRHluYW1pY0FjdGlvbkVuYWJsZWRQYXRoID0gYCR7b0ludGVybmFsTW9kZWxDb250ZXh0LmdldFBhdGgoKX0vZHluYW1pY0FjdGlvbnMvJHtzQWN0aW9ufS9iRW5hYmxlZGA7XG5cdFx0aWYgKHR5cGVvZiBzUHJvcGVydHkgPT09IFwib2JqZWN0XCIgJiYgc1Byb3BlcnR5ICE9PSBudWxsICYmIHNQcm9wZXJ0eSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRpZiAob1NlbGVjdGVkQ29udGV4dCkge1xuXHRcdFx0XHRjb25zdCBvQ29udGV4dERhdGEgPSBvU2VsZWN0ZWRDb250ZXh0LmdldE9iamVjdCgpIGFzIFJlY29yZDxzdHJpbmcsIFByaW1pdGl2ZVR5cGU+O1xuXHRcdFx0XHRjb25zdCBvVHJhbnNmb3JtZWRCaW5kaW5nID0gdHJhbnNmb3JtUmVjdXJzaXZlbHkoXG5cdFx0XHRcdFx0c1Byb3BlcnR5LFxuXHRcdFx0XHRcdFwiUGF0aEluTW9kZWxcIixcblx0XHRcdFx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbG9vcC1mdW5jXG5cdFx0XHRcdFx0ZnVuY3Rpb24gKG9CaW5kaW5nRXhwcmVzc2lvbjogUGF0aEluTW9kZWxFeHByZXNzaW9uPFByaW1pdGl2ZVR5cGU+KSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gb0NvbnRleHREYXRhID8gY29uc3RhbnQob0NvbnRleHREYXRhW29CaW5kaW5nRXhwcmVzc2lvbi5wYXRoXSkgOiBjb25zdGFudChmYWxzZSk7XG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0XHR0cnVlXG5cdFx0XHRcdCk7XG5cdFx0XHRcdGNvbnN0IHNSZXN1bHQgPSBjb21waWxlRXhwcmVzc2lvbihvVHJhbnNmb3JtZWRCaW5kaW5nKTtcblx0XHRcdFx0aWYgKHNSZXN1bHQgPT09IFwidHJ1ZVwiKSB7XG5cdFx0XHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LmdldE1vZGVsKCkuc2V0UHJvcGVydHkoc0R5bmFtaWNBY3Rpb25FbmFibGVkUGF0aCwgdHJ1ZSk7XG5cdFx0XHRcdFx0YUFwcGxpY2FibGUucHVzaChvU2VsZWN0ZWRDb250ZXh0KTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRhTm90QXBwbGljYWJsZS5wdXNoKG9TZWxlY3RlZENvbnRleHQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRDb21tb25VdGlscy5zZXREeW5hbWljQWN0aW9uQ29udGV4dHMob0ludGVybmFsTW9kZWxDb250ZXh0LCBzQWN0aW9uLCBhQXBwbGljYWJsZSwgYU5vdEFwcGxpY2FibGUpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRjb25zdCBvQ29udGV4dERhdGEgPSBvU2VsZWN0ZWRDb250ZXh0Py5nZXRPYmplY3QoKSBhcyBSZWNvcmQ8c3RyaW5nLCBQcmltaXRpdmVUeXBlPjtcblx0XHRcdGlmIChzUHJvcGVydHkgPT09IG51bGwgJiYgISFvQ29udGV4dERhdGFbYCMke3NBY3Rpb259YF0pIHtcblx0XHRcdFx0Ly9sb29rIGZvciBhY3Rpb24gYWR2ZXJ0aXNlbWVudCBpZiBwcmVzZW50IGFuZCBpdHMgdmFsdWUgaXMgbm90IG51bGxcblx0XHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LmdldE1vZGVsKCkuc2V0UHJvcGVydHkoc0R5bmFtaWNBY3Rpb25FbmFibGVkUGF0aCwgdHJ1ZSk7XG5cdFx0XHR9IGVsc2UgaWYgKG9TZWxlY3RlZENvbnRleHQgIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0XHQvLyBDb2xsZWN0IHByb21pc2VzIHRvIHJldHJpZXZlIHNpbmdsZXRvbiBvciBub3JtYWwgcHJvcGVydHkgdmFsdWUgYXN5bmNocm9ub3VzbHlcblx0XHRcdFx0YVJlcXVlc3RQcm9taXNlcy5wdXNoKENvbW1vblV0aWxzLnJlcXVlc3RQcm9wZXJ0eShvU2VsZWN0ZWRDb250ZXh0LCBzQWN0aW9uLCBzUHJvcGVydHksIHNEeW5hbWljQWN0aW9uRW5hYmxlZFBhdGgpKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0cmV0dXJuIGFSZXF1ZXN0UHJvbWlzZXM7XG5cdH1cbn07XG5leHBvcnQgZGVmYXVsdCBBY3Rpb25SdW50aW1lO1xuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7Ozs7O0VBa0JBLE1BQU1BLGFBQWEsR0FBRztJQUNyQjtBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQ0MsbUJBQW1CLEVBQUUsVUFDcEJDLHFCQUEyQyxFQUMzQ0MsNEJBQW9ELEVBQ3BEQyxpQkFBOEIsRUFDOUJDLFFBQWdCLEVBQ2Y7TUFDRCxNQUFNQyxTQUFTLEdBQUcsRUFBRTtNQUNwQixLQUFLLE1BQU1DLE9BQU8sSUFBSUosNEJBQTRCLEVBQUU7UUFDbkQsSUFBSUssZ0JBQStDLEdBQUcsRUFBRTtRQUN4RE4scUJBQXFCLENBQUNPLFdBQVcsQ0FBQ0YsT0FBTyxFQUFFLEtBQUssQ0FBQztRQUNqRCxNQUFNRyxTQUFTLEdBQUdQLDRCQUE0QixDQUFDSSxPQUFPLENBQUM7UUFDdkQsS0FBSyxJQUFJSSxDQUFDLEdBQUcsQ0FBQyxFQUFFQSxDQUFDLEdBQUdQLGlCQUFpQixDQUFDUSxNQUFNLEVBQUVELENBQUMsRUFBRSxFQUFFO1VBQ2xELE1BQU1FLGdCQUFnQixHQUFHVCxpQkFBaUIsQ0FBQ08sQ0FBQyxDQUFDO1VBQzdDLElBQUlFLGdCQUFnQixFQUFFO1lBQ3JCLE1BQU1DLFlBQVksR0FBR0QsZ0JB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
@@ -1,184 +1,6 @@
1
1
  /*!
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved
3
+ * (c) Copyright 2009-2023 SAP SE. All rights reserved
4
4
  */
5
- sap.ui.define(["sap/base/util/merge", "sap/fe/core/CommonUtils", "sap/fe/core/helpers/BindingToolkit", "sap/fe/core/helpers/ModelHelper", "./controls/AnyElement", "./converters/ConverterContext", "./converters/objectPage/HeaderAndFooterAction"], function (merge, CommonUtils, BindingToolkit, ModelHelper, AnyElement, ConverterContext, HeaderAndFooterAction) {
6
- "use strict";
7
-
8
- var getHiddenExpression = HeaderAndFooterAction.getHiddenExpression;
9
- var getEditButtonEnabled = HeaderAndFooterAction.getEditButtonEnabled;
10
- var transformRecursively = BindingToolkit.transformRecursively;
11
- var equal = BindingToolkit.equal;
12
- var constant = BindingToolkit.constant;
13
- var compileExpression = BindingToolkit.compileExpression;
14
- var ActionRuntime = {
15
- /**
16
- * Sets the action enablement.
17
- *
18
- * @function
19
- * @name setActionEnablement
20
- * @param oInternalModelContext Object containing the context model
21
- * @param oActionOperationAvailableMap Map containing the operation availability of actions
22
- * @param aSelectedContexts Array containing selected contexts of the chart
23
- * @param sControl Control name
24
- * @returns {void} Promise.All(promises)
25
- * @ui5-restricted
26
- */
27
- setActionEnablement: function (oInternalModelContext, oActionOperationAvailableMap, aSelectedContexts, sControl) {
28
- var aPromises = [];
29
- for (var sAction in oActionOperationAvailableMap) {
30
- var aRequestPromises = [];
31
- oInternalModelContext.setProperty(sAction, false);
32
- var sProperty = oActionOperationAvailableMap[sAction];
33
- for (var i = 0; i < aSelectedContexts.length; i++) {
34
- var oSelectedContext = aSelectedContexts[i];
35
- if (oSelectedContext) {
36
- var oContextData = oSelectedContext.getObject();
37
- if (sControl === "chart") {
38
- if (sProperty === null && !!oContextData["#".concat(sAction)] || oSelectedContext.getObject(sProperty)) {
39
- //look for action advertisement if present and its value is not null
40
- oInternalModelContext.setProperty(sAction, true);
41
- break;
42
- }
43
- } else if (sControl === "table") {
44
- aRequestPromises = this._setActionEnablementForTable(oSelectedContext, oInternalModelContext, sAction, sProperty, aRequestPromises);
45
- }
46
- }
47
- }
48
- if (sControl === "table") {
49
- if (!aSelectedContexts.length) {
50
- oInternalModelContext.setProperty("dynamicActions/".concat(sAction), {
51
- bEnabled: false,
52
- aApplicable: [],
53
- aNotApplicable: []
54
- });
55
- aPromises.push(CommonUtils.setContextsBasedOnOperationAvailable(oInternalModelContext, []));
56
- } else if (aSelectedContexts.length && typeof sProperty === "string") {
57
- // When all property values have been retrieved, set
58
- // The applicable and not-applicable selected contexts for each action and
59
- // The enabled property of the dynamic action in internal model context.
60
- aPromises.push(CommonUtils.setContextsBasedOnOperationAvailable(oInternalModelContext, aRequestPromises));
61
- }
62
- }
63
- }
64
- if (sControl === "table") {
65
- return Promise.all(aPromises);
66
- }
67
- },
68
- setActionEnablementAfterPatch: function (oView, oListBinding, oInternalModelContext) {
69
- var oInternalModelContextData = oInternalModelContext === null || oInternalModelContext === void 0 ? void 0 : oInternalModelContext.getObject();
70
- var oControls = (oInternalModelContextData === null || oInternalModelContextData === void 0 ? void 0 : oInternalModelContextData.controls) || {};
71
- for (var sKey in oControls) {
72
- if (oControls[sKey] && oControls[sKey].controlId) {
73
- var oTable = oView.byId(sKey);
74
- if (oTable && oTable.isA("sap.ui.mdc.Table")) {
75
- var oRowBinding = oTable.getRowBinding();
76
- if (oRowBinding == oListBinding) {
77
- ActionRuntime.setActionEnablement(oInternalModelContext, JSON.parse(oTable.data("operationAvailableMap").customData), oTable.getSelectedContexts(), "table");
78
- }
79
- }
80
- }
81
- }
82
- },
83
- updateEditButtonVisibilityAndEnablement: function (oView) {
84
- var _oView$getViewData;
85
- var iViewLevel = (_oView$getViewData = oView.getViewData()) === null || _oView$getViewData === void 0 ? void 0 : _oView$getViewData.viewLevel;
86
- if (iViewLevel > 1) {
87
- var _oContext$getModel, _oContext$getModel$ge, _annotations$UI, _annotations$UI$Updat;
88
- var oContext = oView.getBindingContext();
89
- var oAppComponent = CommonUtils.getAppComponent(oView);
90
- var sMetaPath = ModelHelper.getMetaPathForContext(oContext);
91
- var sEntitySet = ModelHelper.getRootEntitySetPath(sMetaPath);
92
- var metaContext = oContext === null || oContext === void 0 ? void 0 : (_oContext$getModel = oContext.getModel()) === null || _oContext$getModel === void 0 ? void 0 : (_oContext$getModel$ge = _oContext$getModel.getMetaModel()) === null || _oContext$getModel$ge === void 0 ? void 0 : _oContext$getModel$ge.getContext(oContext === null || oContext === void 0 ? void 0 : oContext.getPath());
93
- var converterContext = ConverterContext === null || ConverterContext === void 0 ? void 0 : ConverterContext.createConverterContextForMacro(sEntitySet, metaContext, oAppComponent.getDiagnostics(), merge, undefined);
94
- var entitySet = converterContext.getEntitySet();
95
- var entityType = converterContext.getEntityType();
96
- var updateHidden;
97
- //Find the Update Hidden of the root entity set and bind the property to AnyElement, any changes in the path of the root UpdateHidden will be updated via the property, internal model context is updated based on the property
98
- var bUpdateHidden = entitySet && !ModelHelper.isSingleton(entitySet) && ((_annotations$UI = entitySet.annotations.UI) === null || _annotations$UI === void 0 ? void 0 : (_annotations$UI$Updat = _annotations$UI.UpdateHidden) === null || _annotations$UI$Updat === void 0 ? void 0 : _annotations$UI$Updat.valueOf());
99
- if (bUpdateHidden !== true) {
100
- updateHidden = ModelHelper.isUpdateHidden(entitySet, entityType);
101
- }
102
- //Find the operation available property of the root edit configuration and fetch the property using AnyElement
103
- var sEditEnableBinding = getEditButtonEnabled(converterContext, undefined);
104
- var draftRootPath = ModelHelper.getDraftRootPath(oContext);
105
- var sStickyRootPath = ModelHelper.getStickyRootPath(oContext);
106
- var sPath = draftRootPath || sStickyRootPath;
107
- var oInternalModelContext = oView.getBindingContext("internal");
108
- if (sPath) {
109
- var oRootContext = oView.getModel().bindContext(sPath).getBoundContext();
110
- if (updateHidden !== undefined) {
111
- var sHiddenExpression = compileExpression(equal(getHiddenExpression(converterContext, updateHidden), false));
112
- this.updateEditModelContext(sHiddenExpression, oView, oRootContext, "rootEditVisible", oInternalModelContext);
113
- }
114
- if (sEditEnableBinding) {
115
- this.updateEditModelContext(sEditEnableBinding, oView, oRootContext, "rootEditEnabled", oInternalModelContext);
116
- }
117
- }
118
- }
119
- },
120
- updateEditModelContext: function (sBindingExpression, oView, oRootContext, sProperty, oInternalModelContext) {
121
- if (sBindingExpression) {
122
- var _oHiddenElement$getMo, _oHiddenElement$getMo2, _oHiddenElement$getBi;
123
- var oHiddenElement = new AnyElement({
124
- anyText: sBindingExpression
125
- });
126
- oHiddenElement.setBindingContext(null);
127
- oView.addDependent(oHiddenElement);
128
- oHiddenElement.getBinding("anyText");
129
- var oContext = (_oHiddenElement$getMo = oHiddenElement.getModel()) === null || _oHiddenElement$getMo === void 0 ? void 0 : (_oHiddenElement$getMo2 = _oHiddenElement$getMo.bindContext(oRootContext.getPath(), oRootContext, {
130
- $$groupId: "$auto.Heroes"
131
- })) === null || _oHiddenElement$getMo2 === void 0 ? void 0 : _oHiddenElement$getMo2.getBoundContext();
132
- oHiddenElement.setBindingContext(oContext);
133
- oHiddenElement === null || oHiddenElement === void 0 ? void 0 : (_oHiddenElement$getBi = oHiddenElement.getBinding("anyText")) === null || _oHiddenElement$getBi === void 0 ? void 0 : _oHiddenElement$getBi.attachChange(function (oEvent) {
134
- var oNewValue = oEvent.getSource().getExternalValue();
135
- oInternalModelContext.setProperty(sProperty, oNewValue);
136
- });
137
- }
138
- },
139
- _setActionEnablementForTable: function (oSelectedContext, oInternalModelContext, sAction, sProperty, aRequestPromises) {
140
- // Reset all properties before computation
141
- oInternalModelContext.setProperty("dynamicActions/".concat(sAction), {
142
- bEnabled: false,
143
- aApplicable: [],
144
- aNotApplicable: []
145
- });
146
- // Note that non dynamic actions are not processed here. They are enabled because
147
- // one or more are selected and the second part of the condition in the templating
148
- // is then undefined and thus the button takes the default enabling, which is true!
149
- var aApplicable = [],
150
- aNotApplicable = [],
151
- sDynamicActionEnabledPath = "".concat(oInternalModelContext.getPath(), "/dynamicActions/").concat(sAction, "/bEnabled");
152
- if (typeof sProperty === "object" && sProperty !== null && sProperty !== undefined) {
153
- if (oSelectedContext) {
154
- var oContextData = oSelectedContext.getObject();
155
- var oTransformedBinding = transformRecursively(sProperty, "PathInModel",
156
- // eslint-disable-next-line no-loop-func
157
- function (oBindingExpression) {
158
- return oContextData ? constant(oContextData[oBindingExpression.path]) : constant(false);
159
- }, true);
160
- var sResult = compileExpression(oTransformedBinding);
161
- if (sResult === "true") {
162
- oInternalModelContext.getModel().setProperty(sDynamicActionEnabledPath, true);
163
- aApplicable.push(oSelectedContext);
164
- } else {
165
- aNotApplicable.push(oSelectedContext);
166
- }
167
- }
168
- CommonUtils.setDynamicActionContexts(oInternalModelContext, sAction, aApplicable, aNotApplicable);
169
- } else {
170
- var _oContextData = oSelectedContext === null || oSelectedContext === void 0 ? void 0 : oSelectedContext.getObject();
171
- if (sProperty === null && !!_oContextData["#".concat(sAction)]) {
172
- //look for action advertisement if present and its value is not null
173
- oInternalModelContext.getModel().setProperty(sDynamicActionEnabledPath, true);
174
- } else if (oSelectedContext !== undefined) {
175
- // Collect promises to retrieve singleton or normal property value asynchronously
176
- aRequestPromises.push(CommonUtils.requestProperty(oSelectedContext, sAction, sProperty, sDynamicActionEnabledPath));
177
- }
178
- }
179
- return aRequestPromises;
180
- }
181
- };
182
- return ActionRuntime;
183
- }, false);
184
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBY3Rpb25SdW50aW1lIiwic2V0QWN0aW9uRW5hYmxlbWVudCIsIm9JbnRlcm5hbE1vZGVsQ29udGV4dCIsIm9BY3Rpb25PcGVyYXRpb25BdmFpbGFibGVNYXAiLCJhU2VsZWN0ZWRDb250ZXh0cyIsInNDb250cm9sIiwiYVByb21pc2VzIiwic0FjdGlvbiIsImFSZXF1ZXN0UHJvbWlzZXMiLCJzZXRQcm9wZXJ0eSIsInNQcm9wZXJ0eSIsImkiLCJsZW5ndGgiLCJvU2VsZWN0ZWRDb250ZXh0Iiwib0NvbnRleHREYXRhIiwiZ2V0T2JqZWN0IiwiX3NldEFjdGlvbkVuYWJsZW1lbnRGb3JUYWJsZSIsImJFbmFibGVkIiwiYUFwcGxpY2FibGUiLCJhTm90QXBwbGljYWJsZSIsInB1c2giLCJDb21tb25VdGlscyIsInNldENvbnRleHRzQmFzZWRPbk9wZXJhdGlvbkF2YWlsYWJsZSIsIlByb21pc2UiLCJhbGwiLCJzZXRBY3Rpb25FbmFibGVtZW50QWZ0ZXJQYXRjaCIsIm9WaWV3Iiwib0xpc3RCaW5kaW5nIiwib0ludGVybmFsTW9kZWxDb250ZXh0RGF0YSIsIm9Db250cm9scyIsImNvbnRyb2xzIiwic0tleSIsImNvbnRyb2xJZCIsIm9UYWJsZSIsImJ5SWQiLCJpc0EiLCJvUm93QmluZGluZyIsImdldFJvd0JpbmRpbmciLCJKU09OIiwicGFyc2UiLCJkYXRhIiwiY3VzdG9tRGF0YSIsImdldFNlbGVjdGVkQ29udGV4dHMiLCJ1cGRhdGVFZGl0QnV0dG9uVmlzaWJpbGl0eUFuZEVuYWJsZW1lbnQiLCJpVmlld0xldmVsIiwiZ2V0Vmlld0RhdGEiLCJ2aWV3TGV2ZWwiLCJvQ29udGV4dCIsImdldEJpbmRpbmdDb250ZXh0Iiwib0FwcENvbXBvbmVudCIsImdldEFwcENvbXBvbmVudCIsInNNZXRhUGF0aCIsIk1vZGVsSGVscGVyIiwiZ2V0TWV0YVBhdGhGb3JDb250ZXh0Iiwic0VudGl0eVNldCIsImdldFJvb3RFbnRpdHlTZXRQYXRoIiwibWV0YUNvbnRleHQiLCJnZXRNb2RlbCIsImdldE1ldGFNb2RlbCIsImdldENvbnRleHQiLCJnZXRQYXRoIiwiY29udmVydGVyQ29udGV4dCIsIkNvbnZlcnRlckNvbnRleHQiLCJjcmVhdGVDb252ZXJ0ZXJDb250ZXh0Rm9yTWFjcm8iLCJnZXREaWFnbm9zdGljcyIsIm1lcmdlIiwidW5kZWZpbmVkIiwiZW50aXR5U2V0IiwiZ2V0RW50aXR5U2V0IiwiZW50aXR5VHlwZSIsImdldEVudGl0eVR5cGUiLCJ1cGRhdGVIaWRkZW4iLCJiVXBkYXRlSGlkZGVuIiwiaXNTaW5nbGV0b24iLCJhbm5vdGF0aW9ucyIsIlVJIiwiVXBkYXRlSGlkZGVuIiwidmFsdWVPZiIsImlzVXBkYXRlSGlkZGVuIiwic0VkaXRFbmFibGVCaW5kaW5nIiwiZ2V0RWRpdEJ1dHRvbkVuYWJsZWQiLCJkcmFmdFJvb3RQYXRoIiwiZ2V0RHJhZnRSb290UGF0aCIsInNTdGlja3lSb290UGF0aCIsImdldFN0aWNreVJvb3RQYXRoIiwic1BhdGgiLCJvUm9vdENvbnRleHQiLCJiaW5kQ29udGV4dCIsImdldEJvdW5kQ29udGV4dCIsInNIaWRkZW5FeHByZXNzaW9uIiwiY29tcGlsZUV4cHJlc3Npb24iLCJlcXVhbCIsImdldEhpZGRlbkV4cHJlc3Npb24iLCJ1cGRhdGVFZGl0TW9kZWxDb250ZXh0Iiwic0JpbmRpbmdFeHByZXNzaW9uIiwib0hpZGRlbkVsZW1lbnQiLCJBbnlFbGVtZW50IiwiYW55VGV4dCIsInNldEJpbmRpbmdDb250ZXh0IiwiYWRkRGVwZW5kZW50IiwiZ2V0QmluZGluZyIsIiQkZ3JvdXBJZCIsImF0dGFjaENoYW5nZSIsIm9FdmVudCIsIm9OZXdWYWx1ZSIsImdldFNvdXJjZSIsImdldEV4dGVybmFsVmFsdWUiLCJzRHluYW1pY0FjdGlvbkVuYWJsZWRQYXRoIiwib1RyYW5zZm9ybWVkQmluZGluZyIsInRyYW5zZm9ybVJlY3Vyc2l2ZWx5Iiwib0JpbmRpbmdFeHByZXNzaW9uIiwiY29uc3RhbnQiLCJwYXRoIiwic1Jlc3VsdCIsInNldER5bmFtaWNBY3Rpb25Db250ZXh0cyIsInJlcXVlc3RQcm9wZXJ0eSJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiQWN0aW9uUnVudGltZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEVudGl0eVNldCwgUHJpbWl0aXZlVHlwZSB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlc1wiO1xuaW1wb3J0IG1lcmdlIGZyb20gXCJzYXAvYmFzZS91dGlsL21lcmdlXCI7XG5pbXBvcnQgdHlwZSB7IF9SZXF1ZXN0ZWRQcm9wZXJ0eSB9IGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IENvbW1vblV0aWxzIGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IHR5cGUgeyBQYXRoSW5Nb2RlbEV4cHJlc3Npb24gfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9CaW5kaW5nVG9vbGtpdFwiO1xuaW1wb3J0IHsgY29tcGlsZUV4cHJlc3Npb24sIGNvbnN0YW50LCBlcXVhbCwgdHJhbnNmb3JtUmVjdXJzaXZlbHkgfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9CaW5kaW5nVG9vbGtpdFwiO1xuaW1wb3J0IHR5cGUgeyBJbnRlcm5hbE1vZGVsQ29udGV4dCB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL01vZGVsSGVscGVyXCI7XG5pbXBvcnQgTW9kZWxIZWxwZXIgZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvTW9kZWxIZWxwZXJcIjtcbmltcG9ydCB0eXBlIEV2ZW50IGZyb20gXCJzYXAvdWkvYmFzZS9FdmVudFwiO1xuaW1wb3J0IHR5cGUgVmlldyBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL1ZpZXdcIjtcbmltcG9ydCB0eXBlIFRhYmxlIGZyb20gXCJzYXAvdWkvbWRjL1RhYmxlXCI7XG5pbXBvcnQgdHlwZSBQcm9wZXJ0eUJpbmRpbmcgZnJvbSBcInNhcC91aS9tb2RlbC9Qcm9wZXJ0eUJpbmRpbmdcIjtcbmltcG9ydCB0eXBlIHsgT0RhdGFMaXN0QmluZGluZywgVjRDb250ZXh0IH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uLy4uL3R5cGVzL2V4dGVuc2lvbl90eXBlc1wiO1xuaW1wb3J0IEFueUVsZW1lbnQgZnJvbSBcIi4vY29udHJvbHMvQW55RWxlbWVudFwiO1xuaW1wb3J0IENvbnZlcnRlckNvbnRleHQgZnJvbSBcIi4vY29udmVydGVycy9Db252ZXJ0ZXJDb250ZXh0XCI7XG5pbXBvcnQgdHlwZSB7IEJhc2VNYW5pZmVzdFNldHRpbmdzIH0gZnJvbSBcIi4vY29udmVydGVycy9NYW5pZmVzdFNldHRpbmdzXCI7XG5pbXBvcnQgeyBnZXRFZGl0QnV0dG9uRW5hYmxlZCwgZ2V0SGlkZGVuRXhwcmVzc2lvbiB9IGZyb20gXCIuL2NvbnZlcnRlcnMvb2JqZWN0UGFnZS9IZWFkZXJBbmRGb290ZXJBY3Rpb25cIjtcblxuY29uc3QgQWN0aW9uUnVudGltZSA9IHtcblx0LyoqXG5cdCAqIFNldHMgdGhlIGFjdGlvbiBlbmFibGVtZW50LlxuXHQgKlxuXHQgKiBAZnVuY3Rpb25cblx0ICogQG5hbWUgc2V0QWN0aW9uRW5hYmxlbWVudFxuXHQgKiBAcGFyYW0gb0ludGVybmFsTW9kZWxDb250ZXh0IE9iamVjdCBjb250YWluaW5nIHRoZSBjb250ZXh0IG1vZGVsXG5cdCAqIEBwYXJhbSBvQWN0aW9uT3BlcmF0aW9uQXZhaWxhYmxlTWFwIE1hcCBjb250YWluaW5nIHRoZSBvcGVyYXRpb24gYXZhaWxhYmlsaXR5IG9mIGFjdGlvbnNcblx0ICogQHBhcmFtIGFTZWxlY3RlZENvbnRleHRzIEFycmF5IGNvbnRhaW5pbmcgc2VsZWN0ZWQgY29udGV4dHMgb2YgdGhlIGNoYXJ0XG5cdCAqIEBwYXJhbSBzQ29udHJvbCBDb250cm9sIG5hbWVcblx0ICogQHJldHVybnMge3ZvaWR9IFByb21pc2UuQWxsKHByb21pc2VzKVxuXHQgKiBAdWk1LXJlc3RyaWN0ZWRcblx0ICovXG5cdHNldEFjdGlvbkVuYWJsZW1lbnQ6IGZ1bmN0aW9uIChcblx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQ6IEludGVybmFsTW9kZWxDb250ZXh0LFxuXHRcdG9BY3Rpb25PcGVyYXRpb25BdmFpbGFibGVNYXA6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4sXG5cdFx0YVNlbGVjdGVkQ29udGV4dHM6IFY0Q29udGV4dFtdLFxuXHRcdHNDb250cm9sOiBzdHJpbmdcblx0KSB7XG5cdFx0Y29uc3QgYVByb21pc2VzID0gW107XG5cdFx0Zm9yIChjb25zdCBzQWN0aW9uIGluIG9BY3Rpb25PcGVyYXRpb25BdmFpbGFibGVNYXApIHtcblx0XHRcdGxldCBhUmVxdWVzdFByb21pc2VzOiBQcm9taXNlPF9SZXF1ZXN0ZWRQcm9wZXJ0eT5bXSA9IFtdO1xuXHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KHNBY3Rpb24sIGZhbHNlKTtcblx0XHRcdGNvbnN0IHNQcm9wZXJ0eSA9IG9BY3Rpb25PcGVyYXRpb25BdmFpbGFibGVNYXBbc0FjdGlvbl07XG5cdFx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGFTZWxlY3RlZENvbnRleHRzLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRcdGNvbnN0IG9TZWxlY3RlZENvbnRleHQgPSBhU2VsZWN0ZWRDb250ZXh0c1tpXTtcblx0XHRcdFx0aWYgKG9TZWxlY3RlZENvbnRleHQpIHtcblx0XHRcdFx0XHRjb25zdCBvQ29udGV4dERhdGEgPSBvU2VsZWN0ZWRDb250ZXh0LmdldE9iamVjdCgpIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXHRcdFx0XHRcdGlmIChzQ29udHJvbCA9PT0gXCJjaGFydFwiKSB7XG5cdFx0XHRcdFx0XHRpZiAoKHNQcm9wZXJ0eSA9PT0gbnVsbCAmJiAhIW9Db250ZXh0RGF0YVtgIyR7c0FjdGlvbn1gXSkgfHwgb1NlbGVjdGVkQ29udGV4dC5nZXRPYmplY3Qoc1Byb3BlcnR5KSkge1xuXHRcdFx0XHRcdFx0XHQvL2xvb2sgZm9yIGFjdGlvbiBhZHZlcnRpc2VtZW50IGlmIHByZXNlbnQgYW5kIGl0cyB2YWx1ZSBpcyBub3QgbnVsbFxuXHRcdFx0XHRcdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoc0FjdGlvbiwgdHJ1ZSk7XG5cdFx0XHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0gZWxzZSBpZiAoc0NvbnRyb2wgPT09IFwidGFibGVcIikge1xuXHRcdFx0XHRcdFx0YVJlcXVlc3RQcm9taXNlcyA9IHRoaXMuX3NldEFjdGlvbkVuYWJsZW1lbnRGb3JUYWJsZShcblx0XHRcdFx0XHRcdFx0b1NlbGVjdGVkQ29udGV4dCxcblx0XHRcdFx0XHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LFxuXHRcdFx0XHRcdFx0XHRzQWN0aW9uLFxuXHRcdFx0XHRcdFx0XHRzUHJvcGVydHksXG5cdFx0XHRcdFx0XHRcdGFSZXF1ZXN0UHJvbWlzZXNcblx0XHRcdFx0XHRcdCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRpZiAoc0NvbnRyb2wgPT09IFwidGFibGVcIikge1xuXHRcdFx0XHRpZiAoIWFTZWxlY3RlZENvbnRleHRzLmxlbmd0aCkge1xuXHRcdFx0XHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dC5zZXRQcm9wZXJ0eShgZHluYW1pY0FjdGlvbnMvJHtzQWN0aW9ufWAsIHtcblx0XHRcdFx0XHRcdGJFbmFibGVkOiBmYWxzZSxcblx0XHRcdFx0XHRcdGFBcHBsaWNhYmxlOiBbXSxcblx0XHRcdFx0XHRcdGFOb3RBcHBsaWNhYmxlOiBbXVxuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdGFQcm9taXNlcy5wdXNoKENvbW1vblV0aWxzLnNldENvbnRleHRzQmFzZWRPbk9wZXJhdGlvbkF2YWlsYWJsZShvSW50ZXJuYWxNb2RlbENvbnRleHQsIFtdKSk7XG5cdFx0XHRcdH0gZWxzZSBpZiAoYVNlbGVjdGVkQ29udGV4dHMubGVuZ3RoICYmIHR5cGVvZiBzUHJvcGVydHkgPT09IFwic3RyaW5nXCIpIHtcblx0XHRcdFx0XHQvLyBXaGVuIGFsbCBwcm9wZXJ0eSB2YWx1ZXMgaGF2ZSBiZWVuIHJldHJpZXZlZCwgc2V0XG5cdFx0XHRcdFx0Ly8gVGhlIGFwcGxpY2FibGUgYW5kIG5vdC1hcHBsaWNhYmxlIHNlbGVjdGVkIGNvbnRleHRzIGZvciBlYWNoIGFjdGlvbiBhbmRcblx0XHRcdFx0XHQvLyBUaGUgZW5hYmxlZCBwcm9wZXJ0eSBvZiB0aGUgZHluYW1pYyBhY3Rpb24gaW4gaW50ZXJuYWwgbW9kZWwgY29udGV4dC5cblx0XHRcdFx0XHRhUHJvbWlzZXMucHVzaChDb21tb25VdGlscy5zZXRDb250ZXh0c0Jhc2VkT25PcGVyYXRpb25BdmFpbGFibGUob0ludGVybmFsTW9kZWxDb250ZXh0LCBhUmVxdWVzdFByb21pc2VzKSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0aWYgKHNDb250cm9sID09PSBcInRhYmxlXCIpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLmFsbChhUHJvbWlzZXMpO1xuXHRcdH1cblx0fSxcblx0c2V0QWN0aW9uRW5hYmxlbWVudEFmdGVyUGF0Y2g6IGZ1bmN0aW9uIChvVmlldzogVmlldywgb0xpc3RCaW5kaW5nOiBPRGF0YUxpc3RCaW5kaW5nLCBvSW50ZXJuYWxNb2RlbENvbnRleHQ6IEludGVybmFsTW9kZWxDb250ZXh0KSB7XG5cdFx0Y29uc3Qgb0ludGVybmFsTW9kZWxDb250ZXh0RGF0YSA9IG9JbnRlcm5hbE1vZGVsQ29udGV4dD8uZ2V0T2JqZWN0KCkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG5cdFx0Y29uc3Qgb0NvbnRyb2xzID0gKG9JbnRlcm5hbE1vZGVsQ29udGV4dERhdGE/LmNvbnRyb2xzIHx8IHt9KSBhcyBSZWNvcmQ8c3RyaW5nLCB7IGNvbnRyb2xJZD86IHN0cmluZyB9Pjtcblx0XHRmb3IgKGNvbnN0IHNLZXkgaW4gb0NvbnRyb2xzKSB7XG5cdFx0XHRpZiAob0NvbnRyb2xzW3NLZXldICYmIG9Db250cm9sc1tzS2V5XS5jb250cm9sSWQpIHtcblx0XHRcdFx0Y29uc3Qgb1RhYmxlID0gb1ZpZXcuYnlJZChzS2V5KTtcblx0XHRcdFx0aWYgKG9UYWJsZSAmJiBvVGFibGUuaXNBPFRhYmxlPihcInNhcC51aS5tZGMuVGFibGVcIikpIHtcblx0XHRcdFx0XHRjb25zdCBvUm93QmluZGluZyA9IG9UYWJsZS5nZXRSb3dCaW5kaW5nKCk7XG5cdFx0XHRcdFx0aWYgKG9Sb3dCaW5kaW5nID09IG9MaXN0QmluZGluZykge1xuXHRcdFx0XHRcdFx0QWN0aW9uUnVudGltZS5zZXRBY3Rpb25FbmFibGVtZW50KFxuXHRcdFx0XHRcdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQsXG5cdFx0XHRcdFx0XHRcdEpTT04ucGFyc2Uob1RhYmxlLmRhdGEoXCJvcGVyYXRpb25BdmFpbGFibGVNYXBcIikuY3VzdG9tRGF0YSksXG5cdFx0XHRcdFx0XHRcdG9UYWJsZS5nZXRTZWxlY3RlZENvbnRleHRzKCkgYXMgVjRDb250ZXh0W10sXG5cdFx0XHRcdFx0XHRcdFwidGFibGVcIlxuXHRcdFx0XHRcdFx0KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH0sXG5cblx0dXBkYXRlRWRpdEJ1dHRvblZpc2liaWxpdHlBbmRFbmFibGVtZW50KG9WaWV3OiBWaWV3KSB7XG5cdFx0Y29uc3QgaVZpZXdMZXZlbCA9IChvVmlldy5nZXRWaWV3RGF0YSgpIGFzIEJhc2VNYW5pZmVzdFNldHRpbmdzKT8udmlld0xldmVsO1xuXHRcdGlmICgoaVZpZXdMZXZlbCBhcyBudW1iZXIpID4gMSkge1xuXHRcdFx0Y29uc3Qgb0NvbnRleHQgPSBvVmlldy5nZXRCaW5kaW5nQ29udGV4dCgpIGFzIFY0Q29udGV4dDtcblx0XHRcdGNvbnN0IG9BcHBDb21wb25lbnQgPSBDb21tb25VdGlscy5nZXRBcHBDb21wb25lbnQob1ZpZXcpO1xuXHRcdFx0Y29uc3Qgc01ldGFQYXRoID0gTW9kZWxIZWxwZXIuZ2V0TWV0YVBhdGhGb3JDb250ZXh0KG9Db250ZXh0KTtcblx0XHRcdGNvbnN0IHNFbnRpdHlTZXQgPSBNb2RlbEhlbHBlci5nZXRSb290RW50aXR5U2V0UGF0aChzTWV0YVBhdGgpO1xuXHRcdFx0Y29uc3QgbWV0YUNvbnRleHQgPSBvQ29udGV4dD8uZ2V0TW9kZWwoKT8uZ2V0TWV0YU1vZGVsKCk/LmdldENvbnRleHQob0NvbnRleHQ/LmdldFBhdGgoKSk7XG5cdFx0XHRjb25zdCBjb252ZXJ0ZXJDb250ZXh0ID0gQ29udmVydGVyQ29udGV4dD8uY3JlYXRlQ29udmVydGVyQ29udGV4dEZvck1hY3JvKFxuXHRcdFx0XHRzRW50aXR5U2V0LFxuXHRcdFx0XHRtZXRhQ29udGV4dCxcblx0XHRcdFx0b0FwcENvbXBvbmVudC5nZXREaWFnbm9zdGljcygpLFxuXHRcdFx0XHRtZXJnZSxcblx0XHRcdFx0dW5kZWZpbmVkXG5cdFx0XHQpO1xuXHRcdFx0Y29uc3QgZW50aXR5U2V0ID0gY29udmVydGVyQ29udGV4dC5nZXRFbnRpdHlTZXQoKTtcblx0XHRcdGNvbnN0IGVudGl0eVR5cGUgPSBjb252ZXJ0ZXJDb250ZXh0LmdldEVudGl0eVR5cGUoKTtcblx0XHRcdGxldCB1cGRhdGVIaWRkZW47XG5cdFx0XHQvL0ZpbmQgdGhlIFVwZGF0ZSBIaWRkZW4gb2YgdGhlIHJvb3QgZW50aXR5IHNldCBhbmQgYmluZCB0aGUgcHJvcGVydHkgdG8gQW55RWxlbWVudCwgYW55IGNoYW5nZXMgaW4gdGhlIHBhdGggb2YgdGhlIHJvb3QgVXBkYXRlSGlkZGVuIHdpbGwgYmUgdXBkYXRlZCB2aWEgdGhlIHByb3BlcnR5LCBpbnRlcm5hbCBtb2RlbCBjb250ZXh0IGlzIHVwZGF0ZWQgYmFzZWQgb24gdGhlIHByb3BlcnR5XG5cdFx0XHRjb25zdCBiVXBkYXRlSGlkZGVuID1cblx0XHRcdFx0ZW50aXR5U2V0ICYmICFNb2RlbEhlbHBlci5pc1NpbmdsZXRvbihlbnRpdHlTZXQpICYmIChlbnRpdHlTZXQgYXMgRW50aXR5U2V0KS5hbm5vdGF0aW9ucy5VST8uVXBkYXRlSGlkZGVuPy52YWx1ZU9mKCk7XG5cdFx0XHRpZiAoYlVwZGF0ZUhpZGRlbiAhPT0gdHJ1ZSkge1xuXHRcdFx0XHR1cGRhdGVIaWRkZW4gPSBNb2RlbEhlbHBlci5pc1VwZGF0ZUhpZGRlbihlbnRpdHlTZXQsIGVudGl0eVR5cGUpO1xuXHRcdFx0fVxuXHRcdFx0Ly9GaW5kIHRoZSBvcGVyYXRpb24gYXZhaWxhYmxlIHByb3BlcnR5IG9mIHRoZSByb290IGVkaXQgY29uZmlndXJhdGlvbiBhbmQgZmV0Y2ggdGhlIHByb3BlcnR5IHVzaW5nIEFueUVsZW1lbnRcblx0XHRcdGNvbnN0IHNFZGl0RW5hYmxlQmluZGluZyA9IGdldEVkaXRCdXR0b25FbmFibGVkKGNvbnZlcnRlckNvbnRleHQsIHVuZGVmaW5lZCk7XG5cdFx0XHRjb25zdCBkcmFmdFJvb3RQYXRoID0gTW9kZWxIZWxwZXIuZ2V0RHJhZnRSb290UGF0aChvQ29udGV4dCk7XG5cdFx0XHRjb25zdCBzU3RpY2t5Um9vdFBhdGggPSBNb2RlbEhlbHBlci5nZXRTdGlja3lSb290UGF0aChvQ29udGV4dCk7XG5cdFx0XHRjb25zdCBzUGF0aCA9IGRyYWZ0Um9vdFBhdGggfHwgc1N0aWNreVJvb3RQYXRoO1xuXHRcdFx0Y29uc3Qgb0ludGVybmFsTW9kZWxDb250ZXh0ID0gb1ZpZXcuZ2V0QmluZGluZ0NvbnRleHQoXCJpbnRlcm5hbFwiKSBhcyBJbnRlcm5hbE1vZGVsQ29udGV4dDtcblx0XHRcdGlmIChzUGF0aCkge1xuXHRcdFx0XHRjb25zdCBvUm9vdENvbnRleHQgPSBvVmlldy5nZXRNb2RlbCgpLmJpbmRDb250ZXh0KHNQYXRoKS5nZXRCb3VuZENvbnRleHQoKSBhcyBWNENvbnRleHQ7XG5cdFx0XHRcdGlmICh1cGRhdGVIaWRkZW4gIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0XHRcdGNvbnN0IHNIaWRkZW5FeHByZXNzaW9uID0gY29tcGlsZUV4cHJlc3Npb24oZXF1YWwoZ2V0SGlkZGVuRXhwcmVzc2lvbihjb252ZXJ0ZXJDb250ZXh0LCB1cGRhdGVIaWRkZW4pLCBmYWxzZSkpO1xuXHRcdFx0XHRcdHRoaXMudXBkYXRlRWRpdE1vZGVsQ29udGV4dChzSGlkZGVuRXhwcmVzc2lvbiwgb1ZpZXcsIG9Sb290Q29udGV4dCwgXCJyb290RWRpdFZpc2libGVcIiwgb0ludGVybmFsTW9kZWxDb250ZXh0KTtcblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAoc0VkaXRFbmFibGVCaW5kaW5nKSB7XG5cdFx0XHRcdFx0dGhpcy51cGRhdGVFZGl0TW9kZWxDb250ZXh0KHNFZGl0RW5hYmxlQmluZGluZywgb1ZpZXcsIG9Sb290Q29udGV4dCwgXCJyb290RWRpdEVuYWJsZWRcIiwgb0ludGVybmFsTW9kZWxDb250ZXh0KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fSxcblxuXHR1cGRhdGVFZGl0TW9kZWxDb250ZXh0OiBmdW5jdGlvbiAoXG5cdFx0c0JpbmRpbmdFeHByZXNzaW9uOiBzdHJpbmcgfCB1bmRlZmluZWQsXG5cdFx0b1ZpZXc6IFZpZXcsXG5cdFx0b1Jvb3RDb250ZXh0OiBWNENvbnRleHQsXG5cdFx0c1Byb3BlcnR5OiBzdHJpbmcsXG5cdFx0b0ludGVybmFsTW9kZWxDb250ZXh0OiBJbnRlcm5hbE1vZGVsQ29udGV4dFxuXHQpIHtcblx0XHRpZiAoc0JpbmRpbmdFeHByZXNzaW9uKSB7XG5cdFx0XHRjb25zdCBvSGlkZGVuRWxlbWVudCA9IG5ldyBBbnlFbGVtZW50KHsgYW55VGV4dDogc0JpbmRpbmdFeHByZXNzaW9uIH0pO1xuXHRcdFx0b0hpZGRlbkVsZW1lbnQuc2V0QmluZGluZ0NvbnRleHQobnVsbCk7XG5cdFx0XHRvVmlldy5hZGREZXBlbmRlbnQob0hpZGRlbkVsZW1lbnQpO1xuXHRcdFx0b0hpZGRlbkVsZW1lbnQuZ2V0QmluZGluZyhcImFueVRleHRcIik7XG5cdFx0XHRjb25zdCBvQ29udGV4dCA9IG9IaWRkZW5FbGVtZW50XG5cdFx0XHRcdC5nZXRNb2RlbCgpXG5cdFx0XHRcdD8uYmluZENvbnRleHQob1Jvb3RDb250ZXh0LmdldFBhdGgoKSwgb1Jvb3RDb250ZXh0LCB7ICQkZ3JvdXBJZDogXCIkYXV0by5IZXJvZXNcIiB9KVxuXHRcdFx0XHQ/LmdldEJvdW5kQ29udGV4dCgpO1xuXHRcdFx0b0hpZGRlbkVsZW1lbnQuc2V0QmluZGluZ0NvbnRleHQob0NvbnRleHQpO1xuXHRcdFx0b0hpZGRlbkVsZW1lbnQ/LmdldEJpbmRpbmcoXCJhbnlUZXh0XCIpPy5hdHRhY2hDaGFuZ2UoKG9FdmVudDogRXZlbnQpID0+IHtcblx0XHRcdFx0Y29uc3Qgb05ld1ZhbHVlID0gKG9FdmVudC5nZXRTb3VyY2UoKSBhcyBQcm9wZXJ0eUJpbmRpbmcpLmdldEV4dGVybmFsVmFsdWUoKTtcblx0XHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KHNQcm9wZXJ0eSwgb05ld1ZhbHVlKTtcblx0XHRcdH0pO1xuXHRcdH1cblx0fSxcblxuXHRfc2V0QWN0aW9uRW5hYmxlbWVudEZvclRhYmxlOiBmdW5jdGlvbiAoXG5cdFx0b1NlbGVjdGVkQ29udGV4dDogVjRDb250ZXh0IHwgdW5kZWZpbmVkLFxuXHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dDogSW50ZXJuYWxNb2RlbENvbnRleHQsXG5cdFx0c0FjdGlvbjogc3RyaW5nLFxuXHRcdHNQcm9wZXJ0eTogc3RyaW5nLFxuXHRcdGFSZXF1ZXN0UHJvbWlzZXM6IFByb21pc2U8X1JlcXVlc3RlZFByb3BlcnR5PltdXG5cdCkge1xuXHRcdC8vIFJlc2V0IGFsbCBwcm9wZXJ0aWVzIGJlZm9yZSBjb21wdXRhdGlvblxuXHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dC5zZXRQcm9wZXJ0eShgZHluYW1pY0FjdGlvbnMvJHtzQWN0aW9ufWAsIHtcblx0XHRcdGJFbmFibGVkOiBmYWxzZSxcblx0XHRcdGFBcHBsaWNhYmxlOiBbXSxcblx0XHRcdGFOb3RBcHBsaWNhYmxlOiBbXVxuXHRcdH0pO1xuXHRcdC8vIE5vdGUgdGhhdCBub24gZHluYW1pYyBhY3Rpb25zIGFyZSBub3QgcHJvY2Vzc2VkIGhlcmUuIFRoZXkgYXJlIGVuYWJsZWQgYmVjYXVzZVxuXHRcdC8vIG9uZSBvciBtb3JlIGFyZSBzZWxlY3RlZCBhbmQgdGhlIHNlY29uZCBwYXJ0IG9mIHRoZSBjb25kaXRpb24gaW4gdGhlIHRlbXBsYXRpbmdcblx0XHQvLyBpcyB0aGVuIHVuZGVmaW5lZCBhbmQgdGh1cyB0aGUgYnV0dG9uIHRha2VzIHRoZSBkZWZhdWx0IGVuYWJsaW5nLCB3aGljaCBpcyB0cnVlIVxuXHRcdGNvbnN0IGFBcHBsaWNhYmxlID0gW10sXG5cdFx0XHRhTm90QXBwbGljYWJsZSA9IFtdLFxuXHRcdFx0c0R5bmFtaWNBY3Rpb25FbmFibGVkUGF0aCA9IGAke29JbnRlcm5hbE1vZGVsQ29udGV4dC5nZXRQYXRoKCl9L2R5bmFtaWNBY3Rpb25zLyR7c0FjdGlvbn0vYkVuYWJsZWRgO1xuXHRcdGlmICh0eXBlb2Ygc1Byb3BlcnR5ID09PSBcIm9iamVjdFwiICYmIHNQcm9wZXJ0eSAhPT0gbnVsbCAmJiBzUHJvcGVydHkgIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0aWYgKG9TZWxlY3RlZENvbnRleHQpIHtcblx0XHRcdFx0Y29uc3Qgb0NvbnRleHREYXRhID0gb1NlbGVjdGVkQ29udGV4dC5nZXRPYmplY3QoKSBhcyBSZWNvcmQ8c3RyaW5nLCBQcmltaXRpdmVUeXBlPjtcblx0XHRcdFx0Y29uc3Qgb1RyYW5zZm9ybWVkQmluZGluZyA9IHRyYW5zZm9ybVJlY3Vyc2l2ZWx5KFxuXHRcdFx0XHRcdHNQcm9wZXJ0eSxcblx0XHRcdFx0XHRcIlBhdGhJbk1vZGVsXCIsXG5cdFx0XHRcdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWxvb3AtZnVuY1xuXHRcdFx0XHRcdGZ1bmN0aW9uIChvQmluZGluZ0V4cHJlc3Npb246IFBhdGhJbk1vZGVsRXhwcmVzc2lvbjxQcmltaXRpdmVUeXBlPikge1xuXHRcdFx0XHRcdFx0cmV0dXJuIG9Db250ZXh0RGF0YSA/IGNvbnN0YW50KG9Db250ZXh0RGF0YVtvQmluZGluZ0V4cHJlc3Npb24ucGF0aF0pIDogY29uc3RhbnQoZmFsc2UpO1xuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0dHJ1ZVxuXHRcdFx0XHQpO1xuXHRcdFx0XHRjb25zdCBzUmVzdWx0ID0gY29tcGlsZUV4cHJlc3Npb24ob1RyYW5zZm9ybWVkQmluZGluZyk7XG5cdFx0XHRcdGlmIChzUmVzdWx0ID09PSBcInRydWVcIikge1xuXHRcdFx0XHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dC5nZXRNb2RlbCgpLnNldFByb3BlcnR5KHNEeW5hbWljQWN0aW9uRW5hYmxlZFBhdGgsIHRydWUpO1xuXHRcdFx0XHRcdGFBcHBsaWNhYmxlLnB1c2gob1NlbGVjdGVkQ29udGV4dCk7XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0YU5vdEFwcGxpY2FibGUucHVzaChvU2VsZWN0ZWRDb250ZXh0KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0Q29tbW9uVXRpbHMuc2V0RHluYW1pY0FjdGlvbkNvbnRleHRzKG9JbnRlcm5hbE1vZGVsQ29udGV4dCwgc0FjdGlvbiwgYUFwcGxpY2FibGUsIGFOb3RBcHBsaWNhYmxlKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0Y29uc3Qgb0NvbnRleHREYXRhID0gb1NlbGVjdGVkQ29udGV4dD8uZ2V0T2JqZWN0KCkgYXMgUmVjb3JkPHN0cmluZywgUHJpbWl0aXZlVHlwZT47XG5cdFx0XHRpZiAoc1Byb3BlcnR5ID09PSBudWxsICYmICEhb0NvbnRleHREYXRhW2AjJHtzQWN0aW9ufWBdKSB7XG5cdFx0XHRcdC8vbG9vayBmb3IgYWN0aW9uIGFkdmVydGlzZW1lbnQgaWYgcHJlc2VudCBhbmQgaXRzIHZhbHVlIGlzIG5vdCBudWxsXG5cdFx0XHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dC5nZXRNb2RlbCgpLnNldFByb3BlcnR5KHNEeW5hbWljQWN0aW9uRW5hYmxlZFBhdGgsIHRydWUpO1xuXHRcdFx0fSBlbHNlIGlmIChvU2VsZWN0ZWRDb250ZXh0ICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0Ly8gQ29sbGVjdCBwcm9taXNlcyB0byByZXRyaWV2ZSBzaW5nbGV0b24gb3Igbm9ybWFsIHByb3BlcnR5IHZhbHVlIGFzeW5jaHJvbm91c2x5XG5cdFx0XHRcdGFSZXF1ZXN0UHJvbWlzZXMucHVzaChDb21tb25VdGlscy5yZXF1ZXN0UHJvcGVydHkob1NlbGVjdGVkQ29udGV4dCwgc0FjdGlvbiwgc1Byb3BlcnR5LCBzRHluYW1pY0FjdGlvbkVuYWJsZWRQYXRoKSk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdHJldHVybiBhUmVxdWVzdFByb21pc2VzO1xuXHR9XG59O1xuZXhwb3J0IGRlZmF1bHQgQWN0aW9uUnVudGltZTtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQUE7QUFBQTs7Ozs7Ozs7OztFQWtCQSxJQUFNQSxhQUFhLEdBQUc7SUFDckI7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0lBQ0NDLG1CQUFtQixFQUFFLFVBQ3BCQyxxQkFBMkMsRUFDM0NDLDRCQUFvRCxFQUNwREMsaUJBQThCLEVBQzlCQyxRQUFnQixFQUNmO01BQ0QsSUFBTUMsU0FBUyxHQUFHLEVBQUU7TUFDcEIsS0FBSyxJQUFNQyxPQUFPLElBQUlKLDRCQUE0QixFQUFFO1FBQ25ELElBQUlLLGdCQUErQyxHQUFHLEVBQUU7UUFDeEROLHFCQUFxQixDQUFDTyxXQUFXLENBQUNGLE9BQU8sRUFBRSxLQUFLLENBQUM7UUFDakQsSUFBTUcsU0FBUyxHQUFHUCw0QkFBNEIsQ0FBQ0ksT0FBTyxDQUFDO1FBQ3ZELEtBQUssSUFBSUksQ0FBQyxHQUFHLENBQUMsRUFBRUEsQ0FBQyxHQUFHUCxpQkFBaUIsQ0FBQ1EsTUFBTSxFQUFFRCxDQUFDLEVBQUUsRUFBRTtVQUNsRCxJQUFNRSxnQkFBZ0IsR0FBR1QsaUJBQWlCLENBQUNPLENBQUMsQ0FBQztVQUM3QyxJQUFJRSxnQkFBZ0IsRUFBRTtZQUNyQixJQUFNQyxZQUFZLEdBQUdELGdC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
5
+ sap.ui.define(["sap/base/util/merge","sap/fe/core/CommonUtils","sap/fe/core/helpers/BindingToolkit","sap/fe/core/helpers/ModelHelper","./controls/AnyElement","./converters/ConverterContext","./converters/objectPage/HeaderAndFooterAction"],function(t,e,n,o,i,l,s){"use strict";var a=s.getHiddenExpression;var d=s.getEditButtonEnabled;var r=n.transformRecursively;var c=n.equal;var u=n.constant;var g=n.compileExpression;const p={setActionEnablement:function(t,n,o,i){const l=[];for(const s in n){let a=[];t.setProperty(s,false);const d=n[s];for(let e=0;e<o.length;e++){const n=o[e];if(n){const e=n.getObject();if(i==="chart"){if(d===null&&!!e[`#${s}`]||n.getObject(d)){t.setProperty(s,true);break}}else if(i==="table"){a=this._setActionEnablementForTable(n,t,s,d,a)}}}if(i==="table"){if(!o.length){t.setProperty(`dynamicActions/${s}`,{bEnabled:false,aApplicable:[],aNotApplicable:[]});l.push(e.setContextsBasedOnOperationAvailable(t,[]))}else if(o.length&&typeof d==="string"){l.push(e.setContextsBasedOnOperationAvailable(t,a))}}}return Promise.all(l)},setActionEnablementAfterPatch:function(t,e,n){const o=n===null||n===void 0?void 0:n.getObject();const i=(o===null||o===void 0?void 0:o.controls)||{};for(const n in i){if(i[n]&&i[n].controlId){const o=t.byId(n);if(o&&o.isA("sap.ui.mdc.Table")){const t=o.getRowBinding();if(t==e){p.setActionEnablement(o.getBindingContext("internal"),JSON.parse(o.data("operationAvailableMap").customData),o.getSelectedContexts(),"table")}}}}},updateEditButtonVisibilityAndEnablement(n){var i;const s=(i=n.getViewData())===null||i===void 0?void 0:i.viewLevel;if(s>1){var r,u,p,f;const i=n.getBindingContext();const s=e.getAppComponent(n);const v=o.getMetaPathForContext(i);const b=o.getRootEntitySetPath(v);const h=i===null||i===void 0?void 0:(r=i.getModel())===null||r===void 0?void 0:(u=r.getMetaModel())===null||u===void 0?void 0:u.getContext(i===null||i===void 0?void 0:i.getPath());const x=l===null||l===void 0?void 0:l.createConverterContextForMacro(b,h,s.getDiagnostics(),t,undefined);const y=x.getEntitySet();const C=x.getEntityType();let E;const A=y&&!o.isSingleton(y)&&((p=y.annotations.UI)===null||p===void 0?void 0:(f=p.UpdateHidden)===null||f===void 0?void 0:f.valueOf());if(A!==true){E=o.isUpdateHidden(y,C)}const m=d(x,undefined);const P=o.getDraftRootPath(i);const B=o.getStickyRootPath(i);const M=P||B;const O=n.getBindingContext("internal");if(M){const t=n.getModel().bindContext(M).getBoundContext();if(E!==undefined){const e=g(c(a(x,E),false));this.updateEditModelContext(e,n,t,"rootEditVisible",O)}if(m){this.updateEditModelContext(m,n,t,"rootEditEnabled",O)}}}},updateEditModelContext:function(t,e,n,o,l){if(t){var s,a,d;const r=new i({anyText:t});r.setBindingContext(null);e.addDependent(r);r.getBinding("anyText");const c=(s=r.getModel())===null||s===void 0?void 0:(a=s.bindContext(n.getPath(),n,{$$groupId:"$auto.Heroes"}))===null||a===void 0?void 0:a.getBoundContext();r.setBindingContext(c);r===null||r===void 0?void 0:(d=r.getBinding("anyText"))===null||d===void 0?void 0:d.attachChange(t=>{const e=t.getSource().getExternalValue();l.setProperty(o,e)})}},_setActionEnablementForTable:function(t,n,o,i,l){n.setProperty(`dynamicActions/${o}`,{bEnabled:false,aApplicable:[],aNotApplicable:[]});const s=[],a=[],d=`${n.getPath()}/dynamicActions/${o}/bEnabled`;if(typeof i==="object"&&i!==null&&i!==undefined){if(t){const e=t.getObject();const o=r(i,"PathInModel",function(t){return e?u(e[t.path]):u(false)},true);const l=g(o);if(l==="true"){n.getModel().setProperty(d,true);s.push(t)}else{a.push(t)}}e.setDynamicActionContexts(n,o,s,a)}else{const s=t===null||t===void 0?void 0:t.getObject();if(i===null&&!!s[`#${o}`]){n.getModel().setProperty(d,true)}else if(t!==undefined){l.push(e.requestProperty(t,o,i,d))}}return l}};return p},false);
6
+ //# sourceMappingURL=ActionRuntime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionRuntime.js","names":["sap","ui","define","merge","CommonUtils","BindingToolkit","ModelHelper","AnyElement","ConverterContext","HeaderAndFooterAction","getHiddenExpression","getEditButtonEnabled","transformRecursively","equal","constant","compileExpression","ActionRuntime","setActionEnablement","oInternalModelContext","oActionOperationAvailableMap","aSelectedContexts","sControl","aPromises","sAction","aRequestPromises","setProperty","sProperty","i","length","oSelectedContext","oContextData","getObject","this","_setActionEnablementForTable","bEnabled","aApplicable","aNotApplicable","push","setContextsBasedOnOperationAvailable","Promise","all","setActionEnablementAfterPatch","oView","oListBinding","oInternalModelContextData","oControls","controls","sKey","controlId","oTable","byId","isA","oRowBinding","getRowBinding","getBindingContext","JSON","parse","data","customData","getSelectedContexts","updateEditButtonVisibilityAndEnablement","_oView$getViewData","iViewLevel","getViewData","viewLevel","_oContext$getModel","_oContext$getModel$ge","_annotations$UI","_annotations$UI$Updat","oContext","oAppComponent","getAppComponent","sMetaPath","getMetaPathForContext","sEntitySet","getRootEntitySetPath","metaContext","getModel","getMetaModel","getContext","getPath","converterContext","createConverterContextForMacro","getDiagnostics","undefined","entitySet","getEntitySet","entityType","getEntityType","updateHidden","bUpdateHidden","isSingleton","annotations","UI","UpdateHidden","valueOf","isUpdateHidden","sEditEnableBinding","draftRootPath","getDraftRootPath","sStickyRootPath","getStickyRootPath","sPath","oRootContext","bindContext","getBoundContext","sHiddenExpression","updateEditModelContext","sBindingExpression","_oHiddenElement$getMo","_oHiddenElement$getMo2","_oHiddenElement$getBi","oHiddenElement","anyText","setBindingContext","addDependent","getBinding","$$groupId","attachChange","oEvent","oNewValue","getSource","getExternalValue","sDynamicActionEnabledPath","oTransformedBinding","oBindingExpression","path","sResult","setDynamicActionContexts","requestProperty"],"sources":["ActionRuntime-dbg.js"],"mappings":"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"}
@@ -26,7 +26,7 @@ const ActionRuntime = {
26
26
  * @param oActionOperationAvailableMap Map containing the operation availability of actions
27
27
  * @param aSelectedContexts Array containing selected contexts of the chart
28
28
  * @param sControl Control name
29
- * @returns {void} Promise.All(promises)
29
+ * @returns The action enablement promises
30
30
  * @ui5-restricted
31
31
  */
32
32
  setActionEnablement: function (
@@ -77,9 +77,7 @@ const ActionRuntime = {
77
77
  }
78
78
  }
79
79
  }
80
- if (sControl === "table") {
81
- return Promise.all(aPromises);
82
- }
80
+ return Promise.all(aPromises);
83
81
  },
84
82
  setActionEnablementAfterPatch: function (oView: View, oListBinding: ODataListBinding, oInternalModelContext: InternalModelContext) {
85
83
  const oInternalModelContextData = oInternalModelContext?.getObject() as Record<string, unknown>;
@@ -91,7 +89,7 @@ const ActionRuntime = {
91
89
  const oRowBinding = oTable.getRowBinding();
92
90
  if (oRowBinding == oListBinding) {
93
91
  ActionRuntime.setActionEnablement(
94
- oInternalModelContext,
92
+ oTable.getBindingContext("internal") as InternalModelContext,
95
93
  JSON.parse(oTable.data("operationAvailableMap").customData),
96
94
  oTable.getSelectedContexts() as V4Context[],
97
95
  "table"