@coinbase/cds-mobile 8.34.2 → 8.35.1

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 (26) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dts/media/RemoteImageGroup.d.ts +5 -1
  3. package/dts/media/RemoteImageGroup.d.ts.map +1 -1
  4. package/dts/visualizations/DefaultProgressCircleContent.d.ts +1 -0
  5. package/dts/visualizations/DefaultProgressCircleContent.d.ts.map +1 -1
  6. package/dts/visualizations/ProgressBar.d.ts +0 -2
  7. package/dts/visualizations/ProgressBar.d.ts.map +1 -1
  8. package/dts/visualizations/ProgressBarWithFixedLabels.d.ts +13 -6
  9. package/dts/visualizations/ProgressBarWithFixedLabels.d.ts.map +1 -1
  10. package/dts/visualizations/ProgressBarWithFloatLabel.d.ts +2 -2
  11. package/dts/visualizations/ProgressBarWithFloatLabel.d.ts.map +1 -1
  12. package/dts/visualizations/ProgressCircle.d.ts +4 -1
  13. package/dts/visualizations/ProgressCircle.d.ts.map +1 -1
  14. package/dts/visualizations/ProgressTextLabel.d.ts +5 -1
  15. package/dts/visualizations/ProgressTextLabel.d.ts.map +1 -1
  16. package/esm/media/RemoteImageGroup.js +23 -11
  17. package/esm/media/__stories__/RemoteImageGroup.stories.js +82 -6
  18. package/esm/visualizations/DefaultProgressCircleContent.js +2 -0
  19. package/esm/visualizations/ProgressBar.js +2 -2
  20. package/esm/visualizations/ProgressBarWithFixedLabels.js +12 -0
  21. package/esm/visualizations/ProgressBarWithFloatLabel.js +23 -15
  22. package/esm/visualizations/ProgressCircle.js +8 -3
  23. package/esm/visualizations/ProgressTextLabel.js +2 -1
  24. package/esm/visualizations/__stories__/ProgressBar.stories.js +52 -9
  25. package/esm/visualizations/__stories__/ProgressCircle.stories.js +14 -0
  26. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -8,6 +8,18 @@ All notable changes to this project will be documented in this file.
8
8
 
9
9
  <!-- template-start -->
10
10
 
