@sapui5/sap.fe.core 1.112.0 → 1.114.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 (434) hide show
  1. package/package.json +1 -1
  2. package/src/sap/fe/core/.library +1 -1
  3. package/src/sap/fe/core/ActionRuntime-dbg.js +70 -6
  4. package/src/sap/fe/core/ActionRuntime.js +1 -1
  5. package/src/sap/fe/core/ActionRuntime.js.map +1 -1
  6. package/src/sap/fe/core/ActionRuntime.ts +118 -3
  7. package/src/sap/fe/core/AppComponent-dbg.js +16 -6
  8. package/src/sap/fe/core/AppComponent.js +1 -1
  9. package/src/sap/fe/core/AppComponent.js.map +1 -1
  10. package/src/sap/fe/core/AppComponent.ts +21 -7
  11. package/src/sap/fe/core/AppStateHandler-dbg.js +11 -10
  12. package/src/sap/fe/core/AppStateHandler.js +1 -1
  13. package/src/sap/fe/core/AppStateHandler.js.map +1 -1
  14. package/src/sap/fe/core/AppStateHandler.ts +14 -11
  15. package/src/sap/fe/core/CommonUtils-dbg.js +102 -175
  16. package/src/sap/fe/core/CommonUtils.js +1 -1
  17. package/src/sap/fe/core/CommonUtils.js.map +1 -1
  18. package/src/sap/fe/core/CommonUtils.ts +114 -211
  19. package/src/sap/fe/core/ExtensionAPI-dbg.js +3 -1
  20. package/src/sap/fe/core/ExtensionAPI.js.map +1 -1
  21. package/src/sap/fe/core/ExtensionAPI.ts +2 -0
  22. package/src/sap/fe/core/buildingBlocks/BuildingBlockBase-dbg.js +2 -1
  23. package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.js +1 -1
  24. package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.js.map +1 -1
  25. package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.ts +1 -0
  26. package/src/sap/fe/core/buildingBlocks/BuildingBlockSupport-dbg.js +2 -2
  27. package/src/sap/fe/core/buildingBlocks/BuildingBlockSupport.js +1 -1
  28. package/src/sap/fe/core/buildingBlocks/BuildingBlockSupport.js.map +1 -1
  29. package/src/sap/fe/core/buildingBlocks/BuildingBlockSupport.ts +13 -18
  30. package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor-dbg.js +32 -24
  31. package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor.js +4 -4
  32. package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor.js.map +1 -1
  33. package/src/sap/fe/core/buildingBlocks/BuildingBlockTemplateProcessor.ts +41 -29
  34. package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlock-dbg.js +2 -2
  35. package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlock.js +1 -1
  36. package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlock.js.map +1 -1
  37. package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlock.ts +1 -1
  38. package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlockFragment-dbg.js +2 -2
  39. package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlockFragment.js +1 -1
  40. package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlockFragment.js.map +1 -1
  41. package/src/sap/fe/core/buildingBlocks/RuntimeBuildingBlockFragment.ts +3 -1
  42. package/src/sap/fe/core/controllerextensions/EditFlow-dbg.js +124 -57
  43. package/src/sap/fe/core/controllerextensions/EditFlow.js +1 -1
  44. package/src/sap/fe/core/controllerextensions/EditFlow.js.map +1 -1
  45. package/src/sap/fe/core/controllerextensions/EditFlow.ts +146 -73
  46. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation-dbg.js +35 -74
  47. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +1 -1
  48. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js.map +1 -1
  49. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +35 -78
  50. package/src/sap/fe/core/controllerextensions/InternalRouting-dbg.js +217 -127
  51. package/src/sap/fe/core/controllerextensions/InternalRouting.js +1 -1
  52. package/src/sap/fe/core/controllerextensions/InternalRouting.js.map +1 -1
  53. package/src/sap/fe/core/controllerextensions/InternalRouting.ts +227 -129
  54. package/src/sap/fe/core/controllerextensions/PageReady-dbg.js +3 -5
  55. package/src/sap/fe/core/controllerextensions/PageReady.js +1 -1
  56. package/src/sap/fe/core/controllerextensions/PageReady.js.map +1 -1
  57. package/src/sap/fe/core/controllerextensions/PageReady.ts +2 -4
  58. package/src/sap/fe/core/controllerextensions/Share-dbg.js +3 -2
  59. package/src/sap/fe/core/controllerextensions/Share.js +1 -1
  60. package/src/sap/fe/core/controllerextensions/Share.js.map +1 -1
  61. package/src/sap/fe/core/controllerextensions/Share.ts +2 -1
  62. package/src/sap/fe/core/controllerextensions/SideEffects-dbg.js +19 -14
  63. package/src/sap/fe/core/controllerextensions/SideEffects.js +1 -1
  64. package/src/sap/fe/core/controllerextensions/SideEffects.js.map +1 -1
  65. package/src/sap/fe/core/controllerextensions/SideEffects.ts +22 -14
  66. package/src/sap/fe/core/controllerextensions/ViewState-dbg.js +41 -24
  67. package/src/sap/fe/core/controllerextensions/ViewState.js +1 -1
  68. package/src/sap/fe/core/controllerextensions/ViewState.js.map +1 -1
  69. package/src/sap/fe/core/controllerextensions/ViewState.ts +64 -31
  70. package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync-dbg.js +8 -8
  71. package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js +1 -1
  72. package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js.map +1 -1
  73. package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.ts +7 -9
  74. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon-dbg.js +7 -45
  75. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js +1 -1
  76. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js.map +1 -1
  77. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.ts +5 -48
  78. package/src/sap/fe/core/controllerextensions/collaboration/Manage-dbg.js +4 -4
  79. package/src/sap/fe/core/controllerextensions/collaboration/Manage.js +1 -1
  80. package/src/sap/fe/core/controllerextensions/collaboration/Manage.js.map +1 -1
  81. package/src/sap/fe/core/controllerextensions/collaboration/Manage.ts +2 -2
  82. package/src/sap/fe/core/controllerextensions/collaboration/ManageDialog.fragment.xml +3 -3
  83. package/src/sap/fe/core/controllerextensions/collaboration/ManageDialogTemplating-dbg.js +52 -0
  84. package/src/sap/fe/core/controllerextensions/collaboration/ManageDialogTemplating.js +6 -0
  85. package/src/sap/fe/core/controllerextensions/collaboration/ManageDialogTemplating.js.map +1 -0
  86. package/src/sap/fe/core/controllerextensions/collaboration/ManageDialogTemplating.ts +46 -0
  87. package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog-dbg.js +103 -0
  88. package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.js +6 -0
  89. package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.js.map +1 -0
  90. package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.tsx +124 -0
  91. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper-dbg.js +106 -205
  92. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +1 -1
  93. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js.map +1 -1
  94. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +121 -216
  95. package/src/sap/fe/core/controllerextensions/editFlow/draft-dbg.js +31 -4
  96. package/src/sap/fe/core/controllerextensions/editFlow/draft.js +1 -1
  97. package/src/sap/fe/core/controllerextensions/editFlow/draft.js.map +1 -1
  98. package/src/sap/fe/core/controllerextensions/editFlow/draft.ts +38 -3
  99. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup-dbg.js +13 -10
  100. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js +1 -1
  101. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js.map +1 -1
  102. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.ts +7 -20
  103. package/src/sap/fe/core/controllerextensions/editFlow/operations/_internal-dbg.js +9 -4
  104. package/src/sap/fe/core/controllerextensions/editFlow/operations/_internal.js +1 -1
  105. package/src/sap/fe/core/controllerextensions/editFlow/operations/_internal.js.map +1 -1
  106. package/src/sap/fe/core/controllerextensions/editFlow/operations/_internal.ts +12 -3
  107. package/src/sap/fe/core/controllerextensions/editFlow/operations/facade-dbg.js +10 -6
  108. package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.js +1 -1
  109. package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.js.map +1 -1
  110. package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.ts +20 -11
  111. package/src/sap/fe/core/controllerextensions/editFlow/sticky-dbg.js +1 -8
  112. package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +1 -1
  113. package/src/sap/fe/core/controllerextensions/editFlow/sticky.js.map +1 -1
  114. package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +0 -9
  115. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling-dbg.js +19 -15
  116. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +1 -1
  117. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js.map +1 -1
  118. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.ts +19 -22
  119. package/src/sap/fe/core/controllerextensions/routing/RouterProxy-dbg.js +67 -1
  120. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +1 -1
  121. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js.map +1 -1
  122. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.ts +68 -0
  123. package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +2 -0
  124. package/src/sap/fe/core/controls/CommandExecution-dbg.js +4 -9
  125. package/src/sap/fe/core/controls/CommandExecution.js +1 -1
  126. package/src/sap/fe/core/controls/CommandExecution.js.map +1 -1
  127. package/src/sap/fe/core/controls/CommandExecution.ts +0 -8
  128. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block-dbg.js +335 -0
  129. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block.js +6 -0
  130. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block.js.map +1 -0
  131. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block.tsx +336 -0
  132. package/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +1 -0
  133. package/src/sap/fe/core/controls/filterbar/VisualFilter-dbg.js +3 -28
  134. package/src/sap/fe/core/controls/filterbar/VisualFilter.js +1 -1
  135. package/src/sap/fe/core/controls/filterbar/VisualFilter.js.map +1 -1
  136. package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +8 -29
  137. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils-dbg.js +30 -1
  138. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +1 -1
  139. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js.map +1 -1
  140. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +38 -0
  141. package/src/sap/fe/core/converters/ConverterContext-dbg.js +3 -5
  142. package/src/sap/fe/core/converters/ConverterContext.js +1 -1
  143. package/src/sap/fe/core/converters/ConverterContext.js.map +1 -1
  144. package/src/sap/fe/core/converters/ConverterContext.ts +2 -5
  145. package/src/sap/fe/core/converters/ManifestSettings-dbg.js +1 -1
  146. package/src/sap/fe/core/converters/ManifestSettings.ts +7 -6
  147. package/src/sap/fe/core/converters/ManifestWrapper-dbg.js +5 -3
  148. package/src/sap/fe/core/converters/ManifestWrapper.js +1 -1
  149. package/src/sap/fe/core/converters/ManifestWrapper.js.map +1 -1
  150. package/src/sap/fe/core/converters/ManifestWrapper.ts +7 -1
  151. package/src/sap/fe/core/converters/MetaModelConverter-dbg.js +49 -28
  152. package/src/sap/fe/core/converters/MetaModelConverter.js +1 -1
  153. package/src/sap/fe/core/converters/MetaModelConverter.js.map +1 -1
  154. package/src/sap/fe/core/converters/MetaModelConverter.ts +62 -30
  155. package/src/sap/fe/core/converters/TemplateConverter-dbg.js +2 -3
  156. package/src/sap/fe/core/converters/TemplateConverter.js +1 -1
  157. package/src/sap/fe/core/converters/TemplateConverter.js.map +1 -1
  158. package/src/sap/fe/core/converters/TemplateConverter.ts +1 -6
  159. package/src/sap/fe/core/converters/annotations/DataField-dbg.js +22 -7
  160. package/src/sap/fe/core/converters/annotations/DataField.js +1 -1
  161. package/src/sap/fe/core/converters/annotations/DataField.js.map +1 -1
  162. package/src/sap/fe/core/converters/annotations/DataField.ts +20 -7
  163. package/src/sap/fe/core/converters/common/AnnotationConverter-dbg.js +701 -681
  164. package/src/sap/fe/core/converters/common/AnnotationConverter.js +1 -1
  165. package/src/sap/fe/core/converters/common/AnnotationConverter.js.map +1 -1
  166. package/src/sap/fe/core/converters/controls/Common/Action-dbg.js +6 -12
  167. package/src/sap/fe/core/converters/controls/Common/Action.js +1 -1
  168. package/src/sap/fe/core/converters/controls/Common/Action.js.map +1 -1
  169. package/src/sap/fe/core/converters/controls/Common/Action.ts +9 -14
  170. package/src/sap/fe/core/converters/controls/Common/Chart-dbg.js +32 -20
  171. package/src/sap/fe/core/converters/controls/Common/Chart.js +1 -1
  172. package/src/sap/fe/core/converters/controls/Common/Chart.js.map +1 -1
  173. package/src/sap/fe/core/converters/controls/Common/Chart.ts +30 -18
  174. package/src/sap/fe/core/converters/controls/Common/DataVisualization-dbg.js +4 -5
  175. package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +1 -1
  176. package/src/sap/fe/core/converters/controls/Common/DataVisualization.js.map +1 -1
  177. package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +6 -37
  178. package/src/sap/fe/core/converters/controls/Common/Form-dbg.js +7 -6
  179. package/src/sap/fe/core/converters/controls/Common/Form.js +1 -1
  180. package/src/sap/fe/core/converters/controls/Common/Form.js.map +1 -1
  181. package/src/sap/fe/core/converters/controls/Common/Form.ts +5 -11
  182. package/src/sap/fe/core/converters/controls/Common/KPI-dbg.js +5 -5
  183. package/src/sap/fe/core/converters/controls/Common/KPI.js +1 -1
  184. package/src/sap/fe/core/converters/controls/Common/KPI.js.map +1 -1
  185. package/src/sap/fe/core/converters/controls/Common/KPI.ts +3 -4
  186. package/src/sap/fe/core/converters/controls/Common/Table-dbg.js +135 -85
  187. package/src/sap/fe/core/converters/controls/Common/Table.js +1 -1
  188. package/src/sap/fe/core/converters/controls/Common/Table.js.map +1 -1
  189. package/src/sap/fe/core/converters/controls/Common/Table.ts +189 -119
  190. package/src/sap/fe/core/converters/controls/Common/table/StandardActions-dbg.js +56 -22
  191. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +1 -1
  192. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js.map +1 -1
  193. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +67 -31
  194. package/src/sap/fe/core/converters/controls/ListReport/FilterBar-dbg.js +137 -49
  195. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +1 -1
  196. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js.map +1 -1
  197. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +166 -43
  198. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters-dbg.js +33 -14
  199. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +1 -1
  200. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js.map +1 -1
  201. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +31 -12
  202. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection-dbg.js +27 -18
  203. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +1 -1
  204. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js.map +1 -1
  205. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +36 -23
  206. package/src/sap/fe/core/converters/helpers/Aggregation-dbg.js +37 -15
  207. package/src/sap/fe/core/converters/helpers/Aggregation.js +1 -1
  208. package/src/sap/fe/core/converters/helpers/Aggregation.js.map +1 -1
  209. package/src/sap/fe/core/converters/helpers/Aggregation.ts +36 -20
  210. package/src/sap/fe/core/converters/helpers/BindingHelper-dbg.js +8 -6
  211. package/src/sap/fe/core/converters/helpers/BindingHelper.js +1 -1
  212. package/src/sap/fe/core/converters/helpers/BindingHelper.js.map +1 -1
  213. package/src/sap/fe/core/converters/helpers/BindingHelper.ts +8 -6
  214. package/src/sap/fe/core/converters/helpers/InsightsHelpers-dbg.js +39 -0
  215. package/src/sap/fe/core/converters/helpers/InsightsHelpers.js +6 -0
  216. package/src/sap/fe/core/converters/helpers/InsightsHelpers.js.map +1 -0
  217. package/src/sap/fe/core/converters/helpers/InsightsHelpers.ts +45 -0
  218. package/src/sap/fe/core/converters/helpers/IssueManager-dbg.js +3 -2
  219. package/src/sap/fe/core/converters/helpers/IssueManager.js +1 -1
  220. package/src/sap/fe/core/converters/helpers/IssueManager.js.map +1 -1
  221. package/src/sap/fe/core/converters/helpers/IssueManager.ts +2 -1
  222. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction-dbg.js +17 -16
  223. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +1 -1
  224. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js.map +1 -1
  225. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +11 -11
  226. package/src/sap/fe/core/converters/templates/ListReportConverter-dbg.js +20 -17
  227. package/src/sap/fe/core/converters/templates/ListReportConverter.js +1 -1
  228. package/src/sap/fe/core/converters/templates/ListReportConverter.js.map +1 -1
  229. package/src/sap/fe/core/converters/templates/ListReportConverter.ts +25 -56
  230. package/src/sap/fe/core/converters/templates/ObjectPageConverter-dbg.js +13 -13
  231. package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +1 -1
  232. package/src/sap/fe/core/converters/templates/ObjectPageConverter.js.map +1 -1
  233. package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +18 -13
  234. package/src/sap/fe/core/formatters/CollaborationFormatter-dbg.js +17 -33
  235. package/src/sap/fe/core/formatters/CollaborationFormatter.js +1 -1
  236. package/src/sap/fe/core/formatters/CollaborationFormatter.js.map +1 -1
  237. package/src/sap/fe/core/formatters/CollaborationFormatter.ts +27 -22
  238. package/src/sap/fe/core/formatters/TableFormatter-dbg.js +2 -6
  239. package/src/sap/fe/core/formatters/TableFormatter.js +1 -1
  240. package/src/sap/fe/core/formatters/TableFormatter.js.map +1 -1
  241. package/src/sap/fe/core/formatters/TableFormatter.ts +1 -5
  242. package/src/sap/fe/core/formatters/ValueFormatter-dbg.js +13 -5
  243. package/src/sap/fe/core/formatters/ValueFormatter.js +1 -1
  244. package/src/sap/fe/core/formatters/ValueFormatter.js.map +1 -1
  245. package/src/sap/fe/core/formatters/ValueFormatter.ts +19 -9
  246. package/src/sap/fe/core/fpm/manifest.json +1 -1
  247. package/src/sap/fe/core/helpers/BindingToolkit-dbg.js +2 -1
  248. package/src/sap/fe/core/helpers/BindingToolkit.js +1 -1
  249. package/src/sap/fe/core/helpers/BindingToolkit.js.map +1 -1
  250. package/src/sap/fe/core/helpers/BindingToolkit.ts +1 -1
  251. package/src/sap/fe/core/helpers/DeleteHelper-dbg.js +58 -35
  252. package/src/sap/fe/core/helpers/DeleteHelper.js +1 -1
  253. package/src/sap/fe/core/helpers/DeleteHelper.js.map +1 -1
  254. package/src/sap/fe/core/helpers/DeleteHelper.ts +76 -54
  255. package/src/sap/fe/core/helpers/MassEditHelper-dbg.js +8 -4
  256. package/src/sap/fe/core/helpers/MassEditHelper.js +1 -1
  257. package/src/sap/fe/core/helpers/MassEditHelper.js.map +1 -1
  258. package/src/sap/fe/core/helpers/MassEditHelper.ts +7 -5
  259. package/src/sap/fe/core/helpers/MessageStrip-dbg.js +6 -5
  260. package/src/sap/fe/core/helpers/MessageStrip.js +1 -1
  261. package/src/sap/fe/core/helpers/MessageStrip.js.map +1 -1
  262. package/src/sap/fe/core/helpers/MessageStrip.ts +4 -4
  263. package/src/sap/fe/core/helpers/MetaModelFunction-dbg.js +167 -4
  264. package/src/sap/fe/core/helpers/MetaModelFunction.js +1 -1
  265. package/src/sap/fe/core/helpers/MetaModelFunction.js.map +1 -1
  266. package/src/sap/fe/core/helpers/MetaModelFunction.ts +205 -3
  267. package/src/sap/fe/core/helpers/ModelHelper-dbg.js +37 -73
  268. package/src/sap/fe/core/helpers/ModelHelper.js +1 -1
  269. package/src/sap/fe/core/helpers/ModelHelper.js.map +1 -1
  270. package/src/sap/fe/core/helpers/ModelHelper.ts +41 -68
  271. package/src/sap/fe/core/helpers/RecommendationHelper-dbg.js +71 -0
  272. package/src/sap/fe/core/helpers/RecommendationHelper.js +6 -0
  273. package/src/sap/fe/core/helpers/RecommendationHelper.js.map +1 -0
  274. package/src/sap/fe/core/helpers/RecommendationHelper.ts +94 -0
  275. package/src/sap/fe/core/helpers/ResourceModelHelper-dbg.js +19 -3
  276. package/src/sap/fe/core/helpers/ResourceModelHelper.js +1 -1
  277. package/src/sap/fe/core/helpers/ResourceModelHelper.js.map +1 -1
  278. package/src/sap/fe/core/helpers/ResourceModelHelper.ts +21 -0
  279. package/src/sap/fe/core/helpers/SemanticDateOperators-dbg.js +40 -6
  280. package/src/sap/fe/core/helpers/SemanticDateOperators.js +1 -1
  281. package/src/sap/fe/core/helpers/SemanticDateOperators.js.map +1 -1
  282. package/src/sap/fe/core/helpers/SemanticDateOperators.ts +39 -5
  283. package/src/sap/fe/core/helpers/SizeHelper-dbg.js +53 -0
  284. package/src/sap/fe/core/helpers/SizeHelper.js +6 -0
  285. package/src/sap/fe/core/helpers/SizeHelper.js.map +1 -0
  286. package/src/sap/fe/core/helpers/SizeHelper.ts +51 -0
  287. package/src/sap/fe/core/helpers/StableIdHelper-dbg.js +52 -26
  288. package/src/sap/fe/core/helpers/StableIdHelper.js +1 -1
  289. package/src/sap/fe/core/helpers/StableIdHelper.js.map +1 -1
  290. package/src/sap/fe/core/helpers/StableIdHelper.ts +49 -25
  291. package/src/sap/fe/core/helpers/TypeGuards-dbg.js +147 -1
  292. package/src/sap/fe/core/helpers/TypeGuards.js +1 -1
  293. package/src/sap/fe/core/helpers/TypeGuards.js.map +1 -1
  294. package/src/sap/fe/core/helpers/TypeGuards.ts +151 -1
  295. package/src/sap/fe/core/jsx-runtime/jsx-control-dbg.js +25 -2
  296. package/src/sap/fe/core/jsx-runtime/jsx-control.js +1 -1
  297. package/src/sap/fe/core/jsx-runtime/jsx-control.js.map +1 -1
  298. package/src/sap/fe/core/jsx-runtime/jsx-control.ts +24 -0
  299. package/src/sap/fe/core/jsx-runtime/jsx-dbg.js +1 -1
  300. package/src/sap/fe/core/jsx-runtime/jsx.ts +1 -0
  301. package/src/sap/fe/core/library-dbg.js +1 -1
  302. package/src/sap/fe/core/library-preload.js +123 -95
  303. package/src/sap/fe/core/library-preload.js.map +1 -1
  304. package/src/sap/fe/core/library.js +1 -1
  305. package/src/sap/fe/core/manifest.json +1 -1
  306. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration-dbg.js +67 -15
  307. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +1 -1
  308. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js.map +1 -1
  309. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +66 -14
  310. package/src/sap/fe/core/messagebundle.properties +6 -6
  311. package/src/sap/fe/core/messagebundle_ar.properties +5 -6
  312. package/src/sap/fe/core/messagebundle_bg.properties +11 -12
  313. package/src/sap/fe/core/messagebundle_ca.properties +3 -4
  314. package/src/sap/fe/core/messagebundle_cs.properties +3 -4
  315. package/src/sap/fe/core/messagebundle_cy.properties +3 -4
  316. package/src/sap/fe/core/messagebundle_da.properties +3 -4
  317. package/src/sap/fe/core/messagebundle_de.properties +11 -12
  318. package/src/sap/fe/core/messagebundle_el.properties +5 -6
  319. package/src/sap/fe/core/messagebundle_en.properties +3 -4
  320. package/src/sap/fe/core/messagebundle_en_GB.properties +4 -5
  321. package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +3 -4
  322. package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +3 -4
  323. package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +3 -2
  324. package/src/sap/fe/core/messagebundle_es.properties +3 -4
  325. package/src/sap/fe/core/messagebundle_es_MX.properties +3 -4
  326. package/src/sap/fe/core/messagebundle_et.properties +3 -4
  327. package/src/sap/fe/core/messagebundle_fi.properties +3 -4
  328. package/src/sap/fe/core/messagebundle_fr.properties +3 -4
  329. package/src/sap/fe/core/messagebundle_fr_CA.properties +11 -12
  330. package/src/sap/fe/core/messagebundle_hi.properties +11 -12
  331. package/src/sap/fe/core/messagebundle_hr.properties +3 -4
  332. package/src/sap/fe/core/messagebundle_hu.properties +3 -4
  333. package/src/sap/fe/core/messagebundle_id.properties +11 -12
  334. package/src/sap/fe/core/messagebundle_it.properties +3 -4
  335. package/src/sap/fe/core/messagebundle_iw.properties +3 -4
  336. package/src/sap/fe/core/messagebundle_ja.properties +4 -5
  337. package/src/sap/fe/core/messagebundle_kk.properties +3 -4
  338. package/src/sap/fe/core/messagebundle_ko.properties +11 -12
  339. package/src/sap/fe/core/messagebundle_lt.properties +3 -4
  340. package/src/sap/fe/core/messagebundle_lv.properties +11 -12
  341. package/src/sap/fe/core/messagebundle_ms.properties +3 -4
  342. package/src/sap/fe/core/messagebundle_nl.properties +3 -4
  343. package/src/sap/fe/core/messagebundle_no.properties +3 -4
  344. package/src/sap/fe/core/messagebundle_pl.properties +11 -12
  345. package/src/sap/fe/core/messagebundle_pt.properties +3 -4
  346. package/src/sap/fe/core/messagebundle_pt_PT.properties +3 -4
  347. package/src/sap/fe/core/messagebundle_ro.properties +14 -15
  348. package/src/sap/fe/core/messagebundle_ru.properties +11 -12
  349. package/src/sap/fe/core/messagebundle_sh.properties +3 -4
  350. package/src/sap/fe/core/messagebundle_sk.properties +3 -4
  351. package/src/sap/fe/core/messagebundle_sl.properties +3 -4
  352. package/src/sap/fe/core/messagebundle_sv.properties +11 -12
  353. package/src/sap/fe/core/messagebundle_th.properties +3 -4
  354. package/src/sap/fe/core/messagebundle_tr.properties +3 -4
  355. package/src/sap/fe/core/messagebundle_uk.properties +3 -4
  356. package/src/sap/fe/core/messagebundle_vi.properties +3 -4
  357. package/src/sap/fe/core/messagebundle_zh_CN.properties +11 -12
  358. package/src/sap/fe/core/messagebundle_zh_TW.properties +11 -12
  359. package/src/sap/fe/core/rootView/RootViewBaseController-dbg.js +22 -8
  360. package/src/sap/fe/core/rootView/RootViewBaseController.js +1 -1
  361. package/src/sap/fe/core/rootView/RootViewBaseController.js.map +1 -1
  362. package/src/sap/fe/core/rootView/RootViewBaseController.ts +17 -7
  363. package/src/sap/fe/core/services/EnvironmentServiceFactory-dbg.js +36 -3
  364. package/src/sap/fe/core/services/EnvironmentServiceFactory.js +1 -1
  365. package/src/sap/fe/core/services/EnvironmentServiceFactory.js.map +1 -1
  366. package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +37 -1
  367. package/src/sap/fe/core/services/NavigationServiceFactory-dbg.js +13 -1
  368. package/src/sap/fe/core/services/NavigationServiceFactory.js +1 -1
  369. package/src/sap/fe/core/services/NavigationServiceFactory.js.map +1 -1
  370. package/src/sap/fe/core/services/NavigationServiceFactory.ts +13 -0
  371. package/src/sap/fe/core/services/RoutingServiceFactory-dbg.js +7 -1
  372. package/src/sap/fe/core/services/RoutingServiceFactory.js +1 -1
  373. package/src/sap/fe/core/services/RoutingServiceFactory.js.map +1 -1
  374. package/src/sap/fe/core/services/RoutingServiceFactory.ts +20 -2
  375. package/src/sap/fe/core/services/ShellServicesFactory-dbg.js +7 -1
  376. package/src/sap/fe/core/services/ShellServicesFactory.js +1 -1
  377. package/src/sap/fe/core/services/ShellServicesFactory.js.map +1 -1
  378. package/src/sap/fe/core/services/ShellServicesFactory.ts +10 -0
  379. package/src/sap/fe/core/services/SideEffectsServiceFactory-dbg.js +10 -7
  380. package/src/sap/fe/core/services/SideEffectsServiceFactory.js +1 -1
  381. package/src/sap/fe/core/services/SideEffectsServiceFactory.js.map +1 -1
  382. package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +12 -13
  383. package/src/sap/fe/core/services/TemplatedViewServiceFactory-dbg.js +9 -3
  384. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +1 -1
  385. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js.map +1 -1
  386. package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +11 -15
  387. package/src/sap/fe/core/templating/CommonFormatters-dbg.js +4 -3
  388. package/src/sap/fe/core/templating/CommonFormatters.js +1 -1
  389. package/src/sap/fe/core/templating/CommonFormatters.js.map +1 -1
  390. package/src/sap/fe/core/templating/CommonFormatters.ts +2 -2
  391. package/src/sap/fe/core/templating/CriticalityFormatters-dbg.js +1 -1
  392. package/src/sap/fe/core/templating/CriticalityFormatters.ts +2 -2
  393. package/src/sap/fe/core/templating/DataModelPathHelper-dbg.js +19 -18
  394. package/src/sap/fe/core/templating/DataModelPathHelper.js +1 -1
  395. package/src/sap/fe/core/templating/DataModelPathHelper.js.map +1 -1
  396. package/src/sap/fe/core/templating/DataModelPathHelper.ts +24 -18
  397. package/src/sap/fe/core/templating/DisplayModeFormatter-dbg.js +5 -5
  398. package/src/sap/fe/core/templating/DisplayModeFormatter.js +1 -1
  399. package/src/sap/fe/core/templating/DisplayModeFormatter.js.map +1 -1
  400. package/src/sap/fe/core/templating/DisplayModeFormatter.ts +2 -2
  401. package/src/sap/fe/core/templating/EntitySetHelper-dbg.js +19 -28
  402. package/src/sap/fe/core/templating/EntitySetHelper.js +1 -1
  403. package/src/sap/fe/core/templating/EntitySetHelper.js.map +1 -1
  404. package/src/sap/fe/core/templating/EntitySetHelper.ts +14 -24
  405. package/src/sap/fe/core/templating/EntityTypeHelper-dbg.js +48 -0
  406. package/src/sap/fe/core/templating/EntityTypeHelper.js +6 -0
  407. package/src/sap/fe/core/templating/EntityTypeHelper.js.map +1 -0
  408. package/src/sap/fe/core/templating/EntityTypeHelper.ts +37 -0
  409. package/src/sap/fe/core/templating/FilterHelper-dbg.js +12 -1
  410. package/src/sap/fe/core/templating/FilterHelper.js +1 -1
  411. package/src/sap/fe/core/templating/FilterHelper.js.map +1 -1
  412. package/src/sap/fe/core/templating/FilterHelper.ts +12 -0
  413. package/src/sap/fe/core/templating/FilterTemplating-dbg.js +7 -8
  414. package/src/sap/fe/core/templating/FilterTemplating.js +1 -1
  415. package/src/sap/fe/core/templating/FilterTemplating.js.map +1 -1
  416. package/src/sap/fe/core/templating/FilterTemplating.ts +5 -8
  417. package/src/sap/fe/core/templating/PropertyFormatters-dbg.js +1 -6
  418. package/src/sap/fe/core/templating/PropertyFormatters.js +1 -1
  419. package/src/sap/fe/core/templating/PropertyFormatters.js.map +1 -1
  420. package/src/sap/fe/core/templating/PropertyFormatters.ts +0 -5
  421. package/src/sap/fe/core/templating/PropertyHelper-dbg.js +13 -46
  422. package/src/sap/fe/core/templating/PropertyHelper.js +1 -1
  423. package/src/sap/fe/core/templating/PropertyHelper.js.map +1 -1
  424. package/src/sap/fe/core/templating/PropertyHelper.ts +14 -43
  425. package/src/sap/fe/core/templating/UIFormatters-dbg.js +32 -26
  426. package/src/sap/fe/core/templating/UIFormatters.js +1 -1
  427. package/src/sap/fe/core/templating/UIFormatters.js.map +1 -1
  428. package/src/sap/fe/core/templating/UIFormatters.ts +45 -34
  429. package/src/sap/fe/core/controls/ActionPartial.fragment.xml +0 -91
  430. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossDraft.fragment.xml +0 -59
  431. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler-dbg.js +0 -171
  432. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +0 -6
  433. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js.map +0 -1
  434. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +0 -184
