diff --git a/frontend/src/AngularWorkflow.js b/frontend/src/AngularWorkflow.js
index 69a5431c..5eaad198 100644
--- a/frontend/src/AngularWorkflow.js
+++ b/frontend/src/AngularWorkflow.js
@@ -35,6 +35,7 @@ import Switch from '@material-ui/core/Switch';
import ReactJson from 'react-json-view'
import { useBeforeunload } from 'react-beforeunload';
+import ArrowUpwardIcon from '@material-ui/icons/ArrowUpward';
import CachedIcon from '@material-ui/icons/Cached';
import DirectionsRunIcon from '@material-ui/icons/DirectionsRun';
import PolymerIcon from '@material-ui/icons/Polymer';
@@ -326,6 +327,7 @@ const AngularWorkflow = (props) => {
currentnode.removeClass('not-executing-highlight')
currentnode.removeClass('success-highlight')
currentnode.removeClass('failure-highlight')
+ currentnode.removeClass('shuffle-hover-highlight')
currentnode.removeClass('awaiting-data-highlight')
incomingEdges.addClass('success-highlight')
currentnode.addClass('executing-highlight')
@@ -334,6 +336,7 @@ const AngularWorkflow = (props) => {
currentnode.removeClass('not-executing-highlight')
currentnode.removeClass('success-highlight')
currentnode.removeClass('failure-highlight')
+ currentnode.removeClass('shuffle-hover-highlight')
currentnode.removeClass('awaiting-data-highlight')
currentnode.removeClass('executing-highlight')
currentnode.addClass('skipped-highlight')
@@ -342,6 +345,7 @@ const AngularWorkflow = (props) => {
currentnode.removeClass('not-executing-highlight')
currentnode.removeClass('success-highlight')
currentnode.removeClass('failure-highlight')
+ currentnode.removeClass('shuffle-hover-highlight')
currentnode.removeClass('awaiting-data-highlight')
currentnode.addClass('executing-highlight')
@@ -363,6 +367,7 @@ const AngularWorkflow = (props) => {
currentnode.removeClass('not-executing-highlight')
currentnode.removeClass('executing-highlight')
currentnode.removeClass('failure-highlight')
+ currentnode.removeClass('shuffle-hover-highlight')
currentnode.removeClass('awaiting-data-highlight')
currentnode.addClass('success-highlight')
@@ -384,6 +389,7 @@ const AngularWorkflow = (props) => {
if (targetnode !== undefined && !targetnode.classes().includes("success-highlight") && !targetnode.classes().includes("failure-highlight")) {
targetnode.removeClass('not-executing-highlight')
targetnode.removeClass('success-highlight')
+ targetnode.removeClass('shuffle-hover-highlight')
targetnode.removeClass('failure-highlight')
targetnode.removeClass('awaiting-data-highlight')
targetnode.addClass('executing-highlight')
@@ -398,6 +404,7 @@ const AngularWorkflow = (props) => {
currentnode.removeClass('executing-highlight')
currentnode.removeClass('success-highlight')
currentnode.removeClass('awaiting-data-highlight')
+ currentnode.removeClass('shuffle-hover-highlight')
currentnode.addClass('failure-highlight')
if (!visited.includes(item.action.label)) {
@@ -411,6 +418,7 @@ const AngularWorkflow = (props) => {
currentnode.removeClass('executing-highlight')
currentnode.removeClass('success-highlight')
currentnode.removeClass('failure-highlight')
+ currentnode.removeClass('shuffle-hover-highlight')
currentnode.addClass('awaiting-data-highlight')
break
default:
@@ -1486,7 +1494,7 @@ const AngularWorkflow = (props) => {
{workflow.workflow_variables === null ?
null : workflow.workflow_variables.map(variable=> {
return (
-
+
{
}}>
@@ -2197,7 +2205,6 @@ const AngularWorkflow = (props) => {
var allkeys = [action.id]
var handled = []
var results = []
- console.log("BEFORE PARENTS!")
while(true) {
for (var key in allkeys) {
@@ -2247,6 +2254,7 @@ const AngularWorkflow = (props) => {
const [selectedActionParameters, setSelectedActionParameters] = React.useState([])
const [selectedVariableParameter, setSelectedVariableParameter] = React.useState()
const [showDropdown, setShowDropdown] = React.useState(false)
+ const [showDropdownNumber, setShowDropdownNumber] = React.useState(0)
const [actionlist, setActionlist] = React.useState([])
useEffect(() => {
@@ -2266,7 +2274,7 @@ const AngularWorkflow = (props) => {
}
if (actionlist.length === 0) {
- actionlist.push({"type": "Execution Argument", "name": "Execution Argument", "value": "$exec", "highlight": "exec", "autocomplete": "$exec"})
+ actionlist.push({"type": "Execution Argument", "name": "Execution Argument", "value": "$exec", "highlight": "exec", "autocomplete": "exec"})
if (workflow.workflow_variables !== null && workflow.workflow_variables !== undefined && workflow.workflow_variables.length > 0) {
for (var key in workflow.workflow_variables) {
const item = workflow.workflow_variables[key]
@@ -2298,11 +2306,10 @@ const AngularWorkflow = (props) => {
})
const changeActionParameter = (event, count) => {
- console.log("EVENT: ", event.target.value)
if (event.target.value[event.target.value.length-1] === "$") {
- console.log("LAST IS $ - SHOULD SHOW DROPDOWN")
if (!showDropdown) {
setShowDropdown(true)
+ setShowDropdownNumber(count)
}
} else {
if (showDropdown) {
@@ -2393,39 +2400,7 @@ const AngularWorkflow = (props) => {
// FIXME: Issue #40 - selectedActionParameters not reset
if (Object.getOwnPropertyNames(selectedAction).length > 0 && selectedActionParameters.length > 0) {
return (
-
-
- {showDropdown ?
-
- : null}
-
-
+
Arguments
{selectedActionParameters.map((data, count) => {
if (data.variant === "") {
@@ -2473,14 +2448,14 @@ const AngularWorkflow = (props) => {
}}
onBlur={(event) => {
// Super basic check
- if (event.target.value.startsWith("{")) {
- console.log("VALIDATING JSON")
- try {
- JSON.parse(event.target.value)
- } catch (e) {
- alert.error("Failed to parse json: ", e)
- }
- }
+ //if (event.target.value.startsWith("{")) {
+ // console.log("VALIDATING JSON")
+ // try {
+ // JSON.parse(event.target.value)
+ // } catch (e) {
+ // alert.error("Failed to parse json: ", e)
+ // }
+ //}
}}
/>
@@ -2596,7 +2571,7 @@ const AngularWorkflow = (props) => {
itemColor = "#ffeb3b"
}
return (
-
+
@@ -2630,6 +2605,98 @@ const AngularWorkflow = (props) => {
{datafield}
+ {showDropdown && showDropdownNumber === count && data.variant === "STATIC_VALUE" ?
+
+ Autocomplete
+
+
+ : null}
+
+
)})}
@@ -2783,7 +2850,6 @@ const AngularWorkflow = (props) => {
selectedAction.execution_variable = {"name": "No selection"}
} else {
const value = workflow.execution_variables.find(a => a.name === e.target.value)
- console.log("FOUND: ", value)
selectedAction.execution_variable = value
}
setSelectedAction(selectedAction)
@@ -4431,6 +4497,7 @@ const AngularWorkflow = (props) => {
node',
css: {