@openui5/sap.ui.mdc 1.102.1 → 1.102.2

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 (110) hide show
  1. package/package.json +4 -4
  2. package/src/sap/ui/mdc/.library +1 -1
  3. package/src/sap/ui/mdc/ActionToolbar.js +1 -1
  4. package/src/sap/ui/mdc/Chart.js +1 -1
  5. package/src/sap/ui/mdc/Control.js +1 -1
  6. package/src/sap/ui/mdc/Element.js +1 -1
  7. package/src/sap/ui/mdc/Field.js +2 -2
  8. package/src/sap/ui/mdc/FilterBar.js +1 -1
  9. package/src/sap/ui/mdc/FilterField.js +2 -2
  10. package/src/sap/ui/mdc/Link.js +1 -1
  11. package/src/sap/ui/mdc/MultiValueField.js +1 -1
  12. package/src/sap/ui/mdc/Table.js +48 -12
  13. package/src/sap/ui/mdc/TableDelegate.js +25 -9
  14. package/src/sap/ui/mdc/ValueHelp.js +1 -1
  15. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +1 -1
  16. package/src/sap/ui/mdc/chart/ChartSelectionDetails.js +1 -1
  17. package/src/sap/ui/mdc/chart/ChartToolbar.js +1 -1
  18. package/src/sap/ui/mdc/chart/PropertyHelper.js +1 -1
  19. package/src/sap/ui/mdc/condition/Condition.js +1 -1
  20. package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
  21. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  22. package/src/sap/ui/mdc/condition/FilterConverter.js +1 -1
  23. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +1 -1
  24. package/src/sap/ui/mdc/condition/Operator.js +1 -1
  25. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +1 -1
  26. package/src/sap/ui/mdc/condition/RangeOperator.js +1 -1
  27. package/src/sap/ui/mdc/field/BoolFieldHelp.js +1 -1
  28. package/src/sap/ui/mdc/field/ConditionFieldHelp.js +1 -1
  29. package/src/sap/ui/mdc/field/ConditionType.js +1 -1
  30. package/src/sap/ui/mdc/field/ConditionsType.js +1 -1
  31. package/src/sap/ui/mdc/field/CustomFieldHelp.js +1 -1
  32. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  33. package/src/sap/ui/mdc/field/DefineConditionPanel.js +1 -1
  34. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +9 -62
  35. package/src/sap/ui/mdc/field/FieldBase.js +1 -1
  36. package/src/sap/ui/mdc/field/FieldHelpBase.js +1 -1
  37. package/src/sap/ui/mdc/field/FieldInfoBase.js +1 -1
  38. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  39. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  40. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  41. package/src/sap/ui/mdc/field/FieldValueHelp.js +1 -1
  42. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
  43. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +1 -1
  44. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +7 -1
  45. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +1 -1
  46. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +1 -1
  47. package/src/sap/ui/mdc/field/InParameter.js +1 -1
  48. package/src/sap/ui/mdc/field/ListFieldHelp.js +1 -1
  49. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  50. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  51. package/src/sap/ui/mdc/field/OutParameter.js +1 -1
  52. package/src/sap/ui/mdc/field/TokenDisplay.js +1 -1
  53. package/src/sap/ui/mdc/field/TokenizerDisplay.js +1 -1
  54. package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -1
  55. package/src/sap/ui/mdc/field/content/DateContent.js +3 -3
  56. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +1 -1
  57. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +1 -1
  58. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +1 -1
  59. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +1 -1
  60. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +1 -1
  61. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  62. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  63. package/src/sap/ui/mdc/library.js +2 -2
  64. package/src/sap/ui/mdc/link/ContactDetails.js +1 -1
  65. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
  66. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
  67. package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
  68. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
  69. package/src/sap/ui/mdc/link/Factory.js +1 -1
  70. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  71. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  72. package/src/sap/ui/mdc/link/Panel.js +2 -1
  73. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  74. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  75. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  76. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  77. package/src/sap/ui/mdc/messagebundle.properties +3 -1
  78. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +1 -1
  79. package/src/sap/ui/mdc/mixin/DelegateMixin.js +1 -1
  80. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +1 -1
  81. package/src/sap/ui/mdc/mixin/PromiseMixin.js +1 -1
  82. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +1 -1
  83. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelper.js +1 -1
  84. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +53 -16
  85. package/src/sap/ui/mdc/p13n/Engine.js +1 -1
  86. package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
  87. package/src/sap/ui/mdc/p13n/UIManager.js +1 -1
  88. package/src/sap/ui/mdc/p13n/modules/DefaultProviderRegistry.js +1 -1
  89. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +1 -1
  90. package/src/sap/ui/mdc/table/Column.js +4 -1
  91. package/src/sap/ui/mdc/table/CreationRow.js +1 -1
  92. package/src/sap/ui/mdc/table/PropertyHelper.js +1 -1
  93. package/src/sap/ui/mdc/table/RowActionItem.js +1 -1
  94. package/src/sap/ui/mdc/table/RowSettings.js +1 -1
  95. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +1 -1
  96. package/src/sap/ui/mdc/themes/base/InfoPanel.less +0 -1
  97. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  98. package/src/sap/ui/mdc/util/PropertyHelper.js +1 -1
  99. package/src/sap/ui/mdc/valuehelp/Dialog.js +1 -1
  100. package/src/sap/ui/mdc/valuehelp/Popover.js +1 -1
  101. package/src/sap/ui/mdc/valuehelp/base/Container.js +1 -1
  102. package/src/sap/ui/mdc/valuehelp/base/Content.js +1 -1
  103. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +1 -1
  104. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +1 -1
  105. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +1 -1
  106. package/src/sap/ui/mdc/valuehelp/content/Bool.js +1 -1
  107. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +1 -1
  108. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +1 -1
  109. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +1 -1
  110. package/src/sap/ui/mdc/valuehelp/content/MTable.js +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.ui.mdc",
