@sproutsocial/racine 14.1.1 → 14.3.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 (137) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/__flow__/EnumIconNames.flow.js +1 -1
  3. package/__flow__/Icon/Icon.flow.js +3 -1
  4. package/__flow__/IconViewBoxes.js +2 -0
  5. package/__flow__/PartnerLogo/PartnerLogo.flow.js +3 -3
  6. package/commonjs/Badge/Badge.js +2 -1
  7. package/commonjs/Banner/Banner.js +2 -1
  8. package/commonjs/Breadcrumb/Breadcrumb.js +2 -1
  9. package/commonjs/Checkbox/styles.js +7 -6
  10. package/commonjs/DatePicker/common.js +2 -1
  11. package/commonjs/Drawer/Drawer.js +9 -4
  12. package/commonjs/Icon/Icon.js +50 -10
  13. package/commonjs/IconViewBoxes.js +2 -0
  14. package/commonjs/IllustrationViewBoxes.d.js +5 -0
  15. package/commonjs/Indicator/Indicator.js +2 -1
  16. package/commonjs/Input/Input.js +2 -1
  17. package/commonjs/Input/styles.js +1 -1
  18. package/commonjs/Listbox/Listbox.js +2 -1
  19. package/commonjs/LogoViewBoxes.d.js +5 -0
  20. package/commonjs/PartnerLogo/PartnerLogo.js +14 -13
  21. package/commonjs/PartnerLogo/PartnerLogoTypes.js +12 -1
  22. package/commonjs/PartnerLogo/index.js +0 -12
  23. package/commonjs/PartnerLogo/styles.js +1 -1
  24. package/commonjs/Select/Select.js +2 -1
  25. package/commonjs/Switch/Switch.js +1 -0
  26. package/commonjs/TableHeaderCell/TableHeaderCell.js +2 -1
  27. package/commonjs/TableRowAccordion/TableRowAccordion.js +6 -2
  28. package/commonjs/Textarea/styles.js +1 -1
  29. package/commonjs/Toast/Toast.js +40 -34
  30. package/commonjs/ToggleHint/ToggleHint.js +4 -2
  31. package/commonjs/Token/Token.js +16 -2
  32. package/commonjs/Token/styles.js +1 -1
  33. package/commonjs/TokenInput/TokenInput.js +3 -1
  34. package/commonjs/TokenInput/styles.js +3 -3
  35. package/commonjs/themes/dark/theme.js +1 -1
  36. package/commonjs/themes/light/theme.js +3 -3
  37. package/commonjs/utils/index.js +12 -2
  38. package/dist/icon.svg +1 -1
  39. package/dist/iconList.js +1 -1
  40. package/dist/themes/dark/theme.scss +1 -1
  41. package/dist/themes/extendedThemes/sproutTheme/dark/theme.scss +1 -1
  42. package/dist/themes/extendedThemes/sproutTheme/light/theme.scss +3 -3
  43. package/dist/themes/light/theme.scss +3 -3
  44. package/dist/types/Badge/Badge.d.ts.map +1 -1
  45. package/dist/types/Banner/styles.d.ts +1 -1
  46. package/dist/types/Checkbox/styles.d.ts +4 -2
  47. package/dist/types/Checkbox/styles.d.ts.map +1 -1
  48. package/dist/types/Drawer/Drawer.d.ts +1 -1
  49. package/dist/types/Drawer/Drawer.d.ts.map +1 -1
  50. package/dist/types/EnumIconNames.d.ts +1 -1
  51. package/dist/types/EnumIconNames.d.ts.map +1 -1
  52. package/dist/types/Icon/Icon.d.ts +19 -1
  53. package/dist/types/Icon/Icon.d.ts.map +1 -1
  54. package/dist/types/Icon/IconTypes.d.ts +3 -2
  55. package/dist/types/Icon/IconTypes.d.ts.map +1 -1
  56. package/dist/types/Input/styles.d.ts.map +1 -1
  57. package/dist/types/PartnerLogo/PartnerLogo.d.ts +1 -1
  58. package/dist/types/PartnerLogo/PartnerLogo.d.ts.map +1 -1
  59. package/dist/types/PartnerLogo/PartnerLogoTypes.d.ts +12 -3
  60. package/dist/types/PartnerLogo/PartnerLogoTypes.d.ts.map +1 -1
  61. package/dist/types/PartnerLogo/index.d.ts +0 -1
  62. package/dist/types/PartnerLogo/index.d.ts.map +1 -1
  63. package/dist/types/Select/Select.d.ts.map +1 -1
  64. package/dist/types/TableRowAccordion/TableRowAccordion.d.ts.map +1 -1
  65. package/dist/types/Textarea/styles.d.ts.map +1 -1
  66. package/dist/types/Toast/Toast.d.ts.map +1 -1
  67. package/dist/types/Toast/styles.d.ts +1 -1
  68. package/dist/types/Token/Token.d.ts.map +1 -1
  69. package/dist/types/TokenInput/TokenInput.d.ts.map +1 -1
  70. package/dist/types/TokenInput/styles.d.ts.map +1 -1
  71. package/dist/types/utils/index.d.ts +5 -0
  72. package/dist/types/utils/index.d.ts.map +1 -1
  73. package/icons/advocacy-outline.svg +2 -2
  74. package/icons/comment-ai-outline.svg +2 -2
  75. package/icons/comment-ai.svg +1 -1
  76. package/icons/dropbox.svg +2 -2
  77. package/icons/facebook-groups.svg +2 -2
  78. package/icons/facebook.svg +2 -2
  79. package/icons/feedly.svg +2 -2
  80. package/icons/flat-negative-sentiment-outline.svg +1 -1
  81. package/icons/flat-neutral-sentiment-outline.svg +1 -1
  82. package/icons/flat-positive-sentiment-outline.svg +1 -1
  83. package/icons/glassdoor.svg +2 -2
  84. package/icons/instagram.svg +2 -2
  85. package/icons/linkedin.svg +2 -2
  86. package/icons/messenger.svg +2 -2
  87. package/icons/pinterest.svg +2 -2
  88. package/icons/reddit-alien.svg +2 -2
  89. package/icons/reddit.svg +2 -2
  90. package/icons/reels-outline.svg +1 -1
  91. package/icons/salesforce.svg +2 -2
  92. package/icons/send-again-outline.svg +1 -1
  93. package/icons/send-again.svg +1 -1
  94. package/icons/tasks-check.svg +1 -1
  95. package/icons/team-sprout-outline.svg +5 -0
  96. package/icons/team-sprout.svg +4 -0
  97. package/icons/tumblr.svg +2 -2
  98. package/icons/twitter.svg +2 -2
  99. package/icons/youtube.svg +2 -2
  100. package/icons/zendesk.svg +2 -2
  101. package/lib/Badge/Badge.js +2 -1
  102. package/lib/Banner/Banner.js +2 -1
  103. package/lib/Breadcrumb/Breadcrumb.js +2 -1
  104. package/lib/Checkbox/styles.js +7 -6
  105. package/lib/DatePicker/common.js +2 -1
  106. package/lib/Drawer/Drawer.js +9 -4
  107. package/lib/Icon/Icon.js +50 -10
  108. package/lib/IconViewBoxes.js +2 -0
  109. package/lib/IllustrationViewBoxes.d.js +1 -0
  110. package/lib/Indicator/Indicator.js +2 -1
  111. package/lib/Input/Input.js +2 -1
  112. package/lib/Input/styles.js +1 -1
  113. package/lib/Listbox/Listbox.js +2 -1
  114. package/lib/LogoViewBoxes.d.js +1 -0
  115. package/lib/PartnerLogo/PartnerLogo.js +14 -13
  116. package/lib/PartnerLogo/PartnerLogoTypes.js +8 -1
  117. package/lib/PartnerLogo/index.js +1 -2
  118. package/lib/PartnerLogo/styles.js +1 -1
  119. package/lib/Select/Select.js +2 -1
  120. package/lib/Switch/Switch.js +1 -0
  121. package/lib/TableHeaderCell/TableHeaderCell.js +2 -1
  122. package/lib/TableRowAccordion/TableRowAccordion.js +6 -2
  123. package/lib/Textarea/styles.js +1 -1
  124. package/lib/Toast/Toast.js +40 -34
  125. package/lib/ToggleHint/ToggleHint.js +4 -2
  126. package/lib/Token/Token.js +16 -2
  127. package/lib/Token/styles.js +1 -1
  128. package/lib/TokenInput/TokenInput.js +3 -1
  129. package/lib/TokenInput/styles.js +3 -3
  130. package/lib/themes/dark/theme.js +1 -1
  131. package/lib/themes/light/theme.js +3 -3
  132. package/lib/utils/index.js +9 -1
  133. package/package.json +3 -2
  134. package/dist/types/PartnerLogo/TypePartnerNames.d.ts +0 -2
  135. package/dist/types/PartnerLogo/TypePartnerNames.d.ts.map +0 -1
  136. /package/commonjs/{PartnerLogo/TypePartnerNames.js → IconViewBoxes.d.js} +0 -0
  137. /package/lib/{PartnerLogo/TypePartnerNames.js → IconViewBoxes.d.js} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,69 @@
