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