https://github.com/doasync/effector-kit
🧰
https://github.com/doasync/effector-kit
Last synced: 11 months ago
JSON representation
🧰
- Host: GitHub
- URL: https://github.com/doasync/effector-kit
- Owner: doasync
- License: mit
- Created: 2020-10-19T16:24:02.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-07T21:50:04.000Z (about 3 years ago)
- Last Synced: 2025-03-29T13:45:53.070Z (12 months ago)
- Language: TypeScript
- Size: 1.06 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![NPM Version][npm-image]][npm-url] ![NPM Downloads][downloads-image] [![GitHub issues][issues-image]][issues-url]
[npm-image]: https://img.shields.io/npm/v/effector-kit.svg
[npm-url]: https://www.npmjs.com/package/effector-kit
[downloads-image]: https://img.shields.io/npm/dw/effector-kit.svg
[deps-image]: https://david-dm.org/doasync/effector-kit.svg
[issues-image]: https://img.shields.io/github/issues/doasync/effector-kit.svg
[issues-url]: https://github.com/doasync/effector-kit/issues
# Effector kit
🧰
---
## Installation
```bash
npm install effector effector-kit
```
or
```bash
yarn add effector effector-kit
```
## Usage
getVoid:
```ts
sample({
source: initMapFx.done,
fn: getVoid,
target: createPopupFx,
});
```
getInverted:
```ts
sample({
source: $loader,
clock: guard($pending, { filter: getInverted }),
target: removeLoaderFx,
});
```
setPayload:
```ts
$countries.on(fetchCountriesFx.doneData, setPayload);
$schoolId.on(changeSchoolId, setPayload);
```
### Helpers
```ts
export const getVoid = (payload?: unknown): void => undefined;
export const getInverted = (payload: unknown): boolean => !payload;
export const setBoolean = (state: unknown, value: unknown): boolean =>
Boolean(value);
export const setTrue = (state?: unknown, payload?: unknown): true => true;
export const setFalse = (state?: unknown, payload?: unknown): false => false;
export const setNull = (state?: unknown, payload?: unknown): null => null;
export const setPayload = (
state: unknown,
payload: Payload
): Payload => payload;
```