1
1
  # Change Log
2
2
 
3
+ ## 14.3.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 3e367848: Token A11y fixes:
8
+ - Add `aria-label` and `aria-hidden` to `Icons` in stories
9
+ - Add a visual indicator for invalid tokens
10
+ - Adjust styling
11
+ - Fix bug with error text token in Racine theme
12
+ - 539fa582: Visual changes to bitly, canva, glassdoor, and whatsapp icons
13
+
14
+ - Now that the Icon component renders PartnerLogos, the old Icon version of any icon with a PartnerLogo equivalent is no longer available for use.
15
+ - In most cases, the icon and the partner logo with the same name looked almost identical.
16
+ - However, a few icons had a different design when rendered as an Icon.
17
+ - bitly
18
+ - glassdoor
19
+ - canva
20
+ - whatsapp
21
+ - There is no migration necessary, but please be aware that if you are currently using Icon to render an icon for any of these partners (e.g., `<Icon name="bitly" />`), the resulting icons will change visually.
22
+
23
+ Before and after image with the old Icon versions on the left and the new PartnerLogo versions on the right:
24
+
25
+ ![](https://user-images.githubusercontent.com/15218445/229627530-778f5604-c470-4176-9013-b3f5b4e236a1.png)
26
+
27
+ - 539fa582: Removes uncolored network icons with PartnerLogo equivalents
28
+ - Previously, the following icons had no pre-filled color when rendered using Icon.
29
+ - canva, dropbox, facebook, facebook-audience-network, facebook-groups, feedly, glassdoor, google-drive, instagram, linkedin, linkedin-audience-network, messenger, pinterest, reddit, salesforce, slack, tumblr, twitter, twitter-audience-network, youtube, and zendesk
30
+ - Now that Icon serves as a pass-through to PartnerLogo, dark mode-compatible network coloring is built into these icons.
31
+ - 539fa582: Allows rendering PartnerLogos using Icon
32
+ - The Icon component has been updated to render a PartnerLogo with `logoType` "symbol" when a valid `partnerName` is passed as the `name` prop to `Icon`.
33
+ - This behavior is provided as a developer utility only:
34
+ - Logos rendered this way should still follow the same semantic rules as any other PartnerLogo.
35
+ - PartnerLogo is still recommended for direct usage, and it is still the only way to render `wordmark` or `lockup` PartnerLogos.
36
+ - 539fa582: Adds "symbol" logoType to PartnerLogo
37
+ - The "symbol" `logoType` corresponds to the icon-like version of the specified partner's logo.
38
+ - This version of a logo was previously accessible only by omitting the `logoType` prop.
39
+ - "symbol" is now the explicit default value for PartnerLogo's `logoType` prop. It was already the implicit default, so there will not be any change in behavior for existing PartnerLogo components that do not specify a `logoType`.
40
+ - 539fa582: Add `svgProps` to `Icon` and `PartnerLogo` components to allow passing props to the `svg`, such as for accessbility.
41
+ - f2f060a4: To provide a better experiance for users using assitive technologies. `Drawer` components will now include `role="dialog"` and receive autofocus when opened. `Drawer.Header` components will now allow optional `id` prop to allow `Drawer` components to leverage `aria-labelledby` attribute. `Icon` components inside `Drawer.Header` will now include `aria-hidden="true"`
42
+
43
+ ### Patch Changes
44
+
45
+ - 539fa582: Removes nonfunctional PartnerLogo 'color' prop
46
+ - There were references to a `color` prop in the PartnerLogo component
47
+ - However, passing a `color` prop would not actually have any effect because PartnerLogo colors are locked per theme
48
+ - References to this prop have been removed
49
+ - 539fa582: Updates PartnerLogo width logic
50
+ - Applies a width property to the logo-svg itself only, not the containing element, to fix layout issues such as padding not being applied to PartnerLogos when using `display="flex"`.
51
+ - This may lead to small layout changes for existing PartnerLogos.
52
+ - 8814fba7: Sync icons from Figma
53
+ - 539fa582: `PartnerLogo` and `Icon` components will now include `role="img"` and an `aria-label` or `aria-hidden` should now be passed to make these accessible.
54
+ - 34f778af: fixes a bug that prevents fill colors from being removed from icons
55
+
56
+ ## 14.2.0
57
+
58
+ ### Minor Changes
59
+
60
+ - 16a0ef29: - Add team sprout icon variations
61
+
62
+ ### Patch Changes
63
+
64
+ - 1c647238: Change `form.border.base` theme color to `neutral.600` to provide a color contrast ratio of 3:1 on all form elements
65
+ - 8a0d5ba6: Update usage examples across the design system to remove placeholder text by default. Additionally, improve the color contrast of placeholder text and differentiate it from text values with italics.
66
+
3
67
  ## 14.1.1
4
68
 
5
69
  ### Patch Changes
@@ -1,2 +1,2 @@
1
1
  // @flow
2
- export type EnumIconNames = "active-listener" | "add-item" | "add-keyword" | "add-team-member" | "add-variable" | "address-card-outline" | "address-card-solid" | "adobe-experience-manager" | "ads" | "advocacy-outline" | "advocacy" | "android" | "apple" | "approval-indicator-outline" | "approval-indicator" | "archive" | "arrow-down-line" | "arrow-down" | "arrow-left-line" | "arrow-left" | "arrow-right-line" | "arrow-right" | "arrow-up-line" | "arrow-up" | "arrows" | "asset-library-outline" | "asset-library" | "assign" | "atom" | "audio" | "back-to-top" | "bambu-icon-outline" | "bambu-icon" | "barcode" | "basketball" | "bell-outline" | "bigcommerce" | "bitly" | "bold" | "book" | "bookmark" | "bot" | "browser" | "business" | "calendar-outline" | "calendar" | "camera-outline" | "camera-story" | "camera" | "campaign" | "canva" | "carousel" | "cart-plus-outline" | "cart-plus" | "check" | "chevron-down-filled" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up-down-filled" | "chevron-up-filled" | "chevron-up" | "circle-check-outline" | "circle-check" | "circle" | "circle+" | "circles" | "circlex" | "click-to-view" | "clicks" | "clipboard-outline" | "clipboard" | "clock" | "closed-captioning" | "cloud" | "code" | "columns" | "comment-ai-outline" | "comment-ai" | "comment-alt-outline" | "comment-alt" | "comment-lines-alt-outline" | "comment" | "compact-density" | "compact-indicator" | "comparison" | "competitor" | "compose" | "content-suggestions" | "credit-card" | "crop" | "crown" | "dashboard" | "deconstructed-negative-sentiment" | "deconstructed-neutral-sentiment" | "deconstructed-positive-sentiment" | "discovery" | "dislike-outline" | "dislike" | "dm-link-outline" | "dm-link" | "dotdotdot" | "download" | "drafts-outline" | "drafts" | "dropbox" | "duplicate-outline" | "duplicate" | "emoji-outline" | "emoji" | "empty-image" | "engagement-per-post" | "engagements" | "error" | "exchange-alt" | "expanded-indicator" | "export" | "extended-circles" | "external-link-alt" | "external-link" | "extreme-negative-sentiment" | "eye-outline" | "eye-slash-outline" | "eye-slash" | "eye" | "facebook-audience-network" | "facebook-branded-content-outline" | "facebook-branded-content" | "facebook-groups" | "facebook" | "fb-reactions-angry" | "fb-reactions-haha" | "fb-reactions-like" | "fb-reactions-love" | "fb-reactions-sad" | "fb-reactions-wow" | "feedly" | "feeds" | "female" | "file-chart-line" | "file-edit" | "file-times-solid" | "filter" | "flag-outline" | "flag" | "flat-negative-sentiment-outline" | "flat-negative-sentiment" | "flat-neutral-sentiment-outline" | "flat-neutral-sentiment" | "flat-positive-sentiment-outline" | "flat-positive-sentiment" | "folder-open" | "folder" | "follow-outline" | "follow" | "follower-increase" | "following" | "font" | "full-access" | "gear" | "gears" | "github" | "glassdoor" | "glasses" | "globe" | "google-analytics-color" | "google-business-messages" | "google-drive" | "google-my-business" | "grip" | "h1" | "h2" | "h3" | "h4" | "hamburger" | "hashtag" | "headset" | "heart-outline" | "heart" | "heartbeat" | "help-alt" | "help" | "hiking" | "history" | "home" | "hourglass" | "hubspot" | "image-caption" | "image" | "images" | "impressions-per-post" | "impressions" | "inactive-listener" | "inbox-action" | "inbox-views" | "inbox" | "indicator" | "industry" | "info" | "instagram" | "internal-activity-outline" | "internal-activity" | "italic" | "key" | "keyboard" | "laptop-phone" | "large-density" | "lift" | "like-outline" | "like" | "link" | "linkedin-audience-network" | "linkedin" | "list-ol" | "listening" | "lists" | "location-outline" | "location" | "lock" | "magic-wand" | "male" | "marketo" | "mention" | "message-preview-outline" | "message-preview" | "message" | "messages-outline" | "messages" | "messenger" | "metric-table" | "microsoft-dynamics" | "minus" | "mobile" | "monitor" | "moon" | "negative-sentiment" | "neutral-positive-sentiment" | "neutral-sentiment" | "new-trend" | "newspaper" | "no-access" | "notepad" | "notifications-publishing-outline" | "notifications-publishing" | "notifications" | "offline" | "online" | "paid-promotion-outline" | "paid-promotion" | "paid" | "paint" | "palette" | "paperclip" | "pause" | "pencil-outline" | "pencil" | "person" | "phone" | "pinterest-boards-outline" | "pinterest-boards" | "pinterest" | "play-circle" | "play" | "plug" | "plus" | "positive-sentiment" | "power-up-outline" | "power-up" | "profile-connect" | "profile-disconnect" | "publishing-outline" | "publishing" | "puzzle-piece" | "qr-code" | "queue" | "recommendation" | "reddit-alien" | "reddit" | "reels-outline" | "reels" | "referrals" | "refresh" | "rejected" | "reply-outline" | "reply" | "reporting-period" | "reporting" | "reports-home" | "reports" | "retweet" | "route" | "rss" | "sales" | "salesforce-cloud" | "salesforce" | "save-assets" | "saved-messages" | "saved-reply-outline" | "saved-reply" | "search" | "send-again-outline" | "send-again" | "sent-message-outline" | "sent-message" | "share" | "shopify" | "shopping-bag-outline" | "shopping-bag" | "show-navigation" | "slack" | "small-density" | "smiley" | "some-access" | "sparkles" | "spike-alert" | "star-half-alt-solid" | "star-of-life" | "star-outline" | "star" | "sticky-note-outline" | "sticky-note" | "stories" | "story" | "suggestions" | "sun" | "tag-outline" | "tag" | "targeting-outline" | "targeting" | "tasks-check" | "tasks-outline" | "tasks" | "team-conversation-outline" | "team-conversation" | "team" | "text-asset" | "text" | "tiktok" | "times" | "tools" | "trash-can-outline" | "trash-can" | "trend-down" | "trend-neutral" | "trend-up" | "trends" | "triangle-black" | "triangle" | "tripadvisor-circle-outline" | "tripadvisor-circle" | "tripadvisor" | "trophy-outline" | "tumblr" | "twitter-audience-network" | "twitter" | "underline" | "unfollow-outline" | "unfollow" | "unlink" | "unlock" | "upload" | "user-circle" | "users" | "verified" | "video-camera-story" | "video-camera" | "vip" | "weight" | "whatsapp" | "window-maximize" | "window-minimize" | "window-regular" | "window-restore" | "woocommerce" | "x" | "yelp-full-star" | "yelp-half-star" | "yelp" | "youtube" | "zendesk";
2
+ export type EnumIconNames = "active-listener" | "add-item" | "add-keyword" | "add-team-member" | "add-variable" | "address-card-outline" | "address-card-solid" | "adobe-experience-manager" | "ads" | "advocacy-outline" | "advocacy" | "android" | "apple" | "approval-indicator-outline" | "approval-indicator" | "archive" | "arrow-down-line" | "arrow-down" | "arrow-left-line" | "arrow-left" | "arrow-right-line" | "arrow-right" | "arrow-up-line" | "arrow-up" | "arrows" | "asset-library-outline" | "asset-library" | "assign" | "atom" | "audio" | "back-to-top" | "bambu-icon-outline" | "bambu-icon" | "barcode" | "basketball" | "bell-outline" | "bigcommerce" | "bitly" | "bold" | "book" | "bookmark" | "bot" | "browser" | "business" | "calendar-outline" | "calendar" | "camera-outline" | "camera-story" | "camera" | "campaign" | "canva" | "carousel" | "cart-plus-outline" | "cart-plus" | "check" | "chevron-down-filled" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up-down-filled" | "chevron-up-filled" | "chevron-up" | "circle-check-outline" | "circle-check" | "circle" | "circle+" | "circles" | "circlex" | "click-to-view" | "clicks" | "clipboard-outline" | "clipboard" | "clock" | "closed-captioning" | "cloud" | "code" | "columns" | "comment-ai-outline" | "comment-ai" | "comment-alt-outline" | "comment-alt" | "comment-lines-alt-outline" | "comment" | "compact-density" | "compact-indicator" | "comparison" | "competitor" | "compose" | "content-suggestions" | "credit-card" | "crop" | "crown" | "dashboard" | "deconstructed-negative-sentiment" | "deconstructed-neutral-sentiment" | "deconstructed-positive-sentiment" | "discovery" | "dislike-outline" | "dislike" | "dm-link-outline" | "dm-link" | "dotdotdot" | "download" | "drafts-outline" | "drafts" | "dropbox" | "duplicate-outline" | "duplicate" | "emoji-outline" | "emoji" | "empty-image" | "engagement-per-post" | "engagements" | "error" | "exchange-alt" | "expanded-indicator" | "export" | "extended-circles" | "external-link-alt" | "external-link" | "extreme-negative-sentiment" | "eye-outline" | "eye-slash-outline" | "eye-slash" | "eye" | "facebook-audience-network" | "facebook-branded-content-outline" | "facebook-branded-content" | "facebook-groups" | "facebook" | "fb-reactions-angry" | "fb-reactions-haha" | "fb-reactions-like" | "fb-reactions-love" | "fb-reactions-sad" | "fb-reactions-wow" | "feedly" | "feeds" | "female" | "file-chart-line" | "file-edit" | "file-times-solid" | "filter" | "flag-outline" | "flag" | "flat-negative-sentiment-outline" | "flat-negative-sentiment" | "flat-neutral-sentiment-outline" | "flat-neutral-sentiment" | "flat-positive-sentiment-outline" | "flat-positive-sentiment" | "folder-open" | "folder" | "follow-outline" | "follow" | "follower-increase" | "following" | "font" | "full-access" | "gear" | "gears" | "github" | "glassdoor" | "glasses" | "globe" | "google-analytics-color" | "google-business-messages" | "google-drive" | "google-my-business" | "grip" | "h1" | "h2" | "h3" | "h4" | "hamburger" | "hashtag" | "headset" | "heart-outline" | "heart" | "heartbeat" | "help-alt" | "help" | "hiking" | "history" | "home" | "hourglass" | "hubspot" | "image-caption" | "image" | "images" | "impressions-per-post" | "impressions" | "inactive-listener" | "inbox-action" | "inbox-views" | "inbox" | "indicator" | "industry" | "info" | "instagram" | "internal-activity-outline" | "internal-activity" | "italic" | "key" | "keyboard" | "laptop-phone" | "large-density" | "lift" | "like-outline" | "like" | "link" | "linkedin-audience-network" | "linkedin" | "list-ol" | "listening" | "lists" | "location-outline" | "location" | "lock" | "magic-wand" | "male" | "marketo" | "mention" | "message-preview-outline" | "message-preview" | "message" | "messages-outline" | "messages" | "messenger" | "metric-table" | "microsoft-dynamics" | "minus" | "mobile" | "monitor" | "moon" | "negative-sentiment" | "neutral-positive-sentiment" | "neutral-sentiment" | "new-trend" | "newspaper" | "no-access" | "notepad" | "notifications-publishing-outline" | "notifications-publishing" | "notifications" | "offline" | "online" | "paid-promotion-outline" | "paid-promotion" | "paid" | "paint" | "palette" | "paperclip" | "pause" | "pencil-outline" | "pencil" | "person" | "phone" | "pinterest-boards-outline" | "pinterest-boards" | "pinterest" | "play-circle" | "play" | "plug" | "plus" | "positive-sentiment" | "power-up-outline" | "power-up" | "profile-connect" | "profile-disconnect" | "publishing-outline" | "publishing" | "puzzle-piece" | "qr-code" | "queue" | "recommendation" | "reddit-alien" | "reddit" | "reels-outline" | "reels" | "referrals" | "refresh" | "rejected" | "reply-outline" | "reply" | "reporting-period" | "reporting" | "reports-home" | "reports" | "retweet" | "route" | "rss" | "sales" | "salesforce-cloud" | "salesforce" | "save-assets" | "saved-messages" | "saved-reply-outline" | "saved-reply" | "search" | "send-again-outline" | "send-again" | "sent-message-outline" | "sent-message" | "share" | "shopify" | "shopping-bag-outline" | "shopping-bag" | "show-navigation" | "slack" | "small-density" | "smiley" | "some-access" | "sparkles" | "spike-alert" | "star-half-alt-solid" | "star-of-life" | "star-outline" | "star" | "sticky-note-outline" | "sticky-note" | "stories" | "story" | "suggestions" | "sun" | "tag-outline" | "tag" | "targeting-outline" | "targeting" | "tasks-check" | "tasks-outline" | "tasks" | "team-conversation-outline" | "team-conversation" | "team-sprout-outline" | "team-sprout" | "team" | "text-asset" | "text" | "tiktok" | "times" | "tools" | "trash-can-outline" | "trash-can" | "trend-down" | "trend-neutral" | "trend-up" | "trends" | "triangle-black" | "triangle" | "tripadvisor-circle-outline" | "tripadvisor-circle" | "tripadvisor" | "trophy-outline" | "tumblr" | "twitter-audience-network" | "twitter" | "underline" | "unfollow-outline" | "unfollow" | "unlink" | "unlock" | "upload" | "user-circle" | "users" | "verified" | "video-camera-story" | "video-camera" | "vip" | "weight" | "whatsapp" | "window-maximize" | "window-minimize" | "window-regular" | "window-restore" | "woocommerce" | "x" | "yelp-full-star" | "yelp-half-star" | "yelp" | "youtube" | "zendesk";
@@ -5,6 +5,7 @@ import type { EnumIconNames } from "../EnumIconNames.flow";
5
5
  import type { TypeWithDisplayName } from "../types/shared.flow";
6
6
  import type { TypeTheme } from "../types/theme.flow";
7
7
  import deprecatedIcons from "./deprecatedIcons.flow";
8
+ import type { TypePartnerNames } from "../PartnerLogo/TypePartnerNames.flow";
8
9
  export type TypeIconSize = 'mini' // 12x12
9
10
  // TODO: deprecate default in favor of small in future release
10
11
  | 'default' // 16x16
@@ -13,7 +14,7 @@ export type TypeIconSize = 'mini' // 12x12
13
14
  | 'large' // 32x32
14
15
  | 'jumbo'; // 64x64
15
16
 
16
- export type TypeIconName = EnumIconNames | $Keys<typeof deprecatedIcons>;
17
+ export type TypeIconName = EnumIconNames | $Keys<typeof deprecatedIcons> | TypePartnerNames;
17
18
  export type TypeIconProps = {
18
19
  /** Name of the icon in the svg sprite */
19
20
  name: TypeIconName,
@@ -22,6 +23,7 @@ export type TypeIconProps = {
22
23
  fixedWidth?: boolean,
23
24
  /** Label used to describe the icon if not used with an accompanying visual label */
24
25
  ariaLabel?: string,
26
+ svgProps?: {...},
25
27
  ...
26
28
  };
27
29
  export type TypeToggleProps = {
@@ -333,6 +333,8 @@ module.exports = {
333
333
  "tasks": "0 0 12 16",
334
334
  "team-conversation-outline": "0 0 16 18",
335
335
  "team-conversation": "0 0 16 18",
336
+ "team-sprout-outline": "0 0 18 18",
337
+ "team-sprout": "0 0 18 18",
336
338
  "team": "0 0 18 16",
337
339
  "text-asset": "0 0 16 16",
338
340
  "text": "0 0 8 16",
@@ -6,7 +6,7 @@ export type TypePartnerLogoProps = {
6
6
  partnerName: TypePartnerNames,
7
7
  /** Manually override the default mode behavior by rendering a logo based on the background it's displayed on. */
8
8
  backgroundType?: 'dark' | 'light',
9
- logoType?: 'wordmark' | 'lockup',
9
+ logoType?: 'symbol' | 'wordmark' | 'lockup',
10
10
  height?: string,
11
11
  width?: string,
12
12
  size?: 'mini' // 12x12
@@ -14,8 +14,8 @@ export type TypePartnerLogoProps = {
14
14
  | 'medium' // 24x24
15
15
  | 'large' // 32x32
16
16
  | 'jumbo',
17
-
18
- // 64x64
17
+ // 64x64
18
+ svgProps?: {...},
19
19
  ...
20
20
  };
21
21
  declare var PartnerLogo: React.StatelessFunctionalComponent<TypePartnerLogoProps>;
@@ -52,7 +52,8 @@ var Badge = function Badge(_ref) {
52
52
  }, iconName ? /*#__PURE__*/React.createElement(_Icon.default, {
53
53
  mr: 200,
54
54
  name: iconName,
55
- size: size === 'small' ? 'mini' : 'default'
55
+ size: size === 'small' ? 'mini' : 'default',
56
+ "aria-hidden": true
56
57
  }) : null, children || text));
57
58
  };
58
59
  var _default = Badge;
@@ -82,7 +82,8 @@ var Banner = function Banner(_ref) {
82
82
  onClick: onClose,
83
83
  ariaLabel: closeButtonLabel
84
84
  }, /*#__PURE__*/React.createElement(_Icon.default, {
85
- name: "x"
85
+ name: "x",
86
+ "aria-hidden": true
86
87
  })))));
