feat: rename var name sync to used jinjia code (#3964)
This commit is contained in:
parent
99292edd46
commit
fa509ce64e
3 changed files with 23 additions and 2 deletions
|
|
@ -22,11 +22,18 @@ const useConfig = (id: string, payload: TemplateTransformNodeType) => {
|
|||
inputsRef.current = newPayload
|
||||
}, [doSetInputs])
|
||||
|
||||
const { handleVarListChange, handleAddVariable: handleAddEmptyVariable } = useVarList<TemplateTransformNodeType>({
|
||||
const { handleAddVariable: handleAddEmptyVariable } = useVarList<TemplateTransformNodeType>({
|
||||
inputs,
|
||||
setInputs,
|
||||
})
|
||||
|
||||
const handleVarListChange = useCallback((newList: Variable[]) => {
|
||||
const newInputs = produce(inputsRef.current, (draft: any) => {
|
||||
draft.variables = newList
|
||||
})
|
||||
setInputs(newInputs)
|
||||
}, [setInputs])
|
||||
|
||||
const handleAddVariable = useCallback((payload: Variable) => {
|
||||
const newInputs = produce(inputsRef.current, (draft: any) => {
|
||||
draft.variables.push(payload)
|
||||
|
|
@ -34,6 +41,14 @@ const useConfig = (id: string, payload: TemplateTransformNodeType) => {
|
|||
setInputs(newInputs)
|
||||
}, [setInputs])
|
||||
|
||||
// rename var in code
|
||||
const handleVarNameChange = useCallback((oldName: string, newName: string) => {
|
||||
const newInputs = produce(inputsRef.current, (draft: any) => {
|
||||
draft.template = draft.template.replaceAll(`{{ ${oldName} }}`, `{{ ${newName} }}`)
|
||||
})
|
||||
setInputs(newInputs)
|
||||
}, [setInputs])
|
||||
|
||||
useEffect(() => {
|
||||
if (inputs.template)
|
||||
return
|
||||
|
|
@ -94,6 +109,7 @@ const useConfig = (id: string, payload: TemplateTransformNodeType) => {
|
|||
readOnly,
|
||||
inputs,
|
||||
handleVarListChange,
|
||||
handleVarNameChange,
|
||||
handleAddVariable,
|
||||
handleAddEmptyVariable,
|
||||
handleCodeChange,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue