redux-devtools/packages/redux-devtools-inspector-monitor
Nathan Bierema 0399d306c0
chore(*): move redux-devtools-app to scoped package (#693)
* stash

* more

* cli rename

* Remove reference

* Fix another reference

* Fix scripts

* Fix package name

* Fix tsconfig
2020-12-22 12:02:14 -05:00
..
demo chore(*): make more packages scoped (#692) 2020-12-21 15:46:28 -05:00
src chore(redux-devtools): move to scoped package (#691) 2020-12-21 09:08:08 -05:00
.babelrc refactor(redux-devtools-inspector-monitor): rename package (#633) 2020-09-10 12:37:19 -04:00
.eslintignore refactor(redux-devtools-inspector-monitor): rename package (#633) 2020-09-10 12:37:19 -04:00
.eslintrc.js refactor(redux-devtools-inspector-monitor): rename package (#633) 2020-09-10 12:37:19 -04:00
CHANGELOG.md refactor(redux-devtools-inspector-monitor): rename package (#633) 2020-09-10 12:37:19 -04:00
demo.gif refactor(redux-devtools-inspector-monitor): rename package (#633) 2020-09-10 12:37:19 -04:00
LICENSE.md refactor(redux-devtools-inspector-monitor): rename package (#633) 2020-09-10 12:37:19 -04:00
package.json chore(*): move redux-devtools-app to scoped package (#693) 2020-12-22 12:02:14 -05:00
README.md chore(*): make more packages scoped (#692) 2020-12-21 15:46:28 -05:00
tsconfig.json refactor(redux-devtools-inspector-monitor): rename package (#633) 2020-09-10 12:37:19 -04:00

redux-devtools-inspector-monitor

npm version

A state monitor for Redux DevTools that provides a convenient way to inspect "real world" app states that could be complicated and deeply nested. Created by @alexkuz and merged from alexkuz/redux-devtools-inspector into reduxjs/redux-devtools monorepo.

Installation

yarn add @redux-devtools/inspector-monitor

Usage

You can use Inspector as the only monitor in your app:

containers/DevTools.js
import React from 'react';
import { createDevTools } from '@redux-devtools/core';
import Inspector from '@redux-devtools/inspector-monitor';

export default createDevTools(<Inspector />);

Then you can render <DevTools> to any place inside app or even into a separate popup window.

Alternative, you can use it together with DockMonitor to make it dockable.
Consult the DockMonitor README for details of this approach.

Read how to start using Redux DevTools.

Features

The inspector displays a list of actions and a preview panel which shows the state after the selected action and a diff with the previous state. If no actions are selected, the last state is shown.

You may pin a certain part of the state to only track its changes.

Props

Name Type Description
theme Object or string Contains either base16 theme name or object, that can be base16 colors map or object containing classnames or styles.
invertTheme Boolean Inverts theme color luminance, making light theme out of dark theme and vice versa.
supportImmutable Boolean Better Immutable rendering in Diff (can affect performance if state has huge objects/arrays). false by default.
tabs Array or function Overrides list of tabs (see below)
diffObjectHash Function Optional callback for better array handling in diffs (see jsondiffpatch docs)
diffPropertyFilter Function Optional callback for ignoring particular props in diff (see jsondiffpatch docs)

If tabs is a function, it receives a list of default tabs and should return updated list, for example:

defaultTabs => [...defaultTabs, { name: 'My Tab', component: MyTab }]

If tabs is an array, only provided tabs are rendered.

component is provided with action and other props, see ActionPreview.jsx for reference.

Usage example: redux-devtools-inspector-monitor-test-tab.

License

MIT