@cloudscape-design/components-themeable 3.0.1381 → 3.0.1382

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.
Files changed (28) hide show
  1. package/lib/internal/manifest.json +1 -1
  2. package/lib/internal/scss/expandable-section/styles.scss +14 -5
  3. package/lib/internal/scss/internal/components/radio-button/motion.scss +34 -0
  4. package/lib/internal/scss/internal/components/radio-button/styles.scss +23 -18
  5. package/lib/internal/scss/internal/generated/custom-css-properties/index.scss +1 -1
  6. package/lib/internal/scss/popover/motion.scss +69 -0
  7. package/lib/internal/scss/radio-button/styles.scss +7 -0
  8. package/lib/internal/template/internal/base-component/styles.scoped.css +1 -1
  9. package/lib/internal/template/internal/components/radio-button/index.d.ts +4 -0
  10. package/lib/internal/template/internal/components/radio-button/index.d.ts.map +1 -1
  11. package/lib/internal/template/internal/components/radio-button/index.js +10 -4
  12. package/lib/internal/template/internal/components/radio-button/index.js.map +1 -1
  13. package/lib/internal/template/internal/components/radio-button/styles.css.js +7 -7
  14. package/lib/internal/template/internal/components/radio-button/styles.scoped.css +40 -33
  15. package/lib/internal/template/internal/components/radio-button/styles.selectors.js +7 -7
  16. package/lib/internal/template/internal/environment.js +2 -2
  17. package/lib/internal/template/internal/environment.json +2 -2
  18. package/lib/internal/template/internal/generated/theming/index.cjs +2 -0
  19. package/lib/internal/template/internal/generated/theming/index.d.cts +9 -0
  20. package/lib/internal/template/internal/generated/theming/index.d.ts +9 -0
  21. package/lib/internal/template/internal/generated/theming/index.js +2 -0
  22. package/lib/internal/template/popover/styles.css.js +58 -58
  23. package/lib/internal/template/popover/styles.scoped.css +96 -91
  24. package/lib/internal/template/popover/styles.selectors.js +58 -58
  25. package/lib/internal/template/radio-button/styles.css.js +1 -1
  26. package/lib/internal/template/radio-button/styles.scoped.css +34 -1
  27. package/lib/internal/template/radio-button/styles.selectors.js +1 -1
  28. package/package.json +1 -1
@@ -1,3 +1,3 @@
1
1
  {
2
- "commit": "818f03b7d0b724a127f867eea3baf00ec85440f4"
2
+ "commit": "ef70d2fa2db69a881f12085257fe32df66d54de8"
3
3
  }
@@ -382,10 +382,13 @@ $nav-caret-pad-one-theme: 12px; // 24px minus the one-theme x-small (12px) icon
382
382
  // manages its own inline overflow (e.g. a table) would stretch the box out of the container.
383
383
  min-inline-size: 0;
384
384
  opacity: 0;
385
+ transform: translateY(-4px);
385
386
 
386
- // HIDE (collapsed state): quick opacity collapse, no delay.
387
+ // HIDE (collapsed state): quick opacity collapse and slide back up, no delay.
387
388
  @include styles.with-motion {
388
- transition: opacity $reveal-exit-motion;
389
+ transition:
390
+ opacity $reveal-exit-motion,
391
+ transform $reveal-exit-motion;
389
392
  }
390
393
  }
391
394
  }
@@ -394,11 +397,14 @@ $nav-caret-pad-one-theme: 12px; // 24px minus the one-theme x-small (12px) icon
394
397
  /* this comment keeps the class in the style sheet */
395
398
  @include theming.one-theme-only {
396
399
  opacity: 1;
400
+ transform: translateY(0);
397
401
 
398
- // SHOW (expanded state): opacity fades in AFTER height has partially
399
- // opened, creating a perceptible fade in the revealed space.
402
+ // SHOW (expanded state): opacity fades in and content slides down into place AFTER
403
+ // height has partially opened, creating a perceptible reveal in the opened space.
400
404
  @include styles.with-motion {
401
- transition: opacity $reveal-enter-delayed-motion;
405
+ transition:
406
+ opacity $reveal-enter-delayed-motion,
407
+ transform $reveal-enter-delayed-motion;
402
408
  }
403
409
  }
404
410
  }
@@ -407,6 +413,9 @@ $nav-caret-pad-one-theme: 12px; // 24px minus the one-theme x-small (12px) icon
407
413
  /* this comment keeps the class in the style sheet */
408
414
  @include theming.one-theme-only {
409
415
  overflow-y: visible;
416
+ // Keeping translateY(0) here would leave this box as a stacking context, so a dropdown
417
+ // opened from the content would paint underneath whatever follows the section.
418
+ transform: none;
410
419
  }
411
420
  }
412
421
 
@@ -0,0 +1,34 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ @use '../../styles/utils/theming' as theming;
5
+
6
+ // Scopes @content to themes that opted in to $expressive-motion-themes in theming.scss.
7
+ @mixin radio-expressive-with-motion {
8
+ @media (prefers-reduced-motion: no-preference) {
9
+ @include theming.expressive-motion-only(':not(.awsui-motion-disabled):not(.awsui-mode-entering)') {
10
+ @content;
11
+ }
12
+ }
13
+ }
14
+
15
+ // Include inside the fill circle rule. Grows the ring inward by widening its
16
+ // stroke from a thin line to the resting width.
17
+ @mixin select {
18
+ &.styled-circle-checked[data-awsui-motion-ready] {
19
+ @include radio-expressive-with-motion {
20
+ animation: awsui-radio-select 250ms cubic-bezier(0.2, 0, 0, 1);
21
+ }
22
+
23
+ @if theming.has-expressive-motion() {
24
+ @keyframes awsui-radio-select {
25
+ from {
26
+ stroke-width: 6px;
27
+ }
28
+ to {
29
+ stroke-width: 30px;
30
+ }
31
+ }
32
+ }
33
+ }
34
+ }
@@ -7,38 +7,42 @@
7
7
  @use '../../styles/tokens' as awsui;
