@sapui5/sap.fe.core 1.131.0 → 1.133.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 (317) hide show
  1. package/package.json +1 -1
  2. package/src/sap/fe/core/.library +1 -1
  3. package/src/sap/fe/core/ActionRuntime.js +17 -23
  4. package/src/sap/fe/core/AppComponent.js +74 -36
  5. package/src/sap/fe/core/AppComponent.ts +70 -3
  6. package/src/sap/fe/core/AppStateHandler.js +44 -13
  7. package/src/sap/fe/core/AppStateHandler.ts +38 -0
  8. package/src/sap/fe/core/BaseController.js +3 -3
  9. package/src/sap/fe/core/CommonUtils.js +30 -37
  10. package/src/sap/fe/core/CommonUtils.ts +15 -13
  11. package/src/sap/fe/core/ExtensionAPI.js +29 -34
  12. package/src/sap/fe/core/ExtensionAPI.ts +3 -0
  13. package/src/sap/fe/core/InsightsFormattersExtension.js +2 -2
  14. package/src/sap/fe/core/PageController.js +40 -31
  15. package/src/sap/fe/core/PageController.ts +14 -1
  16. package/src/sap/fe/core/ResourceModel.js +4 -4
  17. package/src/sap/fe/core/ReuseComponent.js +27 -13
  18. package/src/sap/fe/core/ReuseComponent.ts +18 -0
  19. package/src/sap/fe/core/TemplateComponent.js +102 -89
  20. package/src/sap/fe/core/TemplateComponent.ts +20 -1
  21. package/src/sap/fe/core/TemplateModel.js +6 -7
  22. package/src/sap/fe/core/UIProvider.js +1 -1
  23. package/src/sap/fe/core/UIProvider.ts +2 -9
  24. package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +63 -48
  25. package/src/sap/fe/core/buildingBlocks/BuildingBlock.ts +56 -27
  26. package/src/sap/fe/core/buildingBlocks/IBuildingBlockOwnerComponent.js +9 -0
  27. package/src/sap/fe/core/buildingBlocks/IBuildingBlockOwnerComponent.ts +48 -0
  28. package/src/sap/fe/core/buildingBlocks/TraceInfo.js +4 -6
  29. package/src/sap/fe/core/buildingBlocks/templating/AttributeModel.js +2 -2
  30. package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockSupport.js +2 -3
  31. package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockTemplateProcessor.js +32 -18
  32. package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockTemplateProcessor.ts +30 -3
  33. package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockTemplatingBase.js +9 -13
  34. package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockTemplatingBase.ts +2 -1
  35. package/src/sap/fe/core/buildingBlocks/templating/RuntimeBuildingBlock.js +2 -2
  36. package/src/sap/fe/core/buildingBlocks/templating/RuntimeBuildingBlockFragment.js +19 -25
  37. package/src/sap/fe/core/buildingBlocks/templating/RuntimeBuildingBlockFragment.ts +1 -1
  38. package/src/sap/fe/core/controllerextensions/BaseControllerExtension.js +3 -4
  39. package/src/sap/fe/core/controllerextensions/CollaborativeDraft.js +20 -24
  40. package/src/sap/fe/core/controllerextensions/CollaborativeDraft.ts +10 -15
  41. package/src/sap/fe/core/controllerextensions/ContextSharing.js +3 -3
  42. package/src/sap/fe/core/controllerextensions/EditFlow.js +296 -246
  43. package/src/sap/fe/core/controllerextensions/EditFlow.ts +253 -175
  44. package/src/sap/fe/core/controllerextensions/Feedback.js +10 -11
  45. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +6 -6
  46. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +1 -0
  47. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +27 -36
  48. package/src/sap/fe/core/controllerextensions/InternalRouting.js +57 -78
  49. package/src/sap/fe/core/controllerextensions/InternalRouting.ts +42 -50
  50. package/src/sap/fe/core/controllerextensions/KPIManagement.js +12 -19
  51. package/src/sap/fe/core/controllerextensions/MessageHandler.js +23 -17
  52. package/src/sap/fe/core/controllerextensions/MessageHandler.ts +21 -7
  53. package/src/sap/fe/core/controllerextensions/PageReady.js +15 -21
  54. package/src/sap/fe/core/controllerextensions/Paginator.js +3 -3
  55. package/src/sap/fe/core/controllerextensions/Placeholder.js +3 -3
  56. package/src/sap/fe/core/controllerextensions/Recommendations.js +23 -36
  57. package/src/sap/fe/core/controllerextensions/Recommendations.ts +1 -1
  58. package/src/sap/fe/core/controllerextensions/Routing.js +3 -3
  59. package/src/sap/fe/core/controllerextensions/Share.js +19 -28
  60. package/src/sap/fe/core/controllerextensions/SideEffects.js +68 -32
  61. package/src/sap/fe/core/controllerextensions/SideEffects.ts +58 -6
  62. package/src/sap/fe/core/controllerextensions/Telemetry.js +4 -5
  63. package/src/sap/fe/core/controllerextensions/ViewState.js +23 -24
  64. package/src/sap/fe/core/controllerextensions/ViewState.ts +6 -1
  65. package/src/sap/fe/core/controllerextensions/cards/CollaborationManager.js +13 -10
  66. package/src/sap/fe/core/controllerextensions/cards/CollaborationManager.ts +13 -8
  67. package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +5 -5
  68. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js +15 -16
  69. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.ts +3 -4
  70. package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.js +288 -0
  71. package/src/sap/fe/core/controllerextensions/dialog/{OperationsDialog.block.tsx → OperationsDialog.tsx} +27 -29
  72. package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.js +41 -5
  73. package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.tsx +61 -8
  74. package/src/sap/fe/core/controllerextensions/editFlow/ODataOperation.js +404 -0
  75. package/src/sap/fe/core/controllerextensions/editFlow/ODataOperation.ts +502 -0
  76. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +35 -43
  77. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +34 -14
  78. package/src/sap/fe/core/controllerextensions/editFlow/draft.js +37 -27
  79. package/src/sap/fe/core/controllerextensions/editFlow/draft.ts +27 -15
  80. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js +51 -39
  81. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.ts +75 -34
  82. package/src/sap/fe/core/controllerextensions/editFlow/editFlowConstants.js +4 -4
  83. package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.js +88 -427
  84. package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.ts +82 -620
  85. package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +9 -5
  86. package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +6 -5
  87. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +116 -79
  88. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.ts +87 -13
  89. package/src/sap/fe/core/controllerextensions/pageReady/DataQueryWatcher.js +4 -6
  90. package/src/sap/fe/core/controllerextensions/recommendations/Telemetry.js +5 -7
  91. package/src/sap/fe/core/controllerextensions/routing/ContextPathHelper.js +6 -7
  92. package/src/sap/fe/core/controllerextensions/routing/NavigationReason.js +4 -4
  93. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +58 -20
  94. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.ts +55 -4
  95. package/src/sap/fe/core/controllerextensions/viewState/IViewStateContributor.js +1 -1
  96. package/src/sap/fe/core/controllerextensions/viewState/IViewStateContributor.ts +1 -1
  97. package/src/sap/fe/core/controllerextensions/viewState/IViewStateContributorMixin.js +9 -12
  98. package/src/sap/fe/core/controls/CommandExecution.js +2 -2
  99. package/src/sap/fe/core/controls/ComponentLoader.js +20 -21
  100. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.js +250 -0
  101. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/{DraftDataLossDialog.block.tsx → DraftDataLossDialog.tsx} +31 -19
  102. package/src/sap/fe/core/controls/FormElementWrapper.js +19 -21
  103. package/src/sap/fe/core/controls/HideFormGroupAutomatically.js +114 -0
  104. package/src/sap/fe/core/controls/HideFormGroupAutomatically.ts +115 -0
  105. package/src/sap/fe/core/controls/Recommendations/ConfirmRecommendationDialog.js +454 -0
  106. package/src/sap/fe/core/controls/Recommendations/{ConfirmRecommendationDialog.block.tsx → ConfirmRecommendationDialog.tsx} +5 -9
  107. package/src/sap/fe/core/converters/ConverterContext.js +17 -18
  108. package/src/sap/fe/core/converters/ConverterContext.ts +10 -15
  109. package/src/sap/fe/core/converters/ManifestSettings.js +29 -28
  110. package/src/sap/fe/core/converters/ManifestSettings.ts +22 -1
  111. package/src/sap/fe/core/converters/ManifestWrapper.js +26 -48
  112. package/src/sap/fe/core/converters/MetaModelConverter.js +21 -28
  113. package/src/sap/fe/core/converters/MetaModelConverter.ts +2 -0
  114. package/src/sap/fe/core/converters/TemplateConverter.js +17 -21
  115. package/src/sap/fe/core/converters/TemplateConverter.ts +5 -3
  116. package/src/sap/fe/core/converters/annotations/DataField.js +69 -66
  117. package/src/sap/fe/core/converters/annotations/DataField.ts +30 -0
  118. package/src/sap/fe/core/converters/common/AnnotationConverter.js +20 -23
  119. package/src/sap/fe/core/converters/controls/Common/Action.js +178 -43
  120. package/src/sap/fe/core/converters/controls/Common/Action.ts +202 -19
  121. package/src/sap/fe/core/converters/controls/Common/Chart.js +47 -22
  122. package/src/sap/fe/core/converters/controls/Common/Chart.ts +50 -5
  123. package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +16 -23
  124. package/src/sap/fe/core/converters/controls/Common/Form.js +25 -38
  125. package/src/sap/fe/core/converters/controls/Common/Form.ts +3 -0
  126. package/src/sap/fe/core/converters/controls/Common/KPI.js +32 -47
  127. package/src/sap/fe/core/converters/controls/Common/Table.js +464 -506
  128. package/src/sap/fe/core/converters/controls/Common/Table.ts +335 -219
  129. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +17 -28
  130. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +1 -2
  131. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +66 -90
  132. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +10 -1
  133. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +49 -73
  134. package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.js +6 -10
  135. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +35 -50
  136. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +110 -60
  137. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +137 -41
  138. package/src/sap/fe/core/converters/helpers/Aggregation.js +19 -30
  139. package/src/sap/fe/core/converters/helpers/Aggregation.ts +5 -5
  140. package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +11 -14
  141. package/src/sap/fe/core/converters/helpers/DataFieldHelper.js +14 -21
  142. package/src/sap/fe/core/converters/helpers/InsightsHelpers.js +4 -6
  143. package/src/sap/fe/core/converters/helpers/IssueManager.js +7 -7
  144. package/src/sap/fe/core/converters/helpers/Key.js +1 -1
  145. package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.js +2 -3
  146. package/src/sap/fe/core/converters/objectPage/FormMenuActions.js +18 -52
  147. package/src/sap/fe/core/converters/objectPage/FormMenuActions.ts +0 -34
  148. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +103 -74
  149. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +111 -39
  150. package/src/sap/fe/core/converters/templates/ListReportConverter.js +28 -31
  151. package/src/sap/fe/core/converters/templates/ListReportConverter.ts +17 -9
  152. package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +61 -52
  153. package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +60 -21
  154. package/src/sap/fe/core/definition/FEDefinition.js +104 -44
  155. package/src/sap/fe/core/designtime/AppComponent.designtime.js +37 -7
  156. package/src/sap/fe/core/designtime/AppComponent.designtime.ts +42 -2
  157. package/src/sap/fe/core/formatters/CollaborationFormatter.js +4 -5
  158. package/src/sap/fe/core/formatters/FiscalFormat.js +24 -24
  159. package/src/sap/fe/core/formatters/ValueFormatter.js +4 -23
  160. package/src/sap/fe/core/formatters/ValueFormatter.ts +0 -18
  161. package/src/sap/fe/core/fpm/Component.js +12 -14
  162. package/src/sap/fe/core/fpm/manifest.json +1 -1
  163. package/src/sap/fe/core/helpers/AppStartupHelper.js +20 -15
  164. package/src/sap/fe/core/helpers/AppStartupHelper.ts +22 -13
  165. package/src/sap/fe/core/helpers/BindingHelper.js +3 -3
  166. package/src/sap/fe/core/helpers/BindingHelper.ts +1 -1
  167. package/src/sap/fe/core/helpers/DeleteHelper.js +55 -62
  168. package/src/sap/fe/core/helpers/DeleteHelper.ts +48 -51
  169. package/src/sap/fe/core/helpers/ExcelFormatHelper.js +4 -7
  170. package/src/sap/fe/core/helpers/FPMHelper.js +4 -7
  171. package/src/sap/fe/core/helpers/HTTP503Handler.js +2 -1
  172. package/src/sap/fe/core/helpers/HTTP503Handler.ts +4 -3
  173. package/src/sap/fe/core/helpers/KeepAliveHelper.js +5 -5
  174. package/src/sap/fe/core/helpers/KeepAliveRefreshTypes.js +6 -6
  175. package/src/sap/fe/core/helpers/LoaderUtils.js +8 -3
  176. package/src/sap/fe/core/helpers/LoaderUtils.ts +15 -4
  177. package/src/sap/fe/core/helpers/MessageStrip.js +3 -4
  178. package/src/sap/fe/core/helpers/MetaModelFunction.js +26 -40
  179. package/src/sap/fe/core/helpers/MetaPath.js +9 -7
  180. package/src/sap/fe/core/helpers/MetaPath.ts +9 -3
  181. package/src/sap/fe/core/helpers/ModelHelper.js +33 -57
  182. package/src/sap/fe/core/helpers/ModelHelper.ts +3 -3
  183. package/src/sap/fe/core/helpers/PasteHelper.js +11 -19
  184. package/src/sap/fe/core/helpers/PromiseKeeper.js +1 -1
  185. package/src/sap/fe/core/helpers/RecommendationHelper.js +3 -4
  186. package/src/sap/fe/core/helpers/ResourceModelHelper.js +3 -5
  187. package/src/sap/fe/core/helpers/SizeHelper.js +3 -5
  188. package/src/sap/fe/core/helpers/StableIdHelper.js +13 -11
  189. package/src/sap/fe/core/helpers/StableIdHelper.ts +5 -1
  190. package/src/sap/fe/core/helpers/StandardRecommendationHelper.js +28 -38
  191. package/src/sap/fe/core/helpers/Synchronization.js +1 -1
  192. package/src/sap/fe/core/helpers/TitleHelper.js +19 -40
  193. package/src/sap/fe/core/helpers/TitleHelper.ts +5 -25
  194. package/src/sap/fe/core/helpers/TypeGuards.js +25 -18
  195. package/src/sap/fe/core/helpers/TypeGuards.ts +7 -0
  196. package/src/sap/fe/core/helpers/WebSocket.js +4 -4
  197. package/src/sap/fe/core/library.js +8 -7
  198. package/src/sap/fe/core/library.ts +2 -0
  199. package/src/sap/fe/core/manifestMerger/AddNewPage.js +9 -11
  200. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +14 -25
  201. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +15 -17
  202. package/src/sap/fe/core/messagebundle.properties +21 -0
  203. package/src/sap/fe/core/messagebundle_ar.properties +5 -1
  204. package/src/sap/fe/core/messagebundle_bg.properties +4 -0
  205. package/src/sap/fe/core/messagebundle_ca.properties +4 -0
  206. package/src/sap/fe/core/messagebundle_cnr.properties +4 -0
  207. package/src/sap/fe/core/messagebundle_cs.properties +8 -4
  208. package/src/sap/fe/core/messagebundle_cy.properties +4 -0
  209. package/src/sap/fe/core/messagebundle_da.properties +4 -0
  210. package/src/sap/fe/core/messagebundle_de.properties +4 -0
  211. package/src/sap/fe/core/messagebundle_el.properties +4 -0
  212. package/src/sap/fe/core/messagebundle_en.properties +4 -0
  213. package/src/sap/fe/core/messagebundle_en_GB.properties +4 -0
  214. package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +4 -0
  215. package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +249 -231
  216. package/src/sap/fe/core/messagebundle_es.properties +5 -1
  217. package/src/sap/fe/core/messagebundle_es_MX.properties +4 -0
  218. package/src/sap/fe/core/messagebundle_et.properties +4 -0
  219. package/src/sap/fe/core/messagebundle_fi.properties +4 -0
  220. package/src/sap/fe/core/messagebundle_fr.properties +6 -2
  221. package/src/sap/fe/core/messagebundle_fr_CA.properties +4 -0
  222. package/src/sap/fe/core/messagebundle_hi.properties +4 -0
  223. package/src/sap/fe/core/messagebundle_hr.properties +4 -0
  224. package/src/sap/fe/core/messagebundle_hu.properties +4 -0
  225. package/src/sap/fe/core/messagebundle_id.properties +4 -0
  226. package/src/sap/fe/core/messagebundle_it.properties +4 -0
  227. package/src/sap/fe/core/messagebundle_iw.properties +4 -0
  228. package/src/sap/fe/core/messagebundle_ja.properties +4 -0
  229. package/src/sap/fe/core/messagebundle_kk.properties +4 -0
  230. package/src/sap/fe/core/messagebundle_ko.properties +4 -0
  231. package/src/sap/fe/core/messagebundle_lt.properties +4 -0
  232. package/src/sap/fe/core/messagebundle_lv.properties +4 -0
  233. package/src/sap/fe/core/messagebundle_mk.properties +4 -0
  234. package/src/sap/fe/core/messagebundle_ms.properties +4 -0
  235. package/src/sap/fe/core/messagebundle_nl.properties +4 -0
  236. package/src/sap/fe/core/messagebundle_no.properties +4 -0
  237. package/src/sap/fe/core/messagebundle_pl.properties +4 -0
  238. package/src/sap/fe/core/messagebundle_pt.properties +4 -0
  239. package/src/sap/fe/core/messagebundle_pt_PT.properties +4 -0
  240. package/src/sap/fe/core/messagebundle_ro.properties +4 -0
  241. package/src/sap/fe/core/messagebundle_ru.properties +4 -0
  242. package/src/sap/fe/core/messagebundle_sh.properties +4 -0
  243. package/src/sap/fe/core/messagebundle_sk.properties +4 -0
  244. package/src/sap/fe/core/messagebundle_sl.properties +4 -0
  245. package/src/sap/fe/core/messagebundle_sr.properties +4 -0
  246. package/src/sap/fe/core/messagebundle_sv.properties +4 -0
  247. package/src/sap/fe/core/messagebundle_th.properties +4 -0
  248. package/src/sap/fe/core/messagebundle_tr.properties +5 -1
  249. package/src/sap/fe/core/messagebundle_uk.properties +4 -0
  250. package/src/sap/fe/core/messagebundle_vi.properties +4 -0
  251. package/src/sap/fe/core/messagebundle_zh_CN.properties +4 -0
  252. package/src/sap/fe/core/messagebundle_zh_TW.properties +4 -0
  253. package/src/sap/fe/core/operationsHelper.js +23 -27
  254. package/src/sap/fe/core/operationsHelper.ts +6 -7
  255. package/src/sap/fe/core/rootView/Fcl.controller.js +53 -40
  256. package/src/sap/fe/core/rootView/Fcl.controller.ts +42 -7
  257. package/src/sap/fe/core/rootView/NavContainer.controller.js +7 -10
  258. package/src/sap/fe/core/rootView/RootViewBaseController.js +22 -21
  259. package/src/sap/fe/core/rootView/RootViewBaseController.ts +10 -2
  260. package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +3 -3
  261. package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +4 -3
  262. package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +1 -0
  263. package/src/sap/fe/core/services/CollaborationManagerServiceFactory.js +12 -10
  264. package/src/sap/fe/core/services/CollaborationManagerServiceFactory.ts +6 -2
  265. package/src/sap/fe/core/services/CollaborativeToolsServiceFactory.js +8 -13
  266. package/src/sap/fe/core/services/ContextSharingServiceFactory.js +5 -7
  267. package/src/sap/fe/core/services/EnvironmentServiceFactory.js +31 -8
  268. package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +31 -5
  269. package/src/sap/fe/core/services/InlineEditServiceFactory.js +190 -0
  270. package/src/sap/fe/core/services/InlineEditServiceFactory.ts +226 -0
  271. package/src/sap/fe/core/services/NavigationServiceFactory.js +10 -15
  272. package/src/sap/fe/core/services/ResourceModelServiceFactory.js +3 -3
  273. package/src/sap/fe/core/services/RoutingServiceFactory.js +76 -56
  274. package/src/sap/fe/core/services/RoutingServiceFactory.ts +47 -14
  275. package/src/sap/fe/core/services/ShellServicesFactory.js +32 -34
  276. package/src/sap/fe/core/services/SideEffectsServiceFactory.js +75 -60
  277. package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +58 -12
  278. package/src/sap/fe/core/services/TelemetryServiceFactory.js +8 -9
  279. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +13 -18
  280. package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +3 -0
  281. package/src/sap/fe/core/services/ValueHelpHistoryServiceFactory.js +7 -9
  282. package/src/sap/fe/core/services/collaborativeDraftServiceFactory.js +12 -16
  283. package/src/sap/fe/core/services/collaborativeDraftServiceFactory.ts +1 -1
  284. package/src/sap/fe/core/services/valueHelpService/HistoryOptOutProvider.js +4 -7
  285. package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +5 -6
  286. package/src/sap/fe/core/support/CommonHelper.js +2 -3
  287. package/src/sap/fe/core/support/Diagnostics.js +1 -1
  288. package/src/sap/fe/core/templating/ActionHelper.js +3 -4
  289. package/src/sap/fe/core/templating/CommonFormatters.js +6 -8
  290. package/src/sap/fe/core/templating/CommonFormatters.ts +2 -2
  291. package/src/sap/fe/core/templating/CriticalityFormatters.js +53 -5
  292. package/src/sap/fe/core/templating/CriticalityFormatters.ts +129 -7
  293. package/src/sap/fe/core/templating/DataFieldFormatters.js +8 -11
  294. package/src/sap/fe/core/templating/DataFieldFormatters.ts +1 -1
  295. package/src/sap/fe/core/templating/DataModelPathHelper.js +33 -56
  296. package/src/sap/fe/core/templating/DisplayModeFormatter.js +4 -5
  297. package/src/sap/fe/core/templating/EntitySetHelper.js +11 -19
  298. package/src/sap/fe/core/templating/EntityTypeHelper.js +4 -5
  299. package/src/sap/fe/core/templating/FieldControlHelper.js +13 -20
  300. package/src/sap/fe/core/templating/FilterTemplating.js +6 -9
  301. package/src/sap/fe/core/templating/PropertyHelper.js +33 -63
  302. package/src/sap/fe/core/templating/PropertyHelper.ts +0 -1
  303. package/src/sap/fe/core/templating/SemanticObjectHelper.js +13 -21
  304. package/src/sap/fe/core/templating/UIFormatters.js +57 -78
  305. package/src/sap/fe/core/templating/UIFormatters.ts +2 -1
  306. package/src/sap/fe/core/type/Date.js +2 -2
  307. package/src/sap/fe/core/type/DateTimeWithTimezone.js +3 -3
  308. package/src/sap/fe/core/type/EDM.js +3 -5
  309. package/src/sap/fe/core/type/Email.js +17 -6
  310. package/src/sap/fe/core/type/Email.ts +23 -4
  311. package/src/sap/fe/core/type/FiscalDate.js +8 -9
  312. package/src/sap/fe/core/type/InputMask.js +3 -4
  313. package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block.js +0 -299
  314. package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +0 -87
  315. package/src/sap/fe/core/controls/ActionParameterDialogValueHelp.fragment.xml +0 -43
  316. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.block.js +0 -251
  317. package/src/sap/fe/core/controls/Recommendations/ConfirmRecommendationDialog.block.js +0 -471
