{
  "container": {
    "name": "Container",
    "description": "This component contains things within itself",
    "icon": "ri-layout-column-line",
    "hasChildren": true,
    "styleable": true,
    "transitionable": true,
    "settings": []
  },
  "screenslot": {
    "name": "Screenslot",
    "icon": "ri-artboard-2-line",
    "description": "Contains your app screens",
    "styleable": true
  },
  "button": {
    "name": "Button",
    "description": "A basic html button that is ready for styling",
    "icon": "ri-share-box-line",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Text",
        "key": "text"
      },
      {
        "type": "boolean",
        "label": "Disabled",
        "key": "disabled"
      },
      {
        "type": "event",
        "label": "On Click",
        "key": "onClick"
      }
    ]
  },
  "repeater": {
    "name": "Repeater",
    "description": "A configurable data list that attaches to your backend tables.",
    "icon": "ri-list-check-2",
    "styleable": true,
    "hasChildren": true,
    "settings": [
      {
        "type": "dataProvider",
        "label": "Data",
        "key": "dataProvider"
      },
      {
        "type": "text",
        "label": "Empty Text",
        "key": "noRowsMessage",
        "defaultValue": "No rows found."
      },
      {
        "type": "filter",
        "label": "Filtering",
        "key": "filter"
      }
    ],
    "context": {
      "type": "schema"
    }
  },
  "search": {
    "name": "Search",
    "description": "A searchable list of items.",
    "icon": "ri-search-line",
    "styleable": true,
    "hasChildren": true,
    "settings": [
      {
        "type": "table",
        "label": "Table",
        "key": "table"
      },
      {
        "type": "multifield",
        "label": "Columns",
        "key": "columns",
        "dependsOn": "table"
      },
      {
        "type": "number",
        "label": "Rows/Page",
        "defaultValue": 25,
        "key": "pageSize"
      },
      {
        "type": "text",
        "label": "Empty Text",
        "key": "noRowsMessage",
        "defaultValue": "No rows found."
      }
    ],
    "context": {
      "type": "schema"
    }
  },
  "stackedlist": {
    "name": "Stacked List",
    "icon": "ri-archive-drawer-line",
    "description": "A basic card component that can contain content and actions.",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Image",
        "key": "imageUrl"
      },
      {
        "type": "text",
        "label": "Heading",
        "key": "heading"
      },
      {
        "type": "text",
        "label": "Subheading",
        "key": "subheading"
      },
      {
        "type": "text",
        "label": "Link URL",
        "key": "destinationUrl",
        "placeholder": "/screen"
      }
    ]
  },
  "card": {
    "name": "Vertical Card",
    "description": "A basic card component that can contain content and actions.",
    "icon": "ri-layout-column-line",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Image",
        "key": "imageUrl"
      },
      {
        "type": "text",
        "label": "Heading",
        "key": "heading"
      },
      {
        "type": "text",
        "label": "Description",
        "key": "description"
      },
      {
        "type": "text",
        "label": "Link Text",
        "key": "linkText"
      },
      {
        "type": "text",
        "label": "Link URL",
        "key": "linkUrl",
        "placeholder": "/screen"
      },
      {
        "type": "color",
        "label": "Link Color",
        "key": "linkColor",
        "defaultValue": "#000"
      },
      {
        "type": "color",
        "label": "Hover Color",
        "key": "linkHoverColor",
        "defaultValue": "#222"
      },
      {
        "type": "select",
        "label": "Image Height",
        "key": "imageHeight",
        "options": ["auto", "12rem", "16rem", "20rem", "24rem"],
        "defaultValue": "auto"
      },
      {
        "type": "select",
        "label": "Card Width",
        "key": "cardWidth",
        "options": ["16rem", "20rem", "24rem"],
        "defaultValue": "20rem"
      }
    ]
  },
  "text": {
    "name": "Paragraph",
    "description": "A component for displaying paragraph text.",
    "icon": "ri-paragraph",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Text",
        "key": "text"
      }
    ]
  },
  "heading": {
    "name": "Headline",
    "icon": "ri-heading",
    "description": "A component for displaying heading text",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "key": "text",
        "label": "Text"
      },
      {
        "type": "select",
        "key": "type",
        "label": "Type",
        "options": ["h1", "h2", "h3", "h4", "h5", "h6"],
        "defaultValue": "h1"
      }
    ]
  },
  "image": {
    "name": "Image",
    "description": "A basic component for displaying images",
    "icon": "ri-image-line",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "URL",
        "key": "url"
      }
    ]
  },
  "backgroundimage": {
    "name": "Background Image",
    "description": "A background image",
    "icon": "ri-image-line",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "URL",
        "key": "url"
      },
      {
        "type": "select",
        "label": "Position",
        "key": "position",
        "defaultValue": "center center",
        "options": [
          {
            "label": "Center Top",
            "value": "center top"
          },
          {
            "label": "Center",
            "value": "center center"
          },
          {
            "label": "Center Bottom",
            "value": "center bottom"
          },
          {
            "label": "Left Top",
            "value": "left top"
          },
          {
            "label": "Left Center",
            "value": "left center"
          },
          {
            "label": "Left Bottom",
            "value": "left bottom"
          },
          {
            "label": "Right Top",
            "value": "right top"
          },
          {
            "label": "Right Center",
            "value": "right center"
          },
          {
            "label": "Right Bottom",
            "value": "right bottom"
          }
        ]
      }
    ]
  },
  "icon": {
    "name": "Icon",
    "description": "A basic component for displaying icons",
    "icon": "ri-sun-fill",
    "styleable": true,
    "settings": [
      {
        "type": "icon",
        "label": "Icon",
        "key": "icon"
      },
      {
        "type": "select",
        "label": "Size",
        "key": "size",
        "defaultValue": "md",
        "options": [
          { "value": "ri-xxs", "label": "xxs" },
          { "value": "ri-xs", "label": "xs" },
          { "value": "ri-sm", "label": "sm" },
          { "value": "ri-1x", "label": "md" },
          { "value": "ri-lg", "label": "lg" },
          { "value": "ri-xl", "label": "xl" },
          { "value": "ri-2x", "label": "2x" },
          { "value": "ri-3x", "label": "3x" },
          { "value": "ri-4x", "label": "4x" },
          { "value": "ri-5x", "label": "5x" },
          { "value": "ri-6x", "label": "6x" },
          { "value": "ri-7x", "label": "7x" },
          { "value": "ri-8x", "label": "8x" },
          { "value": "ri-9x", "label": "9x" },
          { "value": "ri-10x", "label": "10x" }
        ]
      },
      {
        "type": "color",
        "label": "Color",
        "key": "color",
        "defaultValue": "#000"
      },
      {
        "type": "event",
        "label": "On Click",
        "key": "onClick"
      }
    ]
  },
  "login": {
    "name": "Login Form",
    "description": "A component that automatically generates a login screen for your app.",
    "icon": "ri-login-box-line",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Logo",
        "key": "logo"
      },
      {
        "type": "text",
        "label": "Title",
        "key": "title"
      },
      {
        "type": "text",
        "label": "Button Text",
        "key": "buttonText"
      }
    ]
  },
  "navigation": {
    "name": "Nav Bar",
    "description": "A component for handling the navigation within your app.",
    "icon": "ri-navigation-line",
    "styleable": true,
    "hasChildren": true,
    "settings": [
      {
        "type": "text",
        "label": "Logo URL",
        "key": "logoUrl"
      }
    ]
  },
  "link": {
    "name": "Link",
    "description": "A basic link component for internal and external links",
    "icon": "ri-link",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Text",
        "key": "text"
      },
      {
        "type": "text",
        "label": "URL",
        "key": "url",
        "placeholder": "/screen"
      },
      {
        "type": "boolean",
        "label": "New Tab",
        "key": "openInNewTab"
      },
      {
        "type": "boolean",
        "label": "External",
        "key": "external"
      }
    ]
  },
  "cardhorizontal": {
    "name": "Horizontal Card",
    "description": "A basic card component that can contain content and actions.",
    "icon": "ri-layout-row-line",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Image",
        "key": "imageUrl"
      },
      {
        "type": "text",
        "label": "Heading",
        "key": "heading"
      },
      {
        "type": "text",
        "label": "Description",
        "key": "description"
      },
      {
        "type": "text",
        "label": "Subtext",
        "key": "subtext"
      },
      {
        "type": "text",
        "label": "Link Text",
        "key": "linkText"
      },
      {
        "type": "text",
        "label": "Link URL",
        "key": "linkUrl",
        "placeholder": "/screen"
      },
      {
        "type": "color",
        "label": "Link Color",
        "key": "linkColor",
        "defaultValue": "#000"
      },
      {
        "type": "color",
        "label": "Hover Color",
        "key": "linkHoverColor",
        "defaultValue": "#222"
      },
      {
        "type": "select",
        "label": "Card Width",
        "key": "cardWidth",
        "options": ["24rem", "28rem", "32rem", "40rem", "48rem", "60rem", "100%"],
        "defaultValue": "32rem"
      },
      {
        "type": "select",
        "label": "Image Width",
        "key": "imageWidth",
        "options": ["auto", "8rem", "12rem", "16rem"],
        "defaultValue": "8rem"
      },
      {
        "type": "select",
        "label": "Image Height",
        "key": "imageHeight",
        "options": ["auto", "8rem", "12rem", "16rem", "auto"],
        "defaultValue": "auto"
      }
    ]
  },
  "cardstat": {
    "name": "Stat Card",
    "description": "A card component for displaying numbers.",
    "icon": "ri-dual-sim-2-line",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Title",
        "key": "title",
        "placeholder": "Total Revenue"
      },
      {
        "type": "text",
        "label": "Value",
        "key": "value",
        "placeholder": "$1,981,983"
      },
      {
        "type": "text",
        "label": "Label",
        "key": "label",
        "placeholder": "Stripe"
      }
    ]
  },
  "embed": {
    "name": "Embed",
    "icon": "ri-code-line",
    "description": "Embed content from 3rd party sources",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Embed",
        "key": "embed"
      }
    ]
  },
  "bar": {
    "name": "Bar Chart",
    "description": "Bar chart",
    "icon": "ri-bar-chart-line",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Title",
        "key": "title"
      },
      {
        "type": "dataProvider",
        "label": "Data",
        "key": "dataProvider"
      },
      {
        "type": "field",
        "label": "Label Col.",
        "key": "labelColumn",
        "dependsOn": "dataProvider"
      },
      {
        "type": "multifield",
        "label": "Data Cols.",
        "key": "valueColumns",
        "dependsOn": "dataProvider"
      },
      {
        "type": "select",
        "label": "Format",
        "key": "yAxisUnits",
        "options": ["Default", "Thousands", "Millions"],
        "defaultValue": "Default"
      },
      {
        "type": "text",
        "label": "Y Axis Label",
        "key": "yAxisLabel"
      },
      {
        "type": "text",
        "label": "X Axis Label",
        "key": "xAxisLabel"
      },
      {
        "type": "text",
        "label": "Width",
        "key": "width"
      },
      {
        "type": "text",
        "label": "Height",
        "key": "height",
        "defaultValue": "400"
      },
      {
        "type": "select",
        "label": "Colours",
        "key": "palette",
        "defaultValue": "Palette 1",
        "options": [
          "Palette 1",
          "Palette 2",
          "Palette 3",
          "Palette 4",
          "Palette 5",
          "Palette 6",
          "Palette 7",
          "Palette 8",
          "Palette 9",
          "Palette 10"
        ]
      },
      {
        "type": "boolean",
        "label": "Stacked",
        "key": "stacked",
        "defaultValue": false
      },
      {
        "type": "boolean",
        "label": "Data Labels",
        "key": "dataLabels",
        "defaultValue": false
      },
      {
        "type": "boolean",
        "label": "Animate",
        "key": "animate",
        "defaultValue": true
      },
      {
        "type": "boolean",
        "label": "Legend",
        "key": "legend",
        "defaultValue": false
      }
    ]
  },
  "line": {
    "name": "Line Chart",
    "description": "Line chart",
    "icon": "ri-line-chart-line",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Title",
        "key": "title"
      },
      {
        "type": "dataProvider",
        "label": "Data",
        "key": "dataProvider"
      },
      {
        "type": "field",
        "label": "Label Col.",
        "key": "labelColumn",
        "dependsOn": "dataProvider"
      },
      {
        "type": "multifield",
        "label": "Data Cols.",
        "key": "valueColumns",
        "dependsOn": "dataProvider"
      },
      {
        "type": "select",
        "label": "Format",
        "key": "yAxisUnits",
        "options": ["Default", "Thousands", "Millions"],
        "defaultValue": "Default"
      },
      {
        "type": "text",
        "label": "Y Axis Label",
        "key": "yAxisLabel"
      },
      {
        "type": "text",
        "label": "X Axis Label",
        "key": "xAxisLabel"
      },
      {
        "type": "text",
        "label": "Width",
        "key": "width"
      },
      {
        "type": "text",
        "label": "Height",
        "key": "height",
        "defaultValue": "400"
      },
      {
        "type": "select",
        "label": "Colours",
        "key": "palette",
        "defaultValue": "Palette 1",
        "options": [
          "Palette 1",
          "Palette 2",
          "Palette 3",
          "Palette 4",
          "Palette 5",
          "Palette 6",
          "Palette 7",
          "Palette 8",
          "Palette 9",
          "Palette 10"
        ]
      },
      {
        "type": "select",
        "label": "Curve",
        "key": "curve",
        "options": ["Smooth", "Straight", "Stepline"],
        "defaultValue": "Smooth"
      },
      {
        "type": "boolean",
        "label": "Data Labels",
        "key": "dataLabels",
        "defaultValue": false
      },
      {
        "type": "boolean",
        "label": "Animate",
        "key": "animate",
        "defaultValue": true
      },
      {
        "type": "boolean",
        "label": "Legend",
        "key": "legend",
        "defaultValue": false
      }
    ]
  },
  "area": {
    "name": "Area Chart",
    "description": "Line chart",
    "icon": "ri-line-chart-fill",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Title",
        "key": "title"
      },
      {
        "type": "dataProvider",
        "label": "Data",
        "key": "dataProvider"
      },
      {
        "type": "field",
        "label": "Label Col.",
        "key": "labelColumn",
        "dependsOn": "dataProvider"
      },
      {
        "type": "multifield",
        "label": "Data Cols.",
        "key": "valueColumns",
        "dependsOn": "dataProvider"
      },
      {
        "type": "select",
        "label": "Format",
        "key": "yAxisUnits",
        "options": ["Default", "Thousands", "Millions"],
        "defaultValue": "Default"
      },
      {
        "type": "text",
        "label": "Y Axis Label",
        "key": "yAxisLabel"
      },
      {
        "type": "text",
        "label": "X Axis Label",
        "key": "xAxisLabel"
      },
      {
        "type": "text",
        "label": "Width",
        "key": "width"
      },
      {
        "type": "text",
        "label": "Height",
        "key": "height",
        "defaultValue": "400"
      },
      {
        "type": "select",
        "label": "Colours",
        "key": "palette",
        "defaultValue": "Palette 1",
        "options": [
          "Palette 1",
          "Palette 2",
          "Palette 3",
          "Palette 4",
          "Palette 5",
          "Palette 6",
          "Palette 7",
          "Palette 8",
          "Palette 9",
          "Palette 10"
        ]
      },
      {
        "type": "select",
        "label": "Curve",
        "key": "curve",
        "options": ["Smooth", "Straight", "Stepline"],
        "defaultValue": "Smooth"
      },
      {
        "type": "boolean",
        "label": "Data Labels",
        "key": "dataLabels",
        "defaultValue": false
      },
      {
        "type": "boolean",
        "label": "Animate",
        "key": "animate",
        "defaultValue": true
      },
      {
        "type": "boolean",
        "label": "Legend",
        "key": "legend",
        "defaultValue": false
      },
      {
        "type": "boolean",
        "label": "Stacked",
        "key": "stacked",
        "defaultValue": true
      },
      {
        "type": "boolean",
        "label": "Gradient",
        "key": "gradient",
        "defaultValue": false
      }
    ]
  },
  "pie": {
    "name": "Pie Chart",
    "description": "Pie chart",
    "icon": "ri-pie-chart-line",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Title",
        "key": "title"
      },
      {
        "type": "dataProvider",
        "label": "Data",
        "key": "dataProvider"
      },
      {
        "type": "field",
        "label": "Label Col.",
        "key": "labelColumn",
        "dependsOn": "dataProvider"
      },
      {
        "type": "field",
        "label": "Data Col.",
        "key": "valueColumn",
        "dependsOn": "dataProvider"
      },
      {
        "type": "text",
        "label": "Width",
        "key": "width"
      },
      {
        "type": "text",
        "label": "Height",
        "key": "height",
        "defaultValue": "400"
      },
      {
        "type": "select",
        "label": "Colours",
        "key": "palette",
        "defaultValue": "Palette 1",
        "options": [
          "Palette 1",
          "Palette 2",
          "Palette 3",
          "Palette 4",
          "Palette 5",
          "Palette 6",
          "Palette 7",
          "Palette 8",
          "Palette 9",
          "Palette 10"
        ]
      },
      {
        "type": "boolean",
        "label": "Data Labels",
        "key": "dataLabels",
        "defaultValue": false
      },
      {
        "type": "boolean",
        "label": "Animate",
        "key": "animate",
        "defaultValue": true
      },
      {
        "type": "boolean",
        "label": "Legend",
        "key": "legend",
        "defaultValue": false
      }
    ]
  },
  "donut": {
    "name": "Donut Chart",
    "description": "Donut chart",
    "icon": "ri-donut-chart-line",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Title",
        "key": "title"
      },
      {
        "type": "dataProvider",
        "label": "Data",
        "key": "dataProvider"
      },
      {
        "type": "field",
        "label": "Label Col.",
        "key": "labelColumn",
        "dependsOn": "dataProvider"
      },
      {
        "type": "field",
        "label": "Data Col.",
        "key": "valueColumn",
        "dependsOn": "dataProvider"
      },
      {
        "type": "text",
        "label": "Width",
        "key": "width"
      },
      {
        "type": "text",
        "label": "Height",
        "key": "height",
        "defaultValue": "400"
      },
      {
        "type": "select",
        "label": "Colours",
        "key": "palette",
        "defaultValue": "Palette 1",
        "options": [
          "Palette 1",
          "Palette 2",
          "Palette 3",
          "Palette 4",
          "Palette 5",
          "Palette 6",
          "Palette 7",
          "Palette 8",
          "Palette 9",
          "Palette 10"
        ]
      },
      {
        "type": "boolean",
        "label": "Data Labels",
        "key": "dataLabels",
        "defaultValue": false
      },
      {
        "type": "boolean",
        "label": "Animate",
        "key": "animate",
        "defaultValue": true
      },
      {
        "type": "boolean",
        "label": "Legend",
        "key": "legend",
        "defaultValue": false
      }
    ]
  },
  "candlestick": {
    "name": "Candlestick Chart",
    "description": "Candlestick chart",
    "icon": "ri-stock-line",
    "styleable": true,
    "settings": [
      {
        "type": "text",
        "label": "Title",
        "key": "title"
      },
      {
        "type": "dataProvider",
        "label": "Data",
        "key": "dataProvider"
      },
      {
        "type": "field",
        "label": "Date Col.",
        "key": "dateColumn",
        "dependsOn": "dataProvider"
      },
      {
        "type": "field",
        "label": "Open Col.",
        "key": "openColumn",
        "dependsOn": "dataProvider"
      },
      {
        "type": "field",
        "label": "Close Col.",
        "key": "closeColumn",
        "dependsOn": "dataProvider"
      },
      {
        "type": "field",
        "label": "High Col.",
        "key": "highColumn",
        "dependsOn": "dataProvider"
      },
      {
        "type": "field",
        "label": "Low Col.",
        "key": "lowColumn",
        "dependsOn": "dataProvider"
      },
      {
        "type": "select",
        "label": "Format",
        "key": "yAxisUnits",
        "options": ["Default", "Thousands", "Millions"],
        "defaultValue": "Default"
      },
      {
        "type": "text",
        "label": "Y Axis Label",
        "key": "yAxisLabel"
      },
      {
        "type": "text",
        "label": "X Axis Label",
        "key": "xAxisLabel"
      },
      {
        "type": "text",
        "label": "Width",
        "key": "width"
      },
      {
        "type": "text",
        "label": "Height",
        "key": "height",
        "defaultValue": "400"
      },
      {
        "type": "boolean",
        "label": "Animate",
        "key": "animate",
        "defaultValue": true
      }
    ]
  },
  "form": {
    "name": "Form",
    "icon": "ri-file-text-line",
    "styleable": true,
    "hasChildren": true,
    "actions": [
      "ValidateForm"
    ],
    "settings": [
      {
        "type": "schema",
        "label": "Schema",
        "key": "dataSource"
      },
      {
        "type": "select",
        "label": "Theme",
        "key": "theme",
        "defaultValue": "spectrum--light",
        "options": [
          {
            "label": "Lightest",
            "value": "spectrum--lightest"
          },
          {
            "label": "Light",
            "value": "spectrum--light"
          },
          {
            "label": "Dark",
            "value": "spectrum--dark"
          },
          {
            "label": "Darkest",
            "value": "spectrum--darkest"
          }
        ]
      },
      {
        "type": "select",
        "label": "Size",
        "key": "size",
        "defaultValue": "spectrum--medium",
        "options": [
          {
            "label": "Medium",
            "value": "spectrum--medium"
          },
          {
            "label": "Large",
            "value": "spectrum--large"
          }
        ]
      },
      {
        "type": "boolean",
        "label": "Disabled",
        "key": "disabled",
        "defaultValue": false
      }
    ],
    "context": {
      "type": "form"
    }
  },
  "fieldgroup": {
    "name": "Field Group",
    "icon": "ri-layout-row-line",
    "styleable": true,
    "hasChildren": true,
    "settings": [
      {
        "type": "select",
        "label": "Labels",
        "key": "labelPosition",
        "defaultValue": "above",
        "options": [
          {
            "label": "Left",
            "value": "left"
          },
          {
            "label": "Right",
            "value": "right"
          },
          {
            "label": "Above",
            "value": "above"
          }
        ]
      }
    ]
  },
  "stringfield": {
    "name": "Text Field",
    "icon": "ri-t-box-line",
    "styleable": true,
    "settings": [
      {
        "type": "field/string",
        "label": "Field",
        "key": "field"
      },
      {
        "type": "text",
        "label": "Label",
        "key": "label"
      },
      {
        "type": "text",
        "label": "Placeholder",
        "key": "placeholder"
      },
      {
        "type": "boolean",
        "label": "Disabled",
        "key": "disabled",
        "defaultValue": false
      }
    ]
  },
  "numberfield": {
    "name": "Number Field",
    "icon": "ri-edit-box-line",
    "styleable": true,
    "settings": [
      {
        "type": "field/number",
        "label": "Field",
        "key": "field"
      },
      {
        "type": "text",
        "label": "Label",
        "key": "label"
      },
      {
        "type": "text",
        "label": "Placeholder",
        "key": "placeholder"
      },
      {
        "type": "boolean",
        "label": "Disabled",
        "key": "disabled",
        "defaultValue": false
      }
    ]
  },
  "passwordfield": {
    "name": "Password Field",
    "icon": "ri-lock-password-line",
    "styleable": true,
    "settings": [
      {
        "type": "field/string",
        "label": "Field",
        "key": "field"
      },
      {
        "type": "text",
        "label": "Label",
        "key": "label"
      },
      {
        "type": "text",
        "label": "Placeholder",
        "key": "placeholder"
      },
      {
        "type": "boolean",
        "label": "Disabled",
        "key": "disabled",
        "defaultValue": false
      }
    ]
  },
  "optionsfield": {
    "name": "Options Picker",
    "icon": "ri-file-list-line",
    "styleable": true,
    "settings": [
      {
        "type": "field/options",
        "label": "Field",
        "key": "field"
      },
      {
        "type": "text",
        "label": "Label",
        "key": "label"
      },
      {
        "type": "text",
        "label": "Placeholder",
        "key": "placeholder",
        "placeholder": "Choose an option"
      },
      {
        "type": "boolean",
        "label": "Disabled",
        "key": "disabled",
        "defaultValue": false
      }
    ]
  },
  "booleanfield": {
    "name": "Checkbox",
    "icon": "ri-checkbox-line",
    "styleable": true,
    "settings": [
      {
        "type": "field/boolean",
        "label": "Field",
        "key": "field"
      },
      {
        "type": "text",
        "label": "Label",
        "key": "label"
      },
      {
        "type": "text",
        "label": "Text",
        "key": "text"
      },
      {
        "type": "boolean",
        "label": "Disabled",
        "key": "disabled",
        "defaultValue": false
      }
    ]
  },
  "longformfield": {
    "name": "Rich Text",
    "icon": "ri-file-edit-line",
    "styleable": true,
    "settings": [
      {
        "type": "field/longform",
        "label": "Field",
        "key": "field"
      },
      {
        "type": "text",
        "label": "Label",
        "key": "label"
      },
      {
        "type": "text",
        "label": "Placeholder",
        "key": "placeholder",
        "placeholder": "Type something..."
      },
      {
        "type": "boolean",
        "label": "Disabled",
        "key": "disabled",
        "defaultValue": false
      }
    ]
  },
  "datetimefield": {
    "name": "Date Picker",
    "icon": "ri-calendar-line",
    "styleable": true,
    "settings": [
      {
        "type": "field/datetime",
        "label": "Field",
        "key": "field"
      },
      {
        "type": "text",
        "label": "Label",
        "key": "label"
      },
      {
        "type": "text",
        "label": "Placeholder",
        "key": "placeholder"
      },
      {
        "type": "boolean",
        "label": "Show Time",
        "key": "enableTime",
        "defaultValue": true
      },
      {
        "type": "boolean",
        "label": "Disabled",
        "key": "disabled",
        "defaultValue": false
      }
    ]
  },
  "attachmentfield": {
    "name": "Attachment",
    "icon": "ri-image-edit-line",
    "styleable": true,
    "settings": [
      {
        "type": "field/attachment",
        "label": "Field",
        "key": "field"
      },
      {
        "type": "text",
        "label": "Label",
        "key": "label"
      },
      {
        "type": "boolean",
        "label": "Disabled",
        "key": "disabled",
        "defaultValue": false
      }
    ]
  },
  "relationshipfield": {
    "name": "Relationship Picker",
    "icon": "ri-links-line",
    "styleable": true,
    "settings": [
      {
        "type": "field/link",
        "label": "Field",
        "key": "field"
      },
      {
        "type": "text",
        "label": "Label",
        "key": "label"
      },
      {
        "type": "text",
        "label": "Placeholder",
        "key": "placeholder"
      },
      {
        "type": "boolean",
        "label": "Disabled",
        "key": "disabled",
        "defaultValue": false
      }
    ]
  },
  "dataprovider": {
    "name": "Data Provider",
    "icon": "ri-database-2-line",
    "styleable": false,
    "hasChildren": true,
    "settings": [
      {
        "type": "dataSource",
        "label": "Data",
        "key": "dataSource"
      },
      {
        "type": "filter",
        "label": "Filtering",
        "key": "filter"
      },
      {
        "type": "field",
        "label": "Sort Column",
        "key": "sortColumn"
      },
      {
        "type": "select",
        "label": "Sort Order",
        "key": "sortOrder",
        "options": ["Ascending", "Descending"],
        "defaultValue": "Descending"
      },
      {
        "type": "number",
        "label": "Limit",
        "key": "limit"
      }
    ],
    "context": {
      "type": "static",
      "values":  [
        {
          "label": "Rows",
          "key": "rows"
        },
        {
          "label": "Rows Length",
          "key": "rowsLength"
        },
        {
          "label": "Schema",
          "key": "schema"
        },
        {
          "label": "Loading",
          "key": "loading"
        },
        {
          "label": "Loaded",
          "key": "loaded"
        }
      ]
    }
  },
  "table": {
    "name": "Table",
    "icon": "ri-table-line",
    "styleable": true,
    "hasChildren": true,
    "settings": [
      {
        "type": "dataProvider",
        "label": "Data Provider",
        "key": "dataProvider"
      },
      {
        "type": "number",
        "label": "Row Count",
        "key": "rowCount",
        "defaultValue": 8
      },
      {
        "type": "select",
        "label": "Theme",
        "key": "theme",
        "defaultValue": "spectrum--light",
        "options": [
          {
            "label": "Lightest",
            "value": "spectrum--lightest"
          },
          {
            "label": "Light",
            "value": "spectrum--light"
          },
          {
            "label": "Dark",
            "value": "spectrum--dark"
          },
          {
            "label": "Darkest",
            "value": "spectrum--darkest"
          }
        ]
      },
      {
        "type": "select",
        "label": "Size",
        "key": "size",
        "defaultValue": "spectrum--medium",
        "options": [
          {
            "label": "Medium",
            "value": "spectrum--medium"
          },
          {
            "label": "Large",
            "value": "spectrum--large"
          }
        ]
      },
      {
        "type": "boolean",
        "label": "Quiet",
        "key": "quiet"
      },
      {
        "type": "multifield",
        "label": "Columns",
        "key": "columns",
        "dependsOn": "dataProvider",
        "placeholder": "All columns"
      },
      {
        "type": "boolean",
        "label": "Auto Cols.",
        "key": "showAutoColumns",
        "defaultValue": false
      }
    ],
    "context": {
      "type": "schema"
    }
  }
}