@transferwise/components 0.0.0-experimental-a087360 → 0.0.0-experimental-73ab65e

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 (49) hide show
  1. package/build/index.esm.js +91 -68
  2. package/build/index.esm.js.map +1 -1
  3. package/build/index.js +91 -68
  4. package/build/index.js.map +1 -1
  5. package/build/main.css +1 -1
  6. package/build/styles/flowNavigation/FlowNavigation.css +1 -1
  7. package/build/styles/flowNavigation/animatedLabel/AnimatedLabel.css +1 -1
  8. package/build/styles/inputs/SelectInput.css +1 -1
  9. package/build/styles/main.css +1 -1
  10. package/build/styles/overlayHeader/OverlayHeader.css +1 -1
  11. package/build/types/common/flowHeader/FlowHeader.d.ts.map +1 -1
  12. package/build/types/flowNavigation/FlowNavigation.d.ts.map +1 -1
  13. package/build/types/flowNavigation/animatedLabel/AnimatedLabel.d.ts +2 -1
  14. package/build/types/flowNavigation/animatedLabel/AnimatedLabel.d.ts.map +1 -1
  15. package/build/types/flowNavigation/backButton/BackButton.d.ts +11 -10
  16. package/build/types/flowNavigation/backButton/BackButton.d.ts.map +1 -1
  17. package/build/types/inputs/SelectInput.d.ts +2 -1
  18. package/build/types/inputs/SelectInput.d.ts.map +1 -1
  19. package/build/types/overlayHeader/OverlayHeader.d.ts.map +1 -1
  20. package/package.json +1 -1
  21. package/src/common/flowHeader/FlowHeader.tsx +22 -4
  22. package/src/common/flowHeader/__snapshots__/FlowHeader.spec.js.snap +22 -6
  23. package/src/flowNavigation/FlowNavigation.css +1 -1
  24. package/src/flowNavigation/FlowNavigation.less +9 -0
  25. package/src/flowNavigation/FlowNavigation.spec.js +3 -3
  26. package/src/flowNavigation/FlowNavigation.story.js +189 -22
  27. package/src/flowNavigation/FlowNavigation.tsx +27 -22
  28. package/src/flowNavigation/__snapshots__/FlowNavigation.spec.js.snap +26 -18
  29. package/src/flowNavigation/animatedLabel/AnimatedLabel.css +1 -1
  30. package/src/flowNavigation/animatedLabel/AnimatedLabel.less +6 -0
  31. package/src/flowNavigation/animatedLabel/AnimatedLabel.spec.js +21 -7
  32. package/src/flowNavigation/animatedLabel/AnimatedLabel.story.js +22 -0
  33. package/src/flowNavigation/animatedLabel/AnimatedLabel.tsx +17 -8
  34. package/src/flowNavigation/animatedLabel/__snapshots__/AnimatedLabel.spec.js.snap +4 -4
  35. package/src/flowNavigation/backButton/BackButton.js +9 -14
  36. package/src/flowNavigation/backButton/BackButton.spec.js +2 -3
  37. package/src/flowNavigation/backButton/__snapshots__/BackButton.spec.js.snap +21 -28
  38. package/src/inputs/SelectInput.css +1 -1
  39. package/src/inputs/SelectInput.less +4 -0
  40. package/src/inputs/SelectInput.spec.tsx +40 -0
  41. package/src/inputs/SelectInput.story.tsx +18 -0
  42. package/src/inputs/SelectInput.tsx +38 -10
  43. package/src/inputs/_BottomSheet.less +1 -1
  44. package/src/main.css +1 -1
  45. package/src/overlayHeader/OverlayHeader.css +1 -1
  46. package/src/overlayHeader/OverlayHeader.js +4 -6
  47. package/src/overlayHeader/OverlayHeader.less +8 -0
  48. package/src/overlayHeader/OverlayHeader.spec.js +1 -1
  49. package/src/overlayHeader/__snapshots__/OverlayHeader.spec.js.snap +14 -10
