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

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 (373) 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/Alert/Alert.js +141 -0
  5. package/dist/cjs/a/Alert/index.js +15 -0
  6. package/dist/cjs/a/Alert/styles.scss +74 -0
  7. package/dist/cjs/a/AppContext/Context.js +16 -0
  8. package/dist/cjs/a/AppContext/ContextProvider.js +96 -0
  9. package/dist/cjs/a/AppContext/index.js +39 -0
  10. package/dist/cjs/a/AppContext/useApp.js +16 -0
  11. package/dist/cjs/a/AppContext/useTheme.js +45 -0
  12. package/dist/cjs/a/BackgroundGradient/BackgroundGradient.js +77 -0
  13. package/dist/cjs/a/BackgroundGradient/index.js +15 -0
  14. package/dist/cjs/a/BackgroundGradient/styles.scss +16 -0
  15. package/dist/cjs/a/ContentTree/ContentTree.js +83 -0
  16. package/dist/cjs/a/ContentTree/common/Tree/Tree.js +116 -0
  17. package/dist/cjs/a/ContentTree/common/Tree/index.js +15 -0
  18. package/dist/cjs/a/ContentTree/common/index.js +31 -0
  19. package/dist/cjs/a/ContentTree/common/useContentTree.js +82 -0
  20. package/dist/cjs/a/ContentTree/common/useFirstVisibleNode.js +65 -0
  21. package/dist/cjs/a/ContentTree/index.js +15 -0
  22. package/dist/cjs/a/ContentTree/styles.scss +33 -0
  23. package/dist/cjs/a/Conversation/Conversation.js +14 -8
  24. package/dist/cjs/a/Conversation/common/Message/Message.js +32 -6
  25. package/dist/cjs/a/Conversation/styles.scss +132 -33
  26. package/dist/cjs/a/OvalIllustration/OvalIllustration.js +133 -0
  27. package/dist/cjs/a/OvalIllustration/index.js +15 -0
  28. package/dist/cjs/a/OvalIllustration/styles.scss +102 -0
  29. package/dist/cjs/a/Popover/Popover.js +134 -0
  30. package/dist/cjs/a/Popover/common/Divider/Divider.js +67 -0
  31. package/dist/cjs/a/Popover/common/Divider/index.js +15 -0
  32. package/dist/cjs/a/Popover/common/Item/Item.js +67 -0
  33. package/dist/cjs/a/Popover/common/Item/index.js +15 -0
  34. package/dist/cjs/a/Popover/common/index.js +21 -0
  35. package/dist/cjs/a/Popover/index.js +15 -0
  36. package/dist/cjs/a/Popover/styles.scss +33 -0
  37. package/dist/cjs/a/Shapes/Shapes.js +9 -1
  38. package/dist/cjs/a/Shapes/styles.scss +42 -9
  39. package/dist/cjs/a/SnapScroller/SnapScroller.js +77 -0
  40. package/dist/cjs/a/SnapScroller/index.js +15 -0
  41. package/dist/cjs/a/SnapScroller/styles.scss +38 -0
  42. package/dist/cjs/a/index.js +57 -9
  43. package/dist/cjs/b/Button/Button.js +10 -4
  44. package/dist/cjs/b/Button/styles.scss +55 -10
  45. package/dist/cjs/b/Logo/Logo.js +41 -41
  46. package/dist/cjs/b/Logo/styles.scss +0 -138
  47. package/dist/cjs/b/Page/common/PageHelmet/PageHelmet.js +1 -1
  48. package/dist/cjs/b/Page/common/Section/Section.js +17 -3
  49. package/dist/cjs/b/SocialMediaButton/SocialMediaButton.js +4 -4
  50. package/dist/cjs/b/ThemeSelector/ThemeSelector.js +1 -1
  51. package/dist/cjs/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.js +16 -9
  52. package/dist/cjs/c/ContentSlides/common/Navigator/Navigator.js +4 -3
  53. package/dist/cjs/c/ContentSlides/styles.scss +10 -4
  54. package/dist/cjs/c/SocialMediaShareButton/SocialMediaShareButton.js +111 -0
  55. package/dist/cjs/c/SocialMediaShareButton/index.js +15 -0
  56. package/dist/cjs/c/SocialMediaShareButton/styles.scss +39 -0
  57. package/dist/cjs/c/index.js +9 -1
  58. package/dist/cjs/f/FormInput/FormInput.js +26 -3
  59. package/dist/cjs/f/FormInput/styles.scss +11 -0
  60. package/dist/cjs/f/common/Debugger/Debugger.js +1 -1
  61. package/dist/cjs/f/common/Description/Description.js +20 -14
  62. package/dist/cjs/f/common/Label/Label.js +1 -1
  63. package/dist/cjs/f/common/Label/styles.scss +1 -1
  64. package/dist/cjs/f/fields/ChoicesInput/ChoicesInput.js +2 -2
  65. package/dist/cjs/f/fields/ChoicesInput/common/Choice/Choice.js +5 -2
  66. package/dist/cjs/f/fields/ChoicesInput/styles.scss +17 -2
  67. package/dist/cjs/f/fields/IntlTelInput/IntlTelInput.js +170 -0
  68. package/dist/cjs/f/fields/IntlTelInput/index.js +15 -0
  69. package/dist/cjs/f/fields/IntlTelInput/styles.scss +37 -0
  70. package/dist/cjs/f/fields/PhoneIntlTelInput/PhoneIntlTelInput.js +180 -0
  71. package/dist/cjs/f/fields/PhoneIntlTelInput/index.js +15 -0
  72. package/dist/cjs/f/fields/PhoneIntlTelInput/styles.scss +43 -0
  73. package/dist/cjs/f/fields/QueryCombobox/QueryCombobox.js +235 -0
  74. package/dist/cjs/f/fields/QueryCombobox/common/Combobox/Combobox.js +208 -0
  75. package/dist/cjs/f/fields/QueryCombobox/common/Combobox/index.js +15 -0
  76. package/dist/cjs/f/fields/QueryCombobox/common/Menu/Menu.js +103 -0
  77. package/dist/cjs/f/fields/QueryCombobox/common/Menu/index.js +15 -0
  78. package/dist/cjs/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +307 -0
  79. package/dist/cjs/f/fields/QueryCombobox/common/MultipleCombobox/index.js +15 -0
  80. package/dist/cjs/f/fields/QueryCombobox/common/index.js +29 -0
  81. package/dist/cjs/f/fields/QueryCombobox/index.js +15 -0
  82. package/dist/cjs/f/fields/QueryCombobox/styles.scss +90 -0
  83. package/dist/cjs/f/fields/QuerySelect/QuerySelect.js +201 -0
  84. package/dist/cjs/f/fields/QuerySelect/index.js +15 -0
  85. package/dist/cjs/f/fields/QuerySelect/styles.scss +21 -0
  86. package/dist/cjs/f/fields/RatingsInput/RatingsInput.js +39 -6
  87. package/dist/cjs/f/fields/RatingsInput/styles.scss +29 -20
  88. package/dist/cjs/f/fields/SelectInput/SelectInput.js +59 -14
  89. package/dist/cjs/f/fields/SelectInput/styles.scss +33 -13
  90. package/dist/cjs/f/fields/TaskRecommendationInput/TaskRecommendationInput.js +1 -1
  91. package/dist/cjs/f/fields/TextInput/TextInput.js +50 -13
  92. package/dist/cjs/f/fields/TextInput/styles.scss +16 -7
  93. package/dist/cjs/f/fields/TextareaInput/TextareaInput.js +41 -15
  94. package/dist/cjs/f/fields/TextareaInput/styles.scss +19 -6
  95. package/dist/cjs/f/fields/index.js +15 -23
  96. package/dist/cjs/form-reset.scss +1 -1
  97. package/dist/cjs/index.js +26 -0
  98. package/dist/cjs/test/QueryLoader/QueryLoader.js +41 -0
  99. package/dist/cjs/test/QueryLoader/__generated__/QueryLoaderHelloQuery.graphql.js +71 -0
  100. package/dist/cjs/test/QueryLoader/common/PreloadedTestData/PreloadedTestData.js +49 -0
  101. package/dist/cjs/test/QueryLoader/common/PreloadedTestData/index.js +15 -0
  102. package/dist/cjs/test/QueryLoader/common/index.js +13 -0
  103. package/dist/cjs/test/QueryLoader/index.js +15 -0
  104. package/dist/cjs/test/QueryLoader/styles.scss +9 -0
  105. package/dist/cjs/test/index.js +13 -0
  106. package/dist/cjs/utils/hooks/index.js +23 -0
  107. package/dist/cjs/utils/hooks/useDynamicPosition.js +107 -0
  108. package/dist/cjs/utils/hooks/useWindowSize.js +39 -0
  109. package/dist/cjs/utils/index.js +19 -0
  110. package/dist/es/a/Alert/Alert.js +118 -0
  111. package/dist/es/a/Alert/index.js +2 -0
  112. package/dist/es/a/Alert/styles.scss +74 -0
  113. package/dist/es/a/AppContext/Context.js +2 -0
  114. package/dist/es/a/AppContext/ContextProvider.js +78 -0
  115. package/dist/es/a/AppContext/index.js +5 -0
  116. package/dist/es/a/AppContext/useApp.js +3 -0
  117. package/dist/es/a/AppContext/useTheme.js +34 -0
  118. package/dist/es/a/BackgroundGradient/BackgroundGradient.js +55 -0
  119. package/dist/es/a/BackgroundGradient/index.js +2 -0
  120. package/dist/es/a/BackgroundGradient/styles.scss +16 -0
  121. package/dist/es/a/ContentTree/ContentTree.js +67 -0
  122. package/dist/es/a/ContentTree/common/Tree/Tree.js +98 -0
  123. package/dist/es/a/ContentTree/common/Tree/index.js +2 -0
  124. package/dist/es/a/ContentTree/common/index.js +3 -0
  125. package/dist/es/a/ContentTree/common/useContentTree.js +74 -0
  126. package/dist/es/a/ContentTree/common/useFirstVisibleNode.js +54 -0
  127. package/dist/es/a/ContentTree/index.js +2 -0
  128. package/dist/es/a/ContentTree/styles.scss +33 -0
  129. package/dist/es/a/Conversation/Conversation.js +14 -8
  130. package/dist/es/a/Conversation/common/Message/Message.js +32 -6
  131. package/dist/es/a/Conversation/styles.scss +132 -33
  132. package/dist/es/a/OvalIllustration/OvalIllustration.js +111 -0
  133. package/dist/es/a/OvalIllustration/index.js +2 -0
  134. package/dist/es/a/OvalIllustration/styles.scss +102 -0
  135. package/dist/es/a/Popover/Popover.js +118 -0
  136. package/dist/es/a/Popover/common/Divider/Divider.js +47 -0
  137. package/dist/es/a/Popover/common/Divider/index.js +2 -0
  138. package/dist/es/a/Popover/common/Item/Item.js +47 -0
  139. package/dist/es/a/Popover/common/Item/index.js +2 -0
  140. package/dist/es/a/Popover/common/index.js +2 -0
  141. package/dist/es/a/Popover/index.js +2 -0
  142. package/dist/es/a/Popover/styles.scss +33 -0
  143. package/dist/es/a/Shapes/Shapes.js +9 -1
  144. package/dist/es/a/Shapes/styles.scss +42 -9
  145. package/dist/es/a/SnapScroller/SnapScroller.js +61 -0
  146. package/dist/es/a/SnapScroller/index.js +2 -0
  147. package/dist/es/a/SnapScroller/styles.scss +38 -0
  148. package/dist/es/a/index.js +8 -2
  149. package/dist/es/b/Button/Button.js +8 -2
  150. package/dist/es/b/Button/styles.scss +55 -10
  151. package/dist/es/b/Logo/Logo.js +41 -41
  152. package/dist/es/b/Logo/styles.scss +0 -138
  153. package/dist/es/b/Page/common/PageHelmet/PageHelmet.js +2 -2
  154. package/dist/es/b/Page/common/Section/Section.js +17 -3
  155. package/dist/es/b/SocialMediaButton/SocialMediaButton.js +5 -5
  156. package/dist/es/b/ThemeSelector/ThemeSelector.js +2 -2
  157. package/dist/es/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.js +16 -9
  158. package/dist/es/c/ContentSlides/common/Navigator/Navigator.js +4 -3
  159. package/dist/es/c/ContentSlides/styles.scss +10 -4
  160. package/dist/es/c/SocialMediaShareButton/SocialMediaShareButton.js +95 -0
  161. package/dist/es/c/SocialMediaShareButton/index.js +2 -0
  162. package/dist/es/c/SocialMediaShareButton/styles.scss +39 -0
  163. package/dist/es/c/index.js +2 -1
  164. package/dist/es/f/FormInput/FormInput.js +26 -3
  165. package/dist/es/f/FormInput/styles.scss +11 -0
  166. package/dist/es/f/common/Debugger/Debugger.js +1 -1
  167. package/dist/es/f/common/Description/Description.js +19 -14
  168. package/dist/es/f/common/Label/Label.js +1 -1
  169. package/dist/es/f/common/Label/styles.scss +1 -1
  170. package/dist/es/f/fields/ChoicesInput/ChoicesInput.js +2 -2
  171. package/dist/es/f/fields/ChoicesInput/common/Choice/Choice.js +5 -2
  172. package/dist/es/f/fields/ChoicesInput/styles.scss +17 -2
  173. package/dist/es/f/fields/IntlTelInput/IntlTelInput.js +152 -0
  174. package/dist/es/f/fields/IntlTelInput/index.js +2 -0
  175. package/dist/es/f/fields/IntlTelInput/styles.scss +37 -0
  176. package/dist/es/f/fields/PhoneIntlTelInput/PhoneIntlTelInput.js +163 -0
  177. package/dist/es/f/fields/PhoneIntlTelInput/index.js +2 -0
  178. package/dist/es/f/fields/PhoneIntlTelInput/styles.scss +43 -0
  179. package/dist/es/f/fields/QueryCombobox/QueryCombobox.js +212 -0
  180. package/dist/es/f/fields/QueryCombobox/common/Combobox/Combobox.js +188 -0
  181. package/dist/es/f/fields/QueryCombobox/common/Combobox/index.js +2 -0
  182. package/dist/es/f/fields/QueryCombobox/common/Menu/Menu.js +77 -0
  183. package/dist/es/f/fields/QueryCombobox/common/Menu/index.js +2 -0
  184. package/dist/es/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +279 -0
  185. package/dist/es/f/fields/QueryCombobox/common/MultipleCombobox/index.js +2 -0
  186. package/dist/es/f/fields/QueryCombobox/common/index.js +3 -0
  187. package/dist/es/f/fields/QueryCombobox/index.js +2 -0
  188. package/dist/es/f/fields/QueryCombobox/styles.scss +90 -0
  189. package/dist/es/f/fields/QuerySelect/QuerySelect.js +179 -0
  190. package/dist/es/f/fields/QuerySelect/index.js +2 -0
  191. package/dist/es/f/fields/QuerySelect/styles.scss +21 -0
  192. package/dist/es/f/fields/RatingsInput/RatingsInput.js +38 -6
  193. package/dist/es/f/fields/RatingsInput/styles.scss +29 -20
  194. package/dist/es/f/fields/SelectInput/SelectInput.js +58 -14
  195. package/dist/es/f/fields/SelectInput/styles.scss +33 -13
  196. package/dist/es/f/fields/TaskRecommendationInput/TaskRecommendationInput.js +1 -1
  197. package/dist/es/f/fields/TextInput/TextInput.js +50 -13
  198. package/dist/es/f/fields/TextInput/styles.scss +16 -7
  199. package/dist/es/f/fields/TextareaInput/TextareaInput.js +41 -15
  200. package/dist/es/f/fields/TextareaInput/styles.scss +19 -6
  201. package/dist/es/f/fields/index.js +3 -4
  202. package/dist/es/form-reset.scss +1 -1
  203. package/dist/es/index.js +3 -1
  204. package/dist/es/test/QueryLoader/QueryLoader.js +29 -0
  205. package/dist/es/test/QueryLoader/__generated__/QueryLoaderHelloQuery.graphql.js +71 -0
  206. package/dist/es/test/QueryLoader/common/PreloadedTestData/PreloadedTestData.js +31 -0
  207. package/dist/es/test/QueryLoader/common/PreloadedTestData/index.js +2 -0
  208. package/dist/es/test/QueryLoader/common/index.js +1 -0
  209. package/dist/es/test/QueryLoader/index.js +2 -0
  210. package/dist/es/test/QueryLoader/styles.scss +9 -0
  211. package/dist/es/test/index.js +1 -0
  212. package/dist/es/utils/hooks/index.js +2 -0
  213. package/dist/es/utils/hooks/useDynamicPosition.js +93 -0
  214. package/dist/es/utils/hooks/useWindowSize.js +27 -0
  215. package/dist/es/utils/index.js +1 -0
  216. package/package.json +18 -4
  217. package/relay.config.js +12 -0
  218. package/schema.graphql +4075 -0
  219. package/scripts/fetchSchema.js +74 -0
  220. package/src/__snapshots__/Storyshots.test.js.snap +10152 -5495
  221. package/src/local.scss +4 -2
  222. package/src/stories/StyleGuide/Sprites.stories.mdx +25 -0
  223. package/src/stories/StyleGuide/helpers.js +16 -0
  224. package/src/stories/a/Alert.stories.jsx +75 -0
  225. package/src/stories/a/{SiteContext.stories.jsx → AppContext.stories.jsx} +8 -8
  226. package/src/stories/a/BackgroundGradient.stories.jsx +38 -0
  227. package/src/stories/a/ContentTree.stories.jsx +662 -0
  228. package/src/stories/a/Conversation.stories.jsx +78 -1
  229. package/src/stories/a/DotInfo.stories.jsx +14 -13
  230. package/src/stories/a/OvalIllustration.stories.jsx +59 -0
  231. package/src/stories/a/Popover.stories.jsx +106 -0
  232. package/src/stories/a/ProgressBar.stories.jsx +16 -7
  233. package/src/stories/a/Shapes.stories.jsx +18 -0
  234. package/src/stories/a/SnapScroller.stories.jsx +98 -0
  235. package/src/stories/a/Timestamp.stories.jsx +35 -39
  236. package/src/stories/b/Button.stories.jsx +27 -4
  237. package/src/stories/b/Logo.stories.jsx +23 -14
  238. package/src/stories/b/Page.stories.jsx +25 -1
  239. package/src/stories/b/QuestionDropdown.stories.jsx +20 -30
  240. package/src/stories/b/SocialMediaButton.stories.jsx +36 -53
  241. package/src/stories/b/ThemeSelector.stories.jsx +5 -5
  242. package/src/stories/b/Title.stories.jsx +13 -15
  243. package/src/stories/c/ContentSlides.stories.jsx +35 -151
  244. package/src/stories/c/Shortener.stories.jsx +9 -3
  245. package/src/stories/c/SocialMediaShareButton.stories.jsx +33 -0
  246. package/src/stories/f/ChoicesInput.stories.jsx +91 -129
  247. package/src/stories/f/Description.stories.jsx +22 -4
  248. package/src/stories/f/FormInput.stories.jsx +259 -0
  249. package/src/stories/f/QueryCombobox.stories.jsx +273 -0
  250. package/src/stories/f/QuerySelect.stories.jsx +135 -0
  251. package/src/stories/f/RatingsInput.stories.jsx +29 -22
  252. package/src/stories/f/SelectInput.stories.jsx +41 -49
  253. package/src/stories/f/TextInput.stories.jsx +63 -43
  254. package/src/stories/f/TextareaInput.stories.jsx +63 -19
  255. package/src/stories/f/__generated__/FormInputAllTaskStatusesQuery.graphql.js +122 -0
  256. package/src/stories/f/__generated__/FormInputAllTeamsQuery.graphql.js +139 -0
  257. package/src/stories/f/__generated__/QueryComboboxAllTeamsQuery.graphql.js +139 -0
  258. package/src/stories/f/__generated__/QuerySelectAllTaskStatusesQuery.graphql.js +122 -0
  259. package/src/stories/test/QueryLoader.stories.jsx +36 -0
  260. package/src/stories/utils/generateNodeId.js +12 -0
  261. package/src/stories/utils/lorem.js +15 -0
  262. package/src/stories/utils/relay/EnvironmentProvider.jsx +14 -0
  263. package/src/stories/utils/relay/environment.js +5 -0
  264. package/src/stories/utils/relay/index.js +4 -0
  265. package/src/stories/utils/relay/mockRelayOperation.js +14 -0
  266. package/src/stories/utils/relay/mockResolvers.js +299 -0
  267. package/src/stories/utils/testData.js +63 -0
  268. package/src/ui/a/Alert/Alert.jsx +144 -0
  269. package/src/ui/a/Alert/index.js +2 -0
  270. package/src/ui/a/Alert/styles.scss +74 -0
  271. package/src/ui/a/{SiteContext → AppContext}/Context.js +0 -0
  272. package/src/ui/a/{SiteContext → AppContext}/ContextProvider.jsx +8 -7
  273. package/src/ui/a/AppContext/index.js +5 -0
  274. package/src/ui/a/{SiteContext/useSite.js → AppContext/useApp.js} +0 -0
  275. package/src/ui/a/{SiteContext → AppContext}/useTheme.js +0 -0
  276. package/src/ui/a/BackgroundGradient/BackgroundGradient.jsx +76 -0
  277. package/src/ui/a/BackgroundGradient/index.js +2 -0
  278. package/src/ui/a/BackgroundGradient/styles.scss +16 -0
  279. package/src/ui/a/ContentTree/ContentTree.jsx +88 -0
  280. package/src/ui/a/ContentTree/common/Tree/Tree.jsx +138 -0
  281. package/src/ui/a/ContentTree/common/Tree/index.js +2 -0
  282. package/src/ui/a/ContentTree/common/index.js +3 -0
  283. package/src/ui/a/ContentTree/common/useContentTree.js +83 -0
  284. package/src/ui/a/ContentTree/common/useFirstVisibleNode.js +59 -0
  285. package/src/ui/a/ContentTree/index.js +2 -0
  286. package/src/ui/a/ContentTree/styles.scss +33 -0
  287. package/src/ui/a/Conversation/Conversation.jsx +15 -7
  288. package/src/ui/a/Conversation/common/Message/Message.jsx +38 -6
  289. package/src/ui/a/Conversation/styles.scss +132 -33
  290. package/src/ui/a/OvalIllustration/OvalIllustration.jsx +134 -0
  291. package/src/ui/a/OvalIllustration/index.js +2 -0
  292. package/src/ui/a/OvalIllustration/styles.scss +102 -0
  293. package/src/ui/a/Popover/Popover.jsx +157 -0
  294. package/src/ui/a/Popover/index.js +2 -0
  295. package/src/ui/a/Popover/styles.scss +33 -0
  296. package/src/ui/a/Shapes/Shapes.jsx +10 -0
  297. package/src/ui/a/Shapes/styles.scss +42 -9
  298. package/src/ui/a/SnapScroller/SnapScroller.jsx +83 -0
  299. package/src/ui/a/SnapScroller/index.js +2 -0
  300. package/src/ui/a/SnapScroller/styles.scss +38 -0
  301. package/src/ui/a/index.js +10 -4
  302. package/src/ui/b/Button/Button.jsx +9 -1
  303. package/src/ui/b/Button/styles.scss +55 -10
  304. package/src/ui/b/Logo/Logo.jsx +41 -41
  305. package/src/ui/b/Logo/styles.scss +0 -138
  306. package/src/ui/b/Page/common/PageHelmet/PageHelmet.jsx +2 -2
  307. package/src/ui/b/Page/common/Section/Section.jsx +19 -2
  308. package/src/ui/b/SocialMediaButton/SocialMediaButton.jsx +4 -4
  309. package/src/ui/b/ThemeSelector/ThemeSelector.jsx +2 -2
  310. package/src/ui/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.jsx +12 -5
  311. package/src/ui/c/ContentSlides/common/Navigator/Navigator.jsx +3 -2
  312. package/src/ui/c/ContentSlides/styles.scss +10 -4
  313. package/src/ui/c/SocialMediaShareButton/SocialMediaShareButton.jsx +121 -0
  314. package/src/ui/c/SocialMediaShareButton/index.js +2 -0
  315. package/src/ui/c/SocialMediaShareButton/styles.scss +39 -0
  316. package/src/ui/c/index.js +1 -0
  317. package/src/ui/f/FormInput/FormInput.jsx +38 -1
  318. package/src/ui/f/FormInput/styles.scss +11 -0
  319. package/src/ui/f/common/Debugger/Debugger.jsx +1 -1
  320. package/src/ui/f/common/Description/Description.jsx +34 -29
  321. package/src/ui/f/common/Label/Label.jsx +1 -1
  322. package/src/ui/f/common/Label/styles.scss +1 -1
  323. package/src/ui/f/fields/ChoicesInput/ChoicesInput.jsx +2 -2
  324. package/src/ui/f/fields/ChoicesInput/common/Choice/Choice.jsx +10 -2
  325. package/src/ui/f/fields/ChoicesInput/styles.scss +17 -2
  326. package/src/ui/f/fields/QueryCombobox/QueryCombobox.jsx +227 -0
  327. package/src/ui/f/fields/QueryCombobox/common/Combobox/Combobox.jsx +218 -0
  328. package/src/ui/f/fields/QueryCombobox/common/Combobox/index.js +2 -0
  329. package/src/ui/f/fields/QueryCombobox/common/Menu/Menu.jsx +103 -0
  330. package/src/ui/f/fields/QueryCombobox/common/Menu/index.js +2 -0
  331. package/src/ui/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.jsx +314 -0
  332. package/src/ui/f/fields/QueryCombobox/common/MultipleCombobox/index.js +2 -0
  333. package/src/ui/f/fields/QueryCombobox/common/index.js +3 -0
  334. package/src/ui/f/fields/QueryCombobox/index.js +2 -0
  335. package/src/ui/f/fields/QueryCombobox/styles.scss +90 -0
  336. package/src/ui/f/fields/QuerySelect/QuerySelect.jsx +200 -0
  337. package/src/ui/f/fields/QuerySelect/index.js +2 -0
  338. package/src/ui/f/fields/RatingsInput/RatingsInput.jsx +54 -19
  339. package/src/ui/f/fields/RatingsInput/styles.scss +29 -20
  340. package/src/ui/f/fields/SelectInput/SelectInput.jsx +66 -8
  341. package/src/ui/f/fields/SelectInput/styles.scss +33 -13
  342. package/src/ui/f/fields/TextInput/TextInput.jsx +44 -10
  343. package/src/ui/f/fields/TextInput/styles.scss +16 -7
  344. package/src/ui/f/fields/TextareaInput/TextareaInput.jsx +42 -21
  345. package/src/ui/f/fields/TextareaInput/styles.scss +19 -6
  346. package/src/ui/f/fields/index.js +2 -3
  347. package/src/ui/form-reset.scss +1 -1
  348. package/src/ui/index.js +2 -0
  349. package/src/ui/test/QueryLoader/QueryLoader.jsx +41 -0
  350. package/src/ui/test/QueryLoader/__generated__/QueryLoaderHelloQuery.graphql.js +68 -0
  351. package/src/ui/test/QueryLoader/common/PreloadedTestData/PreloadedTestData.jsx +51 -0
  352. package/src/ui/test/QueryLoader/common/PreloadedTestData/index.js +2 -0
  353. package/src/ui/test/QueryLoader/common/index.js +1 -0
  354. package/src/ui/test/QueryLoader/index.js +2 -0
  355. package/src/ui/test/index.js +1 -0
  356. package/src/ui/utils/hooks/index.js +2 -0
  357. package/src/ui/utils/hooks/useDynamicPosition.js +104 -0
  358. package/src/ui/utils/hooks/useWindowSize.js +32 -0
  359. package/src/ui/utils/index.js +1 -0
  360. package/stylelint.config.js +13 -13
  361. package/src/stories/f/CheckboxInput.stories.jsx +0 -37
  362. package/src/stories/f/RadioInput.stories.jsx +0 -37
  363. package/src/stories/f/TaskRecommendationInput.stories.jsx +0 -38
  364. package/src/ui/a/SiteContext/index.js +0 -5
  365. package/src/ui/f/fields/CheckboxInput/CheckboxInput.jsx +0 -107
  366. package/src/ui/f/fields/CheckboxInput/index.js +0 -2
  367. package/src/ui/f/fields/CheckboxInput/styles.scss +0 -28
  368. package/src/ui/f/fields/RadioInput/RadioInput.jsx +0 -112
  369. package/src/ui/f/fields/RadioInput/index.js +0 -2
  370. package/src/ui/f/fields/RadioInput/styles.scss +0 -26
  371. package/src/ui/f/fields/TaskRecommendationInput/TaskRecommendationInput.jsx +0 -130
  372. package/src/ui/f/fields/TaskRecommendationInput/index.js +0 -2
  373. package/src/ui/f/fields/TaskRecommendationInput/styles.scss +0 -41
