diff --git a/packages/redux-devtools-log-monitor/.eslintrc.js b/packages/redux-devtools-log-monitor/.eslintrc.js index 72e1f8dd..1eb24d2a 100644 --- a/packages/redux-devtools-log-monitor/.eslintrc.js +++ b/packages/redux-devtools-log-monitor/.eslintrc.js @@ -8,14 +8,6 @@ module.exports = { tsconfigRootDir: __dirname, project: ['./tsconfig.json'] } - }, - { - files: ['test/*.ts', 'test/*.tsx'], - extends: '../../eslintrc.ts.react.jest.base.json', - parserOptions: { - tsconfigRootDir: __dirname, - project: ['./test/tsconfig.json'] - } } ] }; diff --git a/packages/redux-devtools-log-monitor/package.json b/packages/redux-devtools-log-monitor/package.json index c99c8bbc..aacabbff 100644 --- a/packages/redux-devtools-log-monitor/package.json +++ b/packages/redux-devtools-log-monitor/package.json @@ -16,7 +16,7 @@ "build:types": "tsc --emitDeclarationOnly", "build:js": "babel src --out-dir lib --extensions \".ts,.tsx\" --source-maps inline", "lint": "eslint . --ext .js,.jsx,.ts,.tsx", - "lint:fix": "eslint . --ext .js,.jsx,.ts,.tx --fix", + "lint:fix": "eslint . --ext .js,.jsx,.ts,.tsx --fix", "prepare": "npm run build", "prepublishOnly": "npm run test && npm run clean && npm run build" }, @@ -45,19 +45,21 @@ "@babel/plugin-proposal-class-properties": "^7.3.0", "@babel/preset-env": "^7.3.1", "@babel/preset-react": "^7.0.0", - "@types/react": "^15.0.0 || ^16.0.0", + "@types/lodash.debounce": "^4.0.4", + "@typescript-eslint/eslint-plugin": "^2.31.0", + "@typescript-eslint/parser": "^2.31.0", "babel-loader": "^8.0.5", "react": "^15.0.0 || ^16.0.0", "redux-devtools": "^3.4.0", - "rimraf": "^2.3.4" + "rimraf": "^2.3.4", + "typescript": "^3.8.3" }, "peerDependencies": { - "@types/react": "^15.0.0 || ^16.0.0", - "react": "^15.0.0 || ^16.0.0", + "@types/react": "^16.3.0", + "react": "^16.3.0", "redux-devtools": "^3.4.0" }, "dependencies": { - "@types/lodash.debounce": "^4.0.4", "@types/prop-types": "^15.0.0", "lodash.debounce": "^4.0.4", "prop-types": "^15.0.0", diff --git a/packages/redux-devtools-log-monitor/src/LogMonitor.tsx b/packages/redux-devtools-log-monitor/src/LogMonitor.tsx index 5bdfcaaa..9884f1e4 100644 --- a/packages/redux-devtools-log-monitor/src/LogMonitor.tsx +++ b/packages/redux-devtools-log-monitor/src/LogMonitor.tsx @@ -2,7 +2,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import shouldPureComponentUpdate from 'react-pure-render/function'; import * as themes from 'redux-devtools-themes'; -import { ActionCreators, LiftedAction, PerformAction } from 'redux-devtools'; +import { ActionCreators, LiftedAction, LiftedState } from 'redux-devtools'; import { Base16Theme } from 'base16'; import { Action, Dispatch } from 'redux'; import { @@ -41,16 +41,11 @@ const styles: { } }; -export interface Props { +export interface Props> + extends LiftedState { dispatch: Dispatch< LogMonitorAction | LiftedAction >; - computedStates: { state: S; error?: string }[]; - actionsById: { [actionId: number]: PerformAction }; - stagedActionIds: number[]; - skippedActionIds: number[]; - currentStateIndex: number; - monitorState: LogMonitorState; preserveScrollTop: boolean; select: (state: S) => unknown; diff --git a/packages/redux-devtools-log-monitor/src/LogMonitorEntry.tsx b/packages/redux-devtools-log-monitor/src/LogMonitorEntry.tsx index 298dadc8..3d126105 100644 --- a/packages/redux-devtools-log-monitor/src/LogMonitorEntry.tsx +++ b/packages/redux-devtools-log-monitor/src/LogMonitorEntry.tsx @@ -2,7 +2,6 @@ import React, { Component, MouseEventHandler } from 'react'; import PropTypes from 'prop-types'; import JSONTree from 'react-json-tree'; import { Base16Theme } from 'base16'; -import { Action } from 'redux'; import LogMonitorEntryAction from './LogMonitorEntryAction'; import shouldPureComponentUpdate from 'react-pure-render/function'; import { Styling, StylingConfig, StylingValue } from 'react-base16-styling'; diff --git a/packages/redux-devtools-log-monitor/src/reducers.ts b/packages/redux-devtools-log-monitor/src/reducers.ts index 1b0c1018..9d646077 100644 --- a/packages/redux-devtools-log-monitor/src/reducers.ts +++ b/packages/redux-devtools-log-monitor/src/reducers.ts @@ -27,16 +27,16 @@ function startConsecutiveToggle( } interface InitialLogMonitorState { - initialScrollTop?: number; - consecutiveToggleStartId?: number | null; + readonly initialScrollTop?: number; + readonly consecutiveToggleStartId?: number | null; } export interface LogMonitorState { - initialScrollTop: number; - consecutiveToggleStartId?: number | null; + readonly initialScrollTop: number; + readonly consecutiveToggleStartId?: number | null; } -export default function reducer( +export default function reducer>( props: Props, state: InitialLogMonitorState = {}, action: LogMonitorAction