+
with:
{text || 'line breaks'}
diff --git a/apps/web/src/components/ui/report/elements/CursorOverlay.tsx b/apps/web/src/components/ui/report/elements/CursorOverlay.tsx
index 76528695b..2f833d59a 100644
--- a/apps/web/src/components/ui/report/elements/CursorOverlay.tsx
+++ b/apps/web/src/components/ui/report/elements/CursorOverlay.tsx
@@ -46,7 +46,7 @@ function Cursor({
key={i}
className={cn(
'pointer-events-none absolute z-10',
- id === 'selection' && 'bg-brand/25',
+ id === 'selection' && 'bg-brand/15',
id === 'selection' && isCursor && 'bg-primary'
)}
style={{
diff --git a/apps/web/src/components/ui/report/elements/Toolbar.tsx b/apps/web/src/components/ui/report/elements/Toolbar.tsx
index 04f99f287..02774714c 100644
--- a/apps/web/src/components/ui/report/elements/Toolbar.tsx
+++ b/apps/web/src/components/ui/report/elements/Toolbar.tsx
@@ -13,20 +13,23 @@ import {
DropdownMenuSeparator
} from '@/components/ui/dropdown-menu';
import { Separator } from '@/components/ui/separator';
-import { Tooltip, TooltipTrigger } from '@/components/ui/tooltip';
+import { TooltipBase, TooltipTrigger } from '@/components/ui/tooltip';
import { cn } from '@/lib/utils';
-export function Toolbar({
- className,
- ...props
-}: React.ComponentProps
) {
+export const Toolbar = React.forwardRef<
+ HTMLDivElement,
+ React.ComponentProps
+>(function Toolbar({ className, ...props }, ref) {
return (
);
-}
+});
+
+Toolbar.displayName = 'Toolbar';
export function ToolbarToggleGroup({
className,
@@ -266,40 +269,45 @@ export function ToolbarGroup({ children, className }: React.ComponentProps<'div'
type TooltipProps = {
tooltip?: React.ReactNode;
tooltipContentProps?: Omit, 'children'>;
- tooltipProps?: Omit, 'children'>;
+ tooltipProps?: Omit, 'children'>;
tooltipTriggerProps?: React.ComponentPropsWithoutRef;
} & React.ComponentProps;
function withTooltip(Component: T) {
- return function ExtendComponent({
- tooltip,
- tooltipContentProps,
- tooltipProps,
- tooltipTriggerProps,
- ...props
- }: TooltipProps) {
- const [mounted, setMounted] = React.useState(false);
+ const ExtendComponent = React.forwardRef>(
+ ({ tooltip, tooltipContentProps, tooltipProps, tooltipTriggerProps, ...props }, ref) => {
+ const [mounted, setMounted] = React.useState(false);
- React.useEffect(() => {
- setMounted(true);
- }, []);
+ React.useEffect(() => {
+ setMounted(true);
+ }, []);
- const component = )} />;
+ const componentProps = {
+ ...props,
+ ref
+ };
- if (tooltip && mounted) {
- return (
-
-
- {component}
-
+ const component = React.createElement(Component, componentProps);
- {tooltip}
-
- );
+ if (tooltip && mounted) {
+ return (
+
+
+ {component}
+
+
+ {tooltip}
+
+ );
+ }
+
+ return component;
}
+ );
- return component;
- };
+ ExtendComponent.displayName = `withTooltip`;
+
+ return ExtendComponent;
}
function TooltipContent({