@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
@@ -1,310 +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/Log", "sap/fe/core/templating/FilterHelper", "sap/ui/core/format/NumberFormat", "sap/ui/mdc/condition/Condition", "sap/ui/model/odata/type/DateTimeOffset"], function (Log, FilterHelper, NumberFormat, Condition, DateTimeOffset) {
6
- "use strict";
7
-
8
- var getTypeCompliantValue = FilterHelper.getTypeCompliantValue;
9
- var getRangeProperty = FilterHelper.getRangeProperty;
10
- var VisualFilterUtils = {
11
- /**
12
- * Applies the median scale to the chart data.
13
- *
14
- * @param oInteractiveChart InteractiveChart in the VisualFilter control
15
- * @param oView Instance of the view
16
- * @param sVFId VisualFilter control ID
17
- * @param sInfoPath Internal model context path to store info.
18
- */
19
- applyMedianScaleToChartData: function (oInteractiveChart, oView, sVFId, sInfoPath) {
20
- var oData = [];
21
- var sMeasure = oInteractiveChart.data("measure");
22
- var oInternalModelContext = oView.getBindingContext("internal");
23
- var aAggregation = oInteractiveChart.getPoints && oInteractiveChart.getPoints() || oInteractiveChart.getBars && oInteractiveChart.getBars() || oInteractiveChart.getSegments && oInteractiveChart.getSegments();
24
- for (var i = 0; i < aAggregation.length; i++) {
25
- oData.push(aAggregation[i].getBindingContext().getObject());
26
- }
27
- var scaleFactor = this._getMedianScaleFactor(oData, sMeasure);
28
- if (scaleFactor && scaleFactor.iShortRefNumber && scaleFactor.scale) {
29
- oInternalModelContext.setProperty("scalefactor/".concat(sInfoPath), scaleFactor.scale);
30
- oInternalModelContext.setProperty("scalefactorNumber/".concat(sInfoPath), scaleFactor.iShortRefNumber);
31
- } else {
32
- oInternalModelContext.setProperty("scalefactor/".concat(sInfoPath), "");
33
- oInternalModelContext.setProperty("scalefactorNumber/".concat(sInfoPath), "");
34
- var oScaleTitle = oView.byId("".concat(sVFId, "::ScaleUoMTitle"));
35
- var oMeasureDimensionTitle = oView.byId("".concat(sVFId, "::MeasureDimensionTitle"));
36
- var sText = oScaleTitle.getText();
37
- if (sText === " | ") {
38
- oScaleTitle.setVisible(false);
39
- oMeasureDimensionTitle.setTooltip(oMeasureDimensionTitle.getText());
40
- }
41
- }
42
- },
43
- /**
44
- * Returns the median scale factor.
45
- *
46
- * @param oData VisualFilter data
47
- * @param sMeasureField Path of the measure
48
- * @returns Object containing scale and iShortRefNumber
49
- */
50
- _getMedianScaleFactor: function (oData, sMeasureField) {
51
- var i;
52
- var scaleFactor;
53
- oData.sort(function (a, b) {
54
- if (Number(a[sMeasureField]) < Number(b[sMeasureField])) {
55
- return -1;
56
- }
57
- if (Number(a[sMeasureField]) > Number(b[sMeasureField])) {
58
- return 1;
59
- }
60
- return 0;
61
- });
62
- if (oData.length > 0) {
63
- // get median index
64
- var iMid = oData.length / 2,
65
- // get mid of array
66
- // if iMid is whole number, array length is even, calculate median
67
- // if iMid is not whole number, array length is odd, take median as iMid - 1
68
- iMedian = iMid % 1 === 0 ? (parseFloat(oData[iMid - 1][sMeasureField]) + parseFloat(oData[iMid][sMeasureField])) / 2 : parseFloat(oData[Math.floor(iMid)][sMeasureField]),
69
- // get scale factor on median
70
- val = iMedian;
71
- for (i = 0; i < 14; i++) {
72
- scaleFactor = Math.pow(10, i);
73
- if (Math.round(Math.abs(val) / scaleFactor) < 10) {
74
- break;
75
- }
76
- }
77
- }
78
- var fixedInteger = NumberFormat.getIntegerInstance({
79
- style: "short",
80
- showScale: false,
81
- shortRefNumber: scaleFactor
82
- });
83
-
84
- // apply scale factor to other values and check
85
- for (i = 0; i < oData.length; i++) {
86
- var aData = oData[i],
87
- sScaledValue = fixedInteger.format(aData[sMeasureField]),
88
- aScaledValueParts = sScaledValue.split(".");
89
- // if scaled value has only 0 before decimal or 0 after decimal (example: 0.02)
90
- // then ignore this scale factor else proceed with this scale factor
91
- // if scaled value divided by 1000 is >= 1000 then also ignore scale factor
92
- if (!aScaledValueParts[1] && parseInt(aScaledValueParts[0], 10) === 0 || aScaledValueParts[1] && parseInt(aScaledValueParts[0], 10) === 0 && aScaledValueParts[1].indexOf("0") === 0 || sScaledValue / 1000 >= 1000) {
93
- scaleFactor = undefined;
94
- break;
95
- }
96
- }
97
- return {
98
- iShortRefNumber: scaleFactor,
99
- scale: scaleFactor ? fixedInteger.getScale() : ""
100
- };
101
- },
102
- /**
103
- * Returns the formatted number according to the rules of VisualChartFilters.
104
- *
105
- * @param value Value which needs to be formatted
106
- * @param scaleFactor ScaleFactor to which the value needs to be scaled
107
- * @param numberOfFractionalDigits NumberOfFractionalDigits digits in the decimals according to scale
108
- * @param currency Currency code
109
- * @returns The formatted number
110
- */
111
- getFormattedNumber: function (value, scaleFactor, numberOfFractionalDigits, currency) {
112
- var fixedInteger;
113
- value = typeof value === "string" ? Number(value.replace(/,/g, "")) : value;
114
- if (currency) {
115
- var currencyFormat = NumberFormat.getCurrencyInstance({
116
- showMeasure: false
117
- });
118
- return currencyFormat.format(parseFloat(value), currency);
119
- // parseFloat(value) is required otherwise -ve value are wrongly rounded off
120
- // Example: "-1.9" rounds off to -1 instead of -2. however -1.9 rounds off to -2
121
- } else if (scaleFactor) {
122
- fixedInteger = NumberFormat.getFloatInstance({
123
- style: "short",
124
- showScale: false,
125
- shortRefNumber: scaleFactor,
126
- shortDecimals: numberOfFractionalDigits
127
- });
128
- return fixedInteger.format(parseFloat(value));
129
- } else {
130
- fixedInteger = NumberFormat.getFloatInstance({
131
- decimals: numberOfFractionalDigits
132
- });
133
- return fixedInteger.format(parseFloat(value));
134
- }
135
- },
136
- /**
137
- * Applies the UOM to the title of the visual filter control.
138
- *
139
- * @param oInteractiveChart InteractiveChart in the VisualFilter control
140
- * @param oContextData Data of the VisualFilter
141
- * @param oView Instance of the view
142
- * @param sInfoPath Internal model context path to store info.
143
- */
144
- applyUOMToTitle: function (oInteractiveChart, oContextData, oView, sInfoPath) {
145
- var vUOM = oInteractiveChart.data("uom");
146
- var sUOM;
147
- var sCurrency;
148
- if (vUOM && vUOM["ISOCurrency"]) {
149
- sUOM = vUOM["ISOCurrency"];
150
- sCurrency = sUOM.$Path ? oContextData[sUOM.$Path] : sUOM;
151
- } else if (vUOM && vUOM["Unit"]) {
152
- sUOM = vUOM["Unit"];
153
- }
154
- if (sUOM) {
155
- var sUOMValue = sUOM.$Path ? oContextData[sUOM.$Path] : sUOM;
156
- var oInternalModelContext = oView.getBindingContext("internal");
157
- oInternalModelContext.setProperty("uom/".concat(sInfoPath), sUOMValue);
158
- if (sCurrency) {
159
- oInternalModelContext.setProperty("currency/".concat(sInfoPath), sUOMValue);
160
- }
161
- }
162
- },
163
- /**
164
- * Updates the scale factor in the title of the visual filter.
165
- *
166
- * @param oInteractiveChart InteractiveChart in the VisualFilter control
167
- * @param oView Instance of the view
168
- * @param sVFId VisualFilter control ID
169
- * @param sInfoPath Internal model context path to store info.
170
- */
171
- updateChartScaleFactorTitle: function (oInteractiveChart, oView, sVFId, sInfoPath) {
172
- if (!oInteractiveChart.data("scalefactor")) {
173
- this.applyMedianScaleToChartData(oInteractiveChart, oView, sVFId, sInfoPath);
174
- } else {
175
- var fixedInteger = NumberFormat.getIntegerInstance({
176
- style: "short",
177
- showScale: false,
178
- shortRefNumber: oInteractiveChart.data("scalefactor")
179
- });
180
- var oInternalModelContext = oView.getBindingContext("internal");
181
- oInternalModelContext.setProperty("scalefactor/".concat(sInfoPath), fixedInteger.getScale());
182
- }
183
- },
184
- /**
185
- *
186
- * @param s18nMessageTitle Text of the error message title.
187
- * @param s18nMessage Text of the error message description.
188
- * @param sInfoPath Internal model context path to store info.
189
- * @param oView Instance of the view.
190
- */
191
- applyErrorMessageAndTitle: function (s18nMessageTitle, s18nMessage, sInfoPath, oView) {
192
- var oInternalModelContext = oView.getBindingContext("internal");
193
- oInternalModelContext.setProperty(sInfoPath, {});
194
- oInternalModelContext.setProperty(sInfoPath, {
195
- errorMessageTitle: s18nMessageTitle,
196
- errorMessage: s18nMessage,
197
- showError: true
198
- });
199
- },
200
- /**
201
- * Checks if multiple units are present.
202
- *
203
- * @param oContexts Contexts of the VisualFilter
204
- * @param sUnitfield The path of the unit field
205
- * @returns Returns if multiple units are configured or not
206
- */
207
- checkMulitUnit: function (oContexts, sUnitfield) {
208
- var aData = [];
209
- if (oContexts && sUnitfield) {
210
- for (var i = 0; i < oContexts.length; i++) {
211
- var aContextData = oContexts[i] && oContexts[i].getObject();
212
- aData.push(aContextData[sUnitfield]);
213
- }
214
- }
215
- return !!aData.reduce(function (data, key) {
216
- return data === key ? data : NaN;
217
- });
218
- },
219
- /**
220
- * Sets an error message if multiple UOM are present.
221
- *
222
- * @param oData Data of the VisualFilter control
223
- * @param oInteractiveChart InteractiveChart in the VisualFilter control
224
- * @param sInfoPath Internal model context path to store info.
225
- * @param oResourceBundle The resource bundle
226
- * @param oView Instance of the view
227
- */
228
- setMultiUOMMessage: function (oData, oInteractiveChart, sInfoPath, oResourceBundle, oView) {
229
- var vUOM = oInteractiveChart.data("uom");
230
- var sIsCurrency = vUOM && vUOM["ISOCurrency"] && vUOM["ISOCurrency"].$Path;
231
- var sIsUnit = vUOM && vUOM["Unit"] && vUOM["Unit"].$Path;
232
- var sUnitfield = sIsCurrency || sIsUnit;
233
- var s18nMessageTitle, s18nMessage;
234
- if (sUnitfield) {
235
- if (!this.checkMulitUnit(oData, sUnitfield)) {
236
- if (sIsCurrency) {
237
- s18nMessageTitle = oResourceBundle.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE");
238
- s18nMessage = oResourceBundle.getText("M_VISUAL_FILTERS_MULTIPLE_CURRENCY", sUnitfield);
239
- this.applyErrorMessageAndTitle(s18nMessageTitle, s18nMessage, sInfoPath, oView);
240
- Log.warning("Filter is set for multiple Currency for".concat(sUnitfield));
241
- } else if (sIsUnit) {
242
- s18nMessageTitle = oResourceBundle.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE");
243
- s18nMessage = oResourceBundle.getText("M_VISUAL_FILTERS_MULTIPLE_UNIT", sUnitfield);
244
- this.applyErrorMessageAndTitle(s18nMessageTitle, s18nMessage, sInfoPath, oView);
245
- Log.warning("Filter is set for multiple UOMs for".concat(sUnitfield));
246
- }
247
- }
248
- }
249
- },
250
- /**
251
- * Sets an error message if response data is empty.
252
- *
253
- * @param sInfoPath Internal model context path to store info.
254
- * @param oResourceBundle The resource bundle
255
- * @param oView Instance of the view
256
- */
257
- setNoDataMessage: function (sInfoPath, oResourceBundle, oView) {
258
- var s18nMessageTitle = oResourceBundle.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE");
259
- var s18nMessage = oResourceBundle.getText("M_VISUAL_FILTER_NO_DATA_TEXT");
260
- this.applyErrorMessageAndTitle(s18nMessageTitle, s18nMessage, sInfoPath, oView);
261
- },
262
- convertFilterCondions: function (oFilterConditions) {
263
- var oConvertedConditions = {};
264
- Object.keys(oFilterConditions).forEach(function (sKey) {
265
- var aConvertedConditions = [];
266
- var aConditions = oFilterConditions[sKey];
267
- for (var i = 0; i < aConditions.length; i++) {
268
- var values = aConditions[i].value2 ? [aConditions[i].value1, aConditions[i].value2] : [aConditions[i].value1];
269
- aConvertedConditions.push(Condition.createCondition(aConditions[i].operator, values, null, null, "Validated"));
270
- }
271
- if (aConvertedConditions.length) {
272
- oConvertedConditions[sKey] = aConvertedConditions;
273
- }
274
- });
275
- return oConvertedConditions;
276
- },
277
- getCustomConditions: function (Range, oValidProperty, sPropertyName) {
278
- var value1, value2;
279
- if (oValidProperty.$Type === "Edm.DateTimeOffset") {
280
- value1 = this._parseDateTime(getTypeCompliantValue(this._formatDateTime(Range.Low), oValidProperty.$Type));
281
- value2 = Range.High ? this._parseDateTime(getTypeCompliantValue(this._formatDateTime(Range.High), oValidProperty.$Type)) : null;
282
- } else {
283
- value1 = Range.Low;
284
- value2 = Range.High ? Range.High : null;
285
- }
286
- return {
287
- operator: Range.Option ? getRangeProperty(Range.Option.$EnumMember || Range.Option) : null,
288
- value1: value1,
289
- value2: value2,
290
- path: sPropertyName
291
- };
292
- },
293
- _parseDateTime: function (sValue) {
294
- return this._getDateTimeTypeInstance().parseValue(sValue, "string");
295
- },
296
- _formatDateTime: function (sValue) {
297
- return this._getDateTimeTypeInstance().formatValue(sValue, "string");
298
- },
299
- _getDateTimeTypeInstance: function () {
300
- return new DateTimeOffset({
301
- pattern: "yyyy-MM-ddTHH:mm:ssZ",
302
- calendarType: "Gregorian"
303
- }, {
304
- V4: true
305
- });
306
- }
307
- };
308
- return VisualFilterUtils;
309
- }, false);
310
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWaXN1YWxGaWx0ZXJVdGlscyIsImFwcGx5TWVkaWFuU2NhbGVUb0NoYXJ0RGF0YSIsIm9JbnRlcmFjdGl2ZUNoYXJ0Iiwib1ZpZXciLCJzVkZJZCIsInNJbmZvUGF0aCIsIm9EYXRhIiwic01lYXN1cmUiLCJkYXRhIiwib0ludGVybmFsTW9kZWxDb250ZXh0IiwiZ2V0QmluZGluZ0NvbnRleHQiLCJhQWdncmVnYXRpb24iLCJnZXRQb2ludHMiLCJnZXRCYXJzIiwiZ2V0U2VnbWVudHMiLCJpIiwibGVuZ3RoIiwicHVzaCIsImdldE9iamVjdCIsInNjYWxlRmFjdG9yIiwiX2dldE1lZGlhblNjYWxlRmFjdG9yIiwiaVNob3J0UmVmTnVtYmVyIiwic2NhbGUiLCJzZXRQcm9wZXJ0eSIsIm9TY2FsZVRpdGxlIiwiYnlJZCIsIm9NZWFzdXJlRGltZW5zaW9uVGl0bGUiLCJzVGV4dCIsImdldFRleHQiLCJzZXRWaXNpYmxlIiwic2V0VG9vbHRpcCIsInNNZWFzdXJlRmllbGQiLCJzb3J0IiwiYSIsImIiLCJOdW1iZXIiLCJpTWlkIiwiaU1lZGlhbiIsInBhcnNlRmxvYXQiLCJNYXRoIiwiZmxvb3IiLCJ2YWwiLCJwb3ciLCJyb3VuZCIsImFicyIsImZpeGVkSW50ZWdlciIsIk51bWJlckZvcm1hdCIsImdldEludGVnZXJJbnN0YW5jZSIsInN0eWxlIiwic2hvd1NjYWxlIiwic2hvcnRSZWZOdW1iZXIiLCJhRGF0YSIsInNTY2FsZWRWYWx1ZSIsImZvcm1hdCIsImFTY2FsZWRWYWx1ZVBhcnRzIiwic3BsaXQiLCJwYXJzZUludCIsImluZGV4T2YiLCJ1bmRlZmluZWQiLCJnZXRTY2FsZSIsImdldEZvcm1hdHRlZE51bWJlciIsInZhbHVlIiwibnVtYmVyT2ZGcmFjdGlvbmFsRGlnaXRzIiwiY3VycmVuY3kiLCJyZXBsYWNlIiwiY3VycmVuY3lGb3JtYXQiLCJnZXRDdXJyZW5jeUluc3RhbmNlIiwic2hvd01lYXN1cmUiLCJnZXRGbG9hdEluc3RhbmNlIiwic2hvcnREZWNpbWFscyIsImRlY2ltYWxzIiwiYXBwbHlVT01Ub1RpdGxlIiwib0NvbnRleHREYXRhIiwidlVPTSIsInNVT00iLCJzQ3VycmVuY3kiLCIkUGF0aCIsInNVT01WYWx1ZSIsInVwZGF0ZUNoYXJ0U2NhbGVGYWN0b3JUaXRsZSIsImFwcGx5RXJyb3JNZXNzYWdlQW5kVGl0bGUiLCJzMThuTWVzc2FnZVRpdGxlIiwiczE4bk1lc3NhZ2UiLCJlcnJvck1lc3NhZ2VUaXRsZSIsImVycm9yTWVzc2FnZSIsInNob3dFcnJvciIsImNoZWNrTXVsaXRVbml0Iiwib0NvbnRleHRzIiwic1VuaXRmaWVsZCIsImFDb250ZXh0RGF0YSIsInJlZHVjZSIsImtleSIsIk5hTiIsInNldE11bHRpVU9NTWVzc2FnZSIsIm9SZXNvdXJjZUJ1bmRsZSIsInNJc0N1cnJlbmN5Iiwic0lzVW5pdCIsIkxvZyIsIndhcm5pbmciLCJzZXROb0RhdGFNZXNzYWdlIiwiY29udmVydEZpbHRlckNvbmRpb25zIiwib0ZpbHRlckNvbmRpdGlvbnMiLCJvQ29udmVydGVkQ29uZGl0aW9ucyIsIk9iamVjdCIsImtleXMiLCJmb3JFYWNoIiwic0tleSIsImFDb252ZXJ0ZWRDb25kaXRpb25zIiwiYUNvbmRpdGlvbnMiLCJ2YWx1ZXMiLCJ2YWx1ZTIiLCJ2YWx1ZTEiLCJDb25kaXRpb24iLCJjcmVhdGVDb25kaXRpb24iLCJvcGVyYXRvciIsImdldEN1c3RvbUNvbmRpdGlvbnMiLCJSYW5nZSIsIm9WYWxpZFByb3BlcnR5Iiwic1Byb3BlcnR5TmFtZSIsIiRUeXBlIiwiX3BhcnNlRGF0ZVRpbWUiLCJnZXRUeXBlQ29tcGxpYW50VmFsdWUiLCJfZm9ybWF0RGF0ZVRpbWUiLCJMb3ciLCJIaWdoIiwiT3B0aW9uIiwiZ2V0UmFuZ2VQcm9wZXJ0eSIsIiRFbnVtTWVtYmVyIiwicGF0aCIsInNWYWx1ZSIsIl9nZXREYXRlVGltZVR5cGVJbnN0YW5jZSIsInBhcnNlVmFsdWUiLCJmb3JtYXRWYWx1ZSIsIkRhdGVUaW1lT2Zmc2V0IiwicGF0dGVybiIsImNhbGVuZGFyVHlwZSIsIlY0Il0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJWaXN1YWxGaWx0ZXJVdGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSBSZXNvdXJjZUJ1bmRsZSBmcm9tIFwic2FwL2Jhc2UvaTE4bi9SZXNvdXJjZUJ1bmRsZVwiO1xuaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgdHlwZSB7IEludGVybmFsTW9kZWxDb250ZXh0IH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvTW9kZWxIZWxwZXJcIjtcbmltcG9ydCB7IGdldFJhbmdlUHJvcGVydHksIGdldFR5cGVDb21wbGlhbnRWYWx1ZSB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL0ZpbHRlckhlbHBlclwiO1xuaW1wb3J0IHR5cGUgVGl0bGUgZnJvbSBcInNhcC9tL1RpdGxlXCI7XG5pbXBvcnQgTnVtYmVyRm9ybWF0IGZyb20gXCJzYXAvdWkvY29yZS9mb3JtYXQvTnVtYmVyRm9ybWF0XCI7XG5pbXBvcnQgdHlwZSBWaWV3IGZyb20gXCJzYXAvdWkvY29yZS9tdmMvVmlld1wiO1xuaW1wb3J0IENvbmRpdGlvbiBmcm9tIFwic2FwL3VpL21kYy9jb25kaXRpb24vQ29uZGl0aW9uXCI7XG5pbXBvcnQgdHlwZSBDb25kaXRpb25WYWxpZGF0ZWQgZnJvbSBcInNhcC91aS9tZGMvZW51bS9Db25kaXRpb25WYWxpZGF0ZWRcIjtcbmltcG9ydCB0eXBlIENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9Db250ZXh0XCI7XG5pbXBvcnQgRGF0ZVRpbWVPZmZzZXQgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS90eXBlL0RhdGVUaW1lT2Zmc2V0XCI7XG5cbmNvbnN0IFZpc3VhbEZpbHRlclV0aWxzID0ge1xuXHQvKipcblx0ICogQXBwbGllcyB0aGUgbWVkaWFuIHNjYWxlIHRvIHRoZSBjaGFydCBkYXRhLlxuXHQgKlxuXHQgKiBAcGFyYW0gb0ludGVyYWN0aXZlQ2hhcnQgSW50ZXJhY3RpdmVDaGFydCBpbiB0aGUgVmlzdWFsRmlsdGVyIGNvbnRyb2xcblx0ICogQHBhcmFtIG9WaWV3IEluc3RhbmNlIG9mIHRoZSB2aWV3XG5cdCAqIEBwYXJhbSBzVkZJZCBWaXN1YWxGaWx0ZXIgY29udHJvbCBJRFxuXHQgKiBAcGFyYW0gc0luZm9QYXRoIEludGVybmFsIG1vZGVsIGNvbnRleHQgcGF0aCB0byBzdG9yZSBpbmZvLlxuXHQgKi9cblx0YXBwbHlNZWRpYW5TY2FsZVRvQ2hhcnREYXRhOiBmdW5jdGlvbiAob0ludGVyYWN0aXZlQ2hhcnQ6IGFueSwgb1ZpZXc6IFZpZXcsIHNWRklkOiBzdHJpbmcsIHNJbmZvUGF0aDogc3RyaW5nKSB7XG5cdFx0Y29uc3Qgb0RhdGEgPSBbXTtcblx0XHRjb25zdCBzTWVhc3VyZSA9IG9JbnRlcmFjdGl2ZUNoYXJ0LmRhdGEoXCJtZWFzdXJlXCIpO1xuXHRcdGNvbnN0IG9JbnRlcm5hbE1vZGVsQ29udGV4dCA9IG9WaWV3LmdldEJpbmRpbmdDb250ZXh0KFwiaW50ZXJuYWxcIikgYXMgSW50ZXJuYWxNb2RlbENvbnRleHQ7XG5cdFx0Y29uc3QgYUFnZ3JlZ2F0aW9uID1cblx0XHRcdChvSW50ZXJhY3RpdmVDaGFydC5nZXRQb2ludHMgJiYgb0ludGVyYWN0aXZlQ2hhcnQuZ2V0UG9pbnRzKCkpIHx8XG5cdFx0XHQob0ludGVyYWN0aXZlQ2hhcnQuZ2V0QmFycyAmJiBvSW50ZXJhY3RpdmVDaGFydC5nZXRCYXJzKCkpIHx8XG5cdFx0XHQob0ludGVyYWN0aXZlQ2hhcnQuZ2V0U2VnbWVudHMgJiYgb0ludGVyYWN0aXZlQ2hhcnQuZ2V0U2VnbWVudHMoKSk7XG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBhQWdncmVnYXRpb24ubGVuZ3RoOyBpKyspIHtcblx0XHRcdG9EYXRhLnB1c2goYUFnZ3JlZ2F0aW9uW2ldLmdldEJpbmRpbmdDb250ZXh0KCkuZ2V0T2JqZWN0KCkpO1xuXHRcdH1cblx0XHRjb25zdCBzY2FsZUZhY3RvciA9IHRoaXMuX2dldE1lZGlhblNjYWxlRmFjdG9yKG9EYXRhLCBzTWVhc3VyZSk7XG5cdFx0aWYgKHNjYWxlRmFjdG9yICYmIHNjYWxlRmFjdG9yLmlTaG9ydFJlZk51bWJlciAmJiBzY2FsZUZhY3Rvci5zY2FsZSkge1xuXHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KGBzY2FsZWZhY3Rvci8ke3NJbmZvUGF0aH1gLCBzY2FsZUZhY3Rvci5zY2FsZSk7XG5cdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoYHNjYWxlZmFjdG9yTnVtYmVyLyR7c0luZm9QYXRofWAsIHNjYWxlRmFjdG9yLmlTaG9ydFJlZk51bWJlcik7XG5cdFx0fSBlbHNlIHtcblx0XHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dC5zZXRQcm9wZXJ0eShgc2NhbGVmYWN0b3IvJHtzSW5mb1BhdGh9YCwgXCJcIik7XG5cdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoYHNjYWxlZmFjdG9yTnVtYmVyLyR7c0luZm9QYXRofWAsIFwiXCIpO1xuXHRcdFx0Y29uc3Qgb1NjYWxlVGl0bGUgPSBvVmlldy5ieUlkKGAke3NWRklkfTo6U2NhbGVVb01UaXRsZWApIGFzIFRpdGxlO1xuXHRcdFx0Y29uc3Qgb01lYXN1cmVEaW1lbnNpb25UaXRsZSA9IG9WaWV3LmJ5SWQoYCR7c1ZGSWR9OjpNZWFzdXJlRGltZW5zaW9uVGl0bGVgKSBhcyBUaXRsZTtcblx0XHRcdGNvbnN0IHNUZXh0ID0gb1NjYWxlVGl0bGUuZ2V0VGV4dCgpO1xuXHRcdFx0aWYgKHNUZXh0ID09PSBcIiB8IFwiKSB7XG5cdFx0XHRcdG9TY2FsZVRpdGxlLnNldFZpc2libGUoZmFsc2UpO1xuXHRcdFx0XHRvTWVhc3VyZURpbWVuc2lvblRpdGxlLnNldFRvb2x0aXAob01lYXN1cmVEaW1lbnNpb25UaXRsZS5nZXRUZXh0KCkpO1xuXHRcdFx0fVxuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogUmV0dXJucyB0aGUgbWVkaWFuIHNjYWxlIGZhY3Rvci5cblx0ICpcblx0ICogQHBhcmFtIG9EYXRhIFZpc3VhbEZpbHRlciBkYXRhXG5cdCAqIEBwYXJhbSBzTWVhc3VyZUZpZWxkIFBhdGggb2YgdGhlIG1lYXN1cmVcblx0ICogQHJldHVybnMgT2JqZWN0IGNvbnRhaW5pbmcgc2NhbGUgYW5kIGlTaG9ydFJlZk51bWJlclxuXHQgKi9cblx0X2dldE1lZGlhblNjYWxlRmFjdG9yOiBmdW5jdGlvbiAob0RhdGE6IGFueVtdLCBzTWVhc3VyZUZpZWxkOiBzdHJpbmcpIHtcblx0XHRsZXQgaTtcblx0XHRsZXQgc2NhbGVGYWN0b3I7XG5cdFx0b0RhdGEuc29ydChmdW5jdGlvbiAoYTogYW55LCBiOiBhbnkpIHtcblx0XHRcdGlmIChOdW1iZXIoYVtzTWVhc3VyZUZpZWxkXSkgPCBOdW1iZXIoYltzTWVhc3VyZUZpZWxkXSkpIHtcblx0XHRcdFx0cmV0dXJuIC0xO1xuXHRcdFx0fVxuXHRcdFx0aWYgKE51bWJlcihhW3NNZWFzdXJlRmllbGRdKSA+IE51bWJlcihiW3NNZWFzdXJlRmllbGRdKSkge1xuXHRcdFx0XHRyZXR1cm4gMTtcblx0XHRcdH1cblx0XHRcdHJldHVybiAwO1xuXHRcdH0pO1xuXHRcdGlmIChvRGF0YS5sZW5ndGggPiAwKSB7XG5cdFx0XHQvLyBnZXQgbWVkaWFuIGluZGV4XG5cdFx0XHRjb25zdCBpTWlkID0gb0RhdGEubGVuZ3RoIC8gMiwgLy8gZ2V0IG1pZCBvZiBhcnJheVxuXHRcdFx0XHQvLyBpZiBpTWlkIGlzIHdob2xlIG51bWJlciwgYXJyYXkgbGVuZ3RoIGlzIGV2ZW4sIGNhbGN1bGF0ZSBtZWRpYW5cblx0XHRcdFx0Ly8gaWYgaU1pZCBpcyBub3Qgd2hvbGUgbnVtYmVyLCBhcnJheSBsZW5ndGggaXMgb2RkLCB0YWtlIG1lZGlhbiBhcyBpTWlkIC0gMVxuXHRcdFx0XHRpTWVkaWFuID1cblx0XHRcdFx0XHRpTWlkICUgMSA9PT0gMFxuXHRcdFx0XHRcdFx0PyAocGFyc2VGbG9hdChvRGF0YVtpTWlkIC0gMV1bc01lYXN1cmVGaWVsZF0pICsgcGFyc2VGbG9hdChvRGF0YVtpTWlkXVtzTWVhc3VyZUZpZWxkXSkpIC8gMlxuXHRcdFx0XHRcdFx0OiBwYXJzZUZsb2F0KG9EYXRhW01hdGguZmxvb3IoaU1pZCldW3NNZWFzdXJlRmllbGRdKSxcblx0XHRcdFx0Ly8gZ2V0IHNjYWxlIGZhY3RvciBvbiBtZWRpYW5cblx0XHRcdFx0dmFsID0gaU1lZGlhbjtcblx0XHRcdGZvciAoaSA9IDA7IGkgPCAxNDsgaSsrKSB7XG5cdFx0XHRcdHNjYWxlRmFjdG9yID0gTWF0aC5wb3coMTAsIGkpO1xuXHRcdFx0XHRpZiAoTWF0aC5yb3VuZChNYXRoLmFicyh2YWwpIC8gc2NhbGVGYWN0b3IpIDwgMTApIHtcblx0XHRcdFx0XHRicmVhaztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGNvbnN0IGZpeGVkSW50ZWdlciA9IE51bWJlckZvcm1hdC5nZXRJbnRlZ2VySW5zdGFuY2Uoe1xuXHRcdFx0c3R5bGU6IFwic2hvcnRcIixcblx0XHRcdHNob3dTY2FsZTogZmFsc2UsXG5cdFx0XHRzaG9ydFJlZk51bWJlcjogc2NhbGVGYWN0b3Jcblx0XHR9KTtcblxuXHRcdC8vIGFwcGx5IHNjYWxlIGZhY3RvciB0byBvdGhlciB2YWx1ZXMgYW5kIGNoZWNrXG5cdFx0Zm9yIChpID0gMDsgaSA8IG9EYXRhLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRjb25zdCBhRGF0YSA9IG9EYXRhW2ldLFxuXHRcdFx0XHRzU2NhbGVkVmFsdWUgPSBmaXhlZEludGVnZXIuZm9ybWF0KGFEYXRhW3NNZWFzdXJlRmllbGRdKSBhcyBhbnksXG5cdFx0XHRcdGFTY2FsZWRWYWx1ZVBhcnRzID0gc1NjYWxlZFZhbHVlLnNwbGl0KFwiLlwiKTtcblx0XHRcdC8vIGlmIHNjYWxlZCB2YWx1ZSBoYXMgb25seSAwIGJlZm9yZSBkZWNpbWFsIG9yIDAgYWZ0ZXIgZGVjaW1hbCAoZXhhbXBsZTogMC4wMilcblx0XHRcdC8vIHRoZW4gaWdub3JlIHRoaXMgc2NhbGUgZmFjdG9yIGVsc2UgcHJvY2VlZCB3aXRoIHRoaXMgc2NhbGUgZmFjdG9yXG5cdFx0XHQvLyBpZiBzY2FsZWQgdmFsdWUgZGl2aWRlZCBieSAxMDAwIGlzID49IDEwMDAgdGhlbiBhbHNvIGlnbm9yZSBzY2FsZSBmYWN0b3Jcblx0XHRcdGlmIChcblx0XHRcdFx0KCFhU2NhbGVkVmFsdWVQYXJ0c1sxXSAmJiBwYXJzZUludChhU2NhbGVkVmFsdWVQYXJ0c1swXSwgMTApID09PSAwKSB8fFxuXHRcdFx0XHQoYVNjYWxlZFZhbHVlUGFydHNbMV0gJiYgcGFyc2VJbnQoYVNjYWxlZFZhbHVlUGFydHNbMF0sIDEwKSA9PT0gMCAmJiBhU2NhbGVkVmFsdWVQYXJ0c1sxXS5pbmRleE9mKFwiMFwiKSA9PT0gMCkgfHxcblx0XHRcdFx0c1NjYWxlZFZhbHVlIC8gMTAwMCA+PSAxMDAwXG5cdFx0XHQpIHtcblx0XHRcdFx0c2NhbGVGYWN0b3IgPSB1bmRlZmluZWQ7XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0aVNob3J0UmVmTnVtYmVyOiBzY2FsZUZhY3Rvcixcblx0XHRcdHNjYWxlOiBzY2FsZUZhY3RvciA/IChmaXhlZEludGVnZXIgYXMgYW55KS5nZXRTY2FsZSgpIDogXCJcIlxuXHRcdH07XG5cdH0sXG5cblx0LyoqXG5cdCAqIFJldHVybnMgdGhlIGZvcm1hdHRlZCBudW1iZXIgYWNjb3JkaW5nIHRvIHRoZSBydWxlcyBvZiBWaXN1YWxDaGFydEZpbHRlcnMuXG5cdCAqXG5cdCAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSB3aGljaCBuZWVkcyB0byBiZSBmb3JtYXR0ZWRcblx0ICogQHBhcmFtIHNjYWxlRmFjdG9yIFNjYWxlRmFjdG9yIHRvIHdoaWNoIHRoZSB2YWx1ZSBuZWVkcyB0byBiZSBzY2FsZWRcblx0ICogQHBhcmFtIG51bWJlck9mRnJhY3Rpb25hbERpZ2l0cyBOdW1iZXJPZkZyYWN0aW9uYWxEaWdpdHMgZGlnaXRzIGluIHRoZSBkZWNpbWFscyBhY2NvcmRpbmcgdG8gc2NhbGVcblx0ICogQHBhcmFtIGN1cnJlbmN5IEN1cnJlbmN5IGNvZGVcblx0ICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCBudW1iZXJcblx0ICovXG5cdGdldEZvcm1hdHRlZE51bWJlcjogZnVuY3Rpb24gKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIsIHNjYWxlRmFjdG9yPzogbnVtYmVyLCBudW1iZXJPZkZyYWN0aW9uYWxEaWdpdHM/OiBudW1iZXIsIGN1cnJlbmN5Pzogc3RyaW5nKSB7XG5cdFx0bGV0IGZpeGVkSW50ZWdlcjtcblx0XHR2YWx1ZSA9IHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIiA/IE51bWJlcih2YWx1ZS5yZXBsYWNlKC8sL2csIFwiXCIpKSA6IHZhbHVlO1xuXG5cdFx0aWYgKGN1cnJlbmN5KSB7XG5cdFx0XHRjb25zdCBjdXJyZW5jeUZvcm1hdCA9IE51bWJlckZvcm1hdC5nZXRDdXJyZW5jeUluc3RhbmNlKHtcblx0XHRcdFx0c2hvd01lYXN1cmU6IGZhbHNlXG5cdFx0XHR9KTtcblx0XHRcdHJldHVybiBjdXJyZW5jeUZvcm1hdC5mb3JtYXQocGFyc2VGbG9hdCh2YWx1ZSBhcyBhbnkpLCBjdXJyZW5jeSk7XG5cdFx0XHQvLyBwYXJzZUZsb2F0KHZhbHVlKSBpcyByZXF1aXJlZCBvdGhlcndpc2UgLXZlIHZhbHVlIGFyZSB3cm9uZ2x5IHJvdW5kZWQgb2ZmXG5cdFx0XHQvLyBFeGFtcGxlOiBcIi0xLjlcIiByb3VuZHMgb2ZmIHRvIC0xIGluc3RlYWQgb2YgLTIuIGhvd2V2ZXIgLTEuOSByb3VuZHMgb2ZmIHRvIC0yXG5cdFx0fSBlbHNlIGlmIChzY2FsZUZhY3Rvcikge1xuXHRcdFx0Zml4ZWRJbnRlZ2VyID0gTnVtYmVyRm9ybWF0LmdldEZsb2F0SW5zdGFuY2Uoe1xuXHRcdFx0XHRzdHlsZTogXCJzaG9ydFwiLFxuXHRcdFx0XHRzaG93U2NhbGU6IGZhbHNlLFxuXHRcdFx0XHRzaG9ydFJlZk51bWJlcjogc2NhbGVGYWN0b3IsXG5cdFx0XHRcdHNob3J0RGVjaW1hbHM6IG51bWJlck9mRnJhY3Rpb25hbERpZ2l0c1xuXHRcdFx0fSk7XG5cdFx0XHRyZXR1cm4gZml4ZWRJbnRlZ2VyLmZvcm1hdChwYXJzZUZsb2F0KHZhbHVlIGFzIGFueSkpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRmaXhlZEludGVnZXIgPSBOdW1iZXJGb3JtYXQuZ2V0RmxvYXRJbnN0YW5jZSh7XG5cdFx0XHRcdGRlY2ltYWxzOiBudW1iZXJPZkZyYWN0aW9uYWxEaWdpdHNcblx0XHRcdH0pO1xuXHRcdFx0cmV0dXJuIGZpeGVkSW50ZWdlci5mb3JtYXQocGFyc2VGbG9hdCh2YWx1ZSBhcyBhbnkpKTtcblx0XHR9XG5cdH0sXG5cblx0LyoqXG5cdCAqIEFwcGxpZXMgdGhlIFVPTSB0byB0aGUgdGl0bGUgb2YgdGhlIHZpc3VhbCBmaWx0ZXIgY29udHJvbC5cblx0ICpcblx0ICogQHBhcmFtIG9JbnRlcmFjdGl2ZUNoYXJ0IEludGVyYWN0aXZlQ2hhcnQgaW4gdGhlIFZpc3VhbEZpbHRlciBjb250cm9sXG5cdCAqIEBwYXJhbSBvQ29udGV4dERhdGEgRGF0YSBvZiB0aGUgVmlzdWFsRmlsdGVyXG5cdCAqIEBwYXJhbSBvVmlldyBJbnN0YW5jZSBvZiB0aGUgdmlld1xuXHQgKiBAcGFyYW0gc0luZm9QYXRoIEludGVybmFsIG1vZGVsIGNvbnRleHQgcGF0aCB0byBzdG9yZSBpbmZvLlxuXHQgKi9cblx0YXBwbHlVT01Ub1RpdGxlOiBmdW5jdGlvbiAob0ludGVyYWN0aXZlQ2hhcnQ6IGFueSwgb0NvbnRleHREYXRhOiBhbnksIG9WaWV3OiBWaWV3LCBzSW5mb1BhdGg6IHN0cmluZykge1xuXHRcdGNvbnN0IHZVT00gPSBvSW50ZXJhY3RpdmVDaGFydC5kYXRhKFwidW9tXCIpO1xuXHRcdGxldCBzVU9NO1xuXHRcdGxldCBzQ3VycmVuY3k7XG5cdFx0aWYgKHZVT00gJiYgdlVPTVtcIklTT0N1cnJlbmN5XCJdKSB7XG5cdFx0XHRzVU9NID0gdlVPTVtcIklTT0N1cnJlbmN5XCJdO1xuXHRcdFx0c0N1cnJlbmN5ID0gc1VPTS4kUGF0aCA/IG9Db250ZXh0RGF0YVtzVU9NLiRQYXRoXSA6IHNVT007XG5cdFx0fSBlbHNlIGlmICh2VU9NICYmIHZVT01bXCJVbml0XCJdKSB7XG5cdFx0XHRzVU9NID0gdlVPTVtcIlVuaXRcIl07XG5cdFx0fVxuXHRcdGlmIChzVU9NKSB7XG5cdFx0XHRjb25zdCBzVU9NVmFsdWUgPSBzVU9NLiRQYXRoID8gb0NvbnRleHREYXRhW3NVT00uJFBhdGhdIDogc1VPTTtcblx0XHRcdGNvbnN0IG9JbnRlcm5hbE1vZGVsQ29udGV4dCA9IG9WaWV3LmdldEJpbmRpbmdDb250ZXh0KFwiaW50ZXJuYWxcIikgYXMgSW50ZXJuYWxNb2RlbENvbnRleHQ7XG5cdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoYHVvbS8ke3NJbmZvUGF0aH1gLCBzVU9NVmFsdWUpO1xuXHRcdFx0aWYgKHNDdXJyZW5jeSkge1xuXHRcdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoYGN1cnJlbmN5LyR7c0luZm9QYXRofWAsIHNVT01WYWx1ZSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9LFxuXHQvKipcblx0ICogVXBkYXRlcyB0aGUgc2NhbGUgZmFjdG9yIGluIHRoZSB0aXRsZSBvZiB0aGUgdmlzdWFsIGZpbHRlci5cblx0ICpcblx0ICogQHBhcmFtIG9JbnRlcmFjdGl2ZUNoYXJ0IEludGVyYWN0aXZlQ2hhcnQgaW4gdGhlIFZpc3VhbEZpbHRlciBjb250cm9sXG5cdCAqIEBwYXJhbSBvVmlldyBJbnN0YW5jZSBvZiB0aGUgdmlld1xuXHQgKiBAcGFyYW0gc1ZGSWQgVmlzdWFsRmlsdGVyIGNvbnRyb2wgSURcblx0ICogQHBhcmFtIHNJbmZvUGF0aCBJbnRlcm5hbCBtb2RlbCBjb250ZXh0IHBhdGggdG8gc3RvcmUgaW5mby5cblx0ICovXG5cdHVwZGF0ZUNoYXJ0U2NhbGVGYWN0b3JUaXRsZTogZnVuY3Rpb24gKG9JbnRlcmFjdGl2ZUNoYXJ0OiBhbnksIG9WaWV3OiBWaWV3LCBzVkZJZDogc3RyaW5nLCBzSW5mb1BhdGg6IHN0cmluZykge1xuXHRcdGlmICghb0ludGVyYWN0aXZlQ2hhcnQuZGF0YShcInNjYWxlZmFjdG9yXCIpKSB7XG5cdFx0XHR0aGlzLmFwcGx5TWVkaWFuU2NhbGVUb0NoYXJ0RGF0YShvSW50ZXJhY3RpdmVDaGFydCwgb1ZpZXcsIHNWRklkLCBzSW5mb1BhdGgpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRjb25zdCBmaXhlZEludGVnZXIgPSBOdW1iZXJGb3JtYXQuZ2V0SW50ZWdlckluc3RhbmNlKHtcblx0XHRcdFx0c3R5bGU6IFwic2hvcnRcIixcblx0XHRcdFx0c2hvd1NjYWxlOiBmYWxzZSxcblx0XHRcdFx0c2hvcnRSZWZOdW1iZXI6IG9JbnRlcmFjdGl2ZUNoYXJ0LmRhdGEoXCJzY2FsZWZhY3RvclwiKVxuXHRcdFx0fSk7XG5cdFx0XHRjb25zdCBvSW50ZXJuYWxNb2RlbENvbnRleHQgPSBvVmlldy5nZXRCaW5kaW5nQ29udGV4dChcImludGVybmFsXCIpIGFzIEludGVybmFsTW9kZWxDb250ZXh0O1xuXHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KGBzY2FsZWZhY3Rvci8ke3NJbmZvUGF0aH1gLCAoZml4ZWRJbnRlZ2VyIGFzIGFueSkuZ2V0U2NhbGUoKSk7XG5cdFx0fVxuXHR9LFxuXG5cdC8qKlxuXHQgKlxuXHQgKiBAcGFyYW0gczE4bk1lc3NhZ2VUaXRsZSBUZXh0IG9mIHRoZSBlcnJvciBtZXNzYWdlIHRpdGxlLlxuXHQgKiBAcGFyYW0gczE4bk1lc3NhZ2UgVGV4dCBvZiB0aGUgZXJyb3IgbWVzc2FnZSBkZXNjcmlwdGlvbi5cblx0ICogQHBhcmFtIHNJbmZvUGF0aCBJbnRlcm5hbCBtb2RlbCBjb250ZXh0IHBhdGggdG8gc3RvcmUgaW5mby5cblx0ICogQHBhcmFtIG9WaWV3IEluc3RhbmNlIG9mIHRoZSB2aWV3LlxuXHQgKi9cblx0YXBwbHlFcnJvck1lc3NhZ2VBbmRUaXRsZTogZnVuY3Rpb24gKHMxOG5NZXNzYWdlVGl0bGU6IHN0cmluZywgczE4bk1lc3NhZ2U6IHN0cmluZywgc0luZm9QYXRoOiBzdHJpbmcsIG9WaWV3OiBWaWV3KSB7XG5cdFx0Y29uc3Qgb0ludGVybmFsTW9kZWxDb250ZXh0ID0gb1ZpZXcuZ2V0QmluZGluZ0NvbnRleHQoXCJpbnRlcm5hbFwiKSBhcyBJbnRlcm5hbE1vZGVsQ29udGV4dDtcblx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoc0luZm9QYXRoLCB7fSk7XG5cdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KHNJbmZvUGF0aCwge1xuXHRcdFx0ZXJyb3JNZXNzYWdlVGl0bGU6IHMxOG5NZXNzYWdlVGl0bGUsXG5cdFx0XHRlcnJvck1lc3NhZ2U6IHMxOG5NZXNzYWdlLFxuXHRcdFx0c2hvd0Vycm9yOiB0cnVlXG5cdFx0fSk7XG5cdH0sXG5cdC8qKlxuXHQgKiBDaGVja3MgaWYgbXVsdGlwbGUgdW5pdHMgYXJlIHByZXNlbnQuXG5cdCAqXG5cdCAqIEBwYXJhbSBvQ29udGV4dHMgQ29udGV4dHMgb2YgdGhlIFZpc3VhbEZpbHRlclxuXHQgKiBAcGFyYW0gc1VuaXRmaWVsZCBUaGUgcGF0aCBvZiB0aGUgdW5pdCBmaWVsZFxuXHQgKiBAcmV0dXJucyBSZXR1cm5zIGlmIG11bHRpcGxlIHVuaXRzIGFyZSBjb25maWd1cmVkIG9yIG5vdFxuXHQgKi9cblx0Y2hlY2tNdWxpdFVuaXQ6IGZ1bmN0aW9uIChvQ29udGV4dHM6IENvbnRleHRbXSwgc1VuaXRmaWVsZDogc3RyaW5nKSB7XG5cdFx0Y29uc3QgYURhdGEgPSBbXTtcblx0XHRpZiAob0NvbnRleHRzICYmIHNVbml0ZmllbGQpIHtcblx0XHRcdGZvciAobGV0IGkgPSAwOyBpIDwgb0NvbnRleHRzLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRcdGNvbnN0IGFDb250ZXh0RGF0YSA9IG9Db250ZXh0c1tpXSAmJiAob0NvbnRleHRzW2ldLmdldE9iamVjdCgpIGFzIGFueSk7XG5cdFx0XHRcdGFEYXRhLnB1c2goYUNvbnRleHREYXRhW3NVbml0ZmllbGRdKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0cmV0dXJuICEhYURhdGEucmVkdWNlKGZ1bmN0aW9uIChkYXRhOiBhbnksIGtleTogYW55KSB7XG5cdFx0XHRyZXR1cm4gZGF0YSA9PT0ga2V5ID8gZGF0YSA6IE5hTjtcblx0XHR9KTtcblx0fSxcblxuXHQvKipcblx0ICogU2V0cyBhbiBlcnJvciBtZXNzYWdlIGlmIG11bHRpcGxlIFVPTSBhcmUgcHJlc2VudC5cblx0ICpcblx0ICogQHBhcmFtIG9EYXRhIERhdGEgb2YgdGhlIFZpc3VhbEZpbHRlciBjb250cm9sXG5cdCAqIEBwYXJhbSBvSW50ZXJhY3RpdmVDaGFydCBJbnRlcmFjdGl2ZUNoYXJ0IGluIHRoZSBWaXN1YWxGaWx0ZXIgY29udHJvbFxuXHQgKiBAcGFyYW0gc0luZm9QYXRoIEludGVybmFsIG1vZGVsIGNvbnRleHQgcGF0aCB0byBzdG9yZSBpbmZvLlxuXHQgKiBAcGFyYW0gb1Jlc291cmNlQnVuZGxlIFRoZSByZXNvdXJjZSBidW5kbGVcblx0ICogQHBhcmFtIG9WaWV3IEluc3RhbmNlIG9mIHRoZSB2aWV3XG5cdCAqL1xuXHRzZXRNdWx0aVVPTU1lc3NhZ2U6IGZ1bmN0aW9uIChcblx0XHRvRGF0YTogQ29udGV4dFtdLFxuXHRcdG9JbnRlcmFjdGl2ZUNoYXJ0OiBhbnksXG5cdFx0c0luZm9QYXRoOiBzdHJpbmcsXG5cdFx0b1Jlc291cmNlQnVuZGxlOiBSZXNvdXJjZUJ1bmRsZSxcblx0XHRvVmlldzogVmlld1xuXHQpIHtcblx0XHRjb25zdCB2VU9NID0gb0ludGVyYWN0aXZlQ2hhcnQuZGF0YShcInVvbVwiKTtcblx0XHRjb25zdCBzSXNDdXJyZW5jeSA9IHZVT00gJiYgdlVPTVtcIklTT0N1cnJlbmN5XCJdICYmIHZVT01bXCJJU09DdXJyZW5jeVwiXS4kUGF0aDtcblx0XHRjb25zdCBzSXNVbml0ID0gdlVPTSAmJiB2VU9NW1wiVW5pdFwiXSAmJiB2VU9NW1wiVW5pdFwiXS4kUGF0aDtcblx0XHRjb25zdCBzVW5pdGZpZWxkID0gc0lzQ3VycmVuY3kgfHwgc0lzVW5pdDtcblx0XHRsZXQgczE4bk1lc3NhZ2VUaXRsZSwgczE4bk1lc3NhZ2U7XG5cdFx0aWYgKHNVbml0ZmllbGQpIHtcblx0XHRcdGlmICghdGhpcy5jaGVja011bGl0VW5pdChvRGF0YSwgc1VuaXRmaWVsZCkpIHtcblx0XHRcdFx0aWYgKHNJc0N1cnJlbmN5KSB7XG5cdFx0XHRcdFx0czE4bk1lc3NhZ2VUaXRsZSA9IG9SZXNvdXJjZUJ1bmRsZS5nZXRUZXh0KFwiTV9WSVNVQUxfRklMVEVSU19FUlJPUl9NRVNTQUdFX1RJVExFXCIpO1xuXHRcdFx0XHRcdHMxOG5NZXNzYWdlID0gb1Jlc291cmNlQnVuZGxlLmdldFRleHQoXCJNX1ZJU1VBTF9GSUxURVJTX01VTFRJUExFX0NVUlJFTkNZXCIsIHNVbml0ZmllbGQpO1xuXHRcdFx0XHRcdHRoaXMuYXBwbHlFcnJvck1lc3NhZ2VBbmRUaXRsZShzMThuTWVzc2FnZVRpdGxlLCBzMThuTWVzc2FnZSwgc0luZm9QYXRoLCBvVmlldyk7XG5cdFx0XHRcdFx0TG9nLndhcm5pbmcoYEZpbHRlciBpcyBzZXQgZm9yIG11bHRpcGxlIEN1cnJlbmN5IGZvciR7c1VuaXRmaWVsZH1gKTtcblx0XHRcdFx0fSBlbHNlIGlmIChzSXNVbml0KSB7XG5cdFx0XHRcdFx0czE4bk1lc3NhZ2VUaXRsZSA9IG9SZXNvdXJjZUJ1bmRsZS5nZXRUZXh0KFwiTV9WSVNVQUxfRklMVEVSU19FUlJPUl9NRVNTQUdFX1RJVExFXCIpO1xuXHRcdFx0XHRcdHMxOG5NZXNzYWdlID0gb1Jlc291cmNlQnVuZGxlLmdldFRleHQoXCJNX1ZJU1VBTF9GSUxURVJTX01VTFRJUExFX1VOSVRcIiwgc1VuaXRmaWVsZCk7XG5cdFx0XHRcdFx0dGhpcy5hcHBseUVycm9yTWVzc2FnZUFuZFRpdGxlKHMxOG5NZXNzYWdlVGl0bGUsIHMxOG5NZXNzYWdlLCBzSW5mb1BhdGgsIG9WaWV3KTtcblx0XHRcdFx0XHRMb2cud2FybmluZyhgRmlsdGVyIGlzIHNldCBmb3IgbXVsdGlwbGUgVU9NcyBmb3Ike3NVbml0ZmllbGR9YCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH0sXG5cblx0LyoqXG5cdCAqIFNldHMgYW4gZXJyb3IgbWVzc2FnZSBpZiByZXNwb25zZSBkYXRhIGlzIGVtcHR5LlxuXHQgKlxuXHQgKiBAcGFyYW0gc0luZm9QYXRoIEludGVybmFsIG1vZGVsIGNvbnRleHQgcGF0aCB0byBzdG9yZSBpbmZvLlxuXHQgKiBAcGFyYW0gb1Jlc291cmNlQnVuZGxlIFRoZSByZXNvdXJjZSBidW5kbGVcblx0ICogQHBhcmFtIG9WaWV3IEluc3RhbmNlIG9mIHRoZSB2aWV3XG5cdCAqL1xuXHRzZXROb0RhdGFNZXNzYWdlOiBmdW5jdGlvbiAoc0luZm9QYXRoOiBzdHJpbmcsIG9SZXNvdXJjZUJ1bmRsZTogUmVzb3VyY2VCdW5kbGUsIG9WaWV3OiBWaWV3KSB7XG5cdFx0Y29uc3QgczE4bk1lc3NhZ2VUaXRsZSA9IG9SZXNvdXJjZUJ1bmRsZS5nZXRUZXh0KFwiTV9WSVNVQUxfRklMVEVSU19FUlJPUl9NRVNTQUdFX1RJVExFXCIpO1xuXHRcdGNvbnN0IHMxOG5NZXNzYWdlID0gb1Jlc291cmNlQnVuZGxlLmdldFRleHQoXCJNX1ZJU1VBTF9GSUxURVJfTk9fREFUQV9URVhUXCIpO1xuXHRcdHRoaXMuYXBwbHlFcnJvck1lc3NhZ2VBbmRUaXRsZShzMThuTWVzc2FnZVRpdGxlLCBzMThuTWVzc2FnZSwgc0luZm9QYXRoLCBvVmlldyk7XG5cdH0sXG5cdGNvbnZlcnRGaWx0ZXJDb25kaW9uczogZnVuY3Rpb24gKG9GaWx0ZXJDb25kaXRpb25zOiBhbnkpIHtcblx0XHRjb25zdCBvQ29udmVydGVkQ29uZGl0aW9uczogYW55ID0ge307XG5cdFx0T2JqZWN0LmtleXMob0ZpbHRlckNvbmRpdGlvbnMpLmZvckVhY2goZnVuY3Rpb24gKHNLZXk6IHN0cmluZykge1xuXHRcdFx0Y29uc3QgYUNvbnZlcnRlZENvbmRpdGlvbnMgPSBbXTtcblx0XHRcdGNvbnN0IGFDb25kaXRpb25zID0gb0ZpbHRlckNvbmRpdGlvbnNbc0tleV07XG5cdFx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGFDb25kaXRpb25zLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRcdGNvbnN0IHZhbHVlcyA9IGFDb25kaXRpb25zW2ldLnZhbHVlMiA/IFthQ29uZGl0aW9uc1tpXS52YWx1ZTEsIGFDb25kaXRpb25zW2ldLnZhbHVlMl0gOiBbYUNvbmRpdGlvbnNbaV0udmFsdWUxXTtcblx0XHRcdFx0YUNvbnZlcnRlZENvbmRpdGlvbnMucHVzaChcblx0XHRcdFx0XHRDb25kaXRpb24uY3JlYXRlQ29uZGl0aW9uKGFDb25kaXRpb25zW2ldLm9wZXJhdG9yLCB2YWx1ZXMsIG51bGwsIG51bGwsIFwiVmFsaWRhdGVkXCIgYXMgQ29uZGl0aW9uVmFsaWRhdGVkKVxuXHRcdFx0XHQpO1xuXHRcdFx0fVxuXHRcdFx0aWYgKGFDb252ZXJ0ZWRDb25kaXRpb25zLmxlbmd0aCkge1xuXHRcdFx0XHRvQ29udmVydGVkQ29uZGl0aW9uc1tzS2V5XSA9IGFDb252ZXJ0ZWRDb25kaXRpb25zO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHRcdHJldHVybiBvQ29udmVydGVkQ29uZGl0aW9ucztcblx0fSxcblx0Z2V0Q3VzdG9tQ29uZGl0aW9uczogZnVuY3Rpb24gKFJhbmdlOiBhbnksIG9WYWxpZFByb3BlcnR5OiBhbnksIHNQcm9wZXJ0eU5hbWU6IGFueSkge1xuXHRcdGxldCB2YWx1ZTEsIHZhbHVlMjtcblx0XHRpZiAob1ZhbGlkUHJvcGVydHkuJFR5cGUgPT09IFwiRWRtLkRhdGVUaW1lT2Zmc2V0XCIpIHtcblx0XHRcdHZhbHVlMSA9IHRoaXMuX3BhcnNlRGF0ZVRpbWUoZ2V0VHlwZUNvbXBsaWFudFZhbHVlKHRoaXMuX2Zvcm1hdERhdGVUaW1lKFJhbmdlLkxvdyksIG9WYWxpZFByb3BlcnR5LiRUeXBlKSk7XG5cdFx0XHR2YWx1ZTIgPSBSYW5nZS5IaWdoID8gdGhpcy5fcGFyc2VEYXRlVGltZShnZXRUeXBlQ29tcGxpYW50VmFsdWUodGhpcy5fZm9ybWF0RGF0ZVRpbWUoUmFuZ2UuSGlnaCksIG9WYWxpZFByb3BlcnR5LiRUeXBlKSkgOiBudWxsO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR2YWx1ZTEgPSBSYW5nZS5Mb3c7XG5cdFx0XHR2YWx1ZTIgPSBSYW5nZS5IaWdoID8gUmFuZ2UuSGlnaCA6IG51bGw7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRvcGVyYXRvcjogUmFuZ2UuT3B0aW9uID8gZ2V0UmFuZ2VQcm9wZXJ0eShSYW5nZS5PcHRpb24uJEVudW1NZW1iZXIgfHwgUmFuZ2UuT3B0aW9uKSA6IG51bGwsXG5cdFx0XHR2YWx1ZTE6IHZhbHVlMSxcblx0XHRcdHZhbHVlMjogdmFsdWUyLFxuXHRcdFx0cGF0aDogc1Byb3BlcnR5TmFtZVxuXHRcdH07XG5cdH0sXG5cdF9wYXJzZURhdGVUaW1lOiBmdW5jdGlvbiAoc1ZhbHVlOiBhbnkpIHtcblx0XHRyZXR1cm4gdGhpcy5fZ2V0RGF0ZVRpbWVUeXBlSW5zdGFuY2UoKS5wYXJzZVZhbHVlKHNWYWx1ZSwgXCJzdHJpbmdcIik7XG5cdH0sXG5cdF9mb3JtYXREYXRlVGltZTogZnVuY3Rpb24gKHNWYWx1ZTogYW55KSB7XG5cdFx0cmV0dXJuIHRoaXMuX2dldERhdGVUaW1lVHlwZUluc3RhbmNlKCkuZm9ybWF0VmFsdWUoc1ZhbHVlLCBcInN0cmluZ1wiKTtcblx0fSxcblx0X2dldERhdGVUaW1lVHlwZUluc3RhbmNlOiBmdW5jdGlvbiAoKSB7XG5cdFx0cmV0dXJuIG5ldyBEYXRlVGltZU9mZnNldCh7IHBhdHRlcm46IFwieXl5eS1NTS1kZFRISDptbTpzc1pcIiwgY2FsZW5kYXJUeXBlOiBcIkdyZWdvcmlhblwiIH0sIHsgVjQ6IHRydWUgfSk7XG5cdH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IFZpc3VhbEZpbHRlclV0aWxzO1xu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
5
+ sap.ui.define(["sap/base/Log","sap/fe/core/templating/FilterHelper","sap/ui/core/format/NumberFormat","sap/ui/mdc/condition/Condition","sap/ui/model/odata/type/DateTimeOffset"],function(e,t,r,n,a){"use strict";var s=t.getTypeCompliantValue;var o=t.getRangeProperty;const i={applyMedianScaleToChartData:function(e,t,r,n){const a=[];const s=e.data("measure");const o=t.getBindingContext("internal");const i=e.getPoints&&e.getPoints()||e.getBars&&e.getBars()||e.getSegments&&e.getSegments();for(let e=0;e<i.length;e++){a.push(i[e].getBindingContext().getObject())}const l=this._getMedianScaleFactor(a,s);if(l&&l.iShortRefNumber&&l.scale){o.setProperty(`scalefactor/${n}`,l.scale);o.setProperty(`scalefactorNumber/${n}`,l.iShortRefNumber)}else{o.setProperty(`scalefactor/${n}`,"");o.setProperty(`scalefactorNumber/${n}`,"");const e=t.byId(`${r}::ScaleUoMTitle`);const a=t.byId(`${r}::MeasureDimensionTitle`);const s=e.getText();if(s===" | "){e.setVisible(false);a.setTooltip(a.getText())}}},_getMedianScaleFactor:function(e,t){let n;let a;e.sort(function(e,r){if(Number(e[t])<Number(r[t])){return-1}if(Number(e[t])>Number(r[t])){return 1}return 0});if(e.length>0){const r=e.length/2,s=r%1===0?(parseFloat(e[r-1][t])+parseFloat(e[r][t]))/2:parseFloat(e[Math.floor(r)][t]),o=s;for(n=0;n<14;n++){a=Math.pow(10,n);if(Math.round(Math.abs(o)/a)<10){break}}}const s=r.getIntegerInstance({style:"short",showScale:false,shortRefNumber:a});for(n=0;n<e.length;n++){const r=e[n],o=s.format(r[t]),i=o.split(".");if(!i[1]&&parseInt(i[0],10)===0||i[1]&&parseInt(i[0],10)===0&&i[1].indexOf("0")===0||o/1e3>=1e3){a=undefined;break}}return{iShortRefNumber:a,scale:a?s.getScale():""}},getFormattedNumber:function(e,t,n,a){let s;e=typeof e==="string"?Number(e.replace(/,/g,"")):e;if(a){const t=r.getCurrencyInstance({showMeasure:false});return t.format(parseFloat(e),a)}else if(t){s=r.getFloatInstance({style:"short",showScale:false,shortRefNumber:t,shortDecimals:n});return s.format(parseFloat(e))}else{s=r.getFloatInstance({decimals:n});return s.format(parseFloat(e))}},applyUOMToTitle:function(e,t,r,n){const a=e.data("uom");let s;let o;if(a&&a["ISOCurrency"]){s=a["ISOCurrency"];o=s.$Path?t[s.$Path]:s}else if(a&&a["Unit"]){s=a["Unit"]}if(s){const e=s.$Path?t[s.$Path]:s;const a=r.getBindingContext("internal");a.setProperty(`uom/${n}`,e);if(o){a.setProperty(`currency/${n}`,e)}}},updateChartScaleFactorTitle:function(e,t,n,a){if(!e.data("scalefactor")){this.applyMedianScaleToChartData(e,t,n,a)}else{const n=r.getIntegerInstance({style:"short",showScale:false,shortRefNumber:e.data("scalefactor")});const s=t.getBindingContext("internal");s.setProperty(`scalefactor/${a}`,n.getScale())}},applyErrorMessageAndTitle:function(e,t,r,n){const a=n.getBindingContext("internal");a.setProperty(r,{});a.setProperty(r,{errorMessageTitle:e,errorMessage:t,showError:true})},checkMulitUnit:function(e,t){const r=[];if(e&&t){for(let n=0;n<e.length;n++){const a=e[n]&&e[n].getObject();r.push(a[t])}}return!!r.reduce(function(e,t){return e===t?e:NaN})},setMultiUOMMessage:function(t,r,n,a,s){const o=r.data("uom");const i=o&&o["ISOCurrency"]&&o["ISOCurrency"].$Path;const l=o&&o["Unit"]&&o["Unit"].$Path;const c=i||l;let u,f;if(c){if(!this.checkMulitUnit(t,c)){if(i){u=a.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE");f=a.getText("M_VISUAL_FILTERS_MULTIPLE_CURRENCY",c);this.applyErrorMessageAndTitle(u,f,n,s);e.warning(`Filter is set for multiple Currency for${c}`)}else if(l){u=a.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE");f=a.getText("M_VISUAL_FILTERS_MULTIPLE_UNIT",c);this.applyErrorMessageAndTitle(u,f,n,s);e.warning(`Filter is set for multiple UOMs for${c}`)}}}},setNoDataMessage:function(e,t,r){const n=t.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE");const a=t.getText("M_VISUAL_FILTER_NO_DATA_TEXT");this.applyErrorMessageAndTitle(n,a,e,r)},convertFilterCondions:function(e){const t={};Object.keys(e).forEach(function(r){const a=[];const s=e[r];for(let e=0;e<s.length;e++){const t=s[e].value2?[s[e].value1,s[e].value2]:[s[e].value1];a.push(n.createCondition(s[e].operator,t,null,null,"Validated"))}if(a.length){t[r]=a}});return t},getCustomConditions:function(e,t,r){let n,a;if(t.$Type==="Edm.DateTimeOffset"){n=this._parseDateTime(s(this._formatDateTime(e.Low),t.$Type));a=e.High?this._parseDateTime(s(this._formatDateTime(e.High),t.$Type)):null}else{n=e.Low;a=e.High?e.High:null}return{operator:e.Option?o(e.Option.$EnumMember||e.Option):null,value1:n,value2:a,path:r}},_parseDateTime:function(e){return this._getDateTimeTypeInstance().parseValue(e,"string")},_formatDateTime:function(e){return this._getDateTimeTypeInstance().formatValue(e,"string")},_getDateTimeTypeInstance:function(){return new a({pattern:"yyyy-MM-ddTHH:mm:ssZ",calendarType:"Gregorian"},{V4:true})}};return i},false);
6
+ //# sourceMappingURL=VisualFilterUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VisualFilterUtils.js","names":["sap","ui","define","Log","FilterHelper","NumberFormat","Condition","DateTimeOffset","getTypeCompliantValue","getRangeProperty","VisualFilterUtils","applyMedianScaleToChartData","oInteractiveChart","oView","sVFId","sInfoPath","oData","sMeasure","data","oInternalModelContext","getBindingContext","aAggregation","getPoints","getBars","getSegments","i","length","push","getObject","scaleFactor","this","_getMedianScaleFactor","iShortRefNumber","scale","setProperty","oScaleTitle","byId","oMeasureDimensionTitle","sText","getText","setVisible","setTooltip","sMeasureField","sort","a","b","Number","iMid","iMedian","parseFloat","Math","floor","val","pow","round","abs","fixedInteger","getIntegerInstance","style","showScale","shortRefNumber","aData","sScaledValue","format","aScaledValueParts","split","parseInt","indexOf","undefined","getScale","getFormattedNumber","value","numberOfFractionalDigits","currency","replace","currencyFormat","getCurrencyInstance","showMeasure","getFloatInstance","shortDecimals","decimals","applyUOMToTitle","oContextData","vUOM","sUOM","sCurrency","$Path","sUOMValue","updateChartScaleFactorTitle","applyErrorMessageAndTitle","s18nMessageTitle","s18nMessage","errorMessageTitle","errorMessage","showError","checkMulitUnit","oContexts","sUnitfield","aContextData","reduce","key","NaN","setMultiUOMMessage","oResourceBundle","sIsCurrency","sIsUnit","warning","setNoDataMessage","convertFilterCondions","oFilterConditions","oConvertedConditions","Object","keys","forEach","sKey","aConvertedConditions","aConditions","values","value2","value1","createCondition","operator","getCustomConditions","Range","oValidProperty","sPropertyName","$Type","_parseDateTime","_formatDateTime","Low","High","Option","$EnumMember","path","sValue","_getDateTimeTypeInstance","parseValue","formatValue","pattern","calendarType","V4"],"sources":["VisualFilterUtils-dbg.js"],"mappings":"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"}
@@ -226,7 +226,7 @@ const VisualFilterUtils = {
226
226
  const aData = [];
227
227
  if (oContexts && sUnitfield) {
228
228
  for (let i = 0; i < oContexts.length; i++) {
229
- const aContextData = oContexts[i] && (oContexts[i].getObject() as any);
229
+ const aContextData = oContexts[i] && oContexts[i].getObject();
230
230
  aData.push(aContextData[sUnitfield]);
231
231
  }
232
232
  }