-
{'S: '}
- {seriesNumber}
+
+
+ {imageSrc ? (
+

+ ) : (
+
{imageAltText}
+ )}
-
-
{numInstances}
+
+
+ {'S: '}
+ {seriesNumber}
+
+
+ {numInstances}
+
+
{description}
-
{description}
);
};
diff --git a/platform/ui/src/components/ThumbnailNoImage/ThumbnailNoImage.jsx b/platform/ui/src/components/ThumbnailNoImage/ThumbnailNoImage.jsx
index 892d371a7..2ea1546a3 100644
--- a/platform/ui/src/components/ThumbnailNoImage/ThumbnailNoImage.jsx
+++ b/platform/ui/src/components/ThumbnailNoImage/ThumbnailNoImage.jsx
@@ -1,9 +1,10 @@
-import React from 'react';
+import React, { useRef } from 'react';
import classnames from 'classnames';
import PropTypes from 'prop-types';
import { useDrag } from 'react-dnd';
import { Icon } from '@ohif/ui';
+import blurHandlerListener from '../../utils/blurHandlerListener';
const ThumbnailNoImage = ({
description,
@@ -20,9 +21,12 @@ const ThumbnailNoImage = ({
},
});
+ const thumbnailElement = useRef(null);
+
return (
blurHandlerListener(thumbnailElement)}
className={classnames(
'flex flex-row flex-1 px-4 py-3 cursor-pointer outline-none border-transparent hover:border-blue-300 focus:border-blue-300 rounded',
isActive ? 'border-2 border-primary-light' : 'border'
@@ -31,16 +35,18 @@ const ThumbnailNoImage = ({
role="button"
tabIndex="0"
>
-
-
-
-
- {modality}
+
+
+
+
+
+ {modality}
+
+
{seriesDate}
+
+
+ {description}
-
{seriesDate}
-
-
- {description}
diff --git a/platform/ui/src/utils/blurHandlerListener.js b/platform/ui/src/utils/blurHandlerListener.js
new file mode 100644
index 000000000..4ffba68c6
--- /dev/null
+++ b/platform/ui/src/utils/blurHandlerListener.js
@@ -0,0 +1,10 @@
+export default element => {
+ const handleClickOutside = event => {
+ if (element.current && !element.current.contains(event.target)) {
+ element.current.blur();
+ document.removeEventListener('mousedown', handleClickOutside);
+ }
+ };
+
+ document.addEventListener('mousedown', handleClickOutside);
+};