@@ -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,109 @@ 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' },
26
29
  },
27
30
  }
28
31
 
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
- ]
32
+ const optionsMap = [
33
+ {
34
+ value:'red',
35
+ label:'Color Red',
36
+ },
37
+ {
38
+ value:'blue',
39
+ label:'Color Blue',
40
+ },
41
+ {
42
+ value:'green',
43
+ label:'Color Green',
44
+ },
45
+ {
46
+ value:'yellow',
47
+ label:'Color Yellow',
48
+ },
49
+ {
50
+ value:'oarnge',
51
+ label:'Color Orange',
52
+ },
53
+ {
54
+ value:'violet',
55
+ label:'Color Violet',
56
+ },
57
+ {
58
+ value:'brown',
59
+ label:'Color Brown',
60
+ },
61
+ {
62
+ value:'black',
63
+ label:'Color Black',
64
+ },
65
+ ]
66
+
67
+ // eslint-disable-next-line react/prop-types
68
+ const Template = ({ defaultValue, ...args }) => {
69
+ const Content = () => {
70
+ const [, , helpers] = useField(args.name)
71
+ const { setValue } = helpers
44
72
 
45
- return (
73
+ useEffect(() => {
74
+ setValue(defaultValue)
75
+ }, [])
46
76
 
47
- <>
48
- <ChoicesInput id="colors" options={optionsMap} name="color" />
49
- <FormDebugger />
50
- </>
51
- )
77
+ return (
78
+ <>
79
+ <ChoicesInput {...args} />
80
+ <FormDebugger />
81
+ </>
82
+ )
83
+ }
84
+ return <Content />
52
85
  }
