Ubuntu

­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­ { "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "additionalProperties": false, "properties": { "label": { "type": "string", "description": "The field label displayed in the edit screen", "minLength": 1 }, "type": { "type": "string", "enum": [ "flexible_content" ], "description": "Field type identifier. Must be \"flexible_content\" for this field type." }, "name": { "type": "string", "description": "The field name used to save/load data. Auto-generated from label if not provided.", "pattern": "^[a-z_][a-z0-9_]*$" }, "key": { "type": "string", "description": "Unique field key. Auto-generated if not provided.", "pattern": "^field_[a-z0-9]+$" }, "instructions": { "type": "string", "description": "Instructions displayed to editors below the field label" }, "required": { "type": "boolean", "description": "Whether this field is required", "default": false }, "conditional_logic": { "type": [ "boolean", "array" ], "description": "Conditional logic rules. Set to false to disable, or provide rules array.", "default": false }, "wrapper": { "type": "object", "description": "HTML wrapper attributes", "properties": { "width": { "type": "string", "description": "Width percentage (e.g., \"50\")" }, "class": { "type": "string", "description": "Custom CSS classes" }, "id": { "type": "string", "description": "Custom HTML ID" } } }, "default_value": { "type": [ "string", "number", "boolean", "null" ], "description": "Default value when creating new content" }, "placeholder": { "type": "string", "description": "Placeholder text shown in empty fields" }, "prepend": { "type": "string", "description": "Text to prepend before the input" }, "append": { "type": "string", "description": "Text to append after the input" }, "maxlength": { "type": "integer", "description": "Maximum character length (if applicable)", "minimum": 1 }, "allow_in_bindings": { "type": "boolean", "description": "Whether this field can be used in block bindings", "default": false }, "layouts": { "type": "array", "description": "Array of layout configuration objects. Each layout represents a different content structure that editors can choose from. Each layout object should have: \"label\" (display name), \"name\" (machine name), \"sub_fields\" (array of field objects for this layout), \"display\" (layout style: \"table\", \"block\", or \"row\"), \"min\" (minimum instances of this layout), and \"max\" (maximum instances of this layout).", "items": { "type": "object" }, "default": [] }, "min": { "type": "integer", "description": "Minimum total number of layouts required", "default": 0, "minimum": 0 }, "max": { "type": "integer", "description": "Maximum total number of layouts allowed (0 for unlimited)", "default": 0, "minimum": 0 }, "button_label": { "type": "string", "description": "Custom text for the \"Add Row\" button", "default": "Add Row" } }, "required": [ "label", "type" ] }