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

const PisellPaymentListMeta: IPublicTypeComponentMetadata = {
  "componentName": "PisellPaymentList",
  "title": "PisellPaymentList",
  "docUrl": "",
  "screenshot": "",
  "devMode": "proCode",
  "npm": {
    "package": "@pisell/private-materials",
    "version": "6.4.33",
    "exportName": "PisellPaymentList",
    "main": "src/index.ts",
    "destructuring": true,
    "subName": ""
  },
  "configure": ({
    "props": [
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "disabled",
            "zh-CN": "是否禁用"
          },
          "tip": "disabled | 是否禁用"
        },
        "name": "disabled",
        "description": "是否禁用",
        "setter": {
          "componentName": "BoolSetter",
          "isRequired": false,
          "initialValue": false
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "isRadioMode",
            "zh-CN": "启用单选模式"
          },
          "tip": "是否启用单选模式"
        },
        "name": "isRadioMode",
        "description": "是否启用单选模式",
        "setter": {
          "componentName": "BoolSetter",
          "isRequired": false,
          "initialValue": true
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "backgroundColor",
            "zh-CN": "背景颜色"
          },
          "tip": "backgroundColor | 列表容器的背景颜色"
        },
        "name": "containerStyle.backgroundColor",
        "description": "列表容器的背景颜色",
        "setter": {
          "componentName": "ColorSetter",
          "isRequired": false,
          "initialValue": ""
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "width",
            "zh-CN": "边框宽度"
          }
        },
        "name": "containerStyle.borderWidth",
        "description": "边框宽度（单位：px）",
        "setter": {
          "componentName": "NumberSetter",
          "isRequired": false,
          "initialValue": 0
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "style",
            "zh-CN": "边框样式"
          }
        },
        "name": "containerStyle.borderStyle",
        "description": "边框样式",
        "setter": {
          "componentName": "SelectSetter",
          "props": {
            "options": [
              {
                "label": "实线 (solid)",
                "value": "solid"
              },
              {
                "label": "虚线 (dashed)",
                "value": "dashed"
              },
              {
                "label": "点线 (dotted)",
                "value": "dotted"
              },
              {
                "label": "双线 (double)",
                "value": "double"
              },
              {
                "label": "无 (none)",
                "value": "none"
              }
            ]
          },
          "isRequired": false,
          "initialValue": "none"
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "color",
            "zh-CN": "边框颜色"
          }
        },
        "name": "containerStyle.borderColor",
        "description": "边框颜色",
        "setter": {
          "componentName": "ColorSetter",
          "isRequired": false,
          "initialValue": ""
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "borderRadius",
            "zh-CN": "圆角"
          },
          "tip": "borderRadius | 列表容器的圆角大小（单位：px）"
        },
        "name": "containerStyle.borderRadius",
        "description": "列表容器的圆角大小",
        "setter": {
          "componentName": "NumberSetter",
          "isRequired": false,
          "initialValue": 0
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "padding",
            "zh-CN": "内边距"
          },
          "tip": "padding | 列表容器的内边距（单位：px）"
        },
        "name": "containerStyle.padding",
        "description": "列表容器的内边距",
        "setter": {
          "componentName": "NumberSetter",
          "isRequired": false,
          "initialValue": 0
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "margin",
            "zh-CN": "外边距"
          },
          "tip": "margin | 列表容器的外边距（单位：px）"
        },
        "name": "containerStyle.margin",
        "description": "列表容器的外边距",
        "setter": {
          "componentName": "NumberSetter",
          "isRequired": false,
          "initialValue": 0
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "maxHeight",
            "zh-CN": "最大高度"
          },
          "tip": "maxHeight | 最大高度"
        },
        "name": "maxHeight",
        "description": "最大高度",
        "setter": {
          "componentName": "NumberSetter",
          "isRequired": false,
          "initialValue": undefined
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "columns",
            "zh-CN": "每行列数"
          },
          "tip": "columns | 控制一行展示几个支付方式"
        },
        "name": "columnCount",
        "description": "控制一行展示几个支付方式",
        "setter": {
          "componentName": "NumberSetter",
          "isRequired": false,
          "initialValue": 1
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "rowGap",
            "zh-CN": "行间距"
          },
          "tip": "rowGap | 行间距"
        },
        "name": "rowGap",
        "description": "行间距",
        "setter": {
          "componentName": "NumberSetter",
          "isRequired": false,
          "initialValue": 0
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "columnGap",
            "zh-CN": "列间距"
          },
          "tip": "columnGap | 列间距"
        },
        "name": "columnGap",
        "description": "列间距",
        "setter": {
          "componentName": "NumberSetter",
          "isRequired": false,
          "initialValue": 0
        },
        "condition": "(target) => { return target.getProps().getPropValue('columnCount') > 1; }"
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "moreAreaStyle",
            "zh-CN": "更多区域配置"
          },
          "tip": "更多区域配置"
        },
        "name": "scrollButtonStyle",
        "description": "更多区域配置",
        "setter": {
          "componentName": "ObjectSetter",
          "props": {
            "config": {
              "items": [
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "show",
                      "zh-CN": "是否显示"
                    }
                  },
                  "name": "show",
                  "description": "是否显示更多按钮",
                  "setter": {
                    "componentName": "BoolSetter",
                    "isRequired": false,
                    "initialValue": false
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "height",
                      "zh-CN": "高度"
                    }
                  },
                  "name": "height",
                  "description": "更多区域的高度（单位：px）",
                  "setter": {
                    "componentName": "NumberSetter",
                    "isRequired": false,
                    "initialValue": undefined
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "backgroundColor",
                      "zh-CN": "背景颜色"
                    }
                  },
                  "name": "backgroundColor",
                  "description": "更多区域的背景颜色",
                  "setter": {
                    "componentName": "ColorSetter",
                    "isRequired": false,
                    "initialValue": ""
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "borderWidth",
                      "zh-CN": "边框宽度"
                    }
                  },
                  "name": "borderWidth",
                  "description": "边框宽度（单位：px）",
                  "setter": {
                    "componentName": "NumberSetter",
                    "isRequired": false,
                    "initialValue": 0
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "borderStyle",
                      "zh-CN": "边框样式"
                    }
                  },
                  "name": "borderStyle",
                  "description": "边框样式",
                  "setter": {
                    "componentName": "SelectSetter",
                    "props": {
                      "options": [
                        {
                          "label": "实线 (solid)",
                          "value": "solid"
                        },
                        {
                          "label": "虚线 (dashed)",
                          "value": "dashed"
                        },
                        {
                          "label": "点线 (dotted)",
                          "value": "dotted"
                        },
                        {
                          "label": "双线 (double)",
                          "value": "double"
                        },
                        {
                          "label": "无 (none)",
                          "value": "none"
                        }
                      ]
                    },
                    "isRequired": false,
                    "initialValue": "solid"
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "borderColor",
                      "zh-CN": "边框颜色"
                    }
                  },
                  "name": "borderColor",
                  "description": "边框颜色",
                  "setter": {
                    "componentName": "ColorSetter",
                    "isRequired": false,
                    "initialValue": ""
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "padding",
                      "zh-CN": "内边距"
                    }
                  },
                  "name": "padding",
                  "description": "内边距（单位：px）",
                  "setter": {
                    "componentName": "NumberSetter",
                    "isRequired": false,
                    "initialValue": 0
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "borderRadius",
                      "zh-CN": "圆角"
                    }
                  },
                  "name": "borderRadius",
                  "description": "圆角大小（单位：px）",
                  "setter": {
                    "componentName": "NumberSetter",
                    "isRequired": false,
                    "initialValue": 0
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "icon",
                      "zh-CN": "图标"
                    }
                  },
                  "name": "icon",
                  "description": "图标名称或路径",
                  "setter": {
                    "componentName": "StringSetter",
                    "isRequired": false,
                    "initialValue": ""
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "iconSize",
                      "zh-CN": "图标大小"
                    }
                  },
                  "name": "iconSize",
                  "description": "图标大小（单位：px）",
                  "setter": {
                    "componentName": "NumberSetter",
                    "isRequired": false,
                    "initialValue": undefined
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "iconColor",
                      "zh-CN": "图标颜色"
                    }
                  },
                  "name": "iconColor",
                  "description": "图标颜色",
                  "setter": {
                    "componentName": "ColorSetter",
                    "isRequired": false,
                    "initialValue": ""
                  }
                }
              ],
              "extraSetter": {
                "componentName": "MixedSetter",
                "isRequired": false,
                "props": {}
              }
            }
          },
          "isRequired": false,
          "initialValue": {}
        }
      },
      {
        "title": {
          "label": {
            "type": "i18n",
            "en-US": "slots",
            "zh-CN": "插槽配置"
          },
          "tip": "slots | 插槽配置"
        },
        "name": "slots",
        "description": "插槽配置",
        "setter": {
          "componentName": "ObjectSetter",
          "props": {
            "config": {
              "items": [
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "top",
                      "zh-CN": "顶部插槽"
                    }
                  },
                  "name": "top",
                  "description": "顶部插槽",
                  "setter": {
                    "componentName": "SlotSetter",
                    "isRequired": false,
                    "initialValue": {
                      "type": "JSSlot",
                      "value": []
                    }
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "bottom",
                      "zh-CN": "底部插槽"
                    }
                  },
                  "name": "bottom",
                  "description": "底部插槽",
                  "setter": {
                    "componentName": "SlotSetter",
                    "isRequired": false,
                    "initialValue": {
                      "type": "JSSlot",
                      "value": []
                    }
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "left",
                      "zh-CN": "左侧插槽"
                    }
                  },
                  "name": "left",
                  "description": "左侧插槽",
                  "setter": {
                    "componentName": "SlotSetter",
                    "isRequired": false,
                    "initialValue": {
                      "type": "JSSlot",
                      "value": []
                    }
                  }
                },
                {
                  "title": {
                    "label": {
                      "type": "i18n",
                      "en-US": "right",
                      "zh-CN": "右侧插槽"
                    }
                  },
                  "name": "right",
                  "description": "右侧插槽",
                  "setter": {
                    "componentName": "SlotSetter",
                    "isRequired": false,
                    "initialValue": {
                      "type": "JSSlot",
                      "value": []
                    }
                  }
                }
              ],
              "extraSetter": {
                "componentName": "MixedSetter",
                "isRequired": false,
                "props": {}
              }
            }
          }
        }
      }
    ],
    "supports": {
      "className": true,
      "style": true
    },
    "component": {
      "isContainer": true,
      "nestingRule": {
        "childWhitelist": ["PisellPaymentListItem"]
      }
    }
  } as any)
};

export default {
  ...PisellPaymentListMeta,
  snippets
};
