@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
@@ -1,25 +1,31 @@
1
- import ControllerExtension from "sap/ui/core/mvc/ControllerExtension";
2
- import OverrideExecution from "sap/ui/core/mvc/OverrideExecution";
3
- import TransactionHelper from "sap/fe/core/TransactionHelper";
4
1
  import Log from "sap/base/Log";
5
- import CommonUtils from "sap/fe/core/CommonUtils";
2
+ import { send } from "sap/fe/core/actions/collaboration/ActivitySync";
3
+ import { Activity } from "sap/fe/core/actions/collaboration/CollaborationCommon";
4
+ import sticky from "sap/fe/core/actions/sticky";
5
+ import AppComponent from "sap/fe/core/AppComponent";
6
6
  import BusyLocker from "sap/fe/core/BusyLocker";
7
- import FELibrary from "sap/fe/core/library";
7
+ import CommonUtils from "sap/fe/core/CommonUtils";
8
+ import {
9
+ defineUI5Class,
10
+ extensible,
11
+ finalExtension,
12
+ methodOverride,
13
+ privateExtension,
14
+ publicExtension
15
+ } from "sap/fe/core/helpers/ClassSupport";
8
16
  import EditState from "sap/fe/core/helpers/EditState";
9
- import { Extensible, Final, Override, Private, Public, UI5Class } from "sap/fe/core/helpers/ClassSupport";
10
- import ControllerExtensionMetadata from "sap/fe/core/controllerextensions/ControllerExtensionMetadata";
11
- import AppComponent from "sap/fe/core/AppComponent";
17
+ import FELibrary from "sap/fe/core/library";
12
18
  import PageController from "sap/fe/core/PageController";
13
- import JSONModel from "sap/ui/model/json/JSONModel";
14
- import Table from "sap/ui/mdc/Table";
15
- import Dialog from "sap/m/Dialog";
19
+ import TransactionHelper from "sap/fe/core/TransactionHelper";
16
20
  import Button from "sap/m/Button";
21
+ import Dialog from "sap/m/Dialog";
17
22
  import Text from "sap/m/Text";
18
- import Model from "sap/ui/model/Model";
19
- import sticky from "sap/fe/core/actions/sticky";
23
+ import ControllerExtension from "sap/ui/core/mvc/ControllerExtension";
24
+ import OverrideExecution from "sap/ui/core/mvc/OverrideExecution";
20
25
  import View from "sap/ui/core/mvc/View";
21
- import { send } from "sap/fe/core/actions/collaboration/ActivitySync";
22
- import { Activity } from "sap/fe/core/actions/collaboration/CollaborationCommon";
26
+ import Table from "sap/ui/mdc/Table";
27
+ import JSONModel from "sap/ui/model/json/JSONModel";
28
+ import Model from "sap/ui/model/Model";
23
29
  import Context from "sap/ui/model/odata/v4/Context";
24
30
 
25
31
  const ProgrammingModel = FELibrary.ProgrammingModel,
@@ -27,9 +33,9 @@ const ProgrammingModel = FELibrary.ProgrammingModel,
27
33
  EditMode = FELibrary.EditMode,
28
34
  CreationMode = FELibrary.CreationMode;
29
35
 
