@pega/cosmos-react-demos 5.0.0-dev.4.4 → 5.0.0-dev.4.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/jsx/core/ListToolbar/ListToolbar.stories.d.ts +1 -0
  2. package/jsx/core/ListToolbar/ListToolbar.stories.d.ts.map +1 -1
  3. package/jsx/core/ListToolbar/ListToolbar.stories.jsx +25 -4
  4. package/jsx/core/ListToolbar/ListToolbar.stories.jsx.map +1 -1
  5. package/jsx/social/Email/Email.stories.d.ts +2 -0
  6. package/jsx/social/Email/Email.stories.d.ts.map +1 -1
  7. package/jsx/social/Email/Email.stories.jsx +12 -4
  8. package/jsx/social/Email/Email.stories.jsx.map +1 -1
  9. package/jsx/social/Feed/Feed.mocks.d.ts.map +1 -1
  10. package/jsx/social/Feed/Feed.mocks.jsx +24 -0
  11. package/jsx/social/Feed/Feed.mocks.jsx.map +1 -1
  12. package/jsx/social/Feed/Feed.stories.d.ts.map +1 -1
  13. package/jsx/social/Feed/Feed.stories.jsx +14 -3
  14. package/jsx/social/Feed/Feed.stories.jsx.map +1 -1
  15. package/jsx/social/Feed/FeedPost.mocks.d.ts.map +1 -1
  16. package/jsx/social/Feed/FeedPost.mocks.jsx +32 -17
  17. package/jsx/social/Feed/FeedPost.mocks.jsx.map +1 -1
  18. package/jsx/social/Feed/FeedReply.mocks.d.ts.map +1 -1
  19. package/jsx/social/Feed/FeedReply.mocks.jsx +24 -17
  20. package/jsx/social/Feed/FeedReply.mocks.jsx.map +1 -1
  21. package/jsx/work/CaseView/CaseView.mocks.d.ts +12 -1
  22. package/jsx/work/CaseView/CaseView.mocks.d.ts.map +1 -1
  23. package/jsx/work/CaseView/CaseView.mocks.jsx +63 -9
  24. package/jsx/work/CaseView/CaseView.mocks.jsx.map +1 -1
  25. package/lib/core/ListToolbar/ListToolbar.stories.d.ts +1 -0
  26. package/lib/core/ListToolbar/ListToolbar.stories.d.ts.map +1 -1
  27. package/lib/core/ListToolbar/ListToolbar.stories.js +12 -5
  28. package/lib/core/ListToolbar/ListToolbar.stories.js.map +1 -1
  29. package/lib/social/Email/Email.stories.d.ts +2 -0
  30. package/lib/social/Email/Email.stories.d.ts.map +1 -1
  31. package/lib/social/Email/Email.stories.js +12 -4
  32. package/lib/social/Email/Email.stories.js.map +1 -1
  33. package/lib/social/Feed/Feed.mocks.d.ts.map +1 -1
  34. package/lib/social/Feed/Feed.mocks.js +24 -0
  35. package/lib/social/Feed/Feed.mocks.js.map +1 -1
  36. package/lib/social/Feed/Feed.stories.d.ts.map +1 -1
  37. package/lib/social/Feed/Feed.stories.js +14 -3
  38. package/lib/social/Feed/Feed.stories.js.map +1 -1
  39. package/lib/social/Feed/FeedPost.mocks.d.ts.map +1 -1
  40. package/lib/social/Feed/FeedPost.mocks.js +32 -17
  41. package/lib/social/Feed/FeedPost.mocks.js.map +1 -1
  42. package/lib/social/Feed/FeedReply.mocks.d.ts.map +1 -1
  43. package/lib/social/Feed/FeedReply.mocks.js +23 -16
  44. package/lib/social/Feed/FeedReply.mocks.js.map +1 -1
  45. package/lib/work/CaseView/CaseView.mocks.d.ts +12 -1
  46. package/lib/work/CaseView/CaseView.mocks.d.ts.map +1 -1
  47. package/lib/work/CaseView/CaseView.mocks.js +61 -9
  48. package/lib/work/CaseView/CaseView.mocks.js.map +1 -1
  49. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"Feed.mocks.jsx","sourceRoot":"","sources":["../../../src/social/Feed/Feed.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { ReactNode } from 'react';\n\nimport {\n Avatar,\n EmailDisplay,\n PhoneDisplay,\n Link,\n Flex,\n Image,\n OmitStrict,\n createUID\n} from '@pega/cosmos-react-core';\nimport { FeedPostProps } from '@pega/cosmos-react-social';\nimport { GlimpseProps } from '@pega/cosmos-react-work';\n\ninterface Mention {\n id: string;\n primary: string;\n secondary?: string | string[];\n visual?: ReactNode;\n fields?: { name: string; value: ReactNode }[];\n href?: string;\n}\n\n// cspell:disable\nexport const userMentions: Mention[] = [\n {\n id: 'turnc',\n primary: 'Cindy Turner',\n secondary: ['Lead Engineer'],\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(111) 111-1111' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='turnc@example.com' />\n },\n {\n name: 'Reports to',\n value: 'Helen Bush'\n }\n ],\n visual: <Avatar size='l' name='Cindy Turner' />\n },\n {\n id: 'deans',\n primary: 'Seth DeAngelo',\n secondary: ['Senior Software Engineer', 'Backend Developer'],\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(222) 222-2222' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='deans@example.com' />\n },\n {\n name: 'Reports to',\n value: 'Helen Bush'\n }\n ],\n visual: <Avatar size='l' name='Seth DeAngelo' />\n },\n {\n id: 'moorj',\n primary: 'Janet Moore',\n secondary: ['Backend Developer'],\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(333) 333-3333' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='moorj@example.com' />\n },\n {\n name: 'Reports to',\n value: 'Helen Bush'\n }\n ],\n visual: <Avatar size='l' name='Janet Moore' />\n },\n {\n id: 'thomd',\n primary: 'Dean Thomas',\n secondary: ['Designer'],\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(444) 444-4444' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='thomd@example.com' />\n },\n {\n name: 'Reports to',\n value: 'Bob Hathoway'\n }\n ],\n visual: <Avatar size='l' name='Dean Thomas' />\n },\n {\n id: 'hathb',\n primary: 'Bob Hathoway',\n secondary: ['Lead Designer', 'Product Owner'],\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(555) 555-5555' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='hathb@example.com' />\n },\n {\n name: 'Reports to',\n value: ''\n }\n ],\n visual: <Avatar size='l' name='Bob Hathoway' />\n }\n];\n\nexport const caseMentions: Mention[] = [\n {\n id: 'c-001',\n primary: 'Complete user sign up form',\n secondary: ['US-111111'],\n visual: <Avatar size='l' name='c-001' icon='case' />,\n href: '#c-001'\n },\n {\n id: 'c-002',\n primary: 'Button missing on home page',\n secondary: ['BUG-222222'],\n visual: <Avatar size='l' name='c-002' icon='case' />,\n href: '#c-002'\n },\n {\n id: 'c-003',\n primary: 'Set up transaction broker',\n secondary: ['US-333333'],\n visual: <Avatar size='l' name='c-03' icon='case' />,\n href: '#c-003'\n },\n {\n id: 'c-004',\n primary: 'Check in with security team',\n secondary: ['TASK-444444'],\n visual: <Avatar size='l' name='c-004' icon='case' />,\n href: '#c-004'\n },\n {\n id: 'c-005',\n primary: 'Error occurs upon submitting form',\n secondary: ['BUG-555555'],\n visual: <Avatar size='l' name='c-005' icon='case' />,\n href: '#c-005'\n }\n];\n\nexport const generatedLikes = [\n {\n primary: 'Cindy Turner',\n secondary: ['Lead Engineer'],\n visual: <Avatar size='l' name='Cindy Turner' />,\n id: 'turnc'\n },\n {\n primary: 'Helen Bush',\n secondary: ['Product Manager', 'Product Owner'],\n visual: <Avatar size='l' name='Helen Bush' />,\n id: 'bushh'\n },\n {\n primary: 'Randy Paul',\n secondary: ['Frontend Developer', 'Backend Developer'],\n visual: <Avatar size='l' name='Randy Paul' />,\n id: 'paulr'\n },\n {\n primary: 'Janet Moore',\n secondary: ['Backend Developer'],\n visual: <Avatar size='l' name='Janet Moore' />,\n id: 'moorj'\n },\n {\n primary: 'Kate Mirin',\n secondary: ['Quality Engineer'],\n visual: <Avatar size='l' name='Kate Mirin' />,\n id: 'mirik'\n },\n {\n primary: 'Bob Hathoway',\n secondary: ['Lead Designer', 'Product Owner'],\n visual: <Avatar size='l' name='Bob Hathoway' />,\n id: 'hathb'\n },\n {\n primary: 'Seth DeAngelo',\n secondary: ['Senior Software Engineer', 'Backend Developer'],\n visual: <Avatar size='l' name='Seth DeAngelo' />,\n id: 'deans'\n },\n {\n primary: 'Dean Thomas',\n secondary: ['Designer'],\n visual: <Avatar size='l' name='Dean Thomas' />,\n id: 'thomd'\n },\n {\n primary: 'Louie Santos',\n secondary: ['Marketing Specialist'],\n visual: <Avatar size='l' name='Louie Santos' />,\n id: 'santl'\n },\n {\n primary: 'Margaret Foster',\n secondary: ['Architect', 'Designer'],\n visual: <Avatar size='l' name='Margaret Foster' />,\n id: 'fostm'\n }\n];\n\nexport const availableRecipients = [\n {\n primary: 'Cindy Turner',\n secondary: ['Lead Engineer'],\n visual: <Avatar size='l' name='Cindy Turner' />,\n value: 'turnc',\n id: 'turnc'\n },\n {\n primary: 'Helen Bush',\n secondary: ['Product Manager', 'Product Owner'],\n visual: <Avatar size='l' name='Helen Bush' />,\n value: 'bushh',\n id: 'bushh'\n },\n {\n primary: 'Randy Paul',\n secondary: ['Frontend Developer', 'Backend Developer'],\n visual: <Avatar size='l' name='Randy Paul' />,\n value: 'paulr',\n id: 'paulr'\n },\n {\n primary: 'Janet Moore',\n secondary: ['Backend Developer'],\n visual: <Avatar size='l' name='Janet Moore' />,\n value: 'moorj',\n id: 'moorj'\n },\n {\n primary: 'Kate Mirin',\n secondary: ['Quality Engineer'],\n visual: <Avatar size='l' name='Kate Mirin' />,\n value: 'mirik',\n id: 'mirik'\n },\n {\n primary: 'Bob Hathoway',\n secondary: ['Lead Designer', 'Product Owner'],\n visual: <Avatar size='l' name='Bob Hathoway' />,\n value: 'hathb',\n id: 'hathb'\n },\n {\n primary: 'Seth DeAngelo',\n secondary: ['Senior Software Engineer', 'Backend Developer'],\n visual: <Avatar size='l' name='Seth DeAngelo' />,\n value: 'deans',\n id: 'deans'\n },\n {\n primary: 'Dean Thomas',\n secondary: ['Designer'],\n visual: <Avatar size='l' name='Dean Thomas' />,\n value: 'thomd',\n id: 'thomd'\n },\n {\n primary: 'Louie Santos',\n secondary: ['Marketing Specialist'],\n visual: <Avatar size='l' name='Louie Santos' />,\n value: 'santl',\n id: 'santl'\n },\n {\n primary: 'Margaret Foster',\n secondary: ['Architect', 'Designer'],\n visual: <Avatar size='l' name='Margaret Foster' />,\n value: 'fostm',\n id: 'fostm'\n }\n];\n// cspell:enable\n\nexport interface FeedPostDemoProps {\n id: string;\n fullname: FeedPostProps['fullname'];\n username: FeedPostProps['username'];\n content: FeedPostProps['content'];\n icon?: FeedPostProps['icon'];\n postType?: FeedPostProps['postType'];\n recipients?: FeedPostProps['recipients'];\n attachments?: FeedPostProps['attachments'];\n replies?: FeedPostProps['replies'];\n postTimestamp?: FeedPostProps['postTimestamp'];\n userStatus?: FeedPostProps['userStatus'];\n likes?: FeedPostProps['likes'];\n likeCount?: FeedPostProps['likeCount'];\n onDelete?: () => void;\n}\n\nexport const feedPosts: FeedPostDemoProps[] = [\n {\n id: createUID(),\n fullname: 'Feed Bot',\n icon: 'robot-solid',\n username: 'feed_bot',\n content: 'How is everyone doing with their reports?',\n postType: 'private',\n replies: [],\n likes: generatedLikes,\n likeCount: generatedLikes.length\n },\n {\n id: createUID(),\n fullname: 'Feed Bot',\n icon: 'robot-solid',\n username: 'feed_bot',\n content: (\n <Link href='https://www.pega.com/webinars/future-proof-your-business-architecture?utm_content=1606750722&utm_keyword=sprout&utm_medium=oso&utm_source=twitter'>\n <Flex container={{ direction: 'column' }}>\n Check out this awesome event!\n <Image\n src='https://pbs.twimg.com/media/EoKHAUKWEAM5hpz?format=jpg&name=medium'\n alt='Pegasystems'\n />\n </Flex>\n </Link>\n ),\n postType: 'private',\n replies: []\n },\n {\n id: createUID(),\n fullname: 'Feed Bot',\n icon: 'robot-solid',\n username: 'feed_bot',\n content: (\n <Link href='https://www.pega.com/products/sales-automation'>\n <Flex container={{ direction: 'column' }}>\n Sales Automation makes business happen.\n <Image\n src='https://cf-images.us-east-1.prod.boltdns.net/v1/static/1900410236/893966f4-f7e1-41f0-9cc2-e3064273d3aa/72837f91-61a1-455b-a7e3-126972b61ddd/1280x720/match/image.jpg'\n alt='Pega Sales Automation'\n />\n </Flex>\n </Link>\n ),\n postType: 'private',\n replies: []\n }\n];\n\nexport type FeedUserGlimpse = OmitStrict<GlimpseProps, 'onDismiss' | 'target'> & {\n username: string;\n};\n\nexport const feedUserGlimpseDetails: FeedUserGlimpse[] = [\n {\n id: 'demoUser',\n username: 'demo_user',\n heading: {\n primary: 'Demo User',\n secondary: 'Mock data for the user of this demo',\n visual: <Avatar size='l' name='Demo User' />\n },\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(111) 111-1111' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='demo.user@example.com' />\n }\n ]\n },\n {\n id: 'feedBot',\n username: 'feed_bot',\n heading: {\n primary: 'Feed Bot',\n secondary: 'A bot that leaves messages for this demo',\n visual: <Avatar size='l' name='Feed Bot' icon='robot-solid' />\n },\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(010) 101-0101' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='feed.bot@example.com' />\n },\n {\n name: 'Reports to',\n value: 'Demo User'\n }\n ]\n }\n];\n"]}