8
8
  @use '../../styles/foundation' as foundation;
9
9
  @use '../../generated/custom-css-properties/index.scss' as custom-props;
10
+ @use '../../styles/style-api' as style-api;
11
+ @use './motion' as motion;
10
12
 
11
13
  $radio-size: awsui.$size-control;
12
14
 
15
+ $_control-props: style-api.combine((color, background-color, border-color), style-api.$focus-ring);
16
+ $_control-tokens: style-api.resolve($_control-props, carrier);
17
+
13
18
  .radio-control {
19
+ @include style-api.carriers($_control-tokens);
14
20
  @include styles.make-control-size($radio-size);
15
21
  }
16
22
 
17
23
  .outline {
18
- #{custom-props.$styleFocusRingBoxShadow}: 0 0 0
19
- var(#{custom-props.$styleFocusRingBorderWidth}, foundation.$box-shadow-focused-width)
20
- var(#{custom-props.$styleFocusRingBorderColor}, awsui.$color-border-item-focused);
21
-
22
- @include styles.focus-highlight(
23
- $gutter: 2px,
24
- $border-radius: var(#{custom-props.$styleFocusRingBorderRadius}, awsui.$border-radius-control-circular-focus-ring),
25
- $box-shadow: var(#{custom-props.$styleFocusRingBoxShadow})
24
+ @include style-api.focus-highlight(
25
+ $gutter-block: 2px,
26
+ $gutter-inline: 2px,
27
+ $radius: var(#{custom-props.$styleFocusRingBorderRadius}, awsui.$border-radius-control-circular-focus-ring),
28
+ $width: var(#{custom-props.$styleFocusRingBorderWidth}, foundation.$box-shadow-focused-width),
29
+ $color: var(#{custom-props.$styleFocusRingBorderColor}, awsui.$color-border-item-focused)
26
30
  );
27
31
  }
28
32
 
29
33
  .styled-circle-border {
30
- stroke: awsui.$color-border-control-default;
31
- fill: awsui.$color-background-control-default;
34
+ stroke: style-api.value($_control-tokens, border-color, awsui.$color-border-control-default);
35
+ fill: style-api.value($_control-tokens, background-color, awsui.$color-background-control-default);
32
36
  &.styled-circle-disabled,
33
37
  &.styled-circle-readonly {
34
- fill: awsui.$color-background-control-disabled;
35
- stroke: awsui.$color-background-control-disabled;
38
+ fill: style-api.value($_control-tokens, background-color, awsui.$color-background-control-disabled);
39
+ stroke: style-api.value($_control-tokens, border-color, awsui.$color-background-control-disabled);
36
40
  }
37
41
  }
38
42
 
39
43
  .styled-circle-fill {
40
- stroke: awsui.$color-background-control-checked;
41
- fill: awsui.$color-foreground-control-default;
44
+ stroke: style-api.value($_control-tokens, background-color, awsui.$color-background-control-checked);
45
+ fill: style-api.value($_control-tokens, color, awsui.$color-foreground-control-default);
42
46
  opacity: 0;
43
47
  @include styles.with-motion {
44
48
  transition: opacity awsui.$motion-duration-transition-quick awsui.$motion-easing-transition-quick;
@@ -47,11 +51,12 @@ $radio-size: awsui.$size-control;
47
51
  opacity: 1;
48
52
  }
49
53
  &.styled-circle-disabled {
50
- fill: awsui.$color-foreground-control-disabled;
51
- stroke: awsui.$color-background-control-disabled;
54
+ fill: style-api.value($_control-tokens, color, awsui.$color-foreground-control-disabled);
55
+ stroke: style-api.value($_control-tokens, background-color, awsui.$color-background-control-disabled);
52
56
  }
53
57
  &.styled-circle-readonly {
54
- fill: awsui.$color-foreground-control-read-only;
55
- stroke: awsui.$color-background-control-disabled;
58
+ fill: style-api.value($_control-tokens, color, awsui.$color-foreground-control-read-only);
59
+ stroke: style-api.value($_control-tokens, background-color, awsui.$color-background-control-disabled);
56
60
  }
61
+ @include motion.select;
57
62
  }
@@ -1,6 +1,6 @@
1
1
 
2
2
  // Build environment
3
- $awsui-commit-hash: "818f03b7";
3
+ $awsui-commit-hash: "ef70d2fa";
4
4
  // Manually managed CSS-variables
5
5
  $maxContentWidth: --awsui-max-content-width-66120l;
6
6
  $minContentWidth: --awsui-min-content-width-66120l;
@@ -3,6 +3,34 @@
3
3
 
4
4
  @use '../internal/styles' as styles;
5
5
  @use '../internal/styles/tokens' as tokens;
6
+ @use '../internal/styles/utils/theming' as theming;
7
+
8
+ // Scopes @content to themes that opted in to $expressive-motion-themes in theming.scss.
9
+ @mixin popover-expressive-with-motion {
10
+ @media (prefers-reduced-motion: no-preference) {
11
+ @include theming.expressive-motion-only(':not(.awsui-motion-disabled):not(.awsui-mode-entering)') {
12
+ @content;
13
+ }
14
+ }
15
+ }
16
+
17
+ $settle-travel: 8px;
18
+
19
+ @mixin settle-keyframes($name, $from) {
20
+ @keyframes #{$name} {
21
+ from {
22
+ opacity: 0;
23
+ transform: $from;
24
+ }
25
+ 60% {
26
+ opacity: 1;
27
+ }
28
+ to {
29
+ opacity: 1;
30
+ transform: none;
31
+ }
32
+ }
33
+ }
6
34
 
7
35
  .container {
8
36
  @include styles.with-motion {
@@ -16,4 +44,45 @@
16
44
  @include styles.animation-fade-in;
17
45
  }
18
46
  }
47
+
48
+ // The popover travels out from its trigger as it appears.
49
+ @include popover-expressive-with-motion {
50
+ animation: awsui-popover-settle-down 250ms cubic-bezier(0.3, 0, 0.2, 1);
51
+ }
52
+
53
+ &:has(.container-arrow-position-top-left, .container-arrow-position-top-center, .container-arrow-position-top-right) {
54
+ @include popover-expressive-with-motion {
55
+ animation-name: awsui-popover-settle-up;
56
+ }
57
+ }
58
+
59
+ // Keyframes translate physically, so the horizontal ones swap in RTL.
60
+ &:has(.container-arrow-position-right-top, .container-arrow-position-right-bottom) {
61
+ @include popover-expressive-with-motion {
62
+ animation-name: awsui-popover-settle-end;
63
+ }
64
+ @include styles.with-direction('rtl') {
65
+ @include popover-expressive-with-motion {
66
+ animation-name: awsui-popover-settle-start;
67
+ }
68
+ }
69
+ }
70
+
71
+ &:has(.container-arrow-position-left-top, .container-arrow-position-left-bottom) {
72
+ @include popover-expressive-with-motion {
73
+ animation-name: awsui-popover-settle-start;
74
+ }
75
+ @include styles.with-direction('rtl') {
76
+ @include popover-expressive-with-motion {
77
+ animation-name: awsui-popover-settle-end;
78
+ }
79
+ }
80
+ }
81
+ }
82
+
83
+ @if theming.has-expressive-motion() {
84
+ @include settle-keyframes(awsui-popover-settle-down, translateY(-$settle-travel));
85
+ @include settle-keyframes(awsui-popover-settle-up, translateY($settle-travel));
86
+ @include settle-keyframes(awsui-popover-settle-end, translateX(-$settle-travel));
87
+ @include settle-keyframes(awsui-popover-settle-start, translateX($settle-travel));
19
88
  }
@@ -4,6 +4,13 @@
4
4
  */
5
5
 
6
6
  @use '../internal/styles' as styles;
7
+ @use '../internal/styles/style-api' as style-api;
8
+
9
+ // The control slot is painted by the shared internal radio button, which reads the same token map.
10
+ $control-props: style-api.combine((color, background-color, border-color), style-api.$focus-ring);
11
+ $control-tokens: style-api.resolve($control-props, carrier);
12
+ @include style-api.register($control-tokens);
13
+ @include style-api.docs('control', $control-tokens);
7
14
 
8
15
  .radio-button {
9
16
  @include styles.styles-reset;
@@ -56,5 +56,5 @@
56
56
  }
57
57
  }
58
58
  :root {
59
- --awsui-version-info-818f03b7: true;
59
+ --awsui-version-info-ef70d2fa: true;
60
60
  }
@@ -3,8 +3,12 @@ import { RadioButtonProps } from '../../../radio-button/interfaces';
3
3
  import { InternalBaseComponentProps } from '../../hooks/use-base-component';
4
4
  import { SkipWarnings } from '../../utils/with-native-attributes';
5
5
  export interface InternalRadioButtonProps extends RadioButtonProps, InternalBaseComponentProps {
6
+ styleClassNames?: StyleClassNames;
6
7
  __skipNativeAttributesWarnings?: SkipWarnings;
7
8
  }
9
+ interface StyleClassNames {
10
+ control?: string;
11
+ }
8
12
  declare const _default: React.ForwardRefExoticComponent<InternalRadioButtonProps & React.RefAttributes<HTMLInputElement>>;
9
13
  export default _default;
10
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/radio-button/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAiB,MAAM,OAAO,CAAC;AAOtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAIpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAA6B,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAMxF,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB,EAAE,0BAA0B;IAC5F,8BAA8B,CAAC,EAAE,YAAY,CAAC;CAC/C;;AAED,wBAkGG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/radio-button/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAOhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAIpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAA6B,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAMxF,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB,EAAE,0BAA0B;IAC5F,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,8BAA8B,CAAC,EAAE,YAAY,CAAC;CAC/C;AAGD,UAAU,eAAe;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;;AAED,wBA2GG"}
@@ -1,6 +1,6 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- import React, { useRef } from 'react';
3
+ import React, { useRef, useState } from 'react';
4
4
  import clsx from 'clsx';
5
5
  import { useMergeRefs } from '@cloudscape-design/component-toolkit/internal';
6
6
  import { useSingleTabStopNavigation } from '@cloudscape-design/component-toolkit/internal';
@@ -12,12 +12,18 @@ import WithNativeAttributes from '../../utils/with-native-attributes';
12
12
  import { getAbstractSwitchStyles, getInnerCircleStyle, getOuterCircleStyle } from './style';
13
13
  import styles from './styles.css.js';
14
14
  import testUtilStyles from './test-classes/styles.css.js';
15
- export default React.forwardRef(function RadioButton({ name, children, value, checked, ariaLabel, ariaLabelledby, ariaDescribedby, description, disabled, controlId, readOnly, className, style, nativeInputAttributes, onSelect, __skipNativeAttributesWarnings, ...rest }, ref) {
15
+ export default React.forwardRef(function RadioButton({ name, children, value, checked, ariaLabel, ariaLabelledby, ariaDescribedby, description, disabled, controlId, readOnly, className, style, styleClassNames, nativeInputAttributes, onSelect, __skipNativeAttributesWarnings, ...rest }, ref) {
16
16
  const radioButtonRef = useRef(null);
17
17
  const mergedRefs = useMergeRefs(radioButtonRef, ref);
18
18
  const { tabIndex } = useSingleTabStopNavigation(radioButtonRef);
19
19
  const baseProps = getBaseProps(rest);
20
- return (React.createElement(AbstractSwitch, { ...baseProps, className: clsx(testUtilStyles.root, className), controlClassName: styles['radio-control'], outlineClassName: styles.outline, label: children, ariaLabel: ariaLabel, ariaLabelledby: ariaLabelledby, ariaDescribedby: ariaDescribedby, description: description, disabled: disabled, readOnly: readOnly, controlId: controlId, style: getAbstractSwitchStyles(style, checked, disabled, readOnly), __internalRootRef: rest.__internalRootRef, ...copyAnalyticsMetadataAttribute(rest), nativeControl: nativeControlProps => (React.createElement(WithNativeAttributes, { ...nativeControlProps, tag: "input", componentName: "RadioButton", nativeAttributes: nativeInputAttributes, skipWarnings: __skipNativeAttributesWarnings, tabIndex: tabIndex, type: "radio", ref: mergedRefs, name: name, value: value, checked: checked, "aria-disabled": readOnly && !disabled ? 'true' : undefined,
20
+ // The select animation only plays once the state has changed since mount.
21
+ const [initialChecked] = useState(!!checked);
22
+ const [hasChanged, setHasChanged] = useState(false);
23
+ if (!hasChanged && !!checked !== initialChecked) {
24
+ setHasChanged(true);
25
+ }
26
+ return (React.createElement(AbstractSwitch, { ...baseProps, className: clsx(testUtilStyles.root, className), controlClassName: clsx(styleClassNames === null || styleClassNames === void 0 ? void 0 : styleClassNames.control, styles['radio-control']), outlineClassName: styles.outline, label: children, ariaLabel: ariaLabel, ariaLabelledby: ariaLabelledby, ariaDescribedby: ariaDescribedby, description: description, disabled: disabled, readOnly: readOnly, controlId: controlId, style: getAbstractSwitchStyles(style, checked, disabled, readOnly), __internalRootRef: rest.__internalRootRef, ...copyAnalyticsMetadataAttribute(rest), nativeControl: nativeControlProps => (React.createElement(WithNativeAttributes, { ...nativeControlProps, tag: "input", componentName: "RadioButton", nativeAttributes: nativeInputAttributes, skipWarnings: __skipNativeAttributesWarnings, tabIndex: tabIndex, type: "radio", ref: mergedRefs, name: name, value: value, checked: checked, "aria-disabled": readOnly && !disabled ? 'true' : undefined,
21
27
  // empty handler to suppress React controllability warning
22
28
  onChange: () => { } })), onClick: () => {
23
29
  var _a;
@@ -34,6 +40,6 @@ export default React.forwardRef(function RadioButton({ name, children, value, ch
34
40
  [styles['styled-circle-disabled']]: disabled,
35
41
  [styles['styled-circle-checked']]: checked,
36
42
  [styles['styled-circle-readonly']]: readOnly,
37
- }), strokeWidth: 30, cx: 50, cy: 50, r: 35, style: getInnerCircleStyle(style, checked, disabled, readOnly) })) }));
43
+ }), "data-awsui-motion-ready": hasChanged ? '' : undefined, strokeWidth: 30, cx: 50, cy: 50, r: 35, style: getInnerCircleStyle(style, checked, disabled, readOnly) })) }));
38
44
  });
39
45
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/radio-button/index.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAC;AAC7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,+CAA+C,CAAC;AAC3F,OAAO,EAAE,8BAA8B,EAAE,MAAM,kEAAkE,CAAC;AAGlH,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,cAAc,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEtD,OAAO,oBAAsC,MAAM,oCAAoC,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE5F,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAM1D,eAAe,KAAK,CAAC,UAAU,CAAC,SAAS,WAAW,CAClD,EACE,IAAI,EACJ,QAAQ,EACR,KAAK,EACL,OAAO,EACP,SAAS,EACT,cAAc,EACd,eAAe,EACf,WAAW,EACX,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,SAAS,EACT,KAAK,EACL,qBAAqB,EACrB,QAAQ,EACR,8BAA8B,EAC9B,GAAG,IAAI,EACkB,EAC3B,GAAgC;IAEhC,MAAM,cAAc,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,YAAY,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IAErD,MAAM,EAAE,QAAQ,EAAE,GAAG,0BAA0B,CAAC,cAAc,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAErC,OAAO,CACL,oBAAC,cAAc,OACT,SAAS,EACb,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,EAC/C,gBAAgB,EAAE,MAAM,CAAC,eAAe,CAAC,EACzC,gBAAgB,EAAE,MAAM,CAAC,OAAO,EAChC,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,eAAe,EAChC,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAClE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,KACrC,8BAA8B,CAAC,IAAI,CAAC,EACxC,aAAa,EAAE,kBAAkB,CAAC,EAAE,CAAC,CACnC,oBAAC,oBAAoB,OACf,kBAAkB,EACtB,GAAG,EAAC,OAAO,EACX,aAAa,EAAC,aAAa,EAC3B,gBAAgB,EAAE,qBAAqB,EACvC,YAAY,EAAE,8BAA8B,EAC5C,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAC,OAAO,EACZ,GAAG,EAAE,UAAU,EACf,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,mBACD,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;YACzD,0DAA0D;YAC1D,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC,GAClB,CACH,EACD,OAAO,EAAE,GAAG,EAAE;;YACZ,MAAA,cAAc,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,sBAAsB,CAAC,QAAQ,CAAC,CAAC;YACnC,CAAC;QACH,CAAC,EACD,aAAa,EACX,6BAAK,OAAO,EAAC,aAAa,EAAC,SAAS,EAAC,OAAO,iBAAa,MAAM;YAC7D,gCACE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,EAAE;oBAC9C,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,EAAE,QAAQ;oBAC5C,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,EAAE,QAAQ;iBAC7C,CAAC,EACF,WAAW,EAAE,IAAI,EACjB,EAAE,EAAE,EAAE,EACN,EAAE,EAAE,EAAE,EACN,CAAC,EAAE,EAAE,EACL,KAAK,EAAE,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,GAC9D;YACF,gCACE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE;oBAC5C,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,EAAE,QAAQ;oBAC5C,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,EAAE,OAAO;oBAC1C,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,EAAE,QAAQ;iBAC7C,CAAC,EACF,WAAW,EAAE,EAAE,EACf,EAAE,EAAE,EAAE,EACN,EAAE,EAAE,EAAE,EACN,CAAC,EAAE,EAAE,EACL,KAAK,EAAE,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,GAC9D,CACE,GAER,CACH,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { useMergeRefs } from '@cloudscape-design/component-toolkit/internal';\nimport { useSingleTabStopNavigation } from '@cloudscape-design/component-toolkit/internal';\nimport { copyAnalyticsMetadataAttribute } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport { RadioButtonProps } from '../../../radio-button/interfaces';\nimport { getBaseProps } from '../../base-component';\nimport AbstractSwitch from '../../components/abstract-switch';\nimport { fireNonCancelableEvent } from '../../events';\nimport { InternalBaseComponentProps } from '../../hooks/use-base-component';\nimport WithNativeAttributes, { SkipWarnings } from '../../utils/with-native-attributes';\nimport { getAbstractSwitchStyles, getInnerCircleStyle, getOuterCircleStyle } from './style';\n\nimport styles from './styles.css.js';\nimport testUtilStyles from './test-classes/styles.css.js';\n\nexport interface InternalRadioButtonProps extends RadioButtonProps, InternalBaseComponentProps {\n __skipNativeAttributesWarnings?: SkipWarnings;\n}\n\nexport default React.forwardRef(function RadioButton(\n {\n name,\n children,\n value,\n checked,\n ariaLabel,\n ariaLabelledby,\n ariaDescribedby,\n description,\n disabled,\n controlId,\n readOnly,\n className,\n style,\n nativeInputAttributes,\n onSelect,\n __skipNativeAttributesWarnings,\n ...rest\n }: InternalRadioButtonProps,\n ref: React.Ref<HTMLInputElement>\n) {\n const radioButtonRef = useRef<HTMLInputElement>(null);\n const mergedRefs = useMergeRefs(radioButtonRef, ref);\n\n const { tabIndex } = useSingleTabStopNavigation(radioButtonRef);\n const baseProps = getBaseProps(rest);\n\n return (\n <AbstractSwitch\n {...baseProps}\n className={clsx(testUtilStyles.root, className)}\n controlClassName={styles['radio-control']}\n outlineClassName={styles.outline}\n label={children}\n ariaLabel={ariaLabel}\n ariaLabelledby={ariaLabelledby}\n ariaDescribedby={ariaDescribedby}\n description={description}\n disabled={disabled}\n readOnly={readOnly}\n controlId={controlId}\n style={getAbstractSwitchStyles(style, checked, disabled, readOnly)}\n __internalRootRef={rest.__internalRootRef}\n {...copyAnalyticsMetadataAttribute(rest)}\n nativeControl={nativeControlProps => (\n <WithNativeAttributes<HTMLInputElement, React.InputHTMLAttributes<HTMLInputElement>>\n {...nativeControlProps}\n tag=\"input\"\n componentName=\"RadioButton\"\n nativeAttributes={nativeInputAttributes}\n skipWarnings={__skipNativeAttributesWarnings}\n tabIndex={tabIndex}\n type=\"radio\"\n ref={mergedRefs}\n name={name}\n value={value}\n checked={checked}\n aria-disabled={readOnly && !disabled ? 'true' : undefined}\n // empty handler to suppress React controllability warning\n onChange={() => {}}\n />\n )}\n onClick={() => {\n radioButtonRef.current?.focus();\n if (!checked) {\n fireNonCancelableEvent(onSelect);\n }\n }}\n styledControl={\n <svg viewBox=\"0 0 100 100\" focusable=\"false\" aria-hidden=\"true\">\n <circle\n className={clsx(styles['styled-circle-border'], {\n [styles['styled-circle-disabled']]: disabled,\n [styles['styled-circle-readonly']]: readOnly,\n })}\n strokeWidth={6.25}\n cx={50}\n cy={50}\n r={46}\n style={getOuterCircleStyle(style, checked, disabled, readOnly)}\n />\n <circle\n className={clsx(styles['styled-circle-fill'], {\n [styles['styled-circle-disabled']]: disabled,\n [styles['styled-circle-checked']]: checked,\n [styles['styled-circle-readonly']]: readOnly,\n })}\n strokeWidth={30}\n cx={50}\n cy={50}\n r={35}\n style={getInnerCircleStyle(style, checked, disabled, readOnly)}\n />\n </svg>\n }\n />\n );\n});\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/radio-button/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useRef, useState } from 'react';\nimport clsx from 'clsx';\n\nimport { useMergeRefs } from '@cloudscape-design/component-toolkit/internal';\nimport { useSingleTabStopNavigation } from '@cloudscape-design/component-toolkit/internal';\nimport { copyAnalyticsMetadataAttribute } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport { RadioButtonProps } from '../../../radio-button/interfaces';\nimport { getBaseProps } from '../../base-component';\nimport AbstractSwitch from '../../components/abstract-switch';\nimport { fireNonCancelableEvent } from '../../events';\nimport { InternalBaseComponentProps } from '../../hooks/use-base-component';\nimport WithNativeAttributes, { SkipWarnings } from '../../utils/with-native-attributes';\nimport { getAbstractSwitchStyles, getInnerCircleStyle, getOuterCircleStyle } from './style';\n\nimport styles from './styles.css.js';\nimport testUtilStyles from './test-classes/styles.css.js';\n\nexport interface InternalRadioButtonProps extends RadioButtonProps, InternalBaseComponentProps {\n styleClassNames?: StyleClassNames;\n __skipNativeAttributesWarnings?: SkipWarnings;\n}\n\n// Style API v2\ninterface StyleClassNames {\n control?: string;\n}\n\nexport default React.forwardRef(function RadioButton(\n {\n name,\n children,\n value,\n checked,\n ariaLabel,\n ariaLabelledby,\n ariaDescribedby,\n description,\n disabled,\n controlId,\n readOnly,\n className,\n style,\n styleClassNames,\n nativeInputAttributes,\n onSelect,\n __skipNativeAttributesWarnings,\n ...rest\n }: InternalRadioButtonProps,\n ref: React.Ref<HTMLInputElement>\n) {\n const radioButtonRef = useRef<HTMLInputElement>(null);\n const mergedRefs = useMergeRefs(radioButtonRef, ref);\n\n const { tabIndex } = useSingleTabStopNavigation(radioButtonRef);\n const baseProps = getBaseProps(rest);\n\n // The select animation only plays once the state has changed since mount.\n const [initialChecked] = useState(!!checked);\n const [hasChanged, setHasChanged] = useState(false);\n if (!hasChanged && !!checked !== initialChecked) {\n setHasChanged(true);\n }\n\n return (\n <AbstractSwitch\n {...baseProps}\n className={clsx(testUtilStyles.root, className)}\n controlClassName={clsx(styleClassNames?.control, styles['radio-control'])}\n outlineClassName={styles.outline}\n label={children}\n ariaLabel={ariaLabel}\n ariaLabelledby={ariaLabelledby}\n ariaDescribedby={ariaDescribedby}\n description={description}\n disabled={disabled}\n readOnly={readOnly}\n controlId={controlId}\n style={getAbstractSwitchStyles(style, checked, disabled, readOnly)}\n __internalRootRef={rest.__internalRootRef}\n {...copyAnalyticsMetadataAttribute(rest)}\n nativeControl={nativeControlProps => (\n <WithNativeAttributes<HTMLInputElement, React.InputHTMLAttributes<HTMLInputElement>>\n {...nativeControlProps}\n tag=\"input\"\n componentName=\"RadioButton\"\n nativeAttributes={nativeInputAttributes}\n skipWarnings={__skipNativeAttributesWarnings}\n tabIndex={tabIndex}\n type=\"radio\"\n ref={mergedRefs}\n name={name}\n value={value}\n checked={checked}\n aria-disabled={readOnly && !disabled ? 'true' : undefined}\n // empty handler to suppress React controllability warning\n onChange={() => {}}\n />\n )}\n onClick={() => {\n radioButtonRef.current?.focus();\n if (!checked) {\n fireNonCancelableEvent(onSelect);\n }\n }}\n styledControl={\n <svg viewBox=\"0 0 100 100\" focusable=\"false\" aria-hidden=\"true\">\n <circle\n className={clsx(styles['styled-circle-border'], {\n [styles['styled-circle-disabled']]: disabled,\n [styles['styled-circle-readonly']]: readOnly,\n })}\n strokeWidth={6.25}\n cx={50}\n cy={50}\n r={46}\n style={getOuterCircleStyle(style, checked, disabled, readOnly)}\n />\n <circle\n className={clsx(styles['styled-circle-fill'], {\n [styles['styled-circle-disabled']]: disabled,\n [styles['styled-circle-checked']]: checked,\n [styles['styled-circle-readonly']]: readOnly,\n })}\n data-awsui-motion-ready={hasChanged ? '' : undefined}\n strokeWidth={30}\n cx={50}\n cy={50}\n r={35}\n style={getInnerCircleStyle(style, checked, disabled, readOnly)}\n />\n </svg>\n }\n />\n );\n});\n"]}
@@ -1,12 +1,12 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "radio-control": "awsui_radio-control_1v1hk_1jz0c_9",
5
- "outline": "awsui_outline_1v1hk_1jz0c_17",
6
- "styled-circle-border": "awsui_styled-circle-border_1v1hk_1jz0c_40",
7
- "styled-circle-disabled": "awsui_styled-circle-disabled_1v1hk_1jz0c_44",
8
- "styled-circle-readonly": "awsui_styled-circle-readonly_1v1hk_1jz0c_44",
9
- "styled-circle-fill": "awsui_styled-circle-fill_1v1hk_1jz0c_49",
10
- "styled-circle-checked": "awsui_styled-circle-checked_1v1hk_1jz0c_65"
4
+ "radio-control": "awsui_radio-control_1v1hk_1uyuu_9",
5
+ "outline": "awsui_outline_1v1hk_1uyuu_25",
6
+ "styled-circle-border": "awsui_styled-circle-border_1v1hk_1uyuu_47",
7
+ "styled-circle-disabled": "awsui_styled-circle-disabled_1v1hk_1uyuu_51",
8
+ "styled-circle-readonly": "awsui_styled-circle-readonly_1v1hk_1uyuu_51",
9
+ "styled-circle-fill": "awsui_styled-circle-fill_1v1hk_1uyuu_56",
10
+ "styled-circle-checked": "awsui_styled-circle-checked_1v1hk_1uyuu_72"
11
11
  };
12
12
 
@@ -6,7 +6,15 @@
6
6
  /* stylelint-enable @cloudscape-design/no-motion-outside-of-mixin, selector-combinator-disallowed-list, selector-pseudo-class-no-unknown, selector-class-pattern */
7
7
  /* Style used for links in slots/components that are text heavy, to help links stand out among
8
8
  surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F73#description */
9
- .awsui_radio-control_1v1hk_1jz0c_9:not(#\9) {
9
+ .awsui_radio-control_1v1hk_1uyuu_9:not(#\9) {
10
+ --awsui-internal-style-color: var(--awsui-style-color);
11
+ --awsui-internal-style-background-color: var(--awsui-style-background-color);
12
+ --awsui-internal-style-border-color: var(--awsui-style-border-color);
13
+ --awsui-internal-style-focus-ring-color: var(--awsui-style-focus-ring-color);
14
+ --awsui-internal-style-focus-ring-width: var(--awsui-style-focus-ring-width);
15
+ --awsui-internal-style-focus-ring-radius: var(--awsui-style-focus-ring-radius);
16
+ --awsui-internal-style-focus-ring-gutter-block: var(--awsui-style-focus-ring-gutter-block);
17
+ --awsui-internal-style-focus-ring-gutter-inline: var(--awsui-style-focus-ring-gutter-inline);
10
18
  margin-block-start: calc((var(--line-height-body-m-5xw6xo, 22px) - var(--size-control-jpgj8e, 14px)) / 2);
11
19
  min-block-size: var(--size-control-jpgj8e, 14px);
12
20
  min-inline-size: var(--size-control-jpgj8e, 14px);
@@ -14,62 +22,61 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
14
22
  inline-size: var(--size-control-jpgj8e, 14px);
15
23
  }
16
24
 
17
- .awsui_outline_1v1hk_1jz0c_17:not(#\9) {
18
- --awsui-style-focus-ring-box-shadow-66120l: 0 0 0 var(--awsui-style-focus-ring-border-width-66120l, 2px) var(--awsui-style-focus-ring-border-color-66120l, var(--color-border-item-focused-sewkzn, #0073bb));
25
+ .awsui_outline_1v1hk_1uyuu_25:not(#\9) {
19
26
  position: relative;
20
27
  }
21
- .awsui_outline_1v1hk_1jz0c_17:not(#\9) {
28
+ .awsui_outline_1v1hk_1uyuu_25:not(#\9) {
22
29
  outline: 2px dotted transparent;
23
- outline-offset: calc(2px - 1px);
30
+ outline-offset: calc(var(--awsui-internal-style-focus-ring-gutter-inline, 2px) - 1px);
24
31
  }
25
- .awsui_outline_1v1hk_1jz0c_17:not(#\9)::before {
32
+ .awsui_outline_1v1hk_1uyuu_25:not(#\9)::before {
26
33
  content: " ";
27
34
  display: block;
28
35
  position: absolute;
29
- inset-inline-start: calc(-1 * 2px);
30
- inset-block-start: calc(-1 * 2px);
31
- inline-size: calc(100% + 2px + 2px);
32
- block-size: calc(100% + 2px + 2px);
33
- border-start-start-radius: var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-circular-focus-ring-go6crh, 50%));
34
- border-start-end-radius: var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-circular-focus-ring-go6crh, 50%));
35
- border-end-start-radius: var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-circular-focus-ring-go6crh, 50%));
36
- border-end-end-radius: var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-circular-focus-ring-go6crh, 50%));
37
- box-shadow: var(--awsui-style-focus-ring-box-shadow-66120l);
36
+ inset-inline-start: calc(-1 * var(--awsui-internal-style-focus-ring-gutter-inline, 2px));
37
+ inset-block-start: calc(-1 * var(--awsui-internal-style-focus-ring-gutter-block, 2px));
38
+ inline-size: calc(100% + var(--awsui-internal-style-focus-ring-gutter-inline, 2px) + var(--awsui-internal-style-focus-ring-gutter-inline, 2px));
39
+ block-size: calc(100% + var(--awsui-internal-style-focus-ring-gutter-block, 2px) + var(--awsui-internal-style-focus-ring-gutter-block, 2px));
40
+ border-start-start-radius: var(--awsui-internal-style-focus-ring-radius, var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-circular-focus-ring-go6crh, 50%)));
41
+ border-start-end-radius: var(--awsui-internal-style-focus-ring-radius, var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-circular-focus-ring-go6crh, 50%)));
42
+ border-end-start-radius: var(--awsui-internal-style-focus-ring-radius, var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-circular-focus-ring-go6crh, 50%)));
43
+ border-end-end-radius: var(--awsui-internal-style-focus-ring-radius, var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-circular-focus-ring-go6crh, 50%)));
44
+ box-shadow: 0 0 0 var(--awsui-internal-style-focus-ring-width, var(--awsui-style-focus-ring-border-width-66120l, 2px)) var(--awsui-internal-style-focus-ring-color, var(--awsui-style-focus-ring-border-color-66120l, var(--color-border-item-focused-sewkzn, #0073bb)));
38
45
  }
39
46
 
40
- .awsui_styled-circle-border_1v1hk_1jz0c_40:not(#\9) {
41
- stroke: var(--color-border-control-default-9qbus4, #687078);
42
- fill: var(--color-background-control-default-9p1s17, #ffffff);
47
+ .awsui_styled-circle-border_1v1hk_1uyuu_47:not(#\9) {
48
+ stroke: var(--awsui-internal-style-border-color, var(--color-border-control-default-9qbus4, #687078));
49
+ fill: var(--awsui-internal-style-background-color, var(--color-background-control-default-9p1s17, #ffffff));
43
50
  }
44
- .awsui_styled-circle-border_1v1hk_1jz0c_40.awsui_styled-circle-disabled_1v1hk_1jz0c_44:not(#\9), .awsui_styled-circle-border_1v1hk_1jz0c_40.awsui_styled-circle-readonly_1v1hk_1jz0c_44:not(#\9) {
45
- fill: var(--color-background-control-disabled-m61b8s, #d5dbdb);
46
- stroke: var(--color-background-control-disabled-m61b8s, #d5dbdb);
51
+ .awsui_styled-circle-border_1v1hk_1uyuu_47.awsui_styled-circle-disabled_1v1hk_1uyuu_51:not(#\9), .awsui_styled-circle-border_1v1hk_1uyuu_47.awsui_styled-circle-readonly_1v1hk_1uyuu_51:not(#\9) {
52
+ fill: var(--awsui-internal-style-background-color, var(--color-background-control-disabled-m61b8s, #d5dbdb));
53
+ stroke: var(--awsui-internal-style-border-color, var(--color-background-control-disabled-m61b8s, #d5dbdb));
47
54
  }
48
55
 
49
- .awsui_styled-circle-fill_1v1hk_1jz0c_49:not(#\9) {
50
- stroke: var(--color-background-control-checked-ksqwhc, #0073bb);
51
- fill: var(--color-foreground-control-default-poakg0, #ffffff);
56
+ .awsui_styled-circle-fill_1v1hk_1uyuu_56:not(#\9) {
57
+ stroke: var(--awsui-internal-style-background-color, var(--color-background-control-checked-ksqwhc, #0073bb));
58
+ fill: var(--awsui-internal-style-color, var(--color-foreground-control-default-poakg0, #ffffff));
52
59
  opacity: 0;
53
60
  transition: opacity var(--motion-duration-transition-quick-1p8yzt, 90ms) var(--motion-easing-transition-quick-afgcka, linear);
54
61
  }
55
62
  @media (prefers-reduced-motion: reduce) {
56
- .awsui_styled-circle-fill_1v1hk_1jz0c_49:not(#\9) {
63
+ .awsui_styled-circle-fill_1v1hk_1uyuu_56:not(#\9) {
57
64
  animation: none;
58
65
  transition: none;
59
66
  }
60
67
  }
61
- .awsui-motion-disabled .awsui_styled-circle-fill_1v1hk_1jz0c_49:not(#\9), .awsui-mode-entering .awsui_styled-circle-fill_1v1hk_1jz0c_49:not(#\9) {
68
+ .awsui-motion-disabled .awsui_styled-circle-fill_1v1hk_1uyuu_56:not(#\9), .awsui-mode-entering .awsui_styled-circle-fill_1v1hk_1uyuu_56:not(#\9) {
62
69
  animation: none;
63
70
  transition: none;
64
71
  }
65
- .awsui_styled-circle-fill_1v1hk_1jz0c_49.awsui_styled-circle-checked_1v1hk_1jz0c_65:not(#\9) {
72
+ .awsui_styled-circle-fill_1v1hk_1uyuu_56.awsui_styled-circle-checked_1v1hk_1uyuu_72:not(#\9) {
66
73
  opacity: 1;
67
74
  }
68
- .awsui_styled-circle-fill_1v1hk_1jz0c_49.awsui_styled-circle-disabled_1v1hk_1jz0c_44:not(#\9) {
69
- fill: var(--color-foreground-control-disabled-bikivj, #ffffff);
70
- stroke: var(--color-background-control-disabled-m61b8s, #d5dbdb);
75
+ .awsui_styled-circle-fill_1v1hk_1uyuu_56.awsui_styled-circle-disabled_1v1hk_1uyuu_51:not(#\9) {
76
+ fill: var(--awsui-internal-style-color, var(--color-foreground-control-disabled-bikivj, #ffffff));
77
+ stroke: var(--awsui-internal-style-background-color, var(--color-background-control-disabled-m61b8s, #d5dbdb));
71
78
  }
72
- .awsui_styled-circle-fill_1v1hk_1jz0c_49.awsui_styled-circle-readonly_1v1hk_1jz0c_44:not(#\9) {
73
- fill: var(--color-foreground-control-read-only-8sqxyy, #687078);
74
- stroke: var(--color-background-control-disabled-m61b8s, #d5dbdb);
79
+ .awsui_styled-circle-fill_1v1hk_1uyuu_56.awsui_styled-circle-readonly_1v1hk_1uyuu_51:not(#\9) {
80
+ fill: var(--awsui-internal-style-color, var(--color-foreground-control-read-only-8sqxyy, #687078));
81
+ stroke: var(--awsui-internal-style-background-color, var(--color-background-control-disabled-m61b8s, #d5dbdb));
75
82
  }
@@ -2,12 +2,12 @@
2
2
  // es-module interop with Babel and Typescript
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  module.exports.default = {
5
- "radio-control": "awsui_radio-control_1v1hk_1jz0c_9",
6
- "outline": "awsui_outline_1v1hk_1jz0c_17",
7
- "styled-circle-border": "awsui_styled-circle-border_1v1hk_1jz0c_40",
8
- "styled-circle-disabled": "awsui_styled-circle-disabled_1v1hk_1jz0c_44",
9
- "styled-circle-readonly": "awsui_styled-circle-readonly_1v1hk_1jz0c_44",
10
- "styled-circle-fill": "awsui_styled-circle-fill_1v1hk_1jz0c_49",
11
- "styled-circle-checked": "awsui_styled-circle-checked_1v1hk_1jz0c_65"
5
+ "radio-control": "awsui_radio-control_1v1hk_1uyuu_9",
6
+ "outline": "awsui_outline_1v1hk_1uyuu_25",
7
+ "styled-circle-border": "awsui_styled-circle-border_1v1hk_1uyuu_47",
8
+ "styled-circle-disabled": "awsui_styled-circle-disabled_1v1hk_1uyuu_51",
9
+ "styled-circle-readonly": "awsui_styled-circle-readonly_1v1hk_1uyuu_51",
10
+ "styled-circle-fill": "awsui_styled-circle-fill_1v1hk_1uyuu_56",
11
+ "styled-circle-checked": "awsui_styled-circle-checked_1v1hk_1uyuu_72"
12
12
  };
13
13
 
@@ -1,6 +1,6 @@
1
1
  export var PACKAGE_SOURCE = "components";
2
- export var PACKAGE_VERSION = "3.0.0 (818f03b7)";
3
- export var GIT_SHA = "818f03b7";
2
+ export var PACKAGE_VERSION = "3.0.0 (ef70d2fa)";
3
+ export var GIT_SHA = "ef70d2fa";
4
4
  export var THEME = "open-source-visual-refresh";
5
5
  export var SYSTEM = "core";
6
6
  export var ALWAYS_VISUAL_REFRESH = true;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "PACKAGE_SOURCE": "components",
3
- "PACKAGE_VERSION": "3.0.0 (818f03b7)",
4
- "GIT_SHA": "818f03b7",
3
+ "PACKAGE_VERSION": "3.0.0 (ef70d2fa)",
4
+ "GIT_SHA": "ef70d2fa",
5
5
  "THEME": "default",
6
6
  "SYSTEM": "core",
7
7
  "ALWAYS_VISUAL_REFRESH": false,
@@ -16767,6 +16767,7 @@ module.exports.preset = {
16767
16767
  "colorBackgroundLayoutAiDrawer",
16768
16768
  "colorBackgroundBackdrop",
16769
16769
  "colorBackgroundLayoutPanel",
16770
+ "colorBackgroundLayoutPanelContent",
16770
16771
  "colorBackgroundLayoutToolbar",
16771
16772
  "colorBackgroundLayoutToggleActive",
16772
16773
  "colorBackgroundLayoutToggleDefault",
@@ -17334,6 +17335,7 @@ module.exports.preset = {
17334
17335
  "colorBackgroundLayoutMain",
17335
17336
  "colorBackgroundBackdrop",
17336
17337
  "colorBackgroundLayoutPanel",
17338
+ "colorBackgroundLayoutPanelContent",
17337
17339
  "colorBackgroundLayoutToolbar",
17338
17340
  "colorBackgroundLayoutToggleActive",
17339
17341
  "colorBackgroundLayoutToggleDefault",