@pareto-engineering/design-system 4.0.0-alpha.5 → 4.0.0-alpha.50

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 (374) hide show
  1. package/dist/cjs/a/AnimatedBlobs/AnimatedBlobs.js +90 -0
  2. package/dist/cjs/a/AnimatedBlobs/index.js +13 -0
  3. package/dist/cjs/a/AnimatedBlobs/styles.scss +87 -0
  4. package/dist/cjs/a/AnimatedGradient/AnimatedGradient.js +60 -0
  5. package/dist/cjs/a/AnimatedGradient/index.js +13 -0
  6. package/dist/cjs/a/AnimatedGradient/styles.scss +14 -0
  7. package/dist/cjs/a/AnimatedGradient/webGIRenderer.js +528 -0
  8. package/dist/cjs/a/AppContext/ContextProvider.js +0 -2
  9. package/dist/cjs/a/AppContext/useTheme.js +0 -4
  10. package/dist/cjs/a/BlurOverlay/BlurOverlay.js +59 -0
  11. package/dist/cjs/a/BlurOverlay/index.js +13 -0
  12. package/dist/cjs/a/BlurOverlay/styles.scss +31 -0
  13. package/dist/cjs/a/ContentTree/ContentTree.js +10 -4
  14. package/dist/cjs/a/ContentTree/common/Tree/Tree.js +12 -5
  15. package/dist/cjs/a/ContentTree/styles.scss +34 -11
  16. package/dist/cjs/a/Conversation/Conversation.js +11 -16
  17. package/dist/cjs/a/Conversation/common/Message/Message.js +15 -12
  18. package/dist/cjs/a/Conversation/styles.scss +56 -124
  19. package/dist/cjs/a/DotInfo/DotInfo.js +1 -1
  20. package/dist/cjs/a/Figure/Figure.js +1 -1
  21. package/dist/cjs/a/HamburgerButton/HamburgerButton.js +1 -1
  22. package/dist/cjs/a/IconList/IconList.js +1 -1
  23. package/dist/cjs/a/IconList/common/Item/Item.js +1 -1
  24. package/dist/cjs/a/Label/Label.js +13 -5
  25. package/dist/cjs/a/Label/styles.scss +4 -4
  26. package/dist/cjs/a/LoadingCircle/LoadingCircle.js +1 -1
  27. package/dist/cjs/a/MetaCard/MetaCard.js +65 -0
  28. package/dist/cjs/a/MetaCard/index.js +13 -0
  29. package/dist/cjs/a/MetaCard/styles.scss +45 -0
  30. package/dist/cjs/a/People/People.js +1 -1
  31. package/dist/cjs/a/People/common/Person/Person.js +5 -5
  32. package/dist/cjs/a/People/styles.scss +10 -4
  33. package/dist/cjs/a/Popover/Popover.js +3 -3
  34. package/dist/cjs/a/Popover/styles.scss +1 -1
  35. package/dist/cjs/a/ProgressBar/ProgressBar.js +1 -1
  36. package/dist/cjs/a/Quote/Quote.js +1 -1
  37. package/dist/cjs/a/Removable/Removable.js +72 -0
  38. package/dist/cjs/a/Removable/index.js +13 -0
  39. package/dist/cjs/a/Removable/styles.scss +33 -0
  40. package/dist/cjs/a/SVG/SVG.js +1 -1
  41. package/dist/cjs/a/SnapScroller/SnapScroller.js +1 -1
  42. package/dist/cjs/a/SnapScroller/styles.scss +30 -10
  43. package/dist/cjs/a/Spinner/Spinner.js +1 -1
  44. package/dist/cjs/a/TextSteps/TextSteps.js +70 -0
  45. package/dist/cjs/a/TextSteps/index.js +13 -0
  46. package/dist/cjs/a/TextSteps/styles.scss +29 -0
  47. package/dist/cjs/a/Timestamp/Timestamp.js +1 -1
  48. package/dist/cjs/a/Tip/Tip.js +86 -0
  49. package/dist/cjs/a/Tip/index.js +13 -0
  50. package/dist/cjs/a/Tip/styles.scss +16 -0
  51. package/dist/cjs/a/index.js +50 -1
  52. package/dist/cjs/b/Button/Button.js +22 -9
  53. package/dist/cjs/b/Button/common/Group/Group.js +57 -0
  54. package/dist/cjs/b/Button/common/Group/index.js +13 -0
  55. package/dist/cjs/b/Button/common/Group/styles.scss +11 -0
  56. package/dist/cjs/b/Button/common/index.js +12 -0
  57. package/dist/cjs/b/Button/styles.scss +41 -11
  58. package/dist/cjs/b/Card/Card.js +74 -0
  59. package/dist/cjs/b/Card/common/Group/Group.js +73 -0
  60. package/dist/cjs/b/Card/common/Group/index.js +13 -0
  61. package/dist/cjs/b/Card/common/Group/styles.scss +35 -0
  62. package/dist/cjs/b/Card/common/Section/Section.js +59 -0
  63. package/dist/cjs/b/Card/common/Section/index.js +13 -0
  64. package/dist/cjs/b/Card/common/index.js +19 -0
  65. package/dist/cjs/b/Card/index.js +13 -0
  66. package/dist/cjs/b/Card/styles.scss +57 -0
  67. package/dist/cjs/b/Logo/Logo.js +1 -1
  68. package/dist/cjs/b/Page/Page.js +15 -5
  69. package/dist/cjs/b/Page/common/PageHelmet/PageHelmet.js +12 -2
  70. package/dist/cjs/b/Page/common/Section/Section.js +13 -3
  71. package/dist/cjs/b/Page/styles.scss +25 -4
  72. package/dist/cjs/b/SocialMediaButton/SocialMediaButton.js +6 -2
  73. package/dist/cjs/b/SocialMediaButton/styles.scss +0 -14
  74. package/dist/cjs/b/ThemeSelector/ThemeSelector.js +17 -27
  75. package/dist/cjs/b/ThemeSelector/styles.scss +44 -6
  76. package/dist/cjs/b/Title/Title.js +1 -2
  77. package/dist/cjs/b/index.js +8 -1
  78. package/dist/cjs/c/ContentSlides/ContentSlides.js +1 -1
  79. package/dist/cjs/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.js +1 -3
  80. package/dist/cjs/c/ContentSlides/common/Sidebar/Sidebar.js +0 -2
  81. package/dist/cjs/c/ContentSlides/styles.scss +2 -2
  82. package/dist/cjs/c/Modal/Modal.js +2 -2
  83. package/dist/cjs/c/Modal/common/ModalHeader/ModalHeader.js +1 -1
  84. package/dist/cjs/c/Modal/styles.scss +7 -12
  85. package/dist/cjs/c/Shortener/Shortener.js +1 -1
  86. package/dist/cjs/c/SocialMediaShareButton/SocialMediaShareButton.js +1 -1
  87. package/dist/cjs/f/FormInput/FormInput.js +13 -3
  88. package/dist/cjs/f/common/Debugger/Debugger.js +1 -1
  89. package/dist/cjs/f/common/Description/Description.js +6 -5
  90. package/dist/cjs/f/common/InputWrapper/InputWrapper.js +74 -0
  91. package/dist/cjs/f/common/InputWrapper/index.js +13 -0
  92. package/dist/cjs/f/common/InputWrapper/styles.scss +13 -0
  93. package/dist/cjs/f/common/Label/Label.js +19 -5
  94. package/dist/cjs/f/common/Label/styles.scss +8 -2
  95. package/dist/cjs/f/common/index.js +8 -1
  96. package/dist/cjs/f/fields/Checkbox/Checkbox.js +41 -11
  97. package/dist/cjs/f/fields/Checkbox/styles.scss +7 -8
  98. package/dist/cjs/f/fields/ChoicesInput/ChoicesInput.js +56 -25
  99. package/dist/cjs/f/fields/ChoicesInput/common/Choice/Choice.js +2 -2
  100. package/dist/cjs/f/fields/ChoicesInput/styles.scss +52 -43
  101. package/dist/cjs/f/fields/EditorInput/EditorInput.js +222 -0
  102. package/dist/cjs/f/fields/EditorInput/common/Toolbar.js +257 -0
  103. package/dist/cjs/f/fields/EditorInput/common/TreeViewPlugin.js +19 -0
  104. package/dist/cjs/f/fields/EditorInput/common/index.js +20 -0
  105. package/dist/cjs/f/fields/EditorInput/index.js +13 -0
  106. package/dist/cjs/f/fields/EditorInput/styles.scss +147 -0
  107. package/dist/cjs/f/fields/LinkInput/LinkInput.js +164 -0
  108. package/dist/cjs/f/fields/LinkInput/index.js +13 -0
  109. package/dist/cjs/f/fields/LinkInput/styles.scss +89 -0
  110. package/dist/cjs/f/fields/QueryChoices/QueryChoices.js +27 -3
  111. package/dist/cjs/f/fields/QueryCombobox/QueryCombobox.js +36 -6
  112. package/dist/cjs/f/fields/QueryCombobox/common/Combobox/Combobox.js +44 -17
  113. package/dist/cjs/f/fields/QueryCombobox/common/Menu/Menu.js +1 -1
  114. package/dist/cjs/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +36 -26
  115. package/dist/cjs/f/fields/QueryCombobox/styles.scss +64 -30
  116. package/dist/cjs/f/fields/QuerySelect/QuerySelect.js +17 -3
  117. package/dist/cjs/f/fields/RatingsInput/RatingsInput.js +42 -20
  118. package/dist/cjs/f/fields/RatingsInput/common/Rating/Rating.js +5 -5
  119. package/dist/cjs/f/fields/RatingsInput/styles.scss +6 -13
  120. package/dist/cjs/f/fields/SelectInput/SelectInput.js +46 -16
  121. package/dist/cjs/f/fields/SelectInput/styles.scss +60 -26
  122. package/dist/cjs/f/fields/TextInput/TextInput.js +51 -18
  123. package/dist/cjs/f/fields/TextInput/styles.scss +56 -20
  124. package/dist/cjs/f/fields/TextareaInput/TextareaInput.js +44 -23
  125. package/dist/cjs/f/fields/TextareaInput/styles.scss +42 -25
  126. package/dist/cjs/f/fields/index.js +15 -1
  127. package/dist/cjs/form.scss +1 -1
  128. package/dist/cjs/r/SwitchRouteMap/SwitchRouteMap.js +1 -1
  129. package/dist/cjs/r/common/PrivateRoute/PrivateRoute.js +1 -1
  130. package/dist/cjs/test/QueryLoader/QueryLoader.js +2 -0
  131. package/dist/es/a/AnimatedBlobs/AnimatedBlobs.js +82 -0
  132. package/dist/es/a/AnimatedBlobs/index.js +1 -0
  133. package/dist/es/a/AnimatedBlobs/styles.scss +87 -0
  134. package/dist/es/a/AnimatedGradient/AnimatedGradient.js +52 -0
  135. package/dist/es/a/AnimatedGradient/index.js +1 -0
  136. package/dist/es/a/AnimatedGradient/styles.scss +14 -0
  137. package/dist/es/a/AnimatedGradient/webGIRenderer.js +492 -0
  138. package/dist/es/a/AppContext/useTheme.js +0 -4
  139. package/dist/es/a/BlurOverlay/BlurOverlay.js +51 -0
  140. package/dist/es/a/BlurOverlay/index.js +2 -0
  141. package/dist/es/a/BlurOverlay/styles.scss +31 -0
  142. package/dist/es/a/ContentTree/ContentTree.js +9 -3
  143. package/dist/es/a/ContentTree/common/Tree/Tree.js +12 -5
  144. package/dist/es/a/ContentTree/styles.scss +34 -11
  145. package/dist/es/a/Conversation/Conversation.js +10 -15
  146. package/dist/es/a/Conversation/common/Message/Message.js +15 -12
  147. package/dist/es/a/Conversation/styles.scss +56 -124
  148. package/dist/es/a/Label/Label.js +12 -4
  149. package/dist/es/a/Label/styles.scss +4 -4
  150. package/dist/es/a/MetaCard/MetaCard.js +57 -0
  151. package/dist/es/a/MetaCard/index.js +1 -0
  152. package/dist/es/a/MetaCard/styles.scss +45 -0
  153. package/dist/es/a/People/common/Person/Person.js +5 -5
  154. package/dist/es/a/People/styles.scss +10 -4
  155. package/dist/es/a/Popover/Popover.js +2 -2
  156. package/dist/es/a/Popover/styles.scss +1 -1
  157. package/dist/es/a/Removable/Removable.js +64 -0
  158. package/dist/es/a/Removable/index.js +2 -0
  159. package/dist/es/a/Removable/styles.scss +33 -0
  160. package/dist/es/a/SnapScroller/styles.scss +30 -10
  161. package/dist/es/a/TextSteps/TextSteps.js +61 -0
  162. package/dist/es/a/TextSteps/index.js +1 -0
  163. package/dist/es/a/TextSteps/styles.scss +29 -0
  164. package/dist/es/a/Tip/Tip.js +78 -0
  165. package/dist/es/a/Tip/index.js +2 -0
  166. package/dist/es/a/Tip/styles.scss +16 -0
  167. package/dist/es/a/index.js +8 -1
  168. package/dist/es/b/Button/Button.js +22 -8
  169. package/dist/es/b/Button/common/Group/Group.js +49 -0
  170. package/dist/es/b/Button/common/Group/index.js +1 -0
  171. package/dist/es/b/Button/common/Group/styles.scss +11 -0
  172. package/dist/es/b/Button/common/index.js +1 -0
  173. package/dist/es/b/Button/styles.scss +41 -11
  174. package/dist/es/b/Card/Card.js +66 -0
  175. package/dist/es/b/Card/common/Group/Group.js +65 -0
  176. package/dist/es/b/Card/common/Group/index.js +1 -0
  177. package/dist/es/b/Card/common/Group/styles.scss +35 -0
  178. package/dist/es/b/Card/common/Section/Section.js +48 -0
  179. package/dist/es/b/Card/common/Section/index.js +1 -0
  180. package/dist/es/b/Card/common/index.js +2 -0
  181. package/dist/es/b/Card/index.js +1 -0
  182. package/dist/es/b/Card/styles.scss +57 -0
  183. package/dist/es/b/Page/Page.js +14 -3
  184. package/dist/es/b/Page/common/PageHelmet/PageHelmet.js +12 -2
  185. package/dist/es/b/Page/common/Section/Section.js +12 -2
  186. package/dist/es/b/Page/styles.scss +25 -4
  187. package/dist/es/b/SocialMediaButton/SocialMediaButton.js +5 -1
  188. package/dist/es/b/SocialMediaButton/styles.scss +0 -14
  189. package/dist/es/b/ThemeSelector/ThemeSelector.js +16 -27
  190. package/dist/es/b/ThemeSelector/styles.scss +44 -6
  191. package/dist/es/b/index.js +2 -1
  192. package/dist/es/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.js +1 -1
  193. package/dist/es/c/ContentSlides/styles.scss +2 -2
  194. package/dist/es/c/Modal/Modal.js +1 -1
  195. package/dist/es/c/Modal/common/ModalHeader/ModalHeader.js +1 -1
  196. package/dist/es/c/Modal/styles.scss +7 -12
  197. package/dist/es/f/FormInput/FormInput.js +13 -1
  198. package/dist/es/f/common/Description/Description.js +5 -4
  199. package/dist/es/f/common/InputWrapper/InputWrapper.js +66 -0
  200. package/dist/es/f/common/InputWrapper/index.js +2 -0
  201. package/dist/es/f/common/InputWrapper/styles.scss +13 -0
  202. package/dist/es/f/common/Label/Label.js +18 -4
  203. package/dist/es/f/common/Label/styles.scss +8 -2
  204. package/dist/es/f/common/index.js +2 -1
  205. package/dist/es/f/fields/Checkbox/Checkbox.js +41 -11
  206. package/dist/es/f/fields/Checkbox/styles.scss +7 -8
  207. package/dist/es/f/fields/ChoicesInput/ChoicesInput.js +56 -25
  208. package/dist/es/f/fields/ChoicesInput/common/Choice/Choice.js +1 -1
  209. package/dist/es/f/fields/ChoicesInput/styles.scss +52 -43
  210. package/dist/es/f/fields/EditorInput/EditorInput.js +217 -0
  211. package/dist/es/f/fields/EditorInput/common/Toolbar.js +246 -0
  212. package/dist/es/f/fields/EditorInput/common/TreeViewPlugin.js +11 -0
  213. package/dist/es/f/fields/EditorInput/common/index.js +2 -0
  214. package/dist/es/f/fields/EditorInput/index.js +2 -0
  215. package/dist/es/f/fields/EditorInput/styles.scss +147 -0
  216. package/dist/es/f/fields/LinkInput/LinkInput.js +156 -0
  217. package/dist/es/f/fields/LinkInput/index.js +2 -0
  218. package/dist/es/f/fields/LinkInput/styles.scss +89 -0
  219. package/dist/es/f/fields/QueryChoices/QueryChoices.js +26 -2
  220. package/dist/es/f/fields/QueryCombobox/QueryCombobox.js +35 -5
  221. package/dist/es/f/fields/QueryCombobox/common/Combobox/Combobox.js +43 -16
  222. package/dist/es/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +35 -25
  223. package/dist/es/f/fields/QueryCombobox/styles.scss +64 -30
  224. package/dist/es/f/fields/QuerySelect/QuerySelect.js +17 -3
  225. package/dist/es/f/fields/RatingsInput/RatingsInput.js +42 -20
  226. package/dist/es/f/fields/RatingsInput/common/Rating/Rating.js +4 -4
  227. package/dist/es/f/fields/RatingsInput/styles.scss +6 -13
  228. package/dist/es/f/fields/SelectInput/SelectInput.js +46 -16
  229. package/dist/es/f/fields/SelectInput/styles.scss +60 -26
  230. package/dist/es/f/fields/TextInput/TextInput.js +51 -18
  231. package/dist/es/f/fields/TextInput/styles.scss +56 -20
  232. package/dist/es/f/fields/TextareaInput/TextareaInput.js +44 -23
  233. package/dist/es/f/fields/TextareaInput/styles.scss +42 -25
  234. package/dist/es/f/fields/index.js +3 -1
  235. package/dist/es/form.scss +1 -1
  236. package/package.json +18 -15
  237. package/src/stories/a/AppContext.stories.jsx +4 -2
  238. package/src/stories/a/BlurOverlay.stories.jsx +39 -0
  239. package/src/stories/a/Conversation.stories.jsx +11 -42
  240. package/src/stories/a/MetaCard.stories.jsx +35 -0
  241. package/src/stories/a/People.stories.jsx +22 -2
  242. package/src/stories/a/Quote.stories.jsx +1 -1
  243. package/src/stories/a/Removable.stories.jsx +22 -0
  244. package/src/stories/a/SnapScroller.stories.jsx +2 -2
  245. package/src/stories/a/Spinner.stories.jsx +1 -1
  246. package/src/stories/a/TextSteps.stories.jsx +19 -0
  247. package/src/stories/a/Tip.stories.jsx +29 -0
  248. package/src/stories/b/{Button.stories.jsx → Button/Button.stories.jsx} +18 -0
  249. package/src/stories/b/Button/Group.stories.jsx +35 -0
  250. package/src/stories/b/Card/Card.stories.jsx +59 -0
  251. package/src/stories/b/Card/Group.stories.jsx +59 -0
  252. package/src/stories/b/Page.stories.jsx +19 -3
  253. package/src/stories/b/SocialMediaButton.stories.jsx +4 -2
  254. package/src/stories/b/ThemeSelector.stories.jsx +1 -5
  255. package/src/stories/b/Title.stories.jsx +1 -1
  256. package/src/stories/c/ContentSlides.stories.jsx +1 -1
  257. package/src/stories/colors.js +22 -28
  258. package/src/stories/f/Checkbox.stories.jsx +22 -7
  259. package/src/stories/f/ChoicesInput.stories.jsx +21 -7
  260. package/src/stories/f/EditorInput.stories.jsx +88 -0
  261. package/src/stories/f/LinkInput.stories.jsx +100 -0
  262. package/src/stories/f/QueryChoices.stories.jsx +20 -4
  263. package/src/stories/f/QueryCombobox.stories.jsx +25 -13
  264. package/src/stories/f/QuerySelect.stories.jsx +20 -5
  265. package/src/stories/f/RatingsInput.stories.jsx +16 -2
  266. package/src/stories/f/SelectInput.stories.jsx +27 -5
  267. package/src/stories/f/TextInput.stories.jsx +33 -12
  268. package/src/stories/f/TextareaInput.stories.jsx +16 -2
  269. package/src/ui/a/AnimatedBlobs/AnimatedBlobs.jsx +102 -0
  270. package/src/ui/a/AnimatedBlobs/index.js +1 -0
  271. package/src/ui/a/AnimatedBlobs/styles.scss +87 -0
  272. package/src/ui/a/AnimatedGradient/AnimatedGradient.jsx +73 -0
  273. package/src/ui/a/AnimatedGradient/index.js +1 -0
  274. package/src/ui/a/AnimatedGradient/styles.scss +14 -0
  275. package/src/ui/a/AnimatedGradient/webGIRenderer.js +541 -0
  276. package/src/ui/a/AppContext/useTheme.js +0 -4
  277. package/src/ui/a/BlurOverlay/BlurOverlay.jsx +75 -0
  278. package/src/ui/a/BlurOverlay/index.js +2 -0
  279. package/src/ui/a/BlurOverlay/styles.scss +31 -0
  280. package/src/ui/a/ContentTree/ContentTree.jsx +8 -4
  281. package/src/ui/a/ContentTree/common/Tree/Tree.jsx +19 -7
  282. package/src/ui/a/ContentTree/styles.scss +34 -11
  283. package/src/ui/a/Conversation/Conversation.jsx +14 -18
  284. package/src/ui/a/Conversation/common/Message/Message.jsx +18 -11
  285. package/src/ui/a/Conversation/styles.scss +56 -124
  286. package/src/ui/a/Label/Label.jsx +11 -2
  287. package/src/ui/a/Label/styles.scss +4 -4
  288. package/src/ui/a/MetaCard/MetaCard.jsx +81 -0
  289. package/src/ui/a/MetaCard/index.js +1 -0
  290. package/src/ui/a/MetaCard/styles.scss +45 -0
  291. package/src/ui/a/People/common/Person/Person.jsx +5 -5
  292. package/src/ui/a/People/styles.scss +10 -4
  293. package/src/ui/a/Popover/Popover.jsx +2 -2
  294. package/src/ui/a/Popover/styles.scss +1 -1
  295. package/src/ui/a/Removable/Removable.jsx +85 -0
  296. package/src/ui/a/Removable/index.js +2 -0
  297. package/src/ui/a/Removable/styles.scss +33 -0
  298. package/src/ui/a/SnapScroller/styles.scss +30 -10
  299. package/src/ui/a/TextSteps/TextSteps.jsx +87 -0
  300. package/src/ui/a/TextSteps/index.js +1 -0
  301. package/src/ui/a/TextSteps/styles.scss +29 -0
  302. package/src/ui/a/Tip/Tip.jsx +105 -0
  303. package/src/ui/a/Tip/index.js +2 -0
  304. package/src/ui/a/Tip/styles.scss +16 -0
  305. package/src/ui/a/index.js +7 -0
  306. package/src/ui/b/Button/Button.jsx +28 -8
  307. package/src/ui/b/Button/common/Group/Group.jsx +71 -0
  308. package/src/ui/b/Button/common/Group/index.js +1 -0
  309. package/src/ui/b/Button/common/Group/styles.scss +11 -0
  310. package/src/ui/b/Button/common/index.js +1 -0
  311. package/src/ui/b/Button/styles.scss +41 -11
  312. package/src/ui/b/Card/Card.jsx +94 -0
  313. package/src/ui/b/Card/common/Group/Group.jsx +91 -0
  314. package/src/ui/b/Card/common/Group/index.js +1 -0
  315. package/src/ui/b/Card/common/Group/styles.scss +35 -0
  316. package/src/ui/b/Card/common/Section/Section.jsx +70 -0
  317. package/src/ui/b/Card/common/Section/index.js +1 -0
  318. package/src/ui/b/Card/common/index.js +2 -0
  319. package/src/ui/b/Card/index.js +1 -0
  320. package/src/ui/b/Card/styles.scss +57 -0
  321. package/src/ui/b/Page/Page.jsx +11 -1
  322. package/src/ui/b/Page/common/PageHelmet/PageHelmet.jsx +14 -3
  323. package/src/ui/b/Page/common/Section/Section.jsx +16 -1
  324. package/src/ui/b/Page/styles.scss +25 -4
  325. package/src/ui/b/SocialMediaButton/SocialMediaButton.jsx +5 -1
  326. package/src/ui/b/SocialMediaButton/styles.scss +0 -14
  327. package/src/ui/b/ThemeSelector/ThemeSelector.jsx +16 -29
  328. package/src/ui/b/ThemeSelector/styles.scss +44 -6
  329. package/src/ui/b/index.js +1 -0
  330. package/src/ui/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.jsx +1 -1
  331. package/src/ui/c/ContentSlides/styles.scss +2 -2
  332. package/src/ui/c/Modal/Modal.jsx +1 -1
  333. package/src/ui/c/Modal/common/ModalHeader/ModalHeader.jsx +1 -1
  334. package/src/ui/c/Modal/styles.scss +7 -12
  335. package/src/ui/f/FormInput/FormInput.jsx +23 -0
  336. package/src/ui/f/common/Description/Description.jsx +5 -4
  337. package/src/ui/f/common/InputWrapper/InputWrapper.jsx +89 -0
  338. package/src/ui/f/common/InputWrapper/index.js +2 -0
  339. package/src/ui/f/common/InputWrapper/styles.scss +13 -0
  340. package/src/ui/f/common/Label/Label.jsx +18 -2
  341. package/src/ui/f/common/Label/styles.scss +8 -2
  342. package/src/ui/f/common/index.js +1 -0
  343. package/src/ui/f/fields/Checkbox/Checkbox.jsx +65 -27
  344. package/src/ui/f/fields/Checkbox/styles.scss +7 -8
  345. package/src/ui/f/fields/ChoicesInput/ChoicesInput.jsx +83 -48
  346. package/src/ui/f/fields/ChoicesInput/common/Choice/Choice.jsx +10 -3
  347. package/src/ui/f/fields/ChoicesInput/styles.scss +52 -43
  348. package/src/ui/f/fields/EditorInput/EditorInput.jsx +272 -0
  349. package/src/ui/f/fields/EditorInput/common/Toolbar.jsx +356 -0
  350. package/src/ui/f/fields/EditorInput/common/TreeViewPlugin.jsx +16 -0
  351. package/src/ui/f/fields/EditorInput/common/index.jsx +2 -0
  352. package/src/ui/f/fields/EditorInput/index.js +2 -0
  353. package/src/ui/f/fields/EditorInput/styles.scss +147 -0
  354. package/src/ui/f/fields/LinkInput/LinkInput.jsx +197 -0
  355. package/src/ui/f/fields/LinkInput/index.js +2 -0
  356. package/src/ui/f/fields/LinkInput/styles.scss +89 -0
  357. package/src/ui/f/fields/QueryChoices/QueryChoices.jsx +28 -0
  358. package/src/ui/f/fields/QueryCombobox/QueryCombobox.jsx +37 -2
  359. package/src/ui/f/fields/QueryCombobox/common/Combobox/Combobox.jsx +68 -38
  360. package/src/ui/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.jsx +81 -66
  361. package/src/ui/f/fields/QueryCombobox/styles.scss +64 -30
  362. package/src/ui/f/fields/QuerySelect/QuerySelect.jsx +16 -1
  363. package/src/ui/f/fields/RatingsInput/RatingsInput.jsx +55 -28
  364. package/src/ui/f/fields/RatingsInput/common/Rating/Rating.jsx +4 -4
  365. package/src/ui/f/fields/RatingsInput/styles.scss +6 -13
  366. package/src/ui/f/fields/SelectInput/SelectInput.jsx +88 -49
  367. package/src/ui/f/fields/SelectInput/styles.scss +60 -26
  368. package/src/ui/f/fields/TextInput/TextInput.jsx +71 -34
  369. package/src/ui/f/fields/TextInput/styles.scss +56 -20
  370. package/src/ui/f/fields/TextareaInput/TextareaInput.jsx +65 -43
  371. package/src/ui/f/fields/TextareaInput/styles.scss +42 -25
  372. package/src/ui/f/fields/index.js +2 -0
  373. package/src/ui/form.scss +1 -1
  374. package/tests/__snapshots__/Storyshots.test.js.snap +14253 -5695
