{
  "el-row": {
    "attributes": ["gutter", "type", "justify", "align", "tag"],
    "subtags": ["el-col"],
    "description": "A row in grid system"
  },
  "el-col": {
    "attributes": ["span", "offset", "push", "pull", "xs", "sm", "md", "lg", "xl", "tag"],
    "defaults": [":span"],
    "description": "A column in grid system"
  },
  "el-container": {
    "attributes": ["direction"],
    "subtags": ["el-header", "el-aside", "el-main", "el-footer"],
    "description": "wrapper container. When nested with a <el-header> or <el-footer>, all its child elements will be vertically arranged. Otherwise horizontally."
  },
  "el-header": {
    "attributes": ["height"],
    "description": "container for headers"
  },
  "el-aside": {
    "attributes": ["width"],
    "description": "container for side sections"
  },
  "el-main": {
    "description": "container for main sections"
  },
  "el-footer": {
    "attributes": ["height"],
    "description": "container for footers"
  },
  "el-icon": {
    "attributes": ["name"]
  },
  "el-button": {
    "attributes": ["type", "size", "plain", "loading", "disabled", "icon", "autofocus", "native-type", "round", "circle"],
    "defaults": ["type"],
    "description": "Commonly used button."
  },
  "el-button-group": {
    "subtags": ["el-button"],
    "description": "Displayed as a button group, can be used to group a series of similar operations"
  },
  "el-link": {
    "attributes": ["type", "underline", "disabled", "href", "icon"],
    "defaults": ["type"],
    "description": "Text hyperlink"
  },
  "el-space": {
    "attributes": ["alignment", "direction", "prefix-cls", "spacer", "size", "wrap"],
    "description": "provide unified space between each components"
  },
  "el-radio": {
    "attributes": ["model-value", "label", "disabled", "border", "size", "name", "update:model-value", "change"],
    "defaults": ["label"],
    "description": "Single selection among multiple options."
  },
  "el-radio-group": {
    "attributes": ["model-value", "size", "disabled", "text-color", "fill", "update:model-value", "change"],
    "defaults": ["v-model"],
    "subtags": ["el-radio", "el-radio-button"]
  },
  "el-radio-button": {
    "attributes": ["label", "disabled", "name"],
    "defaults": ["label"]
  },
  "el-checkbox": {
    "attributes": ["model-value", "label", "true-label", "false-label", "border", "size", "name", "checked", "indeterminate", "disabled", "update:model-value", "change"],
    "defaults": ["label"],
    "description": "A group of options for multiple choices."
  },
  "el-checkbox-group": {
    "attributes": ["model-value", "size", "fill", "text-color", "min", "max", "disabled", "update:model-value", "change"],
    "defaults": ["v-model"],
    "subtags": ["el-checkbox", "el-checkbox-button"]
  },
  "el-checkbox-button": {
    "attributes": ["label", "true-label", "false-label", "name", "checked", "disabled"],
    "defaults": ["label"]
  },
  "el-input": {
    "attributes": ["type", "model-value", "maxlength", "minlength", "show-word-limit", "placeholder", "show-password", "disabled", "size", "prefix-icon", "suffix-icon", "rows", "autosize", "autocomplete", "name", "readonly", "max", "min", "step", "resize", "autofocus", "form", "label", "tabindex", "validate-event", "clearable", "update:model-value", "blur", "focus", "change", "input", "clear"],
    "defaults": ["v-model", "placeholder"],
    "description": "Input data using mouse or keyboard."
  },
  "el-autocomplete": {
    "attributes": ["model-value", "value-key", "debounce", "placement", "placeholder", "clearable", "disabled", "fetch-suggestions", "popper-class", "trigger-on-focus", "on-icon-click", "select-when-unmatched", "label", "name", "prefix-icon", "suffix-icon", "hide-loading", "popper-append-to-body", "highlight-first-item", "update:model-value", "blur", "focus", "change", "input", "clear", "select"],
    "defaults": ["v-model", "placeholder"]
  },
  "el-input-number": {
    "attributes": ["model-value", "min", "max", "step", "step-strictly", "precision", "size", "disabled", "controls-position", "controls", "name", "label", "placeholder", "update:model-value", "change", "input", "blur", "focus"],
    "defaults": ["v-model", "placeholder"]
  },
  "el-select": {
    "attributes": ["model-value", "multiple", "disabled", "value-key", "size", "clearable", "collapse-tags", "multiple-limit", "name", "autocomplete", "placeholder", "filterable", "allow-create", "filter-method", "remote", "remote-method", "loading", "loading-text", "no-match-text", "no-data-text", "popper-class", "reserve-keyword", "default-first-option", "popper-append-to-body", "automatic-dropdown", "clear-icon", "update:model-value", "change", "visible-change", "remove-tag", "clear", "blur", "focus"],
    "defaults": ["v-model", "placeholder"],
    "subtags": ["el-option"],
    "description": "When there are plenty of options, use a drop-down menu to display and select desired ones."
  },
  "el-option-group": {
    "attributes": ["label", "disabled"],
    "defaults": ["v-for", ":key"],
    "subtags": ["el-option"]
  },
  "el-option": {
    "attributes": ["value", "label", "disabled", "blur", "focus"],
    "defaults": ["v-for", ":key"]
  },
  "el-cascader": {
    "attributes": ["model-value", "options", "props", "size", "placeholder", "disabled", "clearable", "show-all-levels", "collapse-tags", "separator", "filterable", "filter-method", "debounce", "before-filter", "popper-class", "update:model-value", "change", "expand-change", "blur", "focus", "visible-change", "remove-tag"],
    "defaults": [":options", "v-model"],
    "description": "If the options have a clear hierarchical structure, Cascader can be used to view and select them."
  },
  "el-cascader-panel": {
    "attributes": ["model-value", "options", "props", "update:model-value", "change", "close", "expand-change"],
    "description": "CascaderPanel is the core component of Cascader which has various of features such as single selection, multiple selection, dynamic loading and so on."
  },
  "el-switch": {
    "attributes": ["model-value", "disabled", "loading", "width", "active-icon-class", "inactive-icon-class", "active-text", "inactive-text", "active-value", "inactive-value", "active-color", "inactive-color", "name", "validate-event", "update:model-value", "change", "input"],
    "defaults": ["v-model"],
    "description": "Switch is used for switching between two opposing states."
  },
  "el-slider": {
    "attributes": ["model-value", "min", "max", "disabled", "step", "show-input", "show-input-controls", "input-size", "show-stops", "show-tooltip", "format-tooltip", "range", "vertical", "height", "label", "debounce", "tooltip-class", "marks", "update:model-value", "change"],
    "defaults": ["v-model"],
    "description": "Drag the slider within a fixed range."
  },
  "el-time-picker": {
    "attributes": ["model-value", "readonly", "disabled", "editable", "clearable", "size", "placeholder", "start-placeholder", "end-placeholder", "is-range", "arrow-control", "align", "popper-class", "range-separator", "default-value", "name", "prefix-icon", "clear-icon", "disabled-hours", "disabled-minutes", "disabled-seconds", "format", "update:model-value", "change", "blur", "focus"],
    "defaults": ["v-model", "placeholder"],
    "description": "Use Time Picker for time input"
  },
  "el-time-select": {
    "attributes": ["model-value", "editable", "clearable", "size", "placeholder", "name", "prefix-icon", "clear-icon", "start", "end", "step", "min-time", "max-time", "update:model-value", "change", "blur", "focus"],
    "defaults": ["v-model", "placeholder"],
    "description": "Use Time Select for time input"
  },
  "el-date-picker": {
    "attributes": ["model-value", "type", "readonly", "disabled", "editable", "clearable", "size", "placeholder", "start-placeholder", "end-placeholder", "is-range", "arrow-control", "align", "popper-class", "range-separator", "default-value", "default-time", "name", "prefix-icon", "clear-icon", "format", "validate-event", "disabled-date", "shortcuts", "time-arrow-control", "unlink-panels", "cell-class-name", "update:model-value", "change", "blur", "focus"],
    "defaults": ["v-model", "placeholder"],
    "description": "Use Date Picker for date input"
  },
  "el-upload": {
    "attributes": ["action", "headers", "multiple", "data", "name", "with-credentials", "show-file-list", "drag", "accept", "on-preview", "on-remove", "on-success", "on-error", "on-progress", "on-change", "before-upload", "before-remove", "list-type", "auto-upload", "file-list", "http-request", "disabled", "limit", "on-exceed"],
    "defaults": ["action"],
    "subtags": ["el-button"],
    "description": "Upload files by clicking or drag-and-drop"
  },
  "el-rate": {
    "attributes": ["model-value", "max", "disabled", "allow-half", "low-threshold", "high-threshold", "colors", "void-color", "disabled-void-color", "icon-classes", "void-icon-class", "disabled-void-icon-class", "show-text", "show-score", "text-color", "texts", "score-template", "update:model-value", "change"],
    "defaults": ["v-model"],
    "description": "Used for rating"
  },
  "el-color-picker": {
    "attributes": ["model-value", "disabled", "size", "show-alpha", "color-format", "popper-class", "predefine", "update:model-value", "change", "active-change"],
    "defaults": ["v-model"],
    "description": "Use Color Picker for color input"
  },
  "el-transfer": {
    "attributes": ["model-value", "data", "filterable", "filter-placeholder", "filter-method", "target-order", "titles", "button-texts", "render-content", "format", "props", "left-default-checked", "right-default-checked", "update:model-value", "change", "left-check-change", "right-check-change"],
    "defaults": ["v-model", ":data"]
  },
  "el-form": {
    "attributes": ["model", "rules", "inline", "label-position", "label-width", "label-suffix", "hide-required-asterisk", "show-message", "inline-message", "status-icon", "validate-on-rule-change", "size", "disabled", "validate"],
    "defaults": [":model"],
    "subtags": ["el-form-item"],
    "description": "Form consists of `input`, `radio`, `select`, `checkbox` and so on. With form, you can collect, verify and submit data."
  },
  "el-form-item": {
    "attributes": ["label", "prop", "label-width", "required", "rules", "error", "show-message", "inline-message", "size"],
    "defaults": ["label"]
  },
  "el-table": {
    "attributes": ["data", "height", "max-height", "stripe", "border", "size", "fit", "show-header", "highlight-current-row", "current-row-key", "row-class-name", "cell-class-name", "cell-style", "header-row-class-name", "header-row-style", "header-cell-name", "header-cell-style", "row-style", "row-key", "empty-text", "default-expand-all", "expand-row-keys", "default-sort", "tooltip-effect", "show-summary", "sum-text", "summary-method", "span-method", "select-on-indeterminate", "indent", "lazy", "load", "tree-props", "select", "select-all", "selection-change", "cell-mouse-enter", "cell-mouse-leave", "cell-click", "cell-dbclick", "row-click", "row-contextmenu", "row-dbclick", "header-click", "header-contextmenu", "sort-change", "filter-change", "current-change", "header-draggend", "expand-change"],
    "defaults": [":data"],
    "subtags": ["el-table-column"],
    "description": "Display multiple data with similar format. You can sort, filter, compare your data in a table."
  },
  "el-table-column": {
    "attributes": ["type", "column-key", "index", "label", "prop", "width", "min-width", "fixed", "render-header", "sortable", "sort-method", "sort-by", "sort-orders", "resizable", "formatter", "show-overflow-tooltip", "align", "header-align", "class-name", "label-class-name", "selectable", "reserve-selection", "filters", "filter-placement", "filter-multiple", "filter-method", "filtered-value"],
    "defaults": ["label"]
  },
  "el-tag": {
    "attributes": ["type", "closable", "disable-transitions", "hit", "color", "size", "effect", "click", "close"],
    "defaults": ["type"],
    "description": "Used for marking and selection."
  },
  "el-progress": {
    "attributes": ["percentage", "type", "stroke-width", "text-inside", "status", "color", "width", "show-text", "stroke-linecap", "format"],
    "defaults": ["percentage"],
    "description": "Progress is used to show the progress of current operation, and inform the user the current status."
  },
  "el-tree": {
    "attributes": ["data", "empty-text", "node-key", "props", "render-after-expand", "load", "render-content", "highlight-current", "current-node-key", "default-expand-all", "expand-on-click-node", "check-on-click-node", "auto-expand-parent", "default-expanded-keys", "show-checkbox", "check-strictly", "default-checked-keys", "filter-node-method", "accordion", "indent", "icon-class", "lazy", "draggable", "allow-drag", "allow-drop", "node-click", "node-contextmenu", "check-change", "check", "current-change", "node-expand", "node-collapse", "node-drag-start", "node-drag-enter", "node-drag-leave", "node-drag-over", "node-drag-end", "node-drop"],
    "defaults": [":data"],
    "description": "Display a set of data with hierarchies."
  },
  "el-pagination": {
    "attributes": ["small", "background", "page-size", "total", "page-count", "pager-count", "current-page", "layout", "page-sizes", "popper-class", "prev-text", "next-text", "disabled", "hide-on-single-page", "update:current-page", "update:page-size", "size-change", "currentPage", "prev-click", "next-click"],
    "defaults": ["v-model:current-page", "v-model:page-size", ":total"],
    "description": "If you have too much data to display in one page, use pagination."
  },
  "el-badge": {
    "attributes": ["value", "max", "is-dot", "hidden", "type"],
    "defaults": ["value"],
    "description": "A number or status mark on buttons and icons."
  },
  "el-skeleton": {
    "attributes": ["animated", "count", "loading", "rows", "throttle"],
    "description": "When loading data, and you need a rich experience for visual and interactions for your end users"
  },
  "el-skeleton-item": {
    "attributes": ["variant"]
  },
  "el-empty": {
    "attributes": ["image", "image-size", "description"],
    "description": "Placeholder hints for empty states"
  },
  "el-alert": {
    "attributes": ["title", "type", "description", "closable", "center", "close-text", "show-icon", "effect", "close"],
    "defaults": ["type", "title"],
    "description": "Displays important alert messages."
  },
  "el-affix": {
    "attributes": ["offset", "position", "target", "z-index", "change", "scroll"]
  },
  "el-menu": {
    "attributes": ["mode", "collapse", "background-color", "text-color", "active-text-color", "default-active", "default-openeds", "unique-opened", "menu-trigger", "router", "collapse-transition", "select", "open", "close"],
    "defaults": ["default-active"],
    "subtags": ["el-submenu", "el-menu-item"],
    "description": "Menu that provides navigation for your website"
  },
  "el-submenu": {
    "attributes": ["index", "popper-class", "show-timeout", "hide-timeout", "disabled", "popper-append-to-body"],
    "defaults": ["index"],
    "subtags": ["el-menu-item"]
  },
  "el-menu-item-group": {
    "attributes": ["title"],
    "subtags": ["el-menu-item"]
  },
  "el-menu-item": {
    "attributes": ["index", "route", "disabled"],
    "defaults": ["index"]
  },
  "el-tabs": {
    "attributes": ["model-value", "type", "closable", "addable", "editable", "tab-position", "stretch", "before-leave", "update:model-value", "tab-click", "tab-remove", "tab-add", "edit", "input"],
    "subtags": ["el-tab-pane"],
    "defaults": ["v-model"],
    "description": "Divide data collections which are related yet belong to different types."
  },
  "el-tab-pane": {
    "attributes": ["label", "disabled", "name", "closable", "lazy"]
  },
  "el-breadcrumb": {
    "attributes": ["separator", "separator-class"],
    "defaults": ["separator"],
    "subtags": ["el-breadcrumb-item"],
    "description": "Displays the location of the current page, making it easier to browser back."
  },
  "el-breadcrumb-item": {
    "attributes": ["to", "replace"]
  },
  "el-page-header": {
    "attributes": ["title", "content", "back"]
  },
  "el-dropdown": {
    "attributes": ["type", "szie", "split-button", "placement", "trigger", "hide-on-click", "show-timeout", "hide-timeout", "tabindex", "effect", "click", "command", "visible-change"],
    "subtags": ["el-dropdown-menu"],
    "description": "Toggleable menu for displaying lists of links and actions."
  },
  "el-dropdown-menu": {
    "subtags": ["el-dropdown-item"]
  },
  "el-dropdown-item": {
    "attributes": ["command", "disabled", "divided", "icon"]
  },
  "el-steps": {
    "attributes": ["space", "direction", "active", "process-status", "finish-status", "align-center", "simple"],
    "defaults": [":space", ":active"],
    "subtags": ["el-step"],
    "description": "Guide the user to complete tasks in accordance with the process. Its steps can be set according to the actual application scenario and the number of the steps can't be less than 2."
  },
  "el-step": {
    "attributes": ["title", "description", "icon", "status"],
    "defaults": ["title"]
  },
  "el-dialog": {
    "attributes": ["model-value", "title", "top", "width", "fullscreen", "modal", "append-to-body", "lock-scroll", "custom-class", "open-delay", "close-delay", "close-on-click-modal", "close-on-press-escape", "show-close", "before-close", "center", "destroy-on-close", "modal-class", "z-index", "update:model-value", "close", "closed", "open", "opened"],
    "defaults": ["v-model", "title"],
    "description": "Informs users while preserving the current page state."
  },
  "el-tooltip": {
    "attributes": ["model-value", "effect", "content", "placement", "disabled", "offset", "transition", "visible-arrow", "popper-options", "open-delay", "manual", "popper-class", "enterable", "hide-after", "tabindex", "append-to-body", "update:model-value"],
    "defaults": ["content", "placement"],
    "description": "Display prompt information for mouse hover."
  },
  "el-popover": {
    "attributes": ["trigger", "title", "content", "width", "placement", "disabled", "visible", "offset", "transition", "show-arrow", "popper-options", "popper-class", "open-delay", "close-delay", "tabindex", "update:visible", "show", "hide", "after-enter", "after-leave"],
    "defaults": ["placement"]
  },
  "el-popconfirm": {
    "attributes": ["title", "confirm-button-text", "cancel-button-text", "confirm-button-type", "cancel-button-type", "icon", "icon-color", "hide-icon", "confirm", "cancel"],
    "description": "A simple confirmation dialog of an element click action"
  },
  "el-card": {
    "attributes": ["header", "body-style", "shadow"],
    "description": "Integrate information in a card container."
  },
  "el-carousel": {
    "attributes": ["height", "initial-index", "trigger", "autoplay", "interval", "indicator-position", "arrow", "type", "loop", "direction", "change"],
    "subtags": ["el-carousel-item"],
    "description": "Loop a series of images or texts in a limited space"
  },
  "el-carousel-item": {
    "attributes": ["name", "label"]
  },
  "el-collapse": {
    "attributes": ["model-value", "accordion", "update:model-value", "change"],
    "subtags": ["el-collapse-item"],
    "defaults": ["v-model"],
    "description": "Use Collapse to store contents."
  },
  "el-collapse-item": {
    "attributes": ["name", "title", "disabled"],
    "defaults": ["name", "title"]
  },
  "el-timeline": {
    "subtags": ["el-timeline-item"],
    "description": "Visually display timeline"
  },
  "el-timeline-item": {
    "attributes": ["timestamp", "hide-timestamp", "placement", "type", "color", "size", "icon"]
  },
  "el-divider": {
    "attributes": ["direction", "content-position"],
    "description": "The dividing line that separates the content"
  },
  "el-calendar": {
    "attributes": ["model-value", "range", "update:model-value", "input"],
    "defaults": ["v-model"]
  },
  "el-image": {
    "attributes": ["alt", "fit", "hide-on-click-modal", "lazy", "preview-src-list", "referrer-policy", "src", "scroll-container", "z-index", "load", "error"],
    "description": "Besides the native features of img, support lazy load, custom placeholder and load failure"
  },
  "el-image-viewer" : {
    "attributes": ["url-list", "z-index", "initial-index", "infinite", "hide-on-click-modal", "close", "switch"]
  },
  "el-backtop": {
    "attributes": ["target", "visibility-height", "right", "bottom", "click"],
    "description": "A button to back to top"
  },
  "el-avatar": {
    "attributes": ["icon", "size", "shape", "src", "srcSet", "alt", "fit", "error"],
    "description": "Avatars can be used to represent people or objects. It supports images, Icons, or characters"
  },
  "el-drawer": {
    "attributes": ["model-value", "append-to-body", "before-close", "close-on-press-escape", "custom-class", "destroy-on-close", "modal", "direction", "show-close", "size", "title", "with-header", "z-index", "update:model-value", "open", "opened", "close", "closed"],
    "defaults": ["v-model"]
  },
  "el-scrollbar": {
    "attributes": ["native", "wrap-style", "wrap-class", "view-class", "view-style", "noresize", "tag"]
  }
}
