Skip to content

Commit 14e8615

Browse files
committed
added tooltip to code block examples
1 parent 55b15e3 commit 14e8615

File tree

2 files changed

+42
-4
lines changed

2 files changed

+42
-4
lines changed

packages/react-core/src/components/CodeBlock/examples/CodeBlockBasic.tsx

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,19 @@
11
import React from 'react';
2-
import { CodeBlock, CodeBlockAction, CodeBlockCode, ClipboardCopyButton, Button } from '@patternfly/react-core';
2+
import {
3+
CodeBlock,
4+
CodeBlockAction,
5+
CodeBlockCode,
6+
ClipboardCopyButton,
7+
Button,
8+
Tooltip
9+
} from '@patternfly/react-core';
310
import PlayIcon from '@patternfly/react-icons/dist/esm/icons/play-icon';
411

512
export const BasicCodeBlock: React.FunctionComponent = () => {
613
const [copied, setCopied] = React.useState(false);
14+
const [isRunning, setisRunning] = React.useState(false);
15+
const runText: string = 'Run in web terminal';
16+
const doneRunText: string = 'Running in web terminal';
717

818
const clipboardCopyFunc = (event, text) => {
919
navigator.clipboard.writeText(text.toString());
@@ -39,7 +49,19 @@ url: https://raw.githubusercontent.com/Azure-Samples/helm-charts/master/docs`;
3949
</ClipboardCopyButton>
4050
</CodeBlockAction>
4151
<CodeBlockAction>
42-
<Button variant="plain" aria-label="Play icon" icon={<PlayIcon />} />
52+
<Tooltip
53+
aria="none"
54+
aria-live="polite"
55+
content={isRunning ? doneRunText : runText}
56+
onTooltipHidden={() => setisRunning(false)}
57+
>
58+
<Button
59+
variant="plain"
60+
aria-label="Run in web terminal"
61+
icon={<PlayIcon />}
62+
onClick={() => setisRunning(!isRunning)}
63+
/>
64+
</Tooltip>
4365
</CodeBlockAction>
4466
</React.Fragment>
4567
);

packages/react-core/src/components/CodeBlock/examples/CodeBlockExpandable.tsx

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,17 @@ import {
66
ClipboardCopyButton,
77
ExpandableSection,
88
ExpandableSectionToggle,
9-
Button
9+
Button,
10+
Tooltip
1011
} from '@patternfly/react-core';
1112
import PlayIcon from '@patternfly/react-icons/dist/esm/icons/play-icon';
1213

1314
export const ExpandableCodeBlock: React.FunctionComponent = () => {
1415
const [isExpanded, setIsExpanded] = React.useState(false);
1516
const [copied, setCopied] = React.useState(false);
17+
const [isRunning, setisRunning] = React.useState(false);
18+
const runText: string = 'Run in web terminal';
19+
const doneRunText: string = 'Running in web terminal';
1620

1721
const onToggle = (isExpanded) => {
1822
setIsExpanded(isExpanded);
@@ -60,7 +64,19 @@ url: https://raw.githubusercontent.com/Azure-Samples/helm-charts/master/docs`;
6064
</ClipboardCopyButton>
6165
</CodeBlockAction>
6266
<CodeBlockAction>
63-
<Button variant="plain" aria-label="Play icon" icon={<PlayIcon />} />
67+
<Tooltip
68+
aria="none"
69+
aria-live="polite"
70+
content={isRunning ? doneRunText : runText}
71+
onTooltipHidden={() => setisRunning(false)}
72+
>
73+
<Button
74+
variant="plain"
75+
aria-label="Run in web terminal"
76+
icon={<PlayIcon />}
77+
onClick={() => setisRunning(!isRunning)}
78+
/>
79+
</Tooltip>
6480
</CodeBlockAction>
6581
</React.Fragment>
6682
);

0 commit comments

Comments
 (0)