@@ -94,11 +94,11 @@ Popover.propTypes = {
94
94
  * The reference to the parent element
95
95
  */
96
96
  parentRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
97
- current: PropTypes.instanceOf(React.Element)
97
+ current: PropTypes.node
98
98
  })])
99
99
  };
100
100
  Popover.defaultProps = {
101
- color: 'background1',
101
+ color: 'background-near',
102
102
  isOpen: false,
103
103
  preferredPrimaryOrder: ['bottom', 'top', 'right', 'left'],
104
104
  preferredSecondaryOrder: ['left', 'right', 'bottom', 'top'],
@@ -2,7 +2,7 @@
2
2
 
3
3
  @use "@pareto-engineering/bem";
4
4
 
5
- $default-border: var(--theme-border-style) var(--metadata);
5
+ $default-border: var(--theme-default-border-style) var(--metadata);
6
6
 
7
7
  .#{bem.$base}.popover {
8
8
  background-color: var(--x);
@@ -0,0 +1,64 @@
1
+ /* @pareto-engineering/generator-front 1.1.1-alpha.1 */
2
+ import * as React from 'react';
3
+ import { useInsertionEffect } from 'react';
4
+ import PropTypes from 'prop-types';
5
+ import styleNames from '@pareto-engineering/bem/exports';
6
+
7
+ // Local Definitions
8
+
9
+ const baseClassName = styleNames.base;
10
+ const componentClassName = 'removable';
11
+
12
+ /**
13
+ * This is a wrapper component that adds a close button to its children.
14
+ */
15
+ const Removable = ({
16
+ id,
17
+ className: userClassName,
18
+ style,
19
+ handleClose,
20
+ children
21
+ // ...otherProps
22
+ }) => {
23
+ useInsertionEffect(() => {
24
+ import("./styles.scss");
25
+ }, []);
26
+ return /*#__PURE__*/React.createElement("div", {
27
+ id: id,
28
+ className: [baseClassName, componentClassName, userClassName].filter(e => e).join(' '),
29
+ style: style
30
+ // {...otherProps}
31
+ }, children, /*#__PURE__*/React.createElement("button", {
32
+ type: "button",
33
+ className: "close-button",
34
+ onClick: handleClose || (() => null)
35
+ }, /*#__PURE__*/React.createElement("span", {
36
+ className: "icon"
37
+ }, "Y")));
38
+ };
39
+ Removable.propTypes = {
40
+ /**
41
+ * The HTML id for this element
42
+ */
43
+ id: PropTypes.string,
44
+ /**
45
+ * The HTML class names for this element
46
+ */
47
+ className: PropTypes.string,
48
+ /**
49
+ * The React-written, css properties for this element.
50
+ */
51
+ style: PropTypes.objectOf(PropTypes.string),
52
+ /**
53
+ * The function to call when the close button is clicked
54
+ */
55
+ handleClose: PropTypes.func,
56
+ /**
57
+ * The children JSX
58
+ */
59
+ children: PropTypes.node
60
+ };
61
+ Removable.defaultProps = {
62
+ // someProp:false
63
+ };
64
+ export default Removable;
@@ -0,0 +1,2 @@
1
+ /* @pareto-engineering/generator-front 1.1.1-alpha.1 */
2
+ export { default as Removable } from "./Removable";
@@ -0,0 +1,33 @@
1
+ /* @pareto-engineering/generator-front 1.1.1-alpha.1 */
2
+
3
+ @use "@pareto-engineering/bem";
4
+
5
+ $default-padding: .5rem;
6
+
7
+ .#{bem.$base}.removable {
8
+ align-items: center;
9
+ background-color: var(--background-inputs);
10
+ border: var(--theme-default-border-style) var(--main2);
11
+ border-radius: $default-padding;
12
+ display: flex;
13
+ justify-content: space-between;
14
+ padding: $default-padding;
15
+
16
+ > :first-child {
17
+ flex-grow: 1;
18
+ }
19
+
20
+ .close-button {
21
+ background-color: transparent;
22
+ border: none;
23
+ color: var(--metadata);
24
+ cursor: pointer;
25
+ margin-left: var(--gap);
26
+
27
+ &:hover {
28
+ color: var(--hard-metadata);
29
+ }
30
+ }
31
+ }
32
+
33
+
@@ -5,20 +5,22 @@
5
5
  @use "@pareto-engineering/styles/src/mixins";
