import React from 'react'
import { usePrefix, IconWidget } from '@pind/designable-react'
import { useField, Field, observer } from '@formily/react'
import { Select, Radio, NumberPicker } from '@formily/antd-v5'
import { FoldItem } from '../FoldItem'
import { InputItems } from '../InputItems'
import { SizeInput } from '../SizeInput'
import { ColorInput } from '../ColorInput'
import cls from 'classnames'
export interface IFontStyleSetterProps {
className?: string
style?: React.CSSProperties
}
const createFontFamilyOptions = (fonts: string[]) => {
return fonts.map((font) => {
const splited = font.split('=')
const label = splited?.[0]
const value = splited?.[1]
return {
label: {label},
value,
}
})
}
const FontFamilyOptions = createFontFamilyOptions([
'宋体=SimSun',
'微软雅黑=Microsoft Yahei',
'苹方=PingFang SC',
'Andale Mono=andale mono,monospace',
'Arial=arial,helvetica,sans-serif',
'Arial Black=arial black,sans-serif',
'Book Antiqua=book antiqua,palatino,serif',
'Comic Sans MS=comic sans ms,sans-serif',
'Courier New=courier new,courier,monospace',
'Georgia=georgia,palatino,serif',
'Helvetica Neue=Helvetica Neue',
'Helvetica=helvetica,arial,sans-serif',
'Impact=impact,sans-serif',
'Symbol=symbol',
'Tahoma=tahoma,arial,helvetica,sans-serif',
'Terminal=terminal,monaco,monospace',
'Times New Roman=times new roman,times,serif',
'Trebuchet MS=trebuchet ms,geneva,sans-serif',
'Verdana=verdana,geneva,sans-serif',
])
export const FontStyleSetter: React.FC = observer(
(props) => {
const field = useField()
const prefix = usePrefix('font-style-setter')
return (
,
value: 'normal',
},
{
label: ,
value: 'italic',
},
]}
component={[Radio.Group, { optionType: 'button' }]}
/>
,
value: 'left',
},
{
label: ,
value: 'center',
},
{
label: ,
value: 'right',
},
{
label: ,
value: 'justify',
},
]}
component={[Radio.Group, { optionType: 'button' }]}
/>
,
value: 'underline',
},
{
label: ,
value: 'line-through',
},
]}
component={[Radio.Group, { optionType: 'button' }]}
/>
)
}
)