{
  "name": "ListScaffold",
  "description": "列表页脚手架",
  "version": "1.0.8",
  "author": "eric",
  "id": "xlcdp-list-scaffold",
  "props": {
    "columns": {
      "type": "array",
      "description": "表格列配置",
      "required": true,
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "description": "列标题",
            "required": true
          },
          "propName": {
            "type": "string",
            "description": "列属性名",
            "required": true
          },
          "options": {
            "type": "object",
            "description": "列选项配置"
          },
          "children": {
            "type": "array",
            "description": "子列配置"
          },
          "render": {
            "type": "function",
            "description": "列渲染函数"
          },
          "dictGroup": {
            "type": "string",
            "description": "字典组名称"
          }
        }
      }
    },
    "queryForm": {
      "type": "array",
      "description": "查询表单配置",
      "required": true,
      "items": {
        "type": "object",
        "properties": {
          "is": {
            "type": "string",
            "description": "查询表单类型",
            "enum": [
              "input",
              "select",
              "datetime",
              "switch",
              "checkbox",
              "radio",
              "color",
              "textarea",
              "xlcdp-sku-search",
              "xlcdp-globalData-selector",
              "xlcdp-category-selector",
              "xlcdp-employee-selector"
            ]
          },
          "default": {
            "type": "any",
            "description": "查询表单默认值"
          },
          "label": {
            "type": "string",
            "description": "查询表单标签"
          },
          "props": {
            "type": "object",
            "description": "查询表单属性"
          },
          "propName": {
            "type": "string",
            "description": "查询表单属性名"
          }
        }
      }
    },
    "tableActions": {
      "type": "array",
      "description": "表格操作按钮配置",
      "required": true,
      "items": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "按钮文本"
          },
          "authCode": {
            "type": "string",
            "description": "按钮权限码"
          },
          "onClick": {
            "type": "function",
            "description": "按钮点击事件"
          },
          "condition": {
            "type": "function",
            "description": "按钮条件"
          },
          "props": {
            "type": "object",
            "description": "按钮属性"
          }
        }
      }
    },
    "fetchMethod": {
      "$ref": "#XLCDP.DataSource"
    },
    "showSelectedPreview": {
      "type": "boolean",
      "description": "是否显示已选择项预览",
      "default": true
    },
    "showBatchActions": {
      "type": "boolean",
      "description": "是否显示批量操作",
      "default": true
    },
    "previewPopWidth": {
      "type": "number",
      "description": "已选择项预览弹窗宽度",
      "default": 400
    }
  },
  "slots": [
    {
      "name": "default",
      "default": true,
      "description": "默认插槽"
    },
    {
      "name": "query-actions-prefix",
      "description": "查询按钮组前置插槽"
    },
    {
      "name": "query-actions-suffix",
      "description": "查询按钮组后置插槽"
    },
    {
      "name": "before-table",
      "description": "表格前置插槽"
    },
    {
      "name": "selected-preview",
      "description": "已选择项预览插槽"
    },
    {
      "name": "batch-actions",
      "description": "批量操作插槽"
    }
  ],
  "dependencies": {
    "external": ["vue-router", "element-plus"]
  },
  "meta": {
    "packageName": "@xhq-xlcdp/list-scaffold",
    "title": "列表页脚手架",
    "icon": "",
    "category": "数据展示",
    "group": "platform"
  },
  "expose": {
    "variables": [
      {
        "name": "formData",
        "type": "object",
        "description": "查询表单对象"
      }
    ],
    "methods": [
      {
        "name": "refresh",
        "description": "刷新"
      },
      {
        "name": "getFormData",
        "description": "获取表单数据"
      },
      {
        "name": "clearSelection",
        "description": "清空选择"
      },
      {
        "name": "resetForm",
        "description": "重置表单"
      }
    ]
  }
}
