@sapui5/sap.fe.core 1.103.0 → 1.106.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 (303) hide show
  1. package/package.json +5 -5
  2. package/src/sap/fe/core/.library +1 -1
  3. package/src/sap/fe/core/ActionRuntime.js +121 -0
  4. package/src/sap/fe/core/ActionRuntime.ts +122 -0
  5. package/src/sap/fe/core/AppComponent.js +24 -11
  6. package/src/sap/fe/core/AppComponent.ts +17 -5
  7. package/src/sap/fe/core/AppStateHandler.js +74 -62
  8. package/src/sap/fe/core/AppStateHandler.ts +24 -29
  9. package/src/sap/fe/core/BaseController.js +2 -2
  10. package/src/sap/fe/core/CommonUtils.js +147 -180
  11. package/src/sap/fe/core/CommonUtils.ts +166 -193
  12. package/src/sap/fe/core/ExtensionAPI.js +2 -2
  13. package/src/sap/fe/core/PageController.js +2 -2
  14. package/src/sap/fe/core/TemplateComponent.js +21 -10
  15. package/src/sap/fe/core/TemplateComponent.ts +3 -0
  16. package/src/sap/fe/core/TemplateModel.js +2 -2
  17. package/src/sap/fe/core/buildingBlocks/AttributeModel.js +11 -3
  18. package/src/sap/fe/core/buildingBlocks/AttributeModel.ts +7 -1
  19. package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +194 -43
  20. package/src/sap/fe/core/buildingBlocks/BuildingBlock.ts +162 -24
  21. package/src/sap/fe/core/buildingBlocks/BuildingBlockFormatter.js +14 -0
  22. package/src/sap/fe/core/buildingBlocks/BuildingBlockFormatter.ts +5 -0
  23. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js +609 -227
  24. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.ts +268 -119
  25. package/src/sap/fe/core/buildingBlocks/TraceInfo.js +111 -76
  26. package/src/sap/fe/core/buildingBlocks/TraceInfo.ts +96 -76
  27. package/src/sap/fe/core/controllerextensions/BusyLocker.js +1 -1
  28. package/src/sap/fe/core/controllerextensions/EditFlow.js +723 -637
  29. package/src/sap/fe/core/controllerextensions/EditFlow.ts +361 -398
  30. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +2 -2
  31. package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +83 -55
  32. package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +42 -44
  33. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +29 -27
  34. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +35 -30
  35. package/src/sap/fe/core/controllerextensions/InternalRouting.js +171 -74
  36. package/src/sap/fe/core/controllerextensions/InternalRouting.ts +167 -76
  37. package/src/sap/fe/core/controllerextensions/KPIManagement.js +5 -21
  38. package/src/sap/fe/core/controllerextensions/KPIManagement.ts +2 -17
  39. package/src/sap/fe/core/controllerextensions/MassEdit.js +3 -3
  40. package/src/sap/fe/core/controllerextensions/MassEdit.ts +1 -1
  41. package/src/sap/fe/core/controllerextensions/MessageHandler.js +2 -2
  42. package/src/sap/fe/core/controllerextensions/PageReady.js +3 -3
  43. package/src/sap/fe/core/controllerextensions/PageReady.ts +5 -1
  44. package/src/sap/fe/core/controllerextensions/Paginator.js +13 -13
  45. package/src/sap/fe/core/controllerextensions/Paginator.ts +11 -11
  46. package/src/sap/fe/core/controllerextensions/Placeholder.js +2 -2
  47. package/src/sap/fe/core/controllerextensions/Routing.js +2 -2
  48. package/src/sap/fe/core/controllerextensions/RoutingListener.js +1 -1
  49. package/src/sap/fe/core/controllerextensions/Share.js +154 -123
  50. package/src/sap/fe/core/controllerextensions/Share.ts +93 -95
  51. package/src/sap/fe/core/controllerextensions/SideEffects.js +157 -97
  52. package/src/sap/fe/core/controllerextensions/SideEffects.ts +151 -95
  53. package/src/sap/fe/core/controllerextensions/ViewState.js +151 -80
  54. package/src/sap/fe/core/controllerextensions/ViewState.ts +95 -93
  55. package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +1 -1
  56. package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js +9 -9
  57. package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.ts +6 -7
  58. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js +26 -11
  59. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.ts +30 -11
  60. package/src/sap/fe/core/controllerextensions/collaboration/Manage.js +57 -40
  61. package/src/sap/fe/core/controllerextensions/collaboration/Manage.ts +55 -47
  62. package/src/sap/fe/core/controllerextensions/collaboration/ManageDialog.fragment.xml +31 -32
  63. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +1376 -914
  64. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +654 -714
  65. package/src/sap/fe/core/controllerextensions/editFlow/draft.js +372 -326
  66. package/src/sap/fe/core/controllerextensions/editFlow/draft.ts +210 -276
  67. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js +309 -0
  68. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.ts +320 -0
  69. package/src/sap/fe/core/controllerextensions/editFlow/operations.js +670 -521
  70. package/src/sap/fe/core/controllerextensions/editFlow/operations.ts +537 -535
  71. package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +85 -65
  72. package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +16 -21
  73. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +25 -13
  74. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.ts +53 -43
  75. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +18 -27
  76. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.ts +9 -15
  77. package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +19 -3
  78. package/src/sap/fe/core/controls/ActionParameterDialogFieldValueHelp.fragment.xml +35 -0
  79. package/src/sap/fe/core/controls/ActionParameterDialogValueHelp.fragment.xml +26 -16
  80. package/src/sap/fe/core/controls/Any.js +1 -1
  81. package/src/sap/fe/core/controls/CommandExecution.js +2 -2
  82. package/src/sap/fe/core/controls/ConditionalWrapper.js +2 -2
  83. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +5 -5
  84. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.ts +0 -3
  85. package/src/sap/fe/core/controls/CustomQuickViewPage.js +2 -2
  86. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +1 -1
  87. package/src/sap/fe/core/controls/FieldWrapper.js +2 -2
  88. package/src/sap/fe/core/controls/FileWrapper.js +8 -3
  89. package/src/sap/fe/core/controls/FileWrapper.ts +5 -1
  90. package/src/sap/fe/core/controls/FilterBar.js +2 -2
  91. package/src/sap/fe/core/controls/FormElementWrapper.js +2 -2
  92. package/src/sap/fe/core/controls/MassEditSelect.js +1 -1
  93. package/src/sap/fe/core/controls/MultiValueParameterDelegate.js +1 -1
  94. package/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +48 -17
  95. package/src/sap/fe/core/controls/filterbar/FilterContainer.js +2 -2
  96. package/src/sap/fe/core/controls/filterbar/VisualFilter.js +2 -2
  97. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +2 -2
  98. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +3 -3
  99. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +2 -2
  100. package/src/sap/fe/core/controls/massEdit/MassEditField.fragment.xml +22 -35
  101. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +2 -2
  102. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +1 -1
  103. package/src/sap/fe/core/converters/ConverterContext.js +23 -2
  104. package/src/sap/fe/core/converters/ConverterContext.ts +34 -9
  105. package/src/sap/fe/core/converters/ManifestSettings.js +19 -18
  106. package/src/sap/fe/core/converters/ManifestSettings.ts +53 -47
  107. package/src/sap/fe/core/converters/ManifestWrapper.js +1 -1
  108. package/src/sap/fe/core/converters/MetaModelConverter.js +32 -10
  109. package/src/sap/fe/core/converters/MetaModelConverter.ts +42 -19
  110. package/src/sap/fe/core/converters/TemplateConverter.js +1 -1
  111. package/src/sap/fe/core/converters/annotations/DataField.js +5 -2
  112. package/src/sap/fe/core/converters/annotations/DataField.ts +5 -1
  113. package/src/sap/fe/core/converters/common/AnnotationConverter.js +69 -23
  114. package/src/sap/fe/core/converters/controls/Common/Action.js +98 -51
  115. package/src/sap/fe/core/converters/controls/Common/Action.ts +121 -44
  116. package/src/sap/fe/core/converters/controls/Common/Chart.js +31 -34
  117. package/src/sap/fe/core/converters/controls/Common/Chart.ts +26 -34
  118. package/src/sap/fe/core/converters/controls/Common/Criticality.js +1 -1
  119. package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +43 -7
  120. package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +60 -33
  121. package/src/sap/fe/core/converters/controls/Common/Form.js +8 -6
  122. package/src/sap/fe/core/converters/controls/Common/Form.ts +11 -14
  123. package/src/sap/fe/core/converters/controls/Common/KPI.js +1 -1
  124. package/src/sap/fe/core/converters/controls/Common/KPI.ts +16 -15
  125. package/src/sap/fe/core/converters/controls/Common/Table.js +188 -157
  126. package/src/sap/fe/core/converters/controls/Common/Table.ts +279 -230
  127. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +1 -1
  128. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +4 -4
  129. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +57 -21
  130. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +71 -18
  131. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +30 -8
  132. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +24 -7
  133. package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.js +1 -1
  134. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +43 -34
  135. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +37 -25
  136. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +85 -49
  137. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +74 -50
  138. package/src/sap/fe/core/converters/helpers/Aggregation.js +54 -4
  139. package/src/sap/fe/core/converters/helpers/Aggregation.ts +56 -8
  140. package/src/sap/fe/core/converters/helpers/BindingHelper.js +1 -1
  141. package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +6 -4
  142. package/src/sap/fe/core/converters/helpers/ConfigurableObject.ts +10 -2
  143. package/src/sap/fe/core/converters/helpers/DataFieldHelper.js +182 -0
  144. package/src/sap/fe/core/converters/helpers/DataFieldHelper.ts +167 -0
  145. package/src/sap/fe/core/converters/helpers/ID.js +3 -1
  146. package/src/sap/fe/core/converters/helpers/ID.ts +1 -0
  147. package/src/sap/fe/core/converters/helpers/IssueManager.js +1 -1
  148. package/src/sap/fe/core/converters/helpers/Key.js +1 -1
  149. package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.js +1 -1
  150. package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.ts +2 -3
  151. package/src/sap/fe/core/converters/objectPage/FormMenuActions.js +1 -1
  152. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +8 -14
  153. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +6 -9
  154. package/src/sap/fe/core/converters/templates/ListReportConverter.js +31 -31
  155. package/src/sap/fe/core/converters/templates/ListReportConverter.ts +54 -47
  156. package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +44 -15
  157. package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +64 -30
  158. package/src/sap/fe/core/designtime/AppComponent.designtime.js +1 -1
  159. package/src/sap/fe/core/formatters/CollaborationFormatter.js +1 -1
  160. package/src/sap/fe/core/formatters/FPMFormatter.js +1 -1
  161. package/src/sap/fe/core/formatters/KPIFormatter.js +1 -1
  162. package/src/sap/fe/core/formatters/StandardFormatter.js +13 -6
  163. package/src/sap/fe/core/formatters/StandardFormatter.ts +20 -14
  164. package/src/sap/fe/core/formatters/TableFormatter.js +1 -1
  165. package/src/sap/fe/core/formatters/TableFormatterTypes.js +1 -1
  166. package/src/sap/fe/core/formatters/ValueFormatter.js +1 -1
  167. package/src/sap/fe/core/fpm/Component.js +33 -7
  168. package/src/sap/fe/core/fpm/Component.ts +14 -0
  169. package/src/sap/fe/core/helpers/AnnotationEnum.js +1 -1
  170. package/src/sap/fe/core/helpers/AppStartupHelper.js +5 -4
  171. package/src/sap/fe/core/helpers/AppStartupHelper.ts +4 -3
  172. package/src/sap/fe/core/helpers/BindingToolkit.js +56 -24
  173. package/src/sap/fe/core/helpers/BindingToolkit.ts +67 -21
  174. package/src/sap/fe/core/helpers/ClassSupport.js +31 -3
  175. package/src/sap/fe/core/helpers/ClassSupport.ts +24 -1
  176. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +1 -1
  177. package/src/sap/fe/core/helpers/EditState.js +1 -1
  178. package/src/sap/fe/core/helpers/ExcelFormatHelper.js +1 -1
  179. package/src/sap/fe/core/helpers/FPMHelper.js +1 -1
  180. package/src/sap/fe/core/helpers/KeepAliveHelper.js +1 -1
  181. package/src/sap/fe/core/helpers/KeepAliveRefreshTypes.js +1 -1
  182. package/src/sap/fe/core/helpers/LoaderUtils.js +39 -0
  183. package/src/sap/fe/core/helpers/LoaderUtils.ts +14 -0
  184. package/src/sap/fe/core/helpers/MassEditHelper.js +475 -99
  185. package/src/sap/fe/core/helpers/MassEditHelper.ts +468 -155
  186. package/src/sap/fe/core/helpers/MessageStrip.js +81 -0
  187. package/src/sap/fe/core/helpers/MessageStrip.ts +79 -0
  188. package/src/sap/fe/core/helpers/ModelHelper.js +1 -1
  189. package/src/sap/fe/core/helpers/PasteHelper.js +1 -1
  190. package/src/sap/fe/core/helpers/SemanticDateOperators.js +82 -36
  191. package/src/sap/fe/core/helpers/SemanticDateOperators.ts +52 -36
  192. package/src/sap/fe/core/helpers/SemanticKeyHelper.js +1 -1
  193. package/src/sap/fe/core/helpers/SideEffectsHelper.js +146 -0
  194. package/src/sap/fe/core/helpers/SideEffectsHelper.ts +128 -0
  195. package/src/sap/fe/core/helpers/StableIdHelper.js +1 -1
  196. package/src/sap/fe/core/helpers/Synchronization.js +1 -1
  197. package/src/sap/fe/core/helpers/ToES6Promise.js +32 -0
  198. package/src/sap/fe/core/helpers/ToES6Promise.ts +19 -0
  199. package/src/sap/fe/core/jsx-runtime/Fragment.js +16 -0
  200. package/src/sap/fe/core/jsx-runtime/Fragment.ts +3 -0
  201. package/src/sap/fe/core/jsx-runtime/ViewLoader.js +109 -0
  202. package/src/sap/fe/core/jsx-runtime/ViewLoader.tsx +47 -0
  203. package/src/sap/fe/core/jsx-runtime/jsx-control.js +119 -0
  204. package/src/sap/fe/core/jsx-runtime/jsx-control.ts +98 -0
  205. package/src/sap/fe/core/jsx-runtime/jsx-xml.js +105 -0
  206. package/src/sap/fe/core/jsx-runtime/jsx-xml.ts +89 -0
  207. package/src/sap/fe/core/jsx-runtime/jsx.js +12 -90
  208. package/src/sap/fe/core/jsx-runtime/jsx.ts +24 -85
  209. package/src/sap/fe/core/jsx-runtime/jsxs.js +1 -1
  210. package/src/sap/fe/core/jsx-runtime/useMDXComponents.js +179 -0
  211. package/src/sap/fe/core/jsx-runtime/useMDXComponents.tsx +150 -0
  212. package/src/sap/fe/core/library.js +2 -2
  213. package/src/sap/fe/core/library.support.js +1 -1
  214. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +1 -1
  215. package/src/sap/fe/core/messagebundle.properties +4 -41
  216. package/src/sap/fe/core/messagebundle_ar.properties +22 -45
  217. package/src/sap/fe/core/messagebundle_bg.properties +22 -45
  218. package/src/sap/fe/core/messagebundle_ca.properties +22 -45
  219. package/src/sap/fe/core/messagebundle_cs.properties +22 -45
  220. package/src/sap/fe/core/messagebundle_cy.properties +21 -44
  221. package/src/sap/fe/core/messagebundle_da.properties +22 -45
  222. package/src/sap/fe/core/messagebundle_de.properties +22 -45
  223. package/src/sap/fe/core/messagebundle_el.properties +22 -45
  224. package/src/sap/fe/core/messagebundle_en.properties +21 -44
  225. package/src/sap/fe/core/messagebundle_en_GB.properties +21 -44
  226. package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +21 -42
  227. package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +20 -40
  228. package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +21 -42
  229. package/src/sap/fe/core/messagebundle_es.properties +22 -45
  230. package/src/sap/fe/core/messagebundle_es_MX.properties +22 -45
  231. package/src/sap/fe/core/messagebundle_et.properties +22 -45
  232. package/src/sap/fe/core/messagebundle_fi.properties +22 -45
  233. package/src/sap/fe/core/messagebundle_fr.properties +21 -44
  234. package/src/sap/fe/core/messagebundle_fr_CA.properties +20 -43
  235. package/src/sap/fe/core/messagebundle_hi.properties +22 -45
  236. package/src/sap/fe/core/messagebundle_hr.properties +22 -45
  237. package/src/sap/fe/core/messagebundle_hu.properties +22 -45
  238. package/src/sap/fe/core/messagebundle_id.properties +22 -45
  239. package/src/sap/fe/core/messagebundle_it.properties +22 -45
  240. package/src/sap/fe/core/messagebundle_iw.properties +22 -45
  241. package/src/sap/fe/core/messagebundle_ja.properties +22 -45
  242. package/src/sap/fe/core/messagebundle_kk.properties +22 -45
  243. package/src/sap/fe/core/messagebundle_ko.properties +27 -50
  244. package/src/sap/fe/core/messagebundle_lt.properties +22 -45
  245. package/src/sap/fe/core/messagebundle_lv.properties +22 -45
  246. package/src/sap/fe/core/messagebundle_ms.properties +22 -45
  247. package/src/sap/fe/core/messagebundle_nl.properties +24 -47
  248. package/src/sap/fe/core/messagebundle_no.properties +22 -45
  249. package/src/sap/fe/core/messagebundle_pl.properties +23 -46
  250. package/src/sap/fe/core/messagebundle_pt.properties +23 -46
  251. package/src/sap/fe/core/messagebundle_pt_PT.properties +22 -45
  252. package/src/sap/fe/core/messagebundle_ro.properties +22 -45
  253. package/src/sap/fe/core/messagebundle_ru.properties +22 -45
  254. package/src/sap/fe/core/messagebundle_sh.properties +22 -45
  255. package/src/sap/fe/core/messagebundle_sk.properties +22 -45
  256. package/src/sap/fe/core/messagebundle_sl.properties +22 -45
  257. package/src/sap/fe/core/messagebundle_sv.properties +22 -45
  258. package/src/sap/fe/core/messagebundle_th.properties +20 -43
  259. package/src/sap/fe/core/messagebundle_tr.properties +22 -45
  260. package/src/sap/fe/core/messagebundle_uk.properties +22 -45
  261. package/src/sap/fe/core/messagebundle_vi.properties +22 -45
  262. package/src/sap/fe/core/messagebundle_zh_CN.properties +22 -45
  263. package/src/sap/fe/core/messagebundle_zh_TW.properties +22 -45
  264. package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +2 -2
  265. package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +102 -74
  266. package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +62 -63
  267. package/src/sap/fe/core/services/EnvironmentServiceFactory.js +2 -2
  268. package/src/sap/fe/core/services/NavigationServiceFactory.js +11 -8
  269. package/src/sap/fe/core/services/NavigationServiceFactory.ts +10 -7
  270. package/src/sap/fe/core/services/ResourceModelServiceFactory.js +2 -2
  271. package/src/sap/fe/core/services/RoutingServiceFactory.js +2 -2
  272. package/src/sap/fe/core/services/ShellServicesFactory.js +22 -2
  273. package/src/sap/fe/core/services/ShellServicesFactory.ts +19 -0
  274. package/src/sap/fe/core/services/SideEffectsServiceFactory.js +4 -4
  275. package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +2 -2
  276. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +251 -200
  277. package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +160 -144
  278. package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +2 -2
  279. package/src/sap/fe/core/support/AnnotationIssue.support.js +1 -1
  280. package/src/sap/fe/core/support/CollectionFacetMissingID.support.js +1 -1
  281. package/src/sap/fe/core/support/CollectionFacetUnsupportedLevel.support.js +1 -1
  282. package/src/sap/fe/core/support/CommonHelper.js +1 -1
  283. package/src/sap/fe/core/support/Diagnostics.js +1 -1
  284. package/src/sap/fe/core/support/InvalidAnnotationColumnKey.support.js +1 -1
  285. package/src/sap/fe/core/templating/CommonFormatters.js +4 -3
  286. package/src/sap/fe/core/templating/CommonFormatters.ts +5 -1
  287. package/src/sap/fe/core/templating/CriticalityFormatters.js +1 -1
  288. package/src/sap/fe/core/templating/DataFieldFormatters.js +1 -1
  289. package/src/sap/fe/core/templating/DataModelPathHelper.js +8 -1
  290. package/src/sap/fe/core/templating/DataModelPathHelper.ts +5 -2
  291. package/src/sap/fe/core/templating/DisplayModeFormatter.js +1 -1
  292. package/src/sap/fe/core/templating/EntitySetHelper.js +4 -5
  293. package/src/sap/fe/core/templating/EntitySetHelper.ts +4 -3
  294. package/src/sap/fe/core/templating/FieldControlHelper.js +1 -1
  295. package/src/sap/fe/core/templating/FilterHelper.js +34 -15
  296. package/src/sap/fe/core/templating/FilterHelper.ts +28 -12
  297. package/src/sap/fe/core/templating/FilterTemplating.js +1 -1
  298. package/src/sap/fe/core/templating/PropertyFormatters.js +1 -1
  299. package/src/sap/fe/core/templating/PropertyHelper.js +1 -1
  300. package/src/sap/fe/core/templating/UIFormatters.js +5 -3
  301. package/src/sap/fe/core/templating/UIFormatters.ts +7 -5
  302. package/src/sap/fe/core/type/DateTimeWithTimezone.js +2 -2
  303. package/src/sap/fe/core/type/Email.js +2 -2
