@pareto-engineering/design-system 2.0.0-alpha.6 → 2.0.0-alpha.61

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 (460) 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/TeamGallery.js → a/ContentTree/ContentTree.js} +23 -20
  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/OvalIllustration/OvalIllustration.js +133 -0
  33. package/dist/cjs/a/OvalIllustration/index.js +15 -0
  34. package/dist/cjs/a/OvalIllustration/styles.scss +102 -0
  35. package/dist/cjs/{c/AcceptCookies/AcceptCookies.js → a/Popover/Popover.js} +57 -57
  36. package/dist/cjs/{c/BlogPost → a/Popover}/index.js +3 -3
  37. package/dist/cjs/a/Popover/styles.scss +33 -0
  38. package/dist/cjs/a/Shapes/Shapes.js +9 -1
  39. package/dist/cjs/a/Shapes/styles.scss +42 -9
  40. package/dist/cjs/{c/BlogPostsList/BlogPostsList.js → a/SnapScroller/SnapScroller.js} +15 -11
  41. package/dist/cjs/{c/SiteFooter → a/SnapScroller}/index.js +3 -3
  42. package/dist/cjs/a/SnapScroller/styles.scss +38 -0
  43. package/dist/cjs/a/index.js +65 -9
  44. package/dist/cjs/b/Button/Button.js +10 -4
  45. package/dist/cjs/b/Button/styles.scss +55 -10
  46. package/dist/cjs/b/Logo/Logo.js +41 -41
  47. package/dist/cjs/b/Logo/styles.scss +0 -138
  48. package/dist/cjs/b/Page/common/PageHelmet/PageHelmet.js +1 -1
  49. package/dist/cjs/b/Page/common/Section/Section.js +17 -3
  50. package/dist/cjs/b/SocialMediaButton/SocialMediaButton.js +4 -4
  51. package/dist/cjs/b/ThemeSelector/ThemeSelector.js +1 -1
  52. package/dist/cjs/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.js +16 -9
  53. package/dist/cjs/c/ContentSlides/common/Navigator/Navigator.js +4 -3
  54. package/dist/cjs/c/ContentSlides/styles.scss +10 -4
  55. package/dist/cjs/c/{SiteHeaderCTA/SiteHeaderCTA.js → SocialMediaShareButton/SocialMediaShareButton.js} +46 -43
  56. package/dist/cjs/c/SocialMediaShareButton/index.js +15 -0
  57. package/dist/cjs/c/SocialMediaShareButton/styles.scss +39 -0
  58. package/dist/cjs/c/index.js +9 -1
  59. package/dist/cjs/f/FormInput/FormInput.js +26 -3
  60. package/dist/cjs/f/FormInput/styles.scss +11 -0
  61. package/dist/cjs/f/common/Debugger/Debugger.js +1 -1
  62. package/dist/cjs/f/common/Description/Description.js +20 -14
  63. package/dist/cjs/f/common/Label/Label.js +1 -1
  64. package/dist/cjs/f/common/Label/styles.scss +1 -1
  65. package/dist/cjs/f/fields/ChoicesInput/ChoicesInput.js +1 -1
  66. package/dist/cjs/f/fields/ChoicesInput/styles.scss +17 -2
  67. package/dist/cjs/f/fields/QueryCombobox/QueryCombobox.js +235 -0
  68. package/dist/cjs/f/fields/QueryCombobox/common/Combobox/Combobox.js +208 -0
  69. package/dist/cjs/f/fields/QueryCombobox/common/Combobox/index.js +15 -0
  70. package/dist/cjs/{c/BlogCategoryButton/BlogCategoryButton.js → f/fields/QueryCombobox/common/Menu/Menu.js} +39 -31
  71. package/dist/cjs/f/fields/QueryCombobox/common/Menu/index.js +15 -0
  72. package/dist/cjs/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +307 -0
  73. package/dist/cjs/f/fields/QueryCombobox/common/MultipleCombobox/index.js +15 -0
  74. package/dist/cjs/f/fields/QueryCombobox/common/index.js +29 -0
  75. package/dist/cjs/{c/AcceptCookies → f/fields/QueryCombobox}/index.js +3 -3
  76. package/dist/cjs/f/fields/QueryCombobox/styles.scss +90 -0
  77. package/dist/cjs/f/fields/QuerySelect/QuerySelect.js +201 -0
  78. package/dist/cjs/{c/TeamGallery → f/fields/QuerySelect}/index.js +3 -3
  79. package/dist/cjs/f/fields/RatingsInput/RatingsInput.js +39 -6
  80. package/dist/cjs/f/fields/RatingsInput/styles.scss +29 -20
  81. package/dist/cjs/f/fields/SelectInput/SelectInput.js +59 -14
  82. package/dist/cjs/f/fields/SelectInput/styles.scss +33 -13
  83. package/dist/cjs/f/fields/TaskRecommendationInput/TaskRecommendationInput.js +2 -2
  84. package/dist/cjs/f/fields/TaskRecommendationInput/styles.scss +0 -4
  85. package/dist/cjs/f/fields/TextInput/TextInput.js +50 -13
  86. package/dist/cjs/f/fields/TextInput/styles.scss +16 -7
  87. package/dist/cjs/f/fields/TextareaInput/TextareaInput.js +41 -15
  88. package/dist/cjs/f/fields/TextareaInput/styles.scss +19 -6
  89. package/dist/cjs/f/fields/index.js +15 -23
  90. package/dist/cjs/form-reset.scss +1 -1
  91. package/dist/cjs/index.js +26 -0
  92. package/dist/cjs/test/QueryLoader/QueryLoader.js +41 -0
  93. package/dist/cjs/test/QueryLoader/__generated__/QueryLoaderHelloQuery.graphql.js +71 -0
  94. package/dist/cjs/{c/BlogContext/ContextProvider.js → test/QueryLoader/common/PreloadedTestData/PreloadedTestData.js} +13 -27
  95. package/dist/cjs/test/QueryLoader/common/PreloadedTestData/index.js +15 -0
  96. package/dist/cjs/test/QueryLoader/common/index.js +13 -0
  97. package/dist/cjs/test/QueryLoader/index.js +15 -0
  98. package/dist/cjs/{c/TeamGallery/common → test}/index.js +3 -3
  99. package/dist/cjs/utils/hooks/index.js +23 -0
  100. package/dist/cjs/utils/hooks/useDynamicPosition.js +107 -0
  101. package/dist/cjs/utils/hooks/useWindowSize.js +39 -0
  102. package/dist/cjs/utils/index.js +19 -0
  103. package/dist/es/a/Alert/Alert.js +118 -0
  104. package/dist/es/{c/SiteFooter/common/Section → a/Alert}/index.js +1 -1
  105. package/dist/es/a/Alert/styles.scss +74 -0
  106. package/dist/es/{c/BlogContext → a/AppContext}/Context.js +0 -0
  107. package/dist/es/a/AppContext/ContextProvider.js +78 -0
  108. package/dist/es/a/AppContext/index.js +5 -0
  109. package/dist/es/{c/BlogContext/useBlog.js → a/AppContext/useApp.js} +0 -0
  110. package/dist/es/a/AppContext/useTheme.js +34 -0
  111. package/dist/es/{c/SiteFooter/SiteFooter.js → a/BackgroundGradient/BackgroundGradient.js} +14 -15
  112. package/dist/es/a/BackgroundGradient/index.js +2 -0
  113. package/dist/es/a/BackgroundGradient/styles.scss +16 -0
  114. package/dist/es/a/ColumnLabel/ColumnLabel.js +78 -0
  115. package/dist/es/a/ColumnLabel/index.js +2 -0
  116. package/dist/es/a/ColumnLabel/styles.scss +22 -0
  117. package/dist/es/a/ContentTree/ContentTree.js +67 -0
  118. package/dist/es/a/ContentTree/common/Tree/Tree.js +98 -0
  119. package/dist/es/{c/BlogPostsList/common/Card → a/ContentTree/common/Tree}/index.js +1 -1
  120. package/dist/es/a/ContentTree/common/index.js +3 -0
  121. package/dist/es/a/ContentTree/common/useContentTree.js +74 -0
  122. package/dist/es/a/ContentTree/common/useFirstVisibleNode.js +54 -0
  123. package/dist/es/a/ContentTree/index.js +2 -0
  124. package/dist/es/a/ContentTree/styles.scss +33 -0
  125. package/dist/es/a/Conversation/Conversation.js +14 -8
  126. package/dist/es/a/Conversation/common/Message/Message.js +32 -6
  127. package/dist/es/a/Conversation/styles.scss +132 -33
  128. package/dist/es/{c/TeamGallery/TeamGallery.js → a/Label/Label.js} +30 -23
  129. package/dist/es/{f/fields/TextArea → a/Label}/index.js +1 -1
  130. package/dist/es/a/Label/styles.scss +34 -0
  131. package/dist/es/a/OvalIllustration/OvalIllustration.js +111 -0
  132. package/dist/es/a/OvalIllustration/index.js +2 -0
  133. package/dist/es/a/OvalIllustration/styles.scss +102 -0
  134. package/dist/es/a/Popover/Popover.js +118 -0
  135. package/dist/es/{c/BlogPost → a/Popover}/index.js +1 -1
  136. package/dist/es/a/Popover/styles.scss +33 -0
  137. package/dist/es/a/Shapes/Shapes.js +9 -1
  138. package/dist/es/a/Shapes/styles.scss +42 -9
  139. package/dist/es/{c/BlogPostsList/BlogPostsList.js → a/SnapScroller/SnapScroller.js} +16 -11
  140. package/dist/es/a/SnapScroller/index.js +2 -0
  141. package/dist/es/a/SnapScroller/styles.scss +38 -0
  142. package/dist/es/a/index.js +9 -2
  143. package/dist/es/b/Button/Button.js +8 -2
  144. package/dist/es/b/Button/styles.scss +55 -10
  145. package/dist/es/b/Logo/Logo.js +41 -41
  146. package/dist/es/b/Logo/styles.scss +0 -138
  147. package/dist/es/b/Page/common/PageHelmet/PageHelmet.js +2 -2
  148. package/dist/es/b/Page/common/Section/Section.js +17 -3
  149. package/dist/es/b/SocialMediaButton/SocialMediaButton.js +5 -5
  150. package/dist/es/b/ThemeSelector/ThemeSelector.js +2 -2
  151. package/dist/es/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.js +16 -9
  152. package/dist/es/c/ContentSlides/common/Navigator/Navigator.js +4 -3
  153. package/dist/es/c/ContentSlides/styles.scss +10 -4
  154. package/dist/es/c/SocialMediaShareButton/SocialMediaShareButton.js +95 -0
  155. package/dist/es/c/SocialMediaShareButton/index.js +2 -0
  156. package/dist/es/c/SocialMediaShareButton/styles.scss +39 -0
  157. package/dist/es/c/index.js +2 -1
  158. package/dist/es/f/FormInput/FormInput.js +26 -3
  159. package/dist/es/f/FormInput/styles.scss +11 -0
  160. package/dist/es/f/common/Debugger/Debugger.js +1 -1
  161. package/dist/es/f/common/Description/Description.js +19 -14
  162. package/dist/es/f/common/Label/Label.js +1 -1
  163. package/dist/es/f/common/Label/styles.scss +1 -1
  164. package/dist/es/f/fields/ChoicesInput/ChoicesInput.js +1 -1
  165. package/dist/es/f/fields/ChoicesInput/styles.scss +17 -2
  166. package/dist/es/f/fields/QueryCombobox/QueryCombobox.js +212 -0
  167. package/dist/es/f/fields/QueryCombobox/common/Combobox/Combobox.js +188 -0
  168. package/dist/es/f/fields/QueryCombobox/common/Combobox/index.js +2 -0
  169. package/dist/es/f/fields/QueryCombobox/common/Menu/Menu.js +77 -0
  170. package/dist/es/f/fields/QueryCombobox/common/Menu/index.js +2 -0
  171. package/dist/es/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +279 -0
  172. package/dist/es/f/fields/QueryCombobox/common/MultipleCombobox/index.js +2 -0
  173. package/dist/es/f/fields/QueryCombobox/common/index.js +3 -0
  174. package/dist/es/f/fields/QueryCombobox/index.js +2 -0
  175. package/dist/es/f/fields/QueryCombobox/styles.scss +90 -0
  176. package/dist/es/f/fields/QuerySelect/QuerySelect.js +179 -0
  177. package/dist/es/f/fields/QuerySelect/index.js +2 -0
  178. package/dist/es/f/fields/RatingsInput/RatingsInput.js +38 -6
  179. package/dist/es/f/fields/RatingsInput/styles.scss +29 -20
  180. package/dist/es/f/fields/SelectInput/SelectInput.js +58 -14
  181. package/dist/es/f/fields/SelectInput/styles.scss +33 -13
  182. package/dist/es/f/fields/TaskRecommendationInput/TaskRecommendationInput.js +2 -2
  183. package/dist/es/f/fields/TaskRecommendationInput/styles.scss +0 -4
  184. package/dist/es/f/fields/TextInput/TextInput.js +50 -13
  185. package/dist/es/f/fields/TextInput/styles.scss +16 -7
  186. package/dist/es/f/fields/TextareaInput/TextareaInput.js +41 -15
  187. package/dist/es/f/fields/TextareaInput/styles.scss +19 -6
  188. package/dist/es/f/fields/index.js +3 -4
  189. package/dist/es/form-reset.scss +1 -1
  190. package/dist/es/index.js +3 -1
  191. package/dist/es/test/QueryLoader/QueryLoader.js +29 -0
  192. package/dist/es/test/QueryLoader/__generated__/QueryLoaderHelloQuery.graphql.js +71 -0
  193. package/dist/es/test/QueryLoader/common/PreloadedTestData/PreloadedTestData.js +31 -0
  194. package/dist/es/test/QueryLoader/common/PreloadedTestData/index.js +2 -0
  195. package/dist/es/test/QueryLoader/common/index.js +1 -0
  196. package/dist/es/test/QueryLoader/index.js +2 -0
  197. package/dist/es/test/index.js +1 -0
  198. package/dist/es/utils/hooks/index.js +2 -0
  199. package/dist/es/utils/hooks/useDynamicPosition.js +93 -0
  200. package/dist/es/utils/hooks/useWindowSize.js +27 -0
  201. package/dist/es/utils/index.js +1 -0
  202. package/package.json +18 -4
  203. package/relay.config.js +12 -0
  204. package/schema.graphql +4075 -0
  205. package/scripts/fetchSchema.js +74 -0
  206. package/src/__snapshots__/Storyshots.test.js.snap +12174 -7164
  207. package/src/local.scss +4 -2
  208. package/src/stories/StyleGuide/Sprites.stories.mdx +25 -0
  209. package/src/stories/StyleGuide/helpers.js +16 -0
  210. package/src/stories/a/Alert.stories.jsx +75 -0
  211. package/src/stories/a/{SiteContext.stories.jsx → AppContext.stories.jsx} +8 -8
  212. package/src/stories/a/BackgroundGradient.stories.jsx +38 -0
  213. package/src/stories/a/ContentTree.stories.jsx +662 -0
  214. package/src/stories/a/Conversation.stories.jsx +78 -1
  215. package/src/stories/a/DotInfo.stories.jsx +14 -13
  216. package/src/stories/a/Label.stories.jsx +49 -0
  217. package/src/stories/a/OvalIllustration.stories.jsx +59 -0
  218. package/src/stories/a/Popover.stories.jsx +106 -0
  219. package/src/stories/a/ProgressBar.stories.jsx +16 -7
  220. package/src/stories/a/Shapes.stories.jsx +18 -0
  221. package/src/stories/a/SnapScroller.stories.jsx +98 -0
  222. package/src/stories/a/Timestamp.stories.jsx +35 -39
  223. package/src/stories/b/Button.stories.jsx +27 -4
  224. package/src/stories/b/Logo.stories.jsx +23 -14
  225. package/src/stories/b/Page.stories.jsx +25 -1
  226. package/src/stories/b/QuestionDropdown.stories.jsx +20 -30
  227. package/src/stories/b/SocialMediaButton.stories.jsx +36 -53
  228. package/src/stories/b/ThemeSelector.stories.jsx +5 -5
  229. package/src/stories/b/Title.stories.jsx +13 -15
  230. package/src/stories/c/ContentSlides.stories.jsx +35 -151
  231. package/src/stories/c/Shortener.stories.jsx +9 -3
  232. package/src/stories/c/SocialMediaShareButton.stories.jsx +33 -0
  233. package/src/stories/f/ChoicesInput.stories.jsx +66 -130
  234. package/src/stories/f/Description.stories.jsx +22 -4
  235. package/src/stories/f/FormInput.stories.jsx +259 -0
  236. package/src/stories/f/QueryCombobox.stories.jsx +273 -0
  237. package/src/stories/f/QuerySelect.stories.jsx +135 -0
  238. package/src/stories/f/RatingsInput.stories.jsx +29 -22
  239. package/src/stories/f/SelectInput.stories.jsx +41 -49
  240. package/src/stories/f/TextInput.stories.jsx +63 -43
  241. package/src/stories/f/TextareaInput.stories.jsx +63 -19
  242. package/src/stories/f/__generated__/FormInputAllTaskStatusesQuery.graphql.js +122 -0
  243. package/src/stories/f/__generated__/FormInputAllTeamsQuery.graphql.js +139 -0
  244. package/src/stories/f/__generated__/QueryComboboxAllTeamsQuery.graphql.js +139 -0
  245. package/src/stories/f/__generated__/QuerySelectAllTaskStatusesQuery.graphql.js +122 -0
  246. package/src/stories/test/QueryLoader.stories.jsx +36 -0
  247. package/src/stories/utils/generateNodeId.js +12 -0
  248. package/src/stories/utils/lorem.js +15 -0
  249. package/src/stories/utils/relay/EnvironmentProvider.jsx +14 -0
  250. package/src/stories/utils/relay/environment.js +5 -0
  251. package/src/stories/utils/relay/index.js +4 -0
  252. package/src/stories/utils/relay/mockRelayOperation.js +14 -0
  253. package/src/stories/utils/relay/mockResolvers.js +299 -0
  254. package/src/stories/utils/testData.js +63 -0
  255. package/src/ui/a/Alert/Alert.jsx +144 -0
  256. package/src/ui/a/Alert/index.js +2 -0
  257. package/src/ui/a/Alert/styles.scss +74 -0
  258. package/src/ui/a/{SiteContext → AppContext}/Context.js +0 -0
  259. package/src/ui/a/{SiteContext → AppContext}/ContextProvider.jsx +8 -7
  260. package/src/ui/a/AppContext/index.js +5 -0
  261. package/src/ui/a/{SiteContext/useSite.js → AppContext/useApp.js} +0 -0
  262. package/src/ui/a/{SiteContext → AppContext}/useTheme.js +0 -0
  263. package/src/ui/a/BackgroundGradient/BackgroundGradient.jsx +76 -0
  264. package/src/ui/a/BackgroundGradient/index.js +2 -0
  265. package/src/ui/a/BackgroundGradient/styles.scss +16 -0
  266. package/src/ui/a/ContentTree/ContentTree.jsx +88 -0
  267. package/src/ui/a/ContentTree/common/Tree/Tree.jsx +138 -0
  268. package/src/ui/a/ContentTree/common/Tree/index.js +2 -0
  269. package/src/ui/a/ContentTree/common/index.js +3 -0
  270. package/src/ui/a/ContentTree/common/useContentTree.js +83 -0
  271. package/src/ui/a/ContentTree/common/useFirstVisibleNode.js +59 -0
  272. package/src/ui/a/ContentTree/index.js +2 -0
  273. package/src/ui/a/ContentTree/styles.scss +33 -0
  274. package/src/ui/a/Conversation/Conversation.jsx +15 -7
  275. package/src/ui/a/Conversation/common/Message/Message.jsx +38 -6
  276. package/src/ui/a/Conversation/styles.scss +132 -33
  277. package/src/ui/a/Label/Label.jsx +93 -0
  278. package/src/ui/a/Label/index.js +2 -0
  279. package/src/ui/a/Label/styles.scss +34 -0
  280. package/src/ui/a/OvalIllustration/OvalIllustration.jsx +134 -0
  281. package/src/ui/a/OvalIllustration/index.js +2 -0
  282. package/src/ui/a/OvalIllustration/styles.scss +102 -0
  283. package/src/ui/a/Popover/Popover.jsx +157 -0
  284. package/src/ui/a/Popover/index.js +2 -0
  285. package/src/ui/a/Popover/styles.scss +33 -0
  286. package/src/ui/a/Shapes/Shapes.jsx +10 -0
  287. package/src/ui/a/Shapes/styles.scss +42 -9
  288. package/src/ui/a/SnapScroller/SnapScroller.jsx +83 -0
  289. package/src/ui/a/SnapScroller/index.js +2 -0
  290. package/src/ui/a/SnapScroller/styles.scss +38 -0
  291. package/src/ui/a/index.js +11 -4
  292. package/src/ui/b/Button/Button.jsx +9 -1
  293. package/src/ui/b/Button/styles.scss +55 -10
  294. package/src/ui/b/Logo/Logo.jsx +41 -41
  295. package/src/ui/b/Logo/styles.scss +0 -138
  296. package/src/ui/b/Page/common/PageHelmet/PageHelmet.jsx +2 -2
  297. package/src/ui/b/Page/common/Section/Section.jsx +19 -2
  298. package/src/ui/b/SocialMediaButton/SocialMediaButton.jsx +4 -4
  299. package/src/ui/b/ThemeSelector/ThemeSelector.jsx +2 -2
  300. package/src/ui/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.jsx +12 -5
  301. package/src/ui/c/ContentSlides/common/Navigator/Navigator.jsx +3 -2
  302. package/src/ui/c/ContentSlides/styles.scss +10 -4
  303. package/src/ui/c/SocialMediaShareButton/SocialMediaShareButton.jsx +121 -0
  304. package/src/ui/c/SocialMediaShareButton/index.js +2 -0
  305. package/src/ui/c/SocialMediaShareButton/styles.scss +39 -0
  306. package/src/ui/c/index.js +1 -0
  307. package/src/ui/f/FormInput/FormInput.jsx +38 -1
  308. package/src/ui/f/FormInput/styles.scss +11 -0
  309. package/src/ui/f/common/Debugger/Debugger.jsx +1 -1
  310. package/src/ui/f/common/Description/Description.jsx +34 -29
  311. package/src/ui/f/common/Label/Label.jsx +1 -1
  312. package/src/ui/f/common/Label/styles.scss +1 -1
  313. package/src/ui/f/fields/ChoicesInput/ChoicesInput.jsx +1 -1
  314. package/src/ui/f/fields/ChoicesInput/styles.scss +17 -2
  315. package/src/ui/f/fields/QueryCombobox/QueryCombobox.jsx +227 -0
  316. package/src/ui/f/fields/QueryCombobox/common/Combobox/Combobox.jsx +218 -0
  317. package/src/ui/f/fields/QueryCombobox/common/Combobox/index.js +2 -0
  318. package/src/ui/f/fields/QueryCombobox/common/Menu/Menu.jsx +103 -0
  319. package/src/ui/f/fields/QueryCombobox/common/Menu/index.js +2 -0
  320. package/src/ui/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.jsx +314 -0
  321. package/src/ui/f/fields/QueryCombobox/common/MultipleCombobox/index.js +2 -0
  322. package/src/ui/f/fields/QueryCombobox/common/index.js +3 -0
  323. package/src/ui/f/fields/QueryCombobox/index.js +2 -0
  324. package/src/ui/f/fields/QueryCombobox/styles.scss +90 -0
  325. package/src/ui/f/fields/QuerySelect/QuerySelect.jsx +200 -0
  326. package/src/ui/f/fields/QuerySelect/index.js +2 -0
  327. package/src/ui/f/fields/RatingsInput/RatingsInput.jsx +54 -19
  328. package/src/ui/f/fields/RatingsInput/styles.scss +29 -20
  329. package/src/ui/f/fields/SelectInput/SelectInput.jsx +66 -8
  330. package/src/ui/f/fields/SelectInput/styles.scss +33 -13
  331. package/src/ui/f/fields/TextInput/TextInput.jsx +44 -10
  332. package/src/ui/f/fields/TextInput/styles.scss +16 -7
  333. package/src/ui/f/fields/TextareaInput/TextareaInput.jsx +42 -21
  334. package/src/ui/f/fields/TextareaInput/styles.scss +19 -6
  335. package/src/ui/f/fields/index.js +2 -3
  336. package/src/ui/form-reset.scss +1 -1
  337. package/src/ui/index.js +2 -0
  338. package/src/ui/test/QueryLoader/QueryLoader.jsx +41 -0
  339. package/src/ui/test/QueryLoader/__generated__/QueryLoaderHelloQuery.graphql.js +68 -0
  340. package/src/ui/test/QueryLoader/common/PreloadedTestData/PreloadedTestData.jsx +51 -0
  341. package/src/ui/test/QueryLoader/common/PreloadedTestData/index.js +2 -0
  342. package/src/ui/test/QueryLoader/common/index.js +1 -0
  343. package/src/ui/test/QueryLoader/index.js +2 -0
  344. package/src/ui/test/index.js +1 -0
  345. package/src/ui/utils/hooks/index.js +2 -0
  346. package/src/ui/utils/hooks/useDynamicPosition.js +104 -0
  347. package/src/ui/utils/hooks/useWindowSize.js +32 -0
  348. package/src/ui/utils/index.js +1 -0
  349. package/stylelint.config.js +13 -13
  350. package/dist/cjs/a/GradientBackground/index.js +0 -15
  351. package/dist/cjs/a/GradientBackground/styles.scss +0 -191
  352. package/dist/cjs/c/AcceptCookies/styles.scss +0 -49
  353. package/dist/cjs/c/BlogCategoryButton/index.js +0 -15
  354. package/dist/cjs/c/BlogContext/BlogContextProvider.js +0 -63
  355. package/dist/cjs/c/BlogPost/BlogPost.js +0 -147
  356. package/dist/cjs/c/BlogPost/styles.scss +0 -33
  357. package/dist/cjs/c/BlogPostsList/common/Card/Card.js +0 -170
  358. package/dist/cjs/c/BlogPostsList/common/index.js +0 -13
  359. package/dist/cjs/c/BlogPostsList/index.js +0 -15
  360. package/dist/cjs/c/BlogPostsList/styles.scss +0 -72
  361. package/dist/cjs/c/SiteFooter/common/index.js +0 -13
  362. package/dist/cjs/c/SiteFooter/styles.scss +0 -34
  363. package/dist/cjs/c/SiteHeaderCTA/index.js +0 -15
  364. package/dist/cjs/c/SiteHeaderCTA/styles.scss +0 -44
  365. package/dist/cjs/c/SiteMission/SiteMission.js +0 -113
  366. package/dist/cjs/c/SiteMission/styles.scss +0 -30
  367. package/dist/cjs/c/SiteNavigation/SiteNavigation.js +0 -130
  368. package/dist/cjs/c/SiteNavigation/index.js +0 -15
  369. package/dist/cjs/c/SiteNavigation/styles.scss +0 -118
  370. package/dist/cjs/c/SiteOnboardingStep/SiteOnboardingStep.js +0 -98
  371. package/dist/cjs/c/SiteOnboardingStep/index.js +0 -15
  372. package/dist/cjs/c/SiteOnboardingStep/styles.scss +0 -51
  373. package/dist/cjs/c/SitePricing/SitePricing.js +0 -108
  374. package/dist/cjs/c/SitePricing/styles.scss +0 -73
  375. package/dist/cjs/c/SiteServices/SiteServices.js +0 -211
  376. package/dist/cjs/c/SiteServices/index.js +0 -15
  377. package/dist/cjs/c/SiteServices/styles.scss +0 -138
  378. package/dist/cjs/c/TeamGallery/common/PersonCard/PersonCard.js +0 -84
  379. package/dist/cjs/c/TeamGallery/common/PersonCard/index.js +0 -15
  380. package/dist/cjs/c/TeamGallery/styles.scss +0 -100
  381. package/dist/cjs/c/Testimonials/Testimonials.js +0 -119
  382. package/dist/cjs/c/Testimonials/index.js +0 -15
  383. package/dist/cjs/c/Testimonials/styles.scss +0 -112
  384. package/dist/cjs/experimental/GradientBackground/index.js +0 -15
  385. package/dist/cjs/experimental/GradientBackground/styles.scss +0 -64
  386. package/dist/cjs/experimental/index.js +0 -13
  387. package/dist/cjs/f/fields/TaskRecommendation/TaskRecommendation.js +0 -129
  388. package/dist/cjs/f/fields/TaskRecommendation/index.js +0 -15
  389. package/dist/cjs/f/fields/TaskRecommendation/styles.scss +0 -37
  390. package/dist/cjs/f/fields/TextArea/TextArea.js +0 -141
  391. package/dist/cjs/f/fields/TextArea/styles.scss +0 -19
  392. package/dist/es/a/GradientBackground/GradientBackground.js +0 -118
  393. package/dist/es/a/GradientBackground/index.js +0 -2
  394. package/dist/es/a/GradientBackground/styles.scss +0 -191
  395. package/dist/es/c/AcceptCookies/AcceptCookies.js +0 -117
  396. package/dist/es/c/AcceptCookies/index.js +0 -2
  397. package/dist/es/c/AcceptCookies/styles.scss +0 -49
  398. package/dist/es/c/BlogCategoryButton/BlogCategoryButton.js +0 -68
  399. package/dist/es/c/BlogCategoryButton/index.js +0 -2
  400. package/dist/es/c/BlogContext/BlogContextProvider.js +0 -45
  401. package/dist/es/c/BlogContext/ContextProvider.js +0 -45
  402. package/dist/es/c/BlogContext/index.js +0 -4
  403. package/dist/es/c/BlogPost/BlogPost.js +0 -128
  404. package/dist/es/c/BlogPost/styles.scss +0 -33
  405. package/dist/es/c/BlogPostsList/common/Card/Card.js +0 -143
  406. package/dist/es/c/BlogPostsList/common/index.js +0 -1
  407. package/dist/es/c/BlogPostsList/index.js +0 -2
  408. package/dist/es/c/BlogPostsList/styles.scss +0 -72
  409. package/dist/es/c/SiteFooter/common/Section/Section.js +0 -73
  410. package/dist/es/c/SiteFooter/common/index.js +0 -1
  411. package/dist/es/c/SiteFooter/index.js +0 -2
  412. package/dist/es/c/SiteFooter/styles.scss +0 -34
  413. package/dist/es/c/SiteHeaderCTA/SiteHeaderCTA.js +0 -92
  414. package/dist/es/c/SiteHeaderCTA/index.js +0 -2
  415. package/dist/es/c/SiteHeaderCTA/styles.scss +0 -44
  416. package/dist/es/c/SiteMission/SiteMission.js +0 -96
  417. package/dist/es/c/SiteMission/index.js +0 -2
  418. package/dist/es/c/SiteMission/styles.scss +0 -30
  419. package/dist/es/c/SiteNavigation/SiteNavigation.js +0 -111
  420. package/dist/es/c/SiteNavigation/index.js +0 -2
  421. package/dist/es/c/SiteNavigation/styles.scss +0 -118
  422. package/dist/es/c/SiteOnboardingStep/SiteOnboardingStep.js +0 -81
  423. package/dist/es/c/SiteOnboardingStep/index.js +0 -2
  424. package/dist/es/c/SiteOnboardingStep/styles.scss +0 -51
  425. package/dist/es/c/SitePricing/SitePricing.js +0 -91
  426. package/dist/es/c/SitePricing/index.js +0 -2
  427. package/dist/es/c/SitePricing/styles.scss +0 -73
  428. package/dist/es/c/SiteServices/SiteServices.js +0 -195
  429. package/dist/es/c/SiteServices/index.js +0 -2
  430. package/dist/es/c/SiteServices/styles.scss +0 -138
  431. package/dist/es/c/TeamGallery/common/PersonCard/PersonCard.js +0 -64
  432. package/dist/es/c/TeamGallery/common/PersonCard/index.js +0 -2
  433. package/dist/es/c/TeamGallery/common/index.js +0 -1
  434. package/dist/es/c/TeamGallery/index.js +0 -2
  435. package/dist/es/c/TeamGallery/styles.scss +0 -100
  436. package/dist/es/c/Testimonials/Testimonials.js +0 -99
  437. package/dist/es/c/Testimonials/index.js +0 -2
  438. package/dist/es/c/Testimonials/styles.scss +0 -112
  439. package/dist/es/experimental/GradientBackground/GradientBackground.js +0 -76
  440. package/dist/es/experimental/GradientBackground/index.js +0 -2
  441. package/dist/es/experimental/GradientBackground/styles.scss +0 -64
  442. package/dist/es/experimental/index.js +0 -1
  443. package/dist/es/f/fields/TaskRecommendation/TaskRecommendation.js +0 -111
  444. package/dist/es/f/fields/TaskRecommendation/index.js +0 -2
  445. package/dist/es/f/fields/TaskRecommendation/styles.scss +0 -37
  446. package/dist/es/f/fields/TextArea/TextArea.js +0 -124
  447. package/dist/es/f/fields/TextArea/styles.scss +0 -19
  448. package/src/stories/f/CheckboxInput.stories.jsx +0 -37
  449. package/src/stories/f/RadioInput.stories.jsx +0 -37
  450. package/src/stories/f/TaskRecommendationInput.stories.jsx +0 -38
  451. package/src/ui/a/SiteContext/index.js +0 -5
  452. package/src/ui/f/fields/CheckboxInput/CheckboxInput.jsx +0 -107
  453. package/src/ui/f/fields/CheckboxInput/index.js +0 -2
  454. package/src/ui/f/fields/CheckboxInput/styles.scss +0 -28
  455. package/src/ui/f/fields/RadioInput/RadioInput.jsx +0 -112
  456. package/src/ui/f/fields/RadioInput/index.js +0 -2
  457. package/src/ui/f/fields/RadioInput/styles.scss +0 -26
  458. package/src/ui/f/fields/TaskRecommendationInput/TaskRecommendationInput.jsx +0 -130
  459. package/src/ui/f/fields/TaskRecommendationInput/index.js +0 -2
  460. package/src/ui/f/fields/TaskRecommendationInput/styles.scss +0 -41
