aural-ui 2.1.13 → 2.1.14

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 (214) hide show
  1. package/dist/icons/ai-avatar-icon/AiAvatarIcon.stories.tsx +14 -6
  2. package/dist/icons/ai-avatar-icon/index.tsx +16 -5
  3. package/dist/icons/alert-icon/AlertIcon.stories.tsx +15 -7
  4. package/dist/icons/alert-icon/index.tsx +35 -20
  5. package/dist/icons/angle-down-icon/AngleDownIcon.stories.tsx +13 -5
  6. package/dist/icons/angle-down-icon/index.tsx +17 -7
  7. package/dist/icons/apple-logo-icon/AppleLogoIcon.stories.tsx +13 -5
  8. package/dist/icons/apple-logo-icon/index.tsx +17 -7
  9. package/dist/icons/arrow-box-left-icon/ArrowBoxLeftIcon.stories.tsx +14 -6
  10. package/dist/icons/arrow-box-left-icon/index.tsx +17 -7
  11. package/dist/icons/arrow-corner-up-left-icon/ArrowCornerUpLeftIcon.stories.tsx +13 -5
  12. package/dist/icons/arrow-corner-up-left-icon/index.tsx +20 -7
  13. package/dist/icons/arrow-corner-up-right-icon/ArrowCornerUpRightIcon.stories.tsx +14 -6
  14. package/dist/icons/arrow-corner-up-right-icon/index.tsx +20 -7
  15. package/dist/icons/arrow-left-icon/ArrowLeftIcon.stories.tsx +13 -5
  16. package/dist/icons/arrow-left-icon/index.tsx +16 -8
  17. package/dist/icons/arrow-right-icon/ArrowRightIcon.stories.tsx +14 -6
  18. package/dist/icons/arrow-right-icon/index.tsx +16 -8
  19. package/dist/icons/arrow-right-up-icon/ArrowRightUpIcon.stories.tsx +14 -6
  20. package/dist/icons/arrow-right-up-icon/index.tsx +17 -7
  21. package/dist/icons/art-board-icon/ArtBoardIcon.stories.tsx +16 -8
  22. package/dist/icons/art-board-icon/index.tsx +17 -7
  23. package/dist/icons/audio-bar-icon/AudioBarIcon.stories.tsx +14 -6
  24. package/dist/icons/audio-bar-icon/index.tsx +17 -7
  25. package/dist/icons/backward-ten-seconds-icon/BackwardTenSecondsIcon.stories.tsx +14 -6
  26. package/dist/icons/backward-ten-seconds-icon/index.tsx +20 -7
  27. package/dist/icons/bubble-check-icon/BubbleCheckIcon.stories.tsx +14 -6
  28. package/dist/icons/bubble-check-icon/index.tsx +17 -7
  29. package/dist/icons/bubble-crossed-icon/BubbleCrossedIcon.stories.tsx +14 -6
  30. package/dist/icons/bubble-crossed-icon/index.tsx +17 -7
  31. package/dist/icons/bubble-sparkle-icon/BubbleSparkleIcon.stories.tsx +14 -6
  32. package/dist/icons/bubble-sparkle-icon/index.tsx +17 -7
  33. package/dist/icons/camera-icon/CameraIcon.stories.tsx +14 -6
  34. package/dist/icons/camera-icon/index.tsx +17 -7
  35. package/dist/icons/capital-a-letter-icon/CapitalALetterIcon.stories.tsx +13 -5
  36. package/dist/icons/capital-a-letter-icon/index.tsx +35 -27
  37. package/dist/icons/chevron-double-left-icon/ChevronDoubleLeftIcon.stories.tsx +13 -5
  38. package/dist/icons/chevron-double-left-icon/index.tsx +19 -8
  39. package/dist/icons/chevron-double-right-icon/ChevronDoubleRightIcon.stories.tsx +14 -6
  40. package/dist/icons/chevron-double-right-icon/index.tsx +19 -8
  41. package/dist/icons/chevron-down-icon/ChevronDownIcon.stories.tsx +13 -5
  42. package/dist/icons/chevron-down-icon/index.tsx +16 -8
  43. package/dist/icons/chevron-left-icon/ChevronLeftIcon.stories.tsx +14 -6
  44. package/dist/icons/chevron-left-icon/index.tsx +16 -8
  45. package/dist/icons/chevron-right-icon/ChevronRightIcon.stories.tsx +14 -6
  46. package/dist/icons/chevron-right-icon/index.tsx +16 -8
  47. package/dist/icons/chevron-up-icon/ChevronUpIcon.stories.tsx +14 -6
  48. package/dist/icons/chevron-up-icon/index.tsx +16 -8
  49. package/dist/icons/circle-tick-icon/CircleTickIcon.stories.tsx +14 -6
  50. package/dist/icons/circle-tick-icon/index.tsx +17 -7
  51. package/dist/icons/coin-icon/CoinIcon.stories.tsx +14 -6
  52. package/dist/icons/coin-icon/index.tsx +17 -7
  53. package/dist/icons/command-icon/CommandIcon.stories.tsx +13 -5
  54. package/dist/icons/command-icon/index.tsx +17 -7
  55. package/dist/icons/copy-icon/CopyIcon.stories.tsx +14 -6
  56. package/dist/icons/copy-icon/index.tsx +17 -7
  57. package/dist/icons/cross-circle-icon/CrossCircleIcon.stories.tsx +14 -6
  58. package/dist/icons/cross-circle-icon/index.tsx +17 -7
  59. package/dist/icons/cross-icon/CrossIcon.stories.tsx +14 -6
  60. package/dist/icons/cross-icon/index.tsx +17 -7
  61. package/dist/icons/download-icon/DownloadIcon.stories.tsx +14 -6
  62. package/dist/icons/download-icon/index.tsx +17 -7
  63. package/dist/icons/edit-big-icon/EditBigIcon.stories.tsx +13 -5
  64. package/dist/icons/edit-big-icon/index.tsx +17 -7
  65. package/dist/icons/email-icon/EmailIcon.stories.tsx +13 -5
  66. package/dist/icons/email-icon/index.tsx +17 -7
  67. package/dist/icons/expand-icon/ExpandIcon.stories.tsx +14 -6
  68. package/dist/icons/expand-icon/index.tsx +17 -7
  69. package/dist/icons/eye-close-icon/EyeCloseIcon.stories.tsx +13 -6
  70. package/dist/icons/eye-close-icon/index.tsx +17 -7
  71. package/dist/icons/eye-open-icon/EyeOpenIcon.stories.tsx +13 -5
  72. package/dist/icons/eye-open-icon/index.tsx +17 -7
  73. package/dist/icons/feature-shine-icon/FeatureShineIcon.stories.tsx +14 -6
  74. package/dist/icons/feature-shine-icon/index.tsx +17 -5
  75. package/dist/icons/file-chart-icon/FileChartIcon.stories.tsx +13 -5
  76. package/dist/icons/file-chart-icon/index.tsx +17 -7
  77. package/dist/icons/file-text-icon/FileTextIcon.stories.tsx +15 -7
  78. package/dist/icons/file-text-icon/index.tsx +17 -7
  79. package/dist/icons/filter-bar-row-icon/FilterBarRowIcon.stories.tsx +14 -6
  80. package/dist/icons/filter-bar-row-icon/index.tsx +17 -7
  81. package/dist/icons/forward-ten-seconds-icon/ForwardTenSecondsIcon.stories.tsx +14 -6
  82. package/dist/icons/forward-ten-seconds-icon/index.tsx +20 -7
  83. package/dist/icons/git-branch-icon/GitBranchIcon.stories.tsx +14 -6
  84. package/dist/icons/git-branch-icon/index.tsx +17 -7
  85. package/dist/icons/git-fork-icon/GitForkIcon.stories.tsx +14 -6
  86. package/dist/icons/git-fork-icon/index.tsx +17 -7
  87. package/dist/icons/globe-icon/GlobeIcon.stories.tsx +360 -0
  88. package/dist/icons/globe-icon/index.tsx +32 -0
  89. package/dist/icons/globe-icon/meta.ts +8 -0
  90. package/dist/icons/google-logo-icon/GoogleLogoIcon.stories.tsx +14 -6
  91. package/dist/icons/google-logo-icon/index.tsx +17 -7
  92. package/dist/icons/grip-vertical-icon/GripVerticalIcon.stories.tsx +14 -6
  93. package/dist/icons/grip-vertical-icon/index.tsx +17 -7
  94. package/dist/icons/head-icon/HeadIcon.stories.tsx +13 -5
  95. package/dist/icons/head-icon/index.tsx +29 -21
  96. package/dist/icons/heart-icon/HeartIcon.stories.tsx +14 -6
  97. package/dist/icons/heart-icon/index.tsx +17 -7
  98. package/dist/icons/image-icon/ImageIcon.stories.tsx +13 -5
  99. package/dist/icons/image-icon/index.tsx +17 -7
  100. package/dist/icons/import-folder-icon/ImportFolderIcon.stories.tsx +14 -6
  101. package/dist/icons/import-folder-icon/index.tsx +17 -7
  102. package/dist/icons/import-left-arrow-folder-icon/ImportLeftArrowFolderIcon.stories.tsx +14 -6
  103. package/dist/icons/import-left-arrow-folder-icon/index.tsx +23 -6
  104. package/dist/icons/index.ts +1 -0
  105. package/dist/icons/indian-flag-icon/IndianFlagIcon.stories.tsx +14 -6
  106. package/dist/icons/indian-flag-icon/index.tsx +17 -7
  107. package/dist/icons/instagram-icon/InstagramIcon.stories.tsx +12 -6
  108. package/dist/icons/instagram-icon/index.tsx +17 -7
  109. package/dist/icons/layout-column-icon/LayoutColumnIcon.stories.tsx +13 -5
  110. package/dist/icons/layout-column-icon/index.tsx +17 -7
  111. package/dist/icons/layout-left-icon/LayoutLeftIcon.stories.tsx +14 -6
  112. package/dist/icons/layout-left-icon/index.tsx +17 -7
  113. package/dist/icons/layout-right-icon/LayoutRightIcon.stories.tsx +14 -6
  114. package/dist/icons/layout-right-icon/index.tsx +17 -7
  115. package/dist/icons/light-bulb-simple-icon/LightBulbSimpleIcon.stories.tsx +14 -6
  116. package/dist/icons/light-bulb-simple-icon/index.tsx +18 -7
  117. package/dist/icons/linked-in-icon/LinkedInIcon.stories.tsx +11 -5
  118. package/dist/icons/linked-in-icon/index.tsx +17 -7
  119. package/dist/icons/magic-book-icon/MagicBookIcon.stories.tsx +14 -6
  120. package/dist/icons/magic-book-icon/index.tsx +17 -7
  121. package/dist/icons/maintenance-icon/MaintenanceIcon.stories.tsx +14 -6
  122. package/dist/icons/maintenance-icon/index.tsx +17 -7
  123. package/dist/icons/message-icon/MessageIcon.stories.tsx +15 -7
  124. package/dist/icons/message-icon/index.tsx +17 -7
  125. package/dist/icons/minimize-icon/MinimizeIcon.stories.tsx +14 -6
  126. package/dist/icons/minimize-icon/index.tsx +17 -7
  127. package/dist/icons/moon-icon/MoonIcon.stories.tsx +15 -7
  128. package/dist/icons/moon-icon/index.tsx +24 -16
  129. package/dist/icons/move-horizontal-icon/MoveHorizontalIcon.stories.tsx +14 -6
  130. package/dist/icons/move-horizontal-icon/index.tsx +17 -7
  131. package/dist/icons/move-vertical-icon/MoveVerticalIcon.stories.tsx +13 -5
  132. package/dist/icons/move-vertical-icon/index.tsx +17 -7
  133. package/dist/icons/musical-note-icon/MusicalNoteIcon.stories.tsx +14 -6
  134. package/dist/icons/musical-note-icon/index.tsx +28 -20
  135. package/dist/icons/notepad-icon/NotepadIcon.stories.tsx +14 -6
  136. package/dist/icons/notepad-icon/index.tsx +17 -7
  137. package/dist/icons/notes-icon/NotesIcon.stories.tsx +14 -6
  138. package/dist/icons/notes-icon/index.tsx +17 -7
  139. package/dist/icons/page-search-icon/PageSearchIcon.stories.tsx +14 -6
  140. package/dist/icons/page-search-icon/index.tsx +17 -7
  141. package/dist/icons/paint-roll-icon/PaintRollIcon.stories.tsx +14 -6
  142. package/dist/icons/paint-roll-icon/index.tsx +17 -7
  143. package/dist/icons/paper-plane-icon/PaperPlaneIcon.stories.tsx +14 -6
  144. package/dist/icons/paper-plane-icon/index.tsx +17 -7
  145. package/dist/icons/pause-icon/PauseIcon.stories.tsx +14 -6
  146. package/dist/icons/pause-icon/index.tsx +17 -7
  147. package/dist/icons/pencil-icon/PencilIcon.stories.tsx +14 -6
  148. package/dist/icons/pencil-icon/index.tsx +17 -7
  149. package/dist/icons/phone-icon/PhoneIcon.stories.tsx +14 -6
  150. package/dist/icons/phone-icon/index.tsx +29 -21
  151. package/dist/icons/plus-icon/PlusIcon.stories.tsx +14 -6
  152. package/dist/icons/plus-icon/index.tsx +17 -7
  153. package/dist/icons/search-icon/SearchIcon.stories.tsx +13 -5
  154. package/dist/icons/search-icon/index.tsx +17 -7
  155. package/dist/icons/setting-icon/SettingIcon.stories.tsx +13 -5
  156. package/dist/icons/setting-icon/index.tsx +33 -25
  157. package/dist/icons/share-icon/ShareIcon.stories.tsx +13 -5
  158. package/dist/icons/share-icon/index.tsx +17 -7
  159. package/dist/icons/shield-icon/ShieldIcon.stories.tsx +14 -6
  160. package/dist/icons/shield-icon/index.tsx +24 -16
  161. package/dist/icons/site-logo-icon/SiteLogoIcon.stories.tsx +14 -6
  162. package/dist/icons/site-logo-icon/index.tsx +17 -5
  163. package/dist/icons/skip-backward-icon/SkipBackwardIcon.stories.tsx +14 -6
  164. package/dist/icons/skip-backward-icon/index.tsx +17 -7
  165. package/dist/icons/skip-forward-icon/SkipForwardIcon.stories.tsx +13 -5
  166. package/dist/icons/skip-forward-icon/index.tsx +17 -7
  167. package/dist/icons/sparkles-soft-icon/SparklesSoftIcon.stories.tsx +14 -6
  168. package/dist/icons/sparkles-soft-icon/index.tsx +17 -7
  169. package/dist/icons/spinner-gradient-icon/index.tsx +18 -7
  170. package/dist/icons/spinner-solid-icon/index.tsx +17 -7
  171. package/dist/icons/spinner-solid-neutral-icon/SpinnerSolidINeutralcon.stories.tsx +14 -6
  172. package/dist/icons/spinner-solid-neutral-icon/index.tsx +21 -6
  173. package/dist/icons/star-icon/StarIcon.stories.tsx +14 -6
  174. package/dist/icons/star-icon/index.tsx +17 -7
  175. package/dist/icons/store-coin-icon/StoreCoinIcon.stories.tsx +14 -6
  176. package/dist/icons/store-coin-icon/index.tsx +16 -8
  177. package/dist/icons/suggestion-icon/SuggestionIcon.stories.tsx +13 -5
  178. package/dist/icons/suggestion-icon/index.tsx +17 -7
  179. package/dist/icons/sun-icon/SunIcon.stories.tsx +13 -5
  180. package/dist/icons/sun-icon/index.tsx +26 -18
  181. package/dist/icons/text-color-icon/TextColorIcon.stories.tsx +13 -5
  182. package/dist/icons/text-color-icon/index.tsx +17 -7
  183. package/dist/icons/text-indicator-icon/TextIndicatorIcon.stories.tsx +14 -6
  184. package/dist/icons/text-indicator-icon/index.tsx +17 -7
  185. package/dist/icons/threads-icon/ThreadsIcon.stories.tsx +12 -6
  186. package/dist/icons/threads-icon/index.tsx +17 -7
  187. package/dist/icons/tick-circle-icon/TickCircleIcon.stories.tsx +14 -6
  188. package/dist/icons/tick-circle-icon/index.tsx +17 -7
  189. package/dist/icons/tick-icon/TickIcon.stories.tsx +14 -6
  190. package/dist/icons/tick-icon/index.tsx +17 -7
  191. package/dist/icons/trash-icon/TrashIcon.stories.tsx +14 -6
  192. package/dist/icons/trash-icon/index.tsx +17 -7
  193. package/dist/icons/twitter-x-icon/TwitterXIcon.stories.tsx +12 -6
  194. package/dist/icons/twitter-x-icon/index.tsx +17 -7
  195. package/dist/icons/upload-icon/UploadIcon.stories.tsx +13 -5
  196. package/dist/icons/upload-icon/index.tsx +17 -7
  197. package/dist/icons/vertical-menu-icon/VerticalMenuIcon.stories.tsx +13 -5
  198. package/dist/icons/vertical-menu-icon/index.tsx +17 -7
  199. package/dist/icons/video-play-list-icon/VideoPlaylistIcon.stories.tsx +14 -6
  200. package/dist/icons/video-play-list-icon/index.tsx +17 -7
  201. package/dist/icons/voice-playing-icon/VoicePlayingIcon.stories.tsx +14 -6
  202. package/dist/icons/voice-playing-icon/index.tsx +17 -7
  203. package/dist/icons/volume-full-icon/VolumeFullIcon.stories.tsx +14 -6
  204. package/dist/icons/volume-full-icon/index.tsx +17 -7
  205. package/dist/icons/volume-half-icon/VolumeHalfIcon.stories.tsx +14 -6
  206. package/dist/icons/volume-half-icon/index.tsx +17 -7
  207. package/dist/icons/volume-off-icon/VolumeOffIcon.stories.tsx +14 -6
  208. package/dist/icons/volume-off-icon/index.tsx +17 -7
  209. package/dist/icons/warning-icon/WarningIcon.stories.tsx +14 -6
  210. package/dist/icons/warning-icon/index.tsx +17 -7
  211. package/dist/icons/youtube-icon/YoutubeIcon.stories.tsx +14 -6
  212. package/dist/icons/youtube-icon/index.tsx +17 -7
  213. package/dist/index.js +1 -1
  214. package/package.json +1 -1
