@12-apps/ui 1.4.1 → 1.5.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/package.json +17 -8
- package/src/button/index.ts +1 -0
- package/src/social-login-button/index.ts +1 -0
- package/src/{social-login-button.tsx → social-login-button/social-login-button.tsx} +5 -5
- package/src/user-avatar/index.ts +1 -0
- package/src/{user-avatar.tsx → user-avatar/user-avatar.tsx} +4 -4
- package/eslint.config.js +0 -77
- package/src/__tests__/data-grid.test.tsx +0 -125
- package/src/__tests__/package-wiring.test.ts +0 -41
- package/src/__tests__/setup.ts +0 -1
- package/src/__tests__/social-login-button.test.tsx +0 -186
- package/src/__tests__/user-avatar.test.tsx +0 -195
- package/src/__tests__/viewport.test.ts +0 -50
- package/src/components/command/__tests__/command.test.tsx +0 -112
- package/src/components/data-display/Alert/Alert.stories.tsx +0 -559
- package/src/components/data-display/Alert/Alert.test.stories.tsx +0 -707
- package/src/components/data-display/AlertDialog/AlertDialog.stories.tsx +0 -362
- package/src/components/data-display/AlertDialog/AlertDialog.test.stories.tsx +0 -753
- package/src/components/data-display/AsyncStateContainer/AsyncStateContainer.stories.tsx +0 -230
- package/src/components/data-display/AsyncStateContainer/AsyncStateContainer.test.stories.tsx +0 -270
- package/src/components/data-display/Avatar/Avatar.stories.tsx +0 -721
- package/src/components/data-display/Avatar/Avatar.test.stories.tsx +0 -822
- package/src/components/data-display/Badge/Badge.stories.tsx +0 -1134
- package/src/components/data-display/Badge/Badge.test.stories.tsx +0 -1194
- package/src/components/data-display/Banner/Banner.stories.tsx +0 -528
- package/src/components/data-display/Banner/Banner.test.stories.tsx +0 -503
- package/src/components/data-display/Carousel/Carousel.stories.tsx +0 -607
- package/src/components/data-display/Carousel/Carousel.test.stories.tsx +0 -691
- package/src/components/data-display/Chart/Chart.stories.tsx +0 -568
- package/src/components/data-display/Chart/Chart.test.stories.tsx +0 -174
- package/src/components/data-display/Chart/SpecChart.stories.tsx +0 -150
- package/src/components/data-display/Chart/SpecChart.test.stories.tsx +0 -56
- package/src/components/data-display/Chart/__tests__/SpecChart.test.tsx +0 -60
- package/src/components/data-display/Chart/__tests__/chart-format.test.ts +0 -43
- package/src/components/data-display/Chart/__tests__/chart-spec.test.ts +0 -119
- package/src/components/data-display/Chip/Chip.stories.tsx +0 -252
- package/src/components/data-display/Chip/Chip.test.stories.tsx +0 -266
- package/src/components/data-display/DataGrid/DataGrid.stories.tsx +0 -515
- package/src/components/data-display/DataGrid/DataGrid.test.stories.tsx +0 -653
- package/src/components/data-display/DataViews/__tests__/DataViewsGrid.test.tsx +0 -271
- package/src/components/data-display/DataViews/__tests__/DataViewsTableBase.test.tsx +0 -134
- package/src/components/data-display/DataViews/__tests__/SaveViewModal.test.tsx +0 -83
- package/src/components/data-display/DataViews/__tests__/data-views-filter.test.ts +0 -115
- package/src/components/data-display/DataViews/__tests__/data-views-preview.test.ts +0 -53
- package/src/components/data-display/DataViews/__tests__/range-pill.test.tsx +0 -114
- package/src/components/data-display/DataViews/base-card.stories.tsx +0 -136
- package/src/components/data-display/DescriptionItem/DescriptionItem.stories.tsx +0 -254
- package/src/components/data-display/EmptyState/EmptyState.stories.tsx +0 -282
- package/src/components/data-display/EmptyState/EmptyState.test.stories.tsx +0 -441
- package/src/components/data-display/ErrorState/ErrorState.stories.tsx +0 -110
- package/src/components/data-display/ErrorState/ErrorState.test.stories.tsx +0 -133
- package/src/components/data-display/HoverCard/HoverCard.stories.tsx +0 -650
- package/src/components/data-display/HoverCard/HoverCard.test.stories.tsx +0 -929
- package/src/components/data-display/InteractiveTooltip/InteractiveTooltip.stories.tsx +0 -411
- package/src/components/data-display/LazyImage/LazyImage.stories.tsx +0 -387
- package/src/components/data-display/Lightbox/Lightbox.stories.tsx +0 -315
- package/src/components/data-display/Lightbox/Lightbox.test.stories.tsx +0 -598
- package/src/components/data-display/LoadingState/LoadingState.stories.tsx +0 -124
- package/src/components/data-display/LoadingState/LoadingState.test.stories.tsx +0 -99
- package/src/components/data-display/MapPreview/MapPreview.stories.tsx +0 -458
- package/src/components/data-display/MapPreview/MapPreview.test.stories.tsx +0 -394
- package/src/components/data-display/Popover/Popover.stories.tsx +0 -295
- package/src/components/data-display/Popover/Popover.test.stories.tsx +0 -1162
- package/src/components/data-display/Progress/Progress.stories.tsx +0 -481
- package/src/components/data-display/Progress/Progress.test.stories.tsx +0 -2070
- package/src/components/data-display/SectionOnboarding/SectionOnboarding.stories.tsx +0 -160
- package/src/components/data-display/SectionOnboarding/SectionOnboarding.test.stories.tsx +0 -190
- package/src/components/data-display/Sheet/Sheet.stories.tsx +0 -883
- package/src/components/data-display/Sheet/Sheet.test.stories.tsx +0 -1101
- package/src/components/data-display/StatCard/StatCard.stories.tsx +0 -167
- package/src/components/data-display/StatCard/StatCard.test.stories.tsx +0 -240
- package/src/components/data-display/Stepper/Stepper.stories.tsx +0 -540
- package/src/components/data-display/Stepper/Stepper.test.stories.tsx +0 -600
- package/src/components/data-display/Table/Table.stories.tsx +0 -803
- package/src/components/data-display/Table/Table.test.stories.tsx +0 -369
- package/src/components/data-display/Timeline/Timeline.stories.tsx +0 -442
- package/src/components/data-display/Timeline/Timeline.test.stories.tsx +0 -930
- package/src/components/data-display/TimingDiagram/TimingDiagram.stories.tsx +0 -475
- package/src/components/data-display/TimingDiagram/TimingDiagram.test.stories.tsx +0 -734
- package/src/components/data-display/Tooltip/Tooltip.stories.tsx +0 -468
- package/src/components/data-display/Tooltip/Tooltip.test.stories.tsx +0 -1154
- package/src/components/feedback/ConfirmAction/ConfirmAction.stories.tsx +0 -146
- package/src/components/feedback/ConfirmAction/ConfirmAction.test.stories.tsx +0 -114
- package/src/components/feedback/ConfirmAction/__tests__/confirm-action.test.tsx +0 -288
- package/src/components/feedback/Dialog/Dialog.stories.tsx +0 -833
- package/src/components/feedback/Dialog/Dialog.test.stories.tsx +0 -955
- package/src/components/feedback/Dialog/__tests__/dialog-content-spacing.test.tsx +0 -66
- package/src/components/feedback/Modal/Modal.stories.tsx +0 -765
- package/src/components/feedback/Modal/Modal.test.stories.tsx +0 -251
- package/src/components/feedback/Sonner/Sonner.stories.tsx +0 -698
- package/src/components/feedback/Sonner/Sonner.test.stories.tsx +0 -896
- package/src/components/feedback/StackedModal/StackedModal.stories.tsx +0 -1783
- package/src/components/feedback/StackedModal/StackedModal.test.stories.tsx +0 -975
- package/src/components/feedback/StackedModal/__tests__/stacked-modal-viewport.test.tsx +0 -104
- package/src/components/feedback/Toast/Toast.stories.tsx +0 -548
- package/src/components/feedback/Toast/Toast.test.stories.tsx +0 -834
- package/src/components/feedback/TutorialOverlay/TutorialOverlay.stories.tsx +0 -691
- package/src/components/feedback/TutorialOverlay/TutorialOverlay.test.stories.tsx +0 -634
- package/src/components/form/AddressAutocomplete/AddressAutocomplete.stories.tsx +0 -665
- package/src/components/form/AddressAutocomplete/AddressAutocomplete.test.stories.tsx +0 -727
- package/src/components/form/Autocomplete/Autocomplete.stories.tsx +0 -715
- package/src/components/form/Autocomplete/Autocomplete.test.stories.tsx +0 -825
- package/src/components/form/Button/Button.stories.tsx +0 -365
- package/src/components/form/Button/Button.test.stories.tsx +0 -607
- package/src/components/form/Calendar/Calendar.stories.tsx +0 -349
- package/src/components/form/Calendar/Calendar.test.stories.tsx +0 -464
- package/src/components/form/CepField/CepField.stories.tsx +0 -138
- package/src/components/form/CepField/CepField.test.stories.tsx +0 -281
- package/src/components/form/Checkbox/Checkbox.stories.tsx +0 -265
- package/src/components/form/Checkbox/Checkbox.test.stories.tsx +0 -181
- package/src/components/form/CodeEditor/CodeEditor.stories.tsx +0 -871
- package/src/components/form/CodeEditor/CodeEditor.test.stories.tsx +0 -574
- package/src/components/form/Command/Command.stories.tsx +0 -580
- package/src/components/form/Command/Command.test.stories.tsx +0 -215
- package/src/components/form/CreatableSelect/CreatableSelect.stories.tsx +0 -112
- package/src/components/form/CreatableSelect/CreatableSelect.test.stories.tsx +0 -134
- package/src/components/form/Form/Form.stories.tsx +0 -687
- package/src/components/form/Form/Form.test.stories.tsx +0 -601
- package/src/components/form/Input/Input.stories.tsx +0 -260
- package/src/components/form/Input/Input.test.stories.tsx +0 -1191
- package/src/components/form/InputOTP/InputOTP.stories.tsx +0 -774
- package/src/components/form/InputOTP/InputOTP.test.stories.tsx +0 -588
- package/src/components/form/Label/Label.stories.tsx +0 -473
- package/src/components/form/Label/Label.test.stories.tsx +0 -909
- package/src/components/form/Menubar/Menubar.stories.tsx +0 -472
- package/src/components/form/Menubar/Menubar.test.stories.tsx +0 -584
- package/src/components/form/PasswordStrength/PasswordStrength.stories.tsx +0 -562
- package/src/components/form/PasswordStrength/PasswordStrength.test.stories.tsx +0 -327
- package/src/components/form/PhoneInput/PhoneInput.stories.tsx +0 -495
- package/src/components/form/PhoneInput/PhoneInput.test.stories.tsx +0 -666
- package/src/components/form/RadioGroup/RadioGroup.stories.tsx +0 -518
- package/src/components/form/RadioGroup/RadioGroup.test.stories.tsx +0 -685
- package/src/components/form/RichTextEditor/RichTextEditor.stories.tsx +0 -261
- package/src/components/form/RichTextEditor/RichTextEditor.test.stories.tsx +0 -491
- package/src/components/form/SearchPalette/SearchPalette.stories.tsx +0 -135
- package/src/components/form/Select/Select.stories.tsx +0 -364
- package/src/components/form/Select/Select.test.stories.tsx +0 -985
- package/src/components/form/Slider/Slider.stories.tsx +0 -418
- package/src/components/form/Slider/Slider.test.stories.tsx +0 -1042
- package/src/components/form/Switch/Switch.stories.tsx +0 -697
- package/src/components/form/Switch/Switch.test.stories.tsx +0 -597
- package/src/components/form/Textarea/Textarea.stories.tsx +0 -473
- package/src/components/form/Textarea/Textarea.test.stories.tsx +0 -702
- package/src/components/form/Toggle/Toggle.stories.tsx +0 -638
- package/src/components/form/Toggle/Toggle.test.stories.tsx +0 -1159
- package/src/components/form/ToggleGroup/ToggleGroup.stories.tsx +0 -617
- package/src/components/form/ToggleGroup/ToggleGroup.test.stories.tsx +0 -918
- package/src/components/form/UploadButton/UploadButton.stories.tsx +0 -367
- package/src/components/form/UploadButton/UploadButton.test.stories.tsx +0 -573
- package/src/components/form/total-form/total-form.test.tsx +0 -214
- package/src/components/layout/Accordion/Accordion.stories.tsx +0 -694
- package/src/components/layout/Accordion/Accordion.test.stories.tsx +0 -1344
- package/src/components/layout/Card/Card.stories.tsx +0 -591
- package/src/components/layout/Card/Card.test.stories.tsx +0 -1134
- package/src/components/layout/CardGrid/__tests__/CardGrid.test.tsx +0 -92
- package/src/components/layout/Collapsible/Collapsible.stories.tsx +0 -180
- package/src/components/layout/Collapsible/Collapsible.test.stories.tsx +0 -308
- package/src/components/layout/Container/Container.stories.tsx +0 -557
- package/src/components/layout/Container/Container.test.stories.tsx +0 -745
- package/src/components/layout/ContentToolbar/ContentToolbar.stories.tsx +0 -129
- package/src/components/layout/ContentToolbar/ContentToolbar.test.stories.tsx +0 -251
- package/src/components/layout/ContentToolbar/__tests__/ColumnsMenu.test.tsx +0 -39
- package/src/components/layout/ContentToolbar/__tests__/MultiSelectDropdown.test.tsx +0 -131
- package/src/components/layout/ContentToolbar/__tests__/SavedViewsMenu.test.tsx +0 -99
- package/src/components/layout/Dashboard/Dashboard.stories.tsx +0 -104
- package/src/components/layout/Dashboard/Dashboard.test.stories.tsx +0 -190
- package/src/components/layout/Drawer/Drawer.stories.tsx +0 -658
- package/src/components/layout/Drawer/Drawer.test.stories.tsx +0 -1343
- package/src/components/layout/Resizable/Resizable.stories.tsx +0 -1039
- package/src/components/layout/Resizable/Resizable.test.stories.tsx +0 -750
- package/src/components/layout/ScrollArea/ScrollArea.stories.tsx +0 -651
- package/src/components/layout/ScrollArea/ScrollArea.test.stories.tsx +0 -619
- package/src/components/layout/Separator/Separator.stories.tsx +0 -563
- package/src/components/layout/Separator/Separator.test.stories.tsx +0 -518
- package/src/components/layout/SettingsLayout/SettingsLayout.stories.tsx +0 -192
- package/src/components/layout/SettingsLayout/SettingsLayout.test.stories.tsx +0 -175
- package/src/components/layout/Sidebar/Sidebar.stories.tsx +0 -609
- package/src/components/layout/Sidebar/Sidebar.test.stories.tsx +0 -1324
- package/src/components/layout/Skeleton/Skeleton.stories.tsx +0 -689
- package/src/components/layout/Skeleton/Skeleton.test.stories.tsx +0 -521
- package/src/components/layout/Spacer/Spacer.stories.tsx +0 -502
- package/src/components/layout/Spacer/Spacer.test.stories.tsx +0 -472
- package/src/components/layout/TableFilter/TableFilter.stories.tsx +0 -82
- package/src/components/layout/TableFilter/TableFilter.test.stories.tsx +0 -87
- package/src/components/navigation/Breadcrumbs/Breadcrumbs.stories.tsx +0 -638
- package/src/components/navigation/Breadcrumbs/Breadcrumbs.test.stories.tsx +0 -1008
- package/src/components/navigation/CommandPalette/CommandPalette.stories.tsx +0 -386
- package/src/components/navigation/CommandPalette/CommandPalette.test.stories.tsx +0 -435
- package/src/components/navigation/ContextMenu/ContextMenu.stories.tsx +0 -614
- package/src/components/navigation/ContextMenu/ContextMenu.test.stories.tsx +0 -845
- package/src/components/navigation/DropdownMenu/DropdownMenu.stories.tsx +0 -578
- package/src/components/navigation/DropdownMenu/DropdownMenu.test.stories.tsx +0 -660
- package/src/components/navigation/NavigationMenu/stories/NavigationMenu.stories.tsx +0 -516
- package/src/components/navigation/NavigationMenu/stories/NavigationMenu.test.stories.tsx +0 -935
- package/src/components/navigation/NavigationMenu/stories/NavigationMenuHorizontal.stories.tsx +0 -501
- package/src/components/navigation/NavigationMenu/stories/NavigationMenuVertical.stories.tsx +0 -453
- package/src/components/navigation/Pagination/Pagination.stories.tsx +0 -602
- package/src/components/navigation/Pagination/Pagination.test.stories.tsx +0 -520
- package/src/components/navigation/Tabs/Tabs.stories.tsx +0 -1004
- package/src/components/navigation/Tabs/Tabs.test.stories.tsx +0 -1225
- package/src/components/typography/Blockquote/Blockquote.stories.tsx +0 -359
- package/src/components/typography/Blockquote/Blockquote.test.stories.tsx +0 -432
- package/src/components/typography/Code/Code.stories.tsx +0 -686
- package/src/components/typography/Code/Code.test.stories.tsx +0 -703
- package/src/components/typography/Heading/Heading.stories.tsx +0 -451
- package/src/components/typography/Heading/Heading.test.stories.tsx +0 -830
- package/src/components/typography/Paragraph/Paragraph.stories.tsx +0 -280
- package/src/components/typography/Paragraph/Paragraph.test.stories.tsx +0 -231
- package/src/components/typography/Text/Text.stories.tsx +0 -359
- package/src/components/typography/Text/Text.test.stories.tsx +0 -762
- package/src/components/utility/AnimatedIcon/AnimatedIcon.stories.tsx +0 -945
- package/src/components/utility/AnimatedIcon/AnimatedIcon.test.stories.tsx +0 -603
- package/src/components/utility/AspectRatio/AspectRatio.stories.tsx +0 -414
- package/src/components/utility/AspectRatio/AspectRatio.test.stories.tsx +0 -859
- package/src/components/utility/InfiniteScroll/InfiniteScroll.stories.tsx +0 -620
- package/src/components/utility/InfiniteScroll/InfiniteScroll.test.stories.tsx +0 -361
- package/src/components/utility/InstallPrompt/InstallPrompt.stories.tsx +0 -118
- package/src/components/utility/InstallPrompt/InstallPrompt.test.stories.tsx +0 -83
- package/src/components/utility/InstallPrompt/__tests__/InstallPrompt.ios.test.tsx +0 -65
- package/src/components/utility/InstallPrompt/__tests__/usePwaInstall.test.tsx +0 -271
- package/src/components/utility/Portal/Portal.stories.tsx +0 -340
- package/src/components/utility/Portal/Portal.test.stories.tsx +0 -2086
- package/src/components/utility/Transition/Transition.stories.tsx +0 -493
- package/src/components/utility/Transition/Transition.test.stories.tsx +0 -854
- package/src/components/utility/VirtualList/VirtualList.stories.tsx +0 -1073
- package/src/components/utility/VirtualList/VirtualList.test.stories.tsx +0 -1085
- package/src/components/utility/WorkflowStep/WorkflowStep.stories.tsx +0 -431
- package/src/components/utility/WorkflowStep/WorkflowStep.test.stories.tsx +0 -364
- /package/src/{button.tsx → button/button.tsx} +0 -0
|
@@ -1,563 +0,0 @@
|
|
|
1
|
-
import { Box, Card, CardContent,Stack, Typography } from '@mui/material';
|
|
2
|
-
import type { Meta, StoryObj } from '@storybook/react-vite';
|
|
3
|
-
|
|
4
|
-
import { Separator } from './Separator';
|
|
5
|
-
|
|
6
|
-
const meta: Meta<typeof Separator> = {
|
|
7
|
-
title: 'Layout/Separator',
|
|
8
|
-
component: Separator,
|
|
9
|
-
parameters: {
|
|
10
|
-
layout: 'padded',
|
|
11
|
-
},
|
|
12
|
-
tags: ['autodocs', 'component:Separator'],
|
|
13
|
-
argTypes: {
|
|
14
|
-
variant: {
|
|
15
|
-
control: { type: 'select' },
|
|
16
|
-
options: ['solid', 'dashed', 'dotted', 'gradient'],
|
|
17
|
-
},
|
|
18
|
-
orientation: {
|
|
19
|
-
control: { type: 'select' },
|
|
20
|
-
options: ['horizontal', 'vertical'],
|
|
21
|
-
},
|
|
22
|
-
size: {
|
|
23
|
-
control: { type: 'select' },
|
|
24
|
-
options: ['xs', 'sm', 'md', 'lg', 'xl'],
|
|
25
|
-
},
|
|
26
|
-
color: {
|
|
27
|
-
control: { type: 'color' },
|
|
28
|
-
},
|
|
29
|
-
},
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
export default meta;
|
|
33
|
-
type Story = StoryObj<typeof meta>;
|
|
34
|
-
|
|
35
|
-
export const Default: Story = {
|
|
36
|
-
args: {
|
|
37
|
-
variant: 'solid',
|
|
38
|
-
orientation: 'horizontal',
|
|
39
|
-
size: 'md',
|
|
40
|
-
},
|
|
41
|
-
render: (args) => (
|
|
42
|
-
<Box sx={{ width: '100%' }}>
|
|
43
|
-
<Typography>Content above separator</Typography>
|
|
44
|
-
<Separator {...args} />
|
|
45
|
-
<Typography>Content below separator</Typography>
|
|
46
|
-
</Box>
|
|
47
|
-
),
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
export const AllVariants: Story = {
|
|
51
|
-
render: () => (
|
|
52
|
-
<Stack spacing={4}>
|
|
53
|
-
<Box>
|
|
54
|
-
<Typography variant="h6" gutterBottom>
|
|
55
|
-
Solid Separator
|
|
56
|
-
</Typography>
|
|
57
|
-
<Typography>Content before</Typography>
|
|
58
|
-
<Separator variant="solid" />
|
|
59
|
-
<Typography>Content after</Typography>
|
|
60
|
-
</Box>
|
|
61
|
-
|
|
62
|
-
<Box>
|
|
63
|
-
<Typography variant="h6" gutterBottom>
|
|
64
|
-
Dashed Separator
|
|
65
|
-
</Typography>
|
|
66
|
-
<Typography>Content before</Typography>
|
|
67
|
-
<Separator variant="dashed" />
|
|
68
|
-
<Typography>Content after</Typography>
|
|
69
|
-
</Box>
|
|
70
|
-
|
|
71
|
-
<Box>
|
|
72
|
-
<Typography variant="h6" gutterBottom>
|
|
73
|
-
Dotted Separator
|
|
74
|
-
</Typography>
|
|
75
|
-
<Typography>Content before</Typography>
|
|
76
|
-
<Separator variant="dotted" />
|
|
77
|
-
<Typography>Content after</Typography>
|
|
78
|
-
</Box>
|
|
79
|
-
|
|
80
|
-
<Box>
|
|
81
|
-
<Typography variant="h6" gutterBottom>
|
|
82
|
-
Gradient Separator
|
|
83
|
-
</Typography>
|
|
84
|
-
<Typography>Content before</Typography>
|
|
85
|
-
<Separator variant="gradient" />
|
|
86
|
-
<Typography>Content after</Typography>
|
|
87
|
-
</Box>
|
|
88
|
-
</Stack>
|
|
89
|
-
),
|
|
90
|
-
};
|
|
91
|
-
|
|
92
|
-
export const AllSizes: Story = {
|
|
93
|
-
render: () => (
|
|
94
|
-
<Stack spacing={4}>
|
|
95
|
-
{(['xs', 'sm', 'md', 'lg', 'xl'] as const).map((size) => (
|
|
96
|
-
<Box key={size}>
|
|
97
|
-
<Typography variant="h6" gutterBottom>
|
|
98
|
-
{size.toUpperCase()} Size
|
|
99
|
-
</Typography>
|
|
100
|
-
<Typography>Content before</Typography>
|
|
101
|
-
<Separator size={size} />
|
|
102
|
-
<Typography>Content after</Typography>
|
|
103
|
-
</Box>
|
|
104
|
-
))}
|
|
105
|
-
</Stack>
|
|
106
|
-
),
|
|
107
|
-
};
|
|
108
|
-
|
|
109
|
-
export const VerticalSeparators: Story = {
|
|
110
|
-
render: () => (
|
|
111
|
-
<Stack spacing={4}>
|
|
112
|
-
<Box>
|
|
113
|
-
<Typography variant="h6" gutterBottom>
|
|
114
|
-
Vertical Separators
|
|
115
|
-
</Typography>
|
|
116
|
-
<Box sx={{ display: 'flex', alignItems: 'center', height: 100 }}>
|
|
117
|
-
<Typography>Left</Typography>
|
|
118
|
-
<Separator orientation="vertical" />
|
|
119
|
-
<Typography>Middle</Typography>
|
|
120
|
-
<Separator orientation="vertical" variant="dashed" />
|
|
121
|
-
<Typography>Right</Typography>
|
|
122
|
-
</Box>
|
|
123
|
-
</Box>
|
|
124
|
-
|
|
125
|
-
<Box>
|
|
126
|
-
<Typography variant="h6" gutterBottom>
|
|
127
|
-
Different Vertical Sizes
|
|
128
|
-
</Typography>
|
|
129
|
-
<Box sx={{ display: 'flex', alignItems: 'center', gap: 2, height: 80 }}>
|
|
130
|
-
<Typography>XS</Typography>
|
|
131
|
-
<Separator orientation="vertical" size="xs" />
|
|
132
|
-
<Typography>SM</Typography>
|
|
133
|
-
<Separator orientation="vertical" size="sm" />
|
|
134
|
-
<Typography>MD</Typography>
|
|
135
|
-
<Separator orientation="vertical" size="md" />
|
|
136
|
-
<Typography>LG</Typography>
|
|
137
|
-
<Separator orientation="vertical" size="lg" />
|
|
138
|
-
<Typography>XL</Typography>
|
|
139
|
-
<Separator orientation="vertical" size="xl" />
|
|
140
|
-
<Typography>End</Typography>
|
|
141
|
-
</Box>
|
|
142
|
-
</Box>
|
|
143
|
-
</Stack>
|
|
144
|
-
),
|
|
145
|
-
};
|
|
146
|
-
|
|
147
|
-
export const WithText: Story = {
|
|
148
|
-
render: () => (
|
|
149
|
-
<Stack spacing={4}>
|
|
150
|
-
<Box>
|
|
151
|
-
<Typography variant="h6" gutterBottom>
|
|
152
|
-
Horizontal Separator with Text
|
|
153
|
-
</Typography>
|
|
154
|
-
<Typography>Before separator</Typography>
|
|
155
|
-
<Separator>OR</Separator>
|
|
156
|
-
<Typography>After separator</Typography>
|
|
157
|
-
</Box>
|
|
158
|
-
|
|
159
|
-
<Box>
|
|
160
|
-
<Typography variant="h6" gutterBottom>
|
|
161
|
-
Different Variants with Text
|
|
162
|
-
</Typography>
|
|
163
|
-
<Typography>Section 1</Typography>
|
|
164
|
-
<Separator variant="dashed">Section Break</Separator>
|
|
165
|
-
<Typography>Section 2</Typography>
|
|
166
|
-
<Separator variant="gradient">Gradient Divider</Separator>
|
|
167
|
-
<Typography>Section 3</Typography>
|
|
168
|
-
</Box>
|
|
169
|
-
|
|
170
|
-
<Box>
|
|
171
|
-
<Typography variant="h6" gutterBottom>
|
|
172
|
-
Vertical Separator with Text
|
|
173
|
-
</Typography>
|
|
174
|
-
<Box sx={{ display: 'flex', alignItems: 'center', height: 120 }}>
|
|
175
|
-
<Typography>Left Content</Typography>
|
|
176
|
-
<Separator orientation="vertical">OR</Separator>
|
|
177
|
-
<Typography>Right Content</Typography>
|
|
178
|
-
</Box>
|
|
179
|
-
</Box>
|
|
180
|
-
</Stack>
|
|
181
|
-
),
|
|
182
|
-
};
|
|
183
|
-
|
|
184
|
-
export const CardExample: Story = {
|
|
185
|
-
render: () => (
|
|
186
|
-
<Card sx={{ maxWidth: 400 }}>
|
|
187
|
-
<CardContent>
|
|
188
|
-
<Typography variant="h6" gutterBottom>
|
|
189
|
-
User Profile
|
|
190
|
-
</Typography>
|
|
191
|
-
<Typography variant="body2" color="text.secondary">
|
|
192
|
-
Basic information about the user account and preferences.
|
|
193
|
-
</Typography>
|
|
194
|
-
|
|
195
|
-
<Separator margin={16}>Account Details</Separator>
|
|
196
|
-
|
|
197
|
-
<Typography variant="body2" paragraph>
|
|
198
|
-
Name: John Doe
|
|
199
|
-
<br />
|
|
200
|
-
Email: john.doe@example.com
|
|
201
|
-
<br />
|
|
202
|
-
Role: Administrator
|
|
203
|
-
</Typography>
|
|
204
|
-
|
|
205
|
-
<Separator variant="dashed" margin={16}>
|
|
206
|
-
Settings
|
|
207
|
-
</Separator>
|
|
208
|
-
|
|
209
|
-
<Typography variant="body2" paragraph>
|
|
210
|
-
Theme: Dark Mode
|
|
211
|
-
<br />
|
|
212
|
-
Language: English
|
|
213
|
-
<br />
|
|
214
|
-
Timezone: UTC-5
|
|
215
|
-
</Typography>
|
|
216
|
-
|
|
217
|
-
<Separator variant="gradient" margin={16} />
|
|
218
|
-
|
|
219
|
-
<Typography variant="caption" color="text.secondary">
|
|
220
|
-
Last updated: March 15, 2024
|
|
221
|
-
</Typography>
|
|
222
|
-
</CardContent>
|
|
223
|
-
</Card>
|
|
224
|
-
),
|
|
225
|
-
};
|
|
226
|
-
|
|
227
|
-
export const FormExample: Story = {
|
|
228
|
-
render: () => (
|
|
229
|
-
<Box sx={{ maxWidth: 500, mx: 'auto' }}>
|
|
230
|
-
<Typography variant="h5" gutterBottom>
|
|
231
|
-
Contact Form
|
|
232
|
-
</Typography>
|
|
233
|
-
|
|
234
|
-
<Typography variant="body1" paragraph>
|
|
235
|
-
Please fill out the form below and we'll get back to you.
|
|
236
|
-
</Typography>
|
|
237
|
-
|
|
238
|
-
<Separator>Personal Information</Separator>
|
|
239
|
-
|
|
240
|
-
<Box sx={{ my: 3 }}>
|
|
241
|
-
<Typography variant="body2" gutterBottom>
|
|
242
|
-
This section contains fields for your personal details.
|
|
243
|
-
</Typography>
|
|
244
|
-
</Box>
|
|
245
|
-
|
|
246
|
-
<Separator variant="dashed">Contact Details</Separator>
|
|
247
|
-
|
|
248
|
-
<Box sx={{ my: 3 }}>
|
|
249
|
-
<Typography variant="body2" gutterBottom>
|
|
250
|
-
Please provide your contact information.
|
|
251
|
-
</Typography>
|
|
252
|
-
</Box>
|
|
253
|
-
|
|
254
|
-
<Separator variant="gradient">Message</Separator>
|
|
255
|
-
|
|
256
|
-
<Box sx={{ my: 3 }}>
|
|
257
|
-
<Typography variant="body2" gutterBottom>
|
|
258
|
-
Tell us how we can help you.
|
|
259
|
-
</Typography>
|
|
260
|
-
</Box>
|
|
261
|
-
</Box>
|
|
262
|
-
),
|
|
263
|
-
};
|
|
264
|
-
|
|
265
|
-
export const CustomColors: Story = {
|
|
266
|
-
render: () => (
|
|
267
|
-
<Stack spacing={4}>
|
|
268
|
-
<Box>
|
|
269
|
-
<Typography variant="h6" gutterBottom>
|
|
270
|
-
Custom Colors
|
|
271
|
-
</Typography>
|
|
272
|
-
<Typography>Primary color</Typography>
|
|
273
|
-
<Separator color="#1976d2" />
|
|
274
|
-
<Typography>Secondary color</Typography>
|
|
275
|
-
<Separator color="#dc004e" />
|
|
276
|
-
<Typography>Success color</Typography>
|
|
277
|
-
<Separator color="#2e7d32" variant="dashed" />
|
|
278
|
-
<Typography>Warning color</Typography>
|
|
279
|
-
<Separator color="#ed6c02" variant="dotted" />
|
|
280
|
-
</Box>
|
|
281
|
-
</Stack>
|
|
282
|
-
),
|
|
283
|
-
};
|
|
284
|
-
|
|
285
|
-
export const CustomLengthAndMargin: Story = {
|
|
286
|
-
render: () => (
|
|
287
|
-
<Stack spacing={4}>
|
|
288
|
-
<Box>
|
|
289
|
-
<Typography variant="h6" gutterBottom>
|
|
290
|
-
Custom Length
|
|
291
|
-
</Typography>
|
|
292
|
-
<Typography>50% width separator</Typography>
|
|
293
|
-
<Separator length="50%" />
|
|
294
|
-
<Typography>200px width separator</Typography>
|
|
295
|
-
<Separator length="200px" />
|
|
296
|
-
<Typography>Full width (default)</Typography>
|
|
297
|
-
<Separator />
|
|
298
|
-
</Box>
|
|
299
|
-
|
|
300
|
-
<Box>
|
|
301
|
-
<Typography variant="h6" gutterBottom>
|
|
302
|
-
Custom Margin
|
|
303
|
-
</Typography>
|
|
304
|
-
<Typography>No margin</Typography>
|
|
305
|
-
<Separator margin={0} />
|
|
306
|
-
<Typography>Large margin (32px)</Typography>
|
|
307
|
-
<Separator margin="32px" />
|
|
308
|
-
<Typography>Small margin (4px)</Typography>
|
|
309
|
-
<Separator margin="4px" />
|
|
310
|
-
</Box>
|
|
311
|
-
</Stack>
|
|
312
|
-
),
|
|
313
|
-
};
|
|
314
|
-
|
|
315
|
-
export const EdgeCases: Story = {
|
|
316
|
-
render: () => (
|
|
317
|
-
<Stack spacing={4}>
|
|
318
|
-
<Box>
|
|
319
|
-
<Typography variant="h6" gutterBottom>
|
|
320
|
-
Long Text Content
|
|
321
|
-
</Typography>
|
|
322
|
-
<Typography>Before separator</Typography>
|
|
323
|
-
<Separator>
|
|
324
|
-
This is a very long text that should be handled gracefully by the separator component
|
|
325
|
-
</Separator>
|
|
326
|
-
<Typography>After separator</Typography>
|
|
327
|
-
</Box>
|
|
328
|
-
|
|
329
|
-
<Box>
|
|
330
|
-
<Typography variant="h6" gutterBottom>
|
|
331
|
-
Empty Text Content
|
|
332
|
-
</Typography>
|
|
333
|
-
<Typography>Before separator</Typography>
|
|
334
|
-
<Separator>{''}</Separator>
|
|
335
|
-
<Typography>After separator</Typography>
|
|
336
|
-
</Box>
|
|
337
|
-
|
|
338
|
-
<Box>
|
|
339
|
-
<Typography variant="h6" gutterBottom>
|
|
340
|
-
Nested Content
|
|
341
|
-
</Typography>
|
|
342
|
-
<Typography>Complex content</Typography>
|
|
343
|
-
<Separator>
|
|
344
|
-
<Box component="span" sx={{ fontWeight: 'bold', color: 'primary.main' }}>
|
|
345
|
-
Formatted Text
|
|
346
|
-
</Box>
|
|
347
|
-
</Separator>
|
|
348
|
-
<Typography>More content</Typography>
|
|
349
|
-
</Box>
|
|
350
|
-
</Stack>
|
|
351
|
-
),
|
|
352
|
-
};
|
|
353
|
-
|
|
354
|
-
export const AllStates: Story = {
|
|
355
|
-
render: () => (
|
|
356
|
-
<Stack spacing={4}>
|
|
357
|
-
<Box>
|
|
358
|
-
<Typography variant="h6" gutterBottom>
|
|
359
|
-
Default State
|
|
360
|
-
</Typography>
|
|
361
|
-
<Typography>Content above</Typography>
|
|
362
|
-
<Separator />
|
|
363
|
-
<Typography>Content below</Typography>
|
|
364
|
-
</Box>
|
|
365
|
-
|
|
366
|
-
<Box>
|
|
367
|
-
<Typography variant="h6" gutterBottom>
|
|
368
|
-
With Text State
|
|
369
|
-
</Typography>
|
|
370
|
-
<Typography>Content above</Typography>
|
|
371
|
-
<Separator>Section Break</Separator>
|
|
372
|
-
<Typography>Content below</Typography>
|
|
373
|
-
</Box>
|
|
374
|
-
|
|
375
|
-
<Box>
|
|
376
|
-
<Typography variant="h6" gutterBottom>
|
|
377
|
-
Custom Color State
|
|
378
|
-
</Typography>
|
|
379
|
-
<Typography>Content above</Typography>
|
|
380
|
-
<Separator color="#1976d2" />
|
|
381
|
-
<Typography>Content below</Typography>
|
|
382
|
-
</Box>
|
|
383
|
-
|
|
384
|
-
<Box>
|
|
385
|
-
<Typography variant="h6" gutterBottom>
|
|
386
|
-
Custom Length State
|
|
387
|
-
</Typography>
|
|
388
|
-
<Typography>Content above</Typography>
|
|
389
|
-
<Separator length="50%" />
|
|
390
|
-
<Typography>Content below</Typography>
|
|
391
|
-
</Box>
|
|
392
|
-
|
|
393
|
-
<Box>
|
|
394
|
-
<Typography variant="h6" gutterBottom>
|
|
395
|
-
Custom Margin State
|
|
396
|
-
</Typography>
|
|
397
|
-
<Typography>Content above</Typography>
|
|
398
|
-
<Separator margin={32} />
|
|
399
|
-
<Typography>Content below</Typography>
|
|
400
|
-
</Box>
|
|
401
|
-
</Stack>
|
|
402
|
-
),
|
|
403
|
-
};
|
|
404
|
-
|
|
405
|
-
export const InteractiveStates: Story = {
|
|
406
|
-
render: () => (
|
|
407
|
-
<Stack spacing={4}>
|
|
408
|
-
<Box>
|
|
409
|
-
<Typography variant="h6" gutterBottom>
|
|
410
|
-
Hover Effect (Custom Color)
|
|
411
|
-
</Typography>
|
|
412
|
-
<Typography>Hover over the separator below</Typography>
|
|
413
|
-
<Separator
|
|
414
|
-
color="#1976d2"
|
|
415
|
-
sx={{
|
|
416
|
-
'&:hover': {
|
|
417
|
-
opacity: 0.7,
|
|
418
|
-
transition: 'opacity 0.2s ease-in-out',
|
|
419
|
-
},
|
|
420
|
-
}}
|
|
421
|
-
/>
|
|
422
|
-
<Typography>Content after</Typography>
|
|
423
|
-
</Box>
|
|
424
|
-
|
|
425
|
-
<Box>
|
|
426
|
-
<Typography variant="h6" gutterBottom>
|
|
427
|
-
Focus State (For Accessibility)
|
|
428
|
-
</Typography>
|
|
429
|
-
<Typography>Tab-focusable separator with focus outline</Typography>
|
|
430
|
-
<Separator
|
|
431
|
-
sx={{
|
|
432
|
-
'&:focus': {
|
|
433
|
-
outline: '2px solid #1976d2',
|
|
434
|
-
outlineOffset: '2px',
|
|
435
|
-
},
|
|
436
|
-
}}
|
|
437
|
-
tabIndex={0}
|
|
438
|
-
/>
|
|
439
|
-
<Typography>Content after</Typography>
|
|
440
|
-
</Box>
|
|
441
|
-
|
|
442
|
-
<Box>
|
|
443
|
-
<Typography variant="h6" gutterBottom>
|
|
444
|
-
Animated Gradient
|
|
445
|
-
</Typography>
|
|
446
|
-
<Typography>Animated gradient separator</Typography>
|
|
447
|
-
<Separator
|
|
448
|
-
variant="gradient"
|
|
449
|
-
sx={{
|
|
450
|
-
position: 'relative',
|
|
451
|
-
overflow: 'hidden',
|
|
452
|
-
'&::before': {
|
|
453
|
-
content: '""',
|
|
454
|
-
position: 'absolute',
|
|
455
|
-
top: 0,
|
|
456
|
-
left: '-100%',
|
|
457
|
-
width: '100%',
|
|
458
|
-
height: '100%',
|
|
459
|
-
background:
|
|
460
|
-
'linear-gradient(90deg, transparent, rgba(25, 118, 210, 0.3), transparent)',
|
|
461
|
-
animation: 'shimmer 2s infinite',
|
|
462
|
-
},
|
|
463
|
-
'@keyframes shimmer': {
|
|
464
|
-
'0%': { left: '-100%' },
|
|
465
|
-
'100%': { left: '100%' },
|
|
466
|
-
},
|
|
467
|
-
}}
|
|
468
|
-
/>
|
|
469
|
-
<Typography>Content after</Typography>
|
|
470
|
-
</Box>
|
|
471
|
-
</Stack>
|
|
472
|
-
),
|
|
473
|
-
};
|
|
474
|
-
|
|
475
|
-
export const Responsive: Story = {
|
|
476
|
-
render: () => (
|
|
477
|
-
<Stack spacing={4}>
|
|
478
|
-
<Box>
|
|
479
|
-
<Typography variant="h6" gutterBottom>
|
|
480
|
-
Responsive Width
|
|
481
|
-
</Typography>
|
|
482
|
-
<Typography>This separator adjusts to container width</Typography>
|
|
483
|
-
<Separator
|
|
484
|
-
sx={{
|
|
485
|
-
width: {
|
|
486
|
-
xs: '100%', // Full width on mobile
|
|
487
|
-
sm: '80%', // 80% width on small screens
|
|
488
|
-
md: '60%', // 60% width on medium screens
|
|
489
|
-
lg: '40%', // 40% width on large screens
|
|
490
|
-
},
|
|
491
|
-
mx: 'auto', // Center the separator
|
|
492
|
-
}}
|
|
493
|
-
/>
|
|
494
|
-
<Typography>Content after</Typography>
|
|
495
|
-
</Box>
|
|
496
|
-
|
|
497
|
-
<Box>
|
|
498
|
-
<Typography variant="h6" gutterBottom>
|
|
499
|
-
Responsive Size
|
|
500
|
-
</Typography>
|
|
501
|
-
<Typography>Separator thickness changes with screen size</Typography>
|
|
502
|
-
<Separator
|
|
503
|
-
sx={{
|
|
504
|
-
borderTopWidth: {
|
|
505
|
-
xs: '1px', // Thin on mobile
|
|
506
|
-
sm: '2px', // Medium on small screens
|
|
507
|
-
md: '3px', // Thick on medium screens
|
|
508
|
-
lg: '4px', // Extra thick on large screens
|
|
509
|
-
},
|
|
510
|
-
}}
|
|
511
|
-
/>
|
|
512
|
-
<Typography>Content after</Typography>
|
|
513
|
-
</Box>
|
|
514
|
-
|
|
515
|
-
<Box>
|
|
516
|
-
<Typography variant="h6" gutterBottom>
|
|
517
|
-
Responsive Margin
|
|
518
|
-
</Typography>
|
|
519
|
-
<Typography>Separator margins adapt to screen size</Typography>
|
|
520
|
-
<Separator
|
|
521
|
-
sx={{
|
|
522
|
-
margin: {
|
|
523
|
-
xs: '8px 0', // Small margins on mobile
|
|
524
|
-
sm: '16px 0', // Medium margins on small screens
|
|
525
|
-
md: '24px 0', // Large margins on medium screens
|
|
526
|
-
lg: '32px 0', // Extra large margins on large screens
|
|
527
|
-
},
|
|
528
|
-
}}
|
|
529
|
-
/>
|
|
530
|
-
<Typography>Content after</Typography>
|
|
531
|
-
</Box>
|
|
532
|
-
|
|
533
|
-
<Box>
|
|
534
|
-
<Typography variant="h6" gutterBottom>
|
|
535
|
-
Responsive Orientation
|
|
536
|
-
</Typography>
|
|
537
|
-
<Typography>Changes from horizontal to vertical on mobile</Typography>
|
|
538
|
-
<Box
|
|
539
|
-
sx={{
|
|
540
|
-
display: 'flex',
|
|
541
|
-
flexDirection: { xs: 'column', md: 'row' },
|
|
542
|
-
alignItems: 'center',
|
|
543
|
-
height: { xs: 'auto', md: 60 },
|
|
544
|
-
gap: 2,
|
|
545
|
-
}}
|
|
546
|
-
>
|
|
547
|
-
<Typography>Left Content</Typography>
|
|
548
|
-
<Separator
|
|
549
|
-
orientation="horizontal"
|
|
550
|
-
sx={{
|
|
551
|
-
// On mobile (xs), show as horizontal
|
|
552
|
-
// On desktop (md+), show as vertical
|
|
553
|
-
transform: { xs: 'none', md: 'rotate(90deg)' },
|
|
554
|
-
height: { xs: '1px', md: '60px' },
|
|
555
|
-
width: { xs: '100%', md: '1px' },
|
|
556
|
-
}}
|
|
557
|
-
/>
|
|
558
|
-
<Typography>Right Content</Typography>
|
|
559
|
-
</Box>
|
|
560
|
-
</Box>
|
|
561
|
-
</Stack>
|
|
562
|
-
),
|
|
563
|
-
};
|