# cavemen

> Primitive react components

Latest version **0.0.21** (published 2019-07-17) · MIT license · 0 weekly downloads

## Install

```sh
npm install cavemen
pnpm add cavemen
yarn add cavemen
bun add cavemen
```

## Health

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

Positive: esm support; no vulnerabilities.

Warnings: low downloads; no types; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.21 |
| Published | 2019-07-17 |
| First published | 2019-05-28 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | ESM + CommonJS |
| Dependencies | 12 |
| Unpacked size | 208.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Author | Katia Wheeler |
| Maintainers | katiawheeler |
| Keywords | react, dropdown, select, button, ui, primitives |

## Links

- npm: https://www.npmjs.com/package/cavemen
- Repository: https://github.com/katiawheeler/cavemen
- Homepage: https://github.com/katiawheeler/cavemen#readme
- Issues: https://github.com/katiawheeler/cavemen/issues
- npm.io page: https://npm.io/package/cavemen

## Dependencies (12)

- [react](https://npm.io/package/react.md) ^16.8.4
- [react-dom](https://npm.io/package/react-dom.md) ^16.8.4
- [@emotion/core](https://npm.io/package/@emotion/core.md) ^10.0.7
- [lodash.unionby](https://npm.io/package/lodash.unionby.md) ^4.8.0
- [@emotion/styled](https://npm.io/package/@emotion/styled.md) ^10.0.7
- [lodash.uniqueid](https://npm.io/package/lodash.uniqueid.md) ^4.0.1
- [lodash.intersection](https://npm.io/package/lodash.intersection.md) ^4.4.0
- [@types/lodash.unionby](https://npm.io/package/@types/lodash.unionby.md) ^4.8.6
- [@emotion/babel-preset-css-prop](https://npm.io/package/@emotion/babel-preset-css-prop.md) ^10.0.14
- [@fortawesome/react-fontawesome](https://npm.io/package/@fortawesome/react-fontawesome.md) ^0.1.4
- [@fortawesome/fontawesome-svg-core](https://npm.io/package/@fortawesome/fontawesome-svg-core.md) ^1.2.17
- [@fortawesome/free-solid-svg-icons](https://npm.io/package/@fortawesome/free-solid-svg-icons.md) ^5.8.1

## Alternatives

- [mobx-react](https://npm.io/package/mobx-react.md) — 2.8M weekly downloads
- [rc-tree](https://npm.io/package/rc-tree.md) — 2.6M weekly downloads
- [@react-oauth/google](https://npm.io/package/@react-oauth/google.md) — 1.3M weekly downloads
- [@wagmi/connectors](https://npm.io/package/@wagmi/connectors.md) — 877.0K weekly downloads
- [vee-validate](https://npm.io/package/vee-validate.md) — 836.4K weekly downloads

## Recent versions

- 0.0.21 (latest) — 2019-07-17
- 0.0.20 — 2019-07-09
- 0.0.19 — 2019-07-09
- 0.0.18 — 2019-07-09
- 0.0.17 — 2019-07-09
- 0.0.16 — 2019-07-01
- 0.0.15 — 2019-06-28
- 0.0.14 — 2019-06-05
- 0.0.13 — 2019-06-05
- 0.0.12 — 2019-06-05
- 0.0.11 — 2019-06-05
- 0.0.10 — 2019-06-05
- 0.0.9 — 2019-06-05
- 0.0.8 — 2019-06-04
- 0.0.7 — 2019-06-04
- … 6 more at https://npm.io/package/cavemen/versions

## README

# Cavemen
Primitive React Components

**PLEASE NOTE:** At this current time, `searchable` cannot be used with `multiple`

# Dropdown

| Prop               | Description                                              | Type                           | Required                       | Default Value |
|--------------------|----------------------------------------------------------|--------------------------------|:------------------------------:|:-------------:|
| **options**        | An array of `Option` type to display                     | `Option[]`                     | *                              |       -       |
| **onChange**       | An event handler for when an `Option` is selected.       | `Handler`                      | *                              |       -       |
| **clearable**      | Whether or not the Dropdown Option can be cleared        | `Boolean`                      |                                |    `false`    |
| **default**        | A default `Option` to be selected                        | `Option`                       |                                |       -       |
| **disabled**       | Whether or not the Dropdown is disabled                  | `Boolean`                      |                                |    `false`    |
| **id**             | An ID to append to the Dropdown wrapper                  | `String`                       |                                |       -       |
| **label**          | A label for the Dropdown - appears directly above it     | `String`                       |                                |       -       |
| **multiple**       | Whether or not the Dropdown should be a mult-select      | `Boolean`                      |                                |    `false`    |
| **open**           | Whether or not the Dropdown is open on render            | `Boolean`                      |                                |    `false`    |
| **placeholder**    | Placeholder text before a user selects an option         | `String`                       |                                |       -       |
| **searchable**     | Allows users to search for `Option`                      | `Boolean`                      |                                |    `false`    |
| **trigger**        | A component passed down as a trigger - for example, if you want an icon to have dropdown functionality         | `ReactNode`                       |                                |       -       |

## Dropdown Types

### Option

```ts
interface Option {
    value: string | number,
    name: string
}
```

### Handler

```ts
type Handler = (option: Option | Option[] | null, event: SyntheticEvent) => void;
```

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