2.0.3 • Published 11 months ago

create-context-state v2.0.3

Weekly downloads
229
License
MIT
Repository
github
Last release
11 months ago

create-context-state

Manage your react state with a simple context hook creator.

Version Weekly Downloads Bundled size Typed Codebase MIT License

Installation

# yarn
yarn add create-context-state

# pnpm
pnpm add create-context-state

# npm
npm install create-context-state

Usage

Create a context and provider with built in setters and getters.

import { createContextState } from 'create-context-state';

const [CountProvider, useCount] = createContextState(({ set, get }) => ({
  defaultValue: 0,
  value: 0,
  increment: () => set((state) => ({ value: state.value + 1 })),
  decrement: () => set((state) => ({ value: state.value - 1 })),
  reset: () => get('value') !== get('defaultValue'),
}));

const App = () => {
  return (
    <CountProvider>
      <Counter />
    </CountProvider>
  );
};

const Counter = () => {
  const { value, increment, decrement, reset } = useCount();

  return (
    <>
      <span>{value}</span>
      <button onClick={() => increment()}>+</button>
      <button onClick={() => decrement()}>-</button>
      <button onClick={() => reset()}>reset</button>
    </>
  );
};
2.0.3

11 months ago

2.0.3-beta.1

11 months ago

2.0.3-beta.0

11 months ago

0.0.0-pr2271.1

11 months ago

0.0.0-pr2271.2

11 months ago

0.0.0-pr2222.1

2 years ago

0.0.0-pr2223.1

2 years ago

0.0.0-pr2169.1

2 years ago

0.0.0-pr2169.2

2 years ago

0.0.0-pr2156.1

2 years ago

0.0.0-pr2118.1

2 years ago

0.0.0-pr2166.2

2 years ago

0.0.0-pr2166.3

2 years ago

0.0.0-pr2166.1

2 years ago

0.0.0-pr2128.2

2 years ago

0.0.0-pr2128.3

2 years ago

0.0.0-pr2166.4

2 years ago

0.0.0-pr2128.4

2 years ago

0.0.0-pr2128.1

2 years ago

0.0.0-pr2100.1

2 years ago

2.0.2

2 years ago

2.0.1

2 years ago

0.0.0-pr1966.1

2 years ago

0.0.0-pr1942.1

3 years ago

0.0.0-pr1948.1

3 years ago

0.0.0-pr1938.1

3 years ago

0.0.0-pr1922.1

3 years ago

0.0.0-pr1922.2

3 years ago

0.0.0-pr1879.1

3 years ago

2.0.0

3 years ago

0.0.0-pr1887.1

3 years ago

0.0.0-pr1873.1

3 years ago

2.0.0-beta.15

3 years ago

2.0.0-beta.14

3 years ago

2.0.0-beta.13

3 years ago

2.0.0-beta.18

3 years ago

2.0.0-beta.17

3 years ago

2.0.0-beta.16

3 years ago

0.0.0-pr1881.1

3 years ago

0.0.0-pr1881.2

3 years ago

0.0.0-pr1862.1

3 years ago

0.0.0-pr1885.1

3 years ago

2.0.0-beta.9

3 years ago

2.0.0-beta.8

3 years ago

2.0.0-beta.7

3 years ago

2.0.0-beta.2

3 years ago

2.0.0-beta.1

3 years ago

2.0.0-beta.0

3 years ago

2.0.0-beta.6

3 years ago

2.0.0-beta.5

3 years ago

2.0.0-beta.4

3 years ago

2.0.0-beta.3

3 years ago

0.0.0-pr1713.8

3 years ago

0.0.0-pr1713.7

3 years ago

0.0.0-pr1713.9

3 years ago

0.0.0-pr1713.4

3 years ago

0.0.0-pr1713.6

3 years ago

0.0.0-pr1713.5

3 years ago

0.0.0-pr1713.12

3 years ago

0.0.0-pr1713.11

3 years ago

0.0.0-pr1713.10

3 years ago

2.0.0-beta.11

3 years ago

2.0.0-beta.10

3 years ago

2.0.0-beta.12

3 years ago

0.0.0-pr1801.2

3 years ago

0.0.0-pr1801.1

3 years ago

0.0.0-pr1801.3

3 years ago

0.0.0-pr1713.2

3 years ago

0.0.0-pr1713.1

3 years ago

0.0.0-pr1713.3

3 years ago

0.0.0-pr1654.1

3 years ago

0.0.0-pr1629.1

3 years ago

0.0.0-pr1581.2

3 years ago

0.0.0-pr1581.3

3 years ago

0.0.0-pr1581.1

3 years ago

0.0.0-pr1608.1

3 years ago

0.0.0-pr1549.1

3 years ago

0.0.0-pr1558.1

