import {translate} from "@/utils/i18n" import emitter from '@/utils/emitter' export const createInputTextEditor = function (propName, propLabelKey) { return { props: { optionModel: Object, }, render(h) { return ( ) } } } export const createInputNumberEditor = function (propName, propLabelKey) { return { props: { optionModel: Object, }, methods: { updateValue(newValue) { if ((newValue === undefined) || (newValue === null) || isNaN(newValue)) { this.optionModel[propName] = null } else { this.optionModel[propName] = Number(newValue) } }, }, render(h) { return ( ) } } } export const createBooleanEditor = function (propName, propLabelKey) { return { props: { optionModel: Object, }, render(h) { return ( ) } } } export const createCheckboxGroupEditor = function (propName, propLabelKey, configs) { return { props: { optionModel: Object, }, render(h) { return ( { configs.optionItems.map(item => { return {item.label} }) } ) } } } export const createRadioGroupEditor = function (propName, propLabelKey, configs) { return { props: { optionModel: Object, }, render(h) { return ( { configs.optionItems.map(item => { return {item.label} }) } ) } } } export const createRadioButtonGroupEditor = function (propName, propLabelKey, configs) { return { props: { optionModel: Object, }, render(h) { return ( { configs.optionItems.map(item => { return {item.label} }) } ) } } } export const createSelectEditor = function (propName, propLabelKey, configs) { return { props: { optionModel: Object, }, render(h) { return ( { configs.optionItems.map(item => { return }) } ) } } } export const createEventHandlerEditor = function (eventPropName, eventParams) { return { props: { optionModel: Object, }, mixins: [emitter], methods: { editEventHandler() { this.dispatch('SettingPanel', 'editEventHandler', [eventPropName, [...eventParams]]) }, }, render(h) { return ( {translate('designer.setting.addEventHandler')} ) } } } export const createEmptyEditor = function () { return { render() { return
} } }