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 ChevronDoubleRightIcon> = {
|
|
|
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 ChevronDoubleRightIcon> = {
|
|
|
40
40
|
background: transparent ;
|
|
41
41
|
}
|
|
42
42
|
body {
|
|
43
|
-
background:
|
|
43
|
+
background: var(--color-fm-surface-primary) ;
|
|
44
44
|
}
|
|
45
45
|
#storybook-docs {
|
|
46
|
-
background:
|
|
46
|
+
background: var(--color-fm-surface-primary) ;
|
|
47
47
|
}
|
|
48
48
|
.sbdocs-preview {
|
|
49
49
|
background: transparent ;
|
|
50
50
|
border: none ;
|
|
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) ;
|
|
54
54
|
}
|
|
55
55
|
.sbdocs-p, .sbdocs-li {
|
|
56
|
-
color:
|
|
56
|
+
color: var(--color-fm-secondary) ;
|
|
57
57
|
}
|
|
58
58
|
.sbdocs-code {
|
|
59
|
-
background:
|
|
60
|
-
color:
|
|
61
|
-
border: 1px solid
|
|
59
|
+
background: var(--color-fm-surface-secondary) ;
|
|
60
|
+
color: var(--color-fm-secondary-500) ;
|
|
61
|
+
border: 1px solid var(--color-fm-divider-secondary) ;
|
|
62
62
|
}
|
|
63
63
|
.sbdocs-pre {
|
|
64
|
-
background:
|
|
65
|
-
border: 1px solid
|
|
64
|
+
background: var(--color-fm-surface-secondary) ;
|
|
65
|
+
border: 1px solid var(--color-fm-divider-secondary) ;
|
|
66
66
|
}
|
|
67
67
|
.sbdocs-table {
|
|
68
|
-
background:
|
|
69
|
-
border: 1px solid
|
|
68
|
+
background: var(--color-fm-surface-secondary) ;
|
|
69
|
+
border: 1px solid var(--color-fm-divider-secondary) ;
|
|
70
70
|
}
|
|
71
71
|
.sbdocs-table th {
|
|
72
|
-
background:
|
|
73
|
-
color:
|
|
74
|
-
border-bottom: 1px solid
|
|
72
|
+
background: var(--color-fm-surface-secondary) ;
|
|
73
|
+
color: var(--color-fm-icon-active) ;
|
|
74
|
+
border-bottom: 1px solid var(--color-fm-divider-secondary) ;
|
|
75
75
|
}
|
|
76
76
|
.sbdocs-table td {
|
|
77
|
-
color:
|
|
78
|
-
border-bottom: 1px solid
|
|
77
|
+
color: var(--color-fm-secondary) ;
|
|
78
|
+
border-bottom: 1px solid var(--color-fm-divider-tertiary) ;
|
|
79
79
|
}
|
|
80
80
|
`}
|
|
81
81
|
</style>
|
|
82
82
|
|
|
83
|
-
<div className="
|
|
83
|
+
<div className="from-fm-surface-primary via-fm-icon-positive/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="absolute inset-0 bg-
|
|
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-positive/10 to-fm-icon-positive/10 absolute inset-0 bg-linear-to-r via-transparent" />
|
|
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
|
-
<ChevronDoubleRightIcon className="h-12 w-12
|
|
89
|
+
<div className="border-fm-icon-positive/30 from-fm-icon-positive/20 to-fm-icon-positive/20 !mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border bg-linear-to-br">
|
|
90
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive h-12 w-12" />
|
|
91
91
|
</div>
|
|
92
92
|
<h1 className="!text-fm-primary text-5xl font-bold">
|
|
93
93
|
ChevronDoubleRightIcon
|
|
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 navigation icon featuring double chevrons pointing right,
|
|
97
97
|
perfect for pagination, breadcrumbs, and forward navigation
|
|
98
98
|
interfaces. Built with accessibility in mind using Radix
|
|
@@ -102,28 +102,28 @@ const meta: Meta<typeof ChevronDoubleRightIcon> = {
|
|
|
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-positive 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-icon-positive 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
|
Navigation
|
|
125
125
|
</div>
|
|
126
|
-
<div className="text-
|
|
126
|
+
<div className="text-fm-tertiary text-sm">
|
|
127
127
|
Forward direction
|
|
128
128
|
</div>
|
|
129
129
|
</div>
|
|
@@ -136,16 +136,16 @@ const meta: Meta<typeof ChevronDoubleRightIcon> = {
|
|
|
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-positive! 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 { ChevronDoubleRightIcon } from "@icons/chevron-double-right-icon"
|
|
150
150
|
|
|
151
151
|
function PaginationButton() {
|
|
@@ -161,13 +161,13 @@ function PaginationButton() {
|
|
|
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-positive! 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-3 rounded-lg border
|
|
169
|
-
<span className="text-
|
|
170
|
-
<ChevronDoubleRightIcon className="h-5 w-5
|
|
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-positive/20 bg-fm-icon-positive/10 hover:bg-fm-icon-positive/20 flex items-center gap-3 rounded-lg border px-4 py-2 transition-colors">
|
|
169
|
+
<span className="text-fm-icon-active">Last Page</span>
|
|
170
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive h-5 w-5" />
|
|
171
171
|
</button>
|
|
172
172
|
</div>
|
|
173
173
|
</div>
|
|
@@ -176,108 +176,116 @@ function PaginationButton() {
|
|
|
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-positive! 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
|
+
24
|
|
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-positive! 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-positive! px-6 py-4 font-mono text-sm">
|
|
248
252
|
className
|
|
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
|
string
|
|
252
256
|
</td>
|
|
253
|
-
<td className="px-6 py-4 text-sm
|
|
254
|
-
|
|
257
|
+
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
258
|
+
-
|
|
259
|
+
</td>
|
|
260
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
255
261
|
CSS classes for styling (use for overrides)
|
|
256
262
|
</td>
|
|
257
263
|
</tr>
|
|
258
|
-
<tr className="border-
|
|
259
|
-
<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-positive! px-6 py-4 font-mono text-sm">
|
|
260
266
|
strokeWidth
|
|
261
267
|
</td>
|
|
262
|
-
<td className="px-6 py-4 text-sm
|
|
268
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
263
269
|
number | string
|
|
264
270
|
</td>
|
|
265
|
-
<td className="px-6 py-4 text-sm
|
|
271
|
+
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
266
272
|
1.5
|
|
267
273
|
</td>
|
|
268
|
-
<td className="px-6 py-4 text-sm
|
|
274
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
269
275
|
Stroke width of the chevron lines
|
|
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-positive! 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 PaginationButton() {
|
|
|
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-positive! 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
|
-
<ChevronDoubleRightIcon className="!mx-auto mb-2 h-3 w-3
|
|
304
|
-
<span className="text-
|
|
311
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive !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
|
-
<ChevronDoubleRightIcon className="!mx-auto mb-2 h-4 w-4
|
|
308
|
-
<span className="text-
|
|
317
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive !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
|
-
<ChevronDoubleRightIcon className="!mx-auto mb-2 h-5 w-5
|
|
312
|
-
<span className="text-
|
|
323
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive !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
|
-
<ChevronDoubleRightIcon className="!mx-auto mb-2 h-6 w-6
|
|
316
|
-
<span className="text-
|
|
329
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive !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
|
-
<ChevronDoubleRightIcon className="!mx-auto mb-2 h-8 w-8
|
|
320
|
-
<span className="text-
|
|
335
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive !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
|
-
<ChevronDoubleRightIcon className="!mx-auto mb-2 h-12 w-12
|
|
324
|
-
<span className="text-
|
|
341
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive !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-positive! 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-positive! overflow-x-auto text-sm">
|
|
335
355
|
{`// Small (16px)
|
|
336
356
|
<ChevronDoubleRightIcon className="h-4 w-4 " />
|
|
337
357
|
|
|
@@ -353,56 +373,56 @@ function PaginationButton() {
|
|
|
353
373
|
|
|
354
374
|
{/* Color Variations */}
|
|
355
375
|
<div className="!space-y-8">
|
|
356
|
-
<h2 className="text-center text-3xl font-bold
|
|
376
|
+
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
357
377
|
Color Variations
|
|
358
378
|
</h2>
|
|
359
379
|
<div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
|
|
360
380
|
<div className="!space-y-4">
|
|
361
|
-
<h3 className="text-lg font-semibold
|
|
381
|
+
<h3 className="text-fm-icon-positive! text-lg font-semibold">
|
|
362
382
|
Semantic Colors
|
|
363
383
|
</h3>
|
|
364
|
-
<div className="!space-y-4 rounded-lg border
|
|
384
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
|
|
365
385
|
<div className="flex items-center gap-4">
|
|
366
|
-
<ChevronDoubleRightIcon className="h-6 w-6
|
|
386
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive h-6 w-6" />
|
|
367
387
|
<div>
|
|
368
|
-
<div className="text-sm font-medium
|
|
388
|
+
<div className="text-fm-icon-active text-sm font-medium">
|
|
369
389
|
Primary
|
|
370
390
|
</div>
|
|
371
|
-
<div className="text-
|
|
372
|
-
text-
|
|
391
|
+
<div className="text-fm-tertiary text-xs">
|
|
392
|
+
text-fm-icon-positive
|
|
373
393
|
</div>
|
|
374
394
|
</div>
|
|
375
395
|
</div>
|
|
376
396
|
<div className="flex items-center gap-4">
|
|
377
|
-
<ChevronDoubleRightIcon className="h-6 w-6
|
|
397
|
+
<ChevronDoubleRightIcon className="text-fm-placeholder h-6 w-6" />
|
|
378
398
|
<div>
|
|
379
|
-
<div className="text-sm font-medium
|
|
399
|
+
<div className="text-fm-icon-active text-sm font-medium">
|
|
380
400
|
Secondary
|
|
381
401
|
</div>
|
|
382
|
-
<div className="text-
|
|
383
|
-
text-
|
|
402
|
+
<div className="text-fm-tertiary text-xs">
|
|
403
|
+
text-fm-placeholder
|
|
384
404
|
</div>
|
|
385
405
|
</div>
|
|
386
406
|
</div>
|
|
387
407
|
<div className="flex items-center gap-4">
|
|
388
|
-
<ChevronDoubleRightIcon className="h-6 w-6
|
|
408
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive h-6 w-6" />
|
|
389
409
|
<div>
|
|
390
|
-
<div className="text-sm font-medium
|
|
410
|
+
<div className="text-fm-icon-active text-sm font-medium">
|
|
391
411
|
Accent
|
|
392
412
|
</div>
|
|
393
|
-
<div className="text-
|
|
394
|
-
text-
|
|
413
|
+
<div className="text-fm-tertiary text-xs">
|
|
414
|
+
text-fm-icon-positive
|
|
395
415
|
</div>
|
|
396
416
|
</div>
|
|
397
417
|
</div>
|
|
398
418
|
<div className="flex items-center gap-4">
|
|
399
|
-
<ChevronDoubleRightIcon className="h-6 w-6
|
|
419
|
+
<ChevronDoubleRightIcon className="text-fm-placeholder h-6 w-6" />
|
|
400
420
|
<div>
|
|
401
|
-
<div className="text-sm font-medium
|
|
421
|
+
<div className="text-fm-icon-active text-sm font-medium">
|
|
402
422
|
Disabled
|
|
403
423
|
</div>
|
|
404
|
-
<div className="text-
|
|
405
|
-
text-
|
|
424
|
+
<div className="text-fm-tertiary text-xs">
|
|
425
|
+
text-fm-placeholder
|
|
406
426
|
</div>
|
|
407
427
|
</div>
|
|
408
428
|
</div>
|
|
@@ -410,11 +430,11 @@ function PaginationButton() {
|
|
|
410
430
|
</div>
|
|
411
431
|
|
|
412
432
|
<div className="!space-y-4">
|
|
413
|
-
<h3 className="text-lg font-semibold
|
|
433
|
+
<h3 className="text-fm-icon-positive! text-lg font-semibold">
|
|
414
434
|
Custom Colors
|
|
415
435
|
</h3>
|
|
416
|
-
<div className="rounded-lg
|
|
417
|
-
<pre className="overflow-x-auto text-sm
|
|
436
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
437
|
+
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
418
438
|
{`// Using Tailwind classes with
|
|
419
439
|
<ChevronDoubleRightIcon className="h-6 w-6 text-green-400 " />
|
|
420
440
|
<ChevronDoubleRightIcon className="h-6 w-6 text-emerald-500 " />
|
|
@@ -439,31 +459,31 @@ function PaginationButton() {
|
|
|
439
459
|
|
|
440
460
|
{/* Usage Examples */}
|
|
441
461
|
<div className="!space-y-8">
|
|
442
|
-
<h2 className="text-center text-3xl font-bold
|
|
462
|
+
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
443
463
|
Usage Examples
|
|
444
464
|
</h2>
|
|
445
465
|
|
|
446
466
|
<div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
|
|
447
467
|
{/* Pagination */}
|
|
448
468
|
<div className="!space-y-4">
|
|
449
|
-
<h3 className="text-lg font-semibold
|
|
469
|
+
<h3 className="text-fm-icon-positive! text-lg font-semibold">
|
|
450
470
|
Pagination Controls
|
|
451
471
|
</h3>
|
|
452
472
|
<div className="!space-y-4">
|
|
453
|
-
<div className="flex items-center justify-center gap-2 rounded-lg border
|
|
454
|
-
<span className="text-
|
|
473
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex items-center justify-center gap-2 rounded-lg border p-4">
|
|
474
|
+
<span className="text-fm-tertiary text-sm">
|
|
455
475
|
Page 5 of 10
|
|
456
476
|
</span>
|
|
457
|
-
<button className="
|
|
477
|
+
<button className="border-fm-divider-primary bg-fm-surface-secondary text-fm-tertiary hover:bg-fm-surface-secondary rounded-lg border p-2 transition-colors">
|
|
458
478
|
<ChevronDoubleRightIcon className="h-4 w-4" />
|
|
459
479
|
</button>
|
|
460
|
-
<button className="flex items-center gap-2 rounded-lg border
|
|
480
|
+
<button className="border-fm-icon-positive/30 bg-fm-icon-positive/10 text-fm-icon-positive hover:bg-fm-icon-positive/20 flex items-center gap-2 rounded-lg border px-3 py-2 transition-colors">
|
|
461
481
|
<span>Last</span>
|
|
462
482
|
<ChevronDoubleRightIcon className="h-4 w-4" />
|
|
463
483
|
</button>
|
|
464
484
|
</div>
|
|
465
|
-
<div className="rounded-lg
|
|
466
|
-
<pre className="overflow-x-auto text-sm
|
|
485
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
486
|
+
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
467
487
|
{`<div className="flex items-center gap-2">
|
|
468
488
|
<span className="text-sm text-white/60">Page 5 of 10</span>
|
|
469
489
|
<button className="p-2 bg-white/5 border border-white/20 rounded-lg">
|
|
@@ -481,22 +501,22 @@ function PaginationButton() {
|
|
|
481
501
|
|
|
482
502
|
{/* Breadcrumbs */}
|
|
483
503
|
<div className="!space-y-4">
|
|
484
|
-
<h3 className="text-lg font-semibold
|
|
504
|
+
<h3 className="text-fm-icon-positive! text-lg font-semibold">
|
|
485
505
|
Breadcrumb Navigation
|
|
486
506
|
</h3>
|
|
487
507
|
<div className="!space-y-4">
|
|
488
|
-
<div className="rounded-lg border
|
|
508
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
|
|
489
509
|
<nav className="flex items-center gap-2 text-sm">
|
|
490
|
-
<span className="text-
|
|
491
|
-
<span className="text-
|
|
492
|
-
<button className="flex items-center gap-1 rounded px-2 py-1
|
|
510
|
+
<span className="text-fm-tertiary">Current Page</span>
|
|
511
|
+
<span className="text-fm-placeholder">/</span>
|
|
512
|
+
<button className="text-fm-icon-positive hover:bg-fm-icon-positive/10 flex items-center gap-1 rounded px-2 py-1">
|
|
493
513
|
<span>Go to End</span>
|
|
494
514
|
<ChevronDoubleRightIcon className="h-3 w-3" />
|
|
495
515
|
</button>
|
|
496
516
|
</nav>
|
|
497
517
|
</div>
|
|
498
|
-
<div className="rounded-lg
|
|
499
|
-
<pre className="overflow-x-auto text-sm
|
|
518
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
519
|
+
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
500
520
|
{`<nav className="flex items-center gap-2 text-sm">
|
|
501
521
|
<span className="text-white/60">Current Page</span>
|
|
502
522
|
<span className="text-white/40">/</span>
|
|
@@ -512,25 +532,25 @@ function PaginationButton() {
|
|
|
512
532
|
|
|
513
533
|
{/* Table Navigation */}
|
|
514
534
|
<div className="!space-y-4">
|
|
515
|
-
<h3 className="text-lg font-semibold
|
|
535
|
+
<h3 className="text-fm-icon-positive! text-lg font-semibold">
|
|
516
536
|
Table Navigation
|
|
517
537
|
</h3>
|
|
518
538
|
<div className="!space-y-4">
|
|
519
|
-
<div className="overflow-hidden rounded-lg border
|
|
520
|
-
<div className="flex items-center justify-between border-b
|
|
521
|
-
<span className="text-
|
|
539
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary overflow-hidden rounded-lg border">
|
|
540
|
+
<div className="border-fm-divider-secondary flex items-center justify-between border-b p-4">
|
|
541
|
+
<span className="text-fm-secondary text-sm">
|
|
522
542
|
Showing 91-100 of 100 items
|
|
523
543
|
</span>
|
|
524
544
|
<div className="flex items-center gap-1">
|
|
525
545
|
<button
|
|
526
|
-
className="rounded p-1
|
|
546
|
+
className="text-fm-placeholder rounded p-1"
|
|
527
547
|
disabled
|
|
528
548
|
aria-label="Next page"
|
|
529
549
|
>
|
|
530
550
|
<ChevronDoubleRightIcon className="h-4 w-4 -rotate-90" />
|
|
531
551
|
</button>
|
|
532
552
|
<button
|
|
533
|
-
className="
|
|
553
|
+
className="text-fm-icon-positive hover:bg-fm-icon-positive/10 rounded p-1"
|
|
534
554
|
aria-label="Go to last page"
|
|
535
555
|
>
|
|
536
556
|
<ChevronDoubleRightIcon className="h-4 w-4" />
|
|
@@ -538,8 +558,8 @@ function PaginationButton() {
|
|
|
538
558
|
</div>
|
|
539
559
|
</div>
|
|
540
560
|
</div>
|
|
541
|
-
<div className="rounded-lg
|
|
542
|
-
<pre className="overflow-x-auto text-sm
|
|
561
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
562
|
+
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
543
563
|
{`<div className="flex items-center justify-between p-4">
|
|
544
564
|
<span className="text-sm text-white/70">
|
|
545
565
|
Showing 91-100 of 100 items
|
|
@@ -557,23 +577,23 @@ function PaginationButton() {
|
|
|
557
577
|
|
|
558
578
|
{/* Sidebar Toggle */}
|
|
559
579
|
<div className="!space-y-4">
|
|
560
|
-
<h3 className="text-lg font-semibold
|
|
580
|
+
<h3 className="text-fm-icon-positive! text-lg font-semibold">
|
|
561
581
|
Step Navigation
|
|
562
582
|
</h3>
|
|
563
583
|
<div className="!space-y-4">
|
|
564
|
-
<div className="flex h-32 rounded-lg border
|
|
584
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-32 rounded-lg border">
|
|
565
585
|
<div className="flex-1 p-4">
|
|
566
|
-
<span className="text-
|
|
586
|
+
<span className="text-fm-tertiary">Step 2 of 5</span>
|
|
567
587
|
</div>
|
|
568
|
-
<div className="flex w-32 items-center justify-center border-l
|
|
569
|
-
<button className="flex items-center gap-2 rounded px-3 py-2
|
|
588
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex w-32 items-center justify-center border-l">
|
|
589
|
+
<button className="text-fm-tertiary hover:bg-fm-surface-secondary flex items-center gap-2 rounded px-3 py-2">
|
|
570
590
|
<span>Skip to End</span>
|
|
571
591
|
<ChevronDoubleRightIcon className="h-4 w-4" />
|
|
572
592
|
</button>
|
|
573
593
|
</div>
|
|
574
594
|
</div>
|
|
575
|
-
<div className="rounded-lg
|
|
576
|
-
<pre className="overflow-x-auto text-sm
|
|
595
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
596
|
+
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
577
597
|
{`// Step navigation with skip to end
|
|
578
598
|
<button className="flex items-center gap-2 rounded px-3 py-2 text-white/60 hover:bg-white/10">
|
|
579
599
|
<span>Skip to End</span>
|
|
@@ -591,64 +611,64 @@ function PaginationButton() {
|
|
|
591
611
|
|
|
592
612
|
{/* Accessibility */}
|
|
593
613
|
<div className="!space-y-8">
|
|
594
|
-
<h2 className="text-center text-3xl font-bold
|
|
614
|
+
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
595
615
|
Accessibility Features
|
|
596
616
|
</h2>
|
|
597
617
|
<div className="grid grid-cols-1 gap-8 md:grid-cols-2">
|
|
598
|
-
<div className="!space-y-4 rounded-lg border
|
|
599
|
-
<h3 className="text-lg font-semibold
|
|
618
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
|
|
619
|
+
<h3 className="text-fm-icon-positive! text-lg font-semibold">
|
|
600
620
|
✅ Built-in Features
|
|
601
621
|
</h3>
|
|
602
|
-
<ul className="!space-y-2 text-sm
|
|
603
|
-
<li className="
|
|
622
|
+
<ul className="text-fm-secondary! !space-y-2 text-sm">
|
|
623
|
+
<li className="text-fm-secondary!">
|
|
604
624
|
Uses Radix UI AccessibleIcon wrapper
|
|
605
625
|
</li>
|
|
606
|
-
<li className="
|
|
626
|
+
<li className="text-fm-secondary!">
|
|
607
627
|
Provides screen reader label "Chevron Double Right icon"
|
|
608
628
|
</li>
|
|
609
|
-
<li className="
|
|
629
|
+
<li className="text-fm-secondary!">
|
|
610
630
|
Supports keyboard navigation when interactive
|
|
611
631
|
</li>
|
|
612
|
-
<li className="
|
|
632
|
+
<li className="text-fm-secondary!">
|
|
613
633
|
Maintains proper color contrast ratios
|
|
614
634
|
</li>
|
|
615
|
-
<li className="
|
|
635
|
+
<li className="text-fm-secondary!">
|
|
616
636
|
Scales with user's font size preferences
|
|
617
637
|
</li>
|
|
618
638
|
</ul>
|
|
619
639
|
</div>
|
|
620
640
|
|
|
621
|
-
<div className="!space-y-4 rounded-lg border
|
|
622
|
-
<h3 className="text-lg font-semibold
|
|
641
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
|
|
642
|
+
<h3 className="text-fm-icon-positive! text-lg font-semibold">
|
|
623
643
|
💡 Best Practices
|
|
624
644
|
</h3>
|
|
625
|
-
<ul className="!space-y-2 text-sm
|
|
626
|
-
<li className="
|
|
645
|
+
<ul className="text-fm-secondary !space-y-2 text-sm">
|
|
646
|
+
<li className="text-fm-secondary!">
|
|
627
647
|
Use descriptive aria-labels for buttons
|
|
628
648
|
</li>
|
|
629
|
-
<li className="
|
|
649
|
+
<li className="text-fm-secondary!">
|
|
630
650
|
Provide context for navigation direction
|
|
631
651
|
</li>
|
|
632
|
-
<li className="
|
|
652
|
+
<li className="text-fm-secondary!">
|
|
633
653
|
Ensure sufficient color contrast
|
|
634
654
|
</li>
|
|
635
|
-
<li className="
|
|
655
|
+
<li className="text-fm-secondary!">
|
|
636
656
|
Add focus states for interactive elements
|
|
637
657
|
</li>
|
|
638
|
-
<li className="
|
|
658
|
+
<li className="text-fm-secondary!">
|
|
639
659
|
Consider disabled states for navigation limits
|
|
640
660
|
</li>
|
|
641
661
|
</ul>
|
|
642
662
|
</div>
|
|
643
663
|
</div>
|
|
644
664
|
|
|
645
|
-
<div className="rounded-lg border
|
|
646
|
-
<h3 className="mb-4 text-lg font-semibold
|
|
665
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
|
|
666
|
+
<h3 className="text-fm-icon-positive! mb-4 text-lg font-semibold">
|
|
647
667
|
Proper ARIA Labels
|
|
648
668
|
</h3>
|
|
649
669
|
<div className="grid grid-cols-1 gap-6 lg:grid-cols-2">
|
|
650
|
-
<div className="rounded-lg
|
|
651
|
-
<pre className="overflow-x-auto text-sm
|
|
670
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
671
|
+
<pre className="text-fm-icon-info! overflow-x-auto text-sm">
|
|
652
672
|
{`// Pagination buttons with proper labels
|
|
653
673
|
<button
|
|
654
674
|
aria-label="Go to last page"
|
|
@@ -677,13 +697,13 @@ function PaginationButton() {
|
|
|
677
697
|
</pre>
|
|
678
698
|
</div>
|
|
679
699
|
<div className="!space-y-4">
|
|
680
|
-
<p className="text-
|
|
700
|
+
<p className="text-fm-secondary! text-sm">
|
|
681
701
|
Always provide meaningful aria-labels that describe the
|
|
682
702
|
action, not just the icon. This helps screen reader
|
|
683
703
|
users understand the purpose of navigation elements.
|
|
684
704
|
</p>
|
|
685
|
-
<div className="
|
|
686
|
-
<div className="flex items-center gap-2 text-sm
|
|
705
|
+
<div className="border-fm-icon-positive/20 bg-fm-icon-positive/10 rounded-lg border p-4">
|
|
706
|
+
<div className="text-fm-icon-positive flex items-center gap-2 text-sm">
|
|
687
707
|
<ChevronDoubleRightIcon className="h-4 w-4" />
|
|
688
708
|
<span>Good labels improve navigation clarity</span>
|
|
689
709
|
</div>
|
|
@@ -695,56 +715,60 @@ function PaginationButton() {
|
|
|
695
715
|
|
|
696
716
|
{/* Related Icons */}
|
|
697
717
|
<div className="!space-y-8">
|
|
698
|
-
<h2 className="text-center text-3xl font-bold
|
|
718
|
+
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
699
719
|
Related Icons
|
|
700
720
|
</h2>
|
|
701
721
|
<div className="grid grid-cols-2 gap-6 md:grid-cols-4">
|
|
702
|
-
<div className="!space-y-3 rounded-lg border
|
|
703
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg
|
|
704
|
-
<span className="
|
|
722
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
|
|
723
|
+
<div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
|
|
724
|
+
<span className="text-fm-icon-active! !text-2xl">«</span>
|
|
705
725
|
</div>
|
|
706
726
|
<div>
|
|
707
|
-
<div className="font-medium
|
|
727
|
+
<div className="text-fm-icon-active font-medium">
|
|
708
728
|
ChevronDoubleLeftIcon
|
|
709
729
|
</div>
|
|
710
|
-
<div className="text-
|
|
730
|
+
<div className="text-fm-tertiary text-xs">
|
|
711
731
|
Navigate backward
|
|
712
732
|
</div>
|
|
713
733
|
</div>
|
|
714
734
|
</div>
|
|
715
|
-
<div className="!space-y-3 rounded-lg border
|
|
716
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg
|
|
717
|
-
<span className="
|
|
735
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
|
|
736
|
+
<div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
|
|
737
|
+
<span className="text-fm-icon-active! !text-2xl">›</span>
|
|
718
738
|
</div>
|
|
719
739
|
<div>
|
|
720
|
-
<div className="font-medium
|
|
740
|
+
<div className="text-fm-icon-active font-medium">
|
|
721
741
|
ChevronRightIcon
|
|
722
742
|
</div>
|
|
723
|
-
<div className="text-
|
|
743
|
+
<div className="text-fm-tertiary text-xs">
|
|
724
744
|
Single step forward
|
|
725
745
|
</div>
|
|
726
746
|
</div>
|
|
727
747
|
</div>
|
|
728
|
-
<div className="!space-y-3 rounded-lg border
|
|
729
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg
|
|
730
|
-
<span className="
|
|
748
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
|
|
749
|
+
<div className="bg-fm-secondary-500/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
|
|
750
|
+
<span className="text-fm-icon-active! !text-2xl">↓</span>
|
|
731
751
|
</div>
|
|
732
752
|
<div>
|
|
733
|
-
<div className="font-medium
|
|
753
|
+
<div className="text-fm-icon-active font-medium">
|
|
734
754
|
ArrowDownIcon
|
|
735
755
|
</div>
|
|
736
|
-
<div className="text-
|
|
756
|
+
<div className="text-fm-tertiary text-xs">
|
|
737
757
|
Vertical navigation
|
|
738
758
|
</div>
|
|
739
759
|
</div>
|
|
740
760
|
</div>
|
|
741
|
-
<div className="!space-y-3 rounded-lg border
|
|
742
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg
|
|
743
|
-
<span className="
|
|
761
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
|
|
762
|
+
<div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
|
|
763
|
+
<span className="text-fm-icon-active! !text-2xl">⟳</span>
|
|
744
764
|
</div>
|
|
745
765
|
<div>
|
|
746
|
-
<div className="font-medium
|
|
747
|
-
|
|
766
|
+
<div className="text-fm-icon-active font-medium">
|
|
767
|
+
RefreshIcon
|
|
768
|
+
</div>
|
|
769
|
+
<div className="text-fm-tertiary text-xs">
|
|
770
|
+
Reset/reload
|
|
771
|
+
</div>
|
|
748
772
|
</div>
|
|
749
773
|
</div>
|
|
750
774
|
</div>
|
|
@@ -752,14 +776,14 @@ function PaginationButton() {
|
|
|
752
776
|
</div>
|
|
753
777
|
|
|
754
778
|
{/* Footer */}
|
|
755
|
-
<div className="border-
|
|
779
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary border-t backdrop-blur-xl">
|
|
756
780
|
<div className="!mx-auto max-w-7xl px-6 py-8">
|
|
757
781
|
<div className="!space-y-4 text-center">
|
|
758
|
-
<p className="
|
|
782
|
+
<p className="text-fm-tertiary!">
|
|
759
783
|
ChevronDoubleRightIcon is part of the Aural UI icon library,
|
|
760
784
|
built with accessibility and forward navigation in mind.
|
|
761
785
|
</p>
|
|
762
|
-
<p className="text-
|
|
786
|
+
<p className="text-fm-placeholder! text-sm">
|
|
763
787
|
All icons use Radix UI's AccessibleIcon for screen reader
|
|
764
788
|
compatibility and follow WCAG guidelines.
|
|
765
789
|
</p>
|
|
@@ -808,8 +832,8 @@ const storyParameters = {
|
|
|
808
832
|
backgrounds: {
|
|
809
833
|
default: "dark",
|
|
810
834
|
values: [
|
|
811
|
-
{ name: "dark", value: "
|
|
812
|
-
{ name: "darker", value: "
|
|
835
|
+
{ name: "dark", value: "var(--color-fm-surface-primary)" },
|
|
836
|
+
{ name: "darker", value: "var(--color-fm-neutral-0)" },
|
|
813
837
|
],
|
|
814
838
|
},
|
|
815
839
|
}
|
|
@@ -818,12 +842,12 @@ export const Default: Story = {
|
|
|
818
842
|
args: {
|
|
819
843
|
width: 24,
|
|
820
844
|
height: 24,
|
|
821
|
-
className: "text-
|
|
845
|
+
className: "text-fm-icon-positive ",
|
|
822
846
|
withAccessibility: true,
|
|
823
847
|
},
|
|
824
848
|
parameters: storyParameters,
|
|
825
849
|
render: (args) => (
|
|
826
|
-
<div className="flex h-32 min-h-dvh items-center justify-center rounded-lg bg-
|
|
850
|
+
<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">
|
|
827
851
|
<ChevronDoubleRightIcon {...args} />
|
|
828
852
|
</div>
|
|
829
853
|
),
|
|
@@ -840,30 +864,30 @@ export const SizeVariations: Story = {
|
|
|
840
864
|
},
|
|
841
865
|
},
|
|
842
866
|
render: () => (
|
|
843
|
-
<div className="flex h-64 min-h-dvh items-center justify-center gap-8 rounded-lg bg-
|
|
867
|
+
<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">
|
|
844
868
|
<div className="text-center">
|
|
845
|
-
<ChevronDoubleRightIcon className="!mx-auto mb-2 h-3 w-3
|
|
846
|
-
<span className="text-
|
|
869
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive !mx-auto mb-2 h-3 w-3" />
|
|
870
|
+
<span className="text-fm-tertiary text-xs">12px</span>
|
|
847
871
|
</div>
|
|
848
872
|
<div className="text-center">
|
|
849
|
-
<ChevronDoubleRightIcon className="!mx-auto mb-2 h-4 w-4
|
|
850
|
-
<span className="text-
|
|
873
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive !mx-auto mb-2 h-4 w-4" />
|
|
874
|
+
<span className="text-fm-tertiary text-xs">16px</span>
|
|
851
875
|
</div>
|
|
852
876
|
<div className="text-center">
|
|
853
|
-
<ChevronDoubleRightIcon className="!mx-auto mb-2 h-5 w-5
|
|
854
|
-
<span className="text-
|
|
877
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive !mx-auto mb-2 h-5 w-5" />
|
|
878
|
+
<span className="text-fm-tertiary text-xs">20px</span>
|
|
855
879
|
</div>
|
|
856
880
|
<div className="text-center">
|
|
857
|
-
<ChevronDoubleRightIcon className="!mx-auto mb-2 h-6 w-6
|
|
858
|
-
<span className="text-
|
|
881
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive !mx-auto mb-2 h-6 w-6" />
|
|
882
|
+
<span className="text-fm-tertiary text-xs">24px</span>
|
|
859
883
|
</div>
|
|
860
884
|
<div className="text-center">
|
|
861
|
-
<ChevronDoubleRightIcon className="!mx-auto mb-2 h-8 w-8
|
|
862
|
-
<span className="text-
|
|
885
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive !mx-auto mb-2 h-8 w-8" />
|
|
886
|
+
<span className="text-fm-tertiary text-xs">32px</span>
|
|
863
887
|
</div>
|
|
864
888
|
<div className="text-center">
|
|
865
|
-
<ChevronDoubleRightIcon className="!mx-auto mb-2 h-12 w-12
|
|
866
|
-
<span className="text-
|
|
889
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive !mx-auto mb-2 h-12 w-12" />
|
|
890
|
+
<span className="text-fm-tertiary text-xs">48px</span>
|
|
867
891
|
</div>
|
|
868
892
|
</div>
|
|
869
893
|
),
|
|
@@ -880,34 +904,38 @@ export const ColorVariations: Story = {
|
|
|
880
904
|
},
|
|
881
905
|
},
|
|
882
906
|
render: () => (
|
|
883
|
-
<div className="grid min-h-dvh grid-cols-2 items-center justify-center gap-6 rounded-lg bg-
|
|
907
|
+
<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">
|
|
884
908
|
<div className="text-center">
|
|
885
|
-
<div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border
|
|
886
|
-
<ChevronDoubleRightIcon className="h-8 w-8
|
|
909
|
+
<div className="border-fm-icon-positive/30 bg-fm-icon-positive/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
|
|
910
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive h-8 w-8" />
|
|
911
|
+
</div>
|
|
912
|
+
<div className="text-fm-icon-active text-sm font-medium">Primary</div>
|
|
913
|
+
<div className="text-fm-icon-positive text-xs">
|
|
914
|
+
text-fm-icon-positive
|
|
887
915
|
</div>
|
|
888
|
-
<div className="text-sm font-medium text-white">Primary</div>
|
|
889
|
-
<div className="text-xs text-green-400">text-green-400</div>
|
|
890
916
|
</div>
|
|
891
917
|
<div className="text-center">
|
|
892
|
-
<div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border
|
|
893
|
-
<ChevronDoubleRightIcon className="h-8 w-8
|
|
918
|
+
<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">
|
|
919
|
+
<ChevronDoubleRightIcon className="text-fm-placeholder h-8 w-8" />
|
|
894
920
|
</div>
|
|
895
|
-
<div className="text-sm font-medium
|
|
896
|
-
<div className="text-
|
|
921
|
+
<div className="text-fm-icon-active text-sm font-medium">Secondary</div>
|
|
922
|
+
<div className="text-fm-placeholder text-xs">text-fm-placeholder</div>
|
|
897
923
|
</div>
|
|
898
924
|
<div className="text-center">
|
|
899
|
-
<div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border
|
|
900
|
-
<ChevronDoubleRightIcon className="h-8 w-8
|
|
925
|
+
<div className="border-fm-icon-positive/30 bg-fm-icon-positive/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
|
|
926
|
+
<ChevronDoubleRightIcon className="text-fm-icon-positive h-8 w-8" />
|
|
927
|
+
</div>
|
|
928
|
+
<div className="text-fm-icon-active text-sm font-medium">Accent</div>
|
|
929
|
+
<div className="text-fm-icon-positive text-xs">
|
|
930
|
+
text-fm-icon-positive
|
|
901
931
|
</div>
|
|
902
|
-
<div className="text-sm font-medium text-white">Accent</div>
|
|
903
|
-
<div className="text-xs text-emerald-400">text-emerald-400</div>
|
|
904
932
|
</div>
|
|
905
933
|
<div className="text-center">
|
|
906
|
-
<div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border
|
|
907
|
-
<ChevronDoubleRightIcon className="h-8 w-8
|
|
934
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
|
|
935
|
+
<ChevronDoubleRightIcon className="text-fm-placeholder h-8 w-8" />
|
|
908
936
|
</div>
|
|
909
|
-
<div className="text-sm font-medium
|
|
910
|
-
<div className="text-
|
|
937
|
+
<div className="text-fm-icon-active text-sm font-medium">Disabled</div>
|
|
938
|
+
<div className="text-fm-placeholder text-xs">text-fm-placeholder</div>
|
|
911
939
|
</div>
|
|
912
940
|
</div>
|
|
913
941
|
),
|
|
@@ -924,16 +952,18 @@ export const UsageExamples: Story = {
|
|
|
924
952
|
},
|
|
925
953
|
},
|
|
926
954
|
render: () => (
|
|
927
|
-
<div className="min-h-dvh !space-y-8 rounded-lg bg-
|
|
955
|
+
<div className="from-fm-surface-primary to-fm-surface-secondary min-h-dvh !space-y-8 rounded-lg bg-linear-to-br p-8">
|
|
928
956
|
{/* Pagination */}
|
|
929
957
|
<div className="!space-y-2">
|
|
930
|
-
<h3 className="text-sm font-medium
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
958
|
+
<h3 className="text-fm-icon-active text-sm font-medium">
|
|
959
|
+
Pagination Controls
|
|
960
|
+
</h3>
|
|
961
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex items-center justify-center gap-2 rounded-lg border p-4">
|
|
962
|
+
<span className="text-fm-tertiary text-sm">Page 5 of 10</span>
|
|
963
|
+
<button className="border-fm-divider-primary bg-fm-surface-secondary text-fm-tertiary hover:bg-fm-surface-secondary rounded-lg border p-2 transition-colors">
|
|
934
964
|
<ChevronDoubleRightIcon className="h-4 w-4" />
|
|
935
965
|
</button>
|
|
936
|
-
<button className="flex items-center gap-2 rounded-lg border
|
|
966
|
+
<button className="border-fm-icon-positive/30 bg-fm-icon-positive/10 text-fm-icon-positive hover:bg-fm-icon-positive/20 flex items-center gap-2 rounded-lg border px-3 py-2 transition-colors">
|
|
937
967
|
<span>Last</span>
|
|
938
968
|
<ChevronDoubleRightIcon className="h-4 w-4" />
|
|
939
969
|
</button>
|
|
@@ -942,14 +972,14 @@ export const UsageExamples: Story = {
|
|
|
942
972
|
|
|
943
973
|
{/* Breadcrumbs */}
|
|
944
974
|
<div className="!space-y-2">
|
|
945
|
-
<h3 className="text-sm font-medium
|
|
975
|
+
<h3 className="text-fm-icon-active text-sm font-medium">
|
|
946
976
|
Breadcrumb Navigation
|
|
947
977
|
</h3>
|
|
948
|
-
<div className="rounded-lg border
|
|
978
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
|
|
949
979
|
<nav className="flex items-center gap-2 text-sm">
|
|
950
|
-
<span className="text-
|
|
951
|
-
<span className="text-
|
|
952
|
-
<button className="flex items-center gap-1 rounded px-2 py-1
|
|
980
|
+
<span className="text-fm-tertiary">Current Page</span>
|
|
981
|
+
<span className="text-fm-placeholder">/</span>
|
|
982
|
+
<button className="text-fm-icon-positive hover:bg-fm-icon-positive/10 flex items-center gap-1 rounded px-2 py-1">
|
|
953
983
|
<span>Go to End</span>
|
|
954
984
|
<ChevronDoubleRightIcon className="h-3 w-3" />
|
|
955
985
|
</button>
|
|
@@ -959,22 +989,24 @@ export const UsageExamples: Story = {
|
|
|
959
989
|
|
|
960
990
|
{/* Table Navigation */}
|
|
961
991
|
<div className="!space-y-2">
|
|
962
|
-
<h3 className="text-sm font-medium
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
992
|
+
<h3 className="text-fm-icon-active text-sm font-medium">
|
|
993
|
+
Table Navigation
|
|
994
|
+
</h3>
|
|
995
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary overflow-hidden rounded-lg border">
|
|
996
|
+
<div className="border-fm-divider-secondary flex items-center justify-between border-b p-4">
|
|
997
|
+
<span className="text-fm-secondary text-sm">
|
|
966
998
|
Showing 91-100 of 100 items
|
|
967
999
|
</span>
|
|
968
1000
|
<div className="flex items-center gap-1">
|
|
969
1001
|
<button
|
|
970
|
-
className="rounded p-1
|
|
1002
|
+
className="text-fm-placeholder rounded p-1"
|
|
971
1003
|
disabled
|
|
972
1004
|
aria-label="Next page"
|
|
973
1005
|
>
|
|
974
1006
|
<ChevronDoubleRightIcon className="h-4 w-4 -rotate-90" />
|
|
975
1007
|
</button>
|
|
976
1008
|
<button
|
|
977
|
-
className="
|
|
1009
|
+
className="text-fm-icon-positive hover:bg-fm-icon-positive/10 rounded p-1"
|
|
978
1010
|
aria-label="Go to last page"
|
|
979
1011
|
>
|
|
980
1012
|
<ChevronDoubleRightIcon className="h-4 w-4" />
|
|
@@ -986,13 +1018,15 @@ export const UsageExamples: Story = {
|
|
|
986
1018
|
|
|
987
1019
|
{/* Step Navigation */}
|
|
988
1020
|
<div className="!space-y-2">
|
|
989
|
-
<h3 className="text-sm font-medium
|
|
990
|
-
|
|
1021
|
+
<h3 className="text-fm-icon-active text-sm font-medium">
|
|
1022
|
+
Step Navigation
|
|
1023
|
+
</h3>
|
|
1024
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-32 rounded-lg border">
|
|
991
1025
|
<div className="flex-1 p-4">
|
|
992
|
-
<span className="text-
|
|
1026
|
+
<span className="text-fm-tertiary">Step 2 of 5</span>
|
|
993
1027
|
</div>
|
|
994
|
-
<div className="flex w-32 items-center justify-center border-l
|
|
995
|
-
<button className="flex items-center gap-2 rounded px-3 py-2
|
|
1028
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex w-32 items-center justify-center border-l">
|
|
1029
|
+
<button className="text-fm-tertiary hover:bg-fm-surface-secondary flex items-center gap-2 rounded px-3 py-2">
|
|
996
1030
|
<span>Skip to End</span>
|
|
997
1031
|
<ChevronDoubleRightIcon className="h-4 w-4" />
|
|
998
1032
|
</button>
|
|
@@ -1016,12 +1050,12 @@ export const Playground: Story = {
|
|
|
1016
1050
|
args: {
|
|
1017
1051
|
width: 32,
|
|
1018
1052
|
height: 32,
|
|
1019
|
-
className: "text-
|
|
1053
|
+
className: "text-fm-icon-positive ",
|
|
1020
1054
|
strokeWidth: 1.5,
|
|
1021
1055
|
},
|
|
1022
1056
|
render: (args) => (
|
|
1023
|
-
<div className="flex h-64 min-h-dvh items-center justify-center rounded-lg bg-
|
|
1024
|
-
<div className="rounded-lg border
|
|
1057
|
+
<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">
|
|
1058
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
|
|
1025
1059
|
<ChevronDoubleRightIcon {...args} />
|
|
1026
1060
|
</div>
|
|
1027
1061
|
</div>
|