exposed text property (#4989)

This commit is contained in:
Manish Kushare 2022-12-15 18:53:24 +05:30 committed by GitHub
parent 7bf260b7fb
commit 547a9cd6cc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 19 additions and 3 deletions

View file

@ -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]
);

View file

@ -1956,7 +1956,9 @@ export const widgets = [
},
},
},
exposedVariables: {},
exposedVariables: {
text: 'Hello, there!',
},
actions: [
{
handle: 'setText',