@occmundial/occ-atomic 3.0.0-beta.5 → 3.0.0-beta.51

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 (115) hide show
  1. package/CHANGELOG.md +414 -0
  2. package/build/Avatar/Avatar.js +69 -21
  3. package/build/Avatar/Avatar.test.js +15 -8
  4. package/build/Avatar/AvatarContent/AvatarContent.js +61 -21
  5. package/build/Avatar/AvatarContent/AvatarContent.test.js +4 -18
  6. package/build/Avatar/AvatarContent/__snapshots__/AvatarContent.test.js.snap +75 -15
  7. package/build/Avatar/AvatarContent/styles.js +88 -21
  8. package/build/Avatar/__snapshots__/Avatar.test.js.snap +11 -2
  9. package/build/Avatar/styles.js +18 -7
  10. package/build/Banner/Banner.js +30 -40
  11. package/build/Banner/Banner.test.js +64 -17
  12. package/build/Banner/__snapshots__/Banner.test.js.snap +0 -28
  13. package/build/Banner/index.js +1 -6
  14. package/build/Button/Button.js +1 -1
  15. package/build/Button/Button.test.js +0 -11
  16. package/build/Button/__snapshots__/Button.test.js.snap +54 -60
  17. package/build/Button/styles.js +42 -75
  18. package/build/Checkbox/Checkbox.js +48 -3
  19. package/build/Checkbox/__snapshots__/Checkbox.test.js.snap +81 -49
  20. package/build/Checkbox/styles.js +91 -48
  21. package/build/Fab/__snapshots__/Fab.test.js.snap +2 -2
  22. package/build/Footer/Footer.js +63 -84
  23. package/build/Footer/List/List.js +89 -124
  24. package/build/Footer/List/styles.js +85 -31
  25. package/build/Footer/__snapshots__/Footer.test.js.snap +113 -57
  26. package/build/Footer/styles.js +119 -53
  27. package/build/Grid/Col/__snapshots__/Col.test.js.snap +16 -2
  28. package/build/Grid/Col/styles.js +12 -6
  29. package/build/Grid/Row/__snapshots__/Row.test.js.snap +18 -2
  30. package/build/Grid/Row/styles.js +15 -5
  31. package/build/Grid/styles.js +26 -9
  32. package/build/Modal/Modal.js +94 -66
  33. package/build/Modal/Modal.test.js +14 -7
  34. package/build/Modal/__snapshots__/Modal.test.js.snap +155 -100
  35. package/build/Modal/styles.js +165 -143
  36. package/build/Pager/Page/Page.js +8 -5
  37. package/build/Pager/Page/Page.test.js +13 -9
  38. package/build/Pager/Page/__snapshots__/Page.test.js.snap +34 -10
  39. package/build/Pager/Page/styles.js +48 -14
  40. package/build/Pager/Pager.js +139 -235
  41. package/build/Pager/Pager.test.js +81 -36
  42. package/build/Pager/__snapshots__/Pager.test.js.snap +3 -36
  43. package/build/Pager/styles.js +5 -40
  44. package/build/Pill/Choice/Choice.js +6 -4
  45. package/build/Pill/Choice/styles.js +13 -10
  46. package/build/Pill/Group/styles.js +5 -5
  47. package/build/Pill/Stack/Stack.js +2 -2
  48. package/build/Pill/Stack/styles.js +5 -8
  49. package/build/Placeholder/Placeholder.js +29 -12
  50. package/build/Placeholder/Placeholder.test.js +4 -4
  51. package/build/Placeholder/__snapshots__/Placeholder.test.js.snap +81 -38
  52. package/build/Placeholder/styles.js +86 -42
  53. package/build/Provider/usePrevious.js +1 -1
  54. package/build/Radio/Radio.js +42 -6
  55. package/build/Radio/__snapshots__/Radio.test.js.snap +81 -80
  56. package/build/Radio/styles.js +93 -85
  57. package/build/SlideDown/SlideDown.js +162 -169
  58. package/build/SlideDown/SlideDown.test.js +49 -44
  59. package/build/SlideDown/__snapshots__/SlideDown.test.js.snap +45 -13
  60. package/build/SlideDown/styles.js +52 -18
  61. package/build/SlideToggle/SlideToggle.js +38 -6
  62. package/build/SlideToggle/SlideToggle.test.js +2 -2
  63. package/build/SlideToggle/__snapshots__/SlideToggle.test.js.snap +53 -37
  64. package/build/SlideToggle/styles.js +64 -45
  65. package/build/Tabs/Tab/Tab.js +73 -0
  66. package/build/Tabs/Tab/index.js +34 -0
  67. package/build/Tabs/Tab/index.test.js +132 -0
  68. package/build/Tabs/Tab/styles.js +74 -0
  69. package/build/Tabs/TabContent/TabContent.js +76 -0
  70. package/build/Tabs/TabContent/index.js +34 -0
  71. package/build/Tabs/TabContent/index.test.js +68 -0
  72. package/build/Tabs/TabContent/styles.js +23 -0
  73. package/build/Tabs/TabIndicator/TabIndicator.js +158 -0
  74. package/build/Tabs/TabIndicator/index.js +34 -0
  75. package/build/Tabs/TabIndicator/styles.js +24 -0
  76. package/build/Tabs/TabList/TabList.js +108 -0
  77. package/build/Tabs/TabList/index.js +34 -0
  78. package/build/{Pager/Break → Tabs/TabList}/styles.js +3 -2
  79. package/build/Tabs/Tabs.js +74 -0
  80. package/build/Tabs/context.js +94 -0
  81. package/build/Tabs/index.js +34 -0
  82. package/build/Tabs/index.test.js +157 -0
  83. package/build/Tabs/styles.js +19 -0
  84. package/build/Tag/Tag.js +2 -2
  85. package/build/Tag/__snapshots__/Tag.test.js.snap +40 -43
  86. package/build/Tag/styles.js +76 -82
  87. package/build/Text/Text.js +6 -3
  88. package/build/TextField/TextField.js +7 -6
  89. package/build/TextField/__snapshots__/TextField.test.js.snap +3 -0
  90. package/build/TextField/styles.js +3 -0
  91. package/build/Tip/Tip.js +62 -95
  92. package/build/Tip/Tip.test.js +29 -6
  93. package/build/Tip/TipText/index.js +32 -0
  94. package/build/Tip/__snapshots__/Tip.test.js.snap +127 -15
  95. package/build/Tip/styles.js +125 -31
  96. package/build/Toaster/Toast/Toast.js +76 -64
  97. package/build/Toaster/Toast/styles.js +118 -46
  98. package/build/Toaster/Toaster.js +3 -2
  99. package/build/Toaster/Toaster.test.js +5 -2
  100. package/build/Toaster/__snapshots__/Toaster.test.js.snap +1 -1
  101. package/build/Toaster/functions.js +4 -0
  102. package/build/Toaster/styles.js +3 -3
  103. package/build/Tooltip/Tooltip.js +73 -22
  104. package/build/Tooltip/__snapshots__/Tooltip.test.js.snap +22 -6
  105. package/build/Tooltip/styles.js +32 -10
  106. package/build/index.js +14 -1
  107. package/build/subatomic/grid.js +5 -5
  108. package/build/tokens/colors.json +35 -3
  109. package/package.json +4 -1
  110. package/build/Banner/styles.js +0 -41
  111. package/build/Pager/Break/Break.js +0 -27
  112. package/build/Pager/Break/Break.test.js +0 -53
  113. package/build/Pager/Break/__snapshots__/Break.test.js.snap +0 -13
  114. package/build/Pager/Break/index.js +0 -18
  115. /package/build/Button/{Loading.js → Loading/index.js} +0 -0
