import type { ThemeProps } from 'jamis-core'; import type { FormBaseControlSchema, FormControlProps, FormOptionsSchema, SchemaTpl } from '../types'; /** * Picker * */ export interface PickerControlSchema extends FormOptionsSchema { type: 'picker'; /** * 可用来生成选中的值的描述文字 */ labelTpl?: SchemaTpl; /** * 建议用 labelTpl * 选中一个字段名用来作为值的描述文字 */ labelField?: string; /** * 选一个可以用来作为值的字段。 */ valueField?: string; /** * 弹窗选择框详情。 */ pickerSchema?: any; /** * 弹窗模式,dialog 或者 drawer */ modalMode?: 'dialog' | 'drawer'; /** * 内嵌模式,也就是说不弹框了。 */ embed?: boolean; } /** * Location 选点组件 * */ export interface LocationControlSchema extends FormBaseControlSchema { type: 'location-picker'; /** * 选择地图类型 */ vendor?: 'baidu' | 'gaode' | 'tenxun'; /** * 有的地图需要设置 ak 信息 */ ak?: string; } export interface LocationPickerProps extends FormControlProps, ThemeProps, Omit { value: any; onChange: (value: any) => void; vendor: 'baidu' | 'gaode' | 'tenxun'; ak: string; coordinatesType: 'bd09' | 'gcj02'; }