aural-ui 3.0.7 → 4.1.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.
- package/dist/components/aspect-ratio/AspectRatio.stories.tsx +290 -1199
- package/dist/components/avatar/Avatar.stories.tsx +235 -237
- package/dist/components/badge/Badge.stories.tsx +379 -116
- package/dist/components/banner/Banner.stories.tsx +445 -391
- package/dist/components/breadcrumb/Breadcrumb.stories.tsx +453 -199
- package/dist/components/button/Button.stories.tsx +585 -230
- package/dist/components/button/index.tsx +7 -7
- package/dist/components/card/Card.stories.tsx +619 -301
- package/dist/components/char-count/CharCount.stories.tsx +350 -248
- package/dist/components/checkbox/Checkbox.stories.tsx +309 -167
- package/dist/components/chip/Chip.stories.tsx +362 -168
- package/dist/components/circular-loader/CircularLoader.stories.tsx +221 -620
- package/dist/components/clamp-lines/ClampLines.stories.tsx +246 -117
- package/dist/components/collapsible/Collapsible.stories.tsx +391 -252
- package/dist/components/command/Command.stories.tsx +533 -856
- package/dist/components/dialog/Dialog.stories.tsx +505 -949
- package/dist/components/divider/Divider.stories.tsx +265 -502
- package/dist/components/dot-loader/DotLoader.stories.tsx +256 -257
- package/dist/components/drawer/Drawer.stories.tsx +659 -993
- package/dist/components/drawer/index.tsx +3 -3
- package/dist/components/dropdown/Dropdown.stories.tsx +643 -1018
- package/dist/components/form/Form.stories.tsx +560 -274
- package/dist/components/helper-text/HelperText.stories.tsx +199 -200
- package/dist/components/hover-card/HoverCard.stories.tsx +318 -1221
- package/dist/components/icon-button/IconButton.stories.tsx +837 -194
- package/dist/components/if-else/if-else.stories.tsx +370 -83
- package/dist/components/input/Input.stories.tsx +436 -368
- package/dist/components/label/Label.stories.tsx +156 -154
- package/dist/components/list/List.stories.tsx +485 -822
- package/dist/components/marquee/Marquee.stories.tsx +356 -694
- package/dist/components/otp-inputs/OtpInputs.stories.tsx +352 -410
- package/dist/components/overlay/Overlay.stories.tsx +452 -818
- package/dist/components/overlay/index.tsx +4 -4
- package/dist/components/pagination/Pagination.stories.tsx +721 -210
- package/dist/components/popover/Popover.stories.tsx +484 -873
- package/dist/components/radio/Radio.stories.tsx +432 -124
- package/dist/components/resizable/Resizable.stories.tsx +496 -752
- package/dist/components/scroll-area/ScrollArea.stories.tsx +384 -1006
- package/dist/components/search/Search.stories.tsx +314 -575
- package/dist/components/select/Select.stories.tsx +684 -787
- package/dist/components/sheet/Sheet.stories.tsx +671 -936
- package/dist/components/skelton/Skelton.stories.tsx +230 -764
- package/dist/components/slider/Slider.stories.tsx +384 -737
- package/dist/components/stepper/Stepper.stories.tsx +371 -514
- package/dist/components/switch/Switch.stories.tsx +461 -208
- package/dist/components/switch-case/SwitchCase.stories.tsx +367 -188
- package/dist/components/table/Table.stories.tsx +770 -914
- package/dist/components/tabs/Tabs.stories.tsx +459 -1400
- package/dist/components/tag/Tag.stories.tsx +714 -542
- package/dist/components/textarea/TextArea.stories.tsx +621 -562
- package/dist/components/thumbnail-tags/ThumbnailTags.stories.tsx +228 -148
- package/dist/components/toast/Toast.stories.tsx +452 -1333
- package/dist/components/toggle/Toggle.stories.tsx +488 -909
- package/dist/components/tooltip/Tooltip.stories.tsx +344 -1372
- package/dist/components/typography/Typography.stories.tsx +406 -89
- package/dist/hooks/use-change-state/UseChangeState.stories.tsx +309 -606
- package/dist/hooks/use-previous/UsePrevious.stories.tsx +367 -917
- package/dist/hooks/use-standalone-pagination/UseStandalonePagination.stories.tsx +639 -867
- package/dist/icons/Icons.stories.tsx +0 -12
- package/dist/icons/ai-avatar-icon/AiAvatarIcon.stories.tsx +226 -1013
- package/dist/icons/alert-icon/AlertIcon.stories.tsx +109 -929
- package/dist/icons/all-icons.tsx +124 -87
- package/dist/icons/angle-down-icon/AngleDownIcon.stories.tsx +140 -971
- package/dist/icons/apple-logo-icon/AppleLogoIcon.stories.tsx +148 -888
- package/dist/icons/arrow-box-left-icon/ArrowBoxLeftIcon.stories.tsx +135 -1019
- package/dist/icons/arrow-corner-up-left-icon/ArrowCornerUpLeftIcon.stories.tsx +137 -953
- package/dist/icons/arrow-corner-up-right-icon/ArrowCornerUpRightIcon.stories.tsx +138 -997
- package/dist/icons/arrow-left-icon/ArrowLeftIcon.stories.tsx +136 -942
- package/dist/icons/arrow-right-icon/ArrowRightIcon.stories.tsx +148 -1092
- package/dist/icons/arrow-right-up-icon/ArrowRightUpIcon.stories.tsx +146 -1211
- package/dist/icons/art-board-icon/ArtBoardIcon.stories.tsx +126 -615
- package/dist/icons/audio-bar-icon/AudioBarIcon.stories.tsx +144 -1164
- package/dist/icons/backward-ten-seconds-icon/BackwardTenSecondsIcon.stories.tsx +167 -985
- package/dist/icons/bubble-check-icon/BubbleCheckIcon.stories.tsx +122 -1179
- package/dist/icons/bubble-crossed-icon/BubbleCrossedIcon.stories.tsx +124 -1168
- package/dist/icons/bubble-sparkle-icon/BubbleSparkleIcon.stories.tsx +119 -850
- package/dist/icons/camera-icon/CameraIcon.stories.tsx +112 -1213
- package/dist/icons/capital-a-letter-icon/CapitalALetterIcon.stories.tsx +117 -934
- package/dist/icons/chevron-double-left-icon/ChevronDoubleLeftIcon.stories.tsx +160 -961
- package/dist/icons/chevron-double-right-icon/ChevronDoubleRightIcon.stories.tsx +163 -961
- package/dist/icons/chevron-down-icon/ChevronDownIcon.stories.tsx +144 -942
- package/dist/icons/chevron-left-icon/ChevronLeftIcon.stories.tsx +129 -966
- package/dist/icons/chevron-right-icon/ChevronRightIcon.stories.tsx +147 -964
- package/dist/icons/chevron-up-icon/ChevronUpIcon.stories.tsx +145 -975
- package/dist/icons/circle-tick-icon/CircleTickIcon.stories.tsx +150 -1142
- package/dist/icons/circular-play-icon/CircularPlayIcon.stories.tsx +114 -461
- package/dist/icons/coin-icon/CoinIcon.stories.tsx +124 -1322
- package/dist/icons/coin-toons-icon/CoinToonsIcon.stories.tsx +117 -1318
- package/dist/icons/column-wide-add-icon/ColumnWideAddIcon.stories.tsx +114 -903
- package/dist/icons/command-icon/CommandIcon.stories.tsx +127 -1042
- package/dist/icons/copy-icon/CopyIcon.stories.tsx +123 -962
- package/dist/icons/cross-circle-icon/CrossCircleIcon.stories.tsx +147 -999
- package/dist/icons/cross-icon/CrossIcon.stories.tsx +139 -960
- package/dist/icons/download-icon/DownloadIcon.stories.tsx +126 -820
- package/dist/icons/edit-big-icon/EditBigIcon.stories.tsx +124 -1031
- package/dist/icons/email-icon/EmailIcon.stories.tsx +115 -936
- package/dist/icons/expand-icon/ExpandIcon.stories.tsx +112 -1111
- package/dist/icons/eye-close-icon/EyeCloseIcon.stories.tsx +144 -1025
- package/dist/icons/eye-open-icon/EyeOpenIcon.stories.tsx +143 -1036
- package/dist/icons/feature-shine-icon/FeatureShineIcon.stories.tsx +127 -1011
- package/dist/icons/file-chart-icon/FileChartIcon.stories.tsx +126 -1056
- package/dist/icons/file-text-icon/FileTextIcon.stories.tsx +125 -614
- package/dist/icons/filter-bar-row-icon/FilterBarRowIcon.stories.tsx +119 -1050
- package/dist/icons/forward-ten-seconds-icon/ForwardTenSecondsIcon.stories.tsx +169 -989
- package/dist/icons/git-branch-icon/GitBranchIcon.stories.tsx +115 -1145
- package/dist/icons/git-fork-icon/GitForkIcon.stories.tsx +115 -1122
- package/dist/icons/globe-icon/GlobeIcon.stories.tsx +130 -313
- package/dist/icons/google-logo-icon/GoogleLogoIcon.stories.tsx +145 -940
- package/dist/icons/grip-vertical-icon/GripVerticalIcon.stories.tsx +119 -1174
- package/dist/icons/head-icon/HeadIcon.stories.tsx +111 -916
- package/dist/icons/heart-icon/HeartIcon.stories.tsx +120 -1019
- package/dist/icons/image-avatar-sparkle-icon/ImageAvatarSparkleIcon.stories.tsx +119 -683
- package/dist/icons/image-icon/ImageIcon.stories.tsx +105 -1121
- package/dist/icons/import-folder-icon/ImportFolderIcon.stories.tsx +111 -1192
- package/dist/icons/import-left-arrow-folder-icon/ImportLeftArrowFolderIcon.stories.tsx +136 -1256
- package/dist/icons/indian-flag-icon/IndianFlagIcon.stories.tsx +159 -962
- package/dist/icons/instagram-icon/InstagramIcon.stories.tsx +161 -1385
- package/dist/icons/layout-column-icon/LayoutColumnIcon.stories.tsx +124 -972
- package/dist/icons/layout-left-icon/LayoutLeftIcon.stories.tsx +119 -948
- package/dist/icons/layout-right-icon/LayoutRightIcon.stories.tsx +119 -942
- package/dist/icons/light-bulb-simple-icon/LightBulbSimpleIcon.stories.tsx +108 -1215
- package/dist/icons/linked-in-icon/LinkedInIcon.stories.tsx +154 -1517
- package/dist/icons/magic-book-icon/MagicBookIcon.stories.tsx +110 -1188
- package/dist/icons/magic-edit-icon/MagicEditIcon.stories.tsx +119 -678
- package/dist/icons/maintenance-icon/MaintenanceIcon.stories.tsx +123 -1184
- package/dist/icons/message-icon/MessageIcon.stories.tsx +114 -538
- package/dist/icons/minimize-icon/MinimizeIcon.stories.tsx +116 -1158
- package/dist/icons/moon-icon/MoonIcon.stories.tsx +120 -536
- package/dist/icons/move-horizontal-icon/MoveHorizontalIcon.stories.tsx +109 -1184
- package/dist/icons/move-vertical-icon/MoveVerticalIcon.stories.tsx +115 -1134
- package/dist/icons/musical-note-icon/MusicalNoteIcon.stories.tsx +119 -971
- package/dist/icons/notepad-icon/NotepadIcon.stories.tsx +111 -1100
- package/dist/icons/notes-icon/NotesIcon.stories.tsx +119 -1101
- package/dist/icons/page-search-icon/PageSearchIcon.stories.tsx +109 -1111
- package/dist/icons/page-text-icon/PageTextIcon.stories.tsx +122 -684
- package/dist/icons/paint-roll-icon/PaintRollIcon.stories.tsx +113 -954
- package/dist/icons/paper-plane-icon/PaperPlaneIcon.stories.tsx +112 -877
- package/dist/icons/pause-icon/PauseIcon.stories.tsx +113 -1000
- package/dist/icons/pencil-icon/PencilIcon.stories.tsx +115 -1070
- package/dist/icons/phone-icon/PhoneIcon.stories.tsx +115 -978
- package/dist/icons/plus-icon/PlusIcon.stories.tsx +106 -1093
- package/dist/icons/pocket-studio-icon/PocketStudioIcon.stories.tsx +107 -829
- package/dist/icons/scroll-down-icon/ScrollDownIcon.stories.tsx +102 -469
- package/dist/icons/search-icon/SearchIcon.stories.tsx +111 -1124
- package/dist/icons/setting-icon/SettingIcon.stories.tsx +107 -970
- package/dist/icons/share-icon/ShareIcon.stories.tsx +120 -1025
- package/dist/icons/shield-icon/ShieldIcon.stories.tsx +117 -931
- package/dist/icons/site-logo-icon/SiteLogoIcon.stories.tsx +137 -1104
- package/dist/icons/skip-backward-icon/SkipBackwardIcon.stories.tsx +172 -982
- package/dist/icons/skip-forward-icon/SkipForwardIcon.stories.tsx +164 -983
- package/dist/icons/sparkles-soft-icon/SparklesSoftIcon.stories.tsx +105 -958
- package/dist/icons/spinner-gradient-icon/SpinnerGradientIcon.stories.tsx +158 -580
- package/dist/icons/spinner-gradient-icon/index.tsx +6 -1
- package/dist/icons/spinner-solid-icon/SpinnerSolidIcon.stories.tsx +158 -587
- package/dist/icons/spinner-solid-icon/index.tsx +6 -1
- package/dist/icons/spinner-solid-neutral-icon/SpinnerSolidINeutralcon.stories.tsx +146 -682
- package/dist/icons/spinner-solid-neutral-icon/index.tsx +1 -1
- package/dist/icons/star-icon/StarIcon.stories.tsx +124 -904
- package/dist/icons/store-coin-icon/StoreCoinIcon.stories.tsx +112 -964
- package/dist/icons/suggestion-icon/SuggestionIcon.stories.tsx +116 -852
- package/dist/icons/sun-icon/SunIcon.stories.tsx +120 -831
- package/dist/icons/text-color-icon/TextColorIcon.stories.tsx +116 -950
- package/dist/icons/text-indicator-icon/TextIndicatorIcon.stories.tsx +123 -980
- package/dist/icons/threads-icon/ThreadsIcon.stories.tsx +156 -1427
- package/dist/icons/tick-circle-icon/TickCircleIcon.stories.tsx +146 -1142
- package/dist/icons/tick-icon/TickIcon.stories.tsx +145 -1276
- package/dist/icons/trash-icon/TrashIcon.stories.tsx +108 -933
- package/dist/icons/twitter-x-icon/TwitterXIcon.stories.tsx +157 -1402
- package/dist/icons/upload-icon/UploadIcon.stories.tsx +115 -889
- package/dist/icons/vertical-menu-icon/VerticalMenuIcon.stories.tsx +118 -984
- package/dist/icons/video-play-list-icon/VideoPlaylistIcon.stories.tsx +125 -1049
- package/dist/icons/voice-playing-icon/VoicePlayingIcon.stories.tsx +123 -1356
- package/dist/icons/volume-full-icon/VolumeFullIcon.stories.tsx +110 -1171
- package/dist/icons/volume-half-icon/VolumeHalfIcon.stories.tsx +112 -1093
- package/dist/icons/volume-off-icon/VolumeOffIcon.stories.tsx +115 -1087
- package/dist/icons/warning-icon/WarningIcon.stories.tsx +122 -1046
- package/dist/icons/youtube-icon/YoutubeIcon.stories.tsx +161 -936
- package/dist/index.cjs +84 -84
- package/dist/index.js +84 -84
- package/dist/styles/aural-all-theme.css +1222 -0
- package/dist/styles/{aural-theme.css → aural-dark-theme.css} +15 -3
- package/dist/styles/aural-light-theme.css +1047 -0
- package/package.json +1 -1
|
@@ -1,6 +1,21 @@
|
|
|
1
1
|
import React from "react"
|
|
2
2
|
import type { Meta, StoryObj } from "@storybook/react-vite"
|
|
3
3
|
|
|
4
|
+
import { AngleDownIcon } from "src/ui/icons/angle-down-icon"
|
|
5
|
+
import { ChevronDownIcon } from "src/ui/icons/chevron-down-icon"
|
|
6
|
+
import { ChevronLeftIcon } from "src/ui/icons/chevron-left-icon"
|
|
7
|
+
import { ChevronUpIcon } from "src/ui/icons/chevron-up-icon"
|
|
8
|
+
import {
|
|
9
|
+
IconColorVariations,
|
|
10
|
+
IconDefaultCanvas,
|
|
11
|
+
IconDirectionalVariations,
|
|
12
|
+
IconPlaygroundCanvas,
|
|
13
|
+
IconSizeVariations,
|
|
14
|
+
IconUsageCanvas,
|
|
15
|
+
IconUsageSection,
|
|
16
|
+
} from "src/ui/story-spec/icons/icon-story-canvas"
|
|
17
|
+
import { AuralIconDocsPage } from "src/ui/story-spec/icons/icon-story-docs-page"
|
|
18
|
+
|
|
4
19
|
import { ChevronRightIcon } from "."
|
|
5
20
|
|
|
6
21
|
const meta: Meta<typeof ChevronRightIcon> = {
|
|
@@ -11,809 +26,80 @@ const meta: Meta<typeof ChevronRightIcon> = {
|
|
|
11
26
|
backgrounds: {
|
|
12
27
|
default: "dark",
|
|
13
28
|
values: [
|
|
14
|
-
{ name: "dark", value: "
|
|
15
|
-
{ name: "darker", value: "
|
|
16
|
-
{ name: "light", value: "
|
|
29
|
+
{ name: "dark", value: "var(--color-fm-surface-primary)" },
|
|
30
|
+
{ name: "darker", value: "var(--color-fm-neutral-0)" },
|
|
31
|
+
{ name: "light", value: "var(--color-fm-neutral-1100)" },
|
|
17
32
|
],
|
|
18
33
|
},
|
|
19
34
|
docs: {
|
|
20
35
|
page: () => (
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
{
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
.docs-story {
|
|
37
|
-
background: transparent ;
|
|
38
|
-
}
|
|
39
|
-
.sbdocs {
|
|
40
|
-
background: transparent ;
|
|
41
|
-
}
|
|
42
|
-
body {
|
|
43
|
-
background: #0a0a0a ;
|
|
44
|
-
}
|
|
45
|
-
#storybook-docs {
|
|
46
|
-
background: #0a0a0a ;
|
|
47
|
-
}
|
|
48
|
-
.sbdocs-preview {
|
|
49
|
-
background: transparent ;
|
|
50
|
-
border: none ;
|
|
51
|
-
}
|
|
52
|
-
.sbdocs-h1, .sbdocs-h2, .sbdocs-h3, .sbdocs-h4, .sbdocs-h5, .sbdocs-h6 {
|
|
53
|
-
color: white ;
|
|
54
|
-
}
|
|
55
|
-
.sbdocs-p, .sbdocs-li {
|
|
56
|
-
color: rgba(255, 255, 255, 0.7) ;
|
|
57
|
-
}
|
|
58
|
-
.sbdocs-code {
|
|
59
|
-
background: rgba(255, 255, 255, 0.1) ;
|
|
60
|
-
color: rgba(168, 85, 247, 1) ;
|
|
61
|
-
border: 1px solid rgba(255, 255, 255, 0.1) ;
|
|
62
|
-
}
|
|
63
|
-
.sbdocs-pre {
|
|
64
|
-
background: rgba(0, 0, 0, 0.4) ;
|
|
65
|
-
border: 1px solid rgba(255, 255, 255, 0.1) ;
|
|
66
|
-
}
|
|
67
|
-
.sbdocs-table {
|
|
68
|
-
background: rgba(255, 255, 255, 0.05) ;
|
|
69
|
-
border: 1px solid rgba(255, 255, 255, 0.1) ;
|
|
70
|
-
}
|
|
71
|
-
.sbdocs-table th {
|
|
72
|
-
background: rgba(255, 255, 255, 0.05) ;
|
|
73
|
-
color: white ;
|
|
74
|
-
border-bottom: 1px solid rgba(255, 255, 255, 0.1) ;
|
|
75
|
-
}
|
|
76
|
-
.sbdocs-table td {
|
|
77
|
-
color: rgba(255, 255, 255, 0.7) ;
|
|
78
|
-
border-bottom: 1px solid rgba(255, 255, 255, 0.05) ;
|
|
79
|
-
}
|
|
80
|
-
`}
|
|
81
|
-
</style>
|
|
82
|
-
|
|
83
|
-
<div className="min-h-screen bg-gradient-to-br from-gray-900 via-indigo-900/20 to-gray-900">
|
|
84
|
-
{/* Header */}
|
|
85
|
-
<div className="relative overflow-hidden border-b border-white/10 bg-black/20 backdrop-blur-xl">
|
|
86
|
-
<div className="absolute inset-0 bg-gradient-to-r from-indigo-500/10 via-transparent to-cyan-500/10" />
|
|
87
|
-
<div className="relative !mx-auto max-w-7xl px-6 py-16">
|
|
88
|
-
<div className="!space-y-6 text-center">
|
|
89
|
-
<div className="!mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border border-indigo-500/30 bg-gradient-to-br from-indigo-500/20 to-cyan-500/20">
|
|
90
|
-
<ChevronRightIcon className="h-12 w-12 text-indigo-400" />
|
|
91
|
-
</div>
|
|
92
|
-
<h1 className="!text-fm-primary text-5xl font-bold">
|
|
93
|
-
ChevronRightIcon
|
|
94
|
-
</h1>
|
|
95
|
-
<p className="!mx-auto max-w-3xl text-xl leading-relaxed !text-white/70">
|
|
96
|
-
A versatile chevron right icon for navigation, next buttons,
|
|
97
|
-
and rightward direction indicators. Built with accessibility
|
|
98
|
-
in mind using Radix UI's AccessibleIcon wrapper.
|
|
99
|
-
</p>
|
|
100
|
-
|
|
101
|
-
{/* Stats */}
|
|
102
|
-
<div className="flex items-center justify-center gap-8 pt-8">
|
|
103
|
-
<div className="text-center">
|
|
104
|
-
<div className="text-3xl font-bold text-indigo-300">
|
|
105
|
-
Accessible
|
|
106
|
-
</div>
|
|
107
|
-
<div className="text-sm text-white/60">
|
|
108
|
-
Screen reader friendly
|
|
109
|
-
</div>
|
|
110
|
-
</div>
|
|
111
|
-
<div className="h-8 w-px bg-white/20" />
|
|
112
|
-
<div className="text-center">
|
|
113
|
-
<div className="text-3xl font-bold text-cyan-300">
|
|
114
|
-
Scalable
|
|
115
|
-
</div>
|
|
116
|
-
<div className="text-sm text-white/60">
|
|
117
|
-
Any size needed
|
|
118
|
-
</div>
|
|
119
|
-
</div>
|
|
120
|
-
<div className="h-8 w-px bg-white/20" />
|
|
121
|
-
<div className="text-center">
|
|
122
|
-
<div className="text-3xl font-bold text-blue-300">
|
|
123
|
-
Navigation
|
|
124
|
-
</div>
|
|
125
|
-
<div className="text-sm text-white/60">
|
|
126
|
-
Forward movement
|
|
127
|
-
</div>
|
|
128
|
-
</div>
|
|
129
|
-
</div>
|
|
130
|
-
</div>
|
|
131
|
-
</div>
|
|
132
|
-
</div>
|
|
133
|
-
|
|
134
|
-
{/* Content */}
|
|
135
|
-
<div className="!mx-auto max-w-7xl !space-y-16 px-6 py-12">
|
|
136
|
-
{/* Quick Usage */}
|
|
137
|
-
<div className="!space-y-8">
|
|
138
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
139
|
-
Quick Start
|
|
140
|
-
</h2>
|
|
141
|
-
<div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
|
|
142
|
-
<div className="!space-y-4">
|
|
143
|
-
<h3 className="text-xl font-semibold !text-indigo-300">
|
|
144
|
-
Basic Usage
|
|
145
|
-
</h3>
|
|
146
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
147
|
-
<pre className="overflow-x-auto text-sm !text-green-300">
|
|
148
|
-
{`import { ChevronRightIcon } from "@icons/chevron-right-icon"
|
|
149
|
-
|
|
150
|
-
function NextButton() {
|
|
36
|
+
<AuralIconDocsPage
|
|
37
|
+
accentToken="warning"
|
|
38
|
+
features={[
|
|
39
|
+
{
|
|
40
|
+
title: "Directional",
|
|
41
|
+
description: "Rotates to all 4 directions",
|
|
42
|
+
},
|
|
43
|
+
{ title: "currentColor", description: "Responds to text tokens" },
|
|
44
|
+
{ title: "Accessible", description: "ARIA-ready by default" },
|
|
45
|
+
]}
|
|
46
|
+
quickStart={{
|
|
47
|
+
codeExample: `import { ChevronRightIcon } from "src/ui/icons/chevron-right-icon"
|
|
48
|
+
|
|
49
|
+
function ListItem() {
|
|
151
50
|
return (
|
|
152
|
-
<
|
|
153
|
-
<span>
|
|
154
|
-
<ChevronRightIcon className="h-4 w-4 text-
|
|
155
|
-
</
|
|
51
|
+
<div className="flex items-center justify-between">
|
|
52
|
+
<span>Episodes</span>
|
|
53
|
+
<ChevronRightIcon className="h-4 w-4 text-fm-icon-inactive" />
|
|
54
|
+
</div>
|
|
156
55
|
)
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
<div className="!space-y-4">
|
|
163
|
-
<h3 className="text-xl font-semibold !text-indigo-300">
|
|
164
|
-
Live Preview
|
|
165
|
-
</h3>
|
|
166
|
-
<div className="flex h-32 items-center justify-center rounded-lg border border-white/10 bg-white/5">
|
|
167
|
-
<button className="flex items-center gap-3 rounded-lg border border-indigo-500/20 bg-indigo-500/10 px-4 py-2 transition-colors hover:bg-indigo-500/20">
|
|
168
|
-
<span className="text-white">Continue</span>
|
|
169
|
-
<ChevronRightIcon className="h-4 w-4 text-indigo-400" />
|
|
170
|
-
</button>
|
|
171
|
-
</div>
|
|
172
|
-
</div>
|
|
173
|
-
</div>
|
|
174
|
-
</div>
|
|
175
|
-
|
|
176
|
-
{/* Props Documentation */}
|
|
177
|
-
<div className="!space-y-8">
|
|
178
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
179
|
-
Props & Configuration
|
|
180
|
-
</h2>
|
|
181
|
-
|
|
182
|
-
<div className="overflow-hidden rounded-lg border border-white/10 bg-white/5">
|
|
183
|
-
<div className="bg-white/5 p-4">
|
|
184
|
-
<h3 className="text-xl font-semibold !text-white">Props</h3>
|
|
185
|
-
</div>
|
|
186
|
-
<table className="!my-0 w-full">
|
|
187
|
-
<thead className="bg-white/5">
|
|
188
|
-
<tr className="border-b border-white/10">
|
|
189
|
-
<th className="px-6 py-4 text-left text-sm font-semibold !text-white">
|
|
190
|
-
Prop
|
|
191
|
-
</th>
|
|
192
|
-
<th className="px-6 py-4 text-left text-sm font-semibold !text-white">
|
|
193
|
-
Type
|
|
194
|
-
</th>
|
|
195
|
-
<th className="px-6 py-4 text-left text-sm font-semibold !text-white">
|
|
196
|
-
Default
|
|
197
|
-
</th>
|
|
198
|
-
<th className="px-6 py-4 text-left text-sm font-semibold !text-white">
|
|
199
|
-
Description
|
|
200
|
-
</th>
|
|
201
|
-
</tr>
|
|
202
|
-
</thead>
|
|
203
|
-
<tbody>
|
|
204
|
-
{" "}
|
|
205
|
-
<tr className="!bg-black/10">
|
|
206
|
-
<td className="px-6 py-4 font-mono text-sm !text-blue-300">
|
|
207
|
-
withAccessibility
|
|
208
|
-
</td>
|
|
209
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
210
|
-
boolean
|
|
211
|
-
</td>
|
|
212
|
-
<td className="px-6 py-4 text-sm !text-white/50">
|
|
213
|
-
true
|
|
214
|
-
</td>
|
|
215
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
216
|
-
Whether to wrap the icon with accessibility feature
|
|
217
|
-
</td>
|
|
218
|
-
</tr>
|
|
219
|
-
<tr className="border-b border-white/5 !bg-black/10">
|
|
220
|
-
<td className="px-6 py-4 font-mono text-sm !text-indigo-300">
|
|
221
|
-
height
|
|
222
|
-
</td>
|
|
223
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
224
|
-
number | string
|
|
225
|
-
</td>
|
|
226
|
-
<td className="px-6 py-4 text-sm !text-white/50">24</td>
|
|
227
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
228
|
-
Height of the icon in pixels
|
|
229
|
-
</td>
|
|
230
|
-
</tr>
|
|
231
|
-
<tr className="border-b border-white/5">
|
|
232
|
-
<td className="px-6 py-4 font-mono text-sm !text-indigo-300">
|
|
233
|
-
stroke
|
|
234
|
-
</td>
|
|
235
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
236
|
-
string
|
|
237
|
-
</td>
|
|
238
|
-
<td className="px-6 py-4 text-sm !text-white/50">
|
|
239
|
-
currentColor
|
|
240
|
-
</td>
|
|
241
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
242
|
-
Stroke color of the icon
|
|
243
|
-
</td>
|
|
244
|
-
</tr>
|
|
245
|
-
<tr className="border-b border-white/5 !bg-black/10">
|
|
246
|
-
<td className="px-6 py-4 font-mono text-sm !text-indigo-300">
|
|
247
|
-
className
|
|
248
|
-
</td>
|
|
249
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
250
|
-
string
|
|
251
|
-
</td>
|
|
252
|
-
<td className="px-6 py-4 text-sm !text-white/50">-</td>
|
|
253
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
254
|
-
CSS classes for styling (use for overrides)
|
|
255
|
-
</td>
|
|
256
|
-
</tr>
|
|
257
|
-
<tr className="border-b border-white/5">
|
|
258
|
-
<td className="px-6 py-4 font-mono text-sm !text-indigo-300">
|
|
259
|
-
strokeWidth
|
|
260
|
-
</td>
|
|
261
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
262
|
-
number | string
|
|
263
|
-
</td>
|
|
264
|
-
<td className="px-6 py-4 text-sm !text-white/50">
|
|
265
|
-
1.5
|
|
266
|
-
</td>
|
|
267
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
268
|
-
Stroke width of the chevron line
|
|
269
|
-
</td>
|
|
270
|
-
</tr>
|
|
271
|
-
<tr className="!bg-black/10">
|
|
272
|
-
<td className="px-6 py-4 font-mono text-sm !text-indigo-300">
|
|
273
|
-
...svgProps
|
|
274
|
-
</td>
|
|
275
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
276
|
-
SVGProps
|
|
277
|
-
</td>
|
|
278
|
-
<td className="px-6 py-4 text-sm !text-white/50">-</td>
|
|
279
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
280
|
-
All standard SVG element props
|
|
281
|
-
</td>
|
|
282
|
-
</tr>
|
|
283
|
-
</tbody>
|
|
284
|
-
</table>
|
|
285
|
-
</div>
|
|
286
|
-
</div>
|
|
287
|
-
|
|
288
|
-
{/* Size Variations */}
|
|
289
|
-
<div className="!space-y-8">
|
|
290
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
291
|
-
Size Variations
|
|
292
|
-
</h2>
|
|
293
|
-
<div className="rounded-lg border border-white/10 bg-white/5 p-8">
|
|
294
|
-
<div className="!space-y-6">
|
|
295
|
-
<div className="grid grid-cols-1 gap-8 md:grid-cols-2">
|
|
296
|
-
<div className="!space-y-4">
|
|
297
|
-
<h3 className="text-lg font-semibold !text-indigo-300">
|
|
298
|
-
Standard Sizes
|
|
299
|
-
</h3>
|
|
300
|
-
<div className="flex items-end gap-6 rounded-lg bg-black/20 p-6">
|
|
301
|
-
<div className="text-center">
|
|
302
|
-
<ChevronRightIcon className="!mx-auto mb-2 h-3 w-3 text-indigo-400" />
|
|
303
|
-
<span className="text-xs text-white/60">12px</span>
|
|
304
|
-
</div>
|
|
305
|
-
<div className="text-center">
|
|
306
|
-
<ChevronRightIcon className="!mx-auto mb-2 h-4 w-4 text-indigo-400" />
|
|
307
|
-
<span className="text-xs text-white/60">16px</span>
|
|
308
|
-
</div>
|
|
309
|
-
<div className="text-center">
|
|
310
|
-
<ChevronRightIcon className="!mx-auto mb-2 h-5 w-5 text-indigo-400" />
|
|
311
|
-
<span className="text-xs text-white/60">20px</span>
|
|
312
|
-
</div>
|
|
313
|
-
<div className="text-center">
|
|
314
|
-
<ChevronRightIcon className="!mx-auto mb-2 h-6 w-6 text-indigo-400" />
|
|
315
|
-
<span className="text-xs text-white/60">24px</span>
|
|
316
|
-
</div>
|
|
317
|
-
<div className="text-center">
|
|
318
|
-
<ChevronRightIcon className="!mx-auto mb-2 h-8 w-8 text-indigo-400" />
|
|
319
|
-
<span className="text-xs text-white/60">32px</span>
|
|
320
|
-
</div>
|
|
321
|
-
<div className="text-center">
|
|
322
|
-
<ChevronRightIcon className="!mx-auto mb-2 h-12 w-12 text-indigo-400" />
|
|
323
|
-
<span className="text-xs text-white/60">48px</span>
|
|
324
|
-
</div>
|
|
325
|
-
</div>
|
|
326
|
-
</div>
|
|
327
|
-
|
|
328
|
-
<div className="!space-y-4">
|
|
329
|
-
<h3 className="text-lg font-semibold !text-indigo-300">
|
|
330
|
-
Code Example
|
|
331
|
-
</h3>
|
|
332
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
333
|
-
<pre className="overflow-x-auto text-sm !text-blue-300">
|
|
334
|
-
{`// Small (16px)
|
|
335
|
-
<ChevronRightIcon className="h-4 w-4 " />
|
|
336
|
-
|
|
337
|
-
// Medium (24px)
|
|
338
|
-
<ChevronRightIcon className="h-6 w-6 " />
|
|
339
|
-
|
|
340
|
-
// Large (32px)
|
|
341
|
-
<ChevronRightIcon className="h-8 w-8 " />
|
|
342
|
-
|
|
343
|
-
// Custom size
|
|
344
|
-
<ChevronRightIcon width={40} height={40} />`}
|
|
345
|
-
</pre>
|
|
346
|
-
</div>
|
|
347
|
-
</div>
|
|
348
|
-
</div>
|
|
349
|
-
</div>
|
|
350
|
-
</div>
|
|
351
|
-
</div>
|
|
352
|
-
|
|
353
|
-
{/* Color Variations */}
|
|
354
|
-
<div className="!space-y-8">
|
|
355
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
356
|
-
Color Variations
|
|
357
|
-
</h2>
|
|
358
|
-
<div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
|
|
359
|
-
<div className="!space-y-4">
|
|
360
|
-
<h3 className="text-lg font-semibold !text-indigo-300">
|
|
361
|
-
Semantic Colors
|
|
362
|
-
</h3>
|
|
363
|
-
<div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
|
|
364
|
-
<div className="flex items-center gap-4">
|
|
365
|
-
<ChevronRightIcon className="h-6 w-6 text-indigo-400" />
|
|
366
|
-
<div>
|
|
367
|
-
<div className="text-sm font-medium text-white">
|
|
368
|
-
Primary
|
|
369
|
-
</div>
|
|
370
|
-
<div className="text-xs text-white/60">
|
|
371
|
-
text-indigo-400
|
|
372
|
-
</div>
|
|
373
|
-
</div>
|
|
374
|
-
</div>
|
|
375
|
-
<div className="flex items-center gap-4">
|
|
376
|
-
<ChevronRightIcon className="h-6 w-6 text-gray-400" />
|
|
377
|
-
<div>
|
|
378
|
-
<div className="text-sm font-medium text-white">
|
|
379
|
-
Secondary
|
|
380
|
-
</div>
|
|
381
|
-
<div className="text-xs text-white/60">
|
|
382
|
-
text-gray-400
|
|
383
|
-
</div>
|
|
384
|
-
</div>
|
|
385
|
-
</div>
|
|
386
|
-
<div className="flex items-center gap-4">
|
|
387
|
-
<ChevronRightIcon className="h-6 w-6 text-cyan-400" />
|
|
388
|
-
<div>
|
|
389
|
-
<div className="text-sm font-medium text-white">
|
|
390
|
-
Accent
|
|
391
|
-
</div>
|
|
392
|
-
<div className="text-xs text-white/60">
|
|
393
|
-
text-cyan-400
|
|
394
|
-
</div>
|
|
395
|
-
</div>
|
|
396
|
-
</div>
|
|
397
|
-
<div className="flex items-center gap-4">
|
|
398
|
-
<ChevronRightIcon className="h-6 w-6 text-white/40" />
|
|
399
|
-
<div>
|
|
400
|
-
<div className="text-sm font-medium text-white">
|
|
401
|
-
Disabled
|
|
402
|
-
</div>
|
|
403
|
-
<div className="text-xs text-white/60">
|
|
404
|
-
text-white/40
|
|
405
|
-
</div>
|
|
406
|
-
</div>
|
|
407
|
-
</div>
|
|
408
|
-
</div>
|
|
409
|
-
</div>
|
|
410
|
-
|
|
411
|
-
<div className="!space-y-4">
|
|
412
|
-
<h3 className="text-lg font-semibold !text-indigo-300">
|
|
413
|
-
Custom Colors
|
|
414
|
-
</h3>
|
|
415
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
416
|
-
<pre className="overflow-x-auto text-sm !text-green-300">
|
|
417
|
-
{`// Using Tailwind classes with
|
|
418
|
-
<ChevronRightIcon className="h-6 w-6 text-indigo-400 " />
|
|
419
|
-
<ChevronRightIcon className="h-6 w-6 text-cyan-500 " />
|
|
420
|
-
|
|
421
|
-
// Using CSS custom properties
|
|
422
|
-
<ChevronRightIcon
|
|
423
|
-
className="h-6 w-6 "
|
|
424
|
-
style={{ color: 'var(--color-primary)' }}
|
|
425
|
-
/>
|
|
426
|
-
|
|
427
|
-
// Direct stroke prop
|
|
428
|
-
<ChevronRightIcon
|
|
429
|
-
width={24}
|
|
430
|
-
height={24}
|
|
431
|
-
stroke="#4f46e5"
|
|
432
|
-
/>`}
|
|
433
|
-
</pre>
|
|
434
|
-
</div>
|
|
435
|
-
</div>
|
|
436
|
-
</div>
|
|
56
|
+
}`,
|
|
57
|
+
livePreview: (
|
|
58
|
+
<div className="text-fm-primary font-fm-text flex w-48 items-center justify-between gap-2 text-sm">
|
|
59
|
+
<span>Episodes</span>
|
|
60
|
+
<ChevronRightIcon className="text-fm-icon-inactive h-4 w-4" />
|
|
437
61
|
</div>
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
<ChevronRightIcon className="h-4 w-4 " />
|
|
468
|
-
</button>
|
|
469
|
-
|
|
470
|
-
// Navigation button
|
|
471
|
-
<button className="flex items-center gap-2 bg-white/5 border border-white/20 px-4 py-2 rounded-lg">
|
|
472
|
-
Next Page
|
|
473
|
-
<ChevronRightIcon className="h-4 w-4 " />
|
|
474
|
-
</button>`}
|
|
475
|
-
</pre>
|
|
476
|
-
</div>
|
|
477
|
-
</div>
|
|
478
|
-
</div>
|
|
479
|
-
|
|
480
|
-
{/* Breadcrumb Navigation */}
|
|
481
|
-
<div className="!space-y-4">
|
|
482
|
-
<h3 className="text-lg font-semibold !text-indigo-300">
|
|
483
|
-
Breadcrumb Navigation
|
|
484
|
-
</h3>
|
|
485
|
-
<div className="!space-y-4">
|
|
486
|
-
<nav className="flex items-center gap-2 text-sm">
|
|
487
|
-
<button className="text-indigo-400 hover:text-indigo-300">
|
|
488
|
-
Dashboard
|
|
489
|
-
</button>
|
|
490
|
-
<ChevronRightIcon className="h-3 w-3 text-white/40" />
|
|
491
|
-
<button className="text-indigo-400 hover:text-indigo-300">
|
|
492
|
-
Projects
|
|
493
|
-
</button>
|
|
494
|
-
<ChevronRightIcon className="h-3 w-3 text-white/40" />
|
|
495
|
-
<span className="text-white">Current Page</span>
|
|
496
|
-
</nav>
|
|
497
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
498
|
-
<pre className="overflow-x-auto text-sm !text-green-300">
|
|
499
|
-
{`// Breadcrumb with separators
|
|
500
|
-
<nav className="flex items-center gap-2 text-sm">
|
|
501
|
-
<button className="text-indigo-400 hover:text-indigo-300">
|
|
502
|
-
Dashboard
|
|
503
|
-
</button>
|
|
504
|
-
<ChevronRightIcon className="h-3 w-3 text-white/40 " />
|
|
505
|
-
<button className="text-indigo-400 hover:text-indigo-300">
|
|
506
|
-
Projects
|
|
507
|
-
</button>
|
|
508
|
-
<ChevronRightIcon className="h-3 w-3 text-white/40 " />
|
|
509
|
-
<span className="text-white">Current Page</span>
|
|
510
|
-
</nav>`}
|
|
511
|
-
</pre>
|
|
512
|
-
</div>
|
|
513
|
-
</div>
|
|
514
|
-
</div>
|
|
515
|
-
|
|
516
|
-
{/* Pagination */}
|
|
517
|
-
<div className="!space-y-4">
|
|
518
|
-
<h3 className="text-lg font-semibold !text-indigo-300">
|
|
519
|
-
Pagination Controls
|
|
520
|
-
</h3>
|
|
521
|
-
<div className="!space-y-4">
|
|
522
|
-
<div className="flex items-center gap-2">
|
|
523
|
-
<button className="flex items-center justify-center rounded-lg border border-white/20 bg-white/5 p-2 text-white hover:bg-white/10">
|
|
524
|
-
<ChevronRightIcon className="h-4 w-4 rotate-180" />
|
|
525
|
-
</button>
|
|
526
|
-
<div className="flex items-center gap-1">
|
|
527
|
-
<button className="rounded-lg border border-indigo-500/30 bg-indigo-500/20 px-3 py-1 text-indigo-200">
|
|
528
|
-
1
|
|
529
|
-
</button>
|
|
530
|
-
<button className="rounded-lg px-3 py-1 text-white/60 hover:bg-white/10">
|
|
531
|
-
2
|
|
532
|
-
</button>
|
|
533
|
-
<button className="rounded-lg px-3 py-1 text-white/60 hover:bg-white/10">
|
|
534
|
-
3
|
|
535
|
-
</button>
|
|
536
|
-
</div>
|
|
537
|
-
<button className="flex items-center justify-center rounded-lg border border-white/20 bg-white/5 p-2 text-white hover:bg-white/10">
|
|
538
|
-
<ChevronRightIcon className="h-4 w-4" />
|
|
539
|
-
</button>
|
|
540
|
-
</div>
|
|
541
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
542
|
-
<pre className="overflow-x-auto text-sm !text-green-300">
|
|
543
|
-
{`// Previous button (rotated right icon)
|
|
544
|
-
<button className="flex items-center justify-center bg-white/5 border border-white/20 p-2 rounded-lg">
|
|
545
|
-
<ChevronRightIcon className="h-4 w-4 rotate-180 " />
|
|
546
|
-
</button>
|
|
547
|
-
|
|
548
|
-
// Next button
|
|
549
|
-
<button className="flex items-center justify-center bg-white/5 border border-white/20 p-2 rounded-lg">
|
|
550
|
-
<ChevronRightIcon className="h-4 w-4 " />
|
|
551
|
-
</button>`}
|
|
552
|
-
</pre>
|
|
553
|
-
</div>
|
|
554
|
-
</div>
|
|
555
|
-
</div>
|
|
556
|
-
|
|
557
|
-
{/* Dropdown Menu */}
|
|
558
|
-
<div className="!space-y-4">
|
|
559
|
-
<h3 className="text-lg font-semibold !text-indigo-300">
|
|
560
|
-
Dropdown & Menu Items
|
|
561
|
-
</h3>
|
|
562
|
-
<div className="!space-y-4">
|
|
563
|
-
<div className="w-64 rounded-lg border border-white/10 bg-white/5 p-2">
|
|
564
|
-
<div className="space-y-1">
|
|
565
|
-
<button className="flex w-full items-center justify-between rounded px-3 py-2 text-left text-white hover:bg-white/10">
|
|
566
|
-
<span>Account Settings</span>
|
|
567
|
-
<ChevronRightIcon className="h-4 w-4 text-white/60" />
|
|
568
|
-
</button>
|
|
569
|
-
<button className="flex w-full items-center justify-between rounded px-3 py-2 text-left text-white hover:bg-white/10">
|
|
570
|
-
<span>Privacy & Security</span>
|
|
571
|
-
<ChevronRightIcon className="h-4 w-4 text-white/60" />
|
|
572
|
-
</button>
|
|
573
|
-
<button className="flex w-full items-center justify-between rounded px-3 py-2 text-left text-white hover:bg-white/10">
|
|
574
|
-
<span>Notifications</span>
|
|
575
|
-
<ChevronRightIcon className="h-4 w-4 text-white/60" />
|
|
576
|
-
</button>
|
|
577
|
-
</div>
|
|
578
|
-
</div>
|
|
579
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
580
|
-
<pre className="overflow-x-auto text-sm !text-green-300">
|
|
581
|
-
{`// Menu item with submenu indicator
|
|
582
|
-
<button className="flex w-full items-center justify-between rounded px-3 py-2 text-left hover:bg-white/10">
|
|
583
|
-
<span>Account Settings</span>
|
|
584
|
-
<ChevronRightIcon className="h-4 w-4 text-white/60 " />
|
|
585
|
-
</button>
|
|
586
|
-
|
|
587
|
-
// Navigation menu item
|
|
588
|
-
<button className="flex w-full items-center justify-between rounded px-3 py-2 text-left hover:bg-white/10">
|
|
589
|
-
<span>Privacy & Security</span>
|
|
590
|
-
<ChevronRightIcon className="h-4 w-4 text-white/60 " />
|
|
591
|
-
</button>`}
|
|
592
|
-
</pre>
|
|
593
|
-
</div>
|
|
594
|
-
</div>
|
|
595
|
-
</div>
|
|
596
|
-
</div>
|
|
597
|
-
</div>
|
|
598
|
-
|
|
599
|
-
{/* Accessibility */}
|
|
600
|
-
<div className="!space-y-8">
|
|
601
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
602
|
-
Accessibility Features
|
|
603
|
-
</h2>
|
|
604
|
-
<div className="grid grid-cols-1 gap-8 md:grid-cols-2">
|
|
605
|
-
<div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
|
|
606
|
-
<h3 className="text-lg font-semibold !text-green-300">
|
|
607
|
-
✅ Built-in Features
|
|
608
|
-
</h3>
|
|
609
|
-
<ul className="!space-y-2 text-sm !text-white/70">
|
|
610
|
-
<li className="!text-white/70">
|
|
611
|
-
Uses Radix UI AccessibleIcon wrapper
|
|
612
|
-
</li>
|
|
613
|
-
<li className="!text-white/70">
|
|
614
|
-
Provides screen reader label "Chevron Right icon"
|
|
615
|
-
</li>
|
|
616
|
-
<li className="!text-white/70">
|
|
617
|
-
Supports keyboard navigation when interactive
|
|
618
|
-
</li>
|
|
619
|
-
<li className="!text-white/70">
|
|
620
|
-
Maintains proper color contrast ratios
|
|
621
|
-
</li>
|
|
622
|
-
<li className="!text-white/70">
|
|
623
|
-
Scales with user's font size preferences
|
|
624
|
-
</li>
|
|
625
|
-
</ul>
|
|
626
|
-
</div>
|
|
627
|
-
|
|
628
|
-
<div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
|
|
629
|
-
<h3 className="text-lg font-semibold !text-indigo-300">
|
|
630
|
-
💡 Best Practices
|
|
631
|
-
</h3>
|
|
632
|
-
<ul className="!space-y-2 text-sm text-white/70">
|
|
633
|
-
<li className="!text-white/70">
|
|
634
|
-
Use descriptive aria-labels for navigation buttons
|
|
635
|
-
</li>
|
|
636
|
-
<li className="!text-white/70">
|
|
637
|
-
Provide keyboard shortcuts for common actions
|
|
638
|
-
</li>
|
|
639
|
-
<li className="!text-white/70">
|
|
640
|
-
Ensure sufficient touch target size (44px minimum)
|
|
641
|
-
</li>
|
|
642
|
-
<li className="!text-white/70">
|
|
643
|
-
Add focus states for interactive elements
|
|
644
|
-
</li>
|
|
645
|
-
<li className="!text-white/70">
|
|
646
|
-
Consider disabled states when navigation unavailable
|
|
647
|
-
</li>
|
|
648
|
-
</ul>
|
|
649
|
-
</div>
|
|
650
|
-
</div>
|
|
651
|
-
|
|
652
|
-
<div className="rounded-lg border border-white/10 bg-white/5 p-6">
|
|
653
|
-
<h3 className="mb-4 text-lg font-semibold !text-indigo-300">
|
|
654
|
-
Proper ARIA Implementation
|
|
655
|
-
</h3>
|
|
656
|
-
<div className="grid grid-cols-1 gap-6 lg:grid-cols-2">
|
|
657
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
658
|
-
<pre className="overflow-x-auto text-sm !text-blue-300">
|
|
659
|
-
{`// Navigation button with proper ARIA
|
|
660
|
-
<button
|
|
661
|
-
aria-label="Go to next page"
|
|
662
|
-
className="flex items-center gap-2"
|
|
663
|
-
>
|
|
664
|
-
Next
|
|
665
|
-
<ChevronRightIcon className="h-4 w-4 " />
|
|
666
|
-
</button>
|
|
667
|
-
|
|
668
|
-
// Pagination with context
|
|
669
|
-
<button
|
|
670
|
-
aria-label="Go to next page"
|
|
671
|
-
disabled={currentPage === totalPages}
|
|
672
|
-
>
|
|
673
|
-
<ChevronRightIcon className="h-4 w-4 " />
|
|
674
|
-
</button>
|
|
675
|
-
|
|
676
|
-
// Menu item with submenu
|
|
677
|
-
<button
|
|
678
|
-
aria-label="Account Settings submenu"
|
|
679
|
-
aria-expanded={isOpen}
|
|
680
|
-
aria-haspopup="menu"
|
|
681
|
-
>
|
|
682
|
-
Account Settings
|
|
683
|
-
<ChevronRightIcon
|
|
684
|
-
className={cn(
|
|
685
|
-
"h-4 w-4 transition-transform ",
|
|
686
|
-
isOpen && "rotate-90"
|
|
687
|
-
)}
|
|
688
|
-
/>
|
|
689
|
-
</button>`}
|
|
690
|
-
</pre>
|
|
691
|
-
</div>
|
|
692
|
-
<div className="!space-y-4">
|
|
693
|
-
<p className="text-sm !text-white/70">
|
|
694
|
-
Always provide context-appropriate ARIA labels for
|
|
695
|
-
navigation elements. The chevron direction should
|
|
696
|
-
indicate the intended navigation flow.
|
|
697
|
-
</p>
|
|
698
|
-
<div className="rounded-lg border border-indigo-500/20 bg-indigo-500/10 p-4">
|
|
699
|
-
<div className="flex items-center gap-2 text-sm text-indigo-200">
|
|
700
|
-
<ChevronRightIcon className="h-4 w-4" />
|
|
701
|
-
<span>
|
|
702
|
-
Consider the user's reading direction and expected
|
|
703
|
-
flow
|
|
704
|
-
</span>
|
|
705
|
-
</div>
|
|
706
|
-
</div>
|
|
707
|
-
</div>
|
|
708
|
-
</div>
|
|
709
|
-
</div>
|
|
710
|
-
</div>
|
|
711
|
-
|
|
712
|
-
{/* Related Icons */}
|
|
713
|
-
<div className="!space-y-8">
|
|
714
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
715
|
-
Related Icons
|
|
716
|
-
</h2>
|
|
717
|
-
<div className="grid grid-cols-2 gap-6 md:grid-cols-4">
|
|
718
|
-
<div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
|
|
719
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-purple-500/20">
|
|
720
|
-
<span className="!text-2xl !text-white">←</span>
|
|
721
|
-
</div>
|
|
722
|
-
<div>
|
|
723
|
-
<div className="font-medium text-white">
|
|
724
|
-
ChevronLeftIcon
|
|
725
|
-
</div>
|
|
726
|
-
<div className="text-xs text-white/60">
|
|
727
|
-
Left direction
|
|
728
|
-
</div>
|
|
729
|
-
</div>
|
|
730
|
-
</div>
|
|
731
|
-
<div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
|
|
732
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-pink-500/20">
|
|
733
|
-
<span className="!text-2xl !text-white">↑</span>
|
|
734
|
-
</div>
|
|
735
|
-
<div>
|
|
736
|
-
<div className="font-medium text-white">
|
|
737
|
-
ChevronUpIcon
|
|
738
|
-
</div>
|
|
739
|
-
<div className="text-xs text-white/60">
|
|
740
|
-
Upward direction
|
|
741
|
-
</div>
|
|
742
|
-
</div>
|
|
743
|
-
</div>
|
|
744
|
-
<div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
|
|
745
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-indigo-500/20">
|
|
746
|
-
<span className="!text-2xl !text-white">↓</span>
|
|
747
|
-
</div>
|
|
748
|
-
<div>
|
|
749
|
-
<div className="font-medium text-white">
|
|
750
|
-
ChevronDownIcon
|
|
751
|
-
</div>
|
|
752
|
-
<div className="text-xs text-white/60">
|
|
753
|
-
Downward direction
|
|
754
|
-
</div>
|
|
755
|
-
</div>
|
|
756
|
-
</div>
|
|
757
|
-
<div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
|
|
758
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-cyan-500/20">
|
|
759
|
-
<span className="!text-2xl !text-white">→</span>
|
|
760
|
-
</div>
|
|
761
|
-
<div>
|
|
762
|
-
<div className="font-medium text-white">
|
|
763
|
-
ArrowRightIcon
|
|
764
|
-
</div>
|
|
765
|
-
<div className="text-xs text-white/60">Arrow variant</div>
|
|
766
|
-
</div>
|
|
767
|
-
</div>
|
|
768
|
-
</div>
|
|
769
|
-
</div>
|
|
770
|
-
</div>
|
|
771
|
-
|
|
772
|
-
{/* Footer */}
|
|
773
|
-
<div className="border-t border-white/10 bg-black/20 backdrop-blur-xl">
|
|
774
|
-
<div className="!mx-auto max-w-7xl px-6 py-8">
|
|
775
|
-
<div className="!space-y-4 text-center">
|
|
776
|
-
<p className="!text-white/60">
|
|
777
|
-
ChevronRightIcon is part of the Aural UI icon library, built
|
|
778
|
-
with accessibility and intuitive navigation in mind.
|
|
779
|
-
</p>
|
|
780
|
-
<p className="text-sm !text-white/40">
|
|
781
|
-
All icons use Radix UI's AccessibleIcon for screen reader
|
|
782
|
-
compatibility and follow WCAG guidelines.
|
|
783
|
-
</p>
|
|
784
|
-
</div>
|
|
785
|
-
</div>
|
|
786
|
-
</div>
|
|
787
|
-
</div>
|
|
788
|
-
</>
|
|
62
|
+
),
|
|
63
|
+
}}
|
|
64
|
+
relatedIcons={[
|
|
65
|
+
{
|
|
66
|
+
name: "ChevronLeftIcon",
|
|
67
|
+
description: "Points left",
|
|
68
|
+
icon: ChevronLeftIcon,
|
|
69
|
+
accentToken: "info",
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
name: "ChevronDownIcon",
|
|
73
|
+
description: "Points downward",
|
|
74
|
+
icon: ChevronDownIcon,
|
|
75
|
+
accentToken: "positive",
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
name: "ChevronUpIcon",
|
|
79
|
+
description: "Points upward",
|
|
80
|
+
icon: ChevronUpIcon,
|
|
81
|
+
accentToken: "warning",
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
name: "AngleDownIcon",
|
|
85
|
+
description: "Softer angle chevron",
|
|
86
|
+
icon: AngleDownIcon,
|
|
87
|
+
accentToken: "negative",
|
|
88
|
+
},
|
|
89
|
+
]}
|
|
90
|
+
/>
|
|
789
91
|
),
|
|
790
92
|
},
|
|
791
93
|
},
|
|
792
94
|
tags: ["autodocs"],
|
|
793
95
|
argTypes: {
|
|
794
|
-
width: {
|
|
795
|
-
control: { type: "range", min: 8, max: 96, step: 2 },
|
|
796
|
-
description: "Width of the icon in pixels",
|
|
797
|
-
withAccessibility: {
|
|
798
|
-
control: "boolean",
|
|
799
|
-
description: "Whether to wrap the icon with accessibility features",
|
|
800
|
-
},
|
|
801
|
-
},
|
|
802
|
-
height: {
|
|
803
|
-
control: { type: "range", min: 8, max: 96, step: 2 },
|
|
804
|
-
description: "Height of the icon in pixels",
|
|
805
|
-
},
|
|
806
|
-
stroke: {
|
|
807
|
-
control: "color",
|
|
808
|
-
description: "Stroke color of the icon",
|
|
809
|
-
},
|
|
810
|
-
strokeWidth: {
|
|
811
|
-
control: { type: "range", min: 0.5, max: 3, step: 0.1 },
|
|
812
|
-
description: "Stroke width of the chevron line",
|
|
813
|
-
},
|
|
814
96
|
className: {
|
|
815
97
|
control: "text",
|
|
816
|
-
description: "CSS classes
|
|
98
|
+
description: "CSS classes including size and color token",
|
|
99
|
+
},
|
|
100
|
+
withAccessibility: {
|
|
101
|
+
control: "boolean",
|
|
102
|
+
description: "Wrap with accessibility label",
|
|
817
103
|
},
|
|
818
104
|
},
|
|
819
105
|
}
|
|
@@ -821,209 +107,106 @@ function NextButton() {
|
|
|
821
107
|
export default meta
|
|
822
108
|
type Story = StoryObj<typeof ChevronRightIcon>
|
|
823
109
|
|
|
824
|
-
// Story parameters for consistent dark theme
|
|
825
|
-
const storyParameters = {
|
|
826
|
-
backgrounds: {
|
|
827
|
-
default: "dark",
|
|
828
|
-
values: [
|
|
829
|
-
{ name: "dark", value: "#0a0a0a" },
|
|
830
|
-
{ name: "darker", value: "#000000" },
|
|
831
|
-
],
|
|
832
|
-
},
|
|
833
|
-
}
|
|
834
|
-
|
|
835
110
|
export const Default: Story = {
|
|
836
111
|
args: {
|
|
837
|
-
|
|
838
|
-
height: 24,
|
|
839
|
-
className: "text-indigo-400 ",
|
|
112
|
+
className: "h-6 w-6 text-fm-icon-active",
|
|
840
113
|
withAccessibility: true,
|
|
841
114
|
},
|
|
842
|
-
parameters: storyParameters,
|
|
843
115
|
render: (args) => (
|
|
844
|
-
<
|
|
116
|
+
<IconDefaultCanvas>
|
|
845
117
|
<ChevronRightIcon {...args} />
|
|
846
|
-
</
|
|
118
|
+
</IconDefaultCanvas>
|
|
847
119
|
),
|
|
848
120
|
}
|
|
849
121
|
|
|
850
122
|
export const SizeVariations: Story = {
|
|
851
|
-
|
|
852
|
-
...storyParameters,
|
|
853
|
-
docs: {
|
|
854
|
-
description: {
|
|
855
|
-
story:
|
|
856
|
-
"ChevronRightIcon in different sizes, from small UI elements to large displays.",
|
|
857
|
-
},
|
|
858
|
-
},
|
|
859
|
-
},
|
|
860
|
-
render: () => (
|
|
861
|
-
<div className="flex h-64 min-h-dvh items-center justify-center gap-8 rounded-lg bg-gradient-to-br from-gray-900 to-gray-800 p-8">
|
|
862
|
-
<div className="text-center">
|
|
863
|
-
<ChevronRightIcon className="!mx-auto mb-2 h-3 w-3 text-indigo-400" />
|
|
864
|
-
<span className="text-xs text-white/60">12px</span>
|
|
865
|
-
</div>
|
|
866
|
-
<div className="text-center">
|
|
867
|
-
<ChevronRightIcon className="!mx-auto mb-2 h-4 w-4 text-indigo-400" />
|
|
868
|
-
<span className="text-xs text-white/60">16px</span>
|
|
869
|
-
</div>
|
|
870
|
-
<div className="text-center">
|
|
871
|
-
<ChevronRightIcon className="!mx-auto mb-2 h-5 w-5 text-indigo-400" />
|
|
872
|
-
<span className="text-xs text-white/60">20px</span>
|
|
873
|
-
</div>
|
|
874
|
-
<div className="text-center">
|
|
875
|
-
<ChevronRightIcon className="!mx-auto mb-2 h-6 w-6 text-indigo-400" />
|
|
876
|
-
<span className="text-xs text-white/60">24px</span>
|
|
877
|
-
</div>
|
|
878
|
-
<div className="text-center">
|
|
879
|
-
<ChevronRightIcon className="!mx-auto mb-2 h-8 w-8 text-indigo-400" />
|
|
880
|
-
<span className="text-xs text-white/60">32px</span>
|
|
881
|
-
</div>
|
|
882
|
-
<div className="text-center">
|
|
883
|
-
<ChevronRightIcon className="!mx-auto mb-2 h-12 w-12 text-indigo-400" />
|
|
884
|
-
<span className="text-xs text-white/60">48px</span>
|
|
885
|
-
</div>
|
|
886
|
-
</div>
|
|
887
|
-
),
|
|
123
|
+
render: () => <IconSizeVariations icon={ChevronRightIcon} />,
|
|
888
124
|
}
|
|
889
125
|
|
|
890
126
|
export const ColorVariations: Story = {
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
story:
|
|
896
|
-
"ChevronRightIcon in different semantic colors for various forward navigation contexts.",
|
|
897
|
-
},
|
|
898
|
-
},
|
|
899
|
-
},
|
|
127
|
+
render: () => <IconColorVariations icon={ChevronRightIcon} />,
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
export const DirectionalVariations: Story = {
|
|
900
131
|
render: () => (
|
|
901
|
-
<
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
<div className="text-sm font-medium text-white">Secondary</div>
|
|
914
|
-
<div className="text-xs text-gray-400">text-gray-400</div>
|
|
915
|
-
</div>
|
|
916
|
-
<div className="text-center">
|
|
917
|
-
<div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-cyan-500/30 bg-cyan-500/20">
|
|
918
|
-
<ChevronRightIcon className="h-8 w-8 text-cyan-400" />
|
|
919
|
-
</div>
|
|
920
|
-
<div className="text-sm font-medium text-white">Accent</div>
|
|
921
|
-
<div className="text-xs text-cyan-400">text-cyan-400</div>
|
|
922
|
-
</div>
|
|
923
|
-
<div className="text-center">
|
|
924
|
-
<div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-white/10 bg-white/5">
|
|
925
|
-
<ChevronRightIcon className="h-8 w-8 text-white/40" />
|
|
926
|
-
</div>
|
|
927
|
-
<div className="text-sm font-medium text-white">Disabled</div>
|
|
928
|
-
<div className="text-xs text-white/40">text-white/40</div>
|
|
929
|
-
</div>
|
|
930
|
-
</div>
|
|
132
|
+
<IconDirectionalVariations
|
|
133
|
+
icon={ChevronRightIcon}
|
|
134
|
+
directions={[
|
|
135
|
+
{ label: "Right", className: "h-8 w-8 text-fm-icon-active" },
|
|
136
|
+
{
|
|
137
|
+
label: "Down",
|
|
138
|
+
className: "h-8 w-8 text-fm-icon-active rotate-90",
|
|
139
|
+
},
|
|
140
|
+
{ label: "Left", className: "h-8 w-8 text-fm-icon-active rotate-180" },
|
|
141
|
+
{ label: "Up", className: "h-8 w-8 text-fm-icon-active -rotate-90" },
|
|
142
|
+
]}
|
|
143
|
+
/>
|
|
931
144
|
),
|
|
932
145
|
}
|
|
933
146
|
|
|
934
147
|
export const UsageExamples: Story = {
|
|
935
|
-
parameters: {
|
|
936
|
-
...storyParameters,
|
|
937
|
-
docs: {
|
|
938
|
-
description: {
|
|
939
|
-
story:
|
|
940
|
-
"Real-world usage examples showing ChevronRightIcon in different forward navigation contexts.",
|
|
941
|
-
},
|
|
942
|
-
},
|
|
943
|
-
},
|
|
944
148
|
render: () => (
|
|
945
|
-
<
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
</button>
|
|
958
|
-
</div>
|
|
959
|
-
</div>
|
|
960
|
-
|
|
961
|
-
{/* Pagination */}
|
|
962
|
-
<div className="!space-y-2">
|
|
963
|
-
<h3 className="text-sm font-medium text-white">Pagination Controls</h3>
|
|
964
|
-
<div className="flex items-center gap-2">
|
|
965
|
-
<button className="flex items-center justify-center rounded-lg border border-white/20 bg-white/5 p-2 text-white hover:bg-white/10">
|
|
966
|
-
<ChevronRightIcon className="h-4 w-4 rotate-180" />
|
|
967
|
-
</button>
|
|
968
|
-
<div className="flex items-center gap-1">
|
|
969
|
-
<button className="rounded-lg border border-indigo-500/30 bg-indigo-500/20 px-3 py-1 text-indigo-200">
|
|
970
|
-
1
|
|
971
|
-
</button>
|
|
972
|
-
<button className="rounded-lg px-3 py-1 text-white/60 hover:bg-white/10">
|
|
973
|
-
2
|
|
974
|
-
</button>
|
|
975
|
-
<button className="rounded-lg px-3 py-1 text-white/60 hover:bg-white/10">
|
|
976
|
-
3
|
|
149
|
+
<IconUsageCanvas>
|
|
150
|
+
<IconUsageSection title="List Navigation">
|
|
151
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary w-full max-w-sm space-y-px overflow-hidden rounded-xl border">
|
|
152
|
+
{["My Podcasts", "Downloaded", "History"].map((item) => (
|
|
153
|
+
<button
|
|
154
|
+
key={item}
|
|
155
|
+
className="border-fm-divider-secondary flex w-full items-center justify-between border-b px-4 py-3 last:border-b-0"
|
|
156
|
+
>
|
|
157
|
+
<span className="text-fm-primary font-fm-text text-sm">
|
|
158
|
+
{item}
|
|
159
|
+
</span>
|
|
160
|
+
<ChevronRightIcon className="text-fm-icon-inactive h-4 w-4" />
|
|
977
161
|
</button>
|
|
162
|
+
))}
|
|
163
|
+
</div>
|
|
164
|
+
</IconUsageSection>
|
|
165
|
+
|
|
166
|
+
<IconUsageSection title="Breadcrumb Separator">
|
|
167
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex w-full max-w-sm items-center gap-1 rounded-xl border px-4 py-3">
|
|
168
|
+
<span className="text-fm-secondary font-fm-text text-sm">Home</span>
|
|
169
|
+
<ChevronRightIcon className="text-fm-icon-inactive h-3 w-3" />
|
|
170
|
+
<span className="text-fm-secondary font-fm-text text-sm">
|
|
171
|
+
Library
|
|
172
|
+
</span>
|
|
173
|
+
<ChevronRightIcon className="text-fm-icon-inactive h-3 w-3" />
|
|
174
|
+
<span className="text-fm-primary font-fm-text text-sm">Podcasts</span>
|
|
175
|
+
</div>
|
|
176
|
+
</IconUsageSection>
|
|
177
|
+
|
|
178
|
+
<IconUsageSection title="Expandable Row">
|
|
179
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary w-full max-w-sm overflow-hidden rounded-xl border">
|
|
180
|
+
<div className="border-fm-divider-secondary flex items-center justify-between border-b px-4 py-3">
|
|
181
|
+
<span className="text-fm-primary font-fm-text text-sm font-medium">
|
|
182
|
+
Season 1
|
|
183
|
+
</span>
|
|
184
|
+
<ChevronRightIcon className="text-fm-icon-active h-4 w-4 rotate-90 transition-transform" />
|
|
978
185
|
</div>
|
|
979
|
-
|
|
980
|
-
<
|
|
981
|
-
|
|
186
|
+
{["Episode 1", "Episode 2"].map((ep) => (
|
|
187
|
+
<div
|
|
188
|
+
key={ep}
|
|
189
|
+
className="border-fm-divider-secondary border-b px-4 py-2.5 last:border-b-0"
|
|
190
|
+
>
|
|
191
|
+
<span className="text-fm-secondary font-fm-text text-sm">
|
|
192
|
+
{ep}
|
|
193
|
+
</span>
|
|
194
|
+
</div>
|
|
195
|
+
))}
|
|
982
196
|
</div>
|
|
983
|
-
</
|
|
984
|
-
|
|
985
|
-
{/* Breadcrumb */}
|
|
986
|
-
<div className="!space-y-2">
|
|
987
|
-
<h3 className="text-sm font-medium text-white">
|
|
988
|
-
Breadcrumb Navigation
|
|
989
|
-
</h3>
|
|
990
|
-
<nav className="flex items-center gap-2 text-sm">
|
|
991
|
-
<button className="text-indigo-400 hover:text-indigo-300">
|
|
992
|
-
Dashboard
|
|
993
|
-
</button>
|
|
994
|
-
<ChevronRightIcon className="h-3 w-3 text-white/40" />
|
|
995
|
-
<button className="text-indigo-400 hover:text-indigo-300">
|
|
996
|
-
Projects
|
|
997
|
-
</button>
|
|
998
|
-
<ChevronRightIcon className="h-3 w-3 text-white/40" />
|
|
999
|
-
<span className="text-white">Current Page</span>
|
|
1000
|
-
</nav>
|
|
1001
|
-
</div>
|
|
1002
|
-
</div>
|
|
197
|
+
</IconUsageSection>
|
|
198
|
+
</IconUsageCanvas>
|
|
1003
199
|
),
|
|
1004
200
|
}
|
|
1005
201
|
|
|
1006
202
|
export const Playground: Story = {
|
|
1007
|
-
parameters: {
|
|
1008
|
-
...storyParameters,
|
|
1009
|
-
docs: {
|
|
1010
|
-
description: {
|
|
1011
|
-
story:
|
|
1012
|
-
"Interactive playground to experiment with different ChevronRightIcon configurations.",
|
|
1013
|
-
},
|
|
1014
|
-
},
|
|
1015
|
-
},
|
|
1016
203
|
args: {
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
className: "text-indigo-400 ",
|
|
1020
|
-
strokeWidth: 1.5,
|
|
204
|
+
className: "h-8 w-8 text-fm-icon-active",
|
|
205
|
+
withAccessibility: true,
|
|
1021
206
|
},
|
|
1022
207
|
render: (args) => (
|
|
1023
|
-
<
|
|
1024
|
-
<
|
|
1025
|
-
|
|
1026
|
-
</div>
|
|
1027
|
-
</div>
|
|
208
|
+
<IconPlaygroundCanvas>
|
|
209
|
+
<ChevronRightIcon {...args} />
|
|
210
|
+
</IconPlaygroundCanvas>
|
|
1028
211
|
),
|
|
1029
212
|
}
|