aural-ui 3.0.7 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/aspect-ratio/AspectRatio.stories.tsx +290 -1199
- package/dist/components/avatar/Avatar.stories.tsx +235 -237
- package/dist/components/badge/Badge.stories.tsx +379 -116
- package/dist/components/banner/Banner.stories.tsx +445 -391
- package/dist/components/breadcrumb/Breadcrumb.stories.tsx +453 -199
- package/dist/components/button/Button.stories.tsx +585 -230
- package/dist/components/button/index.tsx +7 -7
- package/dist/components/card/Card.stories.tsx +619 -301
- package/dist/components/char-count/CharCount.stories.tsx +350 -248
- package/dist/components/checkbox/Checkbox.stories.tsx +309 -167
- package/dist/components/chip/Chip.stories.tsx +362 -168
- package/dist/components/circular-loader/CircularLoader.stories.tsx +221 -620
- package/dist/components/clamp-lines/ClampLines.stories.tsx +246 -117
- package/dist/components/collapsible/Collapsible.stories.tsx +391 -252
- package/dist/components/command/Command.stories.tsx +533 -856
- package/dist/components/dialog/Dialog.stories.tsx +505 -949
- package/dist/components/divider/Divider.stories.tsx +265 -502
- package/dist/components/dot-loader/DotLoader.stories.tsx +256 -257
- package/dist/components/drawer/Drawer.stories.tsx +659 -993
- package/dist/components/drawer/index.tsx +3 -3
- package/dist/components/dropdown/Dropdown.stories.tsx +643 -1018
- package/dist/components/form/Form.stories.tsx +560 -274
- package/dist/components/helper-text/HelperText.stories.tsx +199 -200
- package/dist/components/hover-card/HoverCard.stories.tsx +318 -1221
- package/dist/components/icon-button/IconButton.stories.tsx +837 -194
- package/dist/components/if-else/if-else.stories.tsx +370 -83
- package/dist/components/input/Input.stories.tsx +436 -368
- package/dist/components/label/Label.stories.tsx +156 -154
- package/dist/components/list/List.stories.tsx +485 -822
- package/dist/components/marquee/Marquee.stories.tsx +356 -694
- package/dist/components/otp-inputs/OtpInputs.stories.tsx +352 -410
- package/dist/components/overlay/Overlay.stories.tsx +452 -818
- package/dist/components/overlay/index.tsx +4 -4
- package/dist/components/pagination/Pagination.stories.tsx +721 -210
- package/dist/components/popover/Popover.stories.tsx +484 -873
- package/dist/components/radio/Radio.stories.tsx +432 -124
- package/dist/components/resizable/Resizable.stories.tsx +496 -752
- package/dist/components/scroll-area/ScrollArea.stories.tsx +384 -1006
- package/dist/components/search/Search.stories.tsx +314 -575
- package/dist/components/select/Select.stories.tsx +684 -787
- package/dist/components/sheet/Sheet.stories.tsx +671 -936
- package/dist/components/skelton/Skelton.stories.tsx +230 -764
- package/dist/components/slider/Slider.stories.tsx +384 -737
- package/dist/components/stepper/Stepper.stories.tsx +371 -514
- package/dist/components/switch/Switch.stories.tsx +461 -208
- package/dist/components/switch-case/SwitchCase.stories.tsx +367 -188
- package/dist/components/table/Table.stories.tsx +770 -914
- package/dist/components/tabs/Tabs.stories.tsx +459 -1400
- package/dist/components/tag/Tag.stories.tsx +714 -542
- package/dist/components/textarea/TextArea.stories.tsx +621 -562
- package/dist/components/thumbnail-tags/ThumbnailTags.stories.tsx +228 -148
- package/dist/components/toast/Toast.stories.tsx +452 -1333
- package/dist/components/toggle/Toggle.stories.tsx +488 -909
- package/dist/components/tooltip/Tooltip.stories.tsx +344 -1372
- package/dist/components/typography/Typography.stories.tsx +406 -89
- package/dist/hooks/use-change-state/UseChangeState.stories.tsx +309 -606
- package/dist/hooks/use-previous/UsePrevious.stories.tsx +367 -917
- package/dist/hooks/use-standalone-pagination/UseStandalonePagination.stories.tsx +639 -867
- package/dist/icons/Icons.stories.tsx +0 -12
- package/dist/icons/ai-avatar-icon/AiAvatarIcon.stories.tsx +226 -1013
- package/dist/icons/alert-icon/AlertIcon.stories.tsx +109 -929
- package/dist/icons/all-icons.tsx +124 -87
- package/dist/icons/angle-down-icon/AngleDownIcon.stories.tsx +140 -971
- package/dist/icons/apple-logo-icon/AppleLogoIcon.stories.tsx +148 -888
- package/dist/icons/arrow-box-left-icon/ArrowBoxLeftIcon.stories.tsx +135 -1019
- package/dist/icons/arrow-corner-up-left-icon/ArrowCornerUpLeftIcon.stories.tsx +137 -953
- package/dist/icons/arrow-corner-up-right-icon/ArrowCornerUpRightIcon.stories.tsx +138 -997
- package/dist/icons/arrow-left-icon/ArrowLeftIcon.stories.tsx +136 -942
- package/dist/icons/arrow-right-icon/ArrowRightIcon.stories.tsx +148 -1092
- package/dist/icons/arrow-right-up-icon/ArrowRightUpIcon.stories.tsx +146 -1211
- package/dist/icons/art-board-icon/ArtBoardIcon.stories.tsx +126 -615
- package/dist/icons/audio-bar-icon/AudioBarIcon.stories.tsx +144 -1164
- package/dist/icons/backward-ten-seconds-icon/BackwardTenSecondsIcon.stories.tsx +167 -985
- package/dist/icons/bubble-check-icon/BubbleCheckIcon.stories.tsx +122 -1179
- package/dist/icons/bubble-crossed-icon/BubbleCrossedIcon.stories.tsx +124 -1168
- package/dist/icons/bubble-sparkle-icon/BubbleSparkleIcon.stories.tsx +119 -850
- package/dist/icons/camera-icon/CameraIcon.stories.tsx +112 -1213
- package/dist/icons/capital-a-letter-icon/CapitalALetterIcon.stories.tsx +117 -934
- package/dist/icons/chevron-double-left-icon/ChevronDoubleLeftIcon.stories.tsx +160 -961
- package/dist/icons/chevron-double-right-icon/ChevronDoubleRightIcon.stories.tsx +163 -961
- package/dist/icons/chevron-down-icon/ChevronDownIcon.stories.tsx +144 -942
- package/dist/icons/chevron-left-icon/ChevronLeftIcon.stories.tsx +129 -966
- package/dist/icons/chevron-right-icon/ChevronRightIcon.stories.tsx +147 -964
- package/dist/icons/chevron-up-icon/ChevronUpIcon.stories.tsx +145 -975
- package/dist/icons/circle-tick-icon/CircleTickIcon.stories.tsx +150 -1142
- package/dist/icons/circular-play-icon/CircularPlayIcon.stories.tsx +114 -461
- package/dist/icons/coin-icon/CoinIcon.stories.tsx +124 -1322
- package/dist/icons/coin-toons-icon/CoinToonsIcon.stories.tsx +117 -1318
- package/dist/icons/column-wide-add-icon/ColumnWideAddIcon.stories.tsx +114 -903
- package/dist/icons/command-icon/CommandIcon.stories.tsx +127 -1042
- package/dist/icons/copy-icon/CopyIcon.stories.tsx +123 -962
- package/dist/icons/cross-circle-icon/CrossCircleIcon.stories.tsx +147 -999
- package/dist/icons/cross-icon/CrossIcon.stories.tsx +139 -960
- package/dist/icons/download-icon/DownloadIcon.stories.tsx +126 -820
- package/dist/icons/edit-big-icon/EditBigIcon.stories.tsx +124 -1031
- package/dist/icons/email-icon/EmailIcon.stories.tsx +115 -936
- package/dist/icons/expand-icon/ExpandIcon.stories.tsx +112 -1111
- package/dist/icons/eye-close-icon/EyeCloseIcon.stories.tsx +144 -1025
- package/dist/icons/eye-open-icon/EyeOpenIcon.stories.tsx +143 -1036
- package/dist/icons/feature-shine-icon/FeatureShineIcon.stories.tsx +127 -1011
- package/dist/icons/file-chart-icon/FileChartIcon.stories.tsx +126 -1056
- package/dist/icons/file-text-icon/FileTextIcon.stories.tsx +125 -614
- package/dist/icons/filter-bar-row-icon/FilterBarRowIcon.stories.tsx +119 -1050
- package/dist/icons/forward-ten-seconds-icon/ForwardTenSecondsIcon.stories.tsx +169 -989
- package/dist/icons/git-branch-icon/GitBranchIcon.stories.tsx +115 -1145
- package/dist/icons/git-fork-icon/GitForkIcon.stories.tsx +115 -1122
- package/dist/icons/globe-icon/GlobeIcon.stories.tsx +130 -313
- package/dist/icons/google-logo-icon/GoogleLogoIcon.stories.tsx +145 -940
- package/dist/icons/grip-vertical-icon/GripVerticalIcon.stories.tsx +119 -1174
- package/dist/icons/head-icon/HeadIcon.stories.tsx +111 -916
- package/dist/icons/heart-icon/HeartIcon.stories.tsx +120 -1019
- package/dist/icons/image-avatar-sparkle-icon/ImageAvatarSparkleIcon.stories.tsx +119 -683
- package/dist/icons/image-icon/ImageIcon.stories.tsx +105 -1121
- package/dist/icons/import-folder-icon/ImportFolderIcon.stories.tsx +111 -1192
- package/dist/icons/import-left-arrow-folder-icon/ImportLeftArrowFolderIcon.stories.tsx +136 -1256
- package/dist/icons/indian-flag-icon/IndianFlagIcon.stories.tsx +159 -962
- package/dist/icons/instagram-icon/InstagramIcon.stories.tsx +161 -1385
- package/dist/icons/layout-column-icon/LayoutColumnIcon.stories.tsx +124 -972
- package/dist/icons/layout-left-icon/LayoutLeftIcon.stories.tsx +119 -948
- package/dist/icons/layout-right-icon/LayoutRightIcon.stories.tsx +119 -942
- package/dist/icons/light-bulb-simple-icon/LightBulbSimpleIcon.stories.tsx +108 -1215
- package/dist/icons/linked-in-icon/LinkedInIcon.stories.tsx +154 -1517
- package/dist/icons/magic-book-icon/MagicBookIcon.stories.tsx +110 -1188
- package/dist/icons/magic-edit-icon/MagicEditIcon.stories.tsx +119 -678
- package/dist/icons/maintenance-icon/MaintenanceIcon.stories.tsx +123 -1184
- package/dist/icons/message-icon/MessageIcon.stories.tsx +114 -538
- package/dist/icons/minimize-icon/MinimizeIcon.stories.tsx +116 -1158
- package/dist/icons/moon-icon/MoonIcon.stories.tsx +120 -536
- package/dist/icons/move-horizontal-icon/MoveHorizontalIcon.stories.tsx +109 -1184
- package/dist/icons/move-vertical-icon/MoveVerticalIcon.stories.tsx +115 -1134
- package/dist/icons/musical-note-icon/MusicalNoteIcon.stories.tsx +119 -971
- package/dist/icons/notepad-icon/NotepadIcon.stories.tsx +111 -1100
- package/dist/icons/notes-icon/NotesIcon.stories.tsx +119 -1101
- package/dist/icons/page-search-icon/PageSearchIcon.stories.tsx +109 -1111
- package/dist/icons/page-text-icon/PageTextIcon.stories.tsx +122 -684
- package/dist/icons/paint-roll-icon/PaintRollIcon.stories.tsx +113 -954
- package/dist/icons/paper-plane-icon/PaperPlaneIcon.stories.tsx +112 -877
- package/dist/icons/pause-icon/PauseIcon.stories.tsx +113 -1000
- package/dist/icons/pencil-icon/PencilIcon.stories.tsx +115 -1070
- package/dist/icons/phone-icon/PhoneIcon.stories.tsx +115 -978
- package/dist/icons/plus-icon/PlusIcon.stories.tsx +106 -1093
- package/dist/icons/pocket-studio-icon/PocketStudioIcon.stories.tsx +107 -829
- package/dist/icons/scroll-down-icon/ScrollDownIcon.stories.tsx +102 -469
- package/dist/icons/search-icon/SearchIcon.stories.tsx +111 -1124
- package/dist/icons/setting-icon/SettingIcon.stories.tsx +107 -970
- package/dist/icons/share-icon/ShareIcon.stories.tsx +120 -1025
- package/dist/icons/shield-icon/ShieldIcon.stories.tsx +117 -931
- package/dist/icons/site-logo-icon/SiteLogoIcon.stories.tsx +137 -1104
- package/dist/icons/skip-backward-icon/SkipBackwardIcon.stories.tsx +172 -982
- package/dist/icons/skip-forward-icon/SkipForwardIcon.stories.tsx +164 -983
- package/dist/icons/sparkles-soft-icon/SparklesSoftIcon.stories.tsx +105 -958
- package/dist/icons/spinner-gradient-icon/SpinnerGradientIcon.stories.tsx +158 -580
- package/dist/icons/spinner-gradient-icon/index.tsx +6 -1
- package/dist/icons/spinner-solid-icon/SpinnerSolidIcon.stories.tsx +158 -587
- package/dist/icons/spinner-solid-icon/index.tsx +6 -1
- package/dist/icons/spinner-solid-neutral-icon/SpinnerSolidINeutralcon.stories.tsx +146 -682
- package/dist/icons/spinner-solid-neutral-icon/index.tsx +1 -1
- package/dist/icons/star-icon/StarIcon.stories.tsx +124 -904
- package/dist/icons/store-coin-icon/StoreCoinIcon.stories.tsx +112 -964
- package/dist/icons/suggestion-icon/SuggestionIcon.stories.tsx +116 -852
- package/dist/icons/sun-icon/SunIcon.stories.tsx +120 -831
- package/dist/icons/text-color-icon/TextColorIcon.stories.tsx +116 -950
- package/dist/icons/text-indicator-icon/TextIndicatorIcon.stories.tsx +123 -980
- package/dist/icons/threads-icon/ThreadsIcon.stories.tsx +156 -1427
- package/dist/icons/tick-circle-icon/TickCircleIcon.stories.tsx +146 -1142
- package/dist/icons/tick-icon/TickIcon.stories.tsx +145 -1276
- package/dist/icons/trash-icon/TrashIcon.stories.tsx +108 -933
- package/dist/icons/twitter-x-icon/TwitterXIcon.stories.tsx +157 -1402
- package/dist/icons/upload-icon/UploadIcon.stories.tsx +115 -889
- package/dist/icons/vertical-menu-icon/VerticalMenuIcon.stories.tsx +118 -984
- package/dist/icons/video-play-list-icon/VideoPlaylistIcon.stories.tsx +125 -1049
- package/dist/icons/voice-playing-icon/VoicePlayingIcon.stories.tsx +123 -1356
- package/dist/icons/volume-full-icon/VolumeFullIcon.stories.tsx +110 -1171
- package/dist/icons/volume-half-icon/VolumeHalfIcon.stories.tsx +112 -1093
- package/dist/icons/volume-off-icon/VolumeOffIcon.stories.tsx +115 -1087
- package/dist/icons/warning-icon/WarningIcon.stories.tsx +122 -1046
- package/dist/icons/youtube-icon/YoutubeIcon.stories.tsx +161 -936
- package/dist/index.cjs +84 -84
- package/dist/index.js +84 -84
- package/dist/styles/aural-all-theme.css +1222 -0
- package/dist/styles/{aural-theme.css → aural-dark-theme.css} +15 -3
- package/dist/styles/aural-light-theme.css +1047 -0
- package/package.json +1 -1
|
@@ -1,6 +1,20 @@
|
|
|
1
1
|
import React from "react"
|
|
2
2
|
import type { Meta, StoryObj } from "@storybook/react-vite"
|
|
3
3
|
|
|
4
|
+
import { AppleLogoIcon } from "src/ui/icons/apple-logo-icon"
|
|
5
|
+
import { GoogleLogoIcon } from "src/ui/icons/google-logo-icon"
|
|
6
|
+
import { IndianFlagIcon } from "src/ui/icons/indian-flag-icon"
|
|
7
|
+
import { InstagramIcon } from "src/ui/icons/instagram-icon"
|
|
8
|
+
import {
|
|
9
|
+
IconBrandColors,
|
|
10
|
+
IconDefaultCanvas,
|
|
11
|
+
IconPlaygroundCanvas,
|
|
12
|
+
IconSizeVariations,
|
|
13
|
+
IconUsageCanvas,
|
|
14
|
+
IconUsageSection,
|
|
15
|
+
} from "src/ui/story-spec/icons/icon-story-canvas"
|
|
16
|
+
import { AuralIconDocsPage } from "src/ui/story-spec/icons/icon-story-docs-page"
|
|
17
|
+
|
|
4
18
|
import { SiteLogoIcon } from "."
|
|
5
19
|
|
|
6
20
|
const meta: Meta<typeof SiteLogoIcon> = {
|
|
@@ -11,946 +25,78 @@ const meta: Meta<typeof SiteLogoIcon> = {
|
|
|
11
25
|
backgrounds: {
|
|
12
26
|
default: "dark",
|
|
13
27
|
values: [
|
|
14
|
-
{ name: "dark", value: "
|
|
15
|
-
{ name: "darker", value: "
|
|
16
|
-
{ name: "light", value: "
|
|
28
|
+
{ name: "dark", value: "var(--color-fm-surface-primary)" },
|
|
29
|
+
{ name: "darker", value: "var(--color-fm-neutral-0)" },
|
|
30
|
+
{ name: "light", value: "var(--color-fm-neutral-1100)" },
|
|
17
31
|
],
|
|
18
32
|
},
|
|
19
33
|
docs: {
|
|
20
34
|
page: () => (
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
{
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
.sbdocs-content {
|
|
31
|
-
max-width: none !important;
|
|
32
|
-
padding: 0 !important;
|
|
33
|
-
margin: 0 !important;
|
|
34
|
-
background: transparent !important;
|
|
35
|
-
}
|
|
36
|
-
.docs-story {
|
|
37
|
-
background: transparent !important;
|
|
38
|
-
}
|
|
39
|
-
.sbdocs {
|
|
40
|
-
background: transparent !important;
|
|
41
|
-
}
|
|
42
|
-
body {
|
|
43
|
-
background: #0a0a0a !important;
|
|
44
|
-
}
|
|
45
|
-
#storybook-docs {
|
|
46
|
-
background: #0a0a0a !important;
|
|
47
|
-
}
|
|
48
|
-
.sbdocs-preview {
|
|
49
|
-
background: transparent !important;
|
|
50
|
-
border: none !important;
|
|
51
|
-
}
|
|
52
|
-
.sbdocs-h1, .sbdocs-h2, .sbdocs-h3, .sbdocs-h4, .sbdocs-h5, .sbdocs-h6 {
|
|
53
|
-
color: white !important;
|
|
54
|
-
}
|
|
55
|
-
.sbdocs-p, .sbdocs-li {
|
|
56
|
-
color: rgba(255, 255, 255, 0.7) !important;
|
|
57
|
-
}
|
|
58
|
-
.sbdocs-code {
|
|
59
|
-
background: rgba(255, 255, 255, 0.1) !important;
|
|
60
|
-
color: rgba(168, 85, 247, 1) !important;
|
|
61
|
-
border: 1px solid rgba(255, 255, 255, 0.1) !important;
|
|
62
|
-
}
|
|
63
|
-
.sbdocs-pre {
|
|
64
|
-
background: rgba(0, 0, 0, 0.4) !important;
|
|
65
|
-
border: 1px solid rgba(255, 255, 255, 0.1) !important;
|
|
66
|
-
}
|
|
67
|
-
.sbdocs-table {
|
|
68
|
-
background: rgba(255, 255, 255, 0.05) !important;
|
|
69
|
-
border: 1px solid rgba(255, 255, 255, 0.1) !important;
|
|
70
|
-
}
|
|
71
|
-
.sbdocs-table th {
|
|
72
|
-
background: rgba(255, 255, 255, 0.05) !important;
|
|
73
|
-
color: white !important;
|
|
74
|
-
border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
|
|
75
|
-
}
|
|
76
|
-
.sbdocs-table td {
|
|
77
|
-
color: rgba(255, 255, 255, 0.7) !important;
|
|
78
|
-
border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
|
|
79
|
-
}
|
|
80
|
-
@keyframes logo-pulse {
|
|
81
|
-
0%, 100% { transform: scale(1); }
|
|
82
|
-
50% { transform: scale(1.05); }
|
|
83
|
-
}
|
|
84
|
-
.animate-logo-pulse {
|
|
85
|
-
animation: logo-pulse 2s ease-in-out infinite;
|
|
86
|
-
}
|
|
87
|
-
@keyframes logo-glow {
|
|
88
|
-
0%, 100% { filter: drop-shadow(0 0 4px #e51a4d); }
|
|
89
|
-
50% { filter: drop-shadow(0 0 12px #e51a4d); }
|
|
90
|
-
}
|
|
91
|
-
.animate-logo-glow {
|
|
92
|
-
animation: logo-glow 3s ease-in-out infinite;
|
|
93
|
-
}
|
|
94
|
-
`}
|
|
95
|
-
</style>
|
|
96
|
-
|
|
97
|
-
<div className="min-h-screen bg-gradient-to-br from-gray-900 via-red-900/20 to-gray-900">
|
|
98
|
-
{/* Header */}
|
|
99
|
-
<div className="relative overflow-hidden border-b border-white/10 bg-black/20 backdrop-blur-xl">
|
|
100
|
-
<div className="absolute inset-0 bg-gradient-to-r from-red-500/10 via-transparent to-pink-500/10" />
|
|
101
|
-
<div className="relative !mx-auto max-w-7xl px-6 py-16">
|
|
102
|
-
<div className="!space-y-6 text-center">
|
|
103
|
-
<div className="!mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border border-red-500/30 bg-gradient-to-br from-red-500/20 to-pink-500/20">
|
|
104
|
-
<SiteLogoIcon className="h-12 w-12" />
|
|
105
|
-
</div>
|
|
106
|
-
<h1 className="!text-fm-primary text-5xl font-bold">
|
|
107
|
-
SiteLogoIcon
|
|
108
|
-
</h1>
|
|
109
|
-
<p className="!mx-auto max-w-3xl text-xl leading-relaxed !text-white/70">
|
|
110
|
-
The official Aural UI site logo icon for brand identity,
|
|
111
|
-
navigation headers, and app branding. Features a distinctive
|
|
112
|
-
red gradient design with speech bubble elements. Built with
|
|
113
|
-
accessibility in mind using Radix UI's AccessibleIcon
|
|
114
|
-
wrapper.
|
|
115
|
-
</p>
|
|
116
|
-
|
|
117
|
-
{/* Stats */}
|
|
118
|
-
<div className="flex items-center justify-center gap-8 pt-8">
|
|
119
|
-
<div className="text-center">
|
|
120
|
-
<div className="text-3xl font-bold text-red-300">
|
|
121
|
-
Brand
|
|
122
|
-
</div>
|
|
123
|
-
<div className="text-sm text-white/60">
|
|
124
|
-
Identity focused
|
|
125
|
-
</div>
|
|
126
|
-
</div>
|
|
127
|
-
<div className="h-8 w-px bg-white/20" />
|
|
128
|
-
<div className="text-center">
|
|
129
|
-
<div className="text-3xl font-bold text-pink-300">
|
|
130
|
-
Scalable
|
|
131
|
-
</div>
|
|
132
|
-
<div className="text-sm text-white/60">
|
|
133
|
-
All sizes supported
|
|
134
|
-
</div>
|
|
135
|
-
</div>
|
|
136
|
-
<div className="h-8 w-px bg-white/20" />
|
|
137
|
-
<div className="text-center">
|
|
138
|
-
<div className="text-3xl font-bold text-rose-300">
|
|
139
|
-
Accessible
|
|
140
|
-
</div>
|
|
141
|
-
<div className="text-sm text-white/60">
|
|
142
|
-
Screen reader ready
|
|
143
|
-
</div>
|
|
144
|
-
</div>
|
|
145
|
-
</div>
|
|
146
|
-
</div>
|
|
147
|
-
</div>
|
|
148
|
-
</div>
|
|
149
|
-
|
|
150
|
-
{/* Content */}
|
|
151
|
-
<div className="!mx-auto max-w-7xl !space-y-16 px-6 py-12">
|
|
152
|
-
{/* Quick Usage */}
|
|
153
|
-
<div className="!space-y-8">
|
|
154
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
155
|
-
Quick Start
|
|
156
|
-
</h2>
|
|
157
|
-
<div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
|
|
158
|
-
<div className="!space-y-4">
|
|
159
|
-
<h3 className="text-xl font-semibold !text-red-300">
|
|
160
|
-
Basic Usage
|
|
161
|
-
</h3>
|
|
162
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
163
|
-
<pre className="overflow-x-auto text-sm !text-green-300">
|
|
164
|
-
{`import { SiteLogoIcon } from "@icons/site-logo-icon"
|
|
35
|
+
<AuralIconDocsPage
|
|
36
|
+
accentToken="info"
|
|
37
|
+
features={[
|
|
38
|
+
{ title: "Brand Mark", description: "Pocket FM site logo" },
|
|
39
|
+
{ title: "App Identity", description: "Primary brand identifier" },
|
|
40
|
+
{ title: "Accessible", description: "ARIA-ready by default" },
|
|
41
|
+
]}
|
|
42
|
+
quickStart={{
|
|
43
|
+
codeExample: `import { SiteLogoIcon } from "src/ui/icons/site-logo-icon"
|
|
165
44
|
|
|
166
45
|
function Header() {
|
|
167
46
|
return (
|
|
168
|
-
<
|
|
47
|
+
<header className="flex items-center gap-2">
|
|
169
48
|
<SiteLogoIcon className="h-8 w-8" />
|
|
170
|
-
<span className="text-
|
|
171
|
-
|
|
49
|
+
<span className="text-fm-primary font-fm-text font-semibold">
|
|
50
|
+
Pocket FM
|
|
51
|
+
</span>
|
|
52
|
+
</header>
|
|
172
53
|
)
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
<div className="!space-y-4">
|
|
179
|
-
<h3 className="text-xl font-semibold !text-red-300">
|
|
180
|
-
Live Preview
|
|
181
|
-
</h3>
|
|
182
|
-
<div className="flex h-32 items-center justify-center rounded-lg border border-white/10 bg-white/5">
|
|
183
|
-
<div className="flex items-center gap-3 rounded-lg border border-red-500/20 bg-red-500/10 px-6 py-3">
|
|
184
|
-
<SiteLogoIcon className="h-8 w-8" />
|
|
185
|
-
<span className="text-xl font-bold text-white">
|
|
186
|
-
Aural UI
|
|
187
|
-
</span>
|
|
188
|
-
</div>
|
|
189
|
-
</div>
|
|
190
|
-
</div>
|
|
191
|
-
</div>
|
|
192
|
-
</div>
|
|
193
|
-
|
|
194
|
-
{/* Props Documentation */}
|
|
195
|
-
<div className="!space-y-8">
|
|
196
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
197
|
-
Props & Configuration
|
|
198
|
-
</h2>
|
|
199
|
-
|
|
200
|
-
<div className="overflow-hidden rounded-lg border border-white/10 bg-white/5">
|
|
201
|
-
<div className="bg-white/5 p-4">
|
|
202
|
-
<h3 className="text-xl font-semibold !text-white">Props</h3>
|
|
203
|
-
</div>
|
|
204
|
-
<table className="!my-0 w-full">
|
|
205
|
-
<thead className="bg-white/5">
|
|
206
|
-
<tr className="border-b border-white/10">
|
|
207
|
-
<th className="px-6 py-4 text-left text-sm font-semibold !text-white">
|
|
208
|
-
Prop
|
|
209
|
-
</th>
|
|
210
|
-
<th className="px-6 py-4 text-left text-sm font-semibold !text-white">
|
|
211
|
-
Type
|
|
212
|
-
</th>
|
|
213
|
-
<th className="px-6 py-4 text-left text-sm font-semibold !text-white">
|
|
214
|
-
Default
|
|
215
|
-
</th>
|
|
216
|
-
<th className="px-6 py-4 text-left text-sm font-semibold !text-white">
|
|
217
|
-
Description
|
|
218
|
-
</th>
|
|
219
|
-
</tr>
|
|
220
|
-
</thead>
|
|
221
|
-
<tbody>
|
|
222
|
-
{" "}
|
|
223
|
-
<tr className="!bg-black/10">
|
|
224
|
-
<td className="px-6 py-4 font-mono text-sm !text-blue-300">
|
|
225
|
-
withAccessibility
|
|
226
|
-
</td>
|
|
227
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
228
|
-
boolean
|
|
229
|
-
</td>
|
|
230
|
-
<td className="px-6 py-4 text-sm !text-white/50">
|
|
231
|
-
true
|
|
232
|
-
</td>
|
|
233
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
234
|
-
Whether to wrap the icon with accessibility feature
|
|
235
|
-
</td>
|
|
236
|
-
</tr>
|
|
237
|
-
<tr className="border-b border-white/5 !bg-black/10">
|
|
238
|
-
<td className="px-6 py-4 font-mono text-sm !text-red-300">
|
|
239
|
-
height
|
|
240
|
-
</td>
|
|
241
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
242
|
-
number | string
|
|
243
|
-
</td>
|
|
244
|
-
<td className="px-6 py-4 text-sm !text-white/50">22</td>
|
|
245
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
246
|
-
Height of the logo in pixels
|
|
247
|
-
</td>
|
|
248
|
-
</tr>
|
|
249
|
-
<tr className="border-b border-white/5">
|
|
250
|
-
<td className="px-6 py-4 font-mono text-sm !text-red-300">
|
|
251
|
-
className
|
|
252
|
-
</td>
|
|
253
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
254
|
-
string
|
|
255
|
-
</td>
|
|
256
|
-
<td className="px-6 py-4 text-sm !text-white/50">-</td>
|
|
257
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
258
|
-
CSS classes for styling
|
|
259
|
-
</td>
|
|
260
|
-
</tr>
|
|
261
|
-
<tr className="border-b border-white/5 !bg-black/10">
|
|
262
|
-
<td className="px-6 py-4 font-mono text-sm !text-red-300">
|
|
263
|
-
viewBox
|
|
264
|
-
</td>
|
|
265
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
266
|
-
string
|
|
267
|
-
</td>
|
|
268
|
-
<td className="px-6 py-4 text-sm !text-white/50">
|
|
269
|
-
"0 0 128 128"
|
|
270
|
-
</td>
|
|
271
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
272
|
-
SVG viewBox for scaling
|
|
273
|
-
</td>
|
|
274
|
-
</tr>
|
|
275
|
-
<tr className="!bg-black/10">
|
|
276
|
-
<td className="px-6 py-4 font-mono text-sm !text-red-300">
|
|
277
|
-
...svgProps
|
|
278
|
-
</td>
|
|
279
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
280
|
-
SVGProps
|
|
281
|
-
</td>
|
|
282
|
-
<td className="px-6 py-4 text-sm !text-white/50">-</td>
|
|
283
|
-
<td className="px-6 py-4 text-sm !text-white/70">
|
|
284
|
-
All standard SVG element props
|
|
285
|
-
</td>
|
|
286
|
-
</tr>
|
|
287
|
-
</tbody>
|
|
288
|
-
</table>
|
|
289
|
-
</div>
|
|
290
|
-
</div>
|
|
291
|
-
|
|
292
|
-
{/* Size Variations */}
|
|
293
|
-
<div className="!space-y-8">
|
|
294
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
295
|
-
Size Variations
|
|
296
|
-
</h2>
|
|
297
|
-
<div className="rounded-lg border border-white/10 bg-white/5 p-8">
|
|
298
|
-
<div className="!space-y-6">
|
|
299
|
-
<div className="grid grid-cols-1 gap-8 md:grid-cols-2">
|
|
300
|
-
<div className="!space-y-4">
|
|
301
|
-
<h3 className="text-lg font-semibold !text-red-300">
|
|
302
|
-
Standard Sizes
|
|
303
|
-
</h3>
|
|
304
|
-
<div className="flex items-end gap-6 rounded-lg bg-black/20 p-6">
|
|
305
|
-
<div className="text-center">
|
|
306
|
-
<SiteLogoIcon className="!mx-auto mb-2 h-4 w-4" />
|
|
307
|
-
<span className="text-xs text-white/60">16px</span>
|
|
308
|
-
</div>
|
|
309
|
-
<div className="text-center">
|
|
310
|
-
<SiteLogoIcon className="!mx-auto mb-2 h-5 w-5" />
|
|
311
|
-
<span className="text-xs text-white/60">20px</span>
|
|
312
|
-
</div>
|
|
313
|
-
<div className="text-center">
|
|
314
|
-
<SiteLogoIcon className="!mx-auto mb-2 h-6 w-6" />
|
|
315
|
-
<span className="text-xs text-white/60">24px</span>
|
|
316
|
-
</div>
|
|
317
|
-
<div className="text-center">
|
|
318
|
-
<SiteLogoIcon className="!mx-auto mb-2 h-8 w-8" />
|
|
319
|
-
<span className="text-xs text-white/60">32px</span>
|
|
320
|
-
</div>
|
|
321
|
-
<div className="text-center">
|
|
322
|
-
<SiteLogoIcon className="!mx-auto mb-2 h-12 w-12" />
|
|
323
|
-
<span className="text-xs text-white/60">48px</span>
|
|
324
|
-
</div>
|
|
325
|
-
<div className="text-center">
|
|
326
|
-
<SiteLogoIcon className="!mx-auto mb-2 h-16 w-16" />
|
|
327
|
-
<span className="text-xs text-white/60">64px</span>
|
|
328
|
-
</div>
|
|
329
|
-
</div>
|
|
330
|
-
</div>
|
|
331
|
-
|
|
332
|
-
<div className="!space-y-4">
|
|
333
|
-
<h3 className="text-lg font-semibold !text-red-300">
|
|
334
|
-
Code Example
|
|
335
|
-
</h3>
|
|
336
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
337
|
-
<pre className="overflow-x-auto text-sm !text-blue-300">
|
|
338
|
-
{`// Small nav (24px)
|
|
339
|
-
<SiteLogoIcon className="h-6 w-6" />
|
|
340
|
-
|
|
341
|
-
// Standard header (32px)
|
|
342
|
-
<SiteLogoIcon className="h-8 w-8" />
|
|
343
|
-
|
|
344
|
-
// Large display (64px)
|
|
345
|
-
<SiteLogoIcon className="h-16 w-16" />
|
|
346
|
-
|
|
347
|
-
// Custom size with props
|
|
348
|
-
<SiteLogoIcon width={40} height={40} />
|
|
349
|
-
|
|
350
|
-
// Responsive sizing
|
|
351
|
-
<SiteLogoIcon className="h-6 w-6 md:h-8 md:w-8 lg:h-12 lg:w-12" />`}
|
|
352
|
-
</pre>
|
|
353
|
-
</div>
|
|
354
|
-
</div>
|
|
355
|
-
</div>
|
|
356
|
-
</div>
|
|
357
|
-
</div>
|
|
358
|
-
</div>
|
|
359
|
-
|
|
360
|
-
{/* Usage Examples */}
|
|
361
|
-
<div className="!space-y-8">
|
|
362
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
363
|
-
Usage Examples
|
|
364
|
-
</h2>
|
|
365
|
-
|
|
366
|
-
<div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
|
|
367
|
-
{/* Navigation Header */}
|
|
368
|
-
<div className="!space-y-4">
|
|
369
|
-
<h3 className="text-lg font-semibold !text-red-300">
|
|
370
|
-
Navigation Header
|
|
371
|
-
</h3>
|
|
372
|
-
<div className="!space-y-4">
|
|
373
|
-
<div className="rounded-lg border border-white/10 bg-white/5 p-4">
|
|
374
|
-
<div className="flex items-center justify-between">
|
|
375
|
-
<div className="flex items-center gap-3">
|
|
376
|
-
<SiteLogoIcon className="h-8 w-8" />
|
|
377
|
-
<span className="text-xl font-bold text-white">
|
|
378
|
-
Aural UI
|
|
379
|
-
</span>
|
|
380
|
-
</div>
|
|
381
|
-
<nav className="flex items-center gap-6">
|
|
382
|
-
<a
|
|
383
|
-
href="#"
|
|
384
|
-
className="text-white/70 hover:text-white"
|
|
385
|
-
>
|
|
386
|
-
Docs
|
|
387
|
-
</a>
|
|
388
|
-
<a
|
|
389
|
-
href="#"
|
|
390
|
-
className="text-white/70 hover:text-white"
|
|
391
|
-
>
|
|
392
|
-
Components
|
|
393
|
-
</a>
|
|
394
|
-
<a
|
|
395
|
-
href="#"
|
|
396
|
-
className="text-white/70 hover:text-white"
|
|
397
|
-
>
|
|
398
|
-
Examples
|
|
399
|
-
</a>
|
|
400
|
-
</nav>
|
|
401
|
-
</div>
|
|
402
|
-
</div>
|
|
403
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
404
|
-
<pre className="overflow-x-auto text-sm !text-green-300">
|
|
405
|
-
{`<div className="flex items-center justify-between">
|
|
406
|
-
<div className="flex items-center gap-3">
|
|
407
|
-
<SiteLogoIcon className="h-8 w-8" />
|
|
408
|
-
<span className="text-xl font-bold">Aural UI</span>
|
|
409
|
-
</div>
|
|
410
|
-
<nav className="flex items-center gap-6">
|
|
411
|
-
<a href="#" className="hover:text-white">Docs</a>
|
|
412
|
-
<a href="#" className="hover:text-white">Components</a>
|
|
413
|
-
<a href="#" className="hover:text-white">Examples</a>
|
|
414
|
-
</nav>
|
|
415
|
-
</div>`}
|
|
416
|
-
</pre>
|
|
417
|
-
</div>
|
|
418
|
-
</div>
|
|
419
|
-
</div>
|
|
420
|
-
|
|
421
|
-
{/* Footer Branding */}
|
|
422
|
-
<div className="!space-y-4">
|
|
423
|
-
<h3 className="text-lg font-semibold !text-red-300">
|
|
424
|
-
Footer Branding
|
|
425
|
-
</h3>
|
|
426
|
-
<div className="!space-y-4">
|
|
427
|
-
<div className="rounded-lg border border-white/10 bg-white/5 p-6">
|
|
428
|
-
<div className="!space-y-4 text-center">
|
|
429
|
-
<SiteLogoIcon className="!mx-auto h-12 w-12" />
|
|
430
|
-
<h3 className="text-lg font-bold !text-white">
|
|
431
|
-
Aural UI
|
|
432
|
-
</h3>
|
|
433
|
-
<p className="text-sm !text-white/60">
|
|
434
|
-
Beautiful, accessible components for modern web
|
|
435
|
-
applications.
|
|
436
|
-
</p>
|
|
437
|
-
<div className="flex justify-center gap-4 pt-4">
|
|
438
|
-
<a
|
|
439
|
-
href="#"
|
|
440
|
-
className="text-white/60 hover:text-white"
|
|
441
|
-
>
|
|
442
|
-
GitHub
|
|
443
|
-
</a>
|
|
444
|
-
<a
|
|
445
|
-
href="#"
|
|
446
|
-
className="text-white/60 hover:text-white"
|
|
447
|
-
>
|
|
448
|
-
Documentation
|
|
449
|
-
</a>
|
|
450
|
-
<a
|
|
451
|
-
href="#"
|
|
452
|
-
className="text-white/60 hover:text-white"
|
|
453
|
-
>
|
|
454
|
-
Support
|
|
455
|
-
</a>
|
|
456
|
-
</div>
|
|
457
|
-
</div>
|
|
458
|
-
</div>
|
|
459
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
460
|
-
<pre className="overflow-x-auto text-sm !text-green-300">
|
|
461
|
-
{`<div className="space-y-4 text-center">
|
|
462
|
-
<SiteLogoIcon className="mx-auto h-12 w-12" />
|
|
463
|
-
<h3 className="text-lg font-bold">Aural UI</h3>
|
|
464
|
-
<p className="text-sm text-white/60">
|
|
465
|
-
Beautiful, accessible components for modern web applications.
|
|
466
|
-
</p>
|
|
467
|
-
<div className="flex justify-center gap-4 pt-4">
|
|
468
|
-
<a href="#" className="text-white/60 hover:text-white">GitHub</a>
|
|
469
|
-
<a href="#" className="text-white/60 hover:text-white">Documentation</a>
|
|
470
|
-
<a href="#" className="text-white/60 hover:text-white">Support</a>
|
|
471
|
-
</div>
|
|
472
|
-
</div>`}
|
|
473
|
-
</pre>
|
|
474
|
-
</div>
|
|
475
|
-
</div>
|
|
476
|
-
</div>
|
|
477
|
-
|
|
478
|
-
{/* Loading/Splash Screen */}
|
|
479
|
-
<div className="!space-y-4">
|
|
480
|
-
<h3 className="text-lg font-semibold !text-red-300">
|
|
481
|
-
Loading & Splash Screen
|
|
482
|
-
</h3>
|
|
483
|
-
<div className="!space-y-4">
|
|
484
|
-
<div className="flex items-center justify-center rounded-lg border border-white/10 bg-gradient-to-br from-red-500/10 to-pink-500/10 p-6">
|
|
485
|
-
<div className="text-center">
|
|
486
|
-
<SiteLogoIcon className="animate-logo-pulse !mx-auto h-16 w-16" />
|
|
487
|
-
<p className="mt-4 text-sm !text-white/70">
|
|
488
|
-
Loading...
|
|
489
|
-
</p>
|
|
490
|
-
</div>
|
|
491
|
-
</div>
|
|
492
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
493
|
-
<pre className="overflow-x-auto text-sm !text-green-300">
|
|
494
|
-
{`// Loading with pulse animation
|
|
495
|
-
<div className="text-center">
|
|
496
|
-
<SiteLogoIcon className="mx-auto h-16 w-16 animate-pulse" />
|
|
497
|
-
<p className="mt-4 text-sm text-white/70">Loading...</p>
|
|
498
|
-
</div>
|
|
499
|
-
|
|
500
|
-
// Splash screen
|
|
501
|
-
<div className="flex min-h-screen items-center justify-center bg-gradient-to-br from-red-500/10 to-pink-500/10">
|
|
502
|
-
<div className="text-center">
|
|
503
|
-
<SiteLogoIcon className="mx-auto h-24 w-24 animate-pulse" />
|
|
504
|
-
<h1 className="mt-6 text-3xl font-bold">Aural UI</h1>
|
|
505
|
-
</div>
|
|
506
|
-
</div>`}
|
|
507
|
-
</pre>
|
|
508
|
-
</div>
|
|
509
|
-
</div>
|
|
510
|
-
</div>
|
|
511
|
-
|
|
512
|
-
{/* App Icon/Favicon */}
|
|
513
|
-
<div className="!space-y-4">
|
|
514
|
-
<h3 className="text-lg font-semibold !text-red-300">
|
|
515
|
-
App Icon Usage
|
|
516
|
-
</h3>
|
|
517
|
-
<div className="!space-y-4">
|
|
518
|
-
<div className="grid grid-cols-4 gap-4">
|
|
519
|
-
<div className="flex flex-col items-center justify-center !space-y-2 text-center">
|
|
520
|
-
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-white p-2 shadow-lg">
|
|
521
|
-
<SiteLogoIcon className="h-8 w-8" />
|
|
522
|
-
</div>
|
|
523
|
-
<span className="text-xs text-white/60">
|
|
524
|
-
App Icon
|
|
525
|
-
</span>
|
|
526
|
-
</div>
|
|
527
|
-
<div className="flex flex-col items-center justify-center !space-y-2 text-center">
|
|
528
|
-
<div className="flex h-12 w-12 items-center justify-center rounded-full bg-white p-2 shadow-lg">
|
|
529
|
-
<SiteLogoIcon className="h-8 w-8" />
|
|
530
|
-
</div>
|
|
531
|
-
<span className="text-xs text-white/60">Round</span>
|
|
532
|
-
</div>
|
|
533
|
-
<div className="flex flex-col items-center justify-center !space-y-2 text-center">
|
|
534
|
-
<div className="flex h-12 w-12 items-center justify-center rounded bg-gradient-to-br from-red-500 to-pink-500 p-2 shadow-lg">
|
|
535
|
-
<SiteLogoIcon className="h-8 w-8" />
|
|
536
|
-
</div>
|
|
537
|
-
<span className="text-xs text-white/60">Branded</span>
|
|
538
|
-
</div>
|
|
539
|
-
<div className="flex flex-col items-center justify-center !space-y-2 text-center">
|
|
540
|
-
<div className="flex h-12 w-12 items-center justify-center rounded-xl border border-red-500/20 bg-red-500/10 p-2">
|
|
541
|
-
<SiteLogoIcon className="h-8 w-8" />
|
|
542
|
-
</div>
|
|
543
|
-
<span className="text-xs text-white/60">
|
|
544
|
-
Outlined
|
|
545
|
-
</span>
|
|
546
|
-
</div>
|
|
547
|
-
</div>
|
|
548
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
549
|
-
<pre className="overflow-x-auto text-sm !text-green-300">
|
|
550
|
-
{`// Standard app icon
|
|
551
|
-
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-white p-2">
|
|
552
|
-
<SiteLogoIcon className="h-8 w-8" />
|
|
553
|
-
</div>
|
|
554
|
-
|
|
555
|
-
// Branded background
|
|
556
|
-
<div className="flex h-12 w-12 items-center justify-center rounded bg-gradient-to-br from-red-500 to-pink-500 p-2">
|
|
557
|
-
<SiteLogoIcon className="h-8 w-8" />
|
|
558
|
-
</div>
|
|
559
|
-
|
|
560
|
-
// For favicon/PWA icons
|
|
561
|
-
<link rel="icon" type="image/svg+xml" href="/logo.svg" />
|
|
562
|
-
<link rel="apple-touch-icon" href="/logo-192.png" />`}
|
|
563
|
-
</pre>
|
|
564
|
-
</div>
|
|
565
|
-
</div>
|
|
566
|
-
</div>
|
|
567
|
-
</div>
|
|
568
|
-
</div>
|
|
569
|
-
|
|
570
|
-
{/* Interactive States */}
|
|
571
|
-
<div className="!space-y-8">
|
|
572
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
573
|
-
Interactive States & Animations
|
|
574
|
-
</h2>
|
|
575
|
-
<div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
|
|
576
|
-
<div className="!space-y-4">
|
|
577
|
-
<h3 className="text-lg font-semibold !text-red-300">
|
|
578
|
-
Animation Effects
|
|
579
|
-
</h3>
|
|
580
|
-
<div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
|
|
581
|
-
<div className="flex items-center gap-4">
|
|
582
|
-
<SiteLogoIcon className="h-8 w-8 transition-transform hover:scale-110" />
|
|
583
|
-
<div>
|
|
584
|
-
<div className="text-sm font-medium text-white">
|
|
585
|
-
Scale on Hover
|
|
586
|
-
</div>
|
|
587
|
-
<div className="text-xs text-white/60">
|
|
588
|
-
Subtle growth effect
|
|
589
|
-
</div>
|
|
590
|
-
</div>
|
|
591
|
-
</div>
|
|
592
|
-
<div className="flex items-center gap-4">
|
|
593
|
-
<SiteLogoIcon className="animate-logo-pulse h-8 w-8" />
|
|
594
|
-
<div>
|
|
595
|
-
<div className="text-sm font-medium text-white">
|
|
596
|
-
Pulse Animation
|
|
597
|
-
</div>
|
|
598
|
-
<div className="text-xs text-white/60">
|
|
599
|
-
Breathing effect
|
|
600
|
-
</div>
|
|
601
|
-
</div>
|
|
602
|
-
</div>
|
|
603
|
-
<div className="flex items-center gap-4">
|
|
604
|
-
<SiteLogoIcon className="animate-logo-glow h-8 w-8" />
|
|
605
|
-
<div>
|
|
606
|
-
<div className="text-sm font-medium text-white">
|
|
607
|
-
Glow Effect
|
|
608
|
-
</div>
|
|
609
|
-
<div className="text-xs text-white/60">
|
|
610
|
-
Brand color glow
|
|
611
|
-
</div>
|
|
612
|
-
</div>
|
|
613
|
-
</div>
|
|
614
|
-
<div className="flex items-center gap-4">
|
|
615
|
-
<SiteLogoIcon className="h-8 w-8 transition-opacity hover:opacity-80" />
|
|
616
|
-
<div>
|
|
617
|
-
<div className="text-sm font-medium text-white">
|
|
618
|
-
Opacity Change
|
|
619
|
-
</div>
|
|
620
|
-
<div className="text-xs text-white/60">
|
|
621
|
-
Fade on interaction
|
|
622
|
-
</div>
|
|
623
|
-
</div>
|
|
624
|
-
</div>
|
|
625
|
-
</div>
|
|
626
|
-
</div>
|
|
627
|
-
|
|
628
|
-
<div className="!space-y-4">
|
|
629
|
-
<h3 className="text-lg font-semibold !text-red-300">
|
|
630
|
-
Interactive Examples
|
|
631
|
-
</h3>
|
|
632
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
633
|
-
<pre className="overflow-x-auto text-sm !text-cyan-300">
|
|
634
|
-
{`// Hover scale effect
|
|
635
|
-
<SiteLogoIcon className="h-8 w-8 transition-transform hover:scale-110" />
|
|
636
|
-
|
|
637
|
-
// Pulse animation for loading
|
|
638
|
-
<SiteLogoIcon className="h-8 w-8 animate-pulse" />
|
|
639
|
-
|
|
640
|
-
// Click/active states
|
|
641
|
-
<button className="flex items-center gap-2 group">
|
|
642
|
-
<SiteLogoIcon className="h-6 w-6 transition-transform group-hover:scale-105" />
|
|
643
|
-
<span>Aural UI</span>
|
|
644
|
-
</button>
|
|
645
|
-
|
|
646
|
-
// Focus states for accessibility
|
|
647
|
-
<a
|
|
648
|
-
href="#"
|
|
649
|
-
className="inline-flex items-center gap-2 rounded focus:ring-2 focus:ring-red-500/50"
|
|
650
|
-
>
|
|
651
|
-
<SiteLogoIcon className="h-6 w-6" />
|
|
652
|
-
<span>Home</span>
|
|
653
|
-
</a>
|
|
654
|
-
|
|
655
|
-
// Loading spinner alternative
|
|
656
|
-
<SiteLogoIcon className="h-8 w-8 animate-spin" />`}
|
|
657
|
-
</pre>
|
|
658
|
-
</div>
|
|
659
|
-
</div>
|
|
660
|
-
</div>
|
|
661
|
-
</div>
|
|
662
|
-
|
|
663
|
-
{/* Brand Guidelines */}
|
|
664
|
-
<div className="!space-y-8">
|
|
665
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
666
|
-
Brand Guidelines
|
|
667
|
-
</h2>
|
|
668
|
-
<div className="grid grid-cols-1 gap-8 md:grid-cols-2">
|
|
669
|
-
<div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
|
|
670
|
-
<h3 className="text-lg font-semibold !text-green-300">
|
|
671
|
-
✅ Do's
|
|
672
|
-
</h3>
|
|
673
|
-
<ul className="!space-y-2 text-sm !text-white/70">
|
|
674
|
-
<li className="!text-white/70">
|
|
675
|
-
Use the logo at readable sizes (minimum 16px)
|
|
676
|
-
</li>
|
|
677
|
-
<li className="!text-white/70">
|
|
678
|
-
Maintain the original aspect ratio
|
|
679
|
-
</li>
|
|
680
|
-
<li className="!text-white/70">
|
|
681
|
-
Use on contrasting backgrounds for visibility
|
|
682
|
-
</li>
|
|
683
|
-
<li className="!text-white/70">
|
|
684
|
-
Pair with consistent brand typography
|
|
685
|
-
</li>
|
|
686
|
-
<li className="!text-white/70">
|
|
687
|
-
Use as a clickable element for navigation
|
|
688
|
-
</li>
|
|
689
|
-
</ul>
|
|
690
|
-
</div>
|
|
691
|
-
|
|
692
|
-
<div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
|
|
693
|
-
<h3 className="text-lg font-semibold !text-red-300">
|
|
694
|
-
❌ Don'ts
|
|
695
|
-
</h3>
|
|
696
|
-
<ul className="!space-y-2 text-sm !text-white/70">
|
|
697
|
-
<li className="!text-white/70">
|
|
698
|
-
Don't modify the logo colors or design
|
|
699
|
-
</li>
|
|
700
|
-
<li className="!text-white/70">
|
|
701
|
-
Don't stretch or skew the proportions
|
|
702
|
-
</li>
|
|
703
|
-
<li className="!text-white/70">
|
|
704
|
-
Don't use on busy or conflicting backgrounds
|
|
705
|
-
</li>
|
|
706
|
-
<li className="!text-white/70">
|
|
707
|
-
Don't use below 16px for accessibility
|
|
708
|
-
</li>
|
|
709
|
-
<li className="!text-white/70">
|
|
710
|
-
Don't rotate or flip the logo
|
|
711
|
-
</li>
|
|
712
|
-
</ul>
|
|
713
|
-
</div>
|
|
714
|
-
</div>
|
|
715
|
-
|
|
716
|
-
<div className="rounded-lg border border-white/10 bg-white/5 p-6">
|
|
717
|
-
<h3 className="mb-4 text-lg font-semibold !text-purple-300">
|
|
718
|
-
Background & Contrast Guidelines
|
|
719
|
-
</h3>
|
|
720
|
-
<div className="grid grid-cols-2 gap-6 lg:grid-cols-4">
|
|
721
|
-
<div className="flex flex-col items-center justify-center !space-y-2 text-center">
|
|
722
|
-
<div className="flex h-16 w-16 items-center justify-center rounded-lg bg-white">
|
|
723
|
-
<SiteLogoIcon className="h-10 w-10" />
|
|
724
|
-
</div>
|
|
725
|
-
<span className="text-xs text-green-400">
|
|
726
|
-
✅ Light backgrounds
|
|
727
|
-
</span>
|
|
728
|
-
</div>
|
|
729
|
-
<div className="flex flex-col items-center justify-center !space-y-2 text-center">
|
|
730
|
-
<div className="flex h-16 w-16 items-center justify-center rounded-lg bg-gray-100">
|
|
731
|
-
<SiteLogoIcon className="h-10 w-10" />
|
|
732
|
-
</div>
|
|
733
|
-
<span className="text-xs text-green-400">
|
|
734
|
-
✅ Neutral tones
|
|
735
|
-
</span>
|
|
736
|
-
</div>
|
|
737
|
-
<div className="flex flex-col items-center justify-center !space-y-2 text-center">
|
|
738
|
-
<div className="flex h-16 w-16 items-center justify-center rounded-lg bg-blue-900">
|
|
739
|
-
<SiteLogoIcon className="h-10 w-10" />
|
|
740
|
-
</div>
|
|
741
|
-
<span className="text-xs text-green-400">
|
|
742
|
-
✅ Dark colors
|
|
743
|
-
</span>
|
|
744
|
-
</div>
|
|
745
|
-
<div className="flex flex-col items-center justify-center !space-y-2 text-center">
|
|
746
|
-
<div className="flex h-16 w-16 items-center justify-center rounded-lg bg-gradient-to-br from-red-400 to-red-600">
|
|
747
|
-
<SiteLogoIcon className="h-10 w-10" />
|
|
748
|
-
</div>
|
|
749
|
-
<span className="text-xs text-red-400">
|
|
750
|
-
❌ Similar reds
|
|
751
|
-
</span>
|
|
752
|
-
</div>
|
|
753
|
-
</div>
|
|
754
|
-
</div>
|
|
755
|
-
</div>
|
|
756
|
-
|
|
757
|
-
{/* Accessibility */}
|
|
758
|
-
<div className="!space-y-8">
|
|
759
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
760
|
-
Accessibility Features
|
|
761
|
-
</h2>
|
|
762
|
-
<div className="grid grid-cols-1 gap-8 md:grid-cols-2">
|
|
763
|
-
<div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
|
|
764
|
-
<h3 className="text-lg font-semibold !text-green-300">
|
|
765
|
-
✅ Built-in Features
|
|
766
|
-
</h3>
|
|
767
|
-
<ul className="!space-y-2 text-sm !text-white/70">
|
|
768
|
-
<li className="!text-white/70">
|
|
769
|
-
Uses Radix UI AccessibleIcon wrapper
|
|
770
|
-
</li>
|
|
771
|
-
<li className="!text-white/70">
|
|
772
|
-
Provides screen reader label "Site Logo icon"
|
|
773
|
-
</li>
|
|
774
|
-
<li className="!text-white/70">
|
|
775
|
-
Supports keyboard navigation when clickable
|
|
776
|
-
</li>
|
|
777
|
-
<li className="!text-white/70">
|
|
778
|
-
Scalable vector format for all screen sizes
|
|
779
|
-
</li>
|
|
780
|
-
<li className="!text-white/70">
|
|
781
|
-
High contrast brand colors for visibility
|
|
782
|
-
</li>
|
|
783
|
-
</ul>
|
|
784
|
-
</div>
|
|
785
|
-
|
|
786
|
-
<div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
|
|
787
|
-
<h3 className="text-lg font-semibold !text-red-300">
|
|
788
|
-
💡 Best Practices
|
|
789
|
-
</h3>
|
|
790
|
-
<ul className="!space-y-2 text-sm !text-white/70">
|
|
791
|
-
<li className="!text-white/70">
|
|
792
|
-
Always include alt text when used as content
|
|
793
|
-
</li>
|
|
794
|
-
<li className="!text-white/70">
|
|
795
|
-
Use as clickable link to homepage
|
|
796
|
-
</li>
|
|
797
|
-
<li className="!text-white/70">
|
|
798
|
-
Ensure sufficient size for touch targets
|
|
799
|
-
</li>
|
|
800
|
-
<li className="!text-white/70">
|
|
801
|
-
Add focus indicators for keyboard navigation
|
|
802
|
-
</li>
|
|
803
|
-
<li className="!text-white/70">
|
|
804
|
-
Test with screen readers and voice control
|
|
805
|
-
</li>
|
|
806
|
-
</ul>
|
|
807
|
-
</div>
|
|
808
|
-
</div>
|
|
809
|
-
|
|
810
|
-
<div className="rounded-lg border border-white/10 bg-white/5 p-6">
|
|
811
|
-
<h3 className="mb-4 text-lg font-semibold !text-purple-300">
|
|
812
|
-
Accessibility Implementation
|
|
813
|
-
</h3>
|
|
814
|
-
<div className="grid grid-cols-1 gap-6 lg:grid-cols-2">
|
|
815
|
-
<div className="rounded-lg bg-black/40 p-4">
|
|
816
|
-
<pre className="overflow-x-auto text-sm !text-cyan-300">
|
|
817
|
-
{`// Logo as homepage link
|
|
818
|
-
<a
|
|
819
|
-
href="/"
|
|
820
|
-
aria-label="Aural UI homepage"
|
|
821
|
-
className="inline-flex items-center gap-2 rounded focus:ring-2 focus:ring-red-500/50"
|
|
822
|
-
>
|
|
823
|
-
<SiteLogoIcon className="h-8 w-8" />
|
|
824
|
-
<span className="sr-only">Aural UI</span>
|
|
825
|
-
</a>
|
|
826
|
-
|
|
827
|
-
// Logo with visible text
|
|
828
|
-
<div className="flex items-center gap-3">
|
|
829
|
-
<SiteLogoIcon
|
|
830
|
-
className="h-8 w-8"
|
|
831
|
-
aria-hidden="true"
|
|
832
|
-
/>
|
|
833
|
-
<h1 className="text-xl font-bold">Aural UI</h1>
|
|
834
|
-
</div>
|
|
835
|
-
|
|
836
|
-
// Custom accessible wrapper
|
|
837
|
-
import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
|
|
838
|
-
|
|
839
|
-
<AccessibleIcon label="Aural UI - Component Library">
|
|
840
|
-
<SiteLogoIcon className="h-8 w-8" />
|
|
841
|
-
</AccessibleIcon>`}
|
|
842
|
-
</pre>
|
|
843
|
-
</div>
|
|
844
|
-
<div className="!space-y-4">
|
|
845
|
-
<p className="text-sm !text-white/70">
|
|
846
|
-
When using the SiteLogoIcon as navigation, always
|
|
847
|
-
provide clear context about its purpose and destination.
|
|
848
|
-
The built-in accessible label helps screen readers
|
|
849
|
-
identify the element.
|
|
850
|
-
</p>
|
|
851
|
-
<div className="rounded-lg border border-red-500/20 bg-red-500/10 p-4">
|
|
852
|
-
<div className="flex items-center gap-2 text-sm text-red-200">
|
|
853
|
-
<SiteLogoIcon className="h-4 w-4" />
|
|
854
|
-
<span>
|
|
855
|
-
This ensures all users can navigate effectively
|
|
856
|
-
</span>
|
|
857
|
-
</div>
|
|
858
|
-
</div>
|
|
859
|
-
</div>
|
|
860
|
-
</div>
|
|
861
|
-
</div>
|
|
862
|
-
</div>
|
|
863
|
-
|
|
864
|
-
{/* Related Components */}
|
|
865
|
-
<div className="!space-y-8">
|
|
866
|
-
<h2 className="text-center text-3xl font-bold !text-white">
|
|
867
|
-
Related Components
|
|
868
|
-
</h2>
|
|
869
|
-
<div className="grid grid-cols-2 gap-6 md:grid-cols-4">
|
|
870
|
-
<div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
|
|
871
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-blue-500/20">
|
|
872
|
-
<span className="text-2xl">🏠</span>
|
|
873
|
-
</div>
|
|
874
|
-
<div>
|
|
875
|
-
<div className="font-medium text-white">HomeIcon</div>
|
|
876
|
-
<div className="text-xs text-white/60">Navigation</div>
|
|
877
|
-
</div>
|
|
878
|
-
</div>
|
|
879
|
-
<div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
|
|
880
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-purple-500/20">
|
|
881
|
-
<span className="!text-2xl !text-white">☰</span>
|
|
882
|
-
</div>
|
|
883
|
-
<div>
|
|
884
|
-
<div className="font-medium text-white">MenuIcon</div>
|
|
885
|
-
<div className="text-xs text-white/60">Mobile nav</div>
|
|
886
|
-
</div>
|
|
887
|
-
</div>
|
|
888
|
-
<div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
|
|
889
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-green-500/20">
|
|
890
|
-
<span className="text-2xl">⚙️</span>
|
|
891
|
-
</div>
|
|
892
|
-
<div>
|
|
893
|
-
<div className="font-medium text-white">SettingsIcon</div>
|
|
894
|
-
<div className="text-xs text-white/60">Configuration</div>
|
|
895
|
-
</div>
|
|
896
|
-
</div>
|
|
897
|
-
<div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
|
|
898
|
-
<div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-orange-500/20">
|
|
899
|
-
<span className="text-2xl">👤</span>
|
|
900
|
-
</div>
|
|
901
|
-
<div>
|
|
902
|
-
<div className="font-medium text-white">UserIcon</div>
|
|
903
|
-
<div className="text-xs text-white/60">Profile</div>
|
|
904
|
-
</div>
|
|
905
|
-
</div>
|
|
906
|
-
</div>
|
|
54
|
+
}`,
|
|
55
|
+
livePreview: (
|
|
56
|
+
<div className="flex items-center gap-2">
|
|
57
|
+
<SiteLogoIcon className="h-8 w-8" />
|
|
907
58
|
</div>
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
59
|
+
),
|
|
60
|
+
}}
|
|
61
|
+
relatedIcons={[
|
|
62
|
+
{
|
|
63
|
+
name: "GoogleLogoIcon",
|
|
64
|
+
description: "Google brand mark",
|
|
65
|
+
icon: GoogleLogoIcon,
|
|
66
|
+
accentToken: "info",
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
name: "AppleLogoIcon",
|
|
70
|
+
description: "Apple brand mark",
|
|
71
|
+
icon: AppleLogoIcon,
|
|
72
|
+
accentToken: "positive",
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
name: "InstagramIcon",
|
|
76
|
+
description: "Instagram brand mark",
|
|
77
|
+
icon: InstagramIcon,
|
|
78
|
+
accentToken: "warning",
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
name: "IndianFlagIcon",
|
|
82
|
+
description: "Indian flag identity icon",
|
|
83
|
+
icon: IndianFlagIcon,
|
|
84
|
+
accentToken: "negative",
|
|
85
|
+
},
|
|
86
|
+
]}
|
|
87
|
+
/>
|
|
934
88
|
),
|
|
935
89
|
},
|
|
936
90
|
},
|
|
937
91
|
tags: ["autodocs"],
|
|
938
92
|
argTypes: {
|
|
939
|
-
|
|
940
|
-
control:
|
|
941
|
-
description: "
|
|
93
|
+
className: {
|
|
94
|
+
control: "text",
|
|
95
|
+
description: "CSS classes for sizing",
|
|
942
96
|
},
|
|
943
97
|
withAccessibility: {
|
|
944
98
|
control: "boolean",
|
|
945
|
-
description: "
|
|
946
|
-
},
|
|
947
|
-
height: {
|
|
948
|
-
control: { type: "range", min: 16, max: 128, step: 4 },
|
|
949
|
-
description: "Height of the logo in pixels",
|
|
950
|
-
},
|
|
951
|
-
className: {
|
|
952
|
-
control: "text",
|
|
953
|
-
description: "CSS classes for styling",
|
|
99
|
+
description: "Wrap with accessibility label",
|
|
954
100
|
},
|
|
955
101
|
},
|
|
956
102
|
}
|
|
@@ -958,218 +104,105 @@ import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
|
|
|
958
104
|
export default meta
|
|
959
105
|
type Story = StoryObj<typeof SiteLogoIcon>
|
|
960
106
|
|
|
961
|
-
// Story parameters for consistent dark theme
|
|
962
|
-
const storyParameters = {
|
|
963
|
-
backgrounds: {
|
|
964
|
-
default: "dark",
|
|
965
|
-
values: [
|
|
966
|
-
{ name: "dark", value: "#0a0a0a" },
|
|
967
|
-
{ name: "darker", value: "#000000" },
|
|
968
|
-
],
|
|
969
|
-
},
|
|
970
|
-
}
|
|
971
|
-
|
|
972
107
|
export const Default: Story = {
|
|
973
108
|
args: {
|
|
974
109
|
className: "h-8 w-8",
|
|
975
110
|
withAccessibility: true,
|
|
976
111
|
},
|
|
977
|
-
parameters: storyParameters,
|
|
978
112
|
render: (args) => (
|
|
979
|
-
<
|
|
113
|
+
<IconDefaultCanvas>
|
|
980
114
|
<SiteLogoIcon {...args} />
|
|
981
|
-
</
|
|
115
|
+
</IconDefaultCanvas>
|
|
982
116
|
),
|
|
983
117
|
}
|
|
984
118
|
|
|
985
119
|
export const SizeVariations: Story = {
|
|
986
|
-
|
|
987
|
-
...storyParameters,
|
|
988
|
-
docs: {
|
|
989
|
-
description: {
|
|
990
|
-
story:
|
|
991
|
-
"SiteLogoIcon in different sizes for various use cases, from small navigation to large displays.",
|
|
992
|
-
},
|
|
993
|
-
},
|
|
994
|
-
},
|
|
995
|
-
render: () => (
|
|
996
|
-
<div className="flex h-64 min-h-dvh items-center justify-center gap-8 rounded-lg bg-gradient-to-br from-gray-900 to-gray-800 p-8">
|
|
997
|
-
<div className="text-center">
|
|
998
|
-
<SiteLogoIcon className="!mx-auto mb-2 h-4 w-4" />
|
|
999
|
-
<span className="text-xs text-white/60">16px</span>
|
|
1000
|
-
</div>
|
|
1001
|
-
<div className="text-center">
|
|
1002
|
-
<SiteLogoIcon className="!mx-auto mb-2 h-6 w-6" />
|
|
1003
|
-
<span className="text-xs text-white/60">24px</span>
|
|
1004
|
-
</div>
|
|
1005
|
-
<div className="text-center">
|
|
1006
|
-
<SiteLogoIcon className="!mx-auto mb-2 h-8 w-8" />
|
|
1007
|
-
<span className="text-xs text-white/60">32px</span>
|
|
1008
|
-
</div>
|
|
1009
|
-
<div className="text-center">
|
|
1010
|
-
<SiteLogoIcon className="!mx-auto mb-2 h-12 w-12" />
|
|
1011
|
-
<span className="text-xs text-white/60">48px</span>
|
|
1012
|
-
</div>
|
|
1013
|
-
<div className="text-center">
|
|
1014
|
-
<SiteLogoIcon className="!mx-auto mb-2 h-16 w-16" />
|
|
1015
|
-
<span className="text-xs text-white/60">64px</span>
|
|
1016
|
-
</div>
|
|
1017
|
-
<div className="text-center">
|
|
1018
|
-
<SiteLogoIcon className="!mx-auto mb-2 h-24 w-24" />
|
|
1019
|
-
<span className="text-xs text-white/60">96px</span>
|
|
1020
|
-
</div>
|
|
1021
|
-
</div>
|
|
1022
|
-
),
|
|
120
|
+
render: () => <IconSizeVariations icon={SiteLogoIcon} />,
|
|
1023
121
|
}
|
|
1024
122
|
|
|
1025
|
-
export const
|
|
1026
|
-
parameters: {
|
|
1027
|
-
...storyParameters,
|
|
1028
|
-
docs: {
|
|
1029
|
-
description: {
|
|
1030
|
-
story: "SiteLogoIcon used in navigation headers and brand contexts.",
|
|
1031
|
-
},
|
|
1032
|
-
},
|
|
1033
|
-
},
|
|
123
|
+
export const BrandColors: Story = {
|
|
1034
124
|
render: () => (
|
|
1035
|
-
<
|
|
1036
|
-
{
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
<span className="text-lg font-bold text-white">Aural UI</span>
|
|
1068
|
-
</div>
|
|
1069
|
-
<button className="text-white">☰</button>
|
|
1070
|
-
</div>
|
|
1071
|
-
</div>
|
|
1072
|
-
</div>
|
|
1073
|
-
|
|
1074
|
-
{/* Footer */}
|
|
1075
|
-
<div className="!space-y-2">
|
|
1076
|
-
<h3 className="text-sm font-medium text-white">Footer Branding</h3>
|
|
1077
|
-
<div className="rounded-lg border border-white/10 bg-white/5 p-6 text-center">
|
|
1078
|
-
<SiteLogoIcon className="!mx-auto h-12 w-12" />
|
|
1079
|
-
<h3 className="mt-4 text-lg font-bold text-white">Aural UI</h3>
|
|
1080
|
-
<p className="mt-2 text-sm text-white/60">
|
|
1081
|
-
Beautiful, accessible components for modern web applications.
|
|
1082
|
-
</p>
|
|
1083
|
-
</div>
|
|
1084
|
-
</div>
|
|
1085
|
-
</div>
|
|
125
|
+
<IconBrandColors
|
|
126
|
+
icon={SiteLogoIcon}
|
|
127
|
+
variants={[
|
|
128
|
+
{
|
|
129
|
+
label: "Brand Red",
|
|
130
|
+
description: "Recommended",
|
|
131
|
+
cardClassName:
|
|
132
|
+
"border-fm-divider-secondary h-24 w-24 border bg-transparent",
|
|
133
|
+
iconClassName: "h-8 w-8",
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
label: "White Background",
|
|
137
|
+
description: "Official card",
|
|
138
|
+
cardClassName:
|
|
139
|
+
"border-fm-divider-secondary h-24 w-24 border bg-white",
|
|
140
|
+
iconClassName: "h-8 w-8",
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
label: "Primary Surface",
|
|
144
|
+
description: "Theme surface",
|
|
145
|
+
cardClassName: "bg-fm-surface-primary h-24 w-24",
|
|
146
|
+
iconClassName: "h-8 w-8",
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
label: "Transparent",
|
|
150
|
+
description: "Original mark",
|
|
151
|
+
cardClassName:
|
|
152
|
+
"border-fm-divider-contrast h-24 w-24 border bg-transparent",
|
|
153
|
+
iconClassName: "h-8 w-8",
|
|
154
|
+
},
|
|
155
|
+
]}
|
|
156
|
+
/>
|
|
1086
157
|
),
|
|
1087
158
|
}
|
|
1088
159
|
|
|
1089
|
-
export const
|
|
1090
|
-
parameters: {
|
|
1091
|
-
...storyParameters,
|
|
1092
|
-
docs: {
|
|
1093
|
-
description: {
|
|
1094
|
-
story: "SiteLogoIcon used in various brand applications and contexts.",
|
|
1095
|
-
},
|
|
1096
|
-
},
|
|
1097
|
-
},
|
|
160
|
+
export const UsageExamples: Story = {
|
|
1098
161
|
render: () => (
|
|
1099
|
-
<
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
</div>
|
|
1108
|
-
<span className="text-xs text-white/60">Standard</span>
|
|
1109
|
-
</div>
|
|
1110
|
-
<div className="!space-y-2 text-center">
|
|
1111
|
-
<div className="flex h-16 w-16 items-center justify-center rounded-full bg-white shadow-lg">
|
|
1112
|
-
<SiteLogoIcon className="h-12 w-12" />
|
|
1113
|
-
</div>
|
|
1114
|
-
<span className="text-xs text-white/60">Round</span>
|
|
1115
|
-
</div>
|
|
1116
|
-
<div className="!space-y-2 text-center">
|
|
1117
|
-
<div className="flex h-16 w-16 items-center justify-center rounded-xl bg-gradient-to-br from-red-500 to-pink-500 shadow-lg">
|
|
1118
|
-
<SiteLogoIcon className="h-12 w-12" />
|
|
1119
|
-
</div>
|
|
1120
|
-
<span className="text-xs text-white/60">Branded</span>
|
|
1121
|
-
</div>
|
|
1122
|
-
<div className="!space-y-2 text-center">
|
|
1123
|
-
<div className="flex h-16 w-16 items-center justify-center rounded-xl border-2 border-red-500/20 bg-red-500/10">
|
|
1124
|
-
<SiteLogoIcon className="h-12 w-12" />
|
|
1125
|
-
</div>
|
|
1126
|
-
<span className="text-xs text-white/60">Outlined</span>
|
|
162
|
+
<IconUsageCanvas>
|
|
163
|
+
<IconUsageSection title="App Header">
|
|
164
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex w-full max-w-sm items-center justify-between rounded-xl border px-4 py-3">
|
|
165
|
+
<div className="flex items-center gap-2">
|
|
166
|
+
<SiteLogoIcon className="h-8 w-8" />
|
|
167
|
+
<span className="text-fm-primary font-fm-text text-sm font-semibold">
|
|
168
|
+
Pocket FM
|
|
169
|
+
</span>
|
|
1127
170
|
</div>
|
|
1128
171
|
</div>
|
|
1129
|
-
</
|
|
172
|
+
</IconUsageSection>
|
|
1130
173
|
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
<SiteLogoIcon className="!mx-auto h-12 w-12 animate-pulse" />
|
|
1137
|
-
<span className="mt-2 text-xs text-white/60">Pulse</span>
|
|
1138
|
-
</div>
|
|
1139
|
-
<div className="text-center">
|
|
1140
|
-
<SiteLogoIcon className="animate-logo-pulse !mx-auto h-12 w-12" />
|
|
1141
|
-
<span className="mt-2 text-xs text-white/60">Custom Pulse</span>
|
|
174
|
+
<IconUsageSection title="Login Screen Branding">
|
|
175
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex w-full max-w-sm flex-col items-center gap-3 rounded-xl border p-6">
|
|
176
|
+
<SiteLogoIcon className="h-16 w-16" />
|
|
177
|
+
<div className="text-fm-primary font-fm-text text-lg font-semibold">
|
|
178
|
+
Welcome to Pocket FM
|
|
1142
179
|
</div>
|
|
1143
|
-
<div className="text-
|
|
1144
|
-
|
|
1145
|
-
<span className="mt-2 text-xs text-white/60">Glow Effect</span>
|
|
180
|
+
<div className="text-fm-secondary font-fm-text text-sm">
|
|
181
|
+
Sign in to continue
|
|
1146
182
|
</div>
|
|
1147
183
|
</div>
|
|
1148
|
-
</
|
|
1149
|
-
|
|
184
|
+
</IconUsageSection>
|
|
185
|
+
|
|
186
|
+
<IconUsageSection title="Favicon / Tab Icon">
|
|
187
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex items-center gap-4 rounded-xl border px-4 py-3">
|
|
188
|
+
<SiteLogoIcon className="h-5 w-5" />
|
|
189
|
+
<span className="text-fm-secondary font-fm-text text-sm">
|
|
190
|
+
Pocket FM — Audio Stories
|
|
191
|
+
</span>
|
|
192
|
+
</div>
|
|
193
|
+
</IconUsageSection>
|
|
194
|
+
</IconUsageCanvas>
|
|
1150
195
|
),
|
|
1151
196
|
}
|
|
1152
197
|
|
|
1153
198
|
export const Playground: Story = {
|
|
1154
|
-
parameters: {
|
|
1155
|
-
...storyParameters,
|
|
1156
|
-
docs: {
|
|
1157
|
-
description: {
|
|
1158
|
-
story:
|
|
1159
|
-
"Interactive playground to experiment with different SiteLogoIcon configurations.",
|
|
1160
|
-
},
|
|
1161
|
-
},
|
|
1162
|
-
},
|
|
1163
199
|
args: {
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
className: "",
|
|
200
|
+
className: "h-8 w-8",
|
|
201
|
+
withAccessibility: true,
|
|
1167
202
|
},
|
|
1168
203
|
render: (args) => (
|
|
1169
|
-
<
|
|
1170
|
-
<
|
|
1171
|
-
|
|
1172
|
-
</div>
|
|
1173
|
-
</div>
|
|
204
|
+
<IconPlaygroundCanvas>
|
|
205
|
+
<SiteLogoIcon {...args} />
|
|
206
|
+
</IconPlaygroundCanvas>
|
|
1174
207
|
),
|
|
1175
208
|
}
|