make code injection works with multiline

This commit is contained in:
Ruben Fiszel
2022-08-23 22:34:16 +02:00
parent 667d2e2ef1
commit 1c36fcb092

View File

@@ -106,16 +106,14 @@ export async function loadSchemaFromModule(module: FlowModule): Promise<{
}
}
const returnStatementRegex = new RegExp(/\$\{(.*)\}/)
const dynamicTemplateRegex = new RegExp(/\$\{(.*)\}/)
export function isCodeInjection(expr: string | undefined): boolean {
if (!expr) {
return false
}
const lines = expr.split('\n')
const [returnStatement] = lines.reverse()
return returnStatementRegex.test(returnStatement)
return dynamicTemplateRegex.test(expr)
}
export function getDefaultExpr(
@@ -124,9 +122,8 @@ export function getDefaultExpr(
previousExpr?: string
) {
const expr = previousExpr ?? `previous_result.${key}`
return `import { previous_result, flow_input, step, variable, resource, params } from 'windmill${
importPath ? `@${importPath}` : ''
}'
return `import { previous_result, flow_input, step, variable, resource, params } from 'windmill${importPath ? `@${importPath}` : ''
}'
${expr}`
}