@sapui5/sap.fe.templates 1.109.0 → 1.110.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 (83) hide show
  1. package/README.md +5 -1
  2. package/package.json +11 -8
  3. package/src/sap/fe/templates/.library +26 -27
  4. package/src/sap/fe/templates/AnalyticalListPage/Component.js +1 -7
  5. package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.js +1 -4
  6. package/src/sap/fe/templates/ListComponent.js +45 -62
  7. package/src/sap/fe/templates/ListComponent.ts +43 -43
  8. package/src/sap/fe/templates/ListReport/Component.js +11 -19
  9. package/src/sap/fe/templates/ListReport/Component.ts +6 -0
  10. package/src/sap/fe/templates/ListReport/ExtensionAPI.js +11 -37
  11. package/src/sap/fe/templates/ListReport/ExtensionAPI.ts +1 -1
  12. package/src/sap/fe/templates/ListReport/LRMessageStrip.js +196 -0
  13. package/src/sap/fe/templates/ListReport/LRMessageStrip.ts +216 -0
  14. package/src/sap/fe/templates/ListReport/ListReport.view.xml +31 -0
  15. package/src/sap/fe/templates/ListReport/ListReportController.controller.js +140 -247
  16. package/src/sap/fe/templates/ListReport/ListReportController.controller.ts +49 -14
  17. package/src/sap/fe/templates/ListReport/ListReportTemplating.js +2 -7
  18. package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.js +21 -108
  19. package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.js +9 -17
  20. package/src/sap/fe/templates/ListReport/overrides/Share.js +9 -25
  21. package/src/sap/fe/templates/ListReport/overrides/ViewState.js +51 -122
  22. package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.js +1 -23
  23. package/src/sap/fe/templates/ObjectPage/Component.js +19 -40
  24. package/src/sap/fe/templates/ObjectPage/Component.ts +9 -2
  25. package/src/sap/fe/templates/ObjectPage/ExtendPageDefinition.js +64 -0
  26. package/src/sap/fe/templates/ObjectPage/ExtendPageDefinition.ts +80 -0
  27. package/src/sap/fe/templates/ObjectPage/ExtensionAPI.js +21 -58
  28. package/src/sap/fe/templates/ObjectPage/ExtensionAPI.ts +4 -4
  29. package/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +2 -1
  30. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +173 -459
  31. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.ts +13 -18
  32. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.js +129 -208
  33. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.ts +62 -14
  34. package/src/sap/fe/templates/ObjectPage/components/DraftHandlerButton.js +1 -32
  35. package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js +9 -37
  36. package/src/sap/fe/templates/ObjectPage/controls/StashableVBox.js +1 -7
  37. package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.js +9 -31
  38. package/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.js +1 -1
  39. package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime.js +2 -4
  40. package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime.js +1 -1
  41. package/src/sap/fe/templates/ObjectPage/flexibility/ScrollableHeaderContainer.flexibility.js +4 -5
  42. package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.js +4 -4
  43. package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.ts +3 -3
  44. package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.js +4 -4
  45. package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.ts +3 -3
  46. package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.js +16 -21
  47. package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.ts +1 -1
  48. package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.js +19 -1
  49. package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.ts +21 -0
  50. package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.js +1 -1
  51. package/src/sap/fe/templates/ObjectPage/overrides/Paginator.js +4 -5
  52. package/src/sap/fe/templates/ObjectPage/overrides/Share.js +19 -69
  53. package/src/sap/fe/templates/ObjectPage/overrides/Share.ts +1 -1
  54. package/src/sap/fe/templates/ObjectPage/overrides/ViewState.js +5 -20
  55. package/src/sap/fe/templates/ObjectPage/view/fragments/Actions.fragment.xml +6 -6
  56. package/src/sap/fe/templates/ObjectPage/view/fragments/EditableHeaderFacet.fragment.xml +4 -3
  57. package/src/sap/fe/templates/ObjectPage/view/fragments/FooterContent.fragment.xml +3 -3
  58. package/src/sap/fe/templates/ObjectPage/view/fragments/FormActions.fragment.xml +1 -1
  59. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderContent.fragment.xml +1 -1
  60. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderDataPoint.fragment.xml +1 -1
  61. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacet.fragment.xml +4 -3
  62. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacetCustomContainer.fragment.xml +7 -5
  63. package/src/sap/fe/templates/ObjectPage/view/fragments/HeadingAvatar.fragment.xml +1 -1
  64. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderContact.fragment.xml +3 -2
  65. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderForm.fragment.xml +2 -1
  66. package/src/sap/fe/templates/ObjectPage/view/fragments/SideContentCustomContainer.fragment.xml +7 -7
  67. package/src/sap/fe/templates/TableScroller.js +1 -6
  68. package/src/sap/fe/templates/library.js +4 -7
  69. package/src/sap/fe/templates/library.ts +1 -2
  70. package/src/sap/fe/templates/messagebundle.properties +30 -29
  71. package/src/sap/fe/templates/messagebundle_bg.properties +2 -2
  72. package/src/sap/fe/templates/messagebundle_cs.properties +1 -1
  73. package/src/sap/fe/templates/messagebundle_en_US_sappsd.properties +1 -1
  74. package/src/sap/fe/templates/messagebundle_en_US_saprigi.properties +1 -1
  75. package/src/sap/fe/templates/messagebundle_en_US_saptrc.properties +1 -1
  76. package/src/sap/fe/templates/messagebundle_no.properties +3 -3
  77. package/src/sap/fe/templates/messagebundle_sl.properties +7 -7
  78. package/ui5.yaml +0 -1
  79. package/src/sap/fe/templates/Feedback.js +0 -80
  80. package/src/sap/fe/templates/Feedback.ts +0 -64
  81. package/src/sap/fe/templates/ObjectPage/view/fragments/FormActionButtons.fragment.xml +0 -82
  82. package/src/sap/fe/templates/RootContainer/overrides/EditFlow.js +0 -20
  83. package/src/sap/fe/templates/RootContainer/overrides/EditFlow.ts +0 -20
