@thecb/components 10.2.4-beta.8 → 10.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/index.cjs.js +588 -273
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +64 -1
- package/dist/index.esm.js +584 -272
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/atoms/badge/Badge.stories.js +1 -2
- package/src/components/atoms/badge/Badge.theme.js +4 -8
- package/src/components/atoms/breadcrumb/Breadcrumb.js +4 -3
- package/src/components/atoms/breadcrumb/Breadcrumb.theme.js +5 -2
- package/src/components/atoms/button-with-action/ButtonWithAction.js +6 -14
- package/src/components/atoms/button-with-action/ButtonWithAction.stories.js +0 -1
- package/src/components/atoms/button-with-action/ButtonWithAction.theme.js +37 -33
- package/src/components/atoms/button-with-link/ButtonWithLink.js +2 -2
- package/src/components/atoms/form-layouts/FormInput.js +1 -1
- package/src/components/atoms/icons/CloseIcon.d.ts +1 -0
- package/src/components/atoms/icons/CloseIcon.js +48 -0
- package/src/components/atoms/icons/TrashIconV2.d.ts +1 -0
- package/src/components/atoms/icons/TrashIconV2.js +41 -0
- package/src/components/atoms/icons/icons.stories.js +5 -1
- package/src/components/atoms/icons/index.d.ts +2 -0
- package/src/components/atoms/icons/index.js +5 -1
- package/src/components/atoms/layouts/Box.js +0 -1
- package/src/components/atoms/layouts/examples/box-example/BoxExample.stories.js +1 -2
- package/src/components/atoms/link/ExternalLink.styled.js +6 -3
- package/src/components/atoms/link/InternalLink.styled.js +6 -3
- package/src/components/atoms/placeholder/Placeholder.js +74 -87
- package/src/components/atoms/placeholder/Placeholder.stories.js +9 -22
- package/src/components/atoms/text/Text.styled.js +1 -0
- package/src/components/molecules/account-and-routing-modal/AccountAndRoutingModal.js +1 -0
- package/src/components/molecules/account-and-routing-modal/AccountAndRoutingModal.stories.js +41 -0
- package/src/components/molecules/account-and-routing-modal/AccountAndRoutingModal.theme.js +10 -2
- package/src/components/molecules/index.d.ts +1 -0
- package/src/components/molecules/index.js +1 -0
- package/src/components/molecules/link-card/LinkCard.js +2 -5
- package/src/components/molecules/link-card/LinkCard.stories.js +34 -62
- package/src/components/molecules/link-card/LinkCard.theme.js +5 -19
- package/src/components/molecules/obligation/Obligation.js +1 -4
- package/src/components/molecules/obligation/modules/AutopayModalModule.js +1 -4
- package/src/components/molecules/obligation/modules/PaymentDetailsActions.js +1 -5
- package/src/components/molecules/pagination/Pagination.js +1 -7
- package/src/components/molecules/pagination/Pagination.stories.js +32 -0
- package/src/components/molecules/pagination/Pagination.theme.js +1 -2
- package/src/components/molecules/tab-sidebar/TabSidebar.js +2 -2
- package/src/components/molecules/terms-and-conditions-modal/TermsAndConditionsModal.js +1 -0
- package/src/components/molecules/terms-and-conditions-modal/TermsAndConditionsModal.theme.js +10 -2
- package/src/components/templates/default-page-template/DefaultPageTemplate.js +3 -2
- package/src/constants/index.d.ts +2 -1
- package/src/constants/index.js +12 -3
- package/src/constants/style_constants.d.ts +11 -0
- package/src/constants/style_constants.js +3 -1
- package/dist/src/apps/checkout/pages/payment/sub-pages/payment-amount/PaymentAmount_old.js +0 -49322
- package/src/.DS_Store +0 -0
- package/src/components/.DS_Store +0 -0
- package/src/components/atoms/.DS_Store +0 -0
- package/src/components/atoms/icons/.DS_Store +0 -0
|
@@ -17,7 +17,6 @@ import {
|
|
|
17
17
|
PaymentMethodAddIcon
|
|
18
18
|
} from "../icons";
|
|
19
19
|
import { FONT_WEIGHT_REGULAR } from "../../../constants/style_constants";
|
|
20
|
-
import { noop } from "../../../util/general";
|
|
21
20
|
|
|
22
21
|
const getLargeIcon = iconName => {
|
|
23
22
|
switch (iconName) {
|
|
@@ -37,27 +36,21 @@ const PlaceholderContentWrapper = ({
|
|
|
37
36
|
action,
|
|
38
37
|
destination,
|
|
39
38
|
children,
|
|
40
|
-
dataQa
|
|
41
|
-
disabled = false
|
|
39
|
+
dataQa
|
|
42
40
|
}) =>
|
|
43
41
|
isLink ? (
|
|
44
|
-
<Link to={destination} data-qa={dataQa}
|
|
45
|
-
<Box
|
|
46
|
-
padding="0"
|
|
47
|
-
minHeight="100%"
|
|
48
|
-
extraStyles={disabled ? `cursor: default;` : `cursor: pointer;`}
|
|
49
|
-
>
|
|
42
|
+
<Link to={destination} data-qa={dataQa} style={{ textDecoration: "none" }}>
|
|
43
|
+
<Box padding="0" minHeight="100%" extraStyles={`cursor: pointer;`}>
|
|
50
44
|
{children}
|
|
51
45
|
</Box>
|
|
52
46
|
</Link>
|
|
53
47
|
) : (
|
|
54
48
|
<Box
|
|
55
|
-
onClick={
|
|
49
|
+
onClick={action}
|
|
56
50
|
padding="0"
|
|
57
51
|
minHeight="100%"
|
|
52
|
+
extraStyles={`cursor: pointer;`}
|
|
58
53
|
dataQa={dataQa}
|
|
59
|
-
aria-disabled={disabled}
|
|
60
|
-
extraStyles={disabled ? "cursor: default;" : "cursor: pointer;"}
|
|
61
54
|
>
|
|
62
55
|
{children}
|
|
63
56
|
</Box>
|
|
@@ -72,26 +65,21 @@ const Placeholder = ({
|
|
|
72
65
|
variant,
|
|
73
66
|
largeIcon,
|
|
74
67
|
themeValues,
|
|
75
|
-
dataQa
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
borderRadius="4px"
|
|
91
|
-
border="none"
|
|
92
|
-
minHeight={themeValues.height}
|
|
93
|
-
hiddenStyles={!visible}
|
|
94
|
-
extraStyles={`
|
|
68
|
+
dataQa
|
|
69
|
+
}) => (
|
|
70
|
+
<PlaceholderContentWrapper
|
|
71
|
+
isLink={isLink}
|
|
72
|
+
action={action}
|
|
73
|
+
destination={destination}
|
|
74
|
+
dataQa={dataQa}
|
|
75
|
+
>
|
|
76
|
+
<Box
|
|
77
|
+
padding="0"
|
|
78
|
+
borderRadius="4px"
|
|
79
|
+
border="none"
|
|
80
|
+
minHeight={themeValues.height}
|
|
81
|
+
hiddenStyles={!visible}
|
|
82
|
+
extraStyles={`
|
|
95
83
|
background: linear-gradient(
|
|
96
84
|
to right,
|
|
97
85
|
${variant === "large" ? STORM_GREY : themeValues.color} 40%,
|
|
@@ -112,22 +100,22 @@ const Placeholder = ({
|
|
|
112
100
|
display: flex;
|
|
113
101
|
justify-content: center;
|
|
114
102
|
align-items:center;`}
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
103
|
+
hoverStyles={`background-color: ${
|
|
104
|
+
variant === "large" ? GRECIAN_GREY : tint(0.9, themeValues.color)
|
|
105
|
+
};`}
|
|
106
|
+
>
|
|
107
|
+
<Center maxWidth="300px">
|
|
108
|
+
<Box
|
|
109
|
+
padding="0"
|
|
110
|
+
tabIndex="0"
|
|
111
|
+
onKeyPress={e => e.key === "Enter" && action()}
|
|
112
|
+
>
|
|
113
|
+
<Cluster justify="center" align="center" minHeight="100%">
|
|
114
|
+
<Switcher maxChildren={2} childGap="0">
|
|
115
|
+
{variant === "large" && <div></div>}
|
|
116
|
+
<Box
|
|
117
|
+
padding="0"
|
|
118
|
+
extraStyles={`.fill {
|
|
131
119
|
fill: ${
|
|
132
120
|
variant === "large" ? CHARADE_GREY : themeValues.color
|
|
133
121
|
};
|
|
@@ -136,45 +124,44 @@ const Placeholder = ({
|
|
|
136
124
|
variant === "large" ? CHARADE_GREY : themeValues.color
|
|
137
125
|
};
|
|
138
126
|
}`}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
};
|
|
127
|
+
>
|
|
128
|
+
{variant === "large" ? (
|
|
129
|
+
<Center intrinsic>
|
|
130
|
+
{getLargeIcon(largeIcon)}
|
|
131
|
+
<Text
|
|
132
|
+
variant="pS"
|
|
133
|
+
color={themeValues.color}
|
|
134
|
+
weight={FONT_WEIGHT_REGULAR}
|
|
135
|
+
extraStyles={`text-align: center;`}
|
|
136
|
+
>
|
|
137
|
+
{text}
|
|
138
|
+
</Text>
|
|
139
|
+
</Center>
|
|
140
|
+
) : (
|
|
141
|
+
<Cover singleChild minHeight="100%">
|
|
142
|
+
<Cluster justify="center" align="center">
|
|
143
|
+
<IconAdd />
|
|
144
|
+
<Center intrinsic>
|
|
145
|
+
<Text
|
|
146
|
+
variant="pS"
|
|
147
|
+
color={themeValues.color}
|
|
148
|
+
weight={FONT_WEIGHT_REGULAR}
|
|
149
|
+
extraStyles={`padding: 0 0 0 8px; text-align: center;`}
|
|
150
|
+
>
|
|
151
|
+
{text}
|
|
152
|
+
</Text>
|
|
153
|
+
</Center>
|
|
154
|
+
</Cluster>
|
|
155
|
+
</Cover>
|
|
156
|
+
)}
|
|
157
|
+
</Box>
|
|
158
|
+
</Switcher>
|
|
159
|
+
</Cluster>
|
|
160
|
+
</Box>
|
|
161
|
+
</Center>
|
|
162
|
+
</Box>
|
|
163
|
+
</PlaceholderContentWrapper>
|
|
164
|
+
);
|
|
178
165
|
|
|
179
166
|
export default themeComponent(
|
|
180
167
|
Placeholder,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { text, select
|
|
2
|
+
import { boolean, text, select } from "@storybook/addon-knobs";
|
|
3
3
|
import Placeholder from "./Placeholder";
|
|
4
4
|
import page from "../../../../.storybook/page";
|
|
5
5
|
|
|
@@ -21,27 +21,14 @@ const iconLabel = "largeIcon";
|
|
|
21
21
|
const defaultIcon = "accounts";
|
|
22
22
|
|
|
23
23
|
export const placeholder = () => (
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
key="placeholder1"
|
|
33
|
-
disabled={boolean("disabled", false, groupId)}
|
|
34
|
-
/>
|
|
35
|
-
<h2>Placeholder w/Action</h2>
|
|
36
|
-
<Placeholder
|
|
37
|
-
variant={select(variantsLabel, variants, defaultValue, groupId)}
|
|
38
|
-
text={text("text", "Add an Account", "props")}
|
|
39
|
-
largeIcon={select(iconLabel, icons, defaultIcon, groupId)}
|
|
40
|
-
key="placeholder2"
|
|
41
|
-
disabled={boolean("disabled", false, groupId)}
|
|
42
|
-
action={() => window.alert("Click event registered!")}
|
|
43
|
-
/>
|
|
44
|
-
</>
|
|
24
|
+
<Placeholder
|
|
25
|
+
variant={select(variantsLabel, variants, defaultValue, groupId)}
|
|
26
|
+
isLink={boolean("isLink", true, "props")}
|
|
27
|
+
destination={text("destination", "add-account", "props")}
|
|
28
|
+
text={text("text", "Add an Account", "props")}
|
|
29
|
+
largeIcon={select(iconLabel, icons, defaultIcon, groupId)}
|
|
30
|
+
key="placeholder"
|
|
31
|
+
/>
|
|
45
32
|
);
|
|
46
33
|
|
|
47
34
|
const story = page({
|
|
@@ -8,6 +8,7 @@ export const TextSpan = styled.span`
|
|
|
8
8
|
font-weight: ${({ weight }) => weight};
|
|
9
9
|
font-family: ${({ fontFamily }) => fontFamily};
|
|
10
10
|
color: ${({ color }) => color};
|
|
11
|
+
text-decoration: ${({ textDecoration }) => textDecoration};
|
|
11
12
|
white-space: ${({ $textWrap }) => ($textWrap ? "initial" : "nowrap")};
|
|
12
13
|
|
|
13
14
|
&:hover {
|
|
@@ -60,6 +60,7 @@ const AccountAndRoutingModal = ({
|
|
|
60
60
|
color={themeValues.linkColor}
|
|
61
61
|
weight={themeValues.fontWeight}
|
|
62
62
|
hoverStyles={themeValues.modalLinkHoverFocus}
|
|
63
|
+
textDecoration={themeValues.linkTextDecoration}
|
|
63
64
|
extraStyles={`cursor: pointer;`}
|
|
64
65
|
role="button"
|
|
65
66
|
className="modal-trigger"
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { connect } from "react-redux";
|
|
3
|
+
import { boolean, select, text } from "@storybook/addon-knobs";
|
|
4
|
+
|
|
5
|
+
import AccountAndRoutingModal from "./AccountAndRoutingModal";
|
|
6
|
+
import page from "../../../../.storybook/page";
|
|
7
|
+
|
|
8
|
+
const groupId = "props";
|
|
9
|
+
|
|
10
|
+
const variants = {
|
|
11
|
+
default: "default",
|
|
12
|
+
None: undefined
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
const linkVariants = {
|
|
16
|
+
p: "p",
|
|
17
|
+
pL: "pL",
|
|
18
|
+
pS: "pS",
|
|
19
|
+
pXS: "pXS",
|
|
20
|
+
pXXS: "pXXS",
|
|
21
|
+
pXL: "PXL"
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export const accountAndRoutingModal = () => (
|
|
25
|
+
<AccountAndRoutingModal
|
|
26
|
+
link={text("text", "Show modal", groupId)}
|
|
27
|
+
title={text("title", "Title", groupId)}
|
|
28
|
+
isOpen={boolean("isOpen", false, groupId)}
|
|
29
|
+
acceptText={text("acceptText", "Accept", groupId)}
|
|
30
|
+
content="Your routing number is the 9-digit..."
|
|
31
|
+
variant={select("variants", variants, "default", groupId)}
|
|
32
|
+
linkVariant={select("linkVariants", linkVariants, groupId)}
|
|
33
|
+
initialFocusSelector="[name='Cancel']"
|
|
34
|
+
/>
|
|
35
|
+
);
|
|
36
|
+
|
|
37
|
+
const story = page({
|
|
38
|
+
title: "Components|Molecules/AccountAndRoutingModal",
|
|
39
|
+
Component: AccountAndRoutingModal
|
|
40
|
+
});
|
|
41
|
+
export default story;
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
FONT_WEIGHT_REGULAR,
|
|
3
|
+
LINK_TEXT_DECORATION
|
|
4
|
+
} from "../../../constants/style_constants";
|
|
2
5
|
|
|
3
6
|
const linkColor = { default: "#3176AA" };
|
|
4
7
|
const fontSize = { default: "1rem" };
|
|
@@ -10,10 +13,15 @@ const modalLinkHoverFocus = {
|
|
|
10
13
|
default: `outline: none; text-decoration: underline;`
|
|
11
14
|
};
|
|
12
15
|
|
|
16
|
+
const linkTextDecoration = {
|
|
17
|
+
default: LINK_TEXT_DECORATION
|
|
18
|
+
};
|
|
19
|
+
|
|
13
20
|
export const fallbackValues = {
|
|
14
21
|
linkColor,
|
|
15
22
|
fontSize,
|
|
16
23
|
lineHeight,
|
|
17
24
|
fontWeight,
|
|
18
|
-
modalLinkHoverFocus
|
|
25
|
+
modalLinkHoverFocus,
|
|
26
|
+
linkTextDecoration
|
|
19
27
|
};
|
|
@@ -40,3 +40,4 @@ export { default as Timeout } from "./timeout";
|
|
|
40
40
|
export { default as ToastNotification } from "./toast-notification";
|
|
41
41
|
export { default as WelcomeModule } from "./welcome-module";
|
|
42
42
|
export { default as WorkflowTile } from "./workflow-tile";
|
|
43
|
+
export { default as PopupMenu } from "./popup-menu";
|
|
@@ -4,10 +4,8 @@ import { themeComponent } from "../../../util/themeUtils";
|
|
|
4
4
|
import { fallbackValues } from "./LinkCard.theme";
|
|
5
5
|
import { ThemeContext } from "styled-components";
|
|
6
6
|
import * as Styled from "./LinkCard.styled";
|
|
7
|
-
import { noop } from "../../../util/general";
|
|
8
7
|
|
|
9
8
|
const LinkCard = ({
|
|
10
|
-
variant = "primary", // "primary" | "disabled"
|
|
11
9
|
title = "Test Workflow",
|
|
12
10
|
subtitle = "Link your benefit plan",
|
|
13
11
|
showLeft,
|
|
@@ -38,8 +36,7 @@ const LinkCard = ({
|
|
|
38
36
|
extraStyles={extraStyles}
|
|
39
37
|
hoverStyles={extraHoverStyles}
|
|
40
38
|
activeStyles={extraActiveStyles}
|
|
41
|
-
onClick={
|
|
42
|
-
aria-disabled={variant === "disabled"}
|
|
39
|
+
onClick={onClick}
|
|
43
40
|
>
|
|
44
41
|
<Stack
|
|
45
42
|
childGap={0}
|
|
@@ -76,4 +73,4 @@ const LinkCard = ({
|
|
|
76
73
|
);
|
|
77
74
|
};
|
|
78
75
|
|
|
79
|
-
export default themeComponent(LinkCard, "LinkCard", fallbackValues
|
|
76
|
+
export default themeComponent(LinkCard, "LinkCard", fallbackValues);
|
|
@@ -1,77 +1,49 @@
|
|
|
1
|
-
import page from "../../../../.storybook/page";
|
|
2
|
-
import { boolean, select, text } from "@storybook/addon-knobs";
|
|
3
1
|
import React from "react";
|
|
4
2
|
import LinkCard from "./LinkCard";
|
|
5
3
|
import Box from "../../atoms/layouts/Box";
|
|
6
4
|
import Stack from "../../atoms/layouts/Stack";
|
|
7
5
|
import Text from "../../atoms/text/Text";
|
|
6
|
+
import page from "../../../../.storybook/page";
|
|
7
|
+
import { text } from "@storybook/addon-knobs";
|
|
8
8
|
import Badge from "../../atoms/badge/Badge";
|
|
9
9
|
import PlusCircleIcon from "../../atoms/icons/PlusCircleIcon";
|
|
10
10
|
import AutopayIcon from "../../atoms/icons/AutopayIcon";
|
|
11
|
-
|
|
12
|
-
import {
|
|
13
|
-
ATHENS_GREY,
|
|
14
|
-
CORNFLOWER_BLUE,
|
|
15
|
-
ROYAL_BLUE_VIVID,
|
|
16
|
-
GHOST_GREY
|
|
17
|
-
} from "../../../constants/colors";
|
|
18
|
-
|
|
11
|
+
import { CORNFLOWER_BLUE, ROYAL_BLUE_VIVID } from "../../../constants/colors";
|
|
19
12
|
const groupId = "props";
|
|
20
|
-
const variant = "primary";
|
|
21
|
-
const variants = { primary: "primary", disabled: "disabled" };
|
|
22
|
-
const disabled = false;
|
|
23
|
-
const showLeft = true;
|
|
24
13
|
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
className="show-on-hover"
|
|
53
|
-
extraStyles={`text-align: right; color: transparent; ${
|
|
54
|
-
!showLeft || (showLeft && !leftContent)
|
|
55
|
-
? "margin-left: auto;"
|
|
56
|
-
: ""
|
|
57
|
-
}`}
|
|
58
|
-
>
|
|
59
|
-
Find
|
|
60
|
-
</Text>
|
|
61
|
-
<PlusCircleIcon
|
|
62
|
-
color={variant === "disabled" ? GHOST_GREY : ROYAL_BLUE_VIVID}
|
|
63
|
-
/>
|
|
64
|
-
</Stack>
|
|
65
|
-
}
|
|
66
|
-
extraHoverStyles={`
|
|
67
|
-
.show-on-hover {color: ${disabled ? ATHENS_GREY : ROYAL_BLUE_VIVID};}
|
|
14
|
+
export const linkCard = () => (
|
|
15
|
+
<LinkCard
|
|
16
|
+
title={text("title", "Link Card Title", "props")}
|
|
17
|
+
subtitle={text("subtitle", "Link card description", groupId)}
|
|
18
|
+
path={text("path", "/service/animal-care-and-control", "props")}
|
|
19
|
+
showLeft={true}
|
|
20
|
+
leftContent={
|
|
21
|
+
<Box background="transparent" borderWidthOverride="0 0 0 0" padding="0">
|
|
22
|
+
<Badge label="Autopay Available" Icon={AutopayIcon} />
|
|
23
|
+
</Box>
|
|
24
|
+
}
|
|
25
|
+
showRight={true}
|
|
26
|
+
rightContent={
|
|
27
|
+
<Stack direction="row" childGap="6px">
|
|
28
|
+
<Text
|
|
29
|
+
variant="pS"
|
|
30
|
+
color={ROYAL_BLUE_VIVID}
|
|
31
|
+
extraStyles="text-align: right; color: transparent;"
|
|
32
|
+
className="show-on-hover"
|
|
33
|
+
>
|
|
34
|
+
Find
|
|
35
|
+
</Text>
|
|
36
|
+
<PlusCircleIcon color={ROYAL_BLUE_VIVID} />
|
|
37
|
+
</Stack>
|
|
38
|
+
}
|
|
39
|
+
extraHoverStyles={`
|
|
40
|
+
.show-on-hover {color: ${ROYAL_BLUE_VIVID};}
|
|
68
41
|
`}
|
|
69
|
-
|
|
70
|
-
background-color: ${
|
|
42
|
+
extraActiveStyles={`
|
|
43
|
+
background-color: ${CORNFLOWER_BLUE};
|
|
71
44
|
`}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
};
|
|
45
|
+
/>
|
|
46
|
+
);
|
|
75
47
|
|
|
76
48
|
const story = page({
|
|
77
49
|
title: "Components|Molecules/LinkCard",
|
|
@@ -2,27 +2,13 @@ import {
|
|
|
2
2
|
CORNFLOWER_BLUE,
|
|
3
3
|
LINK_WATER,
|
|
4
4
|
MOON_RAKER,
|
|
5
|
-
ROYAL_BLUE_VIVID
|
|
6
|
-
MANATEE_GREY,
|
|
7
|
-
ATHENS_GREY
|
|
5
|
+
ROYAL_BLUE_VIVID
|
|
8
6
|
} from "../../../constants/colors";
|
|
9
7
|
|
|
10
|
-
const activeBackgroundColor =
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const backgroundColor = {
|
|
15
|
-
primary: `${LINK_WATER}`,
|
|
16
|
-
disabled: `${ATHENS_GREY}`
|
|
17
|
-
};
|
|
18
|
-
const borderColor = {
|
|
19
|
-
primary: `${MOON_RAKER}`,
|
|
20
|
-
disabled: `${MANATEE_GREY}`
|
|
21
|
-
};
|
|
22
|
-
const color = {
|
|
23
|
-
primary: `${ROYAL_BLUE_VIVID}`,
|
|
24
|
-
disabled: `${MANATEE_GREY}`
|
|
25
|
-
};
|
|
8
|
+
const activeBackgroundColor = CORNFLOWER_BLUE;
|
|
9
|
+
const backgroundColor = LINK_WATER;
|
|
10
|
+
const borderColor = MOON_RAKER;
|
|
11
|
+
const color = ROYAL_BLUE_VIVID;
|
|
26
12
|
|
|
27
13
|
export const fallbackValues = {
|
|
28
14
|
activeBackgroundColor,
|
|
@@ -36,8 +36,7 @@ const Obligation = ({
|
|
|
36
36
|
inactive = false,
|
|
37
37
|
inactiveLookupTitle = "",
|
|
38
38
|
inactiveLookupInput = "Account",
|
|
39
|
-
inactiveLookupValue = ""
|
|
40
|
-
isInCustomerManagement = false
|
|
39
|
+
inactiveLookupValue = ""
|
|
41
40
|
}) => {
|
|
42
41
|
/*
|
|
43
42
|
The value of obligations is always an array. It can contain:
|
|
@@ -138,7 +137,6 @@ const Obligation = ({
|
|
|
138
137
|
description={description}
|
|
139
138
|
subDescription={subDescription}
|
|
140
139
|
allowedPaymentInstruments={allowedPaymentInstruments}
|
|
141
|
-
isInCustomerManagement={isInCustomerManagement}
|
|
142
140
|
/>
|
|
143
141
|
)}
|
|
144
142
|
</Stack>
|
|
@@ -162,7 +160,6 @@ const Obligation = ({
|
|
|
162
160
|
description={description}
|
|
163
161
|
subDescription={subDescription}
|
|
164
162
|
allowedPaymentInstruments={allowedPaymentInstruments}
|
|
165
|
-
isInCustomerManagement={isInCustomerManagement}
|
|
166
163
|
/>
|
|
167
164
|
)}
|
|
168
165
|
</Box>
|
|
@@ -27,8 +27,7 @@ const AutopayModal = ({
|
|
|
27
27
|
inactive,
|
|
28
28
|
description,
|
|
29
29
|
subDescription,
|
|
30
|
-
allowedPaymentInstruments
|
|
31
|
-
isInCustomerManagement = false
|
|
30
|
+
allowedPaymentInstruments
|
|
32
31
|
}) => {
|
|
33
32
|
const generateMethodNeededText = (planText, allowedPaymentInstruments) => {
|
|
34
33
|
const allowsCard = allowedPaymentInstruments.includes(CC_METHOD);
|
|
@@ -81,7 +80,6 @@ const AutopayModal = ({
|
|
|
81
80
|
case "secondary": {
|
|
82
81
|
return (
|
|
83
82
|
<ButtonWithAction
|
|
84
|
-
disabled={isInCustomerManagement}
|
|
85
83
|
text={
|
|
86
84
|
autoPayActive ? `Turn off ${shortPlan}` : `Set Up ${shortPlan}`
|
|
87
85
|
}
|
|
@@ -101,7 +99,6 @@ const AutopayModal = ({
|
|
|
101
99
|
case "tertiary": {
|
|
102
100
|
return (
|
|
103
101
|
<ButtonWithAction
|
|
104
|
-
disabled={isInCustomerManagement}
|
|
105
102
|
text={autoPayActive ? `Manage ${shortPlan}` : `Set Up ${shortPlan}`}
|
|
106
103
|
variant="tertiary"
|
|
107
104
|
action={() => {
|
|
@@ -23,8 +23,7 @@ const PaymentDetailsActions = ({
|
|
|
23
23
|
dueDate,
|
|
24
24
|
description,
|
|
25
25
|
subDescription,
|
|
26
|
-
allowedPaymentInstruments
|
|
27
|
-
isInCustomerManagement = false
|
|
26
|
+
allowedPaymentInstruments
|
|
28
27
|
}) => {
|
|
29
28
|
const planType = isPaymentPlan ? "Payment Plan" : "Autopay";
|
|
30
29
|
const [isLoading, setIsLoading] = useState(false);
|
|
@@ -120,7 +119,6 @@ const PaymentDetailsActions = ({
|
|
|
120
119
|
}}
|
|
121
120
|
dataQa="Set Up Autopay"
|
|
122
121
|
extraStyles={isMobile && `flex-grow: 1; width: 100%;`}
|
|
123
|
-
disabled={isInCustomerManagement}
|
|
124
122
|
/>
|
|
125
123
|
) : (
|
|
126
124
|
<AutopayModalModule
|
|
@@ -150,7 +148,6 @@ const PaymentDetailsActions = ({
|
|
|
150
148
|
text="Pay Now"
|
|
151
149
|
variant={isMobile ? "smallSecondary" : "secondary"}
|
|
152
150
|
dataQa="Pay Now"
|
|
153
|
-
disabled={isInCustomerManagement}
|
|
154
151
|
/>
|
|
155
152
|
</Box>
|
|
156
153
|
)}
|
|
@@ -164,7 +161,6 @@ const PaymentDetailsActions = ({
|
|
|
164
161
|
variant={isMobile ? "smallSecondary" : "secondary"}
|
|
165
162
|
dataQa="Pay Now"
|
|
166
163
|
extraStyles={isMobile && `flex-grow: 1; width: 100%; margin: 0;`}
|
|
167
|
-
disabled={isInCustomerManagement}
|
|
168
164
|
/>
|
|
169
165
|
</Box>
|
|
170
166
|
)}
|
|
@@ -94,6 +94,7 @@ export const getPagesPanel = (page, pagesCount) => {
|
|
|
94
94
|
|
|
95
95
|
const Pagination = ({
|
|
96
96
|
activeBorderWidth = "3px",
|
|
97
|
+
ariaLabel,
|
|
97
98
|
arrowColor,
|
|
98
99
|
borderRadius = "3px",
|
|
99
100
|
buttonHeight = "44px",
|
|
@@ -107,7 +108,6 @@ const Pagination = ({
|
|
|
107
108
|
pageNext,
|
|
108
109
|
pagePrevious,
|
|
109
110
|
setCurrentPage,
|
|
110
|
-
ariaLabel,
|
|
111
111
|
themeValues
|
|
112
112
|
}) => {
|
|
113
113
|
const { isMobile } = useContext(ThemeContext);
|
|
@@ -115,12 +115,6 @@ const Pagination = ({
|
|
|
115
115
|
const extraStyles = `
|
|
116
116
|
min-width: ${buttonWidth}; min-height: 100%; padding: 0;
|
|
117
117
|
border-radius: ${borderRadius};
|
|
118
|
-
&:hover, &:focus {
|
|
119
|
-
text-decoration: none;
|
|
120
|
-
> * > span {
|
|
121
|
-
text-decoration: none;
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
118
|
> * > span {
|
|
125
119
|
color: ${numberColor ?? themeValues.numberColor}
|
|
126
120
|
}
|