@@ -0,0 +1,288 @@
1
+ /*!
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ * (c) Copyright 2009-2024 SAP SE. All rights reserved
4
+ */
5
+ sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/buildingBlocks/BuildingBlock", "sap/m/Bar", "sap/m/Button", "sap/m/Dialog", "sap/m/Title", "sap/ui/core/Lib", "sap/fe/base/jsx-runtime/jsx"], function (ClassSupport, BuildingBlock, Bar, Button, Dialog, Title, Library, _jsx) {
6
+ "use strict";
7
+
8
+ var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17;
9
+ var _exports = {};
10
+ var property = ClassSupport.property;
11
+ var defineUI5Class = ClassSupport.defineUI5Class;
12
+ var defineReference = ClassSupport.defineReference;
13
+ function _initializerDefineProperty(e, i, r, l) { r && Object.defineProperty(e, i, { enumerable: r.enumerable, configurable: r.configurable, writable: r.writable, value: r.initializer ? r.initializer.call(l) : void 0 }); }
14
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
15
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
16
+ function _applyDecoratedDescriptor(i, e, r, n, l) { var a = {}; return Object.keys(n).forEach(function (i) { a[i] = n[i]; }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = r.slice().reverse().reduce(function (r, n) { return n(i, e, r) || r; }, a), l && void 0 !== a.initializer && (a.value = a.initializer ? a.initializer.call(l) : void 0, a.initializer = void 0), void 0 === a.initializer ? (Object.defineProperty(i, e, a), null) : a; }
17
+ function _initializerWarningHelper(r, e) { throw Error("Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform."); }
18
+ const macroResourceBundle = Library.getResourceBundleFor("sap.fe.macros");
19
+ /**
20
+ * Known limitations for the first tryout as mentioned in git 5806442
21
+ * - functional block dependency
22
+ * - questionable parameters will be refactored
23
+ */
24
+ let OperationsDialog = (_dec = defineUI5Class("sap.fe.core.controllerextensions.dialog.OperationsDialog"), _dec2 = property({
25
+ type: "string",
26
+ required: true
27
+ }), _dec3 = property({
28
+ type: "string"
29
+ }), _dec4 = property({
30
+ type: "object",
31
+ required: true
32
+ }), _dec5 = defineReference(), _dec6 = property({
33
+ type: "boolean",
34
+ required: true
35
+ }), _dec7 = property({
36
+ type: "function"
37
+ }), _dec8 = property({
38
+ type: "function"
39
+ }), _dec9 = property({
40
+ type: "object",
41
+ required: true
42
+ }), _dec10 = property({
43
+ type: "string",
44
+ required: true
45
+ }), _dec11 = property({
46
+ type: "string",
47
+ required: true
48
+ }), _dec12 = property({
49
+ type: "string",
50
+ required: true
51
+ }), _dec13 = property({
52
+ type: "object",
53
+ required: true
54
+ }), _dec14 = property({
55
+ type: "object"
56
+ }), _dec15 = property({
57
+ type: "object"
58
+ }), _dec16 = property({
59
+ type: "object",
60
+ required: true
61
+ }), _dec17 = property({
62
+ type: "boolean"
63
+ }), _dec18 = property({
64
+ type: "function"
65
+ }), _dec(_class = (_class2 = /*#__PURE__*/function (_BuildingBlock) {
66
+ function OperationsDialog(props) {
67
+ var _this;
68
+ _this = _BuildingBlock.call(this, props) || this;
69
+ /*
70
+ * The 'id' property of the dialog
71
+ */
72
+ _initializerDefineProperty(_this, "id", _descriptor, _this);
73
+ /**
74
+ * The 'title' property of the Dialog;
75
+ */
76
+ _initializerDefineProperty(_this, "title", _descriptor2, _this);
77
+ /**
78
+ * The message object that is provided to this dialog
79
+ */
80
+ _initializerDefineProperty(_this, "messageObject", _descriptor3, _this);
81
+ _initializerDefineProperty(_this, "operationsDialog", _descriptor4, _this);
82
+ _initializerDefineProperty(_this, "isMultiContext412", _descriptor5, _this);
83
+ _initializerDefineProperty(_this, "requestSideEffects", _descriptor6, _this);
84
+ _initializerDefineProperty(_this, "resolve", _descriptor7, _this);
85
+ _initializerDefineProperty(_this, "model", _descriptor8, _this);
86
+ _initializerDefineProperty(_this, "groupId", _descriptor9, _this);
87
+ _initializerDefineProperty(_this, "actionName", _descriptor10, _this);
88
+ _initializerDefineProperty(_this, "cancelButtonTxt", _descriptor11, _this);
89
+ _initializerDefineProperty(_this, "strictHandlingPromises", _descriptor12, _this);
90
+ _initializerDefineProperty(_this, "strictHandlingUtilities", _descriptor13, _this);
91
+ _initializerDefineProperty(_this, "messageHandler", _descriptor14, _this);
92
+ _initializerDefineProperty(_this, "messageDialogModel", _descriptor15, _this);
93
+ _initializerDefineProperty(_this, "isGrouped", _descriptor16, _this);
94
+ _initializerDefineProperty(_this, "showMessageInfo", _descriptor17, _this);
95
+ _this.model = props.model;
96
+ return _this;
97
+ }
98
+ _exports = OperationsDialog;
99
+ _inheritsLoose(OperationsDialog, _BuildingBlock);
100
+ var _proto = OperationsDialog.prototype;
101
+ _proto.open = function open() {
102
+ this.createContent();
103
+ this.operationsDialog.current?.open();
104
+ };
105
+ _proto.getBeginButton = function getBeginButton() {
106
+ return new Button({
107
+ press: () => {
108
+ if (!(this.isMultiContext412 ?? false)) {
109
+ this.resolve?.(true);
110
+ this.model.submitBatch(this.groupId);
111
+ if (this.requestSideEffects) {
112
+ this.requestSideEffects();
113
+ }
114
+ } else {
115
+ this.strictHandlingPromises.forEach(strictHandlingPromise => {
116
+ strictHandlingPromise.resolve(true);
117
+ this.model.submitBatch(strictHandlingPromise.groupId);
118
+ if (strictHandlingPromise.requestSideEffects) {
119
+ strictHandlingPromise.requestSideEffects();
120
+ }
121
+ });
122
+ const strictHandlingFails = this.strictHandlingUtilities?.strictHandlingTransitionFails;
123
+ if (strictHandlingFails && strictHandlingFails.length > 0) {
124
+ this.messageHandler?.removeTransitionMessages();
125
+ }
126
+ if (this.strictHandlingUtilities) {
127
+ this.strictHandlingUtilities.strictHandlingWarningMessages = [];
128
+ }
129
+ }
130
+ if (this.strictHandlingUtilities) {
131
+ this.strictHandlingUtilities.is412Executed = true;
132
+ }
133
+ this.messageDialogModel.setData({});
134
+ this.close();
135
+ },
136
+ type: "Emphasized",
137
+ text: this.actionName
138
+ });
139
+ };
140
+ _proto.close = function close() {
141
+ this.operationsDialog.current?.close();
142
+ };
143
+ _proto.getTitle = function getTitle() {
144
+ const sTitle = macroResourceBundle.getText("M_WARNINGS");
145
+ return new Title({
146
+ text: sTitle
147
+ });
148
+ };
149
+ _proto.getEndButton = function getEndButton() {
150
+ return new Button({
151
+ press: () => {
152
+ if (this.strictHandlingUtilities) {
153
+ this.strictHandlingUtilities.strictHandlingWarningMessages = [];
154
+ this.strictHandlingUtilities.is412Executed = false;
155
+ this.strictHandlingUtilities.is412WarningDialogCancelled = true;
156
+ }
157
+ if (!(this.isMultiContext412 ?? false)) {
158
+ this.resolve(false);
159
+ } else {
160
+ this.strictHandlingPromises.forEach(function (strictHandlingPromise) {
161
+ strictHandlingPromise.resolve(false);
162
+ });
163
+ }
164
+ this.messageDialogModel.setData({});
165
+ this.close();
166
+ if (this.isGrouped ?? false) {
167
+ this.showMessageInfo();
168
+ }
169
+ },
170
+ text: this.cancelButtonTxt
171
+ });
172
+ }
173
+
174
+ /**
175
+ * The building block render function.
176
+ * @returns An XML-based string with the definition of the field control
177
+ */;
178
+ _proto.createContent = function createContent() {
179
+ return _jsx(Dialog, {
180
+ id: this.id,
181
+ ref: this.operationsDialog,
182
+ resizable: true,
183
+ content: this.messageObject.messageView,
184
+ state: "Warning",
185
+ customHeader: new Bar({
186
+ contentLeft: [this.messageObject.oBackButton],
187
+ contentMiddle: [this.getTitle()]
188
+ }),
189
+ contentHeight: "50%",
190
+ contentWidth: "50%",
191
+ verticalScrolling: false,
192
+ beginButton: this.getBeginButton(),
193
+ endButton: this.getEndButton()
194
+ });
195
+ };
196
+ return OperationsDialog;
197
+ }(BuildingBlock), _descriptor = _applyDecoratedDescriptor(_class2.prototype, "id", [_dec2], {
198
+ configurable: true,
199
+ enumerable: true,
200
+ writable: true,
201
+ initializer: null
202
+ }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, "title", [_dec3], {
203
+ configurable: true,
204
+ enumerable: true,
205
+ writable: true,
206
+ initializer: function () {
207
+ return "Dialog Standard Title";
208
+ }
209
+ }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, "messageObject", [_dec4], {
210
+ configurable: true,
211
+ enumerable: true,
212
+ writable: true,
213
+ initializer: null
214
+ }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, "operationsDialog", [_dec5], {
215
+ configurable: true,
216
+ enumerable: true,
217
+ writable: true,
218
+ initializer: null
219
+ }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, "isMultiContext412", [_dec6], {
220
+ configurable: true,
221
+ enumerable: true,
222
+ writable: true,
223
+ initializer: null
224
+ }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, "requestSideEffects", [_dec7], {
225
+ configurable: true,
226
+ enumerable: true,
227
+ writable: true,
228
+ initializer: null
229
+ }), _descriptor7 = _applyDecoratedDescriptor(_class2.prototype, "resolve", [_dec8], {
230
+ configurable: true,
231
+ enumerable: true,
232
+ writable: true,
233
+ initializer: null
234
+ }), _descriptor8 = _applyDecoratedDescriptor(_class2.prototype, "model", [_dec9], {
235
+ configurable: true,
236
+ enumerable: true,
237
+ writable: true,
238
+ initializer: null
239
+ }), _descriptor9 = _applyDecoratedDescriptor(_class2.prototype, "groupId", [_dec10], {
240
+ configurable: true,
241
+ enumerable: true,
242
+ writable: true,
243
+ initializer: null
244
+ }), _descriptor10 = _applyDecoratedDescriptor(_class2.prototype, "actionName", [_dec11], {
245
+ configurable: true,
246
+ enumerable: true,
247
+ writable: true,
248
+ initializer: null
249
+ }), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, "cancelButtonTxt", [_dec12], {
250
+ configurable: true,
251
+ enumerable: true,
252
+ writable: true,
253
+ initializer: null
254
+ }), _descriptor12 = _applyDecoratedDescriptor(_class2.prototype, "strictHandlingPromises", [_dec13], {
255
+ configurable: true,
256
+ enumerable: true,
257
+ writable: true,
258
+ initializer: null
259
+ }), _descriptor13 = _applyDecoratedDescriptor(_class2.prototype, "strictHandlingUtilities", [_dec14], {
260
+ configurable: true,
261
+ enumerable: true,
262
+ writable: true,
263
+ initializer: null
264
+ }), _descriptor14 = _applyDecoratedDescriptor(_class2.prototype, "messageHandler", [_dec15], {
265
+ configurable: true,
266
+ enumerable: true,
267
+ writable: true,
268
+ initializer: null
269
+ }), _descriptor15 = _applyDecoratedDescriptor(_class2.prototype, "messageDialogModel", [_dec16], {
270
+ configurable: true,
271
+ enumerable: true,
272
+ writable: true,
273
+ initializer: null
274
+ }), _descriptor16 = _applyDecoratedDescriptor(_class2.prototype, "isGrouped", [_dec17], {
275
+ configurable: true,
276
+ enumerable: true,
277
+ writable: true,
278
+ initializer: null
279
+ }), _descriptor17 = _applyDecoratedDescriptor(_class2.prototype, "showMessageInfo", [_dec18], {
280
+ configurable: true,
281
+ enumerable: true,
282
+ writable: true,
283
+ initializer: null
284
+ }), _class2)) || _class);
285
+ _exports = OperationsDialog;
286
+ return _exports;
287
+ }, false);
288
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtYWNyb1Jlc291cmNlQnVuZGxlIiwiTGlicmFyeSIsImdldFJlc291cmNlQnVuZGxlRm9yIiwiT3BlcmF0aW9uc0RpYWxvZyIsIl9kZWMiLCJkZWZpbmVVSTVDbGFzcyIsIl9kZWMyIiwicHJvcGVydHkiLCJ0eXBlIiwicmVxdWlyZWQiLCJfZGVjMyIsIl9kZWM0IiwiX2RlYzUiLCJkZWZpbmVSZWZlcmVuY2UiLCJfZGVjNiIsIl9kZWM3IiwiX2RlYzgiLCJfZGVjOSIsIl9kZWMxMCIsIl9kZWMxMSIsIl9kZWMxMiIsIl9kZWMxMyIsIl9kZWMxNCIsIl9kZWMxNSIsIl9kZWMxNiIsIl9kZWMxNyIsIl9kZWMxOCIsIl9jbGFzcyIsIl9jbGFzczIiLCJfQnVpbGRpbmdCbG9jayIsInByb3BzIiwiX3RoaXMiLCJjYWxsIiwiX2luaXRpYWxpemVyRGVmaW5lUHJvcGVydHkiLCJfZGVzY3JpcHRvciIsIl9kZXNjcmlwdG9yMiIsIl9kZXNjcmlwdG9yMyIsIl9kZXNjcmlwdG9yNCIsIl9kZXNjcmlwdG9yNSIsIl9kZXNjcmlwdG9yNiIsIl9kZXNjcmlwdG9yNyIsIl9kZXNjcmlwdG9yOCIsIl9kZXNjcmlwdG9yOSIsIl9kZXNjcmlwdG9yMTAiLCJfZGVzY3JpcHRvcjExIiwiX2Rlc2NyaXB0b3IxMiIsIl9kZXNjcmlwdG9yMTMiLCJfZGVzY3JpcHRvcjE0IiwiX2Rlc2NyaXB0b3IxNSIsIl9kZXNjcmlwdG9yMTYiLCJfZGVzY3JpcHRvcjE3IiwibW9kZWwiLCJfZXhwb3J0cyIsIl9pbmhlcml0c0xvb3NlIiwiX3Byb3RvIiwicHJvdG90eXBlIiwib3BlbiIsImNyZWF0ZUNvbnRlbnQiLCJvcGVyYXRpb25zRGlhbG9nIiwiY3VycmVudCIsImdldEJlZ2luQnV0dG9uIiwiQnV0dG9uIiwicHJlc3MiLCJpc011bHRpQ29udGV4dDQxMiIsInJlc29sdmUiLCJzdWJtaXRCYXRjaCIsImdyb3VwSWQiLCJyZXF1ZXN0U2lkZUVmZmVjdHMiLCJzdHJpY3RIYW5kbGluZ1Byb21pc2VzIiwiZm9yRWFjaCIsInN0cmljdEhhbmRsaW5nUHJvbWlzZSIsInN0cmljdEhhbmRsaW5nRmFpbHMiLCJzdHJpY3RIYW5kbGluZ1V0aWxpdGllcyIsInN0cmljdEhhbmRsaW5nVHJhbnNpdGlvbkZhaWxzIiwibGVuZ3RoIiwibWVzc2FnZUhhbmRsZXIiLCJyZW1vdmVUcmFuc2l0aW9uTWVzc2FnZXMiLCJzdHJpY3RIYW5kbGluZ1dhcm5pbmdNZXNzYWdlcyIsImlzNDEyRXhlY3V0ZWQiLCJtZXNzYWdlRGlhbG9nTW9kZWwiLCJzZXREYXRhIiwiY2xvc2UiLCJ0ZXh0IiwiYWN0aW9uTmFtZSIsImdldFRpdGxlIiwic1RpdGxlIiwiZ2V0VGV4dCIsIlRpdGxlIiwiZ2V0RW5kQnV0dG9uIiwiaXM0MTJXYXJuaW5nRGlhbG9nQ2FuY2VsbGVkIiwiaXNHcm91cGVkIiwic2hvd01lc3NhZ2VJbmZvIiwiY2FuY2VsQnV0dG9uVHh0IiwiX2pzeCIsIkRpYWxvZyIsImlkIiwicmVmIiwicmVzaXphYmxlIiwiY29udGVudCIsIm1lc3NhZ2VPYmplY3QiLCJtZXNzYWdlVmlldyIsInN0YXRlIiwiY3VzdG9tSGVhZGVyIiwiQmFyIiwiY29udGVudExlZnQiLCJvQmFja0J1dHRvbiIsImNvbnRlbnRNaWRkbGUiLCJjb250ZW50SGVpZ2h0IiwiY29udGVudFdpZHRoIiwidmVydGljYWxTY3JvbGxpbmciLCJiZWdpbkJ1dHRvbiIsImVuZEJ1dHRvbiIsIkJ1aWxkaW5nQmxvY2siLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yIiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsIndyaXRhYmxlIiwiaW5pdGlhbGl6ZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIk9wZXJhdGlvbnNEaWFsb2cudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUHJvcGVydGllc09mIH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IHsgZGVmaW5lUmVmZXJlbmNlLCBkZWZpbmVVSTVDbGFzcywgcHJvcGVydHkgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgdHlwZSB7IFJlZiB9IGZyb20gXCJzYXAvZmUvYmFzZS9qc3gtcnVudGltZS9qc3hcIjtcbmltcG9ydCBCdWlsZGluZ0Jsb2NrIGZyb20gXCJzYXAvZmUvY29yZS9idWlsZGluZ0Jsb2Nrcy9CdWlsZGluZ0Jsb2NrXCI7XG5pbXBvcnQgQmFyIGZyb20gXCJzYXAvbS9CYXJcIjtcbmltcG9ydCBCdXR0b24gZnJvbSBcInNhcC9tL0J1dHRvblwiO1xuaW1wb3J0IERpYWxvZyBmcm9tIFwic2FwL20vRGlhbG9nXCI7XG5pbXBvcnQgVGl0bGUgZnJvbSBcInNhcC9tL1RpdGxlXCI7XG5pbXBvcnQgdHlwZSBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgTGlicmFyeSBmcm9tIFwic2FwL3VpL2NvcmUvTGliXCI7XG5pbXBvcnQgdHlwZSBNZXNzYWdlIGZyb20gXCJzYXAvdWkvY29yZS9tZXNzYWdlL01lc3NhZ2VcIjtcbmltcG9ydCB0eXBlIEpTT05Nb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL2pzb24vSlNPTk1vZGVsXCI7XG5pbXBvcnQgdHlwZSBPRGF0YU1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFNb2RlbFwiO1xuaW1wb3J0IHR5cGUgTWVzc2FnZUhhbmRsZXIgZnJvbSBcIi4uL01lc3NhZ2VIYW5kbGVyXCI7XG5cbnR5cGUgU3RyaWN0SGFuZGxpbmdQcm9taXNlID0ge1xuXHQvL1RPRE86IG1vdmUgdG8gc29tZXdoZXJlIGVsc2Vcblx0cmVzb2x2ZTogRnVuY3Rpb247XG5cdGdyb3VwSWQ6IHN0cmluZztcblx0cmVxdWVzdFNpZGVFZmZlY3RzPzogRnVuY3Rpb247XG59O1xuXG5leHBvcnQgdHlwZSBTdHJpY3RIYW5kbGluZ1V0aWxpdGllcyA9IHtcblx0Ly9UT0RPOiBtb3ZlIHRvIHNvbWV3aGVyZSBlbHNlXG5cdGlzNDEyRXhlY3V0ZWQ6IGJvb2xlYW47XG5cdHN0cmljdEhhbmRsaW5nVHJhbnNpdGlvbkZhaWxzOiBPYmplY3RbXTtcblx0c3RyaWN0SGFuZGxpbmdQcm9taXNlczogU3RyaWN0SGFuZGxpbmdQcm9taXNlW107XG5cdHN0cmljdEhhbmRsaW5nV2FybmluZ01lc3NhZ2VzOiBNZXNzYWdlW107XG5cdGRlbGF5U3VjY2Vzc01lc3NhZ2VzOiBNZXNzYWdlW107XG5cdHByb2Nlc3NlZE1lc3NhZ2VJZHM6IFNldDxzdHJpbmc+O1xuXHRpczQxMldhcm5pbmdEaWFsb2dDYW5jZWxsZWQ/OiBib29sZWFuO1xufTtcblxuY29uc3QgbWFjcm9SZXNvdXJjZUJ1bmRsZSA9IExpYnJhcnkuZ2V0UmVzb3VyY2VCdW5kbGVGb3IoXCJzYXAuZmUubWFjcm9zXCIpITtcbi8qKlxuICogS25vd24gbGltaXRhdGlvbnMgZm9yIHRoZSBmaXJzdCB0cnlvdXQgYXMgbWVudGlvbmVkIGluIGdpdCA1ODA2NDQyXG4gKiAgLSBmdW5jdGlvbmFsIGJsb2NrIGRlcGVuZGVuY3lcbiAqIFx0LSBxdWVzdGlvbmFibGUgcGFyYW1ldGVycyB3aWxsIGJlIHJlZmFjdG9yZWRcbiAqL1xuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLmNvcmUuY29udHJvbGxlcmV4dGVuc2lvbnMuZGlhbG9nLk9wZXJhdGlvbnNEaWFsb2dcIilcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE9wZXJhdGlvbnNEaWFsb2cgZXh0ZW5kcyBCdWlsZGluZ0Jsb2NrIHtcblx0Lypcblx0ICogVGhlICdpZCcgcHJvcGVydHkgb2YgdGhlIGRpYWxvZ1xuXHQgKi9cblx0QHByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiwgcmVxdWlyZWQ6IHRydWUgfSlcblx0cHVibGljIGlkITogc3RyaW5nO1xuXG5cdC8qKlxuXHQgKiBUaGUgJ3RpdGxlJyBwcm9wZXJ0eSBvZiB0aGUgRGlhbG9nO1xuXHQgKi9cblx0QHByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiB9KVxuXHRwdWJsaWMgdGl0bGU/OiBzdHJpbmcgPSBcIkRpYWxvZyBTdGFuZGFyZCBUaXRsZVwiO1xuXG5cdC8qKlxuXHQgKiBUaGUgbWVzc2FnZSBvYmplY3QgdGhhdCBpcyBwcm92aWRlZCB0byB0aGlzIGRpYWxvZ1xuXHQgKi9cblx0QHByb3BlcnR5KHsgdHlwZTogXCJvYmplY3RcIiwgcmVxdWlyZWQ6IHRydWUgfSkgLy9UT0RPOiBjcmVhdGUgdGhlIHR5cGVcblx0cHVibGljIG1lc3NhZ2VPYmplY3QhOiB7IG1lc3NhZ2VWaWV3OiBDb250cm9sOyBvQmFja0J1dHRvbjogQnV0dG9uIH07XG5cblx0QGRlZmluZVJlZmVyZW5jZSgpXG5cdG9wZXJhdGlvbnNEaWFsb2chOiBSZWY8RGlhbG9nPjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiwgcmVxdWlyZWQ6IHRydWUgfSlcblx0cHVibGljIGlzTXVsdGlDb250ZXh0NDEyPzogYm9vbGVhbjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcImZ1bmN0aW9uXCIgfSlcblx0cHVibGljIHJlcXVlc3RTaWRlRWZmZWN0cz86IEZ1bmN0aW9uO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwiZnVuY3Rpb25cIiB9KVxuXHRwdWJsaWMgcmVzb2x2ZT86IEZ1bmN0aW9uO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwib2JqZWN0XCIsIHJlcXVpcmVkOiB0cnVlIH0pXG5cdHB1YmxpYyBtb2RlbCE6IE9EYXRhTW9kZWw7XG5cblx0QHByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiwgcmVxdWlyZWQ6IHRydWUgfSlcblx0cHVibGljIGdyb3VwSWQhOiBzdHJpbmc7XG5cblx0QHByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiwgcmVxdWlyZWQ6IHRydWUgfSlcblx0cHVibGljIGFjdGlvbk5hbWUhOiBzdHJpbmc7XG5cblx0QHByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdcIiwgcmVxdWlyZWQ6IHRydWUgfSlcblx0cHVibGljIGNhbmNlbEJ1dHRvblR4dCE6IHN0cmluZztcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcIm9iamVjdFwiLCByZXF1aXJlZDogdHJ1ZSB9KVxuXHRwdWJsaWMgc3RyaWN0SGFuZGxpbmdQcm9taXNlcyE6IFN0cmljdEhhbmRsaW5nUHJvbWlzZVtdO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwib2JqZWN0XCIgfSlcblx0cHVibGljIHN0cmljdEhhbmRsaW5nVXRpbGl0aWVzPzogU3RyaWN0SGFuZGxpbmdVdGlsaXRpZXM7XG5cblx0QHByb3BlcnR5KHsgdHlwZTogXCJvYmplY3RcIiB9KVxuXHRwdWJsaWMgbWVzc2FnZUhhbmRsZXI/OiBNZXNzYWdlSGFuZGxlcjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcIm9iamVjdFwiLCByZXF1aXJlZDogdHJ1ZSB9KVxuXHRwdWJsaWMgbWVzc2FnZURpYWxvZ01vZGVsITogSlNPTk1vZGVsO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhblwiIH0pXG5cdHB1YmxpYyBpc0dyb3VwZWQ/OiBib29sZWFuO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwiZnVuY3Rpb25cIiB9KVxuXHRwdWJsaWMgc2hvd01lc3NhZ2VJbmZvPzogRnVuY3Rpb247XG5cblx0Y29uc3RydWN0b3IocHJvcHM6IFByb3BlcnRpZXNPZjxPcGVyYXRpb25zRGlhbG9nPikge1xuXHRcdHN1cGVyKHByb3BzKTtcblx0XHR0aGlzLm1vZGVsID0gcHJvcHMubW9kZWwhO1xuXHR9XG5cblx0cHVibGljIG9wZW4oKTogdm9pZCB7XG5cdFx0dGhpcy5jcmVhdGVDb250ZW50KCk7XG5cdFx0dGhpcy5vcGVyYXRpb25zRGlhbG9nLmN1cnJlbnQ/Lm9wZW4oKTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0QmVnaW5CdXR0b24oKTogQnV0dG9uIHtcblx0XHRyZXR1cm4gbmV3IEJ1dHRvbih7XG5cdFx0XHRwcmVzczogKCk6IHZvaWQgPT4ge1xuXHRcdFx0XHRpZiAoISh0aGlzLmlzTXVsdGlDb250ZXh0NDEyID8/IGZhbHNlKSkge1xuXHRcdFx0XHRcdHRoaXMucmVzb2x2ZT8uKHRydWUpO1xuXHRcdFx0XHRcdHRoaXMubW9kZWwuc3VibWl0QmF0Y2godGhpcy5ncm91cElkKTtcblx0XHRcdFx0XHRpZiAodGhpcy5yZXF1ZXN0U2lkZUVmZmVjdHMpIHtcblx0XHRcdFx0XHRcdHRoaXMucmVxdWVzdFNpZGVFZmZlY3RzKCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHRoaXMuc3RyaWN0SGFuZGxpbmdQcm9taXNlcy5mb3JFYWNoKChzdHJpY3RIYW5kbGluZ1Byb21pc2U6IFN0cmljdEhhbmRsaW5nUHJvbWlzZSkgPT4ge1xuXHRcdFx0XHRcdFx0c3RyaWN0SGFuZGxpbmdQcm9taXNlLnJlc29sdmUodHJ1ZSk7XG5cdFx0XHRcdFx0XHR0aGlzLm1vZGVsLnN1Ym1pdEJhdGNoKHN0cmljdEhhbmRsaW5nUHJvbWlzZS5ncm91cElkKTtcblx0XHRcdFx0XHRcdGlmIChzdHJpY3RIYW5kbGluZ1Byb21pc2UucmVxdWVzdFNpZGVFZmZlY3RzKSB7XG5cdFx0XHRcdFx0XHRcdHN0cmljdEhhbmRsaW5nUHJvbWlzZS5yZXF1ZXN0U2lkZUVmZmVjdHMoKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KTtcblx0XHRcdFx0XHRjb25zdCBzdHJpY3RIYW5kbGluZ0ZhaWxzID0gdGhpcy5zdHJpY3RIYW5kbGluZ1V0aWxpdGllcz8uc3RyaWN0SGFuZGxpbmdUcmFuc2l0aW9uRmFpbHM7XG5cdFx0XHRcdFx0aWYgKHN0cmljdEhhbmRsaW5nRmFpbHMgJiYgc3RyaWN0SGFuZGxpbmdGYWlscy5sZW5ndGggPiAwKSB7XG5cdFx0XHRcdFx0XHR0aGlzLm1lc3NhZ2VIYW5kbGVyPy5yZW1vdmVUcmFuc2l0aW9uTWVzc2FnZXMoKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0aWYgKHRoaXMuc3RyaWN0SGFuZGxpbmdVdGlsaXRpZXMpIHtcblx0XHRcdFx0XHRcdHRoaXMuc3RyaWN0SGFuZGxpbmdVdGlsaXRpZXMuc3RyaWN0SGFuZGxpbmdXYXJuaW5nTWVzc2FnZXMgPSBbXTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKHRoaXMuc3RyaWN0SGFuZGxpbmdVdGlsaXRpZXMpIHtcblx0XHRcdFx0XHR0aGlzLnN0cmljdEhhbmRsaW5nVXRpbGl0aWVzLmlzNDEyRXhlY3V0ZWQgPSB0cnVlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHRoaXMubWVzc2FnZURpYWxvZ01vZGVsLnNldERhdGEoe30pO1xuXHRcdFx0XHR0aGlzLmNsb3NlKCk7XG5cdFx0XHR9LFxuXHRcdFx0dHlwZTogXCJFbXBoYXNpemVkXCIsXG5cdFx0XHR0ZXh0OiB0aGlzLmFjdGlvbk5hbWVcblx0XHR9KTtcblx0fVxuXG5cdHByaXZhdGUgY2xvc2UoKTogdm9pZCB7XG5cdFx0dGhpcy5vcGVyYXRpb25zRGlhbG9nLmN1cnJlbnQ/LmNsb3NlKCk7XG5cdH1cblxuXHRwcml2YXRlIGdldFRpdGxlKCk6IFRpdGxlIHtcblx0XHRjb25zdCBzVGl0bGUgPSBtYWNyb1Jlc291cmNlQnVuZGxlLmdldFRleHQoXCJNX1dBUk5JTkdTXCIpO1xuXHRcdHJldHVybiBuZXcgVGl0bGUoeyB0ZXh0OiBzVGl0bGUgfSk7XG5cdH1cblxuXHRwcml2YXRlIGdldEVuZEJ1dHRvbigpOiBCdXR0b24ge1xuXHRcdHJldHVybiBuZXcgQnV0dG9uKHtcblx0XHRcdHByZXNzOiAoKTogdm9pZCA9PiB7XG5cdFx0XHRcdGlmICh0aGlzLnN0cmljdEhhbmRsaW5nVXRpbGl0aWVzKSB7XG5cdFx0XHRcdFx0dGhpcy5zdHJpY3RIYW5kbGluZ1V0aWxpdGllcy5zdHJpY3RIYW5kbGluZ1dhcm5pbmdNZXNzYWdlcyA9IFtdO1xuXHRcdFx0XHRcdHRoaXMuc3RyaWN0SGFuZGxpbmdVdGlsaXRpZXMuaXM0MTJFeGVjdXRlZCA9IGZhbHNlO1xuXHRcdFx0XHRcdHRoaXMuc3RyaWN0SGFuZGxpbmdVdGlsaXRpZXMuaXM0MTJXYXJuaW5nRGlhbG9nQ2FuY2VsbGVkID0gdHJ1ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAoISh0aGlzLmlzTXVsdGlDb250ZXh0NDEyID8/IGZhbHNlKSkge1xuXHRcdFx0XHRcdHRoaXMucmVzb2x2ZSEoZmFsc2UpO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHRoaXMuc3RyaWN0SGFuZGxpbmdQcm9taXNlcy5mb3JFYWNoKGZ1bmN0aW9uIChzdHJpY3RIYW5kbGluZ1Byb21pc2U6IFN0cmljdEhhbmRsaW5nUHJvbWlzZSkge1xuXHRcdFx0XHRcdFx0c3RyaWN0SGFuZGxpbmdQcm9taXNlLnJlc29sdmUoZmFsc2UpO1xuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHRoaXMubWVzc2FnZURpYWxvZ01vZGVsLnNldERhdGEoe30pO1xuXHRcdFx0XHR0aGlzLmNsb3NlKCk7XG5cdFx0XHRcdGlmICh0aGlzLmlzR3JvdXBlZCA/PyBmYWxzZSkge1xuXHRcdFx0XHRcdHRoaXMuc2hvd01lc3NhZ2VJbmZvISgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0dGV4dDogdGhpcy5jYW5jZWxCdXR0b25UeHRcblx0XHR9KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBUaGUgYnVpbGRpbmcgYmxvY2sgcmVuZGVyIGZ1bmN0aW9uLlxuXHQgKiBAcmV0dXJucyBBbiBYTUwtYmFzZWQgc3RyaW5nIHdpdGggdGhlIGRlZmluaXRpb24gb2YgdGhlIGZpZWxkIGNvbnRyb2xcblx0ICovXG5cdGNyZWF0ZUNvbnRlbnQoKTogRGlhbG9nIHtcblx0XHRyZXR1cm4gKFxuXHRcdFx0PERpYWxvZ1xuXHRcdFx0XHRpZD17dGhpcy5pZH1cblx0XHRcdFx0cmVmPXt0aGlzLm9wZXJhdGlvbnNEaWFsb2d9XG5cdFx0XHRcdHJlc2l6YWJsZT17dHJ1ZX1cblx0XHRcdFx0Y29udGVudD17dGhpcy5tZXNzYWdlT2JqZWN0Lm1lc3NhZ2VWaWV3fVxuXHRcdFx0XHRzdGF0ZT17XCJXYXJuaW5nXCJ9XG5cdFx0XHRcdGN1c3RvbUhlYWRlcj17XG5cdFx0XHRcdFx0bmV3IEJhcih7XG5cdFx0XHRcdFx0XHRjb250ZW50TGVmdDogW3RoaXMubWVzc2FnZU9iamVjdC5vQmFja0J1dHRvbl0sXG5cdFx0XHRcdFx0XHRjb250ZW50TWlkZGxlOiBbdGhpcy5nZXRUaXRsZSgpXVxuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdH1cblx0XHRcdFx0Y29udGVudEhlaWdodD17XCI1MCVcIn1cblx0XHRcdFx0Y29udGVudFdpZHRoPXtcIjUwJVwifVxuXHRcdFx0XHR2ZXJ0aWNhbFNjcm9sbGluZz17ZmFsc2V9XG5cdFx0XHRcdGJlZ2luQnV0dG9uPXt0aGlzLmdldEJlZ2luQnV0dG9uKCl9XG5cdFx0XHRcdGVuZEJ1dHRvbj17dGhpcy5nZXRFbmRCdXR0b24oKX1cblx0XHRcdD48L0RpYWxvZz5cblx0XHQpIGFzIERpYWxvZztcblx0fVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlDQSxNQUFNQSxtQkFBbUIsR0FBR0MsT0FBTyxDQUFDQyxvQkFBb0IsQ0FBQyxlQUFlLENBQUU7RUFDMUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUpBLElBTXFCQyxnQkFBZ0IsSUFBQUMsSUFBQSxHQURwQ0MsY0FBYyxDQUFDLDBEQUEwRCxDQUFDLEVBQUFDLEtBQUEsR0FLekVDLFFBQVEsQ0FBQztJQUFFQyxJQUFJLEVBQUUsUUFBUTtJQUFFQyxRQUFRLEVBQUU7RUFBSyxDQUFDLENBQUMsRUFBQUMsS0FBQSxHQU01Q0gsUUFBUSxDQUFDO0lBQUVDLElBQUksRUFBRTtFQUFTLENBQUMsQ0FBQyxFQUFBRyxLQUFBLEdBTTVCSixRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFLFFBQVE7SUFBRUMsUUFBUSxFQUFFO0VBQUssQ0FBQyxDQUFDLEVBQUFHLEtBQUEsR0FHNUNDLGVBQWUsQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FHakJQLFFBQVEsQ0FBQztJQUFFQyxJQUFJLEVBQUUsU0FBUztJQUFFQyxRQUFRLEVBQUU7RUFBSyxDQUFDLENBQUMsRUFBQU0sS0FBQSxHQUc3Q1IsUUFB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
@@ -1,9 +1,7 @@
1
1
  import type { PropertiesOf } from "sap/fe/base/ClassSupport";
