@pega/cosmos-react-work 5.0.0-dev.4.7 → 5.0.0-dev.4.9

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 (329) hide show
  1. package/package.json +2 -2
  2. package/lib/components/AppAnnouncement/AppAnnouncement.d.ts +0 -23
  3. package/lib/components/AppAnnouncement/AppAnnouncement.d.ts.map +0 -1
  4. package/lib/components/AppAnnouncement/AppAnnouncement.js +0 -93
  5. package/lib/components/AppAnnouncement/AppAnnouncement.js.map +0 -1
  6. package/lib/components/AppAnnouncement/index.d.ts +0 -3
  7. package/lib/components/AppAnnouncement/index.d.ts.map +0 -1
  8. package/lib/components/AppAnnouncement/index.js +0 -2
  9. package/lib/components/AppAnnouncement/index.js.map +0 -1
  10. package/lib/components/Article/Article.d.ts +0 -49
  11. package/lib/components/Article/Article.d.ts.map +0 -1
  12. package/lib/components/Article/Article.js +0 -73
  13. package/lib/components/Article/Article.js.map +0 -1
  14. package/lib/components/Article/ArticleFooter.d.ts +0 -40
  15. package/lib/components/Article/ArticleFooter.d.ts.map +0 -1
  16. package/lib/components/Article/ArticleFooter.js +0 -54
  17. package/lib/components/Article/ArticleFooter.js.map +0 -1
  18. package/lib/components/Article/ArticleMeta.d.ts +0 -13
  19. package/lib/components/Article/ArticleMeta.d.ts.map +0 -1
  20. package/lib/components/Article/ArticleMeta.js +0 -24
  21. package/lib/components/Article/ArticleMeta.js.map +0 -1
  22. package/lib/components/Article/index.d.ts +0 -5
  23. package/lib/components/Article/index.d.ts.map +0 -1
  24. package/lib/components/Article/index.js +0 -3
  25. package/lib/components/Article/index.js.map +0 -1
  26. package/lib/components/ArticleList/ArticleList.d.ts +0 -6
  27. package/lib/components/ArticleList/ArticleList.d.ts.map +0 -1
  28. package/lib/components/ArticleList/ArticleList.js +0 -132
  29. package/lib/components/ArticleList/ArticleList.js.map +0 -1
  30. package/lib/components/ArticleList/ArticleList.types.d.ts +0 -87
  31. package/lib/components/ArticleList/ArticleList.types.d.ts.map +0 -1
  32. package/lib/components/ArticleList/ArticleList.types.js +0 -2
  33. package/lib/components/ArticleList/ArticleList.types.js.map +0 -1
  34. package/lib/components/ArticleList/ArticleListFilter.d.ts +0 -6
  35. package/lib/components/ArticleList/ArticleListFilter.d.ts.map +0 -1
  36. package/lib/components/ArticleList/ArticleListFilter.js +0 -61
  37. package/lib/components/ArticleList/ArticleListFilter.js.map +0 -1
  38. package/lib/components/ArticleList/ArticleListHeader.d.ts +0 -5
  39. package/lib/components/ArticleList/ArticleListHeader.d.ts.map +0 -1
  40. package/lib/components/ArticleList/ArticleListHeader.js +0 -20
  41. package/lib/components/ArticleList/ArticleListHeader.js.map +0 -1
  42. package/lib/components/ArticleList/ArticleSummary.d.ts +0 -7
  43. package/lib/components/ArticleList/ArticleSummary.d.ts.map +0 -1
  44. package/lib/components/ArticleList/ArticleSummary.js +0 -56
  45. package/lib/components/ArticleList/ArticleSummary.js.map +0 -1
  46. package/lib/components/ArticleList/index.d.ts +0 -6
  47. package/lib/components/ArticleList/index.d.ts.map +0 -1
  48. package/lib/components/ArticleList/index.js +0 -4
  49. package/lib/components/ArticleList/index.js.map +0 -1
  50. package/lib/components/Assignments/Assignments.d.ts +0 -21
  51. package/lib/components/Assignments/Assignments.d.ts.map +0 -1
  52. package/lib/components/Assignments/Assignments.js +0 -20
  53. package/lib/components/Assignments/Assignments.js.map +0 -1
  54. package/lib/components/Assignments/Assignments.styles.d.ts +0 -8
  55. package/lib/components/Assignments/Assignments.styles.d.ts.map +0 -1
  56. package/lib/components/Assignments/Assignments.styles.js +0 -41
  57. package/lib/components/Assignments/Assignments.styles.js.map +0 -1
  58. package/lib/components/Assignments/index.d.ts +0 -2
  59. package/lib/components/Assignments/index.d.ts.map +0 -1
  60. package/lib/components/Assignments/index.js +0 -2
  61. package/lib/components/Assignments/index.js.map +0 -1
  62. package/lib/components/CasePreview/CasePreview.d.ts +0 -27
  63. package/lib/components/CasePreview/CasePreview.d.ts.map +0 -1
  64. package/lib/components/CasePreview/CasePreview.js +0 -82
  65. package/lib/components/CasePreview/CasePreview.js.map +0 -1
  66. package/lib/components/CasePreview/CasePreview.test-ids.d.ts +0 -2
  67. package/lib/components/CasePreview/CasePreview.test-ids.d.ts.map +0 -1
  68. package/lib/components/CasePreview/CasePreview.test-ids.js +0 -3
  69. package/lib/components/CasePreview/CasePreview.test-ids.js.map +0 -1
  70. package/lib/components/CasePreview/index.d.ts +0 -3
  71. package/lib/components/CasePreview/index.d.ts.map +0 -1
  72. package/lib/components/CasePreview/index.js +0 -2
  73. package/lib/components/CasePreview/index.js.map +0 -1
  74. package/lib/components/CaseView/CaseHeader/CaseHeader.d.ts +0 -4
  75. package/lib/components/CaseView/CaseHeader/CaseHeader.d.ts.map +0 -1
  76. package/lib/components/CaseView/CaseHeader/CaseHeader.js +0 -127
  77. package/lib/components/CaseView/CaseHeader/CaseHeader.js.map +0 -1
  78. package/lib/components/CaseView/CaseHeader/Summary.d.ts +0 -6
  79. package/lib/components/CaseView/CaseHeader/Summary.d.ts.map +0 -1
  80. package/lib/components/CaseView/CaseHeader/Summary.js +0 -182
  81. package/lib/components/CaseView/CaseHeader/Summary.js.map +0 -1
  82. package/lib/components/CaseView/CaseSummary.d.ts +0 -4
  83. package/lib/components/CaseView/CaseSummary.d.ts.map +0 -1
  84. package/lib/components/CaseView/CaseSummary.js +0 -18
  85. package/lib/components/CaseView/CaseSummary.js.map +0 -1
  86. package/lib/components/CaseView/CaseSummaryFields.d.ts +0 -6
  87. package/lib/components/CaseView/CaseSummaryFields.d.ts.map +0 -1
  88. package/lib/components/CaseView/CaseSummaryFields.js +0 -18
  89. package/lib/components/CaseView/CaseSummaryFields.js.map +0 -1
  90. package/lib/components/CaseView/CaseView.context.d.ts +0 -5
  91. package/lib/components/CaseView/CaseView.context.d.ts.map +0 -1
  92. package/lib/components/CaseView/CaseView.context.js +0 -5
  93. package/lib/components/CaseView/CaseView.context.js.map +0 -1
  94. package/lib/components/CaseView/CaseView.d.ts +0 -8
  95. package/lib/components/CaseView/CaseView.d.ts.map +0 -1
  96. package/lib/components/CaseView/CaseView.js +0 -421
  97. package/lib/components/CaseView/CaseView.js.map +0 -1
  98. package/lib/components/CaseView/CaseView.styles.d.ts +0 -45
  99. package/lib/components/CaseView/CaseView.styles.d.ts.map +0 -1
  100. package/lib/components/CaseView/CaseView.styles.js +0 -559
  101. package/lib/components/CaseView/CaseView.styles.js.map +0 -1
  102. package/lib/components/CaseView/CaseView.test-ids.d.ts +0 -2
  103. package/lib/components/CaseView/CaseView.test-ids.d.ts.map +0 -1
  104. package/lib/components/CaseView/CaseView.test-ids.js +0 -18
  105. package/lib/components/CaseView/CaseView.test-ids.js.map +0 -1
  106. package/lib/components/CaseView/CaseView.types.d.ts +0 -98
  107. package/lib/components/CaseView/CaseView.types.d.ts.map +0 -1
  108. package/lib/components/CaseView/CaseView.types.js +0 -2
  109. package/lib/components/CaseView/CaseView.types.js.map +0 -1
  110. package/lib/components/CaseView/UtilitiesSummary.d.ts +0 -9
  111. package/lib/components/CaseView/UtilitiesSummary.d.ts.map +0 -1
  112. package/lib/components/CaseView/UtilitiesSummary.js +0 -53
  113. package/lib/components/CaseView/UtilitiesSummary.js.map +0 -1
  114. package/lib/components/CaseView/UtilitySummaryItemDialog.d.ts +0 -9
  115. package/lib/components/CaseView/UtilitySummaryItemDialog.d.ts.map +0 -1
  116. package/lib/components/CaseView/UtilitySummaryItemDialog.js +0 -29
  117. package/lib/components/CaseView/UtilitySummaryItemDialog.js.map +0 -1
  118. package/lib/components/CaseView/index.d.ts +0 -5
  119. package/lib/components/CaseView/index.d.ts.map +0 -1
  120. package/lib/components/CaseView/index.js +0 -4
  121. package/lib/components/CaseView/index.js.map +0 -1
  122. package/lib/components/ConfigurableLayout/ConfigurableLayout.d.ts +0 -4
  123. package/lib/components/ConfigurableLayout/ConfigurableLayout.d.ts.map +0 -1
  124. package/lib/components/ConfigurableLayout/ConfigurableLayout.js +0 -86
  125. package/lib/components/ConfigurableLayout/ConfigurableLayout.js.map +0 -1
  126. package/lib/components/ConfigurableLayout/ConfigurableLayout.types.d.ts +0 -41
  127. package/lib/components/ConfigurableLayout/ConfigurableLayout.types.d.ts.map +0 -1
  128. package/lib/components/ConfigurableLayout/ConfigurableLayout.types.js +0 -2
  129. package/lib/components/ConfigurableLayout/ConfigurableLayout.types.js.map +0 -1
  130. package/lib/components/ConfigurableLayout/LayoutCell.d.ts +0 -6
  131. package/lib/components/ConfigurableLayout/LayoutCell.d.ts.map +0 -1
  132. package/lib/components/ConfigurableLayout/LayoutCell.js +0 -64
  133. package/lib/components/ConfigurableLayout/LayoutCell.js.map +0 -1
  134. package/lib/components/ConfigurableLayout/defaults.d.ts +0 -4
  135. package/lib/components/ConfigurableLayout/defaults.d.ts.map +0 -1
  136. package/lib/components/ConfigurableLayout/defaults.js +0 -4
  137. package/lib/components/ConfigurableLayout/defaults.js.map +0 -1
  138. package/lib/components/ConfigurableLayout/index.d.ts +0 -4
  139. package/lib/components/ConfigurableLayout/index.d.ts.map +0 -1
  140. package/lib/components/ConfigurableLayout/index.js +0 -3
  141. package/lib/components/ConfigurableLayout/index.js.map +0 -1
  142. package/lib/components/ConfigurableLayout/options.d.ts +0 -10
  143. package/lib/components/ConfigurableLayout/options.d.ts.map +0 -1
  144. package/lib/components/ConfigurableLayout/options.js +0 -10
  145. package/lib/components/ConfigurableLayout/options.js.map +0 -1
  146. package/lib/components/ConfigurableLayout/useTrackWrappedRegions.d.ts +0 -7
  147. package/lib/components/ConfigurableLayout/useTrackWrappedRegions.d.ts.map +0 -1
  148. package/lib/components/ConfigurableLayout/useTrackWrappedRegions.js +0 -37
  149. package/lib/components/ConfigurableLayout/useTrackWrappedRegions.js.map +0 -1
  150. package/lib/components/Confirmation/Confirmation.d.ts +0 -19
  151. package/lib/components/Confirmation/Confirmation.d.ts.map +0 -1
  152. package/lib/components/Confirmation/Confirmation.js +0 -29
  153. package/lib/components/Confirmation/Confirmation.js.map +0 -1
  154. package/lib/components/Confirmation/index.d.ts +0 -3
  155. package/lib/components/Confirmation/index.d.ts.map +0 -1
  156. package/lib/components/Confirmation/index.js +0 -2
  157. package/lib/components/Confirmation/index.js.map +0 -1
  158. package/lib/components/Details/Details.d.ts +0 -38
  159. package/lib/components/Details/Details.d.ts.map +0 -1
  160. package/lib/components/Details/Details.js +0 -92
  161. package/lib/components/Details/Details.js.map +0 -1
  162. package/lib/components/Details/Details.styles.d.ts +0 -50
  163. package/lib/components/Details/Details.styles.d.ts.map +0 -1
  164. package/lib/components/Details/Details.styles.js +0 -204
  165. package/lib/components/Details/Details.styles.js.map +0 -1
  166. package/lib/components/Details/Details.test-ids.d.ts +0 -2
  167. package/lib/components/Details/Details.test-ids.d.ts.map +0 -1
  168. package/lib/components/Details/Details.test-ids.js +0 -9
  169. package/lib/components/Details/Details.test-ids.js.map +0 -1
  170. package/lib/components/Details/DetailsContext.d.ts +0 -9
  171. package/lib/components/Details/DetailsContext.d.ts.map +0 -1
  172. package/lib/components/Details/DetailsContext.js +0 -9
  173. package/lib/components/Details/DetailsContext.js.map +0 -1
  174. package/lib/components/Details/index.d.ts +0 -4
  175. package/lib/components/Details/index.d.ts.map +0 -1
  176. package/lib/components/Details/index.js +0 -4
  177. package/lib/components/Details/index.js.map +0 -1
  178. package/lib/components/Glimpse/Glimpse.d.ts +0 -20
  179. package/lib/components/Glimpse/Glimpse.d.ts.map +0 -1
  180. package/lib/components/Glimpse/Glimpse.js +0 -12
  181. package/lib/components/Glimpse/Glimpse.js.map +0 -1
  182. package/lib/components/Glimpse/index.d.ts +0 -3
  183. package/lib/components/Glimpse/index.d.ts.map +0 -1
  184. package/lib/components/Glimpse/index.js +0 -2
  185. package/lib/components/Glimpse/index.js.map +0 -1
  186. package/lib/components/IntelligentGuidance/IntelligentGuidance.d.ts +0 -6
  187. package/lib/components/IntelligentGuidance/IntelligentGuidance.d.ts.map +0 -1
  188. package/lib/components/IntelligentGuidance/IntelligentGuidance.js +0 -83
  189. package/lib/components/IntelligentGuidance/IntelligentGuidance.js.map +0 -1
  190. package/lib/components/IntelligentGuidance/IntelligentGuidance.styles.d.ts +0 -9
  191. package/lib/components/IntelligentGuidance/IntelligentGuidance.styles.d.ts.map +0 -1
  192. package/lib/components/IntelligentGuidance/IntelligentGuidance.styles.js +0 -199
  193. package/lib/components/IntelligentGuidance/IntelligentGuidance.styles.js.map +0 -1
  194. package/lib/components/IntelligentGuidance/IntelligentGuidance.types.d.ts +0 -35
  195. package/lib/components/IntelligentGuidance/IntelligentGuidance.types.d.ts.map +0 -1
  196. package/lib/components/IntelligentGuidance/IntelligentGuidance.types.js +0 -2
  197. package/lib/components/IntelligentGuidance/IntelligentGuidance.types.js.map +0 -1
  198. package/lib/components/IntelligentGuidance/index.d.ts +0 -3
  199. package/lib/components/IntelligentGuidance/index.d.ts.map +0 -1
  200. package/lib/components/IntelligentGuidance/index.js +0 -2
  201. package/lib/components/IntelligentGuidance/index.js.map +0 -1
  202. package/lib/components/Predictions/Predictions.d.ts +0 -6
  203. package/lib/components/Predictions/Predictions.d.ts.map +0 -1
  204. package/lib/components/Predictions/Predictions.js +0 -68
  205. package/lib/components/Predictions/Predictions.js.map +0 -1
  206. package/lib/components/Predictions/Predictions.types.d.ts +0 -23
  207. package/lib/components/Predictions/Predictions.types.d.ts.map +0 -1
  208. package/lib/components/Predictions/Predictions.types.js +0 -2
  209. package/lib/components/Predictions/Predictions.types.js.map +0 -1
  210. package/lib/components/Predictions/index.d.ts +0 -3
  211. package/lib/components/Predictions/index.d.ts.map +0 -1
  212. package/lib/components/Predictions/index.js +0 -2
  213. package/lib/components/Predictions/index.js.map +0 -1
  214. package/lib/components/SearchResults/Filter.d.ts +0 -8
  215. package/lib/components/SearchResults/Filter.d.ts.map +0 -1
  216. package/lib/components/SearchResults/Filter.js +0 -45
  217. package/lib/components/SearchResults/Filter.js.map +0 -1
  218. package/lib/components/SearchResults/SearchResult.d.ts +0 -4
  219. package/lib/components/SearchResults/SearchResult.d.ts.map +0 -1
  220. package/lib/components/SearchResults/SearchResult.js +0 -27
  221. package/lib/components/SearchResults/SearchResult.js.map +0 -1
  222. package/lib/components/SearchResults/SearchResults.d.ts +0 -6
  223. package/lib/components/SearchResults/SearchResults.d.ts.map +0 -1
  224. package/lib/components/SearchResults/SearchResults.js +0 -121
  225. package/lib/components/SearchResults/SearchResults.js.map +0 -1
  226. package/lib/components/SearchResults/SearchResults.styles.d.ts +0 -11
  227. package/lib/components/SearchResults/SearchResults.styles.d.ts.map +0 -1
  228. package/lib/components/SearchResults/SearchResults.styles.js +0 -88
  229. package/lib/components/SearchResults/SearchResults.styles.js.map +0 -1
  230. package/lib/components/SearchResults/SearchResults.types.d.ts +0 -100
  231. package/lib/components/SearchResults/SearchResults.types.d.ts.map +0 -1
  232. package/lib/components/SearchResults/SearchResults.types.js +0 -2
  233. package/lib/components/SearchResults/SearchResults.types.js.map +0 -1
  234. package/lib/components/SearchResults/index.d.ts +0 -3
  235. package/lib/components/SearchResults/index.d.ts.map +0 -1
  236. package/lib/components/SearchResults/index.js +0 -2
  237. package/lib/components/SearchResults/index.js.map +0 -1
  238. package/lib/components/Stages/StageGlimpse.d.ts +0 -8
  239. package/lib/components/Stages/StageGlimpse.d.ts.map +0 -1
  240. package/lib/components/Stages/StageGlimpse.js +0 -11
  241. package/lib/components/Stages/StageGlimpse.js.map +0 -1
  242. package/lib/components/Stages/Stages.d.ts +0 -6
  243. package/lib/components/Stages/Stages.d.ts.map +0 -1
  244. package/lib/components/Stages/Stages.js +0 -107
  245. package/lib/components/Stages/Stages.js.map +0 -1
  246. package/lib/components/Stages/Stages.styles.d.ts +0 -14
  247. package/lib/components/Stages/Stages.styles.d.ts.map +0 -1
  248. package/lib/components/Stages/Stages.styles.js +0 -270
  249. package/lib/components/Stages/Stages.styles.js.map +0 -1
  250. package/lib/components/Stages/Stages.types.d.ts +0 -38
  251. package/lib/components/Stages/Stages.types.d.ts.map +0 -1
  252. package/lib/components/Stages/Stages.types.js +0 -2
  253. package/lib/components/Stages/Stages.types.js.map +0 -1
  254. package/lib/components/Stages/index.d.ts +0 -3
  255. package/lib/components/Stages/index.d.ts.map +0 -1
  256. package/lib/components/Stages/index.js +0 -2
  257. package/lib/components/Stages/index.js.map +0 -1
  258. package/lib/components/Stakeholders/StakeholderForm.d.ts +0 -7
  259. package/lib/components/Stakeholders/StakeholderForm.d.ts.map +0 -1
  260. package/lib/components/Stakeholders/StakeholderForm.js +0 -49
  261. package/lib/components/Stakeholders/StakeholderForm.js.map +0 -1
  262. package/lib/components/Stakeholders/Stakeholders.d.ts +0 -6
  263. package/lib/components/Stakeholders/Stakeholders.d.ts.map +0 -1
  264. package/lib/components/Stakeholders/Stakeholders.js +0 -220
  265. package/lib/components/Stakeholders/Stakeholders.js.map +0 -1
  266. package/lib/components/Stakeholders/Stakeholders.types.d.ts +0 -75
  267. package/lib/components/Stakeholders/Stakeholders.types.d.ts.map +0 -1
  268. package/lib/components/Stakeholders/Stakeholders.types.js +0 -2
  269. package/lib/components/Stakeholders/Stakeholders.types.js.map +0 -1
  270. package/lib/components/Stakeholders/index.d.ts +0 -3
  271. package/lib/components/Stakeholders/index.d.ts.map +0 -1
  272. package/lib/components/Stakeholders/index.js +0 -2
  273. package/lib/components/Stakeholders/index.js.map +0 -1
  274. package/lib/components/Tags/Tags.d.ts +0 -34
  275. package/lib/components/Tags/Tags.d.ts.map +0 -1
  276. package/lib/components/Tags/Tags.js +0 -230
  277. package/lib/components/Tags/Tags.js.map +0 -1
  278. package/lib/components/Tags/index.d.ts +0 -3
  279. package/lib/components/Tags/index.d.ts.map +0 -1
  280. package/lib/components/Tags/index.js +0 -2
  281. package/lib/components/Tags/index.js.map +0 -1
  282. package/lib/components/Tasks/TaskList.d.ts +0 -39
  283. package/lib/components/Tasks/TaskList.d.ts.map +0 -1
  284. package/lib/components/Tasks/TaskList.js +0 -71
  285. package/lib/components/Tasks/TaskList.js.map +0 -1
  286. package/lib/components/Tasks/Tasks.d.ts +0 -29
  287. package/lib/components/Tasks/Tasks.d.ts.map +0 -1
  288. package/lib/components/Tasks/Tasks.js +0 -52
  289. package/lib/components/Tasks/Tasks.js.map +0 -1
  290. package/lib/components/Tasks/Tasks.test-ids.d.ts +0 -4
  291. package/lib/components/Tasks/Tasks.test-ids.d.ts.map +0 -1
  292. package/lib/components/Tasks/Tasks.test-ids.js +0 -5
  293. package/lib/components/Tasks/Tasks.test-ids.js.map +0 -1
  294. package/lib/components/Tasks/index.d.ts +0 -4
  295. package/lib/components/Tasks/index.d.ts.map +0 -1
  296. package/lib/components/Tasks/index.js +0 -4
  297. package/lib/components/Tasks/index.js.map +0 -1
  298. package/lib/components/Timeline/Timeline.d.ts +0 -6
  299. package/lib/components/Timeline/Timeline.d.ts.map +0 -1
  300. package/lib/components/Timeline/Timeline.js +0 -26
  301. package/lib/components/Timeline/Timeline.js.map +0 -1
  302. package/lib/components/Timeline/Timeline.styles.d.ts +0 -21
  303. package/lib/components/Timeline/Timeline.styles.d.ts.map +0 -1
  304. package/lib/components/Timeline/Timeline.styles.js +0 -165
  305. package/lib/components/Timeline/Timeline.styles.js.map +0 -1
  306. package/lib/components/Timeline/Timeline.types.d.ts +0 -66
  307. package/lib/components/Timeline/Timeline.types.d.ts.map +0 -1
  308. package/lib/components/Timeline/Timeline.types.js +0 -2
  309. package/lib/components/Timeline/Timeline.types.js.map +0 -1
  310. package/lib/components/Timeline/TimelineItem.d.ts +0 -13
  311. package/lib/components/Timeline/TimelineItem.d.ts.map +0 -1
  312. package/lib/components/Timeline/TimelineItem.js +0 -33
  313. package/lib/components/Timeline/TimelineItem.js.map +0 -1
  314. package/lib/components/Timeline/TimelineToolbar.d.ts +0 -6
  315. package/lib/components/Timeline/TimelineToolbar.d.ts.map +0 -1
  316. package/lib/components/Timeline/TimelineToolbar.js +0 -68
  317. package/lib/components/Timeline/TimelineToolbar.js.map +0 -1
  318. package/lib/components/Timeline/index.d.ts +0 -4
  319. package/lib/components/Timeline/index.d.ts.map +0 -1
  320. package/lib/components/Timeline/index.js +0 -3
  321. package/lib/components/Timeline/index.js.map +0 -1
  322. package/lib/components/Timeline/utils.d.ts +0 -15
  323. package/lib/components/Timeline/utils.d.ts.map +0 -1
  324. package/lib/components/Timeline/utils.js +0 -75
  325. package/lib/components/Timeline/utils.js.map +0 -1
  326. package/lib/index.d.ts +0 -37
  327. package/lib/index.d.ts.map +0 -1
  328. package/lib/index.js +0 -38
  329. package/lib/index.js.map +0 -1
