
import common from "@/utils/common"
import styleDesigner from '@/config/designer/style';
import i18n from '@/locales'

const label = 'reportDesigner.label';
const name = 'label';
const category = 0;//0-表示默认基础组件，1-表示报告组件；2-布局组件
export default {
    initData: function(flag){
        //组件一级对象
        var obj = {
            icon: 'icon-span',
            label,
            id: common.guid(),
            name,
            category: category,
            disabledMove: false,
            //二级对象,用来封装属性和样式
            data: {},
            result: {}
        };
        if (flag)
        {
            obj.data = this.props();
            obj.result = this.finals();
        }
        return obj;
    },
    props: function() {
        return {
            // 规则：type：表示标签类型
            //     field:表示绑定值
            //     title:表示显示label
            //     require:表示是否需要验证必填项
            //     value:表示设置的默认值
            //     rules:表示验证规则，同elementplus验证规则一致
            //     dataSource:动态绑定数据源
            //     labelWidth:label宽度
            //       
            //基础样式
            style: styleDesigner(),
            //样式
            pattern: [
                {
                    type: 'input', field: 'width', title: 'reportDesigner.TextLengthPerLine', require: false, value: '0', unit: "mm"
                }, 
            ],
            //属性
            property: {
                contentSet:[
                    {type: 'input', field: 'placeholder', title: 'reportDesigner.labelTitle', require: true, value: 'reportDesigner.labelValue', unit: "", 
                    rules: [{required: true, message: i18n.global.tc("reportDesigner.WidthRequireMessage"), trigger: "blur"}]}
                ],
                formatSet:[
                    {type: 'switch', field: 'editable', title: 'reportDesigner.editable', require: false, value: '0', unit: "", rules:[], labelWidth:"270px"}
                ]
            }
        }
    },
    finals: function(){
        return {
            //父组件id
            parentId: "",
            parentName: "",
            //占位符
            space: "",
            offsetWidth: 0,
            offsetHeight: 0,
            //样式，每个组件可根据自身特点进行增减
            pattern: {
                fontName:"微软雅黑",
                fontSize:"10.5",
                fontWeight:400,
                fontItalic:false,
                fontUnderLine:false,
                fontColor:"",
                //Left,Right,Center,Bothends
                horizontalAlignment:"",
                //Top,Middle,Bottom
                verticalAlignment:"",
                width: 0,//单位mm
                height:10
            },
            //属性，每个组件可根据自身特点进行增减
            property: {
                //占位文本
                placeholder: 'reportDesigner.labelValue',
                //是否可编辑
                editable: false,
                //所属组
                group: "",
            },
            //位置坐标
            margin: {
                sort: 0,
                //0-表示absolute;1-relative
                position: 0,
                //如果采用相对定位，则需要填写上一个组件的组件id
                previousId:"",
                top: 0.0,
                bottom: 0.0,
                left: 0.0,
                right: 0.0,
            }
        }
    }
};