2
- import { defineReference } from "sap/fe/base/ClassSupport";
2
+ import { defineReference, defineUI5Class, property } from "sap/fe/base/ClassSupport";
3
3
  import type { Ref } from "sap/fe/base/jsx-runtime/jsx";
4
- import { blockAttribute, defineBuildingBlock } from "sap/fe/core/buildingBlocks/templating/BuildingBlockSupport";
5
- import type { TemplateProcessorSettings } from "sap/fe/core/buildingBlocks/templating/BuildingBlockTemplateProcessor";
6
- import RuntimeBuildingBlock from "sap/fe/core/buildingBlocks/templating/RuntimeBuildingBlock";
4
+ import BuildingBlock from "sap/fe/core/buildingBlocks/BuildingBlock";
7
5
  import Bar from "sap/m/Bar";
8
6
  import Button from "sap/m/Button";
9
7
  import Dialog from "sap/m/Dialog";
@@ -30,6 +28,7 @@ export type StrictHandlingUtilities = {
30
28
  strictHandlingWarningMessages: Message[];
31
29
  delaySuccessMessages: Message[];
32
30
  processedMessageIds: Set<string>;
31
+ is412WarningDialogCancelled?: boolean;
33
32
  };
34
33
 
35
34
  const macroResourceBundle = Library.getResourceBundleFor("sap.fe.macros")!;
