@sapui5/sap.fe.templates 1.144.0 → 1.145.1

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 (95) hide show
  1. package/package.json +1 -1
  2. package/src/sap/fe/templates/.library +1 -1
  3. package/src/sap/fe/templates/AnalyticalListPage/manifest.json +1 -1
  4. package/src/sap/fe/templates/ListReport/ListReportController.controller.js +10 -34
  5. package/src/sap/fe/templates/ListReport/ListReportController.controller.ts +8 -32
  6. package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.js +22 -19
  7. package/src/sap/fe/templates/ListReport/controls/MultipleModeControl.ts +23 -20
  8. package/src/sap/fe/templates/ListReport/manifest.json +1 -1
  9. package/src/sap/fe/templates/ListReport/overrides/ViewState.js +2 -3
  10. package/src/sap/fe/templates/ListReport/overrides/ViewState.ts +1 -2
  11. package/src/sap/fe/templates/ListReport/view/fragments/CollectionVisualization.fragment.xml +32 -0
  12. package/src/sap/fe/templates/ListReport/view/fragments/MacroChart.fragment.xml +1 -0
  13. package/src/sap/fe/templates/ListReport/view/fragments/Table.fragment.xml +3 -1
  14. package/src/sap/fe/templates/ObjectPage/Component.js +4 -2
  15. package/src/sap/fe/templates/ObjectPage/Component.ts +3 -1
  16. package/src/sap/fe/templates/ObjectPage/ExtensionAPI.js +78 -3
  17. package/src/sap/fe/templates/ObjectPage/ExtensionAPI.ts +85 -1
  18. package/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +1 -0
  19. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +40 -32
  20. package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.ts +43 -42
  21. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.js +2 -71
  22. package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.ts +0 -74
  23. package/src/sap/fe/templates/ObjectPage/card/actions/HeaderActions.js +6 -7
  24. package/src/sap/fe/templates/ObjectPage/card/actions/HeaderActions.ts +5 -6
  25. package/src/sap/fe/templates/ObjectPage/components/DraftToggle.js +75 -8
  26. package/src/sap/fe/templates/ObjectPage/components/DraftToggle.tsx +83 -13
  27. package/src/sap/fe/templates/ObjectPage/designtime/ObjectPage.designtime.helper.js +22 -3
  28. package/src/sap/fe/templates/ObjectPage/designtime/ObjectPage.designtime.helper.ts +30 -1
  29. package/src/sap/fe/templates/ObjectPage/designtime/ObjectPage.designtime.js +5 -2
  30. package/src/sap/fe/templates/ObjectPage/designtime/ObjectPage.designtime.ts +7 -0
  31. package/src/sap/fe/templates/ObjectPage/manifest.json +5 -5
  32. package/src/sap/fe/templates/ObjectPage/overrides/CollaborationManager.js +2 -1
  33. package/src/sap/fe/templates/ObjectPage/overrides/CollaborationManager.ts +1 -0
  34. package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.js +6 -2
  35. package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.ts +6 -1
  36. package/src/sap/fe/templates/ObjectPage/view/fragments/ExpandedHeading.fragment.xml +45 -7
  37. package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderContent.fragment.xml +8 -13
  38. package/src/sap/fe/templates/ObjectPage/view/fragments/Heading.fragment.xml +36 -6
  39. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderAddress.fragment.xml +1 -1
  40. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderContact.fragment.xml +1 -1
  41. package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderForm.fragment.xml +0 -1
  42. package/src/sap/fe/templates/ObjectPage/view/fragments/SectionContent.fragment.xml +82 -39
  43. package/src/sap/fe/templates/ObjectPage/view/fragments/SectionCustomSection.fragment.xml +6 -1
  44. package/src/sap/fe/templates/ObjectPage/view/fragments/Table.fragment.xml +3 -1
  45. package/src/sap/fe/templates/library.js +1 -1
  46. package/src/sap/fe/templates/messagebundle.properties +18 -6
  47. package/src/sap/fe/templates/messagebundle_ar.properties +14 -0
  48. package/src/sap/fe/templates/messagebundle_bg.properties +14 -0
  49. package/src/sap/fe/templates/messagebundle_ca.properties +14 -0
  50. package/src/sap/fe/templates/messagebundle_cnr.properties +15 -1
  51. package/src/sap/fe/templates/messagebundle_cs.properties +14 -0
  52. package/src/sap/fe/templates/messagebundle_cy.properties +14 -0
  53. package/src/sap/fe/templates/messagebundle_da.properties +14 -0
  54. package/src/sap/fe/templates/messagebundle_de.properties +14 -0
  55. package/src/sap/fe/templates/messagebundle_el.properties +14 -0
  56. package/src/sap/fe/templates/messagebundle_en.properties +14 -0
  57. package/src/sap/fe/templates/messagebundle_en_GB.properties +14 -0
  58. package/src/sap/fe/templates/messagebundle_en_US_saprigi.properties +11 -3
  59. package/src/sap/fe/templates/messagebundle_es.properties +14 -0
  60. package/src/sap/fe/templates/messagebundle_es_MX.properties +14 -0
  61. package/src/sap/fe/templates/messagebundle_et.properties +14 -0
  62. package/src/sap/fe/templates/messagebundle_fi.properties +14 -0
  63. package/src/sap/fe/templates/messagebundle_fr.properties +14 -0
  64. package/src/sap/fe/templates/messagebundle_fr_CA.properties +14 -0
  65. package/src/sap/fe/templates/messagebundle_hi.properties +14 -0
  66. package/src/sap/fe/templates/messagebundle_hr.properties +14 -0
  67. package/src/sap/fe/templates/messagebundle_hu.properties +14 -0
  68. package/src/sap/fe/templates/messagebundle_id.properties +14 -0
  69. package/src/sap/fe/templates/messagebundle_it.properties +14 -0
  70. package/src/sap/fe/templates/messagebundle_iw.properties +15 -1
  71. package/src/sap/fe/templates/messagebundle_ja.properties +15 -1
  72. package/src/sap/fe/templates/messagebundle_kk.properties +14 -0
  73. package/src/sap/fe/templates/messagebundle_ko.properties +14 -0
  74. package/src/sap/fe/templates/messagebundle_lt.properties +16 -2
  75. package/src/sap/fe/templates/messagebundle_lv.properties +14 -0
  76. package/src/sap/fe/templates/messagebundle_mk.properties +14 -0
  77. package/src/sap/fe/templates/messagebundle_ms.properties +14 -0
  78. package/src/sap/fe/templates/messagebundle_nl.properties +14 -0
  79. package/src/sap/fe/templates/messagebundle_no.properties +14 -0
  80. package/src/sap/fe/templates/messagebundle_pl.properties +14 -0
  81. package/src/sap/fe/templates/messagebundle_pt.properties +14 -0
  82. package/src/sap/fe/templates/messagebundle_pt_PT.properties +14 -0
  83. package/src/sap/fe/templates/messagebundle_ro.properties +14 -0
  84. package/src/sap/fe/templates/messagebundle_ru.properties +14 -0
  85. package/src/sap/fe/templates/messagebundle_sh.properties +15 -1
  86. package/src/sap/fe/templates/messagebundle_sk.properties +14 -0
  87. package/src/sap/fe/templates/messagebundle_sl.properties +17 -3
  88. package/src/sap/fe/templates/messagebundle_sr.properties +15 -1
  89. package/src/sap/fe/templates/messagebundle_sv.properties +14 -0
  90. package/src/sap/fe/templates/messagebundle_th.properties +14 -0
  91. package/src/sap/fe/templates/messagebundle_tr.properties +14 -0
  92. package/src/sap/fe/templates/messagebundle_uk.properties +14 -0
  93. package/src/sap/fe/templates/messagebundle_vi.properties +16 -2
  94. package/src/sap/fe/templates/messagebundle_zh_CN.properties +14 -0
  95. package/src/sap/fe/templates/messagebundle_zh_TW.properties +14 -0
