@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
@@ -2,105 +2,105 @@
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
3
  * (c) Copyright 2009-2024 SAP SE. All rights reserved
4
4
  */
5
- sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/CommonUtils", "sap/fe/core/converters/MetaModelConverter", "sap/ui/core/UIComponent"], function (ClassSupport, CommonUtils, MetaModelConverter, UIComponent) {
5
+ sap.ui.define(["sap/base/util/merge", "sap/fe/base/ClassSupport", "sap/fe/core/CommonUtils", "sap/fe/core/converters/ManifestWrapper", "sap/fe/core/converters/MetaModelConverter", "sap/ui/core/UIComponent"], function (merge, ClassSupport, CommonUtils, ManifestWrapper, MetaModelConverter, UIComponent) {
6
6
  "use strict";
7
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;
8
+ var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17, _descriptor18;
9
9
  var getMetaModelById = MetaModelConverter.getMetaModelById;
10
10
  var property = ClassSupport.property;
11
11
  var implementInterface = ClassSupport.implementInterface;
12
12
  var event = ClassSupport.event;
13
13
  var defineUI5Class = ClassSupport.defineUI5Class;
14
14
  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 }); }
15
- function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
16
15
  function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
17
16
  function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
18
17
  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; }
19
18
  function _initializerWarningHelper(r, e) { throw Error("Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform."); }
20
- let TemplateComponent = (_dec = defineUI5Class("sap.fe.core.TemplateComponent"), _dec2 = implementInterface("sap.ui.core.IAsyncContentCreation"), _dec3 = property({
19
+ let TemplateComponent = (_dec = defineUI5Class("sap.fe.core.TemplateComponent"), _dec2 = implementInterface("sap.ui.core.IAsyncContentCreation"), _dec3 = implementInterface("sap.fe.core.buildingBlocks.IBuildingBlockOwnerComponent"), _dec4 = property({
21
20
  type: "string",
22
21
  defaultValue: null
23
- }), _dec4 = property({
22
+ }), _dec5 = property({
24
23
  type: "string",
25
24
  defaultValue: null
26
- }), _dec5 = property({
27
- type: "object"
28
25
  }), _dec6 = property({
29
- type: "string"
30
- }), _dec7 = property({
31
26
  type: "object"
27
+ }), _dec7 = property({
28
+ type: "string"
32
29
  }), _dec8 = property({
33
- type: "string[]"
34
- }), _dec9 = property({
35
30
  type: "object"
31
+ }), _dec9 = property({
32
+ type: "string[]"
36
33
  }), _dec10 = property({
37
34
  type: "object"
38
35
  }), _dec11 = property({
39
- type: "boolean"
40
- }), _dec12 = property({
41
36
  type: "object"
37
+ }), _dec12 = property({
38
+ type: "boolean"
42
39
  }), _dec13 = property({
43
- type: "string"
40
+ type: "object"
44
41
  }), _dec14 = property({
45
42
  type: "string"
46
43
  }), _dec15 = property({
47
44
  type: "string"
48
- }), _dec16 = event(), _dec17 = event(), _dec18 = event(), _dec(_class = (_class2 = /*#__PURE__*/function (_UIComponent) {
49
- _inheritsLoose(TemplateComponent, _UIComponent);
45
+ }), _dec16 = property({
46
+ type: "string"
47
+ }), _dec17 = event(), _dec18 = event(), _dec19 = event(), _dec(_class = (_class2 = /*#__PURE__*/function (_UIComponent) {
50
48
  function TemplateComponent() {
51
49
  var _this;
52
50
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
53
51
  args[_key] = arguments[_key];
54
52
  }
55
53
  _this = _UIComponent.call(this, ...args) || this;
56
- _initializerDefineProperty(_this, "__implements__sap_ui_core_IAsyncContentCreation", _descriptor, _assertThisInitialized(_this));
57
- _initializerDefineProperty(_this, "entitySet", _descriptor2, _assertThisInitialized(_this));
58
- _initializerDefineProperty(_this, "contextPath", _descriptor3, _assertThisInitialized(_this));
59
- _initializerDefineProperty(_this, "preprocessorContext", _descriptor4, _assertThisInitialized(_this));
60
- _initializerDefineProperty(_this, "bindingContextPattern", _descriptor5, _assertThisInitialized(_this));
61
- _initializerDefineProperty(_this, "navigation", _descriptor6, _assertThisInitialized(_this));
62
- _initializerDefineProperty(_this, "enhanceI18n", _descriptor7, _assertThisInitialized(_this));
63
- _initializerDefineProperty(_this, "controlConfiguration", _descriptor8, _assertThisInitialized(_this));
64
- _initializerDefineProperty(_this, "content", _descriptor9, _assertThisInitialized(_this));
65
- _initializerDefineProperty(_this, "allowDeepLinking", _descriptor10, _assertThisInitialized(_this));
66
- _initializerDefineProperty(_this, "refreshStrategyOnAppRestore", _descriptor11, _assertThisInitialized(_this));
67
- _initializerDefineProperty(_this, "viewType", _descriptor12, _assertThisInitialized(_this));
68
- _initializerDefineProperty(_this, "viewName", _descriptor13, _assertThisInitialized(_this));
69
- _initializerDefineProperty(_this, "_jsxViewName", _descriptor14, _assertThisInitialized(_this));
70
- _initializerDefineProperty(_this, "containerDefined", _descriptor15, _assertThisInitialized(_this));
71
- _initializerDefineProperty(_this, "heroesBatchReceived", _descriptor16, _assertThisInitialized(_this));
72
- _initializerDefineProperty(_this, "workersBatchReceived", _descriptor17, _assertThisInitialized(_this));
54
+ _initializerDefineProperty(_this, "__implements__sap_ui_core_IAsyncContentCreation", _descriptor, _this);
55
+ _initializerDefineProperty(_this, "__implements__sap_fe_core_buildingBlocks_IBuildingBlockOwnerComponent", _descriptor2, _this);
56
+ /**
57
+ * Name of the OData entity set
58
+ */
59
+ _initializerDefineProperty(_this, "entitySet", _descriptor3, _this);
60
+ /**
61
+ * Context Path for rendering the template
62
+ */
63
+ _initializerDefineProperty(_this, "contextPath", _descriptor4, _this);
64
+ _initializerDefineProperty(_this, "preprocessorContext", _descriptor5, _this);
65
+ /**
66
+ * The pattern for the binding context to be create based on the parameters from the navigation
67
+ * If not provided we'll default to what was passed in the URL
68
+ */
69
+ _initializerDefineProperty(_this, "bindingContextPattern", _descriptor6, _this);
70
+ /**
71
+ * Map of used OData navigations and its routing targets
72
+ */
73
+ _initializerDefineProperty(_this, "navigation", _descriptor7, _this);
74
+ /**
75
+ * Enhance the i18n bundle used for this page with one or more app specific i18n resource bundles or resource models
76
+ * or a combination of both. The last resource bundle/model is given highest priority
77
+ */
78
+ _initializerDefineProperty(_this, "enhanceI18n", _descriptor8, _this);
79
+ /**
80
+ * Define control related configuration settings
81
+ */
82
+ _initializerDefineProperty(_this, "controlConfiguration", _descriptor9, _this);
83
+ /**
84
+ * Adjusts the template content
85
+ */
86
+ _initializerDefineProperty(_this, "content", _descriptor10, _this);
87
+ /**
88
+ * Whether or not you can reach this page directly through semantic bookmarks
89
+ */
90
+ _initializerDefineProperty(_this, "allowDeepLinking", _descriptor11, _this);
91
+ /**
92
+ * Defines the context path on the component that is refreshed when the app is restored using keep alive mode
93
+ */
94
+ _initializerDefineProperty(_this, "refreshStrategyOnAppRestore", _descriptor12, _this);
95
+ _initializerDefineProperty(_this, "viewType", _descriptor13, _this);
96
+ _initializerDefineProperty(_this, "viewName", _descriptor14, _this);
97
+ _initializerDefineProperty(_this, "_jsxViewName", _descriptor15, _this);
98
+ _initializerDefineProperty(_this, "containerDefined", _descriptor16, _this);
99
+ _initializerDefineProperty(_this, "heroesBatchReceived", _descriptor17, _this);
100
+ _initializerDefineProperty(_this, "workersBatchReceived", _descriptor18, _this);
73
101
  return _this;
74
102
  }
75
- /**
76
- * Name of the OData entity set
77
- */
78
- /**
79
- * Context Path for rendering the template
80
- */
81
- /**
82
- * The pattern for the binding context to be create based on the parameters from the navigation
83
- * If not provided we'll default to what was passed in the URL
84
- */
85
- /**
86
- * Map of used OData navigations and its routing targets
87
- */
88
- /**
89
- * Enhance the i18n bundle used for this page with one or more app specific i18n resource bundles or resource models
90
- * or a combination of both. The last resource bundle/model is given highest priority
91
- */
92
- /**
93
- * Define control related configuration settings
94
- */
95
- /**
96
- * Adjusts the template content
97
- */
98
- /**
99
- * Whether or not you can reach this page directly through semantic bookmarks
100
- */
101
- /**
102
- * Defines the context path on the component that is refreshed when the app is restored using keep alive mode
103
- */
103
+ _inheritsLoose(TemplateComponent, _UIComponent);
104
104
  var _proto = TemplateComponent.prototype;
105
105
  // The id of a fragment being processed, it will take priority in the ID generation
106
106
  _proto.setContainer = function setContainer(oContainer) {
@@ -157,6 +157,8 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/CommonUtils", "sap/fe/co
157
157
  delete oViewData.preprocessorContext;
158
158
  // Access the internal _isFclEnabled which will be there
159
159
  oViewData.fclEnabled = this.oAppComponent._isFclEnabled();
160
+ const routingTargetName = this.oAppComponent.getRoutingService().getTargetName(this);
161
+ oViewData.isInlineEditEnabled = routingTargetName ? this.oAppComponent.getInlineEditService().doesPageHaveInlineEdit(routingTargetName) : false;
160
162
  return oViewData;
161
163
  };
162
164
  _proto._getPageTitleInformation = function _getPageTitleInformation() {
@@ -178,16 +180,13 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/CommonUtils", "sap/fe/co
178
180
  */;
179
181
  _proto.getMetaModel = function getMetaModel(metaModelReference) {
180
182
  if (!metaModelReference) {
181
- var _this$preprocessorCon;
182
- return (_this$preprocessorCon = this.preprocessorContext) === null || _this$preprocessorCon === void 0 ? void 0 : _this$preprocessorCon.models.metaModel;
183
+ return this.preprocessorContext?.models.metaModel;
183
184
  } else if (metaModelReference.startsWith("id-")) {
184
185
  return getMetaModelById(metaModelReference);
185
186
  } else if (!this.getModel(metaModelReference)) {
186
- var _this$getAppComponent;
187
- return (_this$getAppComponent = this.getAppComponent().getModel(metaModelReference)) === null || _this$getAppComponent === void 0 ? void 0 : _this$getAppComponent.getMetaModel();
187
+ return this.getAppComponent().getModel(metaModelReference)?.getMetaModel();
188
188
  } else {
189
- var _this$getModel;
190
- return (_this$getModel = this.getModel(metaModelReference)) === null || _this$getModel === void 0 ? void 0 : _this$getModel.getMetaModel();
189
+ return this.getModel(metaModelReference)?.getMetaModel();
191
190
  }
192
191
  }
193
192
 
@@ -198,107 +197,121 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/core/CommonUtils", "sap/fe/co
198
197
  */;
199
198
  _proto.getFullContextPath = function getFullContextPath(metaModelReference) {
200
199
  if (!metaModelReference) {
201
- var _this$preprocessorCon2;
202
- return (_this$preprocessorCon2 = this.preprocessorContext) === null || _this$preprocessorCon2 === void 0 ? void 0 : _this$preprocessorCon2.fullContextPath;
200
+ return this.preprocessorContext?.fullContextPath;
203
201
  }
202
+ }
203
+
204
+ /**
205
+ * Retrieves the ManifestWrapper for the current view.
206
+ * @returns The ManifestWrapper
207
+ */;
208
+ _proto.getManifestWrapper = function getManifestWrapper() {
209
+ return new ManifestWrapper(this.getViewData(), merge);
204
210
  };
205
211
  return TemplateComponent;
206
- }(UIComponent), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "__implements__sap_ui_core_IAsyncContentCreation", [_dec2], {
212
+ }(UIComponent), _descriptor = _applyDecoratedDescriptor(_class2.prototype, "__implements__sap_ui_core_IAsyncContentCreation", [_dec2], {
213
+ configurable: true,
214
+ enumerable: true,
215
+ writable: true,
216
+ initializer: function () {
217
+ return true;
218
+ }
219
+ }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, "__implements__sap_fe_core_buildingBlocks_IBuildingBlockOwnerComponent", [_dec3], {
207
220
  configurable: true,
208
221
  enumerable: true,
209
222
  writable: true,
210
223
  initializer: function () {
211
224
  return true;
212
225
  }
213
- }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, "entitySet", [_dec3], {
226
+ }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, "entitySet", [_dec4], {
214
227
  configurable: true,
215
228
  enumerable: true,
216
229
  writable: true,
217
230
  initializer: function () {
218
231
  return null;
219
232
  }
220
- }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, "contextPath", [_dec4], {
233
+ }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, "contextPath", [_dec5], {
221
234
  configurable: true,
222
235
  enumerable: true,
223
236
  writable: true,
224
237
  initializer: function () {
225
238
  return null;
226
239
  }
227
- }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, "preprocessorContext", [_dec5], {
240
+ }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, "preprocessorContext", [_dec6], {
228
241
  configurable: true,
229
242
  enumerable: true,
230
243
  writable: true,
231
244
  initializer: null
232
- }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, "bindingContextPattern", [_dec6], {
245
+ }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, "bindingContextPattern", [_dec7], {
233
246
  configurable: true,
234
247
  enumerable: true,
235
248
  writable: true,
236
249
  initializer: null
237
- }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, "navigation", [_dec7], {
250
+ }), _descriptor7 = _applyDecoratedDescriptor(_class2.prototype, "navigation", [_dec8], {
238
251
  configurable: true,
239
252
  enumerable: true,
240
253
  writable: true,
241
254
  initializer: null
242
- }), _descriptor7 = _applyDecoratedDescriptor(_class2.prototype, "enhanceI18n", [_dec8], {
255
+ }), _descriptor8 = _applyDecoratedDescriptor(_class2.prototype, "enhanceI18n", [_dec9], {
243
256
  configurable: true,
244
257
  enumerable: true,
245
258
  writable: true,
246
259
  initializer: null
247
- }), _descriptor8 = _applyDecoratedDescriptor(_class2.prototype, "controlConfiguration", [_dec9], {
260
+ }), _descriptor9 = _applyDecoratedDescriptor(_class2.prototype, "controlConfiguration", [_dec10], {
248
261
  configurable: true,
249
262
  enumerable: true,
250
263
  writable: true,
251
264
  initializer: null
252
- }), _descriptor9 = _applyDecoratedDescriptor(_class2.prototype, "content", [_dec10], {
265
+ }), _descriptor10 = _applyDecoratedDescriptor(_class2.prototype, "content", [_dec11], {
253
266
  configurable: true,
254
267
  enumerable: true,
255
268
  writable: true,
256
269
  initializer: null
257
- }), _descriptor10 = _applyDecoratedDescriptor(_class2.prototype, "allowDeepLinking", [_dec11], {
270
+ }), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, "allowDeepLinking", [_dec12], {
258
271
  configurable: true,
259
272
  enumerable: true,
260
273
  writable: true,
261
274
  initializer: null
262
- }), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, "refreshStrategyOnAppRestore", [_dec12], {
275
+ }), _descriptor12 = _applyDecoratedDescriptor(_class2.prototype, "refreshStrategyOnAppRestore", [_dec13], {
263
276
  configurable: true,
264
277
  enumerable: true,
265
278
  writable: true,
266
279
  initializer: null
267
- }), _descriptor12 = _applyDecoratedDescriptor(_class2.prototype, "viewType", [_dec13], {
280
+ }), _descriptor13 = _applyDecoratedDescriptor(_class2.prototype, "viewType", [_dec14], {
268
281
  configurable: true,
269
282
  enumerable: true,
270
283
  writable: true,
271
284
  initializer: function () {
272
285
  return "XML";
273
286
  }
274
- }), _descriptor13 = _applyDecoratedDescriptor(_class2.prototype, "viewName", [_dec14], {
287
+ }), _descriptor14 = _applyDecoratedDescriptor(_class2.prototype, "viewName", [_dec15], {
275
288
  configurable: true,
276
289
  enumerable: true,
277
290
  writable: true,
278
291
  initializer: null
279
- }), _descriptor14 = _applyDecoratedDescriptor(_class2.prototype, "_jsxViewName", [_dec15], {
292
+ }), _descriptor15 = _applyDecoratedDescriptor(_class2.prototype, "_jsxViewName", [_dec16], {
280
293
  configurable: true,
281
294
  enumerable: true,
282
295
  writable: true,
283
296
  initializer: function () {
284
297
  return "";
285
298
  }
286
- }), _descriptor15 = _applyDecoratedDescriptor(_class2.prototype, "containerDefined", [_dec16], {
299
+ }), _descriptor16 = _applyDecoratedDescriptor(_class2.prototype, "containerDefined", [_dec17], {
287
300
  configurable: true,
288
301
  enumerable: true,
289
302
  writable: true,
290
303
  initializer: null
291
- }), _descriptor16 = _applyDecoratedDescriptor(_class2.prototype, "heroesBatchReceived", [_dec17], {
304
+ }), _descriptor17 = _applyDecoratedDescriptor(_class2.prototype, "heroesBatchReceived", [_dec18], {
292
305
  configurable: true,
293
306
  enumerable: true,
294
307
  writable: true,
295
308
  initializer: null
296
- }), _descriptor17 = _applyDecoratedDescriptor(_class2.prototype, "workersBatchReceived", [_dec18], {
309
+ }), _descriptor18 = _applyDecoratedDescriptor(_class2.prototype, "workersBatchReceived", [_dec19], {
297
310
  configurable: true,
298
311
  enumerable: true,
299
312
  writable: true,
300
313
  initializer: null
301
- })), _class2)) || _class);
314
+ }), _class2)) || _class);
302
315
  return TemplateComponent;
