UNPKG

@wordpress/components

Version:
51 lines 1.79 kB
/** * External dependencies */ import type { ReactNode } from 'react'; export type TruncateEllipsizeMode = 'auto' | 'head' | 'tail' | 'middle' | 'none'; export type TruncateProps = { /** * The ellipsis string when truncating the text by the `limit` prop's value. * * @default '…' */ ellipsis?: string; /** * Determines where to truncate. For example, we can truncate text right in * the middle. To do this, we need to set `ellipsizeMode` to `middle` and a * text `limit`. * * * `auto`: Trims content at the end automatically without a `limit`. * * `head`: Trims content at the beginning. Requires a `limit`. * * `middle`: Trims content in the middle. Requires a `limit`. * * `tail`: Trims content at the end. Requires a `limit`. * * @default 'auto' */ ellipsizeMode?: TruncateEllipsizeMode; /** * Determines the max number of characters to be displayed before the rest * of the text gets truncated. Requires `ellipsizeMode` to assume values * different from `auto` and `none`. * * @default 0 */ limit?: number; /** * Clamps the text content to the specified `numberOfLines`, adding an * ellipsis at the end. Note: this feature ignores the value of the * `ellipsis` prop and always displays the default `…` ellipsis. * * @default 0 */ numberOfLines?: number; /** * The children elements. * * Note: text truncation will be attempted only if the `children` are either * of type `string` or `number`. In any other scenarios, the component will * not attempt to truncate the text, and will pass through the `children`. */ children: ReactNode; }; //# sourceMappingURL=types.d.ts.map