@thecb/components 4.1.21 → 4.1.24-beta.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/dist/index.cjs.js +43 -29
- package/package.json +1 -1
- package/src/components/molecules/collapsible-section/CollapsibleSection.js +6 -3
- package/src/components/molecules/editable-table/TableListItem.js +11 -2
- package/src/components/molecules/email-form/EmailForm.js +3 -3
- package/src/components/molecules/forgot-password-form/ForgotPasswordForm.js +3 -3
- package/src/components/molecules/login-form/LoginForm.js +2 -2
- package/src/components/molecules/obligation/Obligation.js +5 -1
- package/src/components/molecules/obligation/modules/AmountModule.js +9 -9
- package/src/components/molecules/obligation/modules/AutopayModalModule.js +6 -4
- package/src/components/molecules/obligation/modules/AutopayModalModule.theme.js +1 -1
- package/src/components/molecules/obligation/modules/PaymentDetailsActions.js +4 -1
package/dist/index.cjs.js
CHANGED
|
@@ -34492,7 +34492,10 @@ var CollapsibleSection = function CollapsibleSection(_ref) {
|
|
|
34492
34492
|
openHeight = _ref$openHeight === void 0 ? "auto" : _ref$openHeight,
|
|
34493
34493
|
children = _ref.children,
|
|
34494
34494
|
_ref$customTitle = _ref.customTitle,
|
|
34495
|
-
customTitle = _ref$customTitle === void 0 ? false : _ref$customTitle
|
|
34495
|
+
customTitle = _ref$customTitle === void 0 ? false : _ref$customTitle,
|
|
34496
|
+
_ref$stackTitle = _ref.stackTitle,
|
|
34497
|
+
stackTitle = _ref$stackTitle === void 0 ? false : _ref$stackTitle,
|
|
34498
|
+
stackTitleContent = _ref.stackTitleContent;
|
|
34496
34499
|
|
|
34497
34500
|
var handleKeyDown = function handleKeyDown(e) {
|
|
34498
34501
|
if (e.keyCode === 13) {
|
|
@@ -34536,8 +34539,8 @@ var CollapsibleSection = function CollapsibleSection(_ref) {
|
|
|
34536
34539
|
hoverStyles: "outline: none;",
|
|
34537
34540
|
animate: isOpen ? "open" : "closed",
|
|
34538
34541
|
positionTransition: true
|
|
34539
|
-
}, /*#__PURE__*/React__default.createElement(Stack, {
|
|
34540
|
-
childGap: isOpen ? "0.5rem" : "0rem"
|
|
34542
|
+
}, stackTitle && /*#__PURE__*/React__default.createElement(React.Fragment, null, stackTitleContent), /*#__PURE__*/React__default.createElement(Stack, {
|
|
34543
|
+
childGap: isOpen && !isMobile ? "0.5rem" : "0rem"
|
|
34541
34544
|
}, /*#__PURE__*/React__default.createElement(Box, {
|
|
34542
34545
|
padding: customPadding ? customPadding : "0",
|
|
34543
34546
|
background: themeValues.headingBackgroundColor,
|
|
@@ -34931,10 +34934,11 @@ var TableListItem = function TableListItem(_ref) {
|
|
|
34931
34934
|
canEdit = _ref$canEdit === void 0 ? false : _ref$canEdit,
|
|
34932
34935
|
_ref$canRemove = _ref.canRemove,
|
|
34933
34936
|
canRemove = _ref$canRemove === void 0 ? false : _ref$canRemove,
|
|
34934
|
-
isMobile = _ref.isMobile
|
|
34937
|
+
isMobile = _ref.isMobile,
|
|
34938
|
+
borderTopItem = _ref.borderTopItem;
|
|
34935
34939
|
return /*#__PURE__*/React__default.createElement(Box, {
|
|
34936
34940
|
padding: "0px",
|
|
34937
|
-
extraStyles: "&:last-child {\n > * {\n border-bottom: none;\n }\n }"
|
|
34941
|
+
extraStyles: "&:last-child {\n > * {\n border-bottom: none;\n }\n }\n ".concat(isMobile && borderTopItem && "&:first-child {\n > * {\n border-top: 1px solid ".concat(GHOST_GREY, ";\n }\n }"), "\n ")
|
|
34938
34942
|
}, /*#__PURE__*/React__default.createElement(ItemWrapper, null, /*#__PURE__*/React__default.createElement(EditableTableListItem, {
|
|
34939
34943
|
isMobile: isMobile
|
|
34940
34944
|
}, /*#__PURE__*/React__default.createElement(TableItemKey, {
|
|
@@ -34986,15 +34990,15 @@ var EmailForm = function EmailForm(_ref) {
|
|
|
34986
34990
|
}, []);
|
|
34987
34991
|
}
|
|
34988
34992
|
|
|
34989
|
-
var emailFieldErrorMessages = (_emailFieldErrorMessa = {}, _defineProperty(_emailFieldErrorMessa, required.error, "Email is required"), _defineProperty(_emailFieldErrorMessa, isProbablyEmail.error, "Invalid email address"), _emailFieldErrorMessa);
|
|
34993
|
+
var emailFieldErrorMessages = (_emailFieldErrorMessa = {}, _defineProperty(_emailFieldErrorMessa, required.error, "Email address is required"), _defineProperty(_emailFieldErrorMessa, isProbablyEmail.error, "Invalid email address"), _emailFieldErrorMessa);
|
|
34990
34994
|
return /*#__PURE__*/React__default.createElement(FormContainer$1, {
|
|
34991
34995
|
variant: variant,
|
|
34992
34996
|
role: "form",
|
|
34993
|
-
"aria-label": "Email"
|
|
34997
|
+
"aria-label": "Email address"
|
|
34994
34998
|
}, guestCheckout && /*#__PURE__*/React__default.createElement(Paragraph$1, {
|
|
34995
34999
|
margin: "0 0 1.125rem 0"
|
|
34996
35000
|
}, "If desired, you can create a wallet later for faster checkout"), /*#__PURE__*/React__default.createElement(FormInputColumn, null, /*#__PURE__*/React__default.createElement(FormInput$1, {
|
|
34997
|
-
labelTextWhenNoError: "Email",
|
|
35001
|
+
labelTextWhenNoError: "Email address",
|
|
34998
35002
|
errorMessages: emailFieldErrorMessages,
|
|
34999
35003
|
type: "email",
|
|
35000
35004
|
field: fields.email,
|
|
@@ -35045,9 +35049,9 @@ var ForgotPasswordForm = function ForgotPasswordForm(_ref) {
|
|
|
35045
35049
|
}, []);
|
|
35046
35050
|
}
|
|
35047
35051
|
|
|
35048
|
-
var EmailErrorMessages = (_EmailErrorMessages = {}, _defineProperty(_EmailErrorMessages, required.error, "Email is required"), _defineProperty(_EmailErrorMessages, isProbablyEmail.error, "Email is not valid"), _EmailErrorMessages);
|
|
35052
|
+
var EmailErrorMessages = (_EmailErrorMessages = {}, _defineProperty(_EmailErrorMessages, required.error, "Email address is required"), _defineProperty(_EmailErrorMessages, isProbablyEmail.error, "Email address is not valid"), _EmailErrorMessages);
|
|
35049
35053
|
return /*#__PURE__*/React__default.createElement(FormInput$1, {
|
|
35050
|
-
labelTextWhenNoError: "Email",
|
|
35054
|
+
labelTextWhenNoError: "Email address",
|
|
35051
35055
|
errorMessages: EmailErrorMessages,
|
|
35052
35056
|
field: fields.email,
|
|
35053
35057
|
fieldActions: actions.fields.email,
|
|
@@ -35142,7 +35146,7 @@ var LoginForm = function LoginForm(_ref) {
|
|
|
35142
35146
|
}, []);
|
|
35143
35147
|
}
|
|
35144
35148
|
|
|
35145
|
-
var emailErrorMessages = (_emailErrorMessages = {}, _defineProperty(_emailErrorMessages, required.error, "Email is required"), _defineProperty(_emailErrorMessages, isProbablyEmail.error, "Invalid email address"), _emailErrorMessages);
|
|
35149
|
+
var emailErrorMessages = (_emailErrorMessages = {}, _defineProperty(_emailErrorMessages, required.error, "Email address is required"), _defineProperty(_emailErrorMessages, isProbablyEmail.error, "Invalid email address"), _emailErrorMessages);
|
|
35146
35150
|
|
|
35147
35151
|
var passwordErrorMessages = _defineProperty({}, required.error, "Password is required");
|
|
35148
35152
|
|
|
@@ -35150,7 +35154,7 @@ var LoginForm = function LoginForm(_ref) {
|
|
|
35150
35154
|
role: "form",
|
|
35151
35155
|
"aria-label": "Login"
|
|
35152
35156
|
}, /*#__PURE__*/React__default.createElement(FormInput$1, {
|
|
35153
|
-
labelTextWhenNoError: "Email",
|
|
35157
|
+
labelTextWhenNoError: "Email address",
|
|
35154
35158
|
errorMessages: emailErrorMessages,
|
|
35155
35159
|
type: "email",
|
|
35156
35160
|
field: fields.email,
|
|
@@ -38156,7 +38160,7 @@ var hoverColor$4 = "#116285";
|
|
|
38156
38160
|
var activeColor$5 = "#0E506D";
|
|
38157
38161
|
var linkColor$3 = "#357fb8";
|
|
38158
38162
|
var fontWeight$6 = FONT_WEIGHT_REGULAR;
|
|
38159
|
-
var modalLinkHoverFocus = "outline: none;\n cursor: pointer;\n text-decoration: underline;\n text-decoration-color: #
|
|
38163
|
+
var modalLinkHoverFocus = "outline: none;\n cursor: pointer;\n text-decoration: underline;\n text-decoration-color: #317D4F;";
|
|
38160
38164
|
var fallbackValues$w = {
|
|
38161
38165
|
color: color$a,
|
|
38162
38166
|
hoverColor: hoverColor$4,
|
|
@@ -38177,7 +38181,8 @@ var AutopayModal = function AutopayModal(_ref) {
|
|
|
38177
38181
|
buttonLinkType = _ref.buttonLinkType,
|
|
38178
38182
|
isMobile = _ref.isMobile,
|
|
38179
38183
|
themeValues = _ref.themeValues,
|
|
38180
|
-
isPaymentPlan = _ref.isPaymentPlan
|
|
38184
|
+
isPaymentPlan = _ref.isPaymentPlan,
|
|
38185
|
+
nextAutopayDate = _ref.nextAutopayDate;
|
|
38181
38186
|
var planType = isPaymentPlan ? "Payment Plan" : "Autopay";
|
|
38182
38187
|
var modalExtraProps = {
|
|
38183
38188
|
modalHeaderText: autoPayActive ? "Deactivate ".concat(planType) : "Set Up ".concat(planType),
|
|
@@ -38232,11 +38237,11 @@ var AutopayModal = function AutopayModal(_ref) {
|
|
|
38232
38237
|
},
|
|
38233
38238
|
tabIndex: "0",
|
|
38234
38239
|
dataQa: "".concat(planType, " On"),
|
|
38235
|
-
color:
|
|
38240
|
+
color: SEA_GREEN,
|
|
38236
38241
|
weight: themeValues.fontWeight,
|
|
38237
38242
|
hoverStyles: themeValues.modalLinkHoverFocus,
|
|
38238
|
-
extraStyles: "padding: 0
|
|
38239
|
-
}, "".concat(planType, "
|
|
38243
|
+
extraStyles: "padding-left: 0.25rem;"
|
|
38244
|
+
}, "".concat(planType, " ").concat(nextAutopayDate)))));
|
|
38240
38245
|
};
|
|
38241
38246
|
|
|
38242
38247
|
var AutopayModalModule = themeComponent(AutopayModal, "AutopayModal", fallbackValues$w);
|
|
@@ -38249,7 +38254,8 @@ var AmountModule = function AmountModule(_ref) {
|
|
|
38249
38254
|
navigateToSettings = _ref.navigateToSettings,
|
|
38250
38255
|
autoPaySchedule = _ref.autoPaySchedule,
|
|
38251
38256
|
paymentPlanSchedule = _ref.paymentPlanSchedule,
|
|
38252
|
-
isPaymentPlan = _ref.isPaymentPlan
|
|
38257
|
+
isPaymentPlan = _ref.isPaymentPlan,
|
|
38258
|
+
nextAutopayDate = _ref.nextAutopayDate;
|
|
38253
38259
|
|
|
38254
38260
|
var _useState = React.useState(false),
|
|
38255
38261
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -38260,11 +38266,11 @@ var AmountModule = function AmountModule(_ref) {
|
|
|
38260
38266
|
padding: "0 0.25rem 0 0"
|
|
38261
38267
|
}, /*#__PURE__*/React__default.createElement(Stack, {
|
|
38262
38268
|
childGap: "0"
|
|
38263
|
-
}, /*#__PURE__*/React__default.createElement(Text$1, {
|
|
38269
|
+
}, isMobile && /*#__PURE__*/React__default.createElement(Text$1, {
|
|
38264
38270
|
variant: "pS",
|
|
38265
38271
|
weight: FONT_WEIGHT_SEMIBOLD,
|
|
38266
|
-
|
|
38267
|
-
},
|
|
38272
|
+
textAlign: "left"
|
|
38273
|
+
}, "Amount Due"), /*#__PURE__*/React__default.createElement(AmountCallout$1, {
|
|
38268
38274
|
amount: displayCurrency(totalAmountDue),
|
|
38269
38275
|
textAlign: isMobile ? "left" : "right"
|
|
38270
38276
|
}), autoPayEnabled && /*#__PURE__*/React__default.createElement(AutopayModalModule, {
|
|
@@ -38276,7 +38282,8 @@ var AmountModule = function AmountModule(_ref) {
|
|
|
38276
38282
|
deactivatePaymentSchedule: deactivatePaymentSchedule,
|
|
38277
38283
|
isMobile: isMobile,
|
|
38278
38284
|
paymentPlanSchedule: paymentPlanSchedule,
|
|
38279
|
-
isPaymentPlan: isPaymentPlan
|
|
38285
|
+
isPaymentPlan: isPaymentPlan,
|
|
38286
|
+
nextAutopayDate: nextAutopayDate
|
|
38280
38287
|
})));
|
|
38281
38288
|
};
|
|
38282
38289
|
|
|
@@ -38292,7 +38299,8 @@ var PaymentDetailsActions = function PaymentDetailsActions(_ref) {
|
|
|
38292
38299
|
navigateToSettings = _ref.navigateToSettings,
|
|
38293
38300
|
autoPaySchedule = _ref.autoPaySchedule,
|
|
38294
38301
|
paymentPlanSchedule = _ref.paymentPlanSchedule,
|
|
38295
|
-
isPaymentPlan = _ref.isPaymentPlan
|
|
38302
|
+
isPaymentPlan = _ref.isPaymentPlan,
|
|
38303
|
+
nextAutopayDate = _ref.nextAutopayDate;
|
|
38296
38304
|
var planType = isPaymentPlan ? "Payment Plan" : "Autopay";
|
|
38297
38305
|
|
|
38298
38306
|
var _useState = React.useState(false),
|
|
@@ -38347,7 +38355,8 @@ var PaymentDetailsActions = function PaymentDetailsActions(_ref) {
|
|
|
38347
38355
|
navigateToSettings: navigateToSettings,
|
|
38348
38356
|
autoPaySchedule: autoPaySchedule,
|
|
38349
38357
|
paymentPlanSchedule: paymentPlanSchedule,
|
|
38350
|
-
isPaymentPlan: isPaymentPlan
|
|
38358
|
+
isPaymentPlan: isPaymentPlan,
|
|
38359
|
+
nextAutopayDate: nextAutopayDate
|
|
38351
38360
|
}))), /*#__PURE__*/React__default.createElement(Box, {
|
|
38352
38361
|
padding: isMobile ? "16px" : "0"
|
|
38353
38362
|
}, /*#__PURE__*/React__default.createElement(Cluster, {
|
|
@@ -38385,7 +38394,8 @@ var PaymentDetailsActions = function PaymentDetailsActions(_ref) {
|
|
|
38385
38394
|
buttonLinkType: true,
|
|
38386
38395
|
isMobile: isMobile,
|
|
38387
38396
|
paymentPlanSchedule: paymentPlanSchedule,
|
|
38388
|
-
isPaymentPlan: isPaymentPlan
|
|
38397
|
+
isPaymentPlan: isPaymentPlan,
|
|
38398
|
+
nextAutopayDate: nextAutopayDate
|
|
38389
38399
|
})), !isMobile && /*#__PURE__*/React__default.createElement(Box, {
|
|
38390
38400
|
padding: isMobile ? "0 0 0 8px" : "8px",
|
|
38391
38401
|
extraStyles: isMobile && "flex-grow: 1;"
|
|
@@ -38425,7 +38435,8 @@ var Obligation = function Obligation(_ref) {
|
|
|
38425
38435
|
paymentPlanSchedule = _ref.paymentPlanSchedule,
|
|
38426
38436
|
navigateToSettings = _ref.navigateToSettings,
|
|
38427
38437
|
isMobile = _ref.isMobile,
|
|
38428
|
-
isPaymentPlan = _ref.isPaymentPlan
|
|
38438
|
+
isPaymentPlan = _ref.isPaymentPlan,
|
|
38439
|
+
nextAutopayDate = _ref.nextAutopayDate;
|
|
38429
38440
|
var obligation = obligations[0];
|
|
38430
38441
|
var customAttributes = obligation.customAttributes;
|
|
38431
38442
|
return /*#__PURE__*/React__default.createElement(Box, {
|
|
@@ -38471,7 +38482,8 @@ var Obligation = function Obligation(_ref) {
|
|
|
38471
38482
|
navigateToSettings: navigateToSettings,
|
|
38472
38483
|
autoPaySchedule: autoPaySchedule,
|
|
38473
38484
|
paymentPlanSchedule: paymentPlanSchedule,
|
|
38474
|
-
isPaymentPlan: isPaymentPlan
|
|
38485
|
+
isPaymentPlan: isPaymentPlan,
|
|
38486
|
+
nextAutopayDate: nextAutopayDate
|
|
38475
38487
|
}))), !isMobile && /*#__PURE__*/React__default.createElement(PaymentDetailsActions, {
|
|
38476
38488
|
obligations: obligations,
|
|
38477
38489
|
autoPayEnabled: autoPayEnabled,
|
|
@@ -38484,7 +38496,8 @@ var Obligation = function Obligation(_ref) {
|
|
|
38484
38496
|
config: config,
|
|
38485
38497
|
actions: actions,
|
|
38486
38498
|
isMobile: isMobile,
|
|
38487
|
-
isPaymentPlan: isPaymentPlan
|
|
38499
|
+
isPaymentPlan: isPaymentPlan,
|
|
38500
|
+
nextAutopayDate: nextAutopayDate
|
|
38488
38501
|
}))), isMobile && /*#__PURE__*/React__default.createElement(PaymentDetailsActions, {
|
|
38489
38502
|
obligations: obligations,
|
|
38490
38503
|
autoPayEnabled: autoPayEnabled,
|
|
@@ -38497,7 +38510,8 @@ var Obligation = function Obligation(_ref) {
|
|
|
38497
38510
|
config: config,
|
|
38498
38511
|
actions: actions,
|
|
38499
38512
|
isMobile: isMobile,
|
|
38500
|
-
isPaymentPlan: isPaymentPlan
|
|
38513
|
+
isPaymentPlan: isPaymentPlan,
|
|
38514
|
+
nextAutopayDate: nextAutopayDate
|
|
38501
38515
|
}));
|
|
38502
38516
|
};
|
|
38503
38517
|
|
package/package.json
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from "react";
|
|
1
|
+
import React, { Fragment } from "react";
|
|
2
2
|
import { fallbackValues } from "./CollapsibleSection.theme";
|
|
3
3
|
import { AnimatePresence } from "framer-motion";
|
|
4
4
|
import { themeComponent } from "../../../util/themeUtils";
|
|
@@ -19,7 +19,9 @@ const CollapsibleSection = ({
|
|
|
19
19
|
initiallyOpen = true,
|
|
20
20
|
openHeight = "auto",
|
|
21
21
|
children,
|
|
22
|
-
customTitle = false
|
|
22
|
+
customTitle = false,
|
|
23
|
+
stackTitle = false,
|
|
24
|
+
stackTitleContent
|
|
23
25
|
}) => {
|
|
24
26
|
const handleKeyDown = e => {
|
|
25
27
|
if (e.keyCode === 13) {
|
|
@@ -68,7 +70,8 @@ const CollapsibleSection = ({
|
|
|
68
70
|
animate={isOpen ? "open" : "closed"}
|
|
69
71
|
positionTransition
|
|
70
72
|
>
|
|
71
|
-
|
|
73
|
+
{stackTitle && <Fragment>{stackTitleContent}</Fragment>}
|
|
74
|
+
<Stack childGap={isOpen && !isMobile ? "0.5rem" : "0rem"}>
|
|
72
75
|
<Box
|
|
73
76
|
padding={customPadding ? customPadding : "0"}
|
|
74
77
|
background={themeValues.headingBackgroundColor}
|
|
@@ -9,14 +9,15 @@ import {
|
|
|
9
9
|
} from "./EditableTable.styled";
|
|
10
10
|
import { Box } from "../../atoms/layouts";
|
|
11
11
|
import Text from "../../atoms/text";
|
|
12
|
-
import { CHARADE_GREY } from "../../../constants/colors";
|
|
12
|
+
import { CHARADE_GREY, GHOST_GREY } from "../../../constants/colors";
|
|
13
13
|
|
|
14
14
|
const TableListItem = ({
|
|
15
15
|
title,
|
|
16
16
|
value,
|
|
17
17
|
canEdit = false,
|
|
18
18
|
canRemove = false,
|
|
19
|
-
isMobile
|
|
19
|
+
isMobile,
|
|
20
|
+
borderTopItem
|
|
20
21
|
}) => (
|
|
21
22
|
<Box
|
|
22
23
|
padding="0px"
|
|
@@ -24,7 +25,15 @@ const TableListItem = ({
|
|
|
24
25
|
> * {
|
|
25
26
|
border-bottom: none;
|
|
26
27
|
}
|
|
28
|
+
}
|
|
29
|
+
${isMobile &&
|
|
30
|
+
borderTopItem &&
|
|
31
|
+
`&:first-child {
|
|
32
|
+
> * {
|
|
33
|
+
border-top: 1px solid ${GHOST_GREY};
|
|
34
|
+
}
|
|
27
35
|
}`}
|
|
36
|
+
`}
|
|
28
37
|
>
|
|
29
38
|
<ItemWrapper>
|
|
30
39
|
<EditableTableListItem isMobile={isMobile}>
|
|
@@ -25,12 +25,12 @@ const EmailForm = ({
|
|
|
25
25
|
useEffect(() => () => actions.form.clear(), []);
|
|
26
26
|
}
|
|
27
27
|
const emailFieldErrorMessages = {
|
|
28
|
-
[required.error]: "Email is required",
|
|
28
|
+
[required.error]: "Email address is required",
|
|
29
29
|
[isProbablyEmail.error]: "Invalid email address"
|
|
30
30
|
};
|
|
31
31
|
|
|
32
32
|
return (
|
|
33
|
-
<FormContainer variant={variant} role="form" aria-label="Email">
|
|
33
|
+
<FormContainer variant={variant} role="form" aria-label="Email address">
|
|
34
34
|
{guestCheckout && (
|
|
35
35
|
<Paragraph margin="0 0 1.125rem 0">
|
|
36
36
|
If desired, you can create a wallet later for faster checkout
|
|
@@ -38,7 +38,7 @@ const EmailForm = ({
|
|
|
38
38
|
)}
|
|
39
39
|
<FormInputColumn>
|
|
40
40
|
<FormInput
|
|
41
|
-
labelTextWhenNoError="Email"
|
|
41
|
+
labelTextWhenNoError="Email address"
|
|
42
42
|
errorMessages={emailFieldErrorMessages}
|
|
43
43
|
type="email"
|
|
44
44
|
field={fields.email}
|
|
@@ -14,13 +14,13 @@ const ForgotPasswordForm = ({
|
|
|
14
14
|
useEffect(() => () => actions.form.clear(), []);
|
|
15
15
|
}
|
|
16
16
|
const EmailErrorMessages = {
|
|
17
|
-
[required.error]: "Email is required",
|
|
18
|
-
[isProbablyEmail.error]: "Email is not valid"
|
|
17
|
+
[required.error]: "Email address is required",
|
|
18
|
+
[isProbablyEmail.error]: "Email address is not valid"
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
return (
|
|
22
22
|
<FormInput
|
|
23
|
-
labelTextWhenNoError="Email"
|
|
23
|
+
labelTextWhenNoError="Email address"
|
|
24
24
|
errorMessages={EmailErrorMessages}
|
|
25
25
|
field={fields.email}
|
|
26
26
|
fieldActions={actions.fields.email}
|
|
@@ -14,7 +14,7 @@ const LoginForm = ({
|
|
|
14
14
|
useEffect(() => () => actions.form.clear(), []);
|
|
15
15
|
}
|
|
16
16
|
const emailErrorMessages = {
|
|
17
|
-
[required.error]: "Email is required",
|
|
17
|
+
[required.error]: "Email address is required",
|
|
18
18
|
[isProbablyEmail.error]: "Invalid email address"
|
|
19
19
|
};
|
|
20
20
|
const passwordErrorMessages = {
|
|
@@ -23,7 +23,7 @@ const LoginForm = ({
|
|
|
23
23
|
return (
|
|
24
24
|
<FormInputColumn role="form" aria-label="Login">
|
|
25
25
|
<FormInput
|
|
26
|
-
labelTextWhenNoError="Email"
|
|
26
|
+
labelTextWhenNoError="Email address"
|
|
27
27
|
errorMessages={emailErrorMessages}
|
|
28
28
|
type="email"
|
|
29
29
|
field={fields.email}
|
|
@@ -20,7 +20,8 @@ const Obligation = ({
|
|
|
20
20
|
paymentPlanSchedule,
|
|
21
21
|
navigateToSettings,
|
|
22
22
|
isMobile,
|
|
23
|
-
isPaymentPlan
|
|
23
|
+
isPaymentPlan,
|
|
24
|
+
nextAutopayDate
|
|
24
25
|
}) => {
|
|
25
26
|
const obligation = obligations[0];
|
|
26
27
|
const { customAttributes } = obligation;
|
|
@@ -71,6 +72,7 @@ const Obligation = ({
|
|
|
71
72
|
autoPaySchedule={autoPaySchedule}
|
|
72
73
|
paymentPlanSchedule={paymentPlanSchedule}
|
|
73
74
|
isPaymentPlan={isPaymentPlan}
|
|
75
|
+
nextAutopayDate={nextAutopayDate}
|
|
74
76
|
/>
|
|
75
77
|
)}
|
|
76
78
|
</Cluster>
|
|
@@ -89,6 +91,7 @@ const Obligation = ({
|
|
|
89
91
|
actions={actions}
|
|
90
92
|
isMobile={isMobile}
|
|
91
93
|
isPaymentPlan={isPaymentPlan}
|
|
94
|
+
nextAutopayDate={nextAutopayDate}
|
|
92
95
|
/>
|
|
93
96
|
)}
|
|
94
97
|
</Stack>
|
|
@@ -107,6 +110,7 @@ const Obligation = ({
|
|
|
107
110
|
actions={actions}
|
|
108
111
|
isMobile={isMobile}
|
|
109
112
|
isPaymentPlan={isPaymentPlan}
|
|
113
|
+
nextAutopayDate={nextAutopayDate}
|
|
110
114
|
/>
|
|
111
115
|
)}
|
|
112
116
|
</Box>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { useState } from "react";
|
|
2
|
-
import Text from "../../../atoms/text";
|
|
3
2
|
import AmountCallout from "../../../atoms/amount-callout";
|
|
4
3
|
import { Box, Stack } from "../../../atoms/layouts";
|
|
4
|
+
import Text from "../../../atoms/text";
|
|
5
5
|
import { FONT_WEIGHT_SEMIBOLD } from "../../../../constants/style_constants";
|
|
6
6
|
import { displayCurrency } from "../../../../util/general";
|
|
7
7
|
import { AutopayModalModule } from "./AutopayModalModule";
|
|
@@ -14,19 +14,18 @@ const AmountModule = ({
|
|
|
14
14
|
navigateToSettings,
|
|
15
15
|
autoPaySchedule,
|
|
16
16
|
paymentPlanSchedule,
|
|
17
|
-
isPaymentPlan
|
|
17
|
+
isPaymentPlan,
|
|
18
|
+
nextAutopayDate
|
|
18
19
|
}) => {
|
|
19
20
|
const [modalOpen, toggleModal] = useState(false);
|
|
20
21
|
return (
|
|
21
22
|
<Box padding="0 0.25rem 0 0">
|
|
22
23
|
<Stack childGap="0">
|
|
23
|
-
|
|
24
|
-
variant="pS"
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
{isMobile ? "Total Due" : "Total Amount Due"}
|
|
29
|
-
</Text>
|
|
24
|
+
{isMobile && (
|
|
25
|
+
<Text variant="pS" weight={FONT_WEIGHT_SEMIBOLD} textAlign="left">
|
|
26
|
+
Amount Due
|
|
27
|
+
</Text>
|
|
28
|
+
)}
|
|
30
29
|
<AmountCallout
|
|
31
30
|
amount={displayCurrency(totalAmountDue)}
|
|
32
31
|
textAlign={isMobile ? "left" : "right"}
|
|
@@ -42,6 +41,7 @@ const AmountModule = ({
|
|
|
42
41
|
isMobile={isMobile}
|
|
43
42
|
paymentPlanSchedule={paymentPlanSchedule}
|
|
44
43
|
isPaymentPlan={isPaymentPlan}
|
|
44
|
+
nextAutopayDate={nextAutopayDate}
|
|
45
45
|
/>
|
|
46
46
|
)}
|
|
47
47
|
</Stack>
|
|
@@ -4,6 +4,7 @@ import ButtonWithAction from "../../../atoms/button-with-action";
|
|
|
4
4
|
import Text from "../../../atoms/text";
|
|
5
5
|
import { AutopayOnIcon } from "../../../atoms/icons";
|
|
6
6
|
import { Box, Cluster } from "../../../atoms/layouts";
|
|
7
|
+
import { SEA_GREEN } from "../../../../constants/colors";
|
|
7
8
|
import { fallbackValues } from "./AutopayModalModule.theme";
|
|
8
9
|
import { themeComponent } from "../../../../util/themeUtils";
|
|
9
10
|
|
|
@@ -18,7 +19,8 @@ const AutopayModal = ({
|
|
|
18
19
|
buttonLinkType,
|
|
19
20
|
isMobile,
|
|
20
21
|
themeValues,
|
|
21
|
-
isPaymentPlan
|
|
22
|
+
isPaymentPlan,
|
|
23
|
+
nextAutopayDate
|
|
22
24
|
}) => {
|
|
23
25
|
const planType = isPaymentPlan ? "Payment Plan" : "Autopay";
|
|
24
26
|
const modalExtraProps = {
|
|
@@ -101,12 +103,12 @@ const AutopayModal = ({
|
|
|
101
103
|
}}
|
|
102
104
|
tabIndex="0"
|
|
103
105
|
dataQa={`${planType} On`}
|
|
104
|
-
color={
|
|
106
|
+
color={SEA_GREEN}
|
|
105
107
|
weight={themeValues.fontWeight}
|
|
106
108
|
hoverStyles={themeValues.modalLinkHoverFocus}
|
|
107
|
-
extraStyles={`padding: 0
|
|
109
|
+
extraStyles={`padding-left: 0.25rem;`}
|
|
108
110
|
>
|
|
109
|
-
{`${planType}
|
|
111
|
+
{`${planType} ${nextAutopayDate}`}
|
|
110
112
|
</Text>
|
|
111
113
|
</Cluster>
|
|
112
114
|
</Box>
|
|
@@ -17,7 +17,8 @@ const PaymentDetailsActions = ({
|
|
|
17
17
|
navigateToSettings,
|
|
18
18
|
autoPaySchedule,
|
|
19
19
|
paymentPlanSchedule,
|
|
20
|
-
isPaymentPlan
|
|
20
|
+
isPaymentPlan,
|
|
21
|
+
nextAutopayDate
|
|
21
22
|
}) => {
|
|
22
23
|
const planType = isPaymentPlan ? "Payment Plan" : "Autopay";
|
|
23
24
|
const [isLoading, setIsLoading] = useState(false);
|
|
@@ -69,6 +70,7 @@ const PaymentDetailsActions = ({
|
|
|
69
70
|
autoPaySchedule={autoPaySchedule}
|
|
70
71
|
paymentPlanSchedule={paymentPlanSchedule}
|
|
71
72
|
isPaymentPlan={isPaymentPlan}
|
|
73
|
+
nextAutopayDate={nextAutopayDate}
|
|
72
74
|
/>
|
|
73
75
|
</Cluster>
|
|
74
76
|
</Box>
|
|
@@ -122,6 +124,7 @@ const PaymentDetailsActions = ({
|
|
|
122
124
|
isMobile={isMobile}
|
|
123
125
|
paymentPlanSchedule={paymentPlanSchedule}
|
|
124
126
|
isPaymentPlan={isPaymentPlan}
|
|
127
|
+
nextAutopayDate={nextAutopayDate}
|
|
125
128
|
/>
|
|
126
129
|
)}
|
|
127
130
|
</Box>
|