@sapui5/ts-types 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 (61) hide show
  1. package/package.json +1 -1
  2. package/types/index.d.ts +1 -0
  3. package/types/sap.apf.d.ts +1 -1
  4. package/types/sap.ca.ui.d.ts +1 -1
  5. package/types/sap.chart.d.ts +2 -2
  6. package/types/sap.collaboration.d.ts +1 -1
  7. package/types/sap.esh.search.ui.d.ts +674 -2
  8. package/types/sap.f.d.ts +236 -25
  9. package/types/sap.fe.common.d.ts +1 -1
  10. package/types/sap.fe.core.d.ts +8 -63
  11. package/types/sap.fe.macros.d.ts +17 -9
  12. package/types/sap.fe.navigation.d.ts +5 -71
  13. package/types/sap.fe.templates.d.ts +97 -190
  14. package/types/sap.fe.test.d.ts +43 -24
  15. package/types/sap.feedback.ui.d.ts +1 -1
  16. package/types/sap.gantt.d.ts +40 -15
  17. package/types/sap.landvisz.d.ts +1 -1
  18. package/types/sap.m.d.ts +209 -38
  19. package/types/sap.makit.d.ts +1 -1
  20. package/types/sap.me.d.ts +1 -1
  21. package/types/sap.ndc.d.ts +1 -1
  22. package/types/sap.ovp.d.ts +1 -1
  23. package/types/sap.rules.ui.d.ts +40 -5
  24. package/types/sap.sac.df.d.ts +981 -0
  25. package/types/sap.sac.grid.d.ts +25 -1
  26. package/types/sap.suite.ui.commons.d.ts +18 -1
  27. package/types/sap.suite.ui.generic.template.d.ts +115 -8
  28. package/types/sap.suite.ui.microchart.d.ts +1 -1
  29. package/types/sap.tnt.d.ts +1 -1
  30. package/types/sap.ui.codeeditor.d.ts +1 -1
  31. package/types/sap.ui.commons.d.ts +1 -1
  32. package/types/sap.ui.comp.d.ts +154 -15
  33. package/types/sap.ui.core.d.ts +73 -27
  34. package/types/sap.ui.dt.d.ts +1 -1
  35. package/types/sap.ui.export.d.ts +3 -3
  36. package/types/sap.ui.fl.d.ts +1 -1
  37. package/types/sap.ui.generic.app.d.ts +10 -10
  38. package/types/sap.ui.generic.template.d.ts +1 -1
  39. package/types/sap.ui.integration.d.ts +1 -1
  40. package/types/sap.ui.layout.d.ts +1 -1
  41. package/types/sap.ui.mdc.d.ts +9 -1
  42. package/types/sap.ui.richtexteditor.d.ts +1 -1
  43. package/types/sap.ui.rta.d.ts +1 -1
  44. package/types/sap.ui.suite.d.ts +1 -1
  45. package/types/sap.ui.support.d.ts +10 -6
  46. package/types/sap.ui.table.d.ts +11 -34
  47. package/types/sap.ui.testrecorder.d.ts +1 -1
  48. package/types/sap.ui.unified.d.ts +1 -1
  49. package/types/sap.ui.ux3.d.ts +1 -1
  50. package/types/sap.ui.vbm.d.ts +1 -1
  51. package/types/sap.ui.vk.d.ts +683 -26
  52. package/types/sap.ui.vtm.d.ts +1 -1
  53. package/types/sap.uiext.inbox.d.ts +1 -1
  54. package/types/sap.ushell.d.ts +549 -113
  55. package/types/sap.ushell_abap.d.ts +1 -1
  56. package/types/sap.uxap.d.ts +2 -2
  57. package/types/sap.viz.d.ts +1 -1
  58. package/types/sap.webanalytics.core.d.ts +1 -1
  59. package/types/sap.zen.commons.d.ts +1 -1585
  60. package/types/sap.zen.crosstab.d.ts +1 -1
  61. package/types/sap.zen.dsh.d.ts +1303 -4047
@@ -1,4 +1,4 @@
1
- // For Library Version: 1.100.0
1
+ // For Library Version: 1.101.0
2
2
 
