@pega/cosmos-react-demos 3.0.0-dev.20.0 → 3.0.0-dev.21.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 (265) hide show
  1. package/jsx/build/ExpressionBuilder/ExpressionBuilder.mocks.d.ts +11 -0
  2. package/jsx/build/ExpressionBuilder/ExpressionBuilder.mocks.d.ts.map +1 -0
  3. package/jsx/build/ExpressionBuilder/ExpressionBuilder.mocks.js +135 -0
  4. package/jsx/build/ExpressionBuilder/ExpressionBuilder.mocks.js.map +1 -0
  5. package/jsx/build/ExpressionBuilder/ExpressionBuilder.stories.d.ts +18 -0
  6. package/jsx/build/ExpressionBuilder/ExpressionBuilder.stories.d.ts.map +1 -0
  7. package/jsx/build/ExpressionBuilder/ExpressionBuilder.stories.jsx +72 -0
  8. package/jsx/build/ExpressionBuilder/ExpressionBuilder.stories.jsx.map +1 -0
  9. package/jsx/build/ObjectSelect/ObjectSelect.stories.d.ts.map +1 -1
  10. package/jsx/build/ObjectSelect/ObjectSelect.stories.jsx +3 -2
  11. package/jsx/build/ObjectSelect/ObjectSelect.stories.jsx.map +1 -1
  12. package/jsx/core/AdditionalInfo/AdditionalInfo.stories.d.ts +9 -0
  13. package/jsx/core/AdditionalInfo/AdditionalInfo.stories.d.ts.map +1 -0
  14. package/jsx/core/AdditionalInfo/AdditionalInfo.stories.jsx +25 -0
  15. package/jsx/core/AdditionalInfo/AdditionalInfo.stories.jsx.map +1 -0
  16. package/jsx/core/AppShell/AppShell.stories.d.ts.map +1 -1
  17. package/jsx/core/AppShell/AppShell.stories.jsx +11 -1
  18. package/jsx/core/AppShell/AppShell.stories.jsx.map +1 -1
  19. package/jsx/core/Checkbox/Checkbox.stories.d.ts +6 -2
  20. package/jsx/core/Checkbox/Checkbox.stories.d.ts.map +1 -1
  21. package/jsx/core/Checkbox/Checkbox.stories.jsx +26 -7
  22. package/jsx/core/Checkbox/Checkbox.stories.jsx.map +1 -1
  23. package/jsx/core/CheckboxGroup/CheckboxGroup.stories.d.ts +6 -2
  24. package/jsx/core/CheckboxGroup/CheckboxGroup.stories.d.ts.map +1 -1
  25. package/jsx/core/CheckboxGroup/CheckboxGroup.stories.jsx +46 -5
  26. package/jsx/core/CheckboxGroup/CheckboxGroup.stories.jsx.map +1 -1
  27. package/jsx/core/ColorPicker/ColorPicker.stories.d.ts +4 -1
  28. package/jsx/core/ColorPicker/ColorPicker.stories.d.ts.map +1 -1
  29. package/jsx/core/ColorPicker/ColorPicker.stories.jsx +10 -3
  30. package/jsx/core/ColorPicker/ColorPicker.stories.jsx.map +1 -1
  31. package/jsx/core/ComboBox/ComboBox.stories.d.ts +1 -0
  32. package/jsx/core/ComboBox/ComboBox.stories.d.ts.map +1 -1
  33. package/jsx/core/ComboBox/ComboBox.stories.jsx +40 -8
  34. package/jsx/core/ComboBox/ComboBox.stories.jsx.map +1 -1
  35. package/jsx/core/CompositeInput/CompositeInput.stories.d.ts +4 -1
  36. package/jsx/core/CompositeInput/CompositeInput.stories.d.ts.map +1 -1
  37. package/jsx/core/CompositeInput/CompositeInput.stories.jsx +7 -3
  38. package/jsx/core/CompositeInput/CompositeInput.stories.jsx.map +1 -1
  39. package/jsx/core/CreditCard/CreditCard.stories.d.ts +4 -1
  40. package/jsx/core/CreditCard/CreditCard.stories.d.ts.map +1 -1
  41. package/jsx/core/CreditCard/CreditCard.stories.jsx +10 -3
  42. package/jsx/core/CreditCard/CreditCard.stories.jsx.map +1 -1
  43. package/jsx/core/Currency/Currency.stories.d.ts +4 -1
  44. package/jsx/core/Currency/Currency.stories.d.ts.map +1 -1
  45. package/jsx/core/Currency/Currency.stories.jsx +10 -3
  46. package/jsx/core/Currency/Currency.stories.jsx.map +1 -1
  47. package/jsx/core/DateTime/DateTime.stories.d.ts +39 -9
  48. package/jsx/core/DateTime/DateTime.stories.d.ts.map +1 -1
  49. package/jsx/core/DateTime/DateTime.stories.jsx +83 -14
  50. package/jsx/core/DateTime/DateTime.stories.jsx.map +1 -1
  51. package/jsx/core/FieldValueList/FieldValueList.mocks.d.ts +3 -0
  52. package/jsx/core/FieldValueList/FieldValueList.mocks.d.ts.map +1 -0
  53. package/jsx/core/FieldValueList/FieldValueList.mocks.js +9 -0
  54. package/jsx/core/FieldValueList/FieldValueList.mocks.js.map +1 -0
  55. package/jsx/core/FieldValueList/FieldValueList.stories.d.ts +1 -0
  56. package/jsx/core/FieldValueList/FieldValueList.stories.d.ts.map +1 -1
  57. package/jsx/core/FieldValueList/FieldValueList.stories.jsx +34 -2
  58. package/jsx/core/FieldValueList/FieldValueList.stories.jsx.map +1 -1
  59. package/jsx/core/Form/Form.mocks.jsx +2 -2
  60. package/jsx/core/Form/Form.mocks.jsx.map +1 -1
  61. package/jsx/core/IconPicker/IconPicker.stories.d.ts.map +1 -1
  62. package/jsx/core/IconPicker/IconPicker.stories.jsx +6 -9
  63. package/jsx/core/IconPicker/IconPicker.stories.jsx.map +1 -1
  64. package/jsx/core/Input/Input.stories.d.ts +1 -0
  65. package/jsx/core/Input/Input.stories.d.ts.map +1 -1
  66. package/jsx/core/Input/Input.stories.jsx +8 -1
  67. package/jsx/core/Input/Input.stories.jsx.map +1 -1
  68. package/jsx/core/Location/Location.stories.d.ts +4 -1
  69. package/jsx/core/Location/Location.stories.d.ts.map +1 -1
  70. package/jsx/core/Location/Location.stories.jsx +10 -3
  71. package/jsx/core/Location/Location.stories.jsx.map +1 -1
  72. package/jsx/core/Number/Number.stories.d.ts +1 -0
  73. package/jsx/core/Number/Number.stories.d.ts.map +1 -1
  74. package/jsx/core/Number/Number.stories.jsx +15 -7
  75. package/jsx/core/Number/Number.stories.jsx.map +1 -1
  76. package/jsx/core/Phone/Phone.stories.d.ts +4 -1
  77. package/jsx/core/Phone/Phone.stories.d.ts.map +1 -1
  78. package/jsx/core/Phone/Phone.stories.jsx +10 -3
  79. package/jsx/core/Phone/Phone.stories.jsx.map +1 -1
  80. package/jsx/core/RadioButton/RadioButton.stories.d.ts +6 -2
  81. package/jsx/core/RadioButton/RadioButton.stories.d.ts.map +1 -1
  82. package/jsx/core/RadioButton/RadioButton.stories.jsx +22 -5
  83. package/jsx/core/RadioButton/RadioButton.stories.jsx.map +1 -1
  84. package/jsx/core/RadioButtonGroup/RadioButtonGroup.stories.d.ts +6 -2
  85. package/jsx/core/RadioButtonGroup/RadioButtonGroup.stories.d.ts.map +1 -1
  86. package/jsx/core/RadioButtonGroup/RadioButtonGroup.stories.jsx +46 -5
  87. package/jsx/core/RadioButtonGroup/RadioButtonGroup.stories.jsx.map +1 -1
  88. package/jsx/core/Select/Select.stories.d.ts +1 -0
  89. package/jsx/core/Select/Select.stories.d.ts.map +1 -1
  90. package/jsx/core/Select/Select.stories.jsx +10 -3
  91. package/jsx/core/Select/Select.stories.jsx.map +1 -1
  92. package/jsx/core/TextArea/TextArea.stories.d.ts +4 -1
  93. package/jsx/core/TextArea/TextArea.stories.d.ts.map +1 -1
  94. package/jsx/core/TextArea/TextArea.stories.jsx +10 -3
  95. package/jsx/core/TextArea/TextArea.stories.jsx.map +1 -1
  96. package/jsx/rte/RichTextEditor/RichTextEditor.stories.d.ts +4 -1
  97. package/jsx/rte/RichTextEditor/RichTextEditor.stories.d.ts.map +1 -1
  98. package/jsx/rte/RichTextEditor/RichTextEditor.stories.jsx +10 -3
  99. package/jsx/rte/RichTextEditor/RichTextEditor.stories.jsx.map +1 -1
  100. package/jsx/social/Chat/Chat.mocks.d.ts +1 -1
  101. package/jsx/social/Chat/Chat.mocks.js +0 -1
  102. package/jsx/social/Chat/Chat.mocks.js.map +1 -1
  103. package/jsx/social/Email/Email.mocks.d.ts +39 -1
  104. package/jsx/social/Email/Email.mocks.d.ts.map +1 -1
  105. package/jsx/social/Email/Email.mocks.jsx +78 -39
  106. package/jsx/social/Email/Email.mocks.jsx.map +1 -1
  107. package/jsx/social/Email/Email.stories.d.ts.map +1 -1
  108. package/jsx/social/Email/Email.stories.jsx +174 -87
  109. package/jsx/social/Email/Email.stories.jsx.map +1 -1
  110. package/jsx/tools/Clipboard/Clipboard.mocks.d.ts +6 -0
  111. package/jsx/tools/Clipboard/Clipboard.mocks.d.ts.map +1 -0
  112. package/jsx/tools/Clipboard/Clipboard.mocks.jsx +82 -0
  113. package/jsx/tools/Clipboard/Clipboard.mocks.jsx.map +1 -0
  114. package/jsx/tools/Clipboard/Clipboard.stories.d.ts +6 -0
  115. package/jsx/tools/Clipboard/Clipboard.stories.d.ts.map +1 -0
  116. package/jsx/tools/Clipboard/Clipboard.stories.jsx +68 -0
  117. package/jsx/tools/Clipboard/Clipboard.stories.jsx.map +1 -0
  118. package/jsx/tools/PreviewShell/PreviewShell.mocks.d.ts +9 -0
  119. package/jsx/tools/PreviewShell/PreviewShell.mocks.d.ts.map +1 -0
  120. package/jsx/tools/PreviewShell/PreviewShell.mocks.jsx +58 -0
  121. package/jsx/tools/PreviewShell/PreviewShell.mocks.jsx.map +1 -0
  122. package/jsx/tools/PreviewShell/PreviewShell.stories.d.ts +15 -0
  123. package/jsx/tools/PreviewShell/PreviewShell.stories.d.ts.map +1 -0
  124. package/jsx/tools/PreviewShell/PreviewShell.stories.jsx +107 -0
  125. package/jsx/tools/PreviewShell/PreviewShell.stories.jsx.map +1 -0
  126. package/jsx/tools/PreviewShell/PreviewShell.styles.d.ts +3 -0
  127. package/jsx/tools/PreviewShell/PreviewShell.styles.d.ts.map +1 -0
  128. package/jsx/tools/PreviewShell/PreviewShell.styles.js +7 -0
  129. package/jsx/tools/PreviewShell/PreviewShell.styles.js.map +1 -0
  130. package/jsx/work/Details/Details.stories.d.ts.map +1 -1
  131. package/jsx/work/Details/Details.stories.jsx +9 -2
  132. package/jsx/work/Details/Details.stories.jsx.map +1 -1
  133. package/lib/build/ExpressionBuilder/ExpressionBuilder.mocks.d.ts +11 -0
  134. package/lib/build/ExpressionBuilder/ExpressionBuilder.mocks.d.ts.map +1 -0
  135. package/lib/build/ExpressionBuilder/ExpressionBuilder.mocks.js +136 -0
  136. package/lib/build/ExpressionBuilder/ExpressionBuilder.mocks.js.map +1 -0
  137. package/lib/build/ExpressionBuilder/ExpressionBuilder.stories.d.ts +18 -0
  138. package/lib/build/ExpressionBuilder/ExpressionBuilder.stories.d.ts.map +1 -0
  139. package/lib/build/ExpressionBuilder/ExpressionBuilder.stories.js +66 -0
  140. package/lib/build/ExpressionBuilder/ExpressionBuilder.stories.js.map +1 -0
  141. package/lib/build/ObjectSelect/ObjectSelect.stories.d.ts.map +1 -1
  142. package/lib/build/ObjectSelect/ObjectSelect.stories.js +3 -2
  143. package/lib/build/ObjectSelect/ObjectSelect.stories.js.map +1 -1
  144. package/lib/core/AdditionalInfo/AdditionalInfo.stories.d.ts +9 -0
  145. package/lib/core/AdditionalInfo/AdditionalInfo.stories.d.ts.map +1 -0
  146. package/lib/core/AdditionalInfo/AdditionalInfo.stories.js +16 -0
  147. package/lib/core/AdditionalInfo/AdditionalInfo.stories.js.map +1 -0
  148. package/lib/core/AppShell/AppShell.stories.d.ts.map +1 -1
  149. package/lib/core/AppShell/AppShell.stories.js +11 -1
  150. package/lib/core/AppShell/AppShell.stories.js.map +1 -1
  151. package/lib/core/Checkbox/Checkbox.stories.d.ts +6 -2
  152. package/lib/core/Checkbox/Checkbox.stories.d.ts.map +1 -1
  153. package/lib/core/Checkbox/Checkbox.stories.js +26 -7
  154. package/lib/core/Checkbox/Checkbox.stories.js.map +1 -1
  155. package/lib/core/CheckboxGroup/CheckboxGroup.stories.d.ts +6 -2
  156. package/lib/core/CheckboxGroup/CheckboxGroup.stories.d.ts.map +1 -1
  157. package/lib/core/CheckboxGroup/CheckboxGroup.stories.js +40 -4
  158. package/lib/core/CheckboxGroup/CheckboxGroup.stories.js.map +1 -1
  159. package/lib/core/ColorPicker/ColorPicker.stories.d.ts +4 -1
  160. package/lib/core/ColorPicker/ColorPicker.stories.d.ts.map +1 -1
  161. package/lib/core/ColorPicker/ColorPicker.stories.js +10 -3
  162. package/lib/core/ColorPicker/ColorPicker.stories.js.map +1 -1
  163. package/lib/core/ComboBox/ComboBox.stories.d.ts +1 -0
  164. package/lib/core/ComboBox/ComboBox.stories.d.ts.map +1 -1
  165. package/lib/core/ComboBox/ComboBox.stories.js +40 -8
  166. package/lib/core/ComboBox/ComboBox.stories.js.map +1 -1
  167. package/lib/core/CompositeInput/CompositeInput.stories.d.ts +4 -1
  168. package/lib/core/CompositeInput/CompositeInput.stories.d.ts.map +1 -1
  169. package/lib/core/CompositeInput/CompositeInput.stories.js +7 -3
  170. package/lib/core/CompositeInput/CompositeInput.stories.js.map +1 -1
  171. package/lib/core/CreditCard/CreditCard.stories.d.ts +4 -1
  172. package/lib/core/CreditCard/CreditCard.stories.d.ts.map +1 -1
  173. package/lib/core/CreditCard/CreditCard.stories.js +10 -3
  174. package/lib/core/CreditCard/CreditCard.stories.js.map +1 -1
  175. package/lib/core/Currency/Currency.stories.d.ts +4 -1
  176. package/lib/core/Currency/Currency.stories.d.ts.map +1 -1
  177. package/lib/core/Currency/Currency.stories.js +10 -3
  178. package/lib/core/Currency/Currency.stories.js.map +1 -1
  179. package/lib/core/DateTime/DateTime.stories.d.ts +39 -9
  180. package/lib/core/DateTime/DateTime.stories.d.ts.map +1 -1
  181. package/lib/core/DateTime/DateTime.stories.js +83 -14
  182. package/lib/core/DateTime/DateTime.stories.js.map +1 -1
  183. package/lib/core/FieldValueList/FieldValueList.mocks.d.ts +3 -0
  184. package/lib/core/FieldValueList/FieldValueList.mocks.d.ts.map +1 -0
  185. package/lib/core/FieldValueList/FieldValueList.mocks.js +9 -0
  186. package/lib/core/FieldValueList/FieldValueList.mocks.js.map +1 -0
  187. package/lib/core/FieldValueList/FieldValueList.stories.d.ts +1 -0
  188. package/lib/core/FieldValueList/FieldValueList.stories.d.ts.map +1 -1
  189. package/lib/core/FieldValueList/FieldValueList.stories.js +32 -2
  190. package/lib/core/FieldValueList/FieldValueList.stories.js.map +1 -1
  191. package/lib/core/Form/Form.mocks.js +2 -2
  192. package/lib/core/Form/Form.mocks.js.map +1 -1
  193. package/lib/core/IconPicker/IconPicker.stories.d.ts.map +1 -1
  194. package/lib/core/IconPicker/IconPicker.stories.js +6 -9
  195. package/lib/core/IconPicker/IconPicker.stories.js.map +1 -1
  196. package/lib/core/Input/Input.stories.d.ts +1 -0
  197. package/lib/core/Input/Input.stories.d.ts.map +1 -1
  198. package/lib/core/Input/Input.stories.js +8 -1
  199. package/lib/core/Input/Input.stories.js.map +1 -1
  200. package/lib/core/Location/Location.stories.d.ts +4 -1
  201. package/lib/core/Location/Location.stories.d.ts.map +1 -1
  202. package/lib/core/Location/Location.stories.js +10 -3
  203. package/lib/core/Location/Location.stories.js.map +1 -1
  204. package/lib/core/Number/Number.stories.d.ts +1 -0
  205. package/lib/core/Number/Number.stories.d.ts.map +1 -1
  206. package/lib/core/Number/Number.stories.js +15 -7
  207. package/lib/core/Number/Number.stories.js.map +1 -1
  208. package/lib/core/Phone/Phone.stories.d.ts +4 -1
  209. package/lib/core/Phone/Phone.stories.d.ts.map +1 -1
  210. package/lib/core/Phone/Phone.stories.js +10 -3
  211. package/lib/core/Phone/Phone.stories.js.map +1 -1
  212. package/lib/core/RadioButton/RadioButton.stories.d.ts +6 -2
  213. package/lib/core/RadioButton/RadioButton.stories.d.ts.map +1 -1
  214. package/lib/core/RadioButton/RadioButton.stories.js +22 -5
  215. package/lib/core/RadioButton/RadioButton.stories.js.map +1 -1
  216. package/lib/core/RadioButtonGroup/RadioButtonGroup.stories.d.ts +6 -2
  217. package/lib/core/RadioButtonGroup/RadioButtonGroup.stories.d.ts.map +1 -1
  218. package/lib/core/RadioButtonGroup/RadioButtonGroup.stories.js +40 -4
  219. package/lib/core/RadioButtonGroup/RadioButtonGroup.stories.js.map +1 -1
  220. package/lib/core/Select/Select.stories.d.ts +1 -0
  221. package/lib/core/Select/Select.stories.d.ts.map +1 -1
  222. package/lib/core/Select/Select.stories.js +10 -3
  223. package/lib/core/Select/Select.stories.js.map +1 -1
  224. package/lib/core/TextArea/TextArea.stories.d.ts +4 -1
  225. package/lib/core/TextArea/TextArea.stories.d.ts.map +1 -1
  226. package/lib/core/TextArea/TextArea.stories.js +10 -3
  227. package/lib/core/TextArea/TextArea.stories.js.map +1 -1
  228. package/lib/rte/RichTextEditor/RichTextEditor.stories.d.ts +4 -1
  229. package/lib/rte/RichTextEditor/RichTextEditor.stories.d.ts.map +1 -1
  230. package/lib/rte/RichTextEditor/RichTextEditor.stories.js +10 -3
  231. package/lib/rte/RichTextEditor/RichTextEditor.stories.js.map +1 -1
  232. package/lib/social/Chat/Chat.mocks.d.ts +1 -1
  233. package/lib/social/Chat/Chat.mocks.js +0 -1
  234. package/lib/social/Chat/Chat.mocks.js.map +1 -1
  235. package/lib/social/Email/Email.mocks.d.ts +39 -1
  236. package/lib/social/Email/Email.mocks.d.ts.map +1 -1
  237. package/lib/social/Email/Email.mocks.js +78 -39
  238. package/lib/social/Email/Email.mocks.js.map +1 -1
  239. package/lib/social/Email/Email.stories.d.ts.map +1 -1
  240. package/lib/social/Email/Email.stories.js +158 -87
  241. package/lib/social/Email/Email.stories.js.map +1 -1
  242. package/lib/tools/Clipboard/Clipboard.mocks.d.ts +6 -0
  243. package/lib/tools/Clipboard/Clipboard.mocks.d.ts.map +1 -0
  244. package/lib/tools/Clipboard/Clipboard.mocks.js +80 -0
  245. package/lib/tools/Clipboard/Clipboard.mocks.js.map +1 -0
  246. package/lib/tools/Clipboard/Clipboard.stories.d.ts +6 -0
  247. package/lib/tools/Clipboard/Clipboard.stories.d.ts.map +1 -0
  248. package/lib/tools/Clipboard/Clipboard.stories.js +69 -0
  249. package/lib/tools/Clipboard/Clipboard.stories.js.map +1 -0
  250. package/lib/tools/PreviewShell/PreviewShell.mocks.d.ts +9 -0
  251. package/lib/tools/PreviewShell/PreviewShell.mocks.d.ts.map +1 -0
  252. package/lib/tools/PreviewShell/PreviewShell.mocks.js +57 -0
  253. package/lib/tools/PreviewShell/PreviewShell.mocks.js.map +1 -0
  254. package/lib/tools/PreviewShell/PreviewShell.stories.d.ts +15 -0
  255. package/lib/tools/PreviewShell/PreviewShell.stories.d.ts.map +1 -0
  256. package/lib/tools/PreviewShell/PreviewShell.stories.js +108 -0
  257. package/lib/tools/PreviewShell/PreviewShell.stories.js.map +1 -0
  258. package/lib/tools/PreviewShell/PreviewShell.styles.d.ts +3 -0
  259. package/lib/tools/PreviewShell/PreviewShell.styles.d.ts.map +1 -0
  260. package/lib/tools/PreviewShell/PreviewShell.styles.js +7 -0
  261. package/lib/tools/PreviewShell/PreviewShell.styles.js.map +1 -0
  262. package/lib/work/Details/Details.stories.d.ts.map +1 -1
  263. package/lib/work/Details/Details.stories.js +2 -2
  264. package/lib/work/Details/Details.stories.js.map +1 -1
  265. package/package.json +9 -9
