{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "http://schema.mydesignsystem.com/contact.schema.json",
  "title": "Contact",
  "description": "Component used for user interaction",
  "type": "object",
  "properties": {
    "image": {
      "type": "object",
      "properties": {
        "src": {
          "type": "string",
          "format": "image",
          "title": "Image Source",
          "description": "URL of the image to display",
          "examples": ["img/people/author-emily.png"]
        },
        "alt": {
          "type": "string",
          "title": "Alt Text",
          "description": "Alt text of the image",
          "examples": ["Picture of Isabella Doe"]
        },
        "fullWidth": {
          "type": "boolean",
          "title": "Full Width",
          "description": "Image uses all the horizontal space vailable",
          "default": false
        },
        "aspectRatio": {
          "type": "string",
          "title": "aspectRatio",
          "description": "Aspect Ratio of the Images",
          "enum": ["wide", "square", "vertical"],
          "default": "square"
        }
      }
    },
    "title": {
      "title": "Title",
      "description": "Name, company name, etc.",
      "type": "string",
      "examples": ["Isabella Doe"]
    },
    "subtitle": {
      "title": "Subtitle",
      "description": "Position, profession, department, location, etc.",
      "type": "string",
      "examples": ["CEO at Company"]
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "icon": {
            "type": "string",
            "format": "icon"
          },
          "label": {
            "type": "string"
          },
          "url": {
            "type": "string",
            "format": "uri"
          },
          "newTab": {
            "title": "Open link in new Tab",
            "description": "Open link in new Tab",
            "type": "boolean",
            "default": false
          },
          "ariaLabel": {
            "title": "Aria Label",
            "description": "Aria label for the link",
            "type": "string",
            "examples": ["Link to Isabella Doe's social media profile"]
          }
        },
        "additionalProperties": false
      },
      "examples": [
        [
          {
            "icon": "phone",
            "label": "0228 / 688 966 20",
            "url": "tel:+4922868896620"
          },
          {
            "icon": "email",
            "label": "mail@example.com",
            "url": "mailto:mail@example.com"
          }
        ]
      ]
    },
    "copy": {
      "title": "Copy text",
      "type": "string"
    },
    "className": {
      "title": "Class",
      "description": "Additional css classes attached to the wrapping element",
      "type": "string"
    },
    "component": {
      "title": "`ks-component` attribute",
      "description": "Optional custom component identifier",
      "type": "string"
    }
  },
  "additionalProperties": false,
  "required": ["name"]
}
