From ace204b55a959aa90496d1369ef38a0929813782 Mon Sep 17 00:00:00 2001 From: frikky Date: Mon, 24 Aug 2020 12:31:16 +0200 Subject: [PATCH] #115: Fixed backend for app options --- backend/go-app/walkoff.go | 1 + frontend/src/views/AngularWorkflow.jsx | 46 ++++++++++++++++++++------ 2 files changed, 37 insertions(+), 10 deletions(-) diff --git a/backend/go-app/walkoff.go b/backend/go-app/walkoff.go index 60a903f8..084c9a79 100644 --- a/backend/go-app/walkoff.go +++ b/backend/go-app/walkoff.go @@ -131,6 +131,7 @@ type WorkflowAppActionParameter struct { Example string `json:"example" datastore:"example" yaml:"example"` Value string `json:"value" datastore:"value" yaml:"value,omitempty"` Multiline bool `json:"multiline" datastore:"multiline" yaml:"multiline"` + Options []string `json:"options" datastore:"options" yaml:"options"` ActionField string `json:"action_field" datastore:"action_field" yaml:"actionfield,omitempty"` Variant string `json:"variant" datastore:"variant" yaml:"variant,omitempty"` Required bool `json:"required" datastore:"required" yaml:"required"` diff --git a/frontend/src/views/AngularWorkflow.jsx b/frontend/src/views/AngularWorkflow.jsx index 69269842..52c1b558 100644 --- a/frontend/src/views/AngularWorkflow.jsx +++ b/frontend/src/views/AngularWorkflow.jsx @@ -2401,7 +2401,7 @@ const AngularWorkflow = (props) => { // {data.name}, {data.description}, {data.required}, {data.schema.type} const AppActionArguments = (props) => { const [selectedActionParameters, setSelectedActionParameters] = React.useState([]) - const [selectedVariableParameter, setSelectedVariableParameter] = React.useState() + const [selectedVariableParameter, setSelectedVariableParameter] = React.useState("") const [showDropdown, setShowDropdown] = React.useState(false) const [showDropdownNumber, setShowDropdownNumber] = React.useState(0) const [actionlist, setActionlist] = React.useState([]) @@ -2538,14 +2538,12 @@ const AngularWorkflow = (props) => { } const changeActionParameterVariable = (fieldvalue, count) => { - setSelectedVariableParameter(fieldvalue) + console.log("CALLED THIS ONE WITH VALUE!", fieldvalue) + if (selectedVariableParameter === fieldvalue) { + return + } - // this isn't updated anywhere in the workflow - // setSelectedActionName({}) - // setSelectedAction({}) - // setSelectedTrigger({}) - // setSelectedApp({}) - // setSelectedEdge({}) + setSelectedVariableParameter(fieldvalue) selectedActionParameters[count].action_field = fieldvalue selectedAction.parameters = selectedActionParameters @@ -2693,9 +2691,37 @@ const AngularWorkflow = (props) => { }} /> + console.log("PARAM: ", selectedActionParameters[count]) + if (selectedActionParameters[count].options !== undefined && selectedActionParameters[count].options !== null && selectedActionParameters[count].options.length > 0) { + console.log("FOUND OPTIONS!: ", selectedActionParameters[count]) + if (selectedActionParameters[count].value === "" && selectedActionParameters[count].required) { + changeActionParameterVariable(selectedActionParameters[count].options[0], count) + } - // Remap data based on variant - if (data.variant === "STATIC_VALUE") { + datafield = + + + } else if (data.variant === "STATIC_VALUE") { staticcolor = "#f85a3e" } else if (data.variant === "ACTION_RESULT") { // Gets the parents of the current node