3 years ago

0.0.0-pr1586.1

3 years ago

0.0.0-pr1552.3

3 years ago

0.0.0-pr1552.2

3 years ago

0.0.0-pr1552.1

3 years ago

0.0.0-pr1545.1

3 years ago

0.0.0-pr1532.1

3 years ago

0.0.0-pr1496.1

3 years ago

0.0.0-pr1452.1

3 years ago

0.0.0-pr1463.1

3 years ago

0.0.0-pr1367.1

4 years ago

0.0.0-pr1392.1

4 years ago

0.0.0-pr1365.1

4 years ago

0.0.0-pr1340.1

4 years ago

0.0.0-pr1344.1

4 years ago

0.0.0-pr1310.1

4 years ago

0.0.0-pr1305.1

4 years ago

0.0.0-pr1242.4

4 years ago

0.0.0-pr1242.2

4 years ago

0.0.0-pr1242.3

4 years ago

0.0.0-pr1242.1

4 years ago

0.0.0-pr1174.1

4 years ago

0.0.0-pr1161.2

4 years ago

0.0.0-pr1161.1

4 years ago

0.0.0-pr1158.1

4 years ago

0.0.0-pr1102.1

4 years ago

0.0.0-pr1031.1

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago

0.0.0-pr706.36

4 years ago

0.0.0-pr997.1

4 years ago

0.0.0-pr993.1

4 years ago

0.0.0-pr706.35

4 years ago

0.0.0-pr706.34

4 years ago

0.0.0-pr706.33

4 years ago

0.0.0-pr950.7

4 years ago

0.0.0-pr950.6

4 years ago

0.0.0-pr950.5

4 years ago

0.0.0-pr706.32

4 years ago

0.0.0-pr706.31

4 years ago

0.0.0-pr963.1

4 years ago

0.0.0-pr965.1

4 years ago

0.0.0-pr706.29

4 years ago

0.0.0-pr706.30

4 years ago

0.0.0-pr959.1

4 years ago

0.0.0-pr706.28

4 years ago

0.0.0-pr960.1

4 years ago

0.0.0-pr950.4

4 years ago

0.0.0-pr956.1

4 years ago

0.0.0-pr706.27

4 years ago

0.0.0-pr950.3

4 years ago

0.0.0-pr930.1

4 years ago

0.0.0-pr706.20

4 years ago

0.0.0-pr706.21

4 years ago

0.0.0-pr706.22

4 years ago

0.0.0-pr706.23

4 years ago

0.0.0-pr706.24

4 years ago

0.0.0-pr706.25

4 years ago

0.0.0-pr706.26

4 years ago

0.0.0-pr941.2

4 years ago

0.0.0-pr941.1

4 years ago

0.0.0-pr950.2

4 years ago

0.0.0-pr950.1

4 years ago

0.0.0-pr706.19

4 years ago

0.0.0-pr920.1

4 years ago

0.0.0-pr905.4

4 years ago

0.0.0-pr905.3

4 years ago

0.0.0-pr922.1

4 years ago

0.0.0-pr706.18

4 years ago

0.0.0-pr919.1

4 years ago

0.0.0-pr919.2

4 years ago

0.0.0-pr706.17

4 years ago

0.0.0-pr911.2

4 years ago

0.0.0-pr706.16

4 years ago

0.0.0-pr905.2

4 years ago

0.0.0-pr911.1

4 years ago

0.0.0-pr706.15

4 years ago

0.0.0-pr877.9

4 years ago

0.0.0-pr877.8

4 years ago

0.0.0-pr905.1

4 years ago

0.0.0-pr877.7

4 years ago

0.0.0-pr706.14

4 years ago

0.0.0-pr901.1

4 years ago

0.0.0-pr877.5

4 years ago

0.0.0-pr877.6

4 years ago

0.0.0-pr706.13

4 years ago

0.0.0-pr877.4

4 years ago

0.0.0-pr706.12

4 years ago

0.0.0-pr706.11

4 years ago

0.0.0-pr885.1

4 years ago

0.0.0-pr877.2

4 years ago

0.0.0-pr877.3

4 years ago

0.0.0-pr706.10

4 years ago

0.0.0-pr877.1

4 years ago

0.0.0-pr706.9

4 years ago

0.0.0-pr706.8

4 years ago

0.0.0-pr706.7

4 years ago

0.0.0-pr706.6

4 years ago

0.0.0-pr706.5

4 years ago

0.0.0-pr706.4

4 years ago

0.0.0-pr706.3

4 years ago

0.0.0-pr862.2

4 years ago

0.0.0-pr862.1

4 years ago

0.0.0-pr706.2

4 years ago

0.0.0-pr706.1

4 years ago

0.0.0-pr706

4 years ago