@sapui5/sap.fe.core 1.96.4 → 1.99.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 (253) hide show
  1. package/package.json +6 -5
  2. package/src/sap/fe/core/.library +1 -1
  3. package/src/sap/fe/core/AnnotationHelper.js +377 -405
  4. package/src/sap/fe/core/AnnotationHelper.ts +385 -0
  5. package/src/sap/fe/core/AppComponent.js +5 -3
  6. package/src/sap/fe/core/AppStateHandler.js +229 -195
  7. package/src/sap/fe/core/AppStateHandler.ts +171 -0
  8. package/src/sap/fe/core/BaseController.js +3 -2
  9. package/src/sap/fe/core/BusyLocker.js +105 -121
  10. package/src/sap/fe/core/BusyLocker.ts +98 -0
  11. package/src/sap/fe/core/CommonUtils.js +2073 -2606
  12. package/src/sap/fe/core/CommonUtils.ts +2078 -0
  13. package/src/sap/fe/core/ExtensionAPI.js +16 -7
  14. package/src/sap/fe/core/PageController.js +84 -119
  15. package/src/sap/fe/core/PageController.ts +101 -0
  16. package/src/sap/fe/core/RouterProxy.js +986 -809
  17. package/src/sap/fe/core/RouterProxy.ts +838 -0
  18. package/src/sap/fe/core/Synchronization.js +51 -35
  19. package/src/sap/fe/core/Synchronization.ts +29 -0
  20. package/src/sap/fe/core/TemplateComponent.js +173 -155
  21. package/src/sap/fe/core/TemplateComponent.ts +166 -0
  22. package/src/sap/fe/core/TemplateModel.js +97 -54
  23. package/src/sap/fe/core/TemplateModel.ts +63 -0
  24. package/src/sap/fe/core/TransactionHelper.js +1576 -1627
  25. package/src/sap/fe/core/TransactionHelper.ts +1706 -0
  26. package/src/sap/fe/core/actions/draft.js +559 -581
  27. package/src/sap/fe/core/actions/draft.ts +593 -0
  28. package/src/sap/fe/core/actions/messageHandling.js +545 -435
  29. package/src/sap/fe/core/actions/messageHandling.ts +532 -0
  30. package/src/sap/fe/core/actions/nonDraft.js +17 -19
  31. package/src/sap/fe/core/actions/nonDraft.ts +12 -0
  32. package/src/sap/fe/core/actions/operations.js +1074 -1192
  33. package/src/sap/fe/core/actions/operations.ts +1162 -0
  34. package/src/sap/fe/core/actions/sticky.js +102 -105
  35. package/src/sap/fe/core/actions/sticky.ts +102 -0
  36. package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.js +3 -2
  37. package/src/sap/fe/core/controllerextensions/EditFlow.js +235 -264
  38. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +3 -2
  39. package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +288 -13
  40. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +35 -25
  41. package/src/sap/fe/core/controllerextensions/InternalRouting.js +79 -46
  42. package/src/sap/fe/core/controllerextensions/KPIManagement.js +86 -10
  43. package/src/sap/fe/core/controllerextensions/KPIManagement.ts +109 -31
  44. package/src/sap/fe/core/controllerextensions/MassEdit.js +172 -0
  45. package/src/sap/fe/core/controllerextensions/MessageHandler.js +237 -104
  46. package/src/sap/fe/core/controllerextensions/PageReady.js +3 -3
  47. package/src/sap/fe/core/controllerextensions/PageReady.ts +12 -8
  48. package/src/sap/fe/core/controllerextensions/Paginator.js +37 -9
  49. package/src/sap/fe/core/controllerextensions/Placeholder.js +8 -4
  50. package/src/sap/fe/core/controllerextensions/Routing.js +25 -5
  51. package/src/sap/fe/core/controllerextensions/RoutingListener.js +3 -2
  52. package/src/sap/fe/core/controllerextensions/Share.js +3 -2
  53. package/src/sap/fe/core/controllerextensions/SideEffects.js +9 -9
  54. package/src/sap/fe/core/controllerextensions/SideEffects.ts +22 -21
  55. package/src/sap/fe/core/controllerextensions/ViewState.js +36 -8
  56. package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +2 -1
  57. package/src/sap/fe/core/controls/CommandExecution.js +3 -2
  58. package/src/sap/fe/core/controls/ConditionalWrapper.js +3 -2
  59. package/src/sap/fe/core/controls/CustomQuickViewPage.js +112 -113
  60. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +9 -5
  61. package/src/sap/fe/core/controls/FieldWrapper.js +18 -23
  62. package/src/sap/fe/core/controls/FilterBar.js +3 -2
  63. package/src/sap/fe/core/controls/FormElementWrapper.js +3 -7
  64. package/src/sap/fe/core/controls/MultiValueParameterDelegate.js +3 -2
  65. package/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +2 -1
  66. package/src/sap/fe/core/controls/filterbar/FilterContainer.js +3 -2
  67. package/src/sap/fe/core/controls/filterbar/VisualFilter.js +5 -4
  68. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +3 -2
  69. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +3 -2
  70. package/src/sap/fe/core/controls/massEdit/MassEditDialog.fragment.xml +106 -0
  71. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +79 -0
  72. package/src/sap/fe/core/converters/ConverterContext.js +14 -2
  73. package/src/sap/fe/core/converters/ConverterContext.ts +14 -3
  74. package/src/sap/fe/core/converters/ManifestSettings.js +2 -1
  75. package/src/sap/fe/core/converters/ManifestSettings.ts +8 -1
  76. package/src/sap/fe/core/converters/ManifestWrapper.js +56 -32
  77. package/src/sap/fe/core/converters/ManifestWrapper.ts +24 -6
  78. package/src/sap/fe/core/converters/MetaModelConverter.js +76 -6
  79. package/src/sap/fe/core/converters/MetaModelConverter.ts +79 -15
  80. package/src/sap/fe/core/converters/TemplateConverter.js +1 -1
  81. package/src/sap/fe/core/converters/TemplateConverter.ts +2 -2
  82. package/src/sap/fe/core/converters/annotations/DataField.js +3 -3
  83. package/src/sap/fe/core/converters/annotations/DataField.ts +1 -1
  84. package/src/sap/fe/core/converters/common/AnnotationConverter.js +85 -46
  85. package/src/sap/fe/core/converters/controls/Common/Action.js +16 -4
  86. package/src/sap/fe/core/converters/controls/Common/Action.ts +14 -5
  87. package/src/sap/fe/core/converters/controls/Common/Chart.js +5 -3
  88. package/src/sap/fe/core/converters/controls/Common/Chart.ts +11 -3
  89. package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +3 -3
  90. package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +2 -2
  91. package/src/sap/fe/core/converters/controls/Common/Form.js +60 -19
  92. package/src/sap/fe/core/converters/controls/Common/Form.ts +66 -14
  93. package/src/sap/fe/core/converters/controls/Common/KPI.js +69 -4
  94. package/src/sap/fe/core/converters/controls/Common/KPI.ts +72 -0
  95. package/src/sap/fe/core/converters/controls/Common/Table.js +503 -399
  96. package/src/sap/fe/core/converters/controls/Common/Table.ts +615 -480
  97. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +527 -0
  98. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +655 -0
  99. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +489 -37
  100. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +506 -58
  101. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +2 -2
  102. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +1 -1
  103. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +6 -6
  104. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +9 -15
  105. package/src/sap/fe/core/converters/helpers/Aggregation.js +18 -3
  106. package/src/sap/fe/core/converters/helpers/Aggregation.ts +28 -5
  107. package/src/sap/fe/core/converters/helpers/ID.js +9 -1
  108. package/src/sap/fe/core/converters/helpers/ID.ts +4 -0
  109. package/src/sap/fe/core/converters/helpers/IssueManager.js +7 -1
  110. package/src/sap/fe/core/converters/helpers/IssueManager.ts +6 -0
  111. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +4 -4
  112. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +3 -3
  113. package/src/sap/fe/core/converters/templates/ListReportConverter.js +29 -11
  114. package/src/sap/fe/core/converters/templates/ListReportConverter.ts +36 -20
  115. package/src/sap/fe/core/designtime/AppComponent.designtime.js +13 -3
  116. package/src/sap/fe/core/formatters/CriticalityFormatter.js +1 -1
  117. package/src/sap/fe/core/formatters/CriticalityFormatter.ts +1 -1
  118. package/src/sap/fe/core/formatters/FPMFormatter.js +1 -1
  119. package/src/sap/fe/core/formatters/FPMFormatter.ts +4 -10
  120. package/src/sap/fe/core/formatters/KPIFormatter.js +1 -1
  121. package/src/sap/fe/core/formatters/KPIFormatter.ts +3 -1
  122. package/src/sap/fe/core/formatters/TableFormatter.js +65 -31
  123. package/src/sap/fe/core/formatters/TableFormatter.ts +62 -30
  124. package/src/sap/fe/core/formatters/ValueFormatter.js +30 -5
  125. package/src/sap/fe/core/formatters/ValueFormatter.ts +30 -7
  126. package/src/sap/fe/core/fpm/Component.js +3 -2
  127. package/src/sap/fe/core/helpers/AppStartupHelper.js +359 -0
  128. package/src/sap/fe/core/helpers/AppStartupHelper.ts +391 -0
  129. package/src/sap/fe/core/helpers/BindingExpression.js +479 -464
  130. package/src/sap/fe/core/helpers/BindingExpression.ts +477 -483
  131. package/src/sap/fe/core/helpers/ClassSupport.js +27 -15
  132. package/src/sap/fe/core/helpers/ClassSupport.ts +31 -20
  133. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +63 -59
  134. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.ts +56 -0
  135. package/src/sap/fe/core/helpers/EditState.js +81 -84
  136. package/src/sap/fe/core/helpers/EditState.ts +81 -0
  137. package/src/sap/fe/core/helpers/ExcelFormatHelper.js +62 -48
  138. package/src/sap/fe/core/helpers/ExcelFormatHelper.ts +49 -0
  139. package/src/sap/fe/core/helpers/FPMHelper.js +52 -56
  140. package/src/sap/fe/core/helpers/FPMHelper.ts +62 -0
  141. package/src/sap/fe/core/helpers/KeepAliveHelper.js +210 -0
  142. package/src/sap/fe/core/helpers/KeepAliveHelper.ts +202 -0
  143. package/src/sap/fe/core/helpers/KeepAliveRefreshTypes.js +32 -0
  144. package/src/sap/fe/core/helpers/KeepAliveRefreshTypes.ts +36 -0
  145. package/src/sap/fe/core/helpers/MassEditHelper.js +687 -0
  146. package/src/sap/fe/core/helpers/ModelHelper.js +229 -174
  147. package/src/sap/fe/core/helpers/ModelHelper.ts +227 -0
  148. package/src/sap/fe/core/helpers/PasteHelper.js +210 -132
  149. package/src/sap/fe/core/helpers/PasteHelper.ts +196 -0
  150. package/src/sap/fe/core/helpers/SemanticDateOperators.js +332 -313
  151. package/src/sap/fe/core/helpers/SemanticDateOperators.ts +330 -0
  152. package/src/sap/fe/core/helpers/SemanticKeyHelper.js +66 -67
  153. package/src/sap/fe/core/helpers/SemanticKeyHelper.ts +73 -0
  154. package/src/sap/fe/core/helpers/StableIdHelper.js +4 -7
  155. package/src/sap/fe/core/helpers/StableIdHelper.ts +2 -6
  156. package/src/sap/fe/core/jsx-runtime/jsx.js +1 -1
  157. package/src/sap/fe/core/jsx-runtime/jsx.ts +1 -1
  158. package/src/sap/fe/core/library.js +30 -3
  159. package/src/sap/fe/core/library.support.js +12 -5
  160. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +62 -0
  161. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +66 -0
  162. package/src/sap/fe/core/messagebundle.properties +72 -10
  163. package/src/sap/fe/core/messagebundle_ar.properties +41 -0
  164. package/src/sap/fe/core/messagebundle_bg.properties +41 -0
  165. package/src/sap/fe/core/messagebundle_ca.properties +41 -0
  166. package/src/sap/fe/core/messagebundle_cs.properties +42 -1
  167. package/src/sap/fe/core/messagebundle_cy.properties +41 -0
  168. package/src/sap/fe/core/messagebundle_da.properties +41 -0
  169. package/src/sap/fe/core/messagebundle_de.properties +41 -0
  170. package/src/sap/fe/core/messagebundle_el.properties +41 -0
  171. package/src/sap/fe/core/messagebundle_en.properties +41 -0
  172. package/src/sap/fe/core/messagebundle_en_GB.properties +41 -0
  173. package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +41 -0
  174. package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +35 -0
  175. package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +41 -0
  176. package/src/sap/fe/core/messagebundle_es.properties +41 -0
  177. package/src/sap/fe/core/messagebundle_es_MX.properties +41 -0
  178. package/src/sap/fe/core/messagebundle_et.properties +41 -0
  179. package/src/sap/fe/core/messagebundle_fi.properties +41 -0
  180. package/src/sap/fe/core/messagebundle_fr.properties +46 -5
  181. package/src/sap/fe/core/messagebundle_fr_CA.properties +41 -0
  182. package/src/sap/fe/core/messagebundle_hi.properties +41 -0
  183. package/src/sap/fe/core/messagebundle_hr.properties +41 -0
  184. package/src/sap/fe/core/messagebundle_hu.properties +42 -1
  185. package/src/sap/fe/core/messagebundle_id.properties +45 -4
  186. package/src/sap/fe/core/messagebundle_it.properties +41 -0
  187. package/src/sap/fe/core/messagebundle_iw.properties +41 -0
  188. package/src/sap/fe/core/messagebundle_ja.properties +50 -9
  189. package/src/sap/fe/core/messagebundle_kk.properties +41 -0
  190. package/src/sap/fe/core/messagebundle_ko.properties +41 -0
  191. package/src/sap/fe/core/messagebundle_lt.properties +41 -0
  192. package/src/sap/fe/core/messagebundle_lv.properties +41 -0
  193. package/src/sap/fe/core/messagebundle_ms.properties +41 -0
  194. package/src/sap/fe/core/messagebundle_nl.properties +41 -0
  195. package/src/sap/fe/core/messagebundle_no.properties +41 -0
  196. package/src/sap/fe/core/messagebundle_pl.properties +41 -0
  197. package/src/sap/fe/core/messagebundle_pt.properties +43 -2
  198. package/src/sap/fe/core/messagebundle_pt_PT.properties +41 -0
  199. package/src/sap/fe/core/messagebundle_ro.properties +41 -0
  200. package/src/sap/fe/core/messagebundle_ru.properties +41 -0
  201. package/src/sap/fe/core/messagebundle_sh.properties +41 -0
  202. package/src/sap/fe/core/messagebundle_sk.properties +41 -0
  203. package/src/sap/fe/core/messagebundle_sl.properties +41 -0
  204. package/src/sap/fe/core/messagebundle_sv.properties +42 -1
  205. package/src/sap/fe/core/messagebundle_th.properties +41 -0
  206. package/src/sap/fe/core/messagebundle_tr.properties +41 -0
  207. package/src/sap/fe/core/messagebundle_uk.properties +41 -0
  208. package/src/sap/fe/core/messagebundle_vi.properties +41 -0
  209. package/src/sap/fe/core/messagebundle_zh_CN.properties +41 -0
  210. package/src/sap/fe/core/messagebundle_zh_TW.properties +41 -0
  211. package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +2 -2
  212. package/src/sap/fe/core/services/AsyncComponentServiceFactory.ts +3 -1
  213. package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +269 -202
  214. package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +212 -0
  215. package/src/sap/fe/core/services/EnvironmentServiceFactory.js +4 -3
  216. package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +9 -5
  217. package/src/sap/fe/core/services/NavigationServiceFactory.js +406 -300
  218. package/src/sap/fe/core/services/NavigationServiceFactory.ts +316 -0
  219. package/src/sap/fe/core/services/ResourceModelServiceFactory.js +149 -81
  220. package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +80 -0
  221. package/src/sap/fe/core/services/RoutingServiceFactory.js +987 -1166
  222. package/src/sap/fe/core/services/RoutingServiceFactory.ts +898 -0
  223. package/src/sap/fe/core/services/ShellServicesFactory.js +31 -2
  224. package/src/sap/fe/core/services/ShellServicesFactory.ts +45 -11
  225. package/src/sap/fe/core/services/SideEffectsServiceFactory.js +41 -84
  226. package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +56 -99
  227. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +461 -478
  228. package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +453 -0
  229. package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +10 -8
  230. package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.ts +8 -0
  231. package/src/sap/fe/core/support/AnnotationIssue.support.js +15 -3
  232. package/src/sap/fe/core/support/AnnotationIssue.support.ts +16 -2
  233. package/src/sap/fe/core/support/CollectionFacetUnsupportedLevel.support.js +2 -2
  234. package/src/sap/fe/core/support/CollectionFacetUnsupportedLevel.support.ts +1 -1
  235. package/src/sap/fe/core/support/InvalidAnnotationColumnKey.support.js +38 -0
  236. package/src/sap/fe/core/support/InvalidAnnotationColumnKey.support.ts +18 -0
  237. package/src/sap/fe/core/templating/DataModelPathHelper.js +6 -24
  238. package/src/sap/fe/core/templating/DataModelPathHelper.ts +10 -23
  239. package/src/sap/fe/core/templating/DisplayModeFormatter.js +114 -0
  240. package/src/sap/fe/core/templating/DisplayModeFormatter.ts +86 -0
  241. package/src/sap/fe/core/templating/EntitySetHelper.js +80 -7
  242. package/src/sap/fe/core/templating/EntitySetHelper.ts +42 -2
  243. package/src/sap/fe/core/templating/FieldControlHelper.js +8 -8
  244. package/src/sap/fe/core/templating/FieldControlHelper.ts +25 -7
  245. package/src/sap/fe/core/templating/FilterHelper.js +139 -70
  246. package/src/sap/fe/core/templating/FilterHelper.ts +140 -70
  247. package/src/sap/fe/core/templating/PropertyHelper.js +2 -2
  248. package/src/sap/fe/core/templating/PropertyHelper.ts +1 -1
  249. package/src/sap/fe/core/templating/UIFormatters.js +45 -113
  250. package/src/sap/fe/core/templating/UIFormatters.ts +39 -76
  251. package/src/sap/fe/core/type/Email.js +1 -1
  252. package/src/sap/fe/core/type/Email.ts +4 -6
  253. package/ui5.yaml +0 -3
@@ -48,4 +48,4 @@ sap.ui.define([], function () {
48
48
 
49
49
  return fpmFormatter;
50
50
  }, true);
