@bigbinary/neeto-payments-frontend 6.1.2 → 6.1.7

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.
Files changed (217) hide show
  1. package/dist/AccountsDashboard.js +498 -0
  2. package/dist/AccountsDashboard.js.map +1 -0
  3. package/dist/AdminCancelRecurringPaymentButton.js +76 -0
  4. package/dist/AdminCancelRecurringPaymentButton.js.map +1 -0
  5. package/dist/CashPaymentButton.js +60 -0
  6. package/dist/CashPaymentButton.js.map +1 -0
  7. package/dist/ConfirmCashPaymentButton.js +92 -0
  8. package/dist/ConfirmCashPaymentButton.js.map +1 -0
  9. package/dist/CopyButtonWrapper-rv-OaINx.js +24 -0
  10. package/dist/CopyButtonWrapper-rv-OaINx.js.map +1 -0
  11. package/dist/CustomerCancelRecurringPaymentForm.js +102 -0
  12. package/dist/CustomerCancelRecurringPaymentForm.js.map +1 -0
  13. package/dist/ExportModal-DP9_Ak6z.js +120 -0
  14. package/dist/ExportModal-DP9_Ak6z.js.map +1 -0
  15. package/dist/ManualUpiConnect.js +247 -0
  16. package/dist/ManualUpiConnect.js.map +1 -0
  17. package/dist/ManualUpiPayment.js +129 -0
  18. package/dist/ManualUpiPayment.js.map +1 -0
  19. package/dist/ManualUpiPaymentConfirmButton.js +151 -0
  20. package/dist/ManualUpiPaymentConfirmButton.js.map +1 -0
  21. package/dist/ManualUpiPaymentRejectButton.js +120 -0
  22. package/dist/ManualUpiPaymentRejectButton.js.map +1 -0
  23. package/dist/PaymentKindRestrictionAlert.js +36 -0
  24. package/dist/PaymentKindRestrictionAlert.js.map +1 -0
  25. package/dist/PaymentsDashboard.js +586 -0
  26. package/dist/PaymentsDashboard.js.map +1 -0
  27. package/dist/PayoutsDashboard.js +533 -0
  28. package/dist/PayoutsDashboard.js.map +1 -0
  29. package/dist/PayoutsPage.js +136 -0
  30. package/dist/PayoutsPage.js.map +1 -0
  31. package/dist/RazorpayConnect.js +106 -0
  32. package/dist/RazorpayConnect.js.map +1 -0
  33. package/dist/RazorpayLinkedAccountForm.js +212 -0
  34. package/dist/RazorpayLinkedAccountForm.js.map +1 -0
  35. package/dist/RazorpayPaymentButton.js +155 -0
  36. package/dist/RazorpayPaymentButton.js.map +1 -0
  37. package/dist/RecurringPaymentSettings.js +119 -0
  38. package/dist/RecurringPaymentSettings.js.map +1 -0
  39. package/dist/RefundsDashboard.js +507 -0
  40. package/dist/RefundsDashboard.js.map +1 -0
  41. package/dist/SplitTransfersDashboard.js +1003 -0
  42. package/dist/SplitTransfersDashboard.js.map +1 -0
  43. package/dist/StripeCheckoutSetting.js +94 -0
  44. package/dist/StripeCheckoutSetting.js.map +1 -0
  45. package/dist/StripeConnect.js +378 -0
  46. package/dist/StripeConnect.js.map +1 -0
  47. package/dist/StripeManage.js +43 -0
  48. package/dist/StripeManage.js.map +1 -0
  49. package/dist/TaxesDashboard.js +363 -0
  50. package/dist/TaxesDashboard.js.map +1 -0
  51. package/dist/buildStripeTransactionLink.js +12 -0
  52. package/dist/buildStripeTransactionLink.js.map +1 -0
  53. package/dist/cjs/AccountsDashboard.js +500 -0
  54. package/dist/cjs/AccountsDashboard.js.map +1 -0
  55. package/dist/cjs/AdminCancelRecurringPaymentButton.js +78 -0
  56. package/dist/cjs/AdminCancelRecurringPaymentButton.js.map +1 -0
  57. package/dist/cjs/CashPaymentButton.js +62 -0
  58. package/dist/cjs/CashPaymentButton.js.map +1 -0
  59. package/dist/cjs/ConfirmCashPaymentButton.js +94 -0
  60. package/dist/cjs/ConfirmCashPaymentButton.js.map +1 -0
  61. package/dist/cjs/CopyButtonWrapper-BkpN0Wmd.js +27 -0
  62. package/dist/cjs/CopyButtonWrapper-BkpN0Wmd.js.map +1 -0
  63. package/dist/cjs/CustomerCancelRecurringPaymentForm.js +104 -0
  64. package/dist/cjs/CustomerCancelRecurringPaymentForm.js.map +1 -0
  65. package/dist/cjs/ExportModal-BmlRgdZj.js +122 -0
  66. package/dist/cjs/ExportModal-BmlRgdZj.js.map +1 -0
  67. package/dist/cjs/ManualUpiConnect.js +268 -0
  68. package/dist/cjs/ManualUpiConnect.js.map +1 -0
  69. package/dist/cjs/ManualUpiPayment.js +150 -0
  70. package/dist/cjs/ManualUpiPayment.js.map +1 -0
  71. package/dist/cjs/ManualUpiPaymentConfirmButton.js +172 -0
  72. package/dist/cjs/ManualUpiPaymentConfirmButton.js.map +1 -0
  73. package/dist/cjs/ManualUpiPaymentRejectButton.js +122 -0
  74. package/dist/cjs/ManualUpiPaymentRejectButton.js.map +1 -0
  75. package/dist/cjs/PaymentKindRestrictionAlert.js +38 -0
  76. package/dist/cjs/PaymentKindRestrictionAlert.js.map +1 -0
  77. package/dist/cjs/PaymentsDashboard.js +588 -0
  78. package/dist/cjs/PaymentsDashboard.js.map +1 -0
  79. package/dist/cjs/PayoutsDashboard.js +535 -0
  80. package/dist/cjs/PayoutsDashboard.js.map +1 -0
  81. package/dist/cjs/PayoutsPage.js +138 -0
  82. package/dist/cjs/PayoutsPage.js.map +1 -0
  83. package/dist/cjs/RazorpayConnect.js +108 -0
  84. package/dist/cjs/RazorpayConnect.js.map +1 -0
  85. package/dist/cjs/RazorpayLinkedAccountForm.js +214 -0
  86. package/dist/cjs/RazorpayLinkedAccountForm.js.map +1 -0
  87. package/dist/cjs/RazorpayPaymentButton.js +157 -0
  88. package/dist/cjs/RazorpayPaymentButton.js.map +1 -0
  89. package/dist/cjs/RecurringPaymentSettings.js +140 -0
  90. package/dist/cjs/RecurringPaymentSettings.js.map +1 -0
  91. package/dist/cjs/RefundsDashboard.js +509 -0
  92. package/dist/cjs/RefundsDashboard.js.map +1 -0
  93. package/dist/cjs/SplitTransfersDashboard.js +1024 -0
  94. package/dist/cjs/SplitTransfersDashboard.js.map +1 -0
  95. package/dist/cjs/StripeCheckoutSetting.js +96 -0
  96. package/dist/cjs/StripeCheckoutSetting.js.map +1 -0
  97. package/dist/cjs/StripeConnect.js +399 -0
  98. package/dist/cjs/StripeConnect.js.map +1 -0
  99. package/dist/cjs/StripeManage.js +45 -0
  100. package/dist/cjs/StripeManage.js.map +1 -0
  101. package/dist/cjs/TaxesDashboard.js +384 -0
  102. package/dist/cjs/TaxesDashboard.js.map +1 -0
  103. package/dist/cjs/buildStripeTransactionLink.js +14 -0
  104. package/dist/cjs/buildStripeTransactionLink.js.map +1 -0
  105. package/dist/cjs/constants.js +38 -0
  106. package/dist/cjs/constants.js.map +1 -0
  107. package/dist/cjs/dashboard-BkYqCWDk.js +110 -0
  108. package/dist/cjs/dashboard-BkYqCWDk.js.map +1 -0
  109. package/dist/cjs/exportChannel-D1Wls92m.js +40 -0
  110. package/dist/cjs/exportChannel-D1Wls92m.js.map +1 -0
  111. package/dist/cjs/getAddressElementOptions.js +14 -0
  112. package/dist/cjs/getAddressElementOptions.js.map +1 -0
  113. package/dist/cjs/getAmountInSmallestCurrencyUnit.js +14 -0
  114. package/dist/cjs/getAmountInSmallestCurrencyUnit.js.map +1 -0
  115. package/dist/cjs/getAmountWithAppliedTax.js +14 -0
  116. package/dist/cjs/getAmountWithAppliedTax.js.map +1 -0
  117. package/dist/cjs/getFormattedAmount.js +14 -0
  118. package/dist/cjs/getFormattedAmount.js.map +1 -0
  119. package/dist/cjs/getFormattedDiscountedAmount.js +14 -0
  120. package/dist/cjs/getFormattedDiscountedAmount.js.map +1 -0
  121. package/dist/cjs/getFormattedDiscountedPercentage.js +14 -0
  122. package/dist/cjs/getFormattedDiscountedPercentage.js.map +1 -0
  123. package/dist/cjs/getFormattedTaxAmount.js +14 -0
  124. package/dist/cjs/getFormattedTaxAmount.js.map +1 -0
  125. package/dist/cjs/getFormattedTipAmount.js +14 -0
  126. package/dist/cjs/getFormattedTipAmount.js.map +1 -0
  127. package/dist/cjs/getQrCodeValue.js +14 -0
  128. package/dist/cjs/getQrCodeValue.js.map +1 -0
  129. package/dist/cjs/getTaxAmount.js +14 -0
  130. package/dist/cjs/getTaxAmount.js.map +1 -0
  131. package/dist/cjs/getTipAmount.js +14 -0
  132. package/dist/cjs/getTipAmount.js.map +1 -0
  133. package/dist/cjs/hasAmountToPay.js +14 -0
  134. package/dist/cjs/hasAmountToPay.js.map +1 -0
  135. package/dist/cjs/index-DSCn1Pdn.js +892 -0
  136. package/dist/cjs/index-DSCn1Pdn.js.map +1 -0
  137. package/dist/cjs/index.js +126 -0
  138. package/dist/cjs/index.js.map +1 -0
  139. package/dist/cjs/queryConstants-Cka1X6GX.js +35 -0
  140. package/dist/cjs/queryConstants-Cka1X6GX.js.map +1 -0
  141. package/dist/cjs/renderFunctions-Bqi2_SZ_.js +51 -0
  142. package/dist/cjs/renderFunctions-Bqi2_SZ_.js.map +1 -0
  143. package/dist/cjs/stripe.esm-CrNYjPcC.js +132 -0
  144. package/dist/cjs/stripe.esm-CrNYjPcC.js.map +1 -0
  145. package/dist/cjs/useAccountsApi-DMRvEpvD.js +62 -0
  146. package/dist/cjs/useAccountsApi-DMRvEpvD.js.map +1 -0
  147. package/dist/cjs/useIntegrationsApi-DJh8i0yF.js +26 -0
  148. package/dist/cjs/useIntegrationsApi-DJh8i0yF.js.map +1 -0
  149. package/dist/cjs/usePaymentApi-BWk9Qu4W.js +56 -0
  150. package/dist/cjs/usePaymentApi-BWk9Qu4W.js.map +1 -0
  151. package/dist/cjs/usePaymentApi-BrmfdxB4.js +41 -0
  152. package/dist/cjs/usePaymentApi-BrmfdxB4.js.map +1 -0
  153. package/dist/cjs/usePaymentApi-DxRPt6M4.js +39 -0
  154. package/dist/cjs/usePaymentApi-DxRPt6M4.js.map +1 -0
  155. package/dist/cjs/usePlatformApi-C_2WctrJ.js +84 -0
  156. package/dist/cjs/usePlatformApi-C_2WctrJ.js.map +1 -0
  157. package/dist/cjs/useRazorpayPayment.js +113 -0
  158. package/dist/cjs/useRazorpayPayment.js.map +1 -0
  159. package/dist/cjs/useStripePromise.js +57 -0
  160. package/dist/cjs/useStripePromise.js.map +1 -0
  161. package/dist/constants.js +8 -0
  162. package/dist/constants.js.map +1 -0
  163. package/dist/dashboard-BEQBguwm.js +104 -0
  164. package/dist/dashboard-BEQBguwm.js.map +1 -0
  165. package/dist/exportChannel-DAxJ44QB.js +37 -0
  166. package/dist/exportChannel-DAxJ44QB.js.map +1 -0
  167. package/dist/getAddressElementOptions.js +12 -0
  168. package/dist/getAddressElementOptions.js.map +1 -0
  169. package/dist/getAmountInSmallestCurrencyUnit.js +12 -0
  170. package/dist/getAmountInSmallestCurrencyUnit.js.map +1 -0
  171. package/dist/getAmountWithAppliedTax.js +12 -0
  172. package/dist/getAmountWithAppliedTax.js.map +1 -0
  173. package/dist/getFormattedAmount.js +12 -0
  174. package/dist/getFormattedAmount.js.map +1 -0
  175. package/dist/getFormattedDiscountedAmount.js +12 -0
  176. package/dist/getFormattedDiscountedAmount.js.map +1 -0
  177. package/dist/getFormattedDiscountedPercentage.js +12 -0
  178. package/dist/getFormattedDiscountedPercentage.js.map +1 -0
  179. package/dist/getFormattedTaxAmount.js +12 -0
  180. package/dist/getFormattedTaxAmount.js.map +1 -0
  181. package/dist/getFormattedTipAmount.js +12 -0
  182. package/dist/getFormattedTipAmount.js.map +1 -0
  183. package/dist/getQrCodeValue.js +12 -0
  184. package/dist/getQrCodeValue.js.map +1 -0
  185. package/dist/getTaxAmount.js +12 -0
  186. package/dist/getTaxAmount.js.map +1 -0
  187. package/dist/getTipAmount.js +12 -0
  188. package/dist/getTipAmount.js.map +1 -0
  189. package/dist/hasAmountToPay.js +12 -0
  190. package/dist/hasAmountToPay.js.map +1 -0
  191. package/dist/index-BGp4HmiK.js +842 -0
  192. package/dist/index-BGp4HmiK.js.map +1 -0
  193. package/dist/index.js +84 -0
  194. package/dist/index.js.map +1 -0
  195. package/dist/queryConstants-DFKKEEo0.js +33 -0
  196. package/dist/queryConstants-DFKKEEo0.js.map +1 -0
  197. package/dist/renderFunctions-Cn1sVVkA.js +47 -0
  198. package/dist/renderFunctions-Cn1sVVkA.js.map +1 -0
  199. package/dist/stripe.esm-DuZ_gsAa.js +130 -0
  200. package/dist/stripe.esm-DuZ_gsAa.js.map +1 -0
  201. package/dist/useAccountsApi-6UIChy5i.js +58 -0
  202. package/dist/useAccountsApi-6UIChy5i.js.map +1 -0
  203. package/dist/useIntegrationsApi-DbhomOkL.js +24 -0
  204. package/dist/useIntegrationsApi-DbhomOkL.js.map +1 -0
  205. package/dist/usePaymentApi-CKFTEeuh.js +53 -0
  206. package/dist/usePaymentApi-CKFTEeuh.js.map +1 -0
  207. package/dist/usePaymentApi-Cn-ZZcKu.js +37 -0
  208. package/dist/usePaymentApi-Cn-ZZcKu.js.map +1 -0
  209. package/dist/usePaymentApi-u3PcCZ43.js +38 -0
  210. package/dist/usePaymentApi-u3PcCZ43.js.map +1 -0
  211. package/dist/usePlatformApi-20towd_r.js +79 -0
  212. package/dist/usePlatformApi-20towd_r.js.map +1 -0
  213. package/dist/useRazorpayPayment.js +111 -0
  214. package/dist/useRazorpayPayment.js.map +1 -0
  215. package/dist/useStripePromise.js +55 -0
  216. package/dist/useStripePromise.js.map +1 -0
  217. package/package.json +7 -4