@@ -6,10 +6,8 @@ import CommonUtils from "sap/fe/core/CommonUtils";
6
6
  import BusyLocker from "sap/fe/core/controllerextensions/BusyLocker";
7
7
  import { connect, disconnect, isConnected } from "sap/fe/core/controllerextensions/collaboration/ActivitySync";
8
8
  import { openManageDialog, showUserDetails } from "sap/fe/core/controllerextensions/collaboration/Manage";
9
- import EditFlow from "sap/fe/core/controllerextensions/EditFlow";
10
9
  import draft from "sap/fe/core/controllerextensions/editFlow/draft";
11
10
  import IntentBasedNavigation from "sap/fe/core/controllerextensions/IntentBasedNavigation";
12
- import InternalEditFlow from "sap/fe/core/controllerextensions/InternalEditFlow";
13
11
  import InternalIntentBasedNavigation from "sap/fe/core/controllerextensions/InternalIntentBasedNavigation";
14
12
  import InternalRouting from "sap/fe/core/controllerextensions/InternalRouting";
15
13
  import MassEdit from "sap/fe/core/controllerextensions/MassEdit";
@@ -19,7 +17,6 @@ import Paginator from "sap/fe/core/controllerextensions/Paginator";
19
17
  import Placeholder from "sap/fe/core/controllerextensions/Placeholder";
20
18
  import Share from "sap/fe/core/controllerextensions/Share";
21
19
  import ViewState from "sap/fe/core/controllerextensions/ViewState";
22
- import * as MetaModelConverter from "sap/fe/core/converters/MetaModelConverter";
23
20
  import { defineUI5Class, extensible, finalExtension, publicExtension, usingExtension } from "sap/fe/core/helpers/ClassSupport";
24
21
  import type { InternalModelContext } from "sap/fe/core/helpers/ModelHelper";
25
22
  import ModelHelper from "sap/fe/core/helpers/ModelHelper";
@@ -31,7 +28,6 @@ import TableUtils from "sap/fe/macros/table/Utils";
31
28
  import SelectionVariant from "sap/fe/navigation/SelectionVariant";
32
29
  import type { default as ObjectPageExtensionAPI } from "sap/fe/templates/ObjectPage/ExtensionAPI";
33
30
  import { default as ExtensionAPI } from "sap/fe/templates/ObjectPage/ExtensionAPI";
34
- import EditFlowOverrides from "sap/fe/templates/RootContainer/overrides/EditFlow";
35
31
  import TableScroller from "sap/fe/templates/TableScroller";
36
32
  import InstanceManager from "sap/m/InstanceManager";
37
33
  import Link from "sap/m/Link";
