
import { IPublicTypeComponentMetadata, IPublicTypeSnippet } from '@alilc/lowcode-types';

const OadpContainerMeta: IPublicTypeComponentMetadata = {
  "componentName": "OadpContainer",
  "title": "容器",
  "docUrl": "",
  "category": "高级组件",
  "group": "低代码组件",
  "screenshot": "https://img.alicdn.com/imgextra/i2/O1CN01B1NMW926IFrFxjqQT_!!6000000007638-55-tps-56-56.svg",
  "devMode": "proCode",
  "npm": {
    "package": "oadp-material",
    "version": "{{version}}",
    "exportName": "OadpContainer",
    "main": "src/index.tsx",
    "destructuring": true,
    "subName": ""
  },
  "configure": {
    "props": [
      {
        "name": "DisplaySetting",
        "title": "显示设置",
        "type": "group",
        "display": "block",
        "items": [      
          {
            "name": "direction",
            "title": {
              "label": {
                "type": "i18n",
                "en-US": "direction",
                "zh-CN": "主轴方向"
              },
              "tip": {
                "type": "i18n",
                "en-US": "prop: direction | description: direction, optional values: hoz=hoz, ver=ver.default: ver.",
                "zh-CN": "属性: direction | 说明: 水平对齐，可选值:hoz=水平, ver=垂直。默认为:ver。"
              }
            },
            "description": "主轴方向",
            "setter": {
              "componentName": "RadioGroupSetter",
              "props": {
                "dataSource": [
                  {
                    "label": "水平",
                    "value": "hoz"
                  },
                  {
                    "label": "垂直",
                    "value": "ver"
                  }
                ],
                "options": [
                  {
                    "label": "水平",
                    "value": "hoz"
                  },
                  {
                    "label": "垂直",
                    "value": "ver"
                  }
                ]
              },
              "initialValue": "ver"
            }
          },
          {
            "name": "autoFit",
            "title": {
              "label": {
                "type": "i18n",
                "en-US": "autoFit",
                "zh-CN": "自适应内容"
              },
              "tip": {
                "type": "i18n",
                "en-US": "autoFit",
                "zh-CN": "是否宽度（行模式下）/ 高度（列模式下）自适应内容"
              }
            },
            "description": "是否宽度（行模式下）/ 高度（列模式下）自适应内容",
            "setter": {
              "componentName": "BoolSetter",
              "isRequired": false,
              "initialValue": false
            }
          },             
          {
            "name": "width",
            "title": {
              "label": {
                "type": "i18n",
                "en-US": "width",
                "zh-CN": "固定宽度"
              },
              "tip": {
                "type": "i18n",
                "en-US": "width",
                "zh-CN": "width | 在行模式下，未设置 autoFit 时, 自定义单个 cell 的宽度，"
              }
            },
            "description": "在行模式下，未设置 autoFit 时, 自定义单个 cell 的宽度，",
            "setter": {
              "componentName": "MixedSetter",
              "props": {
                "setters": [
                  {
                    "componentName": "StringSetter",
                    "isRequired": false,
                    "initialValue": ""
                  },
                  {
                    "componentName": "NumberSetter",
                    "isRequired": false,
                    "initialValue": 0
                  }
                ]
              }
            }
          },
          {
            "name": "height",
            "title": {
              "label": {
                "type": "i18n",
                "en-US": "height",
                "zh-CN": "指定高度"
              },
              "tip":  {
                "type": "i18n",
                "en-US": "height",
                "zh-CN": "指定高度"
              }
            },
            "description": "指定高度",
            "setter": {
              "componentName": "MixedSetter",
              "props": {
                "setters": [
                  {
                    "componentName": "StringSetter",
                    "isRequired": false,
                    "initialValue": ""
                  },
                  {
                    "componentName": "NumberSetter",
                    "isRequired": false,
                    "initialValue": 0
                  }
                ]
              }
            }
          },
          {
            "name": "align",
            "title": {
              "label": {
                "type": "i18n",
                "en-US": "align",
                "zh-CN": "水平对齐"
              },
              "tip": {
                "type": "i18n",
                "en-US": "prop: align | description: alignment, optional values: left=left, center=center, right=right.default: right.",
                "zh-CN": "属性: align | 说明: 水平对齐，可选值:left=居左对齐, center=居中对齐, right=居右对齐。默认为:center。"
              }
            },
            "description": "属性: align | 说明: 水平对齐，可选值:left=居左对齐, center=居中对齐, right=居右对齐。默认为:right。",
            "setter": {
              "componentName": "RadioGroupSetter",
              "props": {
                "dataSource": [
                  {
                    "label": "居左对齐",
                    "value": "left"
                  },
                  {
                    "label": "居中对齐",
                    "value": "center"
                  },
                  {
                    "label": "居右对齐",
                    "value": "right"
                  }
                ],
                "options": [
                  {
                    "label": "居左对齐",
                    "value": "left"
                  },
                  {
                    "label": "居中对齐",
                    "value": "center"
                  },
                  {
                    "label": "居右对齐",
                    "value": "right"
                  }
                ]
              },
              "initialValue": "right"
            }
          },
          {
            "name": "verAlign",
            "title": {
              "label": {
                "type": "i18n",
                "en-US": "verAlign",
                "zh-CN": "垂直对齐"
              },
              "tip": {
                "type": "i18n",
                "en-US": "prop: align | description: verAlign alignment, optional values: top=top, middle=middle, bottom=bottom, space-around=space-around, space-between=space-between, space-evenly=space-evenly.default: middle.",
                "zh-CN": "属性: align | 说明: 垂直对齐，可选值:top=顶部对齐, middle=居中对齐, bottom=底部对齐, space-around=等分对齐, space-between=两端对齐, space-evenly=绝对均分。默认为:middle。"
              }
            },
            "description": "垂直对齐",
            "setter": {
              "componentName": "RadioGroupSetter",
              "props": {
                "dataSource": [
                  {
                    "label": "顶部对齐",
                    "value": "top"
                  },
                  {
                    "label": "居中对齐",
                    "value": "middle"
                  },
                  {
                    "label": "底部对齐",
                    "value": "bottom"
                  },
                  {
                    "label": "等分对齐",
                    "value": "space-around"
                  },
                  {
                    "label": "两端对齐",
                    "value": "space-between"
                  },
                  {
                    "label": "绝对均分",
                    "value": "space-evenly"
                  }
                ],
                "options": [
                  {
                    "label": "顶部对齐",
                    "value": "top"
                  },
                  {
                    "label": "居中对齐",
                    "value": "middle"
                  },
                  {
                    "label": "底部对齐",
                    "value": "bottom"
                  },
                  {
                    "label": "等分对齐",
                    "value": "space-around"
                  },
                  {
                    "label": "两端对齐",
                    "value": "space-between"
                  },
                  {
                    "label": "绝对均分",
                    "value": "space-evenly"
                  }
                ]
              },
              "initialValue": "middle"
            }
          },
          {
            "title": {
              "label": {
                "type": "i18n",
                "en-US": "gap",
                "zh-CN": "间距"
              },
              "tip": {
                "type": "i18n",
                "en-US": "prop: gap | description: gap.default: auto.",
                "zh-CN": "属性: gap | 说明: 间距。默认为:auto。"
              }
            },
            "name": "gap",
            "description": "间距",
            "setter": {
              "componentName": "MixedSetter",
              "props": {
                "setters": [
                  {
                    "componentName": "NumberSetter",
                    "isRequired": false,
                    "initialValue": 0
                  },
                  {
                    "componentName": "RadioGroupSetter",
                    "props": {
                      "dataSource": [
                        {
                          "label": "自动",
                          "value": "auto"
                        }
                      ],
                      "options": [
                        {
                          "label": "自动",
                          "value": "auto"
                        }
                      ]
                    },
                    "initialValue": "auto"
                  }
                ]
              }
            }
          },              
          {
            "name": "block",
            "title": {
              "label": {
                "type": "i18n",
                "en-US": "block",
                "zh-CN": "启用区块"
              },
              "tip": {
                "label": {
                  "type": "i18n",
                  "en-US": "block",
                  "zh-CN": "block | 启用 display:block 模式(默认为 flex )"
                }
              }
            },
            "description": "启用 display:block 模式(默认为 flex )",
            "setter": {
              "componentName": "BoolSetter",
              "isRequired": false,
              "initialValue": true
            }
          }
        ]
      }  
    ],
    "supports": {
      "style": true
    },
    "component": {
      "isContainer": true
    }
  }
};
const snippets: IPublicTypeSnippet[] = [
  {
    "title": "容器",
    "screenshot": "https://img.alicdn.com/imgextra/i2/O1CN01B1NMW926IFrFxjqQT_!!6000000007638-55-tps-56-56.svg",
    "schema": {
      "componentName": "OadpContainer",
      "props": { 
        "direction": "ver",
        "autoFit": false,
        "align": "right",
        "verAlign": "middle",
        "block": true
      }
    }
  }
];

export default {
  ...OadpContainerMeta,
  snippets
};
