Skip to content

Commit ca095e7

Browse files
authored
Merge pull request #406 from TykTechnologies/TUI-97/css-transitions-workaround
TUI-97: workaround for making CSSTransition used by the Collapsible and Modal components work with react 19
2 parents c48a05c + 9604e34 commit ca095e7

4 files changed

Lines changed: 14 additions & 5 deletions

File tree

package-lock.json

Lines changed: 5 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@tyk-technologies/tyk-ui",
3-
"version": "4.4.19",
3+
"version": "4.4.20",
44
"description": "Tyk UI - ui reusable components",
55
"main": "src/index.js",
66
"scripts": {

src/components/Collapsible/index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ function Collapsible({
6262
in={!collapsed}
6363
timeout={0}
6464
classNames="collapse"
65+
nodeRef={collapseWrapper}
6566
>
6667
<div
6768
className="collapse-wrapper"

src/components/Modal/index.js

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import React from 'react';
1+
import React, { useRef } from 'react';
22
import ReactDOM from 'react-dom';
33
import PropTypes from 'prop-types';
44
import { CSSTransition } from 'react-transition-group';
@@ -25,6 +25,8 @@ function Modal({
2525
showBackdrop = true,
2626
...restProps
2727
}) {
28+
const modalRef = useRef();
29+
const backdropRef = useRef();
2830
const theme = ['success', 'warning', 'danger', 'info'].includes(themeProp) ? themeProp : 'default';
2931
const modalClasses = [
3032
'tyk-modal',
@@ -52,8 +54,9 @@ function Modal({
5254
in={opened}
5355
timeout={100}
5456
classNames="appear"
57+
nodeRef={modalRef}
5558
>
56-
<div className={modalClasses} {...restProps}>
59+
<div className={modalClasses} {...restProps} ref={modalRef}>
5760
<div className={`tyk-modal__dialog tyk-modal--${size}`}>
5861
<div className="tyk-modal__content">
5962
{themeIcon && (
@@ -75,8 +78,10 @@ function Modal({
7578
in={opened}
7679
timeout={100}
7780
classNames="fade"
81+
nodeRef={backdropRef}
7882
>
7983
<button
84+
ref={backdropRef}
8085
className={backdropClasses}
8186
onClick={() => !disableCloseCommands && onClose?.()}
8287
onKeyDown={() => {}}

0 commit comments

Comments
 (0)