# redux-persist-transform-filter

> Filter transformator for redux-persist

Latest version **0.0.22** (published 2022-12-08) · MIT license · 0 weekly downloads

## Install

```sh
npm install redux-persist-transform-filter
pnpm add redux-persist-transform-filter
yarn add redux-persist-transform-filter
bun add redux-persist-transform-filter
```

## Health

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

Positive: has types package; no vulnerabilities; high quality score.

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

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.22 |
| Published | 2022-12-08 |
| First published | 2016-08-17 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | separate (@types/redux-persist-transform-filter) |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 12 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 190 |
| Author | Eduard Baun |
| Maintainers | edy |
| Keywords | react, redux, redux-persist, redux-persist-transform, transform, filter |

## Links

- npm: https://www.npmjs.com/package/redux-persist-transform-filter
- Repository: https://github.com/edy/redux-persist-transform-filter
- Homepage: https://github.com/edy/redux-persist-transform-filter#readme
- Issues: https://github.com/edy/redux-persist-transform-filter/issues
- npm.io page: https://npm.io/package/redux-persist-transform-filter

## Dependencies (1)

- [lodash](https://npm.io/package/lodash.md) ^4.17.21

## 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.22 (latest) — 2022-12-08
- 0.0.21 — 2022-12-01
- 0.0.20 — 2019-10-15
- 0.0.19 — 2019-10-15
- 0.0.18 — 2018-06-13
- 0.0.17 — 2018-05-23
- 0.0.16 — 2017-10-28
- 0.0.15 — 2017-07-19
- 0.0.14 — 2017-06-28
- 0.0.13 — 2017-06-15
- 0.0.12 — 2017-06-15
- 0.0.11 — 2017-06-14
- 0.0.10 — 2017-05-20
- 0.0.9 — 2017-02-13
- 0.0.8 — 2017-02-11
- … 4 more at https://npm.io/package/redux-persist-transform-filter/versions

## README

# redux-persist-transform-filter

[![npm](https://img.shields.io/npm/v/redux-persist-transform-filter.svg?maxAge=2592000&style=flat-square)](https://www.npmjs.com/package/redux-persist-transform-filter)
[![Build Status](https://travis-ci.org/edy/redux-persist-transform-filter.svg?branch=master)](https://travis-ci.org/edy/redux-persist-transform-filter)

Filter transformator for redux-persist

## Installation
```
  npm install redux-persist-transform-filter
```

## Usage

```js
import { createFilter, createBlacklistFilter } from 'redux-persist-transform-filter';

// this works too:
import createFilter, { createBlacklistFilter } from 'redux-persist-transform-filter';

// you want to store only a subset of your state of reducer one
const saveSubsetFilter = createFilter(
  'myReducerOne',
  ['keyYouWantToSave1', 'keyYouWantToSave2']
);

// you want to remove some keys before you save
const saveSubsetBlacklistFilter = createBlacklistFilter(
  'myReducerTwo',
  ['keyYouDontWantToSave1', 'keyYouDontWantToSave2']
);

// you want to load only a subset of your state of reducer three
const loadSubsetFilter = createFilter(
  'myReducerThree',
  null,
  ['keyYouWantToLoad1', 'keyYouWantToLoad2']
);

// saving a subset and loading a different subset is possible
// but doesn't make much sense because you'd load an empty state
const saveAndloadSubsetFilter = createFilter(
  'myReducerFour',
  ['one', 'two']
  ['three', 'four']
);

const predicateFilter = persistFilter(
	'form',
	[
		{ path: 'one', filterFunction: (item: any): boolean => item.mustBeStored },
		{ path: 'two', filterFunction: (item: any): boolean => item.mustBeStored },
	],
	'whitelist'
)

const normalPathFilter = persistFilter(
	'form',
	['one', 'two'],
	'whitelist'
)

persistStore(store, {
  transforms: [
    saveSubsetFilter,
    saveSubsetBlacklistFilter,
    loadSubsetFilter,
    saveAndloadSubsetFilter,
  ]
});
```

## Example project

```sh
git clone https://github.com/edy/redux-persist-transform-filter-example.git
cd redux-persist-transform-filter-example
npm install
npm start
```

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