@pega/cosmos-react-demos 3.0.0-dev.4.1 → 3.0.0-dev.4.2

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 (497) hide show
  1. package/jsx/build/AppShell/AppShell.mocks.d.ts +17 -0
  2. package/jsx/build/AppShell/AppShell.mocks.d.ts.map +1 -1
  3. package/jsx/build/AppShell/AppShell.mocks.js +15 -0
  4. package/jsx/build/AppShell/AppShell.mocks.js.map +1 -1
  5. package/jsx/build/AppShell/AppShell.stories.d.ts +2 -0
  6. package/jsx/build/AppShell/AppShell.stories.d.ts.map +1 -1
  7. package/jsx/build/AppShell/AppShell.stories.jsx +2 -17
  8. package/jsx/build/AppShell/AppShell.stories.jsx.map +1 -1
  9. package/jsx/build/DynamicContentEditor/DynamicContentEditor.stories.d.ts.map +1 -1
  10. package/jsx/build/DynamicContentEditor/DynamicContentEditor.stories.jsx +2 -1
  11. package/jsx/build/DynamicContentEditor/DynamicContentEditor.stories.jsx.map +1 -1
  12. package/jsx/build/FlowModeller/FlowModeller.mocks.d.ts +19 -2
  13. package/jsx/build/FlowModeller/FlowModeller.mocks.d.ts.map +1 -1
  14. package/jsx/build/FlowModeller/{FlowModeller.mocks.js → FlowModeller.mocks.jsx} +71 -7
  15. package/jsx/build/FlowModeller/FlowModeller.mocks.jsx.map +1 -0
  16. package/jsx/build/FlowModeller/FlowModeller.stories.d.ts +2 -7
  17. package/jsx/build/FlowModeller/FlowModeller.stories.d.ts.map +1 -1
  18. package/jsx/build/FlowModeller/FlowModeller.stories.jsx +14 -100
  19. package/jsx/build/FlowModeller/FlowModeller.stories.jsx.map +1 -1
  20. package/jsx/build/FlowModeller/FlowModeller.styles.d.ts +2 -0
  21. package/jsx/build/FlowModeller/FlowModeller.styles.d.ts.map +1 -0
  22. package/jsx/build/FlowModeller/FlowModeller.styles.js +8 -0
  23. package/jsx/build/FlowModeller/FlowModeller.styles.js.map +1 -0
  24. package/jsx/build/ItemLibrary/LibraryPicker.stories.d.ts +2 -5
  25. package/jsx/build/ItemLibrary/LibraryPicker.stories.d.ts.map +1 -1
  26. package/jsx/build/ItemLibrary/LibraryPicker.stories.jsx.map +1 -1
  27. package/jsx/build/LifeCycle/LifeCycle.stories.d.ts +2 -4
  28. package/jsx/build/LifeCycle/LifeCycle.stories.d.ts.map +1 -1
  29. package/jsx/build/LifeCycle/LifeCycle.stories.jsx.map +1 -1
  30. package/jsx/build/ObjectSelect/ObjectSelect.mocks.d.ts +24 -0
  31. package/jsx/build/ObjectSelect/ObjectSelect.mocks.d.ts.map +1 -1
  32. package/jsx/build/ObjectSelect/ObjectSelect.mocks.jsx +315 -0
  33. package/jsx/build/ObjectSelect/ObjectSelect.mocks.jsx.map +1 -0
  34. package/jsx/build/ObjectSelect/ObjectSelect.stories.d.ts +2 -7
  35. package/jsx/build/ObjectSelect/ObjectSelect.stories.d.ts.map +1 -1
  36. package/jsx/build/ObjectSelect/ObjectSelect.stories.jsx +5 -180
  37. package/jsx/build/ObjectSelect/ObjectSelect.stories.jsx.map +1 -1
  38. package/jsx/build/PageTemplates/GalleryPage.mocks.d.ts +45 -0
  39. package/jsx/build/PageTemplates/GalleryPage.mocks.d.ts.map +1 -0
  40. package/jsx/build/PageTemplates/GalleryPage.mocks.jsx +78 -0
  41. package/jsx/build/PageTemplates/GalleryPage.mocks.jsx.map +1 -0
  42. package/jsx/build/PageTemplates/GalleryPage.stories.d.ts +1 -0
  43. package/jsx/build/PageTemplates/GalleryPage.stories.d.ts.map +1 -1
  44. package/jsx/build/PageTemplates/GalleryPage.stories.jsx +3 -79
  45. package/jsx/build/PageTemplates/GalleryPage.stories.jsx.map +1 -1
  46. package/jsx/build/PageTemplates/PageTemplates.mocks.d.ts +11 -0
  47. package/jsx/build/PageTemplates/PageTemplates.mocks.d.ts.map +1 -0
  48. package/jsx/build/PageTemplates/PageTemplates.mocks.jsx +129 -0
  49. package/jsx/build/PageTemplates/PageTemplates.mocks.jsx.map +1 -0
  50. package/jsx/build/PageTemplates/PageTemplates.stories.d.ts +1 -0
  51. package/jsx/build/PageTemplates/PageTemplates.stories.d.ts.map +1 -1
  52. package/jsx/build/PageTemplates/PageTemplates.stories.jsx +4 -129
  53. package/jsx/build/PageTemplates/PageTemplates.stories.jsx.map +1 -1
  54. package/jsx/build/Workbench/Workbench.stories.d.ts.map +1 -1
  55. package/jsx/build/Workbench/Workbench.stories.jsx +1 -9
  56. package/jsx/build/Workbench/Workbench.stories.jsx.map +1 -1
  57. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.mocks.d.ts +3 -0
  58. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.mocks.d.ts.map +1 -0
  59. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.mocks.js +13 -0
  60. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.mocks.js.map +1 -0
  61. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.stories.d.ts +16 -8
  62. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.stories.d.ts.map +1 -1
  63. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.stories.jsx +59 -56
  64. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.stories.jsx.map +1 -1
  65. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.styles.d.ts +5 -0
  66. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.styles.d.ts.map +1 -0
  67. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.styles.js +15 -0
  68. package/jsx/condition-builder/ConditionBuilder/ConditionBuilder.styles.js.map +1 -0
  69. package/jsx/core/Button/Button.stories.jsx +6 -6
  70. package/jsx/core/Button/Button.stories.jsx.map +1 -1
  71. package/jsx/core/ColorPicker/ColorPicker.stories.d.ts.map +1 -1
  72. package/jsx/core/ColorPicker/ColorPicker.stories.jsx +2 -10
  73. package/jsx/core/ColorPicker/ColorPicker.stories.jsx.map +1 -1
  74. package/jsx/core/ColorPicker/ColorPicker.styles.d.ts +4 -0
  75. package/jsx/core/ColorPicker/ColorPicker.styles.d.ts.map +1 -0
  76. package/jsx/core/ColorPicker/ColorPicker.styles.js +11 -0
  77. package/jsx/core/ColorPicker/ColorPicker.styles.js.map +1 -0
  78. package/jsx/core/Configuration/Configuration.mocks.d.ts +7 -0
  79. package/jsx/core/Configuration/Configuration.mocks.d.ts.map +1 -0
  80. package/jsx/core/Configuration/Configuration.mocks.jsx +9 -0
  81. package/jsx/core/Configuration/Configuration.mocks.jsx.map +1 -0
  82. package/jsx/core/Configuration/Configuration.stories.d.ts.map +1 -1
  83. package/jsx/core/Configuration/Configuration.stories.jsx +2 -18
  84. package/jsx/core/Configuration/Configuration.stories.jsx.map +1 -1
  85. package/jsx/core/Configuration/Configuration.styles.d.ts +6 -0
  86. package/jsx/core/Configuration/Configuration.styles.d.ts.map +1 -0
  87. package/jsx/core/Configuration/Configuration.styles.js +12 -0
  88. package/jsx/core/Configuration/Configuration.styles.js.map +1 -0
  89. package/jsx/core/DateTime/DateTime.stories.d.ts.map +1 -1
  90. package/jsx/core/DateTime/DateTime.stories.jsx +1 -0
  91. package/jsx/core/DateTime/DateTime.stories.jsx.map +1 -1
  92. package/jsx/core/FieldGroup/FieldGroupList.mocks.d.ts +4 -0
  93. package/jsx/core/FieldGroup/FieldGroupList.mocks.d.ts.map +1 -1
  94. package/jsx/core/FieldGroup/FieldGroupList.mocks.jsx +69 -1
  95. package/jsx/core/FieldGroup/FieldGroupList.mocks.jsx.map +1 -1
  96. package/jsx/core/FieldGroup/FieldGroupList.stories.d.ts.map +1 -1
  97. package/jsx/core/FieldGroup/FieldGroupList.stories.jsx +2 -70
  98. package/jsx/core/FieldGroup/FieldGroupList.stories.jsx.map +1 -1
  99. package/jsx/core/HTML/HTML.stories.d.ts.map +1 -1
  100. package/jsx/core/HTML/HTML.stories.jsx +1 -1
  101. package/jsx/core/HTML/HTML.stories.jsx.map +1 -1
  102. package/jsx/core/Icon/Icon.stories.d.ts.map +1 -1
  103. package/jsx/core/Icon/Icon.stories.jsx +5 -27
  104. package/jsx/core/Icon/Icon.stories.jsx.map +1 -1
  105. package/jsx/core/Icon/Icon.styles.d.ts +4 -0
  106. package/jsx/core/Icon/Icon.styles.d.ts.map +1 -0
  107. package/jsx/core/Icon/Icon.styles.js +25 -0
  108. package/jsx/core/Icon/Icon.styles.js.map +1 -0
  109. package/jsx/core/IconPicker/IconPicker.stories.jsx +1 -1
  110. package/jsx/core/IconPicker/IconPicker.stories.jsx.map +1 -1
  111. package/jsx/core/Link/Link.stories.d.ts +1 -11
  112. package/jsx/core/Link/Link.stories.d.ts.map +1 -1
  113. package/jsx/core/Link/Link.stories.jsx.map +1 -1
  114. package/jsx/core/Number/Number.stories.d.ts.map +1 -1
  115. package/jsx/core/Number/Number.stories.jsx +2 -0
  116. package/jsx/core/Number/Number.stories.jsx.map +1 -1
  117. package/jsx/core/PageTemplates/PageTemplates.stories.d.ts.map +1 -1
  118. package/jsx/core/PageTemplates/PageTemplates.stories.jsx +1 -11
  119. package/jsx/core/PageTemplates/PageTemplates.stories.jsx.map +1 -1
  120. package/jsx/core/PageTemplates/PageTemplates.styles.d.ts +1 -0
  121. package/jsx/core/PageTemplates/PageTemplates.styles.d.ts.map +1 -1
  122. package/jsx/core/PageTemplates/PageTemplates.styles.js +9 -0
  123. package/jsx/core/PageTemplates/PageTemplates.styles.js.map +1 -1
  124. package/jsx/core/Tooltip/Tooltip.stories.d.ts +2 -5
  125. package/jsx/core/Tooltip/Tooltip.stories.d.ts.map +1 -1
  126. package/jsx/core/Tooltip/Tooltip.stories.jsx.map +1 -1
  127. package/jsx/core/Tree/Tree.stories.d.ts.map +1 -1
  128. package/jsx/core/Tree/Tree.stories.jsx +2 -2
  129. package/jsx/core/Tree/Tree.stories.jsx.map +1 -1
  130. package/jsx/cs/Article/Article.stories.d.ts +2 -10
  131. package/jsx/cs/Article/Article.stories.d.ts.map +1 -1
  132. package/jsx/cs/Article/Article.stories.jsx.map +1 -1
  133. package/jsx/cs/ArticleList/ArticleList.stories.d.ts +2 -11
  134. package/jsx/cs/ArticleList/ArticleList.stories.d.ts.map +1 -1
  135. package/jsx/cs/ArticleList/ArticleList.stories.jsx.map +1 -1
  136. package/jsx/cs/CSCaseView/CSAppShell.stories.d.ts +2 -36
  137. package/jsx/cs/CSCaseView/CSAppShell.stories.d.ts.map +1 -1
  138. package/jsx/cs/CSCaseView/CSAppShell.stories.jsx +6 -33
  139. package/jsx/cs/CSCaseView/CSAppShell.stories.jsx.map +1 -1
  140. package/jsx/cs/CSCaseView/CSCaseView.mocks.d.ts +9 -0
  141. package/jsx/cs/CSCaseView/CSCaseView.mocks.d.ts.map +1 -1
  142. package/jsx/cs/CSCaseView/{CSCaseView.mocks.js → CSCaseView.mocks.jsx} +30 -1
  143. package/jsx/cs/CSCaseView/CSCaseView.mocks.jsx.map +1 -0
  144. package/jsx/cs/CallControlPanel/CallControlPanel.stories.d.ts +2 -2
  145. package/jsx/cs/CallControlPanel/CallControlPanel.stories.d.ts.map +1 -1
  146. package/jsx/cs/CallControlPanel/CallControlPanel.stories.jsx +4 -4
  147. package/jsx/cs/CallControlPanel/CallControlPanel.stories.jsx.map +1 -1
  148. package/jsx/cs/IntelligentGuidance/IntelligentGuidance.stories.d.ts +2 -8
  149. package/jsx/cs/IntelligentGuidance/IntelligentGuidance.stories.d.ts.map +1 -1
  150. package/jsx/cs/IntelligentGuidance/IntelligentGuidance.stories.jsx +3 -3
  151. package/jsx/cs/IntelligentGuidance/IntelligentGuidance.stories.jsx.map +1 -1
  152. package/jsx/cs/InteractionNotification/InteractionNotification.stories.d.ts +7 -6
  153. package/jsx/cs/InteractionNotification/InteractionNotification.stories.d.ts.map +1 -1
  154. package/jsx/cs/InteractionNotification/InteractionNotification.stories.jsx +13 -5
  155. package/jsx/cs/InteractionNotification/InteractionNotification.stories.jsx.map +1 -1
  156. package/jsx/cs/InteractionTimer/InteractionTimer.mocks.d.ts +11 -0
  157. package/jsx/cs/InteractionTimer/InteractionTimer.mocks.d.ts.map +1 -0
  158. package/jsx/cs/InteractionTimer/InteractionTimer.mocks.js +29 -0
  159. package/jsx/cs/InteractionTimer/InteractionTimer.mocks.js.map +1 -0
  160. package/jsx/cs/InteractionTimer/InteractionTimer.stories.d.ts +2 -7
  161. package/jsx/cs/InteractionTimer/InteractionTimer.stories.d.ts.map +1 -1
  162. package/jsx/cs/InteractionTimer/InteractionTimer.stories.jsx +6 -30
  163. package/jsx/cs/InteractionTimer/InteractionTimer.stories.jsx.map +1 -1
  164. package/jsx/cs/TaskManager/TaskManager.mocks.d.ts +6 -0
  165. package/jsx/cs/TaskManager/TaskManager.mocks.d.ts.map +1 -1
  166. package/jsx/cs/TaskManager/TaskManager.mocks.js +7 -0
  167. package/jsx/cs/TaskManager/TaskManager.mocks.js.map +1 -1
  168. package/jsx/cs/TaskManager/TaskManager.stories.d.ts +6 -5
  169. package/jsx/cs/TaskManager/TaskManager.stories.d.ts.map +1 -1
  170. package/jsx/cs/TaskManager/TaskManager.stories.jsx +25 -29
  171. package/jsx/cs/TaskManager/TaskManager.stories.jsx.map +1 -1
  172. package/jsx/cs/TaskManager/TaskManager.styles.d.ts +3 -0
  173. package/jsx/cs/TaskManager/TaskManager.styles.d.ts.map +1 -0
  174. package/jsx/cs/TaskManager/TaskManager.styles.js +8 -0
  175. package/jsx/cs/TaskManager/TaskManager.styles.js.map +1 -0
  176. package/jsx/dnd/DragDropList/DragDropList.mocks.d.ts +15 -0
  177. package/jsx/dnd/DragDropList/DragDropList.mocks.d.ts.map +1 -0
  178. package/jsx/dnd/DragDropList/DragDropList.mocks.jsx +33 -0
  179. package/jsx/dnd/DragDropList/DragDropList.mocks.jsx.map +1 -0
  180. package/jsx/dnd/DragDropList/DragDropList.stories.d.ts +8 -9
  181. package/jsx/dnd/DragDropList/DragDropList.stories.d.ts.map +1 -1
  182. package/jsx/dnd/DragDropList/DragDropList.stories.jsx +14 -78
  183. package/jsx/dnd/DragDropList/DragDropList.stories.jsx.map +1 -1
  184. package/jsx/dnd/DragDropList/DragDropList.styles.d.ts +6 -0
  185. package/jsx/dnd/DragDropList/DragDropList.styles.d.ts.map +1 -0
  186. package/jsx/dnd/DragDropList/DragDropList.styles.js +32 -0
  187. package/jsx/dnd/DragDropList/DragDropList.styles.js.map +1 -0
  188. package/jsx/rte/Editor/Editor.mocks.d.ts +6 -0
  189. package/jsx/rte/Editor/Editor.mocks.d.ts.map +1 -0
  190. package/jsx/rte/Editor/Editor.mocks.jsx +20 -0
  191. package/jsx/rte/Editor/Editor.mocks.jsx.map +1 -0
  192. package/jsx/rte/Editor/Editor.stories.d.ts.map +1 -1
  193. package/jsx/rte/Editor/Editor.stories.jsx +1 -19
  194. package/jsx/rte/Editor/Editor.stories.jsx.map +1 -1
  195. package/jsx/rte/RichTextEditor/RichTextEditor.stories.d.ts +2 -3
  196. package/jsx/rte/RichTextEditor/RichTextEditor.stories.d.ts.map +1 -1
  197. package/jsx/rte/RichTextEditor/RichTextEditor.stories.jsx.map +1 -1
  198. package/jsx/social/Chat/RepeatingView.mocks.d.ts +14 -0
  199. package/jsx/social/Chat/RepeatingView.mocks.d.ts.map +1 -0
  200. package/jsx/social/Chat/RepeatingView.mocks.js +11 -0
  201. package/jsx/social/Chat/RepeatingView.mocks.js.map +1 -0
  202. package/jsx/social/Chat/RepeatingView.stories.d.ts +6 -17
  203. package/jsx/social/Chat/RepeatingView.stories.d.ts.map +1 -1
  204. package/jsx/social/Chat/RepeatingView.stories.jsx +16 -46
  205. package/jsx/social/Chat/RepeatingView.stories.jsx.map +1 -1
  206. package/jsx/social/Chat/RepeatingView.styles.d.ts +2 -0
  207. package/jsx/social/Chat/RepeatingView.styles.d.ts.map +1 -0
  208. package/jsx/social/Chat/RepeatingView.styles.js +22 -0
  209. package/jsx/social/Chat/RepeatingView.styles.js.map +1 -0
  210. package/jsx/social/Email/Email.mocks.d.ts +155 -2
  211. package/jsx/social/Email/Email.mocks.d.ts.map +1 -1
  212. package/jsx/social/Email/Email.mocks.jsx +756 -0
  213. package/jsx/social/Email/Email.mocks.jsx.map +1 -0
  214. package/jsx/social/Email/Email.stories.d.ts +14 -14
  215. package/jsx/social/Email/Email.stories.d.ts.map +1 -1
  216. package/jsx/social/Email/Email.stories.jsx +97 -411
  217. package/jsx/social/Email/Email.stories.jsx.map +1 -1
  218. package/jsx/social/Email/Email.styles.d.ts +4 -0
  219. package/jsx/social/Email/Email.styles.d.ts.map +1 -0
  220. package/jsx/social/Email/Email.styles.js +14 -0
  221. package/jsx/social/Email/Email.styles.js.map +1 -0
  222. package/jsx/social/Feed/Feed.stories.d.ts.map +1 -1
  223. package/jsx/social/Feed/Feed.stories.jsx +23 -18
  224. package/jsx/social/Feed/Feed.stories.jsx.map +1 -1
  225. package/jsx/social/Feed/FeedPost.stories.d.ts.map +1 -1
  226. package/jsx/social/Feed/FeedPost.stories.jsx +30 -20
  227. package/jsx/social/Feed/FeedPost.stories.jsx.map +1 -1
  228. package/jsx/social/Feed/FeedReply.stories.d.ts.map +1 -1
  229. package/jsx/social/Feed/FeedReply.stories.jsx +21 -16
  230. package/jsx/social/Feed/FeedReply.stories.jsx.map +1 -1
  231. package/jsx/work/CaseView/MobileCaseView.stories.d.ts +2 -7
  232. package/jsx/work/CaseView/MobileCaseView.stories.d.ts.map +1 -1
  233. package/jsx/work/CaseView/MobileCaseView.stories.jsx.map +1 -1
  234. package/jsx/work/ConfigurableLayout/ConfigurableLayout.mocks.d.ts +45 -0
  235. package/jsx/work/ConfigurableLayout/ConfigurableLayout.mocks.d.ts.map +1 -0
  236. package/jsx/work/ConfigurableLayout/ConfigurableLayout.mocks.jsx +166 -0
  237. package/jsx/work/ConfigurableLayout/ConfigurableLayout.mocks.jsx.map +1 -0
  238. package/jsx/work/ConfigurableLayout/ConfigurableLayout.stories.d.ts +2 -6
  239. package/jsx/work/ConfigurableLayout/ConfigurableLayout.stories.d.ts.map +1 -1
  240. package/jsx/work/ConfigurableLayout/ConfigurableLayout.stories.jsx +2 -174
  241. package/jsx/work/ConfigurableLayout/ConfigurableLayout.stories.jsx.map +1 -1
  242. package/jsx/work/ConfigurableLayout/ConfigurableLayout.styles.d.ts +4 -0
  243. package/jsx/work/ConfigurableLayout/ConfigurableLayout.styles.d.ts.map +1 -0
  244. package/jsx/work/ConfigurableLayout/ConfigurableLayout.styles.js +11 -0
  245. package/jsx/work/ConfigurableLayout/ConfigurableLayout.styles.js.map +1 -0
  246. package/lib/build/AppShell/AppShell.mocks.d.ts +17 -0
  247. package/lib/build/AppShell/AppShell.mocks.d.ts.map +1 -1
  248. package/lib/build/AppShell/AppShell.mocks.js +16 -0
  249. package/lib/build/AppShell/AppShell.mocks.js.map +1 -1
  250. package/lib/build/AppShell/AppShell.stories.d.ts +2 -0
  251. package/lib/build/AppShell/AppShell.stories.d.ts.map +1 -1
  252. package/lib/build/AppShell/AppShell.stories.js +3 -18
  253. package/lib/build/AppShell/AppShell.stories.js.map +1 -1
  254. package/lib/build/DynamicContentEditor/DynamicContentEditor.stories.d.ts.map +1 -1
  255. package/lib/build/DynamicContentEditor/DynamicContentEditor.stories.js +2 -1
  256. package/lib/build/DynamicContentEditor/DynamicContentEditor.stories.js.map +1 -1
  257. package/lib/build/FlowModeller/FlowModeller.mocks.d.ts +19 -2
  258. package/lib/build/FlowModeller/FlowModeller.mocks.d.ts.map +1 -1
  259. package/lib/build/FlowModeller/FlowModeller.mocks.js +58 -6
  260. package/lib/build/FlowModeller/FlowModeller.mocks.js.map +1 -1
  261. package/lib/build/FlowModeller/FlowModeller.stories.d.ts +2 -7
  262. package/lib/build/FlowModeller/FlowModeller.stories.d.ts.map +1 -1
  263. package/lib/build/FlowModeller/FlowModeller.stories.js +15 -90
  264. package/lib/build/FlowModeller/FlowModeller.stories.js.map +1 -1
  265. package/lib/build/FlowModeller/FlowModeller.styles.d.ts +2 -0
  266. package/lib/build/FlowModeller/FlowModeller.styles.d.ts.map +1 -0
  267. package/lib/build/FlowModeller/FlowModeller.styles.js +8 -0
  268. package/lib/build/FlowModeller/FlowModeller.styles.js.map +1 -0
  269. package/lib/build/ItemLibrary/LibraryPicker.stories.d.ts +2 -5
  270. package/lib/build/ItemLibrary/LibraryPicker.stories.d.ts.map +1 -1
  271. package/lib/build/ItemLibrary/LibraryPicker.stories.js.map +1 -1
  272. package/lib/build/LifeCycle/LifeCycle.stories.d.ts +2 -4
  273. package/lib/build/LifeCycle/LifeCycle.stories.d.ts.map +1 -1
  274. package/lib/build/LifeCycle/LifeCycle.stories.js.map +1 -1
  275. package/lib/build/ObjectSelect/ObjectSelect.mocks.d.ts +24 -0
  276. package/lib/build/ObjectSelect/ObjectSelect.mocks.d.ts.map +1 -1
  277. package/lib/build/ObjectSelect/ObjectSelect.mocks.js +136 -0
  278. package/lib/build/ObjectSelect/ObjectSelect.mocks.js.map +1 -1
  279. package/lib/build/ObjectSelect/ObjectSelect.stories.d.ts +2 -7
  280. package/lib/build/ObjectSelect/ObjectSelect.stories.d.ts.map +1 -1
  281. package/lib/build/ObjectSelect/ObjectSelect.stories.js +12 -136
  282. package/lib/build/ObjectSelect/ObjectSelect.stories.js.map +1 -1
  283. package/lib/build/PageTemplates/GalleryPage.mocks.d.ts +45 -0
  284. package/lib/build/PageTemplates/GalleryPage.mocks.d.ts.map +1 -0
  285. package/lib/build/PageTemplates/GalleryPage.mocks.js +79 -0
  286. package/lib/build/PageTemplates/GalleryPage.mocks.js.map +1 -0
  287. package/lib/build/PageTemplates/GalleryPage.stories.d.ts +1 -0
  288. package/lib/build/PageTemplates/GalleryPage.stories.d.ts.map +1 -1
  289. package/lib/build/PageTemplates/GalleryPage.stories.js +3 -79
  290. package/lib/build/PageTemplates/GalleryPage.stories.js.map +1 -1
  291. package/lib/build/PageTemplates/PageTemplates.mocks.d.ts +11 -0
  292. package/lib/build/PageTemplates/PageTemplates.mocks.d.ts.map +1 -0
  293. package/lib/build/PageTemplates/PageTemplates.mocks.js +96 -0
  294. package/lib/build/PageTemplates/PageTemplates.mocks.js.map +1 -0
  295. package/lib/build/PageTemplates/PageTemplates.stories.d.ts +1 -0
  296. package/lib/build/PageTemplates/PageTemplates.stories.d.ts.map +1 -1
  297. package/lib/build/PageTemplates/PageTemplates.stories.js +5 -95
  298. package/lib/build/PageTemplates/PageTemplates.stories.js.map +1 -1
  299. package/lib/build/Workbench/Workbench.stories.d.ts.map +1 -1
  300. package/lib/build/Workbench/Workbench.stories.js +1 -9
  301. package/lib/build/Workbench/Workbench.stories.js.map +1 -1
  302. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.mocks.d.ts +3 -0
  303. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.mocks.d.ts.map +1 -0
  304. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.mocks.js +13 -0
  305. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.mocks.js.map +1 -0
  306. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.stories.d.ts +16 -8
  307. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.stories.d.ts.map +1 -1
  308. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.stories.js +56 -54
  309. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.stories.js.map +1 -1
  310. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.styles.d.ts +5 -0
  311. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.styles.d.ts.map +1 -0
  312. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.styles.js +15 -0
  313. package/lib/condition-builder/ConditionBuilder/ConditionBuilder.styles.js.map +1 -0
  314. package/lib/core/Button/Button.stories.js +2 -2
  315. package/lib/core/Button/Button.stories.js.map +1 -1
  316. package/lib/core/ColorPicker/ColorPicker.stories.d.ts.map +1 -1
  317. package/lib/core/ColorPicker/ColorPicker.stories.js +2 -10
  318. package/lib/core/ColorPicker/ColorPicker.stories.js.map +1 -1
  319. package/lib/core/ColorPicker/ColorPicker.styles.d.ts +4 -0
  320. package/lib/core/ColorPicker/ColorPicker.styles.d.ts.map +1 -0
  321. package/lib/core/ColorPicker/ColorPicker.styles.js +11 -0
  322. package/lib/core/ColorPicker/ColorPicker.styles.js.map +1 -0
  323. package/lib/core/Configuration/Configuration.mocks.d.ts +7 -0
  324. package/lib/core/Configuration/Configuration.mocks.d.ts.map +1 -0
  325. package/lib/core/Configuration/Configuration.mocks.js +6 -0
  326. package/lib/core/Configuration/Configuration.mocks.js.map +1 -0
  327. package/lib/core/Configuration/Configuration.stories.d.ts.map +1 -1
  328. package/lib/core/Configuration/Configuration.stories.js +3 -15
  329. package/lib/core/Configuration/Configuration.stories.js.map +1 -1
  330. package/lib/core/Configuration/Configuration.styles.d.ts +6 -0
  331. package/lib/core/Configuration/Configuration.styles.d.ts.map +1 -0
  332. package/lib/core/Configuration/Configuration.styles.js +12 -0
  333. package/lib/core/Configuration/Configuration.styles.js.map +1 -0
  334. package/lib/core/DateTime/DateTime.stories.d.ts.map +1 -1
  335. package/lib/core/DateTime/DateTime.stories.js +2 -0
  336. package/lib/core/DateTime/DateTime.stories.js.map +1 -1
  337. package/lib/core/FieldGroup/FieldGroupList.mocks.d.ts +4 -0
  338. package/lib/core/FieldGroup/FieldGroupList.mocks.d.ts.map +1 -1
  339. package/lib/core/FieldGroup/FieldGroupList.mocks.js +46 -2
  340. package/lib/core/FieldGroup/FieldGroupList.mocks.js.map +1 -1
  341. package/lib/core/FieldGroup/FieldGroupList.stories.d.ts.map +1 -1
  342. package/lib/core/FieldGroup/FieldGroupList.stories.js +3 -47
  343. package/lib/core/FieldGroup/FieldGroupList.stories.js.map +1 -1
  344. package/lib/core/HTML/HTML.stories.d.ts.map +1 -1
  345. package/lib/core/HTML/HTML.stories.js +1 -1
  346. package/lib/core/HTML/HTML.stories.js.map +1 -1
  347. package/lib/core/Icon/Icon.stories.d.ts.map +1 -1
  348. package/lib/core/Icon/Icon.stories.js +6 -29
  349. package/lib/core/Icon/Icon.stories.js.map +1 -1
  350. package/lib/core/Icon/Icon.styles.d.ts +4 -0
  351. package/lib/core/Icon/Icon.styles.d.ts.map +1 -0
  352. package/lib/core/Icon/Icon.styles.js +25 -0
  353. package/lib/core/Icon/Icon.styles.js.map +1 -0
  354. package/lib/core/IconPicker/IconPicker.stories.js +1 -1
  355. package/lib/core/IconPicker/IconPicker.stories.js.map +1 -1
  356. package/lib/core/Link/Link.stories.d.ts +1 -11
  357. package/lib/core/Link/Link.stories.d.ts.map +1 -1
  358. package/lib/core/Link/Link.stories.js.map +1 -1
  359. package/lib/core/Number/Number.stories.d.ts.map +1 -1
  360. package/lib/core/Number/Number.stories.js +2 -0
  361. package/lib/core/Number/Number.stories.js.map +1 -1
  362. package/lib/core/PageTemplates/PageTemplates.stories.d.ts.map +1 -1
  363. package/lib/core/PageTemplates/PageTemplates.stories.js +1 -11
  364. package/lib/core/PageTemplates/PageTemplates.stories.js.map +1 -1
  365. package/lib/core/PageTemplates/PageTemplates.styles.d.ts +1 -0
  366. package/lib/core/PageTemplates/PageTemplates.styles.d.ts.map +1 -1
  367. package/lib/core/PageTemplates/PageTemplates.styles.js +9 -0
  368. package/lib/core/PageTemplates/PageTemplates.styles.js.map +1 -1
  369. package/lib/core/Tooltip/Tooltip.stories.d.ts +2 -5
  370. package/lib/core/Tooltip/Tooltip.stories.d.ts.map +1 -1
  371. package/lib/core/Tooltip/Tooltip.stories.js.map +1 -1
  372. package/lib/core/Tree/Tree.stories.d.ts.map +1 -1
  373. package/lib/core/Tree/Tree.stories.js +2 -2
  374. package/lib/core/Tree/Tree.stories.js.map +1 -1
  375. package/lib/cs/Article/Article.stories.d.ts +2 -10
  376. package/lib/cs/Article/Article.stories.d.ts.map +1 -1
  377. package/lib/cs/Article/Article.stories.js.map +1 -1
  378. package/lib/cs/ArticleList/ArticleList.stories.d.ts +2 -11
  379. package/lib/cs/ArticleList/ArticleList.stories.d.ts.map +1 -1
  380. package/lib/cs/ArticleList/ArticleList.stories.js.map +1 -1
  381. package/lib/cs/CSCaseView/CSAppShell.stories.d.ts +2 -36
  382. package/lib/cs/CSCaseView/CSAppShell.stories.d.ts.map +1 -1
  383. package/lib/cs/CSCaseView/CSAppShell.stories.js +6 -19
  384. package/lib/cs/CSCaseView/CSAppShell.stories.js.map +1 -1
  385. package/lib/cs/CSCaseView/CSCaseView.mocks.d.ts +9 -0
  386. package/lib/cs/CSCaseView/CSCaseView.mocks.d.ts.map +1 -1
  387. package/lib/cs/CSCaseView/CSCaseView.mocks.js +16 -0
  388. package/lib/cs/CSCaseView/CSCaseView.mocks.js.map +1 -1
  389. package/lib/cs/CallControlPanel/CallControlPanel.stories.d.ts +2 -2
  390. package/lib/cs/CallControlPanel/CallControlPanel.stories.d.ts.map +1 -1
  391. package/lib/cs/CallControlPanel/CallControlPanel.stories.js +4 -4
  392. package/lib/cs/CallControlPanel/CallControlPanel.stories.js.map +1 -1
  393. package/lib/cs/IntelligentGuidance/IntelligentGuidance.stories.d.ts +2 -8
  394. package/lib/cs/IntelligentGuidance/IntelligentGuidance.stories.d.ts.map +1 -1
  395. package/lib/cs/IntelligentGuidance/IntelligentGuidance.stories.js +3 -3
  396. package/lib/cs/IntelligentGuidance/IntelligentGuidance.stories.js.map +1 -1
  397. package/lib/cs/InteractionNotification/InteractionNotification.stories.d.ts +7 -6
  398. package/lib/cs/InteractionNotification/InteractionNotification.stories.d.ts.map +1 -1
  399. package/lib/cs/InteractionNotification/InteractionNotification.stories.js +13 -5
  400. package/lib/cs/InteractionNotification/InteractionNotification.stories.js.map +1 -1
  401. package/lib/cs/InteractionTimer/InteractionTimer.mocks.d.ts +11 -0
  402. package/lib/cs/InteractionTimer/InteractionTimer.mocks.d.ts.map +1 -0
  403. package/lib/cs/InteractionTimer/InteractionTimer.mocks.js +29 -0
  404. package/lib/cs/InteractionTimer/InteractionTimer.mocks.js.map +1 -0
  405. package/lib/cs/InteractionTimer/InteractionTimer.stories.d.ts +2 -7
  406. package/lib/cs/InteractionTimer/InteractionTimer.stories.d.ts.map +1 -1
  407. package/lib/cs/InteractionTimer/InteractionTimer.stories.js +6 -30
  408. package/lib/cs/InteractionTimer/InteractionTimer.stories.js.map +1 -1
  409. package/lib/cs/TaskManager/TaskManager.mocks.d.ts +6 -0
  410. package/lib/cs/TaskManager/TaskManager.mocks.d.ts.map +1 -1
  411. package/lib/cs/TaskManager/TaskManager.mocks.js +7 -0
  412. package/lib/cs/TaskManager/TaskManager.mocks.js.map +1 -1
  413. package/lib/cs/TaskManager/TaskManager.stories.d.ts +6 -5
  414. package/lib/cs/TaskManager/TaskManager.stories.d.ts.map +1 -1
  415. package/lib/cs/TaskManager/TaskManager.stories.js +25 -29
  416. package/lib/cs/TaskManager/TaskManager.stories.js.map +1 -1
  417. package/lib/cs/TaskManager/TaskManager.styles.d.ts +3 -0
  418. package/lib/cs/TaskManager/TaskManager.styles.d.ts.map +1 -0
  419. package/lib/cs/TaskManager/TaskManager.styles.js +8 -0
  420. package/lib/cs/TaskManager/TaskManager.styles.js.map +1 -0
  421. package/lib/dnd/DragDropList/DragDropList.mocks.d.ts +15 -0
  422. package/lib/dnd/DragDropList/DragDropList.mocks.d.ts.map +1 -0
  423. package/lib/dnd/DragDropList/DragDropList.mocks.js +32 -0
  424. package/lib/dnd/DragDropList/DragDropList.mocks.js.map +1 -0
  425. package/lib/dnd/DragDropList/DragDropList.stories.d.ts +8 -9
  426. package/lib/dnd/DragDropList/DragDropList.stories.d.ts.map +1 -1
  427. package/lib/dnd/DragDropList/DragDropList.stories.js +14 -85
  428. package/lib/dnd/DragDropList/DragDropList.stories.js.map +1 -1
  429. package/lib/dnd/DragDropList/DragDropList.styles.d.ts +6 -0
  430. package/lib/dnd/DragDropList/DragDropList.styles.d.ts.map +1 -0
  431. package/lib/dnd/DragDropList/DragDropList.styles.js +32 -0
  432. package/lib/dnd/DragDropList/DragDropList.styles.js.map +1 -0
  433. package/lib/rte/Editor/Editor.mocks.d.ts +6 -0
  434. package/lib/rte/Editor/Editor.mocks.d.ts.map +1 -0
  435. package/lib/rte/Editor/Editor.mocks.js +23 -0
  436. package/lib/rte/Editor/Editor.mocks.js.map +1 -0
  437. package/lib/rte/Editor/Editor.stories.d.ts.map +1 -1
  438. package/lib/rte/Editor/Editor.stories.js +1 -21
  439. package/lib/rte/Editor/Editor.stories.js.map +1 -1
  440. package/lib/rte/RichTextEditor/RichTextEditor.stories.d.ts +2 -3
  441. package/lib/rte/RichTextEditor/RichTextEditor.stories.d.ts.map +1 -1
  442. package/lib/rte/RichTextEditor/RichTextEditor.stories.js.map +1 -1
  443. package/lib/social/Chat/RepeatingView.mocks.d.ts +14 -0
  444. package/lib/social/Chat/RepeatingView.mocks.d.ts.map +1 -0
  445. package/lib/social/Chat/RepeatingView.mocks.js +11 -0
  446. package/lib/social/Chat/RepeatingView.mocks.js.map +1 -0
  447. package/lib/social/Chat/RepeatingView.stories.d.ts +6 -17
  448. package/lib/social/Chat/RepeatingView.stories.d.ts.map +1 -1
  449. package/lib/social/Chat/RepeatingView.stories.js +16 -46
  450. package/lib/social/Chat/RepeatingView.stories.js.map +1 -1
  451. package/lib/social/Chat/RepeatingView.styles.d.ts +2 -0
  452. package/lib/social/Chat/RepeatingView.styles.d.ts.map +1 -0
  453. package/lib/social/Chat/RepeatingView.styles.js +22 -0
  454. package/lib/social/Chat/RepeatingView.styles.js.map +1 -0
  455. package/lib/social/Email/Email.mocks.d.ts +155 -2
  456. package/lib/social/Email/Email.mocks.d.ts.map +1 -1
  457. package/lib/social/Email/Email.mocks.js +361 -0
  458. package/lib/social/Email/Email.mocks.js.map +1 -1
  459. package/lib/social/Email/Email.stories.d.ts +14 -14
  460. package/lib/social/Email/Email.stories.d.ts.map +1 -1
  461. package/lib/social/Email/Email.stories.js +99 -427
  462. package/lib/social/Email/Email.stories.js.map +1 -1
  463. package/lib/social/Email/Email.styles.d.ts +4 -0
  464. package/lib/social/Email/Email.styles.d.ts.map +1 -0
  465. package/lib/social/Email/Email.styles.js +14 -0
  466. package/lib/social/Email/Email.styles.js.map +1 -0
  467. package/lib/social/Feed/Feed.stories.d.ts.map +1 -1
  468. package/lib/social/Feed/Feed.stories.js +23 -18
  469. package/lib/social/Feed/Feed.stories.js.map +1 -1
  470. package/lib/social/Feed/FeedPost.stories.d.ts.map +1 -1
  471. package/lib/social/Feed/FeedPost.stories.js +30 -20
  472. package/lib/social/Feed/FeedPost.stories.js.map +1 -1
  473. package/lib/social/Feed/FeedReply.stories.d.ts.map +1 -1
  474. package/lib/social/Feed/FeedReply.stories.js +21 -16
  475. package/lib/social/Feed/FeedReply.stories.js.map +1 -1
  476. package/lib/work/CaseView/MobileCaseView.stories.d.ts +2 -7
  477. package/lib/work/CaseView/MobileCaseView.stories.d.ts.map +1 -1
  478. package/lib/work/CaseView/MobileCaseView.stories.js.map +1 -1
  479. package/lib/work/ConfigurableLayout/ConfigurableLayout.mocks.d.ts +45 -0
  480. package/lib/work/ConfigurableLayout/ConfigurableLayout.mocks.d.ts.map +1 -0
  481. package/lib/work/ConfigurableLayout/ConfigurableLayout.mocks.js +165 -0
  482. package/lib/work/ConfigurableLayout/ConfigurableLayout.mocks.js.map +1 -0
  483. package/lib/work/ConfigurableLayout/ConfigurableLayout.stories.d.ts +2 -6
  484. package/lib/work/ConfigurableLayout/ConfigurableLayout.stories.d.ts.map +1 -1
  485. package/lib/work/ConfigurableLayout/ConfigurableLayout.stories.js +2 -172
  486. package/lib/work/ConfigurableLayout/ConfigurableLayout.stories.js.map +1 -1
  487. package/lib/work/ConfigurableLayout/ConfigurableLayout.styles.d.ts +4 -0
  488. package/lib/work/ConfigurableLayout/ConfigurableLayout.styles.d.ts.map +1 -0
  489. package/lib/work/ConfigurableLayout/ConfigurableLayout.styles.js +11 -0
  490. package/lib/work/ConfigurableLayout/ConfigurableLayout.styles.js.map +1 -0
  491. package/package.json +9 -10
  492. package/jsx/build/FlowModeller/FlowModeller.mocks.js.map +0 -1
  493. package/jsx/build/ObjectSelect/ObjectSelect.mocks.js +0 -136
  494. package/jsx/build/ObjectSelect/ObjectSelect.mocks.js.map +0 -1
  495. package/jsx/cs/CSCaseView/CSCaseView.mocks.js.map +0 -1
  496. package/jsx/social/Email/Email.mocks.js +0 -395
  497. package/jsx/social/Email/Email.mocks.js.map +0 -1
