Skip to content

Commit f1b9695

Browse files
committed
Add tooltip sample
Refs: #7987
1 parent d941f90 commit f1b9695

File tree

6 files changed

+120
-6
lines changed

6 files changed

+120
-6
lines changed

packages/components/src/components/input-line.scss

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,6 @@
99
position: relative;
1010
}
1111

12-
.kol-tooltip-wc .tooltip-floating {
13-
position: absolute;
14-
}
15-
1612
.kol-input .input-slot {
1713
flex-grow: 1;
1814
overflow: hidden;

packages/components/src/components/tooltip/style.scss

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
animation-name: fadeInOpacity;
1212
animation-timing-function: ease-in;
1313
display: none;
14-
position: fixed;
14+
position: absolute;
1515
visibility: hidden;
1616
/* Avoid layout interference - see https://floating-ui.com/docs/computePosition */
1717
top: 0;
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
import type { FC } from 'react';
2+
import React from 'react';
3+
import { KolInputText, KolPopoverButton, KolHeading } from '@public-ui/react';
4+
import { SampleDescription } from '../SampleDescription';
5+
import { FormWrap } from '../FormWrap';
6+
7+
const InputTextVariants = <></>;
8+
export const ToolbarBasic: FC = () => {
9+
return (
10+
<>
11+
<SampleDescription>
12+
<p>
13+
This example shows how tooltips in KolPopoverButton and KolInputText behave inside different container contexts using container queries. It compares
14+
three setups: a standard container layout, a media-specific layout, and a layout with potential shifts caused by container-query behavior.
15+
</p>
16+
</SampleDescription>
17+
<FormWrap RefComponent={InputTextVariants} />
18+
19+
<KolHeading _label="Default layout container using standard grid." _level={2} />
20+
<div className="container-example-bottom">
21+
<div className="front-block" />
22+
<div className="container-container">
23+
<div className="container-grid">
24+
<KolInputText _label="container-text" _hideLabel />
25+
<KolPopoverButton _label="icon-only with tooltip" _icons="codicon codicon-info" _tooltipAlign="right" _hideLabel>
26+
This is an explanation shown on click.
27+
</KolPopoverButton>{' '}
28+
</div>
29+
</div>
30+
</div>
31+
32+
<KolHeading _label="Media-specific layout using different container styles." _level={2} />
33+
<div className="media-container">
34+
<div className="media-grid">
35+
<KolInputText _label="media-text" _hideLabel />
36+
<KolPopoverButton _label="icon-only with tooltip" _icons="codicon codicon-info" _tooltipAlign="right" _hideLabel>
37+
This is an explanation shown on click.
38+
</KolPopoverButton>
39+
</div>
40+
</div>
41+
42+
<KolHeading _label=" Layout with container queries and potential layout shifts." _level={2} />
43+
<div className="container-example-bottom">
44+
<div className="front-block" />
45+
<div className="container-container-bottom">
46+
<div className="container-grid">
47+
<KolInputText _label="container-text-bottom" _hideLabel />
48+
<KolPopoverButton _label="icon-only with tooltip" _icons="codicon codicon-info" _tooltipAlign="right" _hideLabel>
49+
This is an explanation shown on click.
50+
</KolPopoverButton>
51+
</div>
52+
</div>
53+
</div>
54+
</>
55+
);
56+
};
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import { Routes } from '../../shares/types';
2+
import { ToolbarBasic } from './basic';
3+
4+
export const TOOLTIP_ROUTES: Routes = {
5+
tooltip: {
6+
basic: ToolbarBasic,
7+
},
8+
};

packages/samples/react/src/shares/routes.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ import { TABS_ROUTES } from '../components/tabs/routes';
4949
import { TEXTAREA_ROUTES } from '../components/textarea/routes';
5050
import { TOAST_ROUTES } from '../components/toast/routes';
5151
import { TOOLBAR_ROUTES } from '../components/toolbar/routes';
52+
import { TOOLTIP_ROUTES } from '../components/tooltip/routes';
5253
import { TREE_ROUTES } from '../components/tree/routes';
5354
import { VERSION_ROUTES } from '../components/version/routes';
5455

@@ -103,6 +104,7 @@ export const ROUTES: Routes = {
103104
...TEXTAREA_ROUTES,
104105
...TOAST_ROUTES,
105106
...TOOLBAR_ROUTES,
107+
...TOOLTIP_ROUTES,
106108
...TREE_ROUTES,
107109
...VERSION_ROUTES,
108110
...SCENARIO_ROUTES,

packages/samples/react/src/style.scss

Lines changed: 53 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,58 @@ hr {
5252
width: rem(400);
5353
}
5454

55+
.media-container {
56+
padding: rem(16);
57+
width: 100%;
58+
height: rem(240);
59+
align-content: center;
60+
}
61+
62+
.media-grid {
63+
display: grid;
64+
grid-template-columns: 1fr 1fr;
65+
gap: rem(16);
66+
}
67+
68+
@media (max-width: 600px) {
69+
.media-grid {
70+
grid-template-columns: 1fr;
71+
}
72+
}
73+
74+
.container-container-bottom,
75+
.container-container {
76+
width: 80%;
77+
height: rem(240);
78+
padding: rem(16);
79+
align-content: center;
80+
container: test / size;
81+
}
82+
83+
.container-grid {
84+
display: grid;
85+
grid-template-columns: 1fr 1fr;
86+
gap: rem(16);
87+
}
88+
89+
90+
@container test (max-width: 600px) {
91+
.container-grid {
92+
grid-template-columns: 1fr;
93+
}
94+
}
95+
96+
.container-example-bottom {
97+
display: flex;
98+
width: 100%;
99+
}
100+
101+
.front-block {
102+
height: rem(272);
103+
width: rem(240);
104+
}
105+
106+
55107
@media (min-width: 1024px) {
56108
.app-container {
57109
display: grid;
@@ -89,4 +141,4 @@ hr {
89141
.no-print * {
90142
display: none !important;
91143
}
92-
}
144+
}

0 commit comments

Comments
 (0)