@sapui5/sap.fe.navigation 1.96.4 → 1.99.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sapui5/sap.fe.navigation",
3
- "version": "1.96.4",
3
+ "version": "1.99.0",
4
4
  "description": "SAPUI5 Library sap.fe.navigation",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "author": "SAP SE (https://www.sap.com)",
@@ -8,6 +8,7 @@
8
8
  "scripts": {
9
9
  "build": "echo 'nothing to do'",
10
10
  "prepare-npm-sources": "babel target/npm-sources/src --out-dir target/npm-sources/src --extensions \".ts\" --config-file ../../.babelrc",
11
+ "prepare-ui5-build-sources": "mkdirp target/ui5-build-tmp/src && babel src --out-dir target/ui5-build-tmp/src --extensions \".ts\" --config-file ../../.babelrc",
11
12
  "test": "echo 'nothing to do'"
12
13
  },
13
14
  "keywords": [
@@ -16,6 +17,7 @@
16
17
  ],
17
18
  "devDependencies": {
18
19
  "@babel/cli": "^7.14.8",
19
- "@ui5/cli": "^2.10.0"
20
+ "@ui5/cli": "^2.14.0",
21
+ "mkdirp": "^1.0.4"
20
22
  }
21
23
  }
@@ -6,7 +6,7 @@
6
6
  <copyright>SAP UI development toolkit for HTML5 (SAPUI5)
7
7
  (c) Copyright 2009-2021 SAP SE. All rights reserved
8
8
  </copyright>
9
- <version>1.96.4</version>
9
+ <version>1.99.0</version>
10
10
 
11
11
  <documentation>UI5 library: sap.fe.navigation</documentation>
12
12
 
@@ -1,6 +1,7 @@
1
1
  /*!
2
- * SAPUI5
3
- * (c) Copyright 2009-2022 SAP SE. All rights reserved.
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ (c) Copyright 2009-2021 SAP SE. All rights reserved
4
+
4
5
  */
5
6
 
