Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Apply changes required by the centralized tooling configs #4607

Draft
wants to merge 47 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
86d966a
Add `configs` to `workspaces`
aryaemami59 Aug 27, 2024
8437f00
Initialize all the `config` packages
aryaemami59 Aug 27, 2024
55a9248
use foreach so publish doesn't fail if package doesn't have tests, an…
EskiMojo14 Feb 8, 2024
a94f086
Build `config` packages on `install`
aryaemami59 Aug 27, 2024
2e962fb
Use the shareable Prettier config
aryaemami59 Aug 27, 2024
9e5aa99
Use the shareable ESLint config
aryaemami59 Aug 27, 2024
8636f25
Use shareable `tsconfig.json` files
aryaemami59 Aug 28, 2024
2292b3d
Use the shareable Vitest config
aryaemami59 Aug 28, 2024
f068298
Run `yarn format` to format all files
aryaemami59 Sep 3, 2024
f993143
Add `AnyNonNullishValue` helper type
aryaemami59 Sep 3, 2024
1f95684
Add `AnyFunction` helper type
aryaemami59 Sep 3, 2024
d7441fd
Add `EmptyObject` helper type
aryaemami59 Sep 3, 2024
1ade278
Add `AnyObject` helper type
aryaemami59 Sep 3, 2024
979e976
Add `isObject` and `hasBodyAndHeaders` utility functions
aryaemami59 Sep 3, 2024
5c13440
Change all `let` variables to `const` to comply with `prefer-const` rule
aryaemami59 Sep 3, 2024
9be63b6
Make `hasBodyAndHeaders` assertion looser
aryaemami59 Sep 3, 2024
adadcd7
Use `hasBodyAndHeaders` to fix TS issues in `fetchBaseQuery.test.tsx`
aryaemami59 Sep 3, 2024
55e3648
Fix lint issues related to the `no-prototype-builtins` rule
aryaemami59 Sep 3, 2024
baae93f
Fix `no-unsafe-optional-chaining` related problems
aryaemami59 Feb 3, 2024
5a10721
Fix `@typescript-eslint/prefer-as-const` related problems
aryaemami59 Sep 3, 2024
3cc287a
Fix `no-useless-escape` related problems
aryaemami59 Sep 3, 2024
a991de9
Fix `no-extra-boolean-cast` related problems
aryaemami59 Sep 3, 2024
84c4bfb
Fix `no-constant-condition` related problems
aryaemami59 Feb 3, 2024
2665106
Fix `no-empty` related problems
aryaemami59 Feb 3, 2024
d859cac
Replace all `Function` references with `AnyFunction`
aryaemami59 Feb 3, 2024
310ac8e
Move custom matchers into `vitest.setup.ts`
aryaemami59 Feb 8, 2024
8e1b4f7
Fix `@typescript-eslint/no-unnecessary-type-constraint` related problems
aryaemami59 Sep 3, 2024
ec0b865
Disable `prefer-rest-params` and `prefer-spread` inside `composeWithD…
aryaemami59 Feb 8, 2024
17296c0
Fix `@typescript-eslint/no-var-requires` related problems
aryaemami59 Feb 3, 2024
7557e1d
Fix issues related to the `@typescript-eslint/prefer-function-type` rule
aryaemami59 Feb 3, 2024
92fe003
Fix problems related to the `@typescript-eslint/no-empty-function` rule
aryaemami59 Feb 7, 2024
2077149
Fix problems related to the `sort-imports` rule
aryaemami59 Sep 3, 2024
7c03c5d
Replace all `{}` types with `AnyNonNullishValue`
aryaemami59 Feb 3, 2024
5a6b771
Remove unused ESLint disable directives
aryaemami59 Sep 4, 2024
5d8e604
Fix `@typescript-eslint/no-unused-expressions` related issues
aryaemami59 Jul 31, 2024
1b87ca2
Fix exports in `src/query/core/buildMiddleware/index.ts`
aryaemami59 Sep 4, 2024
38d5b25
Fix `@typescript-eslint/no-unused-expressions` related issues
aryaemami59 Jul 31, 2024
c5779c5
Fix problems related to the `@typescript-eslint/array-type` rule
aryaemami59 Sep 4, 2024
f08bfca
Fix missing exports
aryaemami59 Sep 4, 2024
8f48c38
Fix type issue related to `withLazyLoadedSlices`
aryaemami59 Sep 4, 2024
77d4bd3
Fix `noImplicitReturns`-related issues in `src/tests/utils/helpers.tsx`
aryaemami59 Sep 4, 2024
db417a8
Fix issues related to `hasBodyAndHeaders` usage
aryaemami59 Sep 4, 2024
98dac4c
Lint files and check formatting during CI
aryaemami59 Sep 4, 2024
82ea47d
Fix the snapshots
aryaemami59 Sep 5, 2024
1c5fb83
Fix TS issues related to `AnyNonNullishValue`
aryaemami59 Sep 5, 2024
93c970b
Fix TS issues related to `EmptyObject`
aryaemami59 Sep 5, 2024
7c6426e
Remove unused imports
aryaemami59 Sep 21, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 0 additions & 61 deletions .eslintrc.js

This file was deleted.

6 changes: 5 additions & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ on:
- '@rtk-query/codegen-openapi'
- '@rtk-query/graphql-request-base-query'
- '@reduxjs/rtk-codemods'
- '@reduxjs/eslint-config'
- '@reduxjs/prettier-config'
- '@reduxjs/tsconfig'
- '@reduxjs/vitest-config'
jobs:
publish:
runs-on: ubuntu-latest
Expand All @@ -28,7 +32,7 @@ jobs:
registry-url: 'https://registry.npmjs.org'
cache: 'yarn'
- run: yarn install --frozen-lockfile
- run: yarn workspace ${{ inputs.package }} test
- run: yarn workspaces foreach --include "${{ inputs.package }}" run test
- run: yarn workspace ${{ inputs.package }} exec npm publish --access public --provenance
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }}
6 changes: 6 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,12 @@ jobs:
- name: Install deps
run: yarn install

- name: Check formatting
run: yarn workspaces foreach -Ap -j unlimited run format-check

- name: Lint files
run: yarn workspaces foreach -Ap -j unlimited run lint

# Read existing version, reuse that, add a Git short hash
- name: Set build version to Git commit
run: yarn tsx scripts/writeGitVersion.mts $(git rev-parse --short HEAD)
Expand Down
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,5 @@ typesversions
.pnp.*
*.tgz

tsconfig.vitest-temp.json
tsconfig.vitest-temp.json
.eslintcache
34 changes: 30 additions & 4 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,30 @@
**/dist/**
**/etc/**
**/temp/**
**/__testfixtures__/**
dist/
temp/
tmp/
__testfixtures__/
build/
lib/

.yalc
yalc.lock
yalc.sig

.idea/
.vscode/
.tmp-projections
coverage/

typesversions
.cache
.yarnrc
.yarn/*
.yarn/releases
**/.yarn/cache
.pnp.*
*.tgz

tsconfig.vitest-temp.json
.eslintcache

.docusaurus/
.next/
4 changes: 0 additions & 4 deletions .prettierrc.json

This file was deleted.

2 changes: 1 addition & 1 deletion docs/api/actionCreatorMiddleware.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ import reducer from './reducer'
// Augment middleware to consider all functions with a static type property to be action creators
const isActionCreator = (
action: unknown,
): action is Function & { type: unknown } =>
): action is (...args: any) => any & { type: unknown } =>
typeof action === 'function' && 'type' in action

const actionCreatorMiddleware = createActionCreatorInvariantMiddleware({
Expand Down
2 changes: 1 addition & 1 deletion docs/api/createListenerMiddleware.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -488,7 +488,7 @@ To fix this, the middleware provides types for defining "pre-typed" versions of
import { createListenerMiddleware, addListener } from '@reduxjs/toolkit'
import type { RootState, AppDispatch } from './store'

declare type ExtraArgument = {foo: string};
declare type ExtraArgument = { foo: string }

export const listenerMiddleware = createListenerMiddleware()

Expand Down
1 change: 1 addition & 0 deletions docs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
"name": "docs",
"devDependencies": {
"@manaflair/redux-batch": "^1.0.0",
"@reduxjs/tsconfig": "workspace:^",
"@types/nanoid": "^2.1.0",
"@types/react": "^18.0",
"async-mutex": "^0.3.2",
Expand Down
4 changes: 2 additions & 2 deletions docs/rtk-query/api/fetchBaseQuery.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -303,8 +303,8 @@ The default response handler is `"json"`, which is equivalent to the following f

```ts title="Default responseHandler"
const defaultResponseHandler = async (res: Response) => {
const text = await res.text();
return text.length ? JSON.parse(text) : null;
const text = await res.text()
return text.length ? JSON.parse(text) : null
}
```

Expand Down
2 changes: 1 addition & 1 deletion docs/rtk-query/usage-with-typescript.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -613,7 +613,7 @@ function PostDetail() {
<div>{errMsg}</div>
</div>
)
}
}
// you can access all properties of `SerializedError` here
return <div>{error.message}</div>
}
Expand Down
9 changes: 1 addition & 8 deletions docs/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,17 +1,10 @@
{
"extends": "@reduxjs/tsconfig/base",
"compilerOptions": {
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
"moduleResolution": "node",
"noUnusedLocals": false,
"noUnusedParameters": false,
"allowUnusedLabels": true,
"skipLibCheck": true,
"noEmitOnError": false,
"strict": true,
"removeComments": false,
"module": "ESNext",
"target": "ESNext",
"allowJs": true,
"checkJs": true,
"alwaysStrict": false,
Expand Down
2 changes: 1 addition & 1 deletion errors.json
Original file line number Diff line number Diff line change
Expand Up @@ -39,4 +39,4 @@
"37": "Warning: Middleware for RTK-Query API at reducerPath \"\" has not been added to the store.\n You must add the middleware for RTK-Query to function correctly!",
"38": "Cannot refetch a query that has not been started yet.",
"39": "called \\`injectEndpoints\\` to override already-existing endpointName without specifying \\`overrideExisting: true\\`"
}
}
7 changes: 7 additions & 0 deletions eslint.config.mts
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import { createESLintConfig } from '@reduxjs/eslint-config'
import { configs } from 'typescript-eslint'

export default createESLintConfig([
{ name: 'root-workspace/global-ignores', ignores: ['**/'] },
configs.disableTypeChecked,
])
1 change: 1 addition & 0 deletions examples/action-listener/counter/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@
]
},
"devDependencies": {
"@reduxjs/tsconfig": "workspace:^",
"jest-watch-typeahead": "^1.1.0"
}
}
19 changes: 2 additions & 17 deletions examples/action-listener/counter/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,20 +1,5 @@
{
"compilerOptions": {
"target": "es5",
"lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true,
"skipLibCheck": true,
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
"strict": true,
"forceConsistentCasingInFileNames": true,
"noFallthroughCasesInSwitch": true,
"module": "esnext",
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"jsx": "react-jsx"
},
"extends": "@reduxjs/tsconfig/create-react-app",
"compilerOptions": {},
"include": ["src"]
}
1 change: 1 addition & 0 deletions examples/query/react/advanced/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
"react-scripts": "5.0.1"
},
"devDependencies": {
"@reduxjs/tsconfig": "workspace:^",
"@types/react": "^18.0.5",
"@types/react-dom": "^18.0.5",
"typescript": "~4.9"
Expand Down
21 changes: 3 additions & 18 deletions examples/query/react/advanced/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,20 +1,5 @@
{
"include": ["./src/**/*"],
"compilerOptions": {
"strict": true,
"esModuleInterop": true,
"lib": ["dom", "es2015"],
"jsx": "react-jsx",
"target": "es5",
"allowJs": true,
"skipLibCheck": true,
"allowSyntheticDefaultImports": true,
"forceConsistentCasingInFileNames": true,
"noFallthroughCasesInSwitch": true,
"module": "esnext",
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true
}
"extends": "@reduxjs/tsconfig/create-react-app",
"compilerOptions": {},
"include": ["src"]
}
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
"react-scripts": "5.0.1"
},
"devDependencies": {
"@reduxjs/tsconfig": "workspace:^",
"@types/react": "^18.0.5",
"@types/react-dom": "^18.0.5",
"typescript": "~4.9"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,20 +1,5 @@
{
"include": ["./src/**/*"],
"compilerOptions": {
"strict": true,
"esModuleInterop": true,
"lib": ["dom", "es2015"],
"jsx": "react-jsx",
"target": "es5",
"allowJs": true,
"skipLibCheck": true,
"allowSyntheticDefaultImports": true,
"forceConsistentCasingInFileNames": true,
"noFallthroughCasesInSwitch": true,
"module": "esnext",
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true
}
"extends": "@reduxjs/tsconfig/create-react-app",
"compilerOptions": {},
"include": ["src"]
}
1 change: 1 addition & 0 deletions examples/query/react/authentication/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
"react-scripts": "5.0.1"
},
"devDependencies": {
"@reduxjs/tsconfig": "workspace:^",
"@types/react": "^18.0.5",
"@types/react-dom": "^18.0.5",
"typescript": "~4.9"
Expand Down
21 changes: 3 additions & 18 deletions examples/query/react/authentication/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,20 +1,5 @@
{
"include": ["./src/**/*"],
"compilerOptions": {
"strict": true,
"esModuleInterop": true,
"lib": ["dom", "es2015"],
"jsx": "react-jsx",
"target": "es5",
"allowJs": true,
"skipLibCheck": true,
"allowSyntheticDefaultImports": true,
"forceConsistentCasingInFileNames": true,
"noFallthroughCasesInSwitch": true,
"module": "esnext",
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true
}
"extends": "@reduxjs/tsconfig/create-react-app",
"compilerOptions": {},
"include": ["src"]
}
1 change: 1 addition & 0 deletions examples/query/react/basic/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
"react-scripts": "5.0.1"
},
"devDependencies": {
"@reduxjs/tsconfig": "workspace:^",
"@testing-library/react": "^13.3.0",
"@types/jest": "^26.0.23",
"@types/react": "^18.0.5",
Expand Down
21 changes: 3 additions & 18 deletions examples/query/react/basic/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,20 +1,5 @@
{
"include": ["./src/**/*"],
"compilerOptions": {
"strict": true,
"esModuleInterop": true,
"lib": ["dom", "es2015"],
"jsx": "react-jsx",
"target": "es5",
"allowJs": true,
"skipLibCheck": true,
"allowSyntheticDefaultImports": true,
"forceConsistentCasingInFileNames": true,
"noFallthroughCasesInSwitch": true,
"module": "esnext",
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true
}
"extends": "@reduxjs/tsconfig/create-react-app",
"compilerOptions": {},
"include": ["src"]
}
1 change: 1 addition & 0 deletions examples/query/react/conditional-fetching/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
"react-scripts": "5.0.1"
},
"devDependencies": {
"@reduxjs/tsconfig": "workspace:^",
"@types/react": "^18.0.5",
"@types/react-dom": "^18.0.5",
"typescript": "~4.9"
Expand Down
Loading
Loading