@@ -0,0 +1,273 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ import * as React from 'react'
3
+
4
+ import { Formik, Form, useField } from 'formik'
5
+
6
+ import { Button, FormDebugger, QueryCombobox } from 'ui'
7
+
8
+ import { fruits } from '../utils/testData'
9
+
10
+ import generateNodeId from '../utils/generateNodeId'
11
+
12
+ import {
13
+ RelayEnvironmentProvider,
14
+ mockRelayOperation,
15
+ // environment,
16
+ } from '../utils/relay'
17
+
18
+ export default {
19
+ title :'f/fields/QueryCombobox',
20
+ component :QueryCombobox,
21
+ subcomponents:{
22
+ // Item:QueryCombobox.Item
23
+ },
24
+ decorators:[
25
+ (storyfn) => (
26
+ <RelayEnvironmentProvider>
27
+ { storyfn() }
28
+ </RelayEnvironmentProvider>
29
+ ),
30
+ ],
31
+ argTypes:{
32
+ // backgroundColor:{ control: 'color' },
33
+ multiple:{ control: 'boolean' },
34
+ disabled:{ control: 'boolean' },
35
+ },
36
+ }
37
+
38
+ const allTeamsMockData = {
39
+ PageInfo() {
40
+ return {
41
+ hasNextPage :true,
42
+ hasPreviousPage:true,
43
+ }
44
+ },
45
+ TeamNodeConnection:(args) => {
46
+ const edges = fruits.map((fruit) => ({
47
+ node:{
48
+ id :generateNodeId('TeamNode'),
49
+ name:fruit,
50
+ },
51
+ }))
52
+
53
+ // eslint-disable-next-line camelcase
54
+ const { name_Icontains } = args?.args || {}
55
+
56
+ return ({
57
+ pageInfo:{
58
+ hasNextPage :true,
59
+ hasPreviousPage:true,
60
+ },
61
+ // eslint-disable-next-line camelcase
62
+ edges:name_Icontains?.trim()
63
+ ? edges.filter(({ node }) => node.name
64
+ .toLowerCase()
65
+ .includes(name_Icontains.toLowerCase()))
66
+ : [],
67
+ })
68
+ },
69
+ }
70
+
71
+ const FETCH_TEAMS_QUERY = graphql`
72
+ query QueryComboboxAllTeamsQuery($name_Icontains: String) {
73
+ allTeams(name_Icontains: $name_Icontains) {
74
+ edges {
75
+ node {
76
+ id
77
+ name
78
+ }
79
+ }
80
+ }
81
+ }
82
+ `
83
+
84
+ // eslint-disable-next-line react/prop-types
85
+ const ResolvedTemplate = ({ defaultFormikState, ...otherProps }) => {
86
+ mockRelayOperation(allTeamsMockData)
87
+ mockRelayOperation(allTeamsMockData)
88
+ mockRelayOperation(allTeamsMockData)
89
+
90
+ const { multiple } = otherProps
91
+
92
+ const Content = () => {
93
+ const name = multiple ? 'teams' : 'team'
94
+
95
+ const [, meta, helpers] = useField(name)
96
+
97
+ const { value } = meta
98
+
99
+ const { setValue } = helpers
100
+
101
+ const updateFormikState = () => {
102
+ if (multiple) {
103
+ setValue([
104
+ ...(value || []),
105
+ {
106
+ value:'VGVhbU5vZGU6MDAxZTIyOGEtYzA5My00MGI0LWE1MTUtYTNkMTM1NTE1MDNk',
107
+ label:'Matomoko',
108
+ },
109
+ {
110
+ value:'VGVhbU5vZGU6MDAxZTIyOGEtYzA5My00MGI0LWE1MTUtYTNkMTM1NTE1MDNp',
111
+ label:'Chungwa',
112
+ },
113
+ ])
114
+ } else {
115
+ setValue({
116
+ value:'VGVhbU5vZGU6MDAxZTIyOGEtYzA5My00MGI0LWE1MTUtYTNkMTM1NTE1MDNk',
117
+ label:'Kafagoho',
118
+ })
119
+ }
120
+ }
121
+
122
+ return (
123
+ <>
124
+ <QueryCombobox
125
+ label="Search for a team"
126
+ optionsKeyMap={{
127
+ value :'id',
128
+ getLabel:(node) => node.name,
129
+ }}
130
+ query={{
131
+ graphql :FETCH_TEAMS_QUERY,
132
+ accessor:'allTeams',
133
+ }}
134
+ name={name}
135
+ searchVariable="name_Icontains"
136
+ {...otherProps}
137
+ />
138
+ <div
139
+ style={{
140
+ display :'flex',
141
+ alignItems :'flex-end',
142
+ flexDirection:'column',
143
+ }}
144
+ >
145
+ <FormDebugger />
146
+ <Button
147
+ onClick={updateFormikState}
148
+ >
149
+ {multiple ? 'Add formik values' : 'Replace formik value'}
150
+ </Button>
151
+ </div>
152
+ </>
153
+ )
154
+ }
155
+
156
+ let initialValues = defaultFormikState
157
+
158
+ if (!defaultFormikState && multiple) {
159
+ initialValues = []
160
+ } else if (!defaultFormikState && !multiple) {
161
+ initialValues = {}
162
+ }
163
+
164
+ return (
165
+ <Formik
166
+ initialValues={initialValues}
167
+ >
168
+ <Form>
169
+ <Content />
170
+ </Form>
171
+ </Formik>
172
+ )
173
+ }
174
+
175
+ export const SingleSelect = ResolvedTemplate.bind({})
176
+ SingleSelect.args = {
177
+ multiple:false,
178
+ }
179
+
180
+ export const SingleSelectWithDefaultFormikState = ResolvedTemplate.bind({})
181
+ SingleSelectWithDefaultFormikState.args = {
182
+ multiple :false,
183
+ defaultFormikState:{
184
+ team:{
185
+ value:'VGVhbU5vZGU6MDAxZTIyOGEtYzA5My00MGI0LWE1MTUtYTNkMTM1NTE1MDNl',
186
+ label:'Apple',
187
+ },
188
+ },
189
+ }
190
+
191
+ export const MultipleSelect = ResolvedTemplate.bind({})
192
+ MultipleSelect.args = {
193
+ multiple :true,
194
+ defaultFormikState:{ teams: [] },
195
+ }
196
+
197
+ export const MultipleSelectWithDefaultFormikState = ResolvedTemplate.bind({})
198
+ MultipleSelectWithDefaultFormikState.args = {
199
+ multiple :true,
200
+ defaultFormikState:{
201
+ teams:[
202
+ {
203
+ value:'VGVhbU5vZGU6MDAxZTIyOGEtYzA5My00MGI0LWE1MTUtYTNkMTM1NTE1MDNl',
204
+ label:'Apple',
205
+ },
206
+ {
207
+ value:'VGVhbU5vZGU6MDA0N2U4MzktODY0Zi00N2U5LTg3ZjgtZGUwMmM2Yzg1YWJm',
208
+ label:'Pear',
209
+ },
210
+ ],
211
+ },
212
+ }
213
+
214
+ // eslint-disable-next-line react/prop-types
215
+ // const RejectedTemplate = ({ multiple }) => {
216
+ // const Content = () => {
217
+ // environment.mock.queuePendingOperation(
218
+ // FETCH_TEAMS_QUERY,
219
+ // { name_Icontains: 'a' },
220
+ // )
221
+
222
+ // environment.mock.rejectMostRecentOperation('An error has occured while fetching the teams')
223
+
224
+ // const name = multiple ? 'teams' : 'team'
225
+
226
+ // const [, meta, helpers] = useField(name)
227
+
228
+ // const { setValue, setError } = helpers
229
+
230
+ // const { error } = meta
231
+
232
+ // return (
233
+ // <>
234
+ // <QueryCombobox
235
+ // query={FETCH_TEAMS_QUERY}
236
+ // label="Search for a team"
237
+ // optionsKeyMap={{
238
+ // value:'id',
239
+ // label:'name',
240
+ // }}
241
+ // error={error}
242
+ // setValue={setValue}
243
+ // setError={setError}
244
+ // name={name}
245
+ // multiple={multiple}
246
+ // graphQlNode="allTeams"
247
+ // searchVariable="name_Icontains"
248
+ // />
249
+ // <FormDebugger />
250
+ // </>
251
+ // )
252
+ // }
253
+
254
+ // return (
255
+ // <Formik
256
+ // initialValues={{ team: '' }}
257
+ // >
258
+ // <Form>
259
+ // <Content />
260
+ // </Form>
261
+ // </Formik>
262
+ // )
263
+ // }
264
+
265
+ // export const SingleSelectWithError = RejectedTemplate.bind({})
266
+ // SingleSelectWithError.args = {
267
+ // multiple:false,
268
+ // }
269
+
270
+ // export const MultipleSelectWithError = RejectedTemplate.bind({})
271
+ // MultipleSelectWithError.args = {
272
+ // multiple:true,
273
+ // }
@@ -0,0 +1,135 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ import * as React from 'react'
3
+
4
+ import { QuerySelect, FormDebugger } from 'ui'
5
+
6
+ import { Formik, Form } from 'formik'
7
+
8
+ import generateNodeId from '../utils/generateNodeId'
9
+
10
+ import {
11
+ RelayEnvironmentProvider,
12
+ mockRelayOperation,
13
+ environment,
14
+ } from '../utils/relay'
15
+
16
+ export default {
17
+ title :'f/fields/QuerySelect',
18
+ component :QuerySelect,
19
+ subcomponents:{
20
+ // Item:QuerySelect.Item
21
+ },
22
+ decorators:[
23
+ // storyfn => <div className="">{ storyfn() }</div>,
24
+ (storyfn) => (
25
+ <RelayEnvironmentProvider>
26
+ { storyfn() }
27
+ </RelayEnvironmentProvider>
28
+ ),
29
+ ],
30
+ argTypes:{
31
+ // backgroundColor:{ control: 'color' },
32
+ isLoading:{ control: 'boolean' },
33
+ },
34
+ }
35
+ const statuses = [
36
+ 'Backlog',
37
+ 'In Review',
38
+ 'In Progress',
39
+ 'Requested',
40
+ 'Blocked',
41
+ 'Completed',
42
+ ]
43
+ const allTaskStatusesMockData = {
44
+ PageInfo() {
45
+ return {
46
+ hasNextPage :true,
47
+ hasPreviousPage:true,
48
+ }
49
+ },
50
+ TaskStatusNodeConnection:() => ({
51
+ pageInfo:{
52
+ hasNextPage :true,
53
+ hasPreviousPage:true,
54
+ },
55
+
56
+ edges:statuses.map((status) => ({
57
+ node:{
58
+ id:generateNodeId('TaskStatusNode'),
59
+ status,
60
+ },
61
+ })),
62
+ }),
63
+ }
64
+
65
+ const FETCH_ALL_TASK_STATUSES = graphql`
66
+ query QuerySelectAllTaskStatusesQuery {
67
+ allTaskStatuses {
68
+ edges {
69
+ node {
70
+ id
71
+ status
72
+ }
73
+ }
74
+ }
75
+ }
76
+ `
77
+
78
+ // eslint-disable-next-line react/prop-types
79
+ const Template = ({ isLoading, defaultFormikState }) => {
80
+ if (isLoading) {
81
+ setTimeout(() => {
82
+ mockRelayOperation(allTaskStatusesMockData)
83
+ environment.mock.queuePendingOperation(
84
+ FETCH_ALL_TASK_STATUSES,
85
+ )
86
+ }, 500)
87
+ } else {
88
+ mockRelayOperation(allTaskStatusesMockData)
89
+ environment.mock.queuePendingOperation(
90
+ FETCH_ALL_TASK_STATUSES,
91
+ )
92
+ }
93
+
94
+ const Content = () => (
95
+ <>
96
+ <QuerySelect
97
+ name="status"
98
+ label="Select Task Status"
99
+ query={{
100
+ graphql :FETCH_ALL_TASK_STATUSES,
101
+ accessor:'allTaskStatuses',
102
+ }}
103
+ optionsKeyMap={{
104
+ value :'id',
105
+ getLabel:(node) => node.status,
106
+ }}
107
+ />
108
+ <FormDebugger />
109
+ </>
110
+ )
111
+
112
+ const initialValues = defaultFormikState ?? { status: '' }
113
+
114
+ return (
115
+ <Formik
116
+ initialValues={initialValues}
117
+ >
118
+ <Form>
119
+ <Content />
120
+ </Form>
121
+ </Formik>
122
+ )
123
+ }
124
+
125
+ export const Base = Template.bind({})
126
+ export const WithDefaultValue = Template.bind({})
127
+ WithDefaultValue.args = {
128
+ defaultFormikState:{
129
+ status:'VGFza1N0YXR1c05vZGU6NGRiYjNlMmItMGIxYy00ZjIxLTk0MmUtZTNjZGQwMjdiNjU3',
130
+ },
131
+ }
132
+ export const LoadingOptions = Template.bind({})
133
+ LoadingOptions.args = {
134
+ isLoading:true,
135
+ }
@@ -23,34 +23,41 @@ export default {
23
23
  ),
