From 92912af8391b6df1a343a1fe11e87ae20c8ea5c1 Mon Sep 17 00:00:00 2001 From: Jerko Steiner Date: Mon, 16 Sep 2019 00:44:21 +0700 Subject: [PATCH] Fix packages/client --- .eslintrc.yaml | 4 + packages/client/src/components/Input.tsx | 4 +- packages/client/src/components/Link.tsx | 17 ++- packages/client/src/components/Redirect.tsx | 2 +- packages/client/src/components/ReturnHere.tsx | 12 +- packages/client/src/components/TimeAgo.tsx | 4 +- ...IWithRouterProps.ts => WithRouterProps.ts} | 2 +- .../client/src/components/withHistory.tsx | 6 +- packages/client/src/crud/CRUD.test.tsx | 54 ++++----- packages/client/src/crud/CRUDAction.ts | 41 +++++++ packages/client/src/crud/CRUDActions.ts | 111 ++++++++++-------- packages/client/src/crud/CRUDForm.tsx | 18 +-- packages/client/src/crud/CRUDList.tsx | 22 ++-- packages/client/src/crud/CRUDMethod.ts | 15 +++ packages/client/src/crud/CRUDReducer.ts | 86 +++++++------- packages/client/src/crud/TCRUDAction.ts | 41 ------- packages/client/src/crud/TCRUDMethod.ts | 15 --- packages/client/src/crud/index.ts | 4 +- packages/client/src/crumbs/Crumb.tsx | 8 +- .../crumbs/{ICrumbLink.ts => CrumbLink.ts} | 2 +- packages/client/src/crumbs/CrumbsActions.ts | 15 +-- packages/client/src/crumbs/CrumbsReducer.tsx | 12 +- packages/client/src/crumbs/HistoryCrumbs.tsx | 28 ++--- packages/client/src/crumbs/index.ts | 2 +- packages/client/src/login/LoginActions.ts | 31 ++--- packages/client/src/login/LoginForm.tsx | 10 +- packages/client/src/login/LoginReducer.ts | 10 +- packages/client/src/login/RegisterForm.tsx | 18 +-- .../client/src/login/configureLogin.test.tsx | 12 +- packages/client/src/login/configureLogin.ts | 7 +- packages/redux/src/actions/GetAction.ts | 2 +- packages/redux/src/actions/GetAllActions.ts | 5 + packages/redux/src/actions/index.ts | 9 +- 33 files changed, 320 insertions(+), 309 deletions(-) rename packages/client/src/components/{IWithRouterProps.ts => WithRouterProps.ts} (72%) create mode 100644 packages/client/src/crud/CRUDAction.ts create mode 100644 packages/client/src/crud/CRUDMethod.ts delete mode 100644 packages/client/src/crud/TCRUDAction.ts delete mode 100644 packages/client/src/crud/TCRUDMethod.ts rename packages/client/src/crumbs/{ICrumbLink.ts => CrumbLink.ts} (50%) create mode 100644 packages/redux/src/actions/GetAllActions.ts diff --git a/.eslintrc.yaml b/.eslintrc.yaml index f8233be..476d45b 100644 --- a/.eslintrc.yaml +++ b/.eslintrc.yaml @@ -37,6 +37,10 @@ rules: '@typescript-eslint/explicit-function-return-type': off '@typescript-eslint/no-non-null-assertion': off '@typescript-eslint/no-use-before-define': off + '@typescript-eslint/no-empty-interface': off + '@typescript-eslint/no-explicit-any': + - warn + - ignoreRestArgs: true overrides: - files: - '*.test.ts' diff --git a/packages/client/src/components/Input.tsx b/packages/client/src/components/Input.tsx index 1a6d50f..83273b7 100644 --- a/packages/client/src/components/Input.tsx +++ b/packages/client/src/components/Input.tsx @@ -2,7 +2,7 @@ import React from 'react' import {Control, Field, Input as I, Heading} from 'bloomer' import {IconType} from 'react-icons' -export interface IInputProps { +export interface InputProps { name: string type: 'text' | 'password' | 'hidden' | 'submit' | 'email' value?: string @@ -14,7 +14,7 @@ export interface IInputProps { required?: boolean } -export class Input extends React.PureComponent { +export class Input extends React.PureComponent { handleChange = (e: React.ChangeEvent) => { if (this.props.onChange) { this.props.onChange(this.props.name, e.target.value) diff --git a/packages/client/src/components/Link.tsx b/packages/client/src/components/Link.tsx index d8cfaa2..f443e6c 100644 --- a/packages/client/src/components/Link.tsx +++ b/packages/client/src/components/Link.tsx @@ -1,24 +1,21 @@ +import { URLFormatter } from '@rondo.dev/http-client' import React from 'react' -import {History, Location} from 'history' -import {IWithRouterProps} from './IWithRouterProps' -import {Link as RouterLink, LinkProps} from 'react-router-dom' -import {URLFormatter} from '@rondo.dev/http-client' -import {withRouter} from 'react-router' +import { withRouter } from 'react-router' +import { Link as RouterLink } from 'react-router-dom' +import { WithRouterProps } from './WithRouterProps' -export interface ILinkProps -extends IWithRouterProps> { +export interface LinkProps +extends WithRouterProps> { readonly className?: string readonly to: string } -class ContextLink extends React.PureComponent { +class ContextLink extends React.PureComponent { protected readonly urlFormatter = new URLFormatter() render() { const { className, - history, - location, match, to, children, diff --git a/packages/client/src/components/Redirect.tsx b/packages/client/src/components/Redirect.tsx index 28556eb..6021eaf 100644 --- a/packages/client/src/components/Redirect.tsx +++ b/packages/client/src/components/Redirect.tsx @@ -15,7 +15,7 @@ export class Redirect extends React.PureComponent { return ( You are being redirected. - Click here to 'continue' + Click here to {'continue'} ) } diff --git a/packages/client/src/components/ReturnHere.tsx b/packages/client/src/components/ReturnHere.tsx index 978f2c3..2bcdf38 100644 --- a/packages/client/src/components/ReturnHere.tsx +++ b/packages/client/src/components/ReturnHere.tsx @@ -1,22 +1,18 @@ -import React, {useEffect} from 'react' +import {useEffect} from 'react' import {Dispatch, bindActionCreators} from 'redux' -import {IWithRouterProps} from './IWithRouterProps' +import {WithRouterProps} from './WithRouterProps' import {connect} from 'react-redux' import {setRedirectTo} from '../login/LoginActions' import {withRouter} from 'react-router' -export interface IReturnToProps extends IWithRouterProps { +export interface ReturnToProps extends WithRouterProps { setRedirectTo: typeof setRedirectTo } -function FReturnHere(props: IReturnToProps) { +function FReturnHere(props: ReturnToProps) { const { - // tslint:disable-next-line setRedirectTo, - history, - location, match, - ...otherProps } = props useEffect(() => { diff --git a/packages/client/src/components/TimeAgo.tsx b/packages/client/src/components/TimeAgo.tsx index dfda08d..71e7f56 100644 --- a/packages/client/src/components/TimeAgo.tsx +++ b/packages/client/src/components/TimeAgo.tsx @@ -1,12 +1,12 @@ import {format} from 'timeago.js' import React from 'react' -export interface ITimeAgoProps { +export interface TimeAgoProps { className?: string date: Date | string } -export class TimeAgo extends React.PureComponent { +export class TimeAgo extends React.PureComponent { render() { return (