@@ -0,0 +1,1024 @@
1
+ 'use strict';
2
+
3
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
+ var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
5
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
6
+ var react = require('react');
7
+ var constants$1 = require('neetocommons/constants');
8
+ var utils = require('neetocommons/utils');
9
+ var neetoFiltersFrontend = require('@bigbinary/neeto-filters-frontend');
10
+ var neetoui = require('@bigbinary/neetoui');
11
+ var ramda = require('ramda');
12
+ var reactRouterDom = require('react-router-dom');
13
+ var ExportModal = require('./ExportModal-BmlRgdZj.js');
14
+ var reactQuery = require('@tanstack/react-query');
15
+ var reactUtils = require('neetocommons/react-utils');
16
+ var axios = require('axios');
17
+ var constants = require('./index-DSCn1Pdn.js');
18
+ var queryConstants = require('./queryConstants-Cka1X6GX.js');
19
+ var formik = require('@bigbinary/neetoui/formik');
20
+ var reactI18next = require('react-i18next');
21
+ var i18next = require('i18next');
22
+ var yup = require('yup');
23
+ var neetocist = require('neetocist');
24
+ var Columns = require('@bigbinary/neeto-molecules/Columns');
25
+ var TableWrapper = require('@bigbinary/neeto-molecules/TableWrapper');
26
+ var exportChannel = require('./exportChannel-D1Wls92m.js');
27
+ var HelpPopover = require('@bigbinary/neeto-molecules/HelpPopover');
28
+ var DateFormat = require('@bigbinary/neeto-molecules/DateFormat');
29
+ var CopyButtonWrapper = require('./CopyButtonWrapper-BkpN0Wmd.js');
30
+ var Header = require('@bigbinary/neeto-molecules/Header');
31
+ var SubHeader = require('@bigbinary/neeto-molecules/SubHeader');
32
+ require('@bigbinary/neeto-icons');
33
+ require('decimal.js');
34
+ require('@bigbinary/neeto-molecules/CopyToClipboardButton');
35
+
36
+ function _interopNamespaceDefault(e) {
37
+ var n = Object.create(null);
38
+ if (e) {
39
+ Object.keys(e).forEach(function (k) {
40
+ if (k !== 'default') {
41
+ var d = Object.getOwnPropertyDescriptor(e, k);
42
+ Object.defineProperty(n, k, d.get ? d : {
43
+ enumerable: true,
44
+ get: function () { return e[k]; }
45
+ });
46
+ }
47
+ });
48
+ }
49
+ n.default = e;
50
+ return Object.freeze(n);
51
+ }
52
+
53
+ var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
54
+
55
+ var list = function list(payload) {
56
+ return axios.get("".concat(constants.BASE_URL, "/api/v1/split_transfers"), {
57
+ params: payload
58
+ });
59
+ };
60
+ var show = function show(id) {
61
+ return axios.get("".concat(constants.BASE_URL, "/api/v1/split_transfers/").concat(id));
62
+ };
63
+ var bulkUpdate = function bulkUpdate(payload) {
64
+ return axios.post("".concat(constants.BASE_URL, "/api/v1/split_transfers/bulk_update"), {
65
+ splitTransfer: payload
66
+ });
67
+ };
68
+ var splitTransfersApi = {
69
+ list: list,
70
+ show: show,
71
+ bulkUpdate: bulkUpdate
72
+ };
73
+
74
+ function ownKeys$2(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; }
75
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
76
+ var useFetchSplitTransfers = function useFetchSplitTransfers() {
77
+ var payload = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
78
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
79
+ return reactQuery.useQuery(_objectSpread$2({
80
+ queryKey: [queryConstants.QUERY_KEYS.SPLIT_TRANSFERS_LIST, payload],
81
+ queryFn: function queryFn() {
82
+ return splitTransfersApi.list(payload);
83
+ }
84
+ }, options));
85
+ };
86
+ var useShowSplitTransfers = function useShowSplitTransfers(id, options) {
87
+ return reactQuery.useQuery(_objectSpread$2({
88
+ queryKey: [queryConstants.QUERY_KEYS.SPLIT_TRANSFERS_DETAILS, id],
89
+ queryFn: function queryFn() {
90
+ return splitTransfersApi.show(id);
91
+ }
92
+ }, options));
93
+ };
94
+ var useBulkUpdateSplitTransfers = function useBulkUpdateSplitTransfers(options) {
95
+ return reactUtils.useMutationWithInvalidation(splitTransfersApi.bulkUpdate, _objectSpread$2({
96
+ keysToInvalidate: [queryConstants.QUERY_KEYS.SPLIT_TRANSFERS_LISTw]
97
+ }, options));
98
+ };
99
+
100
+ var SPLIT_TRANSFERS_DASHBOARD_TAB = {
101
+ all: "all",
102
+ successful: "successful",
103
+ cancelled: "cancelled",
104
+ pending: "pending"
105
+ };
106
+ var SEARCH_PROPS = {
107
+ node: "identifier,",
108
+ key: "search_term",
109
+ model: "NeetoPaymentsEngine::Payments::Split,"
110
+ };
111
+ var FILTER_COLUMNS = [{
112
+ key: "amount",
113
+ label: i18next.t("neetoPayments.common.amount"),
114
+ node: "amount",
115
+ type: "decimal"
116
+ }, {
117
+ key: "payment_at",
118
+ label: i18next.t("neetoPayments.common.transferTime"),
119
+ node: "payment_at",
120
+ type: "date"
121
+ }];
122
+ var INITIAL_TRANSFER_DETAILS = {
123
+ id: null,
124
+ isPaneOpen: false
125
+ };
126
+ var VALIDATION_SCHEMA = yup__namespace.object().shape({
127
+ reason: yup__namespace.string().required(i18next.t("neetoPayments.cancelSplitTransfers.reasonRequired"))
128
+ });
129
+
130
+ var CancelModal = function CancelModal(_ref) {
131
+ var isOpen = _ref.isOpen,
132
+ onClose = _ref.onClose,
133
+ handleSplitTransfersUpdate = _ref.handleSplitTransfersUpdate;
134
+ var _useTranslation = reactI18next.useTranslation(),
135
+ t = _useTranslation.t;
136
+ var handleSubmit = function handleSubmit(_ref2) {
137
+ var reason = _ref2.reason;
138
+ handleSplitTransfersUpdate("cancelled", reason);
139
+ };
140
+ return /*#__PURE__*/React.createElement(neetoui.Modal, {
141
+ isOpen: isOpen,
142
+ onClose: onClose,
143
+ size: "large"
144
+ }, /*#__PURE__*/React.createElement(neetoui.Modal.Header, null, /*#__PURE__*/React.createElement(neetoui.Typography, {
145
+ style: "h2",
146
+ weight: "medium"
147
+ }, t("neetoPayments.cancelSplitTransfers.modal.title"))), /*#__PURE__*/React.createElement(formik.Form, {
148
+ formikProps: {
149
+ initialValues: {
150
+ reason: ""
151
+ },
152
+ validationSchema: VALIDATION_SCHEMA,
153
+ onSubmit: handleSubmit
154
+ }
155
+ }, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(neetoui.Modal.Body, null, /*#__PURE__*/React.createElement("div", {
156
+ className: "flex flex-col space-y-4"
157
+ }, /*#__PURE__*/React.createElement(formik.Textarea, {
158
+ required: true,
159
+ label: t("neetoPayments.cancelSplitTransfers.modal.reason"),
160
+ name: "reason"
161
+ }))), /*#__PURE__*/React.createElement(neetoui.Modal.Footer, null, /*#__PURE__*/React.createElement(formik.ActionBlock, {
162
+ position: "right",
163
+ cancelButtonProps: {
164
+ onClick: onClose,
165
+ style: "tertiary"
166
+ },
167
+ submitButtonProps: {
168
+ disabled: false,
169
+ label: t("neetoPayments.common.submit")
170
+ }
171
+ })))));
172
+ };
173
+
174
+ var Status = function Status(_ref) {
175
+ var type = _ref.type,
176
+ _ref$status = _ref.status,
177
+ status = _ref$status === void 0 ? "" : _ref$status;
178
+ var _useTranslation = reactI18next.useTranslation(),
179
+ t = _useTranslation.t;
180
+ var processedStatus = constants.preProcessStatus(type, status);
181
+ if (neetocist.isNotPresent(status)) {
182
+ return /*#__PURE__*/React.createElement(neetoui.Typography, {
183
+ style: "body2"
184
+ }, t("neetoPayments.common.notAvailable"));
185
+ }
186
+ return /*#__PURE__*/React.createElement(neetoui.Tooltip, {
187
+ content: t("neetoPayments.tooltipContent.".concat(type, ".").concat(processedStatus)),
188
+ position: "top"
189
+ }, /*#__PURE__*/React.createElement("div", {
190
+ className: "w-fit"
191
+ }, /*#__PURE__*/React.createElement(neetoui.Tag, {
192
+ style: constants.getTagStyle(processedStatus),
193
+ label: neetocist.humanize(t("neetoPayments.tagLabels.".concat(type, ".").concat(processedStatus)))
194
+ })));
195
+ };
196
+
197
+ var Date = function Date(_ref) {
198
+ var date = _ref.date,
199
+ _ref$isTimeVisible = _ref.isTimeVisible,
200
+ isTimeVisible = _ref$isTimeVisible === void 0 ? false : _ref$isTimeVisible;
201
+ var _useTranslation = reactI18next.useTranslation(),
202
+ t = _useTranslation.t;
203
+ if (neetocist.isNotPresent(date)) {
204
+ return /*#__PURE__*/React.createElement(neetoui.Typography, {
205
+ style: "body2"
206
+ }, t("neetoPayments.common.notAvailable"));
207
+ }
208
+ if (isTimeVisible) {
209
+ return /*#__PURE__*/React.createElement("div", {
210
+ className: "flex items-center"
211
+ }, /*#__PURE__*/React.createElement(DateFormat.DateTime, {
212
+ date: date
213
+ }));
214
+ }
215
+ return /*#__PURE__*/React.createElement("div", {
216
+ className: "flex items-center"
217
+ }, /*#__PURE__*/React.createElement(DateFormat.Date, {
218
+ date: date
219
+ }));
220
+ };
221
+
222
+ var DiscountCode = function DiscountCode(_ref) {
223
+ var discountCode = _ref.discountCode,
224
+ currency = _ref.currency;
225
+ var _useTranslation = reactI18next.useTranslation(),
226
+ t = _useTranslation.t;
227
+ var code = discountCode.code,
228
+ value = discountCode.value,
229
+ kind = discountCode.kind;
230
+ return /*#__PURE__*/React.createElement(neetoui.Typography, {
231
+ style: "body2"
232
+ }, kind === "percentage" ? t("neetoPayments.splitTransferDetails.discountCodeOfPercentageApplied", {
233
+ code: code,
234
+ percentage: value.toFixed(1)
235
+ }) : t("neetoPayments.splitTransferDetails.discountCodeOfAmountApplied", {
236
+ code: code,
237
+ amount: utils.currencyFormat.withSymbol(value, currency.toUpperCase(), {
238
+ maximumFractionDigits: 2,
239
+ minimumFractionDigits: 2
240
+ })
241
+ }));
242
+ };
243
+
244
+ var Details = function Details(_ref) {
245
+ var _splitTransfer$source, _splitTransfer$curren, _splitTransfer$source2, _splitTransfer$curren2, _splitTransfer$curren3, _splitTransfer$curren4, _splitTransfer$destin, _splitTransfer$destin2, _splitTransfer$destin3;
246
+ var selectedTransfer = _ref.selectedTransfer,
247
+ setSelectedTransfer = _ref.setSelectedTransfer;
248
+ var _useTranslation = reactI18next.useTranslation(),
249
+ t = _useTranslation.t;
250
+ var _useShowSplitTransfer = useShowSplitTransfers(selectedTransfer["id"], {
251
+ enabled: neetocist.isPresent(selectedTransfer["id"])
252
+ }),
253
+ isPending = _useShowSplitTransfer.isPending,
254
+ _useShowSplitTransfer2 = _useShowSplitTransfer.data,
255
+ _useShowSplitTransfer3 = _useShowSplitTransfer2 === void 0 ? {} : _useShowSplitTransfer2,
256
+ splitTransfer = _useShowSplitTransfer3.splitTransfer;
257
+ return /*#__PURE__*/React.createElement(neetoui.Pane, {
258
+ isOpen: selectedTransfer["isPaneOpen"],
259
+ size: "large",
260
+ onClose: function onClose() {
261
+ return setSelectedTransfer(ramda.mergeLeft({
262
+ isPaneOpen: false
263
+ }, selectedTransfer));
264
+ }
265
+ }, /*#__PURE__*/React.createElement(neetoui.Pane.Header, null, /*#__PURE__*/React.createElement(neetoui.Typography, {
266
+ style: "h2"
267
+ }, t("neetoPayments.splitTransferDetails.title"))), /*#__PURE__*/React.createElement(neetoui.Pane.Body, null, isPending ? /*#__PURE__*/React.createElement("div", {
268
+ className: "flex h-full w-full items-center justify-center"
269
+ }, /*#__PURE__*/React.createElement(neetoui.Spinner, null)) : /*#__PURE__*/React.createElement("div", {
270
+ className: "space-y-4 p-3"
271
+ }, /*#__PURE__*/React.createElement("div", {
272
+ className: "flex grid-cols-2 flex-col gap-3 lg:grid"
273
+ }, /*#__PURE__*/React.createElement(neetoui.Typography, {
274
+ style: "body1",
275
+ weight: "medium"
276
+ }, t("neetoPayments.common.identifier")), /*#__PURE__*/React.createElement(neetoui.Button, {
277
+ href: splitTransfer.transferUrl,
278
+ label: splitTransfer.identifier,
279
+ size: "small",
280
+ style: "link",
281
+ target: "_blank"
282
+ }), /*#__PURE__*/React.createElement(neetoui.Typography, {
283
+ style: "body1",
284
+ weight: "medium"
285
+ }, t("neetoPayments.common.status")), /*#__PURE__*/React.createElement(Status, {
286
+ status: splitTransfer.status,
287
+ type: "splitTransfers"
288
+ }), /*#__PURE__*/React.createElement(neetoui.Typography, {
289
+ style: "body1",
290
+ weight: "medium"
291
+ }, t("neetoPayments.common.transferTime")), /*#__PURE__*/React.createElement(Date, {
292
+ isTimeVisible: true,
293
+ date: splitTransfer.paymentAt
294
+ }), /*#__PURE__*/React.createElement(neetoui.Typography, {
295
+ style: "body1",
296
+ weight: "medium"
297
+ }, t("neetoPayments.common.paymentAmount")), /*#__PURE__*/React.createElement(neetoui.Typography, {
298
+ style: "body2"
299
+ }, utils.currencyFormat.withCode((_splitTransfer$source = splitTransfer.sourcePayment) === null || _splitTransfer$source === void 0 ? void 0 : _splitTransfer$source.amount, (_splitTransfer$curren = splitTransfer.currency) === null || _splitTransfer$curren === void 0 ? void 0 : _splitTransfer$curren.toUpperCase())), neetocist.isPresent(splitTransfer.discountCode) && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(neetoui.Typography, {
300
+ style: "body1",
301
+ weight: "medium"
302
+ }, t("neetoPayments.common.discountCode")), /*#__PURE__*/React.createElement(DiscountCode, {
303
+ currency: splitTransfer.currency,
304
+ discountCode: splitTransfer.discountCode
305
+ })), /*#__PURE__*/React.createElement("div", {
306
+ className: "flex items-center space-x-1"
307
+ }, /*#__PURE__*/React.createElement(neetoui.Typography, {
308
+ style: "body1",
309
+ weight: "medium"
310
+ }, t("neetoPayments.common.netAmount")), /*#__PURE__*/React.createElement(HelpPopover, {
311
+ popoverProps: {
312
+ position: "right"
313
+ },
314
+ description: t("neetoPayments.splitTransferDetails.netAmountDescription"),
315
+ title: t("neetoPayments.splitTransferDetails.netAmountHelpTitle")
316
+ })), /*#__PURE__*/React.createElement(neetoui.Typography, {
317
+ style: "body2"
318
+ }, utils.currencyFormat.withCode((_splitTransfer$source2 = splitTransfer.sourcePayment) === null || _splitTransfer$source2 === void 0 ? void 0 : _splitTransfer$source2.netAmount, (_splitTransfer$curren2 = splitTransfer.currency) === null || _splitTransfer$curren2 === void 0 ? void 0 : _splitTransfer$curren2.toUpperCase())), /*#__PURE__*/React.createElement("div", {
319
+ className: "flex space-x-1"
320
+ }, /*#__PURE__*/React.createElement(neetoui.Typography, {
321
+ style: "body1",
322
+ weight: "medium"
323
+ }, t("neetoPayments.common.platformShare")), /*#__PURE__*/React.createElement(HelpPopover, {
324
+ popoverProps: {
325
+ position: "right"
326
+ },
327
+ description: t("neetoPayments.splitTransferDetails.platformShareDescription"),
328
+ title: t("neetoPayments.splitTransferDetails.platformShareHelpTitle")
329
+ })), /*#__PURE__*/React.createElement(neetoui.Typography, {
330
+ style: "body2"
331
+ }, utils.currencyFormat.withCode(splitTransfer.platformShare, (_splitTransfer$curren3 = splitTransfer.currency) === null || _splitTransfer$curren3 === void 0 ? void 0 : _splitTransfer$curren3.toUpperCase())), /*#__PURE__*/React.createElement(neetoui.Typography, {
332
+ style: "body1",
333
+ weight: "medium"
334
+ }, t("neetoPayments.common.transferredAmount")), /*#__PURE__*/React.createElement(neetoui.Typography, {
335
+ style: "body2"
336
+ }, utils.currencyFormat.withCode(splitTransfer.amount, (_splitTransfer$curren4 = splitTransfer.currency) === null || _splitTransfer$curren4 === void 0 ? void 0 : _splitTransfer$curren4.toUpperCase()))), /*#__PURE__*/React.createElement(neetoui.Typography, {
337
+ style: "h3"
338
+ }, t("neetoPayments.splitTransferDetails.destinationDetails")), /*#__PURE__*/React.createElement("div", {
339
+ className: "flex grid-cols-2 flex-col gap-3 lg:grid"
340
+ }, /*#__PURE__*/React.createElement(neetoui.Typography, {
341
+ style: "body1",
342
+ weight: "medium"
343
+ }, t("neetoPayments.common.destinationAccountIdentifier")), /*#__PURE__*/React.createElement(neetoui.Button, {
344
+ href: splitTransfer.destinationAccount.dashboardUrl,
345
+ label: splitTransfer.destinationAccount.identifier,
346
+ size: "small",
347
+ style: "link",
348
+ target: "_blank"
349
+ }), /*#__PURE__*/React.createElement(neetoui.Typography, {
350
+ style: "body1",
351
+ weight: "medium"
352
+ }, t("neetoPayments.common.destinationAccountName")), /*#__PURE__*/React.createElement(neetoui.Typography, {
353
+ style: "body2"
354
+ }, splitTransfer.destinationAccount.userName), /*#__PURE__*/React.createElement(neetoui.Typography, {
355
+ style: "body1",
356
+ weight: "medium"
357
+ }, t("neetoPayments.common.destinationAccountEmail")), /*#__PURE__*/React.createElement(neetoui.Typography, {
358
+ style: "body2"
359
+ }, splitTransfer.destinationAccount.userEmail), /*#__PURE__*/React.createElement(neetoui.Typography, {
360
+ style: "body1",
361
+ weight: "medium"
362
+ }, t("neetoPayments.common.payoutStatus")), /*#__PURE__*/React.createElement(Status, {
363
+ status: (_splitTransfer$destin = splitTransfer.destinationPayout) === null || _splitTransfer$destin === void 0 ? void 0 : _splitTransfer$destin.status,
364
+ type: "payout"
365
+ }), /*#__PURE__*/React.createElement(neetoui.Typography, {
366
+ style: "body1",
367
+ weight: "medium"
368
+ }, t("neetoPayments.splitTransferDetails.payoutInitiatedDate")), /*#__PURE__*/React.createElement(Date, {
369
+ date: (_splitTransfer$destin2 = splitTransfer.destinationPayout) === null || _splitTransfer$destin2 === void 0 ? void 0 : _splitTransfer$destin2.createdAt
370
+ }), /*#__PURE__*/React.createElement(neetoui.Typography, {
371
+ style: "body1",
372
+ weight: "medium"
373
+ }, t("neetoPayments.splitTransferDetails.payoutArrivalDate")), /*#__PURE__*/React.createElement(Date, {
374
+ date: (_splitTransfer$destin3 = splitTransfer.destinationPayout) === null || _splitTransfer$destin3 === void 0 ? void 0 : _splitTransfer$destin3.arrivalDate
375
+ }), /*#__PURE__*/React.createElement("div", null)))));
376
+ };
377
+
378
+ var renderIdentifier = ramda.curry(function (setSelectedTransfer, identifier, _ref) {
379
+ var id = _ref.id;
380
+ if (neetocist.isNotPresent(identifier)) {
381
+ return /*#__PURE__*/React.createElement(neetoui.Tooltip, {
382
+ content: i18next.t("neetoPayments.tooltipContent.identifierUnavailable"),
383
+ position: "top"
384
+ }, /*#__PURE__*/React.createElement("div", {
385
+ className: "text-center"
386
+ }, /*#__PURE__*/React.createElement(neetoui.Typography, {
387
+ style: "body2"
388
+ }, i18next.t("neetoPayments.common.notAvailable"))));
389
+ }
390
+ return /*#__PURE__*/React.createElement(CopyButtonWrapper.CopyButtonWrapper, {
391
+ content: identifier
392
+ }, /*#__PURE__*/React.createElement(neetoui.Button, {
393
+ label: identifier,
394
+ size: "small",
395
+ style: "link",
396
+ onClick: function onClick() {
397
+ return setSelectedTransfer({
398
+ id: id,
399
+ isPaneOpen: true
400
+ });
401
+ }
402
+ }));
403
+ });
404
+ var renderPlatformPaymentIdentifier = function renderPlatformPaymentIdentifier(_ref2) {
405
+ var identifier = _ref2.identifier,
406
+ receiptUrl = _ref2.receiptUrl,
407
+ kind = _ref2.kind;
408
+ if (kind === constants.PAYMENT_KIND.temporary) {
409
+ return /*#__PURE__*/React.createElement(CopyButtonWrapper.CopyButtonWrapper, {
410
+ content: identifier
411
+ }, identifier);
412
+ }
413
+ return /*#__PURE__*/React.createElement(CopyButtonWrapper.CopyButtonWrapper, {
414
+ content: identifier
415
+ }, /*#__PURE__*/React.createElement(neetoui.Button, {
416
+ href: receiptUrl,
417
+ label: identifier,
418
+ size: "small",
419
+ style: "link",
420
+ target: "_blank"
421
+ }));
422
+ };
423
+ var renderDestinationAccountIdentifier = function renderDestinationAccountIdentifier(_ref3) {
424
+ var identifier = _ref3.identifier,
425
+ dashboardUrl = _ref3.dashboardUrl;
426
+ return /*#__PURE__*/React.createElement(CopyButtonWrapper.CopyButtonWrapper, {
427
+ content: identifier
428
+ }, /*#__PURE__*/React.createElement(neetoui.Button, {
429
+ href: dashboardUrl,
430
+ label: identifier,
431
+ size: "small",
432
+ style: "link",
433
+ target: "_blank"
434
+ }));
435
+ };
436
+ var renderStatus = ramda.curry(function (type, status) {
437
+ return /*#__PURE__*/React.createElement(Status, {
438
+ status: status,
439
+ type: type
440
+ });
441
+ });
442
+ var renderDate = function renderDate(date) {
443
+ if (neetocist.isNotPresent(date)) {
444
+ return /*#__PURE__*/React.createElement(neetoui.Tooltip, {
445
+ content: i18next.t("neetoPayments.tooltipContent.dateUnavailable"),
446
+ position: "top"
447
+ }, /*#__PURE__*/React.createElement("div", {
448
+ className: "text-center"
449
+ }, /*#__PURE__*/React.createElement(neetoui.Typography, {
450
+ style: "body2"
451
+ }, i18next.t("neetoPayments.common.notAvailable"))));
452
+ }
453
+ return /*#__PURE__*/React.createElement(DateFormat.DateTime, {
454
+ date: date
455
+ });
456
+ };
457
+ var renderPlatformShare = function renderPlatformShare(amount) {
458
+ if (neetocist.isNotPresent(amount)) {
459
+ return /*#__PURE__*/React.createElement(neetoui.Tooltip, {
460
+ content: i18next.t("neetoPayments.tooltipContent.platformShareUnavailable"),
461
+ position: "top"
462
+ }, /*#__PURE__*/React.createElement(neetoui.Typography, {
463
+ style: "body2"
464
+ }, i18next.t("neetoPayments.common.notCalculated")));
465
+ }
466
+ return constants.formatAmount(amount);
467
+ };
468
+ var getDefaultColumns = function getDefaultColumns(setSelectedTransfer) {
469
+ return [{
470
+ title: i18next.t("neetoPayments.common.id"),
471
+ dataIndex: "rowId",
472
+ key: "rowId",
473
+ width: 85,
474
+ position: 0,
475
+ isHidable: false
476
+ }, {
477
+ title: i18next.t("neetoPayments.common.identifier"),
478
+ dataIndex: "identifier",
479
+ key: "identifier",
480
+ width: 300,
481
+ render: renderIdentifier(setSelectedTransfer),
482
+ position: 1,
483
+ isHidable: false
484
+ }, {
485
+ title: i18next.t("neetoPayments.common.status"),
486
+ dataIndex: "status",
487
+ key: "status",
488
+ width: 150,
489
+ render: renderStatus("splitTransfers"),
490
+ sorter: true,
491
+ position: 2,
492
+ isHidable: false
493
+ }, {
494
+ title: i18next.t("neetoPayments.common.amount"),
495
+ dataIndex: "amount",
496
+ key: "amount",
497
+ width: 150,
498
+ sorter: true,
499
+ render: constants.formatAmount,
500
+ position: 3
501
+ }, {
502
+ title: i18next.t("neetoPayments.common.currency"),
503
+ dataIndex: "currency",
504
+ key: "currency",
505
+ width: 160,
506
+ sorter: true,
507
+ render: constants.formatCurrency,
508
+ position: 3
509
+ }, {
510
+ title: i18next.t("neetoPayments.common.platformShare"),
511
+ dataIndex: "platformShare",
512
+ key: "platformShare",
513
+ width: 205,
514
+ render: renderPlatformShare,
515
+ sorter: true,
516
+ position: 3
517
+ }, {
518
+ title: i18next.t("neetoPayments.common.transferTime"),
519
+ dataIndex: "paymentAt",
520
+ key: "paymentAt",
521
+ width: 190,
522
+ render: renderDate,
523
+ sorter: true,
524
+ position: 10
525
+ }, {
526
+ title: i18next.t("neetoPayments.common.platformPayment"),
527
+ dataIndex: "sourcePayment",
528
+ key: "sourcePayment",
529
+ render: renderPlatformPaymentIdentifier,
530
+ width: 300,
531
+ position: 19
532
+ }, {
533
+ title: i18next.t("neetoPayments.common.accountIdentifier"),
534
+ dataIndex: "destinationAccount",
535
+ key: "destinationAccount",
536
+ render: renderDestinationAccountIdentifier,
537
+ width: 320,
538
+ position: 20
539
+ }];
540
+ };
541
+
542
+ 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; }
543
+ 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; }
544
+ var buildSearchProps = function buildSearchProps(searchProps, searchTerm) {
545
+ return ramda.mergeDeepWith(ramda.concat, SEARCH_PROPS, ramda.mergeLeft({
546
+ value: searchTerm.trim()
547
+ }, searchProps));
548
+ };
549
+ var buildFilterColumns = function buildFilterColumns() {
550
+ var payableEntityColumns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
551
+ return ramda.reject(ramda.isNil, ramda.concat(FILTER_COLUMNS, ramda.map(ramda.prop("filterProps"), payableEntityColumns)));
552
+ };
553
+ var buildTableColumns = function buildTableColumns(_ref) {
554
+ var tab = _ref.tab,
555
+ _ref$payableEntityCol = _ref.payableEntityColumns,
556
+ payableEntityColumns = _ref$payableEntityCol === void 0 ? [] : _ref$payableEntityCol,
557
+ setSelectedTransfer = _ref.setSelectedTransfer;
558
+ var filteredColumns = ramda.sortBy(ramda.prop("position"), ramda.concat(getDefaultColumns(setSelectedTransfer), payableEntityColumns));
559
+ if (tab === SPLIT_TRANSFERS_DASHBOARD_TAB.all) return filteredColumns;
560
+ return neetocist.removeBy({
561
+ key: "status"
562
+ }, filteredColumns);
563
+ };
564
+ var buildRowData = function buildRowData(_ref2) {
565
+ var splitTransfers = _ref2.splitTransfers,
566
+ _ref2$pageProperties = _ref2.pageProperties,
567
+ pageProperties = _ref2$pageProperties === void 0 ? {} : _ref2$pageProperties;
568
+ return splitTransfers === null || splitTransfers === void 0 ? void 0 : splitTransfers.map(function (element, index) {
569
+ return _objectSpread$1(_objectSpread$1({}, element), {}, {
570
+ rowId: ramda.isEmpty(pageProperties) ? index + 1 : pageProperties.pageSize * (pageProperties.page - 1) + index + 1
571
+ });
572
+ });
573
+ };
574
+
575
+ var List = function List(_ref) {
576
+ var isFetching = _ref.isFetching,
577
+ splitTransfers = _ref.splitTransfers,
578
+ selectedRows = _ref.selectedRows,
579
+ views = _ref.views,
580
+ payableEntityColumns = _ref.payableEntityColumns,
581
+ pageProperties = _ref.pageProperties,
582
+ onRowSelect = _ref.onRowSelect,
583
+ setSortProperties = _ref.setSortProperties,
584
+ handleTablePagination = _ref.handleTablePagination,
585
+ setHasBulkSelectedAllRows = _ref.setHasBulkSelectedAllRows;
586
+ var _useState = react.useState(INITIAL_TRANSFER_DETAILS),
587
+ _useState2 = _slicedToArray(_useState, 2),
588
+ selectedTransfer = _useState2[0],
589
+ setSelectedTransfer = _useState2[1];
590
+ var _useTranslation = reactI18next.useTranslation(),
591
+ t = _useTranslation.t;
592
+ var _getQueryParams = utils.getQueryParams(),
593
+ _getQueryParams$tab = _getQueryParams.tab,
594
+ tab = _getQueryParams$tab === void 0 ? SPLIT_TRANSFERS_DASHBOARD_TAB.all : _getQueryParams$tab;
595
+ var splitTransfersCount = views[tab];
596
+ var getRowSelection = function getRowSelection() {
597
+ if (tab === SPLIT_TRANSFERS_DASHBOARD_TAB.successful) return false;
598
+ if (tab === SPLIT_TRANSFERS_DASHBOARD_TAB.all) {
599
+ return {
600
+ getCheckboxProps: function getCheckboxProps(record) {
601
+ return {
602
+ disabled: record.status === SPLIT_TRANSFERS_DASHBOARD_TAB.successful
603
+ };
604
+ }
605
+ };
606
+ }
607
+ return true;
608
+ };
609
+ var allColumns = buildTableColumns({
610
+ tab: tab,
611
+ payableEntityColumns: payableEntityColumns,
612
+ setSelectedTransfer: setSelectedTransfer
613
+ });
614
+ var _useTableConfiguratio = Columns.useTableConfigurations("".concat(exportChannel.TABLE_KEYS.SPLIT_TRANSFERS_TABLE, "-").concat(tab), allColumns),
615
+ isTableConfigurationLoading = _useTableConfiguratio.isTableConfigurationLoading,
616
+ customizedColumns = _useTableConfiguratio.customizedColumns,
617
+ hideColumn = _useTableConfiguratio.hideColumn;
618
+ var handleTableChange = function handleTableChange(_, __, sorter) {
619
+ setSortProperties(neetocist.isPresent(sorter === null || sorter === void 0 ? void 0 : sorter.column) ? {
620
+ sortBy: neetocist.camelToSnakeCase(constants.processDataIndex(sorter.field)),
621
+ orderBy: sorter.order === "ascend" ? "ASC" : "DESC"
622
+ } : constants.DEFAULT_SORT_PROPERTIES);
623
+ };
624
+ if (neetocist.isNotPresent(splitTransfers)) {
625
+ return /*#__PURE__*/React.createElement("div", {
626
+ className: "flex h-full w-full items-center justify-center"
627
+ }, /*#__PURE__*/React.createElement(neetoui.NoData, {
628
+ title: tab === SPLIT_TRANSFERS_DASHBOARD_TAB.all ? t("neetoPayments.emptyState.splitTransfers") : t("neetoPayments.emptyState.splitTransfersWithStatus", {
629
+ status: tab
630
+ })
631
+ }));
632
+ }
633
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(TableWrapper, {
634
+ hasPagination: splitTransfersCount > (pageProperties === null || pageProperties === void 0 ? void 0 : pageProperties.pageSize)
635
+ }, /*#__PURE__*/React.createElement(neetoui.Table, {
636
+ onRowSelect: onRowSelect,
637
+ fixedHeight: true,
638
+ allowRowClick: false,
639
+ columnData: customizedColumns,
640
+ currentPageNumber: pageProperties === null || pageProperties === void 0 ? void 0 : pageProperties.page,
641
+ handlePageChange: handleTablePagination,
642
+ loading: isFetching || isTableConfigurationLoading,
643
+ rowData: buildRowData({
644
+ splitTransfers: splitTransfers,
645
+ pageProperties: pageProperties,
646
+ tab: tab
647
+ }),
648
+ rowSelection: getRowSelection(),
649
+ selectedRowKeys: selectedRows,
650
+ sortDirections: constants.SORT_DIRECTIONS,
651
+ totalCount: splitTransfersCount,
652
+ bulkSelectAllRowsProps: {
653
+ selectAllRowMessage: t("neetoPayments.splitTransferDetails.selectedSplitTransfers", {
654
+ count: selectedRows.length
655
+ }),
656
+ selectAllRowButtonLabel: t("neetoPayments.splitTransferDetails.selectAll", {
657
+ count: views[SPLIT_TRANSFERS_DASHBOARD_TAB.pending]
658
+ }),
659
+ setBulkSelectedAllRows: setHasBulkSelectedAllRows
660
+ },
661
+ paginationProps: {
662
+ showSizeChanger: true,
663
+ hideOnSinglePage: true,
664
+ pageSize: pageProperties === null || pageProperties === void 0 ? void 0 : pageProperties.pageSize,
665
+ total: splitTransfersCount
666
+ },
667
+ onChange: handleTableChange,
668
+ onColumnHide: function onColumnHide(_ref2) {
669
+ var key = _ref2.key;
670
+ return hideColumn(key);
671
+ }
672
+ })), /*#__PURE__*/React.createElement(Details, {
673
+ selectedTransfer: selectedTransfer,
674
+ setSelectedTransfer: setSelectedTransfer
675
+ }));
676
+ };
677
+
678
+ var ResumeModal = function ResumeModal(_ref) {
679
+ var isOpen = _ref.isOpen,
680
+ onClose = _ref.onClose,
681
+ handleSplitTransfersUpdate = _ref.handleSplitTransfersUpdate;
682
+ var _useTranslation = reactI18next.useTranslation(),
683
+ t = _useTranslation.t;
684
+ var handleSubmit = function handleSubmit(_ref2) {
685
+ var reason = _ref2.reason;
686
+ handleSplitTransfersUpdate("pending", reason);
687
+ };
688
+ return /*#__PURE__*/React.createElement(neetoui.Modal, {
689
+ isOpen: isOpen,
690
+ onClose: onClose,
691
+ size: "large"
692
+ }, /*#__PURE__*/React.createElement(neetoui.Modal.Header, null, /*#__PURE__*/React.createElement(neetoui.Typography, {
693
+ style: "h2",
694
+ weight: "medium"
695
+ }, t("neetoPayments.resumeSplitTransfers.modal.title"))), /*#__PURE__*/React.createElement(formik.Form, {
696
+ formikProps: {
697
+ initialValues: {
698
+ reason: ""
699
+ },
700
+ validationSchema: VALIDATION_SCHEMA,
701
+ onSubmit: handleSubmit
702
+ }
703
+ }, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(neetoui.Modal.Body, null, /*#__PURE__*/React.createElement("div", {
704
+ className: "flex flex-col space-y-4"
705
+ }, /*#__PURE__*/React.createElement(formik.Textarea, {
706
+ required: true,
707
+ label: t("neetoPayments.resumeSplitTransfers.modal.reason"),
708
+ name: "reason"
709
+ }))), /*#__PURE__*/React.createElement(neetoui.Modal.Footer, null, /*#__PURE__*/React.createElement(formik.ActionBlock, {
710
+ position: "right",
711
+ cancelButtonProps: {
712
+ onClick: onClose,
713
+ style: "tertiary"
714
+ },
715
+ submitButtonProps: {
716
+ disabled: false,
717
+ label: t("neetoPayments.common.submit")
718
+ }
719
+ })))));
720
+ };
721
+
722
+ var Menu = neetoui.Dropdown.Menu,
723
+ MenuItem = neetoui.Dropdown.MenuItem;
724
+ var TopSection = function TopSection(_ref) {
725
+ var views = _ref.views,
726
+ filters = _ref.filters,
727
+ setIsCancelModalOpen = _ref.setIsCancelModalOpen,
728
+ setIsResumeModalOpen = _ref.setIsResumeModalOpen,
729
+ selectedRows = _ref.selectedRows,
730
+ selectedRowData = _ref.selectedRowData,
731
+ setFilters = _ref.setFilters,
732
+ hasBulkSelectedAllRows = _ref.hasBulkSelectedAllRows,
733
+ filterableColumns = _ref.filterableColumns,
734
+ searchKeywordProps = _ref.searchKeywordProps,
735
+ payableEntityColumns = _ref.payableEntityColumns,
736
+ setIsExportModalOpen = _ref.setIsExportModalOpen;
737
+ var _useState = react.useState(false),
738
+ _useState2 = _slicedToArray(_useState, 2),
739
+ isFilterPaneOpen = _useState2[0],
740
+ setIsFilterPaneOpen = _useState2[1];
741
+ var _useTranslation = reactI18next.useTranslation(),
742
+ t = _useTranslation.t;
743
+ var history = reactRouterDom.useHistory();
744
+ var _getQueryParams = utils.getQueryParams(),
745
+ _getQueryParams$tab = _getQueryParams.tab,
746
+ tab = _getQueryParams$tab === void 0 ? SPLIT_TRANSFERS_DASHBOARD_TAB.all : _getQueryParams$tab;
747
+ var splitTransfersCount = views === null || views === void 0 ? void 0 : views[tab];
748
+ var splitTransfersCountVisible = splitTransfersCount > 0 || splitTransfersCount === 0 && neetocist.isPresent(filters);
749
+ var isFilterButtonVisible = splitTransfersCount || neetocist.isPresent(filters);
750
+ var isDropdownVisible = neetocist.isNotEmpty(selectedRows);
751
+ var isCancelButtonDisabled = neetocist.existsBy({
752
+ status: SPLIT_TRANSFERS_DASHBOARD_TAB.cancelled
753
+ }, selectedRowData);
754
+ var isResumeButtonDisabled = neetocist.existsBy({
755
+ status: SPLIT_TRANSFERS_DASHBOARD_TAB.pending
756
+ }, selectedRowData);
757
+ var selectedRecordsCount = hasBulkSelectedAllRows ? splitTransfersCount : selectedRows.length;
758
+ var handleFiltersChange = function handleFiltersChange(filters) {
759
+ react.startTransition(function () {
760
+ setFilters(filters);
761
+ });
762
+ };
763
+ var handleTabChange = function handleTabChange(tab) {
764
+ var queryParams = utils.getQueryParams({
765
+ toCamelCase: false
766
+ });
767
+ var newParams = {
768
+ tab: tab,
769
+ page: constants$1.DEFAULT_PAGE_INDEX,
770
+ page_size: constants$1.DEFAULT_PAGE_SIZE
771
+ };
772
+ history.push(utils.buildUrl(window.location.pathname, ramda.mergeLeft(newParams, queryParams)));
773
+ };
774
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Header, {
775
+ title: t("neetoPayments.title.splitTransfers"),
776
+ searchProps: isFilterButtonVisible && {
777
+ placeholder: searchKeywordProps.placeholder,
778
+ className: "w-96"
779
+ }
780
+ }), constants.shouldTabsVisible(views) && /*#__PURE__*/React.createElement(neetoui.Tab, null, Object.keys(SPLIT_TRANSFERS_DASHBOARD_TAB).map(function (item) {
781
+ return /*#__PURE__*/React.createElement(neetoui.Tab.Item, {
782
+ active: tab === item,
783
+ key: item,
784
+ onClick: function onClick() {
785
+ return handleTabChange(item);
786
+ }
787
+ }, t("neetoPayments.common.".concat(item)));
788
+ })), /*#__PURE__*/React.createElement(SubHeader, {
789
+ className: "my-4",
790
+ leftActionBlock: splitTransfersCountVisible && /*#__PURE__*/React.createElement("div", {
791
+ className: "w-100 flex items-center space-x-3"
792
+ }, isDropdownVisible ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(neetoui.Typography, {
793
+ className: "neeto-ui-gray-800 me-2 font-semibold",
794
+ component: "h4"
795
+ }, /*#__PURE__*/React.createElement(reactI18next.Trans, {
796
+ count: selectedRecordsCount,
797
+ i18nKey: "neetoPayments.splitTransferDetails.recordWithCount",
798
+ components: {
799
+ span: /*#__PURE__*/React.createElement("span", {
800
+ className: "neeto-ui-text-gray-600"
801
+ })
802
+ },
803
+ values: {
804
+ count: selectedRecordsCount,
805
+ recordsCount: splitTransfersCount
806
+ }
807
+ })), /*#__PURE__*/React.createElement(neetoui.Dropdown, {
808
+ buttonStyle: "secondary",
809
+ label: t("neetoPayments.common.takeAction")
810
+ }, /*#__PURE__*/React.createElement(Menu, null, /*#__PURE__*/React.createElement(MenuItem.Button, {
811
+ isDisabled: isCancelButtonDisabled,
812
+ tooltipProps: isCancelButtonDisabled ? {
813
+ content: t("neetoPayments.tooltipContent.splitTransfers.cancelledRecordsSelected")
814
+ } : "",
815
+ onClick: function onClick() {
816
+ return setIsCancelModalOpen(true);
817
+ }
818
+ }, t("neetoPayments.common.cancel"))), /*#__PURE__*/React.createElement(Menu, null, /*#__PURE__*/React.createElement(MenuItem.Button, {
819
+ isDisabled: isResumeButtonDisabled,
820
+ tooltipProps: isResumeButtonDisabled ? {
821
+ content: t("neetoPayments.tooltipContent.splitTransfers.pendingRecordsSelected")
822
+ } : "",
823
+ onClick: function onClick() {
824
+ return setIsResumeModalOpen(true);
825
+ }
826
+ }, t("neetoPayments.common.resume"))))) : /*#__PURE__*/React.createElement(neetoui.Typography, {
827
+ className: "neeto-ui-gray-800 me-2 font-semibold",
828
+ component: "h4"
829
+ }, tab === SPLIT_TRANSFERS_DASHBOARD_TAB.all ? t("neetoPayments.countOf.splitTransfer", {
830
+ count: splitTransfersCount
831
+ }) : t("neetoPayments.countOf.splitTransferWithStatus", {
832
+ count: splitTransfersCount,
833
+ status: tab
834
+ }))),
835
+ rightActionBlock: isFilterButtonVisible && /*#__PURE__*/React.createElement(SubHeader.RightBlock, {
836
+ columnsButtonProps: {
837
+ columnData: buildTableColumns({
838
+ tab: tab,
839
+ payableEntityColumns: payableEntityColumns,
840
+ setSelectedTransfer: function setSelectedTransfer() {}
841
+ }).map(ramda.modify("dataIndex", constants.processDataIndex)),
842
+ fixedColumns: constants.UN_HIDEABLE_COLUMNS,
843
+ tableKey: "".concat(exportChannel.TABLE_KEYS.SPLIT_TRANSFERS_TABLE, "-").concat(tab)
844
+ },
845
+ downloadButtonProps: {
846
+ onClick: function onClick() {
847
+ return setIsExportModalOpen(true);
848
+ }
849
+ },
850
+ filterProps: {
851
+ columns: filterableColumns,
852
+ isOpen: isFilterPaneOpen,
853
+ keyword: searchKeywordProps,
854
+ setIsOpen: setIsFilterPaneOpen,
855
+ onChange: handleFiltersChange
856
+ }
857
+ })
858
+ }), /*#__PURE__*/React.createElement(neetoFiltersFrontend.Bar, {
859
+ columns: filterableColumns,
860
+ keyword: searchKeywordProps,
861
+ setIsPaneOpen: setIsFilterPaneOpen,
862
+ onChange: handleFiltersChange
863
+ }));
864
+ };
865
+
866
+ 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; }
867
+ 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; }
868
+ var SplitTransfersDashboard = function SplitTransfersDashboard(_ref) {
869
+ var searchProps = _ref.searchProps,
870
+ payableEntityColumns = _ref.payableEntityColumns;
871
+ var _getQueryParams = utils.getQueryParams(),
872
+ _getQueryParams$searc = _getQueryParams.searchTerm,
873
+ searchTerm = _getQueryParams$searc === void 0 ? "" : _getQueryParams$searc;
874
+ var filterableColumns = buildFilterColumns(payableEntityColumns);
875
+ var searchKeywordProps = buildSearchProps(searchProps, searchTerm);
876
+ var _useState = react.useState([]),
877
+ _useState2 = _slicedToArray(_useState, 2),
878
+ selectedRows = _useState2[0],
879
+ setSelectedRows = _useState2[1];
880
+ var _useState3 = react.useState([]),
881
+ _useState4 = _slicedToArray(_useState3, 2),
882
+ selectedRowData = _useState4[0],
883
+ setSelectedRowData = _useState4[1];
884
+ var _useState5 = react.useState(false),
885
+ _useState6 = _slicedToArray(_useState5, 2),
886
+ isExportModalOpen = _useState6[0],
887
+ setIsExportModalOpen = _useState6[1];
888
+ var _useState7 = react.useState(false),
889
+ _useState8 = _slicedToArray(_useState7, 2),
890
+ isCancelModalOpen = _useState8[0],
891
+ setIsCancelModalOpen = _useState8[1];
892
+ var _useState9 = react.useState(false),
893
+ _useState10 = _slicedToArray(_useState9, 2),
894
+ isResumeModalOpen = _useState10[0],
895
+ setIsResumeModalOpen = _useState10[1];
896
+ var _useState11 = react.useState(false),
897
+ _useState12 = _slicedToArray(_useState11, 2),
898
+ hasBulkSelectedAllRows = _useState12[0],
899
+ setHasBulkSelectedAllRows = _useState12[1];
900
+ var _useState13 = react.useState(constants.DEFAULT_SORT_PROPERTIES),
901
+ _useState14 = _slicedToArray(_useState13, 2),
902
+ sortProperties = _useState14[0],
903
+ setSortProperties = _useState14[1];
904
+ var _useState15 = react.useState(constants.DEFAULT_PAGE_VALUES),
905
+ _useState16 = _slicedToArray(_useState15, 2),
906
+ pageProperties = _useState16[0],
907
+ setPageProperties = _useState16[1];
908
+ var _useState17 = react.useState(neetoFiltersFrontend.buildFiltersFromURL([].concat(_toConsumableArray(filterableColumns), [searchKeywordProps]))),
909
+ _useState18 = _slicedToArray(_useState17, 2),
910
+ filters = _useState18[0],
911
+ setFilters = _useState18[1];
912
+ var history = reactRouterDom.useHistory();
913
+ var _getQueryParams2 = utils.getQueryParams(),
914
+ _getQueryParams2$tab = _getQueryParams2.tab,
915
+ tab = _getQueryParams2$tab === void 0 ? SPLIT_TRANSFERS_DASHBOARD_TAB.all : _getQueryParams2$tab;
916
+ var payload = _objectSpread(_objectSpread({
917
+ tab: tab,
918
+ filters: filters
919
+ }, pageProperties), sortProperties);
920
+ var _useFetchSplitTransfe = useFetchSplitTransfers(payload),
921
+ _useFetchSplitTransfe2 = _useFetchSplitTransfe.data,
922
+ _useFetchSplitTransfe3 = _useFetchSplitTransfe2 === void 0 ? {} : _useFetchSplitTransfe2,
923
+ splitTransfers = _useFetchSplitTransfe3.splitTransfers,
924
+ views = _useFetchSplitTransfe3.views,
925
+ isFetching = _useFetchSplitTransfe.isFetching,
926
+ isSplitTransfersLoading = _useFetchSplitTransfe.isPending;
927
+ var _useBulkUpdateSplitTr = useBulkUpdateSplitTransfers({
928
+ onSuccess: function onSuccess() {
929
+ setSelectedRowData([]);
930
+ setSelectedRows([]);
931
+ }
932
+ }),
933
+ updateSplitTransfers = _useBulkUpdateSplitTr.mutate,
934
+ isCancelling = _useBulkUpdateSplitTr.isPending;
935
+ var handleSplitTransfersUpdate = function handleSplitTransfersUpdate(status, reason) {
936
+ var ids = ramda.pluck("id", selectedRowData);
937
+ updateSplitTransfers({
938
+ ids: ids,
939
+ status: status,
940
+ reason: reason,
941
+ isApplyChangesToAllRequired: hasBulkSelectedAllRows
942
+ });
943
+ setIsCancelModalOpen(false);
944
+ setIsResumeModalOpen(false);
945
+ };
946
+ var handleTablePagination = function handleTablePagination(page, pageSize) {
947
+ var queryParams = utils.getQueryParams({
948
+ toCamelCase: false
949
+ });
950
+ history.push(utils.buildUrl(window.location.pathname, ramda.mergeLeft({
951
+ page: page,
952
+ page_size: pageSize
953
+ }, queryParams)));
954
+ setPageProperties({
955
+ page: page,
956
+ pageSize: pageSize
957
+ });
958
+ };
959
+ var handleRowSelect = function handleRowSelect(keys, rowData) {
960
+ setSelectedRows(keys);
961
+ setSelectedRowData(rowData);
962
+ };
963
+ react.useEffect(function () {
964
+ handleTablePagination(constants$1.DEFAULT_PAGE_INDEX, constants$1.DEFAULT_PAGE_SIZE);
965
+ setSortProperties(constants.DEFAULT_SORT_PROPERTIES);
966
+ setSelectedRowData([]);
967
+ setSelectedRows([]);
968
+ }, [filters, tab]);
969
+ if (isSplitTransfersLoading || isCancelling) {
970
+ return /*#__PURE__*/React.createElement("div", {
971
+ className: "flex h-full w-full items-center justify-center"
972
+ }, /*#__PURE__*/React.createElement(neetoui.Spinner, null));
973
+ }
974
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(TopSection, {
975
+ filterableColumns: filterableColumns,
976
+ filters: filters,
977
+ hasBulkSelectedAllRows: hasBulkSelectedAllRows,
978
+ pageProperties: pageProperties,
979
+ payableEntityColumns: payableEntityColumns,
980
+ searchKeywordProps: searchKeywordProps,
981
+ selectedRowData: selectedRowData,
982
+ selectedRows: selectedRows,
983
+ setFilters: setFilters,
984
+ setIsCancelModalOpen: setIsCancelModalOpen,
985
+ setIsExportModalOpen: setIsExportModalOpen,
986
+ setIsResumeModalOpen: setIsResumeModalOpen,
987
+ setPageProperties: setPageProperties,
988
+ setSortProperties: setSortProperties,
989
+ views: views
990
+ }), /*#__PURE__*/React.createElement(List, {
991
+ handleTablePagination: handleTablePagination,
992
+ isFetching: isFetching,
993
+ pageProperties: pageProperties,
994
+ payableEntityColumns: payableEntityColumns,
995
+ selectedRows: selectedRows,
996
+ setHasBulkSelectedAllRows: setHasBulkSelectedAllRows,
997
+ setSelectedRows: setSelectedRows,
998
+ setSortProperties: setSortProperties,
999
+ splitTransfers: splitTransfers,
1000
+ views: views,
1001
+ onRowSelect: handleRowSelect
1002
+ }), /*#__PURE__*/React.createElement(ExportModal.ExportModal, {
1003
+ filters: filters,
1004
+ isExportModalOpen: isExportModalOpen,
1005
+ setIsExportModalOpen: setIsExportModalOpen,
1006
+ sortProperties: sortProperties,
1007
+ dashboardKind: constants.DASHBOARD_KIND.splitTransfers
1008
+ }), /*#__PURE__*/React.createElement(CancelModal, {
1009
+ handleSplitTransfersUpdate: handleSplitTransfersUpdate,
1010
+ isOpen: isCancelModalOpen,
1011
+ onClose: function onClose() {
1012
+ return setIsCancelModalOpen(false);
1013
+ }
1014
+ }), /*#__PURE__*/React.createElement(ResumeModal, {
1015
+ handleSplitTransfersUpdate: handleSplitTransfersUpdate,
1016
+ isOpen: isResumeModalOpen,
1017
+ onClose: function onClose() {
1018
+ return setIsResumeModalOpen(false);
1019
+ }
1020
+ }));
1021
+ };
1022
+
1023
+ module.exports = SplitTransfersDashboard;
1024
+ //# sourceMappingURL=SplitTransfersDashboard.js.map