6
6
  @use "@pareto-engineering/styles/src/globals" as *;
7
7
 
8
- $default-spacing:var(--spacing, var(--u));
8
+ $default-spacing: var(--gap);
9
9
 
10
10
  .#{bem.$base}.snap-scroller {
11
11
  display: flex;
12
- -ms-overflow-style: none; /* for Internet Explorer, Edge */
12
+ gap: $default-spacing;
13
+ -ms-overflow-style: none;
13
14
  overflow-x: auto;
14
- scroll-padding: calc(#{$default-spacing} * 2);
15
+ scroll-padding: calc($default-spacing * 2);
15
16
  scroll-snap-type: x mandatory;
16
17
  scrollbar-width: none;
17
18
 
19
+ &::-webkit-scrollbar {
20
+ display: none;
21
+ }
18
22
 
19
- > * {
20
- display: inline-block;
21
- margin-right: $default-spacing;
23
+ >* {
22
24
  scroll-snap-align: start;
23
25
 
24
26
  &:first-child {
@@ -26,15 +28,33 @@ $default-spacing:var(--spacing, var(--u));
26
28
  }
27
29
  }
28
30
 
31
+ &::after {
32
+ content: "";
33
+ min-width: calc($default-spacing / 2);
34
+ }
29
35
 
30
- @include mixins.media($from:$sm-md) {
36
+ @include mixins.media($from: $sm-md) {
31
37
  &.desktop-no-scroll {
32
38
  overflow: auto;
33
- -ms-overflow-style: unset; /* for Internet Explorer, Edge */
39
+ -ms-overflow-style: unset;
34
40
  scroll-snap-type: none;
35
41
  scrollbar-width: unset;
42
+
43
+ &::after {
44
+ display: none;
45
+ }
46
+
47
+ >* {
48
+ min-width: unset;
49
+
50
+ &:first-child {
51
+ margin-left: unset;
52
+ }
53
+
54
+ &:last-child {
55
+ margin-right: unset;
56
+ }
57
+ }
36
58
  }
37
59
  }
38
60
  }
39
-
40
-
@@ -0,0 +1,61 @@
1
+ import * as React from 'react';
2
+ import { useInsertionEffect } from 'react';
3
+ import PropTypes from 'prop-types';
4
+ import styleNames from '@pareto-engineering/bem/exports';
5
+
6
+ // Local Definitions
7
+
8
+ const baseClassName = styleNames.base;
9
+ const componentClassName = 'steps';
10
+
11
+ /**
12
+ * This is the component description.
13
+ */
14
+ const Steps = ({
15
+ id,
16
+ className: userClassName,
17
+ style,
18
+ items,
19
+ title
20
+ }) => {
21
+ useInsertionEffect(() => {
22
+ import("./styles.scss");
23
+ }, []);
24
+ return /*#__PURE__*/React.createElement("div", {
25
+ id: id,
26
+ className: [baseClassName, componentClassName, userClassName, 'grid'].filter(e => e).join(' '),
27
+ style: style
28
+ }, title && /*#__PURE__*/React.createElement("p", {
29
+ className: "title h4"
30
+ }, title), items.map((item, i) => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
31
+ className: " number h3 start-1 span-2 md-start-1 md-span-2"
32
+ }, /*#__PURE__*/React.createElement("p", null, i + 1)), /*#__PURE__*/React.createElement("div", {
33
+ className: " description"
34
+ }, /*#__PURE__*/React.createElement("p", null, item)))));
35
+ };
36
+ Steps.propTypes = {
37
+ /**
38
+ * The HTML id for this element
39
+ */
40
+ id: PropTypes.string,
41
+ /**
42
+ * The HTML class names for this element
43
+ */
44
+ className: PropTypes.string,
45
+ /**
46
+ * The React-written, css properties for this element.
47
+ */
48
+ style: PropTypes.objectOf(PropTypes.string),
49
+ /**
50
+ * The steps to iterate
51
+ */
52
+ items: PropTypes.arrayOf(PropTypes.shape({
53
+ title: PropTypes.string,
54
+ description: PropTypes.node
55
+ })).isRequired,
56
+ /**
57
+ * The title to pass to the component
58
+ */
59
+ title: PropTypes.string
60
+ };
61
+ export default Steps;
@@ -0,0 +1 @@
1
+ export { default as TextSteps } from "./TextSteps";
@@ -0,0 +1,29 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+
3
+ @use "@pareto-engineering/bem";
4
+ @use "@pareto-engineering/styles/src/mixins";
5
+ @use "@pareto-engineering/styles/src/globals" as *;
6
+
7
+ $default-padding: 1em;
8
+
9
+ .#{bem.$base}.steps {
10
+ grid-column: 1 / -1;
11
+ grid-template-columns: repeat(var(--columns), 1fr);
12
+ padding: $default-padding 0;
13
+
14
+ .description {
15
+ grid-column: 2 / -1;
16
+
17
+ > p {
18
+ color: var(--metadata);
19
+ }
20
+ }
21
+
22
+ .number {
23
+ grid-column: 1 / span 1;
24
+ }
25
+
26
+ .title {
27
+ grid-column: 1 / -1;
28
+ }
29
+ }
@@ -0,0 +1,78 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ import * as React from 'react';
3
+ import { useInsertionEffect } from 'react';
4
+ import PropTypes from 'prop-types';
5
+ import styleNames from '@pareto-engineering/bem/exports';
6
+
7
+ // Local Definitions
8
+
9
+ const baseClassName = styleNames.base;
10
+ const componentClassName = 'tip';
11
+
12
+ /**
13
+ * This is the component description.
14
+ */
15
+ const Tip = ({
16
+ id,
17
+ className: userClassName,
18
+ style,
19
+ children,
20
+ icon,
21
+ as: Wrapper,
22
+ color,
23
+ backgroundColor
24
+ // ...otherProps
25
+ }) => {
26
+ useInsertionEffect(() => {
27
+ import("./styles.scss");
28
+ }, []);
29
+ return /*#__PURE__*/React.createElement(Wrapper, {
30
+ id: id,
31
+ className: [baseClassName, componentClassName, userClassName, `x-${backgroundColor}`].filter(e => e).join(' '),
32
+ style: style
33
+ // {...otherProps}
34
+ }, /*#__PURE__*/React.createElement("span", {
35
+ className: `x-${color} c-x icon`
36
+ }, icon), children);
37
+ };
38
+ Tip.propTypes = {
39
+ /**
40
+ * The HTML id for this element
41
+ */
42
+ id: PropTypes.string,
43
+ /**
44
+ * The HTML class names for this element
45
+ */
46
+ className: PropTypes.string,
47
+ /**
48
+ * The React-written, css properties for this element.
49
+ */
50
+ style: PropTypes.objectOf(PropTypes.string),
51
+ /**
52
+ * The children jsx
53
+ */
54
+ children: PropTypes.node.isRequired,
55
+ /**
56
+ * The icon
57
+ */
58
+ icon: PropTypes.string,
59
+ /**
60
+ * The color of the icon
61
+ */
62
+ color: PropTypes.string,
63
+ /**
64
+ * The background color
65
+ */
66
+ backgroundColor: PropTypes.string,
67
+ /**
68
+ * The wrapper html type
69
+ */
70
+ as: PropTypes.string
71
+ };
72
+ Tip.defaultProps = {
73
+ as: 'p',
74
+ icon: ')',
75
+ color: 'interactive',
76
+ backgroundColor: 'background-near'
77
+ };
78
+ export default Tip;
@@ -0,0 +1,2 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ export { default as Tip } from "./Tip";
@@ -0,0 +1,16 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+
3
+ @use "@pareto-engineering/bem";
4
+ @use "@pareto-engineering/styles/src/mixins";
5
+ @use "@pareto-engineering/styles/src/globals" as *;
6
+
7
+ $default-padding: calc(var(--gap) * 2);
8
+
9
+ .#{bem.$base}.tip {
10
+ align-items: center;
11
+ background: var(--x);
12
+ border-radius: var(--theme-default-border-radius);
13
+ display: flex;
14
+ gap: var(--gap);
15
+ padding: $default-padding;
16
+ }
@@ -1,4 +1,5 @@
1
1
  export { AppContext, AppContextProvider, useApp, useTheme } from "./AppContext";
