From 54321a5a601c966153fcb4479f97e26dfc88789f Mon Sep 17 00:00:00 2001 From: Chi-Hsuan Huang Date: Thu, 13 Jun 2024 13:05:28 +0800 Subject: [PATCH] Add generic error boundary component (#48363) * Fix storybook * Add experimental error boundary component * Add error boundary component * Fix empty content button * Add changelog * Fix storybook * Reset state after actioned * Fix story * Address feedback --- .../components/changelog/add-error-boundary | 4 + .../js/components/src/empty-content/index.js | 7 +- .../src/error-boundary/constants.ts | 2 + .../components/src/error-boundary/index.tsx | 137 +++ .../src/error-boundary/stories/index.tsx | 69 ++ .../components/src/error-boundary/style.scss | 15 + .../src/error-boundary/test/index.test.tsx | 159 ++++ packages/js/components/src/index.ts | 1 + packages/js/components/src/style.scss | 1 + pnpm-lock.yaml | 862 ++++++++++++++---- tools/storybook/package.json | 1 + tools/storybook/webpack.config.js | 8 + 12 files changed, 1094 insertions(+), 172 deletions(-) create mode 100644 packages/js/components/changelog/add-error-boundary create mode 100644 packages/js/components/src/error-boundary/constants.ts create mode 100644 packages/js/components/src/error-boundary/index.tsx create mode 100644 packages/js/components/src/error-boundary/stories/index.tsx create mode 100644 packages/js/components/src/error-boundary/style.scss create mode 100644 packages/js/components/src/error-boundary/test/index.test.tsx diff --git a/packages/js/components/changelog/add-error-boundary b/packages/js/components/changelog/add-error-boundary new file mode 100644 index 00000000000..f3251abe43b --- /dev/null +++ b/packages/js/components/changelog/add-error-boundary @@ -0,0 +1,4 @@ +Significance: minor +Type: add + +Add error boundary component and fix empty content button diff --git a/packages/js/components/src/empty-content/index.js b/packages/js/components/src/empty-content/index.js index 5bcdbeb9360..72b3672861a 100644 --- a/packages/js/components/src/empty-content/index.js +++ b/packages/js/components/src/empty-content/index.js @@ -45,12 +45,13 @@ class EmptyContent extends Component { : this.props.actionCallback; const isPrimary = type === 'secondary' ? false : true; + const buttonVariant = isPrimary ? 'primary' : 'secondary'; if ( actionURL && actionCallback ) { return (