Added Expand window button and code editor in subflow

This commit is contained in:
monilprajapati
2024-07-06 13:42:39 +05:30
parent 0e16815872
commit cd52d12f60
3 changed files with 205 additions and 111 deletions
+7 -1
View File
@@ -3162,7 +3162,13 @@ const ParsedAction = (props) => {
if (parsedvalue === undefined || parsedvalue === null) { if (parsedvalue === undefined || parsedvalue === null) {
parsedvalue = "" parsedvalue = ""
} }
console.log("Data sending to codeeditor(Action): ", {
"name": data.name,
"value": parsedvalue,
"field_number": count,
"actionlist": actionlist,
"field_id": clickedFieldId,
} )
setEditorData({ setEditorData({
"name": data.name, "name": data.name,
"value": parsedvalue, "value": parsedvalue,
@@ -1767,6 +1767,7 @@ const CodeEditor = (props) => {
// This is to make it so we don't need to handle these fixes on the // This is to make it so we don't need to handle these fixes on the
// backend by itself // backend by itself
var fixedcodedata = localcodedata var fixedcodedata = localcodedata
console.log("Fixedcodedata: ", fixedcodedata)
const valid = validateJson(localcodedata, true) const valid = validateJson(localcodedata, true)
if (valid.valid) { if (valid.valid) {
fixedcodedata = JSON.stringify(valid.result, null, 2) fixedcodedata = JSON.stringify(valid.result, null, 2)
@@ -1779,6 +1780,11 @@ const CodeEditor = (props) => {
setcodedata(fixedcodedata); setcodedata(fixedcodedata);
setExpansionModalOpen(false) setExpansionModalOpen(false)
} else if (changeActionParameterCodeMirror !== undefined) { } else if (changeActionParameterCodeMirror !== undefined) {
console.log("Entering in Submit onCLick")
console.log("Data passing to chnageActionParameterCodeMirror: ", fixedcodedata)
console.log("Fieldcount: ", fieldCount)
console.log("Actionlist: ", actionlist)
console.log("Event: ", event)
//changeActionParameterCodeMirror(event, fieldCount, fixedcodedata) //changeActionParameterCodeMirror(event, fieldCount, fixedcodedata)
changeActionParameterCodeMirror(event, fieldCount, fixedcodedata, actionlist) changeActionParameterCodeMirror(event, fieldCount, fixedcodedata, actionlist)
setExpansionModalOpen(false) setExpansionModalOpen(false)
+82
View File
@@ -69,6 +69,7 @@ import {
AvatarGroup, AvatarGroup,
Autocomplete, Autocomplete,
Radio, Radio,
ButtonGroup,
} from "@mui/material"; } from "@mui/material";
import { import {
@@ -12833,6 +12834,7 @@ const releaseToConnectLabel = "Release to Connect"
workflow.triggers[selectedTriggerIndex].parameters[1] = { workflow.triggers[selectedTriggerIndex].parameters[1] = {
name: "argument", name: "argument",
value: "", value: "",
id:"subflow_field"
}; };
workflow.triggers[selectedTriggerIndex].parameters[2] = { workflow.triggers[selectedTriggerIndex].parameters[2] = {
name: "user_apikey", name: "user_apikey",
@@ -13352,6 +13354,7 @@ const releaseToConnectLabel = "Release to Connect"
value: action value: action
} }
}) })
document.activeElement.blur();
}} }}
style={{ style={{
backgroundColor: theme.palette.inputColor, backgroundColor: theme.palette.inputColor,
@@ -13396,6 +13399,7 @@ const releaseToConnectLabel = "Release to Connect"
</div> </div>
</div> </div>
<TextField <TextField
id="subflow_field"
style={{ style={{
backgroundColor: theme.palette.inputColor, backgroundColor: theme.palette.inputColor,
borderRadius: theme.palette.borderRadius, borderRadius: theme.palette.borderRadius,
@@ -13405,6 +13409,37 @@ const releaseToConnectLabel = "Release to Connect"
}, },
endAdornment: ( endAdornment: (
<InputAdornment position="end"> <InputAdornment position="end">
<ButtonGroup orientation="vertical">
<Tooltip title="Expand window" placement="top">
<AspectRatioIcon
style={{ cursor: "pointer", marginBottom: 10}}
onClick={(event) => {
event.preventDefault()
// setFieldCount(count)
setCodeEditorModalOpen(true)
setActiveDialog("codeeditor")
//setcodedata(data.value)
var parsedvalue = workflow.triggers[selectedTriggerIndex].parameters[1].value
// if (parsedvalue === undefined || parsedvalue === null) {
// parsedvalue = ""
// }
console.log("Data sending to codeeditor: ",{
"name": workflow.triggers[selectedTriggerIndex].parameters[1].name,
"value": parsedvalue,
"field_number": 1,
"actionlist": actionlist,
"field_id": "subflow_field",
})
setEditorData({
"name": workflow.triggers[selectedTriggerIndex].parameters[1].name,
"value": parsedvalue,
"field_number": 1,
"actionlist": actionlist,
"field_id": "subflow_field",
})
}}
/>
</Tooltip>
<Tooltip title="Autocomplete text" placement="top"> <Tooltip title="Autocomplete text" placement="top">
<AddCircleOutlineIcon <AddCircleOutlineIcon
style={{ cursor: "pointer" }} style={{ cursor: "pointer" }}
@@ -13418,6 +13453,7 @@ const releaseToConnectLabel = "Release to Connect"
}} }}
/> />
</Tooltip> </Tooltip>
</ButtonGroup>
</InputAdornment> </InputAdornment>
), ),
}} }}
@@ -21767,6 +21803,9 @@ const releaseToConnectLabel = "Release to Connect"
</div> </div>
const changeActionParameterCodeMirror = (event, count, data, actionlist) => { const changeActionParameterCodeMirror = (event, count, data, actionlist) => {
if(selectedAction && selectedAction.parameters && selectedAction.parameters.length > 0){
// Check if event.target.value is an array. If it is, split with comma // Check if event.target.value is an array. If it is, split with comma
console.log("1 - SELECTED ACTION: ", selectedAction) console.log("1 - SELECTED ACTION: ", selectedAction)
console.log("1 - DATA: ", data) console.log("1 - DATA: ", data)
@@ -21869,6 +21908,49 @@ const releaseToConnectLabel = "Release to Connect"
} }
setSelectedAction(selectedAction) setSelectedAction(selectedAction)
}
if(selectedTrigger && selectedTrigger.parameters && selectedTrigger.parameters.length > 0){
if (event.target.value[event.target.value.length-1] === "." && actionlist.length > 0) {
var curstring = ""
var record = false
for (let [key,keyval] in Object.entries(selectedTrigger.parameters[count].value)) {
const item = selectedTrigger.parameters[count].value[key]
if (record) {
curstring += item
}
if (item === "$") {
record = true
curstring = ""
}
}
if (curstring.length > 0 && actionlist !== null) {
// Search back in the action list
curstring = curstring.split(" ").join("_").toLowerCase()
var actionItem = actionlist.find(data => data.autocomplete.split(" ").join("_").toLowerCase() === curstring)
if (actionItem !== undefined) {
console.log("Found item: ", actionItem)
var jsonvalid = true
try {
const tmp = String(JSON.parse(actionItem.example))
if (!actionItem.example.includes("{") && !actionItem.example.includes("[")) {
jsonvalid = false
}
} catch (e) {
jsonvalid = false
}
}
}
}
selectedTrigger.parameters[count].value = data
setSelectedTrigger(selectedTrigger);
console.log("get into trigger controller", selectedTrigger,data)
}
//setUpdate(Math.random()) //setUpdate(Math.random())
} }