2
+ export { BlurOverlay } from "./BlurOverlay";
2
3
  export { ContentTree } from "./ContentTree";
3
4
  export { Conversation } from "./Conversation";
4
5
  export { DotInfo } from "./DotInfo";
@@ -14,4 +15,10 @@ export { Quote } from "./Quote";
14
15
  export { SVG } from "./SVG";
15
16
  export { SnapScroller } from "./SnapScroller";
16
17
  export { Spinner } from "./Spinner";
17
- export { Timestamp } from "./Timestamp";
18
+ export { Timestamp } from "./Timestamp";
19
+ export { MetaCard } from "./MetaCard";
20
+ export { AnimatedBlobs } from "./AnimatedBlobs";
21
+ export { Tip } from "./Tip";
22
+ export { AnimatedGradient } from "./AnimatedGradient";
23
+ export { TextSteps } from "./TextSteps";
24
+ export { Removable } from "./Removable";
@@ -1,15 +1,14 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
  /* @pareto-engineering/generator-front 0.2.4 */
3
3
  import * as React from 'react';
4
- import { useLayoutEffect } from 'react';
4
+ import { useInsertionEffect } from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
 
7
7
  // Package-level Imports
8
8
  import styleNames from '@pareto-engineering/bem/exports';
9
9
  import { LoadingCircle } from "../..";
