initial
This commit is contained in:
@@ -0,0 +1,136 @@
|
||||
{
|
||||
"$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": [
|
||||
"clone"
|
||||
],
|
||||
"description": "Field type identifier. Must be \"clone\" 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
|
||||
},
|
||||
"clone": {
|
||||
"type": "array",
|
||||
"description": "Array of field keys or field group keys to clone. The clone field loads and displays these existing fields without duplicating them in the database.",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
"default": []
|
||||
},
|
||||
"display": {
|
||||
"type": "string",
|
||||
"description": "Display mode: \"seamless\" replaces the clone field with the selected fields, \"group\" displays the selected fields as a group of subfields",
|
||||
"enum": [
|
||||
"seamless",
|
||||
"group"
|
||||
],
|
||||
"default": "seamless"
|
||||
},
|
||||
"layout": {
|
||||
"type": "string",
|
||||
"description": "Display layout when display mode is \"group\"",
|
||||
"enum": [
|
||||
"block",
|
||||
"table",
|
||||
"row"
|
||||
],
|
||||
"default": "block"
|
||||
},
|
||||
"prefix_label": {
|
||||
"type": "boolean",
|
||||
"description": "Whether to prefix cloned field labels with the clone field label",
|
||||
"default": false
|
||||
},
|
||||
"prefix_name": {
|
||||
"type": "boolean",
|
||||
"description": "Whether to prefix cloned field names with the clone field name",
|
||||
"default": false
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"label",
|
||||
"type"
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user