UNPKG

@camunda/element-templates-json-schema-shared

Version:

Shared schema definitions used within element-templates-json-schema

123 lines (122 loc) 3.91 kB
{ "required": [ "name", "id", "appliesTo", "properties" ], "properties": { "$schema": { "$id": "#/$schema", "type": "string", "description": "Reference to the Element Template JSON schema this document follows." }, "name": { "$id": "#/name", "type": "string", "description": "Template name. Shown during template selection and editing of a templated element. Required." }, "id": { "$id": "#/id", "type": "string", "description": "Template identifier. Required." }, "description": { "$id": "#/description", "type": "string", "description": "Template description. Shown during template selection and editing of a templated element." }, "version": { "$id": "#/version", "type": "integer", "description": "Optional version of the template. If you add a version to a template, it will be considered unique based on its ID and version. Two templates can have the same ID if their versions are different." }, "isDefault": { "$id": "#/isDefault", "type": "boolean", "description": "Indicates whether the element template is a default template." }, "deprecated": { "$id": "#/deprecated", "type": ["boolean", "object"], "description": "Marks the template as deprecated. Value can be either a boolean or an object with a message and a link to migration documentation.", "properties": { "message": { "$id": "#/deprecated/message", "type": "string", "description": "Optional message to describe migration path." }, "documentationRef": { "$id": "#/deprecated/documentationRef", "type": "string", "pattern": "^(https|http)://.*", "description": "URL pointing to template documentation. Must be a valid http(s) URL." } } }, "appliesTo": { "$id": "#/appliesTo", "type": "array", "description": "List of BPMN types the template can be applied to. Required.", "default": [], "items": { "$id": "#/appliesTo/items", "type": "string", "pattern": "^[\\w\\d]+:[\\w\\d]+$", "allOf": [ { "$ref": "examples.json#/appliesTo" } ] } }, "elementType": { "$id": "#/elementType", "type": "object", "description": "Object that sets the type of the element. Some properties require a specific value for elementType.", "default": {}, "required": [ "value" ], "properties": { "value": { "$id": "#/elementType/value", "type": "string", "pattern": "^[\\w\\d]+:[\\w\\d]+$", "description": "Specifies the target BPMN element type. The element is replaced with the specified type when a user applies the template. Required if using elementType.", "allOf": [ { "$ref": "examples.json#/elementType" } ] } } }, "metadata": { "$id": "#/metadata", "type": "object", "description": "Some custom properties for further configuration.", "default": {} }, "keywords": { "$id": "#/keywords", "type": "array", "items": { "type": "string" }, "description": "List of keywords to help users find the template. Used in search and filtering, but not displayed in the UI.", "default": [] }, "entriesVisible": { "$id": "#/entriesVisible", "type": "boolean", "description": "Defines whether all property input fields are shown, even those normally hidden by the template." }, "groups": { "$ref": "groups.json" }, "documentationRef": { "$id": "#/documentationRef", "type": "string", "pattern": "^(https|http)://.*" } } }