Skip to main content
Validate RSVP component schema

Properties

  • receiverEmail (string) - pattern: ^\S+@\S+\.\S+$... - format: email - Email where RSVP will be sent
  • inviteeDetails (object) (required)
    • name (boolean) - default: True (required) - Name will be always asked
    • email (boolean) - default: False - If true, email will be asked from the invitee
    • phone (boolean) - default: False - If true, phone number will be asked from the invitee
  • rsvpBy (object) - Rsvp end date.
    • endDate (string) (required)
    • timeZone (string) (required)
    • timeFormat (string) - enum: 12h, 24h - default: 24h
    • dateFormat (string) - enum: MM-dd-yyyy, dd-MM-yyyy, yyyy-MM-dd, M/dd/yyyy, MMM d, yyyy - default: MM-dd-yyyy
  • numberOfGuests (number) - minimum: 0 - maximum: 50 - default: 0 - Additional number to guests invitee an bring with them
  • answerFormat (string) - enum: option, paragraph - ** This JSON OBJECT IS DEPRECATED **
  • askFromGuests (boolean) - default: False - Whether to ask the question from quests as well. ** This JSON OBJECT IS DEPRECATED **
  • askFromInvitee (boolean) - Whether to ask the question from quests as well. ** This JSON OBJECT IS DEPRECATED **
  • question (string) - maxLength: 1000 - Question to ask from invitee or guests ** This JSON OBJECT IS DEPRECATED **
  • options (array of object (min: , max: 50)) - Array of strings to use when answerFormat is set to option. ** This JSON OBJECT IS DEPRECATED **
  • questions (object - ref: rsvp_form)
  • submitButton (object - ref: _base_button)
  • formatting (object)
    • textStyle (object - style component reference)
    • cardStyle (object - style component reference)

Used in Categories

This component is used in the following categories:

Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "definitions": {},
  "title": "RSVP Component",
  "description": "Validate RSVP component schema",
  "type": "object",
  "required": [
    "inviteeDetails"
  ],
  "additionalProperties": false,
  "properties": {
    "receiverEmail": {
      "type": "string",
      "format": "email",
      "pattern": "^\\S+@\\S+\\.\\S+$",
      "description": "Email where RSVP will be sent"
    },
    "inviteeDetails": {
      "type": "object",
      "required": [
        "name"
      ],
      "additionalProperties": false,
      "properties": {
        "name": {
          "type": "boolean",
          "default": true,
          "description": "Name will be always asked"
        },
        "email": {
          "type": "boolean",
          "default": false,
          "description": "If true, email will be asked from the invitee"
        },
        "phone": {
          "type": "boolean",
          "default": false,
          "description": "If true, phone number will be asked from the invitee"
        }
      }
    },
    "rsvpBy": {
      "type": "object",
      "additionalProperties": false,
      "description": "Rsvp end date.",
      "required": [
        "endDate",
        "timeZone"
      ],
      "properties": {
        "endDate": {
          "type": "string"
        },
        "timeZone": {
          "type": "string"
        },
        "timeFormat": {
          "type": "string",
          "default": "24h",
          "enum": [
            "12h",
            "24h"
          ]
        },
        "dateFormat": {
          "type": "string",
          "default": "MM-dd-yyyy",
          "enum": [
            "MM-dd-yyyy",
            "dd-MM-yyyy",
            "yyyy-MM-dd",
            "M/dd/yyyy",
            "MMM d, yyyy"
          ]
        }
      }
    },
    "numberOfGuests": {
      "type": "number",
      "minimum": 0,
      "default": 0,
      "maximum": 50,
      "$comment": "A maximum of 50 guest can be added.",
      "description": "Additional number to guests invitee an bring with them"
    },
    "answerFormat": {
      "type": "string",
      "description": "** This JSON OBJECT IS DEPRECATED ** ",
      "enum": [
        "option",
        "paragraph"
      ]
    },
    "askFromGuests": {
      "type": "boolean",
      "default": false,
      "description": "Whether to ask the question from quests as well. ** This JSON OBJECT IS DEPRECATED **"
    },
    "askFromInvitee": {
      "type": "boolean",
      "description": "Whether to ask the question from quests as well. ** This JSON OBJECT IS DEPRECATED **"
    },
    "question": {
      "type": "string",
      "maxLength": 1000,
      "description": "Question to ask from invitee or guests ** This JSON OBJECT IS DEPRECATED ** "
    },
    "options": {
      "type": "array",
      "description": "Array of strings to use when answerFormat is set to option. ** This JSON OBJECT IS DEPRECATED ** ",
      "maxItems": 50,
      "$comment": "A maximum of 50 options can be added",
      "items": {
        "type": "object",
        "required": [
          "option"
        ],
        "additionalProperties": false,
        "properties": {
          "option": {
            "type": "string",
            "maxLength": 500
          }
        }
      }
    },
    "questions": {
      "$ref": "rsvp_form.json"
    },
    "submitButton": {
      "$ref": "_base_button.json"
    },
    "formatting": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "textStyle": {
          "$ref": "style/text.json"
        },
        "cardStyle": {
          "$ref": "style/card.json"
        }
      }
    }
  }
}