@@ -65,12 +61,8 @@ class ObjectPageController extends PageController {
65
61
  oView!: any;
66
62
  @usingExtension(Placeholder)
67
63
  placeholder!: Placeholder;
68
- @usingExtension(EditFlow)
69
- editFlow!: EditFlow;
70
64
  @usingExtension(Share.override(ShareOverrides))
71
65
  share!: Share;
72
- @usingExtension(InternalEditFlow.override(EditFlowOverrides))
73
- _editFlow!: InternalEditFlow;
74
66
  @usingExtension(InternalRouting.override(InternalRoutingOverride))
75
67
  _routing!: InternalRouting;
76
68
  @usingExtension(Paginator.override(PaginatorOverride))
@@ -135,7 +127,7 @@ class ObjectPageController extends PageController {
135
127
 
136
128
  // Setting defaults of internal model context
137
129
  const oInternalModelContext = this.getView().getBindingContext("internal") as InternalModelContext;
138
- oInternalModelContext?.setProperty("externalNavigationContext", { "page": true });
130
+ oInternalModelContext?.setProperty("externalNavigationContext", { page: true });
139
131
  oInternalModelContext?.setProperty("relatedApps", {
140
132
  visibility: false,
141
133
  items: null
@@ -148,6 +140,8 @@ class ObjectPageController extends PageController {
148
140
  }
149
141
  this.messageButton = this.getView().byId("fe::FooterBar::MessageButton");
150
142
  this.messageButton.oItemBinding.attachChange(this._fnShowOPMessage, this);
143
+ oInternalModelContext?.setProperty("rootEditEnabled", true);
144
+ oInternalModelContext?.setProperty("rootEditVisible", true);
151
145
  }
152
146
 
153
147
  onExit() {
@@ -596,7 +590,6 @@ class ObjectPageController extends PageController {
596
590
  Log.error("Error while waiting for the final UI State", oError);
597
591
  });
598
592
  }
599
-
600
593
  // update related apps once Data is received in case of binding cache is not available
601
594
  // TODO: this is only a temp solution since we need to call _updateRelatedApps method only after data for Object Page is received (if there is no binding)
602
595
  if (oBindingContext.getBinding().oCache) {
@@ -631,6 +624,9 @@ class ObjectPageController extends PageController {
631
624
  // should be called only after binding is ready hence calling it in onAfterBinding
632
625
  (oObjectPage as any)._triggerVisibleSubSectionsEvents();
633
626
  }
627
+
628
+ //To Compute the Edit Binding of the subObject page using root object page, create a context for draft root and update the edit button in sub OP using the context
629
+ ActionRuntime.updateEditButtonVisibilityAndEnablement(this.getView());
634
630
  }
635
631
  }
636
632
 
@@ -666,9 +662,10 @@ class ObjectPageController extends PageController {
666
662
  oAppComponent.getShellServices().setBackNavigation(() => this._onBackNavigationInDraft(oBindingContext));
667
663
  }
668
664
  }
665
+ const viewId = this.getView().getId();
669
666
  this.getAppComponent()
670
667
  .getAppStateHandler()
671
- .applyAppState()
668
+ .applyAppState(viewId, this.getView())
672
669
  .then(() => {
673
670
  if (mParameters.forceFocus) {
674
671
  setFocus();
@@ -807,6 +804,7 @@ class ObjectPageController extends PageController {
807
804
  BusyLocker.unlock(oModel);
808
805
  });
809
806
  }
807
+
810
808
  /**
811
809
  * Gets the context of the DraftRoot path.
812
810
  * If a view has been created with the draft Root Path, this method returns its bindingContext.
@@ -839,11 +837,8 @@ class ObjectPageController extends PageController {
839
837
  return simpleDraftRootContext;
840
838
  }
841
839
  const model = context.getModel();
842
- const metaModel = model.getMetaModel();
843
- const sEntityPath = metaModel.getMetaPath(draftRootContextPath);
844
- const mDataModel = MetaModelConverter.getInvolvedDataModelObjects(metaModel.getContext(sEntityPath));
845
840
  simpleDraftRootContext = model.bindContext(draftRootContextPath).getBoundContext();
846
- await simpleDraftRootContext.requestProperty(mDataModel.targetEntityType.keys[0]?.name);
841
+ await CommonUtils.waitForContextRequested(simpleDraftRootContext);
847
842
  // Store this new created context to use it on the next iterations
848
843
  internalModel.setProperty("/simpleDraftRootContext", simpleDraftRootContext);
849
844
  return simpleDraftRootContext;
@@ -988,8 +983,8 @@ class ObjectPageController extends PageController {
988
983
  if (oElement && oElement.isA && oElement.isA("sap.ui.mdc.Table")) {
989
984
  aControls.push(oElement);
990
985
  aSubSectionTables.push({
991
- "table": oElement,
992
- "gridTable": oElement.getType().isA("sap.ui.mdc.table.GridTableType")
986
+ table: oElement,
987
+ gridTable: oElement.getType().isA("sap.ui.mdc.table.GridTableType")
993
988
  });
994
989
  }
995
990
 
@@ -1368,7 +1363,7 @@ class ObjectPageController extends PageController {
1368
1363
  if (mConditions.positiveActionEnabled) {
1369
1364
  oController.handlers.onCallAction(oView, sActionName, mParameters);
1370
1365
  }
1371
- } else if (mConditions.editActionVisible && iViewLevel === 1) {
1366
+ } else if (mConditions.editActionVisible) {
1372
1367
  if (mConditions.editActionEnabled) {
1373
1368
  oController._editDocument(oContext);
1374
1369
  }