30
- @UI5Class("sap.fe.core.controllerextensions.InternalEditFlow", ControllerExtensionMetadata)
36
+ @defineUI5Class("sap.fe.core.controllerextensions.InternalEditFlow")
31
37
  class InternalEditFlow extends ControllerExtension {
32
- private base!: PageController;
38
+ protected base!: PageController;
33
39
  private _oAppComponent!: AppComponent;
34
40
  private _pTasks: any;
35
41
  private oActionPromise?: Promise<any>;
@@ -37,7 +43,7 @@ class InternalEditFlow extends ControllerExtension {
37
43
  private fnDirtyStateProvider?: Function;
38
44
  private fnHandleSessionTimeout?: Function;
39
45
  private fnStickyDiscardAfterNavigation?: Function;
40
- @Override()
46
+ @methodOverride()
41
47
  onInit() {
42
48
  this._oAppComponent = this.base.getAppComponent();
43
49
  }
@@ -50,14 +56,14 @@ class InternalEditFlow extends ControllerExtension {
50
56
  * @alias sap.fe.core.controllerextensions.InternalEditFlow#setCreationMode
51
57
  * @since 1.90.0
52
58
  */
53
- @Private
54
- @Extensible(OverrideExecution.After)
59
+ @privateExtension()
60
+ @extensible(OverrideExecution.After)
55
61
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
56
62
  setCreationMode(bCreationMode: boolean) {
57
63
  // to be overridden
58
64
  }
59
- @Public
60
- @Final
65
+ @publicExtension()
66
+ @finalExtension()
61
67
  createMultipleDocuments(oListBinding: any, aData: any, bCreateAtEnd: any, bFromCopyPaste: any, beforeCreateCallBack: any) {
62
68
  const transactionHelper = this.getTransactionHelper(),
63
69
  oLockObject = this.getGlobalUIModel(),
@@ -65,7 +71,7 @@ class InternalEditFlow extends ControllerExtension {
65
71
 
66
72
  BusyLocker.lock(oLockObject);
67
73
  return this.syncTask()
68
- .then(function() {
74
+ .then(function () {
69
75
  const onBeforeCreatePromise = beforeCreateCallBack
70
76
  ? beforeCreateCallBack({ contextPath: oListBinding && oListBinding.getPath() })
71
77
  : Promise.resolve();
@@ -114,10 +120,10 @@ class InternalEditFlow extends ControllerExtension {
114
120
 
115
121
  return Promise.all(aCreationPromises);
116
122
  })
117
- .then(function(aContexts: any) {
123
+ .then(function (aContexts: any) {
118
124
  // transient contexts are reliably removed once oNewContext.created() is resolved
119
125
  return Promise.all(
120
- aContexts.map(function(oNewContext: any) {
126
+ aContexts.map(function (oNewContext: any) {
121
127
  return oNewContext.created();
122
128
  })
123
129
  );
@@ -134,16 +140,16 @@ class InternalEditFlow extends ControllerExtension {
134
140
  .requestSideEffectsForNavigationProperty(oListBinding.getPath(), oBindingContext as Context);
135
141
  }
136
142
  })
137
- .catch(function(err: any) {
143
+ .catch(function (err: any) {
138
144
  Log.error("Error while creating multiple documents.");
139
145
  return Promise.reject(err);
140
146
  })
141
- .finally(function() {
147
+ .finally(function () {
142
148
  BusyLocker.unlock(oLockObject);
143
149
  });
144
150
  }
145
- @Public
146
- @Final
151
+ @publicExtension()
152
+ @finalExtension()
147
153
  deleteMultipleDocuments(aContexts: any, mParameters: any) {
148
154
  const oRoutingListener = this.getRoutingListener(),
149
155
  oLockObject = this.getGlobalUIModel();
@@ -166,8 +172,8 @@ class InternalEditFlow extends ControllerExtension {
166
172
  const oBindingContext = this.getView().getBindingContext();
167
173
  if (oListBinding.isRoot()) {
168
174
  // keep promise chain pending until refresh of listbinding is completed
169
- oResult = new Promise<void>(resolve => {
170
- oListBinding.attachEventOnce("dataReceived", function() {
175
+ oResult = new Promise<void>((resolve) => {
176
+ oListBinding.attachEventOnce("dataReceived", function () {
171
177
  resolve();
172
178
  });
173
179
  });
@@ -199,10 +205,10 @@ class InternalEditFlow extends ControllerExtension {
199
205
 
200
206
  return oResult;
201
207
  })
202
- .catch(function(oError: any) {
208
+ .catch(function (oError: any) {
203
209
  Log.error("Error while deleting the document(s)", oError);
204
210
  })
205
- .finally(function() {
211
+ .finally(function () {
206
212
  BusyLocker.unlock(oLockObject);
207
213
  });
208
214
  }
@@ -217,8 +223,8 @@ class InternalEditFlow extends ControllerExtension {
217
223
  * @returns {Promise} Promise resolves once the edit mode is computed
218
224
  */
219
225
 
220
- @Public
221
- @Final
226
+ @publicExtension()
227
+ @finalExtension()
222
228
  computeEditMode(oContext: any) {
223
229
  const sCustomAction = this.getInternalModel().getProperty("/sCustomAction");
224
230
  return Promise.resolve(
@@ -242,7 +248,7 @@ class InternalEditFlow extends ControllerExtension {
242
248
  this.setEditMode(EditMode.Display, false);
243
249
  }
244
250
  })
245
- .catch(function(oError: any) {
251
+ .catch(function (oError: any) {
246
252
  Log.error("Error while determining the editMode for draft", oError);
247
253
  throw oError;
248
254
  });
@@ -266,15 +272,14 @@ class InternalEditFlow extends ControllerExtension {
266
272
  * @param {string} sEditMode
267
273
  * @param {boolean} bCreationMode CreateMode flag to identify the creation mode
268
274
  */
269
- @Public
270
- @Final
271
- setEditMode(sEditMode?: string, bCreationMode: boolean = false) {
275
+ @publicExtension()
276
+ @finalExtension()
277
+ setEditMode(sEditMode?: string, bCreationMode?: boolean) {
272
278
  // at this point of time it's not meant to release the edit flow for freestyle usage therefore we can
273
279
  // rely on the global UI model to exist
274
280
  const oGlobalModel = this.getGlobalUIModel();
275
281
 
276
282
  if (sEditMode) {
277
- oGlobalModel.setProperty("/editMode", sEditMode, undefined, true);
278
283
  oGlobalModel.setProperty("/isEditable", sEditMode === "Editable", undefined, true);
279
284
  }
280
285
 
@@ -285,16 +290,16 @@ class InternalEditFlow extends ControllerExtension {
285
290
  }
286
291
  }
287
292
 
288
- @Public
289
- @Final
293
+ @publicExtension()
294
+ @finalExtension()
290
295
  setDraftStatus(sDraftState: any) {
291
296
  // at this point of time it's not meant to release the edit flow for freestyle usage therefore we can
292
297
  // rely on the global UI model to exist
293
298
  (this.base.getView().getModel("ui") as JSONModel).setProperty("/draftStatus", sDraftState, undefined, true);
294
299
  }
295
300
 
296
- @Public
297
- @Final
301
+ @publicExtension()
302
+ @finalExtension()
298
303
  getRoutingListener() {
299
304
  // at this point of time it's not meant to release the edit flow for FPM custom pages and the routing
300
305
  // listener is not yet public therefore keep the logic here for now
@@ -306,8 +311,8 @@ class InternalEditFlow extends ControllerExtension {
306
311
  }
307
312
  }
308
313
 
309
- @Public
310
- @Final
314
+ @publicExtension()
315
+ @finalExtension()
311
316
  getGlobalUIModel(): JSONModel {
312
317
  // at this point of time it's not meant to release the edit flow for freestyle usage therefore we can
313
318
  // rely on the global UI model to exist
@@ -328,12 +333,12 @@ class InternalEditFlow extends ControllerExtension {
328
333
  * @ui5-restricted
329
334
  * @final
330
335
  */
331
- @Public
332
- @Final
336
+ @publicExtension()
337
+ @finalExtension()
333
338
  syncTask(vTask?: Function | Promise<any>) {
334
339
  let fnNewTask;
335
340
  if (vTask instanceof Promise) {
336
- fnNewTask = function() {
341
+ fnNewTask = function () {
337
342
  return vTask;
338
343
  };
339
344
  } else if (typeof vTask === "function") {
@@ -342,7 +347,7 @@ class InternalEditFlow extends ControllerExtension {
342
347
 
343
348
  this._pTasks = this._pTasks || Promise.resolve();
344
349
  if (!!fnNewTask) {
345
- this._pTasks = this._pTasks.then(fnNewTask).catch(function() {
350
+ this._pTasks = this._pTasks.then(fnNewTask).catch(function () {
346
351
  return Promise.resolve();
347
352
  });
348
353
  }
@@ -350,14 +355,14 @@ class InternalEditFlow extends ControllerExtension {
350
355
  return this._pTasks;
351
356
  }
352
357
 
353
- @Public
354
- @Final
355
- getProgrammingModel(oContext: any): typeof ProgrammingModel {
358
+ @publicExtension()
359
+ @finalExtension()
360
+ getProgrammingModel(oContext?: any): typeof ProgrammingModel {
356
361
  return this.getTransactionHelper().getProgrammingModel(oContext);
357
362
  }
358
363
 
359
- @Public
360
- @Final
364
+ @publicExtension()
365
+ @finalExtension()
361
366
  deleteDocumentTransaction(oContext: any, mParameters: any) {
362
367
  const oResourceBundle = (this.getView().getController() as any).oResourceBundle,
363
368
  transactionHelper = this.getTransactionHelper();
@@ -367,10 +372,7 @@ class InternalEditFlow extends ControllerExtension {
367
372
  // TODO: this setting and removing of contexts shouldn't be in the transaction helper at all
368
373
  // for the time being I kept it and provide the internal model context to not break something
369
374
  mParameters.internalModelContext = mParameters.controlId
370
- ? sap.ui
371
- .getCore()
372
- .byId(mParameters.controlId)
373
- ?.getBindingContext("internal")
375
+ ? sap.ui.getCore().byId(mParameters.controlId)?.getBindingContext("internal")
374
376
  : null;
375
377
 
376
378
  return this.syncTask()
@@ -380,7 +382,7 @@ class InternalEditFlow extends ControllerExtension {
380
382
  .then(() => {
381
383
  this.getInternalModel().setProperty("/sessionOn", false);
382
384
  })
383
- .catch(function(oError: any) {
385
+ .catch(function (oError: any) {
384
386
  return Promise.reject(oError);
385
387
  });
386
388
  }
@@ -391,8 +393,8 @@ class InternalEditFlow extends ControllerExtension {
391
393
  * @memberof sap.fe.core.controllerextensions.EditFlow
392
394
  * @param {object} oBinding OData list binding object
393
395
  */
394
- @Public
395
- @Final
396
+ @publicExtension()
397
+ @finalExtension()
396
398
  handleCreateEvents(oBinding: any) {
397
399
  const transactionHelper = this.getTransactionHelper();
398
400
 
@@ -416,8 +418,8 @@ class InternalEditFlow extends ControllerExtension {
416
418
  });
417
419
  }
418
420
 
419
- @Public
420
- @Final
421
+ @publicExtension()
422
+ @finalExtension()
421
423
  getTransactionHelper() {
422
424
  if (!this._oTransactionHelper) {
423
425
  // currently also the transaction helper is locking therefore passing lock object
@@ -427,8 +429,8 @@ class InternalEditFlow extends ControllerExtension {
427
429
  return this._oTransactionHelper;
428
430
  }
429
431
 
430
- @Public
431
- @Final
432
+ @publicExtension()
433
+ @finalExtension()
432
434
  getInternalModel(): JSONModel {
433
435
  return this.base.getView().getModel("internal") as JSONModel;
434
436
  }
@@ -442,8 +444,8 @@ class InternalEditFlow extends ControllerExtension {
442
444
  * @returns {Function} The resolver function which can be used to externally resolve the promise
443
445
  */
444
446
 
445
- @Public
446
- @Final
447
+ @publicExtension()
448
+ @finalExtension()
447
449
  createActionPromise(sActionName: any, sControlId: any) {
448
450
  let fResolver, fRejector;
449
451
  this.oActionPromise = new Promise((resolve, reject) => {
@@ -464,14 +466,14 @@ class InternalEditFlow extends ControllerExtension {
464
466
  *
465
467
  * @returns {Promise} Returns the promise
466
468
  */
467
- @Public
468
- @Final
469
+ @publicExtension()
470
+ @finalExtension()
469
471
  getCurrentActionPromise() {
470
472
  return this.oActionPromise;
471
473
  }
472
474
 
473
- @Public
474
- @Final
475
+ @publicExtension()
476
+ @finalExtension()
475
477
  deleteCurrentActionPromise() {
476
478
  this.oActionPromise = undefined;
477
479
  }
@@ -484,8 +486,8 @@ class InternalEditFlow extends ControllerExtension {
484
486
  * @param {object} oResponse The bound action's response data or response context
485
487
  * @returns {object} Object with data and names of the key fields of the response
486
488
  */
487
- @Public
488
- @Final
489
+ @publicExtension()
490
+ @finalExtension()
489
491
  getActionResponseDataAndKeys(sActionName: string, oResponse: any) {
490
492
  if (Array.isArray(oResponse)) {
491
493
  if (oResponse.length === 1) {
@@ -511,8 +513,8 @@ class InternalEditFlow extends ControllerExtension {
511
513
  };
512
514
  }
513
515
 
514
- @Public
515
- @Final
516
+ @publicExtension()
517
+ @finalExtension()
516
518
  getMessageHandler() {
517
519
  // at this point of time it's not meant to release the edit flow for FPM custom pages therefore keep
518
520
  // the logic here for now
@@ -524,9 +526,9 @@ class InternalEditFlow extends ControllerExtension {
524
526
  }
525
527
  }
526
528
 
527
- @Public
528
- @Final
529
- handleStickyOn(oContext: any) {
529
+ @publicExtension()
530
+ @finalExtension()
531
+ handleStickyOn(oContext: Context) {
530
532
  const oAppComponent = CommonUtils.getAppComponent(this.getView());
531
533
 
532
534
  try {
@@ -541,8 +543,8 @@ class InternalEditFlow extends ControllerExtension {
541
543
  // Set a guard in the RouterProxy
542
544
  // A timeout is necessary, as with deferred creation the hashChanger is not updated yet with
543
545
  // the new hash, and the guard cannot be found in the managed history of the router proxy
544
- setTimeout(function() {
545
- oAppComponent.getRouterProxy().setNavigationGuard();
546
+ setTimeout(function () {
547
+ oAppComponent.getRouterProxy().setNavigationGuard(oContext.getPath().substring(1));
546
548
  }, 0);
547
549
 
548
550
  // Setting back navigation on shell service, to get the dicard message box in case of sticky
@@ -560,14 +562,14 @@ class InternalEditFlow extends ControllerExtension {
560
562
  oAppComponent.getRoutingService().attachRouteMatched(this.fnStickyDiscardAfterNavigation);
561
563
  }
562
564
  } catch (error) {
563
- Log.info(error);
565
+ Log.info(error as any);
564
566
  return undefined;
565
567
  }
566
568
  return true;
567
569
  }
568
570
 
569
- @Public
570
- @Final
571
+ @publicExtension()
572
+ @finalExtension()
571
573
  handleStickyOff() {
572
574
  const oAppComponent = CommonUtils.getAppComponent(this.getView());
573
575
  try {
@@ -602,7 +604,7 @@ class InternalEditFlow extends ControllerExtension {
602
604
  oAppComponent.getShellServices().setBackNavigation();
603
605
  }
604
606
  } catch (error) {
605
- Log.info(error);
607
+ Log.info(error as any);
606
608
  return undefined;
607
609
  }
608
610
  return true;
@@ -615,8 +617,8 @@ class InternalEditFlow extends ControllerExtension {
615
617
  * @name onBackNavigationInSession
616
618
  * @memberof sap.fe.core.controllerextensions.InternalEditFlow
617
619
  */
618
- @Public
619
- @Final
620
+ @publicExtension()
621
+ @finalExtension()
620
622
  onBackNavigationInSession() {
621
623
  const oView = this.getView(),
622
624
  oAppComponent = CommonUtils.getAppComponent(oView),
@@ -639,8 +641,8 @@ class InternalEditFlow extends ControllerExtension {
639
641
  history.back();
640
642
  }
641
643
 
642
- @Public
643
- @Final
644
+ @publicExtension()
645
+ @finalExtension()
644
646
  discardStickySession(oContext: any) {
645
647
  sticky.discardDocument(oContext);
646
648
  this.handleStickyOff();
@@ -660,7 +662,7 @@ class InternalEditFlow extends ControllerExtension {
660
662
  return true;
661
663
  } else if (oStickySession && oStickySession.AdditionalNewActions) {
662
664
  return sCustomAction ===
663
- oStickySession.AdditionalNewActions.find(function(sAdditionalAction: string) {
665
+ oStickySession.AdditionalNewActions.find(function (sAdditionalAction: string) {
664
666
  return sAdditionalAction === sCustomAction;
665
667
  })
666
668
  ? true
@@ -669,7 +671,7 @@ class InternalEditFlow extends ControllerExtension {
669
671
  return false;
670
672
  }
671
673
  } catch (error) {
672
- Log.info(error);
674
+ Log.info(error as any);
673
675
  return undefined;
674
676
  }
675
677
  }
@@ -714,7 +716,7 @@ class InternalEditFlow extends ControllerExtension {
714
716
  if (bDirty) {
715
717
  // the FLP doesn't call the dirty state provider anymore once it's dirty, as they can't
716
718
  // change this due to compatibility reasons we set it back to not-dirty
717
- setTimeout(function() {
719
+ setTimeout(function () {
718
720
  oAppComponent.getShellServices().setDirtyFlag(false);
719
721
  }, 0);
720
722
  } else {
@@ -723,7 +725,7 @@ class InternalEditFlow extends ControllerExtension {
723
725
 
724
726
  return bDirty;
725
727
  } catch (error) {
726
- Log.info(error);
728
+ Log.info(error as any);
727
729
  return undefined;
728
730
  }
729
731
  };
@@ -747,13 +749,13 @@ class InternalEditFlow extends ControllerExtension {
747
749
  beginButton: new Button({
748
750
  text: "{sap.fe.i18n>C_COMMON_DIALOG_OK}",
749
751
  type: "Emphasized",
750
- press: function() {
752
+ press: function () {
751
753
  // remove sticky handling after navigation since session has already been terminated
752
754
  that.handleStickyOff();
753
755
  that.getRoutingListener().navigateBackFromContext(oContext);
754
756
  }
755
757
  }),
756
- afterClose: function() {
758
+ afterClose: function () {
757
759
  oDialog.destroy();
758
760
  }
759
761
  });
@@ -762,7 +764,7 @@ class InternalEditFlow extends ControllerExtension {
762
764
  that.getView().addDependent(oDialog);
763
765
  oDialog.open();
764
766
  } catch (error) {
765
- Log.info(error);
767
+ Log.info(error as any);
766
768
  return undefined;
767
769
  }
768
770
  return true;