From 691554ea2899fa418b599765b03abdcd31c19ee6 Mon Sep 17 00:00:00 2001 From: ionlizarazu Date: Wed, 12 Oct 2022 23:47:51 +0200 Subject: [PATCH] fix schema enhancer --- src/advancedSchema.js | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/src/advancedSchema.js b/src/advancedSchema.js index 01bb8ec..9755f39 100644 --- a/src/advancedSchema.js +++ b/src/advancedSchema.js @@ -2,7 +2,7 @@ import messages from './messages'; export const advancedSchema = (props) => { const { intl, schema, formData } = props; - const imageWidth = ['right', 'left'].includes(formData.imageSide) + const imageWidth = ['right', 'left'].includes(formData?.imageSide) ? ['imageWidth'] : []; const headingChoices = [ @@ -10,24 +10,27 @@ export const advancedSchema = (props) => { ['h3', 'H3'], ['h4', 'H4'], ]; + let heading = + formData && formData['@type'] === 'listing' + ? [ + { + id: 'header', + title: intl.formatMessage(messages.headerConfiguration), + fields: ['header', 'headerUrl', 'headerTag'], + }, + ] + : []; + return { ...schema, fieldsets: [ - { - id: 'default', - title: 'Default', - fields: ['variation'], - }, - { - id: 'querystring', - title: intl.formatMessage(messages.querystring), - fields: ['querystring'], - }, - { - id: 'header', - title: intl.formatMessage(messages.headerConfiguration), - fields: ['header', 'headerUrl', 'headerTag'], - }, + ...(schema.fieldsets && + schema.fieldsets.length > 0 && + schema.fieldsets.filter((fieldset) => fieldset.id === 'default')), + ...(schema.fieldsets && + schema.fieldsets.length > 0 && + schema.fieldsets.filter((fieldset) => fieldset.id === 'searchquery')), + ...heading, { id: 'columns', title: intl.formatMessage(messages.columnsConfiguration),