@sapui5/sap.fe.core 1.100.0 → 1.101.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 (250) hide show
  1. package/package.json +4 -4
  2. package/src/sap/fe/core/.library +2 -3
  3. package/src/sap/fe/core/AnnotationHelper.js +43 -24
  4. package/src/sap/fe/core/AnnotationHelper.ts +43 -37
  5. package/src/sap/fe/core/AppComponent.js +20 -27
  6. package/src/sap/fe/core/AppComponent.ts +19 -25
  7. package/src/sap/fe/core/AppStateHandler.js +5 -5
  8. package/src/sap/fe/core/AppStateHandler.ts +2 -2
  9. package/src/sap/fe/core/BaseController.js +9 -9
  10. package/src/sap/fe/core/BaseController.ts +3 -4
  11. package/src/sap/fe/core/CommonUtils.js +74 -17
  12. package/src/sap/fe/core/CommonUtils.ts +181 -110
  13. package/src/sap/fe/core/ExtensionAPI.js +11 -10
  14. package/src/sap/fe/core/ExtensionAPI.ts +22 -30
  15. package/src/sap/fe/core/PageController.js +12 -11
  16. package/src/sap/fe/core/PageController.ts +34 -34
  17. package/src/sap/fe/core/RouterProxy.js +36 -24
  18. package/src/sap/fe/core/RouterProxy.ts +36 -22
  19. package/src/sap/fe/core/TemplateComponent.js +193 -118
  20. package/src/sap/fe/core/TemplateComponent.ts +105 -117
  21. package/src/sap/fe/core/TemplateModel.js +6 -8
  22. package/src/sap/fe/core/TemplateModel.ts +2 -2
  23. package/src/sap/fe/core/TransactionHelper.js +33 -18
  24. package/src/sap/fe/core/TransactionHelper.ts +172 -153
  25. package/src/sap/fe/core/actions/collaboration/ActivitySync.js +31 -17
  26. package/src/sap/fe/core/actions/collaboration/ActivitySync.ts +52 -45
  27. package/src/sap/fe/core/actions/collaboration/CollaborationCommon.js +16 -6
  28. package/src/sap/fe/core/actions/collaboration/CollaborationCommon.ts +13 -3
  29. package/src/sap/fe/core/actions/collaboration/Manage.js +9 -7
  30. package/src/sap/fe/core/actions/collaboration/Manage.ts +33 -31
  31. package/src/sap/fe/core/actions/collaboration/ManageDialog.fragment.xml +53 -56
  32. package/src/sap/fe/core/actions/draft.js +308 -166
  33. package/src/sap/fe/core/actions/draft.ts +177 -74
  34. package/src/sap/fe/core/actions/messageHandling.js +25 -13
  35. package/src/sap/fe/core/actions/messageHandling.ts +49 -39
  36. package/src/sap/fe/core/actions/operations.js +4 -4
  37. package/src/sap/fe/core/actions/operations.ts +3 -2
  38. package/src/sap/fe/core/buildingBlocks/AttributeModel.js +60 -0
  39. package/src/sap/fe/core/buildingBlocks/AttributeModel.ts +37 -0
  40. package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +165 -0
  41. package/src/sap/fe/core/buildingBlocks/BuildingBlock.ts +178 -0
  42. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js +707 -0
  43. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.ts +628 -0
  44. package/src/sap/fe/core/buildingBlocks/TraceInfo.js +436 -0
  45. package/src/sap/fe/core/buildingBlocks/TraceInfo.ts +431 -0
  46. package/src/sap/fe/core/controllerextensions/EditFlow.js +506 -245
  47. package/src/sap/fe/core/controllerextensions/EditFlow.ts +395 -275
  48. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +11 -11
  49. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +6 -7
  50. package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +15 -17
  51. package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +98 -96
  52. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +15 -15
  53. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +60 -53
  54. package/src/sap/fe/core/controllerextensions/InternalRouting.js +94 -42
  55. package/src/sap/fe/core/controllerextensions/InternalRouting.ts +114 -91
  56. package/src/sap/fe/core/controllerextensions/KPIManagement.js +14 -14
  57. package/src/sap/fe/core/controllerextensions/KPIManagement.ts +12 -11
  58. package/src/sap/fe/core/controllerextensions/MassEdit.js +12 -12
  59. package/src/sap/fe/core/controllerextensions/MassEdit.ts +8 -9
  60. package/src/sap/fe/core/controllerextensions/MessageHandler.js +13 -25
  61. package/src/sap/fe/core/controllerextensions/MessageHandler.ts +18 -28
  62. package/src/sap/fe/core/controllerextensions/PageReady.js +25 -23
  63. package/src/sap/fe/core/controllerextensions/PageReady.ts +49 -47
  64. package/src/sap/fe/core/controllerextensions/Paginator.js +13 -13
  65. package/src/sap/fe/core/controllerextensions/Paginator.ts +24 -18
  66. package/src/sap/fe/core/controllerextensions/Placeholder.js +10 -10
  67. package/src/sap/fe/core/controllerextensions/Placeholder.ts +12 -14
  68. package/src/sap/fe/core/controllerextensions/Routing.js +11 -11
  69. package/src/sap/fe/core/controllerextensions/Routing.ts +12 -13
  70. package/src/sap/fe/core/controllerextensions/Share.js +16 -16
  71. package/src/sap/fe/core/controllerextensions/Share.ts +32 -32
  72. package/src/sap/fe/core/controllerextensions/SideEffects.js +14 -14
  73. package/src/sap/fe/core/controllerextensions/SideEffects.ts +62 -63
  74. package/src/sap/fe/core/controllerextensions/ViewState.js +17 -31
  75. package/src/sap/fe/core/controllerextensions/ViewState.ts +93 -102
  76. package/src/sap/fe/core/controls/Any.js +28 -0
  77. package/src/sap/fe/core/controls/Any.ts +30 -0
  78. package/src/sap/fe/core/controls/CommandExecution.js +38 -15
  79. package/src/sap/fe/core/controls/CommandExecution.ts +20 -20
  80. package/src/sap/fe/core/controls/ConditionalWrapper.js +136 -65
  81. package/src/sap/fe/core/controls/ConditionalWrapper.ts +49 -58
  82. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +366 -0
  83. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.ts +278 -0
  84. package/src/sap/fe/core/controls/CustomQuickViewPage.js +73 -36
  85. package/src/sap/fe/core/controls/CustomQuickViewPage.ts +22 -32
  86. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossDraft.fragment.xml +44 -5
  87. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +116 -66
  88. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +121 -67
  89. package/src/sap/fe/core/controls/FieldWrapper.js +171 -87
  90. package/src/sap/fe/core/controls/FieldWrapper.ts +69 -80
  91. package/src/sap/fe/core/controls/FileWrapper.js +313 -0
  92. package/src/sap/fe/core/controls/FileWrapper.ts +169 -0
  93. package/src/sap/fe/core/controls/FilterBar.js +154 -119
  94. package/src/sap/fe/core/controls/FilterBar.ts +128 -123
  95. package/src/sap/fe/core/controls/FormElementWrapper.js +92 -37
  96. package/src/sap/fe/core/controls/FormElementWrapper.ts +32 -35
  97. package/src/sap/fe/core/controls/filterbar/FilterContainer.js +111 -89
  98. package/src/sap/fe/core/controls/filterbar/FilterContainer.ts +86 -82
  99. package/src/sap/fe/core/controls/filterbar/VisualFilter.js +242 -193
  100. package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +211 -204
  101. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +152 -116
  102. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +105 -105
  103. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +1 -1
  104. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +2 -2
  105. package/src/sap/fe/core/controls/massEdit/MassEditDialog.fragment.xml +37 -42
  106. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +7 -6
  107. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +15 -14
  108. package/src/sap/fe/core/converters/ManifestSettings.js +2 -1
  109. package/src/sap/fe/core/converters/ManifestSettings.ts +5 -1
  110. package/src/sap/fe/core/converters/annotations/DataField.js +1 -2
  111. package/src/sap/fe/core/converters/annotations/DataField.ts +3 -4
  112. package/src/sap/fe/core/converters/controls/Common/Action.js +10 -10
  113. package/src/sap/fe/core/converters/controls/Common/Action.ts +20 -19
  114. package/src/sap/fe/core/converters/controls/Common/Chart.js +8 -8
  115. package/src/sap/fe/core/converters/controls/Common/Chart.ts +12 -11
  116. package/src/sap/fe/core/converters/controls/Common/Form.js +5 -5
  117. package/src/sap/fe/core/converters/controls/Common/Form.ts +3 -1
  118. package/src/sap/fe/core/converters/controls/Common/KPI.js +1 -1
  119. package/src/sap/fe/core/converters/controls/Common/KPI.ts +2 -3
  120. package/src/sap/fe/core/converters/controls/Common/Table.js +245 -112
  121. package/src/sap/fe/core/converters/controls/Common/Table.ts +305 -193
  122. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +5 -5
  123. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +4 -7
  124. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +72 -43
  125. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +134 -100
  126. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +6 -6
  127. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +20 -18
  128. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +5 -2
  129. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +4 -1
  130. package/src/sap/fe/core/converters/objectPage/FormMenuActions.js +1 -1
  131. package/src/sap/fe/core/converters/objectPage/FormMenuActions.ts +0 -4
  132. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +27 -24
  133. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +49 -40
  134. package/src/sap/fe/core/converters/templates/ListReportConverter.js +33 -22
  135. package/src/sap/fe/core/converters/templates/ListReportConverter.ts +77 -62
  136. package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +5 -5
  137. package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +3 -7
  138. package/src/sap/fe/core/formatters/KPIFormatter.js +3 -12
  139. package/src/sap/fe/core/formatters/KPIFormatter.ts +3 -2
  140. package/src/sap/fe/core/formatters/TableFormatter.js +2 -2
  141. package/src/sap/fe/core/formatters/TableFormatter.ts +1 -1
  142. package/src/sap/fe/core/formatters/ValueFormatter.js +4 -4
  143. package/src/sap/fe/core/formatters/ValueFormatter.ts +4 -7
  144. package/src/sap/fe/core/fpm/Component.js +46 -17
  145. package/src/sap/fe/core/fpm/Component.ts +11 -16
  146. package/src/sap/fe/core/helpers/AppStartupHelper.js +4 -4
  147. package/src/sap/fe/core/helpers/AppStartupHelper.ts +3 -3
  148. package/src/sap/fe/core/helpers/ClassSupport.js +273 -256
  149. package/src/sap/fe/core/helpers/ClassSupport.ts +314 -237
  150. package/src/sap/fe/core/helpers/MassEditHelper.js +173 -39
  151. package/src/sap/fe/core/helpers/MassEditHelper.ts +236 -132
  152. package/src/sap/fe/core/helpers/ModelHelper.js +29 -1
  153. package/src/sap/fe/core/helpers/ModelHelper.ts +23 -0
  154. package/src/sap/fe/core/helpers/PasteHelper.js +4 -4
  155. package/src/sap/fe/core/helpers/PasteHelper.ts +4 -3
  156. package/src/sap/fe/core/helpers/SemanticDateOperators.js +3 -3
  157. package/src/sap/fe/core/helpers/SemanticDateOperators.ts +3 -1
  158. package/src/sap/fe/core/helpers/SemanticKeyHelper.js +1 -1
  159. package/src/sap/fe/core/helpers/SemanticKeyHelper.ts +1 -1
  160. package/src/sap/fe/core/helpers/StableIdHelper.js +1 -7
  161. package/src/sap/fe/core/helpers/StableIdHelper.ts +0 -4
  162. package/src/sap/fe/core/jsx-runtime/jsx.js +35 -5
  163. package/src/sap/fe/core/jsx-runtime/jsx.ts +22 -8
  164. package/src/sap/fe/core/library.js +4 -5
  165. package/src/sap/fe/core/library.ts +17 -17
  166. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +1 -1
  167. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +0 -3
  168. package/src/sap/fe/core/messagebundle.properties +23 -8
  169. package/src/sap/fe/core/messagebundle_ar.properties +2 -0
  170. package/src/sap/fe/core/messagebundle_bg.properties +2 -0
  171. package/src/sap/fe/core/messagebundle_ca.properties +2 -0
  172. package/src/sap/fe/core/messagebundle_cs.properties +2 -0
  173. package/src/sap/fe/core/messagebundle_cy.properties +5 -3
  174. package/src/sap/fe/core/messagebundle_da.properties +2 -0
  175. package/src/sap/fe/core/messagebundle_de.properties +2 -0
  176. package/src/sap/fe/core/messagebundle_el.properties +2 -0
  177. package/src/sap/fe/core/messagebundle_en.properties +2 -0
  178. package/src/sap/fe/core/messagebundle_en_GB.properties +2 -0
  179. package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +2 -0
  180. package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +2 -0
  181. package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +2 -0
  182. package/src/sap/fe/core/messagebundle_es.properties +2 -0
  183. package/src/sap/fe/core/messagebundle_es_MX.properties +2 -0
  184. package/src/sap/fe/core/messagebundle_et.properties +2 -0
  185. package/src/sap/fe/core/messagebundle_fi.properties +2 -0
  186. package/src/sap/fe/core/messagebundle_fr.properties +4 -2
  187. package/src/sap/fe/core/messagebundle_fr_CA.properties +5 -3
  188. package/src/sap/fe/core/messagebundle_hi.properties +2 -0
  189. package/src/sap/fe/core/messagebundle_hr.properties +5 -3
  190. package/src/sap/fe/core/messagebundle_hu.properties +2 -0
  191. package/src/sap/fe/core/messagebundle_id.properties +2 -0
  192. package/src/sap/fe/core/messagebundle_it.properties +2 -0
  193. package/src/sap/fe/core/messagebundle_iw.properties +2 -0
  194. package/src/sap/fe/core/messagebundle_ja.properties +2 -0
  195. package/src/sap/fe/core/messagebundle_kk.properties +2 -0
  196. package/src/sap/fe/core/messagebundle_ko.properties +2 -0
  197. package/src/sap/fe/core/messagebundle_lt.properties +2 -0
  198. package/src/sap/fe/core/messagebundle_lv.properties +5 -3
  199. package/src/sap/fe/core/messagebundle_ms.properties +2 -0
  200. package/src/sap/fe/core/messagebundle_nl.properties +2 -0
  201. package/src/sap/fe/core/messagebundle_no.properties +2 -0
  202. package/src/sap/fe/core/messagebundle_pl.properties +5 -3
  203. package/src/sap/fe/core/messagebundle_pt.properties +2 -0
  204. package/src/sap/fe/core/messagebundle_pt_PT.properties +2 -0
  205. package/src/sap/fe/core/messagebundle_ro.properties +5 -3
  206. package/src/sap/fe/core/messagebundle_ru.properties +5 -3
  207. package/src/sap/fe/core/messagebundle_sh.properties +2 -0
  208. package/src/sap/fe/core/messagebundle_sk.properties +2 -0
  209. package/src/sap/fe/core/messagebundle_sl.properties +2 -0
  210. package/src/sap/fe/core/messagebundle_sv.properties +3 -1
  211. package/src/sap/fe/core/messagebundle_th.properties +2 -0
  212. package/src/sap/fe/core/messagebundle_tr.properties +2 -0
  213. package/src/sap/fe/core/messagebundle_uk.properties +2 -0
  214. package/src/sap/fe/core/messagebundle_vi.properties +2 -0
  215. package/src/sap/fe/core/messagebundle_zh_CN.properties +5 -3
  216. package/src/sap/fe/core/messagebundle_zh_TW.properties +5 -3
  217. package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +4 -4
  218. package/src/sap/fe/core/services/AsyncComponentServiceFactory.ts +1 -1
  219. package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +5 -5
  220. package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +1 -2
  221. package/src/sap/fe/core/services/EnvironmentServiceFactory.js +7 -7
  222. package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +6 -5
  223. package/src/sap/fe/core/services/NavigationServiceFactory.js +4 -4
  224. package/src/sap/fe/core/services/NavigationServiceFactory.ts +1 -1
  225. package/src/sap/fe/core/services/ResourceModelServiceFactory.js +4 -4
  226. package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +1 -1
  227. package/src/sap/fe/core/services/RoutingServiceFactory.js +98 -62
  228. package/src/sap/fe/core/services/RoutingServiceFactory.ts +51 -42
  229. package/src/sap/fe/core/services/ShellServicesFactory.js +69 -29
  230. package/src/sap/fe/core/services/ShellServicesFactory.ts +26 -29
  231. package/src/sap/fe/core/services/SideEffectsServiceFactory.js +4 -4
  232. package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +1 -1
  233. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +8 -8
  234. package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +6 -17
  235. package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +43 -5
  236. package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.ts +6 -3
  237. package/src/sap/fe/core/support/CommonHelper.js +1 -1
  238. package/src/sap/fe/core/support/CommonHelper.ts +0 -3
  239. package/src/sap/fe/core/templating/DataModelPathHelper.js +2 -9
  240. package/src/sap/fe/core/templating/DataModelPathHelper.ts +32 -38
  241. package/src/sap/fe/core/templating/DisplayModeFormatter.js +23 -3
  242. package/src/sap/fe/core/templating/DisplayModeFormatter.ts +26 -5
  243. package/src/sap/fe/core/templating/PropertyHelper.js +15 -1
  244. package/src/sap/fe/core/templating/PropertyHelper.ts +30 -23
  245. package/src/sap/fe/core/templating/UIFormatters.js +121 -21
  246. package/src/sap/fe/core/templating/UIFormatters.ts +134 -49
  247. package/src/sap/fe/core/type/Email.js +26 -8
  248. package/src/sap/fe/core/type/Email.ts +8 -7
  249. package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.js +0 -78
  250. package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.ts +0 -65
