@sapui5/sap.fe.core 1.136.11 → 1.136.13

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 (44) hide show
  1. package/package.json +1 -1
  2. package/src/sap/fe/core/.library +1 -1
  3. package/src/sap/fe/core/AppStateHandler.js +8 -2
  4. package/src/sap/fe/core/AppStateHandler.ts +9 -1
  5. package/src/sap/fe/core/TemplateComponent.js +1 -1
  6. package/src/sap/fe/core/TemplateComponent.ts +1 -3
  7. package/src/sap/fe/core/controllerextensions/EditFlow.js +73 -23
  8. package/src/sap/fe/core/controllerextensions/EditFlow.ts +113 -43
  9. package/src/sap/fe/core/controllerextensions/InternalRouting.js +7 -4
  10. package/src/sap/fe/core/controllerextensions/InternalRouting.ts +8 -5
  11. package/src/sap/fe/core/controllerextensions/MessageHandler.js +1 -1
  12. package/src/sap/fe/core/controllerextensions/MessageHandler.ts +1 -0
  13. package/src/sap/fe/core/controllerextensions/Routing.js +6 -2
  14. package/src/sap/fe/core/controllerextensions/Routing.ts +4 -1
  15. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +8 -1
  16. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +8 -0
  17. package/src/sap/fe/core/controllerextensions/editFlow/operations/ODataOperation.js +2 -1
  18. package/src/sap/fe/core/controllerextensions/editFlow/operations/ODataOperation.ts +1 -0
  19. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +6 -5
  20. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.ts +15 -5
  21. package/src/sap/fe/core/controls/Recommendations/ConfirmRecommendationDialog.js +29 -1
  22. package/src/sap/fe/core/controls/Recommendations/ConfirmRecommendationDialog.tsx +32 -0
  23. package/src/sap/fe/core/converters/controls/Common/Action.js +3 -2
  24. package/src/sap/fe/core/converters/controls/Common/Action.ts +2 -1
  25. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +31 -36
  26. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +47 -57
  27. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +4 -3
  28. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +3 -2
  29. package/src/sap/fe/core/formatters/FPMFormatter.js +2 -2
  30. package/src/sap/fe/core/formatters/FPMFormatter.ts +1 -1
  31. package/src/sap/fe/core/fpm/manifest.json +1 -1
  32. package/src/sap/fe/core/helpers/ModelHelper.js +4 -1
  33. package/src/sap/fe/core/helpers/ModelHelper.ts +4 -1
  34. package/src/sap/fe/core/library.js +1 -1
  35. package/src/sap/fe/core/messagebundle_da.properties +1 -1
  36. package/src/sap/fe/core/messagebundle_ko.properties +3 -3
  37. package/src/sap/fe/core/messagebundle_uk.properties +2 -2
  38. package/src/sap/fe/core/messagebundle_vi.properties +4 -4
  39. package/src/sap/fe/core/rootView/Fcl.controller.js +1 -1
  40. package/src/sap/fe/core/rootView/Fcl.controller.ts +6 -1
  41. package/src/sap/fe/core/services/CollaborationManagerServiceFactory.js +17 -29
  42. package/src/sap/fe/core/services/CollaborationManagerServiceFactory.ts +23 -26
  43. package/src/sap/fe/core/services/RoutingServiceFactory.js +9 -5
  44. package/src/sap/fe/core/services/RoutingServiceFactory.ts +12 -6
@@ -10,6 +10,7 @@ import Placeholder from "sap/fe/core/controllerextensions/Placeholder";
10
10
  import messageHandling from "sap/fe/core/controllerextensions/messageHandler/messageHandling";
11
11
  import NavigationReason from "sap/fe/core/controllerextensions/routing/NavigationReason";
12
12
  import RouterProxy from "sap/fe/core/controllerextensions/routing/RouterProxy";
13
+ import type { HiddenDraft } from "sap/fe/core/converters/ManifestSettings";
13
14
  import AppStartupHelper from "sap/fe/core/helpers/AppStartupHelper";
14
15
  import EditState from "sap/fe/core/helpers/EditState";
15
16
  import { getRouteTargetNames } from "sap/fe/core/helpers/ManifestHelper";