@@ -5,68 +5,103 @@ exports[`Checkbox matches the snapshot 1`] = `ShallowWrapper {}`;
5
5
  exports[`Checkbox styles matches the snapshot 1`] = `
6
6
  Object {
7
7
  "active": Object {
8
- "& $check:after": Object {
9
- "background": Array [
10
- "url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJCQkgdmlld0JveD0iMCAwIDI0IDI0IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyNCAyNDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgoJCTxwYXRoIGZpbGw9IiMwODNjYWUiIGQ9Ik0xOC4zLDcuM2wxLjQsMS40bC04LjcsOWMtMC40LDAuNC0xLDAuNC0xLjQsMC4xbC00LjMtMy42bDEuMy0xLjVsMy42LDNDMTAuMiwxNS42LDE4LjMsNy4zLDE4LjMsNy4zeiIvPgoJCTwvc3ZnPg==)",
11
- "!important",
12
- ],
8
+ "& $check $box": Object {
9
+ "background": "#0059CD",
10
+ "boxShadow": "inset 0 0 0 1px rgba(255,255,255,0.2)",
13
11
  },
14
12
  },
13
+ "alignLeft": Object {
14
+ "flex": "none",
15
+ },
16
+ "box": Object {
17
+ "background": "#fff",
18
+ "borderRadius": "4px",
19
+ "boxShadow": "inset 0 0 0 1px #D3D4DC",
20
+ "gridColumnStart": 1,
21
+ "gridRowStart": 1,
22
+ "height": 20,
23
+ "transition": "all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s",
24
+ "width": 20,
25
+ },
15
26
  "check": Object {
16
- "&:after": Object {
17
- "background": "transparent",
18
- "content": "\\"\\"",
19
- "height": 18,
20
- "left": "50%",
21
- "marginTop": -1,
22
- "position": "absolute",
23
- "top": "50%",
24
- "transform": "translate(-50%, -50%)",
25
- "transition": "0.3s all",
26
- "width": 18,
27
- },
28
- "&:before": Object {
29
- "background": "#ffffff",
30
- "border": "1px solid #dddddd",
31
- "borderRadius": 4,
32
- "content": "\\"\\"",
33
- "height": 16,
34
- "left": "50%",
35
- "position": "absolute",
36
- "top": "50%",
37
- "transform": "translate(-50%, -50%)",
38
- "width": 16,
39
- },
40
- "height": 24,
41
- "position": "relative",
42
- "width": 24,
27
+ "alignItems": "center",
28
+ "borderRadius": "4px",
29
+ "display": "grid",
30
+ "height": 20,
31
+ "justifyContent": "center",
32
+ "transition": "all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s",
33
+ "width": 20,
34
+ },
35
+ "checkWrap": Object {
36
+ "alignItems": "center",
37
+ "display": "flex",
38
+ "flexShrink": 0,
39
+ "height": 48,
40
+ "justifyContent": "center",
41
+ "width": 52,
43
42
  },
44
43
  "cont": Object {
44
+ "&$active, &$undetermined": Object {
45
+ "&:active $check $box": Object {
46
+ "background": "#083CAE",
47
+ "boxShadow": "inset 0 0 0 2px rgba(255,255,255,0.2)",
48
+ },
49
+ "&:hover $check $box": Object {
50
+ "background": "#083CAE",
51
+ "boxShadow": "inset 0 0 0 1px rgba(255,255,255,0.2)",
52
+ },
53
+ },
54
+ "&:active $check $box": Object {
55
+ "boxShadow": "inset 0 0 0 2px #6C6F89",
56
+ },
45
57
  "&:after": Object {
46
58
  "clear": "both",
47
59
  "content": "\\"\\"",
48
60
  "display": "table",
49
61
  },
50
- "&:hover $check:after": Object {
51
- "background": "url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJCQkgdmlld0JveD0iMCAwIDI0IDI0IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyNCAyNDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgoJCTxwYXRoIGZpbGw9IiNkZGRkZGQiIGQ9Ik0xOC4zLDcuM2wxLjQsMS40bC04LjcsOWMtMC40LDAuNC0xLDAuNC0xLjQsMC4xbC00LjMtMy42bDEuMy0xLjVsMy42LDNDMTAuMiwxNS42LDE4LjMsNy4zLDE4LjMsNy4zeiIvPgoJCTwvc3ZnPg==)",
62
+ "&:focus-visible $check": Object {
63
+ "boxShadow": "0 0 0 8px rgba(0,110,255,0.3)",
64
+ },
65
+ "&:hover $check $box": Object {
66
+ "boxShadow": "inset 0 0 0 1px #6C6F89",
52
67
  },
53
- "alignItems": "start",
68
+ "alignItems": "flex-start",
54
69
  "boxSizing": "border-box",
55
70
  "cursor": "pointer",
56
71
  "display": "flex",
57
72
  "outline": "0",
58
- "paddingBottom": 8,
59
- "paddingTop": 8,
60
73
  },
61
74
  "disabled": Object {
62
- "opacity": 0.4,
75
+ "& $check $box": Object {
76
+ "background": "#EDEDF1",
77
+ "boxShadow": "inset 0 0 0 1px #D3D4DC",
78
+ },
79
+ "&$active, &$undetermined": Object {
80
+ "& $check $box": Object {
81
+ "background": "hsl(221 91.2% 35.7% / 0.1)",
82
+ "boxShadow": "inset 0 0 0 1px rgba(255,255,255,0.2)",
83
+ },
84
+ },
63
85
  "pointerEvents": "none",
64
86
  },
87
+ "icon": Object {
88
+ "gridColumnStart": 1,
89
+ "gridRowStart": 1,
90
+ "margin": 2,
91
+ },
65
92
  "label": Object {
66
93
  "cursor": "pointer",
67
- "flex": "1",
68
- "float": "left",
69
- "marginLeft": 8,
94
+ "flex": 1,
95
+ "marginLeft": "12px",
96
+ },
97
+ "labelWrap": Object {
98
+ "alignItems": "center",
99
+ "display": "flex",
100
+ "flex": 1,
101
+ "minHeight": 48,
102
+ "overflow": "hidden",
103
+ "paddingBottom": "4px",
104
+ "paddingTop": "4px",
70
105
  },
71
106
  "overflow": Object {
72
107
  "overflow": "hidden",
@@ -74,16 +109,13 @@ Object {
74
109
  "whiteSpace": "nowrap",
75
110
  },
76
111
  "right": Object {
77
- "float": "right",
78
- "marginLeft": 8,
112
+ "marginLeft": "8px",
113
+ "pointerEvents": "none",
79
114
  },
80
115
  "undetermined": Object {
81
- "& $check:after": Object {
82
- "background": Array [
83
- "url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgogICAgICAgICAgICB2aWV3Qm94PSIwIDAgMjQgMjQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDI0IDI0OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CiAgICAgICAgPHBvbHlnb24gcG9pbnRzPSI1LjMsMTMuMyA1LjMsMTAuNyAxOC43LDEwLjcgMTguNywxMy4zICIgZmlsbD0iIzA4M2NhZSIgLz4KICAgICAgICA8L3N2Zz4=)",
84
- "!important",
85
- ],
86
- "marginTop": 0,
116
+ "& $check $box": Object {
117
+ "background": "#0059CD",
118
+ "boxShadow": "inset 0 0 0 1px rgba(255,255,255,0.2)",
87
119
  },
88
120
  },
89
121
  }
@@ -5,23 +5,26 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports["default"] = void 0;
7
7
 
8
- var _colors = _interopRequireDefault(require("../subatomic/colors"));
8
+ var _spacing = _interopRequireDefault(require("../tokens/spacing.json"));
9
9
 
10
- var _spacing = _interopRequireDefault(require("../subatomic/spacing"));
10
+ var _shadows = _interopRequireDefault(require("../tokens/shadows.json"));
11
11
 
12
- var _icons = _interopRequireDefault(require("../subatomic/icons"));
12
+ var _colors = _interopRequireDefault(require("../tokens/colors.json"));
13
13
 
14
- var _iconSizes = _interopRequireDefault(require("../subatomic/iconSizes"));
14
+ var _borderRadius = _interopRequireDefault(require("../tokens/borderRadius.json"));
15
15
 
16
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
17
 
18
+ var checkbox = _colors["default"].checkbox;
19
+ var transition = 'all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s';
20
+ var contentHeight = 48;
21
+ var checkboxWidth = 52;
22
+ var checkSize = 20;
18
23
  var _default = {
19
24
  cont: {
20
- paddingTop: _spacing["default"].tiny,
21
- paddingBottom: _spacing["default"].tiny,
22
25
  boxSizing: 'border-box',
23
26
  display: 'flex',
24
- alignItems: 'start',
27
+ alignItems: 'flex-start',
25
28
  cursor: 'pointer',
26
29
  outline: '0',
27
30
  '&:after': {
@@ -29,68 +32,108 @@ var _default = {
29
32
  display: 'table',
30
33
  clear: 'both'
31
34
  },
32
- '&:hover $check:after': {
33
- background: _icons["default"].base(_icons["default"].check.icon([_colors["default"].grey200]))
35
+ '&:focus-visible $check': {
36
+ boxShadow: _shadows["default"]['focus-bright-blue']
37
+ },
38
+ '&:hover $check $box': {
39
+ boxShadow: "inset 0 0 0 1px ".concat(checkbox.unselected.border.hover)
40
+ },
41
+ '&:active $check $box': {
42
+ boxShadow: "inset 0 0 0 2px ".concat(checkbox.unselected.border.hover)
43
+ },
44
+ '&$active, &$undetermined': {
45
+ '&:hover $check $box': {
46
+ boxShadow: "inset 0 0 0 1px ".concat(checkbox.selected.border["default"]),
47
+ background: checkbox.selected.bg.hover
48
+ },
49
+ '&:active $check $box': {
50
+ boxShadow: "inset 0 0 0 2px ".concat(checkbox.selected.border["default"]),
51
+ background: checkbox.selected.bg.hover
52
+ }
34
53
  }
35
54
  },
55
+ checkWrap: {
56
+ width: checkboxWidth,
57
+ height: contentHeight,
58
+ display: 'flex',
59
+ alignItems: 'center',
60
+ justifyContent: 'center',
61
+ flexShrink: 0
62
+ },
36
63
  check: {
37
- width: _spacing["default"].base,
38
- height: _spacing["default"].base,
39
- position: 'relative',
40
- '&:before': {
41
- content: '""',
42
- width: _spacing["default"].small,
43
- height: _spacing["default"].small,
44
- borderRadius: 4,
45
- position: 'absolute',
46
- top: '50%',
47
- left: '50%',
48
- transform: 'translate(-50%, -50%)',
49
- border: "1px solid ".concat(_colors["default"].grey200),
50
- background: _colors["default"].bgWhite
51
- },
52
- '&:after': {
53
- content: '""',
54
- width: _iconSizes["default"].small,
55
- height: _iconSizes["default"].small,
56
- marginTop: -1,
57
- position: 'absolute',
58
- top: '50%',
59
- left: '50%',
60
- transform: 'translate(-50%, -50%)',
61
- transition: '0.3s all',
62
- background: 'transparent'
63
- }
64
+ width: checkSize,
65
+ height: checkSize,
66
+ borderRadius: _borderRadius["default"]['br-xs'],
67
+ transition: transition,
68
+ display: 'grid',
69
+ alignItems: 'center',
70
+ justifyContent: 'center'
71
+ },
72
+ box: {
73
+ width: checkSize,
74
+ height: checkSize,
75
+ borderRadius: _borderRadius["default"]['br-xs'],
76
+ boxShadow: "inset 0 0 0 1px ".concat(checkbox.unselected.border["default"]),
77
+ background: checkbox['unselected']['bg']['default'],
78
+ transition: transition,
79
+ gridRowStart: 1,
80
+ gridColumnStart: 1
81
+ },
82
+ icon: {
83
+ gridRowStart: 1,
84
+ gridColumnStart: 1,
85
+ margin: 2
64
86
  },
65
87
  active: {
66
- '& $check:after': {
67
- background: [_icons["default"].base(_icons["default"].check.icon([_colors["default"].prim])), '!important']
88
+ '& $check $box': {
89
+ boxShadow: "inset 0 0 0 1px ".concat(checkbox.selected.border["default"]),
90
+ background: checkbox.selected.bg["default"]
68
91
  }
69
92
  },
70
93
  undetermined: {
71
- '& $check:after': {
72
- background: [_icons["default"].base(_icons["default"].minus.icon([_colors["default"].prim])), '!important'],
73
- marginTop: 0
94
+ '& $check $box': {
95
+ boxShadow: "inset 0 0 0 1px ".concat(checkbox.selected.border["default"]),
96
+ background: checkbox.selected.bg["default"]
74
97
  }
75
98
  },
76
99
  disabled: {
77
- opacity: 0.4,
78
- pointerEvents: 'none'
100
+ pointerEvents: 'none',
101
+ '& $check $box': {
102
+ boxShadow: "inset 0 0 0 1px ".concat(checkbox.unselected.border["default"]),
103
+ background: checkbox.unselected.bg.disabled
104
+ },
105
+ '&$active, &$undetermined': {
106
+ '& $check $box': {
107
+ boxShadow: "inset 0 0 0 1px ".concat(checkbox.selected.border["default"]),
108
+ background: checkbox.selected.bg.disabled
109
+ }
110
+ }
111
+ },
112
+ labelWrap: {
113
+ minHeight: contentHeight,
114
+ display: 'flex',
115
+ alignItems: 'center',
116
+ paddingTop: _spacing["default"]['size-1'],
117
+ paddingBottom: _spacing["default"]['size-1'],
118
+ overflow: 'hidden',
119
+ flex: 1
79
120
  },
80
121
  label: {
81
- marginLeft: _spacing["default"].tiny,
122
+ marginLeft: _spacing["default"]['size-3'],
82
123
  cursor: 'pointer',
83
- "float": 'left',
84
- flex: '1'
124
+ flex: 1
85
125
  },
86
126
  right: {
87
- marginLeft: _spacing["default"].tiny,
88
- "float": 'right'
127
+ marginLeft: _spacing["default"]['size-2'],
128
+ pointerEvents: 'none'
89
129
  },
90
130
  overflow: {
91
131
  overflow: 'hidden',
92
132
  textOverflow: 'ellipsis',
93
133
  whiteSpace: 'nowrap'
134
+ },
135
+ alignLeft: {
136
+ flex: 'none'
94
137
  }
95
138
  };
96
139
  exports["default"] = _default;
@@ -2,11 +2,11 @@
2
2
 
3
3
  exports[`FAB matches the snapshot 1`] = `
