redux-devtools/packages/redux-devtools-dock-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
..
src chore(*): make more packages scoped (#692) 2020-12-21 15:46:28 -05:00
.babelrc feat(redux-devtools-dock-monitor): convert to TypeScript (#609) 2020-08-26 09:22:53 -04:00
.eslintignore feat(redux-devtools-dock-monitor): convert to TypeScript (#609) 2020-08-26 09:22:53 -04:00
.eslintrc.js feat(redux-devtools-dock-monitor): convert to TypeScript (#609) 2020-08-26 09:22:53 -04:00
CHANGELOG.md feature(devui): convert to TypeScript (#629) 2020-09-09 10:35:22 -04:00
LICENSE.md chore(*): add back license files (#578) 2020-08-09 01:11:43 -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 feat(redux-devtools-dock-monitor): convert to TypeScript (#609) 2020-08-26 09:22:53 -04:00

Redux DevTools Dock Monitor

A resizable and movable dock for Redux DevTools.
Powered by React Dock.

Installation

yarn add @redux-devtools/dock-monitor

Usage

Wrap any other Redux DevTools monitor in DockMonitor to make it dockable to different screen edges. For example, you can use it together with LogMonitor:

containers/DevTools.js
import React from 'react';
import { createDevTools } from '@redux-devtools/core';
import LogMonitor from '@redux-devtools/log-monitor';
import SliderMonitor from '@redux-devtools/slider-monitor';
import DockMonitor from '@redux-devtools/dock-monitor';

export default createDevTools(
  <DockMonitor
    toggleVisibilityKey="ctrl-h"
    changePositionKey="ctrl-q"
    changeMonitorKey="ctrl-m"
  >
    <LogMonitor />
    <SliderMonitor />
  </DockMonitor>
);

Read how to start using Redux DevTools.

Multiple Monitors

You can put more than one monitor inside <DockMonitor>. There will still be a single dock, but you will be able to switch between different monitors by pressing a key specified as changeMonitorKey prop.

Props

Name Description
children Any valid Redux DevTools monitor. Required.
toggleVisibilityKey A key or a key combination that toggles the dock visibility. Must be recognizable by parse-key (for example, 'ctrl-h'). Required.
changePositionKey A key or a key combination that toggles the dock position. Must be recognizable by parse-key (for example, 'ctrl-w'). Required.
changeMonitorKey A key or a key combination that switches the currently visible monitor. Must be recognizable by parse-key (for example, 'ctrl-m'). Required if you use more than one monitor.
fluid When true, the dock size is a fraction of the window size, fixed otherwise. Optional. By default set to true.
defaultSize Size of the dock. When fluid is true, a float (0.5 means half the window size). When fluid is false, a width in pixels. Optional. By default set to 0.3 (3/10th of the window size).
defaultPosition Where the dock appears on the screen. Valid values: 'left', 'top', 'right', 'bottom'. Optional. By default set to 'right'.
defaultIsVisible Defines whether dock should be open by default. A value of true means that it's open when the page/app loads.

The current size and the position are persisted between sessions with persistState() enhancer from Redux DevTools.

License

MIT