3
- "version": "1.102.1",
3
+ "version": "1.102.2",
4
4
  "description": "OpenUI5 UI Library sap.ui.mdc",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "Apache-2.0",
@@ -14,8 +14,8 @@
14
14
  "url": "https://github.com/SAP/openui5.git"
15
15
  },
16
16
  "dependencies": {
17
- "@openui5/sap.m": "1.102.1",
18
- "@openui5/sap.ui.core": "1.102.1",
19
- "@openui5/sap.ui.layout": "1.102.1"
17
+ "@openui5/sap.m": "1.102.2",
18
+ "@openui5/sap.ui.core": "1.102.2",
19
+ "@openui5/sap.ui.layout": "1.102.2"
20
20
  }
21
21
  }
@@ -6,7 +6,7 @@
6
6
  <copyright>OpenUI5
7
7
  * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
8
8
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
9
- <version>1.102.1</version>
9
+ <version>1.102.2</version>
10
10
 
11
11
  <documentation>UI5 library: sap.ui.mdc</documentation>
12
12
 
@@ -31,7 +31,7 @@ sap.ui.define([
31
31
  * @class The column for the metadata driven table, that hold the template to be shown when the rows has data.
32
32
  * @extends sap.m.OverflowToolbar
33
33
  * @author SAP SE
34
- * @version 1.102.1
34
+ * @version 1.102.2
35
35
  * @constructor
36
36
  * @private
37
37
  * @since 1.58
@@ -62,7 +62,7 @@ sap.ui.define([
62
62
  * @class The Chart control creates a chart based on metadata and the configuration specified.
63
63
  * @extends sap.ui.mdc.Control
64
64
  * @author SAP SE
65
- * @version 1.102.1
65
+ * @version 1.102.2
66
66
  * @constructor
67
67
  * @experimental As of version ...
68
68
  * @private
@@ -20,7 +20,7 @@ sap.ui.define([
20
20
  * @extends sap.ui.core.Control
21
21
  * @abstract
22
22
  * @author SAP SE
23
- * @version 1.102.1
23
+ * @version 1.102.2
24
24
  * @alias sap.ui.mdc.Control
25
25
  *
26
26
  * @borrows sap.ui.mdc.mixin.DelegateMixin.awaitControlDelegate as awaitControlDelegate
@@ -20,7 +20,7 @@ sap.ui.define([
20
20
  * @extends sap.ui.core.Element
21
21
  * @abstract
22
22
  * @author SAP SE
23
- * @version 1.102.1
23
+ * @version 1.102.2
24
24
  * @alias sap.ui.mdc.Element
25
25
  *
26
26
  * @borrows sap.ui.mdc.mixin.DelegateMixin.awaitControlDelegate as awaitControlDelegate
@@ -46,12 +46,12 @@ sap.ui.define([
46
46
  * @implements sap.ui.core.IFormContent
47
47
  *
48
48
  * @author SAP SE
49
- * @version 1.102.1
49
+ * @version 1.102.2
50
50
  *
51
51
  * @constructor
52
52
  * @alias sap.ui.mdc.Field
53
53
  * @author SAP SE
54
- * @version 1.102.1
54
+ * @version 1.102.2
55
55
  * @since 1.54.0
56
56
  * @experimental As of version 1.54
57
57
  *
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  * The metadata information is provided via the {@link sap.ui.mdc.FilterBarDelegate FilterBarDelegate} implementation. This implementation has to be provided by the application.
22
22
  * @extends sap.ui.mdc.filterbar.FilterBarBase
23
23
  * @author SAP SE
24
- * @version 1.102.1
24
+ * @version 1.102.2
25
25
  * @constructor
26
26
  * @experimental As of version 1.61
27
27
  * @private
@@ -33,12 +33,12 @@ sap.ui.define([
33
33
  * @extends sap.ui.mdc.field.FieldBase
34
34
  *
35
35
  * @author SAP SE
36
- * @version 1.102.1
36
+ * @version 1.102.2
37
37
  *
38
38
  * @constructor
39
39
  * @alias sap.ui.mdc.FilterField
40
40
  * @author SAP SE
41
- * @version 1.102.1
41
+ * @version 1.102.2
42
42
  * @since 1.48.0
43
43
  *
44
44
  * @experimental As of version 1.48
@@ -45,7 +45,7 @@ sap.ui.define([
45
45
  * @extends sap.ui.mdc.field.FieldInfoBase
46
46
  *
47
47
  * @author SAP SE
48
- * @version 1.102.1
48
+ * @version 1.102.2
49
49
  *
50
50
  * @constructor
51
51
  * @alias sap.ui.mdc.Link
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @constructor
36
36
  * @alias sap.ui.mdc.MultiValueField
37
37
  * @author SAP SE
38
- * @version 1.102.1
38
+ * @version 1.102.2
39
39
  * @since 1.93.0
40
40
  *
41
41
  * @private
@@ -1078,13 +1078,13 @@ sap.ui.define([
1078
1078
  function updateFilterInfoBar(oTable) {
1079
1079
  var oFilterInfoBar = getFilterInfoBar(oTable);
1080
1080
  var oFilterInfoBarText = getFilterInfoBarText(oTable);
1081
- var aFilteredProperties = getFilteredProperties(oTable);
1081
+ var aFilteredProperties = getInternallyFilteredProperties(oTable);
1082
1082
 
1083
1083
  if (!oFilterInfoBar) {
1084
1084
  return;
1085
1085
  }
1086
1086
 
1087
- if (aFilteredProperties.length === 0 || !oTable.isFilteringEnabled()) {
1087
+ if (aFilteredProperties.length === 0) {
1088
1088
  var oFilterInfoBarDomRef = oFilterInfoBar.getDomRef();
1089
1089
 
1090
1090
  if (oFilterInfoBarDomRef && oFilterInfoBarDomRef.contains(document.activeElement)) {
@@ -1271,13 +1271,13 @@ sap.ui.define([
1271
1271
  return oRb.getText("table.NO_DATA");
1272
1272
  }
1273
1273
 
1274
- // Table is bound, but does not show any data
1275
- // If table-internal or external (for example FilterBar) filters are set, then show the message that the data not found and also ask to adjust the filters.
1276
- var oExternalFilter = Core.byId(this.getFilter());
1277
- if ((this.isFilteringEnabled() && getFilteredProperties(this).length > 0) || //internal filters check
1278
- (oExternalFilter && getFilteredProperties(oExternalFilter).length > 0)) { //external filters check
1274
+ // Table is bound, but does not show any data.
1275
+ // If the table is filtered internally or externally, e.g. FilterBar, then show the message that no data was found and that filters can be
1276
+ // adjusted.
1277
+ if (isFiltered(this)) {
1279
1278
  return oRb.getText("table.NO_RESULTS");
1280
1279
  }
1280
+
1281
1281
  // If no filters set, show only message that the data are not found, and nothing about the filters.
1282
1282
  return oRb.getText("table.NO_DATA");
1283
1283
  };
@@ -1521,12 +1521,44 @@ sap.ui.define([
1521
1521
  return this.getEngine().readXConfig(this);
1522
1522
  };
1523
1523
 
1524
- // oControl can be a Table or FilterBar - any Control that is able to have Filter
1525
- function getFilteredProperties(oControl) {
1526
- var mFilterConditions = oControl.getFilterConditions();
1524
+ /**
1525
+ * Gets the keys of properties that are filtered internally via the inbuilt filtering ({@link sap.ui.mdc.filterbar.p13n.AdaptationFilterBar}).
1526
+ *
1527
+ * @param {sap.ui.mdc.Table} oTable Instance of the table.
1528
+ * @returns {string[]} The keys of the filtered properties.
1529
+ */
1530
+ function getInternallyFilteredProperties(oTable) {
1531
+ return oTable.isFilteringEnabled() ? getFilteredProperties(oTable.getFilterConditions()) : [];
1532
+ }
1533
+
1534
+ /**
1535
+ * Gets the keys of properties that are filtered externally via the associated filter ({@link sap.ui.mdc.IFilter}).
1536
+ *
1537
+ * @param {sap.ui.mdc.Table} oTable Instance of the table.
1538
+ * @returns {string[]} The keys of the filtered properties.
1539
+ */
1540
+ function getExternallyFilteredProperties(oTable) {
1541
+ var oFilter = Core.byId(oTable.getFilter());
1542
+ return oFilter ? getFilteredProperties(oFilter.getConditions()) : [];
1543
+ }
1544
+
1545
+ /**
1546
+ * Whether the table is filtered internally via the inbuilt filtering ({@link sap.ui.mdc.filterbar.p13n.AdaptationFilterBar}), or externally via
1547
+ * the associated filter ({@link sap.ui.mdc.IFilter}).
1548
+ *
1549
+ * @param {sap.ui.mdc.Table} oTable Instance of the table.
1550
+ * @return {boolean} Whether the table is filtered (internally or externally).
1551
+ */
1552
+ function isFiltered(oTable) {
1553
+ var oFilter = Core.byId(oTable.getFilter());
1554
+ return getInternallyFilteredProperties(oTable).length > 0
1555
+ || getExternallyFilteredProperties(oTable).length > 0
1556
+ || oFilter && oFilter.getSearch() !== "";
1557
+ }
1527
1558
 
1528
- return Object.keys(mFilterConditions).filter(function(sProperty) {
1529
- return mFilterConditions[sProperty].length > 0;
1559
+ function getFilteredProperties(mConditions) {
1560
+ return Object.keys(mConditions || {}).filter(function(sProperty) {
1561
+ return mConditions[sProperty].length > 0;
1530
1562
  });
1531
1563
  }
1532
1564
 
@@ -2209,6 +2241,10 @@ sap.ui.define([
2209
2241
  if (iIndex >= 0) {
2210
2242
  this._oTemplate.insertCell(oCellTemplate, iIndex);
2211
2243
  this._oTable.getItems().forEach(function(oItem) {
2244
+ // ignore group headers since it does not have "cells" aggregation
2245
+ if (oItem.isA("sap.m.GroupHeaderListItem")) {
2246
+ return;
2247
+ }
2212
2248
  // Add lightweight placeholders that can be rendered - if they cannot be rendered, there will be errors in the console.
2213
2249
  // The actual cells are created after rebind.
2214
2250
  oItem.insertAggregation("cells", new InvisibleText(), iIndex, true);
@@ -61,15 +61,11 @@ sap.ui.define([
61
61
  var oGroupedProperty = oTable._getGroupedProperties()[0];
62
62
 
63
63
  if (oGroupedProperty) {
64
- var oSortedProperty = oTable._getSortedProperties().find(function(oProperty) {
65
- return oProperty.name === oGroupedProperty.name;
66
- });
67
- var sPath = oTable.getPropertyHelper().getProperty(oGroupedProperty.name).path;
68
- var bDescending = oSortedProperty ? oSortedProperty.descending : false;
69
-
70
- oBindingInfo.sorter.push(new Sorter(sPath, bDescending, function(oContext) {
71
- return this.formatGroupHeader(oTable, oContext, oGroupedProperty.name);
72
- }.bind(this)));
64
+ var oSorter = this.getGroupSorter(oTable, oGroupedProperty.name);
65
+
66
+ if (oSorter) {
67
+ oBindingInfo.sorter.push(oSorter);
68
+ }
73
69
  }
74
70
  }
75
71
 
@@ -82,6 +78,26 @@ sap.ui.define([
82
78
  );
83
79
  };
84
80
 
81
+ /**
82
+ * Creates a new sorter for the grouping functionality.
83
+ *
84
+ * @param {sap.ui.mdc.Table} oTable Instance of the MDC table
85
+ * @param {string} sPropertyName Property to group
86
+ * @returns {sap.ui.model.Sorter} New sorter
87
+ * @protected
88
+ */
89
+ TableDelegate.getGroupSorter = function(oTable, sPropertyName){
90
+ var oSortedProperty = oTable._getSortedProperties().find(function(oProperty) {
91
+ return oProperty.name === sPropertyName;
92
+ });
93
+ var sPath = oTable.getPropertyHelper().getProperty(sPropertyName).path;
94
+ var bDescending = oSortedProperty ? oSortedProperty.descending : false;
95
+
96
+ return new Sorter(sPath, bDescending, function(oContext) {
97
+ return this.formatGroupHeader(oTable, oContext, sPropertyName);
98
+ }.bind(this));
99
+ };
100
+
85
101
  /**
86
102
  * Updates the row binding of the table.
87
103
  *
@@ -83,7 +83,7 @@ sap.ui.define([
83
83
  * @class Element for the <code>FieldHelp</code> association in the {@link sap.ui.mdc.field.FieldBase FieldBase} controls.
84
84
  * @extends sap.ui.mdc.Element
85
85
  * @implements sap.ui.core.PopupInterface
86
- * @version 1.102.1
86
+ * @version 1.102.2
87
87
  * @constructor
88
88
  * @abstract
89
89
  * @private
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  * @class The action for an {@link sap.ui.mdc.ActionToolbar ActionToolbar}) control
22
22
  * @extends sap.ui.core.Control
23
23
  * @author SAP SE
24
- * @version 1.102.1
24
+ * @version 1.102.2
25
25
  * @constructor
26
26
  * @private
27
27
  * @since 1.58
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @class The ChartSelectionDetails control creates a sap.m.SelectionDetails popover based on metadata and the configuration specified.
34
34
  * @extends sap.m.SelectionDetails
35
35
  * @author SAP SE
36
- * @version 1.102.1
36
+ * @version 1.102.2
37
37
  * @constructor
38
38
  * @experimental As of version ...
39
39
  * @private
@@ -42,7 +42,7 @@ sap.ui.define([
42
42
  * @class The ChartToolbar control is a sap.m.OverflowToolbar based on metadata and the configuration specified.
43
43
  * @extends sap.ui.mdc.ActionToolbar
44
44
  * @author SAP SE
45
- * @version 1.102.1
45
+ * @version 1.102.2
46
46
  * @constructor
47
47
  * @experimental As of version 1.88
48
48
  * @private
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @extends sap.ui.mdc.util.PropertyHelper
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.102.1
28
+ * @version 1.102.2
29
29
  *
30
30
  * @private
31
31
  * @experimental
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  *
29
29
  * @namespace
30
30
  * @author SAP SE
31
- * @version 1.102.1
31
+ * @version 1.102.2
32
32
  * @since 1.61.0
33
33
  * @alias sap.ui.mdc.condition.Condition
34
34
  *
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  *
33
33
  * @namespace
34
34
  * @author SAP SE
35
- * @version 1.102.1
35
+ * @version 1.102.2
36
36
  * @private
37
37
  * @ui5-restricted sap.ui.mdc
38
38
  * @experimental As of version 1.74
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @extends sap.ui.model.json.JSONModel
36
36
  *
37
37
  * @author SAP SE
38
- * @version 1.102.1
38
+ * @version 1.102.2
39
39
  * @since 1.48.0
40
40
  * @alias sap.ui.mdc.condition.ConditionModel
41
41
  *
@@ -24,7 +24,7 @@ function(
24
24
  *
25
25
  * @namespace
26
26
  * @author SAP SE
27
- * @version 1.102.1
27
+ * @version 1.102.2
28
28
  * @since 1.78.0
29
29
  * @alias sap.ui.mdc.condition.FilterConverter
30
30
  *
@@ -56,7 +56,7 @@ function(
56
56
  *
57
57
  * @namespace
58
58
  * @author SAP SE
59
- * @version 1.102.1
59
+ * @version 1.102.2
60
60
  * @since 1.73.0
61
61
  * @alias sap.ui.mdc.condition.FilterOperatorUtil
62
62
  *
@@ -84,7 +84,7 @@ sap.ui.define([
84
84
  * @param {string} [oConfiguration.additionalInfo] additionalInfo text for the operator. Will be shown in the operator suggest as second column. If not used (undefined) the Include or Exclude information of the operator is used.
85
85
  * @constructor
86
86
  * @author SAP SE
87
- * @version 1.102.1
87
+ * @version 1.102.2
88
88
  * @private
89
89
  * @ui5-restricted sap.fe
90
90
  * @MDC_PUBLIC_CANDIDATE
@@ -51,7 +51,7 @@ sap.ui.define([
51
51
  * @extends sap.m.DynamicDateOption
52
52
  *
53
53
  * @author SAP SE
54
- * @version 1.102.1
54
+ * @version 1.102.2
55
55
  *
56
56
  * @private
57
57
  * @ui5-restricted sap.ui.mdc
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @param {int[]|function} [oConfiguration.defaultValues] Array of values for the defaults of <code>RangeOperators</code> parameter. This can be a function, which returns the array of values. If not used the default for the values is 1.
34
34
  * @constructor
35
35
  * @author SAP SE
36
- * @version 1.102.1
36
+ * @version 1.102.2
37
37
  * @private
38
38
  * @ui5-restricted sap.fe
39
39
  * @MDC_PUBLIC_CANDIDATE
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @param {object} [mSettings] Initial settings for the new control
36
36
  * @class A field help used in the <code>FieldHelp</code> association in <code>FieldBase</code> controls that shows a list for Boolean values.
37
37
  * @extends sap.ui.mdc.field.FieldHelpBase
38
- * @version 1.102.1
38
+ * @version 1.102.2
39
39
  * @constructor
40
40
  * @private
41
41
  * @ui5-restricted sap.ui.mdc.field.FieldBase
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @param {object} [mSettings] Initial settings for the new control
36
36
  * @class A field help used in the <code>FieldHelp</code> association in <code>FieldBase</code> controls to show a popover of conditions.
37
37
  * @extends sap.ui.mdc.field.FieldHelpBase
38
- * @version 1.102.1
38
+ * @version 1.102.2
39
39
  * @constructor
40
40
  * @private
41
41
  * @ui5-restricted sap.ui.mdc.field.FieldBase, sap.fe
@@ -48,7 +48,7 @@ sap.ui.define([
48
48
  * @extends sap.ui.model.SimpleType
49
49
  *
50
50
  * @author SAP SE
51
- * @version 1.102.1
51
+ * @version 1.102.2
52
52
  *
53
53
  * @since 1.62.0
54
54
  * @private
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @extends sap.ui.model.SimpleType
37
37
  *
38
38
  * @author SAP SE
39
- * @version 1.102.1
39
+ * @version 1.102.2
40
40
  *
41
41
  * @since 1.62.0
42
42
  * @private
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  * @param {object} [mSettings] Initial settings for the new control
17
17
  * @class A field help used in the <code>FieldHelp</code> association in <code>FieldBase</code> controls that allows you to add custom content.
18
18
  * @extends sap.ui.mdc.field.FieldHelpBase
19
- * @version 1.102.1
19
+ * @version 1.102.2
20
20
  * @constructor
21
21
  * @private
22
22
  * @ui5-restricted sap.fe
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  * @param {object} [mSettings] Initial settings for the new control
17
17
  * @class A field help used in the <code>FieldInfo</code> aggregation in <code>FieldBase</code> controls that allows you to add custom content.
18
18
  * @extends sap.ui.mdc.field.FieldInfoBase
19
- * @version 1.102.1
19
+ * @version 1.102.2
20
20
  * @constructor
21
21
  * @private
22
22
  * @ui5-restricted sap.fe
@@ -91,7 +91,7 @@ sap.ui.define([
91
91
  * @extends sap.ui.core.Control
92
92
  *
93
93
  * @author SAP SE
94
- * @version 1.102.1
94
+ * @version 1.102.2
95
95
  *
96
96
  * @constructor
97
97
  * @alias sap.ui.mdc.field.DefineConditionPanel
@@ -46,7 +46,7 @@ sap.ui.define([
46
46
  * @extends sap.ui.mdc.field.ConditionsType
47
47
  *
48
48
  * @author SAP SE
49
- * @version 1.102.1
49
+ * @version 1.102.2
50
50
  *
51
51
  * @since 1.96.0
52
52
  * @private
@@ -166,78 +166,25 @@ sap.ui.define([
166
166
 
167
167
  function _dateToTimestamp(vValue) {
168
168
 
169
- var oType = _getInternalType.call(this);
170
- var sBaseType = _getBaseType.call(this);
171
- var sDate = oType.formatValue(vValue, "string");
172
- var aParts;
173
- var iHour = 0;
174
- var iMinute = 0;
175
- var iSecond = 0;
176
- var iMillisecond = 0;
177
-
178
- if (sBaseType === BaseType.DateTime) {
179
- aParts = sDate.split("T");
180
- sDate = aParts[0];
181
- var sTime = aParts[1];
182
- aParts = sTime.split(":");
183
- iHour = parseInt(aParts[0]);
184
- iMinute = parseInt(aParts[1]);
185
- iSecond = parseInt(aParts[2]);
186
- // iMillisecond = parseInt(aParts[3]);
187
- }
188
-
189
- aParts = sDate.split("-");
190
- var iYear = parseInt(aParts[0]);
191
- var iMonth = parseInt(aParts[1]) - 1;
192
- var iDate = parseInt(aParts[2]);
193
- var iTimeStamp = new Date(iYear, iMonth, iDate, iHour, iMinute, iSecond, iMillisecond).getTime();
194
-
195
- return iTimeStamp;
169
+ var oType = _getValueType.call(this);
170
+ var oModelFormat = oType.getModelFormat();
171
+ var oDate = oModelFormat.parse(vValue); // All Date and DateTime types parse the model specific value into a JS-Date via ModelFormat. UTC is used, so the JS Date is timezone independent. For Date types UTC 00:00:00 is used.
172
+ return oDate.getTime();
196
173
 
197
174
  }
198
175
 
199
176
  function _timestampToDate(iTimeStamp) {
200
177
 
201
- var oType = _getInternalType.call(this);
202
- var sBaseType = _getBaseType.call(this);
178
+ var oType = _getValueType.call(this);
179
+ var oModelFormat = oType.getModelFormat();
203
180
  var oDate = new Date(iTimeStamp);
204
- var iYear = oDate.getFullYear();
205
- var iMonth = oDate.getMonth() + 1;
206
- var iDate = oDate.getDate();
207
- var sDate = iYear.toString() + "-" + ((iMonth < 10) ? "0" : "") + iMonth.toString() + "-" + ((iDate < 10) ? "0" : "") + iDate.toString();
208
-
209
- if (sBaseType === BaseType.DateTime) {
210
- var iHour = oDate.getHours();
211
- var iMinute = oDate.getMinutes();
212
- var iSecond = oDate.getSeconds();
213
- var iMillisecond = 0/*oDate.getMilliseconds()*/;
214
- sDate = sDate + "T" + ((iHour < 10) ? "0" : "") + iHour.toString() + ":" + ((iMinute < 10) ? "0" : "") + iMinute.toString() + ":" + ((iSecond < 10) ? "0" : "") + iSecond.toString() + ":" + ((iMillisecond < 100) ? "0" : "") + ((iMillisecond < 10) ? "0" : "") + iMillisecond.toString();
215
- }
216
- var vDate = oType.parseValue(sDate, "string");
181
+ oDate.setUTCMilliseconds(0); // ignore missiseconds for the moment (As not saved in variants)
182
+ var vDate = oModelFormat.format(oDate); // All Date and DateTime types parse the model specific value into a JS-Date via ModelFormat. UTC is used, so the JS Date is timezone independent. For Date types UTC 00:00:00 is used.
217
183
 
218
184
  return vDate;
219
185
 
220
186
  }
221
187
 
222
- function _getInternalType() {
223
-
224
- if (!this._oInternalType) {
225
- var oType = _getValueType.call(this);
226
- var sBaseType = _getBaseType.call(this);
227
- var sPattern;
228
-
229
- if (sBaseType === BaseType.DateTime) {
230
- sPattern = "yyyy-MM-dd'T'HH:mm:ss:SSS";
231
- } else {
232
- sPattern = "yyyy-MM-dd";
233
- }
234
- this._oInternalType = DateUtil.createInternalType(oType, sPattern);
235
- }
236
-
237
- return this._oInternalType;
238
-
239
- }
240
-
241
188
  DynamicDateRangeConditionsType.prototype.parseValue = function(oValue, sInternalType) {
242
189
 
243
190
  if (this._bDestroyed) { // if destroyed do nothing
@@ -84,7 +84,7 @@ sap.ui.define([
84
84
  * @implements sap.ui.core.IFormContent, sap.ui.core.ISemanticFormContent
85
85
  *
86
86
  * @author SAP SE
87
- * @version 1.102.1
87
+ * @version 1.102.2
88
88
  *
89
89
  * @constructor
90
90
  * @alias sap.ui.mdc.field.FieldBase
@@ -40,7 +40,7 @@ sap.ui.define([
40
40
  * @class Base type for the <code>FieldHelp</code> association in the <code>FieldBase</code> controls.
41
41
  * @extends sap.ui.mdc.Element
42
42
  * @implements sap.ui.core.PopupInterface
43
- * @version 1.102.1
43
+ * @version 1.102.2
44
44
  * @constructor
45
45
  * @abstract
46
46
  * @private
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @param {object} [mSettings] Initial settings for the new control
28
28
  * @class A <code>FieldInfoBase</code> element is a base class that shows any kind of information related to the <code>Field</code> control, for example, navigation targets or contact details.
29
29
  * @extends sap.ui.mdc.Element
30
- * @version 1.102.1
30
+ * @version 1.102.2
31
31
  * @constructor
32
32
  * @private
33
33
  * @since 1.54.0
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @param {object} [mSettings] Initial settings for the new control
24
24
  * @class The <code>FieldInput</code> control is used to render an input field inside a control based on {@link sap.ui.mdc.field.FieldBase FieldBase}.
25
25
  * @extends sap.m.Input
26
- * @version 1.102.1
26
+ * @version 1.102.2
27
27
  * @constructor
28
28
  * @abstract
29
29
  * @private
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  * @class Functions uses in <code>FieldInputRenderer</code> and <code>FieldMultiInputRenderer</code> to adjust aria attributes.
17
17
  *
18
18
  * @author SAP SE
19
- * @version 1.102.1
19
+ * @version 1.102.2
20
20
  * @since 1.86.0
21
21
  * @alias sap.ui.mdc.field.FieldInputRenderUtil
22
22
  *
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @param {object} [mSettings] Initial settings for the new control
24
24
  * @class The <code>FieldMultiInput</code> control is used to render a multi-input field inside a control based on {@link sap.ui.mdc.field.FieldBase FieldBase}.
25
25
  * @extends sap.m.MultiInput
26
- * @version 1.102.1
26
+ * @version 1.102.2
27
27
  * @constructor
28
28
  * @abstract
29
29
  * @private
@@ -74,7 +74,7 @@ sap.ui.define([
74
74
  * @param {object} [mSettings] Initial settings for the new control
75
75
  * @class A field help used in the <code>FieldHelp</code> association of controls based on {@link sap.ui.mdc.field.FieldBase FieldBase} that shows a value help dialog.
76
76
  * @extends sap.ui.mdc.field.FieldHelpBase
77
- * @version 1.102.1
77
+ * @version 1.102.2
78
78
  * @constructor
79
79
  * @private
80
80
  * @ui5-restricted sap.fe