@pega/cosmos-react-demos 5.0.0-dev.9.2 → 6.0.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 (252) hide show
  1. package/SECURITY.md +11 -0
  2. package/jsx/core/AdditionalInfo/AdditionalInfo.stories.d.ts +2 -2
  3. package/jsx/core/AdditionalInfo/AdditionalInfo.stories.d.ts.map +1 -1
  4. package/jsx/core/AdditionalInfo/AdditionalInfo.stories.jsx +1 -1
  5. package/jsx/core/AdditionalInfo/AdditionalInfo.stories.jsx.map +1 -1
  6. package/jsx/core/Checkbox/Checkbox.stories.d.ts.map +1 -1
  7. package/jsx/core/Checkbox/Checkbox.stories.jsx +0 -3
  8. package/jsx/core/Checkbox/Checkbox.stories.jsx.map +1 -1
  9. package/jsx/core/CheckboxGroup/CheckboxGroup.stories.d.ts.map +1 -1
  10. package/jsx/core/CheckboxGroup/CheckboxGroup.stories.jsx +0 -8
  11. package/jsx/core/CheckboxGroup/CheckboxGroup.stories.jsx.map +1 -1
  12. package/jsx/core/ColorPicker/ColorPicker.stories.d.ts.map +1 -1
  13. package/jsx/core/ColorPicker/ColorPicker.stories.jsx +0 -1
  14. package/jsx/core/ColorPicker/ColorPicker.stories.jsx.map +1 -1
  15. package/jsx/core/ComboBox/ComboBox.stories.d.ts.map +1 -1
  16. package/jsx/core/ComboBox/ComboBox.stories.jsx +0 -6
  17. package/jsx/core/ComboBox/ComboBox.stories.jsx.map +1 -1
  18. package/jsx/core/CompositeInput/CompositeInput.stories.d.ts.map +1 -1
  19. package/jsx/core/CompositeInput/CompositeInput.stories.jsx +1 -3
  20. package/jsx/core/CompositeInput/CompositeInput.stories.jsx.map +1 -1
  21. package/jsx/core/CreditCard/CreditCard.stories.d.ts.map +1 -1
  22. package/jsx/core/CreditCard/CreditCard.stories.jsx +0 -1
  23. package/jsx/core/CreditCard/CreditCard.stories.jsx.map +1 -1
  24. package/jsx/core/Currency/Currency.stories.d.ts.map +1 -1
  25. package/jsx/core/Currency/Currency.stories.jsx +0 -1
  26. package/jsx/core/Currency/Currency.stories.jsx.map +1 -1
  27. package/jsx/core/DateTime/DateTime.stories.d.ts.map +1 -1
  28. package/jsx/core/DateTime/DateTime.stories.jsx +0 -10
  29. package/jsx/core/DateTime/DateTime.stories.jsx.map +1 -1
  30. package/jsx/core/DateTime/DateTimeDisplay.stories.d.ts.map +1 -1
  31. package/jsx/core/DateTime/DateTimeDisplay.stories.jsx +10 -5
  32. package/jsx/core/DateTime/DateTimeDisplay.stories.jsx.map +1 -1
  33. package/jsx/core/FieldGroup/FieldGroup.stories.d.ts.map +1 -1
  34. package/jsx/core/FieldGroup/FieldGroup.stories.jsx +6 -2
  35. package/jsx/core/FieldGroup/FieldGroup.stories.jsx.map +1 -1
  36. package/jsx/core/File/FileInput.stories.d.ts.map +1 -1
  37. package/jsx/core/File/FileInput.stories.jsx +0 -1
  38. package/jsx/core/File/FileInput.stories.jsx.map +1 -1
  39. package/jsx/core/Input/Input.stories.d.ts.map +1 -1
  40. package/jsx/core/Input/Input.stories.jsx +0 -1
  41. package/jsx/core/Input/Input.stories.jsx.map +1 -1
  42. package/jsx/core/Lightbox/Lightbox.mocks.d.ts +15 -8
  43. package/jsx/core/Lightbox/Lightbox.mocks.d.ts.map +1 -1
  44. package/jsx/core/Lightbox/Lightbox.mocks.js +62 -24
  45. package/jsx/core/Lightbox/Lightbox.mocks.js.map +1 -1
  46. package/jsx/core/Lightbox/Lightbox.stories.d.ts.map +1 -1
  47. package/jsx/core/Lightbox/Lightbox.stories.jsx +37 -22
  48. package/jsx/core/Lightbox/Lightbox.stories.jsx.map +1 -1
  49. package/jsx/core/ListToolbar/ListToolbar.mocks.d.ts.map +1 -1
  50. package/jsx/core/ListToolbar/ListToolbar.mocks.jsx +13 -21
  51. package/jsx/core/ListToolbar/ListToolbar.mocks.jsx.map +1 -1
  52. package/jsx/core/ListToolbar/ListToolbar.stories.d.ts +7 -2
  53. package/jsx/core/ListToolbar/ListToolbar.stories.d.ts.map +1 -1
  54. package/jsx/core/ListToolbar/ListToolbar.stories.jsx +30 -10
  55. package/jsx/core/ListToolbar/ListToolbar.stories.jsx.map +1 -1
  56. package/jsx/core/Location/Location.stories.d.ts.map +1 -1
  57. package/jsx/core/Location/Location.stories.jsx +0 -1
  58. package/jsx/core/Location/Location.stories.jsx.map +1 -1
  59. package/jsx/core/Number/Number.stories.d.ts.map +1 -1
  60. package/jsx/core/Number/Number.stories.jsx +6 -2
  61. package/jsx/core/Number/Number.stories.jsx.map +1 -1
  62. package/jsx/core/Phone/Phone.stories.d.ts.map +1 -1
  63. package/jsx/core/Phone/Phone.stories.jsx +0 -1
  64. package/jsx/core/Phone/Phone.stories.jsx.map +1 -1
  65. package/jsx/core/RadioButton/RadioButton.stories.d.ts.map +1 -1
  66. package/jsx/core/RadioButton/RadioButton.stories.jsx +0 -3
  67. package/jsx/core/RadioButton/RadioButton.stories.jsx.map +1 -1
  68. package/jsx/core/RadioButtonGroup/RadioButtonGroup.stories.d.ts +3 -0
  69. package/jsx/core/RadioButtonGroup/RadioButtonGroup.stories.d.ts.map +1 -1
  70. package/jsx/core/RadioButtonGroup/RadioButtonGroup.stories.jsx +2 -10
  71. package/jsx/core/RadioButtonGroup/RadioButtonGroup.stories.jsx.map +1 -1
  72. package/jsx/core/Select/Select.stories.d.ts.map +1 -1
  73. package/jsx/core/Select/Select.stories.jsx +0 -1
  74. package/jsx/core/Select/Select.stories.jsx.map +1 -1
  75. package/jsx/core/Slider/Slider.stories.d.ts.map +1 -1
  76. package/jsx/core/Slider/Slider.stories.jsx +0 -1
  77. package/jsx/core/Slider/Slider.stories.jsx.map +1 -1
  78. package/jsx/core/TextArea/TextArea.stories.d.ts.map +1 -1
  79. package/jsx/core/TextArea/TextArea.stories.jsx +0 -1
  80. package/jsx/core/TextArea/TextArea.stories.jsx.map +1 -1
  81. package/jsx/rte/Editor/Editor.stories.d.ts.map +1 -1
  82. package/jsx/rte/Editor/Editor.stories.jsx +14 -2
  83. package/jsx/rte/Editor/Editor.stories.jsx.map +1 -1
  84. package/jsx/rte/RichTextEditor/RichTextEditor.stories.d.ts +1 -0
  85. package/jsx/rte/RichTextEditor/RichTextEditor.stories.d.ts.map +1 -1
  86. package/jsx/rte/RichTextEditor/RichTextEditor.stories.jsx +67 -4
  87. package/jsx/rte/RichTextEditor/RichTextEditor.stories.jsx.map +1 -1
  88. package/jsx/rte/RichTextEditor/RichTextViewer.stories.d.ts +8 -3
  89. package/jsx/rte/RichTextEditor/RichTextViewer.stories.d.ts.map +1 -1
  90. package/jsx/rte/RichTextEditor/RichTextViewer.stories.jsx +67 -12
  91. package/jsx/rte/RichTextEditor/RichTextViewer.stories.jsx.map +1 -1
  92. package/jsx/social/Chat/Chat.mocks.d.ts +5 -17
  93. package/jsx/social/Chat/Chat.mocks.d.ts.map +1 -1
  94. package/jsx/social/Chat/Chat.mocks.js +44 -21
  95. package/jsx/social/Chat/Chat.mocks.js.map +1 -1
  96. package/jsx/social/Chat/Chat.stories.d.ts +2 -0
  97. package/jsx/social/Chat/Chat.stories.d.ts.map +1 -1
  98. package/jsx/social/Chat/Chat.stories.jsx +92 -39
  99. package/jsx/social/Chat/Chat.stories.jsx.map +1 -1
  100. package/jsx/social/Feed/Feed.stories.d.ts.map +1 -1
  101. package/jsx/social/Feed/Feed.stories.jsx +2 -0
  102. package/jsx/social/Feed/Feed.stories.jsx.map +1 -1
  103. package/jsx/work/ArticleList/ArticleBuddy.stories.d.ts +2 -0
  104. package/jsx/work/ArticleList/ArticleBuddy.stories.d.ts.map +1 -1
  105. package/jsx/work/ArticleList/ArticleBuddy.stories.jsx +40 -14
  106. package/jsx/work/ArticleList/ArticleBuddy.stories.jsx.map +1 -1
  107. package/jsx/work/ArticleList/ArticleList.mocks.d.ts +66 -3
  108. package/jsx/work/ArticleList/ArticleList.mocks.d.ts.map +1 -1
  109. package/jsx/work/ArticleList/ArticleList.mocks.js +15 -25
  110. package/jsx/work/ArticleList/ArticleList.mocks.js.map +1 -1
  111. package/jsx/work/ArticleList/ArticleList.stories.d.ts.map +1 -1
  112. package/jsx/work/ArticleList/ArticleList.stories.jsx +41 -20
  113. package/jsx/work/ArticleList/ArticleList.stories.jsx.map +1 -1
  114. package/jsx/work/Assignments/Assignments.stories.jsx +2 -2
  115. package/jsx/work/Assignments/Assignments.stories.jsx.map +1 -1
  116. package/jsx/work/CaseView/CaseView.mocks.d.ts +6 -2
  117. package/jsx/work/CaseView/CaseView.mocks.d.ts.map +1 -1
  118. package/jsx/work/CaseView/CaseView.mocks.jsx +64 -30
  119. package/jsx/work/CaseView/CaseView.mocks.jsx.map +1 -1
  120. package/jsx/work/Details/Details.stories.d.ts.map +1 -1
  121. package/jsx/work/Details/Details.stories.jsx +0 -1
  122. package/jsx/work/Details/Details.stories.jsx.map +1 -1
  123. package/jsx/work/Stakeholders/Stakeholders.stories.d.ts +4 -1
  124. package/jsx/work/Stakeholders/Stakeholders.stories.d.ts.map +1 -1
  125. package/jsx/work/Stakeholders/Stakeholders.stories.jsx +14 -6
  126. package/jsx/work/Stakeholders/Stakeholders.stories.jsx.map +1 -1
  127. package/lib/core/AdditionalInfo/AdditionalInfo.stories.d.ts +2 -2
  128. package/lib/core/AdditionalInfo/AdditionalInfo.stories.d.ts.map +1 -1
  129. package/lib/core/AdditionalInfo/AdditionalInfo.stories.js +1 -1
  130. package/lib/core/AdditionalInfo/AdditionalInfo.stories.js.map +1 -1
  131. package/lib/core/Checkbox/Checkbox.stories.d.ts.map +1 -1
  132. package/lib/core/Checkbox/Checkbox.stories.js +0 -3
  133. package/lib/core/Checkbox/Checkbox.stories.js.map +1 -1
  134. package/lib/core/CheckboxGroup/CheckboxGroup.stories.d.ts.map +1 -1
  135. package/lib/core/CheckboxGroup/CheckboxGroup.stories.js +0 -8
  136. package/lib/core/CheckboxGroup/CheckboxGroup.stories.js.map +1 -1
  137. package/lib/core/ColorPicker/ColorPicker.stories.d.ts.map +1 -1
  138. package/lib/core/ColorPicker/ColorPicker.stories.js +0 -1
  139. package/lib/core/ColorPicker/ColorPicker.stories.js.map +1 -1
  140. package/lib/core/ComboBox/ComboBox.stories.d.ts.map +1 -1
  141. package/lib/core/ComboBox/ComboBox.stories.js +0 -6
  142. package/lib/core/ComboBox/ComboBox.stories.js.map +1 -1
  143. package/lib/core/CompositeInput/CompositeInput.stories.d.ts.map +1 -1
  144. package/lib/core/CompositeInput/CompositeInput.stories.js +1 -3
  145. package/lib/core/CompositeInput/CompositeInput.stories.js.map +1 -1
  146. package/lib/core/CreditCard/CreditCard.stories.d.ts.map +1 -1
  147. package/lib/core/CreditCard/CreditCard.stories.js +0 -1
  148. package/lib/core/CreditCard/CreditCard.stories.js.map +1 -1
  149. package/lib/core/Currency/Currency.stories.d.ts.map +1 -1
  150. package/lib/core/Currency/Currency.stories.js +0 -1
  151. package/lib/core/Currency/Currency.stories.js.map +1 -1
  152. package/lib/core/DateTime/DateTime.stories.d.ts.map +1 -1
  153. package/lib/core/DateTime/DateTime.stories.js +0 -10
  154. package/lib/core/DateTime/DateTime.stories.js.map +1 -1
  155. package/lib/core/DateTime/DateTimeDisplay.stories.d.ts.map +1 -1
  156. package/lib/core/DateTime/DateTimeDisplay.stories.js +10 -5
  157. package/lib/core/DateTime/DateTimeDisplay.stories.js.map +1 -1
  158. package/lib/core/FieldGroup/FieldGroup.stories.d.ts.map +1 -1
  159. package/lib/core/FieldGroup/FieldGroup.stories.js +6 -2
  160. package/lib/core/FieldGroup/FieldGroup.stories.js.map +1 -1
  161. package/lib/core/File/FileInput.stories.d.ts.map +1 -1
  162. package/lib/core/File/FileInput.stories.js +0 -1
  163. package/lib/core/File/FileInput.stories.js.map +1 -1
  164. package/lib/core/Input/Input.stories.d.ts.map +1 -1
  165. package/lib/core/Input/Input.stories.js +0 -1
  166. package/lib/core/Input/Input.stories.js.map +1 -1
  167. package/lib/core/Lightbox/Lightbox.mocks.d.ts +15 -8
  168. package/lib/core/Lightbox/Lightbox.mocks.d.ts.map +1 -1
  169. package/lib/core/Lightbox/Lightbox.mocks.js +64 -24
  170. package/lib/core/Lightbox/Lightbox.mocks.js.map +1 -1
  171. package/lib/core/Lightbox/Lightbox.stories.d.ts.map +1 -1
  172. package/lib/core/Lightbox/Lightbox.stories.js +36 -21
  173. package/lib/core/Lightbox/Lightbox.stories.js.map +1 -1
  174. package/lib/core/ListToolbar/ListToolbar.mocks.d.ts.map +1 -1
  175. package/lib/core/ListToolbar/ListToolbar.mocks.js +7 -13
  176. package/lib/core/ListToolbar/ListToolbar.mocks.js.map +1 -1
  177. package/lib/core/ListToolbar/ListToolbar.stories.d.ts +7 -2
  178. package/lib/core/ListToolbar/ListToolbar.stories.d.ts.map +1 -1
  179. package/lib/core/ListToolbar/ListToolbar.stories.js +30 -10
  180. package/lib/core/ListToolbar/ListToolbar.stories.js.map +1 -1
  181. package/lib/core/Location/Location.stories.d.ts.map +1 -1
  182. package/lib/core/Location/Location.stories.js +0 -1
  183. package/lib/core/Location/Location.stories.js.map +1 -1
  184. package/lib/core/Number/Number.stories.d.ts.map +1 -1
  185. package/lib/core/Number/Number.stories.js +6 -2
  186. package/lib/core/Number/Number.stories.js.map +1 -1
  187. package/lib/core/Phone/Phone.stories.d.ts.map +1 -1
  188. package/lib/core/Phone/Phone.stories.js +0 -1
  189. package/lib/core/Phone/Phone.stories.js.map +1 -1
  190. package/lib/core/RadioButton/RadioButton.stories.d.ts.map +1 -1
  191. package/lib/core/RadioButton/RadioButton.stories.js +0 -3
  192. package/lib/core/RadioButton/RadioButton.stories.js.map +1 -1
  193. package/lib/core/RadioButtonGroup/RadioButtonGroup.stories.d.ts +3 -0
  194. package/lib/core/RadioButtonGroup/RadioButtonGroup.stories.d.ts.map +1 -1
  195. package/lib/core/RadioButtonGroup/RadioButtonGroup.stories.js +2 -10
  196. package/lib/core/RadioButtonGroup/RadioButtonGroup.stories.js.map +1 -1
  197. package/lib/core/Select/Select.stories.d.ts.map +1 -1
  198. package/lib/core/Select/Select.stories.js +0 -1
  199. package/lib/core/Select/Select.stories.js.map +1 -1
  200. package/lib/core/Slider/Slider.stories.d.ts.map +1 -1
  201. package/lib/core/Slider/Slider.stories.js +0 -1
  202. package/lib/core/Slider/Slider.stories.js.map +1 -1
  203. package/lib/core/TextArea/TextArea.stories.d.ts.map +1 -1
  204. package/lib/core/TextArea/TextArea.stories.js +0 -1
  205. package/lib/core/TextArea/TextArea.stories.js.map +1 -1
  206. package/lib/rte/Editor/Editor.stories.d.ts.map +1 -1
  207. package/lib/rte/Editor/Editor.stories.js +8 -2
  208. package/lib/rte/Editor/Editor.stories.js.map +1 -1
  209. package/lib/rte/RichTextEditor/RichTextEditor.stories.d.ts +1 -0
  210. package/lib/rte/RichTextEditor/RichTextEditor.stories.d.ts.map +1 -1
  211. package/lib/rte/RichTextEditor/RichTextEditor.stories.js +37 -5
  212. package/lib/rte/RichTextEditor/RichTextEditor.stories.js.map +1 -1
  213. package/lib/rte/RichTextEditor/RichTextViewer.stories.d.ts +8 -3
  214. package/lib/rte/RichTextEditor/RichTextViewer.stories.d.ts.map +1 -1
  215. package/lib/rte/RichTextEditor/RichTextViewer.stories.js +66 -11
  216. package/lib/rte/RichTextEditor/RichTextViewer.stories.js.map +1 -1
  217. package/lib/social/Chat/Chat.mocks.d.ts +5 -17
  218. package/lib/social/Chat/Chat.mocks.d.ts.map +1 -1
  219. package/lib/social/Chat/Chat.mocks.js +44 -21
  220. package/lib/social/Chat/Chat.mocks.js.map +1 -1
  221. package/lib/social/Chat/Chat.stories.d.ts +2 -0
  222. package/lib/social/Chat/Chat.stories.d.ts.map +1 -1
  223. package/lib/social/Chat/Chat.stories.js +93 -35
  224. package/lib/social/Chat/Chat.stories.js.map +1 -1
  225. package/lib/social/Feed/Feed.stories.d.ts.map +1 -1
  226. package/lib/social/Feed/Feed.stories.js +2 -0
  227. package/lib/social/Feed/Feed.stories.js.map +1 -1
  228. package/lib/work/ArticleList/ArticleBuddy.stories.d.ts +2 -0
  229. package/lib/work/ArticleList/ArticleBuddy.stories.d.ts.map +1 -1
  230. package/lib/work/ArticleList/ArticleBuddy.stories.js +38 -14
  231. package/lib/work/ArticleList/ArticleBuddy.stories.js.map +1 -1
  232. package/lib/work/ArticleList/ArticleList.mocks.d.ts +66 -3
  233. package/lib/work/ArticleList/ArticleList.mocks.d.ts.map +1 -1
  234. package/lib/work/ArticleList/ArticleList.mocks.js +15 -25
  235. package/lib/work/ArticleList/ArticleList.mocks.js.map +1 -1
  236. package/lib/work/ArticleList/ArticleList.stories.d.ts.map +1 -1
  237. package/lib/work/ArticleList/ArticleList.stories.js +41 -20
  238. package/lib/work/ArticleList/ArticleList.stories.js.map +1 -1
  239. package/lib/work/Assignments/Assignments.stories.js +2 -2
  240. package/lib/work/Assignments/Assignments.stories.js.map +1 -1
  241. package/lib/work/CaseView/CaseView.mocks.d.ts +6 -2
  242. package/lib/work/CaseView/CaseView.mocks.d.ts.map +1 -1
  243. package/lib/work/CaseView/CaseView.mocks.js +55 -22
  244. package/lib/work/CaseView/CaseView.mocks.js.map +1 -1
  245. package/lib/work/Details/Details.stories.d.ts.map +1 -1
  246. package/lib/work/Details/Details.stories.js +0 -1
  247. package/lib/work/Details/Details.stories.js.map +1 -1
  248. package/lib/work/Stakeholders/Stakeholders.stories.d.ts +4 -1
  249. package/lib/work/Stakeholders/Stakeholders.stories.d.ts.map +1 -1
  250. package/lib/work/Stakeholders/Stakeholders.stories.js +14 -6
  251. package/lib/work/Stakeholders/Stakeholders.stories.js.map +1 -1
  252. package/package.json +11 -10
