Skip to content

Commit 1fd02f3

Browse files
authored
✨ Show extra info on array's tooltip (ITISFoundation#3059)
1 parent 3a7ddee commit 1fd02f3

File tree

1 file changed

+30
-1
lines changed

1 file changed

+30
-1
lines changed

services/web/client/source/class/osparc/ui/form/ContentSchemaHelper.js

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ qx.Class.define("osparc.ui.form.ContentSchemaHelper", {
1919
type: "static",
2020

2121
statics: {
22-
getDomainText: function(s) {
22+
__getDomainText: function(s) {
2323
let rangeText = null;
2424
if ("minimum" in s && "maximum" in s) {
2525
rangeText = `∈ [${s.minimum}, ${s.maximum}] `;
@@ -41,6 +41,35 @@ qx.Class.define("osparc.ui.form.ContentSchemaHelper", {
4141
return rangeText;
4242
},
4343

44+
__getArrayDomainText: function(s) {
45+
const sMerged = osparc.utils.Utils.deepCloneObject(s);
46+
if ("items" in sMerged) {
47+
Object.keys(sMerged.items).forEach(item => {
48+
sMerged[item] = sMerged.items[item];
49+
});
50+
}
51+
let rangeText = this.__getDomainText(sMerged);
52+
if (rangeText === null) {
53+
rangeText = "";
54+
}
55+
if ("minItems" in s) {
56+
rangeText += "<br>";
57+
rangeText += qx.locale.Manager.tr("Minimum items: ") + s.minItems;
58+
}
59+
if ("maxItems" in s) {
60+
rangeText += "<br>";
61+
rangeText += qx.locale.Manager.tr("Maximum items: ") + s.maxItems;
62+
}
63+
return rangeText;
64+
},
65+
66+
getDomainText: function(s) {
67+
if (s.type === "array") {
68+
return this.__getArrayDomainText(s);
69+
}
70+
return this.__getDomainText(s);
71+
},
72+
4473
createValidator: function(control, s) {
4574
const manager = new qx.ui.form.validation.Manager();
4675
manager.add(control, (value, item) => {

0 commit comments

Comments
 (0)