Expand my Community achievements bar.

Join expert-led, customer-led sessions on Adobe Experience Manager Assets on August 20th at our Skill Exchange.

Universal Editor: Conditional fields now break editor (previously working schema crashes)

Avatar

Level 1

I'm running into an issue with Adobe Universal Editor where a schema that used to work now causes the editor to freeze and crash.

I haven’t changed the code in the past 2–3 weeks, and this schema was functioning correctly before. The issue appears when I open the component’s property panel — the editor freezes, then crashes.

 

Here’s the component-models.json I’m using:

 

 
{
    "id": "link",
    "fields": [
      {
        "component": "container",
        "valueType": "string",
        "label": "Content",
        "name": "content",
        "collapsible": false,
        "fields": [
          {
            "component": "text",
            "valueType": "string",
            "name": "label",
            "label": "Label"
          },
          {
            "component": "text",
            "valueType": "string",
            "name": "href",
            "label": "URL"
          },
          {
            "component": "boolean",
            "valueType": "boolean",
            "name": "openInNewTab",
            "label": "Open link in New Tab"
          }
        ]
      },
      {
        "component": "container",
        "valueType": "string",
        "label": "Base Config",
        "name": "baseConfig",
        "collapsible": true,
        "fields": [
          {
            "component": "select",
            "label": "Type",
            "name": "type",
            "valueType": "string",
            "options": [
              { "name": "Link", "value": "link" },
              { "name": "Button", "value": "button" }
            ]
          },
          {
            "component": "container",
            "label": "Link configuration",
            "name": "link-config",
            "valueType": "string",
            "condition": { "===": [{ "var": "type" }, "link"] },
            "fields": [
              {
                "component": "select",
                "label": "Link variant",
                "name": "link-variant",
                "valueType": "string",
                "value": "default",
                "options": [
                  { "name": "Default", "value": "default" },
                  { "name": "Quiet", "value": "quiet" }
                ]
              }
            ]
          },
          {
            "component": "container",
            "label": "Button configuration",
            "name": "button-config",
            "valueType": "string",
            "condition": { "===": [{ "var": "type" }, "button"] },
            "fields": [
              {
                "component": "select",
                "label": "Button Type",
                "name": "button-type",
                "valueType": "string",
                "value": "primary",
                "options": [
                  { "name": "Default", "value": "default" },
                  { "name": "Danger", "value": "danger" },
                  { "name": "Ghost", "value": "ghost" },
                  { "name": "Secondary", "value": "secondary" },
                  { "name": "Tertiary", "value": "tertiary" }
                ]
              },
              {
                "component": "boolean",
                "valueType": "boolean",
                "value": false,
                "name": "fullWidth",
                "label": "Full Width",
                "description": "Stretch the button to fill the available horizontal space."
              }
            ]
          }
        ]
      }
    ]
  }

I’ve also tried examples from the official documentation, and those now fail too if they include a conditional field.

Has there been a recent change to validation rules or schema handling that would cause this?
Any insights or updated guidance would be greatly appreciated.

Thanks!

0 Replies