preview.tsx 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. import React from 'react'
  2. import { Radio as FormilyRadio } from '@formily/antd'
  3. import { createBehavior, createResource } from '@designable/core'
  4. import { DnFC } from '@designable/react'
  5. import { createFieldSchema } from '../Field'
  6. import { AllSchemas } from '../../schemas'
  7. import { AllLocales } from '../../locales'
  8. export const Radio: DnFC<React.ComponentProps<typeof FormilyRadio>> = FormilyRadio
  9. Radio.Behavior = createBehavior({
  10. name: 'Radio.Group',
  11. extends: ['Field'],
  12. selector: node => node.props['x-component'] === 'Radio.Group',
  13. designerProps: {
  14. propsSchema: createFieldSchema(AllSchemas.Radio.Group)
  15. },
  16. designerLocales: AllLocales.RadioGroup
  17. })
  18. Radio.Resource = createResource({
  19. icon: 'RadioGroupSource',
  20. elements: [
  21. {
  22. componentName: 'Field',
  23. props: {
  24. type: 'string | number',
  25. title: 'Radio Group',
  26. 'x-decorator': 'FormItem',
  27. 'x-component': 'Radio.Group',
  28. enum: [
  29. { label: '选项1', value: 1 },
  30. { label: '选项2', value: 2 }
  31. ]
  32. }
  33. }
  34. ]
  35. })