Skip to content

Commit fd1a531

Browse files
committed
Update docs/examples
1 parent b003454 commit fd1a531

8 files changed

Lines changed: 60 additions & 13 deletions

File tree

.prettierignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,6 @@
33
/generated
44
/public
55

6+
src/routes/examples/*.html
7+
68
integrations/next/.next

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@
9595
"react-docgen-typescript": "^2.4.0",
9696
"react-dom": "^19.2.3",
9797
"react-error-boundary": "^6.0.0",
98-
"react-lib-tools": "^0.0.34",
98+
"react-lib-tools": "0.0.35",
9999
"react-router-dom": "^7.6.3",
100100
"rimraf": "^6.1.2",
101101
"rollup-plugin-terser": "^7.0.2",

pnpm-lock.yaml

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"html": "<div><span class=\"tok-punctuation\">&#60;</span><span class=\"tok-typeName\">div</span><span class=\"\"> </span><span class=\"tok-propertyName\">data-group</span><span class=\"\"> </span><span class=\"tok-propertyName\">style</span><span class=\"tok-operator\">=</span><span class=\"tok-string\">\"</span><span class=\"tok-propertyName\">overflow</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-atom\">visible</span><span class=\"tok-string\">\"</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"> </span><span class=\"tok-punctuation\">&#60;</span><span class=\"tok-typeName\">div</span><span class=\"\"> </span><span class=\"tok-propertyName\">data-panel</span><span class=\"\"> </span><span class=\"tok-propertyName\">style</span><span class=\"tok-operator\">=</span><span class=\"tok-string\">\"</span><span class=\"tok-propertyName\">overflow</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-atom\">visible</span><span class=\"tok-string\">\"</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"> </span><span class=\"tok-punctuation\">&#60;</span><span class=\"tok-typeName\">div</span><span class=\"\"> </span><span class=\"tok-propertyName\">style</span><span class=\"tok-operator\">=</span><span class=\"tok-string\">\"</span><span class=\"tok-propertyName\">overflow</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-atom\">auto</span><span class=\"tok-string\">\"</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"> </span><span class=\"tok-comment\">&#60;!-- Panel content --&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"> </span><span class=\"tok-punctuation\">&#60;/</span><span class=\"tok-typeName\">div</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"> </span><span class=\"tok-punctuation\">&#60;/</span><span class=\"tok-typeName\">div</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"></span><span class=\"tok-punctuation\">&#60;/</span><span class=\"tok-typeName\">div</span><span class=\"tok-punctuation\">&#62;</span></div>"
2+
"html": "<div><span class=\"tok-comment\">&#60;!-- &#9883;️ Group --&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"></span><span class=\"tok-punctuation\">&#60;</span><span class=\"tok-typeName\">div</span><span class=\"\"> </span><span class=\"tok-propertyName\">data-group</span><span class=\"\"> </span><span class=\"tok-propertyName\">style</span><span class=\"tok-operator\">=</span><span class=\"tok-string\">\"</span><span class=\"tok-propertyName\">overflow</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-atom\">visible</span><span class=\"tok-string\">\"</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div>&nbsp;</div>\n<div><span class=\"\"> </span><span class=\"tok-comment\">&#60;!-- &#9883;️ Panel --&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"> </span><span class=\"tok-punctuation\">&#60;</span><span class=\"tok-typeName\">div</span><span class=\"\"> </span><span class=\"tok-propertyName\">data-panel</span><span class=\"\"> </span><span class=\"tok-propertyName\">style</span><span class=\"tok-operator\">=</span><span class=\"tok-string\">\"</span><span class=\"tok-propertyName\">overflow</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-atom\">visible</span><span class=\"tok-string\">\"</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"> </span><span class=\"tok-punctuation\">&#60;</span><span class=\"tok-typeName\">div</span><span class=\"\"> </span><span class=\"tok-propertyName\">style</span><span class=\"tok-operator\">=</span><span class=\"tok-string\">\"</span><span class=\"tok-propertyName\">overflow</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-atom\">auto</span><span class=\"tok-string\">\"</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div>&nbsp;</div>\n<div><span class=\"\"> </span><span class=\"tok-comment\">&#60;!-- The stuff you render goes here --&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"> </span><span class=\"tok-punctuation\">&#60;/</span><span class=\"tok-typeName\">div</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"> </span><span class=\"tok-punctuation\">&#60;/</span><span class=\"tok-typeName\">div</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"></span><span class=\"tok-punctuation\">&#60;/</span><span class=\"tok-typeName\">div</span><span class=\"tok-punctuation\">&#62;</span></div>"
33
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"html": "<div><span class=\"tok-punctuation\">&#60;</span><span class=\"tok-typeName\">Panel</span><span class=\"\"> </span><span class=\"tok-propertyName\">className</span><span class=\"tok-operator\">=</span><span class=\"tok-string\">\"overflow-visible!\"</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"> </span><span class=\"tok-punctuation\">&#60;</span><span class=\"tok-typeName\">Tooltip</span><span class=\"\"> </span><span class=\"tok-propertyName\">content</span><span class=\"tok-operator\">=</span><span class=\"tok-string\">\"This is the left panel\"</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"> left</span></div>\n<div><span class=\"\"> </span><span class=\"tok-punctuation\">&#60;/</span><span class=\"tok-typeName\">Tooltip</span><span class=\"tok-punctuation\">&#62;</span><span class=\"\"></span></div>\n<div><span class=\"\"></span><span class=\"tok-punctuation\">&#60;/</span><span class=\"tok-typeName\">Panel</span><span class=\"tok-punctuation\">&#62;</span></div>"
3+
}

src/routes/OverflowRoute.tsx

Lines changed: 32 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,13 @@ import {
44
Code,
55
ExternalLink,
66
Header,
7-
Input
7+
Input,
8+
Tooltip
89
} from "react-lib-tools";
910
import { html as DropShadowHTML } from "../../public/generated/examples/DropShadow.json";
1011
import { html as FocusOutlineHTML } from "../../public/generated/examples/FocusOutline.json";
1112
import { html as GroupAndPanelElementsHTML } from "../../public/generated/examples/GroupAndPanelElements.json";
13+
import { html as TooltipHTML } from "../../public/generated/examples/Tooltip.json";
1214
import { Group } from "../components/styled-panels/Group";
1315
import { Panel } from "../components/styled-panels/Panel";
1416

@@ -19,16 +21,17 @@ export default function OverflowRoute() {
1921
<Box direction="column" gap={4}>
2022
<Header section="Examples" title="Overflow" />
2123
<div>
22-
Groups and panels use the{" "}
24+
Groups and Panels set the{" "}
2325
<ExternalLink href="https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/overflow">
2426
overflow
2527
</ExternalLink>{" "}
26-
styles shown below.
28+
styles shown below:
2729
</div>
2830
<Code html={GroupAndPanelElementsHTML} />
2931
<div>
30-
This combination of styles allows overflow content to be scrolled while
31-
also supporting visual styles like shadows.
32+
This combination of styles allows overflow content to be scrollable
33+
while also allowing Panels to have visual styles like shadows or
34+
outlines.
3235
</div>
3336
<div>
3437
For example, this group of panels demonstrate drop-shadow style.
@@ -80,6 +83,30 @@ export default function OverflowRoute() {
8083
The panel sets a higher z-index on <code>focus-within</code> to avoid
8184
clipping issues.
8285
</Callout>
86+
<div>
87+
Styles that affect the outer panel element (e.g. shadows, outlines) work
88+
without any customizations. Things like tooltips or popovers that are
89+
rendered <em>inside</em> of the panel will be clipped by the{" "}
90+
<code>overflow:auto</code> style. Because of this it's recommended to
91+
use{" "}
92+
<ExternalLink href="https://react.dev/reference/react-dom/createPortal">
93+
portals
94+
</ExternalLink>{" "}
95+
for these. However you can override the default style as shown below.
96+
</div>
97+
<Code html={TooltipHTML} />
98+
<Group>
99+
<Panel className="overflow-visible!" minSize={100}>
100+
<Tooltip content="This is the left panel" positions={["top"]}>
101+
left
102+
</Tooltip>
103+
</Panel>
104+
<Panel className="overflow-visible!" minSize={100}>
105+
<Tooltip content="This is the right panel" positions={["top"]}>
106+
right
107+
</Tooltip>
108+
</Panel>
109+
</Group>
83110
</Box>
84111
);
85112
}
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
1+
<!-- ⚛️ Group -->
12
<div data-group style="overflow: visible">
3+
4+
<!-- ⚛️ Panel -->
25
<div data-panel style="overflow: visible">
36
<div style="overflow: auto">
4-
<!-- Panel content -->
7+
8+
<!-- The stuff you render goes here -->
59
</div>
610
</div>
711
</div>

src/routes/examples/Tooltip.tsx

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import { Tooltip } from "react-lib-tools";
2+
import { Panel } from "react-resizable-panels";
3+
4+
// <begin>
5+
6+
/* prettier-ignore */
7+
<Panel className="overflow-visible!">
8+
<Tooltip content="This is the left panel">
9+
left
10+
</Tooltip>
11+
</Panel>

0 commit comments

Comments
 (0)