53
86
 
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
- ]
69
-
70
- return (
71
- <>
72
- <ChoicesInput id="colors" options={optionsMap} name="color" multiple />
73
- <FormDebugger />
74
- </>
75
- )
87
+ export const Base = Template.bind({})
88
+ Base.args = {
89
+ id :'colors',
90
+ options:optionsMap,
91
+ name :'color',
76
92
  }
77
93
 
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
- ]
94
+ export const WithDefaultFormikValue = Template.bind({})
95
+ WithDefaultFormikValue.args = {
96
+ ...Base.args,
97
+ defaultValue:'red',
98
+ }
113
99
 
114
- return (
115
- <>
116
- <ChoicesInput id="colors" options={optionsMap} name="color" multiple gridColumnsDesktop={2} />
117
- <FormDebugger />
118
- </>
119
- )
100
+ export const Multiple = Template.bind({})
101
+ Multiple.args = {
102
+ ...Base.args,
103
+ multiple:true,
120
104
  }
121
105
 
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
- ]
106
+ export const MultipleWithDefaultFormikValue = Template.bind({})
107
+ MultipleWithDefaultFormikValue.args = {
108
+ ...Base.args,
109
+ multiple :true,
110
+ defaultValue:['brown', 'violet'],
111
+ }
137
112
 