@@ -1 +1 @@
1
- {"version":3,"file":"VisualFilter.js","names":["sap","ui","define","CommonUtils","VisualFilterUtils","ClassSupport","CommonHelper","FilterUtils","VBox","Core","FilterHelper","_dec","_dec2","_dec3","_dec4","_dec5","_class","_class2","_descriptor","_descriptor2","_descriptor3","_descriptor4","getFiltersConditionsFromSelectionVariant","property","implementInterface","event","defineUI5Class","_initializerDefineProperty","target","descriptor","context","Object","defineProperty","enumerable","configurable","writable","value","initializer","call","_assertThisInitialized","self","ReferenceError","_inheritsLoose","subClass","superClass","prototype","create","constructor","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_applyDecoratedDescriptor","decorators","desc","keys","forEach","key","slice","reverse","reduce","decorator","undefined","_initializerWarningHelper","Error","VisualFilter","type","_VBox","_this","_len","arguments","length","args","Array","_key","this","_proto","onAfterRendering","_this$getParent","sLabel","oInteractiveChart","getItems","sInternalContextPath","data","oInteractiveChartListBinding","getBinding","oInternalModelContext","getBindingContext","oResourceBundle","getLibraryResourceBundle","bShowOverLayInitially","oSelectionVariantAnnotation","parseCustomData","SelectOptions","aRequiredProperties","oMetaModel","getModel","getMetaModel","sEntitySetPath","getPath","oFilterBar","getParent","getMetadata","getElementName","_oFilterBar$getParent","oFilterBarConditions","aPropertyInfoSet","sFilterEntityName","getConditions","getPropertyInfoSet","split","aParameters","customData","filterConditions","getCustomConditions","oSelectionVariantConditions","convertFilterCondions","mConditions","sKey","setProperty","showError","errorMessageTitle","getText","errorMessage","getObject","aSelectOptions","aNotMatchedConditions","oSelectOption","push","PropertyName","$PropertyPath","Parameters","oParameter","sPath","indexOf","_oChartBinding","detachDataReceivedHandler","attachDataRecivedHandler","bShowOverlay","getProperty","sChartEntityName","sBindingPath","getBindingPathForParameters","isSuspended","resume","attachEvent","onInternalDataReceived","detachEvent","setShowValueHelp","bShowValueHelp","oVisualFilterControl","getContent","some","oInnerControl","isA","setVisible","setValueHelpIconSrc","sIconSrc","setIcon","oEvent","sId","getId","oView","getTargetView","vUOM","updateChartScaleFactorTitle","getParameter","s18nMessageTitle","s18nMessage","applyErrorMessageAndTitle","oData","getSource","getCurrentContexts","setNoDataMessage","setMultiUOMMessage","$Path","oContexts","getContexts","oContextData","applyUOMToTitle"],"sources":["VisualFilter-dbg.js"],"mappings":"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"}
1
+ {"version":3,"file":"VisualFilter.js","names":["sap","ui","define","CommonUtils","VisualFilterUtils","ClassSupport","CommonHelper","FilterUtils","VBox","Core","FilterHelper","_dec","_dec2","_dec3","_dec4","_dec5","_class","_class2","_descriptor","_descriptor2","_descriptor3","_descriptor4","getFiltersConditionsFromSelectionVariant","property","implementInterface","event","defineUI5Class","_initializerDefineProperty","target","descriptor","context","Object","defineProperty","enumerable","configurable","writable","value","initializer","call","_assertThisInitialized","self","ReferenceError","_inheritsLoose","subClass","superClass","prototype","create","constructor","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_applyDecoratedDescriptor","decorators","desc","keys","forEach","key","slice","reverse","reduce","decorator","undefined","_initializerWarningHelper","Error","VisualFilter","type","_VBox","_this","_len","arguments","length","args","Array","_key","this","_proto","onAfterRendering","_this$getParent","sLabel","oInteractiveChart","getItems","sInternalContextPath","data","oInteractiveChartListBinding","getBinding","oInternalModelContext","getBindingContext","oResourceBundle","getLibraryResourceBundle","bShowOverLayInitially","oSelectionVariantAnnotation","parseCustomData","SelectOptions","aRequiredProperties","oMetaModel","getModel","getMetaModel","sEntitySetPath","getPath","oFilterBar","getParent","getMetadata","getElementName","_oFilterBar$getParent","oFilterBarConditions","aPropertyInfoSet","sFilterEntityName","getConditions","getPropertyInfoSet","split","aParameters","customData","filterConditions","getCustomConditions","oSelectionVariantConditions","convertFilterCondions","mConditions","sKey","setProperty","showError","errorMessageTitle","getText","errorMessage","getObject","aSelectOptions","aNotMatchedConditions","oSelectOption","push","PropertyName","$PropertyPath","Parameters","oParameter","sPath","indexOf","errorInfo","getErrorInfoForNoInitialOverlay","_oChartBinding","detachDataReceivedHandler","attachDataRecivedHandler","bShowOverlay","getProperty","sChartEntityName","sBindingPath","getBindingPathForParameters","isSuspended","resume","attachEvent","onInternalDataReceived","detachEvent","setShowValueHelp","bShowValueHelp","oVisualFilterControl","getContent","some","oInnerControl","isA","setVisible","setValueHelpIconSrc","sIconSrc","setIcon","oEvent","sId","getId","oView","getTargetView","vUOM","updateChartScaleFactorTitle","getParameter","s18nMessageTitle","s18nMessage","applyErrorMessageAndTitle","oData","getSource","getCurrentContexts","setNoDataMessage","setMultiUOMMessage","$Path","oContexts","getContexts","oContextData","applyUOMToTitle"],"sources":["VisualFilter-dbg.js"],"mappings":"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"}
@@ -128,35 +128,14 @@ class VisualFilter extends VBox implements IFormContent {
128
128
  aNotMatchedConditions.push(sPath);
129
129
  }
