@bigbinary/neeto-payments-frontend 6.1.12 → 6.1.14
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 +308 -333
- package/dist/AccountsDashboard.js.map +1 -1
- package/dist/AdminCancelRecurringPaymentButton.js +43 -54
- package/dist/AdminCancelRecurringPaymentButton.js.map +1 -1
- package/dist/CashPaymentButton.js +32 -34
- package/dist/CashPaymentButton.js.map +1 -1
- package/dist/ConfirmCashPaymentButton.js +77 -71
- package/dist/ConfirmCashPaymentButton.js.map +1 -1
- package/dist/{CopyButtonWrapper-rv-OaINx.js → CopyButtonWrapper-Bp5IVO76.js} +16 -14
- package/dist/CopyButtonWrapper-Bp5IVO76.js.map +1 -0
- package/dist/CustomerCancelRecurringPaymentForm.js +76 -75
- package/dist/CustomerCancelRecurringPaymentForm.js.map +1 -1
- package/dist/ExportModal-CoRuQVas.js +120 -0
- package/dist/ExportModal-CoRuQVas.js.map +1 -0
- package/dist/ManualUpiConnect.js +159 -178
- package/dist/ManualUpiConnect.js.map +1 -1
- package/dist/ManualUpiPayment.js +85 -89
- package/dist/ManualUpiPayment.js.map +1 -1
- package/dist/ManualUpiPaymentConfirmButton.js +119 -115
- package/dist/ManualUpiPaymentConfirmButton.js.map +1 -1
- package/dist/ManualUpiPaymentRejectButton.js +98 -92
- package/dist/ManualUpiPaymentRejectButton.js.map +1 -1
- package/dist/PaymentKindRestrictionAlert.js +14 -19
- package/dist/PaymentKindRestrictionAlert.js.map +1 -1
- package/dist/PaymentsDashboard.js +318 -349
- package/dist/PaymentsDashboard.js.map +1 -1
- package/dist/PayoutsDashboard.js +327 -350
- package/dist/PayoutsDashboard.js.map +1 -1
- package/dist/PayoutsPage.js +114 -92
- package/dist/PayoutsPage.js.map +1 -1
- package/dist/RazorpayConnect.js +71 -62
- package/dist/RazorpayConnect.js.map +1 -1
- package/dist/RazorpayLinkedAccountForm.js +145 -156
- package/dist/RazorpayLinkedAccountForm.js.map +1 -1
- package/dist/RazorpayPaymentButton.js +72 -100
- package/dist/RazorpayPaymentButton.js.map +1 -1
- package/dist/RecurringPaymentSettings.js +85 -85
- package/dist/RecurringPaymentSettings.js.map +1 -1
- package/dist/RefundsDashboard.js +363 -386
- package/dist/RefundsDashboard.js.map +1 -1
- package/dist/SplitTransfersDashboard.js +868 -829
- package/dist/SplitTransfersDashboard.js.map +1 -1
- package/dist/StripeCheckoutSetting.js +63 -75
- package/dist/StripeCheckoutSetting.js.map +1 -1
- package/dist/StripeConnect.js +257 -259
- package/dist/StripeConnect.js.map +1 -1
- package/dist/StripeManage.js +28 -25
- package/dist/StripeManage.js.map +1 -1
- package/dist/TaxesDashboard.js +284 -292
- package/dist/TaxesDashboard.js.map +1 -1
- package/dist/buildStripeTransactionLink.js +1 -1
- package/dist/cjs/AccountsDashboard.js +308 -333
- package/dist/cjs/AccountsDashboard.js.map +1 -1
- package/dist/cjs/AdminCancelRecurringPaymentButton.js +43 -54
- package/dist/cjs/AdminCancelRecurringPaymentButton.js.map +1 -1
- package/dist/cjs/CashPaymentButton.js +32 -34
- package/dist/cjs/CashPaymentButton.js.map +1 -1
- package/dist/cjs/ConfirmCashPaymentButton.js +77 -71
- package/dist/cjs/ConfirmCashPaymentButton.js.map +1 -1
- package/dist/cjs/{CopyButtonWrapper-BkpN0Wmd.js → CopyButtonWrapper-I-kdKiiB.js} +16 -14
- package/dist/cjs/CopyButtonWrapper-I-kdKiiB.js.map +1 -0
- package/dist/cjs/CustomerCancelRecurringPaymentForm.js +76 -75
- package/dist/cjs/CustomerCancelRecurringPaymentForm.js.map +1 -1
- package/dist/cjs/ExportModal-ClKqp-oy.js +122 -0
- package/dist/cjs/ExportModal-ClKqp-oy.js.map +1 -0
- package/dist/cjs/ManualUpiConnect.js +159 -178
- package/dist/cjs/ManualUpiConnect.js.map +1 -1
- package/dist/cjs/ManualUpiPayment.js +85 -89
- package/dist/cjs/ManualUpiPayment.js.map +1 -1
- package/dist/cjs/ManualUpiPaymentConfirmButton.js +118 -114
- package/dist/cjs/ManualUpiPaymentConfirmButton.js.map +1 -1
- package/dist/cjs/ManualUpiPaymentRejectButton.js +98 -92
- package/dist/cjs/ManualUpiPaymentRejectButton.js.map +1 -1
- package/dist/cjs/PaymentKindRestrictionAlert.js +14 -19
- package/dist/cjs/PaymentKindRestrictionAlert.js.map +1 -1
- package/dist/cjs/PaymentsDashboard.js +318 -349
- package/dist/cjs/PaymentsDashboard.js.map +1 -1
- package/dist/cjs/PayoutsDashboard.js +327 -350
- package/dist/cjs/PayoutsDashboard.js.map +1 -1
- package/dist/cjs/PayoutsPage.js +114 -92
- package/dist/cjs/PayoutsPage.js.map +1 -1
- package/dist/cjs/RazorpayConnect.js +71 -62
- package/dist/cjs/RazorpayConnect.js.map +1 -1
- package/dist/cjs/RazorpayLinkedAccountForm.js +145 -156
- package/dist/cjs/RazorpayLinkedAccountForm.js.map +1 -1
- package/dist/cjs/RazorpayPaymentButton.js +72 -100
- package/dist/cjs/RazorpayPaymentButton.js.map +1 -1
- package/dist/cjs/RecurringPaymentSettings.js +85 -85
- package/dist/cjs/RecurringPaymentSettings.js.map +1 -1
- package/dist/cjs/RefundsDashboard.js +363 -386
- package/dist/cjs/RefundsDashboard.js.map +1 -1
- package/dist/cjs/SplitTransfersDashboard.js +867 -828
- package/dist/cjs/SplitTransfersDashboard.js.map +1 -1
- package/dist/cjs/StripeCheckoutSetting.js +63 -75
- package/dist/cjs/StripeCheckoutSetting.js.map +1 -1
- package/dist/cjs/StripeConnect.js +257 -259
- package/dist/cjs/StripeConnect.js.map +1 -1
- package/dist/cjs/StripeManage.js +28 -25
- package/dist/cjs/StripeManage.js.map +1 -1
- package/dist/cjs/TaxesDashboard.js +284 -292
- package/dist/cjs/TaxesDashboard.js.map +1 -1
- package/dist/cjs/buildStripeTransactionLink.js +1 -1
- package/dist/cjs/constants.js +1 -1
- package/dist/cjs/dashboard-B1R6fLcS.js +96 -0
- package/dist/cjs/dashboard-B1R6fLcS.js.map +1 -0
- package/dist/cjs/{exportChannel-D1Wls92m.js → exportChannel-BL2RGGhP.js} +16 -18
- package/dist/cjs/{exportChannel-D1Wls92m.js.map → exportChannel-BL2RGGhP.js.map} +1 -1
- package/dist/cjs/getAddressElementOptions.js +1 -1
- package/dist/cjs/getAmountInLargestCurrencyUnit.js +1 -1
- package/dist/cjs/getAmountInSmallestCurrencyUnit.js +1 -1
- package/dist/cjs/getAmountWithAppliedTax.js +1 -1
- package/dist/cjs/getFormattedAmount.js +1 -1
- package/dist/cjs/getFormattedDiscountedAmount.js +1 -1
- package/dist/cjs/getFormattedDiscountedPercentage.js +1 -1
- package/dist/cjs/getFormattedTaxAmount.js +1 -1
- package/dist/cjs/getFormattedTipAmount.js +1 -1
- package/dist/cjs/getQrCodeValue.js +1 -1
- package/dist/cjs/getTaxAmount.js +1 -1
- package/dist/cjs/getTipAmount.js +1 -1
- package/dist/cjs/hasAmountToPay.js +1 -1
- package/dist/cjs/index-C3LUTqjR.js +855 -0
- package/dist/cjs/{index-CZ_VFGNj.js.map → index-C3LUTqjR.js.map} +1 -1
- package/dist/cjs/index.js +14 -20
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/{queryConstants-Cka1X6GX.js → queryConstants-Dc6wh21D.js} +2 -2
- package/dist/cjs/{queryConstants-Cka1X6GX.js.map → queryConstants-Dc6wh21D.js.map} +1 -1
- package/dist/cjs/renderFunctions-ghFUoYiM.js +48 -0
- package/dist/cjs/renderFunctions-ghFUoYiM.js.map +1 -0
- package/dist/cjs/useAccountsApi-Dw9yNiOj.js +42 -0
- package/dist/cjs/useAccountsApi-Dw9yNiOj.js.map +1 -0
- package/dist/cjs/useIntegrationsApi-B8JBENJ0.js +20 -0
- package/dist/cjs/{useIntegrationsApi-BO9PhVVO.js.map → useIntegrationsApi-B8JBENJ0.js.map} +1 -1
- package/dist/cjs/usePaymentApi-C034qyn4.js +29 -0
- package/dist/cjs/usePaymentApi-C034qyn4.js.map +1 -0
- package/dist/cjs/usePaymentApi-Dvv-jkNC.js +44 -0
- package/dist/cjs/usePaymentApi-Dvv-jkNC.js.map +1 -0
- package/dist/cjs/usePaymentApi-HlugiqX9.js +29 -0
- package/dist/cjs/{usePaymentApi-BE8xfY-U.js.map → usePaymentApi-HlugiqX9.js.map} +1 -1
- package/dist/cjs/usePlatformApi-DpOqBsBn.js +55 -0
- package/dist/cjs/{usePlatformApi-C7lXP6ev.js.map → usePlatformApi-DpOqBsBn.js.map} +1 -1
- package/dist/cjs/useRazorpayPayment.js +48 -73
- package/dist/cjs/useRazorpayPayment.js.map +1 -1
- package/dist/cjs/useStripePromise.js +22 -48
- package/dist/cjs/useStripePromise.js.map +1 -1
- package/dist/constants.js +1 -1
- package/dist/dashboard-CKB3Vyop.js +90 -0
- package/dist/dashboard-CKB3Vyop.js.map +1 -0
- package/dist/{exportChannel-DAxJ44QB.js → exportChannel-Db0U5gc1.js} +16 -18
- package/dist/{exportChannel-DAxJ44QB.js.map → exportChannel-Db0U5gc1.js.map} +1 -1
- package/dist/getAddressElementOptions.js +1 -1
- package/dist/getAmountInLargestCurrencyUnit.js +1 -1
- package/dist/getAmountInSmallestCurrencyUnit.js +1 -1
- package/dist/getAmountWithAppliedTax.js +1 -1
- package/dist/getFormattedAmount.js +1 -1
- package/dist/getFormattedDiscountedAmount.js +1 -1
- package/dist/getFormattedDiscountedPercentage.js +1 -1
- package/dist/getFormattedTaxAmount.js +1 -1
- package/dist/getFormattedTipAmount.js +1 -1
- package/dist/getQrCodeValue.js +1 -1
- package/dist/getTaxAmount.js +1 -1
- package/dist/getTipAmount.js +1 -1
- package/dist/hasAmountToPay.js +1 -1
- package/dist/index-BTVToZp9.js +804 -0
- package/dist/{index-C7irWceQ.js.map → index-BTVToZp9.js.map} +1 -1
- package/dist/index.js +14 -20
- package/dist/index.js.map +1 -1
- package/dist/{queryConstants-DFKKEEo0.js → queryConstants-C7AqdemO.js} +2 -2
- package/dist/{queryConstants-DFKKEEo0.js.map → queryConstants-C7AqdemO.js.map} +1 -1
- package/dist/renderFunctions-BB3hiqhN.js +44 -0
- package/dist/renderFunctions-BB3hiqhN.js.map +1 -0
- package/dist/useAccountsApi-C4KOwjWh.js +38 -0
- package/dist/useAccountsApi-C4KOwjWh.js.map +1 -0
- package/dist/useIntegrationsApi-CDqBFq32.js +18 -0
- package/dist/{useIntegrationsApi-D1bkKtoy.js.map → useIntegrationsApi-CDqBFq32.js.map} +1 -1
- package/dist/usePaymentApi-B3dzQqWN.js +26 -0
- package/dist/usePaymentApi-B3dzQqWN.js.map +1 -0
- package/dist/usePaymentApi-DG2ApS6s.js +41 -0
- package/dist/usePaymentApi-DG2ApS6s.js.map +1 -0
- package/dist/usePaymentApi-_dPcALic.js +27 -0
- package/dist/{usePaymentApi-DcMNbOMk.js.map → usePaymentApi-_dPcALic.js.map} +1 -1
- package/dist/usePlatformApi-DBLpH3rH.js +50 -0
- package/dist/{usePlatformApi-Di7Dg-Gn.js.map → usePlatformApi-DBLpH3rH.js.map} +1 -1
- package/dist/useRazorpayPayment.js +48 -73
- package/dist/useRazorpayPayment.js.map +1 -1
- package/dist/useStripePromise.js +22 -48
- package/dist/useStripePromise.js.map +1 -1
- package/package.json +12 -11
- package/dist/CopyButtonWrapper-rv-OaINx.js.map +0 -1
- package/dist/ExportModal-CxKyrlwf.js +0 -120
- package/dist/ExportModal-CxKyrlwf.js.map +0 -1
- package/dist/cjs/CopyButtonWrapper-BkpN0Wmd.js.map +0 -1
- package/dist/cjs/ExportModal-DxCzPCh0.js +0 -122
- package/dist/cjs/ExportModal-DxCzPCh0.js.map +0 -1
- package/dist/cjs/dashboard-DKHencVn.js +0 -110
- package/dist/cjs/dashboard-DKHencVn.js.map +0 -1
- package/dist/cjs/index-CZ_VFGNj.js +0 -899
- package/dist/cjs/renderFunctions-CX_K4qf8.js +0 -51
- package/dist/cjs/renderFunctions-CX_K4qf8.js.map +0 -1
- package/dist/cjs/useAccountsApi-DC617yB4.js +0 -62
- package/dist/cjs/useAccountsApi-DC617yB4.js.map +0 -1
- package/dist/cjs/useIntegrationsApi-BO9PhVVO.js +0 -26
- package/dist/cjs/usePaymentApi-BE8xfY-U.js +0 -39
- package/dist/cjs/usePaymentApi-C9aQhuda.js +0 -56
- package/dist/cjs/usePaymentApi-C9aQhuda.js.map +0 -1
- package/dist/cjs/usePaymentApi-CrKom4eT.js +0 -41
- package/dist/cjs/usePaymentApi-CrKom4eT.js.map +0 -1
- package/dist/cjs/usePlatformApi-C7lXP6ev.js +0 -84
- package/dist/dashboard-ClEN2ygs.js +0 -104
- package/dist/dashboard-ClEN2ygs.js.map +0 -1
- package/dist/index-C7irWceQ.js +0 -848
- package/dist/renderFunctions-D9sAy3V_.js +0 -47
- package/dist/renderFunctions-D9sAy3V_.js.map +0 -1
- package/dist/useAccountsApi-DPem_UA-.js +0 -58
- package/dist/useAccountsApi-DPem_UA-.js.map +0 -1
- package/dist/useIntegrationsApi-D1bkKtoy.js +0 -24
- package/dist/usePaymentApi-BV0jXF-6.js +0 -38
- package/dist/usePaymentApi-BV0jXF-6.js.map +0 -1
- package/dist/usePaymentApi-DHARy-kC.js +0 -53
- package/dist/usePaymentApi-DHARy-kC.js.map +0 -1
- package/dist/usePaymentApi-DcMNbOMk.js +0 -37
- package/dist/usePlatformApi-Di7Dg-Gn.js +0 -79
|
@@ -1,93 +1,99 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
4
3
|
var react = require('react');
|
|
5
4
|
var neetocist = require('neetocist');
|
|
6
5
|
var reactI18next = require('react-i18next');
|
|
7
|
-
var usePaymentApi = require('./usePaymentApi-
|
|
6
|
+
var usePaymentApi = require('./usePaymentApi-C034qyn4.js');
|
|
8
7
|
var neetoui = require('@bigbinary/neetoui');
|
|
9
8
|
var formik = require('@bigbinary/neetoui/formik');
|
|
10
|
-
require('
|
|
9
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
11
10
|
require('@tanstack/react-query');
|
|
12
11
|
require('axios');
|
|
13
|
-
require('./index-
|
|
12
|
+
require('./index-C3LUTqjR.js');
|
|
14
13
|
require('i18next');
|
|
15
14
|
require('neetocommons/constants');
|
|
16
15
|
require('decimal.js');
|
|
17
16
|
require('neetocommons/utils');
|
|
18
17
|
require('ramda');
|
|
19
18
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
notes: notes,
|
|
43
|
-
payableId: payableId,
|
|
19
|
+
const ConfirmCashPaymentButton = ({
|
|
20
|
+
paymentId,
|
|
21
|
+
payableId,
|
|
22
|
+
onSuccess = neetocist.noop
|
|
23
|
+
}) => {
|
|
24
|
+
const [isModalOpen, setIsModalOpen] = react.useState(false);
|
|
25
|
+
const {
|
|
26
|
+
t
|
|
27
|
+
} = reactI18next.useTranslation();
|
|
28
|
+
const {
|
|
29
|
+
mutate: updateUpiPayment,
|
|
30
|
+
isPending
|
|
31
|
+
} = usePaymentApi.useUpdateCashPayment(paymentId, {
|
|
32
|
+
onSuccess
|
|
33
|
+
});
|
|
34
|
+
const onClose = () => setIsModalOpen(false);
|
|
35
|
+
const handleSubmit = ({
|
|
36
|
+
notes
|
|
37
|
+
}) => {
|
|
38
|
+
const payload = {
|
|
39
|
+
notes,
|
|
40
|
+
payableId,
|
|
44
41
|
status: "successful"
|
|
45
42
|
};
|
|
46
43
|
updateUpiPayment(payload);
|
|
47
44
|
};
|
|
48
|
-
return /*#__PURE__*/
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
45
|
+
return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
46
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoui.Button, {
|
|
47
|
+
"data-testid": "confirm-cash-payment-button",
|
|
48
|
+
label: t("neetoPayments.common.confirmPayment"),
|
|
49
|
+
loading: isPending,
|
|
50
|
+
size: "small",
|
|
51
|
+
onClick: () => setIsModalOpen(true)
|
|
52
|
+
}), /*#__PURE__*/jsxRuntime.jsxs(neetoui.Modal, {
|
|
53
|
+
onClose,
|
|
54
|
+
isOpen: isModalOpen,
|
|
55
|
+
size: "large",
|
|
56
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoui.Modal.Header, {
|
|
57
|
+
children: /*#__PURE__*/jsxRuntime.jsx(neetoui.Typography, {
|
|
58
|
+
style: "h2",
|
|
59
|
+
children: t("neetoPayments.cash.confirmModal.title")
|
|
60
|
+
})
|
|
61
|
+
}), /*#__PURE__*/jsxRuntime.jsx(formik.Form, {
|
|
62
|
+
formikProps: {
|
|
63
|
+
initialValues: {
|
|
64
|
+
notes: ""
|
|
65
|
+
},
|
|
66
|
+
onSubmit: handleSubmit
|
|
67
|
+
},
|
|
68
|
+
children: ({
|
|
69
|
+
isSubmitting
|
|
70
|
+
}) => /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
71
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoui.Modal.Body, {
|
|
72
|
+
children: /*#__PURE__*/jsxRuntime.jsx(formik.Textarea, {
|
|
73
|
+
"data-testid": "confirm-booking-modal-input-textfield",
|
|
74
|
+
label: t("neetoPayments.cash.confirmModal.notes"),
|
|
75
|
+
name: "notes",
|
|
76
|
+
placeholder: t("neetoPayments.cash.confirmModal.notesPlaceholder")
|
|
77
|
+
})
|
|
78
|
+
}), /*#__PURE__*/jsxRuntime.jsx(neetoui.Modal.Footer, {
|
|
79
|
+
className: "space-x-2",
|
|
80
|
+
children: /*#__PURE__*/jsxRuntime.jsx(formik.ActionBlock, {
|
|
81
|
+
isSubmitting: isPending,
|
|
82
|
+
position: "right",
|
|
83
|
+
cancelButtonProps: {
|
|
84
|
+
onClick: onClose,
|
|
85
|
+
style: "tertiary"
|
|
86
|
+
},
|
|
87
|
+
submitButtonProps: {
|
|
88
|
+
disabled: isSubmitting || isPending,
|
|
89
|
+
label: t("neetoPayments.common.confirm")
|
|
90
|
+
}
|
|
91
|
+
})
|
|
92
|
+
})]
|
|
93
|
+
})
|
|
94
|
+
})]
|
|
95
|
+
})]
|
|
96
|
+
});
|
|
91
97
|
};
|
|
92
98
|
|
|
93
99
|
module.exports = ConfirmCashPaymentButton;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfirmCashPaymentButton.js","sources":["../../app/javascript/src/components/ConfirmCashPaymentButton.jsx"],"sourcesContent":["import { useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useUpdateCashPayment } from \"hooks/reactQuery/cash/usePaymentApi\";\nimport { Button, Modal, Typography } from \"neetoui\";\nimport { Form, Textarea, ActionBlock } from \"neetoui/formik\";\n\nconst ConfirmCashPaymentButton = ({\n paymentId,\n payableId,\n onSuccess = noop,\n}) => {\n const [isModalOpen, setIsModalOpen] = useState(false);\n\n const { t } = useTranslation();\n\n const { mutate: updateUpiPayment, isPending } = useUpdateCashPayment(\n paymentId,\n { onSuccess }\n );\n\n const onClose = () => setIsModalOpen(false);\n\n const handleSubmit = ({ notes }) => {\n const payload = { notes, payableId, status: \"successful\" };\n updateUpiPayment(payload);\n };\n\n return (\n <>\n <Button\n data-testid=\"confirm-cash-payment-button\"\n label={t(\"neetoPayments.common.confirmPayment\")}\n loading={isPending}\n size=\"small\"\n onClick={() => setIsModalOpen(true)}\n />\n <Modal {...{ onClose }} isOpen={isModalOpen} size=\"large\">\n <Modal.Header>\n <Typography style=\"h2\">\n {t(\"neetoPayments.cash.confirmModal.title\")}\n </Typography>\n </Modal.Header>\n <Form\n formikProps={{\n initialValues: { notes: \"\" },\n onSubmit: handleSubmit,\n }}\n >\n {({ isSubmitting }) => (\n <>\n <Modal.Body>\n <Textarea\n data-testid=\"confirm-booking-modal-input-textfield\"\n label={t(\"neetoPayments.cash.confirmModal.notes\")}\n name=\"notes\"\n placeholder={t(\n \"neetoPayments.cash.confirmModal.notesPlaceholder\"\n )}\n />\n </Modal.Body>\n <Modal.Footer className=\"space-x-2\">\n <ActionBlock\n isSubmitting={isPending}\n position=\"right\"\n cancelButtonProps={{\n onClick: onClose,\n style: \"tertiary\",\n }}\n submitButtonProps={{\n disabled: isSubmitting || isPending,\n label: t(\"neetoPayments.common.confirm\"),\n }}\n />\n </Modal.Footer>\n </>\n )}\n </Form>\n </Modal>\n </>\n );\n};\n\nexport default ConfirmCashPaymentButton;\n"],"names":["ConfirmCashPaymentButton","
|
|
1
|
+
{"version":3,"file":"ConfirmCashPaymentButton.js","sources":["../../app/javascript/src/components/ConfirmCashPaymentButton.jsx"],"sourcesContent":["import { useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useUpdateCashPayment } from \"hooks/reactQuery/cash/usePaymentApi\";\nimport { Button, Modal, Typography } from \"neetoui\";\nimport { Form, Textarea, ActionBlock } from \"neetoui/formik\";\n\nconst ConfirmCashPaymentButton = ({\n paymentId,\n payableId,\n onSuccess = noop,\n}) => {\n const [isModalOpen, setIsModalOpen] = useState(false);\n\n const { t } = useTranslation();\n\n const { mutate: updateUpiPayment, isPending } = useUpdateCashPayment(\n paymentId,\n { onSuccess }\n );\n\n const onClose = () => setIsModalOpen(false);\n\n const handleSubmit = ({ notes }) => {\n const payload = { notes, payableId, status: \"successful\" };\n updateUpiPayment(payload);\n };\n\n return (\n <>\n <Button\n data-testid=\"confirm-cash-payment-button\"\n label={t(\"neetoPayments.common.confirmPayment\")}\n loading={isPending}\n size=\"small\"\n onClick={() => setIsModalOpen(true)}\n />\n <Modal {...{ onClose }} isOpen={isModalOpen} size=\"large\">\n <Modal.Header>\n <Typography style=\"h2\">\n {t(\"neetoPayments.cash.confirmModal.title\")}\n </Typography>\n </Modal.Header>\n <Form\n formikProps={{\n initialValues: { notes: \"\" },\n onSubmit: handleSubmit,\n }}\n >\n {({ isSubmitting }) => (\n <>\n <Modal.Body>\n <Textarea\n data-testid=\"confirm-booking-modal-input-textfield\"\n label={t(\"neetoPayments.cash.confirmModal.notes\")}\n name=\"notes\"\n placeholder={t(\n \"neetoPayments.cash.confirmModal.notesPlaceholder\"\n )}\n />\n </Modal.Body>\n <Modal.Footer className=\"space-x-2\">\n <ActionBlock\n isSubmitting={isPending}\n position=\"right\"\n cancelButtonProps={{\n onClick: onClose,\n style: \"tertiary\",\n }}\n submitButtonProps={{\n disabled: isSubmitting || isPending,\n label: t(\"neetoPayments.common.confirm\"),\n }}\n />\n </Modal.Footer>\n </>\n )}\n </Form>\n </Modal>\n </>\n );\n};\n\nexport default ConfirmCashPaymentButton;\n"],"names":["ConfirmCashPaymentButton","paymentId","payableId","onSuccess","noop","isModalOpen","setIsModalOpen","useState","t","useTranslation","mutate","updateUpiPayment","isPending","useUpdateCashPayment","onClose","handleSubmit","notes","payload","status","_jsxs","_Fragment","children","_jsx","Button","label","loading","size","onClick","Modal","isOpen","Header","Typography","style","Form","formikProps","initialValues","onSubmit","isSubmitting","Body","Textarea","name","placeholder","Footer","className","ActionBlock","position","cancelButtonProps","submitButtonProps","disabled"],"mappings":";;;;;;;;;;;;;;;;;;AASMA,MAAAA,wBAAwB,GAAGA,CAAC;EAChCC,SAAS;EACTC,SAAS;AACTC,EAAAA,SAAS,GAAGC;AACd,CAAC,KAAK;EACJ,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGC,cAAQ,CAAC,KAAK,CAAC;EAErD,MAAM;AAAEC,IAAAA;GAAG,GAAGC,2BAAc,EAAE;EAE9B,MAAM;AAAEC,IAAAA,MAAM,EAAEC,gBAAgB;AAAEC,IAAAA;AAAU,GAAC,GAAGC,kCAAoB,CAClEZ,SAAS,EACT;AAAEE,IAAAA;AAAU,GACd,CAAC;AAED,EAAA,MAAMW,OAAO,GAAGA,MAAMR,cAAc,CAAC,KAAK,CAAC;EAE3C,MAAMS,YAAY,GAAGA,CAAC;AAAEC,IAAAA;AAAM,GAAC,KAAK;AAClC,IAAA,MAAMC,OAAO,GAAG;MAAED,KAAK;MAAEd,SAAS;AAAEgB,MAAAA,MAAM,EAAE;KAAc;IAC1DP,gBAAgB,CAACM,OAAO,CAAC;GAC1B;EAED,oBACEE,eAAA,CAAAC,mBAAA,EAAA;IAAAC,QAAA,EAAA,cACEC,cAAA,CAACC,cAAM,EAAA;AACL,MAAA,aAAA,EAAY,6BAA6B;AACzCC,MAAAA,KAAK,EAAEhB,CAAC,CAAC,qCAAqC,CAAE;AAChDiB,MAAAA,OAAO,EAAEb,SAAU;AACnBc,MAAAA,IAAI,EAAC,OAAO;AACZC,MAAAA,OAAO,EAAEA,MAAMrB,cAAc,CAAC,IAAI;AAAE,KACrC,CAAC,eACFa,eAAA,CAACS,aAAK,EAAA;MAAOd,OAAO;AAAIe,MAAAA,MAAM,EAAExB,WAAY;AAACqB,MAAAA,IAAI,EAAC,OAAO;AAAAL,MAAAA,QAAA,EACvDC,cAAAA,cAAA,CAACM,aAAK,CAACE,MAAM,EAAA;QAAAT,QAAA,eACXC,cAAA,CAACS,kBAAU,EAAA;AAACC,UAAAA,KAAK,EAAC,IAAI;UAAAX,QAAA,EACnBb,CAAC,CAAC,uCAAuC;SAChC;AAAC,OACD,CAAC,eACfc,cAAA,CAACW,WAAI,EAAA;AACHC,QAAAA,WAAW,EAAE;AACXC,UAAAA,aAAa,EAAE;AAAEnB,YAAAA,KAAK,EAAE;WAAI;AAC5BoB,UAAAA,QAAQ,EAAErB;SACV;AAAAM,QAAAA,QAAA,EAEDA,CAAC;AAAEgB,UAAAA;SAAc,kBAChBlB,eAAA,CAAAC,mBAAA,EAAA;AAAAC,UAAAA,QAAA,EACEC,cAAAA,cAAA,CAACM,aAAK,CAACU,IAAI,EAAA;YAAAjB,QAAA,eACTC,cAAA,CAACiB,eAAQ,EAAA;AACP,cAAA,aAAA,EAAY,uCAAuC;AACnDf,cAAAA,KAAK,EAAEhB,CAAC,CAAC,uCAAuC,CAAE;AAClDgC,cAAAA,IAAI,EAAC,OAAO;cACZC,WAAW,EAAEjC,CAAC,CACZ,kDACF;aACD;AAAC,WACQ,CAAC,eACbc,cAAA,CAACM,aAAK,CAACc,MAAM,EAAA;AAACC,YAAAA,SAAS,EAAC,WAAW;YAAAtB,QAAA,eACjCC,cAAA,CAACsB,kBAAW,EAAA;AACVP,cAAAA,YAAY,EAAEzB,SAAU;AACxBiC,cAAAA,QAAQ,EAAC,OAAO;AAChBC,cAAAA,iBAAiB,EAAE;AACjBnB,gBAAAA,OAAO,EAAEb,OAAO;AAChBkB,gBAAAA,KAAK,EAAE;eACP;AACFe,cAAAA,iBAAiB,EAAE;gBACjBC,QAAQ,EAAEX,YAAY,IAAIzB,SAAS;gBACnCY,KAAK,EAAEhB,CAAC,CAAC,8BAA8B;AACzC;aACD;AAAC,WACU,CAAC;SACf;AACH,OACG,CAAC;AAAA,KACF,CAAC;AAAA,GACR,CAAC;AAEP;;;;"}
|
|
@@ -2,26 +2,28 @@
|
|
|
2
2
|
|
|
3
3
|
var neetocist = require('neetocist');
|
|
4
4
|
var CopyToClipboardButton = require('@bigbinary/neeto-molecules/CopyToClipboardButton');
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
6
|
|
|
6
7
|
var e=[],t=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=!0===r.prepend?"prepend":"append",d=!0===r.singleTag,i="string"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName("head")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement("style");if(e.setAttribute("type","text/css"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a="prepend"===s?"afterbegin":"beforeend";return i.insertAdjacentElement(a,e),e}}
|
|
7
8
|
|
|
8
9
|
var css = ".ant-table-cell-row-hover .identifier-copy-button{visibility:visible!important}";
|
|
9
10
|
n(css,{});
|
|
10
11
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
className: "identifier-copy-button invisible"
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
12
|
+
const CopyButtonWrapper = ({
|
|
13
|
+
content,
|
|
14
|
+
children
|
|
15
|
+
}) => /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
16
|
+
className: "flex items-center space-x-2",
|
|
17
|
+
children: [children, neetocist.isPresent(content) && /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
18
|
+
className: "identifier-copy-button invisible",
|
|
19
|
+
children: /*#__PURE__*/jsxRuntime.jsx(CopyToClipboardButton, {
|
|
20
|
+
size: "small",
|
|
21
|
+
style: "text",
|
|
22
|
+
value: content
|
|
23
|
+
})
|
|
24
|
+
})]
|
|
25
|
+
});
|
|
24
26
|
|
|
25
27
|
exports.CopyButtonWrapper = CopyButtonWrapper;
|
|
26
28
|
exports.n = n;
|
|
27
|
-
//# sourceMappingURL=CopyButtonWrapper-
|
|
29
|
+
//# sourceMappingURL=CopyButtonWrapper-I-kdKiiB.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CopyButtonWrapper-I-kdKiiB.js","sources":["../../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","../../app/javascript/src/components/Common/CopyButtonWrapper.jsx"],"sourcesContent":["var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","import { isPresent } from \"neetocist\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\n\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/components/copy-button.css\";\n\nconst CopyButtonWrapper = ({ content, children }) => (\n <div className=\"flex items-center space-x-2\">\n {children}\n {isPresent(content) && (\n <div className=\"identifier-copy-button invisible\">\n <CopyToClipboardButton size=\"small\" style=\"text\" value={content} />\n </div>\n )}\n </div>\n);\n\nexport default CopyButtonWrapper;\n"],"names":["CopyButtonWrapper","content","children","_jsxs","className","isPresent","_jsx","CopyToClipboardButton","size","style","value"],"mappings":";;;;;;AAAA,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,OAAO,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,EAAC,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;;;;;ACM/tBA,MAAAA,iBAAiB,GAAGA,CAAC;EAAEC,OAAO;AAAEC,EAAAA;AAAS,CAAC,kBAC9CC,eAAA,CAAA,KAAA,EAAA;AAAKC,EAAAA,SAAS,EAAC,6BAA6B;EAAAF,QAAA,EAAA,CACzCA,QAAQ,EACRG,mBAAS,CAACJ,OAAO,CAAC,iBACjBK,cAAA,CAAA,KAAA,EAAA;AAAKF,IAAAA,SAAS,EAAC,kCAAkC;IAAAF,QAAA,eAC/CI,cAAA,CAACC,qBAAqB,EAAA;AAACC,MAAAA,IAAI,EAAC,OAAO;AAACC,MAAAA,KAAK,EAAC,MAAM;AAACC,MAAAA,KAAK,EAAET;KAAU;AAAC,GAChE,CACN;AAAA,CACE;;;;;","x_google_ignoreList":[0]}
|
|
@@ -3,101 +3,102 @@
|
|
|
3
3
|
var reactI18next = require('react-i18next');
|
|
4
4
|
var reactUtils = require('neetocommons/react-utils');
|
|
5
5
|
var axios = require('axios');
|
|
6
|
-
var constants = require('./index-
|
|
6
|
+
var constants = require('./index-C3LUTqjR.js');
|
|
7
7
|
var reactQuery = require('@tanstack/react-query');
|
|
8
8
|
var ramda = require('ramda');
|
|
9
|
-
var queryConstants = require('./queryConstants-
|
|
9
|
+
var queryConstants = require('./queryConstants-Dc6wh21D.js');
|
|
10
10
|
var neetoui = require('@bigbinary/neetoui');
|
|
11
11
|
var formik = require('@bigbinary/neetoui/formik');
|
|
12
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
12
13
|
require('i18next');
|
|
13
14
|
require('neetocommons/constants');
|
|
14
15
|
require('decimal.js');
|
|
15
16
|
require('neetocist');
|
|
16
17
|
require('neetocommons/utils');
|
|
17
18
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
var recurringPaymentsApi = {
|
|
29
|
-
show: show,
|
|
30
|
-
update: update
|
|
19
|
+
const show = payableId => axios.get(`${constants.BASE_URL}/api/v1/public/recurring_payments/${payableId}`);
|
|
20
|
+
const update = ({
|
|
21
|
+
payableId,
|
|
22
|
+
payload
|
|
23
|
+
}) => axios.put(`${constants.BASE_URL}/api/v1/public/recurring_payments/${payableId}`, {
|
|
24
|
+
recurring_payment: payload
|
|
25
|
+
});
|
|
26
|
+
const recurringPaymentsApi = {
|
|
27
|
+
show,
|
|
28
|
+
update
|
|
31
29
|
};
|
|
32
30
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
};
|
|
42
|
-
var useUpdateRecurringPayments = function useUpdateRecurringPayments(payableId) {
|
|
43
|
-
return reactUtils.useMutationWithInvalidation(recurringPaymentsApi.update, {
|
|
44
|
-
keysToInvalidate: [queryConstants.QUERY_KEYS.RECURRING_PAYMENT, payableId]
|
|
45
|
-
});
|
|
46
|
-
};
|
|
31
|
+
const useFetchRecurringPayment = payableId => reactQuery.useQuery({
|
|
32
|
+
queryKey: [queryConstants.QUERY_KEYS.RECURRING_PAYMENT, payableId],
|
|
33
|
+
queryFn: () => recurringPaymentsApi.show(payableId),
|
|
34
|
+
enabled: ramda.isNotNil(payableId)
|
|
35
|
+
});
|
|
36
|
+
const useUpdateRecurringPayments = payableId => reactUtils.useMutationWithInvalidation(recurringPaymentsApi.update, {
|
|
37
|
+
keysToInvalidate: [queryConstants.QUERY_KEYS.RECURRING_PAYMENT, payableId]
|
|
38
|
+
});
|
|
47
39
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
40
|
+
const CustomerCancelRecurringPaymentForm = ({
|
|
41
|
+
payableId
|
|
42
|
+
}) => {
|
|
43
|
+
const {
|
|
44
|
+
t
|
|
45
|
+
} = reactI18next.useTranslation();
|
|
46
|
+
const {
|
|
47
|
+
isLoading,
|
|
48
|
+
data: {
|
|
49
|
+
recurringPayment
|
|
50
|
+
} = {}
|
|
51
|
+
} = useFetchRecurringPayment(payableId);
|
|
52
|
+
const {
|
|
53
|
+
isPending,
|
|
54
|
+
mutate: updateRecurringPayment
|
|
55
|
+
} = useUpdateRecurringPayments(payableId);
|
|
60
56
|
if (isLoading) {
|
|
61
|
-
return /*#__PURE__*/
|
|
62
|
-
className: "flex h-full w-full items-center justify-center"
|
|
63
|
-
|
|
57
|
+
return /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
58
|
+
className: "flex h-full w-full items-center justify-center",
|
|
59
|
+
children: /*#__PURE__*/jsxRuntime.jsx(neetoui.Spinner, {})
|
|
60
|
+
});
|
|
64
61
|
}
|
|
65
|
-
if (
|
|
66
|
-
return /*#__PURE__*/
|
|
67
|
-
className: "flex h-full w-full items-center justify-center"
|
|
68
|
-
|
|
62
|
+
if (recurringPayment?.status === "cancelled") {
|
|
63
|
+
return /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
64
|
+
className: "flex h-full w-full items-center justify-center",
|
|
65
|
+
children: /*#__PURE__*/jsxRuntime.jsx(neetoui.Typography, {
|
|
66
|
+
children: t("neetoPayments.recurringPaymentCancel.message")
|
|
67
|
+
})
|
|
68
|
+
});
|
|
69
69
|
}
|
|
70
|
-
return /*#__PURE__*/
|
|
71
|
-
className: "flex h-full w-full items-center justify-center"
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
payableId
|
|
70
|
+
return /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
71
|
+
className: "flex h-full w-full items-center justify-center",
|
|
72
|
+
children: /*#__PURE__*/jsxRuntime.jsxs(formik.Form, {
|
|
73
|
+
className: "space-y-6",
|
|
74
|
+
formikProps: {
|
|
75
|
+
onSubmit: ({
|
|
76
|
+
cancelReason
|
|
77
|
+
}) => updateRecurringPayment({
|
|
78
|
+
payableId,
|
|
79
79
|
payload: {
|
|
80
80
|
status: "cancelled",
|
|
81
|
-
cancelReason
|
|
81
|
+
cancelReason
|
|
82
82
|
}
|
|
83
|
-
})
|
|
83
|
+
}),
|
|
84
|
+
initialValues: {
|
|
85
|
+
cancelReason: ""
|
|
86
|
+
}
|
|
84
87
|
},
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
style: "danger"
|
|
100
|
-
})));
|
|
88
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(formik.Textarea, {
|
|
89
|
+
"data-testid": "cancel-meeting-input-textfield",
|
|
90
|
+
label: t("neetoPayments.recurringPaymentCancel.reasonLabel"),
|
|
91
|
+
name: "cancelReason",
|
|
92
|
+
placeholder: t("neetoPayments.recurringPaymentCancel.reasonPlaceholder")
|
|
93
|
+
}), /*#__PURE__*/jsxRuntime.jsx(formik.Button, {
|
|
94
|
+
"data-testid": "cancel-meeting-submit-button",
|
|
95
|
+
disabled: isPending,
|
|
96
|
+
label: t("neetoPayments.recurringPaymentCancel.buttonLabel"),
|
|
97
|
+
loading: isPending,
|
|
98
|
+
style: "danger"
|
|
99
|
+
})]
|
|
100
|
+
})
|
|
101
|
+
});
|
|
101
102
|
};
|
|
102
103
|
|
|
103
104
|
module.exports = CustomerCancelRecurringPaymentForm;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomerCancelRecurringPaymentForm.js","sources":["../../app/javascript/src/apis/public/recurring_payments.js","../../app/javascript/src/hooks/reactQuery/public/useRecurringPaymentsApi.js","../../app/javascript/src/components/CustomerCancelRecurringPaymentForm/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = payableId =>\n axios.get(`${BASE_URL}/api/v1/public/recurring_payments/${payableId}`);\n\nconst update = ({ payableId, payload }) =>\n axios.put(`${BASE_URL}/api/v1/public/recurring_payments/${payableId}`, {\n recurring_payment: payload,\n });\n\nconst recurringPaymentsApi = { show, update };\n\nexport default recurringPaymentsApi;\n","import { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport recurringPaymentsApi from \"apis/public/recurring_payments\";\n\nimport { useQuery } from \"@tanstack/react-query\";\nimport { isNotNil } from \"ramda\";\n\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchRecurringPayment = payableId =>\n useQuery({\n queryKey: [QUERY_KEYS.RECURRING_PAYMENT, payableId],\n queryFn: () => recurringPaymentsApi.show(payableId),\n enabled: isNotNil(payableId),\n });\n\nexport const useUpdateRecurringPayments = payableId =>\n useMutationWithInvalidation(recurringPaymentsApi.update, {\n keysToInvalidate: [QUERY_KEYS.RECURRING_PAYMENT, payableId],\n });\n","import { useTranslation } from \"react-i18next\";\n\nimport {\n useUpdateRecurringPayments,\n useFetchRecurringPayment,\n} from \"hooks/reactQuery/public/useRecurringPaymentsApi\";\nimport { Typography, Spinner } from \"neetoui\";\nimport { Form, Textarea, Button } from \"neetoui/formik\";\n\nconst CustomerCancelRecurringPaymentForm = ({ payableId }) => {\n const { t } = useTranslation();\n\n const { isLoading, data: { recurringPayment } = {} } =\n useFetchRecurringPayment(payableId);\n\n const { isPending, mutate: updateRecurringPayment } =\n useUpdateRecurringPayments(payableId);\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 (recurringPayment?.status === \"cancelled\") {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Typography>\n {t(\"neetoPayments.recurringPaymentCancel.message\")}\n </Typography>\n </div>\n );\n }\n\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Form\n className=\"space-y-6\"\n formikProps={{\n onSubmit: ({ cancelReason }) =>\n updateRecurringPayment({\n payableId,\n payload: { status: \"cancelled\", cancelReason },\n }),\n initialValues: { cancelReason: \"\" },\n }}\n >\n <Textarea\n data-testid=\"cancel-meeting-input-textfield\"\n label={t(\"neetoPayments.recurringPaymentCancel.reasonLabel\")}\n name=\"cancelReason\"\n placeholder={t(\n \"neetoPayments.recurringPaymentCancel.reasonPlaceholder\"\n )}\n />\n <Button\n data-testid=\"cancel-meeting-submit-button\"\n disabled={isPending}\n label={t(\"neetoPayments.recurringPaymentCancel.buttonLabel\")}\n loading={isPending}\n style=\"danger\"\n />\n </Form>\n </div>\n );\n};\n\nexport default CustomerCancelRecurringPaymentForm;\n"],"names":["show","payableId","axios","get","
|
|
1
|
+
{"version":3,"file":"CustomerCancelRecurringPaymentForm.js","sources":["../../app/javascript/src/apis/public/recurring_payments.js","../../app/javascript/src/hooks/reactQuery/public/useRecurringPaymentsApi.js","../../app/javascript/src/components/CustomerCancelRecurringPaymentForm/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = payableId =>\n axios.get(`${BASE_URL}/api/v1/public/recurring_payments/${payableId}`);\n\nconst update = ({ payableId, payload }) =>\n axios.put(`${BASE_URL}/api/v1/public/recurring_payments/${payableId}`, {\n recurring_payment: payload,\n });\n\nconst recurringPaymentsApi = { show, update };\n\nexport default recurringPaymentsApi;\n","import { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport recurringPaymentsApi from \"apis/public/recurring_payments\";\n\nimport { useQuery } from \"@tanstack/react-query\";\nimport { isNotNil } from \"ramda\";\n\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchRecurringPayment = payableId =>\n useQuery({\n queryKey: [QUERY_KEYS.RECURRING_PAYMENT, payableId],\n queryFn: () => recurringPaymentsApi.show(payableId),\n enabled: isNotNil(payableId),\n });\n\nexport const useUpdateRecurringPayments = payableId =>\n useMutationWithInvalidation(recurringPaymentsApi.update, {\n keysToInvalidate: [QUERY_KEYS.RECURRING_PAYMENT, payableId],\n });\n","import { useTranslation } from \"react-i18next\";\n\nimport {\n useUpdateRecurringPayments,\n useFetchRecurringPayment,\n} from \"hooks/reactQuery/public/useRecurringPaymentsApi\";\nimport { Typography, Spinner } from \"neetoui\";\nimport { Form, Textarea, Button } from \"neetoui/formik\";\n\nconst CustomerCancelRecurringPaymentForm = ({ payableId }) => {\n const { t } = useTranslation();\n\n const { isLoading, data: { recurringPayment } = {} } =\n useFetchRecurringPayment(payableId);\n\n const { isPending, mutate: updateRecurringPayment } =\n useUpdateRecurringPayments(payableId);\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 (recurringPayment?.status === \"cancelled\") {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Typography>\n {t(\"neetoPayments.recurringPaymentCancel.message\")}\n </Typography>\n </div>\n );\n }\n\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Form\n className=\"space-y-6\"\n formikProps={{\n onSubmit: ({ cancelReason }) =>\n updateRecurringPayment({\n payableId,\n payload: { status: \"cancelled\", cancelReason },\n }),\n initialValues: { cancelReason: \"\" },\n }}\n >\n <Textarea\n data-testid=\"cancel-meeting-input-textfield\"\n label={t(\"neetoPayments.recurringPaymentCancel.reasonLabel\")}\n name=\"cancelReason\"\n placeholder={t(\n \"neetoPayments.recurringPaymentCancel.reasonPlaceholder\"\n )}\n />\n <Button\n data-testid=\"cancel-meeting-submit-button\"\n disabled={isPending}\n label={t(\"neetoPayments.recurringPaymentCancel.buttonLabel\")}\n loading={isPending}\n style=\"danger\"\n />\n </Form>\n </div>\n );\n};\n\nexport default CustomerCancelRecurringPaymentForm;\n"],"names":["show","payableId","axios","get","BASE_URL","update","payload","put","recurring_payment","recurringPaymentsApi","useFetchRecurringPayment","useQuery","queryKey","QUERY_KEYS","RECURRING_PAYMENT","queryFn","enabled","isNotNil","useUpdateRecurringPayments","useMutationWithInvalidation","keysToInvalidate","CustomerCancelRecurringPaymentForm","t","useTranslation","isLoading","data","recurringPayment","isPending","mutate","updateRecurringPayment","_jsx","className","children","Spinner","status","Typography","_jsxs","Form","formikProps","onSubmit","cancelReason","initialValues","Textarea","label","name","placeholder","Button","disabled","loading","style"],"mappings":"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"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var react = require('react');
|
|
4
|
+
var neetocist = require('neetocist');
|
|
5
|
+
var neetoIcons = require('@bigbinary/neeto-icons');
|
|
6
|
+
var ramda = require('ramda');
|
|
7
|
+
var reactI18next = require('react-i18next');
|
|
8
|
+
var reactQuery = require('@tanstack/react-query');
|
|
9
|
+
var axios = require('axios');
|
|
10
|
+
var constants = require('./index-C3LUTqjR.js');
|
|
11
|
+
var utils = require('neetocommons/utils');
|
|
12
|
+
var neetoui = require('@bigbinary/neetoui');
|
|
13
|
+
var exportChannel = require('./exportChannel-BL2RGGhP.js');
|
|
14
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
15
|
+
|
|
16
|
+
const create = payload => axios.post(`${constants.BASE_URL}/api/v1/exports`, {
|
|
17
|
+
export: payload
|
|
18
|
+
}, {
|
|
19
|
+
showToastr: false
|
|
20
|
+
});
|
|
21
|
+
const exportsApi = {
|
|
22
|
+
create
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
const useExportsData = () => reactQuery.useMutation({
|
|
26
|
+
mutationFn: exportsApi.create
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
const ExportModal = ({
|
|
30
|
+
filters,
|
|
31
|
+
dashboardKind,
|
|
32
|
+
holdableIds,
|
|
33
|
+
sortProperties,
|
|
34
|
+
isExportModalOpen,
|
|
35
|
+
setIsExportModalOpen
|
|
36
|
+
}) => {
|
|
37
|
+
const {
|
|
38
|
+
t
|
|
39
|
+
} = reactI18next.useTranslation();
|
|
40
|
+
const [downloadUrl, setDownloadUrl] = react.useState("");
|
|
41
|
+
const [isGenerating, setIsGenerating] = react.useState(false);
|
|
42
|
+
const {
|
|
43
|
+
tab = "all"
|
|
44
|
+
} = utils.getQueryParams();
|
|
45
|
+
const {
|
|
46
|
+
mutate: exportsData
|
|
47
|
+
} = useExportsData();
|
|
48
|
+
const token = react.useMemo(() => `${dashboardKind}-report-${constants.uuidV4()}`, [dashboardKind]);
|
|
49
|
+
const receivedCallback = data => {
|
|
50
|
+
if (!data.download_url) return;
|
|
51
|
+
setDownloadUrl(data.download_url);
|
|
52
|
+
setIsGenerating(false);
|
|
53
|
+
};
|
|
54
|
+
react.useEffect(() => {
|
|
55
|
+
if (isExportModalOpen) {
|
|
56
|
+
const channel = exportChannel.exportChannel(token, receivedCallback);
|
|
57
|
+
setDownloadUrl("");
|
|
58
|
+
setIsGenerating(false);
|
|
59
|
+
return () => {
|
|
60
|
+
channel.disconnected();
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
return undefined;
|
|
64
|
+
}, [isExportModalOpen, token]);
|
|
65
|
+
const onClose = () => setIsExportModalOpen(false);
|
|
66
|
+
const handleExport = () => {
|
|
67
|
+
setDownloadUrl("");
|
|
68
|
+
setIsGenerating(true);
|
|
69
|
+
const payload = ramda.mergeLeft(sortProperties, {
|
|
70
|
+
token,
|
|
71
|
+
filters,
|
|
72
|
+
tab,
|
|
73
|
+
holdableIds,
|
|
74
|
+
dashboard: neetocist.camelToSnakeCase(dashboardKind)
|
|
75
|
+
});
|
|
76
|
+
exportsData(payload);
|
|
77
|
+
};
|
|
78
|
+
return /*#__PURE__*/jsxRuntime.jsxs(neetoui.Modal, {
|
|
79
|
+
onClose,
|
|
80
|
+
isOpen: isExportModalOpen,
|
|
81
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoui.Modal.Header, {
|
|
82
|
+
children: /*#__PURE__*/jsxRuntime.jsx(neetoui.Typography, {
|
|
83
|
+
style: "h2",
|
|
84
|
+
children: t(`neetoPayments.export.title.${dashboardKind}`)
|
|
85
|
+
})
|
|
86
|
+
}), /*#__PURE__*/jsxRuntime.jsx(neetoui.Modal.Body, {
|
|
87
|
+
children: isGenerating ? /*#__PURE__*/jsxRuntime.jsx(neetoui.Typography, {
|
|
88
|
+
style: "body2",
|
|
89
|
+
children: t("neetoPayments.export.pleaseWait")
|
|
90
|
+
}) : /*#__PURE__*/jsxRuntime.jsx(neetoui.Typography, {
|
|
91
|
+
style: "body2",
|
|
92
|
+
children: neetocist.isPresent(downloadUrl) ? t("neetoPayments.export.fileReady") : t(`neetoPayments.export.download.${dashboardKind}`)
|
|
93
|
+
})
|
|
94
|
+
}), /*#__PURE__*/jsxRuntime.jsx(neetoui.Modal.Footer, {
|
|
95
|
+
className: "space-x-2",
|
|
96
|
+
children: neetocist.isPresent(downloadUrl) ? /*#__PURE__*/jsxRuntime.jsx(neetoui.Button, {
|
|
97
|
+
"data-testid": "neeto-payments-download-button",
|
|
98
|
+
href: downloadUrl,
|
|
99
|
+
icon: neetoIcons.Download,
|
|
100
|
+
label: t("neetoPayments.common.download"),
|
|
101
|
+
onClick: onClose
|
|
102
|
+
}) : /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
103
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoui.Button, {
|
|
104
|
+
"data-testid": "cancel-button",
|
|
105
|
+
disabled: isGenerating,
|
|
106
|
+
label: t("neetoPayments.common.cancel"),
|
|
107
|
+
style: "tertiary",
|
|
108
|
+
onClick: onClose
|
|
109
|
+
}), /*#__PURE__*/jsxRuntime.jsx(neetoui.Button, {
|
|
110
|
+
"data-testid": "neeto-payments-export-button",
|
|
111
|
+
disabled: isGenerating,
|
|
112
|
+
label: t("neetoPayments.common.export"),
|
|
113
|
+
loading: isGenerating,
|
|
114
|
+
onClick: handleExport
|
|
115
|
+
})]
|
|
116
|
+
})
|
|
117
|
+
})]
|
|
118
|
+
});
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
exports.ExportModal = ExportModal;
|
|
122
|
+
//# sourceMappingURL=ExportModal-ClKqp-oy.js.map
|