@@ -1,26 +1,14 @@
1
1
  import { useRef, useState } from 'react';
2
- import styled from 'styled-components';
3
- import { boolean, select } from '@storybook/addon-knobs';
4
- import { Card, CardContent, Text, Grid, Button, defaultThemeProp, Popover, useElement, useOuterEvent, Flex, useI18n } from '@pega/cosmos-react-core';
2
+ import { Card, CardContent, Text, Button, Popover, useElement, useOuterEvent, Flex, useI18n } from '@pega/cosmos-react-core';
5
3
  import { ConditionBuilder, FieldCondition, AtomicCondition, getInitConditionForLhs, isValidCondition, formatCondition } from '@pega/cosmos-react-condition-builder';
6
4
  import { demoFields, demoCondition, demoComparators, demoDateFunctions } from './props.mock';
7
- const StyledGrid = styled(Grid) `
8
- max-width: 60rem;
9
- `;
10
- const StyledCodeBlock = styled.pre `
11
- padding: ${props => props.theme.base.spacing};
12
- margin-bottom: ${props => props.theme.base.spacing};
13
- `;
14
- StyledCodeBlock.defaultProps = defaultThemeProp;
15
- const StyledList = styled.ul `
16
- padding-left: calc(4 * ${props => props.theme.base.spacing});
17
- `;
18
- StyledList.defaultProps = defaultThemeProp;
5
+ import { StyledCodeBlock, StyledGrid, StyledList } from './ConditionBuilder.styles';
6
+ import { convertRhsTypes } from './ConditionBuilder.mocks';
19
7
  export default {
20
8
  title: 'Condition Builder/ConditionBuilder',
21
9
  component: ConditionBuilder
22
10
  };
