Skip to content
This repository was archived by the owner on Nov 25, 2021. It is now read-only.

Commit 08bdfc3

Browse files
committed
feat: HoverOverlay accepts children
1 parent 6e746cf commit 08bdfc3

File tree

1 file changed

+20
-20
lines changed

1 file changed

+20
-20
lines changed

src/HoverOverlay.tsx

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,9 @@ export interface HoverOverlayProps<C = {}> {
5050
/** A ref callback to get the root overlay element. Use this to calculate the position. */
5151
hoverRef?: React.Ref<HTMLDivElement>
5252

53+
/** The content of the hover overlay. */
54+
children?: React.ReactNode | React.ReactNode[]
55+
5356
/**
5457
* The hovered token (position and word).
5558
* Used for the Find References buttons and for error messages
@@ -83,6 +86,7 @@ export const HoverOverlay: <C>(props: HoverOverlayProps<C>) => React.ReactElemen
8386
definitionURLOrError,
8487
hoverOrError,
8588
hoverRef,
89+
children,
8690
linkComponent,
8791
onCloseButtonClick,
8892
onGoToDefinitionClick,
@@ -116,26 +120,22 @@ export const HoverOverlay: <C>(props: HoverOverlayProps<C>) => React.ReactElemen
116120
<CloseIcon className="icon-inline" />
117121
</button>
118122
)}
119-
120-
{hoverOrError && (
121-
<div className="hover-overlay__contents">
122-
{hoverOrError === LOADING ? (
123-
<div className="hover-overlay__row hover-overlay__loader-row">
124-
<LoadingSpinner className="icon-inline" />
125-
</div>
126-
) : isErrorLike(hoverOrError) ? (
127-
<div className="hover-overlay__row hover-overlay__hover-error alert alert-danger">
128-
<h4>
129-
<AlertCircleOutlineIcon className="icon-inline" /> Error fetching hover from language
130-
server:
131-
</h4>
132-
{upperFirst(hoverOrError.message)}
133-
</div>
134-
) : null // hover content
135-
}
136-
</div>
137-
)}
138-
123+
<div className="hover-overlay__contents">
124+
{hoverOrError === LOADING ? (
125+
<div className="hover-overlay__row hover-overlay__loader-row">
126+
<LoadingSpinner className="icon-inline" />
127+
</div>
128+
) : isErrorLike(hoverOrError) ? (
129+
<div className="hover-overlay__row hover-overlay__hover-error alert alert-danger">
130+
<h4>
131+
<AlertCircleOutlineIcon className="icon-inline" /> Error fetching hover from language server:
132+
</h4>
133+
{upperFirst(hoverOrError.message)}
134+
</div>
135+
) : (
136+
children
137+
)}
138+
</div>
139139
<div className="hover-overlay__actions hover-overlay__row">
140140
<ButtonOrLink
141141
linkComponent={linkComponent}

0 commit comments

Comments
 (0)