@pareto-engineering/design-system 2.0.0-alpha.7 → 2.0.0-alpha.71

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 (545) hide show
  1. package/.env.scripts.example +4 -0
  2. package/.eslintrc.js +25 -1
  3. package/babel.config.js +1 -0
  4. package/dist/cjs/a/{GradientBackground/GradientBackground.js → Alert/Alert.js} +68 -67
  5. package/dist/cjs/{c/SiteFooter/common/Section → a/Alert}/index.js +3 -3
  6. package/dist/cjs/a/Alert/styles.scss +74 -0
  7. package/dist/cjs/{c/BlogContext → a/AppContext}/Context.js +0 -0
  8. package/dist/cjs/a/AppContext/ContextProvider.js +96 -0
  9. package/dist/cjs/{c/BlogContext → a/AppContext}/index.js +13 -5
  10. package/dist/cjs/{c/BlogContext/useBlog.js → a/AppContext/useApp.js} +0 -0
  11. package/dist/cjs/a/AppContext/useTheme.js +45 -0
  12. package/dist/cjs/{c/SiteFooter/common/Section/Section.js → a/BackgroundGradient/BackgroundGradient.js} +20 -38
  13. package/dist/cjs/a/BackgroundGradient/index.js +15 -0
  14. package/dist/cjs/a/BackgroundGradient/styles.scss +16 -0
  15. package/dist/cjs/{experimental/GradientBackground/GradientBackground.js → a/ColumnLabel/ColumnLabel.js} +32 -30
  16. package/dist/cjs/{c/SiteMission → a/ColumnLabel}/index.js +3 -3
  17. package/dist/cjs/a/ColumnLabel/styles.scss +22 -0
  18. package/dist/cjs/{c/TeamGallery/common/PersonCard/PersonCard.js → a/ContentTree/ContentTree.js} +28 -29
  19. package/dist/cjs/a/ContentTree/common/Tree/Tree.js +116 -0
  20. package/dist/cjs/{c/BlogPostsList/common/Card → a/ContentTree/common/Tree}/index.js +3 -3
  21. package/dist/cjs/a/ContentTree/common/index.js +31 -0
  22. package/dist/cjs/a/ContentTree/common/useContentTree.js +82 -0
  23. package/dist/cjs/a/ContentTree/common/useFirstVisibleNode.js +65 -0
  24. package/dist/cjs/{c/SitePricing → a/ContentTree}/index.js +3 -3
  25. package/dist/cjs/a/ContentTree/styles.scss +33 -0
  26. package/dist/cjs/a/Conversation/Conversation.js +14 -8
  27. package/dist/cjs/a/Conversation/common/Message/Message.js +32 -6
  28. package/dist/cjs/a/Conversation/styles.scss +132 -33
  29. package/dist/cjs/{c/SiteFooter/SiteFooter.js → a/Label/Label.js} +28 -14
  30. package/dist/cjs/{f/fields/TextArea → a/Label}/index.js +3 -3
  31. package/dist/cjs/a/Label/styles.scss +34 -0
  32. package/dist/cjs/a/ModalContextProvider/Context.js +16 -0
  33. package/dist/cjs/{c/BlogContext/ContextProvider.js → a/ModalContextProvider/ModalContextProvider.js} +27 -25
  34. package/dist/cjs/a/ModalContextProvider/common/ModalRoot/ModalRoot.js +53 -0
  35. package/dist/cjs/a/ModalContextProvider/common/ModalRoot/index.js +15 -0
  36. package/dist/cjs/a/ModalContextProvider/common/ModalRoot/styles.scss +14 -0
  37. package/dist/cjs/{c/BlogPostsList → a/ModalContextProvider}/common/index.js +3 -3
  38. package/dist/cjs/a/ModalContextProvider/index.js +31 -0
  39. package/dist/cjs/a/ModalContextProvider/useModal.js +16 -0
  40. package/dist/cjs/a/OvalIllustration/OvalIllustration.js +35 -4
  41. package/dist/cjs/a/OvalIllustration/styles.scss +13 -16
  42. package/dist/cjs/{c/AcceptCookies/AcceptCookies.js → a/Popover/Popover.js} +57 -57
  43. package/dist/cjs/{c/BlogPost → a/Popover}/index.js +3 -3
  44. package/dist/cjs/a/Popover/styles.scss +33 -0
  45. package/dist/cjs/a/Shapes/Shapes.js +9 -1
  46. package/dist/cjs/a/Shapes/styles.scss +42 -9
  47. package/dist/cjs/{c/BlogPostsList/BlogPostsList.js → a/SnapScroller/SnapScroller.js} +15 -11
  48. package/dist/cjs/{c/SiteFooter → a/SnapScroller}/index.js +3 -3
  49. package/dist/cjs/a/SnapScroller/styles.scss +38 -0
  50. package/dist/cjs/a/index.js +57 -9
  51. package/dist/cjs/b/Button/Button.js +10 -4
  52. package/dist/cjs/b/Button/styles.scss +55 -10
  53. package/dist/cjs/b/Logo/Logo.js +41 -41
  54. package/dist/cjs/b/Logo/styles.scss +0 -138
  55. package/dist/cjs/b/Page/common/PageHelmet/PageHelmet.js +1 -1
  56. package/dist/cjs/b/Page/common/Section/Section.js +17 -3
  57. package/dist/cjs/b/SocialMediaButton/SocialMediaButton.js +4 -4
  58. package/dist/cjs/b/ThemeSelector/ThemeSelector.js +1 -1
  59. package/dist/cjs/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.js +16 -9
  60. package/dist/cjs/c/ContentSlides/common/Navigator/Navigator.js +4 -3
  61. package/dist/cjs/c/ContentSlides/styles.scss +10 -4
  62. package/dist/cjs/c/{TeamGallery/TeamGallery.js → Modal/Modal.js} +32 -16
  63. package/dist/cjs/c/Modal/common/ModalHeader/ModalHeader.js +88 -0
  64. package/dist/cjs/c/{TeamGallery → Modal/common/ModalHeader}/index.js +3 -3
  65. package/dist/cjs/c/{TeamGallery → Modal}/common/index.js +3 -3
  66. package/dist/cjs/c/Modal/index.js +15 -0
  67. package/dist/cjs/c/Modal/styles.scss +46 -0
  68. package/dist/cjs/c/{BlogContext/BlogContextProvider.js → ModalButton/ModalButton.js} +28 -25
  69. package/dist/cjs/c/ModalButton/index.js +15 -0
  70. package/dist/cjs/c/{SiteMission/SiteMission.js → ObjectButton/ObjectButton.js} +59 -43
  71. package/dist/cjs/c/ObjectButton/index.js +15 -0
  72. package/dist/cjs/c/ObjectButton/styles.scss +52 -0
  73. package/dist/cjs/c/{SiteHeaderCTA/SiteHeaderCTA.js → SocialMediaShareButton/SocialMediaShareButton.js} +46 -43
  74. package/dist/cjs/c/SocialMediaShareButton/index.js +15 -0
  75. package/dist/cjs/c/SocialMediaShareButton/styles.scss +39 -0
  76. package/dist/cjs/c/index.js +17 -1
  77. package/dist/cjs/d/Modal/Modal.js +94 -0
  78. package/dist/cjs/d/Modal/common/ModalFooter/ModalFooter.js +77 -0
  79. package/dist/cjs/d/Modal/common/ModalFooter/index.js +15 -0
  80. package/dist/cjs/d/Modal/common/ModalHeader/ModalHeader.js +79 -0
  81. package/dist/cjs/d/Modal/common/ModalHeader/index.js +15 -0
  82. package/dist/cjs/d/Modal/common/index.js +21 -0
  83. package/dist/cjs/d/Modal/index.js +15 -0
  84. package/dist/cjs/d/Modal/styles.scss +52 -0
  85. package/dist/cjs/f/FormInput/FormInput.js +40 -3
  86. package/dist/cjs/f/FormInput/styles.scss +11 -0
  87. package/dist/cjs/f/common/Debugger/Debugger.js +1 -1
  88. package/dist/cjs/f/common/Description/Description.js +20 -14
  89. package/dist/cjs/f/common/Label/Label.js +11 -5
  90. package/dist/cjs/f/common/Label/styles.scss +2 -5
  91. package/dist/cjs/f/fields/{TaskRecommendation/TaskRecommendation.js → Checkbox/Checkbox.js} +36 -48
  92. package/dist/cjs/f/fields/Checkbox/index.js +15 -0
  93. package/dist/cjs/f/fields/Checkbox/styles.scss +14 -0
  94. package/dist/cjs/f/fields/ChoicesInput/ChoicesInput.js +11 -4
  95. package/dist/cjs/f/fields/ChoicesInput/common/Choice/Choice.js +5 -2
  96. package/dist/cjs/f/fields/ChoicesInput/styles.scss +17 -2
  97. package/dist/cjs/f/fields/QueryChoices/QueryChoices.js +168 -0
  98. package/dist/cjs/{c/SiteServices → f/fields/QueryChoices}/index.js +3 -3
  99. package/dist/cjs/f/fields/QueryCombobox/QueryCombobox.js +251 -0
  100. package/dist/cjs/f/fields/QueryCombobox/common/Combobox/Combobox.js +229 -0
  101. package/dist/cjs/f/fields/QueryCombobox/common/Combobox/index.js +15 -0
  102. package/dist/cjs/{c/BlogCategoryButton/BlogCategoryButton.js → f/fields/QueryCombobox/common/Menu/Menu.js} +39 -31
  103. package/dist/cjs/f/fields/QueryCombobox/common/Menu/index.js +15 -0
  104. package/dist/cjs/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +326 -0
  105. package/dist/cjs/f/fields/QueryCombobox/common/MultipleCombobox/index.js +15 -0
  106. package/dist/cjs/f/fields/QueryCombobox/common/index.js +29 -0
  107. package/dist/cjs/{c/AcceptCookies → f/fields/QueryCombobox}/index.js +3 -3
  108. package/dist/cjs/f/fields/QueryCombobox/styles.scss +91 -0
  109. package/dist/cjs/f/fields/QuerySelect/QuerySelect.js +217 -0
  110. package/dist/cjs/f/fields/QuerySelect/index.js +15 -0
  111. package/dist/cjs/f/fields/RatingsInput/RatingsInput.js +39 -6
  112. package/dist/cjs/f/fields/RatingsInput/common/Rating/Rating.js +11 -2
  113. package/dist/cjs/f/fields/RatingsInput/styles.scss +29 -20
  114. package/dist/cjs/f/fields/SelectInput/SelectInput.js +67 -15
  115. package/dist/cjs/f/fields/SelectInput/styles.scss +33 -13
  116. package/dist/cjs/f/fields/TaskRecommendationInput/TaskRecommendationInput.js +2 -2
  117. package/dist/cjs/f/fields/TaskRecommendationInput/styles.scss +0 -4
  118. package/dist/cjs/f/fields/TextInput/TextInput.js +50 -13
  119. package/dist/cjs/f/fields/TextInput/styles.scss +16 -7
  120. package/dist/cjs/f/fields/TextareaInput/TextareaInput.js +48 -15
  121. package/dist/cjs/f/fields/TextareaInput/styles.scss +19 -6
  122. package/dist/cjs/f/fields/index.js +26 -18
  123. package/dist/cjs/form-reset.scss +1 -1
  124. package/dist/cjs/index.js +26 -0
  125. package/dist/cjs/test/QueryLoader/QueryLoader.js +41 -0
  126. package/dist/cjs/test/QueryLoader/__generated__/QueryLoaderHelloQuery.graphql.js +71 -0
  127. package/dist/cjs/test/QueryLoader/common/PreloadedTestData/PreloadedTestData.js +49 -0
  128. package/dist/cjs/test/QueryLoader/common/PreloadedTestData/index.js +15 -0
  129. package/dist/cjs/test/QueryLoader/common/index.js +13 -0
  130. package/dist/cjs/test/QueryLoader/index.js +15 -0
  131. package/dist/cjs/{c/SiteFooter/common → test}/index.js +3 -3
  132. package/dist/cjs/utils/hooks/index.js +23 -0
  133. package/dist/cjs/utils/hooks/useDynamicPosition.js +107 -0
  134. package/dist/cjs/utils/hooks/useWindowSize.js +39 -0
  135. package/dist/cjs/utils/index.js +19 -0
  136. package/dist/cjs/utils/relay/EnvironmentProvider.js +23 -0
  137. package/dist/cjs/utils/relay/environment.js +12 -0
  138. package/dist/cjs/utils/relay/index.js +39 -0
  139. package/dist/cjs/utils/relay/mockRelayOperation.js +23 -0
  140. package/dist/cjs/utils/relay/mockResolvers.js +282 -0
  141. package/dist/es/a/Alert/Alert.js +118 -0
  142. package/dist/es/{c/SiteFooter/common/Section → a/Alert}/index.js +1 -1
  143. package/dist/es/a/Alert/styles.scss +74 -0
  144. package/dist/es/{c/BlogContext → a/AppContext}/Context.js +0 -0
  145. package/dist/es/a/AppContext/ContextProvider.js +78 -0
  146. package/dist/es/a/AppContext/index.js +5 -0
  147. package/dist/es/{c/BlogContext/useBlog.js → a/AppContext/useApp.js} +0 -0
  148. package/dist/es/a/AppContext/useTheme.js +34 -0
  149. package/dist/es/{c/SiteFooter/SiteFooter.js → a/BackgroundGradient/BackgroundGradient.js} +14 -15
  150. package/dist/es/a/BackgroundGradient/index.js +2 -0
  151. package/dist/es/a/BackgroundGradient/styles.scss +16 -0
  152. package/dist/es/a/ColumnLabel/ColumnLabel.js +78 -0
  153. package/dist/es/a/ColumnLabel/index.js +2 -0
  154. package/dist/es/a/ColumnLabel/styles.scss +22 -0
  155. package/dist/es/a/ContentTree/ContentTree.js +67 -0
  156. package/dist/es/a/ContentTree/common/Tree/Tree.js +98 -0
  157. package/dist/es/{c/BlogPostsList/common/Card → a/ContentTree/common/Tree}/index.js +1 -1
  158. package/dist/es/a/ContentTree/common/index.js +3 -0
  159. package/dist/es/a/ContentTree/common/useContentTree.js +74 -0
  160. package/dist/es/a/ContentTree/common/useFirstVisibleNode.js +54 -0
  161. package/dist/es/a/ContentTree/index.js +2 -0
  162. package/dist/es/a/ContentTree/styles.scss +33 -0
  163. package/dist/es/a/Conversation/Conversation.js +14 -8
  164. package/dist/es/a/Conversation/common/Message/Message.js +32 -6
  165. package/dist/es/a/Conversation/styles.scss +132 -33
  166. package/dist/es/{c/TeamGallery/TeamGallery.js → a/Label/Label.js} +30 -23
  167. package/dist/es/{f/fields/TextArea → a/Label}/index.js +1 -1
  168. package/dist/es/a/Label/styles.scss +34 -0
  169. package/dist/es/a/ModalContextProvider/Context.js +2 -0
  170. package/dist/es/a/ModalContextProvider/ModalContextProvider.js +47 -0
  171. package/dist/es/a/ModalContextProvider/common/ModalRoot/ModalRoot.js +36 -0
  172. package/dist/es/a/ModalContextProvider/common/ModalRoot/index.js +2 -0
  173. package/dist/es/a/ModalContextProvider/common/ModalRoot/styles.scss +14 -0
  174. package/dist/es/{c/BlogPost → a/ModalContextProvider/common}/index.js +1 -1
  175. package/dist/es/a/ModalContextProvider/index.js +4 -0
  176. package/dist/es/a/ModalContextProvider/useModal.js +3 -0
  177. package/dist/es/a/OvalIllustration/OvalIllustration.js +29 -4
  178. package/dist/es/a/OvalIllustration/styles.scss +13 -16
  179. package/dist/es/a/Popover/Popover.js +118 -0
  180. package/dist/es/a/Popover/index.js +2 -0
  181. package/dist/es/a/Popover/styles.scss +33 -0
  182. package/dist/es/a/Shapes/Shapes.js +9 -1
  183. package/dist/es/a/Shapes/styles.scss +42 -9
  184. package/dist/es/{c/BlogPostsList/BlogPostsList.js → a/SnapScroller/SnapScroller.js} +16 -11
  185. package/dist/es/a/SnapScroller/index.js +2 -0
  186. package/dist/es/a/SnapScroller/styles.scss +38 -0
  187. package/dist/es/a/index.js +8 -2
  188. package/dist/es/b/Button/Button.js +8 -2
  189. package/dist/es/b/Button/styles.scss +55 -10
  190. package/dist/es/b/Logo/Logo.js +41 -41
  191. package/dist/es/b/Logo/styles.scss +0 -138
  192. package/dist/es/b/Page/common/PageHelmet/PageHelmet.js +2 -2
  193. package/dist/es/b/Page/common/Section/Section.js +17 -3
  194. package/dist/es/b/SocialMediaButton/SocialMediaButton.js +5 -5
  195. package/dist/es/b/ThemeSelector/ThemeSelector.js +2 -2
  196. package/dist/es/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.js +16 -9
  197. package/dist/es/c/ContentSlides/common/Navigator/Navigator.js +4 -3
  198. package/dist/es/c/ContentSlides/styles.scss +10 -4
  199. package/dist/es/c/Modal/Modal.js +79 -0
  200. package/dist/es/c/Modal/common/ModalHeader/ModalHeader.js +67 -0
  201. package/dist/es/c/Modal/common/ModalHeader/index.js +1 -0
  202. package/dist/es/c/Modal/common/index.js +1 -0
  203. package/dist/es/c/Modal/index.js +2 -0
  204. package/dist/es/c/Modal/styles.scss +46 -0
  205. package/dist/es/c/ModalButton/ModalButton.js +48 -0
  206. package/dist/es/c/ModalButton/index.js +2 -0
  207. package/dist/es/c/ObjectButton/ObjectButton.js +111 -0
  208. package/dist/es/c/ObjectButton/index.js +2 -0
  209. package/dist/es/c/ObjectButton/styles.scss +52 -0
  210. package/dist/es/c/SocialMediaShareButton/SocialMediaShareButton.js +95 -0
  211. package/dist/es/c/SocialMediaShareButton/index.js +2 -0
  212. package/dist/es/c/SocialMediaShareButton/styles.scss +39 -0
  213. package/dist/es/c/index.js +3 -1
  214. package/dist/es/d/Modal/Modal.js +77 -0
  215. package/dist/es/d/Modal/common/ModalFooter/ModalFooter.js +56 -0
  216. package/dist/es/d/Modal/common/ModalFooter/index.js +1 -0
  217. package/dist/es/d/Modal/common/ModalHeader/ModalHeader.js +60 -0
  218. package/dist/es/d/Modal/common/ModalHeader/index.js +1 -0
  219. package/dist/es/d/Modal/common/index.js +2 -0
  220. package/dist/es/d/Modal/index.js +2 -0
  221. package/dist/es/d/Modal/styles.scss +52 -0
  222. package/dist/es/f/FormInput/FormInput.js +40 -3
  223. package/dist/es/f/FormInput/styles.scss +11 -0
  224. package/dist/es/f/common/Debugger/Debugger.js +1 -1
  225. package/dist/es/f/common/Description/Description.js +19 -14
  226. package/dist/es/f/common/Label/Label.js +11 -5
  227. package/dist/es/f/common/Label/styles.scss +2 -5
  228. package/dist/es/f/fields/Checkbox/Checkbox.js +99 -0
  229. package/dist/es/f/fields/Checkbox/index.js +2 -0
  230. package/dist/es/f/fields/Checkbox/styles.scss +14 -0
  231. package/dist/es/f/fields/ChoicesInput/ChoicesInput.js +11 -4
  232. package/dist/es/f/fields/ChoicesInput/common/Choice/Choice.js +5 -2
  233. package/dist/es/f/fields/ChoicesInput/styles.scss +17 -2
  234. package/dist/es/f/fields/QueryChoices/QueryChoices.js +137 -0
  235. package/dist/es/f/fields/QueryChoices/index.js +2 -0
  236. package/dist/es/f/fields/QueryCombobox/QueryCombobox.js +228 -0
  237. package/dist/es/f/fields/QueryCombobox/common/Combobox/Combobox.js +208 -0
  238. package/dist/es/f/fields/QueryCombobox/common/Combobox/index.js +2 -0
  239. package/dist/es/f/fields/QueryCombobox/common/Menu/Menu.js +77 -0
  240. package/dist/es/f/fields/QueryCombobox/common/Menu/index.js +2 -0
  241. package/dist/es/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +298 -0
  242. package/dist/es/f/fields/QueryCombobox/common/MultipleCombobox/index.js +2 -0
  243. package/dist/es/f/fields/QueryCombobox/common/index.js +3 -0
  244. package/dist/es/f/fields/QueryCombobox/index.js +2 -0
  245. package/dist/es/f/fields/QueryCombobox/styles.scss +91 -0
  246. package/dist/es/f/fields/QuerySelect/QuerySelect.js +195 -0
  247. package/dist/es/f/fields/QuerySelect/index.js +2 -0
  248. package/dist/es/f/fields/RatingsInput/RatingsInput.js +38 -6
  249. package/dist/es/f/fields/RatingsInput/common/Rating/Rating.js +11 -2
  250. package/dist/es/f/fields/RatingsInput/styles.scss +29 -20
  251. package/dist/es/f/fields/SelectInput/SelectInput.js +66 -15
  252. package/dist/es/f/fields/SelectInput/styles.scss +33 -13
  253. package/dist/es/f/fields/TaskRecommendationInput/TaskRecommendationInput.js +2 -2
  254. package/dist/es/f/fields/TaskRecommendationInput/styles.scss +0 -4
  255. package/dist/es/f/fields/TextInput/TextInput.js +50 -13
  256. package/dist/es/f/fields/TextInput/styles.scss +16 -7
  257. package/dist/es/f/fields/TextareaInput/TextareaInput.js +48 -15
  258. package/dist/es/f/fields/TextareaInput/styles.scss +19 -6
  259. package/dist/es/f/fields/index.js +5 -4
  260. package/dist/es/form-reset.scss +1 -1
  261. package/dist/es/index.js +3 -1
  262. package/dist/es/test/QueryLoader/QueryLoader.js +29 -0
  263. package/dist/es/test/QueryLoader/__generated__/QueryLoaderHelloQuery.graphql.js +71 -0
  264. package/dist/es/test/QueryLoader/common/PreloadedTestData/PreloadedTestData.js +31 -0
  265. package/dist/es/test/QueryLoader/common/PreloadedTestData/index.js +2 -0
  266. package/dist/es/test/QueryLoader/common/index.js +1 -0
  267. package/dist/es/test/QueryLoader/index.js +2 -0
  268. package/dist/es/test/index.js +1 -0
  269. package/dist/es/utils/hooks/index.js +2 -0
  270. package/dist/es/utils/hooks/useDynamicPosition.js +93 -0
  271. package/dist/es/utils/hooks/useWindowSize.js +27 -0
  272. package/dist/es/utils/index.js +1 -0
  273. package/dist/es/utils/relay/EnvironmentProvider.js +11 -0
  274. package/dist/es/utils/relay/environment.js +3 -0
  275. package/dist/es/utils/relay/index.js +4 -0
  276. package/dist/es/utils/relay/mockRelayOperation.js +9 -0
  277. package/dist/es/utils/relay/mockResolvers.js +275 -0
  278. package/package.json +18 -4
  279. package/relay.config.js +12 -0
  280. package/schema.graphql +4075 -0
  281. package/scripts/fetchSchema.js +74 -0
  282. package/src/__snapshots__/Storyshots.test.js.snap +13640 -7189
  283. package/src/local.scss +4 -2
  284. package/src/stories/StyleGuide/Sprites.stories.mdx +25 -0
  285. package/src/stories/StyleGuide/helpers.js +16 -0
  286. package/src/stories/a/Alert.stories.jsx +75 -0
  287. package/src/stories/a/{SiteContext.stories.jsx → AppContext.stories.jsx} +8 -8
  288. package/src/stories/a/BackgroundGradient.stories.jsx +38 -0
  289. package/src/stories/a/ContentTree.stories.jsx +662 -0
  290. package/src/stories/a/Conversation.stories.jsx +78 -1
  291. package/src/stories/a/DotInfo.stories.jsx +14 -13
  292. package/src/stories/a/Label.stories.jsx +49 -0
  293. package/src/stories/a/OvalIllustration.stories.jsx +39 -16
  294. package/src/stories/a/Popover.stories.jsx +106 -0
  295. package/src/stories/a/ProgressBar.stories.jsx +16 -7
  296. package/src/stories/a/Shapes.stories.jsx +18 -0
  297. package/src/stories/a/SnapScroller.stories.jsx +98 -0
  298. package/src/stories/a/Timestamp.stories.jsx +35 -39
  299. package/src/stories/b/Button.stories.jsx +27 -4
  300. package/src/stories/b/Logo.stories.jsx +23 -14
  301. package/src/stories/b/Page.stories.jsx +25 -1
  302. package/src/stories/b/QuestionDropdown.stories.jsx +20 -30
  303. package/src/stories/b/SocialMediaButton.stories.jsx +36 -53
  304. package/src/stories/b/ThemeSelector.stories.jsx +5 -5
  305. package/src/stories/b/Title.stories.jsx +13 -15
  306. package/src/stories/c/ContentSlides.stories.jsx +35 -151
  307. package/src/stories/c/Modal.stories.jsx +67 -0
  308. package/src/stories/c/Shortener.stories.jsx +9 -3
  309. package/src/stories/c/SocialMediaShareButton.stories.jsx +33 -0
  310. package/src/stories/f/Checkbox.stories.jsx +95 -0
  311. package/src/stories/f/ChoicesInput.stories.jsx +100 -128
  312. package/src/stories/f/Description.stories.jsx +22 -4
  313. package/src/stories/f/FormInput.stories.jsx +264 -0
  314. package/src/stories/f/Label.stories.jsx +8 -3
  315. package/src/stories/f/QueryChoices.stories.jsx +135 -0
  316. package/src/stories/f/QueryCombobox.stories.jsx +279 -0
  317. package/src/stories/f/QuerySelect.stories.jsx +142 -0
  318. package/src/stories/f/RatingsInput.stories.jsx +36 -22
  319. package/src/stories/f/SelectInput.stories.jsx +48 -49
  320. package/src/stories/f/TextInput.stories.jsx +70 -43
  321. package/src/stories/f/TextareaInput.stories.jsx +70 -19
  322. package/src/stories/f/__generated__/FormInputAllTaskStatusesQuery.graphql.js +122 -0
  323. package/src/stories/f/__generated__/FormInputAllTeamsQuery.graphql.js +139 -0
  324. package/src/stories/f/__generated__/QueryChoicesAllTaskStatusesQuery.graphql.js +122 -0
  325. package/src/stories/f/__generated__/QueryChoicesUserChoicesQuery.graphql.js +122 -0
  326. package/src/stories/f/__generated__/QueryComboboxAllTeamsQuery.graphql.js +139 -0
  327. package/src/stories/f/__generated__/QuerySelectAllTaskStatusesQuery.graphql.js +122 -0
  328. package/src/stories/test/QueryLoader.stories.jsx +36 -0
  329. package/src/stories/utils/generateNodeId.js +12 -0
  330. package/src/stories/utils/lorem.js +15 -0
  331. package/src/stories/utils/relay/EnvironmentProvider.jsx +14 -0
  332. package/src/stories/utils/relay/environment.js +5 -0
  333. package/src/stories/utils/relay/index.js +4 -0
  334. package/src/stories/utils/relay/mockRelayOperation.js +14 -0
  335. package/src/stories/utils/relay/mockResolvers.js +299 -0
  336. package/src/stories/utils/testData.js +63 -0
  337. package/src/ui/a/Alert/Alert.jsx +144 -0
  338. package/src/ui/a/Alert/index.js +2 -0
  339. package/src/ui/a/Alert/styles.scss +74 -0
  340. package/src/ui/a/{SiteContext → AppContext}/Context.js +0 -0
  341. package/src/ui/a/{SiteContext → AppContext}/ContextProvider.jsx +8 -7
  342. package/src/ui/a/AppContext/index.js +5 -0
  343. package/src/ui/a/{SiteContext/useSite.js → AppContext/useApp.js} +0 -0
  344. package/src/ui/a/{SiteContext → AppContext}/useTheme.js +0 -0
  345. package/src/ui/a/BackgroundGradient/BackgroundGradient.jsx +76 -0
  346. package/src/ui/a/BackgroundGradient/index.js +2 -0
  347. package/src/ui/a/BackgroundGradient/styles.scss +16 -0
  348. package/src/ui/a/ContentTree/ContentTree.jsx +88 -0
  349. package/src/ui/a/ContentTree/common/Tree/Tree.jsx +138 -0
  350. package/src/ui/a/ContentTree/common/Tree/index.js +2 -0
  351. package/src/ui/a/ContentTree/common/index.js +3 -0
  352. package/src/ui/a/ContentTree/common/useContentTree.js +83 -0
  353. package/src/ui/a/ContentTree/common/useFirstVisibleNode.js +59 -0
  354. package/src/ui/a/ContentTree/index.js +2 -0
  355. package/src/ui/a/ContentTree/styles.scss +33 -0
  356. package/src/ui/a/Conversation/Conversation.jsx +15 -7
  357. package/src/ui/a/Conversation/common/Message/Message.jsx +38 -6
  358. package/src/ui/a/Conversation/styles.scss +132 -33
  359. package/src/ui/a/Label/Label.jsx +93 -0
  360. package/src/ui/a/Label/index.js +2 -0
  361. package/src/ui/a/Label/styles.scss +34 -0
  362. package/src/ui/a/OvalIllustration/OvalIllustration.jsx +28 -2
  363. package/src/ui/a/OvalIllustration/styles.scss +13 -16
  364. package/src/ui/a/Popover/Popover.jsx +157 -0
  365. package/src/ui/a/Popover/index.js +2 -0
  366. package/src/ui/a/Popover/styles.scss +33 -0
  367. package/src/ui/a/Shapes/Shapes.jsx +10 -0
  368. package/src/ui/a/Shapes/styles.scss +42 -9
  369. package/src/ui/a/SnapScroller/SnapScroller.jsx +83 -0
  370. package/src/ui/a/SnapScroller/index.js +2 -0
  371. package/src/ui/a/SnapScroller/styles.scss +38 -0
  372. package/src/ui/a/index.js +10 -4
  373. package/src/ui/b/Button/Button.jsx +9 -1
  374. package/src/ui/b/Button/styles.scss +55 -10
  375. package/src/ui/b/Logo/Logo.jsx +41 -41
  376. package/src/ui/b/Logo/styles.scss +0 -138
  377. package/src/ui/b/Page/common/PageHelmet/PageHelmet.jsx +2 -2
  378. package/src/ui/b/Page/common/Section/Section.jsx +19 -2
  379. package/src/ui/b/SocialMediaButton/SocialMediaButton.jsx +4 -4
  380. package/src/ui/b/ThemeSelector/ThemeSelector.jsx +2 -2
  381. package/src/ui/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.jsx +12 -5
  382. package/src/ui/c/ContentSlides/common/Navigator/Navigator.jsx +3 -2
  383. package/src/ui/c/ContentSlides/styles.scss +10 -4
  384. package/src/ui/{f/fields/RadioInput/RadioInput.jsx → c/Modal/Modal.jsx} +25 -36
  385. package/src/ui/c/Modal/common/ModalHeader/ModalHeader.jsx +89 -0
  386. package/src/ui/c/Modal/common/ModalHeader/index.js +1 -0
  387. package/src/ui/c/Modal/common/index.js +1 -0
  388. package/src/ui/c/Modal/index.js +2 -0
  389. package/src/ui/c/Modal/styles.scss +46 -0
  390. package/src/ui/c/SocialMediaShareButton/SocialMediaShareButton.jsx +121 -0
  391. package/src/ui/c/SocialMediaShareButton/index.js +2 -0
  392. package/src/ui/c/SocialMediaShareButton/styles.scss +39 -0
  393. package/src/ui/c/index.js +2 -0
  394. package/src/ui/f/FormInput/FormInput.jsx +61 -1
  395. package/src/ui/f/FormInput/styles.scss +11 -0
  396. package/src/ui/f/common/Debugger/Debugger.jsx +1 -1
  397. package/src/ui/f/common/Description/Description.jsx +34 -29
  398. package/src/ui/f/common/Label/Label.jsx +10 -4
  399. package/src/ui/f/common/Label/styles.scss +2 -5
  400. package/src/ui/f/fields/{CheckboxInput/CheckboxInput.jsx → Checkbox/Checkbox.jsx} +43 -32
  401. package/src/ui/f/fields/Checkbox/index.js +2 -0
  402. package/src/ui/f/fields/Checkbox/styles.scss +14 -0
  403. package/src/ui/f/fields/ChoicesInput/ChoicesInput.jsx +9 -3
  404. package/src/ui/f/fields/ChoicesInput/common/Choice/Choice.jsx +10 -2
  405. package/src/ui/f/fields/ChoicesInput/styles.scss +17 -2
  406. package/src/ui/f/fields/QueryChoices/QueryChoices.jsx +153 -0
  407. package/src/ui/f/fields/QueryChoices/index.js +2 -0
  408. package/src/ui/f/fields/QueryCombobox/QueryCombobox.jsx +240 -0
  409. package/src/ui/f/fields/QueryCombobox/common/Combobox/Combobox.jsx +241 -0
  410. package/src/ui/f/fields/QueryCombobox/common/Combobox/index.js +2 -0
  411. package/src/ui/f/fields/QueryCombobox/common/Menu/Menu.jsx +103 -0
  412. package/src/ui/f/fields/QueryCombobox/common/Menu/index.js +2 -0
  413. package/src/ui/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.jsx +340 -0
  414. package/src/ui/f/fields/QueryCombobox/common/MultipleCombobox/index.js +2 -0
  415. package/src/ui/f/fields/QueryCombobox/common/index.js +3 -0
  416. package/src/ui/f/fields/QueryCombobox/index.js +2 -0
  417. package/src/ui/f/fields/QueryCombobox/styles.scss +91 -0
  418. package/src/ui/f/fields/QuerySelect/QuerySelect.jsx +213 -0
  419. package/src/ui/f/fields/QuerySelect/index.js +2 -0
  420. package/src/ui/f/fields/RatingsInput/RatingsInput.jsx +54 -19
  421. package/src/ui/f/fields/RatingsInput/common/Rating/Rating.jsx +7 -1
  422. package/src/ui/f/fields/RatingsInput/styles.scss +29 -20
  423. package/src/ui/f/fields/SelectInput/SelectInput.jsx +72 -8
  424. package/src/ui/f/fields/SelectInput/styles.scss +33 -13
  425. package/src/ui/f/fields/TextInput/TextInput.jsx +44 -10
  426. package/src/ui/f/fields/TextInput/styles.scss +16 -7
  427. package/src/ui/f/fields/TextareaInput/TextareaInput.jsx +49 -21
  428. package/src/ui/f/fields/TextareaInput/styles.scss +19 -6
  429. package/src/ui/f/fields/index.js +4 -3
  430. package/src/ui/form-reset.scss +1 -1
  431. package/src/ui/index.js +2 -0
  432. package/src/ui/test/QueryLoader/QueryLoader.jsx +41 -0
  433. package/src/ui/test/QueryLoader/__generated__/QueryLoaderHelloQuery.graphql.js +68 -0
  434. package/src/ui/test/QueryLoader/common/PreloadedTestData/PreloadedTestData.jsx +51 -0
  435. package/src/ui/test/QueryLoader/common/PreloadedTestData/index.js +2 -0
  436. package/src/ui/test/QueryLoader/common/index.js +1 -0
  437. package/src/ui/test/QueryLoader/index.js +2 -0
  438. package/src/ui/test/index.js +1 -0
  439. package/src/ui/utils/hooks/index.js +2 -0
  440. package/src/ui/utils/hooks/useDynamicPosition.js +104 -0
  441. package/src/ui/utils/hooks/useWindowSize.js +32 -0
  442. package/src/ui/utils/index.js +1 -0
  443. package/stylelint.config.js +13 -13
  444. package/dist/cjs/a/GradientBackground/index.js +0 -15
  445. package/dist/cjs/a/GradientBackground/styles.scss +0 -191
  446. package/dist/cjs/c/AcceptCookies/styles.scss +0 -49
  447. package/dist/cjs/c/BlogCategoryButton/index.js +0 -15
  448. package/dist/cjs/c/BlogPost/BlogPost.js +0 -147
  449. package/dist/cjs/c/BlogPost/styles.scss +0 -33
  450. package/dist/cjs/c/BlogPostsList/common/Card/Card.js +0 -170
  451. package/dist/cjs/c/BlogPostsList/index.js +0 -15
  452. package/dist/cjs/c/BlogPostsList/styles.scss +0 -72
  453. package/dist/cjs/c/SiteFooter/styles.scss +0 -34
  454. package/dist/cjs/c/SiteHeaderCTA/index.js +0 -15
  455. package/dist/cjs/c/SiteHeaderCTA/styles.scss +0 -44
  456. package/dist/cjs/c/SiteMission/styles.scss +0 -30
  457. package/dist/cjs/c/SiteNavigation/SiteNavigation.js +0 -130
  458. package/dist/cjs/c/SiteNavigation/index.js +0 -15
  459. package/dist/cjs/c/SiteNavigation/styles.scss +0 -118
  460. package/dist/cjs/c/SiteOnboardingStep/SiteOnboardingStep.js +0 -98
  461. package/dist/cjs/c/SiteOnboardingStep/index.js +0 -15
  462. package/dist/cjs/c/SiteOnboardingStep/styles.scss +0 -51
  463. package/dist/cjs/c/SitePricing/SitePricing.js +0 -108
  464. package/dist/cjs/c/SitePricing/styles.scss +0 -73
  465. package/dist/cjs/c/SiteServices/SiteServices.js +0 -211
  466. package/dist/cjs/c/SiteServices/styles.scss +0 -138
  467. package/dist/cjs/c/TeamGallery/common/PersonCard/index.js +0 -15
  468. package/dist/cjs/c/TeamGallery/styles.scss +0 -100
  469. package/dist/cjs/c/Testimonials/Testimonials.js +0 -119
  470. package/dist/cjs/c/Testimonials/index.js +0 -15
  471. package/dist/cjs/c/Testimonials/styles.scss +0 -112
  472. package/dist/cjs/experimental/GradientBackground/index.js +0 -15
  473. package/dist/cjs/experimental/GradientBackground/styles.scss +0 -64
  474. package/dist/cjs/experimental/index.js +0 -13
  475. package/dist/cjs/f/fields/TaskRecommendation/index.js +0 -15
  476. package/dist/cjs/f/fields/TaskRecommendation/styles.scss +0 -37
  477. package/dist/cjs/f/fields/TextArea/TextArea.js +0 -141
  478. package/dist/cjs/f/fields/TextArea/styles.scss +0 -19
  479. package/dist/es/a/GradientBackground/GradientBackground.js +0 -118
  480. package/dist/es/a/GradientBackground/index.js +0 -2
  481. package/dist/es/a/GradientBackground/styles.scss +0 -191
  482. package/dist/es/c/AcceptCookies/AcceptCookies.js +0 -117
  483. package/dist/es/c/AcceptCookies/index.js +0 -2
  484. package/dist/es/c/AcceptCookies/styles.scss +0 -49
  485. package/dist/es/c/BlogCategoryButton/BlogCategoryButton.js +0 -68
  486. package/dist/es/c/BlogCategoryButton/index.js +0 -2
  487. package/dist/es/c/BlogContext/BlogContextProvider.js +0 -45
  488. package/dist/es/c/BlogContext/ContextProvider.js +0 -45
  489. package/dist/es/c/BlogContext/index.js +0 -4
  490. package/dist/es/c/BlogPost/BlogPost.js +0 -128
  491. package/dist/es/c/BlogPost/styles.scss +0 -33
  492. package/dist/es/c/BlogPostsList/common/Card/Card.js +0 -143
  493. package/dist/es/c/BlogPostsList/common/index.js +0 -1
  494. package/dist/es/c/BlogPostsList/index.js +0 -2
  495. package/dist/es/c/BlogPostsList/styles.scss +0 -72
  496. package/dist/es/c/SiteFooter/common/Section/Section.js +0 -73
  497. package/dist/es/c/SiteFooter/common/index.js +0 -1
  498. package/dist/es/c/SiteFooter/index.js +0 -2
  499. package/dist/es/c/SiteFooter/styles.scss +0 -34
  500. package/dist/es/c/SiteHeaderCTA/SiteHeaderCTA.js +0 -92
  501. package/dist/es/c/SiteHeaderCTA/index.js +0 -2
  502. package/dist/es/c/SiteHeaderCTA/styles.scss +0 -44
  503. package/dist/es/c/SiteMission/SiteMission.js +0 -96
  504. package/dist/es/c/SiteMission/index.js +0 -2
  505. package/dist/es/c/SiteMission/styles.scss +0 -30
  506. package/dist/es/c/SiteNavigation/SiteNavigation.js +0 -111
  507. package/dist/es/c/SiteNavigation/index.js +0 -2
  508. package/dist/es/c/SiteNavigation/styles.scss +0 -118
  509. package/dist/es/c/SiteOnboardingStep/SiteOnboardingStep.js +0 -81
  510. package/dist/es/c/SiteOnboardingStep/index.js +0 -2
  511. package/dist/es/c/SiteOnboardingStep/styles.scss +0 -51
  512. package/dist/es/c/SitePricing/SitePricing.js +0 -91
  513. package/dist/es/c/SitePricing/index.js +0 -2
  514. package/dist/es/c/SitePricing/styles.scss +0 -73
  515. package/dist/es/c/SiteServices/SiteServices.js +0 -195
  516. package/dist/es/c/SiteServices/index.js +0 -2
  517. package/dist/es/c/SiteServices/styles.scss +0 -138
  518. package/dist/es/c/TeamGallery/common/PersonCard/PersonCard.js +0 -64
  519. package/dist/es/c/TeamGallery/common/PersonCard/index.js +0 -2
  520. package/dist/es/c/TeamGallery/common/index.js +0 -1
  521. package/dist/es/c/TeamGallery/index.js +0 -2
  522. package/dist/es/c/TeamGallery/styles.scss +0 -100
  523. package/dist/es/c/Testimonials/Testimonials.js +0 -99
  524. package/dist/es/c/Testimonials/index.js +0 -2
  525. package/dist/es/c/Testimonials/styles.scss +0 -112
  526. package/dist/es/experimental/GradientBackground/GradientBackground.js +0 -76
  527. package/dist/es/experimental/GradientBackground/index.js +0 -2
  528. package/dist/es/experimental/GradientBackground/styles.scss +0 -64
  529. package/dist/es/experimental/index.js +0 -1
  530. package/dist/es/f/fields/TaskRecommendation/TaskRecommendation.js +0 -111
  531. package/dist/es/f/fields/TaskRecommendation/index.js +0 -2
  532. package/dist/es/f/fields/TaskRecommendation/styles.scss +0 -37
  533. package/dist/es/f/fields/TextArea/TextArea.js +0 -124
  534. package/dist/es/f/fields/TextArea/styles.scss +0 -19
  535. package/src/stories/f/CheckboxInput.stories.jsx +0 -37
  536. package/src/stories/f/RadioInput.stories.jsx +0 -37
  537. package/src/stories/f/TaskRecommendationInput.stories.jsx +0 -38
  538. package/src/ui/a/SiteContext/index.js +0 -5
  539. package/src/ui/f/fields/CheckboxInput/index.js +0 -2
  540. package/src/ui/f/fields/CheckboxInput/styles.scss +0 -28
  541. package/src/ui/f/fields/RadioInput/index.js +0 -2
  542. package/src/ui/f/fields/RadioInput/styles.scss +0 -26
  543. package/src/ui/f/fields/TaskRecommendationInput/TaskRecommendationInput.jsx +0 -130
  544. package/src/ui/f/fields/TaskRecommendationInput/index.js +0 -2
  545. package/src/ui/f/fields/TaskRecommendationInput/styles.scss +0 -41
