From 4830cddb1de7fc7e0123a30aabf2483f85ad98f8 Mon Sep 17 00:00:00 2001 From: Timothy Mugo Date: Thu, 23 Jul 2026 09:38:44 +0300 Subject: [PATCH] fix : fix newsletter omitting some props in ssr --- .changeset/pink-adults-turn.md | 5 +++++ .../src/embeddable/newsletter/index.jsx | 19 +++++++++++++++---- 2 files changed, 20 insertions(+), 4 deletions(-) create mode 100644 .changeset/pink-adults-turn.md diff --git a/.changeset/pink-adults-turn.md b/.changeset/pink-adults-turn.md new file mode 100644 index 00000000..f422c53d --- /dev/null +++ b/.changeset/pink-adults-turn.md @@ -0,0 +1,5 @@ +--- +"@devgateway/dvz-ui-react": patch +--- + +Fix newsletter props to allow them to be parsed in SSR context diff --git a/packages/dvz-ui/src/embeddable/newsletter/index.jsx b/packages/dvz-ui/src/embeddable/newsletter/index.jsx index e2b5703f..9050c977 100644 --- a/packages/dvz-ui/src/embeddable/newsletter/index.jsx +++ b/packages/dvz-ui/src/embeddable/newsletter/index.jsx @@ -10,19 +10,30 @@ const Index = (props) => { const { status, editing, - "data-list": list, + "data-list": dataList, + list: propList, "data-placeholder": placeholder = "enter your email address", "data-success-message": successmessage = "Thanks", "data-failure-message": failuremessage = "Something didn't go well", "data-label": label = "Send", - "data-tag": tag, + "data-tag": dataTag, + tag: propTag, } = props; + + const list = dataList ?? propList + const tag = dataTag ?? propTag + const [email, setEmail] = React.useState("") const submit = () => { if (!expresion.test(email)) return - props.onSubmit({email, list, tag}) + + const payload = {email} + if (list != null) payload.list = list + if (tag != null) payload.tag = tag + + props.onSubmit(payload) } @@ -47,7 +58,7 @@ const Index = (props) => { onChange={(e, target) => setEmail(target.value)} iconPosition='left' placeholder={placeholder}/> - + {message}