@@ -27,7 +27,6 @@ import { RecommendationDialogDecision } from "sap/fe/core/controls/Recommendatio
27
27
  import type { HiddenDraft, MicroChartManifestConfiguration } from "sap/fe/core/converters/ManifestSettings";
28
28
  import type { InternalModelContext } from "sap/fe/core/helpers/ModelHelper";
29
29
  import ModelHelper from "sap/fe/core/helpers/ModelHelper";
30
- import { getResourceModel } from "sap/fe/core/helpers/ResourceModelHelper";
31
30
  import FELibrary from "sap/fe/core/library";
32
31
  import { type WrappedCard } from "sap/fe/core/services/CollaborationManagerServiceFactory";
33
32
  import type ChartBlock from "sap/fe/macros/Chart";
@@ -53,7 +52,6 @@ import TableScroller from "sap/fe/templates/TableScroller";
53
52
  import type Button from "sap/m/Button";
54
53
  import type InputBase from "sap/m/InputBase";
55
54
  import InstanceManager from "sap/m/InstanceManager";
56
- import MessageBox from "sap/m/MessageBox";
57
55
  import type NavContainer from "sap/m/NavContainer";
58
56
  import type Popover from "sap/m/Popover";
59
57
  import type ToolbarSpacer from "sap/m/ToolbarSpacer";
@@ -565,9 +563,15 @@ class ObjectPageController extends PageController {
565
563
  const oSubSection = aSubSections[iSubSection];
566
564
  // SubSection's binding is enabled.
567
565
  oSubSection.setBindingContext(undefined);
568
- const blocks = oSubSection.getBlocks() as SubSectionBlock[];
566
+ const blocks = oSubSection.getBlocks();
569
567
  // SubSection's contents binding is disabled.
570
- blocks.forEach((block) => block.setBindingContext(null));
568
+ blocks.forEach((block) => {
569
+ if (block.isA<SubSectionBlock>("sap.fe.templates.ObjectPage.controls.SubSectionBlock")) {
570
+ block.content.setBindingContext(null);
571
+ } else {
572
+ block.setBindingContext(null);
573
+ }
574
+ });
571
575
  oSubSection.getMoreBlocks().forEach((subBlock) => subBlock.setBindingContext(null));
572
576
  oSubSection.getActions().forEach((actions) => actions.setBindingContext(null));
573
577
  }
@@ -712,8 +716,14 @@ class ObjectPageController extends PageController {
712
716
  if (oSubSection.isA<SubSection>("sap.fe.macros.controls.section.SubSection")) {
713
717
  oSubSection.handleSubSectionCreated(this.getView());
714
718
  }
715
- const blocks = oSubSection.getBlocks() as SubSectionBlock[];
716
- blocks.forEach((block) => block.setBindingContext(undefined));
719
+ const blocks = oSubSection.getBlocks();
720
+ blocks.forEach((block) => {
721
+ if (block.isA<SubSectionBlock>("sap.fe.templates.ObjectPage.controls.SubSectionBlock")) {
722
+ block.content.setBindingContext(undefined);
723
+ } else {
724
+ block.setBindingContext(undefined);
725
+ }
726
+ });
717
727
  oSubSection.getMoreBlocks().forEach((subBlock) => subBlock.setBindingContext(undefined));
718
728
  oSubSection.getActions().forEach((actions) => actions.setBindingContext(undefined));
719
729
  }
@@ -1217,10 +1227,7 @@ class ObjectPageController extends PageController {
1217
1227
  });
1218
1228
  }
1219
1229
 
1220
- _showMessagePopover(err?: string, oRet?: unknown): unknown {
1221
- if (err) {
1222
- Log.error(err);
1223
- }
1230
+ _showMessagePopover(): void {
1224
1231
  const isEditMode = CommonUtils.getIsEditable(this.getView());
1225
1232
  const rootViewController = this.getAppComponent().getRootViewController();
1226
1233
  const currentPageView = rootViewController.isFclEnabled()
@@ -1239,7 +1246,6 @@ class ObjectPageController extends PageController {
1239
1246
  }, 0);
1240
1247
  }
1241
1248
  }
1242
- return oRet;
1243
1249
  }
1244
1250
 