130
130
  });
131
- if (aNotMatchedConditions.length > 1) {
132
- oInternalModelContext.setProperty(sInternalContextPath, {
133
- showError: true,
134
- errorMessageTitle: oResourceBundle.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE"),
135
- errorMessage: oResourceBundle.getText("M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_MULTIPLEVF")
136
- });
137
- } else {
138
- sLabel =
139
- oMetaModel.getObject(`${sEntitySetPath}/${aNotMatchedConditions[0]}@com.sap.vocabularies.Common.v1.Label`) ||
140
- aNotMatchedConditions[0];
141
- oInternalModelContext.setProperty(sInternalContextPath, {
142
- showError: true,
143
- errorMessageTitle: oResourceBundle.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE"),
144
- errorMessage: oResourceBundle.getText("M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_SINGLEVF", sLabel)
145
- });
146
- }
147
- if (aNotMatchedConditions.length > 1) {
148
- oInternalModelContext.setProperty(sInternalContextPath, {
149
- showError: true,
150
- errorMessageTitle: oResourceBundle.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE"),
151
- errorMessage: oResourceBundle.getText("M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_MULTIPLEVF")
152
- });
153
- } else {
154
- oInternalModelContext.setProperty(sInternalContextPath, {
155
- showError: true,
156
- errorMessageTitle: oResourceBundle.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE"),
157
- errorMessage: oResourceBundle.getText("M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_SINGLEVF", aNotMatchedConditions[0])
158
- });
159
- }
131
+
132
+ const errorInfo = VisualFilterUtils.getErrorInfoForNoInitialOverlay(
133
+ aNotMatchedConditions,
134
+ oResourceBundle,
135
+ sEntitySetPath,
136
+ oMetaModel
137
+ );
138
+ oInternalModelContext.setProperty(sInternalContextPath, errorInfo);
160
139
  }
161
140
  }
162
141
 
@@ -304,8 +304,37 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/templating/FilterHelper", "sap/ui/co
304
304
  }, {
305
305
  V4: true
306
306
  });
307
+ },
308
+ /**
309
+ * Get error info when required inParameters or required filters are not available.
310
+ *
311
+ * @function
312
+ * @name getErrorInfoForNoInitialOverlay
313
+ * @param notMatchedConditions Property names(inParameters or required filters) for which values are not available .
314
+ * @param resourceBundle ResourceBundle for translated texts.
315
+ * @param entitySetPath EntitySet Path for property label annotation.
316
+ * @param metaModel Default metamodel.
317
+ * @returns Error info containing texts for title and message.
318
+ */
319
+ getErrorInfoForNoInitialOverlay: function (notMatchedConditions, resourceBundle, entitySetPath, metaModel) {
320
+ let ret;
321
+ if (notMatchedConditions.length > 1) {
322
+ ret = {
323
+ showError: true,
324
+ errorMessageTitle: resourceBundle.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE"),
325
+ errorMessage: resourceBundle.getText("M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_MULTIPLEVF")
326
+ };
327
+ } else if (notMatchedConditions.length === 1) {
328
+ const label = metaModel.getObject(`${entitySetPath}/${notMatchedConditions[0]}@com.sap.vocabularies.Common.v1.Label`) || notMatchedConditions[0];
329
+ ret = {
330
+ showError: true,
331
+ errorMessageTitle: resourceBundle.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE"),
332
+ errorMessage: resourceBundle.getText("M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_SINGLEVF", [label])
333
+ };
334
+ }
335
+ return ret;
307
336
  }
308
337
  };
309
338
  return VisualFilterUtils;
310
339
  }, false);
