Missing autofix for methods related to jQuery.sap.* (Utils)
Methods related to jQuery.sap.* (Utils) are deprecated. Therefore an autofix should be offered by UI5 linter.
Deprecated APIs:
Deprecated Usage
var areBothObjectsEqual = jQuery.sap.equal({a:1, b:2}, {a:1, b:2});
jQuery.sap.each({name: "me", age: 32}, function(sKey, oValue)
console.log("key: " + sKey + ", value: " + oValue);
});
jQuery.sap.forIn({name: "you", age: 42}, function(sKey, oValue)
console.log("key: " + sKey + ", value: " + oValue);
});
var isObjectPlainObject = jQuery.isPlainObject({});
var parsedJS = jQuery.sap.parseJS("{name: 'me'}");
var clone = jQuery.sap.extend(true, {}, {name: "me"});
var timestampsnumber = jQuery.sap.now();
var props = jQuery.sap.properties({ url: sap.ui.require.toUrl(sap.ui.require.toUrl("testdata/test.properties"))});
var myUid = jQuery.sap.uid();
var v = jQuery.sap.Version("3.6.2");
var v2 = new jQuery.sap.Version("3.6.2");
myDialog = jQuery.sap.syncStyleClass("sapUiSizeCompact", this.getView(), myDialog);
jQuery.sap.setObject("name.lastname", "Miller", { name: { firstname: "me" }});
var myFirstName = jQuery.sap.getObject("name.firstname", 0, { name: { firstname: "me" }});
Recommended Usage
sap.ui.define([
"sap/base/util/deepEqual",
"sap/base/util/each",
"sap/base/util/isPlainObject",
"sap/base/util/JSTokenizer",
"sap/base/util/merge",
"sap/base/util/now",
"sap/base/util/Properties",
"sap/base/util/uid",
"sap/base/util/Version",
"sap/ui/core/syncStyleClass",
"sap/base/util/ObjectPath"
], (deepEqual, each, isPlainObject, JSTokenizer, merge, now, Properties, uid, Version, syncStyleClass, ObjectPath) => {
var areBothObjectsEqual = deepEqual({a:1, b:2}, {a:1, b:2});
each({name: "me", age: 32}, function(sKey, oValue)
console.log("key: " + sKey + ", value: " + oValue);
});
each({name: "you", age: 42}, function(sKey, oValue)
console.log("key: " + sKey + ", value: " + oValue);
});
var isObjectPlainObject = isPlainObject({});
var parsedJS = JSTokenizer.parseJS("{name: 'me'}");
var clone = merge({}, {name: "me"});
var timestampsnumber = now();
var props = Properties.create({ url: sap.ui.require.toUrl(sap.ui.require.toUrl("testdata/test.properties"))});
var myUid = uid();
var v = Version("3.6.2");
var v2 = new Version("3.6.2");
myDialog = syncStyleClass("sapUiSizeCompact", this.getView(), myDialog);
ObjectPath.set("name.lastname", "Miller", { name: { firstname: "me" }});
// in case object path used in `ObjectPath.get` does not exist, ObjectPath.create("name.firstname", myObject) has to be called before
var myFirstName = ObjectPath.get("name.firstname", 0, { name: { firstname: "me" }});
});
Note for jQuery.sap.extend: Without enforcing a deep copy while using true as first parameter a shallow copy is created. This is not supported by sap/base/util/merge. For shallow copies browser native Object.assign() might be used but null and undefined values are ignored.
Missing autofix for methods related to jQuery.sap.* (Utils)
Methods related to
jQuery.sap.* (Utils)are deprecated. Therefore an autofix should be offered by UI5 linter.Deprecated APIs:
jQuery.sap.getObjectjQuery.isPlainObjectDeprecated Usage
Recommended Usage
Note for
jQuery.sap.extend: Without enforcing a deep copy while usingtrueas first parameter a shallow copy is created. This is not supported bysap/base/util/merge. For shallow copies browser nativeObject.assign()might be used butnullandundefinedvalues are ignored.