@sproutsocial/racine 12.19.0 → 12.21.0

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 (626) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/README.md +46 -44
  3. package/__flow__/Avatar/index.js +26 -26
  4. package/__flow__/Avatar/index.stories.js +8 -8
  5. package/__flow__/Avatar/index.test.js +13 -13
  6. package/__flow__/Badge/constants.js +14 -14
  7. package/__flow__/Badge/index.js +18 -18
  8. package/__flow__/Badge/index.stories.js +8 -8
  9. package/__flow__/Badge/index.test.js +43 -43
  10. package/__flow__/Badge/styles.js +13 -9
  11. package/__flow__/Banner/index.js +21 -21
  12. package/__flow__/Banner/index.stories.js +56 -68
  13. package/__flow__/Banner/index.test.js +32 -34
  14. package/__flow__/Banner/styles.js +4 -4
  15. package/__flow__/Box/index.js +4 -4
  16. package/__flow__/Box/index.stories.js +58 -51
  17. package/__flow__/Box/index.test.js +7 -7
  18. package/__flow__/Box/styles.js +6 -6
  19. package/__flow__/Breadcrumb/index.js +9 -13
  20. package/__flow__/Breadcrumb/index.stories.js +14 -14
  21. package/__flow__/Breadcrumb/index.test.js +20 -20
  22. package/__flow__/Breadcrumb/styles.js +5 -5
  23. package/__flow__/Button/index.js +23 -23
  24. package/__flow__/Button/index.stories.js +34 -34
  25. package/__flow__/Button/styles.js +11 -11
  26. package/__flow__/Card/index.js +7 -7
  27. package/__flow__/Card/index.stories.js +14 -14
  28. package/__flow__/Card/styles.js +7 -7
  29. package/__flow__/CharacterCounter/index.js +7 -7
  30. package/__flow__/CharacterCounter/index.stories.js +25 -26
  31. package/__flow__/CharacterCounter/index.test.js +11 -11
  32. package/__flow__/CharacterCounter/styles.js +3 -3
  33. package/__flow__/ChartLegend/index.js +7 -7
  34. package/__flow__/ChartLegend/index.stories.js +22 -22
  35. package/__flow__/ChartLegend/index.test.js +27 -27
  36. package/__flow__/ChartLegend/styles.js +7 -7
  37. package/__flow__/Checkbox/index.js +10 -10
  38. package/__flow__/Checkbox/index.stories.js +24 -24
  39. package/__flow__/Checkbox/index.test.js +25 -25
  40. package/__flow__/Checkbox/styles.js +27 -28
  41. package/__flow__/Collapsible/index.js +15 -15
  42. package/__flow__/Collapsible/index.stories.js +13 -13
  43. package/__flow__/Collapsible/index.test.js +27 -27
  44. package/__flow__/Collapsible/styles.js +5 -5
  45. package/__flow__/DatePicker/DateRangePicker.js +5 -8
  46. package/__flow__/DatePicker/DateRangePicker.stories.js +19 -19
  47. package/__flow__/DatePicker/DateRangePicker.test.js +21 -21
  48. package/__flow__/DatePicker/SingleDatePicker.js +6 -9
  49. package/__flow__/DatePicker/SingleDatePicker.stories.js +10 -10
  50. package/__flow__/DatePicker/SingleDatePicker.test.js +21 -23
  51. package/__flow__/DatePicker/StatefulDateRangePicker.js +6 -6
  52. package/__flow__/DatePicker/StatefulSingleDatePicker.js +3 -3
  53. package/__flow__/DatePicker/common.js +13 -13
  54. package/__flow__/DatePicker/index.js +3 -3
  55. package/__flow__/DatePicker/styles.js +42 -42
  56. package/__flow__/Drawer/SlideTransition.js +10 -10
  57. package/__flow__/Drawer/index.js +29 -29
  58. package/__flow__/Drawer/index.stories.js +58 -141
  59. package/__flow__/Drawer/index.test.js +28 -28
  60. package/__flow__/Drawer/styles.js +4 -4
  61. package/__flow__/EmptyState/index.js +5 -5
  62. package/__flow__/EmptyState/index.stories.js +10 -10
  63. package/__flow__/EmptyState/index.test.js +27 -27
  64. package/__flow__/EnumIllustrationNames.js +1 -1
  65. package/__flow__/Fieldset/index.js +14 -14
  66. package/__flow__/Fieldset/index.stories.js +19 -20
  67. package/__flow__/Fieldset/index.test.js +14 -14
  68. package/__flow__/Fieldset/styles.js +5 -5
  69. package/__flow__/FormField/index.js +14 -14
  70. package/__flow__/FormField/index.stories.js +31 -21
  71. package/__flow__/FormField/index.test.js +19 -19
  72. package/__flow__/Icon/deprecatedIcons.js +36 -36
  73. package/__flow__/Icon/index.js +17 -17
  74. package/__flow__/Icon/index.stories.js +62 -29
  75. package/__flow__/Icon/index.test.js +15 -15
  76. package/__flow__/Icon/styles.js +12 -23
  77. package/__flow__/IllustrationViewBoxes.js +1 -1
  78. package/__flow__/Image/index.js +6 -7
  79. package/__flow__/Image/index.stories.js +5 -5
  80. package/__flow__/Image/index.test.js +24 -24
  81. package/__flow__/Image/styles.js +6 -5
  82. package/__flow__/Indicator/index.js +7 -7
  83. package/__flow__/Indicator/index.stories.js +8 -14
  84. package/__flow__/Indicator/index.test.js +6 -6
  85. package/__flow__/Indicator/styles.js +6 -6
  86. package/__flow__/Input/index.js +37 -37
  87. package/__flow__/Input/index.stories.js +96 -189
  88. package/__flow__/Input/index.test.js +117 -117
  89. package/__flow__/Input/styles.js +13 -13
  90. package/__flow__/KeyboardKey/index.js +5 -5
  91. package/__flow__/KeyboardKey/index.stories.js +9 -12
  92. package/__flow__/KeyboardKey/index.test.js +7 -7
  93. package/__flow__/KeyboardKey/styles.js +4 -4
  94. package/__flow__/Label/index.js +6 -6
  95. package/__flow__/Label/index.stories.js +5 -7
  96. package/__flow__/Label/index.test.js +8 -8
  97. package/__flow__/Link/constants.js +4 -4
  98. package/__flow__/Link/index.js +11 -11
  99. package/__flow__/Link/index.stories.js +61 -102
  100. package/__flow__/Link/index.test.js +40 -40
  101. package/__flow__/Link/styles.js +6 -6
  102. package/__flow__/Listbox/index.js +16 -16
  103. package/__flow__/Listbox/index.stories.js +35 -35
  104. package/__flow__/Listbox/index.test.js +63 -65
  105. package/__flow__/Loader/index.js +12 -12
  106. package/__flow__/Loader/index.stories.js +10 -10
  107. package/__flow__/Loader/index.test.js +17 -17
  108. package/__flow__/Loader/styles.js +9 -13
  109. package/__flow__/LoaderButton/index.js +36 -18
  110. package/__flow__/LoaderButton/index.stories.js +35 -7
  111. package/__flow__/LoaderButton/index.test.js +15 -15
  112. package/__flow__/Menu/__snapshots__/index.test.js.snap +0 -9
  113. package/__flow__/Menu/constants.js +8 -8
  114. package/__flow__/Menu/descendants.js +89 -80
  115. package/__flow__/Menu/hooks.js +22 -22
  116. package/__flow__/Menu/index.flow.js +13 -13
  117. package/__flow__/Menu/index.js +56 -60
  118. package/__flow__/Menu/index.stories.js +19 -19
  119. package/__flow__/Menu/index.test.js +22 -22
  120. package/__flow__/Menu/names.js +4945 -4945
  121. package/__flow__/Menu/styles.js +5 -5
  122. package/__flow__/Message/index.js +33 -33
  123. package/__flow__/Message/index.stories.js +18 -13
  124. package/__flow__/Message/index.test.js +6 -6
  125. package/__flow__/Message/styles.js +15 -15
  126. package/__flow__/Modal/index.js +19 -19
  127. package/__flow__/Modal/index.stories.js +43 -43
  128. package/__flow__/Modal/index.test.js +29 -29
  129. package/__flow__/Modal/styles.js +27 -32
  130. package/__flow__/Numeral/index.js +22 -22
  131. package/__flow__/Numeral/index.stories.js +74 -74
  132. package/__flow__/Numeral/styles.js +3 -3
  133. package/__flow__/Numeral/tests/A11y.test.js +7 -7
  134. package/__flow__/Numeral/tests/abbreviate.test.js +40 -40
  135. package/__flow__/Numeral/tests/currency.test.js +24 -24
  136. package/__flow__/Numeral/tests/defaults.test.js +20 -20
  137. package/__flow__/Numeral/tests/invalid.test.js +9 -9
  138. package/__flow__/Numeral/tests/locale.test.js +38 -38
  139. package/__flow__/Numeral/tests/precision.test.js +76 -76
  140. package/__flow__/Numeral/tests/testNumeral.js +11 -11
  141. package/__flow__/Numeral/tests/zero.test.js +8 -8
  142. package/__flow__/OverflowList/index.flow.js +2 -2
  143. package/__flow__/OverflowList/index.js +12 -12
  144. package/__flow__/OverflowList/index.stories.js +10 -10
  145. package/__flow__/OverflowList/index.test.js +25 -25
  146. package/__flow__/OverflowList/styles.js +5 -5
  147. package/__flow__/PartnerLogo/TypePartnerNames.js +37 -37
  148. package/__flow__/PartnerLogo/index.js +21 -27
  149. package/__flow__/PartnerLogo/index.stories.js +52 -52
  150. package/__flow__/PartnerLogo/styles.js +12 -24
  151. package/__flow__/Popout/index.js +66 -67
  152. package/__flow__/Popout/index.stories.js +101 -82
  153. package/__flow__/Popout/index.test.js +43 -43
  154. package/__flow__/Popout/styles.js +4 -5
  155. package/__flow__/Portal/index.js +9 -9
  156. package/__flow__/Portal/index.stories.js +12 -12
  157. package/__flow__/Radio/index.js +4 -4
  158. package/__flow__/Radio/index.stories.js +11 -11
  159. package/__flow__/Radio/index.test.js +12 -12
  160. package/__flow__/Radio/styles.js +15 -16
  161. package/__flow__/SegmentedControl/index.js +7 -7
  162. package/__flow__/SegmentedControl/index.stories.js +7 -7
  163. package/__flow__/SegmentedControl/index.test.js +29 -29
  164. package/__flow__/SegmentedControl/styles.js +10 -9
  165. package/__flow__/Select/index.js +10 -10
  166. package/__flow__/Select/index.stories.js +33 -69
  167. package/__flow__/Select/index.test.js +14 -14
  168. package/__flow__/Select/styles.js +16 -16
  169. package/__flow__/Skeleton/index.js +4 -4
  170. package/__flow__/Skeleton/index.stories.js +5 -5
  171. package/__flow__/SpotIllustration/illustrationNames.js +118 -117
  172. package/__flow__/SpotIllustration/index.js +15 -11
  173. package/__flow__/SpotIllustration/index.stories.js +18 -18
  174. package/__flow__/SpotIllustration/spotIllustrations/molecule.svg +14 -0
  175. package/__flow__/Stack/index.js +43 -33
  176. package/__flow__/Stack/index.stories.js +41 -91
  177. package/__flow__/Stack/index.test.js +16 -7
  178. package/__flow__/Switch/index.js +8 -8
  179. package/__flow__/Switch/index.stories.js +5 -5
  180. package/__flow__/Switch/index.test.js +25 -29
  181. package/__flow__/Switch/styles.js +13 -9
  182. package/__flow__/Table/index.js +17 -17
  183. package/__flow__/Table/index.stories.js +99 -99
  184. package/__flow__/Table/index.test.js +32 -32
  185. package/__flow__/Table/styles.js +4 -4
  186. package/__flow__/TableCell/index.js +8 -7
  187. package/__flow__/TableCell/index.stories.js +20 -23
  188. package/__flow__/TableCell/index.test.js +11 -11
  189. package/__flow__/TableCell/styles.js +4 -5
  190. package/__flow__/TableHeaderCell/index.js +14 -14
  191. package/__flow__/TableHeaderCell/index.stories.js +35 -30
  192. package/__flow__/TableHeaderCell/index.test.js +11 -11
  193. package/__flow__/TableHeaderCell/styles.js +4 -4
  194. package/__flow__/TableRowAccordion/index.js +8 -8
  195. package/__flow__/TableRowAccordion/index.stories.js +36 -36
  196. package/__flow__/TableRowAccordion/index.test.js +28 -30
  197. package/__flow__/TableRowAccordion/styles.js +11 -7
  198. package/__flow__/Tabs/index.js +11 -11
  199. package/__flow__/Tabs/index.stories.js +28 -54
  200. package/__flow__/Tabs/index.test.js +54 -54
  201. package/__flow__/Tabs/styles.js +6 -7
  202. package/__flow__/Text/index.js +14 -14
  203. package/__flow__/Text/index.stories.js +84 -86
  204. package/__flow__/Text/index.test.js +29 -33
  205. package/__flow__/Text/styles.js +4 -4
  206. package/__flow__/Textarea/index.js +5 -5
  207. package/__flow__/Textarea/index.stories.js +54 -93
  208. package/__flow__/Textarea/index.test.js +30 -30
  209. package/__flow__/Textarea/styles.js +6 -6
  210. package/__flow__/ThemeProvider/index.js +4 -4
  211. package/__flow__/Toast/index.js +23 -23
  212. package/__flow__/Toast/index.stories.js +21 -21
  213. package/__flow__/Toast/styles.js +6 -6
  214. package/__flow__/ToggleHint/index.js +8 -8
  215. package/__flow__/ToggleHint/index.test.js +8 -8
  216. package/__flow__/ToggleHint/styles.js +8 -8
  217. package/__flow__/Token/index.js +10 -10
  218. package/__flow__/Token/index.stories.js +49 -54
  219. package/__flow__/Token/index.test.js +28 -28
  220. package/__flow__/Token/styles.js +11 -11
  221. package/__flow__/TokenInput/index.flow.js +1 -1
  222. package/__flow__/TokenInput/index.js +39 -39
  223. package/__flow__/TokenInput/index.stories.js +121 -128
  224. package/__flow__/TokenInput/styles.js +5 -5
  225. package/__flow__/TokenInput/tests/default/clicking.test.js +13 -13
  226. package/__flow__/TokenInput/tests/default/deleting.test.js +39 -39
  227. package/__flow__/TokenInput/tests/default/focusing.test.js +18 -18
  228. package/__flow__/TokenInput/tests/default/inputting.test.js +23 -23
  229. package/__flow__/TokenInput/tests/default/pasting.test.js +52 -52
  230. package/__flow__/TokenInput/tests/default/rendering.test.js +54 -54
  231. package/__flow__/TokenInput/util.js +4 -4
  232. package/__flow__/Tooltip/index.js +21 -21
  233. package/__flow__/Tooltip/index.stories.js +18 -18
  234. package/__flow__/Tooltip/index.test.js +54 -54
  235. package/__flow__/Tooltip/styles.js +4 -5
  236. package/__flow__/VisuallyHidden/index.js +3 -3
  237. package/__flow__/building-stories.stories.mdx +121 -0
  238. package/__flow__/dataviz/dataviz.stories.js +4 -4
  239. package/__flow__/dataviz/index.js +3 -3
  240. package/__flow__/index.js +72 -72
  241. package/__flow__/overview.stories.js +60 -0
  242. package/__flow__/setupTests.js +5 -5
  243. package/__flow__/systemProps/background.js +3 -3
  244. package/__flow__/systemProps/border.js +3 -3
  245. package/__flow__/systemProps/color.js +3 -3
  246. package/__flow__/systemProps/custom.js +3 -3
  247. package/__flow__/systemProps/flexbox.js +3 -3
  248. package/__flow__/systemProps/grid.js +3 -3
  249. package/__flow__/systemProps/index.js +14 -14
  250. package/__flow__/systemProps/layout.js +3 -3
  251. package/__flow__/systemProps/position.js +3 -3
  252. package/__flow__/systemProps/shadow.js +3 -3
  253. package/__flow__/systemProps/space.js +3 -7
  254. package/__flow__/systemProps/systemProps.js +14 -14
  255. package/__flow__/systemProps/tests/background.test.js +17 -17
  256. package/__flow__/systemProps/tests/border.test.js +61 -61
  257. package/__flow__/systemProps/tests/color.test.js +15 -15
  258. package/__flow__/systemProps/tests/custom.test.js +12 -12
  259. package/__flow__/systemProps/tests/flexbox.test.js +33 -33
  260. package/__flow__/systemProps/tests/grid.test.js +31 -31
  261. package/__flow__/systemProps/tests/layout.test.js +29 -29
  262. package/__flow__/systemProps/tests/position.test.js +19 -19
  263. package/__flow__/systemProps/tests/shadow.test.js +11 -11
  264. package/__flow__/systemProps/tests/space.test.js +11 -11
  265. package/__flow__/systemProps/tests/types.flow.js +18 -18
  266. package/__flow__/systemProps/tests/typography.test.js +21 -21
  267. package/__flow__/systemProps/tests/variant.test.js +9 -9
  268. package/__flow__/systemProps/types.flow.js +2 -2
  269. package/__flow__/systemProps/typography.js +4 -4
  270. package/__flow__/systemProps/variant.js +5 -5
  271. package/__flow__/themes/dark/dataviz-palette.js +21 -21
  272. package/__flow__/themes/dark/decorative-palettes.js +1 -1
  273. package/__flow__/themes/dark/theme.js +18 -18
  274. package/__flow__/themes/extendedThemes/README.md +1 -1
  275. package/__flow__/themes/extendedThemes/sproutTheme/dark/theme.js +16 -4
  276. package/__flow__/themes/extendedThemes/sproutTheme/index.js +2 -2
  277. package/__flow__/themes/extendedThemes/sproutTheme/light/theme.js +16 -4
  278. package/__flow__/themes/light/dataviz-palette.js +21 -21
  279. package/__flow__/themes/light/decorative-palettes.js +1 -1
  280. package/__flow__/themes/light/literal-colors.js +133 -133
  281. package/__flow__/themes/light/theme.js +53 -53
  282. package/__flow__/types/system-props.flow.js +5 -5
  283. package/__flow__/types/theme.colors.flow.js +2 -2
  284. package/__flow__/types/theme.flow.js +5 -5
  285. package/__flow__/utils/a11yTest.js +1 -1
  286. package/__flow__/utils/chartColors.js +1 -1
  287. package/__flow__/utils/constants.js +1 -1
  288. package/__flow__/utils/dataQaLabelQueries.js +2 -2
  289. package/__flow__/utils/hooks.js +17 -17
  290. package/__flow__/utils/index.js +4 -4
  291. package/__flow__/utils/innerText.js +9 -9
  292. package/__flow__/utils/mixins.js +6 -6
  293. package/__flow__/utils/react-testing-library.js +6 -6
  294. package/__flow__/utils/responsiveProps/index.js +3 -3
  295. package/__flow__/utils/responsiveProps/index.test.js +8 -8
  296. package/__flow__/utils/system-props.js +3 -3
  297. package/__flow__/utils/useInteractiveColor.js +5 -5
  298. package/__flow__/writing-good-stories.stories.mdx +3 -0
  299. package/bin/racine-codemod.js +12 -12
  300. package/codemods/__tests__/migrate-2.x-to-3.x.test.js +2 -2
  301. package/codemods/migrate-2.x-to-3.x.js +29 -30
  302. package/commonjs/Avatar/index.js +33 -53
  303. package/commonjs/Badge/constants.js +18 -15
  304. package/commonjs/Badge/index.js +14 -28
  305. package/commonjs/Badge/styles.js +3 -9
  306. package/commonjs/Banner/index.js +16 -37
  307. package/commonjs/Banner/styles.js +0 -5
  308. package/commonjs/Box/index.js +2 -9
  309. package/commonjs/Box/styles.js +0 -4
  310. package/commonjs/Breadcrumb/index.js +13 -29
  311. package/commonjs/Breadcrumb/styles.js +1 -4
  312. package/commonjs/Button/index.js +29 -43
  313. package/commonjs/Button/styles.js +6 -15
  314. package/commonjs/Card/index.js +16 -26
  315. package/commonjs/Card/styles.js +1 -5
  316. package/commonjs/CharacterCounter/index.js +6 -23
  317. package/commonjs/CharacterCounter/styles.js +0 -5
  318. package/commonjs/ChartLegend/index.js +5 -20
  319. package/commonjs/ChartLegend/styles.js +2 -11
  320. package/commonjs/Checkbox/index.js +30 -53
  321. package/commonjs/Checkbox/styles.js +14 -35
  322. package/commonjs/Collapsible/index.js +31 -54
  323. package/commonjs/Collapsible/styles.js +3 -6
  324. package/commonjs/DatePicker/DateRangePicker.js +4 -17
  325. package/commonjs/DatePicker/SingleDatePicker.js +3 -17
  326. package/commonjs/DatePicker/StatefulDateRangePicker.js +16 -31
  327. package/commonjs/DatePicker/StatefulSingleDatePicker.js +7 -20
  328. package/commonjs/DatePicker/common.js +8 -22
  329. package/commonjs/DatePicker/index.js +0 -5
  330. package/commonjs/DatePicker/styles.js +8 -25
  331. package/commonjs/Drawer/SlideTransition.js +8 -18
  332. package/commonjs/Drawer/index.js +51 -90
  333. package/commonjs/Drawer/styles.js +0 -8
  334. package/commonjs/EmptyState/index.js +8 -20
  335. package/commonjs/Fieldset/index.js +15 -32
  336. package/commonjs/Fieldset/styles.js +2 -7
  337. package/commonjs/FormField/index.js +19 -36
  338. package/commonjs/Icon/deprecatedIcons.js +36 -36
  339. package/commonjs/Icon/index.js +19 -37
  340. package/commonjs/Icon/styles.js +8 -19
  341. package/commonjs/IllustrationViewBoxes.js +1 -0
  342. package/commonjs/Image/index.js +13 -41
  343. package/commonjs/Image/styles.js +1 -7
  344. package/commonjs/Indicator/index.js +8 -26
  345. package/commonjs/Indicator/styles.js +1 -7
  346. package/commonjs/Input/index.js +80 -119
  347. package/commonjs/Input/styles.js +9 -19
  348. package/commonjs/KeyboardKey/index.js +3 -20
  349. package/commonjs/KeyboardKey/styles.js +0 -4
  350. package/commonjs/Label/index.js +7 -27
  351. package/commonjs/Link/constants.js +3 -4
  352. package/commonjs/Link/index.js +16 -28
  353. package/commonjs/Link/styles.js +1 -8
  354. package/commonjs/Listbox/index.js +15 -36
  355. package/commonjs/Loader/index.js +15 -31
  356. package/commonjs/Loader/styles.js +2 -13
  357. package/commonjs/LoaderButton/index.js +37 -39
  358. package/commonjs/Menu/constants.js +9 -8
  359. package/commonjs/Menu/descendants.js +70 -105
  360. package/commonjs/Menu/hooks.js +23 -41
  361. package/commonjs/Menu/index.flow.js +0 -7
  362. package/commonjs/Menu/index.js +94 -164
  363. package/commonjs/Menu/names.js +1 -1
  364. package/commonjs/Menu/styles.js +0 -6
  365. package/commonjs/Message/index.js +37 -70
  366. package/commonjs/Message/styles.js +9 -24
  367. package/commonjs/Modal/index.js +31 -54
  368. package/commonjs/Modal/styles.js +17 -36
  369. package/commonjs/Numeral/index.js +39 -67
  370. package/commonjs/Numeral/styles.js +0 -3
  371. package/commonjs/Numeral/tests/testNumeral.js +13 -31
  372. package/commonjs/OverflowList/index.flow.js +0 -2
  373. package/commonjs/OverflowList/index.js +27 -41
  374. package/commonjs/OverflowList/styles.js +0 -7
  375. package/commonjs/PartnerLogo/index.js +22 -37
  376. package/commonjs/PartnerLogo/styles.js +7 -17
  377. package/commonjs/Popout/index.js +95 -127
  378. package/commonjs/Popout/styles.js +0 -5
  379. package/commonjs/Portal/index.js +8 -31
  380. package/commonjs/Radio/index.js +18 -42
  381. package/commonjs/Radio/styles.js +9 -21
  382. package/commonjs/SegmentedControl/index.js +17 -37
  383. package/commonjs/SegmentedControl/styles.js +2 -12
  384. package/commonjs/Select/index.js +24 -47
  385. package/commonjs/Select/styles.js +12 -24
  386. package/commonjs/Skeleton/index.js +0 -5
  387. package/commonjs/SpotIllustration/illustrationNames.js +1 -1
  388. package/commonjs/SpotIllustration/index.js +5 -11
  389. package/commonjs/Stack/index.js +27 -42
  390. package/commonjs/Switch/index.js +17 -42
  391. package/commonjs/Switch/styles.js +3 -11
  392. package/commonjs/Table/index.js +26 -50
  393. package/commonjs/Table/styles.js +0 -4
  394. package/commonjs/TableCell/index.js +12 -30
  395. package/commonjs/TableCell/styles.js +0 -5
  396. package/commonjs/TableHeaderCell/index.js +27 -56
  397. package/commonjs/TableHeaderCell/styles.js +0 -6
  398. package/commonjs/TableRowAccordion/index.js +12 -37
  399. package/commonjs/TableRowAccordion/styles.js +2 -9
  400. package/commonjs/Tabs/index.js +16 -66
  401. package/commonjs/Tabs/styles.js +2 -11
  402. package/commonjs/Text/index.js +12 -25
  403. package/commonjs/Text/styles.js +1 -6
  404. package/commonjs/Textarea/index.js +31 -55
  405. package/commonjs/Textarea/styles.js +2 -9
  406. package/commonjs/ThemeProvider/index.js +1 -10
  407. package/commonjs/Toast/index.js +19 -42
  408. package/commonjs/Toast/styles.js +1 -7
  409. package/commonjs/ToggleHint/index.js +15 -39
  410. package/commonjs/ToggleHint/styles.js +2 -9
  411. package/commonjs/Token/index.js +15 -29
  412. package/commonjs/Token/styles.js +5 -12
  413. package/commonjs/TokenInput/index.js +70 -122
  414. package/commonjs/TokenInput/styles.js +1 -7
  415. package/commonjs/TokenInput/util.js +2 -7
  416. package/commonjs/Tooltip/index.js +40 -63
  417. package/commonjs/Tooltip/styles.js +1 -5
  418. package/commonjs/VisuallyHidden/index.js +0 -4
  419. package/commonjs/dataviz/index.js +0 -4
  420. package/commonjs/index.js +0 -129
  421. package/commonjs/systemProps/background.js +0 -1
  422. package/commonjs/systemProps/border.js +0 -1
  423. package/commonjs/systemProps/color.js +0 -1
  424. package/commonjs/systemProps/custom.js +0 -1
  425. package/commonjs/systemProps/flexbox.js +0 -1
  426. package/commonjs/systemProps/grid.js +0 -1
  427. package/commonjs/systemProps/index.js +0 -28
  428. package/commonjs/systemProps/layout.js +0 -1
  429. package/commonjs/systemProps/position.js +0 -1
  430. package/commonjs/systemProps/shadow.js +0 -1
  431. package/commonjs/systemProps/space.js +1 -2
  432. package/commonjs/systemProps/systemProps.js +0 -13
  433. package/commonjs/systemProps/tests/types.flow.js +25 -22
  434. package/commonjs/systemProps/typography.js +0 -1
  435. package/commonjs/systemProps/variant.js +2 -3
  436. package/commonjs/themes/dark/dataviz-palette.js +20 -22
  437. package/commonjs/themes/dark/decorative-palettes.js +0 -2
  438. package/commonjs/themes/dark/theme.js +15 -29
  439. package/commonjs/themes/extendedThemes/sproutTheme/dark/theme.js +14 -9
  440. package/commonjs/themes/extendedThemes/sproutTheme/index.js +0 -5
  441. package/commonjs/themes/extendedThemes/sproutTheme/light/theme.js +14 -9
  442. package/commonjs/themes/light/dataviz-palette.js +20 -22
  443. package/commonjs/themes/light/decorative-palettes.js +0 -2
  444. package/commonjs/themes/light/literal-colors.js +132 -134
  445. package/commonjs/themes/light/theme.js +45 -61
  446. package/commonjs/types/system-props.flow.js +1 -1
  447. package/commonjs/types/theme.colors.flow.js +0 -2
  448. package/commonjs/types/theme.flow.js +0 -1
  449. package/commonjs/utils/a11yTest.js +3 -10
  450. package/commonjs/utils/chartColors.js +0 -1
  451. package/commonjs/utils/constants.js +1 -1
  452. package/commonjs/utils/dataQaLabelQueries.js +12 -21
  453. package/commonjs/utils/hooks.js +39 -70
  454. package/commonjs/utils/index.js +2 -9
  455. package/commonjs/utils/innerText.js +10 -14
  456. package/commonjs/utils/mixins.js +2 -7
  457. package/commonjs/utils/react-testing-library.js +4 -26
  458. package/commonjs/utils/responsiveProps/index.js +1 -11
  459. package/commonjs/utils/system-props.js +2 -5
  460. package/commonjs/utils/useInteractiveColor.js +6 -8
  461. package/dist/illustration.svg +1 -1
  462. package/dist/illustrationList.js +1 -1
  463. package/dist/themes/dark/theme.scss +2 -2
  464. package/dist/themes/extendedThemes/sproutTheme/dark/theme.scss +26 -2
  465. package/dist/themes/extendedThemes/sproutTheme/light/theme.scss +26 -2
  466. package/dist/themes/light/theme.scss +2 -2
  467. package/lib/Avatar/index.js +40 -47
  468. package/lib/Badge/constants.js +19 -15
  469. package/lib/Badge/index.js +18 -25
  470. package/lib/Badge/styles.js +8 -6
  471. package/lib/Banner/index.js +20 -32
  472. package/lib/Banner/styles.js +3 -2
  473. package/lib/Box/index.js +4 -5
  474. package/lib/Box/styles.js +3 -2
  475. package/lib/Breadcrumb/index.js +19 -27
  476. package/lib/Breadcrumb/styles.js +3 -2
  477. package/lib/Button/index.js +31 -38
  478. package/lib/Button/styles.js +14 -11
  479. package/lib/Card/index.js +18 -24
  480. package/lib/Card/styles.js +5 -4
  481. package/lib/CharacterCounter/index.js +8 -20
  482. package/lib/CharacterCounter/styles.js +3 -2
  483. package/lib/ChartLegend/index.js +9 -17
  484. package/lib/ChartLegend/styles.js +5 -4
  485. package/lib/Checkbox/index.js +32 -51
  486. package/lib/Checkbox/styles.js +21 -26
  487. package/lib/Collapsible/index.js +36 -51
  488. package/lib/Collapsible/styles.js +6 -5
  489. package/lib/DatePicker/DateRangePicker.js +8 -14
  490. package/lib/DatePicker/SingleDatePicker.js +7 -13
  491. package/lib/DatePicker/StatefulDateRangePicker.js +19 -26
  492. package/lib/DatePicker/StatefulSingleDatePicker.js +9 -15
  493. package/lib/DatePicker/common.js +14 -13
  494. package/lib/DatePicker/index.js +2 -2
  495. package/lib/DatePicker/styles.js +12 -22
  496. package/lib/Drawer/SlideTransition.js +11 -14
  497. package/lib/Drawer/index.js +64 -88
  498. package/lib/Drawer/styles.js +4 -3
  499. package/lib/EmptyState/index.js +11 -17
  500. package/lib/Fieldset/index.js +19 -29
  501. package/lib/Fieldset/styles.js +5 -4
  502. package/lib/FormField/index.js +27 -33
  503. package/lib/Icon/deprecatedIcons.js +36 -36
  504. package/lib/Icon/index.js +25 -34
  505. package/lib/Icon/styles.js +12 -16
  506. package/lib/IllustrationViewBoxes.js +1 -0
  507. package/lib/Image/index.js +15 -38
  508. package/lib/Image/styles.js +4 -4
  509. package/lib/Indicator/index.js +11 -23
  510. package/lib/Indicator/styles.js +5 -5
  511. package/lib/Input/index.js +87 -115
  512. package/lib/Input/styles.js +13 -15
  513. package/lib/KeyboardKey/index.js +6 -17
  514. package/lib/KeyboardKey/styles.js +3 -2
  515. package/lib/Label/index.js +10 -24
  516. package/lib/Link/constants.js +5 -4
  517. package/lib/Link/index.js +18 -25
  518. package/lib/Link/styles.js +6 -5
  519. package/lib/Listbox/index.js +21 -29
  520. package/lib/Loader/index.js +17 -29
  521. package/lib/Loader/styles.js +6 -8
  522. package/lib/LoaderButton/index.js +45 -34
  523. package/lib/Menu/constants.js +10 -8
  524. package/lib/Menu/descendants.js +73 -94
  525. package/lib/Menu/hooks.js +28 -39
  526. package/lib/Menu/index.flow.js +6 -5
  527. package/lib/Menu/index.js +113 -150
  528. package/lib/Menu/names.js +1 -1
  529. package/lib/Menu/styles.js +4 -3
  530. package/lib/Message/index.js +42 -66
  531. package/lib/Message/styles.js +15 -23
  532. package/lib/Modal/index.js +38 -51
  533. package/lib/Modal/styles.js +23 -32
  534. package/lib/Numeral/index.js +45 -64
  535. package/lib/Numeral/styles.js +3 -2
  536. package/lib/Numeral/tests/testNumeral.js +17 -27
  537. package/lib/OverflowList/index.flow.js +2 -1
  538. package/lib/OverflowList/index.js +31 -38
  539. package/lib/OverflowList/styles.js +5 -4
  540. package/lib/PartnerLogo/index.js +26 -35
  541. package/lib/PartnerLogo/styles.js +11 -14
  542. package/lib/Popout/index.js +105 -121
  543. package/lib/Popout/styles.js +3 -3
  544. package/lib/Portal/index.js +11 -29
  545. package/lib/Radio/index.js +20 -40
  546. package/lib/Radio/styles.js +14 -14
  547. package/lib/SegmentedControl/index.js +21 -34
  548. package/lib/SegmentedControl/styles.js +7 -9
  549. package/lib/Select/index.js +27 -44
  550. package/lib/Select/styles.js +16 -20
  551. package/lib/Skeleton/index.js +7 -4
  552. package/lib/SpotIllustration/illustrationNames.js +2 -1
  553. package/lib/SpotIllustration/index.js +9 -10
  554. package/lib/Stack/index.js +31 -39
  555. package/lib/Switch/index.js +21 -39
  556. package/lib/Switch/styles.js +8 -7
  557. package/lib/Table/index.js +30 -40
  558. package/lib/Table/styles.js +3 -2
  559. package/lib/TableCell/index.js +14 -27
  560. package/lib/TableCell/styles.js +3 -3
  561. package/lib/TableHeaderCell/index.js +30 -52
  562. package/lib/TableHeaderCell/styles.js +3 -2
  563. package/lib/TableRowAccordion/index.js +16 -34
  564. package/lib/TableRowAccordion/styles.js +5 -3
  565. package/lib/Tabs/index.js +18 -63
  566. package/lib/Tabs/styles.js +6 -6
  567. package/lib/Text/index.js +15 -21
  568. package/lib/Text/styles.js +4 -3
  569. package/lib/Textarea/index.js +33 -53
  570. package/lib/Textarea/styles.js +6 -5
  571. package/lib/ThemeProvider/index.js +4 -7
  572. package/lib/Toast/index.js +26 -37
  573. package/lib/Toast/styles.js +5 -4
  574. package/lib/ToggleHint/index.js +18 -36
  575. package/lib/ToggleHint/styles.js +6 -5
  576. package/lib/Token/index.js +20 -26
  577. package/lib/Token/styles.js +10 -9
  578. package/lib/TokenInput/index.js +78 -118
  579. package/lib/TokenInput/styles.js +5 -4
  580. package/lib/TokenInput/util.js +5 -3
  581. package/lib/Tooltip/index.js +45 -60
  582. package/lib/Tooltip/styles.js +4 -4
  583. package/lib/VisuallyHidden/index.js +3 -2
  584. package/lib/dataviz/index.js +4 -3
  585. package/lib/index.js +66 -64
  586. package/lib/systemProps/background.js +3 -1
  587. package/lib/systemProps/border.js +3 -1
  588. package/lib/systemProps/color.js +3 -1
  589. package/lib/systemProps/custom.js +3 -1
  590. package/lib/systemProps/flexbox.js +3 -1
  591. package/lib/systemProps/grid.js +3 -1
  592. package/lib/systemProps/index.js +16 -14
  593. package/lib/systemProps/layout.js +3 -1
  594. package/lib/systemProps/position.js +3 -1
  595. package/lib/systemProps/shadow.js +3 -1
  596. package/lib/systemProps/space.js +2 -1
  597. package/lib/systemProps/systemProps.js +14 -13
  598. package/lib/systemProps/tests/types.flow.js +27 -22
  599. package/lib/systemProps/typography.js +3 -1
  600. package/lib/systemProps/variant.js +4 -3
  601. package/lib/themes/dark/dataviz-palette.js +23 -21
  602. package/lib/themes/dark/decorative-palettes.js +3 -1
  603. package/lib/themes/dark/theme.js +22 -25
  604. package/lib/themes/extendedThemes/sproutTheme/dark/theme.js +16 -7
  605. package/lib/themes/extendedThemes/sproutTheme/index.js +3 -2
  606. package/lib/themes/extendedThemes/sproutTheme/light/theme.js +16 -7
  607. package/lib/themes/light/dataviz-palette.js +23 -21
  608. package/lib/themes/light/decorative-palettes.js +3 -1
  609. package/lib/themes/light/literal-colors.js +135 -133
  610. package/lib/themes/light/theme.js +56 -57
  611. package/lib/types/system-props.flow.js +1 -1
  612. package/lib/types/theme.colors.flow.js +4 -2
  613. package/lib/types/theme.flow.js +3 -2
  614. package/lib/utils/a11yTest.js +5 -8
  615. package/lib/utils/chartColors.js +3 -1
  616. package/lib/utils/constants.js +3 -1
  617. package/lib/utils/dataQaLabelQueries.js +13 -21
  618. package/lib/utils/hooks.js +41 -64
  619. package/lib/utils/index.js +2 -5
  620. package/lib/utils/innerText.js +12 -14
  621. package/lib/utils/mixins.js +6 -5
  622. package/lib/utils/react-testing-library.js +10 -20
  623. package/lib/utils/responsiveProps/index.js +3 -8
  624. package/lib/utils/system-props.js +4 -3
  625. package/lib/utils/useInteractiveColor.js +10 -9
  626. package/package.json +6 -13
