aural-ui 4.0.1 → 4.2.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/README.md +8 -1
- package/dist/components/aspect-ratio/AspectRatio.stories.tsx +290 -1228
- package/dist/components/avatar/Avatar.stories.tsx +219 -235
- 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/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 -636
- 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 +530 -867
- package/dist/components/dialog/Dialog.stories.tsx +501 -950
- package/dist/components/divider/Divider.stories.tsx +264 -527
- package/dist/components/dot-loader/DotLoader.stories.tsx +256 -257
- package/dist/components/drawer/Drawer.stories.tsx +659 -1023
- package/dist/components/dropdown/Dropdown.stories.tsx +643 -1028
- 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 -1254
- 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 +484 -835
- package/dist/components/marquee/Marquee.stories.tsx +356 -712
- package/dist/components/otp-inputs/OtpInputs.stories.tsx +352 -422
- package/dist/components/overlay/Overlay.stories.tsx +452 -824
- package/dist/components/pagination/Pagination.stories.tsx +721 -210
- package/dist/components/popover/Popover.stories.tsx +481 -896
- package/dist/components/radio/Radio.stories.tsx +432 -124
- package/dist/components/resizable/Resizable.stories.tsx +495 -799
- package/dist/components/scroll-area/ScrollArea.stories.tsx +383 -1059
- package/dist/components/search/Search.stories.tsx +312 -595
- package/dist/components/select/Select.stories.tsx +684 -789
- package/dist/components/sheet/Sheet.stories.tsx +671 -950
- package/dist/components/skelton/Skelton.stories.tsx +230 -764
- package/dist/components/slider/Slider.stories.tsx +383 -760
- 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 -916
- package/dist/components/tabs/Tabs.stories.tsx +458 -1455
- 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 -154
- package/dist/components/toast/Toast.stories.tsx +452 -1339
- package/dist/components/toggle/Toggle.stories.tsx +488 -931
- package/dist/components/tooltip/Tooltip.stories.tsx +344 -1388
- 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 +223 -1060
- package/dist/icons/alert-icon/AlertIcon.stories.tsx +106 -968
- package/dist/icons/all-icons.tsx +37 -16
- package/dist/icons/angle-down-icon/AngleDownIcon.stories.tsx +137 -1010
- package/dist/icons/apple-logo-icon/AppleLogoIcon.stories.tsx +145 -935
- package/dist/icons/arrow-box-left-icon/ArrowBoxLeftIcon.stories.tsx +132 -1046
- package/dist/icons/arrow-corner-up-left-icon/ArrowCornerUpLeftIcon.stories.tsx +134 -986
- package/dist/icons/arrow-corner-up-right-icon/ArrowCornerUpRightIcon.stories.tsx +135 -1028
- package/dist/icons/arrow-left-icon/ArrowLeftIcon.stories.tsx +133 -971
- package/dist/icons/arrow-right-icon/ArrowRightIcon.stories.tsx +145 -1123
- package/dist/icons/arrow-right-up-icon/ArrowRightUpIcon.stories.tsx +143 -1252
- package/dist/icons/art-board-icon/ArtBoardIcon.stories.tsx +123 -632
- package/dist/icons/audio-bar-icon/AudioBarIcon.stories.tsx +141 -1223
- package/dist/icons/backward-ten-seconds-icon/BackwardTenSecondsIcon.stories.tsx +164 -1018
- package/dist/icons/bubble-check-icon/BubbleCheckIcon.stories.tsx +121 -1236
- package/dist/icons/bubble-crossed-icon/BubbleCrossedIcon.stories.tsx +121 -1213
- package/dist/icons/bubble-sparkle-icon/BubbleSparkleIcon.stories.tsx +116 -893
- package/dist/icons/camera-icon/CameraIcon.stories.tsx +109 -1254
- package/dist/icons/capital-a-letter-icon/CapitalALetterIcon.stories.tsx +114 -975
- package/dist/icons/chevron-double-left-icon/ChevronDoubleLeftIcon.stories.tsx +157 -994
- package/dist/icons/chevron-double-right-icon/ChevronDoubleRightIcon.stories.tsx +160 -992
- package/dist/icons/chevron-down-icon/ChevronDownIcon.stories.tsx +140 -970
- package/dist/icons/chevron-left-icon/ChevronLeftIcon.stories.tsx +126 -993
- package/dist/icons/chevron-right-icon/ChevronRightIcon.stories.tsx +144 -987
- package/dist/icons/chevron-up-icon/ChevronUpIcon.stories.tsx +141 -1007
- package/dist/icons/circle-tick-icon/CircleTickIcon.stories.tsx +147 -1187
- package/dist/icons/circular-play-icon/CircularPlayIcon.stories.tsx +110 -476
- package/dist/icons/coin-icon/CoinIcon.stories.tsx +120 -1364
- package/dist/icons/coin-toons-icon/CoinToonsIcon.stories.tsx +113 -1360
- package/dist/icons/column-wide-add-icon/ColumnWideAddIcon.stories.tsx +111 -942
- package/dist/icons/command-icon/CommandIcon.stories.tsx +124 -1087
- package/dist/icons/copy-icon/CopyIcon.stories.tsx +119 -996
- package/dist/icons/cross-circle-icon/CrossCircleIcon.stories.tsx +144 -1046
- package/dist/icons/cross-icon/CrossIcon.stories.tsx +136 -999
- package/dist/icons/download-icon/DownloadIcon.stories.tsx +123 -857
- package/dist/icons/edit-big-icon/EditBigIcon.stories.tsx +121 -1080
- package/dist/icons/email-icon/EmailIcon.stories.tsx +112 -979
- package/dist/icons/expand-icon/ExpandIcon.stories.tsx +109 -1146
- package/dist/icons/eye-close-icon/EyeCloseIcon.stories.tsx +141 -1068
- package/dist/icons/eye-open-icon/EyeOpenIcon.stories.tsx +140 -1081
- package/dist/icons/feature-shine-icon/FeatureShineIcon.stories.tsx +124 -1050
- package/dist/icons/file-chart-icon/FileChartIcon.stories.tsx +123 -1091
- package/dist/icons/file-text-icon/FileTextIcon.stories.tsx +122 -633
- package/dist/icons/filter-bar-row-icon/FilterBarRowIcon.stories.tsx +116 -1087
- package/dist/icons/forward-ten-seconds-icon/ForwardTenSecondsIcon.stories.tsx +166 -1020
- package/dist/icons/git-branch-icon/GitBranchIcon.stories.tsx +112 -1182
- package/dist/icons/git-fork-icon/GitForkIcon.stories.tsx +112 -1155
- package/dist/icons/globe-icon/GlobeIcon.stories.tsx +127 -325
- package/dist/icons/google-logo-icon/GoogleLogoIcon.stories.tsx +142 -985
- package/dist/icons/grip-vertical-icon/GripVerticalIcon.stories.tsx +116 -1217
- package/dist/icons/head-icon/HeadIcon.stories.tsx +108 -953
- package/dist/icons/heart-icon/HeartIcon.stories.tsx +117 -1060
- package/dist/icons/image-avatar-sparkle-icon/ImageAvatarSparkleIcon.stories.tsx +116 -716
- package/dist/icons/image-icon/ImageIcon.stories.tsx +102 -1164
- package/dist/icons/import-folder-icon/ImportFolderIcon.stories.tsx +108 -1233
- package/dist/icons/import-left-arrow-folder-icon/ImportLeftArrowFolderIcon.stories.tsx +133 -1289
- package/dist/icons/indian-flag-icon/IndianFlagIcon.stories.tsx +155 -1012
- package/dist/icons/instagram-icon/InstagramIcon.stories.tsx +158 -1438
- package/dist/icons/layout-column-icon/LayoutColumnIcon.stories.tsx +121 -1011
- package/dist/icons/layout-left-icon/LayoutLeftIcon.stories.tsx +116 -981
- package/dist/icons/layout-right-icon/LayoutRightIcon.stories.tsx +116 -979
- package/dist/icons/light-bulb-simple-icon/LightBulbSimpleIcon.stories.tsx +105 -1252
- package/dist/icons/linked-in-icon/LinkedInIcon.stories.tsx +151 -1554
- package/dist/icons/magic-book-icon/MagicBookIcon.stories.tsx +107 -1227
- package/dist/icons/magic-edit-icon/MagicEditIcon.stories.tsx +116 -707
- package/dist/icons/maintenance-icon/MaintenanceIcon.stories.tsx +119 -1226
- package/dist/icons/message-icon/MessageIcon.stories.tsx +111 -557
- package/dist/icons/minimize-icon/MinimizeIcon.stories.tsx +112 -1198
- package/dist/icons/moon-icon/MoonIcon.stories.tsx +117 -557
- package/dist/icons/move-horizontal-icon/MoveHorizontalIcon.stories.tsx +106 -1235
- package/dist/icons/move-vertical-icon/MoveVerticalIcon.stories.tsx +112 -1185
- package/dist/icons/musical-note-icon/MusicalNoteIcon.stories.tsx +116 -1012
- package/dist/icons/notepad-icon/NotepadIcon.stories.tsx +108 -1137
- package/dist/icons/notes-icon/NotesIcon.stories.tsx +116 -1138
- package/dist/icons/page-search-icon/PageSearchIcon.stories.tsx +106 -1146
- package/dist/icons/page-text-icon/PageTextIcon.stories.tsx +119 -719
- package/dist/icons/paint-roll-icon/PaintRollIcon.stories.tsx +110 -999
- package/dist/icons/paper-plane-icon/PaperPlaneIcon.stories.tsx +109 -912
- package/dist/icons/pause-icon/PauseIcon.stories.tsx +110 -1041
- package/dist/icons/pencil-icon/PencilIcon.stories.tsx +112 -1109
- package/dist/icons/phone-icon/PhoneIcon.stories.tsx +112 -1023
- package/dist/icons/plus-icon/PlusIcon.stories.tsx +103 -1132
- package/dist/icons/pocket-studio-icon/PocketStudioIcon.stories.tsx +104 -870
- package/dist/icons/scroll-down-icon/ScrollDownIcon.stories.tsx +99 -476
- package/dist/icons/search-icon/SearchIcon.stories.tsx +108 -1161
- package/dist/icons/setting-icon/SettingIcon.stories.tsx +104 -1009
- package/dist/icons/share-icon/ShareIcon.stories.tsx +117 -1064
- package/dist/icons/shield-icon/ShieldIcon.stories.tsx +114 -974
- package/dist/icons/site-logo-icon/SiteLogoIcon.stories.tsx +134 -1160
- package/dist/icons/skip-backward-icon/SkipBackwardIcon.stories.tsx +169 -1017
- package/dist/icons/skip-forward-icon/SkipForwardIcon.stories.tsx +161 -1016
- package/dist/icons/sparkles-soft-icon/SparklesSoftIcon.stories.tsx +102 -1001
- package/dist/icons/spinner-gradient-icon/SpinnerGradientIcon.stories.tsx +155 -593
- package/dist/icons/spinner-solid-icon/SpinnerSolidIcon.stories.tsx +155 -608
- package/dist/icons/spinner-solid-neutral-icon/SpinnerSolidINeutralcon.stories.tsx +142 -712
- package/dist/icons/star-icon/StarIcon.stories.tsx +120 -946
- package/dist/icons/store-coin-icon/StoreCoinIcon.stories.tsx +109 -1013
- package/dist/icons/suggestion-icon/SuggestionIcon.stories.tsx +113 -891
- package/dist/icons/sun-icon/SunIcon.stories.tsx +117 -864
- package/dist/icons/text-color-icon/TextColorIcon.stories.tsx +113 -989
- package/dist/icons/text-indicator-icon/TextIndicatorIcon.stories.tsx +120 -1027
- package/dist/icons/threads-icon/ThreadsIcon.stories.tsx +153 -1476
- package/dist/icons/tick-circle-icon/TickCircleIcon.stories.tsx +143 -1187
- package/dist/icons/tick-icon/TickIcon.stories.tsx +142 -1322
- package/dist/icons/trash-icon/TrashIcon.stories.tsx +105 -970
- package/dist/icons/twitter-x-icon/TwitterXIcon.stories.tsx +154 -1457
- package/dist/icons/upload-icon/UploadIcon.stories.tsx +112 -930
- package/dist/icons/vertical-menu-icon/VerticalMenuIcon.stories.tsx +115 -1019
- package/dist/icons/video-play-list-icon/VideoPlaylistIcon.stories.tsx +122 -1092
- package/dist/icons/voice-playing-icon/VoicePlayingIcon.stories.tsx +120 -1401
- package/dist/icons/volume-full-icon/VolumeFullIcon.stories.tsx +107 -1212
- package/dist/icons/volume-half-icon/VolumeHalfIcon.stories.tsx +109 -1122
- package/dist/icons/volume-off-icon/VolumeOffIcon.stories.tsx +112 -1124
- package/dist/icons/warning-icon/WarningIcon.stories.tsx +119 -1083
- package/dist/icons/youtube-icon/YoutubeIcon.stories.tsx +158 -983
- package/dist/index.cjs +90 -90
- package/dist/index.js +90 -90
- package/package.json +8 -3
|
@@ -1,6 +1,20 @@
|
|
|
1
1
|
import React from "react"
|
|
2
2
|
import type { Meta, StoryObj } from "@storybook/react-vite"
|
|
3
3
|
|
|
4
|
+
import { BubbleSparkleIcon } from "src/ui/icons/bubble-sparkle-icon"
|
|
5
|
+
import { FeatureShineIcon } from "src/ui/icons/feature-shine-icon"
|
|
6
|
+
import { SparklesSoftIcon } from "src/ui/icons/sparkles-soft-icon"
|
|
7
|
+
import { SuggestionIcon } from "src/ui/icons/suggestion-icon"
|
|
8
|
+
import {
|
|
9
|
+
IconColorVariations,
|
|
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 { LightBulbSimpleIcon } from "."
|
|
5
19
|
|
|
6
20
|
const meta: Meta<typeof LightBulbSimpleIcon> = {
|
|
@@ -18,1014 +32,69 @@ const meta: Meta<typeof LightBulbSimpleIcon> = {
|
|
|
18
32
|
},
|
|
19
33
|
docs: {
|
|
20
34
|
page: () => (
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
{
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
padding: 0 ;
|
|
33
|
-
margin: 0 ;
|
|
34
|
-
background: transparent ;
|
|
35
|
-
}
|
|
36
|
-
.docs-story {
|
|
37
|
-
background: transparent ;
|
|
38
|
-
}
|
|
39
|
-
.sbdocs {
|
|
40
|
-
background: transparent ;
|
|
41
|
-
}
|
|
42
|
-
body {
|
|
43
|
-
background: var(--color-fm-surface-primary) ;
|
|
44
|
-
}
|
|
45
|
-
#storybook-docs {
|
|
46
|
-
background: var(--color-fm-surface-primary) ;
|
|
47
|
-
}
|
|
48
|
-
.sbdocs-preview {
|
|
49
|
-
background: transparent ;
|
|
50
|
-
border: none ;
|
|
51
|
-
}
|
|
52
|
-
.sbdocs-h1, .sbdocs-h2, .sbdocs-h3, .sbdocs-h4, .sbdocs-h5, .sbdocs-h6 {
|
|
53
|
-
color: var(--color-fm-icon-active) ;
|
|
54
|
-
}
|
|
55
|
-
.sbdocs-p, .sbdocs-li {
|
|
56
|
-
color: var(--color-fm-secondary) ;
|
|
57
|
-
}
|
|
58
|
-
.sbdocs-code {
|
|
59
|
-
background: var(--color-fm-surface-secondary) ;
|
|
60
|
-
color: var(--color-fm-secondary-500) ;
|
|
61
|
-
border: 1px solid var(--color-fm-divider-secondary) ;
|
|
62
|
-
}
|
|
63
|
-
.sbdocs-pre {
|
|
64
|
-
background: var(--color-fm-surface-secondary) ;
|
|
65
|
-
border: 1px solid var(--color-fm-divider-secondary) ;
|
|
66
|
-
}
|
|
67
|
-
.sbdocs-table {
|
|
68
|
-
background: var(--color-fm-surface-secondary) ;
|
|
69
|
-
border: 1px solid var(--color-fm-divider-secondary) ;
|
|
70
|
-
}
|
|
71
|
-
.sbdocs-table th {
|
|
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
|
-
}
|
|
76
|
-
.sbdocs-table td {
|
|
77
|
-
color: var(--color-fm-secondary) ;
|
|
78
|
-
border-bottom: 1px solid var(--color-fm-divider-tertiary) ;
|
|
79
|
-
}
|
|
80
|
-
@keyframes pulse {
|
|
81
|
-
0%, 100% { opacity: 1; }
|
|
82
|
-
50% { opacity: 0.5; }
|
|
83
|
-
}
|
|
84
|
-
.animate-pulse {
|
|
85
|
-
animation: pulse 2s ease-in-out infinite;
|
|
86
|
-
}
|
|
87
|
-
@keyframes glow {
|
|
88
|
-
0%, 100% { filter: drop-shadow(0 0 5px rgba(253, 224, 71, 0.5)); }
|
|
89
|
-
50% { filter: drop-shadow(0 0 20px rgba(253, 224, 71, 0.8)); }
|
|
90
|
-
}
|
|
91
|
-
.animate-glow {
|
|
92
|
-
animation: glow 2s ease-in-out infinite;
|
|
93
|
-
}
|
|
94
|
-
`}
|
|
95
|
-
</style>
|
|
96
|
-
|
|
97
|
-
<div className="bg-fm-surface-primary min-h-screen">
|
|
98
|
-
{/* Header */}
|
|
99
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary relative overflow-hidden border-b backdrop-blur-xl">
|
|
100
|
-
<div className="from-fm-icon-warning/10 to-fm-icon-warning/10 absolute inset-0 bg-linear-to-r via-transparent" />
|
|
101
|
-
<div className="relative !mx-auto max-w-7xl px-6 py-16">
|
|
102
|
-
<div className="!space-y-6 text-center">
|
|
103
|
-
<div className="border-fm-icon-warning/30 from-fm-icon-warning/20 to-fm-icon-warning/20 !mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border bg-linear-to-br">
|
|
104
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning h-12 w-12" />
|
|
105
|
-
</div>
|
|
106
|
-
<h1 className="!text-fm-primary text-5xl font-bold">
|
|
107
|
-
LightBulbSimpleIcon
|
|
108
|
-
</h1>
|
|
109
|
-
<p className="text-fm-secondary! !mx-auto max-w-3xl text-xl leading-relaxed">
|
|
110
|
-
A clean, simple light bulb icon perfect for representing
|
|
111
|
-
ideas, innovation, creativity, and enlightenment. Features a
|
|
112
|
-
classic bulb design with filament detail and threaded base.
|
|
113
|
-
Built with accessibility in mind using Radix UI's
|
|
114
|
-
AccessibleIcon 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-fm-icon-warning text-3xl font-bold">
|
|
121
|
-
Ideas
|
|
122
|
-
</div>
|
|
123
|
-
<div className="text-fm-tertiary text-sm">
|
|
124
|
-
Innovation & creativity
|
|
125
|
-
</div>
|
|
126
|
-
</div>
|
|
127
|
-
<div className="bg-fm-divider-primary h-8 w-px" />
|
|
128
|
-
<div className="text-center">
|
|
129
|
-
<div className="text-fm-icon-warning text-3xl font-bold">
|
|
130
|
-
Insight
|
|
131
|
-
</div>
|
|
132
|
-
<div className="text-fm-tertiary text-sm">
|
|
133
|
-
Knowledge & learning
|
|
134
|
-
</div>
|
|
135
|
-
</div>
|
|
136
|
-
<div className="bg-fm-divider-primary h-8 w-px" />
|
|
137
|
-
<div className="text-center">
|
|
138
|
-
<div className="text-fm-icon-warning text-3xl font-bold">
|
|
139
|
-
Inspiration
|
|
140
|
-
</div>
|
|
141
|
-
<div className="text-fm-tertiary text-sm">
|
|
142
|
-
Eureka moments
|
|
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-fm-icon-active! text-center text-3xl font-bold">
|
|
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-fm-icon-warning! text-xl font-semibold">
|
|
160
|
-
Basic Usage
|
|
161
|
-
</h3>
|
|
162
|
-
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
163
|
-
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
164
|
-
{`import { LightBulbSimpleIcon } from "@icons/light-bulb-simple-icon"
|
|
165
|
-
|
|
166
|
-
function FeatureCard() {
|
|
35
|
+
<AuralIconDocsPage
|
|
36
|
+
accentToken="warning"
|
|
37
|
+
features={[
|
|
38
|
+
{ title: "Insight", description: "Highlight tips or ideas" },
|
|
39
|
+
{ title: "Tip", description: "Help and guidance cue" },
|
|
40
|
+
{ title: "Accessible", description: "ARIA-ready by default" },
|
|
41
|
+
]}
|
|
42
|
+
quickStart={{
|
|
43
|
+
codeExample: `import { LightBulbSimpleIcon } from "src/ui/icons/light-bulb-simple-icon"
|
|
44
|
+
|
|
45
|
+
function TipBanner() {
|
|
167
46
|
return (
|
|
168
|
-
<div className="flex items-center gap-
|
|
169
|
-
<LightBulbSimpleIcon className="h-
|
|
170
|
-
<span>
|
|
47
|
+
<div className="flex items-center gap-2">
|
|
48
|
+
<LightBulbSimpleIcon className="h-5 w-5 text-fm-icon-warning" />
|
|
49
|
+
<span>Pro tip: save your work often</span>
|
|
171
50
|
</div>
|
|
172
51
|
)
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
<div className="!space-y-4">
|
|
179
|
-
<h3 className="text-fm-icon-warning! text-xl font-semibold">
|
|
180
|
-
Live Preview
|
|
181
|
-
</h3>
|
|
182
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-32 items-center justify-center rounded-lg border">
|
|
183
|
-
<div className="border-fm-icon-warning/20 bg-fm-icon-warning/10 flex items-center gap-3 rounded-lg border px-4 py-3">
|
|
184
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning h-6 w-6" />
|
|
185
|
-
<span className="text-fm-icon-active">Smart Ideas</span>
|
|
186
|
-
</div>
|
|
187
|
-
</div>
|
|
188
|
-
</div>
|
|
189
|
-
</div>
|
|
190
|
-
</div>
|
|
191
|
-
|
|
192
|
-
{/* Props Documentation */}
|
|
193
|
-
<div className="!space-y-8">
|
|
194
|
-
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
195
|
-
Props & Configuration
|
|
196
|
-
</h2>
|
|
197
|
-
|
|
198
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary overflow-hidden rounded-lg border">
|
|
199
|
-
<div className="bg-fm-surface-secondary p-4">
|
|
200
|
-
<h3 className="text-fm-icon-active! text-xl font-semibold">
|
|
201
|
-
Props
|
|
202
|
-
</h3>
|
|
203
|
-
</div>
|
|
204
|
-
<table className="!my-0 w-full">
|
|
205
|
-
<thead className="bg-fm-surface-secondary">
|
|
206
|
-
<tr className="border-fm-divider-secondary border-b">
|
|
207
|
-
<th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
|
|
208
|
-
Prop
|
|
209
|
-
</th>
|
|
210
|
-
<th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
|
|
211
|
-
Type
|
|
212
|
-
</th>
|
|
213
|
-
<th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
|
|
214
|
-
Default
|
|
215
|
-
</th>
|
|
216
|
-
<th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
|
|
217
|
-
Description
|
|
218
|
-
</th>
|
|
219
|
-
</tr>
|
|
220
|
-
</thead>
|
|
221
|
-
<tbody>
|
|
222
|
-
{" "}
|
|
223
|
-
<tr className="bg-fm-surface-secondary!">
|
|
224
|
-
<td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
|
|
225
|
-
withAccessibility
|
|
226
|
-
</td>
|
|
227
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
228
|
-
boolean
|
|
229
|
-
</td>
|
|
230
|
-
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
231
|
-
true
|
|
232
|
-
</td>
|
|
233
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
234
|
-
Whether to wrap the icon with accessibility feature
|
|
235
|
-
</td>
|
|
236
|
-
</tr>
|
|
237
|
-
<tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
|
|
238
|
-
<td className="text-fm-icon-warning! px-6 py-4 font-mono text-sm">
|
|
239
|
-
height
|
|
240
|
-
</td>
|
|
241
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
242
|
-
number | string
|
|
243
|
-
</td>
|
|
244
|
-
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
245
|
-
24
|
|
246
|
-
</td>
|
|
247
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
248
|
-
Height of the icon in pixels
|
|
249
|
-
</td>
|
|
250
|
-
</tr>
|
|
251
|
-
<tr className="border-fm-divider-tertiary border-b">
|
|
252
|
-
<td className="text-fm-icon-warning! px-6 py-4 font-mono text-sm">
|
|
253
|
-
stroke
|
|
254
|
-
</td>
|
|
255
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
256
|
-
string
|
|
257
|
-
</td>
|
|
258
|
-
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
259
|
-
currentColor
|
|
260
|
-
</td>
|
|
261
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
262
|
-
Stroke color of the bulb outline
|
|
263
|
-
</td>
|
|
264
|
-
</tr>
|
|
265
|
-
<tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
|
|
266
|
-
<td className="text-fm-icon-warning! px-6 py-4 font-mono text-sm">
|
|
267
|
-
strokeWidth
|
|
268
|
-
</td>
|
|
269
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
270
|
-
string | number
|
|
271
|
-
</td>
|
|
272
|
-
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
273
|
-
1.5
|
|
274
|
-
</td>
|
|
275
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
276
|
-
Stroke width of the outline
|
|
277
|
-
</td>
|
|
278
|
-
</tr>
|
|
279
|
-
<tr className="border-fm-divider-tertiary border-b">
|
|
280
|
-
<td className="text-fm-icon-warning! px-6 py-4 font-mono text-sm">
|
|
281
|
-
fill
|
|
282
|
-
</td>
|
|
283
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
284
|
-
string
|
|
285
|
-
</td>
|
|
286
|
-
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
287
|
-
none
|
|
288
|
-
</td>
|
|
289
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
290
|
-
Fill color of the icon
|
|
291
|
-
</td>
|
|
292
|
-
</tr>
|
|
293
|
-
<tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
|
|
294
|
-
<td className="text-fm-icon-warning! px-6 py-4 font-mono text-sm">
|
|
295
|
-
className
|
|
296
|
-
</td>
|
|
297
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
298
|
-
string
|
|
299
|
-
</td>
|
|
300
|
-
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
301
|
-
-
|
|
302
|
-
</td>
|
|
303
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
304
|
-
CSS classes for styling (use for overrides)
|
|
305
|
-
</td>
|
|
306
|
-
</tr>
|
|
307
|
-
<tr className="bg-fm-surface-secondary!">
|
|
308
|
-
<td className="text-fm-icon-warning! px-6 py-4 font-mono text-sm">
|
|
309
|
-
...svgProps
|
|
310
|
-
</td>
|
|
311
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
312
|
-
SVGProps
|
|
313
|
-
</td>
|
|
314
|
-
<td className="text-fm-placeholder! px-6 py-4 text-sm">
|
|
315
|
-
-
|
|
316
|
-
</td>
|
|
317
|
-
<td className="text-fm-secondary! px-6 py-4 text-sm">
|
|
318
|
-
All standard SVG element props
|
|
319
|
-
</td>
|
|
320
|
-
</tr>
|
|
321
|
-
</tbody>
|
|
322
|
-
</table>
|
|
323
|
-
</div>
|
|
324
|
-
</div>
|
|
325
|
-
|
|
326
|
-
{/* Size Variations */}
|
|
327
|
-
<div className="!space-y-8">
|
|
328
|
-
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
329
|
-
Size Variations
|
|
330
|
-
</h2>
|
|
331
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
|
|
332
|
-
<div className="!space-y-6">
|
|
333
|
-
<div className="grid grid-cols-1 gap-8 md:grid-cols-2">
|
|
334
|
-
<div className="!space-y-4">
|
|
335
|
-
<h3 className="text-fm-icon-warning! text-lg font-semibold">
|
|
336
|
-
Standard Sizes
|
|
337
|
-
</h3>
|
|
338
|
-
<div className="bg-fm-surface-secondary flex items-end gap-6 rounded-lg p-6">
|
|
339
|
-
<div className="text-center">
|
|
340
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-2 h-3 w-3" />
|
|
341
|
-
<span className="text-fm-tertiary text-xs">
|
|
342
|
-
12px
|
|
343
|
-
</span>
|
|
344
|
-
</div>
|
|
345
|
-
<div className="text-center">
|
|
346
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-2 h-4 w-4" />
|
|
347
|
-
<span className="text-fm-tertiary text-xs">
|
|
348
|
-
16px
|
|
349
|
-
</span>
|
|
350
|
-
</div>
|
|
351
|
-
<div className="text-center">
|
|
352
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-2 h-5 w-5" />
|
|
353
|
-
<span className="text-fm-tertiary text-xs">
|
|
354
|
-
20px
|
|
355
|
-
</span>
|
|
356
|
-
</div>
|
|
357
|
-
<div className="text-center">
|
|
358
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-2 h-6 w-6" />
|
|
359
|
-
<span className="text-fm-tertiary text-xs">
|
|
360
|
-
24px
|
|
361
|
-
</span>
|
|
362
|
-
</div>
|
|
363
|
-
<div className="text-center">
|
|
364
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-2 h-8 w-8" />
|
|
365
|
-
<span className="text-fm-tertiary text-xs">
|
|
366
|
-
32px
|
|
367
|
-
</span>
|
|
368
|
-
</div>
|
|
369
|
-
<div className="text-center">
|
|
370
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-2 h-12 w-12" />
|
|
371
|
-
<span className="text-fm-tertiary text-xs">
|
|
372
|
-
48px
|
|
373
|
-
</span>
|
|
374
|
-
</div>
|
|
375
|
-
</div>
|
|
376
|
-
</div>
|
|
377
|
-
|
|
378
|
-
<div className="!space-y-4">
|
|
379
|
-
<h3 className="text-fm-icon-warning! text-lg font-semibold">
|
|
380
|
-
Code Example
|
|
381
|
-
</h3>
|
|
382
|
-
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
383
|
-
<pre className="text-fm-icon-info! overflow-x-auto text-sm">
|
|
384
|
-
{`// Small (16px)
|
|
385
|
-
<LightBulbSimpleIcon className="h-4 w-4 " />
|
|
386
|
-
|
|
387
|
-
// Medium (24px)
|
|
388
|
-
<LightBulbSimpleIcon className="h-6 w-6 " />
|
|
389
|
-
|
|
390
|
-
// Large (32px)
|
|
391
|
-
<LightBulbSimpleIcon className="h-8 w-8 " />
|
|
392
|
-
|
|
393
|
-
// Custom size for hero sections
|
|
394
|
-
<LightBulbSimpleIcon
|
|
395
|
-
width={40}
|
|
396
|
-
height={40}
|
|
397
|
-
className="text-yellow-400 "
|
|
398
|
-
/>`}
|
|
399
|
-
</pre>
|
|
400
|
-
</div>
|
|
401
|
-
</div>
|
|
402
|
-
</div>
|
|
403
|
-
</div>
|
|
404
|
-
</div>
|
|
405
|
-
</div>
|
|
406
|
-
|
|
407
|
-
{/* Color Variations */}
|
|
408
|
-
<div className="!space-y-8">
|
|
409
|
-
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
410
|
-
Color Variations
|
|
411
|
-
</h2>
|
|
412
|
-
<div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
|
|
413
|
-
<div className="!space-y-4">
|
|
414
|
-
<h3 className="text-fm-icon-warning! text-lg font-semibold">
|
|
415
|
-
Semantic Colors
|
|
416
|
-
</h3>
|
|
417
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
|
|
418
|
-
<div className="flex items-center gap-4">
|
|
419
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning h-6 w-6" />
|
|
420
|
-
<div>
|
|
421
|
-
<div className="text-fm-icon-active text-sm font-medium">
|
|
422
|
-
Innovation
|
|
423
|
-
</div>
|
|
424
|
-
<div className="text-fm-tertiary text-xs">
|
|
425
|
-
text-fm-icon-warning
|
|
426
|
-
</div>
|
|
427
|
-
</div>
|
|
428
|
-
</div>
|
|
429
|
-
<div className="flex items-center gap-4">
|
|
430
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning h-6 w-6" />
|
|
431
|
-
<div>
|
|
432
|
-
<div className="text-fm-icon-active text-sm font-medium">
|
|
433
|
-
Creativity
|
|
434
|
-
</div>
|
|
435
|
-
<div className="text-fm-tertiary text-xs">
|
|
436
|
-
text-fm-icon-warning
|
|
437
|
-
</div>
|
|
438
|
-
</div>
|
|
439
|
-
</div>
|
|
440
|
-
<div className="flex items-center gap-4">
|
|
441
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning h-6 w-6" />
|
|
442
|
-
<div>
|
|
443
|
-
<div className="text-fm-icon-active text-sm font-medium">
|
|
444
|
-
Inspiration
|
|
445
|
-
</div>
|
|
446
|
-
<div className="text-fm-tertiary text-xs">
|
|
447
|
-
text-fm-icon-warning
|
|
448
|
-
</div>
|
|
449
|
-
</div>
|
|
450
|
-
</div>
|
|
451
|
-
<div className="flex items-center gap-4">
|
|
452
|
-
<LightBulbSimpleIcon className="text-fm-icon-info h-6 w-6" />
|
|
453
|
-
<div>
|
|
454
|
-
<div className="text-fm-icon-active text-sm font-medium">
|
|
455
|
-
Knowledge
|
|
456
|
-
</div>
|
|
457
|
-
<div className="text-fm-tertiary text-xs">
|
|
458
|
-
text-fm-icon-info
|
|
459
|
-
</div>
|
|
460
|
-
</div>
|
|
461
|
-
</div>
|
|
462
|
-
</div>
|
|
463
|
-
</div>
|
|
464
|
-
|
|
465
|
-
<div className="!space-y-4">
|
|
466
|
-
<h3 className="text-fm-icon-warning! text-lg font-semibold">
|
|
467
|
-
Custom Colors
|
|
468
|
-
</h3>
|
|
469
|
-
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
470
|
-
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
471
|
-
{`// Using Tailwind classes with
|
|
472
|
-
<LightBulbSimpleIcon className="h-6 w-6 text-yellow-400 " />
|
|
473
|
-
<LightBulbSimpleIcon className="h-6 w-6 text-orange-500 " />
|
|
474
|
-
|
|
475
|
-
// Using CSS custom properties
|
|
476
|
-
<LightBulbSimpleIcon
|
|
477
|
-
className="h-6 w-6 "
|
|
478
|
-
style={{ color: 'var(--color-innovation)' }}
|
|
479
|
-
/>
|
|
480
|
-
|
|
481
|
-
// Direct stroke prop
|
|
482
|
-
<LightBulbSimpleIcon
|
|
483
|
-
width={24}
|
|
484
|
-
height={24}
|
|
485
|
-
stroke="#fbbf24"
|
|
486
|
-
/>`}
|
|
487
|
-
</pre>
|
|
488
|
-
</div>
|
|
489
|
-
</div>
|
|
490
|
-
</div>
|
|
491
|
-
</div>
|
|
492
|
-
|
|
493
|
-
{/* Usage Examples */}
|
|
494
|
-
<div className="!space-y-8">
|
|
495
|
-
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
496
|
-
Usage Examples
|
|
497
|
-
</h2>
|
|
498
|
-
|
|
499
|
-
<div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
|
|
500
|
-
{/* Feature Card */}
|
|
501
|
-
<div className="!space-y-4">
|
|
502
|
-
<h3 className="text-fm-icon-warning! text-lg font-semibold">
|
|
503
|
-
Feature Card
|
|
504
|
-
</h3>
|
|
505
|
-
<div className="!space-y-4">
|
|
506
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
|
|
507
|
-
<div className="flex items-start gap-4">
|
|
508
|
-
<div className="border-fm-icon-warning/30 bg-fm-icon-warning/20 flex h-12 w-12 items-center justify-center rounded-lg border">
|
|
509
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning h-6 w-6" />
|
|
510
|
-
</div>
|
|
511
|
-
<div className="flex-1">
|
|
512
|
-
<h4 className="text-fm-icon-active! mb-2 text-lg font-semibold">
|
|
513
|
-
Smart Innovation
|
|
514
|
-
</h4>
|
|
515
|
-
<p className="text-fm-secondary! text-sm">
|
|
516
|
-
Breakthrough ideas and creative solutions powered
|
|
517
|
-
by intelligent insights and data-driven
|
|
518
|
-
innovation.
|
|
519
|
-
</p>
|
|
520
|
-
</div>
|
|
521
|
-
</div>
|
|
522
|
-
</div>
|
|
523
|
-
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
524
|
-
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
525
|
-
{`<div className="border border-white/10 bg-white/5 p-6 rounded-lg">
|
|
526
|
-
<div className="flex items-start gap-4">
|
|
527
|
-
<div className="flex h-12 w-12 items-center justify-center rounded-lg border border-yellow-500/30 bg-yellow-500/20">
|
|
528
|
-
<LightBulbSimpleIcon className="h-6 w-6 text-yellow-400 " />
|
|
529
|
-
</div>
|
|
530
|
-
<div className="flex-1">
|
|
531
|
-
<h4 className="mb-2 text-lg font-semibold text-white">Smart Innovation</h4>
|
|
532
|
-
<p className="text-sm text-white/70">
|
|
533
|
-
Breakthrough ideas and creative solutions powered by intelligent insights.
|
|
534
|
-
</p>
|
|
535
|
-
</div>
|
|
536
|
-
</div>
|
|
537
|
-
</div>`}
|
|
538
|
-
</pre>
|
|
539
|
-
</div>
|
|
540
|
-
</div>
|
|
541
|
-
</div>
|
|
542
|
-
|
|
543
|
-
{/* Tips Section */}
|
|
544
|
-
<div className="!space-y-4">
|
|
545
|
-
<h3 className="text-fm-icon-warning! text-lg font-semibold">
|
|
546
|
-
Tips & Insights
|
|
547
|
-
</h3>
|
|
548
|
-
<div className="!space-y-4">
|
|
549
|
-
<div className="!space-y-3">
|
|
550
|
-
{[
|
|
551
|
-
{
|
|
552
|
-
text: "Use keyboard shortcuts to boost productivity",
|
|
553
|
-
type: "tip",
|
|
554
|
-
},
|
|
555
|
-
{
|
|
556
|
-
text: "Try the new AI-powered suggestions feature",
|
|
557
|
-
type: "insight",
|
|
558
|
-
},
|
|
559
|
-
{
|
|
560
|
-
text: "Explore advanced settings for power users",
|
|
561
|
-
type: "idea",
|
|
562
|
-
},
|
|
563
|
-
].map((item, index) => (
|
|
564
|
-
<div
|
|
565
|
-
key={index}
|
|
566
|
-
className="border-fm-divider-secondary bg-fm-surface-secondary flex items-center gap-3 rounded-lg border p-3"
|
|
567
|
-
>
|
|
568
|
-
<LightBulbSimpleIcon
|
|
569
|
-
className={`h-4 w-4 ${
|
|
570
|
-
item.type === "tip"
|
|
571
|
-
? "text-yellow-400"
|
|
572
|
-
: item.type === "insight"
|
|
573
|
-
? "text-orange-400"
|
|
574
|
-
: "text-amber-400"
|
|
575
|
-
}`}
|
|
576
|
-
/>
|
|
577
|
-
<div className="flex-1">
|
|
578
|
-
<span className="text-fm-icon-active text-sm">
|
|
579
|
-
{item.text}
|
|
580
|
-
</span>
|
|
581
|
-
</div>
|
|
582
|
-
<div
|
|
583
|
-
className={`rounded px-2 py-1 text-xs ${
|
|
584
|
-
item.type === "tip"
|
|
585
|
-
? "bg-yellow-500/20 text-yellow-300"
|
|
586
|
-
: item.type === "insight"
|
|
587
|
-
? "bg-orange-500/20 text-orange-300"
|
|
588
|
-
: "bg-amber-500/20 text-amber-300"
|
|
589
|
-
}`}
|
|
590
|
-
>
|
|
591
|
-
{item.type}
|
|
592
|
-
</div>
|
|
593
|
-
</div>
|
|
594
|
-
))}
|
|
595
|
-
</div>
|
|
596
|
-
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
597
|
-
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
598
|
-
{`// Tip item
|
|
599
|
-
<div className="flex items-center gap-3 border border-white/10 bg-white/5 p-3 rounded-lg">
|
|
600
|
-
<LightBulbSimpleIcon className="h-4 w-4 text-yellow-400 " />
|
|
601
|
-
<div className="flex-1">
|
|
602
|
-
<span className="text-sm text-white">Use keyboard shortcuts to boost productivity</span>
|
|
603
|
-
</div>
|
|
604
|
-
<div className="text-xs px-2 py-1 rounded bg-yellow-500/20 text-yellow-300">
|
|
605
|
-
tip
|
|
606
|
-
</div>
|
|
607
|
-
</div>`}
|
|
608
|
-
</pre>
|
|
609
|
-
</div>
|
|
610
|
-
</div>
|
|
611
|
-
</div>
|
|
612
|
-
|
|
613
|
-
{/* Hero Section */}
|
|
614
|
-
<div className="!space-y-4">
|
|
615
|
-
<h3 className="text-fm-icon-warning! text-lg font-semibold">
|
|
616
|
-
Hero Section
|
|
617
|
-
</h3>
|
|
618
|
-
<div className="!space-y-4">
|
|
619
|
-
<div className="border-fm-icon-warning/20 from-fm-icon-warning/10 to-fm-icon-warning/10 relative overflow-hidden rounded-lg border bg-linear-to-br p-8 text-center">
|
|
620
|
-
<div className="via-fm-icon-warning/5 absolute inset-0 bg-linear-to-r from-transparent to-transparent" />
|
|
621
|
-
<div className="relative">
|
|
622
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-4 h-16 w-16" />
|
|
623
|
-
<h2 className="text-fm-icon-active! mb-4 text-3xl font-bold">
|
|
624
|
-
Bright Ideas Await
|
|
625
|
-
</h2>
|
|
626
|
-
<p className="text-fm-secondary! mb-6 text-lg">
|
|
627
|
-
Discover innovative solutions and creative
|
|
628
|
-
inspiration
|
|
629
|
-
</p>
|
|
630
|
-
<button className="bg-fm-icon-warning/20 text-fm-icon-warning hover:bg-fm-icon-warning/30 rounded-lg px-6 py-3 transition-colors">
|
|
631
|
-
Get Started
|
|
632
|
-
</button>
|
|
633
|
-
</div>
|
|
634
|
-
</div>
|
|
635
|
-
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
636
|
-
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
637
|
-
{`// Hero section with light bulb
|
|
638
|
-
<div className="relative overflow-hidden rounded-lg border border-yellow-500/20 bg-gradient-to-br from-yellow-500/10 to-orange-500/10 p-8 text-center">
|
|
639
|
-
<div className="relative">
|
|
640
|
-
<LightBulbSimpleIcon className="mx-auto mb-4 h-16 w-16 text-yellow-400 " />
|
|
641
|
-
<h2 className="mb-4 text-3xl font-bold text-white">Bright Ideas Await</h2>
|
|
642
|
-
<p className="mb-6 text-lg text-white/70">
|
|
643
|
-
Discover innovative solutions and creative inspiration
|
|
644
|
-
</p>
|
|
645
|
-
<button className="rounded-lg bg-yellow-500/20 px-6 py-3 text-yellow-200 hover:bg-yellow-500/30">
|
|
646
|
-
Get Started
|
|
647
|
-
</button>
|
|
648
|
-
</div>
|
|
649
|
-
</div>`}
|
|
650
|
-
</pre>
|
|
651
|
-
</div>
|
|
652
|
-
</div>
|
|
653
|
-
</div>
|
|
654
|
-
|
|
655
|
-
{/* Navigation Menu */}
|
|
656
|
-
<div className="!space-y-4">
|
|
657
|
-
<h3 className="text-fm-icon-warning! text-lg font-semibold">
|
|
658
|
-
Navigation Menu
|
|
659
|
-
</h3>
|
|
660
|
-
<div className="!space-y-4">
|
|
661
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary max-w-xs rounded-lg border p-3">
|
|
662
|
-
{[
|
|
663
|
-
{ name: "Dashboard", icon: "📊", active: false },
|
|
664
|
-
{
|
|
665
|
-
name: "Ideas",
|
|
666
|
-
icon: "LightBulbSimpleIcon",
|
|
667
|
-
active: true,
|
|
668
|
-
},
|
|
669
|
-
{ name: "Projects", icon: "📁", active: false },
|
|
670
|
-
{ name: "Team", icon: "👥", active: false },
|
|
671
|
-
].map((item, index) => (
|
|
672
|
-
<div
|
|
673
|
-
key={index}
|
|
674
|
-
className={`flex cursor-pointer items-center gap-3 rounded p-2 transition-colors ${
|
|
675
|
-
item.active
|
|
676
|
-
? "bg-yellow-500/20 text-yellow-200"
|
|
677
|
-
: "text-white/70 hover:bg-white/10"
|
|
678
|
-
}`}
|
|
679
|
-
>
|
|
680
|
-
{item.icon === "LightBulbSimpleIcon" ? (
|
|
681
|
-
<LightBulbSimpleIcon
|
|
682
|
-
className={`h-4 w-4 ${
|
|
683
|
-
item.active
|
|
684
|
-
? "text-yellow-400"
|
|
685
|
-
: "text-white/50"
|
|
686
|
-
}`}
|
|
687
|
-
/>
|
|
688
|
-
) : (
|
|
689
|
-
<span className="text-sm">{item.icon}</span>
|
|
690
|
-
)}
|
|
691
|
-
<span className="flex-1 text-sm">{item.name}</span>
|
|
692
|
-
{item.active && (
|
|
693
|
-
<div className="bg-fm-icon-warning h-2 w-2 rounded-full"></div>
|
|
694
|
-
)}
|
|
695
|
-
</div>
|
|
696
|
-
))}
|
|
697
|
-
</div>
|
|
698
|
-
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
699
|
-
<pre className="text-fm-icon-positive! overflow-x-auto text-sm">
|
|
700
|
-
{`// Navigation item
|
|
701
|
-
<div className="flex items-center gap-3 p-2 rounded bg-yellow-500/20 text-yellow-200 cursor-pointer">
|
|
702
|
-
<LightBulbSimpleIcon className="h-4 w-4 text-yellow-400 " />
|
|
703
|
-
<span className="flex-1 text-sm">Ideas</span>
|
|
704
|
-
<div className="h-2 w-2 rounded-full bg-yellow-400"></div>
|
|
705
|
-
</div>`}
|
|
706
|
-
</pre>
|
|
707
|
-
</div>
|
|
708
|
-
</div>
|
|
709
|
-
</div>
|
|
710
|
-
</div>
|
|
711
|
-
</div>
|
|
712
|
-
|
|
713
|
-
{/* Interactive States */}
|
|
714
|
-
<div className="!space-y-8">
|
|
715
|
-
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
716
|
-
Interactive States & Animations
|
|
717
|
-
</h2>
|
|
718
|
-
<div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
|
|
719
|
-
<div className="!space-y-4">
|
|
720
|
-
<h3 className="text-fm-icon-warning! text-lg font-semibold">
|
|
721
|
-
Hover & Animation Effects
|
|
722
|
-
</h3>
|
|
723
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
|
|
724
|
-
<div className="flex items-center gap-4">
|
|
725
|
-
<LightBulbSimpleIcon className="text-fm-tertiary hover:text-fm-icon-warning h-6 w-6 transition-colors" />
|
|
726
|
-
<div>
|
|
727
|
-
<div className="text-fm-icon-active text-sm font-medium">
|
|
728
|
-
Color Change
|
|
729
|
-
</div>
|
|
730
|
-
<div className="text-fm-tertiary text-xs">
|
|
731
|
-
hover:text-fm-icon-warning
|
|
732
|
-
</div>
|
|
733
|
-
</div>
|
|
734
|
-
</div>
|
|
735
|
-
<div className="flex items-center gap-4">
|
|
736
|
-
<LightBulbSimpleIcon className="text-fm-icon-active h-6 w-6 transition-transform hover:scale-110" />
|
|
737
|
-
<div>
|
|
738
|
-
<div className="text-fm-icon-active text-sm font-medium">
|
|
739
|
-
Scale Effect
|
|
740
|
-
</div>
|
|
741
|
-
<div className="text-fm-tertiary text-xs">
|
|
742
|
-
hover:scale-110
|
|
743
|
-
</div>
|
|
744
|
-
</div>
|
|
745
|
-
</div>
|
|
746
|
-
<div className="flex items-center gap-4">
|
|
747
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning h-6 w-6 animate-pulse" />
|
|
748
|
-
<div>
|
|
749
|
-
<div className="text-fm-icon-active text-sm font-medium">
|
|
750
|
-
Thinking
|
|
751
|
-
</div>
|
|
752
|
-
<div className="text-fm-tertiary text-xs">
|
|
753
|
-
animate-pulse
|
|
754
|
-
</div>
|
|
755
|
-
</div>
|
|
756
|
-
</div>
|
|
757
|
-
<div className="flex items-center gap-4">
|
|
758
|
-
<LightBulbSimpleIcon className="animate-glow text-fm-icon-warning h-6 w-6" />
|
|
759
|
-
<div>
|
|
760
|
-
<div className="text-fm-icon-active text-sm font-medium">
|
|
761
|
-
Eureka Moment
|
|
762
|
-
</div>
|
|
763
|
-
<div className="text-fm-tertiary text-xs">
|
|
764
|
-
animate-glow
|
|
765
|
-
</div>
|
|
766
|
-
</div>
|
|
767
|
-
</div>
|
|
768
|
-
</div>
|
|
769
|
-
</div>
|
|
770
|
-
|
|
771
|
-
<div className="!space-y-4">
|
|
772
|
-
<h3 className="text-fm-icon-warning! text-lg font-semibold">
|
|
773
|
-
Animation Examples
|
|
774
|
-
</h3>
|
|
775
|
-
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
776
|
-
<pre className="text-fm-icon-info! overflow-x-auto text-sm">
|
|
777
|
-
{`// Hover effects
|
|
778
|
-
<LightBulbSimpleIcon className="h-6 w-6 text-white/60 hover:text-yellow-400 transition-colors " />
|
|
779
|
-
|
|
780
|
-
// Scale on hover
|
|
781
|
-
<LightBulbSimpleIcon className="h-6 w-6 text-white hover:scale-110 transition-transform " />
|
|
782
|
-
|
|
783
|
-
// Thinking animation
|
|
784
|
-
<LightBulbSimpleIcon className="h-6 w-6 text-yellow-400 animate-pulse " />
|
|
785
|
-
|
|
786
|
-
// Glow effect for "aha!" moments
|
|
787
|
-
<LightBulbSimpleIcon className="h-6 w-6 text-yellow-400 animate-glow " />
|
|
788
|
-
|
|
789
|
-
// Custom glow animation
|
|
790
|
-
@keyframes glow {
|
|
791
|
-
0%, 100% { filter: drop-shadow(0 0 5px rgba(253, 224, 71, 0.5)); }
|
|
792
|
-
50% { filter: drop-shadow(0 0 20px rgba(253, 224, 71, 0.8)); }
|
|
793
|
-
}
|
|
794
|
-
|
|
795
|
-
.animate-glow {
|
|
796
|
-
animation: glow 2s ease-in-out infinite;
|
|
797
|
-
}`}
|
|
798
|
-
</pre>
|
|
799
|
-
</div>
|
|
800
|
-
</div>
|
|
801
|
-
</div>
|
|
802
|
-
</div>
|
|
803
|
-
|
|
804
|
-
{/* Accessibility */}
|
|
805
|
-
<div className="!space-y-8">
|
|
806
|
-
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
807
|
-
Accessibility Features
|
|
808
|
-
</h2>
|
|
809
|
-
<div className="grid grid-cols-1 gap-8 md:grid-cols-2">
|
|
810
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
|
|
811
|
-
<h3 className="text-fm-icon-positive! text-lg font-semibold">
|
|
812
|
-
✅ Built-in Features
|
|
813
|
-
</h3>
|
|
814
|
-
<ul className="text-fm-secondary! !space-y-2 text-sm">
|
|
815
|
-
<li className="text-fm-secondary!">
|
|
816
|
-
Uses Radix UI AccessibleIcon wrapper
|
|
817
|
-
</li>
|
|
818
|
-
<li className="text-fm-secondary!">
|
|
819
|
-
Provides screen reader label "Light bulb icon"
|
|
820
|
-
</li>
|
|
821
|
-
<li className="text-fm-secondary!">
|
|
822
|
-
Supports keyboard navigation when interactive
|
|
823
|
-
</li>
|
|
824
|
-
<li className="text-fm-secondary!">
|
|
825
|
-
Maintains proper color contrast ratios
|
|
826
|
-
</li>
|
|
827
|
-
<li className="text-fm-secondary!">
|
|
828
|
-
Scales with user's font size preferences
|
|
829
|
-
</li>
|
|
830
|
-
</ul>
|
|
831
|
-
</div>
|
|
832
|
-
|
|
833
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
|
|
834
|
-
<h3 className="text-fm-icon-warning! text-lg font-semibold">
|
|
835
|
-
💡 Best Practices
|
|
836
|
-
</h3>
|
|
837
|
-
<ul className="text-fm-secondary !space-y-2 text-sm">
|
|
838
|
-
<li className="text-fm-secondary!">
|
|
839
|
-
Always pair with descriptive context
|
|
840
|
-
</li>
|
|
841
|
-
<li className="text-fm-secondary!">
|
|
842
|
-
Use consistent colors for idea/innovation themes
|
|
843
|
-
</li>
|
|
844
|
-
<li className="text-fm-secondary!">
|
|
845
|
-
Consider motion sensitivity for glow animations
|
|
846
|
-
</li>
|
|
847
|
-
<li className="text-fm-secondary!">
|
|
848
|
-
Add focus states for interactive elements
|
|
849
|
-
</li>
|
|
850
|
-
<li className="text-fm-secondary!">
|
|
851
|
-
Provide alternative text for complex contexts
|
|
852
|
-
</li>
|
|
853
|
-
</ul>
|
|
854
|
-
</div>
|
|
855
|
-
</div>
|
|
856
|
-
|
|
857
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
|
|
858
|
-
<h3 className="text-fm-secondary-600! mb-4 text-lg font-semibold">
|
|
859
|
-
Innovation & Ideas Accessibility
|
|
860
|
-
</h3>
|
|
861
|
-
<div className="grid grid-cols-1 gap-6 lg:grid-cols-2">
|
|
862
|
-
<div className="bg-fm-surface-secondary rounded-lg p-4">
|
|
863
|
-
<pre className="text-fm-icon-info! overflow-x-auto text-sm">
|
|
864
|
-
{`// Ideas button with proper ARIA
|
|
865
|
-
<button
|
|
866
|
-
aria-label="View creative ideas and innovation suggestions"
|
|
867
|
-
className="flex items-center gap-2 p-3 rounded-lg focus:ring-2 focus:ring-yellow-500"
|
|
868
|
-
onClick={handleIdeasView}
|
|
869
|
-
>
|
|
870
|
-
<LightBulbSimpleIcon className="h-5 w-5 text-yellow-400 " />
|
|
871
|
-
<span>Ideas</span>
|
|
872
|
-
</button>
|
|
873
|
-
|
|
874
|
-
// Feature card with semantic structure
|
|
875
|
-
<div
|
|
876
|
-
role="article"
|
|
877
|
-
aria-labelledby="innovation-title"
|
|
878
|
-
className="border border-white/10 bg-white/5 p-6 rounded-lg"
|
|
879
|
-
>
|
|
880
|
-
<div className="flex items-start gap-4">
|
|
881
|
-
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-yellow-500/20" aria-hidden="true">
|
|
882
|
-
<LightBulbSimpleIcon className="h-6 w-6 text-yellow-400 " />
|
|
883
|
-
</div>
|
|
884
|
-
<div>
|
|
885
|
-
<h4 id="innovation-title" className="text-lg font-semibold text-white">
|
|
886
|
-
Smart Innovation
|
|
887
|
-
</h4>
|
|
888
|
-
<p className="text-sm text-white/70">
|
|
889
|
-
Breakthrough ideas and creative solutions powered by intelligent insights.
|
|
890
|
-
</p>
|
|
891
|
-
</div>
|
|
892
|
-
</div>
|
|
893
|
-
</div>`}
|
|
894
|
-
</pre>
|
|
895
|
-
</div>
|
|
896
|
-
<div className="!space-y-4">
|
|
897
|
-
<p className="text-fm-secondary! text-sm">
|
|
898
|
-
When using LightBulbSimpleIcon for ideas and innovation
|
|
899
|
-
features, provide clear context about what creative
|
|
900
|
-
functionality or insights users can expect.
|
|
901
|
-
</p>
|
|
902
|
-
<div className="border-fm-icon-warning/20 bg-fm-icon-warning/10 rounded-lg border p-4">
|
|
903
|
-
<div className="text-fm-icon-warning flex items-center gap-2 text-sm">
|
|
904
|
-
<LightBulbSimpleIcon className="h-4 w-4" />
|
|
905
|
-
<span>
|
|
906
|
-
Screen readers understand this represents creative
|
|
907
|
-
thinking
|
|
908
|
-
</span>
|
|
909
|
-
</div>
|
|
910
|
-
</div>
|
|
911
|
-
</div>
|
|
912
|
-
</div>
|
|
913
|
-
</div>
|
|
914
|
-
</div>
|
|
915
|
-
|
|
916
|
-
{/* Related Icons */}
|
|
917
|
-
<div className="!space-y-8">
|
|
918
|
-
<h2 className="text-fm-icon-active! text-center text-3xl font-bold">
|
|
919
|
-
Related Icons
|
|
920
|
-
</h2>
|
|
921
|
-
<div className="grid grid-cols-2 gap-6 md:grid-cols-4">
|
|
922
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
|
|
923
|
-
<div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
|
|
924
|
-
<span className="text-2xl">🧠</span>
|
|
925
|
-
</div>
|
|
926
|
-
<div>
|
|
927
|
-
<div className="text-fm-icon-active font-medium">
|
|
928
|
-
BrainIcon
|
|
929
|
-
</div>
|
|
930
|
-
<div className="text-fm-tertiary text-xs">
|
|
931
|
-
Intelligence & thinking
|
|
932
|
-
</div>
|
|
933
|
-
</div>
|
|
934
|
-
</div>
|
|
935
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
|
|
936
|
-
<div className="bg-fm-secondary-500/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
|
|
937
|
-
<span className="text-2xl">⚡</span>
|
|
938
|
-
</div>
|
|
939
|
-
<div>
|
|
940
|
-
<div className="text-fm-icon-active font-medium">
|
|
941
|
-
SparkIcon
|
|
942
|
-
</div>
|
|
943
|
-
<div className="text-fm-tertiary text-xs">
|
|
944
|
-
Inspiration & energy
|
|
945
|
-
</div>
|
|
946
|
-
</div>
|
|
947
|
-
</div>
|
|
948
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
|
|
949
|
-
<div className="bg-fm-icon-positive/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
|
|
950
|
-
<span className="text-2xl">🎯</span>
|
|
951
|
-
</div>
|
|
952
|
-
<div>
|
|
953
|
-
<div className="text-fm-icon-active font-medium">
|
|
954
|
-
TargetIcon
|
|
955
|
-
</div>
|
|
956
|
-
<div className="text-fm-tertiary text-xs">
|
|
957
|
-
Goals & objectives
|
|
958
|
-
</div>
|
|
959
|
-
</div>
|
|
960
|
-
</div>
|
|
961
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
|
|
962
|
-
<div className="bg-fm-icon-warning/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
|
|
963
|
-
<span className="text-2xl">🚀</span>
|
|
964
|
-
</div>
|
|
965
|
-
<div>
|
|
966
|
-
<div className="text-fm-icon-active font-medium">
|
|
967
|
-
RocketIcon
|
|
968
|
-
</div>
|
|
969
|
-
<div className="text-fm-tertiary text-xs">
|
|
970
|
-
Launch & growth
|
|
971
|
-
</div>
|
|
972
|
-
</div>
|
|
973
|
-
</div>
|
|
974
|
-
</div>
|
|
975
|
-
</div>
|
|
976
|
-
</div>
|
|
977
|
-
|
|
978
|
-
{/* Footer */}
|
|
979
|
-
<div className="border-fm-divider-secondary bg-fm-surface-secondary border-t backdrop-blur-xl">
|
|
980
|
-
<div className="!mx-auto max-w-7xl px-6 py-8">
|
|
981
|
-
<div className="!space-y-4 text-center">
|
|
982
|
-
<p className="text-fm-tertiary!">
|
|
983
|
-
LightBulbSimpleIcon is part of the Aural UI icon library,
|
|
984
|
-
built for representing creativity, innovation, and bright
|
|
985
|
-
ideas.
|
|
986
|
-
</p>
|
|
987
|
-
<p className="text-fm-placeholder! text-sm">
|
|
988
|
-
All icons use Radix UI's AccessibleIcon for screen reader
|
|
989
|
-
compatibility and follow WCAG guidelines for creative
|
|
990
|
-
applications.
|
|
991
|
-
</p>
|
|
992
|
-
</div>
|
|
52
|
+
}`,
|
|
53
|
+
livePreview: (
|
|
54
|
+
<div className="flex items-center gap-2">
|
|
55
|
+
<LightBulbSimpleIcon className="text-fm-icon-warning h-6 w-6" />
|
|
993
56
|
</div>
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
57
|
+
),
|
|
58
|
+
}}
|
|
59
|
+
relatedIcons={[
|
|
60
|
+
{
|
|
61
|
+
name: "SuggestionIcon",
|
|
62
|
+
description: "Suggestion / idea icon",
|
|
63
|
+
icon: SuggestionIcon,
|
|
64
|
+
accentToken: "info",
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
name: "FeatureShineIcon",
|
|
68
|
+
description: "Feature highlight / shine icon",
|
|
69
|
+
icon: FeatureShineIcon,
|
|
70
|
+
accentToken: "positive",
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
name: "BubbleSparkleIcon",
|
|
74
|
+
description: "AI sparkle bubble icon",
|
|
75
|
+
icon: BubbleSparkleIcon,
|
|
76
|
+
accentToken: "warning",
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
name: "SparklesSoftIcon",
|
|
80
|
+
description: "Soft sparkle / AI glow icon",
|
|
81
|
+
icon: SparklesSoftIcon,
|
|
82
|
+
accentToken: "negative",
|
|
83
|
+
},
|
|
84
|
+
]}
|
|
85
|
+
/>
|
|
997
86
|
),
|
|
998
87
|
},
|
|
999
88
|
},
|
|
1000
89
|
tags: ["autodocs"],
|
|
1001
90
|
argTypes: {
|
|
1002
|
-
|
|
1003
|
-
control:
|
|
1004
|
-
description: "
|
|
91
|
+
className: {
|
|
92
|
+
control: "text",
|
|
93
|
+
description: "CSS classes including color token",
|
|
1005
94
|
},
|
|
1006
95
|
withAccessibility: {
|
|
1007
96
|
control: "boolean",
|
|
1008
|
-
description: "
|
|
1009
|
-
},
|
|
1010
|
-
height: {
|
|
1011
|
-
control: { type: "range", min: 8, max: 96, step: 2 },
|
|
1012
|
-
description: "Height of the icon in pixels",
|
|
1013
|
-
},
|
|
1014
|
-
stroke: {
|
|
1015
|
-
control: "color",
|
|
1016
|
-
description: "Stroke color of the bulb outline",
|
|
1017
|
-
},
|
|
1018
|
-
strokeWidth: {
|
|
1019
|
-
control: { type: "range", min: 0.5, max: 4, step: 0.5 },
|
|
1020
|
-
description: "Stroke width of the outline",
|
|
1021
|
-
},
|
|
1022
|
-
fill: {
|
|
1023
|
-
control: "color",
|
|
1024
|
-
description: "Fill color of the icon",
|
|
1025
|
-
},
|
|
1026
|
-
className: {
|
|
1027
|
-
control: "text",
|
|
1028
|
-
description: "CSS classes for styling (use for overrides)",
|
|
97
|
+
description: "Wrap with accessibility label",
|
|
1029
98
|
},
|
|
1030
99
|
},
|
|
1031
100
|
}
|
|
@@ -1033,288 +102,72 @@ function FeatureCard() {
|
|
|
1033
102
|
export default meta
|
|
1034
103
|
type Story = StoryObj<typeof LightBulbSimpleIcon>
|
|
1035
104
|
|
|
1036
|
-
// Story parameters for consistent dark theme
|
|
1037
|
-
const storyParameters = {
|
|
1038
|
-
backgrounds: {
|
|
1039
|
-
default: "dark",
|
|
1040
|
-
values: [
|
|
1041
|
-
{ name: "dark", value: "var(--color-fm-surface-primary)" },
|
|
1042
|
-
{ name: "darker", value: "var(--color-fm-neutral-0)" },
|
|
1043
|
-
],
|
|
1044
|
-
},
|
|
1045
|
-
}
|
|
1046
|
-
|
|
1047
105
|
export const Default: Story = {
|
|
1048
106
|
args: {
|
|
1049
|
-
className: "h-6 w-6 text-fm-icon-warning
|
|
107
|
+
className: "h-6 w-6 text-fm-icon-warning",
|
|
1050
108
|
withAccessibility: true,
|
|
1051
109
|
},
|
|
1052
|
-
parameters: storyParameters,
|
|
1053
110
|
render: (args) => (
|
|
1054
|
-
<
|
|
111
|
+
<IconDefaultCanvas>
|
|
1055
112
|
<LightBulbSimpleIcon {...args} />
|
|
1056
|
-
</
|
|
113
|
+
</IconDefaultCanvas>
|
|
1057
114
|
),
|
|
1058
115
|
}
|
|
1059
116
|
|
|
1060
117
|
export const SizeVariations: Story = {
|
|
1061
|
-
|
|
1062
|
-
...storyParameters,
|
|
1063
|
-
docs: {
|
|
1064
|
-
description: {
|
|
1065
|
-
story:
|
|
1066
|
-
"LightBulbSimpleIcon in different sizes, from small UI elements to large hero displays.",
|
|
1067
|
-
},
|
|
1068
|
-
},
|
|
1069
|
-
},
|
|
1070
|
-
render: () => (
|
|
1071
|
-
<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">
|
|
1072
|
-
<div className="text-center">
|
|
1073
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-2 h-3 w-3" />
|
|
1074
|
-
<span className="text-fm-tertiary text-xs">12px</span>
|
|
1075
|
-
</div>
|
|
1076
|
-
<div className="text-center">
|
|
1077
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-2 h-4 w-4" />
|
|
1078
|
-
<span className="text-fm-tertiary text-xs">16px</span>
|
|
1079
|
-
</div>
|
|
1080
|
-
<div className="text-center">
|
|
1081
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-2 h-5 w-5" />
|
|
1082
|
-
<span className="text-fm-tertiary text-xs">20px</span>
|
|
1083
|
-
</div>
|
|
1084
|
-
<div className="text-center">
|
|
1085
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-2 h-6 w-6" />
|
|
1086
|
-
<span className="text-fm-tertiary text-xs">24px</span>
|
|
1087
|
-
</div>
|
|
1088
|
-
<div className="text-center">
|
|
1089
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-2 h-8 w-8" />
|
|
1090
|
-
<span className="text-fm-tertiary text-xs">32px</span>
|
|
1091
|
-
</div>
|
|
1092
|
-
<div className="text-center">
|
|
1093
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-2 h-12 w-12" />
|
|
1094
|
-
<span className="text-fm-tertiary text-xs">48px</span>
|
|
1095
|
-
</div>
|
|
1096
|
-
</div>
|
|
1097
|
-
),
|
|
118
|
+
render: () => <IconSizeVariations icon={LightBulbSimpleIcon} />,
|
|
1098
119
|
}
|
|
1099
120
|
|
|
1100
121
|
export const ColorVariations: Story = {
|
|
1101
|
-
|
|
1102
|
-
...storyParameters,
|
|
1103
|
-
docs: {
|
|
1104
|
-
description: {
|
|
1105
|
-
story:
|
|
1106
|
-
"LightBulbSimpleIcon in different colors for various innovation and creativity contexts.",
|
|
1107
|
-
},
|
|
1108
|
-
},
|
|
1109
|
-
},
|
|
1110
|
-
render: () => (
|
|
1111
|
-
<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">
|
|
1112
|
-
<div className="text-center">
|
|
1113
|
-
<div className="border-fm-icon-warning/30 bg-fm-icon-warning/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
|
|
1114
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning h-8 w-8" />
|
|
1115
|
-
</div>
|
|
1116
|
-
<div className="text-fm-icon-active text-sm font-medium">
|
|
1117
|
-
Innovation
|
|
1118
|
-
</div>
|
|
1119
|
-
<div className="text-fm-icon-warning text-xs">text-fm-icon-warning</div>
|
|
1120
|
-
</div>
|
|
1121
|
-
<div className="text-center">
|
|
1122
|
-
<div className="border-fm-icon-warning/30 bg-fm-icon-warning/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
|
|
1123
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning h-8 w-8" />
|
|
1124
|
-
</div>
|
|
1125
|
-
<div className="text-fm-icon-active text-sm font-medium">
|
|
1126
|
-
Creativity
|
|
1127
|
-
</div>
|
|
1128
|
-
<div className="text-fm-icon-warning text-xs">text-fm-icon-warning</div>
|
|
1129
|
-
</div>
|
|
1130
|
-
<div className="text-center">
|
|
1131
|
-
<div className="border-fm-icon-warning/30 bg-fm-icon-warning/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
|
|
1132
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning h-8 w-8" />
|
|
1133
|
-
</div>
|
|
1134
|
-
<div className="text-fm-icon-active text-sm font-medium">
|
|
1135
|
-
Inspiration
|
|
1136
|
-
</div>
|
|
1137
|
-
<div className="text-fm-icon-warning text-xs">text-fm-icon-warning</div>
|
|
1138
|
-
</div>
|
|
1139
|
-
<div className="text-center">
|
|
1140
|
-
<div className="border-fm-icon-info/30 bg-fm-icon-info/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
|
|
1141
|
-
<LightBulbSimpleIcon className="text-fm-icon-info h-8 w-8" />
|
|
1142
|
-
</div>
|
|
1143
|
-
<div className="text-fm-icon-active text-sm font-medium">Knowledge</div>
|
|
1144
|
-
<div className="text-fm-icon-info text-xs">text-fm-icon-info</div>
|
|
1145
|
-
</div>
|
|
1146
|
-
</div>
|
|
1147
|
-
),
|
|
122
|
+
render: () => <IconColorVariations icon={LightBulbSimpleIcon} />,
|
|
1148
123
|
}
|
|
1149
124
|
|
|
1150
125
|
export const UsageExamples: Story = {
|
|
1151
|
-
parameters: {
|
|
1152
|
-
...storyParameters,
|
|
1153
|
-
docs: {
|
|
1154
|
-
description: {
|
|
1155
|
-
story:
|
|
1156
|
-
"Real-world usage examples showing LightBulbSimpleIcon in different innovation and creativity contexts.",
|
|
1157
|
-
},
|
|
1158
|
-
},
|
|
1159
|
-
},
|
|
1160
126
|
render: () => (
|
|
1161
|
-
<
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
<div className="flex items-start gap-4">
|
|
1169
|
-
<div className="border-fm-icon-warning/30 bg-fm-icon-warning/20 flex h-12 w-12 items-center justify-center rounded-lg border">
|
|
1170
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning h-6 w-6" />
|
|
1171
|
-
</div>
|
|
1172
|
-
<div className="flex-1">
|
|
1173
|
-
<h4 className="text-fm-icon-active! mb-2 text-lg font-semibold">
|
|
1174
|
-
Smart Innovation
|
|
1175
|
-
</h4>
|
|
1176
|
-
<p className="text-fm-secondary! text-sm">
|
|
1177
|
-
Breakthrough ideas and creative solutions powered by intelligent
|
|
1178
|
-
insights.
|
|
1179
|
-
</p>
|
|
1180
|
-
</div>
|
|
1181
|
-
</div>
|
|
1182
|
-
</div>
|
|
1183
|
-
</div>
|
|
1184
|
-
|
|
1185
|
-
{/* Tips Section */}
|
|
1186
|
-
<div className="!space-y-2">
|
|
1187
|
-
<h3 className="text-fm-icon-active text-sm font-medium">
|
|
1188
|
-
Tips & Insights
|
|
1189
|
-
</h3>
|
|
1190
|
-
<div className="!space-y-3">
|
|
1191
|
-
{[
|
|
1192
|
-
{
|
|
1193
|
-
text: "Use keyboard shortcuts to boost productivity",
|
|
1194
|
-
type: "tip",
|
|
1195
|
-
},
|
|
1196
|
-
{
|
|
1197
|
-
text: "Try the new AI-powered suggestions feature",
|
|
1198
|
-
type: "insight",
|
|
1199
|
-
},
|
|
1200
|
-
{ text: "Explore advanced settings for power users", type: "idea" },
|
|
1201
|
-
].map((item, index) => (
|
|
1202
|
-
<div
|
|
1203
|
-
key={index}
|
|
1204
|
-
className="border-fm-divider-secondary bg-fm-surface-secondary flex items-center gap-3 rounded-lg border p-3"
|
|
1205
|
-
>
|
|
1206
|
-
<LightBulbSimpleIcon
|
|
1207
|
-
className={`h-4 w-4 ${
|
|
1208
|
-
item.type === "tip"
|
|
1209
|
-
? "text-yellow-400"
|
|
1210
|
-
: item.type === "insight"
|
|
1211
|
-
? "text-orange-400"
|
|
1212
|
-
: "text-amber-400"
|
|
1213
|
-
}`}
|
|
1214
|
-
/>
|
|
1215
|
-
<div className="flex-1">
|
|
1216
|
-
<span className="text-fm-icon-active text-sm">{item.text}</span>
|
|
1217
|
-
</div>
|
|
1218
|
-
<div
|
|
1219
|
-
className={`rounded px-2 py-1 text-xs ${
|
|
1220
|
-
item.type === "tip"
|
|
1221
|
-
? "bg-yellow-500/20 text-yellow-300"
|
|
1222
|
-
: item.type === "insight"
|
|
1223
|
-
? "bg-orange-500/20 text-orange-300"
|
|
1224
|
-
: "bg-amber-500/20 text-amber-300"
|
|
1225
|
-
}`}
|
|
1226
|
-
>
|
|
1227
|
-
{item.type}
|
|
1228
|
-
</div>
|
|
1229
|
-
</div>
|
|
1230
|
-
))}
|
|
1231
|
-
</div>
|
|
1232
|
-
</div>
|
|
1233
|
-
|
|
1234
|
-
{/* Hero Section Preview */}
|
|
1235
|
-
<div className="!space-y-2">
|
|
1236
|
-
<h3 className="text-fm-icon-active text-sm font-medium">
|
|
1237
|
-
Hero Section
|
|
1238
|
-
</h3>
|
|
1239
|
-
<div className="border-fm-icon-warning/20 from-fm-icon-warning/10 to-fm-icon-warning/10 relative overflow-hidden rounded-lg border bg-linear-to-br p-8 text-center">
|
|
1240
|
-
<div className="relative">
|
|
1241
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning !mx-auto mb-4 h-16 w-16" />
|
|
1242
|
-
<h2 className="text-fm-icon-active mb-4 text-3xl font-bold">
|
|
1243
|
-
Bright Ideas Await
|
|
1244
|
-
</h2>
|
|
1245
|
-
<p className="text-fm-secondary mb-6 text-lg">
|
|
1246
|
-
Discover innovative solutions and creative inspiration
|
|
1247
|
-
</p>
|
|
1248
|
-
<button className="bg-fm-icon-warning/20 text-fm-icon-warning hover:bg-fm-icon-warning/30 rounded-lg px-6 py-3 transition-colors">
|
|
1249
|
-
Get Started
|
|
1250
|
-
</button>
|
|
1251
|
-
</div>
|
|
127
|
+
<IconUsageCanvas>
|
|
128
|
+
<IconUsageSection title="Tip Banner">
|
|
129
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary flex w-full max-w-sm items-start gap-3 rounded-xl border px-4 py-3">
|
|
130
|
+
<LightBulbSimpleIcon className="text-fm-icon-warning mt-0.5 h-4 w-4 shrink-0" />
|
|
131
|
+
<span className="text-fm-secondary font-fm-text text-sm">
|
|
132
|
+
Pro tip: save your work often to avoid losing progress.
|
|
133
|
+
</span>
|
|
1252
134
|
</div>
|
|
1253
|
-
</
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
description: {
|
|
1263
|
-
story:
|
|
1264
|
-
"Interactive states showing hover effects, animations, and creative visual effects for the light bulb icon.",
|
|
1265
|
-
},
|
|
1266
|
-
},
|
|
1267
|
-
},
|
|
1268
|
-
render: () => (
|
|
1269
|
-
<div className="from-fm-surface-primary to-fm-surface-secondary min-h-dvh !space-y-8 rounded-lg bg-linear-to-br p-8">
|
|
1270
|
-
<div className="!space-y-4">
|
|
1271
|
-
<h3 className="text-fm-secondary text-sm font-medium">
|
|
1272
|
-
Hover & Animation Effects
|
|
1273
|
-
</h3>
|
|
1274
|
-
<div className="flex gap-8">
|
|
1275
|
-
<div className="flex flex-col items-center gap-2">
|
|
1276
|
-
<LightBulbSimpleIcon className="text-fm-tertiary hover:text-fm-icon-warning h-8 w-8 transition-colors" />
|
|
1277
|
-
<span className="text-fm-tertiary text-xs">Color Change</span>
|
|
1278
|
-
</div>
|
|
1279
|
-
<div className="flex flex-col items-center gap-2">
|
|
1280
|
-
<LightBulbSimpleIcon className="text-fm-icon-active h-8 w-8 transition-transform hover:scale-110" />
|
|
1281
|
-
<span className="text-fm-tertiary text-xs">Scale Up</span>
|
|
1282
|
-
</div>
|
|
1283
|
-
<div className="flex flex-col items-center gap-2">
|
|
1284
|
-
<LightBulbSimpleIcon className="text-fm-icon-warning h-8 w-8 animate-pulse" />
|
|
1285
|
-
<span className="text-fm-tertiary text-xs">Thinking</span>
|
|
1286
|
-
</div>
|
|
1287
|
-
<div className="flex flex-col items-center gap-2">
|
|
1288
|
-
<LightBulbSimpleIcon className="animate-glow text-fm-icon-warning h-8 w-8" />
|
|
1289
|
-
<span className="text-fm-tertiary text-xs">Eureka!</span>
|
|
135
|
+
</IconUsageSection>
|
|
136
|
+
|
|
137
|
+
<IconUsageSection title="Insight Card">
|
|
138
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary w-full max-w-sm rounded-xl border p-4">
|
|
139
|
+
<div className="mb-2 flex items-center gap-2">
|
|
140
|
+
<LightBulbSimpleIcon className="text-fm-icon-warning h-5 w-5" />
|
|
141
|
+
<span className="text-fm-primary font-fm-text text-sm font-medium">
|
|
142
|
+
Did you know?
|
|
143
|
+
</span>
|
|
1290
144
|
</div>
|
|
145
|
+
<p className="text-fm-secondary font-fm-text text-xs">
|
|
146
|
+
Adding cover art improves episode discovery by up to 40%.
|
|
147
|
+
</p>
|
|
1291
148
|
</div>
|
|
1292
|
-
</
|
|
1293
|
-
|
|
149
|
+
</IconUsageSection>
|
|
150
|
+
|
|
151
|
+
<IconUsageSection title="Help Tooltip Trigger">
|
|
152
|
+
<button className="border-fm-divider-secondary bg-fm-surface-secondary flex items-center gap-2 rounded-xl border px-3 py-2">
|
|
153
|
+
<LightBulbSimpleIcon className="text-fm-icon-warning h-4 w-4" />
|
|
154
|
+
<span className="text-fm-primary font-fm-text text-sm">
|
|
155
|
+
Show tips
|
|
156
|
+
</span>
|
|
157
|
+
</button>
|
|
158
|
+
</IconUsageSection>
|
|
159
|
+
</IconUsageCanvas>
|
|
1294
160
|
),
|
|
1295
161
|
}
|
|
1296
162
|
|
|
1297
163
|
export const Playground: Story = {
|
|
1298
|
-
parameters: {
|
|
1299
|
-
...storyParameters,
|
|
1300
|
-
docs: {
|
|
1301
|
-
description: {
|
|
1302
|
-
story:
|
|
1303
|
-
"Interactive playground to experiment with different LightBulbSimpleIcon configurations.",
|
|
1304
|
-
},
|
|
1305
|
-
},
|
|
1306
|
-
},
|
|
1307
164
|
args: {
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
className: "text-fm-icon-warning ",
|
|
1311
|
-
strokeWidth: 1.5,
|
|
165
|
+
className: "h-8 w-8 text-fm-icon-warning",
|
|
166
|
+
withAccessibility: true,
|
|
1312
167
|
},
|
|
1313
168
|
render: (args) => (
|
|
1314
|
-
<
|
|
1315
|
-
<
|
|
1316
|
-
|
|
1317
|
-
</div>
|
|
1318
|
-
</div>
|
|
169
|
+
<IconPlaygroundCanvas>
|
|
170
|
+
<LightBulbSimpleIcon {...args} />
|
|
171
|
+
</IconPlaygroundCanvas>
|
|
1319
172
|
),
|
|
1320
173
|
}
|