311
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWaXN1YWxGaWx0ZXJVdGlscyIsImFwcGx5TWVkaWFuU2NhbGVUb0NoYXJ0RGF0YSIsIm9JbnRlcmFjdGl2ZUNoYXJ0Iiwib1ZpZXciLCJzVkZJZCIsInNJbmZvUGF0aCIsIm9EYXRhIiwic01lYXN1cmUiLCJkYXRhIiwib0ludGVybmFsTW9kZWxDb250ZXh0IiwiZ2V0QmluZGluZ0NvbnRleHQiLCJhQWdncmVnYXRpb24iLCJnZXRQb2ludHMiLCJnZXRCYXJzIiwiZ2V0U2VnbWVudHMiLCJpIiwibGVuZ3RoIiwicHVzaCIsImdldE9iamVjdCIsInNjYWxlRmFjdG9yIiwiX2dldE1lZGlhblNjYWxlRmFjdG9yIiwiaVNob3J0UmVmTnVtYmVyIiwic2NhbGUiLCJzZXRQcm9wZXJ0eSIsIm9TY2FsZVRpdGxlIiwiYnlJZCIsIm9NZWFzdXJlRGltZW5zaW9uVGl0bGUiLCJzVGV4dCIsImdldFRleHQiLCJzZXRUZXh0Iiwic2V0VG9vbHRpcCIsInNNZWFzdXJlRmllbGQiLCJzb3J0IiwiYSIsImIiLCJOdW1iZXIiLCJpTWlkIiwiaU1lZGlhbiIsInBhcnNlRmxvYXQiLCJNYXRoIiwiZmxvb3IiLCJ2YWwiLCJwb3ciLCJyb3VuZCIsImFicyIsImZpeGVkSW50ZWdlciIsIk51bWJlckZvcm1hdCIsImdldEludGVnZXJJbnN0YW5jZSIsInN0eWxlIiwic2hvd1NjYWxlIiwic2hvcnRSZWZOdW1iZXIiLCJhRGF0YSIsInNTY2FsZWRWYWx1ZSIsImZvcm1hdCIsImFTY2FsZWRWYWx1ZVBhcnRzIiwic3BsaXQiLCJwYXJzZUludCIsImluZGV4T2YiLCJ1bmRlZmluZWQiLCJnZXRTY2FsZSIsImdldEZvcm1hdHRlZE51bWJlciIsInZhbHVlIiwibnVtYmVyT2ZGcmFjdGlvbmFsRGlnaXRzIiwiY3VycmVuY3kiLCJyZXBsYWNlIiwiY3VycmVuY3lGb3JtYXQiLCJnZXRDdXJyZW5jeUluc3RhbmNlIiwic2hvd01lYXN1cmUiLCJnZXRGbG9hdEluc3RhbmNlIiwic2hvcnREZWNpbWFscyIsImRlY2ltYWxzIiwiYXBwbHlVT01Ub1RpdGxlIiwib0NvbnRleHREYXRhIiwidlVPTSIsInNVT00iLCJzQ3VycmVuY3kiLCIkUGF0aCIsInNVT01WYWx1ZSIsInVwZGF0ZUNoYXJ0U2NhbGVGYWN0b3JUaXRsZSIsImFwcGx5RXJyb3JNZXNzYWdlQW5kVGl0bGUiLCJzMThuTWVzc2FnZVRpdGxlIiwiczE4bk1lc3NhZ2UiLCJlcnJvck1lc3NhZ2VUaXRsZSIsImVycm9yTWVzc2FnZSIsInNob3dFcnJvciIsImNoZWNrTXVsaXRVbml0Iiwib0NvbnRleHRzIiwic1VuaXRmaWVsZCIsImFDb250ZXh0RGF0YSIsInJlZHVjZSIsImtleSIsIk5hTiIsInNldE11bHRpVU9NTWVzc2FnZSIsIm9SZXNvdXJjZUJ1bmRsZSIsInNJc0N1cnJlbmN5Iiwic0lzVW5pdCIsIkxvZyIsIndhcm5pbmciLCJzZXROb0RhdGFNZXNzYWdlIiwiY29udmVydEZpbHRlckNvbmRpb25zIiwib0ZpbHRlckNvbmRpdGlvbnMiLCJvQ29udmVydGVkQ29uZGl0aW9ucyIsIk9iamVjdCIsImtleXMiLCJmb3JFYWNoIiwic0tleSIsImFDb252ZXJ0ZWRDb25kaXRpb25zIiwiYUNvbmRpdGlvbnMiLCJ2YWx1ZXMiLCJ2YWx1ZTIiLCJ2YWx1ZTEiLCJDb25kaXRpb24iLCJjcmVhdGVDb25kaXRpb24iLCJvcGVyYXRvciIsImdldEN1c3RvbUNvbmRpdGlvbnMiLCJSYW5nZSIsIm9WYWxpZFByb3BlcnR5Iiwic1Byb3BlcnR5TmFtZSIsIiRUeXBlIiwiX3BhcnNlRGF0ZVRpbWUiLCJnZXRUeXBlQ29tcGxpYW50VmFsdWUiLCJfZm9ybWF0RGF0ZVRpbWUiLCJMb3ciLCJIaWdoIiwiT3B0aW9uIiwiZ2V0UmFuZ2VQcm9wZXJ0eSIsIiRFbnVtTWVtYmVyIiwicGF0aCIsInNWYWx1ZSIsIl9nZXREYXRlVGltZVR5cGVJbnN0YW5jZSIsInBhcnNlVmFsdWUiLCJmb3JtYXRWYWx1ZSIsIkRhdGVUaW1lT2Zmc2V0IiwicGF0dGVybiIsImNhbGVuZGFyVHlwZSIsIlY0Il0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJWaXN1YWxGaWx0ZXJVdGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSBSZXNvdXJjZUJ1bmRsZSBmcm9tIFwic2FwL2Jhc2UvaTE4bi9SZXNvdXJjZUJ1bmRsZVwiO1xuaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgdHlwZSB7IEludGVybmFsTW9kZWxDb250ZXh0IH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvTW9kZWxIZWxwZXJcIjtcbmltcG9ydCB7IGdldFJhbmdlUHJvcGVydHksIGdldFR5cGVDb21wbGlhbnRWYWx1ZSB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL0ZpbHRlckhlbHBlclwiO1xuaW1wb3J0IHR5cGUgVGl0bGUgZnJvbSBcInNhcC9tL1RpdGxlXCI7XG5pbXBvcnQgTnVtYmVyRm9ybWF0IGZyb20gXCJzYXAvdWkvY29yZS9mb3JtYXQvTnVtYmVyRm9ybWF0XCI7XG5pbXBvcnQgdHlwZSBWaWV3IGZyb20gXCJzYXAvdWkvY29yZS9tdmMvVmlld1wiO1xuaW1wb3J0IENvbmRpdGlvbiBmcm9tIFwic2FwL3VpL21kYy9jb25kaXRpb24vQ29uZGl0aW9uXCI7XG5pbXBvcnQgdHlwZSBDb25kaXRpb25WYWxpZGF0ZWQgZnJvbSBcInNhcC91aS9tZGMvZW51bS9Db25kaXRpb25WYWxpZGF0ZWRcIjtcbmltcG9ydCB0eXBlIENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9Db250ZXh0XCI7XG5pbXBvcnQgRGF0ZVRpbWVPZmZzZXQgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS90eXBlL0RhdGVUaW1lT2Zmc2V0XCI7XG5cbmNvbnN0IFZpc3VhbEZpbHRlclV0aWxzID0ge1xuXHQvKipcblx0ICogQXBwbGllcyB0aGUgbWVkaWFuIHNjYWxlIHRvIHRoZSBjaGFydCBkYXRhLlxuXHQgKlxuXHQgKiBAcGFyYW0gb0ludGVyYWN0aXZlQ2hhcnQgSW50ZXJhY3RpdmVDaGFydCBpbiB0aGUgVmlzdWFsRmlsdGVyIGNvbnRyb2xcblx0ICogQHBhcmFtIG9WaWV3IEluc3RhbmNlIG9mIHRoZSB2aWV3XG5cdCAqIEBwYXJhbSBzVkZJZCBWaXN1YWxGaWx0ZXIgY29udHJvbCBJRFxuXHQgKiBAcGFyYW0gc0luZm9QYXRoIEludGVybmFsIG1vZGVsIGNvbnRleHQgcGF0aCB0byBzdG9yZSBpbmZvLlxuXHQgKi9cblx0YXBwbHlNZWRpYW5TY2FsZVRvQ2hhcnREYXRhOiBmdW5jdGlvbiAob0ludGVyYWN0aXZlQ2hhcnQ6IGFueSwgb1ZpZXc6IFZpZXcsIHNWRklkOiBzdHJpbmcsIHNJbmZvUGF0aDogc3RyaW5nKSB7XG5cdFx0Y29uc3Qgb0RhdGEgPSBbXTtcblx0XHRjb25zdCBzTWVhc3VyZSA9IG9JbnRlcmFjdGl2ZUNoYXJ0LmRhdGEoXCJtZWFzdXJlXCIpO1xuXHRcdGNvbnN0IG9JbnRlcm5hbE1vZGVsQ29udGV4dCA9IG9WaWV3LmdldEJpbmRpbmdDb250ZXh0KFwiaW50ZXJuYWxcIikgYXMgSW50ZXJuYWxNb2RlbENvbnRleHQ7XG5cdFx0Y29uc3QgYUFnZ3JlZ2F0aW9uID1cblx0XHRcdChvSW50ZXJhY3RpdmVDaGFydC5nZXRQb2ludHMgJiYgb0ludGVyYWN0aXZlQ2hhcnQuZ2V0UG9pbnRzKCkpIHx8XG5cdFx0XHQob0ludGVyYWN0aXZlQ2hhcnQuZ2V0QmFycyAmJiBvSW50ZXJhY3RpdmVDaGFydC5nZXRCYXJzKCkpIHx8XG5cdFx0XHQob0ludGVyYWN0aXZlQ2hhcnQuZ2V0U2VnbWVudHMgJiYgb0ludGVyYWN0aXZlQ2hhcnQuZ2V0U2VnbWVudHMoKSk7XG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBhQWdncmVnYXRpb24ubGVuZ3RoOyBpKyspIHtcblx0XHRcdG9EYXRhLnB1c2goYUFnZ3JlZ2F0aW9uW2ldLmdldEJpbmRpbmdDb250ZXh0KCkuZ2V0T2JqZWN0KCkpO1xuXHRcdH1cblx0XHRjb25zdCBzY2FsZUZhY3RvciA9IHRoaXMuX2dldE1lZGlhblNjYWxlRmFjdG9yKG9EYXRhLCBzTWVhc3VyZSk7XG5cdFx0aWYgKHNjYWxlRmFjdG9yICYmIHNjYWxlRmFjdG9yLmlTaG9ydFJlZk51bWJlciAmJiBzY2FsZUZhY3Rvci5zY2FsZSkge1xuXHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KGBzY2FsZWZhY3Rvci8ke3NJbmZvUGF0aH1gLCBzY2FsZUZhY3Rvci5zY2FsZSk7XG5cdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoYHNjYWxlZmFjdG9yTnVtYmVyLyR7c0luZm9QYXRofWAsIHNjYWxlRmFjdG9yLmlTaG9ydFJlZk51bWJlcik7XG5cdFx0fSBlbHNlIHtcblx0XHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dC5zZXRQcm9wZXJ0eShgc2NhbGVmYWN0b3IvJHtzSW5mb1BhdGh9YCwgXCJcIik7XG5cdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoYHNjYWxlZmFjdG9yTnVtYmVyLyR7c0luZm9QYXRofWAsIFwiXCIpO1xuXHRcdFx0Y29uc3Qgb1NjYWxlVGl0bGUgPSBvVmlldy5ieUlkKGAke3NWRklkfTo6U2NhbGVVb01UaXRsZWApIGFzIFRpdGxlO1xuXHRcdFx0Y29uc3Qgb01lYXN1cmVEaW1lbnNpb25UaXRsZSA9IG9WaWV3LmJ5SWQoYCR7c1ZGSWR9OjpNZWFzdXJlRGltZW5zaW9uVGl0bGVgKSBhcyBUaXRsZTtcblx0XHRcdGNvbnN0IHNUZXh0ID0gb1NjYWxlVGl0bGUuZ2V0VGV4dCgpO1xuXHRcdFx0aWYgKHNUZXh0ID09PSBcIiB8IFwiKSB7XG5cdFx0XHRcdG9TY2FsZVRpdGxlLnNldFRleHQoXCJcIik7XG5cdFx0XHRcdG9NZWFzdXJlRGltZW5zaW9uVGl0bGUuc2V0VG9vbHRpcChvTWVhc3VyZURpbWVuc2lvblRpdGxlLmdldFRleHQoKSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9LFxuXG5cdC8qKlxuXHQgKiBSZXR1cm5zIHRoZSBtZWRpYW4gc2NhbGUgZmFjdG9yLlxuXHQgKlxuXHQgKiBAcGFyYW0gb0RhdGEgVmlzdWFsRmlsdGVyIGRhdGFcblx0ICogQHBhcmFtIHNNZWFzdXJlRmllbGQgUGF0aCBvZiB0aGUgbWVhc3VyZVxuXHQgKiBAcmV0dXJucyBPYmplY3QgY29udGFpbmluZyBzY2FsZSBhbmQgaVNob3J0UmVmTnVtYmVyXG5cdCAqL1xuXHRfZ2V0TWVkaWFuU2NhbGVGYWN0b3I6IGZ1bmN0aW9uIChvRGF0YTogYW55W10sIHNNZWFzdXJlRmllbGQ6IHN0cmluZykge1xuXHRcdGxldCBpO1xuXHRcdGxldCBzY2FsZUZhY3Rvcjtcblx0XHRvRGF0YS5zb3J0KGZ1bmN0aW9uIChhOiBhbnksIGI6IGFueSkge1xuXHRcdFx0aWYgKE51bWJlcihhW3NNZWFzdXJlRmllbGRdKSA8IE51bWJlcihiW3NNZWFzdXJlRmllbGRdKSkge1xuXHRcdFx0XHRyZXR1cm4gLTE7XG5cdFx0XHR9XG5cdFx0XHRpZiAoTnVtYmVyKGFbc01lYXN1cmVGaWVsZF0pID4gTnVtYmVyKGJbc01lYXN1cmVGaWVsZF0pKSB7XG5cdFx0XHRcdHJldHVybiAxO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIDA7XG5cdFx0fSk7XG5cdFx0aWYgKG9EYXRhLmxlbmd0aCA+IDApIHtcblx0XHRcdC8vIGdldCBtZWRpYW4gaW5kZXhcblx0XHRcdGNvbnN0IGlNaWQgPSBvRGF0YS5sZW5ndGggLyAyLCAvLyBnZXQgbWlkIG9mIGFycmF5XG5cdFx0XHRcdC8vIGlmIGlNaWQgaXMgd2hvbGUgbnVtYmVyLCBhcnJheSBsZW5ndGggaXMgZXZlbiwgY2FsY3VsYXRlIG1lZGlhblxuXHRcdFx0XHQvLyBpZiBpTWlkIGlzIG5vdCB3aG9sZSBudW1iZXIsIGFycmF5IGxlbmd0aCBpcyBvZGQsIHRha2UgbWVkaWFuIGFzIGlNaWQgLSAxXG5cdFx0XHRcdGlNZWRpYW4gPVxuXHRcdFx0XHRcdGlNaWQgJSAxID09PSAwXG5cdFx0XHRcdFx0XHQ/IChwYXJzZUZsb2F0KG9EYXRhW2lNaWQgLSAxXVtzTWVhc3VyZUZpZWxkXSkgKyBwYXJzZUZsb2F0KG9EYXRhW2lNaWRdW3NNZWFzdXJlRmllbGRdKSkgLyAyXG5cdFx0XHRcdFx0XHQ6IHBhcnNlRmxvYXQob0RhdGFbTWF0aC5mbG9vcihpTWlkKV1bc01lYXN1cmVGaWVsZF0pLFxuXHRcdFx0XHQvLyBnZXQgc2NhbGUgZmFjdG9yIG9uIG1lZGlhblxuXHRcdFx0XHR2YWwgPSBpTWVkaWFuO1xuXHRcdFx0Zm9yIChpID0gMDsgaSA8IDE0OyBpKyspIHtcblx0XHRcdFx0c2NhbGVGYWN0b3IgPSBNYXRoLnBvdygxMCwgaSk7XG5cdFx0XHRcdGlmIChNYXRoLnJvdW5kKE1hdGguYWJzKHZhbCkgLyBzY2FsZUZhY3RvcikgPCAxMCkge1xuXHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Y29uc3QgZml4ZWRJbnRlZ2VyID0gTnVtYmVyRm9ybWF0LmdldEludGVnZXJJbnN0YW5jZSh7XG5cdFx0XHRzdHlsZTogXCJzaG9ydFwiLFxuXHRcdFx0c2hvd1NjYWxlOiBmYWxzZSxcblx0XHRcdHNob3J0UmVmTnVtYmVyOiBzY2FsZUZhY3RvclxuXHRcdH0pO1xuXG5cdFx0Ly8gYXBwbHkgc2NhbGUgZmFjdG9yIHRvIG90aGVyIHZhbHVlcyBhbmQgY2hlY2tcblx0XHRmb3IgKGkgPSAwOyBpIDwgb0RhdGEubGVuZ3RoOyBpKyspIHtcblx0XHRcdGNvbnN0IGFEYXRhID0gb0RhdGFbaV0sXG5cdFx0XHRcdHNTY2FsZWRWYWx1ZSA9IGZpeGVkSW50ZWdlci5mb3JtYXQoYURhdGFbc01lYXN1cmVGaWVsZF0pIGFzIGFueSxcblx0XHRcdFx0YVNjYWxlZFZhbHVlUGFydHMgPSBzU2NhbGVkVmFsdWUuc3BsaXQoXCIuXCIpO1xuXHRcdFx0Ly8gaWYgc2NhbGVkIHZhbHVlIGhhcyBvbmx5IDAgYmVmb3JlIGRlY2ltYWwgb3IgMCBhZnRlciBkZWNpbWFsIChleGFtcGxlOiAwLjAyKVxuXHRcdFx0Ly8gdGhlbiBpZ25vcmUgdGhpcyBzY2FsZSBmYWN0b3IgZWxzZSBwcm9jZWVkIHdpdGggdGhpcyBzY2FsZSBmYWN0b3Jcblx0XHRcdC8vIGlmIHNjYWxlZCB2YWx1ZSBkaXZpZGVkIGJ5IDEwMDAgaXMgPj0gMTAwMCB0aGVuIGFsc28gaWdub3JlIHNjYWxlIGZhY3RvclxuXHRcdFx0aWYgKFxuXHRcdFx0XHQoIWFTY2FsZWRWYWx1ZVBhcnRzWzFdICYmIHBhcnNlSW50KGFTY2FsZWRWYWx1ZVBhcnRzWzBdLCAxMCkgPT09IDApIHx8XG5cdFx0XHRcdChhU2NhbGVkVmFsdWVQYXJ0c1sxXSAmJiBwYXJzZUludChhU2NhbGVkVmFsdWVQYXJ0c1swXSwgMTApID09PSAwICYmIGFTY2FsZWRWYWx1ZVBhcnRzWzFdLmluZGV4T2YoXCIwXCIpID09PSAwKSB8fFxuXHRcdFx0XHRzU2NhbGVkVmFsdWUgLyAxMDAwID49IDEwMDBcblx0XHRcdCkge1xuXHRcdFx0XHRzY2FsZUZhY3RvciA9IHVuZGVmaW5lZDtcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRpU2hvcnRSZWZOdW1iZXI6IHNjYWxlRmFjdG9yLFxuXHRcdFx0c2NhbGU6IHNjYWxlRmFjdG9yID8gKGZpeGVkSW50ZWdlciBhcyBhbnkpLmdldFNjYWxlKCkgOiBcIlwiXG5cdFx0fTtcblx0fSxcblxuXHQvKipcblx0ICogUmV0dXJucyB0aGUgZm9ybWF0dGVkIG51bWJlciBhY2NvcmRpbmcgdG8gdGhlIHJ1bGVzIG9mIFZpc3VhbENoYXJ0RmlsdGVycy5cblx0ICpcblx0ICogQHBhcmFtIHZhbHVlIFZhbHVlIHdoaWNoIG5lZWRzIHRvIGJlIGZvcm1hdHRlZFxuXHQgKiBAcGFyYW0gc2NhbGVGYWN0b3IgU2NhbGVGYWN0b3IgdG8gd2hpY2ggdGhlIHZhbHVlIG5lZWRzIHRvIGJlIHNjYWxlZFxuXHQgKiBAcGFyYW0gbnVtYmVyT2ZGcmFjdGlvbmFsRGlnaXRzIE51bWJlck9mRnJhY3Rpb25hbERpZ2l0cyBkaWdpdHMgaW4gdGhlIGRlY2ltYWxzIGFjY29yZGluZyB0byBzY2FsZVxuXHQgKiBAcGFyYW0gY3VycmVuY3kgQ3VycmVuY3kgY29kZVxuXHQgKiBAcmV0dXJucyBUaGUgZm9ybWF0dGVkIG51bWJlclxuXHQgKi9cblx0Z2V0Rm9ybWF0dGVkTnVtYmVyOiBmdW5jdGlvbiAodmFsdWU6IHN0cmluZyB8IG51bWJlciwgc2NhbGVGYWN0b3I/OiBudW1iZXIsIG51bWJlck9mRnJhY3Rpb25hbERpZ2l0cz86IG51bWJlciwgY3VycmVuY3k/OiBzdHJpbmcpIHtcblx0XHRsZXQgZml4ZWRJbnRlZ2VyO1xuXHRcdHZhbHVlID0gdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiID8gTnVtYmVyKHZhbHVlLnJlcGxhY2UoLywvZywgXCJcIikpIDogdmFsdWU7XG5cblx0XHRpZiAoY3VycmVuY3kpIHtcblx0XHRcdGNvbnN0IGN1cnJlbmN5Rm9ybWF0ID0gTnVtYmVyRm9ybWF0LmdldEN1cnJlbmN5SW5zdGFuY2Uoe1xuXHRcdFx0XHRzaG93TWVhc3VyZTogZmFsc2Vcblx0XHRcdH0pO1xuXHRcdFx0cmV0dXJuIGN1cnJlbmN5Rm9ybWF0LmZvcm1hdChwYXJzZUZsb2F0KHZhbHVlIGFzIGFueSksIGN1cnJlbmN5KTtcblx0XHRcdC8vIHBhcnNlRmxvYXQodmFsdWUpIGlzIHJlcXVpcmVkIG90aGVyd2lzZSAtdmUgdmFsdWUgYXJlIHdyb25nbHkgcm91bmRlZCBvZmZcblx0XHRcdC8vIEV4YW1wbGU6IFwiLTEuOVwiIHJvdW5kcyBvZmYgdG8gLTEgaW5zdGVhZCBvZiAtMi4gaG93ZXZlciAtMS45IHJvdW5kcyBvZmYgdG8gLTJcblx0XHR9IGVsc2UgaWYgKHNjYWxlRmFjdG9yKSB7XG5cdFx0XHRmaXhlZEludGVnZXIgPSBOdW1iZXJGb3JtYXQuZ2V0RmxvYXRJbnN0YW5jZSh7XG5cdFx0XHRcdHN0eWxlOiBcInNob3J0XCIsXG5cdFx0XHRcdHNob3dTY2FsZTogZmFsc2UsXG5cdFx0XHRcdHNob3J0UmVmTnVtYmVyOiBzY2FsZUZhY3Rvcixcblx0XHRcdFx0c2hvcnREZWNpbWFsczogbnVtYmVyT2ZGcmFjdGlvbmFsRGlnaXRzXG5cdFx0XHR9KTtcblx0XHRcdHJldHVybiBmaXhlZEludGVnZXIuZm9ybWF0KHBhcnNlRmxvYXQodmFsdWUgYXMgYW55KSk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGZpeGVkSW50ZWdlciA9IE51bWJlckZvcm1hdC5nZXRGbG9hdEluc3RhbmNlKHtcblx0XHRcdFx0ZGVjaW1hbHM6IG51bWJlck9mRnJhY3Rpb25hbERpZ2l0c1xuXHRcdFx0fSk7XG5cdFx0XHRyZXR1cm4gZml4ZWRJbnRlZ2VyLmZvcm1hdChwYXJzZUZsb2F0KHZhbHVlIGFzIGFueSkpO1xuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogQXBwbGllcyB0aGUgVU9NIHRvIHRoZSB0aXRsZSBvZiB0aGUgdmlzdWFsIGZpbHRlciBjb250cm9sLlxuXHQgKlxuXHQgKiBAcGFyYW0gb0ludGVyYWN0aXZlQ2hhcnQgSW50ZXJhY3RpdmVDaGFydCBpbiB0aGUgVmlzdWFsRmlsdGVyIGNvbnRyb2xcblx0ICogQHBhcmFtIG9Db250ZXh0RGF0YSBEYXRhIG9mIHRoZSBWaXN1YWxGaWx0ZXJcblx0ICogQHBhcmFtIG9WaWV3IEluc3RhbmNlIG9mIHRoZSB2aWV3XG5cdCAqIEBwYXJhbSBzSW5mb1BhdGggSW50ZXJuYWwgbW9kZWwgY29udGV4dCBwYXRoIHRvIHN0b3JlIGluZm8uXG5cdCAqL1xuXHRhcHBseVVPTVRvVGl0bGU6IGZ1bmN0aW9uIChvSW50ZXJhY3RpdmVDaGFydDogYW55LCBvQ29udGV4dERhdGE6IGFueSwgb1ZpZXc6IFZpZXcsIHNJbmZvUGF0aDogc3RyaW5nKSB7XG5cdFx0Y29uc3QgdlVPTSA9IG9JbnRlcmFjdGl2ZUNoYXJ0LmRhdGEoXCJ1b21cIik7XG5cdFx0bGV0IHNVT007XG5cdFx0bGV0IHNDdXJyZW5jeTtcblx0XHRpZiAodlVPTSAmJiB2VU9NW1wiSVNPQ3VycmVuY3lcIl0pIHtcblx0XHRcdHNVT00gPSB2VU9NW1wiSVNPQ3VycmVuY3lcIl07XG5cdFx0XHRzQ3VycmVuY3kgPSBzVU9NLiRQYXRoID8gb0NvbnRleHREYXRhW3NVT00uJFBhdGhdIDogc1VPTTtcblx0XHR9IGVsc2UgaWYgKHZVT00gJiYgdlVPTVtcIlVuaXRcIl0pIHtcblx0XHRcdHNVT00gPSB2VU9NW1wiVW5pdFwiXTtcblx0XHR9XG5cdFx0aWYgKHNVT00pIHtcblx0XHRcdGNvbnN0IHNVT01WYWx1ZSA9IHNVT00uJFBhdGggPyBvQ29udGV4dERhdGFbc1VPTS4kUGF0aF0gOiBzVU9NO1xuXHRcdFx0Y29uc3Qgb0ludGVybmFsTW9kZWxDb250ZXh0ID0gb1ZpZXcuZ2V0QmluZGluZ0NvbnRleHQoXCJpbnRlcm5hbFwiKSBhcyBJbnRlcm5hbE1vZGVsQ29udGV4dDtcblx0XHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dC5zZXRQcm9wZXJ0eShgdW9tLyR7c0luZm9QYXRofWAsIHNVT01WYWx1ZSk7XG5cdFx0XHRpZiAoc0N1cnJlbmN5KSB7XG5cdFx0XHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dC5zZXRQcm9wZXJ0eShgY3VycmVuY3kvJHtzSW5mb1BhdGh9YCwgc1VPTVZhbHVlKTtcblx0XHRcdH1cblx0XHR9XG5cdH0sXG5cdC8qKlxuXHQgKiBVcGRhdGVzIHRoZSBzY2FsZSBmYWN0b3IgaW4gdGhlIHRpdGxlIG9mIHRoZSB2aXN1YWwgZmlsdGVyLlxuXHQgKlxuXHQgKiBAcGFyYW0gb0ludGVyYWN0aXZlQ2hhcnQgSW50ZXJhY3RpdmVDaGFydCBpbiB0aGUgVmlzdWFsRmlsdGVyIGNvbnRyb2xcblx0ICogQHBhcmFtIG9WaWV3IEluc3RhbmNlIG9mIHRoZSB2aWV3XG5cdCAqIEBwYXJhbSBzVkZJZCBWaXN1YWxGaWx0ZXIgY29udHJvbCBJRFxuXHQgKiBAcGFyYW0gc0luZm9QYXRoIEludGVybmFsIG1vZGVsIGNvbnRleHQgcGF0aCB0byBzdG9yZSBpbmZvLlxuXHQgKi9cblx0dXBkYXRlQ2hhcnRTY2FsZUZhY3RvclRpdGxlOiBmdW5jdGlvbiAob0ludGVyYWN0aXZlQ2hhcnQ6IGFueSwgb1ZpZXc6IFZpZXcsIHNWRklkOiBzdHJpbmcsIHNJbmZvUGF0aDogc3RyaW5nKSB7XG5cdFx0aWYgKCFvSW50ZXJhY3RpdmVDaGFydC5kYXRhKFwic2NhbGVmYWN0b3JcIikpIHtcblx0XHRcdHRoaXMuYXBwbHlNZWRpYW5TY2FsZVRvQ2hhcnREYXRhKG9JbnRlcmFjdGl2ZUNoYXJ0LCBvVmlldywgc1ZGSWQsIHNJbmZvUGF0aCk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGNvbnN0IGZpeGVkSW50ZWdlciA9IE51bWJlckZvcm1hdC5nZXRJbnRlZ2VySW5zdGFuY2Uoe1xuXHRcdFx0XHRzdHlsZTogXCJzaG9ydFwiLFxuXHRcdFx0XHRzaG93U2NhbGU6IGZhbHNlLFxuXHRcdFx0XHRzaG9ydFJlZk51bWJlcjogb0ludGVyYWN0aXZlQ2hhcnQuZGF0YShcInNjYWxlZmFjdG9yXCIpXG5cdFx0XHR9KTtcblx0XHRcdGNvbnN0IG9JbnRlcm5hbE1vZGVsQ29udGV4dCA9IG9WaWV3LmdldEJpbmRpbmdDb250ZXh0KFwiaW50ZXJuYWxcIikgYXMgSW50ZXJuYWxNb2RlbENvbnRleHQ7XG5cdFx0XHRjb25zdCBzY2FsZSA9IGZpeGVkSW50ZWdlci5nZXRTY2FsZSgpID8gZml4ZWRJbnRlZ2VyLmdldFNjYWxlKCkgOiBcIlwiO1xuXHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KGBzY2FsZWZhY3Rvci8ke3NJbmZvUGF0aH1gLCBzY2FsZSk7XG5cdFx0fVxuXHR9LFxuXG5cdC8qKlxuXHQgKlxuXHQgKiBAcGFyYW0gczE4bk1lc3NhZ2VUaXRsZSBUZXh0IG9mIHRoZSBlcnJvciBtZXNzYWdlIHRpdGxlLlxuXHQgKiBAcGFyYW0gczE4bk1lc3NhZ2UgVGV4dCBvZiB0aGUgZXJyb3IgbWVzc2FnZSBkZXNjcmlwdGlvbi5cblx0ICogQHBhcmFtIHNJbmZvUGF0aCBJbnRlcm5hbCBtb2RlbCBjb250ZXh0IHBhdGggdG8gc3RvcmUgaW5mby5cblx0ICogQHBhcmFtIG9WaWV3IEluc3RhbmNlIG9mIHRoZSB2aWV3LlxuXHQgKi9cblx0YXBwbHlFcnJvck1lc3NhZ2VBbmRUaXRsZTogZnVuY3Rpb24gKHMxOG5NZXNzYWdlVGl0bGU6IHN0cmluZywgczE4bk1lc3NhZ2U6IHN0cmluZywgc0luZm9QYXRoOiBzdHJpbmcsIG9WaWV3OiBWaWV3KSB7XG5cdFx0Y29uc3Qgb0ludGVybmFsTW9kZWxDb250ZXh0ID0gb1ZpZXcuZ2V0QmluZGluZ0NvbnRleHQoXCJpbnRlcm5hbFwiKSBhcyBJbnRlcm5hbE1vZGVsQ29udGV4dDtcblx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoc0luZm9QYXRoLCB7fSk7XG5cdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KHNJbmZvUGF0aCwge1xuXHRcdFx0ZXJyb3JNZXNzYWdlVGl0bGU6IHMxOG5NZXNzYWdlVGl0bGUsXG5cdFx0XHRlcnJvck1lc3NhZ2U6IHMxOG5NZXNzYWdlLFxuXHRcdFx0c2hvd0Vycm9yOiB0cnVlXG5cdFx0fSk7XG5cdH0sXG5cdC8qKlxuXHQgKiBDaGVja3MgaWYgbXVsdGlwbGUgdW5pdHMgYXJlIHByZXNlbnQuXG5cdCAqXG5cdCAqIEBwYXJhbSBvQ29udGV4dHMgQ29udGV4dHMgb2YgdGhlIFZpc3VhbEZpbHRlclxuXHQgKiBAcGFyYW0gc1VuaXRmaWVsZCBUaGUgcGF0aCBvZiB0aGUgdW5pdCBmaWVsZFxuXHQgKiBAcmV0dXJucyBSZXR1cm5zIGlmIG11bHRpcGxlIHVuaXRzIGFyZSBjb25maWd1cmVkIG9yIG5vdFxuXHQgKi9cblx0Y2hlY2tNdWxpdFVuaXQ6IGZ1bmN0aW9uIChvQ29udGV4dHM6IENvbnRleHRbXSwgc1VuaXRmaWVsZDogc3RyaW5nKSB7XG5cdFx0Y29uc3QgYURhdGEgPSBbXTtcblx0XHRpZiAob0NvbnRleHRzICYmIHNVbml0ZmllbGQpIHtcblx0XHRcdGZvciAobGV0IGkgPSAwOyBpIDwgb0NvbnRleHRzLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRcdGNvbnN0IGFDb250ZXh0RGF0YSA9IG9Db250ZXh0c1tpXSAmJiBvQ29udGV4dHNbaV0uZ2V0T2JqZWN0KCk7XG5cdFx0XHRcdGFEYXRhLnB1c2goYUNvbnRleHREYXRhW3NVbml0ZmllbGRdKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0cmV0dXJuICEhYURhdGEucmVkdWNlKGZ1bmN0aW9uIChkYXRhOiBhbnksIGtleTogYW55KSB7XG5cdFx0XHRyZXR1cm4gZGF0YSA9PT0ga2V5ID8gZGF0YSA6IE5hTjtcblx0XHR9KTtcblx0fSxcblxuXHQvKipcblx0ICogU2V0cyBhbiBlcnJvciBtZXNzYWdlIGlmIG11bHRpcGxlIFVPTSBhcmUgcHJlc2VudC5cblx0ICpcblx0ICogQHBhcmFtIG9EYXRhIERhdGEgb2YgdGhlIFZpc3VhbEZpbHRlciBjb250cm9sXG5cdCAqIEBwYXJhbSBvSW50ZXJhY3RpdmVDaGFydCBJbnRlcmFjdGl2ZUNoYXJ0IGluIHRoZSBWaXN1YWxGaWx0ZXIgY29udHJvbFxuXHQgKiBAcGFyYW0gc0luZm9QYXRoIEludGVybmFsIG1vZGVsIGNvbnRleHQgcGF0aCB0byBzdG9yZSBpbmZvLlxuXHQgKiBAcGFyYW0gb1Jlc291cmNlQnVuZGxlIFRoZSByZXNvdXJjZSBidW5kbGVcblx0ICogQHBhcmFtIG9WaWV3IEluc3RhbmNlIG9mIHRoZSB2aWV3XG5cdCAqL1xuXHRzZXRNdWx0aVVPTU1lc3NhZ2U6IGZ1bmN0aW9uIChcblx0XHRvRGF0YTogQ29udGV4dFtdLFxuXHRcdG9JbnRlcmFjdGl2ZUNoYXJ0OiBhbnksXG5cdFx0c0luZm9QYXRoOiBzdHJpbmcsXG5cdFx0b1Jlc291cmNlQnVuZGxlOiBSZXNvdXJjZUJ1bmRsZSxcblx0XHRvVmlldzogVmlld1xuXHQpIHtcblx0XHRjb25zdCB2VU9NID0gb0ludGVyYWN0aXZlQ2hhcnQuZGF0YShcInVvbVwiKTtcblx0XHRjb25zdCBzSXNDdXJyZW5jeSA9IHZVT00gJiYgdlVPTVtcIklTT0N1cnJlbmN5XCJdICYmIHZVT01bXCJJU09DdXJyZW5jeVwiXS4kUGF0aDtcblx0XHRjb25zdCBzSXNVbml0ID0gdlVPTSAmJiB2VU9NW1wiVW5pdFwiXSAmJiB2VU9NW1wiVW5pdFwiXS4kUGF0aDtcblx0XHRjb25zdCBzVW5pdGZpZWxkID0gc0lzQ3VycmVuY3kgfHwgc0lzVW5pdDtcblx0XHRsZXQgczE4bk1lc3NhZ2VUaXRsZSwgczE4bk1lc3NhZ2U7XG5cdFx0aWYgKHNVbml0ZmllbGQpIHtcblx0XHRcdGlmICghdGhpcy5jaGVja011bGl0VW5pdChvRGF0YSwgc1VuaXRmaWVsZCkpIHtcblx0XHRcdFx0aWYgKHNJc0N1cnJlbmN5KSB7XG5cdFx0XHRcdFx0czE4bk1lc3NhZ2VUaXRsZSA9IG9SZXNvdXJjZUJ1bmRsZS5nZXRUZXh0KFwiTV9WSVNVQUxfRklMVEVSU19FUlJPUl9NRVNTQUdFX1RJVExFXCIpO1xuXHRcdFx0XHRcdHMxOG5NZXNzYWdlID0gb1Jlc291cmNlQnVuZGxlLmdldFRleHQoXCJNX1ZJU1VBTF9GSUxURVJTX01VTFRJUExFX0NVUlJFTkNZXCIsIHNVbml0ZmllbGQpO1xuXHRcdFx0XHRcdHRoaXMuYXBwbHlFcnJvck1lc3NhZ2VBbmRUaXRsZShzMThuTWVzc2FnZVRpdGxlLCBzMThuTWVzc2FnZSwgc0luZm9QYXRoLCBvVmlldyk7XG5cdFx0XHRcdFx0TG9nLndhcm5pbmcoYEZpbHRlciBpcyBzZXQgZm9yIG11bHRpcGxlIEN1cnJlbmN5IGZvciR7c1VuaXRmaWVsZH1gKTtcblx0XHRcdFx0fSBlbHNlIGlmIChzSXNVbml0KSB7XG5cdFx0XHRcdFx0czE4bk1lc3NhZ2VUaXRsZSA9IG9SZXNvdXJjZUJ1bmRsZS5nZXRUZXh0KFwiTV9WSVNVQUxfRklMVEVSU19FUlJPUl9NRVNTQUdFX1RJVExFXCIpO1xuXHRcdFx0XHRcdHMxOG5NZXNzYWdlID0gb1Jlc291cmNlQnVuZGxlLmdldFRleHQoXCJNX1ZJU1VBTF9GSUxURVJTX01VTFRJUExFX1VOSVRcIiwgc1VuaXRmaWVsZCk7XG5cdFx0XHRcdFx0dGhpcy5hcHBseUVycm9yTWVzc2FnZUFuZFRpdGxlKHMxOG5NZXNzYWdlVGl0bGUsIHMxOG5NZXNzYWdlLCBzSW5mb1BhdGgsIG9WaWV3KTtcblx0XHRcdFx0XHRMb2cud2FybmluZyhgRmlsdGVyIGlzIHNldCBmb3IgbXVsdGlwbGUgVU9NcyBmb3Ike3NVbml0ZmllbGR9YCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH0sXG5cblx0LyoqXG5cdCAqIFNldHMgYW4gZXJyb3IgbWVzc2FnZSBpZiByZXNwb25zZSBkYXRhIGlzIGVtcHR5LlxuXHQgKlxuXHQgKiBAcGFyYW0gc0luZm9QYXRoIEludGVybmFsIG1vZGVsIGNvbnRleHQgcGF0aCB0byBzdG9yZSBpbmZvLlxuXHQgKiBAcGFyYW0gb1Jlc291cmNlQnVuZGxlIFRoZSByZXNvdXJjZSBidW5kbGVcblx0ICogQHBhcmFtIG9WaWV3IEluc3RhbmNlIG9mIHRoZSB2aWV3XG5cdCAqL1xuXHRzZXROb0RhdGFNZXNzYWdlOiBmdW5jdGlvbiAoc0luZm9QYXRoOiBzdHJpbmcsIG9SZXNvdXJjZUJ1bmRsZTogUmVzb3VyY2VCdW5kbGUsIG9WaWV3OiBWaWV3KSB7XG5cdFx0Y29uc3QgczE4bk1lc3NhZ2VUaXRsZSA9IG9SZXNvdXJjZUJ1bmRsZS5nZXRUZXh0KFwiTV9WSVNVQUxfRklMVEVSU19FUlJPUl9NRVNTQUdFX1RJVExFXCIpO1xuXHRcdGNvbnN0IHMxOG5NZXNzYWdlID0gb1Jlc291cmNlQnVuZGxlLmdldFRleHQoXCJNX1ZJU1VBTF9GSUxURVJfTk9fREFUQV9URVhUXCIpO1xuXHRcdHRoaXMuYXBwbHlFcnJvck1lc3NhZ2VBbmRUaXRsZShzMThuTWVzc2FnZVRpdGxlLCBzMThuTWVzc2FnZSwgc0luZm9QYXRoLCBvVmlldyk7XG5cdH0sXG5cdGNvbnZlcnRGaWx0ZXJDb25kaW9uczogZnVuY3Rpb24gKG9GaWx0ZXJDb25kaXRpb25zOiBhbnkpIHtcblx0XHRjb25zdCBvQ29udmVydGVkQ29uZGl0aW9uczogYW55ID0ge307XG5cdFx0T2JqZWN0LmtleXMob0ZpbHRlckNvbmRpdGlvbnMpLmZvckVhY2goZnVuY3Rpb24gKHNLZXk6IHN0cmluZykge1xuXHRcdFx0Y29uc3QgYUNvbnZlcnRlZENvbmRpdGlvbnMgPSBbXTtcblx0XHRcdGNvbnN0IGFDb25kaXRpb25zID0gb0ZpbHRlckNvbmRpdGlvbnNbc0tleV07XG5cdFx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGFDb25kaXRpb25zLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRcdGNvbnN0IHZhbHVlcyA9IGFDb25kaXRpb25zW2ldLnZhbHVlMiA/IFthQ29uZGl0aW9uc1tpXS52YWx1ZTEsIGFDb25kaXRpb25zW2ldLnZhbHVlMl0gOiBbYUNvbmRpdGlvbnNbaV0udmFsdWUxXTtcblx0XHRcdFx0YUNvbnZlcnRlZENvbmRpdGlvbnMucHVzaChcblx0XHRcdFx0XHRDb25kaXRpb24uY3JlYXRlQ29uZGl0aW9uKGFDb25kaXRpb25zW2ldLm9wZXJhdG9yLCB2YWx1ZXMsIG51bGwsIG51bGwsIFwiVmFsaWRhdGVkXCIgYXMgQ29uZGl0aW9uVmFsaWRhdGVkKVxuXHRcdFx0XHQpO1xuXHRcdFx0fVxuXHRcdFx0aWYgKGFDb252ZXJ0ZWRDb25kaXRpb25zLmxlbmd0aCkge1xuXHRcdFx0XHRvQ29udmVydGVkQ29uZGl0aW9uc1tzS2V5XSA9IGFDb252ZXJ0ZWRDb25kaXRpb25zO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHRcdHJldHVybiBvQ29udmVydGVkQ29uZGl0aW9ucztcblx0fSxcblx0Z2V0Q3VzdG9tQ29uZGl0aW9uczogZnVuY3Rpb24gKFJhbmdlOiBhbnksIG9WYWxpZFByb3BlcnR5OiBhbnksIHNQcm9wZXJ0eU5hbWU6IGFueSkge1xuXHRcdGxldCB2YWx1ZTEsIHZhbHVlMjtcblx0XHRpZiAob1ZhbGlkUHJvcGVydHkuJFR5cGUgPT09IFwiRWRtLkRhdGVUaW1lT2Zmc2V0XCIpIHtcblx0XHRcdHZhbHVlMSA9IHRoaXMuX3BhcnNlRGF0ZVRpbWUoZ2V0VHlwZUNvbXBsaWFudFZhbHVlKHRoaXMuX2Zvcm1hdERhdGVUaW1lKFJhbmdlLkxvdyksIG9WYWxpZFByb3BlcnR5LiRUeXBlKSk7XG5cdFx0XHR2YWx1ZTIgPSBSYW5nZS5IaWdoID8gdGhpcy5fcGFyc2VEYXRlVGltZShnZXRUeXBlQ29tcGxpYW50VmFsdWUodGhpcy5fZm9ybWF0RGF0ZVRpbWUoUmFuZ2UuSGlnaCksIG9WYWxpZFByb3BlcnR5LiRUeXBlKSkgOiBudWxsO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR2YWx1ZTEgPSBSYW5nZS5Mb3c7XG5cdFx0XHR2YWx1ZTIgPSBSYW5nZS5IaWdoID8gUmFuZ2UuSGlnaCA6IG51bGw7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRvcGVyYXRvcjogUmFuZ2UuT3B0aW9uID8gZ2V0UmFuZ2VQcm9wZXJ0eShSYW5nZS5PcHRpb24uJEVudW1NZW1iZXIgfHwgUmFuZ2UuT3B0aW9uKSA6IG51bGwsXG5cdFx0XHR2YWx1ZTE6IHZhbHVlMSxcblx0XHRcdHZhbHVlMjogdmFsdWUyLFxuXHRcdFx0cGF0aDogc1Byb3BlcnR5TmFtZVxuXHRcdH07XG5cdH0sXG5cdF9wYXJzZURhdGVUaW1lOiBmdW5jdGlvbiAoc1ZhbHVlOiBhbnkpIHtcblx0XHRyZXR1cm4gdGhpcy5fZ2V0RGF0ZVRpbWVUeXBlSW5zdGFuY2UoKS5wYXJzZVZhbHVlKHNWYWx1ZSwgXCJzdHJpbmdcIik7XG5cdH0sXG5cdF9mb3JtYXREYXRlVGltZTogZnVuY3Rpb24gKHNWYWx1ZTogYW55KSB7XG5cdFx0cmV0dXJuIHRoaXMuX2dldERhdGVUaW1lVHlwZUluc3RhbmNlKCkuZm9ybWF0VmFsdWUoc1ZhbHVlLCBcInN0cmluZ1wiKTtcblx0fSxcblx0X2dldERhdGVUaW1lVHlwZUluc3RhbmNlOiBmdW5jdGlvbiAoKSB7XG5cdFx0cmV0dXJuIG5ldyBEYXRlVGltZU9mZnNldCh7IHBhdHRlcm46IFwieXl5eS1NTS1kZFRISDptbTpzc1pcIiwgY2FsZW5kYXJUeXBlOiBcIkdyZWdvcmlhblwiIH0sIHsgVjQ6IHRydWUgfSk7XG5cdH1cbn07XG5c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
340
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJWaXN1YWxGaWx0ZXJVdGlscyIsImFwcGx5TWVkaWFuU2NhbGVUb0NoYXJ0RGF0YSIsIm9JbnRlcmFjdGl2ZUNoYXJ0Iiwib1ZpZXciLCJzVkZJZCIsInNJbmZvUGF0aCIsIm9EYXRhIiwic01lYXN1cmUiLCJkYXRhIiwib0ludGVybmFsTW9kZWxDb250ZXh0IiwiZ2V0QmluZGluZ0NvbnRleHQiLCJhQWdncmVnYXRpb24iLCJnZXRQb2ludHMiLCJnZXRCYXJzIiwiZ2V0U2VnbWVudHMiLCJpIiwibGVuZ3RoIiwicHVzaCIsImdldE9iamVjdCIsInNjYWxlRmFjdG9yIiwiX2dldE1lZGlhblNjYWxlRmFjdG9yIiwiaVNob3J0UmVmTnVtYmVyIiwic2NhbGUiLCJzZXRQcm9wZXJ0eSIsIm9TY2FsZVRpdGxlIiwiYnlJZCIsIm9NZWFzdXJlRGltZW5zaW9uVGl0bGUiLCJzVGV4dCIsImdldFRleHQiLCJzZXRUZXh0Iiwic2V0VG9vbHRpcCIsInNNZWFzdXJlRmllbGQiLCJzb3J0IiwiYSIsImIiLCJOdW1iZXIiLCJpTWlkIiwiaU1lZGlhbiIsInBhcnNlRmxvYXQiLCJNYXRoIiwiZmxvb3IiLCJ2YWwiLCJwb3ciLCJyb3VuZCIsImFicyIsImZpeGVkSW50ZWdlciIsIk51bWJlckZvcm1hdCIsImdldEludGVnZXJJbnN0YW5jZSIsInN0eWxlIiwic2hvd1NjYWxlIiwic2hvcnRSZWZOdW1iZXIiLCJhRGF0YSIsInNTY2FsZWRWYWx1ZSIsImZvcm1hdCIsImFTY2FsZWRWYWx1ZVBhcnRzIiwic3BsaXQiLCJwYXJzZUludCIsImluZGV4T2YiLCJ1bmRlZmluZWQiLCJnZXRTY2FsZSIsImdldEZvcm1hdHRlZE51bWJlciIsInZhbHVlIiwibnVtYmVyT2ZGcmFjdGlvbmFsRGlnaXRzIiwiY3VycmVuY3kiLCJyZXBsYWNlIiwiY3VycmVuY3lGb3JtYXQiLCJnZXRDdXJyZW5jeUluc3RhbmNlIiwic2hvd01lYXN1cmUiLCJnZXRGbG9hdEluc3RhbmNlIiwic2hvcnREZWNpbWFscyIsImRlY2ltYWxzIiwiYXBwbHlVT01Ub1RpdGxlIiwib0NvbnRleHREYXRhIiwidlVPTSIsInNVT00iLCJzQ3VycmVuY3kiLCIkUGF0aCIsInNVT01WYWx1ZSIsInVwZGF0ZUNoYXJ0U2NhbGVGYWN0b3JUaXRsZSIsImFwcGx5RXJyb3JNZXNzYWdlQW5kVGl0bGUiLCJzMThuTWVzc2FnZVRpdGxlIiwiczE4bk1lc3NhZ2UiLCJlcnJvck1lc3NhZ2VUaXRsZSIsImVycm9yTWVzc2FnZSIsInNob3dFcnJvciIsImNoZWNrTXVsaXRVbml0Iiwib0NvbnRleHRzIiwic1VuaXRmaWVsZCIsImFDb250ZXh0RGF0YSIsInJlZHVjZSIsImtleSIsIk5hTiIsInNldE11bHRpVU9NTWVzc2FnZSIsIm9SZXNvdXJjZUJ1bmRsZSIsInNJc0N1cnJlbmN5Iiwic0lzVW5pdCIsIkxvZyIsIndhcm5pbmciLCJzZXROb0RhdGFNZXNzYWdlIiwiY29udmVydEZpbHRlckNvbmRpb25zIiwib0ZpbHRlckNvbmRpdGlvbnMiLCJvQ29udmVydGVkQ29uZGl0aW9ucyIsIk9iamVjdCIsImtleXMiLCJmb3JFYWNoIiwic0tleSIsImFDb252ZXJ0ZWRDb25kaXRpb25zIiwiYUNvbmRpdGlvbnMiLCJ2YWx1ZXMiLCJ2YWx1ZTIiLCJ2YWx1ZTEiLCJDb25kaXRpb24iLCJjcmVhdGVDb25kaXRpb24iLCJvcGVyYXRvciIsImdldEN1c3RvbUNvbmRpdGlvbnMiLCJSYW5nZSIsIm9WYWxpZFByb3BlcnR5Iiwic1Byb3BlcnR5TmFtZSIsIiRUeXBlIiwiX3BhcnNlRGF0ZVRpbWUiLCJnZXRUeXBlQ29tcGxpYW50VmFsdWUiLCJfZm9ybWF0RGF0ZVRpbWUiLCJMb3ciLCJIaWdoIiwiT3B0aW9uIiwiZ2V0UmFuZ2VQcm9wZXJ0eSIsIiRFbnVtTWVtYmVyIiwicGF0aCIsInNWYWx1ZSIsIl9nZXREYXRlVGltZVR5cGVJbnN0YW5jZSIsInBhcnNlVmFsdWUiLCJmb3JtYXRWYWx1ZSIsIkRhdGVUaW1lT2Zmc2V0IiwicGF0dGVybiIsImNhbGVuZGFyVHlwZSIsIlY0IiwiZ2V0RXJyb3JJbmZvRm9yTm9Jbml0aWFsT3ZlcmxheSIsIm5vdE1hdGNoZWRDb25kaXRpb25zIiwicmVzb3VyY2VCdW5kbGUiLCJlbnRpdHlTZXRQYXRoIiwibWV0YU1vZGVsIiwicmV0IiwibGFiZWwiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIlZpc3VhbEZpbHRlclV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIFJlc291cmNlQnVuZGxlIGZyb20gXCJzYXAvYmFzZS9pMThuL1Jlc291cmNlQnVuZGxlXCI7XG5pbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCB0eXBlIHsgSW50ZXJuYWxNb2RlbENvbnRleHQgfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9Nb2RlbEhlbHBlclwiO1xuaW1wb3J0IHsgZ2V0UmFuZ2VQcm9wZXJ0eSwgZ2V0VHlwZUNvbXBsaWFudFZhbHVlIH0gZnJvbSBcInNhcC9mZS9jb3JlL3RlbXBsYXRpbmcvRmlsdGVySGVscGVyXCI7XG5pbXBvcnQgdHlwZSBUaXRsZSBmcm9tIFwic2FwL20vVGl0bGVcIjtcbmltcG9ydCBOdW1iZXJGb3JtYXQgZnJvbSBcInNhcC91aS9jb3JlL2Zvcm1hdC9OdW1iZXJGb3JtYXRcIjtcbmltcG9ydCB0eXBlIFZpZXcgZnJvbSBcInNhcC91aS9jb3JlL212Yy9WaWV3XCI7XG5pbXBvcnQgQ29uZGl0aW9uIGZyb20gXCJzYXAvdWkvbWRjL2NvbmRpdGlvbi9Db25kaXRpb25cIjtcbmltcG9ydCB0eXBlIENvbmRpdGlvblZhbGlkYXRlZCBmcm9tIFwic2FwL3VpL21kYy9lbnVtL0NvbmRpdGlvblZhbGlkYXRlZFwiO1xuaW1wb3J0IHR5cGUgQ29udGV4dCBmcm9tIFwic2FwL3VpL21vZGVsL0NvbnRleHRcIjtcbmltcG9ydCBNZXRhTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9NZXRhTW9kZWxcIjtcbmltcG9ydCBEYXRlVGltZU9mZnNldCBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3R5cGUvRGF0ZVRpbWVPZmZzZXRcIjtcblxuY29uc3QgVmlzdWFsRmlsdGVyVXRpbHMgPSB7XG5cdC8qKlxuXHQgKiBBcHBsaWVzIHRoZSBtZWRpYW4gc2NhbGUgdG8gdGhlIGNoYXJ0IGRhdGEuXG5cdCAqXG5cdCAqIEBwYXJhbSBvSW50ZXJhY3RpdmVDaGFydCBJbnRlcmFjdGl2ZUNoYXJ0IGluIHRoZSBWaXN1YWxGaWx0ZXIgY29udHJvbFxuXHQgKiBAcGFyYW0gb1ZpZXcgSW5zdGFuY2Ugb2YgdGhlIHZpZXdcblx0ICogQHBhcmFtIHNWRklkIFZpc3VhbEZpbHRlciBjb250cm9sIElEXG5cdCAqIEBwYXJhbSBzSW5mb1BhdGggSW50ZXJuYWwgbW9kZWwgY29udGV4dCBwYXRoIHRvIHN0b3JlIGluZm8uXG5cdCAqL1xuXHRhcHBseU1lZGlhblNjYWxlVG9DaGFydERhdGE6IGZ1bmN0aW9uIChvSW50ZXJhY3RpdmVDaGFydDogYW55LCBvVmlldzogVmlldywgc1ZGSWQ6IHN0cmluZywgc0luZm9QYXRoOiBzdHJpbmcpIHtcblx0XHRjb25zdCBvRGF0YSA9IFtdO1xuXHRcdGNvbnN0IHNNZWFzdXJlID0gb0ludGVyYWN0aXZlQ2hhcnQuZGF0YShcIm1lYXN1cmVcIik7XG5cdFx0Y29uc3Qgb0ludGVybmFsTW9kZWxDb250ZXh0ID0gb1ZpZXcuZ2V0QmluZGluZ0NvbnRleHQoXCJpbnRlcm5hbFwiKSBhcyBJbnRlcm5hbE1vZGVsQ29udGV4dDtcblx0XHRjb25zdCBhQWdncmVnYXRpb24gPVxuXHRcdFx0KG9JbnRlcmFjdGl2ZUNoYXJ0LmdldFBvaW50cyAmJiBvSW50ZXJhY3RpdmVDaGFydC5nZXRQb2ludHMoKSkgfHxcblx0XHRcdChvSW50ZXJhY3RpdmVDaGFydC5nZXRCYXJzICYmIG9JbnRlcmFjdGl2ZUNoYXJ0LmdldEJhcnMoKSkgfHxcblx0XHRcdChvSW50ZXJhY3RpdmVDaGFydC5nZXRTZWdtZW50cyAmJiBvSW50ZXJhY3RpdmVDaGFydC5nZXRTZWdtZW50cygpKTtcblx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGFBZ2dyZWdhdGlvbi5sZW5ndGg7IGkrKykge1xuXHRcdFx0b0RhdGEucHVzaChhQWdncmVnYXRpb25baV0uZ2V0QmluZGluZ0NvbnRleHQoKS5nZXRPYmplY3QoKSk7XG5cdFx0fVxuXHRcdGNvbnN0IHNjYWxlRmFjdG9yID0gdGhpcy5fZ2V0TWVkaWFuU2NhbGVGYWN0b3Iob0RhdGEsIHNNZWFzdXJlKTtcblx0XHRpZiAoc2NhbGVGYWN0b3IgJiYgc2NhbGVGYWN0b3IuaVNob3J0UmVmTnVtYmVyICYmIHNjYWxlRmFjdG9yLnNjYWxlKSB7XG5cdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoYHNjYWxlZmFjdG9yLyR7c0luZm9QYXRofWAsIHNjYWxlRmFjdG9yLnNjYWxlKTtcblx0XHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dC5zZXRQcm9wZXJ0eShgc2NhbGVmYWN0b3JOdW1iZXIvJHtzSW5mb1BhdGh9YCwgc2NhbGVGYWN0b3IuaVNob3J0UmVmTnVtYmVyKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KGBzY2FsZWZhY3Rvci8ke3NJbmZvUGF0aH1gLCBcIlwiKTtcblx0XHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dC5zZXRQcm9wZXJ0eShgc2NhbGVmYWN0b3JOdW1iZXIvJHtzSW5mb1BhdGh9YCwgXCJcIik7XG5cdFx0XHRjb25zdCBvU2NhbGVUaXRsZSA9IG9WaWV3LmJ5SWQoYCR7c1ZGSWR9OjpTY2FsZVVvTVRpdGxlYCkgYXMgVGl0bGU7XG5cdFx0XHRjb25zdCBvTWVhc3VyZURpbWVuc2lvblRpdGxlID0gb1ZpZXcuYnlJZChgJHtzVkZJZH06Ok1lYXN1cmVEaW1lbnNpb25UaXRsZWApIGFzIFRpdGxlO1xuXHRcdFx0Y29uc3Qgc1RleHQgPSBvU2NhbGVUaXRsZS5nZXRUZXh0KCk7XG5cdFx0XHRpZiAoc1RleHQgPT09IFwiIHwgXCIpIHtcblx0XHRcdFx0b1NjYWxlVGl0bGUuc2V0VGV4dChcIlwiKTtcblx0XHRcdFx0b01lYXN1cmVEaW1lbnNpb25UaXRsZS5zZXRUb29sdGlwKG9NZWFzdXJlRGltZW5zaW9uVGl0bGUuZ2V0VGV4dCgpKTtcblx0XHRcdH1cblx0XHR9XG5cdH0sXG5cblx0LyoqXG5cdCAqIFJldHVybnMgdGhlIG1lZGlhbiBzY2FsZSBmYWN0b3IuXG5cdCAqXG5cdCAqIEBwYXJhbSBvRGF0YSBWaXN1YWxGaWx0ZXIgZGF0YVxuXHQgKiBAcGFyYW0gc01lYXN1cmVGaWVsZCBQYXRoIG9mIHRoZSBtZWFzdXJlXG5cdCAqIEByZXR1cm5zIE9iamVjdCBjb250YWluaW5nIHNjYWxlIGFuZCBpU2hvcnRSZWZOdW1iZXJcblx0ICovXG5cdF9nZXRNZWRpYW5TY2FsZUZhY3RvcjogZnVuY3Rpb24gKG9EYXRhOiBhbnlbXSwgc01lYXN1cmVGaWVsZDogc3RyaW5nKSB7XG5cdFx0bGV0IGk7XG5cdFx0bGV0IHNjYWxlRmFjdG9yO1xuXHRcdG9EYXRhLnNvcnQoZnVuY3Rpb24gKGE6IGFueSwgYjogYW55KSB7XG5cdFx0XHRpZiAoTnVtYmVyKGFbc01lYXN1cmVGaWVsZF0pIDwgTnVtYmVyKGJbc01lYXN1cmVGaWVsZF0pKSB7XG5cdFx0XHRcdHJldHVybiAtMTtcblx0XHRcdH1cblx0XHRcdGlmIChOdW1iZXIoYVtzTWVhc3VyZUZpZWxkXSkgPiBOdW1iZXIoYltzTWVhc3VyZUZpZWxkXSkpIHtcblx0XHRcdFx0cmV0dXJuIDE7XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gMDtcblx0XHR9KTtcblx0XHRpZiAob0RhdGEubGVuZ3RoID4gMCkge1xuXHRcdFx0Ly8gZ2V0IG1lZGlhbiBpbmRleFxuXHRcdFx0Y29uc3QgaU1pZCA9IG9EYXRhLmxlbmd0aCAvIDIsIC8vIGdldCBtaWQgb2YgYXJyYXlcblx0XHRcdFx0Ly8gaWYgaU1pZCBpcyB3aG9sZSBudW1iZXIsIGFycmF5IGxlbmd0aCBpcyBldmVuLCBjYWxjdWxhdGUgbWVkaWFuXG5cdFx0XHRcdC8vIGlmIGlNaWQgaXMgbm90IHdob2xlIG51bWJlciwgYXJyYXkgbGVuZ3RoIGlzIG9kZCwgdGFrZSBtZWRpYW4gYXMgaU1pZCAtIDFcblx0XHRcdFx0aU1lZGlhbiA9XG5cdFx0XHRcdFx0aU1pZCAlIDEgPT09IDBcblx0XHRcdFx0XHRcdD8gKHBhcnNlRmxvYXQob0RhdGFbaU1pZCAtIDFdW3NNZWFzdXJlRmllbGRdKSArIHBhcnNlRmxvYXQob0RhdGFbaU1pZF1bc01lYXN1cmVGaWVsZF0pKSAvIDJcblx0XHRcdFx0XHRcdDogcGFyc2VGbG9hdChvRGF0YVtNYXRoLmZsb29yKGlNaWQpXVtzTWVhc3VyZUZpZWxkXSksXG5cdFx0XHRcdC8vIGdldCBzY2FsZSBmYWN0b3Igb24gbWVkaWFuXG5cdFx0XHRcdHZhbCA9IGlNZWRpYW47XG5cdFx0XHRmb3IgKGkgPSAwOyBpIDwgMTQ7IGkrKykge1xuXHRcdFx0XHRzY2FsZUZhY3RvciA9IE1hdGgucG93KDEwLCBpKTtcblx0XHRcdFx0aWYgKE1hdGgucm91bmQoTWF0aC5hYnModmFsKSAvIHNjYWxlRmFjdG9yKSA8IDEwKSB7XG5cdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRjb25zdCBmaXhlZEludGVnZXIgPSBOdW1iZXJGb3JtYXQuZ2V0SW50ZWdlckluc3RhbmNlKHtcblx0XHRcdHN0eWxlOiBcInNob3J0XCIsXG5cdFx0XHRzaG93U2NhbGU6IGZhbHNlLFxuXHRcdFx0c2hvcnRSZWZOdW1iZXI6IHNjYWxlRmFjdG9yXG5cdFx0fSk7XG5cblx0XHQvLyBhcHBseSBzY2FsZSBmYWN0b3IgdG8gb3RoZXIgdmFsdWVzIGFuZCBjaGVja1xuXHRcdGZvciAoaSA9IDA7IGkgPCBvRGF0YS5sZW5ndGg7IGkrKykge1xuXHRcdFx0Y29uc3QgYURhdGEgPSBvRGF0YVtpXSxcblx0XHRcdFx0c1NjYWxlZFZhbHVlID0gZml4ZWRJbnRlZ2VyLmZvcm1hdChhRGF0YVtzTWVhc3VyZUZpZWxkXSkgYXMgYW55LFxuXHRcdFx0XHRhU2NhbGVkVmFsdWVQYXJ0cyA9IHNTY2FsZWRWYWx1ZS5zcGxpdChcIi5cIik7XG5cdFx0XHQvLyBpZiBzY2FsZWQgdmFsdWUgaGFzIG9ubHkgMCBiZWZvcmUgZGVjaW1hbCBvciAwIGFmdGVyIGRlY2ltYWwgKGV4YW1wbGU6IDAuMDIpXG5cdFx0XHQvLyB0aGVuIGlnbm9yZSB0aGlzIHNjYWxlIGZhY3RvciBlbHNlIHByb2NlZWQgd2l0aCB0aGlzIHNjYWxlIGZhY3RvclxuXHRcdFx0Ly8gaWYgc2NhbGVkIHZhbHVlIGRpdmlkZWQgYnkgMTAwMCBpcyA+PSAxMDAwIHRoZW4gYWxzbyBpZ25vcmUgc2NhbGUgZmFjdG9yXG5cdFx0XHRpZiAoXG5cdFx0XHRcdCghYVNjYWxlZFZhbHVlUGFydHNbMV0gJiYgcGFyc2VJbnQoYVNjYWxlZFZhbHVlUGFydHNbMF0sIDEwKSA9PT0gMCkgfHxcblx0XHRcdFx0KGFTY2FsZWRWYWx1ZVBhcnRzWzFdICYmIHBhcnNlSW50KGFTY2FsZWRWYWx1ZVBhcnRzWzBdLCAxMCkgPT09IDAgJiYgYVNjYWxlZFZhbHVlUGFydHNbMV0uaW5kZXhPZihcIjBcIikgPT09IDApIHx8XG5cdFx0XHRcdHNTY2FsZWRWYWx1ZSAvIDEwMDAgPj0gMTAwMFxuXHRcdFx0KSB7XG5cdFx0XHRcdHNjYWxlRmFjdG9yID0gdW5kZWZpbmVkO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdH1cblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdGlTaG9ydFJlZk51bWJlcjogc2NhbGVGYWN0b3IsXG5cdFx0XHRzY2FsZTogc2NhbGVGYWN0b3IgPyAoZml4ZWRJbnRlZ2VyIGFzIGFueSkuZ2V0U2NhbGUoKSA6IFwiXCJcblx0XHR9O1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBSZXR1cm5zIHRoZSBmb3JtYXR0ZWQgbnVtYmVyIGFjY29yZGluZyB0byB0aGUgcnVsZXMgb2YgVmlzdWFsQ2hhcnRGaWx0ZXJzLlxuXHQgKlxuXHQgKiBAcGFyYW0gdmFsdWUgVmFsdWUgd2hpY2ggbmVlZHMgdG8gYmUgZm9ybWF0dGVkXG5cdCAqIEBwYXJhbSBzY2FsZUZhY3RvciBTY2FsZUZhY3RvciB0byB3aGljaCB0aGUgdmFsdWUgbmVlZHMgdG8gYmUgc2NhbGVkXG5cdCAqIEBwYXJhbSBudW1iZXJPZkZyYWN0aW9uYWxEaWdpdHMgTnVtYmVyT2ZGcmFjdGlvbmFsRGlnaXRzIGRpZ2l0cyBpbiB0aGUgZGVjaW1hbHMgYWNjb3JkaW5nIHRvIHNjYWxlXG5cdCAqIEBwYXJhbSBjdXJyZW5jeSBDdXJyZW5jeSBjb2RlXG5cdCAqIEByZXR1cm5zIFRoZSBmb3JtYXR0ZWQgbnVtYmVyXG5cdCAqL1xuXHRnZXRGb3JtYXR0ZWROdW1iZXI6IGZ1bmN0aW9uICh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyLCBzY2FsZUZhY3Rvcj86IG51bWJlciwgbnVtYmVyT2ZGcmFjdGlvbmFsRGlnaXRzPzogbnVtYmVyLCBjdXJyZW5jeT86IHN0cmluZykge1xuXHRcdGxldCBmaXhlZEludGVnZXI7XG5cdFx0dmFsdWUgPSB0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIgPyBOdW1iZXIodmFsdWUucmVwbGFjZSgvLC9nLCBcIlwiKSkgOiB2YWx1ZTtcblxuXHRcdGlmIChjdXJyZW5jeSkge1xuXHRcdFx0Y29uc3QgY3VycmVuY3lGb3JtYXQgPSBOdW1iZXJGb3JtYXQuZ2V0Q3VycmVuY3lJbnN0YW5jZSh7XG5cdFx0XHRcdHNob3dNZWFzdXJlOiBmYWxzZVxuXHRcdFx0fSk7XG5cdFx0XHRyZXR1cm4gY3VycmVuY3lGb3JtYXQuZm9ybWF0KHBhcnNlRmxvYXQodmFsdWUgYXMgYW55KSwgY3VycmVuY3kpO1xuXHRcdFx0Ly8gcGFyc2VGbG9hdCh2YWx1ZSkgaXMgcmVxdWlyZWQgb3RoZXJ3aXNlIC12ZSB2YWx1ZSBhcmUgd3JvbmdseSByb3VuZGVkIG9mZlxuXHRcdFx0Ly8gRXhhbXBsZTogXCItMS45XCIgcm91bmRzIG9mZiB0byAtMSBpbnN0ZWFkIG9mIC0yLiBob3dldmVyIC0xLjkgcm91bmRzIG9mZiB0byAtMlxuXHRcdH0gZWxzZSBpZiAoc2NhbGVGYWN0b3IpIHtcblx0XHRcdGZpeGVkSW50ZWdlciA9IE51bWJlckZvcm1hdC5nZXRGbG9hdEluc3RhbmNlKHtcblx0XHRcdFx0c3R5bGU6IFwic2hvcnRcIixcblx0XHRcdFx0c2hvd1NjYWxlOiBmYWxzZSxcblx0XHRcdFx0c2hvcnRSZWZOdW1iZXI6IHNjYWxlRmFjdG9yLFxuXHRcdFx0XHRzaG9ydERlY2ltYWxzOiBudW1iZXJPZkZyYWN0aW9uYWxEaWdpdHNcblx0XHRcdH0pO1xuXHRcdFx0cmV0dXJuIGZpeGVkSW50ZWdlci5mb3JtYXQocGFyc2VGbG9hdCh2YWx1ZSBhcyBhbnkpKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0Zml4ZWRJbnRlZ2VyID0gTnVtYmVyRm9ybWF0LmdldEZsb2F0SW5zdGFuY2Uoe1xuXHRcdFx0XHRkZWNpbWFsczogbnVtYmVyT2ZGcmFjdGlvbmFsRGlnaXRzXG5cdFx0XHR9KTtcblx0XHRcdHJldHVybiBmaXhlZEludGVnZXIuZm9ybWF0KHBhcnNlRmxvYXQodmFsdWUgYXMgYW55KSk7XG5cdFx0fVxuXHR9LFxuXG5cdC8qKlxuXHQgKiBBcHBsaWVzIHRoZSBVT00gdG8gdGhlIHRpdGxlIG9mIHRoZSB2aXN1YWwgZmlsdGVyIGNvbnRyb2wuXG5cdCAqXG5cdCAqIEBwYXJhbSBvSW50ZXJhY3RpdmVDaGFydCBJbnRlcmFjdGl2ZUNoYXJ0IGluIHRoZSBWaXN1YWxGaWx0ZXIgY29udHJvbFxuXHQgKiBAcGFyYW0gb0NvbnRleHREYXRhIERhdGEgb2YgdGhlIFZpc3VhbEZpbHRlclxuXHQgKiBAcGFyYW0gb1ZpZXcgSW5zdGFuY2Ugb2YgdGhlIHZpZXdcblx0ICogQHBhcmFtIHNJbmZvUGF0aCBJbnRlcm5hbCBtb2RlbCBjb250ZXh0IHBhdGggdG8gc3RvcmUgaW5mby5cblx0ICovXG5cdGFwcGx5VU9NVG9UaXRsZTogZnVuY3Rpb24gKG9JbnRlcmFjdGl2ZUNoYXJ0OiBhbnksIG9Db250ZXh0RGF0YTogYW55LCBvVmlldzogVmlldywgc0luZm9QYXRoOiBzdHJpbmcpIHtcblx0XHRjb25zdCB2VU9NID0gb0ludGVyYWN0aXZlQ2hhcnQuZGF0YShcInVvbVwiKTtcblx0XHRsZXQgc1VPTTtcblx0XHRsZXQgc0N1cnJlbmN5O1xuXHRcdGlmICh2VU9NICYmIHZVT01bXCJJU09DdXJyZW5jeVwiXSkge1xuXHRcdFx0c1VPTSA9IHZVT01bXCJJU09DdXJyZW5jeVwiXTtcblx0XHRcdHNDdXJyZW5jeSA9IHNVT00uJFBhdGggPyBvQ29udGV4dERhdGFbc1VPTS4kUGF0aF0gOiBzVU9NO1xuXHRcdH0gZWxzZSBpZiAodlVPTSAmJiB2VU9NW1wiVW5pdFwiXSkge1xuXHRcdFx0c1VPTSA9IHZVT01bXCJVbml0XCJdO1xuXHRcdH1cblx0XHRpZiAoc1VPTSkge1xuXHRcdFx0Y29uc3Qgc1VPTVZhbHVlID0gc1VPTS4kUGF0aCA/IG9Db250ZXh0RGF0YVtzVU9NLiRQYXRoXSA6IHNVT007XG5cdFx0XHRjb25zdCBvSW50ZXJuYWxNb2RlbENvbnRleHQgPSBvVmlldy5nZXRCaW5kaW5nQ29udGV4dChcImludGVybmFsXCIpIGFzIEludGVybmFsTW9kZWxDb250ZXh0O1xuXHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KGB1b20vJHtzSW5mb1BhdGh9YCwgc1VPTVZhbHVlKTtcblx0XHRcdGlmIChzQ3VycmVuY3kpIHtcblx0XHRcdFx0b0ludGVybmFsTW9kZWxDb250ZXh0LnNldFByb3BlcnR5KGBjdXJyZW5jeS8ke3NJbmZvUGF0aH1gLCBzVU9NVmFsdWUpO1xuXHRcdFx0fVxuXHRcdH1cblx0fSxcblx0LyoqXG5cdCAqIFVwZGF0ZXMgdGhlIHNjYWxlIGZhY3RvciBpbiB0aGUgdGl0bGUgb2YgdGhlIHZpc3VhbCBmaWx0ZXIuXG5cdCAqXG5cdCAqIEBwYXJhbSBvSW50ZXJhY3RpdmVDaGFydCBJbnRlcmFjdGl2ZUNoYXJ0IGluIHRoZSBWaXN1YWxGaWx0ZXIgY29udHJvbFxuXHQgKiBAcGFyYW0gb1ZpZXcgSW5zdGFuY2Ugb2YgdGhlIHZpZXdcblx0ICogQHBhcmFtIHNWRklkIFZpc3VhbEZpbHRlciBjb250cm9sIElEXG5cdCAqIEBwYXJhbSBzSW5mb1BhdGggSW50ZXJuYWwgbW9kZWwgY29udGV4dCBwYXRoIHRvIHN0b3JlIGluZm8uXG5cdCAqL1xuXHR1cGRhdGVDaGFydFNjYWxlRmFjdG9yVGl0bGU6IGZ1bmN0aW9uIChvSW50ZXJhY3RpdmVDaGFydDogYW55LCBvVmlldzogVmlldywgc1ZGSWQ6IHN0cmluZywgc0luZm9QYXRoOiBzdHJpbmcpIHtcblx0XHRpZiAoIW9JbnRlcmFjdGl2ZUNoYXJ0LmRhdGEoXCJzY2FsZWZhY3RvclwiKSkge1xuXHRcdFx0dGhpcy5hcHBseU1lZGlhblNjYWxlVG9DaGFydERhdGEob0ludGVyYWN0aXZlQ2hhcnQsIG9WaWV3LCBzVkZJZCwgc0luZm9QYXRoKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0Y29uc3QgZml4ZWRJbnRlZ2VyID0gTnVtYmVyRm9ybWF0LmdldEludGVnZXJJbnN0YW5jZSh7XG5cdFx0XHRcdHN0eWxlOiBcInNob3J0XCIsXG5cdFx0XHRcdHNob3dTY2FsZTogZmFsc2UsXG5cdFx0XHRcdHNob3J0UmVmTnVtYmVyOiBvSW50ZXJhY3RpdmVDaGFydC5kYXRhKFwic2NhbGVmYWN0b3JcIilcblx0XHRcdH0pO1xuXHRcdFx0Y29uc3Qgb0ludGVybmFsTW9kZWxDb250ZXh0ID0gb1ZpZXcuZ2V0QmluZGluZ0NvbnRleHQoXCJpbnRlcm5hbFwiKSBhcyBJbnRlcm5hbE1vZGVsQ29udGV4dDtcblx0XHRcdGNvbnN0IHNjYWxlID0gZml4ZWRJbnRlZ2VyLmdldFNjYWxlKCkgPyBmaXhlZEludGVnZXIuZ2V0U2NhbGUoKSA6IFwiXCI7XG5cdFx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoYHNjYWxlZmFjdG9yLyR7c0luZm9QYXRofWAsIHNjYWxlKTtcblx0XHR9XG5cdH0sXG5cblx0LyoqXG5cdCAqXG5cdCAqIEBwYXJhbSBzMThuTWVzc2FnZVRpdGxlIFRleHQgb2YgdGhlIGVycm9yIG1lc3NhZ2UgdGl0bGUuXG5cdCAqIEBwYXJhbSBzMThuTWVzc2FnZSBUZXh0IG9mIHRoZSBlcnJvciBtZXNzYWdlIGRlc2NyaXB0aW9uLlxuXHQgKiBAcGFyYW0gc0luZm9QYXRoIEludGVybmFsIG1vZGVsIGNvbnRleHQgcGF0aCB0byBzdG9yZSBpbmZvLlxuXHQgKiBAcGFyYW0gb1ZpZXcgSW5zdGFuY2Ugb2YgdGhlIHZpZXcuXG5cdCAqL1xuXHRhcHBseUVycm9yTWVzc2FnZUFuZFRpdGxlOiBmdW5jdGlvbiAoczE4bk1lc3NhZ2VUaXRsZTogc3RyaW5nLCBzMThuTWVzc2FnZTogc3RyaW5nLCBzSW5mb1BhdGg6IHN0cmluZywgb1ZpZXc6IFZpZXcpIHtcblx0XHRjb25zdCBvSW50ZXJuYWxNb2RlbENvbnRleHQgPSBvVmlldy5nZXRCaW5kaW5nQ29udGV4dChcImludGVybmFsXCIpIGFzIEludGVybmFsTW9kZWxDb250ZXh0O1xuXHRcdG9JbnRlcm5hbE1vZGVsQ29udGV4dC5zZXRQcm9wZXJ0eShzSW5mb1BhdGgsIHt9KTtcblx0XHRvSW50ZXJuYWxNb2RlbENvbnRleHQuc2V0UHJvcGVydHkoc0luZm9QYXRoLCB7XG5cdFx0XHRlcnJvck1lc3NhZ2VUaXRsZTogczE4bk1lc3NhZ2VUaXRsZSxcblx0XHRcdGVycm9yTWVzc2FnZTogczE4bk1lc3NhZ2UsXG5cdFx0XHRzaG93RXJyb3I6IHRydWVcblx0XHR9KTtcblx0fSxcblx0LyoqXG5cdCAqIENoZWNrcyBpZiBtdWx0aXBsZSB1bml0cyBhcmUgcHJlc2VudC5cblx0ICpcblx0ICogQHBhcmFtIG9Db250ZXh0cyBDb250ZXh0cyBvZiB0aGUgVmlzdWFsRmlsdGVyXG5cdCAqIEBwYXJhbSBzVW5pdGZpZWxkIFRoZSBwYXRoIG9mIHRoZSB1bml0IGZpZWxkXG5cdCAqIEByZXR1cm5zIFJldHVybnMgaWYgbXVsdGlwbGUgdW5pdHMgYXJlIGNvbmZpZ3VyZWQgb3Igbm90XG5cdCAqL1xuXHRjaGVja011bGl0VW5pdDogZnVuY3Rpb24gKG9Db250ZXh0czogQ29udGV4dFtdLCBzVW5pdGZpZWxkOiBzdHJpbmcpIHtcblx0XHRjb25zdCBhRGF0YSA9IFtdO1xuXHRcdGlmIChvQ29udGV4dHMgJiYgc1VuaXRmaWVsZCkge1xuXHRcdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBvQ29udGV4dHMubGVuZ3RoOyBpKyspIHtcblx0XHRcdFx0Y29uc3QgYUNvbnRleHREYXRhID0gb0NvbnRleHRzW2ldICYmIG9Db250ZXh0c1tpXS5nZXRPYmplY3QoKTtcblx0XHRcdFx0YURhdGEucHVzaChhQ29udGV4dERhdGFbc1VuaXRmaWVsZF0pO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRyZXR1cm4gISFhRGF0YS5yZWR1Y2UoZnVuY3Rpb24gKGRhdGE6IGFueSwga2V5OiBhbnkpIHtcblx0XHRcdHJldHVybiBkYXRhID09PSBrZXkgPyBkYXRhIDogTmFOO1xuXHRcdH0pO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBTZXRzIGFuIGVycm9yIG1lc3NhZ2UgaWYgbXVsdGlwbGUgVU9NIGFyZSBwcmVzZW50LlxuXHQgKlxuXHQgKiBAcGFyYW0gb0RhdGEgRGF0YSBvZiB0aGUgVmlzdWFsRmlsdGVyIGNvbnRyb2xcblx0ICogQHBhcmFtIG9JbnRlcmFjdGl2ZUNoYXJ0IEludGVyYWN0aXZlQ2hhcnQgaW4gdGhlIFZpc3VhbEZpbHRlciBjb250cm9sXG5cdCAqIEBwYXJhbSBzSW5mb1BhdGggSW50ZXJuYWwgbW9kZWwgY29udGV4dCBwYXRoIHRvIHN0b3JlIGluZm8uXG5cdCAqIEBwYXJhbSBvUmVzb3VyY2VCdW5kbGUgVGhlIHJlc291cmNlIGJ1bmRsZVxuXHQgKiBAcGFyYW0gb1ZpZXcgSW5zdGFuY2Ugb2YgdGhlIHZpZXdcblx0ICovXG5cdHNldE11bHRpVU9NTWVzc2FnZTogZnVuY3Rpb24gKFxuXHRcdG9EYXRhOiBDb250ZXh0W10sXG5cdFx0b0ludGVyYWN0aXZlQ2hhcnQ6IGFueSxcblx0XHRzSW5mb1BhdGg6IHN0cmluZyxcblx0XHRvUmVzb3VyY2VCdW5kbGU6IFJlc291cmNlQnVuZGxlLFxuXHRcdG9WaWV3OiBWaWV3XG5cdCkge1xuXHRcdGNvbnN0IHZVT00gPSBvSW50ZXJhY3RpdmVDaGFydC5kYXRhKFwidW9tXCIpO1xuXHRcdGNvbnN0IHNJc0N1cnJlbmN5ID0gdlVPTSAmJiB2VU9NW1wiSVNPQ3VycmVuY3lcIl0gJiYgdlVPTVtcIklTT0N1cnJlbmN5XCJdLiRQYXRoO1xuXHRcdGNvbnN0IHNJc1VuaXQgPSB2VU9NICYmIHZVT01bXCJVbml0XCJdICYmIHZVT01bXCJVbml0XCJdLiRQYXRoO1xuXHRcdGNvbnN0IHNVbml0ZmllbGQgPSBzSXNDdXJyZW5jeSB8fCBzSXNVbml0O1xuXHRcdGxldCBzMThuTWVzc2FnZVRpdGxlLCBzMThuTWVzc2FnZTtcblx0XHRpZiAoc1VuaXRmaWVsZCkge1xuXHRcdFx0aWYgKCF0aGlzLmNoZWNrTXVsaXRVbml0KG9EYXRhLCBzVW5pdGZpZWxkKSkge1xuXHRcdFx0XHRpZiAoc0lzQ3VycmVuY3kpIHtcblx0XHRcdFx0XHRzMThuTWVzc2FnZVRpdGxlID0gb1Jlc291cmNlQnVuZGxlLmdldFRleHQoXCJNX1ZJU1VBTF9GSUxURVJTX0VSUk9SX01FU1NBR0VfVElUTEVcIik7XG5cdFx0XHRcdFx0czE4bk1lc3NhZ2UgPSBvUmVzb3VyY2VCdW5kbGUuZ2V0VGV4dChcIk1fVklTVUFMX0ZJTFRFUlNfTVVMVElQTEVfQ1VSUkVOQ1lcIiwgc1VuaXRmaWVsZCk7XG5cdFx0XHRcdFx0dGhpcy5hcHBseUVycm9yTWVzc2FnZUFuZFRpdGxlKHMxOG5NZXNzYWdlVGl0bGUsIHMxOG5NZXNzYWdlLCBzSW5mb1BhdGgsIG9WaWV3KTtcblx0XHRcdFx0XHRMb2cud2FybmluZyhgRmlsdGVyIGlzIHNldCBmb3IgbXVsdGlwbGUgQ3VycmVuY3kgZm9yJHtzVW5pdGZpZWxkfWApO1xuXHRcdFx0XHR9IGVsc2UgaWYgKHNJc1VuaXQpIHtcblx0XHRcdFx0XHRzMThuTWVzc2FnZVRpdGxlID0gb1Jlc291cmNlQnVuZGxlLmdldFRleHQoXCJNX1ZJU1VBTF9GSUxURVJTX0VSUk9SX01FU1NBR0VfVElUTEVcIik7XG5cdFx0XHRcdFx0czE4bk1lc3NhZ2UgPSBvUmVzb3VyY2VCdW5kbGUuZ2V0VGV4dChcIk1fVklTVUFMX0ZJTFRFUlNfTVVMVElQTEVfVU5JVFwiLCBzVW5pdGZpZWxkKTtcblx0XHRcdFx0XHR0aGlzLmFwcGx5RXJyb3JNZXNzYWdlQW5kVGl0bGUoczE4bk1lc3NhZ2VUaXRsZSwgczE4bk1lc3NhZ2UsIHNJbmZvUGF0aCwgb1ZpZXcpO1xuXHRcdFx0XHRcdExvZy53YXJuaW5nKGBGaWx0ZXIgaXMgc2V0IGZvciBtdWx0aXBsZSBVT01zIGZvciR7c1VuaXRmaWVsZH1gKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogU2V0cyBhbiBlcnJvciBtZXNzYWdlIGlmIHJlc3BvbnNlIGRhdGEgaXMgZW1wdHkuXG5cdCAqXG5cdCAqIEBwYXJhbSBzSW5mb1BhdGggSW50ZXJuYWwgbW9kZWwgY29udGV4dCBwYXRoIHRvIHN0b3JlIGluZm8uXG5cdCAqIEBwYXJhbSBvUmVzb3VyY2VCdW5kbGUgVGhlIHJlc291cmNlIGJ1bmRsZVxuXHQgKiBAcGFyYW0gb1ZpZXcgSW5zdGFuY2Ugb2YgdGhlIHZpZXdcblx0ICovXG5cdHNldE5vRGF0YU1lc3NhZ2U6IGZ1bmN0aW9uIChzSW5mb1BhdGg6IHN0cmluZywgb1Jlc291cmNlQnVuZGxlOiBSZXNvdXJjZUJ1bmRsZSwgb1ZpZXc6IFZpZXcpIHtcblx0XHRjb25zdCBzMThuTWVzc2FnZVRpdGxlID0gb1Jlc291cmNlQnVuZGxlLmdldFRleHQoXCJNX1ZJU1VBTF9GSUxURVJTX0VSUk9SX01FU1NBR0VfVElUTEVcIik7XG5cdFx0Y29uc3QgczE4bk1lc3NhZ2UgPSBvUmVzb3VyY2VCdW5kbGUuZ2V0VGV4dChcIk1fVklTVUFMX0ZJTFRFUl9OT19EQVRBX1RFWFRcIik7XG5cdFx0dGhpcy5hcHBseUVycm9yTWVzc2FnZUFuZFRpdGxlKHMxOG5NZXNzYWdlVGl0bGUsIHMxOG5NZXNzYWdlLCBzSW5mb1BhdGgsIG9WaWV3KTtcblx0fSxcblx0Y29udmVydEZpbHRlckNvbmRpb25zOiBmdW5jdGlvbiAob0ZpbHRlckNvbmRpdGlvbnM6IGFueSkge1xuXHRcdGNvbnN0IG9Db252ZXJ0ZWRDb25kaXRpb25zOiBhbnkgPSB7fTtcblx0XHRPYmplY3Qua2V5cyhvRmlsdGVyQ29uZGl0aW9ucykuZm9yRWFjaChmdW5jdGlvbiAoc0tleTogc3RyaW5nKSB7XG5cdFx0XHRjb25zdCBhQ29udmVydGVkQ29uZGl0aW9ucyA9IFtdO1xuXHRcdFx0Y29uc3QgYUNvbmRpdGlvbnMgPSBvRmlsdGVyQ29uZGl0aW9uc1tzS2V5XTtcblx0XHRcdGZvciAobGV0IGkgPSAwOyBpIDwgYUNvbmRpdGlvbnMubGVuZ3RoOyBpKyspIHtcblx0XHRcdFx0Y29uc3QgdmFsdWVzID0gYUNvbmRpdGlvbnNbaV0udmFsdWUyID8gW2FDb25kaXRpb25zW2ldLnZhbHVlMSwgYUNvbmRpdGlvbnNbaV0udmFsdWUyXSA6IFthQ29uZGl0aW9uc1tpXS52YWx1ZTFdO1xuXHRcdFx0XHRhQ29udmVydGVkQ29uZGl0aW9ucy5wdXNoKFxuXHRcdFx0XHRcdENvbmRpdGlvbi5jcmVhdGVDb25kaXRpb24oYUNvbmRpdGlvbnNbaV0ub3BlcmF0b3IsIHZhbHVlcywgbnVsbCwgbnVsbCwgXCJWYWxpZGF0ZWRcIiBhcyBDb25kaXRpb25WYWxpZGF0ZWQpXG5cdFx0XHRcdCk7XG5cdFx0XHR9XG5cdFx0XHRpZiAoYUNvbnZlcnRlZENvbmRpdGlvbnMubGVuZ3RoKSB7XG5cdFx0XHRcdG9Db252ZXJ0ZWRDb25kaXRpb25zW3NLZXldID0gYUNvbnZlcnRlZENvbmRpdGlvbnM7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdFx0cmV0dXJuIG9Db252ZXJ0ZWRDb25kaXRpb25zO1xuXHR9LFxuXHRnZXRDdXN0b21Db25kaXRpb25zOiBmdW5jdGlvbiAoUmFuZ2U6IGFueSwgb1ZhbGlkUHJvcGVydHk6IGFueSwgc1Byb3BlcnR5TmFtZTogYW55KSB7XG5cdFx0bGV0IHZhbHVlMSwgdmFsdWUyO1xuXHRcdGlmIChvVmFsaWRQcm9wZXJ0eS4kVHlwZSA9PT0gXCJFZG0uRGF0ZVRpbWVPZmZzZXRcIikge1xuXHRcdFx0dmFsdWUxID0gdGhpcy5fcGFyc2VEYXRlVGltZShnZXRUeXBlQ29tcGxpYW50VmFsdWUodGhpcy5fZm9ybWF0RGF0ZVRpbWUoUmFuZ2UuTG93KSwgb1ZhbGlkUHJvcGVydHkuJFR5cGUpKTtcblx0XHRcdHZhbHVlMiA9IFJhbmdlLkhpZ2ggPyB0aGlzLl9wYXJzZURhdGVUaW1lKGdldFR5cGVDb21wbGlhbnRWYWx1ZSh0aGlzLl9mb3JtYXREYXRlVGltZShSYW5nZS5IaWdoKSwgb1ZhbGlkUHJvcGVydHkuJFR5cGUpKSA6IG51bGw7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHZhbHVlMSA9IFJhbmdlLkxvdztcblx0XHRcdHZhbHVlMiA9IFJhbmdlLkhpZ2ggPyBSYW5nZS5IaWdoIDogbnVsbDtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdG9wZXJhdG9yOiBSYW5nZS5PcHRpb24gPyBnZXRSYW5nZVByb3BlcnR5KFJhbmdlLk9wdGlvbi4kRW51bU1lbWJlciB8fCBSYW5nZS5PcHRpb24pIDogbnVsbCxcblx0XHRcdHZhbHVlMTogdmFsdWUxLFxuXHRcdFx0dmFsdWUyOiB2YWx1ZTIsXG5cdFx0XHRwYXRoOiBzUHJvcGVydHlOYW1lXG5cdFx0fTtcblx0fSxcblx0X3BhcnNlRGF0ZVRpbWU6IGZ1bmN0aW9uIChzVmFsdWU6IGFueSkge1xuXHRcdHJldHVybiB0aGlzLl9nZXREYXRlVGltZVR5cGVJbnN0YW5jZSgpLnBhcnNlVmFsdWUoc1ZhbHVlLCBcInN0cmluZ1wiKTtcblx0fSxcblx0X2Zvcm1hdERhdGVUaW1lOiBmdW5jdGlvbiAoc1ZhbHVlOiBhbnkpIHtcblx0XHRyZXR1cm4gdGhpcy5fZ2V0RGF0ZVRpbWVUeXBlSW5zdGFuY2UoKS5mb3JtYXRWYWx1ZShzVmFsdWUsIFwic3RyaW5nXCIpO1xuXHR9LFxuXHRfZ2V0RGF0ZVRpbWVUeXBlSW5zdGFuY2U6IGZ1bmN0aW9uICgpIHtcblx0XHRyZXR1cm4gbmV3IERhdGVUaW1lT2Zmc2V0KHsgcGF0dGVybjogXCJ5eXl5LU1NLWRkVEhIOm1tOnNzWlwiLCBjYWxlbmRhclR5cGU6IFwiR3JlZ29yaWFuXCIgfSwgeyBWNDogdHJ1ZSB9KTtcblx0fSxcblxuXHQvKipcblx0ICogR2V0IGVycm9yIGluZm8gd2hlbiByZXF1aXJlZCBpblBhcmFtZXRlcnMgb3IgcmVxdWlyZWQgZmlsdGVycyBhcmUgbm90IGF2YWlsYWJsZS5cblx0ICpcblx0ICogQGZ1bmN0aW9uXG5cdCAqIEBuYW1lIGdldEVycm9ySW5mb0Zvck5vSW5pdGlhbE92ZXJsYXlcblx0ICogQHBhcmFtIG5vdE1hdGNoZWRDb25kaXRpb25zIFByb3BlcnR5IG5hbWVzKGluUGFyYW1ldGVycyBvciByZXF1aXJlZCBmaWx0ZXJzKSBmb3Igd2hpY2ggdmFsdWVzIGFyZSBub3QgYXZhaWxhYmxlIC5cblx0ICogQHBhcmFtIHJlc291cmNlQnVuZGxlIFJlc291cmNlQnVuZGxlIGZvciB0cmFuc2xhdGVkIHRleHRzLlxuXHQgKiBAcGFyYW0gZW50aXR5U2V0UGF0aCBFbnRpdHlTZXQgUGF0aCBmb3IgcHJvcGVydHkgbGFiZWwgYW5ub3RhdGlvbi5cblx0ICogQHBhcmFtIG1ldGFNb2RlbCBEZWZhdWx0IG1ldGFtb2RlbC5cblx0ICogQHJldHVybnMgRXJyb3IgaW5mbyBjb250YWluaW5nIHRleHRzIGZvciB0aXRsZSBhbmQgbWVzc2FnZS5cblx0ICovXG5cdGdldEVycm9ySW5mb0Zvck5vSW5pdGlhbE92ZXJsYXk6IGZ1bmN0aW9uIChcblx0XHRub3RNYXRjaGVkQ29uZGl0aW9uczogc3RyaW5nW10sXG5cdFx0cmVzb3VyY2VCdW5kbGU6IFJlc291cmNlQnVuZGxlLFxuXHRcdGVudGl0eVNldFBhdGg6IHN0cmluZyxcblx0XHRtZXRhTW9kZWw6IE1ldGFNb2RlbFxuXHQpIHtcblx0XHRsZXQgcmV0O1xuXHRcdGlmIChub3RNYXRjaGVkQ29uZGl0aW9ucy5sZW5ndGggPiAxKSB7XG5cdFx0XHRyZXQgPSB7XG5cdFx0XHRcdHNob3dFcnJvcjogdHJ1ZSxcblx0XHRcdFx0ZXJyb3JNZXNzYWdlVGl0bGU6IHJlc291cmNlQnVuZGxlLmdldFRleHQoXCJNX1ZJU1VBTF9GSUxURVJTX0VSUk9SX01FU1NBR0VfVElUTEVcIiksXG5cdFx0XHRcdGVycm9yTWVzc2FnZTogcmVzb3VyY2VCdW5kbGUuZ2V0VGV4dChcIk1fVklTVUFMX0ZJTFRFUlNfUFJPVklERV9GSUxURVJfVkFMX01VTFRJUExFVkZcIilcblx0XHRcdH07XG5cdFx0fSBlbHNlIGlmIChub3RNYXRjaGVkQ29uZGl0aW9ucy5sZW5ndGggPT09IDEpIHtcblx0XHRcdGNvbnN0IGxhYmVsID1cblx0XHRcdFx0KG1ldGFNb2RlbC5nZXRPYmplY3QoYCR7ZW50aXR5U2V0UGF0aH0vJHtub3RNYXRjaGVkQ29uZGl0aW9uc1swXX1AY29tLnNhcC52b2NhYnVsYXJpZXMuQ29tbW9uLnYxLkxhYmVsYCkgYXMgc3RyaW5nKSB8fFxuXHRcdFx0XHRub3RNYXRjaGVkQ29uZGl0aW9uc1swXTtcblx0XHRcdHJldCA9IHtcblx0XHRcdFx0c2hvd0Vycm9yOiB0cnVlLFxuXHRcdFx0XHRlcnJvck1lc3NhZ2VUaXRsZTogcmVzb3VyY2VCdW5kbGUuZ2V0VGV4dChcIk1fVklTVUFMX0ZJTFRFUlNfRVJST1JfTUVTU0FHRV9USVRMRVwiKSxcblx0XHRcdFx0ZXJyb3JNZXNzYWdlOiByZXNvdXJjZUJ1bmRsZS5nZXRUZXh0KFwiTV9WSVNVQUxfRklMVEVSU19QUk9WSURFX0ZJTFRFUl9WQUxfU0lOR0xFVkZcIiwgW2xhYmVsXSlcblx0XHRcdH07XG5cdFx0fVxuXHRcdHJldHVybiByZXQ7XG5cdH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IFZpc3VhbEZpbHRlclV0aWxzO1xuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7RUFhQSxNQUFNQSxpQkFBaUIsR0FBRztJQUN6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
@@ -2,5 +2,5 @@
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
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(e,t,r,n,a){"use strict";var o=t.getTypeCompliantValue;var s=t.getRangeProperty;const i={applyMedianScaleToChartData:function(e,t,r,n){const a=[];const o=e.data("measure");const s=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,o);if(l&&l.iShortRefNumber&&l.scale){s.setProperty(`scalefactor/${n}`,l.scale);s.setProperty(`scalefactorNumber/${n}`,l.iShortRefNumber)}else{s.setProperty(`scalefactor/${n}`,"");s.setProperty(`scalefactorNumber/${n}`,"");const e=t.byId(`${r}::ScaleUoMTitle`);const a=t.byId(`${r}::MeasureDimensionTitle`);const o=e.getText();if(o===" | "){e.setText("");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,o=r%1===0?(parseFloat(e[r-1][t])+parseFloat(e[r][t]))/2:parseFloat(e[Math.floor(r)][t]),s=o;for(n=0;n<14;n++){a=Math.pow(10,n);if(Math.round(Math.abs(s)/a)<10){break}}}const o=r.getIntegerInstance({style:"short",showScale:false,shortRefNumber:a});for(n=0;n<e.length;n++){const r=e[n],s=o.format(r[t]),i=s.split(".");if(!i[1]&&parseInt(i[0],10)===0||i[1]&&parseInt(i[0],10)===0&&i[1].indexOf("0")===0||s/1e3>=1e3){a=undefined;break}}return{iShortRefNumber:a,scale:a?o.getScale():""}},getFormattedNumber:function(e,t,n,a){let o;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){o=r.getFloatInstance({style:"short",showScale:false,shortRefNumber:t,shortDecimals:n});return o.format(parseFloat(e))}else{o=r.getFloatInstance({decimals:n});return o.format(parseFloat(e))}},applyUOMToTitle:function(e,t,r,n){const a=e.data("uom");let o;let s;if(a&&a["ISOCurrency"]){o=a["ISOCurrency"];s=o.$Path?t[o.$Path]:o}else if(a&&a["Unit"]){o=a["Unit"]}if(o){const e=o.$Path?t[o.$Path]:o;const a=r.getBindingContext("internal");a.setProperty(`uom/${n}`,e);if(s){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 o=t.getBindingContext("internal");const s=n.getScale()?n.getScale():"";o.setProperty(`scalefactor/${a}`,s)}},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,o){const s=r.data("uom");const i=s&&s["ISOCurrency"]&&s["ISOCurrency"].$Path;const l=s&&s["Unit"]&&s["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,o);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,o);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 o=e[r];for(let e=0;e<o.length;e++){const t=o[e].value2?[o[e].value1,o[e].value2]:[o[e].value1];a.push(n.createCondition(o[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(o(this._formatDateTime(e.Low),t.$Type));a=e.High?this._parseDateTime(o(this._formatDateTime(e.High),t.$Type)):null}else{n=e.Low;a=e.High?e.High:null}return{operator:e.Option?s(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);
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 o=t.getTypeCompliantValue;var s=t.getRangeProperty;const i={applyMedianScaleToChartData:function(e,t,r,n){const a=[];const o=e.data("measure");const s=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,o);if(l&&l.iShortRefNumber&&l.scale){s.setProperty(`scalefactor/${n}`,l.scale);s.setProperty(`scalefactorNumber/${n}`,l.iShortRefNumber)}else{s.setProperty(`scalefactor/${n}`,"");s.setProperty(`scalefactorNumber/${n}`,"");const e=t.byId(`${r}::ScaleUoMTitle`);const a=t.byId(`${r}::MeasureDimensionTitle`);const o=e.getText();if(o===" | "){e.setText("");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,o=r%1===0?(parseFloat(e[r-1][t])+parseFloat(e[r][t]))/2:parseFloat(e[Math.floor(r)][t]),s=o;for(n=0;n<14;n++){a=Math.pow(10,n);if(Math.round(Math.abs(s)/a)<10){break}}}const o=r.getIntegerInstance({style:"short",showScale:false,shortRefNumber:a});for(n=0;n<e.length;n++){const r=e[n],s=o.format(r[t]),i=s.split(".");if(!i[1]&&parseInt(i[0],10)===0||i[1]&&parseInt(i[0],10)===0&&i[1].indexOf("0")===0||s/1e3>=1e3){a=undefined;break}}return{iShortRefNumber:a,scale:a?o.getScale():""}},getFormattedNumber:function(e,t,n,a){let o;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){o=r.getFloatInstance({style:"short",showScale:false,shortRefNumber:t,shortDecimals:n});return o.format(parseFloat(e))}else{o=r.getFloatInstance({decimals:n});return o.format(parseFloat(e))}},applyUOMToTitle:function(e,t,r,n){const a=e.data("uom");let o;let s;if(a&&a["ISOCurrency"]){o=a["ISOCurrency"];s=o.$Path?t[o.$Path]:o}else if(a&&a["Unit"]){o=a["Unit"]}if(o){const e=o.$Path?t[o.$Path]:o;const a=r.getBindingContext("internal");a.setProperty(`uom/${n}`,e);if(s){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 o=t.getBindingContext("internal");const s=n.getScale()?n.getScale():"";o.setProperty(`scalefactor/${a}`,s)}},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,o){const s=r.data("uom");const i=s&&s["ISOCurrency"]&&s["ISOCurrency"].$Path;const l=s&&s["Unit"]&&s["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,o);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,o);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 o=e[r];for(let e=0;e<o.length;e++){const t=o[e].value2?[o[e].value1,o[e].value2]:[o[e].value1];a.push(n.createCondition(o[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(o(this._formatDateTime(e.Low),t.$Type));a=e.High?this._parseDateTime(o(this._formatDateTime(e.High),t.$Type)):null}else{n=e.Low;a=e.High?e.High:null}return{operator:e.Option?s(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})},getErrorInfoForNoInitialOverlay:function(e,t,r,n){let a;if(e.length>1){a={showError:true,errorMessageTitle:t.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE"),errorMessage:t.getText("M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_MULTIPLEVF")}}else if(e.length===1){const o=n.getObject(`${r}/${e[0]}@com.sap.vocabularies.Common.v1.Label`)||e[0];a={showError:true,errorMessageTitle:t.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE"),errorMessage:t.getText("M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_SINGLEVF",[o])}}return a}};return i},false);
6
6
  //# sourceMappingURL=VisualFilterUtils.js.map
@@ -1 +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","setText","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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"}
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","setText","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","getErrorInfoForNoInitialOverlay","notMatchedConditions","resourceBundle","entitySetPath","metaModel","ret","label"],"sources":["VisualFilterUtils-dbg.js"],"mappings":"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"}
@@ -8,6 +8,7 @@ import type View from "sap/ui/core/mvc/View";
8
8
  import Condition from "sap/ui/mdc/condition/Condition";
9
9
  import type ConditionValidated from "sap/ui/mdc/enum/ConditionValidated";
10
10
  import type Context from "sap/ui/model/Context";
11
+ import MetaModel from "sap/ui/model/MetaModel";
11
12
  import DateTimeOffset from "sap/ui/model/odata/type/DateTimeOffset";
12
13
 
13
14
  const VisualFilterUtils = {
@@ -327,6 +328,43 @@ const VisualFilterUtils = {
327
328
  },
328
329
  _getDateTimeTypeInstance: function () {
329
330
  return new DateTimeOffset({ pattern: "yyyy-MM-ddTHH:mm:ssZ", calendarType: "Gregorian" }, { V4: true });
331
+ },
332
+
333
+ /**
334
+ * Get error info when required inParameters or required filters are not available.
335
+ *
336
+ * @function
337
+ * @name getErrorInfoForNoInitialOverlay
338
+ * @param notMatchedConditions Property names(inParameters or required filters) for which values are not available .
339
+ * @param resourceBundle ResourceBundle for translated texts.
340
+ * @param entitySetPath EntitySet Path for property label annotation.
341
+ * @param metaModel Default metamodel.
342
+ * @returns Error info containing texts for title and message.
343
+ */
344
+ getErrorInfoForNoInitialOverlay: function (
345
+ notMatchedConditions: string[],
346
+ resourceBundle: ResourceBundle,
347
+ entitySetPath: string,
348
+ metaModel: MetaModel
349
+ ) {
350
+ let ret;
351
+ if (notMatchedConditions.length > 1) {
352
+ ret = {
353
+ showError: true,
354
+ errorMessageTitle: resourceBundle.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE"),
355
+ errorMessage: resourceBundle.getText("M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_MULTIPLEVF")
356
+ };
357
+ } else if (notMatchedConditions.length === 1) {
358
+ const label =
359
+ (metaModel.getObject(`${entitySetPath}/${notMatchedConditions[0]}@com.sap.vocabularies.Common.v1.Label`) as string) ||
360
+ notMatchedConditions[0];
361
+ ret = {
362
+ showError: true,
363
+ errorMessageTitle: resourceBundle.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE"),
364
+ errorMessage: resourceBundle.getText("M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_SINGLEVF", [label])
365
+ };
366
+ }
367
+ return ret;
330
368
  }
331
369
  };
332
370