@thecb/components 7.8.3 → 7.9.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -25491,7 +25491,9 @@ var LineItem = function LineItem(_ref) {
25491
25491
  var description = _ref.description,
25492
25492
  subDescription = _ref.subDescription,
25493
25493
  amount = _ref.amount,
25494
- themeValues = _ref.themeValues;
25494
+ themeValues = _ref.themeValues,
25495
+ _ref$quantity = _ref.quantity,
25496
+ quantity = _ref$quantity === void 0 ? null : _ref$quantity;
25495
25497
  return /*#__PURE__*/React.createElement(Cluster, {
25496
25498
  nowrap: true,
25497
25499
  justify: "space-between",
@@ -25504,7 +25506,10 @@ var LineItem = function LineItem(_ref) {
25504
25506
  }, description), /*#__PURE__*/React.createElement(Paragraph$1, {
25505
25507
  variant: themeValues.paragraphVariant,
25506
25508
  weight: "400"
25507
- }, subDescription)), /*#__PURE__*/React.createElement(Paragraph$1, {
25509
+ }, subDescription)), !!quantity && /*#__PURE__*/React.createElement(Paragraph$1, {
25510
+ variant: themeValues.paragraphVariant,
25511
+ weight: themeValues.weightTitle
25512
+ }, "x".concat(quantity)), /*#__PURE__*/React.createElement(Paragraph$1, {
25508
25513
  variant: themeValues.paragraphVariant,
25509
25514
  weight: "600",
25510
25515
  extraStyles: "margin: 0; text-align: end; min-width: fit-content; padding-left: 32px;"
@@ -47143,6 +47148,101 @@ var AccountAndRoutingModal = function AccountAndRoutingModal(_ref) {
47143
47148
 
47144
47149
  var AccountAndRoutingModal$1 = themeComponent(AccountAndRoutingModal, "AccountAndRoutingModal", fallbackValues$L, "default");
47145
47150
 
47151
+ var backgroundColor$c = {
47152
+ "default": "#ffffff",
47153
+ footer: "#ffffff"
47154
+ };
47155
+ var linkColor$6 = {
47156
+ "default": "#3176AA",
47157
+ footer: "#ffffff"
47158
+ };
47159
+ var border$3 = {
47160
+ "default": "#cdcdcd",
47161
+ footer: "#cdcdcd"
47162
+ };
47163
+ var fontSize$b = {
47164
+ "default": "1rem",
47165
+ footer: "0.875rem"
47166
+ };
47167
+ var lineHeight$5 = {
47168
+ "default": "1.5rem",
47169
+ footer: "1.25rem"
47170
+ };
47171
+ var fontWeight$8 = {
47172
+ "default": FONT_WEIGHT_REGULAR,
47173
+ footer: FONT_WEIGHT_SEMIBOLD
47174
+ };
47175
+ var standardInteractionStyles = "\n &:hover {\n outline: none; \n text-decoration: underline;\n }\n &:focus {\n outline: 3px solid #3181E3;\n outline-offset: 2px;\n }\n";
47176
+ var modalLinkHoverFocus$2 = {
47177
+ "default": standardInteractionStyles,
47178
+ footer: standardInteractionStyles
47179
+ };
47180
+ var fallbackValues$M = {
47181
+ backgroundColor: backgroundColor$c,
47182
+ linkColor: linkColor$6,
47183
+ border: border$3,
47184
+ fontSize: fontSize$b,
47185
+ lineHeight: lineHeight$5,
47186
+ fontWeight: fontWeight$8,
47187
+ modalLinkHoverFocus: modalLinkHoverFocus$2
47188
+ };
47189
+
47190
+ var TermsAndConditionsModal = function TermsAndConditionsModal(_ref) {
47191
+ var link = _ref.link,
47192
+ _ref$title = _ref.title,
47193
+ title = _ref$title === void 0 ? "Terms & Conditions" : _ref$title,
47194
+ isOpen = _ref.isOpen,
47195
+ toggleOpen = _ref.toggleOpen,
47196
+ toggleAccepted = _ref.toggleAccepted,
47197
+ acceptText = _ref.acceptText,
47198
+ terms = _ref.terms,
47199
+ variant = _ref.variant,
47200
+ _ref$linkVariant = _ref.linkVariant,
47201
+ linkVariant = _ref$linkVariant === void 0 ? "p" : _ref$linkVariant,
47202
+ themeValues = _ref.themeValues;
47203
+ return /*#__PURE__*/React.createElement(Modal$1, {
47204
+ modalOpen: isOpen,
47205
+ hideModal: function hideModal() {
47206
+ return toggleOpen(false);
47207
+ },
47208
+ showModal: function showModal() {
47209
+ return toggleOpen(true);
47210
+ },
47211
+ modalHeaderText: title,
47212
+ modalBodyText: /*#__PURE__*/React.createElement(Box, {
47213
+ background: themeValues.backgroundColor,
47214
+ border: "1px solid ".concat(themeValues.border),
47215
+ borderRadius: "3px",
47216
+ extraStyles: "overflow: scroll; max-height: 20rem;"
47217
+ }, /*#__PURE__*/React.createElement(Text$1, {
47218
+ variant: "p",
47219
+ extraStyles: "& a { text-decoration: underline; }"
47220
+ }, terms)),
47221
+ defaultWrapper: false,
47222
+ onlyCloseButton: !acceptText,
47223
+ continueButtonText: acceptText,
47224
+ continueAction: function continueAction() {
47225
+ toggleAccepted(true);
47226
+ toggleOpen(false);
47227
+ }
47228
+ }, /*#__PURE__*/React.createElement(Text$1, {
47229
+ variant: linkVariant,
47230
+ onClick: function onClick() {
47231
+ return toggleOpen(true);
47232
+ },
47233
+ onKeyPress: function onKeyPress(e) {
47234
+ return e.key === "Enter" && toggleOpen(true);
47235
+ },
47236
+ tabIndex: "0",
47237
+ color: themeValues.linkColor,
47238
+ weight: themeValues.fontWeight,
47239
+ hoverStyles: themeValues.modalLinkHoverFocus,
47240
+ extraStyles: "display: inline-block; width: fit-content; cursor: pointer"
47241
+ }, link));
47242
+ };
47243
+
47244
+ var TermsAndConditionsModal$1 = themeComponent(TermsAndConditionsModal, "TermsAndConditionsModal", fallbackValues$M, "default");
47245
+
47146
47246
  var PaymentFormACH = function PaymentFormACH(_ref) {
47147
47247
  var _routingNumberErrors, _accountNumberErrors;
47148
47248
 
@@ -47161,7 +47261,10 @@ var PaymentFormACH = function PaymentFormACH(_ref) {
47161
47261
  handleSubmit = _ref$handleSubmit === void 0 ? noop : _ref$handleSubmit,
47162
47262
  showWalletCheckbox = _ref.showWalletCheckbox,
47163
47263
  saveToWallet = _ref.saveToWallet,
47164
- walletCheckboxMarked = _ref.walletCheckboxMarked;
47264
+ walletCheckboxMarked = _ref.walletCheckboxMarked,
47265
+ termsContent = _ref.termsContent,
47266
+ _ref$termsTitle = _ref.termsTitle,
47267
+ termsTitle = _ref$termsTitle === void 0 ? "Terms & Conditions" : _ref$termsTitle;
47165
47268
 
47166
47269
  if (clearOnDismount) {
47167
47270
  useEffect$1(function () {
@@ -47181,6 +47284,14 @@ var PaymentFormACH = function PaymentFormACH(_ref) {
47181
47284
  showAccount = _useState4[0],
47182
47285
  toggleShowAccount = _useState4[1];
47183
47286
 
47287
+ var _useState5 = useState(false),
47288
+ _useState6 = _slicedToArray(_useState5, 2),
47289
+ termsModalOpen = _useState6[0],
47290
+ setTermsModalOpen = _useState6[1];
47291
+
47292
+ var showTerms = !!termsContent;
47293
+ var showTermsLinkVariant = showWalletCheckbox ? "p" : "pS";
47294
+
47184
47295
  var nameErrors = _defineProperty({}, required.error, "Name is required");
47185
47296
 
47186
47297
  var routingNumberErrors = (_routingNumberErrors = {}, _defineProperty(_routingNumberErrors, required.error, "Routing number is required"), _defineProperty(_routingNumberErrors, hasLength.error, "Routing number must be 9 digits"), _defineProperty(_routingNumberErrors, isRoutingNumber.error, "Invalid routing number"), _routingNumberErrors);
@@ -47289,12 +47400,27 @@ var PaymentFormACH = function PaymentFormACH(_ref) {
47289
47400
  onChange: toggleCheckbox,
47290
47401
  checked: defaultMethod.value,
47291
47402
  hidden: hideDefaultPayment
47292
- }), showWalletCheckbox && /*#__PURE__*/React.createElement(Checkbox$1, {
47403
+ }), (showWalletCheckbox || showTerms) && /*#__PURE__*/React.createElement(Cluster, {
47404
+ childGap: "4px"
47405
+ }, showWalletCheckbox && /*#__PURE__*/React.createElement(Checkbox$1, {
47293
47406
  name: "bank checkbox",
47294
- title: "Save checking account to wallet",
47407
+ title: "Save checking account to wallet.",
47295
47408
  checked: walletCheckboxMarked,
47296
47409
  onChange: saveToWallet
47297
- })));
47410
+ }), showTerms && /*#__PURE__*/React.createElement(Cover, {
47411
+ singleChild: true
47412
+ }, /*#__PURE__*/React.createElement(Cluster, {
47413
+ childGap: 0
47414
+ }, /*#__PURE__*/React.createElement(Text$1, {
47415
+ variant: showTermsLinkVariant
47416
+ }, "View\xA0"), /*#__PURE__*/React.createElement(TermsAndConditionsModal$1, {
47417
+ link: termsTitle,
47418
+ linkVariant: showTermsLinkVariant,
47419
+ terms: termsContent,
47420
+ title: termsTitle,
47421
+ isOpen: termsModalOpen,
47422
+ toggleOpen: setTermsModalOpen
47423
+ }))))));
47298
47424
  };
47299
47425
 
47300
47426
  var formConfig$6 = {
@@ -47348,11 +47474,21 @@ var PaymentFormCard = function PaymentFormCard(_ref) {
47348
47474
  showWalletCheckbox = _ref.showWalletCheckbox,
47349
47475
  saveToWallet = _ref.saveToWallet,
47350
47476
  walletCheckboxMarked = _ref.walletCheckboxMarked,
47351
- deniedCards = _ref.deniedCards;
47477
+ deniedCards = _ref.deniedCards,
47478
+ termsContent = _ref.termsContent,
47479
+ _ref$termsTitle = _ref.termsTitle,
47480
+ termsTitle = _ref$termsTitle === void 0 ? "Terms & Conditions" : _ref$termsTitle;
47352
47481
 
47353
47482
  var _useContext = useContext(ThemeContext),
47354
47483
  isMobile = _useContext.isMobile;
47355
47484
 
47485
+ var _useState = useState(false),
47486
+ _useState2 = _slicedToArray(_useState, 2),
47487
+ termsModalOpen = _useState2[0],
47488
+ setTermsModalOpen = _useState2[1];
47489
+
47490
+ var showTerms = !!termsContent;
47491
+ var showTermsLinkVariant = showWalletCheckbox ? "p" : "pS";
47356
47492
  useEffect$1(function () {
47357
47493
  if (deniedCards) {
47358
47494
  deniedCards.map(function (card) {
@@ -47461,12 +47597,27 @@ var PaymentFormCard = function PaymentFormCard(_ref) {
47461
47597
  return e.key === "Enter" && handleSubmit(e);
47462
47598
  },
47463
47599
  autocomplete: "billing postal-code"
47464
- })), showWalletCheckbox && /*#__PURE__*/React.createElement(Checkbox$1, {
47600
+ })), (showWalletCheckbox || showTerms) && /*#__PURE__*/React.createElement(Cluster, {
47601
+ childGap: "4px"
47602
+ }, showWalletCheckbox && /*#__PURE__*/React.createElement(Checkbox$1, {
47465
47603
  name: "credit card checkbox",
47466
- title: "Save credit card to wallet",
47604
+ title: "Save credit card to wallet.",
47467
47605
  checked: walletCheckboxMarked,
47468
47606
  onChange: saveToWallet
47469
- })));
47607
+ }), showTerms && /*#__PURE__*/React.createElement(Cover, {
47608
+ singleChild: true
47609
+ }, /*#__PURE__*/React.createElement(Cluster, {
47610
+ childGap: 0
47611
+ }, /*#__PURE__*/React.createElement(Text$1, {
47612
+ variant: showTermsLinkVariant
47613
+ }, "View\xA0"), /*#__PURE__*/React.createElement(TermsAndConditionsModal$1, {
47614
+ link: termsTitle,
47615
+ linkVariant: showTermsLinkVariant,
47616
+ terms: termsContent,
47617
+ title: termsTitle,
47618
+ isOpen: termsModalOpen,
47619
+ toggleOpen: setTermsModalOpen
47620
+ }))))));
47470
47621
  };
