import React from 'react'; import { ComponentsType, DataType, iBoolProps, iProperty, TagType } from '../../base/type'; import IOTNoPoleSlider from './IOTNoPoleSlider'; import { IOTNoPoleSliderProps } from './interface'; import iGrapesJSConfig from '../../type'; import { iIOTNoPoleSliderJSON } from '.'; import { mergeParameters } from '../../base/utils'; const grapesJSConfig: iGrapesJSConfig = { type: [ComponentsType.NumberType], id: 'IOTNoPoleSlider', tag: TagType.IOTNoPoleSlider, access: 'rw', render: (jsonData, ...args) => { const props = mergeParameters(jsonData, ...args); return ; }, buildData: (mock: boolean = false, property?: iProperty) => { if (property === undefined) return; //区分类 const props: IOTNoPoleSliderProps = { type: property.valuedef.type, streamId: property.streamName, title: property['display-name'], subTitle: { show: true, value: '副标题', }, icon: { value: 'insideicon-cu-1', show: true, }, disabled: false, streamName: '', curValue: property?.valuedef?.specs?.min, unit: property?.valuedef?.specs?.unit, min: property['valuedef']['specs']['min'], max: property['valuedef']['specs']['max'], unitdesc: property?.valuedef?.specs?.unitdesc, step: property['valuedef']['specs']['step'], intType:property['valuedef']['type'], }; return props; }, traits: () => { return [ { type: 'option-icon', name: 'icon', label: '显示图标', }, { type: 'text', name: 'title', label: '', } ]; }, }; export default grapesJSConfig;