10
+ import { Group } from "./common";
10
11
  import "./styles.scss";
11
- // Component-level imports
12
- // import('./styles.scss')
13
12
 
14
13
  // Helper Definition
15
14
  const baseClassName = styleNames.base;
@@ -21,26 +20,32 @@ const Button = ({
21
20
  children,
22
21
  isLoading,
23
22
  color,
23
+ textColor,
24
24
  isCompact,
25
25
  isGhost,
26
26
  isSimple,
27
+ isGradient,
28
+ isSpaced,
27
29
  arrowDirection,
28
30
  ...otherProps
29
31
  }) => {
30
- useLayoutEffect(() => {
32
+ useInsertionEffect(() => {
31
33
  import("./styles.scss");
32
34
  }, []);
35
+ const buttonText = isSimple ? /*#__PURE__*/React.createElement("span", {
36
+ className: styleNames.modifierUnderlined
37
+ }, children) : children;
33
38
  return /*#__PURE__*/React.createElement("button", _extends({
34
39
  id: id,
35
- className: [baseClassName, componentClassName, userClassName, `x-${color}`, isGhost && styleNames.modifierGhost, isCompact && styleNames.modifierCompact, isSimple && styleNames.modifierSimple, arrowDirection && `arrow-${arrowDirection}`].filter(e => e).join(' '),
40
+ className: [baseClassName, componentClassName, userClassName, `x-${color}`, textColor && `y-${textColor}`, isGhost && styleNames.modifierGhost, isCompact && styleNames.modifierCompact, isSimple && styleNames.modifierSimple, isGradient && styleNames.modifierGradient, isSpaced && styleNames.modifierSpaced, !isLoading && arrowDirection && `arrow-${arrowDirection}`].filter(e => e).join(' '),
36
41
  style: style,
37
42
  type: "button"
38
43
  }, otherProps), isLoading ? /*#__PURE__*/React.createElement(LoadingCircle, {
39
44
  style: {
40
- '--x': 'var(--on-x)'
45
+ '--x': 'var(--stroke-color, var(--on-x))'
41
46
  },
42
47
  heightWidth: "1.15em"
43
- }) : children);
48
+ }) : buttonText);
44
49
  };
