{"version":3,"file":"FeedPost.mocks.jsx","sourceRoot":"","sources":["../../../src/social/Feed/FeedPost.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useContext, useEffect, useMemo, useRef, useState } from 'react';\nimport type { ReactElement, ReactNode } from 'react';\nimport { action } from '@storybook/addon-actions';\n\nimport {\n  Avatar,\n  Banner,\n  createUID,\n  menuHelpers,\n  useElement,\n  useUID\n} from '@pega/cosmos-react-core';\nimport type { FileItemProps, MenuItemProps } from '@pega/cosmos-react-core';\nimport { AutopilotConfig, AutopilotGlimpse, FeedPost } from '@pega/cosmos-react-social';\nimport type {\n  CustomEditConfig,\n  DefaultEditConfig,\n  FeedPostProps,\n  RecipientInputProps\n} from '@pega/cosmos-react-social';\nimport { Glimpse } from '@pega/cosmos-react-work';\n\nimport { loadingTimeoutMS } from '../../core/Progress/Progress.mocks';\n\nimport { FeedReplyDemo } from './FeedReply.mocks';\nimport {\n  FeedDemoContext,\n  FeedPostDemoContext,\n  feedUserGlimpseDetails,\n  generateAvailableRecipients\n} from './Feed.mocks';\nimport type { FeedPostDemoProps } from './Feed.mocks';\nimport { LogActivityPost, LogActivityPostContent } from './LogActivityPostType.mocks';\nimport type { LogActivityPostContentProps, LogActivityHandle } from './LogActivityPostType.mocks';\n\nexport const FeedPostDemo = ({\n  id,\n  fullname,\n  username,\n  icon,\n  content,\n  visibility,\n  postType,\n  recipients,\n  attachments: postAttachments,\n  replies,\n  postTimestamp = new Date(2022, 0, 1),\n  userStatus,\n  likes: userLikes,\n  onDelete = () => {}\n}: FeedPostDemoProps) => {\n  const defaultReplies = Array.from(Array(12).keys(), index => {\n    return (\n      <FeedReplyDemo\n        key={`reply-story-${index + 1}`}\n        fullname={fullname}\n        username={username}\n        content={`This is reply number ${index + 1}!`}\n      />\n    );\n  });\n\n  const key = useUID();\n  const { simulateServerLatency, simulateServerError, posts, setPosts } =\n    useContext(FeedDemoContext);\n\n  const [postContent, setPostContent] = useState(content as FeedPostProps['content']);\n\n  const [likes, setLikes] = useState<MenuItemProps[]>(userLikes ?? []);\n  const [liked, setLiked] = useState(false);\n\n  const [edited, setEdited] = useState(false);\n  const [editTimestamp, setEditTimestamp] = useState(new Date());\n\n  const [numRecipientOptions, setNumRecipientOptions] = useState(10);\n  const [availableRecipients, setAvailableRecipients] = useState<\n    RecipientInputProps['availableRecipients']\n  >([]);\n  const [selectedRecipients, setSelectedRecipients] = useState<RecipientInputProps['recipients']>(\n    []\n  );\n  const [activeSearch, setActiveSearch] = useState(false);\n\n  const [glimpseContent, setGlimpseContent] = useState<ReactNode | undefined>();\n  const [glimpseTarget, setGlimpseTarget] = useElement<HTMLElement>(null);\n\n  const [extraReplies, setExtraReplies] = useState<ReactElement[]>([]);\n  const [replyInputShown, setReplyInputShown] = useState(false);\n  const [replyAttachments, setReplyAttachments] = useState<FileItemProps[]>([]);\n  const [replyLoading, setReplyLoading] = useState(false);\n  const [replyErrorMessages, setReplyErrorMessages] = useState<string[]>([]);\n  const replyTimeout = useRef(0);\n  const [replyCount, setReplyCount] = useState<number>(\n    replies ? replies.length : defaultReplies.length\n  );\n  const [repliesLoading, setRepliesLoading] = useState(false);\n  const [repliesShown, setRepliesShown] = useState(3);\n\n  const [additionalLikeAdded, setAdditionalLikeAdded] = useState(false);\n  const [allRecipientsVisible, setAllRecipientsVisible] = useState(!!recipients);\n  const [recipientsList, setRecipientsList] = useState<MenuItemProps[]>(\n    recipients ||\n      availableRecipients.slice(0, !allRecipientsVisible ? 10 : availableRecipients.length)\n  );\n\n  const [editMode, setEditMode] = useState<'default' | 'log'>();\n  const [editLoading, setEditLoading] = useState(false);\n  const [editErrorMessages, setEditErrorMessages] = useState<string[]>([]);\n  const editTimeout = useRef(0);\n  const logActivityHandle = useRef<LogActivityHandle>(null);\n\n  const updatePost = (updatedContent: string | LogActivityPostContentProps) => {\n    const oldPosts = [...posts];\n    const postIndex = oldPosts.findIndex(p => p.id === id);\n    if (postIndex > -1) {\n      const postToUpdate = { ...oldPosts[postIndex] };\n      postToUpdate.content = updatedContent;\n      oldPosts[postIndex] = postToUpdate;\n      setPosts(oldPosts);\n    }\n  };\n\n  const onShowMoreReplies = () => {\n    setRepliesLoading(true);\n    setTimeout(() => {\n      setRepliesShown(curr => {\n        if (curr + 3 <= defaultReplies.length) return curr + 3;\n        return defaultReplies.length;\n      });\n      setRepliesLoading(false);\n    }, 1000);\n  };\n\n  const onShowLessReplies = () => {\n    setRepliesLoading(true);\n    setTimeout(() => {\n      setRepliesShown(3);\n      setRepliesLoading(false);\n    }, 1000);\n  };\n\n  const onFilesAdded = (files: File[]) => {\n    const fileItems: FileItemProps[] = files.map(file => {\n      const fileItem: FileItemProps = {\n        id: createUID(),\n        name: file.name,\n        format: file.name.split('.').pop(),\n        onPreview: () => action('on preview'),\n        onDelete: () => {\n          setReplyAttachments(current => {\n            return current.filter(x => x.name !== file.name);\n          });\n        }\n      };\n\n      if (file.type.includes('image')) {\n        fileItem.thumbnail = URL.createObjectURL(file);\n      }\n      if (file.size / 1000000 > 100) {\n        fileItem.error = 'File size cannot exceed 100MB';\n      }\n      return fileItem;\n    });\n\n    setReplyAttachments(current => [...current, ...fileItems]);\n  };\n\n  const getInitialLikes = () => {\n    if (likes.length) return;\n\n    setLikes(userLikes || []);\n  };\n\n  const [likesLoading, setLikesLoading] = useState(false);\n\n  const generateNewLike = useCallback(() => {\n    if (!likesLoading) {\n      setLikesLoading(true);\n      setTimeout(() => {\n        setLikesLoading(false);\n        setLikes(oldLikes => [\n          ...oldLikes,\n          {\n            primary: 'Generated Like',\n            secondary: ['This like was loaded after the onLoadMoreLikes callback was triggered'],\n            visual: <Avatar size='m' name='Generated Like' />,\n            id: 'generatedLike'\n          }\n        ]);\n        setAdditionalLikeAdded(true);\n      }, 1000);\n    }\n  }, [likesLoading]);\n\n  const [recipientsLoading, setRecipientsLoading] = useState(false);\n\n  const getAllRecipients = () => {\n    if (!recipientsLoading) {\n      setRecipientsLoading(true);\n      setTimeout(() => {\n        setRecipientsLoading(false);\n        setRecipientsList(oldRecipients => [\n          ...oldRecipients,\n          {\n            primary: 'Additional Recipient',\n            secondary: [\n              'This recipient was loaded after the onLoadMoreRecipients callback was triggered'\n            ],\n            visual: <Avatar size='m' name='Additional Recipient' />,\n            value: 'additionalRecipient',\n            id: 'additionalRecipient'\n          }\n        ]);\n        setAllRecipientsVisible(true);\n      }, 1000);\n    }\n  };\n\n  const onUserClick: FeedPostProps['onUserClick'] = ({ username: glimpseUsername }, clickEvent) => {\n    if (clickEvent) {\n      setGlimpseTarget(clickEvent.target as HTMLElement);\n      if (glimpseUsername === 'autopilot') {\n        setGlimpseContent(\n          <AutopilotGlimpse\n            target={clickEvent.target as HTMLElement}\n            onDismiss={() => {\n              setGlimpseTarget(null);\n            }}\n            placement='right'\n          />\n        );\n      } else {\n        const userDetails = feedUserGlimpseDetails.find(x => x.username === glimpseUsername);\n        if (userDetails) {\n          setGlimpseContent(\n            <Glimpse\n              {...userDetails}\n              target={clickEvent.target as HTMLElement}\n              onDismiss={() => {\n                setGlimpseTarget(null);\n              }}\n              placement='right'\n            />\n          );\n        }\n      }\n    }\n  };\n\n  const onEdit: FeedPostProps['onEdit'] = useMemo(() => {\n    if (\n      (!postType || postType.id === 'default') &&\n      typeof postContent === 'string' &&\n      !postContent.includes('<pega-autopilot/>')\n    ) {\n      return () => setEditMode('default');\n    }\n\n    if (postType?.id === 'log') {\n      const postData = posts.find(p => p.id === id)?.content as\n        | LogActivityPostContentProps\n        | undefined;\n      if (!postData?.comments || !postData.comments.includes('<pega-autopilot/>')) {\n        return () => setEditMode('log');\n      }\n    }\n  }, [postContent, postType]);\n\n  useEffect(() => {\n    setAvailableRecipients(generateAvailableRecipients(numRecipientOptions));\n  }, [numRecipientOptions]);\n\n  useEffect(() => {\n    if (!editMode) {\n      setSelectedRecipients([]);\n    } else {\n      setSelectedRecipients(recipientsList);\n    }\n  }, [editMode]);\n\n  const recipientInput: RecipientInputProps = useMemo(\n    () => ({\n      availableRecipients,\n      recipients: selectedRecipients,\n      onAdd: itemID => {\n        const recipient = availableRecipients.find(item => item.id === itemID);\n        if (recipient) setSelectedRecipients(cur => [...cur, recipient]);\n      },\n      onRemove: itemID => {\n        setSelectedRecipients(cur => cur.filter(item => item.id !== itemID));\n      },\n      onToggle: itemID => {\n        setAvailableRecipients(cur => menuHelpers.toggleSelected(cur, itemID, 'multi-select'));\n      },\n      onSearch: search => {\n        if (search) {\n          setActiveSearch(true);\n          setAvailableRecipients(\n            menuHelpers\n              .flatten(generateAvailableRecipients(1000))\n              .filter(({ primary }: MenuItemProps) => {\n                return primary.toLowerCase().includes(search.toLowerCase());\n              })\n          );\n        } else {\n          setActiveSearch(false);\n          setAvailableRecipients(generateAvailableRecipients(numRecipientOptions));\n        }\n      },\n      onMenuOpen: () => {\n        if (!activeSearch) setNumRecipientOptions(10);\n      },\n      loadMore: () => {\n        if (numRecipientOptions < 1000 && !activeSearch) {\n          setNumRecipientOptions(prev => prev + 10);\n        }\n      }\n    }),\n    [activeSearch, availableRecipients, numRecipientOptions, selectedRecipients]\n  );\n\n  const editConfig: FeedPostProps['editConfig'] = useMemo(() => {\n    if (!editMode) return;\n\n    if (!postType || postType.id === 'default') {\n      return {\n        progress: editLoading,\n        recipientInput,\n        banners:\n          editErrorMessages.length > 0 ? (\n            <Banner variant='urgent' messages={editErrorMessages} />\n          ) : undefined,\n        onEditSubmit: ({ value, visibility: editVisibility, recipients: editRecipients }) => {\n          setEditErrorMessages([]);\n\n          if (\n            editVisibility === 'private' &&\n            (!editRecipients?.length ||\n              (editRecipients?.length === 1 && editRecipients[0].id === username))\n          ) {\n            setEditErrorMessages(['Please select at least one user, other than yourself.']);\n          } else {\n            setEditLoading(true);\n            editTimeout.current = window.setTimeout(\n              () => {\n                if (simulateServerError) {\n                  setEditErrorMessages(['This is a mock server error!']);\n                } else {\n                  setPostContent(value);\n                  setEdited(true);\n                  setEditTimestamp(new Date());\n                  setEditMode(undefined);\n                  updatePost(value);\n\n                  if (editVisibility === 'private' && !!editRecipients?.length) {\n                    setRecipientsList(editRecipients);\n                  }\n                }\n                setEditLoading(false);\n              },\n              simulateServerLatency ? loadingTimeoutMS : 0\n            );\n          }\n        },\n        onEditCancel: () => {\n          if (editLoading) {\n            clearTimeout(editTimeout.current);\n            setEditLoading(false);\n          } else {\n            setEditErrorMessages([]);\n            setEditMode(undefined);\n          }\n        }\n      } as DefaultEditConfig;\n    }\n\n    if (postType.id === 'log') {\n      const postData = posts.find(p => p.id === id)?.content as\n        | LogActivityPostContentProps\n        | undefined;\n      return {\n        editContent: <LogActivityPost handle={logActivityHandle} data={postData} />,\n        recipientInput,\n        progress: editLoading,\n        banners:\n          editErrorMessages.length > 0 ? (\n            <Banner variant='urgent' messages={editErrorMessages} />\n          ) : undefined,\n        onEditSubmit: ({ visibility: editVisibility, recipients: editRecipients }) => {\n          setEditErrorMessages([]);\n          const errors = logActivityHandle.current?.getErrors();\n\n          if (errors && errors.length > 0) {\n            setEditErrorMessages(errors);\n          } else if (\n            editVisibility === 'private' &&\n            (!editRecipients?.length ||\n              (editRecipients?.length === 1 && editRecipients[0].id === username))\n          ) {\n            setEditErrorMessages(['Please select at least one user, other than yourself.']);\n          } else {\n            setEditLoading(true);\n            const formData = logActivityHandle.current?.getFormData();\n\n            editTimeout.current = window.setTimeout(\n              () => {\n                if (!formData) {\n                  setEditErrorMessages(['This is a mock server error!']);\n                  setEditLoading(false);\n                } else {\n                  setPostContent(<LogActivityPostContent {...formData} />);\n                  logActivityHandle.current?.clearForm();\n                  setEdited(true);\n                  setEditTimestamp(new Date());\n                  setEditMode(undefined);\n                  updatePost(formData);\n\n                  if (editVisibility === 'private' && !!editRecipients?.length) {\n                    setRecipientsList(editRecipients);\n                  }\n                }\n                setEditLoading(false);\n              },\n              simulateServerLatency ? loadingTimeoutMS : 0\n            );\n          }\n        },\n        onEditCancel: () => {\n          if (editLoading) {\n            clearTimeout(editTimeout.current);\n            setEditLoading(false);\n          } else {\n            setEditErrorMessages([]);\n            logActivityHandle.current?.clearForm();\n            setEditMode(undefined);\n          }\n        }\n      } as CustomEditConfig;\n    }\n  }, [\n    posts,\n    editMode,\n    editLoading,\n    editErrorMessages,\n    postType,\n    recipientInput,\n    simulateServerLatency,\n    simulateServerError\n  ]);\n\n  return (\n    <FeedPostDemoContext.Provider\n      value={useMemo(() => ({ setReplyInputShown }), [setReplyInputShown])}\n    >\n      <FeedPost\n        id={id}\n        key={key}\n        fullname={fullname}\n        username={username}\n        icon={icon}\n        postTimestamp={postTimestamp}\n        content={postContent}\n        visibility={visibility}\n        postType={postType}\n        recipients={recipientsList}\n        recipientsCount={allRecipientsVisible ? recipientsList.length : recipientsList.length + 1}\n        attachments={postAttachments}\n        liked={liked}\n        userStatus={userStatus}\n        likes={likes}\n        likeCount={likes.length}\n        maxContentHeight={80}\n        onLikeClick={({ user }) => {\n          const userLikedIndex = likes.findIndex(x => x.id === user.id);\n          if (userLikedIndex !== -1) {\n            setLikes(oldLikes => {\n              const oldLikesArr = [...oldLikes];\n              oldLikesArr.splice(userLikedIndex, 1);\n              return oldLikesArr;\n            });\n          } else {\n            setLikes(oldLikes => [user, ...oldLikes]);\n          }\n          setLiked(curr => !curr);\n        }}\n        onCommentClick={() => setReplyInputShown(true)}\n        onLikeCountInteraction={getInitialLikes}\n        likesLoading={likesLoading}\n        onLoadMoreLikes={!additionalLikeAdded ? generateNewLike : undefined}\n        recipientsLoading={recipientsLoading}\n        onLoadMoreRecipients={!allRecipientsVisible ? getAllRecipients : undefined}\n        onUserClick={onUserClick}\n        menuItems={[\n          { primary: 'Custom action', id: 'custom', onClick: () => {} },\n          { primary: 'Delete', id: 'delete', onClick: onDelete }\n        ]}\n        onEdit={onEdit}\n        editConfig={editConfig}\n        edited={edited}\n        editTimestamp={editTimestamp}\n        replies={\n          replies\n            ? [...replies, ...extraReplies]\n            : [...defaultReplies.slice(-repliesShown), ...extraReplies]\n        }\n        replyCount={replyCount}\n        repliesLoading={repliesLoading}\n        onShowMoreReplies={onShowMoreReplies}\n        onShowLessReplies={repliesShown > 3 ? onShowLessReplies : undefined}\n        replyInput={{\n          attachments: replyAttachments,\n          onFilesAdded,\n          progress: replyLoading,\n          banners:\n            replyErrorMessages.length > 0 ? (\n              <Banner variant='urgent' messages={replyErrorMessages} />\n            ) : undefined,\n          onSubmit: replyEvent => {\n            setReplyErrorMessages([]);\n            setReplyAttachments([]);\n\n            setReplyLoading(true);\n            replyTimeout.current = window.setTimeout(\n              () => {\n                if (simulateServerError) {\n                  setReplyErrorMessages(['This is a mock server error!']);\n                } else {\n                  replyEvent.attachments.forEach(file => {\n                    delete file.onDelete;\n                    file.onPreview = () => action('on preview');\n                    file.onDownload = () => action('on download');\n                    file.onEdit = () => action('on edit');\n                  });\n\n                  setExtraReplies(oldReplies => [\n                    ...oldReplies,\n                    <FeedReplyDemo\n                      key={`replies-${oldReplies.length}`}\n                      fullname='Demo User'\n                      username='demo_user'\n                      userStatus='active'\n                      content={replyEvent.value}\n                      attachments={replyEvent.attachments}\n                      postTimestamp={new Date()}\n                    />\n                  ]);\n                  setReplyCount(oldReplyCount => oldReplyCount + 1);\n\n                  const triggersAutopilot = replyEvent.value.match(AutopilotConfig.regexPattern);\n\n                  if (\n                    triggersAutopilot &&\n                    triggersAutopilot.length &&\n                    triggersAutopilot.length > 0\n                  ) {\n                    setExtraReplies(oldReplies => [\n                      ...oldReplies,\n                      <FeedReplyDemo\n                        key={`autopilot-${createUID()}`}\n                        fullname='Autopilot'\n                        username='autopilot'\n                        content='This is just an automatic reply. In order to truly experience the power of the Pega GenAI™ virtual assistant, make sure to interact with Autopilot in a production environment!'\n                        postTimestamp={new Date()}\n                      />\n                    ]);\n                    setReplyCount(oldReplyCount => oldReplyCount + 1);\n                  }\n\n                  replyEvent.clear();\n                  setReplyInputShown(false);\n                }\n                setReplyLoading(false);\n              },\n              simulateServerLatency ? loadingTimeoutMS : 0\n            );\n          }\n        }}\n        replyInputShown={replyInputShown}\n      />\n      {glimpseTarget && glimpseContent}\n    </FeedPostDemoContext.Provider>\n  );\n};\n"]}