87
88
  };
88
89
  var _default = Banner;
@@ -49,7 +49,8 @@ var Breadcrumb = function Breadcrumb(_ref2) {
49
49
  px: 200,
50
50
  py: 0
51
51
  }, /*#__PURE__*/React.createElement(_Icon.default, {
52
- name: "dotdotdot"
52
+ name: "dotdotdot",
53
+ "aria-hidden": true
53
54
  }))), listItems.map(function (item, i) {
54
55
  // @ts-notes - item is a childNode which can be a string or number but `cloneElement` requires props
55
56
  var itemElem = _typeof(item) === 'object' && 'props' in item ? item : /*#__PURE__*/React.createElement("span", null, "item");
@@ -59,13 +59,14 @@ var CheckboxBox = _styledComponents.default.div.withConfig({
59
59
  });
60
60
  exports.CheckboxBox = CheckboxBox;
61
61
  CheckboxBox.displayName = 'CheckboxBox';
62
- var CheckIcon = (0, _styledComponents.default)(_Icon.default).withConfig({
62
+ var CheckIcon = (0, _styledComponents.default)(_Icon.default).attrs({
63
+ 'aria-hidden': true
64
+ }).withConfig({
63
65
  displayName: "styles__CheckIcon",
64
66
  componentId: "sc-1hcgibh-3"
65
- })(["position:absolute;display:inline-flex;align-items:center;justify-content:center;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;pointer-events:none;transition:all ", " ", ";&,& .Icon-svg{width:10px;height:10px;line-height:10px;}"], function (props) {
66
- return props.theme.duration.fast;
67
- }, function (props) {
68
- return props.theme.easing.ease_inout;
67
+ })(["position:absolute;display:inline-flex;align-items:center;justify-content:center;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;pointer-events:none;transition:all ", ";&,& .Icon-svg{width:10px;height:10px;line-height:10px;}"], function (_ref) {
68
+ var theme = _ref.theme;
69
+ return "".concat(theme.duration.fast, " ").concat(theme.easing.ease_inout);
69
70
  });
70
71
  exports.CheckIcon = CheckIcon;
71
72
  CheckIcon.displayName = 'CheckIcon';
@@ -133,7 +134,7 @@ var CheckboxContainer = _styledComponents.default.span.withConfig({
133
134
  displayName: "styles__CheckboxContainer",
134
135
  componentId: "sc-1hcgibh-6"
135
136
  })(function (props) {
136
- return (0, _styledComponents.css)(["display:inline-flex;align-items:center;box-sizing:border-box;position:relative;transition:all ", " ", ";@supports (-webkit-appearance:none){&:before{content:url('data:image/svg+xml;utf8,", "');opacity:", ";position:absolute;width:", ";height:", ";text-align:center;transform:translateY(1px);line-height:1;margin:auto;pointer-events:none;transition:", " ", ";}&:hover:before{opacity:", ";}", " input[type='checkbox']{box-sizing:border-box;appearance:none;margin:0;padding:0;width:", ";height:", ";border:1px solid ", ";border-radius:4px;background-color:", ";transition:all ", " ", ";cursor:", ";flex-shrink:0;&:not(:checked){", "}&:checked{border-color:", ";background-color:", ";}", " &:focus{", "}}}", ""], props.theme.duration.fast, props.theme.easing.ease_in, (0, _server.renderToStaticMarkup)(getIcon(props.indeterminate ? 'indeterminate' : 'check', props.checked ? props.theme.colors.form.background.base : props.theme.colors.form.border.base)), props.checked ? 1 : 0, props.theme.space[400], props.theme.space[400], props.theme.duration.fast, props.theme.easing.ease_inout, props.disabled && !props.checked ? 0 : 1, props.disabled && (0, _styledComponents.css)(["opacity:0.4;"]), props.theme.space[400], props.theme.space[400], props.theme.colors.form.border.base, props.theme.colors.form.background.base, props.theme.duration.fast, props.theme.easing.ease_in, props.disabled ? 'not-allowed' : 'pointer', !props.indeterminate && (0, _styledComponents.css)(["border-color:", " !important;background-color:", ";"], props.theme.colors.neutral[300], props.theme.colors.form.background.base), props.theme.colors.form.border.selected, props.theme.colors.form.background.selected, props.indeterminate && props.checked && (0, _styledComponents.css)(["border-color:", " !important;background-color:", " !important;"], props.theme.colors.form.border.selected, props.theme.colors.form.background.selected), _mixins.focusRing, _systemProps.COMMON);
137
+ return (0, _styledComponents.css)(["display:inline-flex;align-items:center;box-sizing:border-box;position:relative;transition:all ", " ", ";@supports (-webkit-appearance:none){&:before{content:url('data:image/svg+xml;utf8,", "');opacity:", ";position:absolute;width:", ";height:", ";text-align:center;transform:translateY(1px);line-height:1;margin:auto;pointer-events:none;transition:", " ", ";}&:hover:before{opacity:", ";}", " input[type='checkbox']{box-sizing:border-box;appearance:none;margin:0;padding:0;width:", ";height:", ";border:1px solid ", ";border-radius:4px;background-color:", ";transition:all ", " ", ";cursor:", ";flex-shrink:0;&:not(:checked){", "}&:checked{border-color:", ";background-color:", ";}", " &:focus{", "}}}", ""], props.theme.duration.fast, props.theme.easing.ease_in, (0, _server.renderToStaticMarkup)(getIcon(props.indeterminate ? 'indeterminate' : 'check', props.checked ? props.theme.colors.form.background.base : props.theme.colors.form.border.base)), props.checked ? 1 : 0, props.theme.space[400], props.theme.space[400], props.theme.duration.fast, props.theme.easing.ease_inout, props.disabled && !props.checked ? 0 : 1, props.disabled && (0, _styledComponents.css)(["opacity:0.4;"]), props.theme.space[400], props.theme.space[400], props.theme.colors.form.border.base, props.theme.colors.form.background.base, props.theme.duration.fast, props.theme.easing.ease_in, props.disabled ? 'not-allowed' : 'pointer', !props.indeterminate && (0, _styledComponents.css)(["border-color:", " !important;background-color:", ";"], props.theme.colors.form.border.base, props.theme.colors.form.background.base), props.theme.colors.form.border.selected, props.theme.colors.form.background.selected, props.indeterminate && props.checked && (0, _styledComponents.css)(["border-color:", " !important;background-color:", " !important;"], props.theme.colors.form.border.selected, props.theme.colors.form.background.selected), _mixins.focusRing, _systemProps.COMMON);
137
138
  });
138
139
  exports.CheckboxContainer = CheckboxContainer;
139
140
  var _default = Container;
@@ -18,7 +18,8 @@ var CalendarNavButton = function CalendarNavButton(_ref) {
18
18
  var type = _ref.type;
19
19
  return /*#__PURE__*/_react.default.createElement(_Icon.default, {
20
20
  size: "mini",
21
- name: iconNames[type]
21
+ name: iconNames[type],
22
+ "aria-hidden": true
22
23
  });
23
24
  };
24
25
  exports.CalendarNavButton = CalendarNavButton;
@@ -15,7 +15,7 @@ var _Text = _interopRequireDefault(require("../Text"));
15
15
  var _Portal = _interopRequireDefault(require("../Portal"));
16
16
  var _SlideTransition = require("./SlideTransition");
17
17
  var _styles = _interopRequireWildcard(require("./styles"));
18
- var _excluded = ["title", "children", "render"],
18
+ var _excluded = ["title", "id", "children", "render"],
19
19
  _excluded2 = ["children"],
20
20
  _excluded3 = ["id", "style", "offset", "direction", "children", "disableCloseOnClickOutside", "onClose", "zIndex", "closeTargets"],
21
21
  _excluded4 = ["children", "closeButtonLabel", "direction", "disableCloseOnClickOutside", "id", "isOpen", "offset", "onClose", "zIndex", "closeTargets"];
@@ -53,12 +53,15 @@ var DrawerCloseButton = function DrawerCloseButton(props) {
53
53
  "aria-label": closeButtonLabel,
54
54
  onClick: onClose
55
55
  }, props), props.children || /*#__PURE__*/React.createElement(_Icon.default, {
56
+ "aria-hidden": true,
56
57
  name: "x"
57
58
  }));
58
59
  };
59
60
  var DrawerHeader = function DrawerHeader(_ref) {
60
61
  var _ref$title = _ref.title,
61
62
  title = _ref$title === void 0 ? '' : _ref$title,
63
+ _ref$id = _ref.id,
64
+ id = _ref$id === void 0 ? undefined : _ref$id,
62
65
  children = _ref.children,
63
66
  render = _ref.render,
64
67
  rest = _objectWithoutProperties(_ref, _excluded);
@@ -77,7 +80,8 @@ var DrawerHeader = function DrawerHeader(_ref) {
77
80
  as: "h2",
78
81
  fontSize: 400,
79
82
  fontWeight: "semibold",
80
- color: "text.headline"
83
+ color: "text.headline",
84
+ id: id
81
85
  }, title), /*#__PURE__*/React.createElement(DrawerCloseButton, null)));
