@bigbinary/neeto-payments-frontend 6.1.11 → 6.1.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (221) 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-CxKyrlwf.js +120 -0
  14. package/dist/ExportModal-CxKyrlwf.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-DxCzPCh0.js +122 -0
  66. package/dist/cjs/ExportModal-DxCzPCh0.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-DKHencVn.js +110 -0
  108. package/dist/cjs/dashboard-DKHencVn.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/getAmountInLargestCurrencyUnit.js +14 -0
  114. package/dist/cjs/getAmountInLargestCurrencyUnit.js.map +1 -0
  115. package/dist/cjs/getAmountInSmallestCurrencyUnit.js +14 -0
  116. package/dist/cjs/getAmountInSmallestCurrencyUnit.js.map +1 -0
  117. package/dist/cjs/getAmountWithAppliedTax.js +14 -0
  118. package/dist/cjs/getAmountWithAppliedTax.js.map +1 -0
  119. package/dist/cjs/getFormattedAmount.js +14 -0
  120. package/dist/cjs/getFormattedAmount.js.map +1 -0
  121. package/dist/cjs/getFormattedDiscountedAmount.js +14 -0
  122. package/dist/cjs/getFormattedDiscountedAmount.js.map +1 -0
  123. package/dist/cjs/getFormattedDiscountedPercentage.js +14 -0
  124. package/dist/cjs/getFormattedDiscountedPercentage.js.map +1 -0
  125. package/dist/cjs/getFormattedTaxAmount.js +14 -0
  126. package/dist/cjs/getFormattedTaxAmount.js.map +1 -0
  127. package/dist/cjs/getFormattedTipAmount.js +14 -0
  128. package/dist/cjs/getFormattedTipAmount.js.map +1 -0
  129. package/dist/cjs/getQrCodeValue.js +14 -0
  130. package/dist/cjs/getQrCodeValue.js.map +1 -0
  131. package/dist/cjs/getTaxAmount.js +14 -0
  132. package/dist/cjs/getTaxAmount.js.map +1 -0
  133. package/dist/cjs/getTipAmount.js +14 -0
  134. package/dist/cjs/getTipAmount.js.map +1 -0
  135. package/dist/cjs/hasAmountToPay.js +14 -0
  136. package/dist/cjs/hasAmountToPay.js.map +1 -0
  137. package/dist/cjs/index-CZ_VFGNj.js +899 -0
  138. package/dist/cjs/index-CZ_VFGNj.js.map +1 -0
  139. package/dist/cjs/index.js +127 -0
  140. package/dist/cjs/index.js.map +1 -0
  141. package/dist/cjs/queryConstants-Cka1X6GX.js +35 -0
  142. package/dist/cjs/queryConstants-Cka1X6GX.js.map +1 -0
  143. package/dist/cjs/renderFunctions-CX_K4qf8.js +51 -0
  144. package/dist/cjs/renderFunctions-CX_K4qf8.js.map +1 -0
  145. package/dist/cjs/stripe.esm-CrNYjPcC.js +132 -0
  146. package/dist/cjs/stripe.esm-CrNYjPcC.js.map +1 -0
  147. package/dist/cjs/useAccountsApi-DC617yB4.js +62 -0
  148. package/dist/cjs/useAccountsApi-DC617yB4.js.map +1 -0
  149. package/dist/cjs/useIntegrationsApi-BO9PhVVO.js +26 -0
  150. package/dist/cjs/useIntegrationsApi-BO9PhVVO.js.map +1 -0
  151. package/dist/cjs/usePaymentApi-BE8xfY-U.js +39 -0
  152. package/dist/cjs/usePaymentApi-BE8xfY-U.js.map +1 -0
  153. package/dist/cjs/usePaymentApi-C9aQhuda.js +56 -0
  154. package/dist/cjs/usePaymentApi-C9aQhuda.js.map +1 -0
  155. package/dist/cjs/usePaymentApi-CrKom4eT.js +41 -0
  156. package/dist/cjs/usePaymentApi-CrKom4eT.js.map +1 -0
  157. package/dist/cjs/usePlatformApi-C7lXP6ev.js +84 -0
  158. package/dist/cjs/usePlatformApi-C7lXP6ev.js.map +1 -0
  159. package/dist/cjs/useRazorpayPayment.js +113 -0
  160. package/dist/cjs/useRazorpayPayment.js.map +1 -0
  161. package/dist/cjs/useStripePromise.js +57 -0
  162. package/dist/cjs/useStripePromise.js.map +1 -0
  163. package/dist/constants.js +8 -0
  164. package/dist/constants.js.map +1 -0
  165. package/dist/dashboard-ClEN2ygs.js +104 -0
  166. package/dist/dashboard-ClEN2ygs.js.map +1 -0
  167. package/dist/exportChannel-DAxJ44QB.js +37 -0
  168. package/dist/exportChannel-DAxJ44QB.js.map +1 -0
  169. package/dist/getAddressElementOptions.js +12 -0
  170. package/dist/getAddressElementOptions.js.map +1 -0
  171. package/dist/getAmountInLargestCurrencyUnit.js +12 -0
  172. package/dist/getAmountInLargestCurrencyUnit.js.map +1 -0
  173. package/dist/getAmountInSmallestCurrencyUnit.js +12 -0
  174. package/dist/getAmountInSmallestCurrencyUnit.js.map +1 -0
  175. package/dist/getAmountWithAppliedTax.js +12 -0
  176. package/dist/getAmountWithAppliedTax.js.map +1 -0
  177. package/dist/getFormattedAmount.js +12 -0
  178. package/dist/getFormattedAmount.js.map +1 -0
  179. package/dist/getFormattedDiscountedAmount.js +12 -0
  180. package/dist/getFormattedDiscountedAmount.js.map +1 -0
  181. package/dist/getFormattedDiscountedPercentage.js +12 -0
  182. package/dist/getFormattedDiscountedPercentage.js.map +1 -0
  183. package/dist/getFormattedTaxAmount.js +12 -0
  184. package/dist/getFormattedTaxAmount.js.map +1 -0
  185. package/dist/getFormattedTipAmount.js +12 -0
  186. package/dist/getFormattedTipAmount.js.map +1 -0
  187. package/dist/getQrCodeValue.js +12 -0
  188. package/dist/getQrCodeValue.js.map +1 -0
  189. package/dist/getTaxAmount.js +12 -0
  190. package/dist/getTaxAmount.js.map +1 -0
  191. package/dist/getTipAmount.js +12 -0
  192. package/dist/getTipAmount.js.map +1 -0
  193. package/dist/hasAmountToPay.js +12 -0
  194. package/dist/hasAmountToPay.js.map +1 -0
  195. package/dist/index-C7irWceQ.js +848 -0
  196. package/dist/index-C7irWceQ.js.map +1 -0
  197. package/dist/index.js +84 -0
  198. package/dist/index.js.map +1 -0
  199. package/dist/queryConstants-DFKKEEo0.js +33 -0
  200. package/dist/queryConstants-DFKKEEo0.js.map +1 -0
  201. package/dist/renderFunctions-D9sAy3V_.js +47 -0
  202. package/dist/renderFunctions-D9sAy3V_.js.map +1 -0
  203. package/dist/stripe.esm-DuZ_gsAa.js +130 -0
  204. package/dist/stripe.esm-DuZ_gsAa.js.map +1 -0
  205. package/dist/useAccountsApi-DPem_UA-.js +58 -0
  206. package/dist/useAccountsApi-DPem_UA-.js.map +1 -0
  207. package/dist/useIntegrationsApi-D1bkKtoy.js +24 -0
  208. package/dist/useIntegrationsApi-D1bkKtoy.js.map +1 -0
  209. package/dist/usePaymentApi-BV0jXF-6.js +38 -0
  210. package/dist/usePaymentApi-BV0jXF-6.js.map +1 -0
  211. package/dist/usePaymentApi-DHARy-kC.js +53 -0
  212. package/dist/usePaymentApi-DHARy-kC.js.map +1 -0
  213. package/dist/usePaymentApi-DcMNbOMk.js +37 -0
  214. package/dist/usePaymentApi-DcMNbOMk.js.map +1 -0
  215. package/dist/usePlatformApi-Di7Dg-Gn.js +79 -0
  216. package/dist/usePlatformApi-Di7Dg-Gn.js.map +1 -0
  217. package/dist/useRazorpayPayment.js +111 -0
  218. package/dist/useRazorpayPayment.js.map +1 -0
  219. package/dist/useStripePromise.js +55 -0
  220. package/dist/useStripePromise.js.map +1 -0
  221. package/package.json +1 -1