@@ -38,77 +37,75 @@ const macroResourceBundle = Library.getResourceBundleFor("sap.fe.macros")!;
38
37
  * - functional block dependency
39
38
  * - questionable parameters will be refactored
40
39
  */
41
- @defineBuildingBlock({
42
- name: "OperationsDialog",
43
- namespace: "sap.fe.core.controllerextensions"
44
- })
45
- export default class OperationsDialogBlock extends RuntimeBuildingBlock {
40
+ @defineUI5Class("sap.fe.core.controllerextensions.dialog.OperationsDialog")
41
+ export default class OperationsDialog extends BuildingBlock {
46
42
  /*
47
43
  * The 'id' property of the dialog
48
44
  */
49
- @blockAttribute({ type: "string", isPublic: true, required: true })
45
+ @property({ type: "string", required: true })
50
46
  public id!: string;
51
47
 
52
48
  /**
53
49
  * The 'title' property of the Dialog;
54
50
  */
55
- @blockAttribute({ type: "string" })
51
+ @property({ type: "string" })
56
52
  public title?: string = "Dialog Standard Title";
57
53
 
58
54
  /**
59
55
  * The message object that is provided to this dialog
60
56
  */
61
- @blockAttribute({ type: "object", required: true }) //TODO: create the type
57
+ @property({ type: "object", required: true }) //TODO: create the type
62
58
  public messageObject!: { messageView: Control; oBackButton: Button };
63
59
 
64
60
  @defineReference()
65
61
  operationsDialog!: Ref<Dialog>;
66
62
 
67
- @blockAttribute({ type: "boolean", required: true })
63
+ @property({ type: "boolean", required: true })
68
64
  public isMultiContext412?: boolean;
69
65
 
70
- @blockAttribute({ type: "function" })
66
+ @property({ type: "function" })
71
67
  public requestSideEffects?: Function;
72
68
 
73
- @blockAttribute({ type: "function" })
69
+ @property({ type: "function" })
74
70
  public resolve?: Function;
75
71
 
76
- @blockAttribute({ type: "object", required: true })
72
+ @property({ type: "object", required: true })
77
73
  public model!: ODataModel;
78
74
 
79
- @blockAttribute({ type: "string", required: true })
75
+ @property({ type: "string", required: true })
80
76
  public groupId!: string;
81
77
 
82
- @blockAttribute({ type: "string", required: true })
78
+ @property({ type: "string", required: true })
83
79
  public actionName!: string;
84
80
 
85
- @blockAttribute({ type: "string", required: true })
81
+ @property({ type: "string", required: true })
86
82
  public cancelButtonTxt!: string;
87
83
 
88
- @blockAttribute({ type: "object", required: true })
84
+ @property({ type: "object", required: true })
89
85
  public strictHandlingPromises!: StrictHandlingPromise[];
90
86
 
91
- @blockAttribute({ type: "object" })
87
+ @property({ type: "object" })
92
88
  public strictHandlingUtilities?: StrictHandlingUtilities;
93
89
 
94
- @blockAttribute({ type: "object" })
90
+ @property({ type: "object" })
95
91
  public messageHandler?: MessageHandler;
96
92
 
97
- @blockAttribute({ type: "object", required: true })
93
+ @property({ type: "object", required: true })
98
94
  public messageDialogModel!: JSONModel;
99
95
 
100
- @blockAttribute({ type: "boolean" })
96
+ @property({ type: "boolean" })
101
97
  public isGrouped?: boolean;
102
98
 
103
- @blockAttribute({ type: "function" })
99
+ @property({ type: "function" })
104
100
  public showMessageInfo?: Function;
105
101
 
106
- constructor(props: PropertiesOf<OperationsDialogBlock>, _controlConfiguration?: unknown, _visitorSettings?: TemplateProcessorSettings) {
107
- super(props, _controlConfiguration, _visitorSettings);
102
+ constructor(props: PropertiesOf<OperationsDialog>) {
103
+ super(props);
104
+ this.model = props.model!;
108
105
  }
109
106
 
110
107
  public open(): void {
111
- this.getContent();
108
+ this.createContent();
112
109
  this.operationsDialog.current?.open();
113
110
  }
114
111
 
@@ -163,6 +160,7 @@ export default class OperationsDialogBlock extends RuntimeBuildingBlock {
163
160
  if (this.strictHandlingUtilities) {
164
161
  this.strictHandlingUtilities.strictHandlingWarningMessages = [];
165
162
  this.strictHandlingUtilities.is412Executed = false;
163
+ this.strictHandlingUtilities.is412WarningDialogCancelled = true;
166
164
  }
167
165
  if (!(this.isMultiContext412 ?? false)) {
168
166
  this.resolve!(false);
@@ -185,7 +183,7 @@ export default class OperationsDialogBlock extends RuntimeBuildingBlock {
185
183
  * The building block render function.
186
184
  * @returns An XML-based string with the definition of the field control
187
185
  */
188
- getContent(): Dialog {
186
+ createContent(): Dialog {
189
187
  return (
190
188
  <Dialog
191
189
  id={this.id}
@@ -44,9 +44,8 @@ sap.ui.define(["sap/fe/core/templating/EntityTypeHelper", "sap/m/Button", "sap/m
44
44
  return this._dialog;
45
45
  };
46
46
  _proto.createDialog = function createDialog() {
47
- var _boundActionName, _boundActionName2, _boundActionName3, _this$entityType$anno, _this$entityType$anno2;
48
47
  let boundActionName = this.actionName;
49
- boundActionName = (_boundActionName = boundActionName) !== null && _boundActionName !== void 0 && _boundActionName.includes(".") ? (_boundActionName2 = boundActionName) === null || _boundActionName2 === void 0 ? void 0 : _boundActionName2.split(".")[((_boundActionName3 = boundActionName) === null || _boundActionName3 === void 0 ? void 0 : _boundActionName3.split(".").length) - 1] : boundActionName;
48
+ boundActionName = boundActionName?.includes(".") ? boundActionName?.split(".")[boundActionName?.split(".").length - 1] : boundActionName;
50
49
  const suffixResourceKey = boundActionName && this.entitySetName ? `${this.entitySetName}|${boundActionName}` : "";
51
50
  return _jsx(Dialog, {
52
51
  state: "Warning",
@@ -55,7 +54,7 @@ sap.ui.define(["sap/fe/core/templating/EntityTypeHelper", "sap/m/Button", "sap/m
55
54
  verticalScrolling: true,
56
55
  horizontalScrolling: true,
57
56
  class: "sapUiContentPadding",
58
- title: this.title,
57
+ title: this.getTitleText(this.title),
59
58
  afterClose: this.onAfterClose.bind(this),
60
59
  children: {
61
60
  beginButton: _jsx(Button, {
@@ -74,7 +73,7 @@ sap.ui.define(["sap/fe/core/templating/EntityTypeHelper", "sap/m/Button", "sap/m
74
73
  class: "sapUiTinyMarginBegin sapUiTinyMarginTopBottom"
75
74
  })
76
75
  }), _jsx(List, {
77
- headerText: (_this$entityType$anno = this.entityType.annotations.UI) === null || _this$entityType$anno === void 0 ? void 0 : (_this$entityType$anno2 = _this$entityType$anno.HeaderInfo) === null || _this$entityType$anno2 === void 0 ? void 0 : _this$entityType$anno2.TypeNamePlural,
76
+ headerText: this.entityType.annotations.UI?.HeaderInfo?.TypeNamePlural,
78
77
  showSeparators: "None",
79
78
  children: {
80
79
  items: this.notApplicableContexts.map(notApplicableContext => {
@@ -97,10 +96,47 @@ sap.ui.define(["sap/fe/core/templating/EntityTypeHelper", "sap/m/Button", "sap/m
97
96
  })
98
97
  }
99
98
  });
99
+ }
100
+
101
+ /**
102
+ * Gets the title of the dialog.
103
+ * @param actionLabel The label of the action
104
+ * @returns The title.
105
+ */;
106
+ _proto.getTitleText = function getTitleText(actionLabel) {
107
+ const key = "ACTION_PARAMETER_DIALOG_ACTION_TITLE";
108
+ const defaultKey = "C_OPERATIONS_ACTION_PARAMETER_DIALOG_TITLE";
109
+ return this.getOverriddenText(key, defaultKey, actionLabel);
110
+ }
111
+
112
+ /**
113
+ * Gets an overridden text.
114
+ * @param key The key for an overridden text
115
+ * @param defaultKey The default key for the text
116
+ * @param actionLabel The label of the action
117
+ * @returns The overridden text or label.
118
+ */;
119
+ _proto.getOverriddenText = function getOverriddenText(key, defaultKey, actionLabel) {
120
+ let boundActionName = this.actionName;
121
+ boundActionName = boundActionName?.split(".").pop() ?? boundActionName;
122
+ const suffixResourceKey = boundActionName && this.entitySetName ? `${this.entitySetName}|${boundActionName}` : "";
123
+ if (actionLabel) {
124
+ if (this.resourceModel.checkIfResourceKeyExists(`${key}|${suffixResourceKey}`)) {
125
+ return this.resourceModel.getText(key, undefined, suffixResourceKey);
126
+ } else if (this.resourceModel.checkIfResourceKeyExists(`${key}|${this.entitySetName}`)) {
127
+ return this.resourceModel.getText(key, undefined, `${this.entitySetName}`);
128
+ } else if (this.resourceModel.checkIfResourceKeyExists(`${key}`)) {
129
+ return this.resourceModel.getText(key);
130
+ } else {
131
+ return actionLabel;
132
+ }
133
+ } else {
134
+ return this.resourceModel.getText(defaultKey);
135
+ }
100
136
  };
101
137
  return NotApplicableContextDialog;
102
138
  }();
103
139
  _exports = NotApplicableContextDialog;
104
140
  return _exports;
105
141
  }, false);
106
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJOb3RBcHBsaWNhYmxlQ29udGV4dERpYWxvZyIsInByb3BzIiwidGl0bGUiLCJyZXNvdXJjZU1vZGVsIiwiZW50aXR5VHlwZSIsIm5vdEFwcGxpY2FibGVDb250ZXh0cyIsIl9zaG91bGRDb250aW51ZSIsImFjdGlvbk5hbWUiLCJlbnRpdHlTZXROYW1lIiwiZW50aXR5U2V0IiwiX2RpYWxvZyIsImNyZWF0ZURpYWxvZyIsIl9wcm9jZXNzaW5nUHJvbWlzZSIsIlByb21pc2UiLCJyZXNvbHZlIiwiX2ZuUmVzb2x2ZSIsIl9leHBvcnRzIiwiX3Byb3RvIiwicHJvdG90eXBlIiwib25BZnRlckNsb3NlIiwiZGVzdHJveSIsIm9uQ29udGludWUiLCJjbG9zZSIsIm9wZW4iLCJvd25lciIsImFkZERlcGVuZGVudCIsImdldERpYWxvZyIsIl9ib3VuZEFjdGlvbk5hbWUiLCJfYm91bmRBY3Rpb25OYW1lMiIsIl9ib3VuZEFjdGlvbk5hbWUzIiwiX3RoaXMkZW50aXR5VHlwZSRhbm5vIiwiX3RoaXMkZW50aXR5VHlwZSRhbm5vMiIsImJvdW5kQWN0aW9uTmFtZSIsImluY2x1ZGVzIiwic3BsaXQiLCJsZW5ndGgiLCJzdWZmaXhSZXNvdXJjZUtleSIsIl9qc3giLCJEaWFsb2ciLCJzdGF0ZSIsInNob3dIZWFkZXIiLCJyZXNpemFibGUiLCJ2ZXJ0aWNhbFNjcm9sbGluZyIsImhvcml6b250YWxTY3JvbGxpbmciLCJjbGFzcyIsImFmdGVyQ2xvc2UiLCJiaW5kIiwiY2hpbGRyZW4iLCJiZWdpbkJ1dHRvbiIsIkJ1dHRvbiIsInRleHQiLCJnZXRUZXh0IiwidW5kZWZpbmVkIiwicHJlc3MiLCJ0eXBlIiwiZW5kQnV0dG9uIiwiY29udGVudCIsIl9qc3hzIiwiX0ZyYWdtZW50IiwiVkJveCIsIlRleHQiLCJMaXN0IiwiaGVhZGVyVGV4dCIsImFubm90YXRpb25zIiwiVUkiLCJIZWFkZXJJbmZvIiwiVHlwZU5hbWVQbHVyYWwiLCJzaG93U2VwYXJhdG9ycyIsIml0ZW1zIiwibWFwIiwibm90QXBwbGljYWJsZUNvbnRleHQiLCJ0aXRsZUV4cHJlc3Npb24iLCJnZXRUaXRsZUV4cHJlc3Npb24iLCJjdXN0b21MaXN0SXRlbSIsIkN1c3RvbUxpc3RJdGVtIiwiSEJveCIsImp1c3RpZnlDb250ZW50Iiwic2V0QmluZGluZ0NvbnRleHQiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIk5vdEFwcGxpY2FibGVDb250ZXh0RGlhbG9nLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEVudGl0eVR5cGUgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXNcIjtcbmltcG9ydCB0eXBlIFJlc291cmNlTW9kZWwgZnJvbSBcInNhcC9mZS9jb3JlL1Jlc291cmNlTW9kZWxcIjtcbmltcG9ydCB7IGdldFRpdGxlRXhwcmVzc2lvbiB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL0VudGl0eVR5cGVIZWxwZXJcIjtcbmltcG9ydCBCdXR0b24gZnJvbSBcInNhcC9tL0J1dHRvblwiO1xuaW1wb3J0IEN1c3RvbUxpc3RJdGVtIGZyb20gXCJzYXAvbS9DdXN0b21MaXN0SXRlbVwiO1xuaW1wb3J0IERpYWxvZyBmcm9tIFwic2FwL20vRGlhbG9nXCI7XG5pbXBvcnQgSEJveCBmcm9tIFwic2FwL20vSEJveFwiO1xuaW1wb3J0IExpc3QgZnJvbSBcInNhcC9tL0xpc3RcIjtcbmltcG9ydCBUZXh0IGZyb20gXCJzYXAvbS9UZXh0XCI7XG5pbXBvcnQgVkJveCBmcm9tIFwic2FwL20vVkJveFwiO1xuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IHR5cGUgQ29udGV4dCBmcm9tIFwic2FwL3VpL21vZGVsL0NvbnRleHRcIjtcblxuLyoqXG4gKiBEaXNwbGF5IGEgZGlhbG9nIHRvIGluZm9ybSB0aGUgdXNlciB0aGF0IHNvbWUgY29udGV4dHMgYXJlIG5vdCBhcHBsaWNhYmxlIGZvciB0aGUgYWN0aW9uLlxuICogVGhpcyBpcyBub3QgdGhlIHRhcmdldCBVeCBidXQganVzdCBrZWVwaW5nIHRoZSBjdXJyZW50IGJlaGF2aW9yXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5vdEFwcGxpY2FibGVDb250ZXh0RGlhbG9nIHtcblx0cHJpdmF0ZSByZWFkb25seSB0aXRsZTogc3RyaW5nO1xuXG5cdHByaXZhdGUgcmVzb3VyY2VNb2RlbDogUmVzb3VyY2VNb2RlbDtcblxuXHRwcml2YXRlIHJlYWRvbmx5IGVudGl0eVR5cGU6IEVudGl0eVR5cGU7XG5cblx0cHJpdmF0ZSByZWFkb25seSBfZGlhbG9nOiBEaWFsb2c7XG5cblx0cHJpdmF0ZSByZWFkb25seSBfcHJvY2Vzc2luZ1Byb21pc2U6IFByb21pc2U8Ym9vbGVhbj47XG5cblx0cHJpdmF0ZSBfZm5SZXNvbHZlITogKHJlc29sdmVWYWx1ZTogYm9vbGVhbikgPT4gdm9pZDtcblxuXHRwcml2YXRlIF9zaG91bGRDb250aW51ZTogYm9vbGVhbjtcblxuXHRwcml2YXRlIHJlYWRvbmx5IGFjdGlvbk5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuXHRwcml2YXRlIHJlYWRvbmx5IGVudGl0eVNldE5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuXHRwcml2YXRlIG5vdEFwcGxpY2FibGVDb250ZXh0czogQ29udGV4dFtdO1xuXG5cdGNvbnN0cnVjdG9yKHByb3BzOiB7IHRpdGxlOiBzdHJpbmc7IGVudGl0eVR5cGU6IEVudGl0eVR5cGU7IHJlc291cmNlTW9kZWw6IFJlc291cmNlTW9kZWw7IG5vdEFwcGxpY2FibGVDb250ZXh0czogQ29udGV4dFtdOyBlbnRpdHlTZXQ/OiBzdHJpbmc7IGFjdGlvbk5hbWU/OiBzdHJpbmcgfSkge1xuXHRcdHRoaXMudGl0bGUgPSBwcm9wcy50aXRsZTtcblx0XHR0aGlzLnJlc291cmNlTW9kZWwgPSBwcm9wcy5yZXNvdXJjZU1vZGVsO1xuXHRcdHRoaXMuZW50aXR5VHlwZSA9IHByb3BzLmVudGl0eVR5cGU7XG5cdFx0dGhpcy5ub3RBcHBsaWNhYmxlQ29udGV4dHMgPSBwcm9wcy5ub3RBcHBsaWNhYmxlQ29udGV4dHM7XG5cdFx0dGhpcy5fc2hvdWxkQ29udGludWUgPSBmYWxzZTtcblx0XHR0aGlzLmFjdGlvbk5hbWUgPSBwcm9wcy5hY3Rpb25OYW1lO1xuXHRcdHRoaXMuZW50aXR5U2V0TmFtZSA9IHByb3BzLmVudGl0eVNldDtcblx0XHR0aGlzLl9kaWFsb2cgPSB0aGlzLmNyZWF0ZURpYWxvZygpO1xuXHRcdHRoaXMuX3Byb2Nlc3NpbmdQcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcblx0XHRcdHRoaXMuX2ZuUmVzb2x2ZSA9IHJlc29sdmU7XG5cdFx0fSk7XG5cdH1cblxuXHRwcml2YXRlIG9uQWZ0ZXJDbG9zZSgpOiB2b2lkIHtcblx0XHR0aGlzLl9mblJlc29sdmUodGhpcy5fc2hvdWxkQ29udGludWUpO1xuXHRcdHRoaXMuX2RpYWxvZy5kZXN0cm95KCk7XG5cdH1cblxuXHRwcml2YXRlIG9uQ29udGludWUoKTogdm9pZCB7XG5cdFx0dGhpcy5fc2hvdWxkQ29udGludWUgPSB0cnVlO1xuXHRcdHRoaXMuX2RpYWxvZy5jbG9zZSgpO1xuXHR9XG5cblx0YXN5bmMgb3Blbihvd25lcjogQ29udHJvbCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuXHRcdG93bmVyLmFkZERlcGVuZGVudCh0aGlzLl9kaWFsb2cpO1xuXHRcdHRoaXMuX2RpYWxvZy5vcGVuKCk7XG5cdFx0cmV0dXJuIHRoaXMuX3Byb2Nlc3NpbmdQcm9taXNlO1xuXHR9XG5cblx0Z2V0RGlhbG9nKCk6IERpYWxvZyB7XG5cdFx0cmV0dXJuIHRoaXMuX2RpYWxvZztcblx0fVxuXG5cdGNyZWF0ZURpYWxvZygpOiBEaWFsb2cge1xuXHRcdGxldCBib3VuZEFjdGlvbk5hbWUgPSB0aGlzLmFjdGlvbk5hbWU7XG5cdFx0Ym91bmRBY3Rpb25OYW1lID0gYm91bmRBY3Rpb25OYW1lPy5pbmNsdWRlcyhcIi5cIilcblx0XHRcdD8gYm91bmRBY3Rpb25OYW1lPy5zcGxpdChcIi5cIilbYm91bmRBY3Rpb25OYW1lPy5zcGxpdChcIi5cIikubGVuZ3RoIC0gMV1cblx0XHRcdDogYm91bmRBY3Rpb25OYW1lO1xuXHRcdGNvbnN0IHN1ZmZpeFJlc291cmNlS2V5ID0gYm91bmRBY3Rpb25OYW1lICYmIHRoaXMuZW50aXR5U2V0TmFtZSA/IGAke3RoaXMuZW50aXR5U2V0TmFtZX18JHtib3VuZEFjdGlvbk5hbWV9YCA6IFwiXCI7XG5cdFx0cmV0dXJuIChcblx0XHRcdDxEaWFsb2dcblx0XHRcdFx0c3RhdGU9e1wiV2FybmluZ1wifVxuXHRcdFx0XHRzaG93SGVhZGVyPXt0cnVlfVxuXHRcdFx0XHRyZXNpemFibGU9e3RydWV9XG5cdFx0XHRcdHZlcnRpY2FsU2Nyb2xsaW5nPXt0cnVlfVxuXHRcdFx0XHRob3Jpem9udGFsU2Nyb2xsaW5nPXt0cnVlfVxuXHRcdFx0XHRjbGFzcz17XCJzYXBVaUNvbnRlbnRQYWRkaW5nXCJ9XG5cdFx0XHRcdHRpdGxlPXt0aGlzLnRpdGxlfVxuXHRcdFx0XHRhZnRlckNsb3NlPXt0aGlzLm9uQWZ0ZXJDbG9zZS5iaW5kKHRoaXMpfVxuXHRcdFx0PlxuXHRcdFx0XHR7e1xuXHRcdFx0XHRcdGJlZ2luQnV0dG9uOiAoXG5cdFx0XHRcdFx0XHQ8QnV0dG9uXG5cdFx0XHRcdFx0XHRcdHRleHQ9e3RoaXMucmVzb3VyY2VNb2RlbC5nZXRUZXh0KFwiQ19BQ1RJT05fUEFSVElBTF9GUkFHTUVOVF9TQVBGRV9DT05USU5VRV9BTllXQVlcIiwgdW5kZWZpbmVkLCBzdWZmaXhSZXNvdXJjZUtleSl9XG5cdFx0XHRcdFx0XHRcdHByZXNzPXt0aGlzLm9uQ29udGludWUuYmluZCh0aGlzKX1cblx0XHRcdFx0XHRcdFx0dHlwZT1cIkVtcGhhc2l6ZWRcIlxuXHRcdFx0XHRcdFx0Lz5cblx0XHRcdFx0XHQpLFxuXHRcdFx0XHRcdGVuZEJ1dHRvbjogKFxuXHRcdFx0XHRcdFx0PEJ1dHRvbiB0ZXh0PXt0aGlzLnJlc291cmNlTW9kZWwuZ2V0VGV4dChcIkNfQ09NTU9OX1NBUEZFX0NMT1NFXCIpfSBwcmVzcz17KCk6IERpYWxvZyA9PiB0aGlzLl9kaWFsb2cuY2xvc2UoKX0gLz5cblx0XHRcdFx0XHQpLFxuXHRcdFx0XHRcdGNvbnRlbnQ6IChcblxuXHRcdFx0XHRcdFx0PD5cblx0XHRcdFx0XHRcdFx0PFZCb3g+XG5cdFx0XHRcdFx0XHRcdFx0PFRleHRcblx0XHRcdFx0XHRcdFx0XHRcdHRleHQ9e1xuXHRcdFx0XHRcdFx0XHRcdFx0XHR0aGlzLm5vdEFwcGxpY2FibGVDb250ZXh0cy5sZW5ndGggPT09IDFcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ/IHRoaXMucmVzb3VyY2VNb2RlbC5nZXRUZXh0KFwiQ19BQ1RJT05fUEFSVElBTF9GUkFHTUVOVF9TQVBGRV9CT1VORF9BQ1RJT05cIiwgdW5kZWZpbmVkLCBzdWZmaXhSZXNvdXJjZUtleSlcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ6IHRoaXMucmVzb3VyY2VNb2RlbC5nZXRUZXh0KFwiQ19BQ1RJT05fUEFSVElBTF9GUkFHTUVOVF9TQVBGRV9CT1VORF9BQ1RJT05fUExVUkFMXCIsIFtcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHRoaXMubm90QXBwbGljYWJsZUNvbnRleHRzLmxlbmd0aFxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdF0sIHN1ZmZpeFJlc291cmNlS2V5KVxuXHRcdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJzYXBVaVRpbnlNYXJnaW5CZWdpbiBzYXBVaVRpbnlNYXJnaW5Ub3BCb3R0b21cIlxuXHRcdFx0XHRcdFx0XHRcdC8+XG5cdFx0XHRcdFx0XHRcdDwvVkJveD5cblx0XHRcdFx0XHRcdFx0PExpc3QgaGVhZGVyVGV4dD17dGhpcy5lbnRpdHlUeXBlLmFubm90YXRpb25zLlVJPy5IZWFkZXJJbmZvPy5UeXBlTmFtZVBsdXJhbH0gc2hvd1NlcGFyYXRvcnM9XCJOb25lXCI+XG5cdFx0XHRcdFx0XHRcdFx0e3tcblx0XHRcdFx0XHRcdFx0XHRcdGl0ZW1zOiB0aGlzLm5vdEFwcGxpY2FibGVDb250ZXh0cy5tYXAoKG5vdEFwcGxpY2FibGVDb250ZXh0KSA9PiB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdC8vIEVpdGhlciBzaG93IHRoZSBIZWFkZXJJbmZvTmFtZSBvciB0aGUgU2VtYW50aWMgS2V5IHByb3BlcnR5XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGNvbnN0IHRpdGxlRXhwcmVzc2lvbiA9IGdldFRpdGxlRXhwcmVzc2lvbih0aGlzLmVudGl0eVR5cGUpO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRjb25zdCBjdXN0b21MaXN0SXRlbSA9IChcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8Q3VzdG9tTGlzdEl0ZW0+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8SEJveCBqdXN0aWZ5Q29udGVudD17XCJTdGFydFwifT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PFRleHQgdGV4dD17dGl0bGVFeHByZXNzaW9ufSBjbGFzcz1cInNhcFVpVGlueU1hcmdpbkJlZ2luIHNhcFVpVGlueU1hcmdpblRvcEJvdHRvbVwiIC8+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L0hCb3g+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PC9DdXN0b21MaXN0SXRlbT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0KTtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Y3VzdG9tTGlzdEl0ZW0uc2V0QmluZGluZ0NvbnRleHQobm90QXBwbGljYWJsZUNvbnRleHQpO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRyZXR1cm4gY3VzdG9tTGlzdEl0ZW07XG5cdFx0XHRcdFx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdFx0XHRcdH19XG5cdFx0XHRcdFx0XHRcdDwvTGlzdD5cblx0XHRcdFx0XHRcdDwvPlxuXHRcdFx0XHRcdClcblx0XHRcdFx0fX1cblx0XHRcdDwvRGlhbG9nPlxuXHRcdCkgYXMgRGlhbG9nO1xuXHR9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7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
142
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJOb3RBcHBsaWNhYmxlQ29udGV4dERpYWxvZyIsInByb3BzIiwidGl0bGUiLCJyZXNvdXJjZU1vZGVsIiwiZW50aXR5VHlwZSIsIm5vdEFwcGxpY2FibGVDb250ZXh0cyIsIl9zaG91bGRDb250aW51ZSIsImFjdGlvbk5hbWUiLCJlbnRpdHlTZXROYW1lIiwiZW50aXR5U2V0IiwiX2RpYWxvZyIsImNyZWF0ZURpYWxvZyIsIl9wcm9jZXNzaW5nUHJvbWlzZSIsIlByb21pc2UiLCJyZXNvbHZlIiwiX2ZuUmVzb2x2ZSIsIl9leHBvcnRzIiwiX3Byb3RvIiwicHJvdG90eXBlIiwib25BZnRlckNsb3NlIiwiZGVzdHJveSIsIm9uQ29udGludWUiLCJjbG9zZSIsIm9wZW4iLCJvd25lciIsImFkZERlcGVuZGVudCIsImdldERpYWxvZyIsImJvdW5kQWN0aW9uTmFtZSIsImluY2x1ZGVzIiwic3BsaXQiLCJsZW5ndGgiLCJzdWZmaXhSZXNvdXJjZUtleSIsIl9qc3giLCJEaWFsb2ciLCJzdGF0ZSIsInNob3dIZWFkZXIiLCJyZXNpemFibGUiLCJ2ZXJ0aWNhbFNjcm9sbGluZyIsImhvcml6b250YWxTY3JvbGxpbmciLCJjbGFzcyIsImdldFRpdGxlVGV4dCIsImFmdGVyQ2xvc2UiLCJiaW5kIiwiY2hpbGRyZW4iLCJiZWdpbkJ1dHRvbiIsIkJ1dHRvbiIsInRleHQiLCJnZXRUZXh0IiwidW5kZWZpbmVkIiwicHJlc3MiLCJ0eXBlIiwiZW5kQnV0dG9uIiwiY29udGVudCIsIl9qc3hzIiwiX0ZyYWdtZW50IiwiVkJveCIsIlRleHQiLCJMaXN0IiwiaGVhZGVyVGV4dCIsImFubm90YXRpb25zIiwiVUkiLCJIZWFkZXJJbmZvIiwiVHlwZU5hbWVQbHVyYWwiLCJzaG93U2VwYXJhdG9ycyIsIml0ZW1zIiwibWFwIiwibm90QXBwbGljYWJsZUNvbnRleHQiLCJ0aXRsZUV4cHJlc3Npb24iLCJnZXRUaXRsZUV4cHJlc3Npb24iLCJjdXN0b21MaXN0SXRlbSIsIkN1c3RvbUxpc3RJdGVtIiwiSEJveCIsImp1c3RpZnlDb250ZW50Iiwic2V0QmluZGluZ0NvbnRleHQiLCJhY3Rpb25MYWJlbCIsImtleSIsImRlZmF1bHRLZXkiLCJnZXRPdmVycmlkZGVuVGV4dCIsInBvcCIsImNoZWNrSWZSZXNvdXJjZUtleUV4aXN0cyJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiTm90QXBwbGljYWJsZUNvbnRleHREaWFsb2cudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRW50aXR5VHlwZSB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlc1wiO1xuaW1wb3J0IHR5cGUgUmVzb3VyY2VNb2RlbCBmcm9tIFwic2FwL2ZlL2NvcmUvUmVzb3VyY2VNb2RlbFwiO1xuaW1wb3J0IHsgZ2V0VGl0bGVFeHByZXNzaW9uIH0gZnJvbSBcInNhcC9mZS9jb3JlL3RlbXBsYXRpbmcvRW50aXR5VHlwZUhlbHBlclwiO1xuaW1wb3J0IEJ1dHRvbiBmcm9tIFwic2FwL20vQnV0dG9uXCI7XG5pbXBvcnQgQ3VzdG9tTGlzdEl0ZW0gZnJvbSBcInNhcC9tL0N1c3RvbUxpc3RJdGVtXCI7XG5pbXBvcnQgRGlhbG9nIGZyb20gXCJzYXAvbS9EaWFsb2dcIjtcbmltcG9ydCBIQm94IGZyb20gXCJzYXAvbS9IQm94XCI7XG5pbXBvcnQgTGlzdCBmcm9tIFwic2FwL20vTGlzdFwiO1xuaW1wb3J0IFRleHQgZnJvbSBcInNhcC9tL1RleHRcIjtcbmltcG9ydCBWQm94IGZyb20gXCJzYXAvbS9WQm94XCI7XG5pbXBvcnQgdHlwZSBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgdHlwZSBDb250ZXh0IGZyb20gXCJzYXAvdWkvbW9kZWwvQ29udGV4dFwiO1xuXG4vKipcbiAqIERpc3BsYXkgYSBkaWFsb2cgdG8gaW5mb3JtIHRoZSB1c2VyIHRoYXQgc29tZSBjb250ZXh0cyBhcmUgbm90IGFwcGxpY2FibGUgZm9yIHRoZSBhY3Rpb24uXG4gKiBUaGlzIGlzIG5vdCB0aGUgdGFyZ2V0IFV4IGJ1dCBqdXN0IGtlZXBpbmcgdGhlIGN1cnJlbnQgYmVoYXZpb3JcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTm90QXBwbGljYWJsZUNvbnRleHREaWFsb2cge1xuXHRwcml2YXRlIHJlYWRvbmx5IHRpdGxlOiBzdHJpbmc7XG5cblx0cHJpdmF0ZSByZXNvdXJjZU1vZGVsOiBSZXNvdXJjZU1vZGVsO1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgZW50aXR5VHlwZTogRW50aXR5VHlwZTtcblxuXHRwcml2YXRlIHJlYWRvbmx5IF9kaWFsb2c6IERpYWxvZztcblxuXHRwcml2YXRlIHJlYWRvbmx5IF9wcm9jZXNzaW5nUHJvbWlzZTogUHJvbWlzZTxib29sZWFuPjtcblxuXHRwcml2YXRlIF9mblJlc29sdmUhOiAocmVzb2x2ZVZhbHVlOiBib29sZWFuKSA9PiB2b2lkO1xuXG5cdHByaXZhdGUgX3Nob3VsZENvbnRpbnVlOiBib29sZWFuO1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgYWN0aW9uTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgZW50aXR5U2V0TmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG5cdHByaXZhdGUgbm90QXBwbGljYWJsZUNvbnRleHRzOiBDb250ZXh0W107XG5cblx0Y29uc3RydWN0b3IocHJvcHM6IHtcblx0XHR0aXRsZTogc3RyaW5nO1xuXHRcdGVudGl0eVR5cGU6IEVudGl0eVR5cGU7XG5cdFx0cmVzb3VyY2VNb2RlbDogUmVzb3VyY2VNb2RlbDtcblx0XHRub3RBcHBsaWNhYmxlQ29udGV4dHM6IENvbnRleHRbXTtcblx0XHRlbnRpdHlTZXQ/OiBzdHJpbmc7XG5cdFx0YWN0aW9uTmFtZT86IHN0cmluZztcblx0fSkge1xuXHRcdHRoaXMudGl0bGUgPSBwcm9wcy50aXRsZTtcblx0XHR0aGlzLnJlc291cmNlTW9kZWwgPSBwcm9wcy5yZXNvdXJjZU1vZGVsO1xuXHRcdHRoaXMuZW50aXR5VHlwZSA9IHByb3BzLmVudGl0eVR5cGU7XG5cdFx0dGhpcy5ub3RBcHBsaWNhYmxlQ29udGV4dHMgPSBwcm9wcy5ub3RBcHBsaWNhYmxlQ29udGV4dHM7XG5cdFx0dGhpcy5fc2hvdWxkQ29udGludWUgPSBmYWxzZTtcblx0XHR0aGlzLmFjdGlvbk5hbWUgPSBwcm9wcy5hY3Rpb25OYW1lO1xuXHRcdHRoaXMuZW50aXR5U2V0TmFtZSA9IHByb3BzLmVudGl0eVNldDtcblx0XHR0aGlzLl9kaWFsb2cgPSB0aGlzLmNyZWF0ZURpYWxvZygpO1xuXHRcdHRoaXMuX3Byb2Nlc3NpbmdQcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcblx0XHRcdHRoaXMuX2ZuUmVzb2x2ZSA9IHJlc29sdmU7XG5cdFx0fSk7XG5cdH1cblxuXHRwcml2YXRlIG9uQWZ0ZXJDbG9zZSgpOiB2b2lkIHtcblx0XHR0aGlzLl9mblJlc29sdmUodGhpcy5fc2hvdWxkQ29udGludWUpO1xuXHRcdHRoaXMuX2RpYWxvZy5kZXN0cm95KCk7XG5cdH1cblxuXHRwcml2YXRlIG9uQ29udGludWUoKTogdm9pZCB7XG5cdFx0dGhpcy5fc2hvdWxkQ29udGludWUgPSB0cnVlO1xuXHRcdHRoaXMuX2RpYWxvZy5jbG9zZSgpO1xuXHR9XG5cblx0YXN5bmMgb3Blbihvd25lcjogQ29udHJvbCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuXHRcdG93bmVyLmFkZERlcGVuZGVudCh0aGlzLl9kaWFsb2cpO1xuXHRcdHRoaXMuX2RpYWxvZy5vcGVuKCk7XG5cdFx0cmV0dXJuIHRoaXMuX3Byb2Nlc3NpbmdQcm9taXNlO1xuXHR9XG5cblx0Z2V0RGlhbG9nKCk6IERpYWxvZyB7XG5cdFx0cmV0dXJuIHRoaXMuX2RpYWxvZztcblx0fVxuXG5cdGNyZWF0ZURpYWxvZygpOiBEaWFsb2cge1xuXHRcdGxldCBib3VuZEFjdGlvbk5hbWUgPSB0aGlzLmFjdGlvbk5hbWU7XG5cdFx0Ym91bmRBY3Rpb25OYW1lID0gYm91bmRBY3Rpb25OYW1lPy5pbmNsdWRlcyhcIi5cIilcblx0XHRcdD8gYm91bmRBY3Rpb25OYW1lPy5zcGxpdChcIi5cIilbYm91bmRBY3Rpb25OYW1lPy5zcGxpdChcIi5cIikubGVuZ3RoIC0gMV1cblx0XHRcdDogYm91bmRBY3Rpb25OYW1lO1xuXHRcdGNvbnN0IHN1ZmZpeFJlc291cmNlS2V5ID0gYm91bmRBY3Rpb25OYW1lICYmIHRoaXMuZW50aXR5U2V0TmFtZSA/IGAke3RoaXMuZW50aXR5U2V0TmFtZX18JHtib3VuZEFjdGlvbk5hbWV9YCA6IFwiXCI7XG5cdFx0cmV0dXJuIChcblx0XHRcdDxEaWFsb2dcblx0XHRcdFx0c3RhdGU9e1wiV2FybmluZ1wifVxuXHRcdFx0XHRzaG93SGVhZGVyPXt0cnVlfVxuXHRcdFx0XHRyZXNpemFibGU9e3RydWV9XG5cdFx0XHRcdHZlcnRpY2FsU2Nyb2xsaW5nPXt0cnVlfVxuXHRcdFx0XHRob3Jpem9udGFsU2Nyb2xsaW5nPXt0cnVlfVxuXHRcdFx0XHRjbGFzcz17XCJzYXBVaUNvbnRlbnRQYWRkaW5nXCJ9XG5cdFx0XHRcdHRpdGxlPXt0aGlzLmdldFRpdGxlVGV4dCh0aGlzLnRpdGxlKX1cblx0XHRcdFx0YWZ0ZXJDbG9zZT17dGhpcy5vbkFmdGVyQ2xvc2UuYmluZCh0aGlzKX1cblx0XHRcdD5cblx0XHRcdFx0e3tcblx0XHRcdFx0XHRiZWdpbkJ1dHRvbjogKFxuXHRcdFx0XHRcdFx0PEJ1dHRvblxuXHRcdFx0XHRcdFx0XHR0ZXh0PXt0aGlzLnJlc291cmNlTW9kZWwuZ2V0VGV4dChcblx0XHRcdFx0XHRcdFx0XHRcIkNfQUNUSU9OX1BBUlRJQUxfRlJBR01FTlRfU0FQRkVfQ09OVElOVUVfQU5ZV0FZXCIsXG5cdFx0XHRcdFx0XHRcdFx0dW5kZWZpbmVkLFxuXHRcdFx0XHRcdFx0XHRcdHN1ZmZpeFJlc291cmNlS2V5XG5cdFx0XHRcdFx0XHRcdCl9XG5cdFx0XHRcdFx0XHRcdHByZXNzPXt0aGlzLm9uQ29udGludWUuYmluZCh0aGlzKX1cblx0XHRcdFx0XHRcdFx0dHlwZT1cIkVtcGhhc2l6ZWRcIlxuXHRcdFx0XHRcdFx0Lz5cblx0XHRcdFx0XHQpLFxuXHRcdFx0XHRcdGVuZEJ1dHRvbjogKFxuXHRcdFx0XHRcdFx0PEJ1dHRvbiB0ZXh0PXt0aGlzLnJlc291cmNlTW9kZWwuZ2V0VGV4dChcIkNfQ09NTU9OX1NBUEZFX0NMT1NFXCIpfSBwcmVzcz17KCk6IERpYWxvZyA9PiB0aGlzLl9kaWFsb2cuY2xvc2UoKX0gLz5cblx0XHRcdFx0XHQpLFxuXHRcdFx0XHRcdGNvbnRlbnQ6IChcblx0XHRcdFx0XHRcdDw+XG5cdFx0XHRcdFx0XHRcdDxWQm94PlxuXHRcdFx0XHRcdFx0XHRcdDxUZXh0XG5cdFx0XHRcdFx0XHRcdFx0XHR0ZXh0PXtcblx0XHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5ub3RBcHBsaWNhYmxlQ29udGV4dHMubGVuZ3RoID09PSAxXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PyB0aGlzLnJlc291cmNlTW9kZWwuZ2V0VGV4dChcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XCJDX0FDVElPTl9QQVJUSUFMX0ZSQUdNRU5UX1NBUEZFX0JPVU5EX0FDVElPTlwiLFxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHR1bmRlZmluZWQsXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHN1ZmZpeFJlc291cmNlS2V5XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0ICApXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0OiB0aGlzLnJlc291cmNlTW9kZWwuZ2V0VGV4dChcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XCJDX0FDVElPTl9QQVJUSUFMX0ZSQUdNRU5UX1NBUEZFX0JPVU5EX0FDVElPTl9QTFVSQUxcIixcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0W3RoaXMubm90QXBwbGljYWJsZUNvbnRleHRzLmxlbmd0aF0sXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHN1ZmZpeFJlc291cmNlS2V5XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0ICApXG5cdFx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cInNhcFVpVGlueU1hcmdpbkJlZ2luIHNhcFVpVGlueU1hcmdpblRvcEJvdHRvbVwiXG5cdFx0XHRcdFx0XHRcdFx0Lz5cblx0XHRcdFx0XHRcdFx0PC9WQm94PlxuXHRcdFx0XHRcdFx0XHQ8TGlzdCBoZWFkZXJUZXh0PXt0aGlzLmVudGl0eVR5cGUuYW5ub3RhdGlvbnMuVUk/LkhlYWRlckluZm8/LlR5cGVOYW1lUGx1cmFsfSBzaG93U2VwYXJhdG9ycz1cIk5vbmVcIj5cblx0XHRcdFx0XHRcdFx0XHR7e1xuXHRcdFx0XHRcdFx0XHRcdFx0aXRlbXM6IHRoaXMubm90QXBwbGljYWJsZUNvbnRleHRzLm1hcCgobm90QXBwbGljYWJsZUNvbnRleHQpID0+IHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Ly8gRWl0aGVyIHNob3cgdGhlIEhlYWRlckluZm9OYW1lIG9yIHRoZSBTZW1hbnRpYyBLZXkgcHJvcGVydHlcblx0XHRcdFx0XHRcdFx0XHRcdFx0Y29uc3QgdGl0bGVFeHByZXNzaW9uID0gZ2V0VGl0bGVFeHByZXNzaW9uKHRoaXMuZW50aXR5VHlwZSk7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGNvbnN0IGN1c3RvbUxpc3RJdGVtID0gKFxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxDdXN0b21MaXN0SXRlbT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxIQm94IGp1c3RpZnlDb250ZW50PXtcIlN0YXJ0XCJ9PlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8VGV4dCB0ZXh0PXt0aXRsZUV4cHJlc3Npb259IGNsYXNzPVwic2FwVWlUaW55TWFyZ2luQmVnaW4gc2FwVWlUaW55TWFyZ2luVG9wQm90dG9tXCIgLz5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDwvSEJveD5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L0N1c3RvbUxpc3RJdGVtPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQpO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRjdXN0b21MaXN0SXRlbS5zZXRCaW5kaW5nQ29udGV4dChub3RBcHBsaWNhYmxlQ29udGV4dCk7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdHJldHVybiBjdXN0b21MaXN0SXRlbTtcblx0XHRcdFx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0XHRcdFx0fX1cblx0XHRcdFx0XHRcdFx0PC9MaXN0PlxuXHRcdFx0XHRcdFx0PC8+XG5cdFx0XHRcdFx0KVxuXHRcdFx0XHR9fVxuXHRcdFx0PC9EaWFsb2c+XG5cdFx0KSBhcyBEaWFsb2c7XG5cdH1cblxuXHQvKipcblx0ICogR2V0cyB0aGUgdGl0bGUgb2YgdGhlIGRpYWxvZy5cblx0ICogQHBhcmFtIGFjdGlvbkxhYmVsIFRoZSBsYWJlbCBvZiB0aGUgYWN0aW9uXG5cdCAqIEByZXR1cm5zIFRoZSB0aXRsZS5cblx0ICovXG5cdHByaXZhdGUgZ2V0VGl0bGVUZXh0KGFjdGlvbkxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBzdHJpbmcge1xuXHRcdGNvbnN0IGtleSA9IFwiQUNUSU9OX1BBUkFNRVRFUl9ESUFMT0dfQUNUSU9OX1RJVExFXCI7XG5cdFx0Y29uc3QgZGVmYXVsdEtleSA9IFwiQ19PUEVSQVRJT05TX0FDVElPTl9QQVJBTUVURVJfRElBTE9HX1RJVExFXCI7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0T3ZlcnJpZGRlblRleHQoa2V5LCBkZWZhdWx0S2V5LCBhY3Rpb25MYWJlbCk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0cyBhbiBvdmVycmlkZGVuIHRleHQuXG5cdCAqIEBwYXJhbSBrZXkgVGhlIGtleSBmb3IgYW4gb3ZlcnJpZGRlbiB0ZXh0XG5cdCAqIEBwYXJhbSBkZWZhdWx0S2V5IFRoZSBkZWZhdWx0IGtleSBmb3IgdGhlIHRleHRcblx0ICogQHBhcmFtIGFjdGlvbkxhYmVsIFRoZSBsYWJlbCBvZiB0aGUgYWN0aW9uXG5cdCAqIEByZXR1cm5zIFRoZSBvdmVycmlkZGVuIHRleHQgb3IgbGFiZWwuXG5cdCAqL1xuXHRwcml2YXRlIGdldE92ZXJyaWRkZW5UZXh0KGtleTogc3RyaW5nLCBkZWZhdWx0S2V5OiBzdHJpbmcsIGFjdGlvbkxhYmVsPzogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRsZXQgYm91bmRBY3Rpb25OYW1lID0gdGhpcy5hY3Rpb25OYW1lO1xuXHRcdGJvdW5kQWN0aW9uTmFtZSA9IGJvdW5kQWN0aW9uTmFtZT8uc3BsaXQoXCIuXCIpLnBvcCgpID8/IGJvdW5kQWN0aW9uTmFtZTtcblx0XHRjb25zdCBzdWZmaXhSZXNvdXJjZUtleSA9IGJvdW5kQWN0aW9uTmFtZSAmJiB0aGlzLmVudGl0eVNldE5hbWUgPyBgJHt0aGlzLmVudGl0eVNldE5hbWV9fCR7Ym91bmRBY3Rpb25OYW1lfWAgOiBcIlwiO1xuXHRcdGlmIChhY3Rpb25MYWJlbCkge1xuXHRcdFx0aWYgKHRoaXMucmVzb3VyY2VNb2RlbC5jaGVja0lmUmVzb3VyY2VLZXlFeGlzdHMoYCR7a2V5fXwke3N1ZmZpeFJlc291cmNlS2V5fWApKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLnJlc291cmNlTW9kZWwuZ2V0VGV4dChrZXksIHVuZGVmaW5lZCwgc3VmZml4UmVzb3VyY2VLZXkpO1xuXHRcdFx0fSBlbHNlIGlmICh0aGlzLnJlc291cmNlTW9kZWwuY2hlY2tJZlJlc291cmNlS2V5RXhpc3RzKGAke2tleX18JHt0aGlzLmVudGl0eVNldE5hbWV9YCkpIHtcblx0XHRcdFx0cmV0dXJuIHRoaXMucmVzb3VyY2VNb2RlbC5nZXRUZXh0KGtleSwgdW5kZWZpbmVkLCBgJHt0aGlzLmVudGl0eVNldE5hbWV9YCk7XG5cdFx0XHR9IGVsc2UgaWYgKHRoaXMucmVzb3VyY2VNb2RlbC5jaGVja0lmUmVzb3VyY2VLZXlFeGlzdHMoYCR7a2V5fWApKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLnJlc291cmNlTW9kZWwuZ2V0VGV4dChrZXkpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0cmV0dXJuIGFjdGlvbkxhYmVsO1xuXHRcdFx0fVxuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5yZXNvdXJjZU1vZGVsLmdldFRleHQoZGVmYXVsdEtleSk7XG5cdFx0fVxuXHR9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztFQWFBO0FBQ0E7QUFDQTtBQUNBO0VBSEEsSUFJcUJBLDBCQUEwQjtJQXFCOUMsU0FBQUEsMkJBQVlDLEtBT1gsRUFBRTtNQUNGLElBQUksQ0FBQ0MsS0FBSyxHQUFHRCxLQUFLLENBQUNDLEtBQUs7TUFDeEIsSUFBSSxDQUFDQyxhQUFhLEdBQUdGLEtBQUssQ0FBQ0UsYUFBYTtNQUN4QyxJQUFJLENBQUNDLFVBQVUsR0FBR0gsS0FBSyxDQUFDRyxVQUFVO01BQ2xDLElBQUksQ0FBQ0MscUJBQXFCLEdBQUdKLEtBQUssQ0FBQ0kscUJBQXFCO01BQ3hELElBQUksQ0FBQ0MsZUFBZSxHQUFHLEtBQUs7TUFDNUIsSUFBSSxDQUFDQyxVQUFVLEdBQUdOLEtBQUssQ0FBQ00sVUFBVTtNQUNsQyxJQUFJLENBQUNDLGFBQWEsR0FBR1AsS0FBSyxDQUFDUSxTQUFTO01BQ3BDLElBQUksQ0FBQ0MsT0FBTyxHQUFHLElBQUksQ0FBQ0MsWUFBWSxDQUFDLENBQUM7TUFDbEMsSUFBSSxDQUFDQyxrQkFBa0IsR0FBRyxJQUFJQyxPQUFPLENBQUVDLE9BQU8sSUFBSztRQUNsRCxJQUFJLENBQUNDLFVBQVUsR0FBR0QsT0FBTztNQUMxQixDQUFDLENBQUM7SUFDSDtJQUFDRSxRQUFBLEdBQUFoQiwwQkFBQTtJQUFBLElBQUFpQixNQUFBLEdBQUFqQiwwQkFBQSxDQUFBa0IsU0FBQTtJQUFBRCxNQUFBLENBRU9FLFlBQVksR0FBcEIsU0FBUUEsWUFBWUEsQ0FBQSxFQUFTO01BQzVCLElBQUksQ0FBQ0osVUFBVSxDQUFDLElBQUksQ0FBQ1QsZUFBZSxDQUFDO01BQ3JDLElBQUksQ0FBQ0ksT0FBTyxDQUFDVSxPQUFPLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBQUFILE1BQUEsQ0FFT0ksVUFBVSxHQUFsQixTQUFRQSxVQUFVQSxDQUFBLEVBQVM7TUFDMUIsSUFBSSxD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