45
50
  Button.propTypes = {
46
51
  /**
@@ -71,6 +76,14 @@ Button.propTypes = {
71
76
  * Whether the button is simple (no borders, only text)
72
77
  */
73
78
  isSimple: PropTypes.bool,
79
+ /**
80
+ * Should this button have a gradient
81
+ */
82
+ isGradient: PropTypes.bool,
83
+ /**
84
+ * Should this button be spaced
85
+ */
86
+ isSpaced: PropTypes.bool,
74
87
  /**
75
88
  * The button color
76
89
  */
@@ -85,6 +98,7 @@ Button.propTypes = {
85
98
  arrowDirection: PropTypes.string
86
99
  };
87
100
  Button.defaultProps = {
88
- color: 'main1'
101
+ color: 'main'
89
102
  };
103
+ Button.Group = Group;
90
104
  export default Button;
@@ -0,0 +1,49 @@
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+ /* @pareto-engineering/generator-front 1.0.12 */
3
+ import * as React from 'react';
4
+ import { useInsertionEffect } from 'react';
5
+ import PropTypes from 'prop-types';
6
+ import styleNames from '@pareto-engineering/bem/exports';
7
+
8
+ // Local Definitions
9
+
10
+ const baseClassName = styleNames.base;
11
+ const componentClassName = 'button-group';
12
+ const Group = ({
13
+ id,
14
+ className: userClassName,
15
+ style,
16
+ children,
17
+ ...otherProps
18
+ }) => {
19
+ useInsertionEffect(() => {
20
+ import("./styles.scss");
21
+ }, []);
22
+ return /*#__PURE__*/React.createElement("div", _extends({
23
+ id: id,
24
+ className: [baseClassName, componentClassName, userClassName].filter(e => e).join(' '),
25
+ style: style
26
+ }, otherProps), children);
27
+ };
28
+ Group.propTypes = {
29
+ /**
30
+ * The HTML id for this element
31
+ */
32
+ id: PropTypes.string,
33
+ /**
34
+ * The HTML class names for this element
35
+ */
36
+ className: PropTypes.string,
37
+ /**
38
+ * The React-written, css properties for this element.
39
+ */
40
+ style: PropTypes.objectOf(PropTypes.string),
41
+ /**
42
+ * The children JSX
43
+ */
44
+ children: PropTypes.node
45
+ };
46
+ Group.defaultProps = {
47
+ // type:'snap-scroller',
48
+ };
49
+ export default Group;
@@ -0,0 +1 @@
1
+ export { default as Group } from "./Group";
@@ -0,0 +1,11 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+
3
+ @use "@pareto-engineering/bem";
4
+ @use "@pareto-engineering/styles/src/mixins";
5
+ @use "@pareto-engineering/styles/src/globals" as *;
6
+
7
+ .#{bem.$base}.button-group {
8
+ display: flex;
9
+ flex-wrap: wrap;
10
+ gap: var(--gap);
11
+ }
@@ -0,0 +1 @@
1
+ export { Group } from "./Group";
@@ -20,16 +20,18 @@ $default-animation-time: .31s;
20
20
  font-weight: 400;