package/CHANGELOG.md CHANGED
@@ -1,5 +1,38 @@
1
1
  # Change Log
2
2
 
3
+ ## 12.21.0
4
+
5
+ ### Minor Changes
6
+
7
+ - ae9f649c: This change includes infrastructure changes to :
8
+
9
+ - Storybook and dependency version bumps
10
+ - Removal of deprecated Storybook `add-on knobs` in favor of supported `add-on controls`
11
+ - Added system prop types to Stack and TableCell
12
+ - We are now exporting `TypeProps` for Banner, Box, CharacterCounter, Drawer, FormField, Indicator, Input, KeyboardKey, Link, Select, Stack, TableHeaderCell, Text, TextArea, and TokenInput
13
+
14
+ - ae9f649c: This change adds a molecule spot illustration to the SpotIllustration component
15
+
16
+ ### Patch Changes
17
+
18
+ - ae9f649c: Updated a number of depencies to ensure Racine tech is on the latest versions
19
+ - ae9f649c: An accessibility bug on the `Menu` has been fixed that caused the `Menu.Item` index to become out of sync when items are removed.
20
+
21
+ The `Menu` component currently supports adding and removing menu items dynamically, but an index needed for accessibility was only being updated when items are added but not when they are removed.
22
+
23
+ ## 12.20.0
24
+
25
+ ### Minor Changes
26
+
27
+ - cd9d6a5: Added feature demo colors to growth extended theme
28
+ - 99c6adb: Updated the Loader Button component to support dark mode
29
+
30
+ ### Patch Changes
31
+
32
+ - 38f240c: Removed legacy PDF and IE11 icon style hacks
33
+ - 84797d6: Adjusted the values of icon sentiment colors to work more consistently and with better contrast across both light and dark modes
34
+ - f97c4e1: Remove spread property from SVG in PartnerLogo component
35
+
3
36
  ## 12.19.0
