From 7af0f315627c8652220c751084c37c7d79e50a58 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 23 Jan 2026 18:57:02 +0000 Subject: [PATCH 1/3] chore(deps): bump memoize-one Bumps [memoize-one](https://github.com/alexreardon/memoize-one) from 5.2.1 to 6.0.0. - [Release notes](https://github.com/alexreardon/memoize-one/releases) - [Commits](https://github.com/alexreardon/memoize-one/compare/v5.2.1...v6.0.0) --- updated-dependencies: - dependency-name: memoize-one dependency-version: 6.0.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- superset-frontend/packages/superset-ui-demo/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/superset-frontend/packages/superset-ui-demo/package.json b/superset-frontend/packages/superset-ui-demo/package.json index 344e7a268f82..6dcf9689b7ee 100644 --- a/superset-frontend/packages/superset-ui-demo/package.json +++ b/superset-frontend/packages/superset-ui-demo/package.json @@ -45,7 +45,7 @@ "core-js": "3.40.0", "gh-pages": "^6.3.0", "jquery": "^4.0.0", - "memoize-one": "^5.2.1", + "memoize-one": "^6.0.0", "react": "^17.0.2", "react-dom": "^17.0.2", "react-loadable": "^5.5.0", From 1cfbe6f46a06dab3c6fd73279de6556ea7653c1b Mon Sep 17 00:00:00 2001 From: Evan Rusackas Date: Mon, 26 Jan 2026 16:23:21 -0800 Subject: [PATCH 2/3] chore(deps): update package-lock.json Co-Authored-By: Claude Opus 4.5 --- superset-frontend/package-lock.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/superset-frontend/package-lock.json b/superset-frontend/package-lock.json index 492016be4713..1613d6d89e34 100644 --- a/superset-frontend/package-lock.json +++ b/superset-frontend/package-lock.json @@ -64822,7 +64822,7 @@ "core-js": "3.40.0", "gh-pages": "^6.3.0", "jquery": "^4.0.0", - "memoize-one": "^5.2.1", + "memoize-one": "^6.0.0", "react": "^17.0.2", "react-dom": "^17.0.2", "react-loadable": "^5.5.0", @@ -65296,6 +65296,12 @@ "dev": true, "license": "MIT" }, + "packages/superset-ui-demo/node_modules/memoize-one": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz", + "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==", + "license": "MIT" + }, "packages/superset-ui-demo/node_modules/schema-utils": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", From 5f9b6b7f74ac5e567a6914e2ed7b645101ab792f Mon Sep 17 00:00:00 2001 From: Evan Rusackas Date: Mon, 26 Jan 2026 21:43:36 -0800 Subject: [PATCH 3/3] fix(types): use concrete types for memoizeOne to fix TS2322 with memoize-one 6.0.0 memoize-one 6.0.0 has stricter TypeScript types that cannot preserve generic type parameters. Wrap expandArray calls in concrete typed lambdas so memoizeOne correctly infers DataRecord[] and string[] return types instead of unknown[]. Co-Authored-By: Claude Opus 4.5 --- .../plugins/plugin-chart-table/Table.stories.tsx | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-table/Table.stories.tsx b/superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-table/Table.stories.tsx index 16d56ca19be8..f19b9122c37b 100644 --- a/superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-table/Table.stories.tsx +++ b/superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-table/Table.stories.tsx @@ -18,7 +18,7 @@ */ import memoizeOne from 'memoize-one'; -import { SuperChart, VizType } from '@superset-ui/core'; +import { DataRecord, SuperChart, VizType } from '@superset-ui/core'; import TableChartPlugin, { TableChartProps, } from '@superset-ui/plugin-chart-table'; @@ -77,7 +77,7 @@ export default { new TableChartPlugin().configure({ key: VizType.Table }).register(); -function expandArray(input: T[], targetSize: number) { +function expandArray(input: T[], targetSize: number): T[] { if (!input || input.length === 0) { throw new Error('Cannot expand an empty array'); } @@ -90,8 +90,14 @@ function expandArray(input: T[], targetSize: number) { // memoize expanded array so to make sure we always return the same // data when changing page sizes -const expandRecords = memoizeOne(expandArray); -const expandColumns = memoizeOne(expandArray); +const expandRecords = memoizeOne( + (input: DataRecord[], targetSize: number): DataRecord[] => + expandArray(input, targetSize), +); +const expandColumns = memoizeOne( + (input: string[], targetSize: number): string[] => + expandArray(input, targetSize), +); /** * Load sample data for testing