Skip to content

Commit c716780

Browse files
committed
only floats
1 parent 1169f27 commit c716780

File tree

2 files changed

+28
-59
lines changed

2 files changed

+28
-59
lines changed

services/static-webserver/client/source/class/osparc/study/CreateFunction.js

Lines changed: 4 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -98,44 +98,7 @@ qx.Class.define("osparc.study.CreateFunction", {
9898
column = 0;
9999
row++;
100100

101-
const filePickers = osparc.study.Utils.extractFilePickers(this.__studyData["workbench"]);
102-
filePickers.forEach(filePicker => {
103-
const fpLabel = new qx.ui.basic.Label(filePicker["label"]);
104-
inputsLayout.add(fpLabel, {
105-
row,
106-
column,
107-
});
108-
column++;
109-
110-
const fpType = new qx.ui.basic.Label("FileID");
111-
inputsLayout.add(fpType, {
112-
row,
113-
column,
114-
});
115-
column++;
116-
117-
const fpExposed = new qx.ui.form.CheckBox().set({ value: true });
118-
inputsLayout.add(fpExposed, {
119-
row,
120-
column,
121-
});
122-
exposedInputs[filePicker["label"]] = true;
123-
fpExposed.addListener("changeValue", e => exposedInputs[filePicker["label"]] = e.getData());
124-
column++;
125-
126-
const outputValue = osparc.file.FilePicker.getOutput(filePicker);
127-
const fpDefaultValue = new qx.ui.basic.Label(outputValue && outputValue["path"] ? outputValue["path"] : "");
128-
inputsLayout.add(fpDefaultValue, {
129-
row,
130-
column,
131-
});
132-
column++;
133-
134-
column = 0;
135-
row++;
136-
});
137-
138-
const parameters = osparc.study.Utils.extractParameters(this.__studyData["workbench"]);
101+
const parameters = osparc.study.Utils.extractFunctionableParameters(this.__studyData["workbench"]);
139102
parameters.forEach(parameter => {
140103
const parameterLabel = new qx.ui.basic.Label(parameter["label"]);
141104
inputsLayout.add(parameterLabel, {
@@ -208,7 +171,7 @@ qx.Class.define("osparc.study.CreateFunction", {
208171
column = 0;
209172
row++;
210173

211-
const probes = osparc.study.Utils.extractProbes(this.__studyData["workbench"]);
174+
const probes = osparc.study.Utils.extractFunctionableProbes(this.__studyData["workbench"]);
212175
probes.forEach(probe => {
213176
const parameterLabel = new qx.ui.basic.Label(probe["label"]);
214177
outputsLayout.add(parameterLabel, {
@@ -305,19 +268,7 @@ qx.Class.define("osparc.study.CreateFunction", {
305268
"default_inputs": {},
306269
};
307270

308-
const filePickers = osparc.study.Utils.extractFilePickers(templateData["workbench"]);
309-
filePickers.forEach(filePicker => {
310-
const fpLabel = filePicker["label"];
311-
if (exposedInputs[fpLabel]) {
312-
functionData["input_schema"]["schema_dict"]["properties"][fpLabel] = {
313-
"type": "FileID",
314-
};
315-
const outputValue = osparc.file.FilePicker.getOutput(filePicker);
316-
functionData["default_inputs"][fpLabel] = outputValue && outputValue["path"] ? outputValue["path"] : null;
317-
}
318-
});
319-
320-
const parameters = osparc.study.Utils.extractParameters(templateData["workbench"]);
271+
const parameters = osparc.study.Utils.extractFunctionableParameters(templateData["workbench"]);
321272
parameters.forEach(parameter => {
322273
const parameterLabel = parameter["label"];
323274
if (exposedInputs[parameterLabel]) {
@@ -331,7 +282,7 @@ qx.Class.define("osparc.study.CreateFunction", {
331282
}
332283
});
333284

334-
const probes = osparc.study.Utils.extractProbes(templateData["workbench"]);
285+
const probes = osparc.study.Utils.extractFunctionableProbes(templateData["workbench"]);
335286
probes.forEach(probe => {
336287
const probeLabel = probe["label"];
337288
if (exposedOutputs[probeLabel]) {

services/static-webserver/client/source/class/osparc/study/Utils.js

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -236,12 +236,24 @@ qx.Class.define("osparc.study.Utils", {
236236
},
237237

238238
extractParameters: function(workbench) {
239-
const parameters = Object.values(workbench).filter(srv => srv["key"].includes("simcore/services/frontend/parameter/"));
239+
const parameters = Object.values(workbench).filter(srv => osparc.data.model.Node.isParameter(srv));
240+
return parameters;
241+
},
242+
243+
extractFunctionableParameters: function(workbench) {
244+
// - for now, only float types are allowed
245+
const parameters = Object.values(workbench).filter(srv => osparc.data.model.Node.isParameter(srv) && srv["key"].includes("parameter/float"));
240246
return parameters;
241247
},
242248

243249
extractProbes: function(workbench) {
244-
const parameters = Object.values(workbench).filter(srv => srv["key"].includes("simcore/services/frontend/iterator-consumer/probe/"));
250+
const parameters = Object.values(workbench).filter(srv => osparc.data.model.Node.isProbe(srv));
251+
return parameters;
252+
},
253+
254+
extractFunctionableProbes: function(workbench) {
255+
// - for now, only float types are allowed
256+
const parameters = Object.values(workbench).filter(srv => osparc.data.model.Node.isProbe(srv) && srv["key"].includes("probe/float"));
245257
return parameters;
246258
},
247259

@@ -253,10 +265,16 @@ qx.Class.define("osparc.study.Utils", {
253265
// in order to create a function, the pipeline needs:
254266
// - at least one parameter (or file-picker (file type parameter))
255267
// - at least one probe
256-
const filePickers = osparc.study.Utils.extractFilePickers(workbench);
257-
const parameters = osparc.study.Utils.extractParameters(workbench);
258-
const probes = osparc.study.Utils.extractProbes(workbench);
259-
return (filePickers.length + parameters.length) && probes.length;
268+
269+
// const filePickers = osparc.study.Utils.extractFilePickers(workbench);
270+
// const parameters = osparc.study.Utils.extractParameters(workbench);
271+
// const probes = osparc.study.Utils.extractProbes(workbench);
272+
// return (filePickers.length + parameters.length) && probes.length;
273+
274+
// - for now, only float types are allowed
275+
const parameters = osparc.study.Utils.extractFunctionableParameters(workbench);
276+
const probes = osparc.study.Utils.extractFunctionableProbes(workbench);
277+
return parameters.length && probes.length;
260278
},
261279

262280
getCantExecuteServices: function(studyServices = []) {

0 commit comments

Comments
 (0)