@@ -1,97 +1,36 @@
1
- import type ManagedObjectMetadata from "sap/ui/base/ManagedObjectMetadata";
1
+ import jsxControl from "sap/fe/core/jsx-runtime/jsx-control";
2
+ import jsxXml from "sap/fe/core/jsx-runtime/jsx-xml";
3
+ import Control from "sap/ui/core/Control";
4
+ import Element from "sap/ui/core/Element";
2
5
 
3
6
  type ControlPropertyNames<T> = {
4
7
  [K in keyof T]: T[K] extends string | boolean | Function | number | undefined | string[] ? never : K;
5
8
  }[keyof T];
6
- type ControlProperties<T> = Partial<Record<ControlPropertyNames<T>, JSX.Element>>;
7
- type NonControlProperties<T> = Partial<Omit<T, ControlPropertyNames<T>>>;
8
- type ControlWithMetadata = {
9
- getMetadata(): ManagedObjectMetadata;
10
- };
11
- export type WrappedControl<T> = (mSettings: NonControlProperties<T> & { children?: JSX.Element | ControlProperties<T> }) => JSX.Element;
9
+ export type ControlProperties<T> = Partial<Record<ControlPropertyNames<T>, Element>>;
10
+ export type NonControlProperties<T> = Partial<Omit<T, ControlPropertyNames<T>>>;
12
11
 
