{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/cloudcannon-configuration/_shared/latest--cloudcannon-config.legacy-eleventy.schema.json",
  "x-lintel": {
    "source": "https://github.com/cloudcannon/configuration-types/releases/latest/download/cloudcannon-config.legacy-eleventy.schema.json",
    "sourceSha256": "c0cc86f2476ac5fad6fb466c7b25aeb59527c361f11ce6a9c91df04d89d6d0eb"
  },
  "type": "object",
  "properties": {
    "paths": {
      "allOf": [
        {
          "$ref": "#/$defs/paths:BuildCoupled"
        }
      ]
    },
    "source": {
      "$ref": "#/$defs/source"
    },
    "collections_config": {
      "$ref": "#/$defs/collections_config:BuildCoupled"
    },
    "collections_config_from_glob": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "collection_groups": {
      "$ref": "#/$defs/collection_groups"
    },
    "base_url": {
      "$ref": "#/$defs/base_url"
    },
    "data_config": {
      "description": "Controls what data sets are available to populate select and multiselect inputs.",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "markdownDescription": "Controls what data sets are available to populate select and multiselect inputs.",
      "additionalProperties": {
        "type": "boolean"
      }
    },
    "file_config": {
      "$ref": "#/$defs/file_config"
    },
    "editor": {
      "$ref": "#/$defs/editor"
    },
    "source_editor": {
      "$ref": "#/$defs/source_editor"
    },
    "pull_request_templates": {
      "description": "Templates for pull requests.",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "description": "Used to identify a pull request template when multiple pull request templates are available.",
            "type": "string",
            "markdownDescription": "Used to identify a pull request template when multiple pull request templates are available."
          },
          "title": {
            "description": "The default value for the pull request title.",
            "type": "string",
            "markdownDescription": "The default value for the pull request title."
          },
          "body": {
            "description": "The default value for the pull request body.",
            "type": "string",
            "markdownDescription": "The default value for the pull request body."
          },
          "template_path": {
            "description": "Used to specify a file on the Site whose contents will be used as the default value for the pull request body. This has no effect if `body` is defined.",
            "type": "string",
            "markdownDescription": "Used to specify a file on the Site whose contents will be used as the default value for the pull request body. This has no effect if `body` is defined."
          },
          "_inputs": {
            "allOf": [
              {
                "$ref": "#/$defs/type._inputs"
              }
            ]
          }
        },
        "additionalProperties": false
      },
      "markdownDescription": "Templates for pull requests."
    },
    "commit_templates": {
      "$ref": "#/$defs/commit_templates"
    },
    "upstream_commit_template": {
      "$ref": "#/$defs/upstream_commit_template"
    },
    "markdown": {
      "$ref": "#/$defs/markdown"
    },
    "timezone": {
      "default": "Etc/UTC",
      "allOf": [
        {
          "$ref": "#/$defs/type.timezone"
        }
      ]
    },
    "_inputs": {
      "allOf": [
        {
          "$ref": "#/$defs/type._inputs"
        }
      ]
    },
    "_inputs_from_glob": {
      "allOf": [
        {
          "$ref": "#/$defs/type._inputs_from_glob"
        }
      ]
    },
    "_select_data": {
      "allOf": [
        {
          "$ref": "#/$defs/type._select_data"
        }
      ]
    },
    "_structures": {
      "allOf": [
        {
          "$ref": "#/$defs/type._structures"
        }
      ]
    },
    "_structures_from_glob": {
      "allOf": [
        {
          "$ref": "#/$defs/type._structures_from_glob"
        }
      ]
    },
    "_enabled_editors": {
      "$ref": "#/$defs/type._enabled_editors"
    },
    "_editables": {
      "$ref": "#/$defs/type._editables"
    },
    "_editables_from_glob": {
      "allOf": [
        {
          "$ref": "#/$defs/type._editables_from_glob"
        }
      ]
    },
    "_snippets": {
      "$ref": "#/$defs/type._snippets"
    },
    "_snippets_from_glob": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "_snippets_imports": {
      "allOf": [
        {
          "$ref": "#/$defs/type._snippets_imports"
        }
      ]
    },
    "_snippets_imports_from_glob": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "_snippets_templates": {
      "$ref": "#/$defs/type._snippets_templates"
    },
    "_snippets_templates_from_glob": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "_snippets_definitions": {
      "$ref": "#/$defs/type._snippets_definitions"
    },
    "_snippets_definitions_from_glob": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "collections_config_override": {
      "$ref": "#/$defs/collections_config_override"
    },
    "version": {
      "type": "string",
      "const": "legacy-eleventy",
      "description": "Controls which schema this file is validated against. Defaults to the latest schema.",
      "markdownDescription": "Controls which schema this file is validated against. Defaults to the latest schema."
    }
  },
  "additionalProperties": false,
  "$defs": {
    "paths:BuildCoupled": {
      "type": "object",
      "properties": {
        "static": {
          "$ref": "#/$defs/paths.static"
        },
        "uploads": {
          "$ref": "#/$defs/paths.uploads"
        },
        "uploads_filename": {
          "$ref": "#/$defs/paths.uploads_filename"
        },
        "dam_uploads": {
          "$ref": "#/$defs/paths.dam_uploads"
        },
        "dam_uploads_filename": {
          "$ref": "#/$defs/paths.dam_uploads_filename"
        },
        "dam_static": {
          "$ref": "#/$defs/paths.dam_static"
        },
        "uploads_use_relative_path": {
          "$ref": "#/$defs/paths.uploads_use_relative_path"
        },
        "collections": {
          "description": "Parent folder of all collections.",
          "type": "string",
          "markdownDescription": "Parent folder of all collections."
        },
        "data": {
          "description": "Parent folder of all site data files.",
          "type": "string",
          "markdownDescription": "Parent folder of all site data files."
        },
        "layouts": {
          "description": "Parent folder of all site layout files. Only applies to Jekyll, Hugo, and Eleventy sites.",
          "type": "string",
          "markdownDescription": "Parent folder of all site layout files. Only applies to Jekyll, Hugo, and Eleventy sites."
        },
        "includes": {
          "description": "Parent folder of all includes, partials, or shortcode files. Only applies to Jekyll, Hugo, and Eleventy sites.",
          "type": "string",
          "markdownDescription": "Parent folder of all includes, partials, or shortcode files. Only applies to Jekyll, Hugo, and Eleventy sites."
        }
      },
      "markdownDescription": "Paths to where new asset files are uploaded to. They also set the default path when choosing existing images, and linking to existing files. Each path is relative to global `source`.",
      "description": "Paths to where new asset files are uploaded to. They also set the default path when choosing existing images, and linking to existing files. Each path is relative to global `source`.",
      "additionalProperties": false
    },
    "paths.static": {
      "type": "string"
    },
    "paths.uploads": {
      "default": "uploads",
      "type": "string"
    },
    "paths.uploads_filename": {
      "type": "string"
    },
    "paths.dam_uploads": {
      "type": "string"
    },
    "paths.dam_uploads_filename": {
      "type": "string"
    },
    "paths.dam_static": {
      "type": "string"
    },
    "paths.uploads_use_relative_path": {
      "default": false,
      "type": "boolean"
    },
    "source": {
      "type": "string"
    },
    "collections_config:BuildCoupled": {
      "title": "Collections Configuration",
      "description": "Definitions for your collections, which are the sets of content files for your site grouped by folder. Entries are keyed by a chosen collection key, and contain configuration specific to that collection.",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "markdownDescription": "Definitions for your collections, which are the sets of content files for your site grouped by folder. Entries are keyed by a chosen collection key, and contain configuration specific to that collection.",
      "additionalProperties": {
        "type": "object",
        "properties": {
          "path": {
            "allOf": [
              {
                "$ref": "#/$defs/path"
              }
            ]
          },
          "glob": {
            "$ref": "#/$defs/glob"
          },
          "include_developer_files": {
            "description": "This key toggles whether CloudCannon removes developer files from your _Collection browser_.",
            "default": false,
            "type": "boolean",
            "markdownDescription": "This key toggles whether CloudCannon removes developer files from your _Collection browser_."
          },
          "name": {
            "description": "This key defines the display name for a Collection. The name appears in the _Site Navigation_ and at the top of the _Collection browser_.",
            "type": "string",
            "markdownDescription": "This key defines the display name for a Collection. The name appears in the _Site Navigation_ and at the top of the _Collection browser_."
          },
          "description": {
            "description": "This key defines the description text that appears on the _Collection browser_ page. Collection descriptions are useful for adding extra context for your team members.",
            "type": "string",
            "markdownDescription": "This key defines the description text that appears on the _Collection browser_ page. Collection descriptions are useful for adding extra context for your team members."
          },
          "icon": {
            "description": "This key defines the icon for a Collection. Collection icons appear in the _Site Navigation_ and are the default icon for Collection file Cards if you have not defined `preview.icon`.",
            "default": "notes",
            "allOf": [
              {
                "$ref": "#/$defs/icon"
              }
            ],
            "markdownDescription": "This key defines the icon for a Collection. Collection icons appear in the _Site Navigation_ and are the default icon for Collection file Cards if you have not defined `preview.icon`."
          },
          "documentation": {
            "description": "This key defines the documentation link at the top of a _Collection browser_. Collection documentation is useful for assisting your team members.",
            "allOf": [
              {
                "$ref": "#/$defs/type.documentation"
              }
            ],
            "markdownDescription": "This key defines the documentation link at the top of a _Collection browser_. Collection documentation is useful for assisting your team members."
          },
          "sort_options": {
            "description": "This key defines the options for the Sort dropdown in a _Collection browser_. The first option listed is used as the default sort.",
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "label": {
                  "description": "The text to display in the sort option list. Defaults to a generated label from key and order.",
                  "type": "string",
                  "markdownDescription": "The text to display in the sort option list. Defaults to a generated label from key and order."
                },
                "key": {
                  "type": "string",
                  "description": "Defines what field contains the value to sort on inside each collection item's data.",
                  "markdownDescription": "Defines what field contains the value to sort on inside each collection item's data."
                },
                "order": {
                  "description": "Controls which sort values come first.",
                  "default": "ascending",
                  "type": "string",
                  "enum": [
                    "ascending",
                    "descending",
                    "asc",
                    "desc"
                  ],
                  "markdownDescription": "Controls which sort values come first."
                }
              },
              "required": [
                "key"
              ],
              "markdownDescription": "A sort option for a Collection.",
              "title": "SortOption",
              "description": "A sort option for a Collection.",
              "additionalProperties": false
            },
            "markdownDescription": "This key defines the options for the Sort dropdown in a _Collection browser_. The first option listed is used as the default sort."
          },
          "view_options": {
            "uniqueItems": true,
            "description": "This key defines the options for the View dropdown in a _Collection browser_. The first option listed is used as the default view.",
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "card",
                "list",
                "gallery"
              ]
            },
            "markdownDescription": "This key defines the options for the View dropdown in a _Collection browser_. The first option listed is used as the default view."
          },
          "singular_name": {
            "description": "This key defines the singular noun for your Collection name. CloudCannon uses the singular noun in the _+ Add_ button in the top right of the _Collection browser_.",
            "type": "string",
            "markdownDescription": "This key defines the singular noun for your Collection name. CloudCannon uses the singular noun in the _+ Add_ button in the top right of the _Collection browser_."
          },
          "add_options": {
            "description": "This key defines the options available in the _+ Add_ button dropdown at the top right of your _Collection browser_.",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "name": {
                      "description": "The text displayed for the menu item. Defaults to using name from the matching schema if set.",
                      "type": "string",
                      "markdownDescription": "The text displayed for the menu item. Defaults to using name from the matching schema if set."
                    },
                    "icon": {
                      "description": "The icon next to the text in the menu item. Defaults to using icon from the matching schema if set, then falls back to add.",
                      "allOf": [
                        {
                          "$ref": "#/$defs/icon"
                        }
                      ],
                      "markdownDescription": "The icon next to the text in the menu item. Defaults to using icon from the matching schema if set, then falls back to add."
                    },
                    "editor": {
                      "description": "The editor to open the new file in. Defaults to an appropriate editor for new file's type if possible. If no default editor can be calculated, or the editor does not support the new file type, a warning is shown in place of the editor.",
                      "allOf": [
                        {
                          "$ref": "#/$defs/EditorKey"
                        }
                      ],
                      "markdownDescription": "The editor to open the new file in. Defaults to an appropriate editor for new file's type if possible. If no default editor can be calculated, or the editor does not support the new file type, a warning is shown in place of the editor."
                    },
                    "base_path": {
                      "description": "Enforces a path for new files to be created in, regardless of path the user is currently navigated to within the collection file list. Relative to the path of the collection defined in collection. Defaults to the path within the collection the user is currently navigated to.",
                      "type": "string",
                      "markdownDescription": "Enforces a path for new files to be created in, regardless of path the user is currently navigated to within the collection file list. Relative to the path of the collection defined in collection. Defaults to the path within the collection the user is currently navigated to."
                    },
                    "collection": {
                      "description": "Sets which collection this action is creating a file in. This is used when matching the value for schema. Defaults to the containing collection these `add_options` are configured in.",
                      "type": "string",
                      "markdownDescription": "Sets which collection this action is creating a file in. This is used when matching the value for schema. Defaults to the containing collection these `add_options` are configured in."
                    },
                    "schema": {
                      "description": "The schema that new files are created from with this action. This schema is not restricted to the containing collection, and is instead relative to the collection specified with collection. Defaults to default if schemas are configured for the collection.",
                      "type": "string",
                      "markdownDescription": "The schema that new files are created from with this action. This schema is not restricted to the containing collection, and is instead relative to the collection specified with collection. Defaults to default if schemas are configured for the collection."
                    },
                    "default_content_file": {
                      "description": "The path to a file used to populate the initial contents of a new file if no schemas are configured. We recommend using schemas, and this is ignored if a schema is available.",
                      "type": "string",
                      "markdownDescription": "The path to a file used to populate the initial contents of a new file if no schemas are configured. We recommend using schemas, and this is ignored if a schema is available."
                    }
                  },
                  "markdownDescription": "An option for the add menu.",
                  "title": "Add Option",
                  "description": "An option for the add menu.",
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "name": {
                      "description": "The text displayed for the menu item.",
                      "type": "string",
                      "markdownDescription": "The text displayed for the menu item."
                    },
                    "icon": {
                      "description": "The icon next to the text in the menu item.",
                      "default": "add",
                      "allOf": [
                        {
                          "$ref": "#/$defs/icon"
                        }
                      ],
                      "markdownDescription": "The icon next to the text in the menu item."
                    },
                    "href": {
                      "type": "string",
                      "description": "The link that opens when the option is clicked. Can either be an external or internal link. If internal, the link is relative to the current site.",
                      "markdownDescription": "The link that opens when the option is clicked. Can either be an external or internal link. If internal, the link is relative to the current site."
                    }
                  },
                  "required": [
                    "href"
                  ],
                  "markdownDescription": "An option for the add menu that opens a link.",
                  "title": "HREF Add Option",
                  "description": "An option for the add menu that opens a link.",
                  "additionalProperties": false
                }
              ]
            },
            "markdownDescription": "This key defines the options available in the _+ Add_ button dropdown at the top right of your _Collection browser_."
          },
          "create": {
            "allOf": [
              {
                "$ref": "#/$defs/type.create"
              }
            ]
          },
          "disable_add": {
            "description": "This key toggles whether team members can use the _+ Add_ button in the top right of the _Collection browser_ to add files to a Collection.",
            "default": false,
            "type": "boolean",
            "markdownDescription": "This key toggles whether team members can use the _+ Add_ button in the top right of the _Collection browser_ to add files to a Collection."
          },
          "disable_add_folder": {
            "description": "This key toggles whether team members can use the _+ Add_ button in the top right of the _Collection browser_ to add subfolders to a Collection.",
            "default": false,
            "type": "boolean",
            "markdownDescription": "This key toggles whether team members can use the _+ Add_ button in the top right of the _Collection browser_ to add subfolders to a Collection."
          },
          "disable_file_actions": {
            "description": "This key toggles whether team members can use the _+ Add_ button in the top right of the _Collection browser_ to add files to a Collection.",
            "default": false,
            "type": "boolean",
            "markdownDescription": "This key toggles whether team members can use the _+ Add_ button in the top right of the _Collection browser_ to add files to a Collection."
          },
          "new_preview_url": {
            "description": "This key defines a new URL for previewing your unbuilt pages in the Visual Editor.",
            "type": "string",
            "markdownDescription": "This key defines a new URL for previewing your unbuilt pages in the Visual Editor."
          },
          "schemas": {
            "description": "This key defines which Schemas are available to populate files in this Collection.",
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "markdownDescription": "This key defines which Schemas are available to populate files in this Collection.",
            "additionalProperties": {
              "type": "object",
              "properties": {
                "path": {
                  "type": "string",
                  "description": "The path to the schema file. Relative to the root folder of the site.",
                  "markdownDescription": "The path to the schema file. Relative to the root folder of the site."
                },
                "name": {
                  "description": "Displayed in the add menu when creating new files. Defaults to a formatted version of the key.",
                  "type": "string",
                  "markdownDescription": "Displayed in the add menu when creating new files. Defaults to a formatted version of the key."
                },
                "icon": {
                  "description": "Displayed in the add menu when creating new files; also used as the icon for collection files if no other preview is found.",
                  "default": "notes",
                  "allOf": [
                    {
                      "$ref": "#/$defs/icon"
                    }
                  ],
                  "markdownDescription": "Displayed in the add menu when creating new files; also used as the icon for collection files if no other preview is found."
                },
                "create": {
                  "allOf": [
                    {
                      "$ref": "#/$defs/type.create"
                    }
                  ]
                },
                "new_preview_url": {
                  "description": "Preview your unbuilt pages (e.g. drafts) to another page's output URL. The Visual Editor will load that URL, where Data Bindings and Previews are available to render your new page without saving.",
                  "type": "string",
                  "markdownDescription": "Preview your unbuilt pages (e.g. drafts) to another page's output URL. The Visual Editor will load that URL, where Data Bindings and Previews are available to render your new page without saving."
                },
                "reorder_inputs": {
                  "description": "If true, inputs are sorted to match when editing. Extra inputs are ordered after expected inputs, unless `remove_extra_inputs` is true.",
                  "default": true,
                  "type": "boolean",
                  "markdownDescription": "If true, inputs are sorted to match when editing. Extra inputs are ordered after expected inputs, unless `remove_extra_inputs` is true."
                },
                "hide_extra_inputs": {
                  "description": "Hides unexpected inputs when editing. Has no effect if `remove_extra_inputs` is true. Defaults to false.",
                  "default": false,
                  "type": "boolean",
                  "markdownDescription": "Hides unexpected inputs when editing. Has no effect if `remove_extra_inputs` is true. Defaults to false."
                },
                "remove_empty_inputs": {
                  "description": "If checked, empty inputs are removed from the source file on save. Removed inputs will be available for editing again, provided they are in the matching schema/structure.",
                  "default": false,
                  "type": "boolean",
                  "markdownDescription": "If checked, empty inputs are removed from the source file on save. Removed inputs will be available for editing again, provided they are in the matching schema/structure."
                },
                "remove_extra_inputs": {
                  "description": "If checked, extra inputs are removed when editing.",
                  "default": true,
                  "type": "boolean",
                  "markdownDescription": "If checked, extra inputs are removed when editing."
                },
                "preview": {
                  "allOf": [
                    {
                      "$ref": "#/$defs/type.preview"
                    }
                  ]
                },
                "_inputs": {
                  "allOf": [
                    {
                      "$ref": "#/$defs/type._inputs"
                    }
                  ]
                },
                "_inputs_from_glob": {
                  "allOf": [
                    {
                      "$ref": "#/$defs/type._inputs_from_glob"
                    }
                  ]
                },
                "_select_data": {
                  "allOf": [
                    {
                      "$ref": "#/$defs/type._select_data"
                    }
                  ]
                },
                "_structures": {
                  "allOf": [
                    {
                      "$ref": "#/$defs/type._structures"
                    }
                  ]
                },
                "_structures_from_glob": {
                  "allOf": [
                    {
                      "$ref": "#/$defs/type._structures_from_glob"
                    }
                  ]
                },
                "_enabled_editors": {
                  "$ref": "#/$defs/type._enabled_editors"
                },
                "_editables": {
                  "$ref": "#/$defs/type._editables"
                },
                "_editables_from_glob": {
                  "allOf": [
                    {
                      "$ref": "#/$defs/type._editables_from_glob"
                    }
                  ]
                }
              },
              "required": [
                "path"
              ],
              "markdownDescription": "Definitions for your schemas, which are the structured data formats for your content files.",
              "title": "Schema",
              "description": "Definitions for your schemas, which are the structured data formats for your content files.",
              "additionalProperties": false
            }
          },
          "schemas_from_glob": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "schema_key": {
            "description": "This key defines the name for the structured data key that references the Schema a file uses.",
            "type": "string",
            "markdownDescription": "This key defines the name for the structured data key that references the Schema a file uses."
          },
          "preview": {
            "allOf": [
              {
                "$ref": "#/$defs/type.preview"
              }
            ]
          },
          "_inputs": {
            "allOf": [
              {
                "$ref": "#/$defs/type._inputs"
              }
            ]
          },
          "_inputs_from_glob": {
            "allOf": [
              {
                "$ref": "#/$defs/type._inputs_from_glob"
              }
            ]
          },
          "_select_data": {
            "allOf": [
              {
                "$ref": "#/$defs/type._select_data"
              }
            ]
          },
          "_structures": {
            "allOf": [
              {
                "$ref": "#/$defs/type._structures"
              }
            ]
          },
          "_structures_from_glob": {
            "allOf": [
              {
                "$ref": "#/$defs/type._structures_from_glob"
              }
            ]
          },
          "_enabled_editors": {
            "$ref": "#/$defs/type._enabled_editors"
          },
          "_editables": {
            "$ref": "#/$defs/type._editables"
          },
          "_editables_from_glob": {
            "allOf": [
              {
                "$ref": "#/$defs/type._editables_from_glob"
              }
            ]
          },
          "filter": {
            "allOf": [
              {
                "$ref": "#/$defs/filter"
              }
            ]
          },
          "singular_key": {
            "allOf": [
              {
                "$ref": "#/$defs/singular_key"
              }
            ]
          },
          "output": {
            "allOf": [
              {
                "$ref": "#/$defs/output"
              }
            ]
          }
        },
        "additionalProperties": false
      }
    },
    "path": {
      "type": "string",
      "description": "This key defines the folder path for the collection key in which it is nested. The value for this key is relative to your Site `source`. Each Collection must have a unique path.",
      "markdownDescription": "This key defines the folder path for the collection key in which it is nested. The value for this key is relative to your Site `source`. Each Collection must have a unique path."
    },
    "glob": {
      "description": "This key defines globs which filter the files visible in the _Collection browser_ for a given Collection. Values in this array are relative to the Collection `path`.",
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "Glob Array"
        },
        {
          "type": "string",
          "title": "Glob"
        }
      ],
      "markdownDescription": "This key defines globs which filter the files visible in the _Collection browser_ for a given Collection. Values in this array are relative to the Collection `path`."
    },
    "icon": {
      "type": "string",
      "enum": [
        "123",
        "360",
        "10k",
        "10mp",
        "11mp",
        "12mp",
        "13mp",
        "14mp",
        "15mp",
        "16mp",
        "17mp",
        "18_up_rating",
        "18mp",
        "19mp",
        "1k",
        "1k_plus",
        "1x_mobiledata",
        "1x_mobiledata_badge",
        "20mp",
        "21mp",
        "22mp",
        "23mp",
        "24fps_select",
        "24mp",
        "2d",
        "2k",
        "2k_plus",
        "2mp",
        "30fps",
        "30fps_select",
        "3d",
        "3d_rotation",
        "3g_mobiledata",
        "3g_mobiledata_badge",
        "3k",
        "3k_plus",
        "3mp",
        "3p",
        "4g_mobiledata",
        "4g_mobiledata_badge",
        "4g_plus_mobiledata",
        "4k",
        "4k_plus",
        "4mp",
        "50mp",
        "5g",
        "5g_mobiledata_badge",
        "5k",
        "5k_plus",
        "5mp",
        "60fps",
        "60fps_select",
        "6_ft_apart",
        "6k",
        "6k_plus",
        "6mp",
        "7k",
        "7k_plus",
        "7mp",
        "8k",
        "8k_plus",
        "8mp",
        "9k",
        "9k_plus",
        "9mp",
        "abc",
        "ac_unit",
        "accessibility",
        "accessibility_new",
        "accessible",
        "accessible_forward",
        "accessible_menu",
        "account_balance",
        "account_balance_wallet",
        "account_box",
        "account_child",
        "account_child_invert",
        "account_circle",
        "account_circle_off",
        "account_tree",
        "action_key",
        "activity_zone",
        "acute",
        "ad",
        "ad_group",
        "ad_group_off",
        "ad_off",
        "ad_units",
        "adaptive_audio_mic",
        "adaptive_audio_mic_off",
        "adb",
        "add",
        "add_2",
        "add_a_photo",
        "add_ad",
        "add_alert",
        "add_box",
        "add_business",
        "add_call",
        "add_card",
        "add_chart",
        "add_circle",
        "add_column_left",
        "add_column_right",
        "add_comment",
        "add_diamond",
        "add_home",
        "add_home_work",
        "add_link",
        "add_location",
        "add_location_alt",
        "add_moderator",
        "add_notes",
        "add_photo_alternate",
        "add_reaction",
        "add_road",
        "add_row_above",
        "add_row_below",
        "add_shopping_cart",
        "add_task",
        "add_to_drive",
        "add_to_home_screen",
        "add_to_queue",
        "add_triangle",
        "adf_scanner",
        "adjust",
        "admin_meds",
        "admin_panel_settings",
        "ads_click",
        "agender",
        "agriculture",
        "air",
        "air_freshener",
        "air_purifier",
        "air_purifier_gen",
        "airline_seat_flat",
        "airline_seat_flat_angled",
        "airline_seat_individual_suite",
        "airline_seat_legroom_extra",
        "airline_seat_legroom_normal",
        "airline_seat_legroom_reduced",
        "airline_seat_recline_extra",
        "airline_seat_recline_normal",
        "airline_stops",
        "airlines",
        "airplane_ticket",
        "airplanemode_inactive",
        "airplay",
        "airport_shuttle",
        "airware",
        "airwave",
        "alarm",
        "alarm_add",
        "alarm_off",
        "alarm_on",
        "alarm_pause",
        "alarm_smart_wake",
        "album",
        "align_center",
        "align_end",
        "align_flex_center",
        "align_flex_end",
        "align_flex_start",
        "align_horizontal_center",
        "align_horizontal_left",
        "align_horizontal_right",
        "align_items_stretch",
        "align_justify_center",
        "align_justify_flex_end",
        "align_justify_flex_start",
        "align_justify_space_around",
        "align_justify_space_between",
        "align_justify_space_even",
        "align_justify_stretch",
        "align_self_stretch",
        "align_space_around",
        "align_space_between",
        "align_space_even",
        "align_start",
        "align_stretch",
        "align_vertical_bottom",
        "align_vertical_center",
        "align_vertical_top",
        "all_inbox",
        "all_inclusive",
        "all_match",
        "all_out",
        "allergies",
        "allergy",
        "alt_route",
        "alternate_email",
        "altitude",
        "ambulance",
        "amend",
        "amp_stories",
        "analytics",
        "anchor",
        "android",
        "animated_images",
        "animation",
        "aod",
        "aod_tablet",
        "aod_watch",
        "apartment",
        "api",
        "apk_document",
        "apk_install",
        "app_badging",
        "app_blocking",
        "app_registration",
        "apparel",
        "approval",
        "approval_delegation",
        "apps",
        "apps_outage",
        "aq",
        "aq_indoor",
        "ar_on_you",
        "ar_stickers",
        "architecture",
        "archive",
        "area_chart",
        "arming_countdown",
        "arrow_and_edge",
        "arrow_back",
        "arrow_back_2",
        "arrow_back_ios",
        "arrow_back_ios_new",
        "arrow_circle_down",
        "arrow_circle_left",
        "arrow_circle_right",
        "arrow_circle_up",
        "arrow_cool_down",
        "arrow_downward",
        "arrow_downward_alt",
        "arrow_drop_down",
        "arrow_drop_down_circle",
        "arrow_drop_up",
        "arrow_forward",
        "arrow_forward_ios",
        "arrow_insert",
        "arrow_left",
        "arrow_left_alt",
        "arrow_menu_close",
        "arrow_menu_open",
        "arrow_or_edge",
        "arrow_outward",
        "arrow_range",
        "arrow_right",
        "arrow_right_alt",
        "arrow_selector_tool",
        "arrow_split",
        "arrow_top_left",
        "arrow_top_right",
        "arrow_upload_progress",
        "arrow_upload_ready",
        "arrow_upward",
        "arrow_upward_alt",
        "arrow_warm_up",
        "arrows_input",
        "arrows_more_down",
        "arrows_more_up",
        "arrows_output",
        "arrows_outward",
        "art_track",
        "article",
        "article_person",
        "article_shortcut",
        "artist",
        "aspect_ratio",
        "assignment",
        "assignment_add",
        "assignment_ind",
        "assignment_late",
        "assignment_return",
        "assignment_returned",
        "assignment_turned_in",
        "assist_walker",
        "assistant_device",
        "assistant_direction",
        "assistant_navigation",
        "assistant_on_hub",
        "assured_workload",
        "asterisk",
        "atm",
        "atr",
        "attach_email",
        "attach_file",
        "attach_file_add",
        "attach_file_off",
        "attach_money",
        "attachment",
        "attractions",
        "attribution",
        "audio_description",
        "audio_file",
        "audio_video_receiver",
        "auto_awesome_mosaic",
        "auto_awesome_motion",
        "auto_delete",
        "auto_read_pause",
        "auto_read_play",
        "auto_stories",
        "auto_towing",
        "auto_transmission",
        "autofps_select",
        "automation",
        "autopause",
        "autoplay",
        "autorenew",
        "autostop",
        "av1",
        "av_timer",
        "avc",
        "avg_pace",
        "avg_time",
        "award_star",
        "azm",
        "baby_changing_station",
        "back_hand",
        "back_to_tab",
        "background_dot_large",
        "background_dot_small",
        "background_grid_small",
        "background_replace",
        "backlight_high",
        "backlight_high_off",
        "backlight_low",
        "backpack",
        "backspace",
        "backup",
        "backup_table",
        "badge",
        "badge_critical_battery",
        "bakery_dining",
        "balance",
        "balcony",
        "ballot",
        "bar_chart",
        "bar_chart_4_bars",
        "bar_chart_off",
        "barcode",
        "barcode_reader",
        "barcode_scanner",
        "barefoot",
        "batch_prediction",
        "bath_outdoor",
        "bath_private",
        "bath_public_large",
        "bathroom",
        "bathtub",
        "battery_0_bar",
        "battery_1_bar",
        "battery_2_bar",
        "battery_3_bar",
        "battery_4_bar",
        "battery_5_bar",
        "battery_6_bar",
        "battery_alert",
        "battery_android_0",
        "battery_android_1",
        "battery_android_2",
        "battery_android_3",
        "battery_android_4",
        "battery_android_5",
        "battery_android_6",
        "battery_android_alert",
        "battery_android_bolt",
        "battery_android_full",
        "battery_android_plus",
        "battery_android_question",
        "battery_android_share",
        "battery_android_shield",
        "battery_change",
        "battery_charging_20",
        "battery_charging_30",
        "battery_charging_50",
        "battery_charging_60",
        "battery_charging_80",
        "battery_charging_90",
        "battery_charging_full",
        "battery_error",
        "battery_full",
        "battery_full_alt",
        "battery_horiz_000",
        "battery_horiz_050",
        "battery_horiz_075",
        "battery_low",
        "battery_plus",
        "battery_profile",
        "battery_saver",
        "battery_share",
        "battery_status_good",
        "battery_unknown",
        "battery_very_low",
        "beach_access",
        "bed",
        "bedroom_baby",
        "bedroom_child",
        "bedroom_parent",
        "bedtime",
        "bedtime_off",
        "beenhere",
        "bento",
        "bia",
        "bid_landscape",
        "bid_landscape_disabled",
        "bigtop_updates",
        "bike_dock",
        "bike_lane",
        "bike_scooter",
        "biotech",
        "blanket",
        "blender",
        "blind",
        "blinds",
        "blinds_closed",
        "block",
        "blood_pressure",
        "bloodtype",
        "bluetooth",
        "bluetooth_connected",
        "bluetooth_disabled",
        "bluetooth_drive",
        "bluetooth_searching",
        "blur_circular",
        "blur_linear",
        "blur_medium",
        "blur_off",
        "blur_on",
        "blur_short",
        "boat_bus",
        "boat_railway",
        "body_fat",
        "body_system",
        "bolt",
        "bomb",
        "book",
        "book_2",
        "book_3",
        "book_4",
        "book_5",
        "book_6",
        "book_online",
        "book_ribbon",
        "bookmark",
        "bookmark_add",
        "bookmark_added",
        "bookmark_bag",
        "bookmark_check",
        "bookmark_flag",
        "bookmark_heart",
        "bookmark_manager",
        "bookmark_remove",
        "bookmark_star",
        "bookmarks",
        "books_movies_and_music",
        "border_all",
        "border_bottom",
        "border_clear",
        "border_color",
        "border_horizontal",
        "border_inner",
        "border_left",
        "border_outer",
        "border_right",
        "border_style",
        "border_top",
        "border_vertical",
        "borg",
        "bottom_app_bar",
        "bottom_drawer",
        "bottom_navigation",
        "bottom_panel_close",
        "bottom_panel_open",
        "bottom_right_click",
        "bottom_sheets",
        "box",
        "box_add",
        "box_edit",
        "boy",
        "brand_awareness",
        "brand_family",
        "branding_watermark",
        "breakfast_dining",
        "breaking_news",
        "breaking_news_alt_1",
        "breastfeeding",
        "brick",
        "brightness_1",
        "brightness_2",
        "brightness_3",
        "brightness_4",
        "brightness_5",
        "brightness_6",
        "brightness_7",
        "brightness_alert",
        "brightness_auto",
        "brightness_empty",
        "brightness_medium",
        "bring_your_own_ip",
        "broadcast_on_home",
        "broadcast_on_personal",
        "broken_image",
        "browse",
        "browse_activity",
        "browse_gallery",
        "browser_updated",
        "brunch_dining",
        "brush",
        "bubble",
        "bubble_chart",
        "bubbles",
        "bug_report",
        "build",
        "build_circle",
        "bungalow",
        "burst_mode",
        "bus_alert",
        "bus_railway",
        "business_center",
        "business_chip",
        "business_messages",
        "buttons_alt",
        "cabin",
        "cable",
        "cable_car",
        "cached",
        "cadence",
        "cake",
        "cake_add",
        "calculate",
        "calendar_add_on",
        "calendar_apps_script",
        "calendar_clock",
        "calendar_month",
        "calendar_today",
        "calendar_view_day",
        "calendar_view_month",
        "calendar_view_week",
        "call",
        "call_end",
        "call_log",
        "call_made",
        "call_merge",
        "call_missed",
        "call_missed_outgoing",
        "call_quality",
        "call_received",
        "call_split",
        "call_to_action",
        "camera",
        "camera_front",
        "camera_indoor",
        "camera_outdoor",
        "camera_rear",
        "camera_roll",
        "camera_video",
        "cameraswitch",
        "campaign",
        "camping",
        "cancel",
        "cancel_presentation",
        "cancel_schedule_send",
        "candle",
        "candlestick_chart",
        "cannabis",
        "captive_portal",
        "capture",
        "car_crash",
        "car_defrost_left",
        "car_defrost_low_left",
        "car_defrost_low_right",
        "car_defrost_mid_low_left",
        "car_defrost_mid_right",
        "car_defrost_right",
        "car_fan_low_left",
        "car_fan_low_mid_left",
        "car_fan_low_right",
        "car_fan_mid_left",
        "car_fan_mid_low_right",
        "car_fan_mid_right",
        "car_fan_recirculate",
        "car_gear",
        "car_lock",
        "car_mirror_heat",
        "car_rental",
        "car_repair",
        "car_tag",
        "card_membership",
        "card_travel",
        "cardio_load",
        "cardiology",
        "cards",
        "cards_star",
        "carpenter",
        "carry_on_bag",
        "carry_on_bag_checked",
        "carry_on_bag_inactive",
        "carry_on_bag_question",
        "cases",
        "casino",
        "cast",
        "cast_connected",
        "cast_for_education",
        "cast_pause",
        "cast_warning",
        "castle",
        "category",
        "category_search",
        "celebration",
        "cell_merge",
        "cell_tower",
        "cell_wifi",
        "center_focus_strong",
        "center_focus_weak",
        "chair",
        "chair_alt",
        "chalet",
        "change_circle",
        "change_history",
        "charger",
        "charging_station",
        "chart_data",
        "chat",
        "chat_add_on",
        "chat_apps_script",
        "chat_bubble",
        "chat_error",
        "chat_info",
        "chat_paste_go",
        "chat_paste_go_2",
        "check",
        "check_box",
        "check_box_outline_blank",
        "check_circle",
        "check_in_out",
        "check_indeterminate_small",
        "check_small",
        "checkbook",
        "checked_bag",
        "checked_bag_question",
        "checklist",
        "checklist_rtl",
        "checkroom",
        "cheer",
        "chef_hat",
        "chess",
        "chess_pawn",
        "chevron_backward",
        "chevron_forward",
        "chevron_left",
        "chevron_right",
        "child_care",
        "child_friendly",
        "chip_extraction",
        "chips",
        "chrome_reader_mode",
        "chromecast_2",
        "chromecast_device",
        "chronic",
        "church",
        "cinematic_blur",
        "circle",
        "circle_notifications",
        "circles",
        "circles_ext",
        "clarify",
        "clean_hands",
        "cleaning",
        "cleaning_bucket",
        "cleaning_services",
        "clear_all",
        "clear_day",
        "climate_mini_split",
        "clinical_notes",
        "clock_arrow_down",
        "clock_arrow_up",
        "clock_loader_10",
        "clock_loader_20",
        "clock_loader_40",
        "clock_loader_60",
        "clock_loader_80",
        "clock_loader_90",
        "close",
        "close_fullscreen",
        "close_small",
        "closed_caption",
        "closed_caption_add",
        "closed_caption_disabled",
        "cloud",
        "cloud_alert",
        "cloud_circle",
        "cloud_done",
        "cloud_download",
        "cloud_lock",
        "cloud_off",
        "cloud_sync",
        "cloud_upload",
        "co2",
        "co_present",
        "code",
        "code_blocks",
        "code_off",
        "coffee",
        "coffee_maker",
        "cognition",
        "cognition_2",
        "collapse_all",
        "collapse_content",
        "collections_bookmark",
        "colorize",
        "colors",
        "combine_columns",
        "comedy_mask",
        "comic_bubble",
        "comment",
        "comment_bank",
        "comments_disabled",
        "commit",
        "communication",
        "communities",
        "commute",
        "compare",
        "compare_arrows",
        "compass_calibration",
        "component_exchange",
        "compost",
        "compress",
        "computer",
        "computer_arrow_up",
        "computer_cancel",
        "concierge",
        "conditions",
        "confirmation_number",
        "congenital",
        "connect_without_contact",
        "connected_tv",
        "connecting_airports",
        "construction",
        "contact_emergency",
        "contact_mail",
        "contact_page",
        "contact_phone",
        "contact_support",
        "contactless",
        "contactless_off",
        "contacts",
        "contacts_product",
        "content_copy",
        "content_cut",
        "content_paste",
        "content_paste_go",
        "content_paste_off",
        "content_paste_search",
        "contextual_token",
        "contextual_token_add",
        "contract",
        "contract_delete",
        "contract_edit",
        "contrast",
        "contrast_circle",
        "contrast_rtl_off",
        "contrast_square",
        "control_camera",
        "control_point_duplicate",
        "controller_gen",
        "conversion_path",
        "conversion_path_off",
        "convert_to_text",
        "conveyor_belt",
        "cookie",
        "cookie_off",
        "cooking",
        "cool_to_dry",
        "copy_all",
        "copyright",
        "coronavirus",
        "corporate_fare",
        "cottage",
        "counter_0",
        "counter_1",
        "counter_2",
        "counter_3",
        "counter_4",
        "counter_5",
        "counter_6",
        "counter_7",
        "counter_8",
        "counter_9",
        "countertops",
        "create_new_folder",
        "credit_card",
        "credit_card_clock",
        "credit_card_gear",
        "credit_card_heart",
        "credit_card_off",
        "credit_score",
        "crib",
        "crisis_alert",
        "crop",
        "crop_16_9",
        "crop_3_2",
        "crop_5_4",
        "crop_7_5",
        "crop_9_16",
        "crop_free",
        "crop_landscape",
        "crop_portrait",
        "crop_rotate",
        "crop_square",
        "crossword",
        "crowdsource",
        "crown",
        "cruelty_free",
        "css",
        "csv",
        "currency_bitcoin",
        "currency_exchange",
        "currency_franc",
        "currency_lira",
        "currency_pound",
        "currency_ruble",
        "currency_rupee",
        "currency_rupee_circle",
        "currency_yen",
        "currency_yuan",
        "curtains",
        "curtains_closed",
        "custom_typography",
        "cycle",
        "cyclone",
        "dangerous",
        "dark_mode",
        "dashboard",
        "dashboard_2",
        "dashboard_customize",
        "data_alert",
        "data_array",
        "data_check",
        "data_exploration",
        "data_info_alert",
        "data_loss_prevention",
        "data_object",
        "data_saver_on",
        "data_table",
        "data_thresholding",
        "data_usage",
        "database",
        "database_off",
        "database_search",
        "database_upload",
        "dataset",
        "dataset_linked",
        "date_range",
        "deblur",
        "deceased",
        "decimal_decrease",
        "decimal_increase",
        "deck",
        "dehaze",
        "delete",
        "delete_forever",
        "delete_history",
        "delete_sweep",
        "delivery_truck_bolt",
        "delivery_truck_speed",
        "demography",
        "density_large",
        "density_medium",
        "density_small",
        "dentistry",
        "departure_board",
        "deployed_code",
        "deployed_code_account",
        "deployed_code_alert",
        "deployed_code_history",
        "deployed_code_update",
        "dermatology",
        "description",
        "deselect",
        "design_services",
        "desk",
        "deskphone",
        "desktop_access_disabled",
        "desktop_cloud",
        "desktop_cloud_stack",
        "desktop_landscape",
        "desktop_landscape_add",
        "desktop_mac",
        "desktop_portrait",
        "desktop_windows",
        "destruction",
        "details",
        "detection_and_zone",
        "detector",
        "detector_alarm",
        "detector_battery",
        "detector_co",
        "detector_offline",
        "detector_smoke",
        "detector_status",
        "developer_board",
        "developer_board_off",
        "developer_guide",
        "developer_mode",
        "developer_mode_tv",
        "device_band",
        "device_hub",
        "device_thermostat",
        "device_unknown",
        "devices",
        "devices_fold",
        "devices_fold_2",
        "devices_off",
        "devices_other",
        "devices_wearables",
        "dew_point",
        "diagnosis",
        "diagonal_line",
        "dialer_sip",
        "dialogs",
        "dialpad",
        "diamond",
        "dictionary",
        "difference",
        "digital_out_of_home",
        "digital_wellbeing",
        "dining",
        "dinner_dining",
        "directions",
        "directions_alt",
        "directions_alt_off",
        "directions_bike",
        "directions_boat",
        "directions_bus",
        "directions_car",
        "directions_off",
        "directions_railway",
        "directions_railway_2",
        "directions_run",
        "directions_subway",
        "directions_walk",
        "directory_sync",
        "dirty_lens",
        "disabled_by_default",
        "disabled_visible",
        "disc_full",
        "discover_tune",
        "dishwasher",
        "dishwasher_gen",
        "display_external_input",
        "display_settings",
        "distance",
        "diversity_1",
        "diversity_2",
        "diversity_3",
        "diversity_4",
        "dns",
        "do_not_disturb_off",
        "do_not_disturb_on",
        "do_not_disturb_on_total_silence",
        "do_not_step",
        "do_not_touch",
        "dock",
        "dock_to_bottom",
        "dock_to_left",
        "dock_to_right",
        "docs",
        "docs_add_on",
        "docs_apps_script",
        "document_scanner",
        "document_search",
        "domain",
        "domain_add",
        "domain_disabled",
        "domain_verification",
        "domain_verification_off",
        "domino_mask",
        "done_all",
        "done_outline",
        "donut_large",
        "donut_small",
        "door_back",
        "door_front",
        "door_open",
        "door_sensor",
        "door_sliding",
        "doorbell",
        "doorbell_3p",
        "doorbell_chime",
        "double_arrow",
        "downhill_skiing",
        "download",
        "download_2",
        "download_done",
        "download_for_offline",
        "downloading",
        "draft",
        "draft_orders",
        "drafts",
        "drag_click",
        "drag_handle",
        "drag_indicator",
        "drag_pan",
        "draw",
        "draw_abstract",
        "draw_collage",
        "dresser",
        "drive_export",
        "drive_file_move",
        "drive_folder_upload",
        "dropdown",
        "dropper_eye",
        "dry",
        "dry_cleaning",
        "dual_screen",
        "duo",
        "dvr",
        "dynamic_feed",
        "dynamic_form",
        "e911_avatar",
        "e911_emergency",
        "e_mobiledata",
        "e_mobiledata_badge",
        "ear_sound",
        "earbud_case",
        "earbud_left",
        "earbud_right",
        "earbuds",
        "earbuds_2",
        "earbuds_battery",
        "early_on",
        "earthquake",
        "east",
        "ecg",
        "ecg_heart",
        "eco",
        "eda",
        "edgesensor_high",
        "edgesensor_low",
        "edit",
        "edit_arrow_down",
        "edit_arrow_up",
        "edit_attributes",
        "edit_audio",
        "edit_calendar",
        "edit_document",
        "edit_location",
        "edit_location_alt",
        "edit_note",
        "edit_notifications",
        "edit_off",
        "edit_road",
        "edit_square",
        "editor_choice",
        "egg",
        "egg_alt",
        "eject",
        "elderly",
        "elderly_woman",
        "electric_bike",
        "electric_bolt",
        "electric_car",
        "electric_meter",
        "electric_moped",
        "electric_rickshaw",
        "electric_scooter",
        "electrical_services",
        "elevation",
        "elevator",
        "emergency",
        "emergency_heat",
        "emergency_heat_2",
        "emergency_home",
        "emergency_recording",
        "emergency_share",
        "emergency_share_off",
        "emoji_food_beverage",
        "emoji_language",
        "emoji_nature",
        "emoji_objects",
        "emoji_people",
        "emoji_symbols",
        "emoji_transportation",
        "emoticon",
        "empty_dashboard",
        "enable",
        "encrypted",
        "encrypted_add",
        "encrypted_add_circle",
        "encrypted_minus_circle",
        "encrypted_off",
        "endocrinology",
        "energy",
        "energy_program_saving",
        "energy_program_time_used",
        "energy_savings_leaf",
        "engineering",
        "enhanced_encryption",
        "ent",
        "enterprise",
        "enterprise_off",
        "equal",
        "equalizer",
        "eraser_size_1",
        "eraser_size_2",
        "eraser_size_3",
        "eraser_size_4",
        "eraser_size_5",
        "error",
        "error_med",
        "escalator",
        "escalator_warning",
        "euro",
        "euro_symbol",
        "ev_mobiledata_badge",
        "ev_shadow",
        "ev_shadow_add",
        "ev_shadow_minus",
        "ev_station",
        "event",
        "event_available",
        "event_busy",
        "event_list",
        "event_note",
        "event_repeat",
        "event_seat",
        "event_upcoming",
        "exclamation",
        "exercise",
        "exit_to_app",
        "expand",
        "expand_all",
        "expand_circle_down",
        "expand_circle_right",
        "expand_circle_up",
        "expand_content",
        "expansion_panels",
        "experiment",
        "explicit",
        "explore",
        "explore_nearby",
        "explore_off",
        "explosion",
        "export_notes",
        "exposure",
        "exposure_neg_1",
        "exposure_neg_2",
        "exposure_plus_1",
        "exposure_plus_2",
        "exposure_zero",
        "extension",
        "extension_off",
        "eye_tracking",
        "eyeglasses",
        "eyeglasses_2",
        "face",
        "face_2",
        "face_3",
        "face_4",
        "face_5",
        "face_6",
        "face_down",
        "face_left",
        "face_nod",
        "face_retouching_off",
        "face_right",
        "face_shake",
        "face_up",
        "fact_check",
        "factory",
        "falling",
        "familiar_face_and_zone",
        "family_history",
        "family_home",
        "family_link",
        "family_restroom",
        "family_star",
        "fan_focus",
        "fan_indirect",
        "farsight_digital",
        "fast_forward",
        "fast_rewind",
        "fastfood",
        "faucet",
        "favorite",
        "fax",
        "feature_search",
        "featured_play_list",
        "featured_seasonal_and_gifts",
        "featured_video",
        "feedback",
        "female",
        "femur",
        "femur_alt",
        "fence",
        "fertile",
        "festival",
        "fiber_dvr",
        "fiber_manual_record",
        "fiber_new",
        "fiber_pin",
        "fiber_smart_record",
        "file_copy",
        "file_copy_off",
        "file_download_off",
        "file_export",
        "file_json",
        "file_map",
        "file_map_stack",
        "file_open",
        "file_png",
        "file_present",
        "file_save",
        "file_save_off",
        "file_upload_off",
        "files",
        "filter",
        "filter_1",
        "filter_2",
        "filter_3",
        "filter_4",
        "filter_5",
        "filter_6",
        "filter_7",
        "filter_8",
        "filter_9",
        "filter_9_plus",
        "filter_alt",
        "filter_alt_off",
        "filter_arrow_right",
        "filter_b_and_w",
        "filter_center_focus",
        "filter_drama",
        "filter_frames",
        "filter_hdr",
        "filter_list",
        "filter_list_off",
        "filter_none",
        "filter_retrolux",
        "filter_tilt_shift",
        "filter_vintage",
        "finance",
        "finance_chip",
        "finance_mode",
        "find_in_page",
        "find_replace",
        "fingerprint",
        "fingerprint_off",
        "fire_extinguisher",
        "fire_hydrant",
        "fire_truck",
        "fireplace",
        "first_page",
        "fit_page",
        "fit_page_height",
        "fit_page_width",
        "fit_screen",
        "fit_width",
        "fitness_center",
        "fitness_tracker",
        "flag",
        "flag_2",
        "flag_check",
        "flag_circle",
        "flaky",
        "flare",
        "flash_auto",
        "flash_off",
        "flash_on",
        "flashlight_off",
        "flashlight_on",
        "flatware",
        "flex_direction",
        "flex_no_wrap",
        "flex_wrap",
        "flight",
        "flight_class",
        "flight_land",
        "flight_takeoff",
        "flights_and_hotels",
        "flip",
        "flip_camera_android",
        "flip_camera_ios",
        "flip_to_back",
        "flip_to_front",
        "float_landscape_2",
        "float_portrait_2",
        "flood",
        "floor",
        "floor_lamp",
        "flowchart",
        "flowsheet",
        "fluid",
        "fluid_balance",
        "fluid_med",
        "fluorescent",
        "flutter",
        "flutter_dash",
        "flyover",
        "fmd_bad",
        "foggy",
        "folded_hands",
        "folder",
        "folder_check",
        "folder_check_2",
        "folder_code",
        "folder_copy",
        "folder_data",
        "folder_delete",
        "folder_eye",
        "folder_info",
        "folder_limited",
        "folder_managed",
        "folder_match",
        "folder_off",
        "folder_open",
        "folder_shared",
        "folder_special",
        "folder_supervised",
        "folder_zip",
        "follow_the_signs",
        "font_download",
        "font_download_off",
        "food_bank",
        "foot_bones",
        "footprint",
        "for_you",
        "forest",
        "fork_left",
        "fork_right",
        "fork_spoon",
        "forklift",
        "format_align_center",
        "format_align_justify",
        "format_align_left",
        "format_align_right",
        "format_bold",
        "format_clear",
        "format_color_fill",
        "format_color_reset",
        "format_color_text",
        "format_h1",
        "format_h2",
        "format_h3",
        "format_h4",
        "format_h5",
        "format_h6",
        "format_image_left",
        "format_image_right",
        "format_indent_decrease",
        "format_indent_increase",
        "format_ink_highlighter",
        "format_italic",
        "format_letter_spacing",
        "format_letter_spacing_2",
        "format_letter_spacing_standard",
        "format_letter_spacing_wide",
        "format_letter_spacing_wider",
        "format_line_spacing",
        "format_list_bulleted",
        "format_list_bulleted_add",
        "format_list_numbered",
        "format_list_numbered_rtl",
        "format_overline",
        "format_paint",
        "format_paragraph",
        "format_quote",
        "format_quote_off",
        "format_shapes",
        "format_size",
        "format_strikethrough",
        "format_text_clip",
        "format_text_overflow",
        "format_text_wrap",
        "format_textdirection_l_to_r",
        "format_textdirection_r_to_l",
        "format_textdirection_vertical",
        "format_underlined",
        "format_underlined_squiggle",
        "forms_add_on",
        "forms_apps_script",
        "fort",
        "forum",
        "forward",
        "forward_10",
        "forward_30",
        "forward_5",
        "forward_circle",
        "forward_media",
        "forward_to_inbox",
        "foundation",
        "fragrance",
        "frame_inspect",
        "frame_person",
        "frame_person_mic",
        "frame_person_off",
        "frame_reload",
        "frame_source",
        "free_cancellation",
        "front_hand",
        "front_loader",
        "full_coverage",
        "full_hd",
        "full_stacked_bar_chart",
        "fullscreen",
        "fullscreen_exit",
        "fullscreen_portrait",
        "function",
        "functions",
        "funicular",
        "g_mobiledata",
        "g_mobiledata_badge",
        "g_translate",
        "gallery_thumbnail",
        "gamepad",
        "garage",
        "garage_door",
        "garage_home",
        "garden_cart",
        "gas_meter",
        "gastroenterology",
        "gate",
        "gavel",
        "general_device",
        "genetics",
        "genres",
        "gesture",
        "gesture_select",
        "gif",
        "gif_2",
        "gif_box",
        "girl",
        "gite",
        "glass_cup",
        "globe",
        "globe_asia",
        "globe_book",
        "globe_location_pin",
        "globe_uk",
        "glucose",
        "glyphs",
        "go_to_line",
        "golf_course",
        "gondola_lift",
        "google_home_devices",
        "google_tv_remote",
        "google_wifi",
        "gpp_bad",
        "gpp_maybe",
        "gradient",
        "grading",
        "grain",
        "graph_1",
        "graph_2",
        "graph_3",
        "graph_4",
        "graph_5",
        "graph_6",
        "graph_7",
        "graphic_eq",
        "grass",
        "grid_3x3",
        "grid_3x3_off",
        "grid_4x4",
        "grid_goldenratio",
        "grid_guides",
        "grid_off",
        "grid_on",
        "grid_view",
        "grocery",
        "group",
        "group_add",
        "group_off",
        "group_remove",
        "group_search",
        "group_work",
        "grouped_bar_chart",
        "groups",
        "groups_2",
        "groups_3",
        "guardian",
        "gynecology",
        "h_mobiledata",
        "h_mobiledata_badge",
        "h_plus_mobiledata",
        "h_plus_mobiledata_badge",
        "hail",
        "hallway",
        "hand_bones",
        "hand_gesture",
        "hand_gesture_off",
        "handheld_controller",
        "handshake",
        "handyman",
        "hangout_video",
        "hangout_video_off",
        "hard_disk",
        "hard_drive",
        "hard_drive_2",
        "hardware",
        "hd",
        "hdr_auto",
        "hdr_auto_select",
        "hdr_enhanced_select",
        "hdr_off",
        "hdr_off_select",
        "hdr_on",
        "hdr_on_select",
        "hdr_plus",
        "hdr_plus_off",
        "hdr_strong",
        "hdr_weak",
        "head_mounted_device",
        "headphones",
        "headphones_battery",
        "headset_mic",
        "headset_off",
        "healing",
        "health_and_beauty",
        "health_and_safety",
        "health_metrics",
        "heap_snapshot_large",
        "heap_snapshot_multiple",
        "heap_snapshot_thumbnail",
        "hearing",
        "hearing_aid",
        "hearing_aid_disabled",
        "hearing_aid_disabled_left",
        "hearing_aid_left",
        "hearing_disabled",
        "heart_broken",
        "heart_check",
        "heart_minus",
        "heart_plus",
        "heat",
        "heat_pump",
        "heat_pump_balance",
        "height",
        "helicopter",
        "help",
        "help_center",
        "help_clinic",
        "hematology",
        "hevc",
        "hexagon",
        "hide",
        "hide_image",
        "hide_source",
        "high_density",
        "high_quality",
        "high_res",
        "highlight",
        "highlight_keyboard_focus",
        "highlight_mouse_cursor",
        "highlight_text_cursor",
        "highlighter_size_1",
        "highlighter_size_2",
        "highlighter_size_3",
        "highlighter_size_4",
        "highlighter_size_5",
        "hiking",
        "history",
        "history_2",
        "history_edu",
        "history_off",
        "history_toggle_off",
        "hive",
        "hls",
        "hls_off",
        "holiday_village",
        "home",
        "home_and_garden",
        "home_app_logo",
        "home_health",
        "home_improvement_and_tools",
        "home_iot_device",
        "home_max",
        "home_max_dots",
        "home_mini",
        "home_pin",
        "home_repair_service",
        "home_speaker",
        "home_storage",
        "home_work",
        "horizontal_distribute",
        "horizontal_rule",
        "horizontal_split",
        "host",
        "hot_tub",
        "hotel",
        "hotel_class",
        "hourglass",
        "hourglass_arrow_down",
        "hourglass_arrow_up",
        "hourglass_bottom",
        "hourglass_disabled",
        "hourglass_empty",
        "hourglass_pause",
        "hourglass_top",
        "house",
        "house_siding",
        "house_with_shield",
        "houseboat",
        "household_supplies",
        "hov",
        "how_to_reg",
        "how_to_vote",
        "hr_resting",
        "html",
        "http",
        "hub",
        "humerus",
        "humerus_alt",
        "humidity_high",
        "humidity_indoor",
        "humidity_low",
        "humidity_mid",
        "humidity_percentage",
        "hvac",
        "hvac_max_defrost",
        "ice_skating",
        "icecream",
        "id_card",
        "identity_aware_proxy",
        "identity_platform",
        "ifl",
        "iframe",
        "iframe_off",
        "image",
        "image_arrow_up",
        "image_aspect_ratio",
        "image_search",
        "imagesearch_roller",
        "imagesmode",
        "immunology",
        "import_contacts",
        "important_devices",
        "in_home_mode",
        "inactive_order",
        "inbox",
        "inbox_customize",
        "inbox_text",
        "inbox_text_asterisk",
        "inbox_text_person",
        "inbox_text_share",
        "incomplete_circle",
        "indeterminate_check_box",
        "indeterminate_question_box",
        "info",
        "info_i",
        "infrared",
        "ink_eraser",
        "ink_eraser_off",
        "ink_highlighter",
        "ink_highlighter_move",
        "ink_marker",
        "ink_pen",
        "ink_selection",
        "inpatient",
        "input",
        "input_circle",
        "insert_chart",
        "insert_page_break",
        "insert_text",
        "install_desktop",
        "instant_mix",
        "integration_instructions",
        "interactive_space",
        "interests",
        "interpreter_mode",
        "inventory",
        "inventory_2",
        "invert_colors",
        "invert_colors_off",
        "ios",
        "ios_share",
        "iron",
        "jamboard_kiosk",
        "javascript",
        "join",
        "join_inner",
        "join_left",
        "join_right",
        "joystick",
        "jump_to_element",
        "kayaking",
        "kebab_dining",
        "keep",
        "keep_off",
        "keep_public",
        "kettle",
        "key",
        "key_off",
        "key_vertical",
        "key_visualizer",
        "keyboard",
        "keyboard_alt",
        "keyboard_arrow_down",
        "keyboard_arrow_left",
        "keyboard_arrow_right",
        "keyboard_arrow_up",
        "keyboard_backspace",
        "keyboard_capslock",
        "keyboard_capslock_badge",
        "keyboard_command_key",
        "keyboard_control_key",
        "keyboard_double_arrow_down",
        "keyboard_double_arrow_left",
        "keyboard_double_arrow_right",
        "keyboard_double_arrow_up",
        "keyboard_external_input",
        "keyboard_full",
        "keyboard_hide",
        "keyboard_keys",
        "keyboard_lock",
        "keyboard_lock_off",
        "keyboard_off",
        "keyboard_onscreen",
        "keyboard_option_key",
        "keyboard_previous_language",
        "keyboard_return",
        "keyboard_tab",
        "keyboard_tab_rtl",
        "kid_star",
        "king_bed",
        "kitchen",
        "kitesurfing",
        "lab_panel",
        "lab_profile",
        "lab_research",
        "label",
        "label_important",
        "label_off",
        "labs",
        "lan",
        "landscape",
        "landscape_2",
        "landscape_2_edit",
        "landscape_2_off",
        "landslide",
        "language",
        "language_chinese_array",
        "language_chinese_cangjie",
        "language_chinese_dayi",
        "language_chinese_pinyin",
        "language_chinese_quick",
        "language_chinese_wubi",
        "language_french",
        "language_gb_english",
        "language_international",
        "language_japanese_kana",
        "language_korean_latin",
        "language_pinyin",
        "language_spanish",
        "language_us",
        "language_us_colemak",
        "language_us_dvorak",
        "laps",
        "laptop_car",
        "laptop_chromebook",
        "laptop_mac",
        "laptop_windows",
        "lasso_select",
        "last_page",
        "laundry",
        "layers",
        "layers_clear",
        "lda",
        "leaderboard",
        "leak_add",
        "leak_remove",
        "left_click",
        "left_panel_close",
        "left_panel_open",
        "legend_toggle",
        "lens_blur",
        "letter_switch",
        "library_add",
        "library_add_check",
        "library_books",
        "library_music",
        "license",
        "lift_to_talk",
        "light",
        "light_group",
        "light_mode",
        "light_off",
        "lightbulb",
        "lightbulb_2",
        "lightbulb_circle",
        "lightning_stand",
        "line_axis",
        "line_curve",
        "line_end",
        "line_end_arrow",
        "line_end_arrow_notch",
        "line_end_circle",
        "line_end_diamond",
        "line_end_square",
        "line_start",
        "line_start_arrow",
        "line_start_arrow_notch",
        "line_start_circle",
        "line_start_diamond",
        "line_start_square",
        "line_style",
        "line_weight",
        "linear_scale",
        "link",
        "link_off",
        "linked_camera",
        "linked_services",
        "liquor",
        "list",
        "list_alt",
        "list_alt_add",
        "list_alt_check",
        "lists",
        "live_help",
        "live_tv",
        "living",
        "local_activity",
        "local_atm",
        "local_bar",
        "local_cafe",
        "local_car_wash",
        "local_convenience_store",
        "local_dining",
        "local_drink",
        "local_fire_department",
        "local_florist",
        "local_gas_station",
        "local_hospital",
        "local_laundry_service",
        "local_library",
        "local_mall",
        "local_parking",
        "local_pharmacy",
        "local_pizza",
        "local_police",
        "local_post_office",
        "local_see",
        "local_shipping",
        "local_taxi",
        "location_away",
        "location_chip",
        "location_city",
        "location_disabled",
        "location_home",
        "location_off",
        "location_on",
        "location_searching",
        "lock",
        "lock_clock",
        "lock_open",
        "lock_open_circle",
        "lock_open_right",
        "lock_person",
        "lock_reset",
        "login",
        "logo_dev",
        "logout",
        "looks",
        "looks_3",
        "looks_4",
        "looks_5",
        "looks_6",
        "looks_one",
        "looks_two",
        "loupe",
        "low_density",
        "low_priority",
        "lowercase",
        "loyalty",
        "lte_mobiledata",
        "lte_mobiledata_badge",
        "lte_plus_mobiledata",
        "lte_plus_mobiledata_badge",
        "luggage",
        "lunch_dining",
        "lyrics",
        "macro_auto",
        "macro_off",
        "magnification_large",
        "magnification_small",
        "magnify_docked",
        "magnify_fullscreen",
        "mail",
        "mail_lock",
        "mail_off",
        "male",
        "man",
        "man_2",
        "man_3",
        "man_4",
        "manage_accounts",
        "manage_history",
        "manage_search",
        "manga",
        "manufacturing",
        "map",
        "map_search",
        "maps_ugc",
        "margin",
        "mark_as_unread",
        "mark_chat_read",
        "mark_chat_unread",
        "mark_email_read",
        "mark_email_unread",
        "mark_unread_chat_alt",
        "markdown",
        "markdown_copy",
        "markdown_paste",
        "markunread_mailbox",
        "masked_transitions",
        "masked_transitions_add",
        "masks",
        "match_case",
        "match_case_off",
        "match_word",
        "matter",
        "maximize",
        "measuring_tape",
        "media_bluetooth_off",
        "media_bluetooth_on",
        "media_link",
        "media_output",
        "media_output_off",
        "mediation",
        "medical_information",
        "medical_mask",
        "medical_services",
        "medication",
        "medication_liquid",
        "meeting_room",
        "memory",
        "memory_alt",
        "menstrual_health",
        "menu",
        "menu_book",
        "menu_open",
        "merge",
        "merge_type",
        "metabolism",
        "metro",
        "mfg_nest_yale_lock",
        "mic",
        "mic_alert",
        "mic_double",
        "mic_external_off",
        "mic_external_on",
        "mic_off",
        "microbiology",
        "microwave",
        "microwave_gen",
        "military_tech",
        "mimo",
        "mimo_disconnect",
        "mindfulness",
        "minimize",
        "minor_crash",
        "mintmark",
        "missed_video_call",
        "missing_controller",
        "mist",
        "mitre",
        "mixture_med",
        "mms",
        "mobile_hand",
        "mobile_hand_left",
        "mobile_hand_left_off",
        "mobile_hand_off",
        "mobile_loupe",
        "mobile_off",
        "mobile_screen_share",
        "mobile_screensaver",
        "mobile_sound_2",
        "mobile_speaker",
        "mobiledata_off",
        "mode_comment",
        "mode_cool",
        "mode_cool_off",
        "mode_dual",
        "mode_fan",
        "mode_fan_off",
        "mode_heat",
        "mode_heat_cool",
        "mode_heat_off",
        "mode_night",
        "mode_of_travel",
        "mode_off_on",
        "mode_standby",
        "model_training",
        "modeling",
        "money",
        "money_bag",
        "money_off",
        "monitor",
        "monitor_heart",
        "monitor_weight",
        "monitor_weight_gain",
        "monitor_weight_loss",
        "monitoring",
        "monochrome_photos",
        "monorail",
        "mood",
        "mood_bad",
        "moon_stars",
        "mop",
        "moped",
        "more",
        "more_down",
        "more_horiz",
        "more_time",
        "more_up",
        "more_vert",
        "mosque",
        "motion_blur",
        "motion_mode",
        "motion_photos_auto",
        "motion_photos_off",
        "motion_photos_on",
        "motion_photos_paused",
        "motion_play",
        "motion_sensor_active",
        "motion_sensor_alert",
        "motion_sensor_idle",
        "motion_sensor_urgent",
        "motorcycle",
        "mountain_flag",
        "mouse",
        "mouse_lock",
        "mouse_lock_off",
        "move",
        "move_down",
        "move_group",
        "move_item",
        "move_location",
        "move_selection_down",
        "move_selection_left",
        "move_selection_right",
        "move_selection_up",
        "move_to_inbox",
        "move_up",
        "moved_location",
        "movie",
        "movie_edit",
        "movie_info",
        "movie_off",
        "moving",
        "moving_beds",
        "moving_ministry",
        "mp",
        "multicooker",
        "multiline_chart",
        "multimodal_hand_eye",
        "multiple_airports",
        "multiple_stop",
        "museum",
        "music_cast",
        "music_note",
        "music_note_add",
        "music_off",
        "music_video",
        "my_location",
        "mystery",
        "nat",
        "nature",
        "nature_people",
        "navigation",
        "near_me",
        "near_me_disabled",
        "nearby",
        "nearby_error",
        "nearby_off",
        "nephrology",
        "nest_audio",
        "nest_cam_floodlight",
        "nest_cam_indoor",
        "nest_cam_iq",
        "nest_cam_iq_outdoor",
        "nest_cam_magnet_mount",
        "nest_cam_outdoor",
        "nest_cam_stand",
        "nest_cam_wall_mount",
        "nest_cam_wired_stand",
        "nest_clock_farsight_analog",
        "nest_clock_farsight_digital",
        "nest_connect",
        "nest_detect",
        "nest_display",
        "nest_display_max",
        "nest_doorbell_visitor",
        "nest_eco_leaf",
        "nest_farsight_weather",
        "nest_found_savings",
        "nest_heat_link_e",
        "nest_heat_link_gen_3",
        "nest_hello_doorbell",
        "nest_mini",
        "nest_multi_room",
        "nest_protect",
        "nest_remote",
        "nest_remote_comfort_sensor",
        "nest_secure_alarm",
        "nest_sunblock",
        "nest_tag",
        "nest_thermostat",
        "nest_thermostat_e_eu",
        "nest_thermostat_gen_3",
        "nest_thermostat_sensor",
        "nest_thermostat_sensor_eu",
        "nest_thermostat_zirconium_eu",
        "nest_true_radiant",
        "nest_wake_on_approach",
        "nest_wake_on_press",
        "nest_wifi_point",
        "nest_wifi_pro",
        "nest_wifi_pro_2",
        "nest_wifi_router",
        "network_cell",
        "network_check",
        "network_intel_node",
        "network_intelligence",
        "network_intelligence_history",
        "network_intelligence_update",
        "network_locked",
        "network_manage",
        "network_node",
        "network_ping",
        "network_wifi",
        "network_wifi_1_bar",
        "network_wifi_1_bar_locked",
        "network_wifi_2_bar",
        "network_wifi_2_bar_locked",
        "network_wifi_3_bar",
        "network_wifi_3_bar_locked",
        "network_wifi_locked",
        "neurology",
        "new_label",
        "new_window",
        "news",
        "newsmode",
        "newspaper",
        "newsstand",
        "next_plan",
        "next_week",
        "nfc",
        "nfc_off",
        "night_shelter",
        "night_sight_auto",
        "night_sight_auto_off",
        "night_sight_max",
        "nightlife",
        "nightlight",
        "nights_stay",
        "no_accounts",
        "no_adult_content",
        "no_backpack",
        "no_crash",
        "no_drinks",
        "no_encryption",
        "no_flash",
        "no_food",
        "no_luggage",
        "no_meals",
        "no_meeting_room",
        "no_photography",
        "no_sim",
        "no_sound",
        "no_stroller",
        "no_transfer",
        "noise_aware",
        "noise_control_off",
        "noise_control_on",
        "nordic_walking",
        "north",
        "north_east",
        "north_west",
        "not_accessible",
        "not_accessible_forward",
        "not_listed_location",
        "not_started",
        "note_add",
        "note_alt",
        "note_stack",
        "note_stack_add",
        "notes",
        "notification_add",
        "notification_important",
        "notification_multiple",
        "notification_settings",
        "notification_sound",
        "notifications",
        "notifications_active",
        "notifications_off",
        "notifications_paused",
        "notifications_unread",
        "numbers",
        "nutrition",
        "ods",
        "odt",
        "offline_bolt",
        "offline_pin",
        "offline_pin_off",
        "offline_share",
        "oil_barrel",
        "on_device_training",
        "on_hub_device",
        "oncology",
        "online_prediction",
        "onsen",
        "opacity",
        "open_in_browser",
        "open_in_full",
        "open_in_new",
        "open_in_new_down",
        "open_in_new_off",
        "open_jam",
        "open_run",
        "open_with",
        "ophthalmology",
        "oral_disease",
        "orbit",
        "order_approve",
        "order_play",
        "orders",
        "orthopedics",
        "other_admission",
        "other_houses",
        "outbound",
        "outbox",
        "outbox_alt",
        "outdoor_garden",
        "outdoor_grill",
        "outgoing_mail",
        "outlet",
        "outpatient",
        "outpatient_med",
        "output",
        "output_circle",
        "oven",
        "oven_gen",
        "overview",
        "overview_key",
        "owl",
        "oxygen_saturation",
        "p2p",
        "pace",
        "pacemaker",
        "package",
        "package_2",
        "padding",
        "page_control",
        "page_footer",
        "page_header",
        "page_info",
        "pageless",
        "pages",
        "pageview",
        "paid",
        "palette",
        "pallet",
        "pan_tool",
        "pan_tool_alt",
        "pan_zoom",
        "panorama",
        "panorama_horizontal",
        "panorama_photosphere",
        "panorama_vertical",
        "panorama_wide_angle",
        "paragliding",
        "park",
        "partly_cloudy_day",
        "partly_cloudy_night",
        "partner_exchange",
        "partner_reports",
        "party_mode",
        "passkey",
        "password",
        "password_2",
        "password_2_off",
        "patient_list",
        "pattern",
        "pause",
        "pause_circle",
        "pause_presentation",
        "payments",
        "pedal_bike",
        "pediatrics",
        "pen_size_1",
        "pen_size_2",
        "pen_size_3",
        "pen_size_4",
        "pen_size_5",
        "pending",
        "pending_actions",
        "pentagon",
        "percent",
        "pergola",
        "perm_camera_mic",
        "perm_contact_calendar",
        "perm_data_setting",
        "perm_device_information",
        "perm_media",
        "perm_phone_msg",
        "perm_scan_wifi",
        "person",
        "person_2",
        "person_3",
        "person_4",
        "person_add",
        "person_add_disabled",
        "person_alert",
        "person_apron",
        "person_book",
        "person_cancel",
        "person_celebrate",
        "person_check",
        "person_edit",
        "person_off",
        "person_pin",
        "person_pin_circle",
        "person_play",
        "person_raised_hand",
        "person_remove",
        "person_search",
        "person_shield",
        "personal_bag",
        "personal_bag_off",
        "personal_bag_question",
        "personal_injury",
        "personal_places",
        "pest_control",
        "pest_control_rodent",
        "pet_supplies",
        "pets",
        "phishing",
        "phone_android",
        "phone_bluetooth_speaker",
        "phone_callback",
        "phone_disabled",
        "phone_enabled",
        "phone_forwarded",
        "phone_in_talk",
        "phone_iphone",
        "phone_locked",
        "phone_missed",
        "phone_paused",
        "phonelink_erase",
        "phonelink_ring",
        "phonelink_ring_off",
        "phonelink_setup",
        "photo",
        "photo_album",
        "photo_auto_merge",
        "photo_camera",
        "photo_camera_back",
        "photo_camera_front",
        "photo_frame",
        "photo_library",
        "photo_prints",
        "photo_size_select_large",
        "photo_size_select_small",
        "php",
        "physical_therapy",
        "piano",
        "piano_off",
        "picture_as_pdf",
        "picture_in_picture",
        "picture_in_picture_alt",
        "picture_in_picture_center",
        "picture_in_picture_large",
        "picture_in_picture_medium",
        "picture_in_picture_mobile",
        "picture_in_picture_off",
        "picture_in_picture_small",
        "pie_chart",
        "pill",
        "pill_off",
        "pin",
        "pin_drop",
        "pin_end",
        "pin_invoke",
        "pinboard",
        "pinboard_unread",
        "pinch",
        "pinch_zoom_in",
        "pinch_zoom_out",
        "pip",
        "pip_exit",
        "pivot_table_chart",
        "place_item",
        "plagiarism",
        "planet",
        "planner_banner_ad_pt",
        "planner_review",
        "play_arrow",
        "play_circle",
        "play_disabled",
        "play_for_work",
        "play_lesson",
        "play_pause",
        "playing_cards",
        "playlist_add",
        "playlist_add_check",
        "playlist_add_check_circle",
        "playlist_add_circle",
        "playlist_play",
        "playlist_remove",
        "plug_connect",
        "plumbing",
        "podcasts",
        "podiatry",
        "podium",
        "point_of_sale",
        "point_scan",
        "poker_chip",
        "policy",
        "policy_alert",
        "polyline",
        "polymer",
        "pool",
        "portable_wifi_off",
        "position_bottom_left",
        "position_bottom_right",
        "position_top_right",
        "post",
        "post_add",
        "potted_plant",
        "power",
        "power_input",
        "power_off",
        "power_settings_circle",
        "power_settings_new",
        "prayer_times",
        "precision_manufacturing",
        "pregnancy",
        "pregnant_woman",
        "preliminary",
        "prescriptions",
        "present_to_all",
        "preview",
        "preview_off",
        "price_change",
        "price_check",
        "print",
        "print_add",
        "print_connect",
        "print_disabled",
        "print_error",
        "print_lock",
        "priority",
        "priority_high",
        "privacy",
        "privacy_tip",
        "private_connectivity",
        "problem",
        "procedure",
        "process_chart",
        "production_quantity_limits",
        "productivity",
        "progress_activity",
        "prompt_suggestion",
        "propane",
        "propane_tank",
        "psychiatry",
        "psychology",
        "psychology_alt",
        "public",
        "public_off",
        "publish",
        "published_with_changes",
        "pulmonology",
        "pulse_alert",
        "punch_clock",
        "qr_code",
        "qr_code_2",
        "qr_code_2_add",
        "qr_code_scanner",
        "query_stats",
        "question_exchange",
        "question_mark",
        "queue_music",
        "queue_play_next",
        "quick_phrases",
        "quick_reference",
        "quick_reference_all",
        "quick_reorder",
        "quickreply",
        "quiz",
        "r_mobiledata",
        "radar",
        "radio",
        "radio_button_checked",
        "radio_button_partial",
        "radio_button_unchecked",
        "radiology",
        "railway_alert",
        "railway_alert_2",
        "rainy",
        "rainy_heavy",
        "rainy_light",
        "rainy_snow",
        "ramen_dining",
        "ramp_left",
        "ramp_right",
        "range_hood",
        "rate_review",
        "raven",
        "raw_off",
        "raw_on",
        "read_more",
        "readiness_score",
        "real_estate_agent",
        "rear_camera",
        "rebase",
        "rebase_edit",
        "receipt",
        "receipt_long",
        "receipt_long_off",
        "recent_actors",
        "recent_patient",
        "recenter",
        "recommend",
        "record_voice_over",
        "rectangle",
        "recycling",
        "redeem",
        "redo",
        "reduce_capacity",
        "refresh",
        "regular_expression",
        "relax",
        "release_alert",
        "remember_me",
        "reminder",
        "remote_gen",
        "remove",
        "remove_done",
        "remove_from_queue",
        "remove_moderator",
        "remove_road",
        "remove_selection",
        "remove_shopping_cart",
        "reopen_window",
        "reorder",
        "repartition",
        "repeat",
        "repeat_on",
        "repeat_one",
        "repeat_one_on",
        "replace_audio",
        "replace_image",
        "replace_video",
        "replay",
        "replay_10",
        "replay_30",
        "replay_5",
        "reply",
        "reply_all",
        "report",
        "report_off",
        "request_page",
        "request_quote",
        "reset_brightness",
        "reset_focus",
        "reset_image",
        "reset_iso",
        "reset_settings",
        "reset_shadow",
        "reset_shutter_speed",
        "reset_tv",
        "reset_white_balance",
        "reset_wrench",
        "resize",
        "respiratory_rate",
        "responsive_layout",
        "restart_alt",
        "restaurant",
        "restore_from_trash",
        "restore_page",
        "resume",
        "reviews",
        "rewarded_ads",
        "rheumatology",
        "rib_cage",
        "rice_bowl",
        "right_click",
        "right_panel_close",
        "right_panel_open",
        "ring_volume",
        "ripples",
        "road",
        "robot",
        "robot_2",
        "rocket",
        "rocket_launch",
        "roller_shades",
        "roller_shades_closed",
        "roller_skating",
        "roofing",
        "room_preferences",
        "room_service",
        "rotate_90_degrees_ccw",
        "rotate_90_degrees_cw",
        "rotate_auto",
        "rotate_left",
        "rotate_right",
        "roundabout_left",
        "roundabout_right",
        "rounded_corner",
        "route",
        "router",
        "router_off",
        "routine",
        "rowing",
        "rss_feed",
        "rsvp",
        "rtt",
        "rubric",
        "rule",
        "rule_folder",
        "rule_settings",
        "run_circle",
        "running_with_errors",
        "rv_hookup",
        "safety_check",
        "safety_check_off",
        "safety_divider",
        "sailing",
        "salinity",
        "sanitizer",
        "satellite",
        "satellite_alt",
        "sauna",
        "save",
        "save_as",
        "save_clock",
        "saved_search",
        "savings",
        "scale",
        "scan",
        "scan_delete",
        "scanner",
        "scatter_plot",
        "scene",
        "schedule",
        "schedule_send",
        "schema",
        "school",
        "science",
        "science_off",
        "scooter",
        "score",
        "scoreboard",
        "screen_lock_landscape",
        "screen_lock_portrait",
        "screen_lock_rotation",
        "screen_record",
        "screen_rotation",
        "screen_rotation_alt",
        "screen_rotation_up",
        "screen_search_desktop",
        "screen_share",
        "screenshot",
        "screenshot_frame",
        "screenshot_frame_2",
        "screenshot_keyboard",
        "screenshot_monitor",
        "screenshot_region",
        "screenshot_tablet",
        "script",
        "scrollable_header",
        "scuba_diving",
        "sd",
        "sd_card",
        "sd_card_alert",
        "sdk",
        "search",
        "search_activity",
        "search_check",
        "search_check_2",
        "search_hands_free",
        "search_insights",
        "search_off",
        "seat_cool_left",
        "seat_cool_right",
        "seat_heat_left",
        "seat_heat_right",
        "seat_vent_left",
        "seat_vent_right",
        "security",
        "security_key",
        "security_update_good",
        "security_update_warning",
        "segment",
        "select",
        "select_all",
        "select_check_box",
        "select_to_speak",
        "select_window",
        "select_window_2",
        "select_window_off",
        "self_care",
        "self_improvement",
        "sell",
        "send",
        "send_and_archive",
        "send_money",
        "send_time_extension",
        "send_to_mobile",
        "sensor_door",
        "sensor_occupied",
        "sensor_window",
        "sensors",
        "sensors_krx",
        "sensors_krx_off",
        "sensors_off",
        "sentiment_calm",
        "sentiment_content",
        "sentiment_dissatisfied",
        "sentiment_excited",
        "sentiment_extremely_dissatisfied",
        "sentiment_frustrated",
        "sentiment_neutral",
        "sentiment_sad",
        "sentiment_satisfied",
        "sentiment_stressed",
        "sentiment_very_dissatisfied",
        "sentiment_very_satisfied",
        "sentiment_worried",
        "serif",
        "server_person",
        "service_toolbox",
        "set_meal",
        "settings",
        "settings_accessibility",
        "settings_account_box",
        "settings_alert",
        "settings_applications",
        "settings_b_roll",
        "settings_backup_restore",
        "settings_bluetooth",
        "settings_brightness",
        "settings_cell",
        "settings_cinematic_blur",
        "settings_ethernet",
        "settings_heart",
        "settings_input_antenna",
        "settings_input_component",
        "settings_input_hdmi",
        "settings_input_svideo",
        "settings_motion_mode",
        "settings_night_sight",
        "settings_overscan",
        "settings_panorama",
        "settings_phone",
        "settings_photo_camera",
        "settings_power",
        "settings_remote",
        "settings_slow_motion",
        "settings_system_daydream",
        "settings_timelapse",
        "settings_video_camera",
        "settings_voice",
        "settop_component",
        "severe_cold",
        "shadow",
        "shadow_add",
        "shadow_minus",
        "shape_line",
        "shapes",
        "share",
        "share_eta",
        "share_location",
        "share_off",
        "share_reviews",
        "share_windows",
        "sheets_rtl",
        "shelf_auto_hide",
        "shelf_position",
        "shelves",
        "shield",
        "shield_lock",
        "shield_locked",
        "shield_moon",
        "shield_person",
        "shield_question",
        "shield_watch",
        "shield_with_heart",
        "shield_with_house",
        "shift",
        "shift_lock",
        "shift_lock_off",
        "shop",
        "shop_two",
        "shopping_bag",
        "shopping_bag_speed",
        "shopping_basket",
        "shopping_cart",
        "shopping_cart_checkout",
        "shopping_cart_off",
        "shoppingmode",
        "short_stay",
        "short_text",
        "show_chart",
        "shower",
        "shuffle",
        "shuffle_on",
        "shutter_speed",
        "shutter_speed_add",
        "shutter_speed_minus",
        "sick",
        "side_navigation",
        "sign_language",
        "signal_cellular_0_bar",
        "signal_cellular_1_bar",
        "signal_cellular_2_bar",
        "signal_cellular_3_bar",
        "signal_cellular_4_bar",
        "signal_cellular_add",
        "signal_cellular_alt",
        "signal_cellular_alt_1_bar",
        "signal_cellular_alt_2_bar",
        "signal_cellular_connected_no_internet_0_bar",
        "signal_cellular_connected_no_internet_4_bar",
        "signal_cellular_nodata",
        "signal_cellular_null",
        "signal_cellular_off",
        "signal_cellular_pause",
        "signal_disconnected",
        "signal_wifi_0_bar",
        "signal_wifi_4_bar",
        "signal_wifi_bad",
        "signal_wifi_off",
        "signal_wifi_statusbar_not_connected",
        "signal_wifi_statusbar_null",
        "signature",
        "signpost",
        "sim_card",
        "sim_card_download",
        "simulation",
        "single_bed",
        "sip",
        "siren",
        "siren_check",
        "siren_open",
        "siren_question",
        "skateboarding",
        "skeleton",
        "skillet",
        "skillet_cooktop",
        "skip_next",
        "skip_previous",
        "skull",
        "skull_list",
        "slab_serif",
        "sledding",
        "sleep_score",
        "slide_library",
        "sliders",
        "slideshow",
        "slow_motion_video",
        "smart_card_reader",
        "smart_card_reader_off",
        "smart_display",
        "smart_outlet",
        "smart_screen",
        "smart_toy",
        "smartphone",
        "smartphone_camera",
        "smb_share",
        "smoke_free",
        "smoking_rooms",
        "sms",
        "snippet_folder",
        "snooze",
        "snowboarding",
        "snowing",
        "snowing_heavy",
        "snowmobile",
        "snowshoeing",
        "soap",
        "social_distance",
        "social_leaderboard",
        "solar_power",
        "sort",
        "sort_by_alpha",
        "sos",
        "sound_detection_dog_barking",
        "sound_detection_glass_break",
        "sound_detection_loud_sound",
        "sound_sampler",
        "soup_kitchen",
        "source_environment",
        "source_notes",
        "south",
        "south_america",
        "south_east",
        "south_west",
        "spa",
        "space_bar",
        "space_dashboard",
        "spatial_audio",
        "spatial_audio_off",
        "spatial_speaker",
        "spatial_tracking",
        "speaker",
        "speaker_group",
        "speaker_notes",
        "speaker_notes_off",
        "speaker_phone",
        "special_character",
        "specific_gravity",
        "speech_to_text",
        "speed",
        "speed_0_25",
        "speed_0_2x",
        "speed_0_5",
        "speed_0_5x",
        "speed_0_75",
        "speed_0_7x",
        "speed_1_2",
        "speed_1_25",
        "speed_1_2x",
        "speed_1_5",
        "speed_1_5x",
        "speed_1_75",
        "speed_1_7x",
        "speed_2x",
        "speed_camera",
        "spellcheck",
        "split_scene",
        "split_scene_down",
        "split_scene_left",
        "split_scene_right",
        "split_scene_up",
        "splitscreen",
        "splitscreen_add",
        "splitscreen_bottom",
        "splitscreen_landscape",
        "splitscreen_left",
        "splitscreen_portrait",
        "splitscreen_right",
        "splitscreen_top",
        "splitscreen_vertical_add",
        "spo2",
        "spoke",
        "sports",
        "sports_and_outdoors",
        "sports_bar",
        "sports_baseball",
        "sports_basketball",
        "sports_cricket",
        "sports_esports",
        "sports_football",
        "sports_golf",
        "sports_gymnastics",
        "sports_handball",
        "sports_hockey",
        "sports_kabaddi",
        "sports_martial_arts",
        "sports_mma",
        "sports_motorsports",
        "sports_rugby",
        "sports_score",
        "sports_soccer",
        "sports_tennis",
        "sports_volleyball",
        "sprinkler",
        "sprint",
        "square",
        "square_dot",
        "square_foot",
        "ssid_chart",
        "stack",
        "stack_group",
        "stack_hexagon",
        "stack_off",
        "stack_star",
        "stacked_bar_chart",
        "stacked_email",
        "stacked_inbox",
        "stacked_line_chart",
        "stacks",
        "stadia_controller",
        "stadium",
        "stairs",
        "stairs_2",
        "star",
        "star_half",
        "star_rate",
        "star_rate_half",
        "star_shine",
        "stars",
        "stars_2",
        "start",
        "stat_0",
        "stat_1",
        "stat_2",
        "stat_3",
        "stat_minus_1",
        "stat_minus_2",
        "stat_minus_3",
        "stay_current_landscape",
        "steering_wheel_heat",
        "step",
        "step_into",
        "step_out",
        "step_over",
        "steppers",
        "steps",
        "stethoscope",
        "stethoscope_arrow",
        "stethoscope_check",
        "sticky_note",
        "sticky_note_2",
        "stock_media",
        "stockpot",
        "stop",
        "stop_circle",
        "stop_screen_share",
        "storage",
        "store",
        "storefront",
        "storm",
        "straight",
        "straighten",
        "strategy",
        "stream",
        "stream_apps",
        "streetview",
        "stress_management",
        "strikethrough_s",
        "stroke_full",
        "stroke_partial",
        "stroller",
        "style",
        "styler",
        "stylus",
        "stylus_brush",
        "stylus_fountain_pen",
        "stylus_highlighter",
        "stylus_laser_pointer",
        "stylus_note",
        "stylus_pen",
        "stylus_pencil",
        "subdirectory_arrow_left",
        "subdirectory_arrow_right",
        "subheader",
        "subject",
        "subscript",
        "subscriptions",
        "subtitles",
        "subtitles_gear",
        "subtitles_off",
        "subway",
        "summarize",
        "sunny",
        "sunny_snowing",
        "superscript",
        "supervised_user_circle",
        "supervised_user_circle_off",
        "supervisor_account",
        "support",
        "support_agent",
        "surfing",
        "surgical",
        "surround_sound",
        "swap_calls",
        "swap_driving_apps",
        "swap_driving_apps_wheel",
        "swap_horiz",
        "swap_horizontal_circle",
        "swap_vert",
        "swap_vertical_circle",
        "sweep",
        "swipe",
        "swipe_down",
        "swipe_down_alt",
        "swipe_left",
        "swipe_left_alt",
        "swipe_right",
        "swipe_right_alt",
        "swipe_up",
        "swipe_up_alt",
        "swipe_vertical",
        "switch",
        "switch_access",
        "switch_access_2",
        "switch_access_3",
        "switch_access_shortcut",
        "switch_access_shortcut_add",
        "switch_account",
        "switch_camera",
        "switch_left",
        "switch_right",
        "switch_video",
        "switches",
        "sword_rose",
        "swords",
        "symptoms",
        "synagogue",
        "sync",
        "sync_alt",
        "sync_arrow_down",
        "sync_arrow_up",
        "sync_desktop",
        "sync_disabled",
        "sync_lock",
        "sync_problem",
        "sync_saved_locally",
        "syringe",
        "system_update",
        "system_update_alt",
        "tab",
        "tab_close",
        "tab_close_inactive",
        "tab_close_right",
        "tab_duplicate",
        "tab_group",
        "tab_inactive",
        "tab_move",
        "tab_new_right",
        "tab_recent",
        "tab_search",
        "tab_unselected",
        "table",
        "table_bar",
        "table_chart",
        "table_chart_view",
        "table_convert",
        "table_edit",
        "table_eye",
        "table_lamp",
        "table_restaurant",
        "table_rows",
        "table_rows_narrow",
        "table_view",
        "tablet",
        "tablet_android",
        "tablet_camera",
        "tablet_mac",
        "tabs",
        "tactic",
        "tag",
        "takeout_dining",
        "tamper_detection_off",
        "tamper_detection_on",
        "tap_and_play",
        "tapas",
        "target",
        "task",
        "task_alt",
        "taunt",
        "taxi_alert",
        "team_dashboard",
        "temp_preferences_eco",
        "temple_buddhist",
        "temple_hindu",
        "tenancy",
        "terminal",
        "text_ad",
        "text_compare",
        "text_decrease",
        "text_fields",
        "text_fields_alt",
        "text_format",
        "text_increase",
        "text_rotate_up",
        "text_rotate_vertical",
        "text_rotation_angledown",
        "text_rotation_angleup",
        "text_rotation_down",
        "text_rotation_none",
        "text_select_end",
        "text_select_jump_to_beginning",
        "text_select_jump_to_end",
        "text_select_move_back_character",
        "text_select_move_back_word",
        "text_select_move_down",
        "text_select_move_forward_character",
        "text_select_move_forward_word",
        "text_select_move_up",
        "text_select_start",
        "text_snippet",
        "text_to_speech",
        "text_up",
        "texture",
        "texture_add",
        "texture_minus",
        "theater_comedy",
        "theaters",
        "thermometer",
        "thermometer_add",
        "thermometer_gain",
        "thermometer_loss",
        "thermometer_minus",
        "thermostat",
        "thermostat_arrow_down",
        "thermostat_arrow_up",
        "thermostat_auto",
        "thermostat_carbon",
        "things_to_do",
        "thread_unread",
        "threat_intelligence",
        "thumb_down",
        "thumb_up",
        "thumbnail_bar",
        "thumbs_up_down",
        "thunderstorm",
        "tibia",
        "tibia_alt",
        "tile_large",
        "tile_medium",
        "tile_small",
        "time_auto",
        "timelapse",
        "timeline",
        "timer",
        "timer_10",
        "timer_10_alt_1",
        "timer_10_select",
        "timer_3",
        "timer_3_alt_1",
        "timer_3_select",
        "timer_5",
        "timer_5_shutter",
        "timer_arrow_down",
        "timer_arrow_up",
        "timer_off",
        "timer_pause",
        "timer_play",
        "tire_repair",
        "title",
        "titlecase",
        "toast",
        "toc",
        "today",
        "toggle_off",
        "toggle_on",
        "token",
        "toll",
        "tonality",
        "toolbar",
        "tools_flat_head",
        "tools_installation_kit",
        "tools_ladder",
        "tools_level",
        "tools_phillips",
        "tools_pliers_wire_stripper",
        "tools_power_drill",
        "tooltip",
        "tooltip_2",
        "top_panel_close",
        "top_panel_open",
        "topic",
        "tornado",
        "total_dissolved_solids",
        "touch_app",
        "touch_double",
        "touch_long",
        "touch_triple",
        "touchpad_mouse",
        "touchpad_mouse_off",
        "tour",
        "toys",
        "toys_and_games",
        "toys_fan",
        "track_changes",
        "trackpad_input",
        "trackpad_input_2",
        "trackpad_input_3",
        "traffic",
        "traffic_jam",
        "trail_length",
        "trail_length_medium",
        "trail_length_short",
        "train",
        "tram",
        "transcribe",
        "transfer_within_a_station",
        "transform",
        "transgender",
        "transit_enterexit",
        "transit_ticket",
        "transition_chop",
        "transition_dissolve",
        "transition_fade",
        "transition_push",
        "transition_slide",
        "translate",
        "transportation",
        "travel",
        "travel_explore",
        "travel_luggage_and_bags",
        "trending_down",
        "trending_flat",
        "trending_up",
        "trip",
        "trip_origin",
        "trolley",
        "trolley_cable_car",
        "trophy",
        "troubleshoot",
        "tsunami",
        "tsv",
        "tty",
        "tune",
        "turn_left",
        "turn_right",
        "turn_sharp_left",
        "turn_sharp_right",
        "turn_slight_left",
        "turn_slight_right",
        "tv",
        "tv_displays",
        "tv_gen",
        "tv_guide",
        "tv_next",
        "tv_off",
        "tv_options_edit_channels",
        "tv_options_input_settings",
        "tv_remote",
        "tv_signin",
        "tv_with_assistant",
        "two_pager",
        "two_pager_store",
        "two_wheeler",
        "type_specimen",
        "u_turn_left",
        "u_turn_right",
        "ulna_radius",
        "ulna_radius_alt",
        "umbrella",
        "unarchive",
        "undo",
        "unfold_less",
        "unfold_less_double",
        "unfold_more",
        "unfold_more_double",
        "ungroup",
        "universal_currency",
        "universal_currency_alt",
        "universal_local",
        "unknown_2",
        "unknown_5",
        "unknown_7",
        "unknown_document",
        "unknown_med",
        "unlicense",
        "unpaved_road",
        "unpublished",
        "unsubscribe",
        "upcoming",
        "update",
        "update_disabled",
        "upgrade",
        "upi_pay",
        "upload",
        "upload_2",
        "upload_file",
        "uppercase",
        "urology",
        "usb",
        "usb_off",
        "user_attributes",
        "vaccines",
        "vacuum",
        "valve",
        "vape_free",
        "vaping_rooms",
        "variable_add",
        "variable_insert",
        "variable_remove",
        "variables",
        "ventilator",
        "verified",
        "verified_off",
        "verified_user",
        "vertical_align_bottom",
        "vertical_align_center",
        "vertical_align_top",
        "vertical_distribute",
        "vertical_shades",
        "vertical_shades_closed",
        "vertical_split",
        "vibration",
        "video_call",
        "video_camera_back",
        "video_camera_back_add",
        "video_camera_front",
        "video_camera_front_off",
        "video_chat",
        "video_file",
        "video_label",
        "video_library",
        "video_search",
        "video_settings",
        "video_stable",
        "videocam",
        "videocam_alert",
        "videocam_off",
        "videogame_asset",
        "videogame_asset_off",
        "view_agenda",
        "view_apps",
        "view_array",
        "view_carousel",
        "view_column",
        "view_column_2",
        "view_comfy",
        "view_comfy_alt",
        "view_compact",
        "view_compact_alt",
        "view_cozy",
        "view_day",
        "view_headline",
        "view_in_ar",
        "view_in_ar_off",
        "view_kanban",
        "view_list",
        "view_module",
        "view_object_track",
        "view_quilt",
        "view_real_size",
        "view_sidebar",
        "view_stream",
        "view_timeline",
        "view_week",
        "vignette",
        "villa",
        "visibility",
        "visibility_lock",
        "visibility_off",
        "vital_signs",
        "vo2_max",
        "voice_chat",
        "voice_over_off",
        "voice_selection",
        "voice_selection_off",
        "voicemail",
        "voicemail_2",
        "volcano",
        "volume_down",
        "volume_down_alt",
        "volume_mute",
        "volume_off",
        "volume_up",
        "volunteer_activism",
        "voting_chip",
        "vpn_key",
        "vpn_key_alert",
        "vpn_key_off",
        "vpn_lock",
        "vpn_lock_2",
        "vr180_create2d",
        "vr180_create2d_off",
        "vrpano",
        "wall_art",
        "wall_lamp",
        "wallet",
        "wallpaper",
        "wallpaper_slideshow",
        "wand_shine",
        "wand_stars",
        "ward",
        "warehouse",
        "warning",
        "warning_off",
        "wash",
        "watch",
        "watch_arrow",
        "watch_button_press",
        "watch_check",
        "watch_off",
        "watch_screentime",
        "watch_vibration",
        "watch_wake",
        "water",
        "water_bottle",
        "water_bottle_large",
        "water_damage",
        "water_do",
        "water_drop",
        "water_ec",
        "water_full",
        "water_heater",
        "water_lock",
        "water_loss",
        "water_lux",
        "water_medium",
        "water_orp",
        "water_ph",
        "water_pump",
        "water_voc",
        "waterfall_chart",
        "waves",
        "waving_hand",
        "wb_auto",
        "wb_incandescent",
        "wb_iridescent",
        "wb_shade",
        "wb_sunny",
        "wb_twilight",
        "wc",
        "weather_hail",
        "weather_mix",
        "weather_snowy",
        "web",
        "web_asset",
        "web_asset_off",
        "web_stories",
        "web_traffic",
        "webhook",
        "weekend",
        "weight",
        "west",
        "whatshot",
        "wheelchair_pickup",
        "where_to_vote",
        "widget_medium",
        "widget_small",
        "widget_width",
        "widgets",
        "width_full",
        "width_normal",
        "width_wide",
        "wifi",
        "wifi_1_bar",
        "wifi_2_bar",
        "wifi_add",
        "wifi_calling",
        "wifi_calling_bar_1",
        "wifi_calling_bar_2",
        "wifi_calling_bar_3",
        "wifi_channel",
        "wifi_find",
        "wifi_home",
        "wifi_lock",
        "wifi_notification",
        "wifi_off",
        "wifi_password",
        "wifi_protected_setup",
        "wifi_proxy",
        "wifi_tethering",
        "wifi_tethering_error",
        "wifi_tethering_off",
        "wind_power",
        "window",
        "window_closed",
        "window_open",
        "window_sensor",
        "windshield_defrost_front",
        "windshield_defrost_rear",
        "windshield_heat_front",
        "wine_bar",
        "woman",
        "woman_2",
        "work",
        "work_alert",
        "work_history",
        "work_update",
        "workspace_premium",
        "workspaces",
        "wounds_injuries",
        "wrap_text",
        "wrist",
        "wrong_location",
        "wysiwyg",
        "yard",
        "your_trips",
        "youtube_activity",
        "youtube_searched_for",
        "zone_person_alert",
        "zone_person_idle",
        "zone_person_urgent",
        "zoom_in",
        "zoom_in_map",
        "zoom_out",
        "zoom_out_map"
      ],
      "title": "Icon",
      "description": "Material Symbol icon names available in CloudCannon for UI elements and content previews.",
      "markdownDescription": "Material Symbol icon names available in CloudCannon for UI elements and content previews."
    },
    "type.documentation": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "description": "The \"href\" value of the link.",
          "markdownDescription": "The \"href\" value of the link."
        },
        "text": {
          "description": "The visible text used in the link.",
          "type": "string",
          "markdownDescription": "The visible text used in the link."
        },
        "icon": {
          "description": "The icon displayed next to the link.",
          "default": "auto_stories",
          "allOf": [
            {
              "$ref": "#/$defs/icon"
            }
          ],
          "markdownDescription": "The icon displayed next to the link."
        }
      },
      "required": [
        "url"
      ],
      "markdownDescription": "Configuration for documentation links displayed in the CloudCannon interface.",
      "title": "Documentation",
      "description": "Configuration for documentation links displayed in the CloudCannon interface.",
      "additionalProperties": false
    },
    "EditorKey": {
      "type": "string",
      "enum": [
        "visual",
        "content",
        "data"
      ],
      "title": "Editor Key",
      "description": "The available editors in CloudCannon: visual, content, and data editors.",
      "markdownDescription": "The available editors in CloudCannon: visual, content, and data editors."
    },
    "type.create": {
      "type": "object",
      "properties": {
        "path": {
          "description": "The raw template to be processed when creating files. Relative to the containing collection's path.",
          "type": "string",
          "markdownDescription": "The raw template to be processed when creating files. Relative to the containing collection's path."
        },
        "extra_data": {
          "description": "Adds to the available data placeholders coming from the file. Entry values follow the same format as path, and are processed sequentially before path. These values are not saved back to your file.",
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "markdownDescription": "Adds to the available data placeholders coming from the file. Entry values follow the same format as path, and are processed sequentially before path. These values are not saved back to your file.",
          "additionalProperties": {
            "type": "string"
          }
        },
        "publish_to": {
          "description": "Defines a target collection when publishing. When a file is published, the target collection's create definition is used instead.",
          "type": "string",
          "markdownDescription": "Defines a target collection when publishing. When a file is published, the target collection's create definition is used instead."
        },
        "_inputs": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs"
            }
          ]
        },
        "_inputs_from_glob": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs_from_glob"
            }
          ]
        },
        "_select_data": {
          "allOf": [
            {
              "$ref": "#/$defs/type._select_data"
            }
          ]
        },
        "_structures": {
          "allOf": [
            {
              "$ref": "#/$defs/type._structures"
            }
          ]
        },
        "_structures_from_glob": {
          "allOf": [
            {
              "$ref": "#/$defs/type._structures_from_glob"
            }
          ]
        }
      },
      "markdownDescription": "Controls where new files are saved.",
      "title": "Create",
      "description": "Controls where new files are saved.",
      "additionalProperties": false
    },
    "type._inputs": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "markdownDescription": "Controls the behavior and appearance of your inputs in all data editing interfaces.",
      "title": "Inputs",
      "description": "Controls the behavior and appearance of your inputs in all data editing interfaces.",
      "additionalProperties": {
        "$ref": "#/$defs/Input"
      }
    },
    "Input": {
      "anyOf": [
        {
          "oneOf": [
            {
              "$ref": "#/$defs/TextInput"
            },
            {
              "$ref": "#/$defs/TextareaInput"
            },
            {
              "$ref": "#/$defs/CodeInput"
            },
            {
              "$ref": "#/$defs/ColorInput"
            },
            {
              "$ref": "#/$defs/BooleanInput"
            },
            {
              "$ref": "#/$defs/NumberInput"
            },
            {
              "$ref": "#/$defs/RangeInput"
            },
            {
              "$ref": "#/$defs/RichTextInput"
            },
            {
              "$ref": "#/$defs/DateInput"
            },
            {
              "$ref": "#/$defs/TimeInput"
            },
            {
              "$ref": "#/$defs/FileInput"
            },
            {
              "$ref": "#/$defs/UrlInput"
            },
            {
              "$ref": "#/$defs/SelectInput"
            },
            {
              "$ref": "#/$defs/MultiselectInput"
            },
            {
              "$ref": "#/$defs/ChoiceInput"
            },
            {
              "$ref": "#/$defs/MultichoiceInput"
            },
            {
              "$ref": "#/$defs/ObjectInput"
            },
            {
              "$ref": "#/$defs/ArrayInput"
            },
            {
              "$ref": "#/$defs/AutoInput"
            }
          ],
          "title": "Known Input",
          "description": "A union of all input types that are known to the CloudCannon configuration schema.",
          "markdownDescription": "A union of all input types that are known to the CloudCannon configuration schema."
        },
        {
          "$ref": "#/$defs/UnknownInput"
        }
      ],
      "title": "Input"
    },
    "TextInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "enum": [
            "text",
            "email",
            "disabled",
            "pinterest",
            "facebook",
            "twitter",
            "github",
            "instagram"
          ],
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "max_length": {
              "$ref": "#/$defs/type._inputs.*.options.max_length"
            },
            "max_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_length_message"
            },
            "min_length": {
              "$ref": "#/$defs/type._inputs.*.options.min_length"
            },
            "min_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_length_message"
            },
            "max_words": {
              "$ref": "#/$defs/type._inputs.*.options.max_words"
            },
            "max_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_words_message"
            },
            "min_words": {
              "$ref": "#/$defs/type._inputs.*.options.min_words"
            },
            "min_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_words_message"
            },
            "max_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes"
            },
            "max_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes_message"
            },
            "min_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes"
            },
            "min_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes_message"
            },
            "locale": {
              "$ref": "#/$defs/type._inputs.*.options.locale"
            },
            "pattern": {
              "$ref": "#/$defs/type._inputs.*.options.pattern"
            },
            "pattern_message": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_message"
            },
            "pattern_flags": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_flags"
            },
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(text)"
                }
              ]
            },
            "placeholder": {
              "description": "Text shown when this input has no value.",
              "type": "string",
              "markdownDescription": "Text shown when this input has no value."
            },
            "icon": {
              "description": "Icon shown beside the input.",
              "allOf": [
                {
                  "$ref": "#/$defs/icon"
                }
              ],
              "markdownDescription": "Icon shown beside the input."
            },
            "icon_color": {
              "allOf": [
                {
                  "$ref": "#/$defs/PreviewEntries"
                }
              ]
            },
            "icon_background_color": {
              "allOf": [
                {
                  "$ref": "#/$defs/PreviewEntries"
                }
              ]
            }
          },
          "markdownDescription": "Options that are specific to Text Inputs.",
          "description": "Options that are specific to Text Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides a simple editing interface for plain text.",
      "title": "Text Input",
      "description": "Provides a simple editing interface for plain text.",
      "additionalProperties": false
    },
    "type._inputs.*.comment": {
      "description": "Changes the subtext below the _Label_. Has no default. Supports a limited set of Markdown: links, bold, italic, subscript, superscript, and inline code elements are allowed.",
      "type": "string",
      "markdownDescription": "Changes the subtext below the _Label_. Has no default. Supports a limited set of Markdown: links, bold, italic, subscript, superscript, and inline code elements are allowed."
    },
    "type._inputs.*.context": {
      "type": "object",
      "properties": {
        "content": {
          "description": "The rich text content shown when opened. Supports a limited set of Markdown.",
          "type": "string",
          "markdownDescription": "The rich text content shown when opened. Supports a limited set of Markdown."
        },
        "open": {
          "description": "Makes the content visible initially.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "Makes the content visible initially."
        },
        "title": {
          "description": "The text shown when not open. Defaults to \"Context\" if unset.",
          "type": "string",
          "markdownDescription": "The text shown when not open. Defaults to \"Context\" if unset."
        },
        "icon": {
          "description": "The icon shown when not open. Defaults to \"auto_stories\" if unset.",
          "allOf": [
            {
              "$ref": "#/$defs/icon"
            }
          ],
          "markdownDescription": "The icon shown when not open. Defaults to \"auto_stories\" if unset."
        }
      },
      "markdownDescription": "Adds an expandable section of rich text below the input.",
      "description": "Adds an expandable section of rich text below the input.",
      "additionalProperties": false
    },
    "type._inputs.*.label": {
      "description": "Optionally changes the text above this input.",
      "type": "string",
      "markdownDescription": "Optionally changes the text above this input."
    },
    "type._inputs.*.hidden": {
      "description": "Toggles the visibility of this input.",
      "default": false,
      "anyOf": [
        {
          "type": "boolean",
          "title": "Boolean"
        },
        {
          "type": "string",
          "title": "Query String"
        }
      ],
      "markdownDescription": "Toggles the visibility of this input."
    },
    "type._inputs.*.disabled": {
      "description": "Toggles if this input can be edited.",
      "default": false,
      "anyOf": [
        {
          "type": "boolean",
          "title": "Boolean"
        },
        {
          "type": "string",
          "title": "Query String"
        }
      ],
      "markdownDescription": "Toggles if this input can be edited."
    },
    "type._inputs.*.instance_value": {
      "title": "Instance Value",
      "description": "Controls if and how the value of this input is instantiated when created. This occurs when creating files, or adding array items containing the configured input.",
      "type": "string",
      "enum": [
        "UUID",
        "NOW"
      ],
      "markdownDescription": "Controls if and how the value of this input is instantiated when created. This occurs when creating files, or adding array items containing the configured input."
    },
    "type._inputs.*.disable_instance_value_rehydration": {
      "description": "Prevents the default where inputs configured with an `instance_value` are rehydrated with a new value when duplicated in the CMS.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Prevents the default where inputs configured with an `instance_value` are rehydrated with a new value when duplicated in the CMS."
    },
    "type._inputs.*.cascade": {
      "description": "Specifies whether or not this input configuration should be merged with any matching, less specific configuration.",
      "default": true,
      "type": "boolean",
      "markdownDescription": "Specifies whether or not this input configuration should be merged with any matching, less specific configuration."
    },
    "type._inputs.*.options.max_length": {
      "description": "This key defines the maximum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes.",
      "type": "number",
      "markdownDescription": "This key defines the maximum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.max_length_message": {
      "description": "This key defines the message that explains which maximum string length an Input will accept. This key requires you to define `options.max_length`.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains which maximum string length an Input will accept. This key requires you to define `options.max_length`."
    },
    "type._inputs.*.options.min_length": {
      "description": "This key defines the minimum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes.",
      "type": "number",
      "markdownDescription": "This key defines the minimum string length, in characters, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.min_length_message": {
      "description": "This key defines the message that explains which minimum string length an Input will accept. This key requires you to define `options.min_length`.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains which minimum string length an Input will accept. This key requires you to define `options.min_length`."
    },
    "type._inputs.*.options.max_words": {
      "description": "This key defines the maximum string length, in words, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes.",
      "type": "number",
      "markdownDescription": "This key defines the maximum string length, in words, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.max_words_message": {
      "description": "This key defines the message that explains which maximum string length an Input will accept. This key requires you to define `options.max_words.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains which maximum string length an Input will accept. This key requires you to define `options.max_words."
    },
    "type._inputs.*.options.min_words": {
      "description": "This key defines the minimum string length, in words, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes.",
      "type": "number",
      "markdownDescription": "This key defines the minimum string length, in words, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.min_words_message": {
      "description": "This key defines the message that explains which minimum string length an Input will accept. This key requires you to define `options.min_words`.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains which minimum string length an Input will accept. This key requires you to define `options.min_words`."
    },
    "type._inputs.*.options.max_graphemes": {
      "description": "This key defines the maximum string length, in graphemes, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes.",
      "type": "number",
      "markdownDescription": "This key defines the maximum string length, in graphemes, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too long. If the Input already contains a longer value, CloudCannon will require you to remove characters until the Input contains a valid string to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.max_graphemes_message": {
      "description": "This key defines the message that explains which maximum string length an Input will accept. This key requires you to define `options.max_graphemes.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains which maximum string length an Input will accept. This key requires you to define `options.max_graphemes."
    },
    "type._inputs.*.options.min_graphemes": {
      "description": "This key defines the minimum string length, in graphemes, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes.",
      "type": "number",
      "markdownDescription": "This key defines the minimum string length, in graphemes, that CloudCannon will allow in an Input. When configured, CloudCannon will warn you when an Input value is too short. If the Input already contains a shorter value, CloudCannon will require you to add characters until the Input contains a valid string to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.min_graphemes_message": {
      "description": "This key defines the message that explains which minimum string length an Input will accept. This key requires you to define `options.min_graphemes`.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains which minimum string length an Input will accept. This key requires you to define `options.min_graphemes`."
    },
    "type._inputs.*.options.locale": {
      "description": "This key defines the locale that CloudCannon uses to determine the number of words or graphemes in this Input, if you have `max_words`, `min_words`, `max_graphemes`, or `min_graphemes` configured.",
      "type": "string",
      "markdownDescription": "This key defines the locale that CloudCannon uses to determine the number of words or graphemes in this Input, if you have `max_words`, `min_words`, `max_graphemes`, or `min_graphemes` configured."
    },
    "type._inputs.*.options.pattern": {
      "description": "This key defines a regular expression that the Input value must match. When configured, CloudCannon will require you to enter a value that matches the REGEX pattern. If the Input already contains an invalid value, CloudCannon will require you to enter a valid string to save your changes, or discard your unsaved changes.",
      "type": "string",
      "markdownDescription": "This key defines a regular expression that the Input value must match. When configured, CloudCannon will require you to enter a value that matches the REGEX pattern. If the Input already contains an invalid value, CloudCannon will require you to enter a valid string to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.pattern_message": {
      "description": "This key defines the message that explains which regular expression an Input will accept. This key requires you to define `options.pattern`.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains which regular expression an Input will accept. This key requires you to define `options.pattern`."
    },
    "type._inputs.*.options.pattern_flags": {
      "description": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in `options.pattern`.",
      "type": "object",
      "properties": {
        "global": {
          "description": "`g` - Search globally.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "`g` - Search globally."
        },
        "ignore_case": {
          "description": "`i` - Case-insensitive.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "`i` - Case-insensitive."
        },
        "multiline": {
          "description": "`m` - `^` and `$` match the start and end of each line rather than the entire string.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "`m` - `^` and `$` match the start and end of each line rather than the entire string."
        },
        "dot_all": {
          "description": "`s` - `.` matches newline characters.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "`s` - `.` matches newline characters."
        },
        "unicode": {
          "description": "`u` - Pattern is treated as a sequence of Unicode code points.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "`u` - Pattern is treated as a sequence of Unicode code points."
        },
        "unicode_sets": {
          "description": "`v` - Extended `unicode` mode.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "`v` - Extended `unicode` mode."
        }
      },
      "markdownDescription": "This key defines the flags (e.g. case-insensitive searching) for the regular expression set in `options.pattern`.",
      "additionalProperties": false
    },
    "type._inputs.*.options.required": {
      "description": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "This key toggles whether CloudCannon requires this Input to have a value. If set to true, CloudCannon will require you to enter a value to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.required_message": {
      "description": "This key defines the message that explains why an Input is required. This key requires you to define `options.required`.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains why an Input is required. This key requires you to define `options.required`."
    },
    "type._inputs.*.options.empty_type(text)": {
      "default": "null",
      "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
      "type": "string",
      "enum": [
        "null",
        "string"
      ],
      "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values."
    },
    "PreviewEntries": {
      "anyOf": [
        {
          "$ref": "#/$defs/type.preview-entry.(array)"
        },
        {
          "$ref": "#/$defs/type.preview-entry.(raw-text)"
        },
        {
          "$ref": "#/$defs/type.preview-entry.(false)"
        }
      ]
    },
    "type.preview-entry.(array)": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/type.preview-entry"
      },
      "title": "Array"
    },
    "type.preview-entry": {
      "anyOf": [
        {
          "$ref": "#/$defs/type.preview-entry.(key)"
        },
        {
          "$ref": "#/$defs/type.preview-entry.(template)"
        },
        {
          "$ref": "#/$defs/type.preview-entry.(text)"
        },
        {
          "$ref": "#/$defs/type.preview-entry.(raw-text)"
        },
        {
          "$ref": "#/$defs/type.preview-entry.(false)"
        }
      ],
      "title": "Preview Entry"
    },
    "type.preview-entry.(key)": {
      "type": "object",
      "properties": {
        "key": {
          "type": "string",
          "title": "Key Value"
        }
      },
      "required": [
        "key"
      ],
      "title": "Key",
      "additionalProperties": false
    },
    "type.preview-entry.(template)": {
      "type": "object",
      "properties": {
        "template": {
          "type": "string",
          "title": "Template Value"
        }
      },
      "required": [
        "template"
      ],
      "title": "Template",
      "additionalProperties": false
    },
    "type.preview-entry.(text)": {
      "type": "object",
      "properties": {
        "text": {
          "type": "string",
          "title": "Text Value"
        }
      },
      "required": [
        "text"
      ],
      "title": "Text",
      "additionalProperties": false
    },
    "type.preview-entry.(raw-text)": {
      "type": "string",
      "title": "Raw Text"
    },
    "type.preview-entry.(false)": {
      "type": "boolean",
      "const": false,
      "title": "False"
    },
    "TextareaInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "textarea",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "max_length": {
              "$ref": "#/$defs/type._inputs.*.options.max_length"
            },
            "max_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_length_message"
            },
            "min_length": {
              "$ref": "#/$defs/type._inputs.*.options.min_length"
            },
            "min_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_length_message"
            },
            "max_words": {
              "$ref": "#/$defs/type._inputs.*.options.max_words"
            },
            "max_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_words_message"
            },
            "min_words": {
              "$ref": "#/$defs/type._inputs.*.options.min_words"
            },
            "min_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_words_message"
            },
            "max_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes"
            },
            "max_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes_message"
            },
            "min_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes"
            },
            "min_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes_message"
            },
            "locale": {
              "$ref": "#/$defs/type._inputs.*.options.locale"
            },
            "pattern": {
              "$ref": "#/$defs/type._inputs.*.options.pattern"
            },
            "pattern_message": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_message"
            },
            "pattern_flags": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_flags"
            },
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(text)"
                }
              ]
            },
            "placeholder": {
              "description": "Text shown when this input has no value.",
              "type": "string",
              "markdownDescription": "Text shown when this input has no value."
            },
            "show_count": {
              "description": "Shows a character counter below the input if enabled.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Shows a character counter below the input if enabled."
            }
          },
          "markdownDescription": "Options that are specific to Textarea Inputs.",
          "description": "Options that are specific to Textarea Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for plain text.",
      "title": "Textarea Input",
      "description": "Provides an editing interface for plain text.",
      "additionalProperties": false
    },
    "CodeInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "code",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "tab_size": {
              "default": 2,
              "type": "number"
            },
            "theme": {
              "default": "basic_dark",
              "allOf": [
                {
                  "$ref": "#/$defs/Theme"
                }
              ]
            },
            "show_gutter": {
              "default": true,
              "type": "boolean"
            },
            "soft_wrap": {
              "default": false,
              "type": "boolean"
            },
            "max_length": {
              "$ref": "#/$defs/type._inputs.*.options.max_length"
            },
            "max_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_length_message"
            },
            "min_length": {
              "$ref": "#/$defs/type._inputs.*.options.min_length"
            },
            "min_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_length_message"
            },
            "max_words": {
              "$ref": "#/$defs/type._inputs.*.options.max_words"
            },
            "max_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_words_message"
            },
            "min_words": {
              "$ref": "#/$defs/type._inputs.*.options.min_words"
            },
            "min_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_words_message"
            },
            "max_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes"
            },
            "max_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes_message"
            },
            "min_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes"
            },
            "min_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes_message"
            },
            "locale": {
              "$ref": "#/$defs/type._inputs.*.options.locale"
            },
            "pattern": {
              "$ref": "#/$defs/type._inputs.*.options.pattern"
            },
            "pattern_message": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_message"
            },
            "pattern_flags": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_flags"
            },
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(text)"
                }
              ]
            },
            "max_visible_lines": {
              "description": "Sets the maximum number of visible lines for this input, effectively controlling maximum height. When the containing text exceeds this number, the input becomes a scroll area.",
              "type": "number",
              "markdownDescription": "Sets the maximum number of visible lines for this input, effectively controlling maximum height. When the containing text exceeds this number, the input becomes a scroll area."
            },
            "min_visible_lines": {
              "description": "Sets the minimum number of visible lines for this input, effectively controlling initial height. When the containing text exceeds this number, the input grows line by line to the lines defined by `max_visible_lines`.",
              "type": "number",
              "markdownDescription": "Sets the minimum number of visible lines for this input, effectively controlling initial height. When the containing text exceeds this number, the input grows line by line to the lines defined by `max_visible_lines`."
            },
            "syntax": {
              "description": "Changes how the editor parses your content for syntax highlighting. Should be set to the language of the code going into the input.",
              "allOf": [
                {
                  "$ref": "#/$defs/Syntax"
                }
              ],
              "markdownDescription": "Changes how the editor parses your content for syntax highlighting. Should be set to the language of the code going into the input."
            }
          },
          "markdownDescription": "Options that are specific to Code Inputs.",
          "description": "Options that are specific to Code Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for code or mono-spaced plain text content.",
      "title": "Code Input",
      "description": "Provides an editing interface for code or mono-spaced plain text content.",
      "additionalProperties": false
    },
    "Theme": {
      "type": "string",
      "enum": [
        "atomone",
        "basic_dark",
        "basic_light",
        "darcula",
        "dracula",
        "duotone_dark",
        "duotone_light",
        "eclipse",
        "github_dark",
        "github_light",
        "gruvbox_dark",
        "gruvbox_light",
        "material_dark",
        "material_light",
        "solarized_dark",
        "solarized_light",
        "sublime",
        "tokyo_night",
        "tokyo_night_day",
        "tokyo_night_storm",
        "tomorrow_night_blue",
        "vscode_dark",
        "vscode_light",
        "xcode_dark",
        "xcode_light"
      ]
    },
    "Syntax": {
      "type": "string",
      "enum": [
        "c_cpp",
        "clojure",
        "cobol",
        "coffee",
        "csharp",
        "css",
        "d",
        "dart",
        "diff",
        "dockerfile",
        "eiffel",
        "elm",
        "erlang",
        "forth",
        "fortran",
        "fsharp",
        "gherkin",
        "golang",
        "groovy",
        "haskell",
        "haskell_cabal",
        "haxe",
        "html",
        "java",
        "javascript",
        "json",
        "julia",
        "kotlin",
        "less",
        "liquid",
        "livescript",
        "lua",
        "markdown",
        "mysql",
        "nginx",
        "nsis",
        "objectivec",
        "ocaml",
        "pascal",
        "pgsql",
        "pig",
        "powershell",
        "properties",
        "protobuf",
        "puppet",
        "python",
        "r",
        "ruby",
        "rust",
        "sass",
        "scala",
        "scheme",
        "scss",
        "sh",
        "sql",
        "stylus",
        "swift",
        "tcl",
        "toml",
        "turtle",
        "typescript",
        "vbscript",
        "velocity",
        "verilog",
        "vhdl",
        "xml",
        "xquery",
        "yaml"
      ],
      "title": "Syntax",
      "description": "Available syntax highlighting languages for code editors in CloudCannon.",
      "markdownDescription": "Available syntax highlighting languages for code editors in CloudCannon."
    },
    "ColorInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "color",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "max_length": {
              "$ref": "#/$defs/type._inputs.*.options.max_length"
            },
            "max_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_length_message"
            },
            "min_length": {
              "$ref": "#/$defs/type._inputs.*.options.min_length"
            },
            "min_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_length_message"
            },
            "max_words": {
              "$ref": "#/$defs/type._inputs.*.options.max_words"
            },
            "max_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_words_message"
            },
            "min_words": {
              "$ref": "#/$defs/type._inputs.*.options.min_words"
            },
            "min_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_words_message"
            },
            "max_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes"
            },
            "max_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes_message"
            },
            "min_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes"
            },
            "min_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes_message"
            },
            "locale": {
              "$ref": "#/$defs/type._inputs.*.options.locale"
            },
            "pattern": {
              "$ref": "#/$defs/type._inputs.*.options.pattern"
            },
            "pattern_message": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_message"
            },
            "pattern_flags": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_flags"
            },
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(text)"
                }
              ]
            },
            "format": {
              "description": "Sets what format the color value is saved as. Defaults to the naming convention, or HEX if that is unset.",
              "type": "string",
              "enum": [
                "rgb",
                "hex",
                "hsl",
                "hsv"
              ],
              "markdownDescription": "Sets what format the color value is saved as. Defaults to the naming convention, or HEX if that is unset."
            },
            "alpha": {
              "description": "Toggles showing a control for adjusting the transparency of the selected color. Defaults to using the naming convention, enabled if the input key ends with \"a\".",
              "type": "boolean",
              "markdownDescription": "Toggles showing a control for adjusting the transparency of the selected color. Defaults to using the naming convention, enabled if the input key ends with \"a\"."
            },
            "palette": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "hide_picker": {
              "default": false,
              "type": "boolean"
            }
          },
          "markdownDescription": "Options that are specific to Color Inputs.",
          "description": "Options that are specific to Color Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for color values.",
      "title": "Color Input",
      "description": "Provides an editing interface for color values.",
      "additionalProperties": false
    },
    "BooleanInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "enum": [
            "checkbox",
            "switch"
          ],
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for true or false values.",
      "title": "Boolean Input",
      "description": "Provides an editing interface for true or false values.",
      "additionalProperties": false
    },
    "NumberInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "number",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(number)"
                }
              ]
            },
            "min": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.min"
                }
              ]
            },
            "max": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.max"
                }
              ]
            },
            "step": {
              "$ref": "#/$defs/type._inputs.*.options.step"
            },
            "min_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_message"
            },
            "max_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_message"
            }
          },
          "markdownDescription": "Options that are specific to Number Inputs.",
          "description": "Options that are specific to Number Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for numeric values.",
      "title": "Number Input",
      "description": "Provides an editing interface for numeric values.",
      "additionalProperties": false
    },
    "type._inputs.*.options.empty_type(number)": {
      "default": "null",
      "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
      "type": "string",
      "enum": [
        "null",
        "number"
      ],
      "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values."
    },
    "type._inputs.*.options.min": {
      "type": "number",
      "description": "This key defines the minimum numerical value CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from entering a lesser numerical value. If the Input already contains a lesser numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your unsaved changes.",
      "markdownDescription": "This key defines the minimum numerical value CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from entering a lesser numerical value. If the Input already contains a lesser numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.max": {
      "type": "number",
      "description": "This key defines the maximum numerical value CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from entering a greater numerical value. If the Input already contains a greater numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your unsaved changes.",
      "markdownDescription": "This key defines the maximum numerical value CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from entering a greater numerical value. If the Input already contains a greater numerical value, CloudCannon will require you to enter a valid value to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.step": {
      "description": "A number that specifies the granularity that the value must adhere to, or the special value any, which allows any decimal value between `max` and `min`.",
      "type": "number",
      "markdownDescription": "A number that specifies the granularity that the value must adhere to, or the special value any, which allows any decimal value between `max` and `min`."
    },
    "type._inputs.*.options.min_message": {
      "description": "This key defines the message that explains why an Input needs to have a minimum numerical value. This key requires you to define `options.min`.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains why an Input needs to have a minimum numerical value. This key requires you to define `options.min`."
    },
    "type._inputs.*.options.max_message": {
      "description": "This key defines the message that explains why an Input needs to have a maximum numerical value. This key requires you to define `options.max`.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains why an Input needs to have a maximum numerical value. This key requires you to define `options.max`."
    },
    "RangeInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "range",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(number)"
                }
              ]
            },
            "min": {
              "$ref": "#/$defs/type._inputs.*.options.min"
            },
            "max": {
              "$ref": "#/$defs/type._inputs.*.options.max"
            },
            "step": {
              "$ref": "#/$defs/type._inputs.*.options.step"
            },
            "min_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_message"
            },
            "max_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_message"
            }
          },
          "required": [
            "min",
            "max"
          ],
          "markdownDescription": "Options that are specific to Range Inputs.",
          "description": "Options that are specific to Range Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides a slider interface for selecting a numeric value.",
      "title": "Range Input",
      "description": "Provides a slider interface for selecting a numeric value.",
      "additionalProperties": false
    },
    "RichTextInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "enum": [
            "html",
            "markdown"
          ],
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "mime_type": {
              "$ref": "#/$defs/type._inputs.*.options.mime_type"
            },
            "resize_style": {
              "$ref": "#/$defs/type._inputs.*.options.resize_style"
            },
            "width": {
              "$ref": "#/$defs/type._inputs.*.options.width"
            },
            "height": {
              "$ref": "#/$defs/type._inputs.*.options.height"
            },
            "expandable": {
              "$ref": "#/$defs/type._inputs.*.options.expandable"
            },
            "image_size_attributes": {
              "$ref": "#/$defs/type._inputs.*.options.image_size_attributes"
            },
            "allowed_sources": {
              "$ref": "#/$defs/type._inputs.*.options.allowed_sources"
            },
            "prevent_resize_existing_files": {
              "$ref": "#/$defs/type._inputs.*.options.prevent_resize_existing_files"
            },
            "sizes": {
              "$ref": "#/$defs/type._inputs.*.options.sizes"
            },
            "paths": {
              "allOf": [
                {
                  "$ref": "#/$defs/type.paths"
                }
              ]
            },
            "bold": {
              "$ref": "#/$defs/type._editables.*.bold"
            },
            "copyformatting": {
              "$ref": "#/$defs/type._editables.*.copyformatting"
            },
            "italic": {
              "$ref": "#/$defs/type._editables.*.italic"
            },
            "link": {
              "$ref": "#/$defs/type._editables.*.link"
            },
            "redo": {
              "$ref": "#/$defs/type._editables.*.redo"
            },
            "removeformat": {
              "$ref": "#/$defs/type._editables.*.removeformat"
            },
            "strike": {
              "$ref": "#/$defs/type._editables.*.strike"
            },
            "subscript": {
              "$ref": "#/$defs/type._editables.*.subscript"
            },
            "superscript": {
              "$ref": "#/$defs/type._editables.*.superscript"
            },
            "underline": {
              "$ref": "#/$defs/type._editables.*.underline"
            },
            "undo": {
              "$ref": "#/$defs/type._editables.*.undo"
            },
            "remove_custom_markup": {
              "$ref": "#/$defs/type._editables.*.remove_custom_markup"
            },
            "allow_custom_markup": {
              "$ref": "#/$defs/type._editables.*.allow_custom_markup"
            },
            "blockquote": {
              "$ref": "#/$defs/type._editables.*.blockquote"
            },
            "bulletedlist": {
              "$ref": "#/$defs/type._editables.*.bulletedlist"
            },
            "center": {
              "$ref": "#/$defs/type._editables.*.center"
            },
            "code_inline": {
              "$ref": "#/$defs/type._editables.*.code_inline"
            },
            "code_block": {
              "$ref": "#/$defs/type._editables.*.code_block"
            },
            "code": {
              "$ref": "#/$defs/type._editables.*.code"
            },
            "embed": {
              "$ref": "#/$defs/type._editables.*.embed"
            },
            "format": {
              "$ref": "#/$defs/type._editables.*.format"
            },
            "horizontalrule": {
              "$ref": "#/$defs/type._editables.*.horizontalrule"
            },
            "image": {
              "$ref": "#/$defs/type._editables.*.image"
            },
            "indent": {
              "$ref": "#/$defs/type._editables.*.indent"
            },
            "justify": {
              "$ref": "#/$defs/type._editables.*.justify"
            },
            "left": {
              "$ref": "#/$defs/type._editables.*.left"
            },
            "numberedlist": {
              "$ref": "#/$defs/type._editables.*.numberedlist"
            },
            "outdent": {
              "$ref": "#/$defs/type._editables.*.outdent"
            },
            "right": {
              "$ref": "#/$defs/type._editables.*.right"
            },
            "snippet": {
              "$ref": "#/$defs/type._editables.*.snippet"
            },
            "styles": {
              "$ref": "#/$defs/type._editables.*.styles"
            },
            "table": {
              "$ref": "#/$defs/type._editables.*.table"
            },
            "join_above": {
              "$ref": "#/$defs/type._editables.*.join_above"
            },
            "join_below": {
              "$ref": "#/$defs/type._editables.*.join_below"
            },
            "max_length": {
              "$ref": "#/$defs/type._inputs.*.options.max_length"
            },
            "max_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_length_message"
            },
            "min_length": {
              "$ref": "#/$defs/type._inputs.*.options.min_length"
            },
            "min_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_length_message"
            },
            "max_words": {
              "$ref": "#/$defs/type._inputs.*.options.max_words"
            },
            "max_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_words_message"
            },
            "min_words": {
              "$ref": "#/$defs/type._inputs.*.options.min_words"
            },
            "min_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_words_message"
            },
            "max_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes"
            },
            "max_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes_message"
            },
            "min_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes"
            },
            "min_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes_message"
            },
            "locale": {
              "$ref": "#/$defs/type._inputs.*.options.locale"
            },
            "pattern": {
              "$ref": "#/$defs/type._inputs.*.options.pattern"
            },
            "pattern_message": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_message"
            },
            "pattern_flags": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_flags"
            },
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(text)"
                }
              ]
            },
            "allow_resize": {
              "deprecated": true,
              "type": "boolean"
            },
            "prevent_resize": {
              "description": "Hides the resize handler to vertically resize the input.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Hides the resize handler to vertically resize the input."
            },
            "initial_height": {
              "description": "Defines the initial height of this input in pixels (px).",
              "type": "number",
              "markdownDescription": "Defines the initial height of this input in pixels (px)."
            }
          },
          "markdownDescription": "Options that are specific to Rich Text Inputs.",
          "description": "Options that are specific to Rich Text Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for HTML markup content.",
      "title": "Rich Text Input",
      "description": "Provides an editing interface for HTML markup content.",
      "additionalProperties": false
    },
    "type._inputs.*.options.mime_type": {
      "title": "Mime Type",
      "description": "Sets the format images are converted to prior to upload. The extension of the file is updated to match. Defaults to keeping the mime type of the uploaded file.",
      "type": "string",
      "enum": [
        "image/jpeg",
        "image/png",
        "image/webp"
      ],
      "markdownDescription": "Sets the format images are converted to prior to upload. The extension of the file is updated to match. Defaults to keeping the mime type of the uploaded file."
    },
    "type._inputs.*.options.resize_style": {
      "title": "Resize Style",
      "description": "Sets how uploaded image files are resized with a bounding box defined by width and height prior to upload. Has no effect when selecting existing images, or if width and height are unset.",
      "default": "contain",
      "type": "string",
      "enum": [
        "cover",
        "contain",
        "stretch",
        "crop"
      ],
      "markdownDescription": "Sets how uploaded image files are resized with a bounding box defined by width and height prior to upload. Has no effect when selecting existing images, or if width and height are unset."
    },
    "type._inputs.*.options.width": {
      "title": "Width",
      "description": "Defines the width of the bounding box used in the image resizing process defined with resize_style.",
      "type": "number",
      "markdownDescription": "Defines the width of the bounding box used in the image resizing process defined with resize_style."
    },
    "type._inputs.*.options.height": {
      "title": "Height",
      "description": "Defines the height of the bounding box used in the image resizing process defined with resize_style.",
      "type": "number",
      "markdownDescription": "Defines the height of the bounding box used in the image resizing process defined with resize_style."
    },
    "type._inputs.*.options.expandable": {
      "title": "Expandable",
      "description": "Controls whether or not images can be upscaled to fit the bounding box during resize prior to upload. Has no effect if files are not resized.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Controls whether or not images can be upscaled to fit the bounding box during resize prior to upload. Has no effect if files are not resized."
    },
    "type._inputs.*.options.image_size_attributes": {
      "title": "Image Size Attributes",
      "description": "Instructs the editor to save `width` and `height` attributes on the image elements. This can prevent pop-in as a page loads.",
      "default": true,
      "type": "boolean",
      "markdownDescription": "Instructs the editor to save `width` and `height` attributes on the image elements. This can prevent pop-in as a page loads."
    },
    "type._inputs.*.options.allowed_sources": {
      "title": "Allowed Sources",
      "description": "If you have one or more DAMs connected to your site, you can use this key to list which asset sources can be uploaded to and selected from.",
      "type": "array",
      "items": {
        "type": "string"
      },
      "markdownDescription": "If you have one or more DAMs connected to your site, you can use this key to list which asset sources can be uploaded to and selected from."
    },
    "type._inputs.*.options.prevent_resize_existing_files": {
      "title": "Prevent Resize Existing Files",
      "description": "Enable to skip the image resizing process configured for this input when selecting existing images.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enable to skip the image resizing process configured for this input when selecting existing images."
    },
    "type._inputs.*.options.sizes": {
      "title": "Sizes",
      "description": "Definitions for creating additional images of different sizes when uploading or selecting existing files.",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "size": {
            "type": "string",
            "description": "A number suffixed with \"x\" (relative size) or \"w\" (fixed width) for setting the dimensions of the image (e.g. 2x, 3x, 100w, 360w).",
            "markdownDescription": "A number suffixed with \"x\" (relative size) or \"w\" (fixed width) for setting the dimensions of the image (e.g. 2x, 3x, 100w, 360w)."
          },
          "target": {
            "description": "A reference to another input that is given the path to this additional image file.",
            "type": "string",
            "markdownDescription": "A reference to another input that is given the path to this additional image file."
          }
        },
        "required": [
          "size"
        ],
        "additionalProperties": false
      },
      "markdownDescription": "Definitions for creating additional images of different sizes when uploading or selecting existing files."
    },
    "type.paths": {
      "type": "object",
      "properties": {
        "static": {
          "$ref": "#/$defs/paths.static"
        },
        "uploads": {
          "$ref": "#/$defs/paths.uploads"
        },
        "uploads_filename": {
          "$ref": "#/$defs/paths.uploads_filename"
        },
        "dam_uploads": {
          "$ref": "#/$defs/paths.dam_uploads"
        },
        "dam_uploads_filename": {
          "$ref": "#/$defs/paths.dam_uploads_filename"
        },
        "dam_static": {
          "$ref": "#/$defs/paths.dam_static"
        },
        "uploads_use_relative_path": {
          "$ref": "#/$defs/paths.uploads_use_relative_path"
        }
      },
      "title": "Paths",
      "additionalProperties": false
    },
    "type._editables.*.bold": {
      "description": "Enables a control to set selected text to bold.",
      "default": true,
      "type": "boolean",
      "markdownDescription": "Enables a control to set selected text to bold."
    },
    "type._editables.*.copyformatting": {
      "description": "Enables a control to copy formatting from text to other text. Only applies to formatting from `bold`, `italic`, `underline`, `strike`, `subscript`, and `superscript`. Does not copy other styles or formatting.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to copy formatting from text to other text. Only applies to formatting from `bold`, `italic`, `underline`, `strike`, `subscript`, and `superscript`. Does not copy other styles or formatting."
    },
    "type._editables.*.italic": {
      "description": "Enables a control to italicize selected text.",
      "default": true,
      "type": "boolean",
      "markdownDescription": "Enables a control to italicize selected text."
    },
    "type._editables.*.link": {
      "description": "Enables a control to create hyperlinks around selected text.",
      "default": true,
      "type": "boolean",
      "markdownDescription": "Enables a control to create hyperlinks around selected text."
    },
    "type._editables.*.redo": {
      "description": "Enables a control to redo recent edits undone with undo. Redo is always enabled through standard OS-specific keyboard shortcuts.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to redo recent edits undone with undo. Redo is always enabled through standard OS-specific keyboard shortcuts."
    },
    "type._editables.*.removeformat": {
      "description": "Enables the control to remove formatting from text. Applies to formatting from `bold`, `italic`, `underline`, `strike`, `subscript`, and `superscript`. Does not remove other styles or formatting.",
      "default": true,
      "type": "boolean",
      "markdownDescription": "Enables the control to remove formatting from text. Applies to formatting from `bold`, `italic`, `underline`, `strike`, `subscript`, and `superscript`. Does not remove other styles or formatting."
    },
    "type._editables.*.strike": {
      "description": "Enables a control to strike selected text.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to strike selected text."
    },
    "type._editables.*.subscript": {
      "description": "Enables a control to set selected text to subscript.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to set selected text to subscript."
    },
    "type._editables.*.superscript": {
      "description": "Enables a control to set selected text to superscript.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to set selected text to superscript."
    },
    "type._editables.*.underline": {
      "description": "Enables a control to underline selected text.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to underline selected text."
    },
    "type._editables.*.undo": {
      "description": "Enables a control to undo recent edits. Undo is always enabled through standard OS-specific keyboard shortcuts.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to undo recent edits. Undo is always enabled through standard OS-specific keyboard shortcuts."
    },
    "type._editables.*.remove_custom_markup": {
      "description": "Defines if the content should be stripped of \"custom markup\". It is recommended to have this option turned on once you have all of your rich text options configured. Having `allow_custom_markup` turned on disables this option. Defaults to false.",
      "type": "boolean",
      "markdownDescription": "Defines if the content should be stripped of \"custom markup\". It is recommended to have this option turned on once you have all of your rich text options configured. Having `allow_custom_markup` turned on disables this option. Defaults to false."
    },
    "type._editables.*.allow_custom_markup": {
      "description": "Defines if the content can contain \"custom markup\". It is not recommended to have this option turned on. Defaults to true for non-content editable regions, false otherwise.",
      "type": "boolean",
      "markdownDescription": "Defines if the content can contain \"custom markup\". It is not recommended to have this option turned on. Defaults to true for non-content editable regions, false otherwise."
    },
    "type._editables.*.blockquote": {
      "description": "Enables a control to wrap blocks of text in block quotes.",
      "default": true,
      "type": "boolean",
      "markdownDescription": "Enables a control to wrap blocks of text in block quotes."
    },
    "type._editables.*.bulletedlist": {
      "description": "Enables a control to insert an unordered list, or to convert selected blocks of text into a unordered list.",
      "default": true,
      "type": "boolean",
      "markdownDescription": "Enables a control to insert an unordered list, or to convert selected blocks of text into a unordered list."
    },
    "type._editables.*.center": {
      "description": "Enables a control to center align text by toggling a class name for a block of text. The value is the class name the editor should add to align the text. The styles for this class need to be listed in the `styles` file to take effect outside of the input.",
      "type": "string",
      "markdownDescription": "Enables a control to center align text by toggling a class name for a block of text. The value is the class name the editor should add to align the text. The styles for this class need to be listed in the `styles` file to take effect outside of the input."
    },
    "type._editables.*.code_inline": {
      "description": "Enables a control to create an inline code element, containing any selected text.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to create an inline code element, containing any selected text."
    },
    "type._editables.*.code_block": {
      "description": "Enables a control to insert a code block.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to insert a code block."
    },
    "type._editables.*.code": {
      "description": "Enables both block and inline code controls: `code_block` and `code_inline`.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables both block and inline code controls: `code_block` and `code_inline`."
    },
    "type._editables.*.embed": {
      "description": "Enables a control to insert a region of raw HTML, including YouTube, Vimeo, Tweets, and other media. Embedded content is sanitized to mitigate XSS risks, which includes removing style tags. Embeds containing script tags are not loaded in the editor.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to insert a region of raw HTML, including YouTube, Vimeo, Tweets, and other media. Embedded content is sanitized to mitigate XSS risks, which includes removing style tags. Embeds containing script tags are not loaded in the editor."
    },
    "type._editables.*.format": {
      "description": "Enables a drop down menu for structured text. Has options for \"p\", \"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\". Set as space separated options (e.g. \"p h1 h2\").",
      "default": "p h1 h2 h3 h4 h5 h6",
      "type": "string",
      "markdownDescription": "Enables a drop down menu for structured text. Has options for \"p\", \"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\". Set as space separated options (e.g. \"p h1 h2\")."
    },
    "type._editables.*.horizontalrule": {
      "description": "Enables a control to insert a horizontal rule.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to insert a horizontal rule."
    },
    "type._editables.*.image": {
      "description": "Enables a control to insert an image. The image can be uploaded, existing or an external link.",
      "default": true,
      "type": "boolean",
      "markdownDescription": "Enables a control to insert an image. The image can be uploaded, existing or an external link."
    },
    "type._editables.*.indent": {
      "description": "Enables a control to increase indentation for numbered and unordered lists.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to increase indentation for numbered and unordered lists."
    },
    "type._editables.*.justify": {
      "description": "Enables a control to justify text by toggling a class name for a block of text. The value is the class name the editor should add to justify the text. The styles for this class need to be listed in the `styles` file to take effect outside of the input.",
      "type": "string",
      "markdownDescription": "Enables a control to justify text by toggling a class name for a block of text. The value is the class name the editor should add to justify the text. The styles for this class need to be listed in the `styles` file to take effect outside of the input."
    },
    "type._editables.*.left": {
      "description": "Enables a control to left align text by toggling a class name for a block of text. The value is the class name the editor should add to align the text. The styles for this class need to be listed in the `styles` file to take effect outside of the input.",
      "type": "string",
      "markdownDescription": "Enables a control to left align text by toggling a class name for a block of text. The value is the class name the editor should add to align the text. The styles for this class need to be listed in the `styles` file to take effect outside of the input."
    },
    "type._editables.*.numberedlist": {
      "description": "Enables a control to insert a numbered list, or to convert selected blocks of text into a numbered list.",
      "default": true,
      "type": "boolean",
      "markdownDescription": "Enables a control to insert a numbered list, or to convert selected blocks of text into a numbered list."
    },
    "type._editables.*.outdent": {
      "description": "Enables a control to reduce indentation for numbered and unordered lists.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to reduce indentation for numbered and unordered lists."
    },
    "type._editables.*.right": {
      "description": "Enables a control to right align text by toggling a class name for a block of text. The value is the class name the editor should add to align the text. The styles for this class need to be listed in the `styles` file to take effect outside of the input.",
      "type": "string",
      "markdownDescription": "Enables a control to right align text by toggling a class name for a block of text. The value is the class name the editor should add to align the text. The styles for this class need to be listed in the `styles` file to take effect outside of the input."
    },
    "type._editables.*.snippet": {
      "description": "Enables a control to insert snippets, if any are available.",
      "default": true,
      "type": "boolean",
      "markdownDescription": "Enables a control to insert snippets, if any are available."
    },
    "type._editables.*.styles": {
      "description": "Enables a drop down menu for editors to style selected text or blocks or text. Styles are the combination of an element and class name. The value for this option is the path (either source or build output) to the CSS file containing the styles.",
      "type": "string",
      "markdownDescription": "Enables a drop down menu for editors to style selected text or blocks or text. Styles are the combination of an element and class name. The value for this option is the path (either source or build output) to the CSS file containing the styles."
    },
    "type._editables.*.table": {
      "description": "Enables a control to insert a table. Further options for table cells are available in the context menu for cells within the editor.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to insert a table. Further options for table cells are available in the context menu for cells within the editor."
    },
    "type._editables.*.join_above": {
      "description": "Enables a control to join the selected block with the block above it.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to join the selected block with the block above it."
    },
    "type._editables.*.join_below": {
      "description": "Enables a control to join the selected block with the block below it.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Enables a control to join the selected block with the block below it."
    },
    "DateInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "enum": [
            "date",
            "datetime"
          ],
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(text)"
                }
              ]
            },
            "timezone": {
              "description": "Specifies the time zone that dates are displayed and edited in. Also changes the suffix the date is persisted to the file with. Defaults to the global `timezone`.",
              "allOf": [
                {
                  "$ref": "#/$defs/type.timezone"
                }
              ],
              "markdownDescription": "Specifies the time zone that dates are displayed and edited in. Also changes the suffix the date is persisted to the file with. Defaults to the global `timezone`."
            },
            "start_from": {
              "description": "This key defines the earliest date and time, inclusive, that CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from selecting an earlier date and time. If the Input already contains an earlier date and time, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes. Value must be in ISO8601 format. If `options.end_before` is also configured, this key cannot be a later date and time.",
              "anyOf": [
                {
                  "type": "string",
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z||([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                  "title": "ISO8601 String"
                },
                {
                  "title": "Date"
                }
              ],
              "markdownDescription": "This key defines the earliest date and time, inclusive, that CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from selecting an earlier date and time. If the Input already contains an earlier date and time, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes. Value must be in ISO8601 format. If `options.end_before` is also configured, this key cannot be a later date and time."
            },
            "start_from_message": {
              "description": "This key defines the message that explains why an Input needs to have a start date. This key requires you to define `options.start_from`.",
              "type": "string",
              "markdownDescription": "This key defines the message that explains why an Input needs to have a start date. This key requires you to define `options.start_from`."
            },
            "end_before": {
              "description": "This key defines the date and time, exclusive, that CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from selecting a later date and time. If the Input already contains a later date and time, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes. Value must be in ISO8601 format. If options.start_from is also configured, this key cannot be an earlier date and time. This key has no default.",
              "anyOf": [
                {
                  "type": "string",
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z||([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                  "title": "ISO8601 String"
                },
                {
                  "title": "Date"
                }
              ],
              "markdownDescription": "This key defines the date and time, exclusive, that CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from selecting a later date and time. If the Input already contains a later date and time, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes. Value must be in ISO8601 format. If options.start_from is also configured, this key cannot be an earlier date and time. This key has no default."
            },
            "end_before_message": {
              "description": "This key defines the message that explains why an Input needs to have an end date. This key requires you to define `options.end_before`. This key has no default.",
              "type": "string",
              "markdownDescription": "This key defines the message that explains why an Input needs to have an end date. This key requires you to define `options.end_before`. This key has no default."
            }
          },
          "markdownDescription": "Options that are specific to Date Inputs.",
          "description": "Options that are specific to Date Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for date and/or time values.",
      "title": "Date Input",
      "description": "Provides an editing interface for date and/or time values.",
      "additionalProperties": false
    },
    "type.timezone": {
      "type": "string",
      "enum": [
        "Africa/Abidjan",
        "Africa/Accra",
        "Africa/Addis_Ababa",
        "Africa/Algiers",
        "Africa/Asmara",
        "Africa/Asmera",
        "Africa/Bamako",
        "Africa/Bangui",
        "Africa/Banjul",
        "Africa/Bissau",
        "Africa/Blantyre",
        "Africa/Brazzaville",
        "Africa/Bujumbura",
        "Africa/Cairo",
        "Africa/Casablanca",
        "Africa/Ceuta",
        "Africa/Conakry",
        "Africa/Dakar",
        "Africa/Dar_es_Salaam",
        "Africa/Djibouti",
        "Africa/Douala",
        "Africa/El_Aaiun",
        "Africa/Freetown",
        "Africa/Gaborone",
        "Africa/Harare",
        "Africa/Johannesburg",
        "Africa/Juba",
        "Africa/Kampala",
        "Africa/Khartoum",
        "Africa/Kigali",
        "Africa/Kinshasa",
        "Africa/Lagos",
        "Africa/Libreville",
        "Africa/Lome",
        "Africa/Luanda",
        "Africa/Lubumbashi",
        "Africa/Lusaka",
        "Africa/Malabo",
        "Africa/Maputo",
        "Africa/Maseru",
        "Africa/Mbabane",
        "Africa/Mogadishu",
        "Africa/Monrovia",
        "Africa/Nairobi",
        "Africa/Ndjamena",
        "Africa/Niamey",
        "Africa/Nouakchott",
        "Africa/Ouagadougou",
        "Africa/Porto-Novo",
        "Africa/Sao_Tome",
        "Africa/Timbuktu",
        "Africa/Tripoli",
        "Africa/Tunis",
        "Africa/Windhoek",
        "America/Adak",
        "America/Anchorage",
        "America/Anguilla",
        "America/Antigua",
        "America/Araguaina",
        "America/Argentina/Buenos_Aires",
        "America/Argentina/Catamarca",
        "America/Argentina/ComodRivadavia",
        "America/Argentina/Cordoba",
        "America/Argentina/Jujuy",
        "America/Argentina/La_Rioja",
        "America/Argentina/Mendoza",
        "America/Argentina/Rio_Gallegos",
        "America/Argentina/Salta",
        "America/Argentina/San_Juan",
        "America/Argentina/San_Luis",
        "America/Argentina/Tucuman",
        "America/Argentina/Ushuaia",
        "America/Aruba",
        "America/Asuncion",
        "America/Atikokan",
        "America/Atka",
        "America/Bahia",
        "America/Bahia_Banderas",
        "America/Barbados",
        "America/Belem",
        "America/Belize",
        "America/Blanc-Sablon",
        "America/Boa_Vista",
        "America/Bogota",
        "America/Boise",
        "America/Buenos_Aires",
        "America/Cambridge_Bay",
        "America/Campo_Grande",
        "America/Cancun",
        "America/Caracas",
        "America/Catamarca",
        "America/Cayenne",
        "America/Cayman",
        "America/Chicago",
        "America/Chihuahua",
        "America/Coral_Harbour",
        "America/Cordoba",
        "America/Costa_Rica",
        "America/Creston",
        "America/Cuiaba",
        "America/Curacao",
        "America/Danmarkshavn",
        "America/Dawson",
        "America/Dawson_Creek",
        "America/Denver",
        "America/Detroit",
        "America/Dominica",
        "America/Edmonton",
        "America/Eirunepe",
        "America/El_Salvador",
        "America/Ensenada",
        "America/Fort_Nelson",
        "America/Fort_Wayne",
        "America/Fortaleza",
        "America/Glace_Bay",
        "America/Godthab",
        "America/Goose_Bay",
        "America/Grand_Turk",
        "America/Grenada",
        "America/Guadeloupe",
        "America/Guatemala",
        "America/Guayaquil",
        "America/Guyana",
        "America/Halifax",
        "America/Havana",
        "America/Hermosillo",
        "America/Indiana/Indianapolis",
        "America/Indiana/Knox",
        "America/Indiana/Marengo",
        "America/Indiana/Petersburg",
        "America/Indiana/Tell_City",
        "America/Indiana/Vevay",
        "America/Indiana/Vincennes",
        "America/Indiana/Winamac",
        "America/Indianapolis",
        "America/Inuvik",
        "America/Iqaluit",
        "America/Jamaica",
        "America/Jujuy",
        "America/Juneau",
        "America/Kentucky/Louisville",
        "America/Kentucky/Monticello",
        "America/Knox_IN",
        "America/Kralendijk",
        "America/La_Paz",
        "America/Lima",
        "America/Los_Angeles",
        "America/Louisville",
        "America/Lower_Princes",
        "America/Maceio",
        "America/Managua",
        "America/Manaus",
        "America/Marigot",
        "America/Martinique",
        "America/Matamoros",
        "America/Mazatlan",
        "America/Mendoza",
        "America/Menominee",
        "America/Merida",
        "America/Metlakatla",
        "America/Mexico_City",
        "America/Miquelon",
        "America/Moncton",
        "America/Monterrey",
        "America/Montevideo",
        "America/Montreal",
        "America/Montserrat",
        "America/Nassau",
        "America/New_York",
        "America/Nipigon",
        "America/Nome",
        "America/Noronha",
        "America/North_Dakota/Beulah",
        "America/North_Dakota/Center",
        "America/North_Dakota/New_Salem",
        "America/Nuuk",
        "America/Ojinaga",
        "America/Panama",
        "America/Pangnirtung",
        "America/Paramaribo",
        "America/Phoenix",
        "America/Port_of_Spain",
        "America/Port-au-Prince",
        "America/Porto_Acre",
        "America/Porto_Velho",
        "America/Puerto_Rico",
        "America/Punta_Arenas",
        "America/Rainy_River",
        "America/Rankin_Inlet",
        "America/Recife",
        "America/Regina",
        "America/Resolute",
        "America/Rio_Branco",
        "America/Rosario",
        "America/Santa_Isabel",
        "America/Santarem",
        "America/Santiago",
        "America/Santo_Domingo",
        "America/Sao_Paulo",
        "America/Scoresbysund",
        "America/Shiprock",
        "America/Sitka",
        "America/St_Barthelemy",
        "America/St_Johns",
        "America/St_Kitts",
        "America/St_Lucia",
        "America/St_Thomas",
        "America/St_Vincent",
        "America/Swift_Current",
        "America/Tegucigalpa",
        "America/Thule",
        "America/Thunder_Bay",
        "America/Tijuana",
        "America/Toronto",
        "America/Tortola",
        "America/Vancouver",
        "America/Virgin",
        "America/Whitehorse",
        "America/Winnipeg",
        "America/Yakutat",
        "America/Yellowknife",
        "Antarctica/Casey",
        "Antarctica/Davis",
        "Antarctica/DumontDUrville",
        "Antarctica/Macquarie",
        "Antarctica/Mawson",
        "Antarctica/McMurdo",
        "Antarctica/Palmer",
        "Antarctica/Rothera",
        "Antarctica/South_Pole",
        "Antarctica/Syowa",
        "Antarctica/Troll",
        "Antarctica/Vostok",
        "Arctic/Longyearbyen",
        "Asia/Aden",
        "Asia/Almaty",
        "Asia/Amman",
        "Asia/Anadyr",
        "Asia/Aqtau",
        "Asia/Aqtobe",
        "Asia/Ashgabat",
        "Asia/Ashkhabad",
        "Asia/Atyrau",
        "Asia/Baghdad",
        "Asia/Bahrain",
        "Asia/Baku",
        "Asia/Bangkok",
        "Asia/Barnaul",
        "Asia/Beirut",
        "Asia/Bishkek",
        "Asia/Brunei",
        "Asia/Calcutta",
        "Asia/Chita",
        "Asia/Choibalsan",
        "Asia/Chongqing",
        "Asia/Chungking",
        "Asia/Colombo",
        "Asia/Dacca",
        "Asia/Damascus",
        "Asia/Dhaka",
        "Asia/Dili",
        "Asia/Dubai",
        "Asia/Dushanbe",
        "Asia/Famagusta",
        "Asia/Gaza",
        "Asia/Harbin",
        "Asia/Hebron",
        "Asia/Ho_Chi_Minh",
        "Asia/Hong_Kong",
        "Asia/Hovd",
        "Asia/Irkutsk",
        "Asia/Istanbul",
        "Asia/Jakarta",
        "Asia/Jayapura",
        "Asia/Jerusalem",
        "Asia/Kabul",
        "Asia/Kamchatka",
        "Asia/Karachi",
        "Asia/Kashgar",
        "Asia/Kathmandu",
        "Asia/Katmandu",
        "Asia/Khandyga",
        "Asia/Kolkata",
        "Asia/Krasnoyarsk",
        "Asia/Kuala_Lumpur",
        "Asia/Kuching",
        "Asia/Kuwait",
        "Asia/Macao",
        "Asia/Macau",
        "Asia/Magadan",
        "Asia/Makassar",
        "Asia/Manila",
        "Asia/Muscat",
        "Asia/Nicosia",
        "Asia/Novokuznetsk",
        "Asia/Novosibirsk",
        "Asia/Omsk",
        "Asia/Oral",
        "Asia/Phnom_Penh",
        "Asia/Pontianak",
        "Asia/Pyongyang",
        "Asia/Qatar",
        "Asia/Qostanay",
        "Asia/Qyzylorda",
        "Asia/Rangoon",
        "Asia/Riyadh",
        "Asia/Saigon",
        "Asia/Sakhalin",
        "Asia/Samarkand",
        "Asia/Seoul",
        "Asia/Shanghai",
        "Asia/Singapore",
        "Asia/Srednekolymsk",
        "Asia/Taipei",
        "Asia/Tashkent",
        "Asia/Tbilisi",
        "Asia/Tehran",
        "Asia/Tel_Aviv",
        "Asia/Thimbu",
        "Asia/Thimphu",
        "Asia/Tokyo",
        "Asia/Tomsk",
        "Asia/Ujung_Pandang",
        "Asia/Ulaanbaatar",
        "Asia/Ulan_Bator",
        "Asia/Urumqi",
        "Asia/Ust-Nera",
        "Asia/Vientiane",
        "Asia/Vladivostok",
        "Asia/Yakutsk",
        "Asia/Yangon",
        "Asia/Yekaterinburg",
        "Asia/Yerevan",
        "Atlantic/Azores",
        "Atlantic/Bermuda",
        "Atlantic/Canary",
        "Atlantic/Cape_Verde",
        "Atlantic/Faeroe",
        "Atlantic/Faroe",
        "Atlantic/Jan_Mayen",
        "Atlantic/Madeira",
        "Atlantic/Reykjavik",
        "Atlantic/South_Georgia",
        "Atlantic/St_Helena",
        "Atlantic/Stanley",
        "Australia/ACT",
        "Australia/Adelaide",
        "Australia/Brisbane",
        "Australia/Broken_Hill",
        "Australia/Canberra",
        "Australia/Currie",
        "Australia/Darwin",
        "Australia/Eucla",
        "Australia/Hobart",
        "Australia/LHI",
        "Australia/Lindeman",
        "Australia/Lord_Howe",
        "Australia/Melbourne",
        "Australia/North",
        "Australia/NSW",
        "Australia/Perth",
        "Australia/Queensland",
        "Australia/South",
        "Australia/Sydney",
        "Australia/Tasmania",
        "Australia/Victoria",
        "Australia/West",
        "Australia/Yancowinna",
        "Brazil/Acre",
        "Brazil/DeNoronha",
        "Brazil/East",
        "Brazil/West",
        "Canada/Atlantic",
        "Canada/Central",
        "Canada/Eastern",
        "Canada/Mountain",
        "Canada/Newfoundland",
        "Canada/Pacific",
        "Canada/Saskatchewan",
        "Canada/Yukon",
        "CET",
        "Chile/Continental",
        "Chile/EasterIsland",
        "CST6CDT",
        "Cuba",
        "EET",
        "Egypt",
        "Eire",
        "EST",
        "EST5EDT",
        "Etc/GMT",
        "Etc/GMT-0",
        "Etc/GMT-1",
        "Etc/GMT-10",
        "Etc/GMT-11",
        "Etc/GMT-12",
        "Etc/GMT-13",
        "Etc/GMT-14",
        "Etc/GMT-2",
        "Etc/GMT-3",
        "Etc/GMT-4",
        "Etc/GMT-5",
        "Etc/GMT-6",
        "Etc/GMT-7",
        "Etc/GMT-8",
        "Etc/GMT-9",
        "Etc/GMT+0",
        "Etc/GMT+1",
        "Etc/GMT+10",
        "Etc/GMT+11",
        "Etc/GMT+12",
        "Etc/GMT+2",
        "Etc/GMT+3",
        "Etc/GMT+4",
        "Etc/GMT+5",
        "Etc/GMT+6",
        "Etc/GMT+7",
        "Etc/GMT+8",
        "Etc/GMT+9",
        "Etc/GMT0",
        "Etc/Greenwich",
        "Etc/UCT",
        "Etc/Universal",
        "Etc/UTC",
        "Etc/Zulu",
        "Europe/Amsterdam",
        "Europe/Andorra",
        "Europe/Astrakhan",
        "Europe/Athens",
        "Europe/Belfast",
        "Europe/Belgrade",
        "Europe/Berlin",
        "Europe/Bratislava",
        "Europe/Brussels",
        "Europe/Bucharest",
        "Europe/Budapest",
        "Europe/Busingen",
        "Europe/Chisinau",
        "Europe/Copenhagen",
        "Europe/Dublin",
        "Europe/Gibraltar",
        "Europe/Guernsey",
        "Europe/Helsinki",
        "Europe/Isle_of_Man",
        "Europe/Istanbul",
        "Europe/Jersey",
        "Europe/Kaliningrad",
        "Europe/Kiev",
        "Europe/Kirov",
        "Europe/Kyiv",
        "Europe/Lisbon",
        "Europe/Ljubljana",
        "Europe/London",
        "Europe/Luxembourg",
        "Europe/Madrid",
        "Europe/Malta",
        "Europe/Mariehamn",
        "Europe/Minsk",
        "Europe/Monaco",
        "Europe/Moscow",
        "Europe/Nicosia",
        "Europe/Oslo",
        "Europe/Paris",
        "Europe/Podgorica",
        "Europe/Prague",
        "Europe/Riga",
        "Europe/Rome",
        "Europe/Samara",
        "Europe/San_Marino",
        "Europe/Sarajevo",
        "Europe/Saratov",
        "Europe/Simferopol",
        "Europe/Skopje",
        "Europe/Sofia",
        "Europe/Stockholm",
        "Europe/Tallinn",
        "Europe/Tirane",
        "Europe/Tiraspol",
        "Europe/Ulyanovsk",
        "Europe/Uzhgorod",
        "Europe/Vaduz",
        "Europe/Vatican",
        "Europe/Vienna",
        "Europe/Vilnius",
        "Europe/Volgograd",
        "Europe/Warsaw",
        "Europe/Zagreb",
        "Europe/Zaporozhye",
        "Europe/Zurich",
        "GB",
        "GB-Eire",
        "GMT",
        "GMT-0",
        "GMT+0",
        "GMT0",
        "Greenwich",
        "Hongkong",
        "HST",
        "Iceland",
        "Indian/Antananarivo",
        "Indian/Chagos",
        "Indian/Christmas",
        "Indian/Cocos",
        "Indian/Comoro",
        "Indian/Kerguelen",
        "Indian/Mahe",
        "Indian/Maldives",
        "Indian/Mauritius",
        "Indian/Mayotte",
        "Indian/Reunion",
        "Iran",
        "Israel",
        "Jamaica",
        "Japan",
        "Kwajalein",
        "Libya",
        "MET",
        "Mexico/BajaNorte",
        "Mexico/BajaSur",
        "Mexico/General",
        "MST",
        "MST7MDT",
        "Navajo",
        "NZ",
        "NZ-CHAT",
        "Pacific/Apia",
        "Pacific/Auckland",
        "Pacific/Bougainville",
        "Pacific/Chatham",
        "Pacific/Chuuk",
        "Pacific/Easter",
        "Pacific/Efate",
        "Pacific/Enderbury",
        "Pacific/Fakaofo",
        "Pacific/Fiji",
        "Pacific/Funafuti",
        "Pacific/Galapagos",
        "Pacific/Gambier",
        "Pacific/Guadalcanal",
        "Pacific/Guam",
        "Pacific/Honolulu",
        "Pacific/Johnston",
        "Pacific/Kanton",
        "Pacific/Kiritimati",
        "Pacific/Kosrae",
        "Pacific/Kwajalein",
        "Pacific/Majuro",
        "Pacific/Marquesas",
        "Pacific/Midway",
        "Pacific/Nauru",
        "Pacific/Niue",
        "Pacific/Norfolk",
        "Pacific/Noumea",
        "Pacific/Pago_Pago",
        "Pacific/Palau",
        "Pacific/Pitcairn",
        "Pacific/Pohnpei",
        "Pacific/Ponape",
        "Pacific/Port_Moresby",
        "Pacific/Rarotonga",
        "Pacific/Saipan",
        "Pacific/Samoa",
        "Pacific/Tahiti",
        "Pacific/Tarawa",
        "Pacific/Tongatapu",
        "Pacific/Truk",
        "Pacific/Wake",
        "Pacific/Wallis",
        "Pacific/Yap",
        "Poland",
        "Portugal",
        "PRC",
        "PST8PDT",
        "ROC",
        "ROK",
        "Singapore",
        "Turkey",
        "UCT",
        "Universal",
        "US/Alaska",
        "US/Aleutian",
        "US/Arizona",
        "US/Central",
        "US/East-Indiana",
        "US/Eastern",
        "US/Hawaii",
        "US/Indiana-Starke",
        "US/Michigan",
        "US/Mountain",
        "US/Pacific",
        "US/Samoa",
        "UTC",
        "W-SU",
        "WET",
        "Zulu"
      ],
      "title": "Timezone"
    },
    "TimeInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "time",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(text)"
                }
              ]
            }
          },
          "markdownDescription": "Options that are specific to Time Inputs.",
          "description": "Options that are specific to Time Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for time values only.",
      "title": "Time Input",
      "description": "Provides an editing interface for time values only.",
      "additionalProperties": false
    },
    "FileInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "enum": [
            "file",
            "document",
            "image"
          ],
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "mime_type": {
              "$ref": "#/$defs/type._inputs.*.options.mime_type"
            },
            "resize_style": {
              "$ref": "#/$defs/type._inputs.*.options.resize_style"
            },
            "width": {
              "$ref": "#/$defs/type._inputs.*.options.width"
            },
            "height": {
              "$ref": "#/$defs/type._inputs.*.options.height"
            },
            "expandable": {
              "$ref": "#/$defs/type._inputs.*.options.expandable"
            },
            "image_size_attributes": {
              "$ref": "#/$defs/type._inputs.*.options.image_size_attributes"
            },
            "allowed_sources": {
              "$ref": "#/$defs/type._inputs.*.options.allowed_sources"
            },
            "prevent_resize_existing_files": {
              "$ref": "#/$defs/type._inputs.*.options.prevent_resize_existing_files"
            },
            "sizes": {
              "$ref": "#/$defs/type._inputs.*.options.sizes"
            },
            "max_length": {
              "$ref": "#/$defs/type._inputs.*.options.max_length"
            },
            "max_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_length_message"
            },
            "min_length": {
              "$ref": "#/$defs/type._inputs.*.options.min_length"
            },
            "min_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_length_message"
            },
            "max_words": {
              "$ref": "#/$defs/type._inputs.*.options.max_words"
            },
            "max_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_words_message"
            },
            "min_words": {
              "$ref": "#/$defs/type._inputs.*.options.min_words"
            },
            "min_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_words_message"
            },
            "max_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes"
            },
            "max_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes_message"
            },
            "min_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes"
            },
            "min_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes_message"
            },
            "locale": {
              "$ref": "#/$defs/type._inputs.*.options.locale"
            },
            "pattern": {
              "$ref": "#/$defs/type._inputs.*.options.pattern"
            },
            "pattern_message": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_message"
            },
            "pattern_flags": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_flags"
            },
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(text)"
                }
              ]
            },
            "paths": {
              "allOf": [
                {
                  "$ref": "#/$defs/type.paths"
                }
              ]
            },
            "accepts_mime_types": {
              "$ref": "#/$defs/type._inputs.*.options.accepts_mime_types"
            },
            "max_file_size": {
              "$ref": "#/$defs/type._inputs.*.options.max_file_size"
            },
            "max_file_size_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_file_size_message"
            },
            "disable_upload_file": {
              "$ref": "#/$defs/type._inputs.*.options.disable_upload_file"
            },
            "disable_direct_input": {
              "$ref": "#/$defs/type._inputs.*.options.disable_direct_input"
            },
            "disable_upload_file_in_file_browser": {
              "$ref": "#/$defs/type._inputs.*.options.disable_upload_file_in_file_browser"
            }
          },
          "markdownDescription": "Options that are specific to File Inputs.",
          "description": "Options that are specific to File Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for uploading files to your repository or DAM and browsing existing assets.",
      "title": "File Input",
      "description": "Provides an editing interface for uploading files to your repository or DAM and browsing existing assets.",
      "additionalProperties": false
    },
    "type._inputs.*.options.accepts_mime_types": {
      "description": "Restricts which file types are available to select or upload to this input. Accepted format is an array or comma-separated string of MIME types. The special value \"*\" means any type is accepted.",
      "anyOf": [
        {
          "type": "string",
          "title": "Comma Separated"
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/$defs/MimeType"
          },
          "title": "Array"
        }
      ],
      "markdownDescription": "Restricts which file types are available to select or upload to this input. Accepted format is an array or comma-separated string of MIME types. The special value \"*\" means any type is accepted."
    },
    "MimeType": {
      "type": "string",
      "enum": [
        "x-world/x-3dmf",
        "application/x-authorware-bin",
        "application/x-authorware-map",
        "application/x-authorware-seg",
        "text/vnd.abc",
        "video/animaflex",
        "application/postscript",
        "audio/aiff",
        "audio/x-aiff",
        "application/x-aim",
        "text/x-audiosoft-intra",
        "application/x-navi-animation",
        "application/x-nokia-9000-communicator-add-on-software",
        "application/mime",
        "application/arj",
        "image/x-jg",
        "video/x-ms-asf",
        "text/x-asm",
        "text/asp",
        "application/x-mplayer2",
        "video/x-ms-asf-plugin",
        "audio/basic",
        "audio/x-au",
        "application/x-troff-msvideo",
        "video/avi",
        "video/msvideo",
        "video/x-msvideo",
        "video/avs-video",
        "application/x-bcpio",
        "application/mac-binary",
        "application/macbinary",
        "application/x-binary",
        "application/x-macbinary",
        "image/bmp",
        "image/x-windows-bmp",
        "application/book",
        "application/x-bsh",
        "application/x-bzip",
        "application/x-bzip2",
        "text/plain",
        "text/x-c",
        "application/vnd.ms-pki.seccat",
        "application/clariscad",
        "application/x-cocoa",
        "application/cdf",
        "application/x-cdf",
        "application/x-netcdf",
        "application/pkix-cert",
        "application/x-x509-ca-cert",
        "application/x-chat",
        "application/java",
        "application/java-byte-code",
        "application/x-java-class",
        "application/x-cpio",
        "application/mac-compactpro",
        "application/x-compactpro",
        "application/x-cpt",
        "application/pkcs-crl",
        "application/pkix-crl",
        "application/x-x509-user-cert",
        "application/x-csh",
        "text/x-script.csh",
        "application/x-pointplus",
        "text/css",
        "text/csv",
        "application/x-director",
        "application/x-deepv",
        "video/x-dv",
        "video/dl",
        "video/x-dl",
        "application/msword",
        "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
        "application/commonground",
        "application/drafting",
        "application/x-dvi",
        "drawing/x-dwf (old)",
        "model/vnd.dwf",
        "application/acad",
        "image/vnd.dwg",
        "image/x-dwg",
        "application/dxf",
        "text/x-script.elisp",
        "application/x-bytecode.elisp (compiled elisp)",
        "application/x-elc",
        "application/x-envoy",
        "application/x-esrehber",
        "text/x-setext",
        "application/envoy",
        "text/x-fortran",
        "application/vnd.fdf",
        "application/fractals",
        "image/fif",
        "video/fli",
        "video/x-fli",
        "image/florian",
        "text/vnd.fmi.flexstor",
        "video/x-atomic3d-feature",
        "image/vnd.fpx",
        "image/vnd.net-fpx",
        "application/freeloader",
        "audio/make",
        "image/g3fax",
        "image/gif",
        "video/gl",
        "video/x-gl",
        "audio/x-gsm",
        "application/x-gsp",
        "application/x-gss",
        "application/x-gtar",
        "application/x-compressed",
        "application/x-gzip",
        "multipart/x-gzip",
        "text/x-h",
        "application/x-hdf",
        "application/x-helpfile",
        "application/vnd.hp-hpgl",
        "text/x-script",
        "application/hlp",
        "application/x-winhelp",
        "application/binhex",
        "application/binhex4",
        "application/mac-binhex",
        "application/mac-binhex40",
        "application/x-binhex40",
        "application/x-mac-binhex40",
        "application/hta",
        "text/x-component",
        "text/html",
        "text/webviewhtml",
        "x-conference/x-cooltalk",
        "image/x-icon",
        "image/ief",
        "application/iges",
        "model/iges",
        "application/x-ima",
        "application/x-httpd-imap",
        "application/inf",
        "application/x-internett-signup",
        "application/x-ip2",
        "video/x-isvideo",
        "audio/it",
        "application/x-inventor",
        "i-world/i-vrml",
        "application/x-livescreen",
        "audio/x-jam",
        "text/x-java-source",
        "application/x-java-commerce",
        "image/jpeg",
        "image/pjpeg",
        "image/x-jps",
        "application/x-javascript",
        "application/javascript",
        "application/ecmascript",
        "text/javascript",
        "text/ecmascript",
        "application/json",
        "image/jutvision",
        "music/x-karaoke",
        "application/x-ksh",
        "text/x-script.ksh",
        "audio/nspaudio",
        "audio/x-nspaudio",
        "audio/x-liveaudio",
        "application/x-latex",
        "application/lha",
        "application/x-lha",
        "application/x-lisp",
        "text/x-script.lisp",
        "text/x-la-asf",
        "application/x-lzh",
        "application/lzx",
        "application/x-lzx",
        "text/x-m",
        "audio/mpeg",
        "audio/x-mpequrl",
        "audio/m4a",
        "audio/x-m4a",
        "application/x-troff-man",
        "application/x-navimap",
        "application/mbedlet",
        "application/x-magic-cap-package-1.0",
        "application/mcad",
        "application/x-mathcad",
        "image/vasa",
        "text/mcf",
        "application/netmc",
        "text/markdown",
        "application/x-troff-me",
        "message/rfc822",
        "application/x-midi",
        "audio/midi",
        "audio/x-mid",
        "audio/x-midi",
        "music/crescendo",
        "x-music/x-midi",
        "application/x-frame",
        "application/x-mif",
        "www/mime",
        "audio/x-vnd.audioexplosion.mjuicemediafile",
        "video/x-motion-jpeg",
        "application/base64",
        "application/x-meme",
        "audio/mod",
        "audio/x-mod",
        "video/quicktime",
        "video/x-sgi-movie",
        "audio/x-mpeg",
        "video/x-mpeg",
        "video/x-mpeq2a",
        "audio/mpeg3",
        "audio/x-mpeg-3",
        "video/mp4",
        "application/x-project",
        "video/mpeg",
        "application/vnd.ms-project",
        "application/marc",
        "application/x-troff-ms",
        "application/x-vnd.audioexplosion.mzz",
        "image/naplps",
        "application/vnd.nokia.configuration-message",
        "image/x-niff",
        "application/x-mix-transfer",
        "application/x-conference",
        "application/x-navidoc",
        "application/octet-stream",
        "application/oda",
        "audio/ogg",
        "application/ogg",
        "video/ogg",
        "application/x-omc",
        "application/x-omcdatamaker",
        "application/x-omcregerator",
        "text/x-pascal",
        "application/pkcs10",
        "application/x-pkcs10",
        "application/pkcs-12",
        "application/x-pkcs12",
        "application/x-pkcs7-signature",
        "application/pkcs7-mime",
        "application/x-pkcs7-mime",
        "application/x-pkcs7-certreqresp",
        "application/pkcs7-signature",
        "application/pro_eng",
        "text/pascal",
        "image/x-portable-bitmap",
        "application/vnd.hp-pcl",
        "application/x-pcl",
        "image/x-pict",
        "image/x-pcx",
        "chemical/x-pdb",
        "application/pdf",
        "audio/make.my.funk",
        "image/x-portable-graymap",
        "image/x-portable-greymap",
        "image/pict",
        "application/x-newton-compatible-pkg",
        "application/vnd.ms-pki.pko",
        "text/x-script.perl",
        "application/x-pixclscript",
        "image/x-xpixmap",
        "text/x-script.perl-module",
        "application/x-pagemaker",
        "image/png",
        "application/x-portable-anymap",
        "image/x-portable-anymap",
        "model/x-pov",
        "image/x-portable-pixmap",
        "application/mspowerpoint",
        "application/powerpoint",
        "application/vnd.ms-powerpoint",
        "application/x-mspowerpoint",
        "application/vnd.openxmlformats-officedocument.presentationml.presentation",
        "application/x-freelance",
        "paleovu/x-pv",
        "text/x-script.phyton",
        "application/x-bytecode.python",
        "audio/vnd.qcelp",
        "image/x-quicktime",
        "video/x-qtc",
        "audio/x-pn-realaudio",
        "audio/x-pn-realaudio-plugin",
        "audio/x-realaudio",
        "application/x-cmu-raster",
        "image/cmu-raster",
        "image/x-cmu-raster",
        "text/x-script.rexx",
        "image/vnd.rn-realflash",
        "image/x-rgb",
        "application/vnd.rn-realmedia",
        "audio/mid",
        "application/ringing-tones",
        "application/vnd.nokia.ringing-tone",
        "application/vnd.rn-realplayer",
        "application/x-troff",
        "image/vnd.rn-realpix",
        "application/x-rtf",
        "text/richtext",
        "application/rtf",
        "video/vnd.rn-realvideo",
        "audio/s3m",
        "application/x-tbook",
        "application/x-lotusscreencam",
        "text/x-script.guile",
        "text/x-script.scheme",
        "video/x-scm",
        "application/sdp",
        "application/x-sdp",
        "application/sounder",
        "application/sea",
        "application/x-sea",
        "application/set",
        "text/sgml",
        "text/x-sgml",
        "application/x-sh",
        "application/x-shar",
        "text/x-script.sh",
        "text/x-server-parsed-html",
        "audio/x-psid",
        "application/x-sit",
        "application/x-stuffit",
        "application/x-koan",
        "application/x-seelogo",
        "application/smil",
        "audio/x-adpcm",
        "application/solids",
        "application/x-pkcs7-certificates",
        "text/x-speech",
        "application/futuresplash",
        "application/x-sprite",
        "application/x-wais-source",
        "application/streamingmedia",
        "application/vnd.ms-pki.certstore",
        "application/step",
        "application/sla",
        "application/vnd.ms-pki.stl",
        "application/x-navistyle",
        "application/x-sv4cpio",
        "application/x-sv4crc",
        "image/svg+xml",
        "application/x-world",
        "x-world/x-svr",
        "application/x-shockwave-flash",
        "application/x-tar",
        "application/toolbook",
        "application/x-tcl",
        "text/x-script.tcl",
        "text/x-script.tcsh",
        "application/x-tex",
        "application/x-texinfo",
        "application/plain",
        "application/gnutar",
        "image/tiff",
        "image/x-tiff",
        "application/toml",
        "audio/tsp-audio",
        "application/dsptype",
        "audio/tsplayer",
        "text/tab-separated-values",
        "application/i-deas",
        "text/uri-list",
        "application/x-ustar",
        "multipart/x-ustar",
        "text/x-uuencode",
        "application/x-cdlink",
        "text/x-vcalendar",
        "application/vda",
        "video/vdo",
        "application/groupwise",
        "video/vivo",
        "video/vnd.vivo",
        "application/vocaltec-media-desc",
        "application/vocaltec-media-file",
        "audio/voc",
        "audio/x-voc",
        "video/vosaic",
        "audio/voxware",
        "audio/x-twinvq-plugin",
        "audio/x-twinvq",
        "application/x-vrml",
        "model/vrml",
        "x-world/x-vrml",
        "x-world/x-vrt",
        "application/x-visio",
        "application/wordperfect6.0",
        "application/wordperfect6.1",
        "audio/wav",
        "audio/x-wav",
        "application/x-qpro",
        "image/vnd.wap.wbmp",
        "application/vnd.xara",
        "video/webm",
        "audio/webm",
        "image/webp",
        "application/x-123",
        "windows/metafile",
        "text/vnd.wap.wml",
        "application/vnd.wap.wmlc",
        "text/vnd.wap.wmlscript",
        "application/vnd.wap.wmlscriptc",
        "video/x-ms-wmv",
        "application/wordperfect",
        "application/x-wpwin",
        "application/x-lotus",
        "application/mswrite",
        "application/x-wri",
        "text/scriplet",
        "application/x-wintalk",
        "image/x-xbitmap",
        "image/x-xbm",
        "image/xbm",
        "video/x-amt-demorun",
        "xgl/drawing",
        "image/vnd.xiff",
        "application/excel",
        "application/vnd.ms-excel",
        "application/x-excel",
        "application/x-msexcel",
        "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
        "audio/xm",
        "application/xml",
        "text/xml",
        "xgl/movie",
        "application/x-vnd.ls-xpix",
        "image/xpm",
        "video/x-amt-showrun",
        "image/x-xwd",
        "image/x-xwindowdump",
        "text/vnd.yaml",
        "application/x-compress",
        "application/x-zip-compressed",
        "application/zip",
        "multipart/x-zip",
        "text/x-script.zsh"
      ],
      "title": "Mime Type",
      "description": "MIME type identifiers for file type validation and handling in CloudCannon.",
      "markdownDescription": "MIME type identifiers for file type validation and handling in CloudCannon."
    },
    "type._inputs.*.options.max_file_size": {
      "description": "This key defines the maximum file size, in kilobytes, that CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from uploading a file larger than the specified size. If the Input already contains a file larger than the specified size, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes. Value can be any positive integer.",
      "type": "number",
      "markdownDescription": "This key defines the maximum file size, in kilobytes, that CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from uploading a file larger than the specified size. If the Input already contains a file larger than the specified size, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes. Value can be any positive integer."
    },
    "type._inputs.*.options.max_file_size_message": {
      "description": "This key defines the message that explains why an Input needs to have a maximum file size. This key requires you to define `options.max_file_size`. This key has no default.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains why an Input needs to have a maximum file size. This key requires you to define `options.max_file_size`. This key has no default."
    },
    "type._inputs.*.options.disable_upload_file": {
      "description": "Disables the context menu option and the drop area for uploading files.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Disables the context menu option and the drop area for uploading files."
    },
    "type._inputs.*.options.disable_direct_input": {
      "description": "Prevents typing into the text input, while still allowing context menu options to change the value.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Prevents typing into the text input, while still allowing context menu options to change the value."
    },
    "type._inputs.*.options.disable_upload_file_in_file_browser": {
      "description": "Prevents file uploads inside the \"Select existing file/image\" file browser modal window.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Prevents file uploads inside the \"Select existing file/image\" file browser modal window."
    },
    "UrlInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "url",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "mime_type": {
              "$ref": "#/$defs/type._inputs.*.options.mime_type"
            },
            "resize_style": {
              "$ref": "#/$defs/type._inputs.*.options.resize_style"
            },
            "width": {
              "$ref": "#/$defs/type._inputs.*.options.width"
            },
            "height": {
              "$ref": "#/$defs/type._inputs.*.options.height"
            },
            "expandable": {
              "$ref": "#/$defs/type._inputs.*.options.expandable"
            },
            "image_size_attributes": {
              "$ref": "#/$defs/type._inputs.*.options.image_size_attributes"
            },
            "allowed_sources": {
              "$ref": "#/$defs/type._inputs.*.options.allowed_sources"
            },
            "prevent_resize_existing_files": {
              "$ref": "#/$defs/type._inputs.*.options.prevent_resize_existing_files"
            },
            "sizes": {
              "$ref": "#/$defs/type._inputs.*.options.sizes"
            },
            "max_length": {
              "$ref": "#/$defs/type._inputs.*.options.max_length"
            },
            "max_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_length_message"
            },
            "min_length": {
              "$ref": "#/$defs/type._inputs.*.options.min_length"
            },
            "min_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_length_message"
            },
            "max_words": {
              "$ref": "#/$defs/type._inputs.*.options.max_words"
            },
            "max_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_words_message"
            },
            "min_words": {
              "$ref": "#/$defs/type._inputs.*.options.min_words"
            },
            "min_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_words_message"
            },
            "max_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes"
            },
            "max_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes_message"
            },
            "min_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes"
            },
            "min_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes_message"
            },
            "locale": {
              "$ref": "#/$defs/type._inputs.*.options.locale"
            },
            "pattern": {
              "$ref": "#/$defs/type._inputs.*.options.pattern"
            },
            "pattern_message": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_message"
            },
            "pattern_flags": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_flags"
            },
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(text)"
                }
              ]
            },
            "paths": {
              "allOf": [
                {
                  "$ref": "#/$defs/type.paths"
                }
              ]
            },
            "accepts_mime_types": {
              "$ref": "#/$defs/type._inputs.*.options.accepts_mime_types"
            },
            "max_file_size": {
              "$ref": "#/$defs/type._inputs.*.options.max_file_size"
            },
            "max_file_size_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_file_size_message"
            },
            "disable_upload_file": {
              "$ref": "#/$defs/type._inputs.*.options.disable_upload_file"
            },
            "disable_direct_input": {
              "$ref": "#/$defs/type._inputs.*.options.disable_direct_input"
            },
            "disable_upload_file_in_file_browser": {
              "$ref": "#/$defs/type._inputs.*.options.disable_upload_file_in_file_browser"
            },
            "hide_link_to_file": {
              "description": "Hides the options to link to an existing file, and upload a new file. This does not prevent typing a file path in the input.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Hides the options to link to an existing file, and upload a new file. This does not prevent typing a file path in the input."
            },
            "hide_link_to_page": {
              "description": "Hides the option to link to a page. This does not prevent typing a file's output URL in the input.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Hides the option to link to a page. This does not prevent typing a file's output URL in the input."
            },
            "hide_link_to_email_address": {
              "description": "Hides the option to link to an email address. This does not prevent typing a `mailto:` link in the input.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Hides the option to link to an email address. This does not prevent typing a `mailto:` link in the input."
            },
            "hide_link_to_telephone": {
              "description": "Hides the option to link to a telephone number. This does not prevent typing a `tel:` link in the input.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Hides the option to link to a telephone number. This does not prevent typing a `tel:` link in the input."
            }
          },
          "markdownDescription": "Options that are specific to URL Inputs.",
          "description": "Options that are specific to URL Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for relative, absolute, and fully qualified URLs.",
      "title": "URL Input",
      "description": "Provides an editing interface for relative, absolute, and fully qualified URLs.",
      "additionalProperties": false
    },
    "SelectInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "select",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "preview": {
              "allOf": [
                {
                  "$ref": "#/$defs/type.preview"
                }
              ]
            },
            "picker_preview": {
              "allOf": [
                {
                  "$ref": "#/$defs/type.picker_preview"
                }
              ]
            },
            "allow_create": {
              "$ref": "#/$defs/type._inputs.*.options.allow_create"
            },
            "allow_empty": {
              "$ref": "#/$defs/type._inputs.*.options.allow_empty"
            },
            "values": {
              "$ref": "#/$defs/type._inputs.*.options.values"
            },
            "value_key": {
              "$ref": "#/$defs/type._inputs.*.options.value_key"
            },
            "view": {
              "$ref": "#/$defs/type._inputs.*.options.view"
            },
            "picker_view": {
              "$ref": "#/$defs/type._inputs.*.options.picker_view"
            },
            "max_length": {
              "$ref": "#/$defs/type._inputs.*.options.max_length"
            },
            "max_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_length_message"
            },
            "min_length": {
              "$ref": "#/$defs/type._inputs.*.options.min_length"
            },
            "min_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_length_message"
            },
            "max_words": {
              "$ref": "#/$defs/type._inputs.*.options.max_words"
            },
            "max_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_words_message"
            },
            "min_words": {
              "$ref": "#/$defs/type._inputs.*.options.min_words"
            },
            "min_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_words_message"
            },
            "max_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes"
            },
            "max_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes_message"
            },
            "min_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes"
            },
            "min_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes_message"
            },
            "locale": {
              "$ref": "#/$defs/type._inputs.*.options.locale"
            },
            "pattern": {
              "$ref": "#/$defs/type._inputs.*.options.pattern"
            },
            "pattern_message": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_message"
            },
            "pattern_flags": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_flags"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(text)"
                }
              ]
            }
          },
          "markdownDescription": "Options that are specific to Select Inputs.",
          "description": "Options that are specific to Select Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for data with multiple predefined options. Select inputs only allow one value.",
      "title": "Select Input",
      "description": "Provides an editing interface for data with multiple predefined options. Select inputs only allow one value.",
      "additionalProperties": false
    },
    "type.preview": {
      "type": "object",
      "properties": {
        "text": {
          "$ref": "#/$defs/type.preview.text"
        },
        "subtext": {
          "$ref": "#/$defs/type.preview.subtext"
        },
        "image": {
          "$ref": "#/$defs/type.preview.image"
        },
        "icon": {
          "$ref": "#/$defs/type.preview.icon"
        },
        "icon_color": {
          "$ref": "#/$defs/type.preview.icon_color"
        },
        "icon_background_color": {
          "$ref": "#/$defs/type.preview.icon_background_color"
        },
        "tags": {
          "$ref": "#/$defs/type.preview.tags"
        },
        "metadata": {
          "$ref": "#/$defs/type.preview.metadata"
        },
        "gallery": {
          "$ref": "#/$defs/type.preview.gallery"
        }
      },
      "title": "Preview",
      "additionalProperties": false
    },
    "type.preview.text": {
      "allOf": [
        {
          "$ref": "#/$defs/PreviewEntries"
        }
      ]
    },
    "type.preview.subtext": {
      "allOf": [
        {
          "$ref": "#/$defs/PreviewEntries"
        }
      ]
    },
    "type.preview.image": {
      "allOf": [
        {
          "$ref": "#/$defs/PreviewEntries"
        }
      ]
    },
    "type.preview.icon": {
      "allOf": [
        {
          "$ref": "#/$defs/PreviewEntries"
        }
      ]
    },
    "type.preview.icon_color": {
      "allOf": [
        {
          "$ref": "#/$defs/PreviewEntries"
        }
      ]
    },
    "type.preview.icon_background_color": {
      "allOf": [
        {
          "$ref": "#/$defs/PreviewEntries"
        }
      ]
    },
    "type.preview.tags": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "type.preview.metadata": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/PreviewMetadataEntry"
      }
    },
    "PreviewMetadataEntry": {
      "type": "object",
      "properties": {
        "text": {
          "$ref": "#/$defs/type.preview.text"
        },
        "image": {
          "$ref": "#/$defs/type.preview.image"
        },
        "icon": {
          "$ref": "#/$defs/type.preview.icon"
        },
        "icon_color": {
          "$ref": "#/$defs/type.preview.icon_color"
        },
        "icon_background_color": {
          "$ref": "#/$defs/type.preview.icon_background_color"
        }
      },
      "additionalProperties": false
    },
    "type.preview.gallery": {
      "type": "object",
      "properties": {
        "text": {
          "$ref": "#/$defs/type.preview.text"
        },
        "image": {
          "$ref": "#/$defs/type.preview.image"
        },
        "icon": {
          "$ref": "#/$defs/type.preview.icon"
        },
        "icon_color": {
          "$ref": "#/$defs/type.preview.icon_color"
        },
        "icon_background_color": {
          "$ref": "#/$defs/type.preview.icon_background_color"
        },
        "fit": {
          "$ref": "#/$defs/preview.gallery.fit"
        },
        "background_color": {
          "$ref": "#/$defs/type.preview.gallery.background_color"
        }
      },
      "additionalProperties": false
    },
    "preview.gallery.fit": {
      "default": "padded",
      "type": "string",
      "enum": [
        "padded",
        "cover",
        "contain",
        "cover-top"
      ]
    },
    "type.preview.gallery.background_color": {
      "allOf": [
        {
          "$ref": "#/$defs/PreviewEntries"
        }
      ]
    },
    "type.picker_preview": {
      "title": "Picker Preview",
      "allOf": [
        {
          "$ref": "#/$defs/type.preview"
        }
      ]
    },
    "type._inputs.*.options.allow_create": {
      "description": "Allows new text values to be created at edit time.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Allows new text values to be created at edit time."
    },
    "type._inputs.*.options.allow_empty": {
      "deprecated": true,
      "description": "Provides an empty option alongside the options provided by values.",
      "type": "boolean",
      "markdownDescription": "Provides an empty option alongside the options provided by values."
    },
    "type._inputs.*.options.values": {
      "description": "Defines the values available to choose from. Optional, defaults to fetching values from the naming convention (e.g. colors or my_colors for data set colors).",
      "anyOf": [
        {
          "type": "string",
          "title": "Dataset Reference",
          "description": "Reference to a dataset.",
          "markdownDescription": "Reference to a dataset."
        },
        {
          "anyOf": [
            {
              "type": "array",
              "items": {
                "type": "string"
              },
              "title": "Text Array"
            },
            {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "title": "Text Object",
              "additionalProperties": {
                "type": "string"
              }
            },
            {
              "type": "array",
              "items": {
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {}
              },
              "title": "Object Array"
            },
            {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "title": "Object",
              "additionalProperties": {}
            }
          ],
          "description": "Data formats for populating select and multiselect input options, supporting arrays and objects.",
          "markdownDescription": "Data formats for populating select and multiselect input options, supporting arrays and objects."
        }
      ],
      "markdownDescription": "Defines the values available to choose from. Optional, defaults to fetching values from the naming convention (e.g. colors or my_colors for data set colors)."
    },
    "type._inputs.*.options.value_key": {
      "description": "Defines the key used for mapping between saved values and objects in values. This changes how the input saves selected values to match. Defaults to checking for \"id\", \"uuid\", \"path\", \"title\", then \"name\". Has no effect unless values is an array of objects, the key is used instead for objects, and the value itself is used for primitive types.",
      "type": "string",
      "markdownDescription": "Defines the key used for mapping between saved values and objects in values. This changes how the input saves selected values to match. Defaults to checking for \"id\", \"uuid\", \"path\", \"title\", then \"name\". Has no effect unless values is an array of objects, the key is used instead for objects, and the value itself is used for primitive types."
    },
    "type._inputs.*.options.view": {
      "description": "Controls how selected items are rendered.",
      "type": "string",
      "enum": [
        "card",
        "text",
        "gallery",
        "gallery-left"
      ],
      "markdownDescription": "Controls how selected items are rendered."
    },
    "type._inputs.*.options.picker_view": {
      "description": "Controls how selectable options are rendered.",
      "type": "string",
      "enum": [
        "card",
        "text",
        "gallery",
        "gallery-left"
      ],
      "markdownDescription": "Controls how selectable options are rendered."
    },
    "MultiselectInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "multiselect",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "preview": {
              "allOf": [
                {
                  "$ref": "#/$defs/type.preview"
                }
              ]
            },
            "picker_preview": {
              "allOf": [
                {
                  "$ref": "#/$defs/type.picker_preview"
                }
              ]
            },
            "allow_create": {
              "$ref": "#/$defs/type._inputs.*.options.allow_create"
            },
            "allow_empty": {
              "$ref": "#/$defs/type._inputs.*.options.allow_empty"
            },
            "values": {
              "$ref": "#/$defs/type._inputs.*.options.values"
            },
            "value_key": {
              "$ref": "#/$defs/type._inputs.*.options.value_key"
            },
            "view": {
              "$ref": "#/$defs/type._inputs.*.options.view"
            },
            "picker_view": {
              "$ref": "#/$defs/type._inputs.*.options.picker_view"
            },
            "max_items": {
              "$ref": "#/$defs/type._inputs.*.options.max_items"
            },
            "max_items_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_items_message"
            },
            "min_items": {
              "$ref": "#/$defs/type._inputs.*.options.min_items"
            },
            "min_items_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_items_message"
            },
            "unique_on": {
              "$ref": "#/$defs/type._inputs.*.options.unique_on"
            },
            "unique_on_message": {
              "$ref": "#/$defs/type._inputs.*.options.unique_on_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(array)"
                }
              ]
            }
          },
          "markdownDescription": "Options that are specific to Multiselect Inputs.",
          "description": "Options that are specific to Multiselect Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for data with multiple predefined options. Multiselect inputs allow several values.",
      "title": "Multiselect Input",
      "description": "Provides an editing interface for data with multiple predefined options. Multiselect inputs allow several values.",
      "additionalProperties": false
    },
    "type._inputs.*.options.max_items": {
      "description": "This key defines the maximum number of items CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from adding more items to this Input. If the Input already contains more items, CloudCannon will require you to remove items until the Input contains a valid number to save your changes, or discard your unsaved changes.",
      "type": "number",
      "markdownDescription": "This key defines the maximum number of items CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from adding more items to this Input. If the Input already contains more items, CloudCannon will require you to remove items until the Input contains a valid number to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.max_items_message": {
      "description": "This key defines the message that explains why an Input needs to have a maximum number of items. This key requires you to define `options.max_items`.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains why an Input needs to have a maximum number of items. This key requires you to define `options.max_items`."
    },
    "type._inputs.*.options.min_items": {
      "description": "This key defines the minimum number of items CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from removing items from this Input below this value. If the Input already contains fewer items, CloudCannon will require you to add items until the Input contains a valid number to save your changes, or discard your unsaved changes.",
      "type": "number",
      "markdownDescription": "This key defines the minimum number of items CloudCannon will allow in an Input. When configured, CloudCannon will prevent you from removing items from this Input below this value. If the Input already contains fewer items, CloudCannon will require you to add items until the Input contains a valid number to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.min_items_message": {
      "description": "This key defines the message that explains why an Input needs to have a minimum number of items. This key requires you to define `options.min_items`.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains why an Input needs to have a minimum number of items. This key requires you to define `options.min_items`."
    },
    "type._inputs.*.options.unique_on": {
      "description": "This key defines the JSON Path selector that CloudCannon should use to determine if the value of an Input is unique. When configured, CloudCannon will require the value of the Input to be unique compared to the value defined on the JSON Path. If the Input already contains a non-unique value, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes.",
      "type": "string",
      "markdownDescription": "This key defines the JSON Path selector that CloudCannon should use to determine if the value of an Input is unique. When configured, CloudCannon will require the value of the Input to be unique compared to the value defined on the JSON Path. If the Input already contains a non-unique value, CloudCannon will require you to change it to a valid value to save your changes, or discard your unsaved changes."
    },
    "type._inputs.*.options.unique_on_message": {
      "description": "This key defines the message that explains why an Input needs to be unique. This key requires you to define `options.unique_on`.",
      "type": "string",
      "markdownDescription": "This key defines the message that explains why an Input needs to be unique. This key requires you to define `options.unique_on`."
    },
    "type._inputs.*.options.empty_type(array)": {
      "default": "null",
      "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
      "type": "string",
      "enum": [
        "null",
        "array"
      ],
      "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values."
    },
    "ChoiceInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "choice",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "preview": {
              "allOf": [
                {
                  "$ref": "#/$defs/type.preview"
                }
              ]
            },
            "picker_preview": {
              "allOf": [
                {
                  "$ref": "#/$defs/type.picker_preview"
                }
              ]
            },
            "allow_empty": {
              "$ref": "#/$defs/type._inputs.*.options.allow_empty"
            },
            "values": {
              "$ref": "#/$defs/type._inputs.*.options.values"
            },
            "value_key": {
              "$ref": "#/$defs/type._inputs.*.options.value_key"
            },
            "view": {
              "$ref": "#/$defs/type._inputs.*.options.view"
            },
            "picker_view": {
              "$ref": "#/$defs/type._inputs.*.options.picker_view"
            },
            "max_length": {
              "$ref": "#/$defs/type._inputs.*.options.max_length"
            },
            "max_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_length_message"
            },
            "min_length": {
              "$ref": "#/$defs/type._inputs.*.options.min_length"
            },
            "min_length_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_length_message"
            },
            "max_words": {
              "$ref": "#/$defs/type._inputs.*.options.max_words"
            },
            "max_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_words_message"
            },
            "min_words": {
              "$ref": "#/$defs/type._inputs.*.options.min_words"
            },
            "min_words_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_words_message"
            },
            "max_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes"
            },
            "max_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_graphemes_message"
            },
            "min_graphemes": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes"
            },
            "min_graphemes_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_graphemes_message"
            },
            "locale": {
              "$ref": "#/$defs/type._inputs.*.options.locale"
            },
            "pattern": {
              "$ref": "#/$defs/type._inputs.*.options.pattern"
            },
            "pattern_message": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_message"
            },
            "pattern_flags": {
              "$ref": "#/$defs/type._inputs.*.options.pattern_flags"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(text)"
                }
              ]
            }
          },
          "markdownDescription": "Options that are specific to Choice Inputs.",
          "description": "Options that are specific to Choice Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for data with multiple predefined options. Choice inputs only allow one value.",
      "title": "Choice Input",
      "description": "Provides an editing interface for data with multiple predefined options. Choice inputs only allow one value.",
      "additionalProperties": false
    },
    "MultichoiceInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "multichoice",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "preview": {
              "allOf": [
                {
                  "$ref": "#/$defs/type.preview"
                }
              ]
            },
            "picker_preview": {
              "allOf": [
                {
                  "$ref": "#/$defs/type.picker_preview"
                }
              ]
            },
            "allow_empty": {
              "$ref": "#/$defs/type._inputs.*.options.allow_empty"
            },
            "values": {
              "$ref": "#/$defs/type._inputs.*.options.values"
            },
            "value_key": {
              "$ref": "#/$defs/type._inputs.*.options.value_key"
            },
            "view": {
              "$ref": "#/$defs/type._inputs.*.options.view"
            },
            "picker_view": {
              "$ref": "#/$defs/type._inputs.*.options.picker_view"
            },
            "max_items": {
              "$ref": "#/$defs/type._inputs.*.options.max_items"
            },
            "max_items_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_items_message"
            },
            "min_items": {
              "$ref": "#/$defs/type._inputs.*.options.min_items"
            },
            "min_items_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_items_message"
            },
            "unique_on": {
              "$ref": "#/$defs/type._inputs.*.options.unique_on"
            },
            "unique_on_message": {
              "$ref": "#/$defs/type._inputs.*.options.unique_on_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(array)"
                }
              ]
            }
          },
          "markdownDescription": "Options that are specific to Multichoice Inputs.",
          "description": "Options that are specific to Multichoice Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides an editing interface for data with multiple predefined options. Multichoice inputs allow several values.",
      "title": "Multichoice Input",
      "description": "Provides an editing interface for data with multiple predefined options. Multichoice inputs allow several values.",
      "additionalProperties": false
    },
    "ObjectInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "object",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(object)"
                }
              ]
            },
            "preview": {
              "allOf": [
                {
                  "$ref": "#/$defs/type.preview"
                }
              ]
            },
            "subtype": {
              "description": "Changes the appearance and behavior of the input.",
              "type": "string",
              "enum": [
                "object",
                "mutable",
                "tabbed"
              ],
              "markdownDescription": "Changes the appearance and behavior of the input."
            },
            "entries": {
              "description": "Contains options for the \"mutable\" subtype.",
              "type": "object",
              "properties": {
                "allowed_keys": {
                  "description": "Defines a limited set of keys that can exist on the data within an object input. This set is used when entries are added and renamed with `allow_create` enabled. Has no effect if `allow_create` is not enabled.",
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "markdownDescription": "Defines a limited set of keys that can exist on the data within an object input. This set is used when entries are added and renamed with `allow_create` enabled. Has no effect if `allow_create` is not enabled."
                },
                "assigned_structures": {
                  "description": "Provides data formats when adding entries to the data within this object input. When adding an entry, team members are prompted to choose from a number of values you have defined. Has no effect if `allow_create` is false. `entries.structures` applies to the entries within the object.",
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "markdownDescription": "Provides data formats when adding entries to the data within this object input. When adding an entry, team members are prompted to choose from a number of values you have defined. Has no effect if `allow_create` is false. `entries.structures` applies to the entries within the object.",
                  "additionalProperties": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "structures": {
                  "description": "Provides data formats for value of this object. When choosing an item, team members are prompted to choose from a number of values you have defined. `structures` applies to the object itself.",
                  "anyOf": [
                    {
                      "$ref": "#/$defs/type.structure-reference"
                    },
                    {
                      "$ref": "#/$defs/type.structure"
                    }
                  ],
                  "markdownDescription": "Provides data formats for value of this object. When choosing an item, team members are prompted to choose from a number of values you have defined. `structures` applies to the object itself."
                },
                "comment": {
                  "$ref": "#/$defs/entries_comment"
                },
                "documentation": {
                  "description": "Provides a custom link for documentation for editors shown above the key input when adding/renaming within a mutable object input.",
                  "allOf": [
                    {
                      "$ref": "#/$defs/type.documentation"
                    }
                  ],
                  "markdownDescription": "Provides a custom link for documentation for editors shown above the key input when adding/renaming within a mutable object input."
                }
              },
              "markdownDescription": "Contains options for the \"mutable\" subtype.",
              "additionalProperties": false
            },
            "groups": {
              "description": "Allows you to group the inputs inside this object together without changing the data structure.",
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "heading": {
                    "description": "The main text for the group shown when collapsed or expanded.",
                    "type": "string",
                    "markdownDescription": "The main text for the group shown when collapsed or expanded."
                  },
                  "comment": {
                    "description": "Changes the subtext below the `heading`. Has no default. Supports a limited set of Markdown: links, bold, italic, subscript, superscript, and inline code elements are allowed.",
                    "type": "string",
                    "markdownDescription": "Changes the subtext below the `heading`. Has no default. Supports a limited set of Markdown: links, bold, italic, subscript, superscript, and inline code elements are allowed."
                  },
                  "collapsed": {
                    "description": "Controls if this group is collapsed or expanded when first viewed.",
                    "default": false,
                    "type": "boolean",
                    "markdownDescription": "Controls if this group is collapsed or expanded when first viewed."
                  },
                  "inputs": {
                    "description": "The keys of each input in this group.",
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "markdownDescription": "The keys of each input in this group."
                  },
                  "documentation": {
                    "description": "Provides a custom link for documentation for editors shown above the collection file list.",
                    "allOf": [
                      {
                        "$ref": "#/$defs/type.documentation"
                      }
                    ],
                    "markdownDescription": "Provides a custom link for documentation for editors shown above the collection file list."
                  }
                },
                "additionalProperties": false
              },
              "markdownDescription": "Allows you to group the inputs inside this object together without changing the data structure."
            },
            "place_groups_below": {
              "description": "Controls which order input groups and ungrouped inputs appear in.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Controls which order input groups and ungrouped inputs appear in."
            },
            "allow_label_formatting": {
              "description": "Controls whether or not labels on mutable object entries are formatted.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Controls whether or not labels on mutable object entries are formatted."
            },
            "view": {
              "description": "Controls how object previews are rendered.",
              "type": "string",
              "enum": [
                "card",
                "gallery",
                "gallery-left"
              ],
              "markdownDescription": "Controls how object previews are rendered."
            },
            "structures": {
              "description": "Provides data formats for value of this object. When choosing an item, team members are prompted to choose from a number of values you have defined. `structures` applies to the object itself.",
              "anyOf": [
                {
                  "$ref": "#/$defs/type.structure-reference"
                },
                {
                  "$ref": "#/$defs/type.structure"
                }
              ],
              "markdownDescription": "Provides data formats for value of this object. When choosing an item, team members are prompted to choose from a number of values you have defined. `structures` applies to the object itself."
            }
          },
          "markdownDescription": "Options that are specific to Object Inputs.",
          "description": "Options that are specific to Object Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides a user interface for a group of inputs.",
      "title": "Object Input",
      "description": "Provides a user interface for a group of inputs.",
      "additionalProperties": false
    },
    "type._inputs.*.options.empty_type(object)": {
      "default": "null",
      "description": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values.",
      "type": "string",
      "enum": [
        "null",
        "object"
      ],
      "markdownDescription": "Set how an ‘empty’ value will be saved. Does not apply to existing empty values."
    },
    "type.structure-reference": {
      "type": "string",
      "title": "Structure Reference",
      "description": "A reference to an existing structure.",
      "markdownDescription": "A reference to an existing structure."
    },
    "type.structure": {
      "type": "object",
      "properties": {
        "reorder_inputs": {
          "description": "If true, inputs are sorted to match when editing. Extra inputs are ordered after expected inputs, unless `remove_extra_inputs` is true. Defaults to true.",
          "default": true,
          "type": "boolean",
          "markdownDescription": "If true, inputs are sorted to match when editing. Extra inputs are ordered after expected inputs, unless `remove_extra_inputs` is true. Defaults to true."
        },
        "hide_extra_inputs": {
          "description": "Hides unexpected inputs when editing. Has no effect if `remove_extra_inputs` is true. Defaults to false.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "Hides unexpected inputs when editing. Has no effect if `remove_extra_inputs` is true. Defaults to false."
        },
        "remove_empty_inputs": {
          "description": "If checked, empty inputs are removed from the source file on save. Removed inputs will be available for editing again, provided they are in the matching schema/structure. Defaults to false.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "If checked, empty inputs are removed from the source file on save. Removed inputs will be available for editing again, provided they are in the matching schema/structure. Defaults to false."
        },
        "remove_extra_inputs": {
          "description": "If checked, extra inputs are removed when editing. Defaults to true.",
          "default": true,
          "type": "boolean",
          "markdownDescription": "If checked, extra inputs are removed when editing. Defaults to true."
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/type.structure.values.%5B*%5D"
          },
          "description": "Defines what values are available to add when using this structure.",
          "markdownDescription": "Defines what values are available to add when using this structure."
        },
        "values_from_glob": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "id_key": {
          "description": "Defines what key should be used to detect which structure an item is. If this key is not found in the existing structure, a comparison of key names is used. Defaults to \"_type\".",
          "default": "_type",
          "type": "string",
          "markdownDescription": "Defines what key should be used to detect which structure an item is. If this key is not found in the existing structure, a comparison of key names is used. Defaults to \"_type\"."
        },
        "style": {
          "description": "Defines whether options are shown to your editors in a select menu (select, default) or a modal pop up window (modal) when adding a new item.",
          "default": "select",
          "type": "string",
          "enum": [
            "select",
            "modal"
          ],
          "markdownDescription": "Defines whether options are shown to your editors in a select menu (select, default) or a modal pop up window (modal) when adding a new item."
        }
      },
      "required": [
        "values"
      ],
      "markdownDescription": "Provides data formats when adding new items to arrays and objects, with options for how editors choose from available values.",
      "title": "Structure",
      "description": "Provides data formats when adding new items to arrays and objects, with options for how editors choose from available values.",
      "additionalProperties": false
    },
    "type.structure.values.[*]": {
      "type": "object",
      "properties": {
        "reorder_inputs": {
          "description": "If true, inputs are sorted to match when editing. Extra inputs are ordered after expected inputs, unless `remove_extra_inputs` is true. Defaults to true.",
          "default": true,
          "type": "boolean",
          "markdownDescription": "If true, inputs are sorted to match when editing. Extra inputs are ordered after expected inputs, unless `remove_extra_inputs` is true. Defaults to true."
        },
        "hide_extra_inputs": {
          "description": "Hides unexpected inputs when editing. Has no effect if `remove_extra_inputs` is true. Defaults to false.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "Hides unexpected inputs when editing. Has no effect if `remove_extra_inputs` is true. Defaults to false."
        },
        "remove_empty_inputs": {
          "description": "If checked, empty inputs are removed from the source file on save. Removed inputs will be available for editing again, provided they are in the matching schema/structure. Defaults to false.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "If checked, empty inputs are removed from the source file on save. Removed inputs will be available for editing again, provided they are in the matching schema/structure. Defaults to false."
        },
        "remove_extra_inputs": {
          "description": "If checked, extra inputs are removed when editing. Defaults to true.",
          "default": true,
          "type": "boolean",
          "markdownDescription": "If checked, extra inputs are removed when editing. Defaults to true."
        },
        "preview": {
          "allOf": [
            {
              "$ref": "#/$defs/type.preview"
            }
          ]
        },
        "picker_preview": {
          "allOf": [
            {
              "$ref": "#/$defs/type.picker_preview"
            }
          ]
        },
        "_inputs": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs"
            }
          ]
        },
        "_inputs_from_glob": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs_from_glob"
            }
          ]
        },
        "_select_data": {
          "allOf": [
            {
              "$ref": "#/$defs/type._select_data"
            }
          ]
        },
        "_structures": {
          "allOf": [
            {
              "$ref": "#/$defs/type._structures"
            }
          ]
        },
        "_structures_from_glob": {
          "allOf": [
            {
              "$ref": "#/$defs/type._structures_from_glob"
            }
          ]
        },
        "id": {
          "description": "A unique reference value used when referring to this structure value from the Object input's assigned_structures option.",
          "type": "string",
          "markdownDescription": "A unique reference value used when referring to this structure value from the Object input's assigned_structures option."
        },
        "default": {
          "description": "If set to true, this item will be considered the default type for this structure. If the type of a value within a structure cannot be inferred based on its id_key or matching fields, then it will fall back to this item. If multiple items have default set to true, only the first item will be used.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "If set to true, this item will be considered the default type for this structure. If the type of a value within a structure cannot be inferred based on its id_key or matching fields, then it will fall back to this item. If multiple items have default set to true, only the first item will be used."
        },
        "icon": {
          "description": "An icon used when displaying the structure (defaults to either format_list_bulleted for items in arrays, or notes otherwise).",
          "allOf": [
            {
              "$ref": "#/$defs/icon"
            }
          ],
          "markdownDescription": "An icon used when displaying the structure (defaults to either format_list_bulleted for items in arrays, or notes otherwise)."
        },
        "image": {
          "description": "Path to an image in your source files used when displaying the structure. Can be either a source (has priority) or output path.",
          "type": "string",
          "markdownDescription": "Path to an image in your source files used when displaying the structure. Can be either a source (has priority) or output path."
        },
        "label": {
          "description": "Used as the main text in the interface for this value.",
          "type": "string",
          "markdownDescription": "Used as the main text in the interface for this value."
        },
        "tags": {
          "description": "Used to group and filter items when selecting from a modal.",
          "type": "array",
          "items": {
            "type": "string"
          },
          "markdownDescription": "Used to group and filter items when selecting from a modal."
        },
        "groups": {
          "description": "Allows you to group the inputs inside this object together without changing the data structure.",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "heading": {
                "description": "The main text for the group shown when collapsed or expanded.",
                "type": "string",
                "markdownDescription": "The main text for the group shown when collapsed or expanded."
              },
              "comment": {
                "description": "Changes the subtext below the `heading`. Has no default. Supports a limited set of Markdown: links, bold, italic, subscript, superscript, and inline code elements are allowed.",
                "type": "string",
                "markdownDescription": "Changes the subtext below the `heading`. Has no default. Supports a limited set of Markdown: links, bold, italic, subscript, superscript, and inline code elements are allowed."
              },
              "collapsed": {
                "description": "Controls if this group is collapsed or expanded when first viewed.",
                "default": false,
                "type": "boolean",
                "markdownDescription": "Controls if this group is collapsed or expanded when first viewed."
              },
              "inputs": {
                "description": "The keys of each input in this group.",
                "type": "array",
                "items": {
                  "type": "string"
                },
                "markdownDescription": "The keys of each input in this group."
              },
              "documentation": {
                "description": "Provides a custom link for documentation for editors shown above the collection file list.",
                "allOf": [
                  {
                    "$ref": "#/$defs/type.documentation"
                  }
                ],
                "markdownDescription": "Provides a custom link for documentation for editors shown above the collection file list."
              }
            },
            "additionalProperties": false
          },
          "markdownDescription": "Allows you to group the inputs inside this object together without changing the data structure."
        },
        "place_groups_below": {
          "description": "Controls which order input groups and ungrouped inputs appear in.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "Controls which order input groups and ungrouped inputs appear in."
        },
        "tabbed": {
          "description": "Show nested objects as tabs. Requires all top-level keys to be objects.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "Show nested objects as tabs. Requires all top-level keys to be objects."
        },
        "value": {
          "description": "The actual value used when items are added after selection.",
          "markdownDescription": "The actual value used when items are added after selection."
        },
        "description": {
          "description": "Provides short descriptive text for editors shown in the Data Editor for expanded values matching this Structure value. Has no default. Supports a limited set of Markdown: links, bold, italic, subscript, superscript, and inline code elements are allowed.",
          "type": "string",
          "markdownDescription": "Provides short descriptive text for editors shown in the Data Editor for expanded values matching this Structure value. Has no default. Supports a limited set of Markdown: links, bold, italic, subscript, superscript, and inline code elements are allowed."
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown in the Data Editor for expanded values matching this Structure value. Has no default.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown in the Data Editor for expanded values matching this Structure value. Has no default."
        }
      },
      "required": [
        "value"
      ],
      "markdownDescription": "A single value option within a structure, defining the data format and appearance for content editors.",
      "title": "Structure Value",
      "description": "A single value option within a structure, defining the data format and appearance for content editors.",
      "additionalProperties": false
    },
    "type._inputs_from_glob": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "type._select_data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "markdownDescription": "Fixed datasets that can be referenced by the _Values_ configuration for _Select_ and _Multiselect_ inputs.",
      "title": "Select Data",
      "description": "Fixed datasets that can be referenced by the _Values_ configuration for _Select_ and _Multiselect_ inputs.",
      "additionalProperties": {
        "anyOf": [
          {
            "type": "array",
            "items": {
              "type": "string"
            },
            "title": "Text Array"
          },
          {
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "title": "Text Object",
            "additionalProperties": {
              "type": "string"
            }
          },
          {
            "type": "array",
            "items": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "title": "Object Array"
          },
          {
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "title": "Object",
            "additionalProperties": {}
          }
        ],
        "description": "Data formats for populating select and multiselect input options, supporting arrays and objects.",
        "markdownDescription": "Data formats for populating select and multiselect input options, supporting arrays and objects."
      }
    },
    "type._structures": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "markdownDescription": "Structured values for editors adding new items to arrays and objects. Entries here can be referenced in the configuration for `array` or `object` inputs.",
      "title": "Structures",
      "description": "Structured values for editors adding new items to arrays and objects. Entries here can be referenced in the configuration for `array` or `object` inputs.",
      "additionalProperties": {
        "$ref": "#/$defs/type.structure"
      }
    },
    "type._structures_from_glob": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "entries_comment": {
      "description": "Used to supply help text above the key input when adding/renaming within a mutable object input. Has no default. Supports a limited set of Markdown: links, bold, italic, subscript, superscript and inline code elements are allowed.",
      "type": "string",
      "markdownDescription": "Used to supply help text above the key input when adding/renaming within a mutable object input. Has no default. Supports a limited set of Markdown: links, bold, italic, subscript, superscript and inline code elements are allowed."
    },
    "ArrayInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "array",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "type": "object",
          "properties": {
            "required": {
              "$ref": "#/$defs/type._inputs.*.options.required"
            },
            "required_message": {
              "$ref": "#/$defs/type._inputs.*.options.required_message"
            },
            "max_items": {
              "$ref": "#/$defs/type._inputs.*.options.max_items"
            },
            "max_items_message": {
              "$ref": "#/$defs/type._inputs.*.options.max_items_message"
            },
            "min_items": {
              "$ref": "#/$defs/type._inputs.*.options.min_items"
            },
            "min_items_message": {
              "$ref": "#/$defs/type._inputs.*.options.min_items_message"
            },
            "unique_on": {
              "$ref": "#/$defs/type._inputs.*.options.unique_on"
            },
            "unique_on_message": {
              "$ref": "#/$defs/type._inputs.*.options.unique_on_message"
            },
            "disable_add": {
              "$ref": "#/$defs/ArrayInput.disable_add"
            },
            "disable_remove": {
              "$ref": "#/$defs/disable_remove"
            },
            "disable_reorder": {
              "$ref": "#/$defs/disable_reorder"
            },
            "empty_type": {
              "allOf": [
                {
                  "$ref": "#/$defs/type._inputs.*.options.empty_type(array)"
                }
              ]
            },
            "structures": {
              "description": "Provides data formats for value of this object. When choosing an item, team members are prompted to choose from a number of values you have defined.",
              "anyOf": [
                {
                  "$ref": "#/$defs/type.structure-reference"
                },
                {
                  "$ref": "#/$defs/type.structure"
                }
              ],
              "markdownDescription": "Provides data formats for value of this object. When choosing an item, team members are prompted to choose from a number of values you have defined."
            }
          },
          "markdownDescription": "Options that are specific to Array Inputs.",
          "description": "Options that are specific to Array Inputs.",
          "additionalProperties": false
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides a user interface for lists of inputs or input groups.",
      "title": "Array Input",
      "description": "Provides a user interface for lists of inputs or input groups.",
      "additionalProperties": false
    },
    "ArrayInput.disable_add": {
      "description": "Hides the add button, and context menu actions on each item for adding new items to this Input.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Hides the add button, and context menu actions on each item for adding new items to this Input."
    },
    "disable_remove": {
      "description": "Hides the context menu actions on each item for removing them.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Hides the context menu actions on each item for removing them."
    },
    "disable_reorder": {
      "description": "Hides the controls on each item for moving them.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Hides the controls on each item for moving them."
    },
    "AutoInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "type": {
          "type": "string",
          "const": "auto",
          "title": "Type",
          "description": "Sets an input type, which controls how this input appears and behaves.",
          "markdownDescription": "Sets an input type, which controls how this input appears and behaves."
        },
        "options": {
          "description": "Options that are specific to this `type` of input.",
          "markdownDescription": "Options that are specific to this `type` of input."
        }
      },
      "required": [
        "type"
      ],
      "markdownDescription": "Provides a default user interface based on the data contained.",
      "title": "Automatic Input",
      "description": "Provides a default user interface based on the data contained.",
      "excludeFromDocumentation": true,
      "additionalProperties": false
    },
    "UnknownInput": {
      "type": "object",
      "properties": {
        "comment": {
          "$ref": "#/$defs/type._inputs.*.comment"
        },
        "context": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs.*.context"
            }
          ]
        },
        "documentation": {
          "description": "Provides a custom link for documentation for editors shown above input.",
          "allOf": [
            {
              "$ref": "#/$defs/type.documentation"
            }
          ],
          "markdownDescription": "Provides a custom link for documentation for editors shown above input."
        },
        "label": {
          "$ref": "#/$defs/type._inputs.*.label"
        },
        "hidden": {
          "$ref": "#/$defs/type._inputs.*.hidden"
        },
        "disabled": {
          "$ref": "#/$defs/type._inputs.*.disabled"
        },
        "instance_value": {
          "$ref": "#/$defs/type._inputs.*.instance_value"
        },
        "disable_instance_value_rehydration": {
          "$ref": "#/$defs/type._inputs.*.disable_instance_value_rehydration"
        },
        "cascade": {
          "$ref": "#/$defs/type._inputs.*.cascade"
        },
        "options": {
          "description": "Options that are specific to this `type` of input.",
          "markdownDescription": "Options that are specific to this `type` of input."
        }
      },
      "markdownDescription": "Provides a default user interface based on the data contained.",
      "title": "Unknown Input",
      "description": "Provides a default user interface based on the data contained.",
      "excludeFromDocumentation": true,
      "additionalProperties": false
    },
    "type._enabled_editors": {
      "title": "Enabled Editors",
      "description": "Set a preferred editor and/or disable the others. The first value sets which editor opens by default, and the following values specify which editors are accessible.",
      "uniqueItems": true,
      "type": "array",
      "items": {
        "$ref": "#/$defs/EditorKey"
      },
      "markdownDescription": "Set a preferred editor and/or disable the others. The first value sets which editor opens by default, and the following values specify which editors are accessible."
    },
    "type._editables": {
      "title": "Editables",
      "description": "Configuration for editable regions in the Visual Editor, including content, block, link, image, and text editing options.",
      "type": "object",
      "properties": {
        "content": {
          "$ref": "#/$defs/ContentEditable"
        },
        "block": {
          "$ref": "#/$defs/BlockEditable"
        },
        "link": {
          "$ref": "#/$defs/LinkEditable"
        },
        "image": {
          "$ref": "#/$defs/ImageEditable"
        },
        "text": {
          "$ref": "#/$defs/TextEditable"
        }
      },
      "markdownDescription": "Configuration for editable regions in the Visual Editor, including content, block, link, image, and text editing options.",
      "additionalProperties": false
    },
    "ContentEditable": {
      "title": "Content Editable",
      "description": "Contains input options for the Content Editor.",
      "type": "object",
      "properties": {
        "mime_type": {
          "$ref": "#/$defs/type._inputs.*.options.mime_type"
        },
        "resize_style": {
          "$ref": "#/$defs/type._inputs.*.options.resize_style"
        },
        "width": {
          "$ref": "#/$defs/type._inputs.*.options.width"
        },
        "height": {
          "$ref": "#/$defs/type._inputs.*.options.height"
        },
        "expandable": {
          "$ref": "#/$defs/type._inputs.*.options.expandable"
        },
        "image_size_attributes": {
          "$ref": "#/$defs/type._inputs.*.options.image_size_attributes"
        },
        "allowed_sources": {
          "$ref": "#/$defs/type._inputs.*.options.allowed_sources"
        },
        "prevent_resize_existing_files": {
          "$ref": "#/$defs/type._inputs.*.options.prevent_resize_existing_files"
        },
        "sizes": {
          "$ref": "#/$defs/type._inputs.*.options.sizes"
        },
        "paths": {
          "allOf": [
            {
              "$ref": "#/$defs/type.paths"
            }
          ]
        },
        "bold": {
          "$ref": "#/$defs/type._editables.*.bold"
        },
        "copyformatting": {
          "$ref": "#/$defs/type._editables.*.copyformatting"
        },
        "italic": {
          "$ref": "#/$defs/type._editables.*.italic"
        },
        "link": {
          "$ref": "#/$defs/type._editables.*.link"
        },
        "redo": {
          "$ref": "#/$defs/type._editables.*.redo"
        },
        "removeformat": {
          "$ref": "#/$defs/type._editables.*.removeformat"
        },
        "strike": {
          "$ref": "#/$defs/type._editables.*.strike"
        },
        "subscript": {
          "$ref": "#/$defs/type._editables.*.subscript"
        },
        "superscript": {
          "$ref": "#/$defs/type._editables.*.superscript"
        },
        "underline": {
          "$ref": "#/$defs/type._editables.*.underline"
        },
        "undo": {
          "$ref": "#/$defs/type._editables.*.undo"
        },
        "remove_custom_markup": {
          "$ref": "#/$defs/type._editables.*.remove_custom_markup"
        },
        "allow_custom_markup": {
          "$ref": "#/$defs/type._editables.*.allow_custom_markup"
        },
        "blockquote": {
          "$ref": "#/$defs/type._editables.*.blockquote"
        },
        "bulletedlist": {
          "$ref": "#/$defs/type._editables.*.bulletedlist"
        },
        "center": {
          "$ref": "#/$defs/type._editables.*.center"
        },
        "code_inline": {
          "$ref": "#/$defs/type._editables.*.code_inline"
        },
        "code_block": {
          "$ref": "#/$defs/type._editables.*.code_block"
        },
        "code": {
          "$ref": "#/$defs/type._editables.*.code"
        },
        "embed": {
          "$ref": "#/$defs/type._editables.*.embed"
        },
        "format": {
          "$ref": "#/$defs/type._editables.*.format"
        },
        "horizontalrule": {
          "$ref": "#/$defs/type._editables.*.horizontalrule"
        },
        "image": {
          "$ref": "#/$defs/type._editables.*.image"
        },
        "indent": {
          "$ref": "#/$defs/type._editables.*.indent"
        },
        "justify": {
          "$ref": "#/$defs/type._editables.*.justify"
        },
        "left": {
          "$ref": "#/$defs/type._editables.*.left"
        },
        "numberedlist": {
          "$ref": "#/$defs/type._editables.*.numberedlist"
        },
        "outdent": {
          "$ref": "#/$defs/type._editables.*.outdent"
        },
        "right": {
          "$ref": "#/$defs/type._editables.*.right"
        },
        "snippet": {
          "$ref": "#/$defs/type._editables.*.snippet"
        },
        "styles": {
          "$ref": "#/$defs/type._editables.*.styles"
        },
        "table": {
          "$ref": "#/$defs/type._editables.*.table"
        },
        "join_above": {
          "$ref": "#/$defs/type._editables.*.join_above"
        },
        "join_below": {
          "$ref": "#/$defs/type._editables.*.join_below"
        }
      },
      "markdownDescription": "Contains input options for the Content Editor.",
      "additionalProperties": false
    },
    "BlockEditable": {
      "title": "Block Editable",
      "description": "Contains input options for block Editable Regions.",
      "type": "object",
      "properties": {
        "mime_type": {
          "$ref": "#/$defs/type._inputs.*.options.mime_type"
        },
        "resize_style": {
          "$ref": "#/$defs/type._inputs.*.options.resize_style"
        },
        "width": {
          "$ref": "#/$defs/type._inputs.*.options.width"
        },
        "height": {
          "$ref": "#/$defs/type._inputs.*.options.height"
        },
        "expandable": {
          "$ref": "#/$defs/type._inputs.*.options.expandable"
        },
        "image_size_attributes": {
          "$ref": "#/$defs/type._inputs.*.options.image_size_attributes"
        },
        "allowed_sources": {
          "$ref": "#/$defs/type._inputs.*.options.allowed_sources"
        },
        "prevent_resize_existing_files": {
          "$ref": "#/$defs/type._inputs.*.options.prevent_resize_existing_files"
        },
        "sizes": {
          "$ref": "#/$defs/type._inputs.*.options.sizes"
        },
        "paths": {
          "allOf": [
            {
              "$ref": "#/$defs/type.paths"
            }
          ]
        },
        "bold": {
          "$ref": "#/$defs/type._editables.*.bold"
        },
        "copyformatting": {
          "$ref": "#/$defs/type._editables.*.copyformatting"
        },
        "italic": {
          "$ref": "#/$defs/type._editables.*.italic"
        },
        "link": {
          "$ref": "#/$defs/type._editables.*.link"
        },
        "redo": {
          "$ref": "#/$defs/type._editables.*.redo"
        },
        "removeformat": {
          "$ref": "#/$defs/type._editables.*.removeformat"
        },
        "strike": {
          "$ref": "#/$defs/type._editables.*.strike"
        },
        "subscript": {
          "$ref": "#/$defs/type._editables.*.subscript"
        },
        "superscript": {
          "$ref": "#/$defs/type._editables.*.superscript"
        },
        "underline": {
          "$ref": "#/$defs/type._editables.*.underline"
        },
        "undo": {
          "$ref": "#/$defs/type._editables.*.undo"
        },
        "remove_custom_markup": {
          "$ref": "#/$defs/type._editables.*.remove_custom_markup"
        },
        "allow_custom_markup": {
          "$ref": "#/$defs/type._editables.*.allow_custom_markup"
        },
        "blockquote": {
          "$ref": "#/$defs/type._editables.*.blockquote"
        },
        "bulletedlist": {
          "$ref": "#/$defs/type._editables.*.bulletedlist"
        },
        "center": {
          "$ref": "#/$defs/type._editables.*.center"
        },
        "code_inline": {
          "$ref": "#/$defs/type._editables.*.code_inline"
        },
        "code_block": {
          "$ref": "#/$defs/type._editables.*.code_block"
        },
        "code": {
          "$ref": "#/$defs/type._editables.*.code"
        },
        "embed": {
          "$ref": "#/$defs/type._editables.*.embed"
        },
        "format": {
          "$ref": "#/$defs/type._editables.*.format"
        },
        "horizontalrule": {
          "$ref": "#/$defs/type._editables.*.horizontalrule"
        },
        "image": {
          "$ref": "#/$defs/type._editables.*.image"
        },
        "indent": {
          "$ref": "#/$defs/type._editables.*.indent"
        },
        "justify": {
          "$ref": "#/$defs/type._editables.*.justify"
        },
        "left": {
          "$ref": "#/$defs/type._editables.*.left"
        },
        "numberedlist": {
          "$ref": "#/$defs/type._editables.*.numberedlist"
        },
        "outdent": {
          "$ref": "#/$defs/type._editables.*.outdent"
        },
        "right": {
          "$ref": "#/$defs/type._editables.*.right"
        },
        "snippet": {
          "$ref": "#/$defs/type._editables.*.snippet"
        },
        "styles": {
          "$ref": "#/$defs/type._editables.*.styles"
        },
        "table": {
          "$ref": "#/$defs/type._editables.*.table"
        },
        "join_above": {
          "$ref": "#/$defs/type._editables.*.join_above"
        },
        "join_below": {
          "$ref": "#/$defs/type._editables.*.join_below"
        }
      },
      "markdownDescription": "Contains input options for block Editable Regions.",
      "additionalProperties": false
    },
    "LinkEditable": {
      "title": "Link Editable",
      "description": "Contains input options for link Editable Regions.",
      "type": "object",
      "properties": {
        "paths": {
          "allOf": [
            {
              "$ref": "#/$defs/type.paths"
            }
          ]
        }
      },
      "markdownDescription": "Contains input options for link Editable Regions.",
      "additionalProperties": false
    },
    "ImageEditable": {
      "title": "Image Editable",
      "description": "Contains input options for image Editable Regions.",
      "type": "object",
      "properties": {
        "mime_type": {
          "$ref": "#/$defs/type._inputs.*.options.mime_type"
        },
        "resize_style": {
          "$ref": "#/$defs/type._inputs.*.options.resize_style"
        },
        "width": {
          "$ref": "#/$defs/type._inputs.*.options.width"
        },
        "height": {
          "$ref": "#/$defs/type._inputs.*.options.height"
        },
        "expandable": {
          "$ref": "#/$defs/type._inputs.*.options.expandable"
        },
        "image_size_attributes": {
          "$ref": "#/$defs/type._inputs.*.options.image_size_attributes"
        },
        "allowed_sources": {
          "$ref": "#/$defs/type._inputs.*.options.allowed_sources"
        },
        "prevent_resize_existing_files": {
          "$ref": "#/$defs/type._inputs.*.options.prevent_resize_existing_files"
        },
        "sizes": {
          "$ref": "#/$defs/type._inputs.*.options.sizes"
        },
        "paths": {
          "allOf": [
            {
              "$ref": "#/$defs/type.paths"
            }
          ]
        }
      },
      "markdownDescription": "Contains input options for image Editable Regions.",
      "additionalProperties": false
    },
    "TextEditable": {
      "title": "Text Editable",
      "description": "Contains input options for text Editable Regions.",
      "type": "object",
      "properties": {
        "paths": {
          "allOf": [
            {
              "$ref": "#/$defs/type.paths"
            }
          ]
        },
        "bold": {
          "$ref": "#/$defs/type._editables.*.bold"
        },
        "copyformatting": {
          "$ref": "#/$defs/type._editables.*.copyformatting"
        },
        "italic": {
          "$ref": "#/$defs/type._editables.*.italic"
        },
        "link": {
          "$ref": "#/$defs/type._editables.*.link"
        },
        "redo": {
          "$ref": "#/$defs/type._editables.*.redo"
        },
        "removeformat": {
          "$ref": "#/$defs/type._editables.*.removeformat"
        },
        "strike": {
          "$ref": "#/$defs/type._editables.*.strike"
        },
        "subscript": {
          "$ref": "#/$defs/type._editables.*.subscript"
        },
        "superscript": {
          "$ref": "#/$defs/type._editables.*.superscript"
        },
        "underline": {
          "$ref": "#/$defs/type._editables.*.underline"
        },
        "undo": {
          "$ref": "#/$defs/type._editables.*.undo"
        },
        "remove_custom_markup": {
          "$ref": "#/$defs/type._editables.*.remove_custom_markup"
        },
        "allow_custom_markup": {
          "$ref": "#/$defs/type._editables.*.allow_custom_markup"
        }
      },
      "markdownDescription": "Contains input options for text Editable Regions.",
      "additionalProperties": false
    },
    "type._editables_from_glob": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "filter": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "base": {
              "description": "Defines the initial set of visible files in the collection file list. Defaults to \"all\", or \"strict\" for the auto-discovered `pages` collection in Jekyll, Hugo, and Eleventy.",
              "type": "string",
              "enum": [
                "none",
                "all",
                "strict"
              ],
              "markdownDescription": "Defines the initial set of visible files in the collection file list. Defaults to \"all\", or \"strict\" for the auto-discovered `pages` collection in Jekyll, Hugo, and Eleventy."
            },
            "include": {
              "description": "Add to the visible files set with `base`. Paths must be relative to the containing collection `path`.",
              "type": "array",
              "items": {
                "type": "string"
              },
              "markdownDescription": "Add to the visible files set with `base`. Paths must be relative to the containing collection `path`."
            },
            "exclude": {
              "description": "Remove from the visible files set with `base`. Paths must be relative to the containing collection `path`.",
              "type": "array",
              "items": {
                "type": "string"
              },
              "markdownDescription": "Remove from the visible files set with `base`. Paths must be relative to the containing collection `path`."
            }
          },
          "additionalProperties": false
        },
        {
          "type": "string",
          "enum": [
            "none",
            "all",
            "strict"
          ]
        }
      ],
      "description": "Controls which files are displayed in the collection list. Does not change which files are assigned to this collection.",
      "markdownDescription": "Controls which files are displayed in the collection list. Does not change which files are assigned to this collection."
    },
    "singular_key": {
      "type": "string",
      "description": "Overrides the default singular input key of the collection. This is used for naming conventions for select and multiselect inputs.",
      "markdownDescription": "Overrides the default singular input key of the collection. This is used for naming conventions for select and multiselect inputs."
    },
    "output": {
      "type": "boolean",
      "description": "Specifies whether this collection's source files build to output files. Defaults to false.",
      "markdownDescription": "Specifies whether this collection's source files build to output files. Defaults to false."
    },
    "collection_groups": {
      "title": "Collection Groups",
      "type": "array",
      "items": {
        "$ref": "#/$defs/CollectionGroup"
      }
    },
    "CollectionGroup": {
      "type": "object",
      "properties": {
        "heading": {
          "type": "string",
          "description": "Short, descriptive label for this group of Collections.",
          "markdownDescription": "Short, descriptive label for this group of Collections."
        },
        "collections": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The collections shown in the sidebar for this group. Collections here are referenced by their key within `collections_config`.",
          "markdownDescription": "The collections shown in the sidebar for this group. Collections here are referenced by their key within `collections_config`."
        }
      },
      "required": [
        "heading",
        "collections"
      ],
      "title": "Collection Group",
      "additionalProperties": false
    },
    "base_url": {
      "type": "string"
    },
    "file_config": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/FileConfigEntry"
      }
    },
    "FileConfigEntry": {
      "type": "object",
      "properties": {
        "glob": {
          "anyOf": [
            {
              "type": "array",
              "items": {
                "type": "string"
              },
              "title": "Glob Array"
            },
            {
              "type": "string",
              "title": "Glob"
            }
          ],
          "description": "The glob pattern(s) targeting a path to one or more files.",
          "markdownDescription": "The glob pattern(s) targeting a path to one or more files."
        },
        "_inputs": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs"
            }
          ]
        },
        "_inputs_from_glob": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs_from_glob"
            }
          ]
        },
        "_select_data": {
          "allOf": [
            {
              "$ref": "#/$defs/type._select_data"
            }
          ]
        },
        "_structures": {
          "allOf": [
            {
              "$ref": "#/$defs/type._structures"
            }
          ]
        },
        "_structures_from_glob": {
          "allOf": [
            {
              "$ref": "#/$defs/type._structures_from_glob"
            }
          ]
        },
        "_enabled_editors": {
          "$ref": "#/$defs/type._enabled_editors"
        },
        "_editables": {
          "$ref": "#/$defs/type._editables"
        },
        "_editables_from_glob": {
          "allOf": [
            {
              "$ref": "#/$defs/type._editables_from_glob"
            }
          ]
        }
      },
      "required": [
        "glob"
      ],
      "additionalProperties": false
    },
    "editor": {
      "type": "object",
      "properties": {
        "default_path": {
          "$ref": "#/$defs/editor.default_path"
        }
      },
      "required": [
        "default_path"
      ],
      "additionalProperties": false
    },
    "editor.default_path": {
      "default": "/",
      "type": "string"
    },
    "source_editor": {
      "type": "object",
      "properties": {
        "tab_size": {
          "default": 2,
          "type": "number"
        },
        "theme": {
          "default": "basic_dark",
          "allOf": [
            {
              "$ref": "#/$defs/Theme"
            }
          ]
        },
        "show_gutter": {
          "default": true,
          "type": "boolean"
        },
        "soft_wrap": {
          "default": false,
          "type": "boolean"
        }
      },
      "additionalProperties": false
    },
    "commit_templates": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "description": "Used to identify a commit template when multiple commit templates are available.",
            "type": "string",
            "markdownDescription": "Used to identify a commit template when multiple commit templates are available."
          },
          "template_string": {
            "description": "Set the string for the commit template. This will only be used if `template_path` is not set.",
            "type": "string",
            "markdownDescription": "Set the string for the commit template. This will only be used if `template_path` is not set."
          },
          "template_path": {
            "description": "Sets the path for a file containing your commit template. The file path should be relative to the root directory.",
            "type": "string",
            "markdownDescription": "Sets the path for a file containing your commit template. The file path should be relative to the root directory."
          },
          "_inputs": {
            "allOf": [
              {
                "$ref": "#/$defs/type._inputs"
              }
            ]
          },
          "extra_data": {
            "description": "Define additional template strings, for building nested templates.",
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "markdownDescription": "Define additional template strings, for building nested templates.",
            "additionalProperties": {
              "type": "string"
            }
          },
          "wrap_width": {
            "description": "Sets the width of the text wrap in the editor.",
            "type": "number",
            "markdownDescription": "Sets the width of the text wrap in the editor."
          }
        },
        "markdownDescription": "A template for commit messages when saving changes.",
        "title": "Commit Template",
        "description": "A template for commit messages when saving changes.",
        "additionalProperties": false
      }
    },
    "upstream_commit_template": {
      "type": "string"
    },
    "markdown": {
      "type": "object",
      "properties": {
        "engine": {
          "description": "The flavor of Markdown to use to convert between HTML and Markdown.",
          "default": "commonmark",
          "type": "string",
          "enum": [
            "commonmark",
            "kramdown"
          ],
          "markdownDescription": "The flavor of Markdown to use to convert between HTML and Markdown."
        },
        "options": {
          "type": "object",
          "properties": {
            "html": {
              "description": "Output HTML tags from source.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Output HTML tags from source."
            },
            "xhtml": {
              "description": "Use `/` to close single tags (e.g. `<br />`).",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Use `/` to close single tags (e.g. `<br />`)."
            },
            "breaks": {
              "description": "Convert `\\n` in paragraphs into `<br>`.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Convert `\\n` in paragraphs into `<br>`."
            },
            "linkify": {
              "description": "Autoconvert URL-like text to links.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Autoconvert URL-like text to links."
            },
            "typographer": {
              "description": "Enable some language-neutral replacement, as well as quotes beautification.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Enable some language-neutral replacement, as well as quotes beautification."
            },
            "quotes": {
              "description": "Double + single quotes replacement pairs, when typographer enabled and smartquotes on. For example, you can use \"«»„\"\" for Russian, \"\"„\"‚\"\" for German, and [\"«\\xA0\", \"\\xA0»\", \"‹\\xA0\", \"\\xA0›\"] for French (including `nbsp`).",
              "type": "string",
              "markdownDescription": "Double + single quotes replacement pairs, when typographer enabled and smartquotes on. For example, you can use \"«»„\"\" for Russian, \"\"„\"‚\"\" for German, and [\"«\\xA0\", \"\\xA0»\", \"‹\\xA0\", \"\\xA0›\"] for French (including `nbsp`)."
            },
            "spaced_lists": {
              "description": "Output lists with an extra space in Markdown.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Output lists with an extra space in Markdown."
            },
            "sentence_per_line": {
              "description": "Add linebreaks between sentences in Markdown.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Add linebreaks between sentences in Markdown."
            },
            "gfm": {
              "description": "Enable GFM mode.",
              "type": "boolean",
              "markdownDescription": "Enable GFM mode."
            },
            "code_block_fences": {
              "description": "Determines which style of code block fences to use.",
              "type": "string",
              "enum": [
                "```",
                "~~~"
              ],
              "markdownDescription": "Determines which style of code block fences to use."
            },
            "treat_indentation_as_code": {
              "description": "Determines whether 4 spaces on indentation should be read as a code block.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Determines whether 4 spaces on indentation should be read as a code block."
            },
            "escape_snippets_in_code_blocks": {
              "description": "Render snippets as plain text within code blocks.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Render snippets as plain text within code blocks."
            },
            "table": {
              "description": "Output tables in Markdown format.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Output tables in Markdown format."
            },
            "strikethrough": {
              "description": "Output strikes in wrapped in double tildes (e.g. `~~strike~~`).",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Output strikes in wrapped in double tildes (e.g. `~~strike~~`)."
            },
            "subscript": {
              "description": "Output subscript in wrapped in tildes (e.g. `~sub~`).",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Output subscript in wrapped in tildes (e.g. `~sub~`)."
            },
            "superscript": {
              "description": "Output superscript in wrapped in carets (e.g. `^super^`).",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Output superscript in wrapped in carets (e.g. `^super^`)."
            },
            "heading_ids": {
              "description": "Generate IDs for headings.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Generate IDs for headings."
            },
            "attributes": {
              "description": "Save element attributes in Markdown format instead of converting to HTML.",
              "default": false,
              "type": "boolean",
              "markdownDescription": "Save element attributes in Markdown format instead of converting to HTML."
            },
            "attribute_elements": {
              "description": "Define positioning behavior of Markdown attributes for different elements.",
              "type": "object",
              "properties": {
                "inline": {
                  "allOf": [
                    {
                      "$ref": "#/$defs/AttributeListPosition"
                    }
                  ]
                },
                "block": {
                  "allOf": [
                    {
                      "$ref": "#/$defs/AttributeListPosition"
                    }
                  ]
                }
              },
              "markdownDescription": "Define positioning behavior of Markdown attributes for different elements.",
              "title": "Markdown Attribute Element Options",
              "additionalProperties": {
                "$ref": "#/$defs/AttributeListPosition"
              }
            }
          },
          "additionalProperties": false
        }
      },
      "markdownDescription": "Configuration for Markdown processing engines and formatting options.",
      "title": "Markdown Settings",
      "description": "Configuration for Markdown processing engines and formatting options.",
      "additionalProperties": false
    },
    "AttributeListPosition": {
      "type": "string",
      "enum": [
        "none",
        "right",
        "space right",
        "below",
        "newline below",
        "right-of-prefix"
      ],
      "title": "Attribute List Position",
      "description": "Positioning options for Markdown attribute elements.",
      "markdownDescription": "Positioning options for Markdown attribute elements."
    },
    "type._snippets": {
      "title": "Snippets",
      "description": "Configuration for custom snippets.",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "markdownDescription": "Configuration for custom snippets.",
      "additionalProperties": {
        "$ref": "#/$defs/type.snippet"
      }
    },
    "type.snippet": {
      "type": "object",
      "properties": {
        "_inputs": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs"
            }
          ]
        },
        "_inputs_from_glob": {
          "allOf": [
            {
              "$ref": "#/$defs/type._inputs_from_glob"
            }
          ]
        },
        "_select_data": {
          "allOf": [
            {
              "$ref": "#/$defs/type._select_data"
            }
          ]
        },
        "_structures": {
          "allOf": [
            {
              "$ref": "#/$defs/type._structures"
            }
          ]
        },
        "_structures_from_glob": {
          "allOf": [
            {
              "$ref": "#/$defs/type._structures_from_glob"
            }
          ]
        },
        "preview": {
          "allOf": [
            {
              "$ref": "#/$defs/type.preview"
            }
          ]
        },
        "picker_preview": {
          "allOf": [
            {
              "$ref": "#/$defs/type.picker_preview"
            }
          ]
        },
        "snippet": {
          "description": "The snippet string contains the text to match for your snippet, with any dynamic sections represented using a placeholder in double square brackets.",
          "type": "string",
          "markdownDescription": "The snippet string contains the text to match for your snippet, with any dynamic sections represented using a placeholder in double square brackets."
        },
        "template": {
          "description": "The template that this snippet should inherit, out of the available Snippet Templates.",
          "type": "string",
          "markdownDescription": "The template that this snippet should inherit, out of the available Snippet Templates."
        },
        "inline": {
          "description": "Whether this snippet can appear inline (within a sentence). Defaults to false, which will treat this snippet as a block-level element in the content editor.",
          "default": false,
          "type": "boolean",
          "markdownDescription": "Whether this snippet can appear inline (within a sentence). Defaults to false, which will treat this snippet as a block-level element in the content editor."
        },
        "view": {
          "description": "Controls how selected items are rendered. Defaults to 'card', or 'inline' if `inline` is true.",
          "type": "string",
          "enum": [
            "card",
            "inline",
            "gallery"
          ],
          "markdownDescription": "Controls how selected items are rendered. Defaults to 'card', or 'inline' if `inline` is true."
        },
        "strict_whitespace": {
          "description": "Whether this snippet treats whitespace as-is or not.",
          "type": "boolean",
          "markdownDescription": "Whether this snippet treats whitespace as-is or not."
        },
        "definitions": {
          "description": "The variables required for the selected template.",
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "markdownDescription": "The variables required for the selected template.",
          "additionalProperties": {}
        },
        "alternate_formats": {
          "$ref": "#/$defs/SnippetAlternateFormats"
        },
        "params": {
          "title": "Parser Config",
          "description": "The parameters of this snippet.",
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "markdownDescription": "The parameters of this snippet.",
          "additionalProperties": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "parser": {
                    "type": "string",
                    "const": "argument_list"
                  },
                  "options": {
                    "type": "object",
                    "properties": {
                      "models": {
                        "type": "array",
                        "items": {
                          "$ref": "#/$defs/type.snippet-model"
                        }
                      },
                      "format": {
                        "$ref": "#/$defs/type.snippet-format"
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": [
                  "parser",
                  "options"
                ],
                "title": "Argument List Parser Config",
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "parser": {
                    "type": "string",
                    "const": "argument"
                  },
                  "options": {
                    "type": "object",
                    "properties": {
                      "model": {
                        "$ref": "#/$defs/type.snippet-model"
                      },
                      "format": {
                        "$ref": "#/$defs/type.snippet-format"
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": [
                  "parser",
                  "options"
                ],
                "title": "Argument Parser Config",
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "parser": {
                    "type": "string",
                    "const": "content"
                  },
                  "options": {
                    "type": "object",
                    "properties": {
                      "editor_key": {
                        "type": "string"
                      },
                      "indented_by": {
                        "type": "string"
                      },
                      "default": {
                        "type": "string"
                      },
                      "trim_text": {
                        "type": "boolean"
                      },
                      "allow_nested": {
                        "type": "boolean"
                      },
                      "raw": {
                        "type": "boolean"
                      },
                      "forbidden_tokens": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "optional": {
                        "type": "boolean"
                      },
                      "allow_leading": {
                        "type": "boolean"
                      },
                      "escape_indented_blocks": {
                        "default": false,
                        "type": "boolean"
                      },
                      "parse_newline_character": {
                        "default": false,
                        "type": "boolean"
                      },
                      "ignore_unpaired_backticks": {
                        "default": true,
                        "type": "boolean"
                      },
                      "escape_fenced_blocks": {
                        "default": false,
                        "type": "boolean"
                      },
                      "style": {
                        "$ref": "#/$defs/type.snippet-style"
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": [
                  "parser",
                  "options"
                ],
                "title": "Content Parser Config",
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "parser": {
                    "type": "string",
                    "const": "key_values"
                  },
                  "options": {
                    "type": "object",
                    "properties": {
                      "models": {
                        "type": "array",
                        "items": {
                          "$ref": "#/$defs/type.snippet-model"
                        }
                      },
                      "format": {
                        "$ref": "#/$defs/type.snippet-format"
                      },
                      "style": {
                        "$ref": "#/$defs/type.snippet-style"
                      }
                    },
                    "required": [
                      "models"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "parser"
                ],
                "title": "Key Value List Parser Config",
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "parser": {
                    "type": "string",
                    "const": "literal"
                  },
                  "options": {
                    "type": "object",
                    "properties": {
                      "literal": {
                        "type": "string"
                      },
                      "format": {
                        "type": "object",
                        "properties": {
                          "string_boundary": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "additionalProperties": false
                      }
                    },
                    "required": [
                      "literal"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "parser",
                  "options"
                ],
                "title": "Literal Parser Config",
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "parser": {
                    "type": "string",
                    "const": "optional"
                  },
                  "options": {
                    "type": "object",
                    "properties": {
                      "snippet": {
                        "type": "string"
                      },
                      "remove_empty": {
                        "type": "boolean"
                      }
                    },
                    "required": [
                      "snippet"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "parser",
                  "options"
                ],
                "title": "Optional Parser Config",
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "parser": {
                    "type": "string",
                    "const": "repeating_literal"
                  },
                  "options": {
                    "type": "object",
                    "properties": {
                      "literal": {
                        "type": "string"
                      },
                      "default": {
                        "type": "number"
                      },
                      "minimum": {
                        "type": "number"
                      },
                      "editor_key": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "literal"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "parser",
                  "options"
                ],
                "title": "Repeating Literal Parser Config",
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "parser": {
                    "type": "string",
                    "const": "repeating"
                  },
                  "options": {
                    "type": "object",
                    "properties": {
                      "snippet": {
                        "type": "string"
                      },
                      "editor_key": {
                        "type": "string"
                      },
                      "output_delimiter": {
                        "type": "string"
                      },
                      "default_length": {
                        "type": "number"
                      },
                      "style": {
                        "$ref": "#/$defs/type.snippet-style"
                      },
                      "optional": {
                        "type": "boolean"
                      }
                    },
                    "required": [
                      "snippet"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "parser",
                  "options"
                ],
                "title": "Repeating Parser Config",
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "parser": {
                    "type": "string",
                    "const": "wrapper"
                  },
                  "options": {
                    "type": "object",
                    "properties": {
                      "snippet": {
                        "type": "string"
                      },
                      "remove_empty": {
                        "type": "boolean"
                      },
                      "style": {
                        "$ref": "#/$defs/type.snippet-style"
                      }
                    },
                    "required": [
                      "snippet"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "parser",
                  "options"
                ],
                "title": "Wrapper Parser Config",
                "additionalProperties": false
              }
            ]
          }
        }
      },
      "markdownDescription": "A snippet configuration.",
      "title": "Snippet",
      "description": "A snippet configuration.",
      "additionalProperties": false
    },
    "SnippetAlternateFormats": {
      "description": "Alternate configurations for this snippet.",
      "type": "array",
      "items": {
        "$ref": "#/$defs/type.snippet"
      },
      "markdownDescription": "Alternate configurations for this snippet."
    },
    "type.snippet-model": {
      "title": "Snippet Model",
      "type": "object",
      "properties": {
        "source_key": {
          "type": "string"
        },
        "editor_key": {
          "type": "string"
        },
        "remove_empty": {
          "default": false,
          "type": "boolean"
        },
        "optional": {
          "default": false,
          "type": "boolean"
        },
        "type": {
          "type": "string",
          "enum": [
            "array",
            "object",
            "string",
            "boolean",
            "number"
          ]
        },
        "allowed_values": {
          "type": "array",
          "items": {}
        },
        "implied_boolean": {
          "default": false,
          "type": "boolean"
        },
        "default": {}
      },
      "additionalProperties": false
    },
    "type.snippet-format": {
      "title": "Snippet Format",
      "type": "object",
      "properties": {
        "root_boundary": {
          "type": "object",
          "properties": {
            "start": {
              "default": "",
              "type": "string"
            },
            "end": {
              "default": "",
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "root_value_boundary": {
          "type": "object",
          "properties": {
            "start": {
              "default": "",
              "type": "string"
            },
            "end": {
              "default": "",
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "root_value_boundary_optional": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": "boolean"
          }
        },
        "root_value_delimiter": {
          "type": "string"
        },
        "root_pair_delimiter": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "remove_empty_root_boundary": {
          "type": "boolean"
        },
        "object_boundary": {
          "type": "object",
          "properties": {
            "start": {
              "default": "",
              "type": "string"
            },
            "end": {
              "default": "",
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "object_value_delimiter": {
          "type": "string"
        },
        "object_pair_delimiter": {
          "type": "string"
        },
        "array_boundary": {
          "type": "object",
          "properties": {
            "start": {
              "default": "",
              "type": "string"
            },
            "end": {
              "default": "",
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "array_delimiter": {
          "type": "string"
        },
        "string_boundary": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "string_escape_character": {
          "type": "string"
        },
        "allow_booleans": {
          "type": "boolean"
        },
        "allow_numbers": {
          "type": "boolean"
        },
        "allow_implied_values": {
          "type": "boolean"
        },
        "allow_null": {
          "type": "boolean"
        },
        "forbidden_tokens": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "allowed_string_cases": {
          "type": "object",
          "properties": {
            "any": {
              "type": "boolean"
            },
            "leading_upper": {
              "type": "boolean"
            },
            "leading_lower": {
              "type": "boolean"
            },
            "lower": {
              "type": "boolean"
            },
            "upper": {
              "type": "boolean"
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    "type.snippet-style": {
      "title": "Snippet Style",
      "type": "object",
      "properties": {
        "output": {
          "type": "string",
          "enum": [
            "legacy",
            "inline",
            "block"
          ]
        },
        "inline": {
          "type": "object",
          "properties": {
            "leading": {
              "type": "string"
            },
            "trailing": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "block": {
          "type": "object",
          "properties": {
            "leading": {
              "type": "string"
            },
            "trailing": {
              "type": "string"
            },
            "indent": {
              "type": "string"
            }
          },
          "additionalProperties": false
        }
      },
      "required": [
        "output"
      ],
      "additionalProperties": false
    },
    "type._snippets_imports": {
      "type": "object",
      "properties": {
        "hugo": {
          "$ref": "#/$defs/_snippets_imports.hugo"
        },
        "jekyll": {
          "$ref": "#/$defs/_snippets_imports.jekyll"
        },
        "mdx": {
          "$ref": "#/$defs/_snippets_imports.mdx"
        },
        "eleventy_liquid": {
          "$ref": "#/$defs/_snippets_imports.eleventy_liquid"
        },
        "eleventy_nunjucks": {
          "$ref": "#/$defs/_snippets_imports.eleventy_nunjucks"
        },
        "markdoc": {
          "$ref": "#/$defs/_snippets_imports.markdoc"
        },
        "python_markdown_extensions": {
          "$ref": "#/$defs/_snippets_imports.python_markdown_extensions"
        },
        "docusaurus_mdx": {
          "$ref": "#/$defs/_snippets_imports.docusaurus_mdx"
        }
      },
      "title": "Snippets Imports",
      "additionalProperties": false
    },
    "_snippets_imports.hugo": {
      "uniqueItems": true,
      "anyOf": [
        {
          "$ref": "#/$defs/type._snippets_imports.*.(full-import)"
        },
        {
          "type": "object",
          "properties": {
            "exclude": {
              "$ref": "#/$defs/SnippetImportExclude"
            }
          },
          "required": [
            "exclude"
          ],
          "title": "Exclude List",
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "include": {
              "$ref": "#/$defs/SnippetImportInclude"
            }
          },
          "required": [
            "include"
          ],
          "title": "Include List",
          "additionalProperties": false
        }
      ]
    },
    "type._snippets_imports.*.(full-import)": {
      "type": "boolean",
      "title": "Full Import"
    },
    "SnippetImportExclude": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The list of excluded snippets. If unset, all snippets are excluded unless defined in `include`.",
      "markdownDescription": "The list of excluded snippets. If unset, all snippets are excluded unless defined in `include`."
    },
    "SnippetImportInclude": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The list of included snippets. If unset, all snippets are included unless defined in `exclude`.",
      "markdownDescription": "The list of included snippets. If unset, all snippets are included unless defined in `exclude`."
    },
    "_snippets_imports.jekyll": {
      "uniqueItems": true,
      "anyOf": [
        {
          "$ref": "#/$defs/type._snippets_imports.*.(full-import)"
        },
        {
          "type": "object",
          "properties": {
            "exclude": {
              "$ref": "#/$defs/SnippetImportExclude"
            }
          },
          "required": [
            "exclude"
          ],
          "title": "Exclude List",
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "include": {
              "$ref": "#/$defs/SnippetImportInclude"
            }
          },
          "required": [
            "include"
          ],
          "title": "Include List",
          "additionalProperties": false
        }
      ]
    },
    "_snippets_imports.mdx": {
      "uniqueItems": true,
      "anyOf": [
        {
          "$ref": "#/$defs/type._snippets_imports.*.(full-import)"
        },
        {
          "type": "object",
          "properties": {
            "exclude": {
              "$ref": "#/$defs/SnippetImportExclude"
            }
          },
          "required": [
            "exclude"
          ],
          "title": "Exclude List",
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "include": {
              "$ref": "#/$defs/SnippetImportInclude"
            }
          },
          "required": [
            "include"
          ],
          "title": "Include List",
          "additionalProperties": false
        }
      ]
    },
    "_snippets_imports.eleventy_liquid": {
      "uniqueItems": true,
      "anyOf": [
        {
          "$ref": "#/$defs/type._snippets_imports.*.(full-import)"
        },
        {
          "type": "object",
          "properties": {
            "exclude": {
              "$ref": "#/$defs/SnippetImportExclude"
            }
          },
          "required": [
            "exclude"
          ],
          "title": "Exclude List",
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "include": {
              "$ref": "#/$defs/SnippetImportInclude"
            }
          },
          "required": [
            "include"
          ],
          "title": "Include List",
          "additionalProperties": false
        }
      ]
    },
    "_snippets_imports.eleventy_nunjucks": {
      "uniqueItems": true,
      "anyOf": [
        {
          "$ref": "#/$defs/type._snippets_imports.*.(full-import)"
        },
        {
          "type": "object",
          "properties": {
            "exclude": {
              "$ref": "#/$defs/SnippetImportExclude"
            }
          },
          "required": [
            "exclude"
          ],
          "title": "Exclude List",
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "include": {
              "$ref": "#/$defs/SnippetImportInclude"
            }
          },
          "required": [
            "include"
          ],
          "title": "Include List",
          "additionalProperties": false
        }
      ]
    },
    "_snippets_imports.markdoc": {
      "uniqueItems": true,
      "anyOf": [
        {
          "$ref": "#/$defs/type._snippets_imports.*.(full-import)"
        },
        {
          "type": "object",
          "properties": {
            "exclude": {
              "$ref": "#/$defs/SnippetImportExclude"
            }
          },
          "required": [
            "exclude"
          ],
          "title": "Exclude List",
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "include": {
              "$ref": "#/$defs/SnippetImportInclude"
            }
          },
          "required": [
            "include"
          ],
          "title": "Include List",
          "additionalProperties": false
        }
      ]
    },
    "_snippets_imports.python_markdown_extensions": {
      "uniqueItems": true,
      "anyOf": [
        {
          "$ref": "#/$defs/type._snippets_imports.*.(full-import)"
        },
        {
          "type": "object",
          "properties": {
            "exclude": {
              "$ref": "#/$defs/SnippetImportExclude"
            }
          },
          "required": [
            "exclude"
          ],
          "title": "Exclude List",
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "include": {
              "$ref": "#/$defs/SnippetImportInclude"
            }
          },
          "required": [
            "include"
          ],
          "title": "Include List",
          "additionalProperties": false
        }
      ]
    },
    "_snippets_imports.docusaurus_mdx": {
      "uniqueItems": true,
      "anyOf": [
        {
          "$ref": "#/$defs/type._snippets_imports.*.(full-import)"
        },
        {
          "type": "object",
          "properties": {
            "exclude": {
              "$ref": "#/$defs/SnippetImportExclude"
            }
          },
          "required": [
            "exclude"
          ],
          "title": "Exclude List",
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "include": {
              "$ref": "#/$defs/SnippetImportInclude"
            }
          },
          "required": [
            "include"
          ],
          "title": "Include List",
          "additionalProperties": false
        }
      ]
    },
    "type._snippets_templates": {
      "title": "Snippets Templates",
      "description": "Extended option used when creating more complex custom snippets.",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "markdownDescription": "Extended option used when creating more complex custom snippets.",
      "additionalProperties": {
        "$ref": "#/$defs/type.snippet"
      }
    },
    "type._snippets_definitions": {
      "title": "Snippets Definitions",
      "description": "A record of reusable values that can be referenced in snippet templates. Values are substituted using { ref: \"key\" } for direct replacement or { spread_ref: \"key\" } for spreading arrays/objects.",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "markdownDescription": "A record of reusable values that can be referenced in snippet templates. Values are substituted using { ref: \"key\" } for direct replacement or { spread_ref: \"key\" } for spreading arrays/objects.",
      "additionalProperties": {
        "$ref": "#/$defs/type.snippet-definition-value"
      }
    },
    "type.snippet-definition-value": {
      "anyOf": [
        {
          "$ref": "#/$defs/type.snippet-format"
        },
        {
          "$ref": "#/$defs/type.snippet-model"
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/$defs/type.snippet-model"
          },
          "title": "Parser Model Array",
          "description": "An array of model configurations, typically used for positional_args or named_args.",
          "markdownDescription": "An array of model configurations, typically used for positional_args or named_args."
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/$defs/type.snippet-definition-select-value"
          },
          "title": "Select Values Array",
          "description": "An array of select options, typically used for language lists.",
          "markdownDescription": "An array of select options, typically used for language lists."
        },
        {
          "type": "string",
          "title": "String Value",
          "description": "A string value, commonly used for shortcode_name, tag_name, content_key, and similar definitions.",
          "markdownDescription": "A string value, commonly used for shortcode_name, tag_name, content_key, and similar definitions."
        },
        {
          "type": "number",
          "title": "Number Value",
          "description": "A numeric value.",
          "markdownDescription": "A numeric value."
        },
        {
          "type": "boolean",
          "title": "Boolean Value",
          "description": "A boolean value.",
          "markdownDescription": "A boolean value."
        },
        {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "String Array",
          "description": "An array of strings.",
          "markdownDescription": "An array of strings."
        }
      ],
      "title": "Snippet Definition Value",
      "description": "A reusable value that can be referenced in snippet templates via { ref: \"key\" } or { spread_ref: \"key\" }.",
      "markdownDescription": "A reusable value that can be referenced in snippet templates via { ref: \"key\" } or { spread_ref: \"key\" }."
    },
    "type.snippet-definition-select-value": {
      "type": "object",
      "properties": {
        "name": {
          "description": "The display name for this option.",
          "type": "string",
          "markdownDescription": "The display name for this option."
        },
        "value": {
          "anyOf": [
            {
              "type": "string",
              "title": "String"
            },
            {
              "type": "number",
              "title": "Number"
            },
            {
              "type": "boolean",
              "title": "Boolean"
            }
          ],
          "description": "The value for this option.",
          "markdownDescription": "The value for this option."
        }
      },
      "required": [
        "value"
      ],
      "markdownDescription": "A value option for select inputs, typically used in language lists.",
      "title": "Snippet Definition Select Value",
      "description": "A value option for select inputs, typically used in language lists.",
      "additionalProperties": false
    },
    "collections_config_override": {
      "description": "Prevents CloudCannon from automatically discovering collections for supported SSGs if true. Defaults to false.",
      "default": false,
      "type": "boolean",
      "markdownDescription": "Prevents CloudCannon from automatically discovering collections for supported SSGs if true. Defaults to false."
    }
  },
  "required": [
    "version"
  ]
}
