npm install reprologConfigurable logger for all property changes of your componets.

```
npm i -S reprolog`
or`
yarn add reprolog
`
import React from 'react';
import { LoggerProvider } from 'reprolog';
import { newOldDiffLogger } from 'reprolog/loggers';
import { consoleTableOutput } from 'reprolog/outputs';
import Root from './Root';
export default () => (
propsLoggerConfig={{ whiteList: ['Root'] }}
>
);
`
`
// Root.js
import React from 'react';
import { withLogger } = 'reprolog';
const Root = ({ foo }) => (
export default withLogger()(Root);
`
withLogger api links your component to properties. It accepts name parameter.
This is the name with which component will appear in the log. By default it
value is taken from the component display name.
With a high probability you do not need logs from all your components in the same time.
To enable logs that you need to display, just modify whiteList param of config passed to logger provider.
You can configure logger, for runtime updates from chrome console:
`
import React from 'react';
import ReactDOM from 'react-dom';
import { LoggerProvider } from 'reprolog';
import { newOldDiffLogger } from 'reprolog/loggers';
import { consoleTableOutput } from 'reprolog/outputs';
import { ConsoleRuntimeConfig } from 'reprolog/config';
import Counter from './Counter';
const config = new ConsoleRuntimeConfig({ whiteList: ['Counter'] });
const Root = () => (
propsLoggerConfig={config}
>
);
`
This will expose a gobal reprolog object, that can be called from chrome console, with 2 methods:save$3
Changes logging whiteList to the firt parameter. The second mentions whether update should be saved in local storage. I case is true, updated config will be also used after app refresh.$3
Remove updates saved to local storage.
On production environment withLogger behaves as identity function, and logs are off.
For that reason it has zero performance impact on production environment.
Loggers are responsible to format and data to display. Right now there:
newOldDiffLogger - displays new, old properties, and property diff on each update.newPropsLogger - displays only new properties on each update.newDiffPropsLogger - displays new deteled, added properties and properties diff on each update.
Outputs display data provided by loggers. Right now there consoleOutput which logsconsoleTableOutput
data as plain console object. And which displays data in a table layoutconsole.table` api).
(depends on