47471
47622
 
47472
47623
  var PaymentFormCard$1 = withWindowSize(PaymentFormCard);
@@ -47747,7 +47898,7 @@ var headingDisabledColor = "".concat(ATHENS_GREY);
47747
47898
  var bodyBackgroundColor$1 = "#eeeeee";
47748
47899
  var borderColor$5 = "".concat(GREY_CHATEAU);
47749
47900
  var focusStyles = "outline: none;";
47750
- var fallbackValues$M = {
47901
+ var fallbackValues$N = {
47751
47902
  headingBackgroundColor: headingBackgroundColor$1,
47752
47903
  headingDisabledColor: headingDisabledColor,
47753
47904
  bodyBackgroundColor: bodyBackgroundColor$1,
@@ -47935,7 +48086,7 @@ var RadioSection = function RadioSection(_ref) {
47935
48086
  })));
47936
48087
  };
47937
48088
 
47938
- var RadioSection$1 = themeComponent(RadioSection, "RadioSection", fallbackValues$M);
48089
+ var RadioSection$1 = themeComponent(RadioSection, "RadioSection", fallbackValues$N);
47939
48090
 
47940
48091
  var RegistrationForm = function RegistrationForm(_ref) {
47941
48092
  var _emailErrorMessages, _passwordErrorMessage;
@@ -48232,7 +48383,7 @@ var ResetPasswordSuccess = withWindowSize(ResetConfirmationForm$2);
48232
48383
  var activeTabBackground = "#FFFFFF";
48233
48384
  var activeTabAccent = "#15749D";
48234
48385
  var activeTabHover = "#B8D5E1";
48235
- var fallbackValues$N = {
48386
+ var fallbackValues$O = {
48236
48387
  activeTabBackground: activeTabBackground,
48237
48388
  activeTabAccent: activeTabAccent,
48238
48389
  activeTabHover: activeTabHover
@@ -48311,12 +48462,12 @@ var Tabs = function Tabs(_ref) {
48311
48462
  }))));
