From 373f8508092b0d024fff6e67e074900f752a5fc5 Mon Sep 17 00:00:00 2001 From: Adi Dahiya Date: Mon, 16 Oct 2023 12:20:31 -0400 Subject: [PATCH] [core] fix(ResizeSensor): ResizeObserver feature detection --- .../core/src/components/resize-sensor/resizeSensor.tsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/core/src/components/resize-sensor/resizeSensor.tsx b/packages/core/src/components/resize-sensor/resizeSensor.tsx index b63d8d753b..bf7bdd0072 100644 --- a/packages/core/src/components/resize-sensor/resizeSensor.tsx +++ b/packages/core/src/components/resize-sensor/resizeSensor.tsx @@ -90,7 +90,12 @@ export class ResizeSensor extends AbstractPureComponent { } public componentDidMount() { - this.observer = new ResizeObserver(entries => this.props.onResize?.(entries)); + // ResizeObserver is available in all modern browsers supported by Blueprint but not in server-side rendering + // and some test environments like jsdom, so we to do a feature check here. + this.observer = + globalThis.ResizeObserver != null + ? new ResizeObserver(entries => this.props.onResize?.(entries)) + : undefined; this.observeElement(); }