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 TwitterXIcon> = {
|
|
|
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 TwitterXIcon> = {
|
|
|
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-surface-secondary/20 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-surface-tertiary/10 to-fm-surface-tertiary/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
|
-
<TwitterXIcon className="h-12 w-12
|
|
89
|
+
<div className="border-fm-divider-primary from-fm-surface-tertiary/20 to-fm-surface-tertiary/20 !mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border bg-linear-to-br">
|
|
90
|
+
<TwitterXIcon className="text-fm-icon-active h-12 w-12" />
|
|
91
91
|
</div>
|
|
92
|
-
<h1 className="text-5xl font-bold
|
|
92
|
+
<h1 className="text-fm-icon-active! text-5xl font-bold">
|
|
93
93
|
TwitterXIcon
|
|
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
|
The official Twitter X brand icon featuring the distinctive
|
|
97
97
|
"X" logo. Essential for social media integration, sharing
|
|
98
98
|
buttons, profile links, social login options, and any
|
|
@@ -102,28 +102,28 @@ const meta: Meta<typeof TwitterXIcon> = {
|
|
|
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-secondary text-3xl font-bold">
|
|
106
106
|
Social Media
|
|
107
107
|
</div>
|
|
108
|
-
<div className="text-
|
|
108
|
+
<div className="text-fm-tertiary text-sm">
|
|
109
109
|
Platform integration
|
|
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 text-3xl font-bold">
|
|
115
115
|
Brand Recognition
|
|
116
116
|
</div>
|
|
117
|
-
<div className="text-
|
|
117
|
+
<div className="text-fm-tertiary text-sm">
|
|
118
118
|
Official identity
|
|
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-secondary text-3xl font-bold">
|
|
124
124
|
Universal
|
|
125
125
|
</div>
|
|
126
|
-
<div className="text-
|
|
126
|
+
<div className="text-fm-tertiary text-sm">
|
|
127
127
|
Global platform
|
|
128
128
|
</div>
|
|
129
129
|
</div>
|
|
@@ -136,16 +136,16 @@ const meta: Meta<typeof TwitterXIcon> = {
|
|
|
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-secondary! 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 { TwitterXIcon } from "@icons/twitter-x-icon"
|
|
150
150
|
|
|
151
151
|
function ShareButton() {
|
|
@@ -165,13 +165,13 @@ function ShareButton() {
|
|
|
165
165
|
</div>
|
|
166
166
|
|
|
167
167
|
<div className="!space-y-4">
|
|
168
|
-
<h3 className="text-xl font-semibold
|
|
168
|
+
<h3 className="text-fm-secondary! text-xl font-semibold">
|
|
169
169
|
Live Preview
|
|
170
170
|
</h3>
|
|
171
|
-
<div className="flex h-32 items-center justify-center rounded-lg border
|
|
172
|
-
<button className="flex items-center gap-2 rounded-lg border
|
|
173
|
-
<TwitterXIcon className="h-5 w-5
|
|
174
|
-
<span className="font-medium
|
|
171
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-32 items-center justify-center rounded-lg border">
|
|
172
|
+
<button className="border-fm-divider-secondary bg-fm-surface-primary hover:bg-fm-surface-secondary flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
|
|
173
|
+
<TwitterXIcon className="text-fm-icon-active h-5 w-5" />
|
|
174
|
+
<span className="text-fm-icon-active font-medium">
|
|
175
175
|
Share on X
|
|
176
176
|
</span>
|
|
177
177
|
</button>
|
|
@@ -182,108 +182,116 @@ function ShareButton() {
|
|
|
182
182
|
|
|
183
183
|
{/* Props Documentation */}
|
|
184
184
|
<div className="!space-y-8">
|
|
185
|
-
<h2 className="text-center text-3xl font-bold
|
|
185
|
+
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
186
186
|
Props & Configuration
|
|
187
187
|
</h2>
|
|
188
188
|
|
|
189
|
-
<div className="overflow-hidden rounded-lg border
|
|
190
|
-
<div className="bg-
|
|
191
|
-
<h3 className="text-xl font-semibold
|
|
189
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary overflow-hidden rounded-lg border">
|
|
190
|
+
<div className="bg-fm-surface-secondary p-4">
|
|
191
|
+
<h3 className="text-fm-icon-active! text-xl font-semibold">
|
|
192
|
+
Props
|
|
193
|
+
</h3>
|
|
192
194
|
</div>
|
|
193
195
|
<table className="!my-0 w-full">
|
|
194
|
-
<thead className="bg-
|
|
195
|
-
<tr className="border-
|
|
196
|
-
<th className="px-6 py-4 text-left text-sm font-semibold
|
|
196
|
+
<thead className="bg-fm-surface-secondary">
|
|
197
|
+
<tr className="border-fm-divider-secondary border-b">
|
|
198
|
+
<th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
|
|
197
199
|
Prop
|
|
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
|
Type
|
|
201
203
|
</th>
|
|
202
|
-
<th className="px-6 py-4 text-left text-sm font-semibold
|
|
204
|
+
<th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
|
|
203
205
|
Default
|
|
204
206
|
</th>
|
|
205
|
-
<th className="px-6 py-4 text-left text-sm font-semibold
|
|
207
|
+
<th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
|
|
206
208
|
Description
|
|
207
209
|
</th>
|
|
208
210
|
</tr>
|
|
209
211
|
</thead>
|
|
210
212
|
<tbody>
|
|
211
213
|
{" "}
|
|
212
|
-
<tr className="
|
|
213
|
-
<td className="px-6 py-4 font-mono text-sm
|
|
214
|
+
<tr className="bg-fm-surface-secondary!">
|
|
215
|
+
<td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
|
|
214
216
|
withAccessibility
|
|
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
|
boolean
|
|
218
220
|
</td>
|
|
219
|
-
<td className="px-6 py-4 text-sm
|
|
221
|
+
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
220
222
|
true
|
|
221
223
|
</td>
|
|
222
|
-
<td className="px-6 py-4 text-sm
|
|
224
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
223
225
|
Whether to wrap the icon with accessibility feature
|
|
224
226
|
</td>
|
|
225
227
|
</tr>
|
|
226
|
-
<tr className="border-
|
|
227
|
-
<td className="px-6 py-4 font-mono text-sm
|
|
228
|
+
<tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
|
|
229
|
+
<td className="text-fm-secondary! px-6 py-4 font-mono text-sm">
|
|
228
230
|
height
|
|
229
231
|
</td>
|
|
230
|
-
<td className="px-6 py-4 text-sm
|
|
232
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
231
233
|
number | string
|
|
232
234
|
</td>
|
|
233
|
-
<td className="px-6 py-4 text-sm
|
|
235
|
+
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
234
236
|
auto
|
|
235
237
|
</td>
|
|
236
|
-
<td className="px-6 py-4 text-sm
|
|
238
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
237
239
|
Height of the icon (maintains aspect ratio)
|
|
238
240
|
</td>
|
|
239
241
|
</tr>
|
|
240
|
-
<tr className="border-
|
|
241
|
-
<td className="px-6 py-4 font-mono text-sm
|
|
242
|
+
<tr className="border-fm-divider-tertiary border-b">
|
|
243
|
+
<td className="text-fm-secondary! px-6 py-4 font-mono text-sm">
|
|
242
244
|
fill
|
|
243
245
|
</td>
|
|
244
|
-
<td className="px-6 py-4 text-sm
|
|
246
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
245
247
|
string
|
|
246
248
|
</td>
|
|
247
|
-
<td className="px-6 py-4 text-sm
|
|
249
|
+
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
248
250
|
currentColor
|
|
249
251
|
</td>
|
|
250
|
-
<td className="px-6 py-4 text-sm
|
|
252
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
251
253
|
Fill color of the X logo
|
|
252
254
|
</td>
|
|
253
255
|
</tr>
|
|
254
|
-
<tr className="border-
|
|
255
|
-
<td className="px-6 py-4 font-mono text-sm
|
|
256
|
+
<tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
|
|
257
|
+
<td className="text-fm-secondary! px-6 py-4 font-mono text-sm">
|
|
256
258
|
className
|
|
257
259
|
</td>
|
|
258
|
-
<td className="px-6 py-4 text-sm
|
|
260
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
259
261
|
string
|
|
260
262
|
</td>
|
|
261
|
-
<td className="px-6 py-4 text-sm
|
|
262
|
-
|
|
263
|
+
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
264
|
+
-
|
|
265
|
+
</td>
|
|
266
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
263
267
|
CSS classes for styling and sizing
|
|
264
268
|
</td>
|
|
265
269
|
</tr>
|
|
266
|
-
<tr className="border-
|
|
267
|
-
<td className="px-6 py-4 font-mono text-sm
|
|
270
|
+
<tr className="border-fm-divider-tertiary border-b">
|
|
271
|
+
<td className="text-fm-secondary! px-6 py-4 font-mono text-sm">
|
|
268
272
|
onClick
|
|
269
273
|
</td>
|
|
270
|
-
<td className="px-6 py-4 text-sm
|
|
274
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
271
275
|
function
|
|
272
276
|
</td>
|
|
273
|
-
<td className="px-6 py-4 text-sm
|
|
274
|
-
|
|
277
|
+
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
278
|
+
-
|
|
279
|
+
</td>
|
|
280
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
275
281
|
Click handler for social interactions
|
|
276
282
|
</td>
|
|
277
283
|
</tr>
|
|
278
|
-
<tr className="
|
|
279
|
-
<td className="px-6 py-4 font-mono text-sm
|
|
284
|
+
<tr className="bg-fm-surface-secondary!">
|
|
285
|
+
<td className="text-fm-secondary! px-6 py-4 font-mono text-sm">
|
|
280
286
|
...svgProps
|
|
281
287
|
</td>
|
|
282
|
-
<td className="px-6 py-4 text-sm
|
|
288
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
283
289
|
SVGProps
|
|
284
290
|
</td>
|
|
285
|
-
<td className="px-6 py-4 text-sm
|
|
286
|
-
|
|
291
|
+
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
292
|
+
-
|
|
293
|
+
</td>
|
|
294
|
+
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
287
295
|
All standard SVG element props
|
|
288
296
|
</td>
|
|
289
297
|
</tr>
|
|
@@ -291,8 +299,8 @@ function ShareButton() {
|
|
|
291
299
|
</table>
|
|
292
300
|
</div>
|
|
293
301
|
|
|
294
|
-
<div className="
|
|
295
|
-
<div className="flex items-center gap-2 text-sm
|
|
302
|
+
<div className="border-fm-divider-secondary bg-fm-icon-inactive/10 rounded-lg border p-4">
|
|
303
|
+
<div className="text-fm-secondary flex items-center gap-2 text-sm">
|
|
296
304
|
<TwitterXIcon className="h-4 w-4" />
|
|
297
305
|
<span>
|
|
298
306
|
<strong>Brand Guidelines:</strong> Follow Twitter/X's
|
|
@@ -305,50 +313,62 @@ function ShareButton() {
|
|
|
305
313
|
|
|
306
314
|
{/* Size Variations */}
|
|
307
315
|
<div className="!space-y-8">
|
|
308
|
-
<h2 className="text-center text-3xl font-bold
|
|
316
|
+
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
309
317
|
Size Variations
|
|
310
318
|
</h2>
|
|
311
|
-
<div className="rounded-lg border
|
|
319
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
|
|
312
320
|
<div className="!space-y-6">
|
|
313
321
|
<div className="grid grid-cols-1 gap-8 md:grid-cols-2">
|
|
314
322
|
<div className="!space-y-4">
|
|
315
|
-
<h3 className="text-lg font-semibold
|
|
323
|
+
<h3 className="text-fm-secondary! text-lg font-semibold">
|
|
316
324
|
Standard Sizes
|
|
317
325
|
</h3>
|
|
318
|
-
<div className="flex items-end gap-6 rounded-lg
|
|
326
|
+
<div className="bg-fm-surface-secondary flex items-end gap-6 rounded-lg p-6">
|
|
319
327
|
<div className="text-center">
|
|
320
|
-
<TwitterXIcon className="!mx-auto mb-2 h-3 w-3
|
|
321
|
-
<span className="text-
|
|
328
|
+
<TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-3 w-3" />
|
|
329
|
+
<span className="text-fm-tertiary text-xs">
|
|
330
|
+
12px
|
|
331
|
+
</span>
|
|
322
332
|
</div>
|
|
323
333
|
<div className="text-center">
|
|
324
|
-
<TwitterXIcon className="!mx-auto mb-2 h-4 w-4
|
|
325
|
-
<span className="text-
|
|
334
|
+
<TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-4 w-4" />
|
|
335
|
+
<span className="text-fm-tertiary text-xs">
|
|
336
|
+
16px
|
|
337
|
+
</span>
|
|
326
338
|
</div>
|
|
327
339
|
<div className="text-center">
|
|
328
|
-
<TwitterXIcon className="!mx-auto mb-2 h-5 w-5
|
|
329
|
-
<span className="text-
|
|
340
|
+
<TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-5 w-5" />
|
|
341
|
+
<span className="text-fm-tertiary text-xs">
|
|
342
|
+
20px
|
|
343
|
+
</span>
|
|
330
344
|
</div>
|
|
331
345
|
<div className="text-center">
|
|
332
|
-
<TwitterXIcon className="!mx-auto mb-2 h-6 w-6
|
|
333
|
-
<span className="text-
|
|
346
|
+
<TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-6 w-6" />
|
|
347
|
+
<span className="text-fm-tertiary text-xs">
|
|
348
|
+
24px
|
|
349
|
+
</span>
|
|
334
350
|
</div>
|
|
335
351
|
<div className="text-center">
|
|
336
|
-
<TwitterXIcon className="!mx-auto mb-2 h-8 w-8
|
|
337
|
-
<span className="text-
|
|
352
|
+
<TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-8 w-8" />
|
|
353
|
+
<span className="text-fm-tertiary text-xs">
|
|
354
|
+
32px
|
|
355
|
+
</span>
|
|
338
356
|
</div>
|
|
339
357
|
<div className="text-center">
|
|
340
|
-
<TwitterXIcon className="!mx-auto mb-2 h-12 w-12
|
|
341
|
-
<span className="text-
|
|
358
|
+
<TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-12 w-12" />
|
|
359
|
+
<span className="text-fm-tertiary text-xs">
|
|
360
|
+
48px
|
|
361
|
+
</span>
|
|
342
362
|
</div>
|
|
343
363
|
</div>
|
|
344
364
|
</div>
|
|
345
365
|
|
|
346
366
|
<div className="!space-y-4">
|
|
347
|
-
<h3 className="text-lg font-semibold
|
|
367
|
+
<h3 className="text-fm-secondary! text-lg font-semibold">
|
|
348
368
|
Code Example
|
|
349
369
|
</h3>
|
|
350
|
-
<div className="rounded-lg
|
|
351
|
-
<pre className="overflow-x-auto text-sm
|
|
370
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
371
|
+
<pre className="text-fm-icon-info! overflow-x-auto text-sm">
|
|
352
372
|
{`// Small (16px) - inline social links
|
|
353
373
|
<TwitterXIcon className="h-4 w-4" />
|
|
354
374
|
|
|
@@ -370,63 +390,63 @@ function ShareButton() {
|
|
|
370
390
|
|
|
371
391
|
{/* Color & Styling */}
|
|
372
392
|
<div className="!space-y-8">
|
|
373
|
-
<h2 className="text-center text-3xl font-bold
|
|
393
|
+
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
374
394
|
Color & Styling
|
|
375
395
|
</h2>
|
|
376
396
|
<div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
|
|
377
397
|
<div className="!space-y-4">
|
|
378
|
-
<h3 className="text-lg font-semibold
|
|
398
|
+
<h3 className="text-fm-secondary! text-lg font-semibold">
|
|
379
399
|
Brand Colors
|
|
380
400
|
</h3>
|
|
381
|
-
<div className="!space-y-4 rounded-lg border
|
|
401
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
|
|
382
402
|
<div className="flex items-center gap-4">
|
|
383
|
-
<div className="flex h-12 w-12 items-center justify-center rounded-lg
|
|
384
|
-
<TwitterXIcon className="h-6 w-6
|
|
403
|
+
<div className="bg-fm-surface-primary flex h-12 w-12 items-center justify-center rounded-lg">
|
|
404
|
+
<TwitterXIcon className="text-fm-icon-active h-6 w-6" />
|
|
385
405
|
</div>
|
|
386
406
|
<div>
|
|
387
|
-
<div className="text-sm font-medium
|
|
407
|
+
<div className="text-fm-icon-active text-sm font-medium">
|
|
388
408
|
Official Black
|
|
389
409
|
</div>
|
|
390
|
-
<div className="text-
|
|
410
|
+
<div className="text-fm-tertiary text-xs">
|
|
391
411
|
Primary brand color
|
|
392
412
|
</div>
|
|
393
413
|
</div>
|
|
394
414
|
</div>
|
|
395
415
|
<div className="flex items-center gap-4">
|
|
396
|
-
<div className="flex h-12 w-12 items-center justify-center rounded-lg border
|
|
397
|
-
<TwitterXIcon className="h-6 w-6
|
|
416
|
+
<div className="border-fm-divider-primary bg-fm-surface-contrast flex h-12 w-12 items-center justify-center rounded-lg border">
|
|
417
|
+
<TwitterXIcon className="text-fm-icon-active h-6 w-6" />
|
|
398
418
|
</div>
|
|
399
419
|
<div>
|
|
400
|
-
<div className="text-sm font-medium
|
|
420
|
+
<div className="text-fm-icon-active text-sm font-medium">
|
|
401
421
|
Inverted White
|
|
402
422
|
</div>
|
|
403
|
-
<div className="text-
|
|
423
|
+
<div className="text-fm-tertiary text-xs">
|
|
404
424
|
Light backgrounds
|
|
405
425
|
</div>
|
|
406
426
|
</div>
|
|
407
427
|
</div>
|
|
408
428
|
<div className="flex items-center gap-4">
|
|
409
|
-
<div className="flex h-12 w-12 items-center justify-center rounded-lg
|
|
410
|
-
<TwitterXIcon className="h-6 w-6
|
|
429
|
+
<div className="bg-fm-surface-tertiary flex h-12 w-12 items-center justify-center rounded-lg">
|
|
430
|
+
<TwitterXIcon className="text-fm-icon-active h-6 w-6" />
|
|
411
431
|
</div>
|
|
412
432
|
<div>
|
|
413
|
-
<div className="text-sm font-medium
|
|
433
|
+
<div className="text-fm-icon-active text-sm font-medium">
|
|
414
434
|
Neutral Gray
|
|
415
435
|
</div>
|
|
416
|
-
<div className="text-
|
|
436
|
+
<div className="text-fm-tertiary text-xs">
|
|
417
437
|
Subtle integration
|
|
418
438
|
</div>
|
|
419
439
|
</div>
|
|
420
440
|
</div>
|
|
421
441
|
<div className="flex items-center gap-4">
|
|
422
|
-
<div className="flex h-12 w-12 items-center justify-center rounded-lg
|
|
423
|
-
<TwitterXIcon className="h-6 w-6
|
|
442
|
+
<div className="bg-fm-icon-info flex h-12 w-12 items-center justify-center rounded-lg">
|
|
443
|
+
<TwitterXIcon className="text-fm-icon-active h-6 w-6" />
|
|
424
444
|
</div>
|
|
425
445
|
<div>
|
|
426
|
-
<div className="text-sm font-medium
|
|
446
|
+
<div className="text-fm-icon-active text-sm font-medium">
|
|
427
447
|
Accent Color
|
|
428
448
|
</div>
|
|
429
|
-
<div className="text-
|
|
449
|
+
<div className="text-fm-tertiary text-xs">
|
|
430
450
|
Themed integration
|
|
431
451
|
</div>
|
|
432
452
|
</div>
|
|
@@ -435,11 +455,11 @@ function ShareButton() {
|
|
|
435
455
|
</div>
|
|
436
456
|
|
|
437
457
|
<div className="!space-y-4">
|
|
438
|
-
<h3 className="text-lg font-semibold
|
|
458
|
+
<h3 className="text-fm-secondary! text-lg font-semibold">
|
|
439
459
|
Usage Examples
|
|
440
460
|
</h3>
|
|
441
|
-
<div className="rounded-lg
|
|
442
|
-
<pre className="overflow-x-auto text-sm
|
|
461
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
462
|
+
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
443
463
|
{`// Official black on white
|
|
444
464
|
<TwitterXIcon className="h-6 w-6 text-black" />
|
|
445
465
|
|
|
@@ -472,73 +492,81 @@ function ShareButton() {
|
|
|
472
492
|
|
|
473
493
|
{/* Usage Examples */}
|
|
474
494
|
<div className="!space-y-8">
|
|
475
|
-
<h2 className="text-center text-3xl font-bold
|
|
495
|
+
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
476
496
|
Usage Examples
|
|
477
497
|
</h2>
|
|
478
498
|
|
|
479
499
|
<div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
|
|
480
500
|
{/* Social Share Buttons */}
|
|
481
501
|
<div className="!space-y-4">
|
|
482
|
-
<h3 className="text-lg font-semibold
|
|
502
|
+
<h3 className="text-fm-secondary! text-lg font-semibold">
|
|
483
503
|
Social Share Buttons
|
|
484
504
|
</h3>
|
|
485
505
|
<div className="!space-y-4">
|
|
486
|
-
<div className="rounded-lg border
|
|
506
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
|
|
487
507
|
<div className="space-y-4">
|
|
488
|
-
<h4 className="mb-3 text-sm font-medium
|
|
508
|
+
<h4 className="text-fm-icon-active mb-3 text-sm font-medium">
|
|
489
509
|
Share this article
|
|
490
510
|
</h4>
|
|
491
511
|
<div className="flex flex-wrap gap-3">
|
|
492
|
-
<button className="flex items-center gap-2 rounded-lg border
|
|
493
|
-
<TwitterXIcon className="h-4 w-4
|
|
494
|
-
<span className="text-
|
|
512
|
+
<button className="border-fm-divider-contrast bg-fm-surface-primary hover:bg-fm-surface-secondary flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
|
|
513
|
+
<TwitterXIcon className="text-fm-icon-active h-4 w-4" />
|
|
514
|
+
<span className="text-fm-icon-active text-sm">
|
|
495
515
|
Share on X
|
|
496
516
|
</span>
|
|
497
517
|
</button>
|
|
498
|
-
<button className="flex items-center gap-2 rounded-lg
|
|
499
|
-
<span className="text-
|
|
500
|
-
|
|
518
|
+
<button className="bg-fm-icon-info hover:bg-fm-icon-info flex items-center gap-2 rounded-lg px-4 py-2 transition-colors">
|
|
519
|
+
<span className="text-fm-icon-active text-sm">
|
|
520
|
+
📘
|
|
521
|
+
</span>
|
|
522
|
+
<span className="text-fm-icon-active text-sm">
|
|
501
523
|
Facebook
|
|
502
524
|
</span>
|
|
503
525
|
</button>
|
|
504
|
-
<button className="flex items-center gap-2 rounded-lg
|
|
505
|
-
<span className="text-
|
|
506
|
-
|
|
526
|
+
<button className="bg-fm-icon-info hover:bg-fm-icon-info flex items-center gap-2 rounded-lg px-4 py-2 transition-colors">
|
|
527
|
+
<span className="text-fm-icon-active text-sm">
|
|
528
|
+
💼
|
|
529
|
+
</span>
|
|
530
|
+
<span className="text-fm-icon-active text-sm">
|
|
507
531
|
LinkedIn
|
|
508
532
|
</span>
|
|
509
533
|
</button>
|
|
510
534
|
</div>
|
|
511
|
-
<div className="border-
|
|
535
|
+
<div className="border-fm-divider-secondary border-t pt-4">
|
|
512
536
|
<div className="flex items-center gap-3">
|
|
513
|
-
<span className="text-
|
|
537
|
+
<span className="text-fm-tertiary text-sm">
|
|
514
538
|
Follow us:
|
|
515
539
|
</span>
|
|
516
540
|
<div className="flex gap-2">
|
|
517
541
|
<a
|
|
518
542
|
href="#"
|
|
519
|
-
className="
|
|
543
|
+
className="bg-fm-surface-primary hover:bg-fm-surface-secondary rounded p-2 transition-colors"
|
|
520
544
|
>
|
|
521
|
-
<TwitterXIcon className="h-4 w-4
|
|
545
|
+
<TwitterXIcon className="text-fm-icon-active h-4 w-4" />
|
|
522
546
|
</a>
|
|
523
547
|
<a
|
|
524
548
|
href="#"
|
|
525
|
-
className="
|
|
549
|
+
className="bg-fm-icon-info hover:bg-fm-icon-info rounded p-2 transition-colors"
|
|
526
550
|
>
|
|
527
|
-
<span className="text-
|
|
551
|
+
<span className="text-fm-icon-active text-sm">
|
|
552
|
+
📘
|
|
553
|
+
</span>
|
|
528
554
|
</a>
|
|
529
555
|
<a
|
|
530
556
|
href="#"
|
|
531
|
-
className="
|
|
557
|
+
className="bg-fm-icon-negative hover:bg-fm-icon-negative rounded p-2 transition-colors"
|
|
532
558
|
>
|
|
533
|
-
<span className="text-
|
|
559
|
+
<span className="text-fm-icon-active text-sm">
|
|
560
|
+
📺
|
|
561
|
+
</span>
|
|
534
562
|
</a>
|
|
535
563
|
</div>
|
|
536
564
|
</div>
|
|
537
565
|
</div>
|
|
538
566
|
</div>
|
|
539
567
|
</div>
|
|
540
|
-
<div className="rounded-lg
|
|
541
|
-
<pre className="overflow-x-auto text-sm
|
|
568
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
569
|
+
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
542
570
|
{`// Social sharing component
|
|
543
571
|
<div className="share-buttons">
|
|
544
572
|
<h4>Share this article</h4>
|
|
@@ -575,45 +603,47 @@ function ShareButton() {
|
|
|
575
603
|
|
|
576
604
|
{/* Social Login */}
|
|
577
605
|
<div className="!space-y-4">
|
|
578
|
-
<h3 className="text-lg font-semibold
|
|
606
|
+
<h3 className="text-fm-secondary! text-lg font-semibold">
|
|
579
607
|
Social Authentication
|
|
580
608
|
</h3>
|
|
581
609
|
<div className="!space-y-4">
|
|
582
|
-
<div className="rounded-lg border
|
|
583
|
-
<div className="overflow-hidden rounded-lg border
|
|
584
|
-
<div className="border-
|
|
585
|
-
<h4 className="mb-2 text-center text-xl font-semibold
|
|
610
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
|
|
611
|
+
<div className="border-fm-divider-primary bg-fm-surface-secondary overflow-hidden rounded-lg border">
|
|
612
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary border-b p-6">
|
|
613
|
+
<h4 className="text-fm-icon-active mb-2 text-center text-xl font-semibold">
|
|
586
614
|
Welcome Back
|
|
587
615
|
</h4>
|
|
588
|
-
<p className="text-
|
|
616
|
+
<p className="text-fm-tertiary text-center text-sm">
|
|
589
617
|
Sign in to your account
|
|
590
618
|
</p>
|
|
591
619
|
</div>
|
|
592
620
|
<div className="space-y-4 p-6">
|
|
593
|
-
<button className="flex w-full items-center justify-center gap-3 rounded-lg border
|
|
594
|
-
<TwitterXIcon className="h-5 w-5
|
|
595
|
-
<span className="font-medium
|
|
621
|
+
<button className="border-fm-divider-contrast bg-fm-surface-primary hover:bg-fm-surface-secondary flex w-full items-center justify-center gap-3 rounded-lg border px-4 py-3 transition-colors">
|
|
622
|
+
<TwitterXIcon className="text-fm-icon-active h-5 w-5" />
|
|
623
|
+
<span className="text-fm-icon-active font-medium">
|
|
596
624
|
Continue with X
|
|
597
625
|
</span>
|
|
598
626
|
</button>
|
|
599
|
-
<button className="flex w-full items-center justify-center gap-3 rounded-lg border
|
|
627
|
+
<button className="border-fm-divider-primary bg-fm-surface-contrast hover:bg-fm-surface-secondary flex w-full items-center justify-center gap-3 rounded-lg border px-4 py-3 transition-colors">
|
|
600
628
|
<span className="text-xl">🔍</span>
|
|
601
|
-
<span className="font-medium
|
|
629
|
+
<span className="text-fm-primary font-medium">
|
|
602
630
|
Continue with Google
|
|
603
631
|
</span>
|
|
604
632
|
</button>
|
|
605
|
-
<button className="flex w-full items-center justify-center gap-3 rounded-lg
|
|
606
|
-
<span className="text-
|
|
607
|
-
|
|
633
|
+
<button className="bg-fm-icon-info hover:bg-fm-icon-info flex w-full items-center justify-center gap-3 rounded-lg px-4 py-3 transition-colors">
|
|
634
|
+
<span className="text-fm-icon-active text-xl">
|
|
635
|
+
📘
|
|
636
|
+
</span>
|
|
637
|
+
<span className="text-fm-icon-active font-medium">
|
|
608
638
|
Continue with Facebook
|
|
609
639
|
</span>
|
|
610
640
|
</button>
|
|
611
641
|
<div className="relative">
|
|
612
642
|
<div className="absolute inset-0 flex items-center">
|
|
613
|
-
<div className="w-full border-t
|
|
643
|
+
<div className="border-fm-divider-primary w-full border-t"></div>
|
|
614
644
|
</div>
|
|
615
645
|
<div className="relative flex justify-center text-sm">
|
|
616
|
-
<span className="bg-
|
|
646
|
+
<span className="bg-fm-surface-secondary text-fm-tertiary px-2">
|
|
617
647
|
or continue with email
|
|
618
648
|
</span>
|
|
619
649
|
</div>
|
|
@@ -622,22 +652,22 @@ function ShareButton() {
|
|
|
622
652
|
<input
|
|
623
653
|
type="email"
|
|
624
654
|
placeholder="Email address"
|
|
625
|
-
className="w-full rounded-lg border
|
|
655
|
+
className="border-fm-divider-primary bg-fm-surface-secondary text-fm-icon-active w-full rounded-lg border px-3 py-2 placeholder-white/60"
|
|
626
656
|
/>
|
|
627
657
|
<input
|
|
628
658
|
type="password"
|
|
629
659
|
placeholder="Password"
|
|
630
|
-
className="w-full rounded-lg border
|
|
660
|
+
className="border-fm-divider-primary bg-fm-surface-secondary text-fm-icon-active w-full rounded-lg border px-3 py-2 placeholder-white/60"
|
|
631
661
|
/>
|
|
632
|
-
<button className="w-full rounded-lg
|
|
662
|
+
<button className="bg-fm-icon-info text-fm-icon-active hover:bg-fm-icon-info w-full rounded-lg py-2 font-medium transition-colors">
|
|
633
663
|
Sign In
|
|
634
664
|
</button>
|
|
635
665
|
</div>
|
|
636
666
|
</div>
|
|
637
667
|
</div>
|
|
638
668
|
</div>
|
|
639
|
-
<div className="rounded-lg
|
|
640
|
-
<pre className="overflow-x-auto text-sm
|
|
669
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
670
|
+
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
641
671
|
{`// Social authentication options
|
|
642
672
|
<div className="auth-container">
|
|
643
673
|
<div className="auth-header">
|
|
@@ -668,15 +698,15 @@ function ShareButton() {
|
|
|
668
698
|
|
|
669
699
|
{/* Profile Links */}
|
|
670
700
|
<div className="!space-y-4">
|
|
671
|
-
<h3 className="text-lg font-semibold
|
|
701
|
+
<h3 className="text-fm-secondary! text-lg font-semibold">
|
|
672
702
|
Profile Social Links
|
|
673
703
|
</h3>
|
|
674
704
|
<div className="!space-y-4">
|
|
675
|
-
<div className="rounded-lg border
|
|
676
|
-
<div className="overflow-hidden rounded-lg border
|
|
677
|
-
<div className="
|
|
705
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
|
|
706
|
+
<div className="border-fm-divider-primary bg-fm-surface-secondary overflow-hidden rounded-lg border">
|
|
707
|
+
<div className="from-fm-icon-info/20 to-fm-secondary-500/20 relative h-32 bg-linear-to-r">
|
|
678
708
|
<div className="absolute -bottom-8 left-6">
|
|
679
|
-
<div className="flex h-16 w-16 items-center justify-center rounded-full border-4
|
|
709
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-16 w-16 items-center justify-center rounded-full border-4">
|
|
680
710
|
<span className="text-2xl">👤</span>
|
|
681
711
|
</div>
|
|
682
712
|
</div>
|
|
@@ -684,89 +714,95 @@ function ShareButton() {
|
|
|
684
714
|
<div className="p-6 pt-12">
|
|
685
715
|
<div className="flex items-start justify-between">
|
|
686
716
|
<div>
|
|
687
|
-
<h4 className="text-lg font-semibold
|
|
717
|
+
<h4 className="text-fm-icon-active text-lg font-semibold">
|
|
688
718
|
Sarah Johnson
|
|
689
719
|
</h4>
|
|
690
|
-
<p className="text-
|
|
720
|
+
<p className="text-fm-tertiary text-sm">
|
|
691
721
|
@sarahjohnson
|
|
692
722
|
</p>
|
|
693
|
-
<p className="mt-2 text-sm
|
|
723
|
+
<p className="text-fm-secondary mt-2 text-sm">
|
|
694
724
|
Product Designer passionate about creating
|
|
695
725
|
intuitive user experiences
|
|
696
726
|
</p>
|
|
697
727
|
</div>
|
|
698
|
-
<button className="
|
|
728
|
+
<button className="bg-fm-surface-contrast text-fm-icon-active hover:bg-fm-surface-secondary rounded-lg px-4 py-2 font-medium transition-colors">
|
|
699
729
|
Follow
|
|
700
730
|
</button>
|
|
701
731
|
</div>
|
|
702
732
|
<div className="mt-4 flex items-center gap-4">
|
|
703
|
-
<div className="flex items-center gap-2 text-sm
|
|
733
|
+
<div className="text-fm-tertiary flex items-center gap-2 text-sm">
|
|
704
734
|
<span>📍</span>
|
|
705
735
|
<span>San Francisco, CA</span>
|
|
706
736
|
</div>
|
|
707
|
-
<div className="flex items-center gap-2 text-sm
|
|
737
|
+
<div className="text-fm-tertiary flex items-center gap-2 text-sm">
|
|
708
738
|
<span>📅</span>
|
|
709
739
|
<span>Joined March 2020</span>
|
|
710
740
|
</div>
|
|
711
741
|
</div>
|
|
712
742
|
<div className="mt-4 flex items-center gap-6">
|
|
713
743
|
<div className="text-sm">
|
|
714
|
-
<span className="font-medium
|
|
744
|
+
<span className="text-fm-icon-active font-medium">
|
|
715
745
|
1,234
|
|
716
746
|
</span>
|
|
717
|
-
<span className="ml-1
|
|
747
|
+
<span className="text-fm-tertiary ml-1">
|
|
718
748
|
Following
|
|
719
749
|
</span>
|
|
720
750
|
</div>
|
|
721
751
|
<div className="text-sm">
|
|
722
|
-
<span className="font-medium
|
|
752
|
+
<span className="text-fm-icon-active font-medium">
|
|
723
753
|
5,678
|
|
724
754
|
</span>
|
|
725
|
-
<span className="ml-1
|
|
755
|
+
<span className="text-fm-tertiary ml-1">
|
|
726
756
|
Followers
|
|
727
757
|
</span>
|
|
728
758
|
</div>
|
|
729
759
|
</div>
|
|
730
|
-
<div className="mt-4 flex items-center gap-3 border-t
|
|
731
|
-
<span className="text-
|
|
760
|
+
<div className="border-fm-divider-secondary mt-4 flex items-center gap-3 border-t pt-4">
|
|
761
|
+
<span className="text-fm-tertiary text-sm">
|
|
732
762
|
Connect:
|
|
733
763
|
</span>
|
|
734
764
|
<div className="flex gap-2">
|
|
735
765
|
<a
|
|
736
766
|
href="#"
|
|
737
|
-
className="
|
|
767
|
+
className="bg-fm-surface-primary hover:bg-fm-surface-secondary rounded p-2 transition-colors"
|
|
738
768
|
aria-label="Follow on X"
|
|
739
769
|
>
|
|
740
|
-
<TwitterXIcon className="h-4 w-4
|
|
770
|
+
<TwitterXIcon className="text-fm-icon-active h-4 w-4" />
|
|
741
771
|
</a>
|
|
742
772
|
<a
|
|
743
773
|
href="#"
|
|
744
|
-
className="
|
|
774
|
+
className="bg-fm-icon-info hover:bg-fm-icon-info rounded p-2 transition-colors"
|
|
745
775
|
aria-label="Connect on LinkedIn"
|
|
746
776
|
>
|
|
747
|
-
<span className="text-
|
|
777
|
+
<span className="text-fm-icon-active text-sm">
|
|
778
|
+
💼
|
|
779
|
+
</span>
|
|
748
780
|
</a>
|
|
749
781
|
<a
|
|
750
782
|
href="#"
|
|
751
|
-
className="
|
|
783
|
+
className="bg-fm-surface-tertiary hover:bg-fm-surface-secondary rounded p-2 transition-colors"
|
|
752
784
|
aria-label="View GitHub"
|
|
753
785
|
>
|
|
754
|
-
<span className="text-
|
|
786
|
+
<span className="text-fm-icon-active text-sm">
|
|
787
|
+
🐙
|
|
788
|
+
</span>
|
|
755
789
|
</a>
|
|
756
790
|
<a
|
|
757
791
|
href="#"
|
|
758
|
-
className="
|
|
792
|
+
className="bg-fm-secondary-500 hover:bg-fm-secondary-600 rounded p-2 transition-colors"
|
|
759
793
|
aria-label="View Dribbble"
|
|
760
794
|
>
|
|
761
|
-
<span className="text-
|
|
795
|
+
<span className="text-fm-icon-active text-sm">
|
|
796
|
+
🏀
|
|
797
|
+
</span>
|
|
762
798
|
</a>
|
|
763
799
|
</div>
|
|
764
800
|
</div>
|
|
765
801
|
</div>
|
|
766
802
|
</div>
|
|
767
803
|
</div>
|
|
768
|
-
<div className="rounded-lg
|
|
769
|
-
<pre className="overflow-x-auto text-sm
|
|
804
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
805
|
+
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
770
806
|
{`// User profile with social links
|
|
771
807
|
<div className="user-profile">
|
|
772
808
|
<div className="profile-header">
|
|
@@ -805,59 +841,59 @@ function ShareButton() {
|
|
|
805
841
|
|
|
806
842
|
{/* Website Footer */}
|
|
807
843
|
<div className="!space-y-4">
|
|
808
|
-
<h3 className="text-lg font-semibold
|
|
844
|
+
<h3 className="text-fm-secondary! text-lg font-semibold">
|
|
809
845
|
Website Footer
|
|
810
846
|
</h3>
|
|
811
847
|
<div className="!space-y-4">
|
|
812
|
-
<div className="rounded-lg border
|
|
813
|
-
<div className="overflow-hidden rounded-lg border
|
|
848
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
|
|
849
|
+
<div className="border-fm-divider-primary bg-fm-surface-secondary overflow-hidden rounded-lg border">
|
|
814
850
|
<div className="p-8">
|
|
815
851
|
<div className="grid grid-cols-1 gap-8 md:grid-cols-4">
|
|
816
852
|
<div className="md:col-span-2">
|
|
817
|
-
<h4 className="mb-4 text-lg font-semibold
|
|
853
|
+
<h4 className="text-fm-icon-active mb-4 text-lg font-semibold">
|
|
818
854
|
Company Name
|
|
819
855
|
</h4>
|
|
820
|
-
<p className="mb-4 max-w-md text-sm
|
|
856
|
+
<p className="text-fm-secondary mb-4 max-w-md text-sm">
|
|
821
857
|
Building the future of digital experiences
|
|
822
858
|
with cutting-edge technology and innovative
|
|
823
859
|
design solutions.
|
|
824
860
|
</p>
|
|
825
861
|
<div className="flex items-center gap-3">
|
|
826
|
-
<span className="text-
|
|
862
|
+
<span className="text-fm-tertiary text-sm">
|
|
827
863
|
Follow us:
|
|
828
864
|
</span>
|
|
829
865
|
<div className="flex gap-2">
|
|
830
866
|
<a
|
|
831
867
|
href="#"
|
|
832
|
-
className="
|
|
868
|
+
className="bg-fm-surface-primary hover:bg-fm-surface-secondary rounded p-2 transition-colors"
|
|
833
869
|
aria-label="Follow on X"
|
|
834
870
|
>
|
|
835
|
-
<TwitterXIcon className="h-4 w-4
|
|
871
|
+
<TwitterXIcon className="text-fm-icon-active h-4 w-4" />
|
|
836
872
|
</a>
|
|
837
873
|
<a
|
|
838
874
|
href="#"
|
|
839
|
-
className="
|
|
875
|
+
className="bg-fm-icon-info hover:bg-fm-icon-info rounded p-2 transition-colors"
|
|
840
876
|
aria-label="Like on Facebook"
|
|
841
877
|
>
|
|
842
|
-
<span className="text-
|
|
878
|
+
<span className="text-fm-icon-active text-sm">
|
|
843
879
|
📘
|
|
844
880
|
</span>
|
|
845
881
|
</a>
|
|
846
882
|
<a
|
|
847
883
|
href="#"
|
|
848
|
-
className="
|
|
884
|
+
className="bg-fm-icon-info hover:bg-fm-icon-info rounded p-2 transition-colors"
|
|
849
885
|
aria-label="Connect on LinkedIn"
|
|
850
886
|
>
|
|
851
|
-
<span className="text-
|
|
887
|
+
<span className="text-fm-icon-active text-sm">
|
|
852
888
|
💼
|
|
853
889
|
</span>
|
|
854
890
|
</a>
|
|
855
891
|
<a
|
|
856
892
|
href="#"
|
|
857
|
-
className="
|
|
893
|
+
className="bg-fm-icon-negative hover:bg-fm-icon-negative rounded p-2 transition-colors"
|
|
858
894
|
aria-label="Subscribe on YouTube"
|
|
859
895
|
>
|
|
860
|
-
<span className="text-
|
|
896
|
+
<span className="text-fm-icon-active text-sm">
|
|
861
897
|
📺
|
|
862
898
|
</span>
|
|
863
899
|
</a>
|
|
@@ -865,14 +901,14 @@ function ShareButton() {
|
|
|
865
901
|
</div>
|
|
866
902
|
</div>
|
|
867
903
|
<div>
|
|
868
|
-
<h5 className="mb-3 text-sm font-semibold
|
|
904
|
+
<h5 className="text-fm-icon-active mb-3 text-sm font-semibold">
|
|
869
905
|
Product
|
|
870
906
|
</h5>
|
|
871
|
-
<ul className="space-y-2 text-sm
|
|
907
|
+
<ul className="text-fm-tertiary space-y-2 text-sm">
|
|
872
908
|
<li>
|
|
873
909
|
<a
|
|
874
910
|
href="#"
|
|
875
|
-
className="
|
|
911
|
+
className="hover:text-fm-icon-active transition-colors"
|
|
876
912
|
>
|
|
877
913
|
Features
|
|
878
914
|
</a>
|
|
@@ -880,7 +916,7 @@ function ShareButton() {
|
|
|
880
916
|
<li>
|
|
881
917
|
<a
|
|
882
918
|
href="#"
|
|
883
|
-
className="
|
|
919
|
+
className="hover:text-fm-icon-active transition-colors"
|
|
884
920
|
>
|
|
885
921
|
Pricing
|
|
886
922
|
</a>
|
|
@@ -888,7 +924,7 @@ function ShareButton() {
|
|
|
888
924
|
<li>
|
|
889
925
|
<a
|
|
890
926
|
href="#"
|
|
891
|
-
className="
|
|
927
|
+
className="hover:text-fm-icon-active transition-colors"
|
|
892
928
|
>
|
|
893
929
|
Documentation
|
|
894
930
|
</a>
|
|
@@ -896,7 +932,7 @@ function ShareButton() {
|
|
|
896
932
|
<li>
|
|
897
933
|
<a
|
|
898
934
|
href="#"
|
|
899
|
-
className="
|
|
935
|
+
className="hover:text-fm-icon-active transition-colors"
|
|
900
936
|
>
|
|
901
937
|
API
|
|
902
938
|
</a>
|
|
@@ -904,14 +940,14 @@ function ShareButton() {
|
|
|
904
940
|
</ul>
|
|
905
941
|
</div>
|
|
906
942
|
<div>
|
|
907
|
-
<h5 className="mb-3 text-sm font-semibold
|
|
943
|
+
<h5 className="text-fm-icon-active mb-3 text-sm font-semibold">
|
|
908
944
|
Company
|
|
909
945
|
</h5>
|
|
910
|
-
<ul className="space-y-2 text-sm
|
|
946
|
+
<ul className="text-fm-tertiary space-y-2 text-sm">
|
|
911
947
|
<li>
|
|
912
948
|
<a
|
|
913
949
|
href="#"
|
|
914
|
-
className="
|
|
950
|
+
className="hover:text-fm-icon-active transition-colors"
|
|
915
951
|
>
|
|
916
952
|
About
|
|
917
953
|
</a>
|
|
@@ -919,7 +955,7 @@ function ShareButton() {
|
|
|
919
955
|
<li>
|
|
920
956
|
<a
|
|
921
957
|
href="#"
|
|
922
|
-
className="
|
|
958
|
+
className="hover:text-fm-icon-active transition-colors"
|
|
923
959
|
>
|
|
924
960
|
Blog
|
|
925
961
|
</a>
|
|
@@ -927,7 +963,7 @@ function ShareButton() {
|
|
|
927
963
|
<li>
|
|
928
964
|
<a
|
|
929
965
|
href="#"
|
|
930
|
-
className="
|
|
966
|
+
className="hover:text-fm-icon-active transition-colors"
|
|
931
967
|
>
|
|
932
968
|
Careers
|
|
933
969
|
</a>
|
|
@@ -935,7 +971,7 @@ function ShareButton() {
|
|
|
935
971
|
<li>
|
|
936
972
|
<a
|
|
937
973
|
href="#"
|
|
938
|
-
className="
|
|
974
|
+
className="hover:text-fm-icon-active transition-colors"
|
|
939
975
|
>
|
|
940
976
|
Contact
|
|
941
977
|
</a>
|
|
@@ -943,26 +979,26 @@ function ShareButton() {
|
|
|
943
979
|
</ul>
|
|
944
980
|
</div>
|
|
945
981
|
</div>
|
|
946
|
-
<div className="mt-8 flex flex-col items-center justify-between border-t
|
|
947
|
-
<p className="text-
|
|
982
|
+
<div className="border-fm-divider-secondary mt-8 flex flex-col items-center justify-between border-t pt-8 md:flex-row">
|
|
983
|
+
<p className="text-fm-tertiary text-sm">
|
|
948
984
|
© 2024 Company Name. All rights reserved.
|
|
949
985
|
</p>
|
|
950
986
|
<div className="mt-4 flex gap-4 md:mt-0">
|
|
951
987
|
<a
|
|
952
988
|
href="#"
|
|
953
|
-
className="text-
|
|
989
|
+
className="text-fm-tertiary hover:text-fm-icon-active text-sm transition-colors"
|
|
954
990
|
>
|
|
955
991
|
Privacy Policy
|
|
956
992
|
</a>
|
|
957
993
|
<a
|
|
958
994
|
href="#"
|
|
959
|
-
className="text-
|
|
995
|
+
className="text-fm-tertiary hover:text-fm-icon-active text-sm transition-colors"
|
|
960
996
|
>
|
|
961
997
|
Terms of Service
|
|
962
998
|
</a>
|
|
963
999
|
<a
|
|
964
1000
|
href="#"
|
|
965
|
-
className="text-
|
|
1001
|
+
className="text-fm-tertiary hover:text-fm-icon-active text-sm transition-colors"
|
|
966
1002
|
>
|
|
967
1003
|
Cookie Policy
|
|
968
1004
|
</a>
|
|
@@ -971,8 +1007,8 @@ function ShareButton() {
|
|
|
971
1007
|
</div>
|
|
972
1008
|
</div>
|
|
973
1009
|
</div>
|
|
974
|
-
<div className="rounded-lg
|
|
975
|
-
<pre className="overflow-x-auto text-sm
|
|
1010
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
1011
|
+
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
976
1012
|
{`// Website footer with social links
|
|
977
1013
|
<footer className="site-footer">
|
|
978
1014
|
<div className="footer-content">
|
|
@@ -1008,65 +1044,65 @@ function ShareButton() {
|
|
|
1008
1044
|
|
|
1009
1045
|
{/* Accessibility */}
|
|
1010
1046
|
<div className="!space-y-8">
|
|
1011
|
-
<h2 className="text-center text-3xl font-bold
|
|
1047
|
+
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
1012
1048
|
Accessibility Features
|
|
1013
1049
|
</h2>
|
|
1014
1050
|
<div className="grid grid-cols-1 gap-8 md:grid-cols-2">
|
|
1015
|
-
<div className="!space-y-4 rounded-lg border
|
|
1016
|
-
<h3 className="text-lg font-semibold
|
|
1051
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
|
|
1052
|
+
<h3 className="text-fm-icon-positive! text-lg font-semibold">
|
|
1017
1053
|
✅ Built-in Features
|
|
1018
1054
|
</h3>
|
|
1019
|
-
<ul className="!space-y-2 text-sm
|
|
1020
|
-
<li className="
|
|
1055
|
+
<ul className="text-fm-secondary! !space-y-2 text-sm">
|
|
1056
|
+
<li className="text-fm-secondary!">
|
|
1021
1057
|
Uses Radix UI AccessibleIcon wrapper
|
|
1022
1058
|
</li>
|
|
1023
|
-
<li className="
|
|
1059
|
+
<li className="text-fm-secondary!">
|
|
1024
1060
|
Provides screen reader label "Twitter X icon"
|
|
1025
1061
|
</li>
|
|
1026
|
-
<li className="
|
|
1062
|
+
<li className="text-fm-secondary!">
|
|
1027
1063
|
Supports keyboard navigation when interactive
|
|
1028
1064
|
</li>
|
|
1029
|
-
<li className="
|
|
1065
|
+
<li className="text-fm-secondary!">
|
|
1030
1066
|
High contrast design for visibility
|
|
1031
1067
|
</li>
|
|
1032
|
-
<li className="
|
|
1068
|
+
<li className="text-fm-secondary!">
|
|
1033
1069
|
Maintains aspect ratio across all sizes
|
|
1034
1070
|
</li>
|
|
1035
1071
|
</ul>
|
|
1036
1072
|
</div>
|
|
1037
1073
|
|
|
1038
|
-
<div className="!space-y-4 rounded-lg border
|
|
1039
|
-
<h3 className="text-lg font-semibold
|
|
1074
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
|
|
1075
|
+
<h3 className="text-fm-secondary! text-lg font-semibold">
|
|
1040
1076
|
💡 Best Practices
|
|
1041
1077
|
</h3>
|
|
1042
|
-
<ul className="!space-y-2 text-sm
|
|
1043
|
-
<li className="
|
|
1078
|
+
<ul className="text-fm-secondary !space-y-2 text-sm">
|
|
1079
|
+
<li className="text-fm-secondary!">
|
|
1044
1080
|
Always provide descriptive aria-labels for social
|
|
1045
1081
|
actions
|
|
1046
1082
|
</li>
|
|
1047
|
-
<li className="
|
|
1083
|
+
<li className="text-fm-secondary!">
|
|
1048
1084
|
Follow official Twitter/X brand guidelines
|
|
1049
1085
|
</li>
|
|
1050
|
-
<li className="
|
|
1086
|
+
<li className="text-fm-secondary!">
|
|
1051
1087
|
Ensure sufficient contrast ratios for visibility
|
|
1052
1088
|
</li>
|
|
1053
|
-
<li className="
|
|
1089
|
+
<li className="text-fm-secondary!">
|
|
1054
1090
|
Use consistent sizing across social media icons
|
|
1055
1091
|
</li>
|
|
1056
|
-
<li className="
|
|
1092
|
+
<li className="text-fm-secondary!">
|
|
1057
1093
|
Provide text alternatives when icons are standalone
|
|
1058
1094
|
</li>
|
|
1059
1095
|
</ul>
|
|
1060
1096
|
</div>
|
|
1061
1097
|
</div>
|
|
1062
1098
|
|
|
1063
|
-
<div className="rounded-lg border
|
|
1064
|
-
<h3 className="mb-4 text-lg font-semibold
|
|
1099
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
|
|
1100
|
+
<h3 className="text-fm-icon-info! mb-4 text-lg font-semibold">
|
|
1065
1101
|
Proper ARIA Implementation
|
|
1066
1102
|
</h3>
|
|
1067
1103
|
<div className="grid grid-cols-1 gap-6 lg:grid-cols-2">
|
|
1068
|
-
<div className="rounded-lg
|
|
1069
|
-
<pre className="overflow-x-auto text-sm
|
|
1104
|
+
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
1105
|
+
<pre className="text-fm-icon-info! overflow-x-auto text-sm">
|
|
1070
1106
|
{`// Social share button
|
|
1071
1107
|
<button
|
|
1072
1108
|
onClick={shareOnTwitter}
|
|
@@ -1133,14 +1169,14 @@ function ShareButton() {
|
|
|
1133
1169
|
</pre>
|
|
1134
1170
|
</div>
|
|
1135
1171
|
<div className="!space-y-4">
|
|
1136
|
-
<p className="text-
|
|
1172
|
+
<p className="text-fm-secondary! text-sm">
|
|
1137
1173
|
When using TwitterXIcon for social integration, always
|
|
1138
1174
|
provide clear context about the action and destination
|
|
1139
1175
|
platform. Include proper external link indicators when
|
|
1140
1176
|
applicable.
|
|
1141
1177
|
</p>
|
|
1142
|
-
<div className="
|
|
1143
|
-
<div className="flex items-center gap-2 text-sm
|
|
1178
|
+
<div className="border-fm-divider-secondary bg-fm-icon-inactive/10 rounded-lg border p-4">
|
|
1179
|
+
<div className="text-fm-secondary flex items-center gap-2 text-sm">
|
|
1144
1180
|
<TwitterXIcon className="h-4 w-4" />
|
|
1145
1181
|
<span>
|
|
1146
1182
|
Use "X (formerly Twitter)" in aria-labels during the
|
|
@@ -1155,52 +1191,60 @@ function ShareButton() {
|
|
|
1155
1191
|
|
|
1156
1192
|
{/* Related Icons */}
|
|
1157
1193
|
<div className="!space-y-8">
|
|
1158
|
-
<h2 className="text-center text-3xl font-bold
|
|
1194
|
+
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
1159
1195
|
Related Icons
|
|
1160
1196
|
</h2>
|
|
1161
1197
|
<div className="grid grid-cols-2 gap-6 md:grid-cols-4">
|
|
1162
|
-
<div className="!space-y-3 rounded-lg border
|
|
1163
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg
|
|
1164
|
-
<span className="
|
|
1198
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
|
|
1199
|
+
<div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
|
|
1200
|
+
<span className="text-fm-icon-active! !text-2xl">📘</span>
|
|
1165
1201
|
</div>
|
|
1166
1202
|
<div>
|
|
1167
|
-
<div className="font-medium
|
|
1168
|
-
|
|
1203
|
+
<div className="text-fm-icon-active font-medium">
|
|
1204
|
+
FacebookIcon
|
|
1205
|
+
</div>
|
|
1206
|
+
<div className="text-fm-tertiary text-xs">
|
|
1169
1207
|
Social platform
|
|
1170
1208
|
</div>
|
|
1171
1209
|
</div>
|
|
1172
1210
|
</div>
|
|
1173
|
-
<div className="!space-y-3 rounded-lg border
|
|
1174
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg
|
|
1175
|
-
<span className="
|
|
1211
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
|
|
1212
|
+
<div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
|
|
1213
|
+
<span className="text-fm-icon-active! !text-2xl">💼</span>
|
|
1176
1214
|
</div>
|
|
1177
1215
|
<div>
|
|
1178
|
-
<div className="font-medium
|
|
1179
|
-
|
|
1216
|
+
<div className="text-fm-icon-active font-medium">
|
|
1217
|
+
LinkedInIcon
|
|
1218
|
+
</div>
|
|
1219
|
+
<div className="text-fm-tertiary text-xs">
|
|
1180
1220
|
Professional network
|
|
1181
1221
|
</div>
|
|
1182
1222
|
</div>
|
|
1183
1223
|
</div>
|
|
1184
|
-
<div className="!space-y-3 rounded-lg border
|
|
1185
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg
|
|
1186
|
-
<span className="
|
|
1224
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
|
|
1225
|
+
<div className="bg-fm-icon-negative/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
|
|
1226
|
+
<span className="text-fm-icon-active! !text-2xl">📺</span>
|
|
1187
1227
|
</div>
|
|
1188
1228
|
<div>
|
|
1189
|
-
<div className="font-medium
|
|
1190
|
-
|
|
1229
|
+
<div className="text-fm-icon-active font-medium">
|
|
1230
|
+
YouTubeIcon
|
|
1231
|
+
</div>
|
|
1232
|
+
<div className="text-fm-tertiary text-xs">
|
|
1191
1233
|
Video platform
|
|
1192
1234
|
</div>
|
|
1193
1235
|
</div>
|
|
1194
1236
|
</div>
|
|
1195
|
-
<div className="!space-y-3 rounded-lg border
|
|
1196
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg
|
|
1197
|
-
<span className="
|
|
1237
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
|
|
1238
|
+
<div className="bg-fm-secondary-500/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
|
|
1239
|
+
<span className="text-fm-icon-active! !text-2xl">📷</span>
|
|
1198
1240
|
</div>
|
|
1199
1241
|
<div>
|
|
1200
|
-
<div className="font-medium
|
|
1242
|
+
<div className="text-fm-icon-active font-medium">
|
|
1201
1243
|
InstagramIcon
|
|
1202
1244
|
</div>
|
|
1203
|
-
<div className="text-
|
|
1245
|
+
<div className="text-fm-tertiary text-xs">
|
|
1246
|
+
Photo sharing
|
|
1247
|
+
</div>
|
|
1204
1248
|
</div>
|
|
1205
1249
|
</div>
|
|
1206
1250
|
</div>
|
|
@@ -1208,15 +1252,15 @@ function ShareButton() {
|
|
|
1208
1252
|
</div>
|
|
1209
1253
|
|
|
1210
1254
|
{/* Footer */}
|
|
1211
|
-
<div className="border-
|
|
1255
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary border-t backdrop-blur-xl">
|
|
1212
1256
|
<div className="!mx-auto max-w-7xl px-6 py-8">
|
|
1213
1257
|
<div className="!space-y-4 text-center">
|
|
1214
|
-
<p className="
|
|
1258
|
+
<p className="text-fm-tertiary!">
|
|
1215
1259
|
TwitterXIcon is part of the Aural UI icon library, built
|
|
1216
1260
|
with accessibility and social media integration best
|
|
1217
1261
|
practices in mind.
|
|
1218
1262
|
</p>
|
|
1219
|
-
<p className="text-
|
|
1263
|
+
<p className="text-fm-placeholder! text-sm">
|
|
1220
1264
|
All icons use Radix UI's AccessibleIcon for screen reader
|
|
1221
1265
|
compatibility and follow WCAG guidelines for social platform
|
|
1222
1266
|
recognition and brand consistency.
|
|
@@ -1266,20 +1310,20 @@ const storyParameters = {
|
|
|
1266
1310
|
backgrounds: {
|
|
1267
1311
|
default: "dark",
|
|
1268
1312
|
values: [
|
|
1269
|
-
{ name: "dark", value: "
|
|
1270
|
-
{ name: "darker", value: "
|
|
1313
|
+
{ name: "dark", value: "var(--color-fm-surface-primary)" },
|
|
1314
|
+
{ name: "darker", value: "var(--color-fm-neutral-0)" },
|
|
1271
1315
|
],
|
|
1272
1316
|
},
|
|
1273
1317
|
}
|
|
1274
1318
|
|
|
1275
1319
|
export const Default: Story = {
|
|
1276
1320
|
args: {
|
|
1277
|
-
className: "h-8 w-8 text-
|
|
1321
|
+
className: "h-8 w-8 text-fm-icon-active",
|
|
1278
1322
|
withAccessibility: true,
|
|
1279
1323
|
},
|
|
1280
1324
|
parameters: storyParameters,
|
|
1281
1325
|
render: (args) => (
|
|
1282
|
-
<div className="flex h-32 min-h-dvh items-center justify-center rounded-lg bg-
|
|
1326
|
+
<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">
|
|
1283
1327
|
<TwitterXIcon {...args} />
|
|
1284
1328
|
</div>
|
|
1285
1329
|
),
|
|
@@ -1296,30 +1340,30 @@ export const SizeVariations: Story = {
|
|
|
1296
1340
|
},
|
|
1297
1341
|
},
|
|
1298
1342
|
render: () => (
|
|
1299
|
-
<div className="flex h-64 min-h-dvh items-center justify-center gap-8 rounded-lg bg-
|
|
1343
|
+
<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">
|
|
1300
1344
|
<div className="text-center">
|
|
1301
|
-
<TwitterXIcon className="!mx-auto mb-2 h-3 w-3
|
|
1302
|
-
<span className="text-
|
|
1345
|
+
<TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-3 w-3" />
|
|
1346
|
+
<span className="text-fm-tertiary text-xs">12px</span>
|
|
1303
1347
|
</div>
|
|
1304
1348
|
<div className="text-center">
|
|
1305
|
-
<TwitterXIcon className="!mx-auto mb-2 h-4 w-4
|
|
1306
|
-
<span className="text-
|
|
1349
|
+
<TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-4 w-4" />
|
|
1350
|
+
<span className="text-fm-tertiary text-xs">16px</span>
|
|
1307
1351
|
</div>
|
|
1308
1352
|
<div className="text-center">
|
|
1309
|
-
<TwitterXIcon className="!mx-auto mb-2 h-5 w-5
|
|
1310
|
-
<span className="text-
|
|
1353
|
+
<TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-5 w-5" />
|
|
1354
|
+
<span className="text-fm-tertiary text-xs">20px</span>
|
|
1311
1355
|
</div>
|
|
1312
1356
|
<div className="text-center">
|
|
1313
|
-
<TwitterXIcon className="!mx-auto mb-2 h-6 w-6
|
|
1314
|
-
<span className="text-
|
|
1357
|
+
<TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-6 w-6" />
|
|
1358
|
+
<span className="text-fm-tertiary text-xs">24px</span>
|
|
1315
1359
|
</div>
|
|
1316
1360
|
<div className="text-center">
|
|
1317
|
-
<TwitterXIcon className="!mx-auto mb-2 h-8 w-8
|
|
1318
|
-
<span className="text-
|
|
1361
|
+
<TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-8 w-8" />
|
|
1362
|
+
<span className="text-fm-tertiary text-xs">32px</span>
|
|
1319
1363
|
</div>
|
|
1320
1364
|
<div className="text-center">
|
|
1321
|
-
<TwitterXIcon className="!mx-auto mb-2 h-12 w-12
|
|
1322
|
-
<span className="text-
|
|
1365
|
+
<TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-12 w-12" />
|
|
1366
|
+
<span className="text-fm-tertiary text-xs">48px</span>
|
|
1323
1367
|
</div>
|
|
1324
1368
|
</div>
|
|
1325
1369
|
),
|
|
@@ -1336,34 +1380,42 @@ export const BrandColors: Story = {
|
|
|
1336
1380
|
},
|
|
1337
1381
|
},
|
|
1338
1382
|
render: () => (
|
|
1339
|
-
<div className="grid min-h-dvh grid-cols-2 items-center justify-center gap-6 rounded-lg bg-
|
|
1383
|
+
<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">
|
|
1340
1384
|
<div className="text-center">
|
|
1341
|
-
<div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg
|
|
1342
|
-
<TwitterXIcon className="h-8 w-8
|
|
1385
|
+
<div className="bg-fm-surface-primary !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg">
|
|
1386
|
+
<TwitterXIcon className="text-fm-icon-active h-8 w-8" />
|
|
1387
|
+
</div>
|
|
1388
|
+
<div className="text-fm-icon-active text-sm font-medium">
|
|
1389
|
+
Official Black
|
|
1343
1390
|
</div>
|
|
1344
|
-
<div className="text-
|
|
1345
|
-
<div className="text-xs text-white/60">Primary brand</div>
|
|
1391
|
+
<div className="text-fm-tertiary text-xs">Primary brand</div>
|
|
1346
1392
|
</div>
|
|
1347
1393
|
<div className="text-center">
|
|
1348
|
-
<div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border
|
|
1349
|
-
<TwitterXIcon className="h-8 w-8
|
|
1394
|
+
<div className="border-fm-divider-primary bg-fm-surface-contrast !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
|
|
1395
|
+
<TwitterXIcon className="text-fm-icon-active h-8 w-8" />
|
|
1350
1396
|
</div>
|
|
1351
|
-
<div className="text-sm font-medium
|
|
1352
|
-
|
|
1397
|
+
<div className="text-fm-icon-active text-sm font-medium">
|
|
1398
|
+
Inverted White
|
|
1399
|
+
</div>
|
|
1400
|
+
<div className="text-fm-tertiary text-xs">Light backgrounds</div>
|
|
1353
1401
|
</div>
|
|
1354
1402
|
<div className="text-center">
|
|
1355
|
-
<div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg
|
|
1356
|
-
<TwitterXIcon className="h-8 w-8
|
|
1403
|
+
<div className="bg-fm-surface-tertiary !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg">
|
|
1404
|
+
<TwitterXIcon className="text-fm-icon-active h-8 w-8" />
|
|
1405
|
+
</div>
|
|
1406
|
+
<div className="text-fm-icon-active text-sm font-medium">
|
|
1407
|
+
Neutral Gray
|
|
1357
1408
|
</div>
|
|
1358
|
-
<div className="text-
|
|
1359
|
-
<div className="text-xs text-white/60">Subtle integration</div>
|
|
1409
|
+
<div className="text-fm-tertiary text-xs">Subtle integration</div>
|
|
1360
1410
|
</div>
|
|
1361
1411
|
<div className="text-center">
|
|
1362
|
-
<div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg
|
|
1363
|
-
<TwitterXIcon className="h-8 w-8
|
|
1412
|
+
<div className="bg-fm-icon-info !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg">
|
|
1413
|
+
<TwitterXIcon className="text-fm-icon-active h-8 w-8" />
|
|
1414
|
+
</div>
|
|
1415
|
+
<div className="text-fm-icon-active text-sm font-medium">
|
|
1416
|
+
Accent Color
|
|
1364
1417
|
</div>
|
|
1365
|
-
<div className="text-
|
|
1366
|
-
<div className="text-xs text-white/60">Themed integration</div>
|
|
1418
|
+
<div className="text-fm-tertiary text-xs">Themed integration</div>
|
|
1367
1419
|
</div>
|
|
1368
1420
|
</div>
|
|
1369
1421
|
),
|
|
@@ -1380,19 +1432,21 @@ export const UsageExamples: Story = {
|
|
|
1380
1432
|
},
|
|
1381
1433
|
},
|
|
1382
1434
|
render: () => (
|
|
1383
|
-
<div className="min-h-dvh !space-y-8 rounded-lg bg-
|
|
1435
|
+
<div className="from-fm-surface-primary to-fm-surface-secondary min-h-dvh !space-y-8 rounded-lg bg-linear-to-br p-8">
|
|
1384
1436
|
{/* Share Button */}
|
|
1385
1437
|
<div className="!space-y-2">
|
|
1386
|
-
<h3 className="text-sm font-medium
|
|
1387
|
-
|
|
1438
|
+
<h3 className="text-fm-icon-active text-sm font-medium">
|
|
1439
|
+
Social Share Button
|
|
1440
|
+
</h3>
|
|
1441
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
|
|
1388
1442
|
<div className="flex gap-3">
|
|
1389
|
-
<button className="flex items-center gap-2 rounded-lg border
|
|
1390
|
-
<TwitterXIcon className="h-4 w-4
|
|
1391
|
-
<span className="text-
|
|
1443
|
+
<button className="border-fm-divider-contrast bg-fm-surface-primary hover:bg-fm-surface-secondary flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
|
|
1444
|
+
<TwitterXIcon className="text-fm-icon-active h-4 w-4" />
|
|
1445
|
+
<span className="text-fm-icon-active text-sm">Share on X</span>
|
|
1392
1446
|
</button>
|
|
1393
|
-
<button className="flex items-center gap-2 rounded-lg
|
|
1394
|
-
<span className="text-
|
|
1395
|
-
<span className="text-
|
|
1447
|
+
<button className="bg-fm-icon-info hover:bg-fm-icon-info flex items-center gap-2 rounded-lg px-4 py-2 transition-colors">
|
|
1448
|
+
<span className="text-fm-icon-active text-sm">📘</span>
|
|
1449
|
+
<span className="text-fm-icon-active text-sm">Facebook</span>
|
|
1396
1450
|
</button>
|
|
1397
1451
|
</div>
|
|
1398
1452
|
</div>
|
|
@@ -1400,41 +1454,45 @@ export const UsageExamples: Story = {
|
|
|
1400
1454
|
|
|
1401
1455
|
{/* Social Auth */}
|
|
1402
1456
|
<div className="!space-y-2">
|
|
1403
|
-
<h3 className="text-sm font-medium
|
|
1457
|
+
<h3 className="text-fm-icon-active text-sm font-medium">
|
|
1404
1458
|
Social Authentication
|
|
1405
1459
|
</h3>
|
|
1406
|
-
<div className="rounded-lg border
|
|
1407
|
-
<button className="flex w-full items-center justify-center gap-3 rounded-lg border
|
|
1408
|
-
<TwitterXIcon className="h-5 w-5
|
|
1409
|
-
<span className="font-medium
|
|
1460
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
|
|
1461
|
+
<button className="border-fm-divider-contrast bg-fm-surface-primary hover:bg-fm-surface-secondary flex w-full items-center justify-center gap-3 rounded-lg border px-4 py-3 transition-colors">
|
|
1462
|
+
<TwitterXIcon className="text-fm-icon-active h-5 w-5" />
|
|
1463
|
+
<span className="text-fm-icon-active font-medium">
|
|
1464
|
+
Continue with X
|
|
1465
|
+
</span>
|
|
1410
1466
|
</button>
|
|
1411
1467
|
</div>
|
|
1412
1468
|
</div>
|
|
1413
1469
|
|
|
1414
1470
|
{/* Footer Links */}
|
|
1415
1471
|
<div className="!space-y-2">
|
|
1416
|
-
<h3 className="text-sm font-medium
|
|
1417
|
-
|
|
1472
|
+
<h3 className="text-fm-icon-active text-sm font-medium">
|
|
1473
|
+
Footer Social Links
|
|
1474
|
+
</h3>
|
|
1475
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
|
|
1418
1476
|
<div className="flex items-center gap-3">
|
|
1419
|
-
<span className="text-
|
|
1477
|
+
<span className="text-fm-tertiary text-sm">Follow us:</span>
|
|
1420
1478
|
<div className="flex gap-2">
|
|
1421
1479
|
<a
|
|
1422
1480
|
href="#"
|
|
1423
|
-
className="
|
|
1481
|
+
className="bg-fm-surface-primary hover:bg-fm-surface-secondary rounded p-2 transition-colors"
|
|
1424
1482
|
>
|
|
1425
|
-
<TwitterXIcon className="h-4 w-4
|
|
1483
|
+
<TwitterXIcon className="text-fm-icon-active h-4 w-4" />
|
|
1426
1484
|
</a>
|
|
1427
1485
|
<a
|
|
1428
1486
|
href="#"
|
|
1429
|
-
className="
|
|
1487
|
+
className="bg-fm-icon-info hover:bg-fm-icon-info rounded p-2 transition-colors"
|
|
1430
1488
|
>
|
|
1431
|
-
<span className="text-
|
|
1489
|
+
<span className="text-fm-icon-active text-sm">📘</span>
|
|
1432
1490
|
</a>
|
|
1433
1491
|
<a
|
|
1434
1492
|
href="#"
|
|
1435
|
-
className="
|
|
1493
|
+
className="bg-fm-icon-negative hover:bg-fm-icon-negative rounded p-2 transition-colors"
|
|
1436
1494
|
>
|
|
1437
|
-
<span className="text-
|
|
1495
|
+
<span className="text-fm-icon-active text-sm">📺</span>
|
|
1438
1496
|
</a>
|
|
1439
1497
|
</div>
|
|
1440
1498
|
</div>
|
|
@@ -1457,11 +1515,11 @@ export const Playground: Story = {
|
|
|
1457
1515
|
args: {
|
|
1458
1516
|
width: 24,
|
|
1459
1517
|
height: 24,
|
|
1460
|
-
className: "text-
|
|
1518
|
+
className: "text-fm-icon-active",
|
|
1461
1519
|
},
|
|
1462
1520
|
render: (args) => (
|
|
1463
|
-
<div className="flex h-64 min-h-dvh items-center justify-center rounded-lg bg-
|
|
1464
|
-
<div className="rounded-lg border
|
|
1521
|
+
<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">
|
|
1522
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
|
|
1465
1523
|
<TwitterXIcon {...args} />
|
|
1466
1524
|
</div>
|
|
1467
1525
|
</div>
|