Merge pull request #581 from Hexastack/575-bug-block-list-is-not-loading-the-full-content
Some checks are pending
Build and Push Docker API Image / build-and-push (push) Waiting to run
Build and Push Docker Base Image / build-and-push (push) Waiting to run
Build and Push Docker UI Image / build-and-push (push) Waiting to run

fix(frontend): resolve block list edit form bug
This commit is contained in:
Med Marrouchi 2025-01-20 18:12:15 +01:00 committed by GitHub
commit d24521cb77
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -181,17 +181,19 @@ const ListMessageForm = () => {
}} }}
defaultValue={content?.fields?.title} defaultValue={content?.fields?.title}
render={({ field }) => { render={({ field }) => {
const { onChange, ...rest } = field; const { onChange, value, ...rest } = field;
const options = (contentType?.fields || []).filter(
({ type }) => ContentFieldType.TEXT === type,
);
return ( return (
<AutoCompleteSelect<ContentField, "label", false> <AutoCompleteSelect<ContentField, "label", false>
options={(contentType?.fields || []).filter( options={options}
({ type }) => ContentFieldType.TEXT === type,
)}
idKey="name" idKey="name"
labelKey="label" labelKey="label"
label={t("label.title")} label={t("label.title")}
multiple={false} multiple={false}
{...(options.length && { value })}
{...rest} {...rest}
onChange={(_e, selected) => onChange(selected?.name)} onChange={(_e, selected) => onChange(selected?.name)}
error={!!errors?.options?.["content"]?.fields?.title} error={!!errors?.options?.["content"]?.fields?.title}
@ -209,20 +211,22 @@ const ListMessageForm = () => {
control={control} control={control}
defaultValue={content?.fields?.subtitle} defaultValue={content?.fields?.subtitle}
render={({ field }) => { render={({ field }) => {
const { onChange, ...rest } = field; const { onChange, value, ...rest } = field;
const options = (contentType?.fields || []).filter(
({ type }) =>
ContentFieldType.TEXT === type ||
ContentFieldType.TEXTAREA === type,
);
return ( return (
<AutoCompleteSelect<ContentField, "label", false> <AutoCompleteSelect<ContentField, "label", false>
options={(contentType?.fields || []).filter( options={options}
({ type }) =>
ContentFieldType.TEXT === type ||
ContentFieldType.TEXTAREA === type,
)}
idKey="name" idKey="name"
labelKey="label" labelKey="label"
label={t("label.subtitle")} label={t("label.subtitle")}
multiple={false} multiple={false}
onChange={(_e, selected) => onChange(selected?.name)} onChange={(_e, selected) => onChange(selected?.name)}
{...(options.length && { value })}
{...rest} {...rest}
/> />
); );
@ -235,18 +239,20 @@ const ListMessageForm = () => {
control={control} control={control}
defaultValue={content?.fields?.image_url} defaultValue={content?.fields?.image_url}
render={({ field }) => { render={({ field }) => {
const { onChange, ...rest } = field; const { onChange, value, ...rest } = field;
const options = (contentType?.fields || []).filter(({ type }) =>
[ContentFieldType.FILE].includes(type),
);
return ( return (
<AutoCompleteSelect<ContentField, "label", false> <AutoCompleteSelect<ContentField, "label", false>
options={(contentType?.fields || []).filter(({ type }) => options={options}
[ContentFieldType.FILE].includes(type),
)}
idKey="name" idKey="name"
labelKey="label" labelKey="label"
label={t("label.image_url")} label={t("label.image_url")}
multiple={false} multiple={false}
onChange={(_e, selected) => onChange(selected?.name)} onChange={(_e, selected) => onChange(selected?.name)}
{...(options.length && { value })}
{...rest} {...rest}
/> />
); );
@ -259,18 +265,20 @@ const ListMessageForm = () => {
control={control} control={control}
defaultValue={content?.fields?.url} defaultValue={content?.fields?.url}
render={({ field }) => { render={({ field }) => {
const { onChange, ...rest } = field; const { onChange, value, ...rest } = field;
const options = (contentType?.fields || []).filter(({ type }) =>
[ContentFieldType.URL].includes(type),
);
return ( return (
<AutoCompleteSelect<ContentField, "label", false> <AutoCompleteSelect<ContentField, "label", false>
options={(contentType?.fields || []).filter(({ type }) => options={options}
[ContentFieldType.URL].includes(type),
)}
idKey="name" idKey="name"
labelKey="label" labelKey="label"
label={t("label.url")} label={t("label.url")}
multiple={false} multiple={false}
onChange={(_e, selected) => onChange(selected?.name)} onChange={(_e, selected) => onChange(selected?.name)}
{...(options.length && { value })}
{...rest} {...rest}
/> />
); );