51
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZQTUZvcm1hdHRlci50cyJdLCJuYW1lcyI6WyJjdXN0b21Jc0VuYWJsZWRDaGVjayIsIm9WaWV3IiwibW9kdWxlUGF0aCIsImFTZWxlY3RlZENvbnRleHRzIiwib0V4dGVuc2lvbkFQSSIsImdldENvbnRyb2xsZXIiLCJnZXRFeHRlbnNpb25BUEkiLCJwYXJ0cyIsInNwbGl0IiwibWV0aG9kTmFtZSIsInBvcCIsIm1vZHVsZU5hbWUiLCJqb2luIiwiUHJvbWlzZSIsInJlc29sdmUiLCJzYXAiLCJ1aSIsInJlcXVpcmUiLCJtb2R1bGUiLCJiaW5kIiwiZ2V0QmluZGluZ0NvbnRleHQiLCJfX2Z1bmN0aW9uTmFtZSIsImZwbUZvcm1hdHRlciIsInNOYW1lIiwiaGFzT3duUHJvcGVydHkiLCJvQXJncyIsImFwcGx5Il0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7O0FBR0EsTUFBTUEsb0JBQW9CLEdBQUcsVUFFNUJDLEtBRjRCLEVBRzVCQyxVQUg0QixFQUk1QkMsaUJBSjRCLEVBS1o7QUFBQTs7QUFDaEIsUUFBTUMsYUFBYSxHQUFJSCxLQUFLLENBQUNJLGFBQU4sRUFBRCxDQUErQkMsZUFBL0IsRUFBdEI7QUFDQSxRQUFNQyxLQUFLLEdBQUdMLFVBQVUsQ0FBQ00sS0FBWCxDQUFpQixHQUFqQixDQUFkO0FBQ0EsUUFBTUMsVUFBVSxHQUFHRixLQUFLLENBQUNHLEdBQU4sRUFBbkI7QUFDQSxRQUFNQyxVQUFVLEdBQUdKLEtBQUssQ0FBQ0ssSUFBTixDQUFXLEdBQVgsQ0FBbkI7QUFFQSxXQUFPLElBQUlDLE9BQUosQ0FBWSxVQUFBQyxPQUFPLEVBQUk7QUFDN0JDLE1BQUFBLEdBQUcsQ0FBQ0MsRUFBSixDQUFPQyxPQUFQLENBQWUsQ0FBQ04sVUFBRCxDQUFmLEVBQTZCLFVBQUNPLE1BQUQsRUFBaUI7QUFDN0NKLFFBQUFBLE9BQU8sQ0FBQ0ksTUFBTSxDQUFDVCxVQUFELENBQU4sQ0FBbUJVLElBQW5CLENBQXdCZixhQUF4QixFQUF1QyxLQUFJLENBQUNnQixpQkFBTCxFQUF2QyxFQUFpRWpCLGlCQUFpQixJQUFJLEVBQXRGLENBQUQsQ0FBUDtBQUNBLE9BRkQ7QUFHQSxLQUpNLENBQVA7QUFLQSxHQWhCRDs7QUFpQkFILEVBQUFBLG9CQUFvQixDQUFDcUIsY0FBckIsR0FBc0MsMERBQXRDO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxNQUFNQyxZQUFZLEdBQUcsVUFBdUJDLEtBQXZCLEVBQTREO0FBQ2hGLFFBQUlELFlBQVksQ0FBQ0UsY0FBYixDQUE0QkQsS0FBNUIsQ0FBSixFQUF3QztBQUFBLHdDQURxQkUsS0FDckI7QUFEcUJBLFFBQUFBLEtBQ3JCO0FBQUE7O0FBQ3ZDLGFBQVFILFlBQUQsQ0FBc0JDLEtBQXRCLEVBQTZCRyxLQUE3QixDQUFtQyxJQUFuQyxFQUF5Q0QsS0FBekMsQ0FBUDtBQUNBLEtBRkQsTUFFTztBQUNOLGFBQU8sRUFBUDtBQUNBO0FBQ0QsR0FORDs7QUFRQUgsRUFBQUEsWUFBWSxDQUFDdEIsb0JBQWIsR0FBb0NBLG9CQUFwQztBQUVBO0FBQ0E7QUFDQTs7U0FDZXNCLFkiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRleHQgfSBmcm9tIFwic2FwL3VpL21vZGVsXCI7XG5pbXBvcnQgeyBNYW5hZ2VkT2JqZWN0IH0gZnJvbSBcInNhcC91aS9iYXNlXCI7XG5pbXBvcnQgeyBWaWV3IH0gZnJvbSBcInNhcC91aS9jb3JlL212Y1wiO1xuaW1wb3J0IHsgT0RhdGFNb2RlbCB9IGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjRcIjtcblxuY29uc3QgY3VzdG9tSXNFbmFibGVkQ2hlY2sgPSBmdW5jdGlvbihcblx0dGhpczogTWFuYWdlZE9iamVjdCxcblx0b1ZpZXc6IFZpZXcsXG5cdG1vZHVsZVBhdGg6IHN0cmluZyxcblx0YVNlbGVjdGVkQ29udGV4dHM6IENvbnRleHQ8T0RhdGFNb2RlbD5bXVxuKTogUHJvbWlzZTx2b2lkPiB7XG5cdGNvbnN0IG9FeHRlbnNpb25BUEkgPSAob1ZpZXcuZ2V0Q29udHJvbGxlcigpIGFzIGFueSkuZ2V0RXh0ZW5zaW9uQVBJKCk7XG5cdGNvbnN0IHBhcnRzID0gbW9kdWxlUGF0aC5zcGxpdChcIi5cIik7XG5cdGNvbnN0IG1ldGhvZE5hbWUgPSBwYXJ0cy5wb3AoKSBhcyBzdHJpbmc7XG5cdGNvbnN0IG1vZHVsZU5hbWUgPSBwYXJ0cy5qb2luKFwiL1wiKTtcblxuXHRyZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG5cdFx0c2FwLnVpLnJlcXVpcmUoW21vZHVsZU5hbWVdLCAobW9kdWxlOiBhbnkpID0+IHtcblx0XHRcdHJlc29sdmUobW9kdWxlW21ldGhvZE5hbWVdLmJpbmQob0V4dGVuc2lvbkFQSSkodGhpcy5nZXRCaW5kaW5nQ29udGV4dCgpLCBhU2VsZWN0ZWRDb250ZXh0cyB8fCBbXSkpO1xuXHRcdH0pO1xuXHR9KTtcbn07XG5jdXN0b21Jc0VuYWJsZWRDaGVjay5fX2Z1bmN0aW9uTmFtZSA9IFwic2FwLmZlLmNvcmUuZm9ybWF0dGVycy5GUE1Gb3JtYXR0ZXIjY3VzdG9tSXNFbmFibGVkQ2hlY2tcIjtcblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIHRhYmxlIGZvcm1hdHRlcnMuXG4gKlxuICogQHBhcmFtIHtvYmplY3R9IHRoaXMgVGhlIGNvbnRleHRcbiAqIEBwYXJhbSB7c3RyaW5nfSBzTmFtZSBUaGUgaW5uZXIgZnVuY3Rpb24gbmFtZVxuICogQHBhcmFtIHtvYmplY3RbXX0gb0FyZ3MgVGhlIGlubmVyIGZ1bmN0aW9uIHBhcmFtZXRlcnNcbiAqIEByZXR1cm5zIHtvYmplY3R9IFRoZSB2YWx1ZSBmcm9tIHRoZSBpbm5lciBmdW5jdGlvblxuICovXG5jb25zdCBmcG1Gb3JtYXR0ZXIgPSBmdW5jdGlvbih0aGlzOiBvYmplY3QsIHNOYW1lOiBzdHJpbmcsIC4uLm9BcmdzOiBhbnlbXSk6IGFueSB7XG5cdGlmIChmcG1Gb3JtYXR0ZXIuaGFzT3duUHJvcGVydHkoc05hbWUpKSB7XG5cdFx0cmV0dXJuIChmcG1Gb3JtYXR0ZXIgYXMgYW55KVtzTmFtZV0uYXBwbHkodGhpcywgb0FyZ3MpO1xuXHR9IGVsc2Uge1xuXHRcdHJldHVybiBcIlwiO1xuXHR9XG59O1xuXG5mcG1Gb3JtYXR0ZXIuY3VzdG9tSXNFbmFibGVkQ2hlY2sgPSBjdXN0b21Jc0VuYWJsZWRDaGVjaztcblxuLyoqXG4gKiBAZ2xvYmFsXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZwbUZvcm1hdHRlcjtcbiJdfQ==
51
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZQTUZvcm1hdHRlci50cyJdLCJuYW1lcyI6WyJjdXN0b21Jc0VuYWJsZWRDaGVjayIsIm9WaWV3IiwibW9kdWxlUGF0aCIsImFTZWxlY3RlZENvbnRleHRzIiwib0V4dGVuc2lvbkFQSSIsImdldENvbnRyb2xsZXIiLCJnZXRFeHRlbnNpb25BUEkiLCJwYXJ0cyIsInNwbGl0IiwibWV0aG9kTmFtZSIsInBvcCIsIm1vZHVsZU5hbWUiLCJqb2luIiwiUHJvbWlzZSIsInJlc29sdmUiLCJzYXAiLCJ1aSIsInJlcXVpcmUiLCJtb2R1bGUiLCJiaW5kIiwiZ2V0QmluZGluZ0NvbnRleHQiLCJfX2Z1bmN0aW9uTmFtZSIsImZwbUZvcm1hdHRlciIsInNOYW1lIiwiaGFzT3duUHJvcGVydHkiLCJvQXJncyIsImFwcGx5Il0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7O0FBRUEsTUFBTUEsb0JBQW9CLEdBQUcsVUFBOEJDLEtBQTlCLEVBQTJDQyxVQUEzQyxFQUErREMsaUJBQS9ELEVBQTRHO0FBQUE7O0FBQ3hJLFFBQU1DLGFBQWEsR0FBSUgsS0FBSyxDQUFDSSxhQUFOLEVBQUQsQ0FBK0JDLGVBQS9CLEVBQXRCO0FBQ0EsUUFBTUMsS0FBSyxHQUFHTCxVQUFVLENBQUNNLEtBQVgsQ0FBaUIsR0FBakIsQ0FBZDtBQUNBLFFBQU1DLFVBQVUsR0FBR0YsS0FBSyxDQUFDRyxHQUFOLEVBQW5CO0FBQ0EsUUFBTUMsVUFBVSxHQUFHSixLQUFLLENBQUNLLElBQU4sQ0FBVyxHQUFYLENBQW5CO0FBRUEsV0FBTyxJQUFJQyxPQUFKLENBQVksVUFBQUMsT0FBTyxFQUFJO0FBQzdCQyxNQUFBQSxHQUFHLENBQUNDLEVBQUosQ0FBT0MsT0FBUCxDQUFlLENBQUNOLFVBQUQsQ0FBZixFQUE2QixVQUFDTyxNQUFELEVBQWlCO0FBQzdDSixRQUFBQSxPQUFPLENBQUNJLE1BQU0sQ0FBQ1QsVUFBRCxDQUFOLENBQW1CVSxJQUFuQixDQUF3QmYsYUFBeEIsRUFBdUMsS0FBSSxDQUFDZ0IsaUJBQUwsRUFBdkMsRUFBaUVqQixpQkFBaUIsSUFBSSxFQUF0RixDQUFELENBQVA7QUFDQSxPQUZEO0FBR0EsS0FKTSxDQUFQO0FBS0EsR0FYRDs7QUFZQUgsRUFBQUEsb0JBQW9CLENBQUNxQixjQUFyQixHQUFzQywwREFBdEM7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUNBLE1BQU1DLFlBQVksR0FBRyxVQUF1QkMsS0FBdkIsRUFBNEQ7QUFDaEYsUUFBSUQsWUFBWSxDQUFDRSxjQUFiLENBQTRCRCxLQUE1QixDQUFKLEVBQXdDO0FBQUEsd0NBRHFCRSxLQUNyQjtBQURxQkEsUUFBQUEsS0FDckI7QUFBQTs7QUFDdkMsYUFBUUgsWUFBRCxDQUFzQkMsS0FBdEIsRUFBNkJHLEtBQTdCLENBQW1DLElBQW5DLEVBQXlDRCxLQUF6QyxDQUFQO0FBQ0EsS0FGRCxNQUVPO0FBQ04sYUFBTyxFQUFQO0FBQ0E7QUFDRCxHQU5EOztBQVFBSCxFQUFBQSxZQUFZLENBQUN0QixvQkFBYixHQUFvQ0Esb0JBQXBDO0FBRUE7QUFDQTtBQUNBOztTQUNlc0IsWSIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE1hbmFnZWRPYmplY3QgZnJvbSBcInNhcC91aS9iYXNlL01hbmFnZWRPYmplY3RcIjtcbmltcG9ydCBWaWV3IGZyb20gXCJzYXAvdWkvY29yZS9tdmMvVmlld1wiO1xuaW1wb3J0IENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9Db250ZXh0XCI7XG5cbmNvbnN0IGN1c3RvbUlzRW5hYmxlZENoZWNrID0gZnVuY3Rpb24odGhpczogTWFuYWdlZE9iamVjdCwgb1ZpZXc6IFZpZXcsIG1vZHVsZVBhdGg6IHN0cmluZywgYVNlbGVjdGVkQ29udGV4dHM6IENvbnRleHRbXSk6IFByb21pc2U8dm9pZD4ge1xuXHRjb25zdCBvRXh0ZW5zaW9uQVBJID0gKG9WaWV3LmdldENvbnRyb2xsZXIoKSBhcyBhbnkpLmdldEV4dGVuc2lvbkFQSSgpO1xuXHRjb25zdCBwYXJ0cyA9IG1vZHVsZVBhdGguc3BsaXQoXCIuXCIpO1xuXHRjb25zdCBtZXRob2ROYW1lID0gcGFydHMucG9wKCkgYXMgc3RyaW5nO1xuXHRjb25zdCBtb2R1bGVOYW1lID0gcGFydHMuam9pbihcIi9cIik7XG5cblx0cmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuXHRcdHNhcC51aS5yZXF1aXJlKFttb2R1bGVOYW1lXSwgKG1vZHVsZTogYW55KSA9PiB7XG5cdFx0XHRyZXNvbHZlKG1vZHVsZVttZXRob2ROYW1lXS5iaW5kKG9FeHRlbnNpb25BUEkpKHRoaXMuZ2V0QmluZGluZ0NvbnRleHQoKSwgYVNlbGVjdGVkQ29udGV4dHMgfHwgW10pKTtcblx0XHR9KTtcblx0fSk7XG59O1xuY3VzdG9tSXNFbmFibGVkQ2hlY2suX19mdW5jdGlvbk5hbWUgPSBcInNhcC5mZS5jb3JlLmZvcm1hdHRlcnMuRlBNRm9ybWF0dGVyI2N1c3RvbUlzRW5hYmxlZENoZWNrXCI7XG5cbi8qKlxuICogQ29sbGVjdGlvbiBvZiB0YWJsZSBmb3JtYXR0ZXJzLlxuICpcbiAqIEBwYXJhbSB7b2JqZWN0fSB0aGlzIFRoZSBjb250ZXh0XG4gKiBAcGFyYW0ge3N0cmluZ30gc05hbWUgVGhlIGlubmVyIGZ1bmN0aW9uIG5hbWVcbiAqIEBwYXJhbSB7b2JqZWN0W119IG9BcmdzIFRoZSBpbm5lciBmdW5jdGlvbiBwYXJhbWV0ZXJzXG4gKiBAcmV0dXJucyB7b2JqZWN0fSBUaGUgdmFsdWUgZnJvbSB0aGUgaW5uZXIgZnVuY3Rpb25cbiAqL1xuY29uc3QgZnBtRm9ybWF0dGVyID0gZnVuY3Rpb24odGhpczogb2JqZWN0LCBzTmFtZTogc3RyaW5nLCAuLi5vQXJnczogYW55W10pOiBhbnkge1xuXHRpZiAoZnBtRm9ybWF0dGVyLmhhc093blByb3BlcnR5KHNOYW1lKSkge1xuXHRcdHJldHVybiAoZnBtRm9ybWF0dGVyIGFzIGFueSlbc05hbWVdLmFwcGx5KHRoaXMsIG9BcmdzKTtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gXCJcIjtcblx0fVxufTtcblxuZnBtRm9ybWF0dGVyLmN1c3RvbUlzRW5hYmxlZENoZWNrID0gY3VzdG9tSXNFbmFibGVkQ2hlY2s7XG5cbi8qKlxuICogQGdsb2JhbFxuICovXG5leHBvcnQgZGVmYXVsdCBmcG1Gb3JtYXR0ZXI7XG4iXX0=
@@ -1,14 +1,8 @@
1
- import { Context } from "sap/ui/model";
2
- import { ManagedObject } from "sap/ui/base";
3
- import { View } from "sap/ui/core/mvc";
4
- import { ODataModel } from "sap/ui/model/odata/v4";
1
+ import ManagedObject from "sap/ui/base/ManagedObject";
2
+ import View from "sap/ui/core/mvc/View";
3
+ import Context from "sap/ui/model/odata/v4/Context";
5
4
 
6
- const customIsEnabledCheck = function(
7
- this: ManagedObject,
8
- oView: View,
9
- modulePath: string,
10
- aSelectedContexts: Context<ODataModel>[]
11
- ): Promise<void> {
5
+ const customIsEnabledCheck = function(this: ManagedObject, oView: View, modulePath: string, aSelectedContexts: Context[]): Promise<void> {
12
6
  const oExtensionAPI = (oView.getController() as any).getExtensionAPI();
13
7
  const parts = modulePath.split(".");
14
8
  const methodName = parts.pop() as string;
@@ -100,4 +100,4 @@ sap.ui.define([], function () {
100
100
 
101
101
  return kpiFormatters;
102
102
  }, true);
103
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIktQSUZvcm1hdHRlci50cyJdLCJuYW1lcyI6WyJsYWJlbEZvcm1hdCIsImtwaVRpdGxlIiwidGl0bGVQYXJ0cyIsInNwbGl0Iiwia3BpTGFiZWwiLCJsZW5ndGgiLCJzdWJzdHJpbmciLCJ0b1VwcGVyQ2FzZSIsIl9fZnVuY3Rpb25OYW1lIiwidG9vbHRpcEZvcm1hdCIsImtwaVZhbHVlIiwia3BpVW5pdCIsImtwaVN0YXR1cyIsImhhc1VuaXQiLCJyZXNCdW5kbGUiLCJzYXAiLCJ1aSIsImdldENvcmUiLCJnZXRMaWJyYXJ5UmVzb3VyY2VCdW5kbGUiLCJtc2dLZXkiLCJhbW91bnRXaXRoVW5pdCIsImdldFRleHQiLCJrcGlGb3JtYXR0ZXJzIiwic05hbWUiLCJoYXNPd25Qcm9wZXJ0eSIsIm9BcmdzIiwiYXBwbHkiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7QUFGQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQSxNQUFNQSxXQUFXLEdBQUcsVUFBU0MsUUFBVCxFQUFtQztBQUN0RCxRQUFJQSxRQUFKLEVBQWM7QUFDYjtBQUNBLFVBQU1DLFVBQVUsR0FBR0QsUUFBUSxDQUFDRSxLQUFULENBQWUsR0FBZixDQUFuQjtBQUVBLFVBQUlDLFFBQUo7O0FBQ0EsVUFBSUYsVUFBVSxDQUFDRyxNQUFYLEtBQXNCLENBQTFCLEVBQTZCO0FBQzVCO0FBQ0FELFFBQUFBLFFBQVEsR0FBR0YsVUFBVSxDQUFDLENBQUQsQ0FBVixDQUFjSSxTQUFkLENBQXdCLENBQXhCLEVBQTJCLENBQTNCLEVBQThCQyxXQUE5QixFQUFYO0FBQ0EsT0FIRCxNQUdPLElBQUlMLFVBQVUsQ0FBQ0csTUFBWCxLQUFzQixDQUExQixFQUE2QjtBQUNuQztBQUNBRCxRQUFBQSxRQUFRLEdBQUcsQ0FBQ0YsVUFBVSxDQUFDLENBQUQsQ0FBVixDQUFjSSxTQUFkLENBQXdCLENBQXhCLEVBQTJCLENBQTNCLElBQWdDSixVQUFVLENBQUMsQ0FBRCxDQUFWLENBQWNJLFNBQWQsQ0FBd0IsQ0FBeEIsRUFBMkIsQ0FBM0IsQ0FBakMsRUFBZ0VDLFdBQWhFLEVBQVg7QUFDQSxPQUhNLE1BR0E7QUFDTjtBQUNBSCxRQUFBQSxRQUFRLEdBQUcsQ0FBQ0YsVUFBVSxDQUFDLENBQUQsQ0FBVixDQUFjSSxTQUFkLENBQXdCLENBQXhCLEVBQTJCLENBQTNCLElBQWdDSixVQUFVLENBQUMsQ0FBRCxDQUFWLENBQWNJLFNBQWQsQ0FBd0IsQ0FBeEIsRUFBMkIsQ0FBM0IsQ0FBaEMsR0FBZ0VKLFVBQVUsQ0FBQyxDQUFELENBQVYsQ0FBY0ksU0FBZCxDQUF3QixDQUF4QixFQUEyQixDQUEzQixDQUFqRSxFQUFnR0MsV0FBaEcsRUFBWDtBQUNBOztBQUVELGFBQU9ILFFBQVA7QUFDQSxLQWpCRCxNQWlCTztBQUNOO0FBQ0EsYUFBTyxFQUFQO0FBQ0E7QUFDRCxHQXRCRDs7QUF1QkFKLEVBQUFBLFdBQVcsQ0FBQ1EsY0FBWixHQUE2QixpREFBN0I7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxNQUFNQyxhQUFhLEdBQUcsVUFBU1IsUUFBVCxFQUEyQlMsUUFBM0IsRUFBNkNDLE9BQTdDLEVBQThEQyxTQUE5RCxFQUFpRkMsT0FBakYsRUFBMEc7QUFDL0gsUUFBTUMsU0FBUyxHQUFHQyxHQUFHLENBQUNDLEVBQUosQ0FBT0MsT0FBUCxHQUFpQkMsd0JBQWpCLENBQTBDLGFBQTFDLENBQWxCO0FBQ0EsUUFBTUMsTUFBTSxHQUFHUCxTQUFTLEdBQUcsbUJBQW1CQSxTQUFTLENBQUNMLFdBQVYsRUFBdEIsR0FBZ0Qsb0JBQXhFO0FBQ0EsUUFBSWEsY0FBSjs7QUFDQSxRQUFJUCxPQUFPLEtBQUssTUFBaEIsRUFBd0I7QUFDdkIsVUFBSSxDQUFDRixPQUFMLEVBQWM7QUFDYjtBQUNBUyxRQUFBQSxjQUFjLEdBQUdOLFNBQVMsQ0FBQ08sT0FBVixDQUFrQixnQ0FBbEIsQ0FBakI7QUFDQSxPQUhELE1BR087QUFDTkQsUUFBQUEsY0FBYyxHQUFHVixRQUFRLEdBQUcsR0FBWCxHQUFpQkMsT0FBbEM7QUFDQTtBQUNELEtBUEQsTUFPTztBQUNOUyxNQUFBQSxjQUFjLEdBQUdWLFFBQWpCO0FBQ0E7O0FBRUQsV0FBT0ksU0FBUyxDQUFDTyxPQUFWLENBQWtCRixNQUFsQixFQUEwQixDQUFDbEIsUUFBRCxFQUFXbUIsY0FBWCxDQUExQixDQUFQO0FBQ0EsR0FoQkQ7O0FBaUJBWCxFQUFBQSxhQUFhLENBQUNELGNBQWQsR0FBK0IsbURBQS9CLEMsQ0FFQTs7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUNBLE1BQU1jLGFBQWEsR0FBRyxVQUF1QkMsS0FBdkIsRUFBNEQ7QUFDakYsUUFBSUQsYUFBYSxDQUFDRSxjQUFkLENBQTZCRCxLQUE3QixDQUFKLEVBQXlDO0FBQUEsd0NBRHFCRSxLQUNyQjtBQURxQkEsUUFBQUEsS0FDckI7QUFBQTs7QUFDeEMsYUFBUUgsYUFBRCxDQUF1QkMsS0FBdkIsRUFBOEJHLEtBQTlCLENBQW9DLElBQXBDLEVBQTBDRCxLQUExQyxDQUFQO0FBQ0EsS0FGRCxNQUVPO0FBQ04sYUFBTyxFQUFQO0FBQ0E7QUFDRCxHQU5EOztBQVFBSCxFQUFBQSxhQUFhLENBQUN0QixXQUFkLEdBQTRCQSxXQUE1QjtBQUNBc0IsRUFBQUEsYUFBYSxDQUFDYixhQUFkLEdBQThCQSxhQUE5QjtBQUVBO0FBQ0E7QUFDQTs7U0FDZWEsYSIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLUEkgbGFiZWwgZm9ybWF0dGluZy5cbiAqIFRoZSBLUEkgbGFiZWwgaXMgYW4gYWJicmV2aWF0aW9uIG9mIHRoZSBjb21wbGV0ZSBnbG9iYWwgS1BJIHRpdGxlLiBJdCBpcyBmb3JtZWQgdXNpbmcgdGhlIGZpcnN0IHRocmVlIGxldHRlcnMgb2YgdGhlIGZpcnN0IHRocmVlIHdvcmRzIG9mIHRoZSBLUEkgdGl0bGUuXG4gKiBJZiB0aGVyZSBpcyBvbmx5IG9uZSB3b3JkIGluIHRoZSBnbG9iYWwgS1BJIHRpdGxlLCB0aGUgZmlyc3QgdGhyZWUgbGV0dGVycyBvZiB0aGUgd29yZCBhcmUgZGlzcGxheWVkLlxuICogSWYgdGhlIEtQSSB0aXRsZSBoYXMgb25seSB0d28gd29yZHMsIG9ubHkgdGhlIGZpcnN0IGxldHRlcnMgb2YgdGhlc2UgdHdvIHdvcmRzIGFyZSBkaXNwbGF5ZWQuXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGtwaVRpdGxlIEtQSSB0aXRsZSB2YWx1ZVxuICogQHJldHVybnMge3N0cmluZ30gVGhlIGZvcm1hdHRlZCBjcml0aWNhbGl0eVxuICovXG5cbmNvbnN0IGxhYmVsRm9ybWF0ID0gZnVuY3Rpb24oa3BpVGl0bGU6IHN0cmluZyk6IHN0cmluZyB7XG5cdGlmIChrcGlUaXRsZSkge1xuXHRcdC8vIFNwbGl0IHRoZSB0aXRsZSBpbiB3b3Jkc1xuXHRcdGNvbnN0IHRpdGxlUGFydHMgPSBrcGlUaXRsZS5zcGxpdChcIiBcIik7XG5cblx0XHRsZXQga3BpTGFiZWw6IHN0cmluZztcblx0XHRpZiAodGl0bGVQYXJ0cy5sZW5ndGggPT09IDEpIHtcblx0XHRcdC8vIE9ubHkgMSB3b3JkIC0tPiBmaXJzdCAzIGNhcGl0YWxpemVkIGxldHRlcnMgb2YgdGhlIHdvcmRcblx0XHRcdGtwaUxhYmVsID0gdGl0bGVQYXJ0c1swXS5zdWJzdHJpbmcoMCwgMykudG9VcHBlckNhc2UoKTtcblx0XHR9IGVsc2UgaWYgKHRpdGxlUGFydHMubGVuZ3RoID09PSAyKSB7XG5cdFx0XHQvLyAyIHdvcmRzIC0tPiBmaXJzdCBjYXBpdGFsaXplZCBsZXR0ZXJzIG9mIHRoZXNlIHR3byB3b3Jkc1xuXHRcdFx0a3BpTGFiZWwgPSAodGl0bGVQYXJ0c1swXS5zdWJzdHJpbmcoMCwgMSkgKyB0aXRsZVBhcnRzWzFdLnN1YnN0cmluZygwLCAxKSkudG9VcHBlckNhc2UoKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0Ly8gMyB3b3JkcyBvciBtb3JlIC0tPiBmaXJzdCBjYXBpdGFsaXplZCBsZXR0ZXJzIG9mIHRoZSBmaXJzdCAzIHdvcmRzXG5cdFx0XHRrcGlMYWJlbCA9ICh0aXRsZVBhcnRzWzBdLnN1YnN0cmluZygwLCAxKSArIHRpdGxlUGFydHNbMV0uc3Vic3RyaW5nKDAsIDEpICsgdGl0bGVQYXJ0c1syXS5zdWJzdHJpbmcoMCwgMSkpLnRvVXBwZXJDYXNlKCk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIGtwaUxhYmVsO1xuXHR9IGVsc2Uge1xuXHRcdC8vIE5vIEtQSSB0aXRsZSAtLT4gbm8gbGFiZWxcblx0XHRyZXR1cm4gXCJcIjtcblx0fVxufTtcbmxhYmVsRm9ybWF0Ll9fZnVuY3Rpb25OYW1lID0gXCJzYXAuZmUuY29yZS5mb3JtYXR0ZXJzLktQSUZvcm1hdHRlciNsYWJlbEZvcm1hdFwiO1xuXG4vKipcbiAqIEtQSSB0b29sdGlwIGZvcm1hdHRpbmcuXG4gKlxuICogQHBhcmFtIGtwaVRpdGxlIEtQSSB0aXRsZVxuICogQHBhcmFtIGtwaVZhbHVlIEtQSSB2YWx1ZVxuICogQHBhcmFtIGtwaVVuaXQgS1BJIHVuaXQgb3IgY3VycmVuY3kgKGNhbiBiZSB1bmRlZmluZWQpXG4gKiBAcGFyYW0ga3BpU3RhdHVzIEtQSSBzdGF0dXNcbiAqIEBwYXJhbSBoYXNVbml0IElzIFwidHJ1ZVwiIGlmIHRoZSBLUEkgdmFsdWUgaGFzIGEgdW5pdCBvciBhIGN1cnJlbmN5XG4gKiBAcmV0dXJucyBSZXR1cm5zIHRoZSB0ZXh0IGZvciB0aGUgS1BJIHRvb2x0aXAuXG4gKi9cbmNvbnN0IHRvb2x0aXBGb3JtYXQgPSBmdW5jdGlvbihrcGlUaXRsZTogc3RyaW5nLCBrcGlWYWx1ZTogc3RyaW5nLCBrcGlVbml0OiBzdHJpbmcsIGtwaVN0YXR1czogc3RyaW5nLCBoYXNVbml0OiBzdHJpbmcpOiBzdHJpbmcge1xuXHRjb25zdCByZXNCdW5kbGUgPSBzYXAudWkuZ2V0Q29yZSgpLmdldExpYnJhcnlSZXNvdXJjZUJ1bmRsZShcInNhcC5mZS5jb3JlXCIpO1xuXHRjb25zdCBtc2dLZXkgPSBrcGlTdGF0dXMgPyBcIkNfS1BJX1RPT0xUSVBfXCIgKyBrcGlTdGF0dXMudG9VcHBlckNhc2UoKSA6IFwiQ19LUElfVE9PTFRJUF9OT05FXCI7XG5cdGxldCBhbW91bnRXaXRoVW5pdDogc3RyaW5nO1xuXHRpZiAoaGFzVW5pdCA9PT0gXCJ0cnVlXCIpIHtcblx0XHRpZiAoIWtwaVVuaXQpIHtcblx0XHRcdC8vIE5vIHVuaXQgbWVhbnMgbXVsdGktdW5pdCBzaXR1YXRpb25cblx0XHRcdGFtb3VudFdpdGhVbml0ID0gcmVzQnVuZGxlLmdldFRleHQoXCJDX0tQSV9UT09MVElQX0FNT1VOVF9NVUxUSVVOSVRcIik7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGFtb3VudFdpdGhVbml0ID0ga3BpVmFsdWUgKyBcIiBcIiArIGtwaVVuaXQ7XG5cdFx0fVxuXHR9IGVsc2Uge1xuXHRcdGFtb3VudFdpdGhVbml0ID0ga3BpVmFsdWU7XG5cdH1cblxuXHRyZXR1cm4gcmVzQnVuZGxlLmdldFRleHQobXNnS2V5LCBba3BpVGl0bGUsIGFtb3VudFdpdGhVbml0XSk7XG59O1xudG9vbHRpcEZvcm1hdC5fX2Z1bmN0aW9uTmFtZSA9IFwic2FwLmZlLmNvcmUuZm9ybWF0dGVycy5LUElGb3JtYXR0ZXIjdG9vbHRpcEZvcm1hdFwiO1xuXG4vLyBTZWUgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svZnVuY3Rpb25zLmh0bWwjdGhpcy1wYXJhbWV0ZXJzIGZvciBtb3JlIGRldGFpbCBvbiB0aGlzIHdlaXJkIHN5bnRheFxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIHRhYmxlIGZvcm1hdHRlcnMuXG4gKlxuICogQHBhcmFtIHtvYmplY3R9IHRoaXMgVGhlIGNvbnRleHRcbiAqIEBwYXJhbSB7c3RyaW5nfSBzTmFtZSBUaGUgaW5uZXIgZnVuY3Rpb24gbmFtZVxuICogQHBhcmFtIHtvYmplY3RbXX0gb0FyZ3MgVGhlIGlubmVyIGZ1bmN0aW9uIHBhcmFtZXRlcnNcbiAqIEByZXR1cm5zIHtvYmplY3R9IFRoZSB2YWx1ZSBmcm9tIHRoZSBpbm5lciBmdW5jdGlvblxuICovXG5jb25zdCBrcGlGb3JtYXR0ZXJzID0gZnVuY3Rpb24odGhpczogb2JqZWN0LCBzTmFtZTogc3RyaW5nLCAuLi5vQXJnczogYW55W10pOiBhbnkge1xuXHRpZiAoa3BpRm9ybWF0dGVycy5oYXNPd25Qcm9wZXJ0eShzTmFtZSkpIHtcblx0XHRyZXR1cm4gKGtwaUZvcm1hdHRlcnMgYXMgYW55KVtzTmFtZV0uYXBwbHkodGhpcywgb0FyZ3MpO1xuXHR9IGVsc2Uge1xuXHRcdHJldHVybiBcIlwiO1xuXHR9XG59O1xuXG5rcGlGb3JtYXR0ZXJzLmxhYmVsRm9ybWF0ID0gbGFiZWxGb3JtYXQ7XG5rcGlGb3JtYXR0ZXJzLnRvb2x0aXBGb3JtYXQgPSB0b29sdGlwRm9ybWF0O1xuXG4vKipcbiAqIEBnbG9iYWxcbiAqL1xuZXhwb3J0IGRlZmF1bHQga3BpRm9ybWF0dGVycztcbiJdfQ==
103
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIktQSUZvcm1hdHRlci50cyJdLCJuYW1lcyI6WyJsYWJlbEZvcm1hdCIsImtwaVRpdGxlIiwidGl0bGVQYXJ0cyIsInNwbGl0Iiwia3BpTGFiZWwiLCJsZW5ndGgiLCJzdWJzdHJpbmciLCJ0b1VwcGVyQ2FzZSIsIl9fZnVuY3Rpb25OYW1lIiwidG9vbHRpcEZvcm1hdCIsImtwaVZhbHVlIiwia3BpVW5pdCIsImtwaVN0YXR1cyIsImhhc1VuaXQiLCJyZXNCdW5kbGUiLCJzYXAiLCJ1aSIsImdldENvcmUiLCJnZXRMaWJyYXJ5UmVzb3VyY2VCdW5kbGUiLCJtc2dLZXkiLCJhbW91bnRXaXRoVW5pdCIsImdldFRleHQiLCJrcGlGb3JtYXR0ZXJzIiwic05hbWUiLCJoYXNPd25Qcm9wZXJ0eSIsIm9BcmdzIiwiYXBwbHkiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7QUFGQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFJQSxNQUFNQSxXQUFXLEdBQUcsVUFBU0MsUUFBVCxFQUFtQztBQUN0RCxRQUFJQSxRQUFKLEVBQWM7QUFDYjtBQUNBLFVBQU1DLFVBQVUsR0FBR0QsUUFBUSxDQUFDRSxLQUFULENBQWUsR0FBZixDQUFuQjtBQUVBLFVBQUlDLFFBQUo7O0FBQ0EsVUFBSUYsVUFBVSxDQUFDRyxNQUFYLEtBQXNCLENBQTFCLEVBQTZCO0FBQzVCO0FBQ0FELFFBQUFBLFFBQVEsR0FBR0YsVUFBVSxDQUFDLENBQUQsQ0FBVixDQUFjSSxTQUFkLENBQXdCLENBQXhCLEVBQTJCLENBQTNCLEVBQThCQyxXQUE5QixFQUFYO0FBQ0EsT0FIRCxNQUdPLElBQUlMLFVBQVUsQ0FBQ0csTUFBWCxLQUFzQixDQUExQixFQUE2QjtBQUNuQztBQUNBRCxRQUFBQSxRQUFRLEdBQUcsQ0FBQ0YsVUFBVSxDQUFDLENBQUQsQ0FBVixDQUFjSSxTQUFkLENBQXdCLENBQXhCLEVBQTJCLENBQTNCLElBQWdDSixVQUFVLENBQUMsQ0FBRCxDQUFWLENBQWNJLFNBQWQsQ0FBd0IsQ0FBeEIsRUFBMkIsQ0FBM0IsQ0FBakMsRUFBZ0VDLFdBQWhFLEVBQVg7QUFDQSxPQUhNLE1BR0E7QUFDTjtBQUNBSCxRQUFBQSxRQUFRLEdBQUcsQ0FBQ0YsVUFBVSxDQUFDLENBQUQsQ0FBVixDQUFjSSxTQUFkLENBQXdCLENBQXhCLEVBQTJCLENBQTNCLElBQWdDSixVQUFVLENBQUMsQ0FBRCxDQUFWLENBQWNJLFNBQWQsQ0FBd0IsQ0FBeEIsRUFBMkIsQ0FBM0IsQ0FBaEMsR0FBZ0VKLFVBQVUsQ0FBQyxDQUFELENBQVYsQ0FBY0ksU0FBZCxDQUF3QixDQUF4QixFQUEyQixDQUEzQixDQUFqRSxFQUFnR0MsV0FBaEcsRUFBWDtBQUNBOztBQUVELGFBQU9ILFFBQVA7QUFDQSxLQWpCRCxNQWlCTztBQUNOO0FBQ0EsYUFBTyxFQUFQO0FBQ0E7QUFDRCxHQXRCRDs7QUF1QkFKLEVBQUFBLFdBQVcsQ0FBQ1EsY0FBWixHQUE2QixpREFBN0I7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxNQUFNQyxhQUFhLEdBQUcsVUFBU1IsUUFBVCxFQUEyQlMsUUFBM0IsRUFBNkNDLE9BQTdDLEVBQThEQyxTQUE5RCxFQUFpRkMsT0FBakYsRUFBMEc7QUFDL0gsUUFBTUMsU0FBUyxHQUFHQyxHQUFHLENBQUNDLEVBQUosQ0FBT0MsT0FBUCxHQUFpQkMsd0JBQWpCLENBQTBDLGFBQTFDLENBQWxCO0FBQ0EsUUFBTUMsTUFBTSxHQUFHUCxTQUFTLEdBQUcsbUJBQW1CQSxTQUFTLENBQUNMLFdBQVYsRUFBdEIsR0FBZ0Qsb0JBQXhFO0FBQ0EsUUFBSWEsY0FBSjs7QUFDQSxRQUFJUCxPQUFPLEtBQUssTUFBaEIsRUFBd0I7QUFDdkIsVUFBSSxDQUFDRixPQUFMLEVBQWM7QUFDYjtBQUNBUyxRQUFBQSxjQUFjLEdBQUdOLFNBQVMsQ0FBQ08sT0FBVixDQUFrQixnQ0FBbEIsQ0FBakI7QUFDQSxPQUhELE1BR087QUFDTkQsUUFBQUEsY0FBYyxHQUFHVixRQUFRLEdBQUcsR0FBWCxHQUFpQkMsT0FBbEM7QUFDQTtBQUNELEtBUEQsTUFPTztBQUNOUyxNQUFBQSxjQUFjLEdBQUdWLFFBQWpCO0FBQ0E7O0FBRUQsV0FBT0ksU0FBUyxDQUFDTyxPQUFWLENBQWtCRixNQUFsQixFQUEwQixDQUFDbEIsUUFBRCxFQUFXbUIsY0FBWCxDQUExQixDQUFQO0FBQ0EsR0FoQkQ7O0FBaUJBWCxFQUFBQSxhQUFhLENBQUNELGNBQWQsR0FBK0IsbURBQS9CLEMsQ0FFQTs7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUNBLE1BQU1jLGFBQWEsR0FBRyxVQUF1QkMsS0FBdkIsRUFBNEQ7QUFDakYsUUFBSUQsYUFBYSxDQUFDRSxjQUFkLENBQTZCRCxLQUE3QixDQUFKLEVBQXlDO0FBQUEsd0NBRHFCRSxLQUNyQjtBQURxQkEsUUFBQUEsS0FDckI7QUFBQTs7QUFDeEMsYUFBUUgsYUFBRCxDQUF1QkMsS0FBdkIsRUFBOEJHLEtBQTlCLENBQW9DLElBQXBDLEVBQTBDRCxLQUExQyxDQUFQO0FBQ0EsS0FGRCxNQUVPO0FBQ04sYUFBTyxFQUFQO0FBQ0E7QUFDRCxHQU5EOztBQVFBSCxFQUFBQSxhQUFhLENBQUN0QixXQUFkLEdBQTRCQSxXQUE1QjtBQUNBc0IsRUFBQUEsYUFBYSxDQUFDYixhQUFkLEdBQThCQSxhQUE5QjtBQUVBO0FBQ0E7QUFDQTs7U0FDZWEsYSIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLUEkgbGFiZWwgZm9ybWF0dGluZy5cbiAqIFRoZSBLUEkgbGFiZWwgaXMgYW4gYWJicmV2aWF0aW9uIG9mIHRoZSBjb21wbGV0ZSBnbG9iYWwgS1BJIHRpdGxlLiBJdCBpcyBmb3JtZWQgdXNpbmcgdGhlIGZpcnN0IHRocmVlIGxldHRlcnMgb2YgdGhlIGZpcnN0IHRocmVlIHdvcmRzIG9mIHRoZSBLUEkgdGl0bGUuXG4gKiBJZiB0aGVyZSBpcyBvbmx5IG9uZSB3b3JkIGluIHRoZSBnbG9iYWwgS1BJIHRpdGxlLCB0aGUgZmlyc3QgdGhyZWUgbGV0dGVycyBvZiB0aGUgd29yZCBhcmUgZGlzcGxheWVkLlxuICogSWYgdGhlIEtQSSB0aXRsZSBoYXMgb25seSB0d28gd29yZHMsIG9ubHkgdGhlIGZpcnN0IGxldHRlcnMgb2YgdGhlc2UgdHdvIHdvcmRzIGFyZSBkaXNwbGF5ZWQuXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGtwaVRpdGxlIEtQSSB0aXRsZSB2YWx1ZVxuICogQHJldHVybnMge3N0cmluZ30gVGhlIGZvcm1hdHRlZCBjcml0aWNhbGl0eVxuICovXG5cbmltcG9ydCBSZXNvdXJjZUJ1bmRsZSBmcm9tIFwic2FwL2Jhc2UvaTE4bi9SZXNvdXJjZUJ1bmRsZVwiO1xuXG5jb25zdCBsYWJlbEZvcm1hdCA9IGZ1bmN0aW9uKGtwaVRpdGxlOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRpZiAoa3BpVGl0bGUpIHtcblx0XHQvLyBTcGxpdCB0aGUgdGl0bGUgaW4gd29yZHNcblx0XHRjb25zdCB0aXRsZVBhcnRzID0ga3BpVGl0bGUuc3BsaXQoXCIgXCIpO1xuXG5cdFx0bGV0IGtwaUxhYmVsOiBzdHJpbmc7XG5cdFx0aWYgKHRpdGxlUGFydHMubGVuZ3RoID09PSAxKSB7XG5cdFx0XHQvLyBPbmx5IDEgd29yZCAtLT4gZmlyc3QgMyBjYXBpdGFsaXplZCBsZXR0ZXJzIG9mIHRoZSB3b3JkXG5cdFx0XHRrcGlMYWJlbCA9IHRpdGxlUGFydHNbMF0uc3Vic3RyaW5nKDAsIDMpLnRvVXBwZXJDYXNlKCk7XG5cdFx0fSBlbHNlIGlmICh0aXRsZVBhcnRzLmxlbmd0aCA9PT0gMikge1xuXHRcdFx0Ly8gMiB3b3JkcyAtLT4gZmlyc3QgY2FwaXRhbGl6ZWQgbGV0dGVycyBvZiB0aGVzZSB0d28gd29yZHNcblx0XHRcdGtwaUxhYmVsID0gKHRpdGxlUGFydHNbMF0uc3Vic3RyaW5nKDAsIDEpICsgdGl0bGVQYXJ0c1sxXS5zdWJzdHJpbmcoMCwgMSkpLnRvVXBwZXJDYXNlKCk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdC8vIDMgd29yZHMgb3IgbW9yZSAtLT4gZmlyc3QgY2FwaXRhbGl6ZWQgbGV0dGVycyBvZiB0aGUgZmlyc3QgMyB3b3Jkc1xuXHRcdFx0a3BpTGFiZWwgPSAodGl0bGVQYXJ0c1swXS5zdWJzdHJpbmcoMCwgMSkgKyB0aXRsZVBhcnRzWzFdLnN1YnN0cmluZygwLCAxKSArIHRpdGxlUGFydHNbMl0uc3Vic3RyaW5nKDAsIDEpKS50b1VwcGVyQ2FzZSgpO1xuXHRcdH1cblxuXHRcdHJldHVybiBrcGlMYWJlbDtcblx0fSBlbHNlIHtcblx0XHQvLyBObyBLUEkgdGl0bGUgLS0+IG5vIGxhYmVsXG5cdFx0cmV0dXJuIFwiXCI7XG5cdH1cbn07XG5sYWJlbEZvcm1hdC5fX2Z1bmN0aW9uTmFtZSA9IFwic2FwLmZlLmNvcmUuZm9ybWF0dGVycy5LUElGb3JtYXR0ZXIjbGFiZWxGb3JtYXRcIjtcblxuLyoqXG4gKiBLUEkgdG9vbHRpcCBmb3JtYXR0aW5nLlxuICpcbiAqIEBwYXJhbSBrcGlUaXRsZSBLUEkgdGl0bGVcbiAqIEBwYXJhbSBrcGlWYWx1ZSBLUEkgdmFsdWVcbiAqIEBwYXJhbSBrcGlVbml0IEtQSSB1bml0IG9yIGN1cnJlbmN5IChjYW4gYmUgdW5kZWZpbmVkKVxuICogQHBhcmFtIGtwaVN0YXR1cyBLUEkgc3RhdHVzXG4gKiBAcGFyYW0gaGFzVW5pdCBJcyBcInRydWVcIiBpZiB0aGUgS1BJIHZhbHVlIGhhcyBhIHVuaXQgb3IgYSBjdXJyZW5jeVxuICogQHJldHVybnMgUmV0dXJucyB0aGUgdGV4dCBmb3IgdGhlIEtQSSB0b29sdGlwLlxuICovXG5jb25zdCB0b29sdGlwRm9ybWF0ID0gZnVuY3Rpb24oa3BpVGl0bGU6IHN0cmluZywga3BpVmFsdWU6IHN0cmluZywga3BpVW5pdDogc3RyaW5nLCBrcGlTdGF0dXM6IHN0cmluZywgaGFzVW5pdDogc3RyaW5nKTogc3RyaW5nIHtcblx0Y29uc3QgcmVzQnVuZGxlID0gc2FwLnVpLmdldENvcmUoKS5nZXRMaWJyYXJ5UmVzb3VyY2VCdW5kbGUoXCJzYXAuZmUuY29yZVwiKSBhcyBSZXNvdXJjZUJ1bmRsZTtcblx0Y29uc3QgbXNnS2V5ID0ga3BpU3RhdHVzID8gXCJDX0tQSV9UT09MVElQX1wiICsga3BpU3RhdHVzLnRvVXBwZXJDYXNlKCkgOiBcIkNfS1BJX1RPT0xUSVBfTk9ORVwiO1xuXHRsZXQgYW1vdW50V2l0aFVuaXQ6IHN0cmluZztcblx0aWYgKGhhc1VuaXQgPT09IFwidHJ1ZVwiKSB7XG5cdFx0aWYgKCFrcGlVbml0KSB7XG5cdFx0XHQvLyBObyB1bml0IG1lYW5zIG11bHRpLXVuaXQgc2l0dWF0aW9uXG5cdFx0XHRhbW91bnRXaXRoVW5pdCA9IHJlc0J1bmRsZS5nZXRUZXh0KFwiQ19LUElfVE9PTFRJUF9BTU9VTlRfTVVMVElVTklUXCIpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRhbW91bnRXaXRoVW5pdCA9IGtwaVZhbHVlICsgXCIgXCIgKyBrcGlVbml0O1xuXHRcdH1cblx0fSBlbHNlIHtcblx0XHRhbW91bnRXaXRoVW5pdCA9IGtwaVZhbHVlO1xuXHR9XG5cblx0cmV0dXJuIHJlc0J1bmRsZS5nZXRUZXh0KG1zZ0tleSwgW2twaVRpdGxlLCBhbW91bnRXaXRoVW5pdF0pO1xufTtcbnRvb2x0aXBGb3JtYXQuX19mdW5jdGlvbk5hbWUgPSBcInNhcC5mZS5jb3JlLmZvcm1hdHRlcnMuS1BJRm9ybWF0dGVyI3Rvb2x0aXBGb3JtYXRcIjtcblxuLy8gU2VlIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rL2Z1bmN0aW9ucy5odG1sI3RoaXMtcGFyYW1ldGVycyBmb3IgbW9yZSBkZXRhaWwgb24gdGhpcyB3ZWlyZCBzeW50YXhcbi8qKlxuICogQ29sbGVjdGlvbiBvZiB0YWJsZSBmb3JtYXR0ZXJzLlxuICpcbiAqIEBwYXJhbSB7b2JqZWN0fSB0aGlzIFRoZSBjb250ZXh0XG4gKiBAcGFyYW0ge3N0cmluZ30gc05hbWUgVGhlIGlubmVyIGZ1bmN0aW9uIG5hbWVcbiAqIEBwYXJhbSB7b2JqZWN0W119IG9BcmdzIFRoZSBpbm5lciBmdW5jdGlvbiBwYXJhbWV0ZXJzXG4gKiBAcmV0dXJucyB7b2JqZWN0fSBUaGUgdmFsdWUgZnJvbSB0aGUgaW5uZXIgZnVuY3Rpb25cbiAqL1xuY29uc3Qga3BpRm9ybWF0dGVycyA9IGZ1bmN0aW9uKHRoaXM6IG9iamVjdCwgc05hbWU6IHN0cmluZywgLi4ub0FyZ3M6IGFueVtdKTogYW55IHtcblx0aWYgKGtwaUZvcm1hdHRlcnMuaGFzT3duUHJvcGVydHkoc05hbWUpKSB7XG5cdFx0cmV0dXJuIChrcGlGb3JtYXR0ZXJzIGFzIGFueSlbc05hbWVdLmFwcGx5KHRoaXMsIG9BcmdzKTtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gXCJcIjtcblx0fVxufTtcblxua3BpRm9ybWF0dGVycy5sYWJlbEZvcm1hdCA9IGxhYmVsRm9ybWF0O1xua3BpRm9ybWF0dGVycy50b29sdGlwRm9ybWF0ID0gdG9vbHRpcEZvcm1hdDtcblxuLyoqXG4gKiBAZ2xvYmFsXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGtwaUZvcm1hdHRlcnM7XG4iXX0=
@@ -8,6 +8,8 @@
8
8
  * @returns {string} The formatted criticality
9
9
  */
10
10
 
11
+ import ResourceBundle from "sap/base/i18n/ResourceBundle";
12
+
11
13
  const labelFormat = function(kpiTitle: string): string {
12
14
  if (kpiTitle) {
13
15
  // Split the title in words
@@ -44,7 +46,7 @@ labelFormat.__functionName = "sap.fe.core.formatters.KPIFormatter#labelFormat";
44
46
  * @returns Returns the text for the KPI tooltip.
45
47
  */
46
48
  const tooltipFormat = function(kpiTitle: string, kpiValue: string, kpiUnit: string, kpiStatus: string, hasUnit: string): string {
47
- const resBundle = sap.ui.getCore().getLibraryResourceBundle("sap.fe.core");
49
+ const resBundle = sap.ui.getCore().getLibraryResourceBundle("sap.fe.core") as ResourceBundle;
48
50
  const msgKey = kpiStatus ? "C_KPI_TOOLTIP_" + kpiStatus.toUpperCase() : "C_KPI_TOOLTIP_NONE";
49
51
  let amountWithUnit: string;
50
52
  if (hasUnit === "true") {
@@ -7,60 +7,94 @@ sap.ui.define(["sap/fe/core/formatters/TableFormatterTypes"], function (TableFor
7
7
 
8
8
  var MessageType = TableFormatterTypes.MessageType;
9
9
 
10
+ var getMessagetypeOrder = function (messageType) {
11
+ switch (messageType) {
12
+ case "Error":
13
+ return 4;
14
+
15
+ case "Warning":
16
+ return 3;
17
+
18
+ case "Information":
19
+ return 2;
20
+
21
+ case "None":
22
+ return 1;
23
+
24
+ default:
25
+ return -1;
26
+ }
27
+ };
10
28
  /**
11
29
  * rowHighlighting
12
30
  *
13
31
  * @param {object} this The context
14
- * @param {string|number} CriticalityValue criticality value
15
- * @param {number} messageLastUpdate Timestamp of the last message created, It's defined as input value but it is not used in the body of the function
32
+ * @param {string|number} CriticalityValue The criticality value
33
+ * @param {number} messageLastUpdate Timestamp of the last message that was created. It's defined as an input value, but not used in the body of the function
16
34
  * It is used to refresh the formatting of the table each time a new message is updated
17
35
  * @returns {object} The value from the inner function
18
36
  */
19
- var rowHighlighting = function (criticalityValue, aFilteredMessages) {
20
- if (aFilteredMessages) {
21
- var sCurrentContextPath = this.getBindingContext() ? this.getBindingContext().getPath() : undefined;
37
+
38
+
39
+ var rowHighlighting = function (criticalityValue, aFilteredMessages, hasActiveEntity, isActiveEntity, isDraftRoot) {
40
+ var isNewObject = !hasActiveEntity && !isActiveEntity;
41
+ var iHighestCriticalityValue = -1;
42
+
43
+ if (aFilteredMessages && aFilteredMessages.length > 0) {
44
+ var _this$getBindingConte;
45
+
46
+ var sCurrentContextPath = (_this$getBindingConte = this.getBindingContext()) === null || _this$getBindingConte === void 0 ? void 0 : _this$getBindingConte.getPath();
22
47
  aFilteredMessages.forEach(function (oMessage) {
23
- if (oMessage.aTargets[0].indexOf(sCurrentContextPath) === 0) {
48
+ if (oMessage.aTargets[0].indexOf(sCurrentContextPath) === 0 && iHighestCriticalityValue < getMessagetypeOrder(oMessage.type)) {
49
+ iHighestCriticalityValue = getMessagetypeOrder(oMessage.type);
24
50
  criticalityValue = oMessage.type;
25
51
  }
26
52
  });
27
53
  }
28
54
 
29
- var criticalityProperty;
55
+ if (typeof criticalityValue !== "string") {
56
+ switch (criticalityValue) {
57
+ case 1:
58
+ criticalityValue = MessageType.Error;
59
+ break;
30
60
 
31
- if (typeof criticalityValue === "string") {
32
- return criticalityValue;
33
- }
34
-
35
- switch (criticalityValue) {
36
- case 1:
37
- criticalityProperty = MessageType.Error;
38
- break;
39
-
40
- case 2:
41
- criticalityProperty = MessageType.Warning;
42
- break;
61
+ case 2:
62
+ criticalityValue = MessageType.Warning;
63
+ break;
43
64
 
44
- case 3:
45
- criticalityProperty = MessageType.Success;
46
- break;
65
+ case 3:
66
+ criticalityValue = MessageType.Success;
67
+ break;
47
68
 
48
- case 5:
49
- criticalityProperty = MessageType.Information;
50
- break;
69
+ case 5:
70
+ criticalityValue = MessageType.Information;
71
+ break;
51
72
 
52
- default:
53
- criticalityProperty = MessageType.None;
73
+ default:
74
+ criticalityValue = MessageType.None;
75
+ }
54
76
  }
55
77
 
56
- return criticalityProperty;
78
+ if (criticalityValue === MessageType.None) {
79
+ if (isDraftRoot === "true" && isNewObject) {
80
+ return MessageType.Information;
81
+ } else {
82
+ return MessageType.None;
83
+ }
84
+ } else {
85
+ return criticalityValue;
86
+ }
57
87
  };
58
88
 
59
89
  rowHighlighting.__functionName = "sap.fe.core.formatters.TableFormatter#rowHighlighting";
60
90
 
61
91
  var navigatedRow = function (sDeepestPath) {
62
- if (this.getBindingContext() && sDeepestPath) {
63
- return sDeepestPath.indexOf(this.getBindingContext().getPath()) === 0;
92
+ var _this$getBindingConte2;
93
+
94
+ var sPath = (_this$getBindingConte2 = this.getBindingContext()) === null || _this$getBindingConte2 === void 0 ? void 0 : _this$getBindingConte2.getPath();
95
+
96
+ if (sPath && sDeepestPath) {
97
+ return sDeepestPath.indexOf(sPath) === 0;
64
98
  } else {
65
99
  return false;
66
100
  }
@@ -97,4 +131,4 @@ sap.ui.define(["sap/fe/core/formatters/TableFormatterTypes"], function (TableFor
97
131
 
98
132
  return tableFormatters;
99
133
  }, true);
100
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRhYmxlRm9ybWF0dGVyLnRzIl0sIm5hbWVzIjpbInJvd0hpZ2hsaWdodGluZyIsImNyaXRpY2FsaXR5VmFsdWUiLCJhRmlsdGVyZWRNZXNzYWdlcyIsInNDdXJyZW50Q29udGV4dFBhdGgiLCJnZXRCaW5kaW5nQ29udGV4dCIsImdldFBhdGgiLCJ1bmRlZmluZWQiLCJmb3JFYWNoIiwib01lc3NhZ2UiLCJhVGFyZ2V0cyIsImluZGV4T2YiLCJ0eXBlIiwiY3JpdGljYWxpdHlQcm9wZXJ0eSIsIk1lc3NhZ2VUeXBlIiwiRXJyb3IiLCJXYXJuaW5nIiwiU3VjY2VzcyIsIkluZm9ybWF0aW9uIiwiTm9uZSIsIl9fZnVuY3Rpb25OYW1lIiwibmF2aWdhdGVkUm93Iiwic0RlZXBlc3RQYXRoIiwidGFibGVGb3JtYXR0ZXJzIiwic05hbWUiLCJoYXNPd25Qcm9wZXJ0eSIsIm9BcmdzIiwiYXBwbHkiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7OztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBLE1BQU1BLGVBQWUsR0FBRyxVQUE4QkMsZ0JBQTlCLEVBQWlFQyxpQkFBakUsRUFBd0c7QUFDL0gsUUFBSUEsaUJBQUosRUFBdUI7QUFDdEIsVUFBTUMsbUJBQW1CLEdBQUcsS0FBS0MsaUJBQUwsS0FBMkIsS0FBS0EsaUJBQUwsR0FBeUJDLE9BQXpCLEVBQTNCLEdBQWdFQyxTQUE1RjtBQUNBSixNQUFBQSxpQkFBaUIsQ0FBQ0ssT0FBbEIsQ0FBMEIsVUFBQ0MsUUFBRCxFQUFtQjtBQUM1QyxZQUFJQSxRQUFRLENBQUNDLFFBQVQsQ0FBa0IsQ0FBbEIsRUFBcUJDLE9BQXJCLENBQTZCUCxtQkFBN0IsTUFBc0QsQ0FBMUQsRUFBNkQ7QUFDNURGLFVBQUFBLGdCQUFnQixHQUFHTyxRQUFRLENBQUNHLElBQTVCO0FBQ0E7QUFDRCxPQUpEO0FBS0E7O0FBRUQsUUFBSUMsbUJBQUo7O0FBQ0EsUUFBSSxPQUFPWCxnQkFBUCxLQUE0QixRQUFoQyxFQUEwQztBQUN6QyxhQUFRQSxnQkFBUjtBQUNBOztBQUNELFlBQVFBLGdCQUFSO0FBQ0MsV0FBSyxDQUFMO0FBQ0NXLFFBQUFBLG1CQUFtQixHQUFHQyxXQUFXLENBQUNDLEtBQWxDO0FBQ0E7O0FBQ0QsV0FBSyxDQUFMO0FBQ0NGLFFBQUFBLG1CQUFtQixHQUFHQyxXQUFXLENBQUNFLE9BQWxDO0FBQ0E7O0FBQ0QsV0FBSyxDQUFMO0FBQ0NILFFBQUFBLG1CQUFtQixHQUFHQyxXQUFXLENBQUNHLE9BQWxDO0FBQ0E7O0FBQ0QsV0FBSyxDQUFMO0FBQ0NKLFFBQUFBLG1CQUFtQixHQUFHQyxXQUFXLENBQUNJLFdBQWxDO0FBQ0E7O0FBQ0Q7QUFDQ0wsUUFBQUEsbUJBQW1CLEdBQUdDLFdBQVcsQ0FBQ0ssSUFBbEM7QUFkRjs7QUFpQkEsV0FBT04sbUJBQVA7QUFDQSxHQWhDRDs7QUFpQ0FaLEVBQUFBLGVBQWUsQ0FBQ21CLGNBQWhCLEdBQWlDLHVEQUFqQzs7QUFFQSxNQUFNQyxZQUFZLEdBQUcsVUFBOEJDLFlBQTlCLEVBQW9EO0FBQ3hFLFFBQUksS0FBS2pCLGlCQUFMLE1BQTRCaUIsWUFBaEMsRUFBOEM7QUFDN0MsYUFBT0EsWUFBWSxDQUFDWCxPQUFiLENBQXFCLEtBQUtOLGlCQUFMLEdBQXlCQyxPQUF6QixFQUFyQixNQUE2RCxDQUFwRTtBQUNBLEtBRkQsTUFFTztBQUNOLGFBQU8sS0FBUDtBQUNBO0FBQ0QsR0FORDs7QUFPQWUsRUFBQUEsWUFBWSxDQUFDRCxjQUFiLEdBQThCLG9EQUE5QixDLENBRUE7O0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxNQUFNRyxlQUFlLEdBQUcsVUFBdUJDLEtBQXZCLEVBQTREO0FBQ25GLFFBQUlELGVBQWUsQ0FBQ0UsY0FBaEIsQ0FBK0JELEtBQS9CLENBQUosRUFBMkM7QUFBQSx3Q0FEcUJFLEtBQ3JCO0FBRHFCQSxRQUFBQSxLQUNyQjtBQUFBOztBQUMxQyxhQUFRSCxlQUFELENBQXlCQyxLQUF6QixFQUFnQ0csS0FBaEMsQ0FBc0MsSUFBdEMsRUFBNENELEtBQTVDLENBQVA7QUFDQSxLQUZELE1BRU87QUFDTixhQUFPLEVBQVA7QUFDQTtBQUNELEdBTkQ7O0FBUUFILEVBQUFBLGVBQWUsQ0FBQ3RCLGVBQWhCLEdBQWtDQSxlQUFsQztBQUNBc0IsRUFBQUEsZUFBZSxDQUFDRixZQUFoQixHQUErQkEsWUFBL0I7QUFDQTtBQUNBO0FBQ0E7O1NBQ2VFLGUiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hbmFnZWRPYmplY3QgfSBmcm9tIFwic2FwL3VpL2Jhc2VcIjtcbmltcG9ydCB7IE1lc3NhZ2VUeXBlIH0gZnJvbSBcInNhcC9mZS9jb3JlL2Zvcm1hdHRlcnMvVGFibGVGb3JtYXR0ZXJUeXBlc1wiO1xuXG4vKipcbiAqIHJvd0hpZ2hsaWdodGluZ1xuICpcbiAqIEBwYXJhbSB7b2JqZWN0fSB0aGlzIFRoZSBjb250ZXh0XG4gKiBAcGFyYW0ge3N0cmluZ3xudW1iZXJ9IENyaXRpY2FsaXR5VmFsdWUgY3JpdGljYWxpdHkgdmFsdWVcbiAqIEBwYXJhbSB7bnVtYmVyfSBtZXNzYWdlTGFzdFVwZGF0ZSBUaW1lc3RhbXAgb2YgdGhlIGxhc3QgbWVzc2FnZSBjcmVhdGVkLCAgSXQncyBkZWZpbmVkIGFzIGlucHV0IHZhbHVlIGJ1dCBpdCBpcyBub3QgdXNlZCBpbiB0aGUgYm9keSBvZiB0aGUgZnVuY3Rpb25cbiAqIEl0IGlzIHVzZWQgdG8gcmVmcmVzaCB0aGUgZm9ybWF0dGluZyBvZiB0aGUgdGFibGUgZWFjaCB0aW1lIGEgbmV3IG1lc3NhZ2UgaXMgdXBkYXRlZFxuICogQHJldHVybnMge29iamVjdH0gVGhlIHZhbHVlIGZyb20gdGhlIGlubmVyIGZ1bmN0aW9uXG4gKi9cblxuY29uc3Qgcm93SGlnaGxpZ2h0aW5nID0gZnVuY3Rpb24odGhpczogTWFuYWdlZE9iamVjdCwgY3JpdGljYWxpdHlWYWx1ZTogc3RyaW5nIHwgbnVtYmVyLCBhRmlsdGVyZWRNZXNzYWdlczogYW55W10pOiBNZXNzYWdlVHlwZSB7XG5cdGlmIChhRmlsdGVyZWRNZXNzYWdlcykge1xuXHRcdGNvbnN0IHNDdXJyZW50Q29udGV4dFBhdGggPSB0aGlzLmdldEJpbmRpbmdDb250ZXh0KCkgPyB0aGlzLmdldEJpbmRpbmdDb250ZXh0KCkuZ2V0UGF0aCgpIDogdW5kZWZpbmVkO1xuXHRcdGFGaWx0ZXJlZE1lc3NhZ2VzLmZvckVhY2goKG9NZXNzYWdlOiBhbnkpID0+IHtcblx0XHRcdGlmIChvTWVzc2FnZS5hVGFyZ2V0c1swXS5pbmRleE9mKHNDdXJyZW50Q29udGV4dFBhdGgpID09PSAwKSB7XG5cdFx0XHRcdGNyaXRpY2FsaXR5VmFsdWUgPSBvTWVzc2FnZS50eXBlO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG5cblx0bGV0IGNyaXRpY2FsaXR5UHJvcGVydHk7XG5cdGlmICh0eXBlb2YgY3JpdGljYWxpdHlWYWx1ZSA9PT0gXCJzdHJpbmdcIikge1xuXHRcdHJldHVybiAoY3JpdGljYWxpdHlWYWx1ZSBhcyB1bmtub3duKSBhcyBNZXNzYWdlVHlwZTtcblx0fVxuXHRzd2l0Y2ggKGNyaXRpY2FsaXR5VmFsdWUpIHtcblx0XHRjYXNlIDE6XG5cdFx0XHRjcml0aWNhbGl0eVByb3BlcnR5ID0gTWVzc2FnZVR5cGUuRXJyb3I7XG5cdFx0XHRicmVhaztcblx0XHRjYXNlIDI6XG5cdFx0XHRjcml0aWNhbGl0eVByb3BlcnR5ID0gTWVzc2FnZVR5cGUuV2FybmluZztcblx0XHRcdGJyZWFrO1xuXHRcdGNhc2UgMzpcblx0XHRcdGNyaXRpY2FsaXR5UHJvcGVydHkgPSBNZXNzYWdlVHlwZS5TdWNjZXNzO1xuXHRcdFx0YnJlYWs7XG5cdFx0Y2FzZSA1OlxuXHRcdFx0Y3JpdGljYWxpdHlQcm9wZXJ0eSA9IE1lc3NhZ2VUeXBlLkluZm9ybWF0aW9uO1xuXHRcdFx0YnJlYWs7XG5cdFx0ZGVmYXVsdDpcblx0XHRcdGNyaXRpY2FsaXR5UHJvcGVydHkgPSBNZXNzYWdlVHlwZS5Ob25lO1xuXHR9XG5cblx0cmV0dXJuIGNyaXRpY2FsaXR5UHJvcGVydHk7XG59O1xucm93SGlnaGxpZ2h0aW5nLl9fZnVuY3Rpb25OYW1lID0gXCJzYXAuZmUuY29yZS5mb3JtYXR0ZXJzLlRhYmxlRm9ybWF0dGVyI3Jvd0hpZ2hsaWdodGluZ1wiO1xuXG5jb25zdCBuYXZpZ2F0ZWRSb3cgPSBmdW5jdGlvbih0aGlzOiBNYW5hZ2VkT2JqZWN0LCBzRGVlcGVzdFBhdGg6IHN0cmluZykge1xuXHRpZiAodGhpcy5nZXRCaW5kaW5nQ29udGV4dCgpICYmIHNEZWVwZXN0UGF0aCkge1xuXHRcdHJldHVybiBzRGVlcGVzdFBhdGguaW5kZXhPZih0aGlzLmdldEJpbmRpbmdDb250ZXh0KCkuZ2V0UGF0aCgpKSA9PT0gMDtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gZmFsc2U7XG5cdH1cbn07XG5uYXZpZ2F0ZWRSb3cuX19mdW5jdGlvbk5hbWUgPSBcInNhcC5mZS5jb3JlLmZvcm1hdHRlcnMuVGFibGVGb3JtYXR0ZXIjbmF2aWdhdGVkUm93XCI7XG5cbi8vIFNlZSBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay9mdW5jdGlvbnMuaHRtbCN0aGlzLXBhcmFtZXRlcnMgZm9yIG1vcmUgZGV0YWlsIG9uIHRoaXMgd2VpcmQgc3ludGF4XG4vKipcbiAqIENvbGxlY3Rpb24gb2YgdGFibGUgZm9ybWF0dGVycy5cbiAqXG4gKiBAcGFyYW0ge29iamVjdH0gdGhpcyBUaGUgY29udGV4dFxuICogQHBhcmFtIHtzdHJpbmd9IHNOYW1lIFRoZSBpbm5lciBmdW5jdGlvbiBuYW1lXG4gKiBAcGFyYW0ge29iamVjdFtdfSBvQXJncyBUaGUgaW5uZXIgZnVuY3Rpb24gcGFyYW1ldGVyc1xuICogQHJldHVybnMge29iamVjdH0gVGhlIHZhbHVlIGZyb20gdGhlIGlubmVyIGZ1bmN0aW9uXG4gKi9cbmNvbnN0IHRhYmxlRm9ybWF0dGVycyA9IGZ1bmN0aW9uKHRoaXM6IG9iamVjdCwgc05hbWU6IHN0cmluZywgLi4ub0FyZ3M6IGFueVtdKTogYW55IHtcblx0aWYgKHRhYmxlRm9ybWF0dGVycy5oYXNPd25Qcm9wZXJ0eShzTmFtZSkpIHtcblx0XHRyZXR1cm4gKHRhYmxlRm9ybWF0dGVycyBhcyBhbnkpW3NOYW1lXS5hcHBseSh0aGlzLCBvQXJncyk7XG5cdH0gZWxzZSB7XG5cdFx0cmV0dXJuIFwiXCI7XG5cdH1cbn07XG5cbnRhYmxlRm9ybWF0dGVycy5yb3dIaWdobGlnaHRpbmcgPSByb3dIaWdobGlnaHRpbmc7XG50YWJsZUZvcm1hdHRlcnMubmF2aWdhdGVkUm93ID0gbmF2aWdhdGVkUm93O1xuLyoqXG4gKiBAZ2xvYmFsXG4gKi9cbmV4cG9ydCBkZWZhdWx0IHRhYmxlRm9ybWF0dGVycztcbiJdfQ==
134
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRhYmxlRm9ybWF0dGVyLnRzIl0sIm5hbWVzIjpbImdldE1lc3NhZ2V0eXBlT3JkZXIiLCJtZXNzYWdlVHlwZSIsInJvd0hpZ2hsaWdodGluZyIsImNyaXRpY2FsaXR5VmFsdWUiLCJhRmlsdGVyZWRNZXNzYWdlcyIsImhhc0FjdGl2ZUVudGl0eSIsImlzQWN0aXZlRW50aXR5IiwiaXNEcmFmdFJvb3QiLCJpc05ld09iamVjdCIsImlIaWdoZXN0Q3JpdGljYWxpdHlWYWx1ZSIsImxlbmd0aCIsInNDdXJyZW50Q29udGV4dFBhdGgiLCJnZXRCaW5kaW5nQ29udGV4dCIsImdldFBhdGgiLCJmb3JFYWNoIiwib01lc3NhZ2UiLCJhVGFyZ2V0cyIsImluZGV4T2YiLCJ0eXBlIiwiTWVzc2FnZVR5cGUiLCJFcnJvciIsIldhcm5pbmciLCJTdWNjZXNzIiwiSW5mb3JtYXRpb24iLCJOb25lIiwiX19mdW5jdGlvbk5hbWUiLCJuYXZpZ2F0ZWRSb3ciLCJzRGVlcGVzdFBhdGgiLCJzUGF0aCIsInRhYmxlRm9ybWF0dGVycyIsInNOYW1lIiwiaGFzT3duUHJvcGVydHkiLCJvQXJncyIsImFwcGx5Il0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7Ozs7QUFBQSxNQUFNQSxtQkFBbUIsR0FBRyxVQUFTQyxXQUFULEVBQXNDO0FBQ2pFLFlBQVFBLFdBQVI7QUFDQyxXQUFLLE9BQUw7QUFDQyxlQUFPLENBQVA7O0FBQ0QsV0FBSyxTQUFMO0FBQ0MsZUFBTyxDQUFQOztBQUNELFdBQUssYUFBTDtBQUNDLGVBQU8sQ0FBUDs7QUFDRCxXQUFLLE1BQUw7QUFDQyxlQUFPLENBQVA7O0FBQ0Q7QUFDQyxlQUFPLENBQUMsQ0FBUjtBQVZGO0FBWUEsR0FiRDtBQWVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBRUEsTUFBTUMsZUFBZSxHQUFHLFVBRXZCQyxnQkFGdUIsRUFHdkJDLGlCQUh1QixFQUl2QkMsZUFKdUIsRUFLdkJDLGNBTHVC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LEVBQUFBLGVBQWUsQ0FBQzNCLGVBQWhCLEdBQWtDQSxlQUFsQztBQUNBMkIsRUFBQUEsZUFBZSxDQUFDSCxZQUFoQixHQUErQkEsWUFBL0I7QUFDQTtBQUNBO0FBQ0E7O1NBQ2VHLGUiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNYW5hZ2VkT2JqZWN0IGZyb20gXCJzYXAvdWkvYmFzZS9NYW5hZ2VkT2JqZWN0XCI7XG5pbXBvcnQgeyBNZXNzYWdlVHlwZSB9IGZyb20gXCJzYXAvZmUvY29yZS9mb3JtYXR0ZXJzL1RhYmxlRm9ybWF0dGVyVHlwZXNcIjtcbmNvbnN0IGdldE1lc3NhZ2V0eXBlT3JkZXIgPSBmdW5jdGlvbihtZXNzYWdlVHlwZTogc3RyaW5nKTogbnVtYmVyIHtcblx0c3dpdGNoIChtZXNzYWdlVHlwZSkge1xuXHRcdGNhc2UgXCJFcnJvclwiOlxuXHRcdFx0cmV0dXJuIDQ7XG5cdFx0Y2FzZSBcIldhcm5pbmdcIjpcblx0XHRcdHJldHVybiAzO1xuXHRcdGNhc2UgXCJJbmZvcm1hdGlvblwiOlxuXHRcdFx0cmV0dXJuIDI7XG5cdFx0Y2FzZSBcIk5vbmVcIjpcblx0XHRcdHJldHVybiAxO1xuXHRcdGRlZmF1bHQ6XG5cdFx0XHRyZXR1cm4gLTE7XG5cdH1cbn07XG5cbi8qKlxuICogcm93SGlnaGxpZ2h0aW5nXG4gKlxuICogQHBhcmFtIHtvYmplY3R9IHRoaXMgVGhlIGNvbnRleHRcbiAqIEBwYXJhbSB7c3RyaW5nfG51bWJlcn0gQ3JpdGljYWxpdHlWYWx1ZSBUaGUgY3JpdGljYWxpdHkgdmFsdWVcbiAqIEBwYXJhbSB7bnVtYmVyfSBtZXNzYWdlTGFzdFVwZGF0ZSBUaW1lc3RhbXAgb2YgdGhlIGxhc3QgbWVzc2FnZSB0aGF0IHdhcyBjcmVhdGVkLiBJdCdzIGRlZmluZWQgYXMgYW4gaW5wdXQgdmFsdWUsIGJ1dCBub3QgdXNlZCBpbiB0aGUgYm9keSBvZiB0aGUgZnVuY3Rpb25cbiAqIEl0IGlzIHVzZWQgdG8gcmVmcmVzaCB0aGUgZm9ybWF0dGluZyBvZiB0aGUgdGFibGUgZWFjaCB0aW1lIGEgbmV3IG1lc3NhZ2UgaXMgdXBkYXRlZFxuICogQHJldHVybnMge29iamVjdH0gVGhlIHZhbHVlIGZyb20gdGhlIGlubmVyIGZ1bmN0aW9uXG4gKi9cblxuY29uc3Qgcm93SGlnaGxpZ2h0aW5nID0gZnVuY3Rpb24oXG5cdHRoaXM6IE1hbmFnZWRPYmplY3QsXG5cdGNyaXRpY2FsaXR5VmFsdWU6IHN0cmluZyB8IG51bWJlcixcblx0YUZpbHRlcmVkTWVzc2FnZXM6IGFueVtdLFxuXHRoYXNBY3RpdmVFbnRpdHk6IGJvb2xlYW4sXG5cdGlzQWN0aXZlRW50aXR5OiBib29sZWFuLFxuXHRpc0RyYWZ0Um9vdDogc3RyaW5nLFxuXHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG5cdC4uLmFyZ3M6IGFueVtdXG4pOiBNZXNzYWdlVHlwZSB7XG5cdGNvbnN0IGlzTmV3T2JqZWN0ID0gIWhhc0FjdGl2ZUVudGl0eSAmJiAhaXNBY3RpdmVFbnRpdHk7XG5cdGxldCBpSGlnaGVzdENyaXRpY2FsaXR5VmFsdWU6IG51bWJlciA9IC0xO1xuXHRpZiAoYUZpbHRlcmVkTWVzc2FnZXMgJiYgYUZpbHRlcmVkTWVzc2FnZXMubGVuZ3RoID4gMCkge1xuXHRcdGNvbnN0IHNDdXJyZW50Q29udGV4dFBhdGggPSB0aGlzLmdldEJpbmRpbmdDb250ZXh0KCk/LmdldFBhdGgoKTtcblx0XHRhRmlsdGVyZWRNZXNzYWdlcy5mb3JFYWNoKChvTWVzc2FnZTogYW55KSA9PiB7XG5cdFx0XHRpZiAob01lc3NhZ2UuYVRhcmdldHNbMF0uaW5kZXhPZihzQ3VycmVudENvbnRleHRQYXRoKSA9PT0gMCAmJiBpSGlnaGVzdENyaXRpY2FsaXR5VmFsdWUgPCBnZXRNZXNzYWdldHlwZU9yZGVyKG9NZXNzYWdlLnR5cGUpKSB7XG5cdFx0XHRcdGlIaWdoZXN0Q3JpdGljYWxpdHlWYWx1ZSA9IGdldE1lc3NhZ2V0eXBlT3JkZXIob01lc3NhZ2UudHlwZSk7XG5cdFx0XHRcdGNyaXRpY2FsaXR5VmFsdWUgPSBvTWVzc2FnZS50eXBlO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG5cdGlmICh0eXBlb2YgY3JpdGljYWxpdHlWYWx1ZSAhPT0gXCJzdHJpbmdcIikge1xuXHRcdHN3aXRjaCAoY3JpdGljYWxpdHlWYWx1ZSkge1xuXHRcdFx0Y2FzZSAxOlxuXHRcdFx0XHRjcml0aWNhbGl0eVZhbHVlID0gTWVzc2FnZVR5cGUuRXJyb3I7XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0Y2FzZSAyOlxuXHRcdFx0XHRjcml0aWNhbGl0eVZhbHVlID0gTWVzc2FnZVR5cGUuV2FybmluZztcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHRjYXNlIDM6XG5cdFx0XHRcdGNyaXRpY2FsaXR5VmFsdWUgPSBNZXNzYWdlVHlwZS5TdWNjZXNzO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdGNhc2UgNTpcblx0XHRcdFx0Y3JpdGljYWxpdHlWYWx1ZSA9IE1lc3NhZ2VUeXBlLkluZm9ybWF0aW9uO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdGRlZmF1bHQ6XG5cdFx0XHRcdGNyaXRpY2FsaXR5VmFsdWUgPSBNZXNzYWdlVHlwZS5Ob25lO1xuXHRcdH1cblx0fVxuXG5cdGlmIChjcml0aWNhbGl0eVZhbHVlID09PSBNZXNzYWdlVHlwZS5Ob25lKSB7XG5cdFx0aWYgKGlzRHJhZnRSb290ID09PSBcInRydWVcIiAmJiBpc05ld09iamVjdCkge1xuXHRcdFx0cmV0dXJuIE1lc3NhZ2VUeXBlLkluZm9ybWF0aW9uO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gTWVzc2FnZVR5cGUuTm9uZTtcblx0XHR9XG5cdH0gZWxzZSB7XG5cdFx0cmV0dXJuIGNyaXRpY2FsaXR5VmFsdWUgYXMgTWVzc2FnZVR5cGU7XG5cdH1cbn07XG5yb3dIaWdobGlnaHRpbmcuX19mdW5jdGlvbk5hbWUgPSBcInNhcC5mZS5jb3JlLmZvcm1hdHRlcnMuVGFibGVGb3JtYXR0ZXIjcm93SGlnaGxpZ2h0aW5nXCI7XG5cbmNvbnN0IG5hdmlnYXRlZFJvdyA9IGZ1bmN0aW9uKHRoaXM6IE1hbmFnZWRPYmplY3QsIHNEZWVwZXN0UGF0aDogc3RyaW5nKSB7XG5cdGNvbnN0IHNQYXRoID0gdGhpcy5nZXRCaW5kaW5nQ29udGV4dCgpPy5nZXRQYXRoKCk7XG5cdGlmIChzUGF0aCAmJiBzRGVlcGVzdFBhdGgpIHtcblx0XHRyZXR1cm4gc0RlZXBlc3RQYXRoLmluZGV4T2Yoc1BhdGgpID09PSAwO1xuXHR9IGVsc2Uge1xuXHRcdHJldHVybiBmYWxzZTtcblx0fVxufTtcbm5hdmlnYXRlZFJvdy5fX2Z1bmN0aW9uTmFtZSA9IFwic2FwLmZlLmNvcmUuZm9ybWF0dGVycy5UYWJsZUZvcm1hdHRlciNuYXZpZ2F0ZWRSb3dcIjtcblxuLy8gU2VlIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rL2Z1bmN0aW9ucy5odG1sI3RoaXMtcGFyYW1ldGVycyBmb3IgbW9yZSBkZXRhaWwgb24gdGhpcyB3ZWlyZCBzeW50YXhcbi8qKlxuICogQ29sbGVjdGlvbiBvZiB0YWJsZSBmb3JtYXR0ZXJzLlxuICpcbiAqIEBwYXJhbSB7b2JqZWN0fSB0aGlzIFRoZSBjb250ZXh0XG4gKiBAcGFyYW0ge3N0cmluZ30gc05hbWUgVGhlIGlubmVyIGZ1bmN0aW9uIG5hbWVcbiAqIEBwYXJhbSB7b2JqZWN0W119IG9BcmdzIFRoZSBpbm5lciBmdW5jdGlvbiBwYXJhbWV0ZXJzXG4gKiBAcmV0dXJucyB7b2JqZWN0fSBUaGUgdmFsdWUgZnJvbSB0aGUgaW5uZXIgZnVuY3Rpb25cbiAqL1xuY29uc3QgdGFibGVGb3JtYXR0ZXJzID0gZnVuY3Rpb24odGhpczogb2JqZWN0LCBzTmFtZTogc3RyaW5nLCAuLi5vQXJnczogYW55W10pOiBhbnkge1xuXHRpZiAodGFibGVGb3JtYXR0ZXJzLmhhc093blByb3BlcnR5KHNOYW1lKSkge1xuXHRcdHJldHVybiAodGFibGVGb3JtYXR0ZXJzIGFzIGFueSlbc05hbWVdLmFwcGx5KHRoaXMsIG9BcmdzKTtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gXCJcIjtcblx0fVxufTtcblxudGFibGVGb3JtYXR0ZXJzLnJvd0hpZ2hsaWdodGluZyA9IHJvd0hpZ2hsaWdodGluZztcbnRhYmxlRm9ybWF0dGVycy5uYXZpZ2F0ZWRSb3cgPSBuYXZpZ2F0ZWRSb3c7XG4vKipcbiAqIEBnbG9iYWxcbiAqL1xuZXhwb3J0IGRlZmF1bHQgdGFibGVGb3JtYXR0ZXJzO1xuIl19
@@ -1,54 +1,86 @@
1
- import { ManagedObject } from "sap/ui/base";
1
+ import ManagedObject from "sap/ui/base/ManagedObject";
2
2
  import { MessageType } from "sap/fe/core/formatters/TableFormatterTypes";
3
+ const getMessagetypeOrder = function(messageType: string): number {
4
+ switch (messageType) {
5
+ case "Error":
6
+ return 4;
7
+ case "Warning":
8
+ return 3;
9
+ case "Information":
10
+ return 2;
11
+ case "None":
12
+ return 1;
13
+ default:
14
+ return -1;
15
+ }
16
+ };
3
17
 
4
18
  /**
5
19
  * rowHighlighting
6
20
  *
7
21
  * @param {object} this The context
8
- * @param {string|number} CriticalityValue criticality value
9
- * @param {number} messageLastUpdate Timestamp of the last message created, It's defined as input value but it is not used in the body of the function
22
+ * @param {string|number} CriticalityValue The criticality value
23
+ * @param {number} messageLastUpdate Timestamp of the last message that was created. It's defined as an input value, but not used in the body of the function
10
24
  * It is used to refresh the formatting of the table each time a new message is updated
11
25
  * @returns {object} The value from the inner function
12
26
  */
13
27
 
14
- const rowHighlighting = function(this: ManagedObject, criticalityValue: string | number, aFilteredMessages: any[]): MessageType {
15
- if (aFilteredMessages) {
16
- const sCurrentContextPath = this.getBindingContext() ? this.getBindingContext().getPath() : undefined;
28
+ const rowHighlighting = function(
29
+ this: ManagedObject,
30
+ criticalityValue: string | number,
31
+ aFilteredMessages: any[],
32
+ hasActiveEntity: boolean,
33
+ isActiveEntity: boolean,
34
+ isDraftRoot: string,
35
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
36
+ ...args: any[]
37
+ ): MessageType {
38
+ const isNewObject = !hasActiveEntity && !isActiveEntity;
39
+ let iHighestCriticalityValue: number = -1;
40
+ if (aFilteredMessages && aFilteredMessages.length > 0) {
41
+ const sCurrentContextPath = this.getBindingContext()?.getPath();
17
42
  aFilteredMessages.forEach((oMessage: any) => {
18
- if (oMessage.aTargets[0].indexOf(sCurrentContextPath) === 0) {
43
+ if (oMessage.aTargets[0].indexOf(sCurrentContextPath) === 0 && iHighestCriticalityValue < getMessagetypeOrder(oMessage.type)) {
44
+ iHighestCriticalityValue = getMessagetypeOrder(oMessage.type);
19
45
  criticalityValue = oMessage.type;
20
46
  }
21
47
  });
22
48
  }
23
-
24
- let criticalityProperty;
25
- if (typeof criticalityValue === "string") {
26
- return (criticalityValue as unknown) as MessageType;
27
- }
28
- switch (criticalityValue) {
29
- case 1:
30
- criticalityProperty = MessageType.Error;
31
- break;
32
- case 2:
33
- criticalityProperty = MessageType.Warning;
34
- break;
35
- case 3:
36
- criticalityProperty = MessageType.Success;
37
- break;
38
- case 5:
39
- criticalityProperty = MessageType.Information;
40
- break;
41
- default:
42
- criticalityProperty = MessageType.None;
49
+ if (typeof criticalityValue !== "string") {
50
+ switch (criticalityValue) {
51
+ case 1:
52
+ criticalityValue = MessageType.Error;
53
+ break;
54
+ case 2:
55
+ criticalityValue = MessageType.Warning;
56
+ break;
57
+ case 3:
58
+ criticalityValue = MessageType.Success;
59
+ break;
60
+ case 5:
61
+ criticalityValue = MessageType.Information;
62
+ break;
63
+ default:
64
+ criticalityValue = MessageType.None;
65
+ }
43
66
  }
44
67
 
45
- return criticalityProperty;
68
+ if (criticalityValue === MessageType.None) {
69
+ if (isDraftRoot === "true" && isNewObject) {
70
+ return MessageType.Information;
71
+ } else {
72
+ return MessageType.None;
73
+ }
74
+ } else {
75
+ return criticalityValue as MessageType;
76
+ }
46
77
  };
47
78
  rowHighlighting.__functionName = "sap.fe.core.formatters.TableFormatter#rowHighlighting";
48
79
 
49
80
  const navigatedRow = function(this: ManagedObject, sDeepestPath: string) {
50
- if (this.getBindingContext() && sDeepestPath) {
51
- return sDeepestPath.indexOf(this.getBindingContext().getPath()) === 0;
81
+ const sPath = this.getBindingContext()?.getPath();
82
+ if (sPath && sDeepestPath) {
83
+ return sDeepestPath.indexOf(sPath) === 0;
52
84
  } else {
53
85
  return false;
54
86
  }
@@ -2,7 +2,7 @@
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
3
  * (c) Copyright 2009-2021 SAP SE. All rights reserved
4
4
  */
5
- sap.ui.define([], function () {
5
+ sap.ui.define(["sap/ui/core/format/DateFormat"], function (DateFormat) {
6
6
  "use strict";
7
7
 
8
8
  var _exports = {};
@@ -51,17 +51,17 @@ sap.ui.define([], function () {
51
51
  if (sUnit === "%") {
52
52
  if (iValue > 100) {
53
53
  sPercentString = "100";
54
- } else if (iValue < 0) {
54
+ } else if (iValue <= 0) {
55
55
  sPercentString = "0";
56
56
  } else {
57
57
  sPercentString = typeof value === "string" ? value : value === null || value === void 0 ? void 0 : value.toString();
58
58
  }
59
59
  } else if (iValue > iTarget) {
60
60
  sPercentString = "100";
61
- } else if (iValue < 0) {
61
+ } else if (iValue <= 0) {
62
62
  sPercentString = "0";
63
63
  } else {
64
- sPercentString = iValue && iTarget ? (iValue / iTarget * 100).toString() : "";
64
+ sPercentString = iValue && iTarget ? (iValue / iTarget * 100).toString() : "0";
65
65
  }
66
66
 
67
67
  return sPercentString;
@@ -146,6 +146,30 @@ sap.ui.define([], function () {
146
146
 
147
147
  formatCriticalityColorMicroChart.__functionName = "sap.fe.core.formatters.ValueFormatter#formatCriticalityColorMicroChart";
148
148
  _exports.formatCriticalityColorMicroChart = formatCriticalityColorMicroChart;
149
+
150
+ var formatProgressIndicatorText = function (value, target, unit) {
151
+ if (value && target && unit) {
152
+ var _localeData$dateField, _localeData$units, _localeData$units$sho;
153
+
154
+ var unitSplit = unit.split("-");
155
+ var searchUnit = (unitSplit[1] === undefined ? unit : unitSplit[1]) + "-narrow";
156
+ var dateFormat = DateFormat.getDateInstance();
157
+ var localeData = dateFormat.oLocaleData.mData;
158
+ var oResourceModel = sap.ui.getCore().getLibraryResourceBundle("sap.fe.macros");
159
+ var unitDisplayed = unit;
160
+
161
+ if (localeData !== null && localeData !== void 0 && (_localeData$dateField = localeData.dateFields[searchUnit]) !== null && _localeData$dateField !== void 0 && _localeData$dateField.displayName) {
162
+ unitDisplayed = localeData.dateFields[searchUnit].displayName;
163
+ } else if (localeData !== null && localeData !== void 0 && (_localeData$units = localeData.units) !== null && _localeData$units !== void 0 && (_localeData$units$sho = _localeData$units.short[unit]) !== null && _localeData$units$sho !== void 0 && _localeData$units$sho.displayName) {
164
+ unitDisplayed = localeData.units.short[unit].displayName;
165
+ }
166
+
167
+ return oResourceModel.getText("T_COMMON_PROGRESS_INDICATOR_DISPLAY_VALUE_WITH_UOM", [value, target, unitDisplayed]);
168
+ }
169
+ };
170
+
171
+ formatProgressIndicatorText.__functionName = "sap.fe.core.formatters.ValueFormatter#formatProgressIndicatorText";
172
+ _exports.formatProgressIndicatorText = formatProgressIndicatorText;
149
173
  valueFormatters.formatWithBrackets = formatWithBrackets;
150
174
  valueFormatters.formatWithPercentage = formatWithPercentage;
151
175
  valueFormatters.computePercentage = computePercentage;
@@ -153,10 +177,11 @@ sap.ui.define([], function () {
153
177
  valueFormatters.formatCriticalityValueState = formatCriticalityValueState;
154
178
  valueFormatters.formatCriticalityButtonType = formatCriticalityButtonType;
155
179
  valueFormatters.formatCriticalityColorMicroChart = formatCriticalityColorMicroChart;
180
+ valueFormatters.formatProgressIndicatorText = formatProgressIndicatorText;
156
181
  /**
157
182
  * @global
158
183
  */
159
184
 
160
185
  return valueFormatters;
161
186
  }, true);
162
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlZhbHVlRm9ybWF0dGVyLnRzIl0sIm5hbWVzIjpbInZhbHVlRm9ybWF0dGVycyIsInNOYW1lIiwiaGFzT3duUHJvcGVydHkiLCJvQXJncyIsImFwcGx5IiwiZm9ybWF0V2l0aEJyYWNrZXRzIiwiZmlyc3RQYXJ0Iiwic2Vjb25kUGFydCIsInNhcCIsInVpIiwiZ2V0Q29yZSIsImdldExpYnJhcnlSZXNvdXJjZUJ1bmRsZSIsImdldFRleHQiLCJfX2Z1bmN0aW9uTmFtZSIsImZvcm1hdFdpdGhQZXJjZW50YWdlIiwic1ZhbHVlIiwidW5kZWZpbmVkIiwiY29tcHV0ZVBlcmNlbnRhZ2UiLCJ2YWx1ZSIsInRhcmdldCIsInNVbml0Iiwic1BlcmNlbnRTdHJpbmciLCJpVmFsdWUiLCJwYXJzZUZsb2F0IiwiaVRhcmdldCIsInRvU3RyaW5nIiwiZm9ybWF0Q3JpdGljYWxpdHlJY29uIiwidmFsIiwic0ljb24iLCJmb3JtYXRDcml0aWNhbGl0eVZhbHVlU3RhdGUiLCJzVmFsdWVTdGF0ZSIsImZvcm1hdENyaXRpY2FsaXR5QnV0dG9uVHlwZSIsInNUeXBlIiwiZm9ybWF0Q3JpdGljYWxpdHlDb2xvck1pY3JvQ2hhcnQiLCJzQ29sb3IiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7OztBQUZBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNQSxlQUFlLEdBQUcsVUFBdUJDLEtBQXZCLEVBQTREO0FBQ25GLFFBQUlELGVBQWUsQ0FBQ0UsY0FBaEIsQ0FBK0JELEtBQS9CLENBQUosRUFBMkM7QUFBQSx3Q0FEcUJFLEtBQ3JCO0FBRHFCQSxRQUFBQSxLQUNyQjtBQUFBOztBQUMxQyxhQUFRSCxlQUFELENBQXlCQyxLQUF6QixFQUFnQ0csS0FBaEMsQ0FBc0MsSUFBdEMsRUFBNENELEtBQTVDLENBQVA7QUFDQSxLQUZELE1BRU87QUFDTixhQUFPLEVBQVA7QUFDQTtBQUNELEdBTkQ7O0FBUUEsTUFBTUUsa0JBQWtCLEdBQUcsVUFBQ0MsU0FBRCxFQUFxQkMsVUFBckIsRUFBcUQ7QUFDL0UsUUFBSUQsU0FBUyxJQUFJQyxVQUFqQixFQUE2QjtBQUM1QixhQUFPQyxHQUFHLENBQUNDLEVBQUosQ0FDTEMsT0FESyxHQUVMQyx3QkFGSyxDQUVvQixhQUZwQixFQUdMQyxPQUhLLENBR0csK0JBSEgsRUFHb0MsQ0FBQ04sU0FBRCxFQUFZQyxVQUFaLENBSHBDLENBQVA7QUFJQSxLQUxELE1BS087QUFDTixhQUFPRCxTQUFTLElBQUlDLFVBQWIsSUFBMkIsRUFBbEM7QUFDQTtBQUNELEdBVEQ7O0FBVUFGLEVBQUFBLGtCQUFrQixDQUFDUSxjQUFuQixHQUFvQywwREFBcEM7O0FBRUEsTUFBTUMsb0JBQW9CLEdBQUcsVUFBQ0MsTUFBRCxFQUE2QjtBQUN6RCxXQUFPQSxNQUFNLEtBQUssSUFBWCxJQUFtQkEsTUFBTSxLQUFLQyxTQUE5QixHQUEwQ0QsTUFBTSxHQUFHLElBQW5ELEdBQTBELEVBQWpFO0FBQ0EsR0FGRDs7QUFHQUQsRUFBQUEsb0JBQW9CLENBQUNELGNBQXJCLEdBQXNDLDREQUF0Qzs7QUFFQSxNQUFNSSxpQkFBaUIsR0FBRyxVQUFDQyxLQUFELEVBQXlCQyxNQUF6QixFQUFrREMsS0FBbEQsRUFBeUY7QUFDbEgsUUFBSUMsY0FBSjtBQUNBLFFBQU1DLE1BQWMsR0FBRyxPQUFPSixLQUFQLEtBQWlCLFFBQWpCLEdBQTRCSyxVQUFVLENBQUNMLEtBQUQsQ0FBdEMsR0FBZ0RBLEtBQXZFO0FBQ0EsUUFBTU0sT0FBZSxHQUFHLE9BQU9MLE1BQVAsS0FBa0IsUUFBbEIsR0FBNkJJLFVBQVUsQ0FBQ0osTUFBRCxDQUF2QyxHQUFrREEsTUFBMUU7O0FBRUEsUUFBSUMsS0FBSyxLQUFLLEdBQWQsRUFBbUI7QUFDbEIsVUFBSUUsTUFBTSxHQUFHLEdBQWIsRUFBa0I7QUFDakJELFFBQUFBLGNBQWMsR0FBRyxLQUFqQjtBQUNBLE9BRkQsTUFFTyxJQUFJQyxNQUFNLEdBQUcsQ0FBYixFQUFnQjtBQUN0QkQsUUFBQUEsY0FBYyxHQUFHLEdBQWpCO0FBQ0EsT0FGTSxNQUVBO0FBQ05BLFFBQUFBLGNBQWMsR0FBRyxPQUFPSCxLQUFQLEtBQWlCLFFBQWpCLEdBQTRCQSxLQUE1QixHQUFvQ0EsS0FBcEMsYUFBb0NBLEtBQXBDLHVCQUFvQ0EsS0FBSyxDQUFFTyxRQUFQLEVBQXJEO0FBQ0E7QUFDRCxLQVJELE1BUU8sSUFBSUgsTUFBTSxHQUFHRSxPQUFiLEVBQXNCO0FBQzVCSCxNQUFBQSxjQUFjLEdBQUcsS0FBakI7QUFDQSxLQUZNLE1BRUEsSUFBSUMsTUFBTSxHQUFHLENBQWIsRUFBZ0I7QUFDdEJELE1BQUFBLGNBQWMsR0FBRyxHQUFqQjtBQUNBLEtBRk0sTUFFQTtBQUNOQSxNQUFBQSxjQUFjLEdBQUdDLE1BQU0sSUFBSUUsT0FBVixHQUFvQixDQUFFRixNQUFNLEdBQUdFLE9BQVYsR0FBcUIsR0FBdEIsRUFBMkJDLFFBQTNCLEVBQXBCLEdBQTRELEVBQTdFO0FBQ0E7O0FBQ0QsV0FBT0osY0FBUDtBQUNBLEdBckJEOztBQXNCQUosRUFBQUEsaUJBQWlCLENBQUNKLGNBQWxCLEdBQW1DLHlEQUFuQzs7QUFFTyxNQUFNYSxxQkFBcUIsR0FBRyxVQUFDQyxHQUFELEVBQStDO0FBQ25GLFFBQUlDLEtBQUo7O0FBQ0EsUUFBSUQsR0FBRyxLQUFLLDZCQUFSLElBQXlDQSxHQUFHLEtBQUssR0FBakQsSUFBd0RBLEdBQUcsS0FBSyxDQUFwRSxFQUF1RTtBQUN0RUMsTUFBQUEsS0FBSyxHQUFHLDBCQUFSO0FBQ0EsS0FGRCxNQUVPLElBQUlELEdBQUcsS0FBSyw2QkFBUixJQUF5Q0EsR0FBRyxLQUFLLEdBQWpELElBQXdEQSxHQUFHLEtBQUssQ0FBcEUsRUFBdUU7QUFDN0VDLE1BQUFBLEtBQUssR0FBRyw0QkFBUjtBQUNBLEtBRk0sTUFFQSxJQUFJRCxHQUFHLEtBQUssNkJBQVIsSUFBeUNBLEdBQUcsS0FBSyxHQUFqRCxJQUF3REEsR0FBRyxLQUFLLENBQXBFLEVBQXVFO0FBQzdFQyxNQUFBQSxLQUFLLEdBQUcsNEJBQVI7QUFDQSxLQUZNLE1BRUEsSUFBSUQsR0FBRyxLQUFLLGdDQUFSLElBQTRDQSxHQUFHLEtBQUssR0FBcEQsSUFBMkRBLEdBQUcsS0FBSyxDQUF2RSxFQUEwRTtBQUNoRkMsTUFBQUEsS0FBSyxHQUFHLGdDQUFSO0FBQ0EsS0FGTSxNQUVBO0FBQ05BLE1BQUFBLEtBQUssR0FBRyxFQUFSO0FBQ0E7O0FBQ0QsV0FBT0EsS0FBUDtBQUNBLEdBZE07O0FBZVBGLEVBQUFBLHFCQUFxQixDQUFDYixjQUF0QixHQUF1Qyw2REFBdkM7OztBQUVPLE1BQU1nQiwyQkFBMkIsR0FBRyxVQUFDRixHQUFELEVBQStDO0FBQ3pGLFFBQUlHLFdBQUo7O0FBQ0EsUUFBSUgsR0FBRyxLQUFLLDZCQUFSLElBQXlDQSxHQUFHLEtBQUssR0FBakQsSUFBd0RBLEdBQUcsS0FBSyxDQUFwRSxFQUF1RTtBQUN0RUcsTUFBQUEsV0FBVyxHQUFHLE9BQWQ7QUFDQSxLQUZELE1BRU8sSUFBSUgsR0FBRyxLQUFLLDZCQUFSLElBQXlDQSxHQUFHLEtBQUssR0FBakQsSUFBd0RBLEdBQUcsS0FBSyxDQUFwRSxFQUF1RTtBQUM3RUcsTUFBQUEsV0FBVyxHQUFHLFNBQWQ7QUFDQSxLQUZNLE1BRUEsSUFBSUgsR0FBRyxLQUFLLDZCQUFSLElBQXlDQSxHQUFHLEtBQUssR0FBakQsSUFBd0RBLEdBQUcsS0FBSyxDQUFwRSxFQUF1RTtBQUM3RUcsTUFBQUEsV0FBVyxHQUFHLFNBQWQ7QUFDQSxLQUZNLE1BRUEsSUFBSUgsR0FBRyxLQUFLLGdDQUFSLElBQTRDQSxHQUFHLEtBQUssR0FBcEQsSUFBMkRBLEdBQUcsS0FBSyxDQUF2RSxFQUEwRTtBQUNoRkcsTUFBQUEsV0FBVyxHQUFHLGNBQWQ7QUFDQSxLQUZNLE1BRUE7QUFDTkEsTUFBQUEsV0FBVyxHQUFHLE1BQWQ7QUFDQTs7QUFDRCxXQUFPQSxXQUFQO0FBQ0EsR0FkTTs7QUFlUEQsRUFBQUEsMkJBQTJCLENBQUNoQixjQUE1QixHQUE2QyxtRUFBN0M7OztBQUVPLE1BQU1rQiwyQkFBMkIsR0FBRyxVQUFDSixHQUFELEVBQStDO0FBQ3pGLFFBQUlLLEtBQUo7O0FBQ0EsUUFBSUwsR0FBRyxLQUFLLDZCQUFSLElBQXlDQSxHQUFHLEtBQUssR0FBakQsSUFBd0RBLEdBQUcsS0FBSyxDQUFwRSxFQUF1RTtBQUN0RUssTUFBQUEsS0FBSyxHQUFHLFFBQVI7QUFDQSxLQUZELE1BRU8sSUFBSUwsR0FBRyxLQUFLLDZCQUFSLElBQXlDQSxHQUFHLEtBQUssR0FBakQsSUFBd0RBLEdBQUcsS0FBSyxDQUFwRSxFQUF1RTtBQUM3RUssTUFBQUEsS0FBSyxHQUFHLFFBQVI7QUFDQSxLQUZNLE1BRUE7QUFDTkEsTUFBQUEsS0FBSyxHQUFHLFNBQVI7QUFDQTs7QUFDRCxXQUFPQSxLQUFQO0FBQ0EsR0FWTTs7QUFXUEQsRUFBQUEsMkJBQTJCLENBQUNsQixjQUE1QixHQUE2QyxtRUFBN0M7OztBQUVPLE1BQU1vQixnQ0FBZ0MsR0FBRyxVQUFDTixHQUFELEVBQStDO0FBQzlGLFFBQUlPLE1BQUo7O0FBQ0EsUUFBSVAsR0FBRyxLQUFLLDZCQUFSLElBQXlDQSxHQUFHLEtBQUssR0FBakQsSUFBd0RBLEdBQUcsS0FBSyxDQUFwRSxFQUF1RTtBQUN0RU8sTUFBQUEsTUFBTSxHQUFHLE9BQVQ7QUFDQSxLQUZELE1BRU8sSUFBSVAsR0FBRyxLQUFLLDZCQUFSLElBQXlDQSxHQUFHLEtBQUssR0FBakQsSUFBd0RBLEdBQUcsS0FBSyxDQUFwRSxFQUF1RTtBQUM3RU8sTUFBQUEsTUFBTSxHQUFHLFVBQVQ7QUFDQSxLQUZNLE1BRUEsSUFBSVAsR0FBRyxLQUFLLDZCQUFSLElBQXlDQSxHQUFHLEtBQUssR0FBakQsSUFBd0RBLEdBQUcsS0FBSyxDQUFwRSxFQUF1RTtBQUM3RU8sTUFBQUEsTUFBTSxHQUFHLE1BQVQ7QUFDQSxLQUZNLE1BRUE7QUFDTkEsTUFBQUEsTUFBTSxHQUFHLFNBQVQ7QUFDQTs7QUFDRCxXQUFPQSxNQUFQO0FBQ0EsR0FaTTs7QUFhUEQsRUFBQUEsZ0NBQWdDLENBQUNwQixjQUFqQyxHQUFrRCx3RUFBbEQ7O0FBRUFiLEVBQUFBLGVBQWUsQ0FBQ0ssa0JBQWhCLEdBQXFDQSxrQkFBckM7QUFDQUwsRUFBQUEsZUFBZSxDQUFDYyxvQkFBaEIsR0FBdUNBLG9CQUF2QztBQUNBZCxFQUFBQSxlQUFlLENBQUNpQixpQkFBaEIsR0FBb0NBLGlCQUFwQztBQUNBakIsRUFBQUEsZUFBZSxDQUFDMEIscUJBQWhCLEdBQXdDQSxxQkFBeEM7QUFDQTFCLEVBQUFBLGVBQWUsQ0FBQzZCLDJCQUFoQixHQUE4Q0EsMkJBQTlDO0FBQ0E3QixFQUFBQSxlQUFlLENBQUMrQiwyQkFBaEIsR0FBOENBLDJCQUE5QztBQUNBL0IsRUFBQUEsZUFBZSxDQUFDaUMsZ0NBQWhCLEdBQW1EQSxnQ0FBbkQ7QUFDQTtBQUNBO0FBQ0E7O1NBQ2VqQyxlIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbGxlY3Rpb24gb2YgdGFibGUgZm9ybWF0dGVycy5cbiAqXG4gKiBAcGFyYW0ge29iamVjdH0gdGhpcyBUaGUgY29udGV4dFxuICogQHBhcmFtIHtzdHJpbmd9IHNOYW1lIFRoZSBpbm5lciBmdW5jdGlvbiBuYW1lXG4gKiBAcGFyYW0ge29iamVjdFtdfSBvQXJncyBUaGUgaW5uZXIgZnVuY3Rpb24gcGFyYW1ldGVyc1xuICogQHJldHVybnMge29iamVjdH0gVGhlIHZhbHVlIGZyb20gdGhlIGlubmVyIGZ1bmN0aW9uXG4gKi9cbmNvbnN0IHZhbHVlRm9ybWF0dGVycyA9IGZ1bmN0aW9uKHRoaXM6IG9iamVjdCwgc05hbWU6IHN0cmluZywgLi4ub0FyZ3M6IGFueVtdKTogYW55IHtcblx0aWYgKHZhbHVlRm9ybWF0dGVycy5oYXNPd25Qcm9wZXJ0eShzTmFtZSkpIHtcblx0XHRyZXR1cm4gKHZhbHVlRm9ybWF0dGVycyBhcyBhbnkpW3NOYW1lXS5hcHBseSh0aGlzLCBvQXJncyk7XG5cdH0gZWxzZSB7XG5cdFx0cmV0dXJuIFwiXCI7XG5cdH1cbn07XG5cbmNvbnN0IGZvcm1hdFdpdGhCcmFja2V0cyA9IChmaXJzdFBhcnQ/OiBzdHJpbmcsIHNlY29uZFBhcnQ/OiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuXHRpZiAoZmlyc3RQYXJ0ICYmIHNlY29uZFBhcnQpIHtcblx0XHRyZXR1cm4gc2FwLnVpXG5cdFx0XHQuZ2V0Q29yZSgpXG5cdFx0XHQuZ2V0TGlicmFyeVJlc291cmNlQnVuZGxlKFwic2FwLmZlLmNvcmVcIilcblx0XHRcdC5nZXRUZXh0KFwiQ19GT1JNQVRfRk9SX1RFWFRfQVJSQU5HRU1FTlRcIiwgW2ZpcnN0UGFydCwgc2Vjb25kUGFydF0pO1xuXHR9IGVsc2Uge1xuXHRcdHJldHVybiBmaXJzdFBhcnQgfHwgc2Vjb25kUGFydCB8fCBcIlwiO1xuXHR9XG59O1xuZm9ybWF0V2l0aEJyYWNrZXRzLl9fZnVuY3Rpb25OYW1lID0gXCJzYXAuZmUuY29yZS5mb3JtYXR0ZXJzLlZhbHVlRm9ybWF0dGVyI2Zvcm1hdFdpdGhCcmFja2V0c1wiO1xuXG5jb25zdCBmb3JtYXRXaXRoUGVyY2VudGFnZSA9IChzVmFsdWU/OiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuXHRyZXR1cm4gc1ZhbHVlICE9PSBudWxsICYmIHNWYWx1ZSAhPT0gdW5kZWZpbmVkID8gc1ZhbHVlICsgXCIgJVwiIDogXCJcIjtcbn07XG5mb3JtYXRXaXRoUGVyY2VudGFnZS5fX2Z1bmN0aW9uTmFtZSA9IFwic2FwLmZlLmNvcmUuZm9ybWF0dGVycy5WYWx1ZUZvcm1hdHRlciNmb3JtYXRXaXRoUGVyY2VudGFnZVwiO1xuXG5jb25zdCBjb21wdXRlUGVyY2VudGFnZSA9ICh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyLCB0YXJnZXQ6IHN0cmluZyB8IG51bWJlciwgc1VuaXQ/OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuXHRsZXQgc1BlcmNlbnRTdHJpbmc6IHN0cmluZztcblx0Y29uc3QgaVZhbHVlOiBudW1iZXIgPSB0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIgPyBwYXJzZUZsb2F0KHZhbHVlKSA6IHZhbHVlO1xuXHRjb25zdCBpVGFyZ2V0OiBudW1iZXIgPSB0eXBlb2YgdGFyZ2V0ID09PSBcInN0cmluZ1wiID8gcGFyc2VGbG9hdCh0YXJnZXQpIDogdGFyZ2V0O1xuXG5cdGlmIChzVW5pdCA9PT0gXCIlXCIpIHtcblx0XHRpZiAoaVZhbHVlID4gMTAwKSB7XG5cdFx0XHRzUGVyY2VudFN0cmluZyA9IFwiMTAwXCI7XG5cdFx0fSBlbHNlIGlmIChpVmFsdWUgPCAwKSB7XG5cdFx0XHRzUGVyY2VudFN0cmluZyA9IFwiMFwiO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRzUGVyY2VudFN0cmluZyA9IHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIiA/IHZhbHVlIDogdmFsdWU/LnRvU3RyaW5nKCk7XG5cdFx0fVxuXHR9IGVsc2UgaWYgKGlWYWx1ZSA+IGlUYXJnZXQpIHtcblx0XHRzUGVyY2VudFN0cmluZyA9IFwiMTAwXCI7XG5cdH0gZWxzZSBpZiAoaVZhbHVlIDwgMCkge1xuXHRcdHNQZXJjZW50U3RyaW5nID0gXCIwXCI7XG5cdH0gZWxzZSB7XG5cdFx0c1BlcmNlbnRTdHJpbmcgPSBpVmFsdWUgJiYgaVRhcmdldCA/ICgoaVZhbHVlIC8gaVRhcmdldCkgKiAxMDApLnRvU3RyaW5nKCkgOiBcIlwiO1xuXHR9XG5cdHJldHVybiBzUGVyY2VudFN0cmluZztcbn07XG5jb21wdXRlUGVyY2VudGFnZS5fX2Z1bmN0aW9uTmFtZSA9IFwic2FwLmZlLmNvcmUuZm9ybWF0dGVycy5WYWx1ZUZvcm1hdHRlciNjb21wdXRlUGVyY2VudGFnZVwiO1xuXG5leHBvcnQgY29uc3QgZm9ybWF0Q3JpdGljYWxpdHlJY29uID0gKHZhbD86IHN0cmluZyB8IG51bWJlcik6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG5cdGxldCBzSWNvbjogc3RyaW5nO1xuXHRpZiAodmFsID09PSBcIlVJLkNyaXRpY2FsaXR5VHlwZS9OZWdhdGl2ZVwiIHx8IHZhbCA9PT0gXCIxXCIgfHwgdmFsID09PSAxKSB7XG5cdFx0c0ljb24gPSBcInNhcC1pY29uOi8vbWVzc2FnZS1lcnJvclwiO1xuXHR9IGVsc2UgaWYgKHZhbCA9PT0gXCJVSS5Dcml0aWNhbGl0eVR5cGUvQ3JpdGljYWxcIiB8fCB2YWwgPT09IFwiMlwiIHx8IHZhbCA9PT0gMikge1xuXHRcdHNJY29uID0gXCJzYXAtaWNvbjovL21lc3NhZ2Utd2FybmluZ1wiO1xuXHR9IGVsc2UgaWYgKHZhbCA9PT0gXCJVSS5Dcml0aWNhbGl0eVR5cGUvUG9zaXRpdmVcIiB8fCB2YWwgPT09IFwiM1wiIHx8IHZhbCA9PT0gMykge1xuXHRcdHNJY29uID0gXCJzYXAtaWNvbjovL21lc3NhZ2Utc3VjY2Vzc1wiO1xuXHR9IGVsc2UgaWYgKHZhbCA9PT0gXCJVSS5Dcml0aWNhbGl0eVR5cGUvSW5mb3JtYXRpb25cIiB8fCB2YWwgPT09IFwiNVwiIHx8IHZhbCA9PT0gNSkge1xuXHRcdHNJY29uID0gXCJzYXAtaWNvbjovL21lc3NhZ2UtaW5mb3JtYXRpb25cIjtcblx0fSBlbHNlIHtcblx0XHRzSWNvbiA9IFwiXCI7XG5cdH1cblx0cmV0dXJuIHNJY29uO1xufTtcbmZvcm1hdENyaXRpY2FsaXR5SWNvbi5fX2Z1bmN0aW9uTmFtZSA9IFwic2FwLmZlLmNvcmUuZm9ybWF0dGVycy5WYWx1ZUZvcm1hdHRlciNmb3JtYXRDcml0aWNhbGl0eUljb25cIjtcblxuZXhwb3J0IGNvbnN0IGZvcm1hdENyaXRpY2FsaXR5VmFsdWVTdGF0ZSA9ICh2YWw/OiBzdHJpbmcgfCBudW1iZXIpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuXHRsZXQgc1ZhbHVlU3RhdGU6IHN0cmluZztcblx0aWYgKHZhbCA9PT0gXCJVSS5Dcml0aWNhbGl0eVR5cGUvTmVnYXRpdmVcIiB8fCB2YWwgPT09IFwiMVwiIHx8IHZhbCA9PT0gMSkge1xuXHRcdHNWYWx1ZVN0YXRlID0gXCJFcnJvclwiO1xuXHR9IGVsc2UgaWYgKHZhbCA9PT0gXCJVSS5Dcml0aWNhbGl0eVR5cGUvQ3JpdGljYWxcIiB8fCB2YWwgPT09IFwiMlwiIHx8IHZhbCA9PT0gMikge1xuXHRcdHNWYWx1ZVN0YXRlID0gXCJXYXJuaW5nXCI7XG5cdH0gZWxzZSBpZiAodmFsID09PSBcIlVJLkNyaXRpY2FsaXR5VHlwZS9Qb3NpdGl2ZVwiIHx8IHZhbCA9PT0gXCIzXCIgfHwgdmFsID09PSAzKSB7XG5cdFx0c1ZhbHVlU3RhdGUgPSBcIlN1Y2Nlc3NcIjtcblx0fSBlbHNlIGlmICh2YWwgPT09IFwiVUkuQ3JpdGljYWxpdHlUeXBlL0luZm9ybWF0aW9uXCIgfHwgdmFsID09PSBcIjVcIiB8fCB2YWwgPT09IDUpIHtcblx0XHRzVmFsdWVTdGF0ZSA9IFwiSW5kaWNhdGlvbjA1XCI7XG5cdH0gZWxzZSB7XG5cdFx0c1ZhbHVlU3RhdGUgPSBcIk5vbmVcIjtcblx0fVxuXHRyZXR1cm4gc1ZhbHVlU3RhdGU7XG59O1xuZm9ybWF0Q3JpdGljYWxpdHlWYWx1ZVN0YXRlLl9fZnVuY3Rpb25OYW1lID0gXCJzYXAuZmUuY29yZS5mb3JtYXR0ZXJzLlZhbHVlRm9ybWF0dGVyI2Zvcm1hdENyaXRpY2FsaXR5VmFsdWVTdGF0ZVwiO1xuXG5leHBvcnQgY29uc3QgZm9ybWF0Q3JpdGljYWxpdHlCdXR0b25UeXBlID0gKHZhbD86IHN0cmluZyB8IG51bWJlcik6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG5cdGxldCBzVHlwZTogc3RyaW5nO1xuXHRpZiAodmFsID09PSBcIlVJLkNyaXRpY2FsaXR5VHlwZS9OZWdhdGl2ZVwiIHx8IHZhbCA9PT0gXCIxXCIgfHwgdmFsID09PSAxKSB7XG5cdFx0c1R5cGUgPSBcIlJlamVjdFwiO1xuXHR9IGVsc2UgaWYgKHZhbCA9PT0gXCJVSS5Dcml0aWNhbGl0eVR5cGUvUG9zaXRpdmVcIiB8fCB2YWwgPT09IFwiM1wiIHx8IHZhbCA9PT0gMykge1xuXHRcdHNUeXBlID0gXCJBY2NlcHRcIjtcblx0fSBlbHNlIHtcblx0XHRzVHlwZSA9IFwiRGVmYXVsdFwiO1xuXHR9XG5cdHJldHVybiBzVHlwZTtcbn07XG5mb3JtYXRDcml0aWNhbGl0eUJ1dHRvblR5cGUuX19mdW5jdGlvbk5hbWUgPSBcInNhcC5mZS5jb3JlLmZvcm1hdHRlcnMuVmFsdWVGb3JtYXR0ZXIjZm9ybWF0Q3JpdGljYWxpdHlCdXR0b25UeXBlXCI7XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRDcml0aWNhbGl0eUNvbG9yTWljcm9DaGFydCA9ICh2YWw/OiBzdHJpbmcgfCBudW1iZXIpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuXHRsZXQgc0NvbG9yOiBzdHJpbmc7XG5cdGlmICh2YWwgPT09IFwiVUkuQ3JpdGljYWxpdHlUeXBlL05lZ2F0aXZlXCIgfHwgdmFsID09PSBcIjFcIiB8fCB2YWwgPT09IDEpIHtcblx0XHRzQ29sb3IgPSBcIkVycm9yXCI7XG5cdH0gZWxzZSBpZiAodmFsID09PSBcIlVJLkNyaXRpY2FsaXR5VHlwZS9Dcml0aWNhbFwiIHx8IHZhbCA9PT0gXCIyXCIgfHwgdmFsID09PSAyKSB7XG5cdFx0c0NvbG9yID0gXCJDcml0aWNhbFwiO1xuXHR9IGVsc2UgaWYgKHZhbCA9PT0gXCJVSS5Dcml0aWNhbGl0eVR5cGUvUG9zaXRpdmVcIiB8fCB2YWwgPT09IFwiM1wiIHx8IHZhbCA9PT0gMykge1xuXHRcdHNDb2xvciA9IFwiR29vZFwiO1xuXHR9IGVsc2Uge1xuXHRcdHNDb2xvciA9IFwiTmV1dHJhbFwiO1xuXHR9XG5cdHJldHVybiBzQ29sb3I7XG59O1xuZm9ybWF0Q3JpdGljYWxpdHlDb2xvck1pY3JvQ2hhcnQuX19mdW5jdGlvbk5hbWUgPSBcInNhcC5mZS5jb3JlLmZvcm1hdHRlcnMuVmFsdWVGb3JtYXR0ZXIjZm9ybWF0Q3JpdGljYWxpdHlDb2xvck1pY3JvQ2hhcnRcIjtcblxudmFsdWVGb3JtYXR0ZXJzLmZvcm1hdFdpdGhCcmFja2V0cyA9IGZvcm1hdFdpdGhCcmFja2V0cztcbnZhbHVlRm9ybWF0dGVycy5mb3JtYXRXaXRoUGVyY2VudGFnZSA9IGZvcm1hdFdpdGhQZXJjZW50YWdlO1xudmFsdWVGb3JtYXR0ZXJzLmNvbXB1dGVQZXJjZW50YWdlID0gY29tcHV0ZVBlcmNlbnRhZ2U7XG52YWx1ZUZvcm1hdHRlcnMuZm9ybWF0Q3JpdGljYWxpdHlJY29uID0gZm9ybWF0Q3JpdGljYWxpdHlJY29uO1xudmFsdWVGb3JtYXR0ZXJzLmZvcm1hdENyaXRpY2FsaXR5VmFsdWVTdGF0ZSA9IGZvcm1hdENyaXRpY2FsaXR5VmFsdWVTdGF0ZTtcbnZhbHVlRm9ybWF0dGVycy5mb3JtYXRDcml0aWNhbGl0eUJ1dHRvblR5cGUgPSBmb3JtYXRDcml0aWNhbGl0eUJ1dHRvblR5cGU7XG52YWx1ZUZvcm1hdHRlcnMuZm9ybWF0Q3JpdGljYWxpdHlDb2xvck1pY3JvQ2hhcnQgPSBmb3JtYXRDcml0aWNhbGl0eUNvbG9yTWljcm9DaGFydDtcbi8qKlxuICogQGdsb2JhbFxuICovXG5leHBvcnQgZGVmYXVsdCB2YWx1ZUZvcm1hdHRlcnM7XG4iXX0=
187
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlZhbHVlRm9ybWF0dGVyLnRzIl0sIm5hbWVzIjpbInZhbHVlRm9ybWF0dGVycyIsInNOYW1lIiwiaGFzT3duUHJvcGVydHkiLCJvQXJncyIsImFwcGx5IiwiZm9ybWF0V2l0aEJyYWNrZXRzIiwiZmlyc3RQYXJ0Iiwic2Vjb25kUGFydCIsInNhcCIsInVpIiwiZ2V0Q29yZSIsImdldExpYnJhcnlSZXNvdXJjZUJ1bmRsZSIsImdldFRleHQiLCJfX2Z1bmN0aW9uTmFtZSIsImZvcm1hdFdpdGhQZXJjZW50YWdlIiwic1ZhbHVlIiwidW5kZWZpbmVkIiwiY29tcHV0ZVBlcmNlbnRhZ2UiLCJ2YWx1ZSIsInRhcmdldCIsInNVbml0Iiwic1BlcmNlbnRTdHJpbmciLCJpVmFsdWUiLCJwYXJzZUZsb2F0IiwiaVRhcmdldCIsInRvU3RyaW5nIiwiZm9ybWF0Q3JpdGljYWxpdHlJY29uIiwidmFsIiwic0ljb24iLCJmb3JtYXRDcml0aWNhbGl0eVZhbHVlU3RhdGUiLCJzVmFsdWVTdGF0ZSIsImZvcm1hdENyaXRpY2FsaXR5QnV0dG9uVHlwZSIsInNUeXBlIiwiZm9ybWF0Q3JpdGljYWxpdHlDb2xvck1pY3JvQ2hhcnQiLCJzQ29sb3IiLCJmb3JtYXRQcm9ncmVzc0luZGljYXRvclRleHQiLCJ1bml0IiwidW5pdFNwbGl0Iiwic3BsaXQiLCJzZWFyY2hVbml0IiwiZGF0ZUZvcm1hdCIsIkRhdGVGb3JtYXQiLCJnZXREYXRlSW5zdGFuY2UiLCJsb2NhbGVEYXRhIiwib0xvY2FsZURhdGEiLCJtRGF0YSIsIm9SZXNvdXJjZU1vZGVsIiwidW5pdERpc3BsYXllZCIsImRhdGVGaWVsZHMiLCJkaXNwbGF5TmFtZSIsInVuaXRzIiwic2hvcnQiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7OztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNQSxlQUFlLEdBQUcsVUFBdUJDLEtBQXZCLEVBQTREO0FBQ25GLFFBQUlELGVB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T0FGRCxNQUVPLElBQUlOLFVBQUosYUFBSUEsVUFBSixvQ0FBSUEsVUFBVSxDQUFFTyxLQUFoQix1RUFBSSxrQkFBbUJDLEtBQW5CLENBQXlCZixJQUF6QixDQUFKLGtEQUFJLHNCQUFnQ2EsV0FBcEMsRUFBaUQ7QUFDdkRGLFFBQUFBLGFBQWEsR0FBR0osVUFBVSxDQUFDTyxLQUFYLENBQWlCQyxLQUFqQixDQUF1QmYsSUFBdkIsRUFBNkJhLFdBQTdDO0FBQ0E7O0FBRUQsYUFBT0gsY0FBYyxDQUFDbEMsT0FBZixDQUF1QixvREFBdkIsRUFBNkUsQ0FBQ00sS0FBRCxFQUFRQyxNQUFSLEVBQWdCNEIsYUFBaEIsQ0FBN0UsQ0FBUDtBQUNBO0FBQ0QsR0FoQk07O0FBaUJQWixFQUFBQSwyQkFBMkIsQ0FBQ3RCLGNBQTVCLEdBQTZDLG1FQUE3Qzs7QUFFQWIsRUFBQUEsZUFBZSxDQUFDSyxrQkFBaEIsR0FBcUNBLGtCQUFyQztBQUNBTCxFQUFBQSxlQUFlLENBQUNjLG9CQUFoQixHQUF1Q0Esb0JBQXZDO0FBQ0FkLEVBQUFBLGVBQWUsQ0FBQ2lCLGlCQUFoQixHQUFvQ0EsaUJBQXBDO0FBQ0FqQixFQUFBQSxlQUFlLENBQUMwQixxQkFBaEIsR0FBd0NBLHFCQUF4QztBQUNBMUIsRUFBQUEsZUFBZSxDQUFDNkIsMkJBQWhCLEdBQThDQSwyQkFBOUM7QUFDQTdCLEVBQUFBLGVBQWUsQ0FBQytCLDJCQUFoQixHQUE4Q0EsMkJBQTlDO0FBQ0EvQixFQUFBQSxlQUFlLENBQUNpQyxnQ0FBaEIsR0FBbURBLGdDQUFuRDtBQUNBakMsRUFBQUEsZUFBZSxDQUFDbUMsMkJBQWhCLEdBQThDQSwyQkFBOUM7QUFDQTtBQUNBO0FBQ0E7O1NBQ2VuQyxlIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVzb3VyY2VCdW5kbGUgZnJvbSBcInNhcC9iYXNlL2kxOG4vUmVzb3VyY2VCdW5kbGVcIjtcbmltcG9ydCBEYXRlRm9ybWF0IGZyb20gXCJzYXAvdWkvY29yZS9mb3JtYXQvRGF0ZUZvcm1hdFwiO1xuXG4vKipcbiAqIENvbGxlY3Rpb24gb2YgdGFibGUgZm9ybWF0dGVycy5cbiAqXG4gKiBAcGFyYW0ge29iamVjdH0gdGhpcyBUaGUgY29udGV4dFxuICogQHBhcmFtIHtzdHJpbmd9IHNOYW1lIFRoZSBpbm5lciBmdW5jdGlvbiBuYW1lXG4gKiBAcGFyYW0ge29iamVjdFtdfSBvQXJncyBUaGUgaW5uZXIgZnVuY3Rpb24gcGFyYW1ldGVyc1xuICogQHJldHVybnMge29iamVjdH0gVGhlIHZhbHVlIGZyb20gdGhlIGlubmVyIGZ1bmN0aW9uXG4gKi9cbmNvbnN0IHZhbHVlRm9ybWF0dGVycyA9IGZ1bmN0aW9uKHRoaXM6IG9iamVjdCwgc05hbWU6IHN0cmluZywgLi4ub0FyZ3M6IGFueVtdKTogYW55IHtcblx0aWYgKHZhbHVlRm9ybWF0dGVycy5oYXNPd25Qcm9wZXJ0eShzTmFtZSkpIHtcblx0XHRyZXR1cm4gKHZhbHVlRm9ybWF0dGVycyBhcyBhbnkpW3NOYW1lXS5hcHBseSh0aGlzLCBvQXJncyk7XG5cdH0gZWxzZSB7XG5cdFx0cmV0dXJuIFwiXCI7XG5cdH1cbn07XG5cbmNvbnN0IGZvcm1hdFdpdGhCcmFja2V0cyA9IChmaXJzdFBhcnQ/OiBzdHJpbmcsIHNlY29uZFBhcnQ/OiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuXHRpZiAoZmlyc3RQYXJ0ICYmIHNlY29uZFBhcnQpIHtcblx0XHRyZXR1cm4gKHNhcC51aS5nZXRDb3JlKCkuZ2V0TGlicmFyeVJlc291cmNlQnVuZGxlKFwic2FwLmZlLmNvcmVcIikgYXMgUmVzb3VyY2VCdW5kbGUpLmdldFRleHQoXCJDX0ZPUk1BVF9GT1JfVEVYVF9BUlJBTkdFTUVOVFwiLCBbXG5cdFx0XHRmaXJzdFBhcnQsXG5cdFx0XHRzZWNvbmRQYXJ0XG5cdFx0XSk7XG5cdH0gZWxzZSB7XG5cdFx0cmV0dXJuIGZpcnN0UGFydCB8fCBzZWNvbmRQYXJ0IHx8IFwiXCI7XG5cdH1cbn07XG5mb3JtYXRXaXRoQnJhY2tldHMuX19mdW5jdGlvbk5hbWUgPSBcInNhcC5mZS5jb3JlLmZvcm1hdHRlcnMuVmFsdWVGb3JtYXR0ZXIjZm9ybWF0V2l0aEJyYWNrZXRzXCI7XG5cbmNvbnN0IGZvcm1hdFdpdGhQZXJjZW50YWdlID0gKHNWYWx1ZT86IHN0cmluZyk6IHN0cmluZyA9PiB7XG5cdHJldHVybiBzVmFsdWUgIT09IG51bGwgJiYgc1ZhbHVlICE9PSB1bmRlZmluZWQgPyBzVmFsdWUgKyBcIiAlXCIgOiBcIlwiO1xufTtcbmZvcm1hdFdpdGhQZXJjZW50YWdlLl9fZnVuY3Rpb25OYW1lID0gXCJzYXAuZmUuY29yZS5mb3JtYXR0ZXJzLlZhbHVlRm9ybWF0dGVyI2Zvcm1hdFdpdGhQZXJjZW50YWdlXCI7XG5cbmNvbnN0IGNvbXB1dGVQZXJjZW50YWdlID0gKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIsIHRhcmdldDogc3RyaW5nIHwgbnVtYmVyLCBzVW5pdD86IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG5cdGxldCBzUGVyY2VudFN0cmluZzogc3RyaW5nO1xuXHRjb25zdCBpVmFsdWU6IG51bWJlciA9IHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIiA/IHBhcnNlRmxvYXQodmFsdWUpIDogdmFsdWU7XG5cdGNvbnN0IGlUYXJnZXQ6IG51bWJlciA9IHR5cGVvZiB0YXJnZXQgPT09IFwic3RyaW5nXCIgPyBwYXJzZUZsb2F0KHRhcmdldCkgOiB0YXJnZXQ7XG5cblx0aWYgKHNVbml0ID09PSBcIiVcIikge1xuXHRcdGlmIChpVmFsdWUgPiAxMDApIHtcblx0XHRcdHNQZXJjZW50U3RyaW5nID0gXCIxMDBcIjtcblx0XHR9IGVsc2UgaWYgKGlWYWx1ZSA8PSAwKSB7XG5cdFx0XHRzUGVyY2VudFN0cmluZyA9IFwiMFwiO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRzUGVyY2VudFN0cmluZyA9IHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIiA/IHZhbHVlIDogdmFsdWU/LnRvU3RyaW5nKCk7XG5cdFx0fVxuXHR9IGVsc2UgaWYgKGlWYWx1ZSA+IGlUYXJnZXQpIHtcblx0XHRzUGVyY2VudFN0cmluZyA9IFwiMTAwXCI7XG5cdH0gZWxzZSBpZiAoaVZhbHVlIDw9IDApIHtcblx0XHRzUGVyY2VudFN0cmluZyA9IFwiMFwiO1xuXHR9IGVsc2Uge1xuXHRcdHNQZXJjZW50U3RyaW5nID0gaVZhbHVlICYmIGlUYXJnZXQgPyAoKGlWYWx1ZSAvIGlUYXJnZXQpICogMTAwKS50b1N0cmluZygpIDogXCIwXCI7XG5cdH1cblx0cmV0dXJuIHNQZXJjZW50U3RyaW5nO1xufTtcbmNvbXB1dGVQZXJjZW50YWdlLl9fZnVuY3Rpb25OYW1lID0gXCJzYXAuZmUuY29yZS5mb3JtYXR0ZXJzLlZhbHVlRm9ybWF0dGVyI2NvbXB1dGVQZXJjZW50YWdlXCI7XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRDcml0aWNhbGl0eUljb24gPSAodmFsPzogc3RyaW5nIHwgbnVtYmVyKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+IHtcblx0bGV0IHNJY29uOiBzdHJpbmc7XG5cdGlmICh2YWwgPT09IFwiVUkuQ3JpdGljYWxpdHlUeXBlL05lZ2F0aXZlXCIgfHwgdmFsID09PSBcIjFcIiB8fCB2YWwgPT09IDEpIHtcblx0XHRzSWNvbiA9IFwic2FwLWljb246Ly9tZXNzYWdlLWVycm9yXCI7XG5cdH0gZWxzZSBpZiAodmFsID09PSBcIlVJLkNyaXRpY2FsaXR5VHlwZS9Dcml0aWNhbFwiIHx8IHZhbCA9PT0gXCIyXCIgfHwgdmFsID09PSAyKSB7XG5cdFx0c0ljb24gPSBcInNhcC1pY29uOi8vbWVzc2FnZS13YXJuaW5nXCI7XG5cdH0gZWxzZSBpZiAodmFsID09PSBcIlVJLkNyaXRpY2FsaXR5VHlwZS9Qb3NpdGl2ZVwiIHx8IHZhbCA9PT0gXCIzXCIgfHwgdmFsID09PSAzKSB7XG5cdFx0c0ljb24gPSBcInNhcC1pY29uOi8vbWVzc2FnZS1zdWNjZXNzXCI7XG5cdH0gZWxzZSBpZiAodmFsID09PSBcIlVJLkNyaXRpY2FsaXR5VHlwZS9JbmZvcm1hdGlvblwiIHx8IHZhbCA9PT0gXCI1XCIgfHwgdmFsID09PSA1KSB7XG5cdFx0c0ljb24gPSBcInNhcC1pY29uOi8vbWVzc2FnZS1pbmZvcm1hdGlvblwiO1xuXHR9IGVsc2Uge1xuXHRcdHNJY29uID0gXCJcIjtcblx0fVxuXHRyZXR1cm4gc0ljb247XG59O1xuZm9ybWF0Q3JpdGljYWxpdHlJY29uLl9fZnVuY3Rpb25OYW1lID0gXCJzYXAuZmUuY29yZS5mb3JtYXR0ZXJzLlZhbHVlRm9ybWF0dGVyI2Zvcm1hdENyaXRpY2FsaXR5SWNvblwiO1xuXG5leHBvcnQgY29uc3QgZm9ybWF0Q3JpdGljYWxpdHlWYWx1ZVN0YXRlID0gKHZhbD86IHN0cmluZyB8IG51bWJlcik6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG5cdGxldCBzVmFsdWVTdGF0ZTogc3RyaW5nO1xuXHRpZiAodmFsID09PSBcIlVJLkNyaXRpY2FsaXR5VHlwZS9OZWdhdGl2ZVwiIHx8IHZhbCA9PT0gXCIxXCIgfHwgdmFsID09PSAxKSB7XG5cdFx0c1ZhbHVlU3RhdGUgPSBcIkVycm9yXCI7XG5cdH0gZWxzZSBpZiAodmFsID09PSBcIlVJLkNyaXRpY2FsaXR5VHlwZS9Dcml0aWNhbFwiIHx8IHZhbCA9PT0gXCIyXCIgfHwgdmFsID09PSAyKSB7XG5cdFx0c1ZhbHVlU3RhdGUgPSBcIldhcm5pbmdcIjtcblx0fSBlbHNlIGlmICh2YWwgPT09IFwiVUkuQ3JpdGljYWxpdHlUeXBlL1Bvc2l0aXZlXCIgfHwgdmFsID09PSBcIjNcIiB8fCB2YWwgPT09IDMpIHtcblx0XHRzVmFsdWVTdGF0ZSA9IFwiU3VjY2Vzc1wiO1xuXHR9IGVsc2UgaWYgKHZhbCA9PT0gXCJVSS5Dcml0aWNhbGl0eVR5cGUvSW5mb3JtYXRpb25cIiB8fCB2YWwgPT09IFwiNVwiIHx8IHZhbCA9PT0gNSkge1xuXHRcdHNWYWx1ZVN0YXRlID0gXCJJbmRpY2F0aW9uMDVcIjtcblx0fSBlbHNlIHtcblx0XHRzVmFsdWVTdGF0ZSA9IFwiTm9uZVwiO1xuXHR9XG5cdHJldHVybiBzVmFsdWVTdGF0ZTtcbn07XG5mb3JtYXRDcml0aWNhbGl0eVZhbHVlU3RhdGUuX19mdW5jdGlvbk5hbWUgPSBcInNhcC5mZS5jb3JlLmZvcm1hdHRlcnMuVmFsdWVGb3JtYXR0ZXIjZm9ybWF0Q3JpdGljYWxpdHlWYWx1ZVN0YXRlXCI7XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRDcml0aWNhbGl0eUJ1dHRvblR5cGUgPSAodmFsPzogc3RyaW5nIHwgbnVtYmVyKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+IHtcblx0bGV0IHNUeXBlOiBzdHJpbmc7XG5cdGlmICh2YWwgPT09IFwiVUkuQ3JpdGljYWxpdHlUeXBlL05lZ2F0aXZlXCIgfHwgdmFsID09PSBcIjFcIiB8fCB2YWwgPT09IDEpIHtcblx0XHRzVHlwZSA9IFwiUmVqZWN0XCI7XG5cdH0gZWxzZSBpZiAodmFsID09PSBcIlVJLkNyaXRpY2FsaXR5VHlwZS9Qb3NpdGl2ZVwiIHx8IHZhbCA9PT0gXCIzXCIgfHwgdmFsID09PSAzKSB7XG5cdFx0c1R5cGUgPSBcIkFjY2VwdFwiO1xuXHR9IGVsc2Uge1xuXHRcdHNUeXBlID0gXCJEZWZhdWx0XCI7XG5cdH1cblx0cmV0dXJuIHNUeXBlO1xufTtcbmZvcm1hdENyaXRpY2FsaXR5QnV0dG9uVHlwZS5fX2Z1bmN0aW9uTmFtZSA9IFwic2FwLmZlLmNvcmUuZm9ybWF0dGVycy5WYWx1ZUZvcm1hdHRlciNmb3JtYXRDcml0aWNhbGl0eUJ1dHRvblR5cGVcIjtcblxuZXhwb3J0IGNvbnN0IGZvcm1hdENyaXRpY2FsaXR5Q29sb3JNaWNyb0NoYXJ0ID0gKHZhbD86IHN0cmluZyB8IG51bWJlcik6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG5cdGxldCBzQ29sb3I6IHN0cmluZztcblx0aWYgKHZhbCA9PT0gXCJVSS5Dcml0aWNhbGl0eVR5cGUvTmVnYXRpdmVcIiB8fCB2YWwgPT09IFwiMVwiIHx8IHZhbCA9PT0gMSkge1xuXHRcdHNDb2xvciA9IFwiRXJyb3JcIjtcblx0fSBlbHNlIGlmICh2YWwgPT09IFwiVUkuQ3JpdGljYWxpdHlUeXBlL0NyaXRpY2FsXCIgfHwgdmFsID09PSBcIjJcIiB8fCB2YWwgPT09IDIpIHtcblx0XHRzQ29sb3IgPSBcIkNyaXRpY2FsXCI7XG5cdH0gZWxzZSBpZiAodmFsID09PSBcIlVJLkNyaXRpY2FsaXR5VHlwZS9Qb3NpdGl2ZVwiIHx8IHZhbCA9PT0gXCIzXCIgfHwgdmFsID09PSAzKSB7XG5cdFx0c0NvbG9yID0gXCJHb29kXCI7XG5cdH0gZWxzZSB7XG5cdFx0c0NvbG9yID0gXCJOZXV0cmFsXCI7XG5cdH1cblx0cmV0dXJuIHNDb2xvcjtcbn07XG5mb3JtYXRDcml0aWNhbGl0eUNvbG9yTWljcm9DaGFydC5fX2Z1bmN0aW9uTmFtZSA9IFwic2FwLmZlLmNvcmUuZm9ybWF0dGVycy5WYWx1ZUZvcm1hdHRlciNmb3JtYXRDcml0aWNhbGl0eUNvbG9yTWljcm9DaGFydFwiO1xuXG5leHBvcnQgY29uc3QgZm9ybWF0UHJvZ3Jlc3NJbmRpY2F0b3JUZXh0ID0gKHZhbHVlOiBhbnksIHRhcmdldDogYW55LCB1bml0OiBhbnkpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuXHRpZiAodmFsdWUgJiYgdGFyZ2V0ICYmIHVuaXQpIHtcblx0XHRjb25zdCB1bml0U3BsaXQgPSB1bml0LnNwbGl0KFwiLVwiKTtcblx0XHRjb25zdCBzZWFyY2hVbml0ID0gKHVuaXRTcGxpdFsxXSA9PT0gdW5kZWZpbmVkID8gdW5pdCA6IHVuaXRTcGxpdFsxXSkgKyBcIi1uYXJyb3dcIjtcblx0XHRjb25zdCBkYXRlRm9ybWF0ID0gRGF0ZUZvcm1hdC5nZXREYXRlSW5zdGFuY2UoKSBhcyBhbnk7XG5cdFx0Y29uc3QgbG9jYWxlRGF0YSA9IGRhdGVGb3JtYXQub0xvY2FsZURhdGEubURhdGE7XG5cdFx0Y29uc3Qgb1Jlc291cmNlTW9kZWwgPSBzYXAudWkuZ2V0Q29yZSgpLmdldExpYnJhcnlSZXNvdXJjZUJ1bmRsZShcInNhcC5mZS5tYWNyb3NcIikgYXMgUmVzb3VyY2VCdW5kbGU7XG5cdFx0bGV0IHVuaXREaXNwbGF5ZWQgPSB1bml0O1xuXHRcdGlmIChsb2NhbGVEYXRhPy5kYXRlRmllbGRzW3NlYXJjaFVuaXRdPy5kaXNwbGF5TmFtZSkge1xuXHRcdFx0dW5pdERpc3BsYXllZCA9IGxvY2FsZURhdGEuZGF0ZUZpZWxkc1tzZWFyY2hVbml0XS5kaXNwbGF5TmFtZTtcblx0XHR9IGVsc2UgaWYgKGxvY2FsZURhdGE/LnVuaXRzPy5zaG9ydFt1bml0XT8uZGlzcGxheU5hbWUpIHtcblx0XHRcdHVuaXREaXNwbGF5ZWQgPSBsb2NhbGVEYXRhLnVuaXRzLnNob3J0W3VuaXRdLmRpc3BsYXlOYW1lO1xuXHRcdH1cblxuXHRcdHJldHVybiBvUmVzb3VyY2VNb2RlbC5nZXRUZXh0KFwiVF9DT01NT05fUFJPR1JFU1NfSU5ESUNBVE9SX0RJU1BMQVlfVkFMVUVfV0lUSF9VT01cIiwgW3ZhbHVlLCB0YXJnZXQsIHVuaXREaXNwbGF5ZWRdKTtcblx0fVxufTtcbmZvcm1hdFByb2dyZXNzSW5kaWNhdG9yVGV4dC5fX2Z1bmN0aW9uTmFtZSA9IFwic2FwLmZlLmNvcmUuZm9ybWF0dGVycy5WYWx1ZUZvcm1hdHRlciNmb3JtYXRQcm9ncmVzc0luZGljYXRvclRleHRcIjtcblxudmFsdWVGb3JtYXR0ZXJzLmZvcm1hdFdpdGhCcmFja2V0cyA9IGZvcm1hdFdpdGhCcmFja2V0cztcbnZhbHVlRm9ybWF0dGVycy5mb3JtYXRXaXRoUGVyY2VudGFnZSA9IGZvcm1hdFdpdGhQZXJjZW50YWdlO1xudmFsdWVGb3JtYXR0ZXJzLmNvbXB1dGVQZXJjZW50YWdlID0gY29tcHV0ZVBlcmNlbnRhZ2U7XG52YWx1ZUZvcm1hdHRlcnMuZm9ybWF0Q3JpdGljYWxpdHlJY29uID0gZm9ybWF0Q3JpdGljYWxpdHlJY29uO1xudmFsdWVGb3JtYXR0ZXJzLmZvcm1hdENyaXRpY2FsaXR5VmFsdWVTdGF0ZSA9IGZvcm1hdENyaXRpY2FsaXR5VmFsdWVTdGF0ZTtcbnZhbHVlRm9ybWF0dGVycy5mb3JtYXRDcml0aWNhbGl0eUJ1dHRvblR5cGUgPSBmb3JtYXRDcml0aWNhbGl0eUJ1dHRvblR5cGU7XG52YWx1ZUZvcm1hdHRlcnMuZm9ybWF0Q3JpdGljYWxpdHlDb2xvck1pY3JvQ2hhcnQgPSBmb3JtYXRDcml0aWNhbGl0eUNvbG9yTWljcm9DaGFydDtcbnZhbHVlRm9ybWF0dGVycy5mb3JtYXRQcm9ncmVzc0luZGljYXRvclRleHQgPSBmb3JtYXRQcm9ncmVzc0luZGljYXRvclRleHQ7XG4vKipcbiAqIEBnbG9iYWxcbiAqL1xuZXhwb3J0IGRlZmF1bHQgdmFsdWVGb3JtYXR0ZXJzO1xuIl19
@@ -1,3 +1,6 @@
1
+ import ResourceBundle from "sap/base/i18n/ResourceBundle";
2
+ import DateFormat from "sap/ui/core/format/DateFormat";
3
+
1
4
  /**
2
5
  * Collection of table formatters.
3
6
  *
@@ -16,10 +19,10 @@ const valueFormatters = function(this: object, sName: string, ...oArgs: any[]):
16
19
 
17
20
  const formatWithBrackets = (firstPart?: string, secondPart?: string): string => {
18
21
  if (firstPart && secondPart) {
19
- return sap.ui
20
- .getCore()
21
- .getLibraryResourceBundle("sap.fe.core")
22
- .getText("C_FORMAT_FOR_TEXT_ARRANGEMENT", [firstPart, secondPart]);
22
+ return (sap.ui.getCore().getLibraryResourceBundle("sap.fe.core") as ResourceBundle).getText("C_FORMAT_FOR_TEXT_ARRANGEMENT", [
23
+ firstPart,
24
+ secondPart
25
+ ]);
23
26
  } else {
24
27
  return firstPart || secondPart || "";
25
28
  }
@@ -39,17 +42,17 @@ const computePercentage = (value: string | number, target: string | number, sUni
39
42
  if (sUnit === "%") {
40
43
  if (iValue > 100) {
41
44
  sPercentString = "100";
42
- } else if (iValue < 0) {
45
+ } else if (iValue <= 0) {
43
46
  sPercentString = "0";
44
47
  } else {
45
48
  sPercentString = typeof value === "string" ? value : value?.toString();
46
49
  }
47
50
  } else if (iValue > iTarget) {
48
51
  sPercentString = "100";
49
- } else if (iValue < 0) {
52
+ } else if (iValue <= 0) {
50
53
  sPercentString = "0";
51
54
  } else {
52
- sPercentString = iValue && iTarget ? ((iValue / iTarget) * 100).toString() : "";
55
+ sPercentString = iValue && iTarget ? ((iValue / iTarget) * 100).toString() : "0";
53
56
  }
54
57
  return sPercentString;
55
58
  };
@@ -117,6 +120,25 @@ export const formatCriticalityColorMicroChart = (val?: string | number): string
117
120
  };
118
121
  formatCriticalityColorMicroChart.__functionName = "sap.fe.core.formatters.ValueFormatter#formatCriticalityColorMicroChart";
119
122
 
123
+ export const formatProgressIndicatorText = (value: any, target: any, unit: any): string | undefined => {
124
+ if (value && target && unit) {
125
+ const unitSplit = unit.split("-");
126
+ const searchUnit = (unitSplit[1] === undefined ? unit : unitSplit[1]) + "-narrow";
127
+ const dateFormat = DateFormat.getDateInstance() as any;
128
+ const localeData = dateFormat.oLocaleData.mData;
129
+ const oResourceModel = sap.ui.getCore().getLibraryResourceBundle("sap.fe.macros") as ResourceBundle;
130
+ let unitDisplayed = unit;
131
+ if (localeData?.dateFields[searchUnit]?.displayName) {
132
+ unitDisplayed = localeData.dateFields[searchUnit].displayName;
133
+ } else if (localeData?.units?.short[unit]?.displayName) {
134
+ unitDisplayed = localeData.units.short[unit].displayName;
135
+ }
136
+
137
+ return oResourceModel.getText("T_COMMON_PROGRESS_INDICATOR_DISPLAY_VALUE_WITH_UOM", [value, target, unitDisplayed]);
138
+ }
139
+ };
140
+ formatProgressIndicatorText.__functionName = "sap.fe.core.formatters.ValueFormatter#formatProgressIndicatorText";
141
+
120
142
  valueFormatters.formatWithBrackets = formatWithBrackets;
121
143
  valueFormatters.formatWithPercentage = formatWithPercentage;
122
144
  valueFormatters.computePercentage = computePercentage;
@@ -124,6 +146,7 @@ valueFormatters.formatCriticalityIcon = formatCriticalityIcon;
124
146
  valueFormatters.formatCriticalityValueState = formatCriticalityValueState;
125
147
  valueFormatters.formatCriticalityButtonType = formatCriticalityButtonType;
126
148
  valueFormatters.formatCriticalityColorMicroChart = formatCriticalityColorMicroChart;
149
+ valueFormatters.formatProgressIndicatorText = formatProgressIndicatorText;
127
150
  /**
128
151
  * @global
129
152
  */
@@ -1,6 +1,7 @@
1
1
  /*!
2
- * SAPUI5
3
- * (c) Copyright 2009-2022 SAP SE. All rights reserved.
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ (c) Copyright 2009-2021 SAP SE. All rights reserved
4
+
4
5
  */
5
6
  sap.ui.define(
6
7
  ["sap/fe/core/TemplateComponent"],