@atlaskit/radio 6.3.0 → 6.4.0
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/CHANGELOG.md +641 -637
- package/__perf__/default.tsx +8 -8
- package/__perf__/radio.tsx +66 -82
- package/dist/cjs/radio.js +19 -14
- package/dist/es2019/radio.js +20 -14
- package/dist/esm/radio.js +20 -14
- package/dist/types/radio-group.d.ts +3 -3
- package/dist/types/types.d.ts +2 -2
- package/dist/types-ts4.5/radio-group.d.ts +3 -3
- package/dist/types-ts4.5/types.d.ts +2 -2
- package/package.json +91 -93
- package/report.api.md +351 -362
package/__perf__/default.tsx
CHANGED
|
@@ -5,12 +5,12 @@ import noop from '@atlaskit/ds-lib/noop';
|
|
|
5
5
|
import { Radio } from '../src';
|
|
6
6
|
|
|
7
7
|
export default () => (
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
8
|
+
<Radio
|
|
9
|
+
value="default radio"
|
|
10
|
+
label="Default radio"
|
|
11
|
+
name="radio-default"
|
|
12
|
+
testId="radio-default"
|
|
13
|
+
isChecked={true}
|
|
14
|
+
onChange={noop}
|
|
15
|
+
/>
|
|
16
16
|
);
|
package/__perf__/radio.tsx
CHANGED
|
@@ -1,100 +1,84 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
|
|
3
3
|
import { fireEvent } from '@testing-library/react';
|
|
4
|
-
import {
|
|
5
|
-
InteractionTaskArgs,
|
|
6
|
-
PublicInteractionTask,
|
|
7
|
-
} from 'storybook-addon-performance';
|
|
4
|
+
import { type InteractionTaskArgs, type PublicInteractionTask } from 'storybook-addon-performance';
|
|
8
5
|
|
|
9
6
|
import RadioGroup from '../src/radio-group';
|
|
10
7
|
|
|
11
8
|
const interactionTasks: PublicInteractionTask[] = [
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}: InteractionTaskArgs): Promise<void> => {
|
|
55
|
-
const redRadio: HTMLElement | null = container.querySelector(
|
|
56
|
-
'input[name="color"][value="red"]',
|
|
57
|
-
);
|
|
58
|
-
if (redRadio == null) {
|
|
59
|
-
throw new Error('Could not find radio element');
|
|
60
|
-
}
|
|
61
|
-
const blueRadio: HTMLElement | null = container.querySelector(
|
|
62
|
-
'input[name="color"][value="blue"]',
|
|
63
|
-
);
|
|
64
|
-
if (blueRadio == null) {
|
|
65
|
-
throw new Error('Could not find radio element');
|
|
66
|
-
}
|
|
9
|
+
{
|
|
10
|
+
name: 'Select radio input',
|
|
11
|
+
description: 'Select a radio input when nothing is selected',
|
|
12
|
+
run: async ({ container, controls }: InteractionTaskArgs): Promise<void> => {
|
|
13
|
+
const radio: HTMLElement | null = container.querySelector('input[name="color"][value="red"]');
|
|
14
|
+
if (radio == null) {
|
|
15
|
+
throw new Error('Could not find radio element');
|
|
16
|
+
}
|
|
17
|
+
await controls.time(async () => {
|
|
18
|
+
fireEvent.click(radio);
|
|
19
|
+
});
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
name: 'Hovering radio input',
|
|
24
|
+
description: 'Hover over one radio input',
|
|
25
|
+
run: async ({ container, controls }: InteractionTaskArgs): Promise<void> => {
|
|
26
|
+
const radio: HTMLElement | null = container.querySelector('input[name="color"][value="red"]');
|
|
27
|
+
if (radio == null) {
|
|
28
|
+
throw new Error('Could not find radio element');
|
|
29
|
+
}
|
|
30
|
+
await controls.time(async () => {
|
|
31
|
+
fireEvent.mouseOver(radio);
|
|
32
|
+
});
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
name: 'Changing radio input',
|
|
37
|
+
description: 'Select a radio input then click on another radio input',
|
|
38
|
+
run: async ({ container, controls }: InteractionTaskArgs): Promise<void> => {
|
|
39
|
+
const redRadio: HTMLElement | null = container.querySelector(
|
|
40
|
+
'input[name="color"][value="red"]',
|
|
41
|
+
);
|
|
42
|
+
if (redRadio == null) {
|
|
43
|
+
throw new Error('Could not find radio element');
|
|
44
|
+
}
|
|
45
|
+
const blueRadio: HTMLElement | null = container.querySelector(
|
|
46
|
+
'input[name="color"][value="blue"]',
|
|
47
|
+
);
|
|
48
|
+
if (blueRadio == null) {
|
|
49
|
+
throw new Error('Could not find radio element');
|
|
50
|
+
}
|
|
67
51
|
|
|
68
|
-
|
|
52
|
+
fireEvent.click(redRadio);
|
|
69
53
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
54
|
+
await controls.time(async () => {
|
|
55
|
+
fireEvent.click(blueRadio);
|
|
56
|
+
});
|
|
57
|
+
},
|
|
58
|
+
},
|
|
75
59
|
];
|
|
76
60
|
|
|
77
61
|
function PerformanceComponent() {
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
62
|
+
return (
|
|
63
|
+
<RadioGroup
|
|
64
|
+
options={[
|
|
65
|
+
{ name: 'color', value: 'red', label: 'Red' },
|
|
66
|
+
{ name: 'color', value: 'blue', label: 'Blue' },
|
|
67
|
+
{ name: 'color', value: 'yellow', label: 'Yellow' },
|
|
68
|
+
{ name: 'color', value: 'green', label: 'Green' },
|
|
69
|
+
{ name: 'color', value: 'black', label: 'Black' },
|
|
70
|
+
]}
|
|
71
|
+
/>
|
|
72
|
+
);
|
|
89
73
|
}
|
|
90
74
|
|
|
91
75
|
PerformanceComponent.story = {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
76
|
+
name: 'Performance',
|
|
77
|
+
parameters: {
|
|
78
|
+
performance: {
|
|
79
|
+
interactions: interactionTasks,
|
|
80
|
+
},
|
|
81
|
+
},
|
|
98
82
|
};
|
|
99
83
|
|
|
100
84
|
export default PerformanceComponent;
|
package/dist/cjs/radio.js
CHANGED
|
@@ -13,9 +13,13 @@ var _usePlatformLeafEventHandler = require("@atlaskit/analytics-next/usePlatform
|
|
|
13
13
|
var _noop = _interopRequireDefault(require("@atlaskit/ds-lib/noop"));
|
|
14
14
|
var _colors = require("@atlaskit/theme/colors");
|
|
15
15
|
var _excluded = ["ariaLabel", "isDisabled", "isRequired", "isInvalid", "isChecked", "label", "name", "onChange", "value", "testId", "analyticsContext"];
|
|
16
|
+
/**
|
|
17
|
+
* @jsxRuntime classic
|
|
18
|
+
*/
|
|
16
19
|
/** @jsx jsx */
|
|
20
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
17
21
|
var packageName = "@atlaskit/radio";
|
|
18
|
-
var packageVersion = "6.
|
|
22
|
+
var packageVersion = "6.4.0";
|
|
19
23
|
var noop = _noop.default;
|
|
20
24
|
var labelPaddingStyles = (0, _react2.css)({
|
|
21
25
|
padding: "var(--ds-space-025, 2px)".concat(" ", "var(--ds-space-050, 4px)")
|
|
@@ -27,7 +31,7 @@ var labelStyles = (0, _react2.css)({
|
|
|
27
31
|
alignItems: 'flex-start',
|
|
28
32
|
color: "var(--ds-text, ".concat(_colors.N900, ")"),
|
|
29
33
|
font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, system-ui, \"Helvetica Neue\", sans-serif)",
|
|
30
|
-
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles
|
|
34
|
+
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles, @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
31
35
|
'&[data-disabled]': {
|
|
32
36
|
color: "var(--ds-text-disabled, ".concat(_colors.N80, ")"),
|
|
33
37
|
cursor: 'not-allowed'
|
|
@@ -37,12 +41,12 @@ var radioStyles = (0, _react2.css)({
|
|
|
37
41
|
display: 'flex',
|
|
38
42
|
// TODO https://product-fabric.atlassian.net/browse/DSP-10507 revisit and remove the scale of 14/24
|
|
39
43
|
/*
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
The circle should be 14px * 14px centred in a 24px * 24px box.
|
|
45
|
+
This is inclusive of a 2px border and inner circle with 2px radius.
|
|
46
|
+
There is a Chrome bug that makes the circle become an oval and the
|
|
47
|
+
inner circle not be centred at various zoom levels. This bug is fixed
|
|
48
|
+
in all browsers if a scale of 14/24 is applied.
|
|
49
|
+
*/
|
|
46
50
|
width: '24px',
|
|
47
51
|
height: '24px',
|
|
48
52
|
margin: "var(--ds-space-0, 0px)",
|
|
@@ -52,16 +56,16 @@ var radioStyles = (0, _react2.css)({
|
|
|
52
56
|
flexShrink: 0,
|
|
53
57
|
backgroundColor: 'var(--radio-background-color)',
|
|
54
58
|
/* Border should multiply by 24/14 to offset scale, a scale of 12 / 7 is to fix a Chrome bug that makes the circle become an oval and the
|
|
55
|
-
|
|
59
|
+
inner circle not be centred at various zoom levels */
|
|
56
60
|
border: "var(--ds-border-width, 1px)".concat(" solid var(--radio-border-color)"),
|
|
57
61
|
borderRadius: "var(--ds-border-radius-circle, 50%)",
|
|
58
62
|
MozAppearance: 'none',
|
|
59
63
|
outline: 'none',
|
|
60
64
|
/*
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
+
Change the variables --radio-background-color, --radio-border-color,
|
|
66
|
+
-radio-dot-color and -radio-dot-opacity according to user interactions.
|
|
67
|
+
All other variables are constant
|
|
68
|
+
*/
|
|
65
69
|
'--radio-background-color': "var(--ds-background-input, ".concat(_colors.N10, ")"),
|
|
66
70
|
'--radio-border-color': "var(--ds-border-input, ".concat(_colors.N100, ")"),
|
|
67
71
|
'--radio-dot-color': "var(--ds-icon-inverse, ".concat(_colors.N10, ")"),
|
|
@@ -112,10 +116,11 @@ var radioStyles = (0, _react2.css)({
|
|
|
112
116
|
outline: "var(--ds-border-width-outline, 3px)".concat(" solid ", "var(--ds-border-focused, ".concat(_colors.B200, ")")),
|
|
113
117
|
outlineOffset: "var(--ds-border-width-indicator, 3px)"
|
|
114
118
|
},
|
|
115
|
-
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles
|
|
119
|
+
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles, @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
116
120
|
'&[data-invalid], &:checked[data-invalid]': {
|
|
117
121
|
'--radio-border-color': "var(--ds-icon-danger, ".concat(_colors.R300, ")")
|
|
118
122
|
},
|
|
123
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
119
124
|
'&:disabled, &:disabled:hover, &:disabled:focus, &:disabled:active, &:disabled[data-invalid]': {
|
|
120
125
|
cursor: 'not-allowed',
|
|
121
126
|
'--radio-background-color': "var(--ds-background-disabled, ".concat(_colors.N20, ")"),
|
package/dist/es2019/radio.js
CHANGED
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
/**
|
|
3
|
+
* @jsxRuntime classic
|
|
4
|
+
*/
|
|
2
5
|
/** @jsx jsx */
|
|
3
6
|
import { forwardRef, memo } from 'react';
|
|
7
|
+
|
|
8
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
4
9
|
import { css, jsx } from '@emotion/react';
|
|
5
10
|
import { usePlatformLeafEventHandler } from '@atlaskit/analytics-next/usePlatformLeafEventHandler';
|
|
6
11
|
import __noop from '@atlaskit/ds-lib/noop';
|
|
7
12
|
import { B200, B300, B400, B50, N10, N100, N20, N30, N70, N80, N900, R300 } from '@atlaskit/theme/colors';
|
|
8
13
|
const packageName = "@atlaskit/radio";
|
|
9
|
-
const packageVersion = "6.
|
|
14
|
+
const packageVersion = "6.4.0";
|
|
10
15
|
const noop = __noop;
|
|
11
16
|
const labelPaddingStyles = css({
|
|
12
17
|
padding: `${"var(--ds-space-025, 2px)"} ${"var(--ds-space-050, 4px)"}`
|
|
@@ -18,7 +23,7 @@ const labelStyles = css({
|
|
|
18
23
|
alignItems: 'flex-start',
|
|
19
24
|
color: `var(--ds-text, ${N900})`,
|
|
20
25
|
font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, system-ui, \"Helvetica Neue\", sans-serif)",
|
|
21
|
-
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles
|
|
26
|
+
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles, @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
22
27
|
'&[data-disabled]': {
|
|
23
28
|
color: `var(--ds-text-disabled, ${N80})`,
|
|
24
29
|
cursor: 'not-allowed'
|
|
@@ -28,12 +33,12 @@ const radioStyles = css({
|
|
|
28
33
|
display: 'flex',
|
|
29
34
|
// TODO https://product-fabric.atlassian.net/browse/DSP-10507 revisit and remove the scale of 14/24
|
|
30
35
|
/*
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
36
|
+
The circle should be 14px * 14px centred in a 24px * 24px box.
|
|
37
|
+
This is inclusive of a 2px border and inner circle with 2px radius.
|
|
38
|
+
There is a Chrome bug that makes the circle become an oval and the
|
|
39
|
+
inner circle not be centred at various zoom levels. This bug is fixed
|
|
40
|
+
in all browsers if a scale of 14/24 is applied.
|
|
41
|
+
*/
|
|
37
42
|
width: '24px',
|
|
38
43
|
height: '24px',
|
|
39
44
|
margin: "var(--ds-space-0, 0px)",
|
|
@@ -43,16 +48,16 @@ const radioStyles = css({
|
|
|
43
48
|
flexShrink: 0,
|
|
44
49
|
backgroundColor: 'var(--radio-background-color)',
|
|
45
50
|
/* Border should multiply by 24/14 to offset scale, a scale of 12 / 7 is to fix a Chrome bug that makes the circle become an oval and the
|
|
46
|
-
|
|
51
|
+
inner circle not be centred at various zoom levels */
|
|
47
52
|
border: `${"var(--ds-border-width, 1px)"} solid var(--radio-border-color)`,
|
|
48
53
|
borderRadius: "var(--ds-border-radius-circle, 50%)",
|
|
49
54
|
MozAppearance: 'none',
|
|
50
55
|
outline: 'none',
|
|
51
56
|
/*
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
57
|
+
Change the variables --radio-background-color, --radio-border-color,
|
|
58
|
+
-radio-dot-color and -radio-dot-opacity according to user interactions.
|
|
59
|
+
All other variables are constant
|
|
60
|
+
*/
|
|
56
61
|
'--radio-background-color': `var(--ds-background-input, ${N10})`,
|
|
57
62
|
'--radio-border-color': `var(--ds-border-input, ${N100})`,
|
|
58
63
|
'--radio-dot-color': `var(--ds-icon-inverse, ${N10})`,
|
|
@@ -103,10 +108,11 @@ const radioStyles = css({
|
|
|
103
108
|
outline: `${"var(--ds-border-width-outline, 3px)"} solid ${`var(--ds-border-focused, ${B200})`}`,
|
|
104
109
|
outlineOffset: "var(--ds-border-width-indicator, 3px)"
|
|
105
110
|
},
|
|
106
|
-
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles
|
|
111
|
+
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles, @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
107
112
|
'&[data-invalid], &:checked[data-invalid]': {
|
|
108
113
|
'--radio-border-color': `var(--ds-icon-danger, ${R300})`
|
|
109
114
|
},
|
|
115
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
110
116
|
'&:disabled, &:disabled:hover, &:disabled:focus, &:disabled:active, &:disabled[data-invalid]': {
|
|
111
117
|
cursor: 'not-allowed',
|
|
112
118
|
'--radio-background-color': `var(--ds-background-disabled, ${N20})`,
|
package/dist/esm/radio.js
CHANGED
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
3
|
var _excluded = ["ariaLabel", "isDisabled", "isRequired", "isInvalid", "isChecked", "label", "name", "onChange", "value", "testId", "analyticsContext"];
|
|
4
|
+
/**
|
|
5
|
+
* @jsxRuntime classic
|
|
6
|
+
*/
|
|
4
7
|
/** @jsx jsx */
|
|
5
8
|
import { forwardRef, memo } from 'react';
|
|
9
|
+
|
|
10
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
6
11
|
import { css, jsx } from '@emotion/react';
|
|
7
12
|
import { usePlatformLeafEventHandler } from '@atlaskit/analytics-next/usePlatformLeafEventHandler';
|
|
8
13
|
import __noop from '@atlaskit/ds-lib/noop';
|
|
9
14
|
import { B200, B300, B400, B50, N10, N100, N20, N30, N70, N80, N900, R300 } from '@atlaskit/theme/colors';
|
|
10
15
|
var packageName = "@atlaskit/radio";
|
|
11
|
-
var packageVersion = "6.
|
|
16
|
+
var packageVersion = "6.4.0";
|
|
12
17
|
var noop = __noop;
|
|
13
18
|
var labelPaddingStyles = css({
|
|
14
19
|
padding: "var(--ds-space-025, 2px)".concat(" ", "var(--ds-space-050, 4px)")
|
|
@@ -20,7 +25,7 @@ var labelStyles = css({
|
|
|
20
25
|
alignItems: 'flex-start',
|
|
21
26
|
color: "var(--ds-text, ".concat(N900, ")"),
|
|
22
27
|
font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, system-ui, \"Helvetica Neue\", sans-serif)",
|
|
23
|
-
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles
|
|
28
|
+
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles, @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
24
29
|
'&[data-disabled]': {
|
|
25
30
|
color: "var(--ds-text-disabled, ".concat(N80, ")"),
|
|
26
31
|
cursor: 'not-allowed'
|
|
@@ -30,12 +35,12 @@ var radioStyles = css({
|
|
|
30
35
|
display: 'flex',
|
|
31
36
|
// TODO https://product-fabric.atlassian.net/browse/DSP-10507 revisit and remove the scale of 14/24
|
|
32
37
|
/*
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
38
|
+
The circle should be 14px * 14px centred in a 24px * 24px box.
|
|
39
|
+
This is inclusive of a 2px border and inner circle with 2px radius.
|
|
40
|
+
There is a Chrome bug that makes the circle become an oval and the
|
|
41
|
+
inner circle not be centred at various zoom levels. This bug is fixed
|
|
42
|
+
in all browsers if a scale of 14/24 is applied.
|
|
43
|
+
*/
|
|
39
44
|
width: '24px',
|
|
40
45
|
height: '24px',
|
|
41
46
|
margin: "var(--ds-space-0, 0px)",
|
|
@@ -45,16 +50,16 @@ var radioStyles = css({
|
|
|
45
50
|
flexShrink: 0,
|
|
46
51
|
backgroundColor: 'var(--radio-background-color)',
|
|
47
52
|
/* Border should multiply by 24/14 to offset scale, a scale of 12 / 7 is to fix a Chrome bug that makes the circle become an oval and the
|
|
48
|
-
|
|
53
|
+
inner circle not be centred at various zoom levels */
|
|
49
54
|
border: "var(--ds-border-width, 1px)".concat(" solid var(--radio-border-color)"),
|
|
50
55
|
borderRadius: "var(--ds-border-radius-circle, 50%)",
|
|
51
56
|
MozAppearance: 'none',
|
|
52
57
|
outline: 'none',
|
|
53
58
|
/*
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
59
|
+
Change the variables --radio-background-color, --radio-border-color,
|
|
60
|
+
-radio-dot-color and -radio-dot-opacity according to user interactions.
|
|
61
|
+
All other variables are constant
|
|
62
|
+
*/
|
|
58
63
|
'--radio-background-color': "var(--ds-background-input, ".concat(N10, ")"),
|
|
59
64
|
'--radio-border-color': "var(--ds-border-input, ".concat(N100, ")"),
|
|
60
65
|
'--radio-dot-color': "var(--ds-icon-inverse, ".concat(N10, ")"),
|
|
@@ -105,10 +110,11 @@ var radioStyles = css({
|
|
|
105
110
|
outline: "var(--ds-border-width-outline, 3px)".concat(" solid ", "var(--ds-border-focused, ".concat(B200, ")")),
|
|
106
111
|
outlineOffset: "var(--ds-border-width-indicator, 3px)"
|
|
107
112
|
},
|
|
108
|
-
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles
|
|
113
|
+
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles, @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
109
114
|
'&[data-invalid], &:checked[data-invalid]': {
|
|
110
115
|
'--radio-border-color': "var(--ds-icon-danger, ".concat(R300, ")")
|
|
111
116
|
},
|
|
117
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
112
118
|
'&:disabled, &:disabled:hover, &:disabled:focus, &:disabled:active, &:disabled[data-invalid]': {
|
|
113
119
|
cursor: 'not-allowed',
|
|
114
120
|
'--radio-background-color': "var(--ds-background-disabled, ".concat(N20, ")"),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import React, { SyntheticEvent } from 'react';
|
|
2
|
-
import { UIAnalyticsEvent } from '@atlaskit/analytics-next';
|
|
3
|
-
import { OptionsPropType, RadioValue } from './types';
|
|
1
|
+
import React, { type SyntheticEvent } from 'react';
|
|
2
|
+
import { type UIAnalyticsEvent } from '@atlaskit/analytics-next';
|
|
3
|
+
import { type OptionsPropType, type RadioValue } from './types';
|
|
4
4
|
export interface RadioGroupProps {
|
|
5
5
|
/**
|
|
6
6
|
* Once set, controls the selected value on the `RadioGroup`.
|
package/dist/types/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ReactNode, SyntheticEvent } from 'react';
|
|
2
|
-
import { UIAnalyticsEvent, WithAnalyticsEventsProps } from '@atlaskit/analytics-next';
|
|
1
|
+
import { type ReactNode, type SyntheticEvent } from 'react';
|
|
2
|
+
import { type UIAnalyticsEvent, type WithAnalyticsEventsProps } from '@atlaskit/analytics-next';
|
|
3
3
|
export type OptionPropType = {
|
|
4
4
|
isDisabled?: boolean;
|
|
5
5
|
label?: ReactNode;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import React, { SyntheticEvent } from 'react';
|
|
2
|
-
import { UIAnalyticsEvent } from '@atlaskit/analytics-next';
|
|
3
|
-
import { OptionsPropType, RadioValue } from './types';
|
|
1
|
+
import React, { type SyntheticEvent } from 'react';
|
|
2
|
+
import { type UIAnalyticsEvent } from '@atlaskit/analytics-next';
|
|
3
|
+
import { type OptionsPropType, type RadioValue } from './types';
|
|
4
4
|
export interface RadioGroupProps {
|
|
5
5
|
/**
|
|
6
6
|
* Once set, controls the selected value on the `RadioGroup`.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ReactNode, SyntheticEvent } from 'react';
|
|
2
|
-
import { UIAnalyticsEvent, WithAnalyticsEventsProps } from '@atlaskit/analytics-next';
|
|
1
|
+
import { type ReactNode, type SyntheticEvent } from 'react';
|
|
2
|
+
import { type UIAnalyticsEvent, type WithAnalyticsEventsProps } from '@atlaskit/analytics-next';
|
|
3
3
|
export type OptionPropType = {
|
|
4
4
|
isDisabled?: boolean;
|
|
5
5
|
label?: ReactNode;
|