@channel.io/bezier-react 2.0.7 → 2.0.8
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/cjs/components/AlphaAvatar/Avatar.js +2 -2
- package/dist/cjs/components/AlphaAvatar/Avatar.js.map +1 -1
- package/dist/cjs/components/AlphaAvatar/AvatarSizeContext.js +11 -0
- package/dist/cjs/components/AlphaAvatar/AvatarSizeContext.js.map +1 -0
- package/dist/cjs/components/AlphaAvatarGroup/AvatarGroup.js +2 -4
- package/dist/cjs/components/AlphaAvatarGroup/AvatarGroup.js.map +1 -1
- package/dist/cjs/components/AlphaButton/Button.js +4 -12
- package/dist/cjs/components/AlphaButton/Button.js.map +1 -1
- package/dist/cjs/components/AlphaButton/Button.module.scss.js +1 -1
- package/dist/cjs/components/AlphaFloatingButton/FloatingButton.js +4 -12
- package/dist/cjs/components/AlphaFloatingButton/FloatingButton.js.map +1 -1
- package/dist/cjs/components/AlphaFloatingButton/FloatingButton.module.scss.js +1 -1
- package/dist/cjs/components/AlphaFloatingIconButton/FloatingIconButton.js +4 -12
- package/dist/cjs/components/AlphaFloatingIconButton/FloatingIconButton.js.map +1 -1
- package/dist/cjs/components/AlphaFloatingIconButton/FloatingIconButton.module.scss.js +1 -1
- package/dist/cjs/components/AlphaIconButton/IconButton.js +4 -12
- package/dist/cjs/components/AlphaIconButton/IconButton.js.map +1 -1
- package/dist/cjs/components/AlphaIconButton/IconButton.module.scss.js +1 -1
- package/dist/cjs/components/AlphaSpinner/Spinner.js +5 -7
- package/dist/cjs/components/AlphaSpinner/Spinner.js.map +1 -1
- package/dist/cjs/components/Icon/Icon.js +1 -12
- package/dist/cjs/components/Icon/Icon.js.map +1 -1
- package/dist/cjs/components/Icon/Icon.module.scss.js +1 -1
- package/dist/cjs/styles.css +1 -1
- package/dist/esm/components/AlphaAvatar/Avatar.mjs +2 -2
- package/dist/esm/components/AlphaAvatar/Avatar.mjs.map +1 -1
- package/dist/esm/components/AlphaAvatar/AvatarSizeContext.mjs +8 -0
- package/dist/esm/components/AlphaAvatar/AvatarSizeContext.mjs.map +1 -0
- package/dist/esm/components/AlphaAvatarGroup/AvatarGroup.mjs +3 -4
- package/dist/esm/components/AlphaAvatarGroup/AvatarGroup.mjs.map +1 -1
- package/dist/esm/components/AlphaButton/Button.mjs +4 -12
- package/dist/esm/components/AlphaButton/Button.mjs.map +1 -1
- package/dist/esm/components/AlphaButton/Button.module.scss.mjs +1 -1
- package/dist/esm/components/AlphaFloatingButton/FloatingButton.mjs +4 -12
- package/dist/esm/components/AlphaFloatingButton/FloatingButton.mjs.map +1 -1
- package/dist/esm/components/AlphaFloatingButton/FloatingButton.module.scss.mjs +1 -1
- package/dist/esm/components/AlphaFloatingIconButton/FloatingIconButton.mjs +4 -12
- package/dist/esm/components/AlphaFloatingIconButton/FloatingIconButton.mjs.map +1 -1
- package/dist/esm/components/AlphaFloatingIconButton/FloatingIconButton.module.scss.mjs +1 -1
- package/dist/esm/components/AlphaIconButton/IconButton.mjs +4 -12
- package/dist/esm/components/AlphaIconButton/IconButton.mjs.map +1 -1
- package/dist/esm/components/AlphaIconButton/IconButton.module.scss.mjs +1 -1
- package/dist/esm/components/AlphaSpinner/Spinner.mjs +5 -7
- package/dist/esm/components/AlphaSpinner/Spinner.mjs.map +1 -1
- package/dist/esm/components/Icon/Icon.mjs +1 -12
- package/dist/esm/components/Icon/Icon.mjs.map +1 -1
- package/dist/esm/components/Icon/Icon.module.scss.mjs +1 -1
- package/dist/esm/styles.css +1 -1
- package/dist/types/components/AlphaAvatar/AvatarSizeContext.d.ts +5 -0
- package/dist/types/components/AlphaAvatar/AvatarSizeContext.d.ts.map +1 -0
- package/dist/types/components/AlphaAvatarGroup/AvatarGroup.d.ts +1 -3
- package/dist/types/components/AlphaAvatarGroup/AvatarGroup.d.ts.map +1 -1
- package/dist/types/components/AlphaAvatarGroup/AvatarGroup.types.d.ts +1 -3
- package/dist/types/components/AlphaAvatarGroup/AvatarGroup.types.d.ts.map +1 -1
- package/dist/types/components/AlphaButton/Button.d.ts.map +1 -1
- package/dist/types/components/AlphaFloatingButton/FloatingButton.d.ts.map +1 -1
- package/dist/types/components/AlphaFloatingIconButton/FloatingIconButton.d.ts.map +1 -1
- package/dist/types/components/AlphaIconButton/IconButton.d.ts.map +1 -1
- package/dist/types/components/AlphaSpinner/Spinner.d.ts.map +1 -1
- package/dist/types/components/Icon/Icon.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/components/AlphaAvatar/Avatar.tsx +2 -2
- package/src/components/AlphaAvatar/AvatarSizeContext.ts +9 -0
- package/src/components/AlphaAvatarGroup/AvatarGroup.tsx +4 -13
- package/src/components/AlphaAvatarGroup/AvatarGroup.types.ts +0 -3
- package/src/components/AlphaAvatarGroup/__snapshots__/AvatarGroup.test.tsx.snap +3 -3
- package/src/components/AlphaButton/Button.module.scss +22 -8
- package/src/components/AlphaButton/Button.tsx +11 -16
- package/src/components/AlphaFloatingButton/FloatingButton.module.scss +18 -6
- package/src/components/AlphaFloatingButton/FloatingButton.tsx +11 -16
- package/src/components/AlphaFloatingIconButton/FloatingIconButton.module.scss +14 -4
- package/src/components/AlphaFloatingIconButton/FloatingIconButton.tsx +11 -16
- package/src/components/AlphaIconButton/IconButton.module.scss +21 -9
- package/src/components/AlphaIconButton/IconButton.tsx +11 -16
- package/src/components/AlphaSpinner/Spinner.module.scss +20 -11
- package/src/components/AlphaSpinner/Spinner.tsx +4 -5
- package/src/components/AvatarGroup/__snapshots__/AvatarGroup.test.tsx.snap +3 -3
- package/src/components/Help/__snapshots__/Help.test.tsx.snap +3 -3
- package/src/components/Icon/Icon.module.scss +18 -0
- package/src/components/Icon/Icon.tsx +7 -17
- package/src/components/NavGroup/__snapshots__/NavGroup.test.tsx.snap +12 -12
- package/src/components/NavItem/__snapshots__/NavItem.test.tsx.snap +6 -6
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
@use '../../styles/mixins/dimension';
|
|
2
2
|
|
|
3
|
+
@import '../Icon/Icon.module';
|
|
4
|
+
|
|
3
5
|
$chromatic-colors: 'blue', 'red', 'green', 'cobalt', 'orange', 'pink', 'purple';
|
|
4
6
|
|
|
5
7
|
.IconButton {
|
|
@@ -50,10 +52,11 @@ $chromatic-colors: 'blue', 'red', 'green', 'cobalt', 'orange', 'pink', 'purple';
|
|
|
50
52
|
purple: var(--alpha-color-bg-purple-normal),
|
|
51
53
|
dark-grey: var(--alpha-color-bg-grey-darkest),
|
|
52
54
|
light-grey: var(--alpha-color-bg-black-dark),
|
|
55
|
+
white: var(--alpha-color-bg-absolute-white-dark),
|
|
53
56
|
);
|
|
54
57
|
|
|
55
58
|
@each $color, $background-color in $background-color-by-color {
|
|
56
|
-
&:where(.color-#{$color}) {
|
|
59
|
+
&:where(.color-#{'' + $color}) {
|
|
57
60
|
background-color: $background-color;
|
|
58
61
|
}
|
|
59
62
|
}
|
|
@@ -70,17 +73,18 @@ $chromatic-colors: 'blue', 'red', 'green', 'cobalt', 'orange', 'pink', 'purple';
|
|
|
70
73
|
purple: var(--alpha-color-bg-purple-lightest),
|
|
71
74
|
dark-grey: var(--alpha-color-bg-black-lighter),
|
|
72
75
|
light-grey: var(--alpha-color-bg-black-lighter),
|
|
76
|
+
white: var(--alpha-color-bg-absolute-white-lightest),
|
|
73
77
|
);
|
|
74
78
|
|
|
75
79
|
@each $color, $background-color in $background-color-by-color {
|
|
76
|
-
&:where(.color-#{$color}) {
|
|
80
|
+
&:where(.color-#{'' + $color}) {
|
|
77
81
|
background-color: $background-color;
|
|
78
82
|
}
|
|
79
83
|
}
|
|
80
84
|
}
|
|
81
85
|
|
|
82
86
|
&:where(.variant-tertiary) {
|
|
83
|
-
background-color:
|
|
87
|
+
background-color: var(--alpha-color-bg-white-white-alpha-transparent);
|
|
84
88
|
}
|
|
85
89
|
|
|
86
90
|
/* color */
|
|
@@ -111,7 +115,7 @@ $chromatic-colors: 'blue', 'red', 'green', 'cobalt', 'orange', 'pink', 'purple';
|
|
|
111
115
|
);
|
|
112
116
|
|
|
113
117
|
@each $button-color, $color in $color-map {
|
|
114
|
-
&:where(.color-#{$button-color}) {
|
|
118
|
+
&:where(.color-#{'' + $button-color}) {
|
|
115
119
|
color: $color;
|
|
116
120
|
}
|
|
117
121
|
}
|
|
@@ -162,7 +166,7 @@ $chromatic-colors: 'blue', 'red', 'green', 'cobalt', 'orange', 'pink', 'purple';
|
|
|
162
166
|
&:where(.active, :hover):where(:not(:disabled)) {
|
|
163
167
|
&:where(.variant-primary) {
|
|
164
168
|
@each $color in $chromatic-colors {
|
|
165
|
-
&:where(.color-#{$color}) {
|
|
169
|
+
&:where(.color-#{'' + $color}) {
|
|
166
170
|
background-color: var(--bgtxt-#{$color}-dark);
|
|
167
171
|
}
|
|
168
172
|
}
|
|
@@ -178,7 +182,7 @@ $chromatic-colors: 'blue', 'red', 'green', 'cobalt', 'orange', 'pink', 'purple';
|
|
|
178
182
|
|
|
179
183
|
&:where(.variant-secondary) {
|
|
180
184
|
@each $color in $chromatic-colors {
|
|
181
|
-
&:where(.color-#{$color}) {
|
|
185
|
+
&:where(.color-#{'' + $color}) {
|
|
182
186
|
background-color: var(--bgtxt-#{$color}-lighter);
|
|
183
187
|
}
|
|
184
188
|
}
|
|
@@ -190,7 +194,7 @@ $chromatic-colors: 'blue', 'red', 'green', 'cobalt', 'orange', 'pink', 'purple';
|
|
|
190
194
|
|
|
191
195
|
&:where(.variant-tertiary) {
|
|
192
196
|
@each $color in $chromatic-colors {
|
|
193
|
-
&:where(.color-#{$color}) {
|
|
197
|
+
&:where(.color-#{'' + $color}) {
|
|
194
198
|
background-color: var(--bgtxt-#{$color}-lightest);
|
|
195
199
|
}
|
|
196
200
|
}
|
|
@@ -229,7 +233,7 @@ $chromatic-colors: 'blue', 'red', 'green', 'cobalt', 'orange', 'pink', 'purple';
|
|
|
229
233
|
}
|
|
230
234
|
|
|
231
235
|
/* internal components */
|
|
232
|
-
.ButtonContent {
|
|
236
|
+
& :where(.ButtonContent) {
|
|
233
237
|
display: flex;
|
|
234
238
|
align-items: center;
|
|
235
239
|
justify-content: center;
|
|
@@ -239,12 +243,20 @@ $chromatic-colors: 'blue', 'red', 'green', 'cobalt', 'orange', 'pink', 'purple';
|
|
|
239
243
|
}
|
|
240
244
|
}
|
|
241
245
|
|
|
242
|
-
.ButtonLoader {
|
|
246
|
+
& :where(.ButtonLoader) {
|
|
243
247
|
position: absolute;
|
|
244
248
|
inset: 0;
|
|
245
249
|
|
|
246
250
|
display: flex;
|
|
247
251
|
align-items: center;
|
|
248
252
|
justify-content: center;
|
|
253
|
+
|
|
254
|
+
@each $size, $value in $size-map {
|
|
255
|
+
&:where(.size-#{$size}) {
|
|
256
|
+
& :is(.Spinner) {
|
|
257
|
+
@include dimension.square(#{$value}px);
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
}
|
|
249
261
|
}
|
|
250
262
|
}
|
|
@@ -4,10 +4,10 @@ import { isBezierIcon } from '@channel.io/bezier-icons'
|
|
|
4
4
|
import classNames from 'classnames'
|
|
5
5
|
|
|
6
6
|
import { type AlphaIconButtonProps } from '~/src/components/AlphaIconButton'
|
|
7
|
+
import { AlphaSpinner } from '~/src/components/AlphaSpinner'
|
|
7
8
|
import { BaseButton } from '~/src/components/BaseButton'
|
|
8
9
|
import { type ButtonSize } from '~/src/components/Button'
|
|
9
10
|
import { Icon } from '~/src/components/Icon'
|
|
10
|
-
import { Spinner } from '~/src/components/Spinner'
|
|
11
11
|
|
|
12
12
|
import styles from './IconButton.module.scss'
|
|
13
13
|
|
|
@@ -23,18 +23,6 @@ function getIconSize(size: ButtonSize) {
|
|
|
23
23
|
)[size]
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
function getSpinnerSize(size: ButtonSize) {
|
|
27
|
-
return (
|
|
28
|
-
{
|
|
29
|
-
xs: 'xs',
|
|
30
|
-
s: 'xs',
|
|
31
|
-
m: 's',
|
|
32
|
-
l: 's',
|
|
33
|
-
xl: 's',
|
|
34
|
-
} as const
|
|
35
|
-
)[size]
|
|
36
|
-
}
|
|
37
|
-
|
|
38
26
|
export const IconButton = forwardRef<HTMLButtonElement, AlphaIconButtonProps>(
|
|
39
27
|
function IconButton(
|
|
40
28
|
{
|
|
@@ -84,10 +72,17 @@ export const IconButton = forwardRef<HTMLButtonElement, AlphaIconButtonProps>(
|
|
|
84
72
|
)}
|
|
85
73
|
</div>
|
|
86
74
|
|
|
87
|
-
{/* TODO: use AlphaSpinner */}
|
|
88
75
|
{loading && (
|
|
89
|
-
<div
|
|
90
|
-
|
|
76
|
+
<div
|
|
77
|
+
className={classNames(
|
|
78
|
+
styles.ButtonLoader,
|
|
79
|
+
styles[`size-${getIconSize(size)}`]
|
|
80
|
+
)}
|
|
81
|
+
>
|
|
82
|
+
<AlphaSpinner
|
|
83
|
+
className={styles.Spinner}
|
|
84
|
+
variant="on-overlay"
|
|
85
|
+
/>
|
|
91
86
|
</div>
|
|
92
87
|
)}
|
|
93
88
|
</Comp>
|
|
@@ -14,22 +14,26 @@
|
|
|
14
14
|
--b-spinner-size: initial;
|
|
15
15
|
--b-spinner-track-color: initial;
|
|
16
16
|
--b-spinner-indicator-color: initial;
|
|
17
|
-
--b-spinner-stroke-
|
|
18
|
-
--b-spinner-stroke-dasharray: initial;
|
|
17
|
+
--b-spinner-stroke-thickness: initial;
|
|
19
18
|
|
|
20
|
-
|
|
19
|
+
/* NOTE: stroke-width is fixed for the exceptional case of use inside buttons */
|
|
20
|
+
--b-spinner-stroke-width: 2px;
|
|
21
|
+
--b-spinner-view-box-size: 16;
|
|
22
|
+
--b-spinner-stroke-dasharray: 16 9999;
|
|
23
|
+
|
|
24
|
+
@include dimension.square(calc(1px * var(--b-spinner-size)));
|
|
21
25
|
|
|
22
26
|
display: inline-flex;
|
|
23
27
|
animation: rotate 1s linear infinite;
|
|
24
28
|
|
|
25
|
-
& .track {
|
|
29
|
+
& :where(.track) {
|
|
26
30
|
fill: none;
|
|
27
31
|
stroke: var(--b-spinner-track-color);
|
|
28
32
|
stroke-linecap: round;
|
|
29
33
|
stroke-width: var(--b-spinner-stroke-width);
|
|
30
34
|
}
|
|
31
35
|
|
|
32
|
-
& .indicator {
|
|
36
|
+
& :where(.indicator) {
|
|
33
37
|
fill: none;
|
|
34
38
|
stroke: var(--b-spinner-indicator-color);
|
|
35
39
|
stroke-dasharray: var(--b-spinner-stroke-dasharray);
|
|
@@ -37,16 +41,21 @@
|
|
|
37
41
|
stroke-width: var(--b-spinner-stroke-width);
|
|
38
42
|
}
|
|
39
43
|
|
|
44
|
+
&:where(.size-s, .size-m) {
|
|
45
|
+
--b-spinner-stroke-width: calc(
|
|
46
|
+
var(--b-spinner-stroke-thickness) * var(--b-spinner-view-box-size) /
|
|
47
|
+
var(--b-spinner-size)
|
|
48
|
+
);
|
|
49
|
+
}
|
|
50
|
+
|
|
40
51
|
&:where(.size-s) {
|
|
41
|
-
--b-spinner-size:
|
|
42
|
-
--b-spinner-stroke-
|
|
43
|
-
--b-spinner-stroke-dasharray: 40 9999;
|
|
52
|
+
--b-spinner-size: 28;
|
|
53
|
+
--b-spinner-stroke-thickness: 4px;
|
|
44
54
|
}
|
|
45
55
|
|
|
46
56
|
&:where(.size-m) {
|
|
47
|
-
--b-spinner-size:
|
|
48
|
-
--b-spinner-stroke-
|
|
49
|
-
--b-spinner-stroke-dasharray: 60 9999;
|
|
57
|
+
--b-spinner-size: 50;
|
|
58
|
+
--b-spinner-stroke-thickness: 6px;
|
|
50
59
|
}
|
|
51
60
|
|
|
52
61
|
&:where(.variant-primary) {
|
|
@@ -18,7 +18,8 @@ export const Spinner = forwardRef<HTMLSpanElement, SpinnerProps>(
|
|
|
18
18
|
className={classNames(
|
|
19
19
|
styles.Spinner,
|
|
20
20
|
size && styles[`size-${size}`],
|
|
21
|
-
styles[`variant-${variant}`]
|
|
21
|
+
styles[`variant-${variant}`],
|
|
22
|
+
className
|
|
22
23
|
)}
|
|
23
24
|
ref={forwardedRef}
|
|
24
25
|
data-testid={SPINNER_TEST_ID}
|
|
@@ -31,17 +32,15 @@ export const Spinner = forwardRef<HTMLSpanElement, SpinnerProps>(
|
|
|
31
32
|
<circle
|
|
32
33
|
cx="8"
|
|
33
34
|
cy="8"
|
|
34
|
-
r="
|
|
35
|
+
r="6.5"
|
|
35
36
|
className={styles.track}
|
|
36
|
-
vectorEffect="non-scaling-stroke"
|
|
37
37
|
/>
|
|
38
38
|
|
|
39
39
|
<circle
|
|
40
40
|
cx="8"
|
|
41
41
|
cy="8"
|
|
42
|
-
r="
|
|
42
|
+
r="6.5"
|
|
43
43
|
className={styles.indicator}
|
|
44
|
-
vectorEffect="non-scaling-stroke"
|
|
45
44
|
/>
|
|
46
45
|
</svg>
|
|
47
46
|
</span>
|
|
@@ -180,13 +180,13 @@ exports[`AvatarGroup Ellipsis type - Icon Snapshot 1`] = `
|
|
|
180
180
|
style="--b-smooth-corners-box-border-radius: 42%; --b-smooth-corners-box-shadow-blur-radius: 0px; --b-smooth-corners-box-shadow-spread-radius: 0px; --b-smooth-corners-box-padding: 0px; --b-smooth-corners-box-margin: 0px; --b-smooth-corners-box-background-color: var(--bgtxt-absolute-black-lightest);"
|
|
181
181
|
>
|
|
182
182
|
<svg
|
|
183
|
-
class="Icon margin"
|
|
183
|
+
class="Icon size-xs margin"
|
|
184
184
|
data-testid="bezier-icon"
|
|
185
185
|
fill="none"
|
|
186
|
-
height="
|
|
186
|
+
height="1em"
|
|
187
187
|
style="--b-icon-color: var(--bgtxt-absolute-white-dark);"
|
|
188
188
|
viewBox="0 0 24 24"
|
|
189
|
-
width="
|
|
189
|
+
width="1em"
|
|
190
190
|
xmlns="http://www.w3.org/2000/svg"
|
|
191
191
|
>
|
|
192
192
|
<path
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
exports[`Help > Snapshot > 1`] = `
|
|
4
4
|
<svg
|
|
5
|
-
class="Icon margin Icon"
|
|
5
|
+
class="Icon size-xs margin Icon"
|
|
6
6
|
data-testid="bezier-help"
|
|
7
7
|
fill="none"
|
|
8
|
-
height="
|
|
8
|
+
height="1em"
|
|
9
9
|
style="--b-icon-color: var(--txt-black-dark);"
|
|
10
10
|
viewBox="0 0 24 24"
|
|
11
|
-
width="
|
|
11
|
+
width="1em"
|
|
12
12
|
xmlns="http://www.w3.org/2000/svg"
|
|
13
13
|
>
|
|
14
14
|
<path
|
|
@@ -1,7 +1,25 @@
|
|
|
1
|
+
@use '../../styles/mixins/dimension';
|
|
2
|
+
|
|
3
|
+
$size-map: (
|
|
4
|
+
xxxs: 10,
|
|
5
|
+
xxs: 12,
|
|
6
|
+
xs: 16,
|
|
7
|
+
s: 20,
|
|
8
|
+
m: 24,
|
|
9
|
+
l: 36,
|
|
10
|
+
xl: 44,
|
|
11
|
+
);
|
|
12
|
+
|
|
1
13
|
.Icon {
|
|
2
14
|
--b-icon-color: initial;
|
|
3
15
|
|
|
4
16
|
flex: 0 0 auto;
|
|
5
17
|
color: var(--b-icon-color);
|
|
6
18
|
transition: color var(--transition-s);
|
|
19
|
+
|
|
20
|
+
@each $size, $value in $size-map {
|
|
21
|
+
&:where(.size-#{$size}) {
|
|
22
|
+
@include dimension.square(#{$value}px);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
7
25
|
}
|
|
@@ -5,25 +5,12 @@ import classNames from 'classnames'
|
|
|
5
5
|
import { getMarginStyles, splitByMarginProps } from '~/src/types/props-helpers'
|
|
6
6
|
import { tokenCssVar } from '~/src/utils/style'
|
|
7
7
|
|
|
8
|
-
import { type IconProps
|
|
8
|
+
import { type IconProps } from './Icon.types'
|
|
9
9
|
|
|
10
10
|
import styles from './Icon.module.scss'
|
|
11
11
|
|
|
12
12
|
export const ICON_TEST_ID = 'bezier-icon'
|
|
13
13
|
|
|
14
|
-
const getSizeValue = (size: IconSize) =>
|
|
15
|
-
(
|
|
16
|
-
({
|
|
17
|
-
xl: 44,
|
|
18
|
-
l: 36,
|
|
19
|
-
m: 24,
|
|
20
|
-
s: 20,
|
|
21
|
-
xs: 16,
|
|
22
|
-
xxs: 12,
|
|
23
|
-
xxxs: 10,
|
|
24
|
-
}) satisfies Record<IconSize, number>
|
|
25
|
-
)[size]
|
|
26
|
-
|
|
27
14
|
export const Icon = memo(
|
|
28
15
|
forwardRef<SVGSVGElement, IconProps>(function Icon(props, forwardedRef) {
|
|
29
16
|
const [marginProps, marginRest] = splitByMarginProps(props)
|
|
@@ -48,9 +35,12 @@ export const Icon = memo(
|
|
|
48
35
|
...style,
|
|
49
36
|
} as React.CSSProperties
|
|
50
37
|
}
|
|
51
|
-
className={classNames(
|
|
52
|
-
|
|
53
|
-
|
|
38
|
+
className={classNames(
|
|
39
|
+
styles.Icon,
|
|
40
|
+
styles[`size-${size}`],
|
|
41
|
+
marginStyles.className,
|
|
42
|
+
className
|
|
43
|
+
)}
|
|
54
44
|
data-testid={ICON_TEST_ID}
|
|
55
45
|
{...rest}
|
|
56
46
|
/>
|
|
@@ -13,13 +13,13 @@ exports[`NavGroup Test > Snapshot > Active 1`] = `
|
|
|
13
13
|
class="LeftIconWrapper"
|
|
14
14
|
>
|
|
15
15
|
<svg
|
|
16
|
-
class="Icon margin"
|
|
16
|
+
class="Icon size-s margin"
|
|
17
17
|
data-testid="bezier-nav-group-left-icon"
|
|
18
18
|
fill="none"
|
|
19
|
-
height="
|
|
19
|
+
height="1em"
|
|
20
20
|
style="--b-icon-color: var(--bgtxt-blue-normal);"
|
|
21
21
|
viewBox="0 0 24 24"
|
|
22
|
-
width="
|
|
22
|
+
width="1em"
|
|
23
23
|
xmlns="http://www.w3.org/2000/svg"
|
|
24
24
|
>
|
|
25
25
|
<path
|
|
@@ -40,13 +40,13 @@ exports[`NavGroup Test > Snapshot > Active 1`] = `
|
|
|
40
40
|
class="RightContentWrapper"
|
|
41
41
|
>
|
|
42
42
|
<svg
|
|
43
|
-
class="Icon margin"
|
|
43
|
+
class="Icon size-xs margin"
|
|
44
44
|
data-testid="bezier-icon"
|
|
45
45
|
fill="none"
|
|
46
|
-
height="
|
|
46
|
+
height="1em"
|
|
47
47
|
style="--b-icon-color: var(--bgtxt-orange-normal);"
|
|
48
48
|
viewBox="0 0 24 24"
|
|
49
|
-
width="
|
|
49
|
+
width="1em"
|
|
50
50
|
xmlns="http://www.w3.org/2000/svg"
|
|
51
51
|
>
|
|
52
52
|
<path
|
|
@@ -73,13 +73,13 @@ exports[`NavGroup Test > Snapshot > Not active 1`] = `
|
|
|
73
73
|
class="LeftIconWrapper"
|
|
74
74
|
>
|
|
75
75
|
<svg
|
|
76
|
-
class="Icon margin"
|
|
76
|
+
class="Icon size-s margin"
|
|
77
77
|
data-testid="bezier-nav-group-left-icon"
|
|
78
78
|
fill="none"
|
|
79
|
-
height="
|
|
79
|
+
height="1em"
|
|
80
80
|
style="--b-icon-color: var(--txt-black-dark);"
|
|
81
81
|
viewBox="0 0 24 24"
|
|
82
|
-
width="
|
|
82
|
+
width="1em"
|
|
83
83
|
xmlns="http://www.w3.org/2000/svg"
|
|
84
84
|
>
|
|
85
85
|
<path
|
|
@@ -100,13 +100,13 @@ exports[`NavGroup Test > Snapshot > Not active 1`] = `
|
|
|
100
100
|
class="RightContentWrapper"
|
|
101
101
|
>
|
|
102
102
|
<svg
|
|
103
|
-
class="Icon margin"
|
|
103
|
+
class="Icon size-xs margin"
|
|
104
104
|
data-testid="bezier-icon"
|
|
105
105
|
fill="none"
|
|
106
|
-
height="
|
|
106
|
+
height="1em"
|
|
107
107
|
style="--b-icon-color: var(--bgtxt-orange-normal);"
|
|
108
108
|
viewBox="0 0 24 24"
|
|
109
|
-
width="
|
|
109
|
+
width="1em"
|
|
110
110
|
xmlns="http://www.w3.org/2000/svg"
|
|
111
111
|
>
|
|
112
112
|
<path
|
|
@@ -11,13 +11,13 @@ exports[`NavItem Test > Snapshot > Active 1`] = `
|
|
|
11
11
|
class="LeftIconWrapper"
|
|
12
12
|
>
|
|
13
13
|
<svg
|
|
14
|
-
class="Icon margin"
|
|
14
|
+
class="Icon size-s margin"
|
|
15
15
|
data-testid="bezier-nav-item-left-icon"
|
|
16
16
|
fill="none"
|
|
17
|
-
height="
|
|
17
|
+
height="1em"
|
|
18
18
|
style="--b-icon-color: var(--bgtxt-blue-normal);"
|
|
19
19
|
viewBox="0 0 24 24"
|
|
20
|
-
width="
|
|
20
|
+
width="1em"
|
|
21
21
|
xmlns="http://www.w3.org/2000/svg"
|
|
22
22
|
>
|
|
23
23
|
<path
|
|
@@ -48,13 +48,13 @@ exports[`NavItem Test > Snapshot > Not active 1`] = `
|
|
|
48
48
|
class="LeftIconWrapper"
|
|
49
49
|
>
|
|
50
50
|
<svg
|
|
51
|
-
class="Icon margin"
|
|
51
|
+
class="Icon size-s margin"
|
|
52
52
|
data-testid="bezier-nav-item-left-icon"
|
|
53
53
|
fill="none"
|
|
54
|
-
height="
|
|
54
|
+
height="1em"
|
|
55
55
|
style="--b-icon-color: var(--txt-black-dark);"
|
|
56
56
|
viewBox="0 0 24 24"
|
|
57
|
-
width="
|
|
57
|
+
width="1em"
|
|
58
58
|
xmlns="http://www.w3.org/2000/svg"
|
|
59
59
|
>
|
|
60
60
|
<path
|