@ywfe/materials-design
Version:
YwDesign for lowcode
395 lines (393 loc) • 12.2 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports["default"] = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var TableGoodsInfoMeta = {
componentName: 'TableGoodsInfo',
title: '商品信息',
docUrl: '',
screenshot: '',
devMode: 'proCode',
group: '基础组件',
category: '表格',
npm: {
"package": '@ywfe/materials-design',
version: '0.1.0',
exportName: 'TableInfo',
main: 'src/index.tsx',
destructuring: true,
subName: ''
},
configure: {
props: [{
title: '商品信息',
name: 'value',
setter: {
componentName: 'ObjectSetter',
props: {
config: {
title: '基本信息',
display: 'block',
type: 'group',
items: [{
name: 'tooltip.value',
title: {
label: '商品Id',
tip: '选择商品ID字段'
},
isRequired: false,
supportVariable: false,
setter: {
componentName: 'MixedSetter',
props: {
setters: ['VariableSetter']
}
}
}, {
name: 'imgUrl',
title: {
label: '商品图片',
tip: '选择商品图片字段'
},
supportVariable: false,
setter: {
componentName: 'MixedSetter',
props: {
setters: ['VariableSetter']
}
}
}, {
name: 'emptyText',
title: {
label: '商品缺省文案',
tip: '输入商品缺省文案'
},
setter: 'StringSetter',
defaultValue: '-'
}, {
name: 'isEmpty',
title: {
label: '空数据',
tip: '是否空数据'
},
supportVariable: false,
setter: {
componentName: 'MixedSetter',
props: {
setters: ['VariableSetter']
}
}
}, {
name: 'price',
title: {
label: '商品价格',
tip: '商品价格'
},
supportVariable: false,
setter: {
componentName: 'MixedSetter',
props: {
setters: ['VariableSetter']
}
}
},
// {
// name: 'price',
// title: { label: '商品价格', tip: '商品价格' },
// setter: 'ArraySetter',
// defaultValue: null,
// extraProps: {
// setValue: (target, value) => {
// console.log('------', value);
// if (!value || !value?.length) {
// target.parent.setPropsValue('price', null);
// }
// },
// },
// },
{
name: 'title',
title: '商品名称',
setter: {
componentName: 'ObjectSetter',
props: {
config: {
items: [{
name: 'value',
title: {
label: '名称',
tip: '名称'
},
supportVariable: false,
setter: {
componentName: 'MixedSetter',
props: {
setters: ['VariableSetter']
}
}
}, {
name: 'tooltip',
title: {
label: '悬浮提示',
tip: '是否开启商品名称悬浮提示'
},
setter: 'BoolSetter',
defaultValue: true
}, {
name: 'onClick',
title: {
label: '查看详情',
tip: 'onClick | 是否点击查看详情'
},
setter: 'FunctionSetter'
}, {
name: 'tag',
title: {
label: '标签',
tip: '商品标签'
},
setter: {
componentName: 'SlotSetter',
hideParams: true,
title: '商品标签',
initialValue: {
type: 'JSSlot',
params: ['text', 'record'],
value: [
// {
// componentProps: 'YwTag',
// props: {
// text: '新品',
// color: '#07C160',
// },
// },
]
}
}
}]
}
}
}
}]
}
}
}
},
// {
// name: '_priceInfo',
// title: '商品价格',
// setter: {
// componentName: 'ObjectSetter',
// props: {
// config: {
// items: [
// {
// name: '_price',
// title: { label: '精确价格', tip: '商品精确价格' },
// setter: 'StringSetter',
// },
// {
// name: '_min_price',
// title: { label: '最低价格', tip: '商品最低价格' },
// setter: 'StringSetter',
// },
// {
// name: '_max_price',
// title: { label: '最高价格', tip: '商品最高价格' },
// setter: 'StringSetter',
// },
// ],
// },
// },
// },
// extraProps: {
// setValue: (target, value) => {
// if (value) {
// const { _price, _min_price, _max_price } = value;
// target.parent.setPropValue('value.price', {
// type: 'JSExpression',
// value: `[this.record.${_min_price || _price}, this.record.${_max_price} || ""]`,
// });
// }
// },
// },
// },
{
name: 'value.tags',
title: '商品标签',
// YwTag 补充后再加
setter: {
componentName: 'ArraySetter',
props: {
itemSetter: {
componentName: 'ObjectSetter',
props: {
config: {
items: [{
title: {
label: '标签文字',
tip: 'value | 标签文字'
},
name: 'value',
description: '标签文字',
isRequired: true,
setter: {
componentName: 'MixedSetter',
props: {
setters: ['VariableSetter']
}
}
}, {
title: {
label: '是否显示',
tip: 'visible | 是否显示'
},
name: 'visible',
defaultValue: true,
supportVariable: false,
setter: {
componentName: 'MixedSetter',
props: {
setters: ['VariableSetter']
}
}
}, {
title: {
label: '颜色'
},
name: 'color',
supportVariable: false,
setter: {
componentName: 'MixedSetter',
props: {
setters: ['VariableSetter']
}
}
}]
}
},
initialValue: {
value: '正价'
}
}
},
defaultValue: []
}
}, {
name: 'value.items',
title: '商品描述',
// YwTag 补充后再加
setter: {
componentName: 'ArraySetter',
props: {
itemSetter: {
componentName: 'ObjectSetter',
props: {
config: {
items: [{
title: '名称',
name: 'label',
setter: 'StringSetter'
}, {
title: {
label: '字段',
tip: '选择需要显示的字段'
},
name: 'value',
setter: 'StringSetter'
}, {
title: '行数',
name: 'row',
setter: 'NumberSetter',
defaultValue: 1
}, {
title: '悬浮提示',
name: 'tooltip',
setter: 'BoolSetter'
}, {
title: '可复制',
name: 'isCopy',
setter: 'BoolSetter'
}]
}
},
initialValue: function initialValue() {
return {
label: '名称',
value: '字段',
row: 1,
tooltip: false,
isCopy: false,
visible: true // 为了修复添加一项时 visible找不到报错的问题
};
}
}
}
}
}],
supports: {
style: true
},
component: {}
}
};
var snippets = [{
title: '商品详情',
svgId: 'icon-shangpingxiangqing',
screenshot: 'https://yw-fed-static.oss-cn-hangzhou.aliyuncs.com/lowcode/goodsDetail',
schema: {
componentName: 'TableGoodsInfo',
props: {
type: 'goods',
// 默认商品详情
emptyText: '-',
value: {
isEmpty: false,
emptyText: '未匹配商品信息',
imgUrl: 'https://daichongtest.oss-cn-hangzhou.aliyuncs.com/goods/config/2022/07/0e363d69-5988-4325-96d2-4eda40daa90b.jpg',
// price: ['23.00', '11111.00'], // price:'23.00',
title: {
value: '商品名称商品名称商品名称商品名称商品名称商品名称商品名称',
tooltip: true,
// tag: <YwTag text="新品" color="#07C160" />, // 商品标题标签
onClick: function onClick() {}
},
// 默认
tooltip: {
label: '商品ID',
isCopy: true
},
// tags: [
// { color: '#0B8746', value: '合格一等品' },
// { color: '#EF813E', bizName: 'amount', value: ['佣金', '18.00%'] },
// { value: '零售', visible: true, tooltip: { value: '这是个没人用的功能' } },
// { value: '正价' },
// { value: '快手CPS' },
// { value: '已质检', visible: true, tooltip: { value: '这是个没人用的功能' } },
// { value: '组合品' },
// ],
items: [{
label: '规格',
value: '34234324324234',
row: 1,
isCopy: true,
onClick: function onClick() {},
visible: function visible() {
return true;
}
}, {
label: '',
tooltip: true,
value: '黑色S 仅100件',
visible: function visible() {
return true;
}
}]
}
}
}
}];
var _default = exports["default"] = (0, _extends2["default"])({}, TableGoodsInfoMeta, {
snippets: snippets
});