82
86
  };
83
87
  var DrawerContent = function DrawerContent(_ref2) {
@@ -136,7 +140,7 @@ var Drawer = function Drawer(_ref3) {
136
140
  }, [onClose, disableCloseOnClickOutside, closeTargets]);
137
141
  return /*#__PURE__*/React.createElement(_reactFocusLock.default, {
138
142
  key: id,
139
- autoFocus: false,
143
+ autoFocus: true,
140
144
  returnFocus: true
141
145
  }, /*#__PURE__*/React.createElement(AnimatedDrawer, _extends({
142
146
  ref: drawerRef,
@@ -144,7 +148,8 @@ var Drawer = function Drawer(_ref3) {
144
148
  width: DRAWER_WIDTH,
145
149
  offset: offset,
146
150
  direction: direction,
147
- "data-qa-drawer": id
151
+ "data-qa-drawer": id,
152
+ role: "dialog"
148
153
  }, rest), children));
149
154
  };
150
155
  var DrawerContainer = function DrawerContainer(_ref4) {
@@ -7,11 +7,13 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = void 0;
8
8
  var React = _interopRequireWildcard(require("react"));
9
9
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
10
+ var _IconViewBoxes = _interopRequireDefault(require("../IconViewBoxes"));
10
11
  var _Box = _interopRequireDefault(require("../Box"));
11
- var iconViewBoxes = _interopRequireWildcard(require("../IconViewBoxes"));
12
- var _styles = _interopRequireDefault(require("./styles"));
12
+ var _PartnerLogo = _interopRequireWildcard(require("../PartnerLogo"));
13
+ var _utils = require("../utils");
13
14
  var _deprecatedIcons = _interopRequireDefault(require("./deprecatedIcons"));
14
- var _excluded = ["name", "size", "fixedWidth", "ariaLabel"],
15
+ var _styles = _interopRequireDefault(require("./styles"));
16
+ var _excluded = ["name", "size", "fixedWidth", "ariaLabel", "color", "svgProps"],
15
17
  _excluded2 = ["activeName", "inactiveName", "isActive", "size", "fixedWidth", "ariaLabel"];
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
19
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -26,20 +28,40 @@ var Icon = function Icon(_ref) {
26
28
  _ref$fixedWidth = _ref.fixedWidth,
27
29
  fixedWidth = _ref$fixedWidth === void 0 ? false : _ref$fixedWidth,
28
30
  ariaLabel = _ref.ariaLabel,
31
+ color = _ref.color,
32
+ svgProps = _ref.svgProps,
29
33
  rest = _objectWithoutProperties(_ref, _excluded);
34
+ if ((0, _utils.includes)(_PartnerLogo.PartnerNames, name)) {
35
+ // Icon's "default" size is equivalent to PartnerLogo's "small" size
36
+ var logoSize = size === 'default' ? 'small' : size;
37
+ var logoProps = {
38
+ partnerName: name,
39
+ size: logoSize,
40
+ logoType: 'symbol',
41
+ svgProps: svgProps
42
+ };
43
+ return /*#__PURE__*/React.createElement(_PartnerLogo.default
44
+ // ariaLabel needs to be overridable by aria-label prop in ...rest
45
+ , _extends({
46
+ "aria-label": ariaLabel
47
+ }, rest, logoProps));
48
+ }
30
49
  var iconName = _deprecatedIcons.default[name] || name;
31
- var iconViewBox = iconViewBoxes[iconName];
50
+ var iconViewBox = _IconViewBoxes.default[iconName];
32
51
  return /*#__PURE__*/React.createElement(_styles.default, _extends({
33
52
  iconSize: size,
34
53
  fixedWidth: !!fixedWidth,
35
54
  key: name,
55
+ role: "img",
36
56
  "aria-label": ariaLabel,
37
- "data-qa-icon": name
38
- }, rest), /*#__PURE__*/React.createElement("svg", {
57
+ "data-qa-icon": name,
58
+ color: color
59
+ }, rest), /*#__PURE__*/React.createElement("svg", _extends({
39
60
  className: "Icon-svg",
40
61
  viewBox: iconViewBox,
41
- focusable: false
42
- }, /*#__PURE__*/React.createElement("use", {
62
+ focusable: false,
63
+ "data-qa-icon-svg": "".concat(name, "-svg")
64
+ }, svgProps), /*#__PURE__*/React.createElement("use", {
43
65
  xmlnsXlink: "http://www.w3.org/1999/xlink",
44
66
  xlinkHref: "#ssiconsvg-".concat(iconName)
45
67
  })));
@@ -73,18 +95,36 @@ var IconToggle = function IconToggle(_ref2) {
73
95
  name: activeName,
74
96
  size: size,
75
97
  fixedWidth: fixedWidth,
76
- ariaLabel: ariaLabel,
98
+ "aria-label": ariaLabel,
77
99
  "aria-hidden": !isActive
78
100
  }), /*#__PURE__*/React.createElement(ToggleableIcon, {
79
101
  active: !isActive,
80
102
  name: inactiveName,
81
103
  size: size,
82
104
  fixedWidth: fixedWidth,
83
- ariaLabel: ariaLabel,
105
+ "aria-label": ariaLabel,
84
106
  "aria-hidden": isActive
85
107
  }));
86
108
  };