@@ -1 +1 @@
1
- {"version":3,"file":"ArticleList.stories.js","sourceRoot":"","sources":["../../../src/work/ArticleList/ArticleList.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGlE,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAQnG,OAAO,KAAK,iBAAiB,MAAM,wEAAwE,CAAC;AAC5G,OAAO,KAAK,mBAAmB,MAAM,0EAA0E,CAAC;AAChH,OAAO,KAAK,QAAQ,MAAM,kEAAkE,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAQzF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEpG,eAAe;IACb,KAAK,EAAE,kBAAkB;IACzB,SAAS,EAAE,WAAW;IACtB,aAAa,EAAE,EAAE,cAAc,EAAE,iBAAiB,EAAE;IACpD,UAAU,EAAE;QACV,MAAM,EAAE,YAAY;KACrB;CACM,CAAC;AAEV,YAAY,CAAC,iBAAiB,EAAE,mBAAmB,EAAE,QAAQ,CAAC,CAAC;AAoB/D,MAAM,CAAC,MAAM,eAAe,GAAkC,CAAC,IAA0B,EAAE,EAAE;IAC3F,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC/C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;IACxD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAqB,EAAE,CAAC,CAAC;IACzE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAqB,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAwB,EAAE,CAAC,CAAC;IACpE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAgB,EAAE,CAAC,CAAC;IACpE,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,EAAqB,CAAC;IACtE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEzF,MAAM,kBAAkB,GAAG,WAAW,CAAC,CAAC,EAAuB,EAAE,EAAE;QACjE,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC;IACrE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,EAAE;QACpC,OAAO,WAAW,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAClG,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,EAAE;QACxC,OAAO,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAChD,GAAG,IAAI;YACP,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;SAC1B,CAAC,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,MAAM,UAAU,GAAG,CAAC,EAAuB,EAAE,EAAE;QAC7C,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;IAC9E,CAAC,CAAC;IAEF,MAAM,UAAU,GAA4D,CAC1E,SAAS,EACT,QAAQ,EACR,EAAE;QACF,WAAW,CAAC,YAAY,CAAC,EAAE;YACzB,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC;YACtF,MAAM,WAAW,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;YACtC,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE;gBACpB,MAAM,mBAAmB,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC;gBAC5D,IAAI,mBAAmB,EAAE;oBACvB,MAAM,SAAS,GAAG,mBAAmB,EAAE,KAAK,IAAI,CAAC,CAAC;oBAClD,MAAM,YAAY,GAAG,mBAAmB,EAAE,QAAQ,IAAI,CAAC,CAAC;oBAExD,IAAI,CAAC,QAAQ,EAAE;wBACb,IAAI,mBAAmB,CAAC,QAAQ,KAAK,OAAO,EAAE;4BAC5C,mBAAmB,CAAC,KAAK,GAAG,SAAS,GAAG,CAAC,CAAC;yBAC3C;6BAAM;4BACL,mBAAmB,CAAC,QAAQ,GAAG,YAAY,GAAG,CAAC,CAAC;yBACjD;wBACD,mBAAmB,CAAC,QAAQ,GAAG,SAAS,CAAC;qBAC1C;oBAED,IAAI,QAAQ,KAAK,OAAO,EAAE;wBACxB,IAAI,mBAAmB,EAAE,QAAQ,KAAK,UAAU,EAAE;4BAChD,mBAAmB,CAAC,QAAQ,GAAG,YAAY,GAAG,CAAC,CAAC;yBACjD;wBAED,mBAAmB,CAAC,KAAK,GAAG,SAAS,GAAG,CAAC,CAAC;wBAC1C,mBAAmB,CAAC,QAAQ,GAAG,OAAO,CAAC;qBACxC;oBAED,IAAI,QAAQ,KAAK,UAAU,EAAE;wBAC3B,IAAI,mBAAmB,CAAC,QAAQ,KAAK,OAAO,EAAE;4BAC5C,mBAAmB,CAAC,KAAK,GAAG,SAAS,GAAG,CAAC,CAAC;yBAC3C;wBACD,mBAAmB,CAAC,QAAQ,GAAG,YAAY,GAAG,CAAC,CAAC;wBAChD,mBAAmB,CAAC,QAAQ,GAAG,UAAU,CAAC;qBAC3C;iBACF;aACF;YAED,OAAO,WAAW,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,YAA4B,EAAE,EAAE;QACtD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC,GAAG,CACb,CAAC,EACC,OAAO,GAAG,KAAK,EACf,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,EAAE,EACd,KAAK,EACL,IAAI,GAAG,GAAG,EACV,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,YAAY,EAAE,eAAe,EAC9B,EAAE,EAAE;YACH,MAAM,SAAS,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;YAC9C,IAAI,OAAO,EAAE;gBACX,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;aAC9C;iBAAM;gBACL,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;aAC3C;YACD,IAAI,UAAU,EAAE;gBACd,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;aAC/C;iBAAM;gBACL,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;aAC7C;YAED,OAAO;gBACL,SAAS;gBACT,IAAI;gBACJ,KAAK;gBACL,QAAQ;gBACR,YAAY,EAAE,CAAC,EAAW,EAAE,CAAqD,EAAE,EAAE;oBACnF,CAAC,EAAE,cAAc,EAAE,CAAC;gBACtB,CAAC;gBACD,cAAc,EAAE,SAAS;gBACzB,IAAI;gBACJ,QAAQ;gBACR,YAAY,EACV,IAAI,CAAC,gBAAgB,IAAI,eAAe,EAAE,MAAM;oBAC9C,CAAC,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;wBACpC,OAAO;4BACL,EAAE;4BACF,IAAI;yBACL,CAAC;oBACJ,CAAC,CAAC;oBACJ,CAAC,CAAC,EAAE;aACT,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAIpB,aAAa,CAAC,EAAE;QACnB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;YAC3B,IAAI,gBAAgB,GAAQ,IAAI,CAAC;YAEjC,IAAI,CAAC,aAAa,IAAI,aAAa,KAAK,QAAQ;gBAAE,gBAAgB,GAAG,EAAE,GAAG,UAAU,EAAE,CAAC;iBAClF,IAAI,aAAa,KAAK,WAAW;gBAAE,gBAAgB,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC;iBAC3E,IAAI,aAAa,KAAK,UAAU;gBAAE,gBAAgB,GAAG,EAAE,GAAG,YAAY,EAAE,CAAC;YAE9E,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,gBAAgB,EAAE;oBACpB,OAAO,CAAC;wBACN,QAAQ,EAAE,cAAc,CAAC,gBAAgB,CAAC,QAAQ,CAAC;wBACnD,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,IAAI,EAAE;wBACzC,MAAM,EAAE,gBAAgB,CAAC,MAAM,IAAI,EAAE;qBACtC,CAAC,CAAC;iBACJ;YACH,CAAC,EAAE,GAAG,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,UAAU,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QACtD,OAAO;YACL,GAAG,OAAO;YACV,QAAQ,EAAE;gBACR,GAAG,OAAO,CAAC,QAAQ;gBACnB,EAAE,EAAE,OAAO,CAAC,SAAS;gBACrB,UAAU;aACX;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QAC5D,OAAO;YACL,GAAG,OAAO;YACV,QAAQ,EAAE;gBACR,GAAG,OAAO,CAAC,QAAQ;gBACnB,EAAE,EAAE,OAAO,CAAC,SAAS;gBACrB,UAAU;aACX;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QAC1D,OAAO;YACL,GAAG,OAAO;YACV,QAAQ,EAAE;gBACR,GAAG,OAAO,CAAC,QAAQ;gBACnB,EAAE,EAAE,OAAO,CAAC,SAAS;gBACrB,UAAU;aACX;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,CAAC,EAAU,EAAE,EAAE;QACrC,WAAW,CAAC,EAAE,CAAC,CAAC;QAChB,eAAe,CAAC,EAAE,CAAC,CAAC;QACpB,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,mBAAmB,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACjC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC1B,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC9B,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACtB,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;QAEH,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,IAAI,EAAE,KAAK,QAAQ,EAAE;YACnB,eAAe,CAAC,EAAE,CAAC,CAAC;SACrB;IACH,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,mBAAmB,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACxC,UAAU,CAAC,KAAK,CAAC,CAAC;YAClB,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,mBAAmB,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAE5F,MAAM,aAAa,GAAyB;QAC1C,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,mBAAmB;QAChC,QAAQ,EAAE,CAAC,CAAC,EAAE;YACZ,sBAAsB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC;QACD,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,cAAc;QACpB,QAAQ,EAAE;YACR,KAAK,EAAE,gBAAgB;SACxB;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,mBAAmB;gBACxB,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAiB,EAAE,EAAE;oBACtE,OAAO,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;gBACnE,CAAC,CAAC;gBACJ,CAAC,CAAC,oBAAoB;YACxB,WAAW,EAAE,UAAU;SACxB;KACF,CAAC;IAEF,MAAM,WAAW,GAAuB;QACtC,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,gBAAgB;QAC7B,QAAQ,EAAE,oBAAoB;YAC5B,CAAC,CAAC;gBACE,KAAK,EAAE;oBACL,EAAE,EAAE,oBAAoB,CAAC,EAAE;oBAC3B,IAAI,EAAE,oBAAoB,CAAC,OAAO;iBACnC;aACF;YACH,CAAC,CAAC,SAAS;QACb,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,WAAW,EAAE,kBAAkB;SAChC;KACF,CAAC;IAEF,MAAM,aAAa,GAAqB;QACtC,WAAW,EAAE,gBAAgB;QAC7B,OAAO,EAAE,CAAC,aAAa,EAAE,aAAa,EAAE,aAAa,CAAC;QACtD,KAAK,EAAE,SAAS;QAChB,cAAc,EAAE,CAAC,GAAW,EAAE,EAAE;YAC9B,YAAY,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;QACD,cAAc,EAAE,CAAC,GAAW,EAAE,EAAE;YAC9B,OAAO,GAAG,CAAC;QACb,CAAC;KACF,CAAC;IAEF,MAAM,aAAa,GAAG;QACpB;YACE,EAAE,EAAE,GAAG;YACP,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC;SAC3D;QACD;YACE,EAAE,EAAE,GAAG;YACP,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC;SAC3D;QACD;YACE,EAAE,EAAE,GAAG;YACP,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC;SAC3D;KACF,CAAC;IAEF,MAAM,uBAAuB,GAAW;QACtC,EAAE,EAAE,gBAAgB;QACpB,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QAC9C,IAAI,EAAE,MAAM;KACb,CAAC;IAEF,IAAI,OAAO,CAAC;IACZ,IAAI,IAAI,CAAC,UAAU,EAAE;QACnB,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC/B,OAAO,GAAG,CAAC,uBAAuB,CAAC,CAAC;SACrC;aAAM;YACL,OAAO,GAAG,aAAa,CAAC;SACzB;KACF;IAED,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC5B,eAAe,CAAC,EAAE,CAAC,CAAC;QACpB,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,eAAe,CAAC,IAAI,CAAC,EAAE;YACrB,OAAO,IAAI,EAAE,GAAG,CAAC,gBAAgB,CAAC,EAAE;gBAClC,OAAO;oBACL,GAAG,gBAAgB;oBACnB,QAAQ,EAAE,KAAK;iBAChB,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,SAAS,CAAC,IAAI,CAAC,EAAE;YACf,OAAO,IAAI,EAAE,GAAG,CAAC,cAAc,CAAC,EAAE;gBAChC,OAAO;oBACL,GAAG,cAAc;oBACjB,QAAQ,EAAE,KAAK;iBAChB,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,IAAI,SAAwC,CAAC;IAC7C,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,IAAI,CAAC,OAAO,IAAI,CAAC,WAAW,IAAI,SAAS,EAAE;YACzC,aAAa,CAAC,IAAI,CAAC,CAAC;YACpB,UAAU,CAAC,KAAK,CAAC,CAAC;YAClB,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC1B,aAAa,CAAC,KAAK,CAAC,CAAC;gBACrB,UAAU,CAAC,KAAK,CAAC,CAAC;gBAClB,UAAU,CAAC,IAAI,CAAC,CAAC;gBACjB,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC1B,GAAG,YAAY;oBACf;wBACE,SAAS,EAAE,SAAS,EAAE;wBACtB,KAAK,EAAE,uBAAuB;wBAC9B,IAAI,EAAE,iBAAiB;wBACvB,QAAQ,EACN,+HAA+H;wBACjI,IAAI,EAAE;4BACJ,QAAQ,EAAE,QAAQ;4BAClB,aAAa,EAAE,YAAY;yBAC5B;wBACD,QAAQ,EAAE;4BACR,SAAS,EAAE,SAAS,EAAE;4BACtB,KAAK,EAAE,EAAE;4BACT,QAAQ,EAAE,EAAE;4BACZ,KAAK,EAAE,IAAI;4BACX,QAAQ,EAAE,KAAK;4BACf,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC;yBACrB;wBACD,UAAU,EAAE,KAAK;wBACjB,OAAO,EAAE,IAAI;wBACb,YAAY,EAAE;4BACZ,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE;4BAC9B,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE;yBAC5B;qBACF;iBACF,CAAC,CAAC;YACL,CAAC,EAAE,IAAI,CAAC,CAAC;SACV;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;IAEtC,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,mBAAmB,GAAG,CAAC,gBAAmC,EAAE,EAAE;QAClE,MAAM,WAAW,GAAG;YAClB,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE;YAC1B,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE;SAC1B,CAAC;QAEF,OAAO;YACL,KAAK,EAAE,gBAAgB,CAAC,KAAK;YAC7B,OAAO,EAAE,gBAAgB,CAAC,OAAO;YACjC,UAAU,EAAE,gBAAgB,CAAC,UAAU;YACvC,UAAU,EAAE,gBAAgB,CAAC,UAAU;YACvC,OAAO,EAAE,WAAW;SACrB,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAEvB,GAAG,EAAE;QACR,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;YAC3B,UAAU,CAAC,GAAG,EAAE;gBACd,OAAO,CAAC;oBACN,IAAI,EAAE,mBAAmB,CAAC,oBAAoB,CAAC;iBAChD,CAAC,CAAC;YACL,CAAC,EAAE,IAAI,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAqB;QAC3C,WAAW,EAAE,2BAA2B;QACxC,KAAK,EAAE,SAAS;QAChB,cAAc,EAAE,CAAC,GAAW,EAAE,EAAE;YAC9B,YAAY,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;QACD,cAAc,EAAE,GAAG,EAAE;YACnB,cAAc,CAAC,IAAI,CAAC,CAAC;YACrB,sBAAsB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBAClC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC1B,cAAc,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;IAEF,OAAO,CACL,cACE,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;SACf,YAED,KAAC,WAAW,IACV,MAAM,EACJ,IAAI,CAAC,UAAU;gBACb,CAAC,CAAC;oBACE,KAAK,EAAE,oBAAoB;oBAC3B,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;oBAC5C,OAAO;iBACR;gBACH,CAAC,CAAC,SAAS,EAEf,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,eAAe,EAC3B,WAAW,EAAE,KAAK,EAClB,SAAS,EAAE;gBACT,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBACvD,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBAC/B,IACE,CAAC,OAAO,CAAC,QAAQ;wBACjB,OAAO,CAAC,QAAQ,CAAC,KAAK,KAAK,SAAS;wBACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,EACvC;wBACA,OAAO,OAAO,CAAC;qBAChB;oBAED,MAAM,UAAU,GACd,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK;wBAC7D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAC5B,MAAM,YAAY,GAChB,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK;wBAC/D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAC5B,OAAO;wBACL,GAAG,OAAO;wBACV,QAAQ,EAAE;4BACR,GAAG,OAAO,CAAC,QAAQ;4BACnB,KAAK,EAAE,UAAU;4BAEjB,QAAQ,EAAE,YAAY;yBACvB;qBACF,CAAC;gBACJ,CAAC,CAAC;aACH,EACD,QAAQ,EAAE;gBACR,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBACtD,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBAC/B,IACE,CAAC,OAAO,CAAC,QAAQ;wBACjB,OAAO,CAAC,QAAQ,CAAC,KAAK,KAAK,SAAS;wBACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,EACvC;wBACA,OAAO,OAAO,CAAC;qBAChB;oBAED,MAAM,UAAU,GACd,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK;wBAC7D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAC5B,MAAM,YAAY,GAChB,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK;wBAC/D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAC5B,OAAO;wBACL,GAAG,OAAO;wBACV,QAAQ,EAAE;4BACR,GAAG,OAAO,CAAC,QAAQ;4BACnB,KAAK,EAAE,UAAU;4BAEjB,QAAQ,EAAE,YAAY;yBACvB;qBACF,CAAC;gBACJ,CAAC,CAAC;gBACF,WAAW,EAAE,aAAa;gBAC1B,QAAQ,EAAE,aAAa;gBACvB,MAAM,EAAE,WAAW;gBACnB,YAAY,EAAE,gBAAgB;gBAC9B,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,EACD,MAAM,EAAE;gBACN,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBACpD,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBAC/B,IACE,CAAC,OAAO,CAAC,QAAQ;wBACjB,OAAO,CAAC,QAAQ,CAAC,KAAK,KAAK,SAAS;wBACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,EACvC;wBACA,OAAO,OAAO,CAAC;qBAChB;oBAED,MAAM,UAAU,GACd,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK;wBAC7D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAC5B,MAAM,YAAY,GAChB,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK;wBAC/D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAC5B,OAAO;wBACL,GAAG,OAAO;wBACV,QAAQ,EAAE;4BACR,GAAG,OAAO,CAAC,QAAQ;4BACnB,KAAK,EAAE,UAAU;4BAEjB,QAAQ,EAAE,YAAY;yBACvB;qBACF,CAAC;gBACJ,CAAC,CAAC;gBACF,WAAW,EAAE,aAAa;gBAC1B,QAAQ,EAAE,aAAa;gBACvB,MAAM,EAAE,WAAW;gBACnB,YAAY,EAAE,gBAAgB;gBAC9B,YAAY;gBACZ,uBAAuB,EAAE,CAAC,EAAU,EAAE,EAAE;oBACtC,eAAe,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC/D,CAAC;gBACD,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,EACD,KAAK,EAAE;gBACL,WAAW,EAAE,kBAAkB;gBAC/B,KAAK,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE;gBAChC,OAAO,EAAE,YAAY,EAAE,OAAO,IAAI,EAAE;gBACpC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAC/B,KAAC,IAAI,IAAC,OAAO,EAAE,oBAAoB,CAAC,OAAO,GAAI,CAChD,CAAC,CAAC,CAAC,CACF,YAAY,EAAE,OAAO,CACtB;gBACD,UAAU,EAAE,YAAY,EAAE,UAAU;gBACpC,UAAU,EAAE,oBAAoB,CAAC,UAAU;gBAC3C,OAAO,EAAE,WAAW;aACrB,EACD,kBAAkB,EAAE,CAAC,gBAA6B,EAAE,EAAE;gBACpD,eAAe,CAAC,QAAQ,CAAC,CAAC;gBAC1B,eAAe,CAAC,CAAC,GAAG,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC;YACvD,CAAC,EACD,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,GACjE,GACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,CAAC,IAAI,GAAG;IACrB,sBAAsB,EAAE,IAAI;IAC5B,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI;IAChB,cAAc,EAAE,IAAI;IACpB,gBAAgB,EAAE,IAAI;IACtB,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,IAAI;IACjB,YAAY,EAAE,KAAK;CACpB,CAAC;AAEF,eAAe,CAAC,QAAQ,GAAG;IACzB,sBAAsB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IACxD,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC5C,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC5C,cAAc,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAChD,gBAAgB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAClD,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC3C,WAAW,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC7C,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;CAC/C,CAAC","sourcesContent":["import { useCallback, useEffect, useMemo, useState } from 'react';\nimport type { MouseEvent } from 'react';\nimport type { Meta, StoryFn } from '@storybook/react';\nimport { action } from '@storybook/addon-actions';\n\nimport { createUID, menuHelpers, registerIcon, escapeRegExp, HTML } from '@pega/cosmos-react-core';\nimport type {\n Action,\n MenuItemProps,\n MenuProps,\n SearchInputProps,\n OmitStrict\n} from '@pega/cosmos-react-core';\nimport * as thumbsUpSolidIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/thumbs-up-solid.icon';\nimport * as thumbsDownSolidIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/thumbs-down-solid.icon';\nimport * as bookOpen from '@pega/cosmos-react-core/lib/components/Icon/icons/book-open.icon';\nimport { ArticleList, ArticleSummary, ArticleListFilter } from '@pega/cosmos-react-work';\nimport type {\n ArticleSummaryProps,\n Articles,\n QuickFilter,\n ArticleBuddyProps\n} from '@pega/cosmos-react-work';\n\nimport { suggestedMock, followedMock, searchMock, ArticleBuddyMockData } from './ArticleList.mocks';\n\nexport default {\n title: 'Work/ArticleList',\n component: ArticleList,\n subcomponents: { ArticleSummary, ArticleListFilter },\n parameters: {\n layout: 'fullscreen'\n }\n} as Meta;\n\nregisterIcon(thumbsUpSolidIcon, thumbsDownSolidIcon, bookOpen);\n\ninterface ArticleListDemoProps {\n isSuggestArticleAction: boolean;\n showAction: boolean;\n showHeader: boolean;\n showHeaderIcon: boolean;\n showQuickFilters: boolean;\n showCount: boolean;\n showResults: boolean;\n showLoadMore: boolean;\n}\n\ntype MockArticles = ArticleSummaryProps & {\n isLiked: boolean;\n isFollowed: boolean;\n};\n\ntype MockBuddyArticles = OmitStrict<ArticleBuddyProps, 'searchInput' | 'loading'>;\n\nexport const ArticleListDemo: StoryFn<ArticleListDemoProps> = (args: ArticleListDemoProps) => {\n const [searchVal, setSearchVal] = useState('');\n const [activeTab, setActiveTab] = useState('Suggested');\n const [loading, setLoading] = useState(false);\n const [categoryList, setCategoryList] = useState<MenuProps['items']>([]);\n const [sortBy, setSortBy] = useState<MenuProps['items']>([]);\n const [articles, setArticles] = useState<ArticleSummaryProps[]>([]);\n const [quickFilters, setQuickFilters] = useState<QuickFilter[]>([]);\n const [loadingMore, isSetLoadMore] = useState(false);\n const [hasMore, setHasMore] = useState(true);\n const [filterCategoryValue, setFilterCategoryValue] = useState('');\n const [buddyContent, setBuddyContent] = useState<MockBuddyArticles>();\n const [buddyLoader, setBuddyLoader] = useState(false);\n\n const selectedSortByOption = useMemo(() => menuHelpers.getSelected(sortBy)[0], [sortBy]);\n\n const selectSortByOption = useCallback((id: MenuItemProps['id']) => {\n setSortBy(cur => menuHelpers.selectItem(cur, id, 'single-select'));\n }, []);\n\n const selectedCategory = useMemo(() => {\n return menuHelpers.getSelected(categoryList).map(item => ({ text: item.primary, id: item.id }));\n }, [categoryList]);\n\n const categoryListToRender = useMemo(() => {\n return menuHelpers.mapTree(categoryList, item => ({\n ...item,\n selected: !!item.selected\n }));\n }, [categoryList]);\n\n const toggleItem = (id: MenuItemProps['id']) => {\n setCategoryList(cur => menuHelpers.toggleSelected(cur, id, 'multi-select'));\n };\n\n const onReaction: Required<ArticleSummaryProps>['feedback']['onReaction'] = (\n articleId,\n reaction\n ) => {\n setArticles(prevArticles => {\n const itemIndex = prevArticles.findIndex(article => article?.articleId === articleId);\n const updatedData = [...prevArticles];\n if (itemIndex !== -1) {\n const currentItemFeedback = updatedData[itemIndex].feedback;\n if (currentItemFeedback) {\n const likeValue = currentItemFeedback?.likes || 0;\n const dislikeValue = currentItemFeedback?.dislikes || 0;\n\n if (!reaction) {\n if (currentItemFeedback.reaction === 'liked') {\n currentItemFeedback.likes = likeValue - 1;\n } else {\n currentItemFeedback.dislikes = dislikeValue - 1;\n }\n currentItemFeedback.reaction = undefined;\n }\n\n if (reaction === 'liked') {\n if (currentItemFeedback?.reaction === 'disliked') {\n currentItemFeedback.dislikes = dislikeValue - 1;\n }\n\n currentItemFeedback.likes = likeValue + 1;\n currentItemFeedback.reaction = 'liked';\n }\n\n if (reaction === 'disliked') {\n if (currentItemFeedback.reaction === 'liked') {\n currentItemFeedback.likes = likeValue - 1;\n }\n currentItemFeedback.dislikes = dislikeValue + 1;\n currentItemFeedback.reaction = 'disliked';\n }\n }\n }\n\n return updatedData;\n });\n };\n\n const updateArticles = (mockArticles: MockArticles[]) => {\n const data = Object.values(mockArticles);\n return data.map(\n ({\n isLiked = false,\n isFollowed = false,\n articleId = '',\n title,\n href = '/',\n abstract,\n meta,\n feedback,\n quickFilters: quickFilterTags\n }) => {\n const actionObj = [{ id: '1', text: 'Edit' }];\n if (isLiked) {\n actionObj.push({ id: '3', text: 'Dislike' });\n } else {\n actionObj.push({ id: '3', text: 'Like' });\n }\n if (isFollowed) {\n actionObj.push({ id: '4', text: 'Unfollow' });\n } else {\n actionObj.push({ id: '4', text: 'Follow' });\n }\n\n return {\n articleId,\n href,\n title,\n abstract,\n onTitleClick: (id?: string, e?: MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => {\n e?.preventDefault();\n },\n primaryActions: actionObj,\n meta,\n feedback,\n quickFilters:\n args.showQuickFilters && quickFilterTags?.length\n ? quickFilterTags?.map(({ id, name }) => {\n return {\n id,\n name\n };\n })\n : []\n };\n }\n );\n };\n\n const fetchArticleContent: (activeTabName: string) => Promise<{\n articles: ArticleSummaryProps[];\n category: MenuProps['items'];\n sortBy: MenuProps['items'];\n }> = activeTabName => {\n return new Promise(resolve => {\n let activeTabContent: any = null;\n\n if (!activeTabName || activeTabName === 'Search') activeTabContent = { ...searchMock };\n else if (activeTabName === 'Suggested') activeTabContent = { ...suggestedMock };\n else if (activeTabName === 'Followed') activeTabContent = { ...followedMock };\n\n setTimeout(() => {\n if (activeTabContent) {\n resolve({\n articles: updateArticles(activeTabContent.articles),\n category: activeTabContent.category || [],\n sortBy: activeTabContent.sortBy || []\n });\n }\n }, 500);\n });\n };\n\n searchMock.articles = searchMock.articles.map(article => {\n return {\n ...article,\n feedback: {\n ...article.feedback,\n id: article.articleId,\n onReaction\n }\n };\n });\n\n suggestedMock.articles = suggestedMock.articles.map(article => {\n return {\n ...article,\n feedback: {\n ...article.feedback,\n id: article.articleId,\n onReaction\n }\n };\n });\n\n followedMock.articles = followedMock.articles.map(article => {\n return {\n ...article,\n feedback: {\n ...article.feedback,\n id: article.articleId,\n onReaction\n }\n };\n });\n\n const handleTabChange = (id: string) => {\n setArticles([]);\n setCategoryList([]);\n setLoading(true);\n fetchArticleContent(id).then(res => {\n setArticles(res.articles);\n setCategoryList(res.category);\n setSortBy(res.sortBy);\n setLoading(false);\n });\n\n setActiveTab(id);\n setSearchVal('');\n if (id !== 'Search') {\n setQuickFilters([]);\n }\n };\n\n useEffect(() => {\n setLoading(true);\n fetchArticleContent(activeTab).then(res => {\n setLoading(false);\n setArticles(res.articles);\n });\n }, [activeTab]);\n\n const filterRegex = useMemo(() => escapeRegExp(filterCategoryValue), [filterCategoryValue]);\n\n const categoryProps: Articles['category'] = {\n label: 'Category',\n placeholder: 'Select categories',\n onChange: e => {\n setFilterCategoryValue(e.target.value);\n },\n value: filterCategoryValue,\n mode: 'multi-select',\n selected: {\n items: selectedCategory\n },\n menu: {\n items: filterCategoryValue\n ? menuHelpers.flatten(categoryList).filter(({ primary }: MenuItemProps) => {\n return filterRegex.toLowerCase().includes(primary.toLowerCase());\n })\n : categoryListToRender,\n onItemClick: toggleItem\n }\n };\n\n const sortByProps: Articles['sortBy'] = {\n label: 'Sort by',\n placeholder: 'Select sort by',\n selected: selectedSortByOption\n ? {\n items: {\n id: selectedSortByOption.id,\n text: selectedSortByOption.primary\n }\n }\n : undefined,\n menu: {\n items: sortBy,\n onItemClick: selectSortByOption\n }\n };\n\n const searchOptions: SearchInputProps = {\n placeholder: 'Search article',\n filters: ['Help site 1', 'Help site 2', 'Help site 3'],\n value: searchVal,\n onSearchChange: (val: string) => {\n setSearchVal(val);\n },\n onFilterChange: (val: string) => {\n return val;\n }\n };\n\n const actionOptions = [\n {\n id: '1',\n text: 'Action 1',\n onClick: (id: string) => action('onClick')(`action ${id}`)\n },\n {\n id: '2',\n text: 'Action 2',\n onClick: (id: string) => action('onClick')(`action ${id}`)\n },\n {\n id: '3',\n text: 'Action 3',\n onClick: (id: string) => action('onClick')(`action ${id}`)\n }\n ];\n\n const suggestNewArticleAction: Action = {\n id: 'Suggest action',\n text: 'Suggest action',\n onClick: (id: string) => action('onClick')(id),\n icon: 'plus'\n };\n\n let actions;\n if (args.showAction) {\n if (args.isSuggestArticleAction) {\n actions = [suggestNewArticleAction];\n } else {\n actions = actionOptions;\n }\n }\n\n const handleClearClick = () => {\n setQuickFilters([]);\n setSearchVal('');\n setCategoryList(curr => {\n return curr?.map(categoryListItem => {\n return {\n ...categoryListItem,\n selected: false\n };\n });\n });\n setSortBy(curr => {\n return curr?.map(sortByListItem => {\n return {\n ...sortByListItem,\n selected: false\n };\n });\n });\n };\n\n let timeoutId: ReturnType<typeof setTimeout>;\n const stopTimeout = () => {\n clearTimeout(timeoutId);\n };\n\n const onLoadMore = useCallback(() => {\n if (!loading && !loadingMore && activeTab) {\n isSetLoadMore(true);\n setLoading(false);\n timeoutId = setTimeout(() => {\n isSetLoadMore(false);\n setLoading(false);\n setHasMore(true);\n setArticles(prevArticles => [\n ...prevArticles,\n {\n articleId: createUID(),\n title: 'Last article alert!!!',\n href: 'design.pega.com',\n abstract:\n 'Last article alert. This is the last article , hence the last index to be noted. This will be appended at the end of the list',\n meta: {\n category: 'Retail',\n publishedDate: '2023-04-06'\n },\n feedback: {\n articleId: createUID(),\n likes: 20,\n dislikes: 80,\n liked: true,\n disliked: false,\n onReaction: () => {}\n },\n isFollowed: false,\n isLiked: true,\n quickFilters: [\n { id: '1', name: 'insurance' },\n { id: '2', name: 'policy' }\n ]\n }\n ]);\n }, 3000);\n }\n }, [loading, loadingMore, activeTab]);\n\n useEffect(() => {\n return () => stopTimeout();\n }, []);\n\n const updateBuddyArticles = (mockBuddyArticle: MockBuddyArticles) => {\n const actionItems = [\n { id: '1', text: 'Share' },\n { id: '2', text: 'Copy' }\n ];\n\n return {\n title: mockBuddyArticle.title,\n content: mockBuddyArticle.content,\n references: mockBuddyArticle.references,\n disclaimer: mockBuddyArticle.disclaimer,\n actions: actionItems\n };\n };\n\n const fetchBuddySearchResult: () => Promise<{\n data: MockBuddyArticles;\n }> = () => {\n return new Promise(resolve => {\n setTimeout(() => {\n resolve({\n data: updateBuddyArticles(ArticleBuddyMockData)\n });\n }, 1000);\n });\n };\n\n const buddySearchOptions: SearchInputProps = {\n placeholder: 'Ask your question here...',\n value: searchVal,\n onSearchChange: (val: string) => {\n setSearchVal(val);\n },\n onSearchSubmit: () => {\n setBuddyLoader(true);\n fetchBuddySearchResult().then(res => {\n setBuddyContent(res.data);\n setBuddyLoader(false);\n });\n }\n };\n\n return (\n <div\n style={{\n width: '25rem'\n }}\n >\n <ArticleList\n header={\n args.showHeader\n ? {\n title: 'Knowledge articles',\n icon: args.showHeaderIcon ? 'book-open' : '',\n actions\n }\n : undefined\n }\n activeTab={activeTab}\n onTabClick={handleTabChange}\n skeletonize={false}\n suggested={{\n count: args.showCount ? suggestedMock.count : undefined,\n articles: articles.map(article => {\n if (\n !article.feedback ||\n article.feedback.likes === undefined ||\n article.feedback.dislikes === undefined\n ) {\n return article;\n }\n\n const likesValue =\n (article.feedback?.likes ?? 0 * 100) / article.feedback.likes +\n article.feedback.dislikes;\n const disLikeValue =\n (article.feedback.dislikes ?? 0 * 100) / article.feedback.likes +\n article.feedback.dislikes;\n return {\n ...article,\n feedback: {\n ...article.feedback,\n likes: likesValue,\n\n dislikes: disLikeValue\n }\n };\n })\n }}\n followed={{\n count: args.showCount ? followedMock.count : undefined,\n articles: articles.map(article => {\n if (\n !article.feedback ||\n article.feedback.likes === undefined ||\n article.feedback.dislikes === undefined\n ) {\n return article;\n }\n\n const likesValue =\n (article.feedback?.likes ?? 0 * 100) / article.feedback.likes +\n article.feedback.dislikes;\n const disLikeValue =\n (article.feedback.dislikes ?? 0 * 100) / article.feedback.likes +\n article.feedback.dislikes;\n return {\n ...article,\n feedback: {\n ...article.feedback,\n likes: likesValue,\n\n dislikes: disLikeValue\n }\n };\n }),\n searchInput: searchOptions,\n category: categoryProps,\n sortBy: sortByProps,\n onClearClick: handleClearClick,\n showResults: args.showResults\n }}\n search={{\n count: args.showCount ? searchMock.count : undefined,\n articles: articles.map(article => {\n if (\n !article.feedback ||\n article.feedback.likes === undefined ||\n article.feedback.dislikes === undefined\n ) {\n return article;\n }\n\n const likesValue =\n (article.feedback?.likes ?? 0 * 100) / article.feedback.likes +\n article.feedback.dislikes;\n const disLikeValue =\n (article.feedback.dislikes ?? 0 * 100) / article.feedback.likes +\n article.feedback.dislikes;\n return {\n ...article,\n feedback: {\n ...article.feedback,\n likes: likesValue,\n\n dislikes: disLikeValue\n }\n };\n }),\n searchInput: searchOptions,\n category: categoryProps,\n sortBy: sortByProps,\n onClearClick: handleClearClick,\n quickFilters,\n handleQuickFilterRemove: (id: string) => {\n setQuickFilters(quickFilters.filter(item => item.id !== id));\n },\n showResults: args.showResults\n }}\n buddy={{\n searchInput: buddySearchOptions,\n title: buddyContent?.title ?? '',\n actions: buddyContent?.actions ?? [],\n content: buddyContent?.content ? (\n <HTML content={ArticleBuddyMockData.content} />\n ) : (\n buddyContent?.content\n ),\n references: buddyContent?.references,\n disclaimer: ArticleBuddyMockData.disclaimer,\n loading: buddyLoader\n }}\n onQuickFilterClick={(quickFilterParam: QuickFilter) => {\n handleTabChange('Search');\n setQuickFilters([...quickFilters, quickFilterParam]);\n }}\n loading={loading}\n loadingMore={loadingMore}\n onLoadMore={args.showLoadMore && hasMore ? onLoadMore : undefined}\n />\n </div>\n );\n};\n\nArticleListDemo.args = {\n isSuggestArticleAction: true,\n showAction: true,\n showHeader: true,\n showHeaderIcon: true,\n showQuickFilters: true,\n showCount: true,\n showResults: true,\n showLoadMore: false\n};\n\nArticleListDemo.argTypes = {\n isSuggestArticleAction: { control: { type: 'boolean' } },\n showAction: { control: { type: 'boolean' } },\n showHeader: { control: { type: 'boolean' } },\n showHeaderIcon: { control: { type: 'boolean' } },\n showQuickFilters: { control: { type: 'boolean' } },\n showCount: { control: { type: 'boolean' } },\n showResults: { control: { type: 'boolean' } },\n showLoadMore: { control: { type: 'boolean' } }\n};\n"]}
1
+ {"version":3,"file":"ArticleList.stories.js","sourceRoot":"","sources":["../../../src/work/ArticleList/ArticleList.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useMemo, useState } from 'react';\nimport type { ChangeEvent } from 'react';\nimport type { Meta, StoryFn } from '@storybook/react';\nimport { action } from '@storybook/addon-actions';\n\nimport { createUID, menuHelpers, registerIcon, escapeRegExp, HTML } from '@pega/cosmos-react-core';\nimport type {\n Action,\n MenuItemProps,\n MenuProps,\n SearchInputProps,\n OmitStrict\n} from '@pega/cosmos-react-core';\nimport * as thumbsUpSolidIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/thumbs-up-solid.icon';\nimport * as thumbsDownSolidIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/thumbs-down-solid.icon';\nimport * as bookOpen from '@pega/cosmos-react-core/lib/components/Icon/icons/book-open.icon';\nimport { ArticleList, ArticleSummary, ArticleListFilter } from '@pega/cosmos-react-work';\nimport type {\n ArticleSummaryProps,\n Articles,\n QuickFilter,\n ArticleBuddyProps,\n Reaction\n} from '@pega/cosmos-react-work';\n\nimport { suggestedMock, followedMock, searchMock, ArticleBuddyMockData } from './ArticleList.mocks';\n\nexport default {\n title: 'Work/ArticleList',\n component: ArticleList,\n subcomponents: { ArticleSummary, ArticleListFilter },\n parameters: {\n layout: 'fullscreen'\n }\n} as Meta;\n\nregisterIcon(thumbsUpSolidIcon, thumbsDownSolidIcon, bookOpen);\n\ninterface ArticleListDemoProps {\n isSuggestArticleAction: boolean;\n showAction: boolean;\n showHeader: boolean;\n showHeaderIcon: boolean;\n showQuickFilters: boolean;\n showCount: boolean;\n showResults: boolean;\n showLoadMore: boolean;\n}\n\ntype MockArticles = ArticleSummaryProps & {\n isLiked: boolean;\n isFollowed: boolean;\n};\n\ntype MockBuddyArticles = OmitStrict<\n ArticleBuddyProps,\n 'query' | 'loading' | 'onSubmit' | 'onClear' | 'feedback'\n>;\n\nexport const ArticleListDemo: StoryFn<ArticleListDemoProps> = (args: ArticleListDemoProps) => {\n const [searchVal, setSearchVal] = useState('');\n const [activeTab, setActiveTab] = useState('Suggested');\n const [loading, setLoading] = useState(false);\n const [categoryList, setCategoryList] = useState<MenuProps['items']>([]);\n const [sortBy, setSortBy] = useState<MenuProps['items']>([]);\n const [articles, setArticles] = useState<ArticleSummaryProps[]>([]);\n const [quickFilters, setQuickFilters] = useState<QuickFilter[]>([]);\n const [loadingMore, isSetLoadMore] = useState(false);\n const [hasMore, setHasMore] = useState(true);\n const [filterCategoryValue, setFilterCategoryValue] = useState('');\n const [buddyContent, setBuddyContent] = useState<MockBuddyArticles>();\n const [buddyLoader, setBuddyLoader] = useState(false);\n const [commentVal, setCommentVal] = useState('');\n const [buddyReaction, setBuddyReaction] = useState<Reaction>(undefined);\n\n const selectedSortByOption = useMemo(() => menuHelpers.getSelected(sortBy)[0], [sortBy]);\n\n const selectSortByOption = useCallback((id: MenuItemProps['id']) => {\n setSortBy(cur => menuHelpers.selectItem(cur, id, 'single-select'));\n }, []);\n\n const selectedCategory = useMemo(() => {\n return menuHelpers.getSelected(categoryList).map(item => ({ text: item.primary, id: item.id }));\n }, [categoryList]);\n\n const categoryListToRender = useMemo(() => {\n return menuHelpers.mapTree(categoryList, item => ({\n ...item,\n selected: !!item.selected\n }));\n }, [categoryList]);\n\n const toggleItem = (id: MenuItemProps['id']) => {\n setCategoryList(cur => menuHelpers.toggleSelected(cur, id, 'multi-select'));\n };\n\n const onReaction: Required<ArticleSummaryProps>['feedback']['onReaction'] = (\n articleId,\n reaction\n ) => {\n setArticles(prevArticles => {\n const itemIndex = prevArticles.findIndex(article => article?.articleId === articleId);\n const updatedData = [...prevArticles];\n if (itemIndex !== -1) {\n const currentItemFeedback = updatedData[itemIndex].feedback;\n if (currentItemFeedback) {\n const likeValue = currentItemFeedback?.likes || 0;\n const dislikeValue = currentItemFeedback?.dislikes || 0;\n\n if (!reaction) {\n if (currentItemFeedback.reaction === 'liked') {\n currentItemFeedback.likes = likeValue - 1;\n } else {\n currentItemFeedback.dislikes = dislikeValue - 1;\n }\n currentItemFeedback.reaction = undefined;\n }\n\n if (reaction === 'liked') {\n if (currentItemFeedback?.reaction === 'disliked') {\n currentItemFeedback.dislikes = dislikeValue - 1;\n }\n\n currentItemFeedback.likes = likeValue + 1;\n currentItemFeedback.reaction = 'liked';\n }\n\n if (reaction === 'disliked') {\n if (currentItemFeedback.reaction === 'liked') {\n currentItemFeedback.likes = likeValue - 1;\n }\n currentItemFeedback.dislikes = dislikeValue + 1;\n currentItemFeedback.reaction = 'disliked';\n }\n }\n }\n\n return updatedData;\n });\n };\n\n const updateArticles = (mockArticles: MockArticles[]) => {\n const data = Object.values(mockArticles);\n return data.map(\n ({\n isLiked = false,\n isFollowed = false,\n articleId = '',\n title,\n href,\n abstract,\n meta,\n feedback,\n quickFilters: quickFilterTags\n }) => {\n const actionObj = [{ id: '1', text: 'Edit' }];\n if (isLiked) {\n actionObj.push({ id: '3', text: 'Dislike' });\n } else {\n actionObj.push({ id: '3', text: 'Like' });\n }\n if (isFollowed) {\n actionObj.push({ id: '4', text: 'Unfollow' });\n } else {\n actionObj.push({ id: '4', text: 'Follow' });\n }\n\n return {\n articleId,\n href,\n title,\n abstract,\n onTitleClick: action('onTitleClick'),\n primaryActions: actionObj,\n meta,\n feedback,\n quickFilters:\n args.showQuickFilters && quickFilterTags?.length\n ? quickFilterTags?.map(({ id, name }) => {\n return {\n id,\n name\n };\n })\n : []\n };\n }\n );\n };\n\n const fetchArticleContent: (activeTabName: string) => Promise<{\n articles: ArticleSummaryProps[];\n category: MenuProps['items'];\n sortBy: MenuProps['items'];\n }> = activeTabName => {\n return new Promise(resolve => {\n let activeTabContent: any = null;\n\n if (!activeTabName || activeTabName === 'Search') activeTabContent = { ...searchMock };\n else if (activeTabName === 'Suggested') activeTabContent = { ...suggestedMock };\n else if (activeTabName === 'Followed') activeTabContent = { ...followedMock };\n\n setTimeout(() => {\n if (activeTabContent) {\n resolve({\n articles: updateArticles(activeTabContent.articles),\n category: activeTabContent.category || [],\n sortBy: activeTabContent.sortBy || []\n });\n }\n }, 500);\n });\n };\n\n searchMock.articles = searchMock.articles.map(article => {\n return {\n ...article,\n feedback: {\n ...article.feedback,\n id: article.articleId,\n onReaction\n }\n };\n });\n\n suggestedMock.articles = suggestedMock.articles.map(article => {\n return {\n ...article,\n feedback: {\n ...article.feedback,\n id: article.articleId,\n onReaction\n }\n };\n });\n\n followedMock.articles = followedMock.articles.map(article => {\n return {\n ...article,\n feedback: {\n ...article.feedback,\n id: article.articleId,\n onReaction\n }\n };\n });\n\n const handleTabChange = (id: string) => {\n setArticles([]);\n setCategoryList([]);\n setLoading(true);\n fetchArticleContent(id).then(res => {\n setArticles(res.articles);\n setCategoryList(res.category);\n setSortBy(res.sortBy);\n setLoading(false);\n });\n\n setActiveTab(id);\n setSearchVal('');\n if (id !== 'Search') {\n setQuickFilters([]);\n }\n };\n\n useEffect(() => {\n setLoading(true);\n fetchArticleContent(activeTab).then(res => {\n setLoading(false);\n setArticles(res.articles);\n });\n }, [activeTab]);\n\n const filterRegex = useMemo(() => escapeRegExp(filterCategoryValue), [filterCategoryValue]);\n\n const categoryProps: Articles['category'] = {\n label: 'Category',\n placeholder: 'Select categories',\n onChange: e => {\n setFilterCategoryValue(e.target.value);\n },\n value: filterCategoryValue,\n mode: 'multi-select',\n selected: {\n items: selectedCategory\n },\n menu: {\n items: filterCategoryValue\n ? menuHelpers.flatten(categoryList).filter(({ primary }: MenuItemProps) => {\n return filterRegex.toLowerCase().includes(primary.toLowerCase());\n })\n : categoryListToRender,\n onItemClick: toggleItem\n }\n };\n\n const sortByProps: Articles['sortBy'] = {\n label: 'Sort by',\n placeholder: 'Select sort by',\n selected: selectedSortByOption\n ? {\n items: {\n id: selectedSortByOption.id,\n text: selectedSortByOption.primary\n }\n }\n : undefined,\n menu: {\n items: sortBy,\n onItemClick: selectSortByOption\n }\n };\n\n const searchOptions: SearchInputProps = {\n placeholder: 'Search article',\n filters: ['Help site 1', 'Help site 2', 'Help site 3'],\n value: searchVal,\n onSearchChange: (val: string) => {\n setSearchVal(val);\n },\n onFilterChange: (val: string) => {\n return val;\n }\n };\n\n const actionOptions = [\n {\n id: '1',\n text: 'Action 1',\n onClick: (id: string) => action('onClick')(`action ${id}`)\n },\n {\n id: '2',\n text: 'Action 2',\n onClick: (id: string) => action('onClick')(`action ${id}`)\n },\n {\n id: '3',\n text: 'Action 3',\n onClick: (id: string) => action('onClick')(`action ${id}`)\n }\n ];\n\n const suggestNewArticleAction: Action = {\n id: 'Suggest action',\n text: 'Suggest action',\n onClick: (id: string) => action('onClick')(id),\n icon: 'plus'\n };\n\n let actions;\n if (args.showAction) {\n if (args.isSuggestArticleAction) {\n actions = [suggestNewArticleAction];\n } else {\n actions = actionOptions;\n }\n }\n\n const handleClearClick = () => {\n setQuickFilters([]);\n setSearchVal('');\n setCategoryList(curr => {\n return curr?.map(categoryListItem => {\n return {\n ...categoryListItem,\n selected: false\n };\n });\n });\n setSortBy(curr => {\n return curr?.map(sortByListItem => {\n return {\n ...sortByListItem,\n selected: false\n };\n });\n });\n };\n\n let timeoutId: ReturnType<typeof setTimeout>;\n const stopTimeout = () => {\n clearTimeout(timeoutId);\n };\n\n const onLoadMore = useCallback(() => {\n if (!loading && !loadingMore && activeTab) {\n isSetLoadMore(true);\n setLoading(false);\n timeoutId = setTimeout(() => {\n isSetLoadMore(false);\n setLoading(false);\n setHasMore(true);\n setArticles(prevArticles => [\n ...prevArticles,\n {\n articleId: createUID(),\n title: 'Last article alert!!!',\n href: 'design.pega.com',\n abstract:\n 'Last article alert. This is the last article , hence the last index to be noted. This will be appended at the end of the list',\n meta: {\n category: 'Retail',\n publishedDate: '2023-04-06'\n },\n feedback: {\n articleId: createUID(),\n likes: 20,\n dislikes: 80,\n liked: true,\n disliked: false,\n onReaction: () => {}\n },\n isFollowed: false,\n isLiked: true,\n quickFilters: [\n { id: '1', name: 'insurance' },\n { id: '2', name: 'policy' }\n ]\n }\n ]);\n }, 3000);\n }\n }, [loading, loadingMore, activeTab]);\n\n useEffect(() => {\n return () => stopTimeout();\n }, []);\n\n const updateBuddyArticles = (mockBuddyArticle: MockBuddyArticles) => {\n const actionItems = [\n { id: '1', text: 'Share' },\n { id: '2', text: 'Copy' }\n ];\n\n return {\n title: mockBuddyArticle.title,\n content: mockBuddyArticle.content,\n references: mockBuddyArticle.references,\n disclaimer: mockBuddyArticle.disclaimer,\n actions: actionItems\n };\n };\n\n const fetchBuddySearchResult: () => Promise<{\n data: MockBuddyArticles;\n }> = () => {\n return new Promise(resolve => {\n setTimeout(() => {\n resolve({\n data: updateBuddyArticles(ArticleBuddyMockData)\n });\n }, 1000);\n });\n };\n\n const getBuddyResults = async () => {\n setBuddyLoader(true);\n const res = await fetchBuddySearchResult();\n setBuddyContent(res.data);\n setBuddyLoader(false);\n };\n\n const buddyQuery: ArticleBuddyProps['query'] = {\n placeholder: 'Ask your question here...',\n value: searchVal,\n onChange: (e: ChangeEvent<HTMLTextAreaElement>) => setSearchVal(e.target.value)\n };\n const buddyFeedback: ArticleBuddyProps['feedback'] = {\n comment: {\n placeholder: 'How can I improve...',\n value: commentVal,\n onChange: (e: ChangeEvent<HTMLTextAreaElement>) => setCommentVal(e.target.value)\n },\n reaction: buddyReaction,\n onReaction: (reaction: Reaction) => {\n setBuddyReaction(reaction);\n },\n onSubmit: (response: { reaction: Reaction; comment: string }) => {\n action('onClick')(`action ${response.reaction} ${response.comment}`);\n setCommentVal('');\n setBuddyReaction(undefined);\n }\n };\n\n return (\n <div\n style={{\n width: '25rem'\n }}\n >\n <ArticleList\n header={\n args.showHeader\n ? {\n title: 'Knowledge articles',\n icon: args.showHeaderIcon ? 'book-open' : '',\n actions\n }\n : undefined\n }\n activeTab={activeTab}\n onTabClick={handleTabChange}\n skeletonize={false}\n suggested={{\n count: args.showCount ? suggestedMock.count : undefined,\n articles: articles.map(article => {\n if (\n !article.feedback ||\n article.feedback.likes === undefined ||\n article.feedback.dislikes === undefined\n ) {\n return article;\n }\n\n const likesValue =\n (article.feedback?.likes ?? 0 * 100) / article.feedback.likes +\n article.feedback.dislikes;\n const disLikeValue =\n (article.feedback.dislikes ?? 0 * 100) / article.feedback.likes +\n article.feedback.dislikes;\n return {\n ...article,\n feedback: {\n ...article.feedback,\n likes: likesValue,\n\n dislikes: disLikeValue\n }\n };\n })\n }}\n followed={{\n count: args.showCount ? followedMock.count : undefined,\n articles: articles.map(article => {\n if (\n !article.feedback ||\n article.feedback.likes === undefined ||\n article.feedback.dislikes === undefined\n ) {\n return article;\n }\n\n const likesValue =\n (article.feedback?.likes ?? 0 * 100) / article.feedback.likes +\n article.feedback.dislikes;\n const disLikeValue =\n (article.feedback.dislikes ?? 0 * 100) / article.feedback.likes +\n article.feedback.dislikes;\n return {\n ...article,\n feedback: {\n ...article.feedback,\n likes: likesValue,\n\n dislikes: disLikeValue\n }\n };\n }),\n searchInput: searchOptions,\n category: categoryProps,\n sortBy: sortByProps,\n onClearClick: handleClearClick,\n showResults: args.showResults\n }}\n search={{\n count: args.showCount ? searchMock.count : undefined,\n articles: articles.map(article => {\n if (\n !article.feedback ||\n article.feedback.likes === undefined ||\n article.feedback.dislikes === undefined\n ) {\n return article;\n }\n\n const likesValue =\n (article.feedback?.likes ?? 0 * 100) / article.feedback.likes +\n article.feedback.dislikes;\n const disLikeValue =\n (article.feedback.dislikes ?? 0 * 100) / article.feedback.likes +\n article.feedback.dislikes;\n return {\n ...article,\n feedback: {\n ...article.feedback,\n likes: likesValue,\n\n dislikes: disLikeValue\n }\n };\n }),\n searchInput: searchOptions,\n category: categoryProps,\n sortBy: sortByProps,\n onClearClick: handleClearClick,\n quickFilters,\n handleQuickFilterRemove: (id: string) => {\n setQuickFilters(quickFilters.filter(item => item.id !== id));\n },\n showResults: args.showResults\n }}\n buddy={{\n title: 'Ask buddy',\n content: {\n query: buddyQuery,\n onSubmit: getBuddyResults,\n onClear: () => {\n setSearchVal('');\n },\n title: buddyContent?.title ?? '',\n actions: buddyContent?.actions ?? [],\n content: buddyContent?.content ? (\n <HTML content={ArticleBuddyMockData.content} />\n ) : (\n buddyContent?.content\n ),\n references: buddyContent?.references,\n feedback: buddyFeedback,\n disclaimer: ArticleBuddyMockData.disclaimer,\n loading: buddyLoader\n }\n }}\n onQuickFilterClick={(quickFilterParam: QuickFilter) => {\n handleTabChange('Search');\n setQuickFilters([...quickFilters, quickFilterParam]);\n }}\n loading={loading}\n loadingMore={loadingMore}\n onLoadMore={args.showLoadMore && hasMore ? onLoadMore : undefined}\n />\n </div>\n );\n};\n\nArticleListDemo.args = {\n isSuggestArticleAction: true,\n showAction: true,\n showHeader: true,\n showHeaderIcon: true,\n showQuickFilters: true,\n showCount: true,\n showResults: true,\n showLoadMore: false\n};\n\nArticleListDemo.argTypes = {\n isSuggestArticleAction: { control: { type: 'boolean' } },\n showAction: { control: { type: 'boolean' } },\n showHeader: { control: { type: 'boolean' } },\n showHeaderIcon: { control: { type: 'boolean' } },\n showQuickFilters: { control: { type: 'boolean' } },\n showCount: { control: { type: 'boolean' } },\n showResults: { control: { type: 'boolean' } },\n showLoadMore: { control: { type: 'boolean' } }\n};\n"]}
@@ -21,8 +21,8 @@ export const AssignmentsDemo = (args) => {
21
21
  id: `${i}`,
22
22
  name: `Task ${i + 1}`,
23
23
  processName: i % 2 ? 'Demo process' : undefined,
24
- avatar: !hasOpenTask && _jsx(Avatar, { name: 'James Gregory' }),
25
- meta: !hasOpenTask && (_jsx(MetaList, { items: [
24
+ avatar: _jsx(Avatar, { name: 'James Gregory' }),
25
+ meta: (_jsx(MetaList, { items: [
26
26
  _jsxs(Text, { variant: 'secondary', children: ["Due ", _jsx(DateTimeDisplay, { variant: 'relative', value: Date.now() + dueIn })] }),
27
27
  _jsx(Link, { href: '#demo', children: "Parent case link" })
28
28
  ] })),
@@ -1 +1 @@
1
- {"version":3,"file":"Assignments.stories.js","sourceRoot":"","sources":["../../../src/work/Assignments/Assignments.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState } from 'react';\nimport type { Meta, StoryFn } from '@storybook/react';\n\nimport { MetaList, Text, Link, DateTimeDisplay, Avatar } from '@pega/cosmos-react-core';\nimport { Assignments, tasksHelpers as helpers } from '@pega/cosmos-react-work';\nimport type { AssignmentsProps, TaskItemProps } from '@pega/cosmos-react-work';\n\nimport { AIButtonFormDemo } from '../../core/AIButton/AIButton.stories';\nimport viewGroups from '../Tasks/Tasks.mocks';\n\nexport default {\n title: 'Work/Assignments',\n component: Assignments\n} as Meta;\n\ninterface AssignmentsStoryProps {\n collapsed?: boolean;\n count?: AssignmentsProps['count'];\n openableTasks?: boolean;\n}\n\nexport const AssignmentsDemo: StoryFn<AssignmentsStoryProps> = (args: AssignmentsStoryProps) => {\n const [hasOpenTask, setHasOpenTask] = useState(false);\n const [open, setOpen] = useState(true);\n\n const activeView = helpers.getSelectedView(viewGroups);\n const activeViewTaskCount = args.count ?? activeView?.count ?? 0;\n\n const taskArray: TaskItemProps[] = Array.from(\n {\n length: args.count ?? activeViewTaskCount\n },\n (_, i) => {\n const dueIn = 86400000 * i;\n\n return {\n id: `${i}`,\n name: `Task ${i + 1}`,\n processName: i % 2 ? 'Demo process' : undefined,\n avatar: !hasOpenTask && <Avatar name='James Gregory' />,\n meta: !hasOpenTask && (\n <MetaList\n items={[\n <Text variant='secondary'>\n Due <DateTimeDisplay variant='relative' value={Date.now() + dueIn} />\n </Text>,\n <Link href='#demo'>Parent case link</Link>\n ]}\n />\n ),\n additionalActions: [\n {\n id: '1',\n text: 'Action 1'\n },\n {\n id: '2',\n text: 'Action 2'\n }\n ],\n onOpen:\n args.openableTasks !== false\n ? () => {\n setHasOpenTask(true);\n }\n : undefined,\n content: hasOpenTask ? (\n <AIButtonFormDemo\n onCancel={() => setHasOpenTask(false)}\n onSubmit={() => setHasOpenTask(false)}\n />\n ) : null\n };\n }\n );\n\n return (\n <Assignments\n count={activeViewTaskCount}\n items={taskArray}\n collapsed={args.collapsed !== false ? open : undefined}\n onToggleCollapsed={\n args.collapsed !== false\n ? () => {\n setOpen(cur => !cur);\n }\n : undefined\n }\n />\n );\n};\n\nAssignmentsDemo.args = {\n openableTasks: true,\n count: undefined,\n collapsed: true\n};\n\nAssignmentsDemo.argTypes = {\n count: { control: { type: 'number' } },\n openableTasks: { control: { type: 'boolean' } },\n collapsed: { control: { type: 'boolean' } }\n};\n"]}
1
+ {"version":3,"file":"Assignments.stories.js","sourceRoot":"","sources":["../../../src/work/Assignments/Assignments.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState } from 'react';\nimport type { Meta, StoryFn } from '@storybook/react';\n\nimport { MetaList, Text, Link, DateTimeDisplay, Avatar } from '@pega/cosmos-react-core';\nimport { Assignments, tasksHelpers as helpers } from '@pega/cosmos-react-work';\nimport type { AssignmentsProps, TaskItemProps } from '@pega/cosmos-react-work';\n\nimport { AIButtonFormDemo } from '../../core/AIButton/AIButton.stories';\nimport viewGroups from '../Tasks/Tasks.mocks';\n\nexport default {\n title: 'Work/Assignments',\n component: Assignments\n} as Meta;\n\ninterface AssignmentsStoryProps {\n collapsed?: boolean;\n count?: AssignmentsProps['count'];\n openableTasks?: boolean;\n}\n\nexport const AssignmentsDemo: StoryFn<AssignmentsStoryProps> = (args: AssignmentsStoryProps) => {\n const [hasOpenTask, setHasOpenTask] = useState(false);\n const [open, setOpen] = useState(true);\n\n const activeView = helpers.getSelectedView(viewGroups);\n const activeViewTaskCount = args.count ?? activeView?.count ?? 0;\n\n const taskArray: TaskItemProps[] = Array.from(\n {\n length: args.count ?? activeViewTaskCount\n },\n (_, i) => {\n const dueIn = 86400000 * i;\n\n return {\n id: `${i}`,\n name: `Task ${i + 1}`,\n processName: i % 2 ? 'Demo process' : undefined,\n avatar: <Avatar name='James Gregory' />,\n meta: (\n <MetaList\n items={[\n <Text variant='secondary'>\n Due <DateTimeDisplay variant='relative' value={Date.now() + dueIn} />\n </Text>,\n <Link href='#demo'>Parent case link</Link>\n ]}\n />\n ),\n additionalActions: [\n {\n id: '1',\n text: 'Action 1'\n },\n {\n id: '2',\n text: 'Action 2'\n }\n ],\n onOpen:\n args.openableTasks !== false\n ? () => {\n setHasOpenTask(true);\n }\n : undefined,\n content: hasOpenTask ? (\n <AIButtonFormDemo\n onCancel={() => setHasOpenTask(false)}\n onSubmit={() => setHasOpenTask(false)}\n />\n ) : null\n };\n }\n );\n\n return (\n <Assignments\n count={activeViewTaskCount}\n items={taskArray}\n collapsed={args.collapsed !== false ? open : undefined}\n onToggleCollapsed={\n args.collapsed !== false\n ? () => {\n setOpen(cur => !cur);\n }\n : undefined\n }\n />\n );\n};\n\nAssignmentsDemo.args = {\n openableTasks: true,\n count: undefined,\n collapsed: true\n};\n\nAssignmentsDemo.argTypes = {\n count: { control: { type: 'number' } },\n openableTasks: { control: { type: 'boolean' } },\n collapsed: { control: { type: 'boolean' } }\n};\n"]}
@@ -26,6 +26,7 @@ export interface CaseViewMockProps {
26
26
  promotedActions?: 0 | 1 | 2 | 3 | 4 | 5;
27
27
  headingLength?: 'short' | 'medium' | 'long';
28
28
  defaultExpanded?: boolean;
29
+ hideStakeholdersAddNew?: boolean;
29
30
  }
30
31
  interface PreviewSetters {
31
32
  setPreviewCaseId: Dispatch<SetStateAction<string | null>>;
@@ -90,12 +91,15 @@ interface UtilitySummaryItemsArgs {
90
91
  stakeholders?: CaseViewMockProps['stakeholders'];
91
92
  followers?: CaseViewMockProps['followers'];
92
93
  tags?: CaseViewMockProps['tags'];
94
+ hideStakeholdersAddNew?: boolean;
93
95
  setDialogTarget: (instance: HTMLElement | null) => void;
94
96
  setDialogContent: React.Dispatch<React.SetStateAction<ReactNode>>;
95
97
  setShowDialog: React.Dispatch<React.SetStateAction<boolean>>;
98
+ dialogTarget: HTMLElement | null;
99
+ showDialog: boolean;
96
100
  }
97
101
  export declare const Utilities: ({ predictions, attachments, stakeholders, followers, tags }: UtilitiesArgs) => JSX.Element;
98
- export declare const getUtilitiesSummaryItems: ({ predictions, attachments, stakeholders, followers, tags, setDialogTarget, setDialogContent, setShowDialog }: UtilitySummaryItemsArgs) => NonNullable<CaseViewProps['utilitiesSummaryItems']>;
102
+ export declare const getUtilitiesSummaryItems: ({ predictions, attachments, stakeholders, followers, tags, hideStakeholdersAddNew, setDialogTarget, setDialogContent, setShowDialog, dialogTarget, showDialog }: UtilitySummaryItemsArgs) => NonNullable<CaseViewProps['utilitiesSummaryItems']>;
99
103
  export declare const getCaseActions: () => {
100
104
  text: string;
101
105
  id: string;
@@ -107,6 +111,6 @@ export declare const getPromotedActions: (count: number) => {
107
111
  onClick: () => void;
108
112
  }[];
109
113
  export declare const PersistentUtilityContent: () => JSX.Element;
110
- export declare const CaseViewMock: ({ caseId: caseIdProp, heading, subheading, parentCases, promotedActions, summaryFields, tabs, stages, tasks, taskCount, utilitiesExpanded: utilitiesExpandedProp, predictions, attachments, stakeholders, followers, tags, persistentUtility, intelligentGuidance, banner, headingLength, defaultExpanded }: CaseViewMockProps) => JSX.Element;
114
+ export declare const CaseViewMock: ({ caseId: caseIdProp, heading, subheading, parentCases, promotedActions, summaryFields, tabs, stages, tasks, taskCount, utilitiesExpanded: utilitiesExpandedProp, predictions, attachments, stakeholders, followers, tags, persistentUtility, intelligentGuidance, banner, headingLength, defaultExpanded, hideStakeholdersAddNew }: CaseViewMockProps) => JSX.Element;
111
115
  export {};
112
116
  //# sourceMappingURL=CaseView.mocks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CaseView.mocks.d.ts","sourceRoot":"","sources":["../../../src/work/CaseView/CaseView.mocks.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CaseView.mocks.d.ts","sourceRoot":"","sources":["../../../src/work/CaseView/CaseView.mocks.tsx"],"names":[],"mappings":"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"}
@@ -328,16 +328,22 @@ export const getParentCases = ({ setPreviewCaseId, setPreviewCurrentTabId }) =>
328
328
  export const Utilities = ({ predictions, attachments, stakeholders, followers, tags }) => {
329
329
  return (_jsxs(_Fragment, { children: [predictions && _jsx(PredictionsDemo, {}), attachments && _jsx(AttachmentsMock, {}), stakeholders && _jsx(StakeHoldersDemo, {}), followers && _jsx(MockSummaryList, { icon: 'user-star', name: 'Followers' }), tags && _jsx(TagsDemo, {})] }));
330
330
  };
331
- export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholders, followers, tags, setDialogTarget, setDialogContent, setShowDialog }) => {
331
+ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholders, followers, tags, hideStakeholdersAddNew, setDialogTarget, setDialogContent, setShowDialog, dialogTarget, showDialog }) => {
332
332
  const items = [];
333
333
  if (predictions)
334
334
  items.push({
335
335
  iconName: 'polaris',
336
336
  name: 'Predictions',
337
337
  onClick: e => {
338
- setDialogTarget(e.currentTarget);
339
- setDialogContent(_jsx(PredictionsDemo, {}));
340
- setShowDialog(true);
338
+ if (dialogTarget !== e.currentTarget || !showDialog) {
339
+ setDialogTarget(e.currentTarget);
340
+ setDialogContent(_jsx(PredictionsDemo, {}));
341
+ setShowDialog(true);
342
+ }
343
+ else {
344
+ setDialogTarget(null);
345
+ setShowDialog(false);
346
+ }
341
347
  }
342
348
  });
343
349
  if (attachments)
@@ -346,9 +352,15 @@ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholder
346
352
  count: 4,
347
353
  name: 'Attachments',
348
354
  onClick: e => {
349
- setDialogTarget(e.currentTarget);
350
- setDialogContent(_jsx(AttachmentsMock, {}));
351
- setShowDialog(true);
355
+ if (dialogTarget !== e.currentTarget || !showDialog) {
356
+ setDialogTarget(e.currentTarget);
357
+ setDialogContent(_jsx(AttachmentsMock, {}));
358
+ setShowDialog(true);
359
+ }
360
+ else {
361
+ setDialogTarget(null);
362
+ setShowDialog(false);
363
+ }
352
364
  }
353
365
  });
354
366
  if (stakeholders)
@@ -357,9 +369,15 @@ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholder
357
369
  count: 10,
358
370
  name: 'Stakeholders',
359
371
  onClick: e => {
360
- setDialogTarget(e.currentTarget);
361
- setDialogContent(_jsx(StakeHoldersDemo, {}));
362
- setShowDialog(true);
372
+ if (dialogTarget !== e.currentTarget || !showDialog) {
373
+ setDialogTarget(e.currentTarget);
374
+ setDialogContent(_jsx(StakeHoldersDemo, { hideAddNew: hideStakeholdersAddNew }));
375
+ setShowDialog(true);
376
+ }
377
+ else {
378
+ setDialogTarget(null);
379
+ setShowDialog(false);
380
+ }
363
381
  }
364
382
  });
365
383
  if (followers)
@@ -368,9 +386,15 @@ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholder
368
386
  count: 5,
369
387
  name: 'Followers',
370
388
  onClick: e => {
371
- setDialogTarget(e.currentTarget);
372
- setDialogContent(_jsx(MockSummaryList, { icon: 'user-star', name: 'Followers' }));
373
- setShowDialog(true);
389
+ if (dialogTarget !== e.currentTarget || !showDialog) {
390
+ setDialogTarget(e.currentTarget);
391
+ setDialogContent(_jsx(MockSummaryList, { icon: 'user-star', name: 'Followers' }));
392
+ setShowDialog(true);
393
+ }
394
+ else {
395
+ setDialogTarget(null);
396
+ setShowDialog(false);
397
+ }
374
398
  }
375
399
  });
