@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 @@
1
+ {"version":3,"file":"PaymentsDashboard.js","sources":["../../app/javascript/src/apis/payments.js","../../app/javascript/src/hooks/reactQuery/usePaymentsApi.js","../../app/javascript/src/components/PaymentsDashboard/constants.js","../../app/javascript/src/components/PaymentsDashboard/columns/utils.jsx","../../app/javascript/src/components/PaymentsDashboard/utils.js","../../app/javascript/src/components/PaymentsDashboard/List.jsx","../../app/javascript/src/components/PaymentsDashboard/TopSection.jsx","../../app/javascript/src/components/PaymentsDashboard/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = payload =>\n axios.get(`${BASE_URL}/api/v1/payments`, { params: payload });\n\nconst paymentsApi = { list };\n\nexport default paymentsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport paymentsApi from \"apis/payments\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchPayments = (payload = {}, options = {}) =>\n useQuery({\n queryKey: [QUERY_KEYS.PAYMENTS_LIST, payload],\n queryFn: () => paymentsApi.list(payload),\n ...options,\n });\n","import { t } from \"i18next\";\nimport { toLabelAndValue } from \"neetocist\";\nimport { map } from \"ramda\";\n\nimport { PAYMENT_PROVIDERS } from \"src/constants\";\n\nexport const COLUMNS_STORAGE_KEY = \"paymentsDashboard\";\n\nexport const PAYMENT_DASHBOARD_TAB = {\n all: \"all\",\n successful: \"successful\",\n declined: \"declined\",\n refunded: \"refunded\",\n pending: \"pending\",\n rejected: \"rejected\",\n confirmation_pending: \"confirmation_pending\",\n};\n\nexport const SEARCH_PROPS = {\n node: \"identifier,\",\n key: \"search_term\",\n model: \"NeetoPaymentsEngine::Payment,\",\n};\n\nexport const FILTER_COLUMNS = [\n {\n key: \"payment_provider\",\n label: t(\"neetoPayments.common.paymentProvider\"),\n node: \"payment_provider\",\n type: \"single_option\",\n values: [\n ...map(toLabelAndValue, PAYMENT_PROVIDERS),\n { label: t(\"neetoPayments.common.upi\").toUpperCase(), value: \"eupi\" },\n ],\n },\n {\n key: \"amount\",\n label: t(\"neetoPayments.common.amount\"),\n node: \"amount\",\n type: \"decimal\",\n },\n {\n key: \"payment_time\",\n label: t(\"neetoPayments.common.paymentTime\"),\n node: \"payment_at\",\n type: \"date\",\n },\n];\n\nexport const TAG_STYLE = {\n initiated: \"info\",\n declined: \"danger\",\n successful: \"success\",\n refunded: \"secondary\",\n cancelled: \"secondary\",\n pending: \"warning\",\n paid: \"success\",\n failed: \"danger\",\n in_transit: \"info\",\n rejected: \"danger\",\n confirmationPending: \"warning\",\n};\n\nexport const PAYMENT_PROVIDER = { eupi: \"eupi\" };\n\nexport const DEFAULT_SORT_PROPERTIES = {\n sortBy: \"payment_at\",\n orderBy: \"DESC\",\n};\n","import { t } from \"i18next\";\nimport { snakeToCamelCase, humanize, isPresent, isNotPresent } from \"neetocist\";\nimport DateFormat from \"neetomolecules/DateFormat\";\nimport { Button, Tag, Tooltip, Typography } from \"neetoui\";\nimport { concat, curry } from \"ramda\";\n\nimport CopyButtonWrapper from \"components/Common/CopyButtonWrapper\";\nimport { DEFAULT_TAG_STYLE } from \"src/constants\";\nimport { formatAmount, formatCurrency } from \"utils\";\n\nimport { TAG_STYLE, PAYMENT_PROVIDER } from \"../constants\";\n\nconst renderIdentifier = (identifier, { receiptUrl }) => {\n const isTemporaryIdentifier = identifier?.startsWith(\"temp_\");\n\n if (isTemporaryIdentifier) {\n return (\n <Tooltip\n content={t(\"neetoPayments.tooltipContent.paymentIdentifierUnavailable\")}\n position=\"top\"\n >\n <div className=\"text-center\">\n <Typography style=\"body2\">\n {t(\"neetoPayments.common.notAvailable\")}\n </Typography>\n </div>\n </Tooltip>\n );\n }\n\n return (\n <CopyButtonWrapper content={identifier}>\n <Button\n href={receiptUrl}\n label={identifier}\n size=\"small\"\n style=\"link\"\n target=\"_blank\"\n />\n </CopyButtonWrapper>\n );\n};\n\nconst getTagStyle = status => TAG_STYLE[status] || DEFAULT_TAG_STYLE;\n\nconst preProcessStatus = (type, status, record = {}) => {\n if (type === \"payment\") {\n return record.isRefunded ? \"refunded\" : status;\n }\n\n return snakeToCamelCase(status);\n};\n\nconst renderStatus = curry((type, status, record) => {\n if (isNotPresent(status)) {\n return (\n <Typography style=\"body2\">\n {t(\"neetoPayments.common.notAvailable\")}\n </Typography>\n );\n }\n\n const processedStatus = preProcessStatus(type, status, record);\n\n return (\n <Tooltip\n content={t(`neetoPayments.tooltipContent.${type}.${processedStatus}`)}\n position=\"top\"\n >\n <div className=\"w-fit\">\n <Tag\n style={getTagStyle(snakeToCamelCase(processedStatus))}\n label={humanize(\n t(`neetoPayments.tagLabels.${type}.${processedStatus}`)\n )}\n />\n </div>\n </Tooltip>\n );\n});\n\nconst renderPaymentProvider = paymentProvider => {\n if (paymentProvider === PAYMENT_PROVIDER.eupi) {\n return t(\"neetoPayments.common.upi\");\n }\n\n return humanize(paymentProvider);\n};\n\nconst renderDate = date => {\n if (isPresent(date)) {\n return <DateFormat.DateTime {...{ date }} />;\n }\n\n return (\n <Typography style=\"body2\">\n {t(\"neetoPayments.common.notAvailable\")}\n </Typography>\n );\n};\n\nconst renderPayoutTraceId = value => {\n if (isPresent(value)) return value;\n\n return (\n <Typography style=\"body2\">\n {t(\"neetoPayments.common.notAvailable\")}\n </Typography>\n );\n};\n\nexport const getDefaultColumns = dashboardKind => {\n let columns = [\n {\n title: t(\"neetoPayments.common.id\"),\n dataIndex: \"id\",\n key: \"id\",\n width: 85,\n position: 0,\n isHidable: false,\n },\n {\n title: t(\"neetoPayments.common.identifier\"),\n dataIndex: \"identifier\",\n key: \"identifier\",\n width: 300,\n render: renderIdentifier,\n position: 1,\n isHidable: false,\n },\n {\n title: t(\"neetoPayments.common.provider\"),\n dataIndex: \"paymentProvider\",\n key: \"paymentProvider\",\n width: 150,\n render: renderPaymentProvider,\n position: 2,\n sorter: false,\n },\n {\n title: t(\"neetoPayments.common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n width: 150,\n render: renderStatus(\"transaction\"),\n sorter: true,\n position: 3,\n isHidable: false,\n },\n {\n title: t(\"neetoPayments.common.totalAmount\"),\n dataIndex: \"amount\",\n key: \"amount\",\n width: 200,\n sorter: true,\n render: formatAmount,\n position: 4,\n },\n {\n title: t(\"neetoPayments.common.taxAmount\"),\n dataIndex: \"taxAmount\",\n key: \"taxAmount\",\n width: 200,\n sorter: true,\n render: formatAmount,\n position: 4,\n },\n {\n title: t(\"neetoPayments.common.tipAmount\"),\n dataIndex: \"tipAmount\",\n key: \"tipAmount\",\n width: 200,\n sorter: true,\n render: formatAmount,\n position: 4,\n },\n {\n title: t(\"neetoPayments.common.currency\"),\n dataIndex: \"currency\",\n key: \"currency\",\n width: 180,\n sorter: true,\n render: formatCurrency,\n position: 4,\n },\n {\n title: t(\"neetoPayments.common.paymentTime\"),\n dataIndex: \"paymentAt\",\n key: \"paymentTime\",\n width: 190,\n render: renderDate,\n sorter: true,\n position: 6,\n },\n ];\n\n if (dashboardKind === \"connected\") {\n columns = concat(\n [\n {\n title: t(\"neetoPayments.common.payoutStatus\"),\n dataIndex: [\"payout\", \"status\"],\n key: \"payoutStatus\",\n width: 200,\n render: renderStatus(\"payout\"),\n sorter: false,\n position: 7,\n },\n {\n title: t(\"neetoPayments.common.payoutArrivalDate\"),\n dataIndex: [\"payout\", \"arrivalDate\"],\n key: \"payoutArrivalDate\",\n width: 235,\n render: renderDate,\n sorter: true,\n position: 8,\n },\n {\n title: t(\"neetoPayments.common.payoutTraceId\"),\n dataIndex: [\"payout\", \"traceId\", \"value\"],\n key: \"payoutTraceId\",\n width: 205,\n render: renderPayoutTraceId,\n sorter: false,\n position: 9,\n },\n ],\n columns\n );\n }\n\n return columns;\n};\n","import {\n map,\n prop,\n concat,\n mergeDeepWith,\n mergeLeft,\n isNil,\n reject,\n isEmpty,\n} from \"ramda\";\n\nimport { FILTER_COLUMNS, SEARCH_PROPS } from \"./constants\";\n\nexport const buildSearchProps = (searchProps, searchTerm) =>\n mergeDeepWith(\n concat,\n SEARCH_PROPS,\n mergeLeft({ value: searchTerm.trim() }, searchProps)\n );\n\nexport const buildFilterColumns = (payableEntityColumns = []) =>\n reject(\n isNil,\n concat(FILTER_COLUMNS, map(prop(\"filterProps\"), payableEntityColumns))\n );\n\nexport const buildRowData = ({ payments, pageProperties = {} }) =>\n payments?.map((element, index) => ({\n ...element,\n id: isEmpty(pageProperties)\n ? index + 1\n : pageProperties.pageSize * (pageProperties.page - 1) + index + 1,\n }));\n","import { useMemo, useCallback } from \"react\";\n\nimport { camelToSnakeCase, isNotPresent, isPresent, humanize } from \"neetocist\";\nimport { getQueryParams } from \"neetocommons/utils\";\nimport { useTableConfigurations } from \"neetomolecules/Columns\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table, NoData } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SORT_DIRECTIONS } from \"src/constants\";\nimport { TABLE_KEYS } from \"src/constants/tableKeys\";\nimport {\n buildDefaultTableColumns,\n getUniquePaymentProviders,\n processDataIndex,\n} from \"utils\";\n\nimport { getDefaultColumns } from \"./columns/utils\";\nimport { PAYMENT_DASHBOARD_TAB, DEFAULT_SORT_PROPERTIES } from \"./constants\";\nimport { buildRowData } from \"./utils\";\n\nconst List = ({\n dashboardKind,\n isFetching,\n payments,\n payableEntityColumns,\n setSortProperties,\n pageProperties,\n handleTablePagination,\n views,\n}) => {\n const { t } = useTranslation();\n\n const { tab = PAYMENT_DASHBOARD_TAB.all } = getQueryParams();\n\n const paymentsCount = useMemo(() => views[tab], [views, tab]);\n const isMultipleProvidersExist = useMemo(\n () => getUniquePaymentProviders(payments ?? []).length > 1,\n [payments]\n );\n\n const defaultColumns = useMemo(\n () => getDefaultColumns(dashboardKind),\n [dashboardKind]\n );\n\n const allColumns = useMemo(\n () =>\n buildDefaultTableColumns({\n payableEntityColumns,\n isMultipleProvidersExist,\n defaultColumns,\n isAllTab: tab === PAYMENT_DASHBOARD_TAB.all,\n }),\n [payableEntityColumns, isMultipleProvidersExist, defaultColumns, tab]\n );\n\n const { isTableConfigurationLoading, customizedColumns, hideColumn } =\n useTableConfigurations(`${TABLE_KEYS.PAYMENTS_TABLE}-${tab}`, allColumns);\n\n const handleTableChange = useCallback(\n (_, __, sorter) => {\n setSortProperties(\n isPresent(sorter?.column)\n ? {\n sortBy: camelToSnakeCase(processDataIndex(sorter.field)),\n orderBy: sorter.order === \"ascend\" ? \"ASC\" : \"DESC\",\n }\n : DEFAULT_SORT_PROPERTIES\n );\n },\n [setSortProperties]\n );\n\n const rowData = useMemo(\n () => buildRowData({ payments, pageProperties, tab }),\n [payments, pageProperties, tab]\n );\n\n if (isNotPresent(payments)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={\n tab === PAYMENT_DASHBOARD_TAB.all\n ? t(\"neetoPayments.emptyState.payments\")\n : t(\"neetoPayments.emptyState.paymentsWithStatus\", {\n status: humanize(tab),\n })\n }\n />\n </div>\n );\n }\n\n return (\n <TableWrapper hasPagination={paymentsCount > pageProperties?.pageSize}>\n <Table\n {...{ rowData }}\n fixedHeight\n allowRowClick={false}\n columnData={customizedColumns}\n currentPageNumber={pageProperties?.page}\n handlePageChange={handleTablePagination}\n loading={isFetching || isTableConfigurationLoading}\n rowSelection={false}\n sortDirections={SORT_DIRECTIONS}\n totalCount={paymentsCount}\n paginationProps={{\n showSizeChanger: true,\n hideOnSinglePage: true,\n pageSize: pageProperties?.pageSize,\n total: paymentsCount,\n }}\n onChange={handleTableChange}\n onColumnHide={({ key }) => hideColumn(key)}\n />\n </TableWrapper>\n );\n};\n\nexport default List;\n","import { startTransition, useState } from \"react\";\n\nimport { isPresent, snakeToCamelCase, humanize } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport { Bar as FiltersBar } from \"neetofilters\";\nimport Header from \"neetomolecules/Header\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport { Tab, Typography } from \"neetoui\";\nimport { mergeLeft, modify } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { UN_HIDEABLE_COLUMNS } from \"src/constants\";\nimport { TABLE_KEYS } from \"src/constants/tableKeys\";\nimport {\n processDataIndex,\n shouldTabsVisible,\n buildDefaultTableColumns,\n} from \"utils\";\n\nimport { getDefaultColumns } from \"./columns/utils\";\nimport { PAYMENT_DASHBOARD_TAB } from \"./constants\";\n\nconst TopSection = ({\n views,\n filters,\n setFilters,\n filterableColumns,\n searchKeywordProps,\n payableEntityColumns,\n setIsExportModalOpen,\n dashboardKind,\n}) => {\n const [isFilterPaneOpen, setIsFilterPaneOpen] = useState(false);\n\n const { t } = useTranslation();\n const history = useHistory();\n const { tab = PAYMENT_DASHBOARD_TAB.all } = getQueryParams();\n\n const paymentsCount = views?.[tab];\n const isPaymentCountVisible =\n paymentsCount > 0 || (paymentsCount === 0 && isPresent(filters));\n const isFilterButtonVisible = isPaymentCountVisible || isPresent(filters);\n\n const handleFiltersChange = filters => {\n startTransition(() => {\n setFilters(filters);\n });\n };\n\n const handleTabChange = tab => {\n const queryParams = getQueryParams({ toCamelCase: false });\n const newParams = {\n tab,\n page: DEFAULT_PAGE_INDEX,\n page_size: DEFAULT_PAGE_SIZE,\n };\n\n history.push(\n buildUrl(window.location.pathname, mergeLeft(newParams, queryParams))\n );\n };\n\n return (\n <>\n <Header\n title={t(\"neetoPayments.title.payments\")}\n searchProps={\n isFilterButtonVisible && {\n placeholder: searchKeywordProps.placeholder,\n className:\n searchKeywordProps.placeholder.length > 30 ? \"w-96\" : \"w-64\",\n }\n }\n />\n {shouldTabsVisible(views) && (\n <Tab>\n {Object.keys(PAYMENT_DASHBOARD_TAB).map(item => (\n <Tab.Item\n active={tab === item}\n key={item}\n onClick={() => handleTabChange(item)}\n >\n {t(`neetoPayments.common.${snakeToCamelCase(item)}`)}\n </Tab.Item>\n ))}\n </Tab>\n )}\n <SubHeader\n className=\"my-4\"\n leftActionBlock={\n isPaymentCountVisible && (\n <Typography\n className=\"neeto-ui-gray-800 me-2 font-semibold\"\n component=\"h4\"\n >\n {tab === PAYMENT_DASHBOARD_TAB.all\n ? t(\"neetoPayments.countOf.payment\", { count: paymentsCount })\n : t(\"neetoPayments.countOf.paymentWithStatus\", {\n count: paymentsCount,\n status: humanize(tab),\n })}\n </Typography>\n )\n }\n rightActionBlock={\n isFilterButtonVisible && (\n <SubHeader.RightBlock\n columnsButtonProps={{\n columnData: buildDefaultTableColumns({\n defaultColumns: getDefaultColumns(dashboardKind),\n payableEntityColumns,\n isAllTab: tab === PAYMENT_DASHBOARD_TAB.all,\n }).map(modify(\"dataIndex\", processDataIndex)),\n fixedColumns: UN_HIDEABLE_COLUMNS,\n tableKey: `${TABLE_KEYS.PAYMENTS_TABLE}-${tab}`,\n }}\n downloadButtonProps={{\n onClick: () => setIsExportModalOpen(true),\n }}\n filterProps={{\n columns: filterableColumns,\n isOpen: isFilterPaneOpen,\n keyword: searchKeywordProps,\n setIsOpen: setIsFilterPaneOpen,\n onChange: handleFiltersChange,\n }}\n />\n )\n }\n />\n <FiltersBar\n columns={filterableColumns}\n keyword={searchKeywordProps}\n setIsPaneOpen={setIsFilterPaneOpen}\n onChange={handleFiltersChange}\n />\n </>\n );\n};\n\nexport default TopSection;\n","import { useEffect, useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { Spinner } from \"neetoui\";\nimport { mergeLeft } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport ExportModal from \"components/Common/ExportModal\";\nimport { useFetchPayments } from \"hooks/reactQuery/usePaymentsApi\";\nimport { DEFAULT_PAGE_VALUES, DASHBOARD_KIND } from \"src/constants\";\n\nimport { PAYMENT_DASHBOARD_TAB, DEFAULT_SORT_PROPERTIES } from \"./constants\";\nimport List from \"./List\";\nimport TopSection from \"./TopSection\";\nimport { buildFilterColumns, buildSearchProps } from \"./utils\";\n\nconst PaymentsDashboard = ({\n searchProps,\n payableEntityColumns,\n holdableIds = {},\n dashboardKind = \"platform\",\n}) => {\n const { searchTerm = \"\" } = getQueryParams();\n const filterableColumns = buildFilterColumns(payableEntityColumns);\n const searchKeywordProps = buildSearchProps(searchProps, searchTerm);\n\n const [sortProperties, setSortProperties] = useState(DEFAULT_SORT_PROPERTIES);\n const [pageProperties, setPageProperties] = useState(DEFAULT_PAGE_VALUES);\n const [isExportModalOpen, setIsExportModalOpen] = useState(false);\n const [filters, setFilters] = useState(\n buildFiltersFromURL([...filterableColumns, searchKeywordProps])\n );\n const history = useHistory();\n const { tab = PAYMENT_DASHBOARD_TAB.all } = getQueryParams();\n const payload = {\n dashboardKind,\n holdableIds,\n tab,\n filters,\n ...pageProperties,\n ...sortProperties,\n };\n\n const {\n data: { payments, views } = {},\n isFetching,\n isPending: isPaymentsLoaidng,\n } = useFetchPayments(payload, { enabled: true });\n\n const handleTablePagination = (page, pageSize) => {\n const queryParams = getQueryParams({ toCamelCase: false });\n history.push(\n buildUrl(\n window.location.pathname,\n mergeLeft({ page, page_size: pageSize }, queryParams)\n )\n );\n setPageProperties({ page, pageSize });\n };\n\n useEffect(() => {\n handleTablePagination(DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE);\n setSortProperties(DEFAULT_SORT_PROPERTIES);\n }, [filters, tab]);\n\n if (isPaymentsLoaidng) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <>\n <TopSection\n {...{\n dashboardKind,\n filterableColumns,\n filters,\n pageProperties,\n payableEntityColumns,\n searchKeywordProps,\n setFilters,\n setIsExportModalOpen,\n setPageProperties,\n setSortProperties,\n views,\n }}\n />\n <List\n {...{\n dashboardKind,\n handleTablePagination,\n isFetching,\n pageProperties,\n payableEntityColumns,\n payments,\n setSortProperties,\n views,\n }}\n />\n <ExportModal\n {...{\n filters,\n holdableIds,\n isExportModalOpen,\n setIsExportModalOpen,\n sortProperties,\n }}\n dashboardKind={DASHBOARD_KIND.payments}\n />\n </>\n );\n};\n\nexport default PaymentsDashboard;\n"],"names":["list","payload","axios","get","concat","BASE_URL","params","paymentsApi","useFetchPayments","arguments","length","undefined","options","useQuery","_objectSpread","queryKey","QUERY_KEYS","PAYMENTS_LIST","queryFn","PAYMENT_DASHBOARD_TAB","all","successful","declined","refunded","pending","rejected","confirmation_pending","SEARCH_PROPS","node","key","model","FILTER_COLUMNS","label","t","type","values","_toConsumableArray","map","toLabelAndValue","PAYMENT_PROVIDERS","toUpperCase","value","TAG_STYLE","initiated","cancelled","paid","failed","in_transit","confirmationPending","PAYMENT_PROVIDER","eupi","DEFAULT_SORT_PROPERTIES","sortBy","orderBy","renderIdentifier","identifier","_ref","receiptUrl","isTemporaryIdentifier","startsWith","React","createElement","Tooltip","content","position","className","Typography","style","CopyButtonWrapper","Button","href","size","target","getTagStyle","status","DEFAULT_TAG_STYLE","preProcessStatus","record","isRefunded","snakeToCamelCase","renderStatus","curry","isNotPresent","processedStatus","Tag","humanize","renderPaymentProvider","paymentProvider","renderDate","date","isPresent","DateFormat","DateTime","renderPayoutTraceId","getDefaultColumns","dashboardKind","columns","title","dataIndex","width","isHidable","render","sorter","formatAmount","formatCurrency","buildSearchProps","searchProps","searchTerm","mergeDeepWith","mergeLeft","trim","buildFilterColumns","payableEntityColumns","reject","isNil","prop","buildRowData","payments","_ref$pageProperties","pageProperties","element","index","id","isEmpty","pageSize","page","List","isFetching","setSortProperties","handleTablePagination","views","_useTranslation","useTranslation","_getQueryParams","getQueryParams","_getQueryParams$tab","tab","paymentsCount","useMemo","isMultipleProvidersExist","getUniquePaymentProviders","defaultColumns","allColumns","buildDefaultTableColumns","isAllTab","_useTableConfiguratio","useTableConfigurations","TABLE_KEYS","PAYMENTS_TABLE","isTableConfigurationLoading","customizedColumns","hideColumn","handleTableChange","useCallback","_","__","column","camelToSnakeCase","processDataIndex","field","order","rowData","NoData","TableWrapper","hasPagination","Table","fixedHeight","allowRowClick","columnData","currentPageNumber","handlePageChange","loading","rowSelection","sortDirections","SORT_DIRECTIONS","totalCount","paginationProps","showSizeChanger","hideOnSinglePage","total","onChange","onColumnHide","_ref2","TopSection","filters","setFilters","filterableColumns","searchKeywordProps","setIsExportModalOpen","_useState","useState","_useState2","_slicedToArray","isFilterPaneOpen","setIsFilterPaneOpen","history","useHistory","isPaymentCountVisible","isFilterButtonVisible","handleFiltersChange","startTransition","handleTabChange","queryParams","toCamelCase","newParams","DEFAULT_PAGE_INDEX","page_size","DEFAULT_PAGE_SIZE","push","buildUrl","window","location","pathname","Fragment","Header","placeholder","shouldTabsVisible","Tab","Object","keys","item","Item","active","onClick","SubHeader","leftActionBlock","component","count","rightActionBlock","RightBlock","columnsButtonProps","modify","fixedColumns","UN_HIDEABLE_COLUMNS","tableKey","downloadButtonProps","filterProps","isOpen","keyword","setIsOpen","FiltersBar","setIsPaneOpen","PaymentsDashboard","_ref$holdableIds","holdableIds","_ref$dashboardKind","_getQueryParams$searc","sortProperties","_useState3","DEFAULT_PAGE_VALUES","_useState4","setPageProperties","_useState5","_useState6","isExportModalOpen","_useState7","buildFiltersFromURL","_useState8","_getQueryParams2","_getQueryParams2$tab","_useFetchPayments","enabled","_useFetchPayments$dat","data","_useFetchPayments$dat2","isPaymentsLoaidng","isPending","useEffect","Spinner","ExportModal","DASHBOARD_KIND"],"mappings":"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"}
@@ -0,0 +1,535 @@
1
+ 'use strict';
2
+
3
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
4
+ var react = require('react');
5
+ var i18next = require('i18next');
6
+ var reactUtils = require('neetocommons/react-utils');
7
+ var neetoFiltersFrontend = require('@bigbinary/neeto-filters-frontend');
8
+ var Header = require('@bigbinary/neeto-molecules/Header');
9
+ var SubHeader = require('@bigbinary/neeto-molecules/SubHeader');
10
+ var neetoui = require('@bigbinary/neetoui');
11
+ var reactI18next = require('react-i18next');
12
+ var dashboard = require('./dashboard-DKHencVn.js');
13
+ var exportChannel = require('./exportChannel-D1Wls92m.js');
14
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
15
+ var neetoIcons = require('@bigbinary/neeto-icons');
16
+ var constants = require('./index-CZ_VFGNj.js');
17
+ var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
18
+ var neetocist = require('neetocist');
19
+ var utils = require('neetocommons/utils');
20
+ var ramda = require('ramda');
21
+ var reactRouterDom = require('react-router-dom');
22
+ var renderFunctions = require('./renderFunctions-CX_K4qf8.js');
23
+ var CopyButtonWrapper = require('./CopyButtonWrapper-BkpN0Wmd.js');
24
+ var constants$1 = require('neetocommons/constants');
25
+ var Columns = require('@bigbinary/neeto-molecules/Columns');
26
+ var TableWrapper = require('@bigbinary/neeto-molecules/TableWrapper');
27
+ var usePlatformApi = require('./usePlatformApi-C7lXP6ev.js');
28
+ require('@tanstack/react-query');
29
+ require('@tanstack/react-query-devtools');
30
+ require('axios');
31
+ require('decimal.js');
32
+ require('@bigbinary/neeto-molecules/DateFormat');
33
+ require('@bigbinary/neeto-molecules/CopyToClipboardButton');
34
+ require('qs');
35
+ require('./queryConstants-Cka1X6GX.js');
36
+
37
+ var TAB = {
38
+ all: "all",
39
+ paid: "paid",
40
+ inTransit: "inTransit",
41
+ failed: "failed",
42
+ canceled: "canceled",
43
+ pending: "pending"
44
+ };
45
+ var TABS = Object.values(TAB);
46
+ var SEARCH_PROPS = {
47
+ key: "keyword",
48
+ node: "identifier,destination_identifier",
49
+ model: "NeetoPaymentsEngine::Payout"
50
+ };
51
+ var DASHBOARD_MANDATORY_COLUMNS = ["id", "status", "identifier"];
52
+ var FILTER_COLUMNS = [{
53
+ key: "created_at",
54
+ label: i18next.t("neetoPayments.common.createdAt"),
55
+ node: "created_at",
56
+ type: "date",
57
+ showRuleSelector: true
58
+ }, {
59
+ key: "arrival_date",
60
+ label: i18next.t("neetoPayments.common.arrivalDate"),
61
+ node: "arrival_date",
62
+ type: "date",
63
+ showRuleSelector: true
64
+ }];
65
+ var DEFAULT_SORT_PROPERTIES = {
66
+ sortBy: "created_at",
67
+ orderBy: "DESC"
68
+ };
69
+
70
+ 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; }
71
+ 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; }
72
+ var ExportModal = function ExportModal(_ref) {
73
+ var showExportModal = _ref.showExportModal,
74
+ setShowExportModal = _ref.setShowExportModal,
75
+ tab = _ref.tab,
76
+ filters = _ref.filters,
77
+ _ref$sortProperties = _ref.sortProperties,
78
+ sortProperties = _ref$sortProperties === void 0 ? {} : _ref$sortProperties;
79
+ var _useTranslation = reactI18next.useTranslation(),
80
+ t = _useTranslation.t;
81
+ var _useState = react.useState(""),
82
+ _useState2 = _slicedToArray(_useState, 2),
83
+ downloadUrl = _useState2[0],
84
+ setDownloadUrl = _useState2[1];
85
+ var _useState3 = react.useState(false),
86
+ _useState4 = _slicedToArray(_useState3, 2),
87
+ isGenerating = _useState4[0],
88
+ setIsGenerating = _useState4[1];
89
+ var _useExportData = dashboard.useExportData(),
90
+ exportCsv = _useExportData.mutate,
91
+ isPending = _useExportData.isPending;
92
+ var isFileLoading = isPending || isGenerating;
93
+ var token = react.useMemo(function () {
94
+ return "payout-report-".concat(constants.uuidV4());
95
+ }, []);
96
+ var receivedCallback = function receivedCallback(data) {
97
+ if (!data.download_url) return;
98
+ setDownloadUrl(data.download_url);
99
+ setIsGenerating(false);
100
+ };
101
+ var handleGenerateClick = function handleGenerateClick() {
102
+ var payload = _objectSpread$1({
103
+ kind: "payout",
104
+ token: token,
105
+ filters: filters,
106
+ tab: tab
107
+ }, sortProperties);
108
+ exportCsv(payload, {
109
+ onSuccess: function onSuccess() {
110
+ setDownloadUrl("");
111
+ setIsGenerating(true);
112
+ }
113
+ });
114
+ };
115
+ react.useEffect(function () {
116
+ if (showExportModal) {
117
+ var channel = exportChannel.exportChannel(token, receivedCallback);
118
+ setDownloadUrl("");
119
+ setIsGenerating(false);
120
+ return function () {
121
+ channel.disconnected();
122
+ };
123
+ }
124
+ return undefined;
125
+ }, [showExportModal, token]);
126
+ var onClose = function onClose() {
127
+ return setShowExportModal(false);
128
+ };
129
+ return /*#__PURE__*/React.createElement(neetoui.Modal, {
130
+ onClose: onClose,
131
+ isOpen: showExportModal
132
+ }, /*#__PURE__*/React.createElement(neetoui.Modal.Header, null, /*#__PURE__*/React.createElement(neetoui.Typography, {
133
+ style: "h2"
134
+ }, t("neetoPayments.export.title.payout"))), /*#__PURE__*/React.createElement(neetoui.Modal.Body, null, isFileLoading ? /*#__PURE__*/React.createElement(neetoui.Typography, {
135
+ style: "body2"
136
+ }, t("neetoPayments.export.pleaseWait")) : /*#__PURE__*/React.createElement(neetoui.Typography, {
137
+ style: "body2"
138
+ }, downloadUrl ? t("neetoPayments.export.fileReady") : t("neetoPayments.export.download.payout"))), /*#__PURE__*/React.createElement(neetoui.Modal.Footer, {
139
+ className: "space-x-2"
140
+ }, downloadUrl ? /*#__PURE__*/React.createElement(neetoui.Button, {
141
+ "data-testid": "neeto-payments-download-button",
142
+ href: downloadUrl,
143
+ icon: neetoIcons.Download,
144
+ label: t("neetoPayments.common.download"),
145
+ onClick: onClose
146
+ }) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(neetoui.Button, {
147
+ "data-testid": "cancel-button",
148
+ disabled: isFileLoading,
149
+ label: t("neetoPayments.common.cancel"),
150
+ style: "tertiary",
151
+ onClick: onClose
152
+ }), /*#__PURE__*/React.createElement(neetoui.Button, {
153
+ "data-testid": "neeto-payments-export-button",
154
+ disabled: isFileLoading,
155
+ label: t("neetoPayments.common.export"),
156
+ loading: isFileLoading,
157
+ onClick: handleGenerateClick
158
+ }))));
159
+ };
160
+
161
+ var COLUMNS = [{
162
+ title: i18next.t("neetoPayments.common.id"),
163
+ dataIndex: "id",
164
+ key: "id",
165
+ width: 85,
166
+ isHidable: false
167
+ }, {
168
+ title: i18next.t("neetoPayments.common.status"),
169
+ dataIndex: "status",
170
+ key: "status",
171
+ render: renderFunctions.renderStatus("payout"),
172
+ width: 150,
173
+ sorter: true,
174
+ isHidable: false
175
+ }, {
176
+ title: i18next.t("neetoPayments.common.amount"),
177
+ dataIndex: "amount",
178
+ key: "amount",
179
+ width: 150,
180
+ sorter: true
181
+ }, {
182
+ title: i18next.t("neetoPayments.common.createdAt"),
183
+ dataIndex: "createdAt",
184
+ key: "createdAt",
185
+ width: 220,
186
+ render: renderFunctions.renderDate,
187
+ sorter: true
188
+ }, {
189
+ title: i18next.t("neetoPayments.common.arrivalDate"),
190
+ dataIndex: "arrivalDate",
191
+ key: "arrivalDate",
192
+ width: 220,
193
+ render: renderFunctions.renderDate,
194
+ sorter: true
195
+ }, {
196
+ title: i18next.t("neetoPayments.common.destinationIdentifier"),
197
+ dataIndex: "destinationIdentifier",
198
+ key: "destinationIdentifier",
199
+ width: 300
200
+ }];
201
+ var IDENTIFIER_COLUMN = {
202
+ title: i18next.t("neetoPayments.common.identifier"),
203
+ dataIndex: "identifier",
204
+ key: "identifier",
205
+ width: 300,
206
+ isHidable: false
207
+ };
208
+
209
+ var processTab = function processTab(status) {
210
+ return neetocist.camelToSnakeCase(status).split("_").join(" ");
211
+ };
212
+ var renderPayoutIdentifier = ramda.curry(function (route, _ref) {
213
+ var _ref$identifier = _ref.identifier,
214
+ identifier = _ref$identifier === void 0 ? "" : _ref$identifier,
215
+ _ref$id = _ref.id,
216
+ id = _ref$id === void 0 ? "" : _ref$id;
217
+ return /*#__PURE__*/React.createElement(CopyButtonWrapper.CopyButtonWrapper, {
218
+ content: identifier
219
+ }, /*#__PURE__*/React.createElement(neetoui.Button, {
220
+ label: identifier,
221
+ size: "small",
222
+ style: "link",
223
+ to: utils.buildUrl(route, {
224
+ id: id
225
+ })
226
+ }));
227
+ });
228
+
229
+ 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; }
230
+ 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; }
231
+ var useFiltersAndPagination = function useFiltersAndPagination(payoutsPageRoute) {
232
+ var history = reactRouterDom.useHistory();
233
+ var _useState = react.useState(false),
234
+ _useState2 = _slicedToArray(_useState, 2),
235
+ isFilterButtonVisible = _useState2[0],
236
+ setIsFilterButtonVisible = _useState2[1];
237
+ var _useState3 = react.useState(false),
238
+ _useState4 = _slicedToArray(_useState3, 2),
239
+ isFilterPaneOpen = _useState4[0],
240
+ setIsFilterPaneOpen = _useState4[1];
241
+ var _useState5 = react.useState(dashboard.buildDefaultPageProperties(TABS)),
242
+ _useState6 = _slicedToArray(_useState5, 2),
243
+ pageProperties = _useState6[0],
244
+ setPageProperties = _useState6[1];
245
+ var _useState7 = react.useState(constants.DEFAULT_SORT_PROPERTIES),
246
+ _useState8 = _slicedToArray(_useState7, 2),
247
+ sortProperties = _useState8[0],
248
+ setSortProperties = _useState8[1];
249
+ var _useQueryParams = reactUtils.useQueryParams(),
250
+ _useQueryParams$tab = _useQueryParams.tab,
251
+ tab = _useQueryParams$tab === void 0 ? TAB.all : _useQueryParams$tab;
252
+ var _getQueryParams = utils.getQueryParams(),
253
+ _getQueryParams$searc = _getQueryParams.searchTerm,
254
+ searchTerm = _getQueryParams$searc === void 0 ? "" : _getQueryParams$searc;
255
+ var searchKeywordProps = _objectSpread(_objectSpread({}, SEARCH_PROPS), {}, {
256
+ key: "search_term",
257
+ value: searchTerm.trim()
258
+ });
259
+ var _useState9 = react.useState(neetoFiltersFrontend.buildFiltersFromURL([].concat(_toConsumableArray(FILTER_COLUMNS), [searchKeywordProps]))),
260
+ _useState10 = _slicedToArray(_useState9, 2),
261
+ filters = _useState10[0],
262
+ setFilters = _useState10[1];
263
+ var _useState11 = react.useState(null),
264
+ _useState12 = _slicedToArray(_useState11, 2),
265
+ dataSize = _useState12[0],
266
+ setDataSize = _useState12[1];
267
+ var identifierColumn = ramda.assoc("render", renderPayoutIdentifier(payoutsPageRoute), IDENTIFIER_COLUMN);
268
+ var columns = ramda.insert(1, identifierColumn, COLUMNS);
269
+ var columnData = tab !== TAB.all ? neetocist.removeBy({
270
+ key: "status"
271
+ }, columns) : columns;
272
+ var handleTabChange = function handleTabChange(tab) {
273
+ var _pageProperties$tab, _pageProperties$tab2;
274
+ setDataSize(null);
275
+ var queryParams = utils.getQueryParams({
276
+ toCamelCase: false
277
+ });
278
+ var newParams = {
279
+ tab: tab,
280
+ page: (_pageProperties$tab = pageProperties[tab]) === null || _pageProperties$tab === void 0 ? void 0 : _pageProperties$tab.page,
281
+ page_size: (_pageProperties$tab2 = pageProperties[tab]) === null || _pageProperties$tab2 === void 0 ? void 0 : _pageProperties$tab2.pageSize
282
+ };
283
+ history.push(utils.buildUrl(window.location.pathname, ramda.mergeLeft(newParams, queryParams)));
284
+ };
285
+ return {
286
+ isFilterButtonVisible: isFilterButtonVisible,
287
+ isFilterPaneOpen: isFilterPaneOpen,
288
+ pageProperties: pageProperties,
289
+ filters: filters,
290
+ searchKeywordProps: searchKeywordProps,
291
+ tab: tab,
292
+ sortProperties: sortProperties,
293
+ columnData: columnData,
294
+ dataSize: dataSize,
295
+ setDataSize: setDataSize,
296
+ setIsFilterButtonVisible: setIsFilterButtonVisible,
297
+ setIsFilterPaneOpen: setIsFilterPaneOpen,
298
+ setPageProperties: setPageProperties,
299
+ setFilters: setFilters,
300
+ handleTabChange: handleTabChange,
301
+ setSortProperties: setSortProperties
302
+ };
303
+ };
304
+
305
+ var useFetchData = function useFetchData(_ref) {
306
+ var _data$kind, _data$kind2, _data$kind3, _data$kind4;
307
+ var isPlatformEnabled = _ref.isPlatformEnabled,
308
+ payload = _ref.payload;
309
+ var data = {};
310
+ var kind = isPlatformEnabled ? "platform" : "connected";
311
+ var tab = neetocist.snakeToCamelCase((payload === null || payload === void 0 ? void 0 : payload.tab) || "");
312
+ data.connected = usePlatformApi.useFetchStripePayouts(payload, {
313
+ enabled: !isPlatformEnabled
314
+ });
315
+ data.platform = usePlatformApi.useFetchStripePlatformPayouts(payload, {
316
+ enabled: isPlatformEnabled
317
+ });
318
+ return {
319
+ data: (_data$kind = data[kind]) === null || _data$kind === void 0 || (_data$kind = _data$kind.data) === null || _data$kind === void 0 ? void 0 : _data$kind.payouts,
320
+ dataSize: (_data$kind2 = data[kind]) === null || _data$kind2 === void 0 || (_data$kind2 = _data$kind2.data) === null || _data$kind2 === void 0 || (_data$kind2 = _data$kind2.views) === null || _data$kind2 === void 0 ? void 0 : _data$kind2[tab],
321
+ isDataLoading: (_data$kind3 = data[kind]) === null || _data$kind3 === void 0 ? void 0 : _data$kind3.isLoading,
322
+ isDataFetching: (_data$kind4 = data[kind]) === null || _data$kind4 === void 0 ? void 0 : _data$kind4.isFetching
323
+ };
324
+ };
325
+
326
+ var List = function List(_ref) {
327
+ var _pageProperties$tab, _pageProperties$tab2, _pageProperties$tab3;
328
+ var columnData = _ref.columnData,
329
+ filters = _ref.filters,
330
+ pageProperties = _ref.pageProperties,
331
+ setDataSize = _ref.setDataSize,
332
+ setIsFilterButtonVisible = _ref.setIsFilterButtonVisible,
333
+ setPageProperties = _ref.setPageProperties,
334
+ setSortProperties = _ref.setSortProperties,
335
+ sortProperties = _ref.sortProperties,
336
+ tab = _ref.tab,
337
+ isPlatformEnabled = _ref.isPlatformEnabled;
338
+ var history = reactRouterDom.useHistory();
339
+ var _useTranslation = reactI18next.useTranslation(),
340
+ t = _useTranslation.t;
341
+ var _useTableConfiguratio = Columns.useTableConfigurations(exportChannel.TABLE_KEYS.PAYOUTS_TABLE, columnData),
342
+ isTableConfigurationLoading = _useTableConfiguratio.isTableConfigurationLoading,
343
+ customizedColumns = _useTableConfiguratio.customizedColumns,
344
+ hideColumn = _useTableConfiguratio.hideColumn;
345
+ var _useFetchData = useFetchData({
346
+ payload: dashboard.buildPayload({
347
+ filters: filters,
348
+ pageProperties: pageProperties,
349
+ sortProperties: sortProperties,
350
+ tab: tab
351
+ }),
352
+ isPlatformEnabled: isPlatformEnabled
353
+ }),
354
+ payouts = _useFetchData.data,
355
+ isDataLoading = _useFetchData.isDataLoading,
356
+ dataSize = _useFetchData.dataSize,
357
+ isDataFetching = _useFetchData.isDataFetching;
358
+ react.useEffect(function () {
359
+ setIsFilterButtonVisible(neetocist.isPresent(payouts) || neetocist.isPresent(filters));
360
+ setDataSize(dataSize);
361
+ }, [payouts]);
362
+ var handleTablePagination = function handleTablePagination(page, pageSize) {
363
+ var queryParams = utils.getQueryParams({
364
+ toCamelCase: false
365
+ });
366
+ history.push(utils.buildUrl(window.location.pathname, ramda.mergeLeft({
367
+ page: page,
368
+ page_size: pageSize
369
+ }, queryParams)));
370
+ setPageProperties(ramda.assoc(tab, {
371
+ page: page,
372
+ pageSize: pageSize
373
+ }));
374
+ };
375
+ react.useEffect(function () {
376
+ handleTablePagination(constants$1.DEFAULT_PAGE_INDEX, constants$1.DEFAULT_PAGE_SIZE);
377
+ setSortProperties(DEFAULT_SORT_PROPERTIES);
378
+ }, [filters, tab]);
379
+ var handleTableChange = function handleTableChange(_, __, sorter) {
380
+ setSortProperties(neetocist.isPresent(sorter === null || sorter === void 0 ? void 0 : sorter.column) ? {
381
+ sortBy: neetocist.camelToSnakeCase(sorter.field),
382
+ orderBy: sorter.order === "ascend" ? "ASC" : "DESC"
383
+ } : DEFAULT_SORT_PROPERTIES);
384
+ };
385
+ if (isDataLoading) {
386
+ return /*#__PURE__*/React.createElement("div", {
387
+ className: "flex h-full w-full items-center justify-center"
388
+ }, /*#__PURE__*/React.createElement(neetoui.Spinner, null));
389
+ }
390
+ if (dataSize <= 0 || !neetocist.isPresent(payouts)) {
391
+ return /*#__PURE__*/React.createElement("div", {
392
+ className: "flex h-full w-full items-center justify-center"
393
+ }, /*#__PURE__*/React.createElement(neetoui.NoData, {
394
+ title: t("neetoPayments.emptyState.payouts.".concat(tab))
395
+ }));
396
+ }
397
+ return /*#__PURE__*/React.createElement(TableWrapper, {
398
+ hasPagination: dataSize > ((_pageProperties$tab = pageProperties[tab]) === null || _pageProperties$tab === void 0 ? void 0 : _pageProperties$tab.pageSize)
399
+ }, /*#__PURE__*/React.createElement(neetoui.Table, {
400
+ fixedHeight: true,
401
+ allowRowClick: false,
402
+ columnData: customizedColumns,
403
+ currentPageNumber: (_pageProperties$tab2 = pageProperties[tab]) === null || _pageProperties$tab2 === void 0 ? void 0 : _pageProperties$tab2.page,
404
+ handlePageChange: handleTablePagination,
405
+ loading: isDataFetching || isTableConfigurationLoading,
406
+ rowData: dashboard.buildRowData({
407
+ data: payouts,
408
+ pageProperties: pageProperties,
409
+ tab: tab
410
+ }),
411
+ rowSelection: false,
412
+ sortDirections: constants.SORT_DIRECTIONS,
413
+ totalCount: dataSize,
414
+ paginationProps: {
415
+ showSizeChanger: true,
416
+ hideOnSinglePage: true,
417
+ pageSize: (_pageProperties$tab3 = pageProperties[tab]) === null || _pageProperties$tab3 === void 0 ? void 0 : _pageProperties$tab3.pageSize,
418
+ total: dataSize
419
+ },
420
+ onChange: handleTableChange,
421
+ onColumnHide: function onColumnHide(_ref2) {
422
+ var key = _ref2.key;
423
+ return hideColumn(key);
424
+ }
425
+ }));
426
+ };
427
+
428
+ var PayoutsDashboard = function PayoutsDashboard(_ref) {
429
+ var payoutsPageRoute = _ref.payoutsPageRoute,
430
+ isPlatformEnabled = _ref.isPlatformEnabled;
431
+ var _useTransition = react.useTransition(),
432
+ _useTransition2 = _slicedToArray(_useTransition, 2);
433
+ _useTransition2[0];
434
+ var startTransition = _useTransition2[1];
435
+ var _useTranslation = reactI18next.useTranslation(),
436
+ t = _useTranslation.t;
437
+ var _useState = react.useState(false),
438
+ _useState2 = _slicedToArray(_useState, 2),
439
+ showExportModal = _useState2[0],
440
+ setShowExportModal = _useState2[1];
441
+ var _useFiltersAndPaginat = useFiltersAndPagination(payoutsPageRoute),
442
+ isFilterButtonVisible = _useFiltersAndPaginat.isFilterButtonVisible,
443
+ isFilterPaneOpen = _useFiltersAndPaginat.isFilterPaneOpen,
444
+ pageProperties = _useFiltersAndPaginat.pageProperties,
445
+ filters = _useFiltersAndPaginat.filters,
446
+ searchKeywordProps = _useFiltersAndPaginat.searchKeywordProps,
447
+ tab = _useFiltersAndPaginat.tab,
448
+ sortProperties = _useFiltersAndPaginat.sortProperties,
449
+ columnData = _useFiltersAndPaginat.columnData,
450
+ dataSize = _useFiltersAndPaginat.dataSize,
451
+ setDataSize = _useFiltersAndPaginat.setDataSize,
452
+ setIsFilterButtonVisible = _useFiltersAndPaginat.setIsFilterButtonVisible,
453
+ setIsFilterPaneOpen = _useFiltersAndPaginat.setIsFilterPaneOpen,
454
+ setPageProperties = _useFiltersAndPaginat.setPageProperties,
455
+ setFilters = _useFiltersAndPaginat.setFilters,
456
+ handleTabChange = _useFiltersAndPaginat.handleTabChange,
457
+ setSortProperties = _useFiltersAndPaginat.setSortProperties;
458
+ var isTabsVisible = isFilterButtonVisible || tab !== "all";
459
+ var handleFiltersChange = function handleFiltersChange(filters) {
460
+ startTransition(function () {
461
+ setFilters(filters);
462
+ });
463
+ };
464
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Header, {
465
+ title: t("neetoPayments.title.payouts"),
466
+ searchProps: isFilterButtonVisible && {
467
+ placeholder: t("neetoPayments.common.search"),
468
+ className: "w-80"
469
+ }
470
+ }), isTabsVisible && /*#__PURE__*/React.createElement(neetoui.Tab, null, TABS.map(function (item) {
471
+ return /*#__PURE__*/React.createElement(neetoui.Tab.Item, {
472
+ active: tab === item,
473
+ key: item,
474
+ onClick: function onClick() {
475
+ return handleTabChange(item);
476
+ }
477
+ }, t("neetoPayments.common.".concat(item)));
478
+ })), /*#__PURE__*/React.createElement(SubHeader, {
479
+ className: "my-4",
480
+ leftActionBlock: dataSize > 0 && /*#__PURE__*/React.createElement(neetoui.Typography, {
481
+ className: "neeto-ui-gray-800 me-2 font-semibold",
482
+ component: "h4"
483
+ }, tab === TAB.all ? t("neetoPayments.countOf.payout", {
484
+ count: dataSize
485
+ }) : t("neetoPayments.countOf.payoutWithStatus", {
486
+ count: dataSize,
487
+ status: processTab(tab)
488
+ })),
489
+ rightActionBlock: isFilterButtonVisible && /*#__PURE__*/React.createElement(SubHeader.RightBlock, {
490
+ columnsButtonProps: {
491
+ columnData: columnData,
492
+ fixedColumns: DASHBOARD_MANDATORY_COLUMNS,
493
+ tableKey: exportChannel.TABLE_KEYS.PAYOUTS_TABLE
494
+ },
495
+ downloadButtonProps: {
496
+ onClick: function onClick() {
497
+ return setShowExportModal(true);
498
+ }
499
+ },
500
+ filterProps: {
501
+ columns: FILTER_COLUMNS,
502
+ isOpen: isFilterPaneOpen,
503
+ keyword: searchKeywordProps,
504
+ setIsOpen: setIsFilterPaneOpen,
505
+ onChange: handleFiltersChange
506
+ }
507
+ })
508
+ }), /*#__PURE__*/React.createElement(neetoFiltersFrontend.Bar, {
509
+ columns: FILTER_COLUMNS,
510
+ keyword: searchKeywordProps,
511
+ setIsPaneOpen: setIsFilterPaneOpen,
512
+ onChange: handleFiltersChange
513
+ }), /*#__PURE__*/React.createElement(List, {
514
+ columnData: columnData,
515
+ filters: filters,
516
+ isPlatformEnabled: isPlatformEnabled,
517
+ pageProperties: pageProperties,
518
+ setDataSize: setDataSize,
519
+ setIsFilterButtonVisible: setIsFilterButtonVisible,
520
+ setPageProperties: setPageProperties,
521
+ setSortProperties: setSortProperties,
522
+ sortProperties: sortProperties,
523
+ tab: tab
524
+ }), /*#__PURE__*/React.createElement(ExportModal, {
525
+ filters: filters,
526
+ setShowExportModal: setShowExportModal,
527
+ showExportModal: showExportModal,
528
+ sortProperties: sortProperties,
529
+ tab: tab
530
+ }));
531
+ };
532
+ var index = reactUtils.withTitle(dashboard.withReactQuery(PayoutsDashboard), i18next.t("neetoPayments.title.payouts"));
533
+
534
+ module.exports = index;
535
+ //# sourceMappingURL=PayoutsDashboard.js.map