# expo-contacts-wrapper

> Simple UI wrapper around expo's Contacts API.

Latest version **0.0.3** (published 2020-03-19) · MIT license · 0 weekly downloads

## Install

```sh
npm install expo-contacts-wrapper
pnpm add expo-contacts-wrapper
yarn add expo-contacts-wrapper
bun add expo-contacts-wrapper
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.3 |
| Published | 2020-03-19 |
| First published | 2020-03-12 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 2 |
| Unpacked size | 9.9 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Benjamin Godlove |
| Maintainers | brg8 |
| Keywords | expo, contact, contacts, react native, react-native |

## Links

- npm: https://www.npmjs.com/package/expo-contacts-wrapper
- Homepage: https://github.com/brg8/expo-contacts-wrapper#readme
- Issues: https://github.com/brg8/expo-contacts-wrapper/issues
- npm.io page: https://npm.io/package/expo-contacts-wrapper

## Dependencies (2)

- [lodash](https://npm.io/package/lodash.md) ^4.17.15
- [expo-contacts](https://npm.io/package/expo-contacts.md) ^8.0.0

## Recent versions

- 0.0.3 (latest) — 2020-03-19
- 0.0.2 — 2020-03-12
- 0.0.1 — 2020-03-12

## README

A UI wrapper for expo's native Contacts API. Renders contacts in a list.

## Installation
```
# yarn
yarn add expo-contacts-wrapper

# npm
npm install expo-contacts-wrapper --save
```

## Usage
```
import { ContactsListWrapper } from "expo-contacts-wrapper";

export default function App() {
  const finishSelectingContacts = (selectedContacts) => {
    console.log("Selected Contacts", selectedContacts);
  };

  return <ContactsListWrapper onFinish={finishSelectingContacts} />;
}
```

## Props
| Prop        | Required?     | Type  | Default | Description |
| ------------- |:-------------:| -----:| ------:| ----------------:|
| `onFinish`  | true | function | None |  Callback when user is done adding contacts. First argument is array of contacts. |
| `pageSize` | false | Integer | 50 | How many contacts to load per page. |
| `sort` | false | SortType | `Contacts.SortTypes.LastName` | Sort type provided by Expo. |
| `LoadingComponent` | false | Component | | Component to show while contacts are loading. |
| `PermissionDeniedComponent` | false | Component | | Component to show when permission to the Contacts list is denied. |
| `searchBarTextInputProps` | false | Object | None | Set of props to pass to `InputText` search box. |
| `searchBarDebounceMS` | false | Integer | 500 | Debounce timer on the search bar. |
| `ContactComponent` | false | Component | | Custom component to render a contact in the list. Is given props `contact` and `isSelected`. |
| `GetMoreComponent` | false | Component | ActivityIndicator | Component to display at bottom of the list when there are more contacts to load. |
| `contactsListContainerStyle` | false | Object | | Styling for list container. |
| `headerStyle` | false | Object | | Styling for header containing "done" button. |
| `doneButtonStyle` | false | Object | | Styling for done button (`TouchableOpacity`. |
| `doneButtonText` | false | String | "Done" | Text content of the done button. |

---
_Source: https://npm.io/package/expo-contacts-wrapper · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
