forked from patternfly/patternfly-react
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathExpandableTextDemo.tsx
More file actions
24 lines (20 loc) · 1.46 KB
/
ExpandableTextDemo.tsx
File metadata and controls
24 lines (20 loc) · 1.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import { useState } from 'react';
import { ExpandableSection, ExpandableSectionVariant, Truncate } from '@patternfly/react-core';
export const ExpandableTextDemo: React.FunctionComponent = () => {
const [isExpanded, setIsExpanded] = useState(false);
const onToggle = (_event: React.MouseEvent, isExpanded: boolean) => {
setIsExpanded(isExpanded);
};
const content = `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque nec dignissim turpis, et tristique purus. Phasellus efficitur ante quis dolor viverra imperdiet. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Pellentesque laoreet, sem ac elementum semper, lectus mauris vestibulum nulla, eget volutpat massa neque vel turpis. Donec finibus enim eu leo accumsan consectetur. Praesent massa diam, tincidunt eu dui ac, ullamcorper elementum est. Phasellus metus felis, venenatis vitae semper nec, porta a metus. Vestibulum justo nisi, imperdiet id eleifend at, varius nec lorem. Fusce porttitor mollis nibh, ut elementum ante commodo tincidunt. Integer tincidunt at ipsum non aliquet.`;
return (
<ExpandableSection
variant={ExpandableSectionVariant.truncate}
toggleText={isExpanded ? 'Show less truncated content' : 'Show more truncated content'}
onToggle={onToggle}
isExpanded={isExpanded}
truncateMaxLines={-1}
>
{isExpanded ? content : <Truncate content={content} style={{ maxWidth: '10ch' }} />}
</ExpandableSection>
);
};