24
24
  ],
25
25
  argTypes:{
26
- backgroundColor:{ control: 'color' },
26
+ // backgroundColor:{ control: 'color' },
27
+ ratingCount :{ control: 'number' },
28
+ name :{ control: 'text' },
29
+ label :{ control: 'text' },
30
+ showRatingValue :{ control: 'boolean' },
31
+ displayRatingsLabel:{ control: 'boolean' },
32
+ labelMax :{ control: 'text' },
33
+ labelMin :{ control: 'text' },
27
34
  },
28
35
  }
29
36
 
30
- export const Base = () => (
37
+ const Template = (args) => (
31
38
  <>
32
- <RatingsInput ratingCount={5} name="ratings" />
39
+ <RatingsInput {...args} />
33
40
  <FormDebugger />
34
41
  </>
35
42
  )
36
43
 
37
- export const Numbers = () => (
38
- <>
39
- <RatingsInput ratingCount={10} name="ratings" showRatingValue />
40
- <FormDebugger />
41
- </>
42
- )
44
+ export const Base = Template.bind({})
45
+ Base.args = {
46
+ ratingCount:5,
47
+ name :'ratings',
48
+ label :'Your Rating',
49
+ }
43
50
 
44
- export const Labels = () => (
45
- <>
46
- <RatingsInput
47
- labelMax="very satisfied."
48
- labelMin="not satisfied."
49
- ratingCount={10}
50
- name="ratings"
51
- showRatingValue
52
- displayRatingsLabel
53
- />
54
- <FormDebugger />
55
- </>
56
- )
51
+ export const Numbers = Template.bind({})
52
+ Numbers.args = {
53
+ ...Base.args,
54
+ showRatingValue:true,
55
+ }
56
+
57
+ export const Labels = Template.bind({})
58
+ Labels.args = {
59
+ ...Numbers.args,
60
+ labelMax :'very satisfied.',
61
+ labelMin :'not satisfied.',
62
+ displayRatingsLabel:true,
63
+ }
@@ -13,69 +13,61 @@ export default {
13
13
  decorators:[
14
14
  (storyfn) => (
15
15
  <Formik
16
- initialValues={{ workType: 'Work' }}
16
+ initialValues={{ workType: '' }}
17
17
  >
18
18
  <Form>
19
-
20
19
  { storyfn() }
21
20
  </Form>
22
21
  </Formik>
23
22
  ),
24
23
  ],
25
24
  argTypes:{
26
- backgroundColor:{ control: 'color' },
25
+ // backgroundColor:{ control: 'color' },
26
+ disabled:{ control: 'boolean' },
27
27
  },
28
28
  }
29
29
 
30
- export const Base = () => (
30
+ const Template = (args) => (
31
31
  <>
32
- <SelectInput
33
- name="workType"
34
- label="Work Type"
35
- options={['Work', 'Managing', 'Training']}
36
- />
32
+ <SelectInput {...args} />
37
33
  <FormDebugger />
38
34
  </>
39
35
  )
40
36
 
41
- export const Objects = () => (
42
- <>
43
- <SelectInput
44
- name="workType"
45
- label="Work Type"
46
- options={[
47
- { value: '20th Aug 2020 to 19th Sept, 2020', label: '20th Aug 2020 to 19th Sept, 2020' },
48
- { value: '20th Sept 2020 to 19th Oct, 2020', label: '20th Sept 2020 to 19th Oct, 2020' },
49
- ]}
50
- />
51
- <FormDebugger />
52
- </>
53
- )
37
+ export const Base = Template.bind({})
38
+ Base.args = {
39
+ name :'workType',
40
+ label :'Work Type',
41
+ options:[
42
+ { value: '', label: 'Select an option', disabled: true },
43
+ { value: 'Work', label: 'Work' },
44
+ { value: 'Managing', label: 'Managing' },
45
+ { value: 'Training', label: 'Training' },
46
+ ],
47
+ }
54
48
 
55
- export const StringAndObjects = () => (
56
- <>
57
- <SelectInput
58
- name="workType"
59
- label="Work Type"
60
- options={['Work', 'Managing', 'Training',
61
- { value: '20th Aug 2020 to 19th Sept, 2020', label: '20th Aug 2020 to 19th Sept, 2020' },
62
- { value: '20th Sept 2020 to 19th Oct, 2020', label: '20th Sept 2020 to 19th Oct, 2020' },
63
- ]}
64
- />
65
- <FormDebugger />
66
- </>
67
- )
68
- export const DisabledSelectInput = () => (
69
- <>
70
- <SelectInput
71
- name="workType"
72
- label="Work Type"
73
- options={['Work', 'Managing', 'Training',
74
- { value: '20th Aug 2020 to 19th Sept, 2020', label: '20th Aug 2020 to 19th Sept, 2020' },
75
- { value: '20th Sept 2020 to 19th Oct, 2020', label: '20th Sept 2020 to 19th Oct, 2020' },
76
- ]}
77
- disabled
78
- />
79
- <FormDebugger />
80
- </>
81
- )
49
+ export const StringAndObjects = Template.bind({})
50
+ StringAndObjects.args = {
51
+ ...Base.args,
52
+ options:[...Base.args.options, 'Option1', 'Option2', 'Option3'],
53
+ }
54
+
55
+ const requiredInput = (inputValue) => {
56
+ let error = ''
57
+
58
+ if (!inputValue || !inputValue?.length === 0) {
59
+ error = 'This information is required'
60
+ }
61
+ return error
62
+ }
63
+ export const Required = Template.bind({})
64
+ Required.args = {
65
+ ...Base.args,
66
+ validate:requiredInput,
67
+ }
68
+
69
+ export const DisabledSelectInput = Template.bind({})
70
+ DisabledSelectInput.args = {
71
+ ...Base.args,
72
+ disabled:true,
73
+ }
@@ -26,54 +26,74 @@ export default {
26
26
  ),
27
27
  ],
28
28
  argTypes:{
29
- backgroundColor:{ control: 'color' },
29
+ // backgroundColor:{ control: 'color' },
30
+ placeholder :{ control: 'text' },
31
+ autoComplete:{ control: 'select', options: ['off', 'on'] },
32
+ disabled :{ control: 'boolean' },
33
+ type :{ control: 'text' },
34
+ name :{ control: 'text' },
35
+ label :{ control: 'text' },
30
36
  },
31
37
  }
