@thecb/components 11.5.2 → 11.6.1-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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thecb/components",
3
- "version": "11.5.2",
3
+ "version": "11.6.1-beta.0",
4
4
  "description": "Common lib for CityBase react components",
5
5
  "main": "dist/index.cjs.js",
6
6
  "typings": "dist/index.d.ts",
@@ -22,7 +22,8 @@
22
22
  },
23
23
  "files": [
24
24
  "dist",
25
- "src"
25
+ "src",
26
+ "ai-docs"
26
27
  ],
27
28
  "homepage": "https://github.com/CityBaseInc/cb-components#readme",
28
29
  "devDependencies": {
@@ -26,6 +26,7 @@ const Obligation = ({
26
26
  autoPayAvailable,
27
27
  handleAutopayAction,
28
28
  deactivatePaymentSchedule,
29
+ deactivatingSchedule = false,
29
30
  autoPaySchedule,
30
31
  paymentPlanSchedule,
31
32
  navigateToSettings,
@@ -127,6 +128,7 @@ const Obligation = ({
127
128
  autoPayAvailable={autoPayAvailable}
128
129
  handleAutopayAction={handleAutopayAction}
129
130
  deactivatePaymentSchedule={deactivatePaymentSchedule}
131
+ deactivatingSchedule={deactivatingSchedule}
130
132
  autoPaySchedule={autoPaySchedule}
131
133
  paymentPlanSchedule={paymentPlanSchedule}
132
134
  navigateToSettings={navigateToSettings}
@@ -153,6 +155,7 @@ const Obligation = ({
153
155
  autoPayAvailable={autoPayAvailable}
154
156
  handleAutopayAction={handleAutopayAction}
155
157
  deactivatePaymentSchedule={deactivatePaymentSchedule}
158
+ deactivatingSchedule={deactivatingSchedule}
156
159
  autoPaySchedule={autoPaySchedule}
157
160
  paymentPlanSchedule={paymentPlanSchedule}
158
161
  navigateToSettings={navigateToSettings}
@@ -244,6 +247,7 @@ const Obligation = ({
244
247
  autoPayAvailable={autoPayAvailable}
245
248
  handleAutopayAction={handleAutopayAction}
246
249
  deactivatePaymentSchedule={deactivatePaymentSchedule}
250
+ deactivatingSchedule={deactivatingSchedule}
247
251
  autoPaySchedule={autoPaySchedule}
248
252
  paymentPlanSchedule={paymentPlanSchedule}
249
253
  navigateToSettings={navigateToSettings}
@@ -272,6 +276,7 @@ const Obligation = ({
272
276
  autoPayAvailable={autoPayAvailable}
273
277
  handleAutopayAction={handleAutopayAction}
274
278
  deactivatePaymentSchedule={deactivatePaymentSchedule}
279
+ deactivatingSchedule={deactivatingSchedule}
275
280
  autoPaySchedule={autoPaySchedule}
276
281
  paymentPlanSchedule={paymentPlanSchedule}
277
282
  navigateToSettings={navigateToSettings}
@@ -18,6 +18,7 @@ const meta = {
18
18
  autoPayAvailable: false,
19
19
  handleAutopayAction: fn(),
20
20
  deactivatePaymentSchedule: fn(),
21
+ deactivatingSchedule: false,
21
22
  autoPaySchedule: undefined,
22
23
  paymentPlanSchedule: undefined,
23
24
  navigateToSettings: fn(),
@@ -84,6 +85,13 @@ const meta = {
84
85
  defaultValue: { summary: undefined }
85
86
  }
86
87
  },
88
+ deactivatingSchedule: {
89
+ description: "Loading state when a payment schedule is being deactivated",
90
+ table: {
91
+ type: { summary: "boolean" },
92
+ defaultValue: { summary: false }
93
+ }
94
+ },
87
95
  autoPaySchedule: {
88
96
  description: "Schedule object for autopay",
89
97
  table: {
@@ -1,4 +1,4 @@
1
- import React from "react";
1
+ import React, { useEffect } from "react";
2
2
  import Modal from "../../modal";
3
3
  import ButtonWithAction from "../../../atoms/button-with-action";
4
4
  import Text from "../../../atoms/text";
@@ -17,6 +17,7 @@ const AutopayModalModule = ({
17
17
  toggleModal,
18
18
  modalOpen,
19
19
  deactivatePaymentSchedule,
20
+ deactivatingSchedule,
20
21
  navigateToSettings,
21
22
  controlType = "tertiary",
22
23
  isMobile,
@@ -53,6 +54,14 @@ const AutopayModalModule = ({
53
54
  description
54
55
  )}: ${titleCaseString(subDescription)}`;
55
56
  const nextDate = dueDate || nextAutopayDate;
57
+
58
+ // Close modal when deactivation successfully completes.
59
+ useEffect(() => {
60
+ if (autoPayActive && deactivatingSchedule === false) {
61
+ toggleModal(false);
62
+ }
63
+ }, [autoPayActive, deactivatingSchedule]);
64
+
56
65
  const modalExtraProps = {
57
66
  modalHeaderText: autoPayActive ? deactivateText : activateText,
58
67
  modalBodyText: autoPayActive ? (
@@ -85,9 +94,9 @@ const AutopayModalModule = ({
85
94
  isPaymentPlan ? paymentPlanSchedule : autoPaySchedule,
86
95
  isPaymentPlan
87
96
  );
88
- toggleModal(false);
89
97
  }
90
- : navigateToSettings
98
+ : navigateToSettings,
99
+ isLoading: deactivatingSchedule
91
100
  };
92
101
  const modalLinkHoverFocus = `
93
102
  outline: none;
@@ -15,6 +15,7 @@ const PaymentDetailsActions = ({
15
15
  autoPayAvailable,
16
16
  handleAutopayAction,
17
17
  deactivatePaymentSchedule,
18
+ deactivatingSchedule,
18
19
  navigateToSettings,
19
20
  autoPaySchedule,
20
21
  paymentPlanSchedule,
@@ -162,6 +163,7 @@ const PaymentDetailsActions = ({
162
163
  modalOpen={modalOpen}
163
164
  navigateToSettings={navigateToSettings}
164
165
  deactivatePaymentSchedule={deactivatePaymentSchedule}
166
+ deactivatingSchedule={deactivatingSchedule}
165
167
  controlType="tertiary"
166
168
  isMobile={isMobile}
167
169
  paymentPlanSchedule={paymentPlanSchedule}