@@ -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';\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
+ {"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 {\n useState,\n useRef,\n useCallback,\n useEffect,\n createRef,\n RefObject,\n MouseEvent,\n useContext,\n FunctionComponent\n} 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 Modal,\n ModalManagerContext,\n ToasterContext\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 mockUploadImage\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 const onImageAdded: EmailComposerProps['onImageAdded'] = (image: File, id: string) => {\n action('On Image added');\n setComposerProgress({ message: 'Uploading image' });\n // Simulate image upload\n mockUploadImage(image)\n .then(({ src, alt }) => {\n composerHandle.current?.updateImage({ src, alt }, id);\n setComposerProgress(false);\n })\n .catch(() => {\n setComposerProgress(false);\n });\n };\n\n return (\n <EmailComposer\n handle={composerHandle}\n progress={composerProgress}\n onSave={action('On save')}\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={onImageAdded}\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 { create } = useContext(ModalManagerContext);\n const { push } = useContext(ToasterContext);\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 const [conversationEmails, setConversationEmails] = useState<EmailProps[][]>([]);\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 MyModal: FunctionComponent<{ currentID: string }> = ({ currentID }) => {\n const { ModalContext } = useContext(ModalManagerContext);\n const { dismiss } = useContext(ModalContext);\n\n return (\n <Modal\n heading='Discard unsaved changes?'\n actions={\n <>\n <Flex>\n <Button\n onClick={() => {\n dismiss();\n setComposersData(prev => {\n return {\n ...prev,\n [currentID]: {\n ...prev[currentID],\n progress: true\n }\n };\n });\n setTimeout(() => {\n setComposersData(prev => {\n const newComposersData = { ...prev };\n delete newComposersData[currentID];\n return newComposersData;\n });\n push({ content: 'Draft Saved' });\n }, 1000);\n }}\n >\n Save as draft\n </Button>\n\n <Button\n onClick={() => {\n dismiss();\n setComposersData(prev => {\n const newComposersData = { ...prev };\n delete newComposersData[currentID];\n return newComposersData;\n });\n }}\n >\n Discard\n </Button>\n </Flex>\n <Button\n variant='primary'\n onClick={() => {\n dismiss();\n }}\n >\n Cancel\n </Button>\n </>\n }\n center\n >\n <Text variant='primary'>\n You have unsaved changes. You can discard them or go back to keep working.\n </Text>\n </Modal>\n );\n };\n\n const handleCancel = (uid: string) => {\n create(MyModal, { currentID: uid }, { alert: true });\n };\n\n const handleSend = (uid: string) => {\n action('Send')();\n setComposersData(prev => {\n return {\n ...prev,\n [uid]: {\n ...prev[uid],\n progress: true\n }\n };\n });\n setTimeout(() => {\n setComposersData(prev => {\n const newComposersData = { ...prev };\n delete newComposersData[uid];\n return newComposersData;\n });\n push({ content: 'Email Send' });\n }, 1000);\n };\n\n const handleSave = (uid: string) => {\n action('Save')();\n setComposersData(prev => {\n return {\n ...prev,\n [uid]: {\n ...prev[uid],\n progress: true\n }\n };\n });\n setTimeout(() => {\n setComposersData(prev => {\n const newComposersData = { ...prev };\n delete newComposersData[uid];\n return newComposersData;\n });\n push({ content: 'Draft Saved' });\n }, 1000);\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 onSave: () => handleSave(uid)\n }\n };\n });\n }\n };\n\n const emailsData: EmailProps[] = [\n {\n id: 'item0',\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: 'item1',\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 false,\n emailData.body\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 deleteEmail = (id: EmailProps['id']) => {\n setConversationEmails(prev => {\n const newEmailConversation: EmailProps[][] = [];\n\n prev.forEach(arr => {\n const newArr = arr.filter(index => index.id !== id);\n if (newArr.length !== 0) newEmailConversation.push(newArr);\n });\n return newEmailConversation;\n });\n };\n\n useEffect(() => {\n setConversationEmails([\n [{ ...emailsData[0] }, { ...emailsData[1], status: 'undelivered' }],\n [\n {\n ...emailsData[0],\n id: 'item2',\n status: 'draft',\n unRead: false,\n actions: emailDemoActions(\n 'item2',\n emailsData[0].subject,\n createOrActivateComposer,\n true,\n '<div>Hi, <br /> <br /><div>Sure, Our executive will come and check your connection in 24hrs. </div> <br />Regards, <br />Hugh Phillips </div>',\n deleteEmail\n ),\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 id: 'item3',\n status: 'draft',\n actions: emailDemoActions(\n 'item3',\n emailsData[0].subject,\n createOrActivateComposer,\n true,\n '<div>Hi, <br /> <br /><div>Can you fix my internet connection. </div> <br /> <br />Regards, <br />Rey Mystery </div>',\n deleteEmail\n ),\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 id: 'item4',\n unRead: true,\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 id: 'item5',\n unRead: true,\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 ]);\n }, []);\n\n const emailConversations: EmailConversationProps[] = (conversationEmails as EmailProps[][]).map(\n (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 drafts: i === 1,\n undelivered: i === 0\n } as EmailConversationProps;\n }\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[0], status: 'undelivered' }, { ...emailsData[1] }]\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"]}
@@ -0,0 +1,6 @@
1
+ import { ContentProps } from '@pega/cosmos-react-tools';
2
+ import { StandardTreeProps } from '@pega/cosmos-react-core';
3
+ export declare const getDetailsData: (id: string, cb?: (id: string) => void) => ContentProps;
4
+ export declare const allNodes: StandardTreeProps['nodes'];
5
+ export declare const childNodes: StandardTreeProps['nodes'];
6
+ //# sourceMappingURL=Clipboard.mocks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Clipboard.mocks.d.ts","sourceRoot":"","sources":["../../../src/tools/Clipboard/Clipboard.mocks.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAyB,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGnF,eAAO,MAAM,cAAc,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,KAAK,YAgDvE,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,iBAAiB,CAAC,OAAO,CAsB/C,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,iBAAiB,CAAC,OAAO,CAajD,CAAC"}
@@ -0,0 +1,80 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Actions, Button, Flex } from '@pega/cosmos-react-core';
3
+ // cSpell:words XPTI
4
+ export const getDetailsData = (id, cb) => {
5
+ const primaryData = [
6
+ { id: 'field1', name: 'pxCommitDateTime', value: '20220303T121437.913 GMT' },
7
+ { id: 'field2', name: 'pxInsName', value: 'John.smith' },
8
+ { id: 'field3', name: 'pxObjClass', value: 'Data-Preference-Operator' },
9
+ { id: 'field4', name: 'pzInsKey', value: 'DATA-PREFERENCE-OPERATOR JOHN SMITH' }
10
+ ];
11
+ const embeddedData = [
12
+ { id: 'pxDPParameters', name: 'pxDPParameters', onClick: cb },
13
+ { id: 'pyDevicePreviewSettings', name: 'pyDevicePreviewSettings', onClick: cb },
14
+ { id: 'pySourcePage', name: 'pySourcePage', onClick: cb }
15
+ ];
16
+ let data;
17
+ if (id === 'D_pzPreferenceStore') {
18
+ data = [...primaryData, ...embeddedData];
19
+ }
20
+ else
21
+ data = primaryData;
22
+ return {
23
+ primary: id,
24
+ secondary: [
25
+ { id: '1', name: 'ID', value: 'InterestRate' },
26
+ { id: '2', name: 'Rule type', value: 'Field' },
27
+ {
28
+ id: '3',
29
+ name: 'Scope',
30
+ value: 'O1XPTI-CCompass-Work-MortgageRequest'
31
+ },
32
+ { id: '4', name: 'Application', value: 'XCompass' }
33
+ ],
34
+ actions: (_jsxs(Flex, { container: true, children: [_jsx(Button, { variant: 'secondary', children: "Secondary action" }), _jsx(Button, { variant: 'primary', children: "Primary action" }), _jsx(Actions, { menuAt: 1, items: [
35
+ {
36
+ id: '1',
37
+ text: 'Secondary action 2'
38
+ }
39
+ ] })] })),
40
+ fields: data
41
+ };
42
+ };
43
+ export const allNodes = [
44
+ {
45
+ id: 'dataPage',
46
+ label: 'Data Pages',
47
+ nodes: [
48
+ {
49
+ id: 'D_pzPreferenceStore',
50
+ label: 'D_pzPreferenceStore',
51
+ nodes: []
52
+ },
53
+ {
54
+ id: 'D_creditScore',
55
+ label: 'D_Credit Score',
56
+ nodes: []
57
+ }
58
+ ]
59
+ },
60
+ {
61
+ id: 'systemPage',
62
+ label: 'System Pages',
63
+ nodes: []
64
+ }
65
+ ];
66
+ export const childNodes = [
67
+ {
68
+ id: 'pxDPParameters',
69
+ label: 'pxDPParameters'
70
+ },
71
+ {
72
+ id: 'pyDevicePreviewSettings',
73
+ label: 'pyDevicePreviewSettings'
74
+ },
75
+ {
76
+ id: 'pySourcePage',
77
+ label: 'pySourcePage'
78
+ }
79
+ ];
80
+ //# sourceMappingURL=Clipboard.mocks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Clipboard.mocks.js","sourceRoot":"","sources":["../../../src/tools/Clipboard/Clipboard.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { ContentProps } from '@pega/cosmos-react-tools';\nimport { Actions, Button, Flex, StandardTreeProps } from '@pega/cosmos-react-core';\n\n// cSpell:words XPTI\nexport const getDetailsData: (id: string, cb?: (id: string) => void) => ContentProps = (id, cb) => {\n const primaryData = [\n { id: 'field1', name: 'pxCommitDateTime', value: '20220303T121437.913 GMT' },\n { id: 'field2', name: 'pxInsName', value: 'John.smith' },\n { id: 'field3', name: 'pxObjClass', value: 'Data-Preference-Operator' },\n { id: 'field4', name: 'pzInsKey', value: 'DATA-PREFERENCE-OPERATOR JOHN SMITH' }\n ];\n\n const embeddedData = [\n { id: 'pxDPParameters', name: 'pxDPParameters', onClick: cb },\n { id: 'pyDevicePreviewSettings', name: 'pyDevicePreviewSettings', onClick: cb },\n { id: 'pySourcePage', name: 'pySourcePage', onClick: cb }\n ];\n\n let data;\n if (id === 'D_pzPreferenceStore') {\n data = [...primaryData, ...embeddedData];\n } else data = primaryData;\n\n return {\n primary: id,\n secondary: [\n { id: '1', name: 'ID', value: 'InterestRate' },\n { id: '2', name: 'Rule type', value: 'Field' },\n {\n id: '3',\n name: 'Scope',\n value: 'O1XPTI-CCompass-Work-MortgageRequest'\n },\n { id: '4', name: 'Application', value: 'XCompass' }\n ],\n actions: (\n <Flex container>\n <Button variant='secondary'>Secondary action</Button>\n <Button variant='primary'>Primary action</Button>\n <Actions\n menuAt={1}\n items={[\n {\n id: '1',\n text: 'Secondary action 2'\n }\n ]}\n />\n </Flex>\n ),\n fields: data\n };\n};\n\nexport const allNodes: StandardTreeProps['nodes'] = [\n {\n id: 'dataPage',\n label: 'Data Pages',\n nodes: [\n {\n id: 'D_pzPreferenceStore',\n label: 'D_pzPreferenceStore',\n nodes: []\n },\n {\n id: 'D_creditScore',\n label: 'D_Credit Score',\n nodes: []\n }\n ]\n },\n {\n id: 'systemPage',\n label: 'System Pages',\n nodes: []\n }\n];\n\nexport const childNodes: StandardTreeProps['nodes'] = [\n {\n id: 'pxDPParameters',\n label: 'pxDPParameters'\n },\n {\n id: 'pyDevicePreviewSettings',\n label: 'pyDevicePreviewSettings'\n },\n {\n id: 'pySourcePage',\n label: 'pySourcePage'\n }\n];\n"]}
@@ -0,0 +1,6 @@
1
+ import { Story, Meta } from '@storybook/react';
2
+ import { ClipboardProps } from '@pega/cosmos-react-tools';
3
+ declare const _default: Meta<import("@storybook/react").Args>;
4
+ export default _default;
5
+ export declare const ClipboardViewerDemo: Story<ClipboardProps>;
6
+ //# sourceMappingURL=Clipboard.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Clipboard.stories.d.ts","sourceRoot":"","sources":["../../../src/tools/Clipboard/Clipboard.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAAa,cAAc,EAAgB,MAAM,0BAA0B,CAAC;;AAMnF,wBAMU;AAEV,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,cAAc,CAsErD,CAAC"}
@@ -0,0 +1,69 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { Clipboard } from '@pega/cosmos-react-tools';
4
+ import { treeHelpers } from '@pega/cosmos-react-core';
5
+ import { allNodes, childNodes, getDetailsData } from './Clipboard.mocks';
6
+ export default {
7
+ title: 'Tools/Clipboard',
8
+ component: Clipboard,
9
+ parameters: {
10
+ layout: 'fullscreen'
11
+ }
12
+ };
13
+ export const ClipboardViewerDemo = () => {
14
+ const [nodes, setNodes] = useState(allNodes);
15
+ const [currentNodeId, setCurrentNodeId] = useState(allNodes[0].id);
16
+ const [pageDetails, setPageDetails] = useState();
17
+ const updatePageDetails = (id, cb) => {
18
+ setPageDetails({ primary: '', fields: [], loading: true });
19
+ setTimeout(() => {
20
+ setPageDetails(getDetailsData(id, cb));
21
+ }, 300);
22
+ };
23
+ const getMappedNodes = (tree, id) => {
24
+ return treeHelpers.mapNode(tree, id, node => {
25
+ return {
26
+ ...node,
27
+ expanded: !node.expanded,
28
+ loading: node.nodes?.length === 0
29
+ };
30
+ });
31
+ };
32
+ const updateNodeDetails = (id) => {
33
+ setCurrentNodeId(id);
34
+ setNodes(tree => treeHelpers.expandTo(getMappedNodes(tree, id), id));
35
+ updatePageDetails(id);
36
+ };
37
+ const loadChildNodes = (id) => {
38
+ setTimeout(() => {
39
+ setNodes(tree => treeHelpers.mapNode(tree, id, node => {
40
+ return {
41
+ ...node,
42
+ loading: false,
43
+ nodes: id === 'D_creditScore' || id === 'systemPage' ? undefined : childNodes
44
+ };
45
+ }));
46
+ if (id !== 'systemPage') {
47
+ updatePageDetails(id, updateNodeDetails);
48
+ }
49
+ }, 1000);
50
+ };
51
+ const onNodeClick = (nodeId) => {
52
+ setCurrentNodeId(nodeId);
53
+ if (!treeHelpers.getNode(allNodes, nodeId)?.nodes) {
54
+ updatePageDetails(nodeId);
55
+ }
56
+ else {
57
+ setNodes(tree => getMappedNodes(tree, nodeId));
58
+ return ['D_creditScore', 'D_pzPreferenceStore', 'systemPage'].includes(nodeId)
59
+ ? loadChildNodes(nodeId)
60
+ : setPageDetails(undefined);
61
+ }
62
+ };
63
+ return (_jsx(Clipboard, { navigation: {
64
+ nodes,
65
+ currentNodeId,
66
+ onNodeClick
67
+ }, content: pageDetails, lastUpdated: 'Last updated: Less than a minute ago' }));
68
+ };
69
+ //# sourceMappingURL=Clipboard.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Clipboard.stories.js","sourceRoot":"","sources":["../../../src/tools/Clipboard/Clipboard.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Story, Meta } from '@storybook/react';\nimport { useState } from 'react';\n\nimport { Clipboard, ClipboardProps, ContentProps } from '@pega/cosmos-react-tools';\nimport { treeHelpers } from '@pega/cosmos-react-core';\nimport { StandardTreeNode } from '@pega/cosmos-react-core/lib/components/Tree/StandardTree.types';\n\nimport { allNodes, childNodes, getDetailsData } from './Clipboard.mocks';\n\nexport default {\n title: 'Tools/Clipboard',\n component: Clipboard,\n parameters: {\n layout: 'fullscreen'\n }\n} as Meta;\n\nexport const ClipboardViewerDemo: Story<ClipboardProps> = () => {\n const [nodes, setNodes] = useState(allNodes);\n const [currentNodeId, setCurrentNodeId] = useState(allNodes[0].id);\n const [pageDetails, setPageDetails] = useState<ContentProps | undefined>();\n\n const updatePageDetails = (id: string, cb?: (id: string) => void) => {\n setPageDetails({ primary: '', fields: [], loading: true });\n setTimeout(() => {\n setPageDetails(getDetailsData(id, cb));\n }, 300);\n };\n\n const getMappedNodes = (tree: StandardTreeNode[], id: string) => {\n return treeHelpers.mapNode(tree, id, node => {\n return {\n ...node,\n expanded: !node.expanded,\n loading: node.nodes?.length === 0\n };\n });\n };\n\n const updateNodeDetails = (id: string) => {\n setCurrentNodeId(id);\n setNodes(tree => treeHelpers.expandTo(getMappedNodes(tree, id), id));\n updatePageDetails(id);\n };\n\n const loadChildNodes = (id: string) => {\n setTimeout(() => {\n setNodes(tree =>\n treeHelpers.mapNode(tree, id, node => {\n return {\n ...node,\n loading: false,\n nodes: id === 'D_creditScore' || id === 'systemPage' ? undefined : childNodes\n };\n })\n );\n if (id !== 'systemPage') {\n updatePageDetails(id, updateNodeDetails);\n }\n }, 1000);\n };\n\n const onNodeClick = (nodeId: string) => {\n setCurrentNodeId(nodeId);\n\n if (!treeHelpers.getNode(allNodes, nodeId)?.nodes) {\n updatePageDetails(nodeId);\n } else {\n setNodes(tree => getMappedNodes(tree, nodeId));\n\n return ['D_creditScore', 'D_pzPreferenceStore', 'systemPage'].includes(nodeId)\n ? loadChildNodes(nodeId)\n : setPageDetails(undefined);\n }\n };\n\n return (\n <Clipboard\n navigation={{\n nodes,\n currentNodeId,\n onNodeClick\n }}\n content={pageDetails}\n lastUpdated='Last updated: Less than a minute ago'\n />\n );\n};\n"]}
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import { MenuProps } from '@pega/cosmos-react-core';
3
+ export declare const footerTabsMockContent: JSX.Element[];
4
+ export declare const footerTabsMock: {
5
+ name: string;
6
+ id: string;
7
+ }[];
8
+ export declare const footerMenuMock: MenuProps['items'];
9
+ //# sourceMappingURL=PreviewShell.mocks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PreviewShell.mocks.d.ts","sourceRoot":"","sources":["../../../src/tools/PreviewShell/PreviewShell.mocks.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAOpD,eAAO,MAAM,qBAAqB,eAKjC,CAAC;AAEF,eAAO,MAAM,cAAc;;;GAG1B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,SAAS,CAAC,OAAO,CA2C7C,CAAC"}