Skip to content

Latest commit

 

History

History
274 lines (207 loc) · 6.33 KB

EmptyState.md

File metadata and controls

274 lines (207 loc) · 6.33 KB
sidebar_position
33

EmptyState

The EmptyState component is to be used when there is no data to display, usually after attempting to load some content from an external API. It is a container that can hold a heading and content. It can also display an image and provide a button to interact with.

Props

<EmptyState
  preset="generic"
  style={{ padding: 10 }}
  imageSource={require("../../assets/images/sad-face.png")}
  imageStyle={{ height: 400, width: 400 }}
  ImageProps={{ resizeMode: "contain" }}
  heading="EmptyState Heading"
  headingStyle={{ color: "#a511dc" }}
  HeadingTextProps={{ weight: "bold" }}
  content="EmptyState Content"
  contentStyle={{ color: "#a511dc" }}
  ContentTextProps={{ weight: "light" }}
  button="Press here"
  buttonOnPress={handleButtonPress}
/>

preset

The preset prop is used to set the preset container style of the EmptyState. This affects the default image, heading, content and button. Currently, only one preconfigured preset exists: generic.

<EmptyState preset="generic" heading="EmptyState Heading" content="EmptyState Content" />

style

The style prop is used to set the style override for the container.

<EmptyState
  style={{ padding: 10, marginTop: 20 }}
  heading="EmptyState Heading"
  content="EmptyState Content"
/>

imageSource

The imageSource prop is used to set the Image source to be displayed above the heading.

<EmptyState
  imageSource={require("../../assets/images/empty-state.png")}
  heading="EmptyState Heading"
  content="EmptyState Content"
/>

imageStyle

The imageStyle prop is used to set any style overrides to be applied to the image about the heading.

<EmptyState
  imageSource={require("../../assets/images/empty-state.png")}
  imageStyle={{ borderRadius: 5 }}
  heading="EmptyState Heading"
  content="EmptyState Content"
/>

ImageProps

The ImageProps prop is used to pass any additional props directly to the Image component. It will accept any prop that the Image component accepts.

<EmptyState
  imageSource={require("../../assets/images/empty-state.png")}
  ImageProps={{ onLoad: handleImageLoaded }}
  heading="EmptyState Heading"
  content="EmptyState Content"
/>

heading

The heading prop is used to set the heading text of the EmptyState.

<EmptyState heading="EmptyState Heading" content="EmptyState Content" button="EmptyState Button" />

headingTx

The headingTx prop is used to set the heading text of the EmptyState using a translation key.

<EmptyState
  headingTx="EmptyState.heading"
  content="EmptyState Content"
  button="EmptyState Button"
/>

headingTxOptions

The headingTxOptions prop is used to set the options for the translation key used by the headingTx prop.

<EmptyState
  headingTx="EmptyState.heading"
  headingTxOptions={{ count: 2 }}
  content="EmptyState Content"
  button="EmptyState Button"
/>

headingStyle

The headingStyle prop is used to set the style of the heading text.

<EmptyState
  heading="EmptyState Heading"
  headingStyle={{ color: "red" }}
  content="EmptyState Content"
  button="EmptyState Button"
/>

HeadingTextProps

The HeadingTextProps prop is used to pass any additional props to the heading Text component. It will accept any prop that the Text component accepts.

<EmptyState
  heading="EmptyState Heading"
  HeadingTextProps={{ size: "lg" }}
  content="EmptyState Content"
  button="EmptyState Button"
/>

content

The content prop is used to set the content text of the EmptyState.

<EmptyState heading="EmptyState Heading" content="EmptyState Content" button="EmptyState Button" />

contentTx

The contentTx prop is used to set the content text of the EmptyState using a translation key.

<EmptyState
  heading="EmptyState Heading"
  contentTx="EmptyState.content"
  button="EmptyState Button"
/>

contentTxOptions

The contentTxOptions prop is used to set the options for the translation key used by the contentTx prop.

<EmptyState
  heading="EmptyState Heading"
  contentTx="EmptyState.content"
  contentTxOptions={{ count: 2 }}
  button="EmptyState Button"
/>

contentStyle

The contentStyle prop is used to set the style of the content text.

<EmptyState
  heading="EmptyState Heading"
  content="EmptyState Content"
  contentStyle={{ backgroundColor: colors.error, color: colors.palette.neutral100 }}
  button="EmptyState Button"
/>

ContentTextProps

The ContentTextProps prop is used to pass any additional props to the content Text component. It will accept any prop that the Text component accepts.

<EmptyState
  heading="EmptyState Heading"
  content="EmptyState Content"
  ContentTextProps={{ size: "lg" }}
  button="EmptyState Button"
/>

button

The button prop is used to set the button text of the EmptyState.

<EmptyState heading="EmptyState Heading" content="EmptyState Content" button="EmptyState Button" />

buttonTx

The buttonTx prop is used to set the button text of the EmptyState using a translation key.

<EmptyState
  heading="EmptyState Heading"
  content="EmptyState Content"
  buttonTx="EmptyState.button"
/>

buttonTxOptions

The buttonTxOptions prop is used to set the options for the translation key used by the buttonTx prop.

<EmptyState
  heading="EmptyState Heading"
  content="EmptyState Content"
  buttonTx="EmptyState.button"
  buttonTxOptions={{ count: 2 }}
/>

buttonStyle

The buttonStyle prop is used to set the style overrides of the button.

<EmptyState
  heading="EmptyState Heading"
  content="EmptyState Content"
  button="EmptyState Button"
  buttonStyle={{ backgroundColor: "red" }}
/>

buttonTextStyle

The buttonTextStyle prop is used to set the style of the button text.

<EmptyState
  heading="EmptyState Heading"
  content="EmptyState Content"
  button="EmptyState Button"
  buttonTextStyle={{ color: "red" }}
/>

ButtonProps

The ButtonProps prop is used to pass any additional props to the Button component. It will accept any prop that the Button component accepts.

<EmptyState
  heading="EmptyState Heading"
  content="EmptyState Content"
  ButtonProps={{ preset: "reversed" }}
/>