UNPKG

@iimm/formily-mui

Version:

form field components based on @mui/material and @formily/react

59 lines (58 loc) 2.1 kB
import { type ReactNode } from "react"; import { type GridProps } from "@mui/material"; export declare const FormLayoutContext: import("react").Context<IFormLayoutContext>; export declare const useFormLayout: () => IFormLayoutContext; export declare const FormLayout: import("react").MemoExoticComponent<import("@formily/react").ReactFC<Omit<FormLayoutProps & { children?: ReactNode; }, "ref">>>; export interface FormLayoutCols { xs?: GridProps["xs"]; sm?: GridProps["xs"]; md?: GridProps["xs"]; lg?: GridProps["xs"]; xl?: GridProps["xs"]; } interface IFormLayoutContext extends CommonLayoutProps { /** 传递给下层formField,是否包裹FormItemBase * @default true */ withFormItem?: boolean; } export interface CommonLayoutProps { /** Input Select组件显示border上的标签 */ showInnerLabel?: boolean; /** lable/title显示的位置 */ labelPosition?: "top" | "left" | "inner"; labelWidth?: number | string; labelAlign?: "left" | "right"; labelWrap?: boolean; wrapperAlign?: "left" | "right"; wrapperWrap?: boolean; wrapperWidth?: number | string; /** * 子项fullWidth? * @default true */ fullWidth?: boolean; /** label/title显示冒号? */ colon?: boolean; tooltipIcon?: ReactNode; /** 帮助文本显示方式, text:在问题上显示tooltip, icon:在图标上显示tooltip */ tooltipLayout?: "text" | "icon"; /** 显示反馈/错误信息? */ showFeedback?: boolean; /** 反馈/错误文本显示方式: text:以文本方式显示在组件下方, popover:以在图片上的tooltip方式显示在组件右侧 */ feedbackLayout?: "popover" | "text"; /** 手动指定不从外层Field获取信息 */ noField?: boolean; keepFeedbackSpace?: boolean; } export interface FormLayoutProps extends IFormLayoutContext, Omit<GridProps, "item"> { /** 手动指定无需获取form信息 */ noForm?: boolean; /** 默认Grid布局 * @default { xs: 6, sm: 4, md: 3, xl: 2 } */ defaultCols?: FormLayoutCols; } export {};