@@ -1 +1 @@
1
- .np-overlay-header .np-overlay-header__content{max-width:1164px;min-height:97px;min-width:320px;width:100%}.np-theme-personal .np-overlay-header{border-bottom:1px solid #0000001a;border-bottom:1px solid var(--color-border-neutral)}.np-theme-personal--bright-green .np-overlay-header .np-flow-header__left path,.np-theme-personal--dark .np-overlay-header .np-flow-header__left path,.np-theme-personal--forest-green .np-overlay-header .np-flow-header__left path{fill:var(--color-interactive-primary)}
1
+ .np-overlay-header .np-overlay-header__content{max-width:1164px;min-height:97px;min-width:320px;width:100%}.np-overlay-header .np-overlay-header__content .separator{background-color:#0000001a;background-color:var(--color-border-neutral);height:32px;height:var(--size-32);width:1px}[dir=rtl] .np-overlay-header .np-overlay-header__content .separator{margin-right:16px!important;margin-right:var(--size-16)!important}[dir=rtl] .np-overlay-header .np-overlay-header__content .separator,html:not([dir=rtl]) .np-overlay-header .np-overlay-header__content .separator{margin-left:16px!important;margin-left:var(--size-16)!important}html:not([dir=rtl]) .np-overlay-header .np-overlay-header__content .separator{margin-right:16px!important;margin-right:var(--size-16)!important}.np-theme-personal .np-overlay-header{border-bottom:1px solid #0000001a;border-bottom:1px solid var(--color-border-neutral)}.np-theme-personal--bright-green .np-overlay-header .np-flow-header__left path,.np-theme-personal--dark .np-overlay-header .np-flow-header__left path,.np-theme-personal--forest-green .np-overlay-header .np-flow-header__left path{fill:var(--color-interactive-primary)}
@@ -1 +1 @@
1
- {"version":3,"file":"FlowHeader.d.ts","sourceRoot":"","sources":["../../../../src/common/flowHeader/FlowHeader.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,MAAM,WAAW,eAAe;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC;IAC7C,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAChC;AAED,QAAA,MAAM,UAAU,wFAuCf,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"FlowHeader.d.ts","sourceRoot":"","sources":["../../../../src/common/flowHeader/FlowHeader.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,MAAM,WAAW,eAAe;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC;IAC7C,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAChC;AAED,QAAA,MAAM,UAAU,wFAyDf,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FlowNavigation.d.ts","sourceRoot":"","sources":["../../../src/flowNavigation/FlowNavigation.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAgB,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAMnD,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,2FAA2F;IAC3F,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,sIAAsI;IACtI,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,wGAAwG;IACxG,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED,QAAA,MAAM,cAAc,kEAQjB,mBAAmB,sBAqErB,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"FlowNavigation.d.ts","sourceRoot":"","sources":["../../../src/flowNavigation/FlowNavigation.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAgB,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAMnD,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,2FAA2F;IAC3F,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,sIAAsI;IACtI,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,wGAAwG;IACxG,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED,QAAA,MAAM,cAAc,kEAQjB,mBAAmB,sBA0ErB,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -3,7 +3,8 @@ export interface AnimatedLabelProps {
3
3
  activeLabel: number;
4
4
  className?: string;
5
5
  labels: React.ReactNode[];
6
+ 'aria-label': string;
6
7
  }
7
- declare const AnimatedLabel: ({ activeLabel, className, labels }: AnimatedLabelProps) => React.JSX.Element;
8
+ declare const AnimatedLabel: ({ activeLabel, className, labels, "aria-label": ariaLabel, }: AnimatedLabelProps) => React.JSX.Element;
8
9
  export default AnimatedLabel;
9
10
  //# sourceMappingURL=AnimatedLabel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AnimatedLabel.d.ts","sourceRoot":"","sources":["../../../../src/flowNavigation/animatedLabel/AnimatedLabel.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;CAC3B;AAED,QAAA,MAAM,aAAa,uCAAwC,kBAAkB,sBAkB5E,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"AnimatedLabel.d.ts","sourceRoot":"","sources":["../../../../src/flowNavigation/animatedLabel/AnimatedLabel.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,QAAA,MAAM,aAAa,iEAKhB,kBAAkB,sBAwBpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,19 +1,20 @@
1
1
  export default BackButton;
2
- declare function BackButton({ className, onClick, "aria-label": ariaLabel }: {
2
+ declare function BackButton({ label, className, onClick }: {
3
+ label: any;
3
4
  className: any;
4
5
  onClick: any;
5
- "aria-label": any;
6
6
  }): import("react").JSX.Element;
7
7
  declare namespace BackButton {
8
- const propTypes: {
9
- 'aria-label': any;
10
- className: any;
11
- label: any;
12
- onClick: any;
13
- };
8
+ namespace propTypes {
9
+ const className: any;
10
+ const label: any;
11
+ const onClick: any;
12
+ }
14
13
  namespace defaultProps {
15
- const className: undefined;
16
- const label: undefined;
14
+ const className_1: undefined;
15
+ export { className_1 as className };
16
+ const label_1: undefined;
17
+ export { label_1 as label };
17
18
  }
18
19
  }
19
20
  //# sourceMappingURL=BackButton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BackButton.d.ts","sourceRoot":"","sources":["../../../../src/flowNavigation/backButton/BackButton.js"],"names":[],"mappings":";AAMA;;;;gCAWC"}
1
+ {"version":3,"file":"BackButton.d.ts","sourceRoot":"","sources":["../../../../src/flowNavigation/backButton/BackButton.js"],"names":[],"mappings":";AAIA;;;;gCASC"}
@@ -23,6 +23,7 @@ export interface SelectInputProps<T = string> {
23
23
  value?: T;
24
24
  compareValues?: (keyof NonNullable<T> & string) | ((a: T | undefined, b: T | undefined) => boolean);
25
25
  renderValue?: (value: NonNullable<T>, withinTrigger: boolean) => React.ReactNode;
26
+ renderFooter?: (normalizedQuery: string | null | undefined) => React.ReactNode;
26
27
  renderTrigger?: (args: {
27
28
  content: React.ReactNode;
28
29
  placeholderShown: boolean;
@@ -39,7 +40,7 @@ export interface SelectInputProps<T = string> {
39
40
  onChange?: (value: T) => void;
40
41
  onClear?: () => void;
41
42
  }
42
- export declare function SelectInput<T = string>({ name, placeholder, items, defaultValue, value: controlledValue, compareValues, renderValue, renderTrigger, filterable, filterPlaceholder, disabled, size, className, onChange, onClear, }: SelectInputProps<T>): import("react").JSX.Element;
43
+ export declare function SelectInput<T = string>({ name, placeholder, items, defaultValue, value: controlledValue, compareValues, renderValue, renderFooter, renderTrigger, filterable, filterPlaceholder, disabled, size, className, onChange, onClear, }: SelectInputProps<T>): import("react").JSX.Element;
43
44
  type SelectInputTriggerButtonElementType = 'button' | React.ComponentType;
44
45
  export type SelectInputTriggerButtonProps<T extends SelectInputTriggerButtonElementType = 'button'> = Merge<React.ComponentPropsWithoutRef<T>, {
45
46
  as?: T;
@@ -1 +1 @@
1
- {"version":3,"file":"SelectInput.d.ts","sourceRoot":"","sources":["../../../src/inputs/SelectInput.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SelectInput.d.ts","sourceRoot":"","sources":["../../../src/inputs/SelectInput.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"OverlayHeader.d.ts","sourceRoot":"","sources":["../../../src/overlayHeader/OverlayHeader.js"],"names":[],"mappings":";AAQA;;;;gCAiBC"}
1
+ {"version":3,"file":"OverlayHeader.d.ts","sourceRoot":"","sources":["../../../src/overlayHeader/OverlayHeader.js"],"names":[],"mappings":";AAMA;;;;gCAiBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@transferwise/components",
3
- "version": "0.0.0-experimental-a087360",
3
+ "version": "0.0.0-experimental-73ab65e",
4
4
  "description": "Neptune React components",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -32,13 +32,31 @@ const FlowHeader = React.forwardRef(
32
32
  'd-flex',
33
33
  'flex-wrap',
34
34
  'align-items-center',
35
- 'justify-content-between',
36
- 'flex__item--12',
37
35
  className,
38
36
  )}
39
37
  >
40
- {leftContent}
41
- {rightContent}
38
+ <div
39
+ className={classNames('np-flow-header__left', {
40
+ 'flex__item--8': isVertical,
41
+ })}
42
+ >
43
+ {leftContent}
44
+ </div>
45
+
46
+ <div
47
+ className={classNames(
48
+ 'align-items-center',
49
+ 'd-flex',
50
+ 'np-flow-header__right',
51
+ 'justify-content-end',
52
+ {
53
+ 'flex__item--4 ': isVertical,
54
+ 'order-2': !isVertical,
55
+ },
56
+ )}
57
+ >
58
+ {rightContent}
59
+ </div>
42
60
  <div
43
61
  className={classNames('align-items-center', 'd-flex', 'justify-content-center', {
44
62
  'flex__item--12': isVertical,
@@ -3,10 +3,18 @@
3
3
  exports[`FlowHeader renders as expected 1`] = `
4
4
  <div>
5
5
  <div
6
- class="np-flow-header d-flex flex-wrap align-items-center justify-content-between flex__item--12 className"
6
+ class="np-flow-header d-flex flex-wrap align-items-center className"
7
7
  >
8
- leftContent
9
- rightContent
8
+ <div
9
+ class="np-flow-header__left"
10
+ >
11
+ leftContent
12
+ </div>
13
+ <div
14
+ class="align-items-center d-flex np-flow-header__right justify-content-end order-2"
15
+ >
16
+ rightContent
17
+ </div>
10
18
  <div
11
19
  class="align-items-center d-flex justify-content-center order-1 flex-grow-1"
12
20
  >
@@ -19,10 +27,18 @@ exports[`FlowHeader renders as expected 1`] = `
19
27
  exports[`FlowHeader renders as expected with vertical layout 1`] = `
20
28
  <div>
21
29
  <div
22
- class="np-flow-header d-flex flex-wrap align-items-center justify-content-between flex__item--12 className"
30
+ class="np-flow-header d-flex flex-wrap align-items-center className"
23
31
  >
24
- leftContent
25
- rightContent
32
+ <div
33
+ class="np-flow-header__left flex__item--8"
34
+ >
35
+ leftContent
36
+ </div>
37
+ <div
38
+ class="align-items-center d-flex np-flow-header__right justify-content-end flex__item--4 "
39
+ >
40
+ rightContent
41
+ </div>
26
42
  <div
27
43
  class="align-items-center d-flex justify-content-center flex__item--12"
28
44
  >
@@ -1 +1 @@
1
- .np-flow-navigation{min-height:97px;width:100%}.np-flow-navigation--border-bottom{border-bottom:1px solid #0000001a;border-bottom:1px solid var(--color-border-neutral);min-height:96px}.np-flow-navigation__content{max-width:1164px;min-width:320px;width:100%}.np-flow-navigation__stepper{padding-bottom:0!important}[dir=rtl] .np-flow-navigation__stepper{padding-right:0!important}[dir=rtl] .np-flow-navigation__stepper,html:not([dir=rtl]) .np-flow-navigation__stepper{padding-left:0!important}html:not([dir=rtl]) .np-flow-navigation__stepper{padding-right:0!important}.np-flow-navigation--xs-max .np-flow-navigation__stepper .tw-stepper-steps{display:none}.np-flow-navigation--xs-max .np-flow-navigation__stepper .progress{margin-bottom:0}.np-flow-navigation--xs-max .np-animated-label{height:auto}.np-flow-navigation--sm .np-flow-navigation__stepper{min-height:56px}[dir=rtl] .np-flow-navigation--sm .np-flow-navigation__stepper{padding-right:24px!important;padding-right:var(--size-24)!important}[dir=rtl] .np-flow-navigation--sm .np-flow-navigation__stepper,html:not([dir=rtl]) .np-flow-navigation--sm .np-flow-navigation__stepper{padding-left:24px!important;padding-left:var(--size-24)!important}html:not([dir=rtl]) .np-flow-navigation--sm .np-flow-navigation__stepper{padding-right:24px!important;padding-right:var(--size-24)!important}.np-flow-navigation--lg .np-flow-navigation__stepper{max-width:562px}.np-flow-navigation--lg .np-flow-header__left,.np-flow-navigation--lg .np-flow-header__right{width:180px}.np-flow-navigation--hidden{visibility:hidden}.np-theme-personal--bright-green .np-flow-navigation .np-flow-header__left path,.np-theme-personal--dark .np-flow-navigation .np-flow-header__left path,.np-theme-personal--forest-green .np-flow-navigation .np-flow-header__left path{fill:var(--color-interactive-primary)}
1
+ .np-flow-navigation{min-height:97px;width:100%}.np-flow-navigation--border-bottom{border-bottom:1px solid #0000001a;border-bottom:1px solid var(--color-border-neutral);min-height:96px}.np-flow-navigation__content{max-width:1164px;min-width:320px;width:100%}.np-flow-navigation__stepper{padding-bottom:0!important}[dir=rtl] .np-flow-navigation__stepper{padding-right:0!important}[dir=rtl] .np-flow-navigation__stepper,html:not([dir=rtl]) .np-flow-navigation__stepper{padding-left:0!important}html:not([dir=rtl]) .np-flow-navigation__stepper{padding-right:0!important}.np-flow-navigation--xs-max .np-flow-navigation__stepper .tw-stepper-steps{display:none}.np-flow-navigation--xs-max .np-flow-navigation__stepper .progress{margin-bottom:0}.np-flow-navigation--xs-max .np-animated-label{height:auto}.np-flow-navigation--sm .np-flow-navigation__stepper{min-height:56px}[dir=rtl] .np-flow-navigation--sm .np-flow-navigation__stepper{padding-right:24px!important;padding-right:var(--size-24)!important}[dir=rtl] .np-flow-navigation--sm .np-flow-navigation__stepper,html:not([dir=rtl]) .np-flow-navigation--sm .np-flow-navigation__stepper{padding-left:24px!important;padding-left:var(--size-24)!important}html:not([dir=rtl]) .np-flow-navigation--sm .np-flow-navigation__stepper{padding-right:24px!important;padding-right:var(--size-24)!important}.np-flow-navigation--lg .np-flow-navigation__stepper{max-width:562px}.np-flow-navigation--lg .np-flow-header__left,.np-flow-navigation--lg .np-flow-header__right{width:180px}.np-flow-navigation .separator{background-color:#0000001a;background-color:var(--color-border-neutral);height:32px;height:var(--size-32);min-width:1px;width:1px}[dir=rtl] .np-flow-navigation .separator{margin-right:16px!important;margin-right:var(--size-16)!important}[dir=rtl] .np-flow-navigation .separator,html:not([dir=rtl]) .np-flow-navigation .separator{margin-left:16px!important;margin-left:var(--size-16)!important}html:not([dir=rtl]) .np-flow-navigation .separator{margin-right:16px!important;margin-right:var(--size-16)!important}.np-flow-navigation--hidden{visibility:hidden}.np-theme-personal--bright-green .np-flow-navigation .np-flow-header__left path,.np-theme-personal--dark .np-flow-navigation .np-flow-header__left path,.np-theme-personal--forest-green .np-flow-navigation .np-flow-header__left path{fill:var(--color-interactive-primary)}
@@ -57,6 +57,15 @@
57
57
  }
58
58
  }
59
59
 
60
+ .separator {
61
+ .m-x-2;
62
+
63
+ height: var(--size-32);
64
+ width: 1px;
65
+ min-width: 1px;
66
+ background-color: var(--color-border-neutral);
67
+ }
68
+
60
69
  &--hidden {
61
70
  visibility: hidden;
62
71
  }
@@ -73,7 +73,7 @@ describe('FlowNavigation', () => {
73
73
  it(`renders separator if avatar and onClose are provided`, () => {
74
74
  const { container } = render(<FlowNavigation {...props} />);
75
75
 
76
- expect(container.querySelector('span.m-x-1')).toBeInTheDocument();
76
+ expect(container.querySelector('.separator')).toBeInTheDocument();
77
77
  });
78
78
 
79
79
  it(`doesn't render separator if avatar or onClose are not provided`, () => {
@@ -194,11 +194,11 @@ describe('FlowNavigation', () => {
194
194
  <FlowNavigation {...props} activeStep={1} onGoBack={jest.fn()} />,
195
195
  );
196
196
 
197
- expect(screen.getByTestId('activeLabel-1')).toBeInTheDocument();
197
+ expect(screen.getByTestId('activeLabel-0')).toBeInTheDocument();
198
198
 
199
199
  rerender(<FlowNavigation {...props} activeStep={2} onGoBack={jest.fn()} />);
200
200
 
201
- expect(screen.getByTestId('activeLabel-2')).toBeInTheDocument();
201
+ expect(screen.getByTestId('activeLabel-1')).toBeInTheDocument();
202
202
  });
203
203
  });
204
204
  const logoFull = () => screen.getByAltText(`logo`);
@@ -1,13 +1,12 @@
1
1
  import { boolean, select, text } from '@storybook/addon-knobs';
2
2
  import { Person as ProfileIcon, Briefcase as BriefcaseIcon } from '@transferwise/icons';
3
+ import { Illustration } from '@wise/art';
3
4
  import { useState } from 'react';
4
5
 
5
6
  import Avatar, { AvatarType } from '../avatar';
6
7
  import AvatarWrapper from '../avatarWrapper';
7
- import Body from '../body';
8
- import Button from '../button';
9
8
  import { ProfileType, Size } from '../common';
10
- import Logo from '../logo';
9
+ import Logo, { LogoType } from '../logo';
11
10
  import OverlayHeader from '../overlayHeader';
12
11
 
13
12
  import FlowNavigation from './FlowNavigation';
@@ -22,18 +21,13 @@ const avatarProfiles = {
22
21
  Profile: <ProfileIcon />,
23
22
  };
24
23
 
25
- export const Varients = () => {
24
+ export const WithAvatarIcon = () => {
26
25
  const [activeStep, setActiveStep] = useState(4);
27
26
  const [closed, setClosed] = useState(false);
28
27
  const showAvatar = select('avatar', Object.keys(avatarProfiles), 'Profile');
29
28
  const showCloseButton = boolean('show closeButton', true);
30
29
  const showMobileBackButton = boolean('show mobile backButton', true);
31
30
  const done = boolean('done', false);
32
- const profileType = select('profileType', Object.keys(ProfileType));
33
- const avatarURL = text(
34
- 'avatarURL',
35
- 'https://wise.design/api/images/Logo-LogoFastFlagAvatar.webp',
36
- );
37
31
 
38
32
  return !closed ? (
39
33
  <>
@@ -88,8 +82,16 @@ export const Varients = () => {
88
82
  />
89
83
 
90
84
  <FlowNavigation
91
- done={done}
85
+ avatar={
86
+ !showAvatar ? null : (
87
+ <Avatar type={AvatarType.ICON} size={Size.MEDIUM}>
88
+ {avatarProfiles[showAvatar]}
89
+ </Avatar>
90
+ )
91
+ }
92
+ logo={<Logo type={LogoType.WISE_BUSINESS} />}
92
93
  activeStep={activeStep}
94
+ done={done}
93
95
  steps={[
94
96
  {
95
97
  label: 'Amount',
@@ -125,14 +127,15 @@ export const Varients = () => {
125
127
  ]}
126
128
  onClose={showCloseButton && (() => setClosed(true))}
127
129
  onGoBack={
128
- showMobileBackButton && (() => setActiveStep(activeStep - 1 > 0 ? activeStep - 1 : 0))
130
+ showMobileBackButton && (() => setActiveStep(activeStep > 0 ? activeStep - 1 : 0))
129
131
  }
130
132
  />
131
133
 
132
134
  <FlowNavigation
133
- done={done}
134
- avatar={<AvatarWrapper url={avatarURL} profileType={profileType} />}
135
+ avatar={false}
136
+ logo={<Logo />}
135
137
  activeStep={activeStep}
138
+ done={done}
136
139
  steps={[
137
140
  {
138
141
  label: 'Amount',
@@ -168,23 +171,187 @@ export const Varients = () => {
168
171
  ]}
169
172
  onClose={showCloseButton && (() => setClosed(true))}
170
173
  onGoBack={
171
- showMobileBackButton && (() => setActiveStep(activeStep - 1 > 0 ? activeStep - 1 : 0))
174
+ showMobileBackButton && (() => setActiveStep(activeStep > 0 ? activeStep - 1 : 0))
172
175
  }
173
176
  />
174
177
 
175
- <Body className="text-xs-center m-a-3">Content to test that the flow nav is centred</Body>
176
-
177
- <Button
178
- className="m-t-2"
179
- disabled={activeStep === 4}
180
- onClick={() => setActiveStep(activeStep + 1)}
178
+ <FlowNavigation
179
+ avatar={false}
180
+ logo={<Logo type={LogoType.WISE_BUSINESS} />}
181
+ activeStep={activeStep}
182
+ done={done}
183
+ steps={[
184
+ {
185
+ label: 'Amount',
186
+ hoverLabel: (
187
+ <>
188
+ <div>
189
+ <strong>100 GBP</strong>
190
+ </div>
191
+ 0.2351 ETH
192
+ </>
193
+ ),
194
+ onClick: () => setActiveStep(0),
195
+ },
196
+ {
197
+ label: 'You',
198
+ hoverLabel: (
199
+ <>
200
+ <div>
201
+ <strong>Elena Durante</strong>
202
+ </div>
203
+ elenadurante@test.com
204
+ </>
205
+ ),
206
+ onClick: () => setActiveStep(1),
207
+ },
208
+ { label: 'Recipient', hoverLabel: 'Daniele Tomboro', onClick: () => setActiveStep(2) },
209
+ { label: 'Review', hoverLabel: 'Antonio Dozortevo', onClick: () => setActiveStep(3) },
210
+ {
211
+ label: 'Pay',
212
+ hoverLabel: 'Enrico Gusso II',
213
+ onClick: () => setActiveStep(4),
214
+ },
215
+ ]}
216
+ onClose={showCloseButton && (() => setClosed(true))}
217
+ onGoBack={
218
+ showMobileBackButton && (() => setActiveStep(activeStep > 0 ? activeStep - 1 : 0))
219
+ }
220
+ />
221
+ <div
222
+ className="bg--dark"
223
+ style={{
224
+ textAlign: 'center',
225
+ width: '538px',
226
+ height: '30px',
227
+ margin: '24px auto',
228
+ color: 'white',
229
+ }}
181
230
  >
182
- Next Step
183
- </Button>
231
+ Content to test that the flow nav is centred
232
+ </div>
184
233
  </>
185
234
  ) : null;
186
235
  };
187
236
 
237
+ export const WithCustomAvatarImage = () => {
238
+ const [activeStep, setActiveStep] = useState(4);
239
+ const [closed, setClosed] = useState(false);
240
+ const showAvatar = boolean('show avatar', true);
241
+ const showCloseButton = boolean('show closeButton', true);
242
+ const showMobileBackButton = boolean('show mobile backButton', true);
243
+ const done = boolean('done', false);
244
+
245
+ return !closed ? (
246
+ <FlowNavigation
247
+ done={done}
248
+ avatar={
249
+ !showAvatar ? null : (
250
+ <Avatar type={AvatarType.THUMBNAIL} size={Size.MEDIUM}>
251
+ <Illustration name="multi-currency" alt="stack of cash and coins" disableMargin />
252
+ </Avatar>
253
+ )
254
+ }
255
+ activeStep={activeStep}
256
+ steps={[
257
+ {
258
+ label: 'Amount',
259
+ hoverLabel: (
260
+ <>
261
+ <div>
262
+ <strong>100 GBP</strong>
263
+ </div>
264
+ 0.2351 ETH
265
+ </>
266
+ ),
267
+ onClick: () => setActiveStep(0),
268
+ },
269
+ {
270
+ label: 'You',
271
+ hoverLabel: (
272
+ <>
273
+ <div>
274
+ <strong>Elena Durante</strong>
275
+ </div>
276
+ elenadurante@test.com
277
+ </>
278
+ ),
279
+ onClick: () => setActiveStep(1),
280
+ },
281
+ { label: 'Recipient', hoverLabel: 'Daniele Tomboro', onClick: () => setActiveStep(2) },
282
+ { label: 'Review', hoverLabel: 'Antonio Dozortevo', onClick: () => setActiveStep(3) },
283
+ {
284
+ label: 'Pay',
285
+ hoverLabel: 'Enrico Gusso II',
286
+ onClick: () => setActiveStep(4),
287
+ },
288
+ ]}
289
+ onClose={showCloseButton && (() => setClosed(true))}
290
+ onGoBack={
291
+ showMobileBackButton && (() => setActiveStep(activeStep - 1 > 0 ? activeStep - 1 : 0))
292
+ }
293
+ />
294
+ ) : null;
295
+ };
296
+
297
+ export const WithAvatarWrapper = () => {
298
+ const [activeStep, setActiveStep] = useState(4);
299
+ const [closed, setClosed] = useState(false);
300
+ const profileType = select('profileType', Object.keys(ProfileType));
301
+ const showCloseButton = boolean('show closeButton', true);
302
+ const showMobileBackButton = boolean('show mobile backButton', true);
303
+ const avatarURL = text(
304
+ 'avatarURL',
305
+ 'https://wise.design/api/images/Logo-LogoFastFlagAvatar.webp',
306
+ );
307
+ const done = boolean('done', false);
308
+
309
+ return !closed ? (
310
+ <FlowNavigation
311
+ done={done}
312
+ avatar={<AvatarWrapper url={avatarURL} profileType={profileType} />}
313
+ activeStep={activeStep}
314
+ steps={[
315
+ {
316
+ label: 'Amount',
317
+ hoverLabel: (
318
+ <>
319
+ <div>
320
+ <strong>100 GBP</strong>
321
+ </div>
322
+ 0.2351 ETH
323
+ </>
324
+ ),
325
+ onClick: () => setActiveStep(0),
326
+ },
327
+ {
328
+ label: 'You',
329
+ hoverLabel: (
330
+ <>
331
+ <div>
332
+ <strong>Elena Durante</strong>
333
+ </div>
334
+ elenadurante@test.com
335
+ </>
336
+ ),
337
+ onClick: () => setActiveStep(1),
338
+ },
339
+ { label: 'Recipient', hoverLabel: 'Daniele Tomboro', onClick: () => setActiveStep(2) },
340
+ { label: 'Review', hoverLabel: 'Antonio Dozortevo', onClick: () => setActiveStep(3) },
341
+ {
342
+ label: 'Pay',
343
+ hoverLabel: 'Enrico Gusso II',
344
+ onClick: () => setActiveStep(4),
345
+ },
346
+ ]}
347
+ onClose={showCloseButton && (() => setClosed(true))}
348
+ onGoBack={
349
+ showMobileBackButton && (() => setActiveStep(activeStep - 1 > 0 ? activeStep - 1 : 0))
350
+ }
351
+ />
352
+ ) : null;
353
+ };
354
+
188
355
  export const WithOverlayHeaderComparison = () => {
189
356
  const [activeStep, setActiveStep] = useState(4);
190
357
  const [closed, setClosed] = useState(false);
@@ -42,11 +42,31 @@ const FlowNavigation = ({
42
42
  const [clientWidth] = useClientWidth({ ref: reference });
43
43
  const closeButton = onClose != null && <CloseButton size="lg" onClick={onClose} />;
44
44
  const isSmall = clientWidth != null && clientWidth < Breakpoint.SMALL;
45
- const isLarge = clientWidth != null && clientWidth >= Breakpoint.LARGE;
46
45
 
47
46
  const newAvatar = done ? null : avatar;
48
47
 
49
- const displayGoBack = onGoBack != null && activeStep > 0;
48
+ const getLeftContentSmall = () => {
49
+ const displayGoBack = onGoBack != null && activeStep > 0;
50
+ return (
51
+ <>
52
+ {displayGoBack ? (
53
+ <BackButton
54
+ label={
55
+ <AnimatedLabel
56
+ className="m-x-1"
57
+ labels={steps.map((step) => step.label)}
58
+ activeLabel={activeStep - 1}
59
+ aria-label={intl.formatMessage(messages.back)}
60
+ />
61
+ }
62
+ onClick={onGoBack}
63
+ />
64
+ ) : (
65
+ logo
66
+ )}
67
+ </>
68
+ );
69
+ };
50
70
 
51
71
  return (
52
72
  <div
@@ -62,30 +82,15 @@ const FlowNavigation = ({
62
82
  'np-flow-navigation--xs-max': isSmall,
63
83
  // Size switches on parent container which may or may not have the same size as the window.
64
84
  'np-flow-navigation--sm': clientWidth != null && clientWidth >= Breakpoint.SMALL,
65
- 'np-flow-navigation--lg': isLarge,
85
+ 'np-flow-navigation--lg': clientWidth != null && clientWidth >= Breakpoint.LARGE,
66
86
  })}
67
- leftContent={
68
- <>
69
- {isSmall && displayGoBack ? (
70
- <BackButton aria-label={intl.formatMessage(messages.back)} onClick={onGoBack} />
71
- ) : (
72
- logo
73
- )}
74
- {isSmall && (
75
- <AnimatedLabel
76
- className="m-x-1"
77
- labels={steps.map((step) => step.label)}
78
- activeLabel={activeStep}
79
- />
80
- )}
81
- </>
82
- }
87
+ leftContent={isSmall ? getLeftContentSmall() : logo}
83
88
  rightContent={
84
- <div className={classNames('d-flex', 'align-items-center', { 'order-2': isLarge })}>
89
+ <>
85
90
  {newAvatar}
86
- {newAvatar && closeButton && <span className="m-x-1" />}
91
+ {newAvatar && closeButton && <span className="separator" />}
87
92
  {closeButton}
88
- </div>
93
+ </>
89
94
  }
90
95
  bottomContent={
91
96
  !done && (