@coinbase/cds-web 8.67.0 → 8.69.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 CHANGED
@@ -8,6 +8,19 @@ All notable changes to this project will be documented in this file.
8
8
 
9
9
  <!-- template-start -->
10
10
 
11
+ ## 8.69.0 (5/5/2026 PST)
12
+
13
+ #### 🚀 Updates
14
+
15
+ - Fix: NavigationBar no longer reserves space for absent start content. [[#664](https://github.com/coinbase/cds/pull/664)]
16
+ - Add collapsedStyle prop to Collapsible.[[#664](https://github.com/coinbase/cds/pull/664)]
17
+
18
+ ## 8.68.0 (5/1/2026 PST)
19
+
20
+ #### 🚀 Updates
21
+
22
+ - Feat: update bgWarning to orange60. [[#659](https://github.com/coinbase/cds/pull/659)]
23
+
11
24
  ## 8.67.0 (5/1/2026 PST)
12
25
 
13
26
  #### 🚀 Updates
@@ -1 +1 @@
1
- {"version":3,"file":"Collapsible.d.ts","sourceRoot":"","sources":["../../src/collapsible/Collapsible.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAChF,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAIlG,OAAO,EAAO,KAAK,iBAAiB,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAO3E,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAC5C,YAAY,GACZ,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,yBAAyB,CAAC,GAAG;IAC7E;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC;;;OAGG;IACH,gCAAgC,CAAC,EAAE,OAAO,CAAC;IAC3C;;OAEG;IACH,SAAS,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC,WAAW,CAAC,CAAC;IACrD;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC,CAAC;CACpD,CAAC;AAEJ,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC;AAEpD,eAAO,MAAM,WAAW;IA/BpB;;;OAGG;eACQ,OAAO;IAClB;;OAEG;cACO,KAAK,CAAC,SAAS;IACzB;;;OAGG;gBACS,oBAAoB;IAChC;;;OAGG;uCACgC,OAAO;IAC1C;;OAEG;gBACS,QAAQ,CAAC,iBAAiB,CAAC,CAAC,WAAW,CAAC;IACpD;;OAEG;eACQ,QAAQ,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC;yCAkGrD,CAAC"}
1
+ {"version":3,"file":"Collapsible.d.ts","sourceRoot":"","sources":["../../src/collapsible/Collapsible.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAChF,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAIlG,OAAO,EAAO,KAAK,iBAAiB,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAO3E,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAC5C,YAAY,GACZ,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,yBAAyB,CAAC,GAAG;IAC7E;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC;;;OAGG;IACH,gCAAgC,CAAC,EAAE,OAAO,CAAC;IAC3C;;OAEG;IACH,SAAS,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC,WAAW,CAAC,CAAC;IACrD;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC,CAAC;CACpD,CAAC;AAEJ,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC;AAEpD,eAAO,MAAM,WAAW;IA/BpB;;;OAGG;eACQ,OAAO;IAClB;;OAEG;cACO,KAAK,CAAC,SAAS;IACzB;;;OAGG;gBACS,oBAAoB;IAChC;;;OAGG;uCACgC,OAAO;IAC1C;;OAEG;gBACS,QAAQ,CAAC,iBAAiB,CAAC,CAAC,WAAW,CAAC;IACpD;;OAEG;eACQ,QAAQ,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC;yCA2FrD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationBar.d.ts","sourceRoot":"","sources":["../../src/navigation/NavigationBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAOjE,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,QAAQ,EAAkB,MAAM,WAAW,CAAC;AAC7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEpD,eAAO,MAAM,2BAA2B,QAAQ,CAAC;AAEjD,MAAM,MAAM,2BAA2B,GAAG,OAAO,2BAA2B,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,uBAAuB;IAClC,4DAA4D;;IAE5D,uDAAuD;;IAEvD,4DAA4D;;CAEpD,CAAC;AAEX,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG;IAClD;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB;;OAEG;IACH,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;IAC3B;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;IAC7B;;OAEG;IACH,aAAa,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;IAChC;;;OAGG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACzC;;;OAGG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC5C;;OAEG;IACH,gCAAgC,CAAC,EAAE,OAAO,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,GACrD,mBAAmB,CAAC,OAAO,uBAAuB,CAAC,GACnD,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,EAAE,UAAU,CAAC,CAAC;AAE1D,eAAO,MAAM,aAAa,qCAAiB,kBAAkB,6CA+E3D,CAAC"}
1
+ {"version":3,"file":"NavigationBar.d.ts","sourceRoot":"","sources":["../../src/navigation/NavigationBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAOjE,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,QAAQ,EAAkB,MAAM,WAAW,CAAC;AAC7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEpD,eAAO,MAAM,2BAA2B,QAAQ,CAAC;AAEjD,MAAM,MAAM,2BAA2B,GAAG,OAAO,2BAA2B,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,uBAAuB;IAClC,4DAA4D;;IAE5D,uDAAuD;;IAEvD,4DAA4D;;CAEpD,CAAC;AAEX,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG;IAClD;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB;;OAEG;IACH,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;IAC3B;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;IAC7B;;OAEG;IACH,aAAa,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;IAChC;;;OAGG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACzC;;;OAGG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC5C;;OAEG;IACH,gCAAgC,CAAC,EAAE,OAAO,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,GACrD,mBAAmB,CAAC,OAAO,uBAAuB,CAAC,GACnD,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,EAAE,UAAU,CAAC,CAAC;AAE1D,eAAO,MAAM,aAAa,qCAAiB,kBAAkB,6CAiF3D,CAAC"}
@@ -415,7 +415,7 @@ export declare const coinbaseDenseTheme: {
415
415
  readonly bgNegativeWash: 'rgb(255,245,246)';
416
416
  readonly bgPositive: 'rgb(9,133,81)';
417
417
  readonly bgPositiveWash: 'rgb(245,255,251)';
418
- readonly bgWarning: 'rgb(237,112,47)';
418
+ readonly bgWarning: 'rgb(207,71,14)';
419
419
  readonly bgWarningWash: 'rgb(255,250,245)';
420
420
  readonly currentColor: 'currentColor';
421
421
  readonly bgLine: 'rgba(91,97,110,0.2)';
@@ -460,7 +460,7 @@ export declare const coinbaseDenseTheme: {
460
460
  readonly bgNegativeWash: 'rgb(51,0,4)';
461
461
  readonly bgPositive: 'rgb(39,173,117)';
462
462
  readonly bgPositiveWash: 'rgb(0,31,18)';
463
- readonly bgWarning: 'rgb(199,158,0)';
463
+ readonly bgWarning: 'rgb(240,120,54)';
464
464
  readonly bgWarningWash: 'rgb(51,13,0)';
465
465
  readonly currentColor: 'currentColor';
466
466
  readonly bgLine: 'rgba(138,145,158,0.2)';
@@ -312,7 +312,7 @@ export declare const coinbaseTheme: {
312
312
  readonly bgNegativeWash: 'rgb(255,245,246)';
313
313
  readonly bgPositive: 'rgb(9,133,81)';
314
314
  readonly bgPositiveWash: 'rgb(245,255,251)';
315
- readonly bgWarning: 'rgb(237,112,47)';
315
+ readonly bgWarning: 'rgb(207,71,14)';
316
316
  readonly bgWarningWash: 'rgb(255,250,245)';
317
317
  readonly currentColor: 'currentColor';
318
318
  readonly bgLine: 'rgba(91,97,110,0.2)';
@@ -357,7 +357,7 @@ export declare const coinbaseTheme: {
357
357
  readonly bgNegativeWash: 'rgb(51,0,4)';
358
358
  readonly bgPositive: 'rgb(39,173,117)';
359
359
  readonly bgPositiveWash: 'rgb(0,31,18)';
360
- readonly bgWarning: 'rgb(199,158,0)';
360
+ readonly bgWarning: 'rgb(240,120,54)';
361
361
  readonly bgWarningWash: 'rgb(51,13,0)';
362
362
  readonly currentColor: 'currentColor';
363
363
  readonly bgLine: 'rgba(138,145,158,0.2)';
@@ -312,7 +312,7 @@ export declare const defaultTheme: {
312
312
  readonly bgNegativeWash: 'rgb(255,245,246)';
313
313
  readonly bgPositive: 'rgb(9,133,81)';
314
314
  readonly bgPositiveWash: 'rgb(245,255,251)';
315
- readonly bgWarning: 'rgb(237,112,47)';
315
+ readonly bgWarning: 'rgb(207,71,14)';
316
316
  readonly bgWarningWash: 'rgb(255,250,245)';
317
317
  readonly currentColor: 'currentColor';
318
318
  readonly bgLine: 'rgba(91,97,110,0.2)';
@@ -357,7 +357,7 @@ export declare const defaultTheme: {
357
357
  readonly bgNegativeWash: 'rgb(51,0,4)';
358
358
  readonly bgPositive: 'rgb(39,173,117)';
359
359
  readonly bgPositiveWash: 'rgb(0,31,18)';
360
- readonly bgWarning: 'rgb(199,158,0)';
360
+ readonly bgWarning: 'rgb(240,120,54)';
361
361
  readonly bgWarningWash: 'rgb(51,13,0)';
362
362
  readonly currentColor: 'currentColor';
363
363
  readonly bgLine: 'rgba(138,145,158,0.2)';
@@ -54,27 +54,23 @@ export const Collapsible = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((_props, fo
54
54
  };
55
55
  }, [direction, maxWidth, maxHeight]);
56
56
 
57
- // visibility is used to prevent child content from being focusable when collapsed
58
- const [visibility, setVisibility] = useState(collapsed ? 'hidden' : 'visible');
59
- // update the visibility to "visible" when the content is expanding
60
- if (!collapsed && visibility !== 'visible') {
61
- setVisibility('visible');
57
+ // display: none is applied after the collapse animation completes so the element no longer
58
+ // participates in layout and its children are not focusable. It is restored immediately when
59
+ // expanding so the animation has content to reveal.
60
+ const [isDisplayNone, setIsDisplayNone] = useState(collapsed);
61
+ if (!collapsed && isDisplayNone) {
62
+ setIsDisplayNone(false);
62
63
  }
63
-
64
- // when the animation completes, set the visibility to "hidden" if the content should be collapsed
65
- // this is to prevent children of the Collapsible element from being focusable in this state
66
64
  const handleAnimationComplete = useCallback(() => {
67
65
  if (collapsed) {
68
- setVisibility('hidden');
66
+ setIsDisplayNone(true);
69
67
  }
70
68
  }, [collapsed]);
71
-
72
- // merge visible style with the computed framer-motion styles
73
69
  const style = useMemo(() => {
74
- return _objectSpread(_objectSpread({}, motionStyle), {}, {
75
- visibility
76
- });
77
- }, [visibility, motionStyle]);
70
+ return isDisplayNone ? _objectSpread(_objectSpread({}, motionStyle), {}, {
71
+ display: 'none'
72
+ }) : motionStyle;
73
+ }, [motionStyle, isDisplayNone]);
78
74
  return /*#__PURE__*/_jsx(motion.div, _objectSpread(_objectSpread({}, motionProps), {}, {
79
75
  ref: forwardedRef,
80
76
  "aria-labelledby": accessibilityLabelledBy,
@@ -77,10 +77,6 @@ export const NavigationBar = /*#__PURE__*/memo(_props => {
77
77
  }, props), {}, {
78
78
  children: [/*#__PURE__*/_jsxs(HStack, {
79
79
  alignItems: "center",
80
- gap: columnGap !== null && columnGap !== void 0 ? columnGap : {
81
- base: 2,
82
- phone: 1
83
- },
84
80
  overflow: "auto",
85
81
  children: [/*#__PURE__*/_jsx(Collapsible, {
86
82
  collapsed: !start,
@@ -96,14 +92,22 @@ export const NavigationBar = /*#__PURE__*/memo(_props => {
96
92
  style: styles === null || styles === void 0 ? void 0 : styles.start,
97
93
  children: startNode
98
94
  })
99
- }), /*#__PURE__*/_jsx(HStack, {
95
+ }), /*#__PURE__*/_jsxs(HStack, {
100
96
  alignItems: "center",
101
- className: cx(navigationBarClassNames.content, classNames === null || classNames === void 0 ? void 0 : classNames.content),
102
97
  flexGrow: 1,
103
- gap: 1,
104
- style: styles === null || styles === void 0 ? void 0 : styles.content,
105
- children: children
106
- }), end]
98
+ gap: columnGap !== null && columnGap !== void 0 ? columnGap : {
99
+ base: 2,
100
+ phone: 1
101
+ },
102
+ children: [/*#__PURE__*/_jsx(HStack, {
103
+ alignItems: "center",
104
+ className: cx(navigationBarClassNames.content, classNames === null || classNames === void 0 ? void 0 : classNames.content),
105
+ flexGrow: 1,
106
+ gap: 1,
107
+ style: styles === null || styles === void 0 ? void 0 : styles.content,
108
+ children: children
109
+ }), end]
110
+ })]
107
111
  }), bottom]
108
112
  }));
109
113
  });
@@ -316,7 +316,7 @@ export const coinbaseTheme = {
316
316
  bgNegativeWash: "rgb(".concat(lightSpectrum.red0, ")"),
317
317
  bgPositive: "rgb(".concat(lightSpectrum.green60, ")"),
318
318
  bgPositiveWash: "rgb(".concat(lightSpectrum.green0, ")"),
319
- bgWarning: "rgb(".concat(lightSpectrum.orange40, ")"),
319
+ bgWarning: "rgb(".concat(lightSpectrum.orange60, ")"),
320
320
  bgWarningWash: "rgb(".concat(lightSpectrum.orange0, ")"),
321
321
  currentColor: 'currentColor',
322
322
  // Line
@@ -367,7 +367,7 @@ export const coinbaseTheme = {
367
367
  bgNegativeWash: "rgb(".concat(darkSpectrum.red0, ")"),
368
368
  bgPositive: "rgb(".concat(darkSpectrum.green60, ")"),
369
369
  bgPositiveWash: "rgb(".concat(darkSpectrum.green0, ")"),
370
- bgWarning: "rgb(".concat(darkSpectrum.yellow50, ")"),
370
+ bgWarning: "rgb(".concat(darkSpectrum.orange60, ")"),
371
371
  bgWarningWash: "rgb(".concat(darkSpectrum.orange0, ")"),
372
372
  currentColor: 'currentColor',
373
373
  // Line
@@ -316,7 +316,7 @@ export const defaultTheme = {
316
316
  bgNegativeWash: "rgb(".concat(lightSpectrum.red0, ")"),
317
317
  bgPositive: "rgb(".concat(lightSpectrum.green60, ")"),
318
318
  bgPositiveWash: "rgb(".concat(lightSpectrum.green0, ")"),
319
- bgWarning: "rgb(".concat(lightSpectrum.orange40, ")"),
319
+ bgWarning: "rgb(".concat(lightSpectrum.orange60, ")"),
320
320
  bgWarningWash: "rgb(".concat(lightSpectrum.orange0, ")"),
321
321
  currentColor: 'currentColor',
322
322
  // Line
@@ -367,7 +367,7 @@ export const defaultTheme = {
367
367
  bgNegativeWash: "rgb(".concat(darkSpectrum.red0, ")"),
368
368
  bgPositive: "rgb(".concat(darkSpectrum.green60, ")"),
369
369
  bgPositiveWash: "rgb(".concat(darkSpectrum.green0, ")"),
370
- bgWarning: "rgb(".concat(darkSpectrum.yellow50, ")"),
370
+ bgWarning: "rgb(".concat(darkSpectrum.orange60, ")"),
371
371
  bgWarningWash: "rgb(".concat(darkSpectrum.orange0, ")"),
372
372
  currentColor: 'currentColor',
373
373
  // Line
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coinbase/cds-web",
3
- "version": "8.67.0",
3
+ "version": "8.69.0",
4
4
  "description": "Coinbase Design System - Web",
5
5
  "repository": {
6
6
  "type": "git",
@@ -207,7 +207,7 @@
207
207
  "react-dom": "^18.3.1"
208
208
  },
209
209
  "dependencies": {
210
- "@coinbase/cds-common": "^8.67.0",
210
+ "@coinbase/cds-common": "^8.69.0",
211
211
  "@coinbase/cds-icons": "^5.16.0",
212
212
  "@coinbase/cds-illustrations": "^4.38.0",
213
213
  "@coinbase/cds-lottie-files": "^3.3.4",