3
3
  declare namespace sap {
4
4
  namespace ushell {
@@ -44,28 +44,6 @@ declare namespace sap {
44
44
  };
45
45
  }
46
46
 
47
- namespace Container {
48
- /**
49
- * @SINCE 1.90.0
50
- *
51
- * An enumeration for the application work protect mode state.
52
- */
53
- type DirtyState = {
54
- /**
55
- * The embedded application is clean, there is no unsaved data.
56
- */
57
- CLEAN: "CLEAN";
58
- /**
59
- * The embedded application is dirty, the user has entered data that is not yet saved.
60
- */
61
- DIRTY: "DIRTY";
62
- /**
63
- * The embedded application container's dirty state cannot be determined because of technical reasons.
64
- */
65
- MAYBE_DIRTY: "MAYBE_DIRTY";
66
- };
67
- }
68
-
69
47
  namespace Personalization {
70
48
  /**
71
49
  * @SINCE 1.22.0
@@ -785,64 +763,69 @@ declare namespace sap {
785
763
  }
786
764
  /**
787
765
  * @SINCE 1.15.0
766
+ *
767
+ * The Unified Shell's CrossApplicationNavigation service allows to navigate to "external" targets outside
768
+ * of the currently running app (but still in scope of the current Fiori launchpad) or create links to such
769
+ * external targets.
770
+ *
771
+ * To use the CrossApplicationNavigation service you can retrive an instance via ushell's Container:
772
+ * ```javascript
773
+ *
774
+ * sap.ushell.Container.getServiceAsync("CrossApplicationNavigation").then(function (CrossApplicationNavigationService) {
775
+ * // Do whatever you want...!
776
+ * });
777
+ * ```
778
+ *
779
+ *
780
+ * The CrossApplicationNavigation service currently provides platform independent functionality.
781
+ *
782
+ * The service is meant to be used by applications, plugins and shell components.
783
+ *
784
+ * Usage:
785
+ * ```javascript
786
+ *
787
+ * sap.ushell.Container.getServiceAsync("CrossApplicationNavigation").then( function (oService) {
788
+ *
789
+ * oService.hrefForExternalAsync({
790
+ * target : {
791
+ * semanticObject: "Product",
792
+ * action: "display"
793
+ * },
794
+ * params: {
795
+ * "ProductID": "102343333"
796
+ * }
797
+ * }).then( function(sHref) {
798
+ * // Place sHref somewhere in the DOM
799
+ * });
800
+ * });
801
+ * ```
802
+ *
803
+ *
804
+ * Parameter names and values are case sensitive.
805
+ *
806
+ * Note that the usage of multi-valued parameters (specifying an array with more than one member as parameter
807
+ * value, e.g. `params : { A : ["a1", "a2"] }`) is possible with this API but **strongly discouraged**.
808
+ * Depending on the used platform / back-end implementation the target matching might not supported multi-value
809
+ * parameters. Furthermore, it is not guaranteed that additional parameter values specified in the back-end
810
+ * configuration are merged with parameter values passed in this method.
811
+ *
812
+ * Note that the application parameter length (including SemanticObject/Action) shall not exceed 512 bytes
813
+ * when serialized as UTF-8.
814
+ *
815
+ * Note that when receiving the values as startup parameters (as part of the component data object) single
816
+ * values are represented as an array of size 1. Above example is returned as ` deepEqual(getComponentData().startupParameters
817
+ * , { "ProductID" : [ "102343333" ] } ) `
818
+ *
819
+ * Make sure not to store security critical data within an URL. URLs may appear in a server log, be persisted
820
+ * inside and outside the system.
821
+ *
822
+ * Note: When constructing large URLs, the URLs may be shortened and persisted on a database server for
823
+ * prolonged time, the actual data is persisted under a key accessible to any User (guessing the key).
824
+ *
825
+ * The same restrictions apply for the Application state.
788
826
  */
789
827
  class CrossApplicationNavigation {
790
- /**
791
- * The Unified Shell's CrossApplicationNavigation service, which allows to navigate to external targets
792
- * or create links to external targets
793
- *
794
- * This method MUST be called by the Unified Shell's container only, others MUST call `sap.ushell.Container.getServiceAsync("CrossApplicationNavigation").then(function
795
- * (CrossApplicationNavigation) {});`. Constructs a new instance of the CrossApplicationNavigation service.
796
- *
797
- * CrossApplicationNavigation currently provides platform independent functionality.
798
- *
799
- * This interface is for usage by applications or shell renderers/containers.
800
- *
801
- * Usage: sap.ushell.Container.getServiceAsync("CrossApplicationNavigation").then( function (oService)
802
- * {
803
- *
804
- * oService.hrefForExternalAsync({ target : { semanticObject : "Product", action : "display" }, params :
805
- * { "ProductID" : "102343333" } }).then( function(sHref) { // do something with sHref }); });
806
- *
807
- * Parameter names and values are case sensitive.
808
- *
809
- * Note that the usage of multi-valued parameters (specifying an array with more than one member as parameter
810
- * value, e.g. ` params : { A : ["a1", "a2"] } ` ) is possible with this API but **strongly discouraged**.
811
- * Especially the navigation target matching performed at the back-end is not supported for multi-value
812
- * parameters. Furthermore, it is not guaranteed that additional parameter values specified in the back-end
813
- * configuration are merged with parameter values passed in this method.
814
- *
815
- * Note that the application parameter length (including SemanticObject/Action) shall not exceed 512 bytes
816
- * when serialized as UTF-8
817
- *
818
- * Note that when receiving the values as startup parameters (as part of the component data object) single
819
- * values are represented as an array of size 1. Above example is returned as ` deepEqual(getComponentData().startupParameters
820
- * , { "ProductID" : [ "102343333" ] } ) `
821
- *
822
- * Make sure not to store security critical data within an URL. URLs may appear in a server log, be persisted
823
- * inside and outside the system.
824
- *
825
- * Note: When constructing large URLs, the URLs may be shortened and persisted on a database server for
826
- * prolonged time, the actual data is persisted under a key accessible to any User (guessing the key).
827
- *
828
- * The same restrictions apply for the Application state.
829
- * See:
830
- * sap.ushell.services.Container#getServiceAsync
831
- */
832
- constructor(
833
- /**
834
- * The Container Interface.
835
- */
836
- oContainerInterface: object,
837
- /**
838
- * The parameters.
839
- */
840
- sParameters: string,
841
- /**
842
- * Service Configuration.
843
- */
844
- oServiceConf: object
845
- );
828
+ constructor();
846
829
 
847
830
  /**
848
831
  * Attempts to use the browser history to navigate to the previous app. A navigation to the Fiori Launchpad
@@ -871,8 +854,8 @@ declare namespace sap {
871
854
  /**
872
855
  * @SINCE 1.38.0
873
856
  *
874
- * Resolves the given semantic object (or action) and business parameters to a list of links available to
875
- * the user
857
+ * Resolves the given semantic object (and action) and business parameters to a list of links available
858
+ * to the user.
876
859
  */
877
860
  getLinks(
878
861
  /**
@@ -977,9 +960,9 @@ declare namespace sap {
977
960
  * returns the one tagged as a "primaryAction". If no inbound tagged as "primaryAction" exists, then the
978
961
  * intent of the first inbound (after sorting has been applied) matching the action "displayFactSheet".
979
962
  *
980
- * The primary intent is determined by querying {@link CrossApplicationNavigation#getLinks} with the given
981
- * semantic object and optional parameter. Then the resulting list is filtered to the outcome that a single
982
- * item remains.
963
+ * The primary intent is determined by querying {@link sap.ushell.services.CrossApplicationNavigation#getLinks}
964
+ * with the given semantic object and optional parameter. Then the resulting list is filtered to the outcome
965
+ * that a single item remains.
983
966
  */
984
967
  getPrimaryIntent(
985
968
  /**
@@ -987,7 +970,7 @@ declare namespace sap {
987
970
  */
988
971
  sSemanticObject: string,
989
972
  /**
990
- * @see CrossApplicationNavigation#getSemanticObjectLinks for description.
973
+ * @see sap.ushell.services.CrossApplicationNavigation#getSemanticObjectLinks for description.
991
974
  */
992
975
  mParameters?: object
993
976
  ): jQuery.Deferred;
@@ -1081,7 +1064,8 @@ declare namespace sap {
1081
1064
  * @deprecated (since 1.98) - Use {@link sap.ushell.services.CrossApplicationNavigation#hrefForExternalAsync}
1082
1065
  * instead.
1083
1066
  *
1084
- * Returns a string which can be put into the DOM (e.g. in a link tag)
1067
+ * Returns a string which can be put into the DOM (e.g. in a link tag). **Note:** The generated url / url
1068
+ * segment must not be used as `shellHash` in the target definition of {@link sap.ushell.services.CrossApplicationNavigation#toExternal}
1085
1069
  */
1086
1070
  hrefForExternal(
1087
1071
  /**
@@ -1127,7 +1111,8 @@ declare namespace sap {
1127
1111
  * @deprecated (since 1.98) - Use {@link sap.ushell.services.CrossApplicationNavigation#hrefForExternalAsync}
1128
1112
  * instead.
1129
1113
  *
1130
- * Returns a string which can be put into the DOM (e.g. in a link tag)
1114
+ * Returns a string which can be put into the DOM (e.g. in a link tag). **Note:** The generated url / url
1115
+ * segment must not be used as `shellHash` in the target definition of {@link sap.ushell.services.CrossApplicationNavigation#toExternal}
1131
1116
  */
1132
1117
  hrefForExternal(
1133
1118
  /**
@@ -1223,9 +1208,10 @@ declare namespace sap {
1223
1208
  * Tells whether the given navigation intent(s) are supported for the given parameters, form factor etc.
1224
1209
  * "Supported" means that a valid navigation target is configured for the user for the given device.
1225
1210
  *
1226
- * This is effectively a test function for {@link toExternal}/ {@link hrefForExternal}. It is functionally
1227
- * equivalent to {@link isIntentSupported} but accepts the same interface as {@link toExternal}/ {@link
1228
- * hrefForExternal}.
1211
+ * This is effectively a test function for {@link sap.ushell.services.CrossApplicationNavigation#toExternal}/
1212
+ * {@link sap.ushell.services.CrossApplicationNavigation#hrefForExternal}. It is functionally equivalent
1213
+ * to {@link sap.ushell.services.CrossApplicationNavigation#isIntentSupported} but accepts the same interface
1214
+ * as {@link sap.ushell.services.CrossApplicationNavigation#toExternal}/ {@link sap.ushell.services.CrossApplicationNavigation#hrefForExternal}.
1229
1215
  */
1230
1216
  isNavigationSupported(
1231
1217
  /**
@@ -1240,51 +1226,127 @@ declare namespace sap {
1240
1226
  */
1241
1227
  oComponent?: object
1242
1228
  ): jQuery.Promise;
1229
+ /**
1230
+ * Resolves the URL hash fragment.
1231
+ *
1232
+ * This function gets the hash part of the URL and returns the URL of the target application.
1233
+ *
1234
+ * This is an asynchronous operation.
1235
+ */
1236
+ resolveIntent(
1237
+ /**
1238
+ * The formatted URL hash fragment in internal format (as obtained by the SAPUI5 hasher service) not as
1239
+ * given in `location.hash`)! Example: `#SemanticObject-action?P1=V1&P2=A%20B%20C`
1240
+ */
1241
+ sHashFragment: string
1242
+ ): jQuery.Promise;
1243
1243
  /**
1244
1244
  * @SINCE 1.15.0
1245
1245
  *
1246
- * Navigate to an specified external target (e.g. different launchpad application). Invocation will trigger
1247
- * an hash change and subsequent invocation of the application.
1246
+ * Triggers a navigation to a specified target outside of the currently running application (e.g. different
1247
+ * launchpad application). Invocation will trigger a hash change and subsequent invocation of the target.
1248
1248
  *
1249
1249
  * If the navigation target opens in a new window the running application may be retained.
1250
1250
  */
1251
1251
  toExternal(
1252
1252
  /**
1253
- * configuration object describing the target, e.g. ` { target : { semanticObject : "AnObject", action:
1254
- * "action" }, params : { A : "B" } } ` constructs sth. like `#AnObject-action?A=B&C=e&C=j`; or e.g. ` {
1255
- * target : { semanticObject : "AnObject", action: "action", context : "AB7F3C" }, params : { A : "B", c
1256
- * : "e" } } ` or `{ target : { shellHash : "SO-36&jumper=postman" } }` and navigate to it via changing
1257
- * the hash
1253
+ * A configuration object describing the navigation target. The navigation target can be provided as its
1254
+ * separate aspects like semantic object, action, paramters etc. in separate members of the configuration
1255
+ * object.
1256
+ *
1257
+ * **Note:** Parameter values can contain special characters and must be provided unencoded; the function
1258
+ * takes care for necessary encodings itself.
1259
+ *
1260
+ * Simple Example:
1261
+ * ```javascript
1262
+ *
1263
+ * {
1264
+ * target: {
1265
+ * semanticObject: "Customer",
1266
+ * action: "display"
1267
+ * },
1268
+ * params: {
1269
+ * customerId: "0815-4711"
1270
+ * }
1271
+ * }
1272
+ * ```
1258
1273
  *
1259
- * A proper way for an application to generate a link to return to the home page of the Fiori launchpad
1260
- * is: `hrefForExternal( { target : { shellHash : "#" }})`
1261
1274
  *
1262
- * Do *not* use "#Shell-home" or "Shell-home" to navigate to a specific homepage!
1275
+ * Example with text:
1276
+ * ```javascript
1277
+ *
1278
+ * {
1279
+ * target: {
1280
+ * semanticObject: "Note",
1281
+ * action: "create"
1282
+ * },
1283
+ * params: {
1284
+ * noteText: "Thanks for reading the documentation!"
1285
+ * }
1286
+ * }
1287
+ * ```
1263
1288
  *
1264
- * The actual navigation may occur deferred!
1265
1289
  *
1266
- * Since version 1.56 this API accepts a sap-xapp-state-data parameter that can be used to launch and application
1267
- * with certain data, for example:
1290
+ * Example with a given context:
1268
1291
  * ```javascript
1269
1292
  *
1270
- * {
1271
- * target : { semanticObject : "AnObject", action: "action" },
1272
- * params : { "sap-xapp-state-data" : JSON.stringify({ a: "b", c: "d" }) }
1293
+ * {
1294
+ * target: {
1295
+ * semanticObject: "AnObject",
1296
+ * action: "action",
1297
+ * context: "AB7F3C"
1298
+ * },
1299
+ * params: {
1300
+ * param1: "Value One"
1273
1301
  * }
1274
- * ```
1302
+ * }
1303
+ * ```
1304
+ *
1305
+ *
1306
+ * Alternatively a `shellHash` can be provided that includes already all aspects of the navigation target:
1307
+ * semantic object, action, intent paramters, app-specific route (incuding app paramters)
1308
+ *
1309
+ * **Note:** While parameters need to be url-encoded once when used in the `shellHash` the app specific
1310
+ * route must not be encoded.
1311
+ *
1312
+ * Example with shellHash as target:
1313
+ * ```javascript
1314
+ *
1315
+ * {
1316
+ * target: {
1317
+ * shellHash: "Note-update?noteText=You%20got%20quite%20far&/Notes/My First Note"
1318
+ * }
1319
+ * }
1320
+ * ```
1321
+ *
1322
+ *
1323
+ * To navigate to the homepage of the Fiori launchpad, navigate to `{target: {shellHash: "#"}}`. Do not
1324
+ * use "#Shell-home" or "Shell-home" to navigate to!
1325
+ *
1326
+ * To provide a complex paramter structure to a target app the pesudo parameter `sap-xapp-state-data` can
1327
+ * be used.
1328
+ *
1329
+ * Example:
1330
+ * ```javascript
1275
1331
  *
1332
+ * {
1333
+ * ...
1334
+ * params : {
1335
+ * "sap-xapp-state-data": JSON.stringify({ a: "b", c: "d" })
1336
+ * }
1337
+ * }
1338
+ * ```
1276
1339
  *
1277
- * The data specified via "sap-xapp-state-data" are passed to the target application in the sap-xapp-state
1278
- * parameter.
1279
1340
  *
1280
- * Note that the sap-xapp-state-data parameter itself is not passed to the target application.
1341
+ * The data specified via `sap-xapp-state-data` is passed to the target application in the `sap-xapp-state`
1342
+ * parameter. The `sap-xapp-state-data` parameter itself is not passed to the target application.
1281
1343
  *
1282
- * Note that the application parameter length (including SemanticObject/Action) shall not exceed 512 bytes
1283
- * when serialized as UTF-8
1344
+ * **Note:** The parameter length (including semantic object and action) shall not exceed 512 bytes when
1345
+ * serialized as UTF-8.
1284
1346
  */
1285
1347
  oArgs: Object,
1286
1348
  /**
1287
- * an optional SAP UI5 Component,
1349
+ * an optional UI5 component, used to logically attach a possibly generated app state.
1288
1350
  */
1289
1351
  oComponent?: object
1290
1352
  ): Promise<void>;
@@ -4062,6 +4124,28 @@ declare namespace sap {
4062
4124
  }
4063
4125
  }
4064
4126
 
4127
+ namespace Container {
4128
+ /**
4129
+ * @SINCE 1.90.0
4130
+ *
4131
+ * An enumeration for the application work protect mode state.
4132
+ */
4133
+ type DirtyState = {
4134
+ /**
4135
+ * The embedded application is clean, there is no unsaved data.
4136
+ */
4137
+ CLEAN: "CLEAN";
4138
+ /**
4139
+ * The embedded application is dirty, the user has entered data that is not yet saved.
4140
+ */
4141
+ DIRTY: "DIRTY";
4142
+ /**
4143
+ * The embedded application container's dirty state cannot be determined because of technical reasons.
4144
+ */
4145
+ MAYBE_DIRTY: "MAYBE_DIRTY";
4146
+ };
4147
+ }
4148
+
4065
4149
  namespace renderers {
4066
4150
  namespace fiori2 {
4067
4151
  interface $RendererSettings extends sap.ui.core.$UIComponentSettings {}
@@ -9455,6 +9539,358 @@ declare namespace sap {
9455
9539
  }
9456
9540
  }
9457
9541
 
9542
+ /**
9543
+ * @SINCE 1.15.0
9544
+ *
9545
+ * The Unified Shell's container which manages renderers, services, and adapters. The container is designed
9546
+ * to be a singleton. Instead of creating an instance please access the central instance via namespace `sap.ushell.Container`.
9547
+ */
9548
+ class Container {
9549
+ constructor();
9550
+ /**
9551
+ * @SINCE 1.21.1
9552
+ *
9553
+ * An enumeration for the application work protect mode state.
9554
+ */
9555
+ DirtyState: sap.ushell.Container.DirtyState;
9556
+
9557
+ /**
9558
+ * @SINCE 1.15.0
9559
+ *
9560
+ * Logs out the current user from all relevant back-end systems, including the logon system itself. This
9561
+ * member represents the default native implementation of logout. If SessionHandler was created, we register
9562
+ * the alternate logout function using registerLogout function.
9563
+ */
9564
+ logout: undefined;
9565
+
9566
+ /**
9567
+ * @SINCE 1.15.0
9568
+ *
9569
+ * Adds a system to the list of remote systems currently in use. On logout this list is processed and performs
9570
+ * a logout for each system via the ContainerAdapter specific for its platform.
9571
+ */
9572
+ addRemoteSystem(
9573
+ /**
9574
+ * Remote system to be added.
9575
+ */
9576
+ oRemoteSystem: sap.ushell.System
9577
+ ): void;
9578
+ /**
9579
+ * @SINCE 1.19.1
9580
+ *
9581
+ * Attaches a listener to the logout event. In case the bAsyncFunction parameter is true, the fnFunction
9582
+ * must return a promise. FLP will wait for the promise to be resolved before doing the actual logout.
9583
+ */
9584
+ attachLogoutEvent(
9585
+ /**
9586
+ * Event handler to be attached.
9587
+ */
9588
+ fnFunction: Function,
9589
+ /**
9590
+ * Whether the function returns a Promise to wait for its resolvent (since 1.81.0).
9591
+ */
9592
+ bAsyncFunction: boolean
9593
+ ): void;
9594
+ /**
9595
+ * @SINCE 1.34.1
9596
+ *
9597
+ * Attaches a listener to the rendererCreated event.
9598
+ */
9599
+ attachRendererCreatedEvent(
9600
+ /**
9601
+ * Event handler to be attached. If a renderer is created, this function is called with a parameter of instance
9602
+ * `sap.ui.base.Event`. The event object provides the instance of the created renderer as parameter "renderer".
9603
+ * If the renderer is a SAPUI5 UI component (i.e. extend `sap.ui.core.UIComponent`), the event parameter
9604
+ * returns the component instance, i.e. it unwraps the renderer component from its component container.
9605
+ */
9606
+ fnFunction: Function
9607
+ ): void;
9608
+ /**
9609
+ * @SINCE 1.21.2
9610
+ *
9611
+ * Cancels the logon procedure in the current frame, if any. This MUST be used by the logon frame provider
9612
+ * in case the user wants to close the logon frame for good. It will report "Authentication cancelled" and
9613
+ * let all pending requests for the current realm fail. As a side-effect, it also calls `destroy` on the
9614
+ * logon frame provider.
9615
+ * See:
9616
+ * sap.ushell.services.Container#setLogonFrameProvider
9617
+ */
9618
+ cancelLogon(): void;
9619
+ /**
9620
+ * @SINCE 1.15.0
9621
+ *
9622
+ * Creates a new renderer instance for the given renderer name.
9623
+ *
9624
+ * Names without a dot are interpreted as package names within the default naming convention and will be
9625
+ * expanded to `"sap.ushell.renderers." + sRendererName + ".Renderer"`. Names containing a dot are used
9626
+ * "as is".
9627
+ *
9628
+ * The resulting name must point to a SAPUI5 object which is first required and then instantiated (without
9629
+ * arguments). The object is expected to be a UI component (i.e. extend `sap.ui.core.UIComponent`), which
9630
+ * is then automatically wrapped into a `sap.ui.core.ComponentContainer` control by this method. The `sap.ui.core.ComponentContainer`
9631
+ * is created with `height` and `width` set to "100%" to accommodate the complete available space. Besides
9632
+ * UICompoents a control (i.e. extend `sap.ui.core.Control`) is accepted, too.
9633
+ *
9634
+ * The returned renderer is supposed to be added to a direct child (for example `div`) of the `body` of
9635
+ * the page and there should be no other parts of the page consuming space outside the renderer. Use CSS
9636
+ * class `sapUShellFullHeight` at `html`, `body` and at the element to which the renderer is added to allow
9637
+ * the renderer to use 100% height.
9638
+ */
9639
+ createRenderer(
9640
+ /**
9641
+ * The renderer name, such as "standard" or "acme.foo.bar.MyRenderer"; it is taken from the configuration
9642
+ * property `defaultRenderer` if not given here.
9643
+ */
9644
+ sRendererName?: string,
9645
+ /**
9646
+ * If `true`, the renderer is created asynchronously and a `Promise` is returned.
9647
+ */
9648
+ bAsync?: boolean
9649
+ ): sap.ui.core.Control | Promise<any>;
9650
+ /**
9651
+ * @SINCE 1.67.0
9652
+ *
9653
+ * Deregister the work protection dirty callback function. See registerDirtyStateProvider for more information.
9654
+ * Only the last registered function will be deregistered (in case it was registered multiple times).
9655
+ */
9656
+ deregisterDirtyStateProvider(
9657
+ /**
9658
+ * function for determining the state of the application
9659
+ */
9660
+ fnDirty: Function
9661
+ ): void;
9662
+ /**
9663
+ * @SINCE 1.19.1
9664
+ *
9665
+ * Detaches a listener from the logout event.
9666
+ */
9667
+ detachLogoutEvent(
9668
+ /**
9669
+ * Event handler to be detached.
9670
+ */
9671
+ fnFunction: Function
9672
+ ): void;
9673
+ /**
9674
+ * @SINCE 1.34.1
9675
+ *
9676
+ * Detaches a listener from the rendererCreated event.
9677
+ */
9678
+ detachRendererCreatedEvent(
9679
+ /**
9680
+ * Event handler to be detached.
9681
+ */
9682
+ fnFunction: Function
9683
+ ): void;
9684
+ /**
9685
+ * @SINCE 1.27.0
9686
+ *
9687
+ * If the dirty state was set to 'false' using 'setDirtyFlag' the registered dirty state provider methods
9688
+ * get called to determine the actual dirty state. The determined dirty state is then returned.
9689
+ *
9690
+ * However, if the dirty state was previously set to 'true' using 'setDirtyFlag' the registered dirty state
9691
+ * provider methods are ignored and the function simply returns 'true'.
9692
+ */
9693
+ getDirtyFlag(): boolean;
9694
+ /**
9695
+ * @SINCE 1.21.1
9696
+ *
9697
+ * Returns the global dirty state.
9698
+ *
9699
+ * All open UShell browser windows for the same origin are asked about their global dirty state.
9700
+ */
9701
+ getGlobalDirty(): jQuery.Deferred;
9702
+ /**
9703
+ * @SINCE 1.30.0
9704
+ *
9705
+ * Gets a renderer instance for the given renderer name, that was created by the createRenderer method.
9706
+ */
9707
+ getRenderer(
9708
+ /**
9709
+ * The renderer name, such as "standard" or "fiori2"; it is taken from the configuration property `defaultRenderer`
9710
+ * if not given here.
9711
+ */
9712
+ sRendererName?: string
9713
+ ): object;
9714
+ /**
9715
+ * @SINCE 1.15.0
9716
+ * @deprecated (since 1.77) - deprecated. Uses {@link#getServiceAsync} instead.
9717
+ *
9718
+ * Returns a service with the given name, creating it if necessary. Services are singleton objects identified
9719
+ * by their (resulting) name.
9720
+ *
9721
+ * Names without a dot are interpreted as service names within the default naming convention and will be
9722
+ * expanded to `"sap.ushell.services." + sServiceName`. Names containing a dot are not yet supported. This
9723
+ * name may be overridden via configuration. See example 2 below.
9724
+ *
9725
+ * The resulting name must point to a constructor function which is first required as a SAPUI5 module and
9726
+ * then called to create a service instance. The service will be passed to a corresponding service adapter
9727
+ * for the current logon system, as well as a callback interface (of virtual type `sap.ushell.services.ContainerInterface`)
9728
+ * to the container providing a method `createAdapter(oSystem)` to create further adapters for the same
9729
+ * service but connected to remote systems. The third parameter will be `sParameter` as passed to this function.
9730
+ * The fourth parameter will be an object with the property `config` supplied by the configuration. See
9731
+ * example 2 below.
9732
+ *
9733
+ * The adapter for the logon system will be created before the service. Its constructor gets three parameters.
9734
+ * The first parameter is the logon system, the second parameter is `sParameter` and the third parameter
9735
+ * is an object with the property `config` supplied by the configuration.
9736
+ *
9737
+ * The service may declare itself adapterless by setting the property `hasNoAdapter = true` at the constructor
9738
+ * function. In this case no adapter will be created and passed to the constructor and all other parameters
9739
+ * will be shifted.
9740
+ *
9741
+ * **Example 1:** The service `sap.ushell.services.UserInfo` is parameterless. It indicates this by setting
9742
+ * `sap.ushell.services.UserInfo.hasNoAdapter = true;`.
9743
+ *
9744
+ * **Example 2:** (Configuration)
9745
+ * ```javascript
9746
+ *
9747
+ * window["sap-ushell-config"] = {
9748
+ * services: {
9749
+ * Foo: {
9750
+ * module: "my.own.Foo"
9751
+ * config: {header: "hidden"},
9752
+ * adapter: {
9753
+ * module: "my.own.FooAdapter",
9754
+ * config: {foo: "bar"}
9755
+ * }
9756
+ * }
9757
+ * }
9758
+ * }
9759
+ * sap.ushell.Container.getServiceAsync("Foo", "runtimeConfig")
9760
+ * .then(function (Foo) {
9761
+ * // Do something with the service
9762
+ * });
9763
+ * ```
9764
+ * Now `oService` is an instance of `my.own.Foo`. The third parameter of the constructor will be "runtimeConfig",
9765
+ * the fourth parameter `{config: {header: "hidden"}}`. Its adapter is an instance of `my.own.FooAdapter`
9766
+ * constructed with the parameters logon system, "runtimeConfig" and `{config: {foo: "bar"}}`.
9767
+ *
9768
+ * Please note that the api will throw a runtime error (or reject for async mode) if the service name does
9769
+ * not reflect a service available.
9770
+ * See:
9771
+ * sap.ushell.services.ContainerInterface
9772
+ */
9773
+ getService(
9774
+ /**
9775
+ * The service name, such as "Menu"
9776
+ */
9777
+ sServiceName: string,
9778
+ /**
9779
+ * A parameter which is passed to the service constructor and every adapter constructor. (since 1.15.0)
9780
+ */
9781
+ sParameter?: string,
9782
+ /**
9783
+ * if true, the adapter is loaded asynchronously and a Promise is returned. (since 1.55.0)
9784
+ */
9785
+ bAsync?: boolean
9786
+ ): object | Promise<any>;
9787
+ /**
9788
+ * @SINCE 1.55.0
9789
+ *
9790
+ * Returns a Promise that resolves a service with the given name, creating it if necessary. Services are
9791
+ * singleton objects identified by their (resulting) name.
9792
+ *
9793
+ * Names without a dot are interpreted as service names within the default naming convention and will be
9794
+ * expanded to `"sap.ushell.services." + sServiceName`. Names containing a dot are not yet supported. This
9795
+ * name may be overridden via configuration. See example 2 below.
9796
+ *
9797
+ * The resulting name must point to a constructor function which is first required as a SAPUI5 module and
9798
+ * then called to create a service instance. The service will be passed to a corresponding service adapter
9799
+ * for the current logon system, as well as a callback interface (of virtual type `sap.ushell.services.ContainerInterface`)
9800
+ * to the container providing a method `createAdapter(oSystem)` to create further adapters for the same
9801
+ * service but connected to remote systems. The third parameter will be `sParameter` as passed to this function.
9802
+ * The fourth parameter will be an object with the property `config` supplied by the configuration. See
9803
+ * example 2 below.
9804
+ *
9805
+ * The adapter for the logon system will be created before the service. Its constructor gets three parameters.
9806
+ * The first parameter is the logon system, the second parameter is `sParameter` and the third parameter
9807
+ * is an object with the property `config` supplied by the configuration.
9808
+ *
9809
+ * The service may declare itself adapterless by setting the property `hasNoAdapter = true` at the constructor
9810
+ * function. In this case no adapter will be created and passed to the constructor and all other parameters
9811
+ * will be shifted.
9812
+ *
9813
+ * **Example 1:** The service `sap.ushell.services.UserInfo` is parameterless. It indicates this by setting
9814
+ * `sap.ushell.services.UserInfo.hasNoAdapter = true;`.
9815
+ *
9816
+ * **Example 2:** (Configuration)
9817
+ * ```javascript
9818
+ *
9819
+ * window["sap-ushell-config"] = {
9820
+ * services: {
9821
+ * Foo: {
9822
+ * module: "my.own.Foo"
9823
+ * config: {header: "hidden"},
9824
+ * adapter: {
9825
+ * module: "my.own.FooAdapter",
9826
+ * config: {foo: "bar"}
9827
+ * }
9828
+ * }
9829
+ * }
9830
+ * }
9831
+ * sap.ushell.Container.getServiceAsync("Foo", "runtimeConfig")
9832
+ * .then(function (Foo) {
9833
+ * // Do something with the service
9834
+ * });
9835
+ * ```
9836
+ * Now the parameter provided in the promise handler is an instance of `my.own.Foo`. The third parameter
9837
+ * of the constructor will be "runtimeConfig", the fourth parameter `{config: {header: "hidden"}}`. Its
9838
+ * adapter is an instance of `my.own.FooAdapter` constructed with the parameters logon system, "runtimeConfig"
9839
+ * and `{config: {foo: "bar"}}`.
9840
+ * See:
9841
+ * sap.ushell.services.ContainerInterface
9842
+ */
9843
+ getServiceAsync(
9844
+ /**
9845
+ * The service name, such as "Menu"
9846
+ */
9847
+ sServiceName: string,
9848
+ /**
9849
+ * A parameter which is passed to the service constructor and every adapter constructor.
9850
+ */
9851
+ sParameter?: string
9852
+ ): Promise<any>;
9853
+ /**
9854
+ * @SINCE 1.31.0
9855
+ *
9856
+ * Register the work protection dirty callback function. In the work protect mechanism, each platform can
9857
+ * register their own method in order to check if data was changed during the session, and notify the container
9858
+ * about the change. Multiple registerings of the same function are allowed.
9859
+ *
9860
+ * Use `Function.prototype.bind()` to determine the callback's `this` or some of its arguments.
9861
+ */
9862
+ registerDirtyStateProvider(
9863
+ /**
9864
+ * Function for determining the state of the application. The callback is used to determine the current
9865
+ * dirty state during a navigation. The function must return a boolean which determines if the current application
9866
+ * is dirty or not. If `true` is returned the end user is prompted with a dialog where they need to confirm
9867
+ * the potential data loss. The callback is called with a navigation context as its first parameter which
9868
+ * can be used to determine the dirty state:
9869
+ * ```javascript
9870
+ *
9871
+ * {
9872
+ * status: "InProgress", // Enum which determines if a navigation currently takes place or if it is already finished. See sap.ushell.NavigationState.
9873
+ * isCrossAppNavigation: true, // Boolean which indicates if the navigation is inner app our across two different applications.
9874
+ * innerAppRoute: "&/SalesOrder/11" // If it is an inner app navigation, it describes the inner app route.
9875
+ * }
9876
+ * ```
9877
+ */
9878
+ fnDirty: Function
9879
+ ): void;
9880
+ /**
9881
+ * @SINCE 1.27.0
9882
+ *
9883
+ * Setter for the isDirty flag value.
9884
+ *
9885
+ * Default value is false
9886
+ */
9887
+ setDirtyFlag(
9888
+ /**
9889
+ * The value of the dirty flag.
9890
+ */
9891
+ bIsDirty?: boolean
9892
+ ): void;
9893
+ }
9458
9894
  /**
9459
9895
  * @SINCE 1.15.0
9460
9896
  *