1245
1251
  async _editDocument(): Promise<void | Context> {
@@ -1432,7 +1438,10 @@ class ObjectPageController extends PageController {
1432
1438
  BusyLocker.unlock(model);
1433
1439
  }
1434
1440
  if (messagePopoverErr !== undefined) {
1435
- this._showMessagePopover(messagePopoverErr);
1441
+ if (messagePopoverErr.length) {
1442
+ Log.error(messagePopoverErr);
1443
+ }
1444
+ this._showMessagePopover();
1436
1445
  }
1437
1446
  }
1438
1447
  }
@@ -2005,6 +2014,10 @@ class ObjectPageController extends PageController {
2005
2014
  this.messageButton.fireModelContextChange();
2006
2015
  },
2007
2016
 
2017
+ onTableBindingUpdated(this: ObjectPageController): void {
2018
+ this.messageButton.fireModelContextChange();
2019
+ },
2020
+
2008
2021
  async onCallAction(
2009
2022
  oView: FEView,
2010
2023
  sActionName: string,
@@ -2035,8 +2048,13 @@ class ObjectPageController extends PageController {
2035
2048
 
2036
2049
  return oController.editFlow
2037
2050
  .invokeAction(sActionName, mParameters)
2038
- .then(oController._showMessagePopover.bind(oController, undefined))
2039
- .catch(oController._showMessagePopover.bind(oController));
2051
+ .then((res) => {
2052
+ oController._showMessagePopover();
2053
+ return res;
2054
+ })
2055
+ .catch(() => {
2056
+ oController._showMessagePopover();
2057
+ });
2040
2058
  },
2041
2059
  onDataPointTitlePressed(
2042
2060
  oController: ObjectPageController,
@@ -2132,35 +2150,18 @@ class ObjectPageController extends PageController {
2132
2150
  },
2133
2151
  navigateToSubSection: function (oController: ObjectPageController, vDetailConfig: string | object): void {
2134
2152
  const oDetailConfig = typeof vDetailConfig === "string" ? JSON.parse(vDetailConfig) : vDetailConfig;
2135
- const oObjectPage = oController.getView().byId("fe::ObjectPage") as ObjectPageLayout;
2136
- let oSection;
2137
- let oSubSection;
2138
- if (oDetailConfig.sectionId) {
2139
- oSection = oController.getView().byId(oDetailConfig.sectionId) as ObjectPageSection;
2140
- oSubSection = (
2141
- oDetailConfig.subSectionId
2142
- ? oController.getView().byId(oDetailConfig.subSectionId)
2143
- : oSection && oSection.getSubSections() && oSection.getSubSections()[0]
2144
- ) as ObjectPageSubSection;
2145
- } else if (oDetailConfig.subSectionId) {
2146
- oSubSection = oController.getView().byId(oDetailConfig.subSectionId) as ObjectPageSubSection;
2147
- oSection = oSubSection && (oSubSection.getParent() as ObjectPageSection);
2148
- }
2149
- if (!oSection || !oSubSection || !oSection.getVisible() || !oSubSection.getVisible()) {
2150
- const sTitle = getResourceModel(oController).getText(
2151
- "C_ROUTING_NAVIGATION_DISABLED_TITLE",
2152
- undefined,
2153
- oController.getView().getViewData().entitySet
2154
- );
2155
- Log.error(sTitle);
2156
- MessageBox.error(sTitle);
2153
+
2154
+ // Determine the target ID based on input type
2155
+ let targetId: string | undefined;
2156
+ if (typeof oDetailConfig === "string") {
2157
+ targetId = oDetailConfig;
2157
2158
  } else {
2158
- oObjectPage.setSelectedSection(oSubSection.getId());
2159
- // trigger iapp state change
2160
- oObjectPage.fireNavigate({
2161
- section: oSection,
2162
- subSection: oSubSection
2163
- });
2159
+ // Priority: subSectionId > sectionId
2160
+ targetId = oDetailConfig.subSectionId ?? oDetailConfig.sectionId;
2161
+ }
2162
+
2163
+ if (targetId) {
2164
+ oController.getExtensionAPI().navigateToSubSection(targetId);
2164
2165
  }
2165
2166
  },
2166
2167