4
37
 
5
38
  ### Minor Changes
package/README.md CHANGED
@@ -19,21 +19,21 @@
19
19
  <a href="https://github.com/sproutsocial/racine/blob/main/LICENSE"><img src="https://flat.badgen.net/badge/license/MIT/blue" alt=""></a>
20
20
  </p>
21
21
 
22
- ---
22
+ ---
23
23
 
24
24
  ## Installation
25
25
 
26
- To work on Racine, you will need to set up your environment to use Artifactory.
26
+ To work on Racine, you will need to set up your environment to use Artifactory.
27
27
 
28
- Follow the instructions to do so [on the wiki](https://sprout.atlassian.net/wiki/spaces/INFRA/pages/3380249272/Getting+started+with+Artifactory+for+NPM+Yarn.).
28
+ Follow the instructions to do so [on the wiki](https://sprout.atlassian.net/wiki/spaces/INFRA/pages/3380249272/Getting+started+with+Artifactory+for+NPM+Yarn.).
29
29
 
30
30
  Then, copy the `_auth` and `email` settings in your `$HOME/.npmrc` into environmental variables in your shell's rc file (e.g. `$HOME/.zshrc` or `$HOME/.bashrc`), then re-`source` your rc file.
31
+
31
32
  ```shell
32
33
  export JFROG_AUTH="_auth string goes here"
33
34
  export JFROG_EMAIL="email string goes here"
34
35
  ```
35
36
 
36
-
37
37
  Install Racine using npm or yarn:
38
38
 
39
39
  ```sh
@@ -62,13 +62,13 @@ styled-components
62
62
  Then, wrap your app's React root in Racine's `ThemeProvider` component:
63
63
 
64
64
  ```js
65
- import { ThemeProvider } from '@sproutsocial/racine'
65
+ import {ThemeProvider} from '@sproutsocial/racine';
66
66
 
67
- const App = props => (
67
+ const App = (props) => (
68
68
  <ThemeProvider>
69
69
  <div>your app here</div>
70
70
  </ThemeProvider>
71
- )
71
+ );
72
72
  ```
73
73
 
74
74
  ## Documentation
@@ -84,10 +84,12 @@ Racine uses [Storybook](https://storybook.js.org) for local development. Here's
84
84
  1. Clone this repo: `git clone https://github.com/sproutsocial/racine`
85
85
  2. Follow these instructions to configure Artifactory for dependencies: https://sprout.atlassian.net/wiki/spaces/INFRA/pages/3380249272/Getting+started+with+Artifactory+for+NPM+Yarn
86
86
  3. Copy the `_auth` and `email` settings in your `$HOME/.npmrc` into environmental variables in your shell's rc file (e.g. `$HOME/.zshrc` or `$HOME/.bashrc`), then re-`source` your rc file.
87
+
87
88
  ```shell
88
89
  export JFROG_AUTH="_auth string goes here"
89
90
  export JFROG_EMAIL="email string goes here"
90
91
  ```
92
+
91
93
  4. Install dependencies: `yarn`
92
94
  5. Run the dev app: `yarn start`
93
95
 
@@ -100,43 +102,43 @@ Test any local package in another project by utilizing [yarn link](https://yarnp
100
102
 
101
103
  1. Navigate to your local copy of Racine in a terminal window
102
104
 
103
- ```shell
104
- $ cd ~/YourCodeFolder/racine
105
- $ yarn link # only needs to be run once
106
- $ yarn start
107
- ```
105
+ ```shell
106
+ $ cd ~/YourCodeFolder/racine
107
+ $ yarn link # only needs to be run once
108
+ $ yarn start
109
+ ```
108
110
 
109
- **Note**: This build task packages _all_ Racine components into the bundle, not just the specific components you are adding or modifying. After `yarn link` succeeds and Racine is globally linked, you shouldn't have to run link again.
111
+ **Note**: This build task packages _all_ Racine components into the bundle, not just the specific components you are adding or modifying. After `yarn link` succeeds and Racine is globally linked, you shouldn't have to run link again.
110
112
 
111
113
  2. Navigate to the folder you wish to use Racine components in your terminal (such as `web-app-core`) and complete the link
112
114
 
113
- ```shell
114
- $ cd ~/YourCodeFolder/web-app-core
115
- $ yarn link "@sproutsocial/racine"
116
- $ yarn start
117
- ```
115
+ ```shell
116
+ $ cd ~/YourCodeFolder/web-app-core
117
+ $ yarn link "@sproutsocial/racine"
118
+ $ yarn start
119
+ ```
118
120
 
119
121
  3. You can now use any components from your local instance of Racine in your project. See below for an example usage
120
122
 
121
- ```jsx
122
- /* ~/YourCodeFolder/web-app-core/YourFile.js */
123
- import {Icon} from '@sproutsocial/racine';
124
- // ...
125
- <Icon name='compose' />
126
- ```
123
+ ```jsx
124
+ /* ~/YourCodeFolder/web-app-core/YourFile.js */
125
+ import {Icon} from '@sproutsocial/racine';
126
+ // ...
127
+ <Icon name="compose" />;
128
+ ```
127
129
 
128
130
  4. **When you are done, be sure to unlink Racine so you are using the app's version of the package**
129
131
 
130
- ```
131
- $ yarn unlink "@sproutsocial/racine"
132
- $ yarn
133
- ```
132
+ ```
133
+ $ yarn unlink "@sproutsocial/racine"
134
+ $ yarn
135
+ ```
134
136
 
135
137
  </details>
136
138
 
137
- ## Contributing
139
+ ## Contributing
138
140
 
139
- The Design Systems team works on a regular two-week sprint cadence to iterate against Racine's roadmap and assist in any ad-hoc issues that may come up. That said, contributions to Racine are welcomed from any member of the wider Sprout org. Whether you're adding a new component or simply fixing a bug, every improvement to the library is future leverage for our peers, our product, and our customers.
141
+ The Design Systems team works on a regular two-week sprint cadence to iterate against Racine's roadmap and assist in any ad-hoc issues that may come up. That said, contributions to Racine are welcomed from any member of the wider Sprout org. Whether you're adding a new component or simply fixing a bug, every improvement to the library is future leverage for our peers, our product, and our customers.
140
142
 
141
143
  ### **🔍 Step 1: Find a way to contribute**
142
144
 
@@ -150,22 +152,22 @@ There are a few ways to get involved:
150
152
 
151
153
  Racine's file structure is set up like this:
152
154
 
153
- - `codemods` - For major updates to Racine that have breaking changes, codemods are included for automatically handling component API updates.
155
+ - `codemods` - For major updates to Racine that have breaking changes, codemods are included for automatically handling component API updates.
154
156
  - `src`
155
157
  - `ComponentName` - Every component in Racine has a folder within the `src` directory.
156
158
  - `index.js` - This file should export the component as its default export.
157
159
  - `index.stories.js` - Storybook stories can be written here.
158
160
  - `index.test.js` - All component tests live inside this file.
159
161
  - `styles.js` - Any style-specific components live here.
160
- - `utils` - This directory includes a set of common utilities and helpers that we use throughout Racine.
162
+ - `utils` - This directory includes a set of common utilities and helpers that we use throughout Racine.
161
163
 
162
- And you can interact with Racine via the command line with these commands:
164
+ And you can interact with Racine via the command line with these commands:
163
165
 
164
- - `yarn new` - This command will prompt you for the name of your component, and then generate all of the boilerplate you need to create the component.
166
+ - `yarn new` - This command will prompt you for the name of your component, and then generate all of the boilerplate you need to create the component.
165
167
  - `yarn start` - This will watch the Racine package for changes, and also run Storybook locally so that you can see your changes as you go.
166
168
  - `yarn change` - This command will generate a changeset file that is used to document changes to the Racine package. If you are making a PR to Racine that should result in a version bump to the package, you will need to run this command to add a changeset. You can [learn more about this command](#-step-3-make-your-changes) in step 3.
167
- - `yarn build` - Generate production builds for the Racine package.
168
- - `yarn test` - Run Racine's test suite. **Note:** `yarn start` must be run before `yarn test` to build generated files and directories
169
+ - `yarn build` - Generate production builds for the Racine package.
170
+ - `yarn test` - Run Racine's test suite. **Note:** `yarn start` must be run before `yarn test` to build generated files and directories
169
171
  - `yarn clean` - Delete all generated files and directories.
170
172
  - `yarn release` - This will trigger the release process for creating a new version of the Racine package on npm. **Only Racine administrators can perform the release process.**
171
173
 
@@ -175,9 +177,9 @@ If you're not a member of the Design Systems team, you'll want to start by creat
175
177
 
176
178
  If you are a member of the Design Systems team you'll have write access to `sproutsocial/racine`, which means you can branch directly off `dev` and start working. Either way, once you've got your new feature branch feel free to start coding! As updates are merged into `dev` on `sproutsocial/racine` by other developers over time you'll want to pull those updates into your feature branch, ideally via rebase, to avoid any conflicts when you open a pull request.
177
179
 
178
- *Need to make an urgent update? Branch off `main` instead of dev, and open your PR later against `main`. We consider this a hotfix and only support it for critical time-sensitive updates, so check with the Design Systems team prior to making this kind of contribution.*
180
+ _Need to make an urgent update? Branch off `main` instead of dev, and open your PR later against `main`. We consider this a hotfix and only support it for critical time-sensitive updates, so check with the Design Systems team prior to making this kind of contribution._
179
181
 
180
- As you develop you'll want to track the scope of the changes you make. Racine supports this with a tool called [changesets](https://github.com/atlassian/changesets) to automatically pick new version numbers and update the changelog whenever we publish a new version of the package.
182
+ As you develop you'll want to track the scope of the changes you make. Racine supports this with a tool called [changesets](https://github.com/atlassian/changesets) to automatically pick new version numbers and update the changelog whenever we publish a new version of the package.
181
183
 
182
184
  **Run `yarn change` to generate a changeset that will be used to derive the next version number for Racine from your changes.**
183
185
 
@@ -187,7 +189,7 @@ When running this command, you will be asked to select whether your change is a
187
189
 
188
190
  - **patch** changes are for bug fixes, and they bump the last digit in the version number (`x.x.0`)
189
191
  - **minor** changes are for new features or improvements, and they bump the middle digit in the version number (`x.0.x`)
190
- - **major** changes are *breaking changes*, and they bump the first digit (`0.x.x`). These types of changes are rare and should be coordinated in advance with the Design Systems team.
192
+ - **major** changes are _breaking changes_, and they bump the first digit (`0.x.x`). These types of changes are rare and should be coordinated in advance with the Design Systems team.
191
193
 
192
194
  The changeset CLI will also ask you to input a message detailing your changes. The completion of the command will generate a new changeset markdown file. You are more than welcome to edit this file after it has been generated, so don't get hung up on trying to write the perfect text from the command line. Aim to make the text of the changeset file(s) as descriptive and informative as possible, as they will be used to build a changelog file when the new version is released.
193
195
 
@@ -197,18 +199,18 @@ The changeset CLI will also ask you to input a message detailing your changes. T
197
199
 
198
200
  Once you're ready to submit your changes for review, open a PR against the `dev` branch in `sproutsocial/racine`. A few things will happen:
199
201
 
200
- - The Racine maintainers will be tagged to review your code. Feel free to tag any specific individuals who you think should take a look.
201
- - Racine's test suite will be ran on CI, and the status will be reported on the PR. You can run `yarn test` to run these tests locally. If there are any issues, they will need to be resolved before the PR can be merged.
202
+ - The Racine maintainers will be tagged to review your code. Feel free to tag any specific individuals who you think should take a look.
203
+ - Racine's test suite will be ran on CI, and the status will be reported on the PR. You can run `yarn test` to run these tests locally. If there are any issues, they will need to be resolved before the PR can be merged.
202
204
  - If you're a member of the Design Systems team: Netlify will create a preview deploy of Racine's Storybook so that you can see your changes and share them with others. Due to limited Netlify seats only a limited group of developers can generate builds.
203
205
 
204
- You may be asked to make changes to match Racine's contribution guidelines, so expect to keep attention on your PR for a little bit. Once your tests are passing and you have at least one approving Design Systems review, a member of the Design Systems team will merge your changes for inclusion in a future release of Racine!
206
+ You may be asked to make changes to match Racine's contribution guidelines, so expect to keep attention on your PR for a little bit. Once your tests are passing and you have at least one approving Design Systems review, a member of the Design Systems team will merge your changes for inclusion in a future release of Racine!
205
207
 
206
208
  ### **☁️ Step 5: Publish your changes to npm**
207
209
 
208
210
  As PRs get merged into Racine, changsets will keep a running PR open called `Version Packages`. This PR will detail all of the changes that have been made to the package since the last publish. **Anyone can release a new version of Racine by merging this PR.**
209
211
 
210
- When the PR is merged, [GitHub will kick off a publish of the new version](https://github.com/sproutsocial/racine/actions?query=workflow%3ARelease). There will be a notification in #eng-ui-systems in Slack when the new version is available.
212
+ When the PR is merged, [GitHub will kick off a publish of the new version](https://github.com/sproutsocial/racine/actions?query=workflow%3ARelease). There will be a notification in #eng-ui-systems in Slack when the new version is available.
211
213
 
212
214
  ### **✍ Step 6: Document your changes**
213
215
 
214
- Racine components are documented in [Seeds](https://sproutsocial.com/seeds/components), Sprout's design system. You can open a PR to the [Seeds repository](https://github.com/sproutsocial/seeds) to add or edit component documentation. Reach out to the Design Systems team for help getting started.
216
+ Racine components are documented in [Seeds](https://sproutsocial.com/seeds/components), Sprout's design system. You can open a PR to the [Seeds repository](https://github.com/sproutsocial/seeds) to add or edit component documentation. Reach out to the Design Systems team for help getting started.
@@ -1,59 +1,59 @@
1
1
  // @flow
2
- import * as React from "react";
3
- import { useState, useCallback, useMemo, memo } from "react";
4
- import styled, { css, type StyledComponent } from "styled-components";
5
- import classnames from "classnames";
2
+ import * as React from 'react';
3
+ import {useState, useCallback, useMemo, memo} from 'react';
4
+ import styled, {css, type StyledComponent} from 'styled-components';
5
+ import classnames from 'classnames';
6
6
 
7
- import type { TypeTheme } from "../types/theme.flow";
7
+ import type {TypeTheme} from '../types/theme.flow';
8
8
 
9
- import Box from "../Box";
10
- import Image from "../Image";
11
- import Text from "../Text";
9
+ import Box from '../Box';
10
+ import Image from '../Image';
11
+ import Text from '../Text';
12
12
 
13
13
  export type TypeProps = {
14
14
  /** Circles are used for social profile avatars, leaf is for internal Sprout user avatars */
15
- appearance?: "circle" | "leaf",
15
+ appearance?: 'circle' | 'leaf',
16
16
  /** The name of the user that the avatar represents */
17
17
  name: string,
18
18
  /** URL of the avatar image. If a URL is not provided, the component will fall back to showing the user's initials */
19
19
  src?: string,
20
- type?: "neutral" | "purple" | "green" | "blue" | "yellow" | "red" | "orange",
21
- variant?: "dark" | "light",
20
+ type?: 'neutral' | 'purple' | 'green' | 'blue' | 'yellow' | 'red' | 'orange',
21
+ variant?: 'dark' | 'light',
22
22
  bg?: string,
23
23
  color?: string,
24
24
  size?: string,
25
25
  };
26
26
 
27
- const AvatarText = styled(({ fontSize, ...rest }) => <Text {...rest} />)`
27
+ const AvatarText = styled(({fontSize, ...rest}) => <Text {...rest} />)`
28
28
  font-size: ${(props) => props.fontSize}px;
29
29
  color: ${(props) => props.color}px;
30
30
  `;
31
31
  const Container: StyledComponent<any, TypeTheme, *> = styled(Box)`
32
- ${({ theme, type, variant, bg }) => css`
33
- color: ${theme.colors[type][variant === "dark" ? "200" : "900"]};
32
+ ${({theme, type, variant, bg}) => css`
33
+ color: ${theme.colors[type][variant === 'dark' ? '200' : '900']};
34
34
  background: ${bg
35
35
  ? bg
36
- : theme.colors[type][variant === "dark" ? "900" : "200"]};
36
+ : theme.colors[type][variant === 'dark' ? '900' : '200']};
37
37
  `}
38
38
  `;
39
39
 
40
- const getInitials = (name: string, fallback: string = "?"): string => {
41
- if (!name || typeof name !== "string") return fallback;
40
+ const getInitials = (name: string, fallback: string = '?'): string => {
41
+ if (!name || typeof name !== 'string') return fallback;
42
42
  return name
43
- .replace(/\s+/, " ")
44
- .split(" ") // Repeated spaces results in empty strings
43
+ .replace(/\s+/, ' ')
44
+ .split(' ') // Repeated spaces results in empty strings
45
45
  .slice(0, 2)
46
46
  .map((v) => v && v[0].toUpperCase()) // Watch out for empty strings
47
- .join("");
47
+ .join('');
48
48
  };
49
49
 
50
50
  export const Avatar = ({
51
- appearance = "circle",
51
+ appearance = 'circle',
52
52
  name,
53
53
  src,
54
- variant = "light",
55
- type = "neutral",
56
- size = "40px",
54
+ variant = 'light',
55
+ type = 'neutral',
56
+ size = '40px',
57
57
  bg,
58
58
  color,
59
59
  ...rest
@@ -66,14 +66,14 @@ export const Avatar = ({
66
66
  }, [setImageFailedLoading]);
67
67
 
68
68
  // Font size for initials is half the size of the avatar, rounded down.
69
- const fontSize = Math.floor(Number(size.replace("px", "")) * 0.4);
69
+ const fontSize = Math.floor(Number(size.replace('px', '')) * 0.4);
70
70
 
71
71
  return (
72
72
  <Container
73
73
  className={classnames(variant)}
74
74
  size={size}
75
75
  overflow="hidden"
76
- borderRadius={appearance === "leaf" ? "40% 0 40% 0" : "50%"}
76
+ borderRadius={appearance === 'leaf' ? '40% 0 40% 0' : '50%'}
77
77
  position="relative"
78
78
  display="flex"
79
79
  flexShrink={0}
@@ -1,15 +1,15 @@
1
1
  // @flow
2
- import React from "react";
3
- import Avatar from "./index";
2
+ import React from 'react';
3
+ import Avatar from './index';
4
4
 
5
5
  export default {
6
- title: "Avatar",
6
+ title: 'Components/Avatar',
7
7
  };
8
8
 
9
9
  export const defaultStory = () => <Avatar name="Joe Smith" />;
10
10
 
11
11
  defaultStory.story = {
12
- name: "Default",
12
+ name: 'Default',
13
13
  };
14
14
 
15
15
  export const customColors = () => (
@@ -17,7 +17,7 @@ export const customColors = () => (
17
17
  );
18
18
 
19
19
  customColors.story = {
20
- name: "Override colors",
20
+ name: 'Override colors',
21
21
  };
22
22
 
23
23
  export const withVariants = () => (
@@ -38,7 +38,7 @@ export const withVariants = () => (
38
38
  );
39
39
 
40
40
  withVariants.story = {
41
- name: "With color types",
41
+ name: 'With color types',
42
42
  };
43
43
 
44
44
  export const withImage = () => (
@@ -46,7 +46,7 @@ export const withImage = () => (
46
46
  );
47
47
 
48
48
  withImage.story = {
49
- name: "With image",
49
+ name: 'With image',
50
50
  };
51
51
 
52
52
  export const Leaf = () => (
@@ -58,5 +58,5 @@ export const Leaf = () => (
58
58
  );
59
59
 
60
60
  Leaf.story = {
61
- name: "Leaf appearance",
61
+ name: 'Leaf appearance',
62
62
  };
@@ -1,23 +1,23 @@
1
1
  // @flow
2
- import React from "react";
3
- import { render } from "../utils/react-testing-library";
4
- import "jest-styled-components";
5
- import Avatar from "./";
2
+ import React from 'react';
3
+ import {render} from '../utils/react-testing-library';
4
+ import 'jest-styled-components';
5
+ import Avatar from './';
6
6
 
7
- describe("Avatar", () => {
8
- it("should render properly", async () => {
9
- const { container, runA11yCheck } = render(<Avatar />);
7
+ describe('Avatar', () => {
8
+ it('should render properly', async () => {
9
+ const {container, runA11yCheck} = render(<Avatar />);
10
10
  expect(container).toBeTruthy();
11
11
  await runA11yCheck();
12
12
  });
13
13
 
14
- it("should use the correct initials", () => {
15
- const { container } = render(<Avatar name="Test User" />);
16
- expect(container.textContent).toEqual("TU");
14
+ it('should use the correct initials', () => {
15
+ const {container} = render(<Avatar name="Test User" />);
16
+ expect(container.textContent).toEqual('TU');
17
17
  });
18
18
 
19
- it("should set the correct font size", () => {
20
- const { getByText } = render(<Avatar name="Test User" />);
21
- expect(getByText("TU")).toHaveStyleRule("font-size", "16px");
19
+ it('should set the correct font size', () => {
20
+ const {getByText} = render(<Avatar name="Test User" />);
21
+ expect(getByText('TU')).toHaveStyleRule('font-size', '16px');
22
22
  });
23
23
  });
@@ -1,38 +1,38 @@
1
1
  //@flow
2
2
 
3
3
  const defaultPurple = {
4
- color: "colors.text.body",
5
- background: "colors.container.background.decorative.purple",
4
+ color: 'colors.text.body',
5
+ background: 'colors.container.background.decorative.purple',
6
6
  };
7
7
 
8
8
  const suggestion = {
9
- color: "colors.text.body",
10
- background: "colors.container.background.decorative.blue",
9
+ color: 'colors.text.body',
10
+ background: 'colors.container.background.decorative.blue',
11
11
  };
12
12
 
13
13
  const passive = {
14
- color: "colors.text.body",
15
- background: "colors.container.background.decorative.neutral",
14
+ color: 'colors.text.body',
15
+ background: 'colors.container.background.decorative.neutral',
16
16
  };
17
17
 
18
18
  const primary = {
19
- color: "colors.text.body",
20
- background: "colors.container.background.decorative.blue",
19
+ color: 'colors.text.body',
20
+ background: 'colors.container.background.decorative.blue',
21
21
  };
22
22
 
23
23
  const secondary = {
24
- color: "colors.text.body",
25
- background: "colors.container.background.decorative.yellow",
24
+ color: 'colors.text.body',
25
+ background: 'colors.container.background.decorative.yellow',
26
26
  };
27
27
 
28
28
  const common = {
29
- color: "colors.text.inverse",
30
- background: "colors.aqua.600",
29
+ color: 'colors.text.inverse',
30
+ background: 'colors.aqua.600',
31
31
  };
32
32
 
33
33
  const approval = {
34
- color: "colors.text.body",
35
- background: "colors.container.background.decorative.orange",
34
+ color: 'colors.text.body',
35
+ background: 'colors.container.background.decorative.orange',
36
36
  };
37
37
 
38
38
  //Deprecated former "types"
@@ -1,23 +1,23 @@
1
1
  // @flow
2
- import * as React from "react";
3
- import Icon from "../Icon";
4
- import Container from "./styles";
5
- import Box from "../Box";
2
+ import * as React from 'react';
3
+ import Icon from '../Icon';
4
+ import Container from './styles';
5
+ import Box from '../Box';
6
6
 
7
7
  type TypeProps = {
8
8
  children?: React.Node,
9
9
  /** DEPRECATED: Use children instead of text */
10
10
  text?: React.Node,
11
11
  /** Size default is deprecated in favor of small and large */
12
- size?: "small" | "large" | "default",
12
+ size?: 'small' | 'large' | 'default',
13
13
  badgeColor?:
14
- | "green"
15
- | "blue"
16
- | "purple"
17
- | "yellow"
18
- | "orange"
19
- | "red"
20
- | "neutral",
14
+ | 'green'
15
+ | 'blue'
16
+ | 'purple'
17
+ | 'yellow'
18
+ | 'orange'
19
+ | 'red'
20
+ | 'neutral',
21
21
  iconName?: string,
22
22
  /** DEPRECATED: Possibly only used for testing. Refrain from using at all if possible. (optional) */
23
23
  tip?: React.Node,
@@ -31,8 +31,8 @@ const Badge = ({
31
31
  iconName,
32
32
  type,
33
33
  tip,
34
- size = "small",
35
- badgeColor = "blue",
34
+ size = 'small',
35
+ badgeColor = 'blue',
36
36
  ...rest
37
37
  }: TypeProps) => {
38
38
  if (children && text) {
@@ -45,12 +45,12 @@ const Badge = ({
45
45
  <Container
46
46
  {...rest}
47
47
  // size previously included default, which currently maps to small. Once consumers have updated this can be simplified.
48
- size={size === "default" ? "large" : size}
48
+ size={size === 'default' ? 'large' : size}
49
49
  badgeColor={badgeColor}
50
50
  data-tip={tip}
51
- data-qa-badge={text || ""}
51
+ data-qa-badge={text || ''}
52
52
  data-qa-badge-type={type}
53
- data-qa-badge-tip={tip || ""}
53
+ data-qa-badge-tip={tip || ''}
54
54
  type={type && type}
55
55
  >
56
56
  <Box display="flex" alignItems="center" JustifyContent="center">
@@ -58,7 +58,7 @@ const Badge = ({
58
58
  <Icon
59
59
  mr={200}
60
60
  name={iconName}
61
- size={size === "small" ? "mini" : "default"}
61
+ size={size === 'small' ? 'mini' : 'default'}
62
62
  />
63
63
  ) : null}
64
64
  {children || text}
@@ -1,13 +1,13 @@
1
1
  // @flow
2
- import React from "react";
3
- import Badge from "./index";
4
- import Box from "../Box";
5
- import Numeral from "../Numeral";
6
- import Text from "../Text";
7
- import Stack from "../Stack";
2
+ import React from 'react';
3
+ import Badge from './index';
4
+ import Box from '../Box';
5
+ import Numeral from '../Numeral';
6
+ import Text from '../Text';
7
+ import Stack from '../Stack';
8
8
 
9
9
  export default {
10
- title: "Badge",
10
+ title: 'Components/Badge',
11
11
  };
12
12
 
13
13
  export const permutations = () => (
@@ -45,5 +45,5 @@ export const permutations = () => (
45
45
  );
46
46
 
47
47
  permutations.story = {
48
- name: "Permutations",
48
+ name: 'Permutations',
49
49
  };