diff --git a/apps/builder/src/features/graph/components/nodes/block/BlockNode.tsx b/apps/builder/src/features/graph/components/nodes/block/BlockNode.tsx index 2f51aa79c..100929dc1 100644 --- a/apps/builder/src/features/graph/components/nodes/block/BlockNode.tsx +++ b/apps/builder/src/features/graph/components/nodes/block/BlockNode.tsx @@ -185,8 +185,8 @@ export const BlockNode = ({ ) => { if (!('options' in block) || !block.options) return - const convertedBlockOptions = turnIntoParams.customMapping - ? turnIntoParams.customMapping(block.options) + const convertedBlockOptions = turnIntoParams.transform + ? turnIntoParams.transform(block.options) : block.options try { updateBlock( diff --git a/packages/forge/blocks/anthropic/actions/createChatMessage.tsx b/packages/forge/blocks/anthropic/actions/createChatMessage.tsx index f5462dd44..e60389e87 100644 --- a/packages/forge/blocks/anthropic/actions/createChatMessage.tsx +++ b/packages/forge/blocks/anthropic/actions/createChatMessage.tsx @@ -76,6 +76,11 @@ export const options = option.object({ }), }) +const transformToChatCompletionOptions = (options: any) => ({ + ...options, + action: 'Create chat completion', +}) + export const createChatMessage = createAction({ name: 'Create Chat Message', auth, @@ -83,12 +88,14 @@ export const createChatMessage = createAction({ turnableInto: [ { blockType: 'mistral', + transform: transformToChatCompletionOptions, }, { blockType: 'openai', + transform: transformToChatCompletionOptions, }, - { blockType: 'open-router' }, - { blockType: 'together-ai' }, + { blockType: 'open-router', transform: transformToChatCompletionOptions }, + { blockType: 'together-ai', transform: transformToChatCompletionOptions }, ], getSetVariableIds: ({ responseMapping }) => responseMapping?.map((res) => res.variableId).filter(isDefined) ?? [], diff --git a/packages/forge/blocks/mistral/actions/createChatCompletion.ts b/packages/forge/blocks/mistral/actions/createChatCompletion.ts index 9b0974de2..4f330f6e2 100644 --- a/packages/forge/blocks/mistral/actions/createChatCompletion.ts +++ b/packages/forge/blocks/mistral/actions/createChatCompletion.ts @@ -75,7 +75,13 @@ export const createChatCompletion = createAction({ blockType: 'together-ai', }, { blockType: 'open-router' }, - { blockType: 'anthropic' }, + { + blockType: 'anthropic', + transform: (options) => ({ + ...options, + action: 'Create Chat Message', + }), + }, ], getSetVariableIds: (options) => options.responseMapping?.map((res) => res.variableId).filter(isDefined) ?? diff --git a/packages/forge/blocks/openRouter/actions/createChatCompletion.tsx b/packages/forge/blocks/openRouter/actions/createChatCompletion.tsx index 38840b126..c0bd48e03 100644 --- a/packages/forge/blocks/openRouter/actions/createChatCompletion.tsx +++ b/packages/forge/blocks/openRouter/actions/createChatCompletion.tsx @@ -20,7 +20,13 @@ export const createChatCompletion = createAction({ blockType: 'together-ai', }, { blockType: 'mistral' }, - { blockType: 'anthropic' }, + { + blockType: 'anthropic', + transform: (options) => ({ + ...options, + action: 'Create Chat Message', + }), + }, ], options: parseChatCompletionOptions({ modelFetchId: 'fetchModels', diff --git a/packages/forge/blocks/openai/actions/createChatCompletion.tsx b/packages/forge/blocks/openai/actions/createChatCompletion.tsx index ea5508ae7..141744886 100644 --- a/packages/forge/blocks/openai/actions/createChatCompletion.tsx +++ b/packages/forge/blocks/openai/actions/createChatCompletion.tsx @@ -27,7 +27,13 @@ export const createChatCompletion = createAction({ blockType: 'together-ai', }, { blockType: 'mistral' }, - { blockType: 'anthropic' }, + { + blockType: 'anthropic', + transform: (options) => ({ + ...options, + action: 'Create Chat Message', + }), + }, ], fetchers: [ { diff --git a/packages/forge/blocks/togetherAi/actions/createChatCompletion.tsx b/packages/forge/blocks/togetherAi/actions/createChatCompletion.tsx index f5b277446..f2432dcbd 100644 --- a/packages/forge/blocks/togetherAi/actions/createChatCompletion.tsx +++ b/packages/forge/blocks/togetherAi/actions/createChatCompletion.tsx @@ -22,7 +22,13 @@ export const createChatCompletion = createAction({ blockType: 'open-router', }, { blockType: 'mistral' }, - { blockType: 'anthropic' }, + { + blockType: 'anthropic', + transform: (options) => ({ + ...options, + action: 'Create Chat Message', + }), + }, ], getSetVariableIds: getChatCompletionSetVarIds, run: { diff --git a/packages/forge/core/types.ts b/packages/forge/core/types.ts index 9b30997e2..490383178 100644 --- a/packages/forge/core/types.ts +++ b/packages/forge/core/types.ts @@ -38,7 +38,7 @@ export type TurnableIntoParam = { /** * If defined will be used to convert the existing block options into the new block options. */ - customMapping?: (options: T) => any + transform?: (options: T) => any } export type ActionDefinition<