Skip to content

Commit 40ab351

Browse files
authored
fix: fixing the tooltip styles (#534)
* fix: removing the css file in favour of createGlobalStyle * fix: fixing the linting
1 parent bb2fac7 commit 40ab351

File tree

5 files changed

+80
-121
lines changed

5 files changed

+80
-121
lines changed

jest.config.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@ module.exports = {
22
roots: ['<rootDir>/src'],
33
transform: {
44
'^.+\\.tsx?$': 'ts-jest',
5-
'^.+\\.svg$': '<rootDir>/svgTransform.js',
6-
'.+\\.(css|styl|less|sass|scss)$': 'jest-css-modules-transform'
5+
'^.+\\.svg$': '<rootDir>/svgTransform.js'
76
},
87
testRegex: '(test|spec)\\.tsx?$',
98
moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'svg'],

package-lock.json

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

package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,6 @@
132132
"husky": "^4.2.3",
133133
"jest": "^26.6.3",
134134
"jest-axe": "^3.4.0",
135-
"jest-css-modules-transform": "^4.4.2",
136135
"jest-date-mock": "^1.0.8",
137136
"jest-styled-components": "^7.0.2",
138137
"jscodeshift": "^0.15.0",
Lines changed: 79 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import React from 'react';
2+
import { createGlobalStyle } from 'styled-components';
3+
24
import { OverlayArrow, Tooltip as AriaTooltip, TooltipTrigger, Focusable } from 'react-aria-components';
35

46
import type { TooltipProps as AriaTooltipProps, TooltipTriggerComponentProps } from 'react-aria-components';
57

6-
import './tooltip.css';
7-
88
interface TooltipProps {
99
children: any;
1010
content: string;
@@ -14,6 +14,67 @@ interface TooltipProps {
1414
triggerProps?: Omit<TooltipTriggerComponentProps, 'children'>;
1515
}
1616

17+
const TooltipStyles = createGlobalStyle`
18+
.react-aria-Tooltip {
19+
box-shadow: 0 8px 20px rgba(0 0 0 / 0.1);
20+
border-radius: 4px;
21+
background: var(--wave-exp-color-inverse-surface);
22+
color: var(--wave-exp-color-inverse-on-surface);
23+
forced-color-adjust: none;
24+
outline: none;
25+
padding: 2px 8px;
26+
max-width: 150px;
27+
28+
/* fixes FF gap */
29+
transform: translate3d(0, 0, 0);
30+
transition: transform 200ms, opacity 200ms;
31+
32+
& .react-aria-OverlayArrow svg {
33+
display: block;
34+
fill: var(--wave-exp-color-inverse-surface);
35+
}
36+
37+
&[data-entering],
38+
&[data-exiting] {
39+
transform: var(--origin);
40+
opacity: 0;
41+
}
42+
43+
&[data-placement='top'] {
44+
margin-bottom: 8px;
45+
46+
--origin: translateY(4px);
47+
}
48+
49+
&[data-placement='bottom'] {
50+
margin-top: 8px;
51+
52+
--origin: translateY(-4px);
53+
& .react-aria-OverlayArrow svg {
54+
transform: rotate(180deg);
55+
}
56+
}
57+
58+
&[data-placement='right'] {
59+
margin-left: 8px;
60+
61+
--origin: translateX(-4px);
62+
& .react-aria-OverlayArrow svg {
63+
transform: rotate(90deg);
64+
}
65+
}
66+
67+
&[data-placement='left'] {
68+
margin-right: 8px;
69+
70+
--origin: translateX(4px);
71+
& .react-aria-OverlayArrow svg {
72+
transform: rotate(-90deg);
73+
}
74+
}
75+
}
76+
`;
77+
1778
const Tooltip = ({
1879
children,
1980
content,
@@ -22,19 +83,22 @@ const Tooltip = ({
2283
hideArrow = false,
2384
customTrigger = false
2485
}: TooltipProps) => (
25-
<TooltipTrigger {...triggerProps}>
26-
{customTrigger ? <Focusable>{children}</Focusable> : children}
27-
<AriaTooltip {...tooltipProps}>
28-
{!hideArrow && (
29-
<OverlayArrow>
30-
<svg width={8} height={8} viewBox="0 0 8 8">
31-
<path d="M0 0 L4 4 L8 0" />
32-
</svg>
33-
</OverlayArrow>
34-
)}
35-
{content}
36-
</AriaTooltip>
37-
</TooltipTrigger>
86+
<>
87+
<TooltipStyles />
88+
<TooltipTrigger {...triggerProps}>
89+
{customTrigger ? <Focusable>{children}</Focusable> : children}
90+
<AriaTooltip {...tooltipProps}>
91+
{!hideArrow && (
92+
<OverlayArrow>
93+
<svg width={8} height={8} viewBox="0 0 8 8">
94+
<path d="M0 0 L4 4 L8 0" />
95+
</svg>
96+
</OverlayArrow>
97+
)}
98+
{content}
99+
</AriaTooltip>
100+
</TooltipTrigger>
101+
</>
38102
);
39103

40104
export { Tooltip, TooltipProps };

src/components/experimental/Tooltip/tooltip.css

Lines changed: 0 additions & 53 deletions
This file was deleted.

0 commit comments

Comments
 (0)