@@ -0,0 +1,33 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ import * as React from 'react'
3
+ import { SocialMediaShareButton } from 'ui'
4
+ import Router from '../utils/Router'
5
+
6
+ export default {
7
+ title :'c/SocialMediaShareButton',
8
+ component :SocialMediaShareButton,
9
+ subcomponents:{
10
+ // Item:SocialMediaShareButton.Item
11
+ },
12
+ decorators:[
13
+ (storyfn) => <Router>{storyfn()}</Router>,
14
+ ],
15
+ argTypes:{
16
+ // backgroundColor:{ control: 'color' },
17
+ type:{ control: 'select', options: ['twitter', 'facebook'] },
18
+ },
19
+ }
20
+
21
+ const Template = (args) => (
22
+ <SocialMediaShareButton {...args} />
23
+ )
24
+
25
+ export const Facebook = Template.bind({})
26
+ Facebook.args = {
27
+ type:'facebook',
28
+ }
29
+
30
+ export const Twitter = Template.bind({})
31
+ Twitter.args = {
32
+ type:'twitter',
33
+ }
@@ -0,0 +1,95 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ import * as React from 'react'
3
+
4
+ import { useEffect } from 'react'
5
+
6
+ import { Formik, Form, useField } from 'formik'
7
+
8
+ import { Checkbox, FormDebugger } from 'ui'
9
+
10
+ export default {
11
+ title :'f/fields/Checkbox',
12
+ component :Checkbox,
13
+ subcomponents:{
14
+ // Item:Checkbox.Item
15
+ },
16
+ decorators:[
17
+ // storyfn => <div className="">{ storyfn() }</div>,
18
+ (storyfn) => (
19
+ <Formik
20
+ initialValues={{}}
21
+ >
22
+ <Form>
23
+
24
+ { storyfn() }
25
+ </Form>
26
+ </Formik>
27
+ ),
28
+ ],
29
+ argTypes:{
30
+ label :{ control: 'text' },
31
+ description :{ control: 'text' },
32
+ defaultValue:{ control: 'boolean' },
33
+ disabled :{ control: 'boolean' },
34
+ optional :{ control: 'boolean' },
35
+ },
36
+ }
37
+
38
+ // eslint-disable-next-line react/prop-types
39
+ const Template = ({ defaultValue, ...args }) => {
40
+ const Content = () => {
41
+ const { name } = args
42
+ const [, , helpers] = useField(name)
43
+ const { setValue } = helpers
44
+
45
+ useEffect(() => {
46
+ if (defaultValue) {
47
+ setValue(defaultValue)
48
+ }
49
+ }, [defaultValue])
50
+
51
+ return (
52
+ <>
53
+ <Checkbox {...args} />
54
+ <FormDebugger />
55
+ </>
56
+ )
57
+ }
58
+
59
+ return <Content />
60
+ }
61
+
62
+ export const Base = Template.bind({})
63
+ Base.args = {
64
+ name:'urgent',
65
+ }
66
+
67
+ export const WithLabel = Template.bind({})
68
+ WithLabel.args = {
69
+ ...Base.args,
70
+ label:'Urgent',
71
+ }
72
+
73
+ export const WithDescription = Template.bind({})
74
+ WithDescription.args = {
75
+ ...Base.args,
76
+ description:'Click on the checkbox',
77
+ }
78
+
79
+ export const WithDefaultFormikValue = Template.bind({})
80
+ WithDefaultFormikValue.args = {
81
+ ...Base.args,
82
+ defaultValue:true,
83
+ }
84
+
85
+ export const Disabled = Template.bind({})
86
+ Disabled.args = {
87
+ ...Base.args,
88
+ disabled:true,
89
+ }
90
+
91
+ export const Optional = Template.bind({})
92
+ Optional.args = {
93
+ ...WithLabel.args,
94
+ optional:true,
95
+ }
@@ -1,8 +1,8 @@
1
1
  /* @pareto-engineering/generator-front 1.0.12 */