@@ -2,13 +2,32 @@
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
3
  * (c) Copyright 2009-2021 SAP SE. All rights reserved
4
4
  */
5
- sap.ui.define(["sap/ui/core/CommandExecution", "sap/base/Log", "sap/ui/core/Element", "sap/ui/core/Shortcut"], function (CommandExecution, Log, Element, Shortcut) {
5
+ sap.ui.define(["sap/base/Log", "sap/fe/core/helpers/ClassSupport", "sap/ui/core/CommandExecution", "sap/ui/core/Element", "sap/ui/core/Shortcut"], function (Log, ClassSupport, CommandExecution, Element, Shortcut) {
6
6
  "use strict";
7
7
 
8
- var CustomCommandExecution = CommandExecution.extend("sap.fe.core.controls.CommandExecution", {
9
- setParent: function (oParent) {
10
- var aExcludedSingleKey = ["escape"];
11
- CommandExecution.prototype.setParent.apply(this, [oParent]);
8
+ var _dec, _class;
9
+
10
+ var defineUI5Class = ClassSupport.defineUI5Class;
11
+
12
+ function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
13
+
14
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
15
+
16
+ var CustomCommandExecution = (_dec = defineUI5Class("sap.fe.core.controls.CommandExecution"), _dec(_class = /*#__PURE__*/function (_CommandExecution) {
17
+ _inheritsLoose(CustomCommandExecution, _CommandExecution);
18
+
19
+ function CustomCommandExecution() {
20
+ return _CommandExecution.apply(this, arguments) || this;
21
+ }
22
+
23
+ var _proto = CustomCommandExecution.prototype;
24
+
25
+ _proto.setParent = function setParent(oParent) {
26
+ var aExcludedSingleKey = ["escape"]; // eslint-disable-next-line @typescript-eslint/ban-ts-comment
27
+ // @ts-ignore
28
+
29
+ _CommandExecution.prototype.setParent.call(this, oParent);
30
+
12
31
  var aCommands = oParent.data("sap.ui.core.Shortcut");
13
32
 
14
33
  if (Array.isArray(aCommands) && aCommands.length > 0) {
@@ -39,8 +58,9 @@ sap.ui.define(["sap/ui/core/CommandExecution", "sap/base/Log", "sap/ui/core/Elem
39
58
 
40
59
  return this;
41
60
  }
42
- },
43
- destroy: function (bSuppressInvalidate) {
61
+ };
62
+
63
+ _proto.destroy = function destroy(bSuppressInvalidate) {
44
64
  var oParent = this.getParent();
45
65
 
46
66
  if (oParent) {
@@ -54,19 +74,22 @@ sap.ui.define(["sap/ui/core/CommandExecution", "sap/base/Log", "sap/ui/core/Elem
54
74
  }
55
75
 
56
76
  Element.prototype.destroy.apply(this, [bSuppressInvalidate]);
57
- },
58
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
59
- // @ts-ignore
60
- setVisible: function (bValue) {
77
+ };
78
+
79
+ _proto.setVisible = function setVisible(bValue) {
61
80
  var oCommand = this._getCommandInfo();
62
81
 
63
82
  if (oCommand) {
64
- return CommandExecution.prototype.setVisible.apply(this, [bValue]);
83
+ _CommandExecution.prototype.setVisible.call(this, bValue);
65
84
  } else {
66
85
  Log.info("There is no shortcut definition registered in the manifest for the command : " + this.getCommand());
67
86
  }
68
- }
69
- });
87
+
88
+ return this;
89
+ };
90
+
91
+ return CustomCommandExecution;
92
+ }(CommandExecution)) || _class);
70
93
  return CustomCommandExecution;
71
94
  }, false);
72
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvbW1hbmRFeGVjdXRpb24udHMiXSwibmFtZXMiOlsiQ3VzdG9tQ29tbWFuZEV4ZWN1dGlvbiIsIkNvbW1hbmRFeGVjdXRpb24iLCJleHRlbmQiLCJzZXRQYXJlbnQiLCJvUGFyZW50IiwiYUV4Y2x1ZGVkU2luZ2xlS2V5IiwicHJvdG90eXBlIiwiYXBwbHkiLCJhQ29tbWFuZHMiLCJkYXRhIiwiQXJyYXkiLCJpc0FycmF5IiwibGVuZ3RoIiwib0NvbW1hbmQiLCJvU2hvcnRjdXQiLCJzaG9ydGN1dFNwZWMiLCJpbmRleE9mIiwia2V5IiwiYWRkRGVsZWdhdGUiLCJvRXZlbnQiLCJ0b0xvd2VyQ2FzZSIsInNFbGVtZW50IiwidGFyZ2V0IiwidGFnTmFtZSIsInVuZGVmaW5lZCIsInNldE1hcmtlZCIsImRlc3Ryb3kiLCJiU3VwcHJlc3NJbnZhbGlkYXRlIiwiZ2V0UGFyZW50IiwiX2dldENvbW1hbmRJbmZvIiwiU2hvcnRjdXQiLCJ1bnJlZ2lzdGVyIiwic2hvcnRjdXQiLCJfY2xlYW51cENvbnRleHQiLCJFbGVtZW50Iiwic2V0VmlzaWJsZSIsImJWYWx1ZSIsIkxvZyIsImluZm8iLCJnZXRDb21tYW5kIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7O0FBU0EsTUFBTUEsc0JBQXNCLEdBQUdDLGdCQUFnQixDQUFDQyxNQUFqQixDQUF3Qix1Q0FBeEIsRUFBaUU7QUFDL0ZDLElBQUFBLFNBQVMsRUFBRSxVQUFTQyxPQUFULEVBQXVCO0FBQ2pDLFVBQU1DLGtCQUFrQixHQUFHLENBQUMsUUFBRCxDQUEzQjtBQUNDSixNQUFBQSxnQkFBZ0IsQ0FBQ0ssU0FBbEIsQ0FBb0NILFNBQXBDLENBQThDSSxLQUE5QyxDQUFvRCxJQUFwRCxFQUEwRCxDQUFDSCxPQUFELENBQTFEO0FBQ0EsVUFBTUksU0FBUyxHQUFHSixPQUFPLENBQUNLLElBQVIsQ0FBYSxzQkFBYixDQUFsQjs7QUFDQSxVQUFJQyxLQUFLLENBQUNDLE9BQU4sQ0FBY0gsU0FBZCxLQUE0QkEsU0FBUyxDQUFDSSxNQUFWLEdBQW1CLENBQW5ELEVBQXNEO0FBQ3JELFlBQU1DLFFBQVEsR0FBR1QsT0FBTyxDQUFDSyxJQUFSLENBQWEsc0JBQWIsRUFBcUNELFNBQVMsQ0FBQ0ksTUFBVixHQUFtQixDQUF4RCxDQUFqQjtBQUFBLFlBQ0NFLFNBQVMsR0FBR0QsUUFBUSxDQUFDRSxZQUR0Qjs7QUFFQSxZQUFJRCxTQUFTLElBQUlULGtCQUFrQixDQUFDVyxPQUFuQixDQUEyQkYsU0FBUyxDQUFDRyxHQUFyQyxJQUE0QyxDQUFDLENBQTlELEVBQWlFO0FBQ2hFO0FBQ0EsZUFBSyxJQUFNQSxHQUFYLElBQWtCSCxTQUFsQixFQUE2QjtBQUM1QixnQkFBSUEsU0FBUyxDQUFDRyxHQUFELENBQVQsSUFBa0JBLEdBQUcsS0FBSyxLQUE5QixFQUFxQztBQUNwQyxxQkFBTyxJQUFQO0FBQ0E7QUFDRCxXQU4rRCxDQU9oRTs7O0FBQ0FiLFVBQUFBLE9BQU8sQ0FBQ2MsV0FBUixDQUNDO0FBQ0MseUJBQWEsVUFBU0MsTUFBVCxFQUFzQjtBQUNsQyxrQkFBSWQsa0JBQWtCLENBQUNXLE9BQW5CLENBQTJCRyxNQUFNLENBQUNGLEdBQVAsQ0FBV0csV0FBWCxFQUEzQixJQUF1RCxDQUFDLENBQTVELEVBQStEO0FBQzlELG9CQUFNQyxRQUFRLEdBQUdGLE1BQU0sQ0FBQ0csTUFBUCxHQUFnQkgsTUFBTSxDQUFDRyxNQUFQLENBQWNDLE9BQWQsQ0FBc0JILFdBQXRCLEVBQWhCLEdBQXNESSxTQUF2RTs7QUFDQSxvQkFBSUgsUUFBUSxLQUFLLE9BQWpCLEVBQTBCO0FBQ3pCRixrQkFBQUEsTUFBTSxDQUFDTSxTQUFQO0FBQ0E7QUFDRDtBQUNEO0FBUkYsV0FERCxFQVdDLElBWEQsRUFZQ0QsU0FaRCxFQWFDLElBYkQ7QUFlQTs7QUFDRCxlQUFPLElBQVA7QUFDQTtBQUNELEtBbEM4RjtBQW9DL0ZFLElBQUFBLE9BQU8sRUFBRSxVQUFtQ0MsbUJBQW5DLEVBQXdEO0FBQ2hFLFVBQU12QixPQUFPLEdBQUcsS0FBS3dCLFNBQUwsRUFBaEI7O0FBQ0EsVUFBSXhCLE9BQUosRUFBYTtBQUNaLFlBQU1TLFFBQVEsR0FBRyxLQUFLZ0IsZUFBTCxFQUFqQjs7QUFDQSxZQUFJaEIsUUFBSixFQUFjO0FBQ2JpQixVQUFBQSxRQUFRLENBQUNDLFVBQVQsQ0FBb0IsS0FBS0gsU0FBTCxFQUFwQixFQUFzQ2YsUUFBUSxDQUFDbUIsUUFBL0M7QUFDQTs7QUFDRCxhQUFLQyxlQUFMLENBQXFCN0IsT0FBckI7QUFDQTs7QUFDRDhCLE1BQUFBLE9BQU8sQ0FBQzVCLFNBQVIsQ0FBa0JvQixPQUFsQixDQUEwQm5CLEtBQTFCLENBQWdDLElBQWhDLEVBQXNDLENBQUNvQixtQkFBRCxDQUF0QztBQUNBLEtBOUM4RjtBQWdEL0Y7QUFDQTtBQUNBUSxJQUFBQSxVQUFVLEVBQUUsVUFBbUNDLE1BQW5DLEVBQWdEO0FBQzNELFVBQU12QixRQUFRLEdBQUcsS0FBS2dCLGVBQUwsRUFBakI7O0FBQ0EsVUFBSWhCLFFBQUosRUFBYztBQUNiLGVBQU9aLGdCQUFnQixDQUFDSyxTQUFqQixDQUEyQjZCLFVBQTNCLENBQXNDNUIsS0FBdEMsQ0FBNEMsSUFBNUMsRUFBa0QsQ0FBQzZCLE1BQUQsQ0FBbEQsQ0FBUDtBQUNBLE9BRkQsTUFFTztBQUNOQyxRQUFBQSxHQUFHLENBQUNDLElBQUosQ0FBUyxrRkFBa0YsS0FBS0MsVUFBTCxFQUEzRjtBQUNBO0FBQ0Q7QUF6RDhGLEdBQWpFLENBQS9CO1NBNERldkMsc0IiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBDb21tYW5kRXhlY3V0aW9uIGZyb20gXCJzYXAvdWkvY29yZS9Db21tYW5kRXhlY3V0aW9uXCI7XG5pbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBFbGVtZW50IGZyb20gXCJzYXAvdWkvY29yZS9FbGVtZW50XCI7XG5pbXBvcnQgU2hvcnRjdXQgZnJvbSBcInNhcC91aS9jb3JlL1Nob3J0Y3V0XCI7XG5cbnR5cGUgQ29tbWFuZEV4ZWN1dGlvbkV4ID0gQ29tbWFuZEV4ZWN1dGlvbiAmIHtcblx0c2V0UGFyZW50KG9QYXJlbnQ6IGFueSk6IHZvaWQ7XG5cdF9nZXRDb21tYW5kSW5mbygpOiBhbnk7XG5cdF9jbGVhbnVwQ29udGV4dChvUGFyZW50OiBhbnkpOiB2b2lkO1xufTtcblxuY29uc3QgQ3VzdG9tQ29tbWFuZEV4ZWN1dGlvbiA9IENvbW1hbmRFeGVjdXRpb24uZXh0ZW5kKFwic2FwLmZlLmNvcmUuY29udHJvbHMuQ29tbWFuZEV4ZWN1dGlvblwiLCB7XG5cdHNldFBhcmVudDogZnVuY3Rpb24ob1BhcmVudDogYW55KSB7XG5cdFx0Y29uc3QgYUV4Y2x1ZGVkU2luZ2xlS2V5ID0gW1wiZXNjYXBlXCJdO1xuXHRcdChDb21tYW5kRXhlY3V0aW9uLnByb3RvdHlwZSBhcyBhbnkpLnNldFBhcmVudC5hcHBseSh0aGlzLCBbb1BhcmVudF0pO1xuXHRcdGNvbnN0IGFDb21tYW5kcyA9IG9QYXJlbnQuZGF0YShcInNhcC51aS5jb3JlLlNob3J0Y3V0XCIpO1xuXHRcdGlmIChBcnJheS5pc0FycmF5KGFDb21tYW5kcykgJiYgYUNvbW1hbmRzLmxlbmd0aCA+IDApIHtcblx0XHRcdGNvbnN0IG9Db21tYW5kID0gb1BhcmVudC5kYXRhKFwic2FwLnVpLmNvcmUuU2hvcnRjdXRcIilbYUNvbW1hbmRzLmxlbmd0aCAtIDFdLFxuXHRcdFx0XHRvU2hvcnRjdXQgPSBvQ29tbWFuZC5zaG9ydGN1dFNwZWM7XG5cdFx0XHRpZiAob1Nob3J0Y3V0ICYmIGFFeGNsdWRlZFNpbmdsZUtleS5pbmRleE9mKG9TaG9ydGN1dC5rZXkpID4gLTEpIHtcblx0XHRcdFx0Ly8gQ2hlY2sgaWYgc2luZ2xlIGtleSBzaG9ydGN1dFxuXHRcdFx0XHRmb3IgKGNvbnN0IGtleSBpbiBvU2hvcnRjdXQpIHtcblx0XHRcdFx0XHRpZiAob1Nob3J0Y3V0W2tleV0gJiYga2V5ICE9PSBcImtleVwiKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gdGhpcztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0Ly8gTmVlZCB0byBkaXNhYmxlIFNob3J0Q3V0IHdoZW4gdXNlciBwcmVzcyBzaW5nbGUgc2hvcnRjdXQga2V5IGludG8gYW4gaW5wdXRcblx0XHRcdFx0b1BhcmVudC5hZGREZWxlZ2F0ZShcblx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRcIm9ua2V5ZG93blwiOiBmdW5jdGlvbihvRXZlbnQ6IGFueSkge1xuXHRcdFx0XHRcdFx0XHRpZiAoYUV4Y2x1ZGVkU2luZ2xlS2V5LmluZGV4T2Yob0V2ZW50LmtleS50b0xvd2VyQ2FzZSgpKSA+IC0xKSB7XG5cdFx0XHRcdFx0XHRcdFx0Y29uc3Qgc0VsZW1lbnQgPSBvRXZlbnQudGFyZ2V0ID8gb0V2ZW50LnRhcmdldC50YWdOYW1lLnRvTG93ZXJDYXNlKCkgOiB1bmRlZmluZWQ7XG5cdFx0XHRcdFx0XHRcdFx0aWYgKHNFbGVtZW50ID09PSBcImlucHV0XCIpIHtcblx0XHRcdFx0XHRcdFx0XHRcdG9FdmVudC5zZXRNYXJrZWQoKTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdHRydWUsXG5cdFx0XHRcdFx0dW5kZWZpbmVkLFxuXHRcdFx0XHRcdHRydWVcblx0XHRcdFx0KTtcblx0XHRcdH1cblx0XHRcdHJldHVybiB0aGlzO1xuXHRcdH1cblx0fSxcblxuXHRkZXN0cm95OiBmdW5jdGlvbih0aGlzOiBDb21tYW5kRXhlY3V0aW9uRXgsIGJTdXBwcmVzc0ludmFsaWRhdGUpIHtcblx0XHRjb25zdCBvUGFyZW50ID0gdGhpcy5nZXRQYXJlbnQoKTtcblx0XHRpZiAob1BhcmVudCkge1xuXHRcdFx0Y29uc3Qgb0NvbW1hbmQgPSB0aGlzLl9nZXRDb21tYW5kSW5mbygpO1xuXHRcdFx0aWYgKG9Db21tYW5kKSB7XG5cdFx0XHRcdFNob3J0Y3V0LnVucmVnaXN0ZXIodGhpcy5nZXRQYXJlbnQoKSwgb0NvbW1hbmQuc2hvcnRjdXQpO1xuXHRcdFx0fVxuXHRcdFx0dGhpcy5fY2xlYW51cENvbnRleHQob1BhcmVudCk7XG5cdFx0fVxuXHRcdEVsZW1lbnQucHJvdG90eXBlLmRlc3Ryb3kuYXBwbHkodGhpcywgW2JTdXBwcmVzc0ludmFsaWRhdGVdKTtcblx0fSxcblxuXHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10cy1jb21tZW50XG5cdC8vIEB0cy1pZ25vcmVcblx0c2V0VmlzaWJsZTogZnVuY3Rpb24odGhpczogQ29tbWFuZEV4ZWN1dGlvbkV4LCBiVmFsdWU6IGFueSkge1xuXHRcdGNvbnN0IG9Db21tYW5kID0gdGhpcy5fZ2V0Q29tbWFuZEluZm8oKTtcblx0XHRpZiAob0NvbW1hbmQpIHtcblx0XHRcdHJldHVybiBDb21tYW5kRXhlY3V0aW9uLnByb3RvdHlwZS5zZXRWaXNpYmxlLmFwcGx5KHRoaXMsIFtiVmFsdWVdKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0TG9nLmluZm8oXCJUaGVyZSBpcyBubyBzaG9ydGN1dCBkZWZpbml0aW9uIHJlZ2lzdGVyZWQgaW4gdGhlIG1hbmlmZXN0IGZvciB0aGUgY29tbWFuZCA6IFwiICsgdGhpcy5nZXRDb21tYW5kKCkpO1xuXHRcdH1cblx0fVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IEN1c3RvbUNvbW1hbmRFeGVjdXRpb247XG4iXX0=
95
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvbW1hbmRFeGVjdXRpb24udHMiXSwibmFtZXMiOlsiQ3VzdG9tQ29tbWFuZEV4ZWN1dGlvbiIsImRlZmluZVVJNUNsYXNzIiwic2V0UGFyZW50Iiwib1BhcmVudCIsImFFeGNsdWRlZFNpbmdsZUtleSIsImFDb21tYW5kcyIsImRhdGEiLCJBcnJheSIsImlzQXJyYXkiLCJsZW5ndGgiLCJvQ29tbWFuZCIsIm9TaG9ydGN1dCIsInNob3J0Y3V0U3BlYyIsImluZGV4T2YiLCJrZXkiLCJhZGREZWxlZ2F0ZSIsIm9FdmVudCIsInRvTG93ZXJDYXNlIiwic0VsZW1lbnQiLCJ0YXJnZXQiLCJ0YWdOYW1lIiwidW5kZWZpbmVkIiwic2V0TWFya2VkIiwiZGVzdHJveSIsImJTdXBwcmVzc0ludmFsaWRhdGUiLCJnZXRQYXJlbnQiLCJfZ2V0Q29tbWFuZEluZm8iLCJTaG9ydGN1dCIsInVucmVnaXN0ZXIiLCJzaG9ydGN1dCIsIl9jbGVhbnVwQ29udGV4dCIsIkVsZW1lbnQiLCJwcm90b3R5cGUiLCJhcHBseSIsInNldFZpc2libGUiLCJiVmFsdWUiLCJMb2ciLCJpbmZvIiwiZ2V0Q29tbWFuZCIsIkNvbW1hbmRFeGVjdXRpb24iXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7OztNQUtNQSxzQixXQURMQyxjQUFjLENBQUMsdUNBQUQsQzs7Ozs7Ozs7O1dBRWRDLFMsR0FBQSxtQkFBVUMsT0FBVixFQUF3QjtBQUN2QixVQUFNQyxrQkFBa0IsR0FBRyxDQUFDLFFBQUQsQ0FBM0IsQ0FEdUIsQ0FFdkI7QUFDQTs7QUFDQSxrQ0FBTUYsU0FBTixZQUFnQkMsT0FBaEI7O0FBQ0EsVUFBTUUsU0FBUyxHQUFHRixPQUFPLENBQUNHLElBQVIsQ0FBYSxzQkFBYixDQUFsQjs7QUFDQSxVQUFJQyxLQUFLLENBQUNDLE9BQU4sQ0FBY0gsU0FBZCxLQUE0QkEsU0FBUyxDQUFDSSxNQUFWLEdBQW1CLENBQW5ELEVBQXNEO0FBQ3JELFlBQU1DLFFBQVEsR0FBR1AsT0FBTyxDQUFDRyxJQUFSLENBQWEsc0JBQWIsRUFBcUNELFNBQVMsQ0FBQ0ksTUFBVixHQUFtQixDQUF4RCxDQUFqQjtBQUFBLFlBQ0NFLFNBQVMsR0FBR0QsUUFBUSxDQUFDRSxZQUR0Qjs7QUFFQSxZQUFJRCxTQUFTLElBQUlQLGtCQUFrQixDQUFDUyxPQUFuQixDQUEyQkYsU0FBUyxDQUFDRyxHQUFyQyxJQUE0QyxDQUFDLENBQTlELEVBQWlFO0FBQ2hFO0FBQ0EsZUFBSyxJQUFNQSxHQUFYLElBQWtCSCxTQUFsQixFQUE2QjtBQUM1QixnQkFBSUEsU0FBUyxDQUFDRyxHQUFELENBQVQsSUFBa0JBLEdBQUcsS0FBSyxLQUE5QixFQUFxQztBQUNwQyxxQkFBTyxJQUFQO0FBQ0E7QUFDRCxXQU4rRCxDQU9oRTs7O0FBQ0FYLFVBQUFBLE9BQU8sQ0FBQ1ksV0FBUixDQUNDO0FBQ0MseUJBQWEsVUFBVUMsTUFBVixFQUF1QjtBQUNuQyxrQkFBSVosa0JBQWtCLENBQUNTLE9BQW5CLENBQTJCRyxNQUFNLENBQUNGLEdBQVAsQ0FBV0csV0FBWCxFQUEzQixJQUF1RCxDQUFDLENBQTVELEVBQStEO0FBQzlELG9CQUFNQyxRQUFRLEdBQUdGLE1BQU0sQ0FBQ0csTUFBUCxHQUFnQkgsTUFBTSxDQUFDRyxNQUFQLENBQWNDLE9BQWQsQ0FBc0JILFdBQXRCLEVBQWhCLEdBQXNESSxTQUF2RTs7QUFDQSxvQkFBSUgsUUFBUSxLQUFLLE9BQWpCLEVBQTBCO0FBQ3pCRixrQkFBQUEsTUFBTSxDQUFDTSxTQUFQO0FBQ0E7QUFDRDtBQUNEO0FBUkYsV0FERCxFQVdDLElBWEQsRUFZQ0QsU0FaRCxFQWFDLElBYkQ7QUFlQTs7QUFDRCxlQUFPLElBQVA7QUFDQTtBQUNELEs7O1dBRURFLE8sR0FBQSxpQkFBUUMsbUJBQVIsRUFBc0M7QUFDckMsVUFBTXJCLE9BQU8sR0FBRyxLQUFLc0IsU0FBTCxFQUFoQjs7QUFDQSxVQUFJdEIsT0FBSixFQUFhO0FBQ1osWUFBTU8sUUFBUSxHQUFHLEtBQUtnQixlQUFMLEVBQWpCOztBQUNBLFlBQUloQixRQUFKLEVBQWM7QUFDYmlCLFVBQUFBLFFBQVEsQ0FBQ0MsVUFBVCxDQUFvQixLQUFLSCxTQUFMLEVBQXBCLEVBQXNDZixRQUFRLENBQUNtQixRQUEvQztBQUNBOztBQUNELGFBQUtDLGVBQUwsQ0FBcUIzQixPQUFyQjtBQUNBOztBQUNENEIsTUFBQUEsT0FBTyxDQUFDQyxTQUFSLENBQWtCVCxPQUFsQixDQUEwQlUsS0FBMUIsQ0FBZ0MsSUFBaEMsRUFBc0MsQ0FBQ1QsbUJBQUQsQ0FBdEM7QUFDQSxLOztXQUVEVSxVLEdBQUEsb0JBQVdDLE1BQVgsRUFBNEI7QUFDM0IsVUFBTXpCLFFBQVEsR0FBRyxLQUFLZ0IsZUFBTCxFQUFqQjs7QUFDQSxVQUFJaEIsUUFBSixFQUFjO0FBQ2Isb0NBQU13QixVQUFOLFlBQWlCQyxNQUFqQjtBQUNBLE9BRkQsTUFFTztBQUNOQyxRQUFBQSxHQUFHLENBQUNDLElBQUosQ0FBUyxrRkFBa0YsS0FBS0MsVUFBTCxFQUEzRjtBQUNBOztBQUNELGFBQU8sSUFBUDtBQUNBLEs7OztJQTFEbUNDLGdCO1NBZ0V0QnZDLHNCIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCB7IGRlZmluZVVJNUNsYXNzIH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgQ29tbWFuZEV4ZWN1dGlvbiBmcm9tIFwic2FwL3VpL2NvcmUvQ29tbWFuZEV4ZWN1dGlvblwiO1xuaW1wb3J0IEVsZW1lbnQgZnJvbSBcInNhcC91aS9jb3JlL0VsZW1lbnRcIjtcbmltcG9ydCBTaG9ydGN1dCBmcm9tIFwic2FwL3VpL2NvcmUvU2hvcnRjdXRcIjtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLmNvcmUuY29udHJvbHMuQ29tbWFuZEV4ZWN1dGlvblwiKVxuY2xhc3MgQ3VzdG9tQ29tbWFuZEV4ZWN1dGlvbiBleHRlbmRzIENvbW1hbmRFeGVjdXRpb24ge1xuXHRzZXRQYXJlbnQob1BhcmVudDogYW55KSB7XG5cdFx0Y29uc3QgYUV4Y2x1ZGVkU2luZ2xlS2V5ID0gW1wiZXNjYXBlXCJdO1xuXHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWNvbW1lbnRcblx0XHQvLyBAdHMtaWdub3JlXG5cdFx0c3VwZXIuc2V0UGFyZW50KG9QYXJlbnQpO1xuXHRcdGNvbnN0IGFDb21tYW5kcyA9IG9QYXJlbnQuZGF0YShcInNhcC51aS5jb3JlLlNob3J0Y3V0XCIpO1xuXHRcdGlmIChBcnJheS5pc0FycmF5KGFDb21tYW5kcykgJiYgYUNvbW1hbmRzLmxlbmd0aCA+IDApIHtcblx0XHRcdGNvbnN0IG9Db21tYW5kID0gb1BhcmVudC5kYXRhKFwic2FwLnVpLmNvcmUuU2hvcnRjdXRcIilbYUNvbW1hbmRzLmxlbmd0aCAtIDFdLFxuXHRcdFx0XHRvU2hvcnRjdXQgPSBvQ29tbWFuZC5zaG9ydGN1dFNwZWM7XG5cdFx0XHRpZiAob1Nob3J0Y3V0ICYmIGFFeGNsdWRlZFNpbmdsZUtleS5pbmRleE9mKG9TaG9ydGN1dC5rZXkpID4gLTEpIHtcblx0XHRcdFx0Ly8gQ2hlY2sgaWYgc2luZ2xlIGtleSBzaG9ydGN1dFxuXHRcdFx0XHRmb3IgKGNvbnN0IGtleSBpbiBvU2hvcnRjdXQpIHtcblx0XHRcdFx0XHRpZiAob1Nob3J0Y3V0W2tleV0gJiYga2V5ICE9PSBcImtleVwiKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gdGhpcztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0Ly8gTmVlZCB0byBkaXNhYmxlIFNob3J0Q3V0IHdoZW4gdXNlciBwcmVzcyBzaW5nbGUgc2hvcnRjdXQga2V5IGludG8gYW4gaW5wdXRcblx0XHRcdFx0b1BhcmVudC5hZGREZWxlZ2F0ZShcblx0XHRcdFx0XHR7XG5cdFx0XHRcdFx0XHRcIm9ua2V5ZG93blwiOiBmdW5jdGlvbiAob0V2ZW50OiBhbnkpIHtcblx0XHRcdFx0XHRcdFx0aWYgKGFFeGNsdWRlZFNpbmdsZUtleS5pbmRleE9mKG9FdmVudC5rZXkudG9Mb3dlckNhc2UoKSkgPiAtMSkge1xuXHRcdFx0XHRcdFx0XHRcdGNvbnN0IHNFbGVtZW50ID0gb0V2ZW50LnRhcmdldCA/IG9FdmVudC50YXJnZXQudGFnTmFtZS50b0xvd2VyQ2FzZSgpIDogdW5kZWZpbmVkO1xuXHRcdFx0XHRcdFx0XHRcdGlmIChzRWxlbWVudCA9PT0gXCJpbnB1dFwiKSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRvRXZlbnQuc2V0TWFya2VkKCk7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0XHR0cnVlLFxuXHRcdFx0XHRcdHVuZGVmaW5lZCxcblx0XHRcdFx0XHR0cnVlXG5cdFx0XHRcdCk7XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gdGhpcztcblx0XHR9XG5cdH1cblxuXHRkZXN0cm95KGJTdXBwcmVzc0ludmFsaWRhdGU6IGJvb2xlYW4pIHtcblx0XHRjb25zdCBvUGFyZW50ID0gdGhpcy5nZXRQYXJlbnQoKTtcblx0XHRpZiAob1BhcmVudCkge1xuXHRcdFx0Y29uc3Qgb0NvbW1hbmQgPSB0aGlzLl9nZXRDb21tYW5kSW5mbygpO1xuXHRcdFx0aWYgKG9Db21tYW5kKSB7XG5cdFx0XHRcdFNob3J0Y3V0LnVucmVnaXN0ZXIodGhpcy5nZXRQYXJlbnQoKSwgb0NvbW1hbmQuc2hvcnRjdXQpO1xuXHRcdFx0fVxuXHRcdFx0dGhpcy5fY2xlYW51cENvbnRleHQob1BhcmVudCk7XG5cdFx0fVxuXHRcdEVsZW1lbnQucHJvdG90eXBlLmRlc3Ryb3kuYXBwbHkodGhpcywgW2JTdXBwcmVzc0ludmFsaWRhdGVdKTtcblx0fVxuXG5cdHNldFZpc2libGUoYlZhbHVlOiBib29sZWFuKSB7XG5cdFx0Y29uc3Qgb0NvbW1hbmQgPSB0aGlzLl9nZXRDb21tYW5kSW5mbygpO1xuXHRcdGlmIChvQ29tbWFuZCkge1xuXHRcdFx0c3VwZXIuc2V0VmlzaWJsZShiVmFsdWUpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRMb2cuaW5mbyhcIlRoZXJlIGlzIG5vIHNob3J0Y3V0IGRlZmluaXRpb24gcmVnaXN0ZXJlZCBpbiB0aGUgbWFuaWZlc3QgZm9yIHRoZSBjb21tYW5kIDogXCIgKyB0aGlzLmdldENvbW1hbmQoKSk7XG5cdFx0fVxuXHRcdHJldHVybiB0aGlzO1xuXHR9XG59XG5pbnRlcmZhY2UgQ3VzdG9tQ29tbWFuZEV4ZWN1dGlvbiB7XG5cdF9nZXRDb21tYW5kSW5mbygpOiBhbnk7XG5cdF9jbGVhbnVwQ29udGV4dChvUGFyZW50OiBhbnkpOiB2b2lkO1xufVxuZXhwb3J0IGRlZmF1bHQgQ3VzdG9tQ29tbWFuZEV4ZWN1dGlvbjtcbiJdfQ==
@@ -1,18 +1,16 @@
1
- import CommandExecution from "sap/ui/core/CommandExecution";
2
1
  import Log from "sap/base/Log";
2
+ import { defineUI5Class } from "sap/fe/core/helpers/ClassSupport";
3
+ import CommandExecution from "sap/ui/core/CommandExecution";
3
4
  import Element from "sap/ui/core/Element";
4
5
  import Shortcut from "sap/ui/core/Shortcut";
5
6
 
6
- type CommandExecutionEx = CommandExecution & {
7
- setParent(oParent: any): void;
8
- _getCommandInfo(): any;
9
- _cleanupContext(oParent: any): void;
10
- };
11
-
12
- const CustomCommandExecution = CommandExecution.extend("sap.fe.core.controls.CommandExecution", {
13
- setParent: function(oParent: any) {
7
+ @defineUI5Class("sap.fe.core.controls.CommandExecution")
8
+ class CustomCommandExecution extends CommandExecution {
9
+ setParent(oParent: any) {
14
10
  const aExcludedSingleKey = ["escape"];
15
- (CommandExecution.prototype as any).setParent.apply(this, [oParent]);
11
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
12
+ // @ts-ignore
13
+ super.setParent(oParent);
16
14
  const aCommands = oParent.data("sap.ui.core.Shortcut");
17
15
  if (Array.isArray(aCommands) && aCommands.length > 0) {
18
16
  const oCommand = oParent.data("sap.ui.core.Shortcut")[aCommands.length - 1],
@@ -27,7 +25,7 @@ const CustomCommandExecution = CommandExecution.extend("sap.fe.core.controls.Com
27
25
  // Need to disable ShortCut when user press single shortcut key into an input
28
26
  oParent.addDelegate(
29
27
  {
30
- "onkeydown": function(oEvent: any) {
28
+ "onkeydown": function (oEvent: any) {
31
29
  if (aExcludedSingleKey.indexOf(oEvent.key.toLowerCase()) > -1) {
32
30
  const sElement = oEvent.target ? oEvent.target.tagName.toLowerCase() : undefined;
33
31
  if (sElement === "input") {
@@ -43,9 +41,9 @@ const CustomCommandExecution = CommandExecution.extend("sap.fe.core.controls.Com
43
41
  }
44
42
  return this;
45
43
  }
46
- },
44
+ }
47
45
 
48
- destroy: function(this: CommandExecutionEx, bSuppressInvalidate) {
46
+ destroy(bSuppressInvalidate: boolean) {
49
47
  const oParent = this.getParent();
50
48
  if (oParent) {
51
49
  const oCommand = this._getCommandInfo();
@@ -55,18 +53,20 @@ const CustomCommandExecution = CommandExecution.extend("sap.fe.core.controls.Com
55
53
  this._cleanupContext(oParent);
56
54
  }
57
55
  Element.prototype.destroy.apply(this, [bSuppressInvalidate]);
58
- },
56
+ }
59
57
 
60
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
61
- // @ts-ignore
62
- setVisible: function(this: CommandExecutionEx, bValue: any) {
58
+ setVisible(bValue: boolean) {
63
59
  const oCommand = this._getCommandInfo();
64
60
  if (oCommand) {
65
- return CommandExecution.prototype.setVisible.apply(this, [bValue]);
61
+ super.setVisible(bValue);
66
62
  } else {
67
63
  Log.info("There is no shortcut definition registered in the manifest for the command : " + this.getCommand());
68
64
  }
65
+ return this;
69
66
  }
70
- });
71
-
67
+ }
68
+ interface CustomCommandExecution {
69
+ _getCommandInfo(): any;
70
+ _cleanupContext(oParent: any): void;
71
+ }
72
72
  export default CustomCommandExecution;
@@ -2,49 +2,81 @@
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
3
  * (c) Copyright 2009-2021 SAP SE. All rights reserved
4
4
  */
5
- sap.ui.define(["sap/ui/core/Control"], function (Control) {
5
+ sap.ui.define(["sap/ui/core/Control", "sap/fe/core/helpers/ClassSupport"], function (Control, ClassSupport) {
6
6
  "use strict";
7
7
 
8
- var ConditionalWrapper = Control.extend("sap.fe.core.controls.ConditionalWrapper", {
9
- metadata: {
10
- interfaces: ["sap.ui.core.IFormContent"],
11
- properties: {
12
- width: {
13
- type: "sap.ui.core.CSSSize",
14
- defaultValue: null
15
- },
16
- formDoNotAdjustWidth: {
17
- type: "boolean",
18
- defaultValue: false
19
- },
20
- condition: {
21
- type: "boolean",
22
- defaultValue: false
23
- }
24
- },
25
- associations: {
26
- /**
27
- * Association to controls / IDs that label this control (see WAI-ARIA attribute aria-labelledby).
28
- */
29
- ariaLabelledBy: {
30
- type: "sap.ui.core.Control",
31
- multiple: true,
32
- singularName: "ariaLabelledBy"
33
- }
34
- },
35
- defaultAggregation: "contentTrue",
36
- aggregations: {
37
- contentTrue: {
38
- type: "sap.ui.core.Control",
39
- multiple: false
40
- },
41
- contentFalse: {
42
- type: "sap.ui.core.Control",
43
- multiple: false
44
- }
8
+ var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7;
9
+
10
+ var property = ClassSupport.property;
11
+ var implementInterface = ClassSupport.implementInterface;
12
+ var defineUI5Class = ClassSupport.defineUI5Class;
13
+ var association = ClassSupport.association;
14
+ var aggregation = ClassSupport.aggregation;
15
+
16
+ function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }
17
+
18
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
19
+
20
+ function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
21
+
22
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
23
+
24
+ function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }
25
+
26
+ function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }
27
+
28
+ var ConditionalWrapper = (_dec = defineUI5Class("sap.fe.core.controls.ConditionalWrapper"), _dec2 = implementInterface("sap.ui.core.IFormContent"), _dec3 = property({
29
+ type: "sap.ui.core.CSSSize",
30
+ defaultValue: null
31
+ }), _dec4 = property({
32
+ type: "boolean",
33
+ defaultValue: false
34
+ }), _dec5 = property({
35
+ type: "boolean",
36
+ defaultValue: false
37
+ }), _dec6 = association({
38
+ type: "sap.ui.core.Control",
39
+ multiple: true,
40
+ singularName: "ariaLabelledBy"
41
+ }), _dec7 = aggregation({
42
+ type: "sap.ui.core.Control",
43
+ multiple: false,
44
+ isDefault: true
45
+ }), _dec8 = aggregation({
46
+ type: "sap.ui.core.Control",
47
+ multiple: false
48
+ }), _dec(_class = (_class2 = /*#__PURE__*/function (_Control) {
49
+ _inheritsLoose(ConditionalWrapper, _Control);
50
+
51
+ function ConditionalWrapper() {
52
+ var _this;
53
+
54
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
55
+ args[_key] = arguments[_key];
45
56
  }
46
- },
47
- enhanceAccessibilityState: function (oElement, mAriaProps) {
57
+
58
+ _this = _Control.call.apply(_Control, [this].concat(args)) || this;
59
+
60
+ _initializerDefineProperty(_this, "__implements__sap_ui_core_IFormContent", _descriptor, _assertThisInitialized(_this));
61
+
62
+ _initializerDefineProperty(_this, "width", _descriptor2, _assertThisInitialized(_this));
63
+
64
+ _initializerDefineProperty(_this, "formDoNotAdjustWidth", _descriptor3, _assertThisInitialized(_this));
65
+
66
+ _initializerDefineProperty(_this, "condition", _descriptor4, _assertThisInitialized(_this));
67
+
68
+ _initializerDefineProperty(_this, "ariaLabelledBy", _descriptor5, _assertThisInitialized(_this));
69
+
70
+ _initializerDefineProperty(_this, "contentTrue", _descriptor6, _assertThisInitialized(_this));
71
+
72
+ _initializerDefineProperty(_this, "contentFalse", _descriptor7, _assertThisInitialized(_this));
73
+
74
+ return _this;
75
+ }
76
+
77
+ var _proto = ConditionalWrapper.prototype;
78
+
79
+ _proto.enhanceAccessibilityState = function enhanceAccessibilityState(oElement, mAriaProps) {
48
80
  var oParent = this.getParent();
49
81
 
50
82
  if (oParent && oParent.enhanceAccessibilityState) {
@@ -52,10 +84,11 @@ sap.ui.define(["sap/ui/core/Control"], function (Control) {
52
84
  }
53
85
 
54
86
  return mAriaProps;
55
- },
56
- _setAriaLabelledBy: function (oContent) {
87
+ };
88
+
89
+ _proto._setAriaLabelledBy = function _setAriaLabelledBy(oContent) {
57
90
  if (oContent && oContent.addAriaLabelledBy) {
58
- var aAriaLabelledBy = this.getAriaLabelledBy();
91
+ var aAriaLabelledBy = this.ariaLabelledBy;
59
92
 
60
93
  for (var i = 0; i < aAriaLabelledBy.length; i++) {
61
94
  var sId = aAriaLabelledBy[i];
@@ -66,32 +99,70 @@ sap.ui.define(["sap/ui/core/Control"], function (Control) {
66
99
  }
67
100
  }
68
101
  }
69
- },
70
- onBeforeRendering: function () {
102
+ };
103
+
104
+ _proto.onBeforeRendering = function onBeforeRendering() {
71
105
  // before calling the renderer of the ConditionalWrapper parent control may have set ariaLabelledBy
72
106
  // we ensure it is passed to its inner controls
73
- this._setAriaLabelledBy(this.getContentTrue());
74
-
75
- this._setAriaLabelledBy(this.getContentFalse());
76
- },
77
- renderer: {
78
- apiVersion: 2,
79
- render: function (oRm, oControl) {
80
- oRm.openStart("div", oControl);
81
- oRm.style("width", oControl.getWidth());
82
- oRm.style("display", "inline-block");
83
- oRm.openEnd();
84
-
85
- if (oControl.getCondition()) {
86
- oRm.renderControl(oControl.getContentTrue());
87
- } else {
88
- oRm.renderControl(oControl.getContentFalse());
89
- }
107
+ this._setAriaLabelledBy(this.contentTrue);
90
108
 
91
- oRm.close("div"); // end of the complete Control
109
+ this._setAriaLabelledBy(this.contentFalse);
110
+ };
111
+
112
+ ConditionalWrapper.render = function render(oRm, oControl) {
113
+ oRm.openStart("div", oControl);
114
+ oRm.style("width", oControl.width);
115
+ oRm.style("display", "inline-block");
116
+ oRm.openEnd();
117
+
118
+ if (oControl.condition) {
119
+ oRm.renderControl(oControl.contentTrue);
120
+ } else {
121
+ oRm.renderControl(oControl.contentFalse);
92
122
  }
123
+
124
+ oRm.close("div"); // end of the complete Control
125
+ };
126
+
127
+ return ConditionalWrapper;
128
+ }(Control), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "__implements__sap_ui_core_IFormContent", [_dec2], {
129
+ configurable: true,
130
+ enumerable: true,
131
+ writable: true,
132
+ initializer: function () {
133
+ return true;
93
134
  }
94
- });
135
+ }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, "width", [_dec3], {
136
+ configurable: true,
137
+ enumerable: true,
138
+ writable: true,
139
+ initializer: null
140
+ }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, "formDoNotAdjustWidth", [_dec4], {
141
+ configurable: true,
142
+ enumerable: true,
143
+ writable: true,
144
+ initializer: null
145
+ }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, "condition", [_dec5], {
146
+ configurable: true,
147
+ enumerable: true,
148
+ writable: true,
149
+ initializer: null
150
+ }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, "ariaLabelledBy", [_dec6], {
151
+ configurable: true,
152
+ enumerable: true,
153
+ writable: true,
154
+ initializer: null
155
+ }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, "contentTrue", [_dec7], {
156
+ configurable: true,
157
+ enumerable: true,
158
+ writable: true,
159
+ initializer: null
160
+ }), _descriptor7 = _applyDecoratedDescriptor(_class2.prototype, "contentFalse", [_dec8], {
161
+ configurable: true,
162
+ enumerable: true,
163
+ writable: true,
164
+ initializer: null
165
+ })), _class2)) || _class);
95
166
  return ConditionalWrapper;
96
167
  }, false);
97
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvbmRpdGlvbmFsV3JhcHBlci50cyJdLCJuYW1lcyI6WyJDb25kaXRpb25hbFdyYXBwZXIiLCJDb250cm9sIiwiZXh0ZW5kIiwibWV0YWRhdGEiLCJpbnRlcmZhY2VzIiwicHJvcGVydGllcyIsIndpZHRoIiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsImZvcm1Eb05vdEFkanVzdFdpZHRoIiwiY29uZGl0aW9uIiwiYXNzb2NpYXRpb25zIiwiYXJpYUxhYmVsbGVkQnkiLCJtdWx0aXBsZSIsInNpbmd1bGFyTmFtZSIsImRlZmF1bHRBZ2dyZWdhdGlvbiIsImFnZ3JlZ2F0aW9ucyIsImNvbnRlbnRUcnVlIiwiY29udGVudEZhbHNlIiwiZW5oYW5jZUFjY2Vzc2liaWxpdHlTdGF0ZSIsIm9FbGVtZW50IiwibUFyaWFQcm9wcyIsIm9QYXJlbnQiLCJnZXRQYXJlbnQiLCJfc2V0QXJpYUxhYmVsbGVkQnkiLCJvQ29udGVudCIsImFkZEFyaWFMYWJlbGxlZEJ5IiwiYUFyaWFMYWJlbGxlZEJ5IiwiZ2V0QXJpYUxhYmVsbGVkQnkiLCJpIiwibGVuZ3RoIiwic0lkIiwiYUFyaWFMYWJlbGxlZEJ5cyIsImluZGV4T2YiLCJvbkJlZm9yZVJlbmRlcmluZyIsImdldENvbnRlbnRUcnVlIiwiZ2V0Q29udGVudEZhbHNlIiwicmVuZGVyZXIiLCJhcGlWZXJzaW9uIiwicmVuZGVyIiwib1JtIiwib0NvbnRyb2wiLCJvcGVuU3RhcnQiLCJzdHlsZSIsImdldFdpZHRoIiwib3BlbkVuZCIsImdldENvbmRpdGlvbiIsInJlbmRlckNvbnRyb2wiLCJjbG9zZSJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7OztBQU1BLE1BQU1BLGtCQUFrQixHQUFHQyxPQUFPLENBQUNDLE1BQVIsQ0FBZSx5Q0FBZixFQUEwRDtBQUNwRkMsSUFBQUEsUUFBUSxFQUFFO0FBQ1RDLE1BQUFBLFVBQVUsRUFBRSxDQUFDLDBCQUFELENBREg7QUFFVEMsTUFBQUEsVUFBVSxFQUFFO0FBQ1hDLFFBQUFBLEtBQUssRUFBRTtBQUNOQyxVQUFBQSxJQUFJLEVBQUUscUJBREE7QUFFTkMsVUFBQUEsWUFBWSxFQUFFO0FBRlIsU0FESTtBQUtYQyxRQUFBQSxvQkFBb0IsRUFBRTtBQUNyQkYsVUFBQUEsSUFBSSxFQUFFLFNBRGU7QUFFckJDLFVBQUFBLFlBQVksRUFBRTtBQUZPLFNBTFg7QUFTWEUsUUFBQUEsU0FBUyxFQUFFO0FBQ1ZILFVBQUFBLElBQUksRUFBRSxTQURJO0FBRVZDLFVBQUFBLFlBQVksRUFBRTtBQUZKO0FBVEEsT0FGSDtBQWdCVEcsTUFBQUEsWUFBWSxFQUFFO0FBQ2I7QUFDSDtBQUNBO0FBQ0dDLFFBQUFBLGNBQWMsRUFBRTtBQUFFTCxVQUFBQSxJQUFJLEVBQUUscUJBQVI7QUFBK0JNLFVBQUFBLFFBQVEsRUFBRSxJQUF6QztBQUErQ0MsVUFBQUEsWUFBWSxFQUFFO0FBQTdEO0FBSkgsT0FoQkw7QUFzQlRDLE1BQUFBLGtCQUFrQixFQUFFLGFBdEJYO0FBdUJUQyxNQUFBQSxZQUFZLEVBQUU7QUFDYkMsUUFBQUEsV0FBVyxFQUFFO0FBQUVWLFVBQUFBLElBQUksRUFBRSxxQkFBUjtBQUErQk0sVUFBQUEsUUFBUSxFQUFFO0FBQXpDLFNBREE7QUFFYkssUUFBQUEsWUFBWSxFQUFFO0FBQUVYLFVBQUFBLElBQUksRUFBRSxxQkFBUjtBQUErQk0sVUFBQUEsUUFBUSxFQUFFO0FBQXpDO0FBRkQ7QUF2QkwsS0FEMEU7QUE2QnBGTSxJQUFBQSx5QkFBeUIsRUFBRSxVQUFTQyxRQUFULEVBQXdCQyxVQUF4QixFQUF5QztBQUNuRSxVQUFNQyxPQUFPLEdBQUcsS0FBS0MsU0FBTCxFQUFoQjs7QUFFQSxVQUFJRCxPQUFPLElBQUlBLE9BQU8sQ0FBQ0gseUJBQXZCLEVBQWtEO0FBQ2pERyxRQUFBQSxPQUFPLENBQUNILHlCQUFSLENBQWtDLElBQWxDLEVBQXdDRSxVQUF4QztBQUNBOztBQUVELGFBQU9BLFVBQVA7QUFDQSxLQXJDbUY7QUFzQ3BGRyxJQUFBQSxrQkFBa0IsRUFBRSxVQUF1Q0MsUUFBdkMsRUFBc0Q7QUFDekUsVUFBSUEsUUFBUSxJQUFJQSxRQUFRLENBQUNDLGlCQUF6QixFQUE0QztBQUMzQyxZQUFNQyxlQUFlLEdBQUcsS0FBS0MsaUJBQUwsRUFBeEI7O0FBRUEsYUFBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHRixlQUFlLENBQUNHLE1BQXBDLEVBQTRDRCxDQUFDLEVBQTdDLEVBQWlEO0FBQ2hELGNBQU1FLEdBQUcsR0FBR0osZUFBZSxDQUFDRSxDQUFELENBQTNCO0FBQ0EsY0FBTUcsZ0JBQWdCLEdBQUdQLFFBQVEsQ0FBQ0csaUJBQVQsTUFBZ0MsRUFBekQ7O0FBQ0EsY0FBSUksZ0JBQWdCLENBQUNDLE9BQWpCLENBQXlCRixHQUF6QixNQUFrQyxDQUFDLENBQXZDLEVBQTBDO0FBQ3pDTixZQUFBQSxRQUFRLENBQUNDLGlCQUFULENBQTJCSyxHQUEzQjtBQUNBO0FBQ0Q7QUFDRDtBQUNELEtBbERtRjtBQW1EcEZHLElBQUFBLGlCQUFpQixFQUFFLFlBQXVDO0FBQ3pEO0FBQ0E7QUFDQSxXQUFLVixrQkFBTCxDQUF3QixLQUFLVyxjQUFMLEVBQXhCOztBQUNBLFdBQUtYLGtCQUFMLENBQXdCLEtBQUtZLGVBQUwsRUFBeEI7QUFDQSxLQXhEbUY7QUF5RHBGQyxJQUFBQSxRQUFRLEVBQUU7QUFDVEMsTUFBQUEsVUFBVSxFQUFFLENBREg7QUFFVEMsTUFBQUEsTUFBTSxFQUFFLFVBQVNDLEdBQVQsRUFBbUJDLFFBQW5CLEVBQWtDO0FBQ3pDRCxRQUFBQSxHQUFHLENBQUNFLFNBQUosQ0FBYyxLQUFkLEVBQXFCRCxRQUFyQjtBQUNBRCxRQUFBQSxHQUFHLENBQUNHLEtBQUosQ0FBVSxPQUFWLEVBQW1CRixRQUFRLENBQUNHLFFBQVQsRUFBbkI7QUFDQUosUUFBQUEsR0FBRyxDQUFDRyxLQUFKLENBQVUsU0FBVixFQUFxQixjQUFyQjtBQUNBSCxRQUFBQSxHQUFHLENBQUNLLE9BQUo7O0FBQ0EsWUFBSUosUUFBUSxDQUFDSyxZQUFULEVBQUosRUFBNkI7QUFDNUJOLFVBQUFBLEdBQUcsQ0FBQ08sYUFBSixDQUFrQk4sUUFBUSxDQUFDTixjQUFULEVBQWxCO0FBQ0EsU0FGRCxNQUVPO0FBQ05LLFVBQUFBLEdBQUcsQ0FBQ08sYUFBSixDQUFrQk4sUUFBUSxDQUFDTCxlQUFULEVBQWxCO0FBQ0E7O0FBQ0RJLFFBQUFBLEdBQUcsQ0FBQ1EsS0FBSixDQUFVLEtBQVYsRUFWeUMsQ0FVdkI7QUFDbEI7QUFiUTtBQXpEMEUsR0FBMUQsQ0FBM0I7U0EwRWVoRCxrQiIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IENvbnRyb2wgZnJvbSBcInNhcC91aS9jb3JlL0NvbnRyb2xcIjtcblxudHlwZSBDb25kaXRpb25hbFdyYXBwZXJUeXBlID0gQ29udHJvbCAmIHtcblx0Z2V0Q29udGVudFRydWUoKTogQ29udHJvbDtcblx0Z2V0Q29udGVudEZhbHNlKCk6IENvbnRyb2w7XG5cdF9zZXRBcmlhTGFiZWxsZWRCeShvQ29udHJvbDogQ29udHJvbCk6IHZvaWQ7XG5cdGdldEFyaWFMYWJlbGxlZEJ5KCk6IENvbnRyb2xbXTtcbn07XG5jb25zdCBDb25kaXRpb25hbFdyYXBwZXIgPSBDb250cm9sLmV4dGVuZChcInNhcC5mZS5jb3JlLmNvbnRyb2xzLkNvbmRpdGlvbmFsV3JhcHBlclwiLCB7XG5cdG1ldGFkYXRhOiB7XG5cdFx0aW50ZXJmYWNlczogW1wic2FwLnVpLmNvcmUuSUZvcm1Db250ZW50XCJdLFxuXHRcdHByb3BlcnRpZXM6IHtcblx0XHRcdHdpZHRoOiB7XG5cdFx0XHRcdHR5cGU6IFwic2FwLnVpLmNvcmUuQ1NTU2l6ZVwiLFxuXHRcdFx0XHRkZWZhdWx0VmFsdWU6IG51bGxcblx0XHRcdH0sXG5cdFx0XHRmb3JtRG9Ob3RBZGp1c3RXaWR0aDoge1xuXHRcdFx0XHR0eXBlOiBcImJvb2xlYW5cIixcblx0XHRcdFx0ZGVmYXVsdFZhbHVlOiBmYWxzZVxuXHRcdFx0fSxcblx0XHRcdGNvbmRpdGlvbjoge1xuXHRcdFx0XHR0eXBlOiBcImJvb2xlYW5cIixcblx0XHRcdFx0ZGVmYXVsdFZhbHVlOiBmYWxzZVxuXHRcdFx0fVxuXHRcdH0sXG5cdFx0YXNzb2NpYXRpb25zOiB7XG5cdFx0XHQvKipcblx0XHRcdCAqIEFzc29jaWF0aW9uIHRvIGNvbnRyb2xzIC8gSURzIHRoYXQgbGFiZWwgdGhpcyBjb250cm9sIChzZWUgV0FJLUFSSUEgYXR0cmlidXRlIGFyaWEtbGFiZWxsZWRieSkuXG5cdFx0XHQgKi9cblx0XHRcdGFyaWFMYWJlbGxlZEJ5OiB7IHR5cGU6IFwic2FwLnVpLmNvcmUuQ29udHJvbFwiLCBtdWx0aXBsZTogdHJ1ZSwgc2luZ3VsYXJOYW1lOiBcImFyaWFMYWJlbGxlZEJ5XCIgfVxuXHRcdH0sXG5cdFx0ZGVmYXVsdEFnZ3JlZ2F0aW9uOiBcImNvbnRlbnRUcnVlXCIsXG5cdFx0YWdncmVnYXRpb25zOiB7XG5cdFx0XHRjb250ZW50VHJ1ZTogeyB0eXBlOiBcInNhcC51aS5jb3JlLkNvbnRyb2xcIiwgbXVsdGlwbGU6IGZhbHNlIH0sXG5cdFx0XHRjb250ZW50RmFsc2U6IHsgdHlwZTogXCJzYXAudWkuY29yZS5Db250cm9sXCIsIG11bHRpcGxlOiBmYWxzZSB9XG5cdFx0fVxuXHR9LFxuXHRlbmhhbmNlQWNjZXNzaWJpbGl0eVN0YXRlOiBmdW5jdGlvbihvRWxlbWVudDogYW55LCBtQXJpYVByb3BzOiBhbnkpIHtcblx0XHRjb25zdCBvUGFyZW50ID0gdGhpcy5nZXRQYXJlbnQoKSBhcyBhbnk7XG5cblx0XHRpZiAob1BhcmVudCAmJiBvUGFyZW50LmVuaGFuY2VBY2Nlc3NpYmlsaXR5U3RhdGUpIHtcblx0XHRcdG9QYXJlbnQuZW5oYW5jZUFjY2Vzc2liaWxpdHlTdGF0ZSh0aGlzLCBtQXJpYVByb3BzKTtcblx0XHR9XG5cblx0XHRyZXR1cm4gbUFyaWFQcm9wcztcblx0fSxcblx0X3NldEFyaWFMYWJlbGxlZEJ5OiBmdW5jdGlvbih0aGlzOiBDb25kaXRpb25hbFdyYXBwZXJUeXBlLCBvQ29udGVudDogYW55KSB7XG5cdFx0aWYgKG9Db250ZW50ICYmIG9Db250ZW50LmFkZEFyaWFMYWJlbGxlZEJ5KSB7XG5cdFx0XHRjb25zdCBhQXJpYUxhYmVsbGVkQnkgPSB0aGlzLmdldEFyaWFMYWJlbGxlZEJ5KCk7XG5cblx0XHRcdGZvciAobGV0IGkgPSAwOyBpIDwgYUFyaWFMYWJlbGxlZEJ5Lmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRcdGNvbnN0IHNJZCA9IGFBcmlhTGFiZWxsZWRCeVtpXTtcblx0XHRcdFx0Y29uc3QgYUFyaWFMYWJlbGxlZEJ5cyA9IG9Db250ZW50LmdldEFyaWFMYWJlbGxlZEJ5KCkgfHwgW107XG5cdFx0XHRcdGlmIChhQXJpYUxhYmVsbGVkQnlzLmluZGV4T2Yoc0lkKSA9PT0gLTEpIHtcblx0XHRcdFx0XHRvQ29udGVudC5hZGRBcmlhTGFiZWxsZWRCeShzSWQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9LFxuXHRvbkJlZm9yZVJlbmRlcmluZzogZnVuY3Rpb24odGhpczogQ29uZGl0aW9uYWxXcmFwcGVyVHlwZSkge1xuXHRcdC8vIGJlZm9yZSBjYWxsaW5nIHRoZSByZW5kZXJlciBvZiB0aGUgQ29uZGl0aW9uYWxXcmFwcGVyIHBhcmVudCBjb250cm9sIG1heSBoYXZlIHNldCBhcmlhTGFiZWxsZWRCeVxuXHRcdC8vIHdlIGVuc3VyZSBpdCBpcyBwYXNzZWQgdG8gaXRzIGlubmVyIGNvbnRyb2xzXG5cdFx0dGhpcy5fc2V0QXJpYUxhYmVsbGVkQnkodGhpcy5nZXRDb250ZW50VHJ1ZSgpKTtcblx0XHR0aGlzLl9zZXRBcmlhTGFiZWxsZWRCeSh0aGlzLmdldENvbnRlbnRGYWxzZSgpKTtcblx0fSxcblx0cmVuZGVyZXI6IHtcblx0XHRhcGlWZXJzaW9uOiAyLFxuXHRcdHJlbmRlcjogZnVuY3Rpb24ob1JtOiBhbnksIG9Db250cm9sOiBhbnkpIHtcblx0XHRcdG9SbS5vcGVuU3RhcnQoXCJkaXZcIiwgb0NvbnRyb2wpO1xuXHRcdFx0b1JtLnN0eWxlKFwid2lkdGhcIiwgb0NvbnRyb2wuZ2V0V2lkdGgoKSk7XG5cdFx0XHRvUm0uc3R5bGUoXCJkaXNwbGF5XCIsIFwiaW5saW5lLWJsb2NrXCIpO1xuXHRcdFx0b1JtLm9wZW5FbmQoKTtcblx0XHRcdGlmIChvQ29udHJvbC5nZXRDb25kaXRpb24oKSkge1xuXHRcdFx0XHRvUm0ucmVuZGVyQ29udHJvbChvQ29udHJvbC5nZXRDb250ZW50VHJ1ZSgpKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdG9SbS5yZW5kZXJDb250cm9sKG9Db250cm9sLmdldENvbnRlbnRGYWxzZSgpKTtcblx0XHRcdH1cblx0XHRcdG9SbS5jbG9zZShcImRpdlwiKTsgLy8gZW5kIG9mIHRoZSBjb21wbGV0ZSBDb250cm9sXG5cdFx0fVxuXHR9XG59KTtcblxuZXhwb3J0IGRlZmF1bHQgQ29uZGl0aW9uYWxXcmFwcGVyO1xuIl19
168
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvbmRpdGlvbmFsV3JhcHBlci50cyJdLCJuYW1lcyI6WyJDb25kaXRpb25hbFdyYXBwZXIiLCJkZWZpbmVVSTVDbGFzcyIsImltcGxlbWVudEludGVyZmFjZSIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsImFzc29jaWF0aW9uIiwibXVsdGlwbGUiLCJzaW5ndWxhck5hbWUiLCJhZ2dyZWdhdGlvbiIsImlzRGVmYXVsdCIsImVuaGFuY2VBY2Nlc3NpYmlsaXR5U3RhdGUiLCJvRWxlbWVudCIsIm1BcmlhUHJvcHMiLCJvUGFyZW50IiwiZ2V0UGFyZW50IiwiX3NldEFyaWFMYWJlbGxlZEJ5Iiwib0NvbnRlbnQiLCJhZGRBcmlhTGFiZWxsZWRCeSIsImFBcmlhTGFiZWxsZWRCeSIsImFyaWFMYWJlbGxlZEJ5IiwiaSIsImxlbmd0aCIsInNJZCIsImFBcmlhTGFiZWxsZWRCeXMiLCJnZXRBcmlhTGFiZWxsZWRCeSIsImluZGV4T2YiLCJvbkJlZm9yZVJlbmRlcmluZyIsImNvbnRlbnRUcnVlIiwiY29udGVudEZhbHNlIiwicmVuZGVyIiwib1JtIiwib0NvbnRyb2wiLCJvcGVuU3RhcnQiLCJzdHlsZSIsIndpZHRoIiwib3BlbkVuZCIsImNvbmRpdGlvbiIsInJlbmRlckNvbnRyb2wiLCJjbG9zZSIsIkNvbnRyb2wiXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUlNQSxrQixXQURMQyxjQUFjLENBQUMseUNBQUQsQyxVQUViQyxrQkFBa0IsQ0FBQywwQkFBRCxDLFVBR2xCQyxRQUFRLENBQUM7QUFBRUMsSUFBQUEsSUFBSSxFQUFFLHFCQUFSO0FBQStCQyxJQUFBQSxZQUFZLEVBQUU7QUFBN0MsR0FBRCxDLFVBR1JGLFFBQVEsQ0FBQztBQUFFQyxJQUFBQSxJQUFJLEVBQUUsU0FBUjtBQUFtQkMsSUFBQUEsWUFBWSxFQUFFO0FBQWpDLEdBQUQsQyxVQUdSRixRQUFRLENBQUM7QUFBRUMsSUFBQUEsSUFBSSxFQUFFLFNBQVI7QUFBbUJDLElBQUFBLFlBQVksRUFBRTtBQUFqQyxHQUFELEMsVUFNUkMsV0FBVyxDQUFDO0FBQUVGLElBQUFBLElBQUksRUFBRSxxQkFBUjtBQUErQkcsSUFBQUEsUUFBUSxFQUFFLElBQXpDO0FBQStDQyxJQUFBQSxZQUFZLEVBQUU7QUFBN0QsR0FBRCxDLFVBR1hDLFdBQVcsQ0FBQztBQUFFTCxJQUFBQSxJQUFJLEVBQUUscUJBQVI7QUFBK0JHLElBQUFBLFFBQVEsRUFBRSxLQUF6QztBQUFnREcsSUFBQUEsU0FBUyxFQUFFO0FBQTNELEdBQUQsQyxVQUdYRCxXQUFXLENBQUM7QUFBRUwsSUFBQUEsSUFBSSxFQUFFLHFCQUFSO0FBQStCRyxJQUFBQSxRQUFRLEVBQUU7QUFBekMsR0FBRCxDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1dBR1pJLHlCLEdBQUEsbUNBQTBCQyxRQUExQixFQUF5Q0MsVUFBekMsRUFBMEQ7QUFDekQsVUFBTUMsT0FBTyxHQUFHLEtBQUtDLFNBQUwsRUFBaEI7O0FBRUEsVUFBSUQsT0FBTyxJQUFJQSxPQUFPLENBQUNILHlCQUF2QixFQUFrRDtBQUNqREcsUUFBQUEsT0FBTyxDQUFDSCx5QkFBUixDQUFrQyxJQUFsQyxFQUF3Q0UsVUFBeEM7QUFDQTs7QUFFRCxhQUFPQSxVQUFQO0FBQ0EsSzs7V0FDREcsa0IsR0FBQSw0QkFBbUJDLFFBQW5CLEVBQWtDO0FBQ2pDLFVBQUlBLFFBQVEsSUFBSUEsUUFBUSxDQUFDQyxpQkFBekIsRUFBNEM7QUFDM0MsWUFBTUMsZUFBZSxHQUFHLEtBQUtDLGNBQTdCOztBQUVBLGFBQUssSUFBSUMsQ0FBQyxHQUFHLENBQWIsRUFBZ0JBLENBQUMsR0FBR0YsZUFBZSxDQUFDRyxNQUFwQyxFQUE0Q0QsQ0FBQyxFQUE3QyxFQUFpRDtBQUNoRCxjQUFNRSxHQUFHLEdBQUdKLGVBQWUsQ0FBQ0UsQ0FBRCxDQUEzQjtBQUNBLGNBQU1HLGdCQUFnQixHQUFHUCxRQUFRLENBQUNRLGlCQUFULE1BQWdDLEVBQXpEOztBQUNBLGNBQUlELGdCQUFnQixDQUFDRSxPQUFqQixDQUF5QkgsR0FBekIsTUFBa0MsQ0FBQyxDQUF2QyxFQUEwQztBQUN6Q04sWUFBQUEsUUFBUSxDQUFDQyxpQkFBVCxDQUEyQkssR0FBM0I7QUFDQTtBQUNEO0FBQ0Q7QUFDRCxLOztXQUNESSxpQixHQUFBLDZCQUFvQjtBQUNuQjtBQUNBO0FBQ0EsV0FBS1gsa0JBQUwsQ0FBd0IsS0FBS1ksV0FBN0I7O0FBQ0EsV0FBS1osa0JBQUwsQ0FBd0IsS0FBS2EsWUFBN0I7QUFDQSxLOzt1QkFDTUMsTSxHQUFQLGdCQUFjQyxHQUFkLEVBQWtDQyxRQUFsQyxFQUFnRTtBQUMvREQsTUFBQUEsR0FBRyxDQUFDRSxTQUFKLENBQWMsS0FBZCxFQUFxQkQsUUFBckI7QUFDQUQsTUFBQUEsR0FBRyxDQUFDRyxLQUFKLENBQVUsT0FBVixFQUFtQkYsUUFBUSxDQUFDRyxLQUE1QjtBQUNBSixNQUFBQSxHQUFHLENBQUNHLEtBQUosQ0FBVSxTQUFWLEVBQXFCLGNBQXJCO0FBQ0FILE1BQUFBLEdBQUcsQ0FBQ0ssT0FBSjs7QUFDQSxVQUFJSixRQUFRLENBQUNLLFNBQWIsRUFBd0I7QUFDdkJOLFFBQUFBLEdBQUcsQ0FBQ08sYUFBSixDQUFrQk4sUUFBUSxDQUFDSixXQUEzQjtBQUNBLE9BRkQsTUFFTztBQUNORyxRQUFBQSxHQUFHLENBQUNPLGFBQUosQ0FBa0JOLFFBQVEsQ0FBQ0gsWUFBM0I7QUFDQTs7QUFDREUsTUFBQUEsR0FBRyxDQUFDUSxLQUFKLENBQVUsS0FBVixFQVYrRCxDQVU3QztBQUNsQixLOzs7SUFoRStCQyxPOzs7OzthQUVrQixJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7U0FpRXBDeEMsa0IiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgeyBhZ2dyZWdhdGlvbiwgYXNzb2NpYXRpb24sIGRlZmluZVVJNUNsYXNzLCBpbXBsZW1lbnRJbnRlcmZhY2UsIHByb3BlcnR5IH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgeyBDU1NTaXplLCBJRm9ybUNvbnRlbnQgfSBmcm9tIFwic2FwL3VpL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IFJlbmRlck1hbmFnZXIgZnJvbSBcInNhcC91aS9jb3JlL1JlbmRlck1hbmFnZXJcIjtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLmNvcmUuY29udHJvbHMuQ29uZGl0aW9uYWxXcmFwcGVyXCIpXG5jbGFzcyBDb25kaXRpb25hbFdyYXBwZXIgZXh0ZW5kcyBDb250cm9sIGltcGxlbWVudHMgSUZvcm1Db250ZW50IHtcblx0QGltcGxlbWVudEludGVyZmFjZShcInNhcC51aS5jb3JlLklGb3JtQ29udGVudFwiKVxuXHRfX2ltcGxlbWVudHNfX3NhcF91aV9jb3JlX0lGb3JtQ29udGVudDogYm9vbGVhbiA9IHRydWU7XG5cblx0QHByb3BlcnR5KHsgdHlwZTogXCJzYXAudWkuY29yZS5DU1NTaXplXCIsIGRlZmF1bHRWYWx1ZTogbnVsbCB9KVxuXHR3aWR0aCE6IENTU1NpemU7XG5cblx0QHByb3BlcnR5KHsgdHlwZTogXCJib29sZWFuXCIsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcblx0Zm9ybURvTm90QWRqdXN0V2lkdGghOiBib29sZWFuO1xuXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwiYm9vbGVhblwiLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG5cdGNvbmRpdGlvbiE6IGJvb2xlYW47XG5cblx0LyoqXG5cdCAqIEFzc29jaWF0aW9uIHRvIGNvbnRyb2xzIC8gSURzIHRoYXQgbGFiZWwgdGhpcyBjb250cm9sIChzZWUgV0FJLUFSSUEgYXR0cmlidXRlIGFyaWEtbGFiZWxsZWRieSkuXG5cdCAqL1xuXHRAYXNzb2NpYXRpb24oeyB0eXBlOiBcInNhcC51aS5jb3JlLkNvbnRyb2xcIiwgbXVsdGlwbGU6IHRydWUsIHNpbmd1bGFyTmFtZTogXCJhcmlhTGFiZWxsZWRCeVwiIH0pXG5cdGFyaWFMYWJlbGxlZEJ5ITogQ29udHJvbFtdO1xuXG5cdEBhZ2dyZWdhdGlvbih7IHR5cGU6IFwic2FwLnVpLmNvcmUuQ29udHJvbFwiLCBtdWx0aXBsZTogZmFsc2UsIGlzRGVmYXVsdDogdHJ1ZSB9KVxuXHRjb250ZW50VHJ1ZSE6IENvbnRyb2w7XG5cblx0QGFnZ3JlZ2F0aW9uKHsgdHlwZTogXCJzYXAudWkuY29yZS5Db250cm9sXCIsIG11bHRpcGxlOiBmYWxzZSB9KVxuXHRjb250ZW50RmFsc2UhOiBDb250cm9sO1xuXG5cdGVuaGFuY2VBY2Nlc3NpYmlsaXR5U3RhdGUob0VsZW1lbnQ6IGFueSwgbUFyaWFQcm9wczogYW55KSB7XG5cdFx0Y29uc3Qgb1BhcmVudCA9IHRoaXMuZ2V0UGFyZW50KCkgYXMgYW55O1xuXG5cdFx0aWYgKG9QYXJlbnQgJiYgb1BhcmVudC5lbmhhbmNlQWNjZXNzaWJpbGl0eVN0YXRlKSB7XG5cdFx0XHRvUGFyZW50LmVuaGFuY2VBY2Nlc3NpYmlsaXR5U3RhdGUodGhpcywgbUFyaWFQcm9wcyk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIG1BcmlhUHJvcHM7XG5cdH1cblx0X3NldEFyaWFMYWJlbGxlZEJ5KG9Db250ZW50OiBhbnkpIHtcblx0XHRpZiAob0NvbnRlbnQgJiYgb0NvbnRlbnQuYWRkQXJpYUxhYmVsbGVkQnkpIHtcblx0XHRcdGNvbnN0IGFBcmlhTGFiZWxsZWRCeSA9IHRoaXMuYXJpYUxhYmVsbGVkQnk7XG5cblx0XHRcdGZvciAobGV0IGkgPSAwOyBpIDwgYUFyaWFMYWJlbGxlZEJ5Lmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRcdGNvbnN0IHNJZCA9IGFBcmlhTGFiZWxsZWRCeVtpXTtcblx0XHRcdFx0Y29uc3QgYUFyaWFMYWJlbGxlZEJ5cyA9IG9Db250ZW50LmdldEFyaWFMYWJlbGxlZEJ5KCkgfHwgW107XG5cdFx0XHRcdGlmIChhQXJpYUxhYmVsbGVkQnlzLmluZGV4T2Yoc0lkKSA9PT0gLTEpIHtcblx0XHRcdFx0XHRvQ29udGVudC5hZGRBcmlhTGFiZWxsZWRCeShzSWQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdG9uQmVmb3JlUmVuZGVyaW5nKCkge1xuXHRcdC8vIGJlZm9yZSBjYWxsaW5nIHRoZSByZW5kZXJlciBvZiB0aGUgQ29uZGl0aW9uYWxXcmFwcGVyIHBhcmVudCBjb250cm9sIG1heSBoYXZlIHNldCBhcmlhTGFiZWxsZWRCeVxuXHRcdC8vIHdlIGVuc3VyZSBpdCBpcyBwYXNzZWQgdG8gaXRzIGlubmVyIGNvbnRyb2xzXG5cdFx0dGhpcy5fc2V0QXJpYUxhYmVsbGVkQnkodGhpcy5jb250ZW50VHJ1ZSk7XG5cdFx0dGhpcy5fc2V0QXJpYUxhYmVsbGVkQnkodGhpcy5jb250ZW50RmFsc2UpO1xuXHR9XG5cdHN0YXRpYyByZW5kZXIob1JtOiBSZW5kZXJNYW5hZ2VyLCBvQ29udHJvbDogQ29uZGl0aW9uYWxXcmFwcGVyKSB7XG5cdFx0b1JtLm9wZW5TdGFydChcImRpdlwiLCBvQ29udHJvbCk7XG5cdFx0b1JtLnN0eWxlKFwid2lkdGhcIiwgb0NvbnRyb2wud2lkdGgpO1xuXHRcdG9SbS5zdHlsZShcImRpc3BsYXlcIiwgXCJpbmxpbmUtYmxvY2tcIik7XG5cdFx0b1JtLm9wZW5FbmQoKTtcblx0XHRpZiAob0NvbnRyb2wuY29uZGl0aW9uKSB7XG5cdFx0XHRvUm0ucmVuZGVyQ29udHJvbChvQ29udHJvbC5jb250ZW50VHJ1ZSk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdG9SbS5yZW5kZXJDb250cm9sKG9Db250cm9sLmNvbnRlbnRGYWxzZSk7XG5cdFx0fVxuXHRcdG9SbS5jbG9zZShcImRpdlwiKTsgLy8gZW5kIG9mIHRoZSBjb21wbGV0ZSBDb250cm9sXG5cdH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgQ29uZGl0aW9uYWxXcmFwcGVyO1xuIl19
@@ -1,41 +1,35 @@
1
1
  import Control from "sap/ui/core/Control";
2
+ import { aggregation, association, defineUI5Class, implementInterface, property } from "sap/fe/core/helpers/ClassSupport";
3
+ import { CSSSize, IFormContent } from "sap/ui/core/library";
4
+ import RenderManager from "sap/ui/core/RenderManager";
2
5
 
3
- type ConditionalWrapperType = Control & {
4
- getContentTrue(): Control;
5
- getContentFalse(): Control;
6
- _setAriaLabelledBy(oControl: Control): void;
7
- getAriaLabelledBy(): Control[];
8
- };
9
- const ConditionalWrapper = Control.extend("sap.fe.core.controls.ConditionalWrapper", {
10
- metadata: {
11
- interfaces: ["sap.ui.core.IFormContent"],
12
- properties: {
13
- width: {
14
- type: "sap.ui.core.CSSSize",
15
- defaultValue: null
16
- },
17
- formDoNotAdjustWidth: {
18
- type: "boolean",
19
- defaultValue: false
20
- },
21
- condition: {
22
- type: "boolean",
23
- defaultValue: false
24
- }
25
- },
26
- associations: {
27
- /**
28
- * Association to controls / IDs that label this control (see WAI-ARIA attribute aria-labelledby).
29
- */
30
- ariaLabelledBy: { type: "sap.ui.core.Control", multiple: true, singularName: "ariaLabelledBy" }
31
- },
32
- defaultAggregation: "contentTrue",
33
- aggregations: {
34
- contentTrue: { type: "sap.ui.core.Control", multiple: false },
35
- contentFalse: { type: "sap.ui.core.Control", multiple: false }
36
- }
37
- },
38
- enhanceAccessibilityState: function(oElement: any, mAriaProps: any) {
6
+ @defineUI5Class("sap.fe.core.controls.ConditionalWrapper")
7
+ class ConditionalWrapper extends Control implements IFormContent {
8
+ @implementInterface("sap.ui.core.IFormContent")
9
+ __implements__sap_ui_core_IFormContent: boolean = true;
10
+
11
+ @property({ type: "sap.ui.core.CSSSize", defaultValue: null })
12
+ width!: CSSSize;
13
+
14
+ @property({ type: "boolean", defaultValue: false })
15
+ formDoNotAdjustWidth!: boolean;
16
+
17
+ @property({ type: "boolean", defaultValue: false })
18
+ condition!: boolean;
19
+
20
+ /**
21
+ * Association to controls / IDs that label this control (see WAI-ARIA attribute aria-labelledby).
22
+ */
23
+ @association({ type: "sap.ui.core.Control", multiple: true, singularName: "ariaLabelledBy" })
24
+ ariaLabelledBy!: Control[];
25
+
26
+ @aggregation({ type: "sap.ui.core.Control", multiple: false, isDefault: true })
27
+ contentTrue!: Control;
28
+
29
+ @aggregation({ type: "sap.ui.core.Control", multiple: false })
30
+ contentFalse!: Control;
31
+
32
+ enhanceAccessibilityState(oElement: any, mAriaProps: any) {
39
33
  const oParent = this.getParent() as any;
40
34
 
41
35
  if (oParent && oParent.enhanceAccessibilityState) {
@@ -43,10 +37,10 @@ const ConditionalWrapper = Control.extend("sap.fe.core.controls.ConditionalWrapp
43
37
  }
44
38
 
45
39
  return mAriaProps;
46
- },
47
- _setAriaLabelledBy: function(this: ConditionalWrapperType, oContent: any) {
40
+ }
41
+ _setAriaLabelledBy(oContent: any) {
48
42
  if (oContent && oContent.addAriaLabelledBy) {
49
- const aAriaLabelledBy = this.getAriaLabelledBy();
43
+ const aAriaLabelledBy = this.ariaLabelledBy;
50
44
 
51
45
  for (let i = 0; i < aAriaLabelledBy.length; i++) {
52
46
  const sId = aAriaLabelledBy[i];
@@ -56,28 +50,25 @@ const ConditionalWrapper = Control.extend("sap.fe.core.controls.ConditionalWrapp
56
50
  }
57
51
  }
58
52
  }
59
- },
60
- onBeforeRendering: function(this: ConditionalWrapperType) {
53
+ }
54
+ onBeforeRendering() {
61
55
  // before calling the renderer of the ConditionalWrapper parent control may have set ariaLabelledBy
62
56
  // we ensure it is passed to its inner controls
63
- this._setAriaLabelledBy(this.getContentTrue());
64
- this._setAriaLabelledBy(this.getContentFalse());
65
- },
66
- renderer: {
67
- apiVersion: 2,
68
- render: function(oRm: any, oControl: any) {
69
- oRm.openStart("div", oControl);
70
- oRm.style("width", oControl.getWidth());
71
- oRm.style("display", "inline-block");
72
- oRm.openEnd();
73
- if (oControl.getCondition()) {
74
- oRm.renderControl(oControl.getContentTrue());
75
- } else {
76
- oRm.renderControl(oControl.getContentFalse());
77
- }
78
- oRm.close("div"); // end of the complete Control
57
+ this._setAriaLabelledBy(this.contentTrue);
58
+ this._setAriaLabelledBy(this.contentFalse);
59
+ }
60
+ static render(oRm: RenderManager, oControl: ConditionalWrapper) {
61
+ oRm.openStart("div", oControl);
62
+ oRm.style("width", oControl.width);
63
+ oRm.style("display", "inline-block");
64
+ oRm.openEnd();
65
+ if (oControl.condition) {
66
+ oRm.renderControl(oControl.contentTrue);
67
+ } else {
68
+ oRm.renderControl(oControl.contentFalse);
79
69
  }
70
+ oRm.close("div"); // end of the complete Control
80
71
  }
81
- });
72
+ }
82
73
 
83
74
  export default ConditionalWrapper;