11
+ ## 8.35.1 (1/5/2026 PST)
12
+
13
+ #### 🐞 Fixes
14
+
15
+ - Fix disableAnimateOnMount for progress components. [[#284](https://github.com/coinbase/cds/pull/284)]
16
+
17
+ ## 8.35.0 (1/5/2026 PST)
18
+
19
+ #### 🚀 Updates
20
+
21
+ - Add border props to RemoteImageGroup.
22
+
11
23
  ## 8.34.2 ((1/2/2026, 09:41 AM PST))
12
24
 
13
25
  This is an artificial version bump with no new change.
@@ -6,8 +6,10 @@ import type {
6
6
  SharedAccessibilityProps,
7
7
  SharedProps,
8
8
  } from '@coinbase/cds-common/types';
9
+ import { type BoxProps } from '../layout/Box';
9
10
  export type RemoteImageGroupBaseProps = SharedProps &
10
- SharedAccessibilityProps & {
11
+ SharedAccessibilityProps &
12
+ Pick<BoxProps, 'borderWidth' | 'borderColor'> & {
11
13
  /**
12
14
  * Indicates the number of remote image before it collapses
13
15
  * @default 4
@@ -33,6 +35,8 @@ export declare const RemoteImageGroup: ({
33
35
  max,
34
36
  shape,
35
37
  testID,
38
+ borderWidth,
39
+ borderColor,
36
40
  ...props
37
41
  }: RemoteImageGroupProps) => import('react/jsx-runtime').JSX.Element;
38
42
  export declare const shapeStyles: Record<Shape, ViewStyle>;
@@ -1 +1 @@
1
- {"version":3,"file":"RemoteImageGroup.d.ts","sourceRoot":"","sources":["../../src/media/RemoteImageGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4C,MAAM,OAAO,CAAC;AAEjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EACV,UAAU,EAEV,KAAK,EACL,wBAAwB,EACxB,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAOpC,MAAM,MAAM,yBAAyB,GAAG,WAAW,GACjD,wBAAwB,GAAG;IACzB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC3B;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,uBAAuB;IACvB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;AAEJ,MAAM,MAAM,qBAAqB,GAAG,yBAAyB,CAAC;AAE9D,eAAO,MAAM,gBAAgB,GAAI,kDAO9B,qBAAqB,4CAqFvB,CAAC;AAQF,eAAO,MAAM,WAAW,0BAgBtB,CAAC"}
1
+ {"version":3,"file":"RemoteImageGroup.d.ts","sourceRoot":"","sources":["../../src/media/RemoteImageGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4C,MAAM,OAAO,CAAC;AAEjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EACV,UAAU,EAEV,KAAK,EACL,wBAAwB,EACxB,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAAO,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAInD,MAAM,MAAM,yBAAyB,GAAG,WAAW,GACjD,wBAAwB,GACxB,IAAI,CAAC,QAAQ,EAAE,aAAa,GAAG,aAAa,CAAC,GAAG;IAC9C;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC3B;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,uBAAuB;IACvB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;AAEJ,MAAM,MAAM,qBAAqB,GAAG,yBAAyB,CAAC;AAE9D,eAAO,MAAM,gBAAgB,GAAI,4EAS9B,qBAAqB,4CAiGvB,CAAC;AAQF,eAAO,MAAM,WAAW,0BAgBtB,CAAC"}
@@ -2,6 +2,7 @@ import type { ProgressCircleContentProps } from './ProgressCircle';
2
2
  export declare const DefaultProgressCircleContent: import('react').MemoExoticComponent<
3
3
  ({
4
4
  progress,
5
+ disableAnimateOnMount,
5
6
  disabled,
6
7
  color,
7
8
  }: ProgressCircleContentProps) => import('react/jsx-runtime').JSX.Element
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultProgressCircleContent.d.ts","sourceRoot":"","sources":["../../src/visualizations/DefaultProgressCircleContent.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAGnE,eAAO,MAAM,4BAA4B,sEACK,0BAA0B,6CAOvE,CAAC"}
1
+ {"version":3,"file":"DefaultProgressCircleContent.d.ts","sourceRoot":"","sources":["../../src/visualizations/DefaultProgressCircleContent.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAGnE,eAAO,MAAM,4BAA4B,8FAMpC,0BAA0B,6CAY9B,CAAC"}
@@ -14,7 +14,6 @@ export type ProgressBaseProps = SharedProps &
14
14
  weight?: Weight;
15
15
  /**
16
16
  * Toggle used to show a disabled progress visualization
17
- * @default false
18
17
  */
19
18
  disabled?: boolean;
20
19
  /**
@@ -63,7 +62,6 @@ export declare const ProgressBar: React.MemoExoticComponent<
63
62
  weight?: Weight;
64
63
  /**
65
64
  * Toggle used to show a disabled progress visualization
66
- * @default false
67
65
  */
68
66
  disabled?: boolean;
69
67
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressBar.d.ts","sourceRoot":"","sources":["../../src/visualizations/ProgressBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8E,MAAM,OAAO,CAAC;AACnG,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,IAAI,EACT,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAEjE,OAAO,KAAK,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAMhG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAE3D,MAAM,MAAM,iBAAiB,GAAG,WAAW,GACzC,IAAI,CAAC,mBAAmB,EAAE,uBAAuB,CAAC,GAClD,IAAI,CAAC,wBAAwB,EAAE,oBAAoB,CAAC,GAAG;IACrD,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IACjB;;SAEK;IACL,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;IACxB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;CAC/B,CAAC;AAEJ,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG;IACjD;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE;QACP;;WAEG;QACH,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B;;WAEG;QACH,QAAQ,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,WAAW;IA9CpB,8DAA8D;cACpD,MAAM;IAChB;;SAEK;aACI,MAAM;IACf;;;OAGG;eACQ,OAAO;IAClB;;;OAGG;YACK,SAAS,CAAC,KAAK;IACvB;;OAEG;qBACc,MAAM,IAAI;IAC3B;;OAEG;uBACgB,MAAM,IAAI;;IAI/B;;OAEG;YACK,SAAS,CAAC,SAAS,CAAC;IAC5B;;OAEG;aACM;QACP;;WAEG;QACH,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B;;WAEG;QACH,QAAQ,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;KACjC;+BAwHF,CAAC"}
1
+ {"version":3,"file":"ProgressBar.d.ts","sourceRoot":"","sources":["../../src/visualizations/ProgressBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8E,MAAM,OAAO,CAAC;AACnG,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,IAAI,EACT,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAEjE,OAAO,KAAK,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAMhG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAE3D,MAAM,MAAM,iBAAiB,GAAG,WAAW,GACzC,IAAI,CAAC,mBAAmB,EAAE,uBAAuB,CAAC,GAClD,IAAI,CAAC,wBAAwB,EAAE,oBAAoB,CAAC,GAAG;IACrD,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IACjB;;SAEK;IACL,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;IACxB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;CAC/B,CAAC;AAEJ,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG;IACjD;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE;QACP;;WAEG;QACH,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B;;WAEG;QACH,QAAQ,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,WAAW;IA7CpB,8DAA8D;cACpD,MAAM;IAChB;;SAEK;aACI,MAAM;IACf;;OAEG;eACQ,OAAO;IAClB;;;OAGG;YACK,SAAS,CAAC,KAAK;IACvB;;OAEG;qBACc,MAAM,IAAI;IAC3B;;OAEG;uBACgB,MAAM,IAAI;;IAI/B;;OAEG;YACK,SAAS,CAAC,SAAS,CAAC;IAC5B;;OAEG;aACM;QACP;;WAEG;QACH,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B;;WAEG;QACH,QAAQ,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;KACjC;+BAwHF,CAAC"}
@@ -2,8 +2,11 @@ import React from 'react';
2
2
  import { type StyleProp, type TextStyle, type ViewStyle } from 'react-native';
3
3
  import type { PaddingProps, Placement } from '@coinbase/cds-common/types';
4
4
  import { type ProgressBarLabel } from './getProgressBarLabelParts';
5
- import { type ProgressBaseProps } from './ProgressBar';
6
- export type ProgressBarWithFixedLabelsProps = Pick<ProgressBaseProps, 'disabled' | 'testID'> & {
5
+ import { type ProgressBarProps } from './ProgressBar';
6
+ export type ProgressBarWithFixedLabelsProps = Pick<
7
+ ProgressBarProps,
8
+ 'disableAnimateOnMount' | 'disabled' | 'testID'
9
+ > & {
7
10
  /** Label that is pinned to the start of the container. If a number is used then it will format it as a percentage. */
8
11
  startLabel?: ProgressBarLabel;
9
12
  /** Label that is pinned to the end of the container. If a number is used then it will format it as a percentage. */
@@ -39,10 +42,12 @@ export type ProgressBarWithFixedLabelsProps = Pick<ProgressBaseProps, 'disabled'
39
42
  endLabel?: StyleProp<TextStyle>;
40
43
  };
41
44
  };
42
- export type ProgressBarFixedLabelBesideProps = {
45
+ export type ProgressBarFixedLabelBesideProps = Pick<
46
+ ProgressBarProps,
47
+ 'disableAnimateOnMount' | 'style'
48
+ > & {
43
49
  label: ProgressBarLabel;
44
50
  visuallyDisabled: boolean;
45
- style?: StyleProp<ViewStyle>;
46
51
  };
47
52
  export type ProgressBarFixedLabelContainerProps = Omit<
48
53
  ProgressBarWithFixedLabelsProps,
@@ -51,11 +56,13 @@ export type ProgressBarFixedLabelContainerProps = Omit<
51
56
  Pick<PaddingProps, 'paddingBottom' | 'paddingTop'> & {
52
57
  visuallyDisabled: boolean;
53
58
  };
54
- export type ProgressBarFixedLabelProps = {
59
+ export type ProgressBarFixedLabelProps = Pick<
60
+ ProgressBarProps,
61
+ 'disableAnimateOnMount' | 'style'
62
+ > & {
55
63
  position: 'start' | 'end';
56
64
  label: ProgressBarLabel;
57
65
  visuallyDisabled: boolean;
58
- style?: StyleProp<ViewStyle>;
59
66
  };
60
67
  export declare const ProgressBarWithFixedLabels: React.FC<
61
68
  React.PropsWithChildren<ProgressBarWithFixedLabelsProps>
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressBarWithFixedLabels.d.ts","sourceRoot":"","sources":["../../src/visualizations/ProgressBarWithFixedLabels.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAe,KAAK,SAAS,EAAE,KAAK,SAAS,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACjG,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAI1E,OAAO,EAA4B,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC7F,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGvD,MAAM,MAAM,+BAA+B,GAAG,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,QAAQ,CAAC,GAAG;IAC7F,sHAAsH;IACtH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,oHAAoH;IACpH,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B;;;SAGK;IACL,cAAc,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAC;IAClE;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE;QACP;;WAEG;QACH,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B;;WAEG;QACH,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACtC;;WAEG;QACH,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAClC;;WAEG;QACH,QAAQ,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,KAAK,EAAE,gBAAgB,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAAG,IAAI,CACpD,+BAA+B,EAC/B,gBAAgB,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CACrD,GACC,IAAI,CAAC,YAAY,EAAE,eAAe,GAAG,YAAY,CAAC,GAAG;IACnD,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEJ,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,EAAE,OAAO,GAAG,KAAK,CAAC;IAC1B,KAAK,EAAE,gBAAgB,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AA8FF,eAAO,MAAM,0BAA0B,EAAE,KAAK,CAAC,EAAE,CAC/C,KAAK,CAAC,iBAAiB,CAAC,+BAA+B,CAAC,CAmEzD,CAAC"}
1
+ {"version":3,"file":"ProgressBarWithFixedLabels.d.ts","sourceRoot":"","sources":["../../src/visualizations/ProgressBarWithFixedLabels.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAe,KAAK,SAAS,EAAE,KAAK,SAAS,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACjG,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAI1E,OAAO,EAA4B,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC7F,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAGtD,MAAM,MAAM,+BAA+B,GAAG,IAAI,CAChD,gBAAgB,EAChB,uBAAuB,GAAG,UAAU,GAAG,QAAQ,CAChD,GAAG;IACF,sHAAsH;IACtH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,oHAAoH;IACpH,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B;;;SAGK;IACL,cAAc,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAC;IAClE;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE;QACP;;WAEG;QACH,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B;;WAEG;QACH,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACtC;;WAEG;QACH,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAClC;;WAEG;QACH,QAAQ,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG,IAAI,CACjD,gBAAgB,EAChB,uBAAuB,GAAG,OAAO,CAClC,GAAG;IACF,KAAK,EAAE,gBAAgB,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAAG,IAAI,CACpD,+BAA+B,EAC/B,gBAAgB,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CACrD,GACC,IAAI,CAAC,YAAY,EAAE,eAAe,GAAG,YAAY,CAAC,GAAG;IACnD,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEJ,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAC3C,gBAAgB,EAChB,uBAAuB,GAAG,OAAO,CAClC,GAAG;IACF,QAAQ,EAAE,OAAO,GAAG,KAAK,CAAC;IAC1B,KAAK,EAAE,gBAAgB,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAyGF,eAAO,MAAM,0BAA0B,EAAE,KAAK,CAAC,EAAE,CAC/C,KAAK,CAAC,iBAAiB,CAAC,+BAA+B,CAAC,CAwEzD,CAAC"}
@@ -5,11 +5,11 @@ import { type ProgressBarLabel } from './getProgressBarLabelParts';
5
5
  import { type ProgressBaseProps } from './ProgressBar';
6
6
  export type ProgressBarFloatLabelProps = Pick<
7
7
  ProgressBarWithFloatLabelProps,
8
- 'label' | 'progress' | 'disabled' | 'labelPlacement' | 'styles'
8
+ 'label' | 'progress' | 'disableAnimateOnMount' | 'disabled' | 'labelPlacement' | 'styles'
9
9
  >;
10
10
  export type ProgressBarWithFloatLabelProps = Pick<
11
11
  ProgressBaseProps,
12
- 'progress' | 'disabled' | 'testID'
12
+ 'progress' | 'disableAnimateOnMount' | 'disabled' | 'testID'
13
13
  > & {
14
14
  /** Label that is floated at the end of the filled in bar. If a number is used then it will format it as a percentage. */
15
15
  label: ProgressBarLabel;
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressBarWithFloatLabel.d.ts","sourceRoot":"","sources":["../../src/visualizations/ProgressBarWithFloatLabel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkE,MAAM,OAAO,CAAC;AACvF,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAM5D,OAAO,EAA4B,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC7F,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGvD,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAC3C,8BAA8B,EAC9B,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,gBAAgB,GAAG,QAAQ,CAChE,CAAC;AAsFF,MAAM,MAAM,8BAA8B,GAAG,IAAI,CAC/C,iBAAiB,EACjB,UAAU,GAAG,UAAU,GAAG,QAAQ,CACnC,GAAG;IACF,yHAAyH;IACzH,KAAK,EAAE,gBAAgB,CAAC;IACxB;;;SAGK;IACL,cAAc,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC;IACvD;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE;QACP;;WAEG;QACH,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B;;WAEG;QACH,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACtC;;WAEG;QACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;KAC9B,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAC9C,KAAK,CAAC,iBAAiB,CAAC,8BAA8B,CAAC,CAuBxD,CAAC"}
1
+ {"version":3,"file":"ProgressBarWithFloatLabel.d.ts","sourceRoot":"","sources":["../../src/visualizations/ProgressBarWithFloatLabel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0D,MAAM,OAAO,CAAC;AAC/E,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAM5D,OAAO,EAA4B,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC7F,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGvD,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAC3C,8BAA8B,EAC9B,OAAO,GAAG,UAAU,GAAG,uBAAuB,GAAG,UAAU,GAAG,gBAAgB,GAAG,QAAQ,CAC1F,CAAC;AA2GF,MAAM,MAAM,8BAA8B,GAAG,IAAI,CAC/C,iBAAiB,EACjB,UAAU,GAAG,uBAAuB,GAAG,UAAU,GAAG,QAAQ,CAC7D,GAAG;IACF,yHAAyH;IACzH,KAAK,EAAE,gBAAgB,CAAC;IACxB;;;SAGK;IACL,cAAc,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC;IACvD;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE;QACP;;WAEG;QACH,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B;;WAEG;QACH,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACtC;;WAEG;QACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;KAC9B,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAC9C,KAAK,CAAC,iBAAiB,CAAC,8BAA8B,CAAC,CAkCxD,CAAC"}
@@ -61,7 +61,10 @@ export type ProgressCircleProps = ProgressCircleBaseProps & {
61
61
  circle?: Partial<CircleProps>;
62
62
  };
63
63
  };
64
- export type ProgressCircleContentProps = Pick<ProgressCircleBaseProps, 'progress' | 'disabled'> &
64
+ export type ProgressCircleContentProps = Pick<
65
+ ProgressCircleBaseProps,
66
+ 'progress' | 'disableAnimateOnMount' | 'disabled'
67
+ > &
65
68
  BoxProps & {
66
69
  /**
67
70
  * Custom text color.
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressCircle.d.ts","sourceRoot":"","sources":["../../src/visualizations/ProgressCircle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuD,MAAM,OAAO,CAAC;AAC5E,OAAO,EAAY,KAAK,SAAS,EAAE,KAAK,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AASnE,OAAO,EAAO,KAAK,QAAQ,EAAE,MAAM,WAAW,CAAC;AAG/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AASvD,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,GAAG;IACxD;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,uBAAuB,GAAG;IAC1D;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE;QACP;;WAEG;QACH,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B;;WAEG;QACH,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACpC;;WAEG;QACH,GAAG,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC3B;;WAEG;QACH,aAAa,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACrC;;WAEG;QACH,QAAQ,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAChC;;WAEG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;KAC/B,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,uBAAuB,EAAE,UAAU,GAAG,UAAU,CAAC,GAC7F,QAAQ,GAAG;IACT;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;CACzB,CAAC;AAgEJ,eAAO,MAAM,cAAc;;;;;;;;IAjIzB;;OAEG;kBACW,OAAO;IACrB;;;OAGG;eACQ,OAAO;IAClB;;;;;OAKG;WACI,MAAM;IACb;;OAEG;kBACW,KAAK,CAAC,SAAS;;IAI7B;;OAEG;YACK,SAAS,CAAC,SAAS,CAAC;IAC5B;;OAEG;aACM;QACP;;WAEG;QACH,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B;;WAEG;QACH,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACpC;;WAEG;QACH,GAAG,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC3B;;WAEG;QACH,aAAa,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACrC;;WAEG;QACH,QAAQ,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAChC;;WAEG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;KAC/B;+BA4LF,CAAC"}
1
+ {"version":3,"file":"ProgressCircle.d.ts","sourceRoot":"","sources":["../../src/visualizations/ProgressCircle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuD,MAAM,OAAO,CAAC;AAC5E,OAAO,EAAY,KAAK,SAAS,EAAE,KAAK,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AASnE,OAAO,EAAO,KAAK,QAAQ,EAAE,MAAM,WAAW,CAAC;AAG/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AASvD,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,GAAG;IACxD;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,uBAAuB,GAAG;IAC1D;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE;QACP;;WAEG;QACH,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B;;WAEG;QACH,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACpC;;WAEG;QACH,GAAG,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC3B;;WAEG;QACH,aAAa,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACrC;;WAEG;QACH,QAAQ,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAChC;;WAEG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;KAC/B,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAC3C,uBAAuB,EACvB,UAAU,GAAG,uBAAuB,GAAG,UAAU,CAClD,GACC,QAAQ,GAAG;IACT;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;CACzB,CAAC;AAoEJ,eAAO,MAAM,cAAc;;;;;;;;IAxIzB;;OAEG;kBACW,OAAO;IACrB;;;OAGG;eACQ,OAAO;IAClB;;;;;OAKG;WACI,MAAM;IACb;;OAEG;kBACW,KAAK,CAAC,SAAS;;IAI7B;;OAEG;YACK,SAAS,CAAC,SAAS,CAAC;IAC5B;;OAEG;aACM;QACP;;WAEG;QACH,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B;;WAEG;QACH,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACpC;;WAEG;QACH,GAAG,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC3B;;WAEG;QACH,aAAa,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACrC;;WAEG;QACH,QAAQ,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAChC;;WAEG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;KAC/B;+BAyMF,CAAC"}
@@ -2,7 +2,10 @@ import React from 'react';
2
2
  import { type StyleProp, type TextStyle } from 'react-native';
3
3
  import type { ThemeVars } from '@coinbase/cds-common/core/theme';
4
4
  import type { ProgressBaseProps } from './ProgressBar';
5
- export type ProgressTextLabelProps = Pick<ProgressBaseProps, 'disabled'> & {
5
+ export type ProgressTextLabelProps = Pick<
6
+ ProgressBaseProps,
7
+ 'disableAnimateOnMount' | 'disabled'
8
+ > & {
6
9
  value: number;
7
10
  renderLabel?: (num: number, disabled?: boolean) => React.ReactNode;
8
11
  color?: ThemeVars.Color;
@@ -15,6 +18,7 @@ export declare const ProgressTextLabel: React.MemoExoticComponent<
15
18
  ({
16
19
  value,
17
20
  renderLabel,
21
+ disableAnimateOnMount,
18
22
  disabled,
19
23
  color,
20
24
  style,
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressTextLabel.d.ts","sourceRoot":"","sources":["../../src/visualizations/ProgressTextLabel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqC,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAOjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvD,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,GAAG;IACzE,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,KAAK,CAAC,SAAS,CAAC;IACnE,KAAK,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;IACxB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,iBAAiB,6EACqB,sBAAsB,6CAyCxE,CAAC"}
1
+ {"version":3,"file":"ProgressTextLabel.d.ts","sourceRoot":"","sources":["../../src/visualizations/ProgressTextLabel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqC,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAOjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvD,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,iBAAiB,EACjB,uBAAuB,GAAG,UAAU,CACrC,GAAG;IACF,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,KAAK,CAAC,SAAS,CAAC;IACnE,KAAK,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;IACxB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,iBAAiB,qGAQzB,sBAAsB,6CA2C1B,CAAC"}
@@ -1,4 +1,4 @@
1
- const _excluded = ["children", "size", "max", "shape", "testID"];
1
+ const _excluded = ["children", "size", "max", "shape", "testID", "borderWidth", "borderColor"];
2
2
  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); }
3
3
  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; }
4
4
  import React, { Children, isValidElement, useMemo } from 'react';
@@ -13,7 +13,9 @@ export const RemoteImageGroup = _ref => {
13
13
  size = 'm',
14
14
  max = 4,
15
15
  shape = 'circle',
16
- testID
16
+ testID,
17
+ borderWidth,
18
+ borderColor = borderWidth ? 'bg' : undefined
17
19
  } = _ref,
18
20
  props = _objectWithoutPropertiesLoose(_ref, _excluded);
19
21
  const {
@@ -50,39 +52,49 @@ export const RemoteImageGroup = _ref => {
50
52
  if (! /*#__PURE__*/isValidElement(child)) {
51
53
  return null;
52
54
  }
55
+ const childShape = child.props.shape;
53
56
 
54
57
  // dynamically apply uniform sizing and shape to all RemoteImage children elements
55
58
  const clonedChild = /*#__PURE__*/React.cloneElement(child, _extends({
56
59
  testID: (testID ? testID + "-" : '') + "image-" + index,
57
60
  width: sizeAsNumber,
58
61
  height: sizeAsNumber
59
- }, child.props.shape ? undefined : {
62
+ }, childShape ? undefined : {
60
63
  shape
61
64
  }));
62
65
 
63
66
  // zIndex is progressively lower so that each child is stacked below the previous one
64
67
  const zIndex = -index;
68
+ const childShapeStyle = borderWidth ? shapeStyles[childShape != null ? childShape : shape] : undefined;
65
69
  return /*#__PURE__*/_jsx(Box, {
70
+ borderColor: borderColor,
71
+ borderWidth: borderWidth,
66
72
  marginStart: index === 0 ? undefined : overlapSpacing,
67
73
  position: "relative",
74
+ style: childShapeStyle,
68
75
  testID: (testID ? testID + "-" : '') + "inner-box-" + index,
69
76
  zIndex: zIndex,
70
77
  children: clonedChild
71
78
  }, index);
72
79
  }), excess > 0 && /*#__PURE__*/_jsx(Box, {
73
- alignItems: "center",
74
80
  background: "bgOverlay",
75
- height: sizeAsNumber,
76
- justifyContent: "center",
81
+ borderColor: borderColor,
82
+ borderWidth: borderWidth,
77
83
  marginStart: overlapSpacing,
84
+ overflow: "hidden",
78
85
  position: "relative",
79
86
  style: shapeStyle,
80
- width: sizeAsNumber,
81
87
  zIndex: groupChildren.length * -1,
82
- children: /*#__PURE__*/_jsxs(Text, {
83
- style: [typographyStyles, styles.centerText],
84
- testID: (testID ? testID + "-" : '') + "excess-text",
85
- children: ["+", excess]
88
+ children: /*#__PURE__*/_jsx(Box, {
89
+ alignItems: "center",
90
+ height: sizeAsNumber,
91
+ justifyContent: "center",
92
+ width: sizeAsNumber,
93
+ children: /*#__PURE__*/_jsxs(Text, {
94
+ style: [typographyStyles, styles.centerText],
95
+ testID: (testID ? testID + "-" : '') + "excess-text",
96
+ children: ["+", excess]
97
+ })
86
98
  })
87
99
  })]
88
100
  }));
@@ -104,7 +104,7 @@ const CircleMax = () => {
104
104
  };
105
105
  const CircleMaxDefaultCustomSize = () => /*#__PURE__*/_jsxs(VStack, {
106
106
  children: [/*#__PURE__*/_jsx(Text, {
107
- font: "body",
107
+ font: "label1",
108
108
  children: "RemoteImageGroup excess element defaults to m of AvatarSize when size is not specified"
109
109
  }), /*#__PURE__*/_jsxs(RemoteImageGroup, {
110
110
  max: 2,
@@ -122,7 +122,7 @@ const CircleMaxDefaultCustomSize = () => /*#__PURE__*/_jsxs(VStack, {
122
122
  });
123
123
  const MixAndMatchShapes = () => /*#__PURE__*/_jsxs(VStack, {
124
124
  children: [/*#__PURE__*/_jsx(Text, {
125
- font: "body",
125
+ font: "label1",
126
126
  children: "RemoteImage child shape takes precedence over RemoteImageGroup shape"
127
127
  }), /*#__PURE__*/_jsxs(RemoteImageGroup, {
128
128
  shape: "circle",
@@ -218,7 +218,7 @@ const SquircleMax = () => {
218
218
  };
219
219
  const SquircleMaxDefaultCustomSize = () => /*#__PURE__*/_jsxs(VStack, {
220
220
  children: [/*#__PURE__*/_jsx(Text, {
221
- font: "body",
221
+ font: "label1",
222
222
  children: "RemoteImageGroup excess element defaults to m of AvatarSize when size is not specified"
223
223
  }), /*#__PURE__*/_jsxs(RemoteImageGroup, {
224
224
  max: 2,
@@ -236,7 +236,7 @@ const SquircleMaxDefaultCustomSize = () => /*#__PURE__*/_jsxs(VStack, {
236
236
  });
237
237
  const SquircleMaxSetCustomMaxSize = () => /*#__PURE__*/_jsxs(VStack, {
238
238
  children: [/*#__PURE__*/_jsx(Text, {
239
- font: "body",
239
+ font: "label1",
240
240
  children: "Set a custom size of 36 for RemoteImageGroup excess component"
241
241
  }), /*#__PURE__*/_jsxs(RemoteImageGroup, {
242
242
  max: 2,
@@ -255,7 +255,7 @@ const SquircleMaxSetCustomMaxSize = () => /*#__PURE__*/_jsxs(VStack, {
255
255
  });
256
256
  const HideExcessWhenExceedThreshold = () => /*#__PURE__*/_jsxs(VStack, {
257
257
  children: [/*#__PURE__*/_jsx(Text, {
258
- font: "body",
258
+ font: "label1",
259
259
  children: "Excess component when size is smaller than a certain size looks funky"
260
260
  }), /*#__PURE__*/_jsxs(RemoteImageGroup, {
261
261
  max: 2,
@@ -272,9 +272,85 @@ const HideExcessWhenExceedThreshold = () => /*#__PURE__*/_jsxs(VStack, {
272
272
  })]
273
273
  })]
274
274
  });
275
+ const ShapeWithBorderWidth = () => /*#__PURE__*/_jsxs(VStack, {
276
+ children: [/*#__PURE__*/_jsx(Text, {
277
+ font: "label1",
278
+ children: "Circle with border width"
279
+ }), /*#__PURE__*/_jsxs(RemoteImageGroup, {
280
+ borderWidth: 300,
281
+ shape: "circle",
282
+ size: 32,
283
+ children: [/*#__PURE__*/_jsx(RemoteImage, {
284
+ source: assets.eth.imageUrl
285
+ }), /*#__PURE__*/_jsx(RemoteImage, {
286
+ source: assets.btc.imageUrl
287
+ }), /*#__PURE__*/_jsx(RemoteImage, {
288
+ source: assets.dai.imageUrl
289
+ }), /*#__PURE__*/_jsx(RemoteImage, {
290
+ source: assets.hbar.imageUrl
291
+ }), /*#__PURE__*/_jsx(RemoteImage, {
292
+ source: assets.ltc.imageUrl
293
+ }), /*#__PURE__*/_jsx(RemoteImage, {
294
+ source: assets.uni.imageUrl
295
+ })]
296
+ }), /*#__PURE__*/_jsx(Text, {
297
+ font: "label1",
298
+ children: "Circle with border color and border width"
299
+ }), /*#__PURE__*/_jsxs(RemoteImageGroup, {
300
+ borderColor: "bgPositive",
301
+ borderWidth: 300,
302
+ shape: "circle",
303
+ size: 32,
304
+ children: [/*#__PURE__*/_jsx(RemoteImage, {
305
+ source: assets.eth.imageUrl
306
+ }), /*#__PURE__*/_jsx(RemoteImage, {
307
+ source: assets.btc.imageUrl
308
+ }), /*#__PURE__*/_jsx(RemoteImage, {
309
+ source: assets.dai.imageUrl
310
+ }), /*#__PURE__*/_jsx(RemoteImage, {
311
+ source: assets.hbar.imageUrl
312
+ }), /*#__PURE__*/_jsx(RemoteImage, {
313
+ source: assets.ltc.imageUrl
314
+ }), /*#__PURE__*/_jsx(RemoteImage, {
315
+ source: assets.uni.imageUrl
316
+ })]
317
+ }), /*#__PURE__*/_jsx(Text, {
318
+ font: "label1",
319
+ children: "Squircle with border width"
320
+ }), /*#__PURE__*/_jsxs(RemoteImageGroup, {
321
+ borderWidth: 300,
322
+ shape: "squircle",
323
+ size: 32,
324
+ children: [/*#__PURE__*/_jsx(RemoteImage, {
325
+ source: squareAssets.human1
326
+ }), /*#__PURE__*/_jsx(RemoteImage, {
327
+ source: squareAssets.human2
328
+ }), /*#__PURE__*/_jsx(RemoteImage, {
329
+ source: squareAssets.human1
330
+ })]
331
+ }), /*#__PURE__*/_jsx(Text, {
332
+ font: "label1",
333
+ children: "Mixed shape with border width"
334
+ }), /*#__PURE__*/_jsxs(RemoteImageGroup, {
335
+ borderWidth: 300,
336
+ shape: "circle",
337
+ size: "xxl",
338
+ children: [/*#__PURE__*/_jsx(RemoteImage, {
339
+ shape: "squircle",
340
+ source: squareAssets.human1
341
+ }), /*#__PURE__*/_jsx(RemoteImage, {
342
+ source: assets.sushi.imageUrl
343
+ }), /*#__PURE__*/_jsx(RemoteImage, {
344
+ shape: "squircle",
345
+ source: squareAssets.human2
346
+ }), /*#__PURE__*/_jsx(RemoteImage, {
347
+ source: assets.ltc.imageUrl
348
+ })]
349
+ })]
350
+ });
275
351
  const All = () => /*#__PURE__*/_jsxs(VStack, {
276
352
  gap: 7,
277
- children: [/*#__PURE__*/_jsx(Circle, {}), /*#__PURE__*/_jsx(CircleCustomSize, {}), /*#__PURE__*/_jsx(CircleAvatarSize, {}), /*#__PURE__*/_jsx(CircleMax, {}), /*#__PURE__*/_jsx(CircleMaxDefaultCustomSize, {}), /*#__PURE__*/_jsx(Squircle, {}), /*#__PURE__*/_jsx(SquircleCustomSize, {}), /*#__PURE__*/_jsx(SquircleAvatarSize, {}), /*#__PURE__*/_jsx(SquircleMax, {}), /*#__PURE__*/_jsx(SquircleMaxDefaultCustomSize, {}), /*#__PURE__*/_jsx(SquircleMaxSetCustomMaxSize, {}), /*#__PURE__*/_jsx(HideExcessWhenExceedThreshold, {}), /*#__PURE__*/_jsx(MixAndMatchShapes, {})]
353
+ children: [/*#__PURE__*/_jsx(Circle, {}), /*#__PURE__*/_jsx(CircleCustomSize, {}), /*#__PURE__*/_jsx(CircleAvatarSize, {}), /*#__PURE__*/_jsx(CircleMax, {}), /*#__PURE__*/_jsx(CircleMaxDefaultCustomSize, {}), /*#__PURE__*/_jsx(Squircle, {}), /*#__PURE__*/_jsx(SquircleCustomSize, {}), /*#__PURE__*/_jsx(SquircleAvatarSize, {}), /*#__PURE__*/_jsx(SquircleMax, {}), /*#__PURE__*/_jsx(SquircleMaxDefaultCustomSize, {}), /*#__PURE__*/_jsx(SquircleMaxSetCustomMaxSize, {}), /*#__PURE__*/_jsx(HideExcessWhenExceedThreshold, {}), /*#__PURE__*/_jsx(MixAndMatchShapes, {}), /*#__PURE__*/_jsx(ShapeWithBorderWidth, {})]
278
354
  });
279
355
  export { All };
280
356
  const RemoteImageGroupScreen = () => {
@@ -5,6 +5,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
5
5
  export const DefaultProgressCircleContent = /*#__PURE__*/memo(_ref => {
6
6
  let {
7
7
  progress,
8
+ disableAnimateOnMount,
8
9
  disabled,
9
10
  color = 'fgMuted'
10
11
  } = _ref;
@@ -14,6 +15,7 @@ export const DefaultProgressCircleContent = /*#__PURE__*/memo(_ref => {
14
15
  flexShrink: 0,
15
16
  children: /*#__PURE__*/_jsx(ProgressTextLabel, {
16
17
  color: color,
18
+ disableAnimateOnMount: disableAnimateOnMount,
17
19
  disabled: disabled,
18
20
  value: Math.round(progress * 100)
19
21
  })
@@ -14,8 +14,8 @@ export const ProgressBar = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((_ref, forw
14
14
  weight = 'normal',
15
15
  progress,
16
16
  color = 'bgPrimary',
17
- disabled = false,
18
- disableAnimateOnMount = false,
17
+ disabled,
18
+ disableAnimateOnMount,
19
19
  testID,
20
20
  accessibilityLabel,
21
21
  style,
@@ -8,6 +8,7 @@ const ProgressBarFixedLabelBeside = /*#__PURE__*/memo(_ref => {
8
8
  let {
9
9
  label,
10
10
  visuallyDisabled,
11
+ disableAnimateOnMount,
11
12
  style
12
13
  } = _ref;
13
14
  const {
@@ -16,6 +17,7 @@ const ProgressBarFixedLabelBeside = /*#__PURE__*/memo(_ref => {
16
17
  } = getProgressBarLabelParts(label);
17
18
  return /*#__PURE__*/_jsx(ProgressTextLabel, {
18
19
  color: "fg",
20
+ disableAnimateOnMount: disableAnimateOnMount,
19
21
  disabled: visuallyDisabled,
20
22
  renderLabel: renderLabel,
21
23
  style: style,
@@ -27,11 +29,13 @@ const ProgressBarFixedLabel = /*#__PURE__*/memo(_ref2 => {
27
29
  label,
28
30
  position,
29
31
  visuallyDisabled,
32
+ disableAnimateOnMount,
30
33
  style
31
34
  } = _ref2;
32
35
  return /*#__PURE__*/_jsx(View, {
33
36
  testID: "cds-progress-bar-fixed-label-" + position,
34
37
  children: /*#__PURE__*/_jsx(ProgressBarFixedLabelBeside, {
38
+ disableAnimateOnMount: disableAnimateOnMount,
35
39
  label: label,
36
40
  style: style,
37
41
  visuallyDisabled: visuallyDisabled
@@ -43,6 +47,7 @@ const ProgressBarFixedLabelContainer = /*#__PURE__*/memo(_ref3 => {
43
47
  startLabel,
44
48
  endLabel,
45
49
  visuallyDisabled,
50
+ disableAnimateOnMount,
46
51
  paddingBottom,
47
52
  paddingTop,
48
53
  styles
@@ -50,6 +55,7 @@ const ProgressBarFixedLabelContainer = /*#__PURE__*/memo(_ref3 => {
50
55
  const nodes = [];
51
56
  if (typeof startLabel !== 'undefined') {
52
57
  nodes.push(/*#__PURE__*/_jsx(ProgressBarFixedLabel, {
58
+ disableAnimateOnMount: disableAnimateOnMount,
53
59
  label: startLabel,
54
60
  position: "start",
55
61
  style: styles == null ? void 0 : styles.startLabel,
@@ -61,6 +67,7 @@ const ProgressBarFixedLabelContainer = /*#__PURE__*/memo(_ref3 => {
61
67
  }
62
68
  if (typeof endLabel !== 'undefined') {
63
69
  nodes.push(/*#__PURE__*/_jsx(ProgressBarFixedLabel, {
70
+ disableAnimateOnMount: disableAnimateOnMount,
64
71
  label: endLabel,
65
72
  position: "end",
66
73
  style: styles == null ? void 0 : styles.endLabel,
@@ -90,6 +97,7 @@ export const ProgressBarWithFixedLabels = /*#__PURE__*/memo(_ref4 => {
90
97
  startLabel,
91
98
  endLabel,
92
99
  labelPlacement = 'beside',
100
+ disableAnimateOnMount,
93
101
  disabled = false,
94
102
  children,
95
103
  testID,
@@ -102,6 +110,7 @@ export const ProgressBarWithFixedLabels = /*#__PURE__*/memo(_ref4 => {
102
110
  flexShrink: 0,
103
111
  paddingEnd: 1,
104
112
  children: /*#__PURE__*/_jsx(ProgressBarFixedLabelBeside, {
113
+ disableAnimateOnMount: disableAnimateOnMount,
105
114
  label: startLabel,
106
115
  style: styles == null ? void 0 : styles.startLabel,
107
116
  visuallyDisabled: disabled
@@ -112,6 +121,7 @@ export const ProgressBarWithFixedLabels = /*#__PURE__*/memo(_ref4 => {
112
121
  flexShrink: 0,
113
122
  paddingStart: 1,
114
123
  children: /*#__PURE__*/_jsx(ProgressBarFixedLabelBeside, {
124
+ disableAnimateOnMount: disableAnimateOnMount,
115
125
  label: endLabel,
116
126
  style: styles == null ? void 0 : styles.endLabel,
117
127
  visuallyDisabled: disabled
@@ -123,6 +133,7 @@ export const ProgressBarWithFixedLabels = /*#__PURE__*/memo(_ref4 => {
123
133
  style: rootStyle,
124
134
  testID: testID,
125
135
  children: [labelPlacement === 'above' && /*#__PURE__*/_jsx(ProgressBarFixedLabelContainer, {
136
+ disableAnimateOnMount: disableAnimateOnMount,
126
137
  endLabel: endLabel,
127
138
  paddingBottom: 1,
128
139
  startLabel: startLabel,
@@ -136,6 +147,7 @@ export const ProgressBarWithFixedLabels = /*#__PURE__*/memo(_ref4 => {
136
147
  width: "100%",
137
148
  children: [labelPlacement === 'beside' && leftEl, children, labelPlacement === 'beside' && rightEl]
138
149
  }), labelPlacement === 'below' && /*#__PURE__*/_jsx(ProgressBarFixedLabelContainer, {
150
+ disableAnimateOnMount: disableAnimateOnMount,
139
151
  endLabel: endLabel,
140
152
  paddingTop: 1,
141
153
  startLabel: startLabel,
@@ -1,5 +1,5 @@
1
1
  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); }
2
- import React, { memo, useCallback, useEffect, useMemo, useRef, useState } from 'react';
2
+ import React, { memo, useCallback, useEffect, useMemo, useState } from 'react';
3
3
  import { Animated, I18nManager } from 'react-native';
4
4
  import { animateProgressBaseSpec } from '@coinbase/cds-common/animation/progress';
5
5
  import { usePreviousValues } from '@coinbase/cds-common/hooks/usePreviousValues';
@@ -10,50 +10,55 @@ import { getProgressBarLabelParts } from './getProgressBarLabelParts';
10
10
  import { ProgressTextLabel } from './ProgressTextLabel';
11
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
12
  const ProgressBarFloatLabel = /*#__PURE__*/memo(_ref => {
13
- var _getPreviousPercent;
14
13
  let {
15
14
  label,
16
15
  disabled,
17
16
  progress,
17
+ disableAnimateOnMount,
18
18
  labelPlacement,
19
19
  styles
20
20
  } = _ref;
21
21
  const [textWidth, setTextWidth] = useState(-1);
22
22
  const {
23
- getPreviousValue: getPreviousPercent,
24
23
  addPreviousValue: addPreviousPercent
25
- } = usePreviousValues([0]);
24
+ } = usePreviousValues([disableAnimateOnMount ? progress : 0]);
26
25
  const [size, onLayout] = useLayout();
27
26
  const containerWidth = size.width;
27
+ const [hasAnimationMounted, setHasAnimationMounted] = useState(!disableAnimateOnMount);
28
+ const animatedProgress = useMemo(() => new Animated.Value(0), []);
28
29
  addPreviousPercent(progress);
29
- const previousPercent = (_getPreviousPercent = getPreviousPercent()) != null ? _getPreviousPercent : 0;
30
- const animatedProgress = useRef(new Animated.Value(previousPercent));
31
30
  const {
32
31
  value: labelNum,
33
32
  render: renderLabel
34
33
  } = getProgressBarLabelParts(label);
35
34
  useEffect(() => {
36
35
  if (containerWidth > 0 && textWidth > -1) {
37
- var _Animated$timing;
38
- (_Animated$timing = Animated.timing(animatedProgress.current, convertMotionConfig(_extends({
39
- toValue: progress
40
- }, animateProgressBaseSpec, {
41
- useNativeDriver: true
42
- })))) == null || _Animated$timing.start();
36
+ if (!hasAnimationMounted && disableAnimateOnMount) {
37
+ animatedProgress.setValue(progress);
38
+ setHasAnimationMounted(true);
39
+ } else {
40
+ var _Animated$timing;
41
+ (_Animated$timing = Animated.timing(animatedProgress, convertMotionConfig(_extends({
42
+ toValue: progress
43
+ }, animateProgressBaseSpec, {
44
+ useNativeDriver: true
45
+ })))) == null || _Animated$timing.start();
46
+ }
43
47
  }
44
- }, [progress, animatedProgress, containerWidth, textWidth, addPreviousPercent]);
48
+ }, [progress, containerWidth, textWidth, animatedProgress, disableAnimateOnMount, hasAnimationMounted]);
45
49
  const handleTextLayout = useCallback(event => {
46
50
  setTextWidth(event.nativeEvent.layout.width);
47
51
  }, []);
48
52
  const containerStyle = useMemo(() => [styles == null ? void 0 : styles.labelContainer], [styles == null ? void 0 : styles.labelContainer]);
49
53
  const labelStyle = useMemo(() => [{
54
+ opacity: hasAnimationMounted ? 1 : 0,
50
55
  transform: [{
51
- translateX: animatedProgress.current.interpolate({
56
+ translateX: animatedProgress.interpolate({
52
57
  inputRange: [0, 1],
53
58
  outputRange: [I18nManager.isRTL ? containerWidth - textWidth : 0, I18nManager.isRTL ? 0 : containerWidth - textWidth]
54
59
  })
55
60
  }]
56
- }], [containerWidth, textWidth]);
61
+ }], [containerWidth, textWidth, hasAnimationMounted, animatedProgress]);
57
62
  return /*#__PURE__*/_jsx(Box, {
58
63
  flexWrap: "nowrap",
59
64
  onLayout: onLayout,
@@ -71,6 +76,7 @@ const ProgressBarFloatLabel = /*#__PURE__*/memo(_ref => {
71
76
  testID: "cds-progress-bar-float-label",
72
77
  children: /*#__PURE__*/_jsx(ProgressTextLabel, {
73
78
  color: "fgMuted",
79
+ disableAnimateOnMount: disableAnimateOnMount,
74
80
  disabled: disabled,
75
81
  renderLabel: renderLabel,
76
82
  style: styles == null ? void 0 : styles.label,
@@ -84,6 +90,7 @@ export const ProgressBarWithFloatLabel = /*#__PURE__*/memo(_ref2 => {
84
90
  label,
85
91
  labelPlacement = 'above',
86
92
  progress,
93
+ disableAnimateOnMount,
87
94
  disabled,
88
95
  children,
89
96
  testID,
@@ -92,6 +99,7 @@ export const ProgressBarWithFloatLabel = /*#__PURE__*/memo(_ref2 => {
92
99
  } = _ref2;
93
100
  const rootStyle = useMemo(() => [style, styles == null ? void 0 : styles.root], [style, styles == null ? void 0 : styles.root]);
94
101
  const progressBarFloatLabel = /*#__PURE__*/_jsx(ProgressBarFloatLabel, {
102
+ disableAnimateOnMount: disableAnimateOnMount,
95
103
  disabled: disabled,
96
104
  label: label,
97
105
  labelPlacement: labelPlacement,
@@ -23,13 +23,15 @@ const ProgressCircleInner = /*#__PURE__*/memo(_ref => {
23
23
  visuallyDisabled,
24
24
  style,
25
25
  onAnimationEnd,
26
- onAnimationStart
26
+ onAnimationStart,
27
+ disableAnimateOnMount
27
28
  } = _ref;
28
29
  const strokeWidth = useProgressSize(weight);
29
30
  const theme = useTheme();
30
31
  const circleRef = useRef(null);
31
32
  const circumference = getCircumference(getRadius(size, strokeWidth));
32
- const animatedStrokeDashOffset = React.useRef(new Animated.Value(circumference));
33
+ const initialOffset = disableAnimateOnMount ? circumference - circumference * progress : circumference;
34
+ const animatedStrokeDashOffset = useRef(new Animated.Value(initialOffset));
33
35
  useEffect(() => {
34
36
  const strokeDashoffset = circumference - circumference * progress;
35
37
  onAnimationStart == null || onAnimationStart();
@@ -65,7 +67,8 @@ export const ProgressCircle = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((_ref3,
65
67
  // a11y label isn't specified
66
68
  accessibilityLabel = '',
67
69
  color = 'bgPrimary',
68
- disabled = false,
70
+ disabled,
71
+ disableAnimateOnMount,
69
72
  testID,
70
73
  hideContent,
71
74
  hideText,
@@ -128,6 +131,7 @@ export const ProgressCircle = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((_ref3,
128
131
  stroke: theme.color.bgLine
129
132
  }), (styles == null ? void 0 : styles.circle) || {})), /*#__PURE__*/_jsx(ProgressCircleInner, {
130
133
  color: color,
134
+ disableAnimateOnMount: disableAnimateOnMount,
131
135
  onAnimationEnd: onAnimationEnd,
132
136
  onAnimationStart: onAnimationStart,
133
137
  progress: progress,
@@ -150,6 +154,7 @@ export const ProgressCircle = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((_ref3,
150
154
  overflow: "hidden",
151
155
  width: "100%",
152
156
  children: contentNode != null ? contentNode : /*#__PURE__*/_jsx(DefaultProgressCircleContent, {
157
+ disableAnimateOnMount: disableAnimateOnMount,
153
158
  disabled: disabled,
154
159
  progress: progress
155
160
  })
@@ -10,6 +10,7 @@ export const ProgressTextLabel = /*#__PURE__*/memo(_ref => {
10
10
  let {
11
11
  value,
12
12
  renderLabel,
13
+ disableAnimateOnMount,
13
14
  disabled,
14
15
  color,
15
16
  style
@@ -17,7 +18,7 @@ export const ProgressTextLabel = /*#__PURE__*/memo(_ref => {
17
18
  const {
18
19
  getPreviousValue,
19
20
  addPreviousValue
20
- } = usePreviousValues([0]);
21
+ } = usePreviousValues([disableAnimateOnMount ? value : 0]);
21
22
  const accessibilityState = useMemo(() => ({
22
23
  disabled: !!disabled
23
24
  }), [disabled]);
@@ -375,15 +375,6 @@ const ProgressBarScreen = () => {
375
375
  })]
376
376
  })
377
377
  })
378
- }), /*#__PURE__*/_jsx(Example, {
379
- title: "Disable Mount Animation",
380
- children: /*#__PURE__*/_jsx(ProgressContainerWithButtons, {
381
- hideIncrease: true,
382
- children: () => /*#__PURE__*/_jsx(ProgressBar, {
383
- disableAnimateOnMount: true,
384
- progress: 0.8
385
- })
386
- })
387
378
  }), /*#__PURE__*/_jsx(Example, {
388
379
  title: "Animation Callbacks",
389
380
  children: /*#__PURE__*/_jsx(AnimationCallbacksExample, {})
@@ -472,6 +463,58 @@ const ProgressBarScreen = () => {
472
463
  });
473
464
  }
474
465
  })
466
+ }), /*#__PURE__*/_jsx(Example, {
467
+ title: "Disable Mount Animation",
468
+ children: /*#__PURE__*/_jsx(ProgressContainerWithButtons, {
469
+ children: _ref10 => {
470
+ let {
471
+ calculateProgress
472
+ } = _ref10;
473
+ return /*#__PURE__*/_jsxs(VStack, {
474
+ gap: 4,
475
+ children: [/*#__PURE__*/_jsxs(VStack, {
476
+ gap: 1,
477
+ children: [/*#__PURE__*/_jsx(Text, {
478
+ font: "label1",
479
+ children: "ProgressBar"
480
+ }), /*#__PURE__*/_jsx(ProgressBar, {
481
+ disableAnimateOnMount: true,
482
+ progress: calculateProgress(0.8)
483
+ })]
484
+ }), /*#__PURE__*/_jsxs(VStack, {
485
+ gap: 1,
486
+ children: [/*#__PURE__*/_jsx(Text, {
487
+ font: "label1",
488
+ children: "ProgressBarWithFixedLabels"
489
+ }), /*#__PURE__*/_jsx(ProgressBarWithFixedLabels, {
490
+ disableAnimateOnMount: true,
491
+ endLabel: Math.round(calculateProgress(0.8) * 100),
492
+ labelPlacement: "above",
493
+ startLabel: 0,
494
+ children: /*#__PURE__*/_jsx(ProgressBar, {
495
+ disableAnimateOnMount: true,
496
+ progress: calculateProgress(0.8)
497
+ })
498
+ })]
499
+ }), /*#__PURE__*/_jsxs(VStack, {
500
+ gap: 1,
501
+ children: [/*#__PURE__*/_jsx(Text, {
502
+ font: "label1",
503
+ children: "ProgressBarWithFloatLabel"
504
+ }), /*#__PURE__*/_jsx(ProgressBarWithFloatLabel, {
505
+ disableAnimateOnMount: true,
506
+ label: Math.round(calculateProgress(0.8) * 100),
507
+ labelPlacement: "above",
508
+ progress: calculateProgress(0.8),
509
+ children: /*#__PURE__*/_jsx(ProgressBar, {
510
+ disableAnimateOnMount: true,
511
+ progress: calculateProgress(0.8)
512
+ })
513
+ })]
514
+ })]
515
+ });
516
+ }
517
+ })
475
518
  })]
476
519
  });
477
520
  };
@@ -447,6 +447,20 @@ const ProgressBarScreen = () => {
447
447
  });
448
448
  }
449
449
  })
450
+ }), /*#__PURE__*/_jsx(Example, {
451
+ title: "Disable Mount Animation",
452
+ children: /*#__PURE__*/_jsx(ProgressContainerWithButtons, {
453
+ children: _ref8 => {
454
+ let {
455
+ calculateProgress
456
+ } = _ref8;
457
+ return /*#__PURE__*/_jsx(ProgressCircle, {
458
+ disableAnimateOnMount: true,
459
+ progress: calculateProgress(0.8),
460
+ size: 100
461
+ });
462
+ }
463
+ })
450
464
  })]
451
465
  });
452
466
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coinbase/cds-mobile",
3
- "version": "8.34.2",
3
+ "version": "8.35.1",
4
4
  "description": "Coinbase Design System - Mobile",
5
5
  "repository": {
6
6
  "type": "git",
@@ -198,7 +198,7 @@
198
198
  "react-native-svg": "^14.1.0"
199
199
  },
200
200
  "dependencies": {
201
- "@coinbase/cds-common": "^8.34.2",
201
+ "@coinbase/cds-common": "^8.35.1",
202
202
  "@coinbase/cds-icons": "^5.9.0",
203
203
  "@coinbase/cds-illustrations": "^4.29.0",
204
204
  "@coinbase/cds-lottie-files": "^3.3.4",