From a4880597a85f5df3bc3cae3cb23a031de2fc3278 Mon Sep 17 00:00:00 2001 From: James Arment Date: Fri, 16 Jun 2023 14:13:16 -0700 Subject: [PATCH 1/3] Wraps component destructor in a trycatch --- src/components/createElementComponent.tsx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/components/createElementComponent.tsx b/src/components/createElementComponent.tsx index 9eea776..31762ca 100644 --- a/src/components/createElementComponent.tsx +++ b/src/components/createElementComponent.tsx @@ -173,9 +173,16 @@ const createElementComponent = ( React.useLayoutEffect(() => { return () => { - if (elementRef.current) { - elementRef.current.destroy(); - elementRef.current = null; + try { + if ( + elementRef.current && + typeof elementRef.current.destroy === 'function' + ) { + elementRef.current.destroy(); + elementRef.current = null; + } + } catch (error) { + console.warn('threw an error while destroying', error); } }; }, []); From fce3440c6d1f5332951da87b90614c34aae8e78b Mon Sep 17 00:00:00 2001 From: Jim Arment <104024671+jima-stripe@users.noreply.github.com> Date: Fri, 16 Jun 2023 14:42:41 -0700 Subject: [PATCH 2/3] Update src/components/createElementComponent.tsx Co-authored-by: Brian Mathews <93609068+bmathews-stripe@users.noreply.github.com> --- src/components/createElementComponent.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/createElementComponent.tsx b/src/components/createElementComponent.tsx index 31762ca..7c71aa3 100644 --- a/src/components/createElementComponent.tsx +++ b/src/components/createElementComponent.tsx @@ -182,7 +182,7 @@ const createElementComponent = ( elementRef.current = null; } } catch (error) { - console.warn('threw an error while destroying', error); + // Do nothing } }; }, []); From d60389012f6f562a4574349a284cbcd39da66410 Mon Sep 17 00:00:00 2001 From: Jim Arment <104024671+jima-stripe@users.noreply.github.com> Date: Fri, 16 Jun 2023 14:59:23 -0700 Subject: [PATCH 3/3] Update src/components/createElementComponent.tsx Co-authored-by: fruchtose-stripe <122935036+fruchtose-stripe@users.noreply.github.com> --- src/components/createElementComponent.tsx | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/components/createElementComponent.tsx b/src/components/createElementComponent.tsx index 7c71aa3..12035c5 100644 --- a/src/components/createElementComponent.tsx +++ b/src/components/createElementComponent.tsx @@ -173,16 +173,16 @@ const createElementComponent = ( React.useLayoutEffect(() => { return () => { - try { - if ( - elementRef.current && - typeof elementRef.current.destroy === 'function' - ) { + if ( + elementRef.current && + typeof elementRef.current.destroy === 'function' + ) { + try { elementRef.current.destroy(); elementRef.current = null; + } catch (error) { + // Do nothing } - } catch (error) { - // Do nothing } }; }, []);