32
38
 
33
- export const Base = () => {
34
- const validate = (value) => {
35
- let errorMessage = ''
36
- const isValid = value.length > 3
39
+ // eslint-disable-next-line react/prop-types
40
+ const Template = (args) => (
41
+ <div className=" u2 pb-u">
42
+ <TextInput {...args} />
43
+ <FormDebugger />
44
+ </div>
45
+ )
46
+
47
+ export const Base = Template.bind({})
48
+ Base.args = {
49
+ name :'firstName',
50
+ label:"What's your first name ?",
51
+ }
52
+
53
+ const validate = (value) => {
54
+ let errorMessage = ''
55
+ const isValid = value.length > 3
37
56
 
38
- if (!isValid) {
39
- errorMessage = 'Value should be greater than 3 characters'
40
- }
41
- return errorMessage
57
+ if (!isValid) {
58
+ errorMessage = 'Value should be greater than 3 characters'
42
59
  }
43
- return (
44
- <div className="y-background1 b-dark-y u2 pb-u">
45
- <TextInput
46
- name="firstName"
47
- label="What's your first name ?"
48
- validate={validate}
49
- />
50
- <FormDebugger />
51
- </div>
52
- )
60
+ return errorMessage
53
61
  }
54
62
 
55
- export const DisabledTextInput = () => (
56
- <div className="y-background1 b-dark-y u2 pb-u">
57
- <TextInput
58
- name="firstName"
59
- label="What's your first name ?"
60
- disabled
61
- />
62
- </div>
63
- )
63
+ export const WithValidation = Template.bind({})
64
+ WithValidation.args = {
65
+ ...Base.args,
66
+ validate,
67
+ }
64
68
 
65
- export const DateTime = () => (
66
- <div className="y-background1 b-dark-y">
67
- <TextInput
68
- name="date"
69
- label="Select date"
70
- type="date"
71
- />
72
- <TextInput
73
- name="time"
74
- label="Select time"
75
- type="time"
76
- />
77
- <FormDebugger />
78
- </div>
79
- )
69
+ export const WithPlaceholder = Template.bind({})
70
+ WithPlaceholder.args = {
71
+ ...Base.args,
72
+ placeholder:'First Name',
73
+ }
74
+
75
+ export const WithAutoCompleteOff = Template.bind({})
76
+ WithAutoCompleteOff.args = {
77
+ ...Base.args,
78
+ autoComplete:'off',
79
+ }
80
+
81
+ export const WithDisabled = Template.bind({})
82
+ WithDisabled.args = {
83
+ ...Base.args,
84
+ disabled:true,
85
+ }
86
+
87
+ export const Date = Template.bind({})
88
+ Date.args = {
89
+ type :'date',
90
+ name :'date',
91
+ label:'Select date',
92
+ }
93
+
94
+ export const Time = Template.bind({})
95
+ Time.args = {
96
+ type :'time',
97
+ name :'time',
98
+ label:'Select time',
99
+ }