87
109
  IconToggle.displayName = 'Icon.Toggle';
110
+ /**
111
+ * **Accessibility note:** It is best practice to wrap `<Icon.Toggle />` in a button. The button must include `aria-label` and `aria-pressed` in order for a screen reader to properly communicate the icon's state. See example below.
112
+ *
113
+ * @example
114
+ * const [toggleState, setToggleState] = useState(false);
115
+ * <Button // Wrap Icon.Toggle with Button
116
+ * appearance='pill'
117
+ * aria-label='like' // required for accessibility
118
+ * aria-pressed={toggleState} // required for accessibility
119
+ * onClick={() => setToggleState(!toggleState)}
120
+ * >
121
+ * <Icon.Toggle
122
+ * activeName="like"
123
+ * inactiveName="like-outline"
124
+ * isActive={toggleState}
125
+ * />
126
+ * </Button>
127
+ */
88
128
  Icon.Toggle = IconToggle;
89
129
  var _default = Icon;
90
130
  exports.default = _default;
@@ -335,6 +335,8 @@ module.exports = {
335
335
  "tasks": "0 0 12 16",
336
336
  "team-conversation-outline": "0 0 16 18",
337
337
  "team-conversation": "0 0 16 18",
338
+ "team-sprout-outline": "0 0 18 18",
339
+ "team-sprout": "0 0 18 18",
338
340
  "team": "0 0 18 16",
339
341
  "text-asset": "0 0 16 16",
340
342
  "text": "0 0 8 16",
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -48,7 +48,8 @@ var Indicator = /*#__PURE__*/function (_React$Component) {
48
48
  tabIndex: 0
49
49
  }, rest), tooltip && /*#__PURE__*/React.createElement("div", null, tooltip), /*#__PURE__*/React.createElement(_Icon.default, {
50
50
  name: "indicator",
51
- size: "mini"
51
+ size: "mini",
52
+ "aria-hidden": true
52
53
  }));
