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}