@@ -1,132 +0,0 @@
1
- import { createElement as _createElement } from "react";
2
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
- import { forwardRef, useMemo, useEffect, useRef, createRef } from 'react';
4
- import styled, { css } from 'styled-components';
5
- import { Flex, useI18n, defaultThemeProp, TabPanel, Tabs, EmptyState, Progress, getFocusables, useLiveLog, useItemIntersection } from '@pega/cosmos-react-core';
6
- import ArticleListFilter from './ArticleListFilter';
7
- import ArticleSummary from './ArticleSummary';
8
- import ArticleListHeader from './ArticleListHeader';
9
- const StyledSummaryList = styled.ul(({ theme }) => {
10
- return css `
11
- max-height: calc(100vh - 8 * ${theme.base.spacing});
12
- flex-grow: 1;
13
- height: 100%;
14
- list-style-type: none;
15
- overflow-y: auto;
16
- border-end-start-radius: ${theme.base['border-radius']};
17
- border-end-end-radius: ${theme.base['border-radius']};
18
- `;
19
- });
20
- StyledSummaryList.defaultProps = defaultThemeProp;
21
- const StyledArticleTabPanel = styled.div(({ theme }) => {
22
- return css `
23
- display: flex;
24
- flex-direction: column;
25
- min-height: 0;
26
- flex: 1 1;
27
- gap: ${theme.base.spacing};
28
- `;
29
- });
30
- StyledArticleTabPanel.defaultProps = defaultThemeProp;
31
- const StyledArticleList = styled.article(({ theme }) => {
32
- return css `
33
- height: 100%;
34
- padding-block: 0;
35
- background: ${theme.base.palette['primary-background']};
36
- border-radius: ${theme.components.card['border-radius']};
37
- `;
38
- });
39
- StyledArticleList.defaultProps = defaultThemeProp;
40
- const ArticleList = forwardRef(function ArticleList(props, ref) {
41
- const { header, suggested, followed, search, onTabClick, activeTab, loading = false, loadingMore = false, onQuickFilterClick, onLoadMore, ...restProps } = props;
42
- const t = useI18n();
43
- const { announcePolite } = useLiveLog();
44
- const articleContentRefs = useRef([]);
45
- const activeTabContentRef = useRef(null);
46
- const tabsRef = useRef(null);
47
- const activeElementRef = useRef(null);
48
- const tabs = useMemo(() => {
49
- const tabsArr = [];
50
- if (suggested)
51
- tabsArr.push({
52
- id: 'Suggested',
53
- name: t('suggested'),
54
- count: suggested?.count,
55
- content: suggested.articles ?? []
56
- });
57
- if (search)
58
- tabsArr.push({
59
- id: 'Search',
60
- name: t('search'),
61
- count: search?.count,
62
- content: search?.articles ?? []
63
- });
64
- if (followed)
65
- tabsArr.push({
66
- id: 'Followed',
67
- name: t('followed'),
68
- count: followed?.count,
69
- content: followed?.articles ?? []
70
- });
71
- return tabsArr;
72
- }, [suggested, followed, search]);
73
- const listUlRef = tabs.reduce((acc, tab) => {
74
- return { ...acc, [tab.id]: createRef() };
75
- }, {});
76
- useEffect(() => {
77
- if (tabsRef.current && getFocusables(tabsRef)?.length > 0)
78
- activeElementRef.current = getFocusables(tabsRef)[0];
79
- else {
80
- activeTabContentRef.current =
81
- articleContentRefs.current[tabs.findIndex(({ id }) => id === activeTab)];
82
- if (activeTabContentRef && getFocusables(activeTabContentRef)?.length > 0) {
83
- activeElementRef.current = getFocusables(activeTabContentRef)[0];
84
- }
85
- }
86
- }, []);
87
- useEffect(() => {
88
- if (!loading) {
89
- const currentTabContent = tabs.find(tab => tab.id === activeTab)?.content;
90
- announcePolite({
91
- type: 'status',
92
- message: currentTabContent && currentTabContent?.length > 0
93
- ? `${header?.title || t('article_list_label_a11y')} ${t('loaded')}`
94
- : t('no_items')
95
- });
96
- }
97
- }, [loading]);
98
- const getItemLength = (tabName) => {
99
- const currentTab = tabs.find(item => item.id === tabName);
100
- if (!currentTab || !currentTab.content) {
101
- return 0;
102
- }
103
- return currentTab.content.length - 1;
104
- };
105
- useItemIntersection(listUlRef[activeTab], getItemLength(activeTab), () => {
106
- if (!loadingMore)
107
- onLoadMore?.();
108
- }, ':scope > li[role="article"]');
109
- const articleContent = ({ content, tabId, headerTitle }) => {
110
- return (_jsxs(_Fragment, { children: [activeTab === t('search') && search && _jsx(ArticleListFilter, { ...search }), activeTab === t('followed') && followed && _jsx(ArticleListFilter, { ...followed }), loading && (_jsx(Progress, { visible: !!loading, placement: 'block', message: t('loading'), liveConfig: { contextualLabel: headerTitle ?? t('article_list_label_a11y') } })), !loading &&
111
- (content.length > 0 ? (_jsxs(Flex, { container: { direction: 'column', gap: 0.5, pad: [1.5, 2] }, as: StyledSummaryList, role: 'feed', ref: listUlRef[tabId], children: [content.map(summaryItem => (_createElement(ArticleSummary, { ...summaryItem, key: summaryItem.articleId, onQuickFilterClick: onQuickFilterClick }))), loadingMore && _jsx(Progress, { placement: 'block' })] })) : (_jsx(EmptyState, {})))] }));
112
- };
113
- return (_jsxs(Flex, { ...restProps, container: {
114
- direction: 'column',
115
- pad: [0.5, undefined]
116
- }, as: StyledArticleList, "aria-label": t('article_list_label_a11y'), ref: ref, "aria-busy": loading ? true : undefined, children: [header && (_jsx(ArticleListHeader, { icon: header.icon, title: header.title, actions: header.actions })), tabs.length === 1 &&
117
- articleContent({
118
- content: tabs[0].content,
119
- tabId: tabs[0].id,
120
- headerTitle: header?.title
121
- }), tabs.length > 1 && (_jsxs(_Fragment, { children: [_jsx(Tabs, { ref: tabsRef, tabs: tabs, onTabClick: (name, e) => {
122
- if (document.activeElement instanceof HTMLElement) {
123
- activeElementRef.current = document.activeElement;
124
- onTabClick?.(name, e);
125
- }
126
- }, currentTabId: activeTab }), tabs.map(({ id, content }) => {
127
- return (_jsx(TabPanel, { tabId: id, currentTabId: activeTab, as: activeTab === id ? StyledArticleTabPanel : undefined, children: activeTab === id &&
128
- articleContent({ content, tabId: id, headerTitle: header?.title }) }, id));
129
- })] }))] }));
130
- });
131
- export default ArticleList;
132
- //# sourceMappingURL=ArticleList.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ArticleList.js","sourceRoot":"","sources":["../../../src/components/ArticleList/ArticleList.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n FunctionComponent,\n forwardRef,\n Ref,\n PropsWithoutRef,\n useMemo,\n useEffect,\n useRef,\n RefObject,\n createRef\n} from 'react';\nimport styled, { css } from 'styled-components';\n\nimport {\n Flex,\n useI18n,\n defaultThemeProp,\n ForwardProps,\n TabPanel,\n Tabs,\n Tab,\n EmptyState,\n Progress,\n getFocusables,\n useLiveLog,\n useItemIntersection\n} from '@pega/cosmos-react-core';\n\nimport ArticleListFilter from './ArticleListFilter';\nimport ArticleSummary from './ArticleSummary';\nimport {\n ArticleListTabId,\n ArticleListProps,\n ArticleSummaryProps,\n ArticleListHeaderProps\n} from './ArticleList.types';\nimport ArticleListHeader from './ArticleListHeader';\n\nconst StyledSummaryList = styled.ul(({ theme }) => {\n return css`\n max-height: calc(100vh - 8 * ${theme.base.spacing});\n flex-grow: 1;\n height: 100%;\n list-style-type: none;\n overflow-y: auto;\n border-end-start-radius: ${theme.base['border-radius']};\n border-end-end-radius: ${theme.base['border-radius']};\n `;\n});\n\nStyledSummaryList.defaultProps = defaultThemeProp;\n\nconst StyledArticleTabPanel = styled.div(({ theme }) => {\n return css`\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1 1;\n gap: ${theme.base.spacing};\n `;\n});\n\nStyledArticleTabPanel.defaultProps = defaultThemeProp;\n\nconst StyledArticleList = styled.article(({ theme }) => {\n return css`\n height: 100%;\n padding-block: 0;\n background: ${theme.base.palette['primary-background']};\n border-radius: ${theme.components.card['border-radius']};\n `;\n});\nStyledArticleList.defaultProps = defaultThemeProp;\n\nconst ArticleList: FunctionComponent<ArticleListProps & ForwardProps> = forwardRef(\n function ArticleList(props: PropsWithoutRef<ArticleListProps>, ref: Ref<HTMLDivElement>) {\n const {\n header,\n suggested,\n followed,\n search,\n onTabClick,\n activeTab,\n loading = false,\n loadingMore = false,\n onQuickFilterClick,\n onLoadMore,\n ...restProps\n } = props;\n const t = useI18n();\n const { announcePolite } = useLiveLog();\n\n const articleContentRefs = useRef<HTMLDivElement[]>([]);\n const activeTabContentRef = useRef<HTMLDivElement | null>(null);\n const tabsRef = useRef<HTMLButtonElement>(null);\n const activeElementRef = useRef<HTMLElement | null>(null);\n\n const tabs = useMemo(() => {\n const tabsArr: (Tab & {\n content: ArticleSummaryProps[];\n id: ArticleListTabId;\n })[] = [];\n\n if (suggested)\n tabsArr.push({\n id: 'Suggested',\n name: t('suggested'),\n count: suggested?.count,\n content: suggested.articles ?? []\n });\n\n if (search)\n tabsArr.push({\n id: 'Search',\n name: t('search'),\n count: search?.count,\n content: search?.articles ?? []\n });\n\n if (followed)\n tabsArr.push({\n id: 'Followed',\n name: t('followed'),\n count: followed?.count,\n content: followed?.articles ?? []\n });\n\n return tabsArr;\n }, [suggested, followed, search]);\n\n const listUlRef: { [id: string]: RefObject<HTMLElement> } = tabs.reduce((acc, tab) => {\n return { ...acc, [tab.id]: createRef() };\n }, {});\n\n useEffect(() => {\n if (tabsRef.current && getFocusables(tabsRef)?.length > 0)\n activeElementRef.current = getFocusables(tabsRef)[0];\n else {\n activeTabContentRef.current =\n articleContentRefs.current[tabs.findIndex(({ id }) => id === activeTab)];\n if (activeTabContentRef && getFocusables(activeTabContentRef)?.length > 0) {\n activeElementRef.current = getFocusables(activeTabContentRef)[0];\n }\n }\n }, []);\n\n useEffect(() => {\n if (!loading) {\n const currentTabContent = tabs.find(tab => tab.id === activeTab)?.content;\n announcePolite({\n type: 'status',\n message:\n currentTabContent && currentTabContent?.length > 0\n ? `${header?.title || t('article_list_label_a11y')} ${t('loaded')}`\n : t('no_items')\n });\n }\n }, [loading]);\n\n const getItemLength = (tabName: string): number => {\n const currentTab = tabs.find(item => item.id === tabName);\n if (!currentTab || !currentTab.content) {\n return 0;\n }\n return currentTab.content.length - 1;\n };\n\n useItemIntersection(\n listUlRef[activeTab],\n getItemLength(activeTab),\n () => {\n if (!loadingMore) onLoadMore?.();\n },\n ':scope > li[role=\"article\"]'\n );\n\n const articleContent = ({\n content,\n tabId,\n headerTitle\n }: {\n count?: Tab['count'];\n content: ArticleSummaryProps[];\n headerTitle?: ArticleListHeaderProps['title'];\n tabId: ArticleListTabId;\n }) => {\n return (\n <>\n {activeTab === t('search') && search && <ArticleListFilter {...search} />}\n {activeTab === t('followed') && followed && <ArticleListFilter {...followed} />}\n {loading && (\n <Progress\n visible={!!loading}\n placement='block'\n message={t('loading')}\n liveConfig={{ contextualLabel: headerTitle ?? t('article_list_label_a11y') }}\n />\n )}\n {!loading &&\n (content.length > 0 ? (\n <Flex\n container={{ direction: 'column', gap: 0.5, pad: [1.5, 2] }}\n as={StyledSummaryList}\n role='feed'\n ref={listUlRef[tabId]}\n >\n {content.map(summaryItem => (\n <ArticleSummary\n {...summaryItem}\n key={summaryItem.articleId}\n onQuickFilterClick={onQuickFilterClick}\n />\n ))}\n {loadingMore && <Progress placement='block' />}\n </Flex>\n ) : (\n <EmptyState />\n ))}\n </>\n );\n };\n\n return (\n <Flex\n {...restProps}\n container={{\n direction: 'column',\n pad: [0.5, undefined]\n }}\n as={StyledArticleList}\n aria-label={t('article_list_label_a11y')}\n ref={ref}\n aria-busy={loading ? true : undefined}\n >\n {header && (\n <ArticleListHeader icon={header.icon} title={header.title} actions={header.actions} />\n )}\n\n {tabs.length === 1 &&\n articleContent({\n content: tabs[0].content,\n tabId: tabs[0].id,\n headerTitle: header?.title\n })}\n\n {/* When multiple tabs present. */}\n {tabs.length > 1 && (\n <>\n <Tabs\n ref={tabsRef}\n tabs={tabs}\n onTabClick={(name, e) => {\n if (document.activeElement instanceof HTMLElement) {\n activeElementRef.current = document.activeElement;\n onTabClick?.(name, e);\n }\n }}\n currentTabId={activeTab}\n />\n {tabs.map(({ id, content }) => {\n return (\n <TabPanel\n key={id}\n tabId={id}\n currentTabId={activeTab}\n as={activeTab === id ? StyledArticleTabPanel : undefined}\n >\n {activeTab === id &&\n articleContent({ content, tabId: id, headerTitle: header?.title })}\n </TabPanel>\n );\n })}\n </>\n )}\n </Flex>\n );\n }\n);\n\nexport default ArticleList;\n"]}
@@ -1,87 +0,0 @@
1
- import { MouseEvent, MouseEventHandler } from 'react';
2
- import { Action, BaseProps, ComboBoxProps, OmitStrict, RequireAtLeastOne, SearchInputProps } from '@pega/cosmos-react-core';
3
- import { ArticleMetaProps } from '../Article/ArticleMeta';
4
- export interface ArticleSummaryProps extends BaseProps {
5
- /** Unique id of article */
6
- articleId: string;
7
- /** URL or DOM id to navigate to. This will render the nav item as a link. */
8
- href?: string;
9
- /** Article title */
10
- title: string;
11
- /** Article content */
12
- abstract: string;
13
- /** Callback fired when article title is clicked */
14
- onTitleClick?: (id?: string, event?: MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => void;
15
- /** Primary actions which needs to be displayed with an icon */
16
- primaryActions?: Action[];
17
- /** A list of elements to be rendered within a MetaList. */
18
- meta?: ArticleMetaProps;
19
- /** Quick filters to filter articles */
20
- quickFilters?: QuickFilter[];
21
- /** callback fired when quick filter is clicked */
22
- onQuickFilterClick?: ArticleListProps['onQuickFilterClick'];
23
- }
24
- export interface Articles {
25
- /** List of articles */
26
- articles: ArticleSummaryProps[];
27
- /** count of articles */
28
- count?: number;
29
- /** Props related to the Search Input. */
30
- searchInput: OmitStrict<SearchInputProps, 'placeholder' | 'onSearchSubmit' | 'searchResults' | 'recentSearches' | 'advancedSearchLink' | 'resultsPopover'>;
31
- /** Props related to the Category Input. */
32
- category?: OmitStrict<ComboBoxProps, 'id' | 'labelHidden' | 'required' | 'disabled' | 'readOnly' | 'status' | 'info' | 'actions' | 'additionalInfo'>;
33
- /** Props related to the SortBy Input. */
34
- sortBy?: OmitStrict<ComboBoxProps, 'id' | 'labelHidden' | 'required' | 'disabled' | 'readOnly' | 'status' | 'info' | 'mode' | 'actions' | 'additionalInfo' | 'onChange' | 'value'>;
35
- /** Callback fired when clear button is clicked */
36
- onClearClick?: MouseEventHandler<HTMLButtonElement>;
37
- /** Quick filters to filter articles */
38
- quickFilters?: QuickFilter[];
39
- /** Callback fired when applied quick filter is removed */
40
- handleQuickFilterRemove?: (id: string) => void;
41
- /** Prop to enable show / hide results */
42
- showResults?: boolean;
43
- }
44
- export interface ArticleListHeaderProps {
45
- /** Title of article list */
46
- title: string;
47
- /** Article list header icon */
48
- icon?: string;
49
- /** Actions which needs to be displayed with an icon */
50
- actions?: Action[];
51
- }
52
- export type ArticleListProps = RequireAtLeastOne<{
53
- /** Props related to article list header */
54
- header?: ArticleListHeaderProps;
55
- /** Data of suggested articles */
56
- suggested?: Pick<Articles, 'articles' | 'count'>;
57
- /** Data of followed articles */
58
- followed?: Articles;
59
- /** Data of search articles */
60
- search?: Articles;
61
- /** current active tab whose list has to be rendered */
62
- activeTab: string;
63
- /** Callback fired when tab is clicked */
64
- onTabClick?: (name: string, event?: MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => void;
65
- /**
66
- * Optionally renders an indeterminate progress indicator while articles are being fetched.
67
- * @default false
68
- */
69
- loading?: boolean;
70
- /**
71
- * Optionally renders an indeterminate progress indicator while progressively fetching articles
72
- * @default false
73
- */
74
- loadingMore?: boolean;
75
- /** callback fired when quick filter is clicked */
76
- onQuickFilterClick?: (quickFilterParam: QuickFilter, event: MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => void;
77
- /** Callback to fetch more rows */
78
- onLoadMore?: () => void;
79
- }, 'suggested' | 'followed' | 'search'>;
80
- export interface QuickFilter {
81
- /** Unique id of quick Filter */
82
- id: string;
83
- /** Name of quick Filter */
84
- name: string;
85
- }
86
- export type ArticleListTabId = 'Suggested' | 'Followed' | 'Search';
87
- //# sourceMappingURL=ArticleList.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ArticleList.types.d.ts","sourceRoot":"","sources":["../../../src/components/ArticleList/ArticleList.types.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=ArticleList.types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ArticleList.types.js","sourceRoot":"","sources":["../../../src/components/ArticleList/ArticleList.types.ts"],"names":[],"mappings":"","sourcesContent":["import { MouseEvent, MouseEventHandler } from 'react';\n\nimport {\n Action,\n BaseProps,\n ComboBoxProps,\n OmitStrict,\n RequireAtLeastOne,\n SearchInputProps\n} from '@pega/cosmos-react-core';\n\nimport { ArticleMetaProps } from '../Article/ArticleMeta';\n\nexport interface ArticleSummaryProps extends BaseProps {\n /** Unique id of article */\n articleId: string;\n /** URL or DOM id to navigate to. This will render the nav item as a link. */\n href?: string;\n /** Article title */\n title: string;\n /** Article content */\n abstract: string;\n /** Callback fired when article title is clicked */\n onTitleClick?: (id?: string, event?: MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => void;\n /** Primary actions which needs to be displayed with an icon */\n primaryActions?: Action[];\n /** A list of elements to be rendered within a MetaList. */\n meta?: ArticleMetaProps;\n /** Quick filters to filter articles */\n quickFilters?: QuickFilter[];\n /** callback fired when quick filter is clicked */\n onQuickFilterClick?: ArticleListProps['onQuickFilterClick'];\n}\n\nexport interface Articles {\n /** List of articles */\n articles: ArticleSummaryProps[];\n /** count of articles */\n count?: number;\n /** Props related to the Search Input. */\n searchInput: OmitStrict<\n SearchInputProps,\n | 'placeholder'\n | 'onSearchSubmit'\n | 'searchResults'\n | 'recentSearches'\n | 'advancedSearchLink'\n | 'resultsPopover'\n >;\n /** Props related to the Category Input. */\n category?: OmitStrict<\n ComboBoxProps,\n | 'id'\n | 'labelHidden'\n | 'required'\n | 'disabled'\n | 'readOnly'\n | 'status'\n | 'info'\n | 'actions'\n | 'additionalInfo'\n >;\n /** Props related to the SortBy Input. */\n sortBy?: OmitStrict<\n ComboBoxProps,\n | 'id'\n | 'labelHidden'\n | 'required'\n | 'disabled'\n | 'readOnly'\n | 'status'\n | 'info'\n | 'mode'\n | 'actions'\n | 'additionalInfo'\n | 'onChange'\n | 'value'\n >;\n /** Callback fired when clear button is clicked */\n onClearClick?: MouseEventHandler<HTMLButtonElement>;\n /** Quick filters to filter articles */\n quickFilters?: QuickFilter[];\n /** Callback fired when applied quick filter is removed */\n handleQuickFilterRemove?: (id: string) => void;\n /** Prop to enable show / hide results */\n showResults?: boolean;\n}\n\nexport interface ArticleListHeaderProps {\n /** Title of article list */\n title: string;\n /** Article list header icon */\n icon?: string;\n /** Actions which needs to be displayed with an icon */\n actions?: Action[];\n}\n\nexport type ArticleListProps = RequireAtLeastOne<\n {\n /** Props related to article list header */\n header?: ArticleListHeaderProps;\n /** Data of suggested articles */\n suggested?: Pick<Articles, 'articles' | 'count'>;\n /** Data of followed articles */\n followed?: Articles;\n /** Data of search articles */\n search?: Articles;\n /** current active tab whose list has to be rendered */\n activeTab: string;\n /** Callback fired when tab is clicked */\n onTabClick?: (name: string, event?: MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => void;\n /**\n * Optionally renders an indeterminate progress indicator while articles are being fetched.\n * @default false\n */\n loading?: boolean;\n /**\n * Optionally renders an indeterminate progress indicator while progressively fetching articles\n * @default false\n */\n loadingMore?: boolean;\n /** callback fired when quick filter is clicked */\n onQuickFilterClick?: (\n quickFilterParam: QuickFilter,\n event: MouseEvent<HTMLButtonElement | HTMLAnchorElement>\n ) => void;\n /** Callback to fetch more rows */\n onLoadMore?: () => void;\n },\n 'suggested' | 'followed' | 'search'\n>;\n\nexport interface QuickFilter {\n /** Unique id of quick Filter */\n id: string;\n /** Name of quick Filter */\n name: string;\n}\n\nexport type ArticleListTabId = 'Suggested' | 'Followed' | 'Search';\n"]}
@@ -1,6 +0,0 @@
1
- import { FunctionComponent } from 'react';
2
- import { ForwardProps } from '@pega/cosmos-react-core';
3
- import { ArticleListProps } from './ArticleList.types';
4
- declare const ArticleListFilter: FunctionComponent<ArticleListProps['search'] & ForwardProps>;
5
- export default ArticleListFilter;
6
- //# sourceMappingURL=ArticleListFilter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ArticleListFilter.d.ts","sourceRoot":"","sources":["../../../src/components/ArticleList/ArticleListFilter.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAqB,MAAM,OAAO,CAAC;AAG7D,OAAO,EAOL,YAAY,EAIb,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AA8CvD,QAAA,MAAM,iBAAiB,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,YAAY,CA2DnF,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -1,61 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useEffect, useRef } from 'react';
3
- import styled, { css } from 'styled-components';
4
- import { Button, Flex, SearchInput, useI18n, defaultThemeProp, ComboBox, StyledSearchInput, Text, Selectable } from '@pega/cosmos-react-core';
5
- import { StyledFormContent } from '@pega/cosmos-react-core/lib/components/MultiStepForm/MultiStepForm';
6
- const StyledClearButton = styled(Button)(({ theme }) => {
7
- return css `
8
- margin-block-start: calc(4.5 * ${theme.base.spacing});
9
- `;
10
- });
11
- StyledClearButton.defaultProps = defaultThemeProp;
12
- const StyledFilterContainer = styled(Flex) `
13
- flex-grow: 1;
14
- `;
15
- const StyledSelectable = styled(Selectable)(({ theme }) => {
16
- return css `
17
- line-height: calc(2 * ${theme.base.spacing});
18
- margin: calc(0.25 * ${theme.base.spacing});
19
- `;
20
- });
21
- StyledSelectable.defaultProps = defaultThemeProp;
22
- const StyledSearchFilters = styled.div(({ theme }) => {
23
- return css `
24
- width: 100%;
25
- padding-block-start: ${theme.base.spacing};
26
- padding-inline: calc(2 * ${theme.base.spacing});
27
-
28
- > div:last-child {
29
- margin: 0;
30
- }
31
-
32
- ${StyledFormContent} {
33
- gap: ${theme.base.spacing};
34
- }
35
-
36
- ${StyledFilterContainer} > div {
37
- margin-top: calc(1.5 * ${theme.base.spacing});
38
- width: 100%;
39
- }
40
- ${StyledSearchInput} {
41
- flex-grow: 1;
42
- }
43
- `;
44
- });
45
- StyledSearchFilters.defaultProps = defaultThemeProp;
46
- const ArticleListFilter = (props) => {
47
- const { searchInput, category, sortBy, onClearClick, articles, quickFilters = [], showResults = false, handleQuickFilterRemove, ...restProps } = props || {};
48
- const t = useI18n();
49
- const searchResults = t('results_count', [articles?.length ?? 0]);
50
- const quickFiltersRef = useRef([]);
51
- useEffect(() => {
52
- if (quickFilters.length > 0 && quickFiltersRef.current.length > 0) {
53
- quickFiltersRef.current[quickFilters.length - 1]?.focus();
54
- }
55
- }, [articles]);
56
- return (_jsxs(StyledSearchFilters, { ...restProps, children: [_jsx(Flex, { container: { alignItems: 'center', gap: 1, pad: [0.5, undefined] }, children: _jsx(SearchInput, { ...searchInput }) }), quickFilters.map(({ id, name }, i) => (_jsx(StyledSelectable, { id: id, ref: (el) => {
57
- quickFiltersRef.current[i] = el;
58
- }, onRemove: handleQuickFilterRemove ? () => handleQuickFilterRemove?.(id) : undefined, onClick: handleQuickFilterRemove ? () => handleQuickFilterRemove?.(id) : undefined, children: name }))), _jsxs(StyledFilterContainer, { container: { gap: 1, alignItems: 'start' }, children: [category && _jsx(ComboBox, { ...category }), sortBy && _jsx(ComboBox, { ...sortBy }), onClearClick && (_jsx(StyledClearButton, { variant: 'link', label: t('clear'), "aria-label": t('clear_filters'), onClick: onClearClick, children: t('clear') }))] }), showResults && _jsx(Text, { variant: 'secondary', children: searchResults })] }));
59
- };
60
- export default ArticleListFilter;
61
- //# sourceMappingURL=ArticleListFilter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ArticleListFilter.js","sourceRoot":"","sources":["../../../src/components/ArticleList/ArticleListFilter.tsx"],"names":[],"mappings":"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","sourcesContent":["import { FunctionComponent, useEffect, useRef } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport {\n Button,\n Flex,\n SearchInput,\n useI18n,\n defaultThemeProp,\n ComboBox,\n ForwardProps,\n StyledSearchInput,\n Text,\n Selectable\n} from '@pega/cosmos-react-core';\nimport { StyledFormContent } from '@pega/cosmos-react-core/lib/components/MultiStepForm/MultiStepForm';\n\nimport { ArticleListProps } from './ArticleList.types';\n\nconst StyledClearButton = styled(Button)(({ theme }) => {\n return css`\n margin-block-start: calc(4.5 * ${theme.base.spacing});\n `;\n});\nStyledClearButton.defaultProps = defaultThemeProp;\n\nconst StyledFilterContainer = styled(Flex)`\n flex-grow: 1;\n`;\n\nconst StyledSelectable = styled(Selectable)(({ theme }) => {\n return css`\n line-height: calc(2 * ${theme.base.spacing});\n margin: calc(0.25 * ${theme.base.spacing});\n `;\n});\nStyledSelectable.defaultProps = defaultThemeProp;\n\nconst StyledSearchFilters = styled.div(({ theme }) => {\n return css`\n width: 100%;\n padding-block-start: ${theme.base.spacing};\n padding-inline: calc(2 * ${theme.base.spacing});\n\n > div:last-child {\n margin: 0;\n }\n\n ${StyledFormContent} {\n gap: ${theme.base.spacing};\n }\n\n ${StyledFilterContainer} > div {\n margin-top: calc(1.5 * ${theme.base.spacing});\n width: 100%;\n }\n ${StyledSearchInput} {\n flex-grow: 1;\n }\n `;\n});\nStyledSearchFilters.defaultProps = defaultThemeProp;\n\nconst ArticleListFilter: FunctionComponent<ArticleListProps['search'] & ForwardProps> = (\n props: ArticleListProps['search']\n) => {\n const {\n searchInput,\n category,\n sortBy,\n onClearClick,\n articles,\n quickFilters = [],\n showResults = false,\n handleQuickFilterRemove,\n ...restProps\n } = props || {};\n const t = useI18n();\n const searchResults = t('results_count', [articles?.length ?? 0]);\n\n const quickFiltersRef = useRef<HTMLButtonElement[]>([]);\n\n useEffect(() => {\n if (quickFilters.length > 0 && quickFiltersRef.current.length > 0) {\n quickFiltersRef.current[quickFilters.length - 1]?.focus();\n }\n }, [articles]);\n\n return (\n <StyledSearchFilters {...restProps}>\n <Flex container={{ alignItems: 'center', gap: 1, pad: [0.5, undefined] }}>\n <SearchInput {...searchInput} />\n </Flex>\n {quickFilters.map(({ id, name }, i) => (\n <StyledSelectable\n id={id}\n ref={(el: HTMLButtonElement) => {\n quickFiltersRef.current[i] = el;\n }}\n onRemove={handleQuickFilterRemove ? () => handleQuickFilterRemove?.(id) : undefined}\n onClick={handleQuickFilterRemove ? () => handleQuickFilterRemove?.(id) : undefined}\n >\n {name}\n </StyledSelectable>\n ))}\n <StyledFilterContainer container={{ gap: 1, alignItems: 'start' }}>\n {category && <ComboBox {...category} />}\n {sortBy && <ComboBox {...sortBy} />}\n {onClearClick && (\n <StyledClearButton\n variant='link'\n label={t('clear')}\n aria-label={t('clear_filters')}\n onClick={onClearClick}\n >\n {t('clear')}\n </StyledClearButton>\n )}\n </StyledFilterContainer>\n {showResults && <Text variant='secondary'>{searchResults}</Text>}\n </StyledSearchFilters>\n );\n};\n\nexport default ArticleListFilter;\n"]}
@@ -1,5 +0,0 @@
1
- import { FunctionComponent } from 'react';
2
- import { ArticleListHeaderProps } from './ArticleList.types';
3
- declare const ArticleListHeader: FunctionComponent<ArticleListHeaderProps>;
4
- export default ArticleListHeader;
5
- //# sourceMappingURL=ArticleListHeader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ArticleListHeader.d.ts","sourceRoot":"","sources":["../../../src/components/ArticleList/ArticleListHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAK1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAuB7D,QAAA,MAAM,iBAAiB,EAAE,iBAAiB,CAAC,sBAAsB,CAQhE,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -1,20 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import styled, { css } from 'styled-components';
3
- import { Flex, Icon, Actions, Text, defaultThemeProp } from '@pega/cosmos-react-core';
4
- const StyledHeaderText = styled(Text) `
5
- text-overflow: ellipsis;
6
- white-space: nowrap;
7
- overflow: hidden;
8
- flex-grow: 1;
9
- `;
10
- const StyledIcon = styled(Icon)(({ theme: { base: { spacing } } }) => {
11
- return css `
12
- min-width: calc(3 * ${spacing});
13
- `;
14
- });
15
- StyledIcon.defaultProps = defaultThemeProp;
16
- const ArticleListHeader = ({ icon, title, actions }) => {
17
- return (_jsxs(Flex, { container: { alignItems: 'center', gap: 1, pad: [1.5, 2] }, children: [icon && _jsx(StyledIcon, { name: icon }), _jsx(StyledHeaderText, { variant: 'h2', children: title }), actions && _jsx(Actions, { items: actions })] }));
18
- };
19
- export default ArticleListHeader;
20
- //# sourceMappingURL=ArticleListHeader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ArticleListHeader.js","sourceRoot":"","sources":["../../../src/components/ArticleList/ArticleListHeader.tsx"],"names":[],"mappings":";AACA,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAItF,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;;;;;CAKpC,CAAC;AAEF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAC7B,CAAC,EACC,KAAK,EAAE,EACL,IAAI,EAAE,EAAE,OAAO,EAAE,EAClB,EACF,EAAE,EAAE;IACH,OAAO,GAAG,CAAA;4BACc,OAAO;KAC9B,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,UAAU,CAAC,YAAY,GAAG,gBAAgB,CAAC;AAE3C,MAAM,iBAAiB,GAA8C,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;IAChG,OAAO,CACL,MAAC,IAAI,IAAC,SAAS,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,aAC7D,IAAI,IAAI,KAAC,UAAU,IAAC,IAAI,EAAE,IAAI,GAAI,EACnC,KAAC,gBAAgB,IAAC,OAAO,EAAC,IAAI,YAAE,KAAK,GAAoB,EACxD,OAAO,IAAI,KAAC,OAAO,IAAC,KAAK,EAAE,OAAO,GAAI,IAClC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC","sourcesContent":["import { FunctionComponent } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { Flex, Icon, Actions, Text, defaultThemeProp } from '@pega/cosmos-react-core';\n\nimport { ArticleListHeaderProps } from './ArticleList.types';\n\nconst StyledHeaderText = styled(Text)`\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n flex-grow: 1;\n`;\n\nconst StyledIcon = styled(Icon)(\n ({\n theme: {\n base: { spacing }\n }\n }) => {\n return css`\n min-width: calc(3 * ${spacing});\n `;\n }\n);\n\nStyledIcon.defaultProps = defaultThemeProp;\n\nconst ArticleListHeader: FunctionComponent<ArticleListHeaderProps> = ({ icon, title, actions }) => {\n return (\n <Flex container={{ alignItems: 'center', gap: 1, pad: [1.5, 2] }}>\n {icon && <StyledIcon name={icon} />}\n <StyledHeaderText variant='h2'>{title}</StyledHeaderText>\n {actions && <Actions items={actions} />}\n </Flex>\n );\n};\n\nexport default ArticleListHeader;\n"]}
@@ -1,7 +0,0 @@
1
- import { FunctionComponent } from 'react';
2
- import { ForwardProps } from '@pega/cosmos-react-core';
3
- import { ArticleSummaryProps } from './ArticleList.types';
4
- export declare const StyledQuickFilters: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
5
- declare const ArticleSummary: FunctionComponent<ArticleSummaryProps & ForwardProps>;
6
- export default ArticleSummary;
7
- //# sourceMappingURL=ArticleSummary.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ArticleSummary.d.ts","sourceRoot":"","sources":["../../../src/components/ArticleList/ArticleSummary.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAG1C,OAAO,EAML,YAAY,EAMb,MAAM,yBAAyB,CAAC;AASjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAqC1D,eAAO,MAAM,kBAAkB,yGAW7B,CAAC;AAGH,QAAA,MAAM,cAAc,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,YAAY,CAkDzE,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -1,56 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import styled, { css } from 'styled-components';
3
- import { CardHeader, CardContent, CardFooter, Link, Text, StyledText, Actions, Flex, Tag, defaultThemeProp } from '@pega/cosmos-react-core';
4
- import { StyledCard } from '@pega/cosmos-react-core/lib/components/Card/Card';
5
- import { StyledCardHeader } from '@pega/cosmos-react-core/lib/components/Card/CardHeader';
6
- import { StyledCardContent } from '@pega/cosmos-react-core/lib/components/Card/CardContent';
7
- import { StyledCardFooter } from '@pega/cosmos-react-core/lib/components/Card/CardFooter';
8
- import { StyledBareButton } from '@pega/cosmos-react-core/lib/components/Button/BareButton';
9
- import ArticleMeta from '../Article/ArticleMeta';
10
- const ArticleCard = styled(StyledCard)(({ theme: { base: { spacing, palette } } }) => {
11
- return css `
12
- &:not(:last-child) {
13
- border-block-end: 0.0625rem solid ${palette['border-line']};
14
- border-radius: 0;
15
- padding-block-end: ${spacing};
16
- }
17
- &&& {
18
- border-radius: 0;
19
- > ${StyledCardHeader} {
20
- padding-block-start: 0;
21
- padding-inline: 0;
22
- }
23
- > ${StyledCardContent}, > ${StyledCardFooter} {
24
- padding-inline: 0;
25
- }
26
- > ${StyledCardContent} {
27
- padding-block-end: ${spacing};
28
- }
29
- > ${StyledCardContent} > ${StyledText} {
30
- display: -webkit-box;
31
- -webkit-line-clamp: 3;
32
- -webkit-box-orient: vertical;
33
- overflow: hidden;
34
- }
35
- }
36
- `;
37
- });
38
- export const StyledQuickFilters = styled.div(({ theme }) => {
39
- const { base: { spacing } } = theme;
40
- return css `
41
- ${StyledBareButton} {
42
- margin-inline-start: 0;
43
- margin-block-start: ${spacing};
44
- }
45
- `;
46
- });
47
- StyledQuickFilters.defaultProps = defaultThemeProp;
48
- const ArticleSummary = (props) => {
49
- const { articleId, href, title, abstract, onTitleClick, primaryActions, meta, quickFilters, onQuickFilterClick, ...restProps } = props;
50
- return (_jsxs(ArticleCard, { as: 'li', role: 'article', ...restProps, children: [_jsxs(CardHeader, { container: { alignItems: 'start', justify: 'between' }, children: [_jsx(Link, { href: href ?? '/', onClick: onTitleClick, children: title }), primaryActions?.length && _jsx(Actions, { items: primaryActions })] }), _jsx(CardContent, { children: _jsx(Text, { children: abstract }) }), _jsxs(CardFooter, { children: [meta && _jsx(ArticleMeta, { ...meta }), quickFilters && quickFilters.length > 0 && (_jsx(Flex, { container: { gap: 0.5, pad: [0.5, undefined], wrap: 'wrap' }, item: {
51
- grow: 1,
52
- basis: '100%'
53
- }, as: StyledQuickFilters, children: quickFilters.map(({ id, name }) => (_jsx(Tag, { onClick: onQuickFilterClick ? e => onQuickFilterClick?.({ id, name }, e) : undefined, children: `#${name}` }))) }))] })] }, articleId));
54
- };
55
- export default ArticleSummary;
56
- //# sourceMappingURL=ArticleSummary.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ArticleSummary.js","sourceRoot":"","sources":["../../../src/components/ArticleList/ArticleSummary.tsx"],"names":[],"mappings":"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","sourcesContent":["import { FunctionComponent } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport {\n CardHeader,\n CardContent,\n CardFooter,\n Link,\n Text,\n ForwardProps,\n StyledText,\n Actions,\n Flex,\n Tag,\n defaultThemeProp\n} from '@pega/cosmos-react-core';\nimport { StyledCard } from '@pega/cosmos-react-core/lib/components/Card/Card';\nimport { StyledCardHeader } from '@pega/cosmos-react-core/lib/components/Card/CardHeader';\nimport { StyledCardContent } from '@pega/cosmos-react-core/lib/components/Card/CardContent';\nimport { StyledCardFooter } from '@pega/cosmos-react-core/lib/components/Card/CardFooter';\nimport { StyledBareButton } from '@pega/cosmos-react-core/lib/components/Button/BareButton';\n\nimport ArticleMeta from '../Article/ArticleMeta';\n\nimport { ArticleSummaryProps } from './ArticleList.types';\n\nconst ArticleCard = styled(StyledCard)(\n ({\n theme: {\n base: { spacing, palette }\n }\n }) => {\n return css`\n &:not(:last-child) {\n border-block-end: 0.0625rem solid ${palette['border-line']};\n border-radius: 0;\n padding-block-end: ${spacing};\n }\n &&& {\n border-radius: 0;\n > ${StyledCardHeader} {\n padding-block-start: 0;\n padding-inline: 0;\n }\n > ${StyledCardContent}, > ${StyledCardFooter} {\n padding-inline: 0;\n }\n > ${StyledCardContent} {\n padding-block-end: ${spacing};\n }\n > ${StyledCardContent} > ${StyledText} {\n display: -webkit-box;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n overflow: hidden;\n }\n }\n `;\n }\n);\n\nexport const StyledQuickFilters = styled.div(({ theme }) => {\n const {\n base: { spacing }\n } = theme;\n\n return css`\n ${StyledBareButton} {\n margin-inline-start: 0;\n margin-block-start: ${spacing};\n }\n `;\n});\nStyledQuickFilters.defaultProps = defaultThemeProp;\n\nconst ArticleSummary: FunctionComponent<ArticleSummaryProps & ForwardProps> = (\n props: ArticleSummaryProps\n) => {\n const {\n articleId,\n href,\n title,\n abstract,\n onTitleClick,\n primaryActions,\n meta,\n quickFilters,\n onQuickFilterClick,\n ...restProps\n } = props;\n\n return (\n <ArticleCard as='li' role='article' key={articleId} {...restProps}>\n <CardHeader container={{ alignItems: 'start', justify: 'between' }}>\n <Link href={href ?? '/'} onClick={onTitleClick}>\n {title}\n </Link>\n {primaryActions?.length && <Actions items={primaryActions} />}\n </CardHeader>\n <CardContent>\n <Text>{abstract}</Text>\n </CardContent>\n <CardFooter>\n {meta && <ArticleMeta {...meta} />}\n {quickFilters && quickFilters.length > 0 && (\n <Flex\n container={{ gap: 0.5, pad: [0.5, undefined], wrap: 'wrap' }}\n item={{\n grow: 1,\n basis: '100%'\n }}\n as={StyledQuickFilters}\n >\n {quickFilters.map(({ id, name }) => (\n <Tag\n onClick={\n onQuickFilterClick ? e => onQuickFilterClick?.({ id, name }, e) : undefined\n }\n >{`#${name}`}</Tag>\n ))}\n </Flex>\n )}\n </CardFooter>\n </ArticleCard>\n );\n};\n\nexport default ArticleSummary;\n"]}
@@ -1,6 +0,0 @@
1
- export { default } from './ArticleList';
2
- export type { ArticleListProps } from './ArticleList.types';
3
- export { default as ArticleSummary } from './ArticleSummary';
4
- export type { ArticleSummaryProps, Articles, QuickFilter } from './ArticleList.types';
5
- export { default as ArticleListFilter } from './ArticleListFilter';
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ArticleList/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1,4 +0,0 @@
1
- export { default } from './ArticleList';
2
- export { default as ArticleSummary } from './ArticleSummary';
3
- export { default as ArticleListFilter } from './ArticleListFilter';
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ArticleList/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE7D,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC","sourcesContent":["export { default } from './ArticleList';\nexport type { ArticleListProps } from './ArticleList.types';\nexport { default as ArticleSummary } from './ArticleSummary';\nexport type { ArticleSummaryProps, Articles, QuickFilter } from './ArticleList.types';\nexport { default as ArticleListFilter } from './ArticleListFilter';\n"]}
@@ -1,21 +0,0 @@
1
- import { FC } from 'react';
2
- import { ForwardProps, NoChildrenProp } from '@pega/cosmos-react-core';
3
- import { TaskItemProps } from '../Tasks/TaskList';
4
- export interface AssignmentsProps extends NoChildrenProp {
5
- /** An array of TaskItemProps to generate the list. */
6
- items: TaskItemProps[];
7
- /** Integer representing the total count of tasks. */
8
- count: number;
9
- /**
10
- * Controls the collapsed state of the assignments list.
11
- * @default false
12
- */
13
- collapsed?: boolean;
14
- /**
15
- * Call when the user clicks the collapsed element.
16
- */
17
- onToggleCollapsed?: () => void;
18
- }
19
- declare const Assignments: FC<ForwardProps & AssignmentsProps>;
20
- export default Assignments;
21
- //# sourceMappingURL=Assignments.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Assignments.d.ts","sourceRoot":"","sources":["../../../src/components/Assignments/Assignments.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAW,MAAM,OAAO,CAAC;AAEpC,OAAO,EAGL,YAAY,EACZ,cAAc,EAQf,MAAM,yBAAyB,CAAC;AAEjC,OAAiB,EAAY,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAItE,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACtD,sDAAsD;IACtD,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;CAChC;AAED,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,YAAY,GAAG,gBAAgB,CA0DpD,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -1,20 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useMemo } from 'react';
3
- import { CardHeader, useI18n, EmptyState, ExpandCollapse, Icon, Text, Count, Flex, useUID } from '@pega/cosmos-react-core';
4
- import TaskList, { TaskItem } from '../Tasks/TaskList';
5
- import { StyledAssignments, StyledCardContent, StyledExpandButton } from './Assignments.styles';
6
- const Assignments = ({ items, count, collapsed, onToggleCollapsed, ...restProps }) => {
7
- const openItem = items.find(item => item.content);
8
- const t = useI18n();
9
- const assignmentsId = useUID();
10
- const TaskItems = useMemo(() => {
11
- return openItem ? _jsx(TaskItem, { ...openItem }) : _jsx(TaskList, { items: items });
12
- }, [items, openItem]);
13
- const tasks = (_jsx(StyledCardContent, { openItem: openItem, children: items.length > 0 ? TaskItems : _jsx(EmptyState, {}) }));
14
- const header = (_jsxs(Flex, { container: { alignItems: 'center', gap: 1 }, children: [typeof collapsed === 'boolean' && _jsx(Icon, { name: 'caret-right' }), _jsx(Text, { variant: 'h2', children: t('assignments') }), _jsx(Count, { children: count })] }));
15
- return (_jsxs(StyledAssignments, { ...restProps, openItem: !!openItem, "data-app-region": true, children: [!openItem && (_jsxs(CardHeader, { container: { justify: 'start', alignItems: 'center', gap: 1 }, children: [typeof collapsed === 'boolean' && onToggleCollapsed && (_jsx(StyledExpandButton, { type: 'button', variant: 'text', onClick: () => {
16
- onToggleCollapsed();
17
- }, "aria-controls": assignmentsId, "aria-expanded": !collapsed ? 'true' : 'false', "aria-label": t('assignments'), children: header })), collapsed === undefined && header] })), typeof collapsed === 'boolean' && onToggleCollapsed && !openItem ? (_jsx(ExpandCollapse, { collapsed: collapsed, children: tasks })) : (tasks)] }));
18
- };
19
- export default Assignments;
20
- //# sourceMappingURL=Assignments.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Assignments.js","sourceRoot":"","sources":["../../../src/components/Assignments/Assignments.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAM,OAAO,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EACL,UAAU,EACV,OAAO,EAGP,UAAU,EACV,cAAc,EACd,IAAI,EACJ,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,MAAM,EACP,MAAM,yBAAyB,CAAC;AAEjC,OAAO,QAAQ,EAAE,EAAE,QAAQ,EAAiB,MAAM,mBAAmB,CAAC;AAEtE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAkBhG,MAAM,WAAW,GAAwC,CAAC,EACxD,KAAK,EACL,KAAK,EACL,SAAS,EACT,iBAAiB,EACjB,GAAG,SAAS,EACb,EAAE,EAAE;IACH,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,CAAC,GAAG,OAAO,EAAE,CAAC;IACpB,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC;IAE/B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE;QAC7B,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAC,QAAQ,OAAK,QAAQ,GAAI,CAAC,CAAC,CAAC,KAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAI,CAAC;IAC5E,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEtB,MAAM,KAAK,GAAG,CACZ,KAAC,iBAAiB,IAAC,QAAQ,EAAE,QAAQ,YAClC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAC,UAAU,KAAG,GAC5B,CACrB,CAAC;IAEF,MAAM,MAAM,GAAG,CACb,MAAC,IAAI,IAAC,SAAS,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,aAC9C,OAAO,SAAS,KAAK,SAAS,IAAI,KAAC,IAAI,IAAC,IAAI,EAAC,aAAa,GAAG,EAC9D,KAAC,IAAI,IAAC,OAAO,EAAC,IAAI,YAAE,CAAC,CAAC,aAAa,CAAC,GAAQ,EAC5C,KAAC,KAAK,cAAE,KAAK,GAAS,IACjB,CACR,CAAC;IAEF,OAAO,CACL,MAAC,iBAAiB,OAAK,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,sCACnD,CAAC,QAAQ,IAAI,CACZ,MAAC,UAAU,IAAC,SAAS,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,aACtE,OAAO,SAAS,KAAK,SAAS,IAAI,iBAAiB,IAAI,CACtD,KAAC,kBAAkB,IACjB,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,MAAM,EACd,OAAO,EAAE,GAAG,EAAE;4BACZ,iBAAiB,EAAE,CAAC;wBACtB,CAAC,mBACc,aAAa,mBACb,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,gBAChC,CAAC,CAAC,aAAa,CAAC,YAE3B,MAAM,GACY,CACtB,EACA,SAAS,KAAK,SAAS,IAAI,MAAM,IACvB,CACd,EAEA,OAAO,SAAS,KAAK,SAAS,IAAI,iBAAiB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAClE,KAAC,cAAc,IAAC,SAAS,EAAE,SAAS,YAAG,KAAK,GAAkB,CAC/D,CAAC,CAAC,CAAC,CACF,KAAK,CACN,IACiB,CACrB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC","sourcesContent":["import { FC, useMemo } from 'react';\n\nimport {\n CardHeader,\n useI18n,\n ForwardProps,\n NoChildrenProp,\n EmptyState,\n ExpandCollapse,\n Icon,\n Text,\n Count,\n Flex,\n useUID\n} from '@pega/cosmos-react-core';\n\nimport TaskList, { TaskItem, TaskItemProps } from '../Tasks/TaskList';\n\nimport { StyledAssignments, StyledCardContent, StyledExpandButton } from './Assignments.styles';\n\nexport interface AssignmentsProps extends NoChildrenProp {\n /** An array of TaskItemProps to generate the list. */\n items: TaskItemProps[];\n /** Integer representing the total count of tasks. */\n count: number;\n /**\n * Controls the collapsed state of the assignments list.\n * @default false\n */\n collapsed?: boolean;\n /**\n * Call when the user clicks the collapsed element.\n */\n onToggleCollapsed?: () => void;\n}\n\nconst Assignments: FC<ForwardProps & AssignmentsProps> = ({\n items,\n count,\n collapsed,\n onToggleCollapsed,\n ...restProps\n}) => {\n const openItem = items.find(item => item.content);\n const t = useI18n();\n const assignmentsId = useUID();\n\n const TaskItems = useMemo(() => {\n return openItem ? <TaskItem {...openItem} /> : <TaskList items={items} />;\n }, [items, openItem]);\n\n const tasks = (\n <StyledCardContent openItem={openItem}>\n {items.length > 0 ? TaskItems : <EmptyState />}\n </StyledCardContent>\n );\n\n const header = (\n <Flex container={{ alignItems: 'center', gap: 1 }}>\n {typeof collapsed === 'boolean' && <Icon name='caret-right' />}\n <Text variant='h2'>{t('assignments')}</Text>\n <Count>{count}</Count>\n </Flex>\n );\n\n return (\n <StyledAssignments {...restProps} openItem={!!openItem} data-app-region>\n {!openItem && (\n <CardHeader container={{ justify: 'start', alignItems: 'center', gap: 1 }}>\n {typeof collapsed === 'boolean' && onToggleCollapsed && (\n <StyledExpandButton\n type='button'\n variant='text'\n onClick={() => {\n onToggleCollapsed();\n }}\n aria-controls={assignmentsId}\n aria-expanded={!collapsed ? 'true' : 'false'}\n aria-label={t('assignments')}\n >\n {header}\n </StyledExpandButton>\n )}\n {collapsed === undefined && header}\n </CardHeader>\n )}\n\n {typeof collapsed === 'boolean' && onToggleCollapsed && !openItem ? (\n <ExpandCollapse collapsed={collapsed}>{tasks}</ExpandCollapse>\n ) : (\n tasks\n )}\n </StyledAssignments>\n );\n};\n\nexport default Assignments;\n"]}
@@ -1,8 +0,0 @@
1
- export declare const StyledExpandButton: import("styled-components").StyledComponent<import("react").FunctionComponent<import("@pega/cosmos-react-core").ButtonProps & import("@pega/cosmos-react-core").ForwardProps>, import("styled-components").DefaultTheme, {}, never>;
2
- export declare const StyledAssignments: import("styled-components").StyledComponent<import("react").FunctionComponent<import("@pega/cosmos-react-core").CardProps & import("@pega/cosmos-react-core").ForwardProps>, import("styled-components").DefaultTheme, {
3
- openItem?: boolean | undefined;
4
- }, never>;
5
- export declare const StyledCardContent: import("styled-components").StyledComponent<import("react").FunctionComponent<import("@pega/cosmos-react-core").CardContentProps & import("@pega/cosmos-react-core").ForwardProps>, import("styled-components").DefaultTheme, {
6
- openItem?: boolean | undefined;
7
- }, never>;
8
- //# sourceMappingURL=Assignments.styles.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Assignments.styles.d.ts","sourceRoot":"","sources":["../../../src/components/Assignments/Assignments.styles.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,kBAAkB,qOA0B9B,CAAC;AAIF,eAAO,MAAM,iBAAiB;;SAM5B,CAAC;AAIH,eAAO,MAAM,iBAAiB;;SAQ7B,CAAC"}