376
400
  if (tags)
@@ -379,9 +403,15 @@ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholder
379
403
  count: 10,
380
404
  name: 'Tags',
381
405
  onClick: e => {
382
- setDialogTarget(e.currentTarget);
383
- setDialogContent(_jsx(TagsDemo, {}));
384
- setShowDialog(true);
406
+ if (dialogTarget !== e.currentTarget || !showDialog) {
407
+ setDialogTarget(e.currentTarget);
408
+ setDialogContent(_jsx(TagsDemo, {}));
409
+ setShowDialog(true);
410
+ }
411
+ else {
412
+ setDialogTarget(null);
413
+ setShowDialog(false);
414
+ }
385
415
  }
386
416
  });
387
417
  return items;
@@ -440,7 +470,7 @@ const StyledPersistentUtilityContent = styled.div(({ theme }) => {
440
470
  export const PersistentUtilityContent = () => {
441
471
  return (_jsx(Flex, { container: { justify: 'center', alignItems: 'center' }, as: StyledPersistentUtilityContent, children: "Persistent utility content" }));
442
472
  };
443
- export const CaseViewMock = ({ caseId: caseIdProp, heading, subheading, parentCases = false, promotedActions = 1, summaryFields = 'All', tabs, stages = true, tasks = true, taskCount = 4, utilitiesExpanded: utilitiesExpandedProp = true, predictions = true, attachments = true, stakeholders = true, followers = true, tags = true, persistentUtility = false, intelligentGuidance = false, banner = false, headingLength, defaultExpanded }) => {
473
+ export const CaseViewMock = ({ caseId: caseIdProp, heading, subheading, parentCases = false, promotedActions = 1, summaryFields = 'All', tabs, stages = true, tasks = true, taskCount = 4, utilitiesExpanded: utilitiesExpandedProp = true, predictions = true, attachments = true, stakeholders = true, followers = true, tags = true, persistentUtility = false, intelligentGuidance = false, banner = false, headingLength, defaultExpanded, hideStakeholdersAddNew }) => {
444
474
  const [previewCaseId, setPreviewCaseId] = useState(null);
445
475
  const [previewCurrentTabId, setPreviewCurrentTabId] = useState(baseCaseTabs[0].id);
446
476
  const isMediumOrAbove = useBreakpoint('md');
@@ -471,16 +501,16 @@ export const CaseViewMock = ({ caseId: caseIdProp, heading, subheading, parentCa
471
501
  setPreviewCaseId,
472
502
  setPreviewCurrentTabId
473
503
  });
474
- return (_jsxs(_Fragment, { children: [previewCaseId && (_jsx(CasePreview, { open: true, onAfterClose: () => {
504
+ return (_jsxs(_Fragment, { children: [_jsx(CasePreview, { open: !!previewCaseId, onAfterClose: () => {
475
505
  setPreviewCaseId(null);
476
- }, caseId: previewCaseId, parentCases: Math.random() > 0.5
506
+ }, caseId: previewCaseId || '', parentCases: Math.random() > 0.5
477
507
  ? [...parentCasesContent]
478
508
  .filter(c => c.id !== previewCaseId)
479
509
  .map(c => ({ ...c, id: `preview-${c.id}` }))
480
- : undefined, heading: 'Previewable demo case', subheading: previewCaseId, caseLink: { href: `/cases/${previewCaseId}`, target: '_blank' }, icon: 'user-solid', followed: !followed, onEdit: () => { }, actions: getCaseActions(), promotedActions: getPromotedActions(2), summaryFields: {
510
+ : undefined, heading: 'Previewable demo case', subheading: previewCaseId || '', caseLink: { href: `/cases/${previewCaseId}`, target: '_blank' }, icon: 'user-solid', followed: !followed, onEdit: () => { }, actions: getCaseActions(), promotedActions: getPromotedActions(2), summaryFields: {
481
511
  primary: casePreviewPrimaryFields,
482
512
  secondary: casePreviewSecondaryFields
483
- }, stages: demoStages, tasks: _jsx(AssignmentsDemo, { count: 4 }), tabs: previewTabs, tabContent: tabContent, utilities: _jsx(Grid, { container: { rowGap: 2 }, children: _jsx(Utilities, { predictions: predictions, attachments: attachments, stakeholders: stakeholders, followers: followers, tags: tags }) }) })), dialogTarget && showDialog && (_jsx(UtilitySummaryItemDialog, { target: dialogTarget, onDismiss: () => {
513
+ }, stages: demoStages, tasks: _jsx(AssignmentsDemo, { count: 4 }), tabs: previewTabs, tabContent: tabContent, utilities: _jsx(Grid, { container: { rowGap: 2 }, children: _jsx(Utilities, { predictions: predictions, attachments: attachments, stakeholders: stakeholders, followers: followers, tags: tags }) }) }), dialogTarget && showDialog && (_jsx(UtilitySummaryItemDialog, { target: dialogTarget, onDismiss: () => {
484
514
  setShowDialog(false);
485
515
  }, children: dialogContent })), _jsx(CaseView, { caseId: caseIdProp, parentCases: parentCases
486
516
  ? getParentCases({
@@ -515,9 +545,12 @@ export const CaseViewMock = ({ caseId: caseIdProp, heading, subheading, parentCa
515
545
  stakeholders,
516
546
  followers,
517
547
  tags,
548
+ hideStakeholdersAddNew,
518
549
  setDialogTarget,
519
550
  setDialogContent,
520
- setShowDialog
551
+ setShowDialog,
552
+ dialogTarget,
553
+ showDialog
521
554
  }), utilitiesExpanded: utilitiesExpanded, onToggleUtilities: () => {
522
555
  setUtilitiesExpanded(cur => !cur);
523
556
  }, intelligentGuidance: intelligentGuidance, banners: banner ? (_jsx(Banner, { variant: 'urgent', messages: [