@pega/cosmos-react-demos 3.0.0-dev.18.2 → 3.0.0-dev.19.0

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 (111) hide show
  1. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.mocks.d.ts +1 -1
  2. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.mocks.d.ts.map +1 -1
  3. package/jsx/core/AppShell/AppShell.stories.jsx +2 -2
  4. package/jsx/core/AppShell/AppShell.stories.jsx.map +1 -1
  5. package/jsx/core/PageTemplates/PageTemplates.mocks.d.ts +1 -1
  6. package/jsx/core/PageTemplates/PageTemplates.mocks.d.ts.map +1 -1
  7. package/jsx/core/Tree/Tree.mocks.d.ts +1 -1
  8. package/jsx/core/Tree/Tree.mocks.d.ts.map +1 -1
  9. package/jsx/cs/CSCaseView/{CSCaseView.mocks.d.ts → CSAppShell.mocks.d.ts} +8 -1
  10. package/jsx/cs/CSCaseView/CSAppShell.mocks.d.ts.map +1 -0
  11. package/jsx/cs/CSCaseView/{CSCaseView.mocks.jsx → CSAppShell.mocks.jsx} +52 -6
  12. package/jsx/cs/CSCaseView/CSAppShell.mocks.jsx.map +1 -0
  13. package/jsx/cs/CSCaseView/CSAppShell.stories.d.ts.map +1 -1
  14. package/jsx/cs/CSCaseView/CSAppShell.stories.jsx +11 -35
  15. package/jsx/cs/CSCaseView/CSAppShell.stories.jsx.map +1 -1
  16. package/jsx/cs/TaskManager/TaskManager.mocks.d.ts +12 -0
  17. package/jsx/cs/TaskManager/TaskManager.mocks.d.ts.map +1 -1
  18. package/jsx/cs/TaskManager/TaskManager.mocks.js +86 -0
  19. package/jsx/cs/TaskManager/TaskManager.mocks.js.map +1 -1
  20. package/jsx/cs/TaskManager/TaskManager.stories.d.ts.map +1 -1
  21. package/jsx/cs/TaskManager/TaskManager.stories.jsx +81 -20
  22. package/jsx/cs/TaskManager/TaskManager.stories.jsx.map +1 -1
  23. package/jsx/cs/TaskManager/TaskManager.styles.js +2 -1
  24. package/jsx/cs/TaskManager/TaskManager.styles.js.map +1 -1
  25. package/jsx/rte/RichTextEditor/RichTextViewer.stories.jsx +1 -1
  26. package/jsx/rte/RichTextEditor/RichTextViewer.stories.jsx.map +1 -1
  27. package/jsx/social/Email/Email.mocks.d.ts +24 -1
  28. package/jsx/social/Email/Email.mocks.d.ts.map +1 -1
  29. package/jsx/social/Email/Email.mocks.jsx +107 -0
  30. package/jsx/social/Email/Email.mocks.jsx.map +1 -1
  31. package/jsx/social/Email/Email.stories.d.ts +22 -23
  32. package/jsx/social/Email/Email.stories.d.ts.map +1 -1
  33. package/jsx/social/Email/Email.stories.jsx +149 -369
  34. package/jsx/social/Email/Email.stories.jsx.map +1 -1
  35. package/jsx/social/Email/Email.styles.d.ts +0 -1
  36. package/jsx/social/Email/Email.styles.d.ts.map +1 -1
  37. package/jsx/social/Email/Email.styles.js +0 -3
  38. package/jsx/social/Email/Email.styles.js.map +1 -1
  39. package/jsx/work/Confirmation/Confirmation.stories.d.ts +3 -0
  40. package/jsx/work/Confirmation/Confirmation.stories.d.ts.map +1 -1
  41. package/jsx/work/Confirmation/Confirmation.stories.jsx +12 -8
  42. package/jsx/work/Confirmation/Confirmation.stories.jsx.map +1 -1
  43. package/jsx/work/Details/Details.stories.d.ts.map +1 -1
  44. package/jsx/work/Details/Details.stories.jsx +53 -64
  45. package/jsx/work/Details/Details.stories.jsx.map +1 -1
  46. package/jsx/work/Tasks/Tasks.stories.d.ts +4 -1
  47. package/jsx/work/Tasks/Tasks.stories.d.ts.map +1 -1
  48. package/jsx/work/Tasks/Tasks.stories.jsx +20 -9
  49. package/jsx/work/Tasks/Tasks.stories.jsx.map +1 -1
  50. package/jsx/wss/QuickCreate/QuickCreate.stories.d.ts +10 -0
  51. package/jsx/wss/QuickCreate/QuickCreate.stories.d.ts.map +1 -0
  52. package/jsx/wss/QuickCreate/QuickCreate.stories.jsx +37 -0
  53. package/jsx/wss/QuickCreate/QuickCreate.stories.jsx.map +1 -0
  54. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.mocks.d.ts +1 -1
  55. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.mocks.d.ts.map +1 -1
  56. package/lib/core/AppShell/AppShell.stories.js +2 -2
  57. package/lib/core/AppShell/AppShell.stories.js.map +1 -1
  58. package/lib/core/PageTemplates/PageTemplates.mocks.d.ts +1 -1
  59. package/lib/core/PageTemplates/PageTemplates.mocks.d.ts.map +1 -1
  60. package/lib/core/Tree/Tree.mocks.d.ts +1 -1
  61. package/lib/core/Tree/Tree.mocks.d.ts.map +1 -1
  62. package/lib/cs/CSCaseView/{CSCaseView.mocks.d.ts → CSAppShell.mocks.d.ts} +8 -1
  63. package/lib/cs/CSCaseView/CSAppShell.mocks.d.ts.map +1 -0
  64. package/lib/cs/CSCaseView/{CSCaseView.mocks.js → CSAppShell.mocks.js} +46 -6
  65. package/lib/cs/CSCaseView/CSAppShell.mocks.js.map +1 -0
  66. package/lib/cs/CSCaseView/CSAppShell.stories.d.ts.map +1 -1
  67. package/lib/cs/CSCaseView/CSAppShell.stories.js +15 -36
  68. package/lib/cs/CSCaseView/CSAppShell.stories.js.map +1 -1
  69. package/lib/cs/TaskManager/TaskManager.mocks.d.ts +12 -0
  70. package/lib/cs/TaskManager/TaskManager.mocks.d.ts.map +1 -1
  71. package/lib/cs/TaskManager/TaskManager.mocks.js +86 -0
  72. package/lib/cs/TaskManager/TaskManager.mocks.js.map +1 -1
  73. package/lib/cs/TaskManager/TaskManager.stories.d.ts.map +1 -1
  74. package/lib/cs/TaskManager/TaskManager.stories.js +81 -20
  75. package/lib/cs/TaskManager/TaskManager.stories.js.map +1 -1
  76. package/lib/cs/TaskManager/TaskManager.styles.js +2 -1
  77. package/lib/cs/TaskManager/TaskManager.styles.js.map +1 -1
  78. package/lib/rte/RichTextEditor/RichTextViewer.stories.js +1 -1
  79. package/lib/rte/RichTextEditor/RichTextViewer.stories.js.map +1 -1
  80. package/lib/social/Email/Email.mocks.d.ts +24 -1
  81. package/lib/social/Email/Email.mocks.d.ts.map +1 -1
  82. package/lib/social/Email/Email.mocks.js +108 -1
  83. package/lib/social/Email/Email.mocks.js.map +1 -1
  84. package/lib/social/Email/Email.stories.d.ts +22 -23
  85. package/lib/social/Email/Email.stories.d.ts.map +1 -1
  86. package/lib/social/Email/Email.stories.js +148 -363
  87. package/lib/social/Email/Email.stories.js.map +1 -1
  88. package/lib/social/Email/Email.styles.d.ts +0 -1
  89. package/lib/social/Email/Email.styles.d.ts.map +1 -1
  90. package/lib/social/Email/Email.styles.js +0 -3
  91. package/lib/social/Email/Email.styles.js.map +1 -1
  92. package/lib/work/Confirmation/Confirmation.stories.d.ts +3 -0
  93. package/lib/work/Confirmation/Confirmation.stories.d.ts.map +1 -1
  94. package/lib/work/Confirmation/Confirmation.stories.js +12 -8
  95. package/lib/work/Confirmation/Confirmation.stories.js.map +1 -1
  96. package/lib/work/Details/Details.stories.d.ts.map +1 -1
  97. package/lib/work/Details/Details.stories.js +14 -59
  98. package/lib/work/Details/Details.stories.js.map +1 -1
  99. package/lib/work/Tasks/Tasks.stories.d.ts +4 -1
  100. package/lib/work/Tasks/Tasks.stories.d.ts.map +1 -1
  101. package/lib/work/Tasks/Tasks.stories.js +20 -9
  102. package/lib/work/Tasks/Tasks.stories.js.map +1 -1
  103. package/lib/wss/QuickCreate/QuickCreate.stories.d.ts +10 -0
  104. package/lib/wss/QuickCreate/QuickCreate.stories.d.ts.map +1 -0
  105. package/lib/wss/QuickCreate/QuickCreate.stories.js +36 -0
  106. package/lib/wss/QuickCreate/QuickCreate.stories.js.map +1 -0
  107. package/package.json +10 -10
  108. package/jsx/cs/CSCaseView/CSCaseView.mocks.d.ts.map +0 -1
  109. package/jsx/cs/CSCaseView/CSCaseView.mocks.jsx.map +0 -1
  110. package/lib/cs/CSCaseView/CSCaseView.mocks.d.ts.map +0 -1
  111. package/lib/cs/CSCaseView/CSCaseView.mocks.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Email.stories.js","sourceRoot":"","sources":["../../../src/social/Email/Email.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["// cSpell:words calibri Trichy Nagercoil\nimport { useState, useRef, useCallback, useEffect, createRef, RefObject, MouseEvent } from 'react';\nimport { action } from '@storybook/addon-actions';\nimport { Meta, Story } from '@storybook/react';\n\nimport {\n Card,\n CardContent,\n createUID,\n MenuButton,\n MenuItemProps,\n MenuProps,\n Icon,\n registerIcon,\n Flex,\n Button,\n menuHelpers,\n CardHeader,\n Text,\n SummaryList,\n Grid,\n FieldValueList,\n SummaryListItem,\n StyledLabel\n} from '@pega/cosmos-react-core';\nimport * as filterIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/filter.icon';\nimport {\n Email as EmailComponent,\n EmailConversation,\n EmailComposer,\n EmailShell,\n EmailSummaryItem,\n EmailSummaryList,\n EntityList,\n EmailProps,\n EmailConversationProps,\n EmailComposerProps,\n EntityListProps,\n EmailManager,\n EmailSummaryListProps,\n EmailSummaryItemProps\n} from '@pega/cosmos-react-social';\nimport {\n EmailComposerFieldType,\n EmailComposerValueType,\n EmailComposerHandleValue,\n ContextMenuProps\n} from '@pega/cosmos-react-social/lib/components/Email/Email.types';\n\nimport { TagsDemo } from '../../work/Tags/Tags.stories';\nimport { StakeHoldersDemo } from '../../work/Stakeholders/Stakeholders.stories';\nimport { MockSummaryList } from '../../work/CaseView/CaseView.mocks';\nimport { AttachmentsMock } from '../../work/CaseView/Attachments.mocks';\nimport { AppShellDemo } from '../../core/AppShell/AppShell.stories';\n\nimport {\n bccParticipants,\n ccParticipants,\n emailBodyContent,\n participants,\n toParticipants,\n emailAttachments,\n EntityListMockData,\n viewAnalysisEmailHeaderMock,\n topicListMock,\n emailActions,\n generateEmailConversationParticipants,\n templates,\n handleExternalEntry,\n emailDemoActions,\n LaunchAction,\n baseComposerProps,\n sentiment,\n emailSummaryItems,\n mockEmails,\n mockSuggestedReplies,\n mockEmailBodyTemplates,\n forwardedContent,\n getCompositeId,\n emptyFieldErrorMessage,\n fieldValidation\n} from './Email.mocks';\nimport { StyledEmailCardContent, StyledViewAnalysis } from './Email.styles';\n\nregisterIcon(filterIcon);\n\nexport default {\n title: 'Social/Email',\n component: EmailComponent\n} as Meta;\n\n/*\n\n _____ _ _\n | ____|_ __ ___ __ _(_) |\n | _| | '_ ` _ \\ / _` | | |\n | |___| | | | | | (_| | | |\n |_____|_| |_| |_|\\__,_|_|_|\n\n\n*/\n\ninterface EmailContentDemo {\n forwardedContent?: string;\n}\n\nexport const Email: Story<EmailContentDemo> = (args: EmailContentDemo) => {\n return (\n <Card>\n <StyledEmailCardContent>\n <EmailComponent\n id={createUID()}\n timeStamp='2022-02-24T09:12'\n from={mockEmails['Laura Stevens']}\n cc={[mockEmails['Adam Gillchrist'], mockEmails['John Paul']]}\n bcc={[mockEmails['Anton, Randy'], mockEmails['Hugh Phillips']]}\n to={[mockEmails['Sara Davis'], mockEmails['John Brown'], mockEmails['Joe Stevens']]}\n body='<div> Hi Team, <br /> <br /> <div>Please find the below conversation &amp; let us know the best fare (including taxes) per person.</div><br />Regards, <br /> Laura Stevens </div>'\n forwardedContent={args.forwardedContent}\n subject='Regarding flight booking'\n onReply={action('On reply')}\n onReplyAll={action('On reply all')}\n onForward={action('On forward')}\n onSuggestionClick={action('On Suggested reply clicked')}\n sentiment={{\n variant: 'positive'\n }}\n actions={emailActions}\n suggestions={mockSuggestedReplies}\n attachments={[\n {\n id: 'attachment_0',\n value: 'https://pega.com/media/document.doc',\n displayText: 'Policy document'\n },\n {\n id: 'attachment_1',\n value: 'https://pbs.twimg.com/media/ENNN5PAXkAE-hag.jpg',\n displayText: 'E-Ticket'\n }\n ].map(attachment => {\n return {\n ...attachment,\n onDownload: action('On attachment download'),\n onPreview: action('On attachment preview')\n };\n })}\n />\n </StyledEmailCardContent>\n </Card>\n );\n};\n\nEmail.args = {\n // eslint-disable-next-line demo-patterns/literal-args\n forwardedContent: `\n <div id=\"pega-email-message-forward\" style=\"font-family:OpenSans,sans-serif; border-left: 1px solid #c4c4c4; padding-left: 8px;\">\n <div>\n <p class=\"pega-email-forward-header\" style=\"font-size:smaller;color:#90909D;\">--------------------Forwarded message--------------------<br />From: Person, Example &lt;example.person@pega.com&gt; &nbsp;<br />Date: Feb 23, 2022 9:29:59 PM&nbsp;<br />Subject: Regarding flight booking &nbsp;<br />To: Laura, Stevens &lt;laurastevens@example.com&gt;<br />&nbsp;</p>\n </div>\n <div class=\"pega-email-forward-content\">\n <div class=\"WordSection1\">\n <p class=\"MsoNormal\" style=\"margin:0cm;font-size:11pt;font-family:'calibri' , sans-serif\"><span style=\"color:black\">Hi,&nbsp; </span></p>\n <p class=\"MsoNormal\" style=\"margin:0cm;font-size:11pt;font-family:'calibri' , sans-serif\"><span style=\"color:black\">&nbsp;&nbsp; </span></p>\n <p class=\"MsoNormal\" style=\"margin:0cm;font-size:11pt;font-family:'calibri' , sans-serif\"><span style=\"color:black\">I need to book a flight from Hyderabad to Chennai.&nbsp; </span></p>\n <p class=\"MsoNormal\" style=\"margin:0cm;font-size:11pt;font-family:'calibri' , sans-serif\"><span style=\"color:black\">Please let me know the fare including taxes per each person. </span></p>\n <p class=\"MsoNormal\" style=\"margin:0cm;font-size:11pt;font-family:'calibri' , sans-serif\"><span style=\"color:black\">&nbsp;&nbsp; </span></p>\n <p class=\"MsoNormal\" style=\"margin:0cm;font-size:11pt;font-family:'calibri' , sans-serif\"><span style=\"color:black\">Thanks,&nbsp; </span></p>\n <p class=\"MsoNormal\" style=\"margin:0cm;font-size:11pt;font-family:'calibri' , sans-serif\"><span style=\"color:black\">Goutham </span></p>\n </div>\n </div>\n </div>\n`\n};\n\nEmail.argTypes = {\n forwardedContent: { control: { type: 'text' } }\n};\n\ninterface ViewAnalysisProps {\n enableContextMenu?: boolean;\n onContextMenu?: (e: MouseEvent) => void;\n}\n\nexport const ViewAnalysis: Story<ViewAnalysisProps> = (args: ViewAnalysisProps) => {\n const itemCounter = useRef(3);\n const imperativeHandle: ContextMenuProps['handle'] = useRef(null);\n const headerProps: EntityListProps['header'] = {\n icon: 'list-number',\n text: 'Entities'\n };\n\n const itemsToRender: SummaryListItem[] = topicListMock.map(items => {\n return {\n ...items,\n primary: <StyledLabel>{items.primary}</StyledLabel>,\n secondary: (\n <Flex container={{ direction: 'row', justify: 'between' }}>\n <Text variant='primary'>{items.secondary.indicator}</Text>\n <StyledLabel>{items.secondary.value}</StyledLabel>\n </Flex>\n )\n };\n });\n\n const handleRightClick = () => {\n itemCounter.current += 1;\n setTimeout(() => {\n imperativeHandle.current?.setContextMenuItems(\n args.enableContextMenu\n ? [\n {\n id: 'item_0',\n primary: 'Field 1',\n selected: itemCounter.current % 2 === 0\n },\n {\n id: 'item_1',\n primary: 'Field 2',\n selected: true\n },\n {\n id: 'item_2',\n primary: 'Field 3',\n selected: true\n },\n {\n id: `item_${itemCounter.current}`,\n primary: `Field ${itemCounter.current + 1}`,\n selected: true\n }\n ]\n : []\n );\n }, 3000);\n };\n\n return (\n <StyledViewAnalysis>\n <Grid container={{ rowGap: 2 }}>\n <EntityList\n header={headerProps}\n content={EntityListMockData}\n contextMenu={{\n onItemClick: action('onItemClick'),\n onContextMenu: args.onContextMenu || handleRightClick,\n handle: imperativeHandle\n }}\n />\n\n <Card>\n <CardHeader container={{ alignItems: 'center', gap: 1 }}>\n <Icon name='document-doc' />\n <Text variant='h3'>Email header</Text>\n </CardHeader>\n <CardContent>\n <FieldValueList fields={viewAnalysisEmailHeaderMock} variant='stacked' />\n </CardContent>\n </Card>\n\n <SummaryList name='Topics' icon='headline' items={itemsToRender} noItemsText='No items' />\n </Grid>\n </StyledViewAnalysis>\n );\n};\n\nViewAnalysis.args = {\n enableContextMenu: true\n};\n\nViewAnalysis.argTypes = {\n enableContextMenu: { control: { type: 'boolean' } }\n};\n\n/*\n ______ _ _ ______ _ _ _ _\n | ____| (_) | | ____| | | (_) | (_)\n | |__ _ __ ___ __ _ _| | | |__ _ __ | |_ _| |_ _ ___ ___\n | __| | '_ ` _ \\ / _` | | | | __| | '_ \\| __| | __| |/ _ \\/ __|\n | |____| | | | | | (_| | | | | |____| | | | |_| | |_| | __/\\__ \\\n |______|_| |_| |_|\\__,_|_|_| |______|_| |_|\\__|_|\\__|_|\\___||___/\n\n*/\n\ninterface EmailEntitiesDemoProps {\n enableEntityHighlighting?: boolean;\n enableContextMenu?: boolean;\n}\n\nexport const EmailEntities: Story<EmailEntitiesDemoProps> = (args: EmailEntitiesDemoProps) => {\n const nestedEntities = ['Place: Nagercoil, Hyderabad', 'Location: Nagercoil'];\n const emailImperativeHandle: ContextMenuProps['handle'] = useRef(null);\n const itemCounter = useRef(3);\n\n const handleRightClick = (id: EmailProps['id']) => {\n itemCounter.current += 1;\n setTimeout(() => {\n emailImperativeHandle.current?.setContextMenuItems(\n args.enableContextMenu\n ? [\n {\n id: 'item_0',\n primary: 'Field 1',\n selected: itemCounter.current % 2 === 0\n },\n {\n id: 'item_1',\n primary: 'Field 2',\n selected: true\n },\n {\n id: `item_2 ${id}`,\n primary: 'Field 3',\n selected: true\n },\n {\n id: `item_${itemCounter.current}`,\n primary: `Field ${itemCounter.current + 1}`,\n selected: true\n }\n ]\n : []\n );\n }, 3000);\n };\n\n return (\n <Card>\n <StyledEmailCardContent>\n <EmailComponent\n id={createUID()}\n timeStamp='2021-01-05T09:12'\n from={mockEmails['Laura Stevens']}\n cc={[mockEmails['Adam Gillchrist'], mockEmails['John Paul']]}\n bcc={[mockEmails['Anton, Randy'], mockEmails['Hugh Phillips']]}\n to={[mockEmails['Sara Davis'], mockEmails['John Brown'], mockEmails['Joe Stevens']]}\n body='<div>Hi,<br/><p>I am one of the customer of Indian Overseas Bank, <b><i>Nagercoil</i></b> branch, with code <b><a href=\"www.google.com\"><i>3967</i></a></b>. I have a saving bank account here. My account number is <i>6785420965476</i>.</p><br/><p>I have been given a debit cum ATM card from this bank and the same has been lost when I was traveling from Nagercoil to Trichy by Bus on Jan 04, 2021. I remember that my ATM card number was 1920 6746 8653 1256.</p><br/>I hereby request you to block my debit card immediately to prevent misuse of the same by some others. Also I request you to give me an new debit card as early as possible.<br/><br/>Regards,<br/>Laura Stevens</div>'\n entityHighlightMapping={\n args.enableEntityHighlighting\n ? [\n {\n value: '3967',\n type: 'system',\n name: 'BranchCode',\n variant: 0,\n description: 'Branch Code'\n },\n {\n value: 'Laura Stevens',\n type: 'system',\n name: 'Name',\n variant: 1,\n description: 'Name'\n },\n {\n value: 'Nagercoil',\n type: 'system',\n name: 'Location',\n variant: 2,\n description: nestedEntities\n },\n {\n value: 'Trichy',\n type: 'system',\n name: 'Location',\n variant: 2,\n description: 'Location'\n },\n {\n value: '6785420965476',\n type: 'system',\n name: 'AccountNumber',\n variant: 3,\n description: 'Account Number'\n },\n {\n value: '1920 6746 8653 1256',\n type: 'system',\n name: 'CardNumber',\n variant: 4,\n description: 'Card Number'\n },\n {\n value: 'Debit Card',\n type: 'system',\n name: 'CardType',\n variant: 5,\n description: 'Card Type'\n },\n {\n value: 'Jan 04, 2021',\n type: 'system',\n name: 'Date',\n variant: 6,\n description: 'Date'\n }\n ]\n : undefined\n }\n subject='I lost my debit card'\n onReply={action('On reply')}\n onReplyAll={action('On reply all')}\n onForward={action('On forward')}\n onSuggestionClick={action('On Suggested reply clicked')}\n sentiment={{\n variant: 'neutral'\n }}\n actions={emailActions}\n suggestions={mockSuggestedReplies}\n contextMenu={{\n onItemClick: action('onItemClick'),\n onContextMenu: handleRightClick,\n handle: emailImperativeHandle\n }}\n />\n </StyledEmailCardContent>\n </Card>\n );\n};\n\nEmailEntities.args = {\n enableEntityHighlighting: true,\n enableContextMenu: true\n};\n\nEmailEntities.argTypes = {\n enableEntityHighlighting: { control: { type: 'boolean' } },\n enableContextMenu: { control: { type: 'boolean' } }\n};\n\n/*\n\n _____ _ _ ____ _ _\n | ____|_ __ ___ __ _(_) | / ___|___ _ ____ _____ _ __ ___ __ _| |_(_) ___ _ __\n | _| | '_ ` _ \\ / _` | | | | | / _ \\| '_ \\ \\ / / _ \\ '__/ __|/ _` | __| |/ _ \\| '_ \\\n | |___| | | | | | (_| | | | | |__| (_) | | | \\ V / __/ | \\__ \\ (_| | |_| | (_) | | | |\n |_____|_| |_| |_|\\__,_|_|_| \\____\\___/|_| |_|\\_/ \\___|_| |___/\\__,_|\\__|_|\\___/|_| |_|\n\n\n*/\n\nexport const EmailConversationDemo: Story = () => {\n const emailArr: EmailProps[] = [\n {\n id: 'item_0',\n timeStamp: '2021-01-05T09:12',\n from: mockEmails['Laura Stevens'],\n cc: [mockEmails['Adam Gillchrist'], mockEmails['John Paul']],\n bcc: [mockEmails['Anton, Randy'], mockEmails['Hugh Phillips']],\n to: [mockEmails['Sara Davis'], mockEmails['John Brown'], mockEmails['Joe Stevens']],\n body: '<div> Hi, <br /> <br /> <div>Sure.. Here is your E-Ticket !! </div> <br /><br /> Regards, <br /> Laura Stevens </div>',\n unRead: true,\n onReply: action('On reply'),\n onForward: action('On forward'),\n onSuggestionClick: action('On Suggested reply clicked'),\n actions: emailActions,\n suggestions: mockSuggestedReplies\n },\n {\n id: 'item_1',\n timeStamp: '2021-01-02T03:12',\n from: mockEmails['Sara Davis'],\n cc: [mockEmails['Adam Gillchrist'], mockEmails['John Paul']],\n bcc: [mockEmails['Anton, Randy'], mockEmails['Hugh Phillips']],\n to: [mockEmails['Laura Stevens'], mockEmails['John Brown'], mockEmails['Joe Stevens']],\n body: '<div> Hi, <br /> <br /> <div>I’m still at the airport, I need help now!! </div> <br /><br /> Regards, <br /> Sara Davis </div>',\n onReply: action('On reply'),\n onForward: action('On forward'),\n onSuggestionClick: action('On Suggested reply clicked'),\n actions: emailActions\n }\n ];\n\n return (\n <EmailConversation\n participants={generateEmailConversationParticipants(emailArr)}\n from={generateEmailConversationParticipants(emailArr, ['from'])[0]}\n to={generateEmailConversationParticipants(emailArr, ['to'])}\n id={createUID()}\n timeStamp={emailArr[0].timeStamp}\n unReadEmailCount={emailArr.filter(item => item.unRead).length}\n emails={emailArr}\n />\n );\n};\n\n/*\n\n _____ _ _ ____\n | ____|_ __ ___ __ _(_) | / ___|___ _ __ ___ _ __ ___ ___ ___ _ __\n | _| | '_ ` _ \\ / _` | | | | | / _ \\| '_ ` _ \\| '_ \\ / _ \\/ __|/ _ \\ '__|\n | |___| | | | | | (_| | | | | |__| (_) | | | | | | |_) | (_) \\__ \\ __/ |\n |_____|_| |_| |_|\\__,_|_|_| \\____\\___/|_| |_| |_| .__/ \\___/|___/\\___|_|\n |_|\n\n*/\n\nexport const EmailComposerDemo: Story = () => {\n const [composerProgress, setComposerProgress] = useState<EmailComposerProps['progress']>(false);\n const composerHandle = useRef<EmailComposerHandleValue>(null);\n\n const [data, setData] = useState<\n EmailComposerProps['data'] & { bodyContentCurrentValue: string }\n >({\n to: { value: toParticipants },\n cc: { value: [] },\n bcc: { value: [] },\n subject: { value: 'Request: Pause service' },\n bodyContent: {\n defaultValue: 'Hi, Hope you are doing well'\n },\n responseType: 'reply',\n selectedTemplateId: '',\n attachments: emailAttachments,\n bodyContentCurrentValue: ''\n });\n\n const handleOnChange = (\n field: EmailComposerFieldType,\n value: EmailComposerValueType<EmailComposerFieldType>\n ) => {\n if (field === 'bodyContent') {\n setData(prev => ({\n ...prev,\n bodyContentCurrentValue: value as string\n }));\n } else if (['responseType', 'attachments', 'selectedTemplateId'].includes(field)) {\n setData(prev => ({\n ...prev,\n [field]: value\n }));\n } else {\n // Clearing error message as soon as value changes\n setData(prev => {\n return {\n ...prev,\n [field]: { error: undefined, value }\n };\n });\n }\n action('onChange')(field, value);\n };\n\n useEffect(() => {\n if (data.responseType === 'reply') {\n setData(prev => {\n return {\n ...prev,\n to: {\n ...prev.to,\n value: [toParticipants[0]]\n },\n cc: {\n ...prev.cc,\n value: []\n },\n bcc: {\n ...prev.bcc,\n value: []\n }\n };\n });\n } else if (data.responseType === 'replyAll') {\n setData(prev => {\n return {\n ...prev,\n to: {\n ...prev.to,\n value: toParticipants\n },\n cc: {\n ...prev.cc,\n value: ccParticipants\n },\n bcc: {\n ...prev.bcc,\n value: bccParticipants\n }\n };\n });\n }\n }, [data.responseType]);\n\n const onTemplateChange = (id: string) => {\n const selectedTemplate = mockEmailBodyTemplates.find(template => template.id === id);\n // Simulating api call\n setComposerProgress({ message: 'Loading template...' });\n setTimeout(() => {\n setComposerProgress(false);\n composerHandle.current?.replaceBodyContent(selectedTemplate?.content || '');\n }, 1000);\n };\n\n useEffect(() => {\n if (data.selectedTemplateId) onTemplateChange(data.selectedTemplateId);\n }, [data.selectedTemplateId]);\n\n const handleOnSend: EmailComposerProps['onSend'] = () => {\n setData(prev => {\n return {\n ...prev,\n to: {\n value: prev.to?.value || [],\n error:\n data?.to?.value.length === 0 ? emptyFieldErrorMessage : fieldValidation(data?.to?.value)\n },\n cc: {\n value: prev.cc?.value || [],\n error: data.cc === undefined ? undefined : fieldValidation(data.cc.value)\n },\n bcc: {\n value: prev.bcc?.value || [],\n error: data.bcc === undefined ? undefined : fieldValidation(data.bcc.value)\n },\n subject: {\n ...prev.subject,\n error: data.subject?.value === '' ? emptyFieldErrorMessage : undefined\n },\n bodyContent: {\n ...prev.bodyContent,\n error: data.bodyContentCurrentValue === '' ? emptyFieldErrorMessage : undefined\n }\n };\n });\n };\n\n return (\n <EmailComposer\n handle={composerHandle}\n progress={composerProgress}\n onSend={handleOnSend}\n onCancel={action('On cancel')}\n externalValidator={handleExternalEntry}\n participants={participants}\n onChange={handleOnChange}\n data={data}\n templates={templates}\n onImageAdded={action('On Image added')}\n />\n );\n};\n\n/*\n\n _____ _ _ _ _ _\n | ____|_ __ ___ __ _(_) | ___| |__ ___| | |\n | _| | '_ ` _ \\ / _` | | | / __| '_ \\ / _ \\ | |\n | |___| | | | | | (_| | | | \\__ \\ | | | __/ | |\n |_____|_| |_| |_|\\__,_|_|_| |___/_| |_|\\___|_|_|\n\n*/\n\ninterface EmailDemoProps {\n autoCollapse?: boolean;\n hideSuggestions?: boolean;\n singleConversation?: boolean;\n width?: string;\n height?: string;\n margin?: string;\n}\n\nexport const EmailDemo: Story<EmailDemoProps> = (args: EmailDemoProps) => {\n const actions = ['Transfer', 'End conversation'].map(name => ({\n primary: name,\n id: name,\n onClick: action(`Clicked ${name}`)\n }));\n\n const [composersData, setComposersData] = useState<{\n [key: string]: EmailComposerProps & { bodyContentCurrentValue: string };\n }>({});\n\n const handleResponseTypeChange = (uid: string, responseType: string) => {\n if (responseType === 'reply') {\n setComposersData(prev => {\n return {\n ...prev,\n [uid]: {\n ...prev[uid],\n data: {\n ...prev[uid].data,\n to: {\n ...prev[uid].data.to,\n value: [toParticipants[0]]\n },\n cc: {\n ...prev[uid].data.cc,\n value: []\n },\n bcc: {\n ...prev[uid].data.bcc,\n value: []\n }\n }\n }\n };\n });\n } else if (responseType === 'replyAll') {\n setComposersData(prev => {\n return {\n ...prev,\n [uid]: {\n ...prev[uid],\n data: {\n ...prev[uid].data,\n to: {\n ...prev[uid].data.to,\n value: toParticipants\n },\n cc: {\n ...prev[uid].data.cc,\n value: ccParticipants\n },\n bcc: {\n ...prev[uid].data.bcc,\n value: bccParticipants\n }\n }\n }\n };\n });\n }\n };\n\n const handleTemplateIdChange = (uid: string, templateId: string) => {\n const selectedTemplate = mockEmailBodyTemplates.find(template => template.id === templateId);\n setComposersData(prev => {\n return {\n ...prev,\n [uid]: {\n ...prev[uid],\n progress: { message: 'Loading template...' }\n }\n };\n });\n\n // Simulating api call\n setTimeout(() => {\n setComposersData(prev => {\n return {\n ...prev,\n [uid]: {\n ...prev[uid],\n progress: false\n }\n };\n });\n\n let currentData: { [key: string]: EmailComposerProps } = {};\n setComposersData(prev => {\n currentData = prev;\n return prev;\n });\n\n if (currentData) {\n (\n currentData[uid]?.handle as RefObject<EmailComposerHandleValue>\n )?.current?.replaceBodyContent(selectedTemplate?.content || '');\n }\n }, 1000);\n };\n\n const handleChange = (\n uid: string,\n field: EmailComposerFieldType,\n value: EmailComposerValueType<EmailComposerFieldType>\n ) => {\n setComposersData(prevData => {\n if (field === 'bodyContent') {\n return {\n ...prevData,\n [uid]: {\n ...prevData[uid],\n bodyContentCurrentValue: value as string\n }\n };\n }\n return {\n ...prevData,\n [uid]: {\n ...prevData[uid],\n data: {\n ...prevData[uid].data,\n [field]: ['responseType', 'attachments', 'selectedTemplateId'].includes(field)\n ? value\n : {\n error: undefined, // Clearing error on change\n value\n }\n }\n }\n };\n });\n\n if (field === 'responseType') {\n handleResponseTypeChange(uid, value as string);\n } else if (field === 'selectedTemplateId') {\n handleTemplateIdChange(uid, value as string);\n }\n };\n\n const handleCancel = (uid: string) => {\n setComposersData(prev => {\n const newComposersData = { ...prev };\n delete newComposersData[uid];\n return newComposersData;\n });\n };\n\n const handleSend = (uid: string) => {\n action('Send')();\n setComposersData(prev => {\n return {\n ...prev,\n [uid]: {\n ...prev[uid],\n data: {\n ...prev[uid].data,\n to: {\n value: prev[uid].data.to?.value || [],\n error: !prev[uid].data.to?.value.length\n ? emptyFieldErrorMessage\n : fieldValidation(prev[uid].data.to?.value)\n },\n cc: {\n value: prev[uid].data.cc?.value || [],\n error: !prev[uid].data.cc?.value.length\n ? undefined\n : fieldValidation(prev[uid].data.cc?.value)\n },\n bcc: {\n value: prev[uid].data.bcc?.value || [],\n error: !prev[uid].data.bcc?.value.length\n ? undefined\n : fieldValidation(prev[uid].data.bcc?.value)\n },\n subject: {\n value: prev[uid].data.subject.value || '',\n error: prev[uid].data.subject.value === '' ? emptyFieldErrorMessage : undefined\n },\n bodyContent: {\n defaultValue: prev[uid].data.bodyContent.defaultValue || '',\n error: prev[uid].bodyContentCurrentValue === '' ? emptyFieldErrorMessage : undefined\n }\n }\n }\n };\n });\n };\n\n const createOrActivateComposer = (\n id: EmailProps['id'],\n launchAction: LaunchAction,\n composerProps: EmailComposerProps\n ) => {\n const uid = getCompositeId(id, launchAction);\n if (composersData[uid]) {\n // Activate the existing composer\n (composersData[uid].handle as RefObject<EmailComposerHandleValue>)?.current?.activate();\n } else {\n // Create new composer\n setComposersData(prev => {\n const composerHandle = createRef<EmailComposerHandleValue>();\n return {\n ...prev,\n [uid]: {\n ...composerProps,\n bodyContentCurrentValue: composerProps.data.bodyContent.defaultValue,\n handle: composerHandle,\n onChange: (\n field: EmailComposerFieldType,\n value: EmailComposerValueType<EmailComposerFieldType>\n ) => handleChange(uid, field, value),\n onCancel: () => handleCancel(uid),\n onSend: () => handleSend(uid)\n }\n };\n });\n }\n };\n\n const emailsData: EmailProps[] = [\n {\n id: 'item_0',\n timeStamp: '2021-01-05T09:12',\n from: participants[0],\n to: participants.slice(0, 2),\n body: '<div>Hi, <br /> <br /><div>Your address change request is approved.</div> <br /> <br />Regards, <br />Laura Stevens </div>',\n unRead: true,\n subject: 'Pause service',\n suggestions: args.hideSuggestions ? undefined : mockSuggestedReplies,\n attachments: [\n {\n id: 'item_1_0',\n value: 'https://pega.com/media/document.doc',\n displayText: 'Policy document'\n },\n {\n id: 'item_1_1',\n value: 'https://pbs.twimg.com/media/ENNN5PAXkAE-hag.jpg',\n displayText: 'E-Ticket'\n }\n ].map(attachment => {\n return {\n ...attachment,\n onDownload: action('On attachment download'),\n onPreview: action('On attachment preview')\n };\n })\n },\n {\n id: 'item_1',\n timeStamp: '2021-01-02T03:12',\n from: participants[3],\n to: participants.slice(2, 4),\n body: emailBodyContent,\n unRead: true,\n subject: 'Pause service'\n }\n ].map(emailData => {\n const emailActionItems = emailDemoActions(\n emailData.id,\n emailData.subject,\n createOrActivateComposer\n );\n return {\n ...emailData,\n onReply: (id: EmailProps['id']) => {\n createOrActivateComposer(id, LaunchAction.REPLY, {\n ...baseComposerProps,\n data: {\n ...baseComposerProps.data,\n responseType: 'reply',\n subject: { value: `Re-${emailData.subject}` || '' }\n },\n externalValidator: handleExternalEntry\n });\n },\n onForward: id => {\n createOrActivateComposer(id, LaunchAction.FORWARD, {\n ...baseComposerProps,\n data: {\n ...baseComposerProps.data,\n responseType: 'forward',\n subject: { value: `Fw-${emailData.subject}` || '' }\n },\n externalValidator: handleExternalEntry\n });\n },\n onSuggestionClick: (id, suggestionId) => {\n const suggestion = emailData.suggestions?.find(item => item.id === suggestionId);\n createOrActivateComposer(id, LaunchAction.SUGGESTION, {\n ...baseComposerProps,\n data: {\n ...baseComposerProps.data,\n responseType: 'reply',\n subject: { value: suggestion?.title || '' },\n bodyContent: { defaultValue: suggestion ? suggestion.content : '' },\n selectedTemplateId: suggestion?.id\n },\n externalValidator: handleExternalEntry\n });\n },\n actions: emailActionItems,\n tags: args.hideSuggestions\n ? undefined\n : {\n items: ['Pause service', 'Lost or stolen'],\n label: 'Associated service cases',\n onRemove: action('On Associated service case remove'),\n dismissable: true\n }\n };\n });\n\n const emailConversations: EmailConversationProps[] = (\n [\n [...emailsData],\n [\n {\n ...emailsData[0],\n timeStamp: '2021-01-03T17:15',\n from: mockEmails['Hugh Phillips'],\n to: [mockEmails['Mystery Rey'], ...emailsData[0].to],\n cc: [mockEmails['Adam Gillchrist']],\n bcc: [mockEmails['Anton, Randy'], mockEmails['Hugh Phillips']],\n body: '<div>Hi, <br /> <br /><div>Sure, Our executive will come and check your connection in 24hrs. </div> <br />Regards, <br />Hugh Phillips </div>'\n },\n {\n ...emailsData[1],\n unRead: false,\n timeStamp: '2021-01-02T14:16',\n from: mockEmails['Mystery Rey'],\n to: [mockEmails['Hugh Phillips']],\n body: '<div>Hi, <br /> <br /><div>Can you fix my internet connection. </div> <br /> <br />Regards, <br />Rey Mystery </div>'\n }\n ],\n [\n {\n ...emailsData[0],\n unRead: false,\n timeStamp: '2020-12-05T18:18',\n from: mockEmails['Laura Stevens'],\n to: [mockEmails['Sara Davis']],\n body: '<div>Hi, <br /> <br /><div>Sure, Our executive will call you shortly. </div> <br /> <br />Regards, <br />Laura Stevens </div>',\n sentiment: {\n variant: 'positive'\n }\n },\n {\n ...emailsData[1],\n unRead: false,\n timeStamp: '2021-01-04T08:30',\n from: mockEmails['Sara Davis'],\n to: [mockEmails['Laura Stevens']],\n body: '<div>Hi, <br /> <br /><div>Can you show please explain your new mobile plans. </div> <br /> <br />Regards, <br />Sara Davis </div>'\n }\n ]\n ] as EmailProps[][]\n ).map((emails, i) => {\n return {\n from: generateEmailConversationParticipants(emails, ['from'])[0],\n to: emails[0].to,\n id: `item_${i}`,\n timeStamp: emails[0].timeStamp,\n unReadEmailCount: emails.filter(item => item.unRead).length,\n emails,\n sentiment: emails[0].sentiment,\n isForwarded: i !== 2,\n isCollapsed: i !== 0\n } as EmailConversationProps;\n });\n\n const singleEmailConversation: EmailConversationProps[] = [\n {\n from: generateEmailConversationParticipants(emailsData, ['from'])[0],\n to: generateEmailConversationParticipants(emailsData, ['to']),\n id: 'item_0',\n timeStamp: new Date(emailsData[0].timeStamp),\n unReadEmailCount: emailsData.filter(item => item.unRead).length,\n emails: emailsData\n }\n ];\n\n return (\n <>\n <EmailShell\n style={{\n height: args.height,\n width: args.width,\n margin: args.margin\n }}\n headerProps={{\n actions: (\n <Flex\n container={{\n alignItems: 'center',\n gap: 0\n }}\n >\n <Button variant='simple' icon>\n <Icon name='filter' />\n </Button>\n <MenuButton\n variant='simple'\n text='More actions'\n icon='more'\n iconOnly\n portal\n menu={{ items: actions }}\n />\n </Flex>\n ),\n subject: 'Pause service'\n }}\n autoCollapse={args.autoCollapse}\n conversations={args.singleConversation ? singleEmailConversation : emailConversations}\n />\n <>\n {Object.keys(composersData).map(guid => {\n return <EmailComposer key={guid} {...composersData[guid]} />;\n })}\n </>\n </>\n );\n};\n\nEmailDemo.args = {\n autoCollapse: true,\n hideSuggestions: false,\n singleConversation: true,\n height: '100vh',\n width: '30rem',\n margin: 'auto'\n};\n\nEmailDemo.argTypes = {\n autoCollapse: { control: { type: 'boolean' } },\n hideSuggestions: { control: { type: 'boolean' } },\n singleConversation: { control: { type: 'boolean' } },\n width: {\n table: {\n disable: true\n }\n },\n height: {\n table: {\n disable: true\n }\n },\n margin: {\n table: {\n disable: true\n }\n }\n};\n\nEmailDemo.parameters = {\n layout: 'fullscreen'\n};\n\n/*\n ______ _ _ _____ _____ _\n | ____| (_) | / ____| |_ _| |\n | |__ _ __ ___ __ _ _| | | (___ _ _ _ __ ___ _ __ ___ __ _ _ __ _ _ | | | |_ ___ _ __ ___\n | __| | '_ ` _ \\ / _` | | | \\___ \\| | | | '_ ` _ \\| '_ ` _ \\ / _` | '__| | | | | | | __/ _ \\ '_ ` _ \\\n | |____| | | | | | (_| | | | ____) | |_| | | | | | | | | | | | (_| | | | |_| | _| |_| || __/ | | | | |\n |______|_| |_| |_|\\__,_|_|_| |_____/ \\__,_|_| |_| |_|_| |_| |_|\\__,_|_| \\__, | |_____|\\__\\___|_| |_| |_|\n __/ |\n |___/\n*/\n\nexport const EmailSummaryItemDemo: Story = () => {\n const [active, setActive] = useState(false);\n return (\n <EmailSummaryItem\n style={{ width: '25rem' }}\n id={createUID()}\n activeParticipants={[\n {\n shortName: 'Robert',\n fullName: 'Robert Downer',\n emailAddress: 'robert.downey@example.com'\n },\n {\n shortName: 'Nathan',\n fullName: 'Nathan Swanson',\n emailAddress: 'nathan.swanson@example.com'\n }\n ]}\n message='I have a quick question on traveling to India. How do I reach Hyderabad?'\n timeStamp={new Date(Date.UTC(new Date().getUTCFullYear(), new Date().getUTCMonth(), 24))}\n topic='Missing Luggage'\n sentiment={sentiment}\n urgency={10}\n unreadEmailCount={active ? 0 : 8}\n active={active}\n onSelect={(id: EmailSummaryItemProps['id']) => {\n setActive(true);\n action('onSelect')(id);\n }}\n />\n );\n};\n\n/*\n ______ _ _ _____ _ _ _\n | ____| (_) | / ____| | | (_) | |\n | |__ _ __ ___ __ _ _| | | (___ _ _ _ __ ___ _ __ ___ __ _ _ __ _ _ | | _ ___| |_\n | __| | '_ ` _ \\ / _` | | | \\___ \\| | | | '_ ` _ \\| '_ ` _ \\ / _` | '__| | | | | | | / __| __|\n | |____| | | | | | (_| | | | ____) | |_| | | | | | | | | | | | (_| | | | |_| | | |____| \\__ \\ |_\n |______|_| |_| |_|\\__,_|_|_| |_____/ \\__,_|_| |_| |_|_| |_| |_|\\__,_|_| \\__, | |______|_|___/\\__|\n __/ |\n |___/\n*/\ninterface EmailSummaryListStoryProps {\n width?: string;\n height?: string;\n margin?: string;\n onItemClick?: EmailSummaryListProps['onItemClick'];\n items?: EmailSummaryListProps['items'];\n onLoadMore?: EmailSummaryListProps['onLoadMore'];\n loading?: EmailSummaryListProps['loading'];\n}\n\nexport const EmailSummaryListDemo: Story<EmailSummaryListStoryProps> = (\n args: EmailSummaryListStoryProps\n) => {\n const INITIAL_CHUNK_SIZE = 9;\n const APPEND_CHUNK_SIZE = 1;\n\n const emailSummaryListRef = useRef(null);\n const [allEmailItems, setAllEmailItems] = useState(\n emailSummaryItems.slice(0, INITIAL_CHUNK_SIZE)\n );\n const [categories, setCategories] = useState<MenuProps['items']>([\n {\n id: 'item_0',\n primary: 'Default worklist',\n selected: false\n },\n {\n id: 'item_1',\n primary: 'Authors',\n selected: false\n },\n {\n id: 'item_2',\n primary: 'Administrators',\n selected: false\n },\n {\n id: 'item_3',\n primary: 'Managers',\n selected: false\n },\n {\n id: 'item_4',\n primary: 'Users',\n selected: false\n }\n ]);\n\n const handleItemClick = (id: string) => {\n const index = allEmailItems.findIndex(emailItem => {\n return emailItem.id === id;\n });\n\n const newEmailItems = [...allEmailItems];\n newEmailItems.splice(index, 1, { ...allEmailItems[index], unreadEmailCount: 0 });\n\n setAllEmailItems(newEmailItems);\n };\n\n const onCategoryClick: MenuItemProps['onClick'] = (id: MenuItemProps['id']) => {\n setCategories(cur => menuHelpers.toggleSelected(cur, id, 'single-select'));\n };\n\n const [loading, setLoading] = useState(false);\n const [hasMore, setHasMore] = useState(true);\n\n const loadMore = useCallback(() => {\n if (!loading) {\n setLoading(true);\n\n setTimeout(() => {\n setLoading(false);\n setAllEmailItems(prevItems => {\n const previousItemsLength = prevItems.length;\n const newItems = emailSummaryItems.slice(\n previousItemsLength,\n previousItemsLength + APPEND_CHUNK_SIZE\n );\n\n if (newItems.length === 0) {\n setHasMore(false);\n }\n\n return [...prevItems, ...newItems];\n });\n }, 1500);\n }\n }, [loading]);\n\n return (\n <EmailSummaryList\n style={{ width: args.width, margin: args.margin, height: args.height }}\n ref={emailSummaryListRef}\n unreadEmailCount={99}\n categories={categories}\n items={args.items || allEmailItems}\n onItemClick={args.onItemClick || handleItemClick}\n onCategoryClick={onCategoryClick}\n onLoadMore={args.onLoadMore || (hasMore ? loadMore : undefined)}\n loading={args.loading || loading}\n emptyMessage='No emails.'\n />\n );\n};\n\nEmailSummaryListDemo.argTypes = {\n width: {\n table: {\n disable: true\n }\n },\n height: {\n table: {\n disable: true\n }\n },\n margin: {\n table: {\n disable: true\n }\n }\n};\n\nEmailSummaryListDemo.args = {\n height: '100vh',\n width: '30rem',\n margin: 'auto'\n};\n\nEmailSummaryListDemo.parameters = {\n layout: 'fullscreen'\n};\n\nexport const EmailManagerDemo: Story = () => {\n const INITIAL_CHUNK_SIZE = 9;\n const APPEND_CHUNK_SIZE = 1;\n const initialEmailContent = (\n <>\n <Email forwardedContent={forwardedContent} />\n <Email forwardedContent={forwardedContent} />\n <Email forwardedContent={forwardedContent} />\n <Email forwardedContent={forwardedContent} />\n <Email forwardedContent={forwardedContent} />\n </>\n );\n\n const demoUtilities = (\n <>\n <AttachmentsMock />\n <StakeHoldersDemo />\n <MockSummaryList icon='user-star' name='Followers' />\n <TagsDemo />\n </>\n );\n\n const [content, setContent] = useState(initialEmailContent);\n const [utilities, setUtilities] = useState(demoUtilities);\n const [emailList, setEmailList] = useState(emailSummaryItems.slice(0, INITIAL_CHUNK_SIZE));\n const [loading, setLoading] = useState(false);\n const [hasMore, setHasMore] = useState(true);\n\n const handleEmailItemClick = (id: EmailSummaryItemProps['id']) => {\n const index = emailList.findIndex(emailItem => {\n return emailItem.id === id;\n });\n\n const newEmailList = [...emailList];\n newEmailList.splice(index, 1, { ...emailList[index], unreadEmailCount: 0 });\n\n setEmailList(newEmailList);\n\n /** Show email content and utilities based on the selected email item */\n\n if (index % 2 === 0) {\n setContent(<EmailDemo />);\n setUtilities(\n <>\n <AttachmentsMock />\n <MockSummaryList icon='user-star' name='Followers' />\n </>\n );\n } else {\n setContent(<EmailDemo singleConversation />);\n setUtilities(demoUtilities);\n }\n };\n\n const onLoadMore = useCallback(() => {\n if (!loading) {\n setLoading(true);\n\n setTimeout(() => {\n setLoading(false);\n setEmailList(prevItems => {\n const previousItemsLength = prevItems.length;\n const newItems = emailSummaryItems.slice(\n previousItemsLength,\n previousItemsLength + APPEND_CHUNK_SIZE\n );\n\n if (newItems.length === 0) {\n setHasMore(false);\n }\n\n return [...prevItems, ...newItems];\n });\n }, 1500);\n }\n }, [loading]);\n\n return (\n <AppShellDemo\n appHeader\n main={\n <EmailManager\n header={{\n icon: 'mail',\n title: 'Inbox'\n }}\n list={\n <EmailSummaryListDemo\n width='unset'\n margin='unset'\n onItemClick={handleEmailItemClick}\n items={emailList}\n onLoadMore={hasMore ? onLoadMore : undefined}\n loading={loading}\n />\n }\n content={content}\n utilities={utilities}\n utilitiesSummaryItems={[\n { iconName: 'paper-clip', count: 4 },\n { iconName: 'user-search-solid', count: 10 },\n { iconName: 'user-star-solid', count: 5 },\n { iconName: 'tag', count: 10 }\n ]}\n defaultCollapsedUtilities={false}\n />\n }\n />\n );\n};\n\nEmailManagerDemo.parameters = {\n layout: 'fullscreen'\n};\n"]}
