# PollAllOptions

A component used to render a list of all of the options that a `Poll` has. Voting on each option on this screen is also enabled. Needs to be structured inside a [`Channel` component](/chat/docs/sdk/react-native/v5/core-components/channel/).

It will render its default `PollAllOptionsContent`, which can be overridden for custom UI. Its children have access to the entire `poll` state through the `usePollState` hook.

## General Usage

```tsx
import {
  OverlayProvider,
  Chat,
  Channel,
  PollAllOptions,
} from "stream-chat-react-native";

const App = () => {
  return (
    <OverlayProvider>
      <Chat client={client}>
        <Channel channel={channel}>
          <PollAllOptions
            message={message}
            poll={poll}
            {...otherOptionalProps}
          />
        </Channel>
      </Chat>
    </OverlayProvider>
  );
};
```

## Props

### message

<partial id="chat-sdk/react-native/v5/_partials/common-content/contexts/message-context/message"></partial>

### `poll` \*

<partial id="chat-sdk/react-native/v5/_partials/common-content/contexts/poll-context/poll"></partial>

### `additionalScrollViewProps`

A prop used to override the underlying [`ScrollView`](https://reactnative.dev/docs/scrollview#props) props of the `PollAllOptions`.

```jsx
const flatListProps = { bounces: true };

<PollAllOptions additionalFlatListProps={flatListProps} />;
```

| Type   |
| ------ |
| object |

### `PollAllOptionsContent`

A `Component` prop used to render the content of the `PollAllOptions` component.

The component has full access to the entire `Poll` reactive state through the `usePollState` hook.

| Type          | Default                                                                                                                               |
| ------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| ComponentType | [`PollAllOptionsContent`](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Poll/PollOption.tsx) |

#### Usage

```tsx
import { Text } from "react-native";
import {
  OverlayProvider,
  Chat,
  Channel,
  PollAllOptions,
  usePollState,
} from "stream-chat-react-native";

const MyPollAllOptionsContent = () => {
  const { options } = usePollState();
  return options.map((option) => <Text>{option.id}</Text>);
};

const App = () => {
  return (
    <OverlayProvider>
      <Chat client={client}>
        <Channel channel={channel}>
          <PollAllOptions
            message={message}
            poll={poll}
            PollAllOptionsContent={MyPollAllOptionsContent}
          />
        </Channel>
      </Chat>
    </OverlayProvider>
  );
};
```

---

This page was last updated at 2025-08-15T14:16:17.367Z.

For the most recent version of this documentation, visit [https://getstream.io/chat/docs/sdk/react-native/v5/ui-components/poll-all-options/](https://getstream.io/chat/docs/sdk/react-native/v5/ui-components/poll-all-options/).