4
4
  <button
5
- className="Button-btn-0-1-28 Button-btn-0-1-1 Button-tertiary-0-1-23 Button-tertiary-0-1-6 fab Button-iconOnly-0-1-38 Button-iconOnly-0-1-18 Button-round-0-1-40 Button-round-0-1-20"
5
+ className="Button-btn-0-1-22 Button-btn-0-1-1 Button-tertiary-0-1-27 Button-tertiary-0-1-6 fab Button-iconOnly-0-1-38 Button-iconOnly-0-1-18 Button-round-0-1-40 Button-round-0-1-20"
6
6
  disabled={false}
7
7
  >
8
8
  <span
9
- className="Button-cont-0-1-29 Button-cont-0-1-2"
9
+ className="Button-cont-0-1-23 Button-cont-0-1-2"
10
10
  >
11
11
  <span
12
12
  className="Icon-oldIcon-0-1-45 Icon-oldIcon-0-1-43 Button-icon-0-1-36 Button-icon-0-1-16"
@@ -1,107 +1,84 @@
1
1
  "use strict";
2
2
 
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports["default"] = void 0;
7
9
 
8
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
9
11
 
10
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
13
 
12
- var _Grid = _interopRequireDefault(require("../Grid"));
13
-
14
- var _WindowSize = _interopRequireDefault(require("../WindowSize"));
15
-
16
- var _Flexbox = _interopRequireDefault(require("../Flexbox"));
17
-
18
- var _grid = _interopRequireDefault(require("../subatomic/grid"));
14
+ var _Grid = _interopRequireDefault(require("./../Grid"));
19
15
 
