From e1812d94e71b79e078529c310dfebb45c6bc2fbb Mon Sep 17 00:00:00 2001 From: Zacqary Xeper Date: Tue, 19 Mar 2024 11:41:09 -0500 Subject: [PATCH 01/12] Upgrade redux toolkit to 2.2.1 --- package.json | 4 ++-- yarn.lock | 36 ++++++++++++++++++++++++++++-------- 2 files changed, 30 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index a19ef297496c4b..ca28ef2e351e2b 100644 --- a/package.json +++ b/package.json @@ -895,7 +895,7 @@ "@opentelemetry/sdk-metrics-base": "^0.31.0", "@opentelemetry/semantic-conventions": "^1.4.0", "@paralleldrive/cuid2": "^2.2.2", - "@reduxjs/toolkit": "1.9.7", + "@reduxjs/toolkit": "^2.2.1", "@slack/webhook": "^7.0.1", "@smithy/eventstream-codec": "^2.0.12", "@smithy/eventstream-serde-node": "^2.1.1", @@ -1686,4 +1686,4 @@ "zod-to-json-schema": "^3.22.3" }, "packageManager": "yarn@1.22.21" -} \ No newline at end of file +} diff --git a/yarn.lock b/yarn.lock index 20249d3edb856f..935f1fa20ccdd0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7675,15 +7675,15 @@ resolved "https://registry.yarnpkg.com/@redux-saga/types/-/types-1.1.0.tgz#0e81ce56b4883b4b2a3001ebe1ab298b84237204" integrity sha512-afmTuJrylUU/0OtqzaRkbyYFFNgCF73Bvel/sw90pvGrWIZ+vyoIJqA6eMSoA6+nb443kTmulmBtC9NerXboNg== -"@reduxjs/toolkit@1.9.7": - version "1.9.7" - resolved "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-1.9.7.tgz" - integrity sha512-t7v8ZPxhhKgOKtU+uyJT13lu4vL7az5aFi4IdoDs/eS548edn2M8Ik9h8fxgvMjGoAUVFSt6ZC1P5cWmQ014QQ== +"@reduxjs/toolkit@^2.2.1": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@reduxjs/toolkit/-/toolkit-2.2.1.tgz#3dce4906fb33da9e0122468ef21438dd7f2277a9" + integrity sha512-8CREoqJovQW/5I4yvvijm/emUiCCmcs4Ev4XPWd4mizSO+dD3g5G6w34QK5AGeNrSH7qM8Fl66j4vuV7dpOdkw== dependencies: - immer "^9.0.21" - redux "^4.2.1" - redux-thunk "^2.4.2" - reselect "^4.1.8" + immer "^10.0.3" + redux "^5.0.1" + redux-thunk "^3.1.0" + reselect "^5.0.1" "@remix-run/router@1.6.3": version "1.6.3" @@ -18910,6 +18910,11 @@ immediate@~3.0.5: resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" integrity sha1-nbHb0Pr43m++D13V5Wu2BigN5ps= +immer@^10.0.3: + version "10.0.4" + resolved "https://registry.yarnpkg.com/immer/-/immer-10.0.4.tgz#09af41477236b99449f9d705369a4daaf780362b" + integrity sha512-cuBuGK40P/sk5IzWa9QPUaAdvPHjkk1c+xYsd9oZw+YQQEV+10G0P5uMpGctZZKnyQ+ibRO08bD25nWLmYi2pw== + immer@^9.0.21: version "9.0.21" resolved "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz" @@ -26320,6 +26325,11 @@ redux-thunk@^2.4.2: resolved "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.2.tgz" integrity sha512-+P3TjtnP0k/FEjcBL5FZpoovtvrTNT/UXd4/sluaSyrURlSlhLSzEdfsTBW7WsKB6yPvgd7q/iZPICFjW4o57Q== +redux-thunk@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/redux-thunk/-/redux-thunk-3.1.0.tgz#94aa6e04977c30e14e892eae84978c1af6058ff3" + integrity sha512-NW2r5T6ksUKXCabzhL9z+h206HQw/NJkcLm1GPImRQ8IzfXwRGqjVhKJGauHirT0DAuyy6hjdnMZaRoAcy0Klw== + redux-thunks@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/redux-thunks/-/redux-thunks-1.0.0.tgz#56e03b86d281a2664c884ab05c543d9ab1673658" @@ -26332,6 +26342,11 @@ redux@^4.0.0, redux@^4.0.4, redux@^4.2.0, redux@^4.2.1: dependencies: "@babel/runtime" "^7.9.2" +redux@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/redux/-/redux-5.0.1.tgz#97fa26881ce5746500125585d5642c77b6e9447b" + integrity sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w== + refractor@^3.2.0, refractor@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/refractor/-/refractor-3.6.0.tgz#ac318f5a0715ead790fcfb0c71f4dd83d977935a" @@ -26757,6 +26772,11 @@ reselect@^4.0.0, reselect@^4.1.8: resolved "https://registry.npmjs.org/reselect/-/reselect-4.1.8.tgz" integrity sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ== +reselect@^5.0.1: + version "5.1.0" + resolved "https://registry.yarnpkg.com/reselect/-/reselect-5.1.0.tgz#c479139ab9dd91be4d9c764a7f3868210ef8cd21" + integrity sha512-aw7jcGLDpSgNDyWBQLv2cedml85qd95/iszJjN988zX1t7AVRJi19d9kto5+W7oCfQ94gyo40dVbT6g2k4/kXg== + resize-observer-polyfill@1.5.1, resize-observer-polyfill@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz#0e9020dd3d21024458d4ebd27e23e40269810464" From 40f6771ff41efc5c299b706f3d37bf894557483f Mon Sep 17 00:00:00 2001 From: Zacqary Xeper Date: Tue, 19 Mar 2024 11:53:40 -0500 Subject: [PATCH 02/12] Lock redux-toolkit to 2.2.1 --- package.json | 2 +- yarn.lock | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index ca28ef2e351e2b..1df037d1258108 100644 --- a/package.json +++ b/package.json @@ -895,7 +895,7 @@ "@opentelemetry/sdk-metrics-base": "^0.31.0", "@opentelemetry/semantic-conventions": "^1.4.0", "@paralleldrive/cuid2": "^2.2.2", - "@reduxjs/toolkit": "^2.2.1", + "@reduxjs/toolkit": "2.2.1", "@slack/webhook": "^7.0.1", "@smithy/eventstream-codec": "^2.0.12", "@smithy/eventstream-serde-node": "^2.1.1", diff --git a/yarn.lock b/yarn.lock index 935f1fa20ccdd0..27ba9a4e18a7ee 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7675,7 +7675,7 @@ resolved "https://registry.yarnpkg.com/@redux-saga/types/-/types-1.1.0.tgz#0e81ce56b4883b4b2a3001ebe1ab298b84237204" integrity sha512-afmTuJrylUU/0OtqzaRkbyYFFNgCF73Bvel/sw90pvGrWIZ+vyoIJqA6eMSoA6+nb443kTmulmBtC9NerXboNg== -"@reduxjs/toolkit@^2.2.1": +"@reduxjs/toolkit@2.2.1": version "2.2.1" resolved "https://registry.yarnpkg.com/@reduxjs/toolkit/-/toolkit-2.2.1.tgz#3dce4906fb33da9e0122468ef21438dd7f2277a9" integrity sha512-8CREoqJovQW/5I4yvvijm/emUiCCmcs4Ev4XPWd4mizSO+dD3g5G6w34QK5AGeNrSH7qM8Fl66j4vuV7dpOdkw== From a20b832bd83127b33c26487c742293cffce9db1a Mon Sep 17 00:00:00 2001 From: Zacqary Xeper Date: Wed, 20 Mar 2024 15:35:57 -0500 Subject: [PATCH 03/12] Sync redux core packages with toolkit --- package.json | 8 ++++---- yarn.lock | 14 ++------------ 2 files changed, 6 insertions(+), 16 deletions(-) diff --git a/package.json b/package.json index 1df037d1258108..fabda307fcc762 100644 --- a/package.json +++ b/package.json @@ -990,7 +990,7 @@ "https-proxy-agent": "^5.0.1", "i18n-iso-countries": "^4.3.1", "icalendar": "0.7.1", - "immer": "^9.0.21", + "immer": "^10.0.3", "inquirer": "^7.3.3", "intl": "^1.2.5", "intl-format-cache": "^2.1.0", @@ -1090,18 +1090,18 @@ "react-virtualized": "^9.22.5", "react-window": "^1.8.9", "reduce-reducers": "^1.0.4", - "redux": "^4.2.1", + "redux": "^5.0.1", "redux-actions": "^2.6.5", "redux-devtools-extension": "^2.13.8", "redux-logger": "^3.0.6", "redux-saga": "^1.1.3", - "redux-thunk": "^2.4.2", + "redux-thunk": "^3.1.0", "redux-thunks": "^1.0.0", "remark-gfm": "1.0.0", "remark-parse-no-trim": "^8.0.4", "remark-stringify": "^8.0.3", "require-in-the-middle": "^7.2.1", - "reselect": "^4.1.8", + "reselect": "^5.0.1", "resize-observer-polyfill": "1.5.1", "rison-node": "1.0.2", "rxjs": "^7.5.5", diff --git a/yarn.lock b/yarn.lock index 27ba9a4e18a7ee..ed2c6af7255692 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18915,11 +18915,6 @@ immer@^10.0.3: resolved "https://registry.yarnpkg.com/immer/-/immer-10.0.4.tgz#09af41477236b99449f9d705369a4daaf780362b" integrity sha512-cuBuGK40P/sk5IzWa9QPUaAdvPHjkk1c+xYsd9oZw+YQQEV+10G0P5uMpGctZZKnyQ+ibRO08bD25nWLmYi2pw== -immer@^9.0.21: - version "9.0.21" - resolved "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz" - integrity sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA== - immutable@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.1.0.tgz#f795787f0db780183307b9eb2091fcac1f6fafef" @@ -26320,11 +26315,6 @@ redux-saga@^1.1.3: dependencies: "@redux-saga/core" "^1.1.3" -redux-thunk@^2.4.2: - version "2.4.2" - resolved "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.2.tgz" - integrity sha512-+P3TjtnP0k/FEjcBL5FZpoovtvrTNT/UXd4/sluaSyrURlSlhLSzEdfsTBW7WsKB6yPvgd7q/iZPICFjW4o57Q== - redux-thunk@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/redux-thunk/-/redux-thunk-3.1.0.tgz#94aa6e04977c30e14e892eae84978c1af6058ff3" @@ -26335,7 +26325,7 @@ redux-thunks@^1.0.0: resolved "https://registry.yarnpkg.com/redux-thunks/-/redux-thunks-1.0.0.tgz#56e03b86d281a2664c884ab05c543d9ab1673658" integrity sha1-VuA7htKBomZMiEqwXFQ9mrFnNlg= -redux@^4.0.0, redux@^4.0.4, redux@^4.2.0, redux@^4.2.1: +redux@^4.0.0, redux@^4.0.4, redux@^4.2.0: version "4.2.1" resolved "https://registry.npmjs.org/redux/-/redux-4.2.1.tgz" integrity sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w== @@ -26767,7 +26757,7 @@ requires-port@^1.0.0: resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= -reselect@^4.0.0, reselect@^4.1.8: +reselect@^4.0.0: version "4.1.8" resolved "https://registry.npmjs.org/reselect/-/reselect-4.1.8.tgz" integrity sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ== From 71e2fc9360cd52407224c358663ee2abcb965916 Mon Sep 17 00:00:00 2001 From: Zacqary Xeper Date: Wed, 20 Mar 2024 15:37:51 -0500 Subject: [PATCH 04/12] Fix bad merge --- yarn.lock | 4 ---- 1 file changed, 4 deletions(-) diff --git a/yarn.lock b/yarn.lock index ba8f82ace205f6..1987a390bfe12f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -26353,20 +26353,16 @@ redux@^4.0.0, redux@^4.0.4, redux@^4.2.0: dependencies: "@babel/runtime" "^7.9.2" -<<<<<<< HEAD redux@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/redux/-/redux-5.0.1.tgz#97fa26881ce5746500125585d5642c77b6e9447b" integrity sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w== -||||||| fc2c389cce7 -======= reflect-metadata@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.2.1.tgz#8d5513c0f5ef2b4b9c3865287f3c0940c1f67f74" integrity sha512-i5lLI6iw9AU3Uu4szRNPPEkomnkjRTaVt9hy/bn5g/oSzekBSMeLZblcjP74AW0vBabqERLLIrz+gR8QYR54Tw== ->>>>>>> upstream/main refractor@^3.2.0, refractor@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/refractor/-/refractor-3.6.0.tgz#ac318f5a0715ead790fcfb0c71f4dd83d977935a" From bb9d0d595896a49f670d7bd1a30d575521502524 Mon Sep 17 00:00:00 2001 From: Zacqary Xeper Date: Thu, 21 Mar 2024 11:41:28 -0500 Subject: [PATCH 05/12] Upgrade toolkit to 2.2.2 --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 8d485c9a50a853..c71c19a5424b27 100644 --- a/package.json +++ b/package.json @@ -899,7 +899,7 @@ "@opentelemetry/sdk-metrics-base": "^0.31.0", "@opentelemetry/semantic-conventions": "^1.4.0", "@paralleldrive/cuid2": "^2.2.2", - "@reduxjs/toolkit": "2.2.1", + "@reduxjs/toolkit": "2.2.2", "@slack/webhook": "^7.0.1", "@smithy/eventstream-codec": "^2.0.12", "@smithy/eventstream-serde-node": "^2.1.1", diff --git a/yarn.lock b/yarn.lock index 1987a390bfe12f..5cf1ae92e5524b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7689,10 +7689,10 @@ resolved "https://registry.yarnpkg.com/@redux-saga/types/-/types-1.1.0.tgz#0e81ce56b4883b4b2a3001ebe1ab298b84237204" integrity sha512-afmTuJrylUU/0OtqzaRkbyYFFNgCF73Bvel/sw90pvGrWIZ+vyoIJqA6eMSoA6+nb443kTmulmBtC9NerXboNg== -"@reduxjs/toolkit@2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@reduxjs/toolkit/-/toolkit-2.2.1.tgz#3dce4906fb33da9e0122468ef21438dd7f2277a9" - integrity sha512-8CREoqJovQW/5I4yvvijm/emUiCCmcs4Ev4XPWd4mizSO+dD3g5G6w34QK5AGeNrSH7qM8Fl66j4vuV7dpOdkw== +"@reduxjs/toolkit@2.2.2": + version "2.2.2" + resolved "https://registry.yarnpkg.com/@reduxjs/toolkit/-/toolkit-2.2.2.tgz#952fc8f8315d7274e28f6e4608b7ec66fce7e94e" + integrity sha512-454GZrEx3G6QSYwIx9ROaso1HR6sTH8qyZBe3KEsdWVGU3ayV8jYCwdaEJV3vl9V6+pi3GRl+7Xl7AeDna6qwQ== dependencies: immer "^10.0.3" redux "^5.0.1" From 2cfc40cf305512c7aadee746a2ae946748441abf Mon Sep 17 00:00:00 2001 From: Zacqary Xeper Date: Thu, 21 Mar 2024 13:28:53 -0500 Subject: [PATCH 06/12] Fix package.json newline --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c71c19a5424b27..6be10810ef7bf7 100644 --- a/package.json +++ b/package.json @@ -1693,4 +1693,4 @@ "zod-to-json-schema": "^3.22.3" }, "packageManager": "yarn@1.22.21" -} +} \ No newline at end of file From e474891e6bd2b0e7ffa2b19ec90e0573e913a518 Mon Sep 17 00:00:00 2001 From: Zacqary Xeper Date: Thu, 21 Mar 2024 13:33:56 -0500 Subject: [PATCH 07/12] Set lruMemoize method on sourcerer --- .../public/common/store/sourcerer/selectors.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/x-pack/plugins/security_solution/public/common/store/sourcerer/selectors.ts b/x-pack/plugins/security_solution/public/common/store/sourcerer/selectors.ts index 71cbef670cb6e5..58995597cf51d3 100644 --- a/x-pack/plugins/security_solution/public/common/store/sourcerer/selectors.ts +++ b/x-pack/plugins/security_solution/public/common/store/sourcerer/selectors.ts @@ -4,7 +4,7 @@ * 2.0; you may not use this file except in compliance with the Elastic License * 2.0. */ -import { createSelector } from 'reselect'; +import { createSelector, lruMemoize } from 'reselect'; import type { State } from '../types'; import type { SourcererModel } from './model'; import { SourcererScopeName } from './model'; @@ -23,6 +23,7 @@ export const sourcererScope = createSelector( (state: State, scopeId: SourcererScopeName) => scopeId, (scopes, scopeId) => scopes[scopeId], { + memoize: lruMemoize, memoizeOptions: { maxSize: SOURCERER_SCOPE_MAX_SIZE, }, @@ -30,6 +31,7 @@ export const sourcererScope = createSelector( ); export const sourcererScopeIsLoading = createSelector(sourcererScope, (scope) => scope.loading, { + memoize: lruMemoize, memoizeOptions: { maxSize: SOURCERER_SCOPE_MAX_SIZE, }, @@ -39,6 +41,8 @@ export const sourcererScopeSelectedDataViewId = createSelector( sourcererScope, (scope) => scope.selectedDataViewId, { + memoize: lruMemoize, + memoizeOptions: { maxSize: SOURCERER_SCOPE_MAX_SIZE, }, @@ -49,6 +53,7 @@ export const sourcererScopeSelectedPatterns = createSelector( sourcererScope, (scope) => scope.selectedPatterns, { + memoize: lruMemoize, memoizeOptions: { maxSize: SOURCERER_SCOPE_MAX_SIZE, }, @@ -59,6 +64,7 @@ export const sourcererScopeMissingPatterns = createSelector( sourcererScope, (scope) => scope.missingPatterns, { + memoize: lruMemoize, memoizeOptions: { maxSize: SOURCERER_SCOPE_MAX_SIZE, }, @@ -69,6 +75,7 @@ export const kibanaDataViews = createSelector( selectSourcerer, (sourcerer) => sourcerer.kibanaDataViews, { + memoize: lruMemoize, memoizeOptions: { maxSize: SOURCERER_SCOPE_MAX_SIZE, }, @@ -79,6 +86,7 @@ export const defaultDataView = createSelector( selectSourcerer, (sourcerer) => sourcerer.defaultDataView, { + memoize: lruMemoize, memoizeOptions: { maxSize: SOURCERER_SCOPE_MAX_SIZE, }, @@ -89,6 +97,7 @@ export const signalIndexName = createSelector( selectSourcerer, (sourcerer) => sourcerer.signalIndexName, { + memoize: lruMemoize, memoizeOptions: { maxSize: SOURCERER_SCOPE_MAX_SIZE, }, @@ -99,6 +108,7 @@ export const signalIndexMappingOutdated = createSelector( selectSourcerer, (sourcerer) => sourcerer.signalIndexMappingOutdated, { + memoize: lruMemoize, memoizeOptions: { maxSize: SOURCERER_SCOPE_MAX_SIZE, }, From 265dd8038d69f7dd81827c3003f7656c724bd2ec Mon Sep 17 00:00:00 2001 From: Zacqary Xeper Date: Mon, 25 Mar 2024 13:53:23 -0500 Subject: [PATCH 08/12] Fix synthetics and security enhancers crash; upgrade saga and devtools --- package.json | 6 +- packages/kbn-expandable-flyout/src/redux.ts | 2 +- .../src/test/provider.tsx | 2 +- .../public/apps/synthetics/state/store.ts | 1 - yarn.lock | 83 +++++++++---------- 5 files changed, 46 insertions(+), 48 deletions(-) diff --git a/package.json b/package.json index 6be10810ef7bf7..723906d6c5fe23 100644 --- a/package.json +++ b/package.json @@ -1096,9 +1096,9 @@ "reduce-reducers": "^1.0.4", "redux": "^5.0.1", "redux-actions": "^2.6.5", - "redux-devtools-extension": "^2.13.8", + "redux-devtools-extension": "^2.13.9", "redux-logger": "^3.0.6", - "redux-saga": "^1.1.3", + "redux-saga": "^1.3.0", "redux-thunk": "^3.1.0", "redux-thunks": "^1.0.0", "reflect-metadata": "^0.2.1", @@ -1693,4 +1693,4 @@ "zod-to-json-schema": "^3.22.3" }, "packageManager": "yarn@1.22.21" -} \ No newline at end of file +} diff --git a/packages/kbn-expandable-flyout/src/redux.ts b/packages/kbn-expandable-flyout/src/redux.ts index 879e812ebcbeac..9e2bd56c119e31 100644 --- a/packages/kbn-expandable-flyout/src/redux.ts +++ b/packages/kbn-expandable-flyout/src/redux.ts @@ -16,7 +16,7 @@ import { initialState, State } from './state'; export const store = configureStore({ reducer, devTools: process.env.NODE_ENV !== 'production', - enhancers: [], + enhancers: () => [], }); export const Context = createContext>({ diff --git a/packages/kbn-expandable-flyout/src/test/provider.tsx b/packages/kbn-expandable-flyout/src/test/provider.tsx index 896b563056206b..1860c910ca07af 100644 --- a/packages/kbn-expandable-flyout/src/test/provider.tsx +++ b/packages/kbn-expandable-flyout/src/test/provider.tsx @@ -28,7 +28,7 @@ export const TestProvider: FC> = ({ reducer, devTools: false, preloadedState: state, - enhancers: [], + enhancers: () => [], }); return ( diff --git a/x-pack/plugins/observability_solution/synthetics/public/apps/synthetics/state/store.ts b/x-pack/plugins/observability_solution/synthetics/public/apps/synthetics/state/store.ts index 19320f0102a99e..f975fbfcb527de 100644 --- a/x-pack/plugins/observability_solution/synthetics/public/apps/synthetics/state/store.ts +++ b/x-pack/plugins/observability_solution/synthetics/public/apps/synthetics/state/store.ts @@ -18,7 +18,6 @@ export const store = configureStore({ middleware: (getDefaultMiddleware) => getDefaultMiddleware({ thunk: false }).concat(sagaMW), devTools: process.env.NODE_ENV !== 'production', preloadedState: {}, - enhancers: [], }); sagaMW.run(rootEffect); diff --git a/yarn.lock b/yarn.lock index 5cf1ae92e5524b..d5542d9631f31f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7645,49 +7645,48 @@ pluralize "^8.0.0" yaml-ast-parser "0.0.43" -"@redux-saga/core@^1.1.3": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@redux-saga/core/-/core-1.1.3.tgz#3085097b57a4ea8db5528d58673f20ce0950f6a4" - integrity sha512-8tInBftak8TPzE6X13ABmEtRJGjtK17w7VUs7qV17S8hCO5S3+aUTWZ/DBsBJPdE8Z5jOPwYALyvofgq1Ws+kg== +"@redux-saga/core@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@redux-saga/core/-/core-1.3.0.tgz#2ce08b73d407fc6ea9e7f7d83d2e97d981a3a8b8" + integrity sha512-L+i+qIGuyWn7CIg7k1MteHGfttKPmxwZR5E7OsGikCL2LzYA0RERlaUY00Y3P3ZV2EYgrsYlBrGs6cJP5OKKqA== dependencies: "@babel/runtime" "^7.6.3" - "@redux-saga/deferred" "^1.1.2" - "@redux-saga/delay-p" "^1.1.2" - "@redux-saga/is" "^1.1.2" - "@redux-saga/symbols" "^1.1.2" - "@redux-saga/types" "^1.1.0" - redux "^4.0.4" + "@redux-saga/deferred" "^1.2.1" + "@redux-saga/delay-p" "^1.2.1" + "@redux-saga/is" "^1.1.3" + "@redux-saga/symbols" "^1.1.3" + "@redux-saga/types" "^1.2.1" typescript-tuple "^2.2.1" -"@redux-saga/deferred@^1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@redux-saga/deferred/-/deferred-1.1.2.tgz#59937a0eba71fff289f1310233bc518117a71888" - integrity sha512-908rDLHFN2UUzt2jb4uOzj6afpjgJe3MjICaUNO3bvkV/kN/cNeI9PMr8BsFXB/MR8WTAZQq/PlTq8Kww3TBSQ== +"@redux-saga/deferred@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@redux-saga/deferred/-/deferred-1.2.1.tgz#aca373a08ccafd6f3481037f2f7ee97f2c87c3ec" + integrity sha512-cmin3IuuzMdfQjA0lG4B+jX+9HdTgHZZ+6u3jRAOwGUxy77GSlTi4Qp2d6PM1PUoTmQUR5aijlA39scWWPF31g== -"@redux-saga/delay-p@^1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@redux-saga/delay-p/-/delay-p-1.1.2.tgz#8f515f4b009b05b02a37a7c3d0ca9ddc157bb355" - integrity sha512-ojc+1IoC6OP65Ts5+ZHbEYdrohmIw1j9P7HS9MOJezqMYtCDgpkoqB5enAAZrNtnbSL6gVCWPHaoaTY5KeO0/g== +"@redux-saga/delay-p@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@redux-saga/delay-p/-/delay-p-1.2.1.tgz#e72ac4731c5080a21f75b61bedc31cb639d9e446" + integrity sha512-MdiDxZdvb1m+Y0s4/hgdcAXntpUytr9g0hpcOO1XFVyyzkrDu3SKPgBFOtHn7lhu7n24ZKIAT1qtKyQjHqRd+w== dependencies: - "@redux-saga/symbols" "^1.1.2" + "@redux-saga/symbols" "^1.1.3" -"@redux-saga/is@^1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@redux-saga/is/-/is-1.1.2.tgz#ae6c8421f58fcba80faf7cadb7d65b303b97e58e" - integrity sha512-OLbunKVsCVNTKEf2cH4TYyNbbPgvmZ52iaxBD4I1fTif4+MTXMa4/Z07L83zW/hTCXwpSZvXogqMqLfex2Tg6w== +"@redux-saga/is@^1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@redux-saga/is/-/is-1.1.3.tgz#b333f31967e87e32b4e6b02c75b78d609dd4ad73" + integrity sha512-naXrkETG1jLRfVfhOx/ZdLj0EyAzHYbgJWkXbB3qFliPcHKiWbv/ULQryOAEKyjrhiclmr6AMdgsXFyx7/yE6Q== dependencies: - "@redux-saga/symbols" "^1.1.2" - "@redux-saga/types" "^1.1.0" + "@redux-saga/symbols" "^1.1.3" + "@redux-saga/types" "^1.2.1" -"@redux-saga/symbols@^1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@redux-saga/symbols/-/symbols-1.1.2.tgz#216a672a487fc256872b8034835afc22a2d0595d" - integrity sha512-EfdGnF423glv3uMwLsGAtE6bg+R9MdqlHEzExnfagXPrIiuxwr3bdiAwz3gi+PsrQ3yBlaBpfGLtDG8rf3LgQQ== +"@redux-saga/symbols@^1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@redux-saga/symbols/-/symbols-1.1.3.tgz#b731d56201719e96dc887dc3ae9016e761654367" + integrity sha512-hCx6ZvU4QAEUojETnX8EVg4ubNLBFl1Lps4j2tX7o45x/2qg37m3c6v+kSp8xjDJY+2tJw4QB3j8o8dsl1FDXg== -"@redux-saga/types@^1.1.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@redux-saga/types/-/types-1.1.0.tgz#0e81ce56b4883b4b2a3001ebe1ab298b84237204" - integrity sha512-afmTuJrylUU/0OtqzaRkbyYFFNgCF73Bvel/sw90pvGrWIZ+vyoIJqA6eMSoA6+nb443kTmulmBtC9NerXboNg== +"@redux-saga/types@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@redux-saga/types/-/types-1.2.1.tgz#9403f51c17cae37edf870c6bc0c81c1ece5ccef8" + integrity sha512-1dgmkh+3so0+LlBWRhGA33ua4MYr7tUOj+a9Si28vUi0IUFNbff1T3sgpeDJI/LaC75bBYnQ0A3wXjn0OrRNBA== "@reduxjs/toolkit@2.2.2": version "2.2.2" @@ -26317,10 +26316,10 @@ redux-actions@^2.6.5: reduce-reducers "^0.4.3" to-camel-case "^1.0.0" -redux-devtools-extension@^2.13.8: - version "2.13.8" - resolved "https://registry.yarnpkg.com/redux-devtools-extension/-/redux-devtools-extension-2.13.8.tgz#37b982688626e5e4993ff87220c9bbb7cd2d96e1" - integrity sha512-8qlpooP2QqPtZHQZRhx3x3OP5skEV1py/zUdMY28WNAocbafxdG2tRD1MWE7sp8obGMNYuLWanhhQ7EQvT1FBg== +redux-devtools-extension@^2.13.9: + version "2.13.9" + resolved "https://registry.yarnpkg.com/redux-devtools-extension/-/redux-devtools-extension-2.13.9.tgz#6b764e8028b507adcb75a1cae790f71e6be08ae7" + integrity sha512-cNJ8Q/EtjhQaZ71c8I9+BPySIBVEKssbPpskBfsXqb8HJ002A3KRVHfeRzwRo6mGPqsm7XuHTqNSNeS1Khig0A== redux-logger@^3.0.6: version "3.0.6" @@ -26329,12 +26328,12 @@ redux-logger@^3.0.6: dependencies: deep-diff "^0.3.5" -redux-saga@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/redux-saga/-/redux-saga-1.1.3.tgz#9f3e6aebd3c994bbc0f6901a625f9a42b51d1112" - integrity sha512-RkSn/z0mwaSa5/xH/hQLo8gNf4tlvT18qXDNvedihLcfzh+jMchDgaariQoehCpgRltEm4zHKJyINEz6aqswTw== +redux-saga@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/redux-saga/-/redux-saga-1.3.0.tgz#a59ada7c28010189355356b99738c9fcb7ade30e" + integrity sha512-J9RvCeAZXSTAibFY0kGw6Iy4EdyDNW7k6Q+liwX+bsck7QVsU78zz8vpBRweEfANxnnlG/xGGeOvf6r8UXzNJQ== dependencies: - "@redux-saga/core" "^1.1.3" + "@redux-saga/core" "^1.3.0" redux-thunk@^3.1.0: version "3.1.0" From 4f6f3db5604eaf6edd0642000966840539568bf2 Mon Sep 17 00:00:00 2001 From: Zacqary Xeper Date: Mon, 25 Mar 2024 14:11:15 -0500 Subject: [PATCH 09/12] Fix package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 443474ed3df8d7..00b28d4544c7fc 100644 --- a/package.json +++ b/package.json @@ -1697,4 +1697,4 @@ "zod-to-json-schema": "^3.22.3" }, "packageManager": "yarn@1.22.21" -} +} \ No newline at end of file From 919d261e700043106b61fd42365340083d6aff7c Mon Sep 17 00:00:00 2001 From: Zacqary Xeper Date: Mon, 25 Mar 2024 16:36:43 -0500 Subject: [PATCH 10/12] Upgrade react-redux --- package.json | 2 +- .../embeddable/public/store/create_store.ts | 2 +- yarn.lock | 14 +++++++++++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 00b28d4544c7fc..d8dd3d8548f10e 100644 --- a/package.json +++ b/package.json @@ -1086,7 +1086,7 @@ "react-monaco-editor": "^0.54.0", "react-popper-tooltip": "^3.1.1", "react-recompose": "^0.33.0", - "react-redux": "^7.2.8", + "react-redux": "^8.1.3", "react-resizable": "^3.0.4", "react-reverse-portal": "^2.1.0", "react-router": "^5.3.4", diff --git a/src/plugins/embeddable/public/store/create_store.ts b/src/plugins/embeddable/public/store/create_store.ts index 135f793c079ddd..53411875900dac 100644 --- a/src/plugins/embeddable/public/store/create_store.ts +++ b/src/plugins/embeddable/public/store/create_store.ts @@ -40,7 +40,7 @@ function createReducer( reducer?: CreateStoreOptions['reducer'] ): Reducer | ReducersMapObject { if (reducer instanceof Function) { - const generic = combineReducers>({ + const generic = combineReducers({ input: input.reducer, output: output.reducer, }) as Reducer; diff --git a/yarn.lock b/yarn.lock index 316d15df2478d5..6c517b8cec3477 100644 --- a/yarn.lock +++ b/yarn.lock @@ -25894,7 +25894,7 @@ react-recompose@^0.33.0: react-lifecycles-compat "^3.0.4" symbol-observable "^4.0.0" -react-redux@^7.1.0, react-redux@^7.2.8: +react-redux@^7.1.0: version "7.2.8" resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-7.2.8.tgz#a894068315e65de5b1b68899f9c6ee0923dd28de" integrity sha512-6+uDjhs3PSIclqoCk0kd6iX74gzrGc3W5zcAjbrFgEdIjRSQObdIwfx80unTkVUYvbQ95Y8Av3OvFHq1w5EOUw== @@ -25918,6 +25918,18 @@ react-redux@^8.0.4: react-is "^18.0.0" use-sync-external-store "^1.0.0" +react-redux@^8.1.3: + version "8.1.3" + resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-8.1.3.tgz#4fdc0462d0acb59af29a13c27ffef6f49ab4df46" + integrity sha512-n0ZrutD7DaX/j9VscF+uTALI3oUPa/pO4Z3soOBIjuRn/FzVu6aehhysxZCLi6y7duMf52WNZGMl7CtuK5EnRw== + dependencies: + "@babel/runtime" "^7.12.1" + "@types/hoist-non-react-statics" "^3.3.1" + "@types/use-sync-external-store" "^0.0.3" + hoist-non-react-statics "^3.3.2" + react-is "^18.0.0" + use-sync-external-store "^1.0.0" + react-refresh@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.11.0.tgz#77198b944733f0f1f1a90e791de4541f9f074046" From 8a6d89b63c0089e2df78c9a9e9027233f271cd6e Mon Sep 17 00:00:00 2001 From: Zacqary Xeper Date: Mon, 25 Mar 2024 17:03:04 -0500 Subject: [PATCH 11/12] Fix thunk middleware import failures --- .../canvas/public/components/element_wrapper/index.js | 4 ++-- x-pack/plugins/canvas/public/state/middleware/index.js | 6 ++---- x-pack/plugins/canvas/storybook/addon/state.ts | 4 ++-- .../cross_cluster_replication/public/app/store/store.js | 2 +- .../index_management/public/application/store/store.js | 2 +- .../license_management/public/application/store/store.js | 2 +- x-pack/plugins/maps/public/reducers/store.js | 2 +- .../remote_clusters/public/application/store/store.js | 2 +- x-pack/plugins/rollup/public/crud_app/store/store.js | 2 +- 9 files changed, 12 insertions(+), 14 deletions(-) diff --git a/x-pack/plugins/canvas/public/components/element_wrapper/index.js b/x-pack/plugins/canvas/public/components/element_wrapper/index.js index 1dfa5b9b546ce9..6c7d5b1791c772 100644 --- a/x-pack/plugins/canvas/public/components/element_wrapper/index.js +++ b/x-pack/plugins/canvas/public/components/element_wrapper/index.js @@ -6,7 +6,7 @@ */ import PropTypes from 'prop-types'; -import { connectAdvanced } from 'react-redux'; +import { connect } from 'react-redux'; import { compose, withPropsOnChange, mapProps } from 'react-recompose'; import isEqual from 'react-fast-compare'; import { getResolvedArgs, getSelectedPage } from '../../state/selectors/workpad'; @@ -57,7 +57,7 @@ function selectorFactory(dispatch) { } export const ElementWrapper = compose( - connectAdvanced(selectorFactory), + connect(selectorFactory), withPropsOnChange( (props, nextProps) => !isEqual(props.element, nextProps.element), (props) => { diff --git a/x-pack/plugins/canvas/public/state/middleware/index.js b/x-pack/plugins/canvas/public/state/middleware/index.js index fbed2fbb3741b3..1f7494d8d5420e 100644 --- a/x-pack/plugins/canvas/public/state/middleware/index.js +++ b/x-pack/plugins/canvas/public/state/middleware/index.js @@ -6,16 +6,14 @@ */ import { applyMiddleware, compose as reduxCompose } from 'redux'; -import thunkMiddleware from 'redux-thunk'; +import { thunk } from 'redux-thunk'; import { getWindow } from '../../lib/get_window'; import { inFlight } from './in_flight'; import { workpadUpdate } from './workpad_update'; import { elementStats } from './element_stats'; import { resolvedArgs } from './resolved_args'; -const middlewares = [ - applyMiddleware(thunkMiddleware, elementStats, resolvedArgs, inFlight, workpadUpdate), -]; +const middlewares = [applyMiddleware(thunk, elementStats, resolvedArgs, inFlight, workpadUpdate)]; // compose with redux devtools, if extension is installed const compose = getWindow().__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || reduxCompose; diff --git a/x-pack/plugins/canvas/storybook/addon/state.ts b/x-pack/plugins/canvas/storybook/addon/state.ts index dea83118e64336..4a87902997aa32 100644 --- a/x-pack/plugins/canvas/storybook/addon/state.ts +++ b/x-pack/plugins/canvas/storybook/addon/state.ts @@ -6,7 +6,7 @@ */ import { applyMiddleware, Dispatch, Store } from 'redux'; -import thunkMiddleware from 'redux-thunk'; +import { thunk } from 'redux-thunk'; import addons from '@storybook/addons'; import { diff } from 'jsondiffpatch'; import { isFunction } from 'lodash'; @@ -21,7 +21,7 @@ import { getInitialState as getState } from '../../public/state/initial_state'; import { State } from '../../types'; export const getInitialState: () => State = () => getState(); -export const getMiddleware = () => applyMiddleware(thunkMiddleware); +export const getMiddleware = () => applyMiddleware(thunk); export const getReducer = () => getRootReducer(getInitialState()); export const patchDispatch: (store: Store, dispatch: Dispatch) => Dispatch = diff --git a/x-pack/plugins/cross_cluster_replication/public/app/store/store.js b/x-pack/plugins/cross_cluster_replication/public/app/store/store.js index 17f4e7bcdc26cc..de6fb04102aaea 100644 --- a/x-pack/plugins/cross_cluster_replication/public/app/store/store.js +++ b/x-pack/plugins/cross_cluster_replication/public/app/store/store.js @@ -6,7 +6,7 @@ */ import { applyMiddleware, compose, createStore } from 'redux'; -import thunk from 'redux-thunk'; +import { thunk } from 'redux-thunk'; import { ccr } from './reducers'; diff --git a/x-pack/plugins/index_management/public/application/store/store.js b/x-pack/plugins/index_management/public/application/store/store.js index 08109cde04e1f7..58aa83895e562e 100644 --- a/x-pack/plugins/index_management/public/application/store/store.js +++ b/x-pack/plugins/index_management/public/application/store/store.js @@ -6,7 +6,7 @@ */ import { createStore, applyMiddleware, compose } from 'redux'; -import thunk from 'redux-thunk'; +import { thunk } from 'redux-thunk'; import { defaultTableState } from './reducers/table_state'; import { getReducer } from './reducers'; diff --git a/x-pack/plugins/license_management/public/application/store/store.js b/x-pack/plugins/license_management/public/application/store/store.js index dfc68783118ee6..024e5eff9416f5 100644 --- a/x-pack/plugins/license_management/public/application/store/store.js +++ b/x-pack/plugins/license_management/public/application/store/store.js @@ -6,7 +6,7 @@ */ import { createStore, applyMiddleware, compose } from 'redux'; -import thunk from 'redux-thunk'; +import { thunk } from 'redux-thunk'; import { licenseManagement } from './reducers'; diff --git a/x-pack/plugins/maps/public/reducers/store.js b/x-pack/plugins/maps/public/reducers/store.js index f1020b2d6cdb69..365701e5943379 100644 --- a/x-pack/plugins/maps/public/reducers/store.js +++ b/x-pack/plugins/maps/public/reducers/store.js @@ -6,7 +6,7 @@ */ import { combineReducers, applyMiddleware, createStore, compose } from 'redux'; -import thunk from 'redux-thunk'; +import { thunk } from 'redux-thunk'; import { ui, DEFAULT_MAP_UI_STATE } from './ui'; import { map, DEFAULT_MAP_STATE } from './map'; // eslint-disable-line import/named import { nonSerializableInstances } from './non_serializable_instances'; diff --git a/x-pack/plugins/remote_clusters/public/application/store/store.js b/x-pack/plugins/remote_clusters/public/application/store/store.js index cfa36b49a29c1e..2dc4b04d7dfcb4 100644 --- a/x-pack/plugins/remote_clusters/public/application/store/store.js +++ b/x-pack/plugins/remote_clusters/public/application/store/store.js @@ -6,7 +6,7 @@ */ import { createStore, applyMiddleware, compose } from 'redux'; -import thunk from 'redux-thunk'; +import { thunk } from 'redux-thunk'; import { remoteClusters } from './reducers'; import { detailPanel } from './middleware'; diff --git a/x-pack/plugins/rollup/public/crud_app/store/store.js b/x-pack/plugins/rollup/public/crud_app/store/store.js index 383c6e842afdaa..1d1b3b7eb7b686 100644 --- a/x-pack/plugins/rollup/public/crud_app/store/store.js +++ b/x-pack/plugins/rollup/public/crud_app/store/store.js @@ -6,7 +6,7 @@ */ import { createStore, applyMiddleware, compose } from 'redux'; -import thunk from 'redux-thunk'; +import { thunk } from 'redux-thunk'; import { rollupJobs } from './reducers'; From b4725dc2d99fe9bbe3247d919f7ef6cef7902751 Mon Sep 17 00:00:00 2001 From: Zacqary Xeper Date: Mon, 25 Mar 2024 18:38:45 -0500 Subject: [PATCH 12/12] Fix yarn.lock --- yarn.lock | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/yarn.lock b/yarn.lock index 6c517b8cec3477..42b892dc46a33c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -25906,19 +25906,7 @@ react-redux@^7.1.0: prop-types "^15.7.2" react-is "^17.0.2" -react-redux@^8.0.4: - version "8.1.2" - resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-8.1.2.tgz#9076bbc6b60f746659ad6d51cb05de9c5e1e9188" - integrity sha512-xJKYI189VwfsFc4CJvHqHlDrzyFTY/3vZACbE+rr/zQ34Xx1wQfB4OTOSeOSNrF6BDVe8OOdxIrAnMGXA3ggfw== - dependencies: - "@babel/runtime" "^7.12.1" - "@types/hoist-non-react-statics" "^3.3.1" - "@types/use-sync-external-store" "^0.0.3" - hoist-non-react-statics "^3.3.2" - react-is "^18.0.0" - use-sync-external-store "^1.0.0" - -react-redux@^8.1.3: +react-redux@^8.0.4, react-redux@^8.1.3: version "8.1.3" resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-8.1.3.tgz#4fdc0462d0acb59af29a13c27ffef6f49ab4df46" integrity sha512-n0ZrutD7DaX/j9VscF+uTALI3oUPa/pO4Z3soOBIjuRn/FzVu6aehhysxZCLi6y7duMf52WNZGMl7CtuK5EnRw==