@@ -57,7 +58,7 @@ export type RoutingEventParameters = Route$MatchedEventParameters & {
57
58
 
58
59
  export type CreateOnNavigateParameters =
59
60
  | { mode: "Async"; createContextPromise: Promise<Context> }
60
- | { mode: "Deferred"; listBinding: ODataListBinding; parentContext?: Context; data?: object };
61
+ | { mode: "Deferred"; listBinding: ODataListBinding; parentContext?: Context; data?: object; requestAtLeast?: string[] };
61
62
 
62
63
  export type RoutingNavigationInfo = {
63
64
  createOnNavigateParameters?: CreateOnNavigateParameters;
@@ -556,8 +557,10 @@ export class RoutingService extends Service<RoutingServiceSettings> {
556
557
  );
557
558
  }
558
559
  const targetUrl = await sTargetURLPromise;
560
+ const isHiddenDraftEnabled =
561
+ (this.oAppComponent.getEnvironmentCapabilities().getCapabilities().HiddenDraft as HiddenDraft)?.enabled || false;
559
562
  const navigateFunction = (): void => {
560
- this.oRouterProxy.navToHash(targetUrl!, bPreserveHistory, false, false, !bIsStickyMode);
563
+ this.oRouterProxy.navToHash(targetUrl!, bPreserveHistory, false, false, bIsStickyMode || isHiddenDraftEnabled);
561
564
  };
562
565
  if (delayedUsage === true) {
563
566
  return navigateFunction; // wrong but somehow the types are annoying
@@ -668,6 +671,8 @@ export class RoutingService extends Service<RoutingServiceSettings> {
668
671
  let targetRoute = "";
669
672
  let routeParametersPromise: Promise<object> | undefined;
670
673
  const isStickyMode = ModelHelper.isStickySessionSupported(this.oMetaModel);
674
+ const isHiddenDraftEnabled =
675
+ (this.oAppComponent.getEnvironmentCapabilities().getCapabilities().HiddenDraft as HiddenDraft)?.enabled || false;
671
676
 
672
677
  // Manage parameter mapping
673
678
  if (parameters?.targetPath && viewData?.navigation) {
@@ -797,7 +802,7 @@ export class RoutingService extends Service<RoutingServiceSettings> {
797
802
 
798
803
  if (targetRoute && routeParametersPromise) {
799
804
  return routeParametersPromise.then((oRouteParameters: object) => {
800
- Object.assign(oRouteParameters, { bIsStickyMode: isStickyMode });
805
+ Object.assign(oRouteParameters, { bIsStickyMode: isStickyMode, isHiddenDraftEnabled });
801
806
  this.oRouter.navTo(targetRoute, oRouteParameters);
802
807
  return true;
803
808
  });
@@ -808,7 +813,7 @@ export class RoutingService extends Service<RoutingServiceSettings> {
808
813
  !!parameters.preserveHistory,
809
814
  parameters?.noPreservationCache,
810
815
  parameters?.forceFocus,
811
- !isStickyMode,
816
+ isStickyMode || isHiddenDraftEnabled,
812
817
  skipHashGuardCheck
813
818
  )
814
819
  .then((bNavigated) => {
@@ -827,12 +832,13 @@ export class RoutingService extends Service<RoutingServiceSettings> {
827
832
  * @param [oRouteParameters] Parameters to be used with route to create the target hash
828
833
  * @param oRouteParameters.bIsStickyMode
829
834
  * @param oRouteParameters.preserveHistory
835
+ * @param oRouteParameters.isHiddenDraftEnabled
830
836
  * @returns Promise that is resolved when the navigation is finalized
831
837
  * @final
832
838
  */
833
839
  async navigateToRoute(
834
840
  sTargetRouteName: string,
835
- oRouteParameters?: { bIsStickyMode?: boolean; preserveHistory?: boolean }
841
+ oRouteParameters?: { bIsStickyMode?: boolean; preserveHistory?: boolean; isHiddenDraftEnabled?: boolean }
836
842
  ): Promise<boolean> {
837
843
  if (!this.enabled) {
838
844
  return Promise.resolve(false);
@@ -844,7 +850,7 @@ export class RoutingService extends Service<RoutingServiceSettings> {
844
850
  !!oRouteParameters?.preserveHistory,
845
851
  undefined,
846
852
  undefined,
847
- !oRouteParameters?.bIsStickyMode
853
+ (oRouteParameters?.bIsStickyMode ?? false) || (oRouteParameters?.isHiddenDraftEnabled ?? false)
848
854
  );
849
855
  }
850
856