@@ -202,16 +202,19 @@ function MyEditor() {
202
202
  </tr>
203
203
  </thead>
204
204
  <tbody>
205
- <tr className="border-b border-white/5">
206
- <td className="px-6 py-4 font-mono text-sm !text-slate-300">
207
- width
205
+ {" "}
206
+ <tr className="!bg-black/10">
207
+ <td className="px-6 py-4 font-mono text-sm !text-blue-300">
208
+ withAccessibility
208
209
  </td>
209
210
  <td className="px-6 py-4 text-sm !text-white/70">
210
- number | string
211
+ boolean
212
+ </td>
213
+ <td className="px-6 py-4 text-sm !text-white/50">
214
+ true
211
215
  </td>
212
- <td className="px-6 py-4 text-sm !text-white/50">18</td>
213
216
  <td className="px-6 py-4 text-sm !text-white/70">
214
- Width of the icon in pixels
217
+ Whether to wrap the icon with accessibility feature
215
218
  </td>
216
219
  </tr>
217
220
  <tr className="border-b border-white/5 !bg-black/10">
@@ -798,6 +801,10 @@ function CustomTextIndicatorIcon({ label = "Text Indicator", ...props }) {
798
801
  control: { type: "range", min: 8, max: 96, step: 2 },
799
802
  description: "Width of the icon in pixels",
800
803
  },
804
+ withAccessibility: {
805
+ control: "boolean",
806
+ description: "Whether to wrap the icon with accessibility features",
807
+ },
801
808
  height: {
802
809
  control: { type: "range", min: 8, max: 96, step: 2 },
803
810
  description: "Height of the icon in pixels",
@@ -836,6 +843,7 @@ export const Default: Story = {
836
843
  width: 24,
837
844
  height: 24,
838
845
  className: "text-slate-400",
846
+ withAccessibility: true,
839
847
  },
840
848
  parameters: storyParameters,
841
849
  render: (args) => (
@@ -1,17 +1,21 @@
1
1
  import React from "react"
2
2
  import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
3
3
 
4
- export const TextIndicatorIcon = (
5
- props: React.JSX.IntrinsicAttributes & React.SVGProps<SVGSVGElement>
6
- ) => (
7
- <AccessibleIcon label="Text Indicator Icon">
4
+ export interface TextIndicatorIconProps extends React.SVGProps<SVGSVGElement> {
5
+ withAccessibility?: boolean
6
+ }
7
+
8
+ export const TextIndicatorIcon = (props: TextIndicatorIconProps) => {
9
+ const { withAccessibility = true, ...svgProps } = props
10
+
11
+ const svg = (
8
12
  <svg
9
13
  xmlns="http://www.w3.org/2000/svg"
10
14
  width="18"
11
15
  height="18"
12
16
  viewBox="0 0 18 18"
13
17
  fill="none"
14
- {...props}
18
+ {...svgProps}
15
19
  >
16
20
  <path
17
21
  d="M2.0625 4.3125H6M6 4.3125H9.9375M6 4.3125V13.6875M12.5625 2.0625H14.25M14.25 2.0625H15.9375M14.25 2.0625V15.9375M14.25 15.9375H12.5625M14.25 15.9375H15.9375"
@@ -20,5 +24,11 @@ export const TextIndicatorIcon = (
20
24
  strokeLinecap="square"
21
25
  />
22
26
  </svg>
23
- </AccessibleIcon>
24
- )
27
+ )
28
+
29
+ if (withAccessibility) {
30
+ return <AccessibleIcon label="Text Indicator Icon">{svg}</AccessibleIcon>
31
+ }
32
+
33
+ return svg
34
+ }
@@ -211,18 +211,19 @@ function SocialShare() {
211
211
  </tr>
212
212
  </thead>
213
213
  <tbody>
214
- <tr className="border-b border-white/5">
215
- <td className="px-6 py-4 font-mono text-sm !text-zinc-300">
216
- width
214
+ {" "}
215
+ <tr className="!bg-black/10">
216
+ <td className="px-6 py-4 font-mono text-sm !text-blue-300">
217
+ withAccessibility
217
218
  </td>
218
219
  <td className="px-6 py-4 text-sm !text-white/70">
219
- number | string
220
+ boolean
220
221
  </td>
221
222
  <td className="px-6 py-4 text-sm !text-white/50">
222
- auto
223
+ true
223
224
  </td>
224
225
  <td className="px-6 py-4 text-sm !text-white/70">
225
- Width of the icon (maintains aspect ratio)
226
+ Whether to wrap the icon with accessibility feature
226
227
  </td>
227
228
  </tr>
228
229
  <tr className="border-b border-white/5 !bg-black/10">
@@ -1235,6 +1236,10 @@ function SocialShare() {
1235
1236
  control: { type: "range", min: 8, max: 96, step: 2 },
1236
1237
  description: "Width of the icon (maintains aspect ratio)",
1237
1238
  },
1239
+ withAccessibility: {
1240
+ control: "boolean",
1241
+ description: "Whether to wrap the icon with accessibility features",
1242
+ },
1238
1243
  height: {
1239
1244
  control: { type: "range", min: 8, max: 96, step: 2 },
1240
1245
  description: "Height of the icon (maintains aspect ratio)",
@@ -1271,6 +1276,7 @@ const storyParameters = {
1271
1276
  export const Default: Story = {
1272
1277
  args: {
1273
1278
  className: "h-8 w-8 text-white",
1279
+ withAccessibility: true,
1274
1280
  },
1275
1281
  parameters: storyParameters,
1276
1282
  render: (args) => (
@@ -1,17 +1,27 @@
1
1
  import React from "react"
2
2
  import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
3
3
 
4
- export const ThreadsIcon = (
5
- props: React.JSX.IntrinsicAttributes & React.SVGProps<SVGSVGElement>
6
- ) => (
7
- <AccessibleIcon label="Threads icon">
4
+ export interface ThreadsIconProps extends React.SVGProps<SVGSVGElement> {
5
+ withAccessibility?: boolean
6
+ }
7
+
8
+ export const ThreadsIcon = (props: ThreadsIconProps) => {
9
+ const { withAccessibility = true, ...svgProps } = props
10
+
11
+ const svg = (
8
12
  <svg
9
13
  viewBox="0 0 18 22"
10
14
  fill="currentColor"
11
15
  xmlns="http://www.w3.org/2000/svg"
12
- {...props}
16
+ {...svgProps}
13
17
  >
14
18
  <path d="M13.9062 10.2514C13.8179 10.209 13.7283 10.1683 13.6374 10.1293C13.4793 7.21371 11.8868 5.54454 9.21275 5.52746C9.20063 5.52739 9.18858 5.52739 9.17647 5.52739C7.57706 5.52739 6.24686 6.21036 5.42813 7.45315L6.89876 8.46236C7.51038 7.53404 8.47026 7.33614 9.17717 7.33614C9.18534 7.33614 9.19354 7.33614 9.20162 7.33621C10.0821 7.34183 10.7465 7.59792 11.1765 8.09733C11.4894 8.46092 11.6987 8.96335 11.8023 9.59744C11.0217 9.46471 10.1775 9.4239 9.27498 9.47567C6.73265 9.62216 5.09824 11.1055 5.20801 13.1666C5.26371 14.2121 5.78436 15.1115 6.67398 15.6991C7.42615 16.1958 8.39489 16.4387 9.4017 16.3837C10.7313 16.3108 11.7744 15.8033 12.5021 14.8754C13.0547 14.1707 13.4042 13.2575 13.5586 12.1068C14.1922 12.4893 14.6618 12.9928 14.9212 13.5979C15.3622 14.6267 15.3879 16.3172 14.0091 17.6954C12.801 18.9028 11.3488 19.4251 9.15422 19.4412C6.71979 19.4232 4.87867 18.6421 3.68162 17.1198C2.56068 15.6943 1.98138 13.6353 1.95976 11C1.98138 8.36466 2.56068 6.30567 3.68162 4.88018C4.87867 3.35787 6.71976 2.57685 9.15418 2.55875C11.6063 2.57699 13.4795 3.36176 14.7223 4.89143C15.3318 5.64156 15.7912 6.5849 16.0941 7.6848L17.8175 7.22482C17.4504 5.87096 16.8726 4.70433 16.0865 3.73681C14.4931 1.77571 12.1628 0.770836 9.16019 0.75H9.14818C6.15171 0.770764 3.84748 1.77946 2.29949 3.74805C0.922002 5.49985 0.21145 7.93735 0.187575 10.9928L0.1875 11L0.187575 11.0072C0.21145 14.0626 0.922002 16.5002 2.29949 18.252C3.84748 20.2205 6.15171 21.2293 9.14818 21.25H9.16019C11.8242 21.2315 13.702 20.5338 15.2489 18.9876C17.2729 16.9649 17.2119 14.4294 16.5449 12.8729C16.0663 11.7567 15.1539 10.8501 13.9062 10.2514ZM9.30652 14.5776C8.19226 14.6404 7.03467 14.14 6.97759 13.0684C6.93528 12.2738 7.54285 11.3872 9.3749 11.2815C9.58471 11.2694 9.79059 11.2635 9.99284 11.2635C10.6583 11.2635 11.2809 11.3282 11.8468 11.452C11.6357 14.0894 10.3975 14.5177 9.30652 14.5776Z" />
15
19
  </svg>
16
- </AccessibleIcon>
17
- )
20
+ )
21
+
22
+ if (withAccessibility) {
23
+ return <AccessibleIcon label="Threads icon">{svg}</AccessibleIcon>
24
+ }
25
+
26
+ return svg
27
+ }
@@ -218,16 +218,19 @@ function SuccessMessage() {
218
218
  </tr>
219
219
  </thead>
220
220
  <tbody>
221
- <tr className="border-b border-white/5">
222
- <td className="px-6 py-4 font-mono text-sm !text-green-300">
223
- width
221
+ {" "}
222
+ <tr className="!bg-black/10">
223
+ <td className="px-6 py-4 font-mono text-sm !text-blue-300">
224
+ withAccessibility
224
225
  </td>
225
226
  <td className="px-6 py-4 text-sm !text-white/70">
226
- number | string
227
+ boolean
228
+ </td>
229
+ <td className="px-6 py-4 text-sm !text-white/50">
230
+ true
227
231
  </td>
228
- <td className="px-6 py-4 text-sm !text-white/50">16</td>
229
232
  <td className="px-6 py-4 text-sm !text-white/70">
230
- Width of the icon in pixels
233
+ Whether to wrap the icon with accessibility feature
231
234
  </td>
232
235
  </tr>
233
236
  <tr className="border-b border-white/5 !bg-black/10">
@@ -987,6 +990,10 @@ function CompletionIcon({ label = "Completed", ...props }) {
987
990
  control: { type: "range", min: 8, max: 96, step: 2 },
988
991
  description: "Width of the icon in pixels",
989
992
  },
993
+ withAccessibility: {
994
+ control: "boolean",
995
+ description: "Whether to wrap the icon with accessibility features",
996
+ },
990
997
  height: {
991
998
  control: { type: "range", min: 8, max: 96, step: 2 },
992
999
  description: "Height of the icon in pixels",
@@ -1021,6 +1028,7 @@ export const Default: Story = {
1021
1028
  width: 24,
1022
1029
  height: 24,
1023
1030
  className: "text-green-400",
1031
+ withAccessibility: true,
1024
1032
  },
1025
1033
  parameters: storyParameters,
1026
1034
  render: (args) => (
@@ -1,17 +1,21 @@
1
1
  import React from "react"
2
2
  import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
3
3
 
4
- export const TickCircleIcon = (
5
- props: React.JSX.IntrinsicAttributes & React.SVGProps<SVGSVGElement>
6
- ) => (
7
- <AccessibleIcon label="Tick Circle icon">
4
+ export interface TickCircleIconProps extends React.SVGProps<SVGSVGElement> {
5
+ withAccessibility?: boolean
6
+ }
7
+
8
+ export const TickCircleIcon = (props: TickCircleIconProps) => {
9
+ const { withAccessibility = true, ...svgProps } = props
10
+
11
+ const svg = (
8
12
  <svg
9
13
  xmlns="http://www.w3.org/2000/svg"
10
14
  width="16"
11
15
  height="16"
12
16
  viewBox="0 0 16 16"
13
17
  fill="currentColor"
14
- {...props}
18
+ {...svgProps}
15
19
  >
16
20
  <path
17
21
  fillRule="evenodd"
@@ -19,5 +23,11 @@ export const TickCircleIcon = (
19
23
  d="M8.00016 1.33325C4.31826 1.33325 1.3335 4.31802 1.3335 7.99992C1.3335 11.6818 4.31826 14.6666 8.00016 14.6666C11.682 14.6666 14.6668 11.6818 14.6668 7.99992C14.6668 4.31802 11.682 1.33325 8.00016 1.33325ZM10.7038 6.26289L9.92983 5.62965L6.96303 9.25572L5.66683 7.95945L4.95972 8.66658L7.0373 10.7441L10.7038 6.26289Z"
20
24
  />
21
25
  </svg>
22
- </AccessibleIcon>
23
- )
26
+ )
27
+
28
+ if (withAccessibility) {
29
+ return <AccessibleIcon label="Tick Circle icon">{svg}</AccessibleIcon>
30
+ }
31
+
32
+ return svg
33
+ }
@@ -218,16 +218,19 @@ function CheckboxComponent() {
218
218
  </tr>
219
219
  </thead>
220
220
  <tbody>
221
- <tr className="border-b border-white/5">
222
- <td className="px-6 py-4 font-mono text-sm !text-green-300">
223
- width
221
+ {" "}
222
+ <tr className="!bg-black/10">
223
+ <td className="px-6 py-4 font-mono text-sm !text-blue-300">
224
+ withAccessibility
224
225
  </td>
225
226
  <td className="px-6 py-4 text-sm !text-white/70">
226
- number | string
227
+ boolean
228
+ </td>
229
+ <td className="px-6 py-4 text-sm !text-white/50">
230
+ true
227
231
  </td>
228
- <td className="px-6 py-4 text-sm !text-white/50">24</td>
229
232
  <td className="px-6 py-4 text-sm !text-white/70">
230
- Width of the icon in pixels
233
+ Whether to wrap the icon with accessibility feature
231
234
  </td>
232
235
  </tr>
233
236
  <tr className="border-b border-white/5 !bg-black/10">
@@ -1099,6 +1102,10 @@ function CompletionIcon({ label = "Completed", ...props }) {
1099
1102
  control: { type: "range", min: 8, max: 96, step: 2 },
1100
1103
  description: "Width of the icon in pixels",
1101
1104
  },
1105
+ withAccessibility: {
1106
+ control: "boolean",
1107
+ description: "Whether to wrap the icon with accessibility features",
1108
+ },
1102
1109
  height: {
1103
1110
  control: { type: "range", min: 8, max: 96, step: 2 },
1104
1111
  description: "Height of the icon in pixels",
@@ -1137,6 +1144,7 @@ export const Default: Story = {
1137
1144
  width: 24,
1138
1145
  height: 24,
1139
1146
  className: "text-green-400",
1147
+ withAccessibility: true,
1140
1148
  },
1141
1149
  parameters: storyParameters,
1142
1150
  render: (args) => (
@@ -1,17 +1,21 @@
1
1
  import React from "react"
2
2
  import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
3
3
 
4
- export const TickIcon = (
5
- props: React.JSX.IntrinsicAttributes & React.SVGProps<SVGSVGElement>
6
- ) => (
7
- <AccessibleIcon label="Tick icon">
4
+ export interface TickIconProps extends React.SVGProps<SVGSVGElement> {
5
+ withAccessibility?: boolean
6
+ }
7
+
8
+ export const TickIcon = (props: TickIconProps) => {
9
+ const { withAccessibility = true, ...svgProps } = props
10
+
11
+ const svg = (
8
12
  <svg
9
13
  width="24"
10
14
  height="24"
11
15
  viewBox="0 0 24 24"
12
16
  xmlns="http://www.w3.org/2000/svg"
13
17
  fill="transparent"
14
- {...props}
18
+ {...svgProps}
15
19
  >
16
20
  <path
17
21
  d="m7 13 3 3 7-8"
@@ -20,5 +24,11 @@ export const TickIcon = (
20
24
  strokeLinecap="square"
21
25
  />
22
26
  </svg>
23
- </AccessibleIcon>
24
- )
27
+ )
28
+
29
+ if (withAccessibility) {
30
+ return <AccessibleIcon label="Tick icon">{svg}</AccessibleIcon>
31
+ }
32
+
33
+ return svg
34
+ }
@@ -201,16 +201,19 @@ function MyComponent() {
201
201
  </tr>
202
202
  </thead>
203
203
  <tbody>
204
- <tr className="border-b border-white/5">
205
- <td className="px-6 py-4 font-mono text-sm !text-red-300">
206
- width
204
+ {" "}
205
+ <tr className="!bg-black/10">
206
+ <td className="px-6 py-4 font-mono text-sm !text-blue-300">
207
+ withAccessibility
207
208
  </td>
208
209
  <td className="px-6 py-4 text-sm !text-white/70">
209
- number | string
210
+ boolean
211
+ </td>
212
+ <td className="px-6 py-4 text-sm !text-white/50">
213
+ true
210
214
  </td>
211
- <td className="px-6 py-4 text-sm !text-white/50">24</td>
212
215
  <td className="px-6 py-4 text-sm !text-white/70">
213
- Width of the icon in pixels
216
+ Whether to wrap the icon with accessibility feature
214
217
  </td>
215
218
  </tr>
216
219
  <tr className="border-b border-white/5 !bg-black/10">
@@ -764,6 +767,10 @@ function CustomTrashIcon({ label = "Delete", ...props }) {
764
767
  control: { type: "range", min: 8, max: 96, step: 2 },
765
768
  description: "Width of the icon in pixels",
766
769
  },
770
+ withAccessibility: {
771
+ control: "boolean",
772
+ description: "Whether to wrap the icon with accessibility features",
773
+ },
767
774
  height: {
768
775
  control: { type: "range", min: 8, max: 96, step: 2 },
769
776
  description: "Height of the icon in pixels",
@@ -798,6 +805,7 @@ export const Default: Story = {
798
805
  width: 24,
799
806
  height: 24,
800
807
  className: "text-red-400",
808
+ withAccessibility: true,
801
809
  },
802
810
  parameters: storyParameters,
803
811
  render: (args) => (
@@ -1,17 +1,21 @@
1
1
  import React from "react"
2
2
  import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
3
3
 
4
- export const TrashIcon = (
5
- props: React.JSX.IntrinsicAttributes & React.SVGProps<SVGSVGElement>
6
- ) => (
7
- <AccessibleIcon label="Trash icon">
4
+ export interface TrashIconProps extends React.SVGProps<SVGSVGElement> {
5
+ withAccessibility?: boolean
6
+ }
7
+
8
+ export const TrashIcon = (props: TrashIconProps) => {
9
+ const { withAccessibility = true, ...svgProps } = props
10
+
11
+ const svg = (
8
12
  <svg
9
13
  width="24"
10
14
  height="24"
11
15
  viewBox="0 0 24 24"
12
16
  fill="none"
13
17
  xmlns="http://www.w3.org/2000/svg"
14
- {...props}
18
+ {...svgProps}
15
19
  >
16
20
  <path
17
21
  d="M5.75 5.75V21.25H18.25V5.75M5.75 5.75H18.25M5.75 5.75H3.75M18.25 5.75H20.25M14 10.75V16.25M10 10.75V16.25M9.02154 5.38866C9.19999 3.90218 10.4654 2.75 12 2.75C13.5346 2.75 14.8 3.90218 14.9785 5.38866"
@@ -20,5 +24,11 @@ export const TrashIcon = (
20
24
  strokeLinecap="square"
21
25
  />
22
26
  </svg>
23
- </AccessibleIcon>
24
- )
27
+ )
28
+
29
+ if (withAccessibility) {
30
+ return <AccessibleIcon label="Trash icon">{svg}</AccessibleIcon>
31
+ }
32
+
33
+ return svg
34
+ }
@@ -208,18 +208,19 @@ function ShareButton() {
208
208
  </tr>
209
209
  </thead>
210
210
  <tbody>
211
- <tr className="border-b border-white/5">
212
- <td className="px-6 py-4 font-mono text-sm !text-slate-300">
213
- width
211
+ {" "}
212
+ <tr className="!bg-black/10">
213
+ <td className="px-6 py-4 font-mono text-sm !text-blue-300">
214
+ withAccessibility
214
215
  </td>
215
216
  <td className="px-6 py-4 text-sm !text-white/70">
216
- number | string
217
+ boolean
217
218
  </td>
218
219
  <td className="px-6 py-4 text-sm !text-white/50">
219
- auto
220
+ true
220
221
  </td>
221
222
  <td className="px-6 py-4 text-sm !text-white/70">
222
- Width of the icon (maintains aspect ratio)
223
+ Whether to wrap the icon with accessibility feature
223
224
  </td>
224
225
  </tr>
225
226
  <tr className="border-b border-white/5 !bg-black/10">
@@ -1234,6 +1235,10 @@ function ShareButton() {
1234
1235
  control: { type: "range", min: 8, max: 96, step: 2 },
1235
1236
  description: "Width of the icon (maintains aspect ratio)",
1236
1237
  },
1238
+ withAccessibility: {
1239
+ control: "boolean",
1240
+ description: "Whether to wrap the icon with accessibility features",
1241
+ },
1237
1242
  height: {
1238
1243
  control: { type: "range", min: 8, max: 96, step: 2 },
1239
1244
  description: "Height of the icon (maintains aspect ratio)",
@@ -1270,6 +1275,7 @@ const storyParameters = {
1270
1275
  export const Default: Story = {
1271
1276
  args: {
1272
1277
  className: "h-8 w-8 text-white",
1278
+ withAccessibility: true,
1273
1279
  },
1274
1280
  parameters: storyParameters,
1275
1281
  render: (args) => (
@@ -1,17 +1,27 @@
1
1
  import React from "react"
2
2
  import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
3
3
 
4
- export const TwitterXIcon = (
5
- props: React.JSX.IntrinsicAttributes & React.SVGProps<SVGSVGElement>
6
- ) => (
7
- <AccessibleIcon label="Twitter X icon">
4
+ export interface TwitterXIconProps extends React.SVGProps<SVGSVGElement> {
5
+ withAccessibility?: boolean
6
+ }
7
+
8
+ export const TwitterXIcon = (props: TwitterXIconProps) => {
9
+ const { withAccessibility = true, ...svgProps } = props
10
+
11
+ const svg = (
8
12
  <svg
9
13
  viewBox="0 0 20 18"
10
14
  fill="currentColor"
11
15
  xmlns="http://www.w3.org/2000/svg"
12
- {...props}
16
+ {...svgProps}
13
17
  >
14
18
  <path d="M15.4033 0.5H18.2852L11.989 7.70103L19.396 17.5H13.5964L9.05397 11.557L3.85637 17.5H0.972695L7.70709 9.79769L0.601562 0.5H6.54839L10.6544 5.93215L15.4033 0.5ZM14.3918 15.7738H15.9887L5.68067 2.13549H3.96702L14.3918 15.7738Z" />
15
19
  </svg>
16
- </AccessibleIcon>
17
- )
20
+ )
21
+
22
+ if (withAccessibility) {
23
+ return <AccessibleIcon label="Twitter X icon">{svg}</AccessibleIcon>
24
+ }
25
+
26
+ return svg
27
+ }
@@ -201,16 +201,19 @@ function MyComponent() {
201
201
  </tr>
202
202
  </thead>
203
203
  <tbody>
204
- <tr className="border-b border-white/5">
204
+ {" "}
205
+ <tr className="!bg-black/10">
205
206
  <td className="px-6 py-4 font-mono text-sm !text-blue-300">
206
- width
207
+ withAccessibility
207
208
  </td>
208
209
  <td className="px-6 py-4 text-sm !text-white/70">
209
- number | string
210
+ boolean
211
+ </td>
212
+ <td className="px-6 py-4 text-sm !text-white/50">
213
+ true
210
214
  </td>
211
- <td className="px-6 py-4 text-sm !text-white/50">24</td>
212
215
  <td className="px-6 py-4 text-sm !text-white/70">
213
- Width of the icon in pixels
216
+ Whether to wrap the icon with accessibility feature
214
217
  </td>
215
218
  </tr>
216
219
  <tr className="border-b border-white/5 !bg-black/10">
@@ -737,6 +740,10 @@ function CustomUploadIcon({ label = "Upload", ...props }) {
737
740
  control: { type: "range", min: 8, max: 96, step: 2 },
738
741
  description: "Width of the icon in pixels",
739
742
  },
743
+ withAccessibility: {
744
+ control: "boolean",
745
+ description: "Whether to wrap the icon with accessibility features",
746
+ },
740
747
  height: {
741
748
  control: { type: "range", min: 8, max: 96, step: 2 },
742
749
  description: "Height of the icon in pixels",
@@ -771,6 +778,7 @@ export const Default: Story = {
771
778
  width: 24,
772
779
  height: 24,
773
780
  className: "text-blue-400",
781
+ withAccessibility: true,
774
782
  },
775
783
  parameters: storyParameters,
776
784
  render: (args) => (
@@ -1,17 +1,21 @@
1
1
  import React from "react"
2
2
  import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
3
3
 
4
- export const UploadIcon = (
5
- props: React.JSX.IntrinsicAttributes & React.SVGProps<SVGSVGElement>
6
- ) => (
7
- <AccessibleIcon label="Upload icon">
4
+ export interface UploadIconProps extends React.SVGProps<SVGSVGElement> {
5
+ withAccessibility?: boolean
6
+ }
7
+
8
+ export const UploadIcon = (props: UploadIconProps) => {
9
+ const { withAccessibility = true, ...svgProps } = props
10
+
11
+ const svg = (
8
12
  <svg
9
13
  width="24"
10
14
  height="24"
11
15
  viewBox="0 0 24 24"
12
16
  fill="none"
13
17
  xmlns="http://www.w3.org/2000/svg"
14
- {...props}
18
+ {...svgProps}
15
19
  >
16
20
  <path
17
21
  d="M20.25 12.75V20.25H3.75V12.75M12 15V4.5M16.5 8.25L12 3.75L7.5 8.25"
@@ -20,5 +24,11 @@ export const UploadIcon = (
20
24
  strokeLinecap="square"
21
25
  />
22
26
  </svg>
23
- </AccessibleIcon>
24
- )
27
+ )
28
+
29
+ if (withAccessibility) {
30
+ return <AccessibleIcon label="Upload icon">{svg}</AccessibleIcon>
31
+ }
32
+
33
+ return svg
34
+ }
@@ -199,16 +199,19 @@ function MyComponent() {
199
199
  </tr>
200
200
  </thead>
201
201
  <tbody>
202
- <tr className="border-b border-white/5">
202
+ {" "}
203
+ <tr className="!bg-black/10">
203
204
  <td className="px-6 py-4 font-mono text-sm !text-blue-300">
204
- width
205
+ withAccessibility
205
206
  </td>
206
207
  <td className="px-6 py-4 text-sm !text-white/70">
207
- number | string
208
+ boolean
209
+ </td>
210
+ <td className="px-6 py-4 text-sm !text-white/50">
211
+ true
208
212
  </td>
209
- <td className="px-6 py-4 text-sm !text-white/50">24</td>
210
213
  <td className="px-6 py-4 text-sm !text-white/70">
211
- Width of the icon in pixels
214
+ Whether to wrap the icon with accessibility feature
212
215
  </td>
213
216
  </tr>
214
217
  <tr className="border-b border-white/5 !bg-black/10">
@@ -801,6 +804,10 @@ function CustomMenuIcon({ label = "Menu options", ...props }) {
801
804
  control: { type: "range", min: 8, max: 96, step: 2 },
802
805
  description: "Width of the icon in pixels",
803
806
  },
807
+ withAccessibility: {
808
+ control: "boolean",
809
+ description: "Whether to wrap the icon with accessibility features",
810
+ },
804
811
  height: {
805
812
  control: { type: "range", min: 8, max: 96, step: 2 },
806
813
  description: "Height of the icon in pixels",
@@ -835,6 +842,7 @@ export const Default: Story = {
835
842
  width: 24,
836
843
  height: 24,
837
844
  className: "text-blue-400",
845
+ withAccessibility: true,
838
846
  },
839
847
  parameters: storyParameters,
840
848
  render: (args) => (