48312
48463
  };
48313
48464
 
48314
- var Tabs$1 = themeComponent(Tabs, "NavigationTab", fallbackValues$N);
48465
+ var Tabs$1 = themeComponent(Tabs, "NavigationTab", fallbackValues$O);
48315
48466
 
48316
48467
  var activeTabBackground$1 = "#FFFFFF";
48317
48468
  var activeTabAccent$1 = "#15749D";
48318
48469
  var activeTabHover$1 = "#B8D5E1";
48319
- var fallbackValues$O = {
48470
+ var fallbackValues$P = {
48320
48471
  activeTabBackground: activeTabBackground$1,
48321
48472
  activeTabAccent: activeTabAccent$1,
48322
48473
  activeTabHover: activeTabHover$1
@@ -48372,100 +48523,7 @@ var TabSidebar = function TabSidebar(_ref) {
48372
48523
  })));
48373
48524
  };
48374
48525
 
48375
- var TabSidebar$1 = themeComponent(TabSidebar, "ProfileTab", fallbackValues$O);
48376
-
48377
- var backgroundColor$c = {
48378
- "default": "#ffffff",
48379
- footer: "#ffffff"
48380
- };
48381
- var linkColor$6 = {
48382
- "default": "#3176AA",
48383
- footer: "#ffffff"
48384
- };
48385
- var border$3 = {
48386
- "default": "#cdcdcd",
48387
- footer: "#cdcdcd"
48388
- };
48389
- var fontSize$b = {
48390
- "default": "1rem",
48391
- footer: "0.875rem"
48392
- };
48393
- var lineHeight$5 = {
48394
- "default": "1.5rem",
48395
- footer: "1.25rem"
48396
- };
48397
- var fontWeight$8 = {
48398
- "default": FONT_WEIGHT_REGULAR,
48399
- footer: FONT_WEIGHT_SEMIBOLD
48400
- };
48401
- var standardInteractionStyles = "\n &:hover {\n outline: none; \n text-decoration: underline;\n }\n &:focus {\n outline: 3px solid #3181E3;\n outline-offset: 2px;\n }\n";
48402
- var modalLinkHoverFocus$2 = {
48403
- "default": standardInteractionStyles,
48404
- footer: standardInteractionStyles
48405
- };
48406
- var fallbackValues$P = {
48407
- backgroundColor: backgroundColor$c,
48408
- linkColor: linkColor$6,
48409
- border: border$3,
48410
- fontSize: fontSize$b,
48411
- lineHeight: lineHeight$5,
48412
- fontWeight: fontWeight$8,
48413
- modalLinkHoverFocus: modalLinkHoverFocus$2
48414
- };
48415
-
48416
- var TermsAndConditionsModal = function TermsAndConditionsModal(_ref) {
48417
- var link = _ref.link,
48418
- _ref$title = _ref.title,
48419
- title = _ref$title === void 0 ? "Terms & Conditions" : _ref$title,
48420
- isOpen = _ref.isOpen,
48421
- toggleOpen = _ref.toggleOpen,
48422
- toggleAccepted = _ref.toggleAccepted,
48423
- acceptText = _ref.acceptText,
48424
- terms = _ref.terms,
48425
- variant = _ref.variant,
48426
- themeValues = _ref.themeValues;
48427
- return /*#__PURE__*/React.createElement(Modal$1, {
48428
- modalOpen: isOpen,
48429
- hideModal: function hideModal() {
48430
- return toggleOpen(false);
48431
- },
48432
- showModal: function showModal() {
48433
- return toggleOpen(true);
48434
- },
48435
- modalHeaderText: title,
48436
- modalBodyText: /*#__PURE__*/React.createElement(Box, {
48437
- background: themeValues.backgroundColor,
48438
- border: "1px solid ".concat(themeValues.border),
48439
- borderRadius: "3px",
48440
- extraStyles: "overflow: scroll; max-height: 20rem;"
48441
- }, /*#__PURE__*/React.createElement(Text$1, {
48442
- variant: "p",
48443
- extraStyles: "& a { text-decoration: underline; }"
48444
- }, terms)),
48445
- defaultWrapper: false,
48446
- onlyCloseButton: !acceptText,
48447
- continueButtonText: acceptText,
48448
- continueAction: function continueAction() {
48449
- toggleAccepted(true);
48450
- toggleOpen(false);
48451
- }
48452
- }, /*#__PURE__*/React.createElement(Text$1, {
48453
- variant: variant === "default" ? "pS" : "pXS",
48454
- onClick: function onClick() {
48455
- return toggleOpen(true);
48456
- },
48457
- onKeyPress: function onKeyPress(e) {
48458
- return e.key === "Enter" && toggleOpen(true);
48459
- },
48460
- tabIndex: "0",
48461
- color: themeValues.linkColor,
48462
- weight: themeValues.fontWeight,
48463
- hoverStyles: themeValues.modalLinkHoverFocus,
48464
- extraStyles: "display: inline-block; width: fit-content;"
48465
- }, link));
48466
- };
48467
-
48468
- var TermsAndConditionsModal$1 = themeComponent(TermsAndConditionsModal, "TermsAndConditionsModal", fallbackValues$P, "default");
48526
+ var TabSidebar$1 = themeComponent(TabSidebar, "ProfileTab", fallbackValues$P);
48469
48527
 
48470
48528
  var TermsAndConditions = function TermsAndConditions(_ref) {
48471
48529
  var onCheck = _ref.onCheck,
@@ -48473,7 +48531,8 @@ var TermsAndConditions = function TermsAndConditions(_ref) {
48473
48531
  html = _ref.html,
48474
48532
  terms = _ref.terms,
48475
48533
  _ref$error = _ref.error,
48476
- error = _ref$error === void 0 ? false : _ref$error;
48534
+ error = _ref$error === void 0 ? false : _ref$error,
48535
+ linkVariant = _ref.linkVariant;
48477
48536
 
48478
48537
  var _useState = useState(false),
48479
48538
  _useState2 = _slicedToArray(_useState, 2),
@@ -48494,7 +48553,8 @@ var TermsAndConditions = function TermsAndConditions(_ref) {
48494
48553
  link: "Learn More",
48495
48554
  terms: terms,
48496
48555
  isOpen: showTerms,
48497
- toggleOpen: toggleShowTerms
48556
+ toggleOpen: toggleShowTerms,
48557
+ linkVariant: linkVariant
48498
48558
  })))));
48499
48559
  };
48500
48560