@lateralus-ai/shipping-ui 2.0.0-dev.20 → 2.0.0-dev.21
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/domain/Filters/FilterDropdown.d.ts +93 -0
- package/dist/domain/Filters/FilterPill.d.ts +12 -5
- package/dist/domain/Filters/FilterPills.d.ts +21 -0
- package/dist/domain/Filters/FilteredPill.d.ts +15 -5
- package/dist/domain/Filters/formatActiveFilterChipLabel.d.ts +11 -0
- package/dist/domain/Filters/index.d.ts +8 -3
- package/dist/index.cjs +33 -33
- package/dist/index.esm.js +7299 -5989
- package/package.json +2 -1
- package/src/components/EmptyState.tsx +44 -44
- package/src/components/Modal.tsx +141 -141
- package/src/components/PageHeader.tsx +132 -132
- package/src/components/ScrollableList.tsx +61 -61
- package/src/components/Tabs.tsx +146 -146
- package/src/components/index.ts +56 -56
- package/src/domain/Filters/FilterDropdown.tsx +438 -0
- package/src/domain/Filters/FilterPill.tsx +54 -18
- package/src/domain/Filters/FilterPills.tsx +41 -0
- package/src/domain/Filters/FilteredPill.tsx +40 -23
- package/src/domain/Filters/FiltersBar.tsx +15 -19
- package/src/domain/Filters/formatActiveFilterChipLabel.ts +23 -0
- package/src/domain/Filters/index.ts +35 -3
- package/src/icons/arrow-paths.ts +8 -8
- package/src/icons/chevron-paths.ts +17 -17
- package/src/icons/icons-data.ts +656 -656
- package/src/index.ts +85 -85
- package/src/patterns/Search/ResultRow.tsx +44 -44
- package/src/patterns/Search/SearchModal.tsx +310 -310
- package/src/patterns/Search/index.ts +31 -31
- package/src/patterns/Sidebar/assets/logo-compliance-mark.png +5 -5
- package/src/patterns/Sidebar/assets/logo-compliance-mask.png +13 -13
- package/src/patterns/Sidebar/assets/logo-compliance.svg +17 -17
- package/src/patterns/Sidebar/assets/logo-technical-avatar.svg +17 -17
- package/src/patterns/Sidebar/assets/logo-technical-mark.png +5 -5
- package/src/patterns/Sidebar/assets/logo-technical.svg +16 -16
- package/src/patterns/Skeleton/Skeleton.tsx +56 -56
- package/src/primitives/button-styles.ts +92 -92
- package/src/stories/canvases/ButtonsCanvas.tsx +107 -107
- package/src/stories/canvases/ButtonsMatrixCanvas.tsx +65 -65
- package/src/stories/canvases/ContentCanvas.tsx +353 -353
- package/src/stories/canvases/FiltersCanvas.tsx +156 -30
- package/src/stories/canvases/SearchCanvas.tsx +150 -150
- package/src/stories/canvases/figma-buttons-layout.ts +83 -83
- package/src/stories/canvases/figma-widths.ts +28 -28
- package/src/stories/canvases/helpers.tsx +146 -146
- package/src/stories/components/Buttons.stories.tsx +11 -11
- package/src/stories/components/Chat.stories.tsx +11 -11
- package/src/stories/components/Content.stories.tsx +11 -11
- package/src/stories/components/Core.stories.tsx +11 -11
- package/src/stories/components/DomainForms.stories.tsx +11 -11
- package/src/stories/components/Filters.stories.tsx +11 -11
- package/src/stories/components/Forms.stories.tsx +11 -11
- package/src/stories/components/Icons.stories.tsx +11 -11
- package/src/stories/components/Illustrations.stories.tsx +11 -11
- package/src/stories/components/Library.stories.tsx +11 -11
- package/src/stories/components/Modals.stories.tsx +11 -11
- package/src/stories/components/Report.stories.tsx +11 -11
- package/src/stories/components/ReportLayout.stories.tsx +11 -11
- package/src/stories/components/Search.stories.tsx +11 -11
- package/src/stories/components/Settings.stories.tsx +11 -11
- package/src/stories/components/Ships.stories.tsx +11 -11
- package/src/stories/components/SidebarLayouts.stories.tsx +11 -11
- package/src/stories/components/Skeletons.stories.tsx +11 -11
- package/src/stories/components/Workflows.stories.tsx +11 -11
- package/src/stories/style-guide/Buttons.stories.tsx +11 -11
- package/src/stories/style-guide/ColorTokens.stories.tsx +11 -11
- package/src/stories/style-guide/Colors.stories.tsx +11 -11
- package/src/stories/style-guide/RaiseLevels.stories.tsx +11 -11
- package/src/stories/style-guide/Typography.stories.tsx +11 -11
- package/src/tailwind-theme.ts +186 -186
- package/src/theme-entry.ts +2 -2
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
/** Figma frame widths — source of truth for Storybook canvas pages */
|
|
2
|
-
export const FIGMA_WIDTHS = {
|
|
3
|
-
colors: 3060,
|
|
4
|
-
colorTokens: 1064,
|
|
5
|
-
typography: 1064,
|
|
6
|
-
buttonsMatrix: 808,
|
|
7
|
-
raiseLevels: 760,
|
|
8
|
-
buttons: 526,
|
|
9
|
-
icons: 774,
|
|
10
|
-
core: 732,
|
|
11
|
-
illustrations: 1152,
|
|
12
|
-
sidebar: 464,
|
|
13
|
-
sidebarLayouts: 1432,
|
|
14
|
-
chat: 1558,
|
|
15
|
-
ships: 1280,
|
|
16
|
-
content: 1280,
|
|
17
|
-
forms: 564,
|
|
18
|
-
report: 770,
|
|
19
|
-
modals: 1434,
|
|
20
|
-
skeletons: 512,
|
|
21
|
-
reportLayout: 960,
|
|
22
|
-
search: 848,
|
|
23
|
-
settings: 1076,
|
|
24
|
-
workflows: 1536,
|
|
25
|
-
domainForms: 1488,
|
|
26
|
-
filters: 1232,
|
|
27
|
-
library: 1288,
|
|
28
|
-
} as const;
|
|
1
|
+
/** Figma frame widths — source of truth for Storybook canvas pages */
|
|
2
|
+
export const FIGMA_WIDTHS = {
|
|
3
|
+
colors: 3060,
|
|
4
|
+
colorTokens: 1064,
|
|
5
|
+
typography: 1064,
|
|
6
|
+
buttonsMatrix: 808,
|
|
7
|
+
raiseLevels: 760,
|
|
8
|
+
buttons: 526,
|
|
9
|
+
icons: 774,
|
|
10
|
+
core: 732,
|
|
11
|
+
illustrations: 1152,
|
|
12
|
+
sidebar: 464,
|
|
13
|
+
sidebarLayouts: 1432,
|
|
14
|
+
chat: 1558,
|
|
15
|
+
ships: 1280,
|
|
16
|
+
content: 1280,
|
|
17
|
+
forms: 564,
|
|
18
|
+
report: 770,
|
|
19
|
+
modals: 1434,
|
|
20
|
+
skeletons: 512,
|
|
21
|
+
reportLayout: 960,
|
|
22
|
+
search: 848,
|
|
23
|
+
settings: 1076,
|
|
24
|
+
workflows: 1536,
|
|
25
|
+
domainForms: 1488,
|
|
26
|
+
filters: 1232,
|
|
27
|
+
library: 1288,
|
|
28
|
+
} as const;
|
|
@@ -1,146 +1,146 @@
|
|
|
1
|
-
import type { ReactNode } from "react";
|
|
2
|
-
import { colorScales } from "../../tokens/colors";
|
|
3
|
-
import { cn } from "../../utils/cn";
|
|
4
|
-
|
|
5
|
-
type ButtonHierarchy =
|
|
6
|
-
| "primary"
|
|
7
|
-
| "secondary"
|
|
8
|
-
| "tertiary"
|
|
9
|
-
| "quaternary"
|
|
10
|
-
| "destructive";
|
|
11
|
-
type VisualState = "idle" | "hover" | "disabled";
|
|
12
|
-
|
|
13
|
-
const hierarchyStyles: Record<ButtonHierarchy, Record<VisualState, string>> = {
|
|
14
|
-
primary: {
|
|
15
|
-
idle: "bg-action-primary-idle text-action-primary-on-idle",
|
|
16
|
-
hover: "bg-action-primary-hover text-action-primary-on-hover",
|
|
17
|
-
disabled: "bg-action-primary-disabled text-action-primary-on-disabled",
|
|
18
|
-
},
|
|
19
|
-
secondary: {
|
|
20
|
-
idle: "border border-divider-primary bg-action-secondary-idle text-action-secondary-on-idle",
|
|
21
|
-
hover: "border border-divider-secondary bg-action-secondary-hover text-action-secondary-on-hover",
|
|
22
|
-
disabled:
|
|
23
|
-
"border border-divider-primary bg-action-secondary-disabled text-action-secondary-on-disabled",
|
|
24
|
-
},
|
|
25
|
-
tertiary: {
|
|
26
|
-
idle: "bg-action-tertiary-idle text-action-tertiary-on-idle",
|
|
27
|
-
hover: "bg-action-tertiary-hover text-action-tertiary-on-hover",
|
|
28
|
-
disabled: "bg-action-tertiary-disabled text-action-tertiary-on-disabled",
|
|
29
|
-
},
|
|
30
|
-
quaternary: {
|
|
31
|
-
idle: "bg-action-quaternary-idle text-action-quaternary-on-idle",
|
|
32
|
-
hover: "bg-action-quaternary-hover text-action-quaternary-on-hover",
|
|
33
|
-
disabled:
|
|
34
|
-
"bg-action-quaternary-disabled text-action-quaternary-on-disabled",
|
|
35
|
-
},
|
|
36
|
-
destructive: {
|
|
37
|
-
idle: "bg-action-destructive-idle text-action-destructive-on-idle",
|
|
38
|
-
hover: "bg-action-destructive-hover text-action-destructive-on-hover",
|
|
39
|
-
disabled:
|
|
40
|
-
"bg-action-destructive-disabled text-action-destructive-on-disabled",
|
|
41
|
-
},
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
export const ButtonSnapshot = ({
|
|
45
|
-
hierarchy,
|
|
46
|
-
visualState = "idle",
|
|
47
|
-
children = "Button",
|
|
48
|
-
}: {
|
|
49
|
-
hierarchy: ButtonHierarchy;
|
|
50
|
-
visualState?: VisualState;
|
|
51
|
-
children?: ReactNode;
|
|
52
|
-
}) => (
|
|
53
|
-
<span
|
|
54
|
-
className={cn(
|
|
55
|
-
"inline-flex min-h-10 min-w-[94px] items-center justify-center rounded-control px-2 text-caption-1 tracking-[0.32px]",
|
|
56
|
-
visualState === "disabled" && "cursor-not-allowed",
|
|
57
|
-
hierarchyStyles[hierarchy][visualState],
|
|
58
|
-
)}
|
|
59
|
-
>
|
|
60
|
-
{children}
|
|
61
|
-
</span>
|
|
62
|
-
);
|
|
63
|
-
|
|
64
|
-
export const IconButtonSnapshot = ({
|
|
65
|
-
hierarchy = "tertiary",
|
|
66
|
-
visualState = "idle",
|
|
67
|
-
size = "large",
|
|
68
|
-
}: {
|
|
69
|
-
hierarchy?: "tertiary" | "quaternary";
|
|
70
|
-
visualState?: "idle" | "hover";
|
|
71
|
-
size?: "large" | "small";
|
|
72
|
-
}) => {
|
|
73
|
-
const idleHover: Record<"tertiary" | "quaternary", Record<"idle" | "hover", string>> = {
|
|
74
|
-
tertiary: {
|
|
75
|
-
idle: "bg-action-tertiary-idle text-action-tertiary-on-idle",
|
|
76
|
-
hover: "bg-action-tertiary-hover text-action-tertiary-on-hover",
|
|
77
|
-
},
|
|
78
|
-
quaternary: {
|
|
79
|
-
idle: "bg-action-quaternary-idle text-action-quaternary-on-idle",
|
|
80
|
-
hover: "bg-action-quaternary-hover text-action-quaternary-on-hover",
|
|
81
|
-
},
|
|
82
|
-
};
|
|
83
|
-
|
|
84
|
-
return (
|
|
85
|
-
<span
|
|
86
|
-
className={cn(
|
|
87
|
-
"inline-flex items-center justify-center rounded-control text-action-tertiary-on-idle",
|
|
88
|
-
size === "large" ? "size-10 [&>svg]:size-6" : "size-8 [&>svg]:size-4",
|
|
89
|
-
idleHover[hierarchy][visualState],
|
|
90
|
-
)}
|
|
91
|
-
>
|
|
92
|
-
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" aria-hidden>
|
|
93
|
-
<path d="M12 5v14M5 12h14" strokeLinecap="round" />
|
|
94
|
-
</svg>
|
|
95
|
-
</span>
|
|
96
|
-
);
|
|
97
|
-
};
|
|
98
|
-
|
|
99
|
-
type ColorScaleName = keyof typeof colorScales;
|
|
100
|
-
|
|
101
|
-
export const ColorScaleRow = ({ name }: { name: ColorScaleName }) => {
|
|
102
|
-
const scale = colorScales[name];
|
|
103
|
-
const shades = ["50", "100", "200", "300", "400", "500", "600", "700", "800", "900"] as const;
|
|
104
|
-
|
|
105
|
-
return (
|
|
106
|
-
<div className="mb-8">
|
|
107
|
-
<p className="mb-2 text-subheader-em capitalize text-display-on-light-primary">{name}</p>
|
|
108
|
-
<div className="flex">
|
|
109
|
-
{shades.map((shade) => (
|
|
110
|
-
<div
|
|
111
|
-
key={shade}
|
|
112
|
-
className="flex h-20 w-[100px] items-center justify-center text-body text-display-on-light-primary"
|
|
113
|
-
style={{ backgroundColor: scale[shade] }}
|
|
114
|
-
>
|
|
115
|
-
{shade}
|
|
116
|
-
</div>
|
|
117
|
-
))}
|
|
118
|
-
</div>
|
|
119
|
-
</div>
|
|
120
|
-
);
|
|
121
|
-
};
|
|
122
|
-
|
|
123
|
-
export const SemanticSwatch = ({
|
|
124
|
-
label,
|
|
125
|
-
cssVar,
|
|
126
|
-
textClassName = "text-display-on-light-primary",
|
|
127
|
-
}: {
|
|
128
|
-
label: string;
|
|
129
|
-
cssVar: string;
|
|
130
|
-
textClassName?: string;
|
|
131
|
-
}) => (
|
|
132
|
-
<div className="w-[250px]">
|
|
133
|
-
<div
|
|
134
|
-
className={cn("flex h-[90px] items-end rounded-control p-3 text-caption-2-em", textClassName)}
|
|
135
|
-
style={{ background: `var(${cssVar})` }}
|
|
136
|
-
>
|
|
137
|
-
{label}
|
|
138
|
-
</div>
|
|
139
|
-
</div>
|
|
140
|
-
);
|
|
141
|
-
|
|
142
|
-
export const formatIconLabel = (name: string) =>
|
|
143
|
-
name
|
|
144
|
-
.replace(/([A-Z])/g, " $1")
|
|
145
|
-
.replace(/^./, (char) => char.toUpperCase())
|
|
146
|
-
.trim();
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import { colorScales } from "../../tokens/colors";
|
|
3
|
+
import { cn } from "../../utils/cn";
|
|
4
|
+
|
|
5
|
+
type ButtonHierarchy =
|
|
6
|
+
| "primary"
|
|
7
|
+
| "secondary"
|
|
8
|
+
| "tertiary"
|
|
9
|
+
| "quaternary"
|
|
10
|
+
| "destructive";
|
|
11
|
+
type VisualState = "idle" | "hover" | "disabled";
|
|
12
|
+
|
|
13
|
+
const hierarchyStyles: Record<ButtonHierarchy, Record<VisualState, string>> = {
|
|
14
|
+
primary: {
|
|
15
|
+
idle: "bg-action-primary-idle text-action-primary-on-idle",
|
|
16
|
+
hover: "bg-action-primary-hover text-action-primary-on-hover",
|
|
17
|
+
disabled: "bg-action-primary-disabled text-action-primary-on-disabled",
|
|
18
|
+
},
|
|
19
|
+
secondary: {
|
|
20
|
+
idle: "border border-divider-primary bg-action-secondary-idle text-action-secondary-on-idle",
|
|
21
|
+
hover: "border border-divider-secondary bg-action-secondary-hover text-action-secondary-on-hover",
|
|
22
|
+
disabled:
|
|
23
|
+
"border border-divider-primary bg-action-secondary-disabled text-action-secondary-on-disabled",
|
|
24
|
+
},
|
|
25
|
+
tertiary: {
|
|
26
|
+
idle: "bg-action-tertiary-idle text-action-tertiary-on-idle",
|
|
27
|
+
hover: "bg-action-tertiary-hover text-action-tertiary-on-hover",
|
|
28
|
+
disabled: "bg-action-tertiary-disabled text-action-tertiary-on-disabled",
|
|
29
|
+
},
|
|
30
|
+
quaternary: {
|
|
31
|
+
idle: "bg-action-quaternary-idle text-action-quaternary-on-idle",
|
|
32
|
+
hover: "bg-action-quaternary-hover text-action-quaternary-on-hover",
|
|
33
|
+
disabled:
|
|
34
|
+
"bg-action-quaternary-disabled text-action-quaternary-on-disabled",
|
|
35
|
+
},
|
|
36
|
+
destructive: {
|
|
37
|
+
idle: "bg-action-destructive-idle text-action-destructive-on-idle",
|
|
38
|
+
hover: "bg-action-destructive-hover text-action-destructive-on-hover",
|
|
39
|
+
disabled:
|
|
40
|
+
"bg-action-destructive-disabled text-action-destructive-on-disabled",
|
|
41
|
+
},
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
export const ButtonSnapshot = ({
|
|
45
|
+
hierarchy,
|
|
46
|
+
visualState = "idle",
|
|
47
|
+
children = "Button",
|
|
48
|
+
}: {
|
|
49
|
+
hierarchy: ButtonHierarchy;
|
|
50
|
+
visualState?: VisualState;
|
|
51
|
+
children?: ReactNode;
|
|
52
|
+
}) => (
|
|
53
|
+
<span
|
|
54
|
+
className={cn(
|
|
55
|
+
"inline-flex min-h-10 min-w-[94px] items-center justify-center rounded-control px-2 text-caption-1 tracking-[0.32px]",
|
|
56
|
+
visualState === "disabled" && "cursor-not-allowed",
|
|
57
|
+
hierarchyStyles[hierarchy][visualState],
|
|
58
|
+
)}
|
|
59
|
+
>
|
|
60
|
+
{children}
|
|
61
|
+
</span>
|
|
62
|
+
);
|
|
63
|
+
|
|
64
|
+
export const IconButtonSnapshot = ({
|
|
65
|
+
hierarchy = "tertiary",
|
|
66
|
+
visualState = "idle",
|
|
67
|
+
size = "large",
|
|
68
|
+
}: {
|
|
69
|
+
hierarchy?: "tertiary" | "quaternary";
|
|
70
|
+
visualState?: "idle" | "hover";
|
|
71
|
+
size?: "large" | "small";
|
|
72
|
+
}) => {
|
|
73
|
+
const idleHover: Record<"tertiary" | "quaternary", Record<"idle" | "hover", string>> = {
|
|
74
|
+
tertiary: {
|
|
75
|
+
idle: "bg-action-tertiary-idle text-action-tertiary-on-idle",
|
|
76
|
+
hover: "bg-action-tertiary-hover text-action-tertiary-on-hover",
|
|
77
|
+
},
|
|
78
|
+
quaternary: {
|
|
79
|
+
idle: "bg-action-quaternary-idle text-action-quaternary-on-idle",
|
|
80
|
+
hover: "bg-action-quaternary-hover text-action-quaternary-on-hover",
|
|
81
|
+
},
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
return (
|
|
85
|
+
<span
|
|
86
|
+
className={cn(
|
|
87
|
+
"inline-flex items-center justify-center rounded-control text-action-tertiary-on-idle",
|
|
88
|
+
size === "large" ? "size-10 [&>svg]:size-6" : "size-8 [&>svg]:size-4",
|
|
89
|
+
idleHover[hierarchy][visualState],
|
|
90
|
+
)}
|
|
91
|
+
>
|
|
92
|
+
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" aria-hidden>
|
|
93
|
+
<path d="M12 5v14M5 12h14" strokeLinecap="round" />
|
|
94
|
+
</svg>
|
|
95
|
+
</span>
|
|
96
|
+
);
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
type ColorScaleName = keyof typeof colorScales;
|
|
100
|
+
|
|
101
|
+
export const ColorScaleRow = ({ name }: { name: ColorScaleName }) => {
|
|
102
|
+
const scale = colorScales[name];
|
|
103
|
+
const shades = ["50", "100", "200", "300", "400", "500", "600", "700", "800", "900"] as const;
|
|
104
|
+
|
|
105
|
+
return (
|
|
106
|
+
<div className="mb-8">
|
|
107
|
+
<p className="mb-2 text-subheader-em capitalize text-display-on-light-primary">{name}</p>
|
|
108
|
+
<div className="flex">
|
|
109
|
+
{shades.map((shade) => (
|
|
110
|
+
<div
|
|
111
|
+
key={shade}
|
|
112
|
+
className="flex h-20 w-[100px] items-center justify-center text-body text-display-on-light-primary"
|
|
113
|
+
style={{ backgroundColor: scale[shade] }}
|
|
114
|
+
>
|
|
115
|
+
{shade}
|
|
116
|
+
</div>
|
|
117
|
+
))}
|
|
118
|
+
</div>
|
|
119
|
+
</div>
|
|
120
|
+
);
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
export const SemanticSwatch = ({
|
|
124
|
+
label,
|
|
125
|
+
cssVar,
|
|
126
|
+
textClassName = "text-display-on-light-primary",
|
|
127
|
+
}: {
|
|
128
|
+
label: string;
|
|
129
|
+
cssVar: string;
|
|
130
|
+
textClassName?: string;
|
|
131
|
+
}) => (
|
|
132
|
+
<div className="w-[250px]">
|
|
133
|
+
<div
|
|
134
|
+
className={cn("flex h-[90px] items-end rounded-control p-3 text-caption-2-em", textClassName)}
|
|
135
|
+
style={{ background: `var(${cssVar})` }}
|
|
136
|
+
>
|
|
137
|
+
{label}
|
|
138
|
+
</div>
|
|
139
|
+
</div>
|
|
140
|
+
);
|
|
141
|
+
|
|
142
|
+
export const formatIconLabel = (name: string) =>
|
|
143
|
+
name
|
|
144
|
+
.replace(/([A-Z])/g, " $1")
|
|
145
|
+
.replace(/^./, (char) => char.toUpperCase())
|
|
146
|
+
.trim();
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
-
import { ButtonsCanvas } from "../canvases/ButtonsCanvas";
|
|
3
|
-
|
|
4
|
-
const meta: Meta = {
|
|
5
|
-
title: "Components/Buttons",
|
|
6
|
-
parameters: { layout: "fullscreen" },
|
|
7
|
-
};
|
|
8
|
-
export default meta;
|
|
9
|
-
|
|
10
|
-
type Story = StoryObj;
|
|
11
|
-
export const Canvas: Story = { render: () => <ButtonsCanvas /> };
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { ButtonsCanvas } from "../canvases/ButtonsCanvas";
|
|
3
|
+
|
|
4
|
+
const meta: Meta = {
|
|
5
|
+
title: "Components/Buttons",
|
|
6
|
+
parameters: { layout: "fullscreen" },
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
|
|
10
|
+
type Story = StoryObj;
|
|
11
|
+
export const Canvas: Story = { render: () => <ButtonsCanvas /> };
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
-
import { ChatCanvas } from "../canvases/ChatCanvas";
|
|
3
|
-
|
|
4
|
-
const meta: Meta = {
|
|
5
|
-
title: "Components/Chat",
|
|
6
|
-
parameters: { layout: "fullscreen" },
|
|
7
|
-
};
|
|
8
|
-
export default meta;
|
|
9
|
-
|
|
10
|
-
type Story = StoryObj;
|
|
11
|
-
export const Canvas: Story = { render: () => <ChatCanvas /> };
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { ChatCanvas } from "../canvases/ChatCanvas";
|
|
3
|
+
|
|
4
|
+
const meta: Meta = {
|
|
5
|
+
title: "Components/Chat",
|
|
6
|
+
parameters: { layout: "fullscreen" },
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
|
|
10
|
+
type Story = StoryObj;
|
|
11
|
+
export const Canvas: Story = { render: () => <ChatCanvas /> };
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
-
import { ContentCanvas } from "../canvases/ContentCanvas";
|
|
3
|
-
|
|
4
|
-
const meta: Meta = {
|
|
5
|
-
title: "Components/Content",
|
|
6
|
-
parameters: { layout: "fullscreen" },
|
|
7
|
-
};
|
|
8
|
-
export default meta;
|
|
9
|
-
|
|
10
|
-
type Story = StoryObj;
|
|
11
|
-
export const Canvas: Story = { render: () => <ContentCanvas /> };
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { ContentCanvas } from "../canvases/ContentCanvas";
|
|
3
|
+
|
|
4
|
+
const meta: Meta = {
|
|
5
|
+
title: "Components/Content",
|
|
6
|
+
parameters: { layout: "fullscreen" },
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
|
|
10
|
+
type Story = StoryObj;
|
|
11
|
+
export const Canvas: Story = { render: () => <ContentCanvas /> };
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
-
import { CoreCanvas } from "../canvases/CoreCanvas";
|
|
3
|
-
|
|
4
|
-
const meta: Meta = {
|
|
5
|
-
title: "Components/Core",
|
|
6
|
-
parameters: { layout: "fullscreen" },
|
|
7
|
-
};
|
|
8
|
-
export default meta;
|
|
9
|
-
|
|
10
|
-
type Story = StoryObj;
|
|
11
|
-
export const Canvas: Story = { render: () => <CoreCanvas /> };
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { CoreCanvas } from "../canvases/CoreCanvas";
|
|
3
|
+
|
|
4
|
+
const meta: Meta = {
|
|
5
|
+
title: "Components/Core",
|
|
6
|
+
parameters: { layout: "fullscreen" },
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
|
|
10
|
+
type Story = StoryObj;
|
|
11
|
+
export const Canvas: Story = { render: () => <CoreCanvas /> };
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
-
import { DomainFormsCanvas } from "../canvases/DomainFormsCanvas";
|
|
3
|
-
|
|
4
|
-
const meta: Meta = {
|
|
5
|
-
title: "Components/Domain Forms",
|
|
6
|
-
parameters: { layout: "fullscreen" },
|
|
7
|
-
};
|
|
8
|
-
export default meta;
|
|
9
|
-
|
|
10
|
-
type Story = StoryObj;
|
|
11
|
-
export const Canvas: Story = { render: () => <DomainFormsCanvas /> };
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { DomainFormsCanvas } from "../canvases/DomainFormsCanvas";
|
|
3
|
+
|
|
4
|
+
const meta: Meta = {
|
|
5
|
+
title: "Components/Domain Forms",
|
|
6
|
+
parameters: { layout: "fullscreen" },
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
|
|
10
|
+
type Story = StoryObj;
|
|
11
|
+
export const Canvas: Story = { render: () => <DomainFormsCanvas /> };
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
-
import { FiltersCanvas } from "../canvases/FiltersCanvas";
|
|
3
|
-
|
|
4
|
-
const meta: Meta = {
|
|
5
|
-
title: "Components/Filters",
|
|
6
|
-
parameters: { layout: "fullscreen" },
|
|
7
|
-
};
|
|
8
|
-
export default meta;
|
|
9
|
-
|
|
10
|
-
type Story = StoryObj;
|
|
11
|
-
export const Canvas: Story = { render: () => <FiltersCanvas /> };
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { FiltersCanvas } from "../canvases/FiltersCanvas";
|
|
3
|
+
|
|
4
|
+
const meta: Meta = {
|
|
5
|
+
title: "Components/Filters",
|
|
6
|
+
parameters: { layout: "fullscreen" },
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
|
|
10
|
+
type Story = StoryObj;
|
|
11
|
+
export const Canvas: Story = { render: () => <FiltersCanvas /> };
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
-
import { FormsCanvas } from "../canvases/FormsCanvas";
|
|
3
|
-
|
|
4
|
-
const meta: Meta = {
|
|
5
|
-
title: "Components/Forms",
|
|
6
|
-
parameters: { layout: "fullscreen" },
|
|
7
|
-
};
|
|
8
|
-
export default meta;
|
|
9
|
-
|
|
10
|
-
type Story = StoryObj;
|
|
11
|
-
export const Canvas: Story = { render: () => <FormsCanvas /> };
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { FormsCanvas } from "../canvases/FormsCanvas";
|
|
3
|
+
|
|
4
|
+
const meta: Meta = {
|
|
5
|
+
title: "Components/Forms",
|
|
6
|
+
parameters: { layout: "fullscreen" },
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
|
|
10
|
+
type Story = StoryObj;
|
|
11
|
+
export const Canvas: Story = { render: () => <FormsCanvas /> };
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
-
import { IconsCanvas } from "../canvases/IconsCanvas";
|
|
3
|
-
|
|
4
|
-
const meta: Meta = {
|
|
5
|
-
title: "Components/Icons",
|
|
6
|
-
parameters: { layout: "fullscreen" },
|
|
7
|
-
};
|
|
8
|
-
export default meta;
|
|
9
|
-
|
|
10
|
-
type Story = StoryObj;
|
|
11
|
-
export const Canvas: Story = { render: () => <IconsCanvas /> };
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { IconsCanvas } from "../canvases/IconsCanvas";
|
|
3
|
+
|
|
4
|
+
const meta: Meta = {
|
|
5
|
+
title: "Components/Icons",
|
|
6
|
+
parameters: { layout: "fullscreen" },
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
|
|
10
|
+
type Story = StoryObj;
|
|
11
|
+
export const Canvas: Story = { render: () => <IconsCanvas /> };
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
-
import { IllustrationsCanvas } from "../canvases/IllustrationsCanvas";
|
|
3
|
-
|
|
4
|
-
const meta: Meta = {
|
|
5
|
-
title: "Components/Illustrations",
|
|
6
|
-
parameters: { layout: "fullscreen" },
|
|
7
|
-
};
|
|
8
|
-
export default meta;
|
|
9
|
-
|
|
10
|
-
type Story = StoryObj;
|
|
11
|
-
export const Canvas: Story = { render: () => <IllustrationsCanvas /> };
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { IllustrationsCanvas } from "../canvases/IllustrationsCanvas";
|
|
3
|
+
|
|
4
|
+
const meta: Meta = {
|
|
5
|
+
title: "Components/Illustrations",
|
|
6
|
+
parameters: { layout: "fullscreen" },
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
|
|
10
|
+
type Story = StoryObj;
|
|
11
|
+
export const Canvas: Story = { render: () => <IllustrationsCanvas /> };
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
-
import { LibraryCanvas } from "../canvases/LibraryCanvas";
|
|
3
|
-
|
|
4
|
-
const meta: Meta = {
|
|
5
|
-
title: "Components/Library",
|
|
6
|
-
parameters: { layout: "fullscreen" },
|
|
7
|
-
};
|
|
8
|
-
export default meta;
|
|
9
|
-
|
|
10
|
-
type Story = StoryObj;
|
|
11
|
-
export const Canvas: Story = { render: () => <LibraryCanvas /> };
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { LibraryCanvas } from "../canvases/LibraryCanvas";
|
|
3
|
+
|
|
4
|
+
const meta: Meta = {
|
|
5
|
+
title: "Components/Library",
|
|
6
|
+
parameters: { layout: "fullscreen" },
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
|
|
10
|
+
type Story = StoryObj;
|
|
11
|
+
export const Canvas: Story = { render: () => <LibraryCanvas /> };
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
-
import { ModalsCanvas } from "../canvases/ModalsCanvas";
|
|
3
|
-
|
|
4
|
-
const meta: Meta = {
|
|
5
|
-
title: "Components/Modals",
|
|
6
|
-
parameters: { layout: "fullscreen" },
|
|
7
|
-
};
|
|
8
|
-
export default meta;
|
|
9
|
-
|
|
10
|
-
type Story = StoryObj;
|
|
11
|
-
export const Canvas: Story = { render: () => <ModalsCanvas /> };
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { ModalsCanvas } from "../canvases/ModalsCanvas";
|
|
3
|
+
|
|
4
|
+
const meta: Meta = {
|
|
5
|
+
title: "Components/Modals",
|
|
6
|
+
parameters: { layout: "fullscreen" },
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
|
|
10
|
+
type Story = StoryObj;
|
|
11
|
+
export const Canvas: Story = { render: () => <ModalsCanvas /> };
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
-
import { ReportCanvas } from "../canvases/ReportCanvas";
|
|
3
|
-
|
|
4
|
-
const meta: Meta = {
|
|
5
|
-
title: "Components/Report",
|
|
6
|
-
parameters: { layout: "fullscreen" },
|
|
7
|
-
};
|
|
8
|
-
export default meta;
|
|
9
|
-
|
|
10
|
-
type Story = StoryObj;
|
|
11
|
-
export const Canvas: Story = { render: () => <ReportCanvas /> };
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { ReportCanvas } from "../canvases/ReportCanvas";
|
|
3
|
+
|
|
4
|
+
const meta: Meta = {
|
|
5
|
+
title: "Components/Report",
|
|
6
|
+
parameters: { layout: "fullscreen" },
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
|
|
10
|
+
type Story = StoryObj;
|
|
11
|
+
export const Canvas: Story = { render: () => <ReportCanvas /> };
|
|
12
12
|
|