303
316
  }, false);
304
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUZW1wbGF0ZUNvbXBvbmVudCIsIl9kZWMiLCJkZWZpbmVVSTVDbGFzcyIsIl9kZWMyIiwiaW1wbGVtZW50SW50ZXJmYWNlIiwiX2RlYzMiLCJwcm9wZXJ0eSIsInR5cGUiLCJkZWZhdWx0VmFsdWUiLCJfZGVjNCIsIl9kZWM1IiwiX2RlYzYiLCJfZGVjNyIsIl9kZWM4IiwiX2RlYzkiLCJfZGVjMTAiLCJfZGVjMTEiLCJfZGVjMTIiLCJfZGVjMTMiLCJfZGVjMTQiLCJfZGVjMTUiLCJfZGVjMTYiLCJldmVudCIsIl9kZWMxNyIsIl9kZWMxOCIsIl9jbGFzcyIsIl9jbGFzczIiLCJfVUlDb21wb25lbnQiLCJfaW5oZXJpdHNMb29zZSIsIl90aGlzIiwiX2xlbiIsImFyZ3VtZW50cyIsImxlbmd0aCIsImFyZ3MiLCJBcnJheSIsIl9rZXkiLCJjYWxsIiwiX2luaXRpYWxpemVyRGVmaW5lUHJvcGVydHkiLCJfZGVzY3JpcHRvciIsIl9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQiLCJfZGVzY3JpcHRvcjIiLCJfZGVzY3JpcHRvcjMiLCJfZGVzY3JpcHRvcjQiLCJfZGVzY3JpcHRvcjUiLCJfZGVzY3JpcHRvcjYiLCJfZGVzY3JpcHRvcjciLCJfZGVzY3JpcHRvcjgiLCJfZGVzY3JpcHRvcjkiLCJfZGVzY3JpcHRvcjEwIiwiX2Rlc2NyaXB0b3IxMSIsIl9kZXNjcmlwdG9yMTIiLCJfZGVzY3JpcHRvcjEzIiwiX2Rlc2NyaXB0b3IxNCIsIl9kZXNjcmlwdG9yMTUiLCJfZGVzY3JpcHRvcjE2IiwiX2Rlc2NyaXB0b3IxNyIsIl9wcm90byIsInByb3RvdHlwZSIsInNldENvbnRhaW5lciIsIm9Db250YWluZXIiLCJmaXJlRXZlbnQiLCJjb250YWluZXIiLCJpbml0Iiwib0FwcENvbXBvbmVudCIsIkNvbW1vblV0aWxzIiwiZ2V0QXBwQ29tcG9uZW50IiwiZ2V0RXh0ZW5zaW9uQ29tcG9uZW50Iiwic2V0Um9vdENvbnRyb2xsZXIiLCJjb250cm9sbGVyIiwiX3Jvb3RDb250cm9sbGVyIiwiZ2V0Um9vdENvbnRyb2xsZXIiLCJyb290Q29udHJvbCIsImdldFJvb3RDb250cm9sIiwicm9vdENvbnRyb2xsZXIiLCJnZXRDb250cm9sbGVyIiwib25QYWdlUmVhZHkiLCJtUGFyYW1ldGVycyIsImdldE5hdmlnYXRpb25Db25maWd1cmF0aW9uIiwic1RhcmdldFBhdGgiLCJtTmF2aWdhdGlvbiIsIm5hdmlnYXRpb24iLCJnZXRWaWV3RGF0YSIsIm1Qcm9wZXJ0aWVzIiwiZ2V0TWV0YWRhdGEiLCJnZXRBbGxQcm9wZXJ0aWVzIiwib1ZpZXdEYXRhIiwiT2JqZWN0Iiwia2V5cyIsInJlZHVjZSIsIm1WaWV3RGF0YSIsInNQcm9wZXJ0eU5hbWUiLCJnZXQiLCJwcmVwcm9jZXNzb3JDb250ZXh0IiwiZmNsRW5hYmxlZCIsIl9pc0ZjbEVuYWJsZWQiLCJfZ2V0UGFnZVRpdGxlSW5mb3JtYXRpb24iLCJnZXRFeHRlbnNpb25BUEkiLCJnZXRNZXRhTW9kZWwiLCJtZXRhTW9kZWxSZWZlcmVuY2UiLCJfdGhpcyRwcmVwcm9jZXNzb3JDb24iLCJtb2RlbHMiLCJtZXRhTW9kZWwiLCJzdGFydHNXaXRoIiwiZ2V0TWV0YU1vZGVsQnlJZCIsImdldE1vZGVsIiwiX3RoaXMkZ2V0QXBwQ29tcG9uZW50IiwiX3RoaXMkZ2V0TW9kZWwiLCJnZXRGdWxsQ29udGV4dFBhdGgiLCJfdGhpcyRwcmVwcm9jZXNzb3JDb24yIiwiZnVsbENvbnRleHRQYXRoIiwiVUlDb21wb25lbnQiLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yIiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsIndyaXRhYmxlIiwiaW5pdGlhbGl6ZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIlRlbXBsYXRlQ29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29udmVydGVkTWV0YWRhdGEgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXNcIjtcbmltcG9ydCB7IGRlZmluZVVJNUNsYXNzLCBldmVudCwgaW1wbGVtZW50SW50ZXJmYWNlLCBwcm9wZXJ0eSB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB0eXBlIEFwcENvbXBvbmVudCBmcm9tIFwic2FwL2ZlL2NvcmUvQXBwQ29tcG9uZW50XCI7XG5pbXBvcnQgQ29tbW9uVXRpbHMgZnJvbSBcInNhcC9mZS9jb3JlL0NvbW1vblV0aWxzXCI7XG5pbXBvcnQgdHlwZSBFeHRlbnNpb25BUEkgZnJvbSBcInNhcC9mZS9jb3JlL0V4dGVuc2lvbkFQSVwiO1xuaW1wb3J0IHR5cGUgUGFnZUNvbnRyb2xsZXIgZnJvbSBcInNhcC9mZS9jb3JlL1BhZ2VDb250cm9sbGVyXCI7XG5pbXBvcnQgdHlwZSBDb252ZXJ0ZXJDb250ZXh0IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL0NvbnZlcnRlckNvbnRleHRcIjtcbmltcG9ydCB0eXBlIHsgTmF2aWdhdGlvblRhcmdldENvbmZpZ3VyYXRpb24gfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9NYW5pZmVzdFNldHRpbmdzXCI7XG5pbXBvcnQgeyBnZXRNZXRhTW9kZWxCeUlkIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvTWV0YU1vZGVsQ29udmVydGVyXCI7XG5pbXBvcnQgdHlwZSB7IERlZmluaXRpb25Db250ZXh0LCBEZWZpbml0aW9uUGFnZSB9IGZyb20gXCJzYXAvZmUvY29yZS9kZWZpbml0aW9uL0ZFRGVmaW5pdGlvblwiO1xuaW1wb3J0IHR5cGUgeyBUaXRsZUluZm9ybWF0aW9uIH0gZnJvbSBcInNhcC9mZS9jb3JlL3Jvb3RWaWV3L1Jvb3RWaWV3QmFzZUNvbnRyb2xsZXJcIjtcbmltcG9ydCB0eXBlIENvbXBvbmVudENvbnRhaW5lciBmcm9tIFwic2FwL3VpL2NvcmUvQ29tcG9uZW50Q29udGFpbmVyXCI7XG5pbXBvcnQgVUlDb21wb25lbnQgZnJvbSBcInNhcC91aS9jb3JlL1VJQ29tcG9uZW50XCI7XG5pbXBvcnQgdHlwZSB7IElBc3luY0NvbnRlbnRDcmVhdGlvbiB9IGZyb20gXCJzYXAvdWkvY29yZS9saWJyYXJ5XCI7XG5pbXBvcnQgdHlwZSBWaWV3IGZyb20gXCJzYXAvdWkvY29yZS9tdmMvVmlld1wiO1xuaW1wb3J0IHR5cGUgQmFzZUNvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9Db250ZXh0XCI7XG5pbXBvcnQgdHlwZSBNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL01vZGVsXCI7XG5pbXBvcnQgdHlwZSBKU09OTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9qc29uL0pTT05Nb2RlbFwiO1xuaW1wb3J0IHR5cGUgQ29udGV4dCBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L0NvbnRleHRcIjtcbmltcG9ydCB0eXBlIE9EYXRhTGlzdEJpbmRpbmcgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9PRGF0YUxpc3RCaW5kaW5nXCI7XG5pbXBvcnQgdHlwZSBPRGF0YU1ldGFNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L09EYXRhTWV0YU1vZGVsXCI7XG5pbXBvcnQgdHlwZSBPRGF0YU1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFNb2RlbFwiO1xuXG5leHBvcnQgdHlwZSBOYXZpZ2F0aW9uQ29uZmlndXJhdGlvbiA9IHtcblx0ZGV0YWlsOiB7XG5cdFx0cm91dGU6IHN0cmluZztcblx0XHRwYXJhbWV0ZXJzOiB1bmtub3duO1xuXHRcdG91dGJvdW5kPzogc3RyaW5nO1xuXHRcdG91dGJvdW5kRGV0YWlsPzogTmF2aWdhdGlvblRhcmdldENvbmZpZ3VyYXRpb25bXCJvdXRib3VuZERldGFpbFwiXTtcblx0fTtcblx0Y3JlYXRlOiB7XG5cdFx0cm91dGU6IHN0cmluZztcblx0XHRwYXJhbWV0ZXJzOiB1bmtub3duO1xuXHRcdG91dGJvdW5kPzogc3RyaW5nO1xuXHRcdG91dGJvdW5kRGV0YWlsPzogTmF2aWdhdGlvblRhcmdldENvbmZpZ3VyYXRpb25bXCJvdXRib3VuZERldGFpbFwiXTtcblx0fTtcbn07XG5cbmV4cG9ydCB0eXBlIFhNTFByZXByb2Nlc3NvckNvbnRleHQgPSB7XG5cdGJpbmRpbmdDb250ZXh0czogUmVjb3JkPHN0cmluZywgQmFzZUNvbnRleHQgfCBudWxsPjtcblx0bW9kZWxzOiBSZWNvcmQ8c3RyaW5nLCBNb2RlbD47XG5cdGZ1bGxDb250ZXh0UGF0aDogc3RyaW5nO1xuXHRnZXRDb252ZXJ0ZWRNZXRhZGF0YTogKCkgPT4gQ29udmVydGVkTWV0YWRhdGE7XG5cdGdldERlZmluaXRpb25Db250ZXh0OiAoKSA9PiBEZWZpbml0aW9uQ29udGV4dDtcblx0Z2V0RGVmaW5pdGlvbkZvclBhZ2U6ICgpID0+IERlZmluaXRpb25QYWdlO1xuXHRhcHBDb21wb25lbnQ6IEFwcENvbXBvbmVudDtcblx0dmlld0lkOiBzdHJpbmc7XG59O1xuXG5AZGVmaW5lVUk1Q2xhc3MoXCJzYXAuZmUuY29yZS5UZW1wbGF0ZUNvbXBvbmVudFwiKVxuY2xhc3MgVGVtcGxhdGVDb21wb25lbnQgZXh0ZW5kcyBVSUNvbXBvbmVudCBpbXBsZW1lbnRzIElBc3luY0NvbnRlbnRDcmVhdGlvbiB7XG5cdEBpbXBsZW1lbnRJbnRlcmZhY2UoXCJzYXAudWkuY29yZS5JQXN5bmNDb250ZW50Q3JlYXRpb25cIilcblx0X19pbXBsZW1lbnRzX19zYXBfdWlfY29yZV9JQXN5bmNDb250ZW50Q3JlYXRpb24gPSB0cnVlO1xuXG5cdC8qKlxuXHQgKiBOYW1lIG9mIHRoZSBPRGF0YSBlbnRpdHkgc2V0XG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiLCBkZWZhdWx0VmFsdWU6IG51bGwgfSlcblx0ZW50aXR5U2V0OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuXHQvKipcblx0ICogQ29udGV4dCBQYXRoIGZvciByZW5kZXJpbmcgdGhlIHRlbXBsYXRlXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiLCBkZWZhdWx0VmFsdWU6IG51bGwgfSlcblx0Y29udGV4dFBhdGg6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwib2JqZWN0XCIgfSlcblx0cHJlcHJvY2Vzc29yQ29udGV4dD86IFhNTFByZXByb2Nlc3NvckNvbnRleHQ7XG5cblx0LyoqXG5cdCAqIFRoZSBwYXR0ZXJuIGZvciB0aGUgYmluZGluZyBjb250ZXh0IHRvIGJlIGNyZWF0ZSBiYXNlZCBvbiB0aGUgcGFyYW1ldGVycyBmcm9tIHRoZSBuYXZpZ2F0aW9uXG5cdCAqIElmIG5vdCBwcm92aWRlZCB3ZSdsbCBkZWZhdWx0IHRvIHdoYXQgd2FzIHBhc3NlZCBpbiB0aGUgVVJMXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdGJpbmRpbmdDb250ZXh0UGF0dGVybiE6IHN0cmluZztcblxuXHQvKipcblx0ICogTWFwIG9mIHVzZWQgT0RhdGEgbmF2aWdhdGlvbnMgYW5kIGl0cyByb3V0aW5nIHRhcmdldHNcblx0ICovXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwib2JqZWN0XCIgfSlcblx0bmF2aWdhdGlvbiE6IFJlY29yZDxzdHJpbmcsIE5hdmlnYXRpb25Db25maWd1cmF0aW9uPjtcblxuXHQvKipcblx0ICogRW5oYW5jZSB0aGUgaTE4biBidW5kbGUgdXNlZCBmb3IgdGhpcyBwYWdlIHdpdGggb25lIG9yIG1vcmUgYXBwIHNwZWNpZmljIGkxOG4gcmVzb3VyY2UgYnVuZGxlcyBvciByZXNvdXJjZSBtb2RlbHNcblx0ICogb3IgYSBjb21iaW5hdGlvbiBvZiBib3RoLiBUaGUgbGFzdCByZXNvdXJjZSBidW5kbGUvbW9kZWwgaXMgZ2l2ZW4gaGlnaGVzdCBwcmlvcml0eVxuXHQgKi9cblx0QHByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdbXVwiIH0pXG5cdGVuaGFuY2VJMThuITogc3RyaW5nW107XG5cblx0LyoqXG5cdCAqIERlZmluZSBjb250cm9sIHJlbGF0ZWQgY29uZmlndXJhdGlvbiBzZXR0aW5nc1xuXHQgKi9cblx0QHByb3BlcnR5KHsgdHlwZTogXCJvYmplY3RcIiB9KVxuXHRjb250cm9sQ29uZmlndXJhdGlvbj86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG5cdC8qKlxuXHQgKiBBZGp1c3RzIHRoZSB0ZW1wbGF0ZSBjb250ZW50XG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcIm9iamVjdFwiIH0pXG5cdGNvbnRlbnQ/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuXHQvKipcblx0ICogV2hldGhlciBvciBub3QgeW91IGNhbiByZWFjaCB0aGlzIHBhZ2UgZGlyZWN0bHkgdGhyb3VnaCBzZW1hbnRpYyBib29rbWFya3Ncblx0ICovXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhblwiIH0pXG5cdGFsbG93RGVlcExpbmtpbmchOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBEZWZpbmVzIHRoZSBjb250ZXh0IHBhdGggb24gdGhlIGNvbXBvbmVudCB0aGF0IGlzIHJlZnJlc2hlZCB3aGVuIHRoZSBhcHAgaXMgcmVzdG9yZWQgdXNpbmcga2VlcCBhbGl2ZSBtb2RlXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcIm9iamVjdFwiIH0pXG5cdHJlZnJlc2hTdHJhdGVneU9uQXBwUmVzdG9yZTogdW5rbm93bjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdHZpZXdUeXBlID0gXCJYTUxcIjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdHZpZXdOYW1lPzogc3RyaW5nO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0X2pzeFZpZXdOYW1lID0gXCJcIjtcblxuXHRAZXZlbnQoKVxuXHRjb250YWluZXJEZWZpbmVkITogRnVuY3Rpb247XG5cblx0QGV2ZW50KClcblx0aGVyb2VzQmF0Y2hSZWNlaXZlZCE6IEZ1bmN0aW9uO1xuXG5cdEBldmVudCgpXG5cdHdvcmtlcnNCYXRjaFJlY2VpdmVkITogRnVuY3Rpb247XG5cblx0cHJvdGVjdGVkIG9BcHBDb21wb25lbnQhOiBBcHBDb21wb25lbnQ7XG5cblx0cHJpdmF0ZSBfcm9vdENvbnRyb2xsZXI/OiBQYWdlQ29udHJvbGxlcjtcblxuXHQvLyBUaGUgaWQgb2YgYSBmcmFnbWVudCBiZWluZyBwcm9jZXNzZWQsIGl0IHdpbGwgdGFrZSBwcmlvcml0eSBpbiB0aGUgSUQgZ2VuZXJhdGlvblxuXHRwcml2YXRlIF90ZW1wb3JhcnlGcmFnbWVudElkPzogc3RyaW5nO1xuXG5cdHNldENvbnRhaW5lcihvQ29udGFpbmVyOiBDb21wb25lbnRDb250YWluZXIpOiB0aGlzIHtcblx0XHRzdXBlci5zZXRDb250YWluZXIob0NvbnRhaW5lcik7XG5cdFx0dGhpcy5maXJlRXZlbnQoXCJjb250YWluZXJEZWZpbmVkXCIsIHsgY29udGFpbmVyOiBvQ29udGFpbmVyIH0pO1xuXHRcdHJldHVybiB0aGlzO1xuXHR9XG5cblx0aW5pdCgpOiB2b2lkIHtcblx0XHR0aGlzLm9BcHBDb21wb25lbnQgPSBDb21tb25VdGlscy5nZXRBcHBDb21wb25lbnQodGhpcyk7XG5cdFx0c3VwZXIuaW5pdCgpO1xuXHR9XG5cblx0Ly8gVGhpcyBtZXRob2QgaXMgY2FsbGVkIGJ5IFVJNSBjb3JlIHRvIGFjY2VzcyB0byB0aGUgY29tcG9uZW50IGNvbnRhaW5pbmcgdGhlIGN1c3RvbWl6aW5nIGNvbmZpZ3VyYXRpb24uXG5cdC8vIGFzIGNvbnRyb2xsZXIgZXh0ZW5zaW9ucyBhcmUgZGVmaW5lZCBpbiB0aGUgbWFuaWZlc3QgZm9yIHRoZSBhcHAgY29tcG9uZW50IGFuZCBub3QgZm9yIHRoZVxuXHQvLyB0ZW1wbGF0ZSBjb21wb25lbnQgd2UgcmV0dXJuIHRoZSBhcHAgY29tcG9uZW50LlxuXHRnZXRFeHRlbnNpb25Db21wb25lbnQoKTogQXBwQ29tcG9uZW50IHtcblx0XHRyZXR1cm4gdGhpcy5vQXBwQ29tcG9uZW50O1xuXHR9XG5cblx0Z2V0QXBwQ29tcG9uZW50KCk6IEFwcENvbXBvbmVudCB7XG5cdFx0cmV0dXJuIHRoaXMub0FwcENvbXBvbmVudDtcblx0fVxuXG5cdHNldFJvb3RDb250cm9sbGVyKGNvbnRyb2xsZXI6IFBhZ2VDb250cm9sbGVyKTogdm9pZCB7XG5cdFx0dGhpcy5fcm9vdENvbnRyb2xsZXIgPSBjb250cm9sbGVyO1xuXHR9XG5cblx0Z2V0Um9vdENvbnRyb2xsZXIoKTogUGFnZUNvbnRyb2xsZXIgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IHJvb3RDb250cm9sOiBWaWV3ID0gdGhpcy5nZXRSb290Q29udHJvbCgpO1xuXHRcdGxldCByb290Q29udHJvbGxlcjogUGFnZUNvbnRyb2xsZXIgfCB1bmRlZmluZWQ7XG5cdFx0aWYgKHJvb3RDb250cm9sICYmIHJvb3RDb250cm9sLmdldENvbnRyb2xsZXIpIHtcblx0XHRcdHJvb3RDb250cm9sbGVyID0gcm9vdENvbnRyb2wuZ2V0Q29udHJvbGxlcigpIGFzIFBhZ2VDb250cm9sbGVyO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyb290Q29udHJvbGxlciA9IHRoaXMuX3Jvb3RDb250cm9sbGVyO1xuXHRcdH1cblx0XHRyZXR1cm4gcm9vdENvbnRyb2xsZXI7XG5cdH1cblxuXHRvblBhZ2VSZWFkeShtUGFyYW1ldGVyczogdW5rbm93bik6IHZvaWQge1xuXHRcdGNvbnN0IHJvb3RDb250cm9sbGVyID0gdGhpcy5nZXRSb290Q29udHJvbGxlcigpO1xuXHRcdGlmIChyb290Q29udHJvbGxlciAmJiByb290Q29udHJvbGxlci5vblBhZ2VSZWFkeSkge1xuXHRcdFx0cm9vdENvbnRyb2xsZXIub25QYWdlUmVhZHkobVBhcmFtZXRlcnMpO1xuXHRcdH1cblx0fVxuXG5cdGdldE5hdmlnYXRpb25Db25maWd1cmF0aW9uKHNUYXJnZXRQYXRoOiBzdHJpbmcpOiBOYXZpZ2F0aW9uQ29uZmlndXJhdGlvbiB7XG5cdFx0Y29uc3QgbU5hdmlnYXRpb24gPSB0aGlzLm5hdmlnYXRpb247XG5cdFx0cmV0dXJuIG1OYXZpZ2F0aW9uW3NUYXJnZXRQYXRoXTtcblx0fVxuXG5cdGdldFZpZXdEYXRhKCk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcblx0XHRjb25zdCBtUHJvcGVydGllcyA9IHRoaXMuZ2V0TWV0YWRhdGEoKS5nZXRBbGxQcm9wZXJ0aWVzKCk7XG5cdFx0Y29uc3Qgb1ZpZXdEYXRhID0gT2JqZWN0LmtleXMobVByb3BlcnRpZXMpLnJlZHVjZSgobVZpZXdEYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgc1Byb3BlcnR5TmFtZTogc3RyaW5nKSA9PiB7XG5cdFx0XHRtVmlld0RhdGFbc1Byb3BlcnR5TmFtZV0gPSBtUHJvcGVydGllc1tzUHJvcGVydHlOYW1lXS5nZXQhKHRoaXMpO1xuXHRcdFx0cmV0dXJuIG1WaWV3RGF0YTtcblx0XHR9LCB7fSk7XG5cdFx0ZGVsZXRlIG9WaWV3RGF0YS5wcmVwcm9jZXNzb3JDb250ZXh0O1xuXHRcdC8vIEFjY2VzcyB0aGUgaW50ZXJuYWwgX2lzRmNsRW5hYmxlZCB3aGljaCB3aWxsIGJlIHRoZXJlXG5cdFx0b1ZpZXdEYXRhLmZjbEVuYWJsZWQgPSB0aGlzLm9BcHBDb21wb25lbnQuX2lzRmNsRW5hYmxlZCgpO1xuXG5cdFx0cmV0dXJuIG9WaWV3RGF0YTtcblx0fVxuXG5cdF9nZXRQYWdlVGl0bGVJbmZvcm1hdGlvbigpOiBUaXRsZUluZm9ybWF0aW9uIHtcblx0XHRjb25zdCByb290Q29udHJvbCA9IHRoaXMuZ2V0Um9vdENvbnRyb2woKTtcblx0XHRpZiAocm9vdENvbnRyb2wgJiYgcm9vdENvbnRyb2wuZ2V0Q29udHJvbGxlcigpICYmIHJvb3RDb250cm9sLmdldENvbnRyb2xsZXIoKS5fZ2V0UGFnZVRpdGxlSW5mb3JtYXRpb24pIHtcblx0XHRcdHJldHVybiByb290Q29udHJvbC5nZXRDb250cm9sbGVyKCkuX2dldFBhZ2VUaXRsZUluZm9ybWF0aW9uKCk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJldHVybiB7fSBhcyBUaXRsZUluZm9ybWF0aW9uO1xuXHRcdH1cblx0fVxuXG5cdGdldEV4dGVuc2lvbkFQSSgpOiBFeHRlbnNpb25BUEkge1xuXHRcdHJldHVybiB0aGlzLmdldFJvb3RDb250cm9sKCkuZ2V0Q29udHJvbGxlcigpLmdldEV4dGVuc2lvbkFQSSgpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlcyB0aGUgbWV0YW1vZGVsIGZvciB0aGUgZ2l2ZW4gbWV0YW1vZGVsIHJlZmVyZW5jZSAoSUQgLyBuYW1lIG9yIHVuZGVmaW5lZCBmb3IgdGhlIGRlZmF1bHQgb25lKS5cblx0ICogQHBhcmFtIG1ldGFNb2RlbFJlZmVyZW5jZSBUaGUgbWV0YW1vZGVsIHJlZmVyZW5jZVxuXHQgKiBAcmV0dXJucyBUaGUgY29ycmVjdCBtZXRhbW9kZWwgaWYgaXQgZXhpdHNcblx0ICovXG5cdGdldE1ldGFNb2RlbChtZXRhTW9kZWxSZWZlcmVuY2U/OiBzdHJpbmcpOiBPRGF0YU1ldGFNb2RlbCB8IHVuZGVmaW5lZCB7XG5cdFx0aWYgKCFtZXRhTW9kZWxSZWZlcmVuY2UpIHtcblx0XHRcdHJldHVybiB0aGlzLnByZXByb2Nlc3NvckNvbnRleHQ/Lm1vZGVscy5tZXRhTW9kZWwgYXMgT0RhdGFNZXRhTW9kZWwgfCB1bmRlZmluZWQ7XG5cdFx0fSBlbHNlIGlmIChtZXRhTW9kZWxSZWZlcmVuY2Uuc3RhcnRzV2l0aChcImlkLVwiKSkge1xuXHRcdFx0cmV0dXJuIGdldE1ldGFNb2RlbEJ5SWQobWV0YU1vZGVsUmVmZXJlbmNlKTtcblx0XHR9IGVsc2UgaWYgKCF0aGlzLmdldE1vZGVsKG1ldGFNb2RlbFJlZmVyZW5jZSkpIHtcblx0XHRcdHJldHVybiB0aGlzLmdldEFwcENvbXBvbmVudCgpLmdldE1vZGVsKG1ldGFNb2RlbFJlZmVyZW5jZSk/LmdldE1ldGFNb2RlbCgpIGFzIE9EYXRhTWV0YU1vZGVsIHwgdW5kZWZpbmVkO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5nZXRNb2RlbChtZXRhTW9kZWxSZWZlcmVuY2UpPy5nZXRNZXRhTW9kZWwoKSBhcyBPRGF0YU1ldGFNb2RlbCB8IHVuZGVmaW5lZDtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmVzIHRoZSBmdWxsIGNvbnRleHQgcGF0aCBmb3IgdGhlIGdpdmVuIG1ldGFtb2RlbCByZWZlcmVuY2UgKElEIC8gbmFtZSBvciB1bmRlZmluZWQgZm9yIHRoZSBkZWZhdWx0IG9uZSkuXG5cdCAqIEBwYXJhbSBtZXRhTW9kZWxSZWZlcmVuY2UgVGhlIG1ldGFtb2RlbCByZWZlcmVuY2Vcblx0ICogQHJldHVybnMgVGhlIGNvcnJlY3QgZnVsbCBjb250ZXh0IHBhdGhcblx0ICovXG5cdGdldEZ1bGxDb250ZXh0UGF0aChtZXRhTW9kZWxSZWZlcmVuY2U6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG5cdFx0aWYgKCFtZXRhTW9kZWxSZWZlcmVuY2UpIHtcblx0XHRcdHJldHVybiB0aGlzLnByZXByb2Nlc3NvckNvbnRleHQ/LmZ1bGxDb250ZXh0UGF0aDtcblx0XHR9XG5cdH1cbn1cbmludGVyZmFjZSBUZW1wbGF0ZUNvbXBvbmVudCB7XG5cdC8vIFRPRE86IHRoaXMgc2hvdWxkIGJlIGlkZWFsbHkgYmUgaGFuZGxlZCBieSB0aGUgZWRpdGZsb3cvcm91dGluZyB3aXRob3V0IHRoZSBuZWVkIHRvIGhhdmUgdGhpcyBtZXRob2QgaW4gdGhlIG9iamVjdCBwYWdlIC0gZm9yIG5vdyBrZWVwIGl0IGhlcmVcblx0Y3JlYXRlRGVmZXJyZWRDb250ZXh0Pyhcblx0XHRzUGF0aDogc3RyaW5nLFxuXHRcdG9MaXN0QmluZGluZzogT0RhdGFMaXN0QmluZGluZyB8IHVuZGVmaW5lZCxcblx0XHRwYXJlbnRDb250ZXh0OiBDb250ZXh0IHwgdW5kZWZpbmVkLFxuXHRcdGRhdGE6IG9iamVjdCB8IHVuZGVmaW5lZCxcblx0XHRiQWN0aW9uQ3JlYXRlOiBib29sZWFuXG5cdCk6IHZvaWQ7XG5cdGlzT3BlbkluRWRpdE1vZGUoKTogYm9vbGVhbjtcblx0Z2V0Um9vdENvbnRyb2woKTogeyBnZXRDb250cm9sbGVyKCk6IFBhZ2VDb250cm9sbGVyIH0gJiBWaWV3O1xuXHRleHRlbmRQYWdlRGVmaW5pdGlvbj8ocGFnZURlZmluaXRpb246IHt9LCBjb252ZXJ0ZXJDb250ZXh0PzogQ29udmVydGVyQ29udGV4dCk6IHt9O1xuXHRnZXRNb2RlbCgpOiBPRGF0YU1vZGVsO1xuXHRnZXRNb2RlbChtb2RlbE5hbWU6IFwiX3BhZ2VNb2RlbFwiKTogSlNPTk1vZGVsO1xuXHRnZXRNb2RlbChtb2RlbE5hbWU6IHN0cmluZyk6IE1vZGVsIHwgdW5kZWZpbmVkO1xufVxuZXhwb3J0IGRlZmF1bHQgVGVtcGxhdGVDb21wb25lbnQ7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFrRE1BLGlCQUFpQixJQUFBQyxJQUFBLEdBRHRCQyxjQUFjLENBQUMsK0JBQStCLENBQUMsRUFBQUMsS0FBQSxHQUU5Q0Msa0JBQWtCLENBQUMsbUNBQW1DLENBQUMsRUFBQUMsS0FBQSxHQU12REMsUUFBUSxDQUFDO0lBQUVDLElBQUksRUFBRSxRQUFRO0lBQUVDLFlBQVksRUFBRTtFQUFLLENBQUMsQ0FBQyxFQUFBQyxLQUFBLEdBTWhESCxRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFLFFBQVE7SUFBRUMsWUFBWSxFQUFFO0VBQUssQ0FBQyxDQUFDLEVBQUFFLEtBQUEsR0FHaERKLFFBQVEsQ0FBQztJQUFFQyxJQUFJLEVBQUU7RUFBUyxDQUFDLENBQUMsRUFBQUksS0FBQSxHQU81QkwsUUFBUSxDQUFDO0lBQUVDLElBQUksRUFBRTtFQUFTLENBQUMsQ0FBQyxFQUFBSyxLQUFBLEdBTTVCTixRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFO0VBQVMsQ0FBQyxDQUFDLEVBQUFNLEtBQUEsR0FPNUJQLFFBQVEsQ0FBQztJQUFFQyxJQUFJLEVBQUU7RUFBVyxDQUFDLENBQUMsRUFBQU8sS0FBQSxHQU05QlIsUUFBUSxDQUFDO0lBQUVDLElBQUksRUFBRTtFQUFTLENBQUMsQ0FBQyxFQUFBUSxNQUFBLEdB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
317
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUZW1wbGF0ZUNvbXBvbmVudCIsIl9kZWMiLCJkZWZpbmVVSTVDbGFzcyIsIl9kZWMyIiwiaW1wbGVtZW50SW50ZXJmYWNlIiwiX2RlYzMiLCJfZGVjNCIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsIl9kZWM1IiwiX2RlYzYiLCJfZGVjNyIsIl9kZWM4IiwiX2RlYzkiLCJfZGVjMTAiLCJfZGVjMTEiLCJfZGVjMTIiLCJfZGVjMTMiLCJfZGVjMTQiLCJfZGVjMTUiLCJfZGVjMTYiLCJfZGVjMTciLCJldmVudCIsIl9kZWMxOCIsIl9kZWMxOSIsIl9jbGFzcyIsIl9jbGFzczIiLCJfVUlDb21wb25lbnQiLCJfdGhpcyIsIl9sZW4iLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJhcmdzIiwiQXJyYXkiLCJfa2V5IiwiY2FsbCIsIl9pbml0aWFsaXplckRlZmluZVByb3BlcnR5IiwiX2Rlc2NyaXB0b3IiLCJfZGVzY3JpcHRvcjIiLCJfZGVzY3JpcHRvcjMiLCJfZGVzY3JpcHRvcjQiLCJfZGVzY3JpcHRvcjUiLCJfZGVzY3JpcHRvcjYiLCJfZGVzY3JpcHRvcjciLCJfZGVzY3JpcHRvcjgiLCJfZGVzY3JpcHRvcjkiLCJfZGVzY3JpcHRvcjEwIiwiX2Rlc2NyaXB0b3IxMSIsIl9kZXNjcmlwdG9yMTIiLCJfZGVzY3JpcHRvcjEzIiwiX2Rlc2NyaXB0b3IxNCIsIl9kZXNjcmlwdG9yMTUiLCJfZGVzY3JpcHRvcjE2IiwiX2Rlc2NyaXB0b3IxNyIsIl9kZXNjcmlwdG9yMTgiLCJfaW5oZXJpdHNMb29zZSIsIl9wcm90byIsInByb3RvdHlwZSIsInNldENvbnRhaW5lciIsIm9Db250YWluZXIiLCJmaXJlRXZlbnQiLCJjb250YWluZXIiLCJpbml0Iiwib0FwcENvbXBvbmVudCIsIkNvbW1vblV0aWxzIiwiZ2V0QXBwQ29tcG9uZW50IiwiZ2V0RXh0ZW5zaW9uQ29tcG9uZW50Iiwic2V0Um9vdENvbnRyb2xsZXIiLCJjb250cm9sbGVyIiwiX3Jvb3RDb250cm9sbGVyIiwiZ2V0Um9vdENvbnRyb2xsZXIiLCJyb290Q29udHJvbCIsImdldFJvb3RDb250cm9sIiwicm9vdENvbnRyb2xsZXIiLCJnZXRDb250cm9sbGVyIiwib25QYWdlUmVhZHkiLCJtUGFyYW1ldGVycyIsImdldE5hdmlnYXRpb25Db25maWd1cmF0aW9uIiwic1RhcmdldFBhdGgiLCJtTmF2aWdhdGlvbiIsIm5hdmlnYXRpb24iLCJnZXRWaWV3RGF0YSIsIm1Qcm9wZXJ0aWVzIiwiZ2V0TWV0YWRhdGEiLCJnZXRBbGxQcm9wZXJ0aWVzIiwib1ZpZXdEYXRhIiwiT2JqZWN0Iiwia2V5cyIsInJlZHVjZSIsIm1WaWV3RGF0YSIsInNQcm9wZXJ0eU5hbWUiLCJnZXQiLCJwcmVwcm9jZXNzb3JDb250ZXh0IiwiZmNsRW5hYmxlZCIsIl9pc0ZjbEVuYWJsZWQiLCJyb3V0aW5nVGFyZ2V0TmFtZSIsImdldFJvdXRpbmdTZXJ2aWNlIiwiZ2V0VGFyZ2V0TmFtZSIsImlzSW5saW5lRWRpdEVuYWJsZWQiLCJnZXRJbmxpbmVFZGl0U2VydmljZSIsImRvZXNQYWdlSGF2ZUlubGluZUVkaXQiLCJfZ2V0UGFnZVRpdGxlSW5mb3JtYXRpb24iLCJnZXRFeHRlbnNpb25BUEkiLCJnZXRNZXRhTW9kZWwiLCJtZXRhTW9kZWxSZWZlcmVuY2UiLCJtb2RlbHMiLCJtZXRhTW9kZWwiLCJzdGFydHNXaXRoIiwiZ2V0TWV0YU1vZGVsQnlJZCIsImdldE1vZGVsIiwiZ2V0RnVsbENvbnRleHRQYXRoIiwiZnVsbENvbnRleHRQYXRoIiwiZ2V0TWFuaWZlc3RXcmFwcGVyIiwiTWFuaWZlc3RXcmFwcGVyIiwibWVyZ2UiLCJVSUNvbXBvbmVudCIsIl9hcHBseURlY29yYXRlZERlc2NyaXB0b3IiLCJjb25maWd1cmFibGUiLCJlbnVtZXJhYmxlIiwid3JpdGFibGUiLCJpbml0aWFsaXplciJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiVGVtcGxhdGVDb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb252ZXJ0ZWRNZXRhZGF0YSB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlc1wiO1xuaW1wb3J0IG1lcmdlIGZyb20gXCJzYXAvYmFzZS91dGlsL21lcmdlXCI7XG5pbXBvcnQgeyBkZWZpbmVVSTVDbGFzcywgZXZlbnQsIGltcGxlbWVudEludGVyZmFjZSwgcHJvcGVydHkgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgdHlwZSBBcHBDb21wb25lbnQgZnJvbSBcInNhcC9mZS9jb3JlL0FwcENvbXBvbmVudFwiO1xuaW1wb3J0IENvbW1vblV0aWxzIGZyb20gXCJzYXAvZmUvY29yZS9Db21tb25VdGlsc1wiO1xuaW1wb3J0IHR5cGUgRXh0ZW5zaW9uQVBJIGZyb20gXCJzYXAvZmUvY29yZS9FeHRlbnNpb25BUElcIjtcbmltcG9ydCB0eXBlIFBhZ2VDb250cm9sbGVyIGZyb20gXCJzYXAvZmUvY29yZS9QYWdlQ29udHJvbGxlclwiO1xuaW1wb3J0IHR5cGUgeyBJQnVpbGRpbmdCbG9ja093bmVyQ29tcG9uZW50IH0gZnJvbSBcInNhcC9mZS9jb3JlL2J1aWxkaW5nQmxvY2tzL0lCdWlsZGluZ0Jsb2NrT3duZXJDb21wb25lbnRcIjtcbmltcG9ydCB0eXBlIENvbnZlcnRlckNvbnRleHQgZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvQ29udmVydGVyQ29udGV4dFwiO1xuaW1wb3J0IHR5cGUgeyBOYXZpZ2F0aW9uVGFyZ2V0Q29uZmlndXJhdGlvbiB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01hbmlmZXN0U2V0dGluZ3NcIjtcbmltcG9ydCB7IHR5cGUgQmFzZU1hbmlmZXN0U2V0dGluZ3MgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9NYW5pZmVzdFNldHRpbmdzXCI7XG5pbXBvcnQgTWFuaWZlc3RXcmFwcGVyIGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01hbmlmZXN0V3JhcHBlclwiO1xuaW1wb3J0IHsgZ2V0TWV0YU1vZGVsQnlJZCB9IGZyb20gXCJzYXAvZmUvY29yZS9jb252ZXJ0ZXJzL01ldGFNb2RlbENvbnZlcnRlclwiO1xuaW1wb3J0IHR5cGUgeyBEZWZpbml0aW9uQ29udGV4dCwgRGVmaW5pdGlvblBhZ2UgfSBmcm9tIFwic2FwL2ZlL2NvcmUvZGVmaW5pdGlvbi9GRURlZmluaXRpb25cIjtcbmltcG9ydCB0eXBlIHsgVGl0bGVJbmZvcm1hdGlvbiB9IGZyb20gXCJzYXAvZmUvY29yZS9yb290Vmlldy9Sb290Vmlld0Jhc2VDb250cm9sbGVyXCI7XG5pbXBvcnQgdHlwZSBDb21wb25lbnRDb250YWluZXIgZnJvbSBcInNhcC91aS9jb3JlL0NvbXBvbmVudENvbnRhaW5lclwiO1xuaW1wb3J0IFVJQ29tcG9uZW50IGZyb20gXCJzYXAvdWkvY29yZS9VSUNvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBJQXN5bmNDb250ZW50Q3JlYXRpb24gfSBmcm9tIFwic2FwL3VpL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IHR5cGUgVmlldyBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL1ZpZXdcIjtcbmltcG9ydCB0eXBlIEJhc2VDb250ZXh0IGZyb20gXCJzYXAvdWkvbW9kZWwvQ29udGV4dFwiO1xuaW1wb3J0IHR5cGUgTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9Nb2RlbFwiO1xuaW1wb3J0IHR5cGUgSlNPTk1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvanNvbi9KU09OTW9kZWxcIjtcbmltcG9ydCB0eXBlIENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9Db250ZXh0XCI7XG5pbXBvcnQgdHlwZSBPRGF0YUxpc3RCaW5kaW5nIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFMaXN0QmluZGluZ1wiO1xuaW1wb3J0IHR5cGUgT0RhdGFNZXRhTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9PRGF0YU1ldGFNb2RlbFwiO1xuaW1wb3J0IHR5cGUgT0RhdGFNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L09EYXRhTW9kZWxcIjtcblxuZXhwb3J0IHR5cGUgTmF2aWdhdGlvbkNvbmZpZ3VyYXRpb24gPSB7XG5cdGRldGFpbDoge1xuXHRcdHJvdXRlOiBzdHJpbmc7XG5cdFx0cGFyYW1ldGVyczogdW5rbm93bjtcblx0XHRvdXRib3VuZD86IHN0cmluZztcblx0XHRvdXRib3VuZERldGFpbD86IE5hdmlnYXRpb25UYXJnZXRDb25maWd1cmF0aW9uW1wib3V0Ym91bmREZXRhaWxcIl07XG5cdH07XG5cdGNyZWF0ZToge1xuXHRcdHJvdXRlOiBzdHJpbmc7XG5cdFx0cGFyYW1ldGVyczogdW5rbm93bjtcblx0XHRvdXRib3VuZD86IHN0cmluZztcblx0XHRvdXRib3VuZERldGFpbD86IE5hdmlnYXRpb25UYXJnZXRDb25maWd1cmF0aW9uW1wib3V0Ym91bmREZXRhaWxcIl07XG5cdH07XG59O1xuXG5leHBvcnQgdHlwZSBYTUxQcmVwcm9jZXNzb3JDb250ZXh0ID0ge1xuXHRiaW5kaW5nQ29udGV4dHM6IFJlY29yZDxzdHJpbmcsIEJhc2VDb250ZXh0IHwgbnVsbD47XG5cdG1vZGVsczogUmVjb3JkPHN0cmluZywgTW9kZWw+O1xuXHRmdWxsQ29udGV4dFBhdGg6IHN0cmluZztcblx0Z2V0Q29udmVydGVkTWV0YWRhdGE6ICgpID0+IENvbnZlcnRlZE1ldGFkYXRhO1xuXHRnZXREZWZpbml0aW9uQ29udGV4dDogKCkgPT4gRGVmaW5pdGlvbkNvbnRleHQ7XG5cdGdldERlZmluaXRpb25Gb3JQYWdlOiAoKSA9PiBEZWZpbml0aW9uUGFnZTtcblx0YXBwQ29tcG9uZW50OiBBcHBDb21wb25lbnQ7XG5cdHZpZXdJZDogc3RyaW5nO1xufTtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLmNvcmUuVGVtcGxhdGVDb21wb25lbnRcIilcbmNsYXNzIFRlbXBsYXRlQ29tcG9uZW50IGV4dGVuZHMgVUlDb21wb25lbnQgaW1wbGVtZW50cyBJQXN5bmNDb250ZW50Q3JlYXRpb24sIElCdWlsZGluZ0Jsb2NrT3duZXJDb21wb25lbnQge1xuXHRAaW1wbGVtZW50SW50ZXJmYWNlKFwic2FwLnVpLmNvcmUuSUFzeW5jQ29udGVudENyZWF0aW9uXCIpXG5cdF9faW1wbGVtZW50c19fc2FwX3VpX2NvcmVfSUFzeW5jQ29udGVudENyZWF0aW9uID0gdHJ1ZTtcblxuXHRAaW1wbGVtZW50SW50ZXJmYWNlKFwic2FwLmZlLmNvcmUuYnVpbGRpbmdCbG9ja3MuSUJ1aWxkaW5nQmxvY2tPd25lckNvbXBvbmVudFwiKVxuXHRfX2ltcGxlbWVudHNfX3NhcF9mZV9jb3JlX2J1aWxkaW5nQmxvY2tzX0lCdWlsZGluZ0Jsb2NrT3duZXJDb21wb25lbnQgPSB0cnVlO1xuXG5cdC8qKlxuXHQgKiBOYW1lIG9mIHRoZSBPRGF0YSBlbnRpdHkgc2V0XG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiLCBkZWZhdWx0VmFsdWU6IG51bGwgfSlcblx0ZW50aXR5U2V0OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuXHQvKipcblx0ICogQ29udGV4dCBQYXRoIGZvciByZW5kZXJpbmcgdGhlIHRlbXBsYXRlXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiLCBkZWZhdWx0VmFsdWU6IG51bGwgfSlcblx0Y29udGV4dFBhdGg6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwib2JqZWN0XCIgfSlcblx0cHJlcHJvY2Vzc29yQ29udGV4dD86IFhNTFByZXByb2Nlc3NvckNvbnRleHQ7XG5cblx0LyoqXG5cdCAqIFRoZSBwYXR0ZXJuIGZvciB0aGUgYmluZGluZyBjb250ZXh0IHRvIGJlIGNyZWF0ZSBiYXNlZCBvbiB0aGUgcGFyYW1ldGVycyBmcm9tIHRoZSBuYXZpZ2F0aW9uXG5cdCAqIElmIG5vdCBwcm92aWRlZCB3ZSdsbCBkZWZhdWx0IHRvIHdoYXQgd2FzIHBhc3NlZCBpbiB0aGUgVVJMXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdGJpbmRpbmdDb250ZXh0UGF0dGVybiE6IHN0cmluZztcblxuXHQvKipcblx0ICogTWFwIG9mIHVzZWQgT0RhdGEgbmF2aWdhdGlvbnMgYW5kIGl0cyByb3V0aW5nIHRhcmdldHNcblx0ICovXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwib2JqZWN0XCIgfSlcblx0bmF2aWdhdGlvbiE6IFJlY29yZDxzdHJpbmcsIE5hdmlnYXRpb25Db25maWd1cmF0aW9uPjtcblxuXHQvKipcblx0ICogRW5oYW5jZSB0aGUgaTE4biBidW5kbGUgdXNlZCBmb3IgdGhpcyBwYWdlIHdpdGggb25lIG9yIG1vcmUgYXBwIHNwZWNpZmljIGkxOG4gcmVzb3VyY2UgYnVuZGxlcyBvciByZXNvdXJjZSBtb2RlbHNcblx0ICogb3IgYSBjb21iaW5hdGlvbiBvZiBib3RoLiBUaGUgbGFzdCByZXNvdXJjZSBidW5kbGUvbW9kZWwgaXMgZ2l2ZW4gaGlnaGVzdCBwcmlvcml0eVxuXHQgKi9cblx0QHByb3BlcnR5KHsgdHlwZTogXCJzdHJpbmdbXVwiIH0pXG5cdGVuaGFuY2VJMThuITogc3RyaW5nW107XG5cblx0LyoqXG5cdCAqIERlZmluZSBjb250cm9sIHJlbGF0ZWQgY29uZmlndXJhdGlvbiBzZXR0aW5nc1xuXHQgKi9cblx0QHByb3BlcnR5KHsgdHlwZTogXCJvYmplY3RcIiB9KVxuXHRjb250cm9sQ29uZmlndXJhdGlvbj86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG5cdC8qKlxuXHQgKiBBZGp1c3RzIHRoZSB0ZW1wbGF0ZSBjb250ZW50XG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcIm9iamVjdFwiIH0pXG5cdGNvbnRlbnQ/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuXHQvKipcblx0ICogV2hldGhlciBvciBub3QgeW91IGNhbiByZWFjaCB0aGlzIHBhZ2UgZGlyZWN0bHkgdGhyb3VnaCBzZW1hbnRpYyBib29rbWFya3Ncblx0ICovXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhblwiIH0pXG5cdGFsbG93RGVlcExpbmtpbmchOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBEZWZpbmVzIHRoZSBjb250ZXh0IHBhdGggb24gdGhlIGNvbXBvbmVudCB0aGF0IGlzIHJlZnJlc2hlZCB3aGVuIHRoZSBhcHAgaXMgcmVzdG9yZWQgdXNpbmcga2VlcCBhbGl2ZSBtb2RlXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcIm9iamVjdFwiIH0pXG5cdHJlZnJlc2hTdHJhdGVneU9uQXBwUmVzdG9yZTogdW5rbm93bjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdHZpZXdUeXBlID0gXCJYTUxcIjtcblxuXHRAcHJvcGVydHkoeyB0eXBlOiBcInN0cmluZ1wiIH0pXG5cdHZpZXdOYW1lPzogc3RyaW5nO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwic3RyaW5nXCIgfSlcblx0X2pzeFZpZXdOYW1lID0gXCJcIjtcblxuXHRAZXZlbnQoKVxuXHRjb250YWluZXJEZWZpbmVkITogRnVuY3Rpb247XG5cblx0QGV2ZW50KClcblx0aGVyb2VzQmF0Y2hSZWNlaXZlZCE6IEZ1bmN0aW9uO1xuXG5cdEBldmVudCgpXG5cdHdvcmtlcnNCYXRjaFJlY2VpdmVkITogRnVuY3Rpb247XG5cblx0cHJvdGVjdGVkIG9BcHBDb21wb25lbnQhOiBBcHBDb21wb25lbnQ7XG5cblx0cHJpdmF0ZSBfcm9vdENvbnRyb2xsZXI/OiBQYWdlQ29udHJvbGxlcjtcblxuXHQvLyBUaGUgaWQgb2YgYSBmcmFnbWVudCBiZWluZyBwcm9jZXNzZWQsIGl0IHdpbGwgdGFrZSBwcmlvcml0eSBpbiB0aGUgSUQgZ2VuZXJhdGlvblxuXHRwcml2YXRlIF90ZW1wb3JhcnlGcmFnbWVudElkPzogc3RyaW5nO1xuXG5cdHNldENvbnRhaW5lcihvQ29udGFpbmVyOiBDb21wb25lbnRDb250YWluZXIpOiB0aGlzIHtcblx0XHRzdXBlci5zZXRDb250YWluZXIob0NvbnRhaW5lcik7XG5cdFx0dGhpcy5maXJlRXZlbnQoXCJjb250YWluZXJEZWZpbmVkXCIsIHsgY29udGFpbmVyOiBvQ29udGFpbmVyIH0pO1xuXHRcdHJldHVybiB0aGlzO1xuXHR9XG5cblx0aW5pdCgpOiB2b2lkIHtcblx0XHR0aGlzLm9BcHBDb21wb25lbnQgPSBDb21tb25VdGlscy5nZXRBcHBDb21wb25lbnQodGhpcyk7XG5cdFx0c3VwZXIuaW5pdCgpO1xuXHR9XG5cblx0Ly8gVGhpcyBtZXRob2QgaXMgY2FsbGVkIGJ5IFVJNSBjb3JlIHRvIGFjY2VzcyB0byB0aGUgY29tcG9uZW50IGNvbnRhaW5pbmcgdGhlIGN1c3RvbWl6aW5nIGNvbmZpZ3VyYXRpb24uXG5cdC8vIGFzIGNvbnRyb2xsZXIgZXh0ZW5zaW9ucyBhcmUgZGVmaW5lZCBpbiB0aGUgbWFuaWZlc3QgZm9yIHRoZSBhcHAgY29tcG9uZW50IGFuZCBub3QgZm9yIHRoZVxuXHQvLyB0ZW1wbGF0ZSBjb21wb25lbnQgd2UgcmV0dXJuIHRoZSBhcHAgY29tcG9uZW50LlxuXHRnZXRFeHRlbnNpb25Db21wb25lbnQoKTogQXBwQ29tcG9uZW50IHtcblx0XHRyZXR1cm4gdGhpcy5vQXBwQ29tcG9uZW50O1xuXHR9XG5cblx0Z2V0QXBwQ29tcG9uZW50KCk6IEFwcENvbXBvbmVudCB7XG5cdFx0cmV0dXJuIHRoaXMub0FwcENvbXBvbmVudDtcblx0fVxuXG5cdHNldFJvb3RDb250cm9sbGVyKGNvbnRyb2xsZXI6IFBhZ2VDb250cm9sbGVyKTogdm9pZCB7XG5cdFx0dGhpcy5fcm9vdENvbnRyb2xsZXIgPSBjb250cm9sbGVyO1xuXHR9XG5cblx0Z2V0Um9vdENvbnRyb2xsZXIoKTogUGFnZUNvbnRyb2xsZXIgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IHJvb3RDb250cm9sOiBWaWV3ID0gdGhpcy5nZXRSb290Q29udHJvbCgpO1xuXHRcdGxldCByb290Q29udHJvbGxlcjogUGFnZUNvbnRyb2xsZXIgfCB1bmRlZmluZWQ7XG5cdFx0aWYgKHJvb3RDb250cm9sICYmIHJvb3RDb250cm9sLmdldENvbnRyb2xsZXIpIHtcblx0XHRcdHJvb3RDb250cm9sbGVyID0gcm9vdENvbnRyb2wuZ2V0Q29udHJvbGxlcigpIGFzIFBhZ2VDb250cm9sbGVyO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyb290Q29udHJvbGxlciA9IHRoaXMuX3Jvb3RDb250cm9sbGVyO1xuXHRcdH1cblx0XHRyZXR1cm4gcm9vdENvbnRyb2xsZXI7XG5cdH1cblxuXHRvblBhZ2VSZWFkeShtUGFyYW1ldGVyczogdW5rbm93bik6IHZvaWQge1xuXHRcdGNvbnN0IHJvb3RDb250cm9sbGVyID0gdGhpcy5nZXRSb290Q29udHJvbGxlcigpO1xuXHRcdGlmIChyb290Q29udHJvbGxlciAmJiByb290Q29udHJvbGxlci5vblBhZ2VSZWFkeSkge1xuXHRcdFx0cm9vdENvbnRyb2xsZXIub25QYWdlUmVhZHkobVBhcmFtZXRlcnMpO1xuXHRcdH1cblx0fVxuXG5cdGdldE5hdmlnYXRpb25Db25maWd1cmF0aW9uKHNUYXJnZXRQYXRoOiBzdHJpbmcpOiBOYXZpZ2F0aW9uQ29uZmlndXJhdGlvbiB7XG5cdFx0Y29uc3QgbU5hdmlnYXRpb24gPSB0aGlzLm5hdmlnYXRpb247XG5cdFx0cmV0dXJuIG1OYXZpZ2F0aW9uW3NUYXJnZXRQYXRoXTtcblx0fVxuXG5cdGdldFZpZXdEYXRhKCk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcblx0XHRjb25zdCBtUHJvcGVydGllcyA9IHRoaXMuZ2V0TWV0YWRhdGEoKS5nZXRBbGxQcm9wZXJ0aWVzKCk7XG5cdFx0Y29uc3Qgb1ZpZXdEYXRhID0gT2JqZWN0LmtleXMobVByb3BlcnRpZXMpLnJlZHVjZSgobVZpZXdEYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgc1Byb3BlcnR5TmFtZTogc3RyaW5nKSA9PiB7XG5cdFx0XHRtVmlld0RhdGFbc1Byb3BlcnR5TmFtZV0gPSBtUHJvcGVydGllc1tzUHJvcGVydHlOYW1lXS5nZXQhKHRoaXMpO1xuXHRcdFx0cmV0dXJuIG1WaWV3RGF0YTtcblx0XHR9LCB7fSk7XG5cdFx0ZGVsZXRlIG9WaWV3RGF0YS5wcmVwcm9jZXNzb3JDb250ZXh0O1xuXHRcdC8vIEFjY2VzcyB0aGUgaW50ZXJuYWwgX2lzRmNsRW5hYmxlZCB3aGljaCB3aWxsIGJlIHRoZXJlXG5cdFx0b1ZpZXdEYXRhLmZjbEVuYWJsZWQgPSB0aGlzLm9BcHBDb21wb25lbnQuX2lzRmNsRW5hYmxlZCgpO1xuXHRcdGNvbnN0IHJvdXRpbmdUYXJnZXROYW1lID0gdGhpcy5vQXBwQ29tcG9uZW50LmdldFJvdXRpbmdTZXJ2aWNlKCkuZ2V0VGFyZ2V0TmFtZSh0aGlzKTtcblx0XHRvVmlld0RhdGEuaXNJbmxpbmVFZGl0RW5hYmxlZCA9IHJvdXRpbmdUYXJnZXROYW1lXG5cdFx0XHQ/IHRoaXMub0FwcENvbXBvbmVudC5nZXRJbmxpbmVFZGl0U2VydmljZSgpLmRvZXNQYWdlSGF2ZUlubGluZUVkaXQocm91dGluZ1RhcmdldE5hbWUpXG5cdFx0XHQ6IGZhbHNlO1xuXG5cdFx0cmV0dXJuIG9WaWV3RGF0YTtcblx0fVxuXG5cdF9nZXRQYWdlVGl0bGVJbmZvcm1hdGlvbigpOiBUaXRsZUluZm9ybWF0aW9uIHtcblx0XHRjb25zdCByb290Q29udHJvbCA9IHRoaXMuZ2V0Um9vdENvbnRyb2woKTtcblx0XHRpZiAocm9vdENvbnRyb2wgJiYgcm9vdENvbnRyb2wuZ2V0Q29udHJvbGxlcigpICYmIHJvb3RDb250cm9sLmdldENvbnRyb2xsZXIoKS5fZ2V0UGFnZVRpdGxlSW5mb3JtYXRpb24pIHtcblx0XHRcdHJldHVybiByb290Q29udHJvbC5nZXRDb250cm9sbGVyKCkuX2dldFBhZ2VUaXRsZUluZm9ybWF0aW9uKCk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJldHVybiB7fSBhcyBUaXRsZUluZm9ybWF0aW9uO1xuXHRcdH1cblx0fVxuXG5cdGdldEV4dGVuc2lvbkFQSSgpOiBFeHRlbnNpb25BUEkge1xuXHRcdHJldHVybiB0aGlzLmdldFJvb3RDb250cm9sKCkuZ2V0Q29udHJvbGxlcigpLmdldEV4dGVuc2lvbkFQSSgpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlcyB0aGUgbWV0YW1vZGVsIGZvciB0aGUgZ2l2ZW4gbWV0YW1vZGVsIHJlZmVyZW5jZSAoSUQgLyBuYW1lIG9yIHVuZGVmaW5lZCBmb3IgdGhlIGRlZmF1bHQgb25lKS5cblx0ICogQHBhcmFtIG1ldGFNb2RlbFJlZmVyZW5jZSBUaGUgbWV0YW1vZGVsIHJlZmVyZW5jZVxuXHQgKiBAcmV0dXJucyBUaGUgY29ycmVjdCBtZXRhbW9kZWwgaWYgaXQgZXhpdHNcblx0ICovXG5cdGdldE1ldGFNb2RlbChtZXRhTW9kZWxSZWZlcmVuY2U/OiBzdHJpbmcpOiBPRGF0YU1ldGFNb2RlbCB8IHVuZGVmaW5lZCB7XG5cdFx0aWYgKCFtZXRhTW9kZWxSZWZlcmVuY2UpIHtcblx0XHRcdHJldHVybiB0aGlzLnByZXByb2Nlc3NvckNvbnRleHQ/Lm1vZGVscy5tZXRhTW9kZWwgYXMgT0RhdGFNZXRhTW9kZWwgfCB1bmRlZmluZWQ7XG5cdFx0fSBlbHNlIGlmIChtZXRhTW9kZWxSZWZlcmVuY2Uuc3RhcnRzV2l0aChcImlkLVwiKSkge1xuXHRcdFx0cmV0dXJuIGdldE1ldGFNb2RlbEJ5SWQobWV0YU1vZGVsUmVmZXJlbmNlKTtcblx0XHR9IGVsc2UgaWYgKCF0aGlzLmdldE1vZGVsKG1ldGFNb2RlbFJlZmVyZW5jZSkpIHtcblx0XHRcdHJldHVybiB0aGlzLmdldEFwcENvbXBvbmVudCgpLmdldE1vZGVsKG1ldGFNb2RlbFJlZmVyZW5jZSk/LmdldE1ldGFNb2RlbCgpIGFzIE9EYXRhTWV0YU1vZGVsIHwgdW5kZWZpbmVkO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5nZXRNb2RlbChtZXRhTW9kZWxSZWZlcmVuY2UpPy5nZXRNZXRhTW9kZWwoKSBhcyBPRGF0YU1ldGFNb2RlbCB8IHVuZGVmaW5lZDtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmVzIHRoZSBmdWxsIGNvbnRleHQgcGF0aCBmb3IgdGhlIGdpdmVuIG1ldGFtb2RlbCByZWZlcmVuY2UgKElEIC8gbmFtZSBvciB1bmRlZmluZWQgZm9yIHRoZSBkZWZhdWx0IG9uZSkuXG5cdCAqIEBwYXJhbSBtZXRhTW9kZWxSZWZlcmVuY2UgVGhlIG1ldGFtb2RlbCByZWZlcmVuY2Vcblx0ICogQHJldHVybnMgVGhlIGNvcnJlY3QgZnVsbCBjb250ZXh0IHBhdGhcblx0ICovXG5cdGdldEZ1bGxDb250ZXh0UGF0aChtZXRhTW9kZWxSZWZlcmVuY2U6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG5cdFx0aWYgKCFtZXRhTW9kZWxSZWZlcmVuY2UpIHtcblx0XHRcdHJldHVybiB0aGlzLnByZXByb2Nlc3NvckNvbnRleHQ/LmZ1bGxDb250ZXh0UGF0aDtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmVzIHRoZSBNYW5pZmVzdFdyYXBwZXIgZm9yIHRoZSBjdXJyZW50IHZpZXcuXG5cdCAqIEByZXR1cm5zIFRoZSBNYW5pZmVzdFdyYXBwZXJcblx0ICovXG5cdGdldE1hbmlmZXN0V3JhcHBlcigpOiBNYW5pZmVzdFdyYXBwZXIge1xuXHRcdHJldHVybiBuZXcgTWFuaWZlc3RXcmFwcGVyKHRoaXMuZ2V0Vmlld0RhdGEoKSBhcyBCYXNlTWFuaWZlc3RTZXR0aW5ncywgbWVyZ2UpO1xuXHR9XG59XG5pbnRlcmZhY2UgVGVtcGxhdGVDb21wb25lbnQge1xuXHQvLyBUT0RPOiB0aGlzIHNob3VsZCBiZSBpZGVhbGx5IGJlIGhhbmRsZWQgYnkgdGhlIGVkaXRmbG93L3JvdXRpbmcgd2l0aG91dCB0aGUgbmVlZCB0byBoYXZlIHRoaXMgbWV0aG9kIGluIHRoZSBvYmplY3QgcGFnZSAtIGZvciBub3cga2VlcCBpdCBoZXJlXG5cdGNyZWF0ZURlZmVycmVkQ29udGV4dD8oXG5cdFx0c1BhdGg6IHN0cmluZyxcblx0XHRvTGlzdEJpbmRpbmc6IE9EYXRhTGlzdEJpbmRpbmcgfCB1bmRlZmluZWQsXG5cdFx0cGFyZW50Q29udGV4dDogQ29udGV4dCB8IHVuZGVmaW5lZCxcblx0XHRkYXRhOiBvYmplY3QgfCB1bmRlZmluZWQsXG5cdFx0YkFjdGlvbkNyZWF0ZTogYm9vbGVhblxuXHQpOiB2b2lkO1xuXHRpc09wZW5JbkVkaXRNb2RlKCk6IGJvb2xlYW47XG5cdGdldFJvb3RDb250cm9sKCk6IHsgZ2V0Q29udHJvbGxlcigpOiBQYWdlQ29udHJvbGxlciB9ICYgVmlldztcblx0ZXh0ZW5kUGFnZURlZmluaXRpb24/KHBhZ2VEZWZpbml0aW9uOiB7fSwgY29udmVydGVyQ29udGV4dD86IENvbnZlcnRlckNvbnRleHQpOiB7fTtcblx0Z2V0TW9kZWwoKTogT0RhdGFNb2RlbDtcblx0Z2V0TW9kZWwobW9kZWxOYW1lOiBcIl9wYWdlTW9kZWxcIik6IEpTT05Nb2RlbDtcblx0Z2V0TW9kZWwobW9kZWxOYW1lOiBzdHJpbmcpOiBNb2RlbCB8IHVuZGVmaW5lZDtcbn1cbmV4cG9ydCBkZWZhdWx0IFRlbXBsYXRlQ29tcG9uZW50O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFzRE1BLGlCQUFpQixJQUFBQyxJQUFBLEdBRHRCQyxjQUFjLENBQUMsK0JBQStCLENBQUMsRUFBQUMsS0FBQSxHQUU5Q0Msa0JBQWtCLENBQUMsbUNBQW1DLENBQUMsRUFBQUMsS0FBQSxHQUd2REQsa0JBQWtCLENBQUMseURBQXlELENBQUMsRUFBQUUsS0FBQSxHQU03RUMsUUFBUSxDQUFDO0lBQUVDLElBQUksRUFBRSxRQUFRO0lBQUVDLFlBQVksRUFBRTtFQUFLLENBQUMsQ0FBQyxFQUFBQyxLQUFBLEdBTWhESCxRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFLFFBQVE7SUFBRUMsWUFBWSxFQUFFO0VBQUssQ0FBQyxDQUFDLEVBQUFFLEtBQUEsR0FHaERKLFFBQVEsQ0FBQztJQUFFQyxJQUFJLEVBQUU7RUFBUyxDQUFDLENBQUMsRUFBQUksS0FBQSxHQU81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
@@ -1,11 +1,15 @@
1
1
  import type { ConvertedMetadata } from "@sap-ux/vocabularies-types";
