Skip to content

Commit

Permalink
Merge pull request #3928 from reduxjs/feature/2.0-reselect-weakmapmem…
Browse files Browse the repository at this point in the history
…oize
  • Loading branch information
markerikson committed Dec 1, 2023
2 parents e0a341f + dc0b467 commit 5a36e6c
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 17 deletions.
2 changes: 1 addition & 1 deletion packages/toolkit/package.json
Expand Up @@ -114,7 +114,7 @@
"immer": "^10.0.3",
"redux": "^5.0.0-rc.1",
"redux-thunk": "^3.0.0-rc.0",
"reselect": "^5.0.0-beta.1"
"reselect": "^5.0.0-rc.0"
},
"peerDependencies": {
"react": "^16.9.0 || ^17.0.0 || ^18",
Expand Down
4 changes: 2 additions & 2 deletions packages/toolkit/src/createDraftSafeSelector.ts
@@ -1,5 +1,5 @@
import { current, isDraft } from 'immer'
import { createSelectorCreator, defaultMemoize } from 'reselect'
import { createSelectorCreator, weakMapMemoize } from 'reselect'

export const createDraftSafeSelectorCreator: typeof createSelectorCreator = (
...args: unknown[]
Expand All @@ -22,4 +22,4 @@ export const createDraftSafeSelectorCreator: typeof createSelectorCreator = (
* @public
*/
export const createDraftSafeSelector =
createDraftSafeSelectorCreator(defaultMemoize)
createDraftSafeSelectorCreator(weakMapMemoize)
7 changes: 1 addition & 6 deletions packages/toolkit/src/index.ts
Expand Up @@ -17,12 +17,7 @@ export {
defaultMemoize,
weakMapMemoize,
} from 'reselect'
export type {
Selector,
OutputParametricSelector,
OutputSelector,
ParametricSelector,
} from 'reselect'
export type { Selector, OutputSelector } from 'reselect'
export {
createDraftSafeSelector,
createDraftSafeSelectorCreator,
Expand Down
6 changes: 3 additions & 3 deletions packages/toolkit/src/query/createApi.ts
Expand Up @@ -11,7 +11,7 @@ import { DefinitionType, isQueryDefinition } from './endpointDefinitions'
import { nanoid } from './core/rtkImports'
import type { UnknownAction } from '@reduxjs/toolkit'
import type { NoInfer } from './tsHelpers'
import { defaultMemoize } from 'reselect'
import { weakMapMemoize } from 'reselect'

export interface CreateApiOptions<
BaseQuery extends BaseQueryFn,
Expand Down Expand Up @@ -253,7 +253,7 @@ export function buildCreateApi<Modules extends [Module<any>, ...Module<any>[]]>(
...modules: Modules
): CreateApi<Modules[number]['name']> {
return function baseCreateApi(options) {
const extractRehydrationInfo = defaultMemoize((action: UnknownAction) =>
const extractRehydrationInfo = weakMapMemoize((action: UnknownAction) =>
options.extractRehydrationInfo?.(action, {
reducerPath: (options.reducerPath ?? 'api') as any,
})
Expand Down Expand Up @@ -304,7 +304,7 @@ export function buildCreateApi<Modules extends [Module<any>, ...Module<any>[]]>(
},
apiUid: nanoid(),
extractRehydrationInfo,
hasRehydrationInfo: defaultMemoize(
hasRehydrationInfo: weakMapMemoize(
(action) => extractRehydrationInfo(action) != null
),
}
Expand Down
10 changes: 5 additions & 5 deletions yarn.lock
Expand Up @@ -7077,7 +7077,7 @@ __metadata:
query-string: ^7.0.1
redux: ^5.0.0-rc.1
redux-thunk: ^3.0.0-rc.0
reselect: ^5.0.0-beta.1
reselect: ^5.0.0-rc.0
rimraf: ^3.0.2
size-limit: ^4.11.0
tslib: ^1.10.0
Expand Down Expand Up @@ -25611,10 +25611,10 @@ fsevents@^1.2.7:
languageName: node
linkType: hard

"reselect@npm:^5.0.0-beta.1":
version: 5.0.0-beta.1
resolution: "reselect@npm:5.0.0-beta.1"
checksum: dd707e2285c6c4d27c245634e87cf12ef5043cf01c48478f80b3e178efa8f4cd8576d56ac2691180a63704532fb3f12861df81b66ddd7819decbf64d6908779e
"reselect@npm:^5.0.0-rc.0":
version: 5.0.0-rc.0
resolution: "reselect@npm:5.0.0-rc.0"
checksum: 3de8f67e543da56261e97a4db9a677544637ec59f037b651a617cf91fb9cb32d540dc8a9aa8a36f7dbcc9997bd4c4391c53e5ac9298b983a0da9bf576688e5db
languageName: node
linkType: hard

Expand Down

0 comments on commit 5a36e6c

Please sign in to comment.