diff --git a/frontend/src/Editor/Components/Text.jsx b/frontend/src/Editor/Components/Text.jsx index 04196fefd0..9cac474bf2 100644 --- a/frontend/src/Editor/Components/Text.jsx +++ b/frontend/src/Editor/Components/Text.jsx @@ -1,7 +1,15 @@ import React, { useState, useEffect } from 'react'; import DOMPurify from 'dompurify'; -export const Text = function Text({ height, properties, styles, darkMode, registerAction, component }) { +export const Text = function Text({ + height, + properties, + styles, + darkMode, + registerAction, + component, + setExposedVariable, +}) { let { textSize, textColor, @@ -29,12 +37,18 @@ export const Text = function Text({ height, properties, styles, darkMode, regist }, [styles.visibility]); // eslint-disable-next-line react-hooks/exhaustive-deps - useEffect(() => setText(() => computeText()), [properties.text]); + useEffect(() => { + const text = computeText(); + setText(text); + setExposedVariable('text', text); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [properties.text]); registerAction( 'setText', async function (text) { setText(text); + setExposedVariable('text', text); }, [setText] ); diff --git a/frontend/src/Editor/WidgetManager/widgetConfig.js b/frontend/src/Editor/WidgetManager/widgetConfig.js index 4be032e823..b4599eab11 100644 --- a/frontend/src/Editor/WidgetManager/widgetConfig.js +++ b/frontend/src/Editor/WidgetManager/widgetConfig.js @@ -1956,7 +1956,9 @@ export const widgets = [ }, }, }, - exposedVariables: {}, + exposedVariables: { + text: 'Hello, there!', + }, actions: [ { handle: 'setText',