2
+ import merge from "sap/base/util/merge";
2
3
  import { defineUI5Class, event, implementInterface, property } from "sap/fe/base/ClassSupport";
3
4
  import type AppComponent from "sap/fe/core/AppComponent";
4
5
  import CommonUtils from "sap/fe/core/CommonUtils";
5
6
  import type ExtensionAPI from "sap/fe/core/ExtensionAPI";
6
7
  import type PageController from "sap/fe/core/PageController";
8
+ import type { IBuildingBlockOwnerComponent } from "sap/fe/core/buildingBlocks/IBuildingBlockOwnerComponent";
7
9
  import type ConverterContext from "sap/fe/core/converters/ConverterContext";
8
10
  import type { NavigationTargetConfiguration } from "sap/fe/core/converters/ManifestSettings";
11
+ import { type BaseManifestSettings } from "sap/fe/core/converters/ManifestSettings";
12
+ import ManifestWrapper from "sap/fe/core/converters/ManifestWrapper";
9
13
  import { getMetaModelById } from "sap/fe/core/converters/MetaModelConverter";
10
14
  import type { DefinitionContext, DefinitionPage } from "sap/fe/core/definition/FEDefinition";
11
15
  import type { TitleInformation } from "sap/fe/core/rootView/RootViewBaseController";
