From 0237c6f835dbf088041b6b2bb9b540e4635cc1ec Mon Sep 17 00:00:00 2001 From: Baptiste Arnaud Date: Mon, 22 Jul 2024 17:37:32 +0200 Subject: [PATCH] :bug: Fix empty placeholder ignored Closes #1660 --- .../blocks/inputs/date/parseDateInput.ts | 4 +--- packages/bot-engine/executeGroup.ts | 10 +++------- packages/bot-engine/parseBubbleBlock.ts | 10 +++------- packages/bot-engine/startSession.ts | 15 +++++---------- 4 files changed, 12 insertions(+), 27 deletions(-) diff --git a/packages/bot-engine/blocks/inputs/date/parseDateInput.ts b/packages/bot-engine/blocks/inputs/date/parseDateInput.ts index dac0814761..0820b7cbd6 100644 --- a/packages/bot-engine/blocks/inputs/date/parseDateInput.ts +++ b/packages/bot-engine/blocks/inputs/date/parseDateInput.ts @@ -10,9 +10,7 @@ export const parseDateInput = return { ...block, options: { - ...deepParseVariables(variables, { removeEmptyStrings: true })( - block.options - ), + ...deepParseVariables(variables)(block.options), min: parseDateLimit( block.options.min, block.options.hasTime, diff --git a/packages/bot-engine/executeGroup.ts b/packages/bot-engine/executeGroup.ts index 2cd9349f47..0ba6c1423c 100644 --- a/packages/bot-engine/executeGroup.ts +++ b/packages/bot-engine/executeGroup.ts @@ -298,8 +298,7 @@ export const parseInput = } case InputBlockType.NUMBER: { const parsedBlock = deepParseVariables( - state.typebotsQueue[0].typebot.variables, - { removeEmptyStrings: true } + state.typebotsQueue[0].typebot.variables )({ ...block, prefilledValue: getPrefilledInputValue( @@ -327,8 +326,7 @@ export const parseInput = } case InputBlockType.RATING: { const parsedBlock = deepParseVariables( - state.typebotsQueue[0].typebot.variables, - { removeEmptyStrings: true } + state.typebotsQueue[0].typebot.variables )({ ...block, prefilledValue: getPrefilledInputValue( @@ -346,9 +344,7 @@ export const parseInput = } } default: { - return deepParseVariables(state.typebotsQueue[0].typebot.variables, { - removeEmptyStrings: true, - })({ + return deepParseVariables(state.typebotsQueue[0].typebot.variables)({ ...block, runtimeOptions: await computeRuntimeOptions(state)(block), prefilledValue: getPrefilledInputValue( diff --git a/packages/bot-engine/parseBubbleBlock.ts b/packages/bot-engine/parseBubbleBlock.ts index 64c0cd0be1..3e6bc72d94 100644 --- a/packages/bot-engine/parseBubbleBlock.ts +++ b/packages/bot-engine/parseBubbleBlock.ts @@ -66,9 +66,7 @@ export const parseBubbleBlock = ( } case BubbleBlockType.EMBED: { - const message = deepParseVariables(variables, { - removeEmptyStrings: true, - })(block) + const message = deepParseVariables(variables)(block) return { ...message, content: { @@ -82,9 +80,7 @@ export const parseBubbleBlock = ( } case BubbleBlockType.VIDEO: { const parsedContent = block.content - ? deepParseVariables(variables, { removeEmptyStrings: true })( - block.content - ) + ? deepParseVariables(variables)(block.content) : undefined return { @@ -100,7 +96,7 @@ export const parseBubbleBlock = ( } } default: - return deepParseVariables(variables, { removeEmptyStrings: true })(block) + return deepParseVariables(variables)(block) } } diff --git a/packages/bot-engine/startSession.ts b/packages/bot-engine/startSession.ts index 6bed0149b1..d38c1439b1 100644 --- a/packages/bot-engine/startSession.ts +++ b/packages/bot-engine/startSession.ts @@ -162,8 +162,7 @@ export const startSession = async ({ typebot: { id: typebot.id, settings: deepParseVariables( - initialState.typebotsQueue[0].typebot.variables, - { removeEmptyStrings: true } + initialState.typebotsQueue[0].typebot.variables )(typebot.settings), theme: sanitizeAndParseTheme(typebot.theme, { variables: initialState.typebotsQueue[0].typebot.variables, @@ -274,8 +273,7 @@ export const startSession = async ({ typebot: { id: typebot.id, settings: deepParseVariables( - newSessionState.typebotsQueue[0].typebot.variables, - { removeEmptyStrings: true } + newSessionState.typebotsQueue[0].typebot.variables )(typebot.settings), theme: sanitizeAndParseTheme(typebot.theme, { variables: initialState.typebotsQueue[0].typebot.variables, @@ -293,8 +291,7 @@ export const startSession = async ({ typebot: { id: typebot.id, settings: deepParseVariables( - newSessionState.typebotsQueue[0].typebot.variables, - { removeEmptyStrings: true } + newSessionState.typebotsQueue[0].typebot.variables )(typebot.settings), theme: sanitizeAndParseTheme(typebot.theme, { variables: initialState.typebotsQueue[0].typebot.variables, @@ -472,11 +469,9 @@ const sanitizeAndParseTheme = ( { variables }: { variables: Variable[] } ): Theme => ({ general: theme.general - ? deepParseVariables(variables, { removeEmptyStrings: true })(theme.general) - : undefined, - chat: theme.chat - ? deepParseVariables(variables, { removeEmptyStrings: true })(theme.chat) + ? deepParseVariables(variables)(theme.general) : undefined, + chat: theme.chat ? deepParseVariables(variables)(theme.chat) : undefined, customCss: theme.customCss ? removeLiteBadgeCss(parseVariables(variables)(theme.customCss)) : undefined,