Skip to content

Commit 640e2ff

Browse files
committed
fix: use mergeRef
1 parent a0f4ffe commit 640e2ff

File tree

2 files changed

+35
-35
lines changed

2 files changed

+35
-35
lines changed

packages/compass-crud/src/components/document-json-view-item.tsx

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { css, KeylineCard } from '@mongodb-js/compass-components';
44

55
import JSONEditor, { type JSONEditorProps } from './json-editor';
66
import { useDocumentItemContextMenu } from './use-document-item-context-menu';
7+
import { mergeRefs } from '@react-aria/utils';
78

89
const keylineCardStyles = css({
910
overflow: 'hidden',
@@ -41,31 +42,32 @@ const DocumentJsonViewItem: React.FC<DocumentJsonViewItemProps> = ({
4142
updateDocument,
4243
openInsertDocumentDialog,
4344
}) => {
44-
const ref = useDocumentItemContextMenu({
45+
const contextMenuRef = useDocumentItemContextMenu({
4546
doc,
4647
isEditable,
4748
copyToClipboard,
4849
openInsertDocumentDialog,
4950
});
5051

5152
return (
52-
<div ref={ref}>
53-
<KeylineCard className={keylineCardStyles} ref={docRef}>
54-
{scrollTriggerRef && docIndex === 0 && <div ref={scrollTriggerRef} />}
55-
<JSONEditor
56-
doc={doc}
57-
key={doc.uuid}
58-
namespace={namespace}
59-
editable={isEditable}
60-
isTimeSeries={isTimeSeries}
61-
copyToClipboard={copyToClipboard}
62-
removeDocument={removeDocument}
63-
replaceDocument={replaceDocument}
64-
updateDocument={updateDocument}
65-
openInsertDocumentDialog={openInsertDocumentDialog}
66-
/>
67-
</KeylineCard>
68-
</div>
53+
<KeylineCard
54+
className={keylineCardStyles}
55+
ref={mergeRefs(docRef, contextMenuRef)}
56+
>
57+
{scrollTriggerRef && docIndex === 0 && <div ref={scrollTriggerRef} />}
58+
<JSONEditor
59+
doc={doc}
60+
key={doc.uuid}
61+
namespace={namespace}
62+
editable={isEditable}
63+
isTimeSeries={isTimeSeries}
64+
copyToClipboard={copyToClipboard}
65+
removeDocument={removeDocument}
66+
replaceDocument={replaceDocument}
67+
updateDocument={updateDocument}
68+
openInsertDocumentDialog={openInsertDocumentDialog}
69+
/>
70+
</KeylineCard>
6971
);
7072
};
7173

packages/compass-crud/src/components/document-list-view-item.tsx

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -33,30 +33,28 @@ const DocumentListViewItem: React.FC<DocumentListViewItemProps> = ({
3333
updateDocument,
3434
openInsertDocumentDialog,
3535
}) => {
36-
const ref = useDocumentItemContextMenu({
36+
const contextMenuRef = useDocumentItemContextMenu({
3737
doc,
3838
isEditable,
3939
copyToClipboard,
4040
openInsertDocumentDialog,
4141
});
4242

4343
return (
44-
<div ref={ref}>
45-
<KeylineCard ref={docRef}>
46-
{scrollTriggerRef && docIndex === 0 && <div ref={scrollTriggerRef} />}
47-
<Document
48-
doc={doc}
49-
key={doc.uuid}
50-
editable={isEditable}
51-
isTimeSeries={isTimeSeries}
52-
copyToClipboard={copyToClipboard}
53-
removeDocument={removeDocument}
54-
replaceDocument={replaceDocument}
55-
updateDocument={updateDocument}
56-
openInsertDocumentDialog={openInsertDocumentDialog}
57-
/>
58-
</KeylineCard>
59-
</div>
44+
<KeylineCard ref={mergeRefs(docRef, contextMenuRef)}>
45+
{scrollTriggerRef && docIndex === 0 && <div ref={scrollTriggerRef} />}
46+
<Document
47+
doc={doc}
48+
key={doc.uuid}
49+
editable={isEditable}
50+
isTimeSeries={isTimeSeries}
51+
copyToClipboard={copyToClipboard}
52+
removeDocument={removeDocument}
53+
replaceDocument={replaceDocument}
54+
updateDocument={updateDocument}
55+
openInsertDocumentDialog={openInsertDocumentDialog}
56+
/>
57+
</KeylineCard>
6058
);
6159
};
6260

0 commit comments

Comments
 (0)