@@ -48,10 +52,13 @@ export type XMLPreprocessorContext = {
48
52
  };
49
53
 
50
54
  @defineUI5Class("sap.fe.core.TemplateComponent")
51
- class TemplateComponent extends UIComponent implements IAsyncContentCreation {
55
+ class TemplateComponent extends UIComponent implements IAsyncContentCreation, IBuildingBlockOwnerComponent {
52
56
  @implementInterface("sap.ui.core.IAsyncContentCreation")
53
57
  __implements__sap_ui_core_IAsyncContentCreation = true;
54
58
 
59
+ @implementInterface("sap.fe.core.buildingBlocks.IBuildingBlockOwnerComponent")
60
+ __implements__sap_fe_core_buildingBlocks_IBuildingBlockOwnerComponent = true;
61
+
55
62
  /**
56
63
  * Name of the OData entity set
57
64
  */
@@ -194,6 +201,10 @@ class TemplateComponent extends UIComponent implements IAsyncContentCreation {
194
201
  delete oViewData.preprocessorContext;
195
202
  // Access the internal _isFclEnabled which will be there
196
203
  oViewData.fclEnabled = this.oAppComponent._isFclEnabled();
204
+ const routingTargetName = this.oAppComponent.getRoutingService().getTargetName(this);
205
+ oViewData.isInlineEditEnabled = routingTargetName
206
+ ? this.oAppComponent.getInlineEditService().doesPageHaveInlineEdit(routingTargetName)
207
+ : false;
197
208
 
198
209
  return oViewData;
199
210
  }
@@ -238,6 +249,14 @@ class TemplateComponent extends UIComponent implements IAsyncContentCreation {
238
249
  return this.preprocessorContext?.fullContextPath;
239
250
  }
240
251
  }
252
+
253
+ /**
254
+ * Retrieves the ManifestWrapper for the current view.
255
+ * @returns The ManifestWrapper
256
+ */
257
+ getManifestWrapper(): ManifestWrapper {
258
+ return new ManifestWrapper(this.getViewData() as BaseManifestSettings, merge);
259
+ }
241
260
  }