53
54
  }
54
55
  }]);
@@ -71,7 +71,8 @@ var ClearButton = function ClearButton() {
71
71
  ariaLabel: clearButtonLabel || 'Clear',
72
72
  color: "icon.base"
73
73
  }, /*#__PURE__*/React.createElement(_Icon.default, {
74
- name: "circlex"
74
+ name: "circlex",
75
+ "aria-hidden": true
75
76
  }));
76
77
  };
77
78
  ClearButton.displayName = 'Input.ClearButton';
@@ -13,7 +13,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
13
13
  var Container = _styledComponents.default.div.withConfig({
14
14
  displayName: "styles__Container",
15
15
  componentId: "sc-4stdun-0"
16
- })(["box-sizing:border-box;position:relative;input{box-sizing:border-box;width:100%;border:1px solid transparent;border-radius:", ";background-color:", ";color:", ";outline:none;transition:border-color ", " ", ",box-shadow ", " ", ";font-family:", ";font-weight:", ";appearance:none;margin:0;padding:", ";font-size:", ";line-height:", ";&::-ms-clear{display:none;}&::-webkit-search-cancel-button{appearance:none;}&:focus{", "}&:not(output):not(:focus):-moz-ui-invalid{box-shadow:none;}&::placeholder{color:", ";}", " ", "}", " ", " ", " ", " ", ""], function (props) {
16
+ })(["box-sizing:border-box;position:relative;input{box-sizing:border-box;width:100%;border:1px solid transparent;border-radius:", ";background-color:", ";color:", ";outline:none;transition:border-color ", " ", ",box-shadow ", " ", ";font-family:", ";font-weight:", ";appearance:none;margin:0;padding:", ";font-size:", ";line-height:", ";&::-ms-clear{display:none;}&::-webkit-search-cancel-button{appearance:none;}&:focus{", "}&:not(output):not(:focus):-moz-ui-invalid{box-shadow:none;}&::placeholder{color:", ";font-style:italic;}", " ", "}", " ", " ", " ", " ", ""], function (props) {
17
17
  return props.theme.radii[500];
18
18
  }, function (props) {
19
19
  return props.theme.colors.form.background.base;
@@ -102,7 +102,8 @@ var ListboxButton = function ListboxButton(_ref2) {
102
102
  size: restProps.size
103
103
  }, /*#__PURE__*/React.createElement(_Icon.default, {
104
104
  name: "chevron-down",
105
- fixedWidth: true
105
+ fixedWidth: true,
106
+ "aria-hidden": true
106
107
  })));