1
+ {"version":3,"file":"Feed.mocks.jsx","sourceRoot":"","sources":["../../../src/social/Feed/Feed.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { ReactNode } from 'react';\n\nimport {\n Avatar,\n EmailDisplay,\n PhoneDisplay,\n Link,\n Flex,\n Image,\n OmitStrict,\n createUID\n} from '@pega/cosmos-react-core';\nimport { FeedPostProps } from '@pega/cosmos-react-social';\nimport { GlimpseProps } from '@pega/cosmos-react-work';\n\ninterface Mention {\n id: string;\n primary: string;\n secondary?: string | string[];\n visual?: ReactNode;\n fields?: { name: string; value: ReactNode }[];\n href?: string;\n}\n\n// cspell:disable\nexport const userMentions: Mention[] = [\n {\n id: 'turnc',\n primary: 'Cindy Turner',\n secondary: ['Lead Engineer'],\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(111) 111-1111' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='turnc@example.com' />\n },\n {\n name: 'Reports to',\n value: 'Helen Bush'\n }\n ],\n visual: <Avatar size='l' name='Cindy Turner' />\n },\n {\n id: 'deans',\n primary: 'Seth DeAngelo',\n secondary: ['Senior Software Engineer', 'Backend Developer'],\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(222) 222-2222' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='deans@example.com' />\n },\n {\n name: 'Reports to',\n value: 'Helen Bush'\n }\n ],\n visual: <Avatar size='l' name='Seth DeAngelo' />\n },\n {\n id: 'moorj',\n primary: 'Janet Moore',\n secondary: ['Backend Developer'],\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(333) 333-3333' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='moorj@example.com' />\n },\n {\n name: 'Reports to',\n value: 'Helen Bush'\n }\n ],\n visual: <Avatar size='l' name='Janet Moore' />\n },\n {\n id: 'thomd',\n primary: 'Dean Thomas',\n secondary: ['Designer'],\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(444) 444-4444' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='thomd@example.com' />\n },\n {\n name: 'Reports to',\n value: 'Bob Hathoway'\n }\n ],\n visual: <Avatar size='l' name='Dean Thomas' />\n },\n {\n id: 'hathb',\n primary: 'Bob Hathoway',\n secondary: ['Lead Designer', 'Product Owner'],\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(555) 555-5555' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='hathb@example.com' />\n },\n {\n name: 'Reports to',\n value: ''\n }\n ],\n visual: <Avatar size='l' name='Bob Hathoway' />\n },\n {\n id: 'amell',\n primary: 'Audrey Mell',\n secondary: ['Intern'],\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(666) 666-6666' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='amell@example.com' />\n },\n {\n name: 'Reports to',\n value: 'Dean Thomas'\n }\n ],\n visual: <Avatar size='l' name='Audrey Mell' />\n }\n];\n\nexport const caseMentions: Mention[] = [\n {\n id: 'c-001',\n primary: 'Complete user sign up form',\n secondary: ['US-111111'],\n visual: <Avatar size='l' name='c-001' icon='case' />,\n href: '#c-001'\n },\n {\n id: 'c-002',\n primary: 'Button missing on home page',\n secondary: ['BUG-222222'],\n visual: <Avatar size='l' name='c-002' icon='case' />,\n href: '#c-002'\n },\n {\n id: 'c-003',\n primary: 'Set up transaction broker',\n secondary: ['US-333333'],\n visual: <Avatar size='l' name='c-03' icon='case' />,\n href: '#c-003'\n },\n {\n id: 'c-004',\n primary: 'Check in with security team',\n secondary: ['TASK-444444'],\n visual: <Avatar size='l' name='c-004' icon='case' />,\n href: '#c-004'\n },\n {\n id: 'c-005',\n primary: 'Error occurs upon submitting form',\n secondary: ['BUG-555555'],\n visual: <Avatar size='l' name='c-005' icon='case' />,\n href: '#c-005'\n }\n];\n\nexport const generatedLikes = [\n {\n primary: 'Cindy Turner',\n secondary: ['Lead Engineer'],\n visual: <Avatar size='l' name='Cindy Turner' />,\n id: 'turnc'\n },\n {\n primary: 'Helen Bush',\n secondary: ['Product Manager', 'Product Owner'],\n visual: <Avatar size='l' name='Helen Bush' />,\n id: 'bushh'\n },\n {\n primary: 'Randy Paul',\n secondary: ['Frontend Developer', 'Backend Developer'],\n visual: <Avatar size='l' name='Randy Paul' />,\n id: 'paulr'\n },\n {\n primary: 'Janet Moore',\n secondary: ['Backend Developer'],\n visual: <Avatar size='l' name='Janet Moore' />,\n id: 'moorj'\n },\n {\n primary: 'Kate Mirin',\n secondary: ['Quality Engineer'],\n visual: <Avatar size='l' name='Kate Mirin' />,\n id: 'mirik'\n },\n {\n primary: 'Bob Hathoway',\n secondary: ['Lead Designer', 'Product Owner'],\n visual: <Avatar size='l' name='Bob Hathoway' />,\n id: 'hathb'\n },\n {\n primary: 'Seth DeAngelo',\n secondary: ['Senior Software Engineer', 'Backend Developer'],\n visual: <Avatar size='l' name='Seth DeAngelo' />,\n id: 'deans'\n },\n {\n primary: 'Dean Thomas',\n secondary: ['Designer'],\n visual: <Avatar size='l' name='Dean Thomas' />,\n id: 'thomd'\n },\n {\n primary: 'Louie Santos',\n secondary: ['Marketing Specialist'],\n visual: <Avatar size='l' name='Louie Santos' />,\n id: 'santl'\n },\n {\n primary: 'Margaret Foster',\n secondary: ['Architect', 'Designer'],\n visual: <Avatar size='l' name='Margaret Foster' />,\n id: 'fostm'\n }\n];\n\nexport const availableRecipients = [\n {\n primary: 'Cindy Turner',\n secondary: ['Lead Engineer'],\n visual: <Avatar size='l' name='Cindy Turner' />,\n value: 'turnc',\n id: 'turnc'\n },\n {\n primary: 'Helen Bush',\n secondary: ['Product Manager', 'Product Owner'],\n visual: <Avatar size='l' name='Helen Bush' />,\n value: 'bushh',\n id: 'bushh'\n },\n {\n primary: 'Randy Paul',\n secondary: ['Frontend Developer', 'Backend Developer'],\n visual: <Avatar size='l' name='Randy Paul' />,\n value: 'paulr',\n id: 'paulr'\n },\n {\n primary: 'Janet Moore',\n secondary: ['Backend Developer'],\n visual: <Avatar size='l' name='Janet Moore' />,\n value: 'moorj',\n id: 'moorj'\n },\n {\n primary: 'Kate Mirin',\n secondary: ['Quality Engineer'],\n visual: <Avatar size='l' name='Kate Mirin' />,\n value: 'mirik',\n id: 'mirik'\n },\n {\n primary: 'Bob Hathoway',\n secondary: ['Lead Designer', 'Product Owner'],\n visual: <Avatar size='l' name='Bob Hathoway' />,\n value: 'hathb',\n id: 'hathb'\n },\n {\n primary: 'Seth DeAngelo',\n secondary: ['Senior Software Engineer', 'Backend Developer'],\n visual: <Avatar size='l' name='Seth DeAngelo' />,\n value: 'deans',\n id: 'deans'\n },\n {\n primary: 'Dean Thomas',\n secondary: ['Designer'],\n visual: <Avatar size='l' name='Dean Thomas' />,\n value: 'thomd',\n id: 'thomd'\n },\n {\n primary: 'Louie Santos',\n secondary: ['Marketing Specialist'],\n visual: <Avatar size='l' name='Louie Santos' />,\n value: 'santl',\n id: 'santl'\n },\n {\n primary: 'Margaret Foster',\n secondary: ['Architect', 'Designer'],\n visual: <Avatar size='l' name='Margaret Foster' />,\n value: 'fostm',\n id: 'fostm'\n }\n];\n// cspell:enable\n\nexport interface FeedPostDemoProps {\n id: string;\n fullname: FeedPostProps['fullname'];\n username: FeedPostProps['username'];\n content: FeedPostProps['content'];\n icon?: FeedPostProps['icon'];\n postType?: FeedPostProps['postType'];\n recipients?: FeedPostProps['recipients'];\n attachments?: FeedPostProps['attachments'];\n replies?: FeedPostProps['replies'];\n postTimestamp?: FeedPostProps['postTimestamp'];\n userStatus?: FeedPostProps['userStatus'];\n likes?: FeedPostProps['likes'];\n likeCount?: FeedPostProps['likeCount'];\n onDelete?: () => void;\n}\n\nexport const feedPosts: FeedPostDemoProps[] = [\n {\n id: createUID(),\n fullname: 'Feed Bot',\n icon: 'robot-solid',\n username: 'feed_bot',\n content: 'How is everyone doing with their reports?',\n postType: 'private',\n replies: [],\n likes: generatedLikes,\n likeCount: generatedLikes.length\n },\n {\n id: createUID(),\n fullname: 'Feed Bot',\n icon: 'robot-solid',\n username: 'feed_bot',\n content: (\n <Link href='https://www.pega.com/webinars/future-proof-your-business-architecture?utm_content=1606750722&utm_keyword=sprout&utm_medium=oso&utm_source=twitter'>\n <Flex container={{ direction: 'column' }}>\n Check out this awesome event!\n <Image\n src='https://pbs.twimg.com/media/EoKHAUKWEAM5hpz?format=jpg&name=medium'\n alt='Pegasystems'\n />\n </Flex>\n </Link>\n ),\n postType: 'private',\n replies: []\n },\n {\n id: createUID(),\n fullname: 'Feed Bot',\n icon: 'robot-solid',\n username: 'feed_bot',\n content: (\n <Link href='https://www.pega.com/products/sales-automation'>\n <Flex container={{ direction: 'column' }}>\n Sales Automation makes business happen.\n <Image\n src='https://cf-images.us-east-1.prod.boltdns.net/v1/static/1900410236/893966f4-f7e1-41f0-9cc2-e3064273d3aa/72837f91-61a1-455b-a7e3-126972b61ddd/1280x720/match/image.jpg'\n alt='Pega Sales Automation'\n />\n </Flex>\n </Link>\n ),\n postType: 'private',\n replies: []\n }\n];\n\nexport type FeedUserGlimpse = OmitStrict<GlimpseProps, 'onDismiss' | 'target'> & {\n username: string;\n};\n\nexport const feedUserGlimpseDetails: FeedUserGlimpse[] = [\n {\n id: 'demoUser',\n username: 'demo_user',\n heading: {\n primary: 'Demo User',\n secondary: 'Mock data for the user of this demo',\n visual: <Avatar size='l' name='Demo User' />\n },\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(111) 111-1111' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='demo.user@example.com' />\n }\n ]\n },\n {\n id: 'feedBot',\n username: 'feed_bot',\n heading: {\n primary: 'Feed Bot',\n secondary: 'A bot that leaves messages for this demo',\n visual: <Avatar size='l' name='Feed Bot' icon='robot-solid' />\n },\n fields: [\n {\n name: 'Project',\n value: 'Cosmos Demo'\n },\n {\n name: 'Phone number',\n value: <PhoneDisplay value='(010) 101-0101' />\n },\n {\n name: 'Email',\n value: <EmailDisplay value='feed.bot@example.com' />\n },\n {\n name: 'Reports to',\n value: 'Demo User'\n }\n ]\n }\n];\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Feed.stories.d.ts","sourceRoot":"","sources":["../../../src/social/Feed/Feed.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAMtD,OAAO,KAAK,EAAE,SAAS,EAAyB,MAAM,2BAA2B,CAAC;;AAYlF,wBAGU;AAEV,UAAU,aAAa;IACrB,WAAW,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;IACvC,gBAAgB,CAAC,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC;CAClD;AAED,eAAO,MAAM,QAAQ,EAAE,OAAO,CAAC,aAAa,CA4Q3C,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,OAE9B,CAAC"}
1
+ {"version":3,"file":"Feed.stories.d.ts","sourceRoot":"","sources":["../../../src/social/Feed/Feed.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAatD,OAAO,KAAK,EAAE,SAAS,EAAwC,MAAM,2BAA2B,CAAC;;AAajG,wBAGU;AAEV,UAAU,aAAa;IACrB,WAAW,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;IACvC,gBAAgB,CAAC,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC;CAClD;AAED,eAAO,MAAM,QAAQ,EAAE,OAAO,CAAC,aAAa,CAsS3C,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,OAE9B,CAAC"}
@@ -1,12 +1,13 @@
1
1
  import { useState, useRef, useCallback, useEffect } from 'react';
2
2
  import { createUID, DateTimeDisplay, Lightbox, OneColumnPage } from '@pega/cosmos-react-core';
3
- import { Feed, MentionButtonConfig, HashtagButtonConfig } from '@pega/cosmos-react-social';
3
+ import { AutopilotConfig, Feed, MentionButtonConfig, HashtagButtonConfig, AutopilotGlimpse } from '@pega/cosmos-react-social';
4
4
  import { Glimpse } from '@pega/cosmos-react-work';
5
5
  import { loadingTimeoutMS } from '../../core/Progress/Progress.mocks';
6
6
  import { AppShellDemo } from '../../core/AppShell/AppShell.stories';
7
7
  import { FeedPostDemo } from './FeedPost.mocks';
8
8
  import { FeedNewPostDemo } from './FeedNewPost.mocks';
9
9
  import { caseMentions, feedPosts, userMentions } from './Feed.mocks';
10
+ import { FeedReplyDemo } from './FeedReply.mocks';
10
11
  export default {
11
12
  title: 'Social/Feed',
12
13
  component: Feed
@@ -82,6 +83,11 @@ export const FeedDemo = ({ markdownMap, onMentionPreview }) => {
82
83
  useEffect(() => {
83
84
  return () => clearTimeout(timeoutId);
84
85
  }, []);
86
+ const onAutopilotClick = ({ target, onDismiss }) => {
87
+ if (target && onDismiss) {
88
+ return <AutopilotGlimpse target={target} onDismiss={onDismiss} placement='right'/>;
89
+ }
90
+ };
85
91
  const onMentionClick = ({ id, type, target, closeGlimpse }) => {
86
92
  if (type === 'user') {
87
93
  const user = userMentions.find(mention => mention.id === id);
@@ -136,7 +142,7 @@ export const FeedDemo = ({ markdownMap, onMentionPreview }) => {
136
142
  });
137
143
  };
138
144
  return (<>
139
- <Feed title='Pulse' userInfo={{ username: 'demo_user', fullname: 'Demo User', userStatus: 'active' }} searchTypes={['user', 'case']} onDecoratorSearch={onSearch} searchResults={searchResults} onMentionClick={onMentionClick} onMentionPreview={onMentionPreview} markdownMap={markdownMap} interactionRenderers={[MentionButtonConfig, HashtagButtonConfig]} filters={filters} onFilterChange={toggleFilter} loadingPosts={loading} onLoadMore={generateNewPost} newPostRegion={<FeedNewPostDemo onSubmit={postEvent => {
145
+ <Feed title='Pulse' userInfo={{ username: 'demo_user', fullname: 'Demo User', userStatus: 'active' }} searchTypes={['user', 'case']} onDecoratorSearch={onSearch} searchResults={searchResults} onAutopilotClick={onAutopilotClick} onMentionClick={onMentionClick} onMentionPreview={onMentionPreview} markdownMap={markdownMap} interactionRenderers={[MentionButtonConfig, HashtagButtonConfig, AutopilotConfig]} filters={filters} onFilterChange={toggleFilter} loadingPosts={loading} onLoadMore={generateNewPost} enableAutopilot newPostRegion={<FeedNewPostDemo onSubmit={postEvent => {
140
146
  const { value, attachments, recipients, clear } = postEvent;
141
147
  const images = attachments.filter(attachment => attachment.type.includes('image') && attachment.thumbnail);
142
148
  mockAPIImages.current = [
@@ -160,6 +166,11 @@ export const FeedDemo = ({ markdownMap, onMentionPreview }) => {
160
166
  file.onDownload = () => { };
161
167
  });
162
168
  if (value || attachments.length > 0) {
169
+ const replies = [];
170
+ const triggersAutopilot = value.match(AutopilotConfig.regexPattern);
171
+ if (triggersAutopilot && triggersAutopilot.length && triggersAutopilot.length > 0) {
172
+ replies.push(<FeedReplyDemo key={`autopilot-${createUID()}`} fullname='Autopilot' username='Autopilot' 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!' postTimestamp={new Date()}/>);
173
+ }
163
174
  setExtraPosts(posts => [
164
175
  {
165
176
  id: createUID(),
@@ -170,7 +181,7 @@ export const FeedDemo = ({ markdownMap, onMentionPreview }) => {
170
181
  attachments,
171
182
  recipients,
172
183
  postType: recipients?.length ? 'private' : 'public',
173
- replies: [],
184
+ replies,
174
185
  postTimestamp: new Date()
175
186
  },
176
187
  ...posts
@@ -1 +1 @@
1
- {"version":3,"file":"Feed.stories.jsx","sourceRoot":"","sources":["../../../src/social/Feed/Feed.stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEjE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE9F,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAE3F,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAGlD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGrE,eAAe;IACb,KAAK,EAAE,aAAa;IACpB,SAAS,EAAE,IAAI;CACR,CAAC;AAOV,MAAM,CAAC,MAAM,QAAQ,GAA2B,CAAC,EAC/C,WAAW,EACX,gBAAgB,EACF,EAAE,EAAE;IAClB,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAsB,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACnF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAkB,EAAE,CAAC,CAAC;IAExE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CACpC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;QACtC,OAAO;YACL,EAAE,EAAE,UAAU,KAAK,GAAG,CAAC,EAAE;YACzB,KAAK,EAAE,UAAU,KAAK,GAAG,CAAC,EAAE;SAC7B,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAE,EAAE;QACxC,MAAM,cAAc,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;QACpC,MAAM,cAAc,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;QAEnE,IAAI,cAAc;YAAE,cAAc,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;QAE3D,UAAU,CAAC,cAAc,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,EAChB,IAAI,EACJ,MAAM,EACN,WAAW,EAKZ,EAAE,EAAE;QACH,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,MAAM,iBAAiB,GAAG,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC;YAE/E,MAAM,QAAQ,GAAoB,iBAAiB;iBAChD,MAAM,CAAC,IAAI,CAAC,EAAE;gBACb,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACpD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACpD,OAAO,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IAAY,EAAE,EAAE,CAC1C,KAAK,CAAC,IAAI,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CACpD,CAAC;YACJ,CAAC,CAAC;iBACD,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;gBAChD,OAAO;oBACL,EAAE;oBACF,OAAO;oBACP,SAAS,EACP,SAAS,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;oBAChF,MAAM;oBACN,IAAI;iBACL,CAAC;YACJ,CAAC,CAAC,CAAC;YACL,gBAAgB,CAAC,QAAQ,CAAC,CAAC;SAC5B;aAAM;YACL,gBAAgB,CACd,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC;iBAC1B,MAAM,CAAC,GAAG,CAAC,EAAE;gBACZ,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;YAC1D,CAAC,CAAC;iBACD,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAC3C,CAAC;SACH;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,SAAwC,CAAC;IAE7C,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,IAAI,CAAC,OAAO,IAAI,CAAC,aAAa,EAAE;YAC9B,UAAU,CAAC,IAAI,CAAC,CAAC;YACjB,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC1B,UAAU,CAAC,KAAK,CAAC,CAAC;gBAClB,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACvB,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;oBACrB,GAAG,KAAK;oBACR;wBACE,EAAE,EAAE,SAAS,EAAE;wBACf,QAAQ,EAAE,UAAU;wBACpB,IAAI,EAAE,aAAa;wBACnB,QAAQ,EAAE,UAAU;wBACpB,OAAO,EAAE,iEAAiE;wBAC1E,WAAW,EAAE,EAAE;wBACf,OAAO,EAAE,EAAE;qBACZ;iBACF,CAAC,CAAC;YACL,CAAC,EAAE,IAAI,CAAC,CAAC;SACV;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;IAE7B,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,cAAc,GAAG,CAAC,EACtB,EAAE,EACF,IAAI,EACJ,MAAM,EACN,YAAY,EAGb,EAAE,EAAE;QACH,IAAI,IAAI,KAAK,MAAM,EAAE;YACnB,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YAC7D,IAAI,IAAI,IAAI,MAAM,IAAI,YAAY,EAAE;gBAClC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC;gBAEzD,OAAO,CACL,CAAC,OAAO,CACN,IAAI,QAAQ,CAAC,CACb,OAAO,CAAC,CAAC;wBACP,OAAO;wBACP,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;wBACtE,MAAM;qBACP,CAAC,CACF,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,SAAS,CAAC,CAAC,GAAG,EAAE;wBACd,YAAY,EAAE,CAAC;oBACjB,CAAC,CAAC,CACF,SAAS,CAAC,OAAO,EACjB,CACH,CAAC;aACH;SACF;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAyB,EAAE,CAAC,CAAC;IACjF,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,aAAa,GAAG,MAAM,CAA2C,EAAE,CAAC,CAAC;IAE3E,MAAM,gBAAgB,GAAG,KAAK,EAAE,EAAU,EAAE,EAAE;QAC5C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;YAC1B,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACvE,IAAI,SAAS,EAAE;YACb,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC;SAC3B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,gBAAiC,EAAE,IAAY,EAAE,EAAE;QACzE,MAAM,GAAG,GAAG,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QACrE,cAAc,CAAC,OAAO,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5C,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAe,KAAK,CAAC,EAAE;YACxD,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC;YACrF,IAAI,SAAS,EAAE,QAAQ;gBAAE,OAAO,SAAS,CAAC;YAE1C,OAAO;gBACL,EAAE,EAAE,KAAK,CAAC,SAAmB;gBAC7B,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,WAAW,EAAE,EAAE;gBACf,GAAG,EAAE,IAAI;aACV,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC1B,eAAe,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,KAAa,EAAE,EAAE;QACnC,aAAa,CAAC,KAAK,CAAC,EAAE;YACpB,MAAM,SAAS,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;YAC7B,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC3B,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACL,EACE;MAAA,CAAC,IAAI,CACH,KAAK,CAAC,OAAO,CACb,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CACjF,WAAW,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAC9B,iBAAiB,CAAC,CAAC,QAAQ,CAAC,CAC5B,aAAa,CAAC,CAAC,aAAa,CAAC,CAC7B,cAAc,CAAC,CAAC,cAAc,CAAC,CAC/B,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CACnC,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,oBAAoB,CAAC,CAAC,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC,CACjE,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,cAAc,CAAC,CAAC,YAAY,CAAC,CAC7B,YAAY,CAAC,CAAC,OAAO,CAAC,CACtB,UAAU,CAAC,CAAC,eAAe,CAAC,CAC5B,aAAa,CAAC,CACZ,CAAC,eAAe,CACd,QAAQ,CAAC,CAAC,SAAS,CAAC,EAAE;gBACpB,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC;gBAE5D,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAC/B,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,SAAS,CACxE,CAAC;gBAEF,aAAa,CAAC,OAAO,GAAG;oBACtB,GAAG,aAAa,CAAC,OAAO;oBACxB,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;wBACpB,OAAO;4BACL,EAAE,EAAE,KAAK,CAAC,SAAmB;4BAC7B,IAAI,EAAE,KAAK,CAAC,IAAI;4BAChB,WAAW,EAAE,KAAK,CAAC,IAAI;4BACvB,GAAG,EAAE,KAAK,CAAC,SAAmB;4BAC9B,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAG,CAAC;4BAC7E,QAAQ,EAAE,KAAK;yBAChB,CAAC;oBACJ,CAAC,CAAC;iBACH,CAAC;gBAEF,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBACzB,OAAO,IAAI,CAAC,QAAQ,CAAC;oBACrB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;wBAC1C,CAAC,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC;wBACzC,CAAC,CAAC,SAAS,CAAC;oBACd,IAAI,CAAC,UAAU,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC;gBAEH,IAAI,KAAK,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;oBACnC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;wBACrB;4BACE,EAAE,EAAE,SAAS,EAAE;4BACf,QAAQ,EAAE,WAAW;4BACrB,QAAQ,EAAE,WAAW;4BACrB,UAAU,EAAE,QAAQ;4BACpB,OAAO,EAAE,KAAK;4BACd,WAAW;4BACX,UAAU;4BACV,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;4BACnD,OAAO,EAAE,EAAE;4BACX,aAAa,EAAE,IAAI,IAAI,EAAE;yBAC1B;wBACD,GAAG,KAAK;qBACT,CAAC,CAAC;oBACH,KAAK,EAAE,CAAC;iBACT;YACH,CAAC,CAAC,EACF,CACH,CACD,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YAChC,OAAO,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAG,CAAC;QACjF,CAAC,CAAC,CAAC,EAEL;MAAA,CAAC,YAAY,IAAI,CACf,CAAC,QAAQ,CACP,KAAK,CAAC,CAAC,cAAc,CAAC,CACtB,YAAY,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CACrC,KAAK,CACL,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE;gBAC9B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE;oBAC9B,MAAM,aAAa,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC;oBAC1C,MAAM,cAAc,GAAG,MAAM,gBAAgB,CAAC,EAAE,CAAC,CAAC;oBAClD,IAAI,cAAc,EAAE;wBAClB,aAAa,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC;wBACtC,iBAAiB,CAAC,aAAa,CAAC,CAAC;qBAClC;iBACF;YACH,CAAC,CAAC,CACF,YAAY,CAAC,CAAC,GAAG,EAAE;gBACjB,eAAe,CAAC,KAAK,CAAC,CAAC;gBACvB,iBAAiB,CAAC,EAAE,CAAC,CAAC;YACxB,CAAC,CAAC,EACF,CACH,CACH;IAAA,GAAG,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAY,GAAG,EAAE;IAC5C,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,AAAD,EAAG,CAAC,EAAG,CAAC,EAAG,CAAC;AAC9F,CAAC,CAAC;AAEF,gBAAgB,CAAC,UAAU,GAAG;IAC5B,MAAM,EAAE,YAAY;CACrB,CAAC","sourcesContent":["import type { Meta, StoryFn } from '@storybook/react';\nimport { useState, useRef, useCallback, useEffect } from 'react';\n\nimport { createUID, DateTimeDisplay, Lightbox, OneColumnPage } from '@pega/cosmos-react-core';\nimport type { LightboxItem, LightboxProps, MenuItemProps } from '@pega/cosmos-react-core';\nimport { Feed, MentionButtonConfig, HashtagButtonConfig } from '@pega/cosmos-react-social';\nimport type { FeedProps, Filter, AttachedFiles } from '@pega/cosmos-react-social';\nimport { Glimpse } from '@pega/cosmos-react-work';\nimport type { GlimpseProps } from '@pega/cosmos-react-work';\n\nimport { loadingTimeoutMS } from '../../core/Progress/Progress.mocks';\nimport { AppShellDemo } from '../../core/AppShell/AppShell.stories';\n\nimport { FeedPostDemo } from './FeedPost.mocks';\nimport { FeedNewPostDemo } from './FeedNewPost.mocks';\nimport { caseMentions, feedPosts, userMentions } from './Feed.mocks';\nimport type { FeedPostDemoProps } from './Feed.mocks';\n\nexport default {\n title: 'Social/Feed',\n component: Feed\n} as Meta;\n\ninterface FeedDemoProps {\n markdownMap?: FeedProps['markdownMap'];\n onMentionPreview?: FeedProps['onMentionPreview'];\n}\n\nexport const FeedDemo: StoryFn<FeedDemoProps> = ({\n markdownMap,\n onMentionPreview\n}: FeedDemoProps) => {\n const [extraPosts, setExtraPosts] = useState<FeedPostDemoProps[]>(() => feedPosts);\n const [postGenerated, setPostGenerated] = useState(false);\n const [searchResults, setSearchResults] = useState<MenuItemProps[]>([]);\n\n const [filters, setFilters] = useState<Filter[]>(\n Array.from({ length: 10 }, (_, index) => {\n return {\n id: `filter-${index + 1}`,\n label: `Filter ${index + 1}`\n };\n })\n );\n\n const toggleFilter = (filterId: string) => {\n const updatedFilters = [...filters];\n const filterToUpdate = updatedFilters.find(x => x.id === filterId);\n\n if (filterToUpdate) filterToUpdate.on = !filterToUpdate.on;\n\n setFilters(updatedFilters);\n };\n\n const onSearch = ({\n type,\n search,\n mentionType\n }: {\n type: 'mention' | 'tag';\n search: string;\n mentionType: string;\n }) => {\n if (type === 'mention') {\n const availableMentions = mentionType === 'case' ? caseMentions : userMentions;\n\n const mentions: MenuItemProps[] = availableMentions\n .filter(user => {\n const names = user.primary.toLowerCase().split(' ');\n const searchWords = search.toLowerCase().split(' ');\n return !!searchWords.every((word: string) =>\n names.find((name: string) => name.startsWith(word))\n );\n })\n .map(({ id, primary, secondary, visual, href }) => {\n return {\n id,\n primary,\n secondary:\n secondary !== undefined && !Array.isArray(secondary) ? [secondary] : secondary,\n visual,\n href\n };\n });\n setSearchResults(mentions);\n } else {\n setSearchResults(\n ['cosmos', 'hashtag', 'pega']\n .filter(tag => {\n return tag.toLowerCase().includes(search.toLowerCase());\n })\n .map(tag => ({ id: tag, primary: tag }))\n );\n }\n };\n\n const [loading, setLoading] = useState(false);\n let timeoutId: ReturnType<typeof setTimeout>;\n\n const generateNewPost = useCallback(() => {\n if (!loading && !postGenerated) {\n setLoading(true);\n timeoutId = setTimeout(() => {\n setLoading(false);\n setPostGenerated(true);\n setExtraPosts(posts => [\n ...posts,\n {\n id: createUID(),\n fullname: 'Feed Bot',\n icon: 'robot-solid',\n username: 'feed_bot',\n content: 'This post was loaded after the Feed was scrolled to the bottom!',\n attachments: [],\n replies: []\n }\n ]);\n }, 1000);\n }\n }, [loading, postGenerated]);\n\n useEffect(() => {\n return () => clearTimeout(timeoutId);\n }, []);\n\n const onMentionClick = ({\n id,\n type,\n target,\n closeGlimpse\n }: { id: string; type: string; closeGlimpse?: () => void } & Partial<\n Pick<GlimpseProps, 'target'>\n >) => {\n if (type === 'user') {\n const user = userMentions.find(mention => mention.id === id);\n if (user && target && closeGlimpse) {\n const { primary, secondary, visual, ...restUser } = user;\n\n return (\n <Glimpse\n {...restUser}\n heading={{\n primary,\n secondary: Array.isArray(secondary) ? secondary.join(', ') : secondary,\n visual\n }}\n target={target}\n onDismiss={() => {\n closeGlimpse();\n }}\n placement='right'\n />\n );\n }\n }\n };\n\n const [showLightbox, setShowLightbox] = useState(false);\n const [lightboxImages, setLightboxImages] = useState<LightboxProps['items']>([]);\n const defaultLBIndex = useRef(0);\n const mockAPIImages = useRef<(LightboxItem & { resolved: boolean })[]>([]);\n\n const getLightboxImage = async (id: string) => {\n await new Promise(resolve => {\n setTimeout(() => resolve(0), loadingTimeoutMS);\n });\n const mockImage = mockAPIImages.current.find(image => image.id === id);\n if (mockImage) {\n mockImage.resolved = true;\n }\n return mockImage;\n };\n\n const renderLightbox = (imageAttachments: AttachedFiles[], name: string) => {\n const idx = imageAttachments.findIndex(image => image.name === name);\n defaultLBIndex.current = idx > -1 ? idx : 0;\n\n const images = imageAttachments.map<LightboxItem>(image => {\n const mockImage = mockAPIImages.current.find(mockImg => mockImg.name === image.name);\n if (mockImage?.resolved) return mockImage;\n\n return {\n id: image.thumbnail as string,\n name: image.name,\n description: '',\n src: null\n };\n });\n\n setLightboxImages(images);\n setShowLightbox(true);\n };\n\n const deletePost = (index: number) => {\n setExtraPosts(posts => {\n const postsCopy = [...posts];\n postsCopy.splice(index, 1);\n return [...postsCopy];\n });\n };\n\n return (\n <>\n <Feed\n title='Pulse'\n userInfo={{ username: 'demo_user', fullname: 'Demo User', userStatus: 'active' }}\n searchTypes={['user', 'case']}\n onDecoratorSearch={onSearch}\n searchResults={searchResults}\n onMentionClick={onMentionClick}\n onMentionPreview={onMentionPreview}\n markdownMap={markdownMap}\n interactionRenderers={[MentionButtonConfig, HashtagButtonConfig]}\n filters={filters}\n onFilterChange={toggleFilter}\n loadingPosts={loading}\n onLoadMore={generateNewPost}\n newPostRegion={\n <FeedNewPostDemo\n onSubmit={postEvent => {\n const { value, attachments, recipients, clear } = postEvent;\n\n const images = attachments.filter(\n attachment => attachment.type.includes('image') && attachment.thumbnail\n );\n\n mockAPIImages.current = [\n ...mockAPIImages.current,\n ...images.map(image => {\n return {\n id: image.thumbnail as string,\n name: image.name,\n description: image.name,\n src: image.thumbnail as string,\n metadata: [image.type, <DateTimeDisplay value={new Date()} variant='date' />],\n resolved: false\n };\n })\n ];\n\n attachments.forEach(file => {\n delete file.onDelete;\n file.onPreview = file.type.includes('image')\n ? () => renderLightbox(images, file.name)\n : undefined;\n file.onDownload = () => {};\n });\n\n if (value || attachments.length > 0) {\n setExtraPosts(posts => [\n {\n id: createUID(),\n fullname: 'Demo User',\n username: 'demo_user',\n userStatus: 'active',\n content: value,\n attachments,\n recipients,\n postType: recipients?.length ? 'private' : 'public',\n replies: [],\n postTimestamp: new Date()\n },\n ...posts\n ]);\n clear();\n }\n }}\n />\n }\n posts={extraPosts.map((post, i) => {\n return <FeedPostDemo {...post} key={post.id} onDelete={() => deletePost(i)} />;\n })}\n />\n {showLightbox && (\n <Lightbox\n items={lightboxImages}\n defaultIndex={defaultLBIndex.current}\n cycle\n onNavigate={async (id, index) => {\n if (!lightboxImages[index].src) {\n const updatedImages = [...lightboxImages];\n const requestedImage = await getLightboxImage(id);\n if (requestedImage) {\n updatedImages[index] = requestedImage;\n setLightboxImages(updatedImages);\n }\n }\n }}\n onAfterClose={() => {\n setShowLightbox(false);\n setLightboxImages([]);\n }}\n />\n )}\n </>\n );\n};\n\nexport const FeedWithAppShell: StoryFn = () => {\n return <AppShellDemo appHeader main={<OneColumnPage title='Welcome' a={<FeedDemo />} />} />;\n};\n\nFeedWithAppShell.parameters = {\n layout: 'fullscreen'\n};\n"]}
1
+ {"version":3,"file":"Feed.stories.jsx","sourceRoot":"","sources":["../../../src/social/Feed/Feed.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Meta, StoryFn } from '@storybook/react';\nimport { useState, useRef, useCallback, useEffect } from 'react';\n\nimport { createUID, DateTimeDisplay, Lightbox, OneColumnPage } from '@pega/cosmos-react-core';\nimport type { LightboxItem, LightboxProps, MenuItemProps } from '@pega/cosmos-react-core';\nimport {\n AutopilotConfig,\n Feed,\n MentionButtonConfig,\n HashtagButtonConfig,\n AutopilotGlimpse,\n AutopilotGlimpseProps\n} from '@pega/cosmos-react-social';\nimport type { FeedProps, Filter, AttachedFiles, FeedPostProps } from '@pega/cosmos-react-social';\nimport { Glimpse } from '@pega/cosmos-react-work';\nimport type { GlimpseProps } from '@pega/cosmos-react-work';\n\nimport { loadingTimeoutMS } from '../../core/Progress/Progress.mocks';\nimport { AppShellDemo } from '../../core/AppShell/AppShell.stories';\n\nimport { FeedPostDemo } from './FeedPost.mocks';\nimport { FeedNewPostDemo } from './FeedNewPost.mocks';\nimport { caseMentions, feedPosts, userMentions } from './Feed.mocks';\nimport type { FeedPostDemoProps } from './Feed.mocks';\nimport { FeedReplyDemo } from './FeedReply.mocks';\n\nexport default {\n title: 'Social/Feed',\n component: Feed\n} as Meta;\n\ninterface FeedDemoProps {\n markdownMap?: FeedProps['markdownMap'];\n onMentionPreview?: FeedProps['onMentionPreview'];\n}\n\nexport const FeedDemo: StoryFn<FeedDemoProps> = ({\n markdownMap,\n onMentionPreview\n}: FeedDemoProps) => {\n const [extraPosts, setExtraPosts] = useState<FeedPostDemoProps[]>(() => feedPosts);\n const [postGenerated, setPostGenerated] = useState(false);\n const [searchResults, setSearchResults] = useState<MenuItemProps[]>([]);\n\n const [filters, setFilters] = useState<Filter[]>(\n Array.from({ length: 10 }, (_, index) => {\n return {\n id: `filter-${index + 1}`,\n label: `Filter ${index + 1}`\n };\n })\n );\n\n const toggleFilter = (filterId: string) => {\n const updatedFilters = [...filters];\n const filterToUpdate = updatedFilters.find(x => x.id === filterId);\n\n if (filterToUpdate) filterToUpdate.on = !filterToUpdate.on;\n\n setFilters(updatedFilters);\n };\n\n const onSearch = ({\n type,\n search,\n mentionType\n }: {\n type: 'mention' | 'tag';\n search: string;\n mentionType: string;\n }) => {\n if (type === 'mention') {\n const availableMentions = mentionType === 'case' ? caseMentions : userMentions;\n\n const mentions: MenuItemProps[] = availableMentions\n .filter(user => {\n const names = user.primary.toLowerCase().split(' ');\n const searchWords = search.toLowerCase().split(' ');\n return !!searchWords.every((word: string) =>\n names.find((name: string) => name.startsWith(word))\n );\n })\n .map(({ id, primary, secondary, visual, href }) => {\n return {\n id,\n primary,\n secondary:\n secondary !== undefined && !Array.isArray(secondary) ? [secondary] : secondary,\n visual,\n href\n };\n });\n setSearchResults(mentions);\n } else {\n setSearchResults(\n ['cosmos', 'hashtag', 'pega']\n .filter(tag => {\n return tag.toLowerCase().includes(search.toLowerCase());\n })\n .map(tag => ({ id: tag, primary: tag }))\n );\n }\n };\n\n const [loading, setLoading] = useState(false);\n let timeoutId: ReturnType<typeof setTimeout>;\n\n const generateNewPost = useCallback(() => {\n if (!loading && !postGenerated) {\n setLoading(true);\n timeoutId = setTimeout(() => {\n setLoading(false);\n setPostGenerated(true);\n setExtraPosts(posts => [\n ...posts,\n {\n id: createUID(),\n fullname: 'Feed Bot',\n icon: 'robot-solid',\n username: 'feed_bot',\n content: 'This post was loaded after the Feed was scrolled to the bottom!',\n attachments: [],\n replies: []\n }\n ]);\n }, 1000);\n }\n }, [loading, postGenerated]);\n\n useEffect(() => {\n return () => clearTimeout(timeoutId);\n }, []);\n\n const onAutopilotClick = ({\n target,\n onDismiss\n }: Partial<Pick<AutopilotGlimpseProps, 'target' | 'onDismiss'>>) => {\n if (target && onDismiss) {\n return <AutopilotGlimpse target={target} onDismiss={onDismiss} placement='right' />;\n }\n };\n\n const onMentionClick = ({\n id,\n type,\n target,\n closeGlimpse\n }: { id: string; type: string; closeGlimpse?: () => void } & Partial<\n Pick<GlimpseProps, 'target'>\n >) => {\n if (type === 'user') {\n const user = userMentions.find(mention => mention.id === id);\n if (user && target && closeGlimpse) {\n const { primary, secondary, visual, ...restUser } = user;\n\n return (\n <Glimpse\n {...restUser}\n heading={{\n primary,\n secondary: Array.isArray(secondary) ? secondary.join(', ') : secondary,\n visual\n }}\n target={target}\n onDismiss={() => {\n closeGlimpse();\n }}\n placement='right'\n />\n );\n }\n }\n };\n\n const [showLightbox, setShowLightbox] = useState(false);\n const [lightboxImages, setLightboxImages] = useState<LightboxProps['items']>([]);\n const defaultLBIndex = useRef(0);\n const mockAPIImages = useRef<(LightboxItem & { resolved: boolean })[]>([]);\n\n const getLightboxImage = async (id: string) => {\n await new Promise(resolve => {\n setTimeout(() => resolve(0), loadingTimeoutMS);\n });\n const mockImage = mockAPIImages.current.find(image => image.id === id);\n if (mockImage) {\n mockImage.resolved = true;\n }\n return mockImage;\n };\n\n const renderLightbox = (imageAttachments: AttachedFiles[], name: string) => {\n const idx = imageAttachments.findIndex(image => image.name === name);\n defaultLBIndex.current = idx > -1 ? idx : 0;\n\n const images = imageAttachments.map<LightboxItem>(image => {\n const mockImage = mockAPIImages.current.find(mockImg => mockImg.name === image.name);\n if (mockImage?.resolved) return mockImage;\n\n return {\n id: image.thumbnail as string,\n name: image.name,\n description: '',\n src: null\n };\n });\n\n setLightboxImages(images);\n setShowLightbox(true);\n };\n\n const deletePost = (index: number) => {\n setExtraPosts(posts => {\n const postsCopy = [...posts];\n postsCopy.splice(index, 1);\n return [...postsCopy];\n });\n };\n\n return (\n <>\n <Feed\n title='Pulse'\n userInfo={{ username: 'demo_user', fullname: 'Demo User', userStatus: 'active' }}\n searchTypes={['user', 'case']}\n onDecoratorSearch={onSearch}\n searchResults={searchResults}\n onAutopilotClick={onAutopilotClick}\n onMentionClick={onMentionClick}\n onMentionPreview={onMentionPreview}\n markdownMap={markdownMap}\n interactionRenderers={[MentionButtonConfig, HashtagButtonConfig, AutopilotConfig]}\n filters={filters}\n onFilterChange={toggleFilter}\n loadingPosts={loading}\n onLoadMore={generateNewPost}\n enableAutopilot\n newPostRegion={\n <FeedNewPostDemo\n onSubmit={postEvent => {\n const { value, attachments, recipients, clear } = postEvent;\n\n const images = attachments.filter(\n attachment => attachment.type.includes('image') && attachment.thumbnail\n );\n\n mockAPIImages.current = [\n ...mockAPIImages.current,\n ...images.map(image => {\n return {\n id: image.thumbnail as string,\n name: image.name,\n description: image.name,\n src: image.thumbnail as string,\n metadata: [image.type, <DateTimeDisplay value={new Date()} variant='date' />],\n resolved: false\n };\n })\n ];\n\n attachments.forEach(file => {\n delete file.onDelete;\n file.onPreview = file.type.includes('image')\n ? () => renderLightbox(images, file.name)\n : undefined;\n file.onDownload = () => {};\n });\n\n if (value || attachments.length > 0) {\n const replies: FeedPostProps['replies'] = [];\n\n const triggersAutopilot = value.match(AutopilotConfig.regexPattern);\n if (triggersAutopilot && triggersAutopilot.length && triggersAutopilot.length > 0) {\n replies.push(\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 }\n\n setExtraPosts(posts => [\n {\n id: createUID(),\n fullname: 'Demo User',\n username: 'demo_user',\n userStatus: 'active',\n content: value,\n attachments,\n recipients,\n postType: recipients?.length ? 'private' : 'public',\n replies,\n postTimestamp: new Date()\n },\n ...posts\n ]);\n clear();\n }\n }}\n />\n }\n posts={extraPosts.map((post, i) => {\n return <FeedPostDemo {...post} key={post.id} onDelete={() => deletePost(i)} />;\n })}\n />\n {showLightbox && (\n <Lightbox\n items={lightboxImages}\n defaultIndex={defaultLBIndex.current}\n cycle\n onNavigate={async (id, index) => {\n if (!lightboxImages[index].src) {\n const updatedImages = [...lightboxImages];\n const requestedImage = await getLightboxImage(id);\n if (requestedImage) {\n updatedImages[index] = requestedImage;\n setLightboxImages(updatedImages);\n }\n }\n }}\n onAfterClose={() => {\n setShowLightbox(false);\n setLightboxImages([]);\n }}\n />\n )}\n </>\n );\n};\n\nexport const FeedWithAppShell: StoryFn = () => {\n return <AppShellDemo appHeader main={<OneColumnPage title='Welcome' a={<FeedDemo />} />} />;\n};\n\nFeedWithAppShell.parameters = {\n layout: 'fullscreen'\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"FeedPost.mocks.d.ts","sourceRoot":"","sources":["../../../src/social/Feed/FeedPost.mocks.tsx"],"names":[],"mappings":";AAUA,OAAO,KAAK,EAAE,iBAAiB,EAAmB,MAAM,cAAc,CAAC;AAEvE,eAAO,MAAM,YAAY,4LAetB,iBAAiB,gCAgPnB,CAAC"}
1
+ {"version":3,"file":"FeedPost.mocks.d.ts","sourceRoot":"","sources":["../../../src/social/Feed/FeedPost.mocks.tsx"],"names":[],"mappings":";AAUA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD,eAAO,MAAM,YAAY,4LAetB,iBAAiB,gCA+QnB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { useCallback, useState } from 'react';
2
- import { Avatar, useUID } from '@pega/cosmos-react-core';
3
- import { FeedPost } from '@pega/cosmos-react-social';
2
+ import { Avatar, createUID, useElement, useUID } from '@pega/cosmos-react-core';
3
+ import { AutopilotConfig, AutopilotGlimpse, FeedPost } from '@pega/cosmos-react-social';
4
4
  import { Glimpse } from '@pega/cosmos-react-work';
5
5
  import { FeedReplyDemo } from './FeedReply.mocks';
6
6
  import { availableRecipients, feedUserGlimpseDetails } from './Feed.mocks';
@@ -16,8 +16,8 @@ export const FeedPostDemo = ({ id, fullname, username, icon, content, postType,
16
16
  const [recipientsList, setRecipientsList] = useState([]);
17
17
  const [edited, setEdited] = useState(false);
18
18
  const [editTimestamp, setEditTimestamp] = useState(new Date());
19
- const [glimpseData, setGlimpseData] = useState();
20
- const [glimpseTarget, setGlimpseTarget] = useState();
19
+ const [glimpseContent, setGlimpseContent] = useState();
20
+ const [glimpseTarget, setGlimpseTarget] = useElement(null);
21
21
  const [extraReplies, setExtraReplies] = useState([]);
22
22
  const [replyAttachments, setReplyAttachments] = useState([]);
23
23
  const [replyCount, setReplyCount] = useState(replies ? replies.length : defaultReplies.length);
@@ -107,6 +107,24 @@ export const FeedPostDemo = ({ id, fullname, username, icon, content, postType,
107
107
  }, 1000);
108
108
  }
109
109
  };
110
+ const onUserClick = ({ username: glimpseUsername }, clickEvent) => {
111
+ if (clickEvent) {
112
+ setGlimpseTarget(clickEvent.target);
113
+ if (glimpseUsername === 'Autopilot') {
114
+ setGlimpseContent(<AutopilotGlimpse target={clickEvent.target} onDismiss={() => {
115
+ setGlimpseTarget(null);
116
+ }} placement='right'/>);
117
+ }
118
+ else {
119
+ const userDetails = feedUserGlimpseDetails.find(x => x.username === glimpseUsername);
120
+ if (userDetails) {
121
+ setGlimpseContent(<Glimpse {...userDetails} target={clickEvent.target} onDismiss={() => {
122
+ setGlimpseTarget(null);
123
+ }} placement='right'/>);
124
+ }
125
+ }
126
+ }
127
+ };
110
128
  return (<>
111
129
  <FeedPost id={id} key={key} fullname={fullname} username={username} icon={icon} postTimestamp={postTimestamp} content={postContent} postType={postType} recipients={recipientsList} recipientsCount={recipients ? recipients.length : availableRecipients.length + 1} attachments={postAttachments} liked={liked} userStatus={userStatus} likes={likes} likeCount={likeCount >= 10 ? likeCount + 1 : likeCount} maxContentHeight={80} onLikeClick={({ user }) => {
112
130
  const userLikedIndex = likes.findIndex(x => x.id === user.id);
@@ -123,16 +141,7 @@ export const FeedPostDemo = ({ id, fullname, username, icon, content, postType,
123
141
  setLikeCount(curr => curr + 1);
124
142
  }
125
143
  setLiked(curr => !curr);
126
- }} onCommentClick={() => { }} onLikeCountInteraction={getInitialLikes} likesLoading={likesLoading} onLoadMoreLikes={!additionalLikeAdded ? generateNewLike : undefined} onRecipientInteraction={getInitialRecipients} recipientsLoading={recipientsLoading} onLoadMoreRecipients={!allRecipientsVisible ? getAllRecipients : undefined} onUserClick={({ username: glimpseUsername }, clickEvent) => {
127
- if (clickEvent) {
128
- setGlimpseTarget(clickEvent.target);
129
- setGlimpseData(curr => {
130
- if (curr)
131
- return undefined;
132
- return feedUserGlimpseDetails.find(x => x.username === glimpseUsername);
133
- });
134
- }
135
- }} menuItems={[
144
+ }} onCommentClick={() => { }} onLikeCountInteraction={getInitialLikes} likesLoading={likesLoading} onLoadMoreLikes={!additionalLikeAdded ? generateNewLike : undefined} onRecipientInteraction={getInitialRecipients} recipientsLoading={recipientsLoading} onLoadMoreRecipients={!allRecipientsVisible ? getAllRecipients : undefined} onUserClick={onUserClick} menuItems={[
136
145
  { primary: 'Custom action', id: 'custom', onClick: () => { } },
137
146
  { primary: 'Delete', id: 'delete', onClick: onDelete }
138
147
  ]} onEditSubmit={({ value }) => {
@@ -156,12 +165,18 @@ export const FeedPostDemo = ({ id, fullname, username, icon, content, postType,
156
165
  <FeedReplyDemo key={`replies-${oldReplies.length}`} fullname='Demo User' username='demo_user' userStatus='active' content={replyEvent.value} attachments={replyEvent.attachments} postTimestamp={new Date()}/>
157
166
  ]);
158
167
  setReplyCount(oldReplyCount => oldReplyCount + 1);
168
+ const triggersAutopilot = replyEvent.value.match(AutopilotConfig.regexPattern);
169
+ if (triggersAutopilot && triggersAutopilot.length && triggersAutopilot.length > 0) {
170
+ setExtraReplies(oldReplies => [
171
+ ...oldReplies,
172
+ <FeedReplyDemo key={`autopilot-${createUID()}`} fullname='Autopilot' username='Autopilot' 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!' postTimestamp={new Date()}/>
173
+ ]);
174
+ setReplyCount(oldReplyCount => oldReplyCount + 1);
175
+ }
159
176
  replyEvent.clear();
160
177
  }
161
178
  }}/>
162
- {glimpseTarget && glimpseData && (<Glimpse {...glimpseData} target={glimpseTarget} onDismiss={() => {
163
- setGlimpseData(undefined);
164
- }} placement='right'/>)}
179
+ {glimpseTarget && glimpseContent}
165
180
  </>);
166
181
  };
167
182
  //# sourceMappingURL=FeedPost.mocks.jsx.map
@@ -1 +1 @@
1
- {"version":3,"file":"FeedPost.mocks.jsx","sourceRoot":"","sources":["../../../src/social/Feed/FeedPost.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useState } from 'react';\n\nimport { Avatar, useUID } from '@pega/cosmos-react-core';\nimport type { MenuItemProps } from '@pega/cosmos-react-core';\nimport { FeedPost } from '@pega/cosmos-react-social';\nimport type { AttachedFiles } from '@pega/cosmos-react-social';\nimport { Glimpse } from '@pega/cosmos-react-work';\n\nimport { FeedReplyDemo } from './FeedReply.mocks';\nimport { availableRecipients, feedUserGlimpseDetails } from './Feed.mocks';\nimport type { FeedPostDemoProps, FeedUserGlimpse } from './Feed.mocks';\n\nexport const FeedPostDemo = ({\n id,\n fullname,\n username,\n icon,\n content,\n postType,\n recipients,\n attachments: postAttachments,\n replies,\n postTimestamp = new Date(2022, 0, 1),\n userStatus,\n likes: userLikes,\n likeCount: userLikeCount,\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 [postContent, setPostContent] = useState(content);\n\n const [likes, setLikes] = useState<MenuItemProps[]>([]);\n const [liked, setLiked] = useState(false);\n const [likeCount, setLikeCount] = useState<number>(userLikeCount || 0);\n const [recipientsList, setRecipientsList] = useState<MenuItemProps[]>([]);\n const [edited, setEdited] = useState(false);\n const [editTimestamp, setEditTimestamp] = useState(new Date());\n\n const [glimpseData, setGlimpseData] = useState<FeedUserGlimpse | undefined>();\n const [glimpseTarget, setGlimpseTarget] = useState<HTMLElement>();\n\n const [extraReplies, setExtraReplies] = useState<any[]>([]);\n const [replyAttachments, setReplyAttachments] = useState<AttachedFiles[]>([]);\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\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: AttachedFiles[]) => {\n files.forEach(file => {\n if (file.type.split('/')[0] === 'image') file.thumbnail = URL.createObjectURL(file);\n\n file.onDelete = () => {\n setReplyAttachments?.(current => {\n return current.filter(x => x.name !== file.name);\n });\n };\n });\n\n setReplyAttachments(files);\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='l' name='Generated Like' />,\n id: 'generatedLike'\n }\n ]);\n setAdditionalLikeAdded(true);\n }, 1000);\n }\n }, [likesLoading]);\n\n const getInitialRecipients = () => {\n if (recipientsList.length) return;\n\n setRecipientsList(\n recipients ||\n availableRecipients.slice(0, !allRecipientsVisible ? 10 : availableRecipients.length)\n );\n };\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='l' name='Additional Recipient' />,\n value: 'additionalRecipient',\n id: 'additionalRecipient'\n }\n ]);\n setAllRecipientsVisible(true);\n }, 1000);\n }\n };\n\n return (\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 postType={postType}\n recipients={recipientsList}\n recipientsCount={recipients ? recipients.length : availableRecipients.length + 1}\n attachments={postAttachments}\n liked={liked}\n userStatus={userStatus}\n likes={likes}\n likeCount={likeCount >= 10 ? likeCount + 1 : likeCount}\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 setLikeCount(curr => curr - 1);\n } else {\n setLikes(oldLikes => [user, ...oldLikes]);\n setLikeCount(curr => curr + 1);\n }\n setLiked(curr => !curr);\n }}\n onCommentClick={() => {}}\n onLikeCountInteraction={getInitialLikes}\n likesLoading={likesLoading}\n onLoadMoreLikes={!additionalLikeAdded ? generateNewLike : undefined}\n onRecipientInteraction={getInitialRecipients}\n recipientsLoading={recipientsLoading}\n onLoadMoreRecipients={!allRecipientsVisible ? getAllRecipients : undefined}\n onUserClick={({ username: glimpseUsername }, clickEvent) => {\n if (clickEvent) {\n setGlimpseTarget(clickEvent.target as HTMLElement);\n setGlimpseData(curr => {\n if (curr) return undefined;\n return feedUserGlimpseDetails.find(x => x.username === glimpseUsername);\n });\n }\n }}\n menuItems={[\n { primary: 'Custom action', id: 'custom', onClick: () => {} },\n { primary: 'Delete', id: 'delete', onClick: onDelete }\n ]}\n onEditSubmit={({ value }) => {\n setPostContent(value);\n setEdited(true);\n setEditTimestamp(new Date());\n }}\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 onSubmit: replyEvent => {\n setReplyAttachments([]);\n\n replyEvent.attachments.forEach(file => {\n delete file.onDelete;\n file.onPreview = () => {};\n file.onDownload = () => {};\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 replyEvent.clear();\n }\n }}\n />\n {glimpseTarget && glimpseData && (\n <Glimpse\n {...glimpseData}\n target={glimpseTarget}\n onDismiss={() => {\n setGlimpseData(undefined);\n }}\n placement='right'\n />\n )}\n </>\n );\n};\n"]}
1
+ {"version":3,"file":"FeedPost.mocks.jsx","sourceRoot":"","sources":["../../../src/social/Feed/FeedPost.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { ReactNode, useCallback, useState } from 'react';\n\nimport { Avatar, createUID, useElement, useUID } from '@pega/cosmos-react-core';\nimport type { MenuItemProps } from '@pega/cosmos-react-core';\nimport { AutopilotConfig, AutopilotGlimpse, FeedPost } from '@pega/cosmos-react-social';\nimport type { AttachedFiles, FeedPostProps } from '@pega/cosmos-react-social';\nimport { Glimpse } from '@pega/cosmos-react-work';\n\nimport { FeedReplyDemo } from './FeedReply.mocks';\nimport { availableRecipients, feedUserGlimpseDetails } from './Feed.mocks';\nimport type { FeedPostDemoProps } from './Feed.mocks';\n\nexport const FeedPostDemo = ({\n id,\n fullname,\n username,\n icon,\n content,\n postType,\n recipients,\n attachments: postAttachments,\n replies,\n postTimestamp = new Date(2022, 0, 1),\n userStatus,\n likes: userLikes,\n likeCount: userLikeCount,\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 [postContent, setPostContent] = useState(content);\n\n const [likes, setLikes] = useState<MenuItemProps[]>([]);\n const [liked, setLiked] = useState(false);\n const [likeCount, setLikeCount] = useState<number>(userLikeCount || 0);\n const [recipientsList, setRecipientsList] = useState<MenuItemProps[]>([]);\n const [edited, setEdited] = useState(false);\n const [editTimestamp, setEditTimestamp] = useState(new Date());\n\n const [glimpseContent, setGlimpseContent] = useState<ReactNode | undefined>();\n const [glimpseTarget, setGlimpseTarget] = useElement<HTMLElement>(null);\n\n const [extraReplies, setExtraReplies] = useState<any[]>([]);\n const [replyAttachments, setReplyAttachments] = useState<AttachedFiles[]>([]);\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\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: AttachedFiles[]) => {\n files.forEach(file => {\n if (file.type.split('/')[0] === 'image') file.thumbnail = URL.createObjectURL(file);\n\n file.onDelete = () => {\n setReplyAttachments?.(current => {\n return current.filter(x => x.name !== file.name);\n });\n };\n });\n\n setReplyAttachments(files);\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='l' name='Generated Like' />,\n id: 'generatedLike'\n }\n ]);\n setAdditionalLikeAdded(true);\n }, 1000);\n }\n }, [likesLoading]);\n\n const getInitialRecipients = () => {\n if (recipientsList.length) return;\n\n setRecipientsList(\n recipients ||\n availableRecipients.slice(0, !allRecipientsVisible ? 10 : availableRecipients.length)\n );\n };\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='l' 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 return (\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 postType={postType}\n recipients={recipientsList}\n recipientsCount={recipients ? recipients.length : availableRecipients.length + 1}\n attachments={postAttachments}\n liked={liked}\n userStatus={userStatus}\n likes={likes}\n likeCount={likeCount >= 10 ? likeCount + 1 : likeCount}\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 setLikeCount(curr => curr - 1);\n } else {\n setLikes(oldLikes => [user, ...oldLikes]);\n setLikeCount(curr => curr + 1);\n }\n setLiked(curr => !curr);\n }}\n onCommentClick={() => {}}\n onLikeCountInteraction={getInitialLikes}\n likesLoading={likesLoading}\n onLoadMoreLikes={!additionalLikeAdded ? generateNewLike : undefined}\n onRecipientInteraction={getInitialRecipients}\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 onEditSubmit={({ value }) => {\n setPostContent(value);\n setEdited(true);\n setEditTimestamp(new Date());\n }}\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 onSubmit: replyEvent => {\n setReplyAttachments([]);\n\n replyEvent.attachments.forEach(file => {\n delete file.onDelete;\n file.onPreview = () => {};\n file.onDownload = () => {};\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 (triggersAutopilot && triggersAutopilot.length && triggersAutopilot.length > 0) {\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 }\n }}\n />\n {glimpseTarget && glimpseContent}\n </>\n );\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"FeedReply.mocks.d.ts","sourceRoot":"","sources":["../../../src/social/Feed/FeedReply.mocks.tsx"],"names":[],"mappings":";AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAMhE,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IACrC,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IACrC,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;IAC5C,aAAa,CAAC,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;IAChD,UAAU,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;CAC3C;AAED,eAAO,MAAM,aAAa,4EAOvB,kBAAkB,gCAuGpB,CAAC"}
1
+ {"version":3,"file":"FeedReply.mocks.d.ts","sourceRoot":"","sources":["../../../src/social/Feed/FeedReply.mocks.tsx"],"names":[],"mappings":";AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAKhE,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IACrC,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IACrC,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;IAC5C,aAAa,CAAC,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;IAChD,UAAU,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;CAC3C;AAED,eAAO,MAAM,aAAa,4EAOvB,kBAAkB,gCAwHpB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { useState, useCallback } from 'react';
2
- import { Avatar, useUID } from '@pega/cosmos-react-core';
3
- import { FeedReply } from '@pega/cosmos-react-social';
2
+ import { Avatar, useElement, useUID } from '@pega/cosmos-react-core';
3
+ import { AutopilotGlimpse, FeedReply } from '@pega/cosmos-react-social';
4
4
  import { Glimpse } from '@pega/cosmos-react-work';
5
5
  import { feedUserGlimpseDetails } from './Feed.mocks';
6
6
  export const FeedReplyDemo = ({ fullname, username, content, attachments, postTimestamp = new Date(2022, 0, 1), userStatus }) => {
@@ -11,8 +11,8 @@ export const FeedReplyDemo = ({ fullname, username, content, attachments, postTi
11
11
  const [replyContent, setReplyContent] = useState(content);
12
12
  const [edited, setEdited] = useState(false);
13
13
  const [editTimestamp, setEditTimestamp] = useState(new Date());
14
- const [glimpseData, setGlimpseData] = useState();
15
- const [glimpseTarget, setGlimpseTarget] = useState();
14
+ const [glimpseContent, setGlimpseContent] = useState();
15
+ const [glimpseTarget, setGlimpseTarget] = useElement(null);
16
16
  const [additionalLikeAdded, setAdditionalLikeAdded] = useState(false);
17
17
  const getInitialLikes = () => {
18
18
  if (likes.length)
@@ -38,6 +38,24 @@ export const FeedReplyDemo = ({ fullname, username, content, attachments, postTi
38
38
  }, 1000);
39
39
  }
40
40
  }, [likesLoading]);
41
+ const onUserClick = ({ username: glimpseUsername }, clickEvent) => {
42
+ if (clickEvent) {
43
+ setGlimpseTarget(clickEvent.target);
44
+ if (glimpseUsername === 'Autopilot') {
45
+ setGlimpseContent(<AutopilotGlimpse target={clickEvent.target} onDismiss={() => {
46
+ setGlimpseTarget(null);
47
+ }} placement='right'/>);
48
+ }
49
+ else {
50
+ const userDetails = feedUserGlimpseDetails.find(x => x.username === glimpseUsername);
51
+ if (userDetails) {
52
+ setGlimpseContent(<Glimpse {...userDetails} target={clickEvent.target} onDismiss={() => {
53
+ setGlimpseTarget(null);
54
+ }} placement='right'/>);
55
+ }
56
+ }
57
+ }
58
+ };
41
59
  return (<>
42
60
  <FeedReply id={key} key={key} postTimestamp={postTimestamp} content={replyContent} attachments={attachments} username={username} fullname={fullname} liked={liked} userStatus={userStatus} likes={likes} likeCount={likeCount >= 10 ? likeCount + 1 : likeCount} maxContentHeight={40} menuItems={[{ primary: 'Custom action', id: 'custom', onClick: () => { } }]} onEditSubmit={({ value }) => {
43
61
  setReplyContent(value);
@@ -58,19 +76,8 @@ export const FeedReplyDemo = ({ fullname, username, content, attachments, postTi
58
76
  setLikeCount(curr => curr + 1);
59
77
  }
60
78
  setLiked(curr => !curr);
61
- }} onLikeCountInteraction={getInitialLikes} onLoadMoreLikes={!additionalLikeAdded ? generateNewLike : undefined} likesLoading={likesLoading} onUserClick={({ username: glimpseUsername }, clickEvent) => {
62
- if (clickEvent) {
63
- setGlimpseTarget(clickEvent.target);
64
- setGlimpseData(curr => {
65
- if (curr)
66
- return undefined;
67
- return feedUserGlimpseDetails.find(x => x.username === glimpseUsername);
68
- });
69
- }
70
- }}/>
71
- {glimpseTarget && glimpseData && (<Glimpse {...glimpseData} target={glimpseTarget} onDismiss={() => {
72
- setGlimpseData(undefined);
73
- }} placement='right'/>)}
79
+ }} onLikeCountInteraction={getInitialLikes} onLoadMoreLikes={!additionalLikeAdded ? generateNewLike : undefined} likesLoading={likesLoading} onUserClick={onUserClick}/>
80
+ {glimpseTarget && glimpseContent}
74
81
  </>);
75
82
  };
76
83
  //# sourceMappingURL=FeedReply.mocks.jsx.map
@@ -1 +1 @@
1
- {"version":3,"file":"FeedReply.mocks.jsx","sourceRoot":"","sources":["../../../src/social/Feed/FeedReply.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState, useCallback } from 'react';\n\nimport { Avatar, useUID } from '@pega/cosmos-react-core';\nimport type { MenuItemProps } from '@pega/cosmos-react-core';\nimport { FeedReply } from '@pega/cosmos-react-social';\nimport type { FeedReplyProps } from '@pega/cosmos-react-social';\nimport { Glimpse } from '@pega/cosmos-react-work';\n\nimport { feedUserGlimpseDetails } from './Feed.mocks';\nimport type { FeedUserGlimpse } from './Feed.mocks';\n\ninterface FeedReplyDemoProps {\n fullname: FeedReplyProps['fullname'];\n username: FeedReplyProps['username'];\n content: FeedReplyProps['content'];\n attachments?: FeedReplyProps['attachments'];\n postTimestamp?: FeedReplyProps['postTimestamp'];\n userStatus?: FeedReplyProps['userStatus'];\n}\n\nexport const FeedReplyDemo = ({\n fullname,\n username,\n content,\n attachments,\n postTimestamp = new Date(2022, 0, 1),\n userStatus\n}: FeedReplyDemoProps) => {\n const key = useUID();\n const [likes, setLikes] = useState<MenuItemProps[]>([]);\n const [liked, setLiked] = useState(false);\n const [likeCount, setLikeCount] = useState(0);\n const [replyContent, setReplyContent] = useState(content);\n const [edited, setEdited] = useState(false);\n const [editTimestamp, setEditTimestamp] = useState(new Date());\n const [glimpseData, setGlimpseData] = useState<FeedUserGlimpse | undefined>();\n const [glimpseTarget, setGlimpseTarget] = useState<HTMLElement>();\n const [additionalLikeAdded, setAdditionalLikeAdded] = useState(false);\n\n const getInitialLikes = () => {\n if (likes.length) return;\n\n setLikes([]);\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 added after the onLoadMore callback triggered'],\n visual: <Avatar size='l' name='Generated Like' />,\n id: 'generatedLike'\n }\n ]);\n setAdditionalLikeAdded(true);\n }, 1000);\n }\n }, [likesLoading]);\n\n return (\n <>\n <FeedReply\n id={key}\n key={key}\n postTimestamp={postTimestamp}\n content={replyContent}\n attachments={attachments}\n username={username}\n fullname={fullname}\n liked={liked}\n userStatus={userStatus}\n likes={likes}\n likeCount={likeCount >= 10 ? likeCount + 1 : likeCount}\n maxContentHeight={40}\n menuItems={[{ primary: 'Custom action', id: 'custom', onClick: () => {} }]}\n onEditSubmit={({ value }) => {\n setReplyContent(value);\n setEdited(true);\n setEditTimestamp(new Date());\n }}\n edited={edited}\n editTimestamp={editTimestamp}\n onCommentClick={() => {}}\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 setLikeCount(curr => curr - 1);\n } else {\n setLikes(oldLikes => [user, ...oldLikes]);\n setLikeCount(curr => curr + 1);\n }\n setLiked(curr => !curr);\n }}\n onLikeCountInteraction={getInitialLikes}\n onLoadMoreLikes={!additionalLikeAdded ? generateNewLike : undefined}\n likesLoading={likesLoading}\n onUserClick={({ username: glimpseUsername }, clickEvent) => {\n if (clickEvent) {\n setGlimpseTarget(clickEvent.target as HTMLElement);\n setGlimpseData(curr => {\n if (curr) return undefined;\n return feedUserGlimpseDetails.find(x => x.username === glimpseUsername);\n });\n }\n }}\n />\n {glimpseTarget && glimpseData && (\n <Glimpse\n {...glimpseData}\n target={glimpseTarget}\n onDismiss={() => {\n setGlimpseData(undefined);\n }}\n placement='right'\n />\n )}\n </>\n );\n};\n"]}
1
+ {"version":3,"file":"FeedReply.mocks.jsx","sourceRoot":"","sources":["../../../src/social/Feed/FeedReply.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState, useCallback, ReactNode } from 'react';\n\nimport { Avatar, useElement, useUID } from '@pega/cosmos-react-core';\nimport type { MenuItemProps } from '@pega/cosmos-react-core';\nimport { AutopilotGlimpse, FeedReply } from '@pega/cosmos-react-social';\nimport type { FeedReplyProps } from '@pega/cosmos-react-social';\nimport { Glimpse } from '@pega/cosmos-react-work';\n\nimport { feedUserGlimpseDetails } from './Feed.mocks';\n\ninterface FeedReplyDemoProps {\n fullname: FeedReplyProps['fullname'];\n username: FeedReplyProps['username'];\n content: FeedReplyProps['content'];\n attachments?: FeedReplyProps['attachments'];\n postTimestamp?: FeedReplyProps['postTimestamp'];\n userStatus?: FeedReplyProps['userStatus'];\n}\n\nexport const FeedReplyDemo = ({\n fullname,\n username,\n content,\n attachments,\n postTimestamp = new Date(2022, 0, 1),\n userStatus\n}: FeedReplyDemoProps) => {\n const key = useUID();\n const [likes, setLikes] = useState<MenuItemProps[]>([]);\n const [liked, setLiked] = useState(false);\n const [likeCount, setLikeCount] = useState(0);\n const [replyContent, setReplyContent] = useState(content);\n const [edited, setEdited] = useState(false);\n const [editTimestamp, setEditTimestamp] = useState(new Date());\n const [glimpseContent, setGlimpseContent] = useState<ReactNode | undefined>();\n const [glimpseTarget, setGlimpseTarget] = useElement<HTMLElement>(null);\n const [additionalLikeAdded, setAdditionalLikeAdded] = useState(false);\n\n const getInitialLikes = () => {\n if (likes.length) return;\n\n setLikes([]);\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 added after the onLoadMore callback triggered'],\n visual: <Avatar size='l' name='Generated Like' />,\n id: 'generatedLike'\n }\n ]);\n setAdditionalLikeAdded(true);\n }, 1000);\n }\n }, [likesLoading]);\n\n const onUserClick: FeedReplyProps['onUserClick'] = (\n { username: glimpseUsername },\n clickEvent\n ) => {\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 return (\n <>\n <FeedReply\n id={key}\n key={key}\n postTimestamp={postTimestamp}\n content={replyContent}\n attachments={attachments}\n username={username}\n fullname={fullname}\n liked={liked}\n userStatus={userStatus}\n likes={likes}\n likeCount={likeCount >= 10 ? likeCount + 1 : likeCount}\n maxContentHeight={40}\n menuItems={[{ primary: 'Custom action', id: 'custom', onClick: () => {} }]}\n onEditSubmit={({ value }) => {\n setReplyContent(value);\n setEdited(true);\n setEditTimestamp(new Date());\n }}\n edited={edited}\n editTimestamp={editTimestamp}\n onCommentClick={() => {}}\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 setLikeCount(curr => curr - 1);\n } else {\n setLikes(oldLikes => [user, ...oldLikes]);\n setLikeCount(curr => curr + 1);\n }\n setLiked(curr => !curr);\n }}\n onLikeCountInteraction={getInitialLikes}\n onLoadMoreLikes={!additionalLikeAdded ? generateNewLike : undefined}\n likesLoading={likesLoading}\n onUserClick={onUserClick}\n />\n {glimpseTarget && glimpseContent}\n </>\n );\n};\n"]}