138
- return (
139
- <>
140
- <ChoicesInput id="shapes" options={optionsMap} name="shape" label="Geometric Shapes" />
141
- <FormDebugger />
142
- </>
143
- )
113
+ export const MultipleWithGrid = Template.bind({})
114
+ MultipleWithGrid.args = {
115
+ ...Base.args,
116
+ multiple :true,
117
+ gridColumnsDesktop:2,
144
118
  }
145
119
 
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
- ]
120
+ export const ChoicesWithLabel = Template.bind({})
121
+ ChoicesWithLabel.args = {
122
+ ...Base.args,
123
+ label:'Select color',
124
+ }
161
125
 
162
- return (
163
- <>
164
- <ChoicesInput id="shapes" options={optionsMap} name="shape" label="Geometric Shapes" disabled />
165
- <FormDebugger />
166
- </>
167
- )
126
+ export const DisabledChoicesInput = Template.bind({})
127
+ DisabledChoicesInput.args = {
128
+ ...ChoicesWithLabel.args,
129
+ disabled:true,
168
130
  }
@@ -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' },
@@ -99,6 +113,251 @@ export const Base = () => {
99
113
  )
100
114
  }
101
115
 
116
+ const allTeamsMockData = {
117
+ PageInfo() {
118
+ return {
119
+ hasNextPage :true,
120
+ hasPreviousPage:true,
121
+ }
122
+ },
123
+ TeamNodeConnection:(args) => {
124
+ const edges = fruits.map((fruit) => ({
125
+ node:{
126
+ id :generateNodeId('TeamNode'),
127
+ name:fruit,
128
+ },
129
+ }))
130
+
131
+ // eslint-disable-next-line camelcase
132
+ const { name_Icontains } = args?.args || {}
133
+
134
+ return ({
135
+ pageInfo:{
136
+ hasNextPage :true,
137
+ hasPreviousPage:true,
138
+ },
139
+ // eslint-disable-next-line camelcase
140
+ edges:name_Icontains?.trim()
141
+ ? edges.filter(({ node }) => node.name
142
+ .toLowerCase()
143
+ .includes(name_Icontains.toLowerCase()))
144
+ : [],
145
+ })
146
+ },
147
+ }
148
+
149
+ const FETCH_TEAMS_QUERY = graphql`
150
+ query FormInputAllTeamsQuery($name_Icontains: String) {
151
+ allTeams(name_Icontains: $name_Icontains) {
152
+ edges {
153
+ node {
154
+ id
155
+ name
156
+ }
157
+ }
158
+ }
159
+ }
160
+ `
161
+
162
+ export const WithQueryCombobox = () => {
163
+ const inputMap = [
164
+ {
165
+ type :'text',
166
+ name :'firstName',
167
+ label:"What's your first name ?",
168
+ },
169
+ {
170
+ type :'choices',
171
+ name :'colors',
172
+ label :'What are your favourite colors ?',
173
+ options:[
174
+ {
175
+ value:'red',
176
+ label:'Color Red',
177
+ },
178
+ {
179
+ value:'blue',
180
+ label:'Color Blue',
181
+ },
182
+ {
183
+ value:'green',
184
+ label:'Color Green',
185
+ },
186
+ ],
187
+ },
188
+ {
189
+ type :'query-combobox',
190
+ name :'team',
191
+ query:{
192
+ graphql :FETCH_TEAMS_QUERY,
193
+ accessor:'allTeams',
194
+ },
195
+ label :'Search for a team',
196
+ optionsKeyMap:{
197
+ value :'id',
198
+ getLabel:(node) => node.name,
199
+ },
200
+ searchVariable:'name_Icontains',
201
+ },
202
+ {
203
+ type :'query-combobox',
204
+ name :'teams',
205
+ query:{
206
+ graphql :FETCH_TEAMS_QUERY,
207
+ accessor:'allTeams',
208
+ },
209
+ label :'Search for teams',
210
+ optionsKeyMap:{
211
+ value :'id',
212
+ getLabel:(node) => node.name,
213
+ },
214
+ searchVariable:'name_Icontains',
215
+ multiple :true,
216
+ },
217
+ ]
218
+
219
+ mockRelayOperation(allTeamsMockData)
220
+ mockRelayOperation(allTeamsMockData)
221
+ mockRelayOperation(allTeamsMockData)
222
+
223
+ return (
224
+ <>
225
+ {
226
+ inputMap.map((input) => <FormInput {...input} key={input.name} />)
227
+ }
228
+ <FormDebugger />
229
+
230
+ </>
231
+ )
232
+ }
233
+
234
+ const statuses = [
235
+ 'Backlog',
236
+ 'In Review',
237
+ 'In Progress',
238
+ 'Requested',
239
+ 'Blocked',
240
+ 'Completed',
241
+ ]
242
+ const allTaskStatusesMockData = {
243
+ PageInfo() {
244
+ return {
245
+ hasNextPage :true,
246
+ hasPreviousPage:true,
247
+ }
248
+ },
249
+ TaskStatusNodeConnection:() => ({
250
+ pageInfo:{
251
+ hasNextPage :true,
252
+ hasPreviousPage:true,
253
+ },
254
+
255
+ edges:statuses.map((status) => ({
256
+ node:{
257
+ id:generateNodeId('TaskStatusNode'),
258
+ status,
259
+ },
260
+ })),
261
+ }),
262
+ }
263
+
264
+ const FETCH_ALL_TASK_STATUSES = graphql`
265
+ query FormInputAllTaskStatusesQuery {
266
+ allTaskStatuses {
267
+ edges {
268
+ node {
269
+ id
270
+ status
271
+ }
272
+ }
273
+ }
274
+ }
275
+ `
276
+
277
+ export const WithPrefetchedQuerySelect = () => {
278
+ mockRelayOperation(allTaskStatusesMockData)
279
+
280
+ const inputMap = [
281
+ {
282
+ type :'text',
283
+ name :'firstName',
284
+ label:"What's your first name ?",
285
+ },
286
+ {
287
+ type :'choices',
288
+ name :'colors',
289
+ label :'What are your favourite colors ?',
290
+ options:[
291
+ {
292
+ value:'red',
293
+ label:'Color Red',
294
+ },
295
+ {
296
+ value:'blue',
297
+ label:'Color Blue',
298
+ },
299
+ {
300
+ value:'green',
301
+ label:'Color Green',
302
+ },
303
+ ],
304
+ },
305
+ {
306
+ type :'query-select',
307
+ name :'status',
308
+ query:{
309
+ graphql :FETCH_ALL_TASK_STATUSES,
310
+ accessor:'allTaskStatuses',
311
+ },
312
+ label :'Select Task Status',
313
+ optionsKeyMap:{
314
+ value :'id',
315
+ getLabel:(node) => node.status,
316
+ },
317
+ },
318
+ ]
319
+
320
+ mockRelayOperation(allTeamsMockData)
321
+ mockRelayOperation(allTeamsMockData)
322
+ mockRelayOperation(allTeamsMockData)
323
+
324
+ return (
325
+ <>
326
+ {
327
+ inputMap.map((input) => <FormInput {...input} key={input.name} />)
328
+ }
329
+ <FormDebugger />
330
+
331
+ </>
332
+ )
333
+ }
334
+
335
+ export const WithRatingsInput = () => {
336
+ const inputMap = [
337
+ {
338
+ type :'text',
339
+ name :'firstName',
340
+ label:"What's your first name ?",
341
+ },
342
+ {
343
+ type :'rating',
344
+ ratingCount:5,
345
+ name :'ratings',
346
+ label :'Your Rating',
347
+ },
348
+ ]
349
+
350
+ return (
351
+ <>
352
+ {
353
+ inputMap.map((input) => <FormInput {...input} key={input.name} />)
354
+ }
355
+ <FormDebugger />
356
+
357
+ </>
358
+ )
359
+ }
360
+
102
361
  export const ExtensibleFormInput = () => {
103
362
  const ExtendedTextInput = (props) => (
104
363
  <TextInput