1
+ {"version":3,"file":"Email.stories.js","sourceRoot":"","sources":["../../../src/social/Email/Email.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["// cSpell:words calibri Trichy Nagercoil\nimport { useState, useRef, useCallback, useEffect, createRef, RefObject, MouseEvent } from 'react';\nimport { action } from '@storybook/addon-actions';\nimport { Meta, Story } from '@storybook/react';\nimport { useMemo } from '@storybook/addons';\n\nimport {\n Card,\n CardContent,\n createUID,\n MenuButton,\n MenuItemProps,\n MenuProps,\n Icon,\n registerIcon,\n Flex,\n Button,\n menuHelpers,\n CardHeader,\n Text,\n SummaryList,\n Grid,\n FieldValueList,\n StyledLabel,\n EmptyState\n} from '@pega/cosmos-react-core';\nimport * as filterIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/filter.icon';\nimport {\n Email as EmailComponent,\n EmailConversation,\n EmailComposer,\n EmailShell,\n EmailSummaryItem,\n EmailSummaryList,\n EntityList,\n EmailProps,\n EmailConversationProps,\n EmailComposerProps,\n EntityListProps,\n EmailManager,\n EmailSummaryListProps,\n EmailSummaryItemProps\n} from '@pega/cosmos-react-social';\nimport {\n EmailComposerFieldType,\n EmailComposerValueType,\n EmailComposerHandleValue,\n ContextMenuProps\n} from '@pega/cosmos-react-social/lib/components/Email/Email.types';\n\nimport { AppShellDemo } from '../../core/AppShell/AppShell.stories';\n\nimport {\n bccParticipants,\n ccParticipants,\n emailBodyContent,\n participants,\n toParticipants,\n emailAttachments,\n EntityListMockData,\n viewAnalysisEmailHeaderMock,\n topicListMock,\n emailActions,\n generateEmailConversationParticipants,\n templates,\n handleExternalEntry,\n emailDemoActions,\n LaunchAction,\n baseComposerProps,\n sentiment,\n emailSummaryItems,\n mockEmails,\n mockSuggestedReplies,\n mockEmailBodyTemplates,\n forwardedContent,\n getCompositeId,\n emptyFieldErrorMessage,\n fieldValidation,\n emailWorklistItemsMock,\n contextMenuItemsMock,\n highlightedEntitiesMock\n} from './Email.mocks';\nimport { StyledEmailCardContent } from './Email.styles';\n\nregisterIcon(filterIcon);\n\nexport default {\n title: 'Social/Email',\n component: EmailComponent\n} as Meta;\n\n// _______ .___ ___. ___ __ __\n// | ____|| \\/ | / \\ | | | |\n// | |__ | \\ / | / ^ \\ | | | |\n// | __| | |\\/| | / /_\\ \\ | | | |\n// | |____ | | | | / _____ \\ | | | `----.\n// |_______||__| |__| /__/ \\__\\ |__| |_______|\n\ninterface EmailDemoProps {\n enableEntityHighlighting?: boolean;\n enableContextMenu?: boolean;\n forwardedContent?: string;\n}\n\nexport const Email: Story<EmailDemoProps> = (args: EmailDemoProps) => {\n const emailImperativeHandle: ContextMenuProps['handle'] = useRef(null);\n const timeout = useRef<number | null>(null);\n\n const handleRightClick = () => {\n if (timeout.current) {\n clearTimeout(timeout.current);\n }\n timeout.current = window.setTimeout(() => {\n emailImperativeHandle.current?.setContextMenuItems(contextMenuItemsMock);\n }, 1000);\n };\n\n return (\n <Card>\n <StyledEmailCardContent>\n <EmailComponent\n id={createUID()}\n timeStamp='2021-01-05T09:12'\n from={mockEmails['Laura Stevens']}\n cc={[mockEmails['Adam Gillchrist'], mockEmails['John Paul']]}\n bcc={[mockEmails['Anton, Randy'], mockEmails['Hugh Phillips']]}\n to={[mockEmails['Sara Davis'], mockEmails['John Brown'], mockEmails['Joe Stevens']]}\n body='<div>Hi,<br/><p>I am one of the customer of Indian Overseas Bank, <b><i>Nagercoil</i></b> branch, with code <b><a href=\"www.google.com\"><i>3967</i></a></b>. I have a saving bank account here. My account number is <i>6785420965476</i>.</p><br/><p>I have been given a debit cum ATM card from this bank and the same has been lost when I was traveling from Nagercoil to Trichy by Bus on Jan 04, 2021. I remember that my ATM card number was 1920 6746 8653 1256.</p><br/>I hereby request you to block my debit card immediately to prevent misuse of the same by some others. Also I request you to give me an new debit card as early as possible.<br/><br/>Regards,<br/>Laura Stevens</div>'\n forwardedContent={args.forwardedContent}\n entityHighlightMapping={\n args.enableEntityHighlighting ? highlightedEntitiesMock : undefined\n }\n subject='I lost my debit card'\n onReply={action('On reply')}\n onReplyAll={action('On reply all')}\n onForward={action('On forward')}\n onSuggestionClick={action('On Suggested reply clicked')}\n sentiment={{\n variant: 'neutral'\n }}\n actions={emailActions}\n suggestions={mockSuggestedReplies}\n contextMenu={\n args.enableContextMenu\n ? {\n onItemClick: action('onItemClick'),\n onContextMenu: handleRightClick,\n handle: emailImperativeHandle\n }\n : undefined\n }\n attachments={[\n {\n id: 'attachment_0',\n value: 'https://pega.com/media/document.doc',\n displayText: 'Policy document'\n },\n {\n id: 'attachment_1',\n value: 'https://pbs.twimg.com/media/ENNN5PAXkAE-hag.jpg',\n displayText: 'E-Ticket'\n }\n ].map(attachment => {\n return {\n ...attachment,\n onDownload: action('On attachment download'),\n onPreview: action('On attachment preview')\n };\n })}\n />\n </StyledEmailCardContent>\n </Card>\n );\n};\n\nEmail.args = {\n enableEntityHighlighting: false,\n enableContextMenu: false,\n // eslint-disable-next-line demo-patterns/literal-args\n forwardedContent\n};\n\nEmail.argTypes = {\n enableEntityHighlighting: { control: { type: 'boolean' } },\n enableContextMenu: { control: { type: 'boolean' } },\n forwardedContent: { control: { type: 'text' } }\n};\n\n// ______ ______ .___ ___. .______ ______ _______. _______ .______\n// / | / __ \\ | \\/ | | _ \\ / __ \\ / || ____|| _ \\\n// | ,----'| | | | | \\ / | | |_) | | | | | | (----`| |__ | |_) |\n// | | | | | | | |\\/| | | ___/ | | | | \\ \\ | __| | /\n// | `----.| `--' | | | | | | | | `--' | .----) | | |____ | |\\ \\----.\n// \\______| \\______/ |__| |__| | _| \\______/ |_______/ |_______|| _| `._____|\n\nexport const Composer: Story = () => {\n const [composerProgress, setComposerProgress] = useState<EmailComposerProps['progress']>(false);\n const composerHandle = useRef<EmailComposerHandleValue>(null);\n\n const [data, setData] = useState<\n EmailComposerProps['data'] & { bodyContentCurrentValue: string }\n >({\n to: { value: toParticipants },\n cc: { value: [] },\n bcc: { value: [] },\n subject: { value: 'Request: Pause service' },\n bodyContent: {\n defaultValue: 'Hi, Hope you are doing well'\n },\n responseType: 'reply',\n selectedTemplateId: '',\n attachments: emailAttachments,\n bodyContentCurrentValue: ''\n });\n\n const handleOnChange = (\n field: EmailComposerFieldType,\n value: EmailComposerValueType<EmailComposerFieldType>\n ) => {\n if (field === 'bodyContent') {\n setData(prev => ({\n ...prev,\n bodyContentCurrentValue: value as string\n }));\n } else if (['responseType', 'attachments', 'selectedTemplateId'].includes(field)) {\n setData(prev => ({\n ...prev,\n [field]: value\n }));\n } else {\n // Clearing error message as soon as value changes\n setData(prev => {\n return {\n ...prev,\n [field]: { error: undefined, value }\n };\n });\n }\n action('onChange')(field, value);\n };\n\n useEffect(() => {\n if (data.responseType === 'reply') {\n setData(prev => {\n return {\n ...prev,\n to: {\n ...prev.to,\n value: [toParticipants[0]]\n },\n cc: {\n ...prev.cc,\n value: []\n },\n bcc: {\n ...prev.bcc,\n value: []\n }\n };\n });\n } else if (data.responseType === 'replyAll') {\n setData(prev => {\n return {\n ...prev,\n to: {\n ...prev.to,\n value: toParticipants\n },\n cc: {\n ...prev.cc,\n value: ccParticipants\n },\n bcc: {\n ...prev.bcc,\n value: bccParticipants\n }\n };\n });\n }\n }, [data.responseType]);\n\n const onTemplateChange = (id: string) => {\n const selectedTemplate = mockEmailBodyTemplates.find(template => template.id === id);\n // Simulating api call\n setComposerProgress({ message: 'Loading template...' });\n setTimeout(() => {\n setComposerProgress(false);\n composerHandle.current?.replaceBodyContent(selectedTemplate?.content || '');\n }, 1000);\n };\n\n useEffect(() => {\n if (data.selectedTemplateId) onTemplateChange(data.selectedTemplateId);\n }, [data.selectedTemplateId]);\n\n const handleOnSend: EmailComposerProps['onSend'] = () => {\n setData(prev => {\n return {\n ...prev,\n to: {\n value: prev.to?.value || [],\n error:\n data?.to?.value.length === 0 ? emptyFieldErrorMessage : fieldValidation(data?.to?.value)\n },\n cc: {\n value: prev.cc?.value || [],\n error: data.cc === undefined ? undefined : fieldValidation(data.cc.value)\n },\n bcc: {\n value: prev.bcc?.value || [],\n error: data.bcc === undefined ? undefined : fieldValidation(data.bcc.value)\n },\n subject: {\n ...prev.subject,\n error: data.subject?.value === '' ? emptyFieldErrorMessage : undefined\n },\n bodyContent: {\n ...prev.bodyContent,\n error: data.bodyContentCurrentValue === '' ? emptyFieldErrorMessage : undefined\n }\n };\n });\n };\n\n return (\n <EmailComposer\n handle={composerHandle}\n progress={composerProgress}\n onSend={handleOnSend}\n onCancel={action('On cancel')}\n externalValidator={handleExternalEntry}\n participants={participants}\n onChange={handleOnChange}\n data={data}\n templates={templates}\n onImageAdded={action('On Image added')}\n />\n );\n};\n\n// ______ ______ .__ __. ____ ____ _______ .______ _______. ___ .___________. __ ______ .__ __.\n// / | / __ \\ | \\ | | \\ \\ / / | ____|| _ \\ / | / \\ | || | / __ \\ | \\ | |\n// | ,----'| | | | | \\| | \\ \\/ / | |__ | |_) | | (----` / ^ \\ `---| |----`| | | | | | | \\| |\n// | | | | | | | . ` | \\ / | __| | / \\ \\ / /_\\ \\ | | | | | | | | | . ` |\n// | `----.| `--' | | |\\ | \\ / | |____ | |\\ \\----.----) | / _____ \\ | | | | | `--' | | |\\ |\n// \\______| \\______/ |__| \\__| \\__/ |_______|| _| `._____|_______/ /__/ \\__\\ |__| |__| \\______/ |__| \\__|\n\nexport const Conversation: Story = () => {\n const emailArr: EmailProps[] = [\n {\n id: 'item_0',\n timeStamp: '2021-01-05T09:12',\n from: mockEmails['Laura Stevens'],\n cc: [mockEmails['Adam Gillchrist'], mockEmails['John Paul']],\n bcc: [mockEmails['Anton, Randy'], mockEmails['Hugh Phillips']],\n to: [mockEmails['Sara Davis'], mockEmails['John Brown'], mockEmails['Joe Stevens']],\n body: '<div> Hi, <br /> <br /> <div>Sure.. Here is your E-Ticket !! </div> <br /><br /> Regards, <br /> Laura Stevens </div>',\n unRead: true,\n onReply: action('On reply'),\n onForward: action('On forward'),\n onSuggestionClick: action('On Suggested reply clicked'),\n actions: emailActions,\n suggestions: mockSuggestedReplies\n },\n {\n id: 'item_1',\n timeStamp: '2021-01-02T03:12',\n from: mockEmails['Sara Davis'],\n cc: [mockEmails['Adam Gillchrist'], mockEmails['John Paul']],\n bcc: [mockEmails['Anton, Randy'], mockEmails['Hugh Phillips']],\n to: [mockEmails['Laura Stevens'], mockEmails['John Brown'], mockEmails['Joe Stevens']],\n body: '<div> Hi, <br /> <br /> <div>I’m still at the airport, I need help now!! </div> <br /><br /> Regards, <br /> Sara Davis </div>',\n onReply: action('On reply'),\n onForward: action('On forward'),\n onSuggestionClick: action('On Suggested reply clicked'),\n actions: emailActions\n }\n ];\n\n return (\n <EmailConversation\n participants={generateEmailConversationParticipants(emailArr)}\n from={generateEmailConversationParticipants(emailArr, ['from'])[0]}\n to={generateEmailConversationParticipants(emailArr, ['to'])}\n id={createUID()}\n timeStamp={emailArr[0].timeStamp}\n unReadEmailCount={emailArr.filter(item => item.unRead).length}\n emails={emailArr}\n />\n );\n};\n\n// _______ .___ ___. ___ __ __ _______. __ __ _______ __ __\n// | ____|| \\/ | / \\ | | | | / || | | | | ____|| | | |\n// | |__ | \\ / | / ^ \\ | | | | | (----`| |__| | | |__ | | | |\n// | __| | |\\/| | / /_\\ \\ | | | | \\ \\ | __ | | __| | | | |\n// | |____ | | | | / _____ \\ | | | `----. .----) | | | | | | |____ | `----.| `----.\n// |_______||__| |__| /__/ \\__\\ |__| |_______| |_______/ |__| |__| |_______||_______||_______|\n\ninterface EmailShellDemoProps {\n autoCollapse?: boolean;\n hideSuggestions?: boolean;\n singleConversation?: boolean;\n}\n\nexport const EmailShellDemo: Story<EmailShellDemoProps> = (args: EmailShellDemoProps) => {\n const actions = ['Transfer', 'End conversation'].map(name => ({\n primary: name,\n id: name,\n onClick: action(`Clicked ${name}`)\n }));\n\n const [composersData, setComposersData] = useState<{\n [key: string]: EmailComposerProps & { bodyContentCurrentValue: string };\n }>({});\n\n const handleResponseTypeChange = (uid: string, responseType: string) => {\n if (responseType === 'reply') {\n setComposersData(prev => {\n return {\n ...prev,\n [uid]: {\n ...prev[uid],\n data: {\n ...prev[uid].data,\n to: {\n ...prev[uid].data.to,\n value: [toParticipants[0]]\n },\n cc: {\n ...prev[uid].data.cc,\n value: []\n },\n bcc: {\n ...prev[uid].data.bcc,\n value: []\n }\n }\n }\n };\n });\n } else if (responseType === 'replyAll') {\n setComposersData(prev => {\n return {\n ...prev,\n [uid]: {\n ...prev[uid],\n data: {\n ...prev[uid].data,\n to: {\n ...prev[uid].data.to,\n value: toParticipants\n },\n cc: {\n ...prev[uid].data.cc,\n value: ccParticipants\n },\n bcc: {\n ...prev[uid].data.bcc,\n value: bccParticipants\n }\n }\n }\n };\n });\n }\n };\n\n const handleTemplateIdChange = (uid: string, templateId: string) => {\n const selectedTemplate = mockEmailBodyTemplates.find(template => template.id === templateId);\n setComposersData(prev => {\n return {\n ...prev,\n [uid]: {\n ...prev[uid],\n progress: { message: 'Loading template...' }\n }\n };\n });\n\n // Simulating api call\n setTimeout(() => {\n setComposersData(prev => {\n return {\n ...prev,\n [uid]: {\n ...prev[uid],\n progress: false\n }\n };\n });\n\n let currentData: { [key: string]: EmailComposerProps } = {};\n setComposersData(prev => {\n currentData = prev;\n return prev;\n });\n\n if (currentData) {\n (\n currentData[uid]?.handle as RefObject<EmailComposerHandleValue>\n )?.current?.replaceBodyContent(selectedTemplate?.content || '');\n }\n }, 1000);\n };\n\n const handleChange = (\n uid: string,\n field: EmailComposerFieldType,\n value: EmailComposerValueType<EmailComposerFieldType>\n ) => {\n setComposersData(prevData => {\n if (field === 'bodyContent') {\n return {\n ...prevData,\n [uid]: {\n ...prevData[uid],\n bodyContentCurrentValue: value as string\n }\n };\n }\n return {\n ...prevData,\n [uid]: {\n ...prevData[uid],\n data: {\n ...prevData[uid].data,\n [field]: ['responseType', 'attachments', 'selectedTemplateId'].includes(field)\n ? value\n : {\n error: undefined, // Clearing error on change\n value\n }\n }\n }\n };\n });\n\n if (field === 'responseType') {\n handleResponseTypeChange(uid, value as string);\n } else if (field === 'selectedTemplateId') {\n handleTemplateIdChange(uid, value as string);\n }\n };\n\n const handleCancel = (uid: string) => {\n setComposersData(prev => {\n const newComposersData = { ...prev };\n delete newComposersData[uid];\n return newComposersData;\n });\n };\n\n const handleSend = (uid: string) => {\n action('Send')();\n setComposersData(prev => {\n return {\n ...prev,\n [uid]: {\n ...prev[uid],\n data: {\n ...prev[uid].data,\n to: {\n value: prev[uid].data.to?.value || [],\n error: !prev[uid].data.to?.value.length\n ? emptyFieldErrorMessage\n : fieldValidation(prev[uid].data.to?.value)\n },\n cc: {\n value: prev[uid].data.cc?.value || [],\n error: !prev[uid].data.cc?.value.length\n ? undefined\n : fieldValidation(prev[uid].data.cc?.value)\n },\n bcc: {\n value: prev[uid].data.bcc?.value || [],\n error: !prev[uid].data.bcc?.value.length\n ? undefined\n : fieldValidation(prev[uid].data.bcc?.value)\n },\n subject: {\n value: prev[uid].data.subject.value || '',\n error: prev[uid].data.subject.value === '' ? emptyFieldErrorMessage : undefined\n },\n bodyContent: {\n defaultValue: prev[uid].data.bodyContent.defaultValue || '',\n error: prev[uid].bodyContentCurrentValue === '' ? emptyFieldErrorMessage : undefined\n }\n }\n }\n };\n });\n };\n\n const createOrActivateComposer = (\n id: EmailProps['id'],\n launchAction: LaunchAction,\n composerProps: EmailComposerProps\n ) => {\n const uid = getCompositeId(id, launchAction);\n if (composersData[uid]) {\n // Activate the existing composer\n (composersData[uid].handle as RefObject<EmailComposerHandleValue>)?.current?.activate();\n } else {\n // Create new composer\n setComposersData(prev => {\n const composerHandle = createRef<EmailComposerHandleValue>();\n return {\n ...prev,\n [uid]: {\n ...composerProps,\n bodyContentCurrentValue: composerProps.data.bodyContent.defaultValue,\n handle: composerHandle,\n onChange: (\n field: EmailComposerFieldType,\n value: EmailComposerValueType<EmailComposerFieldType>\n ) => handleChange(uid, field, value),\n onCancel: () => handleCancel(uid),\n onSend: () => handleSend(uid)\n }\n };\n });\n }\n };\n\n const emailsData: EmailProps[] = [\n {\n id: 'item_0',\n timeStamp: '2021-01-05T09:12',\n from: participants[0],\n to: participants.slice(0, 2),\n body: '<div>Hi, <br /> <br /><div>Your address change request is approved.</div> <br /> <br />Regards, <br />Laura Stevens </div>',\n unRead: true,\n subject: 'Pause service',\n suggestions: args.hideSuggestions ? undefined : mockSuggestedReplies,\n attachments: [\n {\n id: 'item_1_0',\n value: 'https://pega.com/media/document.doc',\n displayText: 'Policy document'\n },\n {\n id: 'item_1_1',\n value: 'https://pbs.twimg.com/media/ENNN5PAXkAE-hag.jpg',\n displayText: 'E-Ticket'\n }\n ].map(attachment => {\n return {\n ...attachment,\n onDownload: action('On attachment download'),\n onPreview: action('On attachment preview')\n };\n })\n },\n {\n id: 'item_1',\n timeStamp: '2021-01-02T03:12',\n from: participants[3],\n to: participants.slice(2, 4),\n body: emailBodyContent,\n unRead: true,\n subject: 'Pause service'\n }\n ].map(emailData => {\n const emailActionItems = emailDemoActions(\n emailData.id,\n emailData.subject,\n createOrActivateComposer\n );\n return {\n ...emailData,\n onReply: (id: EmailProps['id']) => {\n createOrActivateComposer(id, LaunchAction.REPLY, {\n ...baseComposerProps,\n data: {\n ...baseComposerProps.data,\n responseType: 'reply',\n subject: { value: `Re-${emailData.subject}` || '' }\n },\n externalValidator: handleExternalEntry\n });\n },\n onForward: id => {\n createOrActivateComposer(id, LaunchAction.FORWARD, {\n ...baseComposerProps,\n data: {\n ...baseComposerProps.data,\n responseType: 'forward',\n subject: { value: `Fw-${emailData.subject}` || '' }\n },\n externalValidator: handleExternalEntry\n });\n },\n onSuggestionClick: (id, suggestionId) => {\n const suggestion = emailData.suggestions?.find(item => item.id === suggestionId);\n createOrActivateComposer(id, LaunchAction.SUGGESTION, {\n ...baseComposerProps,\n data: {\n ...baseComposerProps.data,\n responseType: 'reply',\n subject: { value: suggestion?.title || '' },\n bodyContent: { defaultValue: suggestion ? suggestion.content : '' },\n selectedTemplateId: suggestion?.id\n },\n externalValidator: handleExternalEntry\n });\n },\n actions: emailActionItems,\n tags: args.hideSuggestions\n ? undefined\n : {\n items: ['Pause service', 'Lost or stolen'],\n label: 'Associated service cases',\n onRemove: action('On Associated service case remove'),\n dismissable: true\n }\n };\n });\n\n const emailConversations: EmailConversationProps[] = (\n [\n [...emailsData],\n [\n {\n ...emailsData[0],\n timeStamp: '2021-01-03T17:15',\n from: mockEmails['Hugh Phillips'],\n to: [mockEmails['Mystery Rey'], ...emailsData[0].to],\n cc: [mockEmails['Adam Gillchrist']],\n bcc: [mockEmails['Anton, Randy'], mockEmails['Hugh Phillips']],\n body: '<div>Hi, <br /> <br /><div>Sure, Our executive will come and check your connection in 24hrs. </div> <br />Regards, <br />Hugh Phillips </div>'\n },\n {\n ...emailsData[1],\n unRead: false,\n timeStamp: '2021-01-02T14:16',\n from: mockEmails['Mystery Rey'],\n to: [mockEmails['Hugh Phillips']],\n body: '<div>Hi, <br /> <br /><div>Can you fix my internet connection. </div> <br /> <br />Regards, <br />Rey Mystery </div>'\n }\n ],\n [\n {\n ...emailsData[0],\n unRead: false,\n timeStamp: '2020-12-05T18:18',\n from: mockEmails['Laura Stevens'],\n to: [mockEmails['Sara Davis']],\n body: '<div>Hi, <br /> <br /><div>Sure, Our executive will call you shortly. </div> <br /> <br />Regards, <br />Laura Stevens </div>',\n sentiment: {\n variant: 'positive'\n }\n },\n {\n ...emailsData[1],\n unRead: false,\n timeStamp: '2021-01-04T08:30',\n from: mockEmails['Sara Davis'],\n to: [mockEmails['Laura Stevens']],\n body: '<div>Hi, <br /> <br /><div>Can you show please explain your new mobile plans. </div> <br /> <br />Regards, <br />Sara Davis </div>'\n }\n ]\n ] as EmailProps[][]\n ).map((emails, i) => {\n return {\n from: generateEmailConversationParticipants(emails, ['from'])[0],\n to: emails[0].to,\n id: `item_${i}`,\n timeStamp: emails[0].timeStamp,\n unReadEmailCount: emails.filter(item => item.unRead).length,\n emails,\n sentiment: emails[0].sentiment,\n isForwarded: i !== 2,\n isCollapsed: i !== 0\n } as EmailConversationProps;\n });\n\n const singleEmailConversation: EmailConversationProps[] = [\n {\n from: generateEmailConversationParticipants(emailsData, ['from'])[0],\n to: generateEmailConversationParticipants(emailsData, ['to']),\n id: 'item_0',\n timeStamp: new Date(emailsData[0].timeStamp),\n unReadEmailCount: emailsData.filter(item => item.unRead).length,\n emails: emailsData\n }\n ];\n\n return (\n <>\n <EmailShell\n headerProps={{\n actions: (\n <Flex\n container={{\n alignItems: 'center',\n gap: 0\n }}\n >\n <Button variant='simple' icon>\n <Icon name='filter' />\n </Button>\n <MenuButton\n variant='simple'\n text='More actions'\n icon='more'\n iconOnly\n portal\n menu={{ items: actions }}\n />\n </Flex>\n ),\n subject: 'Pause service'\n }}\n autoCollapse={args.autoCollapse}\n conversations={args.singleConversation ? singleEmailConversation : emailConversations}\n />\n <>\n {Object.keys(composersData).map(guid => {\n return <EmailComposer key={guid} {...composersData[guid]} />;\n })}\n </>\n </>\n );\n};\n\nEmailShellDemo.args = {\n autoCollapse: true,\n hideSuggestions: false,\n singleConversation: true\n};\n\nEmailShellDemo.argTypes = {\n autoCollapse: { control: { type: 'boolean' } },\n hideSuggestions: { control: { type: 'boolean' } },\n singleConversation: { control: { type: 'boolean' } }\n};\n\n// _______ .__ __. .___________. __ .___________.____ ____ __ __ _______.___________.\n// | ____|| \\ | | | || | | |\\ \\ / / | | | | / | |\n// | |__ | \\| | `---| |----`| | `---| |----` \\ \\/ / | | | | | (----`---| |----`\n// | __| | . ` | | | | | | | \\_ _/ | | | | \\ \\ | |\n// | |____ | |\\ | | | | | | | | | | `----.| | .----) | | |\n// |_______||__| \\__| |__| |__| |__| |__| |_______||__| |_______/ |__|\n\ninterface EntityListDemoProps {\n enableContextMenu?: boolean;\n onContextMenu?: (e: MouseEvent) => void;\n}\n\nexport const EntityListDemo: Story<EntityListDemoProps> = (args: EntityListDemoProps) => {\n const itemCounter = useRef(3);\n const timeout = useRef<number | null>(null);\n const imperativeHandle: ContextMenuProps['handle'] = useRef(null);\n const headerProps: EntityListProps['header'] = {\n icon: 'list-number',\n text: 'Entities'\n };\n\n const handleRightClick = () => {\n itemCounter.current += 1;\n if (timeout.current) {\n clearTimeout(timeout.current);\n }\n timeout.current = window.setTimeout(() => {\n imperativeHandle.current?.setContextMenuItems(contextMenuItemsMock);\n }, 1000);\n };\n\n return (\n <EntityList\n header={headerProps}\n content={EntityListMockData}\n contextMenu={\n args.enableContextMenu\n ? {\n onItemClick: action('onItemClick'),\n onContextMenu: args.onContextMenu || handleRightClick,\n handle: imperativeHandle\n }\n : undefined\n }\n />\n );\n};\n\nEntityListDemo.args = {\n enableContextMenu: true\n};\n\nEntityListDemo.argTypes = {\n enableContextMenu: { control: { type: 'boolean' } }\n};\n\n// _______ .___ ___. ___ __ __ _______. __ __ .___ ___. .___ ___. ___ .______ ____ ____ __ .___________. _______ .___ ___.\n// | ____|| \\/ | / \\ | | | | / || | | | | \\/ | | \\/ | / \\ | _ \\ \\ \\ / / | | | || ____|| \\/ |\n// | |__ | \\ / | / ^ \\ | | | | | (----`| | | | | \\ / | | \\ / | / ^ \\ | |_) | \\ \\/ / | | `---| |----`| |__ | \\ / |\n// | __| | |\\/| | / /_\\ \\ | | | | \\ \\ | | | | | |\\/| | | |\\/| | / /_\\ \\ | / \\_ _/ | | | | | __| | |\\/| |\n// | |____ | | | | / _____ \\ | | | `----. .----) | | `--' | | | | | | | | | / _____ \\ | |\\ \\----. | | | | | | | |____ | | | |\n// |_______||__| |__| /__/ \\__\\ |__| |_______| |_______/ \\______/ |__| |__| |__| |__| /__/ \\__\\ | _| `._____| |__| |__| |__| |_______||__| |__|\n\ninterface EmailSummaryItemDemoProps {\n unreadEmailCount?: number;\n isActive?: boolean;\n}\n\nexport const EmailSummaryItemDemo: Story<EmailSummaryItemDemoProps> = (\n args: EmailSummaryItemDemoProps\n) => {\n return (\n <EmailSummaryItem\n id={createUID()}\n activeParticipants={[\n {\n shortName: 'Robert',\n fullName: 'Robert Downer',\n emailAddress: 'robert.downey@example.com'\n },\n {\n shortName: 'Nathan',\n fullName: 'Nathan Swanson',\n emailAddress: 'nathan.swanson@example.com'\n }\n ]}\n message='I have a quick question on traveling to India. How do I reach Hyderabad?'\n timeStamp={new Date(Date.UTC(new Date().getUTCFullYear(), new Date().getUTCMonth(), 24))}\n topic='Missing Luggage'\n sentiment={sentiment}\n urgency={10}\n unreadEmailCount={args.unreadEmailCount}\n active={args.isActive}\n onSelect={(id: EmailSummaryItemProps['id']) => {\n action('onSelect')(id);\n }}\n />\n );\n};\n\nEmailSummaryItemDemo.args = {\n unreadEmailCount: 0,\n isActive: false\n};\n\nEmailSummaryItemDemo.argTypes = {\n unreadEmailCount: { control: { type: 'number' } },\n isActive: { control: { type: 'boolean' } }\n};\n\n// _______ .___ ___. ___ __ __ _______. __ __ .___ ___. .___ ___. ___ .______ ____ ____ __ __ _______.___________.\n// | ____|| \\/ | / \\ | | | | / || | | | | \\/ | | \\/ | / \\ | _ \\ \\ \\ / / | | | | / | |\n// | |__ | \\ / | / ^ \\ | | | | | (----`| | | | | \\ / | | \\ / | / ^ \\ | |_) | \\ \\/ / | | | | | (----`---| |----`\n// | __| | |\\/| | / /_\\ \\ | | | | \\ \\ | | | | | |\\/| | | |\\/| | / /_\\ \\ | / \\_ _/ | | | | \\ \\ | |\n// | |____ | | | | / _____ \\ | | | `----. .----) | | `--' | | | | | | | | | / _____ \\ | |\\ \\----. | | | `----.| | .----) | | |\n// |_______||__| |__| /__/ \\__\\ |__| |_______| |_______/ \\______/ |__| |__| |__| |__| /__/ \\__\\ | _| `._____| |__| |_______||__| |_______/ |__|\n\ninterface EmailSummaryListStoryProps {\n onItemClick?: EmailSummaryListProps['onItemClick'];\n items?: EmailSummaryListProps['items'];\n onLoadMore?: EmailSummaryListProps['onLoadMore'];\n loading?: EmailSummaryListProps['loading'];\n}\n\nexport const EmailSummaryListDemo: Story<EmailSummaryListStoryProps> = (\n args: EmailSummaryListStoryProps\n) => {\n const INITIAL_CHUNK_SIZE = 9;\n const APPEND_CHUNK_SIZE = 1;\n\n const emailSummaryListRef = useRef(null);\n const [allEmailItems, setAllEmailItems] = useState(\n emailSummaryItems.slice(0, INITIAL_CHUNK_SIZE)\n );\n const [categories, setCategories] = useState<MenuProps['items']>(emailWorklistItemsMock);\n\n const handleItemClick = (id: string) => {\n const index = allEmailItems.findIndex(emailItem => {\n return emailItem.id === id;\n });\n\n const newEmailItems = [...allEmailItems];\n newEmailItems.splice(index, 1, { ...allEmailItems[index], unreadEmailCount: 0 });\n\n setAllEmailItems(newEmailItems);\n };\n\n const onCategoryClick: MenuItemProps['onClick'] = (id: MenuItemProps['id']) => {\n setCategories(cur => menuHelpers.toggleSelected(cur, id, 'single-select'));\n };\n\n const [loading, setLoading] = useState(false);\n const [hasMore, setHasMore] = useState(true);\n\n const loadMore = useCallback(() => {\n if (!loading) {\n setLoading(true);\n\n setTimeout(() => {\n setLoading(false);\n setAllEmailItems(prevItems => {\n const previousItemsLength = prevItems.length;\n const newItems = emailSummaryItems.slice(\n previousItemsLength,\n previousItemsLength + APPEND_CHUNK_SIZE\n );\n\n if (newItems.length === 0) {\n setHasMore(false);\n }\n\n return [...prevItems, ...newItems];\n });\n }, 1500);\n }\n }, [loading]);\n\n return (\n <EmailSummaryList\n ref={emailSummaryListRef}\n unreadEmailCount={99}\n categories={categories}\n items={args.items || allEmailItems}\n onItemClick={args.onItemClick || handleItemClick}\n onCategoryClick={onCategoryClick}\n onLoadMore={args.onLoadMore || (hasMore ? loadMore : undefined)}\n loading={args.loading || loading}\n emptyMessage='No emails.'\n />\n );\n};\n\n// _______ .___ ___. ___ __ __ .___ ___. ___ .__ __. ___ _______ _______ .______\n// | ____|| \\/ | / \\ | | | | | \\/ | / \\ | \\ | | / \\ / _____|| ____|| _ \\\n// | |__ | \\ / | / ^ \\ | | | | | \\ / | / ^ \\ | \\| | / ^ \\ | | __ | |__ | |_) |\n// | __| | |\\/| | / /_\\ \\ | | | | | |\\/| | / /_\\ \\ | . ` | / /_\\ \\ | | |_ | | __| | /\n// | |____ | | | | / _____ \\ | | | `----. | | | | / _____ \\ | |\\ | / _____ \\ | |__| | | |____ | |\\ \\----.\n// |_______||__| |__| /__/ \\__\\ |__| |_______| |__| |__| /__/ \\__\\ |__| \\__| /__/ \\__\\ \\______| |_______|| _| `._____|\n\ninterface EmailManagerAppShellProps {\n enableContextMenu?: boolean;\n onContextMenu?: (e: MouseEvent) => void;\n}\n\nexport const EmailManagerAppShell: Story<EmailManagerAppShellProps> = (\n args: EmailManagerAppShellProps\n) => {\n const INITIAL_CHUNK_SIZE = 9;\n const APPEND_CHUNK_SIZE = 1;\n\n const [activeItemId, setActiveItemId] = useState<string | undefined>();\n const [emailList, setEmailList] = useState(emailSummaryItems.slice(0, INITIAL_CHUNK_SIZE));\n const [loading, setLoading] = useState(false);\n const [hasMore, setHasMore] = useState(true);\n\n const handleEmailItemClick = (id: EmailSummaryItemProps['id']) => {\n setActiveItemId(id);\n\n const index = emailList.findIndex(emailItem => {\n return emailItem.id === id;\n });\n\n const newEmailList = [...emailList];\n newEmailList.splice(index, 1, { ...emailList[index], unreadEmailCount: 0 });\n\n setEmailList(newEmailList);\n };\n\n const onLoadMore = useCallback(() => {\n if (!loading) {\n setLoading(true);\n\n setTimeout(() => {\n setLoading(false);\n setEmailList(prevItems => {\n const previousItemsLength = prevItems.length;\n const newItems = emailSummaryItems.slice(\n previousItemsLength,\n previousItemsLength + APPEND_CHUNK_SIZE\n );\n\n if (newItems.length === 0) {\n setHasMore(false);\n }\n\n return [...prevItems, ...newItems];\n });\n }, 1500);\n }\n }, [loading]);\n\n const activeItemIndex = useMemo(\n () => emailList.findIndex(emailItem => emailItem.id === activeItemId),\n [activeItemId, emailList]\n );\n\n const content =\n activeItemId === undefined ? (\n <EmptyState message='No item selected!' />\n ) : (\n <EmailShellDemo singleConversation={activeItemIndex % 2 === 0} />\n );\n\n const utilities =\n activeItemId === undefined ? null : (\n // View analysis utility\n <Grid container={{ rowGap: 2 }}>\n <EntityListDemo\n onContextMenu={args.onContextMenu}\n enableContextMenu={args.enableContextMenu}\n />\n <Card>\n <CardHeader container={{ alignItems: 'center', gap: 1 }}>\n <Icon name='document-doc' />\n <Text variant='h3'>Email header</Text>\n </CardHeader>\n <CardContent>\n <FieldValueList fields={viewAnalysisEmailHeaderMock} variant='stacked' />\n </CardContent>\n </Card>\n <SummaryList\n name='Topics'\n icon='headline'\n items={topicListMock.map(items => ({\n ...items,\n primary: <StyledLabel>{items.primary}</StyledLabel>,\n secondary: (\n <Flex container={{ direction: 'row', justify: 'between' }}>\n <Text variant='primary'>{items.secondary.indicator}</Text>\n <StyledLabel>{items.secondary.value}</StyledLabel>\n </Flex>\n )\n }))}\n noItemsText='No items'\n />\n </Grid>\n );\n\n return (\n <AppShellDemo\n appHeader\n main={\n <EmailManager\n header={{\n icon: 'mail',\n title: 'Inbox'\n }}\n list={\n <EmailSummaryListDemo\n onItemClick={handleEmailItemClick}\n items={emailList}\n onLoadMore={hasMore ? onLoadMore : undefined}\n loading={loading}\n />\n }\n content={content}\n utilities={utilities}\n utilitiesSummaryItems={\n utilities\n ? [\n { iconName: 'list-number', count: 7 },\n { iconName: 'document-doc', count: 1 },\n { iconName: 'headline', count: 4 }\n ]\n : undefined\n }\n defaultCollapsedUtilities={!!utilities}\n />\n }\n />\n );\n};\n\nEmailManagerAppShell.args = {\n enableContextMenu: true\n};\n\nEmailManagerAppShell.argTypes = {\n enableContextMenu: { control: { type: 'boolean' } }\n};\nEmailManagerAppShell.parameters = {\n layout: 'fullscreen'\n};\n"]}
@@ -1,4 +1,3 @@
1
1
  /// <reference types="react" />
2
2
  export declare const StyledEmailCardContent: import("styled-components").StyledComponent<import("react").FunctionComponent<import("@pega/cosmos-react-core").CardContentProps & import("@pega/cosmos-react-core").ForwardProps>, import("styled-components").DefaultTheme, {}, never>;
3
- export declare const StyledViewAnalysis: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
4
3
  //# sourceMappingURL=Email.styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Email.styles.d.ts","sourceRoot":"","sources":["../../../src/social/Email/Email.styles.ts"],"names":[],"mappings":";AAIA,eAAO,MAAM,sBAAsB,0OAMjC,CAAC;AAIH,eAAO,MAAM,kBAAkB,yGAE9B,CAAC"}
1
+ {"version":3,"file":"Email.styles.d.ts","sourceRoot":"","sources":["../../../src/social/Email/Email.styles.ts"],"names":[],"mappings":";AAIA,eAAO,MAAM,sBAAsB,0OAMjC,CAAC"}
@@ -8,7 +8,4 @@ export const StyledEmailCardContent = styled(CardContent)(({ theme }) => {
8
8
  `;
9
9
  });
10
10
  StyledEmailCardContent.defaultProps = defaultThemeProp;
11
- export const StyledViewAnalysis = styled.div `
12
- width: 18rem;
13
- `;
14
11
  //# sourceMappingURL=Email.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Email.styles.js","sourceRoot":"","sources":["../../../src/social/Email/Email.styles.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAExE,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IACtE,OAAO,GAAG,CAAA;;0BAEc,KAAK,CAAC,IAAI,CAAC,OAAO;;GAEzC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,sBAAsB,CAAC,YAAY,GAAG,gBAAgB,CAAC;AAEvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAA;;CAE3C,CAAC","sourcesContent":["import styled, { css } from 'styled-components';\n\nimport { CardContent, defaultThemeProp } from '@pega/cosmos-react-core';\n\nexport const StyledEmailCardContent = styled(CardContent)(({ theme }) => {\n return css`\n &&&& {\n padding: calc(2 * ${theme.base.spacing}) 0;\n }\n `;\n});\n\nStyledEmailCardContent.defaultProps = defaultThemeProp;\n\nexport const StyledViewAnalysis = styled.div`\n width: 18rem;\n`;\n"]}
1
+ {"version":3,"file":"Email.styles.js","sourceRoot":"","sources":["../../../src/social/Email/Email.styles.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAExE,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IACtE,OAAO,GAAG,CAAA;;0BAEc,KAAK,CAAC,IAAI,CAAC,OAAO;;GAEzC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,sBAAsB,CAAC,YAAY,GAAG,gBAAgB,CAAC","sourcesContent":["import styled, { css } from 'styled-components';\n\nimport { CardContent, defaultThemeProp } from '@pega/cosmos-react-core';\n\nexport const StyledEmailCardContent = styled(CardContent)(({ theme }) => {\n return css`\n &&&& {\n padding: calc(2 * ${theme.base.spacing}) 0;\n }\n `;\n});\n\nStyledEmailCardContent.defaultProps = defaultThemeProp;\n"]}
@@ -4,6 +4,9 @@ declare const _default: Meta<import("@storybook/react").Args>;
4
4
  export default _default;
5
5
  interface ConfirmationStoryProps {
6
6
  title: ConfirmationProps['title'];
7
+ showDetails?: boolean;
8
+ showWhatsNext?: boolean;
9
+ showTasks?: boolean;
7
10
  }
8
11
  export declare const ConfirmationDemo: Story<ConfirmationStoryProps>;
9
12
  //# sourceMappingURL=Confirmation.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Confirmation.stories.d.ts","sourceRoot":"","sources":["../../../src/work/Confirmation/Confirmation.stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAAgB,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;;AAO1E,wBAGU;AAEV,UAAU,sBAAsB;IAC9B,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;CACnC;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,sBAAsB,CAuB1D,CAAC"}
1
+ {"version":3,"file":"Confirmation.stories.d.ts","sourceRoot":"","sources":["../../../src/work/Confirmation/Confirmation.stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAAgB,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;;AAO1E,wBAGU;AAEV,UAAU,sBAAsB;IAC9B,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAClC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,sBAAsB,CAkC1D,CAAC"}
@@ -3,7 +3,7 @@ import { useState } from 'react';
3
3
  import { Button, Flex } from '@pega/cosmos-react-core';
4
4
  import { Confirmation } from '@pega/cosmos-react-work';
5
5
  import { FieldValueListDemo } from '../../core/FieldValueList/FieldValueList.stories';
6
- import { TaskListDemo } from '../Tasks/TaskList.stories';
6
+ import { TasksDemo } from '../Tasks/Tasks.stories';
7
7
  import { StyledFlex } from './Confirmation.styles';
8
8
  export default {
9
9
  title: 'Work/Confirmation',
@@ -11,16 +11,20 @@ export default {
11
11
  };
12
12
  export const ConfirmationDemo = (args) => {
13
13
  const [showConfirmation, setShowConfirmation] = useState(true);
14
- return (_jsxs(Flex, { as: StyledFlex, container: { justify: 'center', alignItems: 'center' }, children: [showConfirmation && (_jsx(Confirmation, { title: args.title, details: _jsx(FieldValueListDemo, { name: 'Project', value: 'Pega Cosmos' }), whatsNext: [
15
- 'Send references',
16
- 'Collect information on the case',
17
- 'Prepare a demonstration'
18
- ], tasks: _jsx(TaskListDemo, {}), onClose: () => setShowConfirmation(false) })), !showConfirmation && (_jsx(Button, { onClick: () => setShowConfirmation(true), children: "Show confirmation" }))] }));
14
+ return (_jsxs(Flex, { as: StyledFlex, container: { justify: 'center', alignItems: 'center' }, children: [showConfirmation && (_jsx(Confirmation, { title: args.title, details: args.showDetails ? _jsx(FieldValueListDemo, { name: 'Project', value: 'Pega Cosmos' }) : undefined, whatsNext: args.showWhatsNext
15
+ ? ['Send references', 'Collect information on the case', 'Prepare a demonstration']
16
+ : undefined, tasks: args.showTasks ? (_jsx(TasksDemo, { showHeaderVisual: false, showHeaderSecondary: false, count: 3, openableTasks: false })) : undefined, onClose: () => setShowConfirmation(false) })), !showConfirmation && (_jsx(Button, { onClick: () => setShowConfirmation(true), children: "Show confirmation" }))] }));
19
17
  };
20
18
  ConfirmationDemo.args = {
21
- title: 'US-1337 confirmation'
19
+ title: 'US-1337 confirmation',
20
+ showDetails: true,
21
+ showWhatsNext: true,
22
+ showTasks: true
22
23
  };
23
24
  ConfirmationDemo.argTypes = {
24
- title: { control: { type: 'text' } }
25
+ title: { control: { type: 'text' } },
26
+ showDetails: { control: { type: 'boolean' } },
27
+ showWhatsNext: { control: { type: 'boolean' } },
28
+ showTasks: { control: { type: 'boolean' } }
25
29
  };
26
30
  //# sourceMappingURL=Confirmation.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Confirmation.stories.js","sourceRoot":"","sources":["../../../src/work/Confirmation/Confirmation.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGjC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAqB,MAAM,yBAAyB,CAAC;AAE1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,eAAe;IACb,KAAK,EAAE,mBAAmB;IAC1B,SAAS,EAAE,YAAY;CAChB,CAAC;AAMV,MAAM,CAAC,MAAM,gBAAgB,GAAkC,CAAC,IAA4B,EAAE,EAAE;IAC9F,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE/D,OAAO,CACL,MAAC,IAAI,IAAC,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,aACzE,gBAAgB,IAAI,CACnB,KAAC,YAAY,IACX,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,KAAC,kBAAkB,IAAC,IAAI,EAAC,SAAS,EAAC,KAAK,EAAC,aAAa,GAAG,EAClE,SAAS,EAAE;oBACT,iBAAiB;oBACjB,iCAAiC;oBACjC,yBAAyB;iBAC1B,EACD,KAAK,EAAE,KAAC,YAAY,KAAG,EACvB,OAAO,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,GACzC,CACH,EACA,CAAC,gBAAgB,IAAI,CACpB,KAAC,MAAM,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,kCAA4B,CAC7E,IACI,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,gBAAgB,CAAC,IAAI,GAAG;IACtB,KAAK,EAAE,sBAAsB;CAC9B,CAAC;AAEF,gBAAgB,CAAC,QAAQ,GAAG;IAC1B,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;CACrC,CAAC","sourcesContent":["import { useState } from 'react';\nimport { Meta, Story } from '@storybook/react';\n\nimport { Button, Flex } from '@pega/cosmos-react-core';\nimport { Confirmation, ConfirmationProps } from '@pega/cosmos-react-work';\n\nimport { FieldValueListDemo } from '../../core/FieldValueList/FieldValueList.stories';\nimport { TaskListDemo } from '../Tasks/TaskList.stories';\n\nimport { StyledFlex } from './Confirmation.styles';\n\nexport default {\n title: 'Work/Confirmation',\n component: Confirmation\n} as Meta;\n\ninterface ConfirmationStoryProps {\n title: ConfirmationProps['title'];\n}\n\nexport const ConfirmationDemo: Story<ConfirmationStoryProps> = (args: ConfirmationStoryProps) => {\n const [showConfirmation, setShowConfirmation] = useState(true);\n\n return (\n <Flex as={StyledFlex} container={{ justify: 'center', alignItems: 'center' }}>\n {showConfirmation && (\n <Confirmation\n title={args.title}\n details={<FieldValueListDemo name='Project' value='Pega Cosmos' />}\n whatsNext={[\n 'Send references',\n 'Collect information on the case',\n 'Prepare a demonstration'\n ]}\n tasks={<TaskListDemo />}\n onClose={() => setShowConfirmation(false)}\n />\n )}\n {!showConfirmation && (\n <Button onClick={() => setShowConfirmation(true)}>Show confirmation</Button>\n )}\n </Flex>\n );\n};\n\nConfirmationDemo.args = {\n title: 'US-1337 confirmation'\n};\n\nConfirmationDemo.argTypes = {\n title: { control: { type: 'text' } }\n};\n"]}
1
+ {"version":3,"file":"Confirmation.stories.js","sourceRoot":"","sources":["../../../src/work/Confirmation/Confirmation.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGjC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAqB,MAAM,yBAAyB,CAAC;AAE1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,eAAe;IACb,KAAK,EAAE,mBAAmB;IAC1B,SAAS,EAAE,YAAY;CAChB,CAAC;AASV,MAAM,CAAC,MAAM,gBAAgB,GAAkC,CAAC,IAA4B,EAAE,EAAE;IAC9F,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE/D,OAAO,CACL,MAAC,IAAI,IAAC,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,aACzE,gBAAgB,IAAI,CACnB,KAAC,YAAY,IACX,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EACL,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAC,kBAAkB,IAAC,IAAI,EAAC,SAAS,EAAC,KAAK,EAAC,aAAa,GAAG,CAAC,CAAC,CAAC,SAAS,EAE1F,SAAS,EACP,IAAI,CAAC,aAAa;oBAChB,CAAC,CAAC,CAAC,iBAAiB,EAAE,iCAAiC,EAAE,yBAAyB,CAAC;oBACnF,CAAC,CAAC,SAAS,EAEf,KAAK,EACH,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CACf,KAAC,SAAS,IACR,gBAAgB,EAAE,KAAK,EACvB,mBAAmB,EAAE,KAAK,EAC1B,KAAK,EAAE,CAAC,EACR,aAAa,EAAE,KAAK,GACpB,CACH,CAAC,CAAC,CAAC,SAAS,EAEf,OAAO,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,GACzC,CACH,EACA,CAAC,gBAAgB,IAAI,CACpB,KAAC,MAAM,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,kCAA4B,CAC7E,IACI,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,gBAAgB,CAAC,IAAI,GAAG;IACtB,KAAK,EAAE,sBAAsB;IAC7B,WAAW,EAAE,IAAI;IACjB,aAAa,EAAE,IAAI;IACnB,SAAS,EAAE,IAAI;CAChB,CAAC;AAEF,gBAAgB,CAAC,QAAQ,GAAG;IAC1B,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IACpC,WAAW,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC7C,aAAa,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC/C,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;CAC5C,CAAC","sourcesContent":["import { useState } from 'react';\nimport { Meta, Story } from '@storybook/react';\n\nimport { Button, Flex } from '@pega/cosmos-react-core';\nimport { Confirmation, ConfirmationProps } from '@pega/cosmos-react-work';\n\nimport { FieldValueListDemo } from '../../core/FieldValueList/FieldValueList.stories';\nimport { TasksDemo } from '../Tasks/Tasks.stories';\n\nimport { StyledFlex } from './Confirmation.styles';\n\nexport default {\n title: 'Work/Confirmation',\n component: Confirmation\n} as Meta;\n\ninterface ConfirmationStoryProps {\n title: ConfirmationProps['title'];\n showDetails?: boolean;\n showWhatsNext?: boolean;\n showTasks?: boolean;\n}\n\nexport const ConfirmationDemo: Story<ConfirmationStoryProps> = (args: ConfirmationStoryProps) => {\n const [showConfirmation, setShowConfirmation] = useState(true);\n\n return (\n <Flex as={StyledFlex} container={{ justify: 'center', alignItems: 'center' }}>\n {showConfirmation && (\n <Confirmation\n title={args.title}\n details={\n args.showDetails ? <FieldValueListDemo name='Project' value='Pega Cosmos' /> : undefined\n }\n whatsNext={\n args.showWhatsNext\n ? ['Send references', 'Collect information on the case', 'Prepare a demonstration']\n : undefined\n }\n tasks={\n args.showTasks ? (\n <TasksDemo\n showHeaderVisual={false}\n showHeaderSecondary={false}\n count={3}\n openableTasks={false}\n />\n ) : undefined\n }\n onClose={() => setShowConfirmation(false)}\n />\n )}\n {!showConfirmation && (\n <Button onClick={() => setShowConfirmation(true)}>Show confirmation</Button>\n )}\n </Flex>\n );\n};\n\nConfirmationDemo.args = {\n title: 'US-1337 confirmation',\n showDetails: true,\n showWhatsNext: true,\n showTasks: true\n};\n\nConfirmationDemo.argTypes = {\n title: { control: { type: 'text' } },\n showDetails: { control: { type: 'boolean' } },\n showWhatsNext: { control: { type: 'boolean' } },\n showTasks: { control: { type: 'boolean' } }\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Details.stories.d.ts","sourceRoot":"","sources":["../../../src/work/Details/Details.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;;AAgB/C,wBAGU;AAEV,eAAO,MAAM,WAAW,EAAE,KAuFzB,CAAC"}
1
+ {"version":3,"file":"Details.stories.d.ts","sourceRoot":"","sources":["../../../src/work/Details/Details.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;;AAK/C,wBAMU;AAEV,eAAO,MAAM,WAAW,EAAE,KA4DzB,CAAC"}
@@ -1,65 +1,20 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { CurrencyDisplay, DateTimeDisplay, URLDisplay, BooleanDisplay, FieldGroup, FieldValueList, LocationDisplay, MapsContext, PhoneDisplay, EmailDisplay } from '@pega/cosmos-react-core';
3
- import { Details } from '@pega/cosmos-react-work';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { FieldValueItem, useBreakpoint } from '@pega/cosmos-react-core';
3
+ import { Details, DetailsContext } from '@pega/cosmos-react-work';
4
4
  export default {
5
5
  title: 'Work/Details',
6
- component: Details
6
+ component: Details,
7
+ parameters: {
8
+ layout: 'centered'
9
+ }
7
10
  };
8
11
  export const DetailsDemo = () => {
9
- return (_jsx(MapsContext.Provider, { value: { name: 'google' }, children: _jsx(Details, { highlightedFields: [
10
- {
11
- id: '1',
12
- name: 'Statement balance',
13
- value: _jsx(CurrencyDisplay, { value: 1289.0, currencyISOCode: 'USD' })
14
- },
15
- {
16
- id: '2',
17
- name: 'Total balance',
18
- value: _jsx(CurrencyDisplay, { value: 35667.0, currencyISOCode: 'USD' })
19
- },
20
- {
21
- id: '3',
22
- name: 'Available credit',
23
- value: _jsx(CurrencyDisplay, { value: 5813.0, currencyISOCode: 'USD' })
24
- },
25
- {
26
- id: '4',
27
- name: 'Payment due date',
28
- value: _jsx(DateTimeDisplay, { value: Date.now(), variant: 'datetime', format: 'long' })
29
- },
30
- {
31
- id: '5',
32
- name: 'Available benefits',
33
- value: (_jsx(URLDisplay, { value: 'https://www.google.com/', displayText: 'View benefits', variant: 'link' }))
34
- },
35
- {
36
- id: '6',
37
- name: 'Platinum member',
38
- value: _jsx(BooleanDisplay, { value: true })
39
- }
40
- ], regions: [
41
- _jsx(FieldGroup, { name: 'Personal', children: _jsx(FieldValueList, { fields: [
42
- {
43
- name: 'Home address',
44
- value: (_jsx(LocationDisplay, { value: '12 Higgins Bottom Way, Carnell, NH, 02133', variant: 'text' }))
45
- },
46
- { name: 'Primary phone', value: _jsx(PhoneDisplay, { value: '+15553749637' }) },
47
- {
48
- name: 'Primary email',
49
- value: _jsx(EmailDisplay, { value: 'joe.smith@example.com' })
50
- }
51
- ] }) }),
52
- _jsx(FieldGroup, { name: 'Work', children: _jsx(FieldValueList, { fields: [
53
- {
54
- name: 'Work address',
55
- value: (_jsx(LocationDisplay, { value: '1 Monolith Business Parkway, Milltown, NH, 02333', variant: 'text' }))
56
- },
57
- { name: 'Work phone', value: _jsx(PhoneDisplay, { value: '+15553742200' }) },
58
- {
59
- name: 'Work email',
60
- value: _jsx(EmailDisplay, { value: 'jane.smith@example.com' })
61
- }
62
- ] }) })
63
- ] }) }));
12
+ const isNotMobile = useBreakpoint('sm');
13
+ return (_jsx(DetailsContext.Provider, { value: { mobileView: !isNotMobile }, children: _jsxs(Details, { name: 'Outer list', highlightedData: [
14
+ _jsx(FieldValueItem, { variant: 'stacked', name: 'Age', value: '56' }),
15
+ _jsx(FieldValueItem, { variant: 'stacked', name: 'Location', value: 'Berlin' }),
16
+ _jsx(FieldValueItem, { variant: 'stacked', name: 'Make', value: 'Ford' }),
17
+ _jsx(FieldValueItem, { variant: 'stacked', name: 'Model', value: 'F150' })
18
+ ], children: [_jsxs(Details, { name: 'Nested as flex', nested: true, asFlex: true, children: [_jsx(Details, { nested: true, children: _jsxs(Details, { name: 'Purchase details', nested: true, children: [_jsx(FieldValueItem, { name: 'Make', value: 'Ford' }), _jsx(FieldValueItem, { name: 'Model', value: 'F150' })] }) }), _jsxs(Details, { nested: true, children: [_jsx(FieldValueItem, { name: 'Mileage', value: '78,500' }), _jsx(FieldValueItem, { name: 'Trim', value: 'Lariat' })] })] }), _jsx(FieldValueItem, { name: 'Description', variant: 'stacked', value: _jsx("p", { children: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse commodo nulla vitae mi bibendum, a fringilla nisl efficitur. Praesent vitae nulla lobortis, finibus felis ultricies, fermentum mi. Nunc lorem ligula, placerat nec elit id, auctor pellentesque est. Pellentesque pharetra justo augue, non maximus nulla venenatis et. Sed laoreet ultricies ullamcorper. Mauris ac nulla quis ipsum semper fringilla in eget risus. Fusce cursus sollicitudin nibh molestie volutpat." }) }), _jsxs(Details, { name: 'Nested list', nested: true, children: [_jsx(FieldValueItem, { name: 'First name', value: 'Howard' }), _jsx(FieldValueItem, { name: 'Last name', value: 'Kennedy' }), _jsxs(Details, { name: 'Deeper list', nested: true, children: [_jsx(FieldValueItem, { name: 'Color', value: 'red' }), _jsx(FieldValueItem, { name: 'Year', value: '2017' })] })] }), _jsx(FieldValueItem, { name: 'Age', value: '56' }), _jsx(FieldValueItem, { name: 'Location', value: 'Berlin' })] }) }));
64
19
  };
65
20
  //# sourceMappingURL=Details.stories.js.map