// eslint-disable-next-line @typescript-eslint/no-unused-vars import type { IPublicTypeComponentMetadata, IPublicTypeSnippet } from '@alilc/lowcode-types'; import snippets from './snippets'; const FormMeta: IPublicTypeComponentMetadata = { componentName: 'Form', title: 'Form', category: '表单', group: '移动端', docUrl: '', screenshot: '', devMode: 'proCode', npm: { package: 'web-sdk-h5-material', version: '0.1.0', exportName: 'Form', main: 'src/index.tsx', destructuring: true, subName: '', }, configure: { props: [ { title: { label: { type: 'i18n', 'en-US': 'form', 'zh-CN': 'form', }, }, name: 'form', setter: { componentName: 'ObjectSetter', props: { config: { items: [ { title: { label: { type: 'i18n', 'en-US': 'Values', 'zh-CN': 'Values', }, }, name: 'Values', setter: { componentName: 'MixedSetter', isRequired: true, props: {}, }, }, { title: { label: { type: 'i18n', 'en-US': 'getFieldValue', 'zh-CN': 'getFieldValue', }, }, name: 'getFieldValue', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'getFieldsValue', 'zh-CN': 'getFieldsValue', }, }, name: 'getFieldsValue', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'getFieldError', 'zh-CN': 'getFieldError', }, }, name: 'getFieldError', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'getFieldsError', 'zh-CN': 'getFieldsError', }, }, name: 'getFieldsError', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'getFieldWarning', 'zh-CN': 'getFieldWarning', }, }, name: 'getFieldWarning', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'isFieldsTouched', 'zh-CN': 'isFieldsTouched', }, }, name: 'isFieldsTouched', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'isFieldTouched', 'zh-CN': 'isFieldTouched', }, }, name: 'isFieldTouched', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'isFieldValidating', 'zh-CN': 'isFieldValidating', }, }, name: 'isFieldValidating', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'isFieldsValidating', 'zh-CN': 'isFieldsValidating', }, }, name: 'isFieldsValidating', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'resetFields', 'zh-CN': 'resetFields', }, }, name: 'resetFields', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'setFields', 'zh-CN': 'setFields', }, }, name: 'setFields', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'setFieldValue', 'zh-CN': 'setFieldValue', }, }, name: 'setFieldValue', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'setFieldsValue', 'zh-CN': 'setFieldsValue', }, }, name: 'setFieldsValue', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'validateFields', 'zh-CN': 'validateFields', }, }, name: 'validateFields', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, { title: { label: { type: 'i18n', 'en-US': 'submit', 'zh-CN': 'submit', }, }, name: 'submit', setter: { componentName: 'FunctionSetter', isRequired: true, }, }, ], extraSetter: { componentName: 'MixedSetter', isRequired: false, props: {}, }, }, }, }, }, { title: { label: { type: 'i18n', 'en-US': 'name', 'zh-CN': 'name', }, }, name: 'name', setter: { componentName: 'StringSetter', isRequired: false, initialValue: '', }, }, { title: { label: { type: 'i18n', 'en-US': 'initialValues', 'zh-CN': 'initialValues', }, }, name: 'initialValues', setter: { componentName: 'ObjectSetter', props: { config: { extraSetter: { componentName: 'MixedSetter', isRequired: false, props: {}, }, }, }, isRequired: false, initialValue: {}, }, }, { title: { label: { type: 'i18n', 'en-US': 'preserve', 'zh-CN': 'preserve', }, }, name: 'preserve', setter: { componentName: 'BoolSetter', isRequired: false, initialValue: false, }, }, { title: { label: { type: 'i18n', 'en-US': 'validateMessages', 'zh-CN': 'validateMessages', }, }, name: 'validateMessages', setter: { componentName: 'ObjectSetter', props: { config: { items: [ { title: { label: { type: 'i18n', 'en-US': 'default', 'zh-CN': 'default', }, }, name: 'default', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'required', 'zh-CN': 'required', }, }, name: 'required', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'enum', 'zh-CN': 'enum', }, }, name: 'enum', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'whitespace', 'zh-CN': 'whitespace', }, }, name: 'whitespace', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'date', 'zh-CN': 'date', }, }, name: 'date', setter: { componentName: 'ObjectSetter', props: { config: { items: [ { title: { label: { type: 'i18n', 'en-US': 'format', 'zh-CN': 'format', }, }, name: 'format', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'parse', 'zh-CN': 'parse', }, }, name: 'parse', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'invalid', 'zh-CN': 'invalid', }, }, name: 'invalid', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, ], extraSetter: { componentName: 'MixedSetter', isRequired: false, props: {}, }, }, }, }, }, { title: { label: { type: 'i18n', 'en-US': 'types', 'zh-CN': 'types', }, }, name: 'types', setter: { componentName: 'ObjectSetter', props: { config: { items: [ { title: { label: { type: 'i18n', 'en-US': 'string', 'zh-CN': 'string', }, }, name: 'string', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'method', 'zh-CN': 'method', }, }, name: 'method', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'array', 'zh-CN': 'array', }, }, name: 'array', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'object', 'zh-CN': 'object', }, }, name: 'object', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'number', 'zh-CN': 'number', }, }, name: 'number', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'date', 'zh-CN': 'date', }, }, name: 'date', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'boolean', 'zh-CN': 'boolean', }, }, name: 'boolean', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'integer', 'zh-CN': 'integer', }, }, name: 'integer', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'float', 'zh-CN': 'float', }, }, name: 'float', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'regexp', 'zh-CN': 'regexp', }, }, name: 'regexp', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'email', 'zh-CN': 'email', }, }, name: 'email', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'url', 'zh-CN': 'url', }, }, name: 'url', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'hex', 'zh-CN': 'hex', }, }, name: 'hex', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, ], extraSetter: { componentName: 'MixedSetter', isRequired: false, props: {}, }, }, }, }, }, { title: { label: { type: 'i18n', 'en-US': 'string', 'zh-CN': 'string', }, }, name: 'string', setter: { componentName: 'ObjectSetter', props: { config: { items: [ { title: { label: { type: 'i18n', 'en-US': 'len', 'zh-CN': 'len', }, }, name: 'len', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'min', 'zh-CN': 'min', }, }, name: 'min', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'max', 'zh-CN': 'max', }, }, name: 'max', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'range', 'zh-CN': 'range', }, }, name: 'range', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, ], extraSetter: { componentName: 'MixedSetter', isRequired: false, props: {}, }, }, }, }, }, { title: { label: { type: 'i18n', 'en-US': 'number', 'zh-CN': 'number', }, }, name: 'number', setter: { componentName: 'ObjectSetter', props: { config: { items: [ { title: { label: { type: 'i18n', 'en-US': 'len', 'zh-CN': 'len', }, }, name: 'len', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'min', 'zh-CN': 'min', }, }, name: 'min', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'max', 'zh-CN': 'max', }, }, name: 'max', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'range', 'zh-CN': 'range', }, }, name: 'range', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, ], extraSetter: { componentName: 'MixedSetter', isRequired: false, props: {}, }, }, }, }, }, { title: { label: { type: 'i18n', 'en-US': 'array', 'zh-CN': 'array', }, }, name: 'array', setter: { componentName: 'ObjectSetter', props: { config: { items: [ { title: { label: { type: 'i18n', 'en-US': 'len', 'zh-CN': 'len', }, }, name: 'len', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'min', 'zh-CN': 'min', }, }, name: 'min', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'max', 'zh-CN': 'max', }, }, name: 'max', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'range', 'zh-CN': 'range', }, }, name: 'range', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, ], extraSetter: { componentName: 'MixedSetter', isRequired: false, props: {}, }, }, }, }, }, { title: { label: { type: 'i18n', 'en-US': 'pattern', 'zh-CN': 'pattern', }, }, name: 'pattern', setter: { componentName: 'ObjectSetter', props: { config: { items: [ { title: { label: { type: 'i18n', 'en-US': 'mismatch', 'zh-CN': 'mismatch', }, }, name: 'mismatch', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'FunctionSetter', isRequired: false, }, ], }, }, }, ], extraSetter: { componentName: 'MixedSetter', isRequired: false, props: {}, }, }, }, }, }, ], extraSetter: { componentName: 'MixedSetter', isRequired: false, props: {}, }, }, }, }, }, { title: { label: { type: 'i18n', 'en-US': 'validateTrigger', 'zh-CN': 'validateTrigger', }, }, name: 'validateTrigger', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'StringSetter', isRequired: false, initialValue: '', }, { componentName: 'ArraySetter', props: { itemSetter: { componentName: 'StringSetter', isRequired: false, initialValue: '', }, }, initialValue: [], }, { componentName: 'RadioGroupSetter', props: { dataSource: [ { label: 'false', value: false, }, ], options: [ { label: 'false', value: false, }, ], }, initialValue: false, }, ], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'onFieldsChange', 'zh-CN': 'onFieldsChange', }, }, name: 'onFieldsChange', setter: { componentName: 'FunctionSetter', }, }, { title: { label: { type: 'i18n', 'en-US': 'tabIndex', 'zh-CN': 'tabIndex', }, }, name: 'tabIndex', setter: { componentName: 'NumberSetter', isRequired: false, initialValue: 0, }, }, { title: { label: { type: 'i18n', 'en-US': 'hasFeedback', 'zh-CN': 'hasFeedback', }, }, name: 'hasFeedback', setter: { componentName: 'BoolSetter', isRequired: false, initialValue: false, }, }, { title: { label: { type: 'i18n', 'en-US': 'layout', 'zh-CN': 'layout', }, }, name: 'layout', setter: { componentName: 'RadioGroupSetter', props: { dataSource: [ { label: 'horizontal', value: 'horizontal', }, { label: 'vertical', value: 'vertical', }, ], options: [ { label: 'horizontal', value: 'horizontal', }, { label: 'vertical', value: 'vertical', }, ], }, initialValue: 'horizontal', }, }, { title: { label: { type: 'i18n', 'en-US': 'requiredMarkStyle', 'zh-CN': 'requiredMarkStyle', }, }, name: 'requiredMarkStyle', setter: { componentName: 'SelectSetter', props: { dataSource: [ { label: 'none', value: 'none', }, { label: 'asterisk', value: 'asterisk', }, { label: 'text-required', value: 'text-required', }, { label: 'text-optional', value: 'text-optional', }, ], options: [ { label: 'none', value: 'none', }, { label: 'asterisk', value: 'asterisk', }, { label: 'text-required', value: 'text-required', }, { label: 'text-optional', value: 'text-optional', }, ], }, initialValue: 'none', }, }, { 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': 'footer', 'zh-CN': 'footer', }, }, name: 'footer', setter: { componentName: 'SlotSetter', props: { mode: 'node', }, isRequired: false, initialValue: { type: 'JSSlot', value: [], }, }, }, { title: { label: { type: 'i18n', 'en-US': 'mode', 'zh-CN': 'mode', }, }, name: 'mode', setter: { componentName: 'RadioGroupSetter', props: { dataSource: [ { label: 'default', value: 'default', }, { label: 'card', value: 'card', }, ], options: [ { label: 'default', value: 'default', }, { label: 'card', value: 'card', }, ], }, initialValue: 'default', }, }, { 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: 'onFinish', }, { name: 'onFinishFailed', }, { name: 'onValuesChange', }, ], className: true, style: true, }, component: {}, }, }; export default { ...FormMeta, snippets, };