@apify/ui-library 1.171.0 → 1.171.1-uilibraryversion2candida-85b55e.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/components/code/code_block/code_block.d.ts +1 -3
- package/dist/components/code/code_block/code_block.d.ts.map +1 -1
- package/dist/components/code/code_block/code_block.js +1 -7
- package/dist/components/code/code_block/code_block.styled.d.ts +0 -1
- package/dist/components/code/code_block/code_block.styled.d.ts.map +1 -1
- package/dist/components/code/code_block/code_block.styled.js +0 -10
- package/dist/components/code/inline_code/inline_code.d.ts.map +1 -1
- package/dist/components/index.d.ts +0 -3
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/simple_markdown/simple_markdown.d.ts.map +1 -1
- package/dist/components/simple_markdown/simple_markdown.js +1 -1
- package/dist/components/simple_markdown/simple_markdown_components.d.ts +5 -2
- package/dist/components/simple_markdown/simple_markdown_components.d.ts.map +1 -1
- package/dist/components/simple_markdown/simple_markdown_components.js +2 -3
- package/dist/components/tag/tag.d.ts +1 -1
- package/dist/components/tag/tag.d.ts.map +1 -1
- package/dist/components/text/index.d.ts +0 -1
- package/dist/components/text/index.d.ts.map +1 -1
- package/dist/components/text/text_content.d.ts +1 -1
- package/dist/components/text/text_content.js +1 -1
- package/dist/files_hash_at_build.txt +1 -1
- package/dist/index.js +1 -5
- package/dist/src/components/code/code_block/code_block.d.ts +1 -3
- package/dist/src/components/code/code_block/code_block.d.ts.map +1 -1
- package/dist/src/components/code/code_block/code_block.js +2 -3
- package/dist/src/components/code/code_block/code_block.js.map +1 -1
- package/dist/src/components/code/code_block/code_block.styled.d.ts +0 -1
- package/dist/src/components/code/code_block/code_block.styled.d.ts.map +1 -1
- package/dist/src/components/code/code_block/code_block.styled.js +0 -10
- package/dist/src/components/code/code_block/code_block.styled.js.map +1 -1
- package/dist/src/components/code/inline_code/inline_code.d.ts.map +1 -1
- package/dist/src/components/code/inline_code/inline_code.js +0 -1
- package/dist/src/components/code/inline_code/inline_code.js.map +1 -1
- package/dist/src/components/index.d.ts +0 -3
- package/dist/src/components/index.d.ts.map +1 -1
- package/dist/src/components/index.js +0 -3
- package/dist/src/components/index.js.map +1 -1
- package/dist/src/components/simple_markdown/simple_markdown.d.ts.map +1 -1
- package/dist/src/components/simple_markdown/simple_markdown.js +2 -1
- package/dist/src/components/simple_markdown/simple_markdown.js.map +1 -1
- package/dist/src/components/simple_markdown/simple_markdown_components.d.ts +5 -4
- package/dist/src/components/simple_markdown/simple_markdown_components.d.ts.map +1 -1
- package/dist/src/components/simple_markdown/simple_markdown_components.js +4 -4
- package/dist/src/components/simple_markdown/simple_markdown_components.js.map +1 -1
- package/dist/src/components/tag/tag.d.ts +1 -1
- package/dist/src/components/tag/tag.d.ts.map +1 -1
- package/dist/src/components/text/index.d.ts +0 -1
- package/dist/src/components/text/index.d.ts.map +1 -1
- package/dist/src/components/text/index.js +0 -1
- package/dist/src/components/text/index.js.map +1 -1
- package/dist/src/components/text/text_content.d.ts +1 -1
- package/dist/src/components/text/text_content.js +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/components/code/code_block/code_block.stories.jsx +6 -13
- package/src/components/code/code_block/code_block.styled.tsx +0 -11
- package/src/components/code/code_block/code_block.tsx +0 -8
- package/src/components/code/inline_code/inline_code.tsx +0 -1
- package/src/components/index.ts +0 -3
- package/src/components/simple_markdown/simple_markdown.tsx +2 -1
- package/src/components/simple_markdown/simple_markdown_components.tsx +8 -14
- package/src/components/skeleton/skeleton.stories.tsx +4 -0
- package/src/components/tag/tag.tsx +1 -1
- package/src/components/text/index.ts +0 -1
- package/src/components/text/text_content.tsx +1 -1
- package/dist/components/banner/banner.d.ts +0 -11
- package/dist/components/banner/banner.d.ts.map +0 -1
- package/dist/components/banner/banner.js +0 -76
- package/dist/components/banner/index.d.ts +0 -2
- package/dist/components/banner/index.d.ts.map +0 -1
- package/dist/components/chip/chip.d.ts +0 -55
- package/dist/components/chip/chip.d.ts.map +0 -1
- package/dist/components/chip/chip.js +0 -144
- package/dist/components/chip/index.d.ts +0 -2
- package/dist/components/chip/index.d.ts.map +0 -1
- package/dist/components/color_wheel_gradient/color_wheel_gradient.d.ts +0 -9
- package/dist/components/color_wheel_gradient/color_wheel_gradient.d.ts.map +0 -1
- package/dist/components/color_wheel_gradient/color_wheel_gradient.js +0 -27
- package/dist/components/color_wheel_gradient/index.d.ts +0 -2
- package/dist/components/color_wheel_gradient/index.d.ts.map +0 -1
- package/dist/src/components/banner/banner.d.ts +0 -11
- package/dist/src/components/banner/banner.d.ts.map +0 -1
- package/dist/src/components/banner/banner.js +0 -70
- package/dist/src/components/banner/banner.js.map +0 -1
- package/dist/src/components/banner/index.d.ts +0 -2
- package/dist/src/components/banner/index.d.ts.map +0 -1
- package/dist/src/components/banner/index.js +0 -2
- package/dist/src/components/banner/index.js.map +0 -1
- package/dist/src/components/chip/chip.d.ts +0 -56
- package/dist/src/components/chip/chip.d.ts.map +0 -1
- package/dist/src/components/chip/chip.js +0 -123
- package/dist/src/components/chip/chip.js.map +0 -1
- package/dist/src/components/chip/index.d.ts +0 -2
- package/dist/src/components/chip/index.d.ts.map +0 -1
- package/dist/src/components/chip/index.js +0 -2
- package/dist/src/components/chip/index.js.map +0 -1
- package/dist/src/components/color_wheel_gradient/color_wheel_gradient.d.ts +0 -9
- package/dist/src/components/color_wheel_gradient/color_wheel_gradient.d.ts.map +0 -1
- package/dist/src/components/color_wheel_gradient/color_wheel_gradient.js +0 -25
- package/dist/src/components/color_wheel_gradient/color_wheel_gradient.js.map +0 -1
- package/dist/src/components/color_wheel_gradient/index.d.ts +0 -2
- package/dist/src/components/color_wheel_gradient/index.d.ts.map +0 -1
- package/dist/src/components/color_wheel_gradient/index.js +0 -2
- package/dist/src/components/color_wheel_gradient/index.js.map +0 -1
- package/src/components/banner/banner.stories.tsx +0 -238
- package/src/components/banner/banner.tsx +0 -91
- package/src/components/banner/index.ts +0 -1
- package/src/components/chip/chip.stories.tsx +0 -311
- package/src/components/chip/chip.tsx +0 -167
- package/src/components/chip/index.ts +0 -1
- package/src/components/color_wheel_gradient/color_wheel_gradient.stories.tsx +0 -152
- package/src/components/color_wheel_gradient/color_wheel_gradient.tsx +0 -33
- package/src/components/color_wheel_gradient/index.ts +0 -1
- package/src/components/text/text_content.stories.tsx +0 -194
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
import type React from 'react';
|
|
2
|
-
import styled, { css } from 'styled-components';
|
|
3
|
-
|
|
4
|
-
import { theme } from '../../design_system/theme';
|
|
5
|
-
|
|
6
|
-
const BANNER_GRADIENT_BACKGROUND_SVG = `<svg width="1200" height="148" viewBox="0 0 1200 148" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
7
|
-
<g clip-path="url(#clip0_2285_34756)">
|
|
8
|
-
<g filter="url(#filter0_f_2285_34756)">
|
|
9
|
-
<path d="M-39.7702 191.085C-55.0622 193.205 -68.8864 201.311 -78.2029 213.621C-87.5194 225.932 -91.5654 241.438 -89.4512 256.731L-55.0077 502.652L89.8852 173L-39.7702 191.085Z" fill="url(#paint0_linear_2285_34756)"/>
|
|
10
|
-
</g>
|
|
11
|
-
<g filter="url(#filter1_f_2285_34756)">
|
|
12
|
-
<path d="M1267.53 398.062L1253.99 209.002C1252.85 193.626 1245.67 179.327 1234.01 169.234C1222.36 159.14 1207.18 154.073 1191.8 155.14C1190.5 155.19 1189.2 155.331 1187.92 155.564L1132 163.289L1254.84 438.685C1264.05 427.236 1268.59 412.721 1267.53 398.062Z" fill="url(#paint1_linear_2285_34756)"/>
|
|
13
|
-
</g>
|
|
14
|
-
<g filter="url(#filter2_f_2285_34756)">
|
|
15
|
-
<path d="M561 29.7691C570.917 30.4746 580.956 29.5571 590.142 27.1057L801.075 -28.7862L700.682 -170L561 29.7691Z" fill="url(#paint2_linear_2285_34756)"/>
|
|
16
|
-
</g>
|
|
17
|
-
</g>
|
|
18
|
-
<defs>
|
|
19
|
-
<filter id="filter0_f_2285_34756" x="-170" y="93" width="339.885" height="489.652" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
|
20
|
-
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
|
21
|
-
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
|
|
22
|
-
<feGaussianBlur stdDeviation="40" result="effect1_foregroundBlur_2285_34756"/>
|
|
23
|
-
</filter>
|
|
24
|
-
<filter id="filter1_f_2285_34756" x="1052" y="75" width="295.683" height="443.686" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
|
25
|
-
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
|
26
|
-
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
|
|
27
|
-
<feGaussianBlur stdDeviation="40" result="effect1_foregroundBlur_2285_34756"/>
|
|
28
|
-
</filter>
|
|
29
|
-
<filter id="filter2_f_2285_34756" x="481" y="-250" width="400.074" height="360" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
|
30
|
-
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
|
31
|
-
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
|
|
32
|
-
<feGaussianBlur stdDeviation="40" result="effect1_foregroundBlur_2285_34756"/>
|
|
33
|
-
</filter>
|
|
34
|
-
<linearGradient id="paint0_linear_2285_34756" x1="-0.0574112" y1="173" x2="-0.0574112" y2="502.652" gradientUnits="userSpaceOnUse">
|
|
35
|
-
<stop stop-color="#00FF85"/>
|
|
36
|
-
<stop offset="1" stop-color="#00FF47" stop-opacity="0"/>
|
|
37
|
-
</linearGradient>
|
|
38
|
-
<linearGradient id="paint1_linear_2285_34756" x1="1146.02" y1="174.549" x2="1333.1" y2="293.915" gradientUnits="userSpaceOnUse">
|
|
39
|
-
<stop stop-color="#00FFF0"/>
|
|
40
|
-
<stop offset="1" stop-color="#1672EB"/>
|
|
41
|
-
</linearGradient>
|
|
42
|
-
<linearGradient id="paint2_linear_2285_34756" x1="681.037" y1="-170" x2="681.037" y2="30" gradientUnits="userSpaceOnUse">
|
|
43
|
-
<stop stop-color="#F5B315"/>
|
|
44
|
-
<stop offset="1" stop-color="#FF2CC4"/>
|
|
45
|
-
</linearGradient>
|
|
46
|
-
<clipPath id="clip0_2285_34756">
|
|
47
|
-
<rect width="1200" height="1791.08" rx="16" fill="white"/>
|
|
48
|
-
</clipPath>
|
|
49
|
-
</defs>
|
|
50
|
-
</svg>
|
|
51
|
-
`;
|
|
52
|
-
|
|
53
|
-
interface BannerProps {
|
|
54
|
-
background?: string;
|
|
55
|
-
useGradientBackground?: boolean;
|
|
56
|
-
width?: string;
|
|
57
|
-
className?: string;
|
|
58
|
-
children: React.ReactNode;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
const getBannerBackground = (background?: string, useGradientBackground?: boolean) => {
|
|
62
|
-
return css`
|
|
63
|
-
background-color: ${background || theme.color.neutral.backgroundSubtle};
|
|
64
|
-
${useGradientBackground &&
|
|
65
|
-
`
|
|
66
|
-
background-image: url("data:image/svg+xml,${encodeURIComponent(BANNER_GRADIENT_BACKGROUND_SVG)}");
|
|
67
|
-
background-position: center;
|
|
68
|
-
background-repeat: no-repeat;
|
|
69
|
-
background-size: cover;
|
|
70
|
-
`}
|
|
71
|
-
`;
|
|
72
|
-
};
|
|
73
|
-
|
|
74
|
-
const StyledBanner = styled.div<{ $background?: string; $useGradientBackground?: boolean; width?: string }>`
|
|
75
|
-
width: ${(props) => props.width || '100%'};
|
|
76
|
-
padding: ${theme.space.space40} ${theme.space.space80};
|
|
77
|
-
border-radius: ${theme.radius.radius16};
|
|
78
|
-
|
|
79
|
-
${({ $background, $useGradientBackground }) => getBannerBackground($background, $useGradientBackground)};
|
|
80
|
-
`;
|
|
81
|
-
|
|
82
|
-
export const Banner: React.FC<BannerProps> = ({
|
|
83
|
-
useGradientBackground = true,
|
|
84
|
-
background,
|
|
85
|
-
children,
|
|
86
|
-
...otherProps
|
|
87
|
-
}) => (
|
|
88
|
-
<StyledBanner $background={background} $useGradientBackground={useGradientBackground} {...otherProps}>
|
|
89
|
-
{children}
|
|
90
|
-
</StyledBanner>
|
|
91
|
-
);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './banner';
|
|
@@ -1,311 +0,0 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from '@storybook/react-vite';
|
|
2
|
-
|
|
3
|
-
import { Chip, CHIP_SIZES, CHIP_TYPES, type ChipProps } from './chip';
|
|
4
|
-
|
|
5
|
-
const mockIcons = {
|
|
6
|
-
star: <span style={{ fontSize: '14px' }}>⭐</span>,
|
|
7
|
-
check: <span style={{ fontSize: '14px' }}>✓</span>,
|
|
8
|
-
warning: <span style={{ fontSize: '14px' }}>⚠️</span>,
|
|
9
|
-
error: <span style={{ fontSize: '14px' }}>❌</span>,
|
|
10
|
-
info: <span style={{ fontSize: '14px' }}>ℹ️</span>,
|
|
11
|
-
heart: <span style={{ fontSize: '14px' }}>❤️</span>,
|
|
12
|
-
tag: <span style={{ fontSize: '14px' }}>#</span>,
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
export default {
|
|
16
|
-
title: 'UI-Library/Chip',
|
|
17
|
-
tags: ['deprecated'],
|
|
18
|
-
component: Chip,
|
|
19
|
-
argTypes: {
|
|
20
|
-
type: {
|
|
21
|
-
control: 'select',
|
|
22
|
-
options: Object.values(CHIP_TYPES),
|
|
23
|
-
},
|
|
24
|
-
size: {
|
|
25
|
-
control: 'select',
|
|
26
|
-
options: Object.values(CHIP_SIZES),
|
|
27
|
-
},
|
|
28
|
-
clickable: {
|
|
29
|
-
control: 'boolean',
|
|
30
|
-
},
|
|
31
|
-
icon: {
|
|
32
|
-
control: false,
|
|
33
|
-
},
|
|
34
|
-
children: {
|
|
35
|
-
control: 'text',
|
|
36
|
-
},
|
|
37
|
-
className: {
|
|
38
|
-
control: 'text',
|
|
39
|
-
},
|
|
40
|
-
},
|
|
41
|
-
parameters: {
|
|
42
|
-
design: {
|
|
43
|
-
type: 'figma',
|
|
44
|
-
url: 'TODO: Add Figma URL',
|
|
45
|
-
},
|
|
46
|
-
},
|
|
47
|
-
} as Meta<ChipProps>;
|
|
48
|
-
|
|
49
|
-
type Story = StoryObj<ChipProps>;
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* Default chip with medium size and default type
|
|
53
|
-
*/
|
|
54
|
-
export const Default: Story = {
|
|
55
|
-
args: {
|
|
56
|
-
children: 'Default Chip',
|
|
57
|
-
},
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* Extra small chip - the smallest size available
|
|
62
|
-
*/
|
|
63
|
-
export const ExtraSmall: Story = {
|
|
64
|
-
args: {
|
|
65
|
-
size: CHIP_SIZES.EXTRA_SMALL,
|
|
66
|
-
children: 'XS Chip',
|
|
67
|
-
},
|
|
68
|
-
};
|
|
69
|
-
|
|
70
|
-
/**
|
|
71
|
-
* Small chip size
|
|
72
|
-
*/
|
|
73
|
-
export const Small: Story = {
|
|
74
|
-
args: {
|
|
75
|
-
size: CHIP_SIZES.SMALL,
|
|
76
|
-
children: 'Small Chip',
|
|
77
|
-
},
|
|
78
|
-
};
|
|
79
|
-
|
|
80
|
-
/**
|
|
81
|
-
* Medium chip size (default)
|
|
82
|
-
*/
|
|
83
|
-
export const Medium: Story = {
|
|
84
|
-
args: {
|
|
85
|
-
size: CHIP_SIZES.MEDIUM,
|
|
86
|
-
children: 'Medium Chip',
|
|
87
|
-
},
|
|
88
|
-
};
|
|
89
|
-
|
|
90
|
-
/**
|
|
91
|
-
* Large chip size
|
|
92
|
-
*/
|
|
93
|
-
export const Large: Story = {
|
|
94
|
-
args: {
|
|
95
|
-
size: CHIP_SIZES.LARGE,
|
|
96
|
-
children: 'Large Chip',
|
|
97
|
-
},
|
|
98
|
-
};
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* Primary chip type with brand colors
|
|
102
|
-
*/
|
|
103
|
-
export const Primary: Story = {
|
|
104
|
-
args: {
|
|
105
|
-
type: CHIP_TYPES.PRIMARY,
|
|
106
|
-
children: 'Primary Chip',
|
|
107
|
-
},
|
|
108
|
-
};
|
|
109
|
-
|
|
110
|
-
/**
|
|
111
|
-
* Success chip type for positive states
|
|
112
|
-
*/
|
|
113
|
-
export const Success: Story = {
|
|
114
|
-
args: {
|
|
115
|
-
type: CHIP_TYPES.SUCCESS,
|
|
116
|
-
children: 'Success Chip',
|
|
117
|
-
},
|
|
118
|
-
};
|
|
119
|
-
|
|
120
|
-
/**
|
|
121
|
-
* Warning chip type for cautionary states
|
|
122
|
-
*/
|
|
123
|
-
export const Warning: Story = {
|
|
124
|
-
args: {
|
|
125
|
-
type: CHIP_TYPES.WARNING,
|
|
126
|
-
children: 'Warning Chip',
|
|
127
|
-
},
|
|
128
|
-
};
|
|
129
|
-
|
|
130
|
-
/**
|
|
131
|
-
* Danger chip type for error or critical states
|
|
132
|
-
*/
|
|
133
|
-
export const Danger: Story = {
|
|
134
|
-
args: {
|
|
135
|
-
type: CHIP_TYPES.DANGER,
|
|
136
|
-
children: 'Danger Chip',
|
|
137
|
-
},
|
|
138
|
-
};
|
|
139
|
-
|
|
140
|
-
/**
|
|
141
|
-
* Chip with an icon on the right side
|
|
142
|
-
*/
|
|
143
|
-
export const WithIcon: Story = {
|
|
144
|
-
args: {
|
|
145
|
-
children: 'Starred',
|
|
146
|
-
icon: mockIcons.star,
|
|
147
|
-
},
|
|
148
|
-
};
|
|
149
|
-
|
|
150
|
-
/**
|
|
151
|
-
* Primary chip with check icon
|
|
152
|
-
*/
|
|
153
|
-
export const PrimaryWithIcon: Story = {
|
|
154
|
-
args: {
|
|
155
|
-
type: CHIP_TYPES.PRIMARY,
|
|
156
|
-
children: 'Completed',
|
|
157
|
-
icon: mockIcons.check,
|
|
158
|
-
},
|
|
159
|
-
};
|
|
160
|
-
|
|
161
|
-
/**
|
|
162
|
-
* Success chip with check icon
|
|
163
|
-
*/
|
|
164
|
-
export const SuccessWithIcon: Story = {
|
|
165
|
-
args: {
|
|
166
|
-
type: CHIP_TYPES.SUCCESS,
|
|
167
|
-
children: 'Verified',
|
|
168
|
-
icon: mockIcons.check,
|
|
169
|
-
},
|
|
170
|
-
};
|
|
171
|
-
|
|
172
|
-
/**
|
|
173
|
-
* Warning chip with warning icon
|
|
174
|
-
*/
|
|
175
|
-
export const WarningWithIcon: Story = {
|
|
176
|
-
args: {
|
|
177
|
-
type: CHIP_TYPES.WARNING,
|
|
178
|
-
children: 'Caution',
|
|
179
|
-
icon: mockIcons.warning,
|
|
180
|
-
},
|
|
181
|
-
};
|
|
182
|
-
|
|
183
|
-
/**
|
|
184
|
-
* Danger chip with error icon
|
|
185
|
-
*/
|
|
186
|
-
export const DangerWithIcon: Story = {
|
|
187
|
-
args: {
|
|
188
|
-
type: CHIP_TYPES.DANGER,
|
|
189
|
-
children: 'Error',
|
|
190
|
-
icon: mockIcons.error,
|
|
191
|
-
},
|
|
192
|
-
};
|
|
193
|
-
|
|
194
|
-
/**
|
|
195
|
-
* Clickable chip with pointer cursor
|
|
196
|
-
*/
|
|
197
|
-
export const Clickable: Story = {
|
|
198
|
-
args: {
|
|
199
|
-
children: 'Click me',
|
|
200
|
-
clickable: true,
|
|
201
|
-
},
|
|
202
|
-
};
|
|
203
|
-
|
|
204
|
-
/**
|
|
205
|
-
* Non-clickable chip with default cursor
|
|
206
|
-
*/
|
|
207
|
-
export const NonClickable: Story = {
|
|
208
|
-
args: {
|
|
209
|
-
children: 'Static chip',
|
|
210
|
-
clickable: false,
|
|
211
|
-
},
|
|
212
|
-
};
|
|
213
|
-
|
|
214
|
-
/**
|
|
215
|
-
* Large primary clickable chip with icon
|
|
216
|
-
*/
|
|
217
|
-
export const LargePrimaryClickableWithIcon: Story = {
|
|
218
|
-
args: {
|
|
219
|
-
type: CHIP_TYPES.PRIMARY,
|
|
220
|
-
size: CHIP_SIZES.LARGE,
|
|
221
|
-
children: 'Premium Feature',
|
|
222
|
-
icon: mockIcons.star,
|
|
223
|
-
clickable: true,
|
|
224
|
-
},
|
|
225
|
-
};
|
|
226
|
-
|
|
227
|
-
/**
|
|
228
|
-
* Small success chip showing status
|
|
229
|
-
*/
|
|
230
|
-
export const SmallStatusChip: Story = {
|
|
231
|
-
args: {
|
|
232
|
-
type: CHIP_TYPES.SUCCESS,
|
|
233
|
-
size: CHIP_SIZES.SMALL,
|
|
234
|
-
children: 'Active',
|
|
235
|
-
},
|
|
236
|
-
};
|
|
237
|
-
|
|
238
|
-
/**
|
|
239
|
-
* Extra small chip for compact layouts
|
|
240
|
-
*/
|
|
241
|
-
export const ExtraSmallTag: Story = {
|
|
242
|
-
args: {
|
|
243
|
-
size: CHIP_SIZES.EXTRA_SMALL,
|
|
244
|
-
children: 'Tag',
|
|
245
|
-
icon: mockIcons.tag,
|
|
246
|
-
},
|
|
247
|
-
};
|
|
248
|
-
|
|
249
|
-
/**
|
|
250
|
-
* Chip with longer text content
|
|
251
|
-
*/
|
|
252
|
-
export const WithLongText: Story = {
|
|
253
|
-
args: {
|
|
254
|
-
children: 'This is a longer chip text',
|
|
255
|
-
type: CHIP_TYPES.PRIMARY,
|
|
256
|
-
},
|
|
257
|
-
};
|
|
258
|
-
|
|
259
|
-
/**
|
|
260
|
-
* Multiple chips showcasing different types in one view
|
|
261
|
-
*/
|
|
262
|
-
export const AllTypes: Story = {
|
|
263
|
-
render: () => (
|
|
264
|
-
<div style={{ display: 'flex', gap: '8px', flexWrap: 'wrap' }}>
|
|
265
|
-
<Chip type={CHIP_TYPES.DEFAULT}>Default</Chip>
|
|
266
|
-
<Chip type={CHIP_TYPES.PRIMARY}>Primary</Chip>
|
|
267
|
-
<Chip type={CHIP_TYPES.SUCCESS}>Success</Chip>
|
|
268
|
-
<Chip type={CHIP_TYPES.WARNING}>Warning</Chip>
|
|
269
|
-
<Chip type={CHIP_TYPES.DANGER}>Danger</Chip>
|
|
270
|
-
</div>
|
|
271
|
-
),
|
|
272
|
-
};
|
|
273
|
-
|
|
274
|
-
/**
|
|
275
|
-
* Multiple chips showcasing different sizes in one view
|
|
276
|
-
*/
|
|
277
|
-
export const AllSizes: Story = {
|
|
278
|
-
render: () => (
|
|
279
|
-
<div style={{ display: 'flex', gap: '8px', alignItems: 'center', flexWrap: 'wrap' }}>
|
|
280
|
-
<Chip size={CHIP_SIZES.EXTRA_SMALL}>XS</Chip>
|
|
281
|
-
<Chip size={CHIP_SIZES.SMALL}>Small</Chip>
|
|
282
|
-
<Chip size={CHIP_SIZES.MEDIUM}>Medium</Chip>
|
|
283
|
-
<Chip size={CHIP_SIZES.LARGE}>Large</Chip>
|
|
284
|
-
</div>
|
|
285
|
-
),
|
|
286
|
-
};
|
|
287
|
-
|
|
288
|
-
/**
|
|
289
|
-
* Chips with various icons demonstrating versatility
|
|
290
|
-
*/
|
|
291
|
-
export const WithVariousIcons: Story = {
|
|
292
|
-
render: () => (
|
|
293
|
-
<div style={{ display: 'flex', gap: '8px', flexWrap: 'wrap' }}>
|
|
294
|
-
<Chip type={CHIP_TYPES.SUCCESS} icon={mockIcons.check}>
|
|
295
|
-
Approved
|
|
296
|
-
</Chip>
|
|
297
|
-
<Chip type={CHIP_TYPES.WARNING} icon={mockIcons.warning}>
|
|
298
|
-
Pending
|
|
299
|
-
</Chip>
|
|
300
|
-
<Chip type={CHIP_TYPES.DANGER} icon={mockIcons.error}>
|
|
301
|
-
Failed
|
|
302
|
-
</Chip>
|
|
303
|
-
<Chip type={CHIP_TYPES.PRIMARY} icon={mockIcons.heart}>
|
|
304
|
-
Favorite
|
|
305
|
-
</Chip>
|
|
306
|
-
<Chip type={CHIP_TYPES.DEFAULT} icon={mockIcons.info}>
|
|
307
|
-
Info
|
|
308
|
-
</Chip>
|
|
309
|
-
</div>
|
|
310
|
-
),
|
|
311
|
-
};
|
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
import clsx from 'clsx';
|
|
2
|
-
import type { FC } from 'react';
|
|
3
|
-
import type React from 'react';
|
|
4
|
-
import { forwardRef } from 'react';
|
|
5
|
-
import styled, { css } from 'styled-components';
|
|
6
|
-
|
|
7
|
-
import { theme } from '../../design_system/theme';
|
|
8
|
-
import type { ValueOf } from '../../internal_type_utils';
|
|
9
|
-
import type { RegularBoxProps } from '../box';
|
|
10
|
-
|
|
11
|
-
export const CHIP_SIZES = {
|
|
12
|
-
EXTRA_SMALL: 'XS',
|
|
13
|
-
SMALL: 'S',
|
|
14
|
-
MEDIUM: 'M',
|
|
15
|
-
LARGE: 'L',
|
|
16
|
-
} as const;
|
|
17
|
-
type CHIP_SIZES = ValueOf<typeof CHIP_SIZES>;
|
|
18
|
-
|
|
19
|
-
export const CHIP_TYPES = {
|
|
20
|
-
DEFAULT: 'DEFAULT',
|
|
21
|
-
PRIMARY: 'PRIMARY',
|
|
22
|
-
SUCCESS: 'SUCCESS',
|
|
23
|
-
WARNING: 'WARNING',
|
|
24
|
-
DANGER: 'DANGER',
|
|
25
|
-
} as const;
|
|
26
|
-
export type CHIP_TYPES = ValueOf<typeof CHIP_TYPES>;
|
|
27
|
-
|
|
28
|
-
export const classNames = {
|
|
29
|
-
BODY: 'Chip-body',
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
const chipSizeStyle = {
|
|
33
|
-
[CHIP_SIZES.EXTRA_SMALL]: css`
|
|
34
|
-
font-size: 12px;
|
|
35
|
-
line-height: 16px;
|
|
36
|
-
padding: 0 4px;
|
|
37
|
-
border-radius: 6px;
|
|
38
|
-
`,
|
|
39
|
-
[CHIP_SIZES.SMALL]: css`
|
|
40
|
-
font-size: 12px;
|
|
41
|
-
line-height: 16px;
|
|
42
|
-
padding: 2px 4px;
|
|
43
|
-
border-radius: 6px;
|
|
44
|
-
`,
|
|
45
|
-
[CHIP_SIZES.MEDIUM]: css`
|
|
46
|
-
font-size: 14px;
|
|
47
|
-
line-height: 20px;
|
|
48
|
-
padding: 2px 8px;
|
|
49
|
-
border-radius: 100px;
|
|
50
|
-
`,
|
|
51
|
-
[CHIP_SIZES.LARGE]: css`
|
|
52
|
-
/* TODO: (typography-mismatch) 16px/20px does not match any canonical typography token — needs designer input. Blocks migrating chipSizeStyle to typography token interpolations (XS/S match bodyS, M matches bodyM). */
|
|
53
|
-
font-size: 16px;
|
|
54
|
-
line-height: 20px;
|
|
55
|
-
padding: 2px 8px;
|
|
56
|
-
border-radius: 100px;
|
|
57
|
-
`,
|
|
58
|
-
} satisfies Record<CHIP_SIZES, unknown>;
|
|
59
|
-
|
|
60
|
-
const chipTypeStyle = {
|
|
61
|
-
[CHIP_TYPES.DEFAULT]: css`
|
|
62
|
-
color: ${theme.color.neutral.text};
|
|
63
|
-
background: ${theme.color.neutral.chipBackground};
|
|
64
|
-
`,
|
|
65
|
-
[CHIP_TYPES.PRIMARY]: css`
|
|
66
|
-
color: ${theme.color.primary.chipText};
|
|
67
|
-
background: ${theme.color.primary.chipBackground};
|
|
68
|
-
`,
|
|
69
|
-
[CHIP_TYPES.SUCCESS]: css`
|
|
70
|
-
color: ${theme.color.success.chipText};
|
|
71
|
-
background: ${theme.color.success.chipBackground};
|
|
72
|
-
`,
|
|
73
|
-
[CHIP_TYPES.WARNING]: css`
|
|
74
|
-
color: ${theme.color.warning.chipText};
|
|
75
|
-
background: ${theme.color.warning.chipBackground};
|
|
76
|
-
`,
|
|
77
|
-
[CHIP_TYPES.DANGER]: css`
|
|
78
|
-
color: ${theme.color.danger.chipText};
|
|
79
|
-
background: ${theme.color.danger.chipBackground};
|
|
80
|
-
`,
|
|
81
|
-
} satisfies Record<CHIP_TYPES, unknown>;
|
|
82
|
-
|
|
83
|
-
const chipTypeHoverStyle = {
|
|
84
|
-
[CHIP_TYPES.DEFAULT]: css`
|
|
85
|
-
background: ${theme.color.neutral.chipBackgroundHover};
|
|
86
|
-
`,
|
|
87
|
-
[CHIP_TYPES.PRIMARY]: css`
|
|
88
|
-
background: ${theme.color.primary.chipBackgroundHover};
|
|
89
|
-
`,
|
|
90
|
-
[CHIP_TYPES.SUCCESS]: css`
|
|
91
|
-
background: ${theme.color.success.chipBackgroundHover};
|
|
92
|
-
`,
|
|
93
|
-
[CHIP_TYPES.WARNING]: css`
|
|
94
|
-
background: ${theme.color.warning.chipBackgroundHover};
|
|
95
|
-
`,
|
|
96
|
-
[CHIP_TYPES.DANGER]: css`
|
|
97
|
-
background: ${theme.color.danger.chipBackgroundHover};
|
|
98
|
-
`,
|
|
99
|
-
} satisfies Record<CHIP_TYPES, unknown>;
|
|
100
|
-
|
|
101
|
-
const StyledChip = styled.span<{ size: CHIP_SIZES; type: CHIP_TYPES; clickable: boolean }>`
|
|
102
|
-
${({ size }) => chipSizeStyle[size]};
|
|
103
|
-
${({ type }) => chipTypeStyle[type]};
|
|
104
|
-
${({ type, clickable }) =>
|
|
105
|
-
clickable &&
|
|
106
|
-
css`
|
|
107
|
-
&:hover {
|
|
108
|
-
${chipTypeHoverStyle[type]};
|
|
109
|
-
}
|
|
110
|
-
`};
|
|
111
|
-
/* Static styles */
|
|
112
|
-
width: fit-content;
|
|
113
|
-
display: flex;
|
|
114
|
-
flex-direction: row;
|
|
115
|
-
justify-content: center;
|
|
116
|
-
align-items: center;
|
|
117
|
-
/* TODO: (typography-keyword) 'normal' keyword used instead of numeric value (400) or typography token. */
|
|
118
|
-
font-weight: normal;
|
|
119
|
-
white-space: nowrap;
|
|
120
|
-
cursor: ${({ clickable }) => (clickable ? 'pointer' : 'default')};
|
|
121
|
-
gap: ${theme.space.space4};
|
|
122
|
-
`;
|
|
123
|
-
|
|
124
|
-
export type ChipProps = RegularBoxProps & {
|
|
125
|
-
type?: CHIP_TYPES;
|
|
126
|
-
size?: CHIP_SIZES;
|
|
127
|
-
icon?: React.ReactNode;
|
|
128
|
-
clickable?: boolean;
|
|
129
|
-
};
|
|
130
|
-
|
|
131
|
-
/**
|
|
132
|
-
* Component for displaying status and for labelling other components.
|
|
133
|
-
* @deprecated Use Tag or Badge
|
|
134
|
-
*/
|
|
135
|
-
export const Chip = forwardRef(
|
|
136
|
-
(
|
|
137
|
-
{
|
|
138
|
-
type = CHIP_TYPES.DEFAULT,
|
|
139
|
-
size = CHIP_SIZES.MEDIUM,
|
|
140
|
-
clickable = false,
|
|
141
|
-
icon,
|
|
142
|
-
children,
|
|
143
|
-
className,
|
|
144
|
-
...passThroughProps
|
|
145
|
-
}: ChipProps,
|
|
146
|
-
ref,
|
|
147
|
-
) => {
|
|
148
|
-
const otherProps = { ...passThroughProps, type, size, clickable, className: clsx(className, classNames.BODY) };
|
|
149
|
-
|
|
150
|
-
return (
|
|
151
|
-
<StyledChip ref={ref} {...otherProps}>
|
|
152
|
-
{children}
|
|
153
|
-
{icon}
|
|
154
|
-
</StyledChip>
|
|
155
|
-
);
|
|
156
|
-
},
|
|
157
|
-
);
|
|
158
|
-
|
|
159
|
-
Chip.displayName = 'Chip';
|
|
160
|
-
|
|
161
|
-
type SpecificChipProps = Omit<ChipProps, 'type'>;
|
|
162
|
-
|
|
163
|
-
export const PrimaryChip: FC<SpecificChipProps> = (props) => <Chip type={CHIP_TYPES.PRIMARY} {...props} />;
|
|
164
|
-
export const NeutralChip: FC<SpecificChipProps> = (props) => <Chip type={CHIP_TYPES.DEFAULT} {...props} />;
|
|
165
|
-
export const SuccessChip: FC<SpecificChipProps> = (props) => <Chip type={CHIP_TYPES.SUCCESS} {...props} />;
|
|
166
|
-
export const DangerChip: FC<SpecificChipProps> = (props) => <Chip type={CHIP_TYPES.DANGER} {...props} />;
|
|
167
|
-
export const WarningChip: FC<SpecificChipProps> = (props) => <Chip type={CHIP_TYPES.WARNING} {...props} />;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './chip';
|