@veracity/vui
Version:
Veracity UI is a React component library crafted for use within Veracity applications and pages. Based on Styled Components and @xstyled.
65 lines (64 loc) • 2.78 kB
TypeScript
import { PropsOf } from "../utils/types.js";
import "../utils/index.js";
import { ThemingProps } from "../theme/types.js";
import "../theme/index.js";
import { SystemProps } from "../system/system.js";
import "../system/index.js";
import { IconProp } from "../icon/icon.types.js";
import "../icon/index.js";
import { LinkProps } from "../link/link.types.js";
import "../link/index.js";
import { JSX, ReactNode } from "react";
//#region src/list/list.types.d.ts
type ListProps = SystemProps & ThemingProps<'List'> & {
/** Deprecated. @deprecated */
colorScheme?: 'blue' | 'grey';
/** Socket displaying a heading above the items. */
heading?: React.ReactNode;
/** Passed to all nested items to make them interactive. */
isInteractive?: boolean;
/** Socket displaying a list of items. */
items?: PropsOf<'li', ListItemProps>[] | JSX.Element;
/** Socket for the variant. The 'blue' variant is internal, used in the header. */
variant?: 'default' | 'ordered' | 'unordered' | 'blue';
};
type ListItemLinkProps = PropsOf<'a', LinkProps> | object;
type ListItemProps = SystemProps & ThemingProps<'List'> & {
/** Centers the content vertically and horizontally. @deprecated */
center?: boolean;
/** Centers the content horizontally. @deprecated */
centerH?: boolean;
/** Centers the content vertically. @deprecated */
centerV?: boolean;
/** Deprecated. @deprecated */
colorScheme?: 'blue' | 'grey';
/** Displays content in a column. @deprecated */
column?: boolean;
/** Displays item and its content in disabled state with appropriate styling. */
disabled?: boolean;
/** Icon displayed on the leading (left) side of the item content. */
startIcon?: IconProp | JSX.Element;
/** Icon displayed on the trailing (right) side of the item content. */
endIcon?: IconProp | JSX.Element;
/** Deprecated alias for `startIcon`. @deprecated */
iconLeft?: IconProp | JSX.Element;
/** Deprecated alias for `endIcon`. @deprecated */
iconRight?: IconProp | JSX.Element;
/** Makes item clickable and focusable with appropriate styling. */
isInteractive?: boolean;
/** Displays item in selected state with appropriate styling. */
isSelected?: boolean;
/** Socket displaying a custom item on the left. */
itemLeft?: ReactNode;
/** Socket displaying a custom item on the right. */
itemRight?: ReactNode;
/** If true, item Left or item right will receive size params based on main size. */
syncItemSizes?: boolean;
/** If provided, content is wrapper with a link and the props are provided to the element. */
linkProps?: ListItemLinkProps;
/** Socket displaying text within the item. */
text?: ReactNode;
};
//#endregion
export { ListItemLinkProps, ListItemProps, ListProps };
//# sourceMappingURL=list.types.d.ts.map