Skip to content

Latest commit

 

History

History
109 lines (84 loc) · 3.71 KB

File metadata and controls

109 lines (84 loc) · 3.71 KB

API Report File for "@fluentui/react-field"

Do not edit this file. It is a report generated by API Extractor.

import type { ComponentProps } from '@fluentui/react-utilities';
import type { ComponentState } from '@fluentui/react-utilities';
import type { DistributiveOmit } from '@fluentui/react-utilities';
import type { ForwardRefComponent } from '@fluentui/react-utilities';
import type { JSXElement } from '@fluentui/react-utilities';
import { Label } from '@fluentui/react-label';
import * as React_2 from 'react';
import type { Slot } from '@fluentui/react-utilities';
import type { SlotClassNames } from '@fluentui/react-utilities';

// @public (undocumented)
export const Field: ForwardRefComponent<FieldProps>;

// @public (undocumented)
export type FieldBaseProps = DistributiveOmit<FieldProps, 'orientation' | 'size'>;

// @public (undocumented)
export type FieldBaseState = DistributiveOmit<FieldState, 'orientation' | 'size'>;

// @public (undocumented)
export const fieldClassNames: SlotClassNames<FieldSlots>;

// @public (undocumented)
export const FieldContextProvider: React_2.Provider<Readonly<Pick<FieldState, "required" | "size" | "orientation" | "validationState" | "generatedControlId"> & {
    labelFor?: string;
    labelId?: string;
    validationMessageId?: string;
    hintId?: string;
}> | undefined>;

// @public (undocumented)
export type FieldContextValue = Readonly<Pick<FieldState, 'generatedControlId' | 'orientation' | 'required' | 'size' | 'validationState'> & {
    labelFor?: string;
    labelId?: string;
    validationMessageId?: string;
    hintId?: string;
}>;

// @public (undocumented)
export type FieldContextValues = {
    field: FieldContextValue;
};

// @public
export type FieldControlProps = Pick<React_2.HTMLAttributes<HTMLElement>, 'id' | 'aria-labelledby' | 'aria-describedby' | 'aria-invalid' | 'aria-required'>;

// @public
export type FieldControlPropsOptions = {
    supportsLabelFor?: boolean;
    supportsRequired?: boolean;
    supportsSize?: boolean;
};

// @public
export type FieldProps = Omit<ComponentProps<FieldSlots>, 'children'> & {
    children?: React_2.ReactNode | ((props: FieldControlProps) => React_2.ReactNode);
    orientation?: 'vertical' | 'horizontal';
    validationState?: 'error' | 'warning' | 'success' | 'none';
    required?: boolean;
    size?: 'small' | 'medium' | 'large';
};

// @public
export type FieldSlots = {
    root: NonNullable<Slot<'div'>>;
    label?: Slot<typeof Label>;
    validationMessage?: Slot<'div'>;
    validationMessageIcon?: Slot<'span'>;
    hint?: Slot<'div'>;
};

// @public
export type FieldState = ComponentState<Required<FieldSlots>> & Required<Pick<FieldProps, 'orientation' | 'required' | 'size' | 'validationState'>> & Pick<FieldProps, 'children'> & {
    generatedControlId: string;
};

// @public
export const renderField_unstable: (state: FieldBaseState, contextValues: FieldContextValues) => JSXElement;

// @public
export const useField_unstable: (props: FieldProps, ref: React_2.Ref<HTMLDivElement>) => FieldState;

// @public
export const useFieldBase_unstable: (props: FieldBaseProps, ref: React_2.Ref<HTMLDivElement>) => FieldBaseState;

// @public (undocumented)
export const useFieldContext_unstable: () => FieldContextValue | undefined;

// @public
export const useFieldContextValues_unstable: (state: FieldState) => FieldContextValues;

// @public
export function useFieldControlProps_unstable(): FieldControlProps | undefined;

// @public
export function useFieldControlProps_unstable<Props extends FieldControlProps>(props: Props, options?: FieldControlPropsOptions): Props;

// @public
export const useFieldStyles_unstable: (state: FieldState) => FieldState;

// (No @packageDocumentation comment for this package)