mr-component
Version:
A library for Mr components
964 lines (961 loc) • 25.3 kB
text/typescript
import { IPublicTypeComponentMetadata, IPublicTypeSnippet } from '@alilc/lowcode-types';
const MrPaymentPopupMeta: IPublicTypeComponentMetadata = {
componentName: 'MrPaymentPopup',
title: 'MrPaymentPopup',
docUrl: '',
screenshot: '',
devMode: 'proCode',
npm: {
package: 'mr-component',
version: '0.0.4',
exportName: 'MrPaymentPopup',
main: 'src/index.tsx',
destructuring: true,
subName: '',
},
configure: {
props: [
{
title: {
label: {
type: 'i18n',
'en-US': 'visible',
'zh-CN': '是否显示弹窗',
},
tip: 'visible | 是否显示弹窗',
},
name: 'visible',
description: '是否显示弹窗',
setter: {
componentName: 'BoolSetter',
isRequired: true,
initialValue: false,
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'title',
'zh-CN': '弹窗标题',
},
tip: 'title | 弹窗标题',
},
name: 'title',
description: '弹窗标题',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'options',
'zh-CN': '支付选项列表',
},
tip: 'options | 支付选项列表',
},
name: 'options',
description: '支付选项列表',
setter: {
componentName: 'ArraySetter',
props: {
itemSetter: {
componentName: 'ObjectSetter',
props: {
config: {
items: [
{
title: {
label: {
type: 'i18n',
'en-US': 'id',
'zh-CN': 'id',
},
},
name: 'id',
setter: {
componentName: 'StringSetter',
isRequired: true,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'name',
'zh-CN': 'name',
},
},
name: 'name',
setter: {
componentName: 'StringSetter',
isRequired: true,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'icon',
'zh-CN': '图标',
},
tip: 'icon | 图标URL或React组件',
},
name: 'icon',
description: '图标URL或React组件',
setter: {
componentName: 'MixedSetter',
isRequired: false,
props: {
setters: [
{
componentName: 'StringSetter',
title: '图片URL',
description: '支持http://、https://或相对路径',
placeholder: 'https://example.com/icon.png',
},
{
componentName: 'SlotSetter',
title: 'React组件',
description: '拖拽React组件作为图标',
},
],
},
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'balance',
'zh-CN': 'balance',
},
},
name: 'balance',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'currency',
'zh-CN': 'currency',
},
},
name: 'currency',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'fee',
'zh-CN': 'fee',
},
},
name: 'fee',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'disabled',
'zh-CN': 'disabled',
},
},
name: 'disabled',
setter: {
componentName: 'BoolSetter',
isRequired: false,
initialValue: false,
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'disabledReason',
'zh-CN': 'disabledReason',
},
},
name: 'disabledReason',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'extra',
'zh-CN': 'extra',
},
},
name: 'extra',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
],
extraSetter: {
componentName: 'MixedSetter',
isRequired: false,
props: {},
},
},
},
},
},
isRequired: true,
initialValue: [],
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'value',
'zh-CN': '当前选中值',
},
tip: 'value | 当前选中值',
},
name: 'value',
description: '当前选中值',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'defaultValue',
'zh-CN': '默认选中值',
},
tip: 'defaultValue | 默认选中值',
},
name: 'defaultValue',
description: '默认选中值',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'showBalance',
'zh-CN': '是否显示余额',
},
tip: 'showBalance | 是否显示余额',
},
name: 'showBalance',
description: '是否显示余额',
setter: {
componentName: 'BoolSetter',
isRequired: false,
initialValue: false,
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'showFee',
'zh-CN': '是否显示手续费',
},
tip: 'showFee | 是否显示手续费',
},
name: 'showFee',
description: '是否显示手续费',
setter: {
componentName: 'BoolSetter',
isRequired: false,
initialValue: false,
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'allowAddCard',
'zh-CN': '是否可以添加新卡片',
},
tip: 'allowAddCard | 是否可以添加新卡片',
},
name: 'allowAddCard',
description: '是否可以添加新卡片',
setter: {
componentName: 'BoolSetter',
isRequired: false,
initialValue: false,
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'addCardText',
'zh-CN': '添加卡片文本',
},
tip: 'addCardText | 添加卡片文本',
},
name: 'addCardText',
description: '添加卡片文本',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'confirmButtonText',
'zh-CN': '确认按钮文本',
},
tip: 'confirmButtonText | 确认按钮文本',
},
name: 'confirmButtonText',
description: '确认按钮文本',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
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': 'position',
'zh-CN': '弹窗位置',
},
tip: 'position | 弹窗位置',
},
name: 'position',
description: '弹窗位置',
setter: {
componentName: 'SelectSetter',
props: {
dataSource: [
{
label: 'left',
value: 'left',
},
{
label: 'right',
value: 'right',
},
{
label: 'center',
value: 'center',
},
{
label: 'top',
value: 'top',
},
{
label: 'bottom',
value: 'bottom',
},
],
options: [
{
label: 'left',
value: 'left',
},
{
label: 'right',
value: 'right',
},
{
label: 'center',
value: 'center',
},
{
label: 'top',
value: 'top',
},
{
label: 'bottom',
value: 'bottom',
},
],
},
initialValue: 'left',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'round',
'zh-CN': '弹窗圆角',
},
tip: 'round | 弹窗圆角',
},
name: 'round',
description: '弹窗圆角',
setter: {
componentName: 'BoolSetter',
isRequired: false,
initialValue: false,
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'closeable',
'zh-CN': '是否显示关闭图标',
},
tip: 'closeable | 是否显示关闭图标',
},
name: 'closeable',
description: '是否显示关闭图标',
setter: {
componentName: 'BoolSetter',
isRequired: false,
initialValue: false,
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'closeIconPosition',
'zh-CN': '关闭图标位置',
},
tip: 'closeIconPosition | 关闭图标位置',
},
name: 'closeIconPosition',
description: '关闭图标位置',
setter: {
componentName: 'SelectSetter',
props: {
dataSource: [
{
label: 'top-left',
value: 'top-left',
},
{
label: 'top-right',
value: 'top-right',
},
{
label: 'bottom-left',
value: 'bottom-left',
},
{
label: 'bottom-right',
value: 'bottom-right',
},
],
options: [
{
label: 'top-left',
value: 'top-left',
},
{
label: 'top-right',
value: 'top-right',
},
{
label: 'bottom-left',
value: 'bottom-left',
},
{
label: 'bottom-right',
value: 'bottom-right',
},
],
},
initialValue: 'top-left',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'closeOnClickOverlay',
'zh-CN': '点击遮罩是否关闭',
},
tip: 'closeOnClickOverlay | 点击遮罩是否关闭',
},
name: 'closeOnClickOverlay',
description: '点击遮罩是否关闭',
setter: {
componentName: 'BoolSetter',
isRequired: false,
initialValue: false,
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'backgroundColor',
'zh-CN': '背景颜色',
},
tip: 'backgroundColor | 背景颜色',
},
name: 'backgroundColor',
description: '背景颜色',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'hoverBackgroundColor',
'zh-CN': '悬停背景色',
},
tip: 'hoverBackgroundColor | 悬停背景色',
},
name: 'hoverBackgroundColor',
description: '悬停背景色',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'borderColor',
'zh-CN': '边框颜色',
},
tip: 'borderColor | 边框颜色',
},
name: 'borderColor',
description: '边框颜色',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'dividerColor',
'zh-CN': '分隔线颜色',
},
tip: 'dividerColor | 分隔线颜色',
},
name: 'dividerColor',
description: '分隔线颜色',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'borderRadius',
'zh-CN': '圆角大小',
},
tip: 'borderRadius | 圆角大小',
},
name: 'borderRadius',
description: '圆角大小',
setter: {
componentName: 'MixedSetter',
props: {
setters: [
{
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
{
componentName: 'NumberSetter',
isRequired: false,
initialValue: 0,
},
],
},
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'padding',
'zh-CN': '内边距',
},
tip: 'padding | 内边距',
},
name: 'padding',
description: '内边距',
setter: {
componentName: 'MixedSetter',
props: {
setters: [
{
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
{
componentName: 'NumberSetter',
isRequired: false,
initialValue: 0,
},
],
},
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'textColor',
'zh-CN': '文字颜色',
},
tip: 'textColor | 文字颜色',
},
name: 'textColor',
description: '文字颜色',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'descriptionColor',
'zh-CN': '描述颜色',
},
tip: 'descriptionColor | 描述颜色',
},
name: 'descriptionColor',
description: '描述颜色',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'disabledColor',
'zh-CN': '禁用颜色',
},
tip: 'disabledColor | 禁用颜色',
},
name: 'disabledColor',
description: '禁用颜色',
setter: {
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'theme',
'zh-CN': '预设主题',
},
tip: 'theme | 预设主题',
},
name: 'theme',
description: '预设主题',
setter: {
componentName: 'SelectSetter',
props: {
dataSource: [
{
label: 'default',
value: 'default',
},
{
label: 'primary',
value: 'primary',
},
{
label: 'success',
value: 'success',
},
{
label: 'warning',
value: 'warning',
},
{
label: 'danger',
value: 'danger',
},
],
options: [
{
label: 'default',
value: 'default',
},
{
label: 'primary',
value: 'primary',
},
{
label: 'success',
value: 'success',
},
{
label: 'warning',
value: 'warning',
},
{
label: 'danger',
value: 'danger',
},
],
},
initialValue: 'default',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'size',
'zh-CN': '尺寸',
},
tip: 'size | 尺寸',
},
name: 'size',
description: '尺寸',
setter: {
componentName: 'RadioGroupSetter',
props: {
dataSource: [
{
label: 'large',
value: 'large',
},
{
label: 'normal',
value: 'normal',
},
{
label: 'small',
value: 'small',
},
],
options: [
{
label: 'large',
value: 'large',
},
{
label: 'normal',
value: 'normal',
},
{
label: 'small',
value: 'small',
},
],
},
initialValue: 'large',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'onChange',
'zh-CN': '选择变化回调',
},
tip: 'onChange | 选择变化回调',
},
name: 'onChange',
description: '选择变化回调',
setter: {
componentName: 'FunctionSetter',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'onConfirm',
'zh-CN': '确认回调',
},
tip: 'onConfirm | 确认回调',
},
name: 'onConfirm',
description: '确认回调',
setter: {
componentName: 'FunctionSetter',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'onClose',
'zh-CN': '关闭回调',
},
tip: 'onClose | 关闭回调',
},
name: 'onClose',
description: '关闭回调',
setter: {
componentName: 'FunctionSetter',
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'ref',
'zh-CN': 'ref',
},
},
name: 'ref',
setter: {
componentName: 'MixedSetter',
props: {
setters: [
{
componentName: 'FunctionSetter',
},
{
componentName: 'ObjectSetter',
props: {
config: {
extraSetter: {
componentName: 'MixedSetter',
isRequired: false,
props: {},
},
},
},
isRequired: false,
initialValue: {},
},
],
},
},
},
{
title: {
label: {
type: 'i18n',
'en-US': 'key',
'zh-CN': 'key',
},
},
name: 'key',
setter: {
componentName: 'MixedSetter',
props: {
setters: [
{
componentName: 'StringSetter',
isRequired: false,
initialValue: '',
},
{
componentName: 'NumberSetter',
isRequired: false,
initialValue: 0,
},
],
},
},
},
],
supports: {
events: [
{
name: 'onClose',
description: '弹窗关闭回调',
},
{
name: 'onAddCard',
description: '添加卡片回调',
},
],
className: true,
style: true,
},
component: {},
},
};
const snippets: IPublicTypeSnippet[] = [
{
title: 'MrPaymentPopup',
screenshot: '',
schema: {
componentName: 'MrPaymentPopup',
props: {},
},
},
];
export default {
...MrPaymentPopupMeta,
snippets,
};