diff --git a/packages/module/patternfly-docs/content/extensions/chatbot/examples/Messages/Messages.md b/packages/module/patternfly-docs/content/extensions/chatbot/examples/Messages/Messages.md index 981464fdf..493aefd92 100644 --- a/packages/module/patternfly-docs/content/extensions/chatbot/examples/Messages/Messages.md +++ b/packages/module/patternfly-docs/content/extensions/chatbot/examples/Messages/Messages.md @@ -30,6 +30,7 @@ propComponents: sortValue: 3 --- +import { ArrowRightIcon, CheckCircleIcon } from '@patternfly/react-icons'; import Message from '@patternfly/chatbot/dist/dynamic/Message'; import MessageDivider from '@patternfly/chatbot/dist/dynamic/MessageDivider'; import { rehypeCodeBlockToggle } from '@patternfly/chatbot/dist/esm/Message/Plugins/rehypeCodeBlockToggle'; diff --git a/packages/module/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessageWithExtraContent.tsx b/packages/module/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessageWithExtraContent.tsx index db5acf761..7a50ef03b 100644 --- a/packages/module/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessageWithExtraContent.tsx +++ b/packages/module/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessageWithExtraContent.tsx @@ -1,8 +1,36 @@ -import { Fragment, FunctionComponent } from 'react'; - +import { Fragment, FunctionComponent, useState } from 'react'; import Message from '@patternfly/chatbot/dist/dynamic/Message'; import userAvatar from './user_avatar.svg'; -import { Alert, Badge, Button, Card, CardBody, CardFooter, CardTitle } from '@patternfly/react-core'; +import { + Accordion, + AccordionContent, + AccordionItem, + AccordionToggle, + Alert, + Badge, + Button, + Card, + CardBody, + CardFooter, + CodeBlock, + DescriptionList, + DescriptionListDescription, + DescriptionListGroup, + DescriptionListTerm, + HelperText, + HelperTextItem, + Progress, + ProgressMeasureLocation, + Flex, + FlexItem, + CardTitle, + CardHeader, + CardExpandableContent, + Spinner, + CodeBlockCode +} from '@patternfly/react-core'; +import { ArrowRightIcon, CheckCircleIcon } from '@patternfly/react-icons'; +import React from 'react'; const UserActionEndContent = () => { // eslint-disable-next-line no-console @@ -17,14 +45,6 @@ const UserActionEndContent = () => { ); }; -const CardInformationAfterMainContent = () => ( - - This is content card after main content - Body - Footer - -); - const BeforeMainContent = () => (
@@ -36,6 +56,224 @@ const BeforeMainContent = () => (
); +const CardInformationAfterMainContent = () => ( + + This is content card after main content + Body + Footer + +); + +const LiveProgressSummaryCard = () => { + const [isCardExpanded, setIsCardExpanded] = useState(false); + const [isAccordionExpanded, setIsAccordionExpanded] = useState('deploying-toggle'); + + const onExpandCard = (_event: React.MouseEvent) => { + setIsCardExpanded(!isCardExpanded); + }; + + const onExpandAccordion = (id: string) => { + if (id === isAccordionExpanded) { + setIsAccordionExpanded(''); + } else { + setIsAccordionExpanded(id); + } + }; + + const renderCodeBlock = (initialWord: string) => ( + + + {`${initialWord} openshift-apiserver operator... +${initialWord} openshift-sdn operator... +${initialWord} openshift-ingress operator...`} + + + ); + + return ( + // eslint-disable-next-line no-console + + + + + + OpenShift cluster installation + + + + + + Deploying cluster operators + + + + + About 23 minutes left + + + + } + /> + + + + + + +
+ + + { + onExpandAccordion('installing-toggle'); + }} + id="installing-toggle" + > + + + + + Installing cluster bootstrap + + + + {renderCodeBlock('Installing')} + + + + { + onExpandAccordion('setup-toggle'); + }} + id="setup-toggle" + > + + + + + Control plane setup + + + + {renderCodeBlock('Setting up')} + + + + { + onExpandAccordion('deploying-toggle'); + }} + id="deploying-toggle" + > + + + + + Deploying cluster operators + + + + {renderCodeBlock('Deploying')} + + + + { + onExpandAccordion('finalizing-toggle'); + }} + id="finalizing-toggle" + disabled + > + + {/* Empty space to maintain consistent alignment */} + Finalizing installation + + + + {renderCodeBlock('Finalizing')} + + + +
+
+ + + +
+ ); +}; + export const UserMessageWithExtraContent: FunctionComponent = () => ( <> ( endContent: }} /> + + }} + /> );