242
261
  interface TemplateComponent {
243
262
  // TODO: this should be ideally be handled by the editflow/routing without the need to have this method in the object page - for now keep it here
@@ -12,7 +12,6 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/ui/base/Object", "sap/ui/model/j
12
12
  function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
13
13
  // We are overriding internal from the JSONModel so this makes sense
14
14
  let TemplateModel = (_dec = defineUI5Class("sap.fe.core.TemplateModel"), _dec(_class = /*#__PURE__*/function (_BaseObject) {
15
- _inheritsLoose(TemplateModel, _BaseObject);
16
15
  function TemplateModel(pageConfig, oMetaModel) {
17
16
  var _this;
18
17
  _this = _BaseObject.call(this) || this;
@@ -22,7 +21,7 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/ui/base/Object", "sap/ui/model/j
22
21
  _this.oConfigModel.setSizeLimit(Number.MAX_VALUE);
23
22
  _this.bConfigLoaded = false;
24
23
  // eslint-disable-next-line @typescript-eslint/no-this-alias
25
- const that = _assertThisInitialized(_this);
24
+ const that = _this;
26
25
  if (typeof pageConfig === "function") {
27
26
  const fnGetObject = _this.oConfigModel._getObject.bind(_this.oConfigModel);
28
27
  _this.oConfigModel._getObject = function (sPath, oContext) {
@@ -37,8 +36,8 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/ui/base/Object", "sap/ui/model/j
37
36
  _this.fnCreateMetaBindingContext = _this.oMetaModel.createBindingContext.bind(_this.oMetaModel);
38
37
  _this.fnCreateConfigBindingContext = _this.oConfigModel.createBindingContext.bind(_this.oConfigModel);
39
38
  _this.fnSetData = _this.oConfigModel.setData.bind(_this.oConfigModel);
40
- _this.oConfigModel.createBindingContext = _this.createBindingContext.bind(_assertThisInitialized(_this));
41
- _this.oConfigModel.setData = _this.setData.bind(_assertThisInitialized(_this));
39
+ _this.oConfigModel.createBindingContext = _this.createBindingContext.bind(_this);
40
+ _this.oConfigModel.setData = _this.setData.bind(_this);
42
41
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
43
42
  // @ts-ignore
44
43
  return _this.oConfigModel || _assertThisInitialized(_this);
@@ -48,17 +47,17 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/ui/base/Object", "sap/ui/model/j
48
47
  * Overwrite the standard setData to keep track whether the external configuration has been loaded or not.
49
48
  * @param dataToSet The data to set to the json model containing the configuration
50
49
  */
50
+ _inheritsLoose(TemplateModel, _BaseObject);
51
51
  var _proto = TemplateModel.prototype;
52
52
  _proto.setData = function setData(dataToSet) {
53
53
  this.fnSetData(dataToSet);
54
54
  this.bConfigLoaded = true;
55
55
  };
56
56
  _proto.createBindingContext = function createBindingContext(sPath, oContext, mParameters, fnCallBack) {
57
- var _oBindingContext;
58
57
  let oBindingContext;
59
58
  const bNoResolve = mParameters && mParameters.noResolve;
60
59
  oBindingContext = this.fnCreateConfigBindingContext(sPath, oContext, mParameters, fnCallBack);
61
- const sResolvedPath = !bNoResolve && ((_oBindingContext = oBindingContext) === null || _oBindingContext === void 0 ? void 0 : _oBindingContext.getObject());
60
+ const sResolvedPath = !bNoResolve && oBindingContext?.getObject();
62
61
  if (sResolvedPath && typeof sResolvedPath === "string") {
63
62
  oBindingContext = this.fnCreateMetaBindingContext(sResolvedPath, oContext, mParameters, fnCallBack);
64
63
  }
@@ -72,4 +71,4 @@ sap.ui.define(["sap/fe/base/ClassSupport", "sap/ui/base/Object", "sap/ui/model/j
72
71
  }(BaseObject)) || _class);
73
72
  return TemplateModel;
74
73
  }, false);
75
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUZW1wbGF0ZU1vZGVsIiwiX2RlYyIsImRlZmluZVVJNUNsYXNzIiwiX2NsYXNzIiwiX0Jhc2VPYmplY3QiLCJfaW5oZXJpdHNMb29zZSIsInBhZ2VDb25maWciLCJvTWV0YU1vZGVsIiwiX3RoaXMiLCJjYWxsIiwib0NvbmZpZ01vZGVsIiwiSlNPTk1vZGVsIiwic2V0U2l6ZUxpbWl0IiwiTnVtYmVyIiwiTUFYX1ZBTFVFIiwiYkNvbmZpZ0xvYWRlZCIsInRoYXQiLCJfYXNzZXJ0VGhpc0luaXRpYWxpemVkIiwiZm5HZXRPYmplY3QiLCJfZ2V0T2JqZWN0IiwiYmluZCIsInNQYXRoIiwib0NvbnRleHQiLCJzZXREYXRhIiwiZm5DcmVhdGVNZXRhQmluZGluZ0NvbnRleHQiLCJjcmVhdGVCaW5kaW5nQ29udGV4dCIsImZuQ3JlYXRlQ29uZmlnQmluZGluZ0NvbnRleHQiLCJmblNldERhdGEiLCJfcHJvdG8iLCJwcm90b3R5cGUiLCJkYXRhVG9TZXQiLCJtUGFyYW1ldGVycyIsImZuQ2FsbEJhY2siLCJfb0JpbmRpbmdDb250ZXh0Iiwib0JpbmRpbmdDb250ZXh0IiwiYk5vUmVzb2x2ZSIsIm5vUmVzb2x2ZSIsInNSZXNvbHZlZFBhdGgiLCJnZXRPYmplY3QiLCJkZXN0cm95IiwiYXBwbHkiLCJCYXNlT2JqZWN0Il0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJUZW1wbGF0ZU1vZGVsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlZmluZVVJNUNsYXNzIH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IEJhc2VPYmplY3QgZnJvbSBcInNhcC91aS9iYXNlL09iamVjdFwiO1xuaW1wb3J0IHR5cGUgQ29udGV4dCBmcm9tIFwic2FwL3VpL21vZGVsL0NvbnRleHRcIjtcbmltcG9ydCBKU09OTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9qc29uL0pTT05Nb2RlbFwiO1xuaW1wb3J0IHR5cGUgT0RhdGFNZXRhTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9PRGF0YU1ldGFNb2RlbFwiO1xuXG4vLyBXZSBhcmUgb3ZlcnJpZGluZyBpbnRlcm5hbCBmcm9tIHRoZSBKU09OTW9kZWwgc28gdGhpcyBtYWtlcyBzZW5zZVxudHlwZSBJbnRlcm5hbEpTT05Nb2RlbCA9IEpTT05Nb2RlbCAmIHtcblx0X2dldE9iamVjdChzUGF0aDogc3RyaW5nLCBvQ29udGV4dD86IENvbnRleHQpOiBvYmplY3Q7XG59O1xuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLmNvcmUuVGVtcGxhdGVNb2RlbFwiKVxuY2xhc3MgVGVtcGxhdGVNb2RlbCBleHRlbmRzIEJhc2VPYmplY3Qge1xuXHRwdWJsaWMgb01ldGFNb2RlbDogT0RhdGFNZXRhTW9kZWw7XG5cblx0cHVibGljIG9Db25maWdNb2RlbDogSlNPTk1vZGVsO1xuXG5cdHB1YmxpYyBiQ29uZmlnTG9hZGVkOiBib29sZWFuO1xuXG5cdHB1YmxpYyBmbkNyZWF0ZU1ldGFCaW5kaW5nQ29udGV4dDogRnVuY3Rpb247XG5cblx0cHVibGljIGZuQ3JlYXRlQ29uZmlnQmluZGluZ0NvbnRleHQ6IEZ1bmN0aW9uO1xuXG5cdHB1YmxpYyBmblNldERhdGE6IEZ1bmN0aW9uO1xuXG5cdGNvbnN0cnVjdG9yKHBhZ2VDb25maWc6IEZ1bmN0aW9uIHwgb2JqZWN0LCBvTWV0YU1vZGVsOiBPRGF0YU1ldGFNb2RlbCkge1xuXHRcdHN1cGVyKCk7XG5cdFx0dGhpcy5vTWV0YU1vZGVsID0gb01ldGFNb2RlbDtcblx0XHR0aGlzLm9Db25maWdNb2RlbCA9IG5ldyBKU09OTW9kZWwoKTtcblx0XHQvLyBkb24ndCBsaW1pdCBhZ2dyZWdhdGlvbiBiaW5kaW5nc1xuXHRcdHRoaXMub0NvbmZpZ01vZGVsLnNldFNpemVMaW1pdChOdW1iZXIuTUFYX1ZBTFVFKTtcblx0XHR0aGlzLmJDb25maWdMb2FkZWQgPSBmYWxzZTtcblx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXRoaXMtYWxpYXNcblx0XHRjb25zdCB0aGF0ID0gdGhpcztcblxuXHRcdGlmICh0eXBlb2YgcGFnZUNvbmZpZyA9PT0gXCJmdW5jdGlvblwiKSB7XG5cdFx0XHRjb25zdCBmbkdldE9iamVjdCA9ICh0aGlzLm9Db25maWdNb2RlbCBhcyBJbnRlcm5hbEpTT05Nb2RlbCkuX2dldE9iamVjdC5iaW5kKHRoaXMub0NvbmZpZ01vZGVsKTtcblx0XHRcdCh0aGlzLm9Db25maWdNb2RlbCBhcyBJbnRlcm5hbEpTT05Nb2RlbCkuX2dldE9iamVjdCA9IGZ1bmN0aW9uIChzUGF0aDogc3RyaW5nLCBvQ29udGV4dDogQ29udGV4dCk6IE9iamVjdCB7XG5cdFx0XHRcdGlmICghdGhhdC5iQ29uZmlnTG9hZGVkKSB7XG5cdFx0XHRcdFx0dGhpcy5zZXREYXRhKHBhZ2VDb25maWcoKSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIGZuR2V0T2JqZWN0KHNQYXRoLCBvQ29udGV4dCk7XG5cdFx0XHR9O1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLm9Db25maWdNb2RlbC5zZXREYXRhKHBhZ2VDb25maWcpO1xuXHRcdH1cblxuXHRcdHRoaXMuZm5DcmVhdGVNZXRhQmluZGluZ0NvbnRleHQgPSB0aGlzLm9NZXRhTW9kZWwuY3JlYXRlQmluZGluZ0NvbnRleHQuYmluZCh0aGlzLm9NZXRhTW9kZWwpO1xuXHRcdHRoaXMuZm5DcmVhdGVDb25maWdCaW5kaW5nQ29udGV4dCA9IHRoaXMub0NvbmZpZ01vZGVsLmNyZWF0ZUJpbmRpbmdDb250ZXh0LmJpbmQodGhpcy5vQ29uZmlnTW9kZWwpO1xuXHRcdHRoaXMuZm5TZXREYXRhID0gdGhpcy5vQ29uZmlnTW9kZWwuc2V0RGF0YS5iaW5kKHRoaXMub0NvbmZpZ01vZGVsKTtcblxuXHRcdHRoaXMub0NvbmZpZ01vZGVsLmNyZWF0ZUJpbmRpbmdDb250ZXh0ID0gdGhpcy5jcmVhdGVCaW5kaW5nQ29udGV4dC5iaW5kKHRoaXMpO1xuXHRcdHRoaXMub0NvbmZpZ01vZGVsLnNldERhdGEgPSB0aGlzLnNldERhdGEuYmluZCh0aGlzKTtcblx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10cy1jb21tZW50XG5cdFx0Ly8gQHRzLWlnbm9yZVxuXHRcdHJldHVybiB0aGlzLm9Db25maWdNb2RlbDtcblx0fVxuXG5cdC8qKlxuXHQgKiBPdmVyd3JpdGUgdGhlIHN0YW5kYXJkIHNldERhdGEgdG8ga2VlcCB0cmFjayB3aGV0aGVyIHRoZSBleHRlcm5hbCBjb25maWd1cmF0aW9uIGhhcyBiZWVuIGxvYWRlZCBvciBub3QuXG5cdCAqIEBwYXJhbSBkYXRhVG9TZXQgVGhlIGRhdGEgdG8gc2V0IHRvIHRoZSBqc29uIG1vZGVsIGNvbnRhaW5pbmcgdGhlIGNvbmZpZ3VyYXRpb25cblx0ICovXG5cdHNldERhdGEoZGF0YVRvU2V0OiBvYmplY3QpOiB2b2lkIHtcblx0XHR0aGlzLmZuU2V0RGF0YShkYXRhVG9TZXQpO1xuXHRcdHRoaXMuYkNvbmZpZ0xvYWRlZCA9IHRydWU7XG5cdH1cblxuXHRjcmVhdGVCaW5kaW5nQ29udGV4dChzUGF0aDogc3RyaW5nLCBvQ29udGV4dD86IENvbnRleHQsIG1QYXJhbWV0ZXJzPzogeyBub1Jlc29sdmU/OiBib29sZWFuIH0sIGZuQ2FsbEJhY2s/OiBGdW5jdGlvbik6IENvbnRleHQge1xuXHRcdGxldCBvQmluZGluZ0NvbnRleHQ7XG5cdFx0Y29uc3QgYk5vUmVzb2x2ZSA9IG1QYXJhbWV0ZXJzICYmIG1QYXJhbWV0ZXJzLm5vUmVzb2x2ZTtcblxuXHRcdG9CaW5kaW5nQ29udGV4dCA9IHRoaXMuZm5DcmVhdGVDb25maWdCaW5kaW5nQ29udGV4dChzUGF0aCwgb0NvbnRleHQsIG1QYXJhbWV0ZXJzLCBmbkNhbGxCYWNrKTtcblx0XHRjb25zdCBzUmVzb2x2ZWRQYXRoID0gIWJOb1Jlc29sdmUgJiYgb0JpbmRpbmdDb250ZXh0Py5nZXRPYmplY3QoKTtcblx0XHRpZiAoc1Jlc29sdmVkUGF0aCAmJiB0eXBlb2Ygc1Jlc29sdmVkUGF0aCA9PT0gXCJzdHJpbmdcIikge1xuXHRcdFx0b0JpbmRpbmdDb250ZXh0ID0gdGhpcy5mbkNyZWF0ZU1ldGFCaW5kaW5nQ29udGV4dChzUmVzb2x2ZWRQYXRoLCBvQ29udGV4dCwgbVBhcmFtZXRlcnMsIGZuQ2FsbEJhY2spO1xuXHRcdH1cblxuXHRcdHJldHVybiBvQmluZGluZ0NvbnRleHQ7XG5cdH1cblxuXHRkZXN0cm95KCk6IHZvaWQge1xuXHRcdHRoaXMub0NvbmZpZ01vZGVsLmRlc3Ryb3koKTtcblx0XHRKU09OTW9kZWwucHJvdG90eXBlLmRlc3Ryb3kuYXBwbHkodGhpcyk7XG5cdH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgVGVtcGxhdGVNb2RlbDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0VBTUE7RUFBQSxJQUtNQSxhQUFhLElBQUFDLElBQUEsR0FEbEJDLGNBQWMsQ0FBQywyQkFBMkIsQ0FBQyxFQUFBRCxJQUFBLENBQUFFLE1BQUEsMEJBQUFDLFdBQUE7SUFBQUMsY0FBQSxDQUFBTCxhQUFBLEVBQUFJLFdBQUE7SUFjM0MsU0FBQUosY0FBWU0sVUFBNkIsRUFBRUMsVUFBMEIsRUFBRTtNQUFBLElBQUFDLEtBQUE7TUFDdEVBLEtBQUEsR0FBQUosV0FBQSxDQUFBSyxJQUFBLEtBQU0sQ0FBQztNQUNQRCxLQUFBLENBQUtELFVBQVUsR0FBR0EsVUFBVTtNQUM1QkMsS0FBQSxDQUFLRSxZQUFZLEdBQUcsSUFBSUMsU0FBUyxDQUFDLENBQUM7TUFDbkM7TUFDQUgsS0FBQSxDQUFLRSxZQUFZLENBQUNFLFlBQVksQ0FBQ0MsTUFBTSxDQUFDQyxTQUFTLENBQUM7TUFDaEROLEtBQUEsQ0FBS08sYUFBYSxHQUFHLEtBQUs7TUFDMUI7TUFDQSxNQUFNQyxJQUFJLEdBQUFDLHNCQUFBLENBQUFULEtBQUEsQ0FBTztNQUVqQixJQUFJLE9BQU9GLFVBQVUsS0FBSyxVQUFVLEVBQUU7UUFDckMsTUFBTVksV0FBVyxHQUFJVixLQUFB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
74
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUZW1wbGF0ZU1vZGVsIiwiX2RlYyIsImRlZmluZVVJNUNsYXNzIiwiX2NsYXNzIiwiX0Jhc2VPYmplY3QiLCJwYWdlQ29uZmlnIiwib01ldGFNb2RlbCIsIl90aGlzIiwiY2FsbCIsIm9Db25maWdNb2RlbCIsIkpTT05Nb2RlbCIsInNldFNpemVMaW1pdCIsIk51bWJlciIsIk1BWF9WQUxVRSIsImJDb25maWdMb2FkZWQiLCJ0aGF0IiwiZm5HZXRPYmplY3QiLCJfZ2V0T2JqZWN0IiwiYmluZCIsInNQYXRoIiwib0NvbnRleHQiLCJzZXREYXRhIiwiZm5DcmVhdGVNZXRhQmluZGluZ0NvbnRleHQiLCJjcmVhdGVCaW5kaW5nQ29udGV4dCIsImZuQ3JlYXRlQ29uZmlnQmluZGluZ0NvbnRleHQiLCJmblNldERhdGEiLCJfYXNzZXJ0VGhpc0luaXRpYWxpemVkIiwiX2luaGVyaXRzTG9vc2UiLCJfcHJvdG8iLCJwcm90b3R5cGUiLCJkYXRhVG9TZXQiLCJtUGFyYW1ldGVycyIsImZuQ2FsbEJhY2siLCJvQmluZGluZ0NvbnRleHQiLCJiTm9SZXNvbHZlIiwibm9SZXNvbHZlIiwic1Jlc29sdmVkUGF0aCIsImdldE9iamVjdCIsImRlc3Ryb3kiLCJhcHBseSIsIkJhc2VPYmplY3QiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIlRlbXBsYXRlTW9kZWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGVmaW5lVUk1Q2xhc3MgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgQmFzZU9iamVjdCBmcm9tIFwic2FwL3VpL2Jhc2UvT2JqZWN0XCI7XG5pbXBvcnQgdHlwZSBDb250ZXh0IGZyb20gXCJzYXAvdWkvbW9kZWwvQ29udGV4dFwiO1xuaW1wb3J0IEpTT05Nb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL2pzb24vSlNPTk1vZGVsXCI7XG5pbXBvcnQgdHlwZSBPRGF0YU1ldGFNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L09EYXRhTWV0YU1vZGVsXCI7XG5cbi8vIFdlIGFyZSBvdmVycmlkaW5nIGludGVybmFsIGZyb20gdGhlIEpTT05Nb2RlbCBzbyB0aGlzIG1ha2VzIHNlbnNlXG50eXBlIEludGVybmFsSlNPTk1vZGVsID0gSlNPTk1vZGVsICYge1xuXHRfZ2V0T2JqZWN0KHNQYXRoOiBzdHJpbmcsIG9Db250ZXh0PzogQ29udGV4dCk6IG9iamVjdDtcbn07XG5AZGVmaW5lVUk1Q2xhc3MoXCJzYXAuZmUuY29yZS5UZW1wbGF0ZU1vZGVsXCIpXG5jbGFzcyBUZW1wbGF0ZU1vZGVsIGV4dGVuZHMgQmFzZU9iamVjdCB7XG5cdHB1YmxpYyBvTWV0YU1vZGVsOiBPRGF0YU1ldGFNb2RlbDtcblxuXHRwdWJsaWMgb0NvbmZpZ01vZGVsOiBKU09OTW9kZWw7XG5cblx0cHVibGljIGJDb25maWdMb2FkZWQ6IGJvb2xlYW47XG5cblx0cHVibGljIGZuQ3JlYXRlTWV0YUJpbmRpbmdDb250ZXh0OiBGdW5jdGlvbjtcblxuXHRwdWJsaWMgZm5DcmVhdGVDb25maWdCaW5kaW5nQ29udGV4dDogRnVuY3Rpb247XG5cblx0cHVibGljIGZuU2V0RGF0YTogRnVuY3Rpb247XG5cblx0Y29uc3RydWN0b3IocGFnZUNvbmZpZzogRnVuY3Rpb24gfCBvYmplY3QsIG9NZXRhTW9kZWw6IE9EYXRhTWV0YU1vZGVsKSB7XG5cdFx0c3VwZXIoKTtcblx0XHR0aGlzLm9NZXRhTW9kZWwgPSBvTWV0YU1vZGVsO1xuXHRcdHRoaXMub0NvbmZpZ01vZGVsID0gbmV3IEpTT05Nb2RlbCgpO1xuXHRcdC8vIGRvbid0IGxpbWl0IGFnZ3JlZ2F0aW9uIGJpbmRpbmdzXG5cdFx0dGhpcy5vQ29uZmlnTW9kZWwuc2V0U2l6ZUxpbWl0KE51bWJlci5NQVhfVkFMVUUpO1xuXHRcdHRoaXMuYkNvbmZpZ0xvYWRlZCA9IGZhbHNlO1xuXHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdGhpcy1hbGlhc1xuXHRcdGNvbnN0IHRoYXQgPSB0aGlzO1xuXG5cdFx0aWYgKHR5cGVvZiBwYWdlQ29uZmlnID09PSBcImZ1bmN0aW9uXCIpIHtcblx0XHRcdGNvbnN0IGZuR2V0T2JqZWN0ID0gKHRoaXMub0NvbmZpZ01vZGVsIGFzIEludGVybmFsSlNPTk1vZGVsKS5fZ2V0T2JqZWN0LmJpbmQodGhpcy5vQ29uZmlnTW9kZWwpO1xuXHRcdFx0KHRoaXMub0NvbmZpZ01vZGVsIGFzIEludGVybmFsSlNPTk1vZGVsKS5fZ2V0T2JqZWN0ID0gZnVuY3Rpb24gKHNQYXRoOiBzdHJpbmcsIG9Db250ZXh0OiBDb250ZXh0KTogT2JqZWN0IHtcblx0XHRcdFx0aWYgKCF0aGF0LmJDb25maWdMb2FkZWQpIHtcblx0XHRcdFx0XHR0aGlzLnNldERhdGEocGFnZUNvbmZpZygpKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gZm5HZXRPYmplY3Qoc1BhdGgsIG9Db250ZXh0KTtcblx0XHRcdH07XG5cdFx0fSBlbHNlIHtcblx0XHRcdHRoaXMub0NvbmZpZ01vZGVsLnNldERhdGEocGFnZUNvbmZpZyk7XG5cdFx0fVxuXG5cdFx0dGhpcy5mbkNyZWF0ZU1ldGFCaW5kaW5nQ29udGV4dCA9IHRoaXMub01ldGFNb2RlbC5jcmVhdGVCaW5kaW5nQ29udGV4dC5iaW5kKHRoaXMub01ldGFNb2RlbCk7XG5cdFx0dGhpcy5mbkNyZWF0ZUNvbmZpZ0JpbmRpbmdDb250ZXh0ID0gdGhpcy5vQ29uZmlnTW9kZWwuY3JlYXRlQmluZGluZ0NvbnRleHQuYmluZCh0aGlzLm9Db25maWdNb2RlbCk7XG5cdFx0dGhpcy5mblNldERhdGEgPSB0aGlzLm9Db25maWdNb2RlbC5zZXREYXRhLmJpbmQodGhpcy5vQ29uZmlnTW9kZWwpO1xuXG5cdFx0dGhpcy5vQ29uZmlnTW9kZWwuY3JlYXRlQmluZGluZ0NvbnRleHQgPSB0aGlzLmNyZWF0ZUJpbmRpbmdDb250ZXh0LmJpbmQodGhpcyk7XG5cdFx0dGhpcy5vQ29uZmlnTW9kZWwuc2V0RGF0YSA9IHRoaXMuc2V0RGF0YS5iaW5kKHRoaXMpO1xuXHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWNvbW1lbnRcblx0XHQvLyBAdHMtaWdub3JlXG5cdFx0cmV0dXJuIHRoaXMub0NvbmZpZ01vZGVsO1xuXHR9XG5cblx0LyoqXG5cdCAqIE92ZXJ3cml0ZSB0aGUgc3RhbmRhcmQgc2V0RGF0YSB0byBrZWVwIHRyYWNrIHdoZXRoZXIgdGhlIGV4dGVybmFsIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gbG9hZGVkIG9yIG5vdC5cblx0ICogQHBhcmFtIGRhdGFUb1NldCBUaGUgZGF0YSB0byBzZXQgdG8gdGhlIGpzb24gbW9kZWwgY29udGFpbmluZyB0aGUgY29uZmlndXJhdGlvblxuXHQgKi9cblx0c2V0RGF0YShkYXRhVG9TZXQ6IG9iamVjdCk6IHZvaWQge1xuXHRcdHRoaXMuZm5TZXREYXRhKGRhdGFUb1NldCk7XG5cdFx0dGhpcy5iQ29uZmlnTG9hZGVkID0gdHJ1ZTtcblx0fVxuXG5cdGNyZWF0ZUJpbmRpbmdDb250ZXh0KHNQYXRoOiBzdHJpbmcsIG9Db250ZXh0PzogQ29udGV4dCwgbVBhcmFtZXRlcnM/OiB7IG5vUmVzb2x2ZT86IGJvb2xlYW4gfSwgZm5DYWxsQmFjaz86IEZ1bmN0aW9uKTogQ29udGV4dCB7XG5cdFx0bGV0IG9CaW5kaW5nQ29udGV4dDtcblx0XHRjb25zdCBiTm9SZXNvbHZlID0gbVBhcmFtZXRlcnMgJiYgbVBhcmFtZXRlcnMubm9SZXNvbHZlO1xuXG5cdFx0b0JpbmRpbmdDb250ZXh0ID0gdGhpcy5mbkNyZWF0ZUNvbmZpZ0JpbmRpbmdDb250ZXh0KHNQYXRoLCBvQ29udGV4dCwgbVBhcmFtZXRlcnMsIGZuQ2FsbEJhY2spO1xuXHRcdGNvbnN0IHNSZXNvbHZlZFBhdGggPSAhYk5vUmVzb2x2ZSAmJiBvQmluZGluZ0NvbnRleHQ/LmdldE9iamVjdCgpO1xuXHRcdGlmIChzUmVzb2x2ZWRQYXRoICYmIHR5cGVvZiBzUmVzb2x2ZWRQYXRoID09PSBcInN0cmluZ1wiKSB7XG5cdFx0XHRvQmluZGluZ0NvbnRleHQgPSB0aGlzLmZuQ3JlYXRlTWV0YUJpbmRpbmdDb250ZXh0KHNSZXNvbHZlZFBhdGgsIG9Db250ZXh0LCBtUGFyYW1ldGVycywgZm5DYWxsQmFjayk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIG9CaW5kaW5nQ29udGV4dDtcblx0fVxuXG5cdGRlc3Ryb3koKTogdm9pZCB7XG5cdFx0dGhpcy5vQ29uZmlnTW9kZWwuZGVzdHJveSgpO1xuXHRcdEpTT05Nb2RlbC5wcm90b3R5cGUuZGVzdHJveS5hcHBseSh0aGlzKTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBUZW1wbGF0ZU1vZGVsO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7RUFNQTtFQUFBLElBS01BLGFBQWEsSUFBQUMsSUFBQSxHQURsQkMsY0FBYyxDQUFDLDJCQUEyQixDQUFDLEVBQUFELElBQUEsQ0FBQUUsTUFBQSwwQkFBQUMsV0FBQTtJQWMzQyxTQUFBSixjQUFZSyxVQUE2QixFQUFFQyxVQUEwQixFQUFFO01BQUEsSUFBQUMsS0FBQTtNQUN0RUEsS0FBQSxHQUFBSCxXQUFBLENBQUFJLElBQUEsS0FBTSxDQUFDO01BQ1BELEtBQUEsQ0FBS0QsVUFBVSxHQUFHQSxVQUFVO01BQzVCQyxLQUFBLENBQUtFLFlBQVksR0FBRyxJQUFJQyxTQUFTLENBQUMsQ0FBQztNQUNuQztNQUNBSCxLQUFBLENBQUtFLFlBQVksQ0FBQ0UsWUFBWSxDQUFDQyxNQUFNLENBQUNDLFNBQVMsQ0FBQztNQUNoRE4sS0FBQSxDQUFLTyxhQUFhLEdBQUcsS0FBSztNQUMxQjtNQUNBLE1BQU1DLElBQUksR0FBQVIsS0FBTztNQUVqQixJQUFJLE9BQU9GLFVBQVUsS0FBSyxVQUFVLEVBQUU7UUFDckMsTUFBTVcsV0FBVyxHQUFJVCxLQUFBLENBQUtFLFlBQVksQ0FBdUJRLFVBQVUsQ0FBQ0MsSUFBSSxDQUFDWCxLQUFBLENBQUtFLFlBQVksQ0FBQztRQUM5RkYsS0FBQSxDQUFLRSxZQUFZLENBQXVCUSxVQUFVLEdBQUcsVUFBVUUsS0FBYSxFQUFFQyxRQUFpQixFQUFVO1VBQ3pHLElBQUksQ0FBQ0wsSUFBSSxDQUFDRCxhQUFhLEVBQUU7WUFDeEIsSUFBSSxDQUFDTyxPQUFPLENBQUNoQixVQUFVLENBQUMsQ0FBQyxDQUFDO1VBQzNCO1VBQ0EsT0FBT1csV0FBVyxDQUFDRyxLQUFLLEVBQUVDLFFBQVEsQ0FBQztRQUNwQyxDQUFDO01BQ0YsQ0FBQyxNQUFNO1FBQ05iLEtBQUEsQ0FBS0UsWUFBWSxDQUFDWSxPQUFPLENBQUNoQixVQUFVLENBQUM7TUFDdEM7TUFFQUUsS0FBQSxDQUFLZSwwQkFBMEIsR0FBR2YsS0FBQSxDQUFLRCxVQUFVLENBQUNpQixvQkFBb0IsQ0FBQ0wsSUFBSSxDQUFDWCxLQUFBLENBQUtELFVBQVUsQ0FBQztNQUM1RkMsS0FBQSxDQUFLaUIsNEJBQTRCLEdBQUdqQixLQUFBLENBQUtFLFlBQVksQ0FBQ2Msb0JBQW9CLENBQUNMLElBQUksQ0FBQ1gsS0FBQSxDQUFLRSxZQUFZLENBQUM7TUFDbEdGLEtBQUEsQ0FBS2tCLFNBQVMsR0FBR2xCLEtBQUEsQ0FBS0UsWUFBWSxDQUFDWSxPQUFPLENBQUNILElBQUksQ0FBQ1gsS0FBQSxDQUFLRSxZQUFZLENBQUM7TUFFbEVGLEtBQUEsQ0FBS0UsWUFBWSxDQUFDYyxvQkFBb0IsR0FBR2hCLEtBQUEsQ0FBS2dCLG9CQUFvQixDQUFDTCxJQUFJLENBQUFYLEtBQUssQ0FBQztNQUM3RUEsS0FBQSxDQUFLRSxZQUFZLENBQUNZLE9BQU8sR0FBR2QsS0FBQSxDQUFLYyxPQUFPLENBQUNILElBQUksQ0FBQVgsS0FBSyxDQUFDO01BQ25EO01BQ0E7TUFDQSxPQUFPQSxLQUFBLENBQUtFLFlBQVksSUFBQWlCLHNCQUFBLENBQUFuQixLQUFBO0lBQ3pCOztJQUVBO0FBQ0Q7QUFDQTtBQUNBO0lBSENvQixjQUFBLENBQUEzQixhQUFBLEVBQUFJLFdBQUE7SUFBQSxJQUFBd0IsTUFBQSxHQUFBNUIsYUFBQSxDQUFBNkIsU0FBQTtJQUFBRCxNQUFBLENBSUFQLE9BQU8sR0FBUCxTQUFBQSxPQUFPQSxDQUFDUyxTQUFpQixFQUFRO01BQ2hDLElBQUksQ0FBQ0wsU0FBUyxDQUFDSyxTQUFTLENBQUM7TUFDekIsSUFBSSxDQUFDaEIsYUFBYSxHQUFHLElBQUk7SUFDMUIsQ0FBQztJQUFBYyxNQUFBLENBRURMLG9CQUFvQixHQUFwQixTQUFBQSxvQkFBb0JBLENBQUNKLEtBQWEsRUFBRUMsUUFBa0IsRUFBRVcsV0FBcUMsRUFBRUMsVUFBcUIsRUFBVztNQUM5SCxJQUFJQyxlQUFlO01BQ25CLE1BQU1DLFVBQVUsR0FBR0gsV0FBVyxJQUFJQSxXQUFXLENBQUNJLFNBQVM7TUFFdkRGLGVBQWUsR0FBRyxJQUFJLENBQUNULDRCQUE0QixDQUFDTCxLQUFLLEVBQUVDLFFBQVEsRUFBRVcsV0FBVyxFQUFFQyxVQUFVLENBQUM7TUFDN0YsTUFBTUksYUFBYSxHQUFHLENBQUNGLFVBQVUsSUFBSUQsZUFBZSxFQUFFSSxTQUFTLENBQUMsQ0FBQztNQUNqRSxJQUFJRCxhQUFhLElBQUksT0FBT0EsYUFBYSxLQUFLLFFBQVEsRUFBRTtRQUN2REgsZUFBZSxHQUFHLElBQUksQ0FBQ1gsMEJBQTBCLENBQUNjLGFBQWEsRUFBRWhCLFFBQVEsRUFBRVcsV0FBVyxFQUFFQyxVQUFVLENBQUM7TUFDcEc7TUFFQSxPQUFPQyxlQUFlO0lBQ3ZCLENBQUM7SUFBQUwsTUFBQSxDQUVEVSxPQUFPLEdBQVAsU0FBQUEsT0FBT0EsQ0FBQSxFQUFTO01BQ2YsSUFBSSxDQUFDN0IsWUFBWSxDQUFDNkIsT0FBTyxDQUFDLENBQUM7TUFDM0I1QixTQUFTLENBQUNtQixTQUFTLENBQUNTLE9BQU8sQ0FBQ0MsS0FBSyxDQUFDLElBQUksQ0FBQztJQUN4QyxDQUFDO0lBQUEsT0FBQXZDLGFBQUE7RUFBQSxFQXZFMEJ3QyxVQUFVLE1BQUFyQyxNQUFBO0VBQUEsT0EwRXZCSCxhQUFhO0FBQUEiLCJpZ25vcmVMaXN0IjpbXX0=