21
21
  justify-content: space-between;
22
22
  padding: $default-padding;
23
- transition: all .25s;//var(--theme-default-paragraph);
23
+ transition: all .25s;
24
+ white-space: nowrap;//var(--theme-default-paragraph);
24
25
 
25
26
  &.arrow-right {
26
27
  &::after {
28
+ align-self: center;
27
29
  content: "-->";
28
30
  margin-left: $default-margin;
29
31
  vertical-align: middle;
30
32
  }
31
33
 
32
- &:hover {
34
+ &:hover:not(:disabled) {
33
35
  &::after {
34
36
  --final-position: 50%;
35
37
  animation: animateArrow $default-animation-time forwards;
@@ -39,12 +41,13 @@ $default-animation-time: .31s;
39
41
 
40
42
  &.arrow-left {
41
43
  &::before {
44
+ align-self: center;
42
45
  content: "<--";
43
46
  margin-right: $default-margin;
44
47
  vertical-align: middle;
45
48
  }
46
49
 
47
- &:hover {
50
+ &:hover:not(:disabled) {
48
51
  &::before {
49
52
  --final-position: -50%;
50
53
  animation: animateArrow $default-animation-time forwards;
@@ -55,7 +58,10 @@ $default-animation-time: .31s;
55
58
  &:not(:disabled) {
56
59
  cursor: pointer;
57
60
 
58
- &:hover {
61
+ &:hover
62
+ :not(.#{bem.$modifier-gradient})
63
+ :not(.#{bem.$modifier-ghost})
64
+ :not(.#{bem.$modifier-simple}) {
59
65
  background: var(--soft-x, var(--soft-#{$default-color}));
60
66
  }
61
67
 
@@ -64,6 +70,21 @@ $default-animation-time: .31s;
64
70
  }
65
71
  }
66
72
 
73
+ &.#{bem.$modifier-gradient} {
74
+ background-image: linear-gradient(
75
+ to right,
76
+ var(--hard-x) 30%,
77
+ var(--x) 50%,
78
+ var(--hard-x) 100%
79
+ );
80
+ background-position: left;
81
+ background-size: 200% auto;
82
+
83
+ &:not(:disabled):hover {
84
+ background-position: right center;
85
+ }
86
+ }
87
+
67
88
  &.#{bem.$modifier-compact} {
68
89
  padding: $compact-padding;
69
90
  }
@@ -71,7 +92,7 @@ $default-animation-time: .31s;
71
92
  &.#{bem.$modifier-ghost} {
72
93
  background: transparent;
73
94
  border: 1px solid var(--x, var(--#{$default-color}));
74
- color: var(--x, var(--#{$default-color}));
95
+ color: var(--y, var(--x, var(--#{$default-color})));
75
96
 
76
97
  &:hover,
77
98
  &:focus,
@@ -82,27 +103,36 @@ $default-animation-time: .31s;
82
103
  &:not(:disabled) {
83
104
  &:hover {
84
105
  border: 1px solid var(--soft-x, var(--soft-#{$default-color}));
85
- color: var(--soft-x, var(--soft-#{$default-color}));
106
+ color: var(--soft-y, var(--soft-x, var(--soft-#{$default-color})));
86
107
  }
87
108
 
88
109
  &:focus {
89
110
  border: 1px solid var(--hard-x, var(--hard-#{$default-color}));
90
- color: var(--hard-x, var(--hard-#{$default-color}));
111
+ color: var(--hard-y, var(--hard-x, var(--hard-#{$default-color})));
91
112
  }
92
113
  }
93
114
 
94
115
  &:disabled {
95
- border: 1px solid var(--x, var(--#{$default-color}));
96
- color: var(--x, var(--#{$default-color}));
116
+ border: 1px solid var(--hard-disabled, var(--#{$default-color}));
117
+ color: var(--hard-disabled, var(--#{$default-color}));
97
118
  }
98
119
  }
99
120
 
121
+ &.#{bem.$modifier-spaced} {
122
+ margin-bottom: var(--spacing-2);
123
+ margin-top: var(--spacing-2);
124
+ }
125
+
100
126
  &.#{bem.$modifier-simple} {
101
127
  background: transparent;
102
128
  border: 1px solid transparent;
103
129
  color: var(--x, var(--#{$default-color}));
104
130
  padding: 0;
105
131
 
132
+ > .#{bem.$modifier-underlined} {
133
+ text-decoration: underline;
134
+ }
135
+
106
136
  &:disabled,
107
137
  &:hover,
108
138
  &:focus {
@@ -120,12 +150,12 @@ $default-animation-time: .31s;
120
150
  }
121
151
 
122
152
  &:disabled {
123
- color: var(--x, var(--#{$default-color}));
153
+ color: var(--hard-disabled, var(--#{$default-color}));
124
154
  }
125
155
  }
126
156
 
127
157
  &:disabled {
128
- background: var(--x);
158
+ background: var(--hard-disabled);
129
159
  filter: brightness(125%);
130
160
  }
131
161
  }