@bigbinary/neeto-payments-frontend 6.1.11 → 6.1.12
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/AccountsDashboard.js +498 -0
- package/dist/AccountsDashboard.js.map +1 -0
- package/dist/AdminCancelRecurringPaymentButton.js +76 -0
- package/dist/AdminCancelRecurringPaymentButton.js.map +1 -0
- package/dist/CashPaymentButton.js +60 -0
- package/dist/CashPaymentButton.js.map +1 -0
- package/dist/ConfirmCashPaymentButton.js +92 -0
- package/dist/ConfirmCashPaymentButton.js.map +1 -0
- package/dist/CopyButtonWrapper-rv-OaINx.js +24 -0
- package/dist/CopyButtonWrapper-rv-OaINx.js.map +1 -0
- package/dist/CustomerCancelRecurringPaymentForm.js +102 -0
- package/dist/CustomerCancelRecurringPaymentForm.js.map +1 -0
- package/dist/ExportModal-CxKyrlwf.js +120 -0
- package/dist/ExportModal-CxKyrlwf.js.map +1 -0
- package/dist/ManualUpiConnect.js +247 -0
- package/dist/ManualUpiConnect.js.map +1 -0
- package/dist/ManualUpiPayment.js +129 -0
- package/dist/ManualUpiPayment.js.map +1 -0
- package/dist/ManualUpiPaymentConfirmButton.js +151 -0
- package/dist/ManualUpiPaymentConfirmButton.js.map +1 -0
- package/dist/ManualUpiPaymentRejectButton.js +120 -0
- package/dist/ManualUpiPaymentRejectButton.js.map +1 -0
- package/dist/PaymentKindRestrictionAlert.js +36 -0
- package/dist/PaymentKindRestrictionAlert.js.map +1 -0
- package/dist/PaymentsDashboard.js +586 -0
- package/dist/PaymentsDashboard.js.map +1 -0
- package/dist/PayoutsDashboard.js +533 -0
- package/dist/PayoutsDashboard.js.map +1 -0
- package/dist/PayoutsPage.js +136 -0
- package/dist/PayoutsPage.js.map +1 -0
- package/dist/RazorpayConnect.js +106 -0
- package/dist/RazorpayConnect.js.map +1 -0
- package/dist/RazorpayLinkedAccountForm.js +212 -0
- package/dist/RazorpayLinkedAccountForm.js.map +1 -0
- package/dist/RazorpayPaymentButton.js +155 -0
- package/dist/RazorpayPaymentButton.js.map +1 -0
- package/dist/RecurringPaymentSettings.js +119 -0
- package/dist/RecurringPaymentSettings.js.map +1 -0
- package/dist/RefundsDashboard.js +507 -0
- package/dist/RefundsDashboard.js.map +1 -0
- package/dist/SplitTransfersDashboard.js +1003 -0
- package/dist/SplitTransfersDashboard.js.map +1 -0
- package/dist/StripeCheckoutSetting.js +94 -0
- package/dist/StripeCheckoutSetting.js.map +1 -0
- package/dist/StripeConnect.js +378 -0
- package/dist/StripeConnect.js.map +1 -0
- package/dist/StripeManage.js +43 -0
- package/dist/StripeManage.js.map +1 -0
- package/dist/TaxesDashboard.js +363 -0
- package/dist/TaxesDashboard.js.map +1 -0
- package/dist/buildStripeTransactionLink.js +12 -0
- package/dist/buildStripeTransactionLink.js.map +1 -0
- package/dist/cjs/AccountsDashboard.js +500 -0
- package/dist/cjs/AccountsDashboard.js.map +1 -0
- package/dist/cjs/AdminCancelRecurringPaymentButton.js +78 -0
- package/dist/cjs/AdminCancelRecurringPaymentButton.js.map +1 -0
- package/dist/cjs/CashPaymentButton.js +62 -0
- package/dist/cjs/CashPaymentButton.js.map +1 -0
- package/dist/cjs/ConfirmCashPaymentButton.js +94 -0
- package/dist/cjs/ConfirmCashPaymentButton.js.map +1 -0
- package/dist/cjs/CopyButtonWrapper-BkpN0Wmd.js +27 -0
- package/dist/cjs/CopyButtonWrapper-BkpN0Wmd.js.map +1 -0
- package/dist/cjs/CustomerCancelRecurringPaymentForm.js +104 -0
- package/dist/cjs/CustomerCancelRecurringPaymentForm.js.map +1 -0
- package/dist/cjs/ExportModal-DxCzPCh0.js +122 -0
- package/dist/cjs/ExportModal-DxCzPCh0.js.map +1 -0
- package/dist/cjs/ManualUpiConnect.js +268 -0
- package/dist/cjs/ManualUpiConnect.js.map +1 -0
- package/dist/cjs/ManualUpiPayment.js +150 -0
- package/dist/cjs/ManualUpiPayment.js.map +1 -0
- package/dist/cjs/ManualUpiPaymentConfirmButton.js +172 -0
- package/dist/cjs/ManualUpiPaymentConfirmButton.js.map +1 -0
- package/dist/cjs/ManualUpiPaymentRejectButton.js +122 -0
- package/dist/cjs/ManualUpiPaymentRejectButton.js.map +1 -0
- package/dist/cjs/PaymentKindRestrictionAlert.js +38 -0
- package/dist/cjs/PaymentKindRestrictionAlert.js.map +1 -0
- package/dist/cjs/PaymentsDashboard.js +588 -0
- package/dist/cjs/PaymentsDashboard.js.map +1 -0
- package/dist/cjs/PayoutsDashboard.js +535 -0
- package/dist/cjs/PayoutsDashboard.js.map +1 -0
- package/dist/cjs/PayoutsPage.js +138 -0
- package/dist/cjs/PayoutsPage.js.map +1 -0
- package/dist/cjs/RazorpayConnect.js +108 -0
- package/dist/cjs/RazorpayConnect.js.map +1 -0
- package/dist/cjs/RazorpayLinkedAccountForm.js +214 -0
- package/dist/cjs/RazorpayLinkedAccountForm.js.map +1 -0
- package/dist/cjs/RazorpayPaymentButton.js +157 -0
- package/dist/cjs/RazorpayPaymentButton.js.map +1 -0
- package/dist/cjs/RecurringPaymentSettings.js +140 -0
- package/dist/cjs/RecurringPaymentSettings.js.map +1 -0
- package/dist/cjs/RefundsDashboard.js +509 -0
- package/dist/cjs/RefundsDashboard.js.map +1 -0
- package/dist/cjs/SplitTransfersDashboard.js +1024 -0
- package/dist/cjs/SplitTransfersDashboard.js.map +1 -0
- package/dist/cjs/StripeCheckoutSetting.js +96 -0
- package/dist/cjs/StripeCheckoutSetting.js.map +1 -0
- package/dist/cjs/StripeConnect.js +399 -0
- package/dist/cjs/StripeConnect.js.map +1 -0
- package/dist/cjs/StripeManage.js +45 -0
- package/dist/cjs/StripeManage.js.map +1 -0
- package/dist/cjs/TaxesDashboard.js +384 -0
- package/dist/cjs/TaxesDashboard.js.map +1 -0
- package/dist/cjs/buildStripeTransactionLink.js +14 -0
- package/dist/cjs/buildStripeTransactionLink.js.map +1 -0
- package/dist/cjs/constants.js +38 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/dashboard-DKHencVn.js +110 -0
- package/dist/cjs/dashboard-DKHencVn.js.map +1 -0
- package/dist/cjs/exportChannel-D1Wls92m.js +40 -0
- package/dist/cjs/exportChannel-D1Wls92m.js.map +1 -0
- package/dist/cjs/getAddressElementOptions.js +14 -0
- package/dist/cjs/getAddressElementOptions.js.map +1 -0
- package/dist/cjs/getAmountInLargestCurrencyUnit.js +14 -0
- package/dist/cjs/getAmountInLargestCurrencyUnit.js.map +1 -0
- package/dist/cjs/getAmountInSmallestCurrencyUnit.js +14 -0
- package/dist/cjs/getAmountInSmallestCurrencyUnit.js.map +1 -0
- package/dist/cjs/getAmountWithAppliedTax.js +14 -0
- package/dist/cjs/getAmountWithAppliedTax.js.map +1 -0
- package/dist/cjs/getFormattedAmount.js +14 -0
- package/dist/cjs/getFormattedAmount.js.map +1 -0
- package/dist/cjs/getFormattedDiscountedAmount.js +14 -0
- package/dist/cjs/getFormattedDiscountedAmount.js.map +1 -0
- package/dist/cjs/getFormattedDiscountedPercentage.js +14 -0
- package/dist/cjs/getFormattedDiscountedPercentage.js.map +1 -0
- package/dist/cjs/getFormattedTaxAmount.js +14 -0
- package/dist/cjs/getFormattedTaxAmount.js.map +1 -0
- package/dist/cjs/getFormattedTipAmount.js +14 -0
- package/dist/cjs/getFormattedTipAmount.js.map +1 -0
- package/dist/cjs/getQrCodeValue.js +14 -0
- package/dist/cjs/getQrCodeValue.js.map +1 -0
- package/dist/cjs/getTaxAmount.js +14 -0
- package/dist/cjs/getTaxAmount.js.map +1 -0
- package/dist/cjs/getTipAmount.js +14 -0
- package/dist/cjs/getTipAmount.js.map +1 -0
- package/dist/cjs/hasAmountToPay.js +14 -0
- package/dist/cjs/hasAmountToPay.js.map +1 -0
- package/dist/cjs/index-CZ_VFGNj.js +899 -0
- package/dist/cjs/index-CZ_VFGNj.js.map +1 -0
- package/dist/cjs/index.js +127 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/queryConstants-Cka1X6GX.js +35 -0
- package/dist/cjs/queryConstants-Cka1X6GX.js.map +1 -0
- package/dist/cjs/renderFunctions-CX_K4qf8.js +51 -0
- package/dist/cjs/renderFunctions-CX_K4qf8.js.map +1 -0
- package/dist/cjs/stripe.esm-CrNYjPcC.js +132 -0
- package/dist/cjs/stripe.esm-CrNYjPcC.js.map +1 -0
- package/dist/cjs/useAccountsApi-DC617yB4.js +62 -0
- package/dist/cjs/useAccountsApi-DC617yB4.js.map +1 -0
- package/dist/cjs/useIntegrationsApi-BO9PhVVO.js +26 -0
- package/dist/cjs/useIntegrationsApi-BO9PhVVO.js.map +1 -0
- package/dist/cjs/usePaymentApi-BE8xfY-U.js +39 -0
- package/dist/cjs/usePaymentApi-BE8xfY-U.js.map +1 -0
- package/dist/cjs/usePaymentApi-C9aQhuda.js +56 -0
- package/dist/cjs/usePaymentApi-C9aQhuda.js.map +1 -0
- package/dist/cjs/usePaymentApi-CrKom4eT.js +41 -0
- package/dist/cjs/usePaymentApi-CrKom4eT.js.map +1 -0
- package/dist/cjs/usePlatformApi-C7lXP6ev.js +84 -0
- package/dist/cjs/usePlatformApi-C7lXP6ev.js.map +1 -0
- package/dist/cjs/useRazorpayPayment.js +113 -0
- package/dist/cjs/useRazorpayPayment.js.map +1 -0
- package/dist/cjs/useStripePromise.js +57 -0
- package/dist/cjs/useStripePromise.js.map +1 -0
- package/dist/constants.js +8 -0
- package/dist/constants.js.map +1 -0
- package/dist/dashboard-ClEN2ygs.js +104 -0
- package/dist/dashboard-ClEN2ygs.js.map +1 -0
- package/dist/exportChannel-DAxJ44QB.js +37 -0
- package/dist/exportChannel-DAxJ44QB.js.map +1 -0
- package/dist/getAddressElementOptions.js +12 -0
- package/dist/getAddressElementOptions.js.map +1 -0
- package/dist/getAmountInLargestCurrencyUnit.js +12 -0
- package/dist/getAmountInLargestCurrencyUnit.js.map +1 -0
- package/dist/getAmountInSmallestCurrencyUnit.js +12 -0
- package/dist/getAmountInSmallestCurrencyUnit.js.map +1 -0
- package/dist/getAmountWithAppliedTax.js +12 -0
- package/dist/getAmountWithAppliedTax.js.map +1 -0
- package/dist/getFormattedAmount.js +12 -0
- package/dist/getFormattedAmount.js.map +1 -0
- package/dist/getFormattedDiscountedAmount.js +12 -0
- package/dist/getFormattedDiscountedAmount.js.map +1 -0
- package/dist/getFormattedDiscountedPercentage.js +12 -0
- package/dist/getFormattedDiscountedPercentage.js.map +1 -0
- package/dist/getFormattedTaxAmount.js +12 -0
- package/dist/getFormattedTaxAmount.js.map +1 -0
- package/dist/getFormattedTipAmount.js +12 -0
- package/dist/getFormattedTipAmount.js.map +1 -0
- package/dist/getQrCodeValue.js +12 -0
- package/dist/getQrCodeValue.js.map +1 -0
- package/dist/getTaxAmount.js +12 -0
- package/dist/getTaxAmount.js.map +1 -0
- package/dist/getTipAmount.js +12 -0
- package/dist/getTipAmount.js.map +1 -0
- package/dist/hasAmountToPay.js +12 -0
- package/dist/hasAmountToPay.js.map +1 -0
- package/dist/index-C7irWceQ.js +848 -0
- package/dist/index-C7irWceQ.js.map +1 -0
- package/dist/index.js +84 -0
- package/dist/index.js.map +1 -0
- package/dist/queryConstants-DFKKEEo0.js +33 -0
- package/dist/queryConstants-DFKKEEo0.js.map +1 -0
- package/dist/renderFunctions-D9sAy3V_.js +47 -0
- package/dist/renderFunctions-D9sAy3V_.js.map +1 -0
- package/dist/stripe.esm-DuZ_gsAa.js +130 -0
- package/dist/stripe.esm-DuZ_gsAa.js.map +1 -0
- package/dist/useAccountsApi-DPem_UA-.js +58 -0
- package/dist/useAccountsApi-DPem_UA-.js.map +1 -0
- package/dist/useIntegrationsApi-D1bkKtoy.js +24 -0
- package/dist/useIntegrationsApi-D1bkKtoy.js.map +1 -0
- package/dist/usePaymentApi-BV0jXF-6.js +38 -0
- package/dist/usePaymentApi-BV0jXF-6.js.map +1 -0
- package/dist/usePaymentApi-DHARy-kC.js +53 -0
- package/dist/usePaymentApi-DHARy-kC.js.map +1 -0
- package/dist/usePaymentApi-DcMNbOMk.js +37 -0
- package/dist/usePaymentApi-DcMNbOMk.js.map +1 -0
- package/dist/usePlatformApi-Di7Dg-Gn.js +79 -0
- package/dist/usePlatformApi-Di7Dg-Gn.js.map +1 -0
- package/dist/useRazorpayPayment.js +111 -0
- package/dist/useRazorpayPayment.js.map +1 -0
- package/dist/useStripePromise.js +55 -0
- package/dist/useStripePromise.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,500 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
4
|
+
var react = require('react');
|
|
5
|
+
var i18next = require('i18next');
|
|
6
|
+
var neetocist = require('neetocist');
|
|
7
|
+
var reactUtils = require('neetocommons/react-utils');
|
|
8
|
+
var neetoFiltersFrontend = require('@bigbinary/neeto-filters-frontend');
|
|
9
|
+
var Header = require('@bigbinary/neeto-molecules/Header');
|
|
10
|
+
var SubHeader = require('@bigbinary/neeto-molecules/SubHeader');
|
|
11
|
+
var neetoui = require('@bigbinary/neetoui');
|
|
12
|
+
var reactI18next = require('react-i18next');
|
|
13
|
+
var dashboard = require('./dashboard-DKHencVn.js');
|
|
14
|
+
var exportChannel = require('./exportChannel-D1Wls92m.js');
|
|
15
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
16
|
+
var neetoIcons = require('@bigbinary/neeto-icons');
|
|
17
|
+
var constants = require('./index-CZ_VFGNj.js');
|
|
18
|
+
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
19
|
+
var utils = require('neetocommons/utils');
|
|
20
|
+
var ramda = require('ramda');
|
|
21
|
+
var reactRouterDom = require('react-router-dom');
|
|
22
|
+
var renderFunctions = require('./renderFunctions-CX_K4qf8.js');
|
|
23
|
+
var CopyButtonWrapper = require('./CopyButtonWrapper-BkpN0Wmd.js');
|
|
24
|
+
var constants$1 = require('neetocommons/constants');
|
|
25
|
+
var Columns = require('@bigbinary/neeto-molecules/Columns');
|
|
26
|
+
var TableWrapper = require('@bigbinary/neeto-molecules/TableWrapper');
|
|
27
|
+
var useAccountsApi = require('./useAccountsApi-DC617yB4.js');
|
|
28
|
+
require('@tanstack/react-query');
|
|
29
|
+
require('@tanstack/react-query-devtools');
|
|
30
|
+
require('axios');
|
|
31
|
+
require('decimal.js');
|
|
32
|
+
require('@bigbinary/neeto-molecules/DateFormat');
|
|
33
|
+
require('@bigbinary/neeto-molecules/CopyToClipboardButton');
|
|
34
|
+
require('./queryConstants-Cka1X6GX.js');
|
|
35
|
+
|
|
36
|
+
var TAB = {
|
|
37
|
+
all: "all",
|
|
38
|
+
connected: "connected",
|
|
39
|
+
disconnected: "disconnected",
|
|
40
|
+
incomplete: "incomplete"
|
|
41
|
+
};
|
|
42
|
+
var TABS = Object.values(TAB);
|
|
43
|
+
var SEARCH_PROPS = {
|
|
44
|
+
key: "keyword",
|
|
45
|
+
node: "identifier,user.first_name,last_name,email",
|
|
46
|
+
model: "NeetoPaymentsEngine::Stripe::Account,User"
|
|
47
|
+
};
|
|
48
|
+
var DASHBOARD_MANDATORY_COLUMNS = ["id", "status", "identifier"];
|
|
49
|
+
var FILTER_COLUMNS = [{
|
|
50
|
+
key: "created_at",
|
|
51
|
+
label: i18next.t("neetoPayments.common.createdAt"),
|
|
52
|
+
node: "created_at",
|
|
53
|
+
type: "date",
|
|
54
|
+
showRuleSelector: true
|
|
55
|
+
}];
|
|
56
|
+
|
|
57
|
+
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
58
|
+
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
59
|
+
var ExportModal = function ExportModal(_ref) {
|
|
60
|
+
var showExportModal = _ref.showExportModal,
|
|
61
|
+
setShowExportModal = _ref.setShowExportModal,
|
|
62
|
+
tab = _ref.tab,
|
|
63
|
+
filters = _ref.filters,
|
|
64
|
+
_ref$sortProperties = _ref.sortProperties,
|
|
65
|
+
sortProperties = _ref$sortProperties === void 0 ? {} : _ref$sortProperties;
|
|
66
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
67
|
+
t = _useTranslation.t;
|
|
68
|
+
var _useState = react.useState(""),
|
|
69
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
70
|
+
downloadUrl = _useState2[0],
|
|
71
|
+
setDownloadUrl = _useState2[1];
|
|
72
|
+
var _useState3 = react.useState(false),
|
|
73
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
74
|
+
isGenerating = _useState4[0],
|
|
75
|
+
setIsGenerating = _useState4[1];
|
|
76
|
+
var _useExportData = dashboard.useExportData(),
|
|
77
|
+
exportCsv = _useExportData.mutate,
|
|
78
|
+
isPending = _useExportData.isPending;
|
|
79
|
+
var isFileLoading = isPending || isGenerating;
|
|
80
|
+
var token = react.useMemo(function () {
|
|
81
|
+
return "account-report-".concat(constants.uuidV4());
|
|
82
|
+
}, []);
|
|
83
|
+
var receivedCallback = function receivedCallback(data) {
|
|
84
|
+
if (!data.download_url) return;
|
|
85
|
+
setDownloadUrl(data.download_url);
|
|
86
|
+
setIsGenerating(false);
|
|
87
|
+
};
|
|
88
|
+
var handleGenerateClick = function handleGenerateClick() {
|
|
89
|
+
var payload = _objectSpread$1({
|
|
90
|
+
kind: "account",
|
|
91
|
+
token: token,
|
|
92
|
+
filters: filters,
|
|
93
|
+
tab: tab
|
|
94
|
+
}, sortProperties);
|
|
95
|
+
exportCsv(payload, {
|
|
96
|
+
onSuccess: function onSuccess() {
|
|
97
|
+
setDownloadUrl("");
|
|
98
|
+
setIsGenerating(true);
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
};
|
|
102
|
+
react.useEffect(function () {
|
|
103
|
+
if (showExportModal) {
|
|
104
|
+
var channel = exportChannel.exportChannel(token, receivedCallback);
|
|
105
|
+
setDownloadUrl("");
|
|
106
|
+
setIsGenerating(false);
|
|
107
|
+
return function () {
|
|
108
|
+
channel.disconnected();
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
return undefined;
|
|
112
|
+
}, [showExportModal, token]);
|
|
113
|
+
var onClose = function onClose() {
|
|
114
|
+
return setShowExportModal(false);
|
|
115
|
+
};
|
|
116
|
+
return /*#__PURE__*/React.createElement(neetoui.Modal, {
|
|
117
|
+
onClose: onClose,
|
|
118
|
+
isOpen: showExportModal
|
|
119
|
+
}, /*#__PURE__*/React.createElement(neetoui.Modal.Header, null, /*#__PURE__*/React.createElement(neetoui.Typography, {
|
|
120
|
+
style: "h2"
|
|
121
|
+
}, t("neetoPayments.export.title.account"))), /*#__PURE__*/React.createElement(neetoui.Modal.Body, null, isFileLoading ? /*#__PURE__*/React.createElement(neetoui.Typography, {
|
|
122
|
+
style: "body2"
|
|
123
|
+
}, t("neetoPayments.export.pleaseWait")) : /*#__PURE__*/React.createElement(neetoui.Typography, {
|
|
124
|
+
style: "body2"
|
|
125
|
+
}, downloadUrl ? t("neetoPayments.export.fileReady") : t("neetoPayments.export.download.account"))), /*#__PURE__*/React.createElement(neetoui.Modal.Footer, {
|
|
126
|
+
className: "space-x-2"
|
|
127
|
+
}, downloadUrl ? /*#__PURE__*/React.createElement(neetoui.Button, {
|
|
128
|
+
"data-testid": "neeto-payments-download-button",
|
|
129
|
+
href: downloadUrl,
|
|
130
|
+
icon: neetoIcons.Download,
|
|
131
|
+
label: t("neetoPayments.common.download"),
|
|
132
|
+
onClick: onClose
|
|
133
|
+
}) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(neetoui.Button, {
|
|
134
|
+
"data-testid": "cancel-button",
|
|
135
|
+
disabled: isFileLoading,
|
|
136
|
+
label: t("neetoPayments.common.cancel"),
|
|
137
|
+
style: "tertiary",
|
|
138
|
+
onClick: onClose
|
|
139
|
+
}), /*#__PURE__*/React.createElement(neetoui.Button, {
|
|
140
|
+
"data-testid": "neeto-payments-export-button",
|
|
141
|
+
disabled: isFileLoading,
|
|
142
|
+
label: t("neetoPayments.common.export"),
|
|
143
|
+
loading: isFileLoading,
|
|
144
|
+
onClick: handleGenerateClick
|
|
145
|
+
}))));
|
|
146
|
+
};
|
|
147
|
+
|
|
148
|
+
var renderIdentifier = function renderIdentifier() {
|
|
149
|
+
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
150
|
+
_ref$identifier = _ref.identifier,
|
|
151
|
+
identifier = _ref$identifier === void 0 ? "" : _ref$identifier,
|
|
152
|
+
_ref$isLive = _ref.isLive,
|
|
153
|
+
isLive = _ref$isLive === void 0 ? false : _ref$isLive;
|
|
154
|
+
return /*#__PURE__*/React.createElement(CopyButtonWrapper.CopyButtonWrapper, {
|
|
155
|
+
content: identifier
|
|
156
|
+
}, /*#__PURE__*/React.createElement(neetoui.Button, {
|
|
157
|
+
href: constants.buildStripeAccountLink(identifier, isLive),
|
|
158
|
+
label: identifier,
|
|
159
|
+
size: "small",
|
|
160
|
+
style: "link",
|
|
161
|
+
target: "_blank"
|
|
162
|
+
}));
|
|
163
|
+
};
|
|
164
|
+
var renderCountry = ramda.pipe(ramda.split("_"), ramda.map(neetocist.capitalize), ramda.join(" "));
|
|
165
|
+
|
|
166
|
+
var COLUMNS = [{
|
|
167
|
+
title: i18next.t("neetoPayments.common.id"),
|
|
168
|
+
dataIndex: "id",
|
|
169
|
+
key: "id",
|
|
170
|
+
width: 85,
|
|
171
|
+
isHidable: false
|
|
172
|
+
}, {
|
|
173
|
+
title: i18next.t("neetoPayments.common.identifier"),
|
|
174
|
+
dataIndex: "identifier",
|
|
175
|
+
key: "identifier",
|
|
176
|
+
width: 300,
|
|
177
|
+
render: renderIdentifier,
|
|
178
|
+
isHidable: false
|
|
179
|
+
}, {
|
|
180
|
+
title: i18next.t("neetoPayments.common.status"),
|
|
181
|
+
dataIndex: "status",
|
|
182
|
+
key: "status",
|
|
183
|
+
width: 150,
|
|
184
|
+
render: renderFunctions.renderStatus("account"),
|
|
185
|
+
sorter: true,
|
|
186
|
+
isHidable: false
|
|
187
|
+
}, {
|
|
188
|
+
title: i18next.t("neetoPayments.common.name"),
|
|
189
|
+
dataIndex: "first_name",
|
|
190
|
+
key: "first_name",
|
|
191
|
+
width: 300,
|
|
192
|
+
sorter: true,
|
|
193
|
+
render: renderFunctions.renderFullName
|
|
194
|
+
}, {
|
|
195
|
+
title: i18next.t("neetoPayments.common.email"),
|
|
196
|
+
dataIndex: "email",
|
|
197
|
+
key: "email",
|
|
198
|
+
width: 300,
|
|
199
|
+
ellipsis: true,
|
|
200
|
+
sorter: true
|
|
201
|
+
}, {
|
|
202
|
+
title: i18next.t("neetoPayments.common.country"),
|
|
203
|
+
dataIndex: "country",
|
|
204
|
+
key: "country",
|
|
205
|
+
width: 150,
|
|
206
|
+
render: renderCountry,
|
|
207
|
+
sorter: true
|
|
208
|
+
}, {
|
|
209
|
+
title: i18next.t("neetoPayments.common.createdAt"),
|
|
210
|
+
dataIndex: "createdAt",
|
|
211
|
+
key: "createdAt",
|
|
212
|
+
width: 220,
|
|
213
|
+
render: renderFunctions.renderDate,
|
|
214
|
+
sorter: true
|
|
215
|
+
}];
|
|
216
|
+
|
|
217
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
218
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
219
|
+
var useFiltersAndPagination = function useFiltersAndPagination() {
|
|
220
|
+
var history = reactRouterDom.useHistory();
|
|
221
|
+
var _useState = react.useState(false),
|
|
222
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
223
|
+
isFilterButtonVisible = _useState2[0],
|
|
224
|
+
setIsFilterButtonVisible = _useState2[1];
|
|
225
|
+
var _useState3 = react.useState(false),
|
|
226
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
227
|
+
isFilterPaneOpen = _useState4[0],
|
|
228
|
+
setIsFilterPaneOpen = _useState4[1];
|
|
229
|
+
var _useState5 = react.useState(dashboard.buildDefaultPageProperties(TABS)),
|
|
230
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
231
|
+
pageProperties = _useState6[0],
|
|
232
|
+
setPageProperties = _useState6[1];
|
|
233
|
+
var _useState7 = react.useState(constants.DEFAULT_SORT_PROPERTIES),
|
|
234
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
235
|
+
sortProperties = _useState8[0],
|
|
236
|
+
setSortProperties = _useState8[1];
|
|
237
|
+
var _useQueryParams = reactUtils.useQueryParams(),
|
|
238
|
+
_useQueryParams$tab = _useQueryParams.tab,
|
|
239
|
+
tab = _useQueryParams$tab === void 0 ? TAB.all : _useQueryParams$tab;
|
|
240
|
+
var _getQueryParams = utils.getQueryParams(),
|
|
241
|
+
_getQueryParams$searc = _getQueryParams.searchTerm,
|
|
242
|
+
searchTerm = _getQueryParams$searc === void 0 ? "" : _getQueryParams$searc;
|
|
243
|
+
var searchKeywordProps = _objectSpread(_objectSpread({}, SEARCH_PROPS), {}, {
|
|
244
|
+
key: "search_term",
|
|
245
|
+
value: searchTerm.trim()
|
|
246
|
+
});
|
|
247
|
+
var _useState9 = react.useState(neetoFiltersFrontend.buildFiltersFromURL([].concat(_toConsumableArray(FILTER_COLUMNS), [searchKeywordProps]))),
|
|
248
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
249
|
+
filters = _useState10[0],
|
|
250
|
+
setFilters = _useState10[1];
|
|
251
|
+
var _useState11 = react.useState(null),
|
|
252
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
253
|
+
dataSize = _useState12[0],
|
|
254
|
+
setDataSize = _useState12[1];
|
|
255
|
+
var columnData = tab !== TAB.all ? neetocist.removeBy({
|
|
256
|
+
key: "status"
|
|
257
|
+
}, COLUMNS) : COLUMNS;
|
|
258
|
+
var handleTabChange = function handleTabChange(tab) {
|
|
259
|
+
var _pageProperties$tab, _pageProperties$tab2;
|
|
260
|
+
setDataSize(null);
|
|
261
|
+
var queryParams = utils.getQueryParams({
|
|
262
|
+
toCamelCase: false
|
|
263
|
+
});
|
|
264
|
+
var newParams = {
|
|
265
|
+
tab: tab,
|
|
266
|
+
page: (_pageProperties$tab = pageProperties[tab]) === null || _pageProperties$tab === void 0 ? void 0 : _pageProperties$tab.page,
|
|
267
|
+
page_size: (_pageProperties$tab2 = pageProperties[tab]) === null || _pageProperties$tab2 === void 0 ? void 0 : _pageProperties$tab2.pageSize
|
|
268
|
+
};
|
|
269
|
+
history.push(utils.buildUrl(window.location.pathname, ramda.mergeLeft(newParams, queryParams)));
|
|
270
|
+
};
|
|
271
|
+
return {
|
|
272
|
+
isFilterButtonVisible: isFilterButtonVisible,
|
|
273
|
+
isFilterPaneOpen: isFilterPaneOpen,
|
|
274
|
+
pageProperties: pageProperties,
|
|
275
|
+
filters: filters,
|
|
276
|
+
searchKeywordProps: searchKeywordProps,
|
|
277
|
+
tab: tab,
|
|
278
|
+
sortProperties: sortProperties,
|
|
279
|
+
columnData: columnData,
|
|
280
|
+
dataSize: dataSize,
|
|
281
|
+
setDataSize: setDataSize,
|
|
282
|
+
setIsFilterButtonVisible: setIsFilterButtonVisible,
|
|
283
|
+
setIsFilterPaneOpen: setIsFilterPaneOpen,
|
|
284
|
+
setPageProperties: setPageProperties,
|
|
285
|
+
setFilters: setFilters,
|
|
286
|
+
handleTabChange: handleTabChange,
|
|
287
|
+
setSortProperties: setSortProperties
|
|
288
|
+
};
|
|
289
|
+
};
|
|
290
|
+
|
|
291
|
+
var List = function List(_ref) {
|
|
292
|
+
var _pageProperties$tab, _pageProperties$tab2, _pageProperties$tab3;
|
|
293
|
+
var columnData = _ref.columnData,
|
|
294
|
+
filters = _ref.filters,
|
|
295
|
+
pageProperties = _ref.pageProperties,
|
|
296
|
+
setDataSize = _ref.setDataSize,
|
|
297
|
+
setIsFilterButtonVisible = _ref.setIsFilterButtonVisible,
|
|
298
|
+
setPageProperties = _ref.setPageProperties,
|
|
299
|
+
setSortProperties = _ref.setSortProperties,
|
|
300
|
+
sortProperties = _ref.sortProperties,
|
|
301
|
+
tab = _ref.tab;
|
|
302
|
+
var history = reactRouterDom.useHistory();
|
|
303
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
304
|
+
t = _useTranslation.t;
|
|
305
|
+
var _useTableConfiguratio = Columns.useTableConfigurations(exportChannel.TABLE_KEYS.ACCOUNTS_TABLE, columnData),
|
|
306
|
+
isTableConfigurationLoading = _useTableConfiguratio.isTableConfigurationLoading,
|
|
307
|
+
customizedColumns = _useTableConfiguratio.customizedColumns,
|
|
308
|
+
hideColumn = _useTableConfiguratio.hideColumn;
|
|
309
|
+
var _useFetchConnectedAcc = useAccountsApi.useFetchConnectedAccounts(dashboard.buildPayload({
|
|
310
|
+
filters: filters,
|
|
311
|
+
pageProperties: pageProperties,
|
|
312
|
+
sortProperties: sortProperties,
|
|
313
|
+
tab: tab
|
|
314
|
+
})),
|
|
315
|
+
_useFetchConnectedAcc2 = _useFetchConnectedAcc.data,
|
|
316
|
+
_useFetchConnectedAcc3 = _useFetchConnectedAcc2 === void 0 ? {} : _useFetchConnectedAcc2,
|
|
317
|
+
_useFetchConnectedAcc4 = _useFetchConnectedAcc3.accounts,
|
|
318
|
+
accounts = _useFetchConnectedAcc4 === void 0 ? [] : _useFetchConnectedAcc4,
|
|
319
|
+
_useFetchConnectedAcc5 = _useFetchConnectedAcc3.views,
|
|
320
|
+
views = _useFetchConnectedAcc5 === void 0 ? {} : _useFetchConnectedAcc5,
|
|
321
|
+
isLoading = _useFetchConnectedAcc.isLoading,
|
|
322
|
+
isFetching = _useFetchConnectedAcc.isFetching;
|
|
323
|
+
var dataSize = views[tab];
|
|
324
|
+
react.useEffect(function () {
|
|
325
|
+
setIsFilterButtonVisible(neetocist.isPresent(accounts) || neetocist.isPresent(filters));
|
|
326
|
+
setDataSize(dataSize);
|
|
327
|
+
}, [accounts]);
|
|
328
|
+
var handleTablePagination = function handleTablePagination(page, pageSize) {
|
|
329
|
+
var queryParams = utils.getQueryParams({
|
|
330
|
+
toCamelCase: false
|
|
331
|
+
});
|
|
332
|
+
history.push(utils.buildUrl(window.location.pathname, ramda.mergeLeft({
|
|
333
|
+
page: page,
|
|
334
|
+
page_size: pageSize
|
|
335
|
+
}, queryParams)));
|
|
336
|
+
setPageProperties(ramda.assoc(tab, {
|
|
337
|
+
page: page,
|
|
338
|
+
pageSize: pageSize
|
|
339
|
+
}));
|
|
340
|
+
};
|
|
341
|
+
react.useEffect(function () {
|
|
342
|
+
handleTablePagination(constants$1.DEFAULT_PAGE_INDEX, constants$1.DEFAULT_PAGE_SIZE);
|
|
343
|
+
setSortProperties(constants.DEFAULT_SORT_PROPERTIES);
|
|
344
|
+
}, [filters, tab]);
|
|
345
|
+
var handleTableChange = function handleTableChange(_, __, sorter) {
|
|
346
|
+
setSortProperties(neetocist.isPresent(sorter === null || sorter === void 0 ? void 0 : sorter.column) ? {
|
|
347
|
+
sortBy: neetocist.camelToSnakeCase(sorter.field),
|
|
348
|
+
orderBy: sorter.order === "ascend" ? "ASC" : "DESC"
|
|
349
|
+
} : constants.DEFAULT_SORT_PROPERTIES);
|
|
350
|
+
};
|
|
351
|
+
if (isLoading) {
|
|
352
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
353
|
+
className: "flex h-full w-full items-center justify-center"
|
|
354
|
+
}, /*#__PURE__*/React.createElement(neetoui.Spinner, null));
|
|
355
|
+
}
|
|
356
|
+
if (dataSize <= 0 || !neetocist.isPresent(accounts)) {
|
|
357
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
358
|
+
className: "flex h-full w-full items-center justify-center"
|
|
359
|
+
}, /*#__PURE__*/React.createElement(neetoui.NoData, {
|
|
360
|
+
title: tab === TAB.all ? t("neetoPayments.emptyState.account") : t("neetoPayments.emptyState.accountWithStatus", {
|
|
361
|
+
status: tab
|
|
362
|
+
})
|
|
363
|
+
}));
|
|
364
|
+
}
|
|
365
|
+
return /*#__PURE__*/React.createElement(TableWrapper, {
|
|
366
|
+
hasPagination: dataSize > ((_pageProperties$tab = pageProperties[tab]) === null || _pageProperties$tab === void 0 ? void 0 : _pageProperties$tab.pageSize)
|
|
367
|
+
}, /*#__PURE__*/React.createElement(neetoui.Table, {
|
|
368
|
+
fixedHeight: true,
|
|
369
|
+
allowRowClick: false,
|
|
370
|
+
columnData: customizedColumns,
|
|
371
|
+
currentPageNumber: (_pageProperties$tab2 = pageProperties[tab]) === null || _pageProperties$tab2 === void 0 ? void 0 : _pageProperties$tab2.page,
|
|
372
|
+
handlePageChange: handleTablePagination,
|
|
373
|
+
loading: isFetching || isTableConfigurationLoading,
|
|
374
|
+
rowData: dashboard.buildRowData({
|
|
375
|
+
data: accounts,
|
|
376
|
+
pageProperties: pageProperties,
|
|
377
|
+
tab: tab
|
|
378
|
+
}),
|
|
379
|
+
rowSelection: false,
|
|
380
|
+
sortDirections: constants.SORT_DIRECTIONS,
|
|
381
|
+
totalCount: dataSize,
|
|
382
|
+
paginationProps: {
|
|
383
|
+
showSizeChanger: true,
|
|
384
|
+
hideOnSinglePage: true,
|
|
385
|
+
pageSize: (_pageProperties$tab3 = pageProperties[tab]) === null || _pageProperties$tab3 === void 0 ? void 0 : _pageProperties$tab3.pageSize,
|
|
386
|
+
total: dataSize
|
|
387
|
+
},
|
|
388
|
+
onChange: handleTableChange,
|
|
389
|
+
onColumnHide: function onColumnHide(_ref2) {
|
|
390
|
+
var key = _ref2.key;
|
|
391
|
+
return hideColumn(key);
|
|
392
|
+
}
|
|
393
|
+
}));
|
|
394
|
+
};
|
|
395
|
+
|
|
396
|
+
var AccountsDashboard = function AccountsDashboard() {
|
|
397
|
+
var _useTransition = react.useTransition(),
|
|
398
|
+
_useTransition2 = _slicedToArray(_useTransition, 2);
|
|
399
|
+
_useTransition2[0];
|
|
400
|
+
var startTransition = _useTransition2[1];
|
|
401
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
402
|
+
t = _useTranslation.t;
|
|
403
|
+
var _useState = react.useState(false),
|
|
404
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
405
|
+
showExportModal = _useState2[0],
|
|
406
|
+
setShowExportModal = _useState2[1];
|
|
407
|
+
var _useFiltersAndPaginat = useFiltersAndPagination(),
|
|
408
|
+
isFilterButtonVisible = _useFiltersAndPaginat.isFilterButtonVisible,
|
|
409
|
+
isFilterPaneOpen = _useFiltersAndPaginat.isFilterPaneOpen,
|
|
410
|
+
pageProperties = _useFiltersAndPaginat.pageProperties,
|
|
411
|
+
filters = _useFiltersAndPaginat.filters,
|
|
412
|
+
searchKeywordProps = _useFiltersAndPaginat.searchKeywordProps,
|
|
413
|
+
tab = _useFiltersAndPaginat.tab,
|
|
414
|
+
sortProperties = _useFiltersAndPaginat.sortProperties,
|
|
415
|
+
columnData = _useFiltersAndPaginat.columnData,
|
|
416
|
+
dataSize = _useFiltersAndPaginat.dataSize,
|
|
417
|
+
setDataSize = _useFiltersAndPaginat.setDataSize,
|
|
418
|
+
setIsFilterButtonVisible = _useFiltersAndPaginat.setIsFilterButtonVisible,
|
|
419
|
+
setIsFilterPaneOpen = _useFiltersAndPaginat.setIsFilterPaneOpen,
|
|
420
|
+
setPageProperties = _useFiltersAndPaginat.setPageProperties,
|
|
421
|
+
setFilters = _useFiltersAndPaginat.setFilters,
|
|
422
|
+
handleTabChange = _useFiltersAndPaginat.handleTabChange,
|
|
423
|
+
setSortProperties = _useFiltersAndPaginat.setSortProperties;
|
|
424
|
+
var isTabsVisible = isFilterButtonVisible || tab !== "all";
|
|
425
|
+
var handleFiltersChange = function handleFiltersChange(filters) {
|
|
426
|
+
startTransition(function () {
|
|
427
|
+
setFilters(filters);
|
|
428
|
+
});
|
|
429
|
+
};
|
|
430
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Header, {
|
|
431
|
+
title: t("neetoPayments.title.account"),
|
|
432
|
+
searchProps: isFilterButtonVisible && {
|
|
433
|
+
placeholder: t("neetoPayments.common.search"),
|
|
434
|
+
className: "w-80"
|
|
435
|
+
}
|
|
436
|
+
}), isTabsVisible && /*#__PURE__*/React.createElement(neetoui.Tab, null, TABS.map(function (item) {
|
|
437
|
+
return /*#__PURE__*/React.createElement(neetoui.Tab.Item, {
|
|
438
|
+
active: tab === item,
|
|
439
|
+
key: item,
|
|
440
|
+
onClick: function onClick() {
|
|
441
|
+
return handleTabChange(item);
|
|
442
|
+
}
|
|
443
|
+
}, t("neetoPayments.common.".concat(item)));
|
|
444
|
+
})), /*#__PURE__*/React.createElement(SubHeader, {
|
|
445
|
+
className: "my-4",
|
|
446
|
+
leftActionBlock: neetocist.isPresent(dataSize) && /*#__PURE__*/React.createElement(neetoui.Typography, {
|
|
447
|
+
className: "neeto-ui-gray-800 me-2 font-semibold",
|
|
448
|
+
component: "h4"
|
|
449
|
+
}, tab === TAB.all ? t("neetoPayments.countOf.account", {
|
|
450
|
+
count: dataSize
|
|
451
|
+
}) : t("neetoPayments.countOf.accountWithStatus", {
|
|
452
|
+
count: dataSize,
|
|
453
|
+
status: tab
|
|
454
|
+
})),
|
|
455
|
+
rightActionBlock: isFilterButtonVisible && /*#__PURE__*/React.createElement(SubHeader.RightBlock, {
|
|
456
|
+
columnsButtonProps: {
|
|
457
|
+
columnData: columnData,
|
|
458
|
+
fixedColumns: DASHBOARD_MANDATORY_COLUMNS,
|
|
459
|
+
tableKey: exportChannel.TABLE_KEYS.ACCOUNTS_TABLE
|
|
460
|
+
},
|
|
461
|
+
downloadButtonProps: {
|
|
462
|
+
onClick: function onClick() {
|
|
463
|
+
return setShowExportModal(true);
|
|
464
|
+
}
|
|
465
|
+
},
|
|
466
|
+
filterProps: {
|
|
467
|
+
columns: FILTER_COLUMNS,
|
|
468
|
+
isOpen: isFilterPaneOpen,
|
|
469
|
+
keyword: searchKeywordProps,
|
|
470
|
+
setIsOpen: setIsFilterPaneOpen,
|
|
471
|
+
onChange: handleFiltersChange
|
|
472
|
+
}
|
|
473
|
+
})
|
|
474
|
+
}), /*#__PURE__*/React.createElement(neetoFiltersFrontend.Bar, {
|
|
475
|
+
columns: FILTER_COLUMNS,
|
|
476
|
+
keyword: searchKeywordProps,
|
|
477
|
+
setIsPaneOpen: setIsFilterPaneOpen,
|
|
478
|
+
onChange: handleFiltersChange
|
|
479
|
+
}), /*#__PURE__*/React.createElement(List, {
|
|
480
|
+
columnData: columnData,
|
|
481
|
+
filters: filters,
|
|
482
|
+
pageProperties: pageProperties,
|
|
483
|
+
setDataSize: setDataSize,
|
|
484
|
+
setIsFilterButtonVisible: setIsFilterButtonVisible,
|
|
485
|
+
setPageProperties: setPageProperties,
|
|
486
|
+
setSortProperties: setSortProperties,
|
|
487
|
+
sortProperties: sortProperties,
|
|
488
|
+
tab: tab
|
|
489
|
+
}), /*#__PURE__*/React.createElement(ExportModal, {
|
|
490
|
+
filters: filters,
|
|
491
|
+
setShowExportModal: setShowExportModal,
|
|
492
|
+
showExportModal: showExportModal,
|
|
493
|
+
sortProperties: sortProperties,
|
|
494
|
+
tab: tab
|
|
495
|
+
}));
|
|
496
|
+
};
|
|
497
|
+
var index = reactUtils.withTitle(dashboard.withReactQuery(AccountsDashboard), i18next.t("neetoPayments.title.account"));
|
|
498
|
+
|
|
499
|
+
module.exports = index;
|
|
500
|
+
//# sourceMappingURL=AccountsDashboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AccountsDashboard.js","sources":["../../app/javascript/src/components/AccountsDashboard/constants/index.js","../../app/javascript/src/components/AccountsDashboard/ExportModal.jsx","../../app/javascript/src/components/AccountsDashboard/utils/renderFunctions.jsx","../../app/javascript/src/components/AccountsDashboard/constants/columns.js","../../app/javascript/src/components/AccountsDashboard/hooks/useFiltersAndPagination.js","../../app/javascript/src/components/AccountsDashboard/List.jsx","../../app/javascript/src/components/AccountsDashboard/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const TAB = {\n all: \"all\",\n connected: \"connected\",\n disconnected: \"disconnected\",\n incomplete: \"incomplete\",\n};\n\nexport const TABS = Object.values(TAB);\n\nexport const SEARCH_PROPS = {\n key: \"keyword\",\n node: \"identifier,user.first_name,last_name,email\",\n model: \"NeetoPaymentsEngine::Stripe::Account,User\",\n};\n\nexport const DASHBOARD_MANDATORY_COLUMNS = [\"id\", \"status\", \"identifier\"];\n\nexport const FILTER_COLUMNS = [\n {\n key: \"created_at\",\n label: t(\"neetoPayments.common.createdAt\"),\n node: \"created_at\",\n type: \"date\",\n showRuleSelector: true,\n },\n];\n\nexport const STRIPE_ACCOUNTS_TABLE_HIDDEN_COLUMNS_STORAGE_KEY =\n \"stripeAccountsDashboard\";\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport { Download } from \"neetoicons\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useExportData } from \"hooks/reactQuery/stripe/useExportsApi\";\nimport { Button, Modal, Typography } from \"neetoui\";\nimport exportChannel from \"src/channels/exportChannel\";\nimport { uuidV4 } from \"utils\";\n\nconst ExportModal = ({\n showExportModal,\n setShowExportModal,\n tab,\n filters,\n sortProperties = {},\n}) => {\n const { t } = useTranslation();\n const [downloadUrl, setDownloadUrl] = useState(\"\");\n const [isGenerating, setIsGenerating] = useState(false);\n\n const { mutate: exportCsv, isPending } = useExportData();\n const isFileLoading = isPending || isGenerating;\n\n const token = useMemo(() => `account-report-${uuidV4()}`, []);\n\n const receivedCallback = data => {\n if (!data.download_url) return;\n setDownloadUrl(data.download_url);\n setIsGenerating(false);\n };\n\n const handleGenerateClick = () => {\n const payload = {\n kind: \"account\",\n token,\n filters,\n tab,\n ...sortProperties,\n };\n\n exportCsv(payload, {\n onSuccess: () => {\n setDownloadUrl(\"\");\n setIsGenerating(true);\n },\n });\n };\n\n useEffect(() => {\n if (showExportModal) {\n const channel = exportChannel(token, receivedCallback);\n setDownloadUrl(\"\");\n setIsGenerating(false);\n\n return () => {\n channel.disconnected();\n };\n }\n\n return undefined;\n }, [showExportModal, token]);\n\n const onClose = () => setShowExportModal(false);\n\n return (\n <Modal {...{ onClose }} isOpen={showExportModal}>\n <Modal.Header>\n <Typography style=\"h2\">\n {t(\"neetoPayments.export.title.account\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n {isFileLoading ? (\n <Typography style=\"body2\">\n {t(\"neetoPayments.export.pleaseWait\")}\n </Typography>\n ) : (\n <Typography style=\"body2\">\n {downloadUrl\n ? t(\"neetoPayments.export.fileReady\")\n : t(\"neetoPayments.export.download.account\")}\n </Typography>\n )}\n </Modal.Body>\n <Modal.Footer className=\"space-x-2\">\n {downloadUrl ? (\n <Button\n data-testid=\"neeto-payments-download-button\"\n href={downloadUrl}\n icon={Download}\n label={t(\"neetoPayments.common.download\")}\n onClick={onClose}\n />\n ) : (\n <>\n <Button\n data-testid=\"cancel-button\"\n disabled={isFileLoading}\n label={t(\"neetoPayments.common.cancel\")}\n style=\"tertiary\"\n onClick={onClose}\n />\n <Button\n data-testid=\"neeto-payments-export-button\"\n disabled={isFileLoading}\n label={t(\"neetoPayments.common.export\")}\n loading={isFileLoading}\n onClick={handleGenerateClick}\n />\n </>\n )}\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default ExportModal;\n","import { capitalize } from \"neetocist\";\nimport { Button } from \"neetoui\";\nimport { join, map, pipe, split } from \"ramda\";\n\nimport CopyButtonWrapper from \"components/Common/CopyButtonWrapper\";\nimport { buildStripeAccountLink } from \"utils\";\n\nexport const renderIdentifier = ({ identifier = \"\", isLive = false } = {}) => (\n <CopyButtonWrapper content={identifier}>\n <Button\n href={buildStripeAccountLink(identifier, isLive)}\n label={identifier}\n size=\"small\"\n style=\"link\"\n target=\"_blank\"\n />\n </CopyButtonWrapper>\n);\n\nexport const renderCountry = pipe(split(\"_\"), map(capitalize), join(\" \"));\n","import { t } from \"i18next\";\n\nimport {\n renderDate,\n renderFullName,\n renderStatus,\n} from \"utils/renderFunctions\";\n\nimport { renderCountry, renderIdentifier } from \"../utils/renderFunctions\";\n\nexport const COLUMNS = [\n {\n title: t(\"neetoPayments.common.id\"),\n dataIndex: \"id\",\n key: \"id\",\n width: 85,\n isHidable: false,\n },\n {\n title: t(\"neetoPayments.common.identifier\"),\n dataIndex: \"identifier\",\n key: \"identifier\",\n width: 300,\n render: renderIdentifier,\n isHidable: false,\n },\n {\n title: t(\"neetoPayments.common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n width: 150,\n render: renderStatus(\"account\"),\n sorter: true,\n isHidable: false,\n },\n {\n title: t(\"neetoPayments.common.name\"),\n dataIndex: \"first_name\",\n key: \"first_name\",\n width: 300,\n sorter: true,\n render: renderFullName,\n },\n {\n title: t(\"neetoPayments.common.email\"),\n dataIndex: \"email\",\n key: \"email\",\n width: 300,\n ellipsis: true,\n sorter: true,\n },\n {\n title: t(\"neetoPayments.common.country\"),\n dataIndex: \"country\",\n key: \"country\",\n width: 150,\n render: renderCountry,\n sorter: true,\n },\n {\n title: t(\"neetoPayments.common.createdAt\"),\n dataIndex: \"createdAt\",\n key: \"createdAt\",\n width: 220,\n render: renderDate,\n sorter: true,\n },\n];\n","import { useState } from \"react\";\n\nimport { removeBy } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { mergeLeft } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { DEFAULT_SORT_PROPERTIES } from \"src/constants\";\nimport { buildDefaultPageProperties } from \"utils/dashboard\";\n\nimport { FILTER_COLUMNS, TAB, TABS, SEARCH_PROPS } from \"../constants\";\nimport { COLUMNS } from \"../constants/columns\";\n\nexport const useFiltersAndPagination = () => {\n const history = useHistory();\n const [isFilterButtonVisible, setIsFilterButtonVisible] = useState(false);\n const [isFilterPaneOpen, setIsFilterPaneOpen] = useState(false);\n const [pageProperties, setPageProperties] = useState(\n buildDefaultPageProperties(TABS)\n );\n const [sortProperties, setSortProperties] = useState(DEFAULT_SORT_PROPERTIES);\n const { tab = TAB.all } = useQueryParams();\n\n const { searchTerm = \"\" } = getQueryParams();\n const searchKeywordProps = {\n ...SEARCH_PROPS,\n key: \"search_term\",\n value: searchTerm.trim(),\n };\n\n const [filters, setFilters] = useState(\n buildFiltersFromURL([...FILTER_COLUMNS, searchKeywordProps])\n );\n const [dataSize, setDataSize] = useState(null);\n\n const columnData =\n tab !== TAB.all ? removeBy({ key: \"status\" }, COLUMNS) : COLUMNS;\n\n const handleTabChange = tab => {\n setDataSize(null);\n const queryParams = getQueryParams({ toCamelCase: false });\n const newParams = {\n tab,\n page: pageProperties[tab]?.page,\n page_size: pageProperties[tab]?.pageSize,\n };\n\n history.push(\n buildUrl(window.location.pathname, mergeLeft(newParams, queryParams))\n );\n };\n\n return {\n isFilterButtonVisible,\n isFilterPaneOpen,\n pageProperties,\n filters,\n searchKeywordProps,\n tab,\n sortProperties,\n columnData,\n dataSize,\n setDataSize,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setPageProperties,\n setFilters,\n handleTabChange,\n setSortProperties,\n };\n};\n","import { useEffect } from \"react\";\n\nimport { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport { useTableConfigurations } from \"neetomolecules/Columns\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table, NoData, Spinner } from \"neetoui\";\nimport { assoc, mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useFetchConnectedAccounts } from \"hooks/reactQuery/stripe/useAccountsApi\";\nimport { DEFAULT_SORT_PROPERTIES, SORT_DIRECTIONS } from \"src/constants\";\nimport { TABLE_KEYS } from \"src/constants/tableKeys\";\nimport { buildPayload, buildRowData } from \"utils/dashboard\";\n\nimport { TAB } from \"./constants\";\n\nconst List = ({\n columnData,\n filters,\n pageProperties,\n setDataSize,\n setIsFilterButtonVisible,\n setPageProperties,\n setSortProperties,\n sortProperties,\n tab,\n}) => {\n const history = useHistory();\n const { t } = useTranslation();\n const { isTableConfigurationLoading, customizedColumns, hideColumn } =\n useTableConfigurations(TABLE_KEYS.ACCOUNTS_TABLE, columnData);\n\n const {\n data: { accounts = [], views = {} } = {},\n isLoading,\n isFetching,\n } = useFetchConnectedAccounts(\n buildPayload({ filters, pageProperties, sortProperties, tab })\n );\n\n const dataSize = views[tab];\n\n useEffect(() => {\n setIsFilterButtonVisible(isPresent(accounts) || isPresent(filters));\n setDataSize(dataSize);\n }, [accounts]);\n\n const handleTablePagination = (page, pageSize) => {\n const queryParams = getQueryParams({ toCamelCase: false });\n history.push(\n buildUrl(\n window.location.pathname,\n mergeLeft({ page, page_size: pageSize }, queryParams)\n )\n );\n setPageProperties(assoc(tab, { page, pageSize }));\n };\n\n useEffect(() => {\n handleTablePagination(DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE);\n setSortProperties(DEFAULT_SORT_PROPERTIES);\n }, [filters, tab]);\n\n const handleTableChange = (_, __, sorter) => {\n setSortProperties(\n isPresent(sorter?.column)\n ? {\n sortBy: camelToSnakeCase(sorter.field),\n orderBy: sorter.order === \"ascend\" ? \"ASC\" : \"DESC\",\n }\n : DEFAULT_SORT_PROPERTIES\n );\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (dataSize <= 0 || !isPresent(accounts)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={\n tab === TAB.all\n ? t(\"neetoPayments.emptyState.account\")\n : t(\"neetoPayments.emptyState.accountWithStatus\", { status: tab })\n }\n />\n </div>\n );\n }\n\n return (\n <TableWrapper hasPagination={dataSize > pageProperties[tab]?.pageSize}>\n <Table\n fixedHeight\n allowRowClick={false}\n columnData={customizedColumns}\n currentPageNumber={pageProperties[tab]?.page}\n handlePageChange={handleTablePagination}\n loading={isFetching || isTableConfigurationLoading}\n rowData={buildRowData({ data: accounts, pageProperties, tab })}\n rowSelection={false}\n sortDirections={SORT_DIRECTIONS}\n totalCount={dataSize}\n paginationProps={{\n showSizeChanger: true,\n hideOnSinglePage: true,\n pageSize: pageProperties[tab]?.pageSize,\n total: dataSize,\n }}\n onChange={handleTableChange}\n onColumnHide={({ key }) => hideColumn(key)}\n />\n </TableWrapper>\n );\n};\n\nexport default List;\n","import { useState, useTransition } from \"react\";\n\nimport { t } from \"i18next\";\nimport { isPresent } from \"neetocist\";\nimport { withTitle } from \"neetocommons/react-utils\";\nimport { Bar as FiltersBar } from \"neetofilters\";\nimport Header from \"neetomolecules/Header\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport { Tab, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport withReactQuery from \"components/Common/withReactQuery\";\nimport { TABLE_KEYS } from \"src/constants/tableKeys\";\n\nimport {\n DASHBOARD_MANDATORY_COLUMNS,\n FILTER_COLUMNS,\n TAB,\n TABS,\n} from \"./constants\";\nimport ExportModal from \"./ExportModal\";\nimport { useFiltersAndPagination } from \"./hooks/useFiltersAndPagination\";\nimport List from \"./List\";\n\nconst AccountsDashboard = () => {\n const [_, startTransition] = useTransition();\n const { t } = useTranslation();\n\n const [showExportModal, setShowExportModal] = useState(false);\n const {\n isFilterButtonVisible,\n isFilterPaneOpen,\n pageProperties,\n filters,\n searchKeywordProps,\n tab,\n sortProperties,\n columnData,\n dataSize,\n setDataSize,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setPageProperties,\n setFilters,\n handleTabChange,\n setSortProperties,\n } = useFiltersAndPagination();\n\n const isTabsVisible = isFilterButtonVisible || tab !== \"all\";\n\n const handleFiltersChange = filters => {\n startTransition(() => {\n setFilters(filters);\n });\n };\n\n return (\n <>\n <Header\n title={t(\"neetoPayments.title.account\")}\n searchProps={\n isFilterButtonVisible && {\n placeholder: t(\"neetoPayments.common.search\"),\n className: \"w-80\",\n }\n }\n />\n {isTabsVisible && (\n <Tab>\n {TABS.map(item => (\n <Tab.Item\n active={tab === item}\n key={item}\n onClick={() => handleTabChange(item)}\n >\n {t(`neetoPayments.common.${item}`)}\n </Tab.Item>\n ))}\n </Tab>\n )}\n <SubHeader\n className=\"my-4\"\n leftActionBlock={\n isPresent(dataSize) && (\n <Typography\n className=\"neeto-ui-gray-800 me-2 font-semibold\"\n component=\"h4\"\n >\n {tab === TAB.all\n ? t(\"neetoPayments.countOf.account\", { count: dataSize })\n : t(\"neetoPayments.countOf.accountWithStatus\", {\n count: dataSize,\n status: tab,\n })}\n </Typography>\n )\n }\n rightActionBlock={\n isFilterButtonVisible && (\n <SubHeader.RightBlock\n columnsButtonProps={{\n columnData,\n fixedColumns: DASHBOARD_MANDATORY_COLUMNS,\n tableKey: TABLE_KEYS.ACCOUNTS_TABLE,\n }}\n downloadButtonProps={{\n onClick: () => setShowExportModal(true),\n }}\n filterProps={{\n columns: FILTER_COLUMNS,\n isOpen: isFilterPaneOpen,\n keyword: searchKeywordProps,\n setIsOpen: setIsFilterPaneOpen,\n onChange: handleFiltersChange,\n }}\n />\n )\n }\n />\n <FiltersBar\n columns={FILTER_COLUMNS}\n keyword={searchKeywordProps}\n setIsPaneOpen={setIsFilterPaneOpen}\n onChange={handleFiltersChange}\n />\n <List\n {...{\n columnData,\n filters,\n pageProperties,\n setDataSize,\n setIsFilterButtonVisible,\n setPageProperties,\n setSortProperties,\n sortProperties,\n tab,\n }}\n />\n <ExportModal\n {...{\n filters,\n setShowExportModal,\n showExportModal,\n sortProperties,\n tab,\n }}\n />\n </>\n );\n};\n\nexport default withTitle(\n withReactQuery(AccountsDashboard),\n t(\"neetoPayments.title.account\")\n);\n"],"names":["TAB","all","connected","disconnected","incomplete","TABS","Object","values","SEARCH_PROPS","key","node","model","DASHBOARD_MANDATORY_COLUMNS","FILTER_COLUMNS","label","t","type","showRuleSelector","ExportModal","_ref","showExportModal","setShowExportModal","tab","filters","_ref$sortProperties","sortProperties","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","downloadUrl","setDownloadUrl","_useState3","_useState4","isGenerating","setIsGenerating","_useExportData","useExportData","exportCsv","mutate","isPending","isFileLoading","token","useMemo","concat","uuidV4","receivedCallback","data","download_url","handleGenerateClick","payload","_objectSpread","kind","onSuccess","useEffect","channel","exportChannel","undefined","onClose","React","createElement","Modal","isOpen","Header","Typography","style","Body","Footer","className","Button","href","icon","Download","onClick","Fragment","disabled","loading","renderIdentifier","arguments","length","_ref$identifier","identifier","_ref$isLive","isLive","CopyButtonWrapper","content","buildStripeAccountLink","size","target","renderCountry","pipe","split","map","capitalize","join","COLUMNS","title","dataIndex","width","isHidable","render","renderStatus","sorter","renderFullName","ellipsis","renderDate","useFiltersAndPagination","history","useHistory","isFilterButtonVisible","setIsFilterButtonVisible","isFilterPaneOpen","setIsFilterPaneOpen","_useState5","buildDefaultPageProperties","_useState6","pageProperties","setPageProperties","_useState7","DEFAULT_SORT_PROPERTIES","_useState8","setSortProperties","_useQueryParams","useQueryParams","_useQueryParams$tab","_getQueryParams","getQueryParams","_getQueryParams$searc","searchTerm","searchKeywordProps","value","trim","_useState9","buildFiltersFromURL","_toConsumableArray","_useState10","setFilters","_useState11","_useState12","dataSize","setDataSize","columnData","removeBy","handleTabChange","_pageProperties$tab","_pageProperties$tab2","queryParams","toCamelCase","newParams","page","page_size","pageSize","push","buildUrl","window","location","pathname","mergeLeft","List","_pageProperties$tab3","_useTableConfiguratio","useTableConfigurations","TABLE_KEYS","ACCOUNTS_TABLE","isTableConfigurationLoading","customizedColumns","hideColumn","_useFetchConnectedAcc","useFetchConnectedAccounts","buildPayload","_useFetchConnectedAcc2","_useFetchConnectedAcc3","_useFetchConnectedAcc4","accounts","_useFetchConnectedAcc5","views","isLoading","isFetching","isPresent","handleTablePagination","assoc","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","handleTableChange","_","__","column","sortBy","camelToSnakeCase","field","orderBy","order","Spinner","NoData","status","TableWrapper","hasPagination","Table","fixedHeight","allowRowClick","currentPageNumber","handlePageChange","rowData","buildRowData","rowSelection","sortDirections","SORT_DIRECTIONS","totalCount","paginationProps","showSizeChanger","hideOnSinglePage","total","onChange","onColumnHide","_ref2","AccountsDashboard","_useTransition","useTransition","_useTransition2","startTransition","_useFiltersAndPaginat","isTabsVisible","handleFiltersChange","searchProps","placeholder","Tab","item","Item","active","SubHeader","leftActionBlock","component","count","rightActionBlock","RightBlock","columnsButtonProps","fixedColumns","tableKey","downloadButtonProps","filterProps","columns","keyword","setIsOpen","FiltersBar","setIsPaneOpen","withTitle","withReactQuery"],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
4
|
+
var react = require('react');
|
|
5
|
+
var neetoui = require('@bigbinary/neetoui');
|
|
6
|
+
var reactI18next = require('react-i18next');
|
|
7
|
+
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
8
|
+
var reactUtils = require('neetocommons/react-utils');
|
|
9
|
+
var axios = require('axios');
|
|
10
|
+
var constants = require('./index-CZ_VFGNj.js');
|
|
11
|
+
require('i18next');
|
|
12
|
+
require('neetocommons/constants');
|
|
13
|
+
require('decimal.js');
|
|
14
|
+
require('neetocist');
|
|
15
|
+
require('neetocommons/utils');
|
|
16
|
+
require('ramda');
|
|
17
|
+
|
|
18
|
+
var update = function update(_ref) {
|
|
19
|
+
var id = _ref.id,
|
|
20
|
+
payload = _ref.payload;
|
|
21
|
+
return axios.put("".concat(constants.BASE_URL, "/api/v1/recurring_payments/").concat(id), {
|
|
22
|
+
recurring_payment: payload
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
var recurringPaymentsApi = {
|
|
26
|
+
update: update
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
var useUpdateRecurringPayments = function useUpdateRecurringPayments() {
|
|
30
|
+
var keysToInvalidate = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
31
|
+
return reactUtils.useMutationWithInvalidation(recurringPaymentsApi.update, {
|
|
32
|
+
keysToInvalidate: _toConsumableArray(keysToInvalidate)
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
var AdminCancelRecurringPaymentButton = function AdminCancelRecurringPaymentButton(_ref) {
|
|
37
|
+
var id = _ref.id,
|
|
38
|
+
_ref$style = _ref.style,
|
|
39
|
+
style = _ref$style === void 0 ? "primary" : _ref$style,
|
|
40
|
+
_ref$keysToInvalidate = _ref.keysToInvalidate,
|
|
41
|
+
keysToInvalidate = _ref$keysToInvalidate === void 0 ? [] : _ref$keysToInvalidate;
|
|
42
|
+
var _useState = react.useState(false),
|
|
43
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
44
|
+
isAlertOpen = _useState2[0],
|
|
45
|
+
setIsAlertOpen = _useState2[1];
|
|
46
|
+
var _useUpdateRecurringPa = useUpdateRecurringPayments(keysToInvalidate),
|
|
47
|
+
isPending = _useUpdateRecurringPa.isPending,
|
|
48
|
+
updateRecurringPayment = _useUpdateRecurringPa.mutate;
|
|
49
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
50
|
+
t = _useTranslation.t;
|
|
51
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(neetoui.Button, {
|
|
52
|
+
style: style,
|
|
53
|
+
label: t("neetoPayments.recurringPaymentCancel.buttonLabel"),
|
|
54
|
+
onClick: function onClick() {
|
|
55
|
+
return setIsAlertOpen(true);
|
|
56
|
+
}
|
|
57
|
+
}), /*#__PURE__*/React.createElement(neetoui.Alert, {
|
|
58
|
+
isOpen: isAlertOpen,
|
|
59
|
+
isSubmitting: isPending,
|
|
60
|
+
message: t("neetoPayments.recurringPaymentCancel.alertMessage"),
|
|
61
|
+
submitButtonLabel: t("neetoPayments.common.continue"),
|
|
62
|
+
title: t("neetoPayments.recurringPaymentCancel.alertTitle"),
|
|
63
|
+
onClose: function onClose() {
|
|
64
|
+
return setIsAlertOpen(false);
|
|
65
|
+
},
|
|
66
|
+
onSubmit: function onSubmit() {
|
|
67
|
+
return updateRecurringPayment({
|
|
68
|
+
id: id,
|
|
69
|
+
payload: {
|
|
70
|
+
status: "cancelled"
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}));
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
module.exports = AdminCancelRecurringPaymentButton;
|
|
78
|
+
//# sourceMappingURL=AdminCancelRecurringPaymentButton.js.map
|