13
- const writeChildren = function (val: string | string[]) {
14
- if (Array.isArray(val)) {
15
- return val.join("");
12
+ let renderNextAsXML = false;
13
+ const jsx = function <T>(
14
+ ControlType: typeof Control,
15
+ mSettings: NonControlProperties<T> & { key: string; children?: Element | ControlProperties<T> },
16
+ key: string
17
+ ): string | Control | Control[] {
18
+ if (!renderNextAsXML) {
19
+ return jsxControl(ControlType, mSettings, key);
16
20
  } else {
17
- return val;
21
+ return jsxXml(ControlType, mSettings, key);
18
22
  }
19
23
  };
20
-
21
- const addChildAggregation = function (aggregationChildren: any, aggregationName: string, child: any) {
22
- if (child === undefined) {
23
- return;
24
- }
25
- if (!aggregationChildren[aggregationName]) {
26
- aggregationChildren[aggregationName] = [];
27
- }
28
- if (typeof child === "string" && child.trim().length > 0) {
29
- aggregationChildren[aggregationName].push(child);
30
- } else if (Array.isArray(child)) {
31
- child.forEach((subChild) => {
32
- addChildAggregation(aggregationChildren, aggregationName, subChild);
33
- });
34
- } else {
35
- Object.keys(child).forEach((childKey) => {
36
- addChildAggregation(aggregationChildren, childKey, child[childKey]);
37
- });
38
- }
24
+ jsx.renderAsXML = function (renderMethod: Function) {
25
+ renderNextAsXML = true;
26
+ const returnValue = renderMethod();
27
+ renderNextAsXML = false;
28
+ return returnValue;
39
29
  };
40
30
 
41
- const FL_DELEGATE = "fl:delegate";
42
- const jsx = function <T>(
43
- type: ControlWithMetadata,
44
- mSettings: NonControlProperties<T> & { key: string; children?: JSX.Element | ControlProperties<T> },
45
- key: string
46
- ): string {
47
- const metadata = type.getMetadata();
48
- const namesSplit = metadata.getName().split(".");
49
- if (key !== undefined) {
50
- mSettings["key"] = key;
51
- }
52
- const metadataProperties = metadata.getAllProperties();
53
- const metadataAggregations = metadata.getAllAggregations();
54
- metadataProperties["class"] = { name: "class" };
55
- metadataProperties["id"] = { name: "id" };
56
- metadataProperties[FL_DELEGATE] = { name: FL_DELEGATE };
57
- metadataProperties["xmlns:fl"] = { name: FL_DELEGATE };
58
- if (metadata.getName() === "sap.ui.core.Fragment") {
59
- metadataProperties["fragmentName"] = { name: "fragmentName" };
60
- }
61
- const namespace = namesSplit.slice(0, -1);
62
- const name = namesSplit[namesSplit.length - 1];
63
- const namespaceAlias = namespace[namespace.length - 1];
64
- const tagName = `${namespaceAlias}:${name}`;
65
- const propertiesString: string[] = [];
66
- const aggregationString: string[] = [];
67
- const defaultAggregationName = metadata.getDefaultAggregationName();
68
- Object.keys(metadataProperties).forEach((propertyName) => {
69
- if (mSettings.hasOwnProperty(propertyName) && (mSettings as any)[propertyName] !== undefined) {
70
- if (typeof (mSettings as any)[propertyName] === "object") {
71
- propertiesString.push(`${propertyName}='${JSON.stringify((mSettings as any)[propertyName])}'`);
72
- } else {
73
- propertiesString.push(`${propertyName}='${(mSettings as any)[propertyName]}'`);
74
- }
75
- }
76
- });
77
- const aggregationChildren: Record<string, string[]> = {
78
- [defaultAggregationName]: []
79
- };
80
- addChildAggregation(aggregationChildren, defaultAggregationName, mSettings.children);
81
- Object.keys(metadataAggregations).forEach((aggregationName) => {
82
- if (aggregationChildren?.hasOwnProperty(aggregationName) && aggregationChildren[aggregationName].length > 0) {
83
- aggregationString.push(
84
- `<${namespaceAlias}:${aggregationName}>
85
- ${writeChildren(aggregationChildren[aggregationName])}
86
- </${namespaceAlias}:${aggregationName}>`
87
- );
88
- }
89
- if (mSettings.hasOwnProperty(aggregationName) && (mSettings as any)[aggregationName] !== undefined) {
90
- propertiesString.push(`${aggregationName}='${JSON.stringify((mSettings as any)[aggregationName])}'`);
91
- }
92
- });
93
- return `<${tagName} xmlns:${namespaceAlias}="${namespace.join(".")}" ${propertiesString.join(" ")}>${aggregationString.join(
94
- ""
95
- )}</${tagName}>`;
31
+ export type Ref<T extends Element> = {
32
+ current?: T;
33
+ setCurrent(oControlInstance: T): void;
96
34
  };
35
+
97
36
  export default jsx;
@@ -7,4 +7,4 @@ sap.ui.define(["sap/fe/core/jsx-runtime/jsx"], function (jsx) {
7
7
 
8
8
  return jsx;
9
9
  }, false);
10
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImpzeHMudHMiXSwibmFtZXMiOlsianN4Il0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7O1NBQWVBLEciLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBqc3ggZnJvbSBcInNhcC9mZS9jb3JlL2pzeC1ydW50aW1lL2pzeFwiO1xuXG5leHBvcnQgZGVmYXVsdCBqc3g7XG4iXX0=
10
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJqc3giXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbImpzeHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGpzeCBmcm9tIFwic2FwL2ZlL2NvcmUvanN4LXJ1bnRpbWUvanN4XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGpzeDtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQUE7QUFBQTs7OztTQUVlQSxHIn0=
@@ -0,0 +1,179 @@
1
+ /*!
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ * (c) Copyright 2009-2021 SAP SE. All rights reserved
4
+ */
5
+ sap.ui.define(["sap/base/Log", "sap/fe/core/buildingBlocks/BuildingBlockRuntime", "sap/fe/core/helpers/ClassSupport", "sap/fe/core/jsx-runtime/ViewLoader", "sap/fe/macros/macroLibrary", "sap/m/FormattedText", "sap/m/HBox", "sap/m/Panel", "sap/m/Title", "sap/ui/codeeditor/CodeEditor", "sap/ui/core/Fragment", "sap/ui/core/library", "sap/ui/core/util/XMLPreprocessor", "sap/fe/core/jsx-runtime/jsx"], function (Log, BuildingBlockRuntime, ClassSupport, MDXViewLoader, macroLibrary, FormattedText, HBox, Panel, Title, CodeEditor, Fragment, library, XMLPreprocessor, _jsx) {
6
+ "use strict";
7
+
8
+ var TitleLevel = library.TitleLevel;
9
+ var createReference = ClassSupport.createReference;
10
+ var parseXMLString = BuildingBlockRuntime.parseXMLString;
11
+
12
+ function p(strValue) {
13
+ var content = Array.isArray(strValue.children) ? strValue.children.map(function (child) {
14
+ var output;
15
+
16
+ if (typeof child === "string") {
17
+ output = child;
18
+ } else {
19
+ switch (child.getMetadata().getName()) {
20
+ case "sap.m.Link":
21
+ output = "<a href=\"".concat(child.getHref(), "\">").concat(child.getText(), "</a>");
22
+ break;
23
+
24
+ case "sap.ui.codeeditor.CodeEditor":
25
+ output = "<code>".concat(child.getValue(), "</code>");
26
+ break;
27
+ }
28
+ }
29
+
30
+ return output;
31
+ }).join("") : strValue.children;
32
+ return _jsx(FormattedText, {
33
+ htmlText: content,
34
+ class: "sapUiTinyMarginBottom"
35
+ });
36
+ }
37
+
38
+ function h1(strValue) {
39
+ return _jsx(Title, {
40
+ text: strValue.children,
41
+ level: TitleLevel.H1,
42
+ class: "sapUiTinyMarginBottom"
43
+ });
44
+ }
45
+
46
+ function a(strValue) {
47
+ return "<a href={strValue.href}>".concat(strValue.children, "</a>");
48
+ }
49
+
50
+ function ul(strValue) {
51
+ var ulContent = "<ul>".concat(Array.isArray(strValue.children) ? strValue.children.join("") : strValue.children, "</ul>");
52
+ return _jsx(FormattedText, {
53
+ htmlText: ulContent
54
+ });
55
+ }
56
+
57
+ function li(strValue) {
58
+ return "<li>".concat(Array.isArray(strValue.children) ? strValue.children.join("") : strValue.children, "</li>");
59
+ }
60
+
61
+ function h2(strValue) {
62
+ return _jsx(Title, {
63
+ text: strValue.children,
64
+ level: TitleLevel.H2,
65
+ class: "sapUiSmallMarginTop sapUiTinyMarginBottom"
66
+ });
67
+ }
68
+
69
+ function pre(content) {
70
+ return content.children;
71
+ }
72
+
73
+ function BuildingBlockPlayground(inValue) {
74
+ var sourceHBox = createReference();
75
+ var binding = inValue.binding ? {
76
+ path: inValue.binding
77
+ } : undefined;
78
+
79
+ var target = _jsx(Panel, {
80
+ headerText: inValue.headerText || "",
81
+ class: "sapUiSmallMarginTop",
82
+ children: _jsx(HBox, {
83
+ ref: sourceHBox
84
+ })
85
+ }); // <TabContainer>
86
+ // {{
87
+ // items: [
88
+ // <TabContainerItem name={"Sample"}>{{ content: }},</TabContainerItem>,
89
+ // <TabContainerItem name={"Source"}>
90
+ // {{
91
+ // content: (
92
+ // <CodeBlock editable={false} lineNumbers={true} type={"xml"} lineCount={10}>
93
+ // {inValue.children}
94
+ // </CodeBlock>
95
+ // )
96
+ // }}
97
+ // </TabContainerItem>
98
+ // ]
99
+ // }}
100
+ // </TabContainer>
101
+ // );
102
+
103
+
104
+ if (binding) {
105
+ target.bindElement(binding);
106
+ }
107
+
108
+ macroLibrary.register();
109
+ var fragmentOrPromise = XMLPreprocessor.process(parseXMLString("<root>".concat(inValue.children, "</root>"), true), {
110
+ name: "myBuildingBlockFragment"
111
+ }, MDXViewLoader.preprocessorData);
112
+ Promise.resolve(fragmentOrPromise).then(function (fragment) {
113
+ return Fragment.load({
114
+ definition: fragment.firstElementChild,
115
+ controller: MDXViewLoader.controller
116
+ });
117
+ }).then(function (fragmentContent) {
118
+ sourceHBox.current.removeAllItems();
119
+ sourceHBox.current.addItem(fragmentContent);
120
+ }).catch(function (err) {
121
+ Log.error(err);
122
+ });
123
+ return target;
124
+ }
125
+
126
+ function CodeBlock(inValue) {
127
+ var _inValue$children, _snippet$split, _inValue$className;
128
+
129
+ var snippet = ((_inValue$children = inValue.children) === null || _inValue$children === void 0 ? void 0 : _inValue$children.trim()) || "";
130
+ var lineCount = inValue.lineCount || Math.max((_snippet$split = snippet.split("\n")) === null || _snippet$split === void 0 ? void 0 : _snippet$split.length, 3);
131
+ var type = inValue.type || (inValue === null || inValue === void 0 ? void 0 : (_inValue$className = inValue.className) === null || _inValue$className === void 0 ? void 0 : _inValue$className.split("-")[1]) || "js";
132
+
133
+ var myCodeEditor = _jsx(CodeEditor, {
134
+ class: "sapUiTinyMargin",
135
+ lineNumbers: inValue.lineNumbers || false,
136
+ type: type,
137
+ editable: inValue.editable || false,
138
+ maxLines: lineCount,
139
+ height: "auto",
140
+ width: "98%"
141
+ });
142
+
143
+ myCodeEditor.setValue(snippet);
144
+
145
+ if (inValue.source) {
146
+ fetch(inValue.source).then(function (res) {
147
+ return res.text();
148
+ }).then(function (text) {
149
+ var _text$split;
150
+
151
+ var newLineCount = Math.max((_text$split = text.split("\n")) === null || _text$split === void 0 ? void 0 : _text$split.length, 3);
152
+ myCodeEditor.setMaxLines(newLineCount);
153
+ myCodeEditor.setValue(text);
154
+ }).catch(function (e) {
155
+ myCodeEditor.setValue(e.message);
156
+ });
157
+ }
158
+
159
+ return myCodeEditor;
160
+ }
161
+
162
+ var provideComponenents = function () {
163
+ return {
164
+ p: p,
165
+ a: a,
166
+ h1: h1,
167
+ h2: h2,
168
+ ul: ul,
169
+ li: li,
170
+ pre: pre,
171
+ code: CodeBlock,
172
+ CodeBlock: CodeBlock,
173
+ BuildingBlockPlayground: BuildingBlockPlayground
174
+ };
175
+ };
176
+
177
+ return provideComponenents;
178
+ }, false);
179
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwIiwic3RyVmFsdWUiLCJjb250ZW50IiwiQXJyYXkiLCJpc0FycmF5IiwiY2hpbGRyZW4iLCJtYXAiLCJjaGlsZCIsIm91dHB1dCIsImdldE1ldGFkYXRhIiwiZ2V0TmFtZSIsImdldEhyZWYiLCJnZXRUZXh0IiwiZ2V0VmFsdWUiLCJqb2luIiwiaDEiLCJUaXRsZUxldmVsIiwiSDEiLCJhIiwidWwiLCJ1bENvbnRlbnQiLCJsaSIsImgyIiwiSDIiLCJwcmUiLCJCdWlsZGluZ0Jsb2NrUGxheWdyb3VuZCIsImluVmFsdWUiLCJzb3VyY2VIQm94IiwiY3JlYXRlUmVmZXJlbmNlIiwiYmluZGluZyIsInBhdGgiLCJ1bmRlZmluZWQiLCJ0YXJnZXQiLCJoZWFkZXJUZXh0IiwiYmluZEVsZW1lbnQiLCJtYWNyb0xpYnJhcnkiLCJyZWdpc3RlciIsImZyYWdtZW50T3JQcm9taXNlIiwiWE1MUHJlcHJvY2Vzc29yIiwicHJvY2VzcyIsInBhcnNlWE1MU3RyaW5nIiwibmFtZSIsIk1EWFZpZXdMb2FkZXIiLCJwcmVwcm9jZXNzb3JEYXRhIiwiUHJvbWlzZSIsInJlc29sdmUiLCJ0aGVuIiwiZnJhZ21lbnQiLCJGcmFnbWVudCIsImxvYWQiLCJkZWZpbml0aW9uIiwiZmlyc3RFbGVtZW50Q2hpbGQiLCJjb250cm9sbGVyIiwiZnJhZ21lbnRDb250ZW50IiwiY3VycmVudCIsInJlbW92ZUFsbEl0ZW1zIiwiYWRkSXRlbSIsImNhdGNoIiwiZXJyIiwiTG9nIiwiZXJyb3IiLCJDb2RlQmxvY2siLCJzbmlwcGV0IiwidHJpbSIsImxpbmVDb3VudCIsIk1hdGgiLCJtYXgiLCJzcGxpdCIsImxlbmd0aCIsInR5cGUiLCJjbGFzc05hbWUiLCJteUNvZGVFZGl0b3IiLCJsaW5lTnVtYmVycyIsImVkaXRhYmxlIiwic2V0VmFsdWUiLCJzb3VyY2UiLCJmZXRjaCIsInJlcyIsInRleHQiLCJuZXdMaW5lQ291bnQiLCJzZXRNYXhMaW5lcyIsImUiLCJtZXNzYWdlIiwicHJvdmlkZUNvbXBvbmVuZW50cyIsImNvZGUiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbInVzZU1EWENvbXBvbmVudHMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IHsgcGFyc2VYTUxTdHJpbmcgfSBmcm9tIFwic2FwL2ZlL2NvcmUvYnVpbGRpbmdCbG9ja3MvQnVpbGRpbmdCbG9ja1J1bnRpbWVcIjtcbmltcG9ydCB7IGNyZWF0ZVJlZmVyZW5jZSB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IE1EWFZpZXdMb2FkZXIgZnJvbSBcInNhcC9mZS9jb3JlL2pzeC1ydW50aW1lL1ZpZXdMb2FkZXJcIjtcbmltcG9ydCBtYWNyb0xpYnJhcnkgZnJvbSBcInNhcC9mZS9tYWNyb3MvbWFjcm9MaWJyYXJ5XCI7XG5pbXBvcnQgRm9ybWF0dGVkVGV4dCBmcm9tIFwic2FwL20vRm9ybWF0dGVkVGV4dFwiO1xuaW1wb3J0IEhCb3ggZnJvbSBcInNhcC9tL0hCb3hcIjtcbmltcG9ydCBQYW5lbCBmcm9tIFwic2FwL20vUGFuZWxcIjtcbmltcG9ydCBUaXRsZSBmcm9tIFwic2FwL20vVGl0bGVcIjtcbmltcG9ydCBDb2RlRWRpdG9yIGZyb20gXCJzYXAvdWkvY29kZWVkaXRvci9Db2RlRWRpdG9yXCI7XG5pbXBvcnQgRnJhZ21lbnQgZnJvbSBcInNhcC91aS9jb3JlL0ZyYWdtZW50XCI7XG5pbXBvcnQgeyBUaXRsZUxldmVsIH0gZnJvbSBcInNhcC91aS9jb3JlL2xpYnJhcnlcIjtcbmltcG9ydCBYTUxQcmVwcm9jZXNzb3IgZnJvbSBcInNhcC91aS9jb3JlL3V0aWwvWE1MUHJlcHJvY2Vzc29yXCI7XG5mdW5jdGlvbiBwKHN0clZhbHVlOiBhbnkpIHtcblx0Y29uc3QgY29udGVudCA9IEFycmF5LmlzQXJyYXkoc3RyVmFsdWUuY2hpbGRyZW4pXG5cdFx0PyBzdHJWYWx1ZS5jaGlsZHJlblxuXHRcdFx0XHQubWFwKChjaGlsZDogYW55KSA9PiB7XG5cdFx0XHRcdFx0bGV0IG91dHB1dDtcblx0XHRcdFx0XHRpZiAodHlwZW9mIGNoaWxkID09PSBcInN0cmluZ1wiKSB7XG5cdFx0XHRcdFx0XHRvdXRwdXQgPSBjaGlsZDtcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0c3dpdGNoIChjaGlsZC5nZXRNZXRhZGF0YSgpLmdldE5hbWUoKSkge1xuXHRcdFx0XHRcdFx0XHRjYXNlIFwic2FwLm0uTGlua1wiOlxuXHRcdFx0XHRcdFx0XHRcdG91dHB1dCA9IGA8YSBocmVmPVwiJHtjaGlsZC5nZXRIcmVmKCl9XCI+JHtjaGlsZC5nZXRUZXh0KCl9PC9hPmA7XG5cdFx0XHRcdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdFx0XHRcdGNhc2UgXCJzYXAudWkuY29kZWVkaXRvci5Db2RlRWRpdG9yXCI6XG5cdFx0XHRcdFx0XHRcdFx0b3V0cHV0ID0gYDxjb2RlPiR7Y2hpbGQuZ2V0VmFsdWUoKX08L2NvZGU+YDtcblx0XHRcdFx0XHRcdFx0XHRicmVhaztcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cmV0dXJuIG91dHB1dDtcblx0XHRcdFx0fSlcblx0XHRcdFx0LmpvaW4oXCJcIilcblx0XHQ6IHN0clZhbHVlLmNoaWxkcmVuO1xuXHRyZXR1cm4gPEZvcm1hdHRlZFRleHQgaHRtbFRleHQ9e2NvbnRlbnR9IGNsYXNzPXtcInNhcFVpVGlueU1hcmdpbkJvdHRvbVwifSAvPjtcbn1cblxuZnVuY3Rpb24gaDEoc3RyVmFsdWU6IGFueSkge1xuXHRyZXR1cm4gPFRpdGxlIHRleHQ9e3N0clZhbHVlLmNoaWxkcmVufSBsZXZlbD17VGl0bGVMZXZlbC5IMX0gY2xhc3M9e1wic2FwVWlUaW55TWFyZ2luQm90dG9tXCJ9IC8+O1xufVxuZnVuY3Rpb24gYShzdHJWYWx1ZTogYW55KSB7XG5cdHJldHVybiBgPGEgaHJlZj17c3RyVmFsdWUuaHJlZn0+JHtzdHJWYWx1ZS5jaGlsZHJlbn08L2E+YDtcbn1cbmZ1bmN0aW9uIHVsKHN0clZhbHVlOiBhbnkpIHtcblx0Y29uc3QgdWxDb250ZW50ID0gYDx1bD4ke0FycmF5LmlzQXJyYXkoc3RyVmFsdWUuY2hpbGRyZW4pID8gc3RyVmFsdWUuY2hpbGRyZW4uam9pbihcIlwiKSA6IHN0clZhbHVlLmNoaWxkcmVufTwvdWw+YDtcblx0cmV0dXJuIDxGb3JtYXR0ZWRUZXh0IGh0bWxUZXh0PXt1bENvbnRlbnR9IC8+O1xufVxuZnVuY3Rpb24gbGkoc3RyVmFsdWU6IGFueSkge1xuXHRyZXR1cm4gYDxsaT4ke0FycmF5LmlzQXJyYXkoc3RyVmFsdWUuY2hpbGRyZW4pID8gc3RyVmFsdWUuY2hpbGRyZW4uam9pbihcIlwiKSA6IHN0clZhbHVlLmNoaWxkcmVufTwvbGk+YDtcbn1cbmZ1bmN0aW9uIGgyKHN0clZhbHVlOiBhbnkpIHtcblx0cmV0dXJuIDxUaXRsZSB0ZXh0PXtzdHJWYWx1ZS5jaGlsZHJlbn0gbGV2ZWw9e1RpdGxlTGV2ZWwuSDJ9IGNsYXNzPXtcInNhcFVpU21hbGxNYXJnaW5Ub3Agc2FwVWlUaW55TWFyZ2luQm90dG9tXCJ9IC8+O1xufVxuZnVuY3Rpb24gcHJlKGNvbnRlbnQ6IGFueSkge1xuXHRyZXR1cm4gY29udGVudC5jaGlsZHJlbjtcbn1cblxuZnVuY3Rpb24gQnVpbGRpbmdCbG9ja1BsYXlncm91bmQoaW5WYWx1ZTogYW55KSB7XG5cdGNvbnN0IHNvdXJjZUhCb3ggPSBjcmVhdGVSZWZlcmVuY2U8SEJveD4oKTtcblx0Y29uc3QgYmluZGluZyA9IGluVmFsdWUuYmluZGluZyA/IHsgcGF0aDogaW5WYWx1ZS5iaW5kaW5nIH0gOiB1bmRlZmluZWQ7XG5cdGNvbnN0IHRhcmdldCA9IChcblx0XHQ8UGFuZWwgaGVhZGVyVGV4dD17aW5WYWx1ZS5oZWFkZXJUZXh0IHx8IFwiXCJ9IGNsYXNzPXtcInNhcFVpU21hbGxNYXJnaW5Ub3BcIn0+XG5cdFx0XHQ8SEJveCByZWY9e3NvdXJjZUhCb3h9PjwvSEJveD5cblx0XHQ8L1BhbmVsPlxuXHQpO1xuXHQvLyBcdDxUYWJDb250YWluZXI+XG5cdC8vIFx0XHR7e1xuXHQvLyBcdFx0XHRpdGVtczogW1xuXHQvLyBcdFx0XHRcdDxUYWJDb250YWluZXJJdGVtIG5hbWU9e1wiU2FtcGxlXCJ9Pnt7IGNvbnRlbnQ6ICB9fSw8L1RhYkNvbnRhaW5lckl0ZW0+LFxuXHQvLyBcdFx0XHRcdDxUYWJDb250YWluZXJJdGVtIG5hbWU9e1wiU291cmNlXCJ9PlxuXHQvLyBcdFx0XHRcdFx0e3tcblx0Ly8gXHRcdFx0XHRcdFx0Y29udGVudDogKFxuXHQvLyBcdFx0XHRcdFx0XHRcdDxDb2RlQmxvY2sgZWRpdGFibGU9e2ZhbHNlfSBsaW5lTnVtYmVycz17dHJ1ZX0gdHlwZT17XCJ4bWxcIn0gbGluZUNvdW50PXsxMH0+XG5cdC8vIFx0XHRcdFx0XHRcdFx0XHR7aW5WYWx1ZS5jaGlsZHJlbn1cblx0Ly8gXHRcdFx0XHRcdFx0XHQ8L0NvZGVCbG9jaz5cblx0Ly8gXHRcdFx0XHRcdFx0KVxuXHQvLyBcdFx0XHRcdFx0fX1cblx0Ly8gXHRcdFx0XHQ8L1RhYkNvbnRhaW5lckl0ZW0+XG5cdC8vIFx0XHRcdF1cblx0Ly8gXHRcdH19XG5cdC8vIFx0PC9UYWJDb250YWluZXI+XG5cdC8vICk7XG5cdGlmIChiaW5kaW5nKSB7XG5cdFx0dGFyZ2V0LmJpbmRFbGVtZW50KGJpbmRpbmcpO1xuXHR9XG5cdG1hY3JvTGlicmFyeS5yZWdpc3RlcigpO1xuXHRjb25zdCBmcmFnbWVudE9yUHJvbWlzZSA9IFhNTFByZXByb2Nlc3Nvci5wcm9jZXNzKFxuXHRcdHBhcnNlWE1MU3RyaW5nKGA8cm9vdD4ke2luVmFsdWUuY2hpbGRyZW59PC9yb290PmAsIHRydWUpLFxuXHRcdHsgbmFtZTogXCJteUJ1aWxkaW5nQmxvY2tGcmFnbWVudFwiIH0sXG5cdFx0TURYVmlld0xvYWRlci5wcmVwcm9jZXNzb3JEYXRhXG5cdCk7XG5cdFByb21pc2UucmVzb2x2ZShmcmFnbWVudE9yUHJvbWlzZSlcblx0XHQudGhlbigoZnJhZ21lbnQ6IEVsZW1lbnQpID0+IHtcblx0XHRcdHJldHVybiBGcmFnbWVudC5sb2FkKHsgZGVmaW5pdGlvbjogZnJhZ21lbnQuZmlyc3RFbGVtZW50Q2hpbGQgYXMgYW55LCBjb250cm9sbGVyOiBNRFhWaWV3TG9hZGVyLmNvbnRyb2xsZXIgfSk7XG5cdFx0fSlcblx0XHQudGhlbigoZnJhZ21lbnRDb250ZW50OiBhbnkpID0+IHtcblx0XHRcdHNvdXJjZUhCb3guY3VycmVudC5yZW1vdmVBbGxJdGVtcygpO1xuXHRcdFx0c291cmNlSEJveC5jdXJyZW50LmFkZEl0ZW0oZnJhZ21lbnRDb250ZW50KTtcblx0XHR9KVxuXHRcdC5jYXRjaCgoZXJyOiBhbnkpID0+IHtcblx0XHRcdExvZy5lcnJvcihlcnIpO1xuXHRcdH0pO1xuXHRyZXR1cm4gdGFyZ2V0O1xufVxuZnVuY3Rpb24gQ29kZUJsb2NrKGluVmFsdWU6IGFueSkge1xuXHRjb25zdCBzbmlwcGV0ID0gaW5WYWx1ZS5jaGlsZHJlbj8udHJpbSgpIHx8IFwiXCI7XG5cdGNvbnN0IGxpbmVDb3VudCA9IGluVmFsdWUubGluZUNvdW50IHx8IE1hdGgubWF4KHNuaXBwZXQuc3BsaXQoXCJcXG5cIik/Lmxlbmd0aCwgMyk7XG5cdGNvbnN0IHR5cGUgPSBpblZhbHVlLnR5cGUgfHwgaW5WYWx1ZT8uY2xhc3NOYW1lPy5zcGxpdChcIi1cIilbMV0gfHwgXCJqc1wiO1xuXHRjb25zdCBteUNvZGVFZGl0b3IgPSAoXG5cdFx0PENvZGVFZGl0b3Jcblx0XHRcdGNsYXNzPVwic2FwVWlUaW55TWFyZ2luXCJcblx0XHRcdGxpbmVOdW1iZXJzPXtpblZhbHVlLmxpbmVOdW1iZXJzIHx8IGZhbHNlfVxuXHRcdFx0dHlwZT17dHlwZX1cblx0XHRcdGVkaXRhYmxlPXtpblZhbHVlLmVkaXRhYmxlIHx8IGZhbHNlfVxuXHRcdFx0bWF4TGluZXM9e2xpbmVDb3VudH1cblx0XHRcdGhlaWdodD17XCJhdXRvXCJ9XG5cdFx0XHR3aWR0aD17XCI5OCVcIn1cblx0XHQ+PC9Db2RlRWRpdG9yPlxuXHQpO1xuXHRteUNvZGVFZGl0b3Iuc2V0VmFsdWUoc25pcHBldCk7XG5cdGlmIChpblZhbHVlLnNvdXJjZSkge1xuXHRcdGZldGNoKGluVmFsdWUuc291cmNlKVxuXHRcdFx0LnRoZW4oKHJlcykgPT4gcmVzLnRleHQoKSlcblx0XHRcdC50aGVuKCh0ZXh0KSA9PiB7XG5cdFx0XHRcdGNvbnN0IG5ld0xpbmVDb3VudCA9IE1hdGgubWF4KHRleHQuc3BsaXQoXCJcXG5cIik/Lmxlbmd0aCwgMyk7XG5cdFx0XHRcdG15Q29kZUVkaXRvci5zZXRNYXhMaW5lcyhuZXdMaW5lQ291bnQpO1xuXHRcdFx0XHRteUNvZGVFZGl0b3Iuc2V0VmFsdWUodGV4dCk7XG5cdFx0XHR9KVxuXHRcdFx0LmNhdGNoKChlKSA9PiB7XG5cdFx0XHRcdG15Q29kZUVkaXRvci5zZXRWYWx1ZShlLm1lc3NhZ2UpO1xuXHRcdFx0fSk7XG5cdH1cblx0cmV0dXJuIG15Q29kZUVkaXRvcjtcbn1cblxuY29uc3QgcHJvdmlkZUNvbXBvbmVuZW50cyA9IGZ1bmN0aW9uICgpIHtcblx0cmV0dXJuIHtcblx0XHRwOiBwLFxuXHRcdGE6IGEsXG5cdFx0aDE6IGgxLFxuXHRcdGgyOiBoMixcblx0XHR1bDogdWwsXG5cdFx0bGk6IGxpLFxuXHRcdHByZTogcHJlLFxuXHRcdGNvZGU6IENvZGVCbG9jayxcblx0XHRDb2RlQmxvY2s6IENvZGVCbG9jayxcblx0XHRCdWlsZGluZ0Jsb2NrUGxheWdyb3VuZDogQnVpbGRpbmdCbG9ja1BsYXlncm91bmRcblx0fTtcbn07XG5leHBvcnQgZGVmYXVsdCBwcm92aWRlQ29tcG9uZW5lbnRzO1xuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7OztFQWFBLFNBQVNBLENBQVQsQ0FBV0MsUUFBWCxFQUEwQjtJQUN6QixJQUFNQyxPQUFPLEdBQUdDLEtBQUssQ0FBQ0MsT0FBTixDQUFjSCxRQUFRLENBQUNJLFFBQXZCLElBQ2JKLFFBQVEsQ0FBQ0ksUUFBVCxDQUNDQyxH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
@@ -0,0 +1,150 @@
1
+ import Log from "sap/base/Log";
2
+ import { parseXMLString } from "sap/fe/core/buildingBlocks/BuildingBlockRuntime";
3
+ import { createReference } from "sap/fe/core/helpers/ClassSupport";
4
+ import MDXViewLoader from "sap/fe/core/jsx-runtime/ViewLoader";
5
+ import macroLibrary from "sap/fe/macros/macroLibrary";
6
+ import FormattedText from "sap/m/FormattedText";
7
+ import HBox from "sap/m/HBox";
8
+ import Panel from "sap/m/Panel";
9
+ import Title from "sap/m/Title";
10
+ import CodeEditor from "sap/ui/codeeditor/CodeEditor";
11
+ import Fragment from "sap/ui/core/Fragment";
12
+ import { TitleLevel } from "sap/ui/core/library";
13
+ import XMLPreprocessor from "sap/ui/core/util/XMLPreprocessor";
14
+ function p(strValue: any) {
15
+ const content = Array.isArray(strValue.children)
16
+ ? strValue.children
17
+ .map((child: any) => {
18
+ let output;
19
+ if (typeof child === "string") {
20
+ output = child;
21
+ } else {
22
+ switch (child.getMetadata().getName()) {
23
+ case "sap.m.Link":
24
+ output = `<a href="${child.getHref()}">${child.getText()}</a>`;
25
+ break;
26
+ case "sap.ui.codeeditor.CodeEditor":
27
+ output = `<code>${child.getValue()}</code>`;
28
+ break;
29
+ }
30
+ }
31
+ return output;
32
+ })
33
+ .join("")
34
+ : strValue.children;
35
+ return <FormattedText htmlText={content} class={"sapUiTinyMarginBottom"} />;
36
+ }
37
+
38
+ function h1(strValue: any) {
39
+ return <Title text={strValue.children} level={TitleLevel.H1} class={"sapUiTinyMarginBottom"} />;
40
+ }
41
+ function a(strValue: any) {
42
+ return `<a href={strValue.href}>${strValue.children}</a>`;
43
+ }
44
+ function ul(strValue: any) {
45
+ const ulContent = `<ul>${Array.isArray(strValue.children) ? strValue.children.join("") : strValue.children}</ul>`;
46
+ return <FormattedText htmlText={ulContent} />;
47
+ }
48
+ function li(strValue: any) {
49
+ return `<li>${Array.isArray(strValue.children) ? strValue.children.join("") : strValue.children}</li>`;
50
+ }
51
+ function h2(strValue: any) {
52
+ return <Title text={strValue.children} level={TitleLevel.H2} class={"sapUiSmallMarginTop sapUiTinyMarginBottom"} />;
53
+ }
54
+ function pre(content: any) {
55
+ return content.children;
56
+ }
57
+
58
+ function BuildingBlockPlayground(inValue: any) {
59
+ const sourceHBox = createReference<HBox>();
60
+ const binding = inValue.binding ? { path: inValue.binding } : undefined;
61
+ const target = (
62
+ <Panel headerText={inValue.headerText || ""} class={"sapUiSmallMarginTop"}>
63
+ <HBox ref={sourceHBox}></HBox>
64
+ </Panel>
65
+ );
66
+ // <TabContainer>
67
+ // {{
68
+ // items: [
69
+ // <TabContainerItem name={"Sample"}>{{ content: }},</TabContainerItem>,
70
+ // <TabContainerItem name={"Source"}>
71
+ // {{
72
+ // content: (
73
+ // <CodeBlock editable={false} lineNumbers={true} type={"xml"} lineCount={10}>
74
+ // {inValue.children}
75
+ // </CodeBlock>
76
+ // )
77
+ // }}
78
+ // </TabContainerItem>
79
+ // ]
80
+ // }}
81
+ // </TabContainer>
82
+ // );
83
+ if (binding) {
84
+ target.bindElement(binding);
85
+ }
86
+ macroLibrary.register();
87
+ const fragmentOrPromise = XMLPreprocessor.process(
88
+ parseXMLString(`<root>${inValue.children}</root>`, true),
89
+ { name: "myBuildingBlockFragment" },
90
+ MDXViewLoader.preprocessorData
91
+ );
92
+ Promise.resolve(fragmentOrPromise)
93
+ .then((fragment: Element) => {
94
+ return Fragment.load({ definition: fragment.firstElementChild as any, controller: MDXViewLoader.controller });
95
+ })
96
+ .then((fragmentContent: any) => {
97
+ sourceHBox.current.removeAllItems();
98
+ sourceHBox.current.addItem(fragmentContent);
99
+ })
100
+ .catch((err: any) => {
101
+ Log.error(err);
102
+ });
103
+ return target;
104
+ }
105
+ function CodeBlock(inValue: any) {
106
+ const snippet = inValue.children?.trim() || "";
107
+ const lineCount = inValue.lineCount || Math.max(snippet.split("\n")?.length, 3);
108
+ const type = inValue.type || inValue?.className?.split("-")[1] || "js";
109
+ const myCodeEditor = (
110
+ <CodeEditor
111
+ class="sapUiTinyMargin"
112
+ lineNumbers={inValue.lineNumbers || false}
113
+ type={type}
114
+ editable={inValue.editable || false}
115
+ maxLines={lineCount}
116
+ height={"auto"}
117
+ width={"98%"}
118
+ ></CodeEditor>
119
+ );
120
+ myCodeEditor.setValue(snippet);
121
+ if (inValue.source) {
122
+ fetch(inValue.source)
123
+ .then((res) => res.text())
124
+ .then((text) => {
125
+ const newLineCount = Math.max(text.split("\n")?.length, 3);
126
+ myCodeEditor.setMaxLines(newLineCount);
127
+ myCodeEditor.setValue(text);
128
+ })
129
+ .catch((e) => {
130
+ myCodeEditor.setValue(e.message);
131
+ });
132
+ }
133
+ return myCodeEditor;
134
+ }
135
+
136
+ const provideComponenents = function () {
137
+ return {
138
+ p: p,
139
+ a: a,
140
+ h1: h1,
141
+ h2: h2,
142
+ ul: ul,
143
+ li: li,
144
+ pre: pre,
145
+ code: CodeBlock,
146
+ CodeBlock: CodeBlock,
147
+ BuildingBlockPlayground: BuildingBlockPlayground
148
+ };
149
+ };
150
+ export default provideComponenents;
@@ -68,7 +68,7 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/formatters/FPMFormatter", "sap/fe/co
68
68
  controls: [],
69
69
  elements: [],
70
70
  // eslint-disable-next-line no-template-curly-in-string
71
- version: "1.103.0",
71
+ version: "1.106.0",
72
72
  noLibraryCSS: true,
73
73
  extensions: {
74
74
  //Configuration used for rule loading of Support Assistant
@@ -474,4 +474,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/formatters/FPMFormatter", "sap/fe/co
474
474
  ServiceFactoryRegistry.register("sap.fe.core.services.AsyncComponentService", new AsyncComponentServiceFactory());
475
475
  return thisLib;
476
476
  }, false);
477
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYnJhcnkudHMiXSwibmFtZXMiOlsidGhpc0xpYiIsIkNvcmUiLCJpbml0TGlicmFyeSIsIm5hbWUiLCJkZXBlbmRlbmNpZXMiLCJ0eXBlcyIsImludGVyZmFjZXMiLCJjb250cm9scyIsImVsZW1lbnRzIiwidmVyc2lvbiIsIm5vTGlicmFyeUNTUyIsImV4dGVuc2lvbnMiLCJwdWJsaWNSdWxlcyIsImludGVybmFsUnVsZXMiLCJmbENoYW5nZUhhbmRsZXJzIiwiSW52b2NhdGlvbkdyb3VwaW5nIiwiSXNvbGF0ZWQiLCJDaGFuZ2VTZXQiLCJDcmVhdGlvbk1vZGUiLCJOZXdQYWdlIiwiU3luYyIsIkFzeW5jIiwiRGVmZXJyZWQiLCJJbmxpbmUiLCJDcmVhdGlvblJvdyIsIklubGluZUNyZWF0aW9uUm93cyIsIkV4dGVybmFsIiwiVmFyaWFudE1hbmFnZW1lbnQiLCJOb25lIiwiUGFnZSIsIkNvbnRyb2wiLCJDb25zdGFudHMiLCJDYW5jZWxBY3Rpb25EaWFsb2ciLCJQcm9ncmFtbWluZ01vZGVsIiwiRHJhZnQiLCJTdGlja3kiLCJOb25EcmFmdCIsIkRyYWZ0U3RhdHVzIiwiU2F2aW5nIiwiU2F2ZWQiLCJDbGVhciIsIkVkaXRNb2RlIiwiRGlzcGxheSIsIkVkaXRhYmxlIiwiVGVtcGxhdGVDb250ZW50VmlldyIsIkh5YnJpZCIsIkNoYXJ0IiwiVGFibGUiLCJJbml0aWFsTG9hZE1vZGUiLCJFbmFibGVkIiwiRGlzYWJsZWQiLCJBdXRvIiwiU3RhcnR1cE1vZGUiLCJOb3JtYWwiLCJEZWVwbGluayIsIkNyZWF0ZSIsIkluaXRpYWxMb2FkVHlwZSIsIkRhdGFUeXBlIiwiY3JlYXRlVHlwZSIsImRlZmF1bHRWYWx1ZSIsImlzVmFsaWQiLCJ2VmFsdWUiLCJMb2ciLCJ3YXJuaW5nIiwidW5kZWZpbmVkIiwiaGFzT3duUHJvcGVydHkiLCJzZXROb3JtYWxpemVyIiwiU2VydmljZUZhY3RvcnlSZWdpc3RyeSIsInJlZ2lzdGVyIiwiVGVtcGxhdGVkVmlld1NlcnZpY2VGYWN0b3J5IiwiUmVzb3VyY2VNb2RlbFNlcnZpY2VGYWN0b3J5IiwiQ2FjaGVIYW5kbGVyU2VydmljZUZhY3RvcnkiLCJOYXZpZ2F0aW9uU2VydmljZSIsIlJvdXRpbmdTZXJ2aWNlRmFjdG9yeSIsIlNpZGVFZmZlY3RzU2VydmljZUZhY3RvcnkiLCJTaGVsbFNlcnZpY2VzRmFjdG9yeSIsIkVudmlyb25tZW50U2VydmljZUZhY3RvcnkiLCJBc3luY0NvbXBvbmVudFNlcnZpY2VGYWN0b3J5Il0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7O0FBcUJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNQSxPQUFPLEdBQUdDLElBQUksQ0FBQ0MsV0FBTCxDQUFpQjtBQUNoQ0MsSUFBQUEsSUFBSSxFQUFFLGFBRDBCO0FBRWhDQyxJQUFBQSxZQUFZLEVBQUUsQ0FBQyxhQUFELEVBQWdCLG1CQUFoQixFQUFxQyxvQkFBckMsRUFBMkQsV0FBM0QsRUFBd0UsWUFBeEUsQ0FGa0I7QUFHaENDLElBQUFBLEtBQUssRUFBRSxDQUFDLDBCQUFELEVBQTZCLCtCQUE3QixDQUh5QjtBQUloQ0MsSUFBQUEsVUFBVSxFQUFFLEVBSm9CO0FBS2hDQyxJQUFBQSxRQUFRLEVBQUUsRUFMc0I7QUFNaENDLElBQUFBLFFBQVEsRUFBRSxFQU5zQjtBQU9oQztBQUNBQyxJQUFBQSxPQUFPLEVBQUUsWUFSdUI7QUFTaENDLElBQUFBLFlBQVksRUFBRSxJQVRrQjtBQVVoQ0MsSUFBQUEsVUFBVSxFQUFFO0FBQ1g7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SUFBSUMsMkJBQUosRUFBN0U7QUFDQUYsRUFBQUEsc0JBQXNCLENBQUNDLFFBQXZCLENBQWdDLDJDQUFoQyxFQUE2RSxJQUFJRSwyQkFBSixFQUE3RTtBQUNBSCxFQUFBQSxzQkFBc0IsQ0FBQ0MsUUFBdkIsQ0FBZ0MsMENBQWhDLEVBQTRFLElBQUlHLDBCQUFKLEVBQTVFO0FBQ0FKLEVBQUFBLHNCQUFzQixDQUFDQyxRQUF2QixDQUFnQyx3Q0FBaEMsRUFBMEUsSUFBSUksaUJBQUosRUFBMUU7QUFDQUwsRUFBQUEsc0JBQXNCLENBQUNDLFFBQXZCLENBQWdDLHFDQUFoQyxFQUF1RSxJQUFJSyxxQkFBSixFQUF2RTtBQUNBTixFQUFBQSxzQkFBc0IsQ0FBQ0MsUUFBdkIsQ0FBZ0MseUNBQWhDLEVBQTJFLElBQUlNLHlCQUFKLEVBQTNFO0FBQ0FQLEVBQUFBLHNCQUFzQixDQUFDQyxRQUF2QixDQUFnQyxvQ0FBaEMsRUFBc0UsSUFBSU8sb0JBQUosRUFBdEU7QUFDQVIsRUFBQUEsc0JBQXNCLENBQUNDLFFBQXZCLENBQWdDLHlDQUFoQyxFQUEyRSxJQUFJUSx5QkFBSixFQUEzRTtBQUNBVCxFQUFBQSxzQkFBc0IsQ0FBQ0MsUUFBdkIsQ0FBZ0MsNENBQWhDLEVBQThFLElBQUlTLDRCQUFKLEVBQTlFO1NBRWU3RSxPIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBcInNhcC9mZS9jb3JlL2Zvcm1hdHRlcnMvRlBNRm9ybWF0dGVyXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS9mb3JtYXR0ZXJzL1N0YW5kYXJkRm9ybWF0dGVyXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS9mb3JtYXR0ZXJzL1ZhbHVlRm9ybWF0dGVyXCI7XG5pbXBvcnQgQXN5bmNDb21wb25lbnRTZXJ2aWNlRmFjdG9yeSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvQXN5bmNDb21wb25lbnRTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IENhY2hlSGFuZGxlclNlcnZpY2VGYWN0b3J5IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9DYWNoZUhhbmRsZXJTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IEVudmlyb25tZW50U2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL0Vudmlyb25tZW50U2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBOYXZpZ2F0aW9uU2VydmljZSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvTmF2aWdhdGlvblNlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgUmVzb3VyY2VNb2RlbFNlcnZpY2VGYWN0b3J5IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9SZXNvdXJjZU1vZGVsU2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBSb3V0aW5nU2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL1JvdXRpbmdTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IFNoZWxsU2VydmljZXNGYWN0b3J5IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9TaGVsbFNlcnZpY2VzRmFjdG9yeVwiO1xuaW1wb3J0IFNpZGVFZmZlY3RzU2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL1NpZGVFZmZlY3RzU2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBUZW1wbGF0ZWRWaWV3U2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL1RlbXBsYXRlZFZpZXdTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IFwic2FwL2ZlL2NvcmUvdHlwZS9EYXRlVGltZVdpdGhUaW1lem9uZVwiO1xuaW1wb3J0IFwic2FwL2ZlL2NvcmUvdHlwZS9FbWFpbFwiO1xuaW1wb3J0IFwic2FwL2ZlL25hdmlnYXRpb24vbGlicmFyeVwiO1xuaW1wb3J0IFwic2FwL2ZlL3BsYWNlaG9sZGVyL2xpYnJhcnlcIjtcbmltcG9ydCBEYXRhVHlwZSBmcm9tIFwic2FwL3VpL2Jhc2UvRGF0YVR5cGVcIjtcbmltcG9ydCBDb3JlIGZyb20gXCJzYXAvdWkvY29yZS9Db3JlXCI7XG5pbXBvcnQgXCJzYXAvdWkvY29yZS9saWJyYXJ5XCI7XG5pbXBvcnQgU2VydmljZUZhY3RvcnlSZWdpc3RyeSBmcm9tIFwic2FwL3VpL2NvcmUvc2VydmljZS9TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5XCI7XG5pbXBvcnQgXCJzYXAvdWkvZmwvbGlicmFyeVwiO1xuaW1wb3J0IFwic2FwL3VpL21kYy9saWJyYXJ5XCI7XG4vKipcbiAqIFJvb3QgbmFtZXNwYWNlIGZvciBhbGwgdGhlIGxpYnJhcmllcyByZWxhdGVkIHRvIFNBUCBGaW9yaSBlbGVtZW50cy5cbiAqXG4gKiBAbmFtZXNwYWNlXG4gKiBAbmFtZSBzYXAuZmVcbiAqIEBwdWJsaWNcbiAqL1xuXG4vKipcbiAqIExpYnJhcnkgcHJvdmlkaW5nIHRoZSBjb3JlIGZ1bmN0aW9uYWxpdHkgb2YgdGhlIHJ1bnRpbWUgZm9yIFNBUCBGaW9yaSBlbGVtZW50cyBmb3IgT0RhdGEgVjQuXG4gKlxuICogQG5hbWVzcGFjZVxuICogQG5hbWUgc2FwLmZlLmNvcmVcbiAqIEBwdWJsaWNcbiAqL1xuXG4vKipcbiAqIENvbGxlY3Rpb24gb2YgY29udHJvbGxlciBleHRlbnNpb25zIHVzZWQgaW50ZXJuYWxseSBpbiBTQVAgRmlvcmkgZWxlbWVudHMgZXhwb3NpbmcgYSBtZXRob2QgdGhhdCB5b3UgY2FuIG92ZXJyaWRlIHRvIGFsbG93IG1vcmUgZmxleGliaWxpdHkuXG4gKlxuICogQG5hbWVzcGFjZVxuICogQG5hbWUgc2FwLmZlLmNvcmUuY29udHJvbGxlcmV4dGVuc2lvbnNcbiAqIEBwdWJsaWNcbiAqL1xuXG4vKipcbiAqIENvbGxlY3Rpb24gb2YgY2xhc3NlcyBwcm92aWRlZCBieSBTQVAgRmlvcmkgZWxlbWVudHMgZm9yIHRoZSBGbGV4aWJsZSBQcm9ncmFtbWluZyBNb2RlbFxuICpcbiAqIEBuYW1lc3BhY2VcbiAqIEBuYW1lIHNhcC5mZS5jb3JlLmZwbVxuICogQHB1YmxpY1xuICovXG5cbi8qKlxuICogQG5hbWVzcGFjZVxuICogQG5hbWUgc2FwLmZlLmNvcmUuYWN0aW9uc1xuICogQHByaXZhdGVcbiAqL1xuXG4vKipcbiAqIEBuYW1lc3BhY2VcbiAqIEBuYW1lIHNhcC5mZS5jb21tb25cbiAqIEBwcml2YXRlXG4gKi9cblxuLyoqXG4gKiBAbmFtZXNwYWNlXG4gKiBAbmFtZSBzYXAuZmUuY29yZS5tb2RlbFxuICogQHByaXZhdGVcbiAqL1xuXG4vKipcbiAqIEBuYW1lc3BhY2VcbiAqIEBuYW1lIHNhcC5mZS5jb3JlLm5hdmlnYXRpb25cbiAqIEBwcml2YXRlXG4gKi9cbmNvbnN0IHRoaXNMaWIgPSBDb3JlLmluaXRMaWJyYXJ5KHtcblx0bmFtZTogXCJzYXAuZmUuY29yZVwiLFxuXHRkZXBlbmRlbmNpZXM6IFtcInNhcC51aS5jb3JlXCIsIFwic2FwLmZlLm5hdmlnYXRpb25cIiwgXCJzYXAuZmUucGxhY2Vob2xkZXJcIiwgXCJzYXAudWkuZmxcIiwgXCJzYXAudWkubWRjXCJdLFxuXHR0eXBlczogW1wic2FwLmZlLmNvcmUuQ3JlYXRpb25Nb2RlXCIsIFwic2FwLmZlLmNvcmUuVmFyaWFudE1hbmFnZW1lbnRcIl0sXG5cdGludGVyZmFjZXM6IFtdLFxuXHRjb250cm9sczogW10sXG5cdGVsZW1lbnRzOiBbXSxcblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXRlbXBsYXRlLWN1cmx5LWluLXN0cmluZ1xuXHR2ZXJzaW9uOiBcIiR7dmVyc2lvbn1cIixcblx0bm9MaWJyYXJ5Q1NTOiB0cnVlLFxuXHRleHRlbnNpb25zOiB7XG5cdFx0Ly9Db25maWd1cmF0aW9uIHVzZWQgZm9yIHJ1bGUgbG9hZGluZyBvZiBTdXBwb3J0IEFzc2lzdGFudFxuXHRcdFwic2FwLnVpLnN1cHBvcnRcIjoge1xuXHRcdFx0cHVibGljUnVsZXM6IHRydWUsXG5cdFx0XHRpbnRlcm5hbFJ1bGVzOiB0cnVlXG5cdFx0fSxcblx0XHRmbENoYW5nZUhhbmRsZXJzOiB7XG5cdFx0XHRcInNhcC5mZS5jb3JlLmNvbnRyb2xzLkZpbHRlckJhclwiOiBcInNhcC91aS9tZGMvZmxleGliaWxpdHkvRmlsdGVyQmFyXCJcblx0XHR9XG5cdH1cbn0pIGFzIGFueTtcblxuLyoqXG4gKiBBdmFpbGFibGUgdmFsdWVzIGZvciBpbnZvY2F0aW9uIGdyb3VwaW5nLlxuICpcbiAqIEByZWFkb25seVxuICogQGVudW0ge3N0cmluZ31cbiAqIEBwcml2YXRlXG4gKi9cbnRoaXNMaWIuSW52b2NhdGlvbkdyb3VwaW5nID0ge1xuXHQvKipcblx0ICogSXNvbGF0ZWQuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRJc29sYXRlZDogXCJJc29sYXRlZFwiLFxuXHQvKipcblx0ICogQ2hhbmdlU2V0LlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Q2hhbmdlU2V0OiBcIkNoYW5nZVNldFwiXG59O1xuLyoqXG4gKiBBdmFpbGFibGUgdmFsdWVzIGZvciBjcmVhdGlvbiBtb2RlLlxuICpcbiAqIEByZWFkb25seVxuICogQGVudW0ge3N0cmluZ31cbiAqIEBwcml2YXRlXG4gKi9cbnRoaXNMaWIuQ3JlYXRpb25Nb2RlID0ge1xuXHQvKipcblx0ICogTmV3IFBhZ2UuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHROZXdQYWdlOiBcIk5ld1BhZ2VcIixcblx0LyoqXG5cdCAqIFN5bmMuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRTeW5jOiBcIlN5bmNcIixcblx0LyoqXG5cdCAqIEFzeW5jLlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QXN5bmM6IFwiQXN5bmNcIixcblx0LyoqXG5cdCAqIERlZmVycmVkLlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0RGVmZXJyZWQ6IFwiRGVmZXJyZWRcIixcblx0LyoqXG5cdCAqIElubGluZS5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdElubGluZTogXCJJbmxpbmVcIixcblx0LyoqXG5cdCAqIENyZWF0aW9uIHJvdy5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdENyZWF0aW9uUm93OiBcIkNyZWF0aW9uUm93XCIsXG5cdC8qKlxuXHQgKiBJbmxpbmUgY3JlYXRpb24gcm93cy5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdElubGluZUNyZWF0aW9uUm93czogXCJJbmxpbmVDcmVhdGlvblJvd3NcIixcblx0LyoqXG5cdCAqIEV4dGVybmFsIChieSBvdXRib3VuZCBuYXZpZ2F0aW9uKS5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEV4dGVybmFsOiBcIkV4dGVybmFsXCJcbn07XG4vKipcbiAqIEF2YWlsYWJsZSB2YWx1ZXMgZm9yIFZhcmlhbnQgTWFuYWdlbWVudC5cbiAqXG4gKiBAcmVhZG9ubHlcbiAqIEBlbnVtIHtzdHJpbmd9XG4gKiBAcHJpdmF0ZVxuICovXG50aGlzTGliLlZhcmlhbnRNYW5hZ2VtZW50ID0ge1xuXHQvKipcblx0ICogTm8gdmFyaWFudCBtYW5hZ2VtZW50IGF0IGFsbC5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdE5vbmU6IFwiTm9uZVwiLFxuXG5cdC8qKlxuXHQgKiBPbmUgdmFyaWFudCBjb25maWd1cmF0aW9uIGZvciB0aGUgd2hvbGUgcGFnZS5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdFBhZ2U6IFwiUGFnZVwiLFxuXG5cdC8qKlxuXHQgKiBWYXJpYW50IG1hbmFnZW1lbnQgb24gY29udHJvbCBsZXZlbC5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdENvbnRyb2w6IFwiQ29udHJvbFwiXG59O1xuLyoqXG4gKiBBdmFpbGFibGUgY29uc3RhbnRzLlxuICpcbiAqIEByZWFkb25seVxuICogQGVudW0ge3N0cmluZ31cbiAqIEBwcml2YXRlXG4gKi9cbnRoaXNMaWIuQ29uc3RhbnRzID0ge1xuXHQvKipcblx0ICogSW5kaWNhdGVzIGNhbmNlbGxpbmcgb2YgYW4gYWN0aW9uIGRpYWxvZy5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdENhbmNlbEFjdGlvbkRpYWxvZzogXCJjYW5jZWxcIlxufTtcbi8qKlxuICogQXZhaWxhYmxlIHZhbHVlcyBmb3IgcHJvZ3JhbW1pbmcgbW9kZWwuXG4gKlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICogQHByaXZhdGVcbiAqL1xudGhpc0xpYi5Qcm9ncmFtbWluZ01vZGVsID0ge1xuXHQvKipcblx0ICogRHJhZnQuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHREcmFmdDogXCJEcmFmdFwiLFxuXHQvKipcblx0ICogU3RpY2t5LlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0U3RpY2t5OiBcIlN0aWNreVwiLFxuXHQvKipcblx0ICogTm9uRHJhZnQuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHROb25EcmFmdDogXCJOb25EcmFmdFwiXG59O1xuLyoqXG4gKiBBdmFpbGFibGUgdmFsdWVzIGZvciBkcmFmdCBzdGF0dXMuXG4gKlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICogQHByaXZhdGVcbiAqL1xudGhpc0xpYi5EcmFmdFN0YXR1cyA9IHtcblx0LyoqXG5cdCAqIFNhdmluZy5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdFNhdmluZzogXCJTYXZpbmdcIixcblx0LyoqXG5cdCAqIFNhdmVkLlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0U2F2ZWQ6IFwiU2F2ZWRcIixcblx0LyoqXG5cdCAqIENsZWFyLlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Q2xlYXI6IFwiQ2xlYXJcIlxufTtcbi8qKlxuICogRWRpdCBtb2RlIHZhbHVlcy5cbiAqXG4gKiBAcmVhZG9ubHlcbiAqIEBlbnVtIHtzdHJpbmd9XG4gKiBAcHJpdmF0ZVxuICovXG50aGlzTGliLkVkaXRNb2RlID0ge1xuXHQvKipcblx0ICogVmlldyBpcyBjdXJyZW50bHkgZGlzcGxheWluZyBvbmx5LlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0RGlzcGxheTogXCJEaXNwbGF5XCIsXG5cdC8qKlxuXHQgKiBWaWV3IGlzIGN1cnJlbnRseSBlZGl0YWJsZS5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEVkaXRhYmxlOiBcIkVkaXRhYmxlXCJcbn07XG4vKipcbiAqIFRlbXBsYXRlIHZpZXdzLlxuICpcbiAqIEByZWFkb25seVxuICogQGVudW0ge3N0cmluZ31cbiAqIEBwcml2YXRlXG4gKi9cbnRoaXNMaWIuVGVtcGxhdGVDb250ZW50VmlldyA9IHtcblx0LyoqXG5cdCAqIEh5YnJpZC5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqL1xuXHRIeWJyaWQ6IFwiSHlicmlkXCIsXG5cdC8qKlxuXHQgKiBDaGFydC5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqL1xuXHRDaGFydDogXCJDaGFydFwiLFxuXHQvKipcblx0ICogVGFibGUuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKi9cblx0VGFibGU6IFwiVGFibGVcIlxufTtcbi8qKlxuICogUG9zc2libGUgaW5pdGlhbCBsb2FkIChmaXJzdCBhcHAgc3RhcnR1cCkgbW9kZXMgZm9yIGEgTGlzdFJlcG9ydC5cbiAqXG4gKiBAZW51bSB7c3RyaW5nfVxuICogQG5hbWUgc2FwLmZlLmNvcmUuSW5pdGlhbExvYWRNb2RlXG4gKiBAcmVhZG9ubHlcbiAqIEBwdWJsaWNcbiAqIEBzaW5jZSAxLjg2LjBcbiAqL1xudGhpc0xpYi5Jbml0aWFsTG9hZE1vZGUgPSB7XG5cdC8qKlxuXHQgKiBEYXRhIHdpbGwgYmUgbG9hZGVkIGluaXRpYWxseS5cblx0ICpcblx0ICogQG5hbWUgc2FwLmZlLmNvcmUuSW5pdGlhbExvYWRNb2RlLkVuYWJsZWRcblx0ICogQHB1YmxpY1xuXHQgKi9cblx0RW5hYmxlZDogXCJFbmFibGVkXCIsXG5cblx0LyoqXG5cdCAqIERhdGEgd2lsbCBub3QgYmUgbG9hZGVkIGluaXRpYWxseS5cblx0ICpcblx0ICogQG5hbWUgc2FwLmZlLmNvcmUuSW5pdGlhbExvYWRNb2RlLkRpc2FibGVkXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdERpc2FibGVkOiBcIkRpc2FibGVkXCIsXG5cblx0LyoqXG5cdCAqIERhdGEgd2lsbCBiZSBsb2FkZWQgaW5pdGlhbGx5IGlmIGZpbHRlcnMgYXJlIHNldC5cblx0ICpcblx0ICogQG5hbWUgc2FwLmZlLmNvcmUuSW5pdGlhbExvYWRNb2RlLkF1dG9cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QXV0bzogXCJBdXRvXCJcbn07XG5cbi8qKlxuICogVmFsdWUgb2YgdGhlIHN0YXJ0dXAgbW9kZVxuICpcbiAqIEByZWFkb25seVxuICogQGVudW0ge3N0cmluZ31cbiAqIEBwcml2YXRlXG4gKi9cbnRoaXNMaWIuU3RhcnR1cE1vZGUgPSB7XG5cdC8qKlxuXHQgKiBBcHAgaGFzIGJlZW4gc3RhcnRlZCBub3JtYWxseS5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqL1xuXHROb3JtYWw6IFwiTm9ybWFsXCIsXG5cdC8qKlxuXHQgKiBBcHAgaGFzIGJlZW4gc3RhcnRlZCB3aXRoIHN0YXJ0dXAga2V5cyAoZGVlcGxpbmspLlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICovXG5cdERlZXBsaW5rOiBcIkRlZXBsaW5rXCIsXG5cdC8qKlxuXHQgKiBBcHAgaGFzIGJlZW4gc3RhcnRlZCBpbiAnY3JlYXRlJyBtb2RlLlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICovXG5cdENyZWF0ZTogXCJDcmVhdGVcIlxufTtcbi8vIGV4cGxpY2l0IHR5cGUgdG8gaGFuZGxlIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgd2l0aCBib29sZWFuIHZhbHVlc1xuY29uc3QgSW5pdGlhbExvYWRUeXBlID0gRGF0YVR5cGUuY3JlYXRlVHlwZShcInNhcC5mZS5jb3JlLkluaXRpYWxMb2FkTW9kZVwiLCB7XG5cdGRlZmF1bHRWYWx1ZTogdGhpc0xpYi5Jbml0aWFsTG9hZE1vZGUuQXV0byxcblx0aXNWYWxpZDogZnVuY3Rpb24gKHZWYWx1ZTogYW55KSB7XG5cdFx0aWYgKHR5cGVvZiB2VmFsdWUgPT09IFwiYm9vbGVhblwiKSB7XG5cdFx0XHRMb2cud2FybmluZyhcblx0XHRcdFx0XCJERVBSRUNBVEVEOiBib29sZWFuIHZhbHVlIG5vdCBhbGxvd2VkIGZvciAnaW5pdGlhbExvYWQnIG1hbmlmZXN0IHNldHRpbmcgLSBzdXBwb3J0ZWQgdmFsdWVzIGFyZTogRGlzYWJsZWR8RW5hYmxlZHxBdXRvXCJcblx0XHRcdCk7XG5cdFx0fVxuXHRcdHJldHVybiB2VmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2VmFsdWUgPT09IG51bGwgfHwgdHlwZW9mIHZWYWx1ZSA9PT0gXCJib29sZWFuXCIgfHwgdGhpc0xpYi5Jbml0aWFsTG9hZE1vZGUuaGFzT3duUHJvcGVydHkodlZhbHVlKTtcblx0fVxufSk7XG4vLyBub3JtYWxpemUgYSB2YWx1ZSwgdGFraW5nIGNhcmUgb2YgYm9vbGVhbiB0eXBlXG5Jbml0aWFsTG9hZFR5cGUuc2V0Tm9ybWFsaXplcihmdW5jdGlvbiAodlZhbHVlOiBhbnkpIHtcblx0aWYgKCF2VmFsdWUpIHtcblx0XHQvLyB1bmRlZmluZWQsIG51bGwgb3IgZmFsc2Vcblx0XHRyZXR1cm4gdGhpc0xpYi5Jbml0aWFsTG9hZE1vZGUuRGlzYWJsZWQ7XG5cdH1cblx0cmV0dXJuIHZWYWx1ZSA9PT0gdHJ1ZSA/IHRoaXNMaWIuSW5pdGlhbExvYWRNb2RlLkVuYWJsZWQgOiB2VmFsdWU7XG59KTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5UZW1wbGF0ZWRWaWV3U2VydmljZVwiLCBuZXcgVGVtcGxhdGVkVmlld1NlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlJlc291cmNlTW9kZWxTZXJ2aWNlXCIsIG5ldyBSZXNvdXJjZU1vZGVsU2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuQ2FjaGVIYW5kbGVyU2VydmljZVwiLCBuZXcgQ2FjaGVIYW5kbGVyU2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuTmF2aWdhdGlvblNlcnZpY2VcIiwgbmV3IE5hdmlnYXRpb25TZXJ2aWNlKCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlJvdXRpbmdTZXJ2aWNlXCIsIG5ldyBSb3V0aW5nU2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuU2lkZUVmZmVjdHNTZXJ2aWNlXCIsIG5ldyBTaWRlRWZmZWN0c1NlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlNoZWxsU2VydmljZXNcIiwgbmV3IFNoZWxsU2VydmljZXNGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLkVudmlyb25tZW50U2VydmljZVwiLCBuZXcgRW52aXJvbm1lbnRTZXJ2aWNlRmFjdG9yeSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5Bc3luY0NvbXBvbmVudFNlcnZpY2VcIiwgbmV3IEFzeW5jQ29tcG9uZW50U2VydmljZUZhY3RvcnkoKSk7XG5cbmV4cG9ydCBkZWZhdWx0IHRoaXNMaWI7XG4iXX0=
477
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ0aGlzTGliIiwiQ29yZSIsImluaXRMaWJyYXJ5IiwibmFtZSIsImRlcGVuZGVuY2llcyIsInR5cGVzIiwiaW50ZXJmYWNlcyIsImNvbnRyb2xzIiwiZWxlbWVudHMiLCJ2ZXJzaW9uIiwibm9MaWJyYXJ5Q1NTIiwiZXh0ZW5zaW9ucyIsInB1YmxpY1J1bGVzIiwiaW50ZXJuYWxSdWxlcyIsImZsQ2hhbmdlSGFuZGxlcnMiLCJJbnZvY2F0aW9uR3JvdXBpbmciLCJJc29sYXRlZCIsIkNoYW5nZVNldCIsIkNyZWF0aW9uTW9kZSIsIk5ld1BhZ2UiLCJTeW5jIiwiQXN5bmMiLCJEZWZlcnJlZCIsIklubGluZSIsIkNyZWF0aW9uUm93IiwiSW5saW5lQ3JlYXRpb25Sb3dzIiwiRXh0ZXJuYWwiLCJWYXJpYW50TWFuYWdlbWVudCIsIk5vbmUiLCJQYWdlIiwiQ29udHJvbCIsIkNvbnN0YW50cyIsIkNhbmNlbEFjdGlvbkRpYWxvZyIsIlByb2dyYW1taW5nTW9kZWwiLCJEcmFmdCIsIlN0aWNreSIsIk5vbkRyYWZ0IiwiRHJhZnRTdGF0dXMiLCJTYXZpbmciLCJTYXZlZCIsIkNsZWFyIiwiRWRpdE1vZGUiLCJEaXNwbGF5IiwiRWRpdGFibGUiLCJUZW1wbGF0ZUNvbnRlbnRWaWV3IiwiSHlicmlkIiwiQ2hhcnQiLCJUYWJsZSIsIkluaXRpYWxMb2FkTW9kZSIsIkVuYWJsZWQiLCJEaXNhYmxlZCIsIkF1dG8iLCJTdGFydHVwTW9kZSIsIk5vcm1hbCIsIkRlZXBsaW5rIiwiQ3JlYXRlIiwiSW5pdGlhbExvYWRUeXBlIiwiRGF0YVR5cGUiLCJjcmVhdGVUeXBlIiwiZGVmYXVsdFZhbHVlIiwiaXNWYWxpZCIsInZWYWx1ZSIsIkxvZyIsIndhcm5pbmciLCJ1bmRlZmluZWQiLCJoYXNPd25Qcm9wZXJ0eSIsInNldE5vcm1hbGl6ZXIiLCJTZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5IiwicmVnaXN0ZXIiLCJUZW1wbGF0ZWRWaWV3U2VydmljZUZhY3RvcnkiLCJSZXNvdXJjZU1vZGVsU2VydmljZUZhY3RvcnkiLCJDYWNoZUhhbmRsZXJTZXJ2aWNlRmFjdG9yeSIsIk5hdmlnYXRpb25TZXJ2aWNlIiwiUm91dGluZ1NlcnZpY2VGYWN0b3J5IiwiU2lkZUVmZmVjdHNTZXJ2aWNlRmFjdG9yeSIsIlNoZWxsU2VydmljZXNGYWN0b3J5IiwiRW52aXJvbm1lbnRTZXJ2aWNlRmFjdG9yeSIsIkFzeW5jQ29tcG9uZW50U2VydmljZUZhY3RvcnkiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbImxpYnJhcnkudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS9mb3JtYXR0ZXJzL0ZQTUZvcm1hdHRlclwiO1xuaW1wb3J0IFwic2FwL2ZlL2NvcmUvZm9ybWF0dGVycy9TdGFuZGFyZEZvcm1hdHRlclwiO1xuaW1wb3J0IFwic2FwL2ZlL2NvcmUvZm9ybWF0dGVycy9WYWx1ZUZvcm1hdHRlclwiO1xuaW1wb3J0IEFzeW5jQ29tcG9uZW50U2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL0FzeW5jQ29tcG9uZW50U2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBDYWNoZUhhbmRsZXJTZXJ2aWNlRmFjdG9yeSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvQ2FjaGVIYW5kbGVyU2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBFbnZpcm9ubWVudFNlcnZpY2VGYWN0b3J5IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9FbnZpcm9ubWVudFNlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgTmF2aWdhdGlvblNlcnZpY2UgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL05hdmlnYXRpb25TZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IFJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvUmVzb3VyY2VNb2RlbFNlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgUm91dGluZ1NlcnZpY2VGYWN0b3J5IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9Sb3V0aW5nU2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBTaGVsbFNlcnZpY2VzRmFjdG9yeSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvU2hlbGxTZXJ2aWNlc0ZhY3RvcnlcIjtcbmltcG9ydCBTaWRlRWZmZWN0c1NlcnZpY2VGYWN0b3J5IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9TaWRlRWZmZWN0c1NlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgVGVtcGxhdGVkVmlld1NlcnZpY2VGYWN0b3J5IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9UZW1wbGF0ZWRWaWV3U2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBcInNhcC9mZS9jb3JlL3R5cGUvRGF0ZVRpbWVXaXRoVGltZXpvbmVcIjtcbmltcG9ydCBcInNhcC9mZS9jb3JlL3R5cGUvRW1haWxcIjtcbmltcG9ydCBcInNhcC9mZS9uYXZpZ2F0aW9uL2xpYnJhcnlcIjtcbmltcG9ydCBcInNhcC9mZS9wbGFjZWhvbGRlci9saWJyYXJ5XCI7XG5pbXBvcnQgRGF0YVR5cGUgZnJvbSBcInNhcC91aS9iYXNlL0RhdGFUeXBlXCI7XG5pbXBvcnQgQ29yZSBmcm9tIFwic2FwL3VpL2NvcmUvQ29yZVwiO1xuaW1wb3J0IFwic2FwL3VpL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IFNlcnZpY2VGYWN0b3J5UmVnaXN0cnkgZnJvbSBcInNhcC91aS9jb3JlL3NlcnZpY2UvU2VydmljZUZhY3RvcnlSZWdpc3RyeVwiO1xuaW1wb3J0IFwic2FwL3VpL2ZsL2xpYnJhcnlcIjtcbmltcG9ydCBcInNhcC91aS9tZGMvbGlicmFyeVwiO1xuLyoqXG4gKiBSb290IG5hbWVzcGFjZSBmb3IgYWxsIHRoZSBsaWJyYXJpZXMgcmVsYXRlZCB0byBTQVAgRmlvcmkgZWxlbWVudHMuXG4gKlxuICogQG5hbWVzcGFjZVxuICogQG5hbWUgc2FwLmZlXG4gKiBAcHVibGljXG4gKi9cblxuLyoqXG4gKiBMaWJyYXJ5IHByb3ZpZGluZyB0aGUgY29yZSBmdW5jdGlvbmFsaXR5IG9mIHRoZSBydW50aW1lIGZvciBTQVAgRmlvcmkgZWxlbWVudHMgZm9yIE9EYXRhIFY0LlxuICpcbiAqIEBuYW1lc3BhY2VcbiAqIEBuYW1lIHNhcC5mZS5jb3JlXG4gKiBAcHVibGljXG4gKi9cblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGNvbnRyb2xsZXIgZXh0ZW5zaW9ucyB1c2VkIGludGVybmFsbHkgaW4gU0FQIEZpb3JpIGVsZW1lbnRzIGV4cG9zaW5nIGEgbWV0aG9kIHRoYXQgeW91IGNhbiBvdmVycmlkZSB0byBhbGxvdyBtb3JlIGZsZXhpYmlsaXR5LlxuICpcbiAqIEBuYW1lc3BhY2VcbiAqIEBuYW1lIHNhcC5mZS5jb3JlLmNvbnRyb2xsZXJleHRlbnNpb25zXG4gKiBAcHVibGljXG4gKi9cblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGNsYXNzZXMgcHJvdmlkZWQgYnkgU0FQIEZpb3JpIGVsZW1lbnRzIGZvciB0aGUgRmxleGlibGUgUHJvZ3JhbW1pbmcgTW9kZWxcbiAqXG4gKiBAbmFtZXNwYWNlXG4gKiBAbmFtZSBzYXAuZmUuY29yZS5mcG1cbiAqIEBwdWJsaWNcbiAqL1xuXG4vKipcbiAqIEBuYW1lc3BhY2VcbiAqIEBuYW1lIHNhcC5mZS5jb3JlLmFjdGlvbnNcbiAqIEBwcml2YXRlXG4gKi9cblxuLyoqXG4gKiBAbmFtZXNwYWNlXG4gKiBAbmFtZSBzYXAuZmUuY29tbW9uXG4gKiBAcHJpdmF0ZVxuICovXG5cbi8qKlxuICogQG5hbWVzcGFjZVxuICogQG5hbWUgc2FwLmZlLmNvcmUubW9kZWxcbiAqIEBwcml2YXRlXG4gKi9cblxuLyoqXG4gKiBAbmFtZXNwYWNlXG4gKiBAbmFtZSBzYXAuZmUuY29yZS5uYXZpZ2F0aW9uXG4gKiBAcHJpdmF0ZVxuICovXG5jb25zdCB0aGlzTGliID0gQ29yZS5pbml0TGlicmFyeSh7XG5cdG5hbWU6IFwic2FwLmZlLmNvcmVcIixcblx0ZGVwZW5kZW5jaWVzOiBbXCJzYXAudWkuY29yZVwiLCBcInNhcC5mZS5uYXZpZ2F0aW9uXCIsIFwic2FwLmZlLnBsYWNlaG9sZGVyXCIsIFwic2FwLnVpLmZsXCIsIFwic2FwLnVpLm1kY1wiXSxcblx0dHlwZXM6IFtcInNhcC5mZS5jb3JlLkNyZWF0aW9uTW9kZVwiLCBcInNhcC5mZS5jb3JlLlZhcmlhbnRNYW5hZ2VtZW50XCJdLFxuXHRpbnRlcmZhY2VzOiBbXSxcblx0Y29udHJvbHM6IFtdLFxuXHRlbGVtZW50czogW10sXG5cdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby10ZW1wbGF0ZS1jdXJseS1pbi1zdHJpbmdcblx0dmVyc2lvbjogXCIke3ZlcnNpb259XCIsXG5cdG5vTGlicmFyeUNTUzogdHJ1ZSxcblx0ZXh0ZW5zaW9uczoge1xuXHRcdC8vQ29uZmlndXJhdGlvbiB1c2VkIGZvciBydWxlIGxvYWRpbmcgb2YgU3VwcG9ydCBBc3Npc3RhbnRcblx0XHRcInNhcC51aS5zdXBwb3J0XCI6IHtcblx0XHRcdHB1YmxpY1J1bGVzOiB0cnVlLFxuXHRcdFx0aW50ZXJuYWxSdWxlczogdHJ1ZVxuXHRcdH0sXG5cdFx0ZmxDaGFuZ2VIYW5kbGVyczoge1xuXHRcdFx0XCJzYXAuZmUuY29yZS5jb250cm9scy5GaWx0ZXJCYXJcIjogXCJzYXAvdWkvbWRjL2ZsZXhpYmlsaXR5L0ZpbHRlckJhclwiXG5cdFx0fVxuXHR9XG59KSBhcyBhbnk7XG5cbi8qKlxuICogQXZhaWxhYmxlIHZhbHVlcyBmb3IgaW52b2NhdGlvbiBncm91cGluZy5cbiAqXG4gKiBAcmVhZG9ubHlcbiAqIEBlbnVtIHtzdHJpbmd9XG4gKiBAcHJpdmF0ZVxuICovXG50aGlzTGliLkludm9jYXRpb25Hcm91cGluZyA9IHtcblx0LyoqXG5cdCAqIElzb2xhdGVkLlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0SXNvbGF0ZWQ6IFwiSXNvbGF0ZWRcIixcblx0LyoqXG5cdCAqIENoYW5nZVNldC5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdENoYW5nZVNldDogXCJDaGFuZ2VTZXRcIlxufTtcbi8qKlxuICogQXZhaWxhYmxlIHZhbHVlcyBmb3IgY3JlYXRpb24gbW9kZS5cbiAqXG4gKiBAcmVhZG9ubHlcbiAqIEBlbnVtIHtzdHJpbmd9XG4gKiBAcHJpdmF0ZVxuICovXG50aGlzTGliLkNyZWF0aW9uTW9kZSA9IHtcblx0LyoqXG5cdCAqIE5ldyBQYWdlLlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0TmV3UGFnZTogXCJOZXdQYWdlXCIsXG5cdC8qKlxuXHQgKiBTeW5jLlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0U3luYzogXCJTeW5jXCIsXG5cdC8qKlxuXHQgKiBBc3luYy5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEFzeW5jOiBcIkFzeW5jXCIsXG5cdC8qKlxuXHQgKiBEZWZlcnJlZC5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdERlZmVycmVkOiBcIkRlZmVycmVkXCIsXG5cdC8qKlxuXHQgKiBJbmxpbmUuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRJbmxpbmU6IFwiSW5saW5lXCIsXG5cdC8qKlxuXHQgKiBDcmVhdGlvbiByb3cuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRDcmVhdGlvblJvdzogXCJDcmVhdGlvblJvd1wiLFxuXHQvKipcblx0ICogSW5saW5lIGNyZWF0aW9uIHJvd3MuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRJbmxpbmVDcmVhdGlvblJvd3M6IFwiSW5saW5lQ3JlYXRpb25Sb3dzXCIsXG5cdC8qKlxuXHQgKiBFeHRlcm5hbCAoYnkgb3V0Ym91bmQgbmF2aWdhdGlvbikuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRFeHRlcm5hbDogXCJFeHRlcm5hbFwiXG59O1xuLyoqXG4gKiBBdmFpbGFibGUgdmFsdWVzIGZvciBWYXJpYW50IE1hbmFnZW1lbnQuXG4gKlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICogQHByaXZhdGVcbiAqL1xudGhpc0xpYi5WYXJpYW50TWFuYWdlbWVudCA9IHtcblx0LyoqXG5cdCAqIE5vIHZhcmlhbnQgbWFuYWdlbWVudCBhdCBhbGwuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHROb25lOiBcIk5vbmVcIixcblxuXHQvKipcblx0ICogT25lIHZhcmlhbnQgY29uZmlndXJhdGlvbiBmb3IgdGhlIHdob2xlIHBhZ2UuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRQYWdlOiBcIlBhZ2VcIixcblxuXHQvKipcblx0ICogVmFyaWFudCBtYW5hZ2VtZW50IG9uIGNvbnRyb2wgbGV2ZWwuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRDb250cm9sOiBcIkNvbnRyb2xcIlxufTtcbi8qKlxuICogQXZhaWxhYmxlIGNvbnN0YW50cy5cbiAqXG4gKiBAcmVhZG9ubHlcbiAqIEBlbnVtIHtzdHJpbmd9XG4gKiBAcHJpdmF0ZVxuICovXG50aGlzTGliLkNvbnN0YW50cyA9IHtcblx0LyoqXG5cdCAqIEluZGljYXRlcyBjYW5jZWxsaW5nIG9mIGFuIGFjdGlvbiBkaWFsb2cuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRDYW5jZWxBY3Rpb25EaWFsb2c6IFwiY2FuY2VsXCJcbn07XG4vKipcbiAqIEF2YWlsYWJsZSB2YWx1ZXMgZm9yIHByb2dyYW1taW5nIG1vZGVsLlxuICpcbiAqIEByZWFkb25seVxuICogQGVudW0ge3N0cmluZ31cbiAqIEBwcml2YXRlXG4gKi9cbnRoaXNMaWIuUHJvZ3JhbW1pbmdNb2RlbCA9IHtcblx0LyoqXG5cdCAqIERyYWZ0LlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0RHJhZnQ6IFwiRHJhZnRcIixcblx0LyoqXG5cdCAqIFN0aWNreS5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdFN0aWNreTogXCJTdGlja3lcIixcblx0LyoqXG5cdCAqIE5vbkRyYWZ0LlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Tm9uRHJhZnQ6IFwiTm9uRHJhZnRcIlxufTtcbi8qKlxuICogQXZhaWxhYmxlIHZhbHVlcyBmb3IgZHJhZnQgc3RhdHVzLlxuICpcbiAqIEByZWFkb25seVxuICogQGVudW0ge3N0cmluZ31cbiAqIEBwcml2YXRlXG4gKi9cbnRoaXNMaWIuRHJhZnRTdGF0dXMgPSB7XG5cdC8qKlxuXHQgKiBTYXZpbmcuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRTYXZpbmc6IFwiU2F2aW5nXCIsXG5cdC8qKlxuXHQgKiBTYXZlZC5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdFNhdmVkOiBcIlNhdmVkXCIsXG5cdC8qKlxuXHQgKiBDbGVhci5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdENsZWFyOiBcIkNsZWFyXCJcbn07XG4vKipcbiAqIEVkaXQgbW9kZSB2YWx1ZXMuXG4gKlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICogQHByaXZhdGVcbiAqL1xudGhpc0xpYi5FZGl0TW9kZSA9IHtcblx0LyoqXG5cdCAqIFZpZXcgaXMgY3VycmVudGx5IGRpc3BsYXlpbmcgb25seS5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdERpc3BsYXk6IFwiRGlzcGxheVwiLFxuXHQvKipcblx0ICogVmlldyBpcyBjdXJyZW50bHkgZWRpdGFibGUuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRFZGl0YWJsZTogXCJFZGl0YWJsZVwiXG59O1xuLyoqXG4gKiBUZW1wbGF0ZSB2aWV3cy5cbiAqXG4gKiBAcmVhZG9ubHlcbiAqIEBlbnVtIHtzdHJpbmd9XG4gKiBAcHJpdmF0ZVxuICovXG50aGlzTGliLlRlbXBsYXRlQ29udGVudFZpZXcgPSB7XG5cdC8qKlxuXHQgKiBIeWJyaWQuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKi9cblx0SHlicmlkOiBcIkh5YnJpZFwiLFxuXHQvKipcblx0ICogQ2hhcnQuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKi9cblx0Q2hhcnQ6IFwiQ2hhcnRcIixcblx0LyoqXG5cdCAqIFRhYmxlLlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICovXG5cdFRhYmxlOiBcIlRhYmxlXCJcbn07XG4vKipcbiAqIFBvc3NpYmxlIGluaXRpYWwgbG9hZCAoZmlyc3QgYXBwIHN0YXJ0dXApIG1vZGVzIGZvciBhIExpc3RSZXBvcnQuXG4gKlxuICogQGVudW0ge3N0cmluZ31cbiAqIEBuYW1lIHNhcC5mZS5jb3JlLkluaXRpYWxMb2FkTW9kZVxuICogQHJlYWRvbmx5XG4gKiBAcHVibGljXG4gKiBAc2luY2UgMS44Ni4wXG4gKi9cbnRoaXNMaWIuSW5pdGlhbExvYWRNb2RlID0ge1xuXHQvKipcblx0ICogRGF0YSB3aWxsIGJlIGxvYWRlZCBpbml0aWFsbHkuXG5cdCAqXG5cdCAqIEBuYW1lIHNhcC5mZS5jb3JlLkluaXRpYWxMb2FkTW9kZS5FbmFibGVkXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEVuYWJsZWQ6IFwiRW5hYmxlZFwiLFxuXG5cdC8qKlxuXHQgKiBEYXRhIHdpbGwgbm90IGJlIGxvYWRlZCBpbml0aWFsbHkuXG5cdCAqXG5cdCAqIEBuYW1lIHNhcC5mZS5jb3JlLkluaXRpYWxMb2FkTW9kZS5EaXNhYmxlZFxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHREaXNhYmxlZDogXCJEaXNhYmxlZFwiLFxuXG5cdC8qKlxuXHQgKiBEYXRhIHdpbGwgYmUgbG9hZGVkIGluaXRpYWxseSBpZiBmaWx0ZXJzIGFyZSBzZXQuXG5cdCAqXG5cdCAqIEBuYW1lIHNhcC5mZS5jb3JlLkluaXRpYWxMb2FkTW9kZS5BdXRvXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEF1dG86IFwiQXV0b1wiXG59O1xuXG4vKipcbiAqIFZhbHVlIG9mIHRoZSBzdGFydHVwIG1vZGVcbiAqXG4gKiBAcmVhZG9ubHlcbiAqIEBlbnVtIHtzdHJpbmd9XG4gKiBAcHJpdmF0ZVxuICovXG50aGlzTGliLlN0YXJ0dXBNb2RlID0ge1xuXHQvKipcblx0ICogQXBwIGhhcyBiZWVuIHN0YXJ0ZWQgbm9ybWFsbHkuXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKi9cblx0Tm9ybWFsOiBcIk5vcm1hbFwiLFxuXHQvKipcblx0ICogQXBwIGhhcyBiZWVuIHN0YXJ0ZWQgd2l0aCBzdGFydHVwIGtleXMgKGRlZXBsaW5rKS5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqL1xuXHREZWVwbGluazogXCJEZWVwbGlua1wiLFxuXHQvKipcblx0ICogQXBwIGhhcyBiZWVuIHN0YXJ0ZWQgaW4gJ2NyZWF0ZScgbW9kZS5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqL1xuXHRDcmVhdGU6IFwiQ3JlYXRlXCJcbn07XG4vLyBleHBsaWNpdCB0eXBlIHRvIGhhbmRsZSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHdpdGggYm9vbGVhbiB2YWx1ZXNcbmNvbnN0IEluaXRpYWxMb2FkVHlwZSA9IERhdGFUeXBlLmNyZWF0ZVR5cGUoXCJzYXAuZmUuY29yZS5Jbml0aWFsTG9hZE1vZGVcIiwge1xuXHRkZWZhdWx0VmFsdWU6IHRoaXNMaWIuSW5pdGlhbExvYWRNb2RlLkF1dG8sXG5cdGlzVmFsaWQ6IGZ1bmN0aW9uICh2VmFsdWU6IGFueSkge1xuXHRcdGlmICh0eXBlb2YgdlZhbHVlID09PSBcImJvb2xlYW5cIikge1xuXHRcdFx0TG9nLndhcm5pbmcoXG5cdFx0XHRcdFwiREVQUkVDQVRFRDogYm9vbGVhbiB2YWx1ZSBub3QgYWxsb3dlZCBmb3IgJ2luaXRpYWxMb2FkJyBtYW5pZmVzdCBzZXR0aW5nIC0gc3VwcG9ydGVkIHZhbHVlcyBhcmU6IERpc2FibGVkfEVuYWJsZWR8QXV0b1wiXG5cdFx0XHQpO1xuXHRcdH1cblx0XHRyZXR1cm4gdlZhbHVlID09PSB1bmRlZmluZWQgfHwgdlZhbHVlID09PSBudWxsIHx8IHR5cGVvZiB2VmFsdWUgPT09IFwiYm9vbGVhblwiIHx8IHRoaXNMaWIuSW5pdGlhbExvYWRNb2RlLmhhc093blByb3BlcnR5KHZWYWx1ZSk7XG5cdH1cbn0pO1xuLy8gbm9ybWFsaXplIGEgdmFsdWUsIHRha2luZyBjYXJlIG9mIGJvb2xlYW4gdHlwZVxuSW5pdGlhbExvYWRUeXBlLnNldE5vcm1hbGl6ZXIoZnVuY3Rpb24gKHZWYWx1ZTogYW55KSB7XG5cdGlmICghdlZhbHVlKSB7XG5cdFx0Ly8gdW5kZWZpbmVkLCBudWxsIG9yIGZhbHNlXG5cdFx0cmV0dXJuIHRoaXNMaWIuSW5pdGlhbExvYWRNb2RlLkRpc2FibGVkO1xuXHR9XG5cdHJldHVybiB2VmFsdWUgPT09IHRydWUgPyB0aGlzTGliLkluaXRpYWxMb2FkTW9kZS5FbmFibGVkIDogdlZhbHVlO1xufSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuVGVtcGxhdGVkVmlld1NlcnZpY2VcIiwgbmV3IFRlbXBsYXRlZFZpZXdTZXJ2aWNlRmFjdG9yeSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5SZXNvdXJjZU1vZGVsU2VydmljZVwiLCBuZXcgUmVzb3VyY2VNb2RlbFNlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLkNhY2hlSGFuZGxlclNlcnZpY2VcIiwgbmV3IENhY2hlSGFuZGxlclNlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLk5hdmlnYXRpb25TZXJ2aWNlXCIsIG5ldyBOYXZpZ2F0aW9uU2VydmljZSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5Sb3V0aW5nU2VydmljZVwiLCBuZXcgUm91dGluZ1NlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlNpZGVFZmZlY3RzU2VydmljZVwiLCBuZXcgU2lkZUVmZmVjdHNTZXJ2aWNlRmFjdG9yeSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5TaGVsbFNlcnZpY2VzXCIsIG5ldyBTaGVsbFNlcnZpY2VzRmFjdG9yeSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5FbnZpcm9ubWVudFNlcnZpY2VcIiwgbmV3IEVudmlyb25tZW50U2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuQXN5bmNDb21wb25lbnRTZXJ2aWNlXCIsIG5ldyBBc3luY0NvbXBvbmVudFNlcnZpY2VGYWN0b3J5KCkpO1xuXG5leHBvcnQgZGVmYXVsdCB0aGlzTGliO1xuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7O0VBdUJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztFQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztFQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztFQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztFQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0VBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7RUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztFQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFDQSxJQUFNQSxPQUFPLEdBQUdDLElBQUksQ0FBQ0MsV0FBTCxDQUFpQjtJQUNoQ0MsSUFBSSxFQUFFLGFBRDBCO0lBRWhDQyxZQUFZLEVBQUUsQ0FBQyxhQUFELEVBQWdCLG1CQUFoQixFQUFxQyxvQkFBckMsRUFBMkQsV0FBM0Qs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
@@ -24,4 +24,4 @@ sap.ui.define(["./support/AnnotationIssue.support", "./support/CollectionFacetMi
24
24
  ruleset: [AnnotationIssue.getRules(), CollectionFacetMissingID.getRules(), CollectionFacetUnsupportedLevel.getRules(), InvalidAnnotationColumnKey.getRules()]
25
25
  };
26
26
  }, false);
27
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYnJhcnkuc3VwcG9ydC50cyJdLCJuYW1lcyI6WyJzYXAiLCJ1aSIsInN1cHBvcnQiLCJTeXN0ZW1QcmVzZXRzIiwiRmVWNCIsImlkIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsInNlbGVjdGlvbnMiLCJydWxlSWQiLCJsaWJOYW1lIiwibmFtZSIsIm5pY2VOYW1lIiwicnVsZXNldCIsIkFubm90YXRpb25Jc3N1ZSIsImdldFJ1bGVzIiwiQ29sbGVjdGlvbkZhY2V0TWlzc2luZ0lEIiwiQ29sbGVjdGlvbkZhY2V0VW5zdXBwb3J0ZWRMZXZlbCIsIkludmFsaWRBbm5vdGF0aW9uQ29sdW1uS2V5Il0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7O0FBRUNBLEVBQUFBLEdBQUcsQ0FBQ0MsRUFBSixDQUFPQyxPQUFSLENBQXdCQyxhQUF4QixDQUFzQ0MsSUFBdEMsR0FBNkM7QUFDNUNDLElBQUFBLEVBQUUsRUFBRSxpQkFEd0M7QUFFNUNDLElBQUFBLEtBQUssRUFBRSxtQkFGcUM7QUFHNUNDLElBQUFBLFdBQVcsRUFBRSx5QkFIK0I7QUFJNUNDLElBQUFBLFVBQVUsRUFBRSxDQUFDO0FBQUVDLE1BQUFBLE1BQU0sRUFBRSxpQkFBVjtBQUE2QkMsTUFBQUEsT0FBTyxFQUFFO0FBQXRDLEtBQUQ7QUFKZ0MsR0FBN0M7QUFNQTtBQUNBO0FBQ0E7O1NBQ2U7QUFDZEMsSUFBQUEsSUFBSSxFQUFFLGFBRFE7QUFFZEMsSUFBQUEsUUFBUSxFQUFFLDBCQUZJO0FBR2RDLElBQUFBLE9BQU8sRUFBRSxDQUNSQyxlQUFlLENBQUNDLFFBQWhCLEVBRFEsRUFFUkMsd0JBQXdCLENBQUNELFFBQXpCLEVBRlEsRUFHUkUsK0JBQStCLENBQUNGLFFBQWhDLEVBSFEsRUFJUkcsMEJBQTBCLENBQUNILFFBQTNCLEVBSlE7QUFISyxHIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBBbm5vdGF0aW9uSXNzdWUgZnJvbSBcIi4vc3VwcG9ydC9Bbm5vdGF0aW9uSXNzdWUuc3VwcG9ydFwiO1xuaW1wb3J0ICogYXMgQ29sbGVjdGlvbkZhY2V0TWlzc2luZ0lEIGZyb20gXCIuL3N1cHBvcnQvQ29sbGVjdGlvbkZhY2V0TWlzc2luZ0lELnN1cHBvcnRcIjtcbmltcG9ydCAqIGFzIENvbGxlY3Rpb25GYWNldFVuc3VwcG9ydGVkTGV2ZWwgZnJvbSBcIi4vc3VwcG9ydC9Db2xsZWN0aW9uRmFjZXRVbnN1cHBvcnRlZExldmVsLnN1cHBvcnRcIjtcbmltcG9ydCAqIGFzIEludmFsaWRBbm5vdGF0aW9uQ29sdW1uS2V5IGZyb20gXCIuL3N1cHBvcnQvSW52YWxpZEFubm90YXRpb25Db2x1bW5LZXkuc3VwcG9ydFwiO1xuKHNhcC51aS5zdXBwb3J0IGFzIGFueSkuU3lzdGVtUHJlc2V0cy5GZVY0ID0ge1xuXHRpZDogXCJGaW9yaUVsZW1lbnRzVjRcIixcblx0dGl0bGU6IFwiRmlvcmkgRWxlbWVudHMgVjRcIixcblx0ZGVzY3JpcHRpb246IFwiRmlvcmkgRWxlbWVudHMgVjQgcnVsZXNcIixcblx0c2VsZWN0aW9uczogW3sgcnVsZUlkOiBcImFubm90YXRpb25Jc3N1ZVwiLCBsaWJOYW1lOiBcInNhcC5mZS5jb3JlXCIgfV1cbn07XG4vKipcbiAqIEFkZHMgc3VwcG9ydCBydWxlcyBvZiB0aGUgc2FwLmZlLmNvcmUgbGlicmFyeSB0byB0aGUgc3VwcG9ydCBpbmZyYXN0cnVjdHVyZS5cbiAqL1xuZXhwb3J0IGRlZmF1bHQge1xuXHRuYW1lOiBcInNhcC5mZS5jb3JlXCIsXG5cdG5pY2VOYW1lOiBcIlNBUC5GRSBWNCAtIENvcmUgbGlicmFyeVwiLFxuXHRydWxlc2V0OiBbXG5cdFx0QW5ub3RhdGlvbklzc3VlLmdldFJ1bGVzKCksXG5cdFx0Q29sbGVjdGlvbkZhY2V0TWlzc2luZ0lELmdldFJ1bGVzKCksXG5cdFx0Q29sbGVjdGlvbkZhY2V0VW5zdXBwb3J0ZWRMZXZlbC5nZXRSdWxlcygpLFxuXHRcdEludmFsaWRBbm5vdGF0aW9uQ29sdW1uS2V5LmdldFJ1bGVzKClcblx0XVxufTtcbiJdfQ==
27
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzYXAiLCJ1aSIsInN1cHBvcnQiLCJTeXN0ZW1QcmVzZXRzIiwiRmVWNCIsImlkIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsInNlbGVjdGlvbnMiLCJydWxlSWQiLCJsaWJOYW1lIiwibmFtZSIsIm5pY2VOYW1lIiwicnVsZXNldCIsIkFubm90YXRpb25Jc3N1ZSIsImdldFJ1bGVzIiwiQ29sbGVjdGlvbkZhY2V0TWlzc2luZ0lEIiwiQ29sbGVjdGlvbkZhY2V0VW5zdXBwb3J0ZWRMZXZlbCIsIkludmFsaWRBbm5vdGF0aW9uQ29sdW1uS2V5Il0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJsaWJyYXJ5LnN1cHBvcnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgQW5ub3RhdGlvbklzc3VlIGZyb20gXCIuL3N1cHBvcnQvQW5ub3RhdGlvbklzc3VlLnN1cHBvcnRcIjtcbmltcG9ydCAqIGFzIENvbGxlY3Rpb25GYWNldE1pc3NpbmdJRCBmcm9tIFwiLi9zdXBwb3J0L0NvbGxlY3Rpb25GYWNldE1pc3NpbmdJRC5zdXBwb3J0XCI7XG5pbXBvcnQgKiBhcyBDb2xsZWN0aW9uRmFjZXRVbnN1cHBvcnRlZExldmVsIGZyb20gXCIuL3N1cHBvcnQvQ29sbGVjdGlvbkZhY2V0VW5zdXBwb3J0ZWRMZXZlbC5zdXBwb3J0XCI7XG5pbXBvcnQgKiBhcyBJbnZhbGlkQW5ub3RhdGlvbkNvbHVtbktleSBmcm9tIFwiLi9zdXBwb3J0L0ludmFsaWRBbm5vdGF0aW9uQ29sdW1uS2V5LnN1cHBvcnRcIjtcbihzYXAudWkuc3VwcG9ydCBhcyBhbnkpLlN5c3RlbVByZXNldHMuRmVWNCA9IHtcblx0aWQ6IFwiRmlvcmlFbGVtZW50c1Y0XCIsXG5cdHRpdGxlOiBcIkZpb3JpIEVsZW1lbnRzIFY0XCIsXG5cdGRlc2NyaXB0aW9uOiBcIkZpb3JpIEVsZW1lbnRzIFY0IHJ1bGVzXCIsXG5cdHNlbGVjdGlvbnM6IFt7IHJ1bGVJZDogXCJhbm5vdGF0aW9uSXNzdWVcIiwgbGliTmFtZTogXCJzYXAuZmUuY29yZVwiIH1dXG59O1xuLyoqXG4gKiBBZGRzIHN1cHBvcnQgcnVsZXMgb2YgdGhlIHNhcC5mZS5jb3JlIGxpYnJhcnkgdG8gdGhlIHN1cHBvcnQgaW5mcmFzdHJ1Y3R1cmUuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IHtcblx0bmFtZTogXCJzYXAuZmUuY29yZVwiLFxuXHRuaWNlTmFtZTogXCJTQVAuRkUgVjQgLSBDb3JlIGxpYnJhcnlcIixcblx0cnVsZXNldDogW1xuXHRcdEFubm90YXRpb25Jc3N1ZS5nZXRSdWxlcygpLFxuXHRcdENvbGxlY3Rpb25GYWNldE1pc3NpbmdJRC5nZXRSdWxlcygpLFxuXHRcdENvbGxlY3Rpb25GYWNldFVuc3VwcG9ydGVkTGV2ZWwuZ2V0UnVsZXMoKSxcblx0XHRJbnZhbGlkQW5ub3RhdGlvbkNvbHVtbktleS5nZXRSdWxlcygpXG5cdF1cbn07XG4iXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7Ozs7RUFJQ0EsR0FBRyxDQUFDQyxFQUFKLENBQU9DLE9BQVIsQ0FBd0JDLGFBQXhCLENBQXNDQyxJQUF0QyxHQUE2QztJQUM1Q0MsRUFBRSxFQUFFLGlCQUR3QztJQUU1Q0MsS0FBSyxFQUFFLG1CQUZxQztJQUc1Q0MsV0FBVyxFQUFFLHlCQUgrQjtJQUk1Q0MsVUFBVSxFQUFFLENBQUM7TUFBRUMsTUFBTSxFQUFFLGlCQUFWO01BQTZCQyxPQUFPLEVBQUU7SUFBdEMsQ0FBRDtFQUpnQyxDQUE3QztFQU1BO0FBQ0E7QUFDQTs7U0FDZTtJQUNkQyxJQUFJLEVBQUUsYUFEUTtJQUVkQyxRQUFRLEVBQUUsMEJBRkk7SUFHZEMsT0FBTyxFQUFFLENBQ1JDLGVBQWUsQ0FBQ0MsUUFBaEIsRUFEUSxFQUVSQyx3QkFBd0IsQ0FBQ0QsUUFBekIsRUFGUSxFQUdSRSwrQkFBK0IsQ0FBQ0YsUUFBaEMsRUFIUSxFQUlSRywwQkFBMEIsQ0FBQ0gsUUFBM0IsRUFKUTtFQUhLLEMifQ==
@@ -61,4 +61,4 @@ sap.ui.define(["sap/base/Log", "sap/base/util/ObjectPath"], function (Log, Objec
61
61
  _exports.applyChange = applyChange;
62
62
  return _exports;
63
63
  }, false);
64
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNoYW5nZVBhZ2VDb25maWd1cmF0aW9uLnRzIl0sIm5hbWVzIjpbImFwcGx5Q2hhbmdlIiwibWFuaWZlc3QiLCJjaGFuZ2UiLCJjaGFuZ2VDb250ZW50IiwiZ2V0Q29udGVudCIsInBhZ2VJRCIsInBhZ2UiLCJ0YXJnZXRzIiwicm91dGluZyIsInBhZ2VTZXR0aW5ncyIsInByb3BlcnR5Q2hhbmdlIiwiZW50aXR5UHJvcGVydHlDaGFuZ2UiLCJvcGVyYXRpb24iLCJwcm9wZXJ0eVBhdGgiLCJwcm9wZXJ0eVZhbHVlIiwidW5kZWZpbmVkIiwic3RhcnRzV2l0aCIsIkxvZyIsImVycm9yIiwicCIsImlkIiwibmFtZSIsIm9wdGlvbnMiLCJzZXR0aW5ncyIsInNwbGl0IiwiYW5ub3RhdGlvblBhdGgiLCJpIiwibGVuZ3RoIiwiaW5kZXhPZiIsImNvbmNhdCIsInNsaWNlIiwiT2JqZWN0UGF0aCIsInNldCJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7O0FBZ0JPLFdBQVNBLFdBQVQsQ0FBcUJDLFFBQXJCLEVBQW9DQyxNQUFwQyxFQUF5RDtBQUFBOztBQUMvRCxRQUFNQyxhQUFhLEdBQUdELE1BQU0sQ0FBQ0UsVUFBUCxFQUF0QjtBQUNBLFFBQU1DLE1BQU0sR0FBR0YsYUFBSCxhQUFHQSxhQUFILHVCQUFHQSxhQUFhLENBQUVHLElBQTlCO0FBQ0EsUUFBTUMsT0FBTyxHQUFHLG9CQUFBTixRQUFRLENBQUMsU0FBRCxDQUFSLDZGQUFxQk8sT0FBckIsZ0ZBQThCRCxPQUE5QixLQUF5QyxFQUF6RDtBQUNBLFFBQUlFLFlBQUo7QUFDQSxRQUFNQyxjQUFjLEdBQUdQLGFBQUgsYUFBR0EsYUFBSCx1QkFBR0EsYUFBYSxDQUFFUSxvQkFBdEMsQ0FMK0QsQ0FPL0Q7O0FBQ0EsUUFDQyxDQUFBRCxjQUFjLFNBQWQsSUFBQUEsY0FBYyxXQUFkLFlBQUFBLGNBQWMsQ0FBRUUsU0FBaEIsTUFBOEIsUUFBOUIsSUFDQSxFQUFDRixjQUFELGFBQUNBLGNBQUQsZUFBQ0EsY0FBYyxDQUFFRyxZQUFqQixDQURBLElBRUEsQ0FBQUgsY0FBYyxTQUFkLElBQUFBLGNBQWMsV0FBZCxZQUFBQSxjQUFjLENBQUVJLGFBQWhCLE1BQWtDQyxTQUZsQyxJQUdBTCxjQUhBLGFBR0FBLGNBSEEsZUFHQUEsY0FBYyxDQUFFRyxZQUFoQixDQUE2QkcsVUFBN0IsQ0FBd0MsR0FBeEMsQ0FKRCxFQUtFO0FBQ0RDLE1BQUFBLEdBQUcsQ0FBQ0MsS0FBSixDQUFVLCtCQUFWO0FBQ0EsYUFBT2pCLFFBQVA7QUFDQTs7QUFFRCxTQUFLLElBQU1rQixDQUFYLElBQWdCWixPQUFoQixFQUF5QjtBQUN4QixVQUFJQSxPQUFPLENBQUNZLENBQUQsQ0FBUCxDQUFXQyxFQUFYLEtBQWtCZixNQUF0QixFQUE4QjtBQUFBOztBQUM3QiwrQkFBSUUsT0FBTyxDQUFDWSxDQUFELENBQVAsQ0FBV0UsSUFBZiw0Q0FBSSxnQkFBaUJMLFVBQWpCLENBQTRCLG1CQUE1QixDQUFKLEVBQXNEO0FBQUE7O0FBQ3JEUCxVQUFBQSxZQUFZLEdBQUcsZUFBQUYsT0FBTyxDQUFDWSxDQUFELENBQVAsZ0ZBQVlHLE9BQVosMEVBQXFCQyxRQUFyQixLQUFpQyxFQUFoRDtBQUNBO0FBQ0E7QUFDRDtBQUNEOztBQUVELFFBQUksQ0FBQ2QsWUFBTCxFQUFtQjtBQUNsQlEsTUFBQUEsR0FBRyxDQUFDQyxLQUFKLDBDQUE0Q2IsTUFBNUM7QUFDQSxhQUFPSixRQUFQO0FBQ0E7O0FBRUQsUUFBSVksWUFBWSxHQUFHSCxjQUFjLENBQUNHLFlBQWYsQ0FBNEJXLEtBQTVCLENBQWtDLEdBQWxDLENBQW5COztBQUNBLFFBQUlYLFlBQVksQ0FBQyxDQUFELENBQVosS0FBb0Isc0JBQXhCLEVBQWdEO0FBQy9DLFVBQUlZLGNBQWMsR0FBRyxFQUFyQixDQUQrQyxDQUUvQzs7QUFDQSxXQUFLLElBQUlDLENBQUMsR0FBRyxDQUFiLEVBQWdCQSxDQUFDLEdBQUdiLFlBQVksQ0FBQ2MsTUFBakMsRUFBeUNELENBQUMsRUFBMUMsRUFBOEM7QUFDN0NELFFBQUFBLGNBQWMsSUFBSSxDQUFDQyxDQUFDLEdBQUcsQ0FBSixHQUFRLEdBQVIsR0FBYyxFQUFmLElBQXFCYixZQUFZLENBQUNhLENBQUQsQ0FBbkQ7O0FBQ0EsWUFBSUQsY0FBYyxDQUFDRyxPQUFmLENBQXVCLEdBQXZCLElBQThCLENBQUMsQ0FBbkMsRUFBc0M7QUFDckNmLFVBQUFBLFlBQVksR0FBRyxDQUFDLHNCQUFELEVBQXlCWSxjQUF6QixFQUF5Q0ksTUFBekMsQ0FBZ0RoQixZQUFZLENBQUNpQixLQUFiLENBQW1CSixDQUFDLEdBQUcsQ0FBdkIsQ0FBaEQsQ0FBZjtBQUNBO0FBQ0E7QUFDRDtBQUNEOztBQUNESyxJQUFBQSxVQUFVLENBQUNDLEdBQVgsQ0FBZW5CLFlBQWYsRUFBNkJILGNBQWMsQ0FBQ0ksYUFBNUMsRUFBMkRMLFlBQTNEO0FBRUEsV0FBT1IsUUFBUDtBQUNBIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBPYmplY3RQYXRoIGZyb20gXCJzYXAvYmFzZS91dGlsL09iamVjdFBhdGhcIjtcblxuZXhwb3J0IHR5cGUgQ2hhbmdlID0ge1xuXHRnZXRDb250ZW50KCk6IENoYW5nZUNvbnRlbnQ7XG59O1xuXG50eXBlIENoYW5nZUNvbnRlbnQgPSB7XG5cdHBhZ2U6IHN0cmluZzsgLy8gSUQgb2YgdGhlIHBhZ2UgdG8gYmUgY2hhbmdlZFxuXHRlbnRpdHlQcm9wZXJ0eUNoYW5nZTogRW50aXR5UHJvcGVydHlDaGFuZ2U7XG59O1xuXG50eXBlIEVudGl0eVByb3BlcnR5Q2hhbmdlID0ge1xuXHRwcm9wZXJ0eVBhdGg6IHN0cmluZzsgLy8gcGF0aCB0byB0aGUgcHJvcGVydHkgdG8gYmUgY2hhbmdlZFxuXHRvcGVyYXRpb246IHN0cmluZzsgLy8gb25seSBVUFNFUlQgc3VwcG9ydGVkXG5cdHByb3BlcnR5VmFsdWU6IHN0cmluZyB8IE9iamVjdDsgLy93aGF0IHRvIGJlIGNoYW5nZWRcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBhcHBseUNoYW5nZShtYW5pZmVzdDogYW55LCBjaGFuZ2U6IENoYW5nZSk6IGFueSB7XG5cdGNvbnN0IGNoYW5nZUNvbnRlbnQgPSBjaGFuZ2UuZ2V0Q29udGVudCgpO1xuXHRjb25zdCBwYWdlSUQgPSBjaGFuZ2VDb250ZW50Py5wYWdlO1xuXHRjb25zdCB0YXJnZXRzID0gbWFuaWZlc3RbXCJzYXAudWk1XCJdPy5yb3V0aW5nPy50YXJnZXRzIHx8IHt9O1xuXHRsZXQgcGFnZVNldHRpbmdzO1xuXHRjb25zdCBwcm9wZXJ0eUNoYW5nZSA9IGNoYW5nZUNvbnRlbnQ/LmVudGl0eVByb3BlcnR5Q2hhbmdlO1xuXG5cdC8vIHJldHVybiB1bm1vZGlmaWVkIG1hbmlmZXN0IGluIGNhc2UgY2hhbmdlIG5vdCB2YWxpZFxuXHRpZiAoXG5cdFx0cHJvcGVydHlDaGFuZ2U/Lm9wZXJhdGlvbiAhPT0gXCJVUFNFUlRcIiB8fFxuXHRcdCFwcm9wZXJ0eUNoYW5nZT8ucHJvcGVydHlQYXRoIHx8XG5cdFx0cHJvcGVydHlDaGFuZ2U/LnByb3BlcnR5VmFsdWUgPT09IHVuZGVmaW5lZCB8fFxuXHRcdHByb3BlcnR5Q2hhbmdlPy5wcm9wZXJ0eVBhdGguc3RhcnRzV2l0aChcIi9cIilcblx0KSB7XG5cdFx0TG9nLmVycm9yKFwiQ2hhbmdlIGNvbnRlbnQgaXMgbm90IGEgdmFsaWRcIik7XG5cdFx0cmV0dXJuIG1hbmlmZXN0O1xuXHR9XG5cblx0Zm9yIChjb25zdCBwIGluIHRhcmdldHMpIHtcblx0XHRpZiAodGFyZ2V0c1twXS5pZCA9PT0gcGFnZUlEKSB7XG5cdFx0XHRpZiAodGFyZ2V0c1twXS5uYW1lPy5zdGFydHNXaXRoKFwic2FwLmZlLnRlbXBsYXRlcy5cIikpIHtcblx0XHRcdFx0cGFnZVNldHRpbmdzID0gdGFyZ2V0c1twXT8ub3B0aW9ucz8uc2V0dGluZ3MgfHwge307XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdGlmICghcGFnZVNldHRpbmdzKSB7XG5cdFx0TG9nLmVycm9yKGBObyBGaW9yaSBlbGVtZW50cyBwYWdlIHdpdGggSUQgJHtwYWdlSUR9IGZvdW5kIGluIHJvdXRpbmcgdGFyZ2V0cy5gKTtcblx0XHRyZXR1cm4gbWFuaWZlc3Q7XG5cdH1cblxuXHRsZXQgcHJvcGVydHlQYXRoID0gcHJvcGVydHlDaGFuZ2UucHJvcGVydHlQYXRoLnNwbGl0KFwiL1wiKTtcblx0aWYgKHByb3BlcnR5UGF0aFswXSA9PT0gXCJjb250cm9sQ29uZmlndXJhdGlvblwiKSB7XG5cdFx0bGV0IGFubm90YXRpb25QYXRoID0gXCJcIjtcblx0XHQvLyB0aGUgYW5ub3RhdGlvbiBwYXRoIGluIHRoZSBjb250cm9sIGNvbmZpZ3VyYXRpb24gaGFzIHRvIHN0YXkgdG9nZXRoZXIuIEZvciBub3cgcmVseSBvbiB0aGUgZmFjdCB0aGUgQCBpcyBpbiB0aGUgbGFzdCBwYXJ0XG5cdFx0Zm9yIChsZXQgaSA9IDE7IGkgPCBwcm9wZXJ0eVBhdGgubGVuZ3RoOyBpKyspIHtcblx0XHRcdGFubm90YXRpb25QYXRoICs9IChpID4gMSA/IFwiL1wiIDogXCJcIikgKyBwcm9wZXJ0eVBhdGhbaV07XG5cdFx0XHRpZiAoYW5ub3RhdGlvblBhdGguaW5kZXhPZihcIkBcIikgPiAtMSkge1xuXHRcdFx0XHRwcm9wZXJ0eVBhdGggPSBbXCJjb250cm9sQ29uZmlndXJhdGlvblwiLCBhbm5vdGF0aW9uUGF0aF0uY29uY2F0KHByb3BlcnR5UGF0aC5zbGljZShpICsgMSkpO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0T2JqZWN0UGF0aC5zZXQocHJvcGVydHlQYXRoLCBwcm9wZXJ0eUNoYW5nZS5wcm9wZXJ0eVZhbHVlLCBwYWdlU2V0dGluZ3MpO1xuXG5cdHJldHVybiBtYW5pZmVzdDtcbn1cbiJdfQ==
64
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhcHBseUNoYW5nZSIsIm1hbmlmZXN0IiwiY2hhbmdlIiwiY2hhbmdlQ29udGVudCIsImdldENvbnRlbnQiLCJwYWdlSUQiLCJwYWdlIiwidGFyZ2V0cyIsInJvdXRpbmciLCJwYWdlU2V0dGluZ3MiLCJwcm9wZXJ0eUNoYW5nZSIsImVudGl0eVByb3BlcnR5Q2hhbmdlIiwib3BlcmF0aW9uIiwicHJvcGVydHlQYXRoIiwicHJvcGVydHlWYWx1ZSIsInVuZGVmaW5lZCIsInN0YXJ0c1dpdGgiLCJMb2ciLCJlcnJvciIsInAiLCJpZCIsIm5hbWUiLCJvcHRpb25zIiwic2V0dGluZ3MiLCJzcGxpdCIsImFubm90YXRpb25QYXRoIiwiaSIsImxlbmd0aCIsImluZGV4T2YiLCJjb25jYXQiLCJzbGljZSIsIk9iamVjdFBhdGgiLCJzZXQiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIkNoYW5nZVBhZ2VDb25maWd1cmF0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IE9iamVjdFBhdGggZnJvbSBcInNhcC9iYXNlL3V0aWwvT2JqZWN0UGF0aFwiO1xuXG5leHBvcnQgdHlwZSBDaGFuZ2UgPSB7XG5cdGdldENvbnRlbnQoKTogQ2hhbmdlQ29udGVudDtcbn07XG5cbnR5cGUgQ2hhbmdlQ29udGVudCA9IHtcblx0cGFnZTogc3RyaW5nOyAvLyBJRCBvZiB0aGUgcGFnZSB0byBiZSBjaGFuZ2VkXG5cdGVudGl0eVByb3BlcnR5Q2hhbmdlOiBFbnRpdHlQcm9wZXJ0eUNoYW5nZTtcbn07XG5cbnR5cGUgRW50aXR5UHJvcGVydHlDaGFuZ2UgPSB7XG5cdHByb3BlcnR5UGF0aDogc3RyaW5nOyAvLyBwYXRoIHRvIHRoZSBwcm9wZXJ0eSB0byBiZSBjaGFuZ2VkXG5cdG9wZXJhdGlvbjogc3RyaW5nOyAvLyBvbmx5IFVQU0VSVCBzdXBwb3J0ZWRcblx0cHJvcGVydHlWYWx1ZTogc3RyaW5nIHwgT2JqZWN0OyAvL3doYXQgdG8gYmUgY2hhbmdlZFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGx5Q2hhbmdlKG1hbmlmZXN0OiBhbnksIGNoYW5nZTogQ2hhbmdlKTogYW55IHtcblx0Y29uc3QgY2hhbmdlQ29udGVudCA9IGNoYW5nZS5nZXRDb250ZW50KCk7XG5cdGNvbnN0IHBhZ2VJRCA9IGNoYW5nZUNvbnRlbnQ/LnBhZ2U7XG5cdGNvbnN0IHRhcmdldHMgPSBtYW5pZmVzdFtcInNhcC51aTVcIl0/LnJvdXRpbmc/LnRhcmdldHMgfHwge307XG5cdGxldCBwYWdlU2V0dGluZ3M7XG5cdGNvbnN0IHByb3BlcnR5Q2hhbmdlID0gY2hhbmdlQ29udGVudD8uZW50aXR5UHJvcGVydHlDaGFuZ2U7XG5cblx0Ly8gcmV0dXJuIHVubW9kaWZpZWQgbWFuaWZlc3QgaW4gY2FzZSBjaGFuZ2Ugbm90IHZhbGlkXG5cdGlmIChcblx0XHRwcm9wZXJ0eUNoYW5nZT8ub3BlcmF0aW9uICE9PSBcIlVQU0VSVFwiIHx8XG5cdFx0IXByb3BlcnR5Q2hhbmdlPy5wcm9wZXJ0eVBhdGggfHxcblx0XHRwcm9wZXJ0eUNoYW5nZT8ucHJvcGVydHlWYWx1ZSA9PT0gdW5kZWZpbmVkIHx8XG5cdFx0cHJvcGVydHlDaGFuZ2U/LnByb3BlcnR5UGF0aC5zdGFydHNXaXRoKFwiL1wiKVxuXHQpIHtcblx0XHRMb2cuZXJyb3IoXCJDaGFuZ2UgY29udGVudCBpcyBub3QgYSB2YWxpZFwiKTtcblx0XHRyZXR1cm4gbWFuaWZlc3Q7XG5cdH1cblxuXHRmb3IgKGNvbnN0IHAgaW4gdGFyZ2V0cykge1xuXHRcdGlmICh0YXJnZXRzW3BdLmlkID09PSBwYWdlSUQpIHtcblx0XHRcdGlmICh0YXJnZXRzW3BdLm5hbWU/LnN0YXJ0c1dpdGgoXCJzYXAuZmUudGVtcGxhdGVzLlwiKSkge1xuXHRcdFx0XHRwYWdlU2V0dGluZ3MgPSB0YXJnZXRzW3BdPy5vcHRpb25zPy5zZXR0aW5ncyB8fCB7fTtcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0aWYgKCFwYWdlU2V0dGluZ3MpIHtcblx0XHRMb2cuZXJyb3IoYE5vIEZpb3JpIGVsZW1lbnRzIHBhZ2Ugd2l0aCBJRCAke3BhZ2VJRH0gZm91bmQgaW4gcm91dGluZyB0YXJnZXRzLmApO1xuXHRcdHJldHVybiBtYW5pZmVzdDtcblx0fVxuXG5cdGxldCBwcm9wZXJ0eVBhdGggPSBwcm9wZXJ0eUNoYW5nZS5wcm9wZXJ0eVBhdGguc3BsaXQoXCIvXCIpO1xuXHRpZiAocHJvcGVydHlQYXRoWzBdID09PSBcImNvbnRyb2xDb25maWd1cmF0aW9uXCIpIHtcblx0XHRsZXQgYW5ub3RhdGlvblBhdGggPSBcIlwiO1xuXHRcdC8vIHRoZSBhbm5vdGF0aW9uIHBhdGggaW4gdGhlIGNvbnRyb2wgY29uZmlndXJhdGlvbiBoYXMgdG8gc3RheSB0b2dldGhlci4gRm9yIG5vdyByZWx5IG9uIHRoZSBmYWN0IHRoZSBAIGlzIGluIHRoZSBsYXN0IHBhcnRcblx0XHRmb3IgKGxldCBpID0gMTsgaSA8IHByb3BlcnR5UGF0aC5sZW5ndGg7IGkrKykge1xuXHRcdFx0YW5ub3RhdGlvblBhdGggKz0gKGkgPiAxID8gXCIvXCIgOiBcIlwiKSArIHByb3BlcnR5UGF0aFtpXTtcblx0XHRcdGlmIChhbm5vdGF0aW9uUGF0aC5pbmRleE9mKFwiQFwiKSA+IC0xKSB7XG5cdFx0XHRcdHByb3BlcnR5UGF0aCA9IFtcImNvbnRyb2xDb25maWd1cmF0aW9uXCIsIGFubm90YXRpb25QYXRoXS5jb25jYXQocHJvcGVydHlQYXRoLnNsaWNlKGkgKyAxKSk7XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRPYmplY3RQYXRoLnNldChwcm9wZXJ0eVBhdGgsIHByb3BlcnR5Q2hhbmdlLnByb3BlcnR5VmFsdWUsIHBhZ2VTZXR0aW5ncyk7XG5cblx0cmV0dXJuIG1hbmlmZXN0O1xufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7RUFrQk8sU0FBU0EsV0FB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