107
108
  };
108
109
  exports.ListboxButton = ListboxButton;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -9,7 +9,7 @@ var _react = _interopRequireDefault(require("react"));
9
9
  var _styledComponents = require("styled-components");
10
10
  var logoViewBoxes = _interopRequireWildcard(require("../LogoViewBoxes"));
11
11
  var _styles = _interopRequireDefault(require("./styles"));
12
- var _excluded = ["partnerName", "backgroundType", "logoType", "height", "width", "size", "color"];
12
+ var _excluded = ["partnerName", "backgroundType", "logoType", "height", "width", "size", "aria-label", "svgProps"];
13
13
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
14
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
15
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -19,16 +19,18 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
19
19
  var PartnerLogo = function PartnerLogo(_ref) {
20
20
  var partnerName = _ref.partnerName,
21
21
  backgroundType = _ref.backgroundType,
22
- logoType = _ref.logoType,
22
+ _ref$logoType = _ref.logoType,
23
+ logoType = _ref$logoType === void 0 ? 'symbol' : _ref$logoType,
23
24
  height = _ref.height,
24
25
  width = _ref.width,
25
26
  size = _ref.size,
26
- color = _ref.color,
27
+ ariaLabel = _ref['aria-label'],
28
+ svgProps = _ref.svgProps,
27
29
  rest = _objectWithoutProperties(_ref, _excluded);
28
30
  var _useTheme = (0, _styledComponents.useTheme)(),
29
31
  mode = _useTheme.mode;
30
32
  var whichLogo = function whichLogo(type) {
31
- var logo = logoType ? partnerName + '-' + logoType : partnerName;
33
+ var logo = logoType && logoType !== 'symbol' ? partnerName + '-' + logoType : partnerName;
32
34
  if (type && type === 'dark') {
33
35
  return "".concat(logo, "-dark");
34
36
  } else if (type && type === 'light') {
@@ -48,17 +50,16 @@ var PartnerLogo = function PartnerLogo(_ref) {
48
50
  height: height ? height : defaultHeight + 'px',
49
51
  width: width ? width : defaultWidth + 'px',
50
52
  logoSize: size,
51
- className: "logo"
52
- // TODO: fix this type since `color` should be valid here. TS can't resolve the correct type.
53
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
54
- // @ts-ignore
55
- ,
56
- color: color
57
- }, rest), /*#__PURE__*/_react.default.createElement("svg", {
53
+ className: "logo",
54
+ role: "img",
55
+ "aria-label": ariaLabel,
56
+ "data-qa-logo": partnerName
57
+ }, rest), /*#__PURE__*/_react.default.createElement("svg", _extends({
58
58
  className: "logo-svg",
59
59
  viewBox: logoViewBox,
60
- focusable: false
61
- }, /*#__PURE__*/_react.default.createElement("use", {
60
+ focusable: false,
61
+ "data-qa-logo-svg": "".concat(partnerName, "-svg")
62
+ }, svgProps), /*#__PURE__*/_react.default.createElement("use", {
62
63
  xmlnsXlink: "http://www.w3.org/1999/xlink",
63
64
  xlinkHref: "#sslogosvg-".concat(whichLogo(backgroundType))
64
65
  })));
@@ -2,4 +2,15 @@
2
2
 
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
- });
5
+ });
6
+ exports.PartnerNames = exports.PartnerLogoSizes = void 0;
7
+ var PartnerNames = ['apple-app-store', 'bigcommerce', 'bitly', 'bynder', 'canva', 'dropbox', 'facebook', 'facebook-audience-network', 'facebook-groups', 'facebook-shops', 'feedly', 'glassdoor', 'google-analytics', 'google-business-messages', 'google-drive', 'google-my-business', 'google-play-store', 'hubspot', 'instagram', 'linkedin', 'linkedin-audience-network', 'marketo', 'messenger', 'microsoft-dynamics', 'pinterest', 'reddit', 'salesforce', 'shopify', 'slack', 'sproutsocial', 'tiktok', 'tripadvisor', 'tumblr', 'twitter', 'twitter-audience-network', 'whatsapp', 'woocommerce', 'yelp', 'youtube', 'zendesk'];
8
+ exports.PartnerNames = PartnerNames;
9
+ var PartnerLogoSizes = {
10
+ mini: '12px',
11
+ small: '16px',
12
+ medium: '24px',
13
+ large: '32px',
14
+ jumbo: '64px'
15
+ };
16
+ exports.PartnerLogoSizes = PartnerLogoSizes;
@@ -26,18 +26,6 @@ Object.keys(_PartnerLogoTypes).forEach(function (key) {
26
26
  }
27
27
  });
