{"version":3,"file":"Chat.stories.jsx","sourceRoot":"","sources":["../../../src/social/Chat/Chat.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState, useRef, useEffect, useCallback, useMemo } from 'react';\nimport type { SyntheticEvent } from 'react';\nimport { action } from '@storybook/addon-actions';\nimport type { Meta, StoryFn } from '@storybook/react';\n\nimport {\n  Button,\n  Icon,\n  registerIcon,\n  Text,\n  MenuButton,\n  Flex,\n  Popover,\n  Link,\n  createUID,\n  useOuterEvent,\n  Select,\n  Option,\n  useElement,\n  useModalManager,\n  useModalContext,\n  Modal,\n  SummaryItem,\n  useToaster,\n  SearchInput,\n  menuHelpers,\n  VisuallyHiddenText,\n  Menu,\n  useEscape,\n  usePrevious,\n  Lightbox,\n  getKindFromMimeType,\n  getMimeTypeFromFile\n} from '@pega/cosmos-react-core';\nimport type {\n  BannerProps,\n  MenuItemProps,\n  FieldValueListItemProps,\n  OmitStrict,\n  FileItemProps,\n  LightboxItem\n} from '@pega/cosmos-react-core';\nimport * as arrowMicroDownIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/arrow-micro-down.icon';\nimport * as replyIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/reply.icon';\nimport * as replyAllIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/reply-all.icon';\nimport * as forwardIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/forward.icon';\nimport {\n  Chat,\n  ChatHeader,\n  ChatComposer,\n  Message,\n  NewMessageSeparatorId,\n  SuggestedReplyPicker,\n  SystemMessage,\n  TypeIndicator,\n  isReplyErrorState,\n  isReplyLoadingState\n} from '@pega/cosmos-react-social';\nimport type {\n  ChatHeaderProps,\n  MessageProps,\n  AttachmentItemProps,\n  ChatComposerImperativeHandleProps,\n  SuggestedReply,\n  SystemMessageProps,\n  ChatComposerProps,\n  SuggestedReplyPickerProps,\n  ChatBodyProps,\n  ChatBodyHandleValue,\n  MessageHeaderProps\n} from '@pega/cosmos-react-social';\n\nimport { mockData } from '../../core/Lightbox/Lightbox.mocks';\n\nimport {\n  ChatMockData,\n  phrasesDisplayNames,\n  phrasesMessages,\n  contextItems as contextItemsMock,\n  BotConversation,\n  ClaimsAgentConversation,\n  LiveChatConversation\n} from './Chat.mocks';\n\nregisterIcon(forwardIcon, replyIcon, replyAllIcon, arrowMicroDownIcon);\n\nexport default {\n  title: 'Social/Chat',\n  component: Chat\n} as Meta;\n\n/** *********************** ChatHeader component - START *********************** */\nexport interface ChatHeaderDemoProps\n  extends OmitStrict<ChatHeaderProps, 'actions' | 'sentiment' | 'context'> {\n  contextHeading?: string;\n}\n\nexport const ChatHeaderDemo: StoryFn<ChatHeaderDemoProps> = (args: ChatHeaderDemoProps) => {\n  const [contextItems, setContextItems] = useState<FieldValueListItemProps[]>([]);\n  const [loading, setLoading] = useState(false);\n\n  return (\n    <ChatHeader\n      title={args.title}\n      icon={args.icon || 'chat'}\n      actions={[\n        { id: 'action-1', primary: 'Transfer' },\n        { id: 'action-2', primary: 'End chat' }\n      ]}\n      sentiment={{\n        variant: 'positive',\n        'aria-label': 'Sentiment is positive'\n      }}\n      customer={args.customer}\n      authenticated={args.authenticated}\n      context={{\n        heading: args.contextHeading,\n        items: contextItems,\n        onClick: () => {\n          setLoading(true);\n          setTimeout(() => {\n            setContextItems(contextItemsMock);\n            setLoading(false);\n          }, 1000);\n        },\n        loading\n      }}\n    />\n  );\n};\n\nChatHeaderDemo.args = {\n  title: 'Live chat',\n  icon: 'chat',\n  customer: 'Ginger Ventura',\n  authenticated: true,\n  contextHeading: 'Context data'\n};\n\nChatHeaderDemo.argTypes = {\n  title: { control: { type: 'text' } },\n  icon: { control: { type: 'text' }, type: { name: 'string', required: false } },\n  customer: { control: { type: 'text' } },\n  authenticated: { control: { type: 'boolean' }, type: { name: 'string', required: false } },\n  contextHeading: { control: { type: 'text' }, type: { name: 'string', required: false } }\n};\n/** ***************************** ChatHeader component - END ******************* */\n\n/** ***************************** Message component - START ********************** */\n\nexport interface MessageDemoProps extends OmitStrict<MessageProps, 'senderId' | 'messageHeader'> {\n  showTimestamp?: boolean;\n  showStatus?: boolean;\n  showHeader?: boolean;\n  headerContent?: MessageHeaderProps['content'];\n  headerMeta?: MessageHeaderProps['meta'];\n  showAvatarImage?: boolean;\n  showAttachments?: boolean;\n  showMediaPageLinks?: boolean;\n}\n\nexport const MessageDemo: StoryFn<MessageDemoProps> = (args: MessageDemoProps) => {\n  const actions: AttachmentItemProps['actions'] = [\n    {\n      text: 'Associate with case',\n      id: 'Associate with case',\n      onClick: () => {\n        action('Associate with case');\n      }\n    },\n    {\n      text: 'Download',\n      id: 'Download',\n      onClick: () => {\n        action('Download');\n      }\n    }\n  ];\n\n  const attachments = [\n    {\n      id: '2499167340',\n      name: 'Location',\n      icon: 'document',\n      meta: 'PNG 0.1 MB',\n      thumbnail:\n        'https://pegasystems.github.io/uplus-wss/health_provider/img/secondary-options.jpg',\n      actions\n    },\n    {\n      id: '2499167341',\n      name: 'FAQ with detailed terms and conditions of the policy',\n      icon: 'document-pdf',\n      meta: 'PDF 0.7 MB',\n      actions\n    }\n  ];\n  const mediaPageLinks = [\n    {\n      id: '2499167349',\n      href: 'https://collaborate.pega.com/',\n      title: 'Ask the expert'\n    }\n  ];\n\n  return (\n    <Message\n      attachments={args.showAttachments ? attachments : undefined}\n      mediaPageLinks={args.showMediaPageLinks ? mediaPageLinks : undefined}\n      avatarInfo={\n        args.direction === 'in' && args.senderType !== 'bot'\n          ? {\n              name: 'John Brown',\n              imageSrc: args.showAvatarImage\n                ? 'https://pegasystems.github.io/uplus-wss/insurance/img/option-1.jpg'\n                : undefined\n            }\n          : undefined\n      }\n      timestamp={args.showTimestamp ? args.timestamp : undefined}\n      status={args.showStatus ? args.status : undefined}\n      message={args.message}\n      direction={args.direction}\n      senderType={args.senderType}\n      senderId={createUID()}\n      agentVariant={args.agentVariant}\n      messageHeader={\n        args.showHeader ? { content: args.headerContent, meta: args.headerMeta } : undefined\n      }\n    />\n  );\n};\n\nMessageDemo.args = {\n  direction: 'in',\n  senderType: 'customer',\n  agentVariant: 0,\n  message: 'Hi, Welcome to u-plus. How can I help you?',\n  showStatus: true,\n  status: 'delivered',\n  showTimestamp: true,\n  timestamp: '1:44 PM',\n  showHeader: false,\n  headerContent: 'Public Reply',\n  headerMeta: 'I-12345',\n  showAvatarImage: false,\n  showAttachments: false,\n  showMediaPageLinks: false\n};\n\nMessageDemo.argTypes = {\n  direction: { options: ['in', 'out'], control: { type: 'inline-radio' } },\n  senderType: { options: ['agent', 'customer', 'bot'], control: { type: 'inline-radio' } },\n  agentVariant: { type: 'number' },\n  message: { type: 'string' },\n  showTimestamp: { type: 'boolean' },\n  timestamp: { control: 'text' },\n  showStatus: { type: 'boolean' },\n  status: {\n    options: ['delivered', 'opened', 'undeliverable', 'sent'],\n    control: { type: 'inline-radio' }\n  },\n  showHeader: { control: 'boolean' },\n  headerContent: { control: 'text' },\n  headerMeta: { control: 'text' },\n  showAvatarImage: { control: 'boolean' },\n  showAttachments: { control: 'boolean' },\n  showMediaPageLinks: { control: 'boolean' }\n};\n/** ***************************** Message component - END *********************** */\n\n/** **************************** SystemMessage component - START ***************** */\nexport const SystemMessageDemo: StoryFn<SystemMessageProps> = (args: SystemMessageProps) => (\n  <SystemMessage message={args.message} timestamp={args.timestamp} variant={args.variant} />\n);\n\nSystemMessageDemo.args = {\n  message: 'John Brown has joined',\n  variant: 'secondary',\n  timestamp: '10:00 AM'\n};\n\nSystemMessageDemo.argTypes = {\n  message: { control: { type: 'text' } },\n  variant: { options: ['primary', 'secondary'], control: { type: 'select' } },\n  timestamp: { control: { type: 'text' } }\n};\n/** ***************************** SystemMessage component - END ******************** */\n\n/** ***************************** TypeIndicator component - START ****************** */\ninterface TypeIndicatorDemoProps {\n  message?: string;\n}\nexport const TypeIndicatorDemo: StoryFn<TypeIndicatorDemoProps> = (\n  args: TypeIndicatorDemoProps\n) => {\n  return (\n    <TypeIndicator\n      avatarInfo={{ name: 'John Brown' }}\n      message={args.message}\n      senderId='johnBrown'\n      senderType='agent'\n    />\n  );\n};\n\nTypeIndicatorDemo.args = {\n  message: ''\n};\n\nTypeIndicatorDemo.argTypes = {\n  message: { control: { type: 'text' } }\n};\n/** *************************** TypeIndicator component - END *********************** */\n\n/** *************************** SuggestedReplyPicker component - START ****************** */\ninterface SuggestedReplyPickerDemoProps {\n  showNotification?: boolean;\n  singleSuggestedReply?: boolean;\n  noSuggestedReplies?: boolean;\n  disableButton?: boolean;\n}\n\nexport const SuggestedReplyPickerDemo: StoryFn<SuggestedReplyPickerDemoProps> = (\n  args: SuggestedReplyPickerDemoProps\n) => {\n  const [suggestedRepliesCollapsed, setSuggestedRepliesCollapsed] = useState<boolean>(false);\n  const [currentReplyId, setCurrentReplyId] = useState(\n    ChatMockData?.suggestedReplies?.[0]?.id || ''\n  );\n  const renderReplies = args.singleSuggestedReply\n    ? [ChatMockData.suggestedReplies[0]]\n    : ChatMockData.suggestedReplies;\n  return (\n    <SuggestedReplyPicker\n      replies={args.noSuggestedReplies ? [] : renderReplies}\n      onSelect={suggestedReply => {\n        if (!isReplyErrorState(suggestedReply) && !isReplyLoadingState(suggestedReply))\n          action(`Suggested reply picked ${suggestedReply.message}`)();\n      }}\n      collapsed={suggestedRepliesCollapsed}\n      onExpandCollapse={() => {\n        setSuggestedRepliesCollapsed(prev => !prev);\n      }}\n      currentReplyId={currentReplyId}\n      onReplyChange={setCurrentReplyId}\n      showNotification={args.showNotification}\n      onSend={() => action('Send suggested reply')}\n      disabled={args.disableButton}\n    />\n  );\n};\nSuggestedReplyPickerDemo.args = {\n  showNotification: false,\n  singleSuggestedReply: false,\n  noSuggestedReplies: false,\n  disableButton: false\n};\n\nSuggestedReplyPickerDemo.argTypes = {\n  showNotification: { type: 'boolean' },\n  singleSuggestedReply: { type: 'boolean' },\n  noSuggestedReplies: { type: 'boolean' },\n  disableButton: { type: 'boolean' }\n};\n\n/** *************************** SuggestedReplyPicker component - END ****************** */\n\n/** ******************************* ChatComposer component - START ************************ */\ninterface ChatComposerDemoProps {\n  maxAttachments?: number;\n  showSuggestReplyButton?: boolean;\n  showJoinConversationButton?: boolean;\n}\n\nexport const ChatComposerDemo: StoryFn<ChatComposerDemoProps> = (args: ChatComposerDemoProps) => {\n  const attachments: ChatComposerProps['attachments'] = mockData.slice(0, 4).map(item => {\n    return {\n      id: item.id,\n      name: item.name,\n      format: item.format,\n      onDelete: () => {},\n      onPreview: () => {}\n    };\n  });\n  const onJoinConversationClick = {\n    onClick: () => {\n      action('on click of join conversation');\n    }\n  };\n  return (\n    <ChatComposer\n      maxAttachments={args.maxAttachments}\n      attachments={attachments}\n      maxLength={256}\n      placeholder='Type here to send message'\n      onSend={() => {}}\n      onSuggestReplyClick={\n        args.showSuggestReplyButton ? action('Suggest reply clicked') : undefined\n      }\n      joinConversation={args.showJoinConversationButton ? onJoinConversationClick : undefined}\n    >\n      <MenuButton text='Phrases' menu={{ items: [] }} />\n      <MenuButton text='Page Push' menu={{ items: [] }} />\n    </ChatComposer>\n  );\n};\n\nChatComposerDemo.args = {\n  maxAttachments: 2,\n  showSuggestReplyButton: false,\n  showJoinConversationButton: false\n};\n\nChatComposerDemo.argTypes = {\n  maxAttachments: { control: { type: 'number' } },\n  showSuggestReplyButton: { control: { type: 'boolean' } },\n  showJoinConversationButton: { control: { type: 'boolean' } }\n};\n/** *********************************** ChatComposer component - END ********************** */\n\n/** *********************************** Standard Chat component - START ******************** */\ninterface StandardChatProps {\n  maxAttachments?: number;\n  chatWidth?: string;\n  chatHeight?: string;\n  selectedChannel?: string;\n  showChatBanner?: boolean;\n  disableChat?: boolean;\n  simulateConversation?: boolean;\n  message?: string;\n  placeholder?: string;\n  defaultMessage?: string;\n  maxLength?: number;\n  loading?: boolean;\n  typingIndicator?: boolean;\n  showAttachments?: boolean;\n  genAIErrorState?: string;\n  enableJoinConversationButton?: boolean;\n  renderMarkdownContent?: boolean;\n}\n\nexport const StandardChat: StoryFn<StandardChatProps> = (args: StandardChatProps) => {\n  const ChatMockDataClone: any = useMemo(() => {\n    return JSON.parse(JSON.stringify(ChatMockData));\n  }, [ChatMockData]);\n\n  const Channels: {\n    label: string;\n    options: any;\n  } = {\n    label: 'Channel',\n    options: {\n      LiveChat: {\n        title: 'Live chat',\n        icon: 'chat'\n      },\n      Twitter: {\n        title: 'Twitter chat',\n        icon: 'twitter'\n      },\n      Facebook: {\n        title: 'Facebook messenger',\n        icon: 'facebook'\n      }\n    }\n  };\n\n  const {\n    chatMessages: mockChatMessagesJson,\n    suggestedReplies\n  }: {\n    participants: any;\n    chatMessages: any[];\n    suggestedReplies: SuggestedReply[];\n  } = ChatMockDataClone;\n\n  const { create } = useModalManager();\n\n  const MyModal = () => {\n    const { dismiss } = useModalContext();\n    const { push } = useToaster();\n\n    return (\n      <Modal\n        heading='Associate with case'\n        actions={\n          <>\n            <Button\n              onClick={() => {\n                dismiss();\n                push({ content: 'Cancelled' });\n              }}\n            >\n              Cancel\n            </Button>\n            <Button\n              variant='primary'\n              onClick={() => {\n                dismiss();\n                push({ content: 'Successfully Submitted!!' });\n              }}\n            >\n              Submit\n            </Button>\n          </>\n        }\n        center\n      >\n        <Flex container={{ gap: 2, direction: 'column' }}>\n          <SummaryItem\n            primary={<Text variant='secondary'>Security policy</Text>}\n            secondary={<Text variant='secondary'>PNG - 6.1MB</Text>}\n            visual={<Icon name='document-doc' />}\n          />\n          <Select label='Select a service case' style={{ width: '15rem' }}>\n            <Option value=''>Select…</Option>\n            <Option value='Make payment' selected>\n              Make payment\n            </Option>\n            <Option value='Facilities'>Facilities</Option>\n          </Select>\n        </Flex>\n      </Modal>\n    );\n  };\n\n  const onAssociateWithCase = () => {\n    create(MyModal);\n  };\n\n  const actions: AttachmentItemProps['actions'] = [\n    {\n      text: 'Associate with case',\n      id: 'Associate with case',\n      onClick: () => {\n        action('Associate with case');\n        onAssociateWithCase();\n      }\n    },\n    {\n      text: 'Download',\n      id: 'Download',\n      onClick: () => {\n        action('Download');\n      }\n    }\n  ];\n\n  const mockChatMessages = useMemo(() => {\n    return [\n      ...mockChatMessagesJson.map(message => {\n        const { messagePrivacy, ...restMessageData } = message;\n        if (messagePrivacy) {\n          restMessageData.messageHeader = {\n            content: <span>{messagePrivacy}</span>,\n            meta: <Link href='/'>I-12345</Link>\n          };\n        }\n        if (restMessageData.attachments) {\n          restMessageData.attachments = restMessageData.attachments.map(\n            (item: AttachmentItemProps) => {\n              return {\n                ...item,\n                actions\n              };\n            }\n          );\n        }\n        return restMessageData;\n      })\n    ];\n  }, []);\n\n  const conversationRef = useRef<ChatBodyHandleValue>(null);\n  const timers = useRef<number[]>([]);\n\n  useEffect(() => {\n    return () => {\n      timers.current.forEach(clearTimeout);\n    };\n  }, []);\n\n  const [open, setOpen] = useState(false);\n  const [lightBoxItems, setLightBoxItems] = useState(mockData.slice(0, 4));\n  const [lightBoxMessageItems, setLightBoxMessageItems] = useState<LightboxItem[]>([]);\n  const [composerAttachment, setComposerAttachment] = useState<FileItemProps[]>([]);\n  const messageLightBoxOpen = useRef(false);\n\n  const [unreadMessageCount, setUnreadMessageCount] = useState(0);\n  const [chatMessages, setChatMessages] = useState<any[]>(\n    LiveChatConversation.map(message => {\n      if (message.type === 'message' && message.attachments) {\n        message.attachments = message.attachments.map((item: AttachmentItemProps) => {\n          return {\n            ...item,\n            actions\n          };\n        });\n      }\n      return message;\n    })\n  );\n  const [contextItems, setContextItems] = useState<FieldValueListItemProps[]>([]);\n  const [contextLoading, setContextLoading] = useState(false);\n  const [suggestedRepliesCollapsed, setSuggestedRepliesCollapsed] = useState<boolean>(false);\n  const [disableSuggestReply, setDisableSuggestReply] = useState(false);\n\n  const onDeleteAttachment = useCallback(\n    (id: string) => {\n      setComposerAttachment(prevAttachments => prevAttachments.filter(item => item.id !== id));\n      setLightBoxItems(prevItem => prevItem.filter(item => item.id !== id));\n    },\n    [setComposerAttachment]\n  );\n\n  useEffect(() => {\n    return setComposerAttachment(\n      mockData.slice(0, 4).map(item => {\n        return {\n          id: item.id,\n          name: item.name,\n          format: item.format,\n          onDelete: onDeleteAttachment,\n          onPreview: () => {\n            setOpen(true);\n          }\n        };\n      })\n    );\n  }, []);\n\n  const prevState = usePrevious(chatMessages);\n\n  useEffect(() => {\n    if (\n      chatMessages &&\n      prevState &&\n      chatMessages.filter(({ senderType }) => senderType === 'customer').length >\n        prevState.filter(({ senderType }) => senderType === 'customer').length\n    )\n      setDisableSuggestReply(false);\n  }, [chatMessages]);\n\n  useEffect(() => {\n    setDisableSuggestReply(false);\n  }, [args.genAIErrorState]);\n\n  const appendMessage = (message: any) => {\n    const incrementUnreadMessageCount = conversationRef.current?.isScrolledToLatest();\n    setChatMessages(prevChatMessages => {\n      const newMockMessage: any = {\n        ...message,\n        attachments: message.composerAttachment?.map((item: FileItemProps) => {\n          return {\n            id: item.id,\n            name: item.name,\n            onPreview: () => {\n              messageLightBoxOpen.current = true;\n              setLightBoxMessageItems(\n                message.composerAttachment?.map((item1: FileItemProps) => {\n                  const correspondingItem = mockData.find(item2 => item1.id.includes(item2.id));\n                  return {\n                    ...correspondingItem,\n                    name: item1.name\n                  };\n                })\n              );\n              setOpen(true);\n            },\n            meta: `${getKindFromMimeType(getMimeTypeFromFile(item.format!) ?? '').toUpperCase()} 0.5 MB`,\n            thumbnail:\n              getKindFromMimeType(getMimeTypeFromFile(item.format!) ?? '') === 'image'\n                ? 'https://images.unsplash.com/photo-1497752531616-c3afd9760a11?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=2100&q=80'\n                : undefined,\n            actions: [\n              {\n                id: 'item-1',\n                text: 'Associate with case'\n              },\n              {\n                id: 'item-2',\n                text: 'Download'\n              }\n            ]\n          };\n        })\n      };\n      newMockMessage.id = `m-${message.id ? message.id : prevChatMessages.length}`;\n      if (\n        !incrementUnreadMessageCount &&\n        prevChatMessages.filter(({ id }) => id === NewMessageSeparatorId).length === 0\n      ) {\n        return [\n          ...prevChatMessages,\n          {\n            id: NewMessageSeparatorId,\n            type: 'system',\n            message: 'New messages',\n            variant: 'primary'\n          },\n          newMockMessage\n        ];\n      }\n      return [...prevChatMessages, newMockMessage];\n    });\n    if (!incrementUnreadMessageCount) {\n      setUnreadMessageCount(prevCount => prevCount + 1);\n    }\n    setComposerAttachment([]);\n    setLightBoxItems([]);\n  };\n\n  useEffect(() => {\n    if (args.simulateConversation) {\n      const timeOutId = setTimeout(() => {\n        if (mockChatMessages.length) {\n          appendMessage(mockChatMessages.shift());\n        }\n      }, 1500);\n      return () => {\n        clearTimeout(timeOutId);\n      };\n    }\n  }, [chatMessages, args.simulateConversation]);\n\n  const chatBanner: BannerProps = {\n    messages: ['This is a public interaction and any responses will be public and visible'],\n    variant: 'warning'\n  };\n\n  const bodyProps: ChatBodyProps = {\n    unreadMessageCount,\n    handle: conversationRef,\n    transcripts: [\n      { id: createUID(), messages: BotConversation },\n      { id: createUID(), messages: ClaimsAgentConversation }\n    ],\n    liveChat:\n      !args.simulateConversation && args.typingIndicator\n        ? [\n            ...chatMessages,\n            {\n              id: 'typingMessage',\n              type: 'typing',\n              avatarInfo: {\n                name: 'Ginger Ventura'\n              },\n              message: args.message,\n              senderId: 'gingerVentura',\n              senderType: 'customer'\n            }\n          ]\n        : chatMessages,\n    onScrollToButtonClick: () => {\n      const timeOutId: number = window.setTimeout(() => {\n        setChatMessages(prevChatMessages =>\n          prevChatMessages.filter(({ id }) => id !== NewMessageSeparatorId)\n        );\n        timers.current = timers.current.filter(id => id !== timeOutId);\n      }, 5000);\n      timers.current.push(timeOutId);\n      setUnreadMessageCount(0);\n    },\n    loadMore: action('Load more'),\n    offset: 5,\n    loading: args.loading,\n    renderMarkdownContent: args.renderMarkdownContent\n  };\n\n  const chatComposerImperativeHandleRef = useRef<ChatComposerImperativeHandleProps>(null);\n\n  const [mountPopover, setMountPopover] = useState(false);\n  const specialKeysConfig = {\n    keys: ['//'],\n    onSpecialKey: (e: SyntheticEvent<HTMLTextAreaElement>, key: string) => {\n      action(`Event is  ${e}`)();\n      action(`Typed special key is ${key}`)();\n      if (chatComposerImperativeHandleRef.current) {\n        setMountPopover(!mountPopover);\n      }\n    }\n  };\n\n  const insertPhrasesMessage = (message: string) => {\n    if (chatComposerImperativeHandleRef.current) {\n      chatComposerImperativeHandleRef.current.appendToMessage(message, 'specialKey');\n      setMountPopover(false);\n    }\n  };\n\n  useOuterEvent(\n    'mousedown',\n    [chatComposerImperativeHandleRef?.current?.chatComposerRef?.current as Element],\n    () => {\n      setMountPopover(false);\n    }\n  );\n\n  const [search, setSearch] = useState('');\n  const [isOpen, setIsOpen] = useState(false);\n  const searchEleRef = useRef<HTMLInputElement>(null);\n  const [announcement, setAnnouncement] = useState('');\n\n  const searchRegex = useMemo(() => {\n    const escapedSearch = search.replace(/[.*+\\-?^${}()|[\\]\\\\]/g, '\\\\$&');\n    return new RegExp(escapedSearch);\n  }, [search]);\n\n  const itemsToRender = useMemo(() => {\n    return menuHelpers.mapTree(\n      search\n        ? menuHelpers.flatten(phrasesDisplayNames).filter(({ primary }: MenuItemProps) => {\n            return searchRegex.test(primary);\n          })\n        : phrasesDisplayNames,\n      item => {\n        return {\n          ...item\n        };\n      }\n    );\n  }, [search, phrasesDisplayNames, searchRegex]);\n\n  useEffect(() => {\n    if (isOpen) {\n      searchEleRef?.current?.focus();\n    }\n  }, [isOpen, searchEleRef.current]);\n\n  const menuID = createUID();\n  const menuListID = `${menuID}--list`;\n  const [buttonEl, setButtonEl] = useElement<HTMLButtonElement>(null);\n  const [popoverEl, setPopoverEl] = useElement<HTMLElement>(null);\n  const [currentReply, setCurrentReply] = useState(suggestedReplies?.[0]?.id || '');\n  const [replies, setReplies] = useState(suggestedReplies);\n  const [bargeIn, setBargeIn] = useState(true);\n\n  useOuterEvent('mousedown', [popoverEl, buttonEl], () => {\n    setIsOpen(false);\n    setSearch('');\n  });\n\n  useEscape(() => {\n    setIsOpen(false);\n  });\n  useEffect(() => {\n    setBargeIn(args.enableJoinConversationButton ?? false);\n  }, [args.enableJoinConversationButton]);\n\n  const composerChildren = (\n    <>\n      <Button\n        ref={setButtonEl}\n        onClick={() => setIsOpen(cur => !cur)}\n        variant='secondary'\n        disabled={args.disableChat}\n      >\n        <Flex container={{ alignItems: 'center', gap: 1 }}>\n          <Text>Phrases</Text>\n          <Icon name='arrow-micro-down' />\n        </Flex>\n      </Button>\n\n      <Popover show={isOpen} ref={setPopoverEl} target={buttonEl}>\n        <Menu\n          id={menuID}\n          listId={menuListID}\n          mode='action'\n          variant='flyout'\n          items={itemsToRender}\n          role='listbox'\n          onItemClick={id => {\n            insertPhrasesMessage(phrasesMessages.filter(message => message.id === id)[0].message);\n            setAnnouncement('Phrase inserted');\n            setIsOpen(false);\n            setSearch('');\n          }}\n          accent={search ? searchRegex : undefined}\n          focusControlEl={searchEleRef.current || undefined}\n          footer={\n            <SearchInput\n              ref={searchEleRef}\n              onSearchChange={setSearch}\n              value={search}\n              role='searchbox'\n              searchInputAriaLabel='Start typing to search.'\n            />\n          }\n        />\n      </Popover>\n    </>\n  );\n\n  const composerProps: ChatComposerProps = {\n    ref: chatComposerImperativeHandleRef,\n    maxAttachments: args.maxAttachments,\n    attachments: args.showAttachments ? composerAttachment : [],\n    specialKeysConfig,\n    showEmoji: true,\n    disabled: args.disableChat,\n    disableSuggestReply: args.enableJoinConversationButton || disableSuggestReply,\n    onAddAttachment: () => {\n      setComposerAttachment([\n        ...composerAttachment,\n        {\n          id: `doc ${composerAttachment.length}`,\n          name: `${composerAttachment.length} statement.docx`,\n          format: 'docx',\n          onDelete: onDeleteAttachment,\n          onPreview: () => {\n            setOpen(true);\n          }\n        }\n      ]);\n      setLightBoxItems([\n        ...lightBoxItems,\n        {\n          id: `doc ${composerAttachment.length}`,\n          name: `${composerAttachment.length} statement.docx`,\n          format: 'docx',\n          description: 'Descriptive text about Pega document',\n          src: null\n        }\n      ]);\n    },\n    maxLength: args.maxLength,\n    placeholder: args.placeholder,\n    defaultMessage: args.defaultMessage,\n    onSend: (message: string) => {\n      action(`onAppendMessage: ${message}`)();\n      appendMessage({\n        senderType: 'agent',\n        direction: 'out',\n        avatarInfo: {\n          name: 'Edward Green'\n        },\n        type: 'message',\n        message,\n        composerAttachment,\n        timeStamp: '2:08'\n      });\n    },\n    onSuggestReplyClick: () => {\n      const newReplyId = 'genAI';\n      setDisableSuggestReply(true);\n      setSuggestedRepliesCollapsed(false);\n      setCurrentReply(newReplyId);\n      setReplies(prev => {\n        return [\n          {\n            id: newReplyId,\n            loading: true,\n            type: 'genAIReply'\n          },\n          ...prev.filter(reply => reply.type !== 'genAIReply')\n        ];\n      });\n      setTimeout(() => {\n        if (args.genAIErrorState === 'No suggestions') {\n          setReplies(prev => {\n            return [\n              {\n                id: newReplyId,\n                message: 'No suggestions',\n                errorType: 'noSuggestions',\n                type: 'genAIReply'\n              },\n              ...prev.filter(reply => reply.type !== 'genAIReply')\n            ];\n          });\n        } else if (args.genAIErrorState === 'Error') {\n          setReplies(prev => {\n            return [\n              {\n                id: newReplyId,\n                message: 'Failed to retrieve the data',\n                errorType: 'error',\n                type: 'genAIReply'\n              },\n              ...prev.filter(reply => reply.type !== 'genAIReply')\n            ];\n          });\n          setDisableSuggestReply(false);\n        } else {\n          setReplies(prev => {\n            return [\n              {\n                id: newReplyId,\n                message: 'Happy to help. Is there anything else I can help with?',\n                confidence: 75,\n                type: 'genAIReply'\n              },\n              ...prev.filter(reply => reply.type !== 'genAIReply')\n            ];\n          });\n        }\n      }, 1000);\n    },\n    children: composerChildren,\n    joinConversation: bargeIn\n      ? {\n          onClick: () => {\n            setBargeIn(false);\n          },\n          disabled: false\n        }\n      : undefined\n  };\n\n  const suggestedReplyPickerProps: SuggestedReplyPickerProps = {\n    replies,\n    onSelect: (suggestedReply: SuggestedReply) => {\n      if (!isReplyErrorState(suggestedReply) && !isReplyLoadingState(suggestedReply))\n        chatComposerImperativeHandleRef.current?.appendToMessage(suggestedReply.message, 'cursor');\n    },\n    collapsed: suggestedRepliesCollapsed,\n    onExpandCollapse: () => {\n      setSuggestedRepliesCollapsed(prev => !prev);\n    },\n    showNotification: true,\n    currentReplyId: currentReply,\n    onReplyChange: id => {\n      setCurrentReply(id);\n    },\n    onSend: (message: string) => {\n      action(`onAppendMessage: ${message}`)();\n      appendMessage({\n        senderType: 'agent',\n        direction: 'out',\n        avatarInfo: {\n          name: 'Edward Green'\n        },\n        type: 'message',\n        message,\n        timeStamp: '2:08'\n      });\n    }\n  };\n\n  return (\n    <Flex\n      container={{\n        justify: 'center'\n      }}\n      style={{\n        height: args.chatHeight || 'calc(100vh)',\n        width: args.chatWidth || '30rem',\n        margin: 'auto'\n      }}\n    >\n      <VisuallyHiddenText aria-live='assertive'>{announcement}</VisuallyHiddenText>\n      <Chat\n        header={{\n          title: Channels.options[args.selectedChannel || 'LiveChat'].title,\n          icon: Channels.options[args.selectedChannel || 'LiveChat'].icon,\n          customer: 'Ginger Ventura',\n          authenticated: true,\n          sentiment: { variant: 'positive' },\n          context: {\n            items: contextItems,\n            onClick: () => {\n              setContextLoading(true);\n              setTimeout(() => {\n                setContextItems(contextItemsMock);\n                setContextLoading(false);\n              }, 1000);\n            },\n            loading: contextLoading\n          },\n          actions: [\n            { id: 'action-1', primary: 'Transfer' },\n            { id: 'action-2', primary: 'End chat' }\n          ]\n        }}\n        banner={args.showChatBanner ? chatBanner : undefined}\n        body={bodyProps}\n        suggestedReplyPicker={\n          args.enableJoinConversationButton ? undefined : suggestedReplyPickerProps\n        }\n        composer={composerProps}\n      />\n      {open && (\n        <Lightbox\n          items={messageLightBoxOpen.current ? lightBoxMessageItems : lightBoxItems}\n          cycle\n          onAfterClose={() => {\n            setOpen(false);\n            messageLightBoxOpen.current = false;\n          }}\n          onItemDownload={() => {}}\n        />\n      )}\n    </Flex>\n  );\n};\n\nStandardChat.args = {\n  maxAttachments: 2,\n  selectedChannel: 'LiveChat',\n  showChatBanner: true,\n  disableChat: false,\n  simulateConversation: false,\n  typingIndicator: false,\n  message: '',\n  placeholder: 'Enter message',\n  defaultMessage:\n    'Greetings! Hope you are having a great time, Please reach out to us for any help, Thanks!',\n  maxLength: 280,\n  loading: false,\n  showAttachments: true,\n  genAIErrorState: 'No error',\n  enableJoinConversationButton: true,\n  renderMarkdownContent: false\n};\n\nStandardChat.argTypes = {\n  maxAttachments: { control: { type: 'number' } },\n  showAttachments: { control: { type: 'boolean' } },\n  selectedChannel: { options: ['LiveChat', 'Twitter', 'Facebook'], control: { type: 'select' } },\n  showChatBanner: { control: { type: 'boolean' } },\n  disableChat: { control: { type: 'boolean' } },\n  simulateConversation: { control: { type: 'boolean' } },\n  typingIndicator: { control: { type: 'boolean' } },\n  message: { control: { type: 'text' } },\n  placeholder: { control: { type: 'text' } },\n  defaultMessage: { control: { type: 'text' } },\n  maxLength: { control: { type: 'number' } },\n  loading: { control: { type: 'boolean' } },\n  genAIErrorState: {\n    options: ['No error', 'No suggestions', 'Error'],\n    control: { type: 'select' }\n  },\n  enableJoinConversationButton: { control: { type: 'boolean' } },\n  renderMarkdownContent: { control: { type: 'boolean' } }\n};\n\nStandardChat.parameters = {\n  layout: 'fullscreen'\n};\n\n/** *************************** Standard Chat component - END ************************ */\n"]}