@@ -0,0 +1,586 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
3
+ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
4
+ import { useMemo, useCallback, useState, startTransition, useEffect } from 'react';
5
+ import { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from 'neetocommons/constants';
6
+ import { getQueryParams, buildUrl } from 'neetocommons/utils';
7
+ import { Bar, buildFiltersFromURL } from '@bigbinary/neeto-filters-frontend';
8
+ import { Typography, Tooltip, Tag, Button, NoData, Table, Tab, Spinner } from '@bigbinary/neetoui';
9
+ import { map, curry, concat, mergeDeepWith, mergeLeft, reject, isNil, prop, isEmpty, modify } from 'ramda';
10
+ import { useHistory } from 'react-router-dom';
11
+ import { E as ExportModal } from './ExportModal-CxKyrlwf.js';
12
+ import { useQuery } from '@tanstack/react-query';
13
+ import axios from 'axios';
14
+ import { B as BASE_URL, P as PAYMENT_PROVIDERS, j as DEFAULT_TAG_STYLE, l as formatAmount, m as formatCurrency, n as getUniquePaymentProviders, o as buildDefaultTableColumns, p as processDataIndex, S as SORT_DIRECTIONS, s as shouldTabsVisible, U as UN_HIDEABLE_COLUMNS, i as DEFAULT_PAGE_VALUES, q as DASHBOARD_KIND } from './index-C7irWceQ.js';
15
+ import { Q as QUERY_KEYS } from './queryConstants-DFKKEEo0.js';
16
+ import { t } from 'i18next';
17
+ import { toLabelAndValue, isNotPresent, snakeToCamelCase, humanize, isPresent, camelToSnakeCase } from 'neetocist';
18
+ import { useTableConfigurations } from '@bigbinary/neeto-molecules/Columns';
19
+ import TableWrapper from '@bigbinary/neeto-molecules/TableWrapper';
20
+ import { useTranslation } from 'react-i18next';
21
+ import { T as TABLE_KEYS } from './exportChannel-DAxJ44QB.js';
22
+ import DateFormat from '@bigbinary/neeto-molecules/DateFormat';
23
+ import { C as CopyButtonWrapper } from './CopyButtonWrapper-rv-OaINx.js';
24
+ import Header from '@bigbinary/neeto-molecules/Header';
25
+ import SubHeader from '@bigbinary/neeto-molecules/SubHeader';
26
+ import '@bigbinary/neeto-icons';
27
+ import 'decimal.js';
28
+ import '@bigbinary/neeto-molecules/CopyToClipboardButton';
29
+
30
+ var list = function list(payload) {
31
+ return axios.get("".concat(BASE_URL, "/api/v1/payments"), {
32
+ params: payload
33
+ });
34
+ };
35
+ var paymentsApi = {
36
+ list: list
37
+ };
38
+
39
+ 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; }
40
+ 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; }
41
+ var useFetchPayments = function useFetchPayments() {
42
+ var payload = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
43
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
44
+ return useQuery(_objectSpread$2({
45
+ queryKey: [QUERY_KEYS.PAYMENTS_LIST, payload],
46
+ queryFn: function queryFn() {
47
+ return paymentsApi.list(payload);
48
+ }
49
+ }, options));
50
+ };
51
+
52
+ var PAYMENT_DASHBOARD_TAB = {
53
+ all: "all",
54
+ successful: "successful",
55
+ declined: "declined",
56
+ refunded: "refunded",
57
+ pending: "pending",
58
+ rejected: "rejected",
59
+ confirmation_pending: "confirmation_pending"
60
+ };
61
+ var SEARCH_PROPS = {
62
+ node: "identifier,",
63
+ key: "search_term",
64
+ model: "NeetoPaymentsEngine::Payment,"
65
+ };
66
+ var FILTER_COLUMNS = [{
67
+ key: "payment_provider",
68
+ label: t("neetoPayments.common.paymentProvider"),
69
+ node: "payment_provider",
70
+ type: "single_option",
71
+ values: [].concat(_toConsumableArray(map(toLabelAndValue, PAYMENT_PROVIDERS)), [{
72
+ label: t("neetoPayments.common.upi").toUpperCase(),
73
+ value: "eupi"
74
+ }])
75
+ }, {
76
+ key: "amount",
77
+ label: t("neetoPayments.common.amount"),
78
+ node: "amount",
79
+ type: "decimal"
80
+ }, {
81
+ key: "payment_time",
82
+ label: t("neetoPayments.common.paymentTime"),
83
+ node: "payment_at",
84
+ type: "date"
85
+ }];
86
+ var TAG_STYLE = {
87
+ initiated: "info",
88
+ declined: "danger",
89
+ successful: "success",
90
+ refunded: "secondary",
91
+ cancelled: "secondary",
92
+ pending: "warning",
93
+ paid: "success",
94
+ failed: "danger",
95
+ in_transit: "info",
96
+ rejected: "danger",
97
+ confirmationPending: "warning"
98
+ };
99
+ var PAYMENT_PROVIDER = {
100
+ eupi: "eupi"
101
+ };
102
+ var DEFAULT_SORT_PROPERTIES = {
103
+ sortBy: "payment_at",
104
+ orderBy: "DESC"
105
+ };
106
+
107
+ var renderIdentifier = function renderIdentifier(identifier, _ref) {
108
+ var receiptUrl = _ref.receiptUrl;
109
+ var isTemporaryIdentifier = identifier === null || identifier === void 0 ? void 0 : identifier.startsWith("temp_");
110
+ if (isTemporaryIdentifier) {
111
+ return /*#__PURE__*/React.createElement(Tooltip, {
112
+ content: t("neetoPayments.tooltipContent.paymentIdentifierUnavailable"),
113
+ position: "top"
114
+ }, /*#__PURE__*/React.createElement("div", {
115
+ className: "text-center"
116
+ }, /*#__PURE__*/React.createElement(Typography, {
117
+ style: "body2"
118
+ }, t("neetoPayments.common.notAvailable"))));
119
+ }
120
+ return /*#__PURE__*/React.createElement(CopyButtonWrapper, {
121
+ content: identifier
122
+ }, /*#__PURE__*/React.createElement(Button, {
123
+ href: receiptUrl,
124
+ label: identifier,
125
+ size: "small",
126
+ style: "link",
127
+ target: "_blank"
128
+ }));
129
+ };
130
+ var getTagStyle = function getTagStyle(status) {
131
+ return TAG_STYLE[status] || DEFAULT_TAG_STYLE;
132
+ };
133
+ var preProcessStatus = function preProcessStatus(type, status) {
134
+ var record = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
135
+ if (type === "payment") {
136
+ return record.isRefunded ? "refunded" : status;
137
+ }
138
+ return snakeToCamelCase(status);
139
+ };
140
+ var renderStatus = curry(function (type, status, record) {
141
+ if (isNotPresent(status)) {
142
+ return /*#__PURE__*/React.createElement(Typography, {
143
+ style: "body2"
144
+ }, t("neetoPayments.common.notAvailable"));
145
+ }
146
+ var processedStatus = preProcessStatus(type, status, record);
147
+ return /*#__PURE__*/React.createElement(Tooltip, {
148
+ content: t("neetoPayments.tooltipContent.".concat(type, ".").concat(processedStatus)),
149
+ position: "top"
150
+ }, /*#__PURE__*/React.createElement("div", {
151
+ className: "w-fit"
152
+ }, /*#__PURE__*/React.createElement(Tag, {
153
+ style: getTagStyle(snakeToCamelCase(processedStatus)),
154
+ label: humanize(t("neetoPayments.tagLabels.".concat(type, ".").concat(processedStatus)))
155
+ })));
156
+ });
157
+ var renderPaymentProvider = function renderPaymentProvider(paymentProvider) {
158
+ if (paymentProvider === PAYMENT_PROVIDER.eupi) {
159
+ return t("neetoPayments.common.upi");
160
+ }
161
+ return humanize(paymentProvider);
162
+ };
163
+ var renderDate = function renderDate(date) {
164
+ if (isPresent(date)) {
165
+ return /*#__PURE__*/React.createElement(DateFormat.DateTime, {
166
+ date: date
167
+ });
168
+ }
169
+ return /*#__PURE__*/React.createElement(Typography, {
170
+ style: "body2"
171
+ }, t("neetoPayments.common.notAvailable"));
172
+ };
173
+ var renderPayoutTraceId = function renderPayoutTraceId(value) {
174
+ if (isPresent(value)) return value;
175
+ return /*#__PURE__*/React.createElement(Typography, {
176
+ style: "body2"
177
+ }, t("neetoPayments.common.notAvailable"));
178
+ };
179
+ var getDefaultColumns = function getDefaultColumns(dashboardKind) {
180
+ var columns = [{
181
+ title: t("neetoPayments.common.id"),
182
+ dataIndex: "id",
183
+ key: "id",
184
+ width: 85,
185
+ position: 0,
186
+ isHidable: false
187
+ }, {
188
+ title: t("neetoPayments.common.identifier"),
189
+ dataIndex: "identifier",
190
+ key: "identifier",
191
+ width: 300,
192
+ render: renderIdentifier,
193
+ position: 1,
194
+ isHidable: false
195
+ }, {
196
+ title: t("neetoPayments.common.provider"),
197
+ dataIndex: "paymentProvider",
198
+ key: "paymentProvider",
199
+ width: 150,
200
+ render: renderPaymentProvider,
201
+ position: 2,
202
+ sorter: false
203
+ }, {
204
+ title: t("neetoPayments.common.status"),
205
+ dataIndex: "status",
206
+ key: "status",
207
+ width: 150,
208
+ render: renderStatus("transaction"),
209
+ sorter: true,
210
+ position: 3,
211
+ isHidable: false
212
+ }, {
213
+ title: t("neetoPayments.common.totalAmount"),
214
+ dataIndex: "amount",
215
+ key: "amount",
216
+ width: 200,
217
+ sorter: true,
218
+ render: formatAmount,
219
+ position: 4
220
+ }, {
221
+ title: t("neetoPayments.common.taxAmount"),
222
+ dataIndex: "taxAmount",
223
+ key: "taxAmount",
224
+ width: 200,
225
+ sorter: true,
226
+ render: formatAmount,
227
+ position: 4
228
+ }, {
229
+ title: t("neetoPayments.common.tipAmount"),
230
+ dataIndex: "tipAmount",
231
+ key: "tipAmount",
232
+ width: 200,
233
+ sorter: true,
234
+ render: formatAmount,
235
+ position: 4
236
+ }, {
237
+ title: t("neetoPayments.common.currency"),
238
+ dataIndex: "currency",
239
+ key: "currency",
240
+ width: 180,
241
+ sorter: true,
242
+ render: formatCurrency,
243
+ position: 4
244
+ }, {
245
+ title: t("neetoPayments.common.paymentTime"),
246
+ dataIndex: "paymentAt",
247
+ key: "paymentTime",
248
+ width: 190,
249
+ render: renderDate,
250
+ sorter: true,
251
+ position: 6
252
+ }];
253
+ if (dashboardKind === "connected") {
254
+ columns = concat([{
255
+ title: t("neetoPayments.common.payoutStatus"),
256
+ dataIndex: ["payout", "status"],
257
+ key: "payoutStatus",
258
+ width: 200,
259
+ render: renderStatus("payout"),
260
+ sorter: false,
261
+ position: 7
262
+ }, {
263
+ title: t("neetoPayments.common.payoutArrivalDate"),
264
+ dataIndex: ["payout", "arrivalDate"],
265
+ key: "payoutArrivalDate",
266
+ width: 235,
267
+ render: renderDate,
268
+ sorter: true,
269
+ position: 8
270
+ }, {
271
+ title: t("neetoPayments.common.payoutTraceId"),
272
+ dataIndex: ["payout", "traceId", "value"],
273
+ key: "payoutTraceId",
274
+ width: 205,
275
+ render: renderPayoutTraceId,
276
+ sorter: false,
277
+ position: 9
278
+ }], columns);
279
+ }
280
+ return columns;
281
+ };
282
+
283
+ 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; }
284
+ 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; }
285
+ var buildSearchProps = function buildSearchProps(searchProps, searchTerm) {
286
+ return mergeDeepWith(concat, SEARCH_PROPS, mergeLeft({
287
+ value: searchTerm.trim()
288
+ }, searchProps));
289
+ };
290
+ var buildFilterColumns = function buildFilterColumns() {
291
+ var payableEntityColumns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
292
+ return reject(isNil, concat(FILTER_COLUMNS, map(prop("filterProps"), payableEntityColumns)));
293
+ };
294
+ var buildRowData = function buildRowData(_ref) {
295
+ var payments = _ref.payments,
296
+ _ref$pageProperties = _ref.pageProperties,
297
+ pageProperties = _ref$pageProperties === void 0 ? {} : _ref$pageProperties;
298
+ return payments === null || payments === void 0 ? void 0 : payments.map(function (element, index) {
299
+ return _objectSpread$1(_objectSpread$1({}, element), {}, {
300
+ id: isEmpty(pageProperties) ? index + 1 : pageProperties.pageSize * (pageProperties.page - 1) + index + 1
301
+ });
302
+ });
303
+ };
304
+
305
+ var List = function List(_ref) {
306
+ var dashboardKind = _ref.dashboardKind,
307
+ isFetching = _ref.isFetching,
308
+ payments = _ref.payments,
309
+ payableEntityColumns = _ref.payableEntityColumns,
310
+ setSortProperties = _ref.setSortProperties,
311
+ pageProperties = _ref.pageProperties,
312
+ handleTablePagination = _ref.handleTablePagination,
313
+ views = _ref.views;
314
+ var _useTranslation = useTranslation(),
315
+ t = _useTranslation.t;
316
+ var _getQueryParams = getQueryParams(),
317
+ _getQueryParams$tab = _getQueryParams.tab,
318
+ tab = _getQueryParams$tab === void 0 ? PAYMENT_DASHBOARD_TAB.all : _getQueryParams$tab;
319
+ var paymentsCount = useMemo(function () {
320
+ return views[tab];
321
+ }, [views, tab]);
322
+ var isMultipleProvidersExist = useMemo(function () {
323
+ return getUniquePaymentProviders(payments !== null && payments !== void 0 ? payments : []).length > 1;
324
+ }, [payments]);
325
+ var defaultColumns = useMemo(function () {
326
+ return getDefaultColumns(dashboardKind);
327
+ }, [dashboardKind]);
328
+ var allColumns = useMemo(function () {
329
+ return buildDefaultTableColumns({
330
+ payableEntityColumns: payableEntityColumns,
331
+ isMultipleProvidersExist: isMultipleProvidersExist,
332
+ defaultColumns: defaultColumns,
333
+ isAllTab: tab === PAYMENT_DASHBOARD_TAB.all
334
+ });
335
+ }, [payableEntityColumns, isMultipleProvidersExist, defaultColumns, tab]);
336
+ var _useTableConfiguratio = useTableConfigurations("".concat(TABLE_KEYS.PAYMENTS_TABLE, "-").concat(tab), allColumns),
337
+ isTableConfigurationLoading = _useTableConfiguratio.isTableConfigurationLoading,
338
+ customizedColumns = _useTableConfiguratio.customizedColumns,
339
+ hideColumn = _useTableConfiguratio.hideColumn;
340
+ var handleTableChange = useCallback(function (_, __, sorter) {
341
+ setSortProperties(isPresent(sorter === null || sorter === void 0 ? void 0 : sorter.column) ? {
342
+ sortBy: camelToSnakeCase(processDataIndex(sorter.field)),
343
+ orderBy: sorter.order === "ascend" ? "ASC" : "DESC"
344
+ } : DEFAULT_SORT_PROPERTIES);
345
+ }, [setSortProperties]);
346
+ var rowData = useMemo(function () {
347
+ return buildRowData({
348
+ payments: payments,
349
+ pageProperties: pageProperties,
350
+ tab: tab
351
+ });
352
+ }, [payments, pageProperties, tab]);
353
+ if (isNotPresent(payments)) {
354
+ return /*#__PURE__*/React.createElement("div", {
355
+ className: "flex h-full w-full items-center justify-center"
356
+ }, /*#__PURE__*/React.createElement(NoData, {
357
+ title: tab === PAYMENT_DASHBOARD_TAB.all ? t("neetoPayments.emptyState.payments") : t("neetoPayments.emptyState.paymentsWithStatus", {
358
+ status: humanize(tab)
359
+ })
360
+ }));
361
+ }
362
+ return /*#__PURE__*/React.createElement(TableWrapper, {
363
+ hasPagination: paymentsCount > (pageProperties === null || pageProperties === void 0 ? void 0 : pageProperties.pageSize)
364
+ }, /*#__PURE__*/React.createElement(Table, {
365
+ rowData: rowData,
366
+ fixedHeight: true,
367
+ allowRowClick: false,
368
+ columnData: customizedColumns,
369
+ currentPageNumber: pageProperties === null || pageProperties === void 0 ? void 0 : pageProperties.page,
370
+ handlePageChange: handleTablePagination,
371
+ loading: isFetching || isTableConfigurationLoading,
372
+ rowSelection: false,
373
+ sortDirections: SORT_DIRECTIONS,
374
+ totalCount: paymentsCount,
375
+ paginationProps: {
376
+ showSizeChanger: true,
377
+ hideOnSinglePage: true,
378
+ pageSize: pageProperties === null || pageProperties === void 0 ? void 0 : pageProperties.pageSize,
379
+ total: paymentsCount
380
+ },
381
+ onChange: handleTableChange,
382
+ onColumnHide: function onColumnHide(_ref2) {
383
+ var key = _ref2.key;
384
+ return hideColumn(key);
385
+ }
386
+ }));
387
+ };
388
+
389
+ var TopSection = function TopSection(_ref) {
390
+ var views = _ref.views,
391
+ filters = _ref.filters,
392
+ setFilters = _ref.setFilters,
393
+ filterableColumns = _ref.filterableColumns,
394
+ searchKeywordProps = _ref.searchKeywordProps,
395
+ payableEntityColumns = _ref.payableEntityColumns,
396
+ setIsExportModalOpen = _ref.setIsExportModalOpen,
397
+ dashboardKind = _ref.dashboardKind;
398
+ var _useState = useState(false),
399
+ _useState2 = _slicedToArray(_useState, 2),
400
+ isFilterPaneOpen = _useState2[0],
401
+ setIsFilterPaneOpen = _useState2[1];
402
+ var _useTranslation = useTranslation(),
403
+ t = _useTranslation.t;
404
+ var history = useHistory();
405
+ var _getQueryParams = getQueryParams(),
406
+ _getQueryParams$tab = _getQueryParams.tab,
407
+ tab = _getQueryParams$tab === void 0 ? PAYMENT_DASHBOARD_TAB.all : _getQueryParams$tab;
408
+ var paymentsCount = views === null || views === void 0 ? void 0 : views[tab];
409
+ var isPaymentCountVisible = paymentsCount > 0 || paymentsCount === 0 && isPresent(filters);
410
+ var isFilterButtonVisible = isPaymentCountVisible || isPresent(filters);
411
+ var handleFiltersChange = function handleFiltersChange(filters) {
412
+ startTransition(function () {
413
+ setFilters(filters);
414
+ });
415
+ };
416
+ var handleTabChange = function handleTabChange(tab) {
417
+ var queryParams = getQueryParams({
418
+ toCamelCase: false
419
+ });
420
+ var newParams = {
421
+ tab: tab,
422
+ page: DEFAULT_PAGE_INDEX,
423
+ page_size: DEFAULT_PAGE_SIZE
424
+ };
425
+ history.push(buildUrl(window.location.pathname, mergeLeft(newParams, queryParams)));
426
+ };
427
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Header, {
428
+ title: t("neetoPayments.title.payments"),
429
+ searchProps: isFilterButtonVisible && {
430
+ placeholder: searchKeywordProps.placeholder,
431
+ className: searchKeywordProps.placeholder.length > 30 ? "w-96" : "w-64"
432
+ }
433
+ }), shouldTabsVisible(views) && /*#__PURE__*/React.createElement(Tab, null, Object.keys(PAYMENT_DASHBOARD_TAB).map(function (item) {
434
+ return /*#__PURE__*/React.createElement(Tab.Item, {
435
+ active: tab === item,
436
+ key: item,
437
+ onClick: function onClick() {
438
+ return handleTabChange(item);
439
+ }
440
+ }, t("neetoPayments.common.".concat(snakeToCamelCase(item))));
441
+ })), /*#__PURE__*/React.createElement(SubHeader, {
442
+ className: "my-4",
443
+ leftActionBlock: isPaymentCountVisible && /*#__PURE__*/React.createElement(Typography, {
444
+ className: "neeto-ui-gray-800 me-2 font-semibold",
445
+ component: "h4"
446
+ }, tab === PAYMENT_DASHBOARD_TAB.all ? t("neetoPayments.countOf.payment", {
447
+ count: paymentsCount
448
+ }) : t("neetoPayments.countOf.paymentWithStatus", {
449
+ count: paymentsCount,
450
+ status: humanize(tab)
451
+ })),
452
+ rightActionBlock: isFilterButtonVisible && /*#__PURE__*/React.createElement(SubHeader.RightBlock, {
453
+ columnsButtonProps: {
454
+ columnData: buildDefaultTableColumns({
455
+ defaultColumns: getDefaultColumns(dashboardKind),
456
+ payableEntityColumns: payableEntityColumns,
457
+ isAllTab: tab === PAYMENT_DASHBOARD_TAB.all
458
+ }).map(modify("dataIndex", processDataIndex)),
459
+ fixedColumns: UN_HIDEABLE_COLUMNS,
460
+ tableKey: "".concat(TABLE_KEYS.PAYMENTS_TABLE, "-").concat(tab)
461
+ },
462
+ downloadButtonProps: {
463
+ onClick: function onClick() {
464
+ return setIsExportModalOpen(true);
465
+ }
466
+ },
467
+ filterProps: {
468
+ columns: filterableColumns,
469
+ isOpen: isFilterPaneOpen,
470
+ keyword: searchKeywordProps,
471
+ setIsOpen: setIsFilterPaneOpen,
472
+ onChange: handleFiltersChange
473
+ }
474
+ })
475
+ }), /*#__PURE__*/React.createElement(Bar, {
476
+ columns: filterableColumns,
477
+ keyword: searchKeywordProps,
478
+ setIsPaneOpen: setIsFilterPaneOpen,
479
+ onChange: handleFiltersChange
480
+ }));
481
+ };
482
+
483
+ 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; }
484
+ 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; }
485
+ var PaymentsDashboard = function PaymentsDashboard(_ref) {
486
+ var searchProps = _ref.searchProps,
487
+ payableEntityColumns = _ref.payableEntityColumns,
488
+ _ref$holdableIds = _ref.holdableIds,
489
+ holdableIds = _ref$holdableIds === void 0 ? {} : _ref$holdableIds,
490
+ _ref$dashboardKind = _ref.dashboardKind,
491
+ dashboardKind = _ref$dashboardKind === void 0 ? "platform" : _ref$dashboardKind;
492
+ var _getQueryParams = getQueryParams(),
493
+ _getQueryParams$searc = _getQueryParams.searchTerm,
494
+ searchTerm = _getQueryParams$searc === void 0 ? "" : _getQueryParams$searc;
495
+ var filterableColumns = buildFilterColumns(payableEntityColumns);
496
+ var searchKeywordProps = buildSearchProps(searchProps, searchTerm);
497
+ var _useState = useState(DEFAULT_SORT_PROPERTIES),
498
+ _useState2 = _slicedToArray(_useState, 2),
499
+ sortProperties = _useState2[0],
500
+ setSortProperties = _useState2[1];
501
+ var _useState3 = useState(DEFAULT_PAGE_VALUES),
502
+ _useState4 = _slicedToArray(_useState3, 2),
503
+ pageProperties = _useState4[0],
504
+ setPageProperties = _useState4[1];
505
+ var _useState5 = useState(false),
506
+ _useState6 = _slicedToArray(_useState5, 2),
507
+ isExportModalOpen = _useState6[0],
508
+ setIsExportModalOpen = _useState6[1];
509
+ var _useState7 = useState(buildFiltersFromURL([].concat(_toConsumableArray(filterableColumns), [searchKeywordProps]))),
510
+ _useState8 = _slicedToArray(_useState7, 2),
511
+ filters = _useState8[0],
512
+ setFilters = _useState8[1];
513
+ var history = useHistory();
514
+ var _getQueryParams2 = getQueryParams(),
515
+ _getQueryParams2$tab = _getQueryParams2.tab,
516
+ tab = _getQueryParams2$tab === void 0 ? PAYMENT_DASHBOARD_TAB.all : _getQueryParams2$tab;
517
+ var payload = _objectSpread(_objectSpread({
518
+ dashboardKind: dashboardKind,
519
+ holdableIds: holdableIds,
520
+ tab: tab,
521
+ filters: filters
522
+ }, pageProperties), sortProperties);
523
+ var _useFetchPayments = useFetchPayments(payload, {
524
+ enabled: true
525
+ }),
526
+ _useFetchPayments$dat = _useFetchPayments.data,
527
+ _useFetchPayments$dat2 = _useFetchPayments$dat === void 0 ? {} : _useFetchPayments$dat,
528
+ payments = _useFetchPayments$dat2.payments,
529
+ views = _useFetchPayments$dat2.views,
530
+ isFetching = _useFetchPayments.isFetching,
531
+ isPaymentsLoaidng = _useFetchPayments.isPending;
532
+ var handleTablePagination = function handleTablePagination(page, pageSize) {
533
+ var queryParams = getQueryParams({
534
+ toCamelCase: false
535
+ });
536
+ history.push(buildUrl(window.location.pathname, mergeLeft({
537
+ page: page,
538
+ page_size: pageSize
539
+ }, queryParams)));
540
+ setPageProperties({
541
+ page: page,
542
+ pageSize: pageSize
543
+ });
544
+ };
545
+ useEffect(function () {
546
+ handleTablePagination(DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE);
547
+ setSortProperties(DEFAULT_SORT_PROPERTIES);
548
+ }, [filters, tab]);
549
+ if (isPaymentsLoaidng) {
550
+ return /*#__PURE__*/React.createElement("div", {
551
+ className: "flex h-full w-full items-center justify-center"
552
+ }, /*#__PURE__*/React.createElement(Spinner, null));
553
+ }
554
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(TopSection, {
555
+ dashboardKind: dashboardKind,
556
+ filterableColumns: filterableColumns,
557
+ filters: filters,
558
+ pageProperties: pageProperties,
559
+ payableEntityColumns: payableEntityColumns,
560
+ searchKeywordProps: searchKeywordProps,
561
+ setFilters: setFilters,
562
+ setIsExportModalOpen: setIsExportModalOpen,
563
+ setPageProperties: setPageProperties,
564
+ setSortProperties: setSortProperties,
565
+ views: views
566
+ }), /*#__PURE__*/React.createElement(List, {
567
+ dashboardKind: dashboardKind,
568
+ handleTablePagination: handleTablePagination,
569
+ isFetching: isFetching,
570
+ pageProperties: pageProperties,
571
+ payableEntityColumns: payableEntityColumns,
572
+ payments: payments,
573
+ setSortProperties: setSortProperties,
574
+ views: views
575
+ }), /*#__PURE__*/React.createElement(ExportModal, {
576
+ filters: filters,
577
+ holdableIds: holdableIds,
578
+ isExportModalOpen: isExportModalOpen,
579
+ setIsExportModalOpen: setIsExportModalOpen,
580
+ sortProperties: sortProperties,
581
+ dashboardKind: DASHBOARD_KIND.payments
582
+ }));
583
+ };
584
+
585
+ export { PaymentsDashboard as default };
586
+ //# sourceMappingURL=PaymentsDashboard.js.map