2
2
  import * as React from 'react'
3
-
3
+ import { useEffect } from 'react'
4
4
  import { ChoicesInput, FormDebugger } from 'ui'
5
- import { Formik, Form } from 'formik'
5
+ import { Formik, Form, useField } from 'formik'
6
6
 
7
7
  export default {
8
8
  title :'f/fields/ChoicesInput',
@@ -22,147 +22,119 @@ export default {
22
22
  ),
23
23
  ],
24
24
  argTypes:{
25
- backgroundColor:{ control: 'color' },
25
+ // backgroundColor:{ control: 'color' },
26
+ multiple :{ control: 'boolean' },
27
+ gridColumnsDesktop:{ control: 'number' },
28
+ disabled :{ control: 'boolean' },
29
+ optional :{ control: 'boolean' },
26
30
  },
27
31
  }
28
32
 
29
- export const Base = () => {
30
- const optionsMap = [
31
- {
32
- value:'red',
33
- label:'Color Red',
34
- },
35
- {
36
- value:'blue',
37
- label:'Color Blue',
38
- },
39
- {
40
- value:'green',
41
- label:'Color Green',
42
- },
43
- ]
33
+ const optionsMap = [
34
+ {
35
+ value:'red',
36
+ label:'Color Red',
37
+ },
38
+ {
39
+ value:'blue',
40
+ label:'Color Blue',
41
+ },
42
+ {
43
+ value:'green',
44
+ label:'Color Green',
45
+ },
46
+ {
47
+ value:'yellow',
48
+ label:'Color Yellow',
49
+ },
50
+ {
51
+ value:'oarnge',
52
+ label:'Color Orange',
53
+ },
54
+ {
55
+ value:'violet',
56
+ label:'Color Violet',
57
+ },
58
+ {
59
+ value:'brown',
60
+ label:'Color Brown',
61
+ },
62
+ {
63
+ value:'black',
64
+ label:'Color Black',
65
+ },
66
+ ]
67
+
68
+ // eslint-disable-next-line react/prop-types
69
+ const Template = ({ defaultValue, ...args }) => {
70
+ const Content = () => {
71
+ const [, , helpers] = useField(args.name)
72
+ const { setValue } = helpers
44
73
 
45
- return (
74
+ useEffect(() => {
75
+ if (defaultValue) {
76
+ setValue(defaultValue)
77
+ }
78
+ }, [defaultValue])
46
79
 
47
- <>
48
- <ChoicesInput id="colors" options={optionsMap} name="color" />
49
- <FormDebugger />
50
- </>
51
- )
80
+ return (
81
+ <>
82
+ <ChoicesInput {...args} />
83
+ <FormDebugger />
84
+ </>
85
+ )
86
+ }
87
+ return <Content />
52
88
  }
53
89
 
54
- export const Multiple = () => {
55
- const optionsMap = [
56
- {
57
- value:'red',
58
- label:'Color Red',
59
- },
60
- {
61
- value:'blue',
62
- label:'Color Blue',
63
- },
64
- {
65
- value:'green',
66
- label:'Color Green',
67
- },
68
- ]
90
+ export const Base = Template.bind({})
91
+ Base.args = {
92
+ id :'colors',
93
+ options:optionsMap,
94
+ name :'color',
95
+ }
69
96
 
70
- return (
71
- <>
72
- <ChoicesInput id="colors" options={optionsMap} name="color" multiple />
73
- <FormDebugger />
74
- </>
75
- )
97
+ export const WithDefaultFormikValue = Template.bind({})
98
+ WithDefaultFormikValue.args = {
99
+ ...Base.args,
100
+ defaultValue:'red',
76
101
  }
77
102
 
78
- export const MultipleWithGrid = () => {
79
- const optionsMap = [
80
- {
81
- value:'red',
82
- label:'Color Red',
83
- },
84
- {
85
- value:'blue',
86
- label:'Color Blue',
87
- },
88
- {
89
- value:'green',
90
- label:'Color Green',
91
- },
92
- {
93
- value:'yellow',
94
- label:'Color Yellow',
95
- },
96
- {
97
- value:'oarnge',
98
- label:'Color Orange',
99
- },
100
- {
101
- value:'violet',
102
- label:'Color Violet',
103
- },
104
- {
105
- value:'brown',
106
- label:'Color Brown',
107
- },
108
- {
109
- value:'black',
110
- label:'Color Black',
111
- },
112
- ]
103
+ export const Multiple = Template.bind({})
104
+ Multiple.args = {
105
+ ...Base.args,
106
+ multiple:true,
107
+ }
113
108
 
114
- return (
115
- <>
116
- <ChoicesInput id="colors" options={optionsMap} name="color" multiple gridColumnsDesktop={2} />
117
- <FormDebugger />
118
- </>
119
- )
109
+ export const MultipleWithDefaultFormikValue = Template.bind({})
110
+ MultipleWithDefaultFormikValue.args = {
111
+ ...Base.args,
112
+ multiple :true,
113
+ defaultValue:['brown', 'violet'],
120
114
  }
121
115
 
122
- export const ChoicesWithLabel = () => {
123
- const optionsMap = [
124
- {
125
- value:'triangle',
126
- label:'Triangle',
127
- },
128
- {
129
- value:'square',
130
- label:'Square',
131
- },
132
- {
133
- value:'rectangle',
134
- label:'Rectangle',
135
- },
136
- ]
116
+ export const MultipleWithGrid = Template.bind({})
117
+ MultipleWithGrid.args = {
118
+ ...Base.args,
119
+ multiple :true,
120
+ gridColumnsDesktop:2,
121
+ }
137
122
 
138
- return (
139
- <>
140
- <ChoicesInput id="shapes" options={optionsMap} name="shape" label="Geometric Shapes" />
141
- <FormDebugger />
142
- </>
143
- )
123
+ export const ChoicesWithLabel = Template.bind({})
124
+ ChoicesWithLabel.args = {
125
+ ...Base.args,
126
+ label:'Select color',
144
127
  }
145
128
 
146
- export const DisabledChoicesInput = () => {
147
- const optionsMap = [
148
- {
149
- value:'triangle',
150
- label:'Triangle',
151
- },
152
- {
153
- value:'square',
154
- label:'Square',
155
- },
156
- {
157
- value:'rectangle',
158
- label:'Rectangle',
159
- },
160
- ]
129
+ export const Optional = Template.bind({})
130
+ Optional.args = {
131
+ ...Base.args,
132
+ label :'Select color',
133
+ optional:true,
134
+ }
161
135
 
162
- return (
163
- <>
164
- <ChoicesInput id="shapes" options={optionsMap} name="shape" label="Geometric Shapes" disabled />
165
- <FormDebugger />
166
- </>
167
- )
136
+ export const DisabledChoicesInput = Template.bind({})
137
+ DisabledChoicesInput.args = {
138
+ ...ChoicesWithLabel.args,
139
+ disabled:true,
168
140
  }
@@ -3,6 +3,8 @@ import * as React from 'react'
3
3
 
4
4
  import { FormDescription as Description } from 'ui'
5
5
 
6
+ import { Formik, Form } from 'formik'
7
+
6
8
  export default {
7
9
  title :'f/common/Description',
8
10
  component :Description,
@@ -10,13 +12,29 @@ export default {
10
12
  // Item:Description.Item
11
13
  },
12
14
  decorators:[
13
- // storyfn => <div className="">{ storyfn() }</div>,
15
+ (storyfn) => (
16
+ <Formik
17
+ initialValues={{ email: '' }}
18
+ >
19
+ <Form>
20
+ { storyfn() }
21
+ </Form>
22
+ </Formik>
23
+ ),
14
24
  ],
15
25
  argTypes:{
16
- backgroundColor:{ control: 'color' },
26
+ // backgroundColor:{ control: 'color' },
27
+ description:{ control: 'text' },
28
+ name :{ control: 'text' },
17
29
  },
18
30
  }
19
31
 
20
- export const Base = () => (
21
- <Description>Sample Description</Description>
32
+ const Template = (args) => (
33
+ <Description {...args} />
22
34
  )
35
+
36
+ export const Base = Template.bind({})
37
+ Base.args = {
38
+ description:'Sample Description',
39
+ name :'email',
40
+ }
@@ -8,6 +8,15 @@ import {
8
8
  FormDebugger,
9
9
  } from 'ui'
10
10
 
11
+ import { fruits } from '../utils/testData'
12
+
13
+ import {
14
+ RelayEnvironmentProvider,
15
+ mockRelayOperation,
16
+ } from '../utils/relay'
17
+
18
+ import generateNodeId from '../utils/generateNodeId'
19
+
11
20
  export default {
12
21
  title :'f/FormInput',
13
22
  component :FormInput,
@@ -25,6 +34,11 @@ export default {
25
34
  </Form>
26
35
  </Formik>
27
36
  ),
37
+ (storyfn) => (
38
+ <RelayEnvironmentProvider>
39
+ { storyfn() }
40
+ </RelayEnvironmentProvider>
41
+ ),
28
42
  ],
29
43
  argTypes:{
30
44
  backgroundColor:{ control: 'color' },
@@ -48,6 +62,11 @@ export const Base = () => {
48
62
  name :'description',
49
63
  label:'Describe yourself in a few sentences',
50
64
  },
65
+ {
66
+ type :'checkbox',
67
+ name :'urgent',
68
+ label:'Urgent',
69
+ },
51
70
  {
52
71
  type :'choices',
53
72
  name :'colors',
@@ -99,6 +118,251 @@ export const Base = () => {
99
118
  )
100
119
  }
101
120
 
121
+ const allTeamsMockData = {
122
+ PageInfo() {
123
+ return {
124
+ hasNextPage :true,
125
+ hasPreviousPage:true,
126
+ }
127
+ },
128
+ TeamNodeConnection:(args) => {
129
+ const edges = fruits.map((fruit) => ({
130
+ node:{
131
+ id :generateNodeId('TeamNode'),
132
+ name:fruit,
133
+ },
134
+ }))
135
+
136
+ // eslint-disable-next-line camelcase
137
+ const { name_Icontains } = args?.args || {}
138
+
139
+ return ({
140
+ pageInfo:{
141
+ hasNextPage :true,
142
+ hasPreviousPage:true,
143
+ },
144
+ // eslint-disable-next-line camelcase
145
+ edges:name_Icontains?.trim()
146
+ ? edges.filter(({ node }) => node.name
147
+ .toLowerCase()
148
+ .includes(name_Icontains.toLowerCase()))
149
+ : [],
150
+ })
151
+ },
152
+ }
153
+
154
+ const FETCH_TEAMS_QUERY = graphql`
155
+ query FormInputAllTeamsQuery($name_Icontains: String) {
156
+ allTeams(name_Icontains: $name_Icontains) {
157
+ edges {
158
+ node {
159
+ id
160
+ name
161
+ }
162
+ }
163
+ }
164
+ }
165
+ `
166
+
167
+ export const WithQueryCombobox = () => {
168
+ const inputMap = [
169
+ {
170
+ type :'text',
171
+ name :'firstName',
172
+ label:"What's your first name ?",
173
+ },
174
+ {
175
+ type :'choices',
176
+ name :'colors',
177
+ label :'What are your favourite colors ?',
178
+ options:[
179
+ {
180
+ value:'red',
181
+ label:'Color Red',
182
+ },
183
+ {
184
+ value:'blue',
185
+ label:'Color Blue',
186
+ },
187
+ {
188
+ value:'green',
189
+ label:'Color Green',
190
+ },
191
+ ],
192
+ },
193
+ {
194
+ type :'query-combobox',
195
+ name :'team',
196
+ query:{
197
+ graphql :FETCH_TEAMS_QUERY,
198
+ accessor:'allTeams',
199
+ },
200
+ label :'Search for a team',
201
+ optionsKeyMap:{
202
+ value :'id',
203
+ getLabel:(node) => node.name,
204
+ },
205
+ searchVariable:'name_Icontains',
206
+ },
207
+ {
208
+ type :'query-combobox',
209
+ name :'teams',
210
+ query:{
211
+ graphql :FETCH_TEAMS_QUERY,
212
+ accessor:'allTeams',
213
+ },
214
+ label :'Search for teams',
215
+ optionsKeyMap:{
216
+ value :'id',
217
+ getLabel:(node) => node.name,
218
+ },
219
+ searchVariable:'name_Icontains',
220
+ multiple :true,
221
+ },
222
+ ]
223
+
224
+ mockRelayOperation(allTeamsMockData)
225
+ mockRelayOperation(allTeamsMockData)
226
+ mockRelayOperation(allTeamsMockData)
227
+
228
+ return (
229
+ <>
230
+ {
231
+ inputMap.map((input) => <FormInput {...input} key={input.name} />)
232
+ }
233
+ <FormDebugger />
234
+
235
+ </>
236
+ )
237
+ }
238
+
239
+ const statuses = [
240
+ 'Backlog',
241
+ 'In Review',
242
+ 'In Progress',
243
+ 'Requested',
244
+ 'Blocked',
245
+ 'Completed',
246
+ ]
247
+ const allTaskStatusesMockData = {
248
+ PageInfo() {
249
+ return {
250
+ hasNextPage :true,
251
+ hasPreviousPage:true,
252
+ }
253
+ },
254
+ TaskStatusNodeConnection:() => ({
255
+ pageInfo:{
256
+ hasNextPage :true,
257
+ hasPreviousPage:true,
258
+ },
259
+
260
+ edges:statuses.map((status) => ({
261
+ node:{
262
+ id:generateNodeId('TaskStatusNode'),
263
+ status,
264
+ },
265
+ })),
266
+ }),
267
+ }
268
+
269
+ const FETCH_ALL_TASK_STATUSES = graphql`
270
+ query FormInputAllTaskStatusesQuery {
271
+ allTaskStatuses {
272
+ edges {
273
+ node {
274
+ id
275
+ status
276
+ }
277
+ }
278
+ }
279
+ }
280
+ `
281
+
282
+ export const WithPrefetchedQuerySelect = () => {
283
+ mockRelayOperation(allTaskStatusesMockData)
284
+
285
+ const inputMap = [
286
+ {
287
+ type :'text',
288
+ name :'firstName',
289
+ label:"What's your first name ?",
290
+ },
291
+ {
292
+ type :'choices',
293
+ name :'colors',
294
+ label :'What are your favourite colors ?',
295
+ options:[
296
+ {
297
+ value:'red',
298
+ label:'Color Red',
299
+ },
300
+ {
301
+ value:'blue',
302
+ label:'Color Blue',
303
+ },
304
+ {
305
+ value:'green',
306
+ label:'Color Green',
307
+ },
308
+ ],
309
+ },
310
+ {
311
+ type :'query-select',
312
+ name :'status',
313
+ query:{
314
+ graphql :FETCH_ALL_TASK_STATUSES,
315
+ accessor:'allTaskStatuses',
316
+ },
317
+ label :'Select Task Status',
318
+ optionsKeyMap:{
319
+ value :'id',
320
+ getLabel:(node) => node.status,
321
+ },
322
+ },
323
+ ]
324
+
325
+ mockRelayOperation(allTeamsMockData)
326
+ mockRelayOperation(allTeamsMockData)
327
+ mockRelayOperation(allTeamsMockData)
328
+
329
+ return (
330
+ <>
331
+ {
332
+ inputMap.map((input) => <FormInput {...input} key={input.name} />)
333
+ }
334
+ <FormDebugger />
335
+
336
+ </>
337
+ )
338
+ }
339
+
340
+ export const WithRatingsInput = () => {
341
+ const inputMap = [
342
+ {
343
+ type :'text',
344
+ name :'firstName',
345
+ label:"What's your first name ?",
346
+ },
347
+ {
348
+ type :'rating',
349
+ ratingCount:5,
350
+ name :'ratings',
351
+ label :'Your Rating',
352
+ },
353
+ ]
354
+
355
+ return (
356
+ <>
357
+ {
358
+ inputMap.map((input) => <FormInput {...input} key={input.name} />)
359
+ }
360
+ <FormDebugger />
361
+
362
+ </>
363
+ )
364
+ }
365
+
102
366
  export const ExtensibleFormInput = () => {
103
367
  const ExtendedTextInput = (props) => (
104
368
  <TextInput