Skip to content

Commit daf96d4

Browse files
author
devgioele
committed
use shared prettier and eslint config
1 parent 8e87d01 commit daf96d4

18 files changed

Lines changed: 121 additions & 172 deletions

.eslintignore

Lines changed: 0 additions & 2 deletions
This file was deleted.

.eslintrc.json

Lines changed: 3 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1,66 +1,7 @@
11
{
2-
"parser": "@typescript-eslint/parser",
3-
"env": {
4-
"browser": true,
5-
"node": true
6-
},
7-
"plugins": ["@typescript-eslint", "react", "react-hooks"],
8-
"extends": [
9-
"eslint:recommended",
10-
"plugin:@typescript-eslint/recommended",
11-
"plugin:react/recommended",
12-
"plugin:react/jsx-runtime",
13-
"plugin:import/recommended",
14-
"plugin:import/typescript",
15-
"plugin:prettier/recommended"
16-
],
2+
"extends": "@aboutbits/eslint-config/ts-react",
173
"parserOptions": {
18-
"sourceType": "module",
19-
"ecmaVersion": 2018
20-
},
21-
"settings": {
22-
"react": {
23-
"version": "detect"
24-
},
25-
"import/resolver": {
26-
"node": {
27-
"paths": ["./"]
28-
}
29-
}
4+
"project": true
305
},
31-
"rules": {
32-
"react-hooks/rules-of-hooks": "error",
33-
"react-hooks/exhaustive-deps": "error",
34-
"@typescript-eslint/no-unused-vars": [
35-
"error",
36-
{
37-
"ignoreRestSiblings": true,
38-
"varsIgnorePattern": "^[iI]gnored",
39-
"argsIgnorePattern": "^_",
40-
"caughtErrorsIgnorePattern": "^ignore"
41-
}
42-
],
43-
"@typescript-eslint/member-delimiter-style": "off",
44-
"@typescript-eslint/explicit-function-return-type": "off",
45-
"@next/next/no-img-element": "off",
46-
"import/order": [
47-
"error",
48-
{
49-
"groups": [
50-
"builtin",
51-
"external",
52-
"unknown",
53-
"parent",
54-
"sibling",
55-
"index"
56-
]
57-
}
58-
],
59-
"no-console": [
60-
"error",
61-
{
62-
"allow": ["warn", "error", "assert"]
63-
}
64-
]
65-
}
6+
"ignorePatterns": ["node_modules", "dist"]
667
}

.prettierrc

Lines changed: 0 additions & 4 deletions
This file was deleted.

package.json

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
"build:esm": "tsc -p tsconfig.esm.json",
4949
"build:cjs": "tsc -p tsconfig.cjs.json",
5050
"build:types": "tsc -p tsconfig.types.json",
51-
"lint": "eslint --ext js,ts,tsx --cache .",
51+
"lint": "eslint --cache .",
5252
"lint:fix": "npm run lint -- --fix",
5353
"test": "vitest run --passWithNoTests",
5454
"test:watch": "vitest watch --passWithNoTests",
@@ -85,23 +85,23 @@
8585
"access": "public"
8686
},
8787
"devDependencies": {
88+
"@aboutbits/eslint-config": "^2.0.12",
89+
"@aboutbits/prettier-config": "^1.4.0",
8890
"@testing-library/jest-dom": "^5.16.5",
8991
"@testing-library/react": "^13.4.0",
9092
"@types/react": "^18.0.0",
9193
"@types/react-dom": "^18.0.0",
9294
"@types/react-router-dom": "^5.3.3",
93-
"@typescript-eslint/eslint-plugin": "^5.30.0",
94-
"@typescript-eslint/parser": "^5.30.0",
95-
"eslint": "^8.18.0",
96-
"eslint-config-prettier": "^8.5.0",
97-
"eslint-plugin-import": "^2.26.0",
98-
"eslint-plugin-prettier": "^4.1.0",
99-
"eslint-plugin-react": "^7.32.2",
95+
"@typescript-eslint/eslint-plugin": "^6.1.0",
96+
"eslint": "^8.45.0",
97+
"eslint-plugin-import": "^2.27.5",
98+
"eslint-plugin-prettier": "^5.0.0",
99+
"eslint-plugin-react": "^7.33.0",
100100
"eslint-plugin-react-hooks": "^4.6.0",
101101
"jsdom": "^22.1.0",
102102
"next": "^13.1.3",
103103
"next-router-mock": "^0.7.4",
104-
"prettier": "^2.7.1",
104+
"prettier": "^3.0.0",
105105
"react": "^18.0.0",
106106
"react-dom": "^18.0.0",
107107
"react-router-dom": "^6.7.0",
@@ -126,5 +126,6 @@
126126
"zod": {
127127
"optional": true
128128
}
129-
}
129+
},
130+
"prettier": "@aboutbits/prettier-config"
130131
}

