Files
rustycms/schemas/campaign.schema.json

67 lines
1.5 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"_slug": {
"description": "Entry identifier (URL slug / filename without extension)",
"type": "string"
},
"campaignName": {
"description": "Campaign name",
"type": "string"
},
"css": {
"description": "Optional CSS",
"type": "string"
},
"html": {
"description": "HTML content",
"type": "string"
},
"insertHtml": {
"default": "beforeend",
"description": "Position relative to selector",
"enum": [
"afterbegin",
"beforeend",
"afterend",
"beforebegin",
"replace"
],
"type": "string"
},
"javascript": {
"description": "Optional JavaScript",
"type": "string"
},
"medias": {
"description": "Media (images)",
"items": {
"description": "Reference (slug) to collection 'img'",
"type": "string"
},
"type": "array"
},
"selector": {
"description": "CSS selector where content is inserted",
"type": "string"
},
"timeUntil": {
"description": "Time limit (until when the campaign runs)",
"format": "date-time",
"type": "string"
},
"urlPattern": {
"description": "URL pattern (e.g. regex) for campaign usage",
"type": "string"
}
},
"required": [
"_slug",
"campaignName",
"urlPattern",
"selector",
"insertHtml"
],
"type": "object"
}