28
28
  });
29
- var _TypePartnerNames = require("./TypePartnerNames");
30
- Object.keys(_TypePartnerNames).forEach(function (key) {
31
- if (key === "default" || key === "__esModule") return;
32
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
33
- if (key in exports && exports[key] === _TypePartnerNames[key]) return;
34
- Object.defineProperty(exports, key, {
35
- enumerable: true,
36
- get: function get() {
37
- return _TypePartnerNames[key];
38
- }
39
- });
40
- });
41
29
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
42
30
  var _default = _PartnerLogo.default;
43
31
  exports.default = _default;
@@ -20,7 +20,7 @@ var sizes = {
20
20
 
21
21
  // TODO: remove width from stylesForSize
22
22
  var stylesForSize = function stylesForSize(height, width, logoSize) {
23
- return (0, _styledComponents.css)(["line-height:", ";&,.logo-svg{height:", ";width:", ";}"], logoSize ? logoSize : height, logoSize ? logoSize : height, logoSize ? logoSize : '');
23
+ return (0, _styledComponents.css)(["height:", ";line-height:", ";.logo-svg{height:", ";width:", ";}"], logoSize ? logoSize : height, logoSize ? logoSize : height, logoSize ? logoSize : height, logoSize ? logoSize : '');
24
24
  };
25
25
  var Container = (0, _styledComponents.default)('span').withConfig({
26
26
  displayName: "styles__Container",
@@ -92,7 +92,8 @@ var Select = /*#__PURE__*/function (_React$Component) {
92
92
  }, /*#__PURE__*/React.createElement(_Icon.default, {
93
93
  name: "chevron-down",
94
94
  fixedWidth: true,
95
- size: this.props.size === 'small' ? 'mini' : 'default'
95
+ size: this.props.size === 'small' ? 'mini' : 'default',
96
+ "aria-hidden": true
96
97
  })));
97
98
  }
98
99
  }]);
@@ -74,6 +74,7 @@ var Switch = /*#__PURE__*/function (_React$Component) {
74
74
  "data-qa-switch-isdisabled": disabled === true,
75
75
  checked: checked
76
76
  }, qa, rest), /*#__PURE__*/React.createElement(_VisuallyHidden.VisuallyHidden, null, checked ? a11yLabels.on : a11yLabels.off), checked ? /*#__PURE__*/React.createElement(_Icon.default, {
77
+ "aria-hidden": true,
77
78
  size: "mini",
78
79
  name: "check"
79
80
  }) : null);
@@ -49,7 +49,8 @@ var TableHeaderCell = /*#__PURE__*/function (_React$Component) {
49
49
  }
50
50
  return /*#__PURE__*/React.createElement(_styles.SortIcon, null, /*#__PURE__*/React.createElement(_Icon.default, {
51
51
  size: "mini",
52
- name: iconName
52
+ name: iconName,
53
+ "aria-hidden": true
53
54
  }));
54
55
  });
55
56
  _defineProperty(_assertThisInitialized(_this), "handleClick", function (e) {