src/engine/pagination.ts

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ export const useAbstractQueryAndPagination = <T extends AbstractQuery>(
5151
parseQuery: ParseQuery<T>,
5252
router: Router,
5353
defaultPagination?: PaginationQuery,
54-
options?: Partial<AbstractQueryOptions>
54+
options?: Partial<AbstractQueryOptions>,
5555
) => {
5656
const mergedDefaultPagination = {
5757
...DEFAULT_PAGINATION,
@@ -66,7 +66,7 @@ export const useAbstractQueryAndPagination = <T extends AbstractQuery>(
6666
mergedDefaultQueryAndPagination,
6767
parseQuery,
6868
router,
69-
options
69+
options,
7070
)
7171

7272
const {
@@ -77,7 +77,7 @@ export const useAbstractQueryAndPagination = <T extends AbstractQuery>(
7777
mergedDefaultPagination,
7878
parsePagination,
7979
router,
80-
options
80+
options,
8181
)
8282

8383
return {
@@ -102,10 +102,16 @@ export const useAbstractQueryAndPagination = <T extends AbstractQuery>(
102102
},
103103
page: pagination.page,
104104
size: pagination.size,
105-
setPage: (page: PaginationQuery['page']) => setPagination({ page }),
106-
setSize: (size: PaginationQuery['size']) => setPagination({ size }),
105+
setPage: (page: PaginationQuery['page']) => {
106+
setPagination({ page })
107+
},
108+
setSize: (size: PaginationQuery['size']) => {
109+
setPagination({ size })
110+
},
107111
setPagination,
108112
resetPagination,
109-
resetQueryAndPagination: () => setQuery(mergedDefaultQueryAndPagination),
113+
resetQueryAndPagination: () => {
114+
setQuery(mergedDefaultQueryAndPagination)
115+
},
110116
}
111117
}

src/engine/query.ts

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -35,16 +35,17 @@ export type Router = {
3535
}
3636

3737
export const useQuery = <T extends Query>(defaultQuery: T, router: Router) => {
38-
const resetQuery = useCallback(
39-
() => router.setQuery(defaultQuery, defaultQuery),
40-
[router, defaultQuery]
41-
)
38+
const resetQuery = useCallback(() => {
39+
router.setQuery(defaultQuery, defaultQuery)
40+
}, [router, defaultQuery])
4241

4342
const query = router.getQuery(defaultQuery)
4443

4544
return {
4645
query,
47-
setQuery: (query: Partial<T>) => router.setQuery(query, defaultQuery),
46+
setQuery: (query: Partial<T>) => {
47+
router.setQuery(query, defaultQuery)
48+
},
4849
resetQuery,
4950
}
5051
}
@@ -74,21 +75,21 @@ export const useAbstractQuery = <T extends AbstractQuery>(
7475
defaultQuery: T,
7576
parseQuery: ParseQuery<T>,
7677
router: Router,
77-
options?: Partial<AbstractQueryOptions>
78+
options?: Partial<AbstractQueryOptions>,
7879
) => {
7980
const mergedOptions = useMemo(
8081
() => ({ ...DEFAULT_ABSTRACT_QUERY_OPTIONS, ...options }),
81-
[options]
82+
[options],
8283
)
8384

8485
const convertedDefaultQuery = useMemo(
8586
() => mergedOptions.convertToQuery(defaultQuery),
86-
[mergedOptions, defaultQuery]
87+
[mergedOptions, defaultQuery],
8788
)
8889

8990
const { query, setQuery, resetQuery } = useQuery(
9091
convertedDefaultQuery,
91-
router
92+
router,
9293
)
9394

9495
const parsedQuery: T = useMemo(() => {
@@ -105,8 +106,10 @@ export const useAbstractQuery = <T extends AbstractQuery>(
105106
}, [defaultQuery, parseQuery, query])
106107

107108
const setAbstractQuery = useCallback(
108-
(query: Partial<T>) => setQuery(mergedOptions.convertToQuery(query)),
109-
[setQuery, mergedOptions]
109+
(query: Partial<T>) => {
110+
setQuery(mergedOptions.convertToQuery(query))
111+
},
112+
[setQuery, mergedOptions],
110113
)
111114

112115
return {

src/routers/__test__/inMemory.test.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ describe('InMemory', () => {
1010
})
1111

1212
const useInMemoryQueryWithSearch = (
13-
defaultQuery: NonNullableRecord<z.infer<typeof searchSchema>>
13+
defaultQuery: NonNullableRecord<z.infer<typeof searchSchema>>,
1414
) => useQuery(defaultQuery, searchSchema)
1515

1616
test('should set default page and size', () => {
@@ -38,22 +38,22 @@ describe('InMemory', () => {
3838
const search = 'Max'
3939

4040
const { result } = renderHook(() =>
41-
useInMemoryQueryWithSearch({ search: '' })
41+
useInMemoryQueryWithSearch({ search: '' }),
4242
)
4343

4444
act(() => {
4545
result.current.setQuery({ search })
4646
})
4747

48-
expect(result.current.query?.search).toBe(search)
48+
expect(result.current.query.search).toBe(search)
4949
})
5050

5151
test('changing pagination should not reset the remaining query', () => {
5252
const search = 'Max'
5353
const page = 2
5454

5555
const { result } = renderHook(() =>
56-
useQueryAndPagination({ search: '' }, searchSchema)
56+
useQueryAndPagination({ search: '' }, searchSchema),
5757
)
5858

5959
act(() => {
@@ -90,7 +90,7 @@ describe('InMemory', () => {
9090
const page = 2
9191

9292
const { result } = renderHook(() =>
93-
useQueryAndPagination({ search: defaultSearch }, searchSchema)
93+
useQueryAndPagination({ search: defaultSearch }, searchSchema),
9494
)
9595

9696
act(() => {
@@ -125,7 +125,7 @@ describe('InMemory', () => {
125125
const page = 2
126126

127127
const { result } = renderHook(() =>
128-
useQueryAndPagination({ search: defaultSearch }, searchSchema)
128+
useQueryAndPagination({ search: defaultSearch }, searchSchema),
129129
)
130130

131131
act(() => {
@@ -159,7 +159,7 @@ describe('InMemory', () => {
159159
})
160160

161161
const { result } = renderHook(() =>
162-
useQuery({ search: '', department: '' }, schema)
162+
useQuery({ search: '', department: '' }, schema),
163163
)
164164

165165
act(() => {
@@ -178,7 +178,7 @@ describe('InMemory', () => {
178178
const search = ''
179179

180180
const { result } = renderHook(() =>
181-
useQuery({ search: 'Default search' }, searchSchema)
181+
useQuery({ search: 'Default search' }, searchSchema),
182182
)
183183

184184
act(() => {

src/routers/__test__/nextRouter.test.ts

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import { NonNullableRecord } from '../../utils'
66
import { useQuery, useQueryAndPagination } from '../../zod/routers/nextRouter'
77
import { usePagination } from '../nextRouter'
88

9+
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
910
vi.mock('next/router', () => require('next-router-mock'))
1011

1112
describe('NextRouter', () => {
@@ -18,7 +19,7 @@ describe('NextRouter', () => {
1819
})
1920

2021
const useNextRouterQueryWithSearch = (
21-
defaultQuery: NonNullableRecord<z.infer<typeof searchSchema>>
22+
defaultQuery: NonNullableRecord<z.infer<typeof searchSchema>>,
2223
) => useQuery(defaultQuery, searchSchema)
2324

2425
test('should set default page and size', () => {
@@ -47,14 +48,14 @@ describe('NextRouter', () => {
4748
const search = 'Max'
4849

4950
const { result } = renderHook(() =>
50-
useNextRouterQueryWithSearch({ search: '' })
51+
useNextRouterQueryWithSearch({ search: '' }),
5152
)
5253

5354
act(() => {
5455
result.current.setQuery({ search })
5556
})
5657

57-
expect(result.current.query?.search).toBe(search)
58+
expect(result.current.query.search).toBe(search)
5859
expect(router.query.search).toBe(search)
5960
})
6061

@@ -63,7 +64,7 @@ describe('NextRouter', () => {
6364
const page = 2
6465

6566
const { result } = renderHook(() =>
66-
useQueryAndPagination({ search: '' }, searchSchema)
67+
useQueryAndPagination({ search: '' }, searchSchema),
6768
)
6869

6970
act(() => {
@@ -103,7 +104,7 @@ describe('NextRouter', () => {
103104
const page = 2
104105

105106
const { result } = renderHook(() =>
106-
useQueryAndPagination({ search: defaultSearch }, searchSchema)
107+
useQueryAndPagination({ search: defaultSearch }, searchSchema),
107108
)
108109

109110
act(() => {
@@ -145,7 +146,7 @@ describe('NextRouter', () => {
145146
const page = 2
146147

147148
const { result } = renderHook(() =>
148-
useQueryAndPagination({ search: defaultSearch }, searchSchema)
149+
useQueryAndPagination({ search: defaultSearch }, searchSchema),
149150
)
150151

151152
act(() => {
@@ -202,8 +203,8 @@ describe('NextRouter', () => {
202203
netWorth: defaultNetWorth,
203204
darkMode: defaultDarkMode,
204205
},
205-
schema
206-
)
206+
schema,
207+
),
207208
)
208209

209210
act(() => {
@@ -241,7 +242,7 @@ describe('NextRouter', () => {
241242
router.query = { search: 'Max' }
242243

243244
const { result } = renderHook(() =>
244-
useQuery({ search: defaultSearch }, searchSchema)
245+
useQuery({ search: defaultSearch }, searchSchema),
245246
)
246247

247248
act(() => {
@@ -256,7 +257,7 @@ describe('NextRouter', () => {
256257
const search = ''
257258

258259
const { result } = renderHook(() =>
259-
useQuery({ search: 'Default search' }, searchSchema)
260+
useQuery({ search: 'Default search' }, searchSchema),
260261
)
261262

262263
act(() => {

0 commit comments

Comments
 (0)