23
- export const DefaultBuilder = () => {
11
+ export const DefaultBuilder = (args) => {
24
12
  const translate = useI18n();
25
13
  const [condition, setCondition] = useState(() => {
26
14
  const prevCondition = sessionStorage.getItem('CBDemoCondition');
@@ -32,10 +20,6 @@ export const DefaultBuilder = () => {
32
20
  }
33
21
  return demoCondition;
34
22
  });
35
- const validComparators = boolean('Limit Comparators', false) ? demoComparators : undefined;
36
- const disallowNOT = boolean('Disallow NOT operator', false);
37
- const renderInPopover = boolean('Render inside Popover', false);
38
- const dateFunctions = boolean('Enable Date functions', true) ? demoDateFunctions : undefined;
39
23
  const buttonRef = useRef(null);
40
24
  const [isOpen, setIsOpen] = useState(false);
41
25
  const [popoverEl, setPopoverEl] = useElement(null);
@@ -49,7 +33,7 @@ export const DefaultBuilder = () => {
49
33
  if (e.key === 'Escape')
50
34
  hidePopover();
51
35
  };
52
- const builderJsx = (<ConditionBuilder fields={demoFields} condition={condition} validComparators={validComparators} validRhsTypes={new Set(['LITERAL', 'FIELD', 'DATE_FUNCTION', 'RELATIVE_DATE'])} dateFunctions={dateFunctions} disallowNOT={disallowNOT} onConditionSubmit={(c) => {
36
+ const builderJsx = (<ConditionBuilder fields={demoFields} condition={condition} validComparators={args.validComparators ? demoComparators : undefined} validRhsTypes={new Set(['LITERAL', 'FIELD', 'DATE_FUNCTION', 'RELATIVE_DATE'])} dateFunctions={args.dateFunctions ? demoDateFunctions : undefined} disallowNOT={args.disallowNOT} onConditionSubmit={(c) => {
53
37
  setCondition(c);
54
38
  hidePopover();
55
39
  sessionStorage.setItem('CBDemoCondition', JSON.stringify(c));
@@ -58,9 +42,9 @@ export const DefaultBuilder = () => {
58
42
  cols: '1fr',
59
43
  rowGap: 3
60
44
  }}>
61
- {!renderInPopover && builderJsx}
45
+ {!args.renderInPopover && builderJsx}
62
46
 
63
- {renderInPopover && (<>
47
+ {args.renderInPopover && (<>
64
48
  <Button ref={buttonRef} aria-haspopup aria-expanded={isOpen} onClick={() => setIsOpen(!isOpen)} onKeyDown={hideOnEscape}>
65
49
  Open Condition builder
66
50
  </Button>
@@ -85,12 +69,21 @@ export const DefaultBuilder = () => {
85
69
  </div>
86
70
  </StyledGrid>);
87
71
  };
88
- export const FieldConditionDemo = () => {
72
+ DefaultBuilder.args = {
73
+ validComparators: false,
74
+ disallowNOT: false,
75
+ renderInPopover: false,
76
+ dateFunctions: true
77
+ };
78
+ DefaultBuilder.argTypes = {
79
+ validComparators: { control: { type: 'boolean' } },
80
+ disallowNOT: { control: { type: 'boolean' } },
81
+ renderInPopover: { control: { type: 'boolean' } },
82
+ dateFunctions: { control: { type: 'boolean' } }
83
+ };
84
+ export const FieldConditionDemo = (args) => {
89
85
  const translate = useI18n();
90
86
  const [condition, setCondition] = useState(undefined);
91
- const validComparators = boolean('Limit Comparators', false) ? demoComparators : undefined;
92
- const renderInPopover = boolean('Render inside Popover', false);
93
- const dateFunctions = boolean('Enable Date functions', true) ? demoDateFunctions : undefined;
94
87
  const buttonRef = useRef(null);
95
88
  const [isOpen, setIsOpen] = useState(false);
96
89
  const [popoverEl, setPopoverEl] = useElement(null);
@@ -104,7 +97,7 @@ export const FieldConditionDemo = () => {
104
97
  if (e.key === 'Escape')
105
98
  hidePopover();
106
99
  };
107
- const builderJsx = (<FieldCondition targetField='lastActivityAt' fields={demoFields} condition={condition} validComparators={validComparators} validRhsTypes={new Set(['LITERAL', 'FIELD', 'DATE_FUNCTION', 'RELATIVE_DATE'])} dateFunctions={dateFunctions} onSubmit={c => {
100
+ const builderJsx = (<FieldCondition targetField='lastActivityAt' fields={demoFields} condition={condition} validComparators={args.validComparators ? demoComparators : undefined} validRhsTypes={new Set(['LITERAL', 'FIELD', 'DATE_FUNCTION', 'RELATIVE_DATE'])} dateFunctions={args.dateFunctions ? demoDateFunctions : undefined} onSubmit={c => {
108
101
  hidePopover();
109
102
  setCondition(c);
110
103
  }}/>);
@@ -114,9 +107,9 @@ export const FieldConditionDemo = () => {
114
107
  alignItems: 'start',
115
108
  colGap: 4
116
109
  }}>
117
- {!renderInPopover && builderJsx}
110
+ {!args.renderInPopover && builderJsx}
118
111
 
119
- {renderInPopover && (<>
112
+ {args.renderInPopover && (<>
120
113
  <Button ref={buttonRef} aria-haspopup aria-expanded={isOpen} onClick={() => setIsOpen(!isOpen)} onKeyDown={hideOnEscape}>
121
114
  Open Condition builder
122
115
  </Button>
@@ -139,29 +132,19 @@ export const FieldConditionDemo = () => {
139
132
  </div>
140
133
  </StyledGrid>);
141
134
  };
142
- const convertRhsTypes = (useLiteralRHSType, useFieldRHSType, useRelativeDatesType, dateFunctions) => {
143
- const setRhsTypes = new Set();
144
- if (useLiteralRHSType)
145
- setRhsTypes.add('LITERAL');
146
- if (useFieldRHSType)
147
- setRhsTypes.add('FIELD');
148
- if (dateFunctions)
149
- setRhsTypes.add('DATE_FUNCTION');
150
- if (useRelativeDatesType)
151
- setRhsTypes.add('RELATIVE_DATE');
152
- return setRhsTypes;
135
+ FieldConditionDemo.args = {
136
+ validComparators: false,
137
+ renderInPopover: false,
138
+ dateFunctions: true
139
+ };
140
+ FieldConditionDemo.argTypes = {
141
+ validComparators: { control: { type: 'boolean' } },
142
+ renderInPopover: { control: { type: 'boolean' } },
143
+ dateFunctions: { control: { type: 'boolean' } }
153
144
  };
154
- export const AtomicConditionDemo = () => {
145
+ export const AtomicConditionDemo = (args) => {
155
146
  const translate = useI18n();
156
- const renderInPopover = boolean('Render inside Popover', false);
157
- const itemDirection = select('Item Direction', { Column: 'column', Row: 'row' }, 'column');
158
- const validComparators = boolean('Limit Comparators', false) ? demoComparators : undefined;
159
- const useLiteralRHSType = boolean('Enable Literal RHS Type', true);
160
- const useFieldRHSType = boolean('Enable Field RHS Type', true);
161
- const useRelativeDatesRHSType = boolean('Enable Relative Dates RHS Type', true);
162
- const dateFunctions = boolean('Enable Date functions', true) ? demoDateFunctions : undefined;
163
- const validRHSTypes = convertRhsTypes(useLiteralRHSType, useFieldRHSType, useRelativeDatesRHSType, dateFunctions);
164
- const showLhsAsLabel = boolean('Show LHS as Label', false);
147
+ const validRHSTypes = convertRhsTypes(!!args.useLiteralRHSType, !!args.useFieldRHSType, !!args.useRelativeDatesRHSType, args.dateFunctions ? demoDateFunctions : undefined);
165
148
  const [submitCondition, setSubmitCondition] = useState(undefined);
166
149
  const buttonRef = useRef(null);
167
150
  const [isOpen, setIsOpen] = useState(false);
@@ -178,11 +161,11 @@ export const AtomicConditionDemo = () => {
178
161
  };
179
162
  const [showErrorIndicators, setShowErrorIndicators] = useState(false);
180
163
  const [condition, setCondition] = useState(() => submitCondition ||
181
- getInitConditionForLhs({ field: 'age' }, demoFields, validRHSTypes, validComparators, dateFunctions));
164
+ getInitConditionForLhs({ field: 'age' }, demoFields, validRHSTypes, args.validComparators ? demoComparators : undefined, args.dateFunctions ? demoDateFunctions : undefined));
182
165
  const handleSubmission = () => {
183
166
  setShowErrorIndicators(false);
184
167
  if (isValidCondition(condition, demoFields, true)) {
185
- if (renderInPopover)
168
+ if (args.renderInPopover)
186
169
  setIsOpen(false);
187
170
  setSubmitCondition(condition);
188
171
  }
@@ -191,7 +174,7 @@ export const AtomicConditionDemo = () => {
191
174
  }
192
175
  };
193
176
  const atomicConditionJSX = (<Flex container={{ direction: 'column', gap: 2 }}>
194
- <AtomicCondition condition={condition} fields={demoFields} indicateErrors={showErrorIndicators} validComparators={validComparators} dateFunctions={dateFunctions} onChange={c => setCondition(c)} itemDirection={itemDirection} showLhsAsLabel={showLhsAsLabel} validRhsTypes={validRHSTypes}/>
177
+ <AtomicCondition condition={condition} fields={demoFields} indicateErrors={showErrorIndicators} validComparators={args.validComparators ? demoComparators : undefined} dateFunctions={args.dateFunctions ? demoDateFunctions : undefined} onChange={c => setCondition(c)} itemDirection={args.itemDirection} showLhsAsLabel={args.showLhsAsLabel} validRhsTypes={validRHSTypes}/>
195
178
  <Button variant='primary' onClick={handleSubmission}>
196
179
  Submit Condition
197
180
  </Button>
@@ -202,9 +185,9 @@ export const AtomicConditionDemo = () => {
202
185
  alignItems: 'start',
203
186
  colGap: 4
204
187
  }}>
205
- {!renderInPopover && atomicConditionJSX}
188
+ {!args.renderInPopover && atomicConditionJSX}
206
189
 
207
- {renderInPopover && (<>
190
+ {args.renderInPopover && (<>
208
191
  <Button ref={buttonRef} aria-haspopup aria-expanded={isOpen} onClick={() => setIsOpen(!isOpen)} onKeyDown={hideOnEscape}>
209
192
  {`${isOpen ? 'Close' : 'Open'} Atomic Condition`}
210
193
  </Button>
@@ -260,4 +243,24 @@ export const AtomicConditionDemo = () => {
260
243
  </Card>
261
244
  </StyledGrid>);
262
245
  };
246
+ AtomicConditionDemo.args = {
247
+ validComparators: false,
248
+ renderInPopover: false,
249
+ dateFunctions: true,
250
+ itemDirection: 'column',
251
+ useLiteralRHSType: true,
252
+ useFieldRHSType: true,
253
+ useRelativeDatesRHSType: true,
254
+ showLhsAsLabel: false
255
+ };
256
+ AtomicConditionDemo.argTypes = {
257
+ validComparators: { control: { type: 'boolean' } },
258
+ renderInPopover: { control: { type: 'boolean' } },
259
+ dateFunctions: { control: { type: 'boolean' } },
260
+ itemDirection: { options: ['column', 'row'], control: { type: 'select' } },
261
+ useLiteralRHSType: { control: { type: 'boolean' } },
262
+ useFieldRHSType: { control: { type: 'boolean' } },
263
+ useRelativeDatesRHSType: { control: { type: 'boolean' } },
264
+ showLhsAsLabel: { control: { type: 'boolean' } }
265
+ };
263
266
  //# sourceMappingURL=ConditionBuilder.stories.jsx.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConditionBuilder.stories.jsx","sourceRoot":"","sources":["../../../src/condition-builder/ConditionBuilder/ConditionBuilder.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable react/no-unescaped-entities */\nimport { useRef, useState } from 'react';\nimport styled from 'styled-components';\nimport { boolean, select } from '@storybook/addon-knobs';\n\nimport {\n Card,\n CardContent,\n Text,\n Grid,\n Button,\n defaultThemeProp,\n Popover,\n useElement,\n useOuterEvent,\n Flex,\n useI18n\n} from '@pega/cosmos-react-core';\nimport {\n ConditionBuilder,\n FieldCondition,\n AtomicCondition,\n getInitConditionForLhs,\n isValidCondition,\n Condition,\n DateFunctionsByType,\n LeafCondition,\n formatCondition,\n RHSType\n} from '@pega/cosmos-react-condition-builder';\n\nimport { demoFields, demoCondition, demoComparators, demoDateFunctions } from './props.mock';\n\nconst StyledGrid = styled(Grid)`\n max-width: 60rem;\n`;\n\nconst StyledCodeBlock = styled.pre`\n padding: ${props => props.theme.base.spacing};\n margin-bottom: ${props => props.theme.base.spacing};\n`;\nStyledCodeBlock.defaultProps = defaultThemeProp;\n\nconst StyledList = styled.ul`\n padding-left: calc(4 * ${props => props.theme.base.spacing});\n`;\nStyledList.defaultProps = defaultThemeProp;\n\nexport default {\n title: 'Condition Builder/ConditionBuilder',\n component: ConditionBuilder\n};\n\nexport const DefaultBuilder = () => {\n const translate = useI18n();\n const [condition, setCondition] = useState<Condition | undefined>(() => {\n // If a previous condition exists on the session, use it\n const prevCondition = sessionStorage.getItem('CBDemoCondition');\n if (prevCondition !== null) {\n // If an empty condition was submitted previously, start with an empty one\n if (prevCondition === 'undefined') {\n return undefined;\n }\n return JSON.parse(prevCondition);\n }\n return demoCondition;\n });\n\n const validComparators = boolean('Limit Comparators', false) ? demoComparators : undefined;\n const disallowNOT = boolean('Disallow NOT operator', false);\n const renderInPopover = boolean('Render inside Popover', false);\n const dateFunctions = boolean('Enable Date functions', true) ? demoDateFunctions : undefined;\n\n // Set up content for rendering inside a Popover\n const buttonRef = useRef(null); // Ref for the opener button\n const [isOpen, setIsOpen] = useState(false);\n const [popoverEl, setPopoverEl] = useElement<HTMLElement>(null);\n const hidePopover = () => {\n if (isOpen) {\n setIsOpen(false);\n }\n };\n useOuterEvent('mousedown', [popoverEl, buttonRef.current], hidePopover); // Call the method on clicking outside these elements\n const hideOnEscape = (e: KeyboardEvent) => {\n if (e.key === 'Escape') hidePopover(); // Call the method when Escape key is pressed\n };\n\n const builderJsx = (\n <ConditionBuilder\n fields={demoFields}\n condition={condition}\n validComparators={validComparators}\n validRhsTypes={new Set(['LITERAL', 'FIELD', 'DATE_FUNCTION', 'RELATIVE_DATE'])}\n dateFunctions={dateFunctions}\n disallowNOT={disallowNOT}\n onConditionSubmit={(c: Condition | undefined) => {\n setCondition(c);\n hidePopover();\n sessionStorage.setItem('CBDemoCondition', JSON.stringify(c)); // Persist on sessionStorage for the next time\n }}\n />\n );\n\n return (\n <StyledGrid\n container={{\n cols: '1fr',\n rowGap: 3\n }}\n >\n {!renderInPopover && builderJsx}\n\n {renderInPopover && (\n <>\n <Button\n ref={buttonRef}\n aria-haspopup\n aria-expanded={isOpen}\n onClick={() => setIsOpen(!isOpen)}\n onKeyDown={hideOnEscape}\n >\n Open Condition builder\n </Button>\n\n <Popover\n show={isOpen}\n ref={setPopoverEl}\n target={buttonRef.current}\n placement='bottom-start'\n >\n <Flex container={{ pad: 1 }}>{builderJsx}</Flex>\n </Popover>\n </>\n )}\n\n <div>\n <Text variant='h4'>Output:</Text>\n <StyledCodeBlock>\n {condition ? JSON.stringify(condition, null, 2) : '(No condition)'}\n </StyledCodeBlock>\n </div>\n\n <div>\n <Text variant='h4'>Formatted Output:</Text>\n <StyledCodeBlock>\n {condition ? formatCondition(condition, demoFields, translate) : '(No condition)'}\n </StyledCodeBlock>\n </div>\n </StyledGrid>\n );\n};\n\nexport const FieldConditionDemo = () => {\n const translate = useI18n();\n const [condition, setCondition] = useState<LeafCondition | undefined>(undefined);\n\n const validComparators = boolean('Limit Comparators', false) ? demoComparators : undefined;\n const renderInPopover = boolean('Render inside Popover', false);\n const dateFunctions = boolean('Enable Date functions', true) ? demoDateFunctions : undefined;\n\n // Set up content for rendering inside a Popover\n const buttonRef = useRef(null); // Ref for the opener button\n const [isOpen, setIsOpen] = useState(false);\n const [popoverEl, setPopoverEl] = useElement<HTMLElement>(null);\n const hidePopover = () => {\n if (isOpen) {\n setIsOpen(false);\n }\n };\n useOuterEvent('mousedown', [popoverEl, buttonRef.current], hidePopover); // Call the method on clicking outside these elements\n const hideOnEscape = (e: KeyboardEvent) => {\n if (e.key === 'Escape') hidePopover(); // Call the method when Escape key is pressed\n };\n\n const builderJsx = (\n <FieldCondition\n targetField='lastActivityAt'\n fields={demoFields}\n condition={condition}\n validComparators={validComparators}\n validRhsTypes={new Set(['LITERAL', 'FIELD', 'DATE_FUNCTION', 'RELATIVE_DATE'])}\n dateFunctions={dateFunctions}\n onSubmit={c => {\n hidePopover();\n setCondition(c);\n }}\n />\n );\n\n return (\n <StyledGrid\n container={{\n cols: 'repeat(2, minmax(0, 1fr))',\n justifyItems: 'stretch',\n alignItems: 'start',\n colGap: 4\n }}\n >\n {!renderInPopover && builderJsx}\n\n {renderInPopover && (\n <>\n <Button\n ref={buttonRef}\n aria-haspopup\n aria-expanded={isOpen}\n onClick={() => setIsOpen(!isOpen)}\n onKeyDown={hideOnEscape}\n >\n Open Condition builder\n </Button>\n\n <Popover\n show={isOpen}\n ref={setPopoverEl}\n target={buttonRef.current}\n placement='bottom-start'\n >\n <Flex container={{ pad: 1 }}>{builderJsx}</Flex>\n </Popover>\n </>\n )}\n\n <div>\n <Text variant='h4'>Output:</Text>\n <StyledCodeBlock>\n {condition ? JSON.stringify(condition, null, 2) : '(No condition)'}\n </StyledCodeBlock>\n\n <Text variant='h4'>Formatted Output:</Text>\n <StyledCodeBlock>\n {condition ? formatCondition({ condition }, demoFields, translate) : '(No condition)'}\n </StyledCodeBlock>\n </div>\n </StyledGrid>\n );\n};\n\nconst convertRhsTypes = (\n useLiteralRHSType: boolean,\n useFieldRHSType: boolean,\n useRelativeDatesType: boolean,\n dateFunctions?: DateFunctionsByType\n) => {\n const setRhsTypes: Set<RHSType> = new Set<RHSType>();\n if (useLiteralRHSType) setRhsTypes.add('LITERAL');\n if (useFieldRHSType) setRhsTypes.add('FIELD');\n if (dateFunctions) setRhsTypes.add('DATE_FUNCTION');\n if (useRelativeDatesType) setRhsTypes.add('RELATIVE_DATE');\n return setRhsTypes;\n};\n\nexport const AtomicConditionDemo = () => {\n const translate = useI18n();\n // Storybook knobs for configuration\n const renderInPopover = boolean('Render inside Popover', false);\n const itemDirection = select('Item Direction', { Column: 'column', Row: 'row' }, 'column');\n const validComparators = boolean('Limit Comparators', false) ? demoComparators : undefined;\n const useLiteralRHSType = boolean('Enable Literal RHS Type', true);\n const useFieldRHSType = boolean('Enable Field RHS Type', true);\n const useRelativeDatesRHSType = boolean('Enable Relative Dates RHS Type', true);\n const dateFunctions = boolean('Enable Date functions', true) ? demoDateFunctions : undefined;\n const validRHSTypes: Set<RHSType> = convertRhsTypes(\n useLiteralRHSType,\n useFieldRHSType,\n useRelativeDatesRHSType,\n dateFunctions\n );\n const showLhsAsLabel = boolean('Show LHS as Label', false);\n\n // Story State object to simulate \"submitting\"\n const [submitCondition, setSubmitCondition] = useState<LeafCondition | undefined>(undefined);\n // State needed to use Popover in Story\n const buttonRef = useRef(null); // Ref for the opener button\n const [isOpen, setIsOpen] = useState(false);\n const [popoverEl, setPopoverEl] = useElement<HTMLElement>(null);\n const hidePopover = () => {\n if (isOpen) {\n setIsOpen(false);\n }\n };\n useOuterEvent('mousedown', [popoverEl, buttonRef.current], hidePopover); // Call the method on clicking outside these elements\n const hideOnEscape = (e: KeyboardEvent) => {\n if (e.key === 'Escape') hidePopover(); // Call the method when Escape key is pressed\n };\n\n // State handling needed to manage/use the AtomicCondition component\n const [showErrorIndicators, setShowErrorIndicators] = useState(false);\n const [condition, setCondition] = useState(\n // If editing use the seedCondition, otherwise, determine an initial condition based on the targetField\n () =>\n submitCondition ||\n getInitConditionForLhs(\n { field: 'age' },\n demoFields,\n validRHSTypes,\n validComparators,\n dateFunctions\n )\n );\n\n const handleSubmission = () => {\n setShowErrorIndicators(false);\n if (isValidCondition(condition, demoFields, true)) {\n // Insert all \"submit\" logic to use the valid condition that you've created.\n if (renderInPopover) setIsOpen(false);\n setSubmitCondition(condition);\n } else {\n setShowErrorIndicators(true);\n }\n };\n\n const atomicConditionJSX = (\n <Flex container={{ direction: 'column', gap: 2 }}>\n <AtomicCondition\n condition={condition}\n fields={demoFields}\n indicateErrors={showErrorIndicators}\n validComparators={validComparators}\n dateFunctions={dateFunctions}\n onChange={c => setCondition(c)}\n itemDirection={itemDirection}\n showLhsAsLabel={showLhsAsLabel}\n validRhsTypes={validRHSTypes}\n />\n <Button variant='primary' onClick={handleSubmission}>\n Submit Condition\n </Button>\n </Flex>\n );\n\n return (\n <StyledGrid\n container={{\n cols: 'repeat(2, minmax(0, 1fr))',\n justifyItems: 'stretch',\n alignItems: 'start',\n colGap: 4\n }}\n >\n {!renderInPopover && atomicConditionJSX}\n\n {renderInPopover && (\n <>\n <Button\n ref={buttonRef}\n aria-haspopup\n aria-expanded={isOpen}\n onClick={() => setIsOpen(!isOpen)}\n onKeyDown={hideOnEscape}\n >\n {`${isOpen ? 'Close' : 'Open'} Atomic Condition`}\n </Button>\n\n <Popover\n show={isOpen}\n ref={setPopoverEl}\n target={buttonRef.current}\n placement='bottom-start'\n >\n <Flex container={{ pad: 1 }}>{atomicConditionJSX}</Flex>\n </Popover>\n </>\n )}\n <Card>\n <CardContent>\n <Text variant='h4'>Output:</Text>\n <StyledCodeBlock>\n {submitCondition ? JSON.stringify(submitCondition, null, 2) : '(No condition)'}\n </StyledCodeBlock>\n\n <Text variant='h4'>Formatted Output:</Text>\n <StyledCodeBlock>\n {submitCondition\n ? formatCondition({ condition: submitCondition }, demoFields, translate)\n : '(No condition)'}\n </StyledCodeBlock>\n <Flex container={{ gap: 1, direction: 'column' }}>\n <Flex container={{ gap: 1, direction: 'column' }}>\n <Text variant='h2' status='error'>\n validRhsTypes Prop Warning\n </Text>\n <Text>\n There are LHS(Left Hand Side Field)/Comparator pairings that <u>require</u> specific\n RHS(Right Hand Side Value) types. Please be mindful of these incompatibilities when\n limiting RHS value types using this prop. We <b>do not</b> support limiting RHS\n field types to incompatible types and it will result in a validation error if you do\n so. The pairings referred to here are as follows:\n </Text>\n </Flex>\n <StyledList>\n <li>\n BOOLEAN LHS Fields coupled with \"EQ\" or \"NEQ\" comparators, will <u>always yield</u>{' '}\n a Field RHS\n </li>\n <li>\n Any LHS Fields coupled with \"IN\" or \"NOT_IN\" comparators, will <u>always yield</u> a\n Literal RHS (Comma separated list)\n </li>\n </StyledList>\n <Flex container={{ direction: 'column' }}>\n <Text>\n If you would like to limit RHS value types and avoid these incompatibilities, you\n will need to exclude these comparators using the <b>validComparators</b> prop.\n </Text>\n </Flex>\n </Flex>\n </CardContent>\n </Card>\n </StyledGrid>\n );\n};\n"]}
1
+ {"version":3,"file":"ConditionBuilder.stories.jsx","sourceRoot":"","sources":["../../../src/condition-builder/ConditionBuilder/ConditionBuilder.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable react/no-unescaped-entities */\nimport { useRef, useState } from 'react';\nimport { Meta, Story } from '@storybook/react';\n\nimport {\n Card,\n CardContent,\n Text,\n Button,\n Popover,\n useElement,\n useOuterEvent,\n Flex,\n useI18n\n} from '@pega/cosmos-react-core';\nimport {\n ConditionBuilder,\n FieldCondition,\n AtomicCondition,\n getInitConditionForLhs,\n isValidCondition,\n Condition,\n LeafCondition,\n formatCondition,\n RHSType\n} from '@pega/cosmos-react-condition-builder';\n\nimport { demoFields, demoCondition, demoComparators, demoDateFunctions } from './props.mock';\nimport { StyledCodeBlock, StyledGrid, StyledList } from './ConditionBuilder.styles';\nimport { convertRhsTypes } from './ConditionBuilder.mocks';\n\nexport default {\n title: 'Condition Builder/ConditionBuilder',\n component: ConditionBuilder\n} as Meta;\n\ninterface ConditionBuilderStoryProps {\n validComparators?: boolean;\n disallowNOT?: boolean;\n renderInPopover?: boolean;\n dateFunctions?: boolean;\n itemDirection?: 'column' | 'row';\n useLiteralRHSType?: boolean;\n useFieldRHSType?: boolean;\n useRelativeDatesRHSType?: boolean;\n showLhsAsLabel?: boolean;\n}\n\nexport const DefaultBuilder: Story<ConditionBuilderStoryProps> = (\n args: ConditionBuilderStoryProps\n) => {\n const translate = useI18n();\n const [condition, setCondition] = useState<Condition | undefined>(() => {\n // If a previous condition exists on the session, use it\n const prevCondition = sessionStorage.getItem('CBDemoCondition');\n if (prevCondition !== null) {\n // If an empty condition was submitted previously, start with an empty one\n if (prevCondition === 'undefined') {\n return undefined;\n }\n return JSON.parse(prevCondition);\n }\n return demoCondition;\n });\n\n // Set up content for rendering inside a Popover\n const buttonRef = useRef(null); // Ref for the opener button\n const [isOpen, setIsOpen] = useState(false);\n const [popoverEl, setPopoverEl] = useElement<HTMLElement>(null);\n const hidePopover = () => {\n if (isOpen) {\n setIsOpen(false);\n }\n };\n useOuterEvent('mousedown', [popoverEl, buttonRef.current], hidePopover); // Call the method on clicking outside these elements\n const hideOnEscape = (e: KeyboardEvent) => {\n if (e.key === 'Escape') hidePopover(); // Call the method when Escape key is pressed\n };\n\n const builderJsx = (\n <ConditionBuilder\n fields={demoFields}\n condition={condition}\n validComparators={args.validComparators ? demoComparators : undefined}\n validRhsTypes={new Set(['LITERAL', 'FIELD', 'DATE_FUNCTION', 'RELATIVE_DATE'])}\n dateFunctions={args.dateFunctions ? demoDateFunctions : undefined}\n disallowNOT={args.disallowNOT}\n onConditionSubmit={(c: Condition | undefined) => {\n setCondition(c);\n hidePopover();\n sessionStorage.setItem('CBDemoCondition', JSON.stringify(c)); // Persist on sessionStorage for the next time\n }}\n />\n );\n\n return (\n <StyledGrid\n container={{\n cols: '1fr',\n rowGap: 3\n }}\n >\n {!args.renderInPopover && builderJsx}\n\n {args.renderInPopover && (\n <>\n <Button\n ref={buttonRef}\n aria-haspopup\n aria-expanded={isOpen}\n onClick={() => setIsOpen(!isOpen)}\n onKeyDown={hideOnEscape}\n >\n Open Condition builder\n </Button>\n\n <Popover\n show={isOpen}\n ref={setPopoverEl}\n target={buttonRef.current}\n placement='bottom-start'\n >\n <Flex container={{ pad: 1 }}>{builderJsx}</Flex>\n </Popover>\n </>\n )}\n\n <div>\n <Text variant='h4'>Output:</Text>\n <StyledCodeBlock>\n {condition ? JSON.stringify(condition, null, 2) : '(No condition)'}\n </StyledCodeBlock>\n </div>\n\n <div>\n <Text variant='h4'>Formatted Output:</Text>\n <StyledCodeBlock>\n {condition ? formatCondition(condition, demoFields, translate) : '(No condition)'}\n </StyledCodeBlock>\n </div>\n </StyledGrid>\n );\n};\n\nDefaultBuilder.args = {\n validComparators: false,\n disallowNOT: false,\n renderInPopover: false,\n dateFunctions: true\n};\n\nDefaultBuilder.argTypes = {\n validComparators: { control: { type: 'boolean' } },\n disallowNOT: { control: { type: 'boolean' } },\n renderInPopover: { control: { type: 'boolean' } },\n dateFunctions: { control: { type: 'boolean' } }\n};\n\nexport const FieldConditionDemo: Story<ConditionBuilderStoryProps> = (\n args: ConditionBuilderStoryProps\n) => {\n const translate = useI18n();\n const [condition, setCondition] = useState<LeafCondition | undefined>(undefined);\n\n // Set up content for rendering inside a Popover\n const buttonRef = useRef(null); // Ref for the opener button\n const [isOpen, setIsOpen] = useState(false);\n const [popoverEl, setPopoverEl] = useElement<HTMLElement>(null);\n const hidePopover = () => {\n if (isOpen) {\n setIsOpen(false);\n }\n };\n useOuterEvent('mousedown', [popoverEl, buttonRef.current], hidePopover); // Call the method on clicking outside these elements\n const hideOnEscape = (e: KeyboardEvent) => {\n if (e.key === 'Escape') hidePopover(); // Call the method when Escape key is pressed\n };\n\n const builderJsx = (\n <FieldCondition\n targetField='lastActivityAt'\n fields={demoFields}\n condition={condition}\n validComparators={args.validComparators ? demoComparators : undefined}\n validRhsTypes={new Set(['LITERAL', 'FIELD', 'DATE_FUNCTION', 'RELATIVE_DATE'])}\n dateFunctions={args.dateFunctions ? demoDateFunctions : undefined}\n onSubmit={c => {\n hidePopover();\n setCondition(c);\n }}\n />\n );\n\n return (\n <StyledGrid\n container={{\n cols: 'repeat(2, minmax(0, 1fr))',\n justifyItems: 'stretch',\n alignItems: 'start',\n colGap: 4\n }}\n >\n {!args.renderInPopover && builderJsx}\n\n {args.renderInPopover && (\n <>\n <Button\n ref={buttonRef}\n aria-haspopup\n aria-expanded={isOpen}\n onClick={() => setIsOpen(!isOpen)}\n onKeyDown={hideOnEscape}\n >\n Open Condition builder\n </Button>\n\n <Popover\n show={isOpen}\n ref={setPopoverEl}\n target={buttonRef.current}\n placement='bottom-start'\n >\n <Flex container={{ pad: 1 }}>{builderJsx}</Flex>\n </Popover>\n </>\n )}\n\n <div>\n <Text variant='h4'>Output:</Text>\n <StyledCodeBlock>\n {condition ? JSON.stringify(condition, null, 2) : '(No condition)'}\n </StyledCodeBlock>\n\n <Text variant='h4'>Formatted Output:</Text>\n <StyledCodeBlock>\n {condition ? formatCondition({ condition }, demoFields, translate) : '(No condition)'}\n </StyledCodeBlock>\n </div>\n </StyledGrid>\n );\n};\n\nFieldConditionDemo.args = {\n validComparators: false,\n renderInPopover: false,\n dateFunctions: true\n};\n\nFieldConditionDemo.argTypes = {\n validComparators: { control: { type: 'boolean' } },\n renderInPopover: { control: { type: 'boolean' } },\n dateFunctions: { control: { type: 'boolean' } }\n};\n\nexport const AtomicConditionDemo: Story<ConditionBuilderStoryProps> = (\n args: ConditionBuilderStoryProps\n) => {\n const translate = useI18n();\n\n const validRHSTypes: Set<RHSType> = convertRhsTypes(\n !!args.useLiteralRHSType,\n !!args.useFieldRHSType,\n !!args.useRelativeDatesRHSType,\n args.dateFunctions ? demoDateFunctions : undefined\n );\n\n // Story State object to simulate \"submitting\"\n const [submitCondition, setSubmitCondition] = useState<LeafCondition | undefined>(undefined);\n // State needed to use Popover in Story\n const buttonRef = useRef(null); // Ref for the opener button\n const [isOpen, setIsOpen] = useState(false);\n const [popoverEl, setPopoverEl] = useElement<HTMLElement>(null);\n const hidePopover = () => {\n if (isOpen) {\n setIsOpen(false);\n }\n };\n useOuterEvent('mousedown', [popoverEl, buttonRef.current], hidePopover); // Call the method on clicking outside these elements\n const hideOnEscape = (e: KeyboardEvent) => {\n if (e.key === 'Escape') hidePopover(); // Call the method when Escape key is pressed\n };\n\n // State handling needed to manage/use the AtomicCondition component\n const [showErrorIndicators, setShowErrorIndicators] = useState(false);\n const [condition, setCondition] = useState(\n // If editing use the seedCondition, otherwise, determine an initial condition based on the targetField\n () =>\n submitCondition ||\n getInitConditionForLhs(\n { field: 'age' },\n demoFields,\n validRHSTypes,\n args.validComparators ? demoComparators : undefined,\n args.dateFunctions ? demoDateFunctions : undefined\n )\n );\n\n const handleSubmission = () => {\n setShowErrorIndicators(false);\n if (isValidCondition(condition, demoFields, true)) {\n // Insert all \"submit\" logic to use the valid condition that you've created.\n if (args.renderInPopover) setIsOpen(false);\n setSubmitCondition(condition);\n } else {\n setShowErrorIndicators(true);\n }\n };\n\n const atomicConditionJSX = (\n <Flex container={{ direction: 'column', gap: 2 }}>\n <AtomicCondition\n condition={condition}\n fields={demoFields}\n indicateErrors={showErrorIndicators}\n validComparators={args.validComparators ? demoComparators : undefined}\n dateFunctions={args.dateFunctions ? demoDateFunctions : undefined}\n onChange={c => setCondition(c)}\n itemDirection={args.itemDirection}\n showLhsAsLabel={args.showLhsAsLabel}\n validRhsTypes={validRHSTypes}\n />\n <Button variant='primary' onClick={handleSubmission}>\n Submit Condition\n </Button>\n </Flex>\n );\n\n return (\n <StyledGrid\n container={{\n cols: 'repeat(2, minmax(0, 1fr))',\n justifyItems: 'stretch',\n alignItems: 'start',\n colGap: 4\n }}\n >\n {!args.renderInPopover && atomicConditionJSX}\n\n {args.renderInPopover && (\n <>\n <Button\n ref={buttonRef}\n aria-haspopup\n aria-expanded={isOpen}\n onClick={() => setIsOpen(!isOpen)}\n onKeyDown={hideOnEscape}\n >\n {`${isOpen ? 'Close' : 'Open'} Atomic Condition`}\n </Button>\n\n <Popover\n show={isOpen}\n ref={setPopoverEl}\n target={buttonRef.current}\n placement='bottom-start'\n >\n <Flex container={{ pad: 1 }}>{atomicConditionJSX}</Flex>\n </Popover>\n </>\n )}\n <Card>\n <CardContent>\n <Text variant='h4'>Output:</Text>\n <StyledCodeBlock>\n {submitCondition ? JSON.stringify(submitCondition, null, 2) : '(No condition)'}\n </StyledCodeBlock>\n\n <Text variant='h4'>Formatted Output:</Text>\n <StyledCodeBlock>\n {submitCondition\n ? formatCondition({ condition: submitCondition }, demoFields, translate)\n : '(No condition)'}\n </StyledCodeBlock>\n <Flex container={{ gap: 1, direction: 'column' }}>\n <Flex container={{ gap: 1, direction: 'column' }}>\n <Text variant='h2' status='error'>\n validRhsTypes Prop Warning\n </Text>\n <Text>\n There are LHS(Left Hand Side Field)/Comparator pairings that <u>require</u> specific\n RHS(Right Hand Side Value) types. Please be mindful of these incompatibilities when\n limiting RHS value types using this prop. We <b>do not</b> support limiting RHS\n field types to incompatible types and it will result in a validation error if you do\n so. The pairings referred to here are as follows:\n </Text>\n </Flex>\n <StyledList>\n <li>\n BOOLEAN LHS Fields coupled with \"EQ\" or \"NEQ\" comparators, will <u>always yield</u>{' '}\n a Field RHS\n </li>\n <li>\n Any LHS Fields coupled with \"IN\" or \"NOT_IN\" comparators, will <u>always yield</u> a\n Literal RHS (Comma separated list)\n </li>\n </StyledList>\n <Flex container={{ direction: 'column' }}>\n <Text>\n If you would like to limit RHS value types and avoid these incompatibilities, you\n will need to exclude these comparators using the <b>validComparators</b> prop.\n </Text>\n </Flex>\n </Flex>\n </CardContent>\n </Card>\n </StyledGrid>\n );\n};\n\nAtomicConditionDemo.args = {\n validComparators: false,\n renderInPopover: false,\n dateFunctions: true,\n itemDirection: 'column',\n useLiteralRHSType: true,\n useFieldRHSType: true,\n useRelativeDatesRHSType: true,\n showLhsAsLabel: false\n};\n\nAtomicConditionDemo.argTypes = {\n validComparators: { control: { type: 'boolean' } },\n renderInPopover: { control: { type: 'boolean' } },\n dateFunctions: { control: { type: 'boolean' } },\n itemDirection: { options: ['column', 'row'], control: { type: 'select' } },\n useLiteralRHSType: { control: { type: 'boolean' } },\n useFieldRHSType: { control: { type: 'boolean' } },\n useRelativeDatesRHSType: { control: { type: 'boolean' } },\n showLhsAsLabel: { control: { type: 'boolean' } }\n};\n"]}
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ export declare const StyledGrid: import("styled-components").StyledComponent<import("react").FunctionComponent<import("@pega/cosmos-react-core").GridProps & import("@pega/cosmos-react-core").ForwardProps>, import("styled-components").DefaultTheme, {}, never>;
3
+ export declare const StyledCodeBlock: import("styled-components").StyledComponent<"pre", import("styled-components").DefaultTheme, {}, never>;
4
+ export declare const StyledList: import("styled-components").StyledComponent<"ul", import("styled-components").DefaultTheme, {}, never>;
5
+ //# sourceMappingURL=ConditionBuilder.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConditionBuilder.styles.d.ts","sourceRoot":"","sources":["../../../src/condition-builder/ConditionBuilder/ConditionBuilder.styles.ts"],"names":[],"mappings":";AAIA,eAAO,MAAM,UAAU,mOAEtB,CAAC;AAEF,eAAO,MAAM,eAAe,yGAG3B,CAAC;AAGF,eAAO,MAAM,UAAU,wGAEtB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import styled from 'styled-components';
2
+ import { Grid, defaultThemeProp } from '@pega/cosmos-react-core';
3
+ export const StyledGrid = styled(Grid) `
4
+ max-width: 60rem;
5
+ `;
6
+ export const StyledCodeBlock = styled.pre `
7
+ padding: ${props => props.theme.base.spacing};
8
+ margin-bottom: ${props => props.theme.base.spacing};
9
+ `;
10
+ StyledCodeBlock.defaultProps = defaultThemeProp;
11
+ export const StyledList = styled.ul `
12
+ padding-left: calc(4 * ${props => props.theme.base.spacing});
13
+ `;
14
+ StyledList.defaultProps = defaultThemeProp;
15
+ //# sourceMappingURL=ConditionBuilder.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConditionBuilder.styles.js","sourceRoot":"","sources":["../../../src/condition-builder/ConditionBuilder/ConditionBuilder.styles.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;;CAErC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAA;aAC5B,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;mBAC3B,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;CACnD,CAAC;AACF,eAAe,CAAC,YAAY,GAAG,gBAAgB,CAAC;AAEhD,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,EAAE,CAAA;2BACR,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;CAC3D,CAAC;AACF,UAAU,CAAC,YAAY,GAAG,gBAAgB,CAAC","sourcesContent":["import styled from 'styled-components';\n\nimport { Grid, defaultThemeProp } from '@pega/cosmos-react-core';\n\nexport const StyledGrid = styled(Grid)`\n max-width: 60rem;\n`;\n\nexport const StyledCodeBlock = styled.pre`\n padding: ${props => props.theme.base.spacing};\n margin-bottom: ${props => props.theme.base.spacing};\n`;\nStyledCodeBlock.defaultProps = defaultThemeProp;\n\nexport const StyledList = styled.ul`\n padding-left: calc(4 * ${props => props.theme.base.spacing});\n`;\nStyledList.defaultProps = defaultThemeProp;\n"]}
@@ -44,21 +44,21 @@ export const DisabledButtons = () => {
44
44
  </Button>
45
45
  </>);
46
46
  };
47
- export const IconButtons = ({ compact }) => {
47
+ export const IconButtons = (args) => {
48
48
  return (<Flex container={{ alignItems: 'center' }}>
49
- <Button variant='primary' label='Icon button primary' icon compact={compact}>
49
+ <Button variant='primary' label='Icon button primary' icon compact={args.compact}>
50
50
  <Icon name='plus'/>
51
51
  </Button>
52
- <Button variant='secondary' label='Icon button secondary' icon compact={compact}>
52
+ <Button variant='secondary' label='Icon button secondary' icon compact={args.compact}>
53
53
  <Icon name='plus'/>
54
54
  </Button>
55
- <Button variant='simple' label='Icon button simple' icon compact={compact}>
55
+ <Button variant='simple' label='Icon button simple' icon compact={args.compact}>
56
56
  <Icon name='plus'/>
57
57
  </Button>
58
- <Button variant='link' label='Icon button link' icon compact={compact}>
58
+ <Button variant='link' label='Icon button link' icon compact={args.compact}>
59
59
  <Icon name='plus'/>
60
60
  </Button>
61
- <Button variant='text' label='Icon button text' icon compact={compact}>
61
+ <Button variant='text' label='Icon button text' icon compact={args.compact}>
62
62
  <Icon name='plus'/>
63
63
  </Button>
64
64
  </Flex>);
@@ -1 +1 @@
1
- {"version":3,"file":"Button.stories.jsx","sourceRoot":"","sources":["../../../src/core/Button/Button.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Meta, Story } from '@storybook/react';\n\nimport {\n Button,\n ButtonProps,\n Configuration,\n Flex,\n Icon,\n registerIcon\n} from '@pega/cosmos-react-core';\nimport * as plusIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/plus.icon';\nimport BareButton from '@pega/cosmos-react-core/lib/components/Button/BareButton';\n\nregisterIcon(plusIcon);\n\nexport default {\n title: 'Core/Button',\n component: Button,\n parameters: {\n layout: 'centered'\n }\n} as Meta;\n\nexport const ButtonVariants: Story<ButtonProps> = (args: ButtonProps) => {\n return (\n <Button variant={args.variant} compact={args.compact}>\n Click me\n </Button>\n );\n};\n\nButtonVariants.args = {\n variant: 'primary',\n compact: false\n};\n\nButtonVariants.argTypes = {\n variant: {\n options: ['primary', 'secondary', 'simple', 'link', 'text'],\n control: { type: 'select' }\n },\n compact: { control: { type: 'boolean' } }\n};\n\nexport const DisabledButtons = () => {\n return (\n <>\n <Button variant='primary' disabled>\n Primary disabled\n </Button>\n <Button variant='secondary' disabled>\n Secondary disabled\n </Button>\n <Button variant='simple' disabled>\n Simple disabled\n </Button>\n <Button variant='link' disabled>\n Link disabled\n </Button>\n <Button variant='text' disabled>\n Text disabled\n </Button>\n </>\n );\n};\n\nexport const IconButtons: Story<ButtonProps> = ({ compact }: ButtonProps) => {\n return (\n <Flex container={{ alignItems: 'center' }}>\n <Button variant='primary' label='Icon button primary' icon compact={compact}>\n <Icon name='plus' />\n </Button>\n <Button variant='secondary' label='Icon button secondary' icon compact={compact}>\n <Icon name='plus' />\n </Button>\n <Button variant='simple' label='Icon button simple' icon compact={compact}>\n <Icon name='plus' />\n </Button>\n <Button variant='link' label='Icon button link' icon compact={compact}>\n <Icon name='plus' />\n </Button>\n <Button variant='text' label='Icon button text' icon compact={compact}>\n <Icon name='plus' />\n </Button>\n </Flex>\n );\n};\n\nIconButtons.args = {\n compact: false\n};\n\nIconButtons.argTypes = {\n compact: { control: { type: 'boolean' } }\n};\n\nexport const LoadingButtons: Story<ButtonProps> = (args: ButtonProps) => {\n return (\n <Button variant={args.variant} icon={args.icon} label='Loading' loading>\n {args.icon ? <Icon name='plus' /> : 'Loading'}\n </Button>\n );\n};\n\nLoadingButtons.args = {\n variant: 'primary',\n icon: false\n};\n\nLoadingButtons.argTypes = {\n variant: { options: ['primary', 'secondary'], control: { type: 'select' } },\n icon: { control: { type: 'boolean' } }\n};\n\nexport const ButtonAsLink = () => {\n return (\n <Button variant='primary' href='https://www.pega.com' target='_blank'>\n Go to pega.com\n </Button>\n );\n};\n\nexport const BareButtonDemo: Story<ButtonProps> = (args: ButtonProps) => {\n return (\n <BareButton disabled={args.disabled} href={args.href || undefined}>\n Click me\n </BareButton>\n );\n};\n\nBareButtonDemo.args = {\n disabled: false,\n href: ''\n};\n\nBareButtonDemo.argTypes = {\n disabled: { control: { type: 'boolean' } },\n href: { control: { type: 'text' } }\n};\n\ninterface ConfigurableButtonProps {\n borderWidth?: string;\n borderRadius?: number;\n color?: string;\n secondaryColor?: string;\n padding?: string;\n}\n\nexport const ConfigurableButton: Story<ConfigurableButtonProps> = (\n args: ConfigurableButtonProps\n) => {\n return (\n <Configuration\n theme={{\n components: {\n button: {\n 'border-width': args.borderWidth,\n 'border-radius': args.borderRadius,\n color: args.color,\n 'secondary-color': args.secondaryColor,\n padding: args.padding\n }\n }\n }}\n >\n <Button>Configurable Button</Button>\n </Configuration>\n );\n};\n\nConfigurableButton.args = {\n borderWidth: '0.0625rem',\n borderRadius: 9999,\n color: '#076bc9',\n secondaryColor: '#ffffff',\n padding: '0rem 1rem'\n};\n\nConfigurableButton.argTypes = {\n borderWidth: { control: { type: 'text' } },\n borderRadius: { control: { type: 'number' } },\n color: { control: { type: 'color' } },\n secondaryColor: { control: { type: 'color' } },\n padding: { control: { type: 'text' } }\n};\n"]}
1
+ {"version":3,"file":"Button.stories.jsx","sourceRoot":"","sources":["../../../src/core/Button/Button.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Meta, Story } from '@storybook/react';\n\nimport {\n Button,\n ButtonProps,\n Configuration,\n Flex,\n Icon,\n registerIcon\n} from '@pega/cosmos-react-core';\nimport * as plusIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/plus.icon';\nimport BareButton from '@pega/cosmos-react-core/lib/components/Button/BareButton';\n\nregisterIcon(plusIcon);\n\nexport default {\n title: 'Core/Button',\n component: Button,\n parameters: {\n layout: 'centered'\n }\n} as Meta;\n\nexport const ButtonVariants: Story<ButtonProps> = (args: ButtonProps) => {\n return (\n <Button variant={args.variant} compact={args.compact}>\n Click me\n </Button>\n );\n};\n\nButtonVariants.args = {\n variant: 'primary',\n compact: false\n};\n\nButtonVariants.argTypes = {\n variant: {\n options: ['primary', 'secondary', 'simple', 'link', 'text'],\n control: { type: 'select' }\n },\n compact: { control: { type: 'boolean' } }\n};\n\nexport const DisabledButtons = () => {\n return (\n <>\n <Button variant='primary' disabled>\n Primary disabled\n </Button>\n <Button variant='secondary' disabled>\n Secondary disabled\n </Button>\n <Button variant='simple' disabled>\n Simple disabled\n </Button>\n <Button variant='link' disabled>\n Link disabled\n </Button>\n <Button variant='text' disabled>\n Text disabled\n </Button>\n </>\n );\n};\n\nexport const IconButtons: Story<ButtonProps> = (args: ButtonProps) => {\n return (\n <Flex container={{ alignItems: 'center' }}>\n <Button variant='primary' label='Icon button primary' icon compact={args.compact}>\n <Icon name='plus' />\n </Button>\n <Button variant='secondary' label='Icon button secondary' icon compact={args.compact}>\n <Icon name='plus' />\n </Button>\n <Button variant='simple' label='Icon button simple' icon compact={args.compact}>\n <Icon name='plus' />\n </Button>\n <Button variant='link' label='Icon button link' icon compact={args.compact}>\n <Icon name='plus' />\n </Button>\n <Button variant='text' label='Icon button text' icon compact={args.compact}>\n <Icon name='plus' />\n </Button>\n </Flex>\n );\n};\n\nIconButtons.args = {\n compact: false\n};\n\nIconButtons.argTypes = {\n compact: { control: { type: 'boolean' } }\n};\n\nexport const LoadingButtons: Story<ButtonProps> = (args: ButtonProps) => {\n return (\n <Button variant={args.variant} icon={args.icon} label='Loading' loading>\n {args.icon ? <Icon name='plus' /> : 'Loading'}\n </Button>\n );\n};\n\nLoadingButtons.args = {\n variant: 'primary',\n icon: false\n};\n\nLoadingButtons.argTypes = {\n variant: { options: ['primary', 'secondary'], control: { type: 'select' } },\n icon: { control: { type: 'boolean' } }\n};\n\nexport const ButtonAsLink = () => {\n return (\n <Button variant='primary' href='https://www.pega.com' target='_blank'>\n Go to pega.com\n </Button>\n );\n};\n\nexport const BareButtonDemo: Story<ButtonProps> = (args: ButtonProps) => {\n return (\n <BareButton disabled={args.disabled} href={args.href || undefined}>\n Click me\n </BareButton>\n );\n};\n\nBareButtonDemo.args = {\n disabled: false,\n href: ''\n};\n\nBareButtonDemo.argTypes = {\n disabled: { control: { type: 'boolean' } },\n href: { control: { type: 'text' } }\n};\n\ninterface ConfigurableButtonProps {\n borderWidth?: string;\n borderRadius?: number;\n color?: string;\n secondaryColor?: string;\n padding?: string;\n}\n\nexport const ConfigurableButton: Story<ConfigurableButtonProps> = (\n args: ConfigurableButtonProps\n) => {\n return (\n <Configuration\n theme={{\n components: {\n button: {\n 'border-width': args.borderWidth,\n 'border-radius': args.borderRadius,\n color: args.color,\n 'secondary-color': args.secondaryColor,\n padding: args.padding\n }\n }\n }}\n >\n <Button>Configurable Button</Button>\n </Configuration>\n );\n};\n\nConfigurableButton.args = {\n borderWidth: '0.0625rem',\n borderRadius: 9999,\n color: '#076bc9',\n secondaryColor: '#ffffff',\n padding: '0rem 1rem'\n};\n\nConfigurableButton.argTypes = {\n borderWidth: { control: { type: 'text' } },\n borderRadius: { control: { type: 'number' } },\n color: { control: { type: 'color' } },\n secondaryColor: { control: { type: 'color' } },\n padding: { control: { type: 'text' } }\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ColorPicker.stories.d.ts","sourceRoot":"","sources":["../../../src/core/ColorPicker/ColorPicker.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAK/C,OAAO,EAEL,gBAAgB,EAMjB,MAAM,yBAAyB,CAAC;;AAEjC,wBAGU;AAEV,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,gBAAgB,CAoBnD,CAAC;AA0BF,eAAO,MAAM,UAAU,mBAmFtB,CAAC"}
1
+ {"version":3,"file":"ColorPicker.stories.d.ts","sourceRoot":"","sources":["../../../src/core/ColorPicker/ColorPicker.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAAe,gBAAgB,EAA8B,MAAM,yBAAyB,CAAC;;AAIpG,wBAGU;AAEV,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,gBAAgB,CAoBnD,CAAC;AA0BF,eAAO,MAAM,UAAU,mBA2EtB,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import { useMemo, useState } from 'react';
2
- import styled, { css } from 'styled-components';
3
- import { readableColor } from 'polished';
4
- import { ColorPicker, Flex, Grid, Text, tryCatch, useTheme } from '@pega/cosmos-react-core';
2
+ import { ColorPicker, Flex, Grid, Text, useTheme } from '@pega/cosmos-react-core';
3
+ import { StyledColorPane } from './ColorPicker.styles';
5
4
  export default {
6
5
  title: 'Core/ColorPicker',
7
6
  component: ColorPicker
@@ -35,13 +34,6 @@ ColorPickerDemo.argTypes = {
35
34
  readOnly: { control: { type: 'boolean' } }
36
35
  };
37
36
  export const MultiColor = () => {
38
- const StyledColorPane = styled.div(({ color }) => {
39
- const c = tryCatch(() => readableColor(color));
40
- return css `
41
- color: ${c};
42
- background: ${color};
43
- `;
44
- });
45
37
  const { base: { palette } } = useTheme();
46
38
  const opaqueColors = useMemo(() => Object.entries(palette).filter(([, color]) => {
47
39
  return /^#[0-9A-F]{6}$/i.test(color);
@@ -1 +1 @@
1
- {"version":3,"file":"ColorPicker.stories.jsx","sourceRoot":"","sources":["../../../src/core/ColorPicker/ColorPicker.stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EACL,WAAW,EAEX,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACT,MAAM,yBAAyB,CAAC;AAEjC,eAAe;IACb,KAAK,EAAE,kBAAkB;IACzB,SAAS,EAAE,WAAW;CACf,CAAC;AAEV,MAAM,CAAC,MAAM,eAAe,GAA4B,CAAC,IAAsB,EAAE,EAAE;IACjF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IAE9C,OAAO,CACL,CAAC,WAAW,CACV,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAClB,WAAW,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAC9B,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAChB,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CACpB,UAAU,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAC5B,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CACpB,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CACxB,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CACxB,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CACxB,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;YACZ,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC,CAAC,EACF,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,CAAC,IAAI,GAAG;IACrB,KAAK,EAAE,mBAAmB;IAC1B,WAAW,EAAE,KAAK;IAClB,IAAI,EAAE,cAAc;IACpB,MAAM,EAAE,SAAS;IACjB,UAAU,EAAE,KAAK;IACjB,MAAM,EAAE,KAAK;IACb,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE,KAAK;CAChB,CAAC;AAEF,eAAe,CAAC,QAAQ,GAAG;IACzB,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IACpC,WAAW,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC7C,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IACnC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;IAC5F,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC5C,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IACxC,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC1C,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC1C,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;CAC3C,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE;IAC7B,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAoB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QAClE,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QAC/C,OAAO,GAAG,CAAA;eACC,CAAC;oBACI,KAAK;KACpB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,EACJ,IAAI,EAAE,EAAE,OAAO,EAAE,EAClB,GAAG,QAAQ,EAAE,CAAC;IAEf,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CACH,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE;QAC3C,OAAO,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC,CAAC,EACJ,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnF,OAAO,CACL,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAC/D;MAAA,CAAC,IAAI,CACH,SAAS,CAAC,CAAC;YACT,IAAI,EAAE,iBAAiB;YACvB,UAAU,EAAE,QAAQ;YACpB,MAAM,EAAE,CAAC;YACT,MAAM,EAAE,CAAC;SACV,CAAC,CACF,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAE3B;QAAA,EACE;UAAA,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACvB,MAAM,GAAG,GAAG,SAAS,CAAC,EAAE,CAAC;YACzB,OAAO,CACL,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CACZ;gBAAA,CAAC,WAAW,CACV,MAAM,CACN,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC1B,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;oBACZ,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC;oBACvB,SAAS,CAAC,GAAG,CAAC,EAAE;wBACd,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;4BACtB,IAAI,CAAC,KAAK,CAAC;gCAAE,OAAO,QAAQ,CAAC;4BAC7B,OAAO,CAAC,CAAC;wBACX,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,EAEN;cAAA,EAAE,GAAG,CAAC,CACP,CAAC;QACJ,CAAC,CAAC,CACJ;QAAA,GACF;MAAA,EAAE,IAAI,CAEN;;MAAA,CAAC,IAAI,CACH,SAAS,CAAC,CAAC;YACT,IAAI,EAAE,iBAAiB;YACvB,GAAG,EAAE,KAAK;SACX,CAAC,CAEF;QAAA,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACvB,MAAM,GAAG,GAAG,SAAS,CAAC,EAAE,CAAC;YACzB,OAAO,CACL,CAAC,IAAI,CACH,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CACvD,EAAE,CAAC,CAAC,eAAe,CAAC,CACpB,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,GAAG,CAAC,CAAC,GAAG,CAAC,CAET;cAAA,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAC1B;gBAAA,CAAC,KAAK,CACR;cAAA,EAAE,IAAI,CACR;YAAA,EAAE,IAAI,CAAC,CACR,CAAC;QACJ,CAAC,CAAC,CACJ;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { Meta, Story } from '@storybook/react';\nimport { useMemo, useState } from 'react';\nimport styled, { css } from 'styled-components';\nimport { readableColor } from 'polished';\n\nimport {\n ColorPicker,\n ColorPickerProps,\n Flex,\n Grid,\n Text,\n tryCatch,\n useTheme\n} from '@pega/cosmos-react-core';\n\nexport default {\n title: 'Core/ColorPicker',\n component: ColorPicker\n} as Meta;\n\nexport const ColorPickerDemo: Story<ColorPickerProps> = (args: ColorPickerProps) => {\n const [value, setValue] = useState('#10a5ac');\n\n return (\n <ColorPicker\n label={args.label}\n labelHidden={args.labelHidden}\n info={args.info}\n status={args.status}\n swatchOnly={args.swatchOnly}\n inline={args.inline}\n required={args.required}\n disabled={args.disabled}\n readOnly={args.readOnly}\n value={value}\n onChange={e => {\n setValue(e.hex);\n }}\n />\n );\n};\n\nColorPickerDemo.args = {\n label: 'ColorPicker label',\n labelHidden: false,\n info: 'Pick a color',\n status: undefined,\n swatchOnly: false,\n inline: false,\n required: false,\n disabled: false,\n readOnly: false\n};\n\nColorPickerDemo.argTypes = {\n label: { control: { type: 'text' } },\n labelHidden: { control: { type: 'boolean' } },\n info: { control: { type: 'text' } },\n status: { options: [undefined, 'success', 'warning', 'error'], control: { type: 'select' } },\n swatchOnly: { control: { type: 'boolean' } },\n inline: { control: { type: 'boolean' } },\n required: { control: { type: 'boolean' } },\n disabled: { control: { type: 'boolean' } },\n readOnly: { control: { type: 'boolean' } }\n};\n\nexport const MultiColor = () => {\n const StyledColorPane = styled.div<{ color: string }>(({ color }) => {\n const c = tryCatch(() => readableColor(color));\n return css`\n color: ${c};\n background: ${color};\n `;\n });\n\n const {\n base: { palette }\n } = useTheme();\n\n const opaqueColors = useMemo(\n () =>\n Object.entries(palette).filter(([, color]) => {\n return /^#[0-9A-F]{6}$/i.test(color);\n }),\n [palette]\n );\n\n const [values, setValues] = useState(() => opaqueColors.map(([, color]) => color));\n\n return (\n <Grid container={{ rows: '1fr 2fr' }} style={{ height: '100vh' }}>\n <Grid\n container={{\n cols: '1fr 1fr 1fr 1fr',\n alignItems: 'center',\n colGap: 4,\n rowGap: 1\n }}\n style={{ padding: '1rem' }}\n >\n <>\n {values.map((color, i) => {\n const key = `color-${i}`;\n return (\n <div key={key}>\n <ColorPicker\n inline\n label={opaqueColors[i][0]}\n value={color}\n onChange={e => {\n const newColor = e.hex;\n setValues(cur => {\n return cur.map((c, j) => {\n if (i === j) return newColor;\n return c;\n });\n });\n }}\n />\n </div>\n );\n })}\n </>\n </Grid>\n\n <Grid\n container={{\n cols: '1fr 1fr 1fr 1fr',\n gap: 0.125\n }}\n >\n {values.map((color, i) => {\n const key = `color-${i}`;\n return (\n <Flex\n container={{ justify: 'center', alignItems: 'center' }}\n as={StyledColorPane}\n color={color}\n key={key}\n >\n <Text variant='h1' as='span'>\n {color}\n </Text>\n </Flex>\n );\n })}\n </Grid>\n </Grid>\n );\n};\n"]}
1
+ {"version":3,"file":"ColorPicker.stories.jsx","sourceRoot":"","sources":["../../../src/core/ColorPicker/ColorPicker.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Meta, Story } from '@storybook/react';\nimport { useMemo, useState } from 'react';\n\nimport { ColorPicker, ColorPickerProps, Flex, Grid, Text, useTheme } from '@pega/cosmos-react-core';\n\nimport { StyledColorPane } from './ColorPicker.styles';\n\nexport default {\n title: 'Core/ColorPicker',\n component: ColorPicker\n} as Meta;\n\nexport const ColorPickerDemo: Story<ColorPickerProps> = (args: ColorPickerProps) => {\n const [value, setValue] = useState('#10a5ac');\n\n return (\n <ColorPicker\n label={args.label}\n labelHidden={args.labelHidden}\n info={args.info}\n status={args.status}\n swatchOnly={args.swatchOnly}\n inline={args.inline}\n required={args.required}\n disabled={args.disabled}\n readOnly={args.readOnly}\n value={value}\n onChange={e => {\n setValue(e.hex);\n }}\n />\n );\n};\n\nColorPickerDemo.args = {\n label: 'ColorPicker label',\n labelHidden: false,\n info: 'Pick a color',\n status: undefined,\n swatchOnly: false,\n inline: false,\n required: false,\n disabled: false,\n readOnly: false\n};\n\nColorPickerDemo.argTypes = {\n label: { control: { type: 'text' } },\n labelHidden: { control: { type: 'boolean' } },\n info: { control: { type: 'text' } },\n status: { options: [undefined, 'success', 'warning', 'error'], control: { type: 'select' } },\n swatchOnly: { control: { type: 'boolean' } },\n inline: { control: { type: 'boolean' } },\n required: { control: { type: 'boolean' } },\n disabled: { control: { type: 'boolean' } },\n readOnly: { control: { type: 'boolean' } }\n};\n\nexport const MultiColor = () => {\n const {\n base: { palette }\n } = useTheme();\n\n const opaqueColors = useMemo(\n () =>\n Object.entries(palette).filter(([, color]) => {\n return /^#[0-9A-F]{6}$/i.test(color);\n }),\n [palette]\n );\n\n const [values, setValues] = useState(() => opaqueColors.map(([, color]) => color));\n\n return (\n <Grid container={{ rows: '1fr 2fr' }} style={{ height: '100vh' }}>\n <Grid\n container={{\n cols: '1fr 1fr 1fr 1fr',\n alignItems: 'center',\n colGap: 4,\n rowGap: 1\n }}\n style={{ padding: '1rem' }}\n >\n <>\n {values.map((color, i) => {\n const key = `color-${i}`;\n return (\n <div key={key}>\n <ColorPicker\n inline\n label={opaqueColors[i][0]}\n value={color}\n onChange={e => {\n const newColor = e.hex;\n setValues(cur => {\n return cur.map((c, j) => {\n if (i === j) return newColor;\n return c;\n });\n });\n }}\n />\n </div>\n );\n })}\n </>\n </Grid>\n\n <Grid\n container={{\n cols: '1fr 1fr 1fr 1fr',\n gap: 0.125\n }}\n >\n {values.map((color, i) => {\n const key = `color-${i}`;\n return (\n <Flex\n container={{ justify: 'center', alignItems: 'center' }}\n as={StyledColorPane}\n color={color}\n key={key}\n >\n <Text variant='h1' as='span'>\n {color}\n </Text>\n </Flex>\n );\n })}\n </Grid>\n </Grid>\n );\n};\n"]}
@@ -0,0 +1,4 @@
1
+ export declare const StyledColorPane: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {
2
+ color: string;
3
+ }, never>;
4
+ //# sourceMappingURL=ColorPicker.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorPicker.styles.d.ts","sourceRoot":"","sources":["../../../src/core/ColorPicker/ColorPicker.styles.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,eAAe;WAAuB,MAAM;SAMvD,CAAC"}
@@ -0,0 +1,11 @@
1
+ import styled, { css } from 'styled-components';
2
+ import { readableColor } from 'polished';
3
+ import { tryCatch } from '@pega/cosmos-react-core';
4
+ export const StyledColorPane = styled.div(({ color }) => {
5
+ const c = tryCatch(() => readableColor(color));
6
+ return css `
7
+ color: ${c};
8
+ background: ${color};
9
+ `;
10
+ });
11
+ //# sourceMappingURL=ColorPicker.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorPicker.styles.js","sourceRoot":"","sources":["../../../src/core/ColorPicker/ColorPicker.styles.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAoB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IACzE,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/C,OAAO,GAAG,CAAA;aACC,CAAC;kBACI,KAAK;GACpB,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import styled, { css } from 'styled-components';\nimport { readableColor } from 'polished';\n\nimport { tryCatch } from '@pega/cosmos-react-core';\n\nexport const StyledColorPane = styled.div<{ color: string }>(({ color }) => {\n const c = tryCatch(() => readableColor(color));\n return css`\n color: ${c};\n background: ${color};\n `;\n});\n"]}
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ export declare const FlipFlop: ({ flipFlop, first, second }: {
3
+ flipFlop: boolean;
4
+ first: string;
5
+ second: string;
6
+ }) => JSX.Element;
7
+ //# sourceMappingURL=Configuration.mocks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Configuration.mocks.d.ts","sourceRoot":"","sources":["../../../src/core/Configuration/Configuration.mocks.tsx"],"names":[],"mappings":";AAEA,eAAO,MAAM,QAAQ;cAKT,OAAO;WACV,MAAM;YACL,MAAM;iBAWf,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { BoldSpan } from './Configuration.styles';
2
+ export const FlipFlop = ({ flipFlop, first, second }) => {
3
+ return flipFlop ? (<>
4
+ <BoldSpan>{first}</BoldSpan>&nbsp;→ {second}
5
+ </>) : (<>
6
+ {first} ←&nbsp;<BoldSpan>{second}</BoldSpan>
7
+ </>);
8
+ };
9
+ //# sourceMappingURL=Configuration.mocks.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Configuration.mocks.jsx","sourceRoot":"","sources":["../../../src/core/Configuration/Configuration.mocks.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,EACvB,QAAQ,EACR,KAAK,EACL,MAAM,EAKP,EAAE,EAAE;IACH,OAAO,QAAQ,CAAC,CAAC,CAAC,CAChB,EACE;MAAA,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAC7C;IAAA,GAAG,CACJ,CAAC,CAAC,CAAC,CACF,EACE;MAAA,CAAC,KAAK,CAAE,QAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,CAC7C;IAAA,GAAG,CACJ,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { BoldSpan } from './Configuration.styles';\n\nexport const FlipFlop = ({\n flipFlop,\n first,\n second\n}: {\n flipFlop: boolean;\n first: string;\n second: string;\n}) => {\n return flipFlop ? (\n <>\n <BoldSpan>{first}</BoldSpan>&nbsp;→ {second}\n </>\n ) : (\n <>\n {first} ←&nbsp;<BoldSpan>{second}</BoldSpan>\n </>\n );\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Configuration.stories.d.ts","sourceRoot":"","sources":["../../../src/core/Configuration/Configuration.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;;AAoB/C,wBAIU;AAEV,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC;IAAE,KAAK,EAAE,SAAS,GAAG,QAAQ,CAAA;CAAE,CA+B7D,CAAC;AA2CF,eAAO,MAAM,gBAAgB,mBAyE5B,CAAC;AAEF,eAAO,MAAM,qBAAqB,mBAWjC,CAAC;AAEF,UAAU,0BAA0B;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,0BAA0B,CAsBnE,CAAC;AAUF,UAAU,+BAA+B;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,eAAO,MAAM,0BAA0B,EAAE,KAAK,CAAC,+BAA+B,CA2B7E,CAAC;AAYF,UAAU,uBAAuB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,uBAAuB,CAU7D,CAAC;AAUF,UAAU,6BAA6B;IACrC,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,6BAA6B,CAsBzE,CAAC"}
1
+ {"version":3,"file":"Configuration.stories.d.ts","sourceRoot":"","sources":["../../../src/core/Configuration/Configuration.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;;AAsB/C,wBAIU;AAEV,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC;IAAE,KAAK,EAAE,SAAS,GAAG,QAAQ,CAAA;CAAE,CA+B7D,CAAC;AAUF,eAAO,MAAM,gBAAgB,mBAyE5B,CAAC;AAEF,eAAO,MAAM,qBAAqB,mBAWjC,CAAC;AAEF,UAAU,0BAA0B;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,0BAA0B,CAsBnE,CAAC;AAUF,UAAU,+BAA+B;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,eAAO,MAAM,0BAA0B,EAAE,KAAK,CAAC,+BAA+B,CA2B7E,CAAC;AAYF,UAAU,uBAAuB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,uBAAuB,CAU7D,CAAC;AAUF,UAAU,6BAA6B;IACrC,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,6BAA6B,CAsBzE,CAAC"}