aural-ui 3.0.6 → 4.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/aspect-ratio/AspectRatio.stories.tsx +271 -242
- package/dist/components/avatar/Avatar.stories.tsx +84 -70
- package/dist/components/button/Button.stories.tsx +7 -7
- package/dist/components/button/index.tsx +7 -7
- package/dist/components/card/Card.stories.tsx +3 -3
- package/dist/components/char-count/CharCount.stories.tsx +9 -9
- package/dist/components/circular-loader/CircularLoader.stories.tsx +109 -93
- package/dist/components/clamp-lines/ClampLines.stories.tsx +25 -0
- package/dist/components/clamp-lines/index.tsx +6 -1
- package/dist/components/collapsible/Collapsible.stories.tsx +1 -1
- package/dist/components/command/Command.stories.tsx +52 -38
- package/dist/components/dialog/Dialog.stories.tsx +89 -84
- package/dist/components/divider/Divider.stories.tsx +86 -60
- package/dist/components/dot-loader/DotLoader.stories.tsx +12 -12
- package/dist/components/drawer/Drawer.stories.tsx +74 -44
- package/dist/components/drawer/index.tsx +3 -3
- package/dist/components/dropdown/Dropdown.stories.tsx +42 -32
- package/dist/components/helper-text/HelperText.stories.tsx +2 -2
- package/dist/components/hover-card/HoverCard.stories.tsx +211 -178
- package/dist/components/input/Input.stories.tsx +2 -2
- package/dist/components/input/index.tsx +2 -0
- package/dist/components/label/Label.stories.tsx +10 -10
- package/dist/components/list/List.stories.tsx +58 -44
- package/dist/components/marquee/Marquee.stories.tsx +131 -113
- package/dist/components/otp-inputs/OtpInputs.stories.tsx +47 -35
- package/dist/components/overlay/Overlay.stories.tsx +98 -92
- package/dist/components/overlay/index.tsx +4 -4
- package/dist/components/popover/Popover.stories.tsx +132 -106
- package/dist/components/radio/Radio.stories.tsx +2 -2
- package/dist/components/resizable/Resizable.stories.tsx +186 -138
- package/dist/components/scroll-area/ScrollArea.stories.tsx +174 -120
- package/dist/components/search/Search.stories.tsx +81 -59
- package/dist/components/select/Select.stories.tsx +3 -1
- package/dist/components/sheet/Sheet.stories.tsx +68 -54
- package/dist/components/slider/Slider.stories.tsx +71 -47
- package/dist/components/stepper/Stepper.stories.tsx +16 -16
- package/dist/components/switch/Switch.stories.tsx +12 -12
- package/dist/components/table/Table.stories.tsx +8 -6
- package/dist/components/tabs/Tabs.stories.tsx +324 -268
- package/dist/components/textarea/TextArea.stories.tsx +1 -1
- package/dist/components/thumbnail-tags/ThumbnailTags.stories.tsx +16 -10
- package/dist/components/toast/Toast.stories.tsx +51 -45
- package/dist/components/toggle/Toggle.stories.tsx +111 -89
- package/dist/components/tooltip/Tooltip.stories.tsx +160 -144
- package/dist/icons/Icons.stories.tsx +2 -2
- package/dist/icons/ai-avatar-icon/AiAvatarIcon.stories.tsx +287 -237
- package/dist/icons/alert-icon/AlertIcon.stories.tsx +290 -248
- package/dist/icons/all-icons.tsx +97 -81
- package/dist/icons/angle-down-icon/AngleDownIcon.stories.tsx +312 -270
- package/dist/icons/apple-logo-icon/AppleLogoIcon.stories.tsx +294 -244
- package/dist/icons/arrow-box-left-icon/ArrowBoxLeftIcon.stories.tsx +309 -279
- package/dist/icons/arrow-corner-up-left-icon/ArrowCornerUpLeftIcon.stories.tsx +294 -258
- package/dist/icons/arrow-corner-up-right-icon/ArrowCornerUpRightIcon.stories.tsx +289 -255
- package/dist/icons/arrow-left-icon/ArrowLeftIcon.stories.tsx +288 -256
- package/dist/icons/arrow-right-icon/ArrowRightIcon.stories.tsx +322 -288
- package/dist/icons/arrow-right-up-icon/ArrowRightUpIcon.stories.tsx +340 -296
- package/dist/icons/art-board-icon/ArtBoardIcon.stories.tsx +197 -177
- package/dist/icons/audio-bar-icon/AudioBarIcon.stories.tsx +390 -328
- package/dist/icons/backward-ten-seconds-icon/BackwardTenSecondsIcon.stories.tsx +313 -277
- package/dist/icons/bubble-check-icon/BubbleCheckIcon.stories.tsx +367 -309
- package/dist/icons/bubble-crossed-icon/BubbleCrossedIcon.stories.tsx +356 -308
- package/dist/icons/bubble-sparkle-icon/BubbleSparkleIcon.stories.tsx +280 -234
- package/dist/icons/camera-icon/CameraIcon.stories.tsx +370 -326
- package/dist/icons/capital-a-letter-icon/CapitalALetterIcon.stories.tsx +300 -256
- package/dist/icons/chevron-double-left-icon/ChevronDoubleLeftIcon.stories.tsx +298 -262
- package/dist/icons/chevron-double-right-icon/ChevronDoubleRightIcon.stories.tsx +294 -260
- package/dist/icons/chevron-down-icon/ChevronDownIcon.stories.tsx +291 -259
- package/dist/icons/chevron-left-icon/ChevronLeftIcon.stories.tsx +286 -256
- package/dist/icons/chevron-right-icon/ChevronRightIcon.stories.tsx +282 -256
- package/dist/icons/chevron-up-icon/ChevronUpIcon.stories.tsx +292 -256
- package/dist/icons/circle-tick-icon/CircleTickIcon.stories.tsx +338 -290
- package/dist/icons/circular-play-icon/CircularPlayIcon.stories.tsx +167 -148
- package/dist/icons/coin-icon/CoinIcon.stories.tsx +342 -296
- package/dist/icons/coin-toons-icon/CoinToonsIcon.stories.tsx +342 -296
- package/dist/icons/column-wide-add-icon/ColumnWideAddIcon.stories.tsx +280 -238
- package/dist/icons/command-icon/CommandIcon.stories.tsx +328 -280
- package/dist/icons/copy-icon/CopyIcon.stories.tsx +294 -256
- package/dist/icons/cross-circle-icon/CrossCircleIcon.stories.tsx +285 -235
- package/dist/icons/cross-icon/CrossIcon.stories.tsx +308 -266
- package/dist/icons/download-icon/DownloadIcon.stories.tsx +271 -231
- package/dist/icons/edit-big-icon/EditBigIcon.stories.tsx +330 -278
- package/dist/icons/email-icon/EmailIcon.stories.tsx +303 -257
- package/dist/icons/expand-icon/ExpandIcon.stories.tsx +324 -286
- package/dist/icons/eye-close-icon/EyeCloseIcon.stories.tsx +317 -271
- package/dist/icons/eye-open-icon/EyeOpenIcon.stories.tsx +320 -272
- package/dist/icons/feature-shine-icon/FeatureShineIcon.stories.tsx +322 -280
- package/dist/icons/file-chart-icon/FileChartIcon.stories.tsx +315 -277
- package/dist/icons/file-text-icon/FileTextIcon.stories.tsx +199 -177
- package/dist/icons/filter-bar-row-icon/FilterBarRowIcon.stories.tsx +304 -264
- package/dist/icons/forward-ten-seconds-icon/ForwardTenSecondsIcon.stories.tsx +311 -277
- package/dist/icons/git-branch-icon/GitBranchIcon.stories.tsx +327 -287
- package/dist/icons/git-fork-icon/GitForkIcon.stories.tsx +314 -278
- package/dist/icons/globe-icon/GlobeIcon.stories.tsx +113 -98
- package/dist/icons/google-logo-icon/GoogleLogoIcon.stories.tsx +274 -226
- package/dist/icons/grip-vertical-icon/GripVerticalIcon.stories.tsx +349 -303
- package/dist/icons/head-icon/HeadIcon.stories.tsx +286 -246
- package/dist/icons/heart-icon/HeartIcon.stories.tsx +312 -268
- package/dist/icons/image-avatar-sparkle-icon/ImageAvatarSparkleIcon.stories.tsx +246 -210
- package/dist/icons/image-icon/ImageIcon.stories.tsx +330 -284
- package/dist/icons/import-folder-icon/ImportFolderIcon.stories.tsx +326 -282
- package/dist/icons/import-left-arrow-folder-icon/ImportLeftArrowFolderIcon.stories.tsx +330 -294
- package/dist/icons/indian-flag-icon/IndianFlagIcon.stories.tsx +288 -234
- package/dist/icons/instagram-icon/InstagramIcon.stories.tsx +386 -330
- package/dist/icons/layout-column-icon/LayoutColumnIcon.stories.tsx +305 -263
- package/dist/icons/layout-left-icon/LayoutLeftIcon.stories.tsx +295 -259
- package/dist/icons/layout-right-icon/LayoutRightIcon.stories.tsx +296 -256
- package/dist/icons/light-bulb-simple-icon/LightBulbSimpleIcon.stories.tsx +322 -282
- package/dist/icons/linked-in-icon/LinkedInIcon.stories.tsx +399 -359
- package/dist/icons/magic-book-icon/MagicBookIcon.stories.tsx +314 -272
- package/dist/icons/magic-edit-icon/MagicEditIcon.stories.tsx +238 -206
- package/dist/icons/maintenance-icon/MaintenanceIcon.stories.tsx +322 -276
- package/dist/icons/message-icon/MessageIcon.stories.tsx +192 -170
- package/dist/icons/minimize-icon/MinimizeIcon.stories.tsx +348 -304
- package/dist/icons/moon-icon/MoonIcon.stories.tsx +191 -167
- package/dist/icons/move-horizontal-icon/MoveHorizontalIcon.stories.tsx +380 -326
- package/dist/icons/move-vertical-icon/MoveVerticalIcon.stories.tsx +345 -291
- package/dist/icons/musical-note-icon/MusicalNoteIcon.stories.tsx +310 -266
- package/dist/icons/notepad-icon/NotepadIcon.stories.tsx +311 -271
- package/dist/icons/notes-icon/NotesIcon.stories.tsx +311 -271
- package/dist/icons/page-search-icon/PageSearchIcon.stories.tsx +309 -271
- package/dist/icons/page-text-icon/PageTextIcon.stories.tsx +248 -210
- package/dist/icons/paint-roll-icon/PaintRollIcon.stories.tsx +310 -262
- package/dist/icons/paper-plane-icon/PaperPlaneIcon.stories.tsx +274 -236
- package/dist/icons/pause-icon/PauseIcon.stories.tsx +324 -280
- package/dist/icons/pencil-icon/PencilIcon.stories.tsx +323 -281
- package/dist/icons/phone-icon/PhoneIcon.stories.tsx +288 -240
- package/dist/icons/plus-icon/PlusIcon.stories.tsx +315 -273
- package/dist/icons/pocket-studio-icon/PocketStudioIcon.stories.tsx +278 -234
- package/dist/icons/scroll-down-icon/ScrollDownIcon.stories.tsx +161 -151
- package/dist/icons/search-icon/SearchIcon.stories.tsx +324 -284
- package/dist/icons/setting-icon/SettingIcon.stories.tsx +306 -264
- package/dist/icons/share-icon/ShareIcon.stories.tsx +314 -272
- package/dist/icons/shield-icon/ShieldIcon.stories.tsx +281 -235
- package/dist/icons/site-logo-icon/SiteLogoIcon.stories.tsx +309 -250
- package/dist/icons/skip-backward-icon/SkipBackwardIcon.stories.tsx +317 -279
- package/dist/icons/skip-forward-icon/SkipForwardIcon.stories.tsx +315 -279
- package/dist/icons/sparkles-soft-icon/SparklesSoftIcon.stories.tsx +299 -253
- package/dist/icons/spinner-gradient-icon/SpinnerGradientIcon.stories.tsx +185 -169
- package/dist/icons/spinner-gradient-icon/index.tsx +6 -1
- package/dist/icons/spinner-solid-icon/SpinnerSolidIcon.stories.tsx +192 -168
- package/dist/icons/spinner-solid-icon/index.tsx +6 -1
- package/dist/icons/spinner-solid-neutral-icon/SpinnerSolidINeutralcon.stories.tsx +212 -178
- package/dist/icons/spinner-solid-neutral-icon/index.tsx +1 -1
- package/dist/icons/star-icon/StarIcon.stories.tsx +290 -244
- package/dist/icons/store-coin-icon/StoreCoinIcon.stories.tsx +286 -234
- package/dist/icons/suggestion-icon/SuggestionIcon.stories.tsx +272 -230
- package/dist/icons/sun-icon/SunIcon.stories.tsx +262 -226
- package/dist/icons/text-color-icon/TextColorIcon.stories.tsx +321 -279
- package/dist/icons/text-indicator-icon/TextIndicatorIcon.stories.tsx +332 -282
- package/dist/icons/threads-icon/ThreadsIcon.stories.tsx +394 -342
- package/dist/icons/tick-circle-icon/TickCircleIcon.stories.tsx +338 -290
- package/dist/icons/tick-icon/TickIcon.stories.tsx +364 -315
- package/dist/icons/trash-icon/TrashIcon.stories.tsx +293 -253
- package/dist/icons/twitter-x-icon/TwitterXIcon.stories.tsx +396 -338
- package/dist/icons/upload-icon/UploadIcon.stories.tsx +291 -247
- package/dist/icons/vertical-menu-icon/VerticalMenuIcon.stories.tsx +309 -271
- package/dist/icons/video-play-list-icon/VideoPlaylistIcon.stories.tsx +336 -290
- package/dist/icons/voice-playing-icon/VoicePlayingIcon.stories.tsx +382 -334
- package/dist/icons/volume-full-icon/VolumeFullIcon.stories.tsx +349 -305
- package/dist/icons/volume-half-icon/VolumeHalfIcon.stories.tsx +327 -295
- package/dist/icons/volume-off-icon/VolumeOffIcon.stories.tsx +336 -296
- package/dist/icons/warning-icon/WarningIcon.stories.tsx +314 -274
- package/dist/icons/youtube-icon/YoutubeIcon.stories.tsx +311 -261
- package/dist/index.cjs +84 -84
- package/dist/index.js +84 -84
- package/dist/styles/aural-all-theme.css +1222 -0
- package/dist/styles/{aural-theme.css → aural-dark-theme.css} +15 -3
- package/dist/styles/aural-light-theme.css +1047 -0
- package/package.json +1 -1
|
@@ -255,14 +255,17 @@ export const DirectionExamples: Story = {
|
|
|
255
255
|
<DrawerDescription>{description}</DrawerDescription>
|
|
256
256
|
</DrawerHeader>
|
|
257
257
|
<div className="p-2 py-4">
|
|
258
|
-
<div className="rounded-lg border
|
|
259
|
-
<div className="space-y-1 text-xs
|
|
258
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-3">
|
|
259
|
+
<div className="text-fm-primary/60 space-y-1 text-xs">
|
|
260
260
|
<div>
|
|
261
|
-
Direction:
|
|
261
|
+
Direction:{" "}
|
|
262
|
+
<span className="text-fm-primary">{direction}</span>
|
|
262
263
|
</div>
|
|
263
264
|
<div>
|
|
264
265
|
Content:{" "}
|
|
265
|
-
<span className="text-
|
|
266
|
+
<span className="text-fm-primary">
|
|
267
|
+
Slides from {direction}
|
|
268
|
+
</span>
|
|
266
269
|
</div>
|
|
267
270
|
</div>
|
|
268
271
|
</div>
|
|
@@ -280,8 +283,10 @@ export const DirectionExamples: Story = {
|
|
|
280
283
|
return (
|
|
281
284
|
<div className="space-y-8">
|
|
282
285
|
<div className="text-center">
|
|
283
|
-
<h3 className="mb-2 font-medium
|
|
284
|
-
|
|
286
|
+
<h3 className="text-fm-primary mb-2 font-medium">
|
|
287
|
+
Drawer Directions
|
|
288
|
+
</h3>
|
|
289
|
+
<p className="text-fm-primary/60 text-sm">
|
|
285
290
|
Explore different slide directions for various use cases
|
|
286
291
|
</p>
|
|
287
292
|
</div>
|
|
@@ -289,7 +294,7 @@ export const DirectionExamples: Story = {
|
|
|
289
294
|
<div className="space-y-6">
|
|
290
295
|
{/* Bottom Direction */}
|
|
291
296
|
<div className="space-y-4">
|
|
292
|
-
<h4 className="text-sm font-medium
|
|
297
|
+
<h4 className="text-fm-primary/80 text-sm font-medium">
|
|
293
298
|
Bottom Direction (Default)
|
|
294
299
|
</h4>
|
|
295
300
|
<div className="flex flex-wrap gap-2">
|
|
@@ -303,7 +308,9 @@ export const DirectionExamples: Story = {
|
|
|
303
308
|
|
|
304
309
|
{/* Top Direction */}
|
|
305
310
|
<div className="space-y-4">
|
|
306
|
-
<h4 className="text-sm font-medium
|
|
311
|
+
<h4 className="text-fm-primary/80 text-sm font-medium">
|
|
312
|
+
Top Direction
|
|
313
|
+
</h4>
|
|
307
314
|
<div className="flex flex-wrap gap-2">
|
|
308
315
|
<DirectionDrawer
|
|
309
316
|
direction="top"
|
|
@@ -315,7 +322,7 @@ export const DirectionExamples: Story = {
|
|
|
315
322
|
|
|
316
323
|
{/* Left Direction */}
|
|
317
324
|
<div className="space-y-4">
|
|
318
|
-
<h4 className="text-sm font-medium
|
|
325
|
+
<h4 className="text-fm-primary/80 text-sm font-medium">
|
|
319
326
|
Left Direction
|
|
320
327
|
</h4>
|
|
321
328
|
<div className="flex flex-wrap gap-2">
|
|
@@ -329,7 +336,7 @@ export const DirectionExamples: Story = {
|
|
|
329
336
|
|
|
330
337
|
{/* Right Direction */}
|
|
331
338
|
<div className="space-y-4">
|
|
332
|
-
<h4 className="text-sm font-medium
|
|
339
|
+
<h4 className="text-fm-primary/80 text-sm font-medium">
|
|
333
340
|
Right Direction
|
|
334
341
|
</h4>
|
|
335
342
|
<div className="flex flex-wrap gap-2">
|
|
@@ -791,33 +798,47 @@ export const AccessibilityExample: Story = {
|
|
|
791
798
|
</DrawerHeader>
|
|
792
799
|
|
|
793
800
|
<div className="space-y-4 overflow-auto p-4">
|
|
794
|
-
<div className="rounded-lg border
|
|
795
|
-
<h4 className="mb-2 font-medium
|
|
801
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
|
|
802
|
+
<h4 className="text-fm-primary mb-2 font-medium">
|
|
796
803
|
Keyboard Navigation
|
|
797
804
|
</h4>
|
|
798
|
-
<ul className="space-y-1 text-sm
|
|
805
|
+
<ul className="text-fm-primary/80 space-y-1 text-sm">
|
|
799
806
|
<li>
|
|
800
|
-
•
|
|
801
|
-
|
|
807
|
+
•{" "}
|
|
808
|
+
<kbd className="bg-fm-surface-secondary rounded px-1">
|
|
809
|
+
Tab
|
|
810
|
+
</kbd>{" "}
|
|
811
|
+
- Navigate between elements
|
|
802
812
|
</li>
|
|
803
813
|
<li>
|
|
804
|
-
•
|
|
805
|
-
|
|
814
|
+
•{" "}
|
|
815
|
+
<kbd className="bg-fm-surface-secondary rounded px-1">
|
|
816
|
+
Escape
|
|
817
|
+
</kbd>{" "}
|
|
818
|
+
- Close drawer
|
|
806
819
|
</li>
|
|
807
820
|
<li>
|
|
808
|
-
•
|
|
809
|
-
|
|
821
|
+
•{" "}
|
|
822
|
+
<kbd className="bg-fm-surface-secondary rounded px-1">
|
|
823
|
+
Enter
|
|
824
|
+
</kbd>{" "}
|
|
825
|
+
- Activate buttons
|
|
810
826
|
</li>
|
|
811
827
|
<li>
|
|
812
|
-
•
|
|
813
|
-
|
|
828
|
+
•{" "}
|
|
829
|
+
<kbd className="bg-fm-surface-secondary rounded px-1">
|
|
830
|
+
Space
|
|
831
|
+
</kbd>{" "}
|
|
832
|
+
- Activate buttons
|
|
814
833
|
</li>
|
|
815
834
|
</ul>
|
|
816
835
|
</div>
|
|
817
836
|
|
|
818
|
-
<div className="rounded-lg border
|
|
819
|
-
<h4 className="mb-2 font-medium
|
|
820
|
-
|
|
837
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
|
|
838
|
+
<h4 className="text-fm-primary mb-2 font-medium">
|
|
839
|
+
Focus Management
|
|
840
|
+
</h4>
|
|
841
|
+
<ul className="text-fm-primary/80 space-y-1 text-sm">
|
|
821
842
|
<li>• Automatic focus trapping within drawer</li>
|
|
822
843
|
<li>• Focus restoration when drawer closes</li>
|
|
823
844
|
<li>• Proper focus order for all interactive elements</li>
|
|
@@ -825,9 +846,9 @@ export const AccessibilityExample: Story = {
|
|
|
825
846
|
</ul>
|
|
826
847
|
</div>
|
|
827
848
|
|
|
828
|
-
<div className="rounded-lg border
|
|
829
|
-
<h4 className="mb-2 font-medium
|
|
830
|
-
<ul className="space-y-1 text-sm
|
|
849
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
|
|
850
|
+
<h4 className="text-fm-primary mb-2 font-medium">Drag Support</h4>
|
|
851
|
+
<ul className="text-fm-primary/80 space-y-1 text-sm">
|
|
831
852
|
<li>• Drag to close functionality</li>
|
|
832
853
|
<li>• Smooth animations during drag</li>
|
|
833
854
|
<li>• Haptic feedback on mobile devices</li>
|
|
@@ -919,20 +940,23 @@ export const OverlayVariations: Story = {
|
|
|
919
940
|
<DrawerDescription>{description}</DrawerDescription>
|
|
920
941
|
</DrawerHeader>
|
|
921
942
|
<div className="py-4">
|
|
922
|
-
<div className="grid grid-cols-2 gap-2 text-xs
|
|
943
|
+
<div className="text-fm-primary/60 grid grid-cols-2 gap-2 text-xs">
|
|
923
944
|
<div>
|
|
924
945
|
Opacity:{" "}
|
|
925
|
-
<span className="text-
|
|
946
|
+
<span className="text-fm-primary">
|
|
947
|
+
{opacity || "default"}
|
|
948
|
+
</span>
|
|
926
949
|
</div>
|
|
927
950
|
<div>
|
|
928
951
|
Glass:{" "}
|
|
929
|
-
<span className="text-
|
|
952
|
+
<span className="text-fm-primary">{glass || "default"}</span>
|
|
930
953
|
</div>
|
|
931
954
|
<div>
|
|
932
|
-
Noise:
|
|
955
|
+
Noise:{" "}
|
|
956
|
+
<span className="text-fm-primary">{noise || "none"}</span>
|
|
933
957
|
</div>
|
|
934
958
|
<div>
|
|
935
|
-
Variant: <span className="text-
|
|
959
|
+
Variant: <span className="text-fm-primary">neutral</span>
|
|
936
960
|
</div>
|
|
937
961
|
</div>
|
|
938
962
|
</div>
|
|
@@ -949,8 +973,10 @@ export const OverlayVariations: Story = {
|
|
|
949
973
|
return (
|
|
950
974
|
<div className="space-y-8">
|
|
951
975
|
<div className="text-center">
|
|
952
|
-
<h3 className="mb-2 font-medium
|
|
953
|
-
|
|
976
|
+
<h3 className="text-fm-primary mb-2 font-medium">
|
|
977
|
+
Overlay Variations
|
|
978
|
+
</h3>
|
|
979
|
+
<p className="text-fm-primary/60 text-sm">
|
|
954
980
|
Different overlay effects for various visual styles
|
|
955
981
|
</p>
|
|
956
982
|
</div>
|
|
@@ -1033,15 +1059,15 @@ export const VariantExamples: Story = {
|
|
|
1033
1059
|
return (
|
|
1034
1060
|
<div className="space-y-8">
|
|
1035
1061
|
<div className="text-center">
|
|
1036
|
-
<h3 className="mb-2 font-medium
|
|
1037
|
-
<p className="text-
|
|
1062
|
+
<h3 className="text-fm-primary mb-2 font-medium">Drawer Variants</h3>
|
|
1063
|
+
<p className="text-fm-primary/60 text-sm">
|
|
1038
1064
|
Compare the neutral (default) and gradient variants
|
|
1039
1065
|
</p>
|
|
1040
1066
|
</div>
|
|
1041
1067
|
|
|
1042
1068
|
<div className="grid grid-cols-1 gap-4 md:grid-cols-2">
|
|
1043
1069
|
<div className="space-y-4">
|
|
1044
|
-
<h4 className="text-center font-medium
|
|
1070
|
+
<h4 className="text-fm-primary text-center font-medium">
|
|
1045
1071
|
Neutral Variant (Default)
|
|
1046
1072
|
</h4>
|
|
1047
1073
|
<Drawer>
|
|
@@ -1059,9 +1085,11 @@ export const VariantExamples: Story = {
|
|
|
1059
1085
|
</DrawerDescription>
|
|
1060
1086
|
</DrawerHeader>
|
|
1061
1087
|
<div className="py-4">
|
|
1062
|
-
<div className="rounded-lg border
|
|
1063
|
-
<h5 className="mb-2 font-medium
|
|
1064
|
-
|
|
1088
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
|
|
1089
|
+
<h5 className="text-fm-primary mb-2 font-medium">
|
|
1090
|
+
Features:
|
|
1091
|
+
</h5>
|
|
1092
|
+
<ul className="text-fm-primary/70 space-y-1 text-sm">
|
|
1065
1093
|
<li>• Frosted glass background</li>
|
|
1066
1094
|
<li>• Subtle border</li>
|
|
1067
1095
|
<li>• Backdrop blur effect</li>
|
|
@@ -1079,7 +1107,7 @@ export const VariantExamples: Story = {
|
|
|
1079
1107
|
</div>
|
|
1080
1108
|
|
|
1081
1109
|
<div className="space-y-4">
|
|
1082
|
-
<h4 className="text-center font-medium
|
|
1110
|
+
<h4 className="text-fm-primary text-center font-medium">
|
|
1083
1111
|
Gradient Variant
|
|
1084
1112
|
</h4>
|
|
1085
1113
|
<Drawer>
|
|
@@ -1097,9 +1125,11 @@ export const VariantExamples: Story = {
|
|
|
1097
1125
|
</DrawerDescription>
|
|
1098
1126
|
</DrawerHeader>
|
|
1099
1127
|
<div className="py-4">
|
|
1100
|
-
<div className="rounded-lg border
|
|
1101
|
-
<h5 className="mb-2 font-medium
|
|
1102
|
-
|
|
1128
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
|
|
1129
|
+
<h5 className="text-fm-primary mb-2 font-medium">
|
|
1130
|
+
Features:
|
|
1131
|
+
</h5>
|
|
1132
|
+
<ul className="text-fm-primary/70 space-y-1 text-sm">
|
|
1103
1133
|
<li>• White gradient background</li>
|
|
1104
1134
|
<li>• No border</li>
|
|
1105
1135
|
<li>• Clean, modern appearance</li>
|
|
@@ -65,7 +65,7 @@ function DrawerOverlay({
|
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
export const drawerVariants = cva(
|
|
68
|
-
"flex flex-col gap-5 w-full rounded-fm-s p-4 relative group/drawer-content fixed z-50 h-auto py-2 text-
|
|
68
|
+
"flex flex-col gap-5 w-full rounded-fm-s p-4 relative group/drawer-content fixed z-50 h-auto py-2 text-fm-primary",
|
|
69
69
|
{
|
|
70
70
|
variants: {
|
|
71
71
|
variant: {
|
|
@@ -175,7 +175,7 @@ function DrawerTitle({
|
|
|
175
175
|
return (
|
|
176
176
|
<DrawerPrimitive.Title
|
|
177
177
|
data-slot="drawer-title"
|
|
178
|
-
className={cn("font-semibold
|
|
178
|
+
className={cn("text-fm-primary font-semibold", className)}
|
|
179
179
|
{...props}
|
|
180
180
|
/>
|
|
181
181
|
)
|
|
@@ -188,7 +188,7 @@ function DrawerDescription({
|
|
|
188
188
|
return (
|
|
189
189
|
<DrawerPrimitive.Description
|
|
190
190
|
data-slot="drawer-description"
|
|
191
|
-
className={cn("text-
|
|
191
|
+
className={cn("text-fm-primary text-sm", className)}
|
|
192
192
|
{...props}
|
|
193
193
|
/>
|
|
194
194
|
)
|
|
@@ -138,8 +138,10 @@ export const BasicDropdown: Story = {
|
|
|
138
138
|
render: () => (
|
|
139
139
|
<div className="space-y-8">
|
|
140
140
|
<div className="text-center">
|
|
141
|
-
<h3 className="mb-2 font-medium
|
|
142
|
-
|
|
141
|
+
<h3 className="text-fm-primary mb-2 font-medium">
|
|
142
|
+
Basic Dropdown Menus
|
|
143
|
+
</h3>
|
|
144
|
+
<p className="text-fm-secondary text-sm">
|
|
143
145
|
Simple dropdown menus with different trigger styles and grouped
|
|
144
146
|
content
|
|
145
147
|
</p>
|
|
@@ -253,8 +255,10 @@ export const InteractiveStates: Story = {
|
|
|
253
255
|
return (
|
|
254
256
|
<div className="space-y-8">
|
|
255
257
|
<div className="text-center">
|
|
256
|
-
<h3 className="mb-2 font-medium
|
|
257
|
-
|
|
258
|
+
<h3 className="text-fm-primary mb-2 font-medium">
|
|
259
|
+
Interactive States
|
|
260
|
+
</h3>
|
|
261
|
+
<p className="text-fm-secondary text-sm">
|
|
258
262
|
Checkboxes, radio groups, and stateful interactions with logical
|
|
259
263
|
grouping
|
|
260
264
|
</p>
|
|
@@ -320,11 +324,11 @@ export const InteractiveStates: Story = {
|
|
|
320
324
|
|
|
321
325
|
{/* State Display */}
|
|
322
326
|
<div className="text-center">
|
|
323
|
-
<div className="inline-block rounded-lg border
|
|
324
|
-
<h4 className="mb-2 text-sm font-medium
|
|
327
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary inline-block rounded-lg border p-4">
|
|
328
|
+
<h4 className="text-fm-primary mb-2 text-sm font-medium">
|
|
325
329
|
Current State
|
|
326
330
|
</h4>
|
|
327
|
-
<div className="space-y-1 text-xs
|
|
331
|
+
<div className="text-fm-secondary space-y-1 text-xs">
|
|
328
332
|
<div>Notifications: {notifications ? "On" : "Off"}</div>
|
|
329
333
|
<div>Marketing: {marketing ? "On" : "Off"}</div>
|
|
330
334
|
<div>Theme: {theme}</div>
|
|
@@ -349,8 +353,8 @@ export const NestedMenus: Story = {
|
|
|
349
353
|
render: () => (
|
|
350
354
|
<div className="space-y-8">
|
|
351
355
|
<div className="text-center">
|
|
352
|
-
<h3 className="mb-2 font-medium
|
|
353
|
-
<p className="text-
|
|
356
|
+
<h3 className="text-fm-primary mb-2 font-medium">Nested Sub-menus</h3>
|
|
357
|
+
<p className="text-fm-secondary text-sm">
|
|
354
358
|
Multi-level menus with sub-menu navigation and logical grouping
|
|
355
359
|
</p>
|
|
356
360
|
</div>
|
|
@@ -450,8 +454,8 @@ export const KeyboardShortcuts: Story = {
|
|
|
450
454
|
render: () => (
|
|
451
455
|
<div className="space-y-8">
|
|
452
456
|
<div className="text-center">
|
|
453
|
-
<h3 className="mb-2 font-medium
|
|
454
|
-
<p className="text-
|
|
457
|
+
<h3 className="text-fm-primary mb-2 font-medium">Keyboard Shortcuts</h3>
|
|
458
|
+
<p className="text-fm-secondary text-sm">
|
|
455
459
|
Menu items with keyboard shortcut indicators and logical grouping
|
|
456
460
|
</p>
|
|
457
461
|
</div>
|
|
@@ -535,8 +539,8 @@ export const CustomStyling: Story = {
|
|
|
535
539
|
render: () => (
|
|
536
540
|
<div className="space-y-8">
|
|
537
541
|
<div className="text-center">
|
|
538
|
-
<h3 className="mb-2 font-medium
|
|
539
|
-
<p className="text-
|
|
542
|
+
<h3 className="text-fm-primary mb-2 font-medium">Custom Styling</h3>
|
|
543
|
+
<p className="text-fm-secondary text-sm">
|
|
540
544
|
Dropdown menus with custom styling using the classes prop
|
|
541
545
|
</p>
|
|
542
546
|
</div>
|
|
@@ -660,8 +664,8 @@ export const ComplexMenu: Story = {
|
|
|
660
664
|
return (
|
|
661
665
|
<div className="space-y-8">
|
|
662
666
|
<div className="text-center">
|
|
663
|
-
<h3 className="mb-2 font-medium
|
|
664
|
-
<p className="text-
|
|
667
|
+
<h3 className="text-fm-primary mb-2 font-medium">Complex Menu</h3>
|
|
668
|
+
<p className="text-fm-secondary text-sm">
|
|
665
669
|
Full-featured dropdown menu with all component types and logical
|
|
666
670
|
grouping
|
|
667
671
|
</p>
|
|
@@ -793,11 +797,11 @@ export const ComplexMenu: Story = {
|
|
|
793
797
|
|
|
794
798
|
{/* State Display */}
|
|
795
799
|
<div className="text-center">
|
|
796
|
-
<div className="inline-block rounded-lg border
|
|
797
|
-
<h4 className="mb-2 text-sm font-medium
|
|
800
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary inline-block rounded-lg border p-4">
|
|
801
|
+
<h4 className="text-fm-primary mb-2 text-sm font-medium">
|
|
798
802
|
Current Settings
|
|
799
803
|
</h4>
|
|
800
|
-
<div className="space-y-1 text-xs
|
|
804
|
+
<div className="text-fm-secondary space-y-1 text-xs">
|
|
801
805
|
<div>Bookmarked: {bookmarked ? "Yes" : "No"}</div>
|
|
802
806
|
<div>Notifications: {notifications ? "Enabled" : "Disabled"}</div>
|
|
803
807
|
<div>View Mode: {viewMode}</div>
|
|
@@ -822,8 +826,10 @@ export const PositioningExamples: Story = {
|
|
|
822
826
|
render: () => (
|
|
823
827
|
<div className="space-y-8">
|
|
824
828
|
<div className="text-center">
|
|
825
|
-
<h3 className="mb-2 font-medium
|
|
826
|
-
|
|
829
|
+
<h3 className="text-fm-primary mb-2 font-medium">
|
|
830
|
+
Positioning Examples
|
|
831
|
+
</h3>
|
|
832
|
+
<p className="text-fm-secondary text-sm">
|
|
827
833
|
Different positioning and alignment options with grouped content
|
|
828
834
|
</p>
|
|
829
835
|
</div>
|
|
@@ -831,7 +837,7 @@ export const PositioningExamples: Story = {
|
|
|
831
837
|
<div className="grid grid-cols-2 gap-8">
|
|
832
838
|
{/* Top Row */}
|
|
833
839
|
<div className="space-y-4">
|
|
834
|
-
<h4 className="text-sm font-medium
|
|
840
|
+
<h4 className="text-fm-secondary text-sm font-medium">
|
|
835
841
|
Alignment Options
|
|
836
842
|
</h4>
|
|
837
843
|
<div className="flex gap-2">
|
|
@@ -881,7 +887,7 @@ export const PositioningExamples: Story = {
|
|
|
881
887
|
|
|
882
888
|
{/* Bottom Row */}
|
|
883
889
|
<div className="space-y-4">
|
|
884
|
-
<h4 className="text-sm font-medium
|
|
890
|
+
<h4 className="text-fm-secondary text-sm font-medium">Side Offset</h4>
|
|
885
891
|
<div className="flex gap-2">
|
|
886
892
|
<DropdownMenu>
|
|
887
893
|
<DropdownMenuTrigger asChild>
|
|
@@ -944,10 +950,10 @@ export const GroupingShowcase: Story = {
|
|
|
944
950
|
render: () => (
|
|
945
951
|
<div className="space-y-8">
|
|
946
952
|
<div className="text-center">
|
|
947
|
-
<h3 className="mb-2 font-medium
|
|
953
|
+
<h3 className="text-fm-primary mb-2 font-medium">
|
|
948
954
|
DropdownMenuGroup Showcase
|
|
949
955
|
</h3>
|
|
950
|
-
<p className="text-
|
|
956
|
+
<p className="text-fm-secondary text-sm">
|
|
951
957
|
Demonstrating logical grouping for better organization and
|
|
952
958
|
accessibility
|
|
953
959
|
</p>
|
|
@@ -1051,8 +1057,10 @@ export const ArrowShowcase: Story = {
|
|
|
1051
1057
|
render: () => (
|
|
1052
1058
|
<div className="space-y-8">
|
|
1053
1059
|
<div className="text-center">
|
|
1054
|
-
<h3 className="mb-2 font-medium
|
|
1055
|
-
|
|
1060
|
+
<h3 className="text-fm-primary mb-2 font-medium">
|
|
1061
|
+
DropdownArrow Showcase
|
|
1062
|
+
</h3>
|
|
1063
|
+
<p className="text-fm-secondary text-sm">
|
|
1056
1064
|
Dropdown menus with arrow pointers for better visual connection to
|
|
1057
1065
|
triggers
|
|
1058
1066
|
</p>
|
|
@@ -1061,7 +1069,7 @@ export const ArrowShowcase: Story = {
|
|
|
1061
1069
|
<div className="flex flex-wrap justify-center gap-8">
|
|
1062
1070
|
{/* Basic Arrow */}
|
|
1063
1071
|
<div className="space-y-4">
|
|
1064
|
-
<h4 className="text-center text-sm font-medium
|
|
1072
|
+
<h4 className="text-fm-secondary text-center text-sm font-medium">
|
|
1065
1073
|
Basic Arrow
|
|
1066
1074
|
</h4>
|
|
1067
1075
|
<DropdownMenu>
|
|
@@ -1094,7 +1102,7 @@ export const ArrowShowcase: Story = {
|
|
|
1094
1102
|
|
|
1095
1103
|
{/* Custom Styled Arrow */}
|
|
1096
1104
|
<div className="space-y-4">
|
|
1097
|
-
<h4 className="text-center text-sm font-medium
|
|
1105
|
+
<h4 className="text-fm-secondary text-center text-sm font-medium">
|
|
1098
1106
|
Custom Styled Arrow
|
|
1099
1107
|
</h4>
|
|
1100
1108
|
<DropdownMenu>
|
|
@@ -1136,7 +1144,7 @@ export const ArrowShowcase: Story = {
|
|
|
1136
1144
|
|
|
1137
1145
|
{/* Arrow with Sub-menu */}
|
|
1138
1146
|
<div className="space-y-4">
|
|
1139
|
-
<h4 className="text-center text-sm font-medium
|
|
1147
|
+
<h4 className="text-fm-secondary text-center text-sm font-medium">
|
|
1140
1148
|
Arrow with Sub-menu
|
|
1141
1149
|
</h4>
|
|
1142
1150
|
<DropdownMenu>
|
|
@@ -1186,9 +1194,11 @@ export const ArrowShowcase: Story = {
|
|
|
1186
1194
|
</div>
|
|
1187
1195
|
|
|
1188
1196
|
<div className="text-center">
|
|
1189
|
-
<div className="inline-block max-w-lg rounded-lg border
|
|
1190
|
-
<h4 className="mb-2 text-sm font-medium
|
|
1191
|
-
|
|
1197
|
+
<div className="border-fm-divider-secondary bg-fm-surface-secondary inline-block max-w-lg rounded-lg border p-4">
|
|
1198
|
+
<h4 className="text-fm-primary mb-2 text-sm font-medium">
|
|
1199
|
+
Arrow Usage
|
|
1200
|
+
</h4>
|
|
1201
|
+
<p className="text-fm-secondary text-xs leading-relaxed">
|
|
1192
1202
|
The DropdownArrow component creates a visual pointer from the menu
|
|
1193
1203
|
to its trigger. It automatically inherits the menu's background
|
|
1194
1204
|
color and can be customized with the className prop. Use it to
|
|
@@ -154,7 +154,7 @@ export const WithFormField: Story = {
|
|
|
154
154
|
<label className="mb-2 block text-sm font-medium">Email Address</label>
|
|
155
155
|
<input
|
|
156
156
|
type="email"
|
|
157
|
-
className="w-full rounded-md border
|
|
157
|
+
className="border-fm-divider-secondary w-full rounded-md border px-3 py-2 focus:ring-2 focus:ring-blue-500 focus:outline-none"
|
|
158
158
|
placeholder="Enter your email"
|
|
159
159
|
/>
|
|
160
160
|
<div className="mt-1">
|
|
@@ -224,7 +224,7 @@ export const AccessibilityExample: Story = {
|
|
|
224
224
|
<input
|
|
225
225
|
id="accessible-input"
|
|
226
226
|
type="email"
|
|
227
|
-
className="w-full rounded-md border
|
|
227
|
+
className="border-fm-divider-secondary w-full rounded-md border px-3 py-2 focus:ring-2 focus:ring-blue-500 focus:outline-none"
|
|
228
228
|
placeholder="Enter your email"
|
|
229
229
|
aria-describedby="email-helper"
|
|
230
230
|
required
|