20
16
  var _List = _interopRequireDefault(require("./List"));
21
17
 
22
- var _Text = _interopRequireDefault(require("../Text"));
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
23
19
 
24
- var _Button = _interopRequireDefault(require("../Button"));
20
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
21
 
26
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
22
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
23
 
28
24
  var itemTypes = {
29
25
  link: 'link',
30
26
  icon: 'icon',
31
27
  custom: 'custom'
32
28
  };
33
- /** Customisable footer component. This component can receive an array of columns. Those columns can contain an array of lists, and those lists can contain a title and and array of items. The items are objects that must define a type (one of 'link,', 'icon' or 'cursom').
34
- It can also receive a copy string, to show the copyright data, and an array of links to show above it.
35
- */
36
29
 
37
30
  var Footer = function Footer(_ref) {
38
- var classes = _ref.classes,
39
- columns = _ref.columns,
40
- winWidth = _ref.winWidth,
41
- bottomLinks = _ref.bottomLinks,
31
+ var _ref$columns = _ref.columns,
32
+ columns = _ref$columns === void 0 ? [] : _ref$columns,
33
+ _ref$bottomLinks = _ref.bottomLinks,
34
+ bottomLinks = _ref$bottomLinks === void 0 ? [] : _ref$bottomLinks,
42
35
  copyText = _ref.copyText,
43
36
  aux = _ref.aux,
44
- bottomItem = _ref.bottomItem,
45
- listClassName = _ref.listClassName;
46
- var text = aux.text,
47
- icon = aux.icon,
48
- href = aux.href,
49
- target = aux.target,
50
- iconRight = aux.iconRight,
51
- auxClassName = aux.className;
52
- var isMobile = winWidth < _grid["default"].sm;
53
- return /*#__PURE__*/_react["default"].createElement("div", {
54
- className: columns.length > 0 ? classes.footer : classes.footerWithoutColumns
37
+ listClassName = _ref.listClassName,
38
+ isFluid = _ref.isFluid,
39
+ topElement = _ref.topElement,
40
+ bottomLinksClassName = _ref.bottomLinksClassName,
41
+ sectionDivider = _ref.sectionDivider,
42
+ classes = _ref.classes;
43
+ return /*#__PURE__*/_react["default"].createElement("footer", {
44
+ className: classes.footer
55
45
  }, /*#__PURE__*/_react["default"].createElement(_Grid["default"], {
56
- fluid: winWidth < _grid["default"].xl
57
- }, /*#__PURE__*/_react["default"].createElement(_Grid["default"].Row, null, /*#__PURE__*/_react["default"].createElement(_Flexbox["default"], {
58
- display: "flex",
59
- direction: isMobile ? 'col' : 'row',
46
+ fluid: isFluid,
47
+ className: classes.footerContainer
48
+ }, /*#__PURE__*/(0, _react.isValidElement)(topElement) ? topElement : '', columns.length ? /*#__PURE__*/_react["default"].createElement("section", {
60
49
  className: classes.column
61
50
  }, columns.map(function (column, index) {
62
- return /*#__PURE__*/_react["default"].createElement(_Flexbox["default"], {
51
+ return /*#__PURE__*/_react["default"].createElement("div", {
63
52
  key: index,
64
- flex: "1",
65
- className: !isMobile ? classes.list : ''
53
+ className: classes.listContainer
66
54
  }, column.map(function (list) {
67
55
  return /*#__PURE__*/_react["default"].createElement(_List["default"], {
68
- list: list,
69
- isMobile: isMobile,
70
56
  key: list.key,
57
+ list: list,
71
58
  listClassName: listClassName
72
59
  });
73
60
  }));
74
- })), /*#__PURE__*/_react["default"].createElement("div", {
75
- className: classes.footerBottom
76
- }, /*#__PURE__*/_react["default"].createElement(_Flexbox["default"], {
77
- display: "flex",
78
- alignItems: "start",
79
- className: classes.bottomWrap,
80
- direction: isMobile ? 'col' : 'row'
81
- }, /*#__PURE__*/_react["default"].createElement(_Flexbox["default"], {
82
- flex: "1"
83
- }, aux && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
84
- href: href,
85
- target: target,
86
- icon: icon,
87
- iconRight: iconRight,
88
- size: "md",
89
- theme: "ghostPink",
90
- className: "".concat(isMobile ? classes.buttonMobile : '', " ").concat(auxClassName)
91
- }, text), /*#__PURE__*/_react["default"].createElement(_Text["default"], {
92
- small: true,
93
- mid: true,
94
- bottomTiny: true,
95
- tag: "div"
96
- }, bottomLinks.map(function (item) {
97
- return /*#__PURE__*/_react["default"].createElement("div", {
98
- className: isMobile ? classes.mobileListElement : classes.listElement,
61
+ })) : '', sectionDivider ? /*#__PURE__*/_react["default"].createElement("div", {
62
+ className: classes.divider
63
+ }) : '', /*#__PURE__*/_react["default"].createElement("section", {
64
+ className: classes.bottomSection
65
+ }, aux ? /*#__PURE__*/_react["default"].createElement("div", {
66
+ className: classes.auxContainer
67
+ }, aux.badges ? /*#__PURE__*/_react["default"].createElement("div", {
68
+ className: classes.badgesContainer
69
+ }, aux.badges) : '', aux.socialMedia ? /*#__PURE__*/_react["default"].createElement("div", {
70
+ className: classes.socialMediaContainer
71
+ }, aux.socialMedia) : '', aux.extraContent) : '', /*#__PURE__*/_react["default"].createElement("div", {
72
+ className: classes.bottomContainer
73
+ }, /*#__PURE__*/_react["default"].createElement("div", {
74
+ className: "".concat(classes.bottomLinksContainer, " ").concat(bottomLinksClassName)
75
+ }, bottomLinks.map(function (item, index) {
76
+ return /*#__PURE__*/_react["default"].createElement(_react.Fragment, {
99
77
  key: item.key
100
- }, /*#__PURE__*/_react["default"].createElement(_Text["default"], {
101
- tag: "label",
102
- small: true,
103
- mid: true,
104
- testId: item.testId
78
+ }, index === 0 || index === bottomLinks.length ? '' : /*#__PURE__*/_react["default"].createElement("div", {
79
+ className: classes.linkDivider
80
+ }), /*#__PURE__*/_react["default"].createElement("div", {
81
+ className: classes.listElement
105
82
  }, /*#__PURE__*/_react["default"].createElement("a", {
106
83
  className: classes.link,
107
84
  href: item.href,
@@ -109,10 +86,9 @@ var Footer = function Footer(_ref) {
109
86
  rel: item.rel,
110
87
  onClick: item.onClick
111
88
  }, item.text)));
112
- })), copyText && /*#__PURE__*/_react["default"].createElement(_Text["default"], {
113
- small: true,
114
- mid: true
115
- }, copyText)), bottomItem)))));
89
+ })), copyText && /*#__PURE__*/_react["default"].createElement("div", {
90
+ className: classes.copyright
91
+ }, copyText)))));
116
92
  };
117
93
 
118
94
  var columnPropTypes = _propTypes["default"].arrayOf(_propTypes["default"].arrayOf(_propTypes["default"].shape({
@@ -145,32 +121,35 @@ Footer.propTypes = {
145
121
  /** Array of links to render at the bottom. */
146
122
  bottomLinks: _propTypes["default"].array,
147
123
 
148
- /** Custom component to render on the bottom left. */
149
- customBottom: _propTypes["default"].node,
150
-
151
124
  /** String or component to show as the copyright label. */
152
125
  copyText: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].node]),
153
126
 
154
127
  /** Object to implement an auxiliar button on the bottom right. */
155
128
  aux: _propTypes["default"].shape({
156
- text: _propTypes["default"].string,
157
- icon: _propTypes["default"].string,
158
- href: _propTypes["default"].string,
159
- target: _propTypes["default"].string,
160
- iconRight: _propTypes["default"].string
129
+ badges: _propTypes["default"].node,
130
+ socialMedia: _propTypes["default"].node,
131
+ extraContent: _propTypes["default"].node
161
132
  }),
162
133
 
163
134
  /** Custom component to render on the bottom right, at the end of the footer */
164
135
  bottomItem: _propTypes["default"].node,
165
136
 
166
137
  /** Footer list className. */
167
- listClassName: _propTypes["default"].string
138
+ listClassName: _propTypes["default"].string,
139
+ isFluid: _propTypes["default"].bool,
140
+
141
+ /** Custom component to render at the top of the footer, commonly used for brand logo */
142
+ topElement: _propTypes["default"].node,
143
+
144
+ /** Custom classname for bottomLinks container. */
145
+ bottomLinksClassName: _propTypes["default"].string,
146
+
147
+ /** Flag to display an horizontal line between sections */
148
+ sectionDivider: _propTypes["default"].bool
168
149
  };
169
150
  Footer.defaultProps = {
170
151
  bottomLinks: [],
171
152
  columns: []
172
153
  };
173
-
174
- var _default = (0, _WindowSize["default"])(Footer);
175
-
154
+ var _default = Footer;
176
155
  exports["default"] = _default;