@coinbase/cds-mobile 9.0.0-rc.2 → 9.0.0-rc.3
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 +76 -0
- package/dts/buttons/IconButton.d.ts +19 -1
- package/dts/buttons/IconButton.d.ts.map +1 -1
- package/dts/cells/Cell.d.ts +2 -1
- package/dts/cells/Cell.d.ts.map +1 -1
- package/dts/controls/InputIconButton.d.ts +5 -0
- package/dts/controls/InputIconButton.d.ts.map +1 -1
- package/dts/controls/InputLabel.d.ts.map +1 -1
- package/dts/controls/SearchInput.d.ts +4 -0
- package/dts/controls/SearchInput.d.ts.map +1 -1
- package/dts/controls/TextInput.d.ts.map +1 -1
- package/dts/core/theme.d.ts +12 -0
- package/dts/core/theme.d.ts.map +1 -1
- package/dts/illustrations/createIllustration.d.ts +3 -0
- package/dts/illustrations/createIllustration.d.ts.map +1 -1
- package/dts/page/PageFooter.d.ts +8 -0
- package/dts/page/PageFooter.d.ts.map +1 -1
- package/dts/system/ThemeProvider.d.ts.map +1 -1
- package/dts/tabs/DefaultTab.d.ts +4 -2
- package/dts/tabs/DefaultTab.d.ts.map +1 -1
- package/dts/tabs/DefaultTabsActiveIndicator.d.ts.map +1 -1
- package/dts/tabs/SegmentedTab.d.ts +4 -4
- package/dts/tabs/Tabs.d.ts +10 -1
- package/dts/tabs/Tabs.d.ts.map +1 -1
- package/dts/tag/Tag.d.ts +5 -3
- package/dts/tag/Tag.d.ts.map +1 -1
- package/dts/themes/coinbaseDenseTheme.d.ts +34 -2
- package/dts/themes/coinbaseDenseTheme.d.ts.map +1 -1
- package/dts/themes/coinbaseHighContrastTheme.d.ts +32 -0
- package/dts/themes/coinbaseHighContrastTheme.d.ts.map +1 -1
- package/dts/themes/coinbaseTheme.d.ts +34 -2
- package/dts/themes/coinbaseTheme.d.ts.map +1 -1
- package/dts/themes/defaultHighContrastTheme.d.ts +32 -0
- package/dts/themes/defaultHighContrastTheme.d.ts.map +1 -1
- package/dts/themes/defaultTheme.d.ts +34 -2
- package/dts/themes/defaultTheme.d.ts.map +1 -1
- package/dts/utils/convertThemedSvgToHex.d.ts +6 -0
- package/dts/utils/convertThemedSvgToHex.d.ts.map +1 -0
- package/dts/utils/testHelpers.d.ts +34 -2
- package/dts/utils/testHelpers.d.ts.map +1 -1
- package/dts/visualizations/chart/PeriodSelector.d.ts.map +1 -1
- package/esm/buttons/IconButton.js +8 -2
- package/esm/buttons/__stories__/IconButton.stories.js +65 -0
- package/esm/controls/InputLabel.js +4 -3
- package/esm/controls/TextInput.js +7 -1
- package/esm/illustrations/__stories__/ThemedIllustrations.stories.js +214 -0
- package/esm/illustrations/__stories__/illustrationThemes.js +122 -0
- package/esm/illustrations/createIllustration.js +31 -5
- package/esm/page/PageFooter.js +16 -5
- package/esm/page/__figma__/PageFooter.figma.js +49 -6
- package/esm/system/ThemeProvider.js +3 -1
- package/esm/system/__stories__/componentConfigStickerSheet/StickerSheet.js +4 -0
- package/esm/system/__stories__/componentConfigStickerSheet/customComponentConfig.js +24 -12
- package/esm/system/__stories__/componentConfigStickerSheet/examples/ListCell.js +2 -0
- package/esm/system/__stories__/componentConfigStickerSheet/examples/Tabs.js +24 -0
- package/esm/system/__stories__/componentConfigStickerSheet/examples/TextInput.js +12 -0
- package/esm/tabs/DefaultTab.js +7 -9
- package/esm/tabs/DefaultTabsActiveIndicator.js +1 -2
- package/esm/tabs/Tabs.js +18 -12
- package/esm/tabs/__stories__/SegmentedTabs.stories.js +8 -1
- package/esm/tabs/__stories__/Tabs.stories.js +0 -1
- package/esm/tag/Tag.js +14 -4
- package/esm/themes/coinbaseHighContrastTheme.js +32 -0
- package/esm/themes/coinbaseTheme.js +34 -2
- package/esm/themes/defaultHighContrastTheme.js +32 -0
- package/esm/themes/defaultTheme.js +34 -2
- package/esm/utils/convertThemedSvgToHex.js +9 -0
- package/esm/visualizations/chart/PeriodSelector.js +3 -4
- package/package.json +3 -3
|
@@ -564,5 +564,37 @@ export const coinbaseHighContrastTheme = {
|
|
|
564
564
|
shadowOpacity: 0.12,
|
|
565
565
|
shadowRadius: 24
|
|
566
566
|
}
|
|
567
|
+
},
|
|
568
|
+
lightIllustrationColor: {
|
|
569
|
+
primary: "rgb(" + lightSpectrum.blue60 + ")",
|
|
570
|
+
black: "rgb(" + lightSpectrum.gray100 + ")",
|
|
571
|
+
white: "rgb(" + lightSpectrum.gray0 + ")",
|
|
572
|
+
gray: "rgb(" + lightSpectrum.gray20 + ")",
|
|
573
|
+
gray2: "rgb(10, 11, 15)",
|
|
574
|
+
gray3: "rgb(206, 210, 220)",
|
|
575
|
+
positive: "rgb(" + lightSpectrum.green30 + ")",
|
|
576
|
+
negative: "rgb(" + lightSpectrum.red50 + ")",
|
|
577
|
+
accent1: "rgb(255, 210, 0)",
|
|
578
|
+
accent2: "rgb(" + lightSpectrum.teal15 + ")",
|
|
579
|
+
accent3: "rgb(" + lightSpectrum.orange40 + ")",
|
|
580
|
+
accent4: "rgb(" + lightSpectrum.blue20 + ")",
|
|
581
|
+
invert: "rgb(10, 11, 14)",
|
|
582
|
+
invert2: "rgb(255, 255, 254)"
|
|
583
|
+
},
|
|
584
|
+
darkIllustrationColor: {
|
|
585
|
+
primary: "rgb(" + darkSpectrum.blue70 + ")",
|
|
586
|
+
black: "rgb(" + darkSpectrum.gray0 + ")",
|
|
587
|
+
white: "rgb(" + darkSpectrum.gray100 + ")",
|
|
588
|
+
gray: "rgb(" + darkSpectrum.gray30 + ")",
|
|
589
|
+
gray2: "rgb(" + darkSpectrum.gray30 + ")",
|
|
590
|
+
gray3: "rgb(" + darkSpectrum.gray100 + ")",
|
|
591
|
+
positive: "rgb(" + darkSpectrum.green70 + ")",
|
|
592
|
+
negative: "rgb(" + darkSpectrum.red60 + ")",
|
|
593
|
+
accent1: "rgb(236, 208, 105)",
|
|
594
|
+
accent2: "rgb(" + darkSpectrum.teal80 + ")",
|
|
595
|
+
accent3: "rgb(" + darkSpectrum.orange60 + ")",
|
|
596
|
+
accent4: "rgb(" + darkSpectrum.blue80 + ")",
|
|
597
|
+
invert: "rgb(" + darkSpectrum.gray100 + ")",
|
|
598
|
+
invert2: "rgb(" + darkSpectrum.gray50 + ")"
|
|
567
599
|
}
|
|
568
600
|
};
|
|
@@ -316,7 +316,7 @@ export const coinbaseTheme = {
|
|
|
316
316
|
bgNegativeWash: "rgb(" + lightSpectrum.red0 + ")",
|
|
317
317
|
bgPositive: "rgb(" + lightSpectrum.green60 + ")",
|
|
318
318
|
bgPositiveWash: "rgb(" + lightSpectrum.green0 + ")",
|
|
319
|
-
bgWarning: "rgb(" + lightSpectrum.
|
|
319
|
+
bgWarning: "rgb(" + lightSpectrum.orange60 + ")",
|
|
320
320
|
bgWarningWash: "rgb(" + lightSpectrum.orange0 + ")",
|
|
321
321
|
currentColor: 'currentColor',
|
|
322
322
|
// Line
|
|
@@ -367,7 +367,7 @@ export const coinbaseTheme = {
|
|
|
367
367
|
bgNegativeWash: "rgb(" + darkSpectrum.red0 + ")",
|
|
368
368
|
bgPositive: "rgb(" + darkSpectrum.green60 + ")",
|
|
369
369
|
bgPositiveWash: "rgb(" + darkSpectrum.green0 + ")",
|
|
370
|
-
bgWarning: "rgb(" + darkSpectrum.
|
|
370
|
+
bgWarning: "rgb(" + darkSpectrum.orange60 + ")",
|
|
371
371
|
bgWarningWash: "rgb(" + darkSpectrum.orange0 + ")",
|
|
372
372
|
currentColor: 'currentColor',
|
|
373
373
|
// Line
|
|
@@ -564,5 +564,37 @@ export const coinbaseTheme = {
|
|
|
564
564
|
shadowOpacity: 0.12,
|
|
565
565
|
shadowRadius: 24
|
|
566
566
|
}
|
|
567
|
+
},
|
|
568
|
+
lightIllustrationColor: {
|
|
569
|
+
primary: "rgb(" + lightSpectrum.blue60 + ")",
|
|
570
|
+
black: "rgb(" + lightSpectrum.gray100 + ")",
|
|
571
|
+
white: "rgb(" + lightSpectrum.gray0 + ")",
|
|
572
|
+
gray: "rgb(" + lightSpectrum.gray20 + ")",
|
|
573
|
+
gray2: "rgb(10, 11, 15)",
|
|
574
|
+
gray3: "rgb(206, 210, 220)",
|
|
575
|
+
positive: "rgb(" + lightSpectrum.green30 + ")",
|
|
576
|
+
negative: "rgb(" + lightSpectrum.red50 + ")",
|
|
577
|
+
accent1: "rgb(255, 210, 0)",
|
|
578
|
+
accent2: "rgb(" + lightSpectrum.teal15 + ")",
|
|
579
|
+
accent3: "rgb(" + lightSpectrum.orange40 + ")",
|
|
580
|
+
accent4: "rgb(" + lightSpectrum.blue20 + ")",
|
|
581
|
+
invert: "rgb(10, 11, 14)",
|
|
582
|
+
invert2: "rgb(255, 255, 254)"
|
|
583
|
+
},
|
|
584
|
+
darkIllustrationColor: {
|
|
585
|
+
primary: "rgb(" + darkSpectrum.blue70 + ")",
|
|
586
|
+
black: "rgb(" + darkSpectrum.gray0 + ")",
|
|
587
|
+
white: "rgb(" + darkSpectrum.gray100 + ")",
|
|
588
|
+
gray: "rgb(" + darkSpectrum.gray30 + ")",
|
|
589
|
+
gray2: "rgb(" + darkSpectrum.gray30 + ")",
|
|
590
|
+
gray3: "rgb(" + darkSpectrum.gray100 + ")",
|
|
591
|
+
positive: "rgb(" + darkSpectrum.green70 + ")",
|
|
592
|
+
negative: "rgb(" + darkSpectrum.red60 + ")",
|
|
593
|
+
accent1: "rgb(236, 208, 105)",
|
|
594
|
+
accent2: "rgb(" + darkSpectrum.teal80 + ")",
|
|
595
|
+
accent3: "rgb(" + darkSpectrum.orange60 + ")",
|
|
596
|
+
accent4: "rgb(" + darkSpectrum.blue80 + ")",
|
|
597
|
+
invert: "rgb(" + darkSpectrum.gray100 + ")",
|
|
598
|
+
invert2: "rgb(" + darkSpectrum.gray50 + ")"
|
|
567
599
|
}
|
|
568
600
|
};
|
|
@@ -564,5 +564,37 @@ export const defaultHighContrastTheme = {
|
|
|
564
564
|
shadowOpacity: 0.12,
|
|
565
565
|
shadowRadius: 24
|
|
566
566
|
}
|
|
567
|
+
},
|
|
568
|
+
lightIllustrationColor: {
|
|
569
|
+
primary: "rgb(" + lightSpectrum.blue60 + ")",
|
|
570
|
+
black: "rgb(" + lightSpectrum.gray100 + ")",
|
|
571
|
+
white: "rgb(" + lightSpectrum.gray0 + ")",
|
|
572
|
+
gray: "rgb(" + lightSpectrum.gray20 + ")",
|
|
573
|
+
gray2: "rgb(10, 11, 15)",
|
|
574
|
+
gray3: "rgb(206, 210, 220)",
|
|
575
|
+
positive: "rgb(" + lightSpectrum.green30 + ")",
|
|
576
|
+
negative: "rgb(" + lightSpectrum.red50 + ")",
|
|
577
|
+
accent1: "rgb(255, 210, 0)",
|
|
578
|
+
accent2: "rgb(" + lightSpectrum.teal15 + ")",
|
|
579
|
+
accent3: "rgb(" + lightSpectrum.orange40 + ")",
|
|
580
|
+
accent4: "rgb(" + lightSpectrum.blue20 + ")",
|
|
581
|
+
invert: "rgb(10, 11, 14)",
|
|
582
|
+
invert2: "rgb(255, 255, 254)"
|
|
583
|
+
},
|
|
584
|
+
darkIllustrationColor: {
|
|
585
|
+
primary: "rgb(" + darkSpectrum.blue70 + ")",
|
|
586
|
+
black: "rgb(" + darkSpectrum.gray0 + ")",
|
|
587
|
+
white: "rgb(" + darkSpectrum.gray100 + ")",
|
|
588
|
+
gray: "rgb(" + darkSpectrum.gray30 + ")",
|
|
589
|
+
gray2: "rgb(" + darkSpectrum.gray30 + ")",
|
|
590
|
+
gray3: "rgb(" + darkSpectrum.gray100 + ")",
|
|
591
|
+
positive: "rgb(" + darkSpectrum.green70 + ")",
|
|
592
|
+
negative: "rgb(" + darkSpectrum.red60 + ")",
|
|
593
|
+
accent1: "rgb(236, 208, 105)",
|
|
594
|
+
accent2: "rgb(" + darkSpectrum.teal80 + ")",
|
|
595
|
+
accent3: "rgb(" + darkSpectrum.orange60 + ")",
|
|
596
|
+
accent4: "rgb(" + darkSpectrum.blue80 + ")",
|
|
597
|
+
invert: "rgb(" + darkSpectrum.gray100 + ")",
|
|
598
|
+
invert2: "rgb(" + darkSpectrum.gray50 + ")"
|
|
567
599
|
}
|
|
568
600
|
};
|
|
@@ -316,7 +316,7 @@ export const defaultTheme = {
|
|
|
316
316
|
bgNegativeWash: "rgb(" + lightSpectrum.red0 + ")",
|
|
317
317
|
bgPositive: "rgb(" + lightSpectrum.green60 + ")",
|
|
318
318
|
bgPositiveWash: "rgb(" + lightSpectrum.green0 + ")",
|
|
319
|
-
bgWarning: "rgb(" + lightSpectrum.
|
|
319
|
+
bgWarning: "rgb(" + lightSpectrum.orange60 + ")",
|
|
320
320
|
bgWarningWash: "rgb(" + lightSpectrum.orange0 + ")",
|
|
321
321
|
currentColor: 'currentColor',
|
|
322
322
|
// Line
|
|
@@ -367,7 +367,7 @@ export const defaultTheme = {
|
|
|
367
367
|
bgNegativeWash: "rgb(" + darkSpectrum.red0 + ")",
|
|
368
368
|
bgPositive: "rgb(" + darkSpectrum.green60 + ")",
|
|
369
369
|
bgPositiveWash: "rgb(" + darkSpectrum.green0 + ")",
|
|
370
|
-
bgWarning: "rgb(" + darkSpectrum.
|
|
370
|
+
bgWarning: "rgb(" + darkSpectrum.orange60 + ")",
|
|
371
371
|
bgWarningWash: "rgb(" + darkSpectrum.orange0 + ")",
|
|
372
372
|
currentColor: 'currentColor',
|
|
373
373
|
// Line
|
|
@@ -395,6 +395,38 @@ export const defaultTheme = {
|
|
|
395
395
|
// Transparent
|
|
396
396
|
transparent: "rgba(" + darkSpectrum.gray0 + ",0)"
|
|
397
397
|
},
|
|
398
|
+
lightIllustrationColor: {
|
|
399
|
+
primary: "rgb(" + lightSpectrum.blue60 + ")",
|
|
400
|
+
black: "rgb(" + lightSpectrum.gray100 + ")",
|
|
401
|
+
white: "rgb(" + lightSpectrum.gray0 + ")",
|
|
402
|
+
gray: "rgb(" + lightSpectrum.gray20 + ")",
|
|
403
|
+
gray2: "rgb(10, 11, 15)",
|
|
404
|
+
gray3: "rgb(206, 210, 220)",
|
|
405
|
+
positive: "rgb(" + lightSpectrum.green30 + ")",
|
|
406
|
+
negative: "rgb(" + lightSpectrum.red50 + ")",
|
|
407
|
+
accent1: "rgb(255, 210, 0)",
|
|
408
|
+
accent2: "rgb(" + lightSpectrum.teal15 + ")",
|
|
409
|
+
accent3: "rgb(" + lightSpectrum.orange40 + ")",
|
|
410
|
+
accent4: "rgb(" + lightSpectrum.blue20 + ")",
|
|
411
|
+
invert: "rgb(10, 11, 14)",
|
|
412
|
+
invert2: "rgb(255, 255, 254)"
|
|
413
|
+
},
|
|
414
|
+
darkIllustrationColor: {
|
|
415
|
+
primary: "rgb(" + darkSpectrum.blue70 + ")",
|
|
416
|
+
black: "rgb(" + darkSpectrum.gray0 + ")",
|
|
417
|
+
white: "rgb(" + darkSpectrum.gray100 + ")",
|
|
418
|
+
gray: "rgb(" + darkSpectrum.gray30 + ")",
|
|
419
|
+
gray2: "rgb(" + darkSpectrum.gray30 + ")",
|
|
420
|
+
gray3: "rgb(" + darkSpectrum.gray100 + ")",
|
|
421
|
+
positive: "rgb(" + darkSpectrum.green70 + ")",
|
|
422
|
+
negative: "rgb(" + darkSpectrum.red60 + ")",
|
|
423
|
+
accent1: "rgb(236, 208, 105)",
|
|
424
|
+
accent2: "rgb(" + darkSpectrum.teal80 + ")",
|
|
425
|
+
accent3: "rgb(" + darkSpectrum.orange60 + ")",
|
|
426
|
+
accent4: "rgb(" + darkSpectrum.blue80 + ")",
|
|
427
|
+
invert: "rgb(" + darkSpectrum.gray100 + ")",
|
|
428
|
+
invert2: "rgb(" + darkSpectrum.gray50 + ")"
|
|
429
|
+
},
|
|
398
430
|
space: {
|
|
399
431
|
'0': 0,
|
|
400
432
|
'0.25': 2,
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { colorToHex } from '@coinbase/cds-common/color/colorToHex';
|
|
2
|
+
export const convertThemedSvgToHex = (xml, illustrationPalette) => {
|
|
3
|
+
const cssVarPattern = /var\(--illustration-([a-z0-9-]+)\)/gi;
|
|
4
|
+
const normalizeToken = token => token.replace(/-/g, '');
|
|
5
|
+
return xml.replace(cssVarPattern, (_, token) => {
|
|
6
|
+
const color = illustrationPalette[normalizeToken(token)];
|
|
7
|
+
return color ? colorToHex(color) : "var(--illustration-" + token + ")";
|
|
8
|
+
});
|
|
9
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const _excluded = ["color", "label", "font", "hideDot", "style"],
|
|
2
|
-
_excluded2 = ["background", "activeBackground", "width", "justifyContent", "TabComponent", "TabsActiveIndicatorComponent"];
|
|
2
|
+
_excluded2 = ["background", "activeBackground", "activeColor", "width", "justifyContent", "TabComponent", "TabsActiveIndicatorComponent"];
|
|
3
3
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
4
4
|
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
|
|
5
5
|
import React, { forwardRef, memo, useMemo } from 'react';
|
|
@@ -107,11 +107,8 @@ export const LiveTabLabel = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((_ref2, re
|
|
|
107
107
|
}))]
|
|
108
108
|
});
|
|
109
109
|
}));
|
|
110
|
-
|
|
111
|
-
// Custom tab component with primary color for active state
|
|
112
110
|
const PeriodSelectorTab = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((props, ref) => /*#__PURE__*/_jsx(SegmentedTab, _extends({
|
|
113
111
|
ref: ref,
|
|
114
|
-
activeColor: "fgPrimary",
|
|
115
112
|
font: "label1"
|
|
116
113
|
}, props))));
|
|
117
114
|
/**
|
|
@@ -122,6 +119,7 @@ export const PeriodSelector = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((_ref3,
|
|
|
122
119
|
let {
|
|
123
120
|
background = 'transparent',
|
|
124
121
|
activeBackground = 'bgPrimaryWash',
|
|
122
|
+
activeColor = 'fgPrimary',
|
|
125
123
|
width = '100%',
|
|
126
124
|
justifyContent = 'space-between',
|
|
127
125
|
TabComponent = PeriodSelectorTab,
|
|
@@ -133,6 +131,7 @@ export const PeriodSelector = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((_ref3,
|
|
|
133
131
|
TabComponent: TabComponent,
|
|
134
132
|
TabsActiveIndicatorComponent: TabsActiveIndicatorComponent,
|
|
135
133
|
activeBackground: activeBackground,
|
|
134
|
+
activeColor: activeColor,
|
|
136
135
|
background: background,
|
|
137
136
|
justifyContent: justifyContent,
|
|
138
137
|
width: width
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coinbase/cds-mobile",
|
|
3
|
-
"version": "9.0.0-rc.
|
|
3
|
+
"version": "9.0.0-rc.3",
|
|
4
4
|
"description": "Coinbase Design System - Mobile",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -202,9 +202,9 @@
|
|
|
202
202
|
"react-native-worklets": "0.5.2"
|
|
203
203
|
},
|
|
204
204
|
"dependencies": {
|
|
205
|
-
"@coinbase/cds-common": "^9.0.0-rc.
|
|
205
|
+
"@coinbase/cds-common": "^9.0.0-rc.3",
|
|
206
206
|
"@coinbase/cds-icons": "^5.16.0",
|
|
207
|
-
"@coinbase/cds-illustrations": "^4.
|
|
207
|
+
"@coinbase/cds-illustrations": "^4.40.1",
|
|
208
208
|
"@coinbase/cds-lottie-files": "^3.3.4",
|
|
209
209
|
"@coinbase/cds-utils": "^2.3.5",
|
|
210
210
|
"@floating-ui/react-native": "^0.10.5",
|