@sapui5/sap.ushell_abap 1.152.1 → 1.154.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 (121) hide show
  1. package/package.json +1 -1
  2. package/src/main/js/sap/ushell_abap/.library +1 -1
  3. package/src/main/js/sap/ushell_abap/adapters/abap/AppStateAdapter.js +53 -63
  4. package/src/main/js/sap/ushell_abap/adapters/abap/ClientSideTargetResolutionAdapter.js +1 -1
  5. package/src/main/js/sap/ushell_abap/adapters/abap/CommonDataModelAdapter.js +1 -1
  6. package/src/main/js/sap/ushell_abap/adapters/abap/ConfigurationDefaultsAdapter.js +1 -1
  7. package/src/main/js/sap/ushell_abap/adapters/abap/ContainerAdapter.js +1 -1
  8. package/src/main/js/sap/ushell_abap/adapters/abap/FlpLaunchPageAdapter.js +62 -4
  9. package/src/main/js/sap/ushell_abap/adapters/abap/LaunchPageAdapter.js +1 -1
  10. package/src/main/js/sap/ushell_abap/adapters/abap/NavTargetResolutionAdapter.js +1 -1
  11. package/src/main/js/sap/ushell_abap/adapters/abap/NavTargetResolutionInternalAdapter.js +1 -1
  12. package/src/main/js/sap/ushell_abap/adapters/abap/PageBuildingAdapter.js +1 -1
  13. package/src/main/js/sap/ushell_abap/adapters/abap/PagePersistenceAdapter.js +8 -8
  14. package/src/main/js/sap/ushell_abap/adapters/abap/PersonalizationAdapter.js +1 -1
  15. package/src/main/js/sap/ushell_abap/adapters/abap/PersonalizationV2Adapter.js +1 -1
  16. package/src/main/js/sap/ushell_abap/adapters/abap/SearchAdapter.js +1 -1
  17. package/src/main/js/sap/ushell_abap/adapters/abap/SupportTicketAdapter.js +1 -1
  18. package/src/main/js/sap/ushell_abap/adapters/abap/Ui5ComponentLoaderAdapter.js +1 -1
  19. package/src/main/js/sap/ushell_abap/adapters/abap/UserInfoAdapter.js +11 -11
  20. package/src/main/js/sap/ushell_abap/adapters/abap/VisualizationInstantiationAdapter.js +76 -0
  21. package/src/main/js/sap/ushell_abap/adapters/hana/ContainerAdapter.js +1 -1
  22. package/src/main/js/sap/ushell_abap/adapters/local/ClientSideTargetResolutionAdapter.js +123 -0
  23. package/src/main/js/sap/ushell_abap/adapters/local/FlpLaunchPageAdapter.js +115 -0
  24. package/src/main/js/sap/ushell_abap/adapters/local/MenuAdapter.js +92 -0
  25. package/src/main/js/sap/ushell_abap/adapters/local/PageBuildingAdapter.js +242 -0
  26. package/src/main/js/sap/ushell_abap/adapters/local/PagePersistenceAdapter.js +308 -0
  27. package/src/main/js/sap/ushell_abap/api/S4MyHome.js +58 -0
  28. package/src/main/js/sap/ushell_abap/bootstrap/DirectAppStart.js +28 -15
  29. package/src/main/js/sap/ushell_abap/bootstrap/LoadLaunchpad/CreateRenderer.js +4 -2
  30. package/src/main/js/sap/ushell_abap/bootstrap/LoadLaunchpad/RequestPages.js +2 -6
  31. package/src/main/js/sap/ushell_abap/bootstrap/PlatformConfig.js +5 -5
  32. package/src/main/js/sap/ushell_abap/bootstrap/XhrLogonEventHandler.js +6 -7
  33. package/src/main/js/sap/ushell_abap/bootstrap/abapConstants.js +30 -0
  34. package/src/main/js/sap/ushell_abap/components/SideNavigation/modules/Favorites.js +549 -0
  35. package/src/main/js/sap/ushell_abap/components/SideNavigation/modules/GenericNavigationListProvider.js +241 -0
  36. package/src/main/js/sap/ushell_abap/components/cards/Card.controller.js +117 -0
  37. package/src/main/js/sap/ushell_abap/components/cards/Card.view.xml +11 -0
  38. package/src/main/js/sap/ushell_abap/components/cards/Configuration.controller.js +280 -0
  39. package/src/main/js/sap/ushell_abap/components/cards/Configuration.view.xml +27 -0
  40. package/src/main/js/sap/ushell_abap/components/cards/ManifestPropertyHelper.js +298 -0
  41. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/Component.js +90 -0
  42. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/TransactionCode.controller.js +110 -0
  43. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/TransactionCode.view.xml +16 -0
  44. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n.properties +17 -0
  45. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_ar.properties +10 -0
  46. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_bg.properties +10 -0
  47. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_ca.properties +10 -0
  48. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_cnr.properties +10 -0
  49. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_cs.properties +10 -0
  50. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_cy.properties +10 -0
  51. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_da.properties +10 -0
  52. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_de.properties +10 -0
  53. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_el.properties +10 -0
  54. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_en.properties +10 -0
  55. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_en_GB.properties +10 -0
  56. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_en_US_sappsd.properties +10 -0
  57. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_en_US_saprigi.properties +10 -0
  58. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_en_US_saptrc.properties +10 -0
  59. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_es.properties +10 -0
  60. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_es_MX.properties +10 -0
  61. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_et.properties +10 -0
  62. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_fi.properties +10 -0
  63. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_fr.properties +10 -0
  64. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_fr_CA.properties +10 -0
  65. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_hi.properties +10 -0
  66. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_hr.properties +10 -0
  67. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_hu.properties +10 -0
  68. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_id.properties +10 -0
  69. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_it.properties +10 -0
  70. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_iw.properties +10 -0
  71. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_ja.properties +10 -0
  72. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_kk.properties +10 -0
  73. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_ko.properties +10 -0
  74. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_lt.properties +10 -0
  75. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_lv.properties +10 -0
  76. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_mk.properties +10 -0
  77. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_ms.properties +10 -0
  78. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_nl.properties +10 -0
  79. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_no.properties +10 -0
  80. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_pl.properties +10 -0
  81. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_pt.properties +10 -0
  82. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_pt_PT.properties +10 -0
  83. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_ro.properties +10 -0
  84. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_ru.properties +10 -0
  85. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_sh.properties +10 -0
  86. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_sk.properties +10 -0
  87. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_sl.properties +10 -0
  88. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_sr.properties +10 -0
  89. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_sv.properties +10 -0
  90. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_th.properties +10 -0
  91. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_tr.properties +10 -0
  92. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_uk.properties +10 -0
  93. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_vi.properties +10 -0
  94. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_zh_CN.properties +10 -0
  95. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/i18n/i18n_zh_TW.properties +10 -0
  96. package/src/main/js/sap/ushell_abap/components/settings/TransactionCode/manifest.json +96 -0
  97. package/src/main/js/sap/ushell_abap/components/tiles/action/ActionTile.controller.js +189 -0
  98. package/src/main/js/sap/ushell_abap/components/tiles/action/ActionTile.view.xml +13 -0
  99. package/src/main/js/sap/ushell_abap/components/tiles/action/Configuration.controller.js +193 -0
  100. package/src/main/js/sap/ushell_abap/components/tiles/action/Configuration.view.xml +333 -0
  101. package/src/main/js/sap/ushell_abap/components/tiles/applauncher/Component.js +41 -0
  102. package/src/main/js/sap/ushell_abap/components/tiles/applauncher/Configuration.controller.js +114 -0
  103. package/src/main/js/sap/ushell_abap/components/tiles/applauncher/Configuration.view.xml +208 -0
  104. package/src/main/js/sap/ushell_abap/components/tiles/applauncher/StaticTile.controller.js +497 -0
  105. package/src/main/js/sap/ushell_abap/components/tiles/applauncher/StaticTile.view.js +61 -0
  106. package/src/main/js/sap/ushell_abap/components/tiles/applauncherdynamic/Component.js +45 -0
  107. package/src/main/js/sap/ushell_abap/components/tiles/applauncherdynamic/Configuration.controller.js +113 -0
  108. package/src/main/js/sap/ushell_abap/components/tiles/applauncherdynamic/Configuration.view.xml +231 -0
  109. package/src/main/js/sap/ushell_abap/components/tiles/applauncherdynamic/DynamicTile.controller.js +729 -0
  110. package/src/main/js/sap/ushell_abap/components/tiles/applauncherdynamic/DynamicTile.view.js +106 -0
  111. package/src/main/js/sap/ushell_abap/library.js +12 -1
  112. package/src/main/js/sap/ushell_abap/messagebundle.properties +6 -2
  113. package/src/main/js/sap/ushell_abap/pbServices/ui2/Chip.js +7 -3
  114. package/src/main/js/sap/ushell_abap/pbServices/ui2/ODataWrapper.js +3 -5
  115. package/src/main/js/sap/ushell_abap/pbServices/ui2/contracts/configuration.js +54 -4
  116. package/src/main/js/sap/ushell_abap/services/NavigationDataProvider.js +4 -4
  117. package/src/main/js/sap/ushell_abap/ui/VisualizationInstantiation/ChipInstanceWrapper.js +248 -0
  118. package/src/main/js/sap/ushell_abap/ui/VisualizationInstantiation/VizInstanceAbap.js +134 -0
  119. package/src/main/js/sap/ushell_abap/ui/VisualizationInstantiation/VizInstanceAbapLink.js +145 -0
  120. package/src/main/js/sap/ushell_abap/utils/UserPersonalization.js +127 -0
  121. package/ui5.yaml +21 -3
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sapui5/sap.ushell_abap",
3
- "version": "1.152.1",
3
+ "version": "1.154.0",
4
4
  "description": "SAPUI5 Library sap.ushell_abap",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "SEE LICENSE IN LICENSE.txt",
@@ -2,7 +2,7 @@
2
2
  <library xmlns="http://www.sap.com/sap.ui.library.xsd">
3
3
  <name>sap.ushell_abap</name>
4
4
  <vendor>SAP SE</vendor>
5
- <version>1.152.1</version>
5
+ <version>1.154.0</version>
6
6
  <copyright>Copyright (c) 2009-2026 SAP SE, All Rights Reserved</copyright>
7
7
  <documentation>SAP library: sap.ushell_abap</documentation>
8
8
 
@@ -2,40 +2,36 @@
2
2
 
3
3
  /**
4
4
  * @fileOverview The Unified Shell's AppStateAdapter for the ABAP platform.
5
- * @version 1.152.1
5
+ * @version 1.154.0
6
6
  */
7
7
  sap.ui.define([
8
- "sap/base/util/ObjectPath",
9
- "sap/ui/thirdparty/jquery",
10
8
  "sap/base/Log",
9
+ "sap/base/util/ObjectPath",
10
+ "sap/ushell/Container",
11
11
  "sap/ushell/utils/LogError",
12
- "sap/ushell_abap/pbServices/ui2/ODataWrapper",
13
12
  "sap/ushell_abap/base/Ui2Error",
14
13
  "sap/ushell_abap/pbServices/ui2/ODataService",
15
- "sap/ushell/Container"
14
+ "sap/ushell_abap/pbServices/ui2/ODataWrapper"
16
15
  ], (
17
- ObjectPath,
18
- jQuery,
19
16
  Log,
17
+ ObjectPath,
18
+ Container,
20
19
  LogError,
21
- ODataWrapper,
22
20
  SrvcError,
23
21
  ODataService,
24
- Container
22
+ ODataWrapper
25
23
  ) => {
26
24
  "use strict";
27
25
 
28
26
  /**
29
27
  * Constructs a new instance of the AppStateAdapter for the ABAP platform.
30
28
  *
31
- *
32
- * @param {object} oSystem The system served by the adapter
33
- * @param {string} sParameters Parameter string, not in use
34
- * @param {object} oConfig A potential adapter configuration
29
+ * @param {object} oSystem the system served by the adapter
30
+ * @param {string} sParameters parameter string, not in use
31
+ * @param {object} oConfig a potential adapter configuration
35
32
  *
36
33
  * @class
37
34
  * @since 1.28.0
38
- *
39
35
  * @private
40
36
  */
41
37
  function AppStateAdapter (oSystem, sParameters, oConfig) {
@@ -54,72 +50,66 @@ sap.ui.define([
54
50
  }
55
51
 
56
52
  /**
57
- * Save the given data sValue for the given key at the persistence layer
53
+ * Saves the given data for the given key at the persistence layer.
58
54
  *
59
- * @param {string} sKey The generated key value of the application state to save
60
- * @param {string} sSessionKey A generated session key
61
- * overwriting/modifying an existing record is only permitted if the session key matches the key of the initial creation.
62
- * It shall be part of the save request, but shall not be returned on reading (it is not detectable from outside).
63
- * @param {string} sValue The value to persist under the given key
64
- * @param {string} sAppName The application name (the ui5 component name)
65
- * should be stored with the data to allow to identify the data association
66
- * @param {string} sComponent A 24 character string representing the application component,
67
- * (A sap support component) may be undefined if not available on the client
68
- * @returns {jQuery.Promise} Resolves once the app state was saved.
55
+ * @param {string} sKey the generated key value of the application state to save
56
+ * @param {string} sSessionKey a generated session key
57
+ * @param {string} sValue the value to persist
58
+ * @param {string} sAppName the application name (ui5 component name)
59
+ * @param {string} sComponent a 24-character support component string
60
+ * @returns {Promise} resolves once saved
69
61
  * @private
70
62
  */
71
- AppStateAdapter.prototype.saveAppState = function (sKey, sSessionKey,
72
- sValue, sAppName, sComponent) {
73
- const oDeferred = new jQuery.Deferred();
74
- const sRelativeUrl = "GlobalContainers";
75
- const oPayload = {
76
- id: sKey,
77
- sessionKey: sSessionKey,
78
- component: sComponent,
79
- appName: sAppName,
80
- value: sValue
81
- };
63
+ AppStateAdapter.prototype.saveAppState = function (sKey, sSessionKey, sValue, sAppName, sComponent) {
64
+ return new Promise((resolve, reject) => {
65
+ const sRelativeUrl = "GlobalContainers";
66
+ const oPayload = {
67
+ id: sKey,
68
+ sessionKey: sSessionKey,
69
+ component: sComponent,
70
+ appName: sAppName,
71
+ value: sValue
72
+ };
82
73
 
83
- this._oWrapper.create(sRelativeUrl, oPayload, (/* response */) => {
84
- oDeferred.resolve();
85
- }, (sErrorMessage) => {
86
- Log.error(`AppState save failed: ${sErrorMessage}`);
87
- oDeferred.reject(new Error(sErrorMessage));
74
+ this._oWrapper.create(sRelativeUrl, oPayload, () => {
75
+ resolve();
76
+ }, (sErrorMessage) => {
77
+ Log.error(`AppState save failed: ${sErrorMessage}`);
78
+ reject(new Error(sErrorMessage));
79
+ });
88
80
  });
89
-
90
- return oDeferred.promise();
91
81
  };
92
82
 
93
83
  /**
94
- * Read the application state sValue for the given key sKey from the persistence layer
84
+ * Reads the application state for the given key from the persistence layer.
85
+ * Resolves with [sKey, sValue].
95
86
  *
96
- * @param {string} sKey Key of the application state (less than 40 characters)
97
- * @returns {jQuery.Promise} Resolves the key and value.
87
+ * @param {string} sKey key of the application state (less than 40 characters)
88
+ * @returns {Promise<Array>} resolves with [sKey, sValue]
98
89
  * @private
99
90
  */
100
91
  AppStateAdapter.prototype.loadAppState = function (sKey) {
101
- const oDeferredRead = new jQuery.Deferred();
102
- const sRelativeUrl = `GlobalContainers(id='${encodeURIComponent(sKey)}')`;
103
-
104
92
  if (!sKey) {
105
93
  throw new LogError("The sKey is mandatory to read the data from the persistence layer");
106
94
  }
107
95
 
108
- // wrap the read operation into a batch request
109
- // reason: Hiding of the application state key as part of the URL
110
- this._oWrapper.openBatchQueue();
111
- this._oWrapper.read(sRelativeUrl, (response) => {
112
- oDeferredRead.resolve(response.id, response.value);
113
- }, (sErrorMessage) => {
114
- Log.error(`AppState load failed: ${sErrorMessage}`);
115
- oDeferredRead.reject(new Error(sErrorMessage));
116
- }, false);
117
- this._oWrapper.submitBatchQueue(() => { }, (sErrorMessage) => {
118
- Log.error(`AppState load failed: ${sErrorMessage}`);
119
- oDeferredRead.reject(new Error(sErrorMessage));
120
- });
96
+ return new Promise((resolve, reject) => {
97
+ const sRelativeUrl = `GlobalContainers(id='${encodeURIComponent(sKey)}')`;
121
98
 
122
- return oDeferredRead.promise();
99
+ // wrap the read operation into a batch request
100
+ // reason: Hiding of the application state key as part of the URL
101
+ this._oWrapper.openBatchQueue();
102
+ this._oWrapper.read(sRelativeUrl, (response) => {
103
+ resolve([response.id, response.value]);
104
+ }, (sErrorMessage) => {
105
+ Log.error(`AppState load failed: ${sErrorMessage}`);
106
+ reject(new Error(sErrorMessage));
107
+ }, false);
108
+ this._oWrapper.submitBatchQueue(() => { }, (sErrorMessage) => {
109
+ Log.error(`AppState load failed: ${sErrorMessage}`);
110
+ reject(new Error(sErrorMessage));
111
+ });
112
+ });
123
113
  };
124
114
 
125
115
  return AppStateAdapter;
@@ -9,7 +9,7 @@
9
9
  * <li>provide the resolveHashFragmentFallback function, a fallback method called by ClientSideTargetResolution service.</li>
10
10
  * </ul>
11
11
  *
12
- * @version 1.152.1
12
+ * @version 1.154.0
13
13
  */
14
14
  sap.ui.define([
15
15
  "sap/base/util/ObjectPath",
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * @fileOverview The Unified Shell's CommonDataModelAdapter for the ABAP platform, it is used to avoid 404 when no adapter is found
4
4
  *
5
- * @version 1.152.1
5
+ * @version 1.154.0
6
6
  */
7
7
  sap.ui.define([
8
8
  ], () => {
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @fileOverview The ConfigurationDefaults adapter for the ABAP platform.
5
- * @version 1.152.1
5
+ * @version 1.154.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/ushell_abap/bootstrap/abapConstants",
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * @fileOverview The Unified Shell's container adapter for the ABAP platform.
4
4
  *
5
- * @version 1.152.1
5
+ * @version 1.154.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/ushell/base/SAPBusinessClientEnablement",
@@ -3,11 +3,11 @@
3
3
  /**
4
4
  * @fileoverview The Unified Shell's page building adapter for the ABAP platform. Private copy. Classical home page functions are deprecated.
5
5
  * @since 1.121
6
- * @version 1.152.1
6
+ * @version 1.154.0
7
7
  */
8
8
  sap.ui.define([
9
9
  "sap/ui/thirdparty/URI",
10
- "sap/ushell/components/cards/ManifestPropertyHelper",
10
+ "sap/ushell_abap/components/cards/ManifestPropertyHelper",
11
11
  "sap/base/util/ObjectPath",
12
12
  "sap/base/util/isEmptyObject",
13
13
  "sap/m/GenericTile",
@@ -24,7 +24,8 @@ sap.ui.define([
24
24
  "sap/ushell/ui/tile/StaticTile",
25
25
  "sap/ushell_abap/pbServices/ui2/contracts/preview",
26
26
  "sap/ushell/Container",
27
- "sap/ushell/utils/LaunchpadError"
27
+ "sap/ushell/utils/LaunchpadError",
28
+ "sap/ushell_abap/utils/UserPersonalization"
28
29
  ], (
29
30
  URI,
30
31
  ManifestPropertyHelper,
@@ -44,7 +45,8 @@ sap.ui.define([
44
45
  StaticTile,
45
46
  Preview,
46
47
  Container,
47
- LaunchpadError
48
+ LaunchpadError,
49
+ UserPersonalization
48
50
  ) => {
49
51
  "use strict";
50
52
 
@@ -2846,6 +2848,15 @@ sap.ui.define([
2846
2848
  */
2847
2849
  this.getCatalogTilePreviewInfo = chipsUtils.getCatalogTilePreviewInfo;
2848
2850
 
2851
+ /**
2852
+ * Returns the transaction code (app shortcut) for the catalog tile.
2853
+ *
2854
+ * @param {object} oCatalogTile The catalog tile
2855
+ * @returns {Promise<string>} The transaction code or ""
2856
+ * @since 1.153.0
2857
+ */
2858
+ this.getCatalogTileAppShortcut = chipsUtils.getCatalogTileTransactionCode;
2859
+
2849
2860
  /**
2850
2861
  * Returns the indicator data source url
2851
2862
  *
@@ -2921,6 +2932,16 @@ sap.ui.define([
2921
2932
  return [];
2922
2933
  }
2923
2934
 
2935
+ function getTransactionCodeDefinedInCatalogTileData (oCatalogTile) {
2936
+ const sTransactionCode = LaunchPageAdapter.prototype._getConfigurationProperty(oCatalogTile, "tileConfiguration", "display_transaction_code");
2937
+
2938
+ if (sTransactionCode) {
2939
+ return [sTransactionCode];
2940
+ }
2941
+
2942
+ return [];
2943
+ }
2944
+
2924
2945
  // Apply the 'search' contract when available
2925
2946
  function getKeywordsFromSearchContract (oCatalogTile) {
2926
2947
  if (oCatalogTile.isStub()) {
@@ -2948,6 +2969,10 @@ sap.ui.define([
2948
2969
  oKeywordsSet,
2949
2970
  getNumberUnitDefinedInCatalogTileData(oCatalogTile)
2950
2971
  );
2972
+ addKeywords(
2973
+ oKeywordsSet,
2974
+ getTransactionCodeDefinedInCatalogTileData(oCatalogTile)
2975
+ );
2951
2976
 
2952
2977
  // Relevant for tiles which are instantiated in the app finder.
2953
2978
  addKeywords(
@@ -2968,6 +2993,39 @@ sap.ui.define([
2968
2993
  return Object.keys(oKeywordsSet); // property names are used in order to avoid duplicates
2969
2994
  };
2970
2995
 
2996
+ /**
2997
+ * Attaches an event handler to the display transaction code change event.
2998
+ *
2999
+ * @param {object} oCatalogTile The catalog tile
3000
+ * @param {object} [oData] An object that will be passed to the handler along with the event object when the event is fired
3001
+ * @param {function} fnFunction The handler function to call when the event occurs.
3002
+ * This function will be called in the context of the <code>oListener</code> instance (if present) or on the event provider instance.
3003
+ * The event object ({@link sap.ui.base.Event}) is provided as first argument of the handler. Handlers must not change the content of
3004
+ * the event. The second argument is the specified <code>oData</code> instance (if present).
3005
+ * @param {object} [oListener] The object that wants to be notified when the event occurs (<code>this</code> context within the
3006
+ * handler function). If it is not specified, the handler function is called in the context of the event provider.
3007
+ *
3008
+ * @since 1.154.0
3009
+ * @private
3010
+ */
3011
+ this.attachCatalogTileUpdated = function (oCatalogTile, ...args) {
3012
+ UserPersonalization.attachDisplayTransactionCodeChanged(...args);
3013
+ };
3014
+
3015
+ /**
3016
+ * Detaches an event handler from the display transaction code change event.
3017
+ *
3018
+ * @param {object} oCatalogTile The catalog tile
3019
+ * @param {function} fnFunction The handler function to detach from the event
3020
+ * @param {object} [oListener] The object that wanted to be notified when the event occurred
3021
+ *
3022
+ * @since 1.154.0
3023
+ * @private
3024
+ */
3025
+ this.detachCatalogTileUpdated = function (oCatalogTile, ...args) {
3026
+ UserPersonalization.detachDisplayTransactionCodeChanged(...args);
3027
+ };
3028
+
2971
3029
  /**
2972
3030
  * Adds a bookmark to the user's home page.
2973
3031
  *
@@ -4,7 +4,7 @@
4
4
  * @fileOverview The Unified Shell's page building adapter for the ABAP platform.
5
5
  *
6
6
  * @deprecated since 1.100
7
- * @version 1.152.1
7
+ * @version 1.154.0
8
8
  */
9
9
  sap.ui.define([
10
10
  "sap/ushell_abap/adapters/abap/FlpLaunchPageAdapter"
@@ -8,7 +8,7 @@
8
8
  * service now calls the ClientSideTargetResolution service in the ABAP
9
9
  * platform.
10
10
  *
11
- * @version 1.152.1
11
+ * @version 1.154.0
12
12
  */
13
13
  sap.ui.define([], () => {
14
14
  "use strict";
@@ -8,7 +8,7 @@
8
8
  * service now calls the ClientSideTargetResolution service in the ABAP
9
9
  * platform.
10
10
  *
11
- * @version 1.152.1
11
+ * @version 1.154.0
12
12
  * @since 1.121
13
13
  */
14
14
  sap.ui.define([], () => {
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @fileOverview The Unified Shell's page building adapter for the ABAP platform.
5
- * @version 1.152.1
5
+ * @version 1.154.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/base/util/ObjectPath",
@@ -2,13 +2,13 @@
2
2
 
3
3
  /**
4
4
  * @fileOverview PagePersistenceAdapter for the ABAP platform.
5
- * @version 1.152.1
5
+ * @version 1.154.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/base/i18n/Localization",
9
9
  "sap/base/util/ObjectPath",
10
+ "sap/ui/core/Lib",
10
11
  "sap/ushell/utils/HttpClient",
11
- "sap/ushell/resources",
12
12
  "sap/ushell/utils/chipsUtils",
13
13
  "sap/ushell/Container",
14
14
  "sap/ushell/Config",
@@ -16,8 +16,8 @@ sap.ui.define([
16
16
  ], (
17
17
  Localization,
18
18
  ObjectPath,
19
+ Lib,
19
20
  HttpClient,
20
- ushellResources,
21
21
  chipsUtils,
22
22
  Container,
23
23
  Config,
@@ -59,7 +59,7 @@ sap.ui.define([
59
59
  */
60
60
  PagePersistenceAdapter.prototype.getPage = function (pageId) {
61
61
  return Promise.all([
62
- this._readPage(pageId),
62
+ this.readPage(pageId),
63
63
  Container.getServiceAsync("URLParsing")
64
64
  ])
65
65
  .then((aResults) => {
@@ -82,7 +82,7 @@ sap.ui.define([
82
82
  */
83
83
  PagePersistenceAdapter.prototype.getPages = function (aPageId) {
84
84
  return Promise.all([
85
- this._readPages(aPageId),
85
+ this.readPages(aPageId),
86
86
  Container.getServiceAsync("URLParsing")
87
87
  ])
88
88
  .then((aResults) => {
@@ -105,7 +105,7 @@ sap.ui.define([
105
105
  * @since 1.67.0
106
106
  * @private
107
107
  */
108
- PagePersistenceAdapter.prototype._readPage = function (pageId) {
108
+ PagePersistenceAdapter.prototype.readPage = function (pageId) {
109
109
  return new Promise((resolve, reject) => {
110
110
  const oHeaders = {
111
111
  "Cache-Control": "no-cache, no-store, must-revalidate",
@@ -147,7 +147,7 @@ sap.ui.define([
147
147
  * @since 1.75.0
148
148
  * @private
149
149
  */
150
- PagePersistenceAdapter.prototype._readPages = function (aPageId) {
150
+ PagePersistenceAdapter.prototype.readPages = function (aPageId) {
151
151
  return new Promise((resolve, reject) => {
152
152
  const oHeaders = {
153
153
  "Cache-Control": "no-cache, no-store, must-revalidate",
@@ -401,7 +401,7 @@ sap.ui.define([
401
401
  oError.message,
402
402
  {
403
403
  component: this.S_COMPONENT_NAME,
404
- description: ushellResources.i18n.getText("PagePersistenceAdapter.CannotLoadPage"),
404
+ description: Lib.getResourceBundleFor("sap.ushell").getText("PagePersistenceAdapter.CannotLoadPage"),
405
405
  detail: oError
406
406
  },
407
407
  oError
@@ -7,7 +7,7 @@
7
7
  * Container header properties transported via pseudo-items are mapped to the
8
8
  * respective header properties in setItem/getItem/delItem
9
9
  *
10
- * @version 1.152.1
10
+ * @version 1.154.0
11
11
  */
12
12
  sap.ui.define([
13
13
  "sap/ushell_abap/adapters/abap/AdapterContainer",
@@ -7,7 +7,7 @@
7
7
  * Container header properties transported via pseudo-items are mapped to the
8
8
  * respective header properties in setItem/getItem/delItem
9
9
  *
10
- * @version 1.152.1
10
+ * @version 1.154.0
11
11
  */
12
12
  sap.ui.define([
13
13
  "./PersonalizationAdapter"
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @fileOverview The Search adapter for the ABAP platform.
5
- * @version 1.152.1
5
+ * @version 1.154.0
6
6
  */
7
7
  sap.ui.define([], () => {
8
8
  "use strict";
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @fileOverview The SupportTicket adapter for the ABAP platform.
5
- * @version 1.152.1
5
+ * @version 1.154.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/base/util/isEmptyObject",
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * @fileOverview The Unified Shell's Ui5ComponentLoaderAdapter for the ABAP platform
4
4
  *
5
- * @version 1.152.1
5
+ * @version 1.154.0
6
6
  */
7
7
  sap.ui.define([
8
8
  ], () => {
@@ -3,19 +3,19 @@
3
3
  sap.ui.define([
4
4
  "sap/base/i18n/date/CalendarWeekNumbering",
5
5
  "sap/base/Log",
6
+ "sap/ui/core/Lib",
6
7
  "sap/ui/thirdparty/datajs",
7
8
  "sap/ui/VersionInfo",
8
9
  "sap/ushell/Config",
9
- "sap/ushell/resources",
10
10
  "sap/ushell/utils/LaunchpadError",
11
11
  "sap/ushell_abap/pbServices/ui2/ODataWrapper"
12
12
  ], (
13
13
  CalendarWeekNumbering,
14
14
  Log,
15
+ Lib,
15
16
  datajs,
16
17
  VersionInfo,
17
18
  Config,
18
- resources,
19
19
  LaunchpadError,
20
20
  ODataWrapper
21
21
  ) => {
@@ -125,20 +125,20 @@ sap.ui.define([
125
125
  this.getCalendarWeekNumberingList = function () {
126
126
  return [{
127
127
  value: CalendarWeekNumbering.Default,
128
- title: resources.i18n.getText("DefaultWeekNumberingTitle"),
129
- description: resources.i18n.getText("DefaultWeekNumberingText")
128
+ title: Lib.getResourceBundleFor("sap.ushell").getText("DefaultWeekNumberingTitle"),
129
+ description: Lib.getResourceBundleFor("sap.ushell").getText("DefaultWeekNumberingText")
130
130
  }, {
131
131
  value: CalendarWeekNumbering.ISO_8601,
132
- title: resources.i18n.getText("ISO_8601WeekNumberingTitle"),
133
- description: resources.i18n.getText("ISO_8601WeekNumberingText")
132
+ title: Lib.getResourceBundleFor("sap.ushell").getText("ISO_8601WeekNumberingTitle"),
133
+ description: Lib.getResourceBundleFor("sap.ushell").getText("ISO_8601WeekNumberingText")
134
134
  }, {
135
135
  value: CalendarWeekNumbering.MiddleEastern,
136
- title: resources.i18n.getText("MiddleEasternWeekNumberingTitle"),
137
- description: resources.i18n.getText("MiddleEasternWeekNumberingText")
136
+ title: Lib.getResourceBundleFor("sap.ushell").getText("MiddleEasternWeekNumberingTitle"),
137
+ description: Lib.getResourceBundleFor("sap.ushell").getText("MiddleEasternWeekNumberingText")
138
138
  }, {
139
139
  value: CalendarWeekNumbering.WesternTraditional,
140
- title: resources.i18n.getText("WesternTraditionalWeekNumberingTitle"),
141
- description: resources.i18n.getText("WesternTraditionalWeekNumberingText")
140
+ title: Lib.getResourceBundleFor("sap.ushell").getText("WesternTraditionalWeekNumberingTitle"),
141
+ description: Lib.getResourceBundleFor("sap.ushell").getText("WesternTraditionalWeekNumberingText")
142
142
  }];
143
143
  };
144
144
 
@@ -156,7 +156,7 @@ sap.ui.define([
156
156
  // success
157
157
  (oData) => {
158
158
  let aResult = [{
159
- text: resources.i18n.getText("userSettings.browserLanguage"),
159
+ text: Lib.getResourceBundleFor("sap.ushell").getText("userSettings.browserLanguage"),
160
160
  key: DEFAULT_LANGUAGE_KEY
161
161
  }];
162
162
  const aLanguageListFromServer = oData.results.map((oLanguage) => {
@@ -0,0 +1,76 @@
1
+ // Copyright (c) 2009-2026 SAP SE, All Rights Reserved
2
+
3
+ /**
4
+ * @fileOverview VisualizationInstantiation Adapter for the ABAP platform.
5
+ */
6
+
7
+ sap.ui.define([
8
+ "sap/ushell/library",
9
+ "sap/ushell_abap/ui/VisualizationInstantiation/VizInstanceAbap",
10
+ "sap/ushell_abap/ui/VisualizationInstantiation/VizInstanceAbapLink"
11
+ ], (
12
+ ushellLibrary,
13
+ VizInstanceAbap,
14
+ VizInstanceAbapLink
15
+ ) => {
16
+ "use strict";
17
+
18
+ // shortcut for sap.ushell.DisplayFormat
19
+ const DisplayFormat = ushellLibrary.DisplayFormat;
20
+
21
+ /**
22
+ * Constructs a new instance of the VisualizationInstantiation Adapter for the ABAP platform
23
+ *
24
+ * @class
25
+ * @since 1.154.0
26
+ * @private
27
+ */
28
+ function VisualizationInstantiationAdapter () { }
29
+
30
+ VisualizationInstantiationAdapter.prototype.instantiateVisualization = function (oVizInstanceData, sPlatform, oPropertiesWithSpecialSyntax) {
31
+ if (sPlatform !== "ABAP") {
32
+ return;
33
+ }
34
+
35
+ let oVizInstance;
36
+ if (oVizInstanceData.displayFormat === DisplayFormat.Compact) {
37
+ this._cleanInstantiationDataForLink(oVizInstanceData);
38
+ oVizInstance = new VizInstanceAbapLink(oVizInstanceData);
39
+ } else {
40
+ oVizInstance = new VizInstanceAbap(oVizInstanceData);
41
+ oVizInstance.setInfo(oPropertiesWithSpecialSyntax.info); // same as below
42
+ }
43
+ // we need to set these properties separately because it is likely that they contain stringified objects
44
+ // which might be interpreted as complex binding
45
+ // e.g. appSpecificRoute of search
46
+ // BCP: 2070390842
47
+ // BCP: 2180362150
48
+ // BCP: 002075129400006346412020
49
+ oVizInstance.setTargetURL(oPropertiesWithSpecialSyntax.targetURL);
50
+
51
+ return oVizInstance;
52
+ };
53
+
54
+ /**
55
+ * Removes unnecessary properties for VizInstanceLink
56
+ *
57
+ * @param {object} oVizInstanceData The vizInstance data which should be modified
58
+ *
59
+ * @private
60
+ * @since 1.154.0
61
+ */
62
+ VisualizationInstantiationAdapter.prototype._cleanInstantiationDataForLink = function (oVizInstanceData) {
63
+ delete oVizInstanceData.info;
64
+ delete oVizInstanceData.icon;
65
+ delete oVizInstanceData.keywords;
66
+ delete oVizInstanceData.dataSource;
67
+ delete oVizInstanceData.contentProviderId;
68
+ delete oVizInstanceData.contentProviderLabel;
69
+ delete oVizInstanceData.vizConfig;
70
+ delete oVizInstanceData.numberUnit;
71
+ delete oVizInstanceData.indicatorDataSource;
72
+ delete oVizInstanceData.preview;
73
+ };
74
+
75
+ return VisualizationInstantiationAdapter;
76
+ });
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * @fileOverview The Unified Shell's container adapter for the HANA platform.
5
5
  *
6
- * @version 1.152.1
6
+ * @version 1.154.0
7
7
  */
8
8
  sap.ui.define([
9
9
  "sap/ui/thirdparty/jquery",