@sapui5/sap.suite.ui.commons 1.141.0 → 1.142.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/sap/suite/ui/commons/.library +1 -1
- package/src/sap/suite/ui/commons/AriaProperties.js +1 -1
- package/src/sap/suite/ui/commons/CalculationBuilder.js +18 -12
- package/src/sap/suite/ui/commons/CalculationBuilderExpression.js +11 -7
- package/src/sap/suite/ui/commons/CalculationBuilderFunction.js +1 -1
- package/src/sap/suite/ui/commons/CalculationBuilderGroup.js +1 -1
- package/src/sap/suite/ui/commons/CalculationBuilderInput.js +5 -5
- package/src/sap/suite/ui/commons/CalculationBuilderItem.js +26 -7
- package/src/sap/suite/ui/commons/CalculationBuilderValidationResult.js +1 -1
- package/src/sap/suite/ui/commons/CalculationBuilderVariable.js +1 -1
- package/src/sap/suite/ui/commons/CloudFilePicker.js +21 -21
- package/src/sap/suite/ui/commons/MicroProcessFlow.js +2 -2
- package/src/sap/suite/ui/commons/MicroProcessFlowItem.js +7 -9
- package/src/sap/suite/ui/commons/Timeline.js +22 -24
- package/src/sap/suite/ui/commons/TimelineItemRenderer.js +12 -2
- package/src/sap/suite/ui/commons/collaboration/ServiceContainer.js +18 -2
- package/src/sap/suite/ui/commons/collaboration/TeamsHelperService.js +152 -3
- package/src/sap/suite/ui/commons/collaboration/UniversalCollaborationBar.js +366 -0
- package/src/sap/suite/ui/commons/collaboration/flpplugins/msplugin/Component-preload.js +5 -2
- package/src/sap/suite/ui/commons/flexibility/changeHandler/PropertyChangeMapper.js +1 -1
- package/src/sap/suite/ui/commons/imageeditor/CropCustomShapeHistoryItem.js +1 -1
- package/src/sap/suite/ui/commons/imageeditor/CropEllipseHistoryItem.js +1 -1
- package/src/sap/suite/ui/commons/imageeditor/CropRectangleHistoryItem.js +1 -1
- package/src/sap/suite/ui/commons/imageeditor/CustomSizeItem.js +1 -1
- package/src/sap/suite/ui/commons/imageeditor/FilterHistoryItem.js +1 -1
- package/src/sap/suite/ui/commons/imageeditor/FlipHistoryItem.js +1 -1
- package/src/sap/suite/ui/commons/imageeditor/HistoryItem.js +1 -1
- package/src/sap/suite/ui/commons/imageeditor/ImageEditor.js +1 -1
- package/src/sap/suite/ui/commons/imageeditor/ImageEditorContainer.js +1 -1
- package/src/sap/suite/ui/commons/imageeditor/ImageEditorResponsiveContainer.js +1 -1
- package/src/sap/suite/ui/commons/imageeditor/ResizeHistoryItem.js +1 -1
- package/src/sap/suite/ui/commons/imageeditor/RotateHistoryItem.js +1 -1
- package/src/sap/suite/ui/commons/library.js +1 -1
- package/src/sap/suite/ui/commons/messagebundle.properties +16 -1
- package/src/sap/suite/ui/commons/messagebundle_en.properties +3 -0
- package/src/sap/suite/ui/commons/networkgraph/Graph.js +105 -5
- package/src/sap/suite/ui/commons/networkgraph/Node.js +33 -11
- package/src/sap/suite/ui/commons/networkgraph/util/DragDropManager.js +197 -0
- package/src/sap/suite/ui/commons/statusindicator/Circle.js +1 -1
- package/src/sap/suite/ui/commons/statusindicator/CustomShape.js +1 -1
- package/src/sap/suite/ui/commons/statusindicator/DiscreteThreshold.js +1 -1
- package/src/sap/suite/ui/commons/statusindicator/FillingOption.js +1 -1
- package/src/sap/suite/ui/commons/statusindicator/LibraryShape.js +1 -1
- package/src/sap/suite/ui/commons/statusindicator/Path.js +1 -1
- package/src/sap/suite/ui/commons/statusindicator/PropertyThreshold.js +1 -1
- package/src/sap/suite/ui/commons/statusindicator/Rectangle.js +1 -1
- package/src/sap/suite/ui/commons/statusindicator/Shape.js +1 -1
- package/src/sap/suite/ui/commons/statusindicator/ShapeGroup.js +1 -1
- package/src/sap/suite/ui/commons/statusindicator/SimpleShape.js +1 -1
- package/src/sap/suite/ui/commons/statusindicator/StatusIndicator.js +1 -1
- package/src/sap/suite/ui/commons/taccount/TAccount.js +1 -1
- package/src/sap/suite/ui/commons/taccount/TAccountGroup.js +1 -1
- package/src/sap/suite/ui/commons/taccount/TAccountItem.js +1 -1
- package/src/sap/suite/ui/commons/taccount/TAccountItemProperty.js +1 -1
- package/src/sap/suite/ui/commons/taccount/TAccountPanel.js +1 -1
- package/src/sap/suite/ui/commons/themes/base/CalculationBuilderItem.less +11 -3
- package/src/sap/suite/ui/commons/themes/base/CollaborationPopover.less +29 -1
- package/src/sap/suite/ui/commons/themes/base/NetworkGraph.less +5 -0
- package/src/sap/suite/ui/commons/windowmessages/CollaborationMessageBroker.js +3 -3
- package/src/sap/suite/ui/commons/windowmessages/CollaborationMessageConsumer.js +5 -4
package/package.json
CHANGED
|
@@ -134,7 +134,7 @@ sap.ui.define([
|
|
|
134
134
|
* @extends sap.ui.core.Control
|
|
135
135
|
*
|
|
136
136
|
* @author SAP SE
|
|
137
|
-
* @version 1.
|
|
137
|
+
* @version 1.142.1
|
|
138
138
|
* @since 1.56.0
|
|
139
139
|
*
|
|
140
140
|
* @constructor
|
|
@@ -1089,19 +1089,25 @@ sap.ui.define([
|
|
|
1089
1089
|
});
|
|
1090
1090
|
};
|
|
1091
1091
|
|
|
1092
|
-
CalculationBuilder.prototype._isTokenAllowed = function (sKey) {
|
|
1092
|
+
CalculationBuilder.prototype._isTokenAllowed = function (sKey, bIsInputStringGeneration) {
|
|
1093
1093
|
sKey = (sKey || "").toLowerCase();
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1094
|
+
if (bIsInputStringGeneration) {
|
|
1095
|
+
// New logic for string generation
|
|
1096
|
+
// Check if the token is a custom function by searching the aggregation
|
|
1097
|
+
var bCustomFunction = this.getFunctions().some(function (oFunction) {
|
|
1098
|
+
return oFunction.getKey().toLowerCase() === sKey;
|
|
1099
|
+
});
|
|
1100
|
+
// If this is a custom function and its key is present in _mDisabledTokens,
|
|
1101
|
+
// allow it (custom functions are not blocked by disabledDefaultTokens)
|
|
1102
|
+
if (bCustomFunction && this._mDisabledTokens[sKey]) {
|
|
1103
|
+
return true;
|
|
1104
|
+
}
|
|
1105
|
+
// For all other cases, block if present in _mDisabledTokens
|
|
1106
|
+
return !this._mDisabledTokens[sKey];
|
|
1107
|
+
} else {
|
|
1108
|
+
// Old logic for existing other cases
|
|
1109
|
+
return !this._mDisabledTokens[sKey];
|
|
1102
1110
|
}
|
|
1103
|
-
// For all other cases, block if present in _mDisabledTokens
|
|
1104
|
-
return !this._mDisabledTokens[sKey];
|
|
1105
1111
|
};
|
|
1106
1112
|
|
|
1107
1113
|
CalculationBuilder.prototype.setDisabledDefaultTokens = function (sValue) {
|
|
@@ -148,7 +148,7 @@ sap.ui.define([
|
|
|
148
148
|
* @extends sap.ui.core.Control
|
|
149
149
|
*
|
|
150
150
|
* @author SAP SE
|
|
151
|
-
* @version 1.
|
|
151
|
+
* @version 1.142.1
|
|
152
152
|
* @since 1.56.0
|
|
153
153
|
*
|
|
154
154
|
* @constructor
|
|
@@ -1592,7 +1592,7 @@ sap.ui.define([
|
|
|
1592
1592
|
this.getItems().forEach(function (oItem) {
|
|
1593
1593
|
aDomRefs.push(oItem.getFocusDomRef());
|
|
1594
1594
|
if (oItem.isExpandable()) {
|
|
1595
|
-
aDomRefs.push(oItem.$("expandbutton"));
|
|
1595
|
+
aDomRefs.push(oItem.$("expandbutton")[0]);
|
|
1596
1596
|
}
|
|
1597
1597
|
});
|
|
1598
1598
|
aDomRefs.push(this._getNewItem().getFocusDomRef());
|
|
@@ -1650,10 +1650,14 @@ sap.ui.define([
|
|
|
1650
1650
|
CalculationBuilderExpression.prototype._printErrors = function () {
|
|
1651
1651
|
this.getItems().forEach(function (oItem) {
|
|
1652
1652
|
var oError = oItem._getItemError(),
|
|
1653
|
-
$this = oItem.$()
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
|
|
1653
|
+
$this = oItem.$();
|
|
1654
|
+
if (oError) {
|
|
1655
|
+
oItem._oArrowNavigtionInvisibleText.setText(oResourceBundle.getText("CALCULATION_BUILDER_NEGATIVE_ACTION") + " " + oResourceBundle.getText("CALCULATION_BUILDER_NAVIGATION"));
|
|
1656
|
+
$this.addClass("sapCalculationBuilderItemErrorSyntax");
|
|
1657
|
+
} else {
|
|
1658
|
+
oItem._oArrowNavigtionInvisibleText.setText(oResourceBundle.getText("CALCULATION_BUILDER_NAVIGATION"));
|
|
1659
|
+
$this.removeClass("sapCalculationBuilderItemErrorSyntax");
|
|
1660
|
+
}
|
|
1657
1661
|
});
|
|
1658
1662
|
|
|
1659
1663
|
if (this.getParent().getLayoutType() === LayoutTypes.VisualOnly) {
|
|
@@ -1662,7 +1666,7 @@ sap.ui.define([
|
|
|
1662
1666
|
};
|
|
1663
1667
|
|
|
1664
1668
|
CalculationBuilderExpression.prototype._validateSyntax = function (mParameters) {
|
|
1665
|
-
//Usually The map creation is done on the onBeforeRendering hook of this class but this method is getting invoked even before the onBeforeRendering is called
|
|
1669
|
+
//Usually The map creation is done on the onBeforeRendering hook of this class but this method is getting invoked even before the onBeforeRendering is called
|
|
1666
1670
|
//Its getting called from the "sap.suite.ui.commons.CalculationBuilder.js"
|
|
1667
1671
|
//To handle this case we are calling the _createMap function to ensure all maps are created appropriately
|
|
1668
1672
|
this._createMap();
|
|
@@ -941,7 +941,7 @@ sap.ui.define([
|
|
|
941
941
|
for (var i = 0; i < aItems.length; i++) {
|
|
942
942
|
var oItem = aItems[i],
|
|
943
943
|
sKey = oItem.getKey(),
|
|
944
|
-
bIsFunction = this._isFunction(sKey);
|
|
944
|
+
bIsFunction = this._isFunction(sKey, true);
|
|
945
945
|
|
|
946
946
|
if (bCreateInputText) {
|
|
947
947
|
oError = jQuery.grep(mParameters.errors, function (oItem) { // eslint-disable-line
|
|
@@ -1360,13 +1360,13 @@ sap.ui.define([
|
|
|
1360
1360
|
return this.$("input").text();
|
|
1361
1361
|
};
|
|
1362
1362
|
|
|
1363
|
-
CalculationBuilderInput.prototype._isFunction = function (sKey) {
|
|
1364
|
-
return !!this._getFunction(sKey);
|
|
1363
|
+
CalculationBuilderInput.prototype._isFunction = function (sKey, bIsInputStringGeneration) {
|
|
1364
|
+
return !!this._getFunction(sKey, bIsInputStringGeneration);
|
|
1365
1365
|
};
|
|
1366
1366
|
|
|
1367
|
-
CalculationBuilderInput.prototype._getFunction = function (sKey) {
|
|
1367
|
+
CalculationBuilderInput.prototype._getFunction = function (sKey, bIsInputStringGeneration) {
|
|
1368
1368
|
var oParent = this.getParent();
|
|
1369
|
-
return oParent && oParent._isTokenAllowed(sKey) && oParent._getFunctionDefinition(sKey);
|
|
1369
|
+
return oParent && oParent._isTokenAllowed(sKey, bIsInputStringGeneration) && oParent._getFunctionDefinition(sKey);
|
|
1370
1370
|
};
|
|
1371
1371
|
|
|
1372
1372
|
CalculationBuilderInput.prototype._storeCurrent = function (sValue) {
|
|
@@ -14,11 +14,12 @@ sap.ui.define([
|
|
|
14
14
|
"sap/base/security/encodeXML",
|
|
15
15
|
"./Utils",
|
|
16
16
|
"sap/ui/core/Lib",
|
|
17
|
+
"sap/ui/core/InvisibleText",
|
|
17
18
|
"sap/ui/thirdparty/jqueryui/jquery-ui-core",
|
|
18
19
|
"sap/ui/thirdparty/jqueryui/jquery-ui-widget",
|
|
19
20
|
"sap/ui/thirdparty/jqueryui/jquery-ui-mouse",
|
|
20
21
|
"sap/ui/thirdparty/jqueryui/jquery-ui-draggable"
|
|
21
|
-
], function (jQuery, library, BaseObject, Control, MessageBox, encodeXML, Utils, CoreLib) {
|
|
22
|
+
], function (jQuery, library, BaseObject, Control, MessageBox, encodeXML, Utils, CoreLib, InvisibleText) {
|
|
22
23
|
"use strict";
|
|
23
24
|
|
|
24
25
|
var ItemType = library.CalculationBuilderItemType,
|
|
@@ -39,7 +40,7 @@ sap.ui.define([
|
|
|
39
40
|
* @extends sap.ui.core.Control
|
|
40
41
|
*
|
|
41
42
|
* @author SAP SE
|
|
42
|
-
* @version 1.
|
|
43
|
+
* @version 1.142.1
|
|
43
44
|
* @since 1.56.0
|
|
44
45
|
*
|
|
45
46
|
* @constructor
|
|
@@ -105,12 +106,19 @@ sap.ui.define([
|
|
|
105
106
|
var fnRenderExpandButton = function (oRm) {
|
|
106
107
|
oRm.openStart("div");
|
|
107
108
|
oRm.class("sapCalculationBuilderItemExpandButtonWrapper");
|
|
108
|
-
oRm.attr("title",oResourceBundle.getText("CALCULATION_BUILDER_EXPAND_BUTTON_TITLE"));
|
|
109
109
|
oRm.openEnd();
|
|
110
110
|
oRm.openStart("div");
|
|
111
111
|
oRm.attr("id",this.getId() + "-expandbutton");
|
|
112
112
|
oRm.class("sapCalculationBuilderItemExpandButton").class(sDisable);
|
|
113
113
|
oRm.attr("tabindex", "-1");
|
|
114
|
+
if (!this._oExpandButtonText) {
|
|
115
|
+
this._oExpandButtonText = new InvisibleText();
|
|
116
|
+
this._oExpandButtonText.toStatic();
|
|
117
|
+
this._oExpandButtonText.setText(oResourceBundle.getText("CALCULATION_BUILDER_EXPAND_BUTTON_TITLE"));
|
|
118
|
+
}
|
|
119
|
+
oRm.attr("aria-labelledby", this._oExpandButtonText.getId());
|
|
120
|
+
oRm.attr("aria-describedby", this._oArrowNavigtionInvisibleText.getId());
|
|
121
|
+
oRm.attr("role", "button");
|
|
114
122
|
oRm.openEnd();
|
|
115
123
|
|
|
116
124
|
if (!this._bReadOnly) {
|
|
@@ -146,7 +154,8 @@ sap.ui.define([
|
|
|
146
154
|
oRm.class("sapCalculationBuilderItemContent");
|
|
147
155
|
oRm.attr("title", this.getParent()._operatorTooltip[sLabel] ? oResourceBundle.getText(this.getParent()._operatorTooltip[sLabel]) : "");
|
|
148
156
|
if (this._bIsNew || this._isEmpty()) {
|
|
149
|
-
oRm.attr("title",oResourceBundle.getText("CALCULATION_BUILDER_NEW_ITEM_TITLE"));
|
|
157
|
+
oRm.attr("title", oResourceBundle.getText("CALCULATION_BUILDER_NEW_ITEM_TITLE"));
|
|
158
|
+
fnGetItemAriaLabel(oRm, "CALCULATION_BUILDER_NEW_ITEM_TITLE");
|
|
150
159
|
} else if (oItemsWithAriaLabel[sLabel]) {
|
|
151
160
|
fnGetItemAriaLabel(oRm, "CALCULATION_BUILDER_" + oItemsWithAriaLabel[sLabel] + "_ARIA_LABEL");
|
|
152
161
|
}
|
|
@@ -251,10 +260,15 @@ sap.ui.define([
|
|
|
251
260
|
oRm.attr("id",this.getId());
|
|
252
261
|
oRm.attr("tabindex", sTabIndexAttr);
|
|
253
262
|
oRm.attr("title", sTooltipAttr);
|
|
254
|
-
oRm.attr("role",
|
|
263
|
+
oRm.attr("role", "button");
|
|
264
|
+
if (!this._oCalculationBuilderItemText) {
|
|
265
|
+
this._oCalculationBuilderItemText = new InvisibleText();
|
|
266
|
+
this._oCalculationBuilderItemText.toStatic();
|
|
267
|
+
this._oCalculationBuilderItemText.setText(this._getLabel());
|
|
268
|
+
}
|
|
269
|
+
oRm.attr("aria-labelledby", this._oCalculationBuilderItemText.getId());
|
|
270
|
+
oRm.attr("aria-describedby", this._oArrowNavigtionInvisibleText.getId());
|
|
255
271
|
oRm.openEnd();
|
|
256
|
-
// for now we can't add data-sap-ui as it collide with dragging selected items (for unknown reason)
|
|
257
|
-
//sHtml += "<div " + " class=\"" + this._getClass(!!oError) + "\" data-sap-ui=\"" + this.getId() + "\" id=\"" + this.getId() + "\" tabindex=\"" + (bIsItemInBuilder ? "-1" : "0") + "\"" + sTooltipAttr + ">";
|
|
258
272
|
this._innerRender(oRm);
|
|
259
273
|
oRm.close("div");
|
|
260
274
|
};
|
|
@@ -265,6 +279,11 @@ sap.ui.define([
|
|
|
265
279
|
CalculationBuilderItem.prototype.init = function () {
|
|
266
280
|
// Indicates whether the item is NewItem
|
|
267
281
|
this._bIsNew = false;
|
|
282
|
+
if (!this._oArrowNavigtionInvisibleText) {
|
|
283
|
+
this._oArrowNavigtionInvisibleText = new InvisibleText();
|
|
284
|
+
this._oArrowNavigtionInvisibleText.toStatic();
|
|
285
|
+
this._oArrowNavigtionInvisibleText.setText(oResourceBundle.getText("CALCULATION_BUILDER_NAVIGATION"));
|
|
286
|
+
}
|
|
268
287
|
};
|
|
269
288
|
|
|
270
289
|
CalculationBuilderItem.prototype.onBeforeRendering = function () {
|
|
@@ -33,7 +33,8 @@ sap.ui.define([
|
|
|
33
33
|
"sap/m/OverflowToolbar",
|
|
34
34
|
"sap/m/ToolbarSpacer",
|
|
35
35
|
"sap/m/Title",
|
|
36
|
-
"sap/m/table/columnmenu/
|
|
36
|
+
"sap/m/table/columnmenu/QuickSort",
|
|
37
|
+
"sap/m/table/columnmenu/QuickSortItem",
|
|
37
38
|
"sap/m/table/columnmenu/Menu",
|
|
38
39
|
"sap/ui/core/CustomData",
|
|
39
40
|
"sap/ui/model/Sorter",
|
|
@@ -77,8 +78,9 @@ sap.ui.define([
|
|
|
77
78
|
OverflowToolbar,
|
|
78
79
|
ToolbarSpacer,
|
|
79
80
|
Title,
|
|
80
|
-
|
|
81
|
-
|
|
81
|
+
QuickSort,
|
|
82
|
+
QuickSortItem,
|
|
83
|
+
ColumnMenu,
|
|
82
84
|
CustomData,
|
|
83
85
|
Sorter,
|
|
84
86
|
SearchField,
|
|
@@ -118,7 +120,7 @@ sap.ui.define([
|
|
|
118
120
|
* @class
|
|
119
121
|
* @public
|
|
120
122
|
* @internal
|
|
121
|
-
* @version 1.
|
|
123
|
+
* @version 1.142.1
|
|
122
124
|
*/
|
|
123
125
|
var CloudFilePicker = Dialog.extend("sap.suite.ui.commons.CloudFilePicker", {
|
|
124
126
|
metadata: {
|
|
@@ -707,23 +709,19 @@ sap.ui.define([
|
|
|
707
709
|
if (sColumnType === "CreatedByUser" || sColumnType === "FileShareItemContentSize" || sColumnType === "FileShareItemContentType") {
|
|
708
710
|
return;
|
|
709
711
|
}
|
|
710
|
-
var oColumnMenu = new
|
|
711
|
-
|
|
712
|
-
new
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
}),
|
|
718
|
-
new ActionItem({
|
|
719
|
-
icon: "sap-icon://sort-descending",
|
|
720
|
-
press: function() {
|
|
721
|
-
this._fHandleSorting(oColumn, false);
|
|
712
|
+
var oColumnMenu = new ColumnMenu({
|
|
713
|
+
quickActions: [
|
|
714
|
+
new QuickSort({
|
|
715
|
+
items: new QuickSortItem({key: sColumnType, label: oColumn.getHeader().getText()}),
|
|
716
|
+
change: function(oEvent) {
|
|
717
|
+
const sSortOrder = oEvent.getParameter("item").getSortOrder();
|
|
718
|
+
this._fHandleSorting(oColumn, sSortOrder);
|
|
722
719
|
}.bind(this)
|
|
723
720
|
})
|
|
724
721
|
]
|
|
725
722
|
});
|
|
726
723
|
|
|
724
|
+
oColumnMenu.getQuickActions()[0].getItems()[0].setSortOrder(oColumn.getSortIndicator());
|
|
727
725
|
oColumnMenu.openBy(oColumn);
|
|
728
726
|
}.bind(this));
|
|
729
727
|
|
|
@@ -962,16 +960,18 @@ sap.ui.define([
|
|
|
962
960
|
oApproveDialog.open();
|
|
963
961
|
};
|
|
964
962
|
|
|
965
|
-
CloudFilePicker.prototype._fHandleSorting = function(oColumn,
|
|
963
|
+
CloudFilePicker.prototype._fHandleSorting = function(oColumn, sSortOrder) {
|
|
966
964
|
this._clearCheckboxFileSelections();
|
|
967
|
-
var
|
|
968
|
-
if (
|
|
969
|
-
|
|
965
|
+
var bIsAsc = false
|
|
966
|
+
if (sSortOrder === SortOrder.Ascending) {
|
|
967
|
+
bIsAsc = true;
|
|
968
|
+
} else if (sSortOrder === SortOrder.Descending) {
|
|
969
|
+
bIsAsc = false;
|
|
970
970
|
}
|
|
971
971
|
this.oTableControl.getColumns().forEach(function(oColumn){
|
|
972
972
|
oColumn.setSortIndicator("None");
|
|
973
973
|
});
|
|
974
|
-
oColumn.setSortIndicator(
|
|
974
|
+
oColumn.setSortIndicator(sSortOrder);
|
|
975
975
|
var sSortProperty = oColumn.data("bindingProperty");
|
|
976
976
|
var oItemBinding = this.oTableControl.getBinding("items");
|
|
977
977
|
oItemBinding.sort([
|
|
@@ -47,7 +47,7 @@ sap.ui.define([
|
|
|
47
47
|
* @extends sap.ui.core.Control
|
|
48
48
|
*
|
|
49
49
|
* @author SAP SE
|
|
50
|
-
* @version 1.
|
|
50
|
+
* @version 1.142.1
|
|
51
51
|
*
|
|
52
52
|
* @constructor
|
|
53
53
|
* @public
|
|
@@ -107,7 +107,7 @@ sap.ui.define([
|
|
|
107
107
|
|
|
108
108
|
oRM.openStart("div", oMicroProcessFlow);
|
|
109
109
|
|
|
110
|
-
oRM.attr("role", "
|
|
110
|
+
oRM.attr("role", "list");
|
|
111
111
|
oRM.attr("aria-roledescription", oResourceBundle.getText("ACC_CTR_TYPE_MICRO_PROCESS_FLOW"));
|
|
112
112
|
oRM.attr("aria-label",sLabel);
|
|
113
113
|
|
|
@@ -38,7 +38,7 @@ sap.ui.define([
|
|
|
38
38
|
* @extends sap.ui.core.Control
|
|
39
39
|
*
|
|
40
40
|
* @author SAP SE
|
|
41
|
-
* @version 1.
|
|
41
|
+
* @version 1.142.1
|
|
42
42
|
*
|
|
43
43
|
* @constructor
|
|
44
44
|
* @public
|
|
@@ -202,9 +202,12 @@ sap.ui.define([
|
|
|
202
202
|
oRM.attr("tabindex", "0");
|
|
203
203
|
oRM.class("sapSuiteUiCommonsMicroProcessFlowItem").class("sapSuiteUiCommonsMicroProcessFlowItem" + oMicroProcessFlowItem.getState());
|
|
204
204
|
oRM.attr("aria-label", oMicroProcessFlowItem._getAriaText());
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
205
|
+
if (oMicroProcessFlowItem.hasListeners("press")) {
|
|
206
|
+
oRM.attr("role", "button");
|
|
207
|
+
oRM.attr("aria-roledescription", oResourceBundle.getText("MICRO_PROCESS_FLOW_ITEM_ACC_BUTTON",[oMicroProcessFlowItem._iIndex,oMicroProcessFlowItem._iItemsCount]));
|
|
208
|
+
} else {
|
|
209
|
+
oRM.attr("role", "listitem");
|
|
210
|
+
}
|
|
208
211
|
oRM.openEnd();
|
|
209
212
|
|
|
210
213
|
if (sIcon) {
|
|
@@ -242,7 +245,6 @@ sap.ui.define([
|
|
|
242
245
|
$item.attr("tabindex", 0);
|
|
243
246
|
}
|
|
244
247
|
$item.attr("aria-label", sAriaLabel);
|
|
245
|
-
$item.attr("role", "option");
|
|
246
248
|
$item.attr("aria-posinset", this._iIndex);
|
|
247
249
|
$item.attr("aria-setsize", this._iItemsCount);
|
|
248
250
|
this._setItemContentAccessibility();
|
|
@@ -262,8 +264,6 @@ sap.ui.define([
|
|
|
262
264
|
|
|
263
265
|
if (bHasPressEvent) {
|
|
264
266
|
$item.css("cursor", "pointer");
|
|
265
|
-
$item.attr("role", "button");
|
|
266
|
-
$item.attr("aria-hidden", "true");
|
|
267
267
|
}
|
|
268
268
|
};
|
|
269
269
|
|
|
@@ -355,11 +355,9 @@ sap.ui.define([
|
|
|
355
355
|
var selectedItem = document.getElementsByClassName('sapSuiteMicroProcessFlowItemSelected')[0];
|
|
356
356
|
var item = this._getAccessibleItem()[0];
|
|
357
357
|
if (selectedItem) {
|
|
358
|
-
selectedItem.setAttribute("aria-selected", false);
|
|
359
358
|
selectedItem.classList.remove("sapSuiteMicroProcessFlowItemSelected");
|
|
360
359
|
}
|
|
361
360
|
if (item.tabIndex == "0") {
|
|
362
|
-
item.setAttribute("aria-selected", true);
|
|
363
361
|
item.classList.add("sapSuiteMicroProcessFlowItemSelected");
|
|
364
362
|
}
|
|
365
363
|
};
|
|
@@ -33,9 +33,10 @@ sap.ui.define([
|
|
|
33
33
|
"sap/ui/core/Configuration",
|
|
34
34
|
"./TimelineRenderer",
|
|
35
35
|
"sap/ui/core/Lib",
|
|
36
|
-
"sap/base/i18n/Localization"
|
|
36
|
+
"sap/base/i18n/Localization",
|
|
37
|
+
"sap/base/util/deepEqual"
|
|
37
38
|
], function (jQuery, library, Control, ResizeHandler, DateFormat, ClientListBinding, FilterType, TimelineNavigator, DateUtils, ManagedObjectRegister,
|
|
38
|
-
JSONModel, Sorter, Filter, FilterOperator, ManagedObject, TimelineItem, TimelineRenderManager, ScrollEnablement, BaseObject, assert, Log, UI5Date, Configuration, TimelineRenderer, CoreLib, Localization) {
|
|
39
|
+
JSONModel, Sorter, Filter, FilterOperator, ManagedObject, TimelineItem, TimelineRenderManager, ScrollEnablement, BaseObject, assert, Log, UI5Date, Configuration, TimelineRenderer, CoreLib, Localization, deepEqual) {
|
|
39
40
|
"use strict";
|
|
40
41
|
|
|
41
42
|
var ScrollingFadeout = library.TimelineScrollingFadeout,
|
|
@@ -1183,7 +1184,7 @@ sap.ui.define([
|
|
|
1183
1184
|
aCurrentFilters = [];
|
|
1184
1185
|
if (oBinding) {
|
|
1185
1186
|
if (!bResetAll) {
|
|
1186
|
-
aFilters = oBinding.aFilters.length != 0 ? [...oBinding.aFilters] : this.aPrevFilters || [];
|
|
1187
|
+
aFilters = oBinding.aFilters.length != 0 ? [...oBinding.aFilters] : this.aPrevFilters.map(val => val) || [];
|
|
1187
1188
|
}
|
|
1188
1189
|
|
|
1189
1190
|
if (this._dataFilter) {
|
|
@@ -1214,6 +1215,10 @@ sap.ui.define([
|
|
|
1214
1215
|
aFilters.push(this._filter);
|
|
1215
1216
|
}
|
|
1216
1217
|
if (aFilters.length) {
|
|
1218
|
+
if(deepEqual(aFilters, this.aPrevFilters)){
|
|
1219
|
+
this._setBusy(false);
|
|
1220
|
+
return;
|
|
1221
|
+
}
|
|
1217
1222
|
this.aPrevFilters = aFilters.map(function (val) { return val; });
|
|
1218
1223
|
oBinding.filter(aFilters, FilterType.Control);
|
|
1219
1224
|
} else {
|
|
@@ -1603,16 +1608,16 @@ sap.ui.define([
|
|
|
1603
1608
|
*/
|
|
1604
1609
|
Timeline.prototype._clearFilter = function () {
|
|
1605
1610
|
var fnClearTimeRangeFilter = function () {
|
|
1606
|
-
var
|
|
1607
|
-
oSlider = this._objects.getTimeRangeSlider();
|
|
1611
|
+
var oSlider = this._objects.getTimeRangeSlider();
|
|
1608
1612
|
this._startDate = null;
|
|
1609
1613
|
this._endDate = null;
|
|
1610
1614
|
this._rangeMessage = null;
|
|
1611
1615
|
|
|
1612
1616
|
oSlider.setRange([oSlider.getMin(), oSlider.getMax()]);
|
|
1613
1617
|
|
|
1618
|
+
// Fire event but don't let it prevent filter clearing
|
|
1614
1619
|
if (this._useModelFilter()) {
|
|
1615
|
-
|
|
1620
|
+
this._fireSelectionChange({
|
|
1616
1621
|
clear: true,
|
|
1617
1622
|
timeKeys: {
|
|
1618
1623
|
from: null,
|
|
@@ -1621,40 +1626,33 @@ sap.ui.define([
|
|
|
1621
1626
|
type: TimelineFilterType.Range
|
|
1622
1627
|
});
|
|
1623
1628
|
}
|
|
1624
|
-
return
|
|
1629
|
+
return true; // Always return true to ensure filter clearing
|
|
1625
1630
|
}.bind(this),
|
|
1626
1631
|
fnClearDataFilter = function () {
|
|
1627
|
-
var bExecuteDefault;
|
|
1628
1632
|
|
|
1629
1633
|
this._currentFilterKeys = [];
|
|
1630
1634
|
if (this._useModelFilter()) {
|
|
1631
|
-
|
|
1635
|
+
this._fireSelectionChange({
|
|
1632
1636
|
clear: true,
|
|
1633
1637
|
selectedItems: [],
|
|
1634
1638
|
selectedItem: "",
|
|
1635
1639
|
type: TimelineFilterType.Data
|
|
1636
1640
|
});
|
|
1637
1641
|
}
|
|
1638
|
-
return
|
|
1642
|
+
return true; // Always return true to ensure filter clearing
|
|
1639
1643
|
}.bind(this);
|
|
1640
1644
|
|
|
1641
|
-
|
|
1642
|
-
|
|
1645
|
+
// Execute both clear functions
|
|
1646
|
+
fnClearDataFilter(),
|
|
1647
|
+
fnClearTimeRangeFilter();
|
|
1643
1648
|
|
|
1644
|
-
|
|
1645
|
-
|
|
1646
|
-
if (bDataDefault || bRangeDefault) {
|
|
1647
|
-
if (bDataDefault) {
|
|
1649
|
+
// Always clear filters regardless of event handling
|
|
1650
|
+
this._customFilterMessage = "";
|
|
1648
1651
|
this._dataFilter = null;
|
|
1649
|
-
}
|
|
1650
|
-
|
|
1651
|
-
if (bRangeDefault) {
|
|
1652
1652
|
this._rangeDataFilter = null;
|
|
1653
|
-
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
this.invalidate();
|
|
1657
|
-
}
|
|
1653
|
+
|
|
1654
|
+
/*force clear custom filters*/
|
|
1655
|
+
this.recreateFilter(true);
|
|
1658
1656
|
|
|
1659
1657
|
//reset filter
|
|
1660
1658
|
// this is a bit overkill but we are so far unable to reset filter to it's init state without some filter's internal errors
|
|
@@ -366,7 +366,6 @@ sap.ui.define([
|
|
|
366
366
|
eTimelineItem.setAttribute("aria-level", 2);
|
|
367
367
|
}
|
|
368
368
|
eTimelineItem.addClass("sapSuiteUiCommonsTimelineItem");
|
|
369
|
-
eTimelineItem.setAttribute("aria-labelledby", oTimelineItem.getAriaLabelledBy().join(" "), true);
|
|
370
369
|
|
|
371
370
|
if (oTimelineItem._isLast) {
|
|
372
371
|
eTimelineItem.addClass("sapSuiteUiCommonsTimelineLastItem");
|
|
@@ -476,6 +475,7 @@ sap.ui.define([
|
|
|
476
475
|
eShellItem.addChild(oTimelineItem._objects.getInfoBar());
|
|
477
476
|
eShellItem.addChild(eHeaderWrapper);
|
|
478
477
|
|
|
478
|
+
eHeaderWrapper.setId(oTimelineItem.getId() + "-headerWrapper");
|
|
479
479
|
eHeaderWrapper.addClass("sapSuiteUiCommonsTimelineItemHeaderWrapper");
|
|
480
480
|
|
|
481
481
|
oUserPicture = oTimelineItem._getUserPictureControl();
|
|
@@ -511,7 +511,7 @@ sap.ui.define([
|
|
|
511
511
|
eDateTime.addChildEscaped(this._getFormatedDateTime(oTimelineItem));
|
|
512
512
|
eDateTime.setAttribute("aria-label", sAriaLabelForDateTime, false);
|
|
513
513
|
eHeader.addChild(eDateTime);
|
|
514
|
-
|
|
514
|
+
eBody.setId(oTimelineItem.getId() + "-shellbody");
|
|
515
515
|
eBody.addClass("sapSuiteUiCommonsTimelineItemShellBody");
|
|
516
516
|
eShellItem.addChild(eBody);
|
|
517
517
|
|
|
@@ -598,6 +598,16 @@ sap.ui.define([
|
|
|
598
598
|
}
|
|
599
599
|
}
|
|
600
600
|
eTimelineItem.setAttribute("aria-label", sGroupHeader, false);
|
|
601
|
+
} else {
|
|
602
|
+
const aAriaLabelledByIds = [oTimelineItem.getId() + "-headerWrapper"];
|
|
603
|
+
if (!oTimelineItem.getEmbeddedControl()) {
|
|
604
|
+
aAriaLabelledByIds.push(oTimelineItem.getId() + "-shellbody");
|
|
605
|
+
}
|
|
606
|
+
var aLabelledBy = [...aAriaLabelledByIds, ...oTimelineItem.getAriaLabelledBy()];
|
|
607
|
+
if (oTimelineItem._objects && oTimelineItem._objects.getLineIcon) {
|
|
608
|
+
aLabelledBy.push(oTimelineItem._objects.getLineIcon().getId());
|
|
609
|
+
}
|
|
610
|
+
eTimelineItem.setAttribute("aria-labelledby", aLabelledBy.join(" "));
|
|
601
611
|
}
|
|
602
612
|
};
|
|
603
613
|
|
|
@@ -61,8 +61,24 @@ sap.ui.define([
|
|
|
61
61
|
return oServicePromise;
|
|
62
62
|
}
|
|
63
63
|
if (UshellContainer && UshellContainer.inAppRuntime()) {
|
|
64
|
-
|
|
65
|
-
|
|
64
|
+
try {
|
|
65
|
+
let isProviderConfigurationSet = false;
|
|
66
|
+
try {
|
|
67
|
+
if (window.location.host === top.window.location.host) {
|
|
68
|
+
oProviderConfiguration = {};
|
|
69
|
+
isProviderConfigurationSet = true;
|
|
70
|
+
}
|
|
71
|
+
} catch (error) {
|
|
72
|
+
oLogger.info("Cannot access parent window");
|
|
73
|
+
}
|
|
74
|
+
if (!isProviderConfigurationSet) {
|
|
75
|
+
oProviderConfiguration = await CollaborationMessageConsumer.getProviderConfiguration();
|
|
76
|
+
}
|
|
77
|
+
} catch (error) {
|
|
78
|
+
oLogger.error("Error while getting the provider configuration from the parent window", error);
|
|
79
|
+
oProviderConfiguration = {};
|
|
80
|
+
}
|
|
81
|
+
}
|
|
66
82
|
return fnGetCollaborationType();
|
|
67
83
|
};
|
|
68
84
|
|