6
7
  sap.ui.define(["sap/ui/base/Object"], function(BaseObject) {
@@ -1,6 +1,7 @@
1
1
  /*!
2
- * SAPUI5
3
- * (c) Copyright 2009-2022 SAP SE. All rights reserved.
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ (c) Copyright 2009-2021 SAP SE. All rights reserved
4
+
4
5
  */
5
6
  sap.ui.define(
6
7
  [
@@ -346,7 +347,11 @@ sap.ui.define(
346
347
  throw new NavError("NavigationHandler.INVALID_INPUT");
347
348
  }
348
349
 
349
- oTmpData.selectionVariant = new SelectionVariant(sSelectionVariant).toJSONObject();
350
+ oTmpData.selectionVariant = new SelectionVariant(sSelectionVariant);
351
+ if (typeof vNavigationParameters === "string") {
352
+ oTmpData.selectionVariant = this._removeTechnicalParameters(oTmpData.selectionVariant);
353
+ }
354
+ oTmpData.selectionVariant = oTmpData.selectionVariant && oTmpData.selectionVariant.toJSONObject();
350
355
  oTmpData = this._removeMeasureBasedInformation(oTmpData); // remove eventual measures
351
356
  oTmpData = this._checkIsPotentiallySensitive(oTmpData); // remove eventual sensitive data
352
357
 
@@ -518,7 +523,32 @@ sap.ui.define(
518
523
 
519
524
  var oMyDeferred = jQuery.Deferred();
520
525
  var oNavHandler = this;
521
-
526
+ var parseUrlParams = function(oStartupParameters, aDefaultedParameters, oMyDeferred, sNavType) {
527
+ // standard URL navigation
528
+ var oSelVars = oNavHandler._splitInboundNavigationParameters(
529
+ new SelectionVariant(),
530
+ oStartupParameters,
531
+ aDefaultedParameters
532
+ );
533
+ if (oSelVars.oNavigationSelVar.isEmpty() && oSelVars.oDefaultedSelVar.isEmpty()) {
534
+ // Startup parameters contain only technical parameters (SAP system) which were filtered out.
535
+ // oNavigationSelVar and oDefaultedSelVar are empty.
536
+ // Thus, consider this type of navigation as an initial navigation.
537
+ if (sNavType === NavType.xAppState) {
538
+ var oError = oNavHandler._createTechnicalError("NavigationHandler.getDataFromAppState.failed");
539
+ oMyDeferred.reject(oError, oStartupParameters || {}, NavType.xAppState);
540
+ } else {
541
+ oMyDeferred.resolve({}, oStartupParameters, NavType.initial);
542
+ }
543
+ } else {
544
+ var oAppStateData = {};
545
+ oAppStateData.selectionVariant = oSelVars.oNavigationSelVar.toJSONString();
546
+ oAppStateData.oSelectionVariant = oSelVars.oNavigationSelVar;
547
+ oAppStateData.oDefaultedSelectionVariant = oSelVars.oDefaultedSelVar;
548
+ oAppStateData.bNavSelVarHasDefaultsOnly = oSelVars.bNavSelVarHasDefaultsOnly;
549
+ oMyDeferred.resolve(oAppStateData, oStartupParameters, sNavType);
550
+ }
551
+ };
522
552
  if (sIAppState) {
523
553
  // inner app state is available in the AppHash (back navigation); extract the parameter value
524
554
  this._loadAppState(sIAppState, oMyDeferred);
@@ -557,9 +587,13 @@ sap.ui.define(
557
587
  oAppStateData.bNavSelVarHasDefaultsOnly = oSelVars.bNavSelVarHasDefaultsOnly;
558
588
  oMyDeferred.resolve(oAppStateData, oStartupParameters, NavType.xAppState);
559
589
  } else {
560
- // sap-xapp-state navigation, but ID has already expired, but URL parameters available
561
- oError = oNavHandler._createTechnicalError("NavigationHandler.getDataFromAppState.failed");
562
- oMyDeferred.reject(oError, oStartupParameters || {}, NavType.xAppState);
590
+ if (oStartupParameters) {
591
+ parseUrlParams(oStartupParameters, aDefaultedParameters, oMyDeferred, NavType.xAppState);
592
+ } else {
593
+ // sap-xapp-state navigation, but ID has already expired, but URL parameters available
594
+ oError = oNavHandler._createTechnicalError("NavigationHandler.getDataFromAppState.failed");
595
+ oMyDeferred.reject(oError, oStartupParameters || {}, NavType.xAppState);
596
+ }
563
597
  }
564
598
  });
565
599
  oStartupPromise.fail(function() {
@@ -569,25 +603,7 @@ sap.ui.define(
569
603
  } else {
570
604
  // no sap-xapp-state
571
605
  if (oStartupParameters) {
572
- // standard URL navigation
573
- var oSelVars = oNavHandler._splitInboundNavigationParameters(
574
- new SelectionVariant(),
575
- oStartupParameters,
576
- aDefaultedParameters
577
- );
578
- if (oSelVars.oNavigationSelVar.isEmpty() && oSelVars.oDefaultedSelVar.isEmpty()) {
579
- // Startup parameters contain only technical parameters (SAP system) which were filtered out.
580
- // oNavigationSelVar and oDefaultedSelVar are empty.
581
- // Thus, consider this type of navigation as an initial navigation.
582
- oMyDeferred.resolve({}, oStartupParameters, NavType.initial);
583
- } else {
584
- var oAppStateData = {};
585
- oAppStateData.selectionVariant = oSelVars.oNavigationSelVar.toJSONString();
586
- oAppStateData.oSelectionVariant = oSelVars.oNavigationSelVar;
587
- oAppStateData.oDefaultedSelectionVariant = oSelVars.oDefaultedSelVar;
588
- oAppStateData.bNavSelVarHasDefaultsOnly = oSelVars.bNavSelVarHasDefaultsOnly;
589
- oMyDeferred.resolve(oAppStateData, oStartupParameters, NavType.URLParams);
590
- }
606
+ parseUrlParams(oStartupParameters, aDefaultedParameters, oMyDeferred, NavType.URLParams);
591
607
  } else {
592
608
  // initial navigation
593
609
  oMyDeferred.resolve({}, {}, NavType.initial);
@@ -648,16 +664,42 @@ sap.ui.define(
648
664
  */
649
665
  _isTechnicalParameter: function(sParameterName) {
650
666
  if (sParameterName) {
651
- if (sParameterName.toLowerCase().indexOf("sap-") === 0) {
652
- return true;
653
- } else if (this._aTechnicalParamaters.indexOf(sParameterName) >= 0) {
654
- return true;
667
+ if (
668
+ !(
669
+ sParameterName === "sap-ui-fe-variant-id" ||
670
+ sParameterName === "sap-ui-fe-table-variant-id" ||
671
+ sParameterName === "sap-ui-fe-chart-variant-id" ||
672
+ sParameterName === "sap-ui-fe-filterbar-variant-id"
673
+ )
674
+ ) {
675
+ if (sParameterName.toLowerCase().indexOf("sap-") === 0) {
676
+ return true;
677
+ } else if (this._aTechnicalParamaters.indexOf(sParameterName) >= 0) {
678
+ return true;
679
+ }
655
680
  }
656
681
  }
657
-
658
682
  return false;
659
683
  },
660
684
 
685
+ /**
686
+ * Rmoves if the passed parameter is considered as technical parameter.
687
+ * @param {object} oSelectionVariant Selection Variant which consists of technical Parameters.
688
+ * @returns {object} Selection Variant without technical Parameters.
689
+ * @private
690
+ */
691
+ _removeTechnicalParameters: function(oSelectionVariant) {
692
+ var sPropName, i;
693
+ var aSelVarPropNames = oSelectionVariant.getSelectOptionsPropertyNames();
694
+ for (i = 0; i < aSelVarPropNames.length; i++) {
695
+ sPropName = aSelVarPropNames[i];
696
+ if (this._isTechnicalParameter(sPropName)) {
697
+ oSelectionVariant.removeSelectOption(sPropName);
698
+ }
699
+ }
700
+ return oSelectionVariant;
701
+ },
702
+
661
703
  /**
662
704
  * Splits the parameters provided during inbound navigation and separates the contextual information between defaulted parameter values and
663
705
  * navigation parameters.
@@ -2171,7 +2213,6 @@ sap.ui.define(
2171
2213
  fnIsSensitiveData = function(sProp, esName, mData) {
2172
2214
  var aPropertyAnnotations;
2173
2215
  esName = esName || sEntitySet;
2174
- mData = mData;
2175
2216
  aPropertyAnnotations = oMetaModel.getObject("/" + esName + "/" + sProp + "@");
2176
2217
  if (aPropertyAnnotations) {
2177
2218
  if (
@@ -1,6 +1,7 @@
1
1
  /*!
2
- * SAPUI5
3
- * (c) Copyright 2009-2022 SAP SE. All rights reserved.
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ (c) Copyright 2009-2021 SAP SE. All rights reserved
4
+
4
5
  */
5
6
  sap.ui.define(["./NavError", "sap/ui/base/Object", "sap/base/util/extend", "sap/base/util/each", "sap/base/Log"], function(
6
7
  NavError,
@@ -1,6 +1,7 @@
1
1
  /*!
2
- * SAPUI5
3
- * (c) Copyright 2009-2022 SAP SE. All rights reserved.
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ (c) Copyright 2009-2021 SAP SE. All rights reserved
4
+
4
5
  */
5
6
  sap.ui.define(
6
7
  ["./NavError", "sap/ui/base/Object", "sap/base/util/each", "sap/base/Log"],
@@ -1,6 +1,7 @@
1
1
  /*!
2
- * SAPUI5
3
- * (c) Copyright 2009-2022 SAP SE. All rights reserved.
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ (c) Copyright 2009-2021 SAP SE. All rights reserved
4
+
4
5
  */
5
6
 
6
7
  /**
@@ -26,7 +27,7 @@ sap.ui.define(
26
27
  // library dependencies
27
28
  sap.ui.getCore().initLibrary({
28
29
  name: "sap.fe.navigation",
29
- version: "1.96.4",
30
+ version: "1.99.0",
30
31
  dependencies: ["sap.ui.core"],
31
32
  types: ["sap.fe.navigation.NavType", "sap.fe.navigation.ParamHandlingMode", "sap.fe.navigation.SuppressionBehavior"],
32
33
  interfaces: [],
package/ui5.yaml CHANGED
@@ -3,9 +3,6 @@ type: library
3
3
  metadata:
4
4
  sapInternal: true
5
5
  name: sap.fe.navigation
6
- copyright: |-
7
- SAPUI5
8
- * (c) Copyright 